(57)【要約】  情報処理装置（２０００）は、カメラ（１０）によって生成された撮像画像（２０）から、対象オブジェクトが存在すると推定される位置である推定位置（２４）を検出する。対象オブジェクトは、人の持ち物である。情報処理装置（２０００）は、撮像画像（２０）に含まれる人の身体を構成する複数のパーツ（２２）を検出する。例えばパーツ（２２）は、関節である。そして情報処理装置（２０００）は、検出された複数のパーツ（２２）それぞれの位置に関連する情報を用いて、撮像画像（２０）における対象オブジェクトの推定位置（２４）を検出する。
2020016963.tif 000002
【特許請求の範囲】
【請求項１】
撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出部と、
前記検出された複数のパーツそれぞれの位置に関する情報を用いて、前記撮像画像における対象オブジェクトの推定位置を検出する推定位置検出部と、を有する情報処理装置。
【請求項２】
参照情報を記憶している参照情報記憶部と通信可能に接続されており、
参照情報は、オブジェクトの位置情報と、そのオブジェクトを所持する人の複数のパーツそれぞれの位置に関するパーツ情報とを対応づけており、
前記パーツ検出部は、前記複数のパーツそれぞれの位置に関するパーツ情報を生成し、
前記推定位置検出部は、前記生成されたパーツ情報との類似度が高いパーツ情報を示す前記参照情報を抽出し、前記抽出した参照情報に示されているオブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、請求項１に記載の情報処理装置。
【請求項３】
前記パーツ情報は、複数のパーツそれぞれの座標、複数のパーツそれぞれについて隣接するパーツとを結ぶ方向ベクトル、前記方向ベクトルの向き、及び隣接するパーツを結ぶ直線同士の成す角度のいずれかを列挙したベクトルデータであり、
前記推定位置検出部は、
前記生成されたパーツ情報が示すベクトルデータと、前記参照情報に含まれるパーツ情報が示すベクトルデータとの間の距離を算出し、
前記生成されたパーツ情報との類似度が高いパーツ情報を示す参照情報として、対応するパーツ情報について算出された前記距離が閾値以下である参照情報か、又は対応するパーツ情報について算出された前記距離の大きさの昇順で所定の順位以下である参照情報を抽出する、請求項２に記載の情報処理装置。
【請求項４】
前記参照情報が示すオブジェクトの位置情報は、前記対象オブジェクトを所持する人を含む画像の各画素における前記対象オブジェクトの有無を表す行列データであり、
前記推定位置検出部は、前記抽出した参照情報それぞれが示す前記行列データを重ね合わせることで、前記推定位置を検出する、請求項２又は３に記載の情報処理装置。
【請求項５】
対象オブジェクトの種類を示す種類情報を取得する種類情報取得部を有し、
前記参照情報は、オブジェクトの種類、その種類のオブジェクトを所持する人のパーツ情報、及びその種類のオブジェクトの位置情報を対応づけており、
前記推定位置検出部は、前記種類情報が示す対象オブジェクトの種類を示し、なおかつ前記パーツ検出部によって生成された前記パーツ情報との類似度が閾値以上である前記パーツ情報を示す前記参照情報を抽出し、前記抽出した参照情報に示されている対象オブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、請求項２乃至４いずれか一項に記載の情報処理装置。
【請求項６】
少なくとも１つの前記パーツは関節である、請求項２乃至５いずれか一項に記載の情報処理装置。
【請求項７】
前記対象オブジェクトの画像特徴に基づいて、前記撮像画像から、前記対象オブジェクトを表すと推定される画像領域である候補領域を１つ以上検出する候補領域検出部と、
前記検出した１つ以上の候補領域と前記推定位置に基づいて、前記検出した１つ以上の候補領域の中から前記対象オブジェクトを表す画像領域であるオブジェクト領域を特定する特定部と、を有する請求項１乃至６いずれか一項に記載の情報処理装置。
【請求項８】
コンピュータによって実行される制御方法であって、
撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出ステップと、
前記検出された複数のパーツそれぞれの位置に関する情報を用いて、前記撮像画像における対象オブジェクトの推定位置を検出する推定位置検出ステップと、を有する制御方法。
【請求項９】
参照情報を記憶している参照情報記憶部と通信可能に接続されており、
参照情報は、オブジェクトの位置情報と、そのオブジェクトを所持する人の複数のパーツそれぞれの位置に関するパーツ情報とを対応づけており、
前記パーツ検出ステップにおいて、前記複数のパーツそれぞれの位置に関するパーツ情報を生成し、
前記推定位置検出ステップにおいて、前記生成されたパーツ情報との類似度が高いパーツ情報を示す前記参照情報を前記参照情報記憶部から抽出し、前記抽出した参照情報に示されているオブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、請求項８に記載の制御方法。
【請求項１０】
前記パーツ情報は、複数のパーツそれぞれの座標、複数のパーツそれぞれについて隣接するパーツとを結ぶ方向ベクトル、前記方向ベクトルの向き、及び隣接するパーツを結ぶ直線同士の成す角度のいずれかを列挙したベクトルデータであり、
前記推定位置検出ステップにおいて、
前記生成されたパーツ情報が示すベクトルデータと、前記参照情報に含まれるパーツ情報が示すベクトルデータとの間の距離を算出し、
前記生成されたパーツ情報との類似度が高いパーツ情報を示す参照情報として、対応するパーツ情報について算出された前記距離が閾値以下である参照情報か、又は対応するパーツ情報について算出された前記距離の大きさの昇順で所定の順位以下である参照情報を抽出する、請求項９に記載の制御方法。
【請求項１１】
前記参照情報が示すオブジェクトの位置情報は、前記対象オブジェクトを所持する人を含む画像の各画素における前記対象オブジェクトの有無を表す行列データであり、
前記推定位置検出ステップにおいて、前記抽出した参照情報それぞれが示す前記行列データを重ね合わせることで、前記推定位置を検出する、請求項９又は１０に記載の制御方法。
【請求項１２】
対象オブジェクトの種類を示す種類情報を取得する種類情報取得ステップを有し、
前記参照情報は、オブジェクトの種類、その種類のオブジェクトを所持する人のパーツ情報、及びその種類のオブジェクトの位置情報を対応づけており、
前記推定位置検出ステップにおいて、前記種類情報が示す対象オブジェクトの種類を示し、なおかつ前記パーツ検出ステップによって生成された前記パーツ情報との類似度が閾値以上である前記パーツ情報を示す前記参照情報を前記参照情報記憶部から抽出し、前記抽出した参照情報に示されている対象オブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、請求項９乃至１１いずれか一項に記載の制御方法。
【請求項１３】
少なくとも１つの前記パーツは関節である、請求項９乃至１２いずれか一項に記載の制御方法。
【請求項１４】
前記対象オブジェクトの画像特徴に基づいて、前記撮像画像から、前記対象オブジェクトを表すと推定される画像領域である候補領域を１つ以上検出する候補領域検出ステップと、
前記検出した１つ以上の候補領域と前記推定位置に基づいて、前記検出した１つ以上の候補領域の中から前記対象オブジェクトを表す画像領域であるオブジェクト領域を特定する特定ステップと、を有する請求項８乃至１３いずれか一項に記載の制御方法。
【請求項１５】
請求項７乃至１４いずれか一項に記載の制御方法の各ステップをコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は物体認識に関する。
【背景技術】
【０００２】
カメラによって生成された撮像画像から物体を検出する技術が開発されている。例えば特許文献１は、撮像画像から複数の物体を検出し、検出した物体の関連づけを行う装置を開示している。具体的には、特許文献１の装置は、撮像画像に物（例えばカバン）と複数の人物とが含まれている場合に、その物と持ち主の人物とを関連づける。【０００３】
そのために、特許文献１の装置は、予め規定されている接続関係を利用して、人の身体の部位を順に認識しながら接続していく。例えば、顔->首->胴体->腕という順番で認識及び接続が行われる。さらに、特許文献１の装置は、認識された部位の周辺に頻繁に存在する物として予め規定されている物の認識を行う。例えば、腕の周辺に頻繁に存在する物として、カバンが規定されている。そのため、前述した様に人の腕が認識されたことに応じて、カバンの認識が行われる。その結果、「顔->首->胴体->腕->カバン」のように接続されていることが分かる。そこで特許文献１の装置は、接続されている顔とカバンの関連づけ（すなわち、人とカバンの関連づけ）を行う。【０００４】
ここで特許文献１では、人の身体の部位の周辺に頻繁に存在する物について、その部位に対しておよそどの辺りの位置にあるのかを推定するための情報が規定されている。そして、特許文献１には、この情報を用いて、物を認識する画像領域を限定してもよいことが記載されている。例えば特許文献１の装置は、前述した流れで人の腕を検出したら、人の腕に対しておよそどの辺りにカバンが存在するかを示す情報を利用して、カバンの認識を行う画像領域を限定する。そして、限定した画像領域についてカバンの認識が行われる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−０８６４８２号公報
【非特許文献】
【０００６】
【非特許文献１】Zhe Cao、外３名、「Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields」、CoRR、２０１６年１１月２４日
【非特許文献２】Riza Alp Guler、外２名、「DensePose: Dense Human Pose Estimation In The Wild」、CoRR、２０１８年２月１日
【非特許文献３】Haoshu Fang、外２名「Regional Multi-person Pose Estimation」、CoRR、２０１６年
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の技術では、人の身体の部位とその部位の周囲に存在する物とが、予め１対１で対応づけられている。そして、人の身体の部位を認識したことを前提として、その部位に対応づけられている物の認識が行われる。そのため、或る部位が認識されなかったら、その部位の対応づけられている物を認識することができない。例えば前述の例では、腕が認識されなければ、カバンを認識できない。【０００８】
この点、人の身体全体が必ずしも撮像画像に含まれるとは限らない。例えば、人の腕の前に障害物が立っていたり、人物の腕がカメラの撮像範囲の外にあったりすると、撮像画像から腕が認識されないため、カバンを認識することもできなくなる。【０００９】
本願発明は上記の課題に鑑みてなされたものであり、人の持ち物を撮像画像から高い精度で検出する技術を提供することである。
【課題を解決するための手段】
【００１０】
本発明の情報処理装置は、１）撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出部と、２）検出された複数のパーツそれぞれの位置に関する情報を用いて、撮像画像における対象オブジェクトの推定位置を検出する推定位置検出部と、を有する。【００１１】
本発明の制御方法は、コンピュータによって実行される制御方法である。当該制御方法は、１）撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出ステップと、２）検出された複数のパーツそれぞれの位置に関する情報を用いて、撮像画像における対象オブジェクトの推定位置を検出する推定位置検出ステップと、を有する。【００１２】
本発明のプログラムは、コンピュータに、本発明の制御方法が有する各ステップを実行させる。
【発明の効果】
【００１３】
本発明によれば、人の持ち物を撮像画像から高い精度で検出する技術が提供される。
【図面の簡単な説明】
【００１４】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
【図１】本実施形態の情報処理装置が行う処理を概念的に示す図である。
【図２】実施形態１の情報処理装置の機能構成を例示する図である。
【図３】情報処理装置を実現するための計算機を例示する図である。
【図４】実施形態１の情報処理装置によって実行される処理の流れを例示するフローチャートである。
【図５】複数のパーツ及びそれらの接続関係を例示する図である。
【図６】パーツ情報が示す情報を例示する第１の図である。
【図７】パーツ情報が示す情報を例示する第２の図である。
【図８】パーツ情報が示す情報を例示する第３の図である。
【図９】パーツ情報が示す情報を例示する第４の図である。
【図１０】対象オブジェクトの位置情報を重ね合わせる方法を例示する第１の図である。
【図１１】対象オブジェクトの位置情報を重ね合わせる方法を例示する第２の図である。
【図１２】実施形態２の情報処理装置の機能構成を例示するブロック図である。
【図１３】実施形態２の情報処理装置によって実行される処理の流れを例示するフローチャートである。
【図１４】実施形態３の情報処理装置が実行する処理の概要を例示する図である。
【図１５】実施形態３の情報処理装置の機能構成を例示するブロック図である。
【図１６】実施形態２の情報処理装置によって実行される処理の流れを例示するフローチャートである。
【図１７】推定位置を含む候補領域を例示する図である。
【図１８】候補領域に含まれる推定位置の数に基づいて算出される第１スコアを例示する図である。
【図１９】推定位置について算出された対象オブジェクトの存在確率を考慮して算出される第１スコアを例示する図である。
【図２０】種類情報を利用する実施形態３の情報処理装置が実行する処理の流れを例示するフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。また、特に説明する場合を除き、各ブロック図において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
【００１６】
［実施形態１］
＜概要＞
図１は、本実施形態の情報処理装置２０００が行う処理を概念的に示す図である。情報処理装置２０００は、カメラ１０によって生成された撮像画像２０から、対象オブジェクトが存在すると推定される位置である推定位置２４を検出する。対象オブジェクトは、人の持ち物である。なお、ここでいう「人の持ち物」とは、人が手に持っている物（手提げカバンや杖など）には限定されず、何らかの形で人が所持している物を全般的に含む。例えば、人の持ち物には、人が肩に掛けている物（肩掛けカバンなど）、人が首から提げている物（身分証明書など）、人が背中に背負っている物（リュックサックなど）、人が頭に装着している物（帽子やヘルメットなど）、人が顔に装着している物（眼鏡やサングラスなど）、及び人が手に装着している物（時計など）などが含まれる。
【００１７】
情報処理装置２０００は、撮像画像２０に含まれる人の身体を構成する複数のパーツ２２を検出する。例えばパーツ２２は、関節である。そして情報処理装置２０００は、検出された複数のパーツ２２それぞれの位置に関連する情報を用いて、撮像画像２０における対象オブジェクトの推定位置２４を検出する。推定位置２４は、一点であってもよいし、複数の点であってもよいし、大きさを持つ画像領域であってもよい。
【００１８】
＜作用・効果＞
人の持ち物は、人の身体を構成する複数のパーツ２２との相対的な位置関係を予測することができる。例えばリュックサックの位置は、首、肩、及び腰の位置関係を利用して予測することが考えられる。そこで情報処理装置２０００は、撮像画像２０から人の複数のパーツ２２を検出し、検出された複数のパーツ２２の位置関係を利用して、対象オブジェクトの推定位置２４を検出する。このように複数のパーツ２２との位置関係を利用して対象オブジェクトの位置を推測することにより、特定の１つの部位との位置関係を利用して対象オブジェクトの位置を推測する方法と比較し、対象オブジェクトの位置を高い精度で推測することができる。
【００１９】
また、このように人の複数のパーツの位置関係を利用して持ち物の位置を予測する場合、一部のパーツを撮像画像２０から検出することができなかったとしても、検出することができたパーツの位置関係を利用して、対象オブジェクトの位置をある程度予測することができる。例えばリュックサックの位置を首、左右の肩、及び左右の腰の位置関係を利用して予測するとする。この場合、左肩などの一部のパーツを検出することができなかったとしても、首、右肩、及び左右の腰という他のパーツの位置関係を利用することで、リュックサックの位置を程度予測することが可能である。このような観点からも、本実施形態の情報処理装置２０００によれば、特定の１つの部位との位置関係を利用して対象オブジェクトの位置を推測する方法と比較してノイズに頑健であり、高い精度で対象オブジェクトの位置を推測できる。
【００２０】
なお、図１を参照した上述の説明は、情報処理装置２０００の理解を容易にするための例示であり、情報処理装置２０００の機能を限定するものではない。以下、本実施形態の情報処理装置２０００についてさらに詳細に説明する。
【００２１】
＜情報処理装置２０００の機能構成の例＞
図２は、実施形態１の情報処理装置２０００の機能構成を例示する図である。情報処理装置２０００は、パーツ検出部２０２０及び推定位置検出部２０４０を有する。パーツ検出部２０２０は、撮像画像２０に含まれる人の身体を構成する複数のパーツ２２を検出する。推定位置検出部２０４０は、検出された複数のパーツ２２それぞれの位置に関する情報を用いて、撮像画像２０に含まれる人が所持する対象オブジェクトの推定位置２４を検出する。
【００２２】
＜情報処理装置２０００のハードウエア構成＞
情報処理装置２０００の各機能構成部は、各機能構成部を実現するハードウエア（例：ハードワイヤードされた電子回路など）で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ（例：電子回路とそれを制御するプログラムの組み合わせなど）で実現されてもよい。以下、情報処理装置２０００の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
【００２３】
図３は、情報処理装置２０００を実現するための計算機１０００を例示する図である。計算機１０００は任意の計算機である。例えば計算機１０００は、Personal Computer（PC）やサーバマシンなどの据え置き型の計算機である。その他にも例えば、計算機１０００は、スマートフォンやタブレット端末などの可搬型の計算機である。その他にも例えば、計算機１０００は、撮像画像２０を生成するカメラ１０であってもよい。計算機１０００は、情報処理装置２０００を実現するために設計された専用の計算機であってもよいし、汎用の計算機であってもよい。
【００２４】
計算機１０００は、バス１０２０、プロセッサ１０４０、メモリ１０６０、ストレージデバイス１０８０、入出力インタフェース１１００、及びネットワークインタフェース１１２０を有する。バス１０２０は、プロセッサ１０４０、メモリ１０６０、ストレージデバイス１０８０、入出力インタフェース１１００、及びネットワークインタフェース１１２０が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ１０４０などを互いに接続する方法は、バス接続に限定されない。
【００２５】
プロセッサ１０４０は、CPU（Central Processing Unit）、GPU（Graphics Processing Unit）、FPGA（Field−Programmable Gate Array）などの種々のプロセッサである。メモリ１０６０は、RAM（Random Access Memory）などを用いて実現される主記憶装置である。ストレージデバイス１０８０は、ハードディスク、SSD（Solid State Drive）、メモリカード、又は ROM（Read Only Memory）などを用いて実現される補助記憶装置である。
【００２６】
入出力インタフェース１１００は、計算機１０００と入出力デバイスとを接続するためのインタフェースである。例えば入出力インタフェース１１００には、キーボードなどの入力装置や、ディスプレイ装置などの出力装置が接続される。ネットワークインタフェース１１２０は、計算機１０００を通信網に接続するためのインタフェースである。この通信網は、例えば LAN（Local Area Network）や WAN（Wide Area Network）である。ネットワークインタフェース１１２０が通信網に接続する方法は、無線接続であってもよいし、有線接続であってもよい。
【００２７】
ストレージデバイス１０８０は、情報処理装置２０００の各機能構成部を実現するプログラムモジュールを記憶している。プロセッサ１０４０は、これら各プログラムモジュールをメモリ１０６０に読み出して実行することで、各プログラムモジュールに対応する機能を実現する。
【００２８】
＜カメラ１０について＞
カメラ１０は、撮像を行い、その結果として画像データを生成する任意の撮像装置である。例えばカメラ１０は、監視場所に設置された監視カメラである。
【００２９】
前述した様に、情報処理装置２０００を実現する計算機１０００は、カメラ１０であってもよい。この場合、カメラ１０は、自身で生成した撮像画像２０を解析することで、オブジェクト領域３０の特定を行う。このような機能を持たせるカメラ１０としては、例えば、インテリジェントカメラ、ネットワークカメラ、又は IP（Internet Protocol）カメラなどと呼ばれるカメラを用いることができる。
【００３０】
＜情報処理装置２０００の利用例＞
情報処理装置２０００は、「カメラによって生成された画像データから所定のオブジェクトを検出する」という処理が有用な任意の場面で利用することができる。例えば情報処理装置２０００は、監視カメラによって生成された監視映像の解析に利用される。この場合、カメラ１０は監視映像を生成する監視カメラである。また、撮像画像２０は監視映像を構成するビデオフレームである。
【００３１】
情報処理装置２０００は、監視映像を構成するビデオフレームから、所定のオブジェクトの推定位置を検出する。こうすることで、監視場所における対象オブジェクトの存在及びその推定位置を把握することができる。また、対象オブジェクトを持っている人物を検出することもできる。
【００３２】
より具体的には、情報処理装置２０００によれば、監視映像を利用して、危険物の存在を把握したり、要注意人物（危険物を持っている人物やサングラスやヘルメットなどで顔を隠している人物など）の存在を把握したりすることができる。また、監視対象の施設で置き去り物体が発見された場合に、その施設の様々な場所に設置された監視カメラによって生成された過去の監視映像を情報処理装置２０００で解析することにより、その置き去り物体が運ばれたルートの特定や、その置き去り物体を運んだ人物の検出などを行うこともできる。
【００３３】
＜処理の流れ＞
図４は、実施形態１の情報処理装置２０００によって実行される処理の流れを例示するフローチャートである。情報処理装置２０００は、撮像画像２０を取得する（Ｓ１０２）。パーツ検出部２０２０は、撮像画像２０から、対象人物を構成する複数のパーツ２２を検出する（Ｓ１０４）。推定位置検出部２０４０は、検出した複数のパーツ２２の位置に関する情報を用いて、推定位置２４を検出する（Ｓ１０６）。
【００３４】
情報処理装置２０００が図４に示す一連の処理を実行するタイミングは様々である。例えば情報処理装置２０００は、カメラ１０によって撮像画像２０が生成される度に、その撮像画像２０を取得して、図４に示す一連の処理を実行する。その他にも例えば、情報処理装置２０００は、所定のタイミングで、カメラ１０によって生成された撮像画像２０を複数まとめて取得し、各撮像画像２０について図４に示す一連の処理を実行する（いわゆるバッチ処理）。その他にも例えば、情報処理装置２０００は、撮像画像２０を指定する入力操作を受け付け、指定された撮像画像２０について一連の処理を実行する。
【００３５】
＜撮像画像２０の取得：Ｓ１０２＞
情報処理装置２０００は撮像画像２０を取得する（Ｓ１０２）。撮像画像２０は、カメラ１０によって生成された画像データそのものであってもよいし、カメラ１０によって生成された画像データに対して何らかの処理（例えば色調補正やトリミングなど）が加えられたものであってもよい。
【００３６】
情報処理装置２０００が撮像画像２０を取得する方法は任意である。例えば情報処理装置２０００は、撮像画像２０が記憶されている記憶装置にアクセスすることで、撮像画像２０を取得する。撮像画像２０が記憶されている記憶装置は、カメラ１０の内部に設けられていてもよいし、そのカメラの外部に設けられていてもよい。その他にも例えば、情報処理装置２０００は、カメラ１０から送信される撮像画像２０を受信することで、撮像画像２０を取得してもよい。なお、前述したように、情報処理装置２０００がカメラ１０として実現される場合、情報処理装置２０００は、自身で生成した撮像画像２０を取得する。
【００３７】
＜パーツ２２の検出：Ｓ１０４＞
パーツ検出部２０２０は、撮像画像２０から、人を構成する複数のパーツ２２を検出する（Ｓ１０４）。人を構成するパーツ２２は、例えば、人の関節を表す。また、パーツ２２は、顔のパーツ（目、耳、又は鼻など）や、腕、脚、又は胴体の所定部分（中心点など）などを表してもよい。
【００３８】
パーツ検出部２０２０は、パーツ２２の検出に加え、隣接するパーツ２２間の接続関係の特定を行うことが好ましい。図５は、複数のパーツ２２及びそれらの接続関係を例示する図である。図５では、例えば、左右それぞれの手首、肘、肩、腰、膝、及び足首の関節点、左右の目及び耳、並びに鼻及び首という１８個のパーツ２２が検出されている。さらに、手首と肘、肘と肩などのように隣接するパーツ２２が接続されている。このようにパーツ２２間の接続関係を特定すると、撮像画像２０に複数の人が含まれている場合であっても、検出された複数のパーツ２２を各人のパーツに分けることができる。
【００３９】
このような人を構成するパーツを検出する技術、及び検出したパーツ２２の接続関係を特定する技術には、例えば非特許文献１、２、又は３などの技術を利用することができる。以下では、隣接するパーツ２２を連結するデータ（図５における各直線を表すデータ）を「ボーン」と呼ぶ。
【００４０】
パーツ検出部２０２０は、検出した複数のパーツ２２の位置関係を表す情報を生成する。以下、この情報をパーツ情報と呼ぶ。パーツ情報が示す情報は様々である。図６から図９は、パーツ情報が示す情報を例示する図である。
【００４１】
図６は、パーツ情報が示す情報を例示する第１の図である。図６において、パーツ情報は、各パーツ２２の位置を表す座標が列挙されたベクトルデータ F=(P1, P2,...) を示す。パーツ２２の座標は、絶対座標であってもよいし、相対座標であってもよい。絶対座標は、撮像画像２０の所定位置（例えば左上端）を原点とする座標である。一方、相対座標は、いずれか１つのパーツ２２の座標を原点とする座標である。
【００４２】
図７は、パーツ情報が示す情報を例示する第２の図である。図７において、パーツ情報は、連接するパーツ２２を結ぶ方向ベクトルが列挙されたベクトルデータ F=(v1, v2,...) を示す。方向ベクトルは、ボーンの向きと大きさを表すベクトルであるとも言える。例えば図７において、方向ベクトル v1 は、パーツ２２の位置 P1 と P2 を結ぶ方向ベクトルである。なお、各方向ベクトルは、長さ１に正規化されてもよい。
【００４３】
図８は、パーツ情報が示す情報を例示する第３の図である。図８において、パーツ情報は、隣接するパーツ２２を結ぶ方向ベクトルの向きが列挙されたベクトルデータ F=(α1, α2,...) を示す。方向ベクトルの向きは、撮像画像２０について定められる所定の方向（例えば右方向）を基準方向とする角度で表されてもよいし、いずれか１つの方向ベクトルを基準方向とする角度で表されてもよい。例えば図６（ｃ）において、α１は、方向ベクトル v1 の向きであり、撮像画像２０の右方向を基準方向として表されている。
【００４４】
図９は、パーツ情報が示す情報を例示する第４の図である。図９において、パーツ情報は、隣接するボーンが成す角の大きさが列挙されたベクトルデータ F=(β1, β2,...) を示す。例えば図６（ｄ）において、β１は、P1 と P2 を連結するボーンと、P2 と P3 を連結するボーンとが成す角の大きさである。
【００４５】
なお、撮像画像２０に複数の人が含まれる場合、パーツ情報は撮像画像２０から検出された各人について生成される。これは、前述したようにパーツ間の接続関係を把握することにより実現することができる。
【００４６】
＜推定位置２４の検出：Ｓ１０４＞
推定位置検出部２０４０は、パーツ情報を用いて推定位置２４を検出する。前述した様に、推定位置２４は、撮像画像２０において対象オブジェクトが存在すると推定される位置である。推定位置２４は、撮像画像２０上において、一点で表されてもよいし、複数の点で表されてもよいし、画像領域で表されてもよい。
【００４７】
例えば推定位置２４の検出には、対象オブジェクトの位置情報と、その対象オブジェクトを所持する人のパーツ情報とを対応づけた参照情報が利用される。参照情報は予め用意して、情報処理装置２０００と通信可能な記憶部に記憶させておく。この記憶部を、参照情報記憶部と呼ぶ。参照情報記憶部は、情報処理装置２０００の内部と外部のどちらに設けられてもよい。
【００４８】
例えば推定位置検出部２０４０は、参照情報記憶部から、撮像画像２０から生成したパーツ情報との類似度が高いパーツ情報を示す参照情報を、１つ以上抽出する。そして、推定位置検出部２０４０は、抽出した参照情報が示す対象オブジェクトの位置情報に基づいて、推定位置２４を特定する。
【００４９】
例えば推定位置検出部２０４０は、抽出した参照情報が示す対象オブジェクトの位置情報を重ね合わせることで、推定位置２４を検出する。例えば参照情報が示す対象オブジェクトの位置情報は、対象オブジェクトを所持する人が含まれる所定サイズの画像データ（以下、参照画像）の各画像に対応する行列データ（以下、位置情報行列）である。例えば位置情報行列の各要素は、参照画像の各画素について、対象オブジェクトの有無を示す。この場合、位置情報行列の各要素は、対応する画素に対象オブジェクトが存在する場合には１を示し、対応する画素に対象オブジェクトが存在しない場合に０を示す。
【００５０】
対象オブジェクトの位置情報を重ね合わせる方法は様々である。以下、その方法を例示する。
【００５１】
＜＜重ねあわせの方法１＞＞
例えば推定位置検出部２０４０は、抽出された各参照情報が示す位置情報行列を積算することで、対象オブジェクトの位置情報を重ね合わせる。このようにして得られる行列データでは、値が大きい要素ほど、多くの参照情報においてその要素に対応する画素に対象オブジェクトが存在していることを意味する。そのため、このようにして得られる行列データは、対象オブジェクトが存在する確率の大きさの分布を表しているといえる。
【００５２】
図１０は、位置情報行列を重ね合わせる方法を例示する第１の図である。図１０では、撮像画像２０から生成されたパーツ情報と類似度の高いパーツ情報を示す参照情報が２つ抽出されている。そのため、推定位置検出部２０４０は、これら２つの参照情報それぞれが示す位置情報行列５０を積算することで、行列データ６０を得ている。なお、位置情報行列５０と行列データ６０において、要素の値が０の部分については、表記が省略されている（後述の図１１についても同様）。
【００５３】
推定位置検出部２０４０は、このように生成した行列データ６０をさらに変換してもよい。例えば推定位置検出部２０４０は、行列データ６０において、値が最大の要素以外の要素の値を０に変換する。こうすることで、対象オブジェクトが存在する確率が最も高い位置のみを、推定位置２４として扱うようにする。その他にも例えば、推定位置検出部２０４０は、行列データ６０において、値が閾値以下である要素の値を０に変更する。こうすることで、対象オブジェクトの存在確率が一定程度大きい位置のみを、推定位置２４として扱うようにする。
【００５４】
＜＜重ねあわせの方法２＞＞
推定位置検出部２０４０は、位置情報行列と同じサイズの行列データを生成し、その行列データの各要素に対して、１）抽出された各参照情報が示す位置情報行列の少なくとも１つにおいて、対応する要素の値が１である場合には１を設定し、２）抽出された各参照情報が示す位置情報行列のいずれにおいても、対応する要素の値が０である場合には０を設定する。すなわち、重ねあわせの結果得られる行列データは、少なくとも１つの参照画像において対象オブジェクトが存在する箇所の要素には１を示し、いずれの参照画像においても対象オブジェクトが存在しない箇所の要素には０を示す。なお、このような行列データは、抽出された各参照情報が示す位置情報行列の各要素について論理和を算出することでも得ることができる。
【００５５】
図１１は、位置情報行列を重ね合わせる方法を例示する第２の図である。図１１において抽出されている位置情報行列５０は、図１０のケースと同様である。一方で、重ねあわせの結果得られている行列データ６０は、１と０のいずれか一方を示しており、図１０の行列データ６０とは異なっている。具体的には、行列データ６０の各要素は、位置情報行列５０−１の対応する要素の値と、位置情報行列５０−２の対応する要素の値の少なくとも一方が１である場合には、１を示している。
【００５６】
推定位置検出部２０４０は、このように生成した行列データ６０をさらに変換してもよい。例えば推定位置検出部２０４０は、行列データ６０が表す位置の分布の中心位置を算出し、算出した中心位置に対応する要素以外の要素の値を０に変更する。こうすることで、得られた分布の中心のみを、推定位置２４して扱うことができる。その他にも例えば、推定位置検出部２０４０は、前述した中心位置を中心とする所定範囲よりも外にある画素に対応する要素の値を０に変更する。こうすることで、得られた分布の中心から所定範囲に対象オブジェクトが存在することを表すようにする。なお、この所定範囲は、推定位置検出部２０４０に予め設定されていてもよいし、推定位置検出部２０４０からアクセス可能な記憶装置に格納しておいてもよい。
【００５７】
＜＜重ねあわせの結果と撮像画像２０との対応付け＞＞
推定位置検出部２０４０は、参照情報が示すオブジェクトの位置情報を重ね合わせた結果として得られたデータ（すなわち、前述した行列データ６０）を撮像画像２０と対応付けることで、推定位置２４を検出する。例えば行列データ６０が対象オブジェクトの有無を示す場合、推定位置検出部２０４０は、行列データ６０の要素を撮像画像２０上の位置に対応付け、行列データ６０において値が１を示す要素に対応する撮像画像２０の位置を、推定位置２４として検出する。
【００５８】
その他にも例えば、行列データ６０が、対象オブジェクトが存在する確率の大きさを示す場合（位置情報行列を積算することで行列データ６０を得る場合）、推定位置検出部２０４０は、行列データ６０の要素を撮像画像２０上の位置に対応付け、行列データ６０において値が０より大きい要素に対応する撮像画像２０の位置を、推定位置２４として検出する。さらに推定位置検出部２０４０は、検出した推定位置２４に、対応する行列データ６０の要素の値を対応付ける。こうすることで、各推定位置２４について、その推定位置２４に対象オブジェクトが存在する確率の大きさが得られる。
【００５９】
ここで、行列データ６０と撮像画像２０とを対応づけは、例えば次のように行う。まず推定位置検出部２０４０は、行列データ６０の算出に利用した、撮像画像２０から得たパーツ情報について、そのパーツ情報が示すパーツ２２の外接矩形を算出する。さらに推定位置検出部２０４０は、前述した行列データ６０の行サイズと列サイズのそれぞれを、算出した外接矩形の高さと幅に一致するように、拡大又は縮小する。推定位置検出部２０４０は、このようにサイズを調整した行列データ６０を、撮像画像２０から得られた外接矩形にマッピングすることで、行列データ６０の各要素を、撮像画像の位置（画素）に対応づける。
【００６０】
＜＜パーツ情報の類似判定＞＞
推定位置検出部２０４０は、撮像画像２０から得られたパーツ情報との類似度合いが高いパーツ情報を示す参照情報を、参照情報記憶部から抽出する。そのために、推定位置検出部２０４０は、２つのパーツ情報が類似するか否かを判定する。
【００６１】
２つのパーツ情報の類似度合いは、例えば、それらのパーツ情報が示すベクトルデータ間の距離で表される。例えば推定位置検出部２０４０は、２つのパーツ情報が示すベクトルデータの間の距離が所定の閾値以下である場合、それらのパーツ情報は類似していると判定する。一方、推定位置検出部２０４０は、ベクトル間の距離が所定の閾値よりも大きい場合には、それらのパーツ情報は類似していないと判定する。なお、所定の閾値は、推定位置検出部２０４０に予め設定されていてもよいし、推定位置検出部２０４０からアクセス可能な記憶装置に記憶させておいてもよい。ここで、ベクトルデータの間の距離を算出する技術には、既存の種々の技術を利用することができる。
【００６２】
その他にも例えば、推定位置検出部２０４０は、撮像画像２０から生成したパーツ情報と各参照情報に含まれるパーツ情報とについて類似度を算出し、算出された類似度の高さが上位所定個の参照情報を抽出してもよい。例えば類似度として前述した距離を利用する場合、参照情報を距離の降順でソートすることにより、参照情報を類似度の高い順でソートすることができる。
【００６３】
＜＜学習済みの検出器を利用する方法＞＞
推定位置検出部２０４０が推定位置２４を検出する方法は、参照情報記憶部から参照情報を抽出する方法に限定されない。例えば推定位置検出部２０４０は、画像データから生成されたパーツ情報が入力されたことに応じて、その画像データにおいて対象オブジェクトが存在すると推定される位置を検出するように予め学習させた検出器を利用してもよい。検出器のモデルには、ニューラルネットワークなどの任意のモデルを採用できる。
【００６４】
この検出器の学習は、参照情報を利用して予め行われる。具体的には、「画像データ、その画像データから生成された参照情報」という組み合わせ、すなわち、「画像データ、その画像データに含まれる人のパーツ情報、その人が所持する対象オブジェクトの位置」という組み合わせで構成されるデータを教師データとして用いて、検出器の学習が行われる。このような教師データを用いることにより、検出器に、対象オブジェクトと人との相対的な位置関係を学習させることができる。
【００６５】
＜結果の出力＞
情報処理装置２０００は、推定位置２４を特定する情報（以下、出力情報）を出力する。出力情報を出力する方法は様々である。例えば情報処理装置２０００は、出力情報を任意の記憶装置に記憶させる。その他にも例えば、情報処理装置２０００は、出力情報をディスプレイ装置に表示させる。
【００６６】
例えば出力情報は、撮像画像２０の識別子及び推定位置２４を示す。撮像画像２０から複数の推定位置２４が特定された場合、出力情報は、複数の推定位置２４それぞれを示す。その他にも例えば、出力情報は、推定位置２４を示す情報（例えばバツ印や枠などのマーク）を重畳させた撮像画像２０であってもよい。
【００６７】
［実施形態２］
＜概要＞
図１２は、実施形態２の情報処理装置２０００の機能構成を例示するブロック図である。以下で説明する点を除き、実施形態２の情報処理装置２０００は、実施形態１の情報処理装置２０００と同様の機能を有する。
【００６８】
実施形態２の情報処理装置２０００は、複数の種類の対象オブジェクトを扱う。具体的には、情報処理装置２０００は、検出すべきオブジェクトの種類を示す種類情報を取得し、種類情報に示されている種類のオブジェクトを対象オブジェクトとする。そのために、実施形態２の情報処理装置２０００は、種類情報を取得する種類情報取得部２０６０を有する。
【００６９】
種類情報が示すオブジェクトの種類は、１つであってもよいし、複数であってもよい。種類情報がオブジェクトの種類を複数示す場合、情報処理装置２０００は、各種類のオブジェクトをそれぞれ対象オブジェクトとして、各対象オブジェクトについて推定位置２４を検出する。例えば、種類情報が「帽子、サングラス、白杖」という３つの種類を示している場合、情報処理装置２０００は、撮像画像２０の中から、帽子の推定位置２４、サングラスの推定位置２４、及び白杖の推定位置２４をそれぞれ検出する。
【００７０】
また、種類情報は、特定の種類のオブジェクトではなく、任意の種類のオブジェクトを検出すべきことを示してもよい。この場合、情報処理装置２０００は、情報処理装置２０００が扱うことができる全種類のオブジェクトをそれぞれ対象オブジェクトとして、各対象オブジェクトについて推定位置２４を検出する。
【００７１】
種類情報取得部２０６０が種類情報を取得する方法は様々である。例えば種類情報取得部２０６０は、種類情報が記憶されている記憶装置から種類情報を取得する。その他にも例えば、種類情報取得部２０６０は、他の装置から送信される種類情報を受信することで、種類情報を取得する。その他にも例えば、種類情報取得部２０６０は、ユーザから種類情報の入力を受け付けることで、種類情報を取得する。
【００７２】
実施形態２の推定位置検出部２０４０は、種類情報に示されている種類のオブジェクトについて推定位置２４を検出する。例えば、実施形態２の情報処理装置２０００が利用する参照情報は、オブジェクトの種類ごとに用意されているとする。すなわち、参照情報が、「オブジェクトの種類、その種類のオブジェクトの位置、及びその種類のオブジェクトを所持する人のパーツ情報」という組み合わせを示す。推定位置検出部２０４０は、種類情報に示されている種類のオブジェクトを示し、なおかつ撮像画像２０から生成したパーツ情報との類似度が高いパーツ情報を示す参照情報を抽出する。そして推定位置検出部２０４０は、抽出した参照情報を利用して、推定位置２４を検出する。
【００７３】
その他にも例えば、実施形態２の推定位置検出部２０４０では、オブジェクトの種類ごとに、推定位置２４を検出する検出器を用意しておいてもよい。この場合、オブジェクトの種類ごとに、その種類のオブジェクトに関する参照情報を利用して、その種類のオブジェクトの推定位置２４を検出する検出器の学習を行っておく。推定位置検出部２０４０は、撮像画像２０から生成したパーツ情報を、種類情報が示す種類のオブジェクトに対応する検出器に入力することで、その種類のオブジェクトについて推定位置２４を検出する。
【００７４】
＜作用効果＞
実施形態の情報処理装置２０００によれば、種類情報によって示されている種類のオブジェクトについて推定位置２４が検出される。こうすることで、複数の種類のオブジェクトのうち、指定されたオブジェクトを撮像画像２０から検出するように、情報処理装置２０００を設定できる。そのため、複数の種類のオブジェクトそれぞれを撮像画像２０から検出したり、その時々で検出するオブジェクトの種類を変更したりすることができる。そのため、情報処理装置２０００の利便性が向上する。
【００７５】
例えば、要注意人物の持ち物に関する情報が得られたことに応じ、要注意人物の持ち物を検出するように撮像画像２０を設定することができる。また、置き去り物体が発見された場合、その置き去り物体を検出するように情報処理装置２０００を設定することができる。
【００７６】
＜ハードウエア構成の例＞
実施形態２の情報処理装置２０００を実現する計算機のハードウエア構成は、実施形態１と同様に、例えば図３によって表される。ただし、本実施形態の情報処理装置２０００を実現する計算機１０００のストレージデバイス１０８０には、本実施形態の情報処理装置２０００の機能を実現するプログラムモジュールがさらに記憶される。
【００７７】
＜処理の流れ＞
図１３は、実施形態２の情報処理装置２０００によって実行される処理の流れを例示するフローチャートである。種類情報取得部２０６０は、種類情報を取得する（Ｓ２０２）。情報処理装置２０００は撮像画像２０を取得する（Ｓ２０４）。パーツ検出部２０２０はパーツ２２を検出する（Ｓ２０６）推定位置検出部２０４０は、種類情報に示される種類のオブジェクトについて、推定位置２４を検出する（Ｓ２０８）。
【００７８】
［実施形態３］
図１４は、実施形態３の情報処理装置２０００が実行する処理の概要を例示する図である。実施形態３の情報処理装置２０００は、対象オブジェクトの画像特徴に基づいて、撮像画像２０から、候補領域２６を１つ以上検出する。候補領域２６は、対象オブジェクトを表すと推定される画像領域の候補である。例えば対象オブジェクトが帽子であれば、情報処理装置２０００は、帽子の画像特徴に基づいて、帽子を表すと推定される画像領域を検出し、検出した画像領域を候補領域２６とする。候補領域２６は、例えば、対象オブジェクトを表す確率が所定値以上であると推測される画像領域である。
【００７９】
さらに情報処理装置２０００は、候補領域２６と推定位置２４とに基づいて、オブジェクト領域３０を特定する。例えば、情報処理装置２０００は、複数検出された候補領域２６のうち、推定位置２４を含む候補領域２６を、オブジェクト領域３０として特定する。ただし、後述するように、候補領域２６と推定位置２４とに基づいて特定されるオブジェクト領域３０は、推定位置２４を含む候補領域２６には限定されない。
【００８０】
＜作用・効果＞
本実施形態の情報処理装置２０００によれば、対象オブジェクトの画像特徴に基づいて検出される候補領域２６と、人を構成する複数のパーツ２２に基づいて検出された推定位置２４とを用いて、対象オブジェクトを表すオブジェクト領域３０が特定される。こうすることで、対象オブジェクトの画像特徴に基づいて検出される候補領域２６の全てがオブジェクト領域３０（対象オブジェクトを表す画像領域）として特定されるわけではなく、推定位置２４によって、オブジェクト領域３０として特定される候補領域２６が限定される。例えば、対象オブジェクトが存在する蓋然性が低い位置の候補領域２６は、オブジェクト領域３０として特定されなくなる。このように、対象オブジェクトを表す画像領域を、対象オブジェクトの画像特徴という基準と、人を構成する複数のパーツとの位置という基準の２つを利用して特定することにより、対象オブジェクトの画像特徴という１つの基準で特定する場合と比較し、対象オブジェクトを表す画像領域を高い精度で特定することができる。
【００８１】
なお、図１４を参照した上述の説明は、情報処理装置２０００の理解を容易にするための例示であり、情報処理装置２０００の機能を限定するものではない。以下、本実施形態の情報処理装置２０００についてさらに詳細に説明する。
【００８２】
＜機能構成の例＞
図１５は、実施形態３の情報処理装置２０００の機能構成を例示するブロック図である。実施形態３の情報処理装置２０００は、実施形態２の情報処理装置２０００が有する各機能構成部（図２参照）に加え、候補領域検出部２０８０及び特定部２１００を有する。候補領域検出部２０８０は、対象オブジェクトの画像特徴に基づき、撮像画像２０から候補領域２６を１つ以上検出する。特定部２１００は、検出された１つ以上の候補領域２６と、推定位置２４とに基づいて、候補領域２６の中からオブジェクト領域３０を特定する。
【００８３】
＜ハードウエア構成の例＞
実施形態２の情報処理装置２０００を実現する計算機のハードウエア構成は、実施形態１と同様に、例えば図３によって表される。ただし、本実施形態の情報処理装置２０００を実現する計算機１０００のストレージデバイス１０８０には、本実施形態の情報処理装置２０００の機能を実現するプログラムモジュールがさらに記憶される。
【００８４】
＜処理の流れ＞
図１６は、実施形態２の情報処理装置２０００によって実行される処理の流れを例示するフローチャートである。なお、図４と同じ符号が付されているステップは、図４に示したステップと同様のものである。候補領域検出部２０８０は、対象オブジェクトの画像特徴に基づいて、撮像画像２０から候補領域２６を１つ以上検出する（Ｓ３０２）。特定部２１００は、候補領域２６と推定位置２４とに基づいて、オブジェクト領域３０を特定する（Ｓ３０４）。
【００８５】
なお、必ずしも図１６に示すように全ての処理がシーケンシャルに実行される必要はない。例えば、候補領域検出部２０８０が実行する処理（Ｓ３０２）と推定位置検出部２０４０が実行する処理（Ｓ１０４及びＳ１０６）とは、並行して実行されてもよい。
【００８６】
＜候補領域２６の検出：Ｓ３０２＞
候補領域検出部２０８０は、対象オブジェクトの画像特徴に基づいて、撮像画像２０から候補領域２６を検出する（Ｓ３０２）。ここで、検出対象のオブジェクトの画像特徴に基づいて、画像データからそのオブジェクトを表すと推測される画像領域（すなわち、候補領域２６）を検出する技術には、既存の技術を利用することができる。例えば、候補領域２６の検出には、対象オブジェクトを表すと推定される画像領域を画像データから検出するように予め学習させた検出器を利用することができる。検出器のモデルには、ニューラルネットワーク（例えば、畳み込みニューラルネットワーク）や SVM（サポートベクトルマシン）などの任意のモデルを採用できる。
【００８７】
ここで、候補領域検出部２０８０は、対象オブジェクトを表すと推測される確率が閾値以上である画像領域を、候補領域２６として検出する。ここで、この閾値を大きくすると、フォールスネガティブ（検出漏れ）が発生しやすくなる。一方、この閾値を小さくすると、フォールスポジティブ（誤検出）が発生しやすくなる。
【００８８】
この点、情報処理装置２０００では、候補領域検出部２０８０のみによってオブジェクト領域３０が特定されるわけではなく、推定位置検出部２０４０によって検出される推定位置２４も用いて、オブジェクト領域３０が特定される。そのため、閾値を大きめに設定して検出漏れが発生してしまうよりも、閾値を小さめに設定して誤検出が発生してしまう方が好ましいと言える。なぜなら、閾値を小さめに設定して候補領域２６を多めに検出しておき、推定位置検出部２０４０によって検出される推定位置２４を利用して候補領域２６の絞り込みを行うという方法により、対象オブジェクトを表すオブジェクト領域３０を高い精度で特定できるためである。
【００８９】
そこで、候補領域検出部２０８０が利用する上記閾値は、対象オブジェクトの画像特徴のみに基づいてオブジェクト領域３０の特定を行う場合（すなわち、推定位置検出部２０４０を利用しない場合）に設定される閾値以下の値にすることが好適である。
【００９０】
候補領域検出部２０８０は、候補領域２６の検出結果を表すデータを生成する。このデータは、検出された候補領域２６を特定するデータであり、例えば候補領域２６の特定の位置（例えば左上端の座標）及びサイズ（例えば幅と高さ）を示す。
【００９１】
＜オブジェクト領域３０の特定：Ｓ３０４＞
特定部２１００は、候補領域２６と推定位置２４とに基づいて、オブジェクト領域３０を特定する（Ｓ３０４）。概念的には、特定部２１００は、推定位置２４を用いて、対象オブジェクトを含むと推測される画像領域である候補領域２６の中から、対象オブジェクトを含む蓋然性が特に高いものを特定し、特定した候補領域２６をオブジェクト領域３０として特定する。ただし後述するように、オブジェクト領域３０は、いずれか１つの候補領域２６と完全に一致する必要はなく、候補領域２６の一部の画像領域であってもよい。
【００９２】
特定部２１００は、候補領域２６と推定位置２４との重なりに着目してオブジェクト領域３０を特定する。その具体的な方法には、様々な方法を採用することができる。以下、その具体的な方法を例示する。
【００９３】
＜＜具体的な方法１＞＞
特定部２１００は、推定位置２４を含む候補領域２６を、オブジェクト領域３０として特定する。図１７は、推定位置２４を含む候補領域２６を例示する図である。図１７では、撮像画像２０から、候補領域２６が複数検出されている。また、推定位置２４が１つ検出されている。ここで、推定位置２４は候補領域２６−１に含まれている。そこで特定部２１００は、候補領域２６−１をオブジェクト領域３０として特定する。
【００９４】
＜＜具体的な方法２＞＞
ここでは、推定位置２４が複数算出されることを前提とする。そして特定部２１００は、各候補領域２６について、推定位置２４を含む度合いを表すスコア（以下、第１スコア）を算出する。特定部２１００は、第１スコアに基づいてオブジェクト領域３０を特定する。
【００９５】
第１スコアに基づいてオブジェクト領域３０を特定する方法は様々である。例えば特定部２１００は、第１スコアが最大である候補領域２６を、オブジェクト領域３０として特定する。その他にも例えば、特定部２１００は、第１スコアが所定値以上である候補領域２６をオブジェクト領域３０として特定する。後者の場合、オブジェクト領域３０が複数特定されうる。
【００９６】
第１スコアの定め方は様々である。例えば特定部２１００は、候補領域２６に含まれる推定位置２４の数を、その候補領域２６についての第１スコアとして算出する。その他にも例えば、特定部２１００は、候補領域２６に含まれる推定位置２４の数を候補領域２６の大きさで正規化した値（例えば、推定位置２４の数を候補領域２６の面積で割った値）を、その候補領域２６についての第１スコアとして算出する。
【００９７】
図１８は、候補領域２６に含まれる推定位置２４の数に基づいて算出される第１スコアを例示する図である。候補領域２６には推定位置２４が３つ含まれている。そこで例えば、特定部２１００は、候補領域２６の第１スコアを３とする。ここで、候補領域２６の面積が S であるとする。この場合、特定部２１００は、候補領域２６の第１スコアを候補領域２６の面積で正規化した 3/S を第１スコアとしてもよい。
【００９８】
第１スコアの算出方法は前述の例に限定されない。例えば、各推定位置２４について、対象オブジェクトが存在する確率が算出されているとする。この場合、特定部２１００は、候補領域２６に含まれる各推定位置２４について算出された存在確率の総和を、その候補領域２６についての第１スコアとして算出してもよい。
【００９９】
図１９は、推定位置２４について算出された対象オブジェクトの存在確率を考慮して算出される第１スコアを例示する図である。候補領域２６には推定位置２４が３つ含まれており、それぞれについて算出された存在確率は p1, p2, 及び p3 である。そのため、候補領域２６の第１スコアは p1+p2+p3 である。
【０１００】
このように、推定位置２４に対象オブジェクトが存在する確率を考慮して第１スコアを算出することにより、対象オブジェクトを表すオブジェクト領域３０をより高い精度で特定することができる。例えば、対象オブジェクトの存在確率が 0.1 である推定位置２４を３つ含む候補領域２６よりも、対象オブジェクトの存在確率が 0.6 である推定位置２４を１つ含む候補領域２６の方が、対象オブジェクトを表す画像領域である蓋然性が高いといえる。存在確率の総和を第１スコアとする算出方法によれば、後者の候補領域２６の第１スコアが、前者の候補領域２６の第１スコアよりも大きくなる。そのため、後者の候補領域２６の方が、オブジェクト領域３０として特定されやすくなる。
【０１０１】
＜＜具体的な方法３＞＞
ここでは、候補領域検出部２０８０が、各候補領域２６について、その候補領域２６が対象オブジェクトを表す確率を算出するとする。また、特定部２１００は、各候補領域２６について、前述した第１スコアを算出するとする。特定部２１００は、候補領域２６が対象オブジェクトを表す確率と、第１スコアとの積として、第２スコアを算出する。そして特定部２１００は、第２スコアに基づいてオブジェクト領域３０を特定する。
【０１０２】
第２スコアに基づいてオブジェクト領域３０を特定する方法は様々である。例えば特定部２１００は、第２スコアが最大である候補領域２６を、オブジェクト領域３０として特定する。その他にも例えば、特定部２１００は、第２スコアが所定値以上である候補領域２６をオブジェクト領域３０として特定する。
【０１０３】
＜＜具体的な方法４＞＞
特定部２１００は、候補領域２６の代表点と推定位置２４との間の距離に基づく第３スコアを算出し、算出した第３スコアに基づいてオブジェクト領域３０を特定する。第３スコアに基づいてオブジェクト領域３０を特定する方法は様々である。例えば特定部２１００は、最も小さい第３スコアが算出された候補領域２６を、オブジェクト領域３０として特定する。その他にも例えば、特定部２１００は、所定値以下の第３スコアが算出された候補領域２６を、オブジェクト領域３０として特定する。
【０１０４】
候補領域２６の代表点は、候補領域２６に含まれる任意の点とすることができる。例えば候補領域２６の代表点は、候補領域２６の中心である。
【０１０５】
推定位置２４が複数ある場合、特定部２１００は、複数の推定位置２４それぞれについて候補領域２６の代表点との間の距離を算出してもよいし、いずれか１つの推定位置２４について候補領域２６の代表点との間の距離を算出してもよい。前者の場合、例えば特定部２１００は、算出した複数の距離の統計値（最小値、最頻値、又は平均値など）に基づいて第３スコアを算出する。後者の場合、特定部２１００は、１つの推定位置２４と候補領域２６の代表点との間の距離を算出し、その距離に基づいて第３スコアを算出する。
【０１０６】
ここで、１つの推定位置２４のみについて、候補領域２６の代表点との間の距離を算出する場合において、その推定位置２４を特定する方法は様々である。例えば特定部２１００は、複数の推定位置２４で構成される画像領域の中心を算出し、その中心に最も近い推定位置２４を特定し、特定した推定位置２４と候補領域２６の代表点との間の距離を算出する。その他にも例えば、各推定位置２４について対象オブジェクトの存在確率が算出されている場合、特定部２１００は、対象オブジェクトの存在確率が最も高い推定位置２４と候補領域２６の代表点との間の距離を算出する。
【０１０７】
また、推定位置２４が画像領域として表されている場合、特定部２１００は、その画像領域の代表点と候補領域２６の代表点との間の距離に基づいて、第３スコアを算出する。画像領域として表されている推定位置２４の代表点は、例えば、その画像領域の中心位置である。
【０１０８】
推定位置２４と候補領域２６の代表点との間の距離に基づいて第３スコアを算出する方法は様々である。例えば特定部２１００は、候補領域２６の代表点と推定位置２４との間の距離そのものを第３スコアとする。
【０１０９】
その他にも例えば、特定部２１００は、候補領域２６の代表点と推定位置２４との間の距離に、その推定位置２４に対象オブジェクトが存在する確率に基づく補正係数を乗算した値を、第３スコアとする。補正係数は、推定位置２４に対象オブジェクトが存在する確率が高いほど小さくなるようにする。例えば補正係数は、推定位置２４に対象オブジェクトが存在する確率の逆数である。
【０１１０】
このように推定位置２４に対象オブジェクトが存在する確率を考慮することで、対象オブジェクトを表すオブジェクト領域３０をより高い精度で特定することができる。例えば、対象オブジェクトが存在する確率が 0.1 である推定位置２４との間の距離が１である候補領域２６よりも、対象オブジェクトが存在する確率が 0.6 である推定位置２４との間の距離が２である候補領域２６の方が、対象オブジェクトを表す画像領域である蓋然性が高いと考えられる。上述した補正係数を利用する方法によれば、後者の候補領域２６の方が、前者の候補領域２６よりも、第３スコアが大きくなる。よって、後者の候補領域２６の方が、オブジェクト領域３０として特定されやすくなる。
【０１１１】
＜結果の出力＞
情報処理装置２０００は、オブジェクト領域３０を特定する情報（以下、出力情報）を出力する。出力情報を出力する方法は様々である。例えば情報処理装置２０００は、出力情報を任意の記憶装置に記憶させる。その他にも例えば、情報処理装置２０００は、出力情報をディスプレイ装置に記憶させる。
【０１１２】
例えば出力情報は、撮像画像２０の識別子、オブジェクト領域３０の特定の位置（例えば、オブジェクト領域３０の左上端の座標）、及びオブジェクト領域３０のサイズ（例えば、幅と高さ）を示す。撮像画像２０からオブジェクト領域３０が特定された場合、出力情報は、複数のオブジェクト領域３０それぞれについて、位置及びサイズを示す。その他にも例えば、出力情報は、オブジェクト領域３０を示す情報（例えば枠）を重畳させた撮像画像２０であってもよい。
【０１１３】
＜パーツ２２の検出範囲の限定＞
推定位置検出部２０４０は、パーツ２２の検出を行う範囲を、候補領域２６を利用いて限定してもよい。すなわち、撮像画像２０全体からではなく、候補領域２６に基づいて限定される一部の画像領域からパーツ２２の検出を行う。具体的には、推定位置検出部２０４０は、候補領域２６を含む所定の範囲（例えば、候補領域２６を所定倍拡大することで得られる範囲）からパーツ２２を検出する。こうすることで、パーツ２２の検出に要する時間や計算機資源を削減することができる。
【０１１４】
＜種類情報の利用＞
実施形態３の情報処理装置２０００は、実施形態２の情報処理装置２０００と同様に、種類情報を取得してもよい。この場合、実施形態３の情報処理装置２０００は、種類情報が示す種類のオブジェクトについて、候補領域２６の検出、推定位置２４の検出、及びオブジェクト領域３０の特定を行う。
【０１１５】
この場合、候補領域検出部２０８０は、種類情報に示されている種類のオブジェクトについて候補領域２６を検出する。ここで、特定の種類のオブジェクトを画像データから検出する技術には、既存の技術を利用できる。例えば、オブジェクトの種類ごとに、その種類のオブジェクトを画像データから検出するように学習させた検出器を用意しておく。候補領域検出部２０８０は、撮像画像２０を、種類情報が示す種類のオブジェクトについて候補領域２６を検出するように学習させた検出器に対して入力することで、その種類のオブジェクトについて候補領域２６を検出する。
【０１１６】
また、特定部２１００は、上述のように種類情報が示す種類の対象オブジェクトについて検出された候補領域２６及び推定位置２４に基づいてオブジェクト領域３０を特定する。出力情報は、オブジェクトの種類ごとに生成される。
【０１１７】
図２０は、種類情報を利用する実施形態３の情報処理装置２０００が実行する処理の流れを例示するフローチャートである。種類情報取得部２０６０は、種類情報を取得する（Ｓ４０２）。情報処理装置２０００は撮像画像２０を取得する（Ｓ４０４）。推定位置検出部２０４０は撮像画像２０からパーツ２２を検出する（Ｓ４０６）。推定位置検出部２０４０は、検出した複数のパーツ２２に基づいて推定位置２４を検出する（Ｓ４０８）。候補領域検出部２０８０は、種類情報に示される種類のオブジェクトについて、その種類のオブジェクトの画像特徴に基づいて、撮像画像２０から候補領域２６を検出する（Ｓ４１０）。特定部２１００は、検出された候補領域２６及び推定位置２４に基づいて、オブジェクト領域３０を特定する（Ｓ４１２）。
【０１１８】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
【０１１９】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
１．  撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出部と、
前記検出された複数のパーツそれぞれの位置に関する情報を用いて、前記撮像画像における対象オブジェクトの推定位置を検出する推定位置検出部と、を有する情報処理装置。
２．  参照情報を記憶している参照情報記憶部と通信可能に接続されており、
参照情報は、オブジェクトの位置情報と、そのオブジェクトを所持する人の複数のパーツそれぞれの位置に関するパーツ情報とを対応づけており、
前記パーツ検出部は、前記複数のパーツそれぞれの位置に関するパーツ情報を生成し、
前記推定位置検出部は、前記生成されたパーツ情報との類似度が高いパーツ情報を示す前記参照情報を抽出し、前記抽出した参照情報に示されているオブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、１．に記載の情報処理装置。
３．  前記パーツ情報は、複数のパーツそれぞれの座標、複数のパーツそれぞれについて隣接するパーツとを結ぶ方向ベクトル、前記方向ベクトルの向き、及び隣接するパーツを結ぶ直線同士の成す角度のいずれかを列挙したベクトルデータであり、
前記推定位置検出部は、
前記生成されたパーツ情報が示すベクトルデータと、前記参照情報に含まれるパーツ情報が示すベクトルデータとの間の距離を算出し、
前記生成されたパーツ情報との類似度が高いパーツ情報を示す参照情報として、対応するパーツ情報について算出された前記距離が閾値以下である参照情報か、又は対応するパーツ情報について算出された前記距離の大きさの昇順で所定の順位以下である参照情報を抽出する、２．に記載の情報処理装置。
４．  前記参照情報が示すオブジェクトの位置情報は、前記対象オブジェクトを所持する人を含む画像の各画素における前記対象オブジェクトの有無を表す行列データであり、
前記推定位置検出部は、前記抽出した参照情報それぞれが示す前記行列データを重ね合わせることで、前記推定位置を検出する、２．又は３．に記載の情報処理装置。
５．  対象オブジェクトの種類を示す種類情報を取得する種類情報取得部を有し、
前記参照情報は、オブジェクトの種類、その種類のオブジェクトを所持する人のパーツ情報、及びその種類のオブジェクトの位置情報を対応づけており、
前記推定位置検出部は、前記種類情報が示す対象オブジェクトの種類を示し、なおかつ前記パーツ検出部によって生成された前記パーツ情報との類似度が閾値以上である前記パーツ情報を示す前記参照情報を抽出し、前記抽出した参照情報に示されている対象オブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、２．乃至４．いずれか一つに記載の情報処理装置。
６．  少なくとも１つの前記パーツは関節である、２．乃至５．いずれか一つに記載の情報処理装置。
７．  前記対象オブジェクトの画像特徴に基づいて、前記撮像画像から、前記対象オブジェクトを表すと推定される画像領域である候補領域を１つ以上検出する候補領域検出部と、
前記検出した１つ以上の候補領域と前記推定位置に基づいて、前記検出した１つ以上の候補領域の中から前記対象オブジェクトを表す画像領域であるオブジェクト領域を特定する特定部と、を有する１．乃至６．いずれか一つに記載の情報処理装置。
【０１２０】
８．  コンピュータによって実行される制御方法であって、
撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出ステップと、
前記検出された複数のパーツそれぞれの位置に関する情報を用いて、前記撮像画像における対象オブジェクトの推定位置を検出する推定位置検出ステップと、を有する制御方法。
９．  参照情報を記憶している参照情報記憶部と通信可能に接続されており、
参照情報は、オブジェクトの位置情報と、そのオブジェクトを所持する人の複数のパーツそれぞれの位置に関するパーツ情報とを対応づけており、
前記パーツ検出ステップにおいて、前記複数のパーツそれぞれの位置に関するパーツ情報を生成し、
前記推定位置検出ステップにおいて、前記生成されたパーツ情報との類似度が高いパーツ情報を示す前記参照情報を前記参照情報記憶部から抽出し、前記抽出した参照情報に示されているオブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、８．に記載の制御方法。
１０．  前記パーツ情報は、複数のパーツそれぞれの座標、複数のパーツそれぞれについて隣接するパーツとを結ぶ方向ベクトル、前記方向ベクトルの向き、及び隣接するパーツを結ぶ直線同士の成す角度のいずれかを列挙したベクトルデータであり、
前記推定位置検出ステップにおいて、
前記生成されたパーツ情報が示すベクトルデータと、前記参照情報に含まれるパーツ情報が示すベクトルデータとの間の距離を算出し、
前記生成されたパーツ情報との類似度が高いパーツ情報を示す参照情報として、対応するパーツ情報について算出された前記距離が閾値以下である参照情報か、又は対応するパーツ情報について算出された前記距離の大きさの昇順で所定の順位以下である参照情報を抽出する、９．に記載の制御方法。
１１．  前記参照情報が示すオブジェクトの位置情報は、前記対象オブジェクトを所持する人を含む画像の各画素における前記対象オブジェクトの有無を表す行列データであり、
前記推定位置検出ステップにおいて、前記抽出した参照情報それぞれが示す前記行列データを重ね合わせることで、前記推定位置を検出する、９．又は１０．に記載の制御方法。
１２．  対象オブジェクトの種類を示す種類情報を取得する種類情報取得ステップを有し、
前記参照情報は、オブジェクトの種類、その種類のオブジェクトを所持する人のパーツ情報、及びその種類のオブジェクトの位置情報を対応づけており、
前記推定位置検出ステップにおいて、前記種類情報が示す対象オブジェクトの種類を示し、なおかつ前記パーツ検出ステップによって生成された前記パーツ情報との類似度が閾値以上である前記パーツ情報を示す前記参照情報を前記参照情報記憶部から抽出し、前記抽出した参照情報に示されている対象オブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、９．乃至１１．いずれか一つに記載の制御方法。
１３．  少なくとも１つの前記パーツは関節である、９．乃至１２．いずれか一つに記載の制御方法。
１４．  前記対象オブジェクトの画像特徴に基づいて、前記撮像画像から、前記対象オブジェクトを表すと推定される画像領域である候補領域を１つ以上検出する候補領域検出ステップと、
前記検出した１つ以上の候補領域と前記推定位置に基づいて、前記検出した１つ以上の候補領域の中から前記対象オブジェクトを表す画像領域であるオブジェクト領域を特定する特定ステップと、を有する８．乃至１３．いずれか一つに記載の制御方法。
【０１２１】
１５．  ７．乃至１４．いずれか一つに記載の制御方法の各ステップをコンピュータに実行させるプログラム。
【図１】
2020016963.tif 000003
【図２】
2020016963.tif 000004
【図３】
2020016963.tif 000005
【図４】
2020016963.tif 000006
【図５】
2020016963.tif 000007
【図６】
2020016963.tif 000008
【図７】
2020016963.tif 000009
【図８】
2020016963.tif 000010
【図９】
2020016963.tif 000011
【図１０】
2020016963.tif 000012
【図１１】
2020016963.tif 000013
【図１２】
2020016963.tif 000014
【図１３】
2020016963.tif 000015
【図１４】
2020016963.tif 000016
【図１５】
2020016963.tif 000017
【図１６】
2020016963.tif 000018
【図１７】
2020016963.tif 000019
【図１８】
2020016963.tif 000020
【図１９】
2020016963.tif 000021
【図２０】
2020016963.tif 000022
【手続補正書】
【提出日】令和3年1月13日(2021.1.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出部と、
前記検出された複数のパーツそれぞれの位置に関する情報を用いて、前記撮像画像における対象オブジェクトの推定位置を検出する推定位置検出部と、を有する情報処理装置。
【請求項２】
参照情報を記憶している参照情報記憶部と通信可能に接続されており、
参照情報は、オブジェクトの位置情報と、そのオブジェクトを所持する人の複数のパーツそれぞれの位置に関するパーツ情報とを対応づけており、
前記パーツ検出部は、前記複数のパーツそれぞれの位置に関するパーツ情報を生成し、
前記推定位置検出部は、前記生成されたパーツ情報との類似度が高いパーツ情報を示す前記参照情報を抽出し、前記抽出した参照情報に示されているオブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、請求項１に記載の情報処理装置。
【請求項３】
前記パーツ情報は、複数のパーツそれぞれの座標、複数のパーツそれぞれについて隣接するパーツとを結ぶ方向ベクトル、前記方向ベクトルの向き、及び隣接するパーツを結ぶ直線同士の成す角度のいずれかを列挙したベクトルデータであり、
前記推定位置検出部は、
前記生成されたパーツ情報が示すベクトルデータと、前記参照情報に含まれるパーツ情報が示すベクトルデータとの間の距離を算出し、
前記生成されたパーツ情報との類似度が高いパーツ情報を示す参照情報として、対応するパーツ情報について算出された前記距離が閾値以下である参照情報か、又は対応するパーツ情報について算出された前記距離の大きさの昇順で所定の順位以下である参照情報を抽出する、請求項２に記載の情報処理装置。
【請求項４】
前記参照情報が示すオブジェクトの位置情報は、前記対象オブジェクトを所持する人を含む画像の各画素における前記対象オブジェクトの有無を表す行列データであり、
前記推定位置検出部は、前記抽出した参照情報それぞれが示す前記行列データを重ね合わせることで、前記推定位置を検出する、請求項２又は３に記載の情報処理装置。
【請求項５】
対象オブジェクトの種類を示す種類情報を取得する種類情報取得部を有し、
前記参照情報は、オブジェクトの種類、その種類のオブジェクトを所持する人のパーツ情報、及びその種類のオブジェクトの位置情報を対応づけており、
前記推定位置検出部は、前記種類情報が示す対象オブジェクトの種類を示し、なおかつ前記パーツ検出部によって生成された前記パーツ情報との類似度が閾値以上である前記パーツ情報を示す前記参照情報を抽出し、前記抽出した参照情報に示されている対象オブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、請求項２乃至４いずれか一項に記載の情報処理装置。
【請求項６】
少なくとも１つの前記パーツは関節である、請求項２乃至５いずれか一項に記載の情報処理装置。
【請求項７】
前記対象オブジェクトの画像特徴に基づいて、前記撮像画像から、前記対象オブジェクトを表すと推定される画像領域である候補領域を１つ以上検出する候補領域検出部と、
前記検出した１つ以上の候補領域と前記推定位置に基づいて、前記検出した１つ以上の候補領域の中から前記対象オブジェクトを表す画像領域であるオブジェクト領域を特定する特定部と、を有する請求項１乃至６いずれか一項に記載の情報処理装置。
【請求項８】
コンピュータによって実行される制御方法であって、
撮像画像に含まれる人の身体を構成する複数のパーツを検出するパーツ検出ステップと、
前記検出された複数のパーツそれぞれの位置に関する情報を用いて、前記撮像画像における対象オブジェクトの推定位置を検出する推定位置検出ステップと、を有する制御方法。
【請求項９】
参照情報を記憶している参照情報記憶部と通信可能に接続されており、
参照情報は、オブジェクトの位置情報と、そのオブジェクトを所持する人の複数のパーツそれぞれの位置に関するパーツ情報とを対応づけており、
前記パーツ検出ステップにおいて、前記複数のパーツそれぞれの位置に関するパーツ情報を生成し、
前記推定位置検出ステップにおいて、前記生成されたパーツ情報との類似度が高いパーツ情報を示す前記参照情報を前記参照情報記憶部から抽出し、前記抽出した参照情報に示されているオブジェクトの位置情報に基づいて、前記対象オブジェクトの推定位置を決定する、請求項８に記載の制御方法。
【請求項１０】
請求項８又は９に記載の制御方法の各ステップをコンピュータに実行させるプログラム。
【国際調査報告】
2020016963.tif 000023
2020016963.tif 000024
2020016963.tif 000025
2020016963.tif 000026