You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ideally, I think, the following behaviour would be desirable:
If "Segmentation > Open Classifier ..." is executed, a new Segmentation item is created, the selected classifier file is loaded into this item, and the new item is selected and run for the opened image.
The current behaviour is:
If no existing Segmentation item is selected, "Segmentation > Open Classifier ..." results in an exception.
If an existing Segmentation item is selected, "Segmentation > Open Classifier ..." will load the classifier file into that item, if the selected item is of the correct type. Otherwise, an exception might be thrown, or it might just silently fail. It may seem like the loading was successful, but actually nothing happened.
Some problems are:
Items in the Segmentation list cannot change their type. (The user has to know which type the saved classifier is, create a Segmentation item of the matching type, then select it, and load it).
The .classifier JSON has no indication of which type of Segmenter it represents, making it difficult to do the right thing.
It is probably not too late to change the classifier file format to add information about the Segmenter type (ideally not a class name, but some string representation that can also be matched later, should the package structure change etc...). Very likely, all already existing .classifier files refer to TrainableSegmentationSegmenter, so that would be the natural fallback, if the Segmenter type is missing. This wouldn't break existing .classifier files, and at the same time provide an extensible way forward.
I would do that, and modify "Segmentation > Open Classifier ..." to always add a new Segmenter item, circumventing the problem that Segmentation items would have to be able to change type if "Open Classifier ..." would load into the selected (if any) item.
The text was updated successfully, but these errors were encountered:
The UI for loading classifiers is a bit broken.
Ideally, I think, the following behaviour would be desirable:
The current behaviour is:
Some problems are:
.classifier
JSON has no indication of which type of Segmenter it represents, making it difficult to do the right thing.It is probably not too late to change the classifier file format to add information about the Segmenter type (ideally not a class name, but some string representation that can also be matched later, should the package structure change etc...). Very likely, all already existing
.classifier
files refer toTrainableSegmentationSegmenter
, so that would be the natural fallback, if the Segmenter type is missing. This wouldn't break existing.classifier
files, and at the same time provide an extensible way forward.I would do that, and modify "Segmentation > Open Classifier ..." to always add a new Segmenter item, circumventing the problem that Segmentation items would have to be able to change type if "Open Classifier ..." would load into the selected (if any) item.
The text was updated successfully, but these errors were encountered: