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

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

▶ キヤノン株式会社の特許一覧

特許7487266画像処理装置、画像処理方法及びプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-10
(45)【発行日】2024-05-20
(54)【発明の名称】画像処理装置、画像処理方法及びプログラム
(51)【国際特許分類】
   G06T 7/593 20170101AFI20240513BHJP
【FI】
G06T7/593
【請求項の数】 18
(21)【出願番号】P 2022129249
(22)【出願日】2022-08-15
(65)【公開番号】P2024025896
(43)【公開日】2024-02-28
【審査請求日】2023-05-18
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】佐藤 智一
(72)【発明者】
【氏名】中田 有一
【審査官】真木 健彦
(56)【参考文献】
【文献】特開2005-208868(JP,A)
【文献】特開2021-071749(JP,A)
【文献】特開2020-101922(JP,A)
【文献】特開2020-004219(JP,A)
【文献】特開2018-129825(JP,A)
【文献】特開2019-128641(JP,A)
【文献】特開2016-209399(JP,A)
【文献】特開2010-152535(JP,A)
【文献】特開2010-128742(JP,A)
【文献】特開2008-015863(JP,A)
【文献】特開平10-124704(JP,A)
【文献】米国特許出願公開第2020/0320727(US,A1)
【文献】米国特許第04982438(US,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/593
G06T 7/00
G06T 17/00
G01B 11/00
(57)【特許請求の範囲】
【請求項1】
視点の異なる複数の撮像画像に映る複数のオブジェクトのそれぞれについて、三次元形状データを取得する取得手段と、
前記複数の撮像画像に基づき、前記複数のオブジェクトについての表面三次元情報を導出する導出手段と、
導出された前記複数のオブジェクトについての表面三次元情報の中から前記複数のオブジェクトそれぞれに対応する表面三次元情報を、オブジェクト毎に取得された前記三次元形状データが表す前記オブジェクトの形状表面からの距離に基づいて決定する決定手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記決定手段は、導出された前記複数のオブジェクトについての表面三次元情報のうち、前記形状表面からの距離が閾値よりも小さい表面三次元情報を残し、前記形状表面からの距離が閾値以上の表面三次元情報を残さないように選別することにより、前記複数のオブジェクトそれぞれに対応する表面三次元情報を決定する、ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記三次元形状データは、オブジェクトの概略形状を単位要素の集合で表すデータであり、
前記決定手段は、導出された前記複数のオブジェクトについての表面三次元情報が表す位置が前記単位要素の集合の内部にある場合と外部にある場合とで異なる閾値を用いる、ことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
導出された前記複数のオブジェクトについての表面三次元情報が表す位置が前記単位要素の集合の外部にある場合の閾値は、内部にある場合の閾値よりも小さい、ことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記三次元形状データは、オブジェクトの概略形状を単位要素の集合で表すデータであり、
前記決定手段は、前記形状表面からの距離が閾値よりも小さい表面三次元情報が表す位置が前記単位要素の集合の外部にある場合は、当該表面三次元情報を残さないように選別する、ことを特徴とする請求項2に記載の画像処理装置。
【請求項6】
前記導出手段は、
前記複数の撮像画像それぞれから前記複数のオブジェクトについての特徴点を抽出し、
抽出された前記複数のオブジェクトについての特徴点を前記複数の撮像画像のうち2つの撮像画像間で対応付けて特徴点ペアを決定する処理を、当該2つの撮像画像の組合せを変えて行い、
前記対応付ける処理によって得られた前記特徴点ペア毎に、前記複数の撮像画像の撮像空間内の対応する位置を導出し、
前記特徴点ペア毎に導出された前記撮像空間内の対応する位置の情報を、前記複数のオブジェクトについての表面三次元情報として出力する、
ことを特徴とする請求項1に記載の画像処理装置。
【請求項7】
前記導出手段は、
前記複数のオブジェクトそれぞれについて抽出された複数の特徴点に基づき、前記特徴点ペアの候補を、前記複数の撮像画像のうち2つの撮像画像間で対応付けて決定する処理を、当該2つの撮像画像の組合せを変えて行い、
決定された前記特徴点ペアの候補毎に、前記複数の撮像画像の撮像空間内の対応する位置を導出し、
前記特徴点ペアの候補毎に導出された前記撮像空間内の対応する位置の情報を、前記複数のオブジェクトについての表面三次元情報として出力し、
前記決定手段は、
前記特徴点ペアの候補毎に導出された前記複数のオブジェクトについての表面三次元情報に対し、前記決定を行う、
ことを特徴とする請求項6に記載の画像処理装置。
【請求項8】
前記導出手段は、
前記複数のオブジェクト1個当たり2つ以上の特徴点から成る特徴点群を抽出し、
前記複数のオブジェクトの1個分に対応する特徴点群同士の組合せを前記特徴点ペアの候補として決定する、
ことを特徴とする請求項7に記載の画像処理装置。
【請求項9】
前記決定手段によって決定された前記特徴点ペアの候補に対応する表面三次元情報のうち、条件を満たす2つ以上の表面三次元情報を1つに統合する統合手段をさらに有する、ことを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記統合手段は、前記条件を満たす2つ以上の表面三次元情報に含まれる前記特徴点群を構成する特徴点それぞれについての、前記撮像空間内の対応する位置の三次元座標について、平均値、中央値、最大値、最小値、最頻値、前記形状表面に最も近い値、前記形状表面から最も遠い値、のいずれか一つを採用することで前記統合を行う、ことを特徴とする請求項9に記載の画像処理装置。
【請求項11】
前記条件は、前記表面三次元情報に基づき特定される位置及び姿勢が互いに類似することである、ことを特徴とする請求項9又は10に記載の画像処理装置。
【請求項12】
前記複数のオブジェクトは人であり、前記2つ以上の特徴点から成る特徴点群は人の顔を特徴付けるフェイスランドマークである、ことを特徴とする請求項8に記載の画像処理装置。
【請求項13】
前記形状表面からの距離に関する前記閾値を、ユーザインタフェース画面を介したユーザ操作に基づき設定する設定手段をさらに有する、ことを特徴とする請求項2に記載の画像処理装置。
【請求項14】
前記位置及び姿勢が類似するかどうかを判定するための閾値を、ユーザインタフェース画面を介したユーザ操作に基づき設定する設定手段をさらに有する、ことを特徴とする請求項11に記載の画像処理装置。
【請求項15】
前記ユーザインタフェース画面においては、前記位置及び姿勢が類似するかどうかを判定するための閾値の入力を受け付けて設定する、ことを特徴とする請求項14に記載の画像処理装置。
【請求項16】
前記ユーザインタフェース画面においては、前記複数の撮像画像に移っている前記オブジェクトの数の入力を受け付け、当該受け付けた数に応じた前記位置及び姿勢が類似するかどうかを判定するための閾値を設定する、ことを特徴とする請求項14に記載の画像処理装置。
【請求項17】
視点の異なる複数の撮像画像に映る複数のオブジェクトのそれぞれについて、三次元形状データを取得する取得ステップと、
前記複数の撮像画像に基づき、前記複数のオブジェクトについての表面三次元情報を導出する導出ステップと、
導出された前記複数のオブジェクトについての表面三次元情報の中から前記複数のオブジェクトそれぞれに対応する表面三次元情報を、オブジェクト毎に取得された前記三次元形状データが表す前記オブジェクトの形状表面からの距離に基づいて決定する決定ステップと、
を含むことを特徴とする画像処理方法。
【請求項18】
コンピュータに、請求項17に記載の画像処理方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、オブジェクトの三次元形状データを生成する画像処理技術に関する。
【背景技術】
【0002】
被写体(オブジェクト)を異なる視点から撮像して得られた複数の撮像画像に基づきオブジェクトの三次元形状データ(一般に「3Dモデル」とも呼ばれる。)を生成する手法として、視体積交差法が知られている。視体積交差法は、安定して高速にオブジェクトの三次元形状データが得られる一方で、誤差を生じやすいという難点がある。具体的には、オブジェクトの表面が曲面や凹面の形状である場合に、その形状を平面で近似してしまうため、誤差が大きくなってしまうという原理的な課題がある。この課題に対しては、特許文献1が、以下に示す1)~4)の手順によって、オブジェクトの正確な三次元形状を復元する技術を開示する。
1)撮像画像から生成した被写体のシルエット画像に基づき視体積交差法により被写体と外接する3Dモデル(概形形状モデル)を生成する。
2)概形形状モデルに基づき撮像カメラから概形形状モデル表面までの概形距離情報および被写体の局所的な形状情報を生成する。
3)概形距離情報を初期値として局所的な形状情報を保存する関数を用いて探索を行い撮像カメラから被写体までの距離情報を生成する。
4)上記3)で生成した距離情報とシルエット画像に基づき被写体の三次元形状を復元する。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2008-015863号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1の技術によっても、例えば凹んだ部分については概形形状モデルに基づき得られた局所形状とオブジェクト本来の局所形状との差が埋まらずに距離情報に誤りが生じ、十分な精度の三次元形状データが得られないことがあった。
【0005】
本開示は、オブジェクトの概略形状を表す三次元形状データから、高精度の三次元形状データを得ることを目的とする。
【課題を解決するための手段】
【0006】
本開示に係る画像処理装置は、視点の異なる複数の撮像画像に映る複数のオブジェクトのそれぞれについて、三次元形状データを取得する取得手段と、前記複数の撮像画像に基づき、前記複数のオブジェクトについての表面三次元情報を導出する導出手段と、導出された前記複数のオブジェクトについての表面三次元情報の中から前記複数のオブジェクトそれぞれに対応する表面三次元情報を、オブジェクト毎に取得された前記三次元形状データが表す前記オブジェクトの形状表面からの距離に基づいて決定する決定手段と、を有することを特徴とする。
【発明の効果】
【0007】
本開示によれば、オブジェクトの概略形状を表す三次元形状データから、高精度の三次元形状データを得ることができる。
【図面の簡単な説明】
【0008】
図1】画像処理システムの構成例を示す図。
図2】画画像処理装置のハードウェア構成例を示す図。
図3】実施形態1に係る、画像処理装置の機能構成(ソフトウェア構成)例を示す図。
図4】実施形態1に係る、画像処理装置が実行する処理の流れを示すフローチャート。
図5】撮像画像の一例を示す図。
図6】視体積交差法による概略形状の取得を説明する図。
図7】距離画像の生成例を示す図。
図8】(a)は瓢箪型オブジェクトの距離画像の一例を示す図、同(b)及び(c)は当該距離画像の補正前後におけるデプス値の変化を示す図。
図9】実施形態1に係る、表面三次元情報を取得する処理の詳細を示すフローチャート。
図10】特徴点ペアから空間対応点を導出する様子を説明する図。
図11】実施形態1に係る、表面三次元情報を選別する処理の詳細を示すフローチャート。
図12】空間対応点の選別を説明する図。
図13】実施形態1に係る、閾値設定処理の詳細を示すフローチャート。
図14】(a)及び(b)は、閾値パターンの一例を示す図。(c)は分割数及び閾値パターンを指定するためのユーザインタフェース画面の一例を示す図。
図15】概略形状を補正する処理の詳細を示すフローチャート。
図16】ボクセル集合に対する投票結果の一例を示す図。
図17】実施形態1の変形例1に係る、閾値設定処理の詳細を示すフローチャート。
図18】(a)~(d)は、グループ毎の仮閾値の一例を示す図。
図19】撮像空間内に設定された閾値の分布を示す図。
図20】実施形態1の変形例2に係る、形状補正処理の詳細を示すフローチャート。
図21】概略形状データを分割する様子を示す図。
図22】実施形態2の前提となる課題を説明する図。
図23】実施形態2に係る、画像処理装置の機能構成(ソフトウェア構成)例を示す図。
図24】実施形態2に係る、画像処理装置が実行する処理の流れを示すフローチャート。
図25】実施形態2に係る、表面三次元情報を取得する処理の詳細を示すフローチャート。
図26】フェイスランドマークの一例を示す図。
図27】撮像画像中の顔の検出例を示す図。
図28】人の顔が存在しない位置にフェイスランドマークの空間対応点が発生する具体例を示す図。
図29】実施形態2に係る、表面三次元情報を選別する処理の詳細を示すフローチャート。
図30】(a)~(c)は、制御パラメータを設定するためのUI画面の一例を示す図。
図31】(a)及び(b)は、フェイスランドマークの選別の具体例を示す図。
図32】実施形態2に係る、表面三次元情報を統合する処理の詳細を示すフローチャート。
図33】(a)及び(b)は、制御パラメータを設定するためのUI画面の一例を示す図。
【発明を実施するための形態】
【0009】
以下、本実施形態について、図面を参照して説明する。尚、以下の実施形態は本発明を必ずしも限定するものではない。また、本実施形態において説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【0010】
[実施形態1]
本実施形態においては、オブジェクト(被写体)のの概略形状を表す三次元形状データの生成に用いた各撮像画像からオブジェクトの表面三次元情報を取得し、当該表面三次元情報に基づいて、各カメラからオブジェクトまでの距離を表す距離画像を補正する。そして、補正された距離画像に基づき、概略形状を表す三次元形状データを補正して、高精度の三次元形状データを得る。
【0011】
<システム構成>
図1は、本実施形態に係る、画像処理システムの構成例を示す図である。本実施形態における画像処理システムは、12台のカメラ101a~101l、画像処理装置102、ユーザインタフェース(UI)103、記憶装置104、表示装置105を有する。なお、12台のカメラ101a~101lをまとめて単に「カメラ101」と表記する場合がある。撮像装置である各カメラ101a~101lは、撮像条件に従い、撮像空間106に存在するオブジェクト107をそれぞれ異なる視点から同期撮像して撮像画像を取得する。こうして得られた視点の異なる複数の撮像画像をまとめて「複数視点画像」と呼ぶ場合がある。本実施形態において、複数視点画像は、複数フレームで構成される動画を想定しているが静止画であってもよい。画像処理装置102は、カメラ101の制御及び、カメラ101から取得した複数の撮像画像に基づきオブジェクト107の概略形状を表す三次元形状データ(以下、「概略形状データ」と呼ぶ。)を生成する。UI103は、撮像条件や各種の設定をユーザが行うためのユーザインタフェースであり、タッチパネル機能を有するディスプレイ等で構成される。UI103は、ハードボタン等を別途備えていてもよいし、さらに入力装置としてマウスやキーボードを有していてもよい。記憶装置104は、画像処理装置102で生成された概略形状データを受信して保存する大容量記憶装置である。表示装置105は、例えば液晶ディスプレイであり、画像処理装置102で生成された概略形状データ或いは補正された高精度の三次元形状データを受信して表示する。撮像空間106は、図1では便宜上、二次元的に示しているが、12台のカメラ101a~101lによって囲まれた直方体の空間であり、図1において実線で示す矩形領域は、床面における前後方向および左右方向の輪郭を表している。
【0012】
<画像処理装置のハードウェア構成>
図2は、画像処理装置102のハードウェア構成例を示す図である。画像処理装置102は、CPU201、RAM202、ROM203、HDD204、制御インタフェース(I/F)205、入力インタフェース(I/F)206、出力インタフェース(I/F)207、メインバス208を有する。CPU201は、画像処理装置102の各部を統括的に制御するプロセッサである。RAM202は、CPU201の主メモリ、ワークエリア等として機能する。ROM203は、CPU201によって実行されるプログラム群を格納している。HDD204は、CPU201によって実行されるアプリケーション、画像処理に用いられるデータ等を記憶する。制御(I/F)205は、各カメラ101a~101lと接続されており、撮像条件の設定、撮像開始や撮像停止等の制御を行うためのインタフェースである。入力I/F206は、SDIやHDMI(登録商標)等のシリアルバスインタフェースである。この入力I/F206を介して、各カメラ101a~101lが同期撮像を行って得られた複数視点画像を取得する。出力I/F207は、USBやIEEE1394等のシリアルバスインタフェースである。生成された三次元形状データはこの出力I/F207を介して、記憶装置104や表示装置105へ出力される。メインバス208は、画像処理装置102内の各モジュールを接続する伝送路である。
【0013】
本実施形態では、同一仕様のカメラ101を12台用いて、1つのオブジェクトを前後左右の4方向からそれぞれ3台ずつ(101a~101c、101d~101f、101g~101i、101j~101l)で撮像する。なお、同一方向から撮像を行う3台のカメラ101は互いの光軸が平行になるように光軸に垂直な直線上に配置されているものとする。また、各カメラ101のカメラパラメータ(内部パラメータ、外部パラメータ、歪曲パラメータなど)はHDD204に保存されているものとする。ここで、内部パラメータは画像中心の座標やレンズ焦点距離を表し、外部パラメータはカメラの位置と姿勢を表す。なお、本実施形態は、同一仕様のカメラを12台用いているが、カメラ構成はこれに限らない。例えば、カメラ台数を増減させても構わないし、撮像する方向に応じて撮像空間までの距離やレンズ焦点距離などを変えてもよい。
【0014】
<画像処理装置の機能構成>
図3は画像処理装置102の機能構成(ソフトウェア構成)例を示す図であり、図4は各機能部による処理の流れを示すフローチャートである。図4のフローチャートに示す一連の処理は、CPU201がROM203又はHDD204に格納されたプログラムを読み出してRAM202に展開し、これを実行することで実現される。以下、図4のフローチャートに沿って、画像処理装置102において高精度の三次元形状データが出来上がるまでの流れを説明する。なお、以下の説明において記号「S」はステップを意味する。
【0015】
S401において、撮像画像取得部301は、12台のカメラ101a~101lから入力I/F206を介して、同期撮像によって得られた視点の異なる複数の撮像画像(複数視点画像)を取得する。あるいは、HDD204に記憶された複数視点画像を取得してもよい。取得した複数視点画像のデータはRAM202にて保持される。図5は、12台のカメラ101のうち同一方向を向いた3台のカメラ101a~101cによって得られた撮像画像を示している。いま、3台のカメラ101a~101cはオブジェクト107を正面から撮像している。撮像画像501はカメラ101aに対応し、撮像画像502はカメラ101bに対応し、撮像画像503はカメラ101cに対応している。なお、複数フレームで構成される動画像が入力される場合、同一時刻における各フレームがこれら複数視点画像に該当する。すなわち、動画の複数視点画像が入力される場合はS401以降の各処理がフレーム単位で実行されることになる。
【0016】
S402において、概略形状生成部302は、S401にて取得した複数視点画像に映るオブジェクト107の概略形状を表す三次元形状データ(概略形状データ)を生成する。この三次元形状データの形式には様々あるが、本実施形態では「ボクセル」と呼ばれる微小立方体の集合で三次元形状を表現するボクセル形式の概略形状データを視体積交差法により生成する場合を例に説明を行うものとする。概略形状生成部302は、まず、同期撮像された複数の撮像画像それぞれについて、背景画像との差分に基づき、撮像画像内に映っているオブジェクト107のシルエットを表す画像(「シルエット画像」や「前景画像」と呼ばれる。)を取得する。シルエット画像を取得するための背景画像は、例えばオブジェクト107が撮像空間106にいない状態で撮像を予め行って得たものをHDD204などに保存しておけばよい。そして、各カメラ101のカメラパラメータに基づき撮像空間106に対応するボクセル集合に含まれる各ボクセルをそれぞれのシルエット画像に投影する。そして、全てのシルエット画像において、オブジェクト107のシルエット内に投影されたボクセルだけを残す。こうして残ったボクセルから成るボクセル集合をオブジェクト107の概略形状データとする。図6は、視体積交差法によってオブジェクトの概略形状データとしてのボクセル集合を得る様子を説明する図である。図6に示すような瓢箪型のオブジェクトの場合、視体積交差法によって得られるその概略形状データは、オブジェクト全体を包含する楕円体のような形状となる。すなわち、実際のオブジェクトに凹んだ部分があっても、当該凹んだ部分はボクセル集合には表れないことになる。なお、概略形状データを得る手法は視体積交差法に限らない。例えば、予めオブジェクト毎に用意された基本モデルに対し複数視点画像に応じた位置合わせや変形処理を施すことにより、概略形状データとしてもよい。この場合、デプスセンサなどを用いて人物の三次元姿勢を推定し、そこから得られた関節情報を用いて当該人物の基本モデルを得ておく。あるいは、例えば低解像度の距離カメラを別途使用して取得した距離画像に基づきオブジェクトに対応する領域の三次元座標を取得し、当該領域に外接する立体(直方体など)を概略形状データとしてもよい。
【0017】
S403において、表面三次元情報取得部303は、オブジェクトの輪郭に相当する表面の三次元情報(以下、「表面三次元情報」と呼ぶ。)を取得する。具体的には、まず複数視点画像を構成する撮像画像それぞれから、映っているオブジェクトを特徴付ける点(特徴点)を抽出する。そして、異なる撮像画像から抽出された対応関係にある2つの特徴点(特徴点ペア)を撮像空間106に投影して得られる位置の三次元座標を取得する。以下、特徴点ペアに対応する撮像空間内の三次元位置を表す点を「空間対応点」と呼ぶこととする。この表面三次元情報取得処理の詳細は後述する。
【0018】
S404において、表面三次元情報選別部304は、S402にて生成された概略形状データに基づき、S403にて取得された表面三次元情報の中から信頼度の高い表面三次元情報だけを選別する。本実施形態では、表面三次元情報として、多数の特徴点ペアの空間対応点が取得されるので、その中からより信頼度の高い空間対応点が選別されることになる。この表面三次元情報選別処理の詳細は後述する。
【0019】
S405において、距離画像生成部305は、S401にて取得された複数視点画像に基づき、各カメラ101からオブジェクトまでの距離を表す距離画像を生成する。この距離画像は一般に「デプスマップ」とも呼ばれる。本実施形態では、隣り合う2つのカメラに対応する2つの撮像画像を用いたステレオマッチングによって距離画像を生成する。図7は、前述の図5に示す3つのカメラ101a~101cそれぞれに対応する撮像画像501~503に基づき距離画像を生成する様子を示している。ステレオマッチングには、ブロックマッチング法やセミグローバルマッチング法などがある。ブロックマッチング法では、隣接する2台のカメラの一方のカメラに対応する撮像画像を基準画像、他方のカメラに対応する撮像画像を対象画像とし、基準画像の着目画素に対応する画素を対象画像から探索して、着目画素における視差を求める。そして、カメラパラメータに基づき、着目画素における視差をデプスに変換し、距離画像における画素値とする。以上の処理を基準画像の各画素で行うことにより、基準画像に対応する距離画像を得る。こうした処理により、撮像画像501と撮像画像502とから撮像画像501に対応する距離画像701が得られ、撮像画像502と撮像画像503とから撮像画像502に対応する距離画像702が得られる。さらに、距離画像生成部305は、上述のようにして得た距離画像を、S404にて選別された表面三次元情報に基づいて修正する。具体的には、各特徴点に対応する距離画像上の画素のデプス値を、その空間対応点に基づき算出したデプス値に近づける処理を行う。図8(a)は、図6に示した瓢箪型オブジェクトが撮像空間に存在した場合の距離画像を示しており、同(b)及び(c)は当該距離画像の修正前後におけるデプス値の変化を示している。図8(b)に示すように、オブジェクトの凹んだ部分の中心にある特徴点Aの空間対応点に基づき算出したデプス値は、修正前デプスマップのラインプロファイルから大きく離れている。これが、図8(c)に示すような、修正後デプスマップのラインプロファイルのように修正される。この例では、特徴点Aに対応する距離画像上の画素のデプス値を、その空間対応点に基づき算出したデプス値に置き換えた上で、さらにその周辺画素のデプス値を、変化が滑らかになるように変更している。このような修正により、ある特徴点に対応する距離画像上の画素周辺のデプス値が誤っていた場合でも、選別された表面三次元情報に基づいてより適切なデプス値に変更することができ、より高精度な距離画像が得られることになる。なお、距離画像の生成方法は上述のステレオマッチング法に限定されない。例えば、ToF(Time of Flight)やパターンプロジェクションにより距離情報を取得可能なカメラを用いてもよい。
【0020】
S406において、閾値設定部306は、撮像空間を所定のサイズで分割した小空間(以下、「局所空間」と呼ぶ。)毎に、次の形状補正処理にて用いる閾値(概略形状データを構成する単位要素のうち削除対象の単位要素を決定するための閾値)を設定する。ここで設定される閾値が大きいほど概略形状データを構成する単位要素が残りやすくなり、距離画像の誤りへの耐性が強くなる。この閾値設定処理の詳細は後述する。
【0021】
S407において、形状補正部307は、S405にて生成された距離画像とS406にて設定された閾値に基づき、S402にて生成された概略形状データを補正する。具体的には、概略形状データを構成する単位要素のうちオブジェクトの形状を表していないと推測される余計な単位要素を削除する処理を行う。この形状補正処理の詳細は後述する。
【0022】
S408において、出力部308は、S407にて補正された概略形状データ、すなわち、オブジェクトの三次元形状をより正確に表現した三次元形状データを、出力I/F207を介して記憶装置104や表示装置105へ出力する。
【0023】
S409では、オブジェクトの三次元形状データの生成処理を続けるか終了するかが、例えばUI103を介して入力されたユーザ指示などに基づいて判定される。生成処理を続ける場合はS401に戻って、新たな複数視点画像に対して一連の処理を続行する。
【0024】
以上が、図1の画像処理システムにおいて、高精度の三次元形状データが出来上がるまでの流れである。なお、上述の例では撮像画像に映るオブジェクトが1つの場合を例に説明を行ったが、複数のオブジェクトが映っている場合にも適用可能である。この場合、まずS402において、視体積交差法により得たボクセル集合を連結成分毎に分離し、分離されたボクセル集合をオブジェクト毎の概略形状データとして取得する。そして、S407において、取得された個々の概略形状データそれぞれに対して形状補正処理を適用すればよい。
【0025】
<表面三次元情報取得処理>
図9は、表面三次元情報導出部303が実施する、本実施形態に係る表面三次元情報取得処理(S403)の詳細を示すフローチャートである。この処理では、各撮像画像から抽出した特徴点を異なる撮像画像間で対応付けることで当該特徴点の空間対応点が表面三次元情報として取得される。以下、図9のフローに沿って詳しく説明する。
【0026】
S901では、複数視点画像を構成する各撮像画像から特徴点が抽出される。特徴点の抽出には、例えば、SIFT(Scale-Invariant Feature Transform)やSURF(Speeded-Up Robust Features)などの公知の手法を適用すればよい。SIFTの場合、DoG(Difference of Gaussian)フィルタなどを用いて特徴点を検出した後、勾配方向や勾配強度から算出したオリエンテーションに基づき特徴量を記述する処理が行われる。
【0027】
S902では、S901にて各撮像画像から抽出された特徴点について、視点の異なる2つの撮像画像間で対応付ける処理が行われる。本実施形態では、異なる2台のカメラに対応する撮像画像の組合せ毎に、一方の撮像画像から抽出された各特徴点に対して、他方の撮像画像から抽出された特徴点のうち特徴量間の距離が最小となる特徴点を対応付ける処理を行う。こうして対応関係にある特徴点同士の組合せ(以下、「特徴点ペア」と呼ぶ。)が決定される。ここで、特徴点の対応付けを行う撮像画像の組み合わせを、カメラパラメータに基づき予め決めておいてもよい。例えば、カメラ間の距離が所定の範囲内かつ光軸(カメラの姿勢)の差が所定の範囲内となるカメラのペアを予め求めておき、それらカメラのペアで得られた撮影画像間で特徴点を対応付けてもよい。
【0028】
S903では、S902で得られた特徴点ペア毎に、上述の空間対応点が導出される。具体的には、対象の特徴点ペアに係る特徴点が抽出された2枚の撮像画像を撮像した両カメラのカメラパラメータに基づき、当該特徴点に対応する2つの光線を求め、その交点を空間対応点として決定する。なお、2つの光線が交差しない場合は、2つの光線間の距離が最短となる線分の中点を、その空間対応点として決定すればよい。また、2つの光線間の距離が所定の値より大きい場合には、その特徴点ペアに係る特徴点については対応付けが誤っていたものと判断して、空間対応点の導出対象から除外してもよい。図10は、特徴点ペアから空間対応点を導出する様子を説明する図である。いま、図10には、3つの空間対応点p1~p2が示されている。空間対応点p1は、カメラ101bの撮像画像における特徴点f0とカメラ101cの撮像画像における特徴点f1との特徴点ペアから導出された空間対応点である。空間対応点p2は、カメラ101bの撮像画像における特徴点f0とカメラ101aの撮像画像における特徴点f2との特徴点ペアから導出された空間対応点である。空間対応点p3は、カメラ101bの撮像画像における特徴点f0とカメラ101dの撮像画像における特徴点f3との特徴点ペアから導出された空間対応点である。このように本ステップでは、S902にて得られた特徴点ペアそれぞれについての空間対応点が導出され、特徴点ペア毎の空間対応点の情報が表面三次元情報として取得されることになる。
【0029】
以上が、本実施形態に係る、表面三次元情報導出処理の内容である。
【0030】
<表面三次元情報選別処理>
図11は、表面三次元情報選別部304が実施する、表面三次元情報導出部303によって取得された表面三次元情報の中からより信頼度の高いものを選別する処理(S404)の詳細を示すフローチャートである。本実施形態の表面三次元情報選別処理では、特徴点ペア毎に導出された空間対応点のうち、概略形状データが示す三次元形状の表面までの距離が小さな空間対応点だけを残し、それ以外を除去する処理を行う。以下、図11のフローに沿って表面三次元情報選別処理を詳しく説明する。
【0031】
S1101では、S402で生成された概略形状データに基づき、その三次元形状の表面(輪郭)が抽出される。以下、概略形状データから抽出される形状表面のことを「概略形状表面」と呼ぶ。概略形状データがボクセル形式の場合、オブジェクトの三次元形状を表しているボクセル集合に含まれるボクセルのうち背景と隣接するボクセルを特定し、当該特定されたボクセルの集合を概略形状表面として抽出する。なお、概略形状データが点群形式の場合は、ボクセル形式に準じ、背景と隣接する点群の集合を概略形状表面として抽出すればよい。また、メッシュ形式の場合は、メッシュを構成する各ポリゴン面を概略形状表面として抽出すればよい。
【0032】
S1102では、図9のフローで特徴点ペア毎に取得した各空間対応点について、S1101にて抽出した概略形状表面までの距離が算出される。概略形状表面が背景と隣接するボクセルの集合で表現される本実施形態の場合、空間対応点の三次元位置から当該ボクセルの集合に含まれる全てのボクセルまでの距離を求め、その中の最小距離を、空間対応点から概略形状表面までの距離とする。ここで、「ボクセルまでの距離」は、ボクセル中心の三次元座標までの距離であり、例えばmmなどの単位で表現される。このような処理を、三次元座標が導出されたすべての空間対応点について行う。
【0033】
S1103では、S1102で各空間対応点について算出された距離に基づき、信頼度の高い空間対応点だけが残され、それ以外の空間対応点が除去される。具体的には、概略形状表面までの距離が所定の距離以下であった空間対応点だけを残し、概略形状表面までの距離が所定の距離よりも大きかった空間対応点を削除する処理を行う。ここで、所定の距離は、ボクセル解像度単位で例えば「n×ボクセル解像度(nは定数)」のように定義され、概略形状表面に対してどの程度(厚み)まで補正をしたいかに基づいて予め設定しておく。図12は、前述の図10に示した3つの空間対応点p1~p3を対象に本実施形態の選別を行う様子を説明する図である。いま、p1、p2、p3それぞれについて算出された距離をd1、d2、d3とし、p1が概略形状表面上にあると仮定した場合、0=d1<d3<d2となる。ここで、所定の距離がd3よりも小さかった場合、3つの空間対応点p1~p3のうち、概略形状表面までの距離がゼロの空間対応点p1だけが残り、空間対応点p2とp3は削除されることになる。
【0034】
以上が、本実施形態に係る、表面三次元情報選別処理の内容である。この処理によって、対応付けを誤った特徴点ペアから導出された空間対応点、すなわち、信頼度の低い空間対応点については除去し、信頼度の高い空間対応点だけを残すことができる。
【0035】
<閾値設定処理>
図13は、閾値設定部306が実施する、閾値設定処理(S406)の詳細を示すフローチャートである。本実施形態の閾値設定処理では、予め定めた分割条件に従って撮像空間を分割して得た各局所空間に対して、予め用意した閾値パターンに基づき閾値を設定する。以下、図13のフローに沿って閾値設定処理を詳しく説明する。
【0036】
S1301では、予め定めた分割条件に従って撮像空間が複数の局所空間に分割される。本実施形態では、撮像空間を前後方向及び左右方向に予め定めた分割数に従って等間隔で区切り、1つ1つが直方体の小さな空間単位に分割する。以下、分割によって得られる個々の小空間を「局所空間」と呼ぶこととする。なお、上述の分割方法は一例でありこれに限定されない。例えば等間隔ではなく、撮像領域の中央に近いほど間隔が小さくなるように分割しても構わない。また、局所空間の形状が例えば四面体など他の形状になるように分割しても構わない。
【0037】
S1302では、S1301にて分割された局所空間それぞれに対して、予め定めた閾値パターンに基づき閾値が設定される。本実施形態では、例えば、図14(a)及び(b)に示すような、撮像空間の中央に近い局所空間ほど大きい値の閾値が設定されるように設計した閾値パターンを用いて、個々の局所空間に対して閾値を設定する。なお、閾値パターンの内容は任意であり、例えば、凹んだ部分のないオブジェクトが存在する局所空間と、凹んだ部分のあるオブジェクトが存在する局所空間とで異なる閾値となるような閾値パターンを作成してもよい。また、過去に作成した閾値パターンを保存しておき、ユーザがその中から選択して指定できるようにしてもよい。
【0038】
以上が、閾値設定処理の内容である。なお、予め定めた分割数や閾値パターンを用いるのに代えて、例えば図14(c)に示すユーザインタフェース画面(UI画面)を介してユーザが都度、分割数及び閾値パターン指定してもよい。或いは、各局所空間に対して任意の閾値を指定できるようにしてもよい。なお、図14(c)のUI画面は、撮像空間を真上から見た場合の二次元の分割数と閾値パターンを示しており、高さ方向(Z軸方向)は共通である。
【0039】
<形状補正処理>
図15は、形状補正部307が実施する、S402で生成された概略形状データを補正する処理(S407)の詳細を示すフローチャートである。本実施形態では、概略形状データを距離画像に基づいて評価し、当該評価の結果に基づいて、概略形状データを構成する単位要素のうちオブジェクトの形状を表していないと推測される単位要素を削除する処理を行う。以下、図15のフローに沿って詳しく説明する。
【0040】
S1501では、概略形状データに対し、削除対象のボクセルかどうかを判定するための閾値が設定される。具体的には、まず概略形状を表すボクセル集合の重心座標を算出する。そして、算出した重心座標を含んでいる局所空間を特定し、当該特定された局所空間に対して前述の閾値設定処理で設定された閾値を、概略形状データに適用する閾値として設定する。これにより、例えば前述の図14(a)及び(b)に示す閾値パターンに従って各局所空間に閾値が設定された場合には、撮像空間の中央に存在するオブジェクトの概略形状データに対しては閾値“2”が設定されることになる。また、同様に、撮像空間の端に存在するオブジェクトの概略形状データに対しては閾値“1”が設定されることになる。
【0041】
S1502では、S405にて生成された距離画像に基づき、概略形状を表すボクセル集合を構成する各ボクセルに対する評価が行われる。この評価は、不要と思われるボクセルへの投票によって行う。距離画像はカメラ101の数だけ生成されるので、生成されたすべての距離画像について順に処理される。具体的には、ボクセル集合の中から着目するボクセルを順次決定し、着目ボクセルに対応する距離画像上の画素位置におけるデプス値と、処理対象の距離画像に対応するカメラから着目ボクセルまでのデプス値とを比較し、後者のデプス値の方が小さい場合に着目ボクセルに対し1票が投じられる。これは、評価値として“1”を加算することと同義である。これにより、概略形状を表すボクセル集合を構成する各ボクセルにおいて、本来のオブジェクト形状を表現していない可能性が高いボクセルほど得票数(評価値の累積値)が大きくなる。ここで、デプス値の比較には以下の式(1)を用いる。
【0042】
【数1】
・・・式(1)
【0043】
上記式(1)において、D*viは、ボクセル中心vから距離画像iに対応するカメラまでのデプス値を表す。また、Di(x,y)は、座標(x,y)で特定される距離画像iにおける画素位置のデプス値を表す。また、(xvi,yvi)は、ボクセル中心vを距離画像iに投影したときの画素位置を示す座標である。この場合において、「着目ボクセルに対応する距離画像上の画素位置のデプス値」は、以下の手順で取得できる。まず、距離画像iに対応するカメラのカメラパラメータに基づき、着目ボクセルのボクセル中心vを距離画像上に投影して、着目ボクセルに対応する距離画像i上の座標(xvi,yvi)を取得する。次に、距離画像iにおける座標(xvi,yvi)におけるデプス値を、対応する位置に画素があればそのデプス値を取得し、対応する位置に画素がなければその周辺画素のデプス値の補間演算(最近傍補間など)により求める。こうして求めた値が、着目ボクセルに対応する距離画像上の画素位置のデプス値となる。そして、「距離画像に対応するカメラから着目ボクセルまでのデプス値」は、以下の手順で取得できる。まず、距離画像iに対応するカメラのカメラパラメータに基づき、着目ボクセルのボクセル中心vを距離画像iに対応するカメラを基準とする座標系に変換する。次に、変換後のボクセル中心vまでの奥行(前後左右は無視)を求める。こうして求めた値が、距離画像に対応するカメラから着目ボクセルまでのデプス値となる。
【0044】
そして、着目ボクセルについて上記式(1)の条件を満たしていれば、当該着目ボクセルに1票(評価値“1”)が加えられる。このような処理の結果、すべての距離画像におけるデプス値が正確であれば(すなわち、どの距離画像にも誤ったデプス値が含まれない場合)、本来のオブジェクト形状を表現しているボクセルについての得票数は“0”になる。仮に、各カメラに対応する距離画像の中に、誤ったデプス値を含む距離画像が1つだけ存在していた場合は、本来のオブジェクト形状を表現しているボクセルについての得票数は“1”となる。図16は、図6に示す瓢箪型オブジェクトの概略形状を表すボクセル集合に対する投票結果の一例を示す図である。オブジェクト中央の縊れた部分に相当するボクセルに関し誤ったデプス値を含む距離画像が存在していた結果、削除すべきでない4つのボクセル1600にも1票ずつ投票がされている。本実施形態では12台のカメラ101それぞれに対応する12個の距離画像が得られるので、上記のような処理が12回繰り返されることになる。
【0045】
S1503では、投票結果(評価の結果)に基づき、S1501にて設定された閾値以上の得票数(=評価値の累積値)となったボクセルが、概略形状を表すボクセル集合から削除される。ここで、上述の図16を参照して、投票結果に基づくボクセルの削除を説明する。図16において、太線1601は概略形状を表すボクセル集合の補正前の輪郭を示している。いま、概略形状データに対して閾値“2”が設定されていた場合、得票数が“2”以上のボクセルが削除され、得票数が“1”以下のボクセルが残ることになる。その結果、破線1602で示すような輪郭を持つボクセル集合に補正されることになる。
【0046】
以上が、形状補正処理の内容である。なお、概略形状データが点群形式の場合は、上述の説明における“ボクセル”を“点”に読み替えて適用可能であるが、メッシュ形式の場合はそのまま適用できない。概略形状データがメッシュ形式で与えられる場合は、メッシュで囲まれた領域をボクセル集合に置き換えるデータ形式の変換を行った上で、上述の図15のフローを適用する。そして、元のメッシュ形式で補正後の形状データを出力したい場合には、メッシュ形式にデータ形式を再変換して出力すればよい。
【0047】
以上のとおり本実施形態によれば、オブジェクトの概略形状データの生成に用いた各撮像画像からオブジェクトの表面三次元情報を取得し、当該表面三次元情報に基づいて距離画像を補正する。そして、補正された距離画像に基づき概略形状データを補正することで、凹みのある複雑な形状を持つオブジェクトであっても、その三次元形状を精度よく復元することができる。
【0048】
<変形例1>
上述の閾値設定処理では、所定の分割数で撮像空間を分割し、予め用意した閾値パターンに基づいて、局所空間に対して閾値を設定しているが、閾値の設定方法はこれに限定されない。例えば、距離画像をグループ分けし、各グループに属する距離画像の各局所空間に対する可視性に基づいて、局所空間に対して閾値を設定してもよい。図17は、本変形例に係る閾値設定処理の詳細を示すフローチャートである。以下、図17のフローに沿って、本変形例の閾値設定処理について説明する。
【0049】
S1701は、前述のS1301と同じであり、予め定めた分割条件に従って撮像空間が複数の局所空間に分割される。続くS1702では、複数のカメラそれぞれに対応する距離画像を、そのカメラパラメータによって特定される撮像方向に基づき、共通の撮像方向を持つカメラに対応する距離画像同士が同じグループになるように分ける。ここでは第1グループ~第4グループの4つのグループに分ける。なお、上記グループ分けはあくまで一例であり、例えばカメラパラメータが示す位置と姿勢が類似する距離画像同士が同じグループになるようにしてもよい。
【0050】
S1703では、グループ毎に、全ての局所空間のうち注目する局所空間に対して可視性のある距離画像がいくつあるかがカウントされる。ここで、「可視性のある距離画像」とは注目する局所空間がその画角内に収まっている距離画像を意味し、以下では「可視距離画像」と表記する。
【0051】
S1704では、各グループについて求めた可視距離画像の数に基づき、グループ毎に、注目する局所空間に対する仮閾値が決定される。ここで、仮閾値は、可視距離画像のカウント数よりも小さな値とする。図18の(a)~(d)は、撮像空間1800を囲むように90度違いで4方向に各6台ずつカメラが配置されていた場合の、方向別グループ(第1グループ~第4グループ)毎に決定された局所空間1801についての仮閾値を示している。この例では、各グループにおいて、6台のカメラによる6つの撮像画像を用いて、隣り合うカメラの撮像画像間でステレオマッチングを行って5つの距離画像を取得する。次に、5つの距離画像に対して可視距離画像の数をカウントする。そして、各グループにおいて、注目する局所空間が、可視距離画像数が“2”の領域に属する場合には仮閾値として“1”を決定し、可視距離画像の数が“3”以上の領域に属する場合は仮閾値として“2”を決定している。
【0052】
S1705では、S1704にてグループ単位で決定された仮閾値のうち最小値が、注目する局所空間に対する閾値として設定される。図19は、上述の図18で示したグループ単位の仮閾値に基づき設定された閾値の分布を示す図である。なお、高さ方向については省略しているが、同じ閾値が設定されているものとする。図19において、撮像空間1800内の濃いグレーで表す領域に属する局所空間には閾値として“2”が設定され、薄いグレーで表す領域に属する局所空間には閾値として“1”が設定されるのが分かる。
【0053】
以上のように、グループ分けした距離画像に基づき局所空間毎に閾値を設定してもよい。なお、本変形例では距離画像を4つのグループに分けたが、分割するグループの数はこれに限らない。また、本変形例では、グループ間で排他になるように距離画像を分けたが、グループ間で重複するように分けてもよい。
【0054】
<変形例2>
上述の実施形態では、グループ単位で決定した仮閾値のうち最小値を局所空間に対する閾値として設定しており、各局所空間に設定される閾値は1つであった。しかしながら、グループ単位で決定した仮閾値を、そのまま局所空間に対する閾値として設定してもよい。この場合、撮像方向に応じて概略形状データを分割し、分割後の形状データに対し、複数の閾値それぞれを適用して、形状補正を行えばよい。以下、図20に示すフローチャートに沿って、本変形例に係る形状補正処理について説明する。
【0055】
S2001では、概略形状データが、前述のグループに応じて分割される。撮像方向別に4つのグループに分けられる前述の例では、概略形状データとしてのボクセル集合を包含するバウンディングボックスの頂点を通る面に基づき4つに分割すればよい。図21は、図12に示すような輪郭を持つ概略形状データを、前述の4つのグループに応じて分割する様子を示す図である。分割によって得られた概略形状データの一部を表すデータを「部分形状データ」と呼ぶこととする。次のS2002では、各グループに対応する仮閾値に基づいて、部分形状データそれぞれに対して閾値が設定される。具体的には、部分形状データとしてのボクセル集合の重心座標を求め、当該重心座標が属する局所空間について決定されたグループ毎の仮閾値を、そのまま閾値として設定する。いま、前述の18に示すように、第1方向~第4方向それぞれのグループにおいて、局所空間1801に対する仮閾値が設定されていたとする。この場合、上述の図21の例では、第1方向、第3方向、第4方向に対応する部分形状データに対しては閾値“2”が設定され、第2方向に対応する部分形状データに対しては閾値“1”が設定されることになる。続く、S2003は前述の図15のフローにおけるS1502に相当する。すなわち、各部分形状データとしてのボクセル集合について、S405にて生成された距離画像に基づき、各ボクセルに対する投票が行われる。なお、投票の際に参照する距離画像を、対象の部分形状データのグループと同じグループのものに限定してもよい。S2004は前述の図15のフローにおけるS1503に相当する。すなわち、各部分形状データとしてのボクセル集合について、投票結果に基づき、S2002にて設定された閾値以上の得票数となったボクセルがボクセル集合から削除される。
【0056】
以上が本変形例に係る形状補正処理の内容である。本変形例によっても、オブジェクトの三次元形状を精度よく復元することができる。
【0057】
<その他の変形例>
上述の実施形態では、選別後の表面三次元情報を距離画像の補正に利用していたが、利用方法はこれに限定されない。例えば、基準画像の着目画素に対応する対象画像内の画素を特定する際の、探索範囲の設定に使用してもよい。具体的には、特徴点ペアの空間対応点の三次元座標に基づき、基準画像における特徴点近傍の探索範囲をより狭く設定する。これは、そもそも探索範囲はオブジェクトが存在し得る範囲に対応するところ、オブジェクトの表面三次元情報である特徴点ペアの空間対応点を利用することで、適切な探索範囲を設定することができる。
【0058】
また、上述の実施形態では局所空間毎に閾値を設定しているが、撮像空間内に複数のオブジェクトが存在する場合にはオブジェクト毎に異なる閾値を設定しても構わない。例えば、ボールに対する閾値よりも人物(選手)に対する閾値を大きくするなど、単純な形状のオブジェクトほど小さな閾値を設定する、といった具合である。あるいは、撮像空間内に複数の人物が存在する場合に、補正が必要な人物と補正不要な人物とで閾値を変えてもよい。オブジェクト毎に異なる閾値を設定する場合には、S1501においてテンプレートマッチングなどによりオブジェクトを判別し、オブジェクト毎に予め用意した所定の閾値を設定すればよい。
【0059】
また、上述の実施形態では、概略体形状データの全体に対して1つの閾値を設定しているが、概略形状データが示す三次元形状のパーツ毎(例えば人物オブジェクトの場合、頭、腕、胴、脚などの部位毎)に異なる閾値を設定しても構わない。この場合、まず、概略形状を表すボクセル集合を各パーツに対応する複数のボクセル集合(パーツ単位の概略形状データ)に分割する。そして、パーツ単位の概略形状データ毎の重心座標を特定して、当該重心座標が含まれる局所空間に対応する閾値を、パーツ単位の概略形状データに対する閾値とすればよい。
【0060】
また、上述の実施形態では、距離画像に基づく各ボクセルへの得票数に応じて概略形状データを補正しているが、各距離画像に対して重み付けを行ってもよい。例えば、距離画像毎に距離分解能が異なる場合、距離分解能の高い距離画像ほど重みを大きく設定するといった具合である。こうすることによって、距離分解能の高い距離画像ほど評価結果に反映されることになる。あるいは、ボクセル集合が表す概略形状のうち補正すべきでない領域ほど重みを小さくしたり、または得票数を小さく補正しても構わない。例えば、概略形状表面までの距離が所定の値より大きなボクセルに対しては重みを小さくことで、それらボクセルを削除しにくくできる。このように各距離画像や概略形状データに対する重み付けによって評価結果における寄与率を制御してもよい。
【0061】
また、上述の実施形態では、特徴点ペアの空間対応点に基づいて距離画像を補正し、補正後の距離画像に基づいて概略形状データを補正しているが、補正前の距離画像に基づいて概略形状データを補正しても構わない。この場合、表面三次元情報導出部303と表面三次元情報選別部304による処理はスキップされる。
【0062】
また、上述の実施形態では、概略形状を表すボクセル集合を構成する各ボクセルの得票数と、設定された閾値とを比較する処理を行って、ボクセル単位で削除するかどうかを判定している。しかしながら、全ての局所空間に共通の閾値“1”を設定した場合には、閾値比較による判定処理は不要となる。すなわち、いずれかの距離画像において前述の式(1)を満たすボクセルについては直ちに削除すればよい。これにより、より簡便に形状補正処理を行うことが可能となる。
【0063】
[実施形態2]
前述のとおり複数のオブジェクトが映っている場合にも上述の実施形態1は適用可能である。ここで、入力される複数視点画像に同一種類のオブジェクトが複数存在する(例えば人物が並んで複数映っている)ようなケースを想定する。このようなケースでは、表面三次元情報導出処理において、それぞれの人物の目鼻口といった顔を特徴付ける器官に対応する2つ以上の点(一般に「フェイスランドマーク」と呼ばれる。)が、特徴点として抽出されることになる。そして、複数の人物それぞれのフェイスランドマークが各撮像画像から抽出される結果、誤ったフェイスランドマークの組合せに基づく誤った空間対応点が大量に生じてしまう。図22は、現実には右目が存在しない誤った三次元位置を含む膨大な数の「右眼の空間対応点」が発生する様子を説明する図である。そして、同様のことが、鼻や口など他の顔器官についても生じる結果、大量の誤ったフェイスランドマークの組合せに基づく、違和感のない大きさの顔を表す誤った表面三次元情報が大量に得られてしまう。そこで、本実施形態では、複数視点画像に二人以上の人物が映っている場合において、それぞれの顔に対応した表面三次元情報を適切に取得するための手法を説明する。なお、以下では実施形態1との差異点を中心に説明を行うこととする。
【0064】
<画像処理装置の機能構成>
図23は、本実施形態に係る画像処理装置102の機能構成(ソフトウェア構成)例を示す図であり、図24は各機能部による処理の流れを示すフローチャートである。実施形態1との大きな違いは、図23においては表面三次元情報統合部2301が、図24においては表面三次元情報統合処理(S2401)が追加されている点である。ただし、実施形態1との違いはこれだけではなく、表面三次元情報導出処理(S403)および表面三次元情報選別処理(S404)の内容も異なっている。以下、本実施形態における、表面三次元情報の導出・選別・統合の各処理について詳しく説明する。
【0065】
<表面三次元情報導出処理>
図25は、本実施形態に係る、表面三次元情報導出処理(S403)の詳細を示すフローチャートである。以下、図25のフローに沿って説明する。
【0066】
S2501では、各撮像画像から、同一種類のオブジェクト1個当たり2つ以上の特徴点が抽出される。本実施形態では、各撮像画像に映っている複数の人物それぞれのフェイスランドマークを検出し、特徴点として抽出する。フェイスランドマークの検出には、例えばDlibやOpenCVといった公知の顔認識技術を用いればよい。ここでは、図26に示すように、右目尻2601、右目頭2602、左目尻2603、左目頭2604、鼻先2605、右口角2606及び左口角2607の計7つのフェイスランドマークを検出し、特徴点として抽出するものとする。なお、抽出対象とするフェイスランドマークは上記7つに限定されない。例えば、上記7つのうちいずれかを含んでいなくてもよいし、眉間、頬上の点、顎のライン上の点などより多くの顔の部位を含んでいてもよい。
【0067】
S2502では、各撮像画像から抽出された同一種類のオブジェクト1個当たり2つ以上の特徴点について、視点の異なる2つの撮像画像間で対応付ける処理が行われる。これにより、上記オブジェクト1個分に対応する、撮像画像間で対応関係にある特徴点群同士の組合せが決定される。ここで決定される「特徴点群同士の組合せ」は、実施形態1における「特徴点ペア」に相当するものである。しかしながら、各撮像画像内に同一種類のオブジェクトが複数映っている場合、決定される「特徴点群同士の組合せ」が、2つの撮像画像に映る同一オブジェクトについてのものとはなっていない可能性がある。ここで具体例を用いて説明する。図27は、2人の人物107a及び107bを三台のカメラ101a~101cで撮像して得られた画像2700、2710、2720を示している。いま、人物107aは撮像画像2700と2710に映っており、人物107bは3つの撮像画像2700、2710、2720の全てに映っている。そして、各撮像画像7つのフェイスランドマークを抽出することで検出された人物107a及び107bのそれぞれの顔部分に対し、外接矩形の顔枠2701、2702、2711、2712、2721が示されている。この例で成立し得る「顔同士(≒7つのフェイスランドマーク同士)」の組み合わせは、以下の8通りである。
・F1(顔枠2701と顔枠2711):誤対応
・F2(顔枠2701と顔枠2712):正対応
・F3(顔枠2701と顔枠2721):正対応
・F4(顔枠2702と顔枠2711):正対応
・F5(顔枠2702と顔枠2712):誤対応
・F6(顔枠2702と顔枠2721):誤対応
・F7(顔枠2711と顔枠2721):誤対応
・F8(顔枠2712と顔枠2721):正対応
【0068】
上述のとおり、成立し得る特徴点群同士の組合せが8つ得られるものの、その中には顔同士の対応を誤っているもの(誤対応)も含まれる。そこで、本実施形態で決定する「特徴点群同士の組合せ」を以下では「特徴点ペアの候補」と呼ぶこととする。また、特徴点群としてフェイスランドマークを用いる「顔同士の組合せ」を「顔候補」と呼ぶこととする。
【0069】
S2503では、S2502にて決定した特徴点ペアの候補それぞれについて、特徴点群の空間対応点が導出される。本実施形態の場合、1つの顔候補に7つのフェイスランドマークが含まれる。よって、注目する顔候補に係る2枚の撮像画像に対応するカメラのカメラパラメータに基づき、各フェイスランドマークについて、対応する2つの光線の交点を空間対応点として決定する。こうして1つ1つの顔候補に対する7つの空間対応点が、表面三次元情報として導出される。
【0070】
以上が、本実施形態に係る、表面三次元情報導出処理の内容である。
【0071】
<表面三次元情報選別処理>
上述の表面三次元情報導出処理における特徴点ペアの候補(本実施形態では顔候補)の決定処理においては、それが撮像画像に映っているどの人物のものであるかといった照合までは行わない。そのため、前述のとおり、異なる人物同士の顔を組み合わせた誤対応の顔候補も含まれている。その結果、表面三次元情報として導出された顔候補毎のフェイスランドマークの空間対応点の中には、実際には人の顔が存在しない三次元位置を示すものも紛れていることになる。図28にその具体例を示す。図28図27の撮像空間を真上から見た図であり、人物107aの頭部2800aと人物107bの頭部2800bとが示されている。図27において、人物107aについて検出された顔は撮像画像2700では顔枠2702で示され、撮像画像2710では顔枠2711として示されていた。また、人物107bについて検出された顔は撮像画像2700では顔枠2701で示され、撮像画像2710では顔枠2712として示されていた。図28における点2801は、異なる人物同士の顔の組み合わせである顔候補F1(顔枠2701と顔枠2711)から導出される右目尻2601の空間対応点を表しており、実在しない右目尻の三次元位置を示していることが分かる。このように、人物同士が誤対応している顔候補から導出されるフェイスランドマークの空間対応点は、実際には人物が存在しない位置を示している可能性が高い。そこで、導出されたフェイスランドマークの空間対応点のうち、その位置が概略形状データから得た概略形状表面に近いものだけを残すように選別する。
【0072】
図29は、本実施形態に係る、表面三次元情報選別処理(S404)の詳細を示すフローチャートである。概略形状データを視体積交差法によって取得する場合は、使用したシルエット画像に誤りがない限り、概略形状表面の外側に真の形状は存在しない。その一方で、オブジェクトの凹んだ部分は再現できず、また、オブジェクトの一部が遮蔽されていたり、使用するシルエット画像の数(≒視点数)の不足によっても、真の形状ではない領域をボクセル集合に含んでしまう。そのため、視体積交差法によって得られた概略形状の外側の三次元位置を示す空間対応点は誤りである可能性が高い。そこで、本実施形態では導出されたフェイスランドマークの空間対応点のうち、概略形状を表すボクセル集合の内側の三次元位置を示すもののみを残すようにする。以下、図29のフローに沿って説明する。
【0073】
S2901では、全ての顔候補の中から処理対象として注目する顔候補が設定される。続くS2902では、特徴点としてのフェイスランドマークの中から処理対象として注目するフェイスランドマークが1つ設定される。本実施形態の場合、7つのフェイスランドマークの中から1つずつ順に設定されることになる。
【0074】
S2903では、S2902にて設定された注目フェイスランドマークの空間対応点が、概略形状の内部に含まれるか否かによって次に実行する処理が振り分けられる。すなわち、注目フェイスランドマークの空間対応点が、概略形状を表すボクセル集合の内部に含まれる場合はS2904の処理が次に実行され、含まれない場合はS2907の処理が次に実行される。
【0075】
S2904では、注目フェイスランドマークの空間対応点を中心とする半径N[mm]以内に存在する全てのボクセルが、概略形状の内部に含まれるか否かによって次に実行する処理が振り分けられる。ここで、Nは制御パラメータであり、“視体積交差法に基づき得られる概略形状表面”と“フェイスランドマークの真の位置”との差の最大値を用いるのが理想的で、視点数等を加味して決定する。図30の(a)は、制御パラメータNをユーザが設定するためのユーザインタフェース画面(UI画面)の一例を示す図である。図30の(a)に示すUI画面の画像表示領域3001には、2人の人物の概略形状がグレーのシルエットで示され、導出された顔候補が破線で示される。ユーザは、UI画面内のシークバー3002を操作して、概略形状からの距離を表す制御パラメータNについて、0~40[mm]までの範囲で任意の値を指定できるようになっており、ここではN=20[mm]に指定されている。注目フェイスランドマークの空間対応点を中心とする半径Nmmの円の中に存在する全てのボクセルが概略形状の内部に含まれていない(すなわち、当該空間対応点は概略表面形状からNmm以内に存在している)場合はS2905の処理が次に実行される。一方、注目フェイスランドマークの空間対応点を中心とする半径Nmmの円の中に存在する全てのボクセルが概略形状の内部に含まれている(すなわち、当該空間対応点は概略表面形状からNmm以内に存在していない)場合はS2907の処理が次に実行される。
【0076】
S2905では、注目顔候補に含まれる全てのフェイスランドマークについての処理が完了したか否かによって次に実行する処理が振り分けられる。全てのフェイスランドマークが処理されていればS2906の処理が次に実行される。一方、未処理のフェイスランドマークがあればS2902に戻って次の注目フェイスランドマークが設定されて処理が続行される。
【0077】
S2906では、注目顔候補に含まれる全てのフェイスランドマークの空間対応点が、リストに加えられる。こうして得られるリストには、撮像空間に存在する人物の顔の表面形状を表すものとして正しいと推測される顔候補単位の空間対応点群が掲載されることになる。
【0078】
S2907では、全ての顔候補についての処理が完了したか否かによって次に実行する処理が振り分けられる。未処理の顔候補があれば、S2901に戻って次の注目顔候補が設定されて処理が続行される。一方、全ての顔候補について処理が完了していれば、本処理を終了する。このような処理によって、概略形状の内側かつ概略形状表面から一定距離以内にフェイスランドマークの空間対応点があると判定された顔候補だけを選別することができる。図31の(a)及び(b)に、上記フローによる選別の具体例を示す。図31の(a)及び(b)において、2点鎖線の曲線3100は人物の顔の概略形状表面を示し、実線の円3101はフェイスランドマークの空間対応点を中心とする半径Nmmの円を示す。図31(a)は、選別によって残る表面三次元情報、すなわち、前述のリストに掲載される顔候補単位の空間対応点群の一例である。この例では、顔候補の全フェイスランドマークの空間対応点2601’~2607’が、概略形状表面3100の内側に存在し、かつ、概略形状表面3100からNmm以内に存在しているのが分かる。図31(b)は、選別によって残らない表面三次元情報、すなわち、前述のリストに掲載されない顔候補単位の空間対応点群の一例である。この例では、顔候補の全フェイスランドマークの空間対応点2601”~2607”のうち右目尻の空間対応点2601”が概略形状表面3100の外側に位置しており、かつ、左目頭と左目尻の2つの空間対応点2603”と2604”が概略形状表面3100から30mm以内に存在していないのが分かる。
【0079】
以上が、本実施形態に係る、表面三次元情報選別処理の内容である。これにより、人物同士が誤対応している顔候補から導出された誤ったフェイスランドマークの空間対応点が除外され、実在する人物の顔に対応する高精度の表面三次元情報が得られる。図30(a)のUI画面の画像表示領域3001には、選別によって残った顔候補が実線で示されると共に、画面右側には選別結果(選別前と選別後の顔候補の数)が示されている。なお、図29のフローでは、概略形状の内部に空間対応点があるフェイスランドマークのみを残すようにしたが、シルエット画像が含み得る誤差を考慮して、概略形状の外部に空間対応点があるフェイスランドマークを残すことを許容するようにしてもよい。この場合、例えば概略形状表面からどのくらい外側までを許容するのかを判定するための閾値を別途設定する。この際の外部用閾値は、例えば5[mm]など内部用閾値よりも小さい値にすることが好ましい。また、この外部用閾値についても内部用閾値を規定する制御パラメータNと同様に、前述の図30の(a)に示すUI画面において、ユーザが指定できるようにしてもよい。さらには、フェイスランドマークの検出精度はその部位によって異なり、例えば目尻や口角は画像的特徴が強く精度良く検出しやすい一方で、例えば鼻先の位置を正確に検出することは難しい。そこで、例えば上記7つのフェイスランドマークのうち、鼻先を除いた両目頭、両目尻、口角の6つのフェイスランドマークの空間対応点だけを対象に上述の選別を行ってもよい。
【0080】
<表面三次元情報統合処理>
図32は、表面三次元情報統合部2301が実施する、本実施形態に係る表面三次元情報統合処理(S2401)の詳細を示すフローチャートである。この処理によって、選別された特徴点ペアの候補を1つのオブジェクトに対し1つとなるように(ここでは、顔候補が1人につき1つとなるように)統合する。以下、図32のフローに沿って説明する。
【0081】
S3201では、選別で残った各顔候補について、撮像空間における顔の位置及び姿勢が導出される。まず、顔候補を構成する複数(本実施形態では7つ)のフェイスランドマークそれぞれについて空間対応点の三次元座標の平均値を算出する。そして、全フェイスランドマークについて算出した三次元座標の平均値によって特定される顔候補単位の三次元位置を、撮像空間における顔の位置に決定する。この際、例えば7つのフェイスランドマークのうち、精度の低いフェイスランドマーク(例えば鼻先)については平均値の算出対象から除外してもよい。次に、両目尻と両口角の中点から成る3角形の法線を求めて顔の前方向を、さらに、左目尻から右目尻へ向かう方向ベクトルを求めて顔の右方向を特定し、顔の姿勢(顔の向き)を決定する。これにより、顔の位置と姿勢が顔候補毎に導出される。
【0082】
S3202では、各顔候補について導出した「顔の位置と姿勢」に基づき、「顔の位置と姿勢」が近いもの同士が統合される。ここで“近い”の基準について、まず顔の位置に関しては、互いの距離がM[mm]以下であることを条件とする。そして、顔の姿勢に関しては、前方向同士の成す角θf及び右方向同士の成す角θrが、共にθt以下であることを条件とする。ここで、M及びθtは制御パラメータであり、例えば図30(b)に示すUI画面を介してユーザによって設定される。図30(b)のUI画面は、前述の図30(a)のUI画面内の「詳細設定」ボタン3004を押下することで表示される。ここで一般的な人の顔の横幅は160[mm]程度であり、顔の向きのずれが例えば30°以下の制約下で2つの顔間の距離が100[mm]以下となるのは異常であると考えられる。よって、図30(c)のUI画面では、顔候補間の距離Mの最大値は200[mm]、顔姿勢の成す角θfの最大値は40[°]としている。尤も、撮像対象が顔の小さい子供である場合はMをより小さい値にしたり、顔姿勢の推定精度が低い場合はθtをより大きい値にするなど、状況に応じて設定すればよい。このようなUI画面を介して、制御パラメータM及びθtが設定される。そして、上記制御パラメータM及びθtによって規定される条件を満たした2つ以上の「顔の位置と姿勢」が特定されると、それらは同一人物の「顔の位置と姿勢」を表現するものと判断して統合する。具体的には、統合対象と判定された2つ以上の顔候補の各フェイスランドマークについて、その空間対応点の三次元座標の中央値を算出する。そして、算出された中央値が示す三次元座標を、統合された顔候補における各フェイスランドマークの空間対応点の三次元座標とする。なお、複数の三次元座標を統合する際にそれらの中央値を採用する上記方法は一例であり、平均値、最頻値、最大値と最小値の中間値を採用してもよい。さらには、概略形状表面に最も近い或いは最も遠い三次元座標を採用してもよい。こうして、同一人物の顔を表していると考えられる表面三次元情報(ここでは7つのフェイスランドマークの空間対応点)が統合され、撮像空間に存在する人物それぞれの顔に1対1で対応した表面三次元情報が得られる。図30(c)は統合処理後のUI画面の画像表示領域3001を示しており、左側の人物について2つあった選別後の顔候補が統合によって1つになっているのが分かる。また、画面右の「残った顔候補の数」にも統合結果が反映され、顔候補の数が“3”から“2”に変わっている。
【0083】
S3203では、統合された顔候補単位における各フェイスランドマークの空間対応点の三次元座標に基づき、撮像空間に存在する人物について、1人につき1つの顔の位置と姿勢が導出される。ここでの導出には上記S3101と用いた方法と同じ方法を用いればよい。
【0084】
以上が、表面三次元情報統合処理の内容である。こうして複数視点画像の各撮像画像に映っている人物に1対1で対応した顔の表面三次元情報を得ることができる。なお、本実施形態では、人物の顔を例に説明を行ったがこれに限定されず、例えば顔以外のパーツ(例えば腕や脚)に適用してもよい、さらには人物以外のオブジェクト、例えば自動車やバイクのタイヤなどに適用してもよい。
【0085】
<変形例>
上述の実施形態では、表面三次元情報統合処理における制御パラメータM及びθtをユーザ操作に基づき設定する例を説明したが、制御パラメータの設定方法はこれに限定されない。例えば、図33の(a)及び(b)に示すようなUI画面を介してユーザに対象シーンに存在する人物の数を指定させ、統合後の顔の数が指定された人物の数以下になるように自動で制御パラメータM及びθtを決定するようにしてもよい。この場合、例えば、制御パラメータMについて、40[mm]から1[mm]ずつ小さくしていき、統合後の顔候補の数が2に達したときの値を採用する、といった具合に制御パラメータを決定することが可能である。このような方法で制御パラメータを設定してもよい。
【0086】
[その他の実施形態]
本開示は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0087】
また、本実施形態の開示は、以下の構成及び方法を含む。
【0088】
(構成1)
視点の異なる複数の撮像画像に映るオブジェクトの三次元形状データを取得する取得手段と、
前記複数の撮像画像に基づき、前記オブジェクトの表面三次元情報を導出する導出手段と、
導出された前記表面三次元情報を、前記三次元形状データが表す前記オブジェクトの形状表面からの距離に基づいて選別する選別手段と、
を有することを特徴とする画像処理装置。
【0089】
(構成2)
前記選別手段は、導出された前記表面三次元情報のうち、前記形状表面からの距離が閾値よりも小さい表面三次元情報を残し、前記形状表面からの距離が閾値以上の表面三次元情報を残さない、ことを特徴とする構成1に記載の画像処理装置。
【0090】
(構成3)
前記三次元形状データは、前記オブジェクトの概略形状を単位要素の集合で表すデータであり、
前記選別手段は、導出された前記表面三次元情報が表す位置が前記単位要素の集合の内部にある場合と外部にある場合とで異なる閾値を用いる、ことを特徴とする構成2に記載の画像処理装置。
【0091】
(構成4)
前記表面三次元情報が表す位置が前記単位要素の集合の外部にある場合の閾値は、前記表面三次元情報が表す位置が前記単位要素の集合の内部にある場合の閾値よりも小さい、ことを特徴とする構成3に記載の画像処理装置。
【0092】
(構成5)
前記三次元形状データは、前記オブジェクトの概略形状を単位要素の集合で表すデータであり、
前記選別手段は、前記形状表面からの距離が閾値よりも小さい表面三次元情報であっても、前記表面三次元情報が表す位置が前記単位要素の集合の外部にある場合は、当該表面三次元情報を残さない、ことを特徴とする構成2に記載の画像処理装置。
【0093】
(構成6)
前記導出手段は、
前記複数の撮像画像それぞれから前記オブジェクトの特徴点を抽出し、
抽出された前記特徴点を前記複数の撮像画像のうち2つの撮像画像間で対応付けて特徴点ペアを決定する処理を、当該2つの撮像画像の組合せを変えて行い、
前記対応付ける処理によって得られた前記特徴点ペア毎に、前記複数の撮像画像の撮像空間内の対応する位置を導出し、
前記特徴点のペア毎に導出された前記撮像空間内の対応する位置の情報を、前記表面三次元情報として出力する、
ことを特徴とする構成1乃至5のいずれか一項に記載の画像処理装置。
【0094】
(構成7)
前記複数の撮像画像に同一種類のオブジェクトが複数映っている場合、
前記導出手段は、
前記同一種類のオブジェクトそれぞれについて抽出された複数の特徴点に基づき、前記特徴点ペアの候補を、前記複数の撮像画像のうち2つの撮像画像間で対応付けて決定する処理を、当該2つの撮像画像の組合せを変えて行い、
決定された前記特徴点ペアの候補毎に、前記複数の撮像画像の撮像空間内の対応する位置を導出し、
前記特徴点ペアの候補毎に導出された前記撮像空間内の対応する位置の情報を、前記表面三次元情報として出力し、
前記選別手段は、
前記特徴点ペアの候補毎に導出された前記表面三次元情報に対し、前記選別を行う、
ことを特徴とする構成6に記載の画像処理装置。
【0095】
(構成8)
前記導出手段は、
前記同一種類のオブジェクト1個当たり2つ以上の特徴点から成る特徴点群を抽出し、
前記同一種類のオブジェクトの1個分に対応する特徴点群同士の組合せを前記特徴点ペアの候補として決定する、
ことを特徴とする構成7に記載の画像処理装置。
【0096】
(構成9)
前記選別によって残った前記特徴点ペアの候補の前記表面三次元情報のうち、条件を満たす2つ以上の前記表面三次元情報を1つに統合する統合手段をさらに有する、ことを特徴とする構成8に記載の画像処理装置。
【0097】
(構成10)
前記統合手段は、前記条件を満たす2つ以上の前記表面三次元情報に含まれる前記特徴点群を構成する特徴点それぞれについての、前記撮像空間内の対応する位置の三次元座標について、平均値、中央値、最大値、最小値、最頻値、前記形状表面に最も近い値、前記形状表面から最も遠い値、のいずれか一つを採用することで前記統合を行う、ことを特徴とする構成9に記載の画像処理装置。
【0098】
(構成11)
前記条件は、前記表面三次元情報に基づき特定される位置及び姿勢が互いに類似することである、ことを特徴とする構成9又は10に記載の画像処理装置。
【0099】
(構成12)
前記同一種類のオブジェクトは人であり、前記2つ以上の特徴点から成る特徴点群は人の顔を特徴付けるフェイスランドマークである、ことを特徴とする構成8乃至11のいずれか一項に記載の画像処理装置。
【0100】
(構成13)
前記形状表面からの距離に関する前記閾値を、ユーザインタフェース画面を介したユーザ操作に基づき設定する設定手段をさらに有する、ことを特徴とする構成2乃至5のいずれか一項に記載の画像処理装置。
【0101】
(構成14)
前記位置及び姿勢が類似するかどうかを判定するための閾値を、ユーザインタフェース画面を介したユーザ操作に基づき設定する設定手段をさらに有する、ことを特徴とする構成11に記載の画像処理装置。
【0102】
(構成15)
前記ユーザインタフェース画面においては、前記位置及び姿勢が類似するかどうかを判定するための閾値の入力を受け付けて設定する、ことを特徴とする構成14に記載の画像処理装置。
【0103】
(構成16)
前記ユーザインタフェース画面においては、前記複数の撮像画像に移っている前記オブジェクトの数の入力を受け付け、当該受け付けた数に応じた前記位置及び姿勢が類似するかどうかを判定するための閾値を設定する、ことを特徴とする構成14に記載の画像処理装置。
【0104】
(方法1)
視点の異なる複数の撮像画像に映るオブジェクトの三次元形状データを取得する取得ステップと、
前記複数の撮像画像に基づき、前記オブジェクトの表面三次元情報を導出する導出ステップと、
導出された前記表面三次元情報を、前記三次元形状データが表す前記オブジェクトの形状表面からの距離に基づいて選別する選別ステップと、
を含むことを特徴とする画像処理方法。
【0105】
(構成17)
コンピュータを構成1乃至16のいずれか一項に記載の画像処理装置として機能させるためのプログラム。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33