PANDORE Version 6 |
GREYC-IMAGE |
pranksegmentationalgorithms
Image segmentation algorithms ranking based on discrepancy measures between segmentation results and reference segmentations.
Synopsis
pranksegmentationalgorithms [-v] acceptable_error1 acceptable_error2 acceptable_error3 acceptable_error4 acceptable_error5 col_in* [col_out1|-] [col_out2|-]
Description
The operator pranksegmentationalgorithms ranks several segmentation algorithms
according to their performances.
Performances are evaluated by discrepancy measures between segmentation results and ground truths.
Performance is calculated from 10 discrepancy measures between segmentations and the corresponding ground truth. Five discrepancy indicators are evaluated and for each
indicator two measures are calculated with value between 0 and 1:
- Indicator 1: Detection accuracy. The two errors are:
- Recall error accounts for proportion of false negative regions.
- Precision error accounts for proportion of false positive regions.
- Indicator 2: Fragmentation consistency. The two errors are:
- Under-segmentation error accounts
for proportion of regions grouped into a single segment.
- Over-segmentation error accounts
for proportion of segments grouped into a single region.
- Indicator 3: boundary precision. The two errors are:
- Pixel deficit error accounts for
proportion of missed pixels in correctly detected regions.
- Pixel excess error accounts for
proportion of false pixels added to correctly detected region.
- Indicator 4: Shape fidelity. The two errors are:
- Omission shape error accounts for distance of deleted shape to true shape.
- Commission error accounts for distance of added shape to true shape.
- Indicator 5: Topology preservation.
The two errors are:
- Hole addition error accounts for the proportion of false holes.
- Hole detection error accounts for the proportion of missed holes.
For each indicator i, the most acceptable error between the two
should be specified by the way of the parameter
acceptable_errori. (See section "Parameters")
The results are stored in two collections.
The first collection col_out1 contains the value of each performance indicator for each algorithm.
The second collection col_out2 contains the rank of each algorithm.
Parameters
- -v : verbose mode
- acceptable_error1, acceptable_error2, acceptable_error3, acceptable_error4, acceptable_error5:
the value indicates the preferences :
- Both errors are acceptable (no penalty).
- Both errors are undesirable.
- Prefer error1 to error2.
- Prefer error2 to error1.
- Do not penalize error1.
- Do not penalize error2.
- Prohibit error1.
- Prohibit error2.
Inputs
- col_in*: a list of collections; each of them contains the 10 error values
of a segmentation algorithm (computed from
passesssegmentationalgorithm).
Outputs
- col_out1: a collection with indicator values of each algorithm.
- col_out2: a collection with the rank of each algorithm.
Result
Returns SUCCESS or FAILURE.
Examples
Rank two algorithms from their segmentation results:
passesssegmentationalgorithm 0 0.5 resultimages/algo001 groundtruths detail_errors_algo1.pan total_errors_algo1.pan
passesssegmentationalgorithm 0 0.5 resultimages/algo002 groundtruths detail_errors_algo2.pan total_errors_algo2.pan
pranksegmentationalgorithms 4 6 3 1 1 total_errors_algo1.pan total_errors_algo1.pan indicators.pan rank.pan
See also
Evaluation,
passessdetectionaccuracy,
passessfragmentationconsistency,
passessboundaryprecision,
passessshapefidelity,
passesstopologypreservation,
passesssegmentationalgorithm,
pranksegmentationalgorithmsfromfolders
Prototype C++
Errc PRankAlgorithmsSegmentation(Pobject ** cols, int nbAlgorithms, Collection & cold1, Collection & cold2,
int acceptable_error1,
int acceptable_error2,
int acceptable_error3,
int acceptable_error4,
int acceptable_error5);
Author: Régis Clouard