Beispiel #1
0
def set_rowfile_plot_options(parser):
    import matplotlib
    set_formatter(parser)
    if os.name == 'posix' and 1:
        matplotlib.use('GTkAgg')
        parser.run_methods = ['subcommand']
    parser.set_usage('%prog [options] [[-i] ROWFILE]')
    parser.set_description('Plot data in ROWFILE')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='ROWFILE',
                      help='Specify path to ROWFILE.')
    parser.add_option('--print-keys',
                      action='store_true',
                      help='Print keys of the rowfile and exit.')

    parser.add_option('--x-keys', help='Specify keys for x-axis.')
    parser.add_option(
        '--y-keys',
        help='Specify keys for y-axis. When not specified then use all keys.')

    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='OUTPUT_PATH',
                      help='Specify output PATH for saving figure.')
Beispiel #2
0
def set_regress_options(parser):
    from ..io.script_options import get_microscope_options_group, get_io_options_group
    set_formatter(parser)
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH [ [-o] OUTPUT_PATH]]')
    parser.set_description(
        'Apply local regression methods to INPUT_PATH scalar field.')
    parser.add_option('--quiet',
                      dest='verbose',
                      action='store_false',
                      help='Disable output messages.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='PATH',
                      help='Specify output PATH of 3D images.')
    parser.add_option(
        "--kernel-width",
        dest="kernel_width",
        type='float',
        help="Specify the width of kernel in minimal voxel size unit.")
    parser.add_option(
        '--link-function',
        choices=['identity'],
        default='identity',
        help=
        "Specify link function to transform data before regression analysis.")

    get_regress_options_group(parser, group=parser)
    parser.add_option_group(get_io_options_group(parser))
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #3
0
def set_run_mirrors_options(parser):
    set_formatter(parser)
    parser.set_usage('%prog [options]')
    parser.set_description('Run scanning mirrors.')

    if os.name == 'posix':
        parser.run_methods = ['subcommand']

    from iocbio.scanner.configuration import camera_area_width, camera_area_height

    parser.add_option('--roi-x0', type='int', default=1)
    parser.add_option('--roi-x1', type='int', default=camera_area_width)
    parser.add_option('--roi-y0', type='int', default=1)
    parser.add_option('--roi-y1', type='int', default=camera_area_height)
    parser.add_option('--orientation-angle', type='float', default=0)

    parser.add_option('--pixel-time-usec', type='float')
    parser.add_option('--scan-speed', type='float')
    parser.add_option('--image-width', type='int')
    parser.add_option('--pixel-size-um', type='float')
    parser.add_option('--image-height', type='int', default=2)

    parser.add_option('--flyback', type='float')
    parser.add_option('--flyback-range', type='string')

    parser.add_option_group(get_mirror_parameter_options_group(parser))
    parser.add_option_group(get_runner_options_group(parser))

    try:
        parser.add_option_group(get_nidaqmx_options_group(parser))
    except ImportError, msg:
        print '%s' % (msg)
Beispiel #4
0
def set_sumstacks_options(parser):
    import numpy
    set_formatter(parser)
    parser.set_usage(
        '%prog [options] [ [-i] INPUT_PATH  [ [-o] OUTPUT_PATH ]]')
    parser.set_description(
        'Sum the stacks in INPUT_PATH and save the result with specified type and format.'
    )

    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='INPUT_PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='OUTPUT_PATH',
                      help='Specify output PATH of 3D images.')
    numpy_types = ['<detect>'] + sorted(
        set([t.__name__ for t in numpy.typeDict.values()]))
    parser.add_option("--output-type",
                      dest="output_type",
                      choices=numpy_types,
                      default=numpy_types[0],
                      help="Specify output image stack type.")

    parser.add_option('--output-ext',
                      dest='output_ext',
                      choices=['tif', 'vtk', 'data'],
                      default='tif',
                      help="Specify output format extension.")

    parser.add_option_group(get_io_options_group(parser))
Beispiel #5
0
def set_clusters_options(parser):
    set_formatter(parser)
    parser.set_usage('%prog [options] [ -i INPUT_PATH ]')
    parser.set_description('Find clusters in INPUT_PATH field.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='INPUT_PATH',
                      dest='input_path',
                      help='Specify INPUT_PATH.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='OUTPUT_PATH',
                      dest='output_path',
                      help='Specify OUTPUT_PATH.')
    parser.add_option(
        '--detail-size',
        dest='detail_size',
        type='float',
        help='Specify typical size of a detail to be resolved, in micrometers.'
    )
    from iocbio.ops.script_options import get_regress_options_group
    parser.add_option_group(get_regress_options_group(parser))
    from iocbio.ops.script_options import get_fft_options_group
    parser.add_option_group(get_fft_options_group(parser))
