(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-09
(45)【発行日】2024-05-17
(54)【発明の名称】情報処理方法、及び、情報処理システム
(51)【国際特許分類】
G06V 10/82 20220101AFI20240510BHJP
G06T 7/00 20170101ALI20240510BHJP
【FI】
G06V10/82
G06T7/00 350C
(21)【出願番号】P 2021527395
(86)(22)【出願日】2020-04-03
(86)【国際出願番号】 JP2020015401
(87)【国際公開番号】W WO2020261700
(87)【国際公開日】2020-12-30
【審査請求日】2023-01-11
(31)【優先権主張番号】P 2019117224
(32)【優先日】2019-06-25
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】100109210
【氏名又は名称】新居 広守
(74)【代理人】
【識別番号】100137235
【氏名又は名称】寺谷 英作
(74)【代理人】
【識別番号】100131417
【氏名又は名称】道坂 伸一
(72)【発明者】
【氏名】高橋 正樹
(72)【発明者】
【氏名】石川 和史
(72)【発明者】
【氏名】塚本 裕介
(72)【発明者】
【氏名】石井 育規
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2002-324226(JP,A)
【文献】特開2016-099716(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 10/82
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
コンピュータに実行させる情報処理方法であって、
機械学習を用いて訓練された第1認識モデルに
第1画像データを入力することにより出力される第1認識結果を取得し、
前記第1認識結果は、前記第1画像データの中から前記第1認識モデルが認識した第1物体の領域を示す領域情報、および前記第1物体に対する物体クラスを示す物体クラス情報を含み、前記物体クラスは、前記第1認識モデルにより認識されるべき2以上の対象物体の物体クラスのうちの1つであり、
前記
第1画像データに対するリファレンスデータを取得し、
前記リファレンスデータは、前記2以上の対象物体のうち、前記第1画像データに含まれる第1対象物体の領域を示す対象物体領域情報、および前記第1対象物体の物体クラス示す対象物体クラス情報を含み、
前記第1認識結果と前記リファレンスデータと
に基づき、前記第1対象物体に対応する前記第1物体の物体クラスが前記第1対象物体の物体クラスと異なるか否かの判定を行い、
前記判定において、前記第1対象物体に対応する前記第1物体の物体クラスが前記第1対象物体の物体クラスと異なる、と判定された場合、
前記第1認識モデルに対する
新たな物体クラスを作成し、
前記リファレンスデータの前記対象物体クラス情報に示される、前記第1対象物体の物体クラスを前記新たな物体クラスに変更し、
(i)前記
第1画像データ
、および(ii)前記対象物体クラス情報が変更された前記リファレンスデータを含む訓練データ
を出力
し、
前記新たな物体クラスを作成した前記第1認識モデルが前記訓練データに含まれる前記第1画像データから認識した前記第1対象物体に対応する前記第1物体に対する物体クラスが前記新たな物体クラスであることを示す物体クラス情報を含む検出結果が出力されるように、前記新たな物体クラスを作成した前記第1認識モデルを前記訓練データを用いて訓練する、
情報処理方法。
【請求項2】
前記判定は、さらに、前記第1認識結果と前記リファレンスデータとに基づき、前記第1対象物体が前記第1認識モデルにより認識されたか否かを判定し、
前記判定において、前記第1対象物体が前記第1認識モデルにより認識されていないと判定された場合、
前記第1認識モデルに対する前記新たな物体クラスを作成し、
前記リファレンスデータの前記対象物体クラス情報に示される、前記第1対象物体の物体クラスを前記新たな物体クラスに変更し、
(i)前記第1画像データ、および(ii)前記対象物体クラス情報が変更された前記リファレンスデータを含む訓練データを出力し、
前記新たな物体クラスを作成した前記第1認識モデルが前記訓練データに含まれる第1画像データから認識した前記第1対象物体に対応する第2物体に対する物体クラスが前記新たな物体クラスであることを示す物体クラス情報を含む認識結果が出力されるように、前記新たな物体クラスを作成した前記第1認識モデルを前記訓練データを用いて訓練する、
請求項1に記載の情報処理方法。
【請求項3】
前記第1認識モデルとは別の第2認識モデルに前記
第1画像データを入力することにより出力される第2認識結果を取得し、
前記第2認識結果に基づいて前記
新たな物体クラスを作成
し、
前記第2認識モデルは、機械学習を用いて訓練された認識モデルであり、
前記第2認識モデルは、前記第1認識モデルにより認識されるべき前記2以上の対象物体の物体クラスを含む複数の物体クラスを認識する、
請求項1に記載の情報処理方法。
【請求項4】
前記第2認識結果は、
前記第1認識モデルが認識した前記第1物体に対する物体クラスの1つ以上の候補を含み、
前記1つ以上の候補に基づいて前記
新たな物体クラスを作成する
請求項
3に記載の情報処理方法。
【請求項5】
複数の前記
第1画像データから、複数の前記第2認識結果を取得し、
複数の前記第2認識結果の間で、
(iii)前記1つ以上の候補の少なくとも一部が同一又は類似である場合、前記1つ以上の候補の少なくとも一部に基づいて前記
新たな物体クラスを作成する
、または(iv)複数の前記第2認識結果の間で、前記1つ以上の候補の確率分布が同一又は類似である場合、前記1つ以上の候補の前記確率分布に基づいて前記新たな物体クラスを作成する、
請求項
4に記載の情報処理方法。
【請求項6】
前記第2認識結果は、前記第2認識モデルの中間生成物を含み、
前記中間生成物に基づいて前記
新たな物体クラスを作成する
請求項
3に記載の情報処理方法。
【請求項7】
前記第1認識モデルは、ニューラルネットワークモデルであり、
前記
新たな物体クラスの作成は、前記ニューラルネットワークモデルのネットワーク構成又はパラメタの変更を含む
請求項1~
6のいずれか1項に記載の情報処理方法。
【請求項8】
機械学習を用いて訓練された第1認識モデルに
第1画像データを入力することにより出力される第1認識結果を取得する第1取得部と、
前記第1認識結果は、前記第1画像データの中から前記第1認識モデルが認識した第1物体の領域を示す領域情報、および前記第1物体に対する物体クラスを示す物体クラス情報を含み、前記物体クラスは、前記第1認識モデルにより認識されるべき2以上の対象物体の物体クラスのうちの1つであり、
前記
第1画像データに対するリファレンスデータを取得する第2取得部と、
前記リファレンスデータは、前記2以上の対象物体のうち、前記第1画像データに含まれる第1対象物体の領域を示す対象物体領域情報、および前記第1対象物体の物体クラス示す対象物体クラス情報を含み、
前記第1認識結果と前記リファレンスデータと
に基づき、前記第1対象物体に対応する前記第1物体の物体クラスが前記第1対象物体の物体クラスと異なるか否かの判定を行う判定部と、
クラス増設部と、を備え、
前記クラス増設部は、
前記判定において、前記第1対象物体に対応する前記第1物体の物体クラスが前記第1対象物体の物体クラスと異なる、と判定された場合、前記第1認識モデルに対する新たな物体クラスを作成し、
前記リファレンスデータの前記対象物体クラス情報に示される、前記第1対象物体の物体クラスを前記新たな物体クラスに変更し、
(i)前記第1画像データ、および(ii)前記対象物体クラス情報が変更された前記リファレンスデータを含む訓練データを出力し、
前記新たな物体クラスを作成した前記第1認識モデルが前記訓練データに含まれる前記第1画像データから認識した前記第1対象物体に対応する前記第1物体に対する物体クラスが前記新たな物体クラスであることを示す物体クラス情報を含む検出結果が出力されるように、前記新たな物体クラスを作成した前記第1認識モデルを前記訓練データを用いて訓練する、
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、機械学習モデルによるクラス認識処理についての情報処理方法、及び、情報処理システムに関する。
【背景技術】
【0002】
近年、機械学習を利用したクラス分類装置の研究及び商品化が盛んに行われている。
【0003】
例えば、特許文献1には、未知クラスを検出し、未知クラスのための分類器を生成するためのシステム及び方法が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、特許文献1で開示される発明では、分類器の出力に誤りがあると、トレーニングによる分類器の性能向上が抑制されるおそれがある。これに対し、本開示では、分類器を含む認識モデルの誤りに基づいて認識モデルの認識性能を効率的に向上させることができる情報処理方法、及び、情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一態様に係る情報処理方法は、コンピュータに実行させる情報処理方法であって、機械学習を用いて訓練された第1認識モデルにセンシングデータを入力することにより出力される第1認識結果を取得し、前記センシングデータに対するリファレンスデータを取得し、前記第1認識結果と前記リファレンスデータとの認識対象のクラスに関する差異を判定し、前記差異が所定条件を満たす場合、前記第1認識モデルに対する追加クラスを作成し、前記センシングデータ又は前記センシングデータの加工データを、前記追加クラスについての訓練データとして出力する。
【0007】
また、本開示の一態様に係る情報処理システムは、機械学習を用いて訓練された第1認識モデルにセンシングデータを入力することにより出力される第1認識結果を取得する第1取得部と、前記センシングデータに対するリファレンスデータを取得する第2取得部と、前記第1認識結果と前記リファレンスデータとの認識対象のクラスに関する差異を判定する判定部と、前記差異が所定条件を満たす場合、前記第1認識モデルに対する追加クラスを作成し、前記センシングデータ又は前記センシングデータの加工データを、前記追加クラスについての訓練データとして出力するクラス増設部とを備える。
【0008】
なお、これらの包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【0009】
本開示の一態様に係る情報処理方法、及び、情報処理システムによれば、認識モデルの誤りに基づいて認識モデルの認識性能を効率的に向上させることができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、実施の形態に係る情報処理システムの機能構成の一例を示すブロック図である。
【
図2】
図2は、実施の形態に係る移動体から出力されるログ情報の一例を示す図である。
【
図3】
図3は、実施の形態に係る再学習処理装置の動作を示すフローチャートである。
【
図4A】
図4Aは、実施の形態に係る誤検出に対する判定情報の一例である。
【
図4B】
図4Bは、実施の形態に係る未検出に対する判定情報の一例である。
【
図5B】
図5Bは、誤検出したシーン画像に対する切出し画像を示す図である。
【
図6B】
図6Bは、未検出したシーン画像に対する切出し画像を示す図である。
【
図7】
図7は、実施の形態に係るNN認識実行部による分類結果を示す図である。
【
図8】
図8は、検出クラスの増設処理を示すフローチャートである。
【
図9】
図9は、物体検出のカテゴリ構造の一例を示す図である。
【
図10A】
図10Aは、誤検出したシーン画像に対する再学習用訓練データを示す図である。
【
図10B】
図10Bは、未検出したシーン画像に対する再学習用訓練データを示す図である。
【
図11A】
図11Aは、アノテーションデータが変更された再学習用訓練データの一例を示す図である。
【
図11B】
図11Bは、アノテーションデータが変更された再学習用訓練データの他の一例を示す図である。
【
図12】
図12は、物体検出部に対する検出クラスの増設の一例を示す図である。
【
図13】
図13は、物体検出部に対する検出クラスの増設の他の一例を示す図である。
【
図14】
図14は、その他の実施の形態に係る情報処理システムの機能構成の他の一例を示すブロック図である。
【発明を実施するための形態】
【0011】
(本開示の基礎となった知見)
例えば、スマートフォン、及び、運転者の代わりに機械が運転する自動運転車(ロボットカー)においても、カメラ装置及び赤外線アレイセンサ等から転送される画像に対する一般物体認識装置(例えば、一般物体検出装置)は、要素機能の1つである。一般物体とは、自動運転車の場合は、例えば、歩行者、乗用車、道路標識、建物又は道路の領域等を示す。自動運転車は、一般物体認識装置からの認識結果に基づき、自動運転車本体を制御し、目的の場所へ安全に移動することが必須要件となる。
【0012】
よって、一般物体認識装置は、正確に物体認識を行う必要があるが、誤った認識(例えば、誤検出又は未検出)を引き起こすことも否定はできない。その場合の対処方法として、誤検出された画像データと検出データとを正しく訂正し、それらを訓練用データとしてその物体認識装置に対して再学習処理する手法が存在する。この処理によって、その物体認識装置において、同じような誤検出を起こし難くする効果がある。
【0013】
また、自動運転車を含む様々な工業製品の分野において、ニューラルネットワーク型認識装置(例えば、ニューラルネットワーク型物体検出装置)を搭載し、その認識結果(例えば、検出結果)に基づき、自動的に制動を行う製品が市場に投入されている。ニューラルネットワーク型物体認識装置では、その再学習処理の手法として、転移学習及びファインチューニングなどが存在する。
【0014】
また、他の対処方法として、第1物体認識器において正しく検出しにくい物体を別の検出クラスとして独立させ、その物体画像を含むシーン画像を有する訓練用データにより学習処理した第2物体認識器(ニューラルネットワーク型認識器)を新たに用意する。そして、その第2物体認識器が該当クラスの物体を認識した場合、その認識領域を第1物体認識器とは別手段で認識処理し、結果的に全体的な認識性能を向上する手法も考えられる。
【0015】
しかしながら、誤検出及び未検出に対応するためのニューラルネットワーク型物体認識装置の学習処理においては、膨大な画像データの収集とアノテーション作業とを必要とする。また、アノテーション作業は、手作業が一般的であり、非常にコストが掛かる作業となっている。
【0016】
そのため、様々な訓練用データを作成するための自動化手法が提案されてきた。しかし、物体認識装置の誤った認識(例えば、誤検出及び未検出)を対策するために、認識クラスの増設を含めた訓練用データの生成、並びに、再学習処理装置に関する設計及び技術的な解決策に関しては、検討はされていなかった。また、特許文献1においても、そのような記載はない。
【0017】
例えば、一般物体検出装置の誤検出及び未検出を対策するための物体検出用ニューラルネットワークに対して検出クラスを増設し、再度学習処理を実行して、一般物体検出装置の物体検出性能の向上を図る機能に関する設計及び技術的な解決策に関しては、検討はされていなかった。
【0018】
このような課題を解決するために、物体検出器の誤検出又は未検出した検出画像部分(画像において誤検出又は未検出した物体を含む部分)を切り出し、その切出し画像を物体検出器とは別のニューラルネットワーク認識器で認識を実行する。そして、そこで得られた結果情報(例えば、分類結果)の類似性から新しい検出クラスを増設し、再学習対象の物体検出器の検出クラスを増設する処理を実行し、物体検出器に対して再学習処理を実行することで、低コストで物体検出器の検出性能を高めることが可能となる。
【0019】
そこで、本願発明者らは、物体検出装置の誤検出及び未検出を効果的に対策するための訓練用データの生成について鋭意検討を行い、以下に説明する情報処理方法及び情報処理システムを創案した。
【0020】
本開示の一態様に係る情報処理方法は、コンピュータに実行させる情報処理方法であって、機械学習を用いて訓練された第1認識モデルにセンシングデータを入力することにより出力される第1認識結果を取得し、前記センシングデータに対するリファレンスデータを取得し、前記第1認識結果と前記リファレンスデータとの認識対象のクラスに関する差異を判定し、前記差異が所定条件を満たす場合、前記第1認識モデルに対する追加クラスを作成し、前記センシングデータ又は前記センシングデータの加工データを、前記追加クラスについての訓練データとして出力する。
【0021】
これにより、差異が所定条件を満たす場合に、第1認識モデルに対する追加クラスが作成される。そして、差異が所定条件を満たすときのセンシングデータ又はセンシングデータの加工データを訓練データとして、追加クラスが作成された第1認識モデルがトレーニングされる。つまり、認識モデルの誤りに基づいて追加されたクラスについて第1認識モデルがトレーニングされる。例えば、認識モデルの誤り方に特徴がある場合、誤り方の特徴に基づく新たなクラスでトレーニングを行うことにより、元々あったトレーニングが困難なクラスの認識性能を向上させやすくすることができる。よって、本開示の一態様に係る情報処理方法によれば、認識モデルの誤りに基づいて認識モデルの認識性能を効率的に向上させることができる。
【0022】
また、例えば、前記第1認識モデルとは別の第2認識モデルに前記センシングデータを入力することにより出力される第2認識結果を取得し、前記第2認識結果に基づいて前記追加クラスを作成する。
【0023】
これにより、第2認識結果に基づいて第1認識モデルに対する追加クラスを作成することができる。第2認識モデルが第1認識モデルより高性能な認識(検出)が可能なモデルである場合、第2認識結果は、第1認識結果より正確な結果となる。このような第2認識結果に基づいて追加クラスを作成することで、適切な追加クラスを作成することができる。例えば、第2認識モデルにおける認識結果が第2認識結果となるような認識対象を、第1認識モデルが追加クラスと認識できるようになる。つまり、第2認識結果となるような認識対象の検出性能を向上させることができる。また、ユーザがセンシングデータに対してアノテーション作業を行うことなく、自動で追加クラスを作成することができる。つまり、利便性が向上された情報処理方法を実現することができる。
【0024】
また、例えば、前記第2認識結果は、前記認識対象のクラスの1つ以上の候補を含み、前記1つ以上の候補に基づいて前記追加クラスを作成する。
【0025】
これにより、追加クラスは、第2認識モデルにおける出力層の結果に基づいて作成される。このような出力層の結果(1以上の候補)に基づいて追加クラスを作成することで、適切な追加クラスを作成することができる。例えば、第2認識モデルにおける認識結果が1以上の候補となるような認識対象を、第1認識モデルが追加クラスと認識できるようになる。つまり、認識結果が当該1以上の候補となるような認識対象の検出性能を向上させることができる。
【0026】
また、例えば、複数の前記センシングデータから、複数の前記第2認識結果を取得し、複数の前記第2認識結果の間で、前記1つ以上の候補の少なくとも一部が同一又は類似である場合、前記1つ以上の候補の少なくとも一部に基づいて前記追加クラスを作成する。
【0027】
これにより、追加クラスは、複数の第2認識結果のうち、認識対象のクラスの候補の傾向が同一又は類似した第2認識結果に基づいて作成される。つまり、より適切な追加クラスを作成することができる。例えば、第2認識モデルにおける認識結果の傾向が同一又は類似するような認識対象を、第1認識モデルが追加クラスと認識できるようになる。よって、再学習において物体検出装置の検出性能をより向上させることができる。
【0028】
また、例えば、複数の前記センシングデータから、複数の前記第2認識結果を取得し、複数の前記第2認識結果の間で、前記1つ以上の候補の確率分布が同一又は類似である場合、前記1つ以上の候補の前記確率分布に基づいて前記追加クラスを作成する。
【0029】
これにより、追加クラスは、複数の第2認識結果のうち、認識対象のクラスの候補及び当該候補の確率分布の傾向が同一又は類似した第2認識結果に基づいて作成される。つまり、さらに適切な追加クラスを作成することができる。例えば、第2認識モデルにおける認識結果の傾向(例えば、確率分布の傾向)が同一又は類似するような認識対象を、第1認識モデルが追加クラスと認識できるようになる。よって、再学習において物体検出装置の検出性能をさらに向上させることができる。
【0030】
また、例えば、前記第2認識結果は、前記第2認識モデルの中間生成物を含み、前記中間生成物に基づいて前記追加クラスを作成する。
【0031】
これにより、追加クラスは、第2認識モデルにおける中間層の結果に基づいて作成される。このような中間層の結果(中間生成物)に基づいて追加クラスを作成することで、適切な追加クラスを作成することができる。例えば、第2認識結果が所定の中間生成物となるような認識対象を、第1認識モデルが追加クラスと認識できるようになる。つまり、第2認識結果が所定の中間生成物となるような認識対象の検出性能を向上させることができる。
【0032】
また、例えば、前記差異に基づいて前記追加クラスを作成する。
【0033】
これにより、追加クラスは、差異に基づいて作成される。よって、追加クラスの作成における処理量を低減することができる。
【0034】
また、例えば、前記第1認識モデルは、ニューラルネットワークモデルであり、前記追加クラスの作成は、前記ニューラルネットワークモデルのネットワーク構成又はパラメタの変更を含む。
【0035】
これにより、ニューラルネットワークモデルの検出性能を、ネットワーク構成の変更(例えば、追加クラスを増設)又はパラメタの変更(例えば、アンカーBOXを変更)により向上させることができる。つまり、ニューラルネットワークモデルの検出性能を、新たに検出器を用意することなく向上させることができる。
【0036】
また、例えば、前記所定条件は、誤認識又は未認識であることを含む。
【0037】
これにより、第1認識結果が誤認識又は未認識である場合に、追加クラスが作成される。誤認識又は未認識のセンシングデータ又は当該センシングデータの加工データを含む訓練データを用いて、追加クラスが作成された第1認識モデルが再学習される場合、第1認識モデルにおける誤認識又は未認識した物体に対する物体検出性能を効果的に向上させることができる。
【0038】
また、本開示の一態様に係る情報処理システムは、機械学習を用いて訓練された第1認識モデルにセンシングデータを入力することにより出力される第1認識結果を取得する第1取得部と、前記センシングデータに対するリファレンスデータを取得する第2取得部と、前記第1認識結果と前記リファレンスデータとの認識対象のクラスに関する差異を判定する判定部と、前記差異が所定条件を満たす場合、前記第1認識モデルに対する追加クラスを作成し、前記センシングデータ又は前記センシングデータの加工データを、前記追加クラスについての訓練データとして出力するクラス増設部とを備える。
【0039】
これにより、コンピュータが、プログラムに従って、上記の情報処理方法を実行することができる。
【0040】
さらに、これらの包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム、又は、コンピュータ読み取り可能なCD-ROMなどの非一時的な記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム、及び、記録媒体の任意な組み合わせで実現されてもよい。
【0041】
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることもできる。
【0042】
また、各図は、模式図であり、必ずしも厳密に図示されたものではない。したがって、例えば、各図において縮尺などは必ずしも一致しない。また、各図において、実質的に同一の構成については同一の符号を付しており、重複する説明は省略又は簡略化する。
【0043】
また、本明細書において、同じなどの要素間の関係性を示す用語、および、矩形などの要素の形状を示す用語、並びに、数値及び数値範囲は、厳格な意味のみを表す表現ではなく、実質的に同等な範囲、例えば数%程度の差異をも含むことを意味する表現である。
【0044】
(実施の形態)
以下、本実施の形態に係る情報処理方法、及び、情報処理システムについて、
図1~
図13を参照しながら説明する。
【0045】
[1.情報処理システムの構成]
まずは、本実施の形態に係る再学習処理装置30を含む情報処理システム1の構成について、
図1を参照しながら説明する。
図1は、本実施の形態に係る情報処理システム1の機能構成を示すブロック図である。なお、以下では、物体検出部11が移動体10の一例である車両に搭載されている例について説明するが、車両に搭載されることに限定されない。また、以下では、物体検出部11は、ニューラルネットワーク型認識装置の一例であるニューラルネットワーク型物体検出装置である例について説明する。
【0046】
図1に示すように、情報処理システム1は、移動体10と、再学習処理装置30とを備える。
【0047】
移動体10は、例えば、車両である。車両は、例えば、運転者の操作を必要とせずに、車両の運転を制御する自動運転車であるが、自動運転又は手動運転の何れかに切り替えて走行することが可能な車両であってもよい。
【0048】
移動体10は、物体検出部11と通信部12とを有する。また、移動体10は、さらに、移動体10の周囲を撮影した画像を生成するカメラ(図示しない)などの光センサを含む複数のセンサを有する。物体検出部11は、光センサなどのセンサから取得した情報に基づいて、移動体10の周囲に存在する物体を検出する。以下では、光センサがカメラであり、物体検出部11は、当該カメラから取得した画像に基づいて、移動体10の周囲に存在する物体を検出する場合を説明する。なお、画像は、センシングデータの一例である。
【0049】
物体検出部11は、入力されたセンサデータすなわち画像等に基づき物体を検出する。物体検出部11は、物体検出モデル(学習済みモデル)に対する処理を制御する情報処理部である。物体検出モデルは、複数の層を有するニューラルネットワーク型の数理モデル(検出器)であって、物体検出処理を行うための数理モデルを含む。
【0050】
基本的に、物体検出モデルは、入力層、中間層及び出力層で構成される複数の処理層を有する。入力層には、物体検出処理の処理対象データが入力データ(入力情報)として入力される。そして、出力層から、物体検出処理の処理結果データが出力データ(出力情報)として出力される。入力層と出力層とは異なる処理層であって、入力層と出力層との間の処理層は、中間層と呼ばれる。物体検出モデルは、複数の中間層を有していてもよい。物体検出モデルは、機械学習を用いて訓練された第1認識モデルの一例である。
【0051】
例えば、物体検出部11の内部に、学習データを用いて学習された物体検出モデルが実装される。本実施の形態では、物体検出部11は、入力データである画像に基づいて、「車両」及び「人物」の2つの検出クラス(物体クラス)を検出可能に学習された物体検出モデル(検出器)が実装されているとする。また、物体検出部11の内部に実装された物体検出モデルを第1物体検出モデル、第1物体認識モデル又は第1物体認識器とも記載する。
【0052】
また、物体検出部11は、検出対象である対象物体を含む画像及び当該対象物体の検出結果などに基づいて、再学習処理装置30に送信するためのログ情報を生成する。ログ情報には、対象物体が含まれる画像及び物体検出部11における検出結果が含まれる。
【0053】
ここで、移動体10の物体検出部11が生成するログ情報100について、
図2を参照しながら説明する。
図2は、本実施の形態に係る移動体10から出力されるログ情報100の一例を示す図である。再学習処理装置30は、
図2に示すログ情報100を移動体10から取得する。
【0054】
図2に示すように、ログ情報100は、例えば、シーン画像及び検出結果を含む。
【0055】
シーン画像(以降において、単に画像とも記載する)は、移動体10が備えるカメラが撮像した画像101であり、物体検出処理を実行する対象の画像101である。画像101には、検出結果に対応する領域(検出対象が位置する領域)が対応付けられていてもよい。
図2の例では、対象物体110(認識対象の一例)が存在する領域が物体領域101aである。
【0056】
検出結果は、画像101に対する物体検出部11が検出した結果等を示す情報である。具体的には、検出結果には、物体検出部11が検出した物体クラス及び物体領域101aを示す情報が含まれる。
図2の例では、「車両」である対象物体110に対する物体検出部11の検出結果が「人物」である例について示している。つまり、
図2に示すログ情報100は、物体検出部11が誤検出した場合のログ情報を示す。なお、物体領域101aを矩形で示しているが、物体領域101aの形状は一例であり、矩形以外であってもよい。なお、物体検出部11における検出結果は、第1認識結果の一例である。
【0057】
ログ情報100には、さらに、画像101を撮影したカメラを特定するための撮影機器情報、画像101が撮影された時刻を示す時刻情報、画像101が撮影された位置及び方位を示す撮影位置情報等が含まれていてもよい。
【0058】
なお、上記では、物体検出部11は、物体を検出する検出器(物体検出器)を有する例を説明したが、分類器又はセグメンテーション器(画像セグメンテーションを実行可能に学習された物体検出モデル)であってもよい。
【0059】
図1を再び参照して、通信部12は、移動体10が再学習処理装置30と通信する。通信部12は、例えば、通信回路(通信モジュール)により実現される。通信部12は、ネットワーク20を介して再学習処理装置30に物体検出部11が生成したログ情報100を転送するログ転送器として機能する。なお、通信部12がログ情報100を送信するタイミングは特に限定されず、ログ情報100は、逐次送信されてもよいし、定期的に送信されてもよい。
【0060】
なお、移動体10は、ログ情報100を記憶する記憶部(記憶装置)を備えていてもよい。
【0061】
ネットワーク20は、インターネット等の広域ネットワーク(WAN:Wide Area Network)である。移動体10と再学習処理装置30とは、ネットワーク20を介して(具体的には、ネットワーク20の末端に設けられた中継装置(図示しない)を介して)無線通信可能に接続されている。
【0062】
再学習処理装置30は、物体検出用の物体検出モデル(学習済みモデル)を再学習させるための訓練用データセットを生成する情報処理装置(サーバ装置)である。再学習処理装置30は、例えば、移動体10が備える物体検出部11に実装されている物体検出モデルを作製した製造メーカ、その他の事業者等により運用される。
【0063】
再学習処理装置30は、通信部31と、判定部32と、切出し部33と、NN(ニューラルネットワーク)認識実行部34と、クラス増設部35と、記憶部36とを有する。
【0064】
通信部31は、再学習処理装置30が移動体10と通信する。通信部31は、例えば、通信回路(通信モジュール)で実現される。通信部31は、ネットワーク20を介して移動体10からログ情報100(
図2を参照)を受信するログ収集器として機能する。通信部31は、受信したログ情報を判定部32に出力する。なお、通信部31は、第1取得部の一例である。
【0065】
判定部32は、取得したログ情報100に基づいて、当該ログ情報100に含まれる検出結果が正しいか否かの判定を行う。つまり、判定部32は、物体検出部11による検出結果における正誤判定を行う。ここでの正誤判定には、誤検出及び未検出が含まれる。言い換えると、判定部32は、物体検出部11による検出結果において、誤検出又は未検出(誤認識又は未認識の一例)があるか否かの判定を行う。
【0066】
判定部32は、ユーザがログ情報100に含まれる画像101に対して手動でアノテーションした物体矩形情報(物体クラスとその物体領域を含む)と、物体検出部11による検出結果とを比較し、正誤判定を行ってもよい。この場合、再学習処理装置30は、ユーザから入力を受け付ける受付部(図示しない)を備えていてもよい。また、判定部32は、通信部31を介して上記の物体矩形を取得してもよい。なお、上記の物体クラスとその物体領域を含む物体矩形は、リファレンスデータの一例である。
【0067】
また、判定部32は、物体検出部11より検出性能が高い物体検出部(以降において、高性能物体検出部とも記載する)による画像101に対する検出結果と、物体検出部11による検出結果とを比較し、正誤判定を行ってもよい。この場合、再学習処理装置30は、高性能物体検出部を備えていてもよいし、そのような物体検出部による検出結果を、通信部31を介して取得してもよい。
【0068】
高性能物体検出部は、物体検出部11より演算性能が高く、より正確な物体検出を行うことができる物体検出モデルを有する。このような物体検出モデルは、例えば、画像セグメンテーション(セマンティックセグメンテーション)を実行可能に学習された物体検出モデル、又は、物体検出部11が検出可能な物体クラス(本実施の形態では、「車両」及び「人物」)を含み、かつ、当該物体クラスより多くの物体クラスを検出可能に学習された物体検出モデルにより実現される。なお、そのような物体検出モデルは、演算規模の増大及びリアルタイム性の欠如の少なくとも一方を問わないようなモデルであってもよい。
【0069】
切出し部33は、判定部32の判定結果に応じて、画像101から対象物体110を含む切出し画像を生成する。具体的には、切出し部33は、判定部32により検出結果が正しくないと判定された対象物体110を画像101から切り出す処理を行う。
【0070】
NN認識実行部34は、切出し画像に対して、誤検出した物体又は未検出の物体の特徴を取得するための認識処理を実行する。NN認識実行部34は、第2物体認識モデル(第2物体認識器とも称し、学習済みモデルであり、例えば、物体検出モデル)を制御する情報処理部である。例えば、第2物体認識モデルは、特徴切分け用ニューラルネットワーク認識器(例えば、フォワード処理を1回行う認識器)であり、NN認識実行部34は、当該認識器に処理を行わせる。本実施の形態では、特徴切分け用ニューラルネットワーク認識器は、物体分類器(以降において、分類器とも記載する)である例について説明するが、他の認識機能をもつニューラルネットワークであってもよい。NN認識実行部34は、切出し画像を物体分類器に入力して得られる分類結果を出力する。分類結果は、例えば、後述する
図7に示されるような確率値と物体の候補クラスとを含む。なお、物体分類器により分類されるクラスは、例えば、2クラス以上である。また、NN認識実行部34が有する第2物体認識モデルは、第1物体認識モデルより認識性能(少なくとも分類性能)が高い。
【0071】
クラス増設部35は、NN認識実行部34が出力した分類結果に基づいて、物体検出部11について新クラスを増設する。具体的には、クラス増設部35は、当該分類結果をグループ化して記憶部36に蓄積する。そして、クラス増設部35は、同じグループ内において対象物体を含む画像が所定数以上蓄積されると、物体検出部11の検出クラスに新しい検出クラスを増設するための、アノテーションされた再学習用訓練データを生成する。再学習用訓練データは、第1物体検出モデルを再学習するための入力データに用いられるデータであってもよいし、再学習された第1物体検出モデルの検出性能を検証するためのテスト用データであってもよい。
【0072】
記憶部36は、クラス増設部35がグループ化した分類結果を記憶する。また、記憶部36は、各処理部が生成した画像、検出結果などを記憶してもよい。また、記憶部36は、通信部31が取得したログ情報100を記憶してもよい。また、記憶部36は、再学習処理装置30が備える各処理部が実行するプログラム等を記憶していてもよい。記憶部36は、例えば、半導体メモリなどの記憶装置により実現される。
【0073】
上記のように、再学習処理装置30は、例えば、物体検出部11が誤検出又は未検出しているか否かを判定する判定部32と、誤検出又は未検出した画像をNN認識実行部34の分類結果に基づいてグループ化し、グループに含まれる画像の数が所定数以上となると、物体検出部11の検出クラスを増設するための処理を実行するクラス増設部35とを備える。
【0074】
[2.再学習処理装置の動作]
次に、再学習処理装置30の動作、及び、生成する画像等について、
図3~
図13を参照しながら説明する。
図3は、本実施の形態に係る再学習処理装置30の動作を示すフローチャートである。
【0075】
図3に示すように、まず、再学習処理装置30は、移動体10からログ情報100を取得する(S10)。具体的には、通信部31は、移動体10からログ情報100を受信する。ログ情報100は、通信部12によりネットワーク20を介して再学習処理装置30に転送された情報であって、少なくとも画像及び検出結果を含む情報である。そして、通信部31は、受信したログ情報100を判定部32に出力する。なお、判定部32には、ログ情報100に含まれる各種データのうち画像及び検出結果のみが出力されてもよい。また、ステップS10は、第1認識結果を取得することの一例である。
【0076】
次に、判定部32は、ログ情報100に含まれる画像101に対するアノテーションデータを取得する(S20)。判定部32は、例えば、ユーザによるアノテーション作業を受け付けることにより、又は、高性能物体検出部の検出結果を取得することにより、アノテーションデータを取得する。アノテーションデータは、リファレンスデータの一例であり、ステップS20は、リファレンスデータを取得することの一例である。また、このように判定部32は、アノテーションデータを取得する第2取得部としても機能する。
【0077】
判定部32は、ログ情報100に含まれる検出結果の正誤判定を行う。判定部32は、例えば、検出結果に誤検出又は未検出があるか否かを判定する(S30)。判定部32は、例えば、ユーザが手動で画像101に対してアノテーションした物体矩形(物体クラスとその物体領域)、又は、高性能物体検出部の検出結果、つまりアノテーションデータと、物体検出部11による検出結果(ログ情報100に含まれる検出結果)とを比較し、正誤判定を行う。なお、ステップS30は、認識対象のクラスに関する差異を判定することの一例である。また、差異は、アノテーションデータと物体検出部11による検出結果との差異を意味する。
【0078】
物体検出における正誤判定の手法は、IoU(Intersection over Union)を使用した評価手法が挙げられる。判定部32による正誤判定の一例を、
図4A及び
図4Bを参照しながら説明する。
図4Aは、本実施の形態に係る誤検出に対する判定情報200の一例である。
図4Bは、本実施の形態に係る未検出に対する判定情報300の一例である。なお、
図4A及び
図4Bに示す「正解」は、ユーザが手動でアノテーションした物体矩形又は高性能物体検出部の検出結果を示す。また、
図4Aは、
図2のログ情報100に対する判定情報200を示す。
【0079】
図4Aに示すように、物体検出部11は、画像101の対象物体110を「車両」と検出すべきであるのに対して、「人物」と検出している。そのため、「人物」におけるIoU値は「0」であり、「車両」におけるIoU値は「0以上」となるので、判定部32は、「誤検出1」であると判定する。つまり、「誤検出1」は、対象物体110を物体検出部11の検出対象の検出クラスであって、かつ、対象物体110に対応する検出クラスと異なる検出クラスであると検出するような誤検出である。
【0080】
また、
図4Bに示すように、物体検出部11は、画像301の対象物体320を「人物」と検出すべきであるのに対して、対象物体320を検出できていない。物体検出部11は、物体領域301aに位置する対象物体310及び物体領域301bに位置する対象物体320のうち、物体領域301aに位置する対象物体310のみを検出している。そのため、「人物」及び「車両」のIoU値はともに「0」となるので、判定部32は、「未検出」であると判定する。
【0081】
なお、「人物」及び「車両」のIoU値がともに「0」であっても、検出結果に「人物」又は「車両」の物体領域(検出矩形)が存在する場合は、背景を検出物体として誤検出しているので、判定部32は、「誤検出2」であると判定する。「誤検出2」は、物体検出部11が「車両」及び「人物」以外の物体、つまり本来は検出しなくてもよい物体を、「車両」又は「人物」と検出するような誤検出である。
【0082】
なお、誤検出又は未検出の判定手法は、IoU値を使用した手法に限定されることはなく、その他の従来技術が用いられてもよい。
【0083】
図3を再び参照して、判定部32は、検出結果に誤検出又は未検出があると判定する(S30でYes)と、誤検出結果又は未検出結果と組となるアノテーションデータ(例えば、「正解」が示す情報)を蓄積する(S40)。具体的には、判定部32は、例えば、ログ情報100に「正解」及び「判定結果」を追加した判定情報を生成し、当該判定情報を蓄積してもよい。そして、判定部32は、生成した判定情報を切出し部33に出力する。なお、判定部32は、生成した判定情報を記憶部36に記憶してもよい。また、ステップS30でYesと判定されることは、差異が所定条件を満たすことの一例である。所定条件は、検出結果に誤検出又は未検出があることを含む。
【0084】
このように、判定情報には、ログ情報100に加えて、誤検出結果又は未検出結果と組となるアノテーションデータが含まれる(
図4A及び
図4B参照)。
【0085】
なお、判定部32は、検出結果に誤検出又は未検出がないと判定する(S30でNo)と、ステップS10に戻り処理を継続する。
【0086】
次に、切出し部33は、判定情報に基づいて、誤検出又は未検出した物体を画像から切り出す。具体的には、切出し部33は、検出結果又はアノテーションデータに示される矩形(物体領域)に基づいて、誤検出又は未検出した物体の画像を切り出し、切出し画像を生成する(S50)。
【0087】
切出し部33は、判定部32の判定結果が「誤検出1」の場合、判定情報200に基づき誤検出した物体画像をその「検出結果」又は「正解」が示す矩形を使用して切り出す。切出し部33は、
図5Aに示す画像101(ログ情報100に含まれる画像101)において、例えば、検出結果の矩形(物体領域101a)をもとに、
図5Bに示す切出し画像120を生成する。また、切出し部33は、判定部32の判定結果が「誤検出2」の場合、判定情報に含まれる「検出結果」が示す矩形をもとに切出し画像を生成する。なお、
図5Aは、誤検出したシーン画像(例えば、画像101)を示す図である。また、
図5Bは、誤検出したシーン画像(例えば、画像101)に対する切出し画像120を示す図である。
【0088】
また、切出し部33は、判定部32の判定結果が「未検出」の場合、判定情報300に基づき未検出した物体画像をその「正解」が示す矩形(アノテーションデータが示す矩形)を使用して切り出す。切出し部33は、
図6Aに示すように、画像301(ログ情報に含まれる画像301)においては、「正解」が示す矩形(物体領域301b)をもとに切出し画像330を生成する。なお、
図6Aは、未検出したシーン画像(例えば、画像301)を示す図である。また、
図6Bは、未検出したシーン画像(例えば、画像301)に対する切出し画像330を示す図である。
【0089】
また、このとき、切出し部33は、物体検出部11が正しく検出した対象物体310においては、当該対象物体310の画像を切り出さない。
【0090】
そして、切出し部33は、生成した切出し画像をNN認識実行部34に出力する。
【0091】
なお、切出し部33は、例えば、判定情報に含まれる矩形を内包する矩形であって、所定のアスペクト比の矩形を使用して画像を切り出してもよい。所定のアスペクト比は、例えば、NN認識実行部34(例えば、特徴切分け用ニューラルネットワーク認識器)に適したアスペクト比の矩形である。
【0092】
なお、再学習処理装置30は、切出し画像120を判定情報200に紐づく構成で管理し、切出し画像330を判定情報300に紐づく構成で管理する。再学習処理装置30は、例えば、切出し画像120と判定情報200とを紐づけて記憶部36に記憶し、切出し画像330と判定情報300とを紐づけて記憶部36に記憶する。
【0093】
図3を再び参照して、NN認識実行部34は、切出し画像に対する認識処理を実行する(S60)。本実施の形態では、NN認識実行部34は、切出し画像に対して特徴切分け用ニューラルネットワーク認識器(第2認識モデルの一例)によるクラス分類処理を実行する。切出し画像をNN認識実行部34に入力することは、第2認識モデルにセンシングデータを入力することの一例である。つまり、第2認識モデルに入力されるセンシングデータは、センシングデータそのものであってもよいし、当該センシングデータの一部であってもよい。
【0094】
図7は、本実施の形態に係るNN認識実行部34による分類結果400を示す図である。
図7に示す分類結果400は、例えば、切出し画像330に対するクラス分類処理(認識処理の一例)の結果を示す。また、分類結果400は、確率値及び候補クラスを含む。NN認識実行部34が分類器を有する場合は、一般的に分類するクラス数(例えば、100クラス以上)だけ確率値が存在し、全ての確率値を合計すると1となる。
【0095】
図7に示すように、切出し画像330における候補クラスは、「人物」である確率値が最も高く、次いで、「樹木」が高い。また、「人物」である確率値は、「0.62」であり、「樹木」である確率値は、「0.12」である。確率値は、例えば、事象の確率又は観察データのもとでの仮説の確率である尤度などの出力値を示す。なお、分類結果400は、第2認識結果の一例である。また、分類結果400は、NN認識実行部34における検出対象のクラスの1つ以上の候補(「人物」、「樹木」など)を含む。
【0096】
NN認識実行部34は、分類結果400をクラス増設部35に出力する。
【0097】
図3を再び参照して、クラス増設部35は、分類結果400に基づいて、物体検出部11に対する検出クラスの増設処理を実行する(S70)。言い換えると、ステップS70では、物体検出部11の物体検出モデルに対する追加クラスを作成する処理を実行する。ステップS70は、第1認識モデルに対する追加クラスを作成することの一例である。クラス増設部35の処理について、
図8を参照しながら説明する。
図8は、クラス増設部35による検出クラスの増設処理を示すフローチャートである。
【0098】
図8に示すように、クラス増設部35は、分類結果400をグループ化して蓄積する(S71)。クラス増設部35は、例えば、分類結果400をグループ化して記憶部36に記憶する。クラス増設部35は、分類結果400を用いて、誤検出又は未検出した物体の特徴が類似するものをグループ化して記憶部36に記憶する。
【0099】
クラス増設部35は、例えば、複数の分類結果400のうち候補リストのトップ1、つまり確率値が最も高い物体クラス(
図7の例では、「人物」)が一致する分類結果を同一のグループとしてグループ化してもよい。また、クラス増設部35は、例えば、複数の分類結果400のうち候補クラスが一致又は類似する分類結果を同一のグループとしてグループ化してもよい。クラス増設部35は、例えば、複数の分類結果400のうち確率値が所定値以上(例えば、0.3以上)の候補クラスが一致又は類似する分類結果400を同一のグループとしてグループ化してもよい。
【0100】
このように、クラス増設部35は、複数の分類結果400の間で、1つ以上の候補クラスの少なくとも一部が同一又は類似である分類結果400を同一のグループとしてグループ化してもよい。
【0101】
なお、候補クラスが類似とは、確率値が所定値以上の候補クラスのうち所定割合(例えば、6割)又は所定数(例えば、3個)の候補クラスが一致していることであってもよい。クラス増設部35は、例えば、2つの分類結果400において確率値が所定値以上の候補クラスが5個であった場合、当該5個の候補クラスのうち3個の候補クラスが一致しているときに、候補クラスが類似していると判定してもよい。
【0102】
また、候補クラスが類似とは、事前に物体クラスのカテゴリ構造が定められており、候補クラスの少なくとも一部において、カテゴリが類似した物体クラスを含んでいることであってもよい。
図9は、物体検出のカテゴリ構造の一例を示す図である。
図9では、最上位カテゴリが「車両」である場合のカテゴリ構造の一例を示す。なお、
図9に示すカテゴリ構造は、例えば、予め記憶部36に記憶されている。
【0103】
図9に示すように、「車両」の下位カテゴリには、「乗用車」、「トラック」、及び、「バス」が含まれる。言い換えると、「乗用車」、「トラック」、及び、「バス」の上位カテゴリは、共通(「車両」)である。このような「乗用車」、「トラック」、及び、「バス」を同一カテゴリとすると、クラス増設部35は、例えば、2つの分類結果400に含まれる候補クラスが同一カテゴリに含まれる物体クラスを含む場合、当該2つの分類結果400における候補クラスが類似していると判定してもよい。また、「乗用車」の下位カテゴリである「セダン」、及び、「SUV」においても、同様である。
【0104】
また、クラス増設部35は、例えば、複数の分類結果400のうち候補クラスの順序が一致又は類似する分類結果400を同一のグループとしてグループ化してもよい。クラス増設部35は、例えば、複数の分類結果400のうち確率値が所定値以上(例えば、0.3以上)の候補クラスの順序が一致又は類似する分類結果400を同一のグループとしてグループ化してもよい。
【0105】
なお、候補クラスの順序が類似とは、確率値が所定値以上の候補クラスのうち所定割合(例えば、6割)又は所定数(例えば、3個)の候補クラスの順序が一致していることであってもよい。クラス増設部35は、例えば、2つの分類結果400において確率値が所定値以上の候補クラスが5個であった場合、当該5個の候補クラスのうち3個の候補クラスの順序が一致しているときに、候補クラスが類似していると判定してもよい。なお、候補クラスの順序とは、
図7に示すように確率値が高い順に候補リストを配置したときの順序である。
【0106】
また、クラス増設部35は、例えば、複数の分類結果400のうち確率分布(例えば、信頼度分布)が同一又は類似している分類結果400を同一のグループとしてグループ化してもよい。具体的には、クラス増設部35は、複数の分類結果400のうち候補クラスの順序及び確率分布が類似している分類結果400を同一のグループとしてグループ化してもよい。クラス増設部35は、例えば、複数の分類結果400のうち確率値が所定値以上(例えば、0.3以上)の候補クラスの順序及び確率分布(例えば、尤度分布)が類似している分類結果400を同一のグループとしてグループ化してもよい。
【0107】
このように、クラス増設部35は、複数の分類結果400の間で、1つ以上の候補クラスの確率分布が同一又は類似である分類結果400を同一のグループとしてグループ化してもよい。
【0108】
また、クラス増設部35は、上記に示すグループ化の基準である「類似」の度数を動的に変更して、同じグループに所属する分類結果の最大化を図ってもよい。また、クラス増設部35は、クラスタ分析アルゴリズムによりグループ化を自動的に変更してもかまわない。なお、グループ化の指標として、ニューラルネットワークの認識時における任意の層の反応結果(例えば、中間層の信号結果であり、中間生成物の一例)をグループ化の指標としてもよい。任意の層は、例えば、検出対象(例えば、「人物」及び「車両」)の形状に反応する層であってもよいし、その他の特徴量に反応する層であってもよい。なお、反応結果は、第2認識結果の一例である。
【0109】
また,グループ化の指標として確率値が類似の範囲内で一定値以上離れているペアが追加されてもよい。確率値が類似する画像は見た目が類似する可能性があるが、一定値以上離れることで見た目のバリエーションが増加したグループ化が可能になり、汎化性能が向上する。
【0110】
また、確率値を一定の値で分割したヒストグラムを構築し,そのヒストグラムを誤検出の発生確率とみなしてグループ化をしてもよい。例えば、確率値0~0.25、0.25~0.5、0.5~0.75、0.75~1の4つに分けたヒストグラムを作成する。例えば、それぞれの度数が5、10、15、10だったとする。この場合,ヒストグラムの各ビンから、1:2:3:2の割合でデータをサンプリングしてグループ化することで、実際の誤検出の分布に従ったグループ化が可能になる。
【0111】
また、出現数の少ない確率値のデータを優先的に学習するように、出現数の少ない確率値のデータを一つのグループとしてもよい。このときデータ数を増加させるためにオーグメンテーションなどを行っても良い。これにより、レアシーンなどに特化したグループ化が可能になる。
【0112】
クラス増設部35は、分類結果400を当該分類結果400に対応する再学習用訓練データであって、当該分類結果400に対応する切出し画像を含む画像(例えば、ログ情報100に含まれるシーン画像)を含む再学習用訓練データと紐づけてグループ化してもよい。つまり、グループには、画像が蓄積される。再学習用訓練データは、例えば、クラス増設部35によって生成される。
【0113】
ここで、再学習用訓練データについて、
図10A及び
図10Bを参照しながら説明する。
図10Aは、誤検出したシーン画像(例えば、画像101)に対する再学習用訓練データ500を示す図である。
図10Bは、未検出したシーン画像(例えば、画像301)に対する再学習用訓練データ600を示す図である。
【0114】
図10Aに示す再学習用訓練データ500は、
図4Aに示す判定情報200に対応するデータである。
図10Aに示すように、再学習用訓練データ500は、シーン画像(例えば、画像101)及びアノテーションデータを含む。当該アノテーションデータは、
図4Aに示す「正解」に対応する情報である。
【0115】
また、
図10Bに示す再学習用訓練データ600は、
図4Bに示す判定情報300に対応するデータである。
図10Bに示すように、再学習用訓練データ600は、シーン画像(例えば、画像301)及びアノテーションデータを含む。当該アノテーションデータは、
図4Bに示す「正解」に対応する情報である。
【0116】
図8を再び参照して、次に、クラス増設部35は、同一のグループ内の蓄積数が所定数を超えたか否かを判定する(S72)。クラス増設部35は、同一グループ内の分類結果400の蓄積数、つまり画像の蓄積数が所定数を超えたか否かを判定する。所定数は、例えば、1000枚であるがこれに限定されない。クラス増設部35は、同じグループの画像の蓄積数が所定数を超えた場合(S72でYes)、新たな検出クラスを増設した場合の再学習用訓練データを生成する(S73)。具体的には、クラス増設部35は、アノテーションされた再学習用訓練データを生成する。
【0117】
ステップS73で生成される再学習用訓練データについて、
図11A及び
図11Bを参照しながら説明する。
図11Aは、アノテーションデータが変更された再学習用訓練データの一例を示す図である。
図11Bは、アノテーションデータが変更された再学習用訓練データの他の一例を示す図である。
図11Aに示す再学習用訓練データ700は、
図10Aの再学習用訓練データ500に対応するデータである。
図11Bに示す再学習用訓練データ800は、
図10Bの再学習用訓練データ600に対応するデータである。
【0118】
図11A及び
図11Bに示すように、
図10A及び
図10Bに示す再学習用訓練データからアノテーションデータが変更される。具体的には、再学習用訓練データ700のアノテーションデータは、「車両」から「車両2」に変更される。また、再学習用訓練データ800のアノテーションデータは、「人物」から「人物2」に変更される。変更されたアノテーションデータは、増設する検出クラス(追加クラス)を示す。
【0119】
なお、増設される検出クラスは機械的に命名される。本実施の形態では「車両2」及び「人物2」に命名される。増設される検出クラスが分類結果400の候補クラス順及び確率分布(例えば、尤度分布)が同一又は類似しているという基準でグループ化された新たな検出クラスである場合、人間的な感覚では「車両2」は、「人物に似た車両」となり、「人物2」は「検出しにくい人物」となる可能性が大きい。また、この「車両2」及び「人物2」という検出クラスを元々存在する「車両」及び「人物」と同等に扱うか、異なる扱いにするかは、その後の物体検出部11を搭載した移動体10の制動処理に委ねられる。
【0120】
図8を再び参照して、次に、クラス増設部35は、物体検出部11に対して新たな検出クラスを増設する処理を行う(S74)。クラス増設部35は、再学習処理装置30が物体検出部11の第1物体検出モデルと同じ物体検出モデル(以降において、第3物体検出モデルとも記載する)を有している場合、当該第3物体検出モデルに新たな検出クラスを増設する処理を行ってもよいし、物体検出部11の第1物体検出モデルに新たな検出クラスを増設する処理を行ってもよい。以下では、クラス増設部35が第3物体検出モデルに新たな検出クラスを増設する例について説明する。
【0121】
クラス増設部35は、例えば、
図12に示すように、第3物体検出モデルに対して、ニューラルネットワークを修正して(ニューラルネットワークの構成を変更して)検出クラスを増やしてもよい。
図12は、検出クラスの増設の一例を示す図である。なお、
図12では、もともと4つの検出クラスがある場合について説明する。
【0122】
図12の(a)は、検出クラスを増設する前の中間層及び出力層を示す。
図12の(b)は、検出クラスを増設した後の中間層及び出力層を示す。
図12の(a)及び(b)に示すように、クラス増設部35は、もともと4つであった検出クラスを、1つ増設して5つとする。
【0123】
また、クラス増設部35は、例えば、
図13に示すように、第3物体検出モデルに対して、ニューラルネットワークに予備の検出クラスを事前に用意しておき、次の再学習処理において、第3物体検出モデルがその検出クラスを使用可能とすることで検出クラスを増設してもよい。
図13は、検出クラスの増設の他の一例を示す図である。なお、
図13では、もともと5つの検出クラスがあるが、4つの検出クラスのみを使用している場合について説明する。
【0124】
図13の(a)は、検出クラスを増設する前の中間層及び出力層を示す。
図13の(b)は、検出クラスを増設した後の中間層及び出力層を示す。
図13の(a)及び
図13の(b)に示すように、物体検出モデルは、もともと5つの検出クラスを有しているが、そのうちの1つ検出クラス(
図13の(a)に示す未使用クラス)が無効であるように学習されている。そして、
図13の(b)に示すように、未使用クラスを有効とする(使用可能とする)ことで、検出クラスを増やす。言い換えると、
図13の例では、未使用クラスを有効とするように再学習が行われることで、検出クラスを増やす。これも、検出クラスを増設することに含まれる。
【0125】
検出クラスの増設は、例えば、物体検出モデルのパラメータ(各層に対する設定項目)を変更することを含んでいてもよい。検出クラスの増設は、例えば、アンカーBOXを未検出クラスに適用される検出クラスに応じたアンカーBOXに変更することであってもよい。具体的には、検出クラスの増設は、検出したい矩形に対応する(反応する)層の設定項目を、未検出クラスに適用される検出クラスに応じて変更することを含んでいてもよい。
【0126】
図13の(a)のように、ニューラルネットワークとしては予め未使用クラスを用意しておくことで、自動車など、安全上の基準により、後からニューラルネットワークを修正して検出クラスを追加することができない場合であっても、検出クラスを増設することができる。また、
図13の(a)のように、ニューラルネットワークとしては予め未使用クラスを用意しておくことで、ニューラルネットワークの構成を変更することなく(ニューラルネットワークの規模を変更することなく)、検出クラスを増設することができる。
【0127】
上記のように、増設された検出クラスは、例えば、「車両2」又は「人物2」が割り当てられる。なお、検出クラスを増設することで中間層のネットワーク構成が変更される場合があるが、
図12及び
図13では、当該変更を省略している。
【0128】
図11Aの例(誤検出1の例)では、検出クラスは、「車両」、「人物」に、さらに、「車両2」が増設される。
図11Bの例(未検出の例)では、検出クラスは、「車両」、「人物」に、さらに、「人物2」が増設される。また、検出クラスは、例えば、本来検出しなくてもよい対象物体を検出していた(例えば、「車両」及び「人物」以外を検出している場合であり、誤検出2に相当)場合、さらに、「検出対象ではない物体」が増設される。
【0129】
このように、グループ化された複数の分類結果400の傾向に基づいて、増設される検出クラスが作成される。例えば、1つ以上の候補クラスの少なくとも一部、1つ以上の候補クラスの確率分布、又は、中間生成物に基づいて、増設される検出クラスが作成される。
【0130】
なお、クラス増設部35は、同じグループの画像の蓄積数が所定数以下である場合(S72でNo)、ステップS71に戻りステップS71以降の処理を継続する。
【0131】
図3を再び参照して、クラス増設部35は、ステップS73で生成した再学習用訓練データであって、新しい検出クラスを増設したときの再学習処理に用いる再学習用訓練データを出力する(S80)。クラス増設部35は、所定数以上の再学習用訓練データ(訓練データセット)を出力する。本実施の形態では、クラス増設部35は、再学習処理装置30が備える第3物体検出モデル(ステップS74において検出クラスが増設された第3物体検出モデル)に再学習用訓練データを出力する。すなわち、クラス増設部35は、当該第3物体検出モデルに再学習用訓練データを入力することで、再学習(追加学習)処理を実行する(S90)。つまり、ニューラルネットワークの再学習が実行される。なお、ステップS80は、増設した検出クラス(追加クラスの一例)についての訓練データを出力することの一例である。
【0132】
これにより、第3物体検出モデルは、例えば、
図11Aに示す再学習用訓練データ700の例では、本来「車両」と検出しなければならない対象物体110を、増設された検出クラスである「車両2」と検出することができる。言い換えると、再学習処理された第3物体検出モデルは、対象物体110を「人物」と誤検出しにくくなる。つまり、第3物体検出モデルの検出精度を向上させることができる。
【0133】
また、第3物体検出モデルは、例えば、
図11Bに示す再学習用訓練データ800の例では、本来検出しなければならない対象物体320を、増設された検出クラスである「人物2」と検出することができる。言い換えると、再学習処理された第3物体検出モデルは、対象物体320を未検出しにくくなる。つまり、第3物体検出モデルの検出精度を向上させることができる。
【0134】
また、物体検出部11は、例えば、本来検出しなくてもよい対象物体を検出していた場合、当該対象物体を「検出対象ではない物体」と検出することができる。言い換えると、再学習処理された第3物体検出モデルは、本来検出しない物体を学習することで、当該物体が「車両」又は「人物」と誤検出されることを抑制することができる。
【0135】
次に、クラス増設部35は、再学習された物体検出モデル(例えば、第3物体検出モデル)の検出能力を検証するための評価処理を実行する(S100)。クラス増設部35は、再学習された物体検出モデルの検出能力を検証するためのテスト用データを用いて、評価処理を実行する。クラス増設部35は、再学習前の物体検出モデル(検出クラス増設前の物体検出モデル)における検出精度に対して、再学習された物体検出モデルの検出精度が向上している場合に、当該再学習された物体検出モデルを適用すると判定してもよい。つまり、クラス増設部35は、誤検出又は未検出が抑制された物体検出モデルを適用すると判定してもよい。
【0136】
また、クラス増設部35は、例えば、
図4Aのように「車両」を「人物」と検出(誤検出1)していた物体検出モデルに対して、「人物」を「車両」と検出していないかの評価を実行してもよい。つまり、クラス増設部35は、再学習された物体検出モデルが「人物」を誤って「車両」と検出しやすくなっていないかの評価を実行してもよい。クラス増設部35は、例えば、「車両」を「人物」と検出していた物体検出モデルに対して、「人物」を「車両」と検出しない場合、再学習された物体検出モデルの検出精度が向上しており、当該再学習された物体検出モデルを適用すると判定してもよい。
【0137】
再学習処理装置30は、例えば、ステップS90で再学習処理が実行された第3物体検出モデルに関する情報を、移動体10に送信してもよい。言い換えると、移動体10は、再学習処理装置30から物体検出部11の物体検出モデルを更新するための更新プログラムを取得してもよい。また、再学習処理装置30は、ステップS74で生成した検出クラスを増設したときの訓練データセットを他のサーバ装置に出力し、当該他のサーバ装置がステップS74、S90及びS100の処理を実行してもよい。
【0138】
また、ステップS74における処理は、移動体10の物体検出部11の物体検出モデルにおいて検出クラスを増やす処理であってもよい。つまり、クラス増設部35は、移動体10の物体検出部11の物体検出モデルにおいて、検出クラスを増設する処理を実行してもよい。そして、再学習処理装置30は、ステップS73で生成した検出クラスを増設したときの再学習処理のための訓練データセットを移動体10に出力し(S80)、当該移動体10が再学習処理及び評価処理を実行してもよい(S90及びS100)。
【0139】
(その他の実施の形態)
以上、本開示について実施の形態に基づいて説明したが、本開示は、上記実施の形態に限定されるものではない。
【0140】
例えば、上記実施の形態では、移動体は、自動車(自動運転車)である例について説明したが、これに限定されない。移動体は、例えば、飛行体(例えば、ドローンなど)又は船舶であってもよいし、周囲を撮像した画像に基づいて自律的に移動するロボット(例えば、自走式掃除機など)であってもよい。また、物体検出部(物体検出装置)は移動体に備えられることに限定されない。本開示は、物体検出部を備えるあらゆる物体に適用可能である。例えば、
図14に示すように、当該物体は、スマートフォン又はタブレットなどの携帯端末10aであってもよい。この場合、情報処理システム1aは、携帯端末10aと再学習処理装置30とを備える。なお、携帯端末10aが備える物体検出部11a及び通信部12aは実施の形態に係る物体検出部11及び通信部12と同様であり、説明を省略する。また、当該物体は、物体検出部を備えるIoT(Internet of Things)機器などであってもよい。このように、本開示に係る再学習処理装置は、自動運転車の分野だけではなく、ロボット又はドローン、携帯端末、IoT機器などの異なる製品分野でも適用可能である。
【0141】
また、上記実施の形態では、NN認識実行部は、ステップS60において、切出し画像に対する認識処理を実行する例について説明したが、これに限定されない。NN認識実行部は、シーン画像(切出しを行う前の画像)を入力とし、当該シーン画像に対する認識処理を実行してもよい。NN認識実行部は、例えば、シーン画像及び当該シーン画像における認識処理を実行する所定の領域(例えば、矩形領域)に関する情報を入力とし、当該シーン画像における所定の領域のみに対して認識処理を実行してもよい。この場合、
図3に示すステップS50の処理は、実行されなくてもよい。
【0142】
また、上記実施の形態では、再学習処理装置は、移動体から物体検出部の検出結果を含むログ情報を取得する例について説明したが、これに限定されない。再学習処理装置は、移動体の物体検出部と同じ物体検出モデルを有する場合、移動体から画像及び検出結果のうち画像のみを取得し、取得した画像を自装置が備える物体検出モデルに入力することで得られる出力(検出結果)を、移動体の物体検出部における検出結果として取得してもよい。
【0143】
また、上記実施の形態では、再学習処理装置は、
図3に示すステップS30でYesであった場合、認識処理(S60)及びグループ化(S71)する処理を実行する例について説明したが、これに限定されない。再学習処理装置は、認識処理及びグループ化する処理を実行しなくてもよい。再学習処理装置は、ステップS30でYesである場合、つまり差異がある場合、当該差異に基づいて増設する検出クラス(追加クラスの一例)を作成してもよい。再学習処理装置は、例えば、当該差異から直接増設する検出クラスを作成してもよい。
図4Aを例に説明すると、再学習処理装置は、「検出結果」と「正解」の差異に基づいて、増設する検出クラスとして「車両2」(人物に似た車両)を作成してもよい。
【0144】
また、上記実施の形態では、ステップS74において1つの検出クラスを増設する例について説明したが、2以上の検出クラスを増設してもよい。
【0145】
また、上記実施の形態に係るクラス増設部は、ログ情報に含まれるシーン画像に所定の加工を施して、再学習用訓練データを生成してもよい。クラス増設部は、例えば、再学習用訓練データを増やす(水増しする)処理を実行してもよい。クラス増設部は、切出し部が切り出した切出し画像における物体と物体クラス(例えば、「車両」)が同じ物体が写る他の画像に、当該切出し画像を重畳又は置換することにより、再学習用訓練データを増やしてもよい。これにより、誤検知又は未検知した物体(切出し画像における物体)そのものに基づいて、再学習用訓練データを増やすことができるので、当該物体に対して有効な再学習用訓練データを容易に生成することができる。このような重畳又は置換により生成された画像は、センシングデータの加工データの一例である。なお、加工の方法は、上記に限定されない。
【0146】
また、上記実施の形態において説明された複数の処理の順序は一例である。複数の処理の順序は、変更されてもよいし、複数の処理は、並行して実行されてもよい。また、複数の処理の一部は、実行されなくてもよい。
【0147】
また、実施の形態で説明した各構成要素は、ソフトウェアとして実現されても良いし、典型的には、集積回路であるLSIとして実現されてもよい。これらは、個別に1チップ化されてもよいし、一部または全てを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)又は、LSI内部の回路セルの接続若しくは設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。更には、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて構成要素の集積化を行ってもよい。
【0148】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを1つの機能ブロックとして実現したり、1つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【0149】
また、情報処理システムが備える再学習処理装置は、単一の装置として実現されてもよいし、複数の装置によって実現されてもよい。例えば、再学習処理装置の各処理部は、2以上のサーバ装置で実現されてもよい。情報処理システムが複数のサーバ装置によって実現される場合、情報処理システムが備える構成要素は、複数のサーバ装置にどのように振り分けられてもよい。また、複数のサーバ装置間の通信方法は、特に限定されない。
【0150】
さらに、本開示の技術は上記プログラムであってもよいし、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。例えば、上記プログラム及び上記プログラムからなるデジタル信号は、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものであってもよい。また、上記プログラム及び上記プログラムからなるデジタル信号は、記録媒体に記録して移送されることにより、又はネットワーク等を経由して移送されることにより、独立した他のコンピュータシステムにより実行されてもよい。
【産業上の利用可能性】
【0151】
本開示は、学習済みモデルの検出クラスを増設する場合における、再学習するための訓練用データを生成する情報処理方法等に適用可能である。
【符号の説明】
【0152】
1、1a 情報処理システム
10 移動体
10a 携帯端末
11、11a 物体検出部
12、12a 通信部
20 ネットワーク
30 再学習処理装置
31 通信部(第1取得部)
32 判定部
33 切出し部
34 NN認識実行部
35 クラス増設部
36 記憶部
100 ログ情報
101、301 画像
101a、301a、301b 物体領域
110、310、320 対象物体
120、330 切出し画像
200、300 判定情報
400 分類結果
500、600、700、800 再学習用訓練データ