JP2020119520A - 物体のスケールに応じてモード転換が可能なcnn基盤の監視用物体検出器の学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置 - Google Patents

物体のスケールに応じてモード転換が可能なcnn基盤の監視用物体検出器の学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置 Download PDF

Info

Publication number
JP2020119520A
JP2020119520A JP2019239316A JP2019239316A JP2020119520A JP 2020119520 A JP2020119520 A JP 2020119520A JP 2019239316 A JP2019239316 A JP 2019239316A JP 2019239316 A JP2019239316 A JP 2019239316A JP 2020119520 A JP2020119520 A JP 2020119520A
Authority
JP
Japan
Prior art keywords
layer
learning
test
loss
layers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019239316A
Other languages
English (en)
Other versions
JP6856904B2 (ja
Inventor
− ヒョン キム、ケイ
Kye-Hyeon Kim
− ヒョン キム、ケイ
キム、ヨンジュン
Young Jun Kim
キム、インスー
Insu Kim
− キョン キム、ハク
Hak-Kyoung Kim
− キョン キム、ハク
ナム、ウヒョン
Woonhyu Nam
ブー、ソッフン
Sukhoon Boo
ソン、ミュンチュル
Myungchul Sung
ヨー、ドンフン
Donghun Yeo
リュー、ウジュ
Wooju Ryu
チャン、テウン
Taewoong Jang
ジョン、キュンチョン
Kyungjoong Jeong
チェ、ホンモ
Hongmo Je
チョウ、ホジン
Hojin Cho
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Stradvision Inc
Original Assignee
Stradvision Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Stradvision Inc filed Critical Stradvision Inc
Publication of JP2020119520A publication Critical patent/JP2020119520A/ja
Application granted granted Critical
Publication of JP6856904B2 publication Critical patent/JP6856904B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • G06F18/2115Selection of the most significant subset of features by evaluating different subsets according to an optimisation criterion, e.g. class separability, forward selection or backward elimination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/759Region-based matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/08Detecting or categorising vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

【課題】互いに異なるスケールを有するプーリングレイヤそれぞれをもって、プーリング演算を遂行するようにして演算数を減らし得る学習方法及び学習装置を提供する。【解決手段】学習方法は、コンボリューションレイヤをもって、イメージに対してコンボリューション演算を適用するようにして特徴マップを出力するようにし、RPNをもって、イメージ内のROIを出力するようにする段階と、プーリングレイヤをもって、特徴マップ上のそれぞれのROI領域を該当スケールごとにプーリングするようにして、第1FCレイヤをもって第2特徴ベクトルを出力するようにし、第2FCレイヤをもって、クラス情報と、リグレッション情報とを出力するようにする段階及びロスレイヤをもって、クラス情報と、リグレッション情報と、これに対応するGTとを参照して、クラスロスと、リグレッションロスとを生成する段階を含む。【選択図】図3

Description

本発明は、物体のスケールに応じてモード転換が可能なCNN(Convolutional Neural Network)基盤の監視用物体検出器の学習方法及び学習装置、そしてこれを利用した利用したテスト方法及びテスト装置に関し、より詳細には、前記CNN(Convolutional Neural Network)基盤の前記物体検出器を学習する方法において、(a)少なくとも一つの物体含むトレーニングイメージが入力されると、学習装置が、少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、前記トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにする段階;(b)前記学習装置が、(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記特徴マップ上で前記k個のROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個のROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記第2特徴ベクトルをそれぞれ利用して、前記k個のROIそれぞれに対応するそれぞれのクラス(Class)情報と、それぞれのリグレッション(Regression)情報とを出力するようにする段階;及び(c)前記学習装置が、第1ロスレイヤ(Loss Layer)をもって、それぞれの前記クラス情報と、それぞれの前記リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個のROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションによって前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習する段階;を含む学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置に関する。
機械学習(Machine Learning)において、コンボリューションニューラルネットワーク(Convolutional Neural Network;CNNまたはConvNet)は、視覚的イメージ分析に成功して適用されてきたディープフィードフォワード人工ニューラルネットワーク(Deep Feed−Forward Artificial Neural Network)のクラス(Class)の一つである。
図1は、従来の技術に係るCNNを利用した学習プロセスを示した図面である。
図1は、学習装置が予測したバウンディングボックス(Bounding Box)を、これに対応するGT(Ground Truth)のバウンディングボックスと比較するプロセスを示した図面である。
図1を参照すれば、従来の学習装置がバウンディンボックスを予測し、この予測されたバウンディンボックスをGTのバウンディンボックスと比較して、少なくとも一つのロス値を取得する。ここで、ロス値は、予測されたバウンディングボックスと、GTのバウンディングボックスとの間の差異値を意味する。例えば、図1でロス値は、dx,dy,dw,dhを含み得る。
まず、図1の学習装置は、RGBイメージを取得して、これをコンボリューションレイヤに入力される。RGBイメージがコンボリューションレイヤを通過した後、RGBイメージの幅と高さは縮小されるが、チャネル数は増加するように特徴マップが生成される。
図1の学習装置は、特徴マップをRPN(Region Proposal Network)に入力してプロポーザルボックスを生成し、特徴マップ上のプロポーザルボックスに対応される領域に含まれたピクセルデータに対し、マックスプーリング(Max Pooling)またはアベレージプーリング(Average Pooling)演算のいずれかを適用してプーリング済み特徴マップを生成し得る。ここで、マックスプーリングは、それぞれの細部領域ごとにこれに対応するプロポーザルボックス内の細部領域それぞれから最も大きな値を細部領域ごとに代表値としてそれぞれ選定する方法であり、アベレージプーリングは、それぞれの詳細領域ごとにこれに対応するプロポーザルボックス内の細部領域それぞれに対するそれぞれの平均値をそれぞれの代表値として算出する方法である。
次に、図1の学習装置は、プーリング済み特徴マップをFCレイヤ(Fully Connected Layer)に入力する。その際、学習装置は、FCレイヤをもって、分類演算によって前記RGBイメージ上の物体の種類が何かを確認するようにし得る。プーリング済み特徴マップは、「特徴ベクトル(Feature Vector)」と呼ぶこともできる。
また、入力されたRGBイメージ上の少なくとも一つのバウンディングボックスは、FCレイヤ及びロス値によって予測され、前記ロスは、予測されたバウンディングボックスをこれに対応するGT(Ground Truth)のバウンディングボックスと比較して取得される。ここで、GTのバウンディングボックスは、イメージ上の物体を正確に含むバウンディングボックスとして、一般的には人が直接生成できる。
最後に、図1の学習装置は、バックプロパゲーションを遂行しながらロス値を減少させるために、FCレイヤの少なくとも一つのパラメータと、コンボリューションレイヤとの中の少なくとも一つのパラメータを調整し得る。CNNのパラメータが調整された後、テストイメージ上の新しい物体に対応する新しいバウンディングボックスが予測され得る。
ただし、コンボリューションレイヤから出力される特徴マップ上でROIに対応する領域が単一スケール(Single Scale)にプーリングされると、単一スケールにプーリングされた特徴マップのみを利用しては、情報を効率的に表現することが限られる。従って、物体をより正確に検出するために多くの特徴(Feature)を利用しなければならず、これによって物体検出のための演算数が多くなるだけでなく、性能が低下するという短所があった。
従って、本発明は、互いに異なるスケールを有するプーリングレイヤそれぞれをもって、プーリング演算を遂行するようにして演算数を減らし得る学習方法を提案したい。
本発明は、前述した問題点を解決することを目的とする。
また、本発明は、互いに異なるスケールを有するプーリングレイヤそれぞれをもって、それぞれのプーリング演算を遂行するようにして、演算量を減らす学習方法及び学習装置、これを利用したテスト方法及びテスト装置を提供することを他の目的とする。
前記のような本発明の目的を達成し、後述する本発明の特徴的な効果を実現するための、本発明の特徴的な構成は下記の通りである。
本発明の一態様によれば、CNN(Convolutional Neural Network)基盤の物体検出器を学習する方法において、(a)少なくとも一つの物体含むトレーニングイメージが入力されると、学習装置が、少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、前記トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにする段階;(b)前記学習装置が、(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記特徴マップ上で前記k個のROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個のROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(FullyConnected Layer)それぞれをもって、該当スケールごとにk個の前記第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記第2特徴ベクトルをそれぞれ利用して、前記k個のROIそれぞれに対応するそれぞれのクラス(Class)情報と、それぞれのリグレッション(Regression)情報とを出力するようにする段階;及び(c)前記学習装置が、第1ロスレイヤ(Loss Layer)をもって、それぞれの前記クラス情報と、それぞれの前記リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個のROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションを通じて、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習するようにする段階;を含むことを特徴とする。
一例として、前記k個のROIは、前記RPNによって予め設定されたROI候補の中から選択されたものであり、前記(a)段階の後に、前記学習装置は、第2ロスレイヤをもって、前記ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする。
一例として、前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、前記(b)段階で、前記学習装置は、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにk個の前記第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにして第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記第3特徴ベクトルを利用して、前記k個のROIに対応するそれぞれの前記クラス情報と、それぞれの前記リグレッション情報とを出力するようにすることを特徴とする。
一例として、前記(c)段階で、前記学習装置は、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記第2特徴ベクトルそれぞれに対応されるそれぞれの前記クラスロスと、それぞれの前記のリグレッションロスの少なくとも一部とを利用して、前記第1FCレイヤそれぞれを学習するようにすることを特徴とする。
一例として、前記学習装置は、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする。
一例として、前記学習装置は、それぞれの前記第1FCレイヤから出力される該当スケールごとに前記第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする。
一例として、前記学習装置は、それぞれの前記第1FCレイヤから出力される前記第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする。
本発明の他の態様によれば、CNN(Convolutional Neural Network)基盤の物体検出器をテストする方法において、(a)学習装置が、(1)少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの学習用特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記学習用特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにし、(2)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記学習用特徴マップ上で前記k個の学習用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個の学習用ROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記学習用第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ利用して、前記k個の学習用ROIそれぞれに対応するそれぞれの学習用クラス(Class)情報と、それぞれの学習用リグレッション(Regression)情報とを出力するようにし、(3)第1ロスレイヤ(Loss Layer)をもって、それぞれの前記学習用クラス情報と、それぞれの前記学習用リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個の学習用ROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションによって、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習した状態で、テスト装置が、(i)前記コンボリューションレイヤをもって、テストイメージに対してコンボリューション演算を少なくとも一度適用するようにして、少なくとも一つのテスト用特徴マップを出力するようにし、(ii)前記RPNにをもって前記テスト用特徴マップを用いて前記テストイメージ内のm個のテスト用ROIを出力させる段階;及び(b)前記テスト装置が、(i)互いに異なるプーリングスケールを有する前記プーリングレイヤそれぞれをもって、該当スケールごとに前記テスト用特徴マップ上で前記m個のテスト用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記m個のテスト用ROIそれぞれに対応するm個のテスト用第1特徴ベクトルそれぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの前記第1FCレイヤをもって、該当スケールごとにm個の前記テスト用第1特徴ベクトルをそれぞれ利用して、該当スケールごとにm個のテスト用第2特徴ベクトルをそれぞれ出力するようにし、(iii)前記第2FCレイヤをもって、該当スケールごとにm個の前記テスト用第2特徴ベクトルをそれぞれ利用して前記m個のテスト用ROIそれぞれに対応するそれぞれのテスト用クラス情報と、それぞれのテスト用リグレッション情報とを出力するようにする段階;を含むことを特徴とする。
一例として、前記k個の学習用ROIは、前記RPNにより予め設定された学習用ROI候補の中から選択されたものであり、前記(1)プロセスの後、前記学習装置は、第2ロスレイヤをもって、前記学習用ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする。
一例として、前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、前記(b)段階で、前記テスト装置は、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにm個の前記テスト用第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにしてテスト用第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記テスト用第3特徴ベクトルを利用して前記m個のテスト用ROIに対応するそれぞれの前記テスト用クラス情報と、それぞれの前記テスト用リグレッション情報とを出力するようにすることを特徴とする。
一例として、前記(3)プロセスで、前記学習装置は、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記学習用第2特徴ベクトルそれぞれに対応されるそれぞれの前記クラスロスと、それぞれの前記のリグレッションロスの少なくとも一部とを利用して前記第1FCレイヤそれぞれを学習するようにすることを特徴とする。
一例として、前記学習装置は、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする。
一例として、前記テスト装置は、それぞれの前記第1FCレイヤから出力される該当スケールごとに前記テスト用第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする。
一例として、前記テスト装置は、それぞれの前記第1FCレイヤから出力される前記テスト用第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする。
本発明のまた他の態様によれば、CNN(Convolutional Neural Network)基盤の物体検出器を学習する学習装置において、インストラクションを格納する少なくとも一つのメモリ;及び(I)少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、少なくとも一つの物体を含むトレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして、少なくとも一つの特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにするプロセス、(II)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記特徴マップ上で前記k個のROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個のROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記第2特徴ベクトルをそれぞれ利用して、前記k個のROIそれぞれに対応されるそれぞれのクラス(Class)情報と、それぞれのリグレッション(Regression)情報を出力するようにするプロセス及び、(III)第1ロスレイヤ(Loss Layer)をもって、それぞれの前記クラス情報と、それぞれの前記リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個のROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションによって、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習するようにするプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ;を含むことを特徴とする。
一例として、前記k個のROIは、前記RPNによって予め設定されたROI候補の中から選択されたものであり、前記(I)プロセスの後、前記プロセッサは、第2ロスレイヤをもって、前記ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする。
一例として、前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、前記(II)プロセスで、前記プロセッサは、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにk個の前記第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにして第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記第3特徴ベクトルを利用して前記k個のROIに対応するそれぞれの前記クラス情報と、それぞれの前記のリグレッション情報とを出力するようにすることを特徴とする。
一例として、前記(III)プロセスで、前記プロセッサは、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記第2特徴ベクトルそれぞれに対応するそれぞれの前記クラスロスと、それぞれの前記のリグレッションロスの少なくとも一部とを利用して、前記第1FCレイヤそれぞれを学習するようにすることを特徴とする。
一例として、前記プロセッサは、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする。
一例として、前記プロセッサは、それぞれの前記第1FCレイヤから出力される該当スケールごとにそれぞれの前記第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする。
一例として、前記プロセッサは、それぞれの前記第1FCレイヤから出力される前記第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする。
本発明のまた他の態様によれば、CNN(Convolutional Neural Network)基盤の物体検出器をテストするテスト装置において、インストラクションを格納する少なくとも一つのメモリ;及び学習装置が、(1)少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの学習用特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記学習用特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにし、(2)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記学習用特徴マップ上で前記k個の学習用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個の学習用ROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記学習用第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ利用して、前記k個の学習用ROIそれぞれに対応するそれぞれの学習用クラス(Class)情報と、それぞれの学習用リグレッション(Regression)情報とを出力するようにし、(3)第1ロスレイヤ(Loss Layer)をもって、それぞれの前記学習用クラス情報と、それぞれの前記学習用リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個の学習用ROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションによって、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習した状態で、(I)(i)前記コンボリューションレイヤをもって、テストイメージに対してコンボリューション演算を少なくとも一度適用するようにして、少なくとも一つのテスト用特徴マップを出力するようにし、(ii)前記RPNをもって、前記テスト用特徴マップを用いて前記テストイメージ内のm個のテスト用ROIを出力するようにするプロセス、及び(II)(i)互いに異なるプーリングスケール(Pooling Scale)を有する前記プーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記テスト用特徴マップ上で前記m個のテスト用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記m個のテスト用ROIそれぞれに対応するm個のテスト用第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの前記第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにm個の前記テスト用第1特徴ベクトルをそれぞれ利用して該当スケールごとにm個のテスト用第2特徴ベクトルをそれぞれ出力するようにし、(iii)前記第2FCレイヤをもって、該当スケールごとのm個の前記テスト用第2特徴ベクトルをそれぞれ利用して、前記m個のテスト用ROIそれぞれに対応するそれぞれのテスト用クラス(Class)情報と、それぞれのテスト用リグレッション(Regression)情報とを出力するようにするプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ;を含むことを特徴とする。
一例として、前記k個の学習用ROIは、前記RPNにより予め設定された学習用ROI候補の中から選択されたものであり、前記(1)プロセスの後、前記学習装置は、第2ロスレイヤをもって、前記学習用ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする。
一例として、前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、前記(II)プロセスで、前記プロセッサは、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにm個の前記テスト用第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにしてテスト用第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記テスト用第3特徴ベクトルを利用して前記m個のテスト用ROIに対応するそれぞれの前記テスト用クラス情報と、それぞれの前記テスト用リグレッション情報とを出力するようにすることを特徴とする。
一例として、前記(3)プロセスで、前記学習装置は、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記学習用第2特徴ベクトルそれぞれに対応されるそれぞれの前記クラスロスと、それぞれの前記リグレッションロスの少なくとも一部とを利用して前記第1FCレイヤそれぞれを学習するようにすることを特徴とする。
一例として、前記学習装置は、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする。
一例として、前記プロセッサは、それぞれの前記第1FCレイヤから出力される該当スケールごとにそれぞれの前記テスト用第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする。
一例として、前記プロセッサは、それぞれの前記第1FCレイヤから出力される前記テスト用第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする。
本発明は、互いに異なるプーリングスケールを有するプーリングレイヤそれぞれをもって、特徴マップ上のROIに対応する領域を該当スケールごとにプーリングするようにすることで、多様なスケールに応じてプーリングされた特徴マップ上のより多くの特徴を利用し得る効果がある。
本発明は、より少ない数のチャネルを利用して演算を遂行するので、コンピューティング演算性能を向上させ得る他の効果がある。
本発明の実施例の説明に利用されるために添付された以下の各図面は、本発明の実施例のうちの一部に過ぎず、本発明が属する技術分野でおいて、通常の知識を有する者(以下「通常の技術者」)は、発明的作業が行われることなくこの図面に基づいて他の図面が得られ得る。
図1は、従来の既存の技術に係る学習過程において、学習装置がバウンディンボックスを予測し、この予測されたバウンディンボックスをこれに対応するGTのバウンディンボックスと比較するプロセスを示した図面である。 図2は、本発明の一例に係るCNN基盤の物体検出器を学習する学習装置のブロック図である。 図3は、本発明の一例に係るCNN基盤の物体検出器を学習するプロセスを示した図面である。 図4は、本発明の一例に係るCNN基盤の物体検出器をテストするテスト装置のブロック図である。 図5は、本発明の一例に係るCNN基盤の物体検出器をテストするプロセスを示した図面である。
後述する本発明に対する詳細な説明は、本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は当業者が本発明を実施することができるように充分詳細に説明される。本発明の多様な実施例は相互異なるが、相互排他的である必要はないことを理解されたい。例えば、ここに記載されている特定の形状、構造及び特性は一例と関連して、本発明の精神及び範囲を逸脱せず、かつ他の実施例で実装され得る。また、各々の開示された実施例内の個別構成要素の位置または配置は本発明の精神及び範囲を逸脱せずに変更され得ることを理解されたい。従って、後述する詳細な説明は限定的な意味で捉えようとするものではなく、本発明の範囲は、適切に説明されれば、その請求項が主張することと均等なすべての範囲と、併せて添付された請求項によってのみ限定される。図面で類似する参照符号はいくつかの側面にかけて同一か類似する機能を指称する。
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びそれらの変形は、他の技術的各特徴、各付加物、構成要素又は段階を除外することを意図したものではない。通常の技術者にとって本発明の他の各目的、長所及び各特性が、一部は本説明書から、また一部は本発明の実施から明らかになるであろう。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
本発明で言及している各種イメージは、舗装または非舗装道路関連のイメージを含み得、この場合、道路環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるものではなく、本発明で言及している各種イメージは、道路と関係のないイメージ(例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内と関連したイメージ)でもあり得、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるものではない。
以下、本発明が属する技術分野で通常の知識を有する者が本発明を容易に実施することができるようにするために、本発明の好ましい実施例について添付の図面に基づいて詳細に説明する。
図2は、本発明の一例に係る学習装置100のブロック図である。
図2に示したように、本発明の一例に係る学習装置100は、通信部110とプロセッサ120とを含み得る。場合によっては、データベース130をさらに含み得る。また、学習装置は、次のプロセスを遂行するためのコンピュータ読込み可読なインストラクション(Instruction)を格納し得るメモリ115をさらに含み得る。一例によれば、プロセッサ、メモリ、媒体などは、統合プロセッサ(Integrated Processor)に統合され得る。
この際、本発明の学習装置100は、デジタル機器として、プロセッサを搭載して多様な演算能力を備えたデジタル機器であればいくらでも本発明に係る学習装置100として採択され得る。
通信部110は、少なくとも一つの物体を含むトレーニングイメージを取得し得る。この際、トレーニングイメージは、データベース130から取得され得る。
プロセッサ120は、(a)少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、特徴マップを利用してトレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにするプロセス;(b)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに特徴マップ上でk個のROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとにk個のROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれのプーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の第2特徴ベクトルをそれぞれ利用して、k個のROIそれぞれに対応されるそれぞれのクラス(Class)情報と、それぞれのリグレッション(Regression)情報を出力するようにするプロセス;及び(c)第1ロスレイヤ(Loss Layer)をもって、それぞれのクラス情報と、それぞれのリグレッション情報と、これに対応する第1GT(Ground Truth)とを参照してk個のROIに対応されるクラスロス(Class Loss)及びリグレッションロス(Regression Loss)を生成するようにすることで、クラスロス及びリグレッションロスを利用したバックプロパゲーションによって、第2FCレイヤと、第1FCレイヤと、前記コンボリューションレイヤとを学習するようにするプロセス;を遂行し得る。これについては、後から詳しく説明する。
ここで、データベース130は、学習装置100の通信部110によってアクセスし得、GT(例えば、物体が自動車であるか、歩行者であるかなどを示すクラス情報)及びバウンディンボックスの位置に対する情報を示すリグレッション情報などが記録され得る。
以下に、このように構成された本発明の一例に係る学習装置100を用いて、互いに異なる他のスケールを有するプーリングレイヤそれぞれを利用してCNN基盤の物体検出器を学習する方法を、図3を参照して説明する。
まず、少なくとも一つの物体を含むトレーニングイメージが入力されると、学習装置100は、コンボリューションレイヤ10をもって、トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして、少なくとも一つの特徴マップを出力するようにする。
そして、学習装置100はRPN20をもって、特徴マップを利用してトレーニングイメージ内のk個のROIを出力するようにする。ここでk個のROIは、予め設定されたROI候補の中から選ばれたものである。
次に、学習装置100は、互いに異なるスケールを有するプーリングレイヤ30それぞれをもって、特徴マップ上でRPN20から出力されたk個のROIそれぞれに対応される領域それぞれを該当スケールごとにプーリングして、該当スケールごとにk個のROIそれぞれに対応するk個の第1特徴ベクトルそれぞれを出力するようにする。この際、図3の例では、互いに異なるプーリングスケールを有する3つのプーリングレイヤ30それぞれが示されたが、本発明はこれらに限定されない。また、プーリングスケールが大きい第1特徴ベクトルは、プーリングスケールの小さい第1特徴ベクトルに比べてより多くの情報を有し得る。
そして、それぞれのプーリングレイヤ30それぞれから、それぞれのスケールごとにk個のROIに対応するk個の第1特徴ベクトルそれぞれが出力されると、学習装置100は、それぞれのプーリングレイヤ30それぞれに対応する第1FCレイヤ40それぞれをもって、該当スケールごとにk個の第1特徴ベクトルそれぞれを利用してk個の該当スケールごとに第2特徴ベクトルそれぞれを出力するようにする。図3の例では、第1FCレイヤ40の数が3つとなっているが、これはプーリングレイヤ30の数が3つであることに起因しているものであり、当発明はこれに限定されるものではない。
また、第1FCレイヤ40それぞれから出力される該当スケールごとの第2特徴ベクトルそれぞれのチャネル数それぞれは、互いに同一であり得る。一例として、図3に示された通り、第1FCレイヤ40それぞれから出力される第2特徴ベクトルのチャネル数は128であり得るが、これに限定されるものではない。
また、第1FCレイヤ40から出力される第2特徴ベクトルの総チャネル数が、予め設定された数未満になるようにし得る。一例として、図3に示された通り、第1FCレイヤ40それぞれから出力される第2特徴ベクトルのチャネル数は、384(128+128+128)であり得るが、これに限定されるものではない。この場合、一般的に4,096個のチャネルを有する特徴ベクトルを演算する従来の方法に比べて、本発明に係る演算を遂行するチャネル数は384個と少なくなるので、これによって学習装置100の演算能力を上昇させ得るようになる。
その後、学習装置100は、k個の第2特徴ベクトルそれぞれを第2FCレイヤ50に入力することにより、第2FCレイヤ50をもって、k個の該当スケールごとの第2特徴ベクトルそれぞれを利用してk個のROIそれぞれに対応するそれぞれのクラス情報とそれぞれのリグレッション情報を出力するようにする。
この際、第2FCレイヤ50は、第2_1FCレイヤ51及び第2_2FCレイヤ55を含み得る。第2_1FCレイヤ51は、第1FCレイヤ40それぞれから出力される第2特徴ベクトルそれぞれをコンカチネート(Concatenate)して第3特徴ベクトルを出力し得る。第2_2FCレイヤ55は、第3特徴ベクトルを利用してk個のROIに対応するそれぞれのクラス情報と、それぞれのリグレッション情報とを出力し得る。
次に、学習装置100は、第1ロスレイヤ60をもって、それぞれのクラス情報と、それぞれのリグレッション情報と、これに対応する第1GTとを参照してk個のROIに対応するクラスロス及びリグレッションロスを生成するようにし、クラスロス及びリグレッションロスを利用したバックプロパゲーションによって、第2FCレイヤと、第1FCレイヤと、コンボリューションレイヤとを学習し得る。
この際、学習装置100は、第1FCレイヤ40それぞれから出力されたk個の該当スケールごとの第2特徴ベクトルそれぞれに対応するそれぞれのクラスロスと、それぞれのリグレッションロスとを利用してそれぞれの第1FCレイヤ40を学習し得る。言い換えれば、学習装置100は、それぞれのクラスロス及びそれぞれのリグレッションロスに対して、それぞれの重み付け値を適用してバックプロパゲーションによって第1FCレイヤ40それぞれを学習し得り、それぞれの重み付け値は、それぞれのクラスロスと、それぞれのリグレッションロスとに対するそれぞれの第1FCレイヤ40の寄与度に対する情報を参考にして決定される。
また、学習装置100は、第2ロスレイヤ21をもって、ROI候補及びこれに対応する第2GTを参照してROIのロスを取得するようにし、取得されたROIロスを利用したバックプロパゲーションによってRPNを学習し得る。このようなRPNの学習は、ROI候補群が出力されればいつでも可能である。また、ROIロスは、ROIクラスロスと、ROIリグレッションロスとを含み得る。
図4は、本発明の一例に係るCNN基盤の物体検出器をテストするテスト装置400を概略的に示したブロック図である。
図4に示したように、本発明の一例に係るテスト装置400は、通信部401と、プロセッサ402とを含み得る。図面では、テスト装置400と学習装置100を区別して表現したが、テスト装置400と学習装置100は同一な装置であり得る。また、学習装置は、次のプロセスを遂行するためのコンピュータ読込み可読なインストラクション(Instruction)を格納し得るメモリ403をさらに含み得る。一例によれば、プロセッサ、メモリ、媒体などは、統合プロセッサ(Integrated Processor)に統合され得る。
参考までに、以下の説明において混乱を避けるために、学習プロセスに関連する用語には「学習用」という単語が追加され、テスト用プロセスに関連する用語には「テスト用」という単語が追加された。
(1)学習装置が、(i)コンボリューションレイヤ(Convolutional Layer)をもって、トレーニングイメージに対してコンボリューション演算を適用して、学習用特徴マップを出力するようにし、(ii)RPN(Region Proposal Network)をもって、学習用特徴マップを利用してトレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにし、(2)学習装置が、(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに学習用特徴マップ上でk個の学習用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとにk個の学習用ROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれのプーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の学習用第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の学習用第2特徴ベクトルをそれぞれ出力するようにし、(iii)第2FCレイヤをもって、該当スケールごとにk個の学習用第2特徴ベクトルをそれぞれ利用して、k個の学習用ROIそれぞれに対応するそれぞれの学習用クラス(Class)情報と、それぞれの学習用リグレッション(Regression)情報とを出力するようにし、(3)第1ロスレイヤ(Loss Layer)をもって、それぞれの学習用クラス情報と、それぞれの学習用リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照してk個の学習用ROIに対応するクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、クラスロス及びリグレッションロスを利用したバックプロパゲーションによって、第2FCレイヤと、第1FCレイヤと、コンボリューションレイヤとを学習した状態で、通信部401は、少なくとも一つのテスト用物体を含むテストイメージを取得し得る。
プロセッサ420は(I)(i)コンボリューションレイヤをもって、テストイメージに対してコンボリューション演算を適用するようにして、少なくとも一つのテスト用特徴マップを出力するようにし、(ii)RPNをもって、テスト用特徴マップを用いてテストイメージ内のm個のテスト用ROIを出力するようにする第1プロセス;及び(2)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとにテスト用特徴マップ上でm個のテスト用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとにm個のテスト用ROIそれぞれに対応するm個のテスト用第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれのプーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)をもって、該当スケールごとにm個のテスト用第1特徴ベクトルをそれぞれ利用して該当スケールごとにm個のテスト用第2特徴ベクトルをそれぞれ出力するようにし、(iii)第2FCレイヤをもって、該当スケールごとのm個のテスト用第2特徴ベクトルをそれぞれ利用して、m個のテスト用ROIそれぞれに対応するそれぞれのテスト用クラス(Class)情報と、それぞれのテスト用リグレッション(Regression)情報とを出力するようにする第2プロセスを遂行し得る。
ここで、テスト装置400においてRPNが出力するROIの数であるm個は、学習装置100においてRPNが出力するROIの数であるk個より小さいか、同じであり得るが、これに限定されるものではない。
このように構成されたテスト装置400を利用して、本発明の一例に係る互いに異なるプーリングスケールを有するプーリングレイヤそれぞれを利用してCNN基盤の物体検出器をテストする方法を、図5を参照にしながら説明する。以下の説明において、学習方法から容易に理解可能な部分については詳細な説明を省略することにする。
まず、図3を参照に説明した学習方法によって、第2FCレイヤ450と、第1FCレイヤ440と、コンボリューションレイヤ410とを学習した状態で、テストイメージが入力されると、テスト装置400は、コンボリューションレイヤ410をもってテストイメージに対してコンボリューション演算を少なくとも一度適用するようにし、少なくとも一つのテスト用特徴マップを出力するようにする。
コンボリューションレイヤ410から出力されたテスト用特徴マップをRPN420に入力して、テスト装置400は、RPN420をもって、テスト用特徴マップを利用してテストイメージに対応するm個のテスト用ROIを出力するようにする。
次に、テスト装置400は、互いに異なるプーリングスケールを有するプーリングレイヤ430それぞれをもって、テスト用特徴マップ上でm個のテスト用ROIに対応するそれぞれの領域を該当スケールごとにプーリングするようにして、該当スケールごとにm個のテスト用ROIに対応するm個の第1テスト用特徴ベクトルそれぞれを出力するようにする。この際、図5の例では、互いに異なるプーリングスケールを有する3つのプーリングレイヤ430それぞれが示されたが、本発明はこれらに限定されるわけではない。また、プーリングスケールが大きい第1テスト用特徴ベクトルは、プーリングスケールの小さい第1テスト用特徴ベクトルに比べてより多くの情報を有し得る。
そして、テスト装置400は、それぞれのプーリングレイヤ430に対応するそれぞれの第1FCレイヤ440をもって、m個の該当スケールごとに第1テスト用特徴ベクトルそれぞれを利用して、m個の該当スケールごとに第2テスト用特徴ベクトルそれぞれを出力するようにする。図5の例では、第1FCレイヤ440の数が3つとなっているが、これはプーリングレイヤ430の数が3つであることに起因しているものであり、当発明はこれに限定されるものではない。
また、第1FCレイヤ440それぞれから出力される該当スケールごとの第2テスト用特徴ベクトルそれぞれのチャネル数それぞれは、同一であり得る。一例として、図5に示されたように、第1FCレイヤ440それぞれから出力される該当スケールごとの第2テスト用特徴ベクトルのチャネル数は、それぞれ128であり得るが、これに限定されるものではない。
また、第1FCレイヤ440それぞれから出力される第2テスト用特徴ベクトルの総チャネル数が、予め設定された数未満になるようにし得る。一例として、図5に示された通り、第1FCレイヤ440それぞれから出力される第2テスト用特徴ベクトルの総チャネル数は、384(128+128+128)であり得るが、これに限定されるものではない。この場合、一般的に4,096チャネルを有する特徴ベクトルを演算する従来の方法に比べて、本発明に係る全ての演算を遂行するチャネル数は384個と少なくなるので、これによってテスト装置400の演算能力を上昇させ得るようになる。
その後、テスト装置400は、第2FCレイヤをもって、該当スケールごとにm個の第2テスト用特徴ベクトルをそれぞれ利用してm個のテスト用ROIそれぞれに対応するそれぞれのテスト用クラス情報と、それぞれのテスト用リグレッション情報とを出力するようにする。
この際、第2FCレイヤ450は、第2_1FCレイヤ451及び第2_2FCレイヤ455を含み得る。第2_1FCレイヤ451は、第1FCレイヤ440それぞれから出力される第2テスト用特徴ベクトルそれぞれをコンカチネート(Concatenate)して第3テスト用特徴ベクトルを出力し得る。第2_2FCレイヤ455は、第3テスト用特徴ベクトルを利用してm個のテスト用ROIに対応するそれぞれのテスト用クラス情報と、それぞれのテスト用リグレッション情報とを出力し得る。
本発明に係る学習方法とテスト方法は、物体のスケールによってモードを転換し得るCNNを利用して監視用として利用され得る。モードによって様々なレイヤの重み付け値及び/または多様なロスの重み付け値は調整され得る。
また、以上で説明された本発明に係る実施例は、多様なコンピュータ構成要素を通じて遂行できるプログラム命令語の形態で実装されてコンピュータ読み取り可能な記録媒体に記録され得る。前記コンピュータで読み取り可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独でまたは組み合わせて含まれ得る。前記コンピュータ判読可能な記録媒体に記録されるプログラム命令語は、本発明のために特別に設計されて構成されたものか、コンピュータソフトウェア分野の当業者に公知となって使用可能なものでもよい。コンピュータで判読可能な記録媒体の例には、ハードディスク、フロッピィディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスク(flopticaldisk)のような磁気−光媒体(magneto−opticalmedia)、およびROM、RAM、フラッシュメモリなどといったプログラム命令語を格納して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードも含まれる。前記ハードウェア装置は、本発明に係る処理を遂行するために一つ以上のソフトウェアモジュールとして作動するように構成され得、その逆も同様である。
以上、本発明が具体的な構成要素などのような特定事項と限定された実施例及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものであるに過ぎず、本発明が前記実施例に限られるものではなく、本発明が属する技術分野において通常の知識を有する者であれば係る記載から多様な修正及び変形が行われ得る。
従って、本発明の思想は前記説明された実施例に局限されて定められてはならず、後述する特許請求の範囲だけでなく、本特許請求の範囲と均等または等価的に変形されたものすべては、本発明の思想の範囲に属するといえる。
100:学習装置
110:通信部
120:プロセッサ
130:データベース
400:テスト装置
410:通信部
420:プロセッサ

Claims (28)

  1. CNN(Convolutional Neural Network)基盤の物体検出器を学習する方法において、
    (a)少なくとも一つの物体含むトレーニングイメージが入力されると、学習装置が、少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、前記トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにする段階;
    (b)前記学習装置が、(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記特徴マップ上で前記k個のROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個のROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記第2特徴ベクトルをそれぞれ利用して、前記k個のROIそれぞれに対応するそれぞれのクラス(Class)情報と、それぞれのリグレッション(Regression)情報とを出力するようにする段階;及び
    (c)前記学習装置が、第1ロスレイヤ(Loss Layer)をもって、それぞれの前記クラス情報と、それぞれの前記リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個のROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションを通じて、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習するようにする段階;
    を含むことを特徴とする学習方法。
  2. 前記k個のROIは、前記RPNによって予め設定されたROI候補の中から選択されたものであり、
    前記(a)段階の後に、
    前記学習装置は、第2ロスレイヤをもって、前記ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする請求項1に記載の学習方法。
  3. 前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、
    前記(b)段階で、
    前記学習装置は、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにk個の前記第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにして第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記第3特徴ベクトルを利用して、前記k個のROIに対応するそれぞれの前記クラス情報と、それぞれの前記リグレッション情報とを出力するようにすることを特徴とする請求項1に記載の学習方法。
  4. 前記(c)段階で、
    前記学習装置は、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記第2特徴ベクトルそれぞれに対応されるそれぞれの前記クラスロスと、それぞれの前記のリグレッションロスの少なくとも一部とを利用して、前記第1FCレイヤそれぞれを学習するようにすることを特徴とする請求項1に記載の学習方法。
  5. 前記学習装置は、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする請求項4に記載の学習方法。
  6. 前記学習装置は、それぞれの前記第1FCレイヤから出力される該当スケールごとに前記第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする請求項1に記載の学習方法。
  7. 前記学習装置は、それぞれの前記第1FCレイヤから出力される前記第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする請求項1に記載の学習方法。
  8. CNN(Convolutional Neural Network)基盤の物体検出器をテストする方法において、
    (a)学習装置が、(1)少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの学習用特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記学習用特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにし、(2)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記学習用特徴マップ上で前記k個の学習用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個の学習用ROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記学習用第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ利用して、前記k個の学習用ROIそれぞれに対応するそれぞれの学習用クラス(Class)情報と、それぞれの学習用リグレッション(Regression)情報とを出力するようにし、(3)第1ロスレイヤ(Loss Layer)をもって、それぞれの前記学習用クラス情報と、それぞれの前記学習用リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個の学習用ROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションによって、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習した状態で、テスト装置が、(i)前記コンボリューションレイヤをもって、テストイメージに対してコンボリューション演算を少なくとも一度適用するようにして、少なくとも一つのテスト用特徴マップを出力するようにし、(ii)前記RPNにをもって前記テスト用特徴マップを用いて前記テストイメージ内のm個のテスト用ROIを出力させる段階;及び
    (b)前記テスト装置が、(i)互いに異なるプーリングスケールを有する前記プーリングレイヤそれぞれをもって、該当スケールごとに前記テスト用特徴マップ上で前記m個のテスト用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記m個のテスト用ROIそれぞれに対応するm個のテスト用第1特徴ベクトルそれぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの前記第1FCレイヤをもって、該当スケールごとにm個の前記テスト用第1特徴ベクトルをそれぞれ利用して、該当スケールごとにm個のテスト用第2特徴ベクトルをそれぞれ出力するようにし、(iii)前記第2FCレイヤをもって、該当スケールごとにm個の前記テスト用第2特徴ベクトルをそれぞれ利用して前記m個のテスト用ROIそれぞれに対応するそれぞれのテスト用クラス情報と、それぞれのテスト用リグレッション情報とを出力するようにする段階;
    を含むことを特徴とするテスト方法。
  9. 前記k個の学習用ROIは、前記RPNにより予め設定された学習用ROI候補の中から選択されたものであり、
    前記(1)プロセスの後、
    前記学習装置は、第2ロスレイヤをもって、前記学習用ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする請求項8に記載のテスト方法。
  10. 前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、
    前記(b)段階で、
    前記テスト装置は、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにm個の前記テスト用第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにしてテスト用第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記テスト用第3特徴ベクトルを利用して前記m個のテスト用ROIに対応するそれぞれの前記テスト用クラス情報と、それぞれの前記テスト用リグレッション情報とを出力するようにすることを特徴とする請求項8に記載のテスト方法。
  11. 前記(3)プロセスで、
    前記学習装置は、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記学習用第2特徴ベクトルそれぞれに対応されるそれぞれの前記クラスロスと、それぞれの前記のリグレッションロスの少なくとも一部とを利用して前記第1FCレイヤそれぞれを学習するようにすることを特徴とする請求項8に記載のテスト方法。
  12. 前記学習装置は、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする請求項11に記載のテスト方法。
  13. 前記テスト装置は、それぞれの前記第1FCレイヤから出力される該当スケールごとに前記テスト用第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする請求項8に記載のテスト方法。
  14. 前記テスト装置は、それぞれの前記第1FCレイヤから出力される前記テスト用第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする請求項8に記載のテスト方法。
  15. CNN(Convolutional Neural Network)基盤の物体検出器を学習する学習装置において、
    インストラクションを格納する少なくとも一つのメモリ;及び
    (I)少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、少なくとも一つの物体を含むトレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして、少なくとも一つの特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにするプロセス、(II)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記特徴マップ上で前記k個のROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個のROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記第2特徴ベクトルをそれぞれ利用して、前記k個のROIそれぞれに対応されるそれぞれのクラス(Class)情報と、それぞれのリグレッション(Regression)情報を出力するようにするプロセス、及び(III)第1ロスレイヤ(Loss Layer)をもって、それぞれの前記クラス情報と、それぞれの前記リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個のROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションによって、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習するようにするプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ;
    を含むことを特徴とする学習装置。
  16. 前記k個のROIは、前記RPNによって予め設定されたROI候補の中から選択されたものであり、
    前記(I)プロセスの後、
    前記プロセッサは、第2ロスレイヤをもって、前記ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする請求項15に記載の学習方法。
  17. 前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、
    前記(II)プロセスで、
    前記プロセッサは、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにk個の前記第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにして第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記第3特徴ベクトルを利用して前記k個のROIに対応するそれぞれの前記クラス情報と、それぞれの前記のリグレッション情報とを出力するようにすることを特徴とする請求項15に記載の学習装置。
  18. 前記(III)プロセスで、
    前記プロセッサは、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記第2特徴ベクトルそれぞれに対応するそれぞれの前記クラスロスと、それぞれの前記のリグレッションロスの少なくとも一部とを利用して、前記第1FCレイヤそれぞれを学習するようにすることを特徴とする請求項15に記載の学習装置。
  19. 前記プロセッサは、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする請求項18に記載の学習装置。
  20. 前記プロセッサは、それぞれの前記第1FCレイヤから出力される該当スケールごとにそれぞれの前記第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする請求項15に記載の学習装置。
  21. 前記プロセッサは、それぞれの前記第1FCレイヤから出力される前記第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする請求項15に記載の学習装置。
  22. CNN(Convolutional Neural Network)基盤の物体検出器をテストするテスト装置において、
    インストラクションを格納する少なくとも一つのメモリ;及び
    学習装置が、(1)少なくとも一つのコンボリューションレイヤ(Convolutional Layer)をもって、トレーニングイメージに対してコンボリューション演算を少なくとも一度適用するようにして少なくとも一つの学習用特徴マップを出力するようにし、RPN(Region Proposal Network)をもって、前記学習用特徴マップを利用して前記トレーニングイメージ内のk個のROI(Region Of Interest)を出力するようにし、(2)(i)互いに異なるプーリングスケール(Pooling Scale)を有するプーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記学習用特徴マップ上で前記k個の学習用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記k個の学習用ROIそれぞれに対応するk個の第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにk個の前記学習用第1特徴ベクトルをそれぞれ利用して該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ出力するようにし、(iii)少なくとも一つの第2FCレイヤをもって、該当スケールごとにk個の前記学習用第2特徴ベクトルをそれぞれ利用して、前記k個の学習用ROIそれぞれに対応するそれぞれの学習用クラス(Class)情報と、それぞれの学習用リグレッション(Regression)情報とを出力するようにし、(3)第1ロスレイヤ(Loss Layer)をもって、それぞれの前記学習用クラス情報と、それぞれの前記学習用リグレッション情報と、これに対応する第1GT(Ground Truth)とを参照して前記k個の学習用ROIに対応されるクラスロス(Class Loss)と、リグレッションロス(Regression Loss)とを生成するようにすることで、前記クラスロス及び前記リグレッションロスを利用したバックプロパゲーションによって、前記第2FCレイヤと、前記第1FCレイヤと、前記コンボリューションレイヤとを学習した状態で、(I)(i)前記コンボリューションレイヤをもって、テストイメージに対してコンボリューション演算を少なくとも一度適用するようにして、少なくとも一つのテスト用特徴マップを出力するようにし、(ii)前記RPNをもって、前記テスト用特徴マップを用いて前記テストイメージ内のm個のテスト用ROIを出力するようにするプロセス、及び(II)(i)互いに異なるプーリングスケール(Pooling Scale)を有する前記プーリングレイヤ(Pooling Layer)それぞれをもって、該当スケールごとに前記テスト用特徴マップ上で前記m個のテスト用ROIに対応するそれぞれの領域をプーリングするようにして、該当スケールごとに前記m個のテスト用ROIそれぞれに対応するm個のテスト用第1特徴ベクトル(Feature Vector)それぞれを出力するようにし、(ii)それぞれの前記プーリングレイヤに対応するそれぞれの前記第1FCレイヤ(Fully Connected Layer)それぞれをもって、該当スケールごとにm個の前記テスト用第1特徴ベクトルをそれぞれ利用して該当スケールごとにm個のテスト用第2特徴ベクトルをそれぞれ出力するようにし、(iii)前記第2FCレイヤをもって、該当スケールごとのm個の前記テスト用第2特徴ベクトルをそれぞれ利用して、前記m個のテスト用ROIそれぞれに対応するそれぞれのテスト用クラス(Class)情報と、それぞれのテスト用リグレッション(Regression)情報とを出力するようにするプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ;
    を含むことを特徴とするテスト装置。
  23. 前記k個の学習用ROIは、前記RPNにより予め設定された学習用ROI候補の中から選択されたものであり、
    前記(1)プロセスの後、
    前記学習装置は、第2ロスレイヤをもって、前記学習用ROI候補及びそれに対応する第2GTを参照してROIロスを生成するようにすることで、前記ROIロスを利用したバックプロパゲーションによって前記RPNを学習するようにすることを特徴とする請求項22に記載のテスト装置。
  24. 前記第2FCレイヤは、第2_1FCレイヤ及び第2_2FCレイヤを含み、
    前記(II)プロセスで、
    前記プロセッサは、(i)前記第2_1FCレイヤをもって、前記第1FCレイヤのそれぞれから出力される該当スケールごとにm個の前記テスト用第2特徴ベクトルそれぞれをコンカチネート(Concatenate)するようにしてテスト用第3特徴ベクトルを出力するようにし、(ii)前記第2_2FCレイヤをもって、前記テスト用第3特徴ベクトルを利用して前記m個のテスト用ROIに対応するそれぞれの前記テスト用クラス情報と、それぞれの前記テスト用リグレッション情報とを出力するようにすることを特徴とする請求項22に記載のテスト装置。
  25. 前記(3)プロセスで、
    前記学習装置は、前記第1FCレイヤそれぞれから出力された該当スケールごとにk個の前記学習用第2特徴ベクトルそれぞれに対応されるそれぞれの前記クラスロスと、それぞれの前記リグレッションロスの少なくとも一部とを利用して前記第1FCレイヤそれぞれを学習するようにすることを特徴とする請求項22に記載のテスト装置。
  26. 前記学習装置は、それぞれの前記クラスロス及びそれぞれの前記リグレッションロスに対してそれぞれの重み付け値を適用して、バックプロパゲーションによって前記第1FCレイヤそれぞれを学習し、それぞれの前記重み付け値は、それぞれの前記クラスロスと、それぞれの前記リグレッションロスとに対するそれぞれの前記第1FCレイヤの寄与度に対する情報を参考にして決定されることを特徴とする請求項25に記載のテスト装置。
  27. 前記プロセッサは、それぞれの前記第1FCレイヤから出力される該当スケールごとにそれぞれの前記テスト用第2特徴ベクトルのチャネル数が互いに同一になるようにすることを特徴とする請求項22に記載のテスト装置。
  28. 前記プロセッサは、それぞれの前記第1FCレイヤから出力される前記テスト用第2特徴ベクトルの総チャネル数が予め設定された数未満になるようにすることを特徴とする請求項22に記載のテスト装置。
JP2019239316A 2019-01-25 2019-12-27 物体のスケールに応じてモード転換が可能なcnn基盤の監視用物体検出器の学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置 Active JP6856904B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/258,248 2019-01-25
US16/258,248 US10402686B1 (en) 2019-01-25 2019-01-25 Learning method and learning device for object detector to be used for surveillance based on convolutional neural network capable of converting modes according to scales of objects, and testing method and testing device using the same

Publications (2)

Publication Number Publication Date
JP2020119520A true JP2020119520A (ja) 2020-08-06
JP6856904B2 JP6856904B2 (ja) 2021-04-14

Family

ID=67769938

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019239316A Active JP6856904B2 (ja) 2019-01-25 2019-12-27 物体のスケールに応じてモード転換が可能なcnn基盤の監視用物体検出器の学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置

Country Status (5)

Country Link
US (1) US10402686B1 (ja)
EP (1) EP3686807A3 (ja)
JP (1) JP6856904B2 (ja)
KR (1) KR102320995B1 (ja)
CN (1) CN111488786B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10726303B1 (en) * 2019-01-30 2020-07-28 StradVision, Inc. Learning method and learning device for switching modes of autonomous vehicle based on on-device standalone prediction to thereby achieve safety of autonomous driving, and testing method and testing device using the same
CN110648322B (zh) * 2019-09-25 2023-08-15 杭州智团信息技术有限公司 一种子宫颈异常细胞检测方法及系统
CN112308156B (zh) * 2020-11-05 2022-05-03 电子科技大学 一种基于对抗学习的两阶段图像变化检测方法
CN114092813B (zh) * 2021-11-25 2022-08-05 中国科学院空天信息创新研究院 一种工业园区图像提取方法、系统、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010007865A1 (en) * 1993-03-31 2001-07-12 D-Pharm Ltd. Prodrugs with enhanced penetration into cells
WO2017079521A1 (en) * 2015-11-04 2017-05-11 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
US20180068198A1 (en) * 2016-09-06 2018-03-08 Carnegie Mellon University Methods and Software for Detecting Objects in an Image Using Contextual Multiscale Fast Region-Based Convolutional Neural Network
US9953437B1 (en) * 2017-10-18 2018-04-24 StradVision, Inc. Method and device for constructing a table including information on a pooling type and testing method and testing device using the same
JP2020087355A (ja) * 2018-11-30 2020-06-04 株式会社ポコアポコネットワークス 検出装置、検出方法、コンピュータプログラム及び学習モデル

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9665802B2 (en) * 2014-11-13 2017-05-30 Nec Corporation Object-centric fine-grained image classification
US10303977B2 (en) * 2016-06-28 2019-05-28 Conduent Business Services, Llc System and method for expanding and training convolutional neural networks for large size input images
US10678846B2 (en) * 2017-03-10 2020-06-09 Xerox Corporation Instance-level image retrieval with a region proposal network
US10621725B2 (en) * 2017-04-12 2020-04-14 Here Global B.V. Small object detection from a large image
US10169679B1 (en) * 2017-10-13 2019-01-01 StradVision, Inc. Learning method and learning device for adjusting parameters of CNN by using loss augmentation and testing method and testing device using the same
US9946960B1 (en) * 2017-10-13 2018-04-17 StradVision, Inc. Method for acquiring bounding box corresponding to an object in an image by using convolutional neural network including tracking network and computing device using the same
US10007865B1 (en) 2017-10-16 2018-06-26 StradVision, Inc. Learning method and learning device for adjusting parameters of CNN by using multi-scale feature maps and testing method and testing device using the same
CN108052881A (zh) * 2017-11-30 2018-05-18 华中科技大学 一种实时检测施工现场图像中多类实体对象的方法及设备
CN108416394B (zh) * 2018-03-22 2019-09-03 河南工业大学 基于卷积神经网络的多目标检测模型构建方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010007865A1 (en) * 1993-03-31 2001-07-12 D-Pharm Ltd. Prodrugs with enhanced penetration into cells
WO2017079521A1 (en) * 2015-11-04 2017-05-11 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
US20180068198A1 (en) * 2016-09-06 2018-03-08 Carnegie Mellon University Methods and Software for Detecting Objects in an Image Using Contextual Multiscale Fast Region-Based Convolutional Neural Network
US9953437B1 (en) * 2017-10-18 2018-04-24 StradVision, Inc. Method and device for constructing a table including information on a pooling type and testing method and testing device using the same
JP2020087355A (ja) * 2018-11-30 2020-06-04 株式会社ポコアポコネットワークス 検出装置、検出方法、コンピュータプログラム及び学習モデル

Also Published As

Publication number Publication date
JP6856904B2 (ja) 2021-04-14
CN111488786B (zh) 2023-09-08
KR20200092848A (ko) 2020-08-04
KR102320995B1 (ko) 2021-11-03
CN111488786A (zh) 2020-08-04
EP3686807A3 (en) 2020-08-19
US10402686B1 (en) 2019-09-03
EP3686807A2 (en) 2020-07-29

Similar Documents

Publication Publication Date Title
JP2020119520A (ja) 物体のスケールに応じてモード転換が可能なcnn基盤の監視用物体検出器の学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置
US10410120B1 (en) Learning method and testing method of object detector to be used for surveillance based on R-CNN capable of converting modes according to aspect ratios or scales of objects, and learning device and testing device using the same
KR102296507B1 (ko) 트래킹 네트워크를 포함한 cnn을 사용하여 객체를 트래킹하는 방법 및 이를 이용한 장치
JP6895693B2 (ja) レーンマスク(Lane Mask)を使用して後処理なしに入力イメージに含まれた一つ以上の車線を検出する方法及び装置、並びにそれを利用したテスト方法及びテスト装置{METHOD AND DEVICE FOR LANE DETECTION WITHOUT POST−PROCESSING BY USING LANE MASK, AND TESTING METHOD, AND TESTING DEVICE USING THE SAME}
US10621476B1 (en) Learning method and learning device for object detector based on reconfigurable network for optimizing customers' requirements such as key performance index using target object estimating network and target object merging network, and testing method and testing device using the same
JP2019075121A (ja) マルチスケール特徴マップを利用してcnnのパラメータを調節するための学習方法、学習装置及びこれを利用したテスティング方法、テスティング装置
US10430691B1 (en) Learning method and learning device for object detector based on CNN, adaptable to customers' requirements such as key performance index, using target object merging network and target region estimating network, and testing method and testing device using the same to be used for multi-camera or surround view monitoring
JP2020123343A (ja) 自動駐車システムを提供するために決定地点間の関係及び決定地点に対するリグレッション結果を利用して駐車スペースを検出する学習方法及び学習装置、そしてこれを利用したテスティング方法及びテスティング装置
JP6957050B2 (ja) モバイルデバイスまたは小型ネットワークに適用可能なハードウェアを最適化するのに利用可能なroiをプーリングするために、マスキングパラメータを利用する方法及び装置、そしてこれを利用したテスト方法及びテスト装置{learning method and learning device for pooling roi by using masking parameters to be used for mobile devices or compact networks via hardware optimization, and testing method and testing device using the same}
KR102309708B1 (ko) 인스턴스 세그멘테이션을 이용한 객체의 자세에 따라 모드를 전환할 수 있는 cnn 기반의 수도-3d 바운딩 박스를 검출하는 방법 및 이를 이용한 장치
JP2020119537A (ja) 自律走行車両レベル4を満たすために領域のクラスに応じてモードを切り換えるためにグリッド生成器を利用するニューラルネットワーク演算方法及びこれを利用した装置
JP6850046B2 (ja) 重要業績評価指標のようなユーザ要求事項に適したターゲット物体予測ネットワークを用いた、cnn基盤の変動に強い物体検出器を学習する方法及び学習装置、並びにこれを利用したテスティング方法及びテスティング装置
KR20200091317A (ko) 자율 주행 자동차의 레벨 4를 충족시키기 위해 영역의 클래스에 따라 모드를 전환하여 그리드 셀 별로 가중 컨벌루션 필터를 이용한 감시용 이미지 세그멘테이션 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
JP2020119533A (ja) 自律走行自動車のレベル4を満たすために要求されるhdマップアップデートに利用される、少なくとも一つのアダプティブロス重み付け値マップを利用したアテンションドリブン・イメージセグメンテーション学習方法及び学習装置、そしてこれを利用したテスティング方法及びテスティング装置
KR102309712B1 (ko) 객체의 조건에 따라 모드를 전환할 수 있는 CNN 기반으로 군사 목적, 스마트폰 또는 가상 주행에 사용되는 수도(Pseudo)-3D 바운딩 박스를 검출하는 방법 및 이를 이용한 장치
CN111507152A (zh) 基于内置独立型预测来转换自动驾驶模式的方法及装置
JP2020126621A (ja) 自律走行に対する論理的根拠を提示するために、管理者が物体検出器の検出プロセスを評価できるように支援する方法及び装置
JP6856905B2 (ja) 自律走行車両レベル4を満たすために領域のクラスに応じてモードを切り換えるためにグリッド生成器を利用するニューラルネットワーク演算方法及びこれを利用した装置
KR102313605B1 (ko) 자율주행 차량 레벨4를 충족하기 위해 영역의 클래스에 따라 모드를 전환하기 위하여 그리드 생성기를 이용하는 뉴럴 네트워크 연산 방법 및 이를 이용한 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210311

R150 Certificate of patent or registration of utility model

Ref document number: 6856904

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250