Calculer la superficie d'un objet avec OpenCV
J'ai besoin de calculer l'aire d'un blob/un objet dans une image en niveaux de gris (le chargeant comme Mat, pas comme IplImage) à l'aide de OpenCV.
Je pensais que ce serait une bonne idée d'obtenir les coordonnées des bords (nombre d'arêtes formulaire de modification d'un objet à un autre) ou d'obtenir toutes les coordonnées du contour et ensuite utiliser contourArea()
pour calculer la surface de mon objet.
J'ai supprimé tous les bruits et a obtenu quelques belles et à la satisfaction des contours en utilisant findContours()
(programmation en C++).
findContours(InputOutputArray image, OutputArrayOfArrays contours, OutputArray hierarchy,int mode, int method, Point offset=Point());
Maintenant, je suis arrivé à comprendre que les param contours
possède déjà les coordonnées de tous les contours de mon objet. Ai-je droit?
Si oui, il y a un moyen d'y accéder?
Et si non, comment puis-je obtenir les coordonnées du contour de toute façon?
source d'informationauteur Temer
Vous devez vous connecter pour publier un commentaire.
contours
est en réalité défini commeEt maintenant, je pense qu'il est clair comment faire pour accéder à ses points.
De la zone du contour est calculé par une fonction joliment appelé
contourArea()
: