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

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

▶ 日本電気株式会社の特許一覧

特許7521535学習装置、学習方法、物体検出装置、及び、プログラム
<>
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図1
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図2
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図3
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図4
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図5
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図6
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図7
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図8
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図9
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図10
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図11
  • 特許-学習装置、学習方法、物体検出装置、及び、プログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-16
(45)【発行日】2024-07-24
(54)【発明の名称】学習装置、学習方法、物体検出装置、及び、プログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240717BHJP
   G06V 10/70 20220101ALI20240717BHJP
   G06V 20/50 20220101ALI20240717BHJP
【FI】
G06T7/00 350B
G06V10/70
G06V20/50
【請求項の数】 5
(21)【出願番号】P 2021551039
(86)(22)【出願日】2019-10-10
(86)【国際出願番号】 JP2019040015
(87)【国際公開番号】W WO2021070324
(87)【国際公開日】2021-04-15
【審査請求日】2022-03-17
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100107331
【弁理士】
【氏名又は名称】中村 聡延
(74)【代理人】
【識別番号】100104765
【弁理士】
【氏名又は名称】江上 達夫
(74)【代理人】
【識別番号】100131015
【弁理士】
【氏名又は名称】三輪 浩誉
(72)【発明者】
【氏名】朴 君
【審査官】久保 光宏
(56)【参考文献】
【文献】米国特許出願公開第2019/0213451(US,A1)
【文献】木戸 嘉一(外2名),「P-5-15 適応環境データを用いた深層学習アルゴリズムによる走行環境認識」,PCSJ/IMPS 2017予稿集,日本,電子情報通信学会 画像工学研究専門委員会,2017年11月20日,第196~197頁,((財)ソフトウェア情報センター受入日:2017年12月7日).
【文献】Shaoqing Ren, et al.,"Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks",IEEE Transactions on Pattern Analysis and Machine Intelligence,2016年06月06日,Vol.39, No.6,Pages 1137-1149,ISSN: 0162-8828, <DOI: 10.1109/TPAMI.2016.2577031>.
【文献】Ross Girshick,"Fast R-CNN",Proceedings of the 2015 IEEE International Conference on Computer Vision (ICCV),2015年12月13日,Pages 1440-1448,<DOI: 10.1109/ICCV.2015.169>.
【文献】鶴谷 泰文(外1名),「自己組織化マップによる道路画像の状況の推定」,第49回システム制御情報学会 研究発表講演会講演論文集,日本,システム制御情報学会,2005年05月18日,第273~274頁.
(58)【調査した分野】(Int.Cl.,DB名)
G06T7/00-7/90
G06V10/00-20/90
G06N3/00-99/00
G06F18/00-18/40
CSDB(日本国特許庁)
学術文献等データベース(日本国特許庁)
IEEEXplore(IEEE)
(57)【特許請求の範囲】
【請求項1】
学習用画像に関する環境情報を取得する環境情報取得手段と、
前記学習用画像に含まれる対象物体を検出する物体検出モデルの学習を、前記環境情報を用いて行う学習手段と、を備え、
前記学習手段は、
前記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、検出結果として、前記対象物体のラベル、座標情報及び環境情報を出力する検出手段と、
前記検出結果と、前記学習用画像に対する正解データ及び前記環境情報とに基づいて、前記ラベル及び前記座標情報について前記正解データとの損失を算出するとともに、前記検出手段が出力した環境情報と前記環境情報取得手段が取得した環境情報との損失を算出し、前記損失に基づいて前記検出手段のパラメータを更新する更新手段と、
を備える学習装置。
【請求項2】
前記環境情報取得手段は、前記学習用画像から特徴量を抽出し、抽出した特徴量に基づいてクラスタリングを行って環境情報を生成する請求項1記載の学習装置。
【請求項3】
前記環境情報は、前記学習用画像の全体又は所定以上の広さの領域における環境を示す全体環境情報と、前記対象物体の領域における環境を示す局所環境情報の少なくとも一方を含む請求項1又は2に記載の学習装置。
【請求項4】
環境情報取得手段が、学習用画像に関する環境情報を取得し、
学習手段が、前記学習用画像に含まれる対象物体を検出する物体検出モデルの学習を、前記環境情報を用いて行い、
前記学習手段では、
検出手段が、前記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、
検出結果として、前記対象物体のラベル、座標情報及び環境情報を出力し、
更新手段が、前記検出結果と、前記学習用画像に対する正解データ及び前記環境情報とに基づいて、前記ラベル及び前記座標情報について前記正解データとの損失を算出するとともに、前記検出手段が出力した環境情報と前記環境情報取得手段が取得した環境情報との損失を算出し、前記損失に基づいて前記検出手段のパラメータを更新する学習方法。
【請求項5】
学習用画像に関する環境情報を取得し、
前記学習用画像に含まれる対象物体を検出する物体検出モデルの学習を、前記環境情報を用いて行い、
前記対象物体の検出において、
前記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、検出結果として、前記対象物体のラベル、座標情報及び環境情報を出力し、
前記検出結果と、前記学習用画像に対する正解データ及び前記環境情報とに基づいて、前記ラベル及び前記座標情報について前記正解データとの損失を算出するとともに、出力された前記環境情報と取得した前記環境情報との損失を算出し、前記損失に基づいて物体検出モデルのパラメータを更新する処理をコンピュータに実行させるプログラムを記録したプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に含まれる物体を検出する技術に関する。
【背景技術】
【0002】
近年、機械学習を用いた各種の物体検出手法が提案されている。一般的な物体検出手法は、画像に含まれる1又は複数の対象物体の領域を特定し、その対象物体のラベル及びその領域の座標を出力する。特許文献1は、このような物体検出手法の一例を開示している。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2017-146840号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、上記のような物体検出装置は、複雑な環境、対象物体の異なる見え方、対象物体の種類のバリエーションなどを考慮せずに学習を行っている。そのため、環境が画像に与える影響をうまく学習することができず、検出精度が低下してしまうという問題がある。
【0005】
本発明の1つの目的は、環境が画像に与える影響を考慮して、高精度の検出を可能とする物体検出手法を提供することにある。
【課題を解決するための手段】
【0006】
上記の課題を解決するため、本発明の一つの観点は、学習装置であって、
学習用画像に関する環境情報を取得する環境情報取得手段と、
前記学習用画像に含まれる対象物体検出する物体検出モデルの学習を、前記環境情報を用いて行う学習手段と、を備え、
前記学習手段は、
記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、検出結果として、前記対象物体のラベル座標情報及び環境情報を出力する検出手段と、
前記検出結果と、前記学習用画像に対する正解データ及び前記環境情報とに基づいて、前記ラベル及び前記座標情報について前記正解データとの損失を算出するとともに前記検出手段が出力した環境情報と前記環境情報取得手段が取得した環境情報との損失を算出し、前記損失に基づいて前記検出手段のパラメータを更新する更新手段と、を備える。
【0007】
本発明の他の観点は、学習方法であって、
環境情報取得手段が、学習用画像に関する環境情報を取得し、
学習手段が、前記学習用画像に含まれる対象物体検出する物体検出モデルの学習を、前記環境情報を用いて行い、
前記学習手段では、
検出手段が、記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、検出結果として、前記対象物体のラベル座標情報及び環境情報を出力し、
更新手段が、前記検出結果と、前記学習用画像に対する正解データ及び前記環境情報とに基づいて、前記ラベル及び前記座標情報について前記正解データとの損失を算出するとともに前記検出手段が出力した環境情報と前記環境情報取得手段が取得した環境情報との損失を算出し、前記損失に基づいて前記検出手段のパラメータを更新する。
【0008】
本発明のさらに他の観点は、プログラムであって、
学習用画像に関する環境情報を取得し、
前記学習用画像に含まれる対象物体検出する物体検出モデルの学習を、前記環境情報を用いて行い、
前記対象物体の検出において、
記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、検出結果として、前記対象物体のラベル座標情報及び環境情報を出力し、
前記検出結果と、前記学習用画像に対する正解データ及び前記環境情報とに基づいて、前記ラベル及び前記座標情報について前記正解データとの損失を算出するとともに前記検出手段が出力した環境情報と前記環境情報取得手段が取得した環境情報との損失を算出し、前記損失に基づいて前記物体検出モデルのパラメータを更新する処理をコンピュータに実行させる。
【発明の効果】
【0015】
本発明によれば、環境が画像に与える影響を考慮して、高精度の検出を可能とする物体検出手法を提供することが可能となる。
【図面の簡単な説明】
【0016】
図1】第1実施形態に係る物体検出装置のハードウェア構成を示す。
図2】第1実施例に係る物体検出装置を学習する学習装置の機能構成を示す。
図3】第1実施例の学習装置による学習処理のフローチャートである。
図4】第1実施例に係る物体検出装置の機能構成を示す。
図5】第1実施例の物体検出装置による物体検出処理のフローチャートである。
図6】第2実施例に係る物体検出装置を学習する学習装置の機能構成を示す。
図7】第2実施例の学習装置による学習処理のフローチャートである。
図8】第2実施例に係る物体検出装置の機能構成を示す。
図9】第2実施例の物体検出装置による物体検出処理のフローチャートである。
図10】環境分類部の構成を示すブロック図である。
図11】環境分類部による環境情報の分類例を示す。
図12】第2実施形態に係る学習装置及び物体検出装置の機能構成を示す。
【発明を実施するための形態】
【0017】
以下、図面を参照して、本発明の好適な実施形態について説明する。
[第1実施形態]
(ハードウェア構成)
図1は、第1実施形態に係る物体検出装置のハードウェア構成を示すブロック図である。図示のように、物体検出装置10は、インタフェース(I/F)12と、プロセッサ13と、メモリ14と、記録媒体15と、データベース(DB)16と、を備える。
【0018】
インタフェース12は、外部装置との間でデータの入出力を行う。具体的に、物体検出装置10の学習に用いられる学習用データセットや、物体検出の対象となる画像データは、インタフェース12を通じて入力される。
【0019】
プロセッサ13は、CPU(Central Processing Unit)、又はCPUとGPU(Graphics Processing Uit)などのコンピュータであり、予め用意されたプログラムを実行することにより、物体検出装置10の全体を制御する。具体的に、プロセッサ13は、後述する学習処理及び物体検出処理を実行する。
【0020】
メモリ14は、ROM(Read Only Memory)、RAM(Random Access Memory)などにより構成される。メモリ14は、物体検出装置10が学習する物体検出モデルを記憶する。また、メモリ14は、プロセッサ13による各種の処理の実行中に作業メモリとしても使用される。
【0021】
記録媒体15は、ディスク状記録媒体、半導体メモリなどの不揮発性で非一時的な記録媒体であり、物体検出装置10に対して着脱可能に構成される。記録媒体15は、プロセッサ13が実行する各種のプログラムを記録している。物体検出装置10が各種の処理を実行する際には、記録媒体15に記録されているプログラムがメモリ14にロードされ、プロセッサ13により実行される。
【0022】
データベース16は、学習に使用される学習用データセットや、物体検出の対象となる画像データを記憶する。なお、上記に加えて、物体検出装置10は、ユーザが指示や入力を行うためのキーボード、マウスなどの入力機器や表示部を備えていても良い。
【0023】
(第1実施例)
まず、物体検出装置の第1実施例について説明する。第1実施例は、環境情報を物体検出装置の入力として使用するものである。
【0024】
(1)学習装置
まず、第1実施例の学習装置の機能構成について説明する。図2は、第1実施例に係る物体検出装置を学習する学習装置100の機能構成を示すブロック図である。学習装置100は、データ取得部101と、環境分類部102と、特徴抽出部103と、物体検出部104と、損失算出部105と、更新部106と、を備える。
【0025】
学習時には、予め用意された学習用データセットDtが使用される。学習用データセットDtは、学習用画像データと、その画像データに対して用意された正解データとを含む。物体検出装置が画像データから検出する物体(以下、「対象物体」と呼ぶ。)は予め決められており、正解データは学習用画像データに含まれる1又は複数の対象物体についてのラベル及び座標を含む。
【0026】
データ取得部101は、学習用データセットDtを取得し、環境分類部102及び特徴抽出部103に供給する。環境分類部102は、学習用データセットDtに含まれる学習用画像データに基づいて、その画像データに関する環境を分類し、環境情報Eを生成する。なお、環境情報Eについては後に詳しく説明する。環境分類部102は、生成した環境情報Eを物体検出部104に供給する。
【0027】
特徴抽出部103は、学習用データセットDtに含まれる学習用画像データから特徴を抽出し、物体検出部104へ供給する。物体検出部104は、特徴抽出部103が抽出した特徴と、環境分類部102が生成した環境情報Eとを用いて、学習用画像データに含まれる1又は複数の対象物体を検出する。特徴抽出部103と物体検出部104は、予め決められた物体検出モデルにより物体検出を行うニューラルネットワークにより構成される。物体検出モデルのアルゴリズムとしては、例えば、R-CNN、SPP(Spatial Pyramid Pooling)net、Fast R-CNN(Convolutional Neural Network)、Faster R-CNN、YOLO(You Only Look Once)、SSD(Single Shot Multibox Detector)、YOLOv2、DSSD(Deconvolutional Signle Shot Multibox Detector)、M2Detなどを用いることができる。環境分類部102から出力される環境情報Eは、ニューラルネットワークの物体検出部104に相当する部分に入力データとして入力される。
【0028】
物体検出部104は、検出結果DRとして、学習用画像データから検出された1又は複数の対象物体について、ラベル及び座標情報を出力する。ここで、「ラベル」はその物体が対象物体のうちのどれであるかを示し、「座標情報」は学習用画像データにおけるその物体の位置を示す。物体検出部104は、検出された対象物体毎のラベル及び座標情報を、検出結果DRとして損失算出部105に供給する。
【0029】
損失算出部105は、物体検出部104から供給された検出結果DRと、学習用データセットDtに含まれる正解データとの間の損失Lを算出し、更新部106に供給する。詳しくは、損失算出部105は、物体検出部104が検出結果として出力したラベルと、正解データに含まれる正解ラベルとの損失(「分類損失」と呼ばれる。)を算出する。また、損失算出部105は、物体検出部104が検出結果として出力した座標情報と、正解データに含まれる座標情報との損失(「回帰損失」と呼ばれる。)を算出する。そして、損失算出部105は、分類損失と回帰損失とを含む損失Lを更新部106に供給する。
【0030】
更新部106は、損失算出部105から供給された損失L、即ち、分類損失と回帰損失が小さくなるように、特徴抽出部103及び物体検出部104により構成される物体検出モデル、具体的にはニューラルネットワークのパラメータを更新する。そして、更新部106は、更新後のパラメータPrを特徴抽出部103及び物体検出部104に供給する。こうして、学習装置100は、特徴抽出部103及び物体検出部104により構成される物体検出モデルの学習を行う。なお、上記の構成において、環境分類部102は環境情報取得部の一例であり、特徴抽出部103、物体検出部104、損失算出部105及び更新部106は学習部の一例である。
【0031】
次に、第1実施例の学習装置100による学習処理について説明する。図3は、第1実施例の学習装置100による学習処理のフローチャートである。この処理は、図1に示すプロセッサ13が、予め用意されたプログラムを実行し、図2に示す各要素として動作することにより実施される。
【0032】
まず、データ取得部101が1つの学習用データセットDtを取得すると、環境分類部102は、データ取得部101が取得した学習用データセットDtに含まれる学習用画像データから環境情報Eを生成する(ステップS11)。また、特徴抽出部103は、同じ画像データから特徴を抽出する(ステップS12)。
【0033】
次に、物体検出部104は、特徴抽出部103が抽出した特徴と、環境分類部102が生成した環境情報Eとを用いて、学習用画像データ中の対象物体を検出し、検出結果DRを出力する(ステップS13)。この検出結果DRは、検出された物体のラベルと座標情報を含む。次に、損失算出部105は、検出結果DRと、環境分類部102から供給される環境情報Eとから損失Lを算出する(ステップS14)。具体的に、損失算出部105は、学習用画像データ中の個々の対象物体について回帰損失及び分類損失を算出する。そして、更新部106は、損失Lに基づいて特徴抽出部103及び物体検出部104を構成するニューラルネットワークのパラメータを更新する(ステップS15)。
【0034】
次に、学習を終了するか、即ち、予め決められた学習の終了条件が具備されたか否かが判定される(ステップS16)。学習の終了条件は、例えば、用意した学習用データセットを全て使用すること、更新部106によるパラメータの更新回数が所定回数に至ること、などとすることができる。学習を終了しないと判定された場合(ステップS16:No)、処理はステップS11へ戻り、次の学習用データセットDtを用いてステップS11~S15の処理が行われる。一方、学習を終了すると判定された場合(ステップS16:Yes)、学習処理は終了する。
【0035】
(2)物体検出装置
次に、第1実施例に係る物体検出装置の機能構成について説明する。図4は、第1実施例に係る物体検出装置200の機能構成を示すブロック図である。物体検出装置200は、データ取得部201と、環境分類部202と、特徴抽出部203と、物体検出部204と、を備える。環境分類部202は、図2に示す学習装置100の環境分類部102と同様に構成される。また、特徴抽出部203及び物体検出部204は、図2に示す学習装置100による学習済みのもの、即ち、上述の学習処理によりパラメータが更新済みのものである。
【0036】
データ取得部201は、物体検出の対象となる画像データ(以下、「検出用画像データ」と呼ぶ。)Ddを取得し、環境分類部202及び特徴抽出部203に供給する。環境分類部202は、検出用画像データDdから環境情報Eを生成し、物体検出部204に供給する。特徴抽出部203は、検出用画像データDdから特徴を抽出して物体検出部204に供給する。物体検出部204は、特徴抽出部203が抽出した特徴と、環境分類部202が生成した環境情報Eとに基づき、学習処理により学習済みの物体検出モデルを用いて物体検出を行い、検出結果DRを出力する。検出結果DRは、検出用画像データDdに含まれる1又は複数の対象物体毎のラベル及び座標情報である。なお、上記の構成において、環境分類部202は環境情報生成部の一例であり、特徴抽出部203及び物体検出部204は検出部の一例である。
【0037】
次に、第1実施例の物体検出装置200による物体検出処理について説明する。図5は、第1実施例の物体検出装置200による物体検出処理のフローチャートである。この処理は、図1に示すプロセッサ13が、予め用意されたプログラムを実行し、図4に示す各要素として動作することにより実施される。
【0038】
まず、データ取得部201が検出用画像データDdを取得すると、環境分類部202は、検出用画像データDdから環境情報Eを生成する(ステップS21)。また、特徴抽出部203は、検出用画像データDdから特徴を抽出する(ステップS22)。次に、物体検出部204は、特徴抽出部203が抽出した特徴と、環境分類部202が生成した環境情報に基づいて、検出用画像データDdに含まれる対象物体を検出し、検出された対象物体毎のラベル及び座標情報を検出結果DRとして出力する(ステップS23)。そして、処理は終了する。
【0039】
(第2実施例)
次に、第2実施例について説明する。第2実施例では、物体検出装置は、画像データに対する検出結果としてラベル、座標情報に加えて環境情報を出力する。そして、環境分類部が生成した環境情報を正解データとして用いて学習を行う。
【0040】
(1)学習装置
まず、第2実施例の学習装置の機能構成について説明する。図6は、第2実施例に係る物体検出装置を学習する学習装置100aの機能構成を示すブロック図である。学習装置100aは、基本的に第1実施例の学習装置100と同様の構成を有し、データ取得部101と、環境分類部102と、特徴抽出部103と、物体検出部104と、損失算出部105と、更新部106と、を備える。但し、第2実施例では、環境分類部102が生成した環境情報Eは損失算出部105に入力され、正解データとして用いられる。
【0041】
第2実施例において、学習に使用される学習用データセットDtは、第1実施例と同様である。即ち、学習用データセットDtは、学習用画像データと、その画像データに含まれる対象物体についてのラベル及び座標の正解データを含んでいる。
【0042】
データ取得部101、環境分類部102及び物体検出部104の動作は、基本的に第1実施例と同様である。即ち、データ取得部101は、学習用データセットDtを取得し、環境分類部102及び特徴抽出部103に供給する。環境分類部102は、学習用データセットDtに含まれる画像データに基づいて環境情報Eを生成する。但し、環境分類部102は、生成した環境情報Eを、環境情報の正解データとして損失算出部105に供給する。
【0043】
特徴抽出部103は、学習用画像データから特徴を抽出し、物体検出部104へ供給する。物体検出部104は、特徴抽出部103が抽出した特徴を用いて、学習用画像データに含まれる1又は複数の対象物体を検出する。特徴抽出部103と物体検出部104は、予め決められた物体検出モデルにより物体検出を行うニューラルネットワークにより構成される。ここで、第2実施例では、物体検出部104は、画像データに含まれる対象物体について「環境情報」の検出も行う。「環境情報」は、その画像データに関する環境を示すが、その詳細については後述する。よって、物体検出部104を構成するニューラルネットワークは、出力層においてラベル、座標情報に加えて環境情報を出力する構成を備える。そして、物体検出部104は、検出結果DRとして、画像データから検出された1又は複数の対象物体について、ラベル、座標情報、及び、環境情報を損失算出部105へ出力する。
【0044】
損失算出部105は、物体検出部104から供給された検出結果DRと、正解データとの損失Lを算出し、更新部106に供給する。上述のように、検出結果DRには個々の対象物体についてのラベル、座標情報及び環境情報が含まれている。一方、正解データとしては、学習用データセットDtに個々の対象物体についてのラベル及び座標が含まれており、環境情報の正解データは環境分類部102から供給されている。そこで、損失算出部105は、まず、第1実施形態と同様に、物体検出部104が検出結果DRとして出力したラベルと、正解データに含まれる正解ラベルとの分類損失を算出し、物体検出部104が検出結果DRとして出力した座標情報と、正解データに含まれる座標情報との回帰損失を算出する。これに加えて、損失算出部105は、物体検出部104が検出結果DRとして出力した環境情報と、環境分類部102から供給された環境情報Eとの損失(以下、「環境損失」と呼ぶ。)を算出する。そして、損失算出部105は、分類損失、回帰損失及び環境損失を含む損失Lを更新部106に供給する。
【0045】
更新部106は、損失算出部105から供給された損失L、即ち、分類損失、回帰損失及び環境損失が小さくなるように、特徴抽出部103及び物体検出部104により構成される物体検出モデルのパラメータを更新する。そして、更新部106は、更新後のパラメータPrを特徴抽出部103及び物体検出部104に供給する。こうして、学習装置100aは、特徴抽出部103及び物体検出部104により構成される物体検出モデルの学習を行う。
【0046】
次に、第2実施例の学習装置100aによる学習処理について説明する。図7は、第2実施例の学習装置100aによる学習処理のフローチャートである。この処理は、図1に示すプロセッサ13が、予め用意されたプログラムを実行し、図6に示す各要素として動作することにより実施される。
【0047】
まず、データ取得部101が1つの学習用データセットDtを取得すると、環境分類部102は、データ取得部101が取得した学習用データセットDtに含まれる学習用画像データから環境情報Eを生成する(ステップS31)。また、特徴抽出部103は、同じ画像データから特徴を抽出する(ステップS32)。次に、物体検出部104は、特徴抽出部103が抽出した特徴を用いて学習用画像データ中の対象物体を検出し、対象物体のラベル、座標情報及び環境情報を含む検出結果DRを出力する(ステップS33)。
【0048】
次に、損失算出部105は、検出結果DRと、学習用データセットDtに含まれるラベル及び座標の正解データ並びに環境分類部102から供給された環境情報Eとを用いて損失Lを算出する(ステップS34)。そして、更新部106は、損失Lに基づいて特徴抽出部103及び物体検出部104を構成するニューラルネットワークのパラメータを更新する(ステップS35)。
【0049】
次に、学習を終了するか、即ち、予め決められた学習の終了条件が具備されたか否かが判定される(ステップS36)。学習を終了しないと判定された場合(ステップS36:No)、処理はステップS31へ戻り、次の学習用データセットDtを用いてステップS31~S35の処理が行われる。一方、学習を終了すると判定された場合(ステップS36:Yes)、学習処理は終了する。
【0050】
(2)物体検出装置
次に、第2実施例に係る物体検出装置の機能構成について説明する。図8は、第2実施例に係る物体検出装置200aの機能構成を示すブロック図である。物体検出装置200aは、データ取得部201と、特徴抽出部203と、物体検出部204と、を備える。特徴抽出部203及び物体検出部204は図6に示す学習装置100aによる学習済みのもの、即ち、上述の学習処理によりパラメータが更新済みのものである。
【0051】
データ取得部201は、検出用画像データDdを取得し、特徴抽出部203に供給する。特徴抽出部203は、検出用画像データDdから特徴を抽出して物体検出部204に供給する。物体検出部204は、特徴抽出部203が抽出した特徴に基づき、学習処理により学習済みの物体検出モデルを用いて物体検出を行い、検出結果DRを出力する。検出結果DRは、検出用画像データDdに含まれる1又は複数の対象物体毎のラベル、座標情報及び環境情報を含む。
【0052】
次に、第2実施例の物体検出装置200aによる物体検出処理について説明する。図9は、第2実施例の物体検出装置200aによる物体検出処理のフローチャートである。この処理は、図1に示すプロセッサ13が、予め用意されたプログラムを実行し、図8に示す各要素として動作することにより実施される。
【0053】
まず、データ取得部201が検出用画像データDdを取得すると、特徴抽出部203は、検出用画像データDdから特徴を抽出する(ステップS42)。次に、物体検出部204は、特徴抽出部203が抽出した特徴に基づいて、検出用画像データDdに含まれる対象物体を検出し、検出された対象物体毎のラベル、座標情報及び環境情報を検出結果DRとして出力する(ステップS43)。そして、処理は終了する。
【0054】
[環境分類]
次に、環境分類部102により行われる処理について説明する。物体検出に用いられる画像は、通常、カメラなどにより撮影されたものであるので、画像に含まれる特徴は撮影環境により影響を受ける。例えば、撮影環境が昼であるか夜であるか、屋内であるか屋外であるか、順光であるか逆光であるかなどにより、画像に含まれる特徴、特に画像の背景が異なってくる。例えば、白杖は一般的に白い棒であるが、逆光では黒い棒となる。
【0055】
また、同じ撮影環境下でも、撮影角度により物体の特徴が異なる。例えば、同じ自転車でも、正面から撮影した場合と、側面から撮影した場合では見え方が異なり、画像に含まれる特徴が異なってくる。さらに、同じ撮影環境下でも、物体の個体毎の種類やバリエーションにより見え方が異なり、画像に含まれる特徴が異なる場合がある。例えば、同じリュックサックであっても、黒いリュックサック、白いリュックサック、形状が異なるリュックサックなどが存在するので、それぞれ画像に含まれる特徴は異なってくる。そこで、環境分類部102は、画像データから環境に関する特徴を示す環境情報を生成し、これを用いて物体検出を行うことにより、画像に対して環境の違いが与える影響を吸収する。
【0056】
図10は、環境分類部102の構成を示すブロック図である。環境分類部102は、特徴量抽出部107と、クラスタリング部108とを備える。特徴量抽出部107は、画像データ中の特徴量を抽出する。特徴量としては、色特徴量、Sift(Scale Invariant Feature Transform)-BoF(Bag of Features)特徴量、VGG16の特徴量などが挙げられる。クラスタリング部108は、特徴量抽出部107が抽出した特徴量に基づいてクラスタリングを行い、環境情報を生成する。クラスタリングの手法としては、K-means法、最短距離法、最小分散法などが挙げられる。
【0057】
図11は、環境分類部102による環境情報の分類例を示す。この例では、画像データから環境情報として「背景」、「角度」及び「個体」が生成される。ここで、「背景」とは、画像データにおいて対象物体が存在しない領域を指す。「角度」は、画像データ中に検出された対象物体の領域におけるカメラの角度、即ち、撮影角度を指す。「個体」は、対象物体として検出された物体の種類のバリエーション、具体的には同一の物体についての形状や色の違いなどを指す。
【0058】
図11の例では、環境分類部102は、まず画像全体の色特徴量を抽出し、色特徴量を用いて背景による分類を行う。これにより、例えば、その画像が昼であるか、夜であるか、屋内であるか、屋外であるかなどの分類が行われる。次に、環境分類部102は、背景により分類された各画像について、画像の前景の特徴量、即ち、対象物体の特徴量を用いて角度の分類を行う。物体検出により、画像に含まれる1又は複数の対象物体の領域が抽出されるので、対象物体の領域毎に特徴量が抽出され、撮影角度による分類が行われる。さらに、環境分類部102は、角度により分類された各対象物体の領域、即ち、同じ角度で撮影された対象物体の特徴量を抽出し、個体による分類を行う。これにより、同じ角度で撮影された複数の対象物体について、個々の物体の形状、色などのバリエーションによる分類が行われる。こうして、1つの画像を背景、角度、個体により分類することができる。なお、上記の「背景」のように画像全体についての環境情報を「全体環境情報」と呼び、「角度」及び「個体」のように画像中の対象物体の領域毎の環境情報を「局所環境情報」と呼ぶ。
【0059】
以上は環境情報を環境分類部102の処理により生成しているが、その代わりに、人が画像を見て分類を行い、環境情報を用意してもよい。
【0060】
[第2実施形態]
次に、本発明の第2実施形態について説明する。
(学習装置)
まず、第2実施形態の物体検出装置の学習を行う学習装置について説明する。図12(A)は、第2実施形態に係る学習装置300の機能構成を示すブロック図である。なお、学習装置300のハードウェア構成は図1に示すものと同様である。
【0061】
図示のように、学習装置300は、環境情報取得部301と、学習部302と、を備える。環境情報取得部301は、学習用画像に関する環境情報を取得する。学習部302は、環境情報を用いて、学習用画像に含まれる対象物体を検出する物体検出モデルの学習を行う。
【0062】
(物体検出装置)
次に、第2実施形態の物体検出装置について説明する。図12(B)は、第2実施形態の第1実施例に係る物体検出装置400の機能構成を示すブロック図である。なお、物体検出装置400のハードウェア構成は図1に示すものと同様である。
【0063】
図示のように、物体検出装置400は、環境情報生成部401と、検出部402と、を備える。環境情報生成部401及び検出部402には、物体検出処理の対象となる画像が入力される。環境情報生成部401は、処理対象の画像から環境情報を生成し、検出部402に出力する。検出部402は、環境情報生成部401から入力された環境情報を用いて、処理対象の画像に含まれる対象物体を検出し、検出結果を出力する。
【0064】
図12(C)は、第2実施形態の第2実施例に係る物体検出装置410の機能構成を示すブロック図である。なお、物体検出装置410のハードウェア構成は図1に示すものと同様である。
【0065】
図示のように、物体検出装置410は、特徴抽出部411と、検出部412と、を備える。特徴抽出部411には物体検出処理の対象となる画像が入力される。特徴抽出部411は、画像から特徴を抽出し、検出部412に出力する。検出部412は、抽出された特徴に基づいて画像に含まれる対象物体を検出し、対象物体のラベル、座標情報及び環境情報を含む検出結果を出力する。
【0066】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0067】
(付記1)
学習用画像に関する環境情報を取得する環境情報取得部と、
前記環境情報を用いて、前記学習用画像に含まれる対象物体を検出する物体検出モデルの学習を行う学習部と、
を備える学習装置。
【0068】
(付記2)
前記学習部は、
前記環境情報を用いて、前記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、検出結果を出力する検出部と、
前記検出結果と、前記学習用画像に対する正解データとに基づいて、前記検出部のパラメータを更新する更新部と、
を備える付記1に記載の学習装置。
【0069】
(付記3)
前記検出部は、前記検出結果として、前記対象物体のラベル及び座標情報を出力し、
前記更新部は、前記ラベル及び前記座標情報について前記正解データとの損失を算出し、前記損失に基づいて前記パラメータを更新する付記2に記載の学習装置。
【0070】
(付記4)
前記検出部はニューラルネットワークにより構成され、前記環境情報は前記ニューラルネットワークに入力データとして入力される付記2又は3に記載の学習装置。
【0071】
(付記5)
前記学習部は、
前記物体検出モデルにより前記学習用画像に含まれる対象物体を検出し、検出結果を出力する検出部と、
前記検出結果と、前記学習用画像に対する正解データ及び前記環境情報とに基づいて、前記検出部のパラメータを更新する更新部と、
を備える付記1に記載の学習装置。
【0072】
(付記6)
前記検出部は、前記検出結果として、前記対象物体のラベル、座標情報及び環境情報を出力し、
前記更新部は、前記ラベル及び前記座標情報について前記正解データとの損失を算出するとともに、前記検出部が出力した環境情報と前記環境情報取得部が取得した環境情報との損失を算出し、前記損失に基づいて前記パラメータを更新する付記5に記載の学習装置。
【0073】
(付記7)
前記環境情報取得部は、前記学習用画像から特徴量を抽出し、抽出した特徴量に基づいてクラスタリングを行って環境情報を生成する付記1乃至6のいずれか一項に記載の学習装置。
【0074】
(付記8)
前記環境情報は、前記学習用画像の全体又は所定以上の広さの領域における環境を示す全体環境情報と、前記対象物体の領域における環境を示す局所環境情報の少なくとも一方を含む付記1乃至7のいずれか一項に記載の学習装置。
【0075】
(付記9)
学習用画像に関する環境情報を取得し、
前記環境情報を用いて、前記学習用画像に含まれる対象物体を検出する学習方法。
【0076】
(付記10)
学習用画像に関する環境情報を取得し、
前記環境情報を用いて、前記学習用画像に含まれる対象物体を検出する処理をコンピュータに実行させるプログラムを記録した記録媒体。
【0077】
(付記11)
画像から環境情報を生成する環境情報生成部と、
前記環境情報を用いて、前記画像に含まれる対象物体を検出し、検出結果を出力する検出部と、
を備える物体検出装置。
【0078】
(付記12)
前記検出部は、前記検出結果として、前記対象物体のラベル及び座標情報を出力する付記11に記載の物体検出装置。
【0079】
(付記13)
前記検出部はニューラルネットワークにより構成され、前記環境情報は前記ニューラルネットワークに入力データとして入力される付記12に記載の物体検出装置。
【0080】
(付記14)
前記環境情報生成部は、前記画像から特徴量を抽出し、抽出した特徴量に基づいてクラスタリングを行って環境情報を生成する付記11乃至13のいずれか一項に記載の物体検出装置。
【0081】
(付記15)
前記環境情報生成部は、前記画像の全体又は所定以上の広さの領域における環境を示す全体環境情報と、前記対象物体の領域における環境を示す局所環境情報の少なくとも一方を含む付記11乃至14のいずれか一項に記載の物体検出装置。
【0082】
(付記16)
画像から環境情報を生成し、
前記環境情報を用いて、前記画像に含まれる対象物体を検出し、検出結果を出力する物体検出方法。
【0083】
(付記17)
画像から環境情報を生成し、
前記環境情報を用いて、前記画像に含まれる対象物体を検出し、検出結果を出力する処理をコンピュータに実行させるプログラムを記録した記録媒体。
【0084】
(付記18)
画像から特徴を抽出する特徴抽出部と、
抽出された特徴に基づいて前記画像に含まれる対象物体を検出し、前記対象物体のラベル、座標情報及び環境情報を含む検出結果を出力する検出部と、
を備える物体検出装置。
【0085】
(付記19)
画像から特徴を抽出し、
抽出された特徴に基づいて前記画像に含まれる対象物体を検出し、前記対象物体のラベル、座標情報及び環境情報を含む検出結果を出力する物体検出方法。
【0086】
(付記20)
画像から特徴を抽出し、
抽出された特徴に基づいて前記画像に含まれる対象物体を検出し、前記対象物体のラベル、座標情報及び環境情報を含む検出結果を出力する処理をコンピュータに実行させるプログラムを記録した記録媒体。
【0087】
以上、実施形態及び実施例を参照して本発明を説明したが、本発明は上記実施形態及び実施例に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0088】
10、200、200a、400 物体検出装置
100、100a、300 学習装置
101、201 データ取得部
102、202 環境分類部
103、203 特徴抽出部
104、204 物体検出部
105、205 損失算出部
106 更新部
107 特徴量抽出部
108 クラスタリング部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12