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

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

▶ 日本電信電話株式会社の特許一覧 ▶ 国立大学法人九州大学の特許一覧

特開2023-120747パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム
<>
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図1
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図2
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図3
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図4
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図5
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図6
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図7
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図8
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図9
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図10
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図11
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図12
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図13
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図14
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図15
  • 特開-パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023120747
(43)【公開日】2023-08-30
(54)【発明の名称】パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラム
(51)【国際特許分類】
   G06T 7/73 20170101AFI20230823BHJP
   G06T 7/80 20170101ALI20230823BHJP
【FI】
G06T7/73
G06T7/80
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022023770
(22)【出願日】2022-02-18
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(71)【出願人】
【識別番号】504145342
【氏名又は名称】国立大学法人九州大学
(74)【代理人】
【識別番号】110001634
【氏名又は名称】弁理士法人志賀国際特許事務所
(72)【発明者】
【氏名】松村 誠明
(72)【発明者】
【氏名】山本 奏
(72)【発明者】
【氏名】秋田 健太
(72)【発明者】
【氏名】森本 有紀
(72)【発明者】
【氏名】鶴野 玲治
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096BA02
5L096CA05
5L096DA02
5L096EA39
5L096FA54
5L096FA66
5L096FA69
5L096HA08
5L096JA11
5L096JA18
(57)【要約】
【課題】複数台のカメラで撮像された画像からそれぞれ検出された特徴点の2次元座標に基づいてパラメータ群を推定する技術において、より推定精度を向上させること。
【解決手段】パラメータ推定装置は、同一の被写体が互いに異なる位置から複数のカメラで撮像された各々の画像における、前記被写体の同一の特徴点の2次元座標が互いに対応付けられたデータを示す被写体姿勢群データを取得する取得部と、前記取得部によって取得された前記被写体姿勢群データに基づいて、前記特徴点の領域のうち前記特徴点以外の領域によって遮蔽されていない領域の割合を示す視認率を算出し、算出された前記視認率に基づいて重み係数を算出する重み係数算出部と、前記重み係数算出部によって算出された前記重み係数を用いた計算に基づいて、前記特徴点の3次元座標の座標値を含むパラメータの値を推定するパラメータ推定部と、を備える。
【選択図】図9
【特許請求の範囲】
【請求項1】
同一の被写体が互いに異なる位置から複数のカメラで撮像された各々の画像における、前記被写体の同一の特徴点の2次元座標が互いに対応付けられたデータを示す被写体姿勢群データを取得する取得部と、
前記取得部によって取得された前記被写体姿勢群データに基づいて、前記特徴点の領域のうち前記特徴点以外の領域によって遮蔽されていない領域の割合を示す視認率を算出し、算出された前記視認率に基づいて重み係数を算出する重み係数算出部と、
前記重み係数算出部によって算出された前記重み係数を用いた計算に基づいて、前記特徴点の3次元座標の座標値を含むパラメータの値を推定するパラメータ推定部と、
を備えるパラメータ推定装置。
【請求項2】
前記視認率は、前記被写体の第1の特徴点と前記被写体の第2の特徴点との位置関係に基づいて描画されるシルエット図形の画素数に対する、前記シルエット図形内の前記特徴点以外の領域によって遮蔽されていない領域の画素数の比率から算出される
請求項1に記載のパラメータ推定装置。
【請求項3】
前記シルエット図形は、前記第1の特徴点の位置から前記第1の特徴点と前記第2の特徴点とを結ぶ線分の所定の内分比率となる位置までの範囲の線分に、幅を持たせることによって生成された図形である
請求項2に記載のパラメータ推定装置。
【請求項4】
前記遮蔽されていない領域は、前記カメラのスクリーン上に奥行きを考慮して遠方の特徴点から順に再投影されることで、重複する領域が検出されることにより特定される
請求項1から3のうちいずれか一項に記載のパラメータ推定装置。
【請求項5】
前記重み係数算出部は、前記画像の領域全体に対して前記特徴点の領域が占める割合を示す画面内占有率をさらに用いて前記重み係数を算出する
請求項1から4のうちいずれか一項に記載のパラメータ推定装置。
【請求項6】
前記パラメータは、前記カメラの外部パラメータ及び前記カメラの内部パラメータのうち少なくとも一つをさらに含む
請求項1から請求項5のうちいずれか一項に記載のパラメータ推定装置。
【請求項7】
同一の被写体が互いに異なる位置から複数のカメラで撮像された各々の画像における、前記被写体の同一の特徴点の2次元座標が互いに対応付けられたデータを示す被写体姿勢群データを取得する取得ステップと、
前記取得ステップにおいて取得された前記被写体姿勢群データに基づいて、前記特徴点の領域のうち前記特徴点以外の領域によって遮蔽されていない領域の割合を示す視認率を算出し、算出された前記視認率に基づいて重み係数を算出する重み係数算出ステップと、
前記重み係数算出ステップにおいて算出された前記重み係数を用いた計算に基づいて、前記特徴点の3次元座標の座標値を含むパラメータの値を推定するパラメータ推定ステップと、
を有するパラメータ推定方法。
【請求項8】
請求項1から6のうちいずれか一項に記載のパラメータ推定装置としてコンピュータを機能させるためのパラメータ推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラムに関する。
【背景技術】
【0002】
複数台のカメラでそれぞれ同一の被写体が撮像された画像から特徴点をそれぞれ検出し、検出された特徴点についてカメラ間(画像間)での対応付けを行った後、カメラパラメータと各特徴点の3次元座標を推定する技術として、Bundle Adjustment(バンドル調整)がある。Bundle Adjustmentは、カメラ間で対応付けられた各特徴点の再投影誤差を最小化するコスト関数を用いて反復計算を行うことにより、最適なカメラパラメータと各特徴点の3次元座標とを推定する。
【0003】
図14は、Bundle Adjustmentの概要を説明するための模式図である。図14は、一例として、互いに異なる位置から2つのカメラ(カメラjとカメラj+1)で同一の被写体を撮像する場合について示したものである。図14に示されるように、まずBundle Adjustmentでは、例えば、カメラjによって撮像された画像とカメラj+1によって撮像された画像とから特徴点がそれぞれ検出される。両画像からそれぞれ検出された特徴点は、被写体の同一箇所の特徴点ごとに互いに対応付けられる。ここで、カメラjによって撮像された画像から検出された特徴点の2次元座標をui,jとし、カメラj+1によって撮像された画像から検出された特徴点の2次元座標をui,j+1とし、ある特徴点の3次元座標をpとする。
【0004】
そして、Bundle Adjustmentでは、例えば以下の(1)式で表されるコスト関数によって、カメラjのスクリーンに再投影された特徴点の3次元座標pとカメラjのスクリーンに再投影された特徴点の2次元座標をui,jとの間の再投影誤差、及びカメラj+1のスクリーンに再投影された特徴点の3次元座標pi+1とカメラj+1のスクリーンに再投影された特徴点の2次元座標をui,j+1との間の再投影誤差を最小化するように反復計算が行われる。これにより、特徴点の3次元座標pが推定される。反復計算には、例えばガウス・ニュートン法等が用いられる。
【0005】
【数1】
【0006】
上記の(1)式において、関数F(p|f,r,d,R,t)は、特徴点の3次元座標pをカメラjのスクリーンに投影する関数である。ここで、f,r,d,R,tは、カメラjのカメラパラメータである。具体的には、fはカメラ焦点距離,rはカメラ解像度,dはカメラ歪み,Rはカメラ回転角,及びtはカメラ位置である。カメラj+1のカメラパラメータの場合には、同様に、fj+1がカメラ焦点距離,rj+1がカメラ解像度,dj+1がカメラ歪み,Rj+1がカメラ回転角,及びtj+1がカメラ位置となる。
【0007】
一般的に、特徴点の3次元座標の取得対象である物体が建築物等の幾何構造物である場合には、SIFT(Scale-Invariant Feature Transform)特徴量を用いて、特徴点の検出及びカメラ間の対応付けを行う方法が広く用いられている。一方、特徴点の3次元座標の取得対象が人物である場合には、例えばOpenPose(非特許文献1を参照)及びPersonLab(非特許文献2を参照)等に代表される2次元姿勢推定技術が用いられる。これらの技術は、人物の関節や目、鼻、耳等の部位を検出する。そして、例えば、人物の骨格長が不変であるという仮定の下で、検出された人物の部位を特徴点と見なしてBundle Adjustmentによる推定が行われる(非特許文献3を参照)。
【先行技術文献】
【非特許文献】
【0008】
【非特許文献1】Z. Cao, G. Hidalgo, T. Simon, S.E. Wei, and Y. Sheikh, “OpenPose: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields”, arXiv: 1812.08008v2 [cs.CV], pp.1-14, May 2019.
【非特許文献2】G. Papandreou, T. Zhu, L. C. Chen, S. Gidaris, J. Tompson, and K. Murphy, “PersonLab: Person Pose Estimation and Instance Segmentation with a Bottom-Up, Part-Based, Geometric Embedding Model”, ECCV, 2018.
【非特許文献3】K. Takahashi, D. Mikami, M Isogawa, and H. Kimata, “Human Pose as Calibration Pattern; 3D Human Pose Estimation with Multiple Unsynchronized and Uncalibrated Cameras”, CVPR, pp.1888-1895, 2018.
【非特許文献4】T. Ohashi1, Y. Ikegami, and Y. Nakamura, “Synergetic Reconstruction from 2D Pose and 3D Motion for Wide-Space Multi-Person Video Motion Capture in the Wild”, arXiv: 2001.05613v2 [cs.CV], pp.1-12, Oct 2020.
【発明の概要】
【発明が解決しようとする課題】
【0009】
Bundle Adjustmentでは、各パラメータを最適化する反復計算の過程において、上記の再投影誤差の平均二乗誤差(MSE)を最小化するようにパラメータを更新していく手法が広く用いられている。しかしながら、前述のOpenPose及びPersonLabによって特徴点が検出される過程においても、特徴点の2次元座標に推定誤差が重畳しているため、画像(例えば、動画の各フレーム)における被写体の各特徴点は最大でもカメラの台数分のサンプリング点しかない。そのため、大きなノイズによって特徴点の2次元座標の推定誤差が重畳すると、カメラパラメータ及び各特徴点の3次元座標の推定精度が大きく損なわれることがある。
【0010】
特に、例えば図15に示されるように、画面内において被写体が小さく映っている場合と大きく映っている場合とでは、特徴点の両者の推定誤差がたとえ同程度(例えば、両者ともに2ピクセルの推定誤差)であったとしても、3次元空間においては両者の推定誤差は異なる。この場合、画面内に小さく映っている被写体であるほど推定誤差はより大きくなり、画面内に大きく映っている被写体であるほど推定誤差はより小さくなる。そのため、画面内に小さく映っている被写体を、画面内に大きく映っている被写体と同様に扱って推定を行う従来手法では、カメラパラメータ及び各特徴点の3次元座標の推定精度が低下する可能性がある。
【0011】
また特に、例えば図16に示されるように、検出対象の特徴点の画像領域が、例えば、被写体である人物の別の部位の画像領域、又は同じ画像に写った他の人物の画像領域等と重なり合うことなどによって遮蔽された画像領域が存在する場合もある。この場合、遮蔽された画像領域が存在する被写体を、遮蔽された画像領域が存在しない被写体と同様に扱って推定を行う従来手法では、カメラパラメータ及び各特徴点の3次元座標の推定精度が低下する可能性がある。
【0012】
このように、複数台のカメラで撮像された画像から被写体の特徴点をそれぞれ検出し、各特徴点の2次元座標の画像間の対応付けを行うことで各特徴点の3次元座標及びカメラパラメータ(以下、これらをまとめて「パラメータ群」という。)を推定する従来のBundle Adjustmentにおいては、特徴点の検出に推定誤差が含まれている場合、パラメータ群の推定精度が大きく損なわれることがあるという課題がある。
【0013】
上記事情に鑑み、複数台のカメラで撮像された画像からそれぞれ検出された特徴点の2次元座標に基づいてパラメータ群を推定する技術において、より推定精度を向上させることができるパラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラムを提供することを目的としている。
【課題を解決するための手段】
【0014】
本発明の一態様は、同一の被写体が互いに異なる位置から複数のカメラで撮像された各々の画像における、前記被写体の同一の特徴点の2次元座標が互いに対応付けられたデータを示す被写体姿勢群データを取得する取得部と、前記取得部によって取得された前記被写体姿勢群データに基づいて、前記特徴点の領域のうち前記特徴点以外の領域によって遮蔽されていない領域の割合を示す視認率を算出し、算出された前記視認率に基づいて重み係数を算出する重み係数算出部と、前記重み係数算出部によって算出された前記重み係数を用いた計算に基づいて、前記特徴点の3次元座標の座標値を含むパラメータの値を推定するパラメータ推定部と、を備えるパラメータ推定装置である。
【0015】
また、本発明の一態様は、同一の被写体が互いに異なる位置から複数のカメラで撮像された各々の画像における、前記被写体の同一の特徴点の2次元座標が互いに対応付けられたデータを示す被写体姿勢群データを取得する取得ステップと、前記取得ステップにおいて取得された前記被写体姿勢群データに基づいて、前記特徴点の領域のうち前記特徴点以外の領域によって遮蔽されていない領域の割合を示す視認率を算出し、算出された前記視認率に基づいて重み係数を算出する重み係数算出ステップと、前記重み係数算出ステップにおいて算出された前記重み係数を用いた計算に基づいて、前記特徴点の3次元座標の座標値を含むパラメータの値を推定するパラメータ推定ステップと、を有するパラメータ推定方法である。
【0016】
また、本発明の一態様は、上記のパラメータ推定装置としてコンピュータを機能させるためのパラメータ推定プログラムである。
【発明の効果】
【0017】
本発明により、本発明によれば、複数台のカメラで撮像された画像からそれぞれ検出された特徴点の2次元座標に基づいてパラメータ群を推定する技術において、より推定精度を向上させることが可能になる。
【図面の簡単な説明】
【0018】
図1】本発明の第1の実施形態における被写体3次元再構成装置100の全体構成を示すブロック図である。
図2】本発明の第1の実施形態における被写体3次元再構成装置100の動作を示すフローチャートである。
図3】本発明の第1の実施形態における被写体3次元再構成装置100の最適化部102の機能構成を示すブロック図である。
図4】人物の骨格等における特徴点の接続関係の一例を示す図である。
図5】画面内占有率に基づいて重み係数を導出する方法を説明するための図である。
図6】本発明の第1の実施形態における被写体3次元再構成装置100の最適化部102の動作を示すフローチャートである。
図7】本発明の第2の実施形態における被写体3次元再構成装置100aの全体構成を示すブロック図である。
図8】本発明の第2の実施形態における被写体3次元再構成装置100aの動作を示すフローチャートである。
図9】本発明の第2の実施形態における被写体3次元再構成装置100aの最適化部102aの機能構成を示すブロック図である。
図10】自己遮蔽に対して視認率に基づいて重み係数を導出する方法を説明するための図である。
図11】他者による遮蔽に対して視認率に基づいて重み係数を導出する方法を説明するための図である。
図12】本発明の第2の実施形態における被写体3次元再構成装置100の最適化部102aの動作を示すフローチャートである。
図13】本発明の第1の実施形態~第3の実施形態における被写体3次元再構成装置のハードウェア構成の一例を示すブロック図である。
図14】Bundle Adjustmentの概要を説明するための模式図である。
図15】画面内における被写体の大きさの違いと2次元推定誤差及び3次元推定誤差を説明するための図である。
図16】他者による遮蔽による2次元座標の推定精度低下について説明するための図である。
【発明を実施するための形態】
【0019】
以下、本発明のパラメータ推定装置、パラメータ推定方法及びパラメータ推定プログラムの実施形態について、図面を参照しながら説明する。
【0020】
<第1の実施形態>
以下、本発明の第1の実施形態における被写体3次元再構成装置100について説明する。なお、以下に説明する被写体3次元再構成装置100は、本発明のパラメータ推定装置の実施形態の一例であり、本発明は必ずしも以下の被写体3次元再構成装置100の構成に限定されるものではない。
【0021】
[被写体3次元再構成装置の構成]
以下、被写体3次元再構成装置100の全体構成について説明する。図1は、本発明の第1の実施形態における被写体3次元再構成装置100の全体構成を示すブロック図である。図1に示されるように、被写体3次元再構成装置100は、カメラ間対応付け部101と、最適化部102と、を含んで構成される。なお、図1に示される被写体3次元再構成装置100において、最適化部102の構成が、従来の一般的な被写体3次元再構成装置と異なる構成を有しており、その他の構成については、従来の被写体3次元再構成装置の構成と同様である。
【0022】
カメラ間対応付け部101は、外部の装置(不図示)から出力される被写体姿勢群データの入力を受け付ける。ここでいう被写体姿勢群データとは、被写体である人物が複数のカメラによって互いに異なる位置から同時に撮像されたそれぞれの画像から生成されるデータである。被写体姿勢群データには、例えばOpenPose及びPersonLab等に代表される2次元姿勢推定技術によって検出された、それぞれの画像における、被写体である人物の関節や目、鼻、耳等の位置を示すデータが含まれる。
カメラ間対応付け部101は、入力された被写体姿勢群データに基づく、それぞれの画像における被写体である人物の関節や目、鼻、耳等の位置を、特徴点として認識する。カメラ間対応付け部101は、互いに異なるカメラで同時に撮像された画像における同一人物の同一部位の特徴点どうし(例えば、右肘の位置を示す特徴点どうし、あるいは左膝の位置を示す特徴点どうし等)を対応付ける。以下、これらの特徴点が対応付けられたデータを、「カメラ間対応付け済み被写体姿勢群データ」という。カメラ間対応付け部101は、カメラ間対応付け済み被写体姿勢群データを生成し、最適化部102へ出力する。
【0023】
最適化部102は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データの入力を受け付ける。最適化部102は、カメラ間対応付け済み被写体姿勢群データに基づく特徴点を用いてBundle Adjustmentを実行し、パラメータ群を最適化する。ここでいうパラメータ群とは、元の画像を撮像した各カメラのカメラパラメータの値、及び各特徴点の3次元座標である。また、カメラパラメータとは、例えば、カメラの位置、撮像方向、回転角、視野角、焦点距離、解像度、及び歪み等である。
【0024】
最適化部102は、最適化されたパラメータ群を外部の装置(不図示)へ出力する。ここでいう最適化されたパラメータ群とは、特徴点の実際の3次元座標と推定された3次元座標との差(再投影誤差)の平均二乗誤差を最小化するという目的に対して最適化されたパラメータ群である。
【0025】
なお、カメラ間対応付け部101は、外部の装置に備えられていてもよい。すなわち、カメラ間対応付け済み被写体姿勢群データが外部の装置(不図示)において生成され、被写体3次元再構成装置100は、当該カメラ間対応付け済み被写体姿勢群データを外部の装置から取得する構成であってもよい。
【0026】
[被写体3次元再構成装置の動作]
以下、被写体3次元再構成装置100の動作の一例について説明する。図2は、本発明の第1の実施形態における被写体3次元再構成装置100の動作を示すフローチャートである。本フローチャートは、外部の装置から出力された被写体姿勢群データが被写体3次元再構成装置100に入力された際に開始される。
【0027】
被写体3次元再構成装置100のカメラ間対応付け部101は、外部の装置から出力される被写体姿勢群データの入力を受け付ける。カメラ間対応付け部101は、入力された被写体姿勢群データに基づく、それぞれの画像における被写体である人物の関節や目、鼻、耳等の位置を、特徴点として認識する。カメラ間対応付け部101は、互いに異なるカメラで同時に撮像された画像における同一人物の同一部位の特徴点どうしを対応付ける(ステップS101)。カメラ間対応付け部101は、カメラ間対応付け済み被写体姿勢群データを生成し、最適化部102へ出力する。
【0028】
最適化部102は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データの入力を受け付ける。最適化部102は、カメラ間対応付け済み被写体姿勢群データに基づく特徴点を用いてBundle Adjustmentを実行し、パラメータ群を最適化する(ステップS102)。最適化部102は、最適化されたパラメータ群を外部の装置へ出力する。以上で、図2のフローチャートが示す被写体3次元再構成装置100の動作が終了する。
【0029】
[最適化部の構成]
以下、最適化部102の構成について更に詳しく説明する。図3は、本発明の第1の実施形態における被写体3次元再構成装置100の最適化部102の機能構成を示すブロック図である。図3に示されるように、最適化部102は、パラメータ初期化部1021と、重み係数初期化部1022と、パラメータ最適化部1023と、被写体姿勢再投影部1024と、重み係数算出部1025とを含んで構成される。
【0030】
なお、図3に示される最適化部102において、重み係数算出部1025が、カメラ別及び特徴点別に導出された特徴点の、以下に説明する、画面内占有率に基づいて重み係数を算出する構成、及び、パラメータ最適化部1023が、算出された重み係数を用いてBundle Adjustmentのコスト関数に重み付け計算を付与する構成が従来技術と異なる構成であり、その他の構成については従来の被写体3次元再構成装置の最適化部の構成と同様である。
【0031】
パラメータ初期化部1021は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。パラメータ初期化部1021は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、カメラごとの各カメラパラメータ、及び、特徴点ごとの3次元座標を初期化する。すなわち、パラメータ初期化部1021は、「カメラ台数×カメラパラメータ数+特徴点数×3次元座標」のパラメータを初期化する。パラメータ初期化部1021は、初期化されたパラメータ群をパラメータ最適化部1023へ出力する。
【0032】
重み係数初期化部1022は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。重み係数初期化部1022は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、カメラごと及び特徴点ごとの重み係数を初期化する。すなわち、重み係数初期化部1022は、「カメラ台数×特徴点数」の重み係数を初期化する。重み係数初期化部1022は、初期化された重み係数群をパラメータ最適化部1023へ出力する。
【0033】
パラメータ最適化部1023は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データ、パラメータ初期化部1021から出力されたパラメータ群、及び、重み係数初期化部1022又は重み係数算出部1025から出力された重み係数群を取得する。パラメータ最適化部1023は、取得されたカメラ間対応付け済み被写体姿勢群データ及び重み係数群に基づいてパラメータ群を更新する。パラメータ最適化部1023は、更新されたパラメータ群を被写体姿勢再投影部1024又は外部の装置(不図示)へ出力する。
【0034】
被写体姿勢再投影部1024は、パラメータ最適化部1023から出力された更新されたパラメータ群を取得する。被写体姿勢再投影部1024は、各カメラのスクリーン上に各特徴点の3次元座標を投影する。被写体姿勢再投影部1024は、互いに接続される特徴点間を例えば所定の太さを有する線によって接続し、カメラ別及び被写体別のシルエットを画像生成する。被写体姿勢再投影部1024は、生成されたカメラ及び被写体別シルエット群を重み係数算出部1025へ出力する。
【0035】
重み係数算出部1025は、被写体姿勢再投影部1024から出力されたカメラ別及び被写体別シルエット群を取得する。重み係数算出部1025は、取得されたカメラ別及び被写体別シルエット群に基づくシルエットから、各特徴点の画面内占有率を算出し、重み係数を算出する。重み係数算出部1025は、算出されたカメラごと及び特徴点ごとの(すなわち、カメラ台数×特徴点数の個数の重み係数からなる)重み係数群をパラメータ最適化部1023へ出力する。
【0036】
パラメータ最適化部1023は、重み係数算出部1025から出力された重み係数群を取得した場合、当該重み係数群と、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データとに基づいてパラメータ群を更新する。最適化部102は、上記のパラメータ群を更新させる反復計算を、所定の回数行う。あるいは、最適化部102は、上記のパラメータ群を更新させる反復計算を、当該パラメータ群の値が収束するまで行う。パラメータ最適化部1023は、反復計算が完了すると、更新されたパラメータ群を最適化されたパラメータ群とし、当該パラメータ群を外部の装置(不図示)へ出力する。
【0037】
更に具体的には、例えば、Bundle Adjustmentにおける反復計算時に、被写体姿勢再投影部1024は、反復計算の各ステップにおける最適化過程の各カメラパラメータと各特徴点の3次元座標を用いて、各カメラのスクリーン上に再投影を行う。重み係数算出部1025は、カメラ解像度に対する当該特徴点の画面内占有率(例えば、カメラの画素数に対する特徴点のシルエットの画素数の比率)を算出する。重み係数算出部1025は、画面内占有率に基づく重み係数を導出する。パラメータ最適化部1023は、当該重み係数をコスト関数に組み込んで反復計算を行う。これにより、第1の実施形態における被写体3次元再構成装置100は、画面内に小さく映る被写体に重畳しやすいランダムノイズを抑制することができる。
【0038】
被写体姿勢再投影部1024は、各カメラのスクリーン上に再投影を行う際、特徴点を点として投影するだけでなく、例えば図4に示されるような特徴点どうしの接続関係(人物の骨格等)を考慮して、互いに接続される特徴点間の線分を、幅を持つ線分や円等で描画する。被写体姿勢再投影部1024は、幅を持つ線分や円等によって、被写体の特徴点の周辺の形状にフィットするようなシルエットを描画する。
【0039】
重み係数算出部1025は、例えば図5に示されるように、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分を一定の内分比率で打ち切った図形を部分シルエットとして生成する。例えば図5には、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分の中央の位置で線分が打ち切られた場合の部分シルエットが示されている。重み係数算出部1025は、カメラの画素数に対する部分シルエットの画素数(あるいは、スクリーン全体に対する部分シルエットの面積比)を算出することにより、特徴点の(シルエットの)画面内占有率を導出する。
【0040】
画面内占有率は、画面内に小さく映る被写体の特徴点ほどより小さな値となり、画面内に大きく映る被写体の特徴点ほどより大きな値となる。重み係数算出部1025は、例えば、画面内占有率の値を重み係数として用いる。例えば、画面内占有率vi,jは、以下の(2)式のように表すことができる。
【0041】
【数2】
【0042】
ここで、si,jは部分シルエットの画素数(又は面積)を表し、Sはカメラの画素数(又はスクリーンの面積)を表す。重み係数wi,jは、以下の(3)式の関数のように表すことができる。
【0043】
【数3】
【0044】
関数w(v)は、以下の(4)式のように表すことができる。
【0045】
【数4】
【0046】
なお、重み係数算出部1025は、画面占有率が所定の値より大きい場合には、重み係数を制限するようにしてもよい。この場合、関数w(v)は、例えば以下の(5)式のように表すことができる。
【0047】
【数5】
【0048】
上記の重み係数が組み込まれた、第1の実施形態におけるBundle Adjustmentのコスト関数は、以下の(6)式のように表される。
【0049】
【数6】
【0050】
ここで、Wi,jは重み係数である。なお、(1)式と同様に、(2)式において、関数F(p|f,r,d,R,t)は、特徴点の3次元座標pをカメラjのスクリーンに投影する関数である。ここで、f,r,d,R,tは、カメラjのカメラパラメータである。具体的には、fはカメラ焦点距離,rはカメラ解像度,dはカメラ歪み,Rはカメラ回転角,tはカメラ位置である。
【0051】
[最適化部の動作]
以下、最適化部102の動作の一例について更に詳しく説明する。図6は、本発明の第1の実施形態における被写体3次元再構成装置100の最適化部102の動作を示すフローチャートである。本フローチャートが示す動作は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データが最適化部102に入力された際に開始される。
【0052】
パラメータ初期化部1021は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。パラメータ初期化部1021は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、「カメラ台数×カメラパラメータ数+特徴点数×3次元座標」のパラメータを初期化する(ステップS201)。パラメータ初期化部1021は、初期化されたパラメータ群をパラメータ最適化部1023へ出力する。
【0053】
重み係数初期化部1022は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。重み係数初期化部1022は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、「カメラ台数×特徴点数重み係数」を、例えば1.0の値にすることで初期化する(ステップS202)。なお、この初期化は重み係数群を正規化することを目的としており、初期化される値は、1.0に限られるものではない。重み係数初期化部1022は、初期化された重み係数群をパラメータ最適化部1023へ出力する。
【0054】
パラメータ最適化部1023は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データ、パラメータ初期化部1021から出力されたパラメータ群、及び、重み係数初期化部1022又は重み係数算出部1025から出力された重み係数群を取得する。パラメータ最適化部1023は、取得されたカメラ間対応付け済み被写体姿勢群データ及び重み係数群に基づいてパラメータ群を更新する。
【0055】
ここで、パラメータ最適化部1023は、所定のコスト関数(例えば、前述の(6)式で表されるコスト関数)を用いてコストを計算し、コストを最小化させるようにパラメータ群を更新する。このとき、例えば、パラメータ最適化部1023は、パラメータ群の更新回数をカウントする。又は、例えば、パラメータ最適化部1023は、パラメータ群の更新前後の絶対誤差の最大値を計算する(ステップS203)。
【0056】
パラメータ群の更新回数が所定の回数に満たない場合、又は、パラメータ群の更新前後の絶対誤差の最大値が所定の値より大きい場合(ステップS204・NO)、パラメータ最適化部1023は、更新されたパラメータ群を被写体姿勢再投影部1024へ出力する。被写体姿勢再投影部1024は、パラメータ最適化部1023から出力された最適化されたパラメータ群を取得する。被写体姿勢再投影部1024は、各カメラの(仮想的な)スクリーン上に各特徴点の3次元座標を投影する。被写体姿勢再投影部1024は、互いに接続された特徴点間を例えば所定の太さを有する線によって接続し、カメラ別及び被写体別のシルエットを生成する(ステップS205)。被写体姿勢再投影部1024は、生成されたカメラ及び被写体別シルエット群を重み係数算出部1025へ出力する。
【0057】
重み係数算出部1025は、被写体姿勢再投影部1024から出力されたカメラ別及び被写体別シルエット群を取得する。重み係数算出部1025は、取得されたカメラ別及び被写体別シルエット群に基づくシルエットから、各特徴点の画面内占有率を算出し、当該画面内占有率に基づいて、カメラ別及び特徴点別に重み係数を算出する(ステップS206)。重み係数算出部1025は、算出された、カメラ台数×特徴点数の重み係数からなる重み係数群をパラメータ最適化部1023へ出力する。そして、ステップS203の処理に戻り、パラメータ群の更新を繰り返す。
【0058】
一方、パラメータ群の更新回数が所定の回数に達した場合、又は、パラメータ群の更新前後の絶対誤差の最大値が所定の値以下であった場合(ステップS204・YES)、パラメータ最適化部1023は、最適化されたパラメータ群を外部の装置(不図示)へ出力する。以上で図6のフローチャートが示す最適化部102の動作が終了する。
【0059】
なお、重み係数算出部1025は、ステップS206の処理において重み係数群を算出する場合、前述のパラメータ群の更新前後の絶対誤差を参照し、当該絶対誤差の値に応じて重み係数を調整するようにしてもよい。例えば、パラメータ群の更新前後の絶対誤差が比較的大きい場合には、各パラメータの最適化が十分でないことが考えられる。このような、不確定要素が高い段階で重み係数を考慮すると、意図しない座標に収束する可能性がある。よって、重み係数算出部1025は、パラメータ群の更新前後の絶対誤差がある程度小さくなってから(例えば、所定の値以上になってから)重み係数群を算出することが望ましい。
【0060】
なお、Bundle Adjustmentは、カメラパラメータ群と特徴点の3次元座標群との双方を同時に最適化することができるが、特徴点の3次元座標群のみを最適化するような構成であってもよい。すなわち、各カメラのカメラパラメータ群の値が既知であり、特徴点の3次元座標群のみを最適化するような構成であってもよい。この場合、被写体3次元再構成装置100は、外部の装置(不図示)からカメラ別のパラメータ群を取得する。そして、パラメータ初期化部1021及びパラメータ最適化部1023は、取得された既知のカメラパラメータ群を用いて処理を行う。
【0061】
なお、非特許文献4には、複数の視点方向から重ね合わせたPart Confidence MAP(PCM)の最大値を人物の関節の座標とする手法が提案されている。この手法においても、非特許文献4に記載の以下の(7)式及び(8)式を、それぞれ以下の(9)式及び(10)式のように変更することによって、画面内占有率を考慮した最適化を行う構成とすることができる。なお、前述の各式とは異なり、以下の(9)式においては重み係数を表す変数としてxの文字を用いている。
【0062】
【数7】
【0063】
【数8】
【0064】
【数9】
【0065】
【数10】
【0066】
以上説明したように、本発明の第1の実施形態における被写体3次元再構成装置100は、Bundle Adjustmentにおける最適化過程の反復計算時において、反復計算の各ステップにおける各カメラパラメータと各特徴点の3次元座標とを用いて、各カメラのスクリーン上に再投影を行う。被写体3次元再構成装置100は、各カメラのスクリーン上に再投影を行う際には、被写体別に特徴点を点として投影するだけでなく、例えば図4に示されるように特徴点の接続関係を考慮して、幅を持つ線分や円によって被写体の形状にフィットするシルエットを描画する。被写体3次元再構成装置100は、例えば図5に示されるように対象とする特徴点から当該特徴点に接続する他の特徴点までの線分の中央までを対象とした部分シルエットを生成する。被写体3次元再構成装置100は、カメラ画素数に対する部分シルエットの画素数の比率(あるいは、スクリーン全体に対する部分シルエットの面積比)によって画面内占有率を算出する。被写体3次元再構成装置100は、算出された画面内占有率に基づいて重み係数を導出し、所定のコスト関数に組み込んで反復計算を行う。
【0067】
このような構成を備えることで、本発明の第1の実施形態における被写体3次元再構成装置100は、画面内において相対的に小さく写っている被写体に重畳しやすいランダムノイズを抑制することができる。よって、被写体3次元再構成装置100は、複数台のカメラで撮像された画像からそれぞれ検出された特徴点の2次元座標に基づいてパラメータ群を推定する技術において、より推定精度を向上させることができる。
【0068】
<第2の実施形態>
以下、本発明の第2の実施形態における被写体3次元再構成装置100aについて説明する。なお、以下に説明する被写体3次元再構成装置100aは、本発明のパラメータ推定装置の実施形態の一例であり、本発明は必ずしも以下の被写体3次元再構成装置100aの構成に限定されるものではない。
【0069】
[被写体3次元再構成装置の構成]
以下、被写体3次元再構成装置100aの全体構成について説明する。図7は、本発明の第2の実施形態における被写体3次元再構成装置100aの全体構成を示すブロック図である。図7に示されるように、被写体3次元再構成装置100aは、カメラ間対応付け部101と、最適化部102aと、を含んで構成される。なお、図7に示される被写体3次元再構成装置100aにおいて、最適化部102aの構成が、従来の一般的な被写体3次元再構成装置と異なる構成を有しており、その他の構成については、従来の被写体3次元再構成装置の構成と同様である。
【0070】
カメラ間対応付け部101は、外部の装置(不図示)から出力される被写体姿勢群データの入力を受け付ける。ここでいう被写体姿勢群データとは、被写体である人物が複数のカメラによって互いに異なる位置から同時に撮像されたそれぞれの画像から生成されるデータである。被写体姿勢群データには、例えばOpenPose及びPersonLab等に代表される2次元姿勢推定技術によって検出された、それぞれの画像における被写体である人物の関節や目、鼻、耳等の位置を示すデータが含まれる。
【0071】
カメラ間対応付け部101は、入力された被写体姿勢群データに基づく、それぞれの画像における被写体である人物の関節や目、鼻、耳等の位置を、特徴点として認識する。カメラ間対応付け部101は、互いに異なるカメラで同時に撮像された画像における同一人物の同一部位の特徴点どうし(例えば、右肘の位置を示す特徴点どうし、あるいは左膝の位置を示す特徴点どうし等)を対応付ける。カメラ間対応付け部101は、これらの特徴点が対応付けられたカメラ間対応付け済み被写体姿勢群データを生成し、最適化部102aへ出力する。
【0072】
最適化部102aは、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データの入力を受け付ける。最適化部102aは、カメラ間対応付け済み被写体姿勢群データに基づく特徴点を用いてBundle Adjustmentを実行し、パラメータ群を最適化する。ここでいうパラメータ群とは、元の画像を撮像した各カメラのカメラパラメータの値、及び各特徴点の3次元座標である。また、カメラパラメータとは、例えば、カメラの位置、撮像方向、回転角、視野角、焦点距離、解像度、及び歪み等である。最適化部102aは、最適化されたパラメータ群を外部の装置(不図示)へ出力する。ここでいう最適化されたパラメータ群とは、特徴点の実際の3次元座標と推定された3次元座標との差(再投影誤差)の平均二乗誤差を最小化するという目的に対して最適化されたパラメータ群である。
【0073】
なお、カメラ間対応付け部101は、外部の装置に備えられていてもよい。すなわち、カメラ間対応付け済み被写体姿勢群データが外部の装置(不図示)において生成され、被写体3次元再構成装置100aは、当該カメラ間対応付け済み被写体姿勢群データを外部の装置から取得する構成であってもよい。
【0074】
[被写体3次元再構成装置の動作]
以下、被写体3次元再構成装置100aの動作の一例について説明する。図8は、本発明の第2の実施形態における被写体3次元再構成装置100aの動作を示すフローチャートである。本フローチャートは、外部の装置から出力された被写体姿勢群データが被写体3次元再構成装置100aに入力された際に開始される。
【0075】
被写体3次元再構成装置100aのカメラ間対応付け部101は、外部の装置から出力される被写体姿勢群データの入力を受け付ける。カメラ間対応付け部101は、入力された被写体姿勢群データに基づく、それぞれの画像における被写体である人物の関節や目、鼻、耳等の位置を、特徴点として認識する。カメラ間対応付け部101は、互いに異なるカメラで同時に撮像された画像における同一人物の同一部位の特徴点どうしを対応付ける(ステップS301)。カメラ間対応付け部101は、カメラ間対応付け済み被写体姿勢群データを生成し、最適化部102aへ出力する。
【0076】
最適化部102aは、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データの入力を受け付ける。最適化部102aは、カメラ間対応付け済み被写体姿勢群データに基づく特徴点を用いてBundle Adjustmentを実行し、パラメータ群を最適化する(ステップS302)。最適化部102aは、最適化されたパラメータ群を外部の装置へ出力する。以上で、図8のフローチャートが示す被写体3次元再構成装置100aの動作が終了する。
【0077】
[最適化部の構成]
以下、最適化部102aの構成について更に詳しく説明する。図9は、本発明の第2の実施形態における被写体3次元再構成装置100aの最適化部102aの機能構成を示すブロック図である。図9に示されるように、最適化部102aは、パラメータ初期化部1021と、重み係数初期化部1022と、パラメータ最適化部1023aと、重み係数算出部1025aと、不可視領域包含部分シルエット導出部1026と、可視領域部分シルエット導出部1027とを含んで構成される。
【0078】
なお、図9に示される最適化部102aにおいて、重み係数算出部1025aが、カメラ別及び特徴点別に導出された特徴点の、以下に説明する、視認率に基づいて重み係数を算出する構成、及び、パラメータ最適化部1023aが、算出された重み係数を用いてBundle Adjustmentのコスト関数に重み付け計算を付与する構成が従来技術と異なる構成であり、その他の構成については従来の被写体3次元再構成装置の最適化部の構成と同様である。
【0079】
パラメータ初期化部1021は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。パラメータ初期化部1021は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、カメラ台数ごとの各カメラパラメータ、及び、特徴点ごとの3次元座標を初期化する。すなわち、パラメータ初期化部1021は、「カメラ台数×カメラパラメータ数+特徴点数×3次元座標」のパラメータを初期化する。パラメータ初期化部1021は、初期化されたパラメータ群をパラメータ最適化部1023aへ出力する。
【0080】
重み係数初期化部1022は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。重み係数初期化部1022は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、カメラごと及び特徴点ごとの重み係数を初期化する。すなわち、重み係数初期化部1022は、「カメラ台数×特徴点数」の重み係数を初期化する。重み係数初期化部1022は、初期化された重み係数群をパラメータ最適化部1023へ出力する。
【0081】
パラメータ最適化部1023aは、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データ、パラメータ初期化部1021から出力されたパラメータ群、及び、重み係数初期化部1022又は重み係数算出部1025aから出力された重み係数群を取得する。パラメータ最適化部1023aは、取得されたカメラ間対応付け済み被写体姿勢群データ及び重み係数群に基づいてパラメータ群を更新する。パラメータ最適化部1023aは、更新されたパラメータ群を不可視領域包含部分シルエット導出部1026及び可視領域部分シルエット導出部1027、又は、外部の装置(不図示)へ出力する。
【0082】
不可視領域包含部分シルエット導出部1026は、パラメータ最適化部1023aから出力された更新されたパラメータ群を取得する。不可視領域包含部分シルエット導出部1026は、各カメラのスクリーン上に各特徴点の3次元座標を投影する。不可視領域包含部分シルエット導出部1026は、互いに接続される特徴点間を例えば所定の太さを有する線によって接続し、カメラ別、被写体別、及び特徴点別のシルエットを画像生成する。
【0083】
そして、不可視領域包含部分シルエット導出部1026は、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分を一定の内分比率で(例えば当該線分の中央の位置で)打ち切った図形を部分シルエットとして生成する。不可視領域包含部分シルエット導出部1026によって生成される部分シルエットには、例えば手前側に写る人物などによる遮蔽によって視認不可能な被写体の部分も含まれる。不可視領域包含部分シルエット導出部1026は、生成された部分シルエットを、「カメラ別、被写体別及び特徴点別の不可視領域包含部分シルエット群」として重み係数算出部1025aへ出力する。
【0084】
可視領域部分シルエット導出部1027は、パラメータ最適化部1023aから出力された最適化されたパラメータ群を取得する。可視領域部分シルエット導出部1027は、各カメラのスクリーン上に各特徴点の3次元座標を再投影する。このとき、可視領域部分シルエット導出部1027は、各カメラのスクリーン上に、奥行きを考慮して遠方の特徴点から順に再投影を行う。そして、可視領域部分シルエット導出部1027は、互いに接続される特徴点間を例えば所定の太さを有する線によって接続し、カメラ別、被写体別及び特徴点別のシルエットを画像生成する。
【0085】
そして、可視領域部分シルエット導出部1027は、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分を一定の内分比率で(例えば当該線分の中央の位置で)打ち切った図形を部分シルエットとして生成する。可視領域部分シルエット導出部1027によって生成される部分シルエットには、例えば手前側に写る人物などによる遮蔽によって視認不可能な被写体の部分は含まれない。可視領域部分シルエット導出部1027は、可視領域のみの部分シルエットを「カメラ別、被写体別及び特徴点別の可視領域部分シルエット群」として重み係数算出部1025aへ出力する。
【0086】
重み係数算出部1025aは、不可視領域包含部分シルエット導出部1026から出力されたカメラ別、被写体別及び特徴点別の不可視領域包含部分シルエット群を取得する。また、重み係数算出部1025aは、可視領域部分シルエット導出部1027から出力されたカメラ別、被写体別及び特徴点別の可視領域部分シルエット群を取得する。重み係数算出部1025aは、取得されたカメラ別、被写体別及び特徴点別の不可視領域包含部分シルエット群に基づく部分シルエット、及び、カメラ別、被写体別及び特徴点別の可視領域部分シルエット群に基づく部分シルエットから、各特徴点の視認率を算出し、重み係数を算出する。重み係数算出部1025aは、算出されたカメラごと及び特徴点ごとの(すなわち、カメラ台数×特徴点数の個数の重み係数からなる)重み係数群をパラメータ最適化部1023aへ出力する。
【0087】
パラメータ最適化部1023aは、重み係数算出部1025aから出力された重み係数群を取得した場合、当該重み係数群と、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データとに基づいてパラメータ群を更新する。最適化部102aは、上記のパラメータ群を更新させる反復計算を、所定の回数行う。あるいは、最適化部102aは、上記のパラメータ群を更新させる反復計算を、当該パラメータ群の値が収束するまで行う。パラメータ最適化部1023aは、反復計算が完了すると、更新されたパラメータ群を最適化されたパラメータ群とし、当該パラメータ群を外部の装置(不図示)へ出力する。
【0088】
更に具体的には、例えば、Bundle Adjustmentにおける反復計算時に、不可視領域包含部分シルエット導出部1026及び可視領域部分シルエット導出部1027は、反復計算の各ステップにおける最適化過程の各カメラパラメータと各特徴点の3次元座標を用いて、各カメラのスクリーン上に再投影を行う。重み係数算出部1025aは、特徴点の視認率(すなわち、不可視領域包含部分シルエットに占める可視領域部分シルエットの比率)を算出する。重み係数算出部1025aは、視認率に基づく重み係数を導出する。パラメータ最適化部1023aは、当該重み係数をコスト関数に組み込んで反復計算を行う。これにより、第2の実施形態における被写体3次元再構成装置100aは、自己遮蔽や他者による遮蔽に基づくノイズを抑制することができる。
【0089】
不可視領域包含部分シルエット導出部1026及び可視領域部分シルエット導出部1027は、各カメラのスクリーン上に再投影を行う際、特徴点を点として投影するだけでなく、例えば図4に示されるような特徴点どうしの接続関係(人物の骨格等)を考慮して、互いに接続される特徴点間の線分を、幅を持つ線分や円等で描画する。不可視領域包含部分シルエット導出部1026及び可視領域部分シルエット導出部1027は、幅を持つ線分や円等によって、被写体の形状にフィットするシルエットを描画する。
【0090】
重み係数算出部1025aは、例えば図10及び図11に示されるように、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分を一定の内分比率で打ち切った図形を部分シルエットとして生成する。例えば図10及び図11には、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分の中央の位置で線分が打ち切られた場合の部分シルエットが示されている。
【0091】
図10は、自己遮蔽が生じる場合について示した図である。図10には、2人の人物が写った画像が例示されている。図10において、画像の左寄りに写った人物の右股関節の位置にあたる特徴点jの部分シルエットの一部は、当該人物の左大腿部の位置にあたる特徴点jの部分シルエットによって遮蔽されている状態である。
【0092】
図11は、他者による遮蔽が生じる場合について示した図である。図10には、2人の人物が写った画像が例示されている。画像の左寄りに写った人物は、画像の右寄りに写った人物より(撮像したカメラの位置から見て)手前側に位置している。そのため、図10に示されるように、右側の人物の右肘の位置にあたる特徴点jの部分シルエットの一部は、左側の人物の拳の位置にあたる特徴点jの部分シルエットによって遮蔽されている状態である。
【0093】
重み係数算出部1025aは、各特徴点について、不可視領域を含む部分シルエットの画素数に占める可視領域の部分シルエットの画素数の比率(又は不可視領域を含む部分シルエットに占める可視領域の部分シルエットの面積比)を算出することにより、各特徴点の視認率を導出する。
【0094】
視認率は、自己遮蔽又は他者による遮蔽の領域の割合が大きいほどより小さな値となり、自己遮蔽又は他者による遮蔽の領域の割合が小さいほどより大きな値となる。重み係数算出部1025aは、例えば、視認率の値を重み係数として用いる。例えば、視認率vi,jは、以下の(11)式のように表すことができる。
【0095】
【数11】
【0096】
ここで、si,jは視認可能な部分シルエットの画素数(又は面積)を表し、Sは視認不可能な部分を含む部分シルエット全体の画素数(又は面積)を表す。重み係数wi,jは、以下の(12)式の関数のように表すことができる。
【0097】
【数12】
【0098】
関数w(v)は、以下の(13)式のように表すことができる。
【0099】
【数13】
【0100】
なお、重み係数算出部1025は、視認率が所定の値より大きい場合には、重み係数を制限するようにしてもよい。この場合、関数w(v)は、例えば以下の(14)式のように表すことができる。
【0101】
【数14】
【0102】
上記の重み係数が組み込まれた、第2の実施形態におけるBundle Adjustmentのコスト関数は、例えば、以下の(15)式のように表される。
【0103】
【数15】
【0104】
ここで、Wi,jは重み係数である。なお、(1)式と同様に、(15)式において、関数F(p|f,r,d,R,t)は、特徴点の3次元座標pをカメラjのスクリーンに投影する関数である。ここで、f,r,d,R,tは、カメラjのカメラパラメータである。具体的には、fはカメラ焦点距離,rはカメラ解像度,dはカメラ歪み,Rはカメラ回転角,tはカメラ位置である。
【0105】
[最適化部の動作]
以下、最適化部102の動作の一例について更に詳しく説明する。図12は、本発明の第2の実施形態における被写体3次元再構成装置100aの最適化部102aの動作を示すフローチャートである。本フローチャートが示す動作は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データが最適化部102aに入力された際に開始される。
【0106】
パラメータ初期化部1021は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。パラメータ初期化部1021は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、「カメラ台数×カメラパラメータ数+特徴点数×3次元座標」のパラメータを初期化する(ステップS401)。パラメータ初期化部1021は、初期化されたパラメータ群をパラメータ最適化部1023aへ出力する。
【0107】
重み係数初期化部1022は、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データを取得する。重み係数初期化部1022は、取得されたカメラ間対応付け済み被写体姿勢群データに基づいて、「カメラ台数×特徴点数重み係数」を、例えば1.0の値にすることで初期化する(ステップS402)。なお、この初期化は重み係数群を正規化することを目的としており、初期化される値は、1.0に限られるものではない。重み係数初期化部1022は、初期化された重み係数群をパラメータ最適化部1023aへ出力する。
【0108】
パラメータ最適化部1023aは、カメラ間対応付け部101から出力されたカメラ間対応付け済み被写体姿勢群データ、パラメータ初期化部1021から出力されたパラメータ群、及び、重み係数初期化部1022又は重み係数算出部1025aから出力された重み係数群を取得する。パラメータ最適化部1023aは、取得されたカメラ間対応付け済み被写体姿勢群データ及び重み係数群に基づいてパラメータ群を更新する。
【0109】
ここで、パラメータ最適化部1023aは、所定のコスト関数(例えば、前述の(15)式で表されるコスト関数)を用いてコストを計算し、コストを最小化させるようにパラメータ群を更新する。このとき、例えば、パラメータ最適化部1023aは、パラメータ群の更新回数をカウントする。又は、例えば、パラメータ最適化部1023aは、パラメータ群の更新前後の絶対誤差の最大値を計算する(ステップS403)。
【0110】
パラメータ群の更新回数が所定の回数に満たない場合、又は、パラメータ群の更新前後の絶対誤差の最大値が所定の値より大きい場合(ステップS404・NO)、パラメータ最適化部1023aは、更新されたパラメータ群を、不可視領域包含部分シルエット導出部1026及び可視領域部分シルエット導出部1027へ出力する。
【0111】
不可視領域包含部分シルエット導出部1026は、パラメータ最適化部1023aから出力された更新されたパラメータ群を取得する。不可視領域包含部分シルエット導出部1026は、各カメラに対して、各特徴点を再投影する。不可視領域包含部分シルエット導出部1026は、更新されたパラメータ群に基づいて、各カメラのスクリーン上に各特徴点の3次元座標を投影する。不可視領域包含部分シルエット導出部1026は、互いに接続される特徴点間を例えば所定の太さを有する線によって接続し、カメラ別、被写体別、及び特徴点別のシルエットを画像生成する。そして、不可視領域包含部分シルエット導出部1026は、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分を一定の内分比率で(例えば当該線分の中央の位置で)打ち切った図形を部分シルエットとして生成する。
【0112】
可視領域部分シルエット導出部1027は、パラメータ最適化部1023aから出力された更新されたパラメータ群を取得する。可視領域部分シルエット導出部1027は、各カメラに対して、各特徴点を、奥行きを考慮して遠方の特徴点から順に再投影する。可視領域部分シルエット導出部1027は、更新されたパラメータ群に基づいて、各カメラのスクリーン上に各特徴点の3次元座標を投影する。そして、可視領域部分シルエット導出部1027は、互いに接続される特徴点間を例えば所定の太さを有する線によって接続し、カメラ別、被写体別及び特徴点別のシルエットを画像生成する。そして、可視領域部分シルエット導出部1027は、対象とする特徴点と、当該特徴点と接続する他の特徴点とを繋ぐ線分を一定の内分比率で(例えば当該線分の中央の位置で)打ち切った図形を部分シルエットとして生成する(ステップS405)。
【0113】
不可視領域包含部分シルエット導出部1026は、生成された不可視領域を含む部分シルエットを、「カメラ別、被写体別及び特徴点別の不可視領域包含部分シルエット群」として重み係数算出部1025aへ出力する。また、可視領域部分シルエット導出部1027は、生成された可視領域のみの部分シルエットを「カメラ別、被写体別及び特徴点別の可視領域部分シルエット群」として重み係数算出部1025aへ出力する。
【0114】
重み係数算出部1025aは、不可視領域包含部分シルエット導出部1026から出力されたカメラ別、被写体別及び特徴点別の不可視領域包含部分シルエット群を取得する。また、重み係数算出部1025aは、可視領域部分シルエット導出部1027から出力されたカメラ別、被写体別及び特徴点別の可視領域部分シルエット群を取得する。重み係数算出部1025aは、取得されたカメラ別、被写体別及び特徴点別の不可視領域包含部分シルエット群に基づく部分シルエット及びカメラ別、被写体別及び特徴点別の可視領域部分シルエット群に基づく部分シルエットから、各特徴点の視認率を算出し、当該視認率に基づいてカメラ別及び特徴点別に重み係数を算出する(ステップS406)。重み係数算出部1025aは、算出された、カメラ台数×特徴点数の個数の重み係数からなる重み係数群をパラメータ最適化部1023aへ出力する。そして、ステップS403の処理に戻り、パラメータ群の更新を繰り返す。
【0115】
一方、パラメータ群の更新回数が所定の回数に達した場合、又は、パラメータ群の更新前後の絶対誤差の最大値が所定の値以下であった場合(ステップS404・YES)、パラメータ最適化部1023aは、最適化されたパラメータ群を外部の装置(不図示)へ出力する。以上で図12のフローチャートが示す最適化部102aの動作が終了する。
【0116】
なお、重み係数算出部1025aは、ステップS406の処理において重み係数群を算出する場合、前述のパラメータ群の更新前後の絶対誤差を参照し、当該絶対誤差の値に応じて重み係数を調整するようにしてもよい。例えば、パラメータ群の更新前後の絶対誤差が比較的大きい場合には、各パラメータの最適化が十分でないことが考えられる。このような、不確定要素が高い段階で重み係数を考慮すると、意図しない座標に収束する可能性がある。よって、重み係数算出部1025aは、パラメータ群の更新前後の絶対誤差がある程度小さくなってから(例えば、所定の値以上になってから)重み係数群を算出することが望ましい。
【0117】
なお、Bundle Adjustmentは、カメラパラメータ群と特徴点の3次元座標群との双方を同時に最適化することができるが、特徴点の3次元座標群のみを最適化するような構成であってもよい。すなわち、各カメラのカメラパラメータ群の値が既知であり、特徴点の3次元座標群のみを最適化するような構成であってもよい。この場合、被写体3次元再構成装置100aは、外部の装置(不図示)からカメラ別のパラメータ群を取得する。そして、パラメータ初期化部1021及びパラメータ最適化部1023aは、取得された既知のカメラパラメータ群を用いて処理を行う。
【0118】
以上説明したように、本発明の第2の実施形態における被写体3次元再構成装置100aは、Bundle Adjustmentにおける最適化過程の反復計算時において、反復計算の各ステップにおける各カメラパラメータと各特徴点の3次元座標とを用いて、各カメラのスクリーン上に、奥行きを考慮してソートした再投影を行う。被写体3次元再構成装置100aは、各カメラのスクリーン上に再投影を行う際には、被写体別に特徴点を点として投影するだけでなく、例えば図4に示されるように特徴点の接続関係を考慮して、幅を持つ線分や円によって被写体の形状にフィットするシルエットを描画する。被写体3次元再構成装置100aは、例えば図10及び図11に示されるように対象とする特徴点から当該特徴点に接続する他の特徴点までの線分の中央までを対象とした部分シルエットを生成する。被写体3次元再構成装置100aは、不可視領域を含む部分シルエット全体の画素数に対する可視領域の部分シルエットの画素数の比率(あるいは、不可視領域を含む部分シルエット全体に対する可視領域の部分シルエットの面積比)によって視認率を算出する。被写体3次元再構成装置100aは、算出された視認率に基づいて重み係数を導出し、所定のコスト関数に組み込んで反復計算を行う。
【0119】
このような構成を備えることで、本発明の第2の実施形態における被写体3次元再構成装置100aは、自己遮蔽や他者による遮蔽に基づくノイズを抑制することができる。よって、被写体3次元再構成装置100aは、複数台のカメラで撮像された画像からそれぞれ検出された特徴点の2次元座標に基づいてパラメータ群を推定する技術において、より推定精度を向上させることができる。
【0120】
<第3の実施形態>
以下、本発明の第3の実施形態における被写体3次元再構成装置について説明する。
【0121】
前述の第1の実施形態における被写体3次元再構成装置100は、カメラ別及び特徴点別に導出された特徴点の画面内占有率に基づいて算出された重み係数を用いてBundle Adjustmentのコスト関数に重み付け計算を付与する構成であった。また、前述の第2の実施形態における被写体3次元再構成装置100aは、カメラ別及び特徴点別に導出された特徴点の視認率に基づいて算出された重み係数を用いてBundle Adjustmentのコスト関数に重み付け計算を付与する構成であった。被写体3次元再構成装置が、これらの、画面内占有率に基づく重みづけ計算及び視認率に基づく重みづけ計算の双方を行うような構成であってもよい。
【0122】
例えば、被写体3次元再構成装置が、画面内占有率に基づく重みづけ計算を行った後に、視認率に基づく重みづけ計算をさらに行うような構成であってもよい。または、その逆に、被写体3次元再構成装置が、視認率に基づく重みづけ計算を行った後に、画面内占有率に基づく重みづけ計算をさらに行うような構成であってもよい。
【0123】
または、例えば、被写体3次元再構成装置が、画面内占有率に基づく重みづけ計算と視認率に基づく重みづけ計算とを平行して行い、両者の重みづけ計算の結果に基づいて反復計算を行うような構成であってもよい。例えば、被写体3次元再構成装置が、両者の重みづけ計算によってそれぞれ得られたパラメータ値の平均値を次の反復計算において用いるような構成であってもよい。
【0124】
以上説明したように、本発明の第3の実施形態における被写体3次元再構成装置は、Bundle Adjustmentにおける最適化過程の反復計算時において、反復計算の各ステップにおける各カメラパラメータと各特徴点の3次元座標とを用いて、各カメラのスクリーン上に、奥行きを考慮してソートした再投影を行う。被写体3次元再構成装置は、各カメラのスクリーン上に再投影を行う際には、被写体別に特徴点を点として投影するだけでなく、例えば図4に示されるように特徴点の接続関係を考慮して、幅を持つ線分や円によって被写体の形状にフィットするシルエットを描画する。被写体3次元再構成装置は、例えば図5図10及び図11に示されるように対象とする特徴点から当該特徴点に接続する他の特徴点までの線分の中央までを対象とした部分シルエットを生成する。被写体3次元再構成装置は、カメラ画素数に対する部分シルエットの画素数の比率(あるいは、スクリーン全体に対する部分シルエットの面積比)によって画面内占有率を算出する。また、被写体3次元再構成装置は、不可視領域を含む部分シルエット全体の画素数に対する可視領域の部分シルエットの画素数の比率(あるいは、不可視領域を含む部分シルエット全体に対する可視領域の部分シルエットの面積比)によって視認率を算出する。被写体3次元再構成装置は、算出された画面内占有率及び視認率に基づいて重み係数を導出し、所定のコスト関数に組み込んで反復計算を行う。
【0125】
このような構成を備えることで、本発明の第3の実施形態における被写体3次元再構成装置は、画面内において相対的に小さく写っている被写体に重畳しやすいランダムノイズを抑制することができる。また、このような構成を備えることで、本発明の第3の実施形態における被写体3次元再構成装置は、自己遮蔽や他者による遮蔽に基づくノイズを抑制することができる。よって、被写体3次元再構成装置は、複数台のカメラで撮像された画像からそれぞれ検出された特徴点の2次元座標に基づいてパラメータ群を推定する技術において、より推定精度を向上させることができる。
【0126】
以下に、第1の実施形態~第3の実施形態における被写体3次元再構成装置をコンピュータとソフトウェアプログラムとによって構成する場合のハードウェア構成例を示す。図13は、本発明の第1の実施形態~第3の実施形態における被写体3次元再構成装置のハードウェア構成の一例を示すブロック図である。図13に示されるように、被写体3次元再構成装置は、CPU(Central Processing Unit)10と、メモリ11と、データ記憶部12と、プログラム記憶装置13と、最適パラメータ群出力部15とがバスで接続された構成になっている。
【0127】
CPU10は、プログラムを実行する。メモリ11は、CPU10がアクセスするプログラムやデータが格納されるRAM(Random Access Memory)等の記憶媒体である。データ記憶部12は、各種入力データを記憶する。なお、データ記憶部12は、ディスク装置等による記憶部でもよい。プログラム記憶装置13は、前述の各実施形態における被写体の3次元再構成処理をCPU10に実行させるソフトウェアプログラムである、被写体の3次元再構成プログラム14を格納している。最適パラメータ群出力部15は、メモリ11にロードされた被写体の3次元再構成プログラム14をCPU10が実行することによって生成された最適化されたパラメータ群を、例えばネットワークを介して出力する。なお、最適パラメータ群出力部15は、例えばディスク装置等の、最適化されたパラメータ群を記憶する記憶部であってもよい。
【0128】
上述した実施形態によれば、パラメータ推定装置は、取得部と、重み係数算出部と、パラメータ推定部と、を備える。例えば、パラメータ推定装置は、実施形態における被写体3次元再構成装置100であり、取得部は、実施形態におけるパラメータ初期化部1021、重み係数初期化部1022及びパラメータ最適化部1023であり、重み係数算出部は、実施形態における重み係数算出部1025であり、パラメータ推定部は、実施形態におけるパラメータ最適化部1023である。
【0129】
上記の取得部は、同一の被写体が互いに異なる位置から複数のカメラで撮像された各々の画像における、被写体の同一の特徴点の2次元座標が互いに対応付けられたデータを示す被写体姿勢群データを取得する。例えば、複数のカメラは、実施形態におけるカメラj及びカメラj+1であり、被写体姿勢群データは、実施形態におけるカメラ間対応付け済み被写体姿勢群データである。
【0130】
上記の重み係数算出部は、取得部によって取得された被写体姿勢群データに基づいて、画像の領域全体に対して特徴点の領域が占める割合を示す画面内占有率を算出し、算出された画面内占有率に基づいて重み係数を算出する。例えば、画像の領域全体に対して特徴点の領域が占める割合は、実施形態におけるカメラの画素数に対する部分シルエットの画素数(あるいは、スクリーン全体に対する部分シルエットの面積比)である。
【0131】
上記のパラメータ推定部は、重み係数算出部によって算出された重み係数を用いた計算に基づいて、特徴点の3次元座標の座標値を含むパラメータの値を推定する。例えば、重み係数を用いた計算は、実施形態における(6)式によって表されるコスト関数を用いた反復計算であり、特徴点の3次元座標の座標値を含むパラメータの値は、実施形態における各カメラのカメラパラメータの値及び各特徴点の3次元座標からなるパラメータ群である。
【0132】
また、上記のパラメータ推定装置において、画面内占有率は、画像の画素数に対する、被写体の第1の特徴点と被写体の第2の特徴点との位置関係に基づいて描画されるシルエット図形の画素数の比率から算出されるものであってもよい。例えば、第1の特徴点は、実施形態における対象とする特徴点であり、第2の特徴点は、実施形態における対象とする特徴点と接続する他の特徴点である。
【0133】
また、上記のパラメータ推定装置において、シルエット図形は、第1の特徴点の位置から第1の特徴点と第2の特徴点とを結ぶ線分の所定の内分比率となる位置までの範囲の線分に、幅を持たせることによって生成された図形であってもよい。
【0134】
また、上記のパラメータ推定装置において、重み係数算出部は、特徴点の領域のうち特徴点以外の領域によって遮蔽されていない領域の割合を示す視認率をさらに用いて重み係数を算出するようにしてもよい。例えば、特徴点の領域は、実施形態における部分シルエット全体の領域であり、特徴点以外の領域によって遮蔽されていない領域は、実施形態における部分シルエットから不可視領域を除いた領域(すなわち、可視領域)である。
【0135】
また、上記のパラメータ推定装置において、パラメータは、カメラの外部パラメータ及びカメラの内部パラメータのうち少なくとも一つをさらに含んでいてもよい。
【0136】
また、上述した実施形態によれば、パラメータ推定装置は、取得部と、重み係数算出部と、パラメータ推定部と、を備える。例えば、パラメータ推定装置は、実施形態における被写体3次元再構成装置100aであり、取得部は、実施形態におけるパラメータ初期化部1021、重み係数初期化部1022及びパラメータ最適化部1023aであり、重み係数算出部は、実施形態における重み係数算出部1025aであり、パラメータ推定部は、実施形態におけるパラメータ最適化部1023aである。
【0137】
上記の取得部は、同一の被写体が互いに異なる位置から複数のカメラで撮像された各々の画像における、被写体の同一の特徴点の2次元座標が互いに対応付けられたデータを示す被写体姿勢群データを取得する。例えば、複数のカメラは、実施形態におけるカメラj及びカメラj+1であり、被写体姿勢群データは、実施形態におけるカメラ間対応付け済み被写体姿勢群データである。
【0138】
上記の重み係数算出部は、取得部によって取得された被写体姿勢群データに基づいて、特徴点の領域のうち特徴点以外の領域によって遮蔽されていない領域の割合を示す視認率を算出し、算出された視認率に基づいて重み係数を算出する。例えば、特徴点の領域は、実施形態における部分シルエット全体の領域であり、特徴点以外の領域によって遮蔽されていない領域は、実施形態における部分シルエットから不可視領域を除いた領域(すなわち、可視領域)である。
【0139】
上記のパラメータ推定部は、重み係数算出部によって算出された重み係数を用いた計算に基づいて、特徴点の3次元座標の座標値を含むパラメータの値を推定する。例えば、重み係数を用いた計算は、実施形態における(15)式によって表されるコスト関数を用いた反復計算であり、特徴点の3次元座標の座標値を含むパラメータの値は、実施形態における各カメラのカメラパラメータの値及び各特徴点の3次元座標からなるパラメータ群である。
【0140】
また、上記のパラメータ推定装置において、視認率は、被写体の第1の特徴点と被写体の第2の特徴点との位置関係に基づいて描画されるシルエット図形の画素数に対する、シルエット図形内の特徴点以外の領域によって遮蔽されていない領域の画素数の比率から算出されるものであってもよい。例えば、第1の特徴点は、実施形態における対象とする特徴点であり、第2の特徴点は、実施形態における対象とする特徴点と接続する他の特徴点である。
【0141】
また、上記のパラメータ推定装置において、シルエット図形は、第1の特徴点の位置から第1の特徴点と第2の特徴点とを結ぶ線分の所定の内分比率となる位置までの範囲の線分に、幅を持たせることによって生成された図形であってもよい。
【0142】
また、上記のパラメータ推定装置において、遮蔽されていない領域は、カメラのスクリーン上に奥行きを考慮して遠方の特徴点から順に再投影されることで、重複する領域が検出されることにより特定されるようにしてもよい。
【0143】
また、上記のパラメータ推定装置において、重み係数算出部は、画像の領域全体に対して特徴点の領域が占める割合を示す画面内占有率をさらに用いて重み係数を算出するようにしてもよい。例えば、画像の領域全体に対して特徴点の領域が占める割合は、実施形態におけるカメラの画素数に対する部分シルエットの画素数(あるいは、スクリーン全体に対する部分シルエットの面積比)である。
【0144】
また、上記のパラメータ推定装置において、パラメータは、カメラの外部パラメータ及びカメラの内部パラメータのうち少なくとも一つをさらに含んでいてもよい。
【0145】
上述した各実施形態における被写体3次元再構成装置をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
【0146】
以上、図面を参照して本発明の実施形態を説明してきたが、上記の実施形態は本発明の例示に過ぎず、本発明の具体的な構成が上記の実施形態に限定されるものではないことは明らかである。したがって、本発明の精神及び要旨を逸脱しない技術的範囲での構成要素の追加、省略、置換、その他の設計変更を行ってもよい。
【符号の説明】
【0147】
10…CPU、11…メモリ、12…データ記憶部、13…プログラム記憶装置、14…3次元再構成プログラム、15…最適パラメータ群出力部、100(100a)…被写体3次元再構成装置、101…カメラ間対応付け部、102(102a)…最適化部、1021…パラメータ初期化部、1022…重み係数初期化部、1023(1023a)…パラメータ最適化部、1024…被写体姿勢再投影部、1025(1025a)…重み係数算出部、1026…不可視領域包含部分シルエット導出部、1027…可視領域部分シルエット導出部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16