Beispiel #6
0
def set_run_mirrors_options(parser):
    set_formatter(parser)
    parser.set_usage ('%prog [options]')
    parser.set_description('Run scanning mirrors.')

    if os.name == 'posix':
        parser.run_methods = ['subcommand']

    from iocbio.scanner.configuration import camera_area_width, camera_area_height

    parser.add_option('--roi-x0', type='int', default=1)
    parser.add_option('--roi-x1', type='int', default=camera_area_width)
    parser.add_option('--roi-y0', type='int', default=1)
    parser.add_option('--roi-y1', type='int', default=camera_area_height)
    parser.add_option('--orientation-angle', type='float', default=0)

    parser.add_option ('--pixel-time-usec', type='float')
    parser.add_option ('--scan-speed', type='float')
    parser.add_option('--image-width', type='int')
    parser.add_option('--pixel-size-um', type='float')
    parser.add_option('--image-height', type='int', default=2)

    parser.add_option ('--flyback', type='float')
    parser.add_option ('--flyback-range', type='string')

    parser.add_option_group (get_mirror_parameter_options_group(parser))
    parser.add_option_group (get_runner_options_group(parser))

    try:
        parser.add_option_group (get_nidaqmx_options_group(parser))
    except ImportError, msg:
        print '%s' % (msg)
Beispiel #7
0
def set_convert_options (parser):
    import numpy
    set_formatter(parser)
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH  [ [-o] OUTPUT_PATH ]]')
    parser.set_description('Convert INPUT_PATH to specified type and format.')

    parser.add_option ('--input-path','-i',
                       type = 'file', metavar='INPUT_PATH',
                       help = 'Specify input PATH of 3D images.'
                       )
    parser.add_option ('--output-path','-o',
                       type = 'file', metavar='OUTPUT_PATH',
                       help = 'Specify output PATH of 3D images.'
                       )
    numpy_types = ['<detect>'] + sorted(set([t.__name__ for t in numpy.typeDict.values()]))
    parser.add_option("--output-type", dest="output_type",
                      choices = numpy_types, default = numpy_types[0],
                      help="Specify output image stack type.")
    parser.add_option("--scale",
                      action="store_true", dest="scale",
                      help='Specify whether to scale stack to the limits of the output type.')
    parser.add_option("--no-scale",
                      action="store_false", dest="scale",
                      help='See ``--scale`` option.')
    parser.add_option('--normalize',
                      choices = ['none', 'unit volume'],
                      help = 'Specify normalization.'
                      )
    parser.add_option('--output-ext', dest='output_ext',
                      choices = ['tif', 'vtk', 'data'],
                      default = 'tif',
                      help="Specify output format extension.")

    parser.add_option_group(get_tiff_options_group(parser))
Beispiel #8
0
def set_sumstacks_options (parser):
    import numpy
    set_formatter(parser)
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH  [ [-o] OUTPUT_PATH ]]')
    parser.set_description('Sum the stacks in INPUT_PATH and save the result with specified type and format.')

    parser.add_option ('--input-path','-i',
                       type = 'file', metavar='INPUT_PATH',
                       help = 'Specify input PATH of 3D images.'
                       )
    parser.add_option ('--output-path','-o',
                       type = 'file', metavar='OUTPUT_PATH',
                       help = 'Specify output PATH of 3D images.'
                       )
    numpy_types = ['<detect>'] + sorted(set([t.__name__ for t in numpy.typeDict.values()]))
    parser.add_option("--output-type", dest="output_type",
                      choices = numpy_types, default = numpy_types[0],
                      help="Specify output image stack type.")

    parser.add_option('--output-ext', dest='output_ext',
                      choices = ['tif', 'vtk', 'data'],
                      default = 'tif',
                      help="Specify output format extension.")

    parser.add_option_group(get_io_options_group(parser))
Beispiel #9
0
def set_apply_noise_options(parser):
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH [ [-o] OUTPUT_PATH] ]')
    set_formatter(parser)
    parser.set_description('Apply noise to INPUT_PATH scalar field.')
    parser.add_option('--quiet',
                      dest='verbose',
                      action='store_false',
                      default=True,
                      help='Disable output messages.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='PATH',
                      help='Specify output PATH of 3D images.')
    parser.add_option(
        "--noise-type",
        dest='noise_type',
        choices=['poisson'],
        default='poisson',
        help='Specify noise type.',
    )
