スライド 1

Relative Orientation
●2台のステレオカメラ、或いは運動
量の大きい移動カメラ(移動物体)
●2枚の画像(左、右画像、或いは、
移動前、移動後の画像)
●3D空間中の複数個の静止点(或いは同じ
剛体上の点)の像の対応付けがとれてい
る(3次元座標は未知)
●カメラの内部パラメータ(焦点距離、画
像中心の位置など)が既知
Relative Orientation
問題:
2台のカメラ間の回転と平行移動を推定する
或いは:
1.右カメラ座標系で記述した、左カメラの
原点から右カメラの原点までのベクトル
ベースライン b
2.左カメラ座標系から右カメラ座標系への
回転変換行列 R
投影変換におけるスケールの曖昧性
1.画像上の点の像の位置から、その点への視線
の方向がわかる。
⇒
同じ方向の視線上の点であれば、画像上の
像は同じ
左カメラ
右カメラ1
右カメラ2
Relative Orientation問題におけるベー
スラインの長さを決定できない
● もし、3次元空間内の点の座標(距離)と ベースライ
ン長を同じ倍率で拡大(縮小)して も、画像上に写る点
の位置は変化しない。
● よって、画像上の点の位置のみから、ベースライン長を
決定できない
● ベースラインの方向が決定できる。つまり、この問題に
おいて、ベースラインを単位ベクトルと見なすべき
● 推定するパラメータの数
=ベースラインの方向(2)+回転パラメータ(3)
=5
Coplanarity Condition
共通平面条件
空間の中の点と、左、右
カメラの光学中心の3点
が1枚の平面を決定する。
したがって、
rl ' rr
b
が同じ平面上にある。
rl '
ここで、
b
rr
rl '  Rrl
Coplanarity Condition
共通平面条件
rl ' rr b が同じ平面にあるので、 bがこの平面の法線 N と垂直
する。したがって、次の式が成り立つ。
bN  0
一方、平面の法線は、 r ' r と垂直するので、その2個のベクト
l
r
ルの外積で計算できる。
N  rl 'rr
したがって、共通平面条件は下記の方程式で表される。
b  (rl 'rr )  0
(1)
Relative Orientation問題の近似解
Thompson, E.H. “A Retional Algebraic Formulation of the Problem of
Relative Orientation”, Photogrammetric Record, Vol.3, No.14, 152159, October, 1959.
という文献によると、8対の対応点ペアがあれば、b と R の近似解
が求めることができる。
ただし、
● これは最小2乗法を使った解法ではないので、
多くの対応点対があっても、有効に利用できない。
● 対応点が8対より少なければ、この方法を利用できない。
A
rl '
drl '
rl ' '
Ol
rl '
l
rl ' '  rl 'drl '
rl 'rr
drl ' 
rl ' l
rl 'rr
共通平面条件と垂直視差
● 画像ノイズや量子化による誤差の影響により、左右カメ
ラの視線は同じ平面に入らない。
● この場合、左右カメラの視線はエピポラ線とは交差しない
r ' r ''
このとき、垂直視差=視線
と l 誤差のない(本当の)
l
視線との間の角 l は左視線の推定誤差として用いるべき
●従って、Relative orientation 問題は,左右視線の方向の2乗垂
直視差を最小にする左右カメラ間の回転と平行のパラメータを
推定問題として定義できる。
 
n
i 1
2
l ,i

 r2,i  min
(2)
共通平面条件の式と左右視線の垂直視差との間の関係
しかし、垂直視差の式を直接導出するのは困難ばかりでなく、
式が複雑すぎるため、方程式を解くことが事実上不可能になって
しまう。
ここで、垂直視差(式(2))と共通平面条件の式(式(1))との間
の関係を明らかにする。
共通平面条件の方程式と
左右視線間の距離
計測誤差などにより、左右カメラの視線は空間上に交差しない。そ
の場合、互いに最も接近している点が存在する。
 rl 'rr 
rl '
rl '
b
rr
rr
しかも、その2点(A, B)と左右の視線と垂直する。
A、Bが左視線の延長線上にあるので、下記の式が存在する
Ol A  rl '
Or B  rr
ABが左右視線とも垂直する
B
ので、下記の式が成立つ
 rl 'rr  r
r
rl ' A
Ol
rl '
b
rr
AB   rl 'rr 
Or
Ol A  AB  Ol Or  Or B
られる
が成立つので、下記の式が得
rl ' rl 'rr   b  rr
B
 rl 'rr  r
r
rl ' A
Ol
rl '
b
rr
Or
rl ' rl 'rr   b  rr
この式の両側に
(3)
rl 'rr との内積をとると、下記の式が得られる
2
(4)
 rl 'rr  b  rl 'rr 
同様に、式(2)の両側に
式が得られる
rr  rl 'rr  との内積をとると、下記の
rl 'rr  rl 'rr   b  rr  rl 'rr 
任意のベクトルA,B,Cに対して、下記の式が成立つので、
A  B  C  A  B C
よって、下記の式が得られる。
 rl 'rr  b  rr   rl 'rr 
2
(5)
同様に、式(2)の両側に
式が得られる
rl 'rl 'rr  との内積をとると、下記の
 rl 'rr  b  rl '  rl 'rr 
2
(6)
式(3)により、左右の視線間の距離は下記の式で表される
b  rl 'rr 
d   rl 'rr 
rl 'rr
(7)
したがって、

b  rr   rl 'rr 

(8)

b  rl '  rl 'rr 

(9)
rl 'rr
rl 'rr
2
2
左視線とエピポラ面との間の角度を l とし、Aとエピポラ面との間
の有方向の距離を drl ' とすると、次の式が成立つ
rl 'rr
drl '  
rl ' l
rl 'rr
A
rl '
rl ' '
Ol
rl '
l
rl ' '  rl 'drl '
右視線とエピポラ面との間の角度を r とし、Bとエピポラ面との間
の有方向の距離を dr とすると、次の式が成立つ
r
rl 'rr
drr  
rr r
rl 'rr
したがって、左右視線間の距離 (d=|AB|) は下記のように表すことが
kできる。
d  drl 'drr   rl ' l   rr r
t  b  (rl 'rr )
と定義すると、式(7)により、
| t | rl 'rr d
(10)
したがって、 t の分散と d の分散との間の関係を下記の式で表せる
  rl 'rr 
2
2
t
あるいは

2
d
  rl 'rr  rl '    rr  r2
2
t
2
2
2
2
l
2
2

(11)
ここで、  l2 と  r2 は、l の r とのそれぞれの分散であり、事前に
推定しておくことができる。(理由は後述)
式(11)に式(8)と(9)を代入すると、

b  rr   rl 'rr 
rl 'rr
(8)
2

b  rl '  rl 'rr 

rl 'rr
(9)
2

  rl 'rr  rl '    rr  r2
2
t
2
b  rr  rl 'rr 
2
 t2 
2
2
2
l
2
2

(10)
rl '   b  rl '  rl 'rr  rr  r2
2
2
2
l
rl 'rr
2
2
(11)
式(11)の意味は下記のように解釈できる:
b  rr  rl 'rr 
2
 t2 
b  rr  rl 'rr 
rl 'rr
rl '
(11)
2
2
2
2
2
2
l
rl 'rr
2
kl 
rl '   b  rl '  rl 'rr  rr  r2
2
kr 
b  rl ' rl 'rr 2 rr
とすると、 t 2 の値の中で、l に占める割合は
rl 'rr
2
2
kl /  で、
2
l
2
t
r に占める割合は、 k  2 /  2 である。従って、下記の式が成
r r
t
り立つ。
2

k l l 2
2
 kll  2 t
t


2
k

k rl2  r r t 2

 r2
(12)
従って、下記の式が得られる。
2
2



l2  r2  l 2 r t 2
t
(13)
 l2   r2 を定数と仮定すると、式(2)は下記のように表すことがで
きる。
 
n
2
l ,i
i 1
 
2
r ,i
   w b  r
N
i 0
i
'rr ,i   min
2
l ,i
(14)
2
wi 
b  r  r
r ,i
rl ,i 'rr ,i  02
2








'

r
r
'


b

r
'

r
'

r
r

l ,i
r ,i
l ,i
l ,i
l ,i
r ,i
r ,i
r ,i
2
      定数
2
0
2
l ,i
2
r ,i
2
2
l ,i
2
2
(15)
左右視線の垂直視差の分散
左(右)画像上の画像点の位置の平均誤差(一般的に0.5画素)と
左右視線とエピポラ面との角度の平均誤差との間には下記の関係
が成立つ
il  kll
ir  krr
左右画像平面の法線ベクトルを
り立つ。

0 

0 
n

R
 l
 

1

0 

 n r  0 
 

1

n l と n r とすると、下記の式が成
すると、下記の式が成り立つ。

rl 'rr  rl 'rr

 n l n l
rl 'rr  rl 'rr

kl 
rl '

rl 'rr  rl 'rr

 n r n r
rl 'rr  rl 'rr

kr 
rr
0.25
  2
kl
2
l
0.25
  2
kr
2
r
最小2乗法によるベースラインの
推定
回転成分が既知或いは既に推定された場合、平行移動成分(ベー
スラインb)は最小2乗法で簡単に推定できる。
式(14)により、共通平面の拘束による方程式は下記のようになる。
 w b  r
N
i 0
i
l ,i
'rr ,i   min
2
ci  rl ,i 'rr ,i とすると、式(14)は下記のようになる。
N
 w b  c 
i 0
2
i
i
N

T
T 
 b   wi ci ci b  min
 i 0

ベースラインの長さが1なので、下記の方程式が成り立つ。
b  b  bT b  1
(15)
すると、ベースラインの推定問題は、式15が成り立つ前提の下で、
下記の2次形式の最小値を求める問題となる。
f (b)  bT Qb
ここで、
N
Q   wi ci cTi
i 0
すると、b は Q の最小固有値と対応する固有ベクトルである。
繰り返しによる精度の向上
× 式14の問題の最小2乗問題を解く式は存在しない。
◎ しかし、R と b の近似解があったとき、 Rとbの微小変化による
式14の変化量が計算できる。
◎ このことを利用して、式14の値を減少するように、R と bを少し
ずつ調整することによって、解の精度を向上することができる。
 w b  Rr
N
i 0
i
l ,i
 rr ,i   min
2
bの微小変化
b とすると、変化した後のベースラインは
b  b となる。bの長さ(=1)が定数なので、b は b と垂直でな
bの微小変化量を
いといけない。すると下記の式が成り立つ。
b b  0
微小回転
Rの微小変化による微小回転を ω とする。ここで、微小回転の角
度は ω で、微小回転の回転軸は ω の方向ベクトル、すなわち
ω
ω
とすると、微小回転による左画面の視線ベクトルは下記のように計
算できる。
 ω

rl ' '  cos ω rl ' sin ω 
 rl '   (1  cos ω )(ω  rl ' )rl '
 ω

ω は微小であることから、上記の式を次のように近似できる。
rl ' '  rl 'ω  rl '
式14の変化量
Rとbの微小変化による共通平面条件式の変化量を
変化したの値は次のように計算できる。
t とすると、
t  t  b  b  rl 'ω  rl ' rr 
ω 、b ともに微小であることにより、上記の式を次のように近似
できる。
t  t  b  rl 'rr   rl 'rr  b  rr  b ω  rl '
t  b  rl 'rr  c  rl 'rr d  rl 'rr  b
とすると、
t  t  t  c  b  d  ω
すると、式14は次のように表現できる。
n
E   wi ti  ci  b  d i  ω 
2
i 1
b は次の条件
b b  0
を満たさないといけないので、ラグランジュ不定乗数法によると、次
の関数E’の最小値を求めればよい。
E' (b, ω,  )  E  2 b  b
これは、E’の b, ω,  に関数導関数を0にすることにより解くこ
とができ、その解は次の線形方程式を解くことにより得られる。
C
 T
F
 bT

ここで、
F
D
0T
c
b  b 
 
 
0  ω    d 
 



0   
0