Correspondance de courbe en Java


Première question ici donc désolé si quelque chose que je demande est complètement stupide.

Je travaille dans un projet de reconnaissance de forme où il est censé pour moi de développer une application qui reçoit deux images: une originale et un croquis fait par un utilisateur. Je suis censé détecter les contours des deux images et de trouver la meilleure correspondance dans l'image d'origine correspondant à l'esquisse faite par l'utilisateur.

J'apprends déjà quelques bases sur la détection de bord Canny et a pu obtenir les contours de plusieurs images. Après avoir les contours, je dois analyser tous les contours de l'image et trouver la meilleure correspondance, sans tenir compte de la traduction, de la rotation, de la mise à l'échelle et de l'occlusion.

Ensuite, j'ai trouvé ce code qui fait exactement ce que je veux: http://www.morethantechnical.com/2012/12/27/2d-curve-matching-in-opencv-w-code/, mais est en C++.

Connaissez-vous une alternative pour un code similaire en Java ou un algorithme qui pourrait m'être utile? J'ai aussi découvert BoofCV mais il semble qu'une telle tâche ne soit pas implémentée.

Merci pour votre patience.

MODIFIER:

J'ai cherché d'autres façons de le faire, et j'ai trouvé la distance de Hausdorff: http://cgm.cs.mcgill.ca / ~godfried/teaching/cg-projects/98/normand/main.html

Est-il possible de modifier cet algorithme pour qu'il soit invariant en rotation? Ils ne parlent que de traduction et de mise à l'échelle.

Author: jmvieira, 2014-11-19

1 answers

Comme vous l'avez mentionné, vous avez déjà le code source en C++ et ne trouvez pas de version Java - votre meilleur pari pourrait être de convertir le code C++ en code Java. Si vous n'avez pas besoin de toutes les parties du programme C++, vous voudrez peut-être ne cacher que les parties (classes) dont vous avez besoin.

La conversion de C++ en Java n'est peut-être pas toujours triviale, mais je suppose que cela pourrait être plus facile si vous savez exactement ce que vous voulez et comment vous voulez que votre programme se comporte. Voici un lien vers une conversion outils - bien qu'ils ne pourraient pas être libre.

Http://www.researchgate.net/post/How_to_convert_the_C_C_code_to_java2

 0
Author: TR1, 2014-12-19 18:37:12