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

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

▶ 株式会社Preferred Networksの特許一覧

特許7118622物体検出装置、物体検出方法及びプログラム
<>
  • 特許-物体検出装置、物体検出方法及びプログラム 図1
  • 特許-物体検出装置、物体検出方法及びプログラム 図2
  • 特許-物体検出装置、物体検出方法及びプログラム 図3
  • 特許-物体検出装置、物体検出方法及びプログラム 図4
  • 特許-物体検出装置、物体検出方法及びプログラム 図5
  • 特許-物体検出装置、物体検出方法及びプログラム 図6
  • 特許-物体検出装置、物体検出方法及びプログラム 図7
  • 特許-物体検出装置、物体検出方法及びプログラム 図8
  • 特許-物体検出装置、物体検出方法及びプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-05
(45)【発行日】2022-08-16
(54)【発明の名称】物体検出装置、物体検出方法及びプログラム
(51)【国際特許分類】
   G06T 7/11 20170101AFI20220808BHJP
【FI】
G06T7/11
【請求項の数】 25
(21)【出願番号】P 2017221079
(22)【出願日】2017-11-16
(65)【公開番号】P2019091352
(43)【公開日】2019-06-13
【審査請求日】2020-11-16
【前置審査】
(73)【特許権者】
【識別番号】515130201
【氏名又は名称】株式会社Preferred Networks
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100118876
【弁理士】
【氏名又は名称】鈴木 順生
(74)【代理人】
【識別番号】100202429
【弁理士】
【氏名又は名称】石原 信人
(72)【発明者】
【氏名】小 林 颯 介
【審査官】真木 健彦
(56)【参考文献】
【文献】特開2009-015720(JP,A)
【文献】特開2005-293367(JP,A)
【文献】特開2005-228042(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/11
G06T 7/00
G06T 1/00
H04N 5/222 - 5/257
H04N 7/18
G08B 23/00 - 31/00
(57)【特許請求の範囲】
【請求項1】
複数の物体を含む画像が入力される入力部と、
物体を示す点である物体点を前記入力部によって入力された前記画像に対して設定する設定部と、
前記入力部によって入力された前記画像中の物体の存在領域を推定する推定部と、
前記設定部によって前記画像に対して設定された前記複数の物体をそれぞれ示す複数の前記物体点と、前記推定部によって推定された前記画像中の物体の存在領域と、に基づいて、前記設定部によって前記画像に対して設定された当該複数の前記物体点それぞれが示す物体の存在領域を決定する決定部と、
を有する装置。
【請求項2】
前記推定部は、前記入力部によって入力された前記画像中の物体の存在領域を複数、推定し、
前記決定部は、前記設定部によって設定された複数の前記物体点と、前記推定部によって推定された複数の前記画像中の物体の存在領域と、に基づいて、前記設定部によって設定されたそれぞれの前記物体点が示す物体の存在領域を決定する、
請求項1に記載の装置。
【請求項3】
前記推定部によって推定される前記存在領域は、矩形である、請求項1又は請求項2に記載の装置。
【請求項4】
複数の物体を含む画像が入力される入力部と、
物体を示す点である物体点を前記入力部によって入力された前記画像に対して設定する設定部と、
前記設定部によって前記画像に対して設定された前記複数の物体をそれぞれ示す複数の前記物体点それぞれについて、前記物体点を含み、且つ、前記物体点によって示される物体と思われる形状の当該物体の存在領域を決定する決定部と、
を有する装置。
【請求項5】
前記決定部は、前記設定部によって前記画像に対して設定された複数の前記物体点それぞれについて、前記物体点を1つだけ含み、且つ、前記物体点によって示される物体と思われる形状の当該物体の存在領域を決定する、請求項4に記載の装置。
【請求項6】
前記決定部は、前記設定部によって前記画像に対して設定された複数の前記物体点それぞれについて、前記物体点に関する所定のスコアを計算して当該スコアに基づいて前記存在領域を決定する、請求項4又は請求項5に記載の装置。
【請求項7】
前記複数の物体の一部は前記画像において重なり合っている、請求項1乃至請求項6のいずれかに記載の装置。
【請求項8】
前記設定部は、前記画像中から検出されるマーカ又はバーコードの位置情報に基づいて、前記物体点を設定する、請求項1乃至請求項7のいずれかに記載の装置。
【請求項9】
前記設定部は、前記画像を撮影するデバイスとは別のデバイスによって取得される、前記複数の物体に対応する位置情報に基づいて、前記物体点を設定する、請求項1乃至請求項8のいずれかに記載の装置。
【請求項10】
前記別のデバイスによって取得される前記位置情報は、ICチップの位置情報である、請求項9に記載の装置。
【請求項11】
前記画像は、前記複数の物体を鳥瞰的に撮影して得られる画像である、請求項1乃至請求項10のいずれかに記載の装置。
【請求項12】
前記決定部によって決定された各物体の前記存在領域を画像としてディスプレイに出力する出力部を有する、請求項1乃至請求項11のいずれかに記載の装置。
【請求項13】
前記決定部によって決定された各物体の前記存在領域に関する座標情報を、所定の動作を行うためのプログラムに出力する出力部を有する、請求項1乃至請求項12のいずれかに記載の装置。
【請求項14】
1又は複数のメモリと、
1又は複数のプロセッサと、を備え、
前記1又は複数のプロセッサは、
画像データ中の複数の物体の各物体の位置を示す点である物体点を複数、設定し、
前記画像データ中の物体が存在する領域の候補である候補領域を複数、検出し、
前記複数の物体点と前記複数の候補領域とに基づいて、前記画像データ中の前記複数の物体のそれぞれについて前記物体が存在する物体領域を決定する、
装置。
【請求項15】
前記1又は複数のプロセッサは、
複数の前記候補領域を検出し、前記物体領域の決定は、前記物体点の位置に基づいて前記複数の候補領域のうちから選択された1つの候補領域に基づく、
請求項14に記載の装置。
【請求項16】
前記1又は複数のプロセッサは、
複数の前記物体点を設定し、
前記物体領域の決定は、前記物体点を有する前記候補領域を検出し、
当該候補領域が他の物体点を有していない場合に選択された当該候補領域に基づく、
請求項14に記載の装置。
【請求項17】
前記1又は複数のプロセッサは、
同一の前記物体点に対応する複数の前記候補領域が検出された場合に、当該物体点に対応する複数の前記候補領域のうち、前記物体領域として選択されなかった前記候補領域を当該物体点に対応する候補としての前記候補領域から削除する、
請求項15又は請求項16に記載の装置。
【請求項18】
前記1又は複数のプロセッサは、
ある前記物体点に対応する前記候補領域が他の前記物体点を有する場合、当該候補領域に係る選択を保留し、当該候補領域以外の前記候補領域の選択を実行する、
請求項15乃至請求項17のいずれかに記載の装置。
【請求項19】
前記1又は複数のプロセッサは、
前記選択を保留した候補領域以外の前記候補領域の選択が完了した後、前記選択を保留した候補領域のうち、所定の条件を満たす候補領域を選択する、
請求項18に記載の装置。
【請求項20】
請求項1乃至請求項13のいずれかに記載の前記設定部、又は、請求項14乃至請求項19のいずれかに記載の前記1又は複数のプロセッサは、
あらかじめ学習された第1モデルに基づいて前記物体点を設定する、
装置。
【請求項21】
前記1又は複数のプロセッサは、
あらかじめ学習された第2モデルに基づいて前記候補領域を検出する、
請求項14乃至請求項20のいずれかに記載の装置。
【請求項22】
入力部が複数の物体を含む画像を入力する入力工程と、
設定部が物体を示す点である物体点を前記入力工程によって入力された前記画像に対して設定する設定工程と、
推定部が前記入力工程によって入力された前記画像中の物体の存在領域を推定する推定工程と、
決定部が前記設定工程によって前記画像に対して設定された前記複数の物体をそれぞれ示す複数の前記物体点と、前記推定工程によって推定された前記画像中の物体の存在領域と、に基づいて、前記設定工程によって前記画像に対して設定された当該複数の前記物体点それぞれが示す物体の存在領域を決定する決定工程と、
を有する方法。
【請求項23】
入力部が複数の物体を含む画像が入力される入力工程と、
設定部が物体を示す点である物体点を前記入力工程によって入力された前記画像に対して設定する設定工程と、
決定部が前記設定工程によって前記画像に対して設定された前記複数の物体をそれぞれ示す複数の前記物体点それぞれについて、前記物体点を含み、且つ、前記物体点によって示される物体と思われる形状の当該物体の存在領域を決定する決定工程と、
を有する方法。
【請求項24】
1又は複数のプロセッサにより、
画像データ中の複数の物体の各物体の位置を示す点である物体点を複数設定し、
前記画像データ中の物体が存在する領域の候補である候補領域を複数検出し、
前複数の記物体点と前記複数の候補領域とに基づいて、前記画像データ中の前記複数の物体のそれぞれについて前記物体が存在する物体領域を決定する、
方法。
【請求項25】
1又は複数のプロセッサに、請求項22乃至請求項24のいずれかの方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体検出装置、物体検出方法及びプログラムに関する。
【背景技術】
【0002】
画像内の物体の存在している領域等を検出する手法として、複数の候補領域をスコア付で出力し、複数の候補領域についてスコアの高いものから選んでいくとともに、既に選ばれている候補領域が指し示す物体とおなじ物体を指し示していると判定された候補領域を削除し、選ばれていない候補領域がなくなるまで繰り返す手法が知られている。
【0003】
しかしながら、例えば、候補領域同士の重なりが高い候補を削除していくため、候補領域同士の重なりが大きい候補領域が検出されないという制約がある。具体的には、画像内において物体同士に重なりが存在する場合には、適切に重なり合っている物体同士を検出できないという問題がある。
【先行技術文献】
【非特許文献】
【0004】
【文献】Naveneeth Bodla, et.al、"Improving Object Detection With One Line of Code"、[online]、平成29年8月8日、arXiv.org、[平成29年11月8日]、インターネット(URI:https://arxiv.org/pdf/1704.04503.pdf)
【発明の概要】
【発明が解決しようとする課題】
【0005】
そこで、本発明は、物体の重なりがある場合においてもそれらの存在領域を検出する物体検出装置を提案する。
【課題を解決するための手段】
【0006】
一実施形態に係る物体検出装置は、画像データ中の物体の位置を示す点である物体点を設定する、物体点設定部と、前記画像データ中の物体が存在する領域の候補である候補領域を検出する、候補領域検出部と、前記物体点を1つ有する前記候補領域を物体領域として選択する、物体領域選択部と、選択された前記物体領域を物体が存在する領域として出力する、出力部と、を備える。
【発明の効果】
【0007】
物体の重なりがある場合においてもそれらの存在領域を検出することができる。
【図面の簡単な説明】
【0008】
図1】一実施形態に係る物体検出装置の機能を示すブロック図。
図2】入力画像の例を示す図。
図3】一実施形態に係る候補領域の抽出例を示す図。
図4】一実施形態に係る個補領域の抽出の別例を示す図。
図5】一実施形態に係る処理を示すフローチャート。
図6】一実施形態に係る物体領域の選択の処理を示すフローチャート。
図7】入力画像中の物体の配置例を示す図。
図8】一実施形態に係る物体領域の選択の処理を示すフローチャート。
図9】一実施形態に係る物体検出の具体例を示す図。
【発明を実施するための形態】
【0009】
(第1実施形態)
本実施形態においては、マーカー又はバーコード等を物体にあらかじめ付与しておき、撮影した画像について当該マーカー又はバーコード等を検出することにより物体を表す点である物体点を設定し、一方、物体が存在すると推定される候補領域を別途検出し、この物体点と候補領域とに基づいて、物体が存在している領域を検出しようとするものである。以下、図面を用いて本実施形態に係る物体検出装置について詳しく説明する。なお、以下の実施形態の説明において、物体と呼んでいるものには、人物又は他の生物等も含むものとする。
【0010】
図1は、本実施形態に係る物体検出装置1の機能を示すブロック図である。物体検出装置1は、入力部10と、物体点設定部12と、候補領域検出部14と、物体領域選択部16と、出力部18と、を備える。
【0011】
入力部10は、外部から画像データが入力されるインターフェースである。入力部10には、例えば、カメラで撮影された画像、ユーザが入力した画像、又は、データベース等の画像に関するデータが入力される。この画像は、静止画であってもよいし、動画であってもよい。動画が入力された場合、入力部10が適切にフレームごとに静止画へと変換してもよいし、指定されたフレームだけを静止画へと変換するようにしてもよい。また、この入力部10は、ユーザインターフェースを有し、ユーザからの指示、又は、要求を受け付けるようにしてもよい。例えば、検出に用いるパラメータ等をユーザが変更できるようにしてもよい。
【0012】
図2は、入力される画像200の一例である。図中の円、矩形、三角形等の図形は、画像中に写っている物体であるものとする。すなわち、画像200内には、物体202、204、206、208、210、212の6個の物体が写っている。各物体において、斜線の引かれている矩形は、それぞれの物体に付与されているマーカー202M、204M、206M、208M、210M、212Mである。
【0013】
物体点設定部12は、画像200内における物体を示す点である物体点を設定する。図2の画像200においては、例えば、物体202の物体点をマーカー200Mとして検出し、設定する。同様に、物体202、204、・・・、212の物体点をそれぞれマーカー202M、204M、・・・、212Mを検出して設定する。
【0014】
マーカーは、例えば、所定の色で塗られている領域、又は、所定の図形が描画されている領域であってもよい。別の例としては、バーコード、2次元バーコードを物体に付与しておいてもよい。このように、マーカーが付与された物体について、カメラ等のデバイスにより画像を撮影することにより、物体点を簡単に検出可能である。
【0015】
さらに別の例としては、ICチップ等の目視することが困難であるものを物体に付与しておき、このICチップの情報を検出することにより、物体点を設定してもよい。ICチップを用いる場合、画像を撮影するカメラに加えて、電波を送受信し、位置を推定するデバイスを用いて画像の撮影と同じタイミングにおいて、ICチップの位置を検出する。そして、これらのデータを重ね合わせることにより、画像中の物体点として設定する。
【0016】
候補領域検出部14は、画像中において物体が存在する領域を推定し、推定された領域を候補領域として検出する。この物体が存在する領域の推定は、物体の存在領域を推定する適切なアルゴリズムであれば、どのようなアルゴリズムを用いてもよい。
【0017】
例えば、画像200内におけるエッジを検出し、エッジの追跡を行うことにより推定してもよいし、所定の大きさの部分画像内における色又は彩度情報等に基づいて推定するようにしてもよい。別の方法としては、あらかじめ所望する物体の画像を様々な角度において読み込ませておき、相互相関演算等のマッチドフィルタ処理を行うようにしてもよいし、教師付学習により生成されたモデルを用いて推定してもよい。
【0018】
図3は、候補領域を検出した一例を示す図である。例えば、物体202に対しては、存在することが推定される領域として候補領域202Rが検出される。同様に、物体204、206、・・・、212に対して、候補領域204R、206R、・・・、212Rが検出される。このように、候補領域は、物体が存在すると推定される領域を囲むように検出される。
【0019】
図4は、候補領域を検出した別の例を示す図である。図3のように全ての領域が矩形である必要は無く、物体と思われる形状で候補領域を検出するものであってもよい。また、矩形であっても、候補領域208R、212Rのように、必ずしも画像200の水平軸及び垂直軸に平行となる矩形である必要は無く、画像200に対して傾きを持った矩形で検出されるものであってもよい。さらに、図4に示すように正確に物体の外周をトレースするものではなくてもよい。候補領域は、このように、物体が存在すると推定される領域を適切に検出できるような領域であればよい。
【0020】
図1に戻り、物体領域選択部16は、物体点設定部12が設定した物体点と、候補領域検出部14が検出した候補領域とに基づいて、物体が存在する領域である物体領域の選択をする。
【0021】
出力部18は、物体領域選択部16が選択した物体領域を出力する。出力するのは、例えば、画像として物体領域を出力するようにしてもよいし、物体領域に関する座標を出力するようにしてもよい。また、出力する先は、プログラム等に出力し、さらに何かしらの動作を行ってもよいし、ユーザが目視できるように、ディスプレイに表示してもよい。
【0022】
図5は、本実施形態に係る物体検出装置1の処理の流れを示すフローチャートである。
【0023】
まず、入力部10は、物体の存在領域を抽出したい画像の入力を受け付ける(ステップS100)。上述したように画像は、カメラ等の撮像デバイスから直接入力されるものであってもよいし、ユーザがファイルを指定して入力するものであってもよい。
【0024】
次に、物体点設定部12は、物体点の設定を行う(ステップS102)。物体点として、図2のようにマーカー202M等が物体に付与されている場合には、物体点設定部12は、例えば、このマーカーの中心点を物体点として設定する。
【0025】
他の例としては、物体点を抽出する第1モデルに当該画像を入力し、物体点を各物体に対して設定するようにしてもよい。この第1モデルは、あらかじめ学習(例えば、教師付学習)により最適化されたモデルであってもよい。この学習により得られたモデルは、例えば、ニューラルネットワークのようなモデルであってもよい。さらには、学習を行わなくてもよく、線形的なマッチングモデル又は相互相関を各領域に対して算出するモデルであってもよい。
【0026】
次に、候補領域検出部14は、物体が存在する候補の領域である候補領域を検出する(ステップS104)。候補領域の検出は、図3又は図4にあるように、任意の形状で行うことができる。この検出は、上述したように、エッジ検出、マッチング又は学習済みのモデルによる演算等により実行される。
【0027】
この候補領域の検出についても、物体点の抽出と同様に実行されてもよい。すなわち、候補領域を検出する第2モデルに当該画像を入力し、物体が存在すると推定される領域を候補領域として検出するようにしてもよい。この第2モデルも、第1モデルと同様に、あらかじめ学習により最適化されたモデルであってもよいし、他の線形モデル等であってもよい。
【0028】
なお、図5においては、物体点設定部12の物体点を設定する処理と、候補領域検出部14の候補領域を検出する処理は、まず、物体点を設定してから候補領域を検出するように描かれているが、これには限られない。すなわち、これらの処理の順番は逆であってもよいし、あるいは、並列処理として同じタイミングで実行されるものであってもよい。
【0029】
次に、物体領域選択部16は、候補領域の中から、物体の存在する物体領域を選択する(ステップS106)。このサブルーチンについての詳細は、後述する。
【0030】
次に、出力部18は、物体領域選択部16が選択した各物体に対する物体領域を出力する(ステップS108)。この際、物体点設定部12により設定された物体点を、対応する物体領域と紐付けて出力するようにしてもよい。
【0031】
図6は、ステップS106に係る処理を示すフローチャートである。物体領域選択部16は、以下の処理にしたがい、物体点及び候補領域から物体領域を選択する。この処理には、物体点に着目するか、候補領域に着目するかにより2通りのアプローチがある。まずは、物体点に着目する手法について説明する。
【0032】
最初に、未選択の物体点のうち1物体点を抽出する(ステップS200)。物体点の抽出は、任意の順番で構わない。未選択であるとは、まだステップS202以降の処理がされていない物体点であることを示す。
【0033】
次に、抽出した物体点を含む候補領域を抽出する(ステップS202)。抽出される候補領域は1つでもよいし、複数であってもよい。この処理は、例えば、図3のように候補領域が矩形である場合には、各候補領域の対角線上にある点の座標を抽出し、当該対角線の水平方向及び垂直方向の座標間にある物体点を抽出することにより行われる。矩形では無い場合には、例えば、候補領域内のラベリングを行い、当該ラベリングされた領域内にある物体点を抽出するようにしてもよい。上記は、一例であり、適切に範囲内の点が抽出できるような処理であれば構わない。
【0034】
次に、抽出した候補領域に複数の物体点が属しているか否かを判定する(ステップS204)。抽出された候補領域が、その領域内に、抽出された物体点を有し、他の物体点を有しない場合(ステップS204:NO)には、当該候補領域を物体領域として選択する(ステップS206)。
【0035】
一方、抽出された候補領域内に、複数の物体点が存在する場合(ステップS204:YES)、当該候補領域に係る処理を保留し、先の処理を行う(ステップS208)。
【0036】
なお、物体点に対して複数の候補領域が抽出された場合、ステップS206の処理を行った候補領域が存在した時点で、他の候補領域を当該物体点に対する物体領域の候補から削除するようにしてもよい。このように、1の物体点を含む候補領域が抽出されるまで複数の候補領域において、ステップS204からステップS208の処理が行われてもよい。
【0037】
別の方法として、ステップS202において抽出された全ての候補領域に対して物体点の包含具合によりスコア付けをし、ステップS204からステップS208の処理を行った後、最も高いスコアの候補領域を当該物体点に対する物体領域として選択するようにしてもよい。この場合、抽出された候補領域のうち、保留となっている候補領域は、例えば、スコア付けにおいて最低スコアをつけておき、選択されないようにしてもよいし、保留となっている候補領域は、この段階では物体領域として選択されないようにしてもよい。
【0038】
このように、ステップS204からステップS208の処理は、図に示されたフローチャートに限定されるものではなく、候補領域内に複数の物体点があるかを判定し、1つであれば物体領域として選択し、そうで無ければ保留するように処理が行えればよい。
【0039】
全ての物体点に対して、ステップS200からステップS208までの処理が行われたかを判断し(ステップS210)、まだ処理を行っていない物体点がある場合(ステップS210:NO)には、処理を行っていない物体点に対して、ステップS200からステップS208までの処理を行う。
【0040】
一方で、全ての物体点に対してステップS200からステップS208までの処理が終了している場合(ステップS210:YES)、保留候補領域の処理を行う(ステップS212)。ステップS208において、処理が保留された候補領域がある場合、保留された候補領域が物体領域であるか否かを判定する。
【0041】
保留された候補領域内にある複数の物体点のうち、物体領域が選択できていない物体点が存在しない場合には、保留を解除して、候補領域から削除する。
【0042】
当該候補領域内にある複数の物体点のうち、物体領域が選択できていない物体点が1つ存在する場合には、保留を解除して、当該物体点に対応する物体領域であると選択する。
【0043】
上記に当てはまらず、複数の物体点において物体領域が選択できていない場合、例えば、物体領域の中央、又は、重み付けをした重心点に近い物体点に対応する物体領域であると選択する。これは、一例であり、他の方法により、物体点に対応する物体領域を選択するようにしてもよい。別の例としては、このような場合には、物体点に対応する物体領域が検出できなかったと出力するようにしてもよい。
【0044】
次に、物体領域選択部16が選択した物体領域を、出力部18が出力する(ステップS214)。出力される物体領域は、物体点と同じ数だけあってもよいし、物体点よりも少ない数であってもよい。上述したように、物体点と対応付けて物体領域を出力するようにしてもよい。
【0045】
なお、上述した各ステップは、物体領域選択部16において、特に専門的な回路又はプログラムにおけるサブルーチン等が行ってもよい。例えば、図示しない物体点選択部がステップS200、候補領域抽出部がステップS202、物体領域判定部がステップS204、物体領域検出部がステップS206、候補領域保留部がS208、保留候補領域処理部がS212、候補領域削除部がステップS214のそれぞれの処理を行うようにしてもよい。
【0046】
物体領域の選択処理について、図3を用いて具体的に説明する。図3内において、斜線で示される点が各物体における物体点であるとする。
【0047】
物体202の候補領域202R内には、物体点202Pが1つ存在し、他の物体点が存在しないので、物体点202Pに対応する物体領域として候補領域202Rが選択される。
【0048】
物体204と、物体206には重なる部分があるものの、物体点204Pを含む候補領域は、候補領域204Rであり、候補領域204Rには1つ物体点しか属しなく、同じく、物体206Pを含む候補領域は、候補領域206Rであり、候補領域206Pには1つの物体点しか属しない。このことから、物体204の物体領域として候補領域204Rが選択され、物体206の物体領域として候補領域206Rが選択される。
【0049】
物体208と、物体210の場合、物体210の候補領域210R内に物体208の物体点208Pが存在する。すなわち、この場合、候補領域210R内には、物体点208P及び物体点210Pの2つの物体点が存在する。
【0050】
(物体領域抽出の第1ケース)
まず、物体点208P、物体点210Pの順番に処理される場合について説明する。これら2つの物体点に関する処理の間に、他の物体点に関する処理が行われてもよい。物体点208Pを有する候補領域は、候補領域208R、210Rの2つが抽出される(ステップS202)。この2つの領域のうち、候補領域208Rには、物体点208Pの1点の物体点が存在し、候補領域210Rには、物体点208Pと物体点210Pの2点の物体点が存在する(ステップS204)。
【0051】
候補領域208Rから物体点の個数判断をした場合、候補領域208Rには、物体点208Pしか存在しない(ステップS204:NO)ため、例えば、物体点208Pに対応する物体領域として候補領域208Rが選択され(ステップS206)、それ以外の候補領域、すなわち、候補領域210Rは、物体点208Pに対応する候補からは削除されるため、物体点208Pに対応する物体領域として、候補領域208Rのみが選択される。
【0052】
候補領域210Rから先に処理をされた場合、候補領域210Rには、物体点208P、210Pの2つが存在する(ステップS204:YES)ので、物体点208Pに対する候補領域210Rの処理は保留される(ステップS208)。その後、上記と同様に候補領域208Rが物体点208Pに対応する物体領域として選択される(ステップS206)ので、候補領域210Rは、物体点208Pに対応する候補領域からは削除される(ステップS212)。
【0053】
次に、物体点210Pについての処理が行われる(ステップS200)。物体点210Pを含む候補領域は、候補領域210Rが存在する(ステップS202)。そして、候補領域210R内には、物体点208P、210Pの2点が存在する(ステップS204:YES)。そこで、いったん候補領域210Rに対する処理を保留する(ステップS208)。しかしながら、既に候補領域210Rは、物体点208Pに対応する候補領域からは削除されているので、結果として、候補領域210R内の物体点は、物体点208Pを省いた物体点210Pの1点が存在することとなる。
【0054】
すなわち、この場合、物体点210Pに対応する物体領域として候補領域210Rが選択される(ステップS212)。なお、物体点208Pに対する候補領域から削除されていることから、処理の保留を経ずに、結果的に候補領域210Rが有する物体点が210PであるとステップS204において判定し、ステップS206へと処理を進めるようにしてもよい。
【0055】
(物体領域抽出の第2ケース)
物体点210P、物体点208Pの順番に処理される場合について説明する。物体点210Pを有する候補領域は、候補領域210Rが抽出される(ステップS202)。候補領域210Rには、物体点208P、210Pの2つの物体点が存在する(ステップS204:YES)ので、物体点210Pに対応する物体領域の選択として、候補領域210Rの処理は、保留される(ステップS208)。
【0056】
次に、物体点208Pについての処理が行われる(ステップS200)。物体点208Pを含む候補領域は、候補領域208Rと候補領域210Rの2つが抽出される(ステップS202)。候補領域208R、210Rの順で処理されると、候補領域208Rには、物体点208Pの1点が存在する(ステップS204:NO)ので、物体点208Pに対応する物体領域として候補領域208Rが選択され(ステップS206)、候補領域210Rは、物体点208Pの候補からは削除され、上述と同様の処理が行われる。
【0057】
候補領域210R、208Rの順で処理されると、候補領域210Rには、物体点208P、210Pの2点が存在する(ステップS204:YES)ので、物体点210Pの処理は保留される(ステップS208)。その後、候補領域208Rの処理がされ、候補領域208Rには物体点208Pの1点が存在する(ステップS204:NO)ので、物体点208Pに対応する物体領域として候補領域208Rが選択され(ステップS206)、その後の処理は、上述したものと同様になる。
【0058】
このように、2点の物体点を含む候補領域が存在する場合には、一時的に処理を保留することにより、適切に物体点からみた物体領域が1つ選択されることとなる。
【0059】
(物体領域抽出の第3ケース)
図7は、上記の例に当たらない別の例を示す図である。図7に示す図は、画像200内の一部を切り取ったものであり、例えば、物体220と、物体222が撮影されたものである。物体点として物体点220P及び物体点222Pが設定され、候補領域として候補領域220R及び候補領域222Rが検出され、さらに、別の候補領域として候補領域224Rが検出されている。
【0060】
図6のフローチャートにしたがい、図7の場合についての処理を説明する。
【0061】
まず、未選択の物体点として、例えば、物体点220Pを抽出する(ステップS200)。次に、物体点220Pを含む候補領域として、候補領域220R、222R、224Rの3つが抽出される(ステップS202)。この抽出された3つの領域それぞれに、ステップS204からステップS208の処理を行う。
【0062】
候補領域220Rは、その内側に、物体点220P、222Pを有するため(ステップS204:YES)、処理が保留される(ステップS208)。他の2つの候補領域222R、224Rについても同様に、その内側に物体点220P、222Pを有するため、いずれも処理が保留される。
【0063】
次に、保留候補領域の処理を行う(ステップS212)。図7の物体220、222の場合、3つの候補領域220R、222R、224Rの全てについて、物体点220P、222Pが含まれているので、ステップS210までの処理においては、物体領域が検出されない。
【0064】
そこで、保留候補領域の処理として、物体点から一番近い位置に中心点がある候補領域を当該物体点に対応する物体領域として抽出する。各候補領域220R、222R、2224Rの中心点は、図中に中心点220C、222C、224Cとして示されている。
【0065】
物体点220Pに一番近いのは、中心点220Cであるので、物体点220Pに対応する物体領域として、候補領域220Rが選択される。一方、物体点222Pに一番近いのは、中心点222Cであるので、物体点222Pに対応する物体領域として、候補領域222Rが選択される。
【0066】
別の例としては、物体点220Pに対応する物体領域として、候補領域220Rが選択されたので、物体点220Pを含む他の候補領域222R、224Rを物体点220Pに対応する候補領域から削除してもよい。削除された後に、物体点222Pに対応する物体領域の選択を行うようにしてもよい。
【0067】
さらに別の例としては、それぞれの物体点220P、222Pからそれぞれの候補領域の中心点220C、222C、224Cまでの距離を算出し、当該距離をスコアとして、スコアが一番低くなる中心点を有する候補領域を当該物体点の物体領域として算出してもよい。
【0068】
また、候補領域のスコア付けをするために上記では中心点を用いたが、これには限られず、例えば、候補領域の面積、候補領域の存在位置、あるいは、候補領域の特徴抽出等、他の方法を用いてスコア付けをするようにしてもよい。すなわち、物体点との関係において、候補領域が適切に選択できるようなスコア付けであればよい。
【0069】
以上のように、本実施形態によれば、物体に重なりがあり、物体の存在領域として物体点に対応する候補領域が複数存在する場合に、物体点がそれらの候補領域内にいくつ存在するかを検出することにより、簡単、かつ、精度よく物体の存在する領域を選択することが可能となる。例えば、図3のように重なり合っている場合には、物体208と物体210の存在する領域と、物体点とを適切に紐付けることができる。
【0070】
図7に示す候補領域224Rのように、物体の存在する領域として複数の物体そのものを含んでしまう領域が検出されることがある。このような場合にも、上述したように、物体点に対応する物体領域を適切に選択することが可能である。このように、物体同士の重なりが大きい画像においても、物体点とその存在領域である物体領域とを精度よく紐付けることができる。
【0071】
なお、上述においては、図6のフローチャートに示すように、物体点を抽出して、当該物体点を含む候補領域を抽出するようにしたが、これには限られない。すなわち、図8に示すように、処理の流れとしては、候補領域を抽出し、当該候補領域内に存在する物体点を抽出して処理を行うようにしてもよい。
【0072】
(変形例)
前述の実施形態においては、画像から物体点の設定方法として、マーカー又はICチップを利用する例を説明したが、物体点の設定方法は、これらには限られない。
【0073】
例えば、物体を検出する処理において、マッチドフィルタを用いる場合、当該元となる物体の中心点の位置が可能である。そこで、この中心点を物体点として利用してもよい。あらかじめ学習により得られた第1モデルを用いる場合、物体の中心点等を教師データとして入力した学習及び強化学習を行うことにより、自動的に物体の中心点を物体点として設定するようにしてもよい。さらに、この場合、中心点ではなく、物体を把持しやすい位置等を物体点として検出するように教師付学習を行ってもよい。
【0074】
人物の検出を行う場合には、顔の中心点、例えば、画像から推定された鼻の位置を物体点として設定してもよい。この場合も、第1モデルとして線形演算又は相関演算を行うモデルのみならず、教師データとして、人物の画像と、当該人物の特徴となる点(例えば、鼻の位置)を対応付けるように学習させ、物体点として設定できるようにモデルを生成してもよい。
【0075】
図9(a)は、人物が写った画像を入力画像とする場合の例であり、図9(b)は、当該入力画像から人物検出を行った結果を示す画像である。一例として、鼻の位置を推定して物体点として設定している。
【0076】
このように、本実施形態によれば、重なり合った人物同士においても精度よくその顔の位置を検出することが可能となる。また、顔だけには限られず、全身が写っている人物は、全身を人物が存在する領域として出力し、顔だけが写っている人物は、その顔の存在する領域を出力するよう、混合して出力するようにしてもよい。
【0077】
例えば、右にいる2人の人物は、写っている領域に重なりが大きく、後ろの人物が領域として検出されたとしても、手前の人物の領域と写っている領域に重なりが大きく、重なりの大きさで比較する手法では、手前の人物1人しかいないと判断されてしまう場合があるが、本実施形態によれば、領域の重なりの大きさに拘わらず、精度よく検出することが可能となる。左にいる2人の人物についても同様である。
【0078】
特に監視カメラのように、鳥瞰的に撮影する場合、遠くに写る人物は、顔が重なり合うことが多い。このような場合にも、本実施形態に係る物体検出装置1によれば、適切に人物の顔を検出することが可能となる。
【0079】
上記の全ての記載において、物体検出装置1の少なくとも一部はハードウェアで構成されていてもよいし、ソフトウェアで構成され、ソフトウェアの情報処理によりCPU等が実施をしてもよい。ソフトウェアで構成される場合には、物体検出装置1及びその少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD-ROM等の記憶媒体に収納し、コンピュータに読み込ませて実行させるものであってもよい。記憶媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記憶媒体であってもよい。すなわち、ソフトウェアによる情報処理がハードウェア資源を用いて具体的に実装されるものであってもよい。さらに、ソフトウェアによる処理は、FPGA等の回路に実装され、ハードウェアが実行するものであってもよい。学習モデルの生成や、学習モデルに入力をした後の処理は、例えば、GPU等のアクセラレータを使用して行ってもよい。
【0080】
また、本実施形態に係るデータ推定モデルは、人工知能ソフトウェアの一部であるプログラムモジュールとして利用することが可能である。すなわち、コンピュータのCPUが格納部に格納されているモデルに基づいて、演算を行い、結果を出力するように動作する。
【0081】
前述した実施形態において入出力される画像は、グレースケールの画像であってもよいしカラー画像であってもよい。カラー画像である場合、その表現は、RGB、XYZ等、適切に色を表現できるのであれば、どのような色空間を用いてもよい。また、入力される画像データのフォーマットも、生データ、PNGフォーマット等、適切に画像を表現できるのであれば、どのようなフォーマットであっても構わない。
【0082】
上記の全ての記載に基づいて、本発明の追加、効果又は種々の変形を当業者であれば想到できるかもしれないが、本発明の態様は、上記した個々の実施形態に限定されるものではない。特許請求の範囲に規定された内容及びその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲において種々の追加、変更及び部分的削除が可能である。
【符号の説明】
【0083】
1:物体検出装置、10:入力部、12:物体点設定部、14:候補領域検出部、16:物体領域選択部、18:出力部
200:画像
202、204、206、208、210、212、220、222:物体
202P、204P、206P、208P、210P、212P、220P、222P:物体点
202R、204R、206R、208R、210R、212R、220R、222R、224R:候補領域
図1
図2
図3
図4
図5
図6
図7
図8
図9