Beispiel #10
0
def set_deconvolve_with_sphere_options (parser):
    set_formatter(parser)
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH [ [-o] OUTPUT_PATH ] ]')
    parser.set_description('Deconvolve INPUT_PATH with sphere.')
    parser.add_option ('--sphere-diameter', dest='diameter',
                       type = 'float',
                       default = 170,
                       help = 'Specify sphere diameter in nanometers.')
    parser.add_option ('--input-path', '-i',
                       type = 'file', metavar='PATH',
                       help = 'Specify input PATH of 3D images.'
                       )
    parser.add_option ('--output-path','-o',
                       type = 'file', metavar='PATH',
                       help = 'Specify output PATH of 3D images.'
                       )
    parser.add_option ('--max-nof-iterations',
                       type = 'int', default=10,
                       help = 'Specify maximum number of iterations.')
    parser.add_option('--convergence-epsilon',
                      type = 'float', default=0.05,
                      help = 'Specify small positive number that determines the window for convergence criteria.')

    from ..ops.script_options import get_fft_options_group
    from ..io.script_options import get_microscope_options_group
    parser.add_option_group(get_fft_options_group (parser))
    parser.add_option_group(get_rltv_options_group (parser))
    parser.add_option_group(get_microscope_options_group (parser))
Beispiel #11
0
def set_ome_options (parser):
    import numpy
    set_formatter(parser)
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH  [ [-o] OUTPUT_PATH ]]')
    parser.set_description('Convert INPUT_PATH to OME-TIFF file.')

    parser.add_option ('--input-path','-i',
                       type = 'file', metavar='INPUT_PATH',
                       help = 'Specify input PATH of 3D images.'
                       )
Beispiel #12
0
def set_deconvolve_options(parser):
    set_formatter(parser)
    parser.set_usage('%prog [options] [ [-k] PSF_PATH [-i] INPUT_PATH [ [-o] OUTPUT_PATH] ]')
    parser.set_description('Deconvolve INPUT_PATH with PSF_PATH.')
    add_psflib_options(parser)
    parser.add_option('--psf-path','-k', dest = 'psf_path',
                      type = 'file', metavar='PATH',
                      help = 'Specify PATH to PSF 3D images.'
                      )
    parser.add_option ('--input-path', '-i',
                       type = 'file', metavar='PATH',
                       help = 'Specify input PATH of 3D images.'
                       )
    parser.add_option ('--output-path','-o',
                       type = 'file', metavar='PATH',
                       help = 'Specify output PATH of 3D images.'
                       )
    parser.add_option ('--max-nof-iterations',
                       type = 'int', default=10,
                       help = 'Specify maximum number of iterations.')
    parser.add_option('--convergence-epsilon',
                      type = 'float', default=0.05,
                      help = 'Specify small positive number that determines the window for convergence criteria.')
    parser.add_option('--degrade-input', action='store_true',
                      help = 'Degrade input: apply noise to convolved input.')
    parser.add_option('--no-degrade-input', action='store_false', dest='degrade_input',
                      help = 'See ``--degrade-input``.')
    parser.add_option('--degrade-input-snr',
                      type = 'float', default=0.0,
                      help = 'Specify the signal-to-noise ratio when using --degrade-input.'\
                          'If set to 0, then snr will be estimated as sqrt(max(input image)).')
    parser.add_option ('--first-estimate',
                      choices = ['input image',
                                 'convolved input image',
                                 '2x convolved input image',
                                 'last result'
                                 ],
                      help = 'Specify first estimate for iteration.')
    parser.add_option('--save-intermediate-results',
                      action = 'store_true',
                      help = 'Save intermediate results.')
    parser.add_option('--no-save-intermediate-results',
                      dest = 'save_intermediate_results',
                      action = 'store_false',
                      help = 'See ``--save-intermediate-results`` option.')
    from ..ops.script_options import get_apply_window_options_group
    parser.add_option_group(get_apply_window_options_group (parser))
    parser.add_option_group(get_rltv_options_group (parser))
    from ..ops.script_options import get_fft_options_group
    parser.add_option_group(get_fft_options_group (parser))
    from ..script_options import get_runner_options_group
    parser.add_option_group(get_runner_options_group (parser))
    from ..io.script_options import get_io_options_group, get_microscope_options_group
    parser.add_option_group(get_microscope_options_group (parser))
Beispiel #13
0
def set_ome_options(parser):
    import numpy
    set_formatter(parser)
    parser.set_usage(
        '%prog [options] [ [-i] INPUT_PATH  [ [-o] OUTPUT_PATH ]]')
    parser.set_description('Convert INPUT_PATH to OME-TIFF file.')

    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='INPUT_PATH',
                      help='Specify input PATH of 3D images.')
Beispiel #14
0
def set_strathkelvin929_rate_options(parser):
    set_formatter(parser)
    parser.set_usage('%prog [options] <channel-files>')
    parser.set_description('Re-calculates oxygen respiration rates. Rewrites the channel files unless --tryrun is used.')

    parser.add_option('--nof-regression-points', '-n',
                       type = 'int', default=10,
                       help = 'Specify the number of regression points. When 0 then use the number from channel files.')
    parser.add_option('--tryrun',  action = 'store_true',
                      help = 'Re-calculate rates but do not save rates to file.')
    parser.add_option('--no-tryrun',  action = 'store_false', dest='tryrun',
                      help = 'See --tryrun.')
