JP2019046378A - 画像処理装置、画像処理方法及びプログラム - Google Patents

画像処理装置、画像処理方法及びプログラム Download PDF

Info

Publication number
JP2019046378A
JP2019046378A JP2017171469A JP2017171469A JP2019046378A JP 2019046378 A JP2019046378 A JP 2019046378A JP 2017171469 A JP2017171469 A JP 2017171469A JP 2017171469 A JP2017171469 A JP 2017171469A JP 2019046378 A JP2019046378 A JP 2019046378A
Authority
JP
Japan
Prior art keywords
polygons
polygon
camera
viewpoint
peripheral
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017171469A
Other languages
English (en)
Inventor
洋佑 高田
Yosuke Takada
洋佑 高田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017171469A priority Critical patent/JP2019046378A/ja
Publication of JP2019046378A publication Critical patent/JP2019046378A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

【課題】3次元ポリゴンモデルの各ポリゴンに割り当てるカメラ視点の不連続又は散在を抑制することができる画像処理装置を提供することを課題とする。【解決手段】画像処理装置は、被写体の形状を表す3次元ポリゴンモデルの各ポリゴンに割り当てるテクスチャとして、同一の被写体が撮影された複数のカメラ視点の中から1つのカメラ視点をポリゴン毎に選択する第1の選択手段と、前記選択したポリゴンのうちの再選択条件を満たすポリゴンに対しては、対象ポリゴンの周辺ポリゴンについて選択されたカメラ視点を基に、前記複数のカメラ視点の中から1つのカメラ視点を選択し直す第2の選択手段と、前記ポリゴン毎に選択されたカメラ視点の画像を各ポリゴンにテクスチャとして割り当てる割り当て手段とを有する。【選択図】図9

Description

