def main(argv):
    """"Convert a directory of tifs to an hdf5 stack."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_series2stack(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    series2stack(
        args.inputdir,
        args.regex,
        args.element_size_um,
        args.outlayout,
        args.datatype,
        args.chunksize,
        args.dataslices,
        args.usempi & ('mpi4py' in sys.modules),
        args.outputformats,
        args.outputpath,
        args.save_steps,
        args.protective,
        )
def main(argv):
    """Fill holes in labels."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_fill_holes(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    fill_holes(
        args.inputfile,
        args.methods,
        args.selem,
        args.labelmask,
        args.maskDS,
        args.maskMM,
        args.maskMX,
        args.outputfile,
        args.outputholes,
        args.outputMA,
        args.outputMM,
        args.protective,
        )
Exemple #3
0
def main(argv):
    """Delete/split/merge/... labels in a labelvolume."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_remap_labels(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    remap_labels(
        args.inputfile,
        args.delete_labels,
        args.delete_files,
        args.except_files,
        args.merge_labels,
        args.merge_files,
        args.split_labels,
        args.split_files,
        args.aux_labelvolume,
        args.min_labelsize,
        args.min_segmentsize,
        args.keep_only_largest,
        args.conncomp,
        args.nifti_output,
        args.nifti_transpose,
        args.outputfile,
        args.save_steps,
        args.protective,
        )
Exemple #4
0
def main(argv):
    """Convert/select/downscale/transpose/... an hdf5 dataset."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_stack2stack(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    stack2stack(
        args.inputfile,
        args.outputfile,
        args.dset_name,
        args.blockoffset,
        args.datatype,
        args.uint8conv,
        args.inlayout,
        args.outlayout,
        args.element_size_um,
        args.chunksize,
        args.additional_outputs,
        args.nzfills,
        args.dataslices,
        args.save_steps,
        args.protective,
        )
def main(argv):
    """Find labels that do not traverse through the volume."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_nodes_of_ranvier(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    nodes_of_ranvier(
        args.inputfile,
        args.min_labelsize,
        args.remove_small_labels,
        args.boundarymask,
        args.merge_methods,
        args.overlap_threshold,
        args.data,
        args.maskMM,
        args.searchradius,
        args.outputfile,
        args.save_steps,
        args.protective,
        )
def main(argv):
    """Merge blocks of data into a single hdf5 dataset."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_mergeblocks(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    mergeblocks(
        args.inputfiles,
        args.blockoffset,
        args.blocksize,
        args.margin,
        args.fullsize,
        args.is_labelimage,
        args.relabel,
        args.neighbourmerge,
        args.save_fwmap,
        args.blockreduce,
        args.func,
        args.datatype,
        args.usempi & ('mpi4py' in sys.modules),
        args.outputfile,
        args.save_steps,
        args.protective,
    )
Exemple #7
0
def main(argv):
    """Merge slice-wise overlapping labels."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_merge_slicelabels(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    if args.mode == "MAstitch":

        evaluate_overlaps(
            args.inputfile,
            args.slicedim,
            args.offsets,
            args.threshold_overlap,
            args.do_map_labels,
            args.maskMM,
            args.min_labelsize,
            args.close,
            args.relabel_from,
            args.usempi & ('mpi4py' in sys.modules),
            args.outputfile,
            args.save_steps,
            args.protective,
            )

    elif args.mode == "MAfwmap":

        map_labels(
            args.inputfile,
            args.outputfile,
            args.save_steps,
            args.protective,
            )

    elif args.mode == "MAfilter":

        filter_labels(
            args.inputfile,
            args.maskMM,
            args.min_labelsize,
            args.close,
            args.relabel_from,
            args.outputfile,
            args.save_steps,
            args.protective,
            )
def main(argv):
    """Convert dm3 files to other image formats."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_convert_dm3(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    convert_dm3(
        args.inputdir,
        args.outputdir,
        args.save_steps,
        args.protective,
    )
def main(argv):
    """Correct attributes of a h5 dataset."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_correct_attributes(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    correct_attributes(
        args.inputfile,
        args.auxfile,
        args.outlayout,
        args.element_size_um,
        )
Exemple #10
0
def main(argv):
    """Combine volumes by addition."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_combine_vols(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    combine_vols(
        args.inputfile,
        args.volidxs,
        args.outputfile,
        args.protective,
        )
def main(argv):
    """Filter nodes of ranvier."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_filter_NoR(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    filter_NoR(
        args.inputfile,
        args.input2D,
        args.outputfile,
        args.save_steps,
        args.protective,
        )
Exemple #12
0
def main(argv):
    """Compute segmentation statistics."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_seg_stats(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    seg_stats(
        args.h5path_labelMA,
        args.h5path_labelMF,
        args.h5path_labelUA,
        args.stats,
        args.outputbasename,
        args.protective,
    )