Beispiel #15
0
def set_show_options(parser):
    set_formatter(parser)
    import matplotlib
    if os.name == 'posix':
        matplotlib.use('GTkAgg')
        parser.run_methods = ['subcommand']
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH ]')
    parser.set_description('Display INPUT_PATH as 3D image.')

    parser.add_option ('--input-path', '-i',
                       type = 'file', metavar='INPUT_PATH',
                       help = 'Specify input PATH of 3D images.'
                       )
    parser.add_option('--interpolation', default='nearest',
                      choices = sorted(['bilinear', 'nearest','bicubic', 'spline16', 
                                        'spline36', 'hanning', 'hamming', 'hermit', 
                                        'kaiser', 'quadric', 'catrom', 'gaussian', 
                                        'bessel', 'mitchell', 'sinc', 'lanczos']),
                      help="Specify image interpolation method.")
    #parser.add_option('--roll-axis', choices=['0','1','2'], help='Roll given axis to 0.', default='0')
    parser.add_option('--projection', choices=['XY','XZ','YZ'], help='Project image stack to given plane.', default='XY')
    parser.add_option('--rgb', action='store_true', default=False,
                      help="Display as RGB(A) color images.")
    parser.add_option('--dpi', type='int', default=96,
                      help="Specify plot resolution.")
    import matplotlib.cm as cm
    colormap_names = [name for name in cm.datad if not name.endswith ('_r')]
    lcolormap_names = sorted([name for name in colormap_names if name[0].islower()])
    ucolormap_names = sorted([name for name in colormap_names if name[0].isupper()])
    colormap_names = lcolormap_names + ucolormap_names

    parser.add_option('--cmap', choices = colormap_names, default='gray',
                      help='Specify `colormap <http://matplotlib.sourceforge.net/plot_directive/mpl_examples/pylab_examples/show_colormaps.hires.png>`_.')
    parser.add_option ('--invert-cmap', action='store_true', default=False,
                       help='Invert specified colormap.')

    parser.add_option ('--histogram-bins', type='int', default=0,
                       help = 'Specify the number of bins for histogram. 0 means no histogram.')

    parser.add_option ('--auto-scale', action='store_true', default=False,
                       help = 'Automatically scale each frame.')

    parser.add_option ('--view-3d', type='string', default='',
                       help = 'Specify z=const, y=const, x=const planes for viewing 3d stack.')

    parser.add_option ('--output-path', '-o',
                       type = 'file', metavar='OUTPUT_PATH',
                       help = 'Specify output PATH for saving figure.'
                       )

    parser.add_option_group(get_io_options_group(parser))
    parser.add_option_group(get_microscope_options_group (parser))
Beispiel #16
0
def set_estimate_snr_options(parser):
    from ..io.script_options import get_microscope_options_group
    set_formatter(parser)
    parser.set_usage('%prog [options] [ -i INPUT_PATH ]')
    parser.set_description(
        'Estimate signal to noise ratio from the INPUT_PATH images.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option_group(get_regress_options_group(parser))
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #17
0
def set_clusters_options (parser):
    set_formatter(parser)
    parser.set_usage ('%prog [options] [ -i INPUT_PATH ]')
    parser.set_description('Find clusters in INPUT_PATH field.')
    parser.add_option ('--input-path','-i',
                       type = 'file', metavar='INPUT_PATH', dest='input_path',
                       help = 'Specify INPUT_PATH.'
                       )
    parser.add_option ('--output-path','-o',
                       type = 'file', metavar='OUTPUT_PATH', dest='output_path',
                       help = 'Specify OUTPUT_PATH.'
                       )
    parser.add_option ('--detail-size', dest='detail_size',type = 'float', 
                       help = 'Specify typical size of a detail to be resolved, in micrometers.')
    from iocbio.ops.script_options import get_regress_options_group
    parser.add_option_group(get_regress_options_group (parser))
    from iocbio.ops.script_options import get_fft_options_group
    parser.add_option_group(get_fft_options_group (parser))
Beispiel #18
0
def set_convert_options(parser):
    import numpy
    set_formatter(parser)
    parser.set_usage(
        '%prog [options] [ [-i] INPUT_PATH  [ [-o] OUTPUT_PATH ]]')
    parser.set_description('Convert INPUT_PATH to specified type and format.')

    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='INPUT_PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='OUTPUT_PATH',
                      help='Specify output PATH of 3D images.')
    numpy_types = ['<detect>'] + sorted(
        set([t.__name__ for t in numpy.typeDict.values()]))
    parser.add_option("--output-type",
                      dest="output_type",
                      choices=numpy_types,
                      default=numpy_types[0],
                      help="Specify output image stack type.")
    parser.add_option(
        "--scale",
        action="store_true",
        dest="scale",
        help='Specify whether to scale stack to the limits of the output type.'
    )
    parser.add_option("--no-scale",
                      action="store_false",
                      dest="scale",
                      help='See ``--scale`` option.')
    parser.add_option('--normalize',
                      choices=['none', 'unit volume'],
                      help='Specify normalization.')
    parser.add_option('--output-ext',
                      dest='output_ext',
                      choices=['tif', 'vtk', 'data'],
                      default='tif',
                      help="Specify output format extension.")

    parser.add_option_group(get_tiff_options_group(parser))