本発明は、画像処理装置、画像処理方法及びプログラムに関する。
特許文献1には、立体形状である対象物を複数の撮影点から撮影して得られたテクスチャ画像を用いて、指定された任意の仮想視点から見える映像を生成する任意視点映像生成装置が開示されている。ブレンドテクスチャ画像選択手段は、テクスチャ画像の各撮影点の3次元位置及び視線方向と、仮想視点の3次元位置及び視線方向とに基づいて、各テクスチャ画像に優先順位を付与し、優先順位に従って混合する複数のテクスチャ画像を選択する。ブレンドテクスチャ画像生成手段は、ブレンドテクスチャ画像選択手段により選択された複数のテクスチャ画像の各撮影点における3次元位置及び視線方向と、仮想視点の3次元位置及び視線方向とに基づいて、混合する各テクスチャ画像のブレンド率を決定する。そして、ブレンドテクスチャ画像生成手段は、ブレンド率に従って複数のテクスチャ画像を混合してブレンドテクスチャ画像を生成する。内挿映像生成手段は、ブレンドテクスチャ画像生成手段により生成されたブレンドテクスチャ画像を3次元モデルにテクスチャマッピングし、仮想視点から見える対象物の2次元の内挿映像を生成する。
特開2010−20487号公報
しかし、特許文献1では、3次元モデルの形状の精度が低い場合、複数のテクスチャ画像を混合してブレンドテクスチャ画像を生成し、ブレンドテクスチャ画像を3次元モデルにテクスチャマッピングすると、テクスチャ画像が不連続になる場合がある。
本発明の目的は、3次元ポリゴンモデルの各ポリゴンに割り当てるカメラ視点の不連続又は散在を抑制することができる画像処理装置、画像処理方法及びプログラムを提供することである。
本発明の画像処理装置は、被写体の形状を表す3次元ポリゴンモデルの各ポリゴンに割り当てるテクスチャとして、同一の被写体が撮影された複数のカメラ視点の中から1つのカメラ視点をポリゴン毎に選択する第1の選択手段と、前記選択したポリゴンのうちの再選択条件を満たすポリゴンに対しては、対象ポリゴンの周辺ポリゴンについて選択されたカメラ視点を基に、前記複数のカメラ視点の中から1つのカメラ視点を選択し直す第2の選択手段と、前記ポリゴン毎に選択されたカメラ視点の画像を各ポリゴンにテクスチャとして割り当てる割り当て手段とを有する。
本発明によれば、3次元ポリゴンモデルの各ポリゴンに割り当てるカメラ視点の不連続又は散在を抑制することができる。
テクスチャ付き3Dポリゴンの生成方法を示す図である。 3Dポリゴンとテクスチャの対応付けを示す図である。 テクスチャ付き3Dポリゴンを表現するためのデータを示す図である。 三角形の表方向の組を示す図である。 マルチカメラを示す図である。 テクスチャマッピング装置の構成例を示すブロック図である。 テクスチャマッピング装置の処理方法を示すフローチャートである。 テクスチャマッピング部の構成例を示すブロック図である。 テクスチャマッピング部の処理を示すフローチャートである。 カメラ視点の再選択方法を説明するための図である。 カメラ視点の再選択方法を示すフローチャートである。 カメラ視点の再選択方法を説明するための図である。 テクスチャマッピング装置のハードウェア構成例を示す図である。
(第1の実施形態)
図1(A)〜(C)は、本発明の第1の実施形態によるテクスチャマッピング装置の処理を説明するための図であり、テクスチャ付き3次元ポリゴンモデル(3Dポリゴンモデル)の生成方法を示す。3Dポリゴンモデルを構成するポリゴンは、例えば三角形である。以下、三角形ポリゴンにテクスチャを付加した3Dポリゴンモデルを説明する。なお、ポリゴンは、三角形に限定されない。図1(A)は、3Dポリゴンモデルであり、例えば三角形ポリゴンモデルの形状を示す。図1(B)は、テクスチャを示す。図1(C)は、テクスチャ付き3Dポリゴンモデルを示す。テクスチャマッピング装置は、図1(A)の3Dポリゴンモデルと図1(B)のテクスチャを組み合わせ、各ポリゴンにテクスチャを描画する視点を決める。そして、テクスチャマッピング装置は、3Dレンダリング処理により、図1(C)のように入力視点からのテクスチャ付き3Dポリゴンモデルの画像を生成する。
テクスチャマッピング装置は、実写の画像を基に、カメラ視点の配置の制約を受けずに自由な仮想視点から被写体を観測し、レンダリングし、テクスチャ付き3Dポリゴンモデルを生成することができる。テクスチャマッピング装置は、被写体の3Dポリゴンモデルにカメラ視点画像を投影し、テクスチャ画像と共に3Dポリゴンモデルの頂点とテクスチャ画像上の座標を対応付けるUVマップを生成する。そして、テクスチャマッピング装置は、レンダリングすることにより、所望の仮想視点のテクスチャ付き3Dポリゴンモデルの画像を生成する。
テクスチャマッピング技術は、テクスチャ生成タイミングにより、(1)仮想視点を決める前にテクスチャを生成する方法と、(2)仮想視点を決めた後にテクスチャを生成する方法に分類される。(1)の方法は、仮想視点に最適化したマッピングを行うことができる。(2)の方法は、視点決定後の処理がレンダリングのみであるため、ユーザに対してインタラクティブな視点操作を提供しやすい。本実施形態のテクスチャマッピング装置は、形状の精度が高くない3D形状モデルをベースとするユーザインタラクティブな自由視点画像として提供することを目的とし、上記の(2)の方法により、テクスチャを生成する。
図2(A)〜(C)は、図1(A)の3Dポリゴンモデルと図1(B)のテクスチャの対応付けを説明するための図である。図2(A)は、図1(A)の3Dポリゴンの形状を表現するための要素として、三角形T0〜T11及びこれらを構成する頂点V0〜V11を表したものである。図2(B)は、図1(B)のテクスチャ画像上で、図2(A)の形状の頂点V0〜V11に対応する位置P0〜P13を表している。図2(C)は、図2(A)と図2(B)を対応づけるための情報であり、各三角形T0〜T11に対してそれらを構成する3D空間上の頂点IDとテクスチャ画像空間上のテクスチャ頂点IDの対応表を示す。テクスチャマッピング装置は、図2(C)の表を基に、図1(A)の形状に図1(B)のテクスチャを付与することができる。図2(A)の座標は、xyz軸の3D空間座標で表現され、図2(B)の座標は、uv軸の2次元(2D)画像空間座標で表現される。図2(C)の頂点V0〜V4、V7〜V11のように、多くの場合、頂点とテクスチャ頂点は1対1の対応となっており、インデックス番号を一致させて表現することができる。ところが、頂点V5がテクスチャ頂点P5とP12に対応するといったように、3D空間上では一つの頂点であっても画像空間上の異なる位置に対応する頂点が存在する。このようなテクスチャの対応関係も処理できるように、頂点IDとテクスチャ頂点IDは独立に管理される。
図3(A)は、上記のテクスチャ付き3Dポリゴンを表現するために使用するデータを示す図である。図3(A)は、図2(A)に対応する頂点座標一覧表のデータである。図3(B)は、図2(B)に対応するテクスチャ頂点座標一覧表のデータである。図3(C)は、図2(C)に対応し、三角形と頂点とテクスチャ頂点の対応表のデータである。図3(D)は、図1(B)に対応するテクスチャ画像である。
頂点IDの並びには、面の表方向を定義する役割がある。三角形T0は3個の頂点から成り、その順序は6通り存在する。この頂点を左から順にたどった際の回転方向に対して右ねじの法則に従う方向を表方向と定義することが多い。図4(A)及び(B)は、頂点の記述順序と三角形の表方向の組を表したものである。図4(A)は、紙面に対して裏から表の方向が三角形の表となる。図4(B)は、紙面に対して表から裏の方向が三角形の表となる。
以上で、テクスチャ付き3Dポリゴンのデータ表現の説明を終える。本実施形態は、上記で説明したデータ表現に限定されることなく、例えば四角形以上のポリゴン表現を用いてもよい。また、本実施形態は、形状とテクスチャの対応関係の表現にインデックスを用いず、直接座標を記述する場合や、三角形の表方向の定義が逆なもの等、様々なケースに対して適用可能である。
図5は、マルチカメラを示す図である。本実施形態のテクスチャマッピング装置は、図5に示すマルチカメラから得られた画像を基に、3Dポリゴンに対してテクスチャマッピングを行う(テクスチャを付与する)。図5のマルチカメラでは、カメラA〜Hの視点が円の中心に位置する注視点に対して隣接カメラの成す角が均等になるように配置されている。カメラA〜Hの各々は、注視点において被写体が同程度の解像度で撮像されるように設定されている。カメラIの視点は、その他のカメラA〜Hの視点よりも高解像に撮影されるように設定されている。本実施形態のテクスチャマッピング装置は、このように被写体とカメラA〜Iの距離やカメラA〜Iの設定が異なるものが混在する複雑な構成を持つマルチカメラにおいて、好適なテクスチャマッピングを行うことを目的とする。
図6は、テクスチャマッピング装置の構成例を示す図である。テクスチャマッピング装置は、画像処理装置であり、カメラ視点画像撮像部601と、カメラパラメータ取得部603と、カメラ視点情報格納部609とを有する。さらに、テクスチャマッピング装置は、3Dポリゴン取得部605と、3Dポリゴン格納部606と、テクスチャマッピング部607と、テクスチャ付き3Dポリゴン格納部608とを有する。カメラ視点情報格納部609は、カメラ視点画像格納部602と、カメラパラメータ格納部604とを有する。
カメラ視点画像撮像部601は、図5のカメラA〜Iを有し、各カメラA〜Iで同期をとりながら画像の撮影を行い、撮影した画像をカメラ視点画像格納部602に格納する。カメラ視点画像撮像部601は、キャリブレーションマーカなどが映ったキャリブレーション用画像、被写体の存在しない背景画像、及び被写体を含むテクスチャマッピング用のカメラ視点画像をカメラ視点画像格納部602に格納する。カメラパラメータ取得部603は、カメラ視点画像撮像部601から供給されるカメラパラメータを初期値として、カメラ視点画像格納部602に格納されているキャリブレーション用画像を用いて、カメラパラメータを取得する。そして、カメラパラメータ取得部603は、取得したカメラパラメータをカメラパラメータ格納部604に格納する。
3Dポリゴン取得部605は、3D空間上の被写体の形状を表す3Dポリゴンモデルを取得し、3Dポリゴン格納部606に3Dポリゴンモデルを格納する。3Dポリゴン取得部605は、visual hullアルゴリズムを適用してボクセル情報を取得し、3Dポリゴンモデルを再構成する。ただし、3Dポリゴンモデルの取得方法は、任意のものでよく、例えばボクセル情報を直接3Dポリゴンモデルに変換してもよい。その他にも、3Dポリゴンモデルの取得方法は、赤外線センサを用いて取得されるデプスマップから得られる点群にPSR(poisson surface reconstruction)を適用してもよい。点群の取得方法は、PMVS(Patch−based Multi−view Stereo)に代表される画像特徴を利用したステレオマッチングによって得られるものであってもよい。テクスチャマッピング部607は、格納部602、604及び606から、被写体が映ったカメラ視点画像、カメラパラメータ、及び3Dポリゴンモデルをそれぞれ読み出し、3Dポリゴンへのテクスチャマッピングを行い、テクスチャ付き3Dポリゴンを生成する。そして、テクスチャマッピング部607は、生成されたテクスチャ付き3Dポリゴンをテクスチャ付き3Dポリゴン格納部608に格納する。
図7は、図6のテクスチャマッピング装置の画像処理方法を示すフローチャートである。ステップS701において、カメラパラメータ取得部603は、カメラ視点画像格納部602に格納されているキャリブレーション用画像を用いてキャリブレーションを行い、全カメラA〜Iの視点のカメラパラメータを取得する。カメラパラメータは、外部パラメータ及び内部パラメータを有する。外部パラメータは、カメラの位置・姿勢を有する。内部パラメータは、焦点距離・光学中心を有する。内部パラメータとしての焦点距離は、一般的な光学分野のピンホールモデルにおけるレンズ中心とカメラセンサ面の距離そのものではなく、レンズ中心とカメラセンサ面の距離を画素ピッチ(1画素当たりのセンササイズ)で割ったもので表す。カメラパラメータ取得部603は、取得したカメラパラメータをカメラパラメータ格納部604に格納する。
次に、ステップS702において、カメラ視点画像撮像部601は、同時刻のカメラA〜Iのカメラ視点画像を取得し、カメラA〜Iのカメラ視点画像をカメラ視点画像格納部602に格納する。次に、ステップS703において、3Dポリゴン取得部605は、ステップS702で取得したカメラ視点画像と同時刻の3Dポリゴンモデルを取得し、3Dポリゴンモデルを3Dポリゴン格納部606に格納する。次に、ステップS704において、テクスチャマッピング部607は、テクスチャマッピングにより、3Dポリゴンモデルにテクスチャ(カメラ視点画像)を付与し、テクスチャ付き3Dポリゴンモデルを取得する。そして、テクスチャマッピング部607は、テクスチャ付き3Dポリゴンモデルをテクスチャ付き3Dポリゴン格納部608に格納する。
図8は、図6のテクスチャマッピング部607の構成例を示すブロック図である。テクスチャマッピング部607は、uv座標取得部801と、視点評価部802と、視点選択部803と、テクスチャ生成部804とを有する。uv座標取得部801は、カメラパラメータ格納部603から読み出したカメラパラメータを用いて、3Dポリゴン格納部606に格納されている3Dポリゴンの各頂点について、それぞれのカメラ視点画像に投影した際のuv座標を取得する。視点評価部802は、3Dポリゴンの各三角形について、その三角形にテクスチャを付与する元となるカメラ視点を選択するための基準となる、評価値を全てのカメラ視点について算出する。視点選択部803は、各三角形に対して、全カメラ視点の評価値の中で評価値が最大のカメラ視点を選択する。視点選択部803は、3Dポリゴンモデルの各三角形(ポリゴン)に割り当てるテクスチャとして、同一の被写体が撮影された複数のカメラ視点の中から1つのカメラ視点を三角形毎(ポリゴン毎)に選択する。テクスチャ生成部804は、各三角形に対して選択されたカメラ視点の画像の一部を一つのテクスチャ画像に集約し、三角形がテクスチャ上の必要な位置を参照できるようにテクスチャ画像上のuv座標を算出する。そして、テクスチャ生成部804は、割り当て手段であり、三角形毎に選択されたカメラ視点の画像を各三角形にテクスチャとして割り当て、図3(A)〜(D)のような形式でテクスチャ付き3Dポリゴン格納部608に格納する。
図9(A)は、テクスチャマッピング部607の処理を示すフローチャートである。ステップS901において、テクスチャマッピング部607は、格納部602、604及び606から、カメラ視点画像、カメラパラメータ及び3Dポリゴンをそれぞれ入力する。次に、ステップS902において、uv座標取得部801は、3Dポリゴンの全ての頂点について、全てのカメラ視点画像に投影した際のuv座標を算出する。この時、被写体がカメラ視点画像の画角の外にあることが分かった場合はuv座標にエラー値(負の値など)を設定しておくことで、この後の処理でそのカメラ視点画像を使用不可とするフラグとして利用することができる。
次に、ステップS903において、視点評価部802は、全てのポリゴンについて、全てのカメラ視点の評価値を算出する。評価値は、その値が大きい程、そのカメラ視点が選択されやすい。例えば、評価値は、ポリゴンとカメラの間の距離の逆数である。なお、評価値は、これに限定されず、ポリゴンの法線ベクトルとポリゴンのカメラ方向ベクトルとのなす角と、前述した距離の逆数との積でもよい。評価値は、選択するカメラ視点の優先順位を決めることができるものであれば何でもよい。
次に、ステップS904において、視点選択部803は、上記の評価値に基づき、各々のポリゴンにテクスチャを割り当てるカメラ視点を選択する。ステップS904の処理の詳細は、後に、図9(B)を参照しながら説明する。次に、ステップS905において、テクスチャ生成部804は、選択されたカメラ視点の画像を基に、テクスチャ画像及びテクスチャ画像上のuv座標を生成し、各ポリゴンに割り当てる。
図9(B)は、図9(A)のステップS904の処理の詳細を示すフローチャートである。以下、視点選択部803が、評価値に基づいて各ポリゴンに割り当てるカメラ視点を選択する方法の詳細を説明する。
ステップS906において、視点選択部803は、全てのポリゴンについて、全てのカメラ視点の各々の評価値を視点評価部802から取得する。次に、ステップS907において、視点選択部803は、各ポリゴンについて、評価値が最大(最上位)のカメラ視点を仮選択する。次に、ステップS908において、視点選択部803は、再選択条件を満たす再選択領域を検出する。具体的には、視点選択部803は、同一のカメラ視点が仮選択されかつ隣接しているポリゴンの集合を同一カメラ視点ポリゴン群とする。そして、視点選択部803は、同一カメラ視点ポリゴン群に属しているポリゴンの数が閾値N(例えばN=32)個以下である同一カメラ視点ポリゴン群の領域を再選択領域として検出する。次に、ステップS909において、視点選択部803は、再選択領域内の各ポリゴンに割り当てるカメラ視点を再選択する。ステップS909の処理の詳細は、後に、図9(C)及び図10を参照しながら説明する。
図9(C)は、図9(B)のステップS909の処理の詳細を示すフローチャートである。図10は、3Dポリゴンモデルを構成するポリゴンを表しており、各ポリゴンの中に描かれた数字は仮選択のカメラ視点の番号である。
ステップS910において、視点選択部803は、再選択領域1001の中から処理対象とする着目ポリゴン(対象ポリゴン)1002を取得する。このとき、視点選択部803は、再選択領域1001の中の端にあるポリゴンを優先的に着目ポリゴン1002として取得する。次に、ステップS911において、視点選択部803は、着目ポリゴン1002及びその周辺ポリゴン1003の仮選択のカメラ視点を取得する。例えば、周辺ポリゴン1003は、着目ポリゴン1002の各頂点を共有する全てのポリゴンである。
次に、ステップS912において、視点選択部803は、周辺ポリゴン1003のうちの再選択領域1001に含まれないポリゴンの中でカメラ視点が仮選択されているポリゴンの数が、周辺ポリゴン1003のポリゴン数の半数以上であるか否かを判定する。図10の場合、上記の仮選択されているポリゴンの数は7個であり、周辺ポリゴン1003のポリゴン数は13個である。視点選択部803は、仮選択されているポリゴンの数が半数以上であると判定した場合には、ステップS913に処理を進め、仮選択されているポリゴンの数が半数以上でないと判定した場合には、ステップS914に処理を進める。
ステップS913において、視点選択部803は、周辺ポリゴン1003の上記の仮選択されているカメラ視点の中で多数決判定を行い、最多のカメラ視点を、着目ポリゴン1002に割り当てるカメラ視点として選択し、ステップS915に処理を進める。図10を例にすると、周辺ポリゴン1003のうちの再選択領域1001に含まれないポリゴンの中でカメラ視点が仮選択されているポリゴンの数は7個である。その内訳は、カメラ視点(1)が仮選択されているポリゴンの数が5個であり、カメラ視点(2)が仮選択されているポリゴンの数が2個である。この場合、視点選択部803は、着目ポリゴン1002に割り当てるカメラ視点として、最多のカメラ視点(1)を選択する。
ステップS914において、視点選択部803は、着目ポリゴン1002に隣接する3個のポリゴンのうちの再選択領域1001に含まれないポリゴンのうち、評価値が最大のポリゴンの仮選択のカメラ視点を着目ポリゴン1002のカメラ視点として選択する。なお、評価値の最大は、評価値の最上位でもよい。ここで、着目ポリゴン1002に隣接する3個のポリゴンが全て再選択領域1001に含まれる場合がある。その場合、視点選択部803は、周辺ポリゴン1003のうちの再選択領域1001に含まれないポリゴンのうち、評価値が最大(最上位)のポリゴンの仮選択のカメラ視点を、着目ポリゴン1002に割り当てるカメラ視点として選択する。その後、視点選択部803は、ステップS915に処理を進める。
ステップS915において、視点選択部803は、再選択領域1001内の全ポリゴンについて処理が完了したか否かを判定する。視点選択部803は、全ポリゴンについて処理が完了していないと判定した場合には、ステップS910に処理を戻し、再選択領域1001内の他のポリゴンについての処理を繰り返す。視点選択部803は、全ポリゴンについて処理が完了したと判定した場合には、再選択領域1001に含まれないポリゴンのカメラ視点の仮選択を真の選択にし、ステップS909の処理を終了する。
以上のように、ステップS907では、視点選択部803は、3Dポリゴンモデルの各ポリゴンに割り当てるテクスチャとして、同一の被写体が撮影された複数のカメラ視点の中から1つのカメラ視点をポリゴン毎に選択する。ステップS908では、視点選択部803は、ステップS907で選択したポリゴンのうちの再選択条件を満たすカメラ視点の再選択領域のポリゴンを検出する。ステップS909では、視点選択部803は、再選択領域のポリゴンに対しては、着目ポリゴンの周辺ポリゴンについて選択されたカメラ視点を基に、複数のカメラ視点の中から1つのカメラ視点を選択し直す。
なお、ステップS912〜S914では、視点選択部803は、過去のステップS913又はS914で選択したカメラ視点を考慮して、処理を行ってもよい。ステップS912では、視点選択部803は、周辺ポリゴン1003の中で、上記の仮選択されたポリゴンの数(7個)とステップS913又はS914で選択されたポリゴンの数の合計が、周辺ポリゴン1003のポリゴン数の半数以上であるか否かを判定する。ステップS913では、視点選択部803は、周辺ポリゴン1003の中の上記の仮選択されている7個のカメラ視点とステップS913又はS914で選択されているカメラ視点の中で最多のカメラ視点を、着目ポリゴン1002のカメラ視点として選択する。ステップS914では、視点選択部803は、着目ポリゴン1002に隣接する3個のポリゴンのうちの再選択領域1001に含まれないポリゴンとステップS913又はS914で選択されたポリゴンのうち、評価値が最大のポリゴンのカメラ視点を選択する。なお、評価値の最大は、評価値の最上位でもよい。
テクスチャマッピング装置は、上記の処理により、3Dポリゴンモデルに対してテクスチャを与えるカメラ視点を選択する際に、実際の形状に対して3Dポリゴンモデルに誤差を含む場合であっても、適切なテクスチャマッピングを行うことができる。なお、ステップS908では、同一カメラ視点ポリゴン群に属しているポリゴンの数がN(例えばN=32)個以下である領域を再選択領域として検出したが、再選択領域の検出方法はこれに限定されるものではない。例えば、視点選択部803は、各ポリゴンについて、複数のカメラ視点の評価値のうちの上位2個の評価値の差又は比が閾値以下であるポリゴン群を再選択領域として選択してもよい。また、視点選択部803は、同一のカメラ視点が仮選択されたポリゴン群の境界周辺のポリゴン群を再選択領域として検出してもよい。また、視点選択部803は、局所領域における各ポリゴンの法線ベクトルの類似度から3Dポリゴンモデルの歪度を算出し、歪度が大きいポリゴンを優先的にカメラ視点の再選択領域としてもよい。
また、視点選択部803は、着目ポリゴン1002の各頂点を共有する全てのポリゴンを周辺ポリゴン1003として取得したが、周辺ポリゴン1003の取得方法はこれに限定されるものではない。例えば、視点選択部803は、着目ポリゴンを中心に隣接数がM(例えばM=12)個以下のポリゴンを周辺ポリゴンとして取得してもよい。
(第2の実施形態)
第1の実施形態では、視点選択部803は、3Dポリゴンモデルの全ポリゴンに割り当てるカメラ視点を仮選択した後、再選択領域を検出し、再選択領域内のポリゴンに割り当てるカメラ視点を再選択する。このとき、視点選択部803は、処理対象である着目ポリゴンの周辺ポリゴンに仮選択されているカメラ視点の情報だけを用いて、着目ポリゴンのカメラ視点を再選択していた。本発明の第2の実施形態では、カメラ視点の評価値と仮選択したカメラ視点の連続性を用いて再選択領域内のポリゴンに割り当てるカメラ視点を再選択する方法について説明する。なお、本実施形態では、第1の実施形態のステップS909の処理の差異についてのみ説明する。以下、本実施形態が第1の実施形態と異なる点を説明する。本実施形態では、視点選択部803は、図9(C)の代わりに、図11の処理を行う。
図11は、図9(B)のステップS909の処理の詳細を示すフローチャートである。図12(A)は、3Dポリゴンモデルを構成するポリゴンを表しており、各ポリゴンの中に描かれた文字は三角形ポリゴンの番号である。図12(B)は、カメラ視点の再選択の一例を示す。
ステップS1101において、視点選択部803は、再選択領域1201から処理対象とする着目ポリゴン1202を取得し、着目ポリゴン1202の周辺ポリゴン1203を取得する。このとき、視点選択部803は、再選択領域1201の端にあるポリゴンを優先的に着目ポリゴン1202として取得する。
次に、ステップS1102において、視点選択部803は、周辺ポリゴン1203のうちの再選択領域1201に含まれないポリゴンT1〜T7毎に、全てのカメラ視点の評価値を大きい順にソートし、上位X個の評価値Val1〜Val3を取得する。例えば、X個は、3個である。
次に、ステップS1103において、視点選択部803は、ステップS1102で取得したポリゴンT1〜T7の各々についての上位3個の評価値Val1〜Val3の差が全て閾値より小さいか否かを判定する。視点選択部803は、上記の差が全て閾値より小さいと判定した場合には、ステップS1104に処理を進め、上記の差の中で閾値より小さくないものがあると判定した場合には、ステップS1105に処理を進める。例えば、視点選択部803は、ポリゴンT1〜T7のそれぞれについて、最も大きい評価値Val1とそれ以外の評価値Val2、Val3との差分絶対値を取り、その差分絶対値が全て閾値thより小さいと判定した場合には、ステップS1104に処理を進める。すなわち、視点選択部803は、ポリゴンT1〜T7のすべてについて、|Val1−Val2|<thかつ|Val1−Val3|<thを満たす場合に、ステップS1104に処理を進める。
ステップS1104において、視点選択部803は、周辺ポリゴン1203のうちの再選択領域1201に含まれないポリゴンT1〜T7について同じカメラ視点の連続性を優先し、最も連続しているカメラ視点を着目ポリゴン1202のカメラ視点として選択する。図12(B)を例にすると、視点選択部803は、ポリゴンT1〜T7について、上位2個の評価値Val1と評価値Val2のカメラ視点が最も連続するように、カメラ視点(2)を、着目ポリゴン1202に割り当てるカメラ視点として選択する。例えば、視点選択部803は、ポリゴンT1〜T7の各々についての上位2個の評価値Val1及びVal2のカメラ視点の中で最多のカメラ視点(2)を選択する。その後、視点選択部803は、ステップS1106に処理を進める。
ステップS1105では、視点選択部803は、着目ポリゴン1202に隣接する3個のポリゴンのうちの再選択領域1201に含まれないポリゴンのうち、評価値が最大(最上位)のカメラ視点を、着目ポリゴン1202に割り当てるカメラ視点として選択する。ここで、着目ポリゴン1202に隣接する3個のポリゴンが全て再選択領域1201に含まれる場合がある。その場合、視点選択部803は、周辺ポリゴン1203のうちの再選択領域1201に含まれないポリゴンのうち、評価値が最大(最上位)のポリゴンの仮選択のカメラ視点を、着目ポリゴン1202に割り当てるカメラ視点として選択する。その後、視点選択部803は、ステップS1106に処理を進める。
ステップS1106において、視点選択部803は、再選択領域1201内の全ポリゴンについて処理が完了したか否かを判定する。視点選択部803は、全ポリゴンについて処理が完了していないと判定した場合には、ステップS1101に処理を戻し、再選択領域1201内の他のポリゴンについての処理を繰り返す。視点選択部803は、全ポリゴンについて処理が完了したと判定した場合には、再選択領域1201に含まれないポリゴンのカメラ視点の仮選択を真の選択にし、ステップS909の処理を終了する。
テクスチャマッピング装置は、上記の処理により、3Dポリゴンモデルに対してテクスチャを与えるカメラ視点を選択する際に、実際の形状に対して3Dポリゴンモデルに誤差を含む場合であっても、適切なテクスチャマッピングを行うことができる。なお、ステップS1103及びS1104では、視点選択部803は、ポリゴンT1〜T7についての評価値Val1〜Val3の差が全て閾値thより小さいか否かを判定し、小さい場合に連続性を優先してカメラ視点を選択する。この選択方法は、これに限定されるものではない。例えば、視点選択部803は、ポリゴンT1〜T7についての評価値Val1〜Val3の差が閾値より小さいポリゴンのみを用いて最も連続するカメラ視点を選択してもよい。
また、3Dポリゴンモデルの全ポリゴンについてカメラ視点を再選択するよりも、本実施形態は、カメラ視点の再選択領域を検出し、再選択領域内のポリゴンについてのみカメラ視点の再選択を行うことで、無駄な計算コストを削減することができる。
(第3の実施形態)
図13は、本発明の第3の実施形態によるテクスチャマッピング装置のハードウェア構成例を示す図であり、図6のテクスチャマッピング装置のうちのカメラ視点画像撮像部601以外の部分に対応する。テクスチャマッピング装置は、図6のカメラパラメータ取得部603と、カメラ視点情報格納部609と、3Dポリゴン取得部605と、3Dポリゴン格納部606と、テクスチャマッピング部607と、テクスチャ付き3Dポリゴン格納部608の機能を有する。以下、図13と図6の対応関係を説明する。外部記憶装置1307及びRAM1302は、図6のカメラ視点情報格納部609と、3Dポリゴン格納部606と、テクスチャ付き3Dポリゴン格納部608に対応する。また、CPU1301がRAM1302内のプログラムを実行することにより、図6のカメラパラメータ取得部603と、3Dポリゴン取得部605と、テクスチャマッピング部607の機能を実現する。すなわち、図6のカメラパラメータ取得部603と、3Dポリゴン取得部605と、テクスチャマッピング部607は、ハードウェアで構成しても良いが、CPU1301が実行するソフトウェア(コンピュータプログラム)として実装しても良い。この場合、このソフトウェアは、PC(パーソナルコンピュータ)等、一般のコンピュータのRAM1302にインストールされることになる。そして、このコンピュータのCPU1301がこのインストールされたソフトウェアを実行することで、このコンピュータは、上述のテクスチャマッピング装置の機能を実現することになる。即ち、このコンピュータは、上述のテクスチャマッピング装置に適用することができる。第1の実施形態のテクスチャマッピング装置に適用可能なコンピュータのハードウェア構成例について、図13のブロック図を用いて説明する。
CPU1301は、RAM1302又はROM1303に格納されているコンピュータプログラム又はデータを用いて、コンピュータ全体の制御を行うと共に、テクスチャマッピング装置が行うものとして説明した上述の各処理を実行する。
RAM1302は、コンピュータ読み取り可能な記憶媒体の一例である。RAM1302は、外部記憶装置1307、記憶媒体ドライブ1308、又はネットワークインタフェース1309からロードされたコンピュータプログラムやデータを一時的に記憶するためのエリアを有する。更に、RAM1302は、CPU1301が各種の処理を実行する際に用いるワークエリアを有する。すなわち、RAM1302は、各種のエリアを適宜提供することができる。ROM1303は、コンピュータ読み取り可能な記憶媒体の一例であり、コンピュータの設定データや、ブートプログラムなどを格納する。
キーボード1304及びマウス1305は、コンピュータの操作者が操作することで、各種の指示をCPU1301に対して入力することができる。表示装置1306は、CRTや液晶画面などにより構成されており、CPU1301による処理結果を画像や文字などで表示することができる。
外部記憶装置1307は、コンピュータ読み取り記憶媒体の一例であり、ハードディスクドライブ装置に代表される大容量情報記憶装置である。外部記憶装置1307には、OS(オペレーティングシステム)や、図9(A)〜(C)に示した各処理をCPU1301に実現させるためのコンピュータプログラムやデータ、上記の各種テーブル、データベース等が保存されている。外部記憶装置1307に保存されているコンピュータプログラムやデータは、CPU1301による制御に従って適宜RAM1302にロードされ、CPU1301による処理対象となる。
記憶媒体ドライブ1308は、CD−ROMやDVD−ROMなどの記憶媒体に記録されているコンピュータプログラムやデータを読み出し、読み出したコンピュータプログラムやデータを外部記憶装置1307やRAM1302に出力する。なお、外部記憶装置1307に保存されているものとして説明した情報の一部若しくは全部をこの記憶媒体に記録させておき、この記憶媒体ドライブ1308に読み取らせても良い。
I/F1309は、外部から頂点インデックス等を入力したり、符号データを出力したりするためのインタフェースであり、一例として示すのであればUSB(Universal Serial Bus)である。バス1310は、上述の各部を繋ぐバスである。
上述の構成において、本コンピュータの電源がオンになると、CPU1301はROM1303に格納されているブートプログラムに従って、外部記憶装置1307からOSをRAM1302にロードする。この結果、キーボード1304及びマウス1305を介した情報入力操作が可能となり、表示装置1306にGUIを表示することが可能となる。ユーザが、キーボード1304やマウス1305を操作し、外部記憶装置1307に格納されたテクスチャマッピングアプリケーションの起動指示を入力すると、CPU1301はこのプログラムをRAM1302にロードし、実行する。これにより、本コンピュータがテクスチャマッピング装置として機能することになる。
なお、CPU1301が実行するテクスチャマッピングアプリケーションプログラムは、図6のカメラパラメータ取得部603と、3Dポリゴン取得部605と、テクスチャマッピング部607に相当する関数を備えることになる。ここでの処理結果は、外部記憶装置1307に保存される。このコンピュータは、第1及び第2の実施形態に係るテクスチャマッピング装置に適用可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
第1〜第3の実施形態のテクスチャマッピング装置は、カメラの内部パラメータや、カメラと被写体の距離等、撮影条件の異なるカメラが混在するマルチカメラにおいて、3Dポリゴンモデルに対してカメラ視点画像を割り当てることでテクスチャを付与する。テクスチャマッピング装置は、3Dポリゴンモデルが被写体の形状に対して誤差を含む場合でも、各ポリゴンに対してテクスチャを割り当てるカメラ視点を適切に選択することができるので、テクスチャのマッピングの歪を低減することができる。視点選択部803は、3Dポリゴンモデルの各ポリゴンに割り当てるカメラ視点の不連続又は散在を再選択領域として検出し、再選択領域のポリゴンに割り当てるカメラ視点を選択し直す。これにより、各ポリゴンに割り当てるカメラ視点の不連続又は散在を抑制し、テクスチャのマッピングの歪を低減することができる。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
801 uv座標取得部、802 視点評価部、803 視点選択部、804 テクスチャ生成部

