Image/Shape Registration
Show older comments
I am working on registering two sets of coordinates/shapes into a single coordinate space. I know that it is possible to do so, using landmark points, that is, selecting points from each image that represent the same thing. My question is whether there exists an algorithm/procedure where one data set can be rotated, scaled, translated and warped/compressed in order to match the other without selecting points that are known to represent the same point. In other words, if I have a set of arbitrarily spaced out/selected points that represent an outline/contour on one image, and a completely different set of points for the outline/contour of the second image, is there a way of mapping one to the other, without having known landmark points selected in both? Basically can the overall shape created by these two different coordinate sets be used to map one into the other, or is the only way to manually select points which are known to represent the same thing in both images (landmarks)?
any info, guidance or help would be greatly appreciated
Answers (2)
David Young
on 11 Nov 2011
0 votes
The usual way this problem is approached is to match up the points, typically by choosing matches that minimise some measure of the distortion between the two sets of coordinates. The RANSAC algorithm is sometimes used for this, but there is a big literature covering a wide variety of techniques. A good starting point is the book "Computer Vision: A Modern Approach" by Forsyth & Ponce. Methods like this select points which appear to represent the same thing in both images, only not manually.
If the points have attributes other than pure position (e.g. the image structure round the points is known), that is enormously helpful in finding good matches.
If you really don't want to do it by finding explicit matches, then there may be alternatives, but their success would depend on how big the distortion is. You could, for example, try making an image from the points, smoothing it, and then using a gradient approach to finding the parameters of some distortion model (as, for example, here) - but it would be a matter for experiment to see if that could be made to work for your data.
All the above applies to the 2D (image) case, but it could be extended to higher dimensions.
Image Analyst
on 11 Nov 2011
0 votes
If you have a set of landmark points, you can align the two images using the same algorithm that astronomers use to align star patterns. For example the "Groth algorithm" which was originally used to align star patterns has also been used to identify whale sharks based on their spot patterns. Here is how one astronomer at CalTech decribes his algorithm: http://ned.ipac.caltech.edu/level5/Stetson/Stetson5_2.html The page also has a discussion of how complicated this can be despite appearing initially rather easy, for example some landmarks are missing in one of the photos, etc. You can also check out section 12 on registration here: http://iris.usc.edu/Vision-Notes/bibliography/contents.html
Categories
Find more on Geometric Transformation and Image Registration in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!