(57)【要約】【課題】  カメラ回転運動を推定することで、一般的なシーンに対しても安定してカメラ運動と画像奥行分布を推定する。【解決手段】  本発明は、読み込まれた画像Ｆ１から選択したＮ個の特徴点Ｐｎと画像Ｆ２での位置Ｑｎを検出し、特徴点ＰｎとＱｎの座標値を取得し、該Ｐｎと該Ｑｎを用いて、画像Ｆ１から取り込んだときから画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定し、画像Ｆ１を取り込んだときのカメラの位置から、記憶手段に格納されている回転運動量だけカメラを回転させたときのＮ個の特徴点の画像上の位置Ｒｎを算出し、ＲｎとＱｎの座標値を取得し、画像Ｆ２の特徴点Ｑｎに対応する被写体上の点に対する奥行分布を算出する。【選択図】  図１
2006285946.tif 000002
【特許請求の範囲】
【請求項１】
視点を移動させながら同じ被写体を撮影して得られた２枚の画像Ｆ１とＦ２を読み込んで、被写体各部のカメラの距離に対応する画像奥行分布を推定する画像の奥行分布推定装置における、画像の奥行分布推定方法において、
特徴点対応付け手段により、前記画像Ｆ１から選択したＮ個の特徴点Ｐｎ，ｎ＝１，２，…，Ｎと前記画像Ｆ２での位置Ｑｎ，ｎ＝１，２，…，Ｎを検出する特徴点対応付けステップと、
回転運動推定手段により、前記特徴点ＰｎとＱｎの座標値を取得し、該Ｐｎと該Ｑｎを用いて、前記画像Ｆ１を取り込んだときから前記画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定し、該回転運動量を該記憶手段に格納する回転運動推定ステップと、
回転運動後特徴点位置算出手段により、前記画像Ｆ１を取り込んだときのカメラの位置から、前記記憶手段に格納されている前記回転運動量だけカメラを回転させたときのＮ個の特徴点の画像上の位置Ｒｎ，ｎ＝１，２，…，Ｎを算出し、該記憶手段に格納する回転運動後特徴点位置算出ステップと、
奥行情報算出手段により、前記記憶手段から前記Ｒｎと前記Ｑｎ，ｎ＝１，２，…，Ｎの座標値を取得し、前記画像Ｆ２の特徴点Ｑｎ，ｎ＝１，２，…，Ｎに対応する被写体上の点に対する奥行分布を算出する奥行情報算出ステップと、
を行うことを特徴とする画像の奥行分布推定方法。
【請求項２】
前記回転運動推定ステップにおいて、
前記画像Ｆ１と前記画像Ｆ２を撮影したときのカメラの位置の移動において、カメラ光軸方向の移動が無い場合のカメラの回転運動を推定し、その推定結果が妥当と判定された場合には、回転運動推定結果を前記記憶手段に出力するステップと、
妥当でない判定された場合には、前記画像Ｆ１と前記画像Ｆ２を撮影したときのカメラ位置の水平方向と垂直方向の移動量をカメラ光軸方向の移動量に対する比としてカメラ並進移動比を推定するステップと、
推定結果が妥当であると判定された場合には、回転運動推定結果とカメラ並進移動比を前記記憶手段に出力するステップと、
妥当でないと判定された場合には、回転運動の推定が不可能であることを示す信号を前記記憶手段に出力するステップと、を行う請求項１記載の画像の奥行分布推定方法。
【請求項３】
前記回転運動推定ステップは、
被写体上の２つの点ＯｋとＯｂ（以下、Ｏｋを計測点、Ｏｂを基準点と呼ぶ）のカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂを、カメラ並進移動の前後で撮影した２つの画像におけるＯｋとＯｂの座標値から算出する奥行比算出ステップと、
Ｎ個の特徴点から選択した２つの特徴点を前記奥行比算出手段における基準点に設定し、該基準点を除くＮ−２個の特徴点を計測点に設定するステップと、を行い、
前記回転運動後特徴点位置算出ステップは、
前記画像Ｆ１を取り込んだ時のカメラの位置から、予め設定しておいた回転運動量だけカメラを回転させた時に得られる画像ＦｒにおけるＮ個の特徴点の位置Ｓｎ（ｎ＝１，２，…，Ｎ）を算出し、前記記憶手段に格納するステップを行い、
前記奥行情報算出ステップは、
２つの基準点の前記画像Ｆｒにおける位置をＳ１、Ｓ２、前記画像Ｆ２における位置をＱ１，Ｑ２とし、Ｎ−２個の計測点の該画像Ｆｒにおける位置をＳｋ（ｋ＝３，４，…，Ｎ）、該画像Ｆ２における位置をＱｋ（ｋ＝３，４，…，Ｎ）として、各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を前記奥行比算出手段により算出し、２つの基準点に対するカメラからの距離の比Ｚ２／Ｚ１を、Ｚｋ／Ｚ１とＺｋ／Ｚ２の除算からＮ−２通りの値を求め、前記記憶手段に格納するステップを行い、
前記回転運動推定ステップにおいて、
前記回転運動後特徴点位置算出ステップ実行時に入力する回転運動量を記憶手段に複数用意しておき、各回転運動量に対して前記奥行情報算出ステップで求めたＮ−２通りのＺ２／Ｚ１の値の変動が最も小さい場合の回転運動量を、前記画像Ｆ１から前記画像Ｆ２への回転運動推定結果として前記記憶手段に出力する請求項１記載の画像の奥行分布推定方法。
【請求項４】
前記奥行比算出ステップにおいて、
被写体上の基準点Ｏｂと計測点Ｏｋのカメラ並進移動前に撮影した画像における位置をそれぞれＳｂとＳｋ、カメラ並進移動後に撮影した画像における位置をＱｂとＱｋとしたときに、
前記位置Ｓｂと前記位置Ｓｋの座標を結ぶ直線とＱｂの座標値の点との最短距離ＱｂＨｂ、及び、該位置Ｓｂと該位置Ｓｋの座標値を結ぶ直線とＱｋの座標値の点との最短距離ＱｋＨｋを算出し、それらの比であるＱｂＨｂ／ＱｋＨｋを、被写体上の点、ＯｋとＯｂのカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂとして記憶手段に出力する、
請求項３記載の画像の奥行分布推定方法。
【請求項５】
前記奥行比算出ステップは、
各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を算出するときに、ｋ番目の計測点に対して求めた、前記ＱｂＨｂ、または、前記最短距離ＱｋＨｋが予め設定しておいた値より小さい場合には、各基準点と計測点とのカメラからの距離の比を算出しない、
請求項４記載の画像の奥行分布推定方法。
【請求項６】
視点を移動させながら同じ被写体を撮影して得られた２枚の画像Ｆ１とＦ２を読み込んで、被写体各部のカメラの距離に対応する画像奥行分布を推定する画像の奥行分布推定装置であって、
前記画像Ｆ１から選択したＮ個の特徴点Ｐｎ，ｎ＝１，２，…，Ｎと前記画像Ｆ２での位置Ｑｎ，ｎ＝１，２，…，Ｎを検出する特徴点対応付け手段と、
前記特徴点ＰｎとＱｎの座標値を取得して、該Ｐｎと該Ｑｎを用いて、前記画像Ｆ１を取り込んだときから前記画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定し、該回転運動量を前記記憶手段に格納する回転運動推定手段と、
前記画像Ｆ１を取り込んだときのカメラの位置から、前記記憶手段に格納されている前記回転運動量だけカメラを回転させたときのＮ個の特徴点の画像上の位置Ｒｎ，ｎ＝１，２，…，Ｎを算出し、前記記憶手段に格納する第１の回転運動後特徴点位置算出手段と、
前記記憶手段から前記Ｒｎと前記Ｑｎ，ｎ＝１，２，…，Ｎの座標値を取得し、前記画像Ｆ２の特徴点Ｑｎ，ｎ＝１，２，…，Ｎに対応する被写体上の点に対する奥行分布を算出する奥行情報算出手段と、
を有することを特徴とする画像の奥行分布推定装置。
【請求項７】
前記回転運動推定手段は、
前記画像Ｆ１と前記画像Ｆ２を撮影したときのカメラの位置の移動において、カメラ光軸方向の移動が無い場合のカメラの回転運動を推定する回転運動推定Ａ手段と、
前記回転運動推定Ａ手段での回転運動推定結果の妥当性を判定する判定Ａ手段と、
前記カメラの光軸方向の移動がある場合のカメラ回転運動を推定すると共に、前記画像Ｆ１と前記画像Ｆ２を撮影したときのカメラ位置の水平方向と垂直方向の移動量をカメラ光軸の方向の移動量に対してカメラ並進移動比を推定する回転運動推定Ｂ手段と、
前記回転運動推定Ｂ手段での回転運動推定結果の妥当性を判定する判定Ｂ手段と、
最初に、前記回転運動推定Ａ手段でカメラ回転運動を推定し、その推定結果が前記判定Ａ手段で妥当であると判定された場合には、該回転運動推定Ａ手段の回転運動推定結果を出力し、妥当でないと判定された場合には、前記回転運動推定Ｂ手段でカメラ回転運動を推定し、前記判定Ｂ手段で該回転運動推定Ｂ手段の推定結果が妥当であると判定された場合には、該回転運動推定Ｂ手段の回転運動推定結果とカメラ並進移動比を出力し、該判定Ｂ手段で妥当でないと判定された場合には、回転運動の推定が不可能であることを示す信号を出力するように制御する制御手段と、
を有する請求項６記載の画像の奥行分布推定装置。
【請求項８】
前記回転運動推定手段は、
被写体上の２つの点ＯｋとＯｂ（以下、Ｏｋを計測点、Ｏｂを基準点と呼ぶ）のカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂを、カメラ並進移動の前後で撮影した２つの画像におけるＯｋとＯｂの座標値から算出し、記憶手段に格納する奥行比算出手段と、
Ｎ個の特徴点から選択した２つの特徴点を前記奥行比算出手段における基準点に設定し、該基準点を除くＮ−２個の特徴点を計測点に設定する手段と、を有し、
前記回転運動後特徴点位置算出手段は、
前記画像Ｆ１を取り込んだ時のカメラの位置から、予め設定しておいた回転運動量だけカメラを回転させた時に得られる画像ＦｒにおけるＮ個の特徴点の位置Ｓｎ（ｎ＝１，２，…，Ｎ）を算出する手段を有し、
前記奥行情報算出手段は、
２つの基準点の前記画像Ｆｒにおける位置をＳ１、Ｓ２、前記画像Ｆ２における位置をＱ１，Ｑ２とし、Ｎ−２個の計測点の該画像Ｆｒにおける位置をＳｋ（ｋ＝３，４，…，Ｎ）、該画像Ｆ２における位置をＱｋ（ｋ＝３，４，…，Ｎ）として、各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を前記奥行比算出手段により算出し、２つの基準点に対するカメラからの距離の比Ｚ２／Ｚ１を、Ｚｋ／Ｚ１とＺｋ／Ｚ２の除算からＮ−２通りの値を求める手段を有し、
前記回転運動推定手段は、
前記回転運動後特徴点位置算出手段に入力する回転運動量を記憶手段に複数用意しておき、各回転運動量に対して前記基準点奥行比候補算出手段で求めたＮ−２通りのＺ２／Ｚ１の値の変動が最も小さい場合の回転運動量を、前記画像Ｆ１から前記画像Ｆ２への回転運動推定結果として前記記憶手段に出力する請求項６記載の画像の奥行分布推定装置。
【請求項９】
前記奥行比算出手段は、
被写体上の基準点Ｏｂと計測点Ｏｋのカメラ並進移動前に撮影した画像における位置をそれぞれＳｂとＳｋ、カメラ並進移動後に撮影した画像における位置をＱｂとＱｋとしたときに、
前記位置Ｓｂと前記位置Ｓｋの座標を結ぶ直線とＱｂの座標値の点との最短距離ＱｂＨｂ、及び、該位置Ｓｂと該位置Ｓｋの座標値を結ぶ直線とＱｋの座標値の点との最短距離ＱｋＨｋを算出し、それらの比であるＱｂＨｂ／ＱｋＨｋを、被写体上の点、ＯｋとＯｂのカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂとして記憶手段に出力する手段を含む、
請求項８記載の画像の奥行分布推定装置。
【請求項１０】
前記奥行比算出手段は、
各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を算出するときに、ｋ番目の計測点に対して求めた、前記ＱｂＨｂ、または、前記最短距離ＱｋＨｋが予め設定しておいた値より小さい場合には、各基準点と計測点とのカメラからの距離の比を算出しない
請求項９記載の画像の奥行分布推定装置。
【請求項１１】
視点を移動させながら同じ被写体を撮影して得られた２枚の画像Ｆ１とＦ２が入力され、被写体各部のカメラの距離に対応する画像奥行分布を推定する画像の奥行分布推定プログラムであって、
コンピュータに、
前記画像Ｆ１から選択したＮ個の特徴点Ｐｎ，ｎ＝１，２，…，Ｎと画像Ｆ２での位置Ｑｎ，ｎ＝１，２，…，Ｎを検出する特徴点対応付けステップと、
前記特徴点ＰｎとＱｎの座標値を取得し、該Ｐｎと該Ｑｎを用いて、前記画像Ｆ１を取り込んだときから前記画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定し、該回転運動量を該記憶手段に格納する回転運動推定ステップと、
前記画像Ｆ１を取り込んだときのカメラの位置から、前記記憶手段に格納されている前記回転運動量だけカメラを回転させたときのＮ個の特徴点の画像上の位置Ｒｎ，ｎ＝１，２，…，Ｎを算出し、該記憶手段に格納する回転運動後特徴点位置算出ステップと、
前記記憶手段から前記Ｒｎと前記Ｑｎ，ｎ＝１，２，…，Ｎの座標値を取得し、前記画像Ｆ２の特徴点Ｑｎ，ｎ＝１，２，…，Ｎに対応する被写体上の点に対する奥行分布を算出する奥行情報算出ステップと、
を実行させることを特徴とする画像の奥行分布推定プログラム。
【請求項１２】
前記回転運動推定ステップにおいて、
前記画像Ｆ１と前記画像Ｆ２を撮影したときのカメラの位置の移動において、カメラ光軸方向の移動が無い場合のカメラの回転運動を推定し、その推定結果が妥当と判定された場合には、回転運動推定結果を前記記憶手段に出力し、
妥当でない判定された場合には、該画像Ｆ１と該Ｆ２を撮影したときのカメラ位置の水平方向と垂直方向の移動量をカメラ光軸方向の移動量に対する比としてカメラ並進移動比を推定し、
推定結果が妥当であると判定された場合には、回転運動推定結果とカメラ並進移動比を該記憶手段に出力し、
妥当でないと判定された場合には、回転運動の推定が不可能であることを示す信号を該記憶手段に出力する請求項１１記載の画像の奥行分布推定プログラム。
【請求項１３】
前記回転運動推定ステップは、
被写体上の２つの点ＯｋとＯｂ（以下、Ｏｋを計測点、Ｏｂを基準点と呼ぶ）のカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂを、カメラ並進移動の前後で撮影した２つの画像におけるＯｋとＯｂの座標値から算出する奥行比算出ステップと、
Ｎ個の特徴点から選択した２つの特徴点を前記奥行比算出ステップにおける基準点に設定し、該基準点を除くＮ−２個の特徴点を計測点に設定するステップと、を行い、
前記回転運動後特徴点位置算出ステップは、
前記画像Ｆ１を取り込んだ時のカメラの位置から、予め設定しておいた回転運動量だけカメラを回転させた時に得られる画像ＦｒにおけるＮ個の特徴点の位置Ｓｎ（ｎ＝１，２，…，Ｎ）を算出し、記憶手段に格納するステップを行い、
前記奥行情報算出ステップは、
２つの基準点の前記画像Ｆｒにおける位置をＳ１、Ｓ２、前記画像Ｆ２における位置をＱ１，Ｑ２とし、Ｎ−２個の計測点の該画像Ｆｒにおける位置をＳｋ（ｋ＝３，４，…，Ｎ）、該画像Ｆ２における位置をＱｋ（ｋ＝３，４，…，Ｎ）として、各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を前記奥行比算出手段により算出し、２つの基準点に対するカメラからの距離の比Ｚ２／Ｚ１を、Ｚｋ／Ｚ１とＺｋ／Ｚ２の除算からＮ−２通りの値を求めるステップを行い、
前記回転運動推定ステップでは、
前記回転運動後特徴点位置算出ステップ実行時に入力する回転運動量を記憶手段に複数用意しておき、各回転運動量に対して前記基準点奥行比候補算出ステップで求めたＮ−２通りのＺ２／Ｚ１の値の変動が最も小さい場合の回転運動量を、前記画像Ｆ１から前記画像Ｆ２への回転運動推定結果として前記記憶手段に出力する請求項１１記載の画像の奥行分布推定プログラム。
【請求項１４】
前記奥行比算出ステップは、
被写体上の基準点Ｏｂと計測点Ｏｋのカメラ並進移動前に撮影した画像における位置をそれぞれＳｂとＳｋ、カメラ並進移動後に撮影した画像における位置をＱｂとＱｋとしたときに、
ＳｂとＳｋの座標を結ぶ直線とＱｂの座標値の点との最短距離ＱｂＨｂ、及び、ＳｂとＳｋの座標値を結ぶ直線とＱｋの座標値の点との最短距離ＱｋＨｋを算出し、それらの比であるＱｂＨｂ／ＱｋＨｋを、被写体上の点、ＯｋとＯｂのカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂとして記憶手段に出力する、
請求項１３記載の画像の奥行分布推定プログラム。
【請求項１５】
前記奥行比算出ステップは、
各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を算出するときに、ｋ番目の計測点に対して求めた、前記ＱｂＨｂ、または、前記最短距離ＱｋＨｋが予め設定しておいた値より小さい場合には、各基準点と計測点とのカメラからの距離の比を算出しない、
請求項１４記載の画像の奥行分布推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の奥行分布推定方法及び装置及びプログラムに係り、特に、映像の撮影状況や映像シーンの構成を識別・認識することにより映像の分類やインデキシングを行うことに利用可能な、視点を移動させながら同じ被写体を撮影して得られた２枚の画像から当該２画像間でのカメラ運動と画像奥行分布を推定する画像の奥行分布推定方法及び装置及びプログラムに関する。
【背景技術】
【０００２】
１つのカメラで視点を移動させながら同じ被写体を撮影した動画像から、カメラ運動、及び被写体各部とカメラの距離を推定する代表的な方法として、因子分解法がある。
【０００３】
因子分解法は、カメラの撮像を弱中心射影と仮定してカメラ運動とシーンの３次元形状を計算するものである。視点を移動させて撮影されたＦ枚の画像中のＰ個の特徴点が対応付けられているとする。特徴点ｐ，ｐ＝１，２，…，Ｐの画像ｆ，ｆ＝１，２，…，Ｆでの座標を（ｕｆｐ，ｖｆｐ）とし、以下の行列Ｗを定義する。
【０００４】
【数１】
2006285946.tif 000003
次に、Ｗの各行毎の平均値を求め、Ｗの各要素から対応する行の平均値を差し引いた行列Ｗ’を作成する。Ｗ’は計測行列と呼ばれ、この計測行列の特異値分解により、カメラの運動を表す被写体の形状を現す行列を求める（例えば、非特許文献１参照）。
【０００５】
次に、２つ目の従来方法として、カメラにより３次元の世界がレンズを通して２次元、すなわち、画像平面上に投影される現象を正確に記述した中心射影を用いた、評価関数の最小化により求める方法を説明する。
【０００６】
カメラを移動させてｍ枚の画像を取り込んだときに、被写体上のｎ個の点が各画像に射影される位置と、実際に得られる画像での位置とのユークリッド距離の自乗和を評価関数Ｃとする。
【０００７】
【数２】
2006285946.tif 000004
ここで、ｆｊはｊ（Ｊ＝１，２，…，ｍ）番目の画像の焦点距離、（ｕｉｊ，ｖｉｊ）はｊ番目の画像におけるｉ（ｉ＝１，２，…，ｎ）番目の点の座標（Ｘｉｊ，Ｙｉｊ，Ｚｉｊ）は、ｊ番目の画像のカメラ座標系におけるｉ番目の点の３次元位置である。
【０００８】
原点が被写体の重心で、向きが１番目の画像のカメラ画像系と同じ座標系を物体座標系として定義し、物体座標系における被写体上のｉ番目の点の３次元位置を（Ｘｉ，Ｙｉ，Ｚｉ）、ｊ番目の画像のカメラ座標系の物体座標系に対する回転行列をＲｊ，並進ベクトルをＴｊとすると次式が成り立つ。
【０００９】
【数３】
2006285946.tif 000005
式（３）を式（２）に代入し、Ｘｉｊ，Ｙｉｊ，Ｚｉｊを消去すると、ｕｉｊ，ｖｉｊ，ｆｊ，Ｒ１（＝Ｉ，単位行列）が既知パラメータであるので、評価関数は、回転行列Ｒｊ，並進ベクトルＴｊ，物体座標系における被写体上のｉ番目の点の３次元位置（Ｘｉ，Ｙｉ，Ｚｉ）の関数となる。この評価関数が最小となるときのＲｊ，Ｔｊ，Ｘｉ，Ｙｉ，Ｚｉを、適当な初期値を設定し、最急降下法やニュートン法の反復法で求める（例えば、非特許文献２参照）。
【非特許文献１】金出、コンラッド、森田、“因子分解法による物体形状とカメラ運動の復元”、電子情報通信学会論文誌、Vol.J76-D-II, NO.8, pp.1497-1505, 1993
【非特許文献２】辻三郎、徐剛、“３次元ビジョン”、共立出版、pp.128-130, No.43-007, 2001
【発明の開示】
【発明が解決しようとする課題】
【００１０】
映像シーンを遠景画像、街や屋内などの遠近のある画像、特定の対象物を撮影した画像などに分類するための特徴量として画像の奥行分布を求めるときには、被写体の位置がカメラに近いものから遠いものまでを含む場合でも精度よく奥行分布を推定する必要がある。
【００１１】
しかしながら、上記の因子分解法は、カメラの撮像を弱中心射影と仮定しているので、適用できるのは、カメラから遠くにある小さい対象物の形状の推定を行う場合のような、３次元位置を求める被写体上各部のカメラからの距離が被写体の重心との距離に比べて十分小さい場合に限定される。従って、被写体の位置がカメラに近いものから遠いものまでを含む場合には精度よく奥行分布を推定することができないという問題がある。
【００１２】
また、上記の評価関数の最小化により求める方法は、カメラモデルとして中心射影を用いているので、映像分類で求められる一般的なシーンからでも奥行分布が算出できる。しかしながら、解析的に解くことはできず、反復法で求めているので、適切な初期値の設定や解の収束性などの数値計算上の問題がある。
【００１３】
本発明は、上記の点に鑑みなされたもので、カメラ回転運動を推定することで、一般的なシーンに対しても安定してカメラ運動と画像奥行分布を推定することが可能な画像の奥行分布推定方法及び装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
図１は、本発明の原理を説明するための図である。
【００１５】
本発明（請求項１）は、視点を移動させながら同じ被写体を撮影して得られた２枚の画像Ｆ１とＦ２を読み込んで（ステップ１）、のカメラの距離に対応する画像奥行分布を推定する画像の奥行分布推定装置における、画像の奥行分布推定方法において、
特徴点対応付け手段により、画像Ｆ１から選択したＮ個の特徴点Ｐｎ，ｎ＝１，２，…，Ｎと（ステップ２）画像Ｆ２での位置Ｑｎ，ｎ＝１，２，…，Ｎを検出する特徴点対応付けステップ（ステップ３）と、
回転運動推定手段により、特徴点ＰｎとＱｎの座標値を取得し、該Ｐｎと該Ｑｎを用いて、画像Ｆ１を取り込んだときから画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定し、該回転運動量を該記憶手段に格納する回転運動推定ステップ（ステップ４）と、
回転運動後特徴点位置算出手段により、画像Ｆ１を取り込んだときのカメラの位置から、記憶手段に格納されている回転運動量だけカメラを回転させたときのＮ個の特徴点の画像上の位置Ｒｎ，ｎ＝１，２，…，Ｎを算出し、該記憶手段に格納する回転運動後特徴点位置算出ステップ（ステップ５）と、
奥行情報算出手段により、記憶手段からＲｎとＱｎ，ｎ＝１，２，…，Ｎの座標値を取得し、画像Ｆ２の特徴点Ｑｎ，ｎ＝１，２，…，Ｎに対応する被写体上の点に対する奥行分布を算出する奥行情報算出ステップ（ステップ６）と、を行う。
【００１６】
また、本発明（請求項２）は、回転運動推定ステップ（ステップ４）において、
画像Ｆ１と画像Ｆ２を撮影したときのカメラの位置の移動において、カメラ光軸方向の移動が無い場合のカメラの回転運動を推定し、その推定結果が妥当と判定された場合には、回転運動推定結果を記憶手段に出力するステップと、
妥当でない判定された場合には、該画像Ｆ１と該Ｆ２を撮影したときのカメラ位置の水平方向と垂直方向の移動量をカメラ光軸方向の移動量に対する比としてカメラ並進移動比を推定するステップと、
推定結果が妥当であると判定された場合には、回転運動推定結果とカメラ並進移動比を該記憶手段に出力するステップと、
妥当でないと判定された場合には、回転運動の推定が不可能であることを示す信号を該記憶手段に出力するステップと、を行う。
【００１７】
また、本発明（請求項３）は、請求項１の奥行分布推定方法であって、
回転運動推定ステップは、
被写体上の２つの点ＯｋとＯｂ（以下、Ｏｋを計測点、Ｏｂを基準点と呼ぶ）のカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂを、カメラ並進移動の前後で撮影した２つの画像におけるＯｋとＯｂの座標値から算出する奥行比算出ステップと、
Ｎ個の特徴点から選択した２つの特徴点を奥行比算出手段における基準点に設定し、該基準点を除くＮ−２個の特徴点を計測点に設定するステップと、を行い、
回転運動後特徴点位置算出ステップは、
画像Ｆ１を取り込んだ時のカメラの位置から、予め設定しておいた回転運動量だけカメラを回転させた時に得られる画像ＦｒにおけるＮ個の特徴点の位置Ｓｎ（ｎ＝１，２，…，Ｎ）を算出し、記憶手段に格納するステップを行い、
奥行情報算出ステップは、
２つの基準点の画像Ｆｒにおける位置をＳ１、Ｓ２、画像Ｆ２における位置をＱ１，Ｑ２とし、Ｎ−２個の計測点の該画像Ｆｒにおける位置をＳｋ（ｋ＝３，４，…，Ｎ）、該画像Ｆ２における位置をＱｋ（ｋ＝３，４，…，Ｎ）として、各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を奥行比算出手段により算出し、２つの基準点に対するカメラからの距離の比Ｚ２／Ｚ１を、Ｚｋ／Ｚ１とＺｋ／Ｚ２の除算からＮ−２通りの値を求めるステップを行い、
回転運動推定ステップにおいて、
回転運動後特徴点位置算出ステップ実行時に入力する回転運動量を記憶手段に複数用意しておき、各回転運動量に対して奥行情報算出ステップで求めたＮ−２通りのＺ２／Ｚ１の値の変動が最も小さい場合の回転運動量を、画像Ｆ１から画像Ｆ２への回転運動推定結果として記憶手段に出力する。
【００１８】
また、本発明（請求項４）は、請求項３の画像の奥行分布推定方法であって、
奥行比算出ステップにおいて、
被写体上の基準点Ｏｂと計測点Ｏｋのカメラ並進移動前に撮影した画像における位置をそれぞれＳｂとＳｋ、カメラ並進移動後に撮影した画像における位置をＱｂとＱｋとしたときに、
位置Ｓｂと位置Ｓｋの座標を結ぶ直線とＱｂの座標値の点との最短距離ＱｂＨｂ、及び、該位置Ｓｂと該位置Ｓｋの座標値を結ぶ直線とＱｋの座標値の点との最短距離ＱｋＨｋを算出し、それらの比であるＱｂＨｂ／ＱｋＨｋを、被写体上の点、ＯｋとＯｂのカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂとして記憶手段に出力する。
【００１９】
また、本発明（請求項５）は、請求項４の画像の奥行分布推定方法であって、
奥行比算出ステップは、
各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を算出するときに、ｋ番目の計測点に対して求めた、ＱｂＨｂ、または、最短距離ＱｋＨｋが予め設定しておいた値より小さい場合には、各基準点と計測点とのカメラからの距離の比を算出しない。
【００２０】
図２は、本発明の原理構成図である。
【００２１】
本発明（請求項６）は、視点を移動させながら同じ被写体を撮影して得られた２枚の画像Ｆ１とＦ２を読み込んで、被写体各部のカメラの距離に対応する画像奥行分布を推定する画像の奥行分布推定装置であって、
画像Ｆ１から選択したＮ個の特徴点Ｐｎ，ｎ＝１，２，…，Ｎと画像Ｆ２での位置Ｑｎ，ｎ＝１，２，…，Ｎを検出する特徴点対応付け手段２と、
特徴点ＰｎとＱｎの座標値を取得して、該Ｐｎと該Ｑｎを用いて、画像Ｆ１を取り込んだときから画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定し、該回転運動量を記憶手段１９に格納する回転運動推定手段３と、
画像Ｆ１を取り込んだときのカメラの位置から、記憶手段１９に格納されている回転運動量だけカメラを回転させたときのＮ個の特徴点の画像上の位置Ｒｎ，ｎ＝１，２，…，Ｎを算出し、該記憶手段に格納する第１の回転運動後特徴点位置算出手段４と、
記憶手段１９からＲｎとＱｎ，ｎ＝１，２，…，Ｎの座標値を取得し、画像Ｆ２の特徴点Ｑｎ，ｎ＝１，２，…，Ｎに対応する被写体上の点に対する奥行分布を算出する奥行情報算出手段５と、を有する。
【００２２】
また、本発明（請求項７）は、請求項６の奥行分布推定装置であって、
回転運動推定手段は、
画像Ｆ１と画像Ｆ２を撮影したときのカメラの位置の移動において、カメラ光軸方向の移動が無い場合のカメラの回転運動を推定する回転運動推定Ａ手段と、
回転運動推定Ａ手段での回転運動推定結果の妥当性を判定する判定Ａ手段と、
カメラの光軸方向の移動がある場合のカメラ回転運動を推定すると共に、画像Ｆ１と画像Ｆ２を撮影したときのカメラ位置の水平方向と垂直方向の移動量をカメラ光軸の方向の移動量に対してカメラ並進移動比を推定する回転運動推定Ｂ手段と、
回転運動推定Ｂ手段での回転運動推定結果の妥当性を判定する判定Ｂ手段と、
最初に、回転運動推定Ａ手段でカメラ回転運動を推定し、その推定結果が判定Ａ手段で妥当であると判定された場合には、該回転運動推定手段の回転運動推定結果を出力し、妥当でないと判定された場合には、回転運動推定Ｂ手段でカメラ回転運動を推定し、判定Ｂ手段で該回転運動推定Ｂ手段の推定結果が妥当であると判定された場合には、該回転運動推定Ｂ手段の回転運動推定結果とカメラ並進移動比を出力し、該判定Ｂ手段で妥当でないと判定された場合には、回転運動の推定が不可能であることを示す信号を出力するように制御する制御手段と、を有する。
【００２３】
また、本発明（請求項８）は、請求項６の画像の奥行分布推定装置であって、
回転運動推定手段は、
被写体上の２つの点ＯｋとＯｂ（以下、Ｏｋを計測点、Ｏｂを基準点と呼ぶ）のカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂを、カメラ並進移動の前後で撮影した２つの画像におけるＯｋとＯｂの座標値から算出し、記憶手段に格納する奥行比算出手段と、
Ｎ個の特徴点から選択した２つの特徴点を奥行比算出手段における基準点に設定し、該基準点を除くＮ−２個の特徴点を計測点に設定する手段と、を有し、
回転運動後特徴点位置算出手段は、
画像Ｆ１を取り込んだ時のカメラの位置から、予め設定しておいた回転運動量だけカメラを回転させた時に得られる画像ＦｒにおけるＮ個の特徴点の位置Ｓｎ（ｎ＝１，２，…，Ｎ）を算出する第２の回転運動後特徴点位置算出手段を有し、
奥行情報算出手段は、
２つの基準点の画像Ｆｒにおける位置をＳ１、Ｓ２、画像Ｆ２における位置をＱ１，Ｑ２とし、Ｎ−２個の計測点の該画像Ｆｒにおける位置をＳｋ（ｋ＝３，４，…，Ｎ）、該画像Ｆ２における位置をＱｋ（ｋ＝３，４，…，Ｎ）として、各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を奥行比算出手段により算出し、２つの基準点に対するカメラからの距離の比Ｚ２／Ｚ１を、Ｚｋ／Ｚ１とＺｋ／Ｚ２の除算からＮ−２通りの値を求める手段を有し、
回転運動推定手段は、
回転運動後特徴点位置算出手段に入力する回転運動量を記憶手段に複数用意しておき、各回転運動量に対して基準点奥行比候補算出手段で求めたＮ−２通りのＺ２／Ｚ１の値の変動が最も小さい場合の回転運動量を、画像Ｆ１から画像Ｆ２への回転運動推定結果として記憶手段に出力する。
【００２４】
また、本発明（請求項９）は、請求項８の画像の奥行分布推定装置であって、
奥行比算出手段は、
被写体上の基準点Ｏｂと計測点Ｏｋのカメラ並進移動前に撮影した画像における位置をそれぞれＳｂとＳｋ、カメラ並進移動後に撮影した画像における位置をＱｂとＱｋとしたときに、
位置Ｓｂと位置Ｓｋの座標を結ぶ直線とＱｂの座標値の点との最短距離ＱｂＨｂ、及び、該位置Ｓｂと該位置Ｓｋの座標値を結ぶ直線とＱｋの座標値の点との最短距離ＱｋＨｋを算出し、それらの比であるＱｂＨｂ／ＱｋＨｋを、被写体上の点、ＯｋとＯｂのカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂとして記憶手段に出力する手段を含む。
【００２５】
また、本発明（請求項１０）は、請求項９の奥行分布推定装置であって、
奥行比算出手段は、
各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を算出するときに、ｋ番目の計測点に対して求めた、ＱｂＨｂ、または、最短距離ＱｋＨｋが予め設定しておいた値より小さい場合には、各基準点と計測点とのカメラからの距離の比を算出しない。
【００２６】
本発明（請求項１１）は、視点を移動させながら同じ被写体を撮影して得られた２枚の画像Ｆ１とＦ２が入力され、被写体各部のカメラの距離に対応する画像奥行分布を推定する画像の奥行分布推定プログラムであって、
コンピュータに、
画像Ｆ１から選択したＮ個の特徴点Ｐｎ，ｎ＝１，２，…，Ｎと画像Ｆ２での位置Ｑｎ，ｎ＝１，２，…，Ｎを検出する特徴点対応付けステップと、
特徴点ＰｎとＱｎの座標値を取得し、該Ｐｎと該Ｑｎを用いて、画像Ｆ１を取り込んだときから画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定し、該回転運動量を該記憶手段に格納する回転運動推定ステップと、
画像Ｆ１を取り込んだときのカメラの位置から、記憶手段に格納されている回転運動量だけカメラを回転させたときのＮ個の特徴点の画像上の位置Ｒｎ，ｎ＝１，２，…，Ｎを算出し、該記憶手段に格納する回転運動後特徴点位置算出ステップと、
記憶手段からＲｎとＱｎ，ｎ＝１，２，…，Ｎの座標値を取得し、画像Ｆ２の特徴点Ｑｎ，ｎ＝１，２，…，Ｎに対応する被写体上の点に対する奥行分布を算出する奥行情報算出ステップと、を実行させる。
【００２７】
また、本発明（請求項１２）は、請求項１１のプログラムであって、
回転運動推定ステップにおいて、
画像Ｆ１と画像Ｆ２を撮影したときのカメラの位置の移動において、カメラ光軸方向の移動が無い場合のカメラの回転運動を推定し、その推定結果が妥当と判定された場合には、回転運動推定結果を記憶手段に出力し、
妥当でない判定された場合には、該画像Ｆ１と該Ｆ２を撮影したときのカメラ位置の水平方向と垂直方向の移動量をカメラ光軸方向の移動量に対する比としてカメラ並進移動比を推定し、
推定結果が妥当であると判定された場合には、回転運動推定結果とカメラ並進移動比を該記憶手段に出力し、
妥当でないと判定された場合には、回転運動の推定が不可能であることを示す信号を該記憶手段に出力する処理を行う。
【００２８】
また、本発明（請求項１３）は、請求項１１のプログラムであって、
回転運動推定ステップは、
被写体上の２つの点ＯｋとＯｂ（以下、Ｏｋを計測点、Ｏｂを基準点と呼ぶ）のカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂを、カメラ並進移動の前後で撮影した２つの画像におけるＯｋとＯｂの座標値から算出する奥行比算出ステップと、
Ｎ個の特徴点から選択した２つの特徴点を奥行比算出ステップにおける基準点に設定し、該基準点を除くＮ−２個の特徴点を計測点に設定するステップと、を行い、
回転運動後特徴点位置算出ステップは、
画像Ｆ１を取り込んだ時のカメラの位置から、予め設定しておいた回転運動量だけカメラを回転させた時に得られる画像ＦｒにおけるＮ個の特徴点の位置Ｓｎ（ｎ＝１，２，…，Ｎ）を算出し、記憶手段に格納するステップを行い、
奥行情報算出ステップは、
２つの基準点の画像Ｆｒにおける位置をＳ１、Ｓ２、画像Ｆ２における位置をＱ１，Ｑ２とし、Ｎ−２個の計測点の該画像Ｆｒにおける位置をＳｋ（ｋ＝３，４，…，Ｎ）、該画像Ｆ２における位置をＱｋ（ｋ＝３，４，…，Ｎ）として、各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を奥行比算出手段により算出し、２つの基準点に対するカメラからの距離の比Ｚ２／Ｚ１を、Ｚｋ／Ｚ１とＺｋ／Ｚ２の除算からＮ−２通りの値を求めるステップを行い、
回転運動推定ステップでは、
回転運動後特徴点位置算出ステップ実行時に入力する回転運動量を記憶手段に複数用意しておき、各回転運動量に対して基準点奥行比候補算出ステップで求めたＮ−２通りのＺ２／Ｚ１の値の変動が最も小さい場合の回転運動量を、画像Ｆ１から画像Ｆ２への回転運動推定結果として記憶手段に出力する。
【００２９】
また、本発明（請求項１４）は、請求項１３のプログラムであって、
奥行比算出ステップは、
被写体上の基準点Ｏｂと計測点Ｏｋのカメラ並進移動前に撮影した画像における位置をそれぞれＳｂとＳｋ、カメラ並進移動後に撮影した画像における位置をＱｂとＱｋとしたときに、
ＳｂとＳｋの座標を結ぶ直線とＱｂの座標値の点との最短距離ＱｂＨｂ、及び、ＳｂとＳｋの座標値を結ぶ直線とＱｋの座標値の点との最短距離ＱｋＨｋを算出し、それらの比であるＱｂＨｂ／ＱｋＨｋを、被写体上の点、ＯｋとＯｂのカメラからの距離ＺｋとＺｂの比Ｚｋ／Ｚｂとして記憶手段に出力する。
【００３０】
また、本発明（請求項１５）は、請求項１４のプログラムであって、
奥行比算出ステップは、
各基準点と計測点とのカメラからの距離の比であるＺｋ／Ｚ１とＺｋ／Ｚ２（ｋ＝３，４，…，Ｎ）を算出するときに、ｋ番目の計測点に対して求めた、ＱｂＨｂ、または、最短距離ＱｋＨｋが予め設定しておいた値より小さい場合には、各基準点と計測点とのカメラからの距離の比を算出しない。
【発明の効果】
【００３１】
本発明によれば、被写体がカメラに近いものから遠くにあるものを含む一般的なシーンに対しても安心してカメラ運動と画像奥行分布を推定できるようになるので、奥行分布から映像シーンを遠景画像、街や屋内などの遠近のある画像、特定の対象物を撮影した画像などに分類したり、街の景観を表現するための３次元モデルを作成するなど、その実用的な効果は多大である。
【発明を実施するための最良の形態】
【００３２】
以下、図面と共に本発明の実施の形態を説明する。
【００３３】
［第１の実施の形態］
図３は、本発明の第１の実施の形態における装置構成図である。
【００３４】
同図に示す装置は、画像読込み部１、特徴点対応付け処理部２、カメラ回転運動推定部３、カメラ回転後の特徴点位置算出部４、奥行情報算出部５から構成される。なお、この他に中間処理結果を格納する記憶手段（図示せず）が設けられているものとする。
【００３５】
画像読込み部１は、カメラを移動させて取り込んだ２枚の画像（Ｆ１，Ｆ２）を読み取り、読み取った画像を特徴点対応付け処理部２に出力する。
【００３６】
特徴点対応付け処理部２は、受け取った２枚の画像（Ｆ１，Ｆ２）からＮ個の特徴点の対応付けを行う。２枚の画像におけるカメラ運動、及び、特徴点の関係を図４に示す。同図は、カメラＣ１が、回転運動し、次に並進移動によりカメラＣ２となった場合の関係を示す。
【００３７】
図４における各符号は以下の通りである。
・画像Ｆ１：カメラＣ１で撮影される画像；
・画像Ｆｒ：回転後のカメラＣ１で撮影される画像；
・画像Ｆ２：カメラＣ２で撮影される画像；
・Ｏｎ：被写体上の点；
・Ｐｎ：画像ＦｒにおけるＯｎの射影位置；
・Ｓｎ：画像ＦｒにおけるＯｎの射影位置；
・Ｑｎ：画像Ｆ２におけるＯｎの射影位置；
を示す。図４において、画像Ｆ１上の点Ｐｎと、画像Ｆ２上の点Ｑｎのように被写体上では同一の点を対応付ける処理をＮ個（ｎ＝１，２，…，Ｎ）の特徴点について行う。特徴点Ｐｎの座標値をカメラ回転運動推定部３とカメラ回転運度後の特徴点位置算出部４に出力し、特徴点Ｑｎの座標値をカメラ回転運動推定部３、カメラ回転運動後の特徴点位置算出部４、奥行情報算出部５に出力する。
【００３８】
特徴点対応付けの具体的な方法を以下に説明する。
【００３９】
画像Ｆ１での特徴点検出は、コーナー、物体の輪郭など画像の濃度分布の変化の大きい点を抽出すればよく、例えば、従来手法である、Harrisオペレータ、Moravecオペレータ、ＳＵＳＡＮオペレータなどを用いればよい（参考文献：金澤清、金谷健一「コンピュータビジョンのための画像の特徴点の抽出」電子情報通信学会誌、Vol.87, ZNo.12, pp.1-43-1048, 2004）。画像Ｆ２における特徴点Ｑｎの検出は、画像Ｆ１におけるＰｎの近傍の濃度分布を切り出し、画像Ｆ２において、切り出した濃度分布と相関の高い位置を求めることにより実現できる。
【００４０】
カメラ回転運動推定部３は、ＰｎとＱｎ（ｎ＝１，２，…，Ｎ）の座標値を用いて、画像Ｆ１を取り込んだときから画像Ｆ２を取り込んだときまでのカメラの回転運動量を推定する。
【００４１】
図４におけるカメラＣ１からカメラＣ２までのカメラ運動は、図５に示すように、カメラＣ１を基準とする座標系Ｃ１−Ｘ１Ｙ１Ｚ１をＸ軸のまわりにα、Ｙ軸のまわりにβ、Ｚ軸のまわりにγだけそれぞれ回転させる回転運動（回転後の座標系をＣ１−Ｘ１ｒ−Ｙ１ｒＺ１ｒとする）と、回転後の座標系の並進運動で表現できる。並進移動ベクトルをｔ＝（ｔｘ，ｔｙ，ｔｚ）、カメラＣ２を基準とする座標系Ｃ２−Ｘ２Ｙ２Ｚ２とすると、カメラ運動は次式の座標変換で表せる。
【００４２】
【数４】
2006285946.tif 000006
カメラ回転運動推定部３は、回転角度α、β、γを推定し、記憶手段（後述ワークデータ管理部）に格納する。
【００４３】
また、カメラ回転運動推定部３は、カメラ回転運動と同時に並進移動比として、ｔｘ／ｔｚとｔｙ／ｔｚも同時に推定し、メモリ等の記憶手段（図示せず）に格納する。回転運動推定の具体的な処理手順については後述する。
【００４４】
カメラ回転運動後の特徴点位置算出部４は、カメラ回転運動推定部３で推定され、記憶手段（後述するワークデータ管理部）に格納されているデータを読み出して、推定した回転角度だけカメラＣ１を回転させたときに、画像Ｆ１上での特徴点Ｐｎの回転後の位置Ｓｎを算出し、奥行情報算出部５に出力する（図４参照）。回転後の位置Ｓｎは以下の方法で算出する。
【００４５】
特徴点位置算出部４は、カメラＣ１を基準とした座標系での被写体上の点Ｏｎを（Ｘn１，Ｙn１，Ｚn１）、Ｐｎの座標を（ｕｐｎ，ｖｐｎ）、回転後のカメラＣ１を基準とした座標系での被写体上の点Ｏｎを（Ｘn１ｒ，Ｙn１ｒ，Ｚn１ｒ），Ｓｎの座標を（ｕｓｎ，ｖｓｎ）とする中心斜影により次式が成り立つ。
【００４６】
【数５】
2006285946.tif 000007
ｆはカメラの焦点距離である。
【００４７】
（Ｘｎ１、Ｙｎ１，Ｚｎ１）と（Ｘｎ１ｒ，Ｙｎ１ｒ，Ｚｎ１ｒ）の関係は回転運動のみであるので、
【００４８】
【数６】
2006285946.tif 000008
となり、回転行列Ｒを、
【００４９】
【数７】
2006285946.tif 000009
として、式（６）を式（５）に代入すると次式が得られる
【００５０】
【数８】
2006285946.tif 000010
回転角度が推定されているときには回転行列Ｒが既知であるので、式（７）より、特徴点Ｐｎの座標から回転後の位置Ｓｎの座標を算出することができる。算出された回転後の位置Ｓｎの座標をメモリ（図示せず）等の記憶手段に格納する。
【００５１】
奥行情報算出部５は、特徴点位置算出部４のメモリ（図示せず）から回転後の特徴点位置Ｓｎと、画像Ｆ２上の特徴点Ｑｎから（ｎ＝１，２，…，Ｎ）、画像Ｆ２を撮影したカメラＣ２を基準としたＮ個の特徴点の３次元位置（被写体上の位置）を表した奥行分布を算出する。
【００５２】
また、奥行情報算出部５は、特徴点位置算出部４のメモリ（図示せず）から回転後の特徴点位置Ｓｎと、画像Ｆ２上の特徴点Ｑｎと、カメラ回転運動推定部３のメモリ（図示せず）カメラの並進運動の比ｔｘ／ｔｙを読み出して、画像Ｆ２を撮影したカメラＣ２を基準としたＮ個の特徴点の３次元位置（被写体上の位置）を表した奥行分布を算出する。
【００５３】
以下、カメラ回転運動推定部３の動作を説明する。
【００５４】
最初に回転運動を推定する原理を説明する。
【００５５】
画像Ｆ１上の点Ｐｎと画像Ｆ２上の点Ｑｎとからカメラの回転運動を推定する方法として、回転後の位置ＳｎとＱｎの位置変化がカメラの並進運動のみで生じたことを拘束条件として推定する。カメラの並進運動で生じる画像での動きベクトルの制約を以下で導出する。なお、以下で用いているＸｎ２，Ｙｎ２，Ｚｎ２，Ｚｋ２等の右上の表記はべき乗ではなく、カメラに対応する変数の表記を表す添え字であり、例えば、ＺＫ２は、カメラＣ２の２に対応する変数の表記を表す添え字である。
【００５６】
カメラＣ２を基準とした座標系での被写体上の点Ｏｎを（Ｘｎ２，Ｙｎ２，Ｚｎ２）、Ｑｎの座標を（ｕｑｎ，ｖｑｎ）とすると、
【００５７】
【数９】
2006285946.tif 000011
が成り立つので、式（５）、式（８）、式（９）よりＸｎ２，Ｘｎ１ｒ，Ｙｎ２，Ｙｎ１ｒ，Ｚｎ２を消去すると、
【００５８】
【数１０】
2006285946.tif 000012
が得られ、
【００５９】
【数１１】
2006285946.tif 000013
より、
【００６０】
【数１２】
2006285946.tif 000014
となる。式（１０）において
ｔｚ＝０の場合は、
【００６１】
【数１３】
2006285946.tif 000015
ｔｚ≠０の場合は、
【００６２】
【数１４】
2006285946.tif 000016
となる。
【００６３】
以上により、カメラ並進運動で生じる画像での動きベクトルの制約は、ｔｚ＝０の場合は、式（１１）より「ＳｎからＱｎの移動ベクトルの傾きがｔｙ／ｔｘと一定となる」ことであり、ｔｚ≠０の場合は、２点の移動ベクトルが与えられれば、式（１２）よりｔ’ｘとｔ’ｙが求められるので、「Ｎ個の特徴点から２つを選ぶ組み合わせによらずに算出したｔ’ｘとｔ’ｙが一定となる」ことである。このような条件が成立する回転運動を推定すればよい。
【００６４】
ところで、同じ被写体を撮影しながらカメラを動かすときには、カメラを大きく回転すると画面から外れてしまうので、一般的に回転運動は小さい。そこで、回転運動の推定方法として、予め予想される回転運動の範囲を設定しておき、適当な間隔で回転角度を刻み、α、β、γの３つの回転角度の設定した全ての組み合わせについて上記の条件が満たされる場合を検出する方法が有効である。以上の原理に基づいて回転運動推定の処理手順を以下に説明する。
【００６５】
図６は、本発明の第１の実施の形態における回転運動推定部の構成を示す。
【００６６】
同図に示す回転運動推定部３は、処理制御部１１、特徴点座標読込み部１２、回転角度の探索設定処理部１３、コスト算出処理Ａ部１４、回転角度検出処理Ａ部１５、コスト算出処理Ｂ部１６、回転角度検出処理Ｂ部１７、初期データ管理部１８、ワークデータ管理部１９から構成される。
【００６７】
処理制御部１１は、特徴点座標読込み部１２、回転角度の探索設定処理部１３、コスト算出処理Ａ部１４、回転角度検出処理Ａ部１５、コスト算出処理Ｂ部１６、回転角度検出処理Ｂ部１７の各部に処理の実行を指示する。
【００６８】
特徴点座標読込み部１２は、特徴点対応付け処理部２より出力されるＮ個（ｎ＝１，２，…，Ｎ）の特徴点の画像Ｆ１上の点Ｐｎと、画像Ｆ２上の点Ｑｎ（ｎ＝１，２，…，Ｎ）の座標値を読み取る。読み取った特徴点座標をワークデータ管理部１９に出力する。
【００６９】
回転角度の探索設定処理部１３は、探索する回転角度の範囲と角度を初期データ管理部１８から読込み、探索する回転角度の組み合わせを管理する。回転角度の組み合わせをワークデータ管理部１９に出力する。
【００７０】
コスト算出処理Ａ部１４は、初期データ管理部１８とワークデータ管理部１９から必要なデータを読み出し、カメラの光軸方向の並進移動がない場合に回転運動を推定するためのコスト関数を全ての回転角度の組み合わせに対して算出する。算出結果をワークデータ管理部１９に出力する。
【００７１】
回転角度検出処理Ａ部１５は、コスト算出処理Ａ部１４のコスト算出結果をワークデータ管理部１９から読み出し、回転角度を検出する。回転角度が検出された場合は、回転角度を出力する。回転角度が検出できない場合は、できないことを示す制御信号を処理制御部１１に出力する。
【００７２】
コスト算出処理Ｂ部１６は、初期データ管理部１８とワークデータ管理部１９から必要なデータを読み出し、カメラの光軸方向に並進移動がある場合に回転運動を推定するためのコスト関数を全ての回転角度の組み合わせに対して算出する。算出結果をワークデータ管理部１９に出力する。
【００７３】
回転角度検出処理Ｂ部１７は、コスト算出処理Ｂ部１７のコスト算出結果をワークデータ管理部１９から読み出し、回転角度を検出する。回転角度が検出された場合は回転角度を出力する。検出した回転角度と並進移動比を出力する。
【００７４】
初期データ管理部１８は、探索する回転角度の範囲と角度、回転角度検出処理Ａ部１５と回転角度検出処理Ｂ部１７で必要となる、各種の閾値を管理する。各処理部からデータ読み出しの要求があった場合には、要求されたデータを要求した処理部に出力する。
【００７５】
ワークデータ管理部１９は、要求のあった処理部からデータを受け取り、格納管理する。また、処理部からデータの読み出し要求があった場合には、要求されたデータを要求した処理部に出力する。なお、当該ワークデータ管理部１９のデータは、カメラ回転運動後の特徴点位置算出部４からも読み出されるものとする。
【００７６】
図７は、本発明の第１の実施の形態における回転運動推定部の具体的な処理のフローチャートである。
【００７７】
ステップ２０１）  回転運動推定部３の特徴点座標読込み部１２は、特徴点対応付け処理部２より出力されるＮ個（ｎ＝１，２，…，Ｎ）の座標値を読み取り、ワークデータ管理部１９に格納する。
【００７８】
ステップ２０２）  回転角度の探索設定処理部１３において、予め予想される回転運動の範囲を設定しておき、適当な間隔で回転角度を刻み、３つの回転角度α、β、γの取り得る値を初期データ管理部１８に設定する。例えば、それぞれ、−１０度から１０度の範囲を０．２５度間隔で設定すると、各パラメータについて８０通り考えられるので、全ての組み合わせは、８０３＝５１２，０００通りの組み合わせがある。各組み合わせに、角度組み合わせ番号として、ｍ＝１，…，５１２０００までのシリアル番号を付与し、管理する。
【００７９】
ステップ２０３）  コスト算出処理Ａ部１４において、ｍ＝１に設定する。
【００８０】
ステップ２０４）  ステップ２０４，２０５，２０６，２０７，２０８は、ｔｚ＝０すなわち、カメラの光軸方向の並進移動がない場合に回転運動を推定する処理を行う。
【００８１】
ステップ２０４では、コスト算出処理Ａ部１４において、初期データ管理部１８より、角度組み合わせ番号ｍから回転角度α、β、γを得ると、特徴点Ｐｎの座標から式（７）により特徴点Ｓｎの座標を求め、ＳｎとＱｎの座標から移動ベクトルの傾きである
（ｖｑｎ−ｖｓｎ）／（ｕｑｎ−ｕｓｎ）
を算出する。各特徴点から１つの移動ベクトルの傾きが求められるので、全部でＮ個の傾きを求めることになる。
【００８２】
ステップ２０５）  コスト算出処理Ａ部１４は、ステップ２０４で算出したＮ個の移動ベクトルの傾きの変動係数Ｃｖ（ｍ）を算出し、ワークデータ管理部１９に格納する。
【００８３】
ステップ２０６）  コスト算出処理Ａ部１４は、ｍ＝Ｍであるかの判定を行う。すなわち、ステップ２０４，２０５の処理を全ての回転角度組み合わせについて行ったかを判断する。行っていない場合には、ステップ２０７の処理へ、行っている場合にはステップ２０８の処理を実行する。
【００８４】
ステップ２０７）  コスト算出処理Ａ部１４は、角度の組み合わせ場番号を１つ増やし、次の角度組み合わせに対してステップ２０４を実行する。
【００８５】
ステップ２０８）  Ｍ通りの角度組み合わせについて求めた変動係数Ｃｖ（ｍ）の最小値を検出する。
【００８６】
ステップ２０９）  回転角度検出処理Ａ部１５は、ワークデータ管理部１８から変動係数Ｃｖ（ｍ）を読み出して、当該変動係数Ｃｖ（ｍ）の最小値が予め設定した閾値より小さいかを判定する。小さい場合にはカメラ光軸方向の並進運動がなく、変動係数Ｃｖ（ｍ）が最小となるときの回転角度が推定すべき角度であると判定する。変動係数Ｃｖ（ｍ）の最小値が閾値より大きい場合には、カメラ光軸方向の並進運動がないとして推定した回転角度は信頼できないと判定する。
【００８７】
ステップ２１０）  回転角度検出処理Ａ部１５は、変動係数Ｃｖ（ｍ）が最小となるときの回転角度を画像Ｆ１から画像Ｆ２におけるカメラ回転運動パラメータとしてワークデータ管理部１８に出力する。
【００８８】
カメラＣ１からＣ２の並進運動において、カメラの光軸方向の並進移動が無いことがわかっている場合には、ステップ２０９の処理を削除し、ステップ２０１からステップ２１０までの処理で回転運動を推定することができる。この場合は、請求項１に記載の発明に対応する。カメラの並進運動が一般的な場合は、次のステップ２１１以降の処理を行う。この場合は、請求項２に記載の発明に対応する。
【００８９】
ステップ２１１）  ステップ２１１〜ステップ２１６では、コスト算出処理Ｂ部１６において、ｔｚ≠０、すなわち、カメラの光軸方向の並進移動がある場合に回転運動を推定する処理を行う。
【００９０】
ステップ２１１は角度組み合わせを１にリセットする。
【００９１】
ステップ２１２）  コスト算出処理Ｂ部１６は、角度組み合わせ番号ｍから回転角度α、β、γを得ると、特徴点Ｐｎの座標から式（７）により特徴点Ｓｎの座標を求める。Ｎ個の特徴点の中から選択した２つの点ｎ＝ｉ，ｊについて式（１２）より、
【００９２】
【数１５】
2006285946.tif 000017
が得られ、式（１３）より、ｔ’ｘとｔ’ｙを求める。特徴点の組み合わせとしてＮＣ２通りあるので、ＮＣ２通りの（ｔ’ｘ，ｔ’ｙ）が得られる。
【００９３】
ステップ２１３）  コスト算出処理Ｂ部１６は、ステップ２１２で算出した、ＮＣ２通りの（ｔ’ｘ，ｔ’ｙ）について、ｔ’ｙの変動係数Ｃｖｙ（ｍ）を算出し、ワークデータ管理部１８に格納する。
【００９４】
ステップ２１４）  コスト算出処理Ｂ部１６は、ｍ＝Ｍであるかの判定、すなわち、ステップ２１２、ステップ２１３の処理を全ての回転角度組み合わせについて行ったかを判断する。行っていない場合には、ステップ２１５の処理へ、行っている場合にはステップ２１６の処理を実行する。
【００９５】
ステップ２１５）  コスト算出処理Ｂ部１６は、角度組み合わせ番号ｍを１つ増やし、次の角度組み合わせに対してステップ２１２を実行する。
【００９６】
ステップ２１６）  回転角度検出処理Ｂ部１７は、ワークデータ管理部１８からＣｖｘ（ｍ）とＣｖｙ（ｍ）を読み出して、Ｍ通りの角度組み合わせについて求めた変動係数の和、Ｃｖｘ（ｍ）＋Ｃｖｙ（ｍ）の最小値を検出する。
【００９７】
ステップ２１７）  回転角度検出処理Ｂ部１７において、初期データ管理部１８から予め設定されている閾値を読み出して、変動係数の和、Ｃｖｘ（ｍ）＋Ｃｖｙ（ｍ）の最小値が予め設定した閾値より小さいかを判定する。小さい場合には、変動係数の和、Ｃｖｘ（ｍ）＋Ｃｖｙ（ｍ）が最小となるときの回転角度が推定すべき角度であると判定する。閾値より大きい場合には、回転角度の推定ができないと判定する。
【００９８】
ステップ２１８）  回転角度検出処理Ｂ部１７は、変動係数の和、Ｃｖｘ（ｍ）＋Ｃｖｙ（ｍ）が最小となるときの回転角度を画像Ｆ１から画像Ｆ２におけるカメラ回転運動パラメータとして、そのときの並進移動比（ｔ’ｘ，ｔ’ｙ）と共にワークデータ管理部１８に出力する。
【００９９】
ステップ２１９）  回転角度検出処理Ｂ部１７は、回転運動の推定ができない場合で、予め設定しておいた、推定不可能を示す値やコードをカメラ回転運動パラメータとしてワークデータ管理部１８に出力する。
【０１００】
最後に、奥行情報算出部５の具体的な処理方法を説明する。
【０１０１】
式（５）、式（８）、式（９）より、Ｘｎ２，Ｘｎ１ｒ，Ｙｎ２，Ｙｎ１ｒ，Ｚｎ１ｒを消去すると、
【０１０２】
【数１６】
2006285946.tif 000018
ｔｚ＝０の場合は、
【０１０３】
【数１７】
2006285946.tif 000019
ｔｚ≠０の場合は、
【０１０４】
【数１８】
2006285946.tif 000020
となる。
【０１０５】
回転運動推定部３において、カメラ光軸方向の並進運動願愛として推定された場合には、式（１５）において、スケールファクターとして、ｔｘ、ｔｙ、ｆに適当な値を設定することで、被写体上の点ＯｎとカメラＣ２との距離に対応するＺｎ２が算出でき、Ｎ個の点の奥行分布が得られる。
【０１０６】
また、回転運動推定部３において、カメラ光軸方向の並進運動があるとして推定された場合は、回転運動推定部３から出力される並進移動比ｔ’ｘ、ｔ’ｙを用いて式（１６）からＺｎ２／ｔｚが算出できるので、ｔｚをスケールファクターとして被写体上の点ＯｎとカメラＣ２との距離が得られる。ｔｚに適当な値を設定することで、Ｎ個の点についての奥行分布が得られる。
【０１０７】
なお、式（１５）や式（１６）において、Ｚｎ２の算出方法が２通りある。特徴点の座標値には画像の量子化誤差が含まれるので、Ｎ個の特徴点について（ｕｑｎ−ｕｓｎ）と（ｖｑｎ−ｖｓｎ）の平均値を求め、（ｕｑｎ−ｕｓｎ）の方が大きい場合には、
式（１５）は、Ｚｎ２＝ｔｘｆ／（ｕｑｎ−ｕｓｎ）を、
式（１６）は、Ｚｎ２／ｔｚ＝（ｔ’ｘｆ−ｕｓｎ）／（ｕｑｎ−ｕｓｎ）を選択し、
（ｖｑｎ−ｖｓｎ）の方が大きい場合には、
式（１５）は、Ｚｎ２＝ｔｙｆ／（ｖｑｎ−ｖｓｎ）を、
式（１６）は、Ｚｎ２／ｔｚ＝（ｔ’ｙｆ−ｖｓｎ）／（ｖｑｎ−ｖｓｎ）を採用すればより、精度よく算出することができる。
【０１０８】
以上述べた処理により、一般的なシーンに対しても安定してカメラ運動と画像奥行分布を推定することができる。
【０１０９】
［第２の実施の形態］
本実施の形態では、本発明におけるカメラ回転運動推定部３の別の例を説明する。
【０１１０】
第１の実施の形態と同様に、画像Ｆ１上の点Ｐｎと画像Ｆ２上の点Ｑｎとからカメラの回転運動を推定する方法として、回転後の位置ＳｎとＱｎの位置変化がカメラの並進運動のみで生じたことを拘束条件として推定する。カメラ並進運動で生じる画像での動きベクトルの制約を以下で導出する。
【０１１１】
なお、以下の説明以外は、装置構成及び動作共に、前述の第１の実施の形態と同様である。
【０１１２】
本実施の形態では、Ｎ個の特徴点の中で１番目と２番目の点を基準点、３番目からＮ番目までを計測点として選択する場合を例に説明する。
【０１１３】
１番目の基準点とk（ｋ＝３，４，…，N）番目の計測点の被写体上の位置と画像での位置関係は、前述の式１４により次式で表せる。
【０１１４】
【数１９】
2006285946.tif 000021
上記の式（１７−１）と式（１８−１）よりtxを消去すると、
【０１１５】
【数２０】
2006285946.tif 000022
が得られ、
式（１７−２）と式（１８−２）よりtyを消去すると、
【０１１６】
【数２１】
2006285946.tif 000023
が得られる。
【０１１７】
式（１７−１）と式（１８−１）よりtzを消去すると、
【０１１８】
【数２２】
2006285946.tif 000024
となる。
【０１１９】
ここで、図８に示すように、直線Ｓ１Ｑ１と画像の横軸であるＵ軸とのなす角をθ、直線Ｓ１ＳｋとＵ軸とのなす角をφ、直線ＳｋＱｋとのなす角をηとすると、式（２１）は、
【０１２０】
【数２３】
2006285946.tif 000025
となる。ここで、Ｈ１は点Ｑ１から直線Ｓ１Ｓｋへ下ろした垂線の足、ＨｋはＱｋから直線Ｓ１Ｓｋへ下ろした垂線の足である。
【０１２１】
同様に、図９に示すように、２番目の基準点とｋ(ｋ＝３，４，…，Ｎ)番目の計測点の被写体上の位置と画像での位置関係は、
【０１２２】
【数２４】
2006285946.tif 000026
で表せる。ここで、Ｌ２は、点Ｑ２から直線Ｓ２Ｓｋへ下ろした垂線の足、Ｌｋは点Ｑｋから直線Ｓ２Ｓｋへ下ろした垂線の足である。
【０１２３】
上記の式（２２）と式（２３）により、２つの基準点のカメラからの距離の比は、
【０１２４】
【数２５】
2006285946.tif 000027
となる。
【０１２５】
以上により、カメラ並進運動で生じる画像での動きベクトルの制約は、「２つの基準点に対するカメラからの距離の比を式（２４）により求めたときに、Ｎ−２個の計測点の選び方によらずに一定となる」ことである。このような条件が成立する回転運動を推定すればよい。この原理に基づいて図６に示すハードウェア構成を用いた回転運動推定部３の処理手順を以下に示す。
【０１２６】
図１０は、本発明の第２の実施の形態における回転運動推定部の動作のフローチャートである。
【０１２７】
同図に示す処理手順は、処理制御部１１で実行され、ステップ３０１は、特徴点座標読込み部１２、ステップ３０２は、回転角度の探索設定処理部１３、ステップ３０４からステップ３１５は、コスト算出処理Ａ部１４、ステップ３１６、３１７は、回転角度検出処理Ａ部１５により実現した場合を例に説明する。
【０１２８】
ステップ３０１）  特徴点座標読込み部１２は、特徴点対応付け処理部２より出力されるＮ個（ｎ＝１，２，…，Ｎ）の特徴点の画像Ｆ１上の点Ｐｎと、画像Ｆ２上の点Ｑｎ（ｎ＝１，２，…，Ｎ）の座標値を読み取る。
【０１２９】
ステップ３０２）  回転角度の探索設定処理部１３は、予め予想される回転運動の範囲を設定しておき、適当な間隔で回転角度を刻み、３つの回転角度α、β、γの取り得る値をメモリ（図示せず）上に設定する。例えば、それぞれ−１０°から１０°の範囲を０．２５°間隔で設定すると、各パラメータについて、８０通り考えられるので、全ての組み合わせは、８０３＝５１２，０００通りの組み合わせがある。各組み合わせに、角度組み合わせ番号として、ｍ＝１，…，５１２０００までのシリアル番号を付与し、メモリ（図示せず）内で管理する。
【０１３０】
ステップ３０３）  コスト算出Ａ部１４のメモリ（図示せず）内に基準点選定規則を格納しておき、基準点を選択する。本実施の形態では、Ｎ個の特徴点の中で、１番目と２番目の点を基準点、３番目からＮ番目までを計測点として選択する場合を例に説明する。
【０１３１】
ステップ３０４）  ｍ＝１に設定する。
【０１３２】
ステップ３０５）  回転角度組み合わせ番号ｍから回転角度α、β、γを得ると、特徴点Ｐｎの座標から式（７）により特徴点Ｓｎの座標を求める。
【０１３３】
ステップ３０６）  ｋ＝３に設定する。
【０１３４】
ステップ３０７）  Ｓ１とＳｋを結ぶ直線とＱ１との最短距離Ｑ１Ｈ１、及びＳ１とＳｋを結ぶ直線とＱｋとの最短距離ＱｋＨｋを算出する。
【０１３５】
ステップ３０８）  Ｓ２とＳｋを結ぶ直線とＱ２との最短距離Ｑ２Ｌ２及びＳ２とＳｋを結ぶ直線とＱｋとの最短距離ＱｋＬｋを算出する。
【０１３６】
ステップ３０９）  Ｑ１Ｈ１，ＱｋＨｋ，Ｑ２Ｌ２，ＱｋＬｋの大きさが、初期データ管理部１８内のメモリ（図示せず）から読み出した閾値以上の場合は、ステップ３１０の処理に移行し、閾値以上でない場合はステップ３１１の処理に移行する。この判定処理を行うことにより、画像の量子化誤差の影響を大きく受ける場合を除外することができる。
【０１３７】
ステップ３１０）  前述の式（２４）により、２つの基準点のカメラからの距離の比を算出する。ｋ番目の計測点を用いて算出した距離の比をcost(k)とする。
【０１３８】
ステップ３１１）  ｋ＝Ｎであるかの判定、すなわち、ステップ３０７からステップ３１０の処理を全ての計測点について行ったかを判定する。行っていない場合には、ステップ３１２の処理に移行し、行っている場合にはステップ３１３の処理を実行する。
【０１３９】
ステップ３１２）  計測点の番号ｋを一つ増やし、次の計測点に対してステップ３０７を実行する。
【０１４０】
ステップ３１３）  ステップ３１０で算出した、２つの基準点のカメラからの距離の比であるcost(k)の変動係数Ｃｖ（ｍ）を算出する。
【０１４１】
ステップ３１４）  ｍ＝Ｍであるかの判定、すなわち、ステップ３０５からステップ３１３までの処理を全ての回転角度組み合わせについて行ったかを判断する。行っていない場合には、ステップ３１５の処理へ移行し、行っている場合にはステップ３１６の処理を実行する。
【０１４２】
ステップ３１５）  角度組み合わせ番号ｍを一つ増やし、次の角度組み合わせに対してステップ３０５を実行する。
【０１４３】
ステップ３１６）  Ｍ通りの角度組み合わせについて求めた変動係数Ｃｖ（ｍ）の最小値を検出する。
【０１４４】
ステップ３１７）  変動係数Ｃｖ（ｍ）が最小となるとき回転角度を画像Ｆ１から画像Ｆ２におけるカメラ回転運動パラメータとして出力する。
【０１４５】
以上述べた処理により、一般的なシーンに対しても安定してカメラ回転運動を推定することができる。
【０１４６】
最後に、本実施の形態における奥行情報算出部５の処理について説明する。
【０１４７】
各計測点と基準点のカメラからの距離の比Ｚ２ｋ／Ｚ２１は、式（２２）により、直線Ｓ１Ｓｋと点Ｑ１との最短距離Ｑ１Ｈ１と、直線Ｓ１Ｓｋと点Ｑｋとの最短距離ＱｋＨｋから容易に算出できる。従って、Ｎ個の特徴点の中の１つを基準とした奥行き分布を求めることができる。
【０１４８】
さらに、Ｑ１Ｈ１とＱｋＨｋの大きさが予め設定しておいた閾値よりも小さい場合は、画像の量子化誤差の影響を大きく受けるので、この場合は基準点を変更することが有効である。この場合の手順は以下の通りである。
【０１４９】
（１）コスト算出処理Ａ部１３のメモリ（図示せず）内に格納してある規則に基づいて基準点を選択する。選択した基準点を用いて、全ての計測点に対してＱ１Ｈ１とＱｋＨｋを算出する。
【０１５０】
（２）Ｑ１Ｈ１とＱｋＨｋが閾値以上の計測点について式（２２）により奥行き比を算出する。
【０１５１】
（３）Ｑ１Ｈ１、または、ＱｋＨｋが閾値より小さい計測点について、上記の（２）の処理で奥行き比を計測した点の中から基準点を任意に選択する。変更後の基準点について、奥行きを算出していない全ての計測点についてＱ１Ｈ１とＱｋＨｋを算出し、上記の（２）と（３）を繰り返す。
【０１５２】
（４）基準点を変更しても、Ｑ１Ｈ１とＱｋＨｋが閾値以上にならない計測点は奥行き比計測不可として所定の処理を行う。
【０１５３】
（５）上記の（３）で奥行き比を求めた計測点について、基準点を上記の（１）で設定した基準点に対する奥行き比に換算する処理を行う。
【０１５４】
以上述べた処理により、一般的なシーンに対しても安定して画像奥行分布を推定することができる。
【０１５５】
なお、上記の図３に示す装置の構成要素の動作をプログラムとして構築し、コンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【０１５６】
また、構築されたプログラムをコンピュータに接続されるハードディスク装置や、フレキシブルディスク、ＣＤ−ＲＯＭ等の可搬記憶媒体に格納しておき、コンピュータにインストールする、または、配布することが可能である。
【０１５７】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【産業上の利用可能性】
【０１５８】
本発明は、映像の撮影状況や映像シーンの構成を識別・認識することにより映像の分類やインデキシングを行う技術に適用可能である。
【図面の簡単な説明】
【０１５９】
【図１】本発明の原理説明図である。
【図２】本発明の原理構成図である。
【図３】本発明の第１の実施の形態における装置構成図である。
【図４】本発明の第１の実施の形態における２つの画像の関係を説明する図である。
【図５】本発明の第１の実施の形態におけるカメラ運動を説明する図である。
【図６】本発明の第１の実施の形態におけるカメラ回転運動推定部の構成図である。
【図７】本発明の第１の実施の形態における回転運動推定部の具体的な処理のフローチャートである。
【図８】本発明の第２の実施の形態における基準点の計測点の画像上での位置関係を説明するための図である。
【図９】本発明の第２の実施の形態における２つの基準点の１つの計測点の画像上での位置関係を説明するための図である。
【図１０】本発明の第２の実施の形態における回転運動推定部の動作のフローチャートである。
【符号の説明】
【０１６０】
１  画像読込み部
２  特徴点対応付け手段、特徴点対応付け処理部
３  回転運動推定手段、カメラ回転運動推定部
４  回転運動後特徴点位置算出手段、カメラ回転運動後の特徴点位置算出部
５  奥行情報算出手段、奥行情報算出部
１１  処理制御部
１２  特徴点座標読込み部
１３  回転角度の探索設定処理部
１４  コスト算出処理Ａ部
１５  回転角度検出処理Ａ部
１６  コスト算出処理Ｂ部
１７  回転角度検出処理Ｂ部
１８  初期データ管理部
１９  記憶手段、ワークデータ管理部
【図１】
2006285946.tif 000028
【図２】
2006285946.tif 000029
【図３】
2006285946.tif 000030
【図４】
2006285946.tif 000031
【図５】
2006285946.tif 000032
【図６】
2006285946.tif 000033
【図７】
2006285946.tif 000034
【図８】
2006285946.tif 000035
【図９】
2006285946.tif 000036
【図１０】
2006285946.tif 000037