Beispiel #19
0
def set_sarcomere_length_options (parser):
    from ..io.script_options import get_microscope_options_group,  get_io_options_group
    set_formatter (parser)
    parser.set_usage('%prog [options] [ -i INPUT_PATH ]')
    parser.set_description('Estimate the length of sarcomere.')
    parser.add_option ('--input-path','-i',
                       type = 'file', metavar='PATH',
                       help = 'Specify input PATH of 3D images.'
                       )
    parser.add_option ('--roi-center-line',
                       help = 'Specify the coordinates of ROI center line in pixels: x0,y0,x1,y1')
    parser.add_option ('--roi-width',
                       type = 'int',
                       help = 'Specify the width of ROI in pixels')
    parser.add_option ('--nof-points',
                       type = 'int', default = 512,
                       help = 'Specify the number of interpolation points.')
    parser.add_option_group(get_io_options_group(parser))
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #20
0
def set_apply_window_options(parser):
    from ..io.script_options import get_microscope_options_group
    set_formatter(parser)
    parser.set_usage('%prog [options] [ INPUT_PATH [OUTPUT_PATH]]')
    parser.set_description('Apply smooth window to INPUT_PATH scalar field.')
    parser.add_option('--quiet',
                      dest='verbose',
                      action='store_false',
                      default=True,
                      help='Disable output messages.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='PATH',
                      help='Specify output PATH of 3D images.')
    get_apply_window_options_group(parser, group=parser)
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #21
0
def set_strathkelvin929_rate_options(parser):
    set_formatter(parser)
    parser.set_usage('%prog [options] <channel-files>')
    parser.set_description(
        'Re-calculates oxygen respiration rates. Rewrites the channel files unless --tryrun is used.'
    )

    parser.add_option(
        '--nof-regression-points',
        '-n',
        type='int',
        default=10,
        help=
        'Specify the number of regression points. When 0 then use the number from channel files.'
    )
    parser.add_option('--tryrun',
                      action='store_true',
                      help='Re-calculate rates but do not save rates to file.')
    parser.add_option('--no-tryrun',
                      action='store_false',
                      dest='tryrun',
                      help='See --tryrun.')
Beispiel #22
0
def set_sarcomere_length_options(parser):
    from ..io.script_options import get_microscope_options_group, get_io_options_group
    set_formatter(parser)
    parser.set_usage('%prog [options] [ -i INPUT_PATH ]')
    parser.set_description('Estimate the length of sarcomere.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option(
        '--roi-center-line',
        help='Specify the coordinates of ROI center line in pixels: x0,y0,x1,y1'
    )
    parser.add_option('--roi-width',
                      type='int',
                      help='Specify the width of ROI in pixels')
    parser.add_option('--nof-points',
                      type='int',
                      default=512,
                      help='Specify the number of interpolation points.')
    parser.add_option_group(get_io_options_group(parser))
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #23
0
def set_convolve_options(parser):
    from ..microscope.script_options import add_psflib_options
    set_formatter(parser)
    parser.set_usage(
        '%prog [options] [ [-i] INPUT_PATH [ [-o] OUTPUT_PATH ] ]')
    parser.set_description('Convolve INPUT_PATH with KERNEL_PATH.')
    add_psflib_options(parser)
    parser.add_option('--kernel-path',
                      '-k',
                      type='file',
                      metavar='PATH',
                      help='Specify PATH to 3D images to be used as a kernel.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='PATH',
                      help='Specify output PATH of 3D images.')
    parser.add_option_group(get_fft_options_group(parser))
