Image Projection with SIFT Recently, I am thinking about a problem regarding image projection. I have a larger picture as bellow.
 

I want to find the transformation matrix, x'=Hx. When the above image pass the transformation matrix H, I will get another smaller picture as bellow.



I have tried to use SIFT to find four major points and use these points to implement DLT algorithm. However, after executing SIFT, I find that there are many matching error as bellow. The distRatio is 0.5



I have thought for almost two weeks. Is there any different ideas which can be use to solve this problem. Thank you very much.
The logo you are looking at is symmetric. For example, you could rotate it by 120 degrees and get the same pattern. If you take a look, many of the "errors" are not really errors. The same pattern appears in your image many times. It is called self-similarity.

You could do several things:


Change descriptors to avoid confusion between features that are similar in an image.
Instead of finding one match for keypoint, find 3 matches and test multiple combinations by fitting a transformation and checking which fits better.
Limit the transformation by rotation angle, mirror, etc. For example, angle must not be larger than 60 degrees