IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ KDDI株式会社の特許一覧

<>
  • 特許-画像処理装置、方法及びプログラム 図1
  • 特許-画像処理装置、方法及びプログラム 図2
  • 特許-画像処理装置、方法及びプログラム 図3
  • 特許-画像処理装置、方法及びプログラム 図4
  • 特許-画像処理装置、方法及びプログラム 図5
  • 特許-画像処理装置、方法及びプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-16
(45)【発行日】2023-01-24
(54)【発明の名称】画像処理装置、方法及びプログラム
(51)【国際特許分類】
   G06T 19/00 20110101AFI20230117BHJP
【FI】
G06T19/00 A
【請求項の数】 11
(21)【出願番号】P 2020039176
(22)【出願日】2020-03-06
(65)【公開番号】P2021140594
(43)【公開日】2021-09-16
【審査請求日】2022-02-07
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【弁理士】
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【弁理士】
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】今野 智明
【審査官】村松 貴士
(56)【参考文献】
【文献】特開2011-048627(JP,A)
【文献】特開2017-204222(JP,A)
【文献】特開2010-152771(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00 - 19/20
(57)【特許請求の範囲】
【請求項1】
多視点画像の各視点画像に第1及び第2のグループ割り当てを行って第1グループ画像及び第2グループ画像を得る割当部と、
前記第1グループ画像及び前記第2グループ画像に対してそれぞれ前景シルエットのマスク抽出を行うことで、第1マスク画像及び第2マスク画像を生成するマスク生成部と、
前記第1マスク画像及び前記第2マスク画像に対してそれぞれ視体積交差法を適用することで、第1モデル及び第2モデルを生成するモデル生成部と、
前記第1モデル及び前記第2モデルの類似性を評価することにより、前記第1モデル及び前記第2モデルのモデル精度に関する評価結果を得るモデル評価部と、を備えることを特徴とする画像処理装置。
【請求項2】
前記モデル生成部では、ボクセルモデルとして、前記第1モデル及び第2モデルを生成することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記モデル生成部では、共通のボクセル空間におけるボクセルモデルとして、前記第1モデル及び第2モデルを生成し、
前記モデル評価部では、前記共通のボクセル空間における各ボクセル位置において、前記第1モデル及び前記第2モデルにおける3次元オブジェクトに属する位置であるか否かの結果の整合に基づいて、前記類似性を評価することを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記モデル評価部では、各ボクセル位置における前記結果の整合している個数の総和に基づいて前記類似性を評価することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記モデル評価部では、前記結果の整合している個数の総和を、各ボクセル位置における空間重みを付与したうえで計算することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記各ボクセル位置における空間重みは、前記共通のボクセル空間において予め設定されているものであることを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記各ボクセル位置における空間重みは、前記第1モデル及び第2モデルにおいて求められている1つ以上のオブジェクトの代表位置からの乖離に応じて設定されるものであることを特徴とする請求項5に記載の画像処理装置。
【請求項8】
前記第1モデル及び前記第2モデルを合成して合成モデルを生成するモデル合成部と、
前記合成モデルを前記多視点画像の各視点画像の画像平面へと逆投影したモデルマスク画像を算出し、当該モデルマスク画像と、前記第1マスク画像及び前記第2マスク画像の各々と、を比較して一致度合いを評価することにより、前記第1マスク画像及び前記第2マスク画像の各々についてのマスク精度の評価結果を得るマスク評価部をさらに備えることを特徴とする請求項1ないし7のいずれかに記載の画像処理装置。
【請求項9】
多視点画像の各視点画像に第1及び第2のグループ割り当てを行って第1グループ画像及び第2グループ画像を得る割当部と、
前記第1グループ画像及び前記第2グループ画像に対してそれぞれ前景シルエットのマスク抽出を行うことで、第1マスク画像及び第2マスク画像を生成するマスク生成部と、
前記第1マスク画像及び前記第2マスク画像に対してそれぞれ視体積交差法を適用することで、第1モデル及び第2モデルを生成するモデル生成部と、
前記第1モデル及び前記第2モデルを合成して合成モデルを生成するモデル合成部と、
前記合成モデルを前記多視点画像の各視点画像の画像平面へと逆投影したモデルマスク画像を算出し、当該モデルマスク画像と、前記第1マスク画像及び前記第2マスク画像の各々と、を比較して一致度合いを評価することにより、前記第1マスク画像及び前記第2マスク画像の各々についてのマスク精度の評価結果を得るマスク評価部と、を備えることを特徴とする画像処理装置。
【請求項10】
多視点画像の各視点画像に第1及び第2のグループ割り当てを行って第1グループ画像及び第2グループ画像を得る割当段階と、
前記第1グループ画像及び前記第2グループ画像に対してそれぞれ前景シルエットのマスク抽出を行うことで、第1マスク画像及び第2マスク画像を生成するマスク生成段階と、
前記第1マスク画像及び前記第2マスク画像に対してそれぞれ視体積交差法を適用することで、第1モデル及び第2モデルを生成するモデル生成段階と、
前記第1モデル及び前記第2モデルの類似性を評価することにより、前記第1モデル及び前記第2モデルのモデル精度に関する評価結果を得るモデル評価段階と、を備えることを特徴とする画像処理方法。
【請求項11】
多視点画像の各視点画像に第1及び第2のグループ割り当てを行って第1グループ画像及び第2グループ画像を得る割当段階と、
前記第1グループ画像及び前記第2グループ画像に対してそれぞれ前景シルエットのマスク抽出を行うことで、第1マスク画像及び第2マスク画像を生成するマスク生成段階と、
前記第1マスク画像及び前記第2マスク画像に対してそれぞれ視体積交差法を適用することで、第1モデル及び第2モデルを生成するモデル生成段階と、
前記第1モデル及び前記第2モデルの類似性を評価することにより、前記第1モデル及び前記第2モデルのモデル精度に関する評価結果を得るモデル評価段階と、をコンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、視体積交差法の生成モデルに関連する評価を行うことが可能な画像処理装置、方法及びプログラムに関する。
【背景技術】
【0002】
仮想オブジェクトの生成方法に関して、カメラ映像を利用して3D(3次元)モデルを生成する手法がある。例えば、複数のカメラを被写体の周りを囲むように配置して撮影された映像から3Dモデルを生成することができる(特許文献2)。
【0003】
非特許文献1では、複数の映像から形状モデルを生成する視体積交差法という手法が提案されている。この手法では、複数の視点で同時に撮影したシルエット映像を視錐体としてそれぞれ3D空間上に投影した際に、その積集合部分を形状モデルとして表現する。また、特許文献3では、視体積交差法で取得した形状を改善するため、学習した軌跡データを探索して類似する高精度な形状を取得する提案がなされている。
【0004】
複数のモデルを利用して統合したモデルを生成する手法も提案されている(非特許文献2)。ステレオ視で生成した点群と視体積交差法で取得した点群との幾何学的関係および連続性を考慮することで、品質の高い形状モデルを生成することができるとしている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2019-101795号公報
【文献】特開2018-163467号公報
【文献】特開2009-048305号公報
【非特許文献】
【0006】
【文献】A. Laurentini, ``The visual hull concept for silhouette-based image understanding,'' IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 16, no. 2, Feb 1994.
【文献】松田ら, "グラフカットを利用した視体積交差法と多視点ステレオから得られた点群の統合", IPSJ SIG Technical Report, Vol.2012-CVIM-180, no. 0, Jan 2012.
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述の視体積交差法を適用して3Dモデルを生成するにあたり、例えば、野球シーンでのバッターやピッチャーなどといった3Dモデル生成対象の前景となるシルエットを精度よく抽出することは重要である。以下、前景のシルエット部分を白く、背景を黒く表現した画像をマスク画像と呼ぶ。当該マスク画像はすなわち、2値画像として、シルエットを抽出した結果を表すものである。
【0008】
マスクの抽出は、背景差分などの手法で実施される。例えば、画素位置ごとに画素値の統計情報を取得しておき、入力画素が背景と前景のどちらに属するかによって決定すればよい。しかしながら、環境の変化によりマスクが精度良く抽出できないことがある。精度が低いマスクを利用して3Dモデルを生成するとその形状は誤っている可能性が高くなる。3Dモデルの形状が正しいかどうかは、人間が目視で確認することで判断することも可能であるが、時間や手間がかかってしまう問題がある。
【0009】
したがって、もし推定された3Dモデルの形状の劣化などを自動的に検知できれば、モデルの形状を改善する手法を効率的に適用することができると考えられる。改善手法の例としては、手動でも構わないが、入力映像に対して輝度などのしきい値を設けてそのパラメータを制御するなどが考えられる。
【0010】
しかしながら、特許文献1,2,3や非特許文献1の手法では、モデル生成についての手法は提案されているものの、生成したモデルを逐次評価する仕組みは提供されていない。非特許文献2では、当該領域がステレオ視で生成された点群と視体積交差法で生成された点群とでどちらを採用するかをコスト関数で評価し決定することで精度の高いモデルを生成する手法が記載されているが、三角測量の原理でステレオ視を適用できる前提として、表面テクスチャが精度よく撮影されていること等を必要とし、このような条件が満たされずステレオ視の3Dモデル精度が低いことが明らかな場合に、視体積交差法の結果だけを単独で用いて視体積交差法のモデル精度を評価することができない。
【0011】
上記従来技術の課題に鑑み、本発明は、視体積交差法の生成モデルに関連した評価を自動で行うことが可能な画像処理装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
上記目的を達成するため、本発明は、多視点画像の各視点画像に第1及び第2のグループ割り当てを行って第1グループ画像及び第2グループ画像を得る割当部と、前記第1グループ画像及び前記第2グループ画像に対してそれぞれ前景シルエットのマスク抽出を行うことで、第1マスク画像及び第2マスク画像を生成するマスク生成部と、前記第1マスク画像及び前記第2マスク画像に対してそれぞれ視体積交差法を適用することで、第1モデル及び第2モデルを生成するモデル生成部と、前記第1モデル及び前記第2モデルの類似性を評価することにより、前記第1モデル及び前記第2モデルのモデル精度に関する評価結果を得るモデル評価部と、を備える画像処理装置であることを第1の特徴とする。
【0013】
また、前記モデル評価部に加えてまたは代えて、前記第1モデル及び前記第2モデルを合成して合成モデルを生成するモデル合成部と、前記合成モデルを前記多視点画像の各視点画像の画像平面へと逆投影したモデルマスク画像を算出し、当該モデルマスク画像と、前記第1マスク画像及び前記第2マスク画像の各々と、を比較して一致度合いを評価することにより、前記第1マスク画像及び前記第2マスク画像の各々についてのマスク精度の評価結果を得るマスク評価部を前記画像処理装置が備えることを第2の特徴とする。また、前記画像処理装置に対応する方法及びプログラムであることを特徴とする。
【発明の効果】
【0014】
前記第1の特徴によれば、多視点画像を第1及び第2グループに分けて第1及び第2モデルを生成し、当該モデルの類似性を評価するという簡素な手法により、視体積交差法で生成された第1及び第2モデルを自動評価することが可能となる。前記第2の特徴によれば、視体積交差法の生成モデルに関連する情報としての第1マスク画像及び第2マスク画像を自動評価することが可能となる。
【図面の簡単な説明】
【0015】
図1】一実施形態に係る画像処理装置の機能ブロック図である。
図2】本実施形態での処理の枠組みを模式的に説明するための図である。
図3】既存技術としての視体積交差法を模式的に示す図である。
図4】モデル評価部による評価の模式例を示す図である。
図5】マスク評価部での評価結果を得るまでの処理の流れを模式的に示す図である。
図6】一般的なコンピュータ装置におけるハードウェア構成の例を示す図である。
【発明を実施するための形態】
【0016】
図1は、一実施形態にかかる画像処理装置の機能ブロック図である。画像処理装置10は、割当部1、マスク生成部2、モデル生成部3、モデル評価部4、モデル合成部5、マスク評価部6及び描画部7を備える。画像処理装置10は、その全体的な動作として、多視点映像の各時刻t=1,2,…のフレーム画像としての多視点画像を入力として読み込み、(1)モデル評価部4において当該多視点画像に撮影されている対象の3Dモデルの評価結果を出力し、(2)モデル合成部5において当該多視点画像に撮影されている対象の3Dモデルの合成結果を出力し、(3)マスク評価部6において当該多視点画像に撮影されている対象についてのマスクの評価結果を出力し、(4)描画部7において当該多視点画像より、ユーザ指定される仮想視点における自由視点画像を生成することが可能なものである。
【0017】
上記出力される(1)~(4)に関して、図1の各機能部間の入出力の関係に示されるように、(3)マスク評価部6及び(4)描画部7の出力には、(2)モデル合成部5が出力する合成モデルを入力として必要とするが、(1)モデル評価部4の出力には当該合成モデルを入力として必要としない。従って、例えばモデル合成部5の出力が必要となるがモデル評価部4の出力が不要な用途において、画像処理装置10ではモデル評価部4を省略した構成を取るようにしてよい。
【0018】
画像処理装置10においては入力としての多視点映像の各時刻t=1,2,…のフレーム画像としての多視点画像についてリアルタイムで以上の処理を行うことが可能であり、例えば描画部7からはリアルタイムに自由視点映像を出力することが可能である。各時刻t=1,2,…における画像処理装置10の各機能ブロックの処理内容は共通であるため、以下の説明は特に時刻に言及しない限り、任意の時刻t=1,2…で共通の処理に関するものとする。
【0019】
本実施形態の画像処理装置10の利用例等は次の通りである。すなわち、仮想画面の中で、スポーツシーンなどで視聴者が選手をあらゆる角度から見るといったユースケースを想定しており、自由視点映像技術に関する。自由視点映像技術は、複数カメラ映像から3Dモデルを生成することで、任意の視点のビューを作り出すことができる。できるだけ多くのカメラ映像を利用して3Dモデルを作ることで、3Dモデルの精度を高めることができる。一方で、カメラ台数が多数でかつ短時間での制作が求められる場合には、並列処理を適用してスケールアウトできる仕組みが望ましい場合がある。本実施形態は、これを想定した内容となっている。
【0020】
本実施形態では、会場に設置した複数のカメラ映像を複数のグループに分割して、グループ毎に処理を行い、最終的に1つの3Dモデルとして合成することを想定している。図2は、本実施形態での処理の枠組みを模式的に説明するための図である。例えば、図2のカメラCAは多視点映像を撮影している複数カメラの全部であり、グループを分けて第1グループのカメラC1及び第2グループのカメラC2とし、それぞれのグループで生成したボクセルモデルMD1及びMD2同士を矢印A1として示されるように比較することで、モデルの精度を評価して問題の有無を自動で検知することで、マスクなどのパラメータのチューニングといった改善につなげることを、人手により常時監視する等の作業を必須とすることなく効率的に実現することができる。さらに、矢印A2として示されるように、各グループで生成したボクセルモデルMD1及びMD2を合成して、精度が向上された合成モデルMD12を出力することもできる。
【0021】
なお、図2で矢印A1として示される2つのモデルの比較処理を行うのが、モデル評価部4であり、矢印A2として示される2つのモデルの合成処理を行うのが、モデル合成部5である。以下、図1の画像処理装置10の各機能部の説明を行う。
【0022】
<割当部1>
割当部1は、入力される多視点画像の各カメラ視点の画像について、2つのグループを割り当てて、当該割り当てて区別された結果としての第1グループ画像および第2グループ画像をマスク生成部2へと出力する。図2の例であれば、多視点画像を構成する全カメラCAに対して、白色で示されるカメラについて第1グループに属するカメラC1であるものとし、灰色で示されるカメラについて第2グループに属するカメラC2であるものとし、グループ割り当てを行うのが割当部1の役割である。
【0023】
グループ割り当てをする際には、同一のカメラが複数のグループに属すように重複を許す分割をしてもよい。重複が多くなるほど各グループで生成されるモデルの差は小さくなる傾向となる。ただし、第1及び第2グループが全く同じ2つのグループにはならないように割り当てる。また、カメラグループは必ずしも固定にする必要はなく、時間に応じて変化させてもよい。例えば、入力される多視点画像を各時刻t=1,2,…のフレームとして有する多視点映像に関して、当該多視点映像を構成している撮影シーンの前半と後半でカメラグループのグループ分けを変更するということなどである。なお、重複を許容する場合と許容しない場合とのいずれにおいても、第1及び第2グループのいずれもが、後述するモデル生成部3において視体積交差法で適切なモデル生成が可能となるように、割当部1ではできるだけ撮影シーンを全周から囲むようなカメラグループとなるように第1及び第2グループを割り当てることが好ましい。
【0024】
なお、入力される多視点画像を撮影している複数のN台(N≧2)の各カメラC1,C2,…,CNのカメラパラメータ(内部パラメータ及び外部パラメータ)は既知であるか、または、事前またはリアルタイムのキャリブレーションによって推定されており、画像処理装置10ではこのカメラパラメータの情報を参照して利用可能であるものとする。(例えば、後述するモデル生成部3、マスク評価部6、描画部7等における処理は、このカメラパラメータを参照して行うことが可能である。)また、入力される多視点画像は、スポーツシーン等の同一シーンを異なるカメラ視点(カメラの位置姿勢)から時刻tを同期して撮影されるものとして、用意しておく。
【0025】
割当部1によるカメラのグループ割り当ては、ルールベース等を用いればよい。例えば、カメラ視点が第1グループと第2グループとで均一に分散して存在するように割り当てればよい。図2の模式例では、同一シーンを円周状に囲んで撮影している全カメラCAについて、円周上で隣接するもの同士が互いに異なるグループに属するように割り当てが行われている。
【0026】
<マスク生成部2>
マスク生成部2では、割当部1で得た第1グループの画像の各々と第2グループの画像の各々とに対して、前景を構成するシルエットを表すマスク画像を生成し、得られた第1グループのマスク画像の各々と第2グループのマスク画像の各々とをモデル生成部3及びマスク評価部6へと出力する。
【0027】
マスク生成部2では、背景差分法などの任意の既存手法でマスク画像を生成すればよい。例えば、画素位置ごとに画素値の統計情報を予め取得しておき、入力画素が背景と前景のどちらに属するかによって決定すればよい。なお、後述するマスク評価部6では、マスク生成部2の生成したマスク画像の評価を自動で行うことが可能である。
【0028】
<モデル生成部3>
モデル生成部3では、マスク生成部2で得た第1グループのマスク画像を用いて第1モデルを生成し、且つ、第2グループのマスク画像を用いて第2モデルを生成し、得られた第1モデル及び第2モデルをモデル評価部4及びモデル合成部5へと出力する。モデル生成部3では、既存手法である視体積交差法(例えば特許文献2でも利用されているもの)を第1グループ及び第2グループに対してそれぞれ同様に適用することにより、第1グループのマスク画像から第1モデルを生成し、第2グループのマスク画像から第2モデルを生成する。
【0029】
図3は、既存技術としての視体積交差法を模式的に示す図である。既知のように、視体積交差法の原理は、K台のカメラC1,C2,…,CKの位置(図3ではカメラをそのカメラ中心として示す)からそれぞれ、マスク画像M1,M2,…,MKの前景上へと3次元逆投影を行って得られる視錐体V1,V2,…,VKが全て通過する共通体積部分(ビジュアル・ハルVH)として、3Dモデルを得るものである。なお、図3では模式例としてK台のカメラのうち最初の2台C1,C2とそのマスク画像M1,M2及び視錐体V1,V2のみが示されている。
【0030】
この図3に模式的に示される原理に基づく視体積交差法(ボクセルを利用するもの)で実際に3Dモデルを生成する際は、3次元逆投影とは逆に、マスク画像上への2次元投影を利用することができる。すなわち、モデル空間に所定のボクセル集合(3次元モデル空間内での離散的な格子点集合)を予め定義して配置しておき、ボクセルの各点(X,Y,Z)に関して、K台のカメラC1,C2,…,CKのマスク画像M1,M2,…,MK上へと2次元投影を行うことで各マスク画像上での投影位置(x,y)[1],( x,y)[2]…, (x,y)[K]を求め、K枚のマスク画像の全てにおいて、シルエットとしての前景上に投影されたようなボクセル点(X,Y,Z)に関しては3Dモデルの内部(又は表面)に属すると判定し、これ以外のボクセル点(X,Y,Z)(少なくとも1枚のマスク画像において背景上に投影されたボクセル点(X,Y,Z))に関しては、3Dモデルに属さない外部の点であると判定することができる。投影には、各マスク画像に対応する視点のカメラパラメータを用いればよい。こうして肯定判定を得られたボクセルの集合が、得られる3Dモデルとなる。
【0031】
上記のように、ボクセルを用いた既存技術としての視体積交差法においては、3次元モデル空間内の所定範囲(例えば直方体状の範囲)に、所定密度のボクセル集合(X,Y,Z)を定義しておき、当該格子点としての全てのボクセル点(X,Y,Z)に関して、視体積交差法によるK枚のマスク画像上への前景/背景への投影結果の判定を行うこととなる。
【0032】
なお、上記の図3を参照した説明では視体積交差法の一般的な枠組みを説明するためにK枚のマスク画像としたが、既に説明した通り、本実施形態のモデル生成部3においては、第1グループのマスク画像(N1枚とする)と、第2グループのマスク画像(N2枚とする)とについてそれぞれ個別に、視体積交差法を適用する。
【0033】
<モデル評価部4>
モデル評価部4は、モデル生成部3で得た第1グループの第1モデルと第2グループの第2モデルとを比較することにより、第1モデル及び第2モデルの精度に関する評価結果を出力する。具体的には、第1モデルと第2モデルとが空間配置として類似していると判定される場合には、第1モデル及び第2モデルの精度が良い(OKである)と評価し、類似していないと判定される場合には、第1モデル及び第2モデルのうち少なくともいずれかの精度が悪い(OKではなく、NGである)と評価することができる。
【0034】
モデル評価部4による評価結果の出力態様に関して、例えば、「OKではない」評価結果であった場合に、画面などのGUI(グラフィカルユーザインタフェース)にアラートなどを表示してシステム利用者に通知するなどすればよい。通知されたシステム利用者は、手動か否かを問わず、モデルの改善のためのパラメータチューニングなどを検討したり実施したりすることが可能となる。対比例として、このような本実施形態の通知を適用しない場合には、生成したモデルをシステム運用者が逐次見て確認することになってしまう。この際、システム運用者が、モデルに欠けや不要なアーティファクトなどがないかを確認することになるため負担が大きくなる可能性があるのに対し、本実施形態では問題が発生している可能性がある場合に自動通知されるため、負担を低減することが可能となる。
【0035】
一実施形態では、モデル評価部4は次のようにして評価値Dを計算することにより評価結果E(=OKまたはNG)を得ることができる。グループg(g=1又は2で第1グループ又は第2グループを表す)のi番目のボクセルをv_igとすると、オブジェクトを有する場合はv_ig=1、オブジェクトを有さない場合はv_ig=0として、第1及び第2モデルを表現することができる。グループg=1とグループg=2でそれぞれ生成されたボクセルモデルにおいて、同じ位置iのボクセルの差をd_i=|v_i1-v_i2|とする。(すなわち、前提として、モデル生成部3においては第1モデル及び第2モデルを、共通のボクセル空間において生成しているものとし、当該共通のボクセル空間の各ボクセルが「位置i」として識別されているものとする。)
【0036】
以下の疑似コードSC1で表現されるように、この各ボクセルの差を全ボクセルに対して総和(疑似コードSC1においてSUM関数として表現される総和)をとり、評価値Dを計算する。ただし、ボクセルモデルのボクセルの総数をNumとする。なお、平均などを計算して評価値Dとしてもよい。
[SC1] D= SUM(d_i) {i=1, … Num}
【0037】
さらに、以下の2行の疑似コードSC2,SC3に示されるように、評価値Dが所定のしきい値Th_D以下であれば(疑似コードの1行目に該当する場合であれば)、評価結果E=OKとする。2つのボクセルモデルの間で差が小さいということなので、生成したモデルに問題はないと判断してもよい。一方、評価値DがTh_Dより大きければ(疑似コードの2行目に該当する場合であれば)、生成したモデルに問題が生じたと判断して、システム運用者などに通知などしてもよい。なお、しきい値Th_Dは予め実験的に決定するなどすればよい。
[SC2] If D <= Th_D then E=OK
[SC3] else E=NG
【0038】
図4は、上記の通り説明したモデル評価部4による評価の模式例を示す図であり、例EX1は結果E=OKの例であり、例EX2は結果E=NGの例である。例EX1では第1モデルMD1と第2モデルMD2とを矢印a41に示すように比較し、矢印a51で示されるようにその結果R1として、相違が存在するボクセルが閾値判定で少ないという結果により、結果E=OKと出力される。例EX2では第1モデルMD1と第2モデルMD2とを矢印a42に示すように比較し、矢印a52で示されるようにその結果R2として、相違が存在するボクセルが閾値判定で多いという結果により、結果E=OKと出力される。(なお、結果R1及びR2においては、相違が存在しているボクセル(ボクセル差d_iが0ではなく1となるボクセル)の位置が濃色で示されることで、両モデルの比較結果が模式的に示されている。)
【0039】
上記の一実施形態は、第1モデルと第2モデルとの間で各位置iのボクセルに関してオブジェクト(3Dモデル)に該当するか否かの結果の一致度を、個数としてカウントすることで評価するものであった。別の一実施形態として、個数をそのまま均一にカウントするのではなく、空間的な位置に基づく重みづけを付与したうえで評価するようにしてもよい。具体的には例えば以下のようにすればよい。
【0040】
すなわち、モデル生成部3でボクセルモデルを生成するのに用いる所定のボクセル領域に対して、事前に、生成モデルに関して重要なボクセルであるか、それほど重要ではないボクセルかの区別を付与しておき、当該区別をボクセルに対する重みとして利用してよい。
【0041】
ここで、多視点画像の内容に応じて、主にターゲットとしたい領域をボクセル領域R={(X,Y,Z)|X0≦X≦X1,Y0≦Y≦Y1,Z0≦Z≦Z1}の中心C={(X0+X1)/2,(Y0+Y1)/2,(Z0+Z1)/2,}に予め設定することが考えられる。例えば、野球のバッターボックス付近の領域を中心Cとして、その周辺領域のバッターボックス外までボクセル領域Rを設定することが考えられる。ターゲットとしたい中心Cに近いと判定される領域(中心領域とする)は重要で、中心Cから遠い周辺領域(中心領域以外の領域)はあまり重要でないといった場合に、この空間的な重みを調整することで、周辺領域における2つのボクセルモデルの差の影響を軽減することができる。
【0042】
当該ボクセルv_iが中心領域か否かを判定する関数Center()(中心領域に該当する場合に1(真)を出力し、該当しない場合に0(偽)を出力する関数)を用いて、その際のグループ1とグループ2の当該ボクセルの差d_iは以下の2行の疑似コードSC4,SC5にて表現される。ただし、w=0.0~1.0の所定の小数であり、重みづけ度合いを調整するものである。0.5<w<1の範囲で設定することにより中心領域の方を重視した設定とできるが、逆に、0<w<0.5の範囲で設定することにより周辺領域の方を重視した設定とすることも可能である。当該定義される差d_iを用いて、上記説明した疑似コードSC1,SC2,SC3と同様にして、空間的な重みを考慮した評価結果を得ることができる。
[SC4] if Center(v_i)=1 then d_i= w *|v_i1-v_i2|
[SC5] else d_i = (1.0-w) *|v_i1-v_i2|
【0043】
また、上記では中心Cをボクセル領域R全体での中心として、多視点画像の撮影状態において事前に設定されるものとしたが、中心以外の所定位置を用いてもよい。また、第1モデル及び第2モデルを構成する各オブジェクト(野球の場合の複数の選手の各々など)を、ボクセル同士の連結領域として識別してIDを付与し、いずれかのオブジェクトの重心や当該オブジェクトを囲む矩形領域(bounding box領域)の中心等の、オブジェクトの代表位置に近いか否かにより、上記の中心Cと同様の重みづけを行うようにしてもよい。このような重みづけにより、オブジェクトの中心側ほど重要視して評価を行うことが可能である。第1モデル及び第2モデルを構成する各オブジェクトの識別に関しては、後述するモデル合成部5で得る合成モデルに関して、各オブジェクトの識別を行うようにすればよい。
【0044】
<モデル合成部5>
モデル合成部5は、モデル生成部3で得た第1モデル及び第2モデルを合成して得られる合成モデルを出力する。当該出力される合成モデルは、画像処理装置10からの出力として、管理者等による確認が可能とされ、また、マスク評価部6及び描画部7に対する入力としても利用される。
【0045】
モデル合成部5では、第1モデル及び第2モデルの各位置iにおいてボクセルv_i1, v_i2で論理積をとる手法により、合成モデルを得ることができる。すなわち、論理積の結果が1となったボクセルにはオブジェクトを有し0となったボクセルにはオブジェクトを有さないものとして、合成モデルを得ることができる。あるいは、別の実施形態として、モデル合成部5ではマスク生成部2で得た第1グループのマスクと第2グループのマスクの全て(すなわち、多視点画像の全視点のマスク画像)を用いて合成モデルを得るようにしてもよい。(なお、図1では、この実施形態においてモデル合成部5が第1及び第2グループのマスクを入力として用いる流れは省略されている。)
【0046】
<マスク評価部6>
マスク評価部6は、モデル合成部5で得た合成モデルを用いて、マスク生成部2で得た第1グループ画像における各マスクと、第2グループ画像における各マスクとについて、マスク精度の評価結果を出力する。
【0047】
マスク評価部6では、合成モデルを各マスクに対応するカメラ視点の画像平面へと逆投影し、合成モデルの逆投影像であるモデルマスク画像とマスクとの相違が小さいほど、マスク精度がよいものとして評価結果を出力できる。モデルマスク画像は各画素位置について投影されているか否かを求め、マスク画像との間で、前景/背景の区別が一致している画素の個数(「一致画素個数」とする)が多いほど、マスク精度がよいものとして評価結果を得ればよい。合成モデルの逆投影に関しては、視体積交差法に関して説明したのと同様に、対応するカメラ視点のカメラパラメータを用いて行うことができる。
【0048】
マスク評価部6ではまた、同一グループ内での上記一致画素個数の総和または平均を計算することにより、グループ毎のマスクの精度の評価値を算出するようにしてもよい。マスク評価部6ではまた、モデル評価部4で用いた(3次元)空間的な重みと同様の手法を、2次元空間すなわち画像平面における重みとして利用して、上記一致画素数を空間重みを付与して求めるようにしてもよい。
【0049】
図5は、マスク評価部6での評価結果を得るまでの処理の流れを模式的に示す図であり、第1グループのマスク画像MS1より矢印a1で示すように第1モデルMD1が生成され、第2グループのマスク画像MS2より矢印a2で示すように第2モデルMD2が生成されている。これらを矢印a12で示すように合成して合成モデルMD12が得られ、この合成モデルMD12を矢印a3で示すように逆投影してモデルマスク画像MS12が得られる。このモデルマスク画像MS12を、矢印a31で示すように第1グループのマスク画像MS1と比較し、同様に、矢印a32で示すように第2グループのマスク画像MS2と比較することで、各カメラ視点ごとに、及び、第1及び第2の各グループごとに、マスクの評価結果を得ることができる。
【0050】
なお、この図5の模式例は以下のような状況を想定した例であり、以下のように評価結果を活用することが可能な例である。
【0051】
例えば、(ノイズ等も存在するが概ね)正しくマスクを第1マスク画像MS1として抽出できている第1グループと、全体的に緩めにマスクが第2マスク画像MS2として抜かれている第2グループが存在するとする。モデル生成において、第1グループの第1モデルMD1に比べて、第2グループの第2モデルMD2のほうが、マスクが緩いためボクセルでオブジェクトを有すると判定される個数が大きくなる。
【0052】
この第1グループのモデルMD1と第2グループのモデルMD2を合成すると、視体積交差法の積集合の特性上、第2グループの少し大きめであったボクセルは削られ、第1グループと同等のモデルが合成後のモデルMD12として残ることになる。
【0053】
この合成後のモデルMD12をカメラ画像座標系に対して投影することで得られるモデルマスク画像MS12と元のマスク画像MS1,MS2を比較すると、第1グループの評価値は相違が小さく、第2グループの評価値は相違が大きくなる。したがって、この相違としての評価値が大きいため、第2グループの元のマスク画像は、比較的全体的に緩くシルエットが抽出されていたと判断できる。この結果をシステム運用者に通知することで、いち早くマスク画像の輝度などのパラメータチューニングを行うといったことに役立てることができる。
【0054】
<描画部7>
描画部7では、モデル合成部5で合成モデルとして生成された3Dモデルを、入力である多視点画像のテクスチャを用いて、ユーザ指定される仮想カメラの視点においてレンダリングすることで描画し、得られた仮想視点画像(描画がなされた箇所以外は画素値が定義されないマスク画像となる)を出力する。なお、モデル合成部5ではボクセルモデルとしてモデルが得られているので、描画部7ではこれをマーチングキューブ法等によりポリゴンモデルに変換してから、レンダリングすればよい。
【0055】
描画部7におけるレンダリングには、自由視点映像の合成等において利用されている任意の既存手法(例えば前掲の特許文献2の手法)を利用してよく、3Dモデルの要素であるポリゴンを仮想カメラ視点の画像平面へと投影し、当該投影したポリゴンに、入力である多視点画像より対応するテクスチャを選択して、投影による変形を反映したうえで貼り付けるようにすればよい。ここで、N個の視点の多視点画像のうち、仮想カメラに近い位置姿勢にある1つ以上の画像よりテクスチャを選択すればよい。2つ以上の画像を用いる場合は重みづけ和などを用いてよい。事前に与えられている背景データを用いて、3Dモデル以外の背景も描画するようにしてもよい。
【0056】
本実施形態において、モデル評価部4やマスク評価部6における評価結果において精度の悪い旨の結果が得られている場合に、管理者等は、描画部7で描画される自由視点画像も併せて確認するといったことが可能である。
【0057】
以上、本実施形態の画像処理装置によれば、モデル生成におけるモデルの不具合(またはその可能性)などを自動的に検知することができ、運用者に改善を促すための通知ができる。
【0058】
(1) 割当部1では入力される多視点画像を2グループに分けるものとしたが、3グループ以上に分けて、当該3グループ以上から選択される全ての2グループの組み合わせに関して以上と同様の評価を行うようにしてもよい。例えば、第1~第3グループの3グループに分けて3つのモデルを生成し、モデル評価部4では第1モデル及び第2モデルでの評価結果E[1,2]をE[1,2]=OKとして求め、第2モデル及び第3モデルでの評価結果E[2,3]をE[2,3]=NGとして求め、第3モデル及び第1モデルでの評価結果E[3,1]をE[3,1]=NGとして求める、といった評価が可能である。モデル合成部5では、3つ以上のモデルの論理積等として同様に、合成モデルを生成してよい。
【0059】
モデル評価部4ではまた、全ての2モデル間での評価値の総和を求める等の手法により統合した1つの結果を評価結果として出力するようにしてもよい。例えば、グループkとグループjでそれぞれ生成されたボクセルモデルにおいて、同じ位置iのボクセルの差をd_i (k,j)=|v_ik - v_ij|とする。位置での差の総和をとった場合、前述の疑似コードSC1に代わる疑似コードSC1-2として、以下で表現される。
[SC1-2] D(k,j)= SUM(d_i (k,j)) {i=1,…,Num}
【0060】
さらにグループごとの差の総和をとった場合、総和としての評価値Dは以下の疑似コードSC1-3で表現される。なお、Kはグループ数を表す。以下の疑似コードSC1-3で求めたうえでさらに、D=D/K等として平均を算出してもよい。当該求めた評価値Dに対して、前述の疑似コードSC2,SC3と同様に閾値評価で評価結果Eを得ることができる。
[SC1-3] D=SUM(D(k,j)) {k=1,…,K},{j=k+1 (if k < K), j=1 (if k = K)}
【0061】
(2) 以上では、モデル生成部3でボクセルモデルとして第1及び第2モデルを生成するものとしたが、ボクセルモデルに対してさらに任意の既存手法(マーチングキューブ法など)を適用したポリゴンモデルとして第1モデル及び第2モデルを生成するようにしてもよい。モデル評価部4では、当該ポリゴンモデルの空間的な体積分布の一致度合いを評価することにより、ボクセルモデルの場合と同様に評価結果Eを得ることができる。ボクセルモデルの場合と同様に、空間的な重みを利用してもよい。
【0062】
(3) 本実施形態の画像処理装置10の評価結果等の利用においては、次のような考察を踏まえて、適切に利用することが好ましい。ここまで、生成された3Dモデルが正確であることを前提に説明してきた。生成した3Dモデルから投影したモデルマスク画像を真として、カメラ映像から抽出したマスクとの差分によりマスク精度を計算しているためである。
【0063】
ここで、3Dモデルが正確なのであればカメラ映像から抽出したマスク画像も正確であるかというと、必ずしもそうではない。マスク抽出単体では失敗しているが、3Dモデルを正確に生成できる場合について説明する。マスク抽出を失敗する場合は主に2つである。そもそも人物領域(マスク画像による抽出対象が人物領域であるものとする)がうまく抽出できないケースと、人物領域も抽出できている一方でその他の領域にもノイズが多く残るケースである。前者のケースのマスク画像を利用して視体積交差法でモデル化を行った場合、人物領域部分にオブジェクトを有すると判定されず、人物のモデル化に失敗することが考えられる。
【0064】
一方で、後者のケースのマスク画像を利用する場合、人物領域はマスクとして残っているので、全カメラで人物領域が残っている限り、その部分はうまくモデル化される。ノイズ部分もオブジェクトとして残ってしまうことは問題であるが、ある特定のカメラだけにノイズのようなマスクが残っていて、他のカメラにはノイズが存在しないような場合、あるいはカメラ間で同一の場所にノイズが存在しないような場合、ノイズ部分はオブジェクトを有さないと判定され、結果として人物領域のみがうまく残ることが考えられる。
【0065】
しかしながら、ノイズ部分に少し変化が生じると不要なオブジェクトが出てきてしまう可能性が考えられる。そのため、できるだけ人物領域のみにマスクが残るような設定が望ましい。本実施形態のマスク評価部6の活用によって上記のようなケースのマスクの劣化を検出し、パラメータチューニング等につなげることができる。
【0066】
(4) 図6は、一般的なコンピュータ装置70におけるハードウェア構成の例を示す図である。画像処理装置10は、このような構成を有する1台以上のコンピュータ装置70として実現可能である。なお、2台以上のコンピュータ装置70で画像処理装置10を実現する場合、ネットワーク経由で処理に必要な情報の送受を行うようにしてよい。コンピュータ装置70は、所定命令を実行するCPU(中央演算装置)71、CPU71の実行命令の一部又は全部をCPU71に代わって又はCPU71と連携して実行する専用プロセッサとしてのGPU(グラフィックス演算装置)72、CPU71にワークエリアを提供する主記憶装置としてのRAM73、補助記憶装置としてのROM74、GPU72用のメモリ空間を提供するGPUメモリ78、通信インタフェース75、ディスプレイ76、マウス、キーボード、タッチパネル等によりユーザ入力を受け付ける入力インタフェース77、センサ78、及びカメラ79と、これらの間でデータを授受するためのバスBSと、を備える。
【0067】
画像処理装置10の各機能部は、各部の機能に対応する所定のプログラムをROM74から読み込んで実行するCPU71及び/又はGPU72によって実現することができる。なお、CPU71及びGPU72は共に、演算装置(プロセッサ)の一種である。ここで、表示関連の処理が行われる場合にはさらに、ディスプレイ76が連動して動作し、データ送受信に関する通信関連の処理が行われる場合にはさらに通信インタフェース75が連動して動作する。画像処理装置10による評価結果等はディスプレイ76で表示して出力してよい。カメラ79は、多視点映像を撮影するのに用いるN台のカメラで構成されるものであってもよいし、ネットワーク上に保存されている多視点映像を通信インタフェース75を介して受信するようにしてもよい。
【符号の説明】
【0068】
10…画像処理装置、1…割当部、2…マスク生成部、3…モデル生成部、4…モデル評価部、5…モデル合成部、6…マスク評価部、7…描画部
図1
図2
図3
図4
図5
図6