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

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

2024-162296三次元情報処理装置及び三次元情報処理方法
<>
  • -三次元情報処理装置及び三次元情報処理方法 図1
  • -三次元情報処理装置及び三次元情報処理方法 図2
  • -三次元情報処理装置及び三次元情報処理方法 図3
  • -三次元情報処理装置及び三次元情報処理方法 図4
  • -三次元情報処理装置及び三次元情報処理方法 図5
  • -三次元情報処理装置及び三次元情報処理方法 図6
  • -三次元情報処理装置及び三次元情報処理方法 図7
  • -三次元情報処理装置及び三次元情報処理方法 図8
  • -三次元情報処理装置及び三次元情報処理方法 図9
  • -三次元情報処理装置及び三次元情報処理方法 図10
  • -三次元情報処理装置及び三次元情報処理方法 図11
  • -三次元情報処理装置及び三次元情報処理方法 図12
  • -三次元情報処理装置及び三次元情報処理方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162296
(43)【公開日】2024-11-21
(54)【発明の名称】三次元情報処理装置及び三次元情報処理方法
(51)【国際特許分類】
   G06T 7/50 20170101AFI20241114BHJP
【FI】
G06T7/50
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023077668
(22)【出願日】2023-05-10
(71)【出願人】
【識別番号】308036402
【氏名又は名称】株式会社JVCケンウッド
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100114937
【弁理士】
【氏名又は名称】松本 裕幸
(74)【代理人】
【識別番号】100162868
【弁理士】
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】籾山 悦郎
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096AA09
5L096BA08
5L096CA02
5L096DA01
5L096FA66
5L096JA11
5L096JA18
(57)【要約】
【課題】被写体の背面の三次元形状が取得できない場合であっても、被写体の三次元形状を生成する。
【解決手段】三次元情報処理装置は、被写体を撮像した画像を取得する画像取得部と、前記被写体までの距離情報を取得する距離情報取得部と、取得した前記画像に基づき、前記被写体と背景との境界を検出する境界検出部と、取得した前記距離情報のうち、所定方向における変化を示す関数を算出し、算出された前記関数と、検出された前記境界上の点とに基づき、前記被写体の背面における距離情報を補完する背面補完処理部と、を備える。
【選択図】図2
【特許請求の範囲】
【請求項1】
被写体を撮像した画像を取得する画像取得部と、
前記被写体までの距離情報を取得する距離情報取得部と、
取得した前記画像に基づき、前記被写体と背景との境界を検出する境界検出部と、
取得した前記距離情報のうち、所定方向における変化を示す関数を算出し、算出された前記関数と、検出された前記境界上の点とに基づき、前記被写体の背面における距離情報を補完する背面補完処理部と、
を備える三次元情報処理装置。
【請求項2】
取得された前記画像から特徴点を抽出し、抽出された前記特徴点以外の距離情報を間引くことにより前記距離情報のデータ量を軽減する間引き処理を行う間引処理部を更に備え、
前記背面補完処理部は、前記特徴点の三次元座標を通る関数を前記関数として算出し、前記被写体の背面における距離情報を、前記間引処理部により間引かれたスペースに補完する
請求項1に記載の三次元情報処理装置。
【請求項3】
前記背面補完処理部は、前記被写体の背面における距離情報が、予め定められた三次元座標の最大値及び最小値の範囲内となるように推定する
請求項1又は請求項2に記載の三次元情報処理装置。
【請求項4】
前記背面補完処理部は、前記被写体の前面における画像情報に基づき、前記被写体の背面における画像情報を補完する背面画像情報補完部を更に備える
請求項1又は請求項2に記載の三次元情報処理装置。
【請求項5】
被写体を撮像した画像を取得する画像取得工程と、
前記被写体までの距離情報を取得する距離情報取得工程と、
取得した前記画像に基づき、前記被写体と背景との境界を検出する境界検出工程と、
取得した前記距離情報のうち、所定方向における変化を示す関数を算出し、算出された前記関数と、検出された前記境界上の点とに基づき、前記被写体の背面における距離情報を補完する背面補完処理工程と、
を含む三次元情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、三次元情報処理装置及び三次元情報処理方法に関する。
【背景技術】
【0002】
従来、現実世界に存在する物体の三次元形状を取得し、取得した三次元形状に基づき三次元モデルをモデリングすることが行われている。物体の三次元形状を正確に取得するため、複数台の測距カメラを用いて、多視点から被写体の三次元情報を取得する技術があった。複数台の測距カメラからそれぞれ得られた三次元情報は、1つの三次元情報に合成される。複数台の測距カメラを用いて多視点から被写体の三次元情報を取得することにより、1台の測距カメラにより1方向から三次元情報を取得する場合と比べて、より再現度の高い三次元情報を取得することが可能となる。複数台の測距カメラから得られた三次元情報を1つの三次元情報に合成するための技術として、例えば特許文献1に記載された技術を例示することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平7-174538号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら上述したような従来技術によれば、多視点において撮像された複数の画像データを用いて画像間の相対位置を算出し、画像データの座標変換パラメータを求め、求めた座標変換パラメータに基づいて三次元情報についての貼り合わせを行うことで、1つの三次元情報に合成する。より再現度の高い三次元情報を取得するには、より多くの測距カメラを用いて、被写体を様々な視点から撮像することを要する。多くの測距カメラを用いて被写体を撮像する場合、三次元情報の合成にリソースを要し、特に、被写体の動的な三次元形状を取得するような場合には、リアルタイムでの三次元形状の取得が困難であるといった問題があった。このような問題を鑑みると、少ない台数の測距カメラを用いて被写体を撮像することが考えられる。例えば1台の測距カメラで被写体の三次元情報取得しようとした場合、被写体の背面の三次元情報を取得することができないため、被写体に基づく三次元モデルを生成することが容易でないといった問題があった。
【0005】
そこで本発明は、このような状況に鑑みてなされたものであって、被写体の背面の三次元形状が取得できない場合であっても、被写体の三次元形状を生成することが可能な三次元情報処理装置の提供を目的とする。
【課題を解決するための手段】
【0006】
[1]本発明の一態様は、被写体を撮像した画像を取得する画像取得部と、前記被写体までの距離情報を取得する距離情報取得部と、取得した前記画像に基づき、前記被写体と背景との境界を検出する境界検出部と、取得した前記距離情報のうち、所定方向における変化を示す関数を算出し、算出された前記関数と、検出された前記境界上の点とに基づき、前記被写体の背面における距離情報を補完する背面補完処理部と、を備える三次元情報処理装置である。
【0007】
[2]また、本発明の一態様は、上記[1]に記載の三次元情報処理装置において、取得された前記画像から特徴点を抽出し、抽出された前記特徴点以外の距離情報を間引くことにより前記距離情報のデータ量を軽減する間引き処理を行う間引処理部を更に備え、前記背面補完処理部は、前記特徴点の三次元座標を通る関数を前記関数として算出し、前記被写体の背面における距離情報を、前記間引処理部により間引かれたスペースに補完するものである。
【0008】
[3]また、本発明の一態様は、上記[1]又は[2]に記載の三次元情報処理装置において、前記背面補完処理部は、前記被写体の背面における距離情報が、予め定められた三次元座標の最大値及び最小値の範囲内となるように推定するものである。
【0009】
[4]また、本発明の一態様は、上記[1]から[3]のいずれかに記載の三次元情報処理装置において、前記背面補完処理部は、前記被写体の前面における画像情報に基づき、前記被写体の背面における画像情報を補完する背面画像情報補完部を更に備えるものである。
【0010】
[5]また、本発明の一態様は、被写体を撮像した画像を取得する画像取得工程と、前記被写体までの距離情報を取得する距離情報取得工程と、取得した前記画像に基づき、前記被写体と背景との境界を検出する境界検出工程と、取得した前記距離情報のうち、所定方向における変化を示す関数を算出し、算出された前記関数と、検出された前記境界上の点とに基づき、前記被写体の背面における距離情報を補完する背面補完処理工程と、を含む三次元情報処理方法である。
【発明の効果】
【0011】
本発明によれば、被写体の背面の三次元形状が取得できない場合であっても、被写体の三次元形状を生成することができる。
【図面の簡単な説明】
【0012】
図1】一実施形態に係る三次元情報生成システムの機能構成の一例を示す機能構成図である。
図2】本実施形態に係る三次元情報処理装置の機能構成の一例を示す機能構成図である。
図3】本実施形態に係る間引処理部の機能構成の一例を示す機能構成図である。
図4】本実施形態に係る特徴点検出処理について説明するための図である。
図5】本実施形態に係る間引き処理について説明するための図である。
図6】本実施形態に係る背面補完処理部の機能構成の一例を示す機能構成図である。
図7】本実施形態に係る頭頂部補完処理について説明するための図である。
図8】本実施形態に係る側頭部補完処理について説明するための図である。
図9】本実施形態に係る間引き処理及び背面補完処理後の点群データの一例を示す図である。
図10】本実施形態に係るToF解像度のアップコンバートについて説明するための図である。
図11】本実施形態に係る点群データとメッシュデータの一例について示す図である。
図12】本実施形態に係る三次元情報処理装置が行う一連の動作の一例を示すフローチャートである。
図13】本実施形態に係る三次元情報処理装置の内部構成の一例を示すブロック図である。
【発明を実施するための形態】
【0013】
本発明の態様に係る三次元情報処理装置について、好適な実施の形態を掲げ、添付の図面を参照しながら以下、詳細に説明する。なお、以下で説明する実施形態は一例に過ぎず、本発明が適用される実施形態は、以下の実施形態に限られない。また、本願でいう「XXに基づいて」とは、「少なくともXXに基づく」ことを意味し、XXに加えて別の要素に基づく場合も含む。また、「XXに基づいて」とは、XXを直接に用いる場合に限定されず、XXに対して演算や加工が行われたものに基づく場合も含む。「XX」は、任意の要素(例えば、任意の情報)である。また、以下の図面においては、各構成をわかりやすくするために、各構造における縮尺および数等を、実際の構造における縮尺および数等と異ならせる場合がある。
【0014】
[実施形態]
図1は、一実施形態に係る三次元情報生成システムの機能構成の一例を示す機能構成図である。同図を参照しながら、三次元情報生成システム1の機能構成の一例について説明する。以降の説明において、x軸、y軸及びz軸の三次元直交座標系によって三次元情報生成システム1が有する各装置の姿勢や、各装置の位置関係等について説明する場合がある。
【0015】
三次元情報生成システム1は、三次元情報処理装置10と、撮像装置20とを備える。三次元情報生成システム1は、三次元情報処理装置10と、撮像装置20とを備えることにより、被写体Sの三次元情報を取得し、取得した情報に基づいた処理を行うことにより被写体Sの三次元モデルを生成する。撮像装置20は、被写体Sからz軸方向に距離D離れた地点から被写体Sを撮像する。被写体Sの背後には、ブルースクリーン等のスクリーンSCRが配置されていてもよい。なお、被写体Sの三次元形状が、背景と容易に分離可能な場合は、スクリーンSCRを要しない。
【0016】
撮像装置20は、被写体Sの三次元情報を取得可能な測距カメラである。撮像装置20は、撮像する画像(又は映像)に対応して、被写体Sとの距離を二次元的に測定することにより、被写体Sの三次元情報を取得する。撮像装置20により取得される被写体Sの三次元情報とは、例えば二次元座標系の各座標における距離情報を有する距離画像であってもよい。撮像装置20は、例えばToF(Time of Flight)方式を用いて、被写体Sに対して二次元的に光を照射し、反射光を受光するまでの時間に基づいて距離を計測するものであってもよい。撮像装置20は、取得した被写体Sの三次元情報として、画像情報IMG1及び距離情報IMG2を三次元情報処理装置10に出力する。
【0017】
画像情報IMG1には、被写体Sを所定の方向から撮像した画像情報(例えば、RGB画像)が含まれる。距離情報IMG2には、画像情報IMG1に対応する距離情報が含まれる。距離情報IMG2は、x-y平面における座標情報に対応する複数の距離情報が含まれる。当該距離情報が有するx-y平面における座標情報とは、画像情報IMG1が有する画素に対応するものである。なお、画像が有する画素ごとに距離情報を有することが好適ではあるが、複数の画素に対して1つの距離情報を有するものであってもよい。すなわち、距離情報IMG2のx-y平面における解像度は、画像情報IMG1が有する解像度より低くてもよい。
【0018】
以下の説明において、被写体Sのうち、撮像装置20が存在する側の面を、被写体Sの前面と記載し、スクリーンSCRが存在する側の面を、被写体Sの背面と記載する場合がある。被写体Sの前面及び背面は、被写体Sの形状から特定されるものではなく、撮像装置20と被写体Sとの位置関係により特定されるものである。したがって、画像情報IMG1には、被写体Sの前面における画像情報が含まれ、距離情報IMG2には、被写体Sの前面における距離情報が含まれるということもできる。
【0019】
三次元情報処理装置10は、撮像装置20から画像情報IMG1及び距離情報IMG2を取得する。三次元情報処理装置10は、取得した画像情報IMG1及び距離情報IMG2に基づき、被写体Sの三次元形状を有する三次元モデルを生成する。三次元情報処理装置10により生成される三次元モデルとは、例えば点群データやメッシュデータ等であってもよい。ここで、三次元情報生成システム1は、1台の撮像装置20により、1つの方向から被写体Sの情報を取得している。したがって、三次元情報生成システム1は、被写体Sの背面における情報を十分に取得できない。三次元情報処理装置10は、撮像装置20から取得した情報に基づき、被写体Sの背面における三次元情報を補完し、三次元モデルを生成する。なお、本実施形態は、必ずしも1台の撮像装置20のみを用いる場合に限定されるものではなく、複数の撮像装置20が用いられてもよい。
【0020】
図2は、本実施形態に係る三次元情報処理装置の機能構成の一例を示す機能構成図である。同図を参照しながら、三次元情報処理装置10の機能構成の一例について説明する。三次元情報処理装置10は、画像取得部11と、距離情報取得部12と、境界検出部13と、配列化処理部14と、間引処理部15と、背面補完処理部16と、点群データ生成部21と、メッシュ化処理部17と、マテリアル生成部18と、出力部19とを備える。これらの各機能部は、例えば、電子回路を用いて実現される。また、各機能部は、必要に応じて、半導体メモリや磁気ハードディスク装置などといった記憶手段を内部に備えてよい。また、各機能を、コンピュータおよびソフトウェアによって実現するようにしてもよい。
【0021】
画像取得部11は、撮像装置20から、被写体Sを撮像した画像情報IMG1を取得する。画像取得部11は、取得した画像情報IMG1を境界検出部13に出力する。
【0022】
距離情報取得部12は、撮像装置20から、被写体Sの三次元形状を示す距離情報IMG2を取得する。距離情報取得部12は、取得した距離情報IMG2を配列化処理部14に出力する。なお、画像取得部11により取得される画像情報IMG1と、距離情報取得部12により取得される距離情報IMG2とは、所定の方法により互いに対応付けられる。所定の方法とは、時刻情報や識別番号等に基づく方法であってもよい。
【0023】
境界検出部13は、画像取得部11から画像情報IMG1を取得する。境界検出部13は、取得した画像情報IMG1に基づき、被写体Sと背景との境界を検出する。被写体Sと背景との境界とは、例えば被写体Sが人物である場合は人物の輪郭部分であり、特に被写体Sが人物の顔部分である場合は人物の顔の輪郭部分である。人物の顔の輪郭部分には、毛髪部分と背景部分との境界等である頭頂部が含まれる。境界検出部13により行われる境界検出処理は、既知の物体検出アルゴリズムが用いられてもよい。境界検出部13は、検出した境界に関する情報を境界検出情報BDIとして配列化処理部14に出力する。
【0024】
配列化処理部14は、境界検出部13から境界検出情報BDIを取得し、距離情報取得部12から距離情報IMG2を取得する。配列化処理部14は、距離情報IMG2のうち、境界検出情報BDIにより特定される境界部分の内側のデータを抽出し、抽出されたデータの配列化を行う。配列化処理により、距離情報IMG2のうち、被写体S以外の背景部分における情報、すなわち被写体Sの三次元情報とは無関係な情報が削除される。配列化処理部14は、配列化処理を行った結果として得られた情報を、第1配列情報SI1として間引処理部15に出力する。
【0025】
間引処理部15は、配列化処理部14から第1配列情報SI1を取得する。まず、間引処理部15は、取得した第1配列情報SI1に含まれる画像情報から被写体Sの特徴点を抽出する。次に、間引処理部15は、抽出された特徴点以外の座標における距離情報を間引くことにより、距離情報のデータ量を軽減する。以下の説明において、間引処理部15により行われる処理を、間引き処理と記載する場合がある。図3から図5を参照しながら、間引き処理の詳細について説明する。
【0026】
図3は、本実施形態に係る間引処理部の機能構成の一例を示す機能構成図である。同図を参照しながら、間引処理部15の機能構成の一例について説明する。間引処理部15は、特徴点検出部151と、距離情報抽出部152とを備える。特徴点検出部151は、配列化処理部14から第1配列情報SI1を取得する。第1配列情報SI1には、撮像装置20により取得された距離情報IMG2のうち、背景部分を除いた被写体Sの部分についての距離情報が含まれている。特徴点検出部151は、被写体Sの部分についての画像情報を解析することにより、被写体Sの特徴点を検出する。
【0027】
図4は、本実施形態に係る特徴点検出処理について説明するための図である。同図を参照しながら、特徴点検出部151により行われる特徴点検出処理について説明する。同図には、被写体Sが人物である場合において、検出された特徴点を示す部分に丸が付されている。特徴点とは、被写体Sの三次元形状を特定するのに用いられる点であり、換言すれば、三次元形状が変化する点であってもよい。被写体Sが人物の顔である場合、具体的には、486箇所の特徴点が抽出されてもよい。特徴点検出処理には、既知の特徴点検出アルゴリズムが用いられてもよい。図3に戻り、特徴点検出部151は、検出した特徴点に関する情報を、特徴点情報FPIとして距離情報抽出部152に出力する。特徴点情報FPIには、特徴点の三次元座標情報が含まれる。
【0028】
距離情報抽出部152は、特徴点検出部151から特徴点情報FPIを取得し、配列化処理部14から第1配列情報SI1を取得する。距離情報抽出部152は、第1配列情報SI1から、特徴点情報FPIの距離情報を抽出することにより、すなわち特徴点情報FPI以外の情報を捨てることにより、点群データの間引き処理を行う。なお、被写体Sが人物の顔である場合、特徴点検出部151は、顔部分の特徴点を検出する。ここで、被写体Sの三次元形状には、顔部分以外の首部分等が含まれている場合がある。距離情報抽出部152は、特徴点検出部151により特徴点が検出された範囲のみ間引き処理を行い、その他の部分(顔部分以外の首部分等)については、間引き処理を行わない。
【0029】
ここで、特徴点検出部151により特徴点検出処理が行われた結果、被写体Sの全ての点についての特徴点が検出されることが好適である。被写体Sの全ての点とは、被写体Sの輪郭の内部における全ての特徴点、すなわち被写体Sの輪郭の内部において三次元形状が変化する全ての点である。しかしながら、既知の特徴点検出アルゴリズムを用いた場合、被写体Sのうち顔部分についての特徴点を検出することは可能であるが、顔以外の部分(例えば頭頂部や側頭部等)については、検出できない場合がある。このような場合、特徴点検出部151により行われる特徴点検出処理を拡張することが好適である。
【0030】
図5は、本実施形態に係る間引き処理について説明するための図である。同図を参照しながら、拡張された特徴点検出処理、及び間引き処理について説明する。
【0031】
図5(A)は、被写体Sの距離情報IMG2のうち特徴点検出処理により特徴点が検出された範囲AR1と、被写体Sの距離情報IMG2の輪郭を示す範囲AR2とが示されている。上述した距離情報の間引き処理により、範囲AR2のうち範囲AR1の内部における点群データのデータ量を削減することはできるが、範囲AR2のうち範囲AR1の外部における点群データのデータ量を削減することはできない。本実施形態によれば、範囲AR1の内部において行われた間引き処理を、範囲AR2にまで拡張することにより、被写体Sの内部について全体的な間引き処理を行う。被写体Sの内部についての全体的な間引き処理として、具体的には、頭頂部における間引き処理と、側頭部における処理間引きとが行われる。頭頂部における間引き処理が行われる個所をP1として図示し、側頭部における間引き処理が行われる個所をP2として図示する。
【0032】
P1の内部には、複数の矢印が示されている。P1の内部に示された複数の矢印は、範囲AR1と範囲AR2との境界部分において存在する特徴点の間隔で記載されている。本実施形態に係る間引き処理では、P1の内部において、図示する矢印上の距離情報を残し、その他の距離情報を間引く。また、矢印上の距離情報についても、所定の間隔で間引く。所定の間隔とは、範囲AR1の内部における距離情報の間隔に基づいた間隔であってもよい。P1の内部における間引き処理は、図示するように垂直方向(y軸方向)に行われる。
【0033】
また、P2の内部についても同様に、複数の矢印が示されている。P2の内部に示された複数の矢印は、範囲AR1と範囲AR2との境界部分において存在する特徴点の間隔で記載されている。本実施形態に係る間引き処理では、P2の内部において、図示する矢印上の距離情報を残し、その他の距離情報を間引く。また、矢印上の距離情報についても、所定の間隔で間引く。所定の間隔とは、範囲AR1の内部における距離情報の間隔に基づいた間隔であってもよい。P2の内部における間引き処理は、図示するように水平方向(x軸方向)に行われる。
【0034】
図5(B)は、上述した拡張された間引き処理により得られた距離情報の一例を示す。図示するように、P1及びP2においても、間引き処理が行われた後の、少ないデータ量の距離情報が存在していることが分かる。図3に戻り、距離情報抽出部152は、間引き処理の結果得られた距離情報の情報を、第2配列情報SI2として背面補完処理部16に出力する。
【0035】
図2に戻り、背面補完処理部16は、画像取得部11から画像情報IMG1を取得し、間引処理部15から第2配列情報SI2を取得する。背面補完処理部16は、取得した第2配列情報SI2のうち、点群の所定方向における変化を示す関数を算出する。当該関数は、特徴点検出部151により検出された特徴点の三次元座標を通る関数である。当該関数は、具体的には、被写体Sが人物の顔部分である場合、人物の顔部分のy-z平面(図5参照)における変化を示すものである。背面補完処理部16は、算出された関数と、境界検出部13により検出された境界上の点とに基づき、被写体Sの背面における距離情報を補完する。背面補完処理部16は、得られた距離情報(被写体Sの背面における距離情報)を、間引処理部15により間引かれたスペースに補完してもよい。以下の説明において、背面補完処理部16により行われる処理を、背面補完処理と記載する場合がある。図6から図10を参照しながら、背面補完処理の詳細について説明する。
【0036】
図6は、本実施形態に係る背面補完処理部の機能構成の一例を示す機能構成図である。同図を参照しながら、背面補完処理部16の機能構成の一例について説明する。背面補完処理部16は、頭頂補完部161と、側頭補完部162と、背面補完情報生成部163と、背面画像情報補完部164とを備える。
【0037】
頭頂補完部161は、頭頂関数算出部1611と、頭頂推定部1612とを備える。頭頂関数算出部1611は、間引処理部15から第2配列情報SI2を取得する。頭頂関数算出部1611は、頭頂部における関数を算出する。頭頂関数算出部1611により算出される関数は、被写体Sの距離情報を垂直方向に通る関数である。当該関数は、具体的には、被写体Sが人物の顔部分である場合、人物の顔部分のy-z平面(図7参照)における三次元形状の変化を示すものであって、当該y-z平面における額の生え際の点と頭頂部(被写体と背景との境界)の点と後頭部の点とを通る関数である。当該関数とは、例えば二次関数であってもよい。頭頂関数算出部1611は、横方向(x軸方向)に所定の間隔で、複数の関数を算出する。所定の間隔とは、例えば、三次元形状を生成した際に十分に被写体Sの形状を表現できる程度の間隔であればよい。以下、頭頂補完部161により行われる処理を、頭頂部補完処理と記載する場合がある。
【0038】
図7は、本実施形態に係る頭頂部補完処理について説明するための図である。同図を参照しながら、頭頂部補完処理により、得られる関数の一例について説明する。同図は、被写体Sの三次元情報を、x軸方向に見た図である。座標C1(Z1,Y1)及び座標C2(Z2,Y2)は、同一のy-z平面に存在する点である。すなわち座標C1及び座標C2のx座標は同一である。また、座標C1及び座標C2は、第2配列情報SI2に含まれる距離情報上の点である。頭頂関数算出部1611は、例えば、座標C1及び座標C2に基づき、第1関数FNC1を算出する。第1関数FNC1は、複数の点に基づいて算出されてもよい。
【0039】
図6に戻り、頭頂関数算出部1611は、算出された関数についての情報を第1関数FNC1として頭頂推定部1612に出力する。第1関数FNC1には、複数の関数についての情報が含まれていてもよい。
【0040】
頭頂推定部1612は、間引処理部15から第2配列情報SI2を取得し、頭頂関数算出部1611から第1関数FNC1を取得する。頭頂推定部1612は、第1関数FNC1と、第2配列情報SI2に含まれる距離情報とに基づき、被写体Sの背面における距離情報を推定する。
【0041】
図7に進み、被写体Sの背面における距離情報の生成方法について説明する。ここで、第1関数FNC1は、第2配列情報SI2に含まれる距離情報上の座標C1(Z1,Y1)及び座標C2(Z2,Y2)に基づいて得られた関数である。当該関数上の点として、座標C3(Z3,Y3)を図示する。座標C3とは、すなわち、被写体Sの背面における点であり、撮像装置20からは本来取得することができない点の情報である。このように、頭頂推定部1612は、算出された関数に基づき、撮像装置20からは本来取得することができない被写体Sの三次元形状を推定する。
【0042】
なお、頭頂関数算出部1611によって算出された関数によっては、被写体Sの背面における距離情報が異常値となってしまう場合がある。ここで、被写体Sが何であるかの情報が予め分かっていれば、被写体Sの背面における距離情報が異常値であるか否かを判定し、異常値である場合は修正を行うことができる。例えば、被写体Sが人物の顔部分であることが予め分かっている場合、人物の背面として現実的にとり得る座標の範囲は、所定の範囲に限定される。したがって、予め定められた三次元座標の最大値及び最小値の範囲内となるよう、被写体Sの背面の座標が推定されてもよい。三次元座標の最大値及び最小値の範囲は、境界検出部13により物体検出が行われた際に得られた被写体Sのクラス等に基づいて取得されてもよい。図6に戻り、頭頂推定部1612は、推定した被写体Sの背面における距離情報を、第1推定情報EI1として背面補完情報生成部163に出力する。
【0043】
側頭補完部162は、側頭関数算出部1621と、側頭推定部1622とを備える。側頭関数算出部1621は、間引処理部15から第2配列情報SI2を取得する。側頭関数算出部1621は、側頭部における関数を算出する。側頭関数算出部1621により算出される関数は、被写体Sの距離情報を水平方向に通る関数である。当該関数は、具体的には、被写体Sが人物の顔部分である場合、人物の顔部分のx-z平面(図8参照)における三次元形状の変化を示すものであって、当該x-z平面における顔から側頭部の生え際の点と側頭部(被写体と背景との境界)の点と後頭部の点とを通る関数である。当該関数とは、例えば二次関数であってもよい。側頭関数算出部1621は、縦方向(y軸方向)に所定の間隔で、複数の関数を算出する。所定の間隔とは、例えば、三次元形状を生成した際に十分に被写体Sの形状を表現できる程度の間隔であればよい。以下、側頭補完部162により行われる処理を、側頭部補完処理と記載する場合がある。
【0044】
図8は、本実施形態に係る側頭部補完処理について説明するための図である。同図を参照しながら、側頭部補完処理により、得られる関数の一例について説明する。同図は、被写体Sの三次元情報を、y軸方向に見た図である。座標C4(Z1,X1)及び座標C5(Z2,X2)は、同一のx-z平面に存在する点である。すなわち座標C4及び座標C5のy座標は同一である。また、座標C4及び座標C5は、第2配列情報SI2に含まれる距離情報上の点である。側頭関数算出部1621は、例えば、座標C4及び座標C5に基づき、第2関数FNC2を算出する。第2関数FNC2は、複数の点に基づいて算出されてもよい。
【0045】
図6に戻り、側頭関数算出部1621は、算出された関数についての情報を第2関数FNC2として側頭推定部1622に出力する。第2関数FNC2には、複数の関数についての情報が含まれていてもよい。
【0046】
側頭推定部1622は、間引処理部15から第2配列情報SI2を取得し、側頭関数算出部1621から第2関数FNC2を取得する。側頭推定部1622は、第2関数FNC2と、第2配列情報SI2に含まれる距離情報とに基づき、被写体Sの背面における距離情報を推定する。
【0047】
図8に進み、被写体Sの背面における距離情報の生成方法について説明する。ここで、第2関数FNC2は、第2配列情報SI2に含まれる距離情報上の座標C4(Z1,X1)及び座標C5(Z2,X2)に基づいて得られた関数である。当該関数上の点として、座標C6(Z3,X3)を図示する。座標C6とは、すなわち、被写体Sの背面における点であり、撮像装置20からは本来取得することができない点の情報である。このように、側頭推定部1622は、算出された関数に基づき、撮像装置20からは本来取得することができない三次元形状を推定する。
【0048】
なお、側頭関数算出部1621によって算出された関数によっては、被写体Sの背面における距離情報が異常値となってしまう場合がある。ここで、被写体Sが何であるかの情報が予め分かっていれば、被写体Sの背面における距離情報が異常値であるか否かを判定し、異常値である場合は修正を行うことができる。例えば、被写体Sが人物の顔部分であることが予め分かっている場合、人物の背面として現実的にとり得る座標の範囲は、所定の範囲に限定される。したがって、予め定められた三次元座標の最大値及び最小値の範囲内となるよう、被写体Sの背面の座標が推定されてもよい。三次元座標の最大値及び最小値の範囲は、境界検出部13により物体検出が行われた際に得られた被写体Sのクラス等に基づいて取得されてもよい。図6に戻り、側頭推定部1622は、推定した被写体Sの背面における距離情報を、第2推定情報EI2として背面補完情報生成部163に出力する。
【0049】
背面補完情報生成部163は、間引処理部15から第2配列情報SI2を取得し、頭頂補完部161から第1推定情報EI1を取得し、側頭補完部162から第2推定情報EI2を取得する。背面補完情報生成部163は、取得した情報に基づき、被写体Sの前面及び背面を含む全体的な距離情報を生成する。ここで、第2配列情報SI2には、被写体Sの前面の距離情報が含まれている。また、第1推定情報EI1及び第2推定情報EI2には、被写体Sの背面における距離情報が推定された情報が含まれている。したがって、背面補完情報生成部163は、これら情報に基づき、被写体Sの前面及び背面についての三次元情報が含まれる距離情報を生成する。背面補完情報生成部163は、生成した情報を背面補完情報BCIとして背面画像情報補完部164に出力する。
【0050】
図9は、本実施形態に係る間引き処理及び背面補完処理後の距離情報の一例を示す図である。同図を参照しながら、背面補完情報生成部163により生成された背面補完情報BCIの一例を示す。図示するように、背面補完情報生成部163により生成された背面補完情報BCIによれば、被写体Sである人物の顔部分について、前面及び背面の距離情報を生成することができる。なお、図示する一例において、被写体Sの首部分については、距離情報が間引き処理されていない。しかしながら本実施形態はこの一例に限定されず、首データについても、図5を参照しながら説明した方法を用いる等により、間引き処理を行ってもよい。
【0051】
ここで、背面補完情報生成部163により被写体Sの背面における距離情報を生成することができたが、被写体Sの背面における画像についても補完処理を行うことが好適である。三次元情報処理装置10によれば、背面画像情報補完部164を備えることにより、被写体Sの背面における画像についても補完処理を行う。図6に戻り、背面画像情報補完部164は、画像取得部11から画像情報IMG1を取得し、背面補完情報生成部163から背面補完情報BCIを取得する。背面画像情報補完部164は、取得した被写体Sの前面における画像情報IMG1と、被写体Sの背面の距離情報とに基づき、被写体Sの背面における画像情報を補完する。背面画像情報補完部164は、例えば、被写体Sの前面の画像情報に基づき、例えば毛髪部分の色情報を抽出し、抽出した毛髪部分の色情報を用いて、被写体Sの背面における画像情報を補完してもよい。背面画像情報補完部164は、被写体Sの背面における画像情報を補完した後、被写体Sの距離情報と、画像情報とを有するデータを、第3配列情報SI3として点群データ生成部21に出力する。
【0052】
現状、イメージセンサの解像度は高解像度化が進んでいるが、ToFセンサの解像度はイメージセンサの解像度程高解像度化されておらず、イメージセンサの解像度と比較し、ToFセンサの解像度は低い場合がある。このような場合、高解像度の画像データを捨てることなく使うためには、低解像度のToF解像度をアップコンバートすることにより、イメージセンサの解像度に合わせることが好適である。以下、図10を参照しながら、ToF解像度のアップコンバートについて説明する。
【0053】
図10は、本実施形態に係るToF解像度のアップコンバートについて説明するための図である。同図を参照しながら、本実施形態に係るToF解像度のアップコンバートについて説明する。図10(A)は、低解像度のToFセンサにより得られる距離データのイメージを示す模式図である。図10(B)は、線形補完等を用いて補完用データを生成し、図10(A)に示すオリジナルデータをアップコンバートした場合のイメージを示す模式図である。ここで、アップコンバートすることにより、空白部分を補完することは可能となるが、実際にこのような情報を用いてメッシュ化を行うと、補間部分が面となり、補完処理の有無による違いが現れない場合がある。したがって、本実施形態によれば、アップコンバートを行うことにより生じた空間に、背面用のToFデータを挿入する。図10(C)は、図10(B)のアップコンバートを行うことにより生じた空間に、背面用のToFデータを挿入した場合のイメージを示す模式図である。このような方法を用いることにより、背面用データのみならず、側面用データについても、アップコンバートを行うことにより生じた空間に格納することが可能となる。したがって、本実施形態によれば、1枚の距離画像(Depthデータ)に、多方向からの距離情報(Depth値)を格納し、データ量を低減させることができる。また、このような方法を用いることにより、画像情報をダウンコンバートする必要がなくなり、画像情報の高解像度を保ったまま、三次元情報を生成することができる。
【0054】
図2に戻り、点群データ生成部21は、背面補完処理部16から第3配列情報SI3を取得する。ここで、第3配列情報SI3は、背面補完処理部16により背面についての情報が補完された被写体Sの距離情報である。したがって、点群データ生成部21は、背面についての情報が補完された被写体Sの点群データを生成する。すなわち、本実施形態によれば、点群データを生成する前の、距離情報(距離データ、又はDepth値)の状態で、配列化処理や間引き処理、及び補完処理を行う。一般に、点群データによる処理では負荷が高いため、本実施形態によれば、点群データを生成する前の、距離情報の段階でこれらの処理を行う。点群データ生成部21は、生成した点群データPCDを、メッシュ化処理部17に出力する。
【0055】
メッシュ化処理部17は、点群データ生成部21から点群データPCDを取得する。メッシュ化処理部17は、点群データPCDを、複数の三角形の面から構成されるメッシュデータに変換する。
【0056】
図11は、本実施形態に係る点群データとメッシュデータの一例について示す図である。同図を参照しながら、本実施形態に係る点群データとメッシュデータの一例について説明する。図11(A)は、点群データの一例である。点群データ生成部21により生成される点群データPCDは、一例として図11(A)に示すようなものである。図11(B)は、メッシュデータの一例である。点群データPCDにより生成される点群データPCDに基づき、メッシュ化処理部17がメッシュ化処理を行うことにより、図11(B)に示すようなメッシュデータに変換する。なお、点群データからメッシュデータへの変換方法は、既知のアルゴリズムが用いられてもよい。図2に戻り、メッシュ化処理部17は、変換したメッシュデータを、メッシュ情報MSIとしてマテリアル生成部18に出力する。
【0057】
マテリアル生成部18は、メッシュ化処理部17からメッシュ情報MSIを取得する。マテリアル生成部18は、被写体Sの前面における画像情報IMG1と、取得したメッシュ情報MSIとに基づき、被写体Sの三次元情報を生成する。ここで、メッシュ情報MSIには、既に三次元情報及び画像情報が含まれているが、本実施形態によれば、点群データを間引いているため、画像情報が不足し、生成された三次元モデルの画像の解像度が低いものとなってしまう。したがって、マテリアル生成部18は、撮像装置20により撮像された画像情報IMG1と、メッシュ情報MSIとに基づき、画像の解像度が高い三次元モデルを生成する。
【0058】
具体的には、まず、マテリアル生成部18は、点群データからオブジェクトファイル(.objファイル)を生成する。オブジェクトファイルの生成は、既知のアルゴリズムが用いられてもよい。次に、マテリアル生成部18は、オブジェクトファイルの頂点座標を、カラー画像に合うようにマッピングする。次に、マテリアル生成部18は、マッピング結果から、マテリアルを生成する。マテリアル生成部18は、生成したマテリアルを、マテリアル情報MTIとして出力部19に出力する。
【0059】
出力部19は、マテリアル生成部18からマテリアル情報MTIを取得する。出力部19は、取得したマテリアル情報MTIを、不図示の情報処理装置等に出力する。
【0060】
図12は、本実施形態に係る三次元情報処理装置が行う一連の動作の一例を示すフローチャートである。同図を参照しながら、三次元情報処理装置10により行われる三次元情報処理工程の一連の流れについて説明する。
【0061】
まず、画像取得部11は、撮像装置20から画像情報IMG1を取得し、距離情報取得部12は、撮像装置20から距離情報IMG2を取得する(ステップS11)。次に、境界検出部13は、取得した画像情報IMG1に基づき、物体検出処理を行う。境界検出部13は、物体検出処理を行うことにより、被写体Sと背景との境界部分を検出する(ステップS12)。次に、配列化処理部14は、物体検出されたエリアの距離情報を抽出することにより、配列化を行う(ステップS13)。次に、間引処理部15は、抽出された距離情報について、間引き処理を行う(ステップS14)。次に、背面補完処理部16は、被写体Sの背面における距離情報を補完し、被写体S全体の距離情報を生成する(ステップS15)。更に、背面補完処理部16は、背面の画像情報についても補完処理を行う(ステップS16)。次に、点群データ生成部21は、背面の距離情報及び画像情報が補完された情報に基づいて、点群データ生成処理を行う。また、メッシュ化処理部17は、生成された点群データに基づき、メッシュ化処理を行う(ステップS17)。最後に、マテリアル生成部18は、メッシュデータと、被写体Sの画像情報IMG1とに基づき、マテリアル生成処理を行う(ステップS18)。
【0062】
図13は、本実施形態に係る三次元情報処理装置10の内部構成の一例を示すブロック図である。三次元情報処理装置10の少なくとも一部の機能は、コンピュータを用いて実現され得る。図示するように、そのコンピュータは、中央処理装置901と、RAM902と、入出力ポート903と、入出力デバイス904や905等と、バス906と、を含んで構成される。コンピュータ自体は、既存技術を用いて実現可能である。中央処理装置901は、RAM902等から読み込んだプログラムに含まれる命令を実行する。中央処理装置901は、各命令にしたがって、RAM902にデータを書き込んだり、RAM902からデータを読み出したり、算術演算や論理演算を行ったりする。RAM902は、データやプログラムを記憶する。RAM902に含まれる各要素は、アドレスを持ち、アドレスを用いてアクセスされ得るものである。なお、RAMは、「ランダムアクセスメモリー」の略である。入出力ポート903は、中央処理装置901が外部の入出力デバイス等とデータのやり取りを行うためのポートである。入出力デバイス904や905は、入出力デバイスである。入出力デバイス904や905は、入出力ポート903を介して中央処理装置901との間でデータをやりとりする。バス906は、コンピュータ内部で使用される共通の通信路である。例えば、中央処理装置901は、バス906を介してRAM902のデータを読んだり書いたりする。また、例えば、中央処理装置901は、バス906を介して入出力ポートにアクセスする。
【0063】
[実施形態のまとめ]
以上説明した実施形態によれば、三次元情報処理装置10は、画像取得部11を備えることにより被写体Sを撮像した画像情報IMG1を取得し、距離情報取得部12を備えることにより被写体Sの三次元形状を示す距離情報IMG2を取得し、境界検出部13を備えることにより取得した画像情報IMG1に基づき被写体Sと背景との境界を検出し、背面補完処理部16を備えることにより取得した距離情報IMG2のうち、距離情報の所定方向における変化を示す関数を算出し、算出された関数と、検出された境界上の点とに基づき、被写体Sの背面における距離情報を補完する。すなわち、本実施形態によれば、三次元情報処理装置10は、撮像装置20から本来取得できないはずの、被写体Sの背面の三次元形状を生成することができる。
【0064】
また、上述した実施形態によれば、間引処理部15を更に備えることにより、取得された画像情報IMG1から特徴点を抽出し、抽出された特徴点以外の距離情報を間引くことにより距離情報のデータ量を軽減する間引き処理を行う。また、背面補完処理部16は、特徴点の三次元座標を通る関数を算出し、被写体Sの背面における距離情報を、間引処理部15により間引かれたスペースに補完する。ここで、ToFセンサにより取得された距離画像の解像度は、画像情報IMG1より解像度が低い場合がある。すなわち本実施形態によれば、画像情報IMG1の解像度に合わせてアップコンバートした場合であっても、距離画像の解像度を下げることなく、背面の距離情報を格納することができる。よって本実施形態によれば、データ量を低減することができる。
【0065】
また、上述した実施形態によれば、背面補完処理部16は、被写体Sの背面における距離情報が、予め定められた三次元座標の最大値及び最小値の範囲内となるように推定する。ここで、三次元情報処理装置10は、算出された関数に基づいて背面の距離情報を推定した場合、本来の形状とは離れた形状を誤って推定してしまう場合がある。しかしながら、本実施形態によれば、最大値及び最小値が定められているため、本来の形状とは離れた形状と推定されることを抑止することができる。なお、最大値及び最小値は、物体検出された被写体Sのクラス等に応じて定められていてもよい。
【0066】
また、上述した実施形態によれば、背面補完処理部16は、背面画像情報補完部164を更に備えることにより、被写体Sの前面における画像情報に基づき、被写体Sの背面における画像情報を補完する。したがって、本実施形態によれば、被写体Sの背面における三次元形状のみならず、被写体Sの背面における画像情報についても補完することができる。
【0067】
また、上述した実施形態によれば、メッシュ化処理部17を更に備えることにより、背面補完処理部16により背面についての情報が補完された被写体Sの点群データを、複数の三角形の面から構成されるメッシュデータに変換し、マテリアル生成部18を更に備えることにより、被写体Sの前面における画像情報IMG1と、メッシュデータとに基づき、被写体Sの三次元情報を生成する。このように生成された三次元情報は、撮像装置20により撮像された画像情報IMG1に基づいているため、画像の解像度が高い。したがって、本実施形態によれば、再現度の高い被写体Sの三次元モデルを生成することができる。
【0068】
なお、上述した実施形態では、被写体Sが人物の顔である場合について説明した。しかしながら本実施形態はこの一例に限定されず、被写体Sが人物の顔以外である場合にも適用可能である。被写体Sのその他の一例としては、犬や猫等の動物を例示することができる。また、被写体Sが動物以外であっても、本実施形態を適用することができる。被写体Sが動物以外の場合とは、例えば、自動車や、自転車、建造物等であってもよい。
【0069】
また、上述した実施形態では、撮像装置20が1回の撮像により取得した情報、すなわち1つの画像情報及び距離情報を用いて、1つの被写体Sについての三次元情報を生成する一例について説明した。しかしながら本実施形態はこの一例に限定されず、撮像装置20が1回の撮像により取得した情報から、複数の被写体Sについての三次元情報を生成してもよい。この場合、物体検出により複数の物体を検出し、検出された物体のクラスを検出し、検出されたクラスごとに異なる補完パラメータ(計算式)を用いることにより、様々な物体の三次元情報を生成することが可能となる。クラスごとのパラメータは、データベース化されて所定のサーバ装置等に記憶されていてもよい。
【0070】
なお、上述した実施形態における各装置が備える各部の機能全体あるいはその一部は、これらの機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
【0071】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶部のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0072】
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更を加えることが可能である。また、上述した各実施形態を適宜組み合わせてもよい。
【符号の説明】
【0073】
1…三次元情報生成システム、10…三次元情報処理装置、20…撮像装置、S…被写体、SCR…スクリーン、IMG…画像情報、PCD…点群データ、11…画像取得部、12…距離情報取得部、13…境界検出部、14…配列化処理部、15…間引処理部、16…背面補完処理部、17…メッシュ化処理部、18…マテリアル生成部、19…出力部、151…特徴点検出部、152…距離情報抽出部、161…頭頂補完部、162…側頭補完部、163…背面補完情報生成部、164…背面画像情報補完部、1611…頭頂関数算出部、1612…頭頂推定部、1621…側頭関数算出部、1622…側頭推定部、BDI…境界検出情報、SI1…第1配列情報、SI2…第2配列情報、SI3…第3配列情報、MSI…メッシュ情報、MTI…マテリアル情報、FPI…特徴点情報、FNC1…第1関数、FNC2…第2関数、EI1…第1推定情報、EI2…第2推定情報、BCI…背面補完情報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13