1,,.,.. Maximum Likelihood Estimation for Geometric Fitting Yasuyuki Sugaya 1 Geometric fitting, the problem which estimates a geometric model of a scene from extracted image data, is one of the most fundamental problems of computer vision. Bundle adjustment and maxium likelihood estimation are well used for geometric fitting. In this paper, we present a maximum likelihood estimation to the data which are constrained linear in the model parameters. We describe the geometric meanings of maximum likelihood and its reliability evaluation. We also show geometric fitting examples. 1.,.,,, 1 Department of Information and Computer Sciences, Toyohasi University of Technology.,., 8). 2. x, = 1,..., N u. F (x; u) = 0 (1) F (x ; u) 0, = 1,..., N (2) u., 2,. (1) F (x; u) x, u,. (1). (ξ(x), u) = 0 (3), a, b (a, b). ξ(x) ξ i(x) (1) u i x. (1) x, 1, 1 u., (3) u., u., u = 1.,. (3) (2), u. 3. (ξ(x ), u) 0, = 1,..., N () () u,. N (ξ, u) 2 = (u, ξ ξ u) = (u, M LS u) (5) 1
, ( ξ/) ξ(x), ( ξ/) x = x 1,. ξ ξ ( ξ, u) = 0. M LS ξ ξ (6) u,, u M LS 3).,.. ξ x ξ = ξ(x),, 1. J = (ξ ξ, V [ξ ] 1 (ξ ξ )) (7) ( ξ, u) = 0, = 1,..., N (8) ξ, u., ξ ξ. x x 0, V [x ], ξ = ξ(x ) V [ξ ]. ( ) ( ξ ξ V [ξ ] = V [x ] (9). (9) ξ, x x x, x 2 ξ.. ξ M, ξ M N, (u, ξ) = 0.,, 1. (8) ξ,,. ξ ξ = ξ ξ (10), ξ., (7). J = ( ξ, V [ξ ] 1 ξ ) (11) (8). (ξ ξ, u) = 0 (12) (8), λ, ( ξ, V [ξ ] 1 ξ ) λ ((ξ ξ, u)) (13), ξ 0,. (1),. 2V [ξ ] 1 ξ λ u = 0 (1) ξ = λ 2 V [ξ ]u (15) (12), λ. λ = 2(u, ξ ) (u, V [ξ ]u) (16) 1 ξ, (9) V [ξ ]. (7) V [ξ ] 1. 2
(15) (11),. J = 1 λ 2 (V [ξ ]u, V [ξ ] 1 V [ξ ]u) = 1 λ 2 (u, V [ξ ]u) (16), u. (u, ξ J = ) 2 (u, V [ξ ]u) 5. (17) (18) ( x, y ) 2 6.,,,. (18), Chojnacki 2) FNS, Leedan 7) HEIV, 9). Chojnacki FNS. (18) u,. uj = = 2(u, ξ )ξ (u, V [ξ ]u) 2ξ (ξ u) (u, V [ξ ]u) = 2(M L)u,. ξ M ξ (u, V [ξ ]u), L 2(u, ξ )V [ξ ]u (u, V [ξ ]u) 2 2(u, ξ )V [ξ ]u (u, V [ξ ]u) 2 (19) (u, ξ )V [ξ ] (u, V [ξ ]u) 2 (20) (18) (19) 0 u., u, u = 1. Chojnacki FNS. ( 1 ) u. ( 2 ), λ u. Xu = λu, X M L (21) ( 3 ) u u u., u u 2. 1 : (x, y ), = 1,..., N 2. ξ(x, y), u 1, (22), (3). Ax + By + Cf 0 = 0 (22) ξ(x, y) = (x y f 0, u = (A B C (23) x, y, = 1,..., N 0, σ, x = (x y f 0 V [x ], ( ξ/), V [x ] = σ 2 0 0 0 σ 2 0, ( ) ξ = 0 0 0 ξ,. 1 0 0 V [ξ ] = σ 2 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 (2) σ 2 V 0 [ξ ] (25), V 0 [ξ ]. (18) σ 2 1 f 0.,,. 3
3 ( x, y ),, (20) V [ξ ] V 0[ξ ]. 2 : (x, y ), = 1,..., N Ax 2 + 2Bxy + Cy 2 + 2(Dx + Ey)f 0 + F f 2 0 = 0 (26) 3. ξ(x, y), u ξ(x, y) = (x 2 2xy y 2 2xf 0 2yf 0 f 2 0, u = (A B C D E F (27), (26), (3). x, y, = 1,..., N 0, σ, ( ξ/), ( ) 2x 2y 0 2f 0 0 0 ξ = 0 2x 2y 0 2f 0 0 0 0 0 0 0 0 ξ,. x 2 x y 0 x 0 0 x y x 2 + y 2 x y y x 0 V [ξ ] = σ 2 0 x y y 2 0 y 0 x y 0 f0 2 0 0 σ 2 V 0 [ξ ] (29) 0 x y 0 f0 2 0 0 0 0 0 0 0 3 : 2, 1 (x, y) 2 (x, y ), (28). ( x y f 0, F x y f 0 ) = 0 (30) F 2,. 2 N (x, y ), (x, y ), = 1,..., N. ξ(x, y), u ξ(x, y, x, y ) = (xx xy xf 0 yx yy yf 0 f 0 x f 0 y f 2 0, u = (F 11 F 12 F 13 F 21 F 22 F 23 F 31 F 32 F 33 (31), (30), (3). (x, y ), (x, y ), = 1,..., N x y 0, σ, ( ξ/), x y f 0 0 0 0 0 0 0 ( ) ξ 0 0 0 x y f 0 0 0 0 = x 0 0 y 0 0 f 0 0 0 ξ,. 0 x 0 0 y 0 0 f 0 0 V [ξ ] = σ 2 x 2 + x 2 x y f 0 x x y 0 0 f 0 x 0 0 x y x 2 + y 2 f 0 y 0 x y 0 0 f 0 x 0 f 0x f 0y f0 2 0 0 0 0 0 0 x y 0 0 y 2 + x 2 x y f 0 x f 0 y 0 0 0 x y 0 x y y 2 + y 2 f 0 y 0 f 0 y 0 0 0 0 f 0 x f 0 y f0 2 0 0 0 f 0x 0 0 f 0y 0 0 f0 2 0 0 0 f 0 x 0 0 f 0 y 0 0 f0 2 0 σ 2 V 0[ξ ] 0 0 0 0 0 0 0 0 0 (32) (33)
7. x ( x, y ) ( x, y ) ξ,., (x, y )., ξ., x x 0, V [x ], x., (ξ( x ), u) = 0 (3), E = (x x, V [x ] 1 (x x )) (35) x, u. x x = x x (36), x., (35). E = ( x, V [x ] 1 x ) (37) (3). (ξ(x x ), u) = 0 (38) ξ = ξ(x ), ξ(x x ) = ξ ( ξ/) x +, 1 x 2,. ( ) ξ ( x, u) = (ξ, u) (39) (9), ( ξ/) ξ(x) x = x. (38), λ, ( ) ) ( x, V [x ] 1 ξ x ) λ (( x, u) (ξ, u) ( ) = ( x, V [x ] 1 ξ ) (0) x ) λ (( x,, u) (ξ, u), x 0,. 2V [x ] 1 x λ ( ξ u = 0 (1) (1),. x = λ ( ) ξ 2 V [x ] u (39). (2) ( ) ( ) λ ξ ξ 2 ( V [x ] u, u) = (ξ, u) (3) (9), λ. λ = 2(u, ξ ) (u, V [ξ ]u) (2) (37),. E = 1 ( ) λ 2 ξ ( ξ (V [x ] u, = 1 ( ) ( λ 2 ξ ξ (u, V [x ] = λ 2 (u, V [ξ ]u) (), u. (u, ξ E = ) 2 (u, V [ξ ]u) u) u) (18)., x 1 ξ., FNS () (5) (6) 5
u. û, (36), (2), () x 1 ˆx. ˆx = x (u, ξ )V [x ] (u, V [ξ ]u) ( ξ u (7) (7) 1,, ). u O u u^ u 8. 5,.,. u, ū., u u ū 5. u u ū,. u = u (u, ū)u = P u u, P u I ūū (8) P u.,. V [u] = E[ u u ] = E[(P u u)(p u u ] (9), E[ ] u. (3) D = trv [u] = E[ u 2 ] = E[ P u u 2 ] (50) RMS,., u,, V [u],. ξ 0, V [ξ ], u 15),6). V [u] M 1, M N ξ ξ (ū, V [ ξ ]ū),. Chernov 1) (51) 1 KCR(Kantani-Cramer-Rao). u σ 0 u ū, O(σ ) (51). (50), K. D = 1 K P uu K (a) 2 (52) a=1, u (a) a., KCR RMS, RMS M 1. 9.,,,,. (51) 1 ξ, (37). M. 6
0.00 0.9 0.003 0.002 0.5 0.001 (a) 0 1 2 3 5 σ (b) (a) 0 1 2 3 σ (b) 6 (c), (a), (b) RMS, :FNS, :, :KCR, (c) σ = 1, (d) σ = 5. : 3x + 6y f 0 = 0, f 0 = 600.0 N, ( x, ȳ ), = 1,..., N 0, σ (x, y ), RMS KCR. N = 30, 6(a). 0, σ = 0,..., 5, 0.1, FNS. σ 1000, RMS 6(b). FNS RMS, RMS, KCR. 6(c), (d) σ = 1, 5 FNS., FNS., u = 1, (6) (18) 10). 5 : (0, 0), 200, 100 (d) 7 (c), (a), (b) RMS, :FNS, :, :KCR, (c) σ = 1, (d) σ = 3. N, ( x, ȳ ), = 1,..., N 0, σ (x, y ), RMS KCR. N = 10, 7(a). 0, σ = 0,..., 3, 0.1, FNS. σ 1000, RMS 7(b). FNS RMS, RMS, KCR. 7(c), (d) σ = 1, 3 FNS. RMS,, FNS (d) 7
情報処理学会研究報告 0. 0.3 0.2 0.1 0 (a) 1 2 3 σ 5 (b) (a) 図 8 直線当てはめの精度評価, (a) シミュレーションデータ, (b) RMS 誤差, 実線:FNS 法, 破線:最小二乗法, 点 線:KCR 下界 図 9 直線当てはめの精度評価, (a) シミュレーションデータ, (b) RMS 誤差, 実線:FNS 法, 破線:最小二乗法, 点 線:KCR 下界 とがわかる. また, 得られた解による楕円の描画結果を見ると, FNS 法の方が真の楕円に近 参 い楕円が得られていることがわかる. 0 ), = 1,..., N 例 6 基礎行列の精度評価: 異なる 2 画像間の N 組の対応点 (x, y ), (x 0, y に期待値 0, 標準偏差 σ の正規分布に従うノイズを付加したデータ (x, y ), 0 (x0, y ) (b) 考 文 献 1) Chernov, N. and Lesort, C.: Statistical efficiency of vurve fitting algrithms, Comput. Stat. Data Anal., 7-, pp.713 728 (200). 2) Chojnacki, M., Brooks, M. J., van den Hengel, A. and Gawley, D.: On the fitting on surfaces to data with covariances, IEEE Trans. Patt. Anal. Mach. Intell., Vol.22, No.11, pp.129 1303 (2000). 3) 金谷健一: これならわかる最適化数学 基礎原理から計算方法まで, 共立出版 (2005). ) 金谷健一, 菅谷保之: 幾何学的当てはめの厳密な最尤推定の統一的計算法, 情報処理学 会論文誌, コンピュータビジョンとイメージメディア, Vol.2, No.1, pp.53 62 (2009). 5) Kanatani, K.: Statisitical Optimization for Geometric Computation: Theory and Practice, Elsevier Science, Amsterdam, The Netherlands (1996); Dover, New York (2005). 6) 金谷健一: 最尤推定の最適性と KCR 下界, 情報処理学会研究報告, 2005-CVIM-156-18, pp.59 6 (2005). 7) Leedan, Y. and Meer, P.: Heteroscedastic regression in computrer vision: Problems with bilinear constraint, Int. J. Comput Vision, Vol.37, No.2, pp.127 150 (2000). 8) 岡谷貴之: バンドルアジャストメント, 情報処理学会研究報告, 2009-CVIM-167-37, pp.1 16 (2009). 9) 菅谷保之, 金谷健一: 基礎行列の高精度計算法とその性能比較, 情報処理学会研究報告, 2006-CVIM-153-22, pp.207 21 (2006). 10) 菅谷保之, 金谷健一: 画像の三次元理解のための最適化計算 [I] 直線当てはめ, 情報 処理学会誌, Vol.92, No.3, pp.229 233(2009). 11) 山田健人, 金澤 靖, 金谷健一, 菅谷保之: 2 画像からの 3 次元復元の最新アルゴリズ ム, 情報処理学会研究報告, 2009-CVIM-168-15, (2009). から 最尤推定によって基礎行列を計算し, その RMS 誤差と KCR 下界を比較する. 図 8(a) のシミュレーションデータに対して, 期待値 0, 標準偏差 σ = 0,..., 5, 刻み幅 0.1 の正規分布に従うノイズを付加し, FNS 法を用いて基礎行列を計算する. 各 σ に対して異な るノイズを付加して 1000 回の試行を行い, RMS 誤差を計算した結果が図 8(b) である. 実 線が FNS 法の RMS 誤差, 破線が最小二乗法の RMS 誤差, 点線が KCR 下界である. 最小 二乗法では, ノイズの増加に従って精度が低下するが, FNS 法では KCR 下界にほぼ一致す るような高精度な解が得られている. 図 9 は実画像から手動で 100 点の特徴点を抽出して, FNS 法により基礎行列をして, 山田 ら11) らの方法で 3 次元復元を行った結果である. 10. お わ り に 本稿では幾何学的当てはめの最尤推定法について解説した. コンピュータビジョンの分野 でよく現れる幾何学的当てはめの問題は, データとモデルパラメータが線形拘束条件で表さ れる場合が多く, 本稿ではこの場合についてのみ取り扱った. 本稿の内容は歴史的背景など には触れずに, 実際の問題ですぐに活用できることを目的として, 最尤推定法の具体的な計 算方法や推定値の信頼性評価について述べた. また, これらについて直線当てはめや楕円当 てはめなどの具体例を示した. 8 c 2009 Information Processing Society of Japan