(57)【要約】【課題】水平設置の全方位カメラの全方位画像から姿勢を自動的に推定し、微小に傾いていても誤差が低減されるようにカメラパラメータを検出する。【解決手段】画像入力部１は、全方位カメラから全方位画像を取得する。特徴点抽出部２は、その全方位画像において１つ以上の特徴点を設定・抽出する。空間情報設定部３は、初期値として特徴点の実空間での仮定の位置情報を与える。特徴点当てはめ部４は、カメラパラメータと姿勢と該仮定の位置で得ることができる画像座標値と、全方位画像中の特徴点との当てはめ度合いを処理する。パラメータ補正部５は、当てはめにおいて全方位画像上の特徴点の座標値と該画像座標値の差分または誤差を計算し、その差分または誤差を許容値以下に低減するようにカメラパラメータや姿勢を補正し、パラメータ出力部６から出力する。【選択図】　図１
2004015766.tif 000002
【特許請求の範囲】
【請求項１】
全方位カメラで撮影した全方位画像から全方位カメラのパラメータ・姿勢を検出する方法であって、
撮影された全方位画像において１つ以上の特徴点を設定・抽出する過程と、
前記撮影された全方位画像において前記特徴点の表示座標値を求める過程と、
前記特徴点の実空間における位置を仮定する過程と、
前記仮定した位置と全方位カメラのカメラパラメータおよび姿勢情報とから、前記特徴点が全方位画像において表示されるべき座標値を算出する過程と、
前記１つ以上の特徴点の各々に対して前記表示座標値と前記表示されるべき座標値との差分または誤差を求める過程と、
前記差分または誤差が許容値以下になるように前記カメラパラメータおよび前記姿勢情報のいずれか一方または両方、ならびに前記仮定した位置を補正する過程とを有する
ことを特徴とする全方位カメラパラメータ・姿勢検出方法。
【請求項２】
全方位カメラで撮影した全方位画像から全方位カメラのパラメータ・姿勢を検出する装置であって、
撮影された全方位画像において１つ以上の特徴点を設定・抽出し、前記特徴点の表示座標値を求める手段と、
前記特徴点の実空間における位置を仮定し、前記仮定した位置と全方位カメラのカメラパラメータおよび姿勢情報とから前記特徴点が全方位画像において表示されるべき座標値を算出する手段と、
前記１つ以上の特徴点の各々に対して前記表示座標値と前記表示されるべき座標値との差分または誤差を求める手段と、
前記差分または誤差が許容値以下になるように前記カメラパラメータおよび前記姿勢情報のいずれか一方または両方、ならびに前記仮定した位置を補正する手段とを有する
ことを特徴とする全方位カメラパラメータ・姿勢検出装置。
【請求項３】
全方位カメラで撮影した全方位画像から全方位カメラのパラメータ・姿勢を検出するプログラムであって、
撮影された全方位画像において１つ以上の特徴点を設定・抽出する手順と、
前記撮影された全方位画像において前記特徴点の表示座標値を求める手順と、
前記特徴点の実空間における位置を仮定する手順と、
前記仮定した位置と全方位カメラのカメラパラメータおよび姿勢情報とから、前記特徴点が全方位画像において表示されるべき座標値を算出する手順と、
前記１つ以上の特徴点の各々に対して前記表示座標値と前記表示されるべき座標値との差分または誤差を求める手順と、
前記差分または誤差が許容値以下になるように前記カメラパラメータおよび前記姿勢情報のいずれか一方または両方、ならびに前記仮定した位置を補正する手順とを、
コンピュータに実行させるためのプログラムとした
ことを特徴とする全方位カメラパラメータ・姿勢検出プログラム。
【請求項４】
請求項３に記載の全方位カメラパラメータ・姿勢検出プログラムを、前記コンピュータが読み取りできる記録媒体に記録した
ことを特徴とする全方位カメラパラメータ・姿勢検出プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、全方位カメラを画像入力装置として使用して取得した、例えば一度に３６０度の景観を撮影した全方位画像から、全方位カメラに関するパラメータおよび自己姿勢を推定する技術に関する。
【０００２】
【従来の技術】
全方位カメラは、一度に３６０度の景観を撮影する画像入力装置として開発され、マシン・ナビゲーション、自動走行や運動制御を目的とした視覚センサとして応用されてきた。特に、大局的な映像シーンを取得する手段として有効であり、屋外撮影においては多様な建物を撮影、屋内撮影では広域な室内空間を一度に撮影することができる。
【０００３】
【発明が解決しようとする課題】
しかしながら、全方位カメラを、常時、水平な位置に設置することは困難である。すなわち、光軸を鉛直方向に沿って真上方向に、全方位カメラをマウントして撮影できるとは限らず、厳密には、光軸が微小な傾きを有している可能性がある。
【０００４】
従って、全方位カメラは全方位を一度に撮像する画像入力装置として有効な手段であるが、カメラ光軸を鉛直方向に平行に向ける、または、カメラ光軸と垂直な面を水平面に平行に設置することが物理的に困難である。また、この姿勢が傾いたことを考慮せず、水平位置と考えて、時系列画像解析を行った場合は、この姿勢誤差が解析誤差の原因になり、全方位カメラを計測手段として利用する場合は、計測誤差につながる。
【０００５】
本発明の主な課題は、全方位カメラを手動等で水平に設置した場合、取得した全方位画像から、全方位カメラの姿勢を自動的に推定し、微小な傾きを有した設置状態で撮影を行っても、計測誤差が低減されるように、カメラパラメータを検出することである。
【０００６】
【課題を解決するための手段】
上述の課題を解決するため、本発明は、全方位カメラで撮影した全方位画像から全方位カメラのパラメータ・姿勢を検出する方法であって、撮影された全方位画像において１つ以上の特徴点を設定・抽出する過程と、前記撮影された全方位画像において前記特徴点の表示座標値を求める過程と、前記特徴点の実空間における位置を仮定する過程と、前記仮定した位置と全方位カメラのカメラパラメータおよび姿勢情報とから、前記特徴点が全方位画像において表示されるべき座標値を算出する過程と、前記１つ以上の特徴点の各々に対して前記表示座標値と前記表示されるべき座標値との差分または誤差を求める過程と、前記差分または誤差が許容値以下になるように前記カメラパラメータおよび前記姿勢情報のいずれか一方または両方、ならびに前記仮定した位置を補正する過程とを有することを特徴とする全方位カメラパラメータ・姿勢検出方法を解決の手段とする。
【０００７】
あるいは、全方位カメラで撮影した全方位画像から全方位カメラのパラメータ・姿勢を検出する装置であって、撮影された全方位画像において１つ以上の特徴点を設定・抽出し、前記特徴点の表示座標値を求める手段と、前記特徴点の実空間における位置を仮定し、前記仮定した位置と全方位カメラのカメラパラメータおよび姿勢情報とから前記特徴点が全方位画像において表示されるべき座標値を算出する手段と、前記１つ以上の特徴点の各々に対して前記表示座標値と前記表示されるべき座標値との差分または誤差を求める手段と、前記差分または誤差が許容値以下になるように前記カメラパラメータおよび前記姿勢情報のいずれか一方または両方、ならびに前記仮定した位置を補正する手段とを有することを特徴とする全方位カメラパラメータ・姿勢検出装置を解決の手段とする。
【０００８】
あるいは、全方位カメラで撮影した全方位画像から全方位カメラのパラメータ・姿勢を検出するプログラムであって、撮影された全方位画像において１つ以上の特徴点を設定・抽出する手順と、前記撮影された全方位画像において前記特徴点の表示座標値を求める手順と、前記特徴点の実空間における位置を仮定する手順と、前記仮定した位置と全方位カメラのカメラパラメータおよび姿勢情報とから、前記特徴点が全方位画像において表示されるべき座標値を算出する手順と、前記１つ以上の特徴点の各々に対して前記表示座標値と前記表示されるべき座標値との差分または誤差を求める手順と、前記差分または誤差が許容値以下になるように前記カメラパラメータおよび前記姿勢情報のいずれか一方または両方、ならびに前記仮定した位置を補正する手順とを、コンピュータに実行させるためのプログラムとしたことを特徴とする全方位カメラパラメータ・姿勢検出プログラムを解決の手段とする。
【０００９】
あるいは、上記の全方位カメラパラメータ・姿勢検出プログラムを、前記コンピュータが読み取りできる記録媒体に記録したことを特徴とする全方位カメラパラメータ・姿勢検出プログラムを記録した記録媒体を解決の手段とする。
【００１０】
本発明では、全方位カメラで取得した全方位画像中において設定・抽出した特徴点の表示座標値と、適当に用意した実空間での該特徴点の位置情報から全方位カメラ固有のカメラパラメータおよび姿勢情報で得ることができる画像座標値との間の誤差を低減するように、全方位カメラのカメラパラメータおよび姿勢情報を補正して、全方位カメラのカメラパラメータおよび姿勢を推定することにより、全方位カメラを画像入力装置として使用した時系列映像解析、または、コンピュータビジョンに代表されるカメラ視点位置の推定、並びに、空間情報の高精度な獲得、復元のためのカメラパラメータ・姿勢の検出を可能とする。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態について図を用いて詳細に説明する。
【００１２】
『実施形態例１』
本発明は、全方位カメラから取得した全方位画像から、全方位カメラのカメラパラメータを推定する手法である。
【００１３】
図１に、本発明の基本構成図を示す。本発明の基本構成は、全方位カメラから全方位画像を取得する画像入力部１、その全方位画像において１つ以上の特徴点を設定・抽出する特徴点抽出部２、初期値として特徴点の実空間での仮定の位置情報を与える空間情報設定部３、カメラパラメータと姿勢と実空間での仮定した位置で得ることができる画像座標値と、全方位画像上の特徴点との当てはめ度合いを処理する特徴点当てはめ部４、当てはめにおいて全方位画像中の特徴点の座標値と該画像座標値の差分または誤差を計算し、その差分または誤差を許容値以下に低減するようにカメラパラメータや姿勢を補正するパラメータ補正部５、補正された全方位カメラのカメラパラメータ・姿勢を出力するパラメータ出力部６から構成される。
【００１４】
図２は、実施形態例１の発明に関する処理フロー図である。本実施形態例においては、図３に示す等距離射影（光軸からの入射角に比例した射影）の光学系で設計されている魚眼レンズを用いた全方位カメラで全方位画像を取得する場合について説明する。
【００１５】
本発明は、他の光学射影、例えば、立体射影、または等立体射影を用いた場合にも適用可能であり、魚眼レンズを使用しない他の全方位カメラ撮像装置で取得した時系列画像や多視点の全方位画像等に対しても適用可能である。以下では、推定対象とする全方位カメラの姿勢を示す傾き角αは、それほど大きくなく、第一次近似（ｃｏｓ（α）≒１、ｓｉｎ（α）≒α）が成立する範囲内での微小な傾きαであるとする。また、全方位カメラと空間情報の関係が、図３のように、全方位カメラの進行軸に沿って、物体が存在することを前提とする。
【００１６】
以下では、図１、図２に従って本発明を説明する。
【００１７】
まず、画像入力部１により、全方位画像のうち、処理対象とする画像を１枚取り出し、特徴点抽出部２により、図４に示すように、この画像上において、特徴点をＰ個分設定・抽出し、その表示座標値（ｘ’ｊ，ｙ’ｊ）を求める。
【００１８】
次に、空間情報設定部３では、図４での射影中心と称する全方位画像の中心位置（Ｃｘ，Ｃｙ）から画像上で設定・抽出した各々の特徴点まで径ｒｊを伸ばしたときの位相ρｊを式（０）
【００１９】
【数１】
2004015766.tif 000003
【００２０】
に従い、特徴点の数分Ｐ個を求めておく。ここで、射影中心（Ｃｘ，Ｃｙ）とは全方位カメラの光軸方向を表現する射影の中心座標値である。
【００２１】
上記の位相の算出に先立って、空間情報設定部３では物体面の空間情報として、物体面までの距離Ｒｊ、特徴点の高さｈｊを初期値として設定する。また、全方位カメラのカメラパラメータとして、焦点距離ｆ、全方位画像解像度Ｄ、射影中心（Ｃｘ，Ｃｙ）を初期値として設定する。ここで、Ｄは画像座標値の１画素の物理的重み付けを表現する固定値である。
【００２２】
次に、空間情報設定部３は、上記のステップで得た位相ρｊと、カメラパラメータの初期値が与えられると、式（１）
【００２３】
【数２】
2004015766.tif 000004
【００２４】
に従って、径ｒｊを計算する。さらに、径ｒｊと位相ρｊから、式（２）
【００２５】
【数３】
2004015766.tif 000005
【００２６】
に従ってＰ個の画像座標値（ｘｊ，ｙｊ）を算出する。
【００２７】
この画像座標値（ｘｊ，ｙｊ）は、各特徴点の実空間における仮定の位置と全方位カメラのカメラパラメータおよび姿勢情報とから、各特徴点が全方位画像において表示されるべき座標値情報である。
【００２８】
次に、特徴点当てはめ部４は、上記のステップで画像座標値が得られると、画像上に設定したＰ個の特徴点（ｘ’ｊ，ｙ’ｊ）との間で、誤差ΔＡを式（３）
【００２９】
【数４】
2004015766.tif 000006
【００３０】
に従って求める。
【００３１】
次に、パラメータ補正部５は、許容誤差εを適当に設定しておき、上記のステップで得られた誤差ΔＡが式（４）
ΔＡ≦ε　…式（４）
を満足しない場合は、式（５）
【００３２】
【数５】
2004015766.tif 000007
【００３３】
のパラメータ更新を行う。
【００３４】
次に、パラメータが更新されるため、上記のステップに戻り、位相ρｊと径ｒｊを式（０）、並びに、式（１）を使って再計算する。この誤差を許容誤差以下に低減するようにパラメータを更新する手法として、例えば、文献［１］「Ｎｕｍｅｒｉｃａｌ　Ｒｅｃｉｐｅｓ　ｉｎ　Ｃ，Ｗｉｌｌｉａｍ　Ｈ．Ｐｒｅｓｓ，Ｓａｕｌ　Ａ．Ｔｅｕｋｏｌｓｋｙ，Ｗｉｌｌｉａｍ　Ｔ．Ｖｅｔｔｅｒｌｉｎｇ，Ｂｒｉａｎ　Ｐ．Ｆｌａｎｎｅｒｙ」（（日本語版）−１０．５　多次元の方向集合（Ｐｏｗｅｌｌ）法−Ｃ言語による数値計算のレシピ、丹慶勝市、奥村晴彦、佐藤俊郎、小林誠（訳）、技術評論社）に掲載されているＰｏｗｅｌｌ法、または、ニューラルネットワーク、遺伝的アルゴリズムなどを応用して、パラメータを変化させ、目的の誤差ΔＡを最小にするパラメータのセットを出力する。
【００３５】
なお、上記の初期値の設定では、物体面までの距離Ｒｊ、特徴点の高さｈｊを与えるが、本実施形態例では、計算上、ｈｊ／Ｒｊの比率を変化させるように、Ｒｊを固定し、ｈｊのみをパラメータ更新する。
【００３６】
最終的に、式（４）を満足するときのパラメータとして、パラメータ補正部５で更新した射影中心（Ｃｘ，Ｃｙ）を、パラメータ出力部６により出力する。
【００３７】
冒頭で記載したように、推定対象とする全方位カメラの姿勢は、それほど大きくなく、第一次近似（ｃｏｓ（α）≒１、ｓｉｎ（α）≒α）が成立する範囲内での微小な傾きであれば、全方位カメラの傾き、すなわち、姿勢は、初期値として与えた射影中心（Ｃｘ，Ｃｙ）と出力されたパラメータの差（ΔＣｘ，ΔＣｙ）という形式で、全方位カメラの傾き（Δχ，Δω）にほぼ比例した値を検出することができる（式（６）参照）。
【００３８】
【数６】
2004015766.tif 000008
【００３９】
なお、Δχは図３でのｘ軸まわりの回転角であり、Δωは図３でのｙ軸まわりの回転角を表している。
【００４０】
『実施形態例２』
本実施形態例は、実施形態例１に対して、全方位カメラのカメラパラメータのうち射影中心（Ｃｘ，Ｃｙ）の代わりに、全方位カメラの光軸まわりの回転、すなわち方位角θを考慮してカメラパラメータを推定する手法であり、実施形態例１との差分のみを記載することにする。
【００４１】
図５は、実施形態例２の発明に関する処理フロー図である。以下では、図５に従って、本実施形態例を説明する。
【００４２】
実施形態例１と同様に、空間情報設定部３では、物体面の空間情報として、物体面までの距離Ｒｊ、特徴点の高さｈｊを初期値として設定、また、全方位カメラのカメラパラメータとして、焦点距離ｆ、全方位画像解像度Ｄ、射影中心（Ｃｘ，Ｃｙ）、全方位カメラの姿勢として方位角θ＝０をそれぞれ初期値として設定し、各々の位相ρｊから式（１）に従って径ｒｊを計算する。さらに、径ｒｊと位相ρｊから、式（７）
【００４３】
【数７】
2004015766.tif 000009
【００４４】
に従って、Ｐ個の画像座標値（ｘｊ，ｙｊ）を算出する。
【００４５】
次に、特徴点当てはめ部４は、上記のステップで画像座標値が得られると、画像上に設定したＰ個の特徴点（ｘ’ｊ，ｙ’ｊ）との間で、誤差ΔＡを式（３）に従って求める。
【００４６】
次に、パラメータ補正部５は、許容誤差εを適当に設定しておき、この誤差ΔＡが式（４）を満足しない場合は、式（８）
【００４７】
【数８】
2004015766.tif 000010
【００４８】
のパラメータ更新を行う。
【００４９】
次に、パラメータが更新されるため、上記のステップに戻り、径ｒｊの計算を繰り返し、最終的に、式（４）を満足するときのカメラの姿勢として、パラメータ補正部５で更新した方位角θを、パラメータ出力部６により出力する。
【００５０】
『実施形態例３』
本実施形態例は、実施形態例１に対して、全方位カメラの光軸まわりの回転、すなわち方位角θを考慮してカメラパラメータを推定する手法であり、実施形態例１との差分のみを記載することにする。
【００５１】
図６は、実施形態例３の発明に関する処理フロー図である。以下では、図６に従って、本実施形態例を説明する。
【００５２】
実施形態例１と同様に、空間情報設定部３では、物体面の空間情報として、物体面までの距離Ｒｊ、特徴点の高さｈｊを初期値として設定、また、全方位カメラのカメラパラメータとして、焦点距離ｆ、全方位画像解像度Ｄ、射影中心（Ｃｘ，Ｃｙ）、全方位カメラの姿勢として方位角θ＝０をそれぞれ初期値として設定し、各々の位相ρｊから式（１）に従って径ｒｊを計算する。さらに、径ｒｊと位相ρｊから、式（７）に従って、Ｐ個の画像座標値（ｘｊ，ｙｊ）を算出する。
【００５３】
次に、特徴点当てはめ部４は、上記のステップで画像座標値が得られると、画像上に設定したＰ個の特徴点（ｘ’ｊ，ｙ’ｊ）との間で、誤差ΔＡを式（３）に従って求める。
【００５４】
次に、パラメータ補正部５は、許容誤差εを適当に設定しておき、この誤差ΔＡが式（４）を満足しない場合は、式（９）
【００５５】
【数９】
2004015766.tif 000011
【００５６】
のパラメータ更新を行う。
【００５７】
次に、パラメータが更新されるため、上記のステップに戻り、位相ρｊと径ｒｊを式（０）、並びに、式（１）を使って再計算し、最終的に、式（４）を満足するときのカメラパラメータおよび姿勢として、パラメータ補正部５で更新した射影中心（Ｃｘ，Ｃｙ）、および方位角θを、パラメータ出力部６により出力する。
【００５８】
なお、図１で示した装置における各部の一部もしくは全部の機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができること、あるいは、図２、図５、および図６で示した処理の過程をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもなく、コンピュータでその機能を実現するためのプログラム、あるいは、コンピュータにその処理の手順を実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、ＦＤ（フレキシブルディスク）や、ＭＯ、ＲＯＭ、メモリカード、ＣＤ、ＤＶＤ、リムーバブルディスクなどに記録して、保存したり、配布したりすることが可能である。また、上記のプログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【００５９】
【発明の効果】
以上の説明で明らかなように、本発明によれば、全方位カメラを手動等で水平として設置した場合でも、取得した全方位画像から、全方位カメラの姿勢を自動的に推定し、微小な傾きを有した設置状態で撮影を行っても、計測誤差が低減されるように、カメラパラメータおよびカメラ姿勢を検出することができる。
【図面の簡単な説明】
【図１】本発明の基本構成図である。
【図２】実施形態例１の処理フローを示す図である。
【図３】魚眼レンズの等距離射影による光学射影の説明図である。
【図４】全方位画像上の座標値、並びに、実施形態例で使用する変数の説明図である。
【図５】実施形態例２の処理フローを示す図である。
【図６】実施形態例３の処理フローを示す図である。
【符号の説明】
１…画像入力部
２…特徴点抽出部
３…空間情報設定部
４…特徴点当てはめ部
５…パラメータ補正部
６…パラメータ出力部
【図１】
2004015766.tif 000012
【図２】
2004015766.tif 000013
【図３】
2004015766.tif 000014
【図４】
2004015766.tif 000015
【図５】
2004015766.tif 000016
【図６】
2004015766.tif 000017