append=True) return paths if __name__ == '__main__': try: yamlfile = os.path.dirname( os.path.abspath(__file__)) + '/parameters.yml' ifp = ImageFileProcessing(yaml=yamlfile, yamlspec={ 'image_path': 'intermedfolder', 'image_file': 'locmaxfile', 'image_names': ('locmaxnames', 1, 3) }, asdict=True, keys=('disttransf', 'locmax')) params = ifp.get_params() thisparams = params['paths_of_partners'] ifp.addfromfile(params['intermedfolder'] + params['largeobjmfile'], image_names=params['largeobjmnames'], ids=[ 'largeobjm', 'mergeids_small', 'mergeids_random', 'mergeids_all' ]) ifp.addfromfile(params['intermedfolder'] + params['largeobjfile'], image_names=params['largeobjname'], ids='largeobj')
return d - it elif type == 'it/d': return it / d if __name__ == "__main__": # sys.stdout = open('/media/julian/Daten/neuraldata/isbi_2013/mc_crop_cache/log.txt', "a") # Parameters tapering_tolerance_rel = 0.5 tapering_tolerance_abs = 5 # object = 191 ifp = ImageFileProcessing( "/media/julian/Daten/neuraldata/isbi_2013/mc_crop_cache/", "multicut_segmentation.h5", asdict=True, keys=('labels',)) # for obj in [191]: for obj in xrange(1, ifp.amax(ids=('labels',))['labels'] + 1): # sys.stdout = open('/media/julian/Daten/neuraldata/isbi_2013/mc_crop_cache/log.txt', "a") print '_____________________________________________________________________' print 'Object label: ' + str(obj) ifp.deepcopy_entry('labels', 'disttransf') if True: # Start with one object only
if __name__ == "__main__": folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.h5' names = ('neuron_ids', ) keys = ('labels', ) tolerance_rel = 0.5 tolerance_abs = 5 pixel_pitch = (1, 1, 10) ifp = ImageFileProcessing(folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger('{}tapering.log'.format(folder), type='w') ifp.logging("######################################################") ifp.logging('# Starting tapering_violation_detection with: #') ifp.logging("# tolerance_rel = {0: <31} #".format(tolerance_rel)) ifp.logging("# tolerance_abs = {0: <31} #".format(tolerance_abs)) ifp.logging("# pixel_pitch = {0: <34}#".format(pixel_pitch)) ifp.logging("######################################################\n") tapering_violation_detection(ifp, tolerance_rel=tolerance_rel, tolerance_abs=tolerance_abs,
def find_large_objects(): anisotropy = np.array([10, 1, 1]) folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.disttransf.h5' names = ('labels', 'disttransf') keys = ('labels', 'disttransf') ifp = ImageFileProcessing( folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger(filename=None, type='a') ifp.addtodict([], 'largeobjects') c = 0 for lblo in ifp.label_bounds_iterator('labels', 'curlabel', ids='disttransf', targetids='curdisttransf', maskvalue=0, value=0): ifp.logging('------------\nCurrent label {} in iteration {}', lblo['label'], c) ifp.logging('Bounding box = {}', lblo['bounds']) local_maxima_found = find_local_maxima(ifp, anisotropy) ifp.logging('Local maxima found: {}', local_maxima_found) if local_maxima_found: ifp.get_image('largeobjects').append(lblo['label']) # if ifp.amax('locmax') != 0: # # ifp.write(filename='{0}input_{1}.h5'.format(resultfolder, lblo['label']), ids=('curdisttransf', 'curlabel', 'smoothed')) # ifp.write(filename='{0}paths_over_dist_{1}.h5'.format(resultfolder, lblo['label']), ids=('paths_over_dist',)) # # else: # # ifp.logging('No maxima found!') else: ifp.logging('Maxima detection not successful!') c += 1 # if c == 10: # break ifp.write(filename='largeobjects.h5', ids=('largeobjects',)) ifp.logging('') ifp.stoplogger()
def remove_small_objects(): folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.disttransf.h5' names = ('labels',) keys = ('labels',) ifp = ImageFileProcessing( folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger(filename=None) # Find all relevant labels ifp.addfromfile('{}largeobjects.h5'.format(folder), image_ids=(0,)) for lbl in ifp.label_image_iterator( 'labels', 'largeobjects', accumulate=True, labellist=ifp.get_image('largeobjects')): ifp.logging('Label {} done!', lbl) ifp.getlabel(0, ids='largeobjects', targetids='background') ifp.write(filename='largeobjectimage.h5') ifp.logging('') ifp.stoplogger()
import random import vigra import numpy as np import os import inspect __author__ = 'jhennies' if __name__ == '__main__': yamlfile = os.path.dirname(os.path.abspath(__file__)) + '/parameters.yml' ifp = ImageFileProcessing(yaml=yamlfile, yamlspec={ 'image_path': 'intermedfolder', 'image_file': 'largeobjfile', 'image_names': 'largeobjname' }, asdict=True, keys=('largeobj', )) params = ifp.get_params() thisparams = params['localmax_on_disttransf'] ifp.addfromfile(params['intermedfolder'] + params['largeobjmfile'], image_names=params['largeobjmnames'][0], ids='largeobjm') ifp.startlogger(filename=ifp.get_params()['intermedfolder'] + 'locmax_on_disttransf.log', type='a') # ifp.code2log(__file__) ifp.code2log(inspect.stack()[0][1])
from image_processing import ImageFileProcessing ifp = ImageFileProcessing( image_path='/media/julian/Daten/neuraldata/cremi_2016/', image_file='cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.largeobjects.h5' ) ifp.crop((16, 320, 180), (19, 350, 220), ids='largeobjects', targetids='crop') ifp.filter_values(14994, type='eq', setto=0, ids='crop') ifp.get_image('largeobjects')[16:19, 320:350, 180:220] = ifp.get_image('crop') ifp.write(filename='largeobj_test.h5', ids=('background', 'labels', 'largeobjects'))
ifp.anytask(vigra.filters.discDilation, 2, ids='pathsim') ifp.logging('ifp.shape = {}', ifp.shape(ids=('pathsim', 'curlabelpair', 'curdisttransf'))) ifp.set_data_dict({'paths_over_dist': np.array([ifp.get_image('pathsim'), ifp.get_image('curlabelpair'), ifp.get_image('curdisttransf')])}, append=True) return paths if __name__ == '__main__': try: yamlfile = os.path.dirname(os.path.abspath(__file__)) + '/parameters.yml' ifp = ImageFileProcessing( yaml=yamlfile, yamlspec={'image_path': 'intermedfolder', 'image_file': 'locmaxfile', 'image_names': ('locmaxnames', 1, 3)}, asdict=True, keys=('disttransf', 'locmax') ) params = ifp.get_params() thisparams = params['paths_of_partners'] ifp.addfromfile(params['intermedfolder']+params['largeobjmfile'], image_names=params['largeobjmnames'], ids=['largeobjm', 'mergeids_small', 'mergeids_random', 'mergeids_all']) ifp.addfromfile(params['intermedfolder']+params['largeobjfile'], image_names=params['largeobjname'], ids='largeobj') ifp.startlogger(filename=params['intermedfolder'] + 'paths_of_partners.log', type='a') # ifp.code2log(__file__) ifp.code2log(inspect.stack()[0][1]) ifp.logging('') ifp.logging('yamlfile = {}', yamlfile)
# ifp = ImageFileProcessing.empty() crop = True anisotropy = np.array([10, 1, 1]) folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.disttransf.h5' names = ('labels','disttransf') keys = ('labels','disttransf') resultfolder = 'develop/160927_determine_shortest_paths/160929_pthsovrdist_pow10/' if True: ifp = ImageFileProcessing( folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger(filename='/media/julian/Daten/neuraldata/cremi_2016/develop/160927_determine_shortest_paths/160929_pthsovrdist_pow10/160929.log', type='a') # # Cropping # if crop: # ifp.crop([10, 200, 200], [110, 712, 712]) # ifp.write() # ifp.logging('ifp.get_image = {}', ifp.get_image('labels')[0, 0, 0]) # ifp.logging('ifp.amax = {}\n', ifp.amax('labels')) ifp.logging('keys() = {}', ifp.get_data().keys())
# ifp = ImageFileProcessing.empty() crop = True anisotropy = np.array([10, 1, 1]) folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.disttransf.h5' names = ('labels', 'disttransf') keys = ('labels', 'disttransf') resultfolder = 'develop/160927_determine_shortest_paths/160929_pthsovrdist_pow10/' if True: ifp = ImageFileProcessing(folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger( filename= '/media/julian/Daten/neuraldata/cremi_2016/develop/160927_determine_shortest_paths/160929_pthsovrdist_pow10/160929.log', type='a') # # Cropping # if crop: # ifp.crop([10, 200, 200], [110, 712, 712]) # ifp.write() # ifp.logging('ifp.get_image = {}', ifp.get_image('labels')[0, 0, 0])
elif type == 'it/d': return it / d if __name__ == "__main__": # sys.stdout = open('/media/julian/Daten/neuraldata/isbi_2013/mc_crop_cache/log.txt', "a") # Parameters tapering_tolerance_rel = 0.5 tapering_tolerance_abs = 5 # object = 191 ifp = ImageFileProcessing( "/media/julian/Daten/neuraldata/isbi_2013/mc_crop_cache/", "multicut_segmentation.h5", asdict=True, keys=('labels', )) # for obj in [191]: for obj in xrange(1, ifp.amax(ids=('labels', ))['labels'] + 1): # sys.stdout = open('/media/julian/Daten/neuraldata/isbi_2013/mc_crop_cache/log.txt', "a") print '_____________________________________________________________________' print 'Object label: ' + str(obj) ifp.deepcopy_entry('labels', 'disttransf') if True:
# # return image if __name__ == '__main__': crop = True anisotropy = np.array([10, 1, 1]) folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.h5' names = ('neuron_ids', ) keys = ('labels', ) ifp = ImageFileProcessing(folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger( filename='/media/julian/Daten/neuraldata/cremi_2016/disttransf.log', type='a') ifp.logging('keys = {}', ifp.get_data().keys()) if crop: ifp.crop([10, 200, 200], [110, 712, 712]) ifp_boundary_distance_transform(ifp, 'labels', 'disttransf',
def remove_small_objects(): folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.disttransf.h5' names = ('labels', ) keys = ('labels', ) ifp = ImageFileProcessing(folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger(filename=None) # Find all relevant labels ifp.addfromfile('{}largeobjects.h5'.format(folder), image_ids=(0, )) for lbl in ifp.label_image_iterator( 'labels', 'largeobjects', accumulate=True, labellist=ifp.get_image('largeobjects')): ifp.logging('Label {} done!', lbl) ifp.getlabel(0, ids='largeobjects', targetids='background') ifp.write(filename='largeobjectimage.h5') ifp.logging('') ifp.stoplogger()
def find_large_objects(): anisotropy = np.array([10, 1, 1]) folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.disttransf.h5' names = ('labels', 'disttransf') keys = ('labels', 'disttransf') ifp = ImageFileProcessing(folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger(filename=None, type='a') ifp.addtodict([], 'largeobjects') c = 0 for lblo in ifp.label_bounds_iterator('labels', 'curlabel', ids='disttransf', targetids='curdisttransf', maskvalue=0, value=0): ifp.logging('------------\nCurrent label {} in iteration {}', lblo['label'], c) ifp.logging('Bounding box = {}', lblo['bounds']) local_maxima_found = find_local_maxima(ifp, anisotropy) ifp.logging('Local maxima found: {}', local_maxima_found) if local_maxima_found: ifp.get_image('largeobjects').append(lblo['label']) # if ifp.amax('locmax') != 0: # # ifp.write(filename='{0}input_{1}.h5'.format(resultfolder, lblo['label']), ids=('curdisttransf', 'curlabel', 'smoothed')) # ifp.write(filename='{0}paths_over_dist_{1}.h5'.format(resultfolder, lblo['label']), ids=('paths_over_dist',)) # # else: # # ifp.logging('No maxima found!') else: ifp.logging('Maxima detection not successful!') c += 1 # if c == 10: # break ifp.write(filename='largeobjects.h5', ids=('largeobjects', )) ifp.logging('') ifp.stoplogger()
# return image if __name__ == '__main__': crop = True anisotropy = np.array([10, 1, 1]) folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.h5' names = ('neuron_ids',) keys = ('labels',) ifp = ImageFileProcessing( folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger(filename='/media/julian/Daten/neuraldata/cremi_2016/disttransf.log', type='a') ifp.logging('keys = {}', ifp.get_data().keys()) if crop: ifp.crop([10, 200, 200], [110, 712, 712]) ifp_boundary_distance_transform(ifp, 'labels', 'disttransf', pixel_pitch=anisotropy) ifp.logging('ifp.shape() = {}', ifp.shape())
if __name__ == "__main__": folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.h5' names = ('neuron_ids',) keys = ('labels',) tolerance_rel = 0.5 tolerance_abs = 5 pixel_pitch = (1, 1, 10) ifp = ImageFileProcessing( folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger('{}tapering.log'.format(folder), type='w') ifp.logging("######################################################") ifp.logging('# Starting tapering_violation_detection with: #') ifp.logging("# tolerance_rel = {0: <31} #".format(tolerance_rel)) ifp.logging("# tolerance_abs = {0: <31} #".format(tolerance_abs)) ifp.logging("# pixel_pitch = {0: <34}#".format(pixel_pitch)) ifp.logging("######################################################\n") tapering_violation_detection(ifp, tolerance_rel=tolerance_rel, tolerance_abs=tolerance_abs,
ifp.get_image('curdisttransf') ]) }, append=True) return paths if __name__ == '__main__': yamlfile = os.path.dirname(os.path.abspath(__file__)) + '/parameters.yml' ifp = ImageFileProcessing(yaml=yamlfile, yamlspec={ 'image_path': 'intermedfolder', 'image_file': 'locmaxfile', 'image_names': ('locmaxnames', 0, 2) }, asdict=True, keys=('disttransf', 'locmax')) params = ifp.get_params() thisparams = params['paths_within_labels'] ifp.addfromfile(params['intermedfolder'] + params['largeobjfile'], image_names=params['largeobjname'], ids='largeobj') ifp.startlogger(filename=params['intermedfolder'] + 'paths_within_labels.log', type='a') # ifp.code2log(__file__) ifp.code2log(inspect.stack()[0][1])
__author__ = 'jhennies' if __name__ == '__main__': numberbysize = 10 numberbyrandom = 5 folder = '/media/julian/Daten/neuraldata/cremi_2016/' file = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712.largeobjects.h5' names = ('largeobjects',) keys = ('labels',) targetfolder = 'cremi.splA.raw_neurons.crop.crop_10-200-200_110-712-712_merges/' ifp = ImageFileProcessing( folder, file, asdict=True, image_names=names, keys=keys) ifp.startlogger(filename=None, type='a') # Done: Randomly select an edge # Done: Find adjacent objects # Done: Extract both adjacent objects as an image (needed for subsequent learning) # TODO: Merge the objects # Done: Select edges by size? Small edges are more relevant for our algorithm # # Find all relevant labels # ifp.addfromfile('{}largeobjects.h5'.format(folder), image_ids=(0,)) ifp.logging('keys = {}', ifp.get_data().keys())
import random import vigra import numpy as np import os import inspect __author__ = 'jhennies' if __name__ == '__main__': yamlfile = os.path.dirname(os.path.abspath(__file__)) + '/parameters.yml' ifp = ImageFileProcessing( yaml=yamlfile, yamlspec={'image_path': 'intermedfolder', 'image_file': 'largeobjfile', 'image_names': 'largeobjname'}, asdict=True, keys=('largeobj',) ) params = ifp.get_params() thisparams = params['localmax_on_disttransf'] ifp.addfromfile(params['intermedfolder']+params['largeobjmfile'], image_names=params['largeobjmnames'][0], ids='largeobjm') ifp.startlogger(filename=ifp.get_params()['intermedfolder'] + 'locmax_on_disttransf.log', type='a') # ifp.code2log(__file__) ifp.code2log(inspect.stack()[0][1]) ifp.logging('') ifp.logging('yamlfile = {}', yamlfile) ifp.logging('ifp.get_data().keys() = {}', ifp.get_data().keys()) ifp.logging('ifp.shape() = {}', ifp.shape())
ifp.astype(np.uint8, ('pathsim', 'curlocmax')) # ifp.anytask(vigra.filters.multiBinaryDilation, ('paths', 'locmax'), 3) ifp.swapaxes(0, 2, ids=('pathsim', 'curlocmax', 'curdisttransf')) ifp.anytask(vigra.filters.discDilation, 2, ids=('pathsim', 'curlocmax')) ifp.set_data_dict({'paths_over_dist': np.array([ifp.get_image('pathsim'), ifp.get_image('curlocmax'), ifp.get_image('curdisttransf')])}, append=True) return paths if __name__ == '__main__': yamlfile = os.path.dirname(os.path.abspath(__file__)) + '/parameters.yml' ifp = ImageFileProcessing( yaml=yamlfile, yamlspec={'image_path': 'intermedfolder', 'image_file': 'locmaxfile', 'image_names': ('locmaxnames', 0, 2)}, asdict=True, keys=('disttransf', 'locmax') ) params = ifp.get_params() thisparams = params['paths_within_labels'] ifp.addfromfile(params['intermedfolder']+params['largeobjfile'], image_names=params['largeobjname'], ids='largeobj') ifp.startlogger(filename=params['intermedfolder'] + 'paths_within_labels.log', type='a') # ifp.code2log(__file__) ifp.code2log(inspect.stack()[0][1]) ifp.logging('') ifp.logging('yamlfile = {}', yamlfile) ifp.logging('ifp.get_data().keys() = {}', ifp.get_data().keys()) ifp.logging('ifp.shape() = {}', ifp.shape())