JP2017122993A - 画像処理装置、画像処理方法及びプログラム - Google Patents
画像処理装置、画像処理方法及びプログラム Download PDFInfo
- Publication number
- JP2017122993A JP2017122993A JP2016000721A JP2016000721A JP2017122993A JP 2017122993 A JP2017122993 A JP 2017122993A JP 2016000721 A JP2016000721 A JP 2016000721A JP 2016000721 A JP2016000721 A JP 2016000721A JP 2017122993 A JP2017122993 A JP 2017122993A
- Authority
- JP
- Japan
- Prior art keywords
- patch
- texture
- information
- dividing
- shape information
- 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
Links
Landscapes
- Image Generation (AREA)
Abstract
【課題】物体の変形に応じた繊細なテクスチャを生成できるようにする。【解決手段】予め複数の異なる形状に変形した状態で物体を計測しておき、更に計測した物体をパッチに分割して、データベースに登録する。データベースに登録されたパッチの距離情報を利用し、物体の形状と最も誤差が小さくなるパッチを選択することにより、その時々の物体形状に最も則したテクスチャを推定する。このとき、パッチに分割した形状同士で誤差計算を行い、最も形状誤差が少ないパッチを選択する。【選択図】図1
Description
本発明は、特に、データベース等に蓄積された複数の異なる物体の形状から新たな形状のモデルを生成するために用いて好適な画像処理装置、画像処理方法及びプログラムに関する。
近年、映画制作の現場やエンターテイメント分野において、仮想キャラクターにアクターの表情を転移させるパフォーマンスキャプチャと呼ばれる技術が盛んに研究開発されている。パフォーマンスキャプチャでは、予めアクターの異なる複数の表情を計測し、その表情がデータベースに予め登録される。そして、データベース上に再構築したアクターの顔モデルを利用し、後から所望の表情に変形させるという技術である(例えば、非特許文献1参照)。
非特許文献1に記載されているパフォーマンスキャプチャの手法では、まず、予めLightStageと呼ばれる特殊な照明装置を用いて、あらゆる照明環境下でのアクターの肌色情報を取得する。次に、33個程度のアクターの表情を取得し、アクターの表情空間をデータベース上に顔モデルとして再構築する。顔モデルは、顔の形状を構成する3次元頂点と頂点とを結んでできるポリゴン情報、微細凹凸変化を示すディスプレイスメントマップ、並びにテクスチャとしての輝度情報等の情報を有している。そして、33個の表情から任意の表情を選択し、表情の配合率をデザイナーが設定することにより中間表情を生成する。更に、前記顔モデルに顔の表情筋の配置に合わせて制御点を配置することにより、デザイナーは表情の微調整を行うことが可能である。
"The Digital Emily Project: Achieving a Photoreal Digital Actor", Oleg Alexander, Mike Rogers, William Lambeth, Jen-Yuan Chiang, Wan-Chun Ma, Chuan-Chang Wang, Paul Debevec, IEEE Computer Graphics and Applications July/August 2010
"High Resolution Passive Facial Performance Capture", D. Bradley, W. Heidrich, T. Popa, A. Sheffer, ACM Transactions on Graphics (Proceedings of SIGGRAPH). 2010.
"Efficient Variants of the ICP Algorithm", Szymon Rusinkiewicz and Marc Levoy, Presented at the Third International Conference on 3D Digital Imaging and Modeling (3DIM 2001)
A Morphable Model For The Synthesis Of 3D Faces. Volker Blanz Thomas Vetter. SIGGRAPH'99. 2/14/2001
"A Facial Rigging Survey", Veronica Orvalho, Pedro Bastos, Frederic Parke, Bruno Oliveira, and Xenxo Alvarez, Eurographics 2012
"Active Appearance Models Revisited," Iain Matthews and Simon Baker, International Journal of Computer Vision, Vol. 60, No. 2, November, 2004, pp. 135 - 164.
"A fast 3D-AAM method using the estimated depth information", Myung-Ho Ju and Hang-Bong Kang, IEEE International Conference on Progress in Informatics and Computing (PIC), 2010 Volume 2 Page 941 - 945.
"Poisson Image Editing", Patrick Perez, Michel Gangnet, Andrew Blake, ACM Transactions on Graphics (SIGGRAPH'03), 22(3):313-318, 2003.
"Realtime Performance-based Facial Animation", Thibaut Weise, Sofien Bouaziz, Hao Li, Mark Pauly, ACM Transactions on Graphics, Proceedings of the 38th ACM SIGGRAPH Conference and Exhibition 2011, 08/2011 SIGGRAPH 2011
"OpenGL Programming Guide: The Official Guide to Learning OpenGL, Versions 3.0 and 3.1", Dave The Khronos OpenGL ARB Working Group Shreiner, Addison-Wesley Professional, 7th edition, ISBN-10: 0321552628
" Rapid Object Detection using a Boosted Cascade of Simple Features", Paul Viola and Michael J. Jones., IEEE CVPR, 2001.
"詳解 OpenCV――コンピュータビジョンライブラリを使った画像処理・認識", Gary Bradski, Adrian Kaehler著, 松田 晃一 訳, 2009年08月発行, ISBN978-4-87311-413-2, 原書: Learning OpenCV, page204-207.
"Visual information for categorizing facial expression of emotions", Applied Cognitive Psychology, 7, 257-270.
P. Viola and M. Jones (2001). "Rapid Object Detection using a Boosted Cascade of Simple Features", IEEE Conference on Computer Vision and Pattern Recognition.
上述の非特許文献1に記載の手法では、データベース上の顔モデルを利用して任意の表情に変形させ、LightStageで取得したあらゆる照明環境下での顔の輝度情報を利用して、任意の照明環境下での顔テクスチャを推定することが可能である。しかしながら、表情を変形した際には、デザイナーがデータベースに登録されている33個の表情群から手作業で選択し、その時々の表情の形状に合うように顔テクスチャを手作業で変形する必要がある。
そこで、表情の変形に伴い、顔モデルに貼るテクスチャを生成する手法が提案されている(特許文献1参照)。この手法は、表情の変形の度合いをパラメータで表し、そのパラメータによって予め取得済みのテクスチャの混合比を変更し、新たな表情のテクスチャを生成する。しかし、特許文献1に記載の手法では、テクスチャを構成する画素の加算平均で画素値が算出されるため、テクスチャが有する肌の微細な凹凸変化や輝度変化がぼやけ、詳細情報が失われてしまうという課題がある。
本発明は前述の問題点に鑑み、物体の変形に応じた繊細なテクスチャを生成できるようにすることを目的としている。
本発明に係る画像処理装置は、複数の変形に対応する、物体の形状情報及び輝度情報に係るマップを複数の領域に分割したパッチを、領域ごとに関連付けて記憶する記憶手段と、前記複数の変形とは異なる変形に対応する前記物体の形状情報を取得する取得手段と、前記取得手段によって取得された前記物体の形状情報に係るマップを前記複数の領域に分割したパッチを生成するパッチ生成手段と、前記パッチ生成手段によって生成されたパッチと前記記憶手段に記憶された前記物体の形状情報に係るマップを分割したパッチとの誤差を領域ごとに算出する誤差算出手段と、前記誤差算出手段によって算出された誤差に基づいて、前記記憶手段から前記物体の形状情報に係るマップを分割したパッチを領域ごとに選択する選択手段と、前記選択手段によって選択されたパッチに対応する前記物体の輝度情報に係るマップを分割したパッチを領域ごとに貼り合わせて、前記取得手段によって取得された前記物体の形状情報に対応するテクスチャを生成するテクスチャ生成手段と、を有することを特徴とする。
本発明によれば、物体の変形に応じた繊細なテクスチャを生成することができる。
(第1の実施形態)
以下、本発明の第1の実施形態について、図面を参照して説明する。
本実施形態は、物体の形状が変形した場合に、その変形を加味してテクスチャデータを生成する。本実施形態の特徴は、形状が変形する物体を対象として、物体の3次元情報あるいはテクスチャ情報と、予めデータベースに登録された異なる複数の物体形状の部分情報とを比較し、新たなテクスチャを生成する点である。ここで、対象となる物体は、例えば、顔、人体、動物、植物などの変形可能な物体である。ここで、3次元情報とは、カメラからの距離情報(デプス情報)、形状を構成する3次元の頂点群・線群・ポリゴン情報のいずれかである。
以下、本発明の第1の実施形態について、図面を参照して説明する。
本実施形態は、物体の形状が変形した場合に、その変形を加味してテクスチャデータを生成する。本実施形態の特徴は、形状が変形する物体を対象として、物体の3次元情報あるいはテクスチャ情報と、予めデータベースに登録された異なる複数の物体形状の部分情報とを比較し、新たなテクスチャを生成する点である。ここで、対象となる物体は、例えば、顔、人体、動物、植物などの変形可能な物体である。ここで、3次元情報とは、カメラからの距離情報(デプス情報)、形状を構成する3次元の頂点群・線群・ポリゴン情報のいずれかである。
一般的にコンピュータグラフィックスにおけるテクスチャは、3次元物体の表面に貼り付けられる模様を指すが、本実施形態におけるテクスチャは、物体情報の計測時にカメラから得られる透視投影の2次元画像を指す。市販の3次元計測装置を用いて物体の形状を計測した場合、形状の計測と同時にカメラから得られる透視投影画像をそのままテクスチャとしてマッピングすることもあるため、本実施形態においても透視投影画像をテクスチャと呼んでいる。
本実施形態では、予め複数の異なる形状に変形した状態で物体を計測しておき、更に計測した物体を部分小領域(以下、パッチと呼ぶ)に分割して、データベースに登録する。ここでパッチとは、2次元画像(距離画像なども含む)をグリッド(格子形状)もしくは任意の領域分割曲線などで区切った部分小領域のことを指す。
そして、データベースに登録されたパッチの距離情報を利用し、物体の形状と最も誤差が小さくなるパッチを選択することにより、その時々の物体形状に最も則したテクスチャを推定する。これにより、物体の幾何形状が変化した場合においても、その変化に応じたテクスチャを選択して生成することが可能になる。
本実施形態では、このようにパッチに分割した形状同士で誤差計算を行い、最も形状誤差が少ないパッチを選択する。これは、所望の表情に対して、表情毎に顔全体で形状誤差を求めてパッチを選択するよりも、部分領域毎に誤差最小となるパッチを選び出す方が、所望の表情に対して誤差を小さくすることができるためである。
以下、本実施形態の詳細を説明するために、対象物体を顔とし、その変形を顔に表出する表情として説明する。一般的に人は、その時々の感情や生理現象を、意図的、もしくは無意識に顔の形状や色を変化させ、表情という形で表出している。例えば"笑み"は、無表情を基準とした顔の形状の状態から、目尻が下がり、口角が上がるという形状に変形することで観測することができる。本実施形態に係るテクスチャ生成装置は、この笑みの形状変化が生じた際に、形状変形によって生じる輝度情報の変化や目尻のシワといった微細な凹凸の変化を予めデータベースに登録されたテクスチャ情報を利用することによって再現する。
図1は、本実施形態に係るテクスチャ生成装置10の機能構成例を示すブロック図である。
図1において、テクスチャ生成装置10は、データベース構築部100と、テクスチャ生成部110とを備えている。
図1において、テクスチャ生成装置10は、データベース構築部100と、テクスチャ生成部110とを備えている。
(データベース構築部100)
物体情報計測部101は、テクスチャ生成部110においてテクスチャを生成するための顔を構成するモデル情報を計測する。ここで、モデル情報とは、顔の3次元情報(形状情報)及び輝度情報(テクスチャ)である。具体的に、顔の3次元情報とは、顔の位置、姿勢、スケール、顔を構成する3次元頂点群、線群、ポリゴン、距離情報、2次元画像上での座標等の情報であり、輝度情報はRGBのカラー画像などの情報である。また、本実施形態に係るテクスチャは、物体のモデル情報の計測時にカメラから得られる透視投影の2次元画像を指している。
物体情報計測部101は、テクスチャ生成部110においてテクスチャを生成するための顔を構成するモデル情報を計測する。ここで、モデル情報とは、顔の3次元情報(形状情報)及び輝度情報(テクスチャ)である。具体的に、顔の3次元情報とは、顔の位置、姿勢、スケール、顔を構成する3次元頂点群、線群、ポリゴン、距離情報、2次元画像上での座標等の情報であり、輝度情報はRGBのカラー画像などの情報である。また、本実施形態に係るテクスチャは、物体のモデル情報の計測時にカメラから得られる透視投影の2次元画像を指している。
ここで、本実施形態では、モデル情報を、例えば市販の3次元計測装置を利用して計測してもよく、非特許文献2に記載された手法を利用して計測してもよい。非特許文献2に記載されている3次元の顔形状を計測する手法は、予め既存手法でキャリブレーションを行った複数のカメラで顔を撮影し、3次元再構成の際に顔の物理的な拘束条件を活用することによって精度良く3次元計測を行うことができる。なお、テクスチャ生成部110においてテクスチャを生成するためには、複数の異なる表情の情報を予め取得しておく必要があり、物体情報計測部101は、複数の表情バリエーションのモデル情報を計測する。
本実施形態に係る顔のモデル情報として、顔を構成する3次元頂点群の情報と共に、それらの形状にテクスチャをマッピングするためのUV座標の情報も同時に保存される。一般的なCG技術において顔のテクスチャは、UV展開された状態でテクスチャマップとして保存されている。一方、本実施形態の場合は、テクスチャのUV展開にかかる手間を簡略化するために、カメラで撮影した透視投影画像をUV展開せずにそのまま利用することを想定している。なお、カメラから得られる顔のテクスチャは、透視投影画像から一度UV座標に展開するなどしてもよく、構築するシステムによって好適な手段を選択してもよい。
物体情報補正部102は、物体情報計測部101で計測した複数の異なる表情のモデル情報における顔の位置、姿勢、スケール及び照明条件の正規化を行う。理想的には物体情報計測部101で様々な表情を計測する際に、頭部の位置、姿勢及び照明条件を固定して計測することが望ましい。しかし、現実には頭部を固定した状態で表情を変化させるのは困難であり、自然な表情を計測することができなくなってしまう。また、長期間に亘ってデータベースの構築を行う場合は、照明条件を常に一定に保つのも困難となる。
そのため、まず、頭部を固定せずに物体情報を計測することを前提に、物体情報補正部102で顔の位置、姿勢及びスケールの補正を行う。物体情報計測部101で計測した顔のモデル情報は、両目頭、両目尻、鼻の先端など表情による変動に対して普遍な点をランドマーク(特徴点)とし、顔の位置、姿勢及びスケールが補正される。ランドマーク(特徴点)を利用した物体の位置合わせは、非特許文献3に記載の手法により、一般的にICP(Iterative Closest Point)のアルゴリズムを利用して実現することができる。
次に、物体情報補正部102は、照明条件の補正として顔の輝度情報を補正する。顔の計測環境に変化が生じた場合には、計測前にカラーチャートなどを用いて照明環境の変化をパラメータ(RGBのチェンネル毎のレベル補正値など)を取得しておき、輝度情報を補正する必要がある。ただし、顔の計測環境に変化が無ければ補正する必要は無い。本実施形態に係るテクスチャ生成装置10は、被計測者の計測前後もしくは計測時に、予め取得しておいたパラメータを利用して画像の輝度補正を行う。
デプスパッチ登録部103は、物体情報補正部102で補正したモデル情報の3次元情報から、例えばカメラから顔までの距離情報を2次元画像に投影した情報(以下、デプスマップ)を計算し、パッチに分割した後、データベース105に登録する。ここで、デプスマップを利用したパッチの分割方法及びパッチの比較方法について説明する。なお、パッチに分割する際に、距離情報以外にも3次元の頂点群情報、線群情報、ポリゴン情報などを利用してもよい。
図2は、デプスパッチ登録部103において、デプスマップ201をグリッド線202でパッチに分割した一例を示す図である。ここで、通常の2次元画像には1画素毎に色及び濃淡の値が格納されているのに対し、デプスマップは、1画素単位でカメラなどの撮影装置から対象物までの距離の値を格納した画像のことである。デプスマップは、画素毎に距離の値を白黒の濃淡値として格納することにより、図2に示すようにカメラから顔までの距離を可視化することができる。なお、図2に示すデプスマップ201は、カメラから30cm〜80cmまでの距離を16bitの濃淡値で表したデプスマップである。以下、デプスマップをDBデプスパッチと呼ぶ。
また、パッチに分割する際のグリッドの間隔は、図2のグリッド線202に示すように予め設定した固定値で等間隔に区切ってもよく、例えば顔を対象とする場合は、被撮影者の両目もしくは口角の間隔を基準にグリッドの間隔を設定してもよい。パッチの分割方法は、対象とする物体または構築するシステムによって好適な手段を選択すればよい。以下、データベース105に登録されたDBデプスマップのパッチをDBデプスパッチと呼ぶ。
テクスチャパッチ登録部104は、物体情報補正部102により補正されたモデル情報における顔の輝度情報に基づくテクスチャマップを、デプスパッチ登録部103で設定したグリッドの間隔で分割する。そして、デプスマップのパッチに対応するテクスチャパッチを生成する。そして、データベース105に登録する。以下、データベース105に登録されたテクスチャパッチをDBテクスチャパッチと呼ぶ。
なお、DBデプスパッチ及びDBテクスチャパッチは、それぞれが存在していた2次元マップ上での位置のラベル(ID)が付けられ、同じ位置のラベルが付けられたパッチ毎にデータベース105に登録される。更に、データベース105では、同一個人の異なる複数の表情(キーシェイプ)を表情毎に関連付けて分類管理されるようにするため、表情の参照番号(reference number)も同時に付与される。
ここで、キーシェイプは、データベース105に登録される異なる複数の顔形状(表情)および輝度情報である。本実施形態では、表情の変形を行う際にデータベース105に登録済みのキーシェイプを利用し、複数のキーシェイプを混合することにより所望の形状(表情)に変化させる。なお、この処理の詳細については後述する。
デプスマップの解像度よりも高解像度な画像が物体情報計測部101で計測される場合は、パッチに分割するグリッドのアスペクト比を固定したまま、テクスチャマップの解像度に合わせて、テクスチャマップをパッチに分割する。このようにして、データベース105には、DBデプスマップよりも高解像度なテクスチャをパッチに分割して蓄積しておくことが可能である。
以上のように、データベース105には、同一個人の複数の異なる表情(キーシェイプ)における顔の3次元情報および輝度情報がパッチに分割された状態で、それぞれのパッチ位置のラベルとキーシェイプ毎の参照番号が付与され、登録されている。このようにして、データベース構築部100では、個々人の様々な表情が正規化され、グリッドで分割されたパッチは、位置のラベルおよび表情の参照番号でカテゴリに分類された状態で保管されている。すなわち、データベース105に登録されたパッチは、2次元画像上での位置と、表情の参照番号とから読み出すことが可能である。
次に、テクスチャ生成部110の詳細を説明する。
表情生成部111は、例えば不図示の操作部からの指示に基づいて、データベース105に登録されている異なる複数の表情(キーシェイプ)を組み合わせて、新たに表情を生成する。具体的には、例えば非特許文献4に記載のBlend Shape法により、新たな表情を構成する頂点群の3次元座標を計算する。一般的にBlend Shape法と呼ばれる手法は、正規化された異なる複数の表情(特に、各表情の顔のモデル情報をキーシェイプと呼ぶ)の対応する全ての頂点に対して、重み付き線形和を計算することにより、表情を合成する手法である。正規化は、基準の顔の位置、姿勢及びスケールに各表情の顔を合わせる処理のことを指す。また、重みは、ユーザーが設定した各表情の形状を示すキーシェイプの混合率である。例えば、泣きのキーシェイプを50%、笑いのキーシェイプ50%に設定し、各頂点の座標値を重み付き線形和で計算すると、泣き笑いのような表情を作り出すことが可能である。
表情生成部111は、例えば不図示の操作部からの指示に基づいて、データベース105に登録されている異なる複数の表情(キーシェイプ)を組み合わせて、新たに表情を生成する。具体的には、例えば非特許文献4に記載のBlend Shape法により、新たな表情を構成する頂点群の3次元座標を計算する。一般的にBlend Shape法と呼ばれる手法は、正規化された異なる複数の表情(特に、各表情の顔のモデル情報をキーシェイプと呼ぶ)の対応する全ての頂点に対して、重み付き線形和を計算することにより、表情を合成する手法である。正規化は、基準の顔の位置、姿勢及びスケールに各表情の顔を合わせる処理のことを指す。また、重みは、ユーザーが設定した各表情の形状を示すキーシェイプの混合率である。例えば、泣きのキーシェイプを50%、笑いのキーシェイプ50%に設定し、各頂点の座標値を重み付き線形和で計算すると、泣き笑いのような表情を作り出すことが可能である。
また、表情生成部111における表情の生成方法は、Blend Shape法以外にも、表情筋に相当するリグと呼ばれるマニピュレータを顔に設定し、それらのマニピュレータを制御することで表情を作り出すことも可能である(非特許文献5参照)。
入力データ処理部112は、新たにテクスチャを生成する対象となる顔のモデル情報を入力データとして入力する。本実施形態に係る入力データ処理部112で処理するデータの一例は、予めデータベース105に登録されている顔に変形を加えて作り出した新たな表情の距離情報である。
データベース105に登録されている顔に変形を加えて新たな表情を作り出す例としては、非特許文献1に記載の手法が挙げられる。非特許文献1に記載の表情生成システムでは、予め計測した同一人物の異なる33個の表情を混合することにより、所望の表情へ大まかな変形を顔全体に対して行うことができる。ただし、表情を混合する手法では、一般的に局所領域に対して細かな変形を加えることができない。顔の局所領域を変形させる場合は、デザイナーが表情筋に相当する箇所に、一般的にリグと呼ばれるマニピュレータを顔に設定し、そのマニピュレータを手作業で操作することにより局所領域を変形する。なお、非特許文献1のシステムでは、予め撮影しておいた被撮影者の複数の異なる顔テクスチャを基にデザイナーが手作業で修正することにより、表情の変形に応じたテクスチャを用意している。
入力データ処理部112は、入力データとして得られる顔のモデル情報が、データベース105に登録されているモデル情報と比較及び照合ができるように、顔の位置、姿勢及びスケールを補正し、デプスマップを生成する。ただし、本実施形態に係る入力データは、物体情報補正部102によってデータベース105に登録される前に、位置、姿勢及びスケールが補正されている。そのため、データベース105に登録されているモデル情報から新たに表情を作り出す場合は、位置、姿勢及びスケールを改めて補正する必要はない。補正が必要な場合は、例えば入力データとして、市販の距離情報計測センサーで生成されたデータを利用する場合などである。
市販の距離情報計測センサーを利用する場合、仮に同一個人が計測対象であることがわかっている場合には、一旦、対象となる個人の3次元顔モデル(顔を構成する頂点群)を入力データの距離情報に当てはめ、位置、姿勢及びスケールの補正を行う。この場合も非特許文献3に記載のICPアルゴリズムを利用することにより補正パラメータを計算することができる。
また、距離情報計測センサーが輝度情報も同時に取得可能な場合は、ICPアルゴリズム以外に他の方法を用いてもよい。例えば、非特許文献6に記載のActive Appearance Modelや、非特許文献7に記載の距離情報とAAMとの併用といった手法で抽出した顔の特徴点から、入力データの補正パラメータを算出してもよい。そして、入力データ処理部112では、入力データの補正が完了した顔のデプスマップを生成する。なお、本実施形態では、形状情報として距離情報のみを利用してテクスチャを生成するため、入力データは顔までの距離情報だけでもよい。以下、入力データ処理部112で計算したデプスマップを、DBデプスマップと区別するためにINデプスマップと呼ぶ。
パッチ生成部113は、入力データ処理部112によって処理された入力データからINデプスマップのパッチを生成する。パッチに分割するためのグリッドの幅は、デプスパッチ登録部103で設定した幅と同様とする。更に、デプスパッチ登録部103でラベル付けした位置と同じ位置に同様のラベルを付け、データベース105に格納されている比較対象となるパッチのラベルを確定する。以降、入力データから得られるINデプスマップのパッチをINデプスパッチと呼ぶ。
デプス誤差算出部114は、パッチ生成部113で設定した入力データの各位置のラベル毎にデータベース105からDBデプスパッチを参照し、デプスパッチを比較して誤差計算を行う。
誤差計算は、同じ位置のラベル(ID)が付いたパッチ毎に、データベース105に登録されている表情の参照番号(ref)で、データベース105よりDBデプスパッチの情報を参照し、個々に計算する。具体的な計算方法を以下の式(1)に示す。式(1)の誤差Derrref IDは、パッチの位置のラベル(ID)における参照番号(ref)のDBデプスパッチと、INデプスパッチとを比較した誤差を示している。パッチ内の各画素(i,j)に対して、デプス値(距離値)の差の絶対値を計算し、それを全画素に対して集計することにより、デプス値の誤差計算を行う。この作業をデータベース105に登録されている全てのキーシェイプに対して行う。
パッチ選択部115は、デプス誤差算出部114においてラベル毎に全キーシェイプのDerrref ID、を比較し、デプス値の誤差が最も小さくなる表情のDBデプスパッチを選択する。ここで、本実施形態では、表情生成部111でキーシェイプとしては登録されていない中間的な表情を生成し、その形状に合うテクスチャを生成することが可能である。その場合も基本的には新たに生成される中間的な表情のデプスパッチと、DBデプスパッチとを比較し、誤差が最も小さくなるDBデプスパッチをデータベース105から選択する。ただし、表情生成部111は、データベース105に登録されているキーシェイプを利用して表情を生成するため、表情の生成に利用したキーシェイプ群から優先的にパッチを選択するなどしてもよい。
テクスチャパッチ合成部116は、パッチ選択部115により選択されたDBデプスパッチと対になるDBテクスチャパッチをデータベース105から参照し、繋ぎ合わせる処理を行う。ただし、異なる表情に由来するDBテクスチャパッチを単に並べて繋ぎ合わせた場合、繋ぎ目が不連続になるという問題が生じる。そこで、非特許文献8に記載の画像の繋ぎ合せ手法を利用することにより、繋ぎ目に生じる不自然さを緩和する。
以上のように、本実施形態に係るテクスチャ生成装置10は、データベース105に格納されている異なる複数の表情(キーシェイプ)において、入力データとのデプス値の誤差が最小となるパッチを選択して表情の変動に応じたテクスチャを生成する。
図3は、本実施形態においてデータベースに複数のキーシェイプに係るパッチを蓄積する処理手順の一例を示すフローチャートである。
まず、ステップS301において、物体情報計測部101は、ある表情の顔の3次元情報および輝度情報を計測する。
まず、ステップS301において、物体情報計測部101は、ある表情の顔の3次元情報および輝度情報を計測する。
本実施形態に係るテクスチャ生成装置10では、データベース105に登録されている異なる複数の表情(キーシェイプ)の形状を利用して、所望の表情に変形し、その形状に応じた表情のテクスチャを再構成するため、予め個人毎に複数の表情を登録する。登録する表情は、予め再構成したい表情が決まっている場合には、その表情を再構成するのに十分な数の表情のモデル情報を計測しておけばよい。一方、再構成したい表情が決まっていない場合は、できるだけ多くの表情のモデル情報を計測しておく。また、予め全てのキーシェイプの形状に対して主成分分析を行い、表情による変動の主成分パラメータを抽出しておいてもよい。
次に、ステップS302において、物体情報補正部102は、物体情報計測部101で計測したモデル情報における顔の位置、姿勢、スケール及び輝度情報を補正する。まず、ステップS301で計測した顔の形状から、両目の目頭、目尻、鼻の先端など表情の変化によって変動し難い箇所をランドマークとして検出する。これらのランドマークは、表情変動による皮膚の伸び縮みで多少の位置ずれが生じるものの、頭蓋骨の両目の位置が変動で、鼻の先端には筋肉が存在しないため、それらの周辺部位に比べれば表情による変動が少ない箇所である。
そして、基準顔(ここでは無表情の顔)のランドマークの位置に合わせるように、前述のICPアルゴリズムを用い、ステップS301で計測した顔の位置、姿勢及びスケールを補正する。なお、モデル情報の位置、姿勢及びスケールの補正は、非特許文献9に記載されているような顔の鼻から上半分の領域を剛体と仮定してICPアルゴリズムで位置合わせを行う手法を利用して補正してもよい。
また、ステップS302においては、顔の輝度情報の補正が必要な場合は、輝度情報に関しても補正を行う。本実施形態に係るテクスチャ生成装置10は、顔のモデル情報の計測前後または計測時にカラーチャートなどを用いて計測時の照明条件を記録しておくようにしておき、計測時の照明条件の変化に応じて輝度情報を補正する。輝度情報の補正は、既存の画像処理の手法で一般的に使われるホワイトバランスやガンマ補正などを利用して行う。
次に、ステップS303において、物体情報補正部102は、顔のモデル情報が補正された際に、テクスチャを補正するか否かを判定する。ステップS302の補正により物体の位置およびスケールが変化した場合は、対応するテクスチャも位置およびスケールの補正が必要になる。この判定の結果、テクスチャを補正する場合はステップS304に進み、テクスチャを補正しない場合はステップS305に進む。
ステップS304においては、物体情報補正部102は、テクスチャの再レンダリング(描画処理)による補正を行う。具体的には、顔の姿勢以外の3次元情報(すなわち位置及びスケール)が変化した場合は、2次元画像上での被写体の位置補正もしくはスケール補正をアフィン変換などの画像処理を利用して行う。
更に、姿勢情報が変更されている場合は、テクスチャが大きく変化するため、補正済みのモデル情報を利用して、標準的なコンピュータグラフィックスの描画処理(レンダリング)でテクスチャを更新する。ここでの標準的なコンピュータグラフィックスの描画処理は、例えば非特許文献10に記載のCG技術に特化した汎用的なソフトウェアライブラリーを利用して描画処理を行う。非特許文献10に記載のライブラリーによる描画処理は、CG技術の分野で広く一般的に利用されている手法である。
ステップS304では、まず、ステップS301で取得した輝度情報(2次元の透視投影画像)と補正済みの物体のモデル情報とから、特徴点を3点以上抽出する。特徴点は、例えば顔の右目及び左目の重心位置と口の重心位置との3点を計算によって求める。なお、両目および口の重心位置は、非特許文献11に記載のHaar-like特徴を利用することによって計算することができる。また、両目や口の重心位置以外にも顔の目頭や目尻、口角といった自然特徴点を利用して、顔の特徴的な座標値を獲得してもよい。
このようにして抽出した3点以上の顔特徴点を利用し、補正前から補正後のアフィン変換行列を算出する。そして、算出した変換行列を利用して補正前のテクスチャをアフィン変換で変形してテクスチャマップを取得する。
次に、ステップS302でモデル情報における姿勢が補正された場合は、ステップS301で取得したテクスチャと比べて見た目が大きく変化する。そのため、物体情報計測部101で用いるカメラパラメータと顔との相対位置関係に基づき、CG技術を利用して再度顔を描画処理することによりテクスチャを補正する。
具体的には、まず、予め取得しておいた物体情報計測部101で使用するカメラパラメータをCGの仮想カメラのパラメータに設定する。更に、計測時の照明条件を光源環境として設定し、補正済みの顔を非特許文献10に記載されている標準的なレンダリング処理により描画する。この処理を行うことにより、顔の姿勢変動によって生じる陰影の情報を更新することができる。
なお、本実施形態では、標準的なレンダリング処理によりテクスチャを補正したが、モデル情報の計測時に得られるテクスチャと同様の画質でテクスチャを再描画することが好ましい。したがって、構築するシステムによっては、レイトレーシングやパストレーシングといった高品質なCG描画処理を採用し、より写実的なテクスチャを用意してもよい。
ここで、位置、姿勢及びスケールの全てのパラメータが補正されている場合は、前述のCGによる描画処理を利用してテクスチャを補正する。なお、位置及びスケールのみが補正された場合でも、前述のCGによる再描画処理によりテクスチャを補正してもよいが、画像処理を利用した方が計算速度も速く、画像の劣化も少ない。
したがって、本実施形態に係るテクスチャ生成装置10では、補正されたパラメータの種類によってテクスチャの補正方法を変更する。このようにテクスチャの補正方法を、構築するシステムによって好適な手段で選択すればよい。
次に、ステップS305において、デプスパッチ登録部103は、ステップS302で補正されたモデル情報からDBデプスマップを生成し、パッチに分割する。なお、物体情報計測部101において外部の計測装置から直接的にデプスマップを取得することが可能な場合は、そのデプスマップをそのまま利用する。一方、物体情報計測部101で取得された3次元情報が、点群情報あるいはポリゴン情報だった場合は、非特許文献10に記載の標準的なレンダリング処理を利用する。具体的には、顔の隠面消去等の処理を行った後に、仮想カメラから顔までの距離を算出することによりDBデプスマップを計算することができる。なお、物体情報計測部101で取得された3次元情報が点群情報である場合は、ポリゴンを貼る処理や形状を滑らかにするためのポリゴンの再分割処理などの処理を追加してもよい。
そして、デプスパッチ登録部103は、算出されたDBデプスマップをパッチに分割する。パッチ分割に用いるグリッドの幅は、予めユーザーが設定した固定幅としてもよく、基準顔(無表情顔)の目頭と目尻との間隔、もしくは両口角の間隔を利用して適応的に間隔を変更してもよい。
更に、ステップS305では、デプスパッチ登録部103は、分割したパッチの位置でラベル付けを行う。例えば、図2に示すように、左上のパッチから順に1から数字のラベルが付けられる。このラベル付け作業により、両目、鼻及び口のパッチの位置をラベルで符号化することができる。
次に、ステップS306において、テクスチャパッチ登録部104は、テクスチャマップをパッチに分割する。この処理では、ステップS305で設定したグリッド間隔、もしくはパッチの分割方法に従い、DBデプスマップの各パッチと対応するようにテクスチャマップをパッチに分割する。
次に、ステップS307において、デプスパッチ登録部103及びテクスチャパッチ登録部104は、ステップS305およびS306でラベル付けされたデプスパッチおよびテクスチャパッチに更に表情のラベルを付ける。そして、データベース105に登録する。なお、表情のラベルは、パッチを表情毎に管理するためのラベルであり、任意の数字もしくは文字列を設定する。
次に、ステップS308において、デプスパッチ登録部103及びテクスチャパッチ登録部104は、データベース105に登録する予定の全ての表情(キーシェイプ)に関して、データが登録されたか否かを確認する。この確認の結果、データの登録が終了した場合は、データベースの構築作業を終了し、表情を追加する場合は、ステップS301に戻って、処理を繰り返す。
図4は、本実施形態において、新たにテクスチャを生成する処理手順の一例を示すフローチャートである。
まず、ユーザーからの指示等に基づいて、表情生成部111が新たな表情を生成すると、処理を開始する。そして、ステップS401において、入力データ処理部112は、表情生成部111によって生成された表情の3次元情報を入力する。このとき、物体情報計測部101で計測した新たな表情の3次元情報を入力データとして入力してもよい。
まず、ユーザーからの指示等に基づいて、表情生成部111が新たな表情を生成すると、処理を開始する。そして、ステップS401において、入力データ処理部112は、表情生成部111によって生成された表情の3次元情報を入力する。このとき、物体情報計測部101で計測した新たな表情の3次元情報を入力データとして入力してもよい。
具体的には、まず、ユーザーの操作に応じて表情生成部111は、データベース105に登録されているキーシェイプの混合率を設定し、非特許文献4に記載されているBlend Shape法などを用いて新たな表情に変形する。そして、入力データ処理部112は、表情生成部111から新たな表情の顔を構成する頂点群の情報、ポリゴン情報などの3次元情報を入力する。
なお、本実施形態では、テクスチャを生成する対象となる顔の形状を計測するために、物体情報計測部101の計測装置を利用する例について説明した。しかし、構築するシステムによっては、物体情報計測部101で用いた計測装置とは違う計測装置を利用して、入力データ処理部112に出力してもよい。例えば、物体情報計測部101では、計測時間に時間がかかるが高精度に形状を計測できる装置を採用し、テクスチャ生成部110では、3次元形状の計測の精度は落ちるがリアルタイムで形状を計測できる装置を採用するなどしてもよい。
次に、ステップS402において、入力データ処理部112は、ステップS401で入力された入力データについて補正が必要か否かを判定する。ステップS401において、表情生成部111から入力データを入力した場合は、データベース105に登録されたモデル情報が全て補正されているため、位置、姿勢、スケール等の補正を行う必要はない。したがって、この場合は、ステップS404に進む。一方、物体情報計測部101で新たに計測した表情の3次元情報を入力データとして入力した場合は、新たに取得した3次元情報が前述のように補正されていない。そのため、この場合は3次元情報の補正が必要となるのでステップS403に進む。
ステップS403においては、入力データ処理部112は、物体情報補正部102の処理手順と同様に、顔のランドマーク(3次元座標)を利用して、ICPアルゴリズムにより位置、姿勢及びスケールを補正する。このとき、顔の上部(鼻よりも上側の頭部)を剛体として頭部の位置合わせを行う方法などにより物体の3次元情報を補正してもよい。
次に、ステップS404において、入力データ処理部112は、顔の3次元情報を利用し、INデプスマップを計算する。INデプスマップの計算方法は、前述のステップS305と同様の方法とする。
次に、ステップS405において、パッチ生成部113は、ステップS404で計算されたINデプスマップを、デプスパッチ登録部103で設定されたパッチの分割方法と同一の方法で、INデプスパッチに分割する。
次に、ステップS406において、デプス誤差算出部114は、特定のラベルの位置において、INデプスパッチとデータベース105に登録されているあるキーシェイプのDBデプスパッチのデプス誤差を計算する。計算方法は、式(1)を用いてステップS307で設定した位置のラベル(ID)に属する表情(キーシェイプ)のDBデプスパッチを参照し、INデプスパッチとの誤差平均を計算する。
次に、ステップS407において、デプス誤差算出部114は、特定の位置のラベル(ID)に属する全キーシェイプのDBデプスパッチとINデプスパッチとのデプス誤差の計算が終了したか否かを判定する。この判定の結果、INデプスマップ上の特定のラベルの位置において、全てのキーシェイプに対してデプス誤差の計算が終了していない場合はステップS406に戻り、終了していないキーシェイプのDBデプスパッチを参照してデプス誤差を計算する。一方、INデプスマップ上の特定のラベルの位置において、全てのキーシェイプに対してデプス誤差の計算が終了している場合はステップS408に進む。
次に、ステップS408において、パッチ選択部115は、デプス誤差が最小となるDBデプスパッチをデータベース105から選択する。ただし、構築するシステムによっては、デプス誤差が最小となるものを選択せず、隣接するパッチと最も形状の繋がりが滑らかなDBデプスパッチを選択するなど、異なる基準を採用してもよい。
次に、ステップS409において、パッチ選択部115は、INデプスマップの全てのパッチの位置において、パッチの選択が終了したか否かを判定する。全てのパッチの位置において、パッチの選択が終了していない場合は、次のパッチの位置でデプス誤差を計算するために、ステップS406に戻る。一方、全てのパッチの位置でパッチの選択が終了した場合は、ステップS410に進む。
次に、ステップS410において、テクスチャパッチ合成部116は、選択された全てのDBデプスパッチに対応するDBテクスチャパッチを合成し、テクスチャを生成する。DBテクスチャパッチの合成では、非特許文献8に記載の手法などを利用して合成する。
図5は、本実施形態におけるINデプスパッチとDBデプスパッチとを比較して、DBテクスチャパッチを選択する処理を説明するための図である。
INデプスマップ501は、DBデプスマップ502と同じ解像度でかつ同じグリッド幅で分割され、同じパッチの位置にラベルが付与されている。
INデプスマップ501は、DBデプスマップ502と同じ解像度でかつ同じグリッド幅で分割され、同じパッチの位置にラベルが付与されている。
本実施形態に係るテクスチャ生成装置10は、パッチ位置ラベル毎に、最も3次元形状の誤差が小さいパッチを異なる複数の表情群のパッチから選び出す。DBデプスマップ502は、パッチの位置を表すラベルの"8"に着目した場合に、最も形状誤差が小さくなる表情(キーシェイプ)のDBデプスマップである。そして、この時に選択されたキーシェイプに対応するテクスチャマップ503のラベル"8"に属するDBテクスチャパッチを、当該パッチの位置におけるINデプスパッチのテクスチャとして利用する。この作業を全てのパッチの位置に対して行うことにより、個々のパッチの位置における形状誤差が最小となるDBテクスチャパッチを選択してテクスチャを生成することができる。
以上のように本実施形態によれば、データベース105に蓄積されたDBデプスパッチと、新たな表情に係るINデプスパッチとを比較し、最も適合するテクスチャパッチを参照して新たな表情のテクスチャを生成することができる。
なお、本実施形態では、主に物体のカメラからの距離情報に基づき、最適なDBテクスチャパッチをデータベース105より選択した。しかし、構築するシステムによっては距離情報の代わりに、他の形状情報として、物体を構成する3次元頂点群またはポリゴン群の情報で、最適なDBテクスチャパッチを選択するようにしてもよい。
(第2の実施形態)
第1の実施形態では、物体の対象を顔に特定し、表情を生成した顔の3次元形状、あるいは物体情報計測装置によって計測した顔までの距離情報のみを利用し、所望の顔形状に最も適合するテクスチャを生成した。これに対して本実施形態では、距離情報に加え、テクスチャの情報を併用することにより、所望の表情に最も適合し、かつ高解像度なテクスチャを生成する例について説明する。なお、第1の実施形態で説明した内容と同じ構成および処理については説明を省略する。
第1の実施形態では、物体の対象を顔に特定し、表情を生成した顔の3次元形状、あるいは物体情報計測装置によって計測した顔までの距離情報のみを利用し、所望の顔形状に最も適合するテクスチャを生成した。これに対して本実施形態では、距離情報に加え、テクスチャの情報を併用することにより、所望の表情に最も適合し、かつ高解像度なテクスチャを生成する例について説明する。なお、第1の実施形態で説明した内容と同じ構成および処理については説明を省略する。
図6は、本実施形態に係るテクスチャ生成装置60の機能構成例を示すブロック図である。
本実施形態において、第1の実施形態と比べて、物体情報計測部611で新たに計測した3次元情報の解像度を、データベース105に登録されているDBデプスマップおよびテクスチャマップの解像度に合わせる点が異なる。また、DBテクスチャパッチの誤差も併用してパッチを選択する点も異なっている。なお、図1と同じ構成については同一の符号が付されており、これらの構成については説明を省略する。
本実施形態において、第1の実施形態と比べて、物体情報計測部611で新たに計測した3次元情報の解像度を、データベース105に登録されているDBデプスマップおよびテクスチャマップの解像度に合わせる点が異なる。また、DBテクスチャパッチの誤差も併用してパッチを選択する点も異なっている。なお、図1と同じ構成については同一の符号が付されており、これらの構成については説明を省略する。
物体情報計測部611は、新たな顔を構成するモデル情報を計測し、その顔の3次元情報及びテクスチャを取得し、INデプスマップ及びテクスチャマップを取得する。なお、INデプスマップの生成方法は、デプスパッチ登録部103が行う方法と同様である。
物体情報計測部101が計測時間を要しても高精度に計測を行う装置であるのに対し、物体情報計測部611は、例えば精度は低下するものの実時間でモデル情報を計測できる装置である。つまり、物体情報計測部611で取得されるテクスチャマップは、データベース105に登録されているテクスチャマップよりも低解像度である。以下、物体情報計測部611で取得されるテクスチャマップをINテクスチャマップと呼ぶ。
パッチ生成部612は、INデプスマップおよびINテクスチャマップをデータベース105に登録されたDBデプスマップおよびDBテクスチャマップの解像度に合わせる。そして、デプスパッチ登録部103の処理で用いられたグリッドの間隔でそれぞれのマップをパッチに分割する。
パッチ誤差算出部614は、INデプスパッチおよびINテクスチャパッチとDBデプスパッチおよびDBテクスチャパッチとの誤差をそれぞれ計算する。デプスパッチの誤差の算出方法は、第1の実施形態と同様である。一方、テクスチャパッチの誤差の算出方法としては、DBテクスチャパッチの解像度をINテクスチャパッチの解像度に合わせた状態で、一般的な画像処理で用いられるテクスチャの比較方法を用いる(非特許文献12参照)。非特許文献12に記載の方法では、例えば輝度ヒストグラムや輝度勾配ヒストグラムでテクスチャの特徴(H1、H2)を表し、以下の式(2)により相関を計算する。この場合、スコアdcorrel(H1,H2)が高いほどテクスチャが近いことになる。なお、スコアの計算方法には、相関以外にもカイ二乗やBhattacharrya距離で計算する方法を採用してもよい。
パッチ選択部615は、パッチ誤差算出部614で算出されたデプスパッチの誤差およびテクスチャパッチの誤差を評価してDBデプスパッチをデータベース105から選択する。本実施形態において物体情報計測部611で得られるテクスチャマップは、低解像度ではあるものの既に所望の表情であることが前提となっている。そこで、デプスパッチの誤差およびテクスチャパッチの誤差の重み付き線形和が最小となる基準でDBデプスパッチを選択する。ここで、着目している表情のカテゴリ(例えば、無表情、喜び、悲しみ、恐れなど)に応じてパッチの位置毎に異なる重み係数をテーブルとして保持しておき、パッチの位置に応じて重み係数を変更するようにしてもよい。
このようにして、INテクスチャマップに含まれる所望の表情に、最も近い高解像度なDBテクスチャマップを利用することにより、より高解像度のテクスチャを生成することができる。一方、データベース105に登録されているキーシェイプから大きく異なる表情のモデル情報が物体情報計測部611から入力されると、所望の表情に合致しないテクスチャを生成されてしまう可能性がある。したがって、出来るだけ多くの種類のキーシェイプを予めデータベース105に登録しておくことが好ましい。
また、図6に示すように、テクスチャ生成部610に第1の実施形態の表情生成部111が含まれていないが、図1の表情生成部111を含むようにしてもよい。この場合、表情生成部111において生成される表情の形状変化に応じたテクスチャを新たに生成することができる。
また、表情生成部111において生成される表情の変動が大きい場合は、パッチ誤差算出部614は、無表情である画像を基準にパッチ誤差を算出する。そして、パッチ選択部615は、デプスパッチのパッチ誤差が最小で、かつテクスチャパッチのパッチ誤差が最大(見た目がなるべく無表情のテクスチャパッチと異なるもの)となるDBデプスパッチを選択する。
表情変動の強度が小さい場合は、仮に無表情の顔のテクスチャを利用しても生成される最終的なCG画像にはそれほど影響が出ない。しかし、表情変動の強度が大きくなるにつれ、テクスチャ上の変化も大きくなるため、無表情のテクスチャから出来るだけパッチ誤差の大きい(表情変動が大きいテクスチャ)を選択することが好ましい。したがって、表情生成部111によって生成される表情の変動が大きい場合には、デプス誤差が最小で、無表情顔テクスチャからの誤差が最大となるように重み付き線形和の係数を設定し、DBデプスパッチを選択する。
このように、デプスマップに加え、テクスチャマップを併用することにより、所望の表情に最も適合し、かつ高解像度な顔のテクスチャを生成する。
図7は、本実施形態において、新たにテクスチャを生成する処理手順の一例を示すフローチャートである。なお、データベースに複数のキーシェイプに係るパッチを蓄積する処理手順については図3と同様であるため、説明は省略する。また、図7において、図4と同じ処理については同じ符号を付しており、これらの処理の説明は省略する。
まず、ステップS701において、物体情報計測部611は、顔のモデル情報を計測する。モデル情報を計測する手順は前述した手順である。
ステップS402〜ステップS404の処理は、物体情報計測部611が行う処理であるが、それぞれ図4と同じ処理である。但し、本実施形態ではINテクスチャマップも生成するため、ステップS404の処理によりINデプスマップ及びINテクスチャマップを取得する。
ステップS402〜ステップS404の処理は、物体情報計測部611が行う処理であるが、それぞれ図4と同じ処理である。但し、本実施形態ではINテクスチャマップも生成するため、ステップS404の処理によりINデプスマップ及びINテクスチャマップを取得する。
次に、ステップS702において、パッチ生成部612は、INデプスマップおよびDBテクスチャマップをデータベース105に登録されたDBデプスマップおよびDBテクスチャマップの解像度に合わせる。そして、所定のグリッドの間隔でそれぞれパッチに分割する。
次に、ステップS703において、パッチ誤差算出部614は、DBデプスパッチとINデプスパッチとの間の誤差を算出する。さらに、DBテクスチャパッチとINテクスチャパッチとの間の誤差を算出する。
続いてステップS704において、データベース105に登録されている全てのキーシェイプに対して、デプス誤差及びテクスチャ誤差の計算は終了したか否かを判定する。この判定の結果、すべてのキーシェイプに対して誤差の計算が終了した場合はステップS705に進み、そうでない場合はステップS703に戻る。
ステップS705においては、パッチ選択部615は、デプス誤差とテクスチャ誤差とを重み付けしてDBデプスパッチを選択する。
そして、ステップS706において、パッチ選択部615は、全てのパッチの位置に対してパッチの選択処理が終了したか否かを判定する。この判定の結果、全てのパッチの位置に対してパッチの選択処理が終了していない場合は、ステップS703に戻る。一方、全てのパッチの位置に対してパッチの選択処理が終了した場合はステップS410に進むステップS410の処理は図4と同様であるため、説明は省略する。
そして、ステップS706において、パッチ選択部615は、全てのパッチの位置に対してパッチの選択処理が終了したか否かを判定する。この判定の結果、全てのパッチの位置に対してパッチの選択処理が終了していない場合は、ステップS703に戻る。一方、全てのパッチの位置に対してパッチの選択処理が終了した場合はステップS410に進むステップS410の処理は図4と同様であるため、説明は省略する。
以上のように本実施形態によれば、全てのパッチ位置に対して、形状の差に加え、見た目の差を加味してパッチを選択するため、より高繊細なテクスチャを得ることができる。
(第3の実施形態)
第1の実施形態では、単純に顔のデプス誤差を比較することによって、所望の3次元顔形状に最も適合する表情のテクスチャを生成する例について説明した。これに対して本実施形態では、顔の目や口の周辺などの特定領域の形状変化の度合いに着目し、その変化の度合いによる周辺領域への影響を加味してパッチを選択する例について説明する。
第1の実施形態では、単純に顔のデプス誤差を比較することによって、所望の3次元顔形状に最も適合する表情のテクスチャを生成する例について説明した。これに対して本実施形態では、顔の目や口の周辺などの特定領域の形状変化の度合いに着目し、その変化の度合いによる周辺領域への影響を加味してパッチを選択する例について説明する。
第1の実施形態では、デプスパッチの誤差が最小となる基準で画面を構成する各パッチの位置において形状が最も適合するパッチを選択していた。そのため、特にシワなどの微細な凹凸が存在する場合、DBデプスパッチは高精度に形状の詳細な情報を保持するのに対し、INデプスパッチは詳細な情報を保持しないため、その詳細な情報が誤差要因となり、所望のパッチが選択されない可能性がある。そこで本実施形態では、微細な凹凸の変化が生じる場合であっても表情の変化に応じて所望のパッチを選択できるようにする。
一般的に、人が他人の表情を認識する際の認知過程において、非特許文献13には以下のことが報告されている。つまり、人が他人の表情を認識する際には、眉、目及び口の「傾斜性(slantedness)」及び「湾曲性及び開口性(curvedness/openness)」という物理量が大きく関与している。ここで「傾斜性」とは、眉及び眼が釣り上がったり垂れ下がったり、或いは口の形が"への字"になったり逆の形になったりすることである。また「湾曲性及び開口性」は、眉が曲線的に湾曲すること、及び目や口が開かれる度合いを指している。
非特許文献13に記載の方法では、被験者には眉、目及び口の上に設定した8つの特徴点を操作することにより、基本6感情を表す線画を作成させ、その線画に対する表情の判断実験を実施している。これらの実験からも分かるように、人間は表情を認識する過程で、特定領域(眉、目及び口)の形状変化に大きく左右されることが分かっている。また、表情筋においても、それらの特定領域の周辺は、特定領域の形状変化の影響を受け、周辺領域の形状変化が引き起こされる。つまり、特定領域及び周辺領域の形状変化は相関が非常に高いと言える。
本実施形態では、非特許文献13の知見に基づき、特定領域の「傾斜性」及び「湾曲度・開口性」と周辺領域の形状の変形量との関係を、影響度マップとして計算する。そして、影響度マップを重みとしてパッチ誤差の計算に利用することにより、最適なパッチを選択する。
図8は、第3の実施形態において、特定領域を含むデプスマップ及びテクスチャマップを模式的に説明するための図である。
図8において、基準表情デプスマップ801は、無表情の状態を基準表情とした場合のデプスマップである。基準表情テクスチャマップ802は、基準表情デプスマップ801に対応するテクスチャマップである。そして、表情付きデプスマップ803は、既に3次元情報の補正が施された表情付きのデプスマップである。表情付きテクスチャマップ804は、表情付きデプスマップに対応するテクスチャマップである。
図8において、基準表情デプスマップ801は、無表情の状態を基準表情とした場合のデプスマップである。基準表情テクスチャマップ802は、基準表情デプスマップ801に対応するテクスチャマップである。そして、表情付きデプスマップ803は、既に3次元情報の補正が施された表情付きのデプスマップである。表情付きテクスチャマップ804は、表情付きデプスマップに対応するテクスチャマップである。
基準表情デプスマップ801は、眼窩の上下端の間隔および目頭と目尻との間隔を基準にグリッド単位で分割され、パッチが生成されれている。なお、基準表情テクスチャマップ802、表情付きデプスマップ803および表情付きテクスチャマップ804においても、同様のグリッド間隔でパッチが生成されている。
ここで、眼窩の上下端で間隔を設定するのは、表情変化によって眼窩の上下端の間隔が変化しないためである。眼窩の上下端の間隔および目頭と目尻との間隔は、非特許文献14に記載の方法を用いることによって、顔の中から目の位置を検出することができる。この方法では、学習画像の目領域のHaar-Like特徴量を収集し、AdaBoostにより統計的に目らしい特徴を識別できるようにすることにより目検出器を学習することができる。同様に、予め口や鼻領域の学習用画像を用意しておくことにより、口および鼻検出器を学習によって生成することもできる。
このように学習によって得られる目検出器を利用し、顔の中から目領域を検出する。更に検出した領域の重心位置、及び目頭、目尻といった特徴点の位置(座標)を計算によって求め、グリッド間隔(幅)を決定する。
次に、眼窩の上下端に関しては、カメラで直接的に観測することは困難である。しかし、眼窩の左右端はそれぞれ目頭及び目尻の位置にほぼ重なるため、目頭から目尻までの幅を眼球の大きさとして設定し、眼窩の上下端の距離として流用してもよい。もしくは、眉の両端に表れる特徴点から中点を求め、その位置を眼窩の上端と設定して、下端を算出するなどしてもよい。更に、目頭と目尻とを結ぶ直線を基準として、固定アスペクト比の矩形を予め設定しておき、その矩形を目領域に当てはめることにより目領域を分割する上下の間隔を設定してもよい。
第1の実施形態と同様に各パッチには、画面上での位置がラベルとして付与されている。更に、目や口などの特定領域には、特定領域である旨のラベルも別途付与されている。
基準表情デプスマップ801および基準表情テクスチャマップ802において、グリッド分割された目周辺のパッチには、それぞれ値として"0"が設定されている。これは表情変化による形状の変動が生じないことを示している。そして、表情変化による形状の変化が生じている場合は、パッチ毎に基準表情からの変動強度が計算によって求められる。そして、これらの変動強度が数値化されたマップが各キーシェイプとともにデータベースに格納される。なお、変動強度の計算方法については後述する。
このように、表情が変化した際の目や口などの特定領域における形状変化の影響が、周辺パッチに及ぼす影響を数値化したマップを影響度マップと呼ぶ。なお、本実施形態では、無表情を基準表情に設定しているが、構築するシステムによっては、無表情以外の所望の表情を基準表情に設定してもよい。
図9は、本実施形態に係るテクスチャ生成装置90の機能構成例を示すブロック図である。なお、図1と同じ構成については同一の符号が付されており、これらの構成については説明を省略する。
影響度マップ生成部901は、デプスパッチ登録部103およびテクスチャパッチ登録部によってそれぞれ分割されたデプスパッチおよびテクスチャパッチから、基準表情に表情変化を加えた場合の各パッチ位置における変形の影響度を計算する。そして、影響度マップをデータベース105に登録する。なお、影響度マップ生成部901において、デプスパッチ登録部103で設定されたグリッド幅と同じグリッド幅で各パッチ位置における表情の影響度を算出する場合は、デプスパッチ登録部103から出力されるパッチ情報をそのまま利用する。
テクスチャ生成部910において、特定領域変形量算出部911は、パッチ生成部113で生成されたINデプスパッチの情報から、特定のパッチ位置における変形量を算出する。影響度算出部912は、特定領域周辺の影響度を算出する。パッチ適合度算出部913は、特定領域の変形量及び特定領域周辺の影響度を加味して、各表情のパッチ適合度を算出する。このようにして得られるパッチ適合度を参照して、本実施形態に係るテクスチャ生成装置90は、テクスチャを構成するDBデプスパッチを選択する。
図10は、本実施形態において、データベース構築部900の影響度マップ生成部901が影響度マップを生成する処理手順の一例を示すフローチャートである。なお、データベースに複数のキーシェイプに係るパッチを蓄積する処理手順については図3と同様であるため、説明は省略する。
まず、ステップS1001において、デプスパッチ登録部103からDBデプスパッチを入力する。なお、デプスパッチ登録部103でパッチ分割された分割方法とは異なる方法でパッチ分割する場合は、物体情報補正部102の出力を利用し、所望のグリッド幅ないしパッチ分割の方法により再度パッチ分割を行う。
次に、ステップS1002において、特定領域のデプス値(距離値)を基準値として設定し、特定領域における変形量を計算する。変形量は、パッチ内の画素毎に、基準表情のデプス値と、比較対象となる表情(キーシェイプ)のデプス値との誤差を計算することによって求めることができる。誤差計算は、前述の式(1)を利用して画素毎の誤差平均を計算してもよく、Nで割らずに誤差の総和を変形量としてもよい。
ここで、本実施形態では説明を簡単にするために特定領域を目領域に絞って説明するが、構築するシステムによっては、口領域や他の顔部位を特定領域として設定してもよい。なお、本実施形態における目のパッチ位置は、前述の目検出器によって既に算出済みであり、データベース105には、パッチ位置のラベルと共に、目領域である旨のラベルが付与された状態で登録される。
次に、ステップS1003において、データベース105に登録されている全てのキーシェイプに対して特定領域における変形量を計算したか否かを判定する。この判定の結果、全てのキーシェイプで特定領域における変形量を計算していない場合は、ステップS1002に戻り、全てのキーシェイプで特定領域における変形量を計算した場合はステップS1004に進む。
ステップS1004においては、全てのキーシェイプの特定領域における変形量を正規化する。変形量を正規化する際には、まず変形量の最大値を求める。例えば、驚きの表情のように目が見開いた状態では変形量が最大となる可能性がある。そこで、変形量を最大値が"1"となるように以下の式(3)を用いて計算し、他の変形量についても正規化を行う。
式(3)のVi IDは、パッチ位置のあるラベルIDにおけるキーシェイプiの変形量を表しており、デプスパッチの誤差Deeri IDを全キーシェイプ中の最大誤差Deerk IDで割ることによって算出される。ここで、iは、データベース105に登録済みのキーシェイプの参照番号を示し、kは、最大誤差になったキーシェイプの参照番号を示している。この処理は、個人によって表情の表出強度が異なるため、個人毎に変形量を正規化する必要があるためである。
このようにして、特定領域におけるキーシェイプの変形量を計算し、正規化することにより、特定領域に限定して見た時に、各キーシェイプが基準表情からどの程度変形しているかを数値化することができる。そして、特定領域の正規化された変形量と周辺領域におけるキーシェイプの変形量との関係を計算することによって、影響度マップを生成することができる。
次に、ステップS1005において、全てのキーシェイプにおける特定領域の周辺領域に属するパッチの変形量を計算する。周辺領域の選択は、例えば画面左上のパッチから順に変形量を計算してもよく、パッチの隣接関係を考慮しながら変形量の関係を求める場合は、特定領域を中心として螺旋状に外側のパッチを順に選択する方法などを選択してもよい。
次に、ステップS1006において、周辺領域に該当する全てのパッチに対して変形量の計算が終了したかどうかを判定する。全てのパッチに対して変形量の計算が終了していない場合は、ステップS1005に戻り、全てのパッチに対して変形量の計算が終了した場合はステップS1007に進む。
次に、ステップS1007において、ステップS1004と同様に、周辺領域においてパッチ位置が同じラベルのパッチに対して、全てのキーシェイプの変形量で正規化する。具体的には、ステップS1004と同様の方法により、最も変形量の多いキーシェイプを選択し、その変形量を最大値の"1"に設定し、他のキーシェイプの変形量を正規化する。
次に、ステップS1008において、周辺領域におけるすべてのパッチ位置において変形量を正規化したか否かを判定する。この判定の結果、周辺領域におけるすべてのパッチ位置において変形量を正規化していない場合は、ステップS1007に戻り、周辺領域におけるすべてのパッチ位置において変形量を正規化した場合はステップS1009に進む。
ステップS1009においては、特定領域における変形量と各パッチ位置における変形量との相関を計算し、影響度マップを生成する。以下、この具体例について説明する。
図11は、特定領域のパッチと周辺領域のパッチとの間における変形量の相関を計算する方法を模式的に示す図である。図11において、プロット点1101は、画面上のパッチ位置ID14に着目した際の特定領域の変形量を縦軸にとり、各キーシェイプにおける周辺領域のパッチ位置での変形量を横軸として、変形量をプロットした点である。グラフ1102は、各キーシェイプにおけるパッチ位置ID7での変形量をグラフにしたものである。グラフ1103は、同様にパッチ位置ID13での変形量をグラフにしたものである。このように各パッチ位置での変形量のグラフを生成する。
そして、直線1104は、データベース105に登録されている全てのキーシェイプに対して同様にプロットした点から、最小二乗法などを用いて算出した直線である。この直線を求める処理を全てのパッチ位置に対して行う。このようにして、画面を構成する全てのパッチ位置における影響度マップを生成する。なお、影響度マップを生成する際に計算した各パッチ位置におけるDBデプスパッチの変形量も同時にデータベース105に記録しておく。これは、後段のテクスチャ生成部910において評価スコアを計算する際に利用するためである。この処理の詳細については後述する。
本実施形態では、特定領域の変形量と周辺領域のパッチの変形量との相関を求めることにより、特定領域に顕著な変形が生じた場合に、その影響が周辺領域にも及ぶようにパッチを選択する。一方、相関を求める代わりに、特定領域の変形量と周辺領域の変形量との関係を共起確率に基づいて計算し、特定領域の表情変形が周辺に及ぼす影響を確率で表現するようにしてもよい。
このようにして、本実施形態に係るテクスチャ生成装置90は、影響度マップ生成部901において、データベース105に登録される全てのキーシェイプに対して、基準表情からの影響度マップを生成する。
図12は、本実施形態において、新たにテクスチャを生成する処理手順の一例を示すフローチャートである。なお、図12のステップS401からS405までの処理は、図4で説明した処理と同様の処理であるため説明を省略する。
ステップS1201においては、特定領域変形量算出部911は、ステップS405でパッチ分割されたINデプスマップの特定領域におけるINデプスパッチの変形量を算出する。変形量の算出方法は、前述のステップS1002で説明したデプスパッチの誤差算出方法と同じ方法を用いる。そして、ステップS1004の正規化処理で求めた変形量が最大となったパッチの誤差Deerk IDで、INデプスパッチの誤差DerrIN IDを割ることにより、計算することができる。
次に、ステップS1202において、影響度算出部912は、ステップS1201で算出した特定領域における変形量と、ステップS1009で生成した影響度マップとから、周辺領域における変形量を推定する。そして、各パッチ位置における影響度を算出する。ステップS1009の処理で算出した各パッチ位置における変形量の相関を示す直線によって、ステップS1201で求められた特定領域の変形量から、周辺領域における各パッチ位置における変形量を推定することができる。ここで、特定領域における表情の変形が及ぼす当該パッチで推定した変形量を表情の影響度EIDで表す。影響度EIDは、特定領域の変形量によって各パッチ位置に対して設定される値である。この処理を全てのパッチ位置に対して行い、各パッチ位置における影響度EIDを算出する。
次に、ステップS1203において、影響度算出部912は、全てのパッチ位置に対して影響度を算出したか否かを判定する。この判定の結果、全てのパッチ位置に対して影響度を算出してない場合はステップS1202に戻り、全てのパッチ位置に対して影響度を算出した場合はステップS1204に進む。
ステップS1204においては、パッチ適合度算出部913は、あるパッチ位置において、INデプスパッチとキーシェイプiに属するDBデプスパッチとのデプス誤差Derri IDを算出する。そして、以下の式(4)に従ってDBデプスパッチの変形量Vi IDと影響度EIDとの差を用いて、適合度である評価スコアScorei IDを算出する。
式(4)中の変形量Vi IDは、表情の影響度マップを生成する際に計算されるデプス誤差を正規化した値である。評価スコアScorei IDにおいて、デプス誤差Derri IDが"0"であれば、形状が一致していることを示す。そして、影響度EIDと変形量Vi IDとの差が"0"に近ければ、その分望ましい変形量であることが評価できる。従って、評価スコアScorei IDは評価が高いほど"0"に近づくことになる。つまり、式(4)によって、デプス誤差に加え、影響度EIDで求められる数値を期待値として、その値にできるだけ近い変形量を持つDBデプスパッチを選択することが可能になる。
次に、ステップS1205は、パッチ適合度算出部913は、全てのキーシェイプに対して評価スコアScorei IDの計算が終了したかどうかを判定する。この判定の結果、全てのキーシェイプに対して計算が終了していない場合はステップS1204に戻り、全てのキーシェイプに対して計算が終了した場合はステップS1206に進む。
ステップS1206においては、パッチ選択部115は、該当するラベルにおける最も適合するDBデプスパッチをデータベース105から選択する。この処理では、ステップS1204において算出された評価スコアの中でも最も"0"に近い値のキーシェイプのラベルを参照し、DBデプスパッチを選択する。
続いてステップS1207において、全てのパッチ位置においてパッチの選択処理が終了したか否か判定する。この判定の結果、パッチの選択処理が終了していない場合はステップS1204に戻り、全てのパッチを選択した場合はステップS410に進む。なお、ステップS410は、図4のステップS410と同様の処理であるため、説明は省略する。
以上のように本実施形態によれば、デプス誤差に加え、特定領域の表情の変形量から周辺領域の変形量を推定することによって、表情変化の影響度を加味した表情のテクスチャを生成することができる。これにより、単純なデプス誤差の比較では選択されなかった微細な凹凸変化を含むDBデプスパッチを選択することができる。
なお、本実施形態では、顔の特定領域として目領域を例に説明したが、構築するシステムによっては、目領域に加え、眉、口、鼻、頬などの顔の各部位を特定領域に設定して影響度マップを生成してもよい。また、本実施形態は、顔に限らずそれ以外の特定領域と周辺領域との間で変形の相関が高い場合に適用することが可能である。
(第4の実施形態)
第3の実施形態では、特定領域のデプス誤差から変形量を算出し、特定領域が周辺領域に及ぼす表情の影響度を計算することにより、表情変形に応じたテクスチャを生成した。これに対して本実施形態では、特定領域のデプス情報に加え、アピアランス情報も併用することによって、周辺領域への表情変化の影響を推定してパッチを選択する。ここで、本実施形態に係るテクスチャが画像の輝度パターンを意味しているのに対して、アピアランス情報は、特定領域における見た目(テクスチャ)の変化を指すものとする。
第3の実施形態では、特定領域のデプス誤差から変形量を算出し、特定領域が周辺領域に及ぼす表情の影響度を計算することにより、表情変形に応じたテクスチャを生成した。これに対して本実施形態では、特定領域のデプス情報に加え、アピアランス情報も併用することによって、周辺領域への表情変化の影響を推定してパッチを選択する。ここで、本実施形態に係るテクスチャが画像の輝度パターンを意味しているのに対して、アピアランス情報は、特定領域における見た目(テクスチャ)の変化を指すものとする。
図13は、本実施形態に係るテクスチャ生成装置130の機能構成例を示すブロック図である。本実施形態に係るテクスチャ生成装置130の構成は、第2及び第3の実施形態に係る構成を組み合わせた構成になっている。そのため各部の説明については省略する。また、第2または第3の実施形態で説明した内容と同じ構成および処理については説明を省略する。
図14は、本実施形態において、データベース構築部1300の影響度マップ生成部901が影響度マップを生成する処理手順の一例を示すフローチャートである。本実施形態に係る影響度マップの算出処理では、第3の実施形態で説明した処理に加え、アピアランス情報としてテクスチャの変化量を計算する。テクスチャの変化量は、前述の輝度ヒストグラム等の特徴量を利用して計算する。なお、データベースに複数のキーシェイプに係るパッチを蓄積する処理手順については図3と同様であるため、説明は省略する。
まず、ステップS1401において、デプスパッチ登録部103からパッチ分割されたデプスマップの距離情報を入力するとともに、テクスチャパッチ登録部104から輝度情報を入力する。
次に、ステップS1402において、前述のステップS1002で説明した特定領域の距離情報の変形量を算出する処理に加え、輝度情報(テクスチャ)の変化量を計算する。具体的には、パッチ内の輝度情報から、輝度ヒストグラムや輝度勾配ヒストグラムを計算し、前述の式(2)を利用して基準表情の輝度情報と比較することによって変化量を見積もることができる。また、楕円近似の方法などを用いて目や口の開口度を計算してアピアランスの変化量を計算するなどしてもよい。
続いて、ステップS1403において、全てのキーシェイプに対して特定領域の距離情報の変形量及び輝度情報の変化量を計算したか否かを判定する。この判定の結果、全てのキーシェイプで特定領域の距離情報の変形量及び輝度情報の変化量を計算していない場合はステップS1402に戻り、全てのキーシェイプで特定領域の距離情報の変形量及び輝度情報の変化量を計算した場合はステップS1404に進む。
ステップS1404においては、全てのキーシェイプの特定領域における距離情報の変形量及び輝度情報の変化量を正規化する。正規化を行う手順については、ステップS1004と同様である。
次に、ステップS1405において、全てのキーシェイプにおける特定領域の周辺領域に属するパッチの変形量を計算するとともに、周辺領域に属するパッチの輝度情報の変化量を計算する。周辺領域の選択方法については、ステップS1005と同様である。
次に、ステップS1406において、周辺領域に該当する全てのパッチに対して距離情報の変形量及び輝度情報の変化量の計算が終了したかどうかを判定する。全てのパッチに対して距離情報の変形量及び輝度情報の変化量の計算が終了していない場合はステップS1405に戻り、全てのパッチに対して距離情報の変形量及び輝度情報の変化量の計算が終了した場合はステップS1407に進む。
次に、ステップS1407において、ステップS1004と同様に、周辺領域においてパッチ位置が同じラベルのパッチに対して、距離情報の変形量及び輝度情報の変化量を全てのキーシェイプで正規化する。具体的には、ステップS1007と同様の方法で、周辺領域の距離情報及び輝度情報の変化量を正規化する。
次に、ステップS1408において、周辺領域におけるすべてのパッチ位置において距離情報の変形量及び輝度情報の変化量を正規化したか否かを判定する。この判定の結果、周辺領域におけるすべてのパッチ位置において距離情報の変形量及び輝度情報の変化量を正規化していない場合はステップS1407に戻る。一方、周辺領域におけるすべてのパッチ位置において距離情報の変形量及び輝度情報の変化量を正規化した場合はステップS1409に進む。
次に、ステップS1409において、物体の距離情報による影響度マップを生成するとともに、輝度情報による影響度マップを生成する。
図15は、本実施形態において、テクスチャ生成部1310により新たにテクスチャを生成する処理手順の一例を示すフローチャートである。まず、ステップS701〜S702までの処理については、図7と同様であるため、説明は省略する。
ステップS1501においては、特定領域変形量算出部911は、INデプスパッチにおける距離情報を用いた特定領域の変形量、及び同領域の輝度情報の変化量を計算する。距離情報を用いた特定領域の変形量の算出方法についてはステップS1201と同様である。
一方、輝度情報の変化量は、ステップS701で入力される輝度情報と基準表情の輝度情報とを比較することによって計算することができる。具体的な輝度情報の比較方法としては、輝度ヒストグラムや輝度勾配ヒストグラムで各INテクスチャパッチの特徴量を抽出し、相関やカイ2乗等の計算方法で抽出した特徴量がどれだけ近いかを評価値として計算する。そして、算出された評価値をデータベース105に登録される当該パッチ位置での最大輝度変化量で割ることによって、輝度情報の変化量を正規化する。
次に、ステップS1502において、影響度算出部912は、特定領域における距離情報の変形量および輝度情報の変化量から、それぞれ表情の影響度を計算する。距離情報の影響度の計算方法は、ステップS1202で説明した方法と同様の処理であるため、説明を省略する。一方、輝度情報の影響度は、ステップS1409で生成した影響度マップを利用して、周辺領域における各パッチ位置の輝度情報の変化量を推定する。そして、この周辺領域における輝度情報の変化量を輝度情報の影響度とする。
次に、ステップS1503において、影響度算出部912は、全てのパッチ位置に対して影響度を計算したか否かを判定する。この判定の結果、全てのパッチ位置に対して影響度の計算が終了していない場合はステップS1502に戻り、全てのパッチ位置に対して影響度の計算が終了した場合はステップS1504に進む。なお、本実施形態では、画面を構成する全てのパッチ位置に対して、同様の処理を行うことを想定している。しかし、構築するシステムによっては、例えば顔の上部にあるパッチは目領域の影響のみを計算し、下部にあるパッチは口領域の影響を計算するというようにパッチ位置に応じて影響を受ける特定領域を決めておいてもよい。
次に、ステップS1504において、パッチ適合度算出部913は、あるキーシェイプについて、適合度である評価スコアScorei IDを算出する。具体的には、距離情報による表情の影響度を加味したDscorei IDと輝度情報による表情の影響度を加味したTscorei IDとの線形加算によって評価スコアを計算する。具体的な計算方法を以下の式(5)に示す。
式(5)中のDVi ID,TVi IDは、それぞれDBデプスパッチ(距離情報)の変形量およびDBテクスチャパッチ(輝度情報)の変化量である。また、DEID,TEIDは、それぞれ距離情報及び輝度情報の影響度である。また、重みα及びβは、構築するシステムによって自由に設定可能な重み係数である。
次に、ステップS1505において、パッチ適合度算出部913は、全てのキーシェイプに対して前述の評価スコアの計算が終了したか否かを判定する。この判定の結果、全てのキーシェイプに対して評価スコアの計算が終了していない場合はステップS1504に戻り、全てのキーシェイプに対して評価スコアの計算が終了した場合はステップS1506に進む。
次に、ステップS1506において、パッチ選択部115は、ステップS1504で算出された評価スコアが最小となるキーシェイプのDBデプスパッチをデータベース105から選択する。選択されたDBデプスパッチは、デプス誤差およびテクスチャ誤差が最小であり、距離情報の変形量および輝度情報の変化量の期待値が最も近いパッチである。
次に、ステップS1507において、パッチ選択部115は、全てのパッチ位置に対してパッチの選択処理が終了したか否かを判定する。この判定の結果、全てのパッチ位置に対してパッチの選択処理が終了していない場合はステップS1504に戻り、全てのパッチ位置に対してパッチの選択処理が終了した場合はステップS410に進む。なお、ステップS410は、図4のステップS410と同様の処理であるため、説明は省略する。
以上のように本実施形態によれば、特定領域における距離情報の変形量および輝度情報の変化量を鑑みて、特定領域周辺の表情変化を推定し、表情変化に応じたテクスチャを生成することができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
105 データベース
112 入力データ処理部
113 パッチ生成部
114 デプス誤差算出部
115 パッチ選択部
116 テクスチャパッチ合成部
112 入力データ処理部
113 パッチ生成部
114 デプス誤差算出部
115 パッチ選択部
116 テクスチャパッチ合成部
Claims (8)
- 複数の変形に対応する、物体の形状情報及び輝度情報に係るマップを複数の領域に分割したパッチを、領域ごとに関連付けて記憶する記憶手段と、
前記複数の変形とは異なる変形に対応する前記物体の形状情報を取得する取得手段と、
前記取得手段によって取得された前記物体の形状情報に係るマップを前記複数の領域に分割したパッチを生成するパッチ生成手段と、
前記パッチ生成手段によって生成されたパッチと前記記憶手段に記憶された前記物体の形状情報に係るマップを分割したパッチとの誤差を領域ごとに算出する誤差算出手段と、
前記誤差算出手段によって算出された誤差に基づいて、前記記憶手段から前記物体の形状情報に係るマップを分割したパッチを領域ごとに選択する選択手段と、
前記選択手段によって選択されたパッチに対応する前記物体の輝度情報に係るマップを分割したパッチを領域ごとに貼り合わせて、前記取得手段によって取得された前記物体の形状情報に対応するテクスチャを生成するテクスチャ生成手段と、
を有することを特徴とする画像処理装置。 - 前記取得手段は、前記記憶手段に記憶されたパッチに係る前記物体の形状のさらなる変形に対応した形状情報を取得することを特徴とする請求項1に記載の画像処理装置。
- 前記取得手段は、さらに前記複数の変形とは異なる変形に対応する前記物体の輝度情報を取得し、
前記パッチ生成手段は、さらに前記取得手段によって取得された前記物体の輝度情報に係るマップを前記複数の領域に分割したパッチを生成し、
前記誤差算出手段は、前記物体の形状情報及び輝度情報に対し、それぞれパッチの誤差を領域ごとに算出し、
前記選択手段は、前記誤差算出手段によって算出された前記物体の形状情報及び輝度情報に係るパッチの誤差に基づいて、前記記憶手段から前記物体の形状情報に係るマップを分割したパッチを領域ごとに選択することを特徴とする請求項1に記載の画像処理装置。 - 前記選択手段は、さらに前記物体の特定領域における形状の変化が前記特定領域の周辺領域に及ぼす影響度に基づいて、前記記憶手段から前記物体の形状情報に係るマップを分割したパッチを領域ごとに選択することを特徴とする請求項1に記載の画像処理装置。
- 前記選択手段は、さらに物体の特定領域における形状及び輝度の変化が前記特定領域の周辺領域に及ぼす影響度に基づいて、前記記憶手段から前記物体の形状情報に係るマップを分割したパッチを領域ごとに選択することを特徴とする請求項1に記載の画像処理装置。
- 前記物体が、顔、人体、動物または植物であることを特徴とする請求項1〜5の何れか1項に記載の画像処理装置。
- 複数の変形に対応する、物体の形状情報及び輝度情報に係るマップを複数の領域に分割したパッチを、領域ごとに関連付けて記憶する記憶手段を有する画像処理装置の画像処理方法であって、
前記複数の変形とは異なる変形に対応する前記物体の形状情報を取得する取得工程と、
前記取得工程において取得された前記物体の形状情報に係るマップを前記複数の領域に分割したパッチを生成するパッチ生成工程と、
前記パッチ生成工程において生成されたパッチと前記記憶手段に記憶された前記物体の形状情報に係るマップを分割したパッチとの誤差を領域ごとに算出する誤差算出工程と、
前記誤差算出工程において算出された誤差に基づいて、前記記憶手段から前記物体の形状情報に係るマップを分割したパッチを領域ごとに選択する選択工程と、
前記選択工程において選択されたパッチに対応する前記物体の輝度情報に係るマップを分割したパッチを領域ごとに貼り合わせて、前記取得工程において取得された前記物体の形状情報に対応するテクスチャを生成するテクスチャ生成工程と、
を有することを特徴とする画像処理方法。 - 複数の変形に対応する、物体の形状情報及び輝度情報に係るマップを複数の領域に分割したパッチを、領域ごとに関連付けて記憶する記憶手段を有する画像処理装置を制御するためのプログラムであって、
前記複数の変形とは異なる変形に対応する前記物体の形状情報を取得する取得工程と、
前記取得工程において取得された前記物体の形状情報に係るマップを前記複数の領域に分割したパッチを生成するパッチ生成工程と、
前記パッチ生成工程において生成されたパッチと前記記憶手段に記憶された前記物体の形状情報に係るマップを分割したパッチとの誤差を領域ごとに算出する誤差算出工程と、
前記誤差算出工程において算出された誤差に基づいて、前記記憶手段から前記物体の形状情報に係るマップを分割したパッチを領域ごとに選択する選択工程と、
前記選択工程において選択されたパッチに対応する前記物体の輝度情報に係るマップを分割したパッチを領域ごとに貼り合わせて、前記取得工程において取得された前記物体の形状情報に対応するテクスチャを生成するテクスチャ生成工程と、
をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016000721A JP2017122993A (ja) | 2016-01-05 | 2016-01-05 | 画像処理装置、画像処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016000721A JP2017122993A (ja) | 2016-01-05 | 2016-01-05 | 画像処理装置、画像処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017122993A true JP2017122993A (ja) | 2017-07-13 |
Family
ID=59306604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016000721A Pending JP2017122993A (ja) | 2016-01-05 | 2016-01-05 | 画像処理装置、画像処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017122993A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019138834A1 (ja) * | 2018-01-12 | 2019-07-18 | キヤノン株式会社 | 情報処理装置、情報処理方法、プログラム、およびシステム |
US20220099588A1 (en) * | 2020-09-29 | 2022-03-31 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium |
CN115375827A (zh) * | 2022-07-21 | 2022-11-22 | 荣耀终端有限公司 | 光照估计方法及电子设备 |
-
2016
- 2016-01-05 JP JP2016000721A patent/JP2017122993A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019138834A1 (ja) * | 2018-01-12 | 2019-07-18 | キヤノン株式会社 | 情報処理装置、情報処理方法、プログラム、およびシステム |
JP2019125345A (ja) * | 2018-01-12 | 2019-07-25 | キヤノン株式会社 | 情報処理装置、情報処理方法、プログラム、およびシステム |
JP7341652B2 (ja) | 2018-01-12 | 2023-09-11 | キヤノン株式会社 | 情報処理装置、情報処理方法、プログラム、およびシステム |
US20220099588A1 (en) * | 2020-09-29 | 2022-03-31 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium |
US11898966B2 (en) * | 2020-09-29 | 2024-02-13 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium |
CN115375827A (zh) * | 2022-07-21 | 2022-11-22 | 荣耀终端有限公司 | 光照估计方法及电子设备 |
CN115375827B (zh) * | 2022-07-21 | 2023-09-15 | 荣耀终端有限公司 | 光照估计方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10679046B1 (en) | Machine learning systems and methods of estimating body shape from images | |
US11010896B2 (en) | Methods and systems for generating 3D datasets to train deep learning networks for measurements estimation | |
US10489683B1 (en) | Methods and systems for automatic generation of massive training data sets from 3D models for training deep learning networks | |
US10529137B1 (en) | Machine learning systems and methods for augmenting images | |
US10796480B2 (en) | Methods of generating personalized 3D head models or 3D body models | |
JP4284664B2 (ja) | 三次元形状推定システム及び画像生成システム | |
US11494915B2 (en) | Image processing system, image processing method, and program | |
Pighin et al. | Modeling and animating realistic faces from images | |
CN107403463B (zh) | 在成像系统中具有非刚性部分的人体表示 | |
US9552668B2 (en) | Generation of a three-dimensional representation of a user | |
JP6207210B2 (ja) | 情報処理装置およびその方法 | |
CN104123749A (zh) | 一种图像处理方法及系统 | |
JP2006520055A (ja) | 2次元画像からの3次元オブジェクトの不変視点検出および識別 | |
US11282257B2 (en) | Pose selection and animation of characters using video data and training techniques | |
US11798299B2 (en) | Methods and systems for generating 3D datasets to train deep learning networks for measurements estimation | |
JP2011039869A (ja) | 顔画像処理装置およびコンピュータプログラム | |
US11507781B2 (en) | Methods and systems for automatic generation of massive training data sets from 3D models for training deep learning networks | |
CN111553284A (zh) | 人脸图像处理方法、装置、计算机设备和存储介质 | |
CN113628327A (zh) | 一种头部三维重建方法及设备 | |
Song et al. | A generic framework for efficient 2-D and 3-D facial expression analogy | |
JP2017122993A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2010211732A (ja) | 物体認識装置および方法 | |
CN118262034A (zh) | 从图像重建可动画化的三维人类头部模型的系统和方法 | |
US11361467B2 (en) | Pose selection and animation of characters using video data and training techniques | |
Zhang et al. | Anatomy-based face reconstruction for animation using multi-layer deformation |