Ask Your Question

How to compare two contours Translated from one another?

asked 2014-02-17 03:03:07 -0600

updated 2015-08-24 18:26:26 -0600

image description

Hi all, I want to compare two contours & find the hausdorff distance between them to find the similarity between the two contours. When I take the template contour on the Right side as a Reference Contour to find the similar contour from the Left hand side I’m getting error because the Scene contour points are translated from the Template contour Actual-Points. Actually I’m taking the contours points directly from the two images. As you can see I cannot crop only the contour region since it affects the neighboring contours. Here I'm not using Template matching since my reference Image may have group of contours so I'm comparing difference between all the points in the two contours to find hausdorff distance.

Should I make an Empty image with Scene image size and make my Template contour slide over the Scene Image to find the match? or else is there any other better approach? Regards, Balaji.R

edit retag flag offensive close merge delete

4 answers

Sort by » oldest newest most voted

answered 2014-02-19 04:27:14 -0600

updated 2016-11-19 20:02:40 -0600

This answer might be more suitable! Ref

edit flag offensive delete link more

answered 2014-02-19 17:48:53 -0600

pdf417 gravatar image

If you need to match contours than Hu Moments would be the best option. These moments are invariant to scale and rotation and a simple classifier would help you identify the correct match to the moments.

edit flag offensive delete link more

answered 2014-02-19 01:58:49 -0600

JohannesZ gravatar image

Hm, I think SIFT is not useful for this case because the patterns do not have high textureness and are symmetrical. This will also give problems in the matching stage.

I would prefer template matching combined with a scale space, for example a gaussian pyramid.

edit flag offensive delete link more

answered 2017-08-09 08:21:18 -0600

Ziri gravatar image

updated 2017-08-09 08:22:04 -0600

Did you try matchShapes() ? but if you're looking for more robust method i suggest reading this paper :

edit flag offensive delete link more

Question Tools



Asked: 2014-02-17 03:03:07 -0600

Seen: 8,067 times

Last updated: Aug 09 '17