(57)【要約】【課題】オクルージョン状態にあるオブジェクトの姿勢を、そのオブジェクトマスクに基づいてオブジェクトモデルで表現し、オブジェクトマスクおよびオブジェクトモデルの姿勢に基づいてオブジェクト領域を背景から分離し、かつオブジェクト領域を定量的な数値データで定義するオブジェクト分離装置、方法およびプログラムを提供する。【解決手段】オブジェクトの輪郭に基づいて頭部を検知し、オブジェクトマスクを抽出し[同図(a)，(b)]、オブジェクトを模したオブジェクトモデルを、頭部の位置、サイズを基準にしてオブジェクトマスクに投影し[同図(c)]、オブジェクトマスクに合わせてオブジェクトモデルの腕部および脚部の位置、姿勢およびサイズを調整し[同図(d)，(e)，(f)]、オブジェクトマスクおよびオブジェクトモデルの姿勢に基づいてオブジェクト領域を分離し、オブジェクト領域を定量的な数値データで定義する。【選択図】図２.
2019169069.tif 000002
【特許請求の範囲】
【請求項１】
フレーム画像からオブジェクト領域を分離するオブジェクト分離装置において、
オブジェクトマスクを生成する手段と、
オブジェクトマスクにおけるオブジェクトの頭部を推定する手段と、
オブジェクトを模したオブジェクトモデルを前記推定された頭部の数だけ構築する手段と、
各オブジェクトモデルの位置、姿勢およびサイズを、対応する各オブジェクトマスクに合わせて調整する手段と、
前記オブジェクトマスクおよびオブジェクトモデルに基づいて各オブジェクト領域を分離する手段とを具備したことを特徴とするオブジェクト分離装置。
【請求項２】
前記調整する手段は、オブジェクトモデルの姿勢をオブジェクトマスクのピクセル分布に基づいてオブジェクトの姿勢に調整することを特徴とする請求項１に記載のオブジェクト分離装置。
【請求項３】
前記オブジェクトモデルが、複数の身体パーツを複数の身体ジョイントで連結して構成されたことを特徴とする請求項１または２に記載のオブジェクト分離装置。
【請求項４】
前記オブジェクト領域を、前記オブジェクトモデルの身体パーツおよび身体ジョイントを含むデータで定義する領域定義手段をさらに具備したことを特徴とする請求項３に記載のオブジェクト分離装置。
【請求項５】
前記領域定義手段は、前記オブジェクト領域を、前記オブジェクトモデルの身体パーツおよび身体ジョイント、ならびにフレーム画像をオブジェクトマスクでトリミングした領域の画素集合で定義することを特徴とする請求項４に記載のオブジェクト分離装置。
【請求項６】
前記調整する手段は、
オブジェクトマスクの腕部を推定する手段と、
オブジェクトモデルの腕部を構成する身体パーツおよび身体ジョイントがオブジェクトマスクの腕部に適合するように、身体パーツおよび身体ジョイントの位置、角度およびサイズを調整する手段とを含むことを特徴とする請求項３ないし５のいずれかに記載のオブジェクト分離装置。
【請求項７】
前記調整する手段は、
オブジェクトマスクの脚部を推定する手段と、
オブジェクトモデルの脚部を構成する身体パーツおよび身体ジョイントがオブジェクトマスクの脚部に適合するように、身体パーツおよび身体ジョイントの位置、角度およびサイズを調整する手段とを含むことを特徴とする請求項３ないし６のいずれかに記載のオブジェクト分離装置。
【請求項８】
前記オブジェクトモデルの腕部が、上腕パーツおよび前腕パーツを肘ジョイントで連結して構成され、
前記調整する手段は、
オブジェクトマスクの肩部および手先を探索する手段を具備し、
オブジェクトモデルの肩ジョイントおよび前腕パーツの下端点が、それぞれオブジェクトマスクの肩部および手先と対応するように、前記上腕パーツおよび前腕パーツの位置、姿勢およびサイズならびに肘ジョイントの位置を調整することを特徴とする請求項６に記載のオブジェクト分離装置。
【請求項９】
前記オブジェクトモデルの脚部が大腿パーツおよび下腿パーツを膝ジョイントで連結して構成され、
前記調整する手段は、
オブジェクトマスクの臀部および足先を探索する手段を具備し、
オブジェクトモデルの臀部ジョイントおよび下腿パーツの下端点が、それぞれオブジェクトマスクの臀部および足先と対応するように、前記大腿パーツおよび下腿パーツの位置、姿勢およびサイズならびに膝ジョイントの位置を調整することを特徴とする請求項７に記載のオブジェクト分離装置。
【請求項１０】
各身体パーツのサイズの調整結果に基づいて他の身体パーツのサイズを調整する手段を更に具備したことを特徴とする請求項８または９に記載のオブジェクト分離装置。
【請求項１１】
前記各オブジェクト領域を分離する手段は、各オブジェクトモデルの身体ジョイントを初期ノードとするグラフカットにより各オブジェクト領域を分離することを特徴とする請求項３ないし１０のいずれかに記載のオブジェクト分離装置。
【請求項１２】
コンピュータがフレーム画像からオブジェクトを分離するオブジェクト分離方法において、
オブジェクトマスクを生成し、
オブジェクトマスクにおけるオブジェクトの頭部を推定し、
オブジェクトを模したオブジェクトモデルを前記推定された頭部の数だけ構築し、
各オブジェクトモデルの位置、姿勢およびサイズを、対応する各オブジェクトマスクに合わせて調整し、
前記オブジェクトマスクおよびオブジェクトモデルに基づいて各オブジェクト領域を分離することを特徴とするオブジェクト分離方法。
【請求項１３】
前記オブジェクトモデルが、複数の身体パーツを複数の身体ジョイントで連結して構成され、
前記各オブジェクト領域の分離が、各オブジェクトモデルの身体ジョイントを初期ノードとするグラフカットにより行われることを特徴とする請求項１２に記載のオブジェクト分離方法。
【請求項１４】
フレーム画像からオブジェクトを分離するオブジェクト分離プログラムにおいて、
オブジェクトマスクを生成する手順と、
オブジェクトマスクにおけるオブジェクトの頭部を推定する手順と、
オブジェクトを模したオブジェクトモデルを前記推定された頭部の数だけ構築する手順と、
各オブジェクトモデルの位置、姿勢およびサイズを、対応する各オブジェクトマスクに合わせて調整する手順と、
前記オブジェクトマスクおよびオブジェクトモデルに基づいて各オブジェクト領域を分離する手順と、をコンピュータに実行させるオブジェクト分離プログラム。
【請求項１５】
前記オブジェクトモデルが、複数の身体パーツを複数の身体ジョイントで連結して構成され、
前記各オブジェクト領域の分離が、各オブジェクトモデルの身体ジョイントを初期ノードとするグラフカットにより行われることを特徴とする請求項１４に記載のオブジェクト分離プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オブジェクト分離装置、方法およびプログラムに係り、特に、オブジェクトを模したオブジェクトモデルを用いてオブジェクトの姿勢を推定し、この推定結果に基づいてオブジェクト領域を背景から正確に分離するオブジェクト分離装置、方法およびプログラムに関する。
【背景技術】
【０００２】
自由視点のアプリケーションでは、ビルボードモデルを使用してオブジェクトをモデル化し、合成したカメラビュー内のオブジェクトテクスチャを決定する。自由視点でのビルボードモデルの問題は、合成された画像の視点が実際のカメラの視点と異なることに起因する。
【０００３】
例えば、合成された自由視点画像が、対象物の周りの４つのカメラ画像に基づいて生成される場合、それらの２つのカメラの間の仮想ビュー内の対象物のビルボードモデルは、スキューまたはストレッチ効果といった不自然な視界を生じさせる。
【０００４】
さらに、オブジェクトにオクルージョンが発生すると、合成されたビデオ内のオブジェクトの正しい位置の決定に影響を及ぼしてしまう。これは、1つのビューから生成されたオブジェクトモデルにはオクルージョン状態のオブジェクトが含まれている可能性があるのに対して、別のビューからは２つの異なるモデルとしてオブジェクトが認識されるからである。
【０００５】
このような技術課題に対しては、いくつかの解決手段が考えられる。特許文献２に開示されているように、ポーズモデルを利用してマスクイメージからオブジェクトモデルを作成するである。
【０００６】
しかしながら、オクルージョンが発生していると、オブジェクトのポーズをマスク画像から直接生成することはできない。まず、オクルージョン状態にあるオブジェクト数を推定するための前処理方法が必要となる。そのためには、頭部の位置を推定し、この推定結果に基づいて頭部ごとにオブジェクトを推定することである。
【０００７】
非特許文献１，２には、訓練データがセマンティックイメージの形式で準備されている畳み込みニューラルネットワークを利用する画像セグメンテーションの方法が開示されている。セマンティックイメージは、セグメンテーションの分類記述として「空」、「建物」、「車」、「人」、「猫」、「犬」などの異なるタイプのオブジェクトが利用されるオブジェクト記述の事前情報を含む。
【０００８】
非特許文献３，４には、同じセマンティック記述を有する領域を、個別にセグメント化された領域にさらにセグメント化するために、事前情報に基づいて、検出されたオブジェクトをセグメント化する技術が開示されている。各文献に開示された技術は、ディープニューラルネットワークを利用してデータセットを訓練し、入力パラメータに従って異なるオブジェクトに属するピクセルの部分を決定する。
【０００９】
非特許文献５は、身体部分の分類データを提供するために、ディープラーニングを利用することによって物体を自動的に検出し、その姿勢を生成する方法を提案している。このような分類によれば、各身体部分における特徴の親和性を分析することで、各身体部分間の正しい接続を決定することが可能になる。
【００１０】
非特許文献６は、画素とその近傍画素との間の類似値を分析することによって得られる画像エネルギーの差を計算することによって画像分割を行うグラフカット方法を提案している。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開2017-084043号公報
【特許文献２】特願2017-043077号
【特許文献３】特願2017-180155号
【非特許文献】
【００１２】
【非特許文献１】J. Long, E. Shelhamer, and T. Darrell, "Fully Convolutional Networks for Semantic Segmentation," IEEE Transactions on PAMI, vol. 39, no. 4, 2017.
【非特許文献２】V. Badrinarayanan, A. Kendall, and R. Cipolla, "SegNet: A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation," IEEE Transactions on PAMI, vol. 39, no. 12, 2017.
【非特許文献３】M. Bai and R. Urtasun, "Deep Watershed Transform for Instance Segmentation," ICCV 2017.
【非特許文献４】A. Arnab and P.H.S Torr, "Pixelwise Instance Segmentation with a Dynamically Instantiated Network," CVPR 2017.
【非特許文献５】Z. Cao, T. Simon, S.-E. Wei, and Y. Sheikh, "Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields," CVPR 2017.
【非特許文献６】Y. Boykov, O. Veksler, and R. Zabih, "Fast Approximate Energy Minimization via Graph Cuts," IEEE Transactions on PAMI, vol. 23, no. 11, 2001
【非特許文献７】H. Sabirin, H. Sankoh, and S. Naito, "Automatic Object Separation of Detected Objects in Free Viewpoint Application,"情報科学技術フォーラム講演論文集, 2015.
【発明の概要】
【発明が解決しようとする課題】
【００１３】
このように、カメラ画像から抽出したオブジェクトがオクルージョン状態にあると、オブジェクトごとにオブジェクトモデルを正確に構築することが困難となるため、各オブジェクトを正確に分離することができないという技術課題があった。
【００１４】
本発明の目的は、上記の技術課題を解決し、オクルージョン状態にあるオブジェクトの姿勢を、そのオブジェクトマスクに基づいてオブジェクトモデルで表現し、オブジェクトマスクおよびオブジェクトモデルの姿勢に基づいてオブジェクト領域を背景から分離し、かつオブジェクト領域を定量的な数値データで定義するオブジェクト分離装置、方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１５】
上記の目的を達成するために、本発明は、フレーム画像からオブジェクト領域を分離するオブジェクト分離装置において、以下の構成を具備した点に特徴がある。
【００１６】
(1) オブジェクトマスクを生成する手段と、オブジェクトマスクにおけるオブジェクトの頭部を推定する手段と、オブジェクトを模したオブジェクトモデルを前記推定された頭部の数だけ構築する手段と、各オブジェクトモデルの位置、姿勢およびサイズを、対応する各オブジェクトマスクに合わせて調整する手段と、前記オブジェクトマスクおよびオブジェクトモデルに基づいて各オブジェクト領域を分離する手段とを具備した。
【００１７】
(2) オブジェクトモデルは、複数の身体パーツを複数の身体ジョイントで連結して構成し、各オブジェクト領域を分離する手段は、各オブジェクトモデルの身体ジョイントを初期ノードとするグラフカットにより各オブジェクト領域を分離するようにした。
【００１８】
(3) オブジェクト領域を、オブジェクトモデルの身体パーツおよび身体ジョイントを含むデータで定義する領域定義手段をさらに設けた。
【発明の効果】
【００１９】
本発明によれば、以下のような効果が達成される。
【００２０】
(1) オブジェクトマスクにおけるオブジェクトの頭部を推定し、オブジェクトモデルを頭部の数だけ構築し、各オブジェクトモデルの位置、姿勢およびサイズを、対応する各オブジェクトマスクに合わせて調整し、オブジェクトマスクおよびオブジェクトモデルに基づいて各オブジェクト領域を分離するので、オブジェクト同士のオクルージョンにより身体の一部分が遮蔽されている場合でも、推定された頭の位置に応じて構築されるオブジェクトモデルに基づいて、遮蔽されている身体部分も推定できるようになり、オブジェクト領域を正確に分離できるようになる。
【００２１】
(2) オブジェクトモデルを複数の身体パーツおよび複数の身体ジョイントで構成し、各オブジェクト領域の分離は、各オブジェクトモデルの身体ジョイントを初期ノードとするグラフカットにより行われるので、オクルージョン状態にあるオブジェクトを正確に分離できるようになる。
【００２２】
(3) オブジェクト領域を、オブジェクトモデルの身体パーツおよび身体ジョイントを含むデータで定義するので、オブジェクト領域を定量的に表現できるようになる。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施形態に係るオブジェクト分離装置のブロック図である。
【図２】オブジェクトをフレーム画像から分離する過程を模式的に示した図である。
【図３】オブジェクトモデルの一例を示した図である。
【図４】オブジェクトモデルを構成する身体ジョイントBJの一覧を示した図である。
【図５】身体パーツPBの一覧および各身体パーツの長さ比を示した図である。
【図６】身体パーツBPと身体ジョイントBJとの連結条件を示した図である。
【図７】各身体ジョイント間の距離比の定義を示した図である。
【図８】オクルージョン状態にあるオブジェクトを分離する方法を示した図である。
【図９】オブジェクトモデルの腕部を調整する手順を示したフローチャートである。
【図１０】オブジェクトモデルの腕部が段階的に調整される様子を示した図である。
【図１１】オブジェクトの腕部と胴体との間にセルフオクルージョンが生じている場合の腕部の調整方法を示した図である。
【図１２】オブジェクトモデルの脚部を調整する手順を示したフローチャートである。
【図１３】オブジェクトモデルの脚部が段階的に調整される様子を示した図である。
【図１４】セルフオクルージョンの状態にある脚の調整方法を示した図である。
【図１５】オブジェクト領域で２人のオブジェクト間にオクルージョンが発生している場合の調整方法を示した図である。
【図１６】セルフオクルージョンの状態にある脚の調整方法を示した図である。
【図１７】身体ジョイントを初期ノードとしたグラフカット法によるオブジェクト分離方法を示した図である。
【図１８】オブジェクトモデルに基づいて陰影を削除する方法を示した図である。
【図１９】オブジェクト領域を定量的な数値データで定義する方法を示した図である。
【発明を実施するための形態】
【００２４】
以下、図面を参照して本発明の実施の形態について詳細に説明する。図１は、本発明の一実施形態に係るオブジェクト分離装置の主要部の構成を示したブロック図であり、ここでは、本発明の説明に不要な構成は図示を省略している。本発明のオブジェクト分離装置は、汎用のコンピュータに後述する各機能を実現するアプリケーション（プログラム）を実装して構成しても良いし、あるいはアプリケーションの一部がハードウェア化またはROM化された専用機や単能機として構成しても良い。
【００２５】
図２は、本発明のオブジェクト分離装置がフレーム画像からオブジェクを抽出し、そのマスクおよびモデルに基づいてオブジェクトをフレーム画像から分離する過程を模式的に示した図である。
【００２６】
オブジェクト検知部１は、人物のオブジェクトが映ったカラーの動画像からRGB画像をフレーム単位で取得してオブジェクトを抽出する。本実施形態では、オブジェクトが存在しない環境下で撮影した背景画像を蓄積しておき、RGB画像と背景画像との差分が所定の閾値以上となる閉領域に基づいてオブジェクトが検知される。
【００２７】
オブジェクト処理部２は、検知したオブジェクトに姿勢推定のための前処理を施す。オブジェクト領域設定部２０１は、図２(a)に一例を示したように、検知されたオブジェクトごとに、その輪郭に外接する矩形のオブジェクト領域を設定する。
【００２８】
オブジェクトマスク生成部２０２は、図２(b)に一例を示したように、検知されたオブジェクトごとにオブジェクトマスクMを生成する。この時点では、オブジェクトマスクMに影などの誤った領域５０１が含まれている可能性がある。また、オブジェクトマスクMは、後に詳述するように、オクルージョン状態にある複数のオブジェクトを包含している場合もある。
【００２９】
オブジェクトモデル処理部３は、オブジェクトを模したオブジェクトモデルを構築し、当該オブジェクトモデルの位置、姿勢およびサイズをオブジェクトマスクに対応させることでオブジェクトの姿勢を推定する。
【００３０】
図３は、オブジェクトモデルの一例を示した図であり、１０個の身体パーツBP0〜BP9を１１個の身体ジョイント（関節相当）BJ0〜BJ10で連結して構成される。各身体パーツBPは長方形状のテンプレートで模擬され、頭パーツ（BP0）は例外的に円形状のテンプレートで模擬される。各身体ジョイントBJは黒丸（●）で表現される。図４は、前記オブジェクトモデルを構成する身体ジョイントBJの一覧を示した図であり、図５は、身体パーツPBの一覧および各身体パーツの長さ比を示した図である。
【００３１】
また、本実施形態では各身体パーツBP0〜BP9と各身体ジョイントBJ0〜BJ10との連結状態を判断する際の連結条件が図６のテーブル形式で管理されており、各身体ジョイントBJ0〜BJ10と各身体パーツBP0〜BP9との連結は当該連結条件に拘束される。したがって、本実施形態では人物としてあり得ない連結となる推定結果を排除することができる。さらに、本実施形態では図７に示したように、オブジェクトモデルの標準姿勢における各身体ジョイント間の距離比が予め定義されている。  各身体ジョイントBJiは、添字ｉを身体ジョイント識別子（i=0〜10）として、次式(1)のデータ構造で表される。
【００３２】
【数１】
2019169069.tif 000003
【００３３】
ここで、括弧{・}内のPi={x,y}は、オブジェクト画像における各身体ジョイントBJの位置を表す。BJi={BJj|0≦j≦10，j≠i}は、当該身体ジョイントBJiに連結している他の身体ジョイントBJjの集合である。BPi={BP0,BP1…BP9}は、次式(2)で示すような身体パーツBPの集合であり、添字ｋは各身体パーツの識別子である。
【００３４】
【数２】
2019169069.tif 000004
【００３５】
ここで、括弧{・}内のRk={x,y,w,h,θ}は、各身体パーツBPkを模擬する長方形テンプレートRkの位置／姿勢を表し、x,yが中心座標、wが幅、hが高さ、θが角度方向を表している。PUk={x,y}およびPLk={x,y}は、長方形テンプレートRkの上端点及び下端点であり、これに連結する身体ジョイントBJiの座標Pi={x,y}に対応する。  BPk={BPm|0≦m≦9,m≠k}は、各身体パーツBPkに連結する他の身体パーツBPmの集合である。いくつかの身体パーツBPでは、PUk={x,y}は対応する位置Piと同じ値である。例えば、BP2（右上腕）の上端点PU2は右肩位置P2と同じである。以下、説明を解り易くするために、各身体パーツBPkを模擬する長方形テンプレートRkの位置をRx,yk、幅をRwidthk、高さをRheightk、角度方向をRθkと表現する場合もある。
【００３６】
また、本実施形態では簡略化のため、各身体パーツBPkの長方形テンプレートRkに関して、幅のデフォルト値が予めセットされている。上腕および前腕（BP2，BP3，BP4，BP5）の各テンプレート幅Rwidthに関するデフォルト値は、次式(3)に示したように、胴体テンプレートの幅Rwidth1との関係で、ここでは1/4として定義される。
【００３７】
同様に、大腿および下腿（BP6, BP7, BP8, BP9)の各テンプレート幅Rwidthに関するデフォルト値は、次式(4)に示したように胴体テンプレートの幅Rwidth1との関係で、ここでは1/3として定義される。
【００３８】
【数３】
2019169069.tif 000005
【００３９】
【数４】
2019169069.tif 000006
【００４０】
2つの身体ジョイントが決定されると、図６に記載されるような、対応するBPのパラメータの値を容易に計算できる。例えば、BJ2（右肩）およびBJ3（右肘）の位置が決まれば、BP2（右上腕）のパラメータは次式(5)のように決定される。
【００４１】
【数５】
2019169069.tif 000007
【００４２】
ここで、HALF(BJ2，BJ3)は、位置P2，P3の中間座標であり、θBJ2,BJ3は位置P2，P3を結ぶ線分の角度である。
【００４３】
図１へ戻り、頭部推定部３０１は、図２(a)，(b)に示したように、オブジェクトの輪郭を対象に、予め学習した頭部のHoG（Histograms of Oriented Gradients）特徴量と類似する輪郭をフレーム画像内で探索することで頭部を識別する。例えば、4×4画素を１セルとして、その勾配強度と勾配方向との関係をヒストグラム化し、これをn×nセルごとに正規化することで特徴量を抽出する。そして、この特徴量が予め学習した頭部のHoGと一致すれば頭部の輪郭と推定し、その結果をオブジェクトモデルMにコピーする。
【００４４】
オブジェクトモデル構築部３０２は、図２(c)に示したように、オブジェクトを模したオブジェクトモデルをオブジェクトマスクMに投影する。オブジェクトモデルの姿勢（傾き）は、オブジェクトマスクMのピクセル分布に基づいて推定できる。
【００４５】
オブジェクトモデル調節部３０３は、図２(d)，(e)，(f)に示したように、オブジェクトマスクMに合わせて前記オブジェクトモデルの腕部および脚部の位置、姿勢およびサイズを調整する。本実施形態では、オブジェクトマスクMにおける腕部を推定し、オブジェクトモデルの腕部を構成する上腕パーツBP2(BP4)、前腕パーツBP3(BP5)および肘ジョイントBJ3(BJ5)をオブジェクトマスクMの腕部の各位置に配置できるように各身体パーツBPおよび身体ジョイントBJの位置、姿勢およびサイズを調整する。
【００４６】
さらに、オブジェクトモデル調節部３０３はオブジェクトマスクMにおける脚部を推定し、オブジェクトモデルの脚部を構成する大腿パーツBP6(BP8)、下腿パーツBP7(BP9)および膝ジョイントBJ8(BJ10)をオブジェクトマスクMの脚部の各位置に配置できるように各身体パーツBPおよび身体ジョイントBJの位置、姿勢およびサイズを調整する。
【００４７】
分離調整部３０４は、一つのオブジェクト領域から複数の頭部が抽出されたときに、頭部ごとに各オブジェクトを分離する。図８は、オクルージョン状態にある２つのオブジェクトを分離する方法を示した図であり、フレーム画像からオブジェクトおよびその頭部が抽出され[同図(a)]、オブジェクトマスクMが生成され[同図(b)]、オブジェクトモデルが構築され[同図(c)]。
【００４８】
次いで、各オブジェクトの重複領域Dが判別され、当該重複領域D内に位置している複数の身体ジョイントBJを初期ノードとして[同図(d)，(e)]、グラフセグメンテーションを実施[同図(f)，(g)]することで領域分割が実施される。
【００４９】
以上のようにしてオブジェクト領域が識別されると、ノイズ除去部３０５により陰影等のノイズが除去される。領域定義部３０６は、入力イメージ、オブジェクトマスクおよびオブジェクトモデルに基づいて各オブジェクトを定量的な数値データで定義する。
【００５０】
次いで、前記オブジェクトモデル調整部３０３による身体パーツBPおよび身体ジョイントBJの調整方法について詳細に説明する。図９は、オブジェクトモデルの腕部（上腕、前腕および肘）の位置、姿勢およびサイズを、オブジェクトマスクMの腕部の位置、姿勢およびサイズに合わせて調整する手順を示したフローチャートであり、図１０は、オブジェクトモデルの腕部の位置、姿勢およびサイズが段階的に調整される様子を模式的に示した図である。
【００５１】
ステップＳ１では、オブジェクトマスクMが取得される。ステップＳ２では、左右の腕部に関して処理が終了したか否かが判断される。終了していれば、後述する脚部に関する調整処理へ進むが、最初は完了していないのでステップＳ３へ進む。
【００５２】
ステップＳ３では、胴体パーツBP1の上端点PU1が取得される。ステップＳ４では、図１０(a)に示したように、上端点PU1を通る水平線とオブジェクトマスクMの輪郭との交点が肩位置P2（肩ジョイントBJ2）に設定される。
【００５３】
ステップＳ５では、肩ジョイントBJ2からオブジェクトマスクMの輪郭を下方へトレースし、ステップＳ６において、トレースの軌跡が極小値を示すポイントPminが見つかるか、あるいはステップＳ７において、胴体パーツBP1の下端点PL1を通る水平線とオブジェクトマスクMの輪郭との交点Pclossが見つかると、ステップＳ８、Ｓ９において、当該PminまたはPclossを与える位置が前腕の先端（手先）に設定される。図示の例では、極小値Pminが手先に設定されている。
【００５４】
ステップＳ１０では、図１０(b)に示したように、前記肩ジョイントBJ2と手先Pminとを結ぶ直線上に上腕パーツBP2、肘ジョイントBJ3および前腕パーツBP3が配置される。ステップＳ１１では、図１０(c)に示したように、上腕パーツBP2および前腕パーツBP3のサイズおよび連結を維持したまま肘ジョイントBJ3をオブジェクトマスクの腕部方向へ移動させることで前腕パーツBP3の下端点PL3が前記直線上を手先Pminまで移動される。
【００５５】
ステップＳ１２では、肘ジョイントBJ3がオブジェクトマスクMの内側に位置しているか否かが判断される。図１０(d)に示したようにオブジェクトマスクMの外側に位置していると、腕パーツBP2の肩ジョイントBJ2および前腕パーツBP3の手先Pminを維持したまま上腕パーツBP2および前腕パーツBP3を縮小させながら、肩ジョイントBJ2と下端点PL3とを結ぶ直線の半分に相当する長さだけ、肘ジョイントBJ3をオブジェクトマスク側へ移動させる。ステップＳ１３では、前記上腕パーツBP2および前腕パーツBP3と同じ倍率で胴体パーツBP1がリサイズされる。
【００５６】
図１１は、オブジェクトの腕部と胴体との間にセルフオクルージョンが発生しており、腕部全体を識別できない場合の調整方法を示した図である。
【００５７】
本実施形態では、肩ジョイントBJ2からオブジェクトマスクMの輪郭に沿って下方へトレースし、同図(a)に示したように、胴体の下端点PL1を通る水平線とオブジェクトマスクMとの交点Pclossが手先に設定される。次いで、肩ジョイントBJ2と手先Pclossとを結ぶ直線上に上腕パーツBP2、肘ジョイントBJ3および前腕パーツBP3が配置される。
【００５８】
次いで、同図(b)に示したように、各身体パーツBP2，BP3のサイズおよび連結を維持したまま肘ジョイントBJ3をオブジェクトマスクの腕部方向へシフトさせることで、前腕パーツBP3の下端点PL3を手先Pclossまで移動させる。
【００５９】
次いで、同図(c)に示したように、各身体パーツBP2，BP3の長さを縮小させながら肘ジョイントBJ3をオブジェクトマスクMの内側までシフトさせ、その後、前記身体パーツBP2，BP3と同じ倍率で胴体パーツBP1をリサイズする。
【００６０】
図１２は、オブジェクトモデルの脚部（大腿部、下腿部および膝）の位置、姿勢およびサイズをオブジェクトマスクMの脚部の形状等に合わせて調整する手順を示したフローチャートであり、図１３は、オブジェクトモデルの脚部の位置、姿勢およびサイズが段階的に調整される様子を模式的に示した図である。
【００６１】
ステップＳ２１ではオブジェクトマスクMが取得される。ステップＳ２２では、胴体パーツPB1の下端点PL1が取得される。ステップＳ２３では、左右の脚部に関して処理が終了したか否かが判断され、最初は完了していないのでステップＳ２４へ進む。ステップＳ２４では、胴体パーツの下端点PL1に基づいて臀部ジョイントBJ7(BJ9)が取得され、さらに膝ジョイントBJ8(BJ10)および下腿パーツBP7(BP9)の下端点PL8(PL9)が取得される。
【００６２】
本実施形態では、人体の構造に基づき臀部が左右の肩幅内に収まると仮定し、各臀ジョイントBJ7，BJ9は左右の肩位置BJ2，BJ4に基づいて推定される。なお、各臀ジョイントBJ7，BJ9の位置の推定方法は、本発明の発明者等による特許出願（特願2017-043077号）の明細書に記載されている。
【００６３】
ステップＳ２５では、同図(a)に示したように、膝ジョイントBJ8を通る水平線とオブジェクトマスクMの輪郭との交点Poutが取得される。ステップＳ２６では、交点PoutからオブジェクトマスクMの輪郭に沿って下方へトレースすることで軌跡が極小値Pminを示すポイントが探索される。ステップＳ２７では、軌跡の極小値Pminが足先に設定される。
【００６４】
ステップＳ２８では、前記臀ジョイントBJ7と足先Pminとを結ぶ直線上に、右大腿パーツBP6、右膝ジョイントBJ8および右下腿パーツBP7が一列に配置される。ステップＳ２９では、同図(b)に示したように、各身体パーツBP6，BP7のサイズおよび連結を維持したまま膝ジョイントBJ8をオブジェクトマスクの脚部方向へ移動させ、各身体パーツBP6，BP7を回動させることで下端点PL8を足先Pminまで移動させる。
【００６５】
ステップＳ３０では、同図(c)に示したように、膝ジョイントBJ8がオブジェクトマスク内であるか否かが判断され、オブジェクトマスク外であれば膝ジョイントBJ8をオブジェクトマスクMの中心方向へ移動させる。さらに、同図(d)に示したように、下腿パーツBP7の中心がオブジェクトマスク内に収まるように、その位置、姿勢が修正される。ステップＳ３１では、前記身体パーツBP6，BP7と同じ倍率で胴体パーツBP1がリサイズされる。
【００６６】
図１４は、両脚がセルフオクルージョンの状態にある場合の調整方法を示している。本実施形態では、同図(a)に示したように、膝ジョイントBJ8を通る水平線とオブジェクトマスクMの外側輪郭との交点からオブジェクトマスクMの輪郭に沿って下方へトレースすることで前記と同様に左右の足先Pminが探索される。次いで、同図(b)に示したように、各身体パーツBP6，BP7のサイズおよび連結を維持したまま下腿パーツBP7，BP9の下端点PL8，PL9を各足先Pminへ移動させるべく膝ジョイントBJ8，BJ10を移動し、これに伴って身体パーツBP6，BP7を回動させる。
【００６７】
このとき、膝ジョイントBJ8，BJ10がオブジェクトマスク外にあると、当該膝ジョイントBJ8，BJ10をオブジェクトマスクM内へ移動し、これに伴って各身体パーツBP6，BP7の位置、姿勢が再調整される。
【００６８】
なお、図１５に示したように、オブジェクト領域で２人のオブジェクト間にオクルージョンが発生している場合は、同図(a)に示したように、前記交点PoutからオブジェクトマスクMの輪郭に沿って下方へトレースして探索された足先Pminが許容範囲外となるので、同図(b)に示したように、当該足先Pminと臀ジョイントBJ7とを結んだ線分上に右大腿パーツBP6、右膝ジョイントBJ8および右下腿パーツBP7を一列に配置し、下端パーツBP7の下端点PL8が足先とされる。
【００６９】
なお、図１６に示したように、頭部が一つだけ検知され、両脚がセルフオクルージョンの状態にあると、下腿パーツBP7，BP9が、膝ジョイントBJ8，BJ10を通る垂直線と平行になるように、その角度を修正される。
【００７０】
図１７は、前記分離調整部３０４が、グラフカット法を利用して２つのオブジェクトを分離する方法を説明するための図である。グラフカット法では、分離する領域を決定するために初期ノードが必要であるが、本実施形態では、オブジェクトモデルの身体ジョイントBJが領域分離に利用されている。
【００７１】
オクルージョン状態にある２つのオブジェクトモデルOM1，OM2は上記の各手法で既に取得されているので、同図(a)に示したように、オブジェクトマスクのうち、２つのオブジェクが重なっている重複領域DUは容易に検知できる。
【００７２】
次いで、同図(b)に示したように、重複領域DU内の複数の身体ジョイントBJが初期ノードとして選択される。本実施形態では、オブジェクトモデルOM1の左右の膝ジョイントBJ8、BJ10およびオブジェクトモデルOM2の頭ジョイントBJ1が選択されている。
【００７３】
その結果、同図(c)に示したように、重複領域DU内に３つの領域A1，A2，A3が生成される。ここで、領域A1，A2は同一のオブジェクトモデルOM1に属するので結合されるので、同図(d)に示したように、重複領域DU内が２つの領域A12,A3に分離される。最後に、同図(e)に示したように、グラフカット法により境界Eで区切られた２つの領域への分離を完了する。
【００７４】
ノイズ除去部３０５は、主に各オブジェクトの陰影を削除することでオブジェクトマスクMの精度を改善する。
【００７５】
図１８は、ノイズ除去部３０５がオブジェクトモデルに基づいてオブジェクトの影を削除する方法の一例を示した図である。本実施形態では、上記の各手順でオブジェクトモデルが完成すると、同図(a)，(b)に示したように、身体パートBPごとに、その矩形範囲内で前景に分離されている領域が識別される。そして、同図(c)に示したように、当該前景領域が全てオブジェクトマスクに分類され、それ以外は背景領域とされる。
【００７６】
領域定義部３０６は、図１９に示したように、上記の各手順により識別された各オブジェクトの領域を数値データで定義することにより定量的な取り扱いを可能にする。本実施形態では、各オブジェクトの数値化データOhが次式(6)で表される。添字hはオブジェクト識別子である。
【００７７】
【数６】
2019169069.tif 000008
【００７８】
BPhはh番目のオブジェクトモデルの各身体パーツBPの集合である。BJhはh番目のオブジェクトモデルの各身体ジョイントBJの集合である。Ihは、同図(a)，(b)，(c)に示したように、入力イメージChをオブジェクトマスクMhでトリミングした領域（Ch∩Mh=Ih）の画素集合である。
【００７９】
ここで、本実施形態ではオブジェクト同士のオクルージョンにより、同図(d)に示したように、前記分離の結果として全身を抽出できないオブジェクトO1についても、そのオブジェクトモデルは、同図(e)に示したように全身が推定されているのでBP1，BJ1を計算できる。したがって、オクルージョンによりカメラ画像では全身を認識できないオブジェクトに関しても、その全身を数値データ化することができ、定量的な取り扱いが可能になる。
【符号の説明】
【００８０】
１…オブジェクト検知部，２…オブジェクト処理部，３…オブジェクトモデル処理部，４…意味記述部，２０１…オブジェクト領域設定部，２０２…オブジェクトマスク生成部，３０１…頭部推定部，３０２…オブジェクトモデル構築部，３０３…オブジェクトモデル調節部，３０４…分離調整部，３０５…ノイズ除去部，３０６…領域定義部
【図１】
2019169069.tif 000009
【図２】
2019169069.tif 000010
【図３】
2019169069.tif 000011
【図４】
2019169069.tif 000012
【図５】
2019169069.tif 000013
【図６】
2019169069.tif 000014
【図７】
2019169069.tif 000015
【図８】
2019169069.tif 000016
【図９】
2019169069.tif 000017
【図１０】
2019169069.tif 000018
【図１１】
2019169069.tif 000019
【図１２】
2019169069.tif 000020
【図１３】
2019169069.tif 000021
【図１４】
2019169069.tif 000022
【図１５】
2019169069.tif 000023
【図１６】
2019169069.tif 000024
【図１７】
2019169069.tif 000025
【図１８】
2019169069.tif 000026
【図１９】
2019169069.tif 000027
【手続補正書】
【提出日】平成30年9月3日(2018.9.3)
【手続補正１】
【補正対象書類名】図面
【補正対象項目名】図７
【補正方法】変更
【補正の内容】
【図７】
2019169069.tif 000028