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

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

▶ 三菱電機インフォメーションシステムズ株式会社の特許一覧 ▶ 三菱電機株式会社の特許一覧

特許7139369検出結果分析装置、検出結果分析方法及び検出結果分析プログラム
<>
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図1
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図2
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図3
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図4
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図5
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図6
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図7
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図8
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図9
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図10
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図11
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図12
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図13
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図14
  • 特許-検出結果分析装置、検出結果分析方法及び検出結果分析プログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-09
(45)【発行日】2022-09-20
(54)【発明の名称】検出結果分析装置、検出結果分析方法及び検出結果分析プログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20220912BHJP
【FI】
G06T7/00 350C
【請求項の数】 8
(21)【出願番号】P 2020040424
(22)【出願日】2020-03-10
(65)【公開番号】P2021140705
(43)【公開日】2021-09-16
【審査請求日】2021-09-14
(73)【特許権者】
【識別番号】394013002
【氏名又は名称】三菱電機インフォメーションシステムズ株式会社
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110002491
【氏名又は名称】弁理士法人クロスボーダー特許事務所
(72)【発明者】
【氏名】伊佐野 勝人
(72)【発明者】
【氏名】相馬 仁志
(72)【発明者】
【氏名】山足 光義
(72)【発明者】
【氏名】中尾 尭理
【審査官】▲広▼島 明芳
(56)【参考文献】
【文献】特開2019-153092(JP,A)
【文献】特開2019-125204(JP,A)
【文献】VGC16ネットワークの各レイヤの特徴を可視化する,初心者のためのAI人工知能テクノロジーブログ AI人工知能テクノロジー,2019年02月03日,<URL:https://newtechnologylifestyle.net/vgg16networkvisual/>
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
(57)【特許請求の範囲】
【請求項1】
画像データに含まれる対象物体を検出する物体検出モデルであって、ニューラルネットワークを用いて構成された物体検出モデルにおける複数の層それぞれを対象の層として、対象の層の出力結果から得られる前記画像データにおける画素毎の活性度を表すヒートマップと、前記対象物体が検出された検出領域とに基づき前記ヒートマップが表す前記活性度の前記検出領域の内側と外側との比率から前記対象の層の評価値を計算する評価値計算部と、
前記評価値計算部によって計算された前記評価値に基づき、前記複数の層から少なくとも一部の層を選択する層選択部と
を備える検出結果分析装置。
【請求項2】
前記評価値計算部は、前記検出領域の外側における前記活性度の合計値に対する、前記検出領域の内側における前記活性度の合計値の割合から前記評価値を計算する
請求項に記載の検出結果分析装置。
【請求項3】
前記評価値計算部は、前記活性度が活性閾値よりも高い場合には前記活性度を前記活性閾値に対応する変換活性度に変換し、前記活性度が活性閾値以下の場合には前記活性閾値より1つ下の活性閾値に対応する変換活性度に前記活性度を変換した上で、前記評価値を計算する
請求項に記載の検出結果分析装置。
【請求項4】
前記層選択部は、前記評価値が評価閾値よりも高い層のうち、基準個の層を選択する
請求項1からまでのいずれか1項に記載の検出結果分析装置。
【請求項5】
前記検出結果分析装置は、さらに、
前記層選択部によって選択された層についての前記ヒートマップを合成して合成マップを生成する合成部
を備える請求項1からまでのいずれか1項に記載の検出結果分析装置。
【請求項6】
前記合成部は、前記画像データの各画素を対象の画素として、選択された前記一部の層それぞれについての前記ヒートマップが表す前記対象の画素の活性度のうち、最も高い活性度を、前記合成マップにおける前記対象の画素の活性度に設定することにより、前記合成マップを生成する
請求項に記載の検出結果分析装置。
【請求項7】
評価値計算部が、画像データに含まれる対象物体を検出する物体検出モデルであって、ニューラルネットワークを用いて構成された物体検出モデルにおける複数の層それぞれを対象の層として、対象の層の出力結果から得られる前記画像データにおける画素毎の活性度を表すヒートマップと、前記対象物体が検出された検出領域とに基づき前記ヒートマップが表す前記活性度の前記検出領域の内側と外側との比率から前記対象の層の評価値を計算し、
層選択部が、前記評価値に基づき、前記複数の層から少なくとも一部の層を選択する検出結果分析方法。
【請求項8】
画像データに含まれる対象物体を検出する物体検出モデルであって、ニューラルネットワークを用いて構成された物体検出モデルにおける複数の層それぞれを対象の層として、対象の層の出力結果から得られる前記画像データにおける画素毎の活性度を表すヒートマ
ップと、前記対象物体が検出された検出領域とに基づき前記ヒートマップが表す前記活性度の前記検出領域の内側と外側との比率から前記対象の層の評価値を計算する評価値計算処理と、
前記評価値計算処理によって計算された前記評価値に基づき、前記複数の層から少なくとも一部の層を選択する層選択処理と
を行う検出結果分析装置としてコンピュータを機能させる検出結果分析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ニューラルネットワークを用いて構成された物体検出モデルによる検出結果を分析する技術に関する。
【背景技術】
【0002】
画像データから対象物体を検出する物体検出モデルによる検出結果を分析して、物体検出モデルに不足している学習データを特定するといったことが行われている(特許文献1参照)。
【0003】
検出結果を分析する際、物体検出モデルによる判断根拠となった箇所を可視化することが行われる。判断根拠となった箇所を可視化する技術としては、GradCAM(Gradient-weighted Class Activation Mapping)がある。
【0004】
物体検出モデルには、2ステージタイプのモデルと、1ステージタイプのモデルとがある。2ステージタイプのモデルは、対象物体であると思われる範囲を示すRoI(Region of Interest)を絞り込んだ上で、対象物体を特定するモデルである。1ステージタイプのモデルは、アンカーボックスと呼ばれる特定サイズの境界ボックスのセットを用いて物体及び物体の位置を特定するモデルである。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2019-192082号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
2ステージタイプのモデルについては、RoIを絞り込んだ後のプーリング層がGradCAMによる可視化に適していると言われている。これに対して、1ステージタイプのモデルについては、対象物体の種類と、検出された対象物体の大きさといった条件によってGradCAMによる可視化に適する層が異なる。
なお、2ステージタイプのモデルについても、RoIを絞り込んだ後のプーリング層がGradCAMによる可視化に最も適しているとは限らない。
本開示は、物体検出モデルによる判断根拠となった箇所を可視化するのに適した層を特定可能にすることを目的とする。
【課題を解決するための手段】
【0007】
本開示に係る検出結果分析装置は、
画像データに含まれる対象物体を検出する物体検出モデルであって、ニューラルネットワークを用いて構成された物体検出モデルにおける複数の層それぞれを対象の層として、対象の層の出力結果から得られる前記画像データにおける画素毎の活性度を表すヒートマップと、前記対象物体が検出された検出領域とから、前記対象の層の評価値を計算する評価値計算部と、
前記評価値計算部によって計算された前記評価値に基づき、前記複数の層から少なくとも一部の層を選択する層選択部と
を備える。
【0008】
前記評価値計算部は、前記ヒートマップが表す前記活性度の前記検出領域の内側と外側との比率から前記評価値を計算する。
【0009】
前記評価値計算部は、前記検出領域の外側における前記活性度の合計値に対する、前記検出領域の内側における前記活性度の合計値の割合から前記評価値を計算する。
【0010】
前記評価値計算部は、前記活性度が活性閾値よりも高い場合には前記活性度を前記活性閾値に対応する変換活性度に変換し、前記活性度が活性閾値以下の場合には前記活性閾値より1つ下の活性閾値に対応する変換活性度に前記活性度を変換した上で、前記評価値を計算する。
【0011】
前記層選択部は、前記評価値が評価閾値よりも高い層のうち、基準個の層を選択する。
【0012】
前記検出結果分析装置は、さらに、
前記層選択部によって選択された層についての前記ヒートマップを合成して合成マップを生成する合成部
を備える。
【0013】
前記合成部は、前記画像データの各画素を対象の画素として、選択された前記一部の層それぞれについての前記ヒートマップが表す前記対象の画素の活性度のうち、最も高い活性度を、前記合成マップにおける前記対象の画素の活性度に設定することにより、前記合成マップを生成する。
【0014】
本開示に係る検出結果分析方法は、
評価値計算部が、画像データに含まれる対象物体を検出する物体検出モデルであって、ニューラルネットワークを用いて構成された物体検出モデルにおける複数の層それぞれを対象の層として、対象の層の出力結果から得られる前記画像データにおける画素毎の活性度を表すヒートマップと、前記対象物体が検出された検出領域とから、前記対象の層の評価値を計算し、
層選択部が、前記評価値に基づき、前記複数の層から少なくとも一部の層を選択する。
【0015】
本開示に係る検出結果分析プログラムは、
画像データに含まれる対象物体を検出する物体検出モデルであって、ニューラルネットワークを用いて構成された物体検出モデルにおける複数の層それぞれを対象の層として、対象の層の出力結果から得られる前記画像データにおける画素毎の活性度を表すヒートマップと、前記対象物体が検出された検出領域とから、前記対象の層の評価値を計算する評価値計算処理と、
前記評価値計算処理によって計算された前記評価値に基づき、前記複数の層から少なくとも一部の層を選択する層選択処理と
を行う検出結果分析装置としてコンピュータを機能させる。
【発明の効果】
【0016】
本開示では、画像データにおける画素毎の活性度を表すヒートマップと、対象物体が検出された検出領域とから、層の評価値を計算し、評価値に基づき複数の層から少なくとも一部の層を選択する。これにより、可視化に適した層を特定可能である。
【図面の簡単な説明】
【0017】
図1】実施の形態1に係る検出結果分析装置10の構成図。
図2】実施の形態1に係る検出結果分析装置10の全体的な動作を示すフローチャート。
図3】実施の形態1に係る評価値計算処理のフローチャート。
図4】実施の形態1に係る評価値計算処理の説明図。
図5】実施の形態1に係る層選択処理及び合成処理の説明図。
図6】実施の形態1に係る合成処理の説明図。
図7】実施の形態1に係る合成マップ34に基づく分析の例の説明図。
図8】基準個が2以上である方が望ましい場合についての説明図。
図9】基準個が2以上である方が望ましい場合についての説明図。
図10】変形例1に係る検出結果分析装置10の構成図。
図11】実施の形態2に係る評価値計算処理のフローチャート。
図12】実施の形態2に係る2値化処理の説明図。
図13】実施の形態2に係る2値化の効果の説明図。
図14】変形例3に係る3値化処理の説明図。
図15】変形例3に係るn値化処理の説明図。
【発明を実施するための形態】
【0018】
実施の形態1.
***構成の説明***
図1を参照して、実施の形態1に係る検出結果分析装置10の構成を説明する。
検出結果分析装置10は、物体検出モデルによる判断根拠となった箇所を可視化するのに適した層を特定するコンピュータである。
検出結果分析装置10は、プロセッサ11と、メモリ12と、ストレージ13と、通信インタフェース14とのハードウェアを備える。プロセッサ11は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【0019】
プロセッサ11は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ11は、具体例としては、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。
【0020】
メモリ12は、データを一時的に記憶する記憶装置である。メモリ12は、具体例としては、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)である。
【0021】
ストレージ13は、データを保管する記憶装置である。ストレージ13は、具体例としては、HDD(Hard Disk Drive)である。また、ストレージ13は、SD(登録商標,Secure Digital)メモリカード、CF(CompactFlash,登録商標)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(Digital Versatile Disk)といった可搬記録媒体であってもよい。
【0022】
通信インタフェース14は、外部の装置と通信するためのインタフェースである。通信インタフェース14は、具体例としては、Ethernet(登録商標)、USB(Universal Serial Bus)、HDMI(登録商標,High-Definition Multimedia Interface)のポートである。
【0023】
検出結果分析装置10は、機能構成要素として、画像取得部21と、評価値計算部22と、層選択部23と、合成部24とを備える。検出結果分析装置10の各機能構成要素の機能はソフトウェアにより実現される。
ストレージ13には、検出結果分析装置10の各機能構成要素の機能を実現するプログラムが格納されている。このプログラムは、プロセッサ11によりメモリ12に読み込まれ、プロセッサ11によって実行される。これにより、検出結果分析装置10の各機能構成要素の機能が実現される。
【0024】
図1では、プロセッサ11は、1つだけ示されていた。しかし、プロセッサ11は、複数であってもよく、複数のプロセッサ11が、各機能を実現するプログラムを連携して実行してもよい。
【0025】
***動作の説明***
図2から図6を参照して、実施の形態1に係る検出結果分析装置10の動作を説明する。
実施の形態1に係る検出結果分析装置10の動作手順は、実施の形態1に係る検出結果分析方法に相当する。また、実施の形態1に係る検出結果分析装置10の動作を実現するプログラムは、実施の形態1に係る検出結果分析プログラムに相当する。
【0026】
図2を参照して、実施の形態1に係る検出結果分析装置10の全体的な動作を説明する。
物体検出モデルは、画像データに含まれる対象物体を検出するモデルである。物体検出モデルは、ニューラルネットワークを用いて構成されたモデルである。ニューラルネットワークを用いて構成されているため、物体検出モデルは、複数の層から構成される。
【0027】
図2のステップS11:画像取得処理)
画像取得部21は、処理対象とする画像データ31を取得する。
具体的には、画像取得部21は、検出結果分析装置10の利用者によってストレージ13に設定された画像データ31を読み込むことにより、画像データ31を取得する。
【0028】
図2のステップS12:評価値計算処理)
評価値計算部22は、物体検出モデルを構成する複数の層それぞれを対象の層として、対象の層の評価値を計算する。
この際、評価値計算部22は、対象の層の出力結果から得られる画像データ31における画素毎の活性度を表すヒートマップ33と、ステップS11で取得された画像データ31から対象物体が検出された検出領域32とから、評価値を計算する。
【0029】
図3を参照して、実施の形態1に係る評価値計算処理を説明する。
図3のステップS21:物体検出処理)
評価値計算部22は、ステップS11で取得された画像データ31を入力として物体検出モデルにより、対象物体を検出する。ここでは、対象物体の種類は事前に指定されていてもよいし、利用者によって指定されてもよい。図4では、対象物体の種類として瓶が指定された場合を示している。
【0030】
図3のステップS22:検出領域特定処理)
評価値計算部22は、ステップS21で対象物体を検出することによって特定された、対象物体が検出された領域である検出領域32を特定する。
【0031】
図3のステップS23:ヒートマップ生成処理)
評価値計算部22は、物体検出モデルを構成する複数の層それぞれを対象の層として、ヒートマップ33を生成する。
具体的には、評価値計算部22は、ステップS21で対象物体を検出する際において得られた対象の層の出力結果から、対象の層についてのヒートマップ33を生成する。ヒートマップ33は、ステップS11で取得された画像データ31における画素毎の活性度を表す。ここでは、ヒートマップ33は、活性度が高い画素ほど大きい値を示すとする。
【0032】
物体検出モデルを構成する複数の層のうち対象の層となる層は、物体検出モデルを構成する層のうち、畳み込み層とプーリング層といったヒートマップ33を生成可能な層だけである。ヒートマップ33を生成可能な層とは、具体的には縦横それぞれ2画素以上の複数チャンネルをもつ勾配が計算可能な層を指す。
実施の形態1では、ヒートマップ33を生成可能な全ての層それぞれが対象の層として設定されるものとする。しかし、ヒートマップ33を生成可能な全ての層のうち一部の層だけが対象の層として設定されてもよい。例えば、ヒートマップ33を生成可能な全ての層のうち、ある層以降の層のみが対象の層として設定されてもよい。
【0033】
なお、物体検出モデルを構成する複数の層のうち後に処理される層ほど、処理対象の画像データの画素数が少なくなる。しかし、評価値計算部22は、対象の層の出力結果を拡張して、画像データ31の画素毎の活性度を表すヒートマップ33を生成する。
例えば、ある層では、画素数がステップS11で取得された画像データ31の1/4になっている場合がある。この場合には、1つの画素が、画像データ31の4つの画素を表しているので、評価値計算部22は、1つの画素が画像データ31の4つの画素を表しているとしてヒートマップ33を生成する。
また物体検出モデルによっては、複数の層のうち後に処理される層であっても、出力結果の画像データの画素数が増える場合もある。層により出力結果の画素数が変動する可能性があるが、いずれの場合も画像データ31の画素数に合うように、出力結果の画素数を拡大または縮小すればよい。
【0034】
図3のステップS24:評価処理)
評価値計算部22は、ヒートマップ33が生成された複数の層それぞれを対象の層として、対象の層についてステップS23で生成されたヒートマップ33と、ステップS22で特定された検出領域32とから評価値を計算する。
具体的には、評価値計算部22は、対象の層についてのヒートマップが表す活性度の検出領域32の内側と外側との比率から評価値を計算する。実施の形態1では、評価値計算部22は、検出領域32の外側における活性度の合計値に対する、検出領域32の内側における活性度の合計値の割合を評価値として計算する。
図4では、濃いハッチングが付された画素ほど活性度が高いとする。図4では、検出領域32の内側に濃いハッチングが付された画素が多く存在しており、検出領域32の外側には薄めのハッチングが付された画素が少し存在している。そのため、検出領域32の外側における活性度の合計値よりも、検出領域32の内側における活性度の合計値の方が大きな値になり、評価値は1以上の値になる。
【0035】
ここでは、検出領域32の外側における活性度の合計値に対する、検出領域32の内側における活性度の合計値の割合が評価値として計算された。これに限らず、例えば、画像データ31全体の活性度の合計値に対する、検出領域32の内側における活性度の合計値の割合が評価値として計算されてもよい。
【0036】
図2のステップS13:層選択処理)
層選択部23は、ステップS12で計算された評価値に基づき、物体検出モデルを構成する複数の層から少なくとも一部の層を選択する。
具体的には、層選択部23は、評価値が評価閾値よりも高い層のうち、基準個の層を選択する。したがって、評価値が評価閾値よりも高い層が基準個以上存在する場合には、基準個の層が選択される。一方、評価値が評価閾値よりも高い層が基準個未満しか存在しない場合には、評価値が評価閾値よりも高い全ての層が選択される。
評価閾値は、対象物体の検出にどの程度貢献した層であれば分析対象とするか等に応じて、事前に設定される値である。基準個は、物体検出モデルを構成する層の数等に応じて、事前に設定される値である。
【0037】
図5では、層conv0から層conv17_1までの層のうち、評価閾値である1.0よりも高い評価値が得られた層は、層conv11と層conv13と層conv14_1と層conv14_2との4つである。なお、図5では、層conv11の評価値はinfと示されている。infは、活性化された画素が全て検出領域32の内部にあり、評価値が無限大であったことを示している。
図5では、基準個が5であることが想定されており、層conv11と層conv13と層conv14_1と層conv14_2との4つ全てが選択されている。
【0038】
図2のステップS14:合成処理)
合成部24は、ステップS13で選択された層についてのヒートマップ33を合成して合成マップ34を生成する
具体的には、合成部24は、画像データ31の各画素を対象の画素として、ステップS13選択された複数の層それぞれについてのヒートマップが表す対象の画素の活性度のうち、最も高い活性度を、合成マップ34における対象の画素の活性度に設定することにより、合成マップ34を生成する。
例えば、図6に示すように、ある画素pi,jについて、選択された層についてのヒートマップが表す活性度がそれぞれ15、239、76であったとする。この場合には、合成マップ34における画素pi,jについての活性度は、15、239、76のうち最も高い239になる。
【0039】
図5では、層conv11と層conv13と層conv14_1と層conv14_2との4つの層についてのヒートマップ33が合成され、合成マップ34が生成される。そのため、合成マップ34の各画素が示す活性度は、層conv11と層conv13と層conv14_1と層conv14_2とのうちの最も高い活性度を示す。
【0040】
***実施の形態1の効果***
以上のように、実施の形態1に係る検出結果分析装置10は、各層について、ヒートマップ33と検出領域32とから評価値を計算し、評価値に基づき層を選択する。これにより、可視化に適した層を特定可能である。
【0041】
ある層について、検出領域32の内側における活性度の合計値が大きいということは、その層の結果が対象物体の検出に貢献した可能性が高いことを意味する。特に、ある層について、検出領域32の外側における活性度の合計値に対する、検出領域32の内側における活性度の合計値の割合が高いということは、その層の結果が対象物体の検出結果に強く反映されていることを意味する。なお、検出領域32の外側における活性度の合計値に対する、検出領域32の内側における活性度の合計値の割合は、実施の形態1で評価値として用いた指標である。
したがって、評価値が高い層を選択するということは、物体検出モデルによる判断根拠となった箇所を可視化するのに適した層を選択するということになる。
【0042】
実施の形態1に係る検出結果分析装置10は、可視化するのに適した層を選択し、合成マップ34を生成する。そのため、物体検出モデルによる判断根拠となった箇所を適切に表した合成マップ34を生成することが可能である。その結果、物体検出モデルについて、適切な分析を行うことが可能である。
【0043】
図7を参照して、実施の形態1に係る合成マップ34に基づく分析の例を説明する。
図7では、対象物体の種類は自転車である。図7では、自転車全体が検出領域32として特定されず、自転車の前輪からチェーンホイール付近までが検出領域32として特定されている。つまり、物体検出モデルにより適切に自転車が検出されているとは言えない状態である。
合成マップ34では、ペダルと、クランクと、フレームの一部と、前輪の一部とが判断根拠となっている。そして、ハンドルと、サドルと、後輪とについては、判断根拠としてあまり利用されていないことが分かる。そこで、この結果から、例えば、判断根拠としてあまり利用されていないハンドルと、サドルと、後輪とについての学習データを物体検出モデルに与え、学習させることが考えられる。
【0044】
実施の形態1では、図2のステップS13で評価値が評価閾値よりも高い層のうち、基準個の層が選択された。ここで、基準個は、1でも構わない。但し、基準個は、2以上である方が望ましいことがある。
基準個が1である場合には、合成部24は、選択された層についてのヒートマップ33をそのまま合成マップ34として出力すればよい。
【0045】
基準個が2以上である方が望ましい場合について図8及び図9を参照して説明する。
図8では、対象物体の種類はバイクである。図8では、層conv7と層conv9と層conv12と層conv13と層conv14_1と層conv14_2と層conv15_1とが評価閾値である1.0よりも高い評価値が得られたとする。そして、図8では、基準個が5であることが想定されており、層conv9と、層conv12と、層conv14_1と、層conv14_2と、層conv15_1とが選択され、合成マップ34が生成されている。その結果、合成マップ34から、バイクの前輪及び前輪の周辺とハンドルの一部とが判断根拠となった箇所であることが分かる。バイクの場合には、むき出しの車輪が判断根拠となることが多く、合成マップ34から物体検出モデルによって適切に判定されていることが分かる。
ここで、最も評価値が高い層は、層conv9である。そのため、もし基準個が1である場合、つまり評価値が最も高い層だけを選択する場合には、層conv9だけが選択される。すると、合成マップ34からは、ハンドルの一部が判断根拠となった箇所であるように見える。このように、狭い領域にだけ着目しているような層の評価値が最も高くなってしまい、判断根拠となった箇所を適切に表しているとは言えない層だけが選択されてしまう可能性がある。
【0046】
図9では、対象物体の種類は自転車である。図9の画像データ31には、2台の自転車が含まれている。
図9で最も評価値が高い層は、層conv15_1である。そのため、もし基準個が1である場合、つまり評価値が最も高い層だけを選択する場合には、層conv15_1だけが選択される。しかし、層conv15_1では、手前にある自転車の付近のみが活性化しており、奥にある自転車の付近は活性化していない。そのため、このように、複数の対象物体がある場合に、一部の対象物体にだけ着目しているような層の評価値が最も高くなってしまい、判断根拠となった箇所を適切に表しているとは言えない層だけが選択されてしまう可能性がある。
【0047】
***他の構成***
<変形例1>
実施の形態1では、各機能構成要素がソフトウェアで実現された。しかし、変形例1として、各機能構成要素はハードウェアで実現されてもよい。この変形例1について、実施の形態1と異なる点を説明する。
【0048】
図10を参照して、変形例1に係る検出結果分析装置10の構成を説明する。
各機能構成要素がハードウェアで実現される場合には、検出結果分析装置10は、プロセッサ11とメモリ12とストレージ13とに代えて、電子回路15を備える。電子回路15は、各機能構成要素と、メモリ12と、ストレージ13との機能とを実現する専用の回路である。
【0049】
電子回路15としては、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)が想定される。
各機能構成要素を1つの電子回路15で実現してもよいし、各機能構成要素を複数の電子回路15に分散させて実現してもよい。
【0050】
<変形例2>
変形例2として、一部の各機能構成要素がハードウェアで実現され、他の各機能構成要素がソフトウェアで実現されてもよい。
【0051】
プロセッサ11とメモリ12とストレージ13と電子回路15とを処理回路という。つまり、各機能構成要素の機能は、処理回路により実現される。
【0052】
実施の形態2.
実施の形態2は、ヒートマップ33が表す各画素の活性度をn値化した上で、評価値を計算する点が実施の形態1と異なる。ここで、nは2以上の整数である。実施の形態2では、この異なる点を説明して、同一の点については説明を省略する。
【0053】
***動作の説明***
図11及び図12を参照して、実施の形態2に係る検出結果分析装置10の動作を説明する。
実施の形態2に係る検出結果分析装置10の動作手順は、実施の形態2に係る検出結果分析方法に相当する。また、実施の形態2に係る検出結果分析装置10の動作を実現するプログラムは、実施の形態2に係る検出結果分析プログラムに相当する。
【0054】
図11を参照して、実施の形態2に係る評価値計算処理を説明する。
ステップS31からステップS33の処理は、図3のステップS21からステップS23の処理と同じである。
【0055】
図11のステップS34:n値化処理)
評価値計算部22は、ステップS33で生成された各層のヒートマップ33をn値化する。実施の形態2では、評価値計算部22は、各層のヒートマップ33を2値化する。
具体的には、評価値計算部22は、ヒートマップ33における各画素を対象の画素として、対象の画素の活性度が活性閾値より高い場合には、対象の画素の活性度を1に変換し、対象の画素の活性度が活性閾値以下の場合には、対象の画素の活性度を0に変換する。その結果、図12に示すように、ヒートマップ33において濃いハッチングが付された画素の活性度が1になり、その他の画素の活性度が0になる。図12では、活性度が1の画素を白で表し、活性度が0の画素を黒で表している。
【0056】
図11のステップS35:評価処理)
評価値計算部22は、ステップS34で変換された後の活性度を用いて、検出領域32の外側における活性度の合計値に対する、検出領域32の内側における活性度の合計値の割合を評価値として計算する。
図12では、検出領域32の外側における活性度が1の画素が864個であり、検出領域32の内側における活性度が1の画素が2944個である。したがって、評価値は、2944/864≒3.4である。
【0057】
***実施の形態2の効果***
以上のように、実施の形態2に係る検出結果分析装置10は、ヒートマップ33における各画素の活性度を2値化した上で、評価値を計算する。活性度を2値化することにより、重要な層はより評価値が高くなり、重要でない層はより評価値が低くなる。これにより、より適切に可視化に適した層を特定可能である。
実施の形態2では、2値化の例示として、活性度が活性閾値より高い場合には、変換活性度を1とし、活性度が活性閾値以下の場合には、変換活性度を0とした。活性閾値毎の変換活性度は、任意の数に設定することができる。
【0058】
例えば、図13に示すように、2値化していない場合には、多くの層の評価値が評価閾値である1.0を少し超えた状態であった。これに対して、2値化した場合には、一部の評価値が評価閾値を少しだけ超えていた層については評価値が低くなり、評価値が評価閾値である1.0未満になる。一方で、元々比較的評価値が高かった層は、より評価値が高くなる。その結果、評価値が評価閾値である1.0を超えた層の数が少なくなる。
【0059】
***他の構成***
<変形例3>
実施の形態2では、ヒートマップ33が2値化された。しかし、2値化に限らず、n値化されてもよい。
例えば3値化の場合、評価値計算部22は、活性閾値として、閾値Xと閾値Yとの2つの閾値を用いる。この場合には、図14に示すように、活性度が閾値X以下の画素については、変換活性度に0が設定される。活性度が閾値Xより高く、閾値Y以下の画素については、変換活性度に0.5が設定される。活性度が閾値Yより高い画素については、変換活性度に1が設定される。
このようにn値化の場合、n-1の活性閾値が設定され、活性閾値毎の変換活性度が設定される。n値化処理については、活性度がi(0<i<n)からi-1で区切られる範囲毎に変換活性度が定まる。n-1の活性閾値より活性度が高い場合は、n-1の活性閾値に対応する変換活性度に変換され、活性度がn-1の活性閾値以下かつ、n-2の活性閾値より高い場合はn-2の活性閾値に対応する変換活性度に変換される。
計算を簡単にするため、例えば、n-1より高い活性閾値に対応する変換活性度を1とし、活性度がn-n+1(=1)以下の活性閾値に対応する変換活性度を0に変換し、n-2から2までについては、変換活性度を1から0の間の値に変換して、n値化する。変換活性度の下限値を0に設定することにより、計算を簡単にすることができる。なお、変換活性度の上限値は1に限らず他の値にしてもよい。
【0060】
また、閾値をずらしたReLU関数を用いてn値化されてもよい。
具体的には、図15に示すように、活性度が評価閾値X以下の画素については、活性度に0が設定される。活性度が評価閾値Xより高い画素については、活性度の値が維持される。
【0061】
<変形例4>
各実施の形態における検出結果分析装置10は、無人搬送車(AGV,Automated guided vehicle)に用いられる物体検出モデルに適用してもよい。誘導方式として画像認識方式を採用する無人搬送車においては、床や天井に描かれた記号を読み取り、それによって自車の位置を把握するようにしている。各実施の形態に係る検出結果分析装置10を無人搬送車に用いられる物体検出モデルに適用することにより、無人搬送車に用いられる物体検出モデルの精度を高くすることが可能になる。その結果、より高精度な移動が可能な無人搬送車を提供することが可能になる。
【0062】
以上、この発明の実施の形態及び変形例について説明した。これらの実施の形態及び変形例のうち、いくつかを組み合わせて実施してもよい。また、いずれか1つ又はいくつかを部分的に実施してもよい。なお、この発明は、以上の実施の形態及び変形例に限定されるものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【0063】
10 検出結果分析装置、11 プロセッサ、12 メモリ、13 ストレージ、14 通信インタフェース、15 電子回路、21 画像取得部、22 評価値計算部、23 層選択部、24 合成部、31 画像データ、32 検出領域、33 ヒートマップ、34 合成マップ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15