特許第6061770号(P6061770)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本放送協会の特許一覧

<>
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000016
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000017
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000018
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000019
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000020
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000021
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000022
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000023
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000024
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000025
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000026
  • 特許6061770-カメラ姿勢推定装置及びそのプログラム 図000027
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6061770
(24)【登録日】2016年12月22日
(45)【発行日】2017年1月18日
(54)【発明の名称】カメラ姿勢推定装置及びそのプログラム
(51)【国際特許分類】
   H04N 5/225 20060101AFI20170106BHJP
   G06T 7/20 20170101ALI20170106BHJP
   G06T 7/60 20170101ALI20170106BHJP
【FI】
   H04N5/225 F
   G06T7/20 B
   G06T7/60 150P
【請求項の数】4
【全頁数】21
(21)【出願番号】特願2013-92096(P2013-92096)
(22)【出願日】2013年4月25日
(65)【公開番号】特開2014-216813(P2014-216813A)
(43)【公開日】2014年11月17日
【審査請求日】2016年3月1日
【権利譲渡・実施許諾】特許権者において、実施許諾の用意がある。
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】特許業務法人磯野国際特許商標事務所
(74)【代理人】
【識別番号】100064414
【弁理士】
【氏名又は名称】磯野 道造
(74)【代理人】
【識別番号】100111545
【弁理士】
【氏名又は名称】多田 悦夫
(72)【発明者】
【氏名】三ツ峰 秀樹
【審査官】 藤原 敬利
(56)【参考文献】
【文献】 特開2003−281504(JP,A)
【文献】 特開2003−279310(JP,A)
【文献】 特開2006−242943(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/222− 5/257
G06T 7/00 − 7/60
(57)【特許請求の範囲】
【請求項1】
撮影カメラで撮影された撮影映像と、前記撮影カメラに装着された姿勢計測手段が当該撮影カメラの姿勢を計測したカメラ姿勢計測情報とを用いて、前記撮影カメラの姿勢を推定するカメラ姿勢推定装置であって、
前記撮影映像を構成するフレーム画像から特徴点を抽出し、異なる前記フレーム画像の間で同一の特徴点が対応付けられた対応点を探索し、外れ値除外処理及び最適化処理により、前記撮影カメラの姿勢を推定したカメラ姿勢推定情報と、前記フレーム画像に含まれる対応点の空間位置とを求めるカメラ姿勢推定手段と、
前記フレーム画像の分割領域毎に、前記カメラ姿勢推定情報を用いて、前記空間位置で表した対応点を前記フレーム画像に再投影した再投影位置と、前記カメラ姿勢推定手段が探索した対応点の画像内位置との再投影誤差平均値を算出し、前記再投影誤差平均値の最大及び最小の比である不均一度を算出する不均一度算出手段と、
前記フレーム画像の各分割領域に含まれる対応点の数に基づいて、前記対応点の偏在度を算出する偏在度算出手段と、
前記偏在度と前記不均一度との比である評価値に基づいて、前記撮影映像について、前記カメラ姿勢推定情報の推定精度が高い高精度区間と、当該推定精度が前記高精度区間よりも低い中精度区間と、当該推定精度が前記中精度区間よりも低い低精度区間とを判定する評価値判定手段と、
前記高精度区間における撮影カメラの姿勢推定結果として、前記カメラ姿勢推定情報を出力する高精度区間推定手段と、
前記カメラ姿勢計測情報を拘束条件とした最適化処理により、前記カメラ姿勢推定情報を用いて前記撮影カメラの姿勢を再推定して、前記中精度区間における撮影カメラの姿勢推定結果として出力する中精度区間推定手段と、
前記低精度区間における撮影カメラの姿勢推定結果として、前記カメラ姿勢計測情報を出力する低精度区間推定手段と、
を備えることを特徴とするカメラ姿勢推定装置。
【請求項2】
前記不均一度算出手段は、4つの前記分割領域毎に再投影誤差平均値を算出し、式(1)に示すように、前記再投影誤差平均値の最大EreproMaxと、前記再投影誤差平均値の最小EreproMinとの比である前記不均一度Dを算出し、
前記偏在度算出手段は、4つの前記分割領域毎に対応点の数を算出し、式(2)に示すように、前記分割領域の中で最小の対応点の数NMin及び前記分割領域の中で2番目に少ない対応点の数NMin2ndの加算値を、前記分割領域毎の対応点の数Nの総和で除算することで、前記偏在度Sを算出することを特徴とする請求項1に記載のカメラ姿勢推定装置。
【数1】
【数2】
【請求項3】
前記中精度区間推定手段は、前記カメラ姿勢計測情報を拘束条件とした最適化処理として、
前記カメラ姿勢計測情報から、前記撮影カメラの方向を示す回転情報を抽出し、
前記中精度区間のフレーム画像に含まれる対応点に対応する、前記高精度区間のフレーム画像に含まれる対応点の空間位置を求め、
当該空間位置で表した対応点を、前記回転情報が示す方向を指した撮影カメラの撮像面に投影し、
当該空間位置で表された対応点と前記撮像面に投影された対応点との延長線が前記撮影カメラの光学主点に収束するように、前記カメラ姿勢推定情報が示す撮影カメラの位置を最適化することを特徴とする請求項1又は請求項2に記載のカメラ姿勢推定装置。
【請求項4】
コンピュータを、請求項1に記載のカメラ姿勢推定装置として機能させるためのカメラ姿勢推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本願発明は、撮影カメラの姿勢を推定するカメラ姿勢推定装置及びそのプログラムに関する。
【背景技術】
【0002】
映像制作では、カメラ姿勢を利用して、撮影映像中の被写体に接触するような配置で、CG(computer graphics)のオブジェクトを合成することが行われている。例えば、この合成処理は、撮影映像中に机が含まれており、その机上にCGの壺を合成するという処理である。
【0003】
従来から、撮影映像を用いて、カメラ姿勢を計測する手法も提案されている。一般的に、撮影映像を用いたカメラ姿勢推定手法では、撮影映像上の特徴点の位置及び特徴ベクトルを映像解析により抽出する。そして、このカメラ姿勢推定手法では、その特徴点位置を、特徴ベクトルの類似性を利用して撮影映像中で追跡する。さらに、このカメラ姿勢推定手法では、その追跡結果を利用して、バンドルアジャストメントなどの最適化手法によりカメラ姿勢を推定する(例えば、特許文献1参照)。
【0004】
例えば、特徴点は、撮影映像上で模様がコーナーになっている部分であり、被写体に表れる模様の特定部位を指すものである。このことから、撮影映像を用いたカメラ姿勢推定手法では、前記のように撮影映像中の被写体に仮想的に何らかのCGオブジェクトを接触するように配置する場合、被写体とCGオブジェクトとのずれを生じにくく、映像制作に向くという長所を有する。その一方、このカメラ姿勢推定手法では、特徴点を抽出できない場合又は特徴点を追跡できない場合、カメラ姿勢の推定精度が低下、又は、推定が破たんしてしまう。
【0005】
この他、従来から、ジャイロセンサ、加速度センサなどの姿勢計測手段を用いて、カメラ姿勢を計測する手法も提案されている(例えば、特許文献2参照)。このカメラ姿勢計測手法では、センサの検知方式がデッドレコニング(相対的自己位置推定)のため、ドリフト成分の誤差が生じてしまう。また、このカメラ姿勢計測手法では、ドリフト成分の誤差を無視しても、映像制作に求められる精度を満たしていないのが現状である。
【0006】
さらに、センサを用いるカメラ姿勢計測手法では、センサ自体の姿勢又はセンサが装着されたカメラ筐体の姿勢を計測することになり、被写体に対して計測を行っているわけでない。このため、このカメラ姿勢計測手法では、撮影カメラを移動させたり、向きを変えたりした際、カメラ筐体やレンズに構造的な歪みに起因した被写体の計測誤差が発生し、この計測誤差を校正して、正確なカメラ姿勢を得ることが困難である。
【0007】
以上のように、撮影映像を用いるカメラ姿勢推定手法、及び、センサを用いるカメラ姿勢計測手法は、それぞれ、異なる長所と短所を有しており、撮影環境を選ばす、高精度なカメラ姿勢を得ることが困難である。
【0008】
そこで、従来から、撮影映像及びセンサを用いる手法を併用することも提案されている(以下、「従来の併用手法」と呼ぶ)。従来の併用手法では、カメラ姿勢の推定精度を評価する尺度として、再投影誤差の総和平均を求めている。
なお、再投影誤差とは、3次元座標で表された被写体上の特徴点を撮影カメラの撮像面に再投影した2次元座標と、抽出した特徴点の2次元座標との誤差を示す。
【0009】
そして、従来の併用手法では、この再投影誤差の総和平均に基づいて、撮影映像から推定されたカメラ姿勢、又は、センサで計測されたカメラ姿勢の何れかを選択的に利用する。このとき、従来の併用手法では、対応点が撮影映像に偏りなく存在する場合、各特徴点の再投影誤差が均一なので、この再投影誤差の総和平均がある程度の範囲に収まり、カメラ姿勢の推定精度を正しく評価することができる。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2009−237845
【特許文献2】特開2007−142993
【発明の概要】
【発明が解決しようとする課題】
【0011】
しかし、従来の併用手法では、対応点が撮影映像に偏在する場合、各特徴点の再投影誤差が不均一であっても、再投影誤差の総和平均がある程度の範囲に収束してしまい、カメラ姿勢の推定精度を正しく評価することが困難である。
【0012】
そこで、本願発明は、前記した問題を解決し、高い精度でカメラ姿勢を推定できるカメラ姿勢推定装置及びそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0013】
前記した課題を解決するため、本願第1発明に係るカメラ姿勢推定装置は、撮影カメラで撮影された撮影映像と、撮影カメラに装着された計測手段が当該撮影カメラの姿勢を計測したカメラ姿勢計測情報とを用いて、撮影カメラの姿勢を推定するカメラ姿勢推定装置であって、カメラ姿勢推定手段と、不均一度算出手段と、偏在度算出手段と、評価値判定手段と、高精度区間推定手段と、中精度区間推定手段と、精度区間推定手段と、を備えることを特徴とする。
【0014】
かかる構成によれば、カメラ姿勢推定装置は、カメラ姿勢推定手段によって、撮影映像を構成するフレーム画像から特徴点を抽出し、異なるフレーム画像の間で同一の特徴点が対応付けられた対応点を探索し、外れ値除外処理及び最適化処理により、撮影カメラの姿勢を推定したカメラ姿勢推定情報と、フレーム画像に含まれる対応点の空間位置とを求める。
【0015】
また、カメラ姿勢推定装置は、不均一度算出手段によって、フレーム画像の分割領域毎に、カメラ姿勢推定情報を用いて、空間位置で表した対応点をフレーム画像に再投影した再投影位置と、カメラ姿勢推定手段が探索した対応点の画像内位置との再投影誤差平均値を算出し、再投影誤差平均値の最大及び最小の比である不均一度を算出する。
【0016】
また、カメラ姿勢推定装置は、偏在度算出手段によって、フレーム画像の各分割領域に含まれる対応点の数に基づいて、対応点の偏在度を算出する。
また、カメラ姿勢推定装置は、評価値判定手段によって、評価値に基づいて、評価値に基づいて、撮影映像について、カメラ姿勢推定情報の推定精度が高い高精度区間と、推定精度が高精度区間よりも低い中精度区間と、推定精度が中精度区間よりも低い低精度区間とを判定する。
【0017】
この評価値は、偏在度と不均一度との比で表される。このため、カメラ姿勢推定装置は、対応点が撮影映像に偏在し、各対応点の再投影誤差が不均一になる場合でも、撮影カメラの姿勢推定精度を正しく評価することができる。
【0018】
また、カメラ姿勢推定装置は、高精度区間推定手段によって、高精度区間における撮影カメラの姿勢推定結果として、カメラ姿勢推定情報を出力する。そして、カメラ姿勢推定装置は、中精度区間推定手段によって、カメラ姿勢計測情報を拘束条件とした最適化処理により、カメラ姿勢推定情報を用いて撮影カメラの姿勢を再推定して、中精度区間における撮影カメラの姿勢推定結果として出力する。さらに、カメラ姿勢推定装置は、低精度区間推定手段によって、低精度区間における撮影カメラの姿勢推定結果として、カメラ姿勢計測情報を出力する。
【0019】
また、本願第2発明に係るカメラ姿勢推定装置は、不均一度算出手段が、4つの分割領域毎に再投影誤差平均値を算出し、後記する式(1)に示すように、再投影誤差平均値の最大EreproMaxと、再投影誤差平均値の最小EreproMinとの比である不均一度Dを算出し、偏在度算出手段が、4つの分割領域毎に対応点の数を算出し、後記する式(2)に示すように、分割領域の中で最小の対応点の数NMin及び分割領域の中で2番目に少ない対応点の数NMin2ndの加算値を、分割領域毎の対応点の数Nの総和で除算することで、偏在度Sを算出することを特徴とする。
かかる構成によれば、カメラ姿勢推定装置は、不均一度及び偏在度を正確に求めることができる。
【0020】
また、本願第3発明に係るカメラ姿勢推定装置は、中精度区間推定手段が、カメラ姿勢計測情報を拘束条件とした最適化処理として、カメラ姿勢計測情報から、撮影カメラの方向を示す回転情報を抽出し、中精度区間のフレーム画像に含まれる対応点に対応する、高精度区間のフレーム画像に含まれる対応点の空間位置を求め、回転情報が示す撮影カメラの方向で、空間位置で表した対応点を撮影カメラの撮像面に投影し、空間位置で表された対応点と撮像面に投影された対応点との延長線が撮影カメラの光学主点に収束するように、カメラ姿勢推定情報が示す撮影カメラの位置を最適化することを特徴とする。
かかる構成によれば、カメラ姿勢推定装置は、中精度区間の境界で急激にカメラ姿勢が変化しないように補間を行うことができる。
【0021】
ここで、本願第1発明に係るカメラ姿勢推定装置は、コンピュータが備えるCPU(Central Processing Unit)、メモリ、HDD(Hard Disk Drive)などのハードウェア資源を、前記した各手段として協調動作させるためのカメラ姿勢推定プログラムとして実現することもできる。このカメラ姿勢推定プログラムは、通信回線を介して配布してもよく、CD−ROMやフラッシュメモリなどの記録媒体に書き込んで配布してもよい(本願第4発明)。
【発明の効果】
【0022】
本願発明によれば、以下のような優れた効果を奏する。
本願第1,4発明によれば、対応点が撮影映像に偏在し、各対応点の再投影誤差が不均一になる場合でも、評価値が偏在度と不均一度との比で表されるため、撮影カメラの姿勢推定精度を正しく評価することができる。これによって、本願第1,4発明によれば、高い精度で撮影カメラの姿勢を推定することができる。
【0023】
本願第2発明によれば、不均一度及び偏在度が正確に求められるので、より高い精度で撮影カメラの姿勢を推定することができる。
本願第3発明によれば、中精度区間の境界で急激に撮影カメラの姿勢が変化しないので、撮影カメラの姿勢推定結果を利用して、滑らかなCG映像を制作することができる。
【図面の簡単な説明】
【0024】
図1】本願発明の実施形態に係るカメラ姿勢推定装置の構成を示すブロック図である。
図2】本願発明の実施形態において、対応点を説明する説明図である。
図3】本願発明の実施形態において、撮影映像からカメラ姿勢を推定する原理を説明する説明図である。
図4】本願発明の実施形態において、再投影誤差を説明する説明図である。
図5図1の不均一度算出手段が分割したブロックを説明する説明図である。
図6図1の再推定手段による再推定を説明する説明図である。
図7】本願発明の実施形態において、回転情報の一致を説明する説明図である。
図8図1の再推定手段による回転情報の接続を説明する説明図である。
図9】本願発明の実施形態において、位置情報の一致を説明する説明図である。
図10図1の再推定手段によるせん断を説明する説明図である。
図11図1のカメラ姿勢推定装置の動作を示すフローチャートである。
図12】本願発明の変形例において、対応点の分布と偏在度との関係を説明する説明図である。
【発明を実施するための形態】
【0025】
(実施形態)
[カメラ姿勢推定システムの概略]
図1を参照し、カメラ姿勢推定システム100の概略について、説明する。
図1に示すように、カメラ姿勢推定システム100は、撮影カメラCの姿勢を推定するものであり、撮影カメラCと、カメラ姿勢推定装置1とを備える。
【0026】
撮影カメラCは、映像を撮影する一般的なカメラである。本実施形態では、撮影カメラCは、姿勢計測手段Caと、レンズ状態計測手段Cbとを備える。
姿勢計測手段Caは、撮影カメラCの姿勢を計測するものであり、例えば、撮影カメラCに装着されたジャイロスコープ及び加速度センサである。そして、姿勢計測手段Caは、撮影カメラCの姿勢を示すセンサ情報(カメラ姿勢計測情報)を、カメラ姿勢推定装置1に出力する。
このセンサ情報は、撮影カメラCの方向を示す回転情報(回転行列)と、撮影カメラCの位置を示す位置情報(並進行列)とが含まれる。
【0027】
レンズ状態計測手段Cbは、撮影カメラCのレンズ状態(例えば、ズーム値)を計測するものである。例えば、レンズ状態計測手段Cbは、ズームリング(不図示)の回転量を計測するロータリーエンコーダである。そして、レンズ状態計測手段Cbは、レンズ状態を示すレンズ情報を、カメラ姿勢推定装置1に出力する。
【0028】
なお、撮影カメラCは、レンズ状態、及び、カメラ姿勢を計測可能であれば、姿勢計測手段Ca及びレンズ状態計測手段Cbが特に制限されない。例えば、姿勢計測手段Caは、別途、センサーカメラ(不図示)を取り付け、このセンサーカメラの映像を解析して、撮影カメラCの位置情報を生成してもよい。
【0029】
カメラ姿勢推定装置1は、撮影カメラCから入力された撮影映像及びセンサ情報を併用して、撮影カメラCの姿勢を推定するものである。
撮影映像を用いるカメラ姿勢推定手法では、その推定精度が高い程、CG映像の品質が良好になる。このため、撮影映像を用いるカメラ姿勢推定手法は、映像制作に高い親和性を有する。従って、カメラ姿勢推定装置1は、撮影映像を用いるカメラ姿勢推定手法を基本とする。
以下、「撮影映像を用いるカメラ姿勢推定手法」を「画像解析」と略記する場合がある。
【0030】
すなわち、カメラ姿勢推定装置1は、画像解析による推定結果を評価し、撮影映像を、推定精度が高い高精度区間と、推定精度が中程度の中精度区間と、推定精度が低い低精度区間とに区分する。
【0031】
ここで、カメラ姿勢推定装置1は、高精度区間について、画像解析による推定結果をそのまま出力する。
また、カメラ姿勢推定装置1は、中精度区間について、画像解析による推定結果を、センサ情報を利用して補間する。つまり、カメラ姿勢推定装置1は、僅かに特徴点を追跡できる中精度区間において、この特徴点と、姿勢計測手段Caによるセンサ情報とを併用した再推定を行うことで、推定結果の精度を可能な限り向上させる。
さらに、カメラ姿勢推定装置1は、低精度区間について、センサ情報を出力する。
【0032】
[カメラ姿勢推定装置の構成]
以下、カメラ姿勢推定装置1の構成について、説明する。
図1に示すように、カメラ姿勢推定装置1は、記憶手段10と、画像解析手段(カメラ姿勢推定手段)20と、推定結果判定手段30と、第1補間処理手段(高精度区間推定手段)40と、再推定手段(中精度区間推定手段)50と、第2補間処理手段(低精度区間推定手段)60とを備える。
【0033】
記憶手段10は、例えば、撮影カメラCから入力された撮影映像と、センサ情報と、レンズ情報とを記憶する半導体記録装置である。このとき、記憶手段10は、撮影映像を構成するフレーム画像にセンサ情報及びレンズ情報を紐付けて、記憶する。
【0034】
画像解析手段20は、記憶手段10に記憶された撮影映像に画像解析処理を施すことで、撮影カメラCの姿勢を示す姿勢情報(カメラ姿勢推定情報)を求めるものである。具体的には、画像解析手段20は、画像解析処理として、特徴点抽出処理、対応点探索処理、外れ値除外処理、及び、最適化処理を行う。
この姿勢情報は、撮影カメラCの方向を示す回転情報(回転行列)と、撮影カメラCの位置を示す位置情報(並進行列)とが含まれる。
【0035】
まず、画像解析手段20は、基準画像及び参照画像とから、SIFT(Scale Invariant Feature Transform)、SURF(Speeded Up Robust Features)などの特徴点を抽出する。
【0036】
図2に示すように、基準画像90は、撮影映像を構成するフレーム画像のうち、画像解析処理が施されるフレーム画像である。
参照画像91は、基準画像90と異なるフレーム画像である。
【0037】
次に、画像解析手段20は、基準画像90から抽出された特徴点92を追跡し、基準画像90と参照画像91との間で対応点92を探索する。この対応点92は、基準画像90と参照画像91との間で同一の特徴点92が対応付けられたものである。図2の例では、画像解析手段20は、前景部分の対応点92と、テーブルの隅にある対応点92と、箱の隅にある対応点92とを探索する。
【0038】
次に、画像解析手段20は、RANSAC(RANdom SAmple Consensus)、LMedS(the Least Median of Squares)などの外れ値除外処理を施す。そして、画像解析手段20は、バンドルアジャストメントなど最適化処理を行い、姿勢情報及び対応点92の3次元座標(空間位置)を求める。図3の例では、基準画像90及び参照画像91,91´において、対応点92,92,92の2次元座標(画像位置)が既知である。また、被写体Objの特徴点92,92,92が、基準画像90及び参照画像91,91´の対応点92,92,92に対応する。従って、画像解析手段20は、この対応点92,92,92の対応関係を利用して、最適化処理により、被写体Objの特徴点92,92,92の3次元座標と、姿勢情報とを求めることができる。
【0039】
その後、画像解析手段20は、記憶手段10に記憶された撮影映像と、センサ情報と、レンズ情報とを、推定結果判定手段30に出力する。さらに、画像解析手段20は、画像解析処理により求めた姿勢情報と、被写体Obj上の対応点の3次元座標と、画像解析処理の過程で得られた対応点の2次元座標とを、推定結果判定手段30に出力する。
【0040】
なお、カメラ姿勢推定装置1は、基準画像90及び参照画像91が異なるフレーム画像であれば、基準画像90及び参照画像91を任意に設定できる。例えば、カメラ姿勢推定装置1は、撮影映像が短い場合、基準画像90と参照画像91とを全て組み合わせて、画像解析処理を行う。また、カメラ姿勢推定装置1は、撮影映像が長い場合、処理負荷が高くなるので、撮影映像を一定時間(例えば、30秒)毎に分割し、分割した撮影映像毎に画像解析処理を行ってもよい。さらに、カメラ姿勢推定装置1は、撮影映像が長い場合、撮影映像にシーン抽出処理を施して、同一シーンの撮影映像毎に画像解析処理を行ってもよい。
【0041】
図1に戻り、カメラ姿勢推定装置1の構成について、説明を続ける。
推定結果判定手段30は、画像解析手段20の推定結果がどの程度の精度であるかを判定するものであり、不均一度算出手段31と、偏在度算出手段33と、評価値判定手段35とを備える。
【0042】
不均一度算出手段31は、基準画像90のブロック(分割領域)毎に、姿勢情報を用いて再投影誤差の平均値を算出し、不均一度Dを算出するものである。
この再投影誤差とは、被写体Obj上の対応点を基準画像90に再投影した2次元座標(再投影位置)と、画像解析手段20が抽出した対応点の2次元座標(画像内座標)との誤差を示す。
【0043】
偏在度算出手段33は、基準画像90の各ブロックに含まれる対応点の数に基づいて、偏在度Sを算出するものである。
評価値判定手段35は、偏在度Sと不均一度Dとの比である評価値Cに基づいて、撮影映像について、高精度区間と、中精度区間と、低精度区間とを判定するものである。
【0044】
<推定結果判定手段による判定>
図4図5を参照し、推定結果判定手段30による判定について、説明する(適宜図1参照)。
カメラ姿勢推定装置1は、正解となるカメラ姿勢を有していない。このため、推定結果判定手段30は、推定条件が良いか悪いかを拠り所として、間接的に推定結果の精度を判定することになる。ここで、本願発明者は、以下(A)〜(D)の知見を得ている。
【0045】
(A)動画像中で推定対象のフレーム画像(基準画像)と他のフレーム画像(参照画像)とで同一の特徴点、つまり、対応点が少ない場合、カメラ姿勢の推定が破綻しやすい傾向にある。無論、カメラ姿勢の推定に必要な対応点数を満たさなければ、カメラ姿勢の推定そのものを行えない。
【0046】
(B)対応点は、特徴点の特徴ベクトルの類似度から求められるが、必ずしも正解ではなく、誤対応点が含まれる。推定対象のフレーム画像において、対応点における誤り率、つまり、誤対応の割合が多い場合、推定精度の低下又は推定の破綻を引き起こす。
【0047】
(C)最適化によって、姿勢情報と、対応点の3次元位置とが求まる。求めた姿勢情報及びレンズ情報を用いて、求めた対応点の3次元座標(空間位置)を撮影カメラCの撮像面(基準画像90)に再投影する。この対応点の2次元座標(再投影位置)と、画像解析処理により求めた2次元座標(画像内位置)とは、本来、同一位置になる。なぜならば、最適化処理は、対応点を撮像面に再投影した再投影位置と、画像解析処理により求めた対応点とについて、両位置の距離の総和平均をコスト関数とし、このコスト関数を最小とする処理のためである。
なお、再投影の手法については、説明を後記する。
【0048】
従って、誤対応がある場合、図4に示すように、対応点92と、この対応点92を撮影カメラCの撮像面(基準画像90)に再投影した位置92´とが、同一位置にならない。つまり、対応点92の再投影誤差Δ1は、対応点92と再投影位置92´との位置ずれを示す。
なお、対応点92,92も対応点92と同様のため、説明を省略する。
【0049】
一般的に、推定が上手く行えたか否かを判定する尺度には、従来の再投影誤差の総和平均が用いられる。この再投影誤差の総和平均は、対応点がフレーム画像に均一に分散し、各対応点における再投影誤差が一様に小さくなるならば、推定精度を正しく評価することができる。しかし、再投影誤差が大きくなる場合、推定精度が低下又は推定が破綻している可能性が高い。最適化処理では、統計的にカメラ姿勢を推定するため、例えば、対応点が偏在する場合、その偏在部位が適切に最適化されない状態となり、全体として真値から外れた値に収束することとなる。この場合、再投影誤差の大きい対応点は、その数が少ないため、最適化にあまり寄与しないか、又は、外れ値として除外されることになる。従って、再投影誤差が不均一であるか否かを基準画像のブロック毎に評価することで、再投影誤差がある程度の範囲に収まっている場合でも、推定精度が低いか否かを判定できる。
【0050】
(D)推定対象のフレーム画像で対応点が偏在する場合、その偏在部分でオーバーフィッティング(過学習)することとなり、推定精度が低下する。
【0051】
ここで、評価値Cを用いるまでもなく、(A)を判定することができる。(B)については、誤対応であるか否かの判定が困難であるが、(C)及び(D)の評価に包含することができる。従って、(C)及び(D)の知見から、評価値Cは、以下のように求めることができる。
【0052】
不均一度Dは、式(1)に示すように、再投影誤差平均値の最大EreproMaxと、再投影誤差平均値の最小EreproMinとの比で表される。
【0053】
【数1】
【0054】
この場合、不均一度算出手段31は、図5の破線で図示したように、基準画像90を4個のブロックに分割し、各対応点で再投影誤差を求める。そして、不均一度算出手段31は、各ブロックに含まれる対応点の再投影誤差を平均し、ブロック毎に再投影誤差平均値を求める。さらに、不均一度算出手段31は、最大誤差となるブロックの再投影誤差平均値をEreproMaxとし、最小誤差となるブロックの再投影誤差平均値をEreproMinとして、式(1)を用いて、不均一度Dを算出する。
【0055】
偏在度Sは、式(2)に示すように、ブロックの中で最小の対応点の数NMin及びブロックの中で2番目に少ない対応点の数NMin2ndの加算値を、ブロック毎の対応点の数Nの総和で除算する式で定義される。
【0056】
【数2】
【0057】
この場合、偏在度算出手段33は、図5に示すように、基準画像90を4個のブロックに分割し、各ブロックに含まれる対応点の数をカウントする。そして、偏在度算出手段33は、対応点が最小となるブロックの対応点数をNMinとし、対応点が2番目に少ないブロックの対応点数をNMin2ndとして、式(2)を用いて、偏在度Sを算出する。
【0058】
評価値Cは、式(3)に示すように、偏在度Sと不均一度Dとの比で表される。この評価値Cは、値が大きくなるほど推定精度が高いことを示し、値が小さくなるほど推定精度が低いことを示す。
【0059】
【数3】
【0060】
評価値判定手段35は、各基準画像から評価値Cを算出し、式(4)を用いて、評価値Cが閾値Cth未満であるか否かを判定する。具体的には、評価値判定手段35は、式(4)を満たさない場合、基準画像が高精度区間に属すると判定する。一方、評価値判定手段35は、式(4)を満たす場合、この基準画像が高精度区間以外の区間(中精度区間又は低精度区間の何れか)に属すると判定する。
【0061】
【数4】
【0062】
前記したように、対応点の数が少ない場合、推定精度の低下又は推定の破綻を引き起こす。また、対応点探索処理の時点において、ある程度の対応点が残っている場合でも、外れ値除外処理により対応点の数が減少することもある。このため、評価値判定手段35は、最適化処理後の対応点数を用いて、高精度区間以外に属すると判定された区間について、中精度区間としての再推定が行えるか否かを判定する。
【0063】
ここで、最適化処理後に残った対応点が、高精度区間の基準画像と、高精度区間以外の参照画像とに含まれる場合を考える。この場合、高精度区間以外の参照画像に含まれる対応点の数をPとする。そして、評価値判定手段35は、式(5)に示すように、この対応点数Pが閾値Pthを超えるか否かを判定する。
【0064】
【数5】
【0065】
評価値判定手段35は、式(5)を満たす場合、基準画像が中精度区間に属すると判定する。一方、評価値判定手段35は、式(5)を満さない場合、基準画像が低精度区間に属すると判定する。
【0066】
その後、推定結果判定手段30は、高精度区間について、姿勢情報を第1補間処理手段40に出力する。また、推定結果判定手段30は、中精度区間について、姿勢情報と、センサ情報と、レンズ情報と、対応点情報とを再推定手段50に出力する。さらに、推定結果判定手段30は、低精度区間について、センサ情報を第2補間処理手段60に出力する。
なお、対応点情報とは、基準画像内での対応点の2次元座標と、被写体上の対応点の3次元座標とを示す。
【0067】
なお、閾値Cth及び閾値Pthは、経験的に求めた値を手動で設定することとし、撮影映像のサイズや品質などにより調整することが好ましい。本実施形態では、例えば、閾値Cth=0.05とし、閾値Pth=100とに設定した。
【0068】
<再投影の手法>
以下、再投影の手法について、説明する。
再投影を行うための射影変換は、式(6)及び式(7)で定義することができる。
【0069】
【数6】
【0070】
【数7】
【0071】
この式(6)及び式(7)では、対応点の3次元座標を(Xworld,Yworld,Zworld)、撮影カメラCの回転行列をR、撮影カメラCの並進行列をT、撮影カメラCの撮像面中心を(o,o)、撮影カメラCの画素サイズを(k,k)、撮影カメラCのレンズの焦点距離をf、撮影カメラCの撮像面の2次元座標を(ximage,yimage)とする。
【0072】
さらに、撮影カメラCのレンズには歪みがあるので、式(8)及び式(9)を用いて、撮影カメラCの撮像面の2次元座標(ximage,yimage)に、この歪みを反映させる。
【0073】
【数8】
【0074】
【数9】
【0075】
この式(8)及び式(9)では、歪み補正後の撮像面の2次元座標を(x,y)、歪み補正前の撮像面の2次元座標を(x,y)、撮影カメラCのレンズ中心である歪み中心を(x,y)、n次湾曲歪み係数をK、n次タンジェンシャル歪み係数をP、撮影カメラCのレンズ中心(x,y)から2次元座標(x,y)までの距離をrとする。
【0076】
つまり、式(7)で表される撮像面の2次元座標(ximage,yimage)が、式(8)及び式(9)で表される撮像面の2次元座標(x,y)に相当する。また、本実施形態では、1次湾曲歪み係数K及び2次湾曲歪み係数Kのみを考慮し(n=1,2)、レンズ中心(x,y)及びタンジェンシャル歪みを考慮していない。
【0077】
なお、歪みを反映させる手法は、下記の参考文献に記載されているため、これ以上の説明を省略する。
参考文献「de Villiers, J. P.; Leuschner, F.W.; Geldenhuys, R. (17-19 November 2008). "Centi-pixel accurate real-time inverse distortion correction" . 2008 International Symposium on Optomechatronic Technologies. SPIE. doi:10.1117/12.804771」
【0078】
なお、本願発明は、前記レンズモデルに限定されず、他のレンズモデルを適用してもよい。
また、本願発明は、レンズの歪みを考慮せずに、再投影を行ってもよい。
【0079】
図1に戻り、カメラ姿勢推定装置1の構成について、説明を続ける。
第1補間処理手段40は、高精度区間における撮影カメラCの姿勢推定結果として、推定結果判定手段30からの姿勢情報を出力するものである。すなわち、高精度区間では、画像解析処理により求められた姿勢情報が、そのまま出力される。
【0080】
再推定手段50は、センサ情報を拘束条件とした最適化処理(例えば、バンドルアジャストメント)により、姿勢情報と、レンズ情報と、対応点情報とを用いて、撮影カメラCの姿勢を再推定するものである。そして、再推定手段50は、再推定した撮影カメラCの姿勢を、中精度区間の姿勢推定結果として出力する。
【0081】
<再推定手段による再推定>
図6を参照し、再推定手段50による再推定について、説明する(適宜図1参照)。
最適化処理後に残った対応点が、中精度区間に属するフレーム画像と、高精度区間に属するフレーム画像とに含まれる場合を考える。この高精度区間のフレーム画像に含まれる対応点を「残存対応点」と呼ぶことがある。
【0082】
再推定手段50は、中精度区間では、姿勢情報及びセンサ情報に加えて、対応点情報も利用して再推定を行う。中精度区間は、最適化処理において、真値以外に収束したか、又は、カメラ姿勢の推定が破綻した状態である。このため、中精度区間のフレーム画像に含まれる対応点の2次元座標を用いても、高い精度でカメラ姿勢を推定することが困難である。一方、高精度区間において、最適化処理後に残った対応点(残存対応点)は、3次元座標を有している。従って、中精度区間において、この残存対応点と対応関係がある対応点は、3次元座標に紐付けることが可能になる。さらに、センサ情報のうち、撮影カメラCの方向を示す回転情報も利用可能である。
【0083】
まず、再推定手段50は、中精度区間に属するフレーム画像の対応点に対応した、残存対応点の3次元座標を、対応点情報から得ることができる。また、再推定手段50は、センサ情報から回転情報を抽出する。このとき、再推定手段50は、接続点で回転情報が一致するように、後記する回転情報の接続処理を施す。
なお、接続点とは、時間方向において、高精度区間に属するフレーム画像と、中精度区間又は低精度区間に属するフレーム画像とが接する部分のことである。
【0084】
次に、再推定手段50は、回転情報及びレンズ情報を拘束条件として、各対応点の3次元座標を撮像面に再投影した位置と、画像解析により得た対応点の2次元位置との距離の総和平均値が最小となるように、最適化処理を行う。具体的には、再推定手段50は、図6に示すように、3次元座標で表された被写体Objの対応点92を撮影カメラCの撮像面93に投影する。このとき、再推定手段50は、回転情報が示す方向に撮像面93を向ける。そして、再推定手段50は、被写体Objの対応点92と、撮像面93に投影された特徴点92との延長線94を求める。さらに、再推定手段50は、全ての延長線94が撮影カメラCの光学主点に収束するように、姿勢情報が示す撮影カメラC(レンズの光学主点)の位置を最適化する。
なお、図6では、図面を見やすくするため、一部符号のみを図示した。
また、撮影カメラCの撮像面93とは、撮影映像を構成するフレーム画像(基準画像90)のことである。
【0085】
図1に戻り、カメラ姿勢推定装置1の構成について、説明を続ける。
第2補間処理手段60は、低精度区間における撮影カメラCの姿勢推定結果として、推定結果判定手段30からのセンサ情報を出力するものである。
ここで、低精度区間では姿勢情報を利用できない。そこで、第2補間処理手段60は、センサ情報から回転情報と、位置情報とを抽出する。また、第2補間処理手段60は、低精度区間と、中精度区間及び高精度区間との接続点について、回転情報の接続処理と、位置情報の接続処理とを行い、内挿補間する。
【0086】
<回転情報の接続処理>
図7図8を参照し、再推定手段50で行われる回転情報の接続処理について、説明する(適宜図1参照)。
【0087】
図7に示すように、姿勢計測手段Caで計測されたセンサ情報の世界座標系αと、画像解析処理で求められた姿勢情報の世界座標系βとが、異なっている。このため、再推定手段50は、世界座標系α,βを整合させる接続処理を行う。
【0088】
ここで、接続処理は、センサ情報のドリフト成分を抑制するため、撮影映像全体を処理対象とするのではなく、接続点に前後する短い区間(時間)を対象とする。
具体的には、再推定手段50は、式(10)に示すように、姿勢情報に含まれる回転行列Rを基準として、センサ情報に含まれる回転行列Rを整合させる。すなわち、再推定手段50は、回転行列Rと、回転行列Rの逆行列R−1と、回転行列Rとを乗算する。
【0089】
【数10】
【0090】
図8に示すように、この中精度区間95の前側F及び後側Bでは、ドリフト成分の誤差が生じている可能性がある(図8の符号A)。そこで、再推定手段50は、中精度区間95の前側Fにおいて、逆行列R−1により、回転行列R,Rを一致させる。さらに、再推定手段50は、中精度区間95の後側Bを一致させた際に生じる回転行列Rの誤差成分を4元数で表し、フレーム間距離を用いて、回転行列Rの誤差成分を線形に配分する。これによって、再推定手段50は、中精度区間95と高精度区間96との接続点において、回転成分のショックを低減し、回転情報が急激に変化することを防止できる(図8の符号A´)。
なお、第2補間処理手段60は、再推定手段50と同様、低精度区間と、中精度区間又は高精度区間との接続点で、回転情報の接続処理を行うため、説明を省略する。
【0091】
<位置情報の接続処理>
図9図10を参照し、第2補間処理手段60で行われる位置情報の接続処理について、説明する(適宜図1参照)。
【0092】
この低精度区間の前後において、並進成分は、回転成分よりも大きな誤差が生じる。
まず、第2補間処理手段60は、低精度区間の前側において、平行移動によって、姿勢情報に含まれる撮影カメラCの位置と、センサ情報に含まれる撮影カメラC´の位置とを一致させる。具体的には、第2補間処理手段60は、図9に示すように、位置情報が示す撮影カメラCの位置まで、センサ情報が示す撮影カメラC´の位置を平行移動させて、撮影カメラC,C´の位置を一致させる。
【0093】
次に、第2補間処理手段60は、低精度区間の後側において、空間のせん断処理、又は、スケーリング処理の何れかを行って、姿勢情報に含まれる位置情報と、センサ情報に含まれる位置情報とを一致させる。これによって、第2補間処理手段60は、接続点において、並進成分のショックを低減し、位置情報が急激に変化することを防止できる。
【0094】
空間のせん断処理とは、3次元空間のX,Y,Z軸で、アフィン変換のせん断を行うことである。例えば、X軸方向のせん断であれば、図10(a)に示すように、X軸方向への変位がY座標値に比例させる。また、X軸方向のせん断では、図10(b)に示すように、X軸方向への変位をZ座標値に比例させてもよい。この図10では、アフィン変換前を実線で図示し、アフィン変換後を破線で図示した。
【0095】
スケーリング処理とは、低精度区間の前側を回転軸とし、低精度区間の後側が一致するよう回転及びスケーリングを行う処理のことである。
なお、本実施形態では、第2補間処理手段60が空間のせん断を行っている。
【0096】
[カメラ姿勢推定装置の動作]
図11を参照し、カメラ姿勢推定装置1の動作について、説明する(適宜図1参照)。
ここで、記憶手段10は、撮影映像と、センサ情報と、レンズ情報とが記憶されていることとする。
【0097】
カメラ姿勢推定装置1は、画像解析手段20によって、記憶手段10に記憶された撮影映像に画像解析処理を施すことで、姿勢情報を求める(ステップS1)。
カメラ姿勢推定装置1は、不均一度算出手段31によって、前記した式(1)を用いて、不均一度Dを算出する(ステップS2)。
カメラ姿勢推定装置1は、偏在度算出手段33によって、前記した式(2)を用いて、偏在度Sを算出する(ステップS3)。
【0098】
カメラ姿勢推定装置1は、評価値判定手段35によって、前記した式(3)を用いて、評価値Cを算出する(ステップS4)。
カメラ姿勢推定装置1は、評価値判定手段35によって、評価値Cが閾値Cth未満であるか否かを判定する(ステップS5)。
評価値Cが閾値Cth未満の場合(ステップS5でYes)、カメラ姿勢推定装置1は、評価値判定手段35によって、対応点数Pが閾値Pthを超えるか否かを判定する(ステップS6)。
【0099】
対応点数Pが閾値Pthを超える場合(ステップS6でYes)、カメラ姿勢推定装置1は、再推定手段50によって、センサ情報を拘束条件とした最適化処理により、姿勢情報と、レンズ情報と、対応点情報とを用いて、再推定を行う(ステップS7)。
【0100】
対応点数Pが閾値Pth以下の場合(ステップS6でNo)、カメラ姿勢推定装置1は、第2補間処理手段60によって、低精度区間における撮影カメラCの姿勢推定結果として、センサ情報を出力する(ステップS8)。
【0101】
評価値Cが閾値Cth以上の場合(ステップS5でNo)、カメラ姿勢推定装置1は、高精度区間における撮影カメラCの姿勢推定結果として、姿勢情報を出力する(ステップS9)。
【0102】
以上のように、カメラ姿勢推定装置1は、対応点が撮影映像に偏在し、各特徴点の再投影誤差が不均一になる場合でも、式(1)〜式(5)を用いて、不均一度D及び偏在度Sを正確に算出することができる。このため、カメラ姿勢推定装置1は、撮影カメラCの姿勢推定精度を正しく評価して、高い精度で撮影カメラの姿勢を推定することができる。
さらに、カメラ姿勢推定装置1は、再推定手段50によって、接続点で急激に撮影カメラCの姿勢が変化しないように再推定を行うので、滑らかなCG映像を制作できる。
【0103】
なお、カメラ姿勢推定装置1は、ディスクリートロジックや、FPGA(Field Programmable Gate Array)などを利用したハードウェアで実現することができる。また、カメラ姿勢推定装置1は、一般的なコンピュータを前記した各手段として協調動作させるソフトウェア(プログラム)で実現することもできる。
【0104】
(変形例)
なお、本願発明は、前記した実施形態に限定されず、その趣旨を逸脱しない範囲で変形を加えることができる。
不均一度算出手段31及び偏在度算出手段33は、基準画像90を4個以外のブロックに分割してもよい。
また、不均一度算出手段31及び偏在度算出手段33は、基準画像90を矩形状のブロックに分割するのではなく、エッジ領域又は色領域で分割してもよい。
【0105】
以下、基準画像90を4個のブロック以外に分割した場合について、評価値Cの算出手法を説明する(適宜図1参照)。
基本的には、推定結果判定手段30は、分散及び相関と、再投影誤差とを考慮して、評価値Cを算出する。
【0106】
まず、不均一度算出手段31は、再投影誤差が一定以下となる対応点を抽出する。また、不均一度算出手段31は、基準画像内で対応点の分散(画像上の位置)を算出する。この分散は、2次元座標系の共分散でなく、対応点の重心位置からの距離に対する分散である。これによって、不均一度算出手段31は、式(11)に示すように、再投影誤差が小さい対応点が基準画像の特定箇所に集中しているか否かの判定指標(不均一度Dの二乗)を得ることができる。
この式(11)では、対応点の重心位置がx ̄であり、対応点の数がnであり、各対応点の距離がxである。
【0107】
【数11】
【0108】
偏在度算出手段33は、式(12)に示すように、基準画像内で対応点の相関を算出する。これによって、偏在度算出手段33は、再投影誤差が小さい対応点の偏在傾向の判定指標(偏在度S)を得ることができる。
この式(12)対応点の重心位置の2次元座標が(x ̄,y ̄)であり、対応点の2次元座標が(x,y)である。
【0109】
【数12】
【0110】
図12の例では、偏在度Sが‘0’に近い程、対応点が偏在していないことを示し、偏在度Sが‘1’に近い程、対応点が偏在していることを示す。この図12の例では、基準画像内での対応点の分布をドットで図示し、その偏在度Sを基準画像の上部に図示した。つまり、図12では、偏在度Sと、対応点の分布との関係を20パターン例示した。
【0111】
ここで、基準画像を4個のブロック以外に分割した場合を考える。この場合、評価値判定手段35は、ブロック分割する手法と、ブロック分割しない手法とを利用することができる。
【0112】
ブロック分割する場合、評価値判定手段35は、ブロック毎に再投影誤差が一定以下の対応点数をカウントする。そして、評価値判定手段35は、対応点数が一定以上のブロックのフラグを‘1’、対応点数が一定未満のブロックのフラグを‘0’に設定する。さらに、評価値判定手段35は、フラグが‘1’に設定されたブロックに対し、前記した式(11)及び式(12)の算出手法(対応点を1ブロックの座標に置換)を適用することで、前記した(3)を用いて、評価値Cを算出できる。
【0113】
一方、評価値判定手段35は、ブロック分割せずに、再投影誤差が一定以下の対応点を点単位で利用する場合、それら対応点の座標を用いて、前記した式(11)及び式(12)の算出手法(対応点を1ブロックの座標に置換)を適用することで、前記した(3)を用いて、評価値Cを算出できる。
【産業上の利用可能性】
【0114】
本願発明は、CG合成、拡張現実(AR:Augmented Reality)などの映像制作に利用することができる。
【符号の説明】
【0115】
1 カメラ姿勢推定装置
10 記憶手段
20 画像解析手段(カメラ姿勢推定手段)
30 推定結果判定手段
31 不均一度算出手段
33 偏在度算出手段
35 評価値判定手段
40 第1補間処理手段(高精度区間推定手段)
50 再推定手段(中精度区間推定手段)
60 第2補間処理手段(低精度区間推定手段)
100 カメラ姿勢推定システム
C 撮影カメラ
Ca 姿勢計測手段
Cb レンズ状態計測手段
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12