Claims (12)

  1. 被写体の形状を表す3次元ポリゴンモデルの各ポリゴンに割り当てるテクスチャとして、同一の被写体が撮影された複数のカメラ視点の中から1つのカメラ視点をポリゴン毎に選択する第1の選択手段と、
    前記選択したポリゴンのうちの再選択条件を満たすポリゴンに対しては、対象ポリゴンの周辺ポリゴンについて選択されたカメラ視点を基に、前記複数のカメラ視点の中から1つのカメラ視点を選択し直す第2の選択手段と、
    前記ポリゴン毎に選択されたカメラ視点の画像を各ポリゴンにテクスチャとして割り当てる割り当て手段と
    を有することを特徴とする画像処理装置。
  2. 前記第2の選択手段は、前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンについて選択されたカメラ視点を基に、前記複数のカメラ視点の中から1つのカメラ視点を選択し直すことを特徴とする請求項1に記載の画像処理装置。
  3. 前記第2の選択手段は、前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンについて選択されたカメラ視点と、前記周辺ポリゴンのうちの前記第2の選択手段により選択されたポリゴンのカメラ視点を基に、前記複数のカメラ視点の中から1つのカメラ視点を選択し直すことを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記再選択条件は、同一のカメラ視点が選択されかつ隣接しているポリゴンの数が閾値以下であるポリゴン群に属しているポリゴンである条件であることを特徴とする請求項1〜3のいずれか1項に記載の画像処理装置。
  5. 前記第1の選択手段は、前記ポリゴン毎に、前記複数のカメラ視点の各々の評価値を取得し、前記評価値が最上位であるカメラ視点を選択し、
    前記再選択条件は、前記複数のカメラ視点の評価値のうちの上位2個の評価値の差又は比が閾値以下であるポリゴンである条件であることを特徴とする請求項1〜3のいずれか1項に記載の画像処理装置。
  6. 前記再選択条件は、同一のカメラ視点が選択されたポリゴン群の境界周辺のポリゴンである条件であることを特徴とする請求項1〜3のいずれか1項に記載の画像処理装置。
  7. 前記第2の選択手段は、最多のカメラ視点を選択することを特徴とする請求項1〜6のいずれか1項に記載の画像処理装置。
  8. 前記第1の選択手段は、前記ポリゴン毎に、前記複数のカメラ視点の各々の評価値を取得し、前記評価値が最上位であるカメラ視点を選択し、
    前記第2の選択手段は、
    前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンの数が前記周辺ポリゴンの数の半数以上である場合には、前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンについて選択されたカメラ視点のうちの最多のカメラ視点を選択し、
    前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンの数が前記周辺ポリゴンの数の半数以上でない場合には、前記対象ポリゴンに隣接するポリゴン又は前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンについて選択されたカメラ視点のうちの前記評価値が最上位のカメラ視点を選択することを特徴とする請求項2に記載の画像処理装置。
  9. 前記第1の選択手段は、前記ポリゴン毎に、前記複数のカメラ視点の各々の評価値を取得し、前記評価値が最上位であるカメラ視点を選択し、
    前記第2の選択手段は、
    前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンと前記周辺ポリゴンのうちの前記第2の選択手段により選択されたポリゴンの数が前記周辺ポリゴンの数の半数以上である場合には、前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンと前記周辺ポリゴンのうちの前記第2の選択手段により選択されたポリゴンについて選択されたカメラ視点のうちの最多のカメラ視点を選択し、
    前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンの数が前記周辺ポリゴンの数の半数以上でない場合には、前記対象ポリゴンに隣接するポリゴン又は前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンについて選択されたカメラ視点のうちの前記評価値が最上位のカメラ視点を選択することを特徴とする請求項3に記載の画像処理装置。
  10. 前記第1の選択手段は、前記ポリゴン毎に、前記複数のカメラ視点の各々の評価値を取得し、前記評価値が最上位であるカメラ視点を選択し、
    前記第2の選択手段は、
    前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンの各々についての複数の上位の評価値の差が全て閾値より小さい場合には、前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンの各々についての複数の上位の評価値のカメラ視点を基に、カメラ視点を選択し、
    前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンの各々についての複数の上位の評価値の差の中で閾値より小さくないものある場合には、前記対象ポリゴンに隣接するポリゴン又は前記周辺ポリゴンのうちの前記再選択条件を満たさないポリゴンについて選択されたカメラ視点のうちの前記評価値が最上位のカメラ視点を選択することを特徴とする請求項2に記載の画像処理装置。
  11. 第1の選択手段により、被写体の形状を表す3次元ポリゴンモデルの各ポリゴンに割り当てるテクスチャとして、同一の被写体が撮影された複数のカメラ視点の中から1つのカメラ視点をポリゴン毎に選択する第1の選択ステップと、
    第2の選択手段により、前記選択したポリゴンのうちの再選択条件を満たすポリゴンに対しては、対象ポリゴンの周辺ポリゴンについて選択されたカメラ視点を基に、前記複数のカメラ視点の中から1つのカメラ視点を選択し直す第2の選択ステップと、
    割り当て手段により、前記ポリゴン毎に選択されたカメラ視点の画像を各ポリゴンにテクスチャとして割り当てる割り当てステップと
    を有することを特徴とする画像処理方法。
  12. コンピュータを、請求項1〜10のいずれか1項に記載された画像処理装置の各手段として機能させるためのプログラム。
