第15章 「空間情報の取得と利用」

第15章
「空間情報の取得と利用」
3次元空間と、それをカメラでとらえた2次元画像平面との関係の
記述のしかたや、その関係を考慮したさまざまな処理について解
説する。
カメラを使った空間情報の利用
—  AR(Augmented Reality, 拡張現実感)を使えば、カメラで撮影した実
写映像にCG映像を重畳表示し、CG映像とインタラクションすることが
可能になる。
—  ゲーム機のインタフェースデバイスKinectは人体形状を測定し、そこか
ら推定した動作をゲーム機に伝えている。
—  これらを可能にしているカメラによる空間情報の取得技術を学ぶ。
ソニー SmartAR
http://www.sony.co.jp/SonyInfo/News/Press/201105/11-058/
マイクロソフト Kinect
http://www.xbox.com/ja-JP/kinect
標準ピンホールカメラ
—  カメラは3次元空間を2次元平面に投影する装置である。
現実のカメラを精度良く近似するモデルとしてピンホールカ
メラによる透視投影モデルが利用される。
—  焦点距離1の標準ピンホールカメラによって、カメラ中心の
3次元座標(X,Y,Z)が2次元座標(x,y)に投影されるとき、
x=X/Z、y=Y/Zの関係がある。これを同次座標を用いて表現
すると次式のようになる。
! x $ ! 1 0 0 $! X $
#
& #
&#
&
# y & ' # 0 1 0 &# Y &
# 1 & # 0 0 1 &# Z &
%
"
% "
%"
—  この2次元座標を
正規化画像座標とよぶ。
正規化画像座標
カメラの内部パラメータ
—  実際のカメラをピンホールカメラでモデル化する場合、焦点
距離、画素サイズ、画像中心を導入する。これらは、カメラ
固有のパラメータという意味で、内部パラメータとよぶ。
—  焦点距離をf、画素サイズをδu,δv,、画像中心を(cu,cv)とする
と、3次元座標から2次元座標(画像座標)への変換は次式
のようになる。
! u $ ! f / !u
#
& #
# v &'# 0
# 1 & ## 0
"
% "
0
f / !v
0
cu $! X
&#
cv &# Y
&
1 &%#" Z
$
&
&
&
%
—  焦点距離:投影中心と画像面の距離
—  画素サイズ:画素の縦横の長さ
—  画像中心:光軸と画像座標の交点
(X,Y,Z)
画像中心
焦点距離
3次元ワールド座標から
画像座標への投影
—  3次元ワールド座標(Xw,Yw,Zw)とカメラ中心の3次元座標
(X,Y,Z)の関係は[X,Y,Z]t=R[Xw,Yw,Zw] t+tである。ここでRは
回転行列、tは並進ベクトル、tは転置を意味する。したがっ
て、(Xw,Yw,Zw)から画像座標への投影は次式になる。Aを内
部パラメータ行列とよぶ。
! u $ ! f / !u
#
& #
# v &'# 0
# 1 & ## 0
"
% "
0
f / !v
0
cu $!# ! XW
& #
cv &# R # YW
&# #
1 &%# #" ZW
"
!
$ $
#
& &
#
& + t & ' A( R t )#
&& &
#
&
#
% %
"
XW $
&
YW &
&
ZW &
1 &%
—  この式を展開し、通常の等号で表すと次のようになる。
f
"u
f
v=
"v
u=
r11 X w + r12Yw + r13 Z w + t1
+ cu
r31 X w + r32Yw + r33 Z w + t 3
r21 X w + r22Yw + r33 Z w + t 2
+ cv
r31 X w + r32Yw + r33 Z w + t 3
透視投影行列
—  画像座標、3次元ワールド座標に次の同次座標を用いる。
! u $
#
&
!
m = # v &,
# 1 &
"
%
!
#
#
X! w = #
#
#
"
Xw $
&
Yw &
&
Zw &
1 &%
—  3次元ワールド座標から画像座標への投影は次式になる
m˜ " A( R | t ) X˜ w
・・・(15.11)
—  この式におけるA(R|t)の部分は3×4行列になり、透視投影
行列と呼ぶ。
!
カメラキャリブレーション
—  位置が既知の空間点とその画像上への投影点を用いて
(次ページ参照)、透視投影行列(式(15.11)のA(R|t)に
該当する3×4行列)やカメラの内部パラメータ(式(15.1
1)のA)、外部パラメータ(式(15.11)のR、t)を求めること
をカメラキャリブレーションとよぶ。
—  このような方法で3次元座標と画像座標を関係づける式を
明らかにし、これを用いることで、画像情報を空間情報に変
換することが可能になる。
キャリブレーションパターン
—  下図のようなキャリブレーションパターンを用いる。左図の
白丸の中心位置や、右図の四角のコーナー位置を、既知
の3次元座標として用いる。これをカメラで撮影し、画像処
理で、白丸の中心座標や四角のコーナー座標を計算する。
これで、3次元座標と2次元の画像座標を対応づける。
ステレオビジョン
空間位置の計算
—  カメラキャリブレーションを行うと、3次元座標(X,Y,Z)を画像座標
(u,v)に変換する透視投影行列が決まる。
—  画像上の位置(u,v)が与えられた時、(X,Y,Z)は一本の直線に拘
束される。この直線は、(u,v)に対応する画像センサの位置とカメ
ラの投影中心を結ぶ直線で、視線とよぶ。図15.3
—  3次元空間の一点を、カメラの位置を変えて撮影した2枚の画像
があり、画像中での位置がわかっておれば、その視線の交点と
して3次元座標を求めることができる。図15.4
—  結局、2つの透視投影行列の係数、対応点の2つの座標から3
次元座標を計算することができる。
平行ステレオ
—  前ページは、一般的なステレオカメラを説明したが、より簡
単な平行ステレオがよく利用される。これは、内部パラメー
タが等しい2台のカメラを、互いの光軸が平行で画像面が
ずれないように設置したものである。
—  平行ステレオでは、被写体が無限遠
にあれば、2画像におけるそれらの
像は同じ位置になる。被写体が近づ
くにつれ、像の位置がずれる。ずれ
量を視差とよび、被写体までの距離
に反比例する。
平行ステレオの計算式
—  平行ステレオでは、3次元位置を求める計算が簡単になる。
—  f をカメラの焦点距離、bをカメラ間の距離(基線長とよぶ)、
2台のカメラによる観察位置を(u,v)、(u’,v’)とするとき、3次
元空間の位置(X,Y,Z)は次のようになる。(u軸とu’軸が同一
直線上で同じ向きの場合)
bu
bv
bf
X=
,Y=
,Z=
u " u#
u " u#
u " u#
ステレオマッチング
—  同一被写体を観察した2画像から、対応する2点を探索する処理
をステレオマッチングとよぶ。
—  一方の画像の点(u,v)に対して、他方の対応点は直線に拘束さ
れる。この直線は、点(u,v)に対する視線を他方のカメラに投影し
た像である。この直線をエピポーラ線とよぶ。
—  平行ステレオの場合、点(u,v)に対するエピポーラ線は同じ高さ
(v)にある水平線になる。
ステレオマッチング・アルゴリズム
—  ステレオマチングアルゴリズムの一例
—  一方の画像で観察位置を中心とする小領域Aを設定する。
—  エピポーラ線上でAと最も類似度が高い領域Bを求める。
—  AとBの中心位置が対応すると判断する。
—  2眼ステレオの拡張として多眼ステレオが利用される。
A
B
アクティブステレオ
—  ステレオビジョンは、2台(または多数)のカメラを用いて距
離情報を得る手法である。1台のカメラに代えて光パターン
を投影する手法をアクティブステレオとよぶ。
—  光パターンにはさまざまな工夫があり、スポット光投影法、
スリット光投影法(光切断法)、コード化パターンの投影法
が知られてる。
モーション推定と形状復元
(Shape from Motion: SfM)
ステレオビジョンとSfMの違い
—  ステレオビジョンは、カメラ間の位置関係が既知の条件で、
シーンの空間位置を計算するもの。
—  モーション推定と形状復元(SfM)では、カメラ間の位置関
係が未知の条件で、シーンの空間位置を計算する。モー
ションとはカメラ間の位置関係で、回転と平行移動を意味す
る。
—  まず、同じ被写体を撮影した2枚の画像を用いて、それらを撮
影したカメラ間の位置関係(回転と平行移動)を計算し、
—  その後、ステレオビジョンの考え方を用いて、シーンの空間位
置を計算する。
基本行列
—  3次元空間の点を、位置関係がR、t=(tx,ty,tz)で表される2つ
のカメラ観察し、その正規化画像座標をx=(x,y), x’=(x’,y’)と
すると、これらの間には下式の関係がある。ここで3×3の
行列Eを基本行列と呼ぶ。
# 0
%
E = % tz
% "t
$ y
"t z
0
tx
ty &
(
"t x ( R
0 ('
# x&
% (
( x) y) 1)E% y ( = 0
% (
$ 1'
基礎行列とエピポーラ拘束
—  画像座標(u,v)と正規化画像座標(x,y) 、カメラの内部パラ
メータは下式の関係がある。
" u% " f /) u
$ ' $
$v ' ( $ 0
$ ' $
# 1& # 0
0
c u %" x %
'$ '
f /) u c u '$ y '
'$ '
0
1 &# 1 &
—  これと前ページの関係から、対応する画像座標(u,v), (u’,v’)
の間に下式の関係を導くことができる。ここでFは3×3の行
列で基礎行列とよび、この関係をエピポーラ拘束という。
!
# u&
% (
(u" v" 1)F% v ( = 0
% (
$ 1'
モーションと形状の推定
—  エピポーラ拘束を使ってカメラ間のモーションを推定する。
—  基礎行列Fの実質的な未知数は8個。1組の対応点から一
つの式を得るので、8組以上の対応点からFを求める。
—  カメラの内部パラメータを用いて、FからEを求める。Eを歪
対称行列と直交行列の積に分解することで、カメラ間の位
置関係を示すR、tを求める。
—  カメラ間の位置関係が得られれば、ステレオビジョンの手法
を用いて、被写体の位置情報を得ることができる。