Closed jlegrand62 closed 3 years ago
Can be tested with:
romi_run_task OrganSegmentation database_jcharlaix/scans_reconstructed/arabido_test2_ml/ --config configs/ml_pipe_vplants_4.toml
Example of clustering on PEDICEL (left) & FRUIT (right):
For clarity, I prefer adding some information (correct me if I am wrong):
the input of new task OrganSegmentation
is a labelled point cloud, where labels were given by deep learning from 2D images (ml pipeline only)
the output is still a point cloud, but this time neighboring points with the same label are clustered in a unique object with a class, providing an instance segmentation of the point cloud. The class is derived from the classes of the point labels, on which the machine learning phase was trained initially (namely: stem, leaf, flower, fruit, pedicle)
the output is stored in a dedicated folder, whose name starts looks like "OrganSegmentation_2_0_5_out_8a261572f8"
In the ml pipe, this task replaces ClusteredMesh and connects directly SegmentedPointCloud
to AnglesAndInternodes
Note before merging: edit the romiscan/config/ml_pipe_full.toml with new task
Note before merging: edit the romiscan/config/ml_pipe_full.toml with new task
Maybe I should wait to test OrganSegmentation
for repeatability against ClusteredMesh
and prove its more robust?!
I have this robustness_comparison
script ready in a branch that should be quickly mergeable with this one!
It uses a DBSCAN clustering method on the segmented point cloud to detect organs.