JP2017171469A 2017-09-06 2017-09-06 画像処理装置、画像処理方法及びプログラム Pending JP2019046378A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017171469A JP2019046378A (ja) 2017-09-06 2017-09-06 画像処理装置、画像処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017171469A JP2019046378A (ja) 2017-09-06 2017-09-06 画像処理装置、画像処理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2019046378A true JP2019046378A (ja) 2019-03-22

Family

ID=65814397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017171469A Pending JP2019046378A (ja) 2017-09-06 2017-09-06 画像処理装置、画像処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2019046378A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7455546B2 (ja) 2019-10-17 2024-03-26 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7455546B2 (ja) 2019-10-17 2024-03-26 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム

Similar Documents

Publication Publication Date Title
CN109242961B (zh) 一种脸部建模方法、装置、电子设备和计算机可读介质
JP5011224B2 (ja) 任意視点映像生成装置及び任意視点映像生成プログラム
JP2022522279A (ja) 優先点を識別して保持する点群の併合方法
JP6948175B2 (ja) 画像処理装置およびその制御方法
CN106548516B (zh) 三维漫游方法和装置
US20140218354A1 (en) View image providing device and method using omnidirectional image and 3-dimensional data
JP2010165248A (ja) 画像処理装置、画像照合方法、および、プログラム
JP2019040229A (ja) 画像処理装置、画像処理方法及びプログラム
CN109906600B (zh) 模拟景深
JP6902881B2 (ja) 情報処理装置及び三次元モデルの生成方法
CN110610457A (zh) 全景图像拼接方法、装置以及系统
JP2020173529A (ja) 情報処理装置、情報処理方法、及びプログラム
JP2019186762A (ja) 映像生成装置、映像生成方法、プログラム、およびデータ構造
JP2004234350A (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
JP6762570B2 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
JP4541397B2 (ja) 擬似的3次元画像生成装置、擬似的3次元画像生成方法及び擬似的3次元画像生成プログラム
JP2019046378A (ja) 画像処理装置、画像処理方法及びプログラム
JP2008204318A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2020166652A (ja) 画像処理装置、画像処理方法及びプログラム
JP6564259B2 (ja) 画像処理装置、画像処理方法
JP6704712B2 (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP4075778B2 (ja) 擬似的3次元画像生成装置、擬似的3次元画像生成方法及び擬似的3次元画像生成プログラム
JP6843319B2 (ja) 情報処理装置、プログラム及び情報処理方法
JP7455546B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP2019517688A (ja) 二枚の表示画像間の移行を割り出すための方法及び装置、並びに、車両