Corresponding 2D points

asked 2015-04-29 13:11:49 -0600

PapperCut gravatar image

updated 2015-04-29 13:15:27 -0600

I'm new to OpenCV. I have a few points (5-10). Positions may change over time, a few points may disappear (no more than 10%) but the general pattern will still look somewhat similar. I want to find corresponding points.

I know I can do it manually, but I assume there is something in OpenCV that might help.

image:alt text

edit retag flag offensive close merge delete

Comments

How do yo draw or move the points in the second image? generally there are several approaches to find the corresponding points such as the change of intensity, rotation and etc. But here, as can be seen, the all properties of both images are exactly the same except of the position of points. So I think you can not investigate on the approaches such as feature matching or feature tracking. I believe you can use of some geometric properties, for instance the distance between the points or the position of points relative to each other, to find the corresponding points and as I know, you can not find a relative function for this case in opencv.

Amin_Abouee gravatar imageAmin_Abouee ( 2015-04-29 17:00:00 -0600 )edit

![Just one hint that might be useful on this problem: connect the points and create a convex hull of your points. For this one, you can mark the points in the first convex hull by the number 1, 2, 3 and ... After that create the second convex hull in the next image and assign the numbers to the each points. So right now the point 1 in the first convex is correspond to the first point in the second image.

Amin_Abouee gravatar imageAmin_Abouee ( 2015-04-29 17:07:05 -0600 )edit

See the below image:

Amin_Abouee gravatar imageAmin_Abouee ( 2015-04-29 17:20:44 -0600 )edit
1

Could you elaborate more on where your points are comming from and what the application is. To me it seems the solution might depend on that!

StevenPuttemans gravatar imageStevenPuttemans ( 2015-04-30 02:42:37 -0600 )edit

Thanks for answers. These are laser points, which indicate deformations of an object. It's not an ideal solution for the problem I have, but very simple and reliable. I only have to find corresponding points. They can't move instantly and in most cases it's enough to find the closest points. However, in some cases the gap between positions of the same point is too large because of performance problems which can't be resolved (for now). Additionally, as I mentioned, some points may disappear for a few frames. As a result some wrong point becomes the closest. Constructing a convex hull was one of the methods I was going to use to get the general shape and outer points. Additionally I plan to use a probabilistic model to estimate corresponding points on basis of their relative positions.

PapperCut gravatar imagePapperCut ( 2015-04-30 09:09:45 -0600 )edit