1

I'm trying to "extend" the method described in the paper "Least-Squares Estimation of Transformation Parameters Between Two Point Patterns", by Shinji Umeyama (http://www.stanford.edu/class/cs273/refs/umeyama.pdf). What I need is to have a scaling matrix instead of a scaling scalar.

If I understand correctly, all I need can be generalized to: calculate the $D$ diagonal matrix that minimizes:

$$ \lVert A+DB \rVert^2 $$

Where A and B are rectangular matrices. That is the (55) formula fo the paper, where the second term is 0.

Can anybody help me find a formula or an algorithm?

Thank you,

Ignazio

neclepsio
  • 113

1 Answers1

1

This is just a matter of grinding through the details:

If $D$ is diagonal, it can be written as $D = \sum_i x_i E_{ii}$.

Let $\phi(x) = {1 \over 2} \|A+ \sum_i x_i E_{ii} B \|^2$. Then \begin{eqnarray} \phi(x) &=& {1 \over 2} \|A\|^2 + {1 \over 2} \|\sum_i x_i E_{ii} B\|^2 + \operatorname{tr} (A^T \sum_i x_i E_{ii} B) \\ &=& {1 \over 2} \|A\|^2 + {1 \over 2} \sum_i \sum_j x_i x_j \operatorname{tr} (B^T E_{ii} E_{jj} B) + \sum_i x_i \operatorname{tr} (A^T E_{ii} B) \\ &=& {1 \over 2} \|A\|^2 + {1 \over 2} \sum_i x_i^2 [B B^T]_{ii} + \sum_i x_i [AB^T]_{ii} \end{eqnarray} which is a convex quadratic and straightforward to minimize. (It is easy to check that if $[B B^T]_{ii} = 0$, then $[AB^T]_{ii} = 0$).

The (theoretical) solution is $x_i = \begin{cases} 0, & [B B^T]_{ii} =0 \\ -{ [AB^T]_{ii} \over [B B^T]_{ii} }, &\text{otherwise} \end{cases}$.

copper.hat
  • 172,524