• 締切済み

楕円の正規化条件

今、楕円の最小二乗法のプログラムを書いているのですが、正規化条件の扱いがよくわかりません。 単純に u = (A B C D E F)         (1) ξ = (x^ 2 2xy y^2 2x 2y 1)    (2) で、 行列 M = (1 / N ) Σ ξ・ξt    (3)  ξt:ξの転値    N:Σの数 の最小固有値に対する固有ベクトルをuとして採用するという計算をしているのですが、放物線になってしまいました。 標準的には A^2 + B^2 + C^2 + D^2 + E^2 + F^2 = 1  (4) が正規化条件として使われる、とあるのですが、これをどう扱っていいかわからないのです。 この論文を参考にしています http://www.iim.cs.tut.ac.jp/~kanatani/papers/newlsellipse.pdf

みんなの回答

  • ramayana
  • ベストアンサー率75% (215/285)
回答No.4

「(N^-1)Mu = λu の最小固有値に対する固有ベクトルを求めれば良いのでしょうか?」 N が正則行列(逆行列を持つ行列)と限らないので、(N^(-1))Mu = λu という形への変形は不可能と考えるべきでしょう。引用論文の 2 ページに (3) から (8) まで 6 種類の正規化の例が挙げられていますが、 (5) を除く 5 種類では、 N が非正則行列(逆行列を持たない行列)になります。ANo.3 の N も非正則行列です。 それより、次のようにして普通の固有値の計算に帰着させることができます。まず、M が正則行列であることを仮定します。観測データには誤差が付きものですが、観測データに誤差があれば、M は必ず正則行列になります。 すると、引用論文 2 ページの (15) 式 Mu = λNu は、 M^(-1)N u = (1/λ)u と変形できます。そこで、行列 M^(-1)N の絶対値最大の固有値に対応する固有ベクトルを計算すれば、それが u になるのです。 なお、1/λ は、M^(-1)N の固有値です。もともと絶対値が最小のλを求めることになっていたので、その逆数である 1/λ に関しては、絶対値が最大のものを求めることになります。

  • ramayana
  • ベストアンサー率75% (215/285)
回答No.3

「(8)式を条件とした場合、重み行列Nはどうなるのでしょうか?」 添付図の通り。このNが (A B C D E F)N(A B C D E F)^t = AC – B^2 を満たす対称行列であることを確認してください。((A B C D E F)^t は、(A B C D E F) の転置)

wrusagi
質問者

補足

ありがとうございます。 重み行列を使う場合は、 Mu = λNu (15) の最小固有値に対する固有ベクトルを求める、とのことですので (N^-1)Mu = λu の最小固有値に対する固有ベクトルを求めれば良いのでしょうか?

  • ramayana
  • ベストアンサー率75% (215/285)
回答No.2

「M の最小固有値に対する固有ベクトルをuとして採用する」という方法では、   Ax^2+2Bxy+Cy^2+2(Dx+Ey)+F=0 で表される曲線が楕円であるという条件、すなわち、Ax^2+2Bxy+Cy^2 の部分が正定値2次形式であるという条件、さらに言い換えれば、AC-B^2>0 であるという条件を、どこにも使っていません。だから、推計結果が放物線や双曲線になっても何の不思議もありません。   A^2 + B^2 + C^2 + D^2 + E^2 + F^2 = 1 の条件の代わりに、引用論文の(8)式   AC-B^2 = 1 を条件とすれば、楕円だけが推計されます。 なお、A^2 + B^2 + C^2 + D^2 + E^2 + F^2 = 1 をどう扱っていいか分からない、ということですが、これは、引用論文の「重み行列N」を単位行列にする、ということです。ご質問の計算は、まさに、N を単位行列にとしておられます。

wrusagi
質問者

補足

詳しくありがとうございます。 (8)式を条件とした場合、重み行列Nはどうなるのでしょうか?

  • alice_44
  • ベストアンサー率44% (2109/4759)
回答No.1

その解法は、よく知らないが、 固有ベクトルを解にするのなら、 長さを決める規則は必要でしょう?

関連するQ&A