視差とは、観測位置(視点)の違いによって見かけの物体位置がずれる現象のことです。コンピュータビジョン領域では、左右のステレオカメラや移動するカメラで得られた複数の画像から画像のズレ(視差)を計算し、三角測量の原理を用いて距離や立体形状を推定する奥行き推定や3D復元技術の基礎として重要です。
視差とは
視差とは、異なる2つ以上の視点から同じ対象物を観察したときに生じる、見かけの位置のずれのことです。
詳しく解説
人間が左右の目で物体の奥行きを感じ取れるのと同様に、AIやコンピュータビジョンの分野でも視差は重要な役割を果たします。具体的には、2台のカメラを並べたステレオカメラや、1台のカメラを移動させて撮影した複数画像を用いて、対応する画素のズレ(視差)を検出します。この視差の大きさとカメラ間の距離(基線長)から、三角測量の原理を利用して対象物までの距離を計算します。これにより、平面的な2D画像から3D空間の奥行き推定や空間構造の3D復元が可能となります。
具体例・使われ方
自動運転車の前方センシングにおける歩行者や障害物までの距離計測、AR(拡張現実)デバイスにおける周囲環境の認識、産業用ロボットのアームによる物体把握、ロボット掃除機の移動制御に使われる視覚的SLAMなどに広く活用されています。
似た用語との違い
視差は「2つの視点間の見かけの位置ズレ」という物理的・幾何学的な現象自体を指します。一方、カメラの焦点のボケ具合から距離を推測する手法や、単一の静止画像から深層学習等を用いて画素ごとの深さを推測する単眼奥行き推定は、視差の検出を直接行わない手法である点が異なります。
注意点
視差に基づく距離計算は、特徴のない平坦な壁や繰り返しの模様、透明・鏡面体など、画像間の対応点を特定しづらい対象では精度が低下します。また、視点間の距離が短すぎると遠距離の物体に対する視差が極めて小さくなり、測定誤差が大きくなる限界があります。