PANDORE Version 6 |
GREYC-IMAGE |
pranksegmentationalgorithms
Classement d'algorithmes de segmentation à partir de mesures de dissimilarité entre des résultats de segmentation et des segmentations de référence.
Synopsis
pranksegmentationalgorithms [-v] acceptable_error1 acceptable_error2 acceptable_error3 acceptable_error4 acceptable_error5 col_in* [col_out1|-] [col_out2|-]
Description
L'opérateur pranksegmentationalgorithms permet de classer plusieurs
algorithmes de segmentation d'images selon leurs performances.
Les performances sont évaluées par comparaison des résultats des algorithmes sur
des images test avec des segmentations de référence fournies par des experts.
Les performances sont calculées à partir de mesures de dissimilarité
entre les résultats de segmentation et les segmentations de référence correspondantes.
Cinq indicateurs de dissimilarité sont évalués, et à chaque fois,
deux mesures sont calculées avec une valeur entre 0 et 1 :
- Indicateur 1 : La précision de la détection : Les deux erreurs mesurées sont :
- L'erreur de rappel qui rend compte de la proportion de faux négatifs.
- L'erreur de précision qui rend compte de la proportion de faux positifs.
- Indicateur 2 : La cohérence de la fragmentation : Les deux erreurs mesurées sont :
- L'erreur de sous-segmentation qui rend compte de la proportion de régions agglomérées par segment.
- L'erreur de sur-segmentation qui rend compte de la proportion de fragmentation des régions en plusieurs segments.
- Indicateur 3 : La localisation des frontières : Les deux erreurs mesurées sont :
- L'erreur de déficit de pixels qui rend compte de la proportion de pixels non détectés dans les régions détectées.
- L'erreur d'excès de pixels qui rend compte de la proportion de pixels erronés ajoutés aux régions détectées.
- Indicateur 4 : Le respect de la forme : Les deux erreurs mesurées sont :
- L'erreur de forme due à l'omission de surface des régions.
- L'erreur de forme due à l'ajout de surface aux régions.
- Indicateur 5 : La préservation de la topologie : Les deux erreurs mesurées sont :
- L'erreur d'ajout de trou qui rend compte de la proportion de faux trous détectés.
- L'erreur de suppression de trou qui rend compte de la proportion de trous non détectés.
Pour chaque indicateur i, il est nécessaire de préciser l'erreur qu'il faut considérer comme
la plus acceptable parmi les deux possibles par l'intermédiaire du paramètre acceptable_errori
(voir la section "Paramètres"), ainsi que la priorit&ecute; relative de l'indicateur.
Le résultat est stocké dans deux collections.
La première collection col_out1 contient les valeurs
pour les cinq indicateurs de performances ci-dessus.
La deuxième collection col_out2 contient les rangs de chacun des algorithmes.
Paramètres
- -v : mode verbeux
- acceptable_error1, acceptable_error2, acceptable_error3, acceptable_error4, acceptable_error5 : permet d'indiquer pour chaque indicateur quelle est l'erreur qu'il faut considérer comme la plus
acceptable. Les valeurs sont comprises entre 1 et 8:
- Les deux erreurs sont acceptables (pas de pénalisation).
- Les deux erreurs sont indésirables.
- Préférer l'erreur1 à l'erreur2.
- Préférer l'erreur2 à l'erreur1.
- Ne pas pénaliser l'erreur1.
- Ne pas pénaliser l'erreur2.
- Prohiber l'erreur1.
- Prohiber l'erreur2.
- priority1, priority2, priority3, priority4, priority5:
La priorité relative entre les indicateurs. Plus la priorité est faible plus l'importance est grande.
C'est un entier entre 1 et 5 où les ex aequo sont possibles.
Entrées
- col_in*: une liste de collections dont chacune contient les 10 erreurs de segmentation d'un algorithme
(calculées par l'opérateur passesssegmentationalgorithm).
Sorties
- col_out1: une collection contenant les valeurs d'indicateurs pour chaque algorithme.
- col_out2: une collection contenant les rangs de chaque algorithme.
Résultat
Retourne SUCCESS ou FAILURE en cas de problème.
Exemples
Classement de deux algorithmes à, partir de leurs résultats de segmentation :
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 1 5 2 4 4 2 3 1 5 total_errors_algo1.pan total_errors_algo1.pan indicators.pan rank.pan
Voir aussi
Evaluation,
passessdetectionaccuracy,
passessfragmentationconsistency,
passessboundaryprecision,
passessshapefidelity,
passesstopologypreservation,
passesssegmentationalgorithm,
pranksegmentationalgorithmsfromfolders
Prototype C++
Errc PRankSegmentationAlgorithms( Pobject ** colss,
int nbOfAlgorithms,
Collection & cold1, Collection & cold2,
int acceptable_error1, int priority1,
int acceptable_error2, int priority2,
int acceptable_error3, int priority3,
int acceptable_error4, int priority4,
int acceptable_error5, int priority5,
bool verbose );
Auteur: Régis Clouard