Recently I added calculation of initial parameters (reverse affine transformation using 3 points). Now algorithm works with parameters which are near to optimum. As I expected, optimization process (gradient descent method) became faster (in previous solution, initial parameters was zeros).
But I still didn't solve problems with my LMA implementation. LMA can't improve initial parameters. It seems to me that I made some difficult to detect mistakes.
I think that I should take a break from optimization and implement simplified version of SURF. I hope that I'll have some code for midterm.
What I have today (in all examples I used gradient descent):
Example #1
Initial images
Result after initial orientation (using 3 points)
(white dots are feature points, white lines - gaps between similar points)
Result after 900 iterations
Example #2
Initial images
Result after initial orientation (using 3 points)
Result
Example #3
Initial images
Result
So, gradient descent is Ok for 2 images. Of course, it's very slow, nevertheless it works. But I don't know what happens if I apply this approach to several images (more than 2). There is only one way to check out - make implementation. If I have a time, I'll try to code this.
No comments:
Post a Comment