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 *

*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*

*Example #2*

**Initial images**

**Result after initial orientation (using 3 points)**

**Result**

##
**Example #3**

**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