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

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

▶ コニカミノルタ株式会社の特許一覧

<>
  • 特許-物体検出方法および物体検出装置 図1
  • 特許-物体検出方法および物体検出装置 図2
  • 特許-物体検出方法および物体検出装置 図3
  • 特許-物体検出方法および物体検出装置 図4
  • 特許-物体検出方法および物体検出装置 図5
  • 特許-物体検出方法および物体検出装置 図6
  • 特許-物体検出方法および物体検出装置 図7
  • 特許-物体検出方法および物体検出装置 図8
  • 特許-物体検出方法および物体検出装置 図9
  • 特許-物体検出方法および物体検出装置 図10
  • 特許-物体検出方法および物体検出装置 図11
  • 特許-物体検出方法および物体検出装置 図12
  • 特許-物体検出方法および物体検出装置 図13
  • 特許-物体検出方法および物体検出装置 図14
  • 特許-物体検出方法および物体検出装置 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-07
(45)【発行日】2022-03-15
(54)【発明の名称】物体検出方法および物体検出装置
(51)【国際特許分類】
   G06T 7/00 20170101AFI20220308BHJP
【FI】
G06T7/00 350C
【請求項の数】 20
(21)【出願番号】P 2020523539
(86)(22)【出願日】2019-04-03
(86)【国際出願番号】 JP2019014766
(87)【国際公開番号】W WO2019235050
(87)【国際公開日】2019-12-12
【審査請求日】2021-12-24
(31)【優先権主張番号】P 2018107499
(32)【優先日】2018-06-05
(33)【優先権主張国・地域又は機関】JP
【早期審査対象出願】
(73)【特許権者】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】110001933
【氏名又は名称】特許業務法人 佐野特許事務所
(72)【発明者】
【氏名】関井 大気
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2013-232080(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
画像から複数の物体と前記複数の物体の関係とを検出する物体検出方法であって、
前記複数の物体が前記画像上で占める領域の候補を検出する候補検出ステップと、
検出した前記候補ごとに、前記候補を一の候補として、前記一の候補の周囲の予め設定された範囲内の他の候補を参照して、前記一の候補の前記他の候補に対する所定の関係の尤度を表す関係スコアを検出する関係スコア検出ステップと、
所定のアルゴリズムに基づいて、検出した前記候補から前記複数の物体の前記領域を決定する物体決定ステップと、
決定した前記領域に対応する候補のペアについて検出された前記関係スコアに基づいて、前記複数の物体の前記関係を決定する関係決定ステップとを含む、物体検出方法。
【請求項2】
前記候補検出ステップおよび前記関係スコア検出ステップは、ニューロ演算によって並列に実行される、請求項1に記載の物体検出方法。
【請求項3】
前記ニューロ演算は、CNNによる演算である、請求項2に記載の物体検出方法。
【請求項4】
前記候補検出ステップでは、前記画像上に設定された複数のグリッドのそれぞれに対する前記候補の相対位置、前記画像に対する前記候補の相対的なサイズ、前記物体に対する前記候補の尤度を表す検出スコア、前記グリッドにおける前記物体のクラスの尤度を表すクラススコアの少なくともいずれかのパラメータをさらに検出する、請求項1から3のいずれかに記載の物体検出方法。
【請求項5】
前記物体決定ステップにおける前記所定のアルゴリズムは、Non-Maximum Suppressionである、請求項4に記載の物体検出方法。
【請求項6】
前記関係決定ステップでは、前記関係スコアが複数存在するときに、閾値未満の関係スコアを除外する、請求項1から5のいずれかに記載の物体検出方法。
【請求項7】
前記関係決定ステップでは、2つの前記候補からなるペアについて得られる前記関係スコアとして、前記ペアの一方の候補から他方の候補に対して得られる関係スコアと、前記ペアの前記他方の候補から前記一方の候補に対して得られる関係スコアとが存在するときに、より小さいほうの関係スコアを除外する、請求項1から6のいずれかに記載の物体検出方法。
【請求項8】
決定した前記複数の物体の前記領域と、前記複数の物体の前記関係とに基づいて、前記画像の説明文を作成する説明文作成ステップをさらに含む、請求項1から7のいずれかに記載の物体検出方法。
【請求項9】
前記説明文作成ステップでは、ニューロ演算によって前記説明文を作成する、請求項8に記載の物体検出方法。
【請求項10】
前記複数の物体の前記関係は、前記複数の物体間のかかわりまたは状態、一方の物体の他方の物体に対する作用または動作、の少なくともいずれかを含む、請求項1から9のいずれかに記載の物体検出方法。
【請求項11】
画像から複数の物体と前記複数の物体の関係とを検出する物体検出装置であって、
前記複数の物体が前記画像上で占める領域の候補を検出するとともに、検出した前記候補ごとに、前記候補を一の候補として、前記一の候補の周囲の予め設定された範囲内の他の候補を参照して、前記一の候補の前記他の候補に対する所定の関係の尤度を表す関係スコアを検出する候補/関係スコア検出部と、
所定のアルゴリズムに基づいて、検出した前記候補から前記複数の物体の前記領域を決定する物体決定部と、
決定した前記領域に対応する候補のペアについて検出された前記関係スコアに基づいて、前記複数の物体の前記関係を決定する関係決定部とを含む、物体検出装置。
【請求項12】
前記候補/関係スコア検出部は、前記候補の検出と前記関係スコアの検出とをニューロ演算によって並列して行う、請求項11に記載の物体検出装置。
【請求項13】
前記ニューロ演算は、CNNによる演算である、請求項12に記載の物体検出装置。
【請求項14】
前記候補/関係スコア検出部は、前記画像上に設定された複数のグリッドのそれぞれに対する前記候補の相対位置、前記画像に対する前記候補の相対的なサイズ、前記物体に対する前記候補の尤度を表す検出スコア、前記グリッドにおける前記物体のクラスの尤度を表すクラススコアの少なくともいずれかのパラメータをさらに検出する、請求項11から13のいずれかに記載の物体検出装置。
【請求項15】
前記物体決定部が前記領域を決定する際に用いる前記所定のアルゴリズムは、Non-Maximum Suppressionである、請求項14に記載の物体検出装置。
【請求項16】
前記関係決定部は、前記関係スコアが複数存在するときに、閾値未満の関係スコアを除外する、請求項11から15のいずれかに記載の物体検出装置。
【請求項17】
前記関係決定部は、2つの前記候補からなるペアについて得られる前記関係スコアとして、前記ペアの一方の候補から他方の候補に対して得られる関係スコアと、前記ペアの前記他方の候補から前記一方の候補に対して得られる関係スコアとが存在するときに、より小さいほうの関係スコアを除外する、請求項11から16のいずれかに記載の物体検出装置。
【請求項18】
決定した前記複数の物体の前記領域と、前記複数の物体の前記関係とに基づいて、前記画像の説明文を作成する説明文作成部をさらに含む、請求項11から17のいずれかに記載の物体検出装置。
【請求項19】
前記説明文作成部は、ニューロ演算によって前記説明文を作成する、請求項18に記載の物体検出装置。
【請求項20】
前記複数の物体の前記関係は、前記複数の物体間のかかわりまたは状態、一方の物体の他方の物体に対する作用または動作、の少なくともいずれかを含む、請求項11から19のいずれかに記載の物体検出装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像から、複数の物体と、複数の物体の間の関係とを検出する物体検出方法および物体検出装置に関する。
【背景技術】
【0002】
近年、画像から複数の物体を検出し、複数の物体の間に存在する関係を推定する技術が提案されている。例えば非特許文献1では、複数のCNN(Convolutional Neural Network)を用い、物体の候補および関係の候補を段階的に絞ることで、複数の物体とそれらの間の関係を推定している。より詳しくは、画像から人物を検出するためのCNNと、人物以外の物体(例えば傘)を検出するためのCNNと、それらの関係を検出するためのCNNとを用意し、各CNNによって人物、物体、関係の各候補を抽出した後、抽出した各候補を統合し、その後、畳み込みを行って各候補を絞っている。
【先行技術文献】
【非特許文献】
【0003】
【文献】Ji Zhang , et al., “Relationship Proposal Networks”, Computer Vision and Pattern Recognition (CVPR), 2017 IEEE Conference, July 21-26, 2017
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところが、非特許文献1の技術では、候補を絞り込むための中間処理(統合および畳み込み)が必要であり、また、複数のCNNで畳み込みを行った上で、各候補の統合後に再度畳み込みを行うため、畳み込みの処理も冗長である。このため、非特許文献1の技術では、画像から複数の物体とそれらの物体間の関係とを高速で推定(検出)することが困難である。
【0005】
本発明は、上記の問題点を解決するためになされたもので、その目的は、画像から複数の物体とそれらの関係とを高速で検出することができる物体検出方法および物体検出装置を提供することにある。
【課題を解決するための手段】
【0006】
本発明の一側面に係る物体検出方法は、画像から複数の物体と前記複数の物体の関係とを検出する物体検出方法であって、前記複数の物体が前記画像上で占める領域の候補を検出する候補検出ステップと、検出した前記候補ごとに、前記候補を一の候補として、前記一の候補の周囲の予め設定された範囲内の他の候補を参照して、前記一の候補の前記他の候補に対する所定の関係の尤度を表す関係スコアを検出する関係スコア検出ステップと、所定のアルゴリズムに基づいて、検出した前記候補から前記複数の物体の前記領域を決定する物体決定ステップと、決定した前記領域に対応する候補のペアについて検出された前記関係スコアに基づいて、前記複数の物体の前記関係を決定する関係決定ステップとを含む。
【0007】
本発明の他の側面に係る物体検出装置は、画像から複数の物体と前記複数の物体の関係とを検出する物体検出装置であって、前記複数の物体が前記画像上で占める領域の候補を検出するとともに、検出した前記候補ごとに、前記候補を一の候補として、前記一の候補の周囲の予め設定された範囲内の他の候補を参照して、前記一の候補の前記他の候補に対する所定の関係の尤度を表す関係スコアを検出する候補/関係スコア検出部と、所定のアルゴリズムに基づいて、検出した前記候補から前記複数の物体の前記領域を決定する物体決定部と、決定した前記領域に対応する候補のペアについて検出された前記関係スコアに基づいて、前記複数の物体の前記関係を決定する関係決定部とを含む。
【発明の効果】
【0008】
複数の物体が画像上で占める領域の候補を検出し、検出した候補間の関係の尤度を表す関係スコアを検出するため、候補の検出と関係スコアの検出とを、例えば単一のCNNを用いたニューロ演算によって同時に(並列して、まとめて)行うことができる。これにより、上記関係スコアに基づいて、複数の物体とそれらの物体間の関係とを高速で検出することが可能となる。
【図面の簡単な説明】
【0009】
図1】本発明の実施の形態の物体検出装置の概略の構成を示すブロック図である。
図2】上記物体検出装置が有する候補/関係スコア検出部の構成を模式的に示す説明図である。
図3】上記物体検出装置による物体検出方法の処理の流れを示すフローチャートである。
図4】上記候補/関係スコア検出部による候補の検出の手順を模式的に示す説明図である。
図5】特定のグリッドに対して複数の候補を検出する例を模式的に示す説明図である。
図6】他のグリッドに対して複数の候補を検出する例を模式的に示す説明図である。
図7】クラススコアが最大であるクラスをグリッドごとに模式的に示す説明図である。
図8】上記候補/関係スコア検出部による関係スコアの検出の手順を模式的に示す説明図である。
図9】上記候補/関係スコア検出部から出力される特徴マップを示す説明図である。
図10】上記物体検出装置の物体決定部が、複数の候補から、複数の物体の領域を決定した状態を示す説明図である。
図11図10で示した各領域に対応する候補から選択される2つの候補についての関係をグラフ表現した説明図である。
図12】閾値処理の前後での2つの候補間の関係を模式的に示す説明図である。
図13】関係スコアを絞り込む前後での2つの候補間の関係を模式的に示す説明図である。
図14】上記物体検出装置の他の構成を示すブロック図である。
図15図14の物体検出装置による物体検出方法の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0010】
本発明の実施の形態について、図面に基づいて説明すれば、以下の通りである。なお、本発明は、以下の内容に限定されるわけではない。
【0011】
〔物体検出装置の構成〕
図1は、本実施形態の物体検出装置1の概略の構成を示すブロック図である。物体検出装置1は、例えば、パーソナルコンピュータなどの端末装置で構成されており、店舗内に設置される少なくとも1台の監視カメラ10と通信回線(有線、無線を問わない)を介して接続されている。監視カメラ10での撮影によって取得された画像(動画または静止画)のデータが物体検出装置1に入力されると、物体検出装置1では、後述する物体検出方法による処理を実行し、これによって、画像上の複数の物体と、各物体の間の関係とが検出される。
【0012】
なお、本明細書において、「関係」とは、複数の物体間のかかわりまたは状態、一方の物体の他方の物体に対する作用または動作、の少なくともいずれかを含む。したがって、例えば、画像上で人物が傘を持っているとき、「持っている」という状態、または「持つ」という動作が上記の関係に相当する。この他、(人物が傘を)「差す」とか、AがBに「属する」、といった動作または状態も、上記の関係に含まれる。
【0013】
なお、物体検出装置1は、必ずしも監視カメラ10と接続されている必要はなく、外部から画像データを取得できる構成であればよい。例えば、物体検出装置1は、画像データのファイルを添付した電子メールを他の端末装置から受信することにより、上記画像データを取得したり、記録媒体に記録された画像データを読取装置によって読み取ることにより、物体検出に必要な上記画像データを取得する構成であってもよい。以下、物体検出装置1の詳細について説明する。
【0014】
物体検出装置1は、制御部2と、記憶部3と、入力部4と、表示部5と、通信部6と、検出処理部7とを有している。
【0015】
制御部2は、例えば中央演算処理装置(CPU;Central Processing Unit)で構成されており、記憶部3に記憶された動作プログラムに従って動作し、物体検出装置1の各部の動作を制御する。
【0016】
記憶部3は、上記動作プログラムや、監視カメラ10で取得された画像のデータなどを記憶するメモリである。記憶部3は、例えばハードディスクで構成されるが、RAM(Random Access Memory)、ROM(Read Only Memory)、光ディスク、光磁気ディスク、不揮発性メモリなどの記録媒体から適宜選択して構成されてもよい。
【0017】
入力部4は、例えばキーボード、マウス、タッチパッド、タッチパネルなどで構成されており、ユーザによる各種の指示入力を受け付ける。表示部5は、監視カメラ10で取得された画像や、後述する検出処理部7で検出された結果(例えば物体と物体との関係)などの各種の情報を表示するデバイスであり、例えば液晶表示装置で構成される。通信部6は、外部(監視カメラ10を含む)と通信するためのインターフェースであり、入出力端子などを含んで構成される。なお、例えば監視カメラ10と物体検出装置1とが無線で通信(例えば画像データの送受信)を行う場合、通信部6は、アンテナ、送受信回路、変調回路、復調回路などを含んで構成されてもよい。
【0018】
検出処理部7は、画像から複数の物体と、複数の物体の関係とを検出する物体検出処理を行うブロックであり、候補/関係スコア検出部7aと、物体決定部7bと、関係決定部7cとを含んで構成されている。検出処理部7は、例えばリアルタイムな画像処理に特化した演算装置であるGPU(Graphics Processing Unit)で構成されるが、制御部2と同一のまたは別個のCPUで構成されてもよく、その他の演算装置で構成されてもよい。
【0019】
候補/関係スコア検出部7aは、例えばCNNで構成されており、画像が入力されたときに、複数の物体が画像上で占める領域の候補(バウンディングボックスとも呼ばれる矩形状の枠)を検出するとともに、検出した複数の候補の間での所定の関係の尤度(確からしさ、信頼度)を表す関係スコアを検出する。なお、上記候補の検出にあたっては、例えば、Joseph Redmon, et al., "You Only Look Once: Unified, Real-Time Object Detection", Computer Vision and Pattern Recognition (cs.CV), Submitted on 8 Jun 2015 (v1), last revised 9 May 2016 に記載の技術(以下、“YOLO”と略記する)を採用することができるが、上記関係スコアの検出およびその関係スコアに基づく関係の決定については、“YOLO”には一切記載されていない。
【0020】
また、候補/関係スコア検出部7aは、画像上に設定された複数のグリッドのそれぞれに対する候補の相対位置(例えばグリッドの中心に対する候補の中心の位置)、上記画像に対する候補の相対的なサイズ(縦横の大きさ)、物体に対する候補の尤度を表す検出スコア、グリッドにおける物体のクラス(種類)の尤度を表すクラススコアの少なくともいずれかのパラメータをCNNによって検出する。なお、物体に対する候補の尤度とは、候補が物体を示すことの確からしさ、および/または、候補が物体にフィットしていることの確からしさを表す。また、物体のクラスの尤度とは、グリッドにおける物体が属するクラスの確からしさを表す。なお、上記各パラメータ(候補の相対位置等)の検出にあたっては、“YOLO”の技術を採用することができる。
【0021】
ここで、本実施形態の候補/関係スコア検出部7aを構成するCNNについて、説明を補足しておく。
【0022】
図2は、候補/関係スコア検出部7a(CNN)の構成を模式的に示す説明図である。CNNは、入力層11と、畳み込み層12と、プーリング層13と、出力層14とを有して構成される。畳み込み層12およびプーリング層13は、少なくとも1組あればよいが、複数組あってもよい。
【0023】
CNNを構成する上述した各層は、それぞれ複数のノード(またはユニット)を有しており、各層間で、複数のノードの少なくとも一部がエッジで結ばれている。ニューラルネットワークとは、人間の神経ネットワークを模倣した情報処理システムのことであるが、上記のノードは、人間の神経細胞に相当する工学的なニューロンのモデルを表す。各層は、活性化関数(応答関数)と呼ばれる関数を持ち、エッジは重みを持つ。したがって、各層のノードから出力される値は、前の層のノードの値と、エッジの重みと、層が持つ活性化関数とから計算される。なお、エッジの重みは、学習によって変化させることができる。
【0024】
入力層11の各ノードには、1枚の画像を構成する各画素のデータ(画素値)がそれぞれ入力される。畳み込み層12は、前の層の所定のノードから出力される値に対してフィルタ処理を行って特徴マップを得る。プーリング層13は、畳み込み層12から出力された特徴マップをさらに縮小して新たな特徴マップを得る。出力層14は、CNNの最終層であり、前の層のノードの値と、エッジの重みと、出力層14が持つ活性化関数とから、上述の各パラメータ(領域の候補、関係スコア、候補の相対位置、候補の相対的なサイズ、検出スコア、クラススコア)を出力する。なお、出力層14は、フィルタ処理を行う畳み込み層で構成されてもよいし、1つ前の層の全ノードからの出力を結合し、所定の演算を行って各パラメータを出力する全結合層で構成されてもよい。
【0025】
候補/関係スコア検出部7a(CNN)の学習アルゴリズムとしては、例えば、正解付きの画像データを用い、上記画像データを入力したときに得られる出力層14からの出力値と、正解を示す値との2乗誤差が最小となるように、最急降下法を用いて、各層(エッジ)の重みを出力層14側から入力層11側に向かって順次変化させていく誤差逆伝播法(バックプロパゲーション)を用いることができる。このようにCNNを予め学習させておくことにより、検出対象の複数の物体が含まれる画像をCNNに入力させたときに、上述した各パラメータをCNNから出力させて、それらを検出(推定)することができる。
【0026】
物体決定部7bは、所定のアルゴリズムに基づいて、候補/関係スコア検出部7aによって検出した複数の物体の候補から、複数の物体の領域を決定する。関係決定部7cは、物体決定部7bが決定した(複数の物体の)領域に対応する候補のペアについて検出された関係スコアに基づいて、複数の物体の関係を決定する。なお、物体の領域の決定および物体間の関係の決定の詳細については、以下の物体検出方法の説明の中で併せて説明する。
【0027】
〔物体検出方法〕
次に、本実施形態の物体検出方法について説明する。図3は、図1の物体検出装置1による物体検出方法の処理の流れを示すフローチャートである。本実施形態の物体検出方法は、候補検出ステップ(S1)と、関係スコア検出ステップ(S2)と、物体決定ステップ(S3)と、関係決定ステップ(S4)とを含む。以下、より詳細に説明する。
【0028】
(S1;候補検出ステップ)
S1では、検出処理部7の候補/関係スコア検出部7aが、所定のアルゴリズムに基づくニューロ演算(CNN)により、複数の物体が画像上で占める領域の候補を検出する。より詳しくは、以下の通りである。
【0029】
図4は、候補/関係スコア検出部7aによる候補の検出の手順を模式的に示している。同図に示すように、候補/関係スコア検出部7aは、HおよびWを2以上の整数として、入力画像をH×W個(図4では例として4×4=16個)の複数のグリッドに分割したときの各グリッドごとに、全クラスに共通で2個の候補Bをクラススコア付きで検出する。なお、上記入力画像として、ここでは、CNNの出力層14(図2参照)に入力される画像、すなわち、入力層11に入力された画像から、畳み込み層12およびプーリング層13によって特徴が抽出された後の画像を考える。以下の説明では、上記入力画像のことを、単に画像とも称する。
【0030】
なお、各グリッドごとに検出する候補Bの数をKとしたとき、図4では、K=2としているが、Kを2以外の値に設定することも可能である。また、Kの値は、クラスごとに(異なる値に)設定されてもよい。
【0031】
また、S1では、候補/関係スコア検出部7aは、画像上に設定された複数のグリッドのそれぞれに対する候補Bの相対位置、画像に対する候補Bの相対的なサイズ、候補Bの検出スコア、グリッドごとのクラススコアをさらに検出する。ここで、各グリッドに対する候補Bの相対位置は、各グリッドの中心に対する、候補Bの中心の縦方向(H方向)および横方向(W方向)の相対位置であり、縦方向および横方向についての2次元の情報である。また、候補Bの相対的なサイズは、画像全体の縦方向および横方向のサイズに対する、候補Bの縦方向および横方向のサイズであり、候補Bの相対位置と同様に、縦方向および横方向についての2次元の情報である。また、候補Bの検出スコアは、候補Bが画像上の物体を示すことの確からしさの情報、および/または、候補Bが物体にフィットしていることの確からしさの情報であり、P=1または2として、P次元の情報であると言える。さらに、クラススコアは、設定されるクラスの数をC個として、各グリッドごとにC種類検出されるため、C次元の情報であると言える。
【0032】
したがって、後述する関係スコアの検出を考慮しなければ、候補/関係スコア検出部7a(CNNの出力層14)から出力される特徴マップは、H×W×{K(2+2+P)+C)}で表される3階のテンソルとなる。
【0033】
図5は、特定のグリッドに対して複数の候補Bを検出する例を模式的に示している。図4では、検出する候補Bの縦横のサイズを一定として示しているが、候補/関係スコア検出部7aを構成するCNNは、予め所定の画像パターンを用いて学習されているため、検出する候補Bの縦横のサイズを、画像または画像上の物体に応じて変化させることができる。例えば、各グリッドの位置を、H方向の座標をhとし、W方向の座標をwとして、(h,w)で表し、(h,w)=(1,2)のグリッド(斜線のグリッド参照)に着目したとき、候補/関係スコア検出部7aは、複数の物体領域の候補Bとして、上記グリッド内に中心が位置する2つの候補B1・B2を検出する(ここではK=2に設定されているため、検出される候補数は2個である)。図5の例では、候補/関係スコア検出部7aが、候補B2として、物体(例えば傘)にフィットする枠を検出した例を示している。
【0034】
図6は、他のグリッドに対して複数の候補Bを検出する例を模式的に示している。ここでは、(h,w)=(3,2)、(3,4)、(4,3)、の各グリッドに対する候補Bの検出例を示している。このように、図5と同様の候補Bの検出が、他のグリッドに対しても行われ、最終的に、全グリッドに対して複数の候補Bが検出される。
【0035】
図7は、各グリッドごとに検出されるクラススコアに基づき、クラススコアが最大であるクラスをグリッドごとに模式的に示したものである(クラスの違いはハッチングの違いで示している)。同図では、例として、「傘」についてのクラススコアが最大であるグリッドの領域と、「傘を持つ人物」についてのクラススコアが最大であるグリッドの領域と、「他の人物」についてのクラススコアが最大であるグリッドの領域とを区別して示している。候補/関係スコア検出部7aがグリッドごとにクラススコアを検出することにより、そのクラススコアに基づき、各グリッドにおいてどのクラスが最も確からしいかを検出することができる。
【0036】
(S2;関係スコア検出ステップ)
S2では、候補/関係スコア検出部7aが、所定のアルゴリズムに基づくニューロ演算(CNN)により、各候補間の関係の尤度を表す関係スコアを検出する。このS2の関係スコア検出ステップは、上述したS1の候補検出ステップと並列に実行される。ここでは、S1の候補検出ステップと、S2の関係スコア検出ステップとをまとめて、候補/関係スコア検出ステップS10と呼ぶ。以下、S2の関係スコア検出ステップの詳細について説明する。
【0037】
図8は、候補/関係スコア検出部7aによる関係スコアの検出の手順を模式的に示している。ここで、H’×W’(ただしH’<H、W’<W)の範囲内のいずれかのグリッドiにおいて検出された一の候補を、B(k,i)とする。ただし、kは1からKまでのいずれかの整数であり、iは1からH’×W’までのいずれかの整数であり、グリッドiは、H’×W’の範囲内の第i番目のグリッドを指す。また、H’×W’の範囲内のいずれかのグリッドjにおいて検出された他の候補を、B(k,j)とする。ただし、jは1からH’×W’までのいずれかの整数であり、グリッドjは、H’×W’の範囲内の第j番目のグリッドを指す。
【0038】
同図に示すように、候補/関係スコア検出部7aは、S1で検出した各候補Bから、一の候補B(k,i)を抽出するとともに、その一の候補B(k,i)の周囲の予め設定されたH’×W’の範囲内の他の候補B(k,j)、B(k,j+1)、・・・を順に参照して、一の候補B(k,i)の他の候補B(k,j)、B(k,j+1)、・・・に対する関係スコアをそれぞれ検出し、この処理をS1で検出した各候補Bごとに(各候補Bから抽出する一の候補を順に変えて)行う。候補/関係スコア検出部7aを構成するCNNは、予め所定の画像パターンを用いて学習されているため、一の候補B(k,i)の他の候補B(k,j)等に対する関係スコアについても、CNNでのニューロ演算によって検出することができる。なお、図8では、便宜的に、一の候補B(k,i)および他の候補B(k,j)、B(k,j+1)、・・・を一定のサイズで示しているが、画像または物体に応じて縦横のサイズが変化する点は上記と同様である。
【0039】
ここで、2つの候補間にある関係Rが存在する場合をR=1とし、関係Rが存在しない場合をR=0としたとき、グリッドi内の一の候補B(k,i)の、グリッドj内の他の候補B(k,j)に対する関係Rの有無およびその確率(関係スコアP)は、例えば以下のように表される。すなわち、グリッドi内の一の候補B(k,i)の、グリッドj内の他の候補B(k,j)に対する関係Rの存在は、R=1|B(k,i),B(k,j)で表され、関係Rが存在する確率(関係スコアP)は、P{R=1|B(k,i),B(k,j)}で表される。同様に、グリッドi内の一の候補B(k,i)の、グリッドj内の他の候補B(k,j)に対する関係Rの不存在は、R=0|B(k,i),B(k,j)で表され、関係Rが不存在である確率(関係スコアP)は、P{R=0|B(k,i),B(k,j)}で表される。候補/関係スコア検出部7aは、少なくとも、各候補間に関係Rが存在する関係スコアP(R=1の場合)をCNNによって検出する。なお、上記したP{R=1|B(k,i),B(k,j)}と、P{R=0|B(k,i),B(k,j)}は、いずれも、0から1までのいずれかの値をとり、P{R=1|B(k,i),B(k,j)}+P{R=0|B(k,i),B(k,j)}=1である。
【0040】
また、画像上で一の候補B(k,i)が「人物」の領域に対応しており、他の候補B(k,j)が「傘」の領域に対応している場合、一の候補B(k,i)の他の候補B(k,j)に対する関係Rの一例としては、「人物が傘を持つ」場合の「持つ」が考えられる。この場合、グリッドi内の一の候補B(k,i)の、グリッドj内の他の候補B(k,j)に対する関係R(「持つ」という関係)が存在する確率(関係スコアP)は、P{持つ=1|B(k,i),B(k,j)}のように表すことができる。
【0041】
図9は、候補/関係スコア検出部7a(CNNの出力層14)から出力される特徴マップを示している。上記した関係スコアP(ここではR=1についてのスコアを考える)は、H’×W’の範囲内の各グリッドごとに、候補B(k,i)がK個存在し、候補B(k,j)もK個存在することから、H’×W’の範囲内で得られる関係スコアPの個数は、合計でH’×W’×K×K(=H’W’KK)個となる。本実施形態では、候補/関係スコア検出部7aは、単一のCNNにより、S1での候補の検出(CNNによるニューロ演算)と、S2での関係スコアPの検出(CNNによるニューロ演算)とをまとめて(同時に、並列に)行う。これにより、候補/関係スコア検出部7aから出力される特徴マップは、同図に示すように、H×W×{K(2+2+P)+C)+H’W’KK}で表される3階のテンソルとなる。
【0042】
(S3;物体決定ステップ)
S3では、物体決定部7bが、所定のアルゴリズムに基づいて、S1で検出した複数の物体の候補Bから、複数の物体の領域を決定する。ここで、上記所定のアルゴリズムは、Non-Maximum Suppression(NMS)である。NMSは、同じクラスとして認識され、重なっている領域(候補B)のうち、スコア(S1で求めた検出スコアまたはクラススコア)の低いほうの領域(または候補)を除去し、スコアの高いほうの領域(または候補)を残すことで、重複を抑制するアルゴリズムである。なお、2つの領域(または候補)の「重なり」は、IoU(Intersection over Union)値と閾値とに基づいて判断することができる。IoU値は、例えば2つの候補p、qに着目した場合、{(候補pと候補qの両方に含まれる領域の面積)/(候補p、qの少なくとも一方に含まれる領域の面積)}の値(割合)を指し、このIoU値が閾値以上の場合に、2つの候補pおよびqが「重なっている」と判断することができる。
【0043】
図10は、物体決定部7bが図6で示した複数の候補(破線の枠参照)に対してNMSを適用し、複数の物体の領域BA、BB、BC、BDを決定した状態を示している。領域BA、BB、BC、BDは、画像上で、それぞれ、「傘を持つ人物」の領域、「傘」の領域、「傘を持つ人物と対面している人物の顔」の領域、「傘を持つ人物と対面している人物全体」の領域に対応している。このように、NMSを適用することにより、重複する領域の候補から適切な候補を絞り込み、絞り込んだ候補を画像上での物体の領域として適切に決定することができる。
【0044】
(S4;関係決定ステップ)
S4では、関係決定部7cが、S3で決定した領域に対応する候補の組(ペア)について、S2で検出された関係スコアPに基づいて、複数の物体の関係を決定する。より具体的には、以下の通りである。
【0045】
まず、関係決定部7cは、S3で決定した領域に対応する候補のペアについての関係をグラフ表現する。図11は、図10で示した各領域BA、BB、BC、BDに対応する候補Ba、Bb、Bc、Bdから選択される2つの候補についての関係をグラフ表現した図である。図11では、2つの候補間の関係を矢印で示すとともに、矢印の太さ(線幅)を関係スコアPの値に対応させて表現している。なお、矢印の始点にある候補は、図8で示したH’×W’の範囲内のいずれかのグリッドiにおいて検出された一の候補B(k,i)に対応しており、矢印の終点にある候補は、H’×W’の範囲内のいずれかのグリッドjにおいて検出された他の候補B(k,j)に対応している。
【0046】
図11において、例えば、候補Baから候補Bbに向かう矢印は、候補Ba(「人物」)が候補Bb(「傘」)に対して関係(人物が傘を「持つ」という関係)があること、およびその「持つ」という関係の尤度を表す関係スコアPが最大であることを示している(矢印の線幅が最も大きいため)。候補Ba、Bb、Bc、Bdから選択される2つの候補のいずれについても、それらの間の関係スコアPは、S2の関係スコア検出ステップで既に検出されているため、関係決定部7cは、図11のように、上記2つの候補間の関係を、上記関係スコアPを用いてグラフ化することができる。
【0047】
図11のように、関係スコアPが複数存在する場合(図11で矢印の本数が複数である場合)、関係決定部7cは、複数の関係スコアPに対して閾値処理を行って閾値未満の関係スコアPを除外する。図12は、閾値処理の前後での2つの候補間の関係を模式的に示している。このように閾値未満の関係スコアPを除外することにより、閾値以上の関係スコアPを示す矢印だけが残る。これにより、複数の候補のペアの中から、関係を決定する必要のある候補のペアを絞り込むことができる。同図では、閾値処理の結果、候補Baから候補Bbに対して得られる関係スコアP1と、候補Bbから候補Baに対して得られる関係スコアP2のみが残り、複数の候補のペアの中から、関係を決定する必要のあるペアが、候補Baおよび候補Bbのペアに絞られたことを示している。
【0048】
このように、2つの候補Ba・Bbからなるペアについて得られる関係スコアPとして、一方の候補Baから他方の候補Bbに対して得られる関係スコアP1と、他方の候補Bbから一方の候補Baに対して得られる関係スコアP2とが存在するとき、関係決定部7cは、より小さいほうの関係スコアを除外する。図13は、関係スコアPを絞り込む前後での2つの候補間の関係を模式的に示している。同じ2つの候補Ba・Bbについて得られる関係スコアP1・P2のうち、より小さいほうの関係スコア(同図では関係スコアP2)を除外することにより、信頼性の高い関係スコアP1だけが残る。これにより、残った関係スコアP1に基づいて、2つの候補Ba・Bb間の関係、つまり、2つの候補Ba・Bbに対応する2つの物体間の関係を適切に決定することができる。同図の例では、関係決定部7cが、残った関係スコアP1に基づき、候補Baに対応する物体(「人物」)と、候補Bbに対応する物体(「傘」)との関係として、人物が傘を「持つ」という関係を決定することになる。
【0049】
〔効果〕
以上のように、本実施形態の物体検出方法は、候補/関係スコア検出部7aが、複数の物体が画像上で占める領域の候補Bを検出し(S1)、検出した各候補Bごとに、上記候補を一の候補B(k,i)として、予め設定されたH’×W’の範囲内の他の候補B(k,j)に対する関係スコアPを検出する(S2)。そして、物体決定部7bが、所定のアルゴリズム(例えばNMS)に基づいて、複数の候補Bから複数の物体の領域を決定し(S3)、関係決定部7cが、関係スコアPに基づいて、複数の物体の関係を決定する(S4)。候補Bの検出および関係スコアPの検出は、候補/関係スコア検出部7aを構成するCNN、つまり、単一のCNNによってまとめて(同時に、並列に、非段階的に、Single-shotで)行うことができるため、複数のCNNを用いて人物等の候補の抽出、抽出した候補の統合および再度の畳み込みを行う従来技術のような、候補選択のための中間処理(統合、畳み込み)は不要であり、畳み込みの処理も冗長とならない。これにより、上記関係スコアに基づいて、画像から複数の物体およびそれらの関係を高速で検出することが可能となる。その結果、本実施形態の物体検出方法および物体検出装置1は、そのような高速な検出が必要とされるアプリケーションにも容易に適用可能となる。
【0050】
特に、候補/関係スコア検出部7aは、S1での候補Bの検出とS2での関係スコアPの検出とを、ニューロ演算によって並列して行うため、複数の物体および関係の検出用のCNNを1種類とすることができ、上記従来技術に比べて、簡単な構成で、かつ、高速で、複数の物体および関係を検出することができる。
【0051】
また、上記のニューロ演算は、CNNによる演算である。この場合、候補Bの検出および関係スコアPの検出を、単一のCNNで並列して同時に行うことができるため、検出した関係スコアPに基づいて、複数の物体およびそれらの関係を高速で検出することが確実に可能となる。
【0052】
なお、候補/関係スコア検出部7aを構成するニューラルネットワークは、CNNには限定されず、各層のノードが全結合(fully connected)であるMLP(多層パーセプトロン)であってもよいし、RNN(Recurrent Neural Networks)などの他のニューラルネットワークであってもよい。ただし、関係の認識(検出)においては、一般的な物体の種類の認識などよりも、はるかに複雑な外観(画像)をモデリングする(学習させる)必要があるが、処理が簡単である点、および少ない学習データで認識が可能になる点では、CNNを用いることが望ましい。
【0053】
また、候補/関係スコア検出部7aは、画像上に設定された複数のグリッドのそれぞれに対する候補Bの相対位置、画像に対する候補Bの相対的なサイズ、物体に対する候補Bの検出スコア、グリッドにおける物体のクラススコアの少なくともいずれかのパラメータをさらに検出する。この場合、従来の“YOLO”の技術を有効利用して候補Bを検出することができるとともに、上記検出スコア等に基づくNMS処理により、複数の候補Bから物体の領域を決定することが可能となる。
【0054】
〔物体検出装置の他の構成〕
図14は、物体検出装置1の他の構成を示すブロック図である。図14の物体検出装置1は、検出処理部7がさらに説明文作成部7dを有している点以外は、図1の構成と全く同様である。また、図15は、図14の物体検出装置1による物体検出方法の処理の流れを示すフローチャートであり、関係決定ステップ(S4)の後に、説明文作成工程(S5)が加わった以外は、図3のフローチャートと全く同様である。以下、図1および図3と異なる部分について説明する。
【0055】
説明文作成部7dは、S3で決定した複数の物体の領域と、S4で決定した複数の物体の関係とに基づいて、画像の説明文を作成する。このような説明文作成部7dは、ニューロ演算を行うCNNやRNNなどのニューラルネットワークで構成されている。なお、説明文作成部7dのニューラルネットワークは、候補/関係スコア検出部7aのニューラルネットワークとは別個に構成される(互いに区別される)。
【0056】
例えば、物体決定部7bがNMSによって画像上で物体(「人物」)の領域BAと物体(「傘」)の領域BBとを決定し(図10参照)、関係決定部7cが2つの物体BA・BBに対応する候補Ba・Bbの関係(例えば「持つ」)を決定した場合(図13参照)、説明文作成部7dは、「人物が傘を持つ」という説明文を作成する(S5;説明文作成工程)。作成した説明文のデータは、例えば記憶部3に記憶され、必要に応じて読み出されて使用される。例としては、上記説明文(データ)は、画像と併せて表示部5に表示されたり、通信部6を介して、画像データと併せて外部の端末に送信される。
【0057】
上記のように説明文作成部7dが、複数の物体の領域と関係とに基づいて、画像の説明文を作成することにより、上記説明文を画像と併せて利用者に提示するアプリケーションを実現することが可能となる。これにより、物体検出装置1の利便性を向上させることができる。また、説明文作成部7dは、CNNなどを用いたニューロ演算により、説明文を簡単に作成することができる。
【0058】
〔プログラムおよび記録媒体〕
本実施形態で説明した物体検出装置1は、例えば、所定のプログラム(アプリケーションソフトウェア)をインストールしたコンピュータ(PC)で構成することができる。上記プログラムをコンピュータ(例えばCPUとしての制御部2)が読み取って実行することにより、物体検出装置1の各部を動作させて上述した各処理(各工程)を実行させることができる。このようなプログラムは、例えばネットワークを介して外部からダウンロードすることによって取得されて記憶部3に記憶される。また、上記プログラムは、例えばCD-ROM(Compact Disk-Read Only Memory)などのコンピュータ読取可能な記録媒体に記録され、この記録媒体から上記プログラムをコンピュータが読み取って記憶部3に記憶される形態であってもよい。
【0059】
〔その他〕
以上で説明した本実施形態の物体検出方法および物体検出装置は、以下のように表現されてもよい。また、本実施形態で説明した内容は、以下のように表現されるプログラムおよび記録媒体も含む。
【0060】
1.画像から複数の物体と前記複数の物体の関係とを検出する物体検出方法であって、前記複数の物体が前記画像上で占める領域の候補を検出する候補検出ステップと、検出した前記候補ごとに、前記候補を一の候補として、前記一の候補の周囲の予め設定された範囲内の他の候補を参照して、前記一の候補の前記他の候補に対する所定の関係の尤度を表す関係スコアを検出する関係スコア検出ステップと、所定のアルゴリズムに基づいて、検出した前記候補から前記複数の物体の前記領域を決定する物体決定ステップと、決定した前記領域に対応する候補のペアについて検出された前記関係スコアに基づいて、前記複数の物体の前記関係を決定する関係決定ステップとを含むことを特徴とする物体検出方法。
【0061】
2.前記候補検出ステップおよび前記関係スコア検出ステップは、ニューロ演算によって並列に実行されることを特徴とする前記1に記載の物体検出方法。
【0062】
3.前記ニューロ演算は、CNNによる演算であることを特徴とする前記2に記載の物体検出方法。
【0063】
4.前記候補検出ステップでは、前記画像上に設定された複数のグリッドのそれぞれに対する前記候補の相対位置、前記画像に対する前記候補の相対的なサイズ、前記物体に対する前記候補の尤度を表す検出スコア、前記グリッドにおける前記物体のクラスの尤度を表すクラススコアの少なくともいずれかのパラメータをさらに検出することを特徴とする前記1から3のいずれかに記載の物体検出方法。
【0064】
5.前記物体決定ステップにおける前記所定のアルゴリズムは、Non-Maximum Suppressionであることを特徴とする前記4に記載の物体検出方法。
【0065】
6.前記関係決定ステップでは、前記関係スコアが複数存在するときに、閾値未満の関係スコアを除外することを特徴とする前記1から5のいずれかに記載の物体検出方法。
【0066】
7.前記関係決定ステップでは、2つの前記候補からなるペアについて得られる前記関係スコアとして、前記ペアの一方の候補から他方の候補に対して得られる関係スコアと、前記ペアの前記他方の候補から前記一方の候補に対して得られる関係スコアとが存在するときに、より小さいほうの関係スコアを除外することを特徴とする前記1から6のいずれかに記載の物体検出方法。
【0067】
8.決定した前記複数の物体の前記領域と、前記複数の物体の前記関係とに基づいて、前記画像の説明文を作成する説明文作成ステップをさらに含むことを特徴とする前記1から7のいずれかに記載の物体検出方法。
【0068】
9.前記説明文作成ステップでは、ニューロ演算によって前記説明文を作成することを特徴とする前記8に記載の物体検出方法。
【0069】
10.前記複数の物体の前記関係は、前記複数の物体間のかかわりまたは状態、一方の物体の他方の物体に対する作用または動作、の少なくともいずれかを含むことを特徴とする前記1から9のいずれかに記載の物体検出方法。
【0070】
11.画像から複数の物体と前記複数の物体の関係とを検出する物体検出装置であって、前記複数の物体が前記画像上で占める領域の候補を検出するとともに、検出した前記候補ごとに、前記候補を一の候補として、前記一の候補の周囲の予め設定された範囲内の他の候補を参照して、前記一の候補の前記他の候補に対する所定の関係の尤度を表す関係スコアを検出する候補/関係スコア検出部と、所定のアルゴリズムに基づいて、検出した前記候補から前記複数の物体の前記領域を決定する物体決定部と、決定した前記領域に対応する候補のペアについて検出された前記関係スコアに基づいて、前記複数の物体の前記関係を決定する関係決定部とを含むことを特徴とする物体検出装置。
【0071】
12.前記候補/関係スコア検出部は、前記候補の検出と前記関係スコアの検出とをニューロ演算によって並列して行うことを特徴とする前記11に記載の物体検出装置。
【0072】
13.前記ニューロ演算は、CNNによる演算であることを特徴とする前記12に記載の物体検出装置。
【0073】
14.前記候補/関係スコア検出部は、前記画像上に設定された複数のグリッドのそれぞれに対する前記候補の相対位置、前記画像に対する前記候補の相対的なサイズ、前記物体に対する前記候補の尤度を表す検出スコア、前記グリッドにおける前記物体のクラスの尤度を表すクラススコアの少なくともいずれかのパラメータをさらに検出することを特徴とする前記11から13のいずれかに記載の物体検出装置。
【0074】
15.前記物体決定部が前記領域を決定する際に用いる前記所定のアルゴリズムは、Non-Maximum Suppressionであることを特徴とする前記14に記載の物体検出装置。
【0075】
16.前記関係決定部は、前記関係スコアが複数存在するときに、閾値未満の関係スコアを除外することを特徴とする前記11から15のいずれかに記載の物体検出装置。
【0076】
17.前記関係決定部は、2つの前記候補からなるペアについて得られる前記関係スコアとして、前記ペアの一方の候補から他方の候補に対して得られる関係スコアと、前記ペアの前記他方の候補から前記一方の候補に対して得られる関係スコアとが存在するときに、より小さいほうの関係スコアを除外することを特徴とする前記11から16のいずれかに記載の物体検出装置。
【0077】
18.決定した前記複数の物体の前記領域と、前記複数の物体の前記関係とに基づいて、前記画像の説明文を作成する説明文作成部をさらに含むことを特徴とする前記11から17のいずれかに記載の物体検出装置。
【0078】
19.前記説明文作成部は、ニューロ演算によって前記説明文を作成することを特徴とする前記18に記載の物体検出装置。
【0079】
20.前記複数の物体の前記関係は、前記複数の物体間のかかわりまたは状態、一方の物体の他方の物体に対する作用または動作、の少なくともいずれかを含むことを特徴とする前記11から19のいずれかに記載の物体検出装置。
【0080】
21.前記1から10のいずれかに記載の物体検出方法をコンピュータに実行させるプログラム。
【0081】
22.前記21に記載のプログラムを記録した、コンピュータ読取可能な記録媒体。
【0082】
以上、本発明の実施形態について説明したが、本発明の範囲はこれに限定されるものではなく、発明の主旨を逸脱しない範囲で拡張または変更して実施することができる。
【産業上の利用可能性】
【0083】
本発明は、例えば監視カメラシステムのような、画像から人物の行動を分析するアプリケーションや、画像から複数の物体の間に存在する関係を高速で推定するアプリケーションに利用可能である。
【符号の説明】
【0084】
1 物体検出装置
7a 候補/関係スコア検出部
7b 物体決定部
7c 関係決定部
7d 説明文作成部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15