(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024118659
(43)【公開日】2024-09-02
(54)【発明の名称】検知装置、検知方法および検知プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20240826BHJP
G06N 3/08 20230101ALI20240826BHJP
G06N 3/045 20230101ALI20240826BHJP
【FI】
G06T7/00 350C
G06N3/08
G06N3/045
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023025056
(22)【出願日】2023-02-21
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(71)【出願人】
【識別番号】899000068
【氏名又は名称】学校法人早稲田大学
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】史 旭
(72)【発明者】
【氏名】榎本 昇平
(72)【発明者】
【氏名】坂本 啓
(72)【発明者】
【氏名】江田 毅晴
(72)【発明者】
【氏名】森永 一路
(72)【発明者】
【氏名】渡辺 裕
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096DA01
5L096FA16
5L096GA51
5L096HA11
5L096JA11
5L096KA04
5L096MA07
(57)【要約】
【課題】2層推論による検知において、1層目のモデルをエッジデバイスに実装する際にも、メモリバンクを活用して検知精度を向上させる。
【解決手段】取得部15aが、処理対象の所定期間のデータを取得する。抽出部15bは、取得されたデータを1層目モデル14aに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出し、抽出したクラスごとの特徴量を、補完用特徴量としてメモリバンク14cに記憶させる。
【選択図】
図3
【特許請求の範囲】
【請求項1】
処理対象の所定期間のデータを取得する取得部と、
取得された前記データをモデルに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出して記憶部に記憶させる抽出部と、
を有することを特徴とする検知装置。
【請求項2】
前記モデルは、軽量な物体検出DNN(Deep Neural Network)であることを特徴とする請求項1に記載の検知装置。
【請求項3】
抽出された前記特徴量を用いて前記モデルを学習する学習部を、さらに有することを特徴とする請求項1に記載の検知装置。
【請求項4】
検知装置が実行する検知方法であって、
前記検知装置は、記憶部を有し、
処理対象の所定期間のデータを取得する取得工程と、
取得された前記データをモデルに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出して前記記憶部に記憶させる抽出工程と、
を含んだことを特徴とする検知方法。
【請求項5】
処理対象の所定期間のデータを取得する取得ステップと、
取得された前記データをモデルに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出して記憶部に記憶させる抽出ステップと、
をコンピュータに実行させるための検知プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検知装置、検知方法および検知プログラムに関する。
【背景技術】
【0002】
従来、物体や人物の検知において、2層推論技術が知られている。2層推論技術は、1層目のモデルによる検知結果に基づいて検知対象のエリア(ROI,Region Of Interesting)を絞り、ROI内の状況に応じて、精度の異なる2層目のモデルのうち、適切な精度クラスのモデルを選定して詳細な分析を行う。
【0003】
また、メモリバンクを活用して検知精度を向上させる技術が開示されている(非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Sara Beery, Guanhang Wu, Vivek Rathod, Ronny Votel, Jonathan Huang, “Context R-CNN: Long Term Temporal Context for Per-Camera Object Detection”, arXiv:1912.03538v3, 2020年4月22日
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術によれば、2層推論による検知において、1層目のモデルをエッジデバイスに実装する際に、メモリバンクを活用して検知精度を向上させる技術を導入することが困難な場合がある。例えば、従来、メモリバンクを活用して検知精度を向上させるためには、計算リソースやメモリに余裕のあるクラウド側で処理を行うことが想定されているため、採用されているベースNW(NetWork)が重い。また、検知精度を保証するための高品質な補完用特徴量をメモリバンクに予め格納しておくため、メモリバンクが肥大化する。そのため、一般にメモリサイズの小さいエッジデバイスに適用することが困難である。
【0006】
本発明は、上記に鑑みてなされたものであって、2層推論による検知において、1層目のモデルをエッジデバイスに実装する際にも、メモリバンクを活用して検知精度を向上可能とすることを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決し、目的を達成するために、本発明に係る検知装置は、処理対象の所定期間のデータを取得する取得部と、取得された前記データをモデルに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出して記憶部に記憶させる抽出部と、を有することを特徴とする。
【発明の効果】
【0008】
本発明によれば、2層推論による検知において、1層目のモデルをエッジデバイスに実装する際にも、メモリバンクを活用して検知精度を向上させることが可能となる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本実施形態の検知装置の概要を説明するための図である。
【
図2】
図2は、本実施形態の検知装置の概要を説明するための図である。
【
図3】
図3は、本実施形態の検知装置の概略構成を例示する模式図である。
【
図4】
図4は、検知処理手順を示すフローチャートである。
【
図5】
図5は、検知処理手順を示すフローチャートである。
【
図7】
図7は、検知プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【0011】
[検知装置の概要]
図1および
図2は、本実施形態の検知装置の概要を説明するための図である。まず、2層推論による検知では、1層目モデルで分析対象の人物や物体のエリア(ROI,Region Of Interesting)を絞り込む。次に、各ROI内のタスクの難易度の状況に応じて、2層目モデルを選定し、選定した2層目モデルで詳細な分析を行う。例えば、精度が高く計算量の多いモデル、精度が中程度で計算量が中程度のモデル、精度が低く計算量が小さいモデルの3つの中から、ROI内の推論の難易度に応じて2層目モデルが選定される。
【0012】
このように、1層目では、
図1に例示するように、モデルによる検知結果((a)参照)に基づいて、BBOX(Bounding BOX)からROIを生成し((b)参照)、各ROI内の推論の難易度を判定する。この1層目モデルでは、必ずしも正確なBBOXを生成する必要はないが、人物や物体の大まかな位置および数を正確に把握することが望ましい。また、1層目は計算リソースやメモリに制限があるエッジデバイスへの実装も想定されるため、1層目モデルは軽量(低レイテンシ)かつ高精度であることが望ましい。
【0013】
そこで、本実施形態の検知装置は、エッジデバイスである場合を想定し、軽量な物体検出DNN(Deep Neural Network)をベースNWとする。例えば、1層目モデルのベースNWを、Faster RCNN(Region based Convolutional Neural Networks)-MobileNetV3、Faster RCNN-VGG16、Faster RCNN-Resnet18等とする。
【0014】
また、検知装置では、1層目モデルにメモリバンクを活用した検知精度の向上技術を適用する。ここで、メモリバンクを活用した検知精度の向上技術では、
図2に例示するように、本番運用に先立ち、一定期間の本番用のデータから高品質な特徴量を補完用特徴量として取得して、メモリバンク(Memory Bank)に保存しておく。この補完用特徴量を用いてAttention Blockの学習を行うことにより、検知精度を向上させる。
【0015】
この場合に、メモリバンクに保存する補完用特徴量は、数が多いほど検知精度の向上に効果的である。一方、物体検知のクラスのそれぞれに物体が均等に映っていない場合や、クラス数が多い場合には、検知精度を保証するためには、クラスごとに高品質な補完用特徴量が必要であり、メモリバンクが肥大化してしまう。また、メモリバンクに保存する補完用特徴量の数が多いと、Attention Blockでの計算時間が増加するため、推論時間が増加する。
【0016】
そこで、検知装置は、一定期間内の総フレームにおいて、クラスごとに、所定の閾値以上の特徴量を対象に、確信度がTOP Kの特徴量を補完用特徴量として抽出し、メモリバンクに保存する。これにより、検知精度を保証しつつ、メモリバンクのメモリ量を削減し、推論時間の増加を抑止することが可能となる。
【0017】
[検知装置の構成]
図3は、本実施形態の検知装置の概略構成を例示する模式図である。
図3に例示するように、本実施形態の検知装置10は、パソコン等の汎用コンピュータで実現され、入力部11、出力部12、通信制御部13、記憶部14、および制御部15を備える。なお、検知装置10は、エッジデバイスに実装されてもよい。
【0018】
入力部11は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部15に対して処理開始などの各種指示情報を入力する。出力部12は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置等によって実現される。例えば、出力部12には、後述する検知処理の結果が表示される。
【0019】
通信制御部13は、NIC(Network Interface Card)等で実現され、LAN(Local Area Network)やインターネットなどの電気通信回線を介した外部の装置と制御部15との通信を制御する。例えば、通信制御部13は、後述する検知処理の処理対象のデータや各種情報を管理する管理装置等と制御部15との通信を制御する。
【0020】
記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部14には、検知装置10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが予め記憶され、あるいは処理の都度一時的に記憶される。なお、記憶部14は、通信制御部13を介して制御部15と通信する構成でもよい。
【0021】
本実施形態において、記憶部14は、後述する検知処理に用いられる、1層目モデル14a、2層目モデル14bを記憶する。また、記憶部14は、後述する検知処理に用いられるメモリバンク14cとして機能する。
【0022】
ここで、1層目モデル14aは、物体の存在するエリア(ROI)の検知に用いるモデルである。具体的には、1層目モデル14aは、軽量な物体検出DNNである。例えば、1層目モデル14aは、Faster RCNN-MobileNetV3、Faster RCNN-VGG16、Faster RCNN-Resnet18等をベースNWとする。
【0023】
また、2層目モデル14bは、エリア内の状況に応じた物体の分析に用いる、状況のクラスごとのモデルである。具体的には、2層目モデル14bは、1層目モデル14aが絞り込んだ分析対象の人物や物体のエリア(ROI)内のタスクの難易度の状況に対応して設定される。例えば、2層目モデル14bは、精度が高く計算量の多いモデル、精度が中程度で計算量が中程度のモデル、精度が低く計算量が小さいモデルというように、タスクの難易度に対応して設定される。
【0024】
制御部15は、CPU(Central Processing Unit)やNP(Network Processor)やFPGA(Field Programmable Gate Array)等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部15は、
図3に例示するように、取得部15a、抽出部15b、および学習部15cとして機能して、検知処理を実行する。
【0025】
なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。また、制御部15は、その他の機能部を備えてもよい。
【0026】
取得部15aは、処理対象の所定期間のデータを取得する。たとえば、取得部15aは、入力部11あるいは通信制御部13を介して、検知処理の処理対象のデータを管理する管理装置等から、処理対象の所定期間のデータを取得する。取得部15aは、取得したデータを記憶部14に記憶させてもよい。
【0027】
抽出部15bは、取得されたデータを1層目モデル14aに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出する。また、抽出部15bは、抽出したクラスごとの特徴量を、補完用特徴量としてメモリバンク14cに記憶させる。
【0028】
具体的には、抽出部15bは、処理対象の所定期間内のデータの総フレームについて、人、車、バイクというような物体検知のクラスごとに、補完用特徴量を抽出する。
【0029】
抽出部15bは、補完用特徴量として、1層目モデル14aの出力の確信度が所定の閾値以上である品質の高い特徴量を抽出する。例えば、抽出部15bは、処理対象の本番用のデータを1層目モデル14aに入力した場合に出力される所定の閾値以上の特徴量を対象に、クラスごとに、確信度がTOP Kの特徴量を補完用特徴量として抽出する。抽出部15bは、抽出したクラスごとの補完用特徴量を、メモリバンク14cに記憶させる。これにより、効果的に補完用特徴量を抽出できるので、メモリバンク14cのメモリ量の増加を抑え、推論時間の増加を抑えて1層目モデル14aの精度を向上させることが可能となる。
【0030】
学習部15cは、抽出された補完用特徴量を用いて1層目モデル14aを学習する。具体的には、学習部15cは、メモリバンク14cのクラスごとの補完用特徴量を用いて、
図2に例示したAttention Blockの学習を行う。これにより、1層目モデル14aの精度が向上する。
【0031】
[検知処理]
次に、
図4および
図5を参照して、本実施形態に係る検知装置10による検知処理について説明する。
図4および
図5は、検知処理手順を示すフローチャートである。本実施形態の検知処理は、補完処理および学習処理を含む。
【0032】
まず、
図4に例示する補完処理のフローチャートは、例えば、ユーザが開始を指示する操作入力を行ったタイミングで開始される。
【0033】
最初に、取得部15aが、処理対象の所定期間のデータを取得する(ステップS1)。
【0034】
次に、抽出部15bが、取得されたデータを1層目モデル14aに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出する(ステップS2)。具体的には、抽出部15bは、処理対象の所定期間内のデータの総フレームについて、想定される物体検知のクラスごとに、補完用特徴量を抽出する。
【0035】
抽出部15bは、補完用特徴量として、1層目モデル14aの出力の確信度が所定の閾値以上である品質の高い特徴量を抽出する。例えば、抽出部15bは、処理対象の本番用のデータを1層目モデル14aに入力した場合に出力される所定の閾値以上の特徴量を対象に、クラスごとに、確信度がTOP Kの特徴量を補完用特徴量として抽出する。
【0036】
また、抽出部15bは、抽出したクラスごとの補完用特徴量を、メモリバンク14cに記憶させる(ステップS3)。これにより、一連の補完処理が終了する。
【0037】
次に、
図5に例示する学習処理のフローチャートは、例えば、ユーザが開始を指示する操作入力を行ったタイミングで開始される。そして、学習部15cが、抽出されたクラスごとの補完用特徴量を用いて1層目モデル14aを学習する(ステップS11)。これにより、一連の学習処理が終了する。
【0038】
[効果]
以上、説明したように、本実施形態の検知装置10において、取得部15aが、処理対象の所定期間のデータを取得する。抽出部15bは、取得されたデータを1層目モデル14aに入力した場合の出力の確信度が所定の閾値以上である特徴量を、物体検知のクラスごとに抽出する。また、抽出部15bは、抽出したクラスごとの特徴量を、補完用特徴量としてメモリバンク14cに記憶させる。
【0039】
具体的には、1層目モデル14aは、軽量すなわち低レイテンシな物体検出DNNである。
【0040】
これにより、効果的に補完用特徴量を抽出できるので、メモリバンク14cのメモリ量の増加を抑止し、推論時間の増加を抑止して1層目モデル14aの精度を保証することが可能となる。また、1層目モデル14aをエッジデバイスに実装することが可能となる。このように、検知装置10によれば、2層推論による検知において、1層目のモデルをエッジデバイスに実装する際にも、メモリバンク14cを活用して検知精度を向上させることが可能となる。
【0041】
また、学習部15cが、抽出された補完用特徴量を用いて1層目モデル14aを学習する。これにより、1層目モデル14aの精度が向上する。
【0042】
[実施例]
図6は、実施例を説明するための図である。本実施例では、評価用データセットとして、CityCom(10クラス、17カメラ)を用いた。
図6には、従来手法(Conventional method)と本願手法(Proposed method)とについて、メモリバンク14cの補完用特徴量の数と検知精度の指標mAPとの関係が示されている。
図6の縦軸のmAPは、多クラス物体検知精度の指標であり、精度がよいほど高い値となる。
【0043】
図6に示すように、メモリバンク14cの補完特徴量の数が同程度であれば、本願手法の方が、検知精度が高いことが確認された。また、本願手法によれば、従来手法の約3分の1程度の補完特徴量数で同程度の精度を達成することが確認された。
【0044】
ここで、補完特徴量のサイズが7×7×2048の場合に、1特徴量あたり0.4MBとなる。したがって従来手法の6600個の補完特徴量のメモリ量は2.5GBとなる。これに対し、本願手法によれば、同程度の精度を達成するために、2200個の補完特徴量で足りるため、メモリ量は0.8GBに削減することが可能となることがわかった。
【0045】
また、補完特徴量100個の推論時間は、0.114208s/imgであり、補完特徴量200個の推論時間は0.226247s/imgであった。このように、補完特徴量数の増加に従って、推論時間はリニアに増加する傾向にあることが確認された。したがって、本願手法によれば、従来手法の3分の1程度まで推論時間を短縮して、同程度の精度を達成することが可能となることがわかった。
【0046】
[プログラム]
上記実施形態に係る検知装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、検知装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の検知処理を実行する検知プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の検知プログラムを情報処理装置に実行させることにより、情報処理装置を検知装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)などの移動体通信端末、さらには、PDA(Personal Digital Assistant)などのスレート端末などがその範疇に含まれる。また、検知装置10の機能を、クラウドサーバに実装してもよい。
【0047】
図7は、検知プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
【0048】
メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。ディスクドライブ1041には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1051およびキーボード1052が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1061が接続される。
【0049】
ここで、ハードディスクドライブ1031は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。上記実施形態で説明した各情報は、例えばハードディスクドライブ1031やメモリ1010に記憶される。
【0050】
また、検知プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1093として、ハードディスクドライブ1031に記憶される。具体的には、上記実施形態で説明した検知装置10が実行する各処理が記述されたプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。
【0051】
また、検知プログラムによる情報処理に用いられるデータは、プログラムデータ1094として、例えば、ハードディスクドライブ1031に記憶される。そして、CPU1020が、ハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
【0052】
なお、検知プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1041等を介してCPU1020によって読み出されてもよい。あるいは、検知プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LANやWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【0053】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【0054】
10 検知装置
11 入力部
12 出力部
13 通信制御部
14 記憶部
14a 1層目モデル
14b 2層目モデル
14c メモリバンク
15 制御部
15a 取得部
15b 抽出部
15c 学習部