2016-11-09 2 views
1

Je suis nouveau à BoofCV, j'essayais d'implémenter l'exemple de correspondance de modèle de BoofCV donné sur le lien suivant http://boofcv.org/index.php?title=Example_Template_Matching.Problème de correspondance de modèle en utilisant BoofCV

Cela fonctionne correctement quand mon image contient le modèle, mais quand je change l'image qui ne contient pas encore le modèle il renvoie le résultat comme match trouvé.

Donc, je veux faire quelque chose comme ça il devrait donner une erreur ou un message de log que ce modèle ne trouve pas au lieu de donner une correspondance trouvée totalement fausse.

Merci & Cordialement

+0

Donc fondamentalement, il ne fonctionne pas dans tous les cas car l'exemple «valide» que vous avez donné peut aussi être faux-positif. – Antoniossss

+0

Oui, lorsque l'image ne contient pas le modèle, elle donne une correspondance incorrecte, en fait, comment elle peut obtenir une correspondance si l'image ne contient pas le modèle. Donc j'essaye de trouver une solution pour vérifier si l'image contient le modèle ou pas si elle contient alors le processus sinon donnez un message d'erreur –

+0

C'est mon point - faux positif signifie que vous ne savez pas si correspondre à l'entrée où il devrait être mach causé parce qu'il détecte effectivement le modèle, ou il ne fonctionne pas comme dans le cas d'une entrée où il n'y a pas de modèle. Dans d'autres travaux, vous ne savez pas si cela fonctionne du tout. – Antoniossss

Répondre

1

Vous devez regarder le score du match. Ce qui fait un bon seuil dépendra de la technique d'appariement que vous utilisez.

matcher.process(image); 
for(Match m : matcher.getResults().toList()) { 
    if(m.score < THRESHOLD) // filter out false positives with this 
     continue; 
}