Beispiel #24
0
def set_deconvolve_with_sphere_options(parser):
    set_formatter(parser)
    parser.set_usage(
        '%prog [options] [ [-i] INPUT_PATH [ [-o] OUTPUT_PATH ] ]')
    parser.set_description('Deconvolve INPUT_PATH with sphere.')
    parser.add_option('--sphere-diameter',
                      dest='diameter',
                      type='float',
                      default=170,
                      help='Specify sphere diameter in nanometers.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='PATH',
                      help='Specify output PATH of 3D images.')
    parser.add_option('--max-nof-iterations',
                      type='int',
                      default=10,
                      help='Specify maximum number of iterations.')
    parser.add_option(
        '--convergence-epsilon',
        type='float',
        default=0.05,
        help=
        'Specify small positive number that determines the window for convergence criteria.'
    )

    from ..ops.script_options import get_fft_options_group
    from ..io.script_options import get_microscope_options_group
    parser.add_option_group(get_fft_options_group(parser))
    parser.add_option_group(get_rltv_options_group(parser))
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #25
0
def set_rowfile_plot_options (parser):
    import matplotlib
    set_formatter(parser)
    if os.name == 'posix' and 1:
        matplotlib.use('GTkAgg')
        parser.run_methods = ['subcommand']
    parser.set_usage ('%prog [options] [[-i] ROWFILE]')
    parser.set_description('Plot data in ROWFILE')
    parser.add_option ('--input-path', '-i',
                       type = 'file', metavar='ROWFILE',
                       help = 'Specify path to ROWFILE.'
                       )
    parser.add_option('--print-keys', action='store_true',
                      help = 'Print keys of the rowfile and exit.')

    parser.add_option('--x-keys',
                      help = 'Specify keys for x-axis.')
    parser.add_option('--y-keys',
                      help = 'Specify keys for y-axis. When not specified then use all keys.')

    parser.add_option ('--output-path', '-o',
                       type = 'file', metavar='OUTPUT_PATH',
                       help = 'Specify output PATH for saving figure.'
                       )
Beispiel #26
0
    if os.path.basename(root)=='scripts':
        for script in files:
            script_name = os.path.splitext(script)[0]
            package_name = '.'.join(root[len(os.path.dirname(parent_path))+1:].split(os.sep)[:-1])
            try:
                exec 'import %s.script_options as script_options' % (package_name)
            except ImportError, msg:
                print msg
                continue
            try:
                set_options = getattr (script_options, 'set_%s_options' % (script_name))
            except AttributeError, msg:
                print msg
                continue
            parser = OptionParser()
            set_formatter (parser)
            parser.add_option('--no-gui', action='store_false', default=True, help='Run script without opening GUI.')
            set_options (parser)
            parser.prog = 'fparser.%s' % (script_name)
            if parser.description is None:
                print 'Warning: %s does not have a description (use parser.set_description in %s.script_options.%s)' % (parser.prog, package_name,set_options.__name__)
                parser.description = 'PFI'

            descr = parser.get_description()
            descr_title = descr.lstrip().split('\n')[0]
            help = parser.format_help()
            help += '''
See also
========
:mod:`%s`
''' % (package_name)
Beispiel #27
0
def set_deconvolve_options(parser):
    set_formatter(parser)
    parser.set_usage(
        '%prog [options] [ [-k] PSF_PATH [-i] INPUT_PATH [ [-o] OUTPUT_PATH] ]'
    )
    parser.set_description('Deconvolve INPUT_PATH with PSF_PATH.')
    add_psflib_options(parser)
    parser.add_option('--psf-path',
                      '-k',
                      dest='psf_path',
                      type='file',
                      metavar='PATH',
                      help='Specify PATH to PSF 3D images.')
    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='PATH',
                      help='Specify output PATH of 3D images.')
    parser.add_option('--max-nof-iterations',
                      type='int',
                      default=10,
                      help='Specify maximum number of iterations.')
    parser.add_option(
        '--convergence-epsilon',
        type='float',
        default=0.05,
        help=
        'Specify small positive number that determines the window for convergence criteria.'
    )
    parser.add_option('--degrade-input',
                      action='store_true',
                      help='Degrade input: apply noise to convolved input.')
    parser.add_option('--no-degrade-input',
                      action='store_false',
                      dest='degrade_input',
                      help='See ``--degrade-input``.')
    parser.add_option('--degrade-input-snr',
                      type = 'float', default=0.0,
                      help = 'Specify the signal-to-noise ratio when using --degrade-input.'\
                          'If set to 0, then snr will be estimated as sqrt(max(input image)).')
    parser.add_option('--first-estimate',
                      choices=[
                          'input image', 'convolved input image',
                          '2x convolved input image', 'last result'
                      ],
                      help='Specify first estimate for iteration.')
    parser.add_option('--save-intermediate-results',
                      action='store_true',
                      help='Save intermediate results.')
    parser.add_option('--no-save-intermediate-results',
                      dest='save_intermediate_results',
                      action='store_false',
                      help='See ``--save-intermediate-results`` option.')
    from ..ops.script_options import get_apply_window_options_group
    parser.add_option_group(get_apply_window_options_group(parser))
    parser.add_option_group(get_rltv_options_group(parser))
    from ..ops.script_options import get_fft_options_group
    parser.add_option_group(get_fft_options_group(parser))
    from ..script_options import get_runner_options_group
    parser.add_option_group(get_runner_options_group(parser))
    from ..io.script_options import get_io_options_group, get_microscope_options_group
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #28
0
def set_strathkelvin929_options (parser):
    set_formatter(parser)
    parser.set_usage('%prog')
    parser.set_description('Wrapper of Strathkelvin 929 System software, the GUI program.')
