ilastik / hytra

Python module for multi HYpotheses TRAcking
https://github.com/ilastik/hytra
MIT License
2 stars 7 forks source link

Default Features #14

Open ilastikdev opened 7 years ago

ilastikdev commented 7 years ago

need to be accessed via opObjectExtraction.default_features_key

(ilastik-devel) jales@seagul:~/software/miniconda/envs/ilastik-devel/src/hytra$ git diff 2a6b060e6ec4f06c342f207ca5253331d5a661df
diff --git a/hytra/multitrack_ilastik10 b/hytra/multitrack_ilastik10
index 3ec87ef..9f17f8c 100755
--- a/hytra/multitrack_ilastik10
+++ b/hytra/multitrack_ilastik10
@@ -21,6 +21,7 @@ from trackingfeatures import extract_features_and_compute_score, get_feature_vec
 from hytra.util.progressbar import ProgressBar
 from empryonic import io
 from multiprocessing import Pool
+from ilastik.applets.objectExtraction.opObjectExtraction import default_features_key

 def swirl_motion_func_creator(velocityWeight):
     def swirl_motion_func(traxelA, traxelB, traxelC, traxelD):
@@ -161,7 +162,7 @@ copied but linked to the original files to improve execution speed and storage r
     consopts.add_option('--divPath', dest='div_prob_path', type='string', default='/DivisionDetection/Probabilities/0/',
                         help='internal hdf5 path to division probabilities [default=%default]')
     consopts.add_option('--featsPath', dest='feats_path', type='string',
-                        default='/ObjectExtraction/RegionFeatures/0/[[%d], [%d]]/Default features/%s',
+                        default='/ObjectExtraction/RegionFeatures/0/[[%d], [%d]]/'+default_features_key+'/%s',
                         help='internal hdf5 path to object features [default=%default]')
     consopts.add_option('--translationPath', dest='trans_vector_path', type='str',
                         default='OpticalTranslation/TranslationVectors/0/data',
diff --git a/scripts/hypotheses_graph_to_json.py b/scripts/hypotheses_graph_to_json.py
index 0fd67cd..194c2df 100644
--- a/scripts/hypotheses_graph_to_json.py
+++ b/scripts/hypotheses_graph_to_json.py
@@ -13,6 +13,7 @@ import hytra.core.hypothesesgraph as hypothesesgraph
 import hytra.core.ilastikhypothesesgraph as ilastikhypothesesgraph
 from hytra.pluginsystem.plugin_manager import TrackingPluginManager
 import hytra.core.jsongraph
+from ilastik.applets.objectExtraction.opObjectExtraction import default_features_key

 def getConfigAndCommandLineArguments():
     parser = configargparse.ArgumentParser(description=""" 
@@ -91,7 +92,7 @@ def getConfigAndCommandLineArguments():
     parser.add_argument('--division-classifier-file', dest='div_file', type=str, default=None,
                         help='Filename of the HDF file containing the division classifier. If None, will be taken from ILP')
     parser.add_argument('--featsPath', dest='feats_path', type=str,
-                        default='/TrackingFeatureExtraction/RegionFeaturesVigra/0000/[[%d], [%d]]/Default features/%s',
+                        default='/TrackingFeatureExtraction/RegionFeaturesVigra/0000/[[%d], [%d]]/'+default_features_key+'/%s',
                         help='internal hdf5 path to object features')
     parser.add_argument('--transition-classifier-file', dest='transition_classifier_filename', type=str,
                         default=None)
diff --git a/scripts/plot_probability_distribs.py b/scripts/plot_probability_distribs.py
index f6a7038..56f1601 100644
--- a/scripts/plot_probability_distribs.py
+++ b/scripts/plot_probability_distribs.py
@@ -17,6 +17,7 @@ import vigra
 import copy
 import pgmlink as track
 from empryonic import io
+from ilastik.applets.objectExtraction.opObjectExtraction import default_features_key

 def getConfigAndCommandLineArguments():

@@ -96,7 +97,7 @@ copied but linked to the original files to improve execution speed and storage r
     consopts.add_option('--divPath', dest='div_prob_path', type='string', default='/DivisionDetection/Probabilities/0/',
                         help='internal hdf5 path to division probabilities [default=%default]')
     consopts.add_option('--featsPath', dest='feats_path', type='string',
-                        default='/ObjectExtraction/RegionFeatures/0/[[%d], [%d]]/Default features/%s',
+                        default='/ObjectExtraction/RegionFeatures/0/[[%d], [%d]]/'+default_features_key+'/%s',
                         help='internal hdf5 path to object features [default=%default]')
     consopts.add_option('--translationPath', dest='trans_vector_path', type='str',
                         default='OpticalTranslation/TranslationVectors/0/data',
chaubold commented 7 years ago

Thanks for the hint! But we will not introduce the dependency to ilastik in hytra. The locations you referenced can and should be adjusted by users of the standalone pipeline if they import new ilastik projects.

Note to self: there are probably more places in hytra where the new feature names in ilastik projects cause problems (when reading the lists of selected features for the classifiers!).