(57)【特許請求の範囲】
【請求項１】
内部パラメタが既知なカメラを用いて、所定範囲内の地点から互いに重なる部分があるように撮影方向を変えて撮像し、かつ撮影時のカメラ位置と方向の相対値が既知な複数枚の画像からパノラマ画像を作成するパノラマ画像作成方法において、
パノラマ画像の視点を中心とした複数の仮想的な同心球を用意するステップ１と、
該同心球面上の任意の点に対応する各画像上の点もしくは点の近傍の画素値同士から計算される類似度を、該同心球面上にマッピングするステップ２と、
該同心球面上の任意の点に対して、該同心球面上の任意の点と該画像を撮影したカメラの光学系の物体側主点とを結ぶ線と、該同心球面上の任意の点と該同心球の中心点を結ぶ線との角度と、対応する画像上の点の画素値から計算されるテクスチャ値を該同心球面上にマッピングするステップ３と、
該同心球と中心点を同じくする単位球を用意し、該同心球の中心を起点として該単位球面上の各点へ延ばした線が各同心球面と交わる交点にマッピングされている類似度と、テクスチャ値より求められる値を該単位球面上の各点のテクスチャ値としてマッピングするステップ４と、
該単位球面にマッピングされたテクスチャ値をパノラマ画像として出力するステップ５とを有し、
前記ステップ４において、それぞれの同心球面の交点にマッピングされている類似度の和に対する、各同心球面の交点にマッピングされている類似度の割合に応じて、各同心球面の交点にマッピングされているテクスチャ値をブレンディングした値を、前記単位球面上の各点のテクスチャ値としてマッピングすることを特徴とするパノラマ画像作成方法。
【請求項２】
内部パラメタが既知なカメラを用いて、所定範囲内の地点から互いに重なる部分があるように撮影方向を変えて撮像し、かつ撮影時のカメラ位置と方向の相対値が既知な複数枚の画像からパノラマ画像を作成するパノラマ画像作成方法において、
パノラマ画像の視点を通る一本の線を中心とした複数の仮想的な同心円柱を用意するステップ１と、
該同心円柱面上の任意の点に対応する各画像上の点もしくは点の近傍の画素値同士から計算される類似度を、該同心円柱面上にマッピングするステップ２と、
該同心円柱面上の任意の点に対して、該同心円柱面上の任意の点と該画像を撮影したカメラの光学系の物体側主点とを結ぶ線と、該同心円柱面上の任意の点と該同心円柱の中心線上にある視点を結ぶ線との角度と、対応する画像上の点の画素値から計算されるテクスチャ値を該同心円柱面上にマッピングするステップ３と、
該同心円柱と中心点を同じくする単位円柱を用意し、該単位円柱の中心線上にある視点を起点として該単位円柱面上の各点へ延ばした線が各同心円柱面と交わる交点にマッピングされている類似度と、テクスチャ値より求められる値を該単位円柱面上の各点のテクスチャ値としてマッピングするステップ４と、
該単位円柱面にマッピングされたテクスチャ値をパノラマ画像として出力するステップ５とを有し、
前記ステップ４において、それぞれの同心円柱面の交点にマッピングされている類似度の和に対する、各同心円柱面の交点にマッピングされている類似度の割合に応じて、各同心円柱面の交点にマッピングされているテクスチャ値をブレンディングした値を、前記単位円柱上の各点のテクスチャ値としてマッピングすることを特徴とするパノラマ画像作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パノラマ画像作成方法に係り、特に、コンピュータビジョンにおいて、カメラで撮像した２枚以上の複数の画像からパノラマ画像を作成する技術に関する。
【背景技術】
【０００２】
従来から、カメラで撮像した２枚以上の複数の画像からパノラマ画像を作成する方法が知られている（下記、非特許文献１、２参照）。
以下、従来のパノラマ画像作成方法について説明する。
図５は、従来のパノラマ画像作成方法について、幾何学的な構成を示した図である。
同図において、１０１は最終的なパノラマ画像を投射する半径１の単位球、１０２は１０１の単位球の中心、１０３はカメラ１のレンズの主点、１０４はカメラ２のレンズの主点、１０５はカメラ１の光軸、１０６はカメラ２の光軸、１０７はカメラ１で撮像された画像、１０８はカメラ２で撮像された画像、１０９はカメラ１の画像を単位円１０１の面上に投射した際の投射像の範囲、１１０はカメラ２の画像を単位円１０１の面上に投射した際の投射像の範囲、１１２は１０９と１１０で重複する投射像の範囲である。
なお、図５では、説明を簡単にするために、１０７と１０８のカメラ１、２の画像の光軸が紙面上に配置されるようにしているが、それらの光軸が紙面上に無い場合であっても原理は変わらない。
また、図５では、説明を簡単にするために、本来２つよりも多い画像を使用するところを、２つの画像のみ示しているが、２つよりも多い画像であったとしても、原理は変わらない。
【０００３】
カメラが規定する座標系をカメラ座標系と呼ぶこととする。このカメラ座標系では、原点は、カメラのレンズの物体側主点と像側主点であるが、レンズヘの光の入射に関する座標の原点は物体側主点となり、レンズからの光の出射に関する座標の原点は像側主点となる。
ここで、カメラをＣｉ（ただし、ｉはカメラを区別する番号であり、ｉ＝１，２，３，…である。）と名付けるとする。このカメラＣｉの規定する座標系は以下のようになる。
ＺＣｉは、レンズ光軸と一致し、カメラヘの光の入射とは反対方向をプラス方向とする。  ＸＣｉ軸は、原点を含むＺＣｉ軸と直交した面内にあり、二次元撮像素子の水平走査方向と平行な軸である。そして水平走査方向をプラス方向とする。
ＹＣｉ軸は、ＺＣｉ軸とＸＣｉ軸の両方と直交する軸であり、右手系としてＹＣｉ軸のプラス方向を決めるものとする。
カメラの撮像素子である二次元撮像素子が規定する座標系をディジタル画像座標系と呼ぶこととする。このディジタル画像座標系では、原点は、１フレームの走査の起点とし、水平走査方向と平行な軸をｕＣｉ軸とし、垂直走査方向と平行な軸をｖＣｉ軸とする。
カメラの光軸と二次元撮像素子との交点の座標を、ディジタル画像座標系では、［ｕＣｉＯ，ｖＣｉＯ］Ｔと表すこととする。カメラのレンズの像側主点とカメラの二次元撮像素子の受光面までの距離をｆＣｉとする。
【０００４】
カメラの二次元撮像素子のピクセルピッチについては、ｕＣｉ軸方向のものは、１／ｋＣｉ、ｖＣｉ軸方向のものは、１／ｋｖＣｉとする。
カメラの二次元撮像素子の水平走査方向と垂直走査方向の成す角をψＣｉとする。
パノラマ画像が規定する座標系をパノラマ画像座標系と呼ぶこととする。このパノラマ画像座標系の原点は、パノラマ画像を構成する際の視点の位置であり、この位置をＣ０と呼ぶこととする。
この原点を中心に任意のデカルト座標系の軸を決める。この系の座標を［ＸＣ０，ＹＣ０，ＺＣ０］Ｔと表すこととする。
パノラマ画像座標系におけるカメラＣｉの回転を表す行列をＲＣ０Ｃｉ＝［ｒＣ０ＣｉＸ，ｒＣ０ＣｉＹ，ｒＣ０ＣｉＺ］Ｔ（ｒＣ０ＣｉＸ，ｒＣ０ＣｉＹ，ｒＣ０ＣｉＺは、それぞれパノラマ画像座標系におけるカメラＣｉのＸ、Ｙ、Ｚ軸方向の単位ベクトル）とする。
パノラマ画像座標系におけるカメラＣｉの原点の座標をＴ＝［ＴＣ０ＣｉＸ，ＴＣ０ＣｉＹ，ＴＣ０ＣｉＺ］Ｔ（ＴＣ０ＣｉＸ，ＴＣ０ＣｉＹ，ＴＣ０ＣｉＺは、それぞれパノラマ画像座標系におけるカメラＣｉの原点のＸ、Ｙ、Ｚ座標）とする。
このとき、カメラＣｉのパノラマ画像座標系における射影行列ＰＣ０Ｃｉは、下記（１）式のようになる。
【０００５】
【数１】
0004680104.tif 000002
【０００６】
前述の射影行列を使用すると、ある点のパノラマ画像座標系上の位置を［ＸＣ０，ＹＣ０，ＺＣ０，］Ｔとしたときの、その点がカメラの二次元撮像素子上に結像する点の位置をディジタル画像座標系で［ｕＣｉ，ｖＣｉ］Ｔと表したとき、下記（２）式の関係があるので、下記（３）式となる。
また、パノラマ座標系を極座標系で表したときの座標［ｒＣ０，θＣ０，φＣ０］Ｔを、下記（４）式と定める
【０００７】
【数２】
0004680104.tif 000003
【０００８】
前述の幾何学的な構成を用いて、以下のように、１０１の単位球上にパノラマ画像を作成する。
（１）ｒＣ０が１となる単位球面上で、ユーザが欲する画像のレゾリューションとなるように複数の点を定め、それらの座標を［１，θＣ０ｊ，φＣ０ｊ］Ｔ（ｊは点を区別する数字）とする。
（２）１０１の単位球面上のある点ｊを指定する。
（３）各カメラの画像上の前述の点ｊに対応する点の位置を算出する。これは、幾何学上は、１０１の単位球面上の点から各カメラのレンズの主点を通る線を引き、カメラの画像との交点の位置を出すことに相当する。
図５では、１０１の単位球面上の「投射」と書かれた点から矢印を逆に進み、カメラ１では１０３のレンズの主点を通り、１０７の画像に到達した点となる。また、カメラ２では１０４のレンズの主点を通り、１０８の画像に到達した点となる。
これは、例えば、パノラマ画像座標系における単位球面上の点ｊの座標を［ＸＣｊ，ＹＣｊ，ＺＣｊ］Ｔとしたとき、下記（５）式のように算出できる。
【０００９】
【数３】
0004680104.tif 000004
【００１０】
（４）もし、１０１の単位球面上の点ｊに対するカメラの画像の点が１つの場合は、そのカメラの画像の点にある色ベクトルＤＣｉｊ（ｉはカメラを区別する数字、ｊは単位球面上の点を区別する数字）をそのまま投射し、点ｊの色として使用する。
もし、１１２に示すように、１０１の単位球面上の点ｊに対するカメラの画像の点が複数の場合は、対応するカメラの画像の点にある色ベクトルＤＣｉｊ（ｉはカメラを区別する数字、ｊは単位球面上の点を区別する数字）を投射し、それら投射された色ベクトルを定められた重みに従ってブレンディングして、そのブレンディングした色ベクトルを点ｊの色として使用する。
前述のブレンディングは、たとえば、各カメラ画像の端からｊの対応点までの距離に対して単調増加する割合でブレンディングの重みを大きくする方法がある。具体的には、例えば、各カメラ画像の端からの距離ＬＣｉｊを求め、下記（６）式によりブレンディングする。
（５）前述の（２）〜（４）を、前述の（１）で定めた単位球面上の全ての点ｊについて行う。単位球面上の各点ｊに得られた色ベクトルの集合がパノラマ画像となる。
ここで述べた実施例は、パノラマ画像を作成するための投射先を単位球として説明したが、単位球を半径１の単位円柱としても同様の操作でパノラマ画像を作成できる。
【００１１】
【数４】
0004680104.tif 000005
【００１２】
なお、本願発明に関連する先行技術文献としては以下のものがある。
【非特許文献１】R.Szeliski,H-Y.Shum,“Creating Full View Panoramic Image Mosaics and Environment Maps”,Computer Graphics Proceedings,Annual Conference Series,PP.251-258,1997
【非特許文献２】R.Szeliski,“Image Mosaicing for Tele-Reality Applications”,In Proceedings of Workshop on Applications of Computer Vision,pp.44-53,1994
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、前述の従来方法では、景色の奥行き情報が使用されていないため、図５に示すような各カメラのレンズの主点が一致しないような条件で撮られた画像からは、複数のカメラの投射像が重なった図５の１１２のような部分については、各カメラの画像に写っている物体の位置がカメラに近いものほど、各カメラの画像から単位球または単位円柱に投射したときの物体の像のずれが大きく、ブレンディングしてパノラマ画像を作成した場合に、その物体の画像がぶれた状態となる欠点がある。
本発明は、前記従来技術の問題点を解決するためになされたものであり、本発明の目的は、カメラのレンズの主点が一致しない条件で撮られた画像からでも、物体の画像がぶれない状態でパノラマ画像を作成することが可能なパノラマ画像作成方法を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【課題を解決するための手段】
【００１４】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
前述の目的を達成するために、本発明は、内部パラメタ（光学系の焦点距離、撮像素子の画素ピッチ、撮像素子の縦横軸の角度、光学系の光軸と撮像素子との交点）が既知なカメラを用いて、所定範囲内の地点から互いに重なる部分があるように撮影方向を変えて撮像し、かつ撮影時のカメラ位置と方向の相対値が既知な複数枚の画像からパノラマ画像を作成するパノラマ画像作成方法において、パノラマ画像の視点を中心とした複数の仮想的な同心球を用意するステップ１と、該同心球面上の任意の点に対応する各画像上の点もしくは点の近傍の画素値同士から計算される類似度を、該同心球面上にマッピングするステップ２と、該同心球面上の任意の点に対して、該同心球面上の任意の点と該画像を撮影したカメラの光学系の物体側主点とを結ぶ線と、該同心球面上の任意の点と該同心球の中心点を結ぶ線との角度と、対応する画像上の点の画素値から計算されるテクスチャ値を該同心球面上にマッピングするステップ３と、該同心球と中心点を同じくする単位球を用意し、該同心球の中心を起点として、該単位球面上の各点へ延ばした線が各同心球面と交わる交点にマッピングされている類似度と、テクスチャ値より求められる値を該単位球面上の各点のテクスチャ値としてマッピングするステップ４と、該単位球面にマッピングされたテクスチャ値をパノラマ画像として出力するステップ５とを有し、前記ステップ４において、それぞれの同心球面の交点にマッピングされている類似度の和に対する、各同心球面の交点にマッピングされている類似度の割合に応じて、各同心球面の交点にマッピングされているテクスチャ値をブレンディングした値を、前記単位球面上の各点のテクスチャ値としてマッピングすることを特徴とする。
【００１５】
また、本発明は、内部パラメタ（光学系の焦点距離、撮像素子の画素ピッチ、撮像素子の縦横軸の角度、光学系の光軸と撮像素子との交点）が既知なカメラを用いて、所定範囲内の地点から互いに重なる部分があるように撮影方向を変えて撮像し、かつ撮影時のカメラ位置と方向の相対値が既知な複数枚の画像からパノラマ画像を作成するパノラマ画像作成方法において、パノラマ画像の視点を通る一本の線を中心とした複数の仮想的な同心円柱を用意するステップ１と、該同心円柱面上の任意の点に対応する各画像上の点もしくは点の近傍の画素値同士から計算される類似度を、該同心円柱面上にマッピングするステップ２と、該同心円柱面上の任意の点に対して、該同心円柱面上の任意の点と該画像を撮影したカメラの光学系の物体側主点とを結ぶ線と、該同心円柱面上の任意の点と該同心円柱の中心線上にある視点を結ぶ線との角度と、対応する画像上の点の画素値から計算されるテクスチャ値を該同心円柱面上にマッピングするステップ３と、該同心円柱と中心点を同じくする単位円柱を用意し、該単位円柱の中心線上にある視点を起点として、該単位円柱面上の各点へ延ばした線が各同心円柱面と交わる交点にマッピングされている類似度と、テクスチャ値より求められる値を該単位円柱面上の各点のテクスチャ値としてマッピングするステップ４と、該単位円柱面にマッピングされたテクスチャ値をパノラマ画像として出力するステップ５とを有し、前記ステップ４において、それぞれの同心円柱面の交点にマッピングされている類似度の和に対する、各同心円柱面の交点にマッピングされている類似度の割合に応じて、各同心円柱面の交点にマッピングされているテクスチャ値をブレンディングした値を、前記単位円柱上の各点のテクスチャ値としてマッピングすることを特徴とする。
【発明の効果】
【００１６】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
本発明によれば、類似度とテクスチャを三次元空間上にマッピングすることによって、三次元空間上の各点における物体の存在する可能性に関連する類似度と、その点における物体の色を三次元空間に配置することが可能となるため、カメラのレンズの主点が一致しない条件で撮られた画像からでも、物体の画像がぶれない状態でパノラマ画像を作成することが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照して本発明の実施例を詳細に説明する。
なお、実施例を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
［実施例１］
図１は、本発明の実施例１のパノラマ画像作成方法について、幾何学的な構成の例を示す図である。
図１において、２０１は最終的なパノラマ画像を投射する半径１の単位球、２０２は単位球２０１の中心、２０３はカメラ１のレンズの主点、２０４はカメラ２のレンズの主点、２０５はカメラ１の光軸、２０６はカメラ２の光軸、２０７はカメラ１で撮像された画像、２０８はカメラ２で撮像された画像、２１１は単位球２０１の中心２０２を中心とする複数の同心球が層状に形成され、複数のカメラの画像間の類似度をその同心球の面上に配置した類似度マップとテクスチャマップ、２１２はカメラ１、２で作成される類似度マップの範囲、２１３は単位球２０１の中心２０２を中心とする複数の同心球が層状に形成され、複数のカメラの画像間の色情報から計算されたテクスチャをその同心球の面上に配置したテクスチャマップ、２１４はカメラ１、２で作成されるテクスチャマップの範囲である。
図１では、説明を簡単にするために、２０７と２０８のカメラ１，２の画像の光軸が紙面上に配置されるようにしているが、それらの光軸が紙面上に無い場合であっても、原理は変わらない。また、図１では、説明を簡単にするために、本来２つよりも多い画像を使用するところを、２つの画像のみ示しているが、２つよりも多い画像であったとしても、原理は変わらない。
【００１８】
カメラが規定する座標系をカメラ座標系と呼ぶこととする。このカメラ座標系では、原点は、カメラのレンズの物体側主点と像側主点であるが、レンズヘの光の入射に関する座標の原点は物体側主点となり、レンズからの光の出射に関する座標の原点は像側主点となる。
ここでカメラＣｉ（ただし、ｉはカメラを区別する番号であり、ｉ＝１，２，３，…である。）の規定する座標系を、以下のように定義する。
ＺＣｉはレンズ光軸と一致し、カメラヘの光の入射とは反対方向をプラス方向とする。
ＸＣｉ軸は、原点を含むＺＣｉ軸と直交した面内にあり、二次元撮像素子の水平走査方向と平行な軸である。そして水平走査方向をプラス方向とする。
ＹＣｉ軸は、ＺＣｉ軸とＸＣｉ軸の両方と直交する軸であり、右手系として、ＹＣｉ軸のプラス方向を決めるものとする。
カメラの撮像素子である二次元撮像素子が規定する座標系をディジタル画像座標系と呼ぶこととする。このディジタル画像座標系では、原点は、１フレームの走査の起点とし、水平走査方向と平行な軸をｕＣｉ軸とし、垂直走査方向と平行な軸をｖＣｉ軸とする。
パノラマ画像が規定する座標系をパノラマ画像座標系と呼ぶこととする。このパノラマ画像座標系の原点は、パノラマ画像を構成する際の視点位置であり、この位置をＣ０と呼ぶこととする。
この原点を中心に任意のデカルト座標系の軸を決める。この系の座標を［ＸＣ０，ＹＣ０，ＺＣ０］Ｔと表すこととする。
【００１９】
図２は、本実施例のパノラマ画像作成方法を説明するためのフローチャートであり、２０１の単位球上にパノラマ画像を作成するための処理手順を示すフローチャートである。
なお、本実施例のパノラマ画像作成方法は、コンピュータにより実行されるものであり、各カメラ画像は記憶装置に記憶される。
初めに、ユーザが欲する奥行き方向の解像度に応じて、必要な数の同心球を準備し（ステップＳ１１）、同心球面上の各点に対するカメラ画像上の対応点を計算する（ステップＳ１２）。
次に、同心球面上の各点に対するカメラ画像上の対応点間の類似度を計算し（ステップＳ１３）、同心球面上の各点に対するテクスチャを計算する（ステップＳ１４）。
前述のステップＳ１２〜ステップＳ１４の処理を、全ての点に対して実行した後（ステップＳ１５）、同心球の中心から直線を延ばし、直線と交わる各同心球面の交点の類似度とテクスチャより、各直線に対するテクスチャを計算する（ステップＳ１６）。
そして、各直線に対するテクスチャをパノラマ画像として出力する（ステップＳ１７）。
【００２０】
以下、本実施例のパノラマ画像作成方法について詳細に説明する。
（１）ユーザが欲する奥行きの範囲を定める。さらに、ユーザが欲する奥行き方向のレゾリューションとなる数だけ、パノラマ画像座標系の原点を中心とする同心球を定める。
このとき定めた同心球の半径をｒＣ０ｋ（ｋは球を区別する数字）とする。
（２）ｋ＝０のときの同心球を単位球、つまり、半径をｒＣ００＝１とする。その単位球上に、パノラマ画像を作成するとして、ユーザが欲する画像のレゾリューションを満たす複数のサンプル点を定め、それらの座標を［１，θＣ０ｊ，φＣ０ｊ］Ｔ（ｊは点を区別する数字）とする。
（３）半径がｒＣ０ｋ，ｋ≠０、となる球面上で、上記の点ｊに対応する点［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは球を区別する数字、ｊは単位球面上の点を区別する数字）について、それに対応する全てにカメラのディジタル画像座標系上の点の位置［ｕＣｉｊｋ，ｖＣｉｊｋ］Ｔ（ｉはカメラを区別する数字、ｊは単位球面上の点を区別する数字、ｋは球を区別する数字）を求める。
【００２１】
単位球面上の点からディジタル画像座標系上の点への射影は、例えば、以下のように行われる。
カメラのレンズの像側主点と、カメラの二次元撮像素子の受光面までの距離をｆＣｉ、カメラの二次元撮像素子のｕＣｉ軸方向のピクセルピッチを１／ｋｕＣｉ、ｖＣｉ軸方向を１／ｋｖＣｉ、カメラの二次元撮像素子の水平走査方向、と垂直走査方向の成す角をψＣｉ、カメラの光軸と二次元撮像素子との交点の座標を、ディジタル画像座標系では、［ｕＣｉＯ，ｖＣｉＯ］Ｔと表すこととする。なお、これらの値は、カメラ内部パラメタとして既知である。
ここで、パノラマ画像座標系におけるカメラＣｉの回転を表す行列を、ＲＣ０Ｃｉ＝［ｒＣ０ＣｉＸ，ｒＣ０ＣｉＹ，ｒＣ０ＣｉＺ］Ｔ（ｒＣ０ＣｉＸ，ｒＣ０ＣｉＹ，ｒＣ０ＣｉＺは、それぞれパノラマ画像座標系におけるカメラＣｉのＸ、Ｙ、Ｚ軸方向の単位ベクトル）、パノラマ画像座標系におけるカメラＣｉの原点の座標をＴＣ０Ｃｉ＝［ＴＣ０ＣｉＸ，ＴＣ０ＣｉＹ，ＴＣ０ＣｉＺ］Ｔ（ＴＣ０ＣｉＸ、ＴＣ０ＣｉＹ、ＴＣ０ＣｉＺは、それぞれパノラマ画像座標系におけるカメラＣｉの原点のＸ、Ｙ、Ｚ座標）とすると、カメラＣｉのパノラマ画像座標系における射影行列ＰＣ０Ｃｉは、下記（７）式のように表される。
【００２２】
【数５】
0004680104.tif 000006
【００２３】
前述の射影行列を使用すると、ある点のパノラマ画像座標系上の位置を[ＸＣ０，ＹＣ０，ＺＣ０］Ｔとしたときの、その点がカメラの二次元撮像素子に結像する点の位置をディジタル画像座標系で[ｕＣｉ，ｖＣｉ］Ｔと表したとき、下記（８）式の関係にあり、下記（９）式となる。
パノラマ座標系を極座標系で表したときの座標［ｒＣ０，θＣ０，φＣ０］Ｔは、下記（１０）式となる。したがって、（ｕＣｉｊｋ，ｖＣｉｊｋ）は、下記（１１）式で求められる。
【００２４】
【数６】
0004680104.tif 000007
【００２５】
（４）各カメラで撮像している画像の［ｕＣｉｊｋ，ｖＣｉｊｋ］Ｔ（ｉはカメラを区別する数字、ｊは単位球面上の点を区別する数字、ｋは球を区別する数字）の位置にある画素、または、その画素を含むその周りの複数の画素で形成される画素ブロックを抽出し、カメラ間におけるそれらの類似度Ｒｊｋを計算し、これを、点ｊに対応する同心球ｋの表面の点の座標［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは球を区別する数字、ｊは点を区別する数字）の類似度として保存する。
類似度は、例えば、対応する点の画素値の相違度を用いて、下記（１２）式で計算される値である。
【００２６】
【数７】
0004680104.tif 000008
【００２７】
0004680104.tif 000009
【００２８】
【数８】
0004680104.tif 000010
【００２９】
（５）点ｊに対応する、ｋの同心球上の点［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは球を区別する数字、ｊは点を区別する数字）について、それに対応する全てのカメラのディジタル画像座標系上の点の位置［ｕＣｉｊｋ，ｖＣｉｊｋ］Ｔ（ｉはカメラを区別する数字、ｊは単位球面上の点を区別する数字、ｋは球を区別する数字）の色ＤＣｉｊｋを、パノラマ画像座標系の原点（同心球の中心）、球面上の点の位置、カメラの物体側主点の位置の相対的な関係を考慮してブレンディングし、そのブレンディングした色Ｄｊｋを得る。
この色Ｄｊｋを、点ｊに対応する同心球ｋの表面の点の座標［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは球を区別する数字、ｊは点を区別する数字）のテクスチャとして保存する。
ブレンディングは、例えば、下記（１５）式にしたがって行われる。
（１５）式のＷＣｉｊｋは、球の中心、すなわち、視点位置と、ｋの球面上の点ｊの位置［ＸＣ０ｊｋ，ＹＣ０ｊｋ，ＺＣ０ｊｋ］Ｔと、カメラＣｉの物体側主点の位置ＴＣ０Ｃｊ＝［ＴＣ０ｊｋＸ，ＴＣ０ｊｋＹ，ＴＣ０ｊｋＺ］Ｔによって、下記（１６）式のように決められる。
なお、（１６）式において、ｆＷ［］は広義の単調増加関数であり、例えば、下記（１７）式のようにしても良い。但し、σは適当な定数であり、画像によって適宜決める。
【００３０】
【数９】
0004680104.tif 000011
【００３１】
（６）ある同心球ｋについて、単位球面上の全ての点ｊに対応する同心球ｋの球面上の点について、前述の（３）〜（５）を行い、類似度とテクスチャの計算と保存を行う。
（７）全ての同心球について、前述の（３）〜（６）を行い、類似度とテクスチャの計算と保存を行う。
類似度を保存した同心球で構成されたものを類似度マップと呼ぶこととする。そして、それぞれの同心球を類似度マップの層と呼ぶこととし、それぞれの層は同心球を区別するときに使用したｋで区別することとする。
同様に、テクスチャを保存した同心球で構成されたものをテクスチャマップと呼ぶこととする。そして、それぞれの同心球をテクスチャマップの層と呼ぶこととし、それぞれの層は同心球を区別したときに使用したｋで区別することとする。
（８）単位球面上のある点ｊに対応する色ベクトルＤｊ０（ｊは単位球面上の点を区別する数字、０は単位球を表す数字であり、球を区別する数字ｋを０としたもの）を、対応する各同心球上の点にマッピングされた全ての類似度マップの類似度Ｒｊｋで決まる割合で、対応する各同心球上の点にマッピングされた全てのテクスチャマップのテクスチャＤｊｋをブレンディングすることで得る。例えば、下記（１８）式のようにする。
【００３２】
【数１０】
0004680104.tif 000012
【００３３】
（９）単位球面上の全ての点について、前述の（３）〜（８）を行い、単位球面上に画像を得る。
（１０）（９）で得られた画像、つまり、Ｄｊ０を極座標［１，θＣ０ｊ，φＣ０ｊ］Ｔの画素値とする画像をパノラマ画像として出力する。
以上説明したように、本実施例では、類似度マップとテクスチャマップによって、三次元空間上の各点における物体の存在する可能性に関連する類似度マップと、その点における物体の色を三次元空間に配置することが可能となるため、カメラのレンズの主点が一致しない条件で撮られた画像からでも、物体の画像がぶれない状態でパノラマ画像を作成することが可能となる。
なお、前述の（４）において、カメラ間の類似度を計算する際に、単位球面上のある点に対応するカメラ画像が１つしかなかった場合、類似度を０以外の値とすれば、対応する画像が１枚しかない領域においても、複数の画像に対応点がある場合と同様の処理によってパノラマ画像を作成できる。
これを行うためには、例えば、複数の対応点があった場合の類似度が０〜１の間の値をとる場合には、対応する画像が１枚しかなかった場合の類似度は常に１とするなどがあげられる。
【００３４】
［実施例２］
図３は、本発明の実施例２のパノラマ画像作成方法について、幾何学的な構成の例を示す図である。
同図において、３０１は最終的なパノラマ画像を投射する半径１の単位円柱、３０２は３０１の単位円柱の中心軸、３０３はカメラ１のレンズの主点、３０４はカメラ２のレンズの主点、３０５はカメラ１の光軸、３０６はカメラ２の光軸、３０７はカメラ１で撮像された画像、３０８はカメラ２で撮像された画像、３１１は３０２の単位円柱の中心軸を中心軸とする複数の同心円柱が層状に形成され、複数のカメラの画像間の類似度をその同心円柱の面上に配置した類似度マップ、３１２はカメラ１、２で作成される類似度マップの範囲、３１３は３０２の単位円柱と中心軸が同一な複数の同心円柱が層状に形成され、複数のカメラの画像間の色情報から計算されたテクスチャをその同心円柱の面上に配置したテクスチャマップ、３１４はカメラ１、２で作成されるテクスチャマップの範囲である。
図３では、説明を簡単にするために、３０７と３０８のカメラ１，２の画像の光軸が紙面上に配置し、同時に、単位円柱の軸が紙面と垂直となるように配置されるようにしているが、それらの光軸が紙面上に無い場合であっても、あるいは、単位円柱の軸が紙面と垂直でない場合であっても、原理は変わらない。
また、図３では、説明を簡単にするために、本来２つよりも多い画像を使用するところを、２つの画像のみ示しているが、２つよりも多い画像であったとしても、原理は変わらない。
【００３５】
カメラが規定する座標系をカメラ座標系と呼ぶこととする。このカメラ座標系では、原点は、カメラのレンズの物体側主点と像側主点であるが、レンズヘの光の入射に関する座標の原点は物体側主点となり、レンズからの光の出射に関する座標の原点は像側主点となる。ここでカメラＣｉ（ただし、ｉはカメラを区別する番号であり、ｉ＝１，２，３，…である。）の規定する座標系を以下のように定義する。
ＺＣｉはレンズ光軸と一致し、カメラヘの光の入射とは反対方向をプラス方向とする。
ＸＣｉ軸は、原点を含むＺＣｉ軸と直交した面内にあり、二次元撮像素子の水平走査方向と平行な軸である。そして水平走査方向をプラス方向とする。
ＹＣｉ軸は、ＺＣｉ軸とＸＣｉ軸の両方と直交する軸であり、右手系としてＹＣｉ軸のプラス方向を決めるものとする。
カメラの撮像素子である二次元撮像素子が規定する座標系をディジタル画像座標系と呼ぶこととする。このディジタル画像座標系では、原点は、１フレームの走査の起点とし、水平走査方向と平行な軸をｕＣｉ軸とし、垂直走査方向と平行な軸をｖＣｉ軸とする。
パノラマ画像が規定する座標系をパノラマ画像座標系と呼ぶこととする。このパノラマ画像座標系の原点は、パノラマ画像を構成する際の視点位置であり、この位置をＣ０呼ぶこととする。
この原点を中心に任意のデカルト座標系の軸を決める。この系の座標を［ＸＣ０，ＹＣ０，ＺＣ０］Ｔと表すこととする。
【００３６】
図４は、本実施例のパノラマ画像作成方法を説明するためのフローチャートであり、３０１の単位円柱上にパノラマ画像を作成するための処理手順を示すフローチャートである。なお、本実施例のパノラマ画像作成方法は、コンピュータにより実行されるものであり、各カメラ画像は記憶装置に記憶される。
ユーザが欲する奥行き方向の解像度に応じて、必要な数の同心円柱を準備し（ステップＳ２１）、同心円柱面上の各点に対するカメラ画像上の対応点を計算する（ステップＳ２２）。
次に、同心円柱面上の各点に対するカメラ画像上の対応点間の類似度を計算し（ステップＳ２３）、同心円柱面上の各点に対するテクスチャを計算する（ステップＳ２４）。
前述のステップＳ２２〜ステップＳ２４の処理を、全ての点に対して実行した後（ステップＳ２５）、同心円柱の中心から直線を延ばし、直線と交わる各同心円柱面の交点の類似度とテクスチャより、各直線に対するテクスチャを計算する（ステップＳ２６）。
そして、各直線に対するテクスチャをパノラマ画像として出力する（ステップＳ２７）。
【００３７】
以下、本実施例のパノラマ画像作成方法について詳細に説明する。
（１）ユーザが欲する奥行きの範囲を定める。さらに、ユーザが欲する奥行き方向のレゾリューションとなる数だけ、パノラマ画像座標系の原点を通る線を中心軸とする同心円柱を定める。
このとき定めた同心円柱の半径をｒＣ０ｋ（ｋは円柱を区別する数字）とする。なお、それぞれの円柱の高さは、例えば、各円柱に射影された画像が収まる高さ、もしくは、作成したいパノラマ画像の対応点が収まる高さよりも高く決める。
（２）ｋ＝０のときの同心円柱を単位円柱、つまり、半径をｒＣ００＝１とする。その単位円柱上に、パノラマ画像を作成するとして、ユーザが欲する画像のレゾリューションを満たす複数のサンプル点を定め、それらの座標を［１，θＣ０ｊ，φＣ０ｊ］Ｔ（ｊは点を区別する数字）とする。
（３）半径がｒＣ０ｋ，ｋ≠０、となる円柱面上で、上記の点ｊに対応する点［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは円柱を区別する数字、ｊは単位円柱面上の点を区別する数字）について、それに対応する全てにカメラのディジタル画像座標系上の点の位置［ｕＣｉｊｋ，ｖＣｉｊｋ］Ｔ（ｉはカメラを区別する数字、ｊは単位円柱面上の点を区別する数字、ｋは円柱を区別する数字）を求める。
【００３８】
単位円柱面上の点からディジタル画像座標系上の点への射影は、例えば、以下のように行われる。
カメラのレンズの像側主点と、カメラの二次元撮像素子の受光面までの距離をｆＣｉ、カメラの二次元撮像素子のｕＣｉ軸方向のピクセルピッチを１／ｋｕＣｉ、ｖＣｉ軸方向を１／ｋｖＣｉ、カメラの二次元撮像素子の水平走査方向、と垂直走査方向の成す角をψＣｉ、カメラの光軸と二次元撮像素子との交点の座標を、ディジタル画像座標系では、［ｕＣｉＯ，ｖＣｉＯ］Ｔと表すこととする。なお、これらの値は、カメラ内部パラメタとして既知である。
ここで、パノラマ画像座標系におけるカメラＣｉの回転を表す行列を、ＲＣ０Ｃｉ＝［ｒＣ０ＣｉＸ，ｒＣ０ＣｉＹ，ｒＣ０ＣｉＺ］Ｔ（ｒＣ０ＣｉＸ，ｒＣ０ＣｉＹ，ｒＣ０ＣｉＺは、それぞれパノラマ画像座標系におけるカメラＣｉのＸ、Ｙ、Ｚ軸方向の単位ベクトル）、パノラマ画像座標系におけるカメラＣｉの原点の座標をＴＣ０Ｃｉ＝［ＴＣ０ＣｉＸ，ＴＣ０ＣｉＹ，ＴＣ０ＣｉＺ］Ｔ（ＴＣ０ＣｉＸ、ＴＣ０ＣｉＹ、ＴＣ０ＣｉＺは、それぞれパノラマ画像座標系におけるカメラＣｉの原点のＸ、Ｙ、Ｚ座標）とすると、カメラＣｉのパノラマ画像座標系における射影行列ＰＣ０Ｃｉは、下記（１９）式のように表される。
【００３９】
【数１１】
0004680104.tif 000013
【００４０】
前述の射影行列を使用すると、ある点のパノラマ画像座標系上の位置を[ＸＣ０，ＹＣ０，ＺＣ０］Ｔとしたときの、その点がカメラの二次元撮像素子に結像する点の位置をディジタル画像座標系で[ｕＣｉ，ｖＣｉ］Ｔと表したとき、下記（２０）式の関係にあり、下記（２１）式となる。
パノラマ座標系を極座標系で表したときの座標［ｒＣ０，θＣ０，φＣ０］Ｔは、下記（２２）式となる。したがって、（ｕＣｉｊｋ，ｖＣｉｊｋ）は、下記（２３）式で求められる。
【００４１】
【数１２】
0004680104.tif 000014
【００４２】
（４）各カメラで撮像している画像の［ｕＣｉｊｋ，ｖＣｉｊｋ］Ｔ（ｉはカメラを区別する数字、ｊは単位円柱面上の点を区別する数字、ｋは円柱を区別する数字）の位置にある画素、または、その画素を含むその周りの複数の画素で形成される画素ブロックを抽出し、カメラ間におけるそれらの類似度Ｒｊｋを計算し、これを、点ｊに対応する同心円柱ｋの表面の点の座標［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは円柱を区別する数字、ｊは点を区別する数字）の類似度として保存する。
類似度は、例えば、対応する点の画素値の相違度を用いて、下記（２４）式で計算される値である。
【００４３】
【数１３】
0004680104.tif 000015
【００４４】
0004680104.tif 000016
【００４５】
【数１４】
0004680104.tif 000017
【００４６】
（５）点ｊに対応する、ｋの同心円柱上の点［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは円柱を区別する数字、ｊは点を区別する数字）について、それに対応する全てのカメラのディジタル画像座標系上の点の位置［ｕＣｉｊｋ，ｖＣｉｊｋ］Ｔ（ｉはカメラを区別する数字、ｊは単位円柱面上の点を区別する数字、ｋは円柱を区別する数字）の色ＤＣｉｊｋを、パノラマ画像座標系の原点、円柱面上の点の位置、カメラの物体側主点の位置の相対的な関係を考慮してブレンディングし、そのブレンディングした色Ｄｊｋを得る。
この色Ｄｊｋを、点ｊに対応する同心円柱ｋの表面の点の座標［ｒＣ０ｋ，θＣ０ｊ，φＣ０ｊ］Ｔ（ｋは円柱を区別する数字、ｊは点を区別する数字）のテクスチャとして保存する。
ブレンディングは、例えば、下記（２７）式にしたがって行われる。
（２７）式のＷＣｉｊｋは、パノラマ画像座標系の原点、すなわち、視点位置と、ｋの円柱面上の点ｊの位置［ＸＣ０ｊｋ，ＹＣ０ｊｋ，ＺＣ０ｊｋ］Ｔと、カメラＣｉの物体側主点の位置ＴＣ０Ｃｊ＝［ＴＣ０ｊｋＸ，ＴＣ０ｊｋＹ，ＴＣ０ｊｋＺ］Ｔによって、下記（２８）式のように決められる。
なお、（２８）式において、ｆＷ［］は広義の単調増加関数であり、例えば、下記（２９）式のようにしても良い。但し、σは適当な定数であり、画像によって適宜決める。
【００４７】
【数１５】
0004680104.tif 000018
【００４８】
（６）ある同心円柱ｋについて、単位円柱面上の全ての点ｊに対応する同心円柱ｋの円柱面上の点について、前述の（３）〜（５）を行い、類似度とテクスチャの計算と保存を行う。
（７）全ての同心円柱について、前述の（３）〜（６）を行い、類似度とテクスチャの計算と保存を行う。
類似度を保存した同心円柱で構成されたものを類似度マップと呼ぶこととする。そして、それぞれの同心円柱を類似度マップの層と呼ぶこととし、それぞれの層は同心円柱を区別するときに使用したｋで区別することとする。
同様に、テクスチャを保存した同心円柱で構成されたものをテクスチャマップと呼ぶこととする。そして、それぞれの同心円柱をテクスチャマップの層と呼ぶこととし、それぞれの層は同心円柱を区別したときに使用したｋで区別することとする。
（８）単位円柱面上のある点ｊに対応する色ベクトルＤｊ０（ｊは単位円柱面上の点を区別する数字、０は単位円柱を表す数字であり、円柱を区別する数字ｋを０としたもの）を、対応する各同心円柱上の点にマッピングされた全ての類似度マップの類似度Ｒｊｋで決まる割合で、対応する各同心円柱上の点にマッピングされた全てのテクスチャマップのテクスチャＤｊｋをブレンディングすることで得る。例えば、下記（３０）式のようにする。
【００４９】
【数１６】
0004680104.tif 000019
【００５０】
（９）単位円柱面上の全ての点について、前述の（３）〜（８）を行い、単位円柱面上に画像を得る。
（１０）（９）で得られた画像、つまり、Ｄｊ０を極座標［１，θＣ０ｊ，φＣ０ｊ］Ｔの画素値とする画像をパノラマ画像として出力する。
以上説明したように、本実施例では、類似度マップとテクスチャマップによって、三次元空間上の各点における物体の存在する可能性に関連する類似度と、その点における物体の色を三次元空間に配置することが可能となるため、カメラのレンズの主点が一致しない条件で撮られた画像からでも、物体の画像がぶれない状態でパノラマ画像を作成することが可能となる。
なお、前述の（４）において、カメラ間の類似度を計算する際に、単位円柱面上のある点に対応するカメラ画像が１つしかなかった場合、類似度を０以外の値とすれば、対応する画像が１枚しかない領域においても、複数の画像に対応点がある場合と同様の処理によってパノラマ画像を作成できる。
これを行うためには、例えば、複数の対応点があった場合の類似度が０〜１の間の値をとる場合には、対応する画像が１枚しかなかった場合の類似度は常に１とするなどがあげられる。
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【図面の簡単な説明】
【００５１】
【図１】本発明の実施例１のパノラマ画像作成方法について、幾何学的な構成の例を示す図である。
【図２】本発明の実施例１のパノラマ画像作成方法を説明するためのフローチャートである。
【図３】本発明の実施例２のパノラマ画像作成方法について、幾何学的な構成の例を示す図である。
【図４】本発明の実施例２のパノラマ画像作成方法を説明するためのフローチャートである。
【図５】従来のパノラマ画像作成方法について、幾何学的な構成の例を示す図である。
【符号の説明】
【００５２】
１０１，２０１  単位球
１０２，２０２  位球の中心
１０３，２０３，３０３  カメラ１のレンズの主点
１０４，２０４，３０４  カメラ２のレンズの主点
１０５，２０５，３０５  カメラ１の光軸
１０６，２０６，３０６  カメラ２の光軸
１０７，２０７，３０７  カメラ１の画像
１０８，２０８，３０８  カメラ２の画像
１０９  カメラ１の投射像の範囲
１１０  カメラ２の投射像の範囲
１１２  カメラ１、２の両方で重複する投射像の範囲
２１１，３１１  類似度マップ
２１２，  カメラ１、２で作成される類似度マップの範囲
２１３，３１３  テクスチャマップ
２１４，３１４  カメラ１、２で作成されるテクスチャマップの範囲
３０１  単位円柱
３０２  単位円柱の中心軸
【図１】
0004680104.tif 000020
【図２】
0004680104.tif 000021
【図３】
0004680104.tif 000022
【図４】
0004680104.tif 000023
【図５】
0004680104.tif 000024