Beispiel #29
0
def set_estimate_psf_options(parser):
    set_formatter(parser)
    parser.set_usage(
        '%prog [options] [ [-i] INPUT_PATH [ [-o] OUTPUT_PATH ] ]')
    parser.set_description(
        '''Find PSF estimate from the measurments of microspheres.

Intermediate results are saved to INPUT_PATH/iocbio.estimate_psf/
directory and estimated PSF is saved to OUTPUT_PATH
''')
    parser.add_option(
        "--measurement-path",
        '--input-path',
        '-i',
        type='file',
        metavar='INPUT_PATH',
        dest='input_path',
        help='''Specify PATH to microsphere measurments.\
To select directory PATH, find a file PATH/{PATHINFO.txt, configuration.txt, SCANINFO.txt} and select it.''',
    )

    parser.add_option("--psf-path",
                      '--output-path',
                      '-o',
                      '-k',
                      type='file',
                      metavar='OUTPUT_PATH',
                      dest='output_path',
                      help='''Specify PATH for saving estimated PSF.''')
    #parser.add_option('--photon-counter-offset',
    #                  type = 'float',
    #                  help = 'Specify photon counter offset.'
    #                  )
    parser.add_option(
        '--subtract-background-field',
        dest='subtract_background_field',
        action='store_true',
        help=
        'Specify that subtraction of a background field should be carried out.'
    )

    parser.add_option('--no-subtract-background-field',
                      dest='subtract_background_field',
                      action='store_false',
                      help='See ``--subtract-background-field option``.')

    parser.add_option("--cluster-background-level",
                      dest='cluster_background_level',
                      type='float',
                      metavar='FLOAT',
                      help="""\
Specify maximum background level for defining PSF clusters: smaller
value means larger clusters (a good thing) and higher probability of
overlapping clusters (a bad thing); default will be estimated. """)

    parser.add_option(
        "--psf-field-size",
        dest='psf_field_size',
        type='float',
        default=7,
        metavar='FLOAT',
        help='Specify PSF field size in lateral and axial resolution units.')

    parser.add_option(
        "--show-plots",
        dest='show_plots',
        action='store_true',
        help='Show estimated PSF during computation.',
    )
    parser.add_option(
        "--no-show-plots",
        dest='show_plots',
        action='store_false',
        help='See ``--show-plot option``.',
    )

    parser.add_option(
        "--save-intermediate-results",
        dest='save_intermediate_results',
        action='store_true',
        help='Save intermediate results of computation.',
    )
    parser.add_option('--no-save-intermediate-results',
                      dest='save_intermediate_results',
                      action='store_false',
                      help='See ``--save-intermediate-results`` option.')
    parser.add_option(
        '--select-candidates',
        help=
        'Specify which canditates are selected for computing the PSF estimate.'
    )

    from ..io.script_options import get_io_options_group, get_microscope_options_group
    parser.add_option_group(get_io_options_group(parser))
    parser.add_option_group(get_microscope_options_group(parser))
Beispiel #30
0
def set_strathkelvin929_options(parser):
    set_formatter(parser)
    parser.set_usage('%prog')
    parser.set_description(
        'Wrapper of Strathkelvin 929 System software, the GUI program.')