Exemple #13
0
def main(argv):
    """Label connected components."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_connected_components_clf(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    if args.mode == 'train':

        CC_clf_train(
            args.inputfile,
            args.outputfile,
            args.save_steps,
            args.protective,
            )

    elif args.mode == 'test':

        CC_clf_test(
            args.classifierpath,
            args.scalerpath,
            args.basename,
            args.map_propnames,
            args.max_intensity_mb,
            args.max_area,
            args.inputfile,
            args.outputfile,
            args.maskfile,
            args.save_steps,
            args.protective,
            )

    if args.mode == 'map':

        CC_clf_map(
            args.inputfile,
            args.outputfile,
            args.save_steps,
            args.protective,
            )
Exemple #14
0
def main(argv):
    """Apply mapping of labelsets to a labelvolume."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_agglo_from_labelmask(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    agglo_from_labelmask(
        args.inpufile,
        args.labelvolume,
        args.ratio_threshold,
        args.outputfile,
        args.save_steps,
        args.protective,
        )
Exemple #15
0
def main(argv):
    """Downsample volume by blockwise reduction."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_downsample_blockwise(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    downsample_blockwise(
        args.inputfile,
        args.blockreduce,
        args.func,
        args.dataslices,
        args.outputfile,
        args.save_steps,
        args.protective,
    )
Exemple #16
0
def main(argv):
    """Downsample a series of 2D images."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_downsample_slices(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    downsample_slices(
        args.inputdir,
        args.outputdir,
        args.regex,
        args.downsample_factor,
        args.dataslices,
        args.usempi & ('mpi4py' in sys.modules),
        args.protective,
        )
def main(argv):
    """"Convert a directory of tifs to an hdf5 stack."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_splitblocks(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    splitblocks(
        args.inputfile,
        args.dset_name,
        args.dataslices,
        args.blocksize,
        args.margin,
        args.blockrange,
        args.usempi & ('mpi4py' in sys.modules),
        args.outputdir,
        args.save_steps,
        args.protective,
    )
Exemple #18
0
def main(argv):
    """Create thresholded hard segmentations."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_prob2mask(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    if args.step:
        for thr in frange(args.step, 1.0, args.step):
            prob2mask(
                args.inputfile,
                args.dataslices,
                thr,
                args.upper_threshold,
                args.size,
                args.dilation,
                args.inputmask,
                args.go2D,
                args.outputfile.format(thr),
                args.save_steps,
                args.protective,
            )
    else:
        prob2mask(
            args.inputfile,
            args.dataslices,
            args.lower_threshold,
            args.upper_threshold,
            args.size,
            args.dilation,
            args.inputmask,
            args.go2D,
            args.outputfile,
            args.save_steps,
            args.protective,
        )
def main(argv):
    """Perform watershed on the intracellular space compartments."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_watershed_ics(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    watershed_ics(
        args.inputfile,
        args.masks,
        args.seedimage,
        args.seed_size,
        args.lower_threshold,
        args.upper_threshold,
        args.invert,
        args.outputfile,
        args.save_steps,
        args.protective,
    )
Exemple #20
0
def main(argv):
    """Separate the myelin compartment into individual myelin sheaths."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser = parse.parse_separate_sheaths(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    separate_sheaths(
        args.inputfile,
        args.labelMM,
        args.maskWS,
        args.maskDS,
        args.maskMM,
        args.dilation_iterations,
        args.distance,
        args.sigmoidweighting,
        args.margin,
        args.outputfile,
        args.save_steps,
        args.protective,
    )
def main(argv):
    """Label connected components."""

    parser = argparse.ArgumentParser(
        description=__doc__,
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
        )
    parser = parse.parse_connected_components(parser)
    parser = parse.parse_common(parser)
    args = parser.parse_args()

    if args.mode == '3D':

        CC_3D(
            args.inputfile,
            args.maskDS,
            args.min_size_maskMM,
            args.min_area,
            args.outputfile,
            args.protective,
            )

    elif args.mode == '2D':

        CC_2D(
            args.inputfile,
            args.maskDS,
            args.slicedim,
            args.usempi & ('mpi4py' in sys.modules),
            args.outputfile,
            args.protective,
            )

    elif args.mode == "2Dfilter":

        criteria = (
            args.min_area,
            args.max_area,
            args.max_intensity_mb,
            args.max_eccentricity,
            args.min_solidity,
            args.min_euler_number,
            args.min_extent
            )

        CC_2Dfilter(
            args.inputfile,
            args.map_propnames,
            criteria,
            args.maskMB,
            args.slicedim,
            args.usempi & ('mpi4py' in sys.modules),
            args.outputfile,
            args.protective,
            )

    elif args.mode == "2Dprops":

        CC_2Dprops(
            args.inputfile,
            args.basename,
            args.map_propnames,
            args.usempi & ('mpi4py' in sys.modules),
            args.outputfile,
            args.protective,
            )

    elif args.mode == "2Dto3D":

        CC_2Dto3D(
            args.inputfile,
            args.outputfile,
            args.protective,
            )