Beispiel #31
0
def set_estimate_psf_options (parser):
    set_formatter(parser)
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH [ [-o] OUTPUT_PATH ] ]')
    parser.set_description('''Find PSF estimate from the measurments of microspheres.

Intermediate results are saved to INPUT_PATH/iocbio.estimate_psf/
directory and estimated PSF is saved to OUTPUT_PATH
''')
    parser.add_option ("--measurement-path", '--input-path','-i',
                       type = 'file', metavar='INPUT_PATH', dest='input_path',
                       help = '''Specify PATH to microsphere measurments.\
To select directory PATH, find a file PATH/{PATHINFO.txt, configuration.txt, SCANINFO.txt} and select it.''',
                       )

    parser.add_option ("--psf-path", '--output-path','-o','-k',
                       type = 'file', metavar='OUTPUT_PATH', dest='output_path',
                       help = '''Specify PATH for saving estimated PSF.'''
                       )
    #parser.add_option('--photon-counter-offset',
    #                  type = 'float',
    #                  help = 'Specify photon counter offset.'
    #                  )
    parser.add_option('--subtract-background-field', dest='subtract_background_field',
                      action = 'store_true',
                      help='Specify that subtraction of a background field should be carried out.')

    parser.add_option('--no-subtract-background-field', dest='subtract_background_field',
                      action = 'store_false',
                      help='See ``--subtract-background-field option``.')

    parser.add_option ("--cluster-background-level",
                       dest = 'cluster_background_level',
                       type = 'float',  metavar='FLOAT',
                       help = """\
Specify maximum background level for defining PSF clusters: smaller
value means larger clusters (a good thing) and higher probability of
overlapping clusters (a bad thing); default will be estimated. """)

    parser.add_option ("--psf-field-size",
                       dest = 'psf_field_size',
                       type = 'float', default=7, metavar='FLOAT',
                       help = 'Specify PSF field size in lateral and axial resolution units.'
                       )

    parser.add_option ("--show-plots",
                       dest = 'show_plots', action = 'store_true',
                       help = 'Show estimated PSF during computation.',
                       )
    parser.add_option ("--no-show-plots",
                       dest = 'show_plots', action = 'store_false',
                       help = 'See ``--show-plot option``.',
                       )

    parser.add_option ("--save-intermediate-results",
                       dest = 'save_intermediate_results', action = 'store_true',
                       help = 'Save intermediate results of computation.',
                       )
    parser.add_option ('--no-save-intermediate-results',
                       dest = 'save_intermediate_results', action = 'store_false',
                       help = 'See ``--save-intermediate-results`` option.'
                       )
    parser.add_option ('--select-candidates',
                       help = 'Specify which canditates are selected for computing the PSF estimate.')

    from ..io.script_options import get_io_options_group, get_microscope_options_group
    parser.add_option_group(get_io_options_group (parser))
    parser.add_option_group(get_microscope_options_group (parser))
Beispiel #32
0
def set_show_options(parser):
    set_formatter(parser)
    import matplotlib
    if os.name == 'posix':
        matplotlib.use('GTkAgg')
        parser.run_methods = ['subcommand']
    parser.set_usage('%prog [options] [ [-i] INPUT_PATH ]')
    parser.set_description('Display INPUT_PATH as 3D image.')

    parser.add_option('--input-path',
                      '-i',
                      type='file',
                      metavar='INPUT_PATH',
                      help='Specify input PATH of 3D images.')
    parser.add_option('--interpolation',
                      default='nearest',
                      choices=sorted([
                          'bilinear', 'nearest', 'bicubic', 'spline16',
                          'spline36', 'hanning', 'hamming', 'hermit', 'kaiser',
                          'quadric', 'catrom', 'gaussian', 'bessel',
                          'mitchell', 'sinc', 'lanczos'
                      ]),
                      help="Specify image interpolation method.")
    #parser.add_option('--roll-axis', choices=['0','1','2'], help='Roll given axis to 0.', default='0')
    parser.add_option('--projection',
                      choices=['XY', 'XZ', 'YZ'],
                      help='Project image stack to given plane.',
                      default='XY')
    parser.add_option('--rgb',
                      action='store_true',
                      default=False,
                      help="Display as RGB(A) color images.")
    parser.add_option('--dpi',
                      type='int',
                      default=96,
                      help="Specify plot resolution.")
    import matplotlib.cm as cm
    colormap_names = [name for name in cm.datad if not name.endswith('_r')]
    lcolormap_names = sorted(
        [name for name in colormap_names if name[0].islower()])
    ucolormap_names = sorted(
        [name for name in colormap_names if name[0].isupper()])
    colormap_names = lcolormap_names + ucolormap_names

    parser.add_option(
        '--cmap',
        choices=colormap_names,
        default='gray',
        help=
        'Specify `colormap <http://matplotlib.sourceforge.net/plot_directive/mpl_examples/pylab_examples/show_colormaps.hires.png>`_.'
    )
    parser.add_option('--invert-cmap',
                      action='store_true',
                      default=False,
                      help='Invert specified colormap.')

    parser.add_option(
        '--histogram-bins',
        type='int',
        default=0,
        help='Specify the number of bins for histogram. 0 means no histogram.')

    parser.add_option('--auto-scale',
                      action='store_true',
                      default=False,
                      help='Automatically scale each frame.')

    parser.add_option(
        '--view-3d',
        type='string',
        default='',
        help='Specify z=const, y=const, x=const planes for viewing 3d stack.')

    parser.add_option('--output-path',
                      '-o',
                      type='file',
                      metavar='OUTPUT_PATH',
                      help='Specify output PATH for saving figure.')

    parser.add_option_group(get_io_options_group(parser))
    parser.add_option_group(get_microscope_options_group(parser))