Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7635170B2 - 画像処理装置、学習装置、推論装置、および画像処理方法 - Google Patents
[go: Go Back, main page]

JP7635170B2 - 画像処理装置、学習装置、推論装置、および画像処理方法 - Google Patents

画像処理装置、学習装置、推論装置、および画像処理方法 Download PDF

Info

Publication number
JP7635170B2
JP7635170B2 JP2022019857A JP2022019857A JP7635170B2 JP 7635170 B2 JP7635170 B2 JP 7635170B2 JP 2022019857 A JP2022019857 A JP 2022019857A JP 2022019857 A JP2022019857 A JP 2022019857A JP 7635170 B2 JP7635170 B2 JP 7635170B2
Authority
JP
Japan
Prior art keywords
feature
image
extraction
unit
feature amount
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.)
Active
Application number
JP2022019857A
Other languages
English (en)
Other versions
JP2023117247A (ja
Inventor
孝 井田
利幸 小野
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2022019857A priority Critical patent/JP7635170B2/ja
Priority to US17/930,755 priority patent/US12277751B2/en
Publication of JP2023117247A publication Critical patent/JP2023117247A/ja
Application granted granted Critical
Publication of JP7635170B2 publication Critical patent/JP7635170B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Description

本発明の実施形態は、画像処理装置、学習装置、推論装置、および画像処理方法に関する。
製造工場における製造品の撮影画像を用いた外観検査や、X線透視画像やCT画像などの医用画像を用いた医療診断などにおいて、異常の有無の認識にニューラルネットワークを用いると、他の画像処理を用いるよりも一般的に高い認識精度が得られることが知られている。また、このような外観検査や医療診断においては、認識対象画像の全体に対して異常が写っているのはごく一部分であることが多い。そのため、認識対象画像を複数の処理画像に分割して、分割した複数の処理画像をそれぞれ個別にニューラルネットワークで処理する技術が知られている。この技術を用いることにより、個別のニューラルネットワークの処理量は、認識対象画像をそのまま処理する場合の処理量よりも少なくできる。
ところで、上記技術におけるニューラルネットワークの学習には、理想的には、複数の処理画像それぞれに異常の有無を正解値として教示する手法が望ましい。しかし、この手法では、認識対象画像に対して異常の有無を教示するよりも、分割する処理画像の数に比例して正解値のデータを作成する手間が多くかかるという問題がある。この問題に対して、複数の処理画像を個別にニューラルネットワークで処理して得られる各出力の最大値を求め、この最大値から得られる異常の有無の推定値に対して、分割前の認識対象画像における異常の有無を正解値として教示することによって個別ニューラルネットワークを学習する技術が知られている。
上記技術で用いられているニューラルネットワークの学習過程では、複数の処理画像のそれぞれをニューラルネットワークで処理し、各々の処理過程における変換画像の画素値やニューラルネットワークのその時点の重みパラメータなどの処理過程データを全てメモリに保持している。そして、ニューラルネットワークの出力として得られる推定値の正解値に対する誤差と、学習に寄与する処理過程データを用いて、逆伝播の処理によりニューラルネットワークの重みパラメータを更新した後、全ての処理過程データを解放する構成である。
しかしながら、上記構成では、逆伝播の処理を行うまでの間に、全ての処理過程データを保持する必要があるため、メモリ容量を低減できないという問題があった。
Maximilian Ilse,外2名,"Attention-based Deep Multiple Instance Learning",Volume 80:International Conference on Machine Learning,(スウェーデン),2018,PMLR 80:2127-2136.
本発明が解決しようとする課題は、ニューラルネットワークを用いた画像処理に必要なメモリ容量を低減することができる画像処理装置、学習装置、推論装置、および方法を提供することである。
一実施形態に係る画像処理装置は、特徴量抽出部と、メモリと、最大特徴量選択部と、最適化部とを備える。特徴量抽出部は、入力画像に基づくN個(N≧3)の処理画像について、ニューラルネットワークを用いた特徴量抽出処理を行うことによってN個の特徴量を生成する。メモリは、特徴量抽出処理の過程で発生する処理過程データを保持する。最大特徴量選択部は、N個の特徴量のうちの2個以上N-1個以下であるM個の組み合わせで2回以上の比較を行うことによって最大特徴量を選択する。最適化部は、2回以上の比較毎に、選択されなかったM-1個以下の特徴量に対応するM-1個以下の処理過程データをメモリから解放させる。
第1の実施形態に係る画像処理装置を含む学習装置の構成を例示するブロック図。 入力画像を切り出すことによって3つの処理画像に分割する例を示す説明図。 図1の画像処理装置の詳細な構成を例示するブロック図。 入力画像を切り出すことによって4つの処理画像に分割する例を示す説明図。 入力画像を重複して切り出すことによって4つの処理画像に分割する例を示す説明図。 図3の画像処理装置における特徴量抽出部および最大特徴量選択部の他の第1の構成例を示すブロック図。 第1の実施形態に係る画像処理装置の動作を例示するフローチャート。 図3の画像処理装置における特徴量抽出部および最大特徴量選択部の他の第2の構成例を示すブロック図。 入力画像を縮小することによって2つの処理画像を生成する例を示す説明図。 入力画像に対する2回の畳み込み処理における変換画像、中間画像、および受容野を例示する説明図。 図1の画像処理装置の他の構成例を示すブロック図。 第1の実施形態に係る画像処理装置の他の動作を例示するフローチャート。 図6の画像処理装置における特徴量抽出部および最大特徴量選択部の他の第3の構成例を示すブロック図。 入力画像に対する畳み込み処理における複数の変換画像、中間画像、および受容野を例示する説明図。 畳み込み処理の処理単位毎に分割した中間画像。 複数のチャンネルを有する中間画像とチャンネル毎の特徴量との関係を例示する説明図。 第2の実施形態に係る画像処理装置を含む推論装置の構成を例示するブロック図。 畳み込み処理済みの部分画像とメモリに保持される部分画像データとの関係を例示する説明図。 メモリから解放される部分画像データを例示する説明図。 メモリに保持される新たな部分画像データを例示する説明図。 部分画像から生成された補間中間画像。 一実施形態に係るコンピュータのハードウェア構成を例示するブロック図。
以下、図面を参照しながら、画像処理装置を含む学習装置および推論装置に関する実施形態について詳細に説明する。
(第1の実施形態)
第1の実施形態では、画像に認識対象の物体が含まれているか否かを認識するニューラルネットワークを学習することについて説明される。上記の物体は、例えば、外観検査における製造品のひびや汚れ、或いは医療診断における腫瘍や内出血した血管などを想定する。
図1は、第1の実施形態に係る画像処理装置110を含む学習装置100の構成を例示するブロック図である。学習装置100は、画像処理装置110(画像処理部)と、誤差算出部120と、学習部130とを備える。画像処理装置110は、特徴量抽出部111と、メモリ112と、最大特徴量選択部113と、最適化部114とを備える。
なお、学習装置100は、ニューラルネットワークの学習に必要な入力画像と、この入力画像に対応する正解ラベル(正解値)とを組とした学習データセットを取得する取得部を備えてもよい。また、学習装置100は、各部を制御するための制御部を備えてもよい。
特徴量抽出部111は、他の装置(図示せず)から入力画像を受け取る。特徴量抽出部111は、入力画像に基づくN個(N≧3)の処理画像について、ニューラルネットワークを用いた特徴量抽出処理を行うことによってN個の特徴量を生成する。特徴量抽出部111は、特徴量抽出処理の過程で発生する処理過程データをメモリ112へと出力し、N個の特徴量を最大特徴量選択部113へと出力する。
具体的には、特徴量抽出部111は、N個の処理画像それぞれに対してシーケンシャルに特徴量抽出処理を行う。即ち、特徴量抽出部111は、第1の処理画像に対する処理が終了した後、後続する第2の処理画像に対する処理を行い、これを第Nの処理画像まで繰り返す。また、特徴量抽出部111は、処理画像に対する特徴量抽出処理が行われる度に、処理過程データをメモリ112へと出力し、特徴量を最大特徴量選択部113へと出力する。
上記の特徴量抽出処理は、畳み込み処理、活性化処理、全結合処理、およびプーリング処理などを含む。具体的には、特徴量抽出部111は、処理画像に対して畳み込み処理および活性化処理などの変換を行った後、全結合処理やプーリング処理などによりスカラー値に変換することによって特徴量を生成する。言い換えると、特徴量抽出部111は、処理画像を入力すると特徴量を出力するようなニューラルネットワークによって構成される。また、特徴量抽出部111は、N個の処理画像それぞれに対応するN個のニューラルネットワークを有する。尚、N個のニューラルネットワークのそれぞれは、個別ニューラルネットワークと呼ばれてもよい。
なお、特徴量抽出処理は、特徴量を生成する直前に最終活性化処理を行ってもよい。この最終活性化処理は、例えばシグモイド関数を適用することによって「0」から「1」までの値に変換する処理である。特徴量抽出処理において最終活性化処理が行われない場合、後述する最大特徴量選択部113において最大特徴量が選択された後から、誤差算出部120において誤差算出処理が行われるまでの間で、任意のユニットにおいて最終活性化処理が行われるものとする。また、任意のユニットとして、最終活性化処理を行う活性化部を、最大特徴量選択部113と誤差算出部120との間に設けてもよい。
上記の処理過程データは、例えば、変換後の処理画像(変換画像または中間画像)の画素値などのデータ値、変換時の処理に設定されていた重みパラメータの値、および変換時の処理に設定されていたシフトパラメータの値である。この処理過程データは、後述するニューラルネットワークの学習時に利用されるため、学習に必要なデータに言い換えられてもよい。
更に、特徴量抽出部111は、入力画像に基づいてN個の処理画像を生成してもよい。例えば、特徴量抽出部111は、入力画像の一部を切り出すことによってN個の処理画像を生成する。入力画像とN個の処理画像との関係について、図2を用いて説明する。
図2は、入力画像200を切り出すことによって3つの処理画像210から230までに分割する例を示す説明図である。特徴量抽出部111は、入力画像200を所定のサイズで切り出すことによって3つの処理画像210から230までを生成する。3つの処理画像210から230までは、それぞれ等しいサイズでもよいし、異なるサイズでもよい。
なお、入力画像を切り出す処理は、入力画像から特定の領域を選択する処理に言い換えられてもよい。即ち、特徴量抽出部111は、入力画像のうちのそれぞれ異なる領域を選択することによってN個の処理画像を生成する。
メモリ112は、特徴量抽出部111から処理過程データを入力しこれを保持する。また、メモリ112は、最適化部114から解放指示情報を入力する。メモリ112は、解放指示情報に従って、保持している複数の処理過程データのうちの不要な処理過程データ(以降、不要データと称する)を解放する。メモリ112は、他の各部における処理画像に関する一連の処理が終了した後、最終的に保持している処理過程データ、即ち最大特徴量に関する処理過程データを学習部130へと出力する。
具体的には、メモリ112は、特徴量抽出部111からシーケンシャルに入力される処理過程データを保持しつつ、同様に最適化部114からシーケンシャルに入力される解放指示情報に従って、不要データを解放する。このような動作により、メモリ112は、常に不要データを解放するため、全ての処理過程データを保持する必要がなくなる。
上記の不要データは、後述する選択処理において、選択されなかった特徴量に対応する処理過程データである。選択されなかった特徴量はニューラルネットワークの学習時に考慮されないため、不要データは、ニューラルネットワークの学習に寄与しない処理過程データであると言える。
最大特徴量選択部113は、特徴量抽出部111からN個の特徴量を入力する。最大特徴量選択部113は、N個の特徴量のうちの2個以上N-1個以下であるM個の組み合わせで2回以上の比較を行うことによって最大特徴量を選択する。最大特徴量選択部113は、選択処理により選択されなかった特徴量に関する非選択情報を生成して最適化部114へと出力し、最大特徴量を誤差算出部120へと出力する。
具体的には、最大特徴量選択部113は、特徴量抽出部111からシーケンシャルに特徴量を入力し、入力された特徴量が選択処理に必要な個数(上記のM個)となった後、選択処理を行い、最も大きい特徴量を選択する。その後、最大特徴量選択部113は、再び特徴量抽出部111からシーケンシャルに特徴量を入力し、入力された特徴量が再び選択処理に必要な個数となった後、選択処理を行い、以降これを繰り返す。
選択処理によって選択された特徴量は、後続する選択処理がある場合には、後続する選択処理において再度用いられ、後続する選択処理がない場合には、最大特徴量として誤差算出部120へと出力される。また、最大特徴量選択部113は、選択処理が行われる度に、非選択情報を生成して最適化部114へと出力する。
なお、最大特徴量選択部113は、2回以上の比較において、組み合わせの個数が異なる比較を含んでもよい。例えば、全部で2回の比較を行う場合、最大特徴量選択部113は、1回目の比較において3つの特徴量を比較し、後続する2回目の比較において2つの特徴量を比較してもよい。
最適化部114は、最大特徴量選択部113から非選択情報を入力する。最適化部114は、非選択情報に基づいて解放指示情報を生成し、メモリ112へと出力する。解放指示情報は、メモリ112に保持されている不要データを解放させるための情報である。換言すると、最適化部114は、最大特徴量選択部113における2回以上の比較毎(即ち、最大特徴量を選択するための比較毎)に、選択されなかったM-1個以下の特徴量に対応するM-1個以下の処理過程データをメモリから解放させる。
誤差算出部120は、最大特徴量選択部113から最大特徴量を入力し、他の装置から入力画像に対応する正解値(正解特徴量)を入力する。誤差算出部120は、最大特徴量と正解特徴量とに基づいて誤差値を算出する。誤差算出部120は、誤差値を学習部130へと出力する。
具体的には、誤差算出部120は、最大特徴量と正解特徴量とを比較し、バイナリクロスエントロピーなどに代表される誤差値を算出する。正解特徴量は、例えば、入力画像に認識対象の物体が含まれていれば「1」、含まれていなければ「0」とする値である。
学習部130は、メモリ112から最大特徴量に関する処理過程データを入力し、誤差算出部120から誤差値を入力する。学習部130は、最大特徴量に関する処理過程データと誤差値とに基づいて特徴量抽出部111を構成しているニューラルネットワークを学習する。
具体的には、学習部130は、最大特徴量に関する処理過程データと誤差値とを用いて、誤差逆伝播法により最大特徴量が抽出された個別ニューラルネットワークを学習する。この誤差逆伝播法による学習は、入力画像を入力してから最大特徴量を得るまでの順方向処理におけるデータの繋がりを逆方向にたどることによって、個別ニューラルネットワークにおける種々の処理に設定されていた重みパラメータの値およびシフトパラメータの値を順次更新することによって行われる。このことから、選択されなかった特徴量に対応する個別ニューラルネットワークは、データの繋がりが途中で途切れてしまっているため、学習対象にはならない。即ち、選択されなかった特徴量に関する処理過程データは、最大特徴量が抽出された個別ニューラルネットワークの学習には寄与しないものである。
以上、第1の実施形態に係る画像処理装置110を含む学習装置100の構成について説明した。次に、画像処理装置110の詳細な構成について、図3を用いて説明する。尚、図3の画像処理装置110では、図2に示すような3つの処理画像を用いることを想定する。
図3は、画像処理装置110の詳細な構成を例示するブロック図である。図3の特徴量抽出部111は、処理画像生成部310と、第1の抽出部320-1と、第2の抽出部320-2と、第3の抽出部320-3とを備える。図3の最大特徴量選択部113は、第1の選択部330-1と、第2の選択部330-2とを備える。
処理画像生成部310は、入力画像に基づいて3つの処理画像を生成する。処理画像生成部310は、3つの処理画像のうちの第1の処理画像を第1の抽出部320-1へと出力し、第2の処理画像を第2の抽出部320-2へと出力し、第3の処理画像を第3の抽出部320-3へと出力する。
第1の抽出部320-1は、処理画像生成部310から第1の処理画像を入力する。第1の抽出部320-1は、第1の処理画像について、特徴量抽出処理に相当する第1の抽出処理を行うことによって第1の特徴量を生成する。第1の抽出部320-1は、第1の特徴量を第1の選択部330-1へと出力し、第1の抽出処理の過程で発生する第1の処理過程データをメモリ112へと出力する。
第1の特徴量が抽出された後、メモリ112は、第1の抽出部320-1から第1の処理過程データを入力し、これを保持する。この時点において、メモリ112は、1つの処理過程データを保持している。
第2の抽出部320-2は、処理画像生成部310から第2の処理画像を入力する。第2の抽出部320-2は、第2の処理画像について、特徴量抽出処理に相当する第2の抽出処理を行うことによって第2の特徴量を生成する。第2の抽出部320-2は、第2の特徴量を第1の選択部330-1へと出力し、第2の抽出処理の過程で発生する第2の処理過程データをメモリ112へと出力する。
第2の特徴量が抽出された後、メモリ112は、第2の抽出部320-2から第2の処理過程データを入力し、これを保持する。この時点において、メモリ112は、2つの処理過程データを保持している。
第1の選択部330-1は、第1の抽出部320-1から第1の特徴量を入力し、第2の抽出部320-2から第2の特徴量を入力する。第1の選択部330-1は、第1の特徴量と第2の特徴量とを比較することによって大きい方を第1の選択特徴量として選択する。第1の選択部330-1は、選択されなかった特徴量に関する第1の非選択情報を生成して最適化部114へと出力し、第1の選択特徴量を第2の選択部330-2へと出力する。
第1の非選択情報が生成された後、最適化部114は、第1の選択部330-1から第1の非選択情報を入力する。最適化部114は、第1の非選択情報に基づいて第1の解放指示情報を生成し、メモリ112へと出力する。
第1の解放指示情報が生成された後、メモリ112は、第1の解放指示情報を入力する。メモリ112は、第1の解放指示情報に従って、保持している2つの処理過程データのうちの不要データを解放する。この時点において、メモリ112は、1つの処理過程データを保持している。
第3の抽出部320-3は、処理画像生成部310から第3の処理画像を入力する。第3の抽出部320-3は、第3の処理画像について、特徴量抽出処理に相当する第3の抽出処理を行うことによって第3の特徴量を生成する。第3の抽出部320-3は、第3の特徴量を第2の選択部330-2へと出力し、第3の抽出処理の過程で発生する第3の処理過程データをメモリ112へと出力する。
なお、第3の抽出部320-3における特徴量抽出処理は、第3の処理過程データをメモリ112へ出力する際に、メモリ112に1つの処理過程データしか保持されていないタイミングで行われる。または、第3の抽出部320-3における特徴量抽出処理は、メモリ112において1つの処理過程データを保持している状態で行われる。
第3の特徴量が抽出された後、メモリ112は、第3の抽出部320-3から第3の処理過程データを入力し、これを保持する。この時点において、メモリ112は、2つの処理過程データを保持している。
第2の選択部330-2は、第1の選択部330-1から第1の選択特徴量を入力し、第3の抽出部320-3から第3の特徴量を入力する。第2の選択部330-2は、第1の選択特徴量と第3の選択特徴量とを比較することによって大きい方を第2の選択特徴量として選択する。第2の選択部330-2は、選択されなかった特徴量に関する第2の非選択情報を生成して最適化部114へと出力し、第2の選択特徴量を最大特徴量として誤差算出部120へと出力する。
第2の非選択情報が生成された後、最適化部114は、第2の選択部330-2から第2の非選択情報を入力する。最適化部114は、第2の非選択情報に基づいて第2の解放指示情報を生成し、メモリ112へと出力する。
第2の解放指示情報が生成された後、メモリ112は、第2の解放指示情報を入力する。メモリ112は、第2の解放指示情報に従って、保持している2つの処理過程データのうちの不要データを解放する。この時点において、メモリ112は、最大特徴量に関する処理過程データのみを保持している。そして、メモリ112は、最大特徴量に関する処理過程データを学習部130へと出力する。
図3の構成を概括すると、メモリ112は、第1の選択部330-1または第2の選択部330-2において選択処理の対象となっている2つの特徴量にそれぞれ対応する2つの処理過程データのみを保持する。即ち、メモリ112は、2つの処理過程データを上限として保持する。特徴量抽出部111では合計で3つの処理過程データが発生するが、メモリ112は、選択処理毎に不要データを解放するため、3つの処理過程データを全て保持する必要がなく、メモリ容量を削減することができる。
以上、入力画像から生成された3つの処理画像を用いた処理の例を述べた。以下では、入力画像から4つの処理画像を生成する例について、図4を用いて説明する。
図4は、入力画像400を切り出すことによって4つの処理画像410から440までに分割する例を示す説明図である。特徴量抽出部111は、入力画像400を所定のサイズで切り出すことによって4つの処理画像410から440までを生成する。
図4では、入力画像400を単純に分割することによって4つの処理画像410から440までを生成した。しかし、認識対象の物体が隣接する処理画像の境界付近に存在すると、認識対象の物体が境界で分断されてしまう可能性がある。そこで、複数の処理画像同士を重複するように切り出すことについて、図5を用いて説明する。
図5は、入力画像500を重複して切り出すことによって4つの処理画像510から540までに分割する例を示す説明図である。特徴量抽出部111は、入力画像500を、複数の処理画像同士が重複するように切り出すことによって4つの処理画像510から540までを生成する。
図5では、入力画像500の左上頂点を含む処理画像510と、右上頂点を含む処理画像520と、左下頂点を含む処理画像530と、右下頂点を含む処理画像540とが示されている。これら4つの処理画像510から540までは、それぞれ一部の領域が重複している。このように、複数の処理画像が重複していることにより、一方の処理画像において認識対象の物体が分断されてしまったとしても、他方の処理画像において認識対象の物体が分断されないようにすることができる。よって、画像処理装置110は、認識対象の非検出を防ぐことができる。
以上、入力画像から4つの処理画像を生成する例を述べた。しかし、分割する処理画像の数は3、或いは4に限らない。以下では、分割する処理画像をN個まで拡張した場合の画像処理装置の構成例について、図6を用いて説明する。
図6は、図3の画像処理装置110における特徴量抽出部111および最大特徴量選択部113の他の第1の構成例を示すブロック図である。第1の構成例は、図3で示した3つの処理画像を用いた処理をN個の処理画像を用いた処理まで拡張させたものである。よって、図6では、特徴量抽出部111を特徴量抽出部111Aとし、最大特徴量選択部113を最大特徴量選択部113Aとして説明する。尚、図6では、画像処理装置110におけるメモリ112および最適化部114の図示を省略している。
特徴量抽出部111Aは、処理画像生成部610と、第1の抽出部620-1から第Nの抽出部620-Nまでとを備える。最大特徴量選択部113Aは、第1の選択部630-1から第Lの選択部630-Lまでを備える。ここで、LはN-1である。
処理画像生成部610は、入力画像に基づいてN個の処理画像を生成する。処理画像生成部610は、N個の処理画像のそれぞれを第1の抽出部610-1から第Nの抽出部610-Nまでへと出力する。
第1の抽出部620-1、第2の抽出部620-2、第1の選択部630-1、第3の抽出部620-3、および第2の選択部630-2は、図3の第1の抽出部320-1、第2の抽出部320-2、第1の選択部330-1、第3の抽出部320-3、および第2の選択部630-2と同様の処理であるため説明を省略する。
第4の抽出部620-4および第3の選択部630-3は、第3の抽出部620-3および第2の選択部630-2と略同様の処理である。尚、以降の抽出部および選択部についても同様である。
図6の構成を概括すると、第2の選択部630-2以降の選択部は、直前の選択部において選択された選択特徴量と、未選択の特徴量との2つの特徴量を順次比較する構成である。また、第3の抽出部620-3以降の抽出部は、処理過程データをメモリ112へ出力する際に、メモリ112に1つの処理過程データしか保持されていないタイミングで行われる。または、第3の抽出部620-3以降の抽出部における特徴量抽出処理は、メモリ112において1つの処理過程データを保持している状態で行われる。即ち、処理画像がN個まで拡張されたとしても、メモリ112には、2つの処理過程データを上限として保持するだけでよい。
以上、分割する処理画像をN個まで拡張した場合の画像処理装置の構成例について説明した。次に、N個の処理画像を用いた第1の実施形態に係る画像処理装置110の動作について、図7を用いて説明する。
図7は、第1の実施形態に係る画像処理装置の動作を例示するフローチャートである。図7のフローチャートは、1つの入力画像についての最大特徴量選択処理の一連の流れを示している。また、図7のフローチャートは、図6で示したような、選択部において2つの特徴量を比較する構成を前提としている。以降では、図1および図6の各部を参照して説明する。
(ステップST701)
画像処理装置110が入力画像を取得すると、処理画像生成部610は、入力画像に基づくN個(N≧3)の処理画像を生成する。
(ステップST702)
第1の抽出部620-1は、第1の処理画像について第1の抽出処理を行うことによって第1の特徴量を生成する。
(ステップST703)
メモリ112は、第1の抽出処理の過程で発生する第1の処理過程データを保持する。
(ステップST704)
第2の抽出部620-2は、第2の処理画像について第2の抽出処理を行うことによって第2の特徴量を生成する。
(ステップST705)
メモリ112は、第2の抽出処理の過程で発生する第2の処理過程データを保持する。この時、メモリ112は、2つの処理過程データを保持している。
(ステップST706)
第1の選択部630-1は、第1の特徴量と第2の特徴量とを比較することによって大きい方を第1の選択特徴量として選択する。
(ステップST707)
最適化部114は、第1の特徴量と第2の特徴量との比較において選択されなかった特徴量に対応する処理過程データをメモリ112から解放させる。これにより、メモリ112は、1つの処理過程データを保持する。
(ステップST708)
画像処理装置110は、変数iおよび変数jを定義し、それぞれ3および1を代入する。
(ステップST709)
第iの抽出部620-iは、第iの処理画像について第iの抽出処理を行うことによって第iの特徴量を生成する。
(ステップST710)
メモリ112は、第iの抽出処理の過程で発生する第iの処理過程データを保持する。この時、メモリ112は、2つの処理過程データを保持している。
(ステップST711)
第(i-1)の選択部630-(i-1)は、第jの選択特徴量と第iの特徴量とを比較することによって大きい方を第(j+1)の選択特徴量として選択する。
(ステップST712)
最適化部114は、第jの選択特徴量と第iの特徴量との比較において選択されなかった特徴量に対応する処理過程データをメモリ112から解放させる。これにより、メモリ112は、1つの処理過程データだけを保持する。
(ステップST713)
画像処理装置110は、変数iがNであるか否かを判定する。変数iがNではない場合、処理はステップST714へ進む。他方、変数iがNである場合、画像処理装置110は、直前の選択処理において選択された選択特徴量を最大特徴量として誤差算出部120へと出力し、最大特徴量に関する処理過程データを学習部130へと出力し、処理は終了する。
(ステップST714)
画像処理装置110は、変数iおよび変数jにそれぞれ1を加算する。ステップST714の処理の後、処理はステップST709へ戻る。
以上、N個の処理画像を用いた第1の実施形態に係る画像処理装置110の動作について説明した。上記までは、選択部において2つの特徴量を比較する構成について述べた。しかし、比較する特徴量の数は2に限らない。以下では、選択部において3つの特徴量を比較する例について、図8を用いて説明する。尚、図8の説明の際、比較対象として、選択部において2つの特徴量を比較する構成である図6を参照する。
図8は、図3の画像処理装置における特徴量抽出部および最大特徴量選択部の他の第2の構成例を示すブロック図である。第2の構成例は、図3または図6で示した選択部における2つの特徴量の比較を3つの特徴量の比較に拡張させたものである。よって、図8では、特徴量抽出部111を特徴量抽出部111Bとし、最大特徴量選択部113を最大特徴量選択部113Bとして説明する。尚、図8では、画像処理装置110におけるメモリ112および最適化部114の図示を省略している。
特徴量抽出部111Bは、処理画像生成部810と、第1の抽出部820-1から第Nの抽出部820-Nまでとを備える。最大特徴量選択部113Bは、第1の選択部830-1から第Lの選択部830-Lまでを備える。ここで、Lは(N-1)/2である。
前述の通り、図8と図6との違いは、選択部において比較する特徴量の数である。具体的には、図8の第1の選択部830-1は、第1の抽出部820-1から第1の特徴量を入力し、第2の抽出部820-2から第2の特徴量を入力し、第3の抽出部820-3から第3の特徴量を入力する。そして、第1の選択部830-1は、第1の特徴量から第3の特徴量までの3つの特徴量を比較することによって最も大きい特徴量を第1の選択特徴量として選択する。
また、図8では、メモリ112が保持する処理過程データの数も異なる。例えば、第1の選択部830-1において3つの特徴量を比較することから、第3の特徴量が抽出された時点において、メモリ112は、3つの処理過程データを保持している。
第1の選択部830-1において第1の選択特徴量が選択されると、メモリ112は、保持している3つの処理過程データのうちの不要データ(ここでは、選択されなかった2つの特徴量に対応する2つの処理過程データ)を解放する。この時点において、メモリ112は、1つの処理過程データを保持している。
次いで、第4の抽出部820-4において第4の特徴量が抽出され、第5の抽出部820-5において第5の特徴量が抽出されることによって、メモリ112は、再び3つの処理過程データを保持する状態となる。
更に、第2の選択部830-2は、第1の選択部830-1から第1の選択特徴量を入力し、第4の抽出部820-4から第4の特徴量を入力し、第5の抽出部820-5から第5の特徴量を入力する。そして、第2の選択部830-2は、第1の選択特徴量と第4の特徴量と第5の特徴量との3つの特徴量を比較することによって最も大きい特徴量を第2の選択特徴量として選択する。
第2の選択特徴量が選択されると、メモリ112は、保持している3つの処理過程データのうちの不要データを解放する。この時点において、メモリ112は、再び1つの処理過程データのみを保持する状態となる。
図8の構成を概括すると、第2の選択部830-2以降の選択部は、直前の選択部において選択された選択特徴量と、未選択の2つの特徴量との3つの特徴量を順次比較する構成である。また、第4の抽出部820-4以降の抽出部は、処理過程データをメモリ112へ出力する際に、メモリ112に多くとも2つの処理過程データを保持している状態で行われる。即ち、メモリ112は、3つの処理過程データを上限として保持する。
なお、図8では、画像処理装置110は、選択部において3つの特徴量を比較する構成の例を示したがこれに限らない。例えば、画像処理装置110は、選択部において4つ以上の特徴量を比較する構成でもよい。
以上のように、メモリ112に保持する処理過程データの上限と選択部において比較する特徴量の数とを一致させることによって、処理画像の個数に関わらず、メモリ112には、選択部において比較する特徴量の数と同数の処理過程データを上限として保持するだけでよい。
さらに、図8の構成では、第1の抽出部820-1、第2の抽出部820-2、および第3の抽出部820-3のそれぞれの抽出処理を並列して行ってよい。その後、第1の選択部830-1による選択処理が完了し、メモリ112から不要データが削除された後、第4の抽出部820-4および第5の抽出部820-5のそれぞれの抽出処理も並列して行ってよく、以降も同様である。よって、図8の構成によれば、抽出処理が並列して行えることにより、画像処理装置110は、図6の構成に比べて全体の処理時間を短縮することができる。
図8における抽出処理の並列化は、選択部において比較する特徴量の数が増えたとしても同様である。例えば、画像処理装置110は、選択部においてM個の特徴量を比較する場合、第1の選択処理で用いられるM個の特徴量に係る抽出処理を並列して行い、第2の選択処理以降で用いられるM-1個の特徴量に係る抽出処理を並列して行ってよい。換言すると、画像処理装置110は、選択部へ入力される抽出処理を経た直後の特徴量が複数ある場合、これら複数の特徴量を同時に生成してよい。
(処理画像の他の実施例)
上記では、入力画像を分割することによって複数の処理画像を生成する例について説明した。しかし、複数の処理画像は、入力画像の分割に限らない。以下では、入力画像を縮小することによって複数の処理画像を生成する例について、図9を用いて説明する。
図9は、入力画像900を縮小することによって2つの処理画像910および920を生成する例を示す説明図である。特徴量抽出部111は、縮小処理によって入力画像900を縮小させることによって縮小率の異なる2つの処理画像910および920を生成する。例えば、特徴量抽出部111は、入力画像900を1/2に縮小することによって処理画像910を生成し、入力画像900を1/4に縮小することによって処理画像920を生成する。尚、画像処理装置110の処理可能な画像サイズを満たす場合、入力画像900は、処理画像として用いてよい。
上記の縮小処理は、例えばバイリニアおよびバイキュービックなどの固定フィルタを用いてニューラルネットワークの処理とは別に行われてもよいし、上記固定フィルタを畳み込みフィルタとしてニューラルネットワークの一部として行われてもよい。後者の場合、畳み込みフィルタのパラメータを新たに学習する必要があるため、ニューラルネットワーク全体の学習速度が低下するものの、前者の場合に比べて、認識精度を向上させることが期待できる。
次に、図9のような縮小率の異なる処理画像を用いることのメリットについて説明する。以下では、2つの観点について説明する。
1つ目の観点は、縮小画像自体を学習することのメリットである。例えば、画像処理装置110を用いた推論時において、学習時とは異なる大きさの認識対象の物体が入力画像に含まれている場合、縮小画像を用いていない複数の処理画像を用いて学習したニューラルネットワークは、その物体を認識できない可能性がある。
一方、図9のような縮小率の異なる処理画像を用いた場合、例えば、処理画像としての入力画像900では物体をサイズAで学習し、処理画像910では物体をサイズA/2で学習し、処理画像920では物体をサイズA/4で学習することとなる。このとき、個別ニューラルネットワークのパラメータを共有していれば、画像処理装置110は、上記の何れのサイズの物体であっても認識させることができる。
更に、処理画像としての入力画像900にサイズ2Aの物体が写っていた場合であっても、処理画像910においてはサイズAに縮小されることから、画像処理装置110は、サイズ2Aの物体も認識させることができる。このことは、処理画像としての入力画像900にサイズ4Aの物体写っていた場合でも同様である。
よって、画像処理装置110は、縮小率の異なる処理画像を用いた学習および推論において個別ニューラルネットワークのパラメータを共有させることにより、推論時において学習時とは異なる大きさの認識対象の物体を認識させることができる。
2つ目の観点は、個別ニューラルネットワークに畳み込み処理を含めることのメリットである。そのために、まずニューラルネットワークによる畳み込み処理における受容野の概念について、図10を用いて説明する。
図10は、入力画像1010に対する2回の畳み込み処理における変換画像1020、中間画像1030、および受容野を例示する説明図である。図10では、入力画像1010に対して3×3画素の畳み込み処理を行って変換画像1020を生成し、変換画像1020に対しても同様に3×3画素の畳み込み処理を行って中間画像1030を生成する例が示されている。なお活性化処理などの図示は省略している。ここで、受容野とは、中間画像1030の1画素(例えば、画素1031)に影響を与える、変換画像1020の画素範囲1021および入力画像1010の画素範囲1011のことである。図10では、画素範囲1021は3×3画素であり、画素範囲1011は5×5画素である例が示されている。画素1031は、受容野である画素範囲1021および画素範囲1011のみに依存するため、この受容野以外の画素値がいくら変化しても影響はない。
なお、入力画像1010の受容野(画素範囲1011)は、中間画像1030のサイズ、および畳み込み処理のカーネル(例えば、3×3画素)が変わらない場合、変換画像を生成する畳み込み処理を増やすほど、即ち、畳み込み層の数を増やすほどその画素範囲が広くなる。
以上を踏まえて、図9のような縮小率の異なる処理画像それぞれについての畳み込み処理について考える。まず、3つの個別ニューラルネットワークは、いずれも複数の畳み込み層で構成される。また、これら複数の畳み込み層において、最後に畳み込み処理された変換画像を中間画像と呼ぶこととする。画像処理装置110は、中間画像に対して全結合処理やグローバルプーリング処理を適用して特徴量を生成する。
上記のように構成されたニューラルネットワークは、一般的に、中間画像までの処理において入力画像の特徴量の抽出を行い、その後の処理(上記の全結合処理およびグローバルプーリング処理)において特徴量を用いた識別を行う。従って、中間画像の各画素には、認識対象の物体の特徴が十分に反映されていることが望ましい。しかし、例えば、学習時よりも大きな物体が入力画像に含まれていると、入力画像の受容野よりも物体が大きくなってしまい、認識対象の物体の特徴が中間画像において十分に反映されないことがある。このことに対して、畳み込み層を増やすことにより入力画像の受容野の領域を広くすることが考えられるが、畳み込み層を増やした分だけ処理量が増えるという問題がある。
一方、縮小画像を用いてニューラルネットワークを学習することにより、複数の個別ニューラルネットワークの構造が同じであれば、それぞれの個別ニューラルネットワークにおいて入力画像に対する受容野の大きさは変わらない。よって、画像処理装置110は、学習時よりも大きな物体が入力画像に含まれていたとしても、いずれかの個別ニューラルネットワークにおいて認識対象の物体を認識させることができる。
また、先に述べたように、画像の縮小に用いる畳み込みフィルタのパラメータも個別ニューラルネットワークに学習させる場合、入力画像とは異なった様相の縮小画像になることがある。よって、画像処理装置110は、個別ニューラルネットワークのパラメータを異ならせて、画像の縮小率毎に個別ニューラルネットワークのパラメータを最適化させることが望ましい。
上記を概括すると、画像処理装置110は、入力画像を縮小した複数の処理画像を用いることにより、学習時に想定していた認識対象の物体のサイズとは異なるサイズの物体であっても認識することができる。
さらに、処理画像のサイズが小さくなれば処理過程データの容量も少なくすることができる。よって、画像処理装置110は、縮小率が最も高い処理画像から特徴量抽出処理を行うことによって、メモリ112に保持するデータの容量を低減することができる。
(最大特徴量選択部の他の構成例)
上記では、最大特徴量選択部における各々の選択部において、異なる選択部からの出力同士を比較する構成は例示していなかった。以下では、異なる選択部からの出力同士を比較する選択部を含む最大特徴量選択部の構成について、図11を用いて説明する。尚、図11では、説明を簡略化するため、4つの処理画像を用いることを想定する。
図11は、図1の画像処理装置110の他の構成例を示すブロック図である。他の構成例は、異なる選択部からの出力同士を比較する構成を含むものである。よって、図11では、特徴量抽出部111、メモリ112、最大特徴量選択部113、および最適化部114をそれぞれ特徴量抽出部111C、メモリ112C、最大特徴量選択部113C、および最適化部114Cとして説明する。
特徴量抽出部111Cは、処理画像生成部1110と、第1の抽出部1120-1から第4の抽出部1120-4までとを備える。最大特徴量選択部113Cは、第1の選択部1130-1から第3の選択部1130-3までを備える。
処理画像生成部1110は、入力画像に基づいて4つの処理画像を生成する。処理画像生成部1110は、4つの処理画像のうちの第1の処理画像を第1の抽出部1120-1へと出力し、第2の処理画像を第2の抽出部1120-2へと出力し、第3の処理画像を第3の抽出部1120-3へと出力し、第4の処理画像を第4の抽出部1120-4へと出力する。
第1の抽出部1120-1は、処理画像生成部1110から第1の処理画像を入力する。第1の抽出部1120-1は、第1の処理画像について、特徴量抽出処理に相当する第1の抽出処理を行うことによって第1の特徴量を生成する。第1の抽出部1120-1は、第1の特徴量を第1の選択部1130-1へと出力し、第1の抽出処理の過程で発生する第1の処理過程データをメモリ112Cへと出力する。
第1の特徴量が抽出された後、メモリ112Cは、第1の抽出部1120-1から第1の処理過程データを入力し、これを保持する。この時点において、メモリ112Cは、1つの処理過程データを保持している。
第2の抽出部1120-2は、処理画像生成部1110から第2の処理画像を入力する。第2の抽出部1120-2は、第2の処理画像について、特徴量抽出処理に相当する第2の抽出処理を行うことによって第2の特徴量を生成する。第2の抽出部1120-2は、第2の特徴量を第1の選択部1130-1へと出力し、第2の抽出処理の過程で発生する第2の処理過程データをメモリ112Cへと出力する。
なお、第2の抽出部1120-2における第2の抽出処理は、第1の抽出部1120-1における第1の抽出処理と同じタイミングで行われてよい。
第2の特徴量が抽出された後、メモリ112Cは、第2の抽出部1120-2から第2の処理過程データを入力し、これを保持する。この時点において、メモリ112Cは、2つの処理過程データを保持している。
第1の選択部1130-1は、第1の抽出部1120-1から第1の特徴量を入力し、第2の抽出部1120-2から第2の特徴量を入力する。第1の選択部1130-1は、第1の特徴量と第2の特徴量とを比較することによって大きい方を第1の選択特徴量として選択する。第1の選択部1130-1は、選択されなかった特徴量に関する第1の非選択情報を生成して最適化部114Cへと出力し、第1の選択特徴量を第3の選択部1130-3へと出力する。
第1の非選択情報が生成された後、最適化部114Cは、第1の選択部1130-1から第1の非選択情報を入力する。最適化部114Cは、第1の非選択情報に基づいて第1の解放指示情報を生成し、メモリ112Cへと出力する。
第1の解放指示情報が生成された後、メモリ112Cは、第1の解放指示情報を入力する。メモリ112Cは、第1の解放指示情報に従って、保持している2つの処理過程データのうちの不要データを解放する。この時点において、メモリ112Cは1つの処理過程データを保持している。
第3の抽出部1120-3は、処理画像生成部1110から第3の処理画像を入力する。第3の抽出部1120-3は、第3の処理画像について、特徴量抽出処理に相当する第3の抽出処理を行うことによって第3の特徴量を生成する。第3の抽出部1120-3は、第3の特徴量を第2の選択部1130-2へと出力し、第3の抽出処理の過程で発生する第3の処理過程データをメモリ112Cへと出力する。
なお、第3の抽出部1120-3における特徴量抽出処理は、第3の処理過程データをメモリ112Cへ出力する際に、メモリ112Cに1つの処理過程データしか保持されていないタイミングで行われる。または、第3の抽出部1120-3における特徴量抽出処理は、メモリ112Cにおいて1つの処理過程データを保持している状態で行われる。
第3の特徴量が抽出された後、メモリ112Cは、第3の抽出部1120-3から第3の処理過程データを入力し、これを保持する。この時点において、メモリ112Cは、2つの処理過程データを保持している。
第4の抽出部1120-4は、処理画像生成部1110から第4の処理画像を入力する。第4の抽出部1120-4は、第4の処理画像について、特徴量抽出処理に相当する第4の抽出処理を行うことによって第4の特徴量を生成する。第4の抽出部1120-4は、第4の特徴量を第2の選択部1130-2へと出力し、第4の抽出処理の過程で発生する第4の処理過程データをメモリ112Cへと出力する。
なお、第4の抽出部1120-4における第4の抽出処理は、第3の抽出部1120-3における第3の抽出処理と同じタイミングで行われてよい。
第4の特徴量が抽出された後、メモリ112Cは、第4の抽出部1120-4から第4の処理過程データを入力し、これを保持する。この時点において、メモリ112Cは、3つの処理過程データを保持している。
図11の構成を概括すると、図6のように選択部において2つの特徴量を比較する構成の組み合わせではあるものの、異なる選択部からの出力(即ち、2つの選択特徴量)同士を比較する構成が含まれる。これにより、メモリ112Cには3つの処理過程データを保持することとなるが、特徴量抽出部111Cは、2つの抽出部によって同時に抽出処理を行うことができる。即ち、特徴量抽出部111Cは、4つの特徴量を2つの特徴量毎に生成することができる。
更に、N個の処理画像について複数の特徴量の比較をする選択部まで拡張させると、特徴量抽出部111Cは、N個の特徴量を複数の特徴量毎に生成することができる。これにより、画像処理装置110は、従来よりもメモリの使用量を低減しつつ、特徴量抽出処理のスループットを向上させることができる。
以上、異なる選択部からの出力同士を比較する選択部を含む最大特徴量選択部の構成について説明した。次に、このような構成を有する画像処理装置110の動作について、図12を用いて説明する。
図12は、第1の実施形態に係る画像処理装置110の他の動作を例示するフローチャートである。図12のフローチャートは、1つの入力画像についての最大特徴量選択処理の一連の流れを示している。また、図12のフローチャートは、図11で示したような、選択部において2つの選択特徴量の比較も含む構成を前提とし、処理画像の数をN個まで拡張させている。以降では、図1および図11の各部を参照して説明する。
(ステップST1201)
画像処理装置110が入力画像を取得すると、処理画像生成部1110は、入力画像に基づくN個(N≧4)の処理画像を生成する。
(ステップST1202)
ステップST1202の処理は、図7のステップST702からステップST707までの処理と同様である。具体的には、第1の抽出部1120-1は、第1の処理画像について第1の抽出処理を行うことによって第1の特徴量を生成する。メモリ112Cは、第1の抽出処理の過程で発生する第1の処理過程データを保持する。第2の抽出部1120-2は、第2の処理画像について第2の抽出処理を行うことによって第2の特徴量を生成する。メモリ112Cは、第2の抽出処理の過程で発生する第2の処理過程データを保持する。第1の選択部1130-1は、第1の特徴量と第2の特徴量とを比較することによって大きい方を第1の選択特徴量として選択する。最適化部114Cは、第1の特徴量と第2の特徴量との比較において選択されなかった特徴量に対応する処理過程データをメモリ112Cから解放させる。
(ステップST1203)
画像処理装置110は、変数iおよび変数jを定義し、それぞれ3および2を代入する。
(ステップST1204)
第iの抽出部620-iは、第iの処理画像について第iの抽出処理を行うことによって第iの特徴量を生成する。
(ステップST1205)
メモリ112Cは、第iの抽出処理の過程で発生する第iの処理過程データを保持する。この時、メモリ112Cは、2つの処理過程データを保持している。
(ステップST1206)
第(i+1)の抽出部620-(i+1)は、第(i+1)の処理画像について第(i+1)の抽出処理を行うことによって第(i+1)の特徴量を生成する。
(ステップST1207)
メモリ112Cは、第(i+1)の抽出処理の過程で発生する第(i+1)の処理過程データを保持する。この時、メモリ112Cは、3つの処理過程データを保持している。
(ステップST1208)
第(i-1)の選択部1130-(i-1)は、第iの特徴量と第(i+1)の特徴量とを比較することによって大きい方を第jの選択特徴量として選択する。
(ステップST1209)
最適化部114Cは、第iの特徴量と第(i+1)の特徴量との比較において選択されなかった特徴量に対応する処理過程データをメモリ112Cから解放させる。これにより、メモリ112Cは、2つの処理過程データを保持する。
(ステップST1210)
第iの選択部1130-iは、第(j-1)の選択特徴量と第jの選択特徴量とを比較することによって大きい方を第(j+1)の選択特徴量として選択する。
(ステップST1211)
最適化部114Cは、第(j-1)の選択特徴量と第jの選択特徴量との比較において選択されなかった特徴量に対応する処理過程データをメモリ112Cから解放させる。これにより、メモリ112Cは、1つの処理過程データだけを保持する。
(ステップST1212)
画像処理装置110は、変数iがN-1であるか否かを判定する。変数iがN-1ではない場合、処理はステップST1213へ進む。他方、変数iがN-1である場合、画像処理装置110は、直前の選択処理において選択された選択特徴量を最大特徴量として誤差算出部120へと出力し、最大特徴量に関する処理過程データを学習部130へと出力し、処理は終了する。
(ステップST1213)
画像処理装置110は、変数iおよび変数jにそれぞれ2を加算する。ステップST1213の後、処理はステップST1204へ戻る。
なお、ステップST1204およびステップST1206の処理は、それぞれ同じタイミングで行われてもよい。
(特徴量抽出部の他の実施例)
上記では、入力画像を基準とした複数の処理画像を用いて、複数の処理画像のそれぞれについて特徴量抽出処理を行う構成であった。換言すると、上記の構成は、複数の処理画像それぞれについて個別ニューラルネットワークを用いていた。以下では、入力画像に対して1つのニューラルネットワークを用いた処理を行いつつも、従来よりもメモリ容量を低減可能な構成について、図13から図15までを用いて説明する。
図13は、図6の画像処理装置110における特徴量抽出部111Aおよび最大特徴量選択部113Aの他の第3の構成例を示すブロック図である。第3の構成例は、図6で示したN個の特徴量を用いた処理をベースとして、N個の処理画像についての取り扱いを変更させたものである。よって、図13では、特徴量抽出部111Aを特徴量抽出部111Dとし、最大特徴量選択部113Aを最大特徴量選択部113Dとして説明する。尚、図13では、画像処理装置110におけるメモリ112および最適化部114の図示を省略している。
特徴量抽出部111Dは、畳み込み処理部1310を備える。最大特徴量選択部113Dは、第1の選択部1320-1から第Lの選択部1320-Lまでを備える。ここで、LはN-1である。
畳み込み処理部1310は、特徴量抽出処理としての畳み込み処理を行うことによって入力画像から中間画像を生成し、中間画像を縦横1画素以上のN個のブロックに分解し、N個のブロックのそれぞれについてN個の特徴量を生成する。この時、畳み込み処理部1310は、畳み込み処理を入力画像全体に対して一度には行わずに、特定の領域単位で行う。特定の領域とは、中間画像におけるブロックに影響を与える入力画像における領域を示す。以下では、入力画像および中間画像の関係について図14を用いて説明する。
図14は、入力画像1410に対する畳み込み処理における複数の変換画像1420、中間画像1430、および受容野1440を例示する説明図である。通常、畳み込み処理によって、入力画像1410から変換画像1420を生成し、畳み込み処理を繰り返すことによって最後に生成される変換画像である中間画像1430が生成される。この時、中間画像1430におけるブロック1431は、変換画像1420における領域および入力画像1410における領域と対応関係(受容野1440)がある。中間画像の例として図15を用いて説明する。
図15は、畳み込み処理の処理単位毎に分割した中間画像1500である。図15では、縦横を4×6のブロックに分割した中間画像1500の例が示されている。分割された各ブロックは、上述した特定の領域に相当する。即ち、畳み込み処理部1310は、通常の畳み込み処理によって生成される中間画像1500を、特定のブロック毎に生成する。これにより、畳み込み処理部1310は、複数の処理画像をそれぞれ個別ニューラルネットワークで行っていた処理と同等の処理を、1つのニューラルネットワークで行うことができる。
具体的には、畳み込み処理部1310は、中間画像1500におけるブロック1510の受容野に基づいて入力画像の領域を特定し、これを第1の処理画像とみなして特徴量抽出処理を行う。ブロック1510に後続するブロック1520は第2の処理画像に対応し、更に後続するブロック1530は第3の処理画像に対応する。そして、畳み込み処理部1310は、最後のブロック1540に対応する第24の処理画像の特徴量抽出処理を行った後、入力画像に対する処理を終了する。
なお、上記で説明した図13の特徴量抽出部111Dは、特徴量の抽出方法が他の特徴量抽出部と異なるだけであり、以降の最大特徴量選択部113Dによる処理は、例えば図6の最大特徴量選択部113Aと同様の処理を行えばよい。
また、入力画像に対する中間画像および受容野の関係は、任意に設定可能である。例えば、中間画像の隣接するブロックのそれぞれについて、入力画像の領域を重複するような受容野を設定することにより、図5で説明したような処理画像とみなして特徴量抽出処理を行うことができる。
(入力画像の他の実施例)
上記では、1チャンネルの入力画像(例えば、白黒画像)を想定して説明した。しかし、入力画像はRGBのカラー画像でもよい。入力画像をカラー画像とした場合、画像処理装置110は、一つの入力画像を、Red成分、Green成分、およびBlue成分の縦横の画素数が同じ3枚の画像、いわゆる3チャンネルの画像として扱う。この場合、画像処理装置110は、3×3画素×3チャンネルなどの3次元のカーネルを用いる。また、画像処理装置110は、特徴量抽出処理において、2チャンネル以上の変換処理を行ってもよい。ニューラルネットワークを用いた画像認識処理においては、一般的に変換画像のチャンネル数を多くするほど認識精度が高くなることが知られている。よって、本実施形態においても、必要に応じてチャンネル数を設定すればよい。
(特徴量の他の実施例)
上記では、特徴量は、スカラー値として生成されることを想定して説明した。しかし、特徴量は複数の要素を有するベクトルでもよい。例えば、ひびと汚れなど種類が異なる物体を区別して、それらを同時に認識する場合、画像処理装置110は、認識対象の物体の種類の数と同じ数の次元のベクトルを特徴量として生成する。
具体的には、画像処理装置110は、個別ニューラルネットワークにおける最後の処理で全結合を行う場合には、全結合の出力のチャンネル数を認識する種類の数に合わせ、それらを並べて特徴量とする。または、画像処理装置110は、個別ニューラルネットワークにおける最後の処理で平均値プーリングや最大値プーリングを行う場合には、中間画像のチャンネル数を認識する種類の数に合わせておき、チャンネルごとにプーリングした値を並べて特徴量のベクトルとする。複数のチャンネルを有する中間画像とそれぞれの特徴量とについて、図16を用いて説明する。
図16は、複数のチャンネルを有する中間画像とチャンネル毎の特徴量との関係を例示する説明図である。図16では、4つのチャンネル1610から1640までを有する中間画像が示されている。画像処理装置110は、この中間画像について、チャンネル1610に対応する個別特徴量1611、チャンネル1620に対応する個別特徴量1621、チャンネル1630に対応する個別特徴量1631、およびチャンネル1640に対応する個別特徴量1641を並べたベクトルとして特徴量を生成する。
次に、特徴量がベクトルの場合の選択部、最適化部、および誤差算出部における処理について説明する。以降の説明では、特徴量が2つの要素を有するベクトルの場合について説明する。例えば、選択部は、2つの特徴量を比較する際、それぞれの特徴量のベクトルの要素毎に比較を行い、要素毎の大きい方を選択したベクトルを選択特徴量として出力する。この時、最適化部は、ベクトルの各要素がいずれも選択されなかった特徴量に関する処理過程データをメモリから解放させる。また、誤差算出部は、最大特徴量の各要素と、ベクトルの要素毎にそれぞれ対応する正解特徴量とに基づいてベクトルで表される誤差値を算出する。
以上のように、特徴量をベクトルにすることで、種類が異なる物体を区別して、同時に認識することが可能になる。また、この場合においても、画像処理装置110は、従来のように全ての処理過程データをメモリに保持する必要はなく、メモリの容量を少なくすることができる。
なお、個別ニューラルネットワークにおいて、各チャンネルを独立に、互いのデータ値が他に影響しない構成にした場合は、選択部における要素ごとの比較において、2つの特徴量のうちの選択されなかった要素に関する処理過程データをメモリから解放させる。これにより、メモリ容量をさらに削減することができる。
以上説明したように、第1の実施形態に係る画像処理装置は、入力画像に基づくN個(N≧3)の処理画像について、ニューラルネットワークを用いた特徴量抽出処理を行うことによってN個の特徴量を生成し、特徴量抽出処理の過程で発生する処理過程データをメモリに保持し、N個の特徴量のうちの2個以上N-1個以下であるM個の組み合わせで2回以上の比較を行うことによって最大特徴量を選択し、2回以上の比較毎に、選択されなかったM-1個以下の特徴量に対応するM-1個以下の処理過程データをメモリから解放させる。
従って、第1の実施形態に係る画像処理装置は、入力画像における最大特徴量を抽出するまでの過程において、不要な処理過程データをメモリから随時解放することができるため、ニューラルネットワークを用いた画像処理に必要なメモリ容量を低減することができる。
また、第1の実施形態に係る画像処理装置を含む学習装置は、最大特徴量と入力画像に対応する正解特徴量とに基づいて誤差値を算出し、メモリが最終的に保持している最大特徴量に関する処理過程データと誤差値とに基づいてニューラルネットワークを学習する。
従って、上記学習装置は、ニューラルネットワークの学習時において必要なメモリ容量を低減することができる。
(第2の実施形態)
第1の実施形態では、画像処理装置を含む学習装置について説明した。他方、第2の実施形態では、画像処理装置を含む推論装置について説明する。第2の実施形態に係る画像処理装置の構成は、第1の実施形態に係る画像処理装置の構成と略同様である。一方で、第2の実施形態に係る画像処理装置は、メモリに保持される処理過程データの種類が第1の実施形態に係る画像処理装置と異なる。
図17は、第2の実施形態に係る画像処理装置1710を含む推論装置1700の構成を例示するブロック図である。推論装置1700は、画像処理装置1710(画像処理部)と、出力部1720とを備える。画像処理装置1710は、特徴量抽出部1711と、メモリ1712と、最大特徴量選択部1713と、最適化部1714とを備える。
なお、推論装置1700は、ニューラルネットワークによる推論に用いる入力画像を取得する取得部を備えてもよい。また、推論装置1700は、各部を制御するための制御部を備えてもよい。
特徴量抽出部1711、メモリ1712、最大特徴量選択部1713、および最適化部1714は、例えば図1の特徴量抽出部111、メモリ112、最大特徴量選択部113、および最適化部114と略同様の構成であるため重複する説明を省略する。
メモリ1712は、最大特徴量に関する処理過程データを出力部1720へと出力する点において、図1のメモリ112と異なる。最大特徴量選択部1713は、最大特徴量を出力部1720へと出力する点において、図1の最大特徴量選択部113と異なる。
出力部1720は、最大特徴量選択部1713から最大特徴量を入力し、メモリ1712から最大特徴量に関する処理過程データを入力する。出力部1720は、最大特徴量に基づいて推論結果を生成し、他の装置へと出力する。推論結果は、例えば、入力画像において認識対象の物体が存在しているか否かを表す情報である。
具体的には、出力部1720は、最大特徴量としきい値とを比較することによって推論結果を生成する。例えば、出力部1720は、最大特徴量がしきい値以下の場合、入力画像において認識対象の物体が存在していないことを表す推論結果を出力し、最大特徴量がしきい値よりも大きい場合、入力画像において認識対象の物体が存在していることを表す推論結果を出力する。尚、最大特徴量が「0」から「1」までの値で表されている場合、しきい値は例えば「0.5」である。
次に、画像処理装置1710が扱う処理過程データの種類について説明する。第2の実施形態における処理過程データは、例えば、中間画像の一部である。この処理過程データは、後述する推論結果を提示する際に利用されるため、推論結果の提示に必要なデータに言い換えられてもよい。尚、第2の実施形態における処理過程データは、更に処理画像を含んでもよい。
中間画像を保持しておく意義として、最大特徴量に対応する中間画像は、入力画像における物体位置に対応し、その画素値が大きくなることが知られている。このことは、例えば、非特許文献「微小オブジェクト検出のためのニューラルネットワーク」(ビジョン技術の実利用ワークショップ, IS1-03, pp.32-37, Dec. 2020.)に示されている。よって、メモリに中間画像を保持しておくことにより、推論結果を提示する際に、中間画像において画素値が大きくなった部分を示した入力画像を併せて表示させることができる。この表示により、ユーザは、認識結果を目視で確認できるため、ニューラルネットワークの説明性を向上させることができる。
次に、処理過程データとしての中間画像と、メモリに記憶される中間画像のうちの部分画像との関係について図18から図20までを用いて説明する。
図18は、畳み込み処理済みの部分画像とメモリに保持される部分画像データとの関係を例示する説明図である。図18では、中間画像1800のうち、最初の2つの部分画像1810および1820に対して特徴量抽出処理を行った後の状態が示されている。この例では、部分画像1820は、認識対象の物体を含み、物体の位置する画素値が大きくなっている。この時、メモリ1712には、部分画像1810に対応する部分画像データ1811と、部分画像1820に対応する部分画像データ1821とが保持されている。その後、最大特徴量選択部1713は、選択処理によって部分画像1820に対応する特徴量を選択したものとする。
図19は、メモリから解放される部分画像データを例示する説明図である。図19では、選択処理によって選択された部分画像1820のみが示されている。この時、メモリ1712には、部分画像データ1821のみが保持され、選択処理によって選択されなかった部分画像1810に対応する部分画像データ1811を解放したことによる空き領域1900ができている。その後、特徴量抽出部1711は、新たな部分画像に対して特徴量抽出処理を行うものとする。
図20は、メモリに保持される新たな部分画像データを例示する説明図である。図20では、中間画像1800のうち、部分画像1820に後続する部分画像1830に対して特徴量抽出処理を行った後の状態が示されている。この時、メモリ1712には、部分画像データ1811と、部分画像1830に対応する部分画像データ1831とが保持されている。
以降、画像処理装置1710は、中間画像1800のうちの他の部分画像についても、メモリ1712への部分画像データの保持と解放とを繰り返しながら処理を進める。そして、画像処理装置1710は、最終的にメモリ1712に保持されている部分画像データを処理過程データとして出力部1720へと出力する。
なお、出力部1720は、部分画像データを含む処理過程データと入力画像とに基づいて合成画像を生成してもよい。合成画像は、例えば、ブレンド合成により入力画像に写っている認識対象の物体の画素を強調させた画像である。換言すると、合成画像は、入力画像に推論結果を可視化して反映させたものである。この時、出力部1720は、メモリ1712に保持されていない部分画像データを補間することによって補間中間画像を生成してもよい。補間中間画像について図21を用いて説明する。
図21は、部分画像1820から生成された補間中間画像2100である。出力部1720は、部分画像1820以外の領域2110に対して、例えばゼロパディングを行うことによって補間中間画像2100を生成する。これにより、入力画像に対応する中間画像を復元することができるため、出力部1720は、合成することができる。尚、部分画像および補間中間画像は、推論結果の内容を表すものとみなせることから、推論結果を可視化した推論画像と呼ばれてもよい。
(最大特徴量選択部の他の構成例)
第1の実施形態で述べた学習装置と異なり、推論装置におけるメモリは、所定の条件を満たすことにより、選択されなかった特徴量に関する処理過程データを保持してもよい。所定の条件とは、特徴量がしきい値以上の場合である。具体的には、最大特徴量選択部1713の各々の選択部は、選択されなかった特徴量に対してしきい値との比較処理を行う。そして、最大特徴量選択部1713は、選択されなかった特徴量がしきい値以上の場合に、その特徴量に関する非選択情報を生成しない。これにより、メモリ1712に複数の処理過程データが保持されることから、推論装置1700は、入力画像に認識対象の物体が複数含まれる場合に対応することができる。この場合、推論装置1700は、最大特徴量としきい値以上の特徴量とに基づいて推論結果を出力してもよい。
以上説明したように、第2の実施形態に係る画像処理装置は、第1の実施形態に係る画像処理装置と同様に、入力画像に基づくN個(N≧3)の処理画像について、ニューラルネットワークを用いた特徴量抽出処理を行うことによってN個の特徴量を生成し、特徴量抽出処理の過程で発生する処理過程データをメモリに保持し、N個の特徴量のうちの2個以上N-1個以下であるM個の組み合わせで2回以上の比較を行うことによって最大特徴量を選択し、2回以上の比較毎に、選択されなかったM-1個以下の特徴量に対応するM-1個以下の処理過程データをメモリから解放させる。
従って、第2の実施形態に係る画像処理装置は、第1の実施形態に係る画像処理装置と同様の効果が見込める。
また、第2の実施形態に係る画像処理装置を含む推論装置は、最大特徴量に基づいて入力画像において認識対象の物体が存在しているか否かを表す推論結果を出力する。更に、上記推論装置は、画像処理装置における2回以上の比較毎に、M個の特徴量それぞれとしきい値とを更に比較し、2回以上の比較毎に、選択されなかったM-1個以下の特徴量のうち、しきい値以上の特徴量に対応する処理過程データをメモリから解放させない。更に、上記推論装置は、最大特徴量としきい値以上の特徴量とに基づいて推論結果を出力する。更に、上記推論装置は、処理過程データが推論結果を可視化した推論画像とした場合、更に、入力画像と推論画像とに基づいて入力画像に写っている認識対象の物体の画素を強調させた画像を出力する。
従って、上記推論装置は、ニューラルネットワークを用いた推論時において必要なメモリ容量を低減することができる。
(ハードウェア構成)
図22は、一実施形態に係るコンピュータ2200のハードウェア構成を例示するブロック図である。コンピュータ2200は、ハードウェアとして、CPU(Central Processing Unit)2210、RAM(Random Access Memory)2220、プログラムメモリ2230、補助記憶装置2240、入出力インタフェース2250を備える。CPU2210は、バス2260を介して、RAM2220、プログラムメモリ2230、補助記憶装置2240、および入出力インタフェース2250と通信する。
CPU2210は、汎用プロセッサの一例である。RAM2220は、ワーキングメモリとしてCPU2210に使用される。RAM2220は、SDRAM(Synchronous Dynamic Random Access Memory)などの揮発性メモリを含む。プログラムメモリ2230は、最大特徴量選択処理に関するプログラム(最大特徴量選択プログラム)などを含む種々のプログラムを記憶する。プログラムメモリ2230として、例えば、ROM(Read-Only Memory)、補助記憶装置2240の一部、またはその組み合わせが使用される。補助記憶装置2240は、データを非一時的に記憶する。補助記憶装置2240は、HDDまたはSSDなどの不揮発性メモリを含む。
入出力インタフェース2250は、他のデバイスと接続するためのインタフェースである。入出力インタフェース2250は、例えば、他の装置との接続に使用される。
プログラムメモリ2230に記憶されている各プログラムはコンピュータ実行可能命令を含む。プログラム(コンピュータ実行可能命令)は、CPU2210により実行されると、CPU2210に所定の処理を実行させる。例えば、最大特徴量選択プログラムなどは、CPU2210により実行されると、CPU2210に図1、3、6、8、11、13、および17の各部に関して説明された一連の処理を実行させる。
プログラムは、コンピュータで読み取り可能な記憶媒体に記憶された状態でコンピュータ2200に提供されてよい。この場合、例えば、コンピュータ2200は、記憶媒体からデータを読み出すドライブ(図示せず)をさらに備え、記憶媒体からプログラムを取得する。記憶媒体の例は、磁気ディスク、光ディスク(CD-ROM、CD-R、DVD-ROM、DVD-Rなど)、光磁気ディスク(MOなど)、半導体メモリを含む。また、プログラムを通信ネットワーク上のサーバに格納し、コンピュータ2200が入出力インタフェース2250を使用してサーバからプログラムをダウンロードするようにしてもよい。
実施形態において説明される処理は、CPU2210などの汎用ハードウェアプロセッサがプログラムを実行することにより行われることに限らず、ASIC(Application Specific Integrated Circuit)などの専用ハードウェアプロセッサにより行われてもよい。処理回路(処理部)という語は、少なくとも一つの汎用ハードウェアプロセッサ、少なくとも一つの専用ハードウェアプロセッサ、または少なくとも一つの汎用ハードウェアプロセッサと少なくとも一つの専用ハードウェアプロセッサとの組み合わせを含む。図22に示す例では、CPU2210、RAM2220、およびプログラムメモリ2230が処理回路に相当する。
よって、以上の各実施形態によれば、ニューラルネットワークを用いた画像処理に必要なメモリ容量を低減することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
100…学習装置、110…画像処理装置、111…特徴量抽出部、112…メモリ、113…最大特徴量選択部、114…最適化部、120…誤差算出部、130…学習部、200,400,500,900,1010,1410…入力画像、210,220,230,410,420,430,440,510,520,530,540,910,920…処理画像、1011,1021…画素範囲、1020,1420…変換画像、1030,1430,1500,1800…中間画像、1031…画素、1431,1510,1520,1530,1540…ブロック、1440…受容野、1610,1620,1630,1640…チャンネル、1611,1621,1631,1641…個別特徴量、1700…推論装置、1710…画像処理装置、1711…特徴量抽出部、1712…メモリ、1713…最大特徴量選択部、1714…最適化部、1720…出力部、1810,1820,1830…部分画像、1811,1821,1831…部分画像データ、1900…領域、2100…補間中間画像、2110…領域、2200…コンピュータ、2230…プログラムメモリ、2240…補助記憶装置、2250…入出力インタフェース、2260…バス。

Claims (21)

  1. 入力画像に基づくN個(N≧3)の処理画像について、ニューラルネットワークを用いた特徴量抽出処理を行うことによってN個の特徴量を生成する特徴量抽出部と、
    前記特徴量抽出処理の過程で発生する処理過程データを保持するメモリと、
    前記N個の特徴量のうちの2個以上N-1個以下であるM個の組み合わせで2回以上の比較を行うことによって最大特徴量を選択する最大特徴量選択部と、
    前記2回以上の比較毎に、選択されなかったM-1個以下の特徴量に対応するM-1個以下の処理過程データを前記メモリから解放させる最適化部と
    を具備する、画像処理装置。
  2. 前記特徴量抽出部は、前記入力画像の一部を切り出すことによって前記N個の処理画像を生成する、
    請求項1に記載の画像処理装置。
  3. 前記特徴量抽出部は、前記N個の特徴量を生成する際に、同じパラメータの前記ニューラルネットワークを用いて前記特徴量抽出処理を行う、
    請求項1または請求項2に記載の画像処理装置。
  4. 前記特徴量抽出部は、前記入力画像を縮小させることによって縮小率の異なる前記N個の処理画像を生成する、
    請求項1に記載の画像処理装置。
  5. 前記特徴量抽出部は、前記N個の特徴量を生成する際に、それぞれ異なるパラメータの前記ニューラルネットワークを用いて前記特徴量抽出処理を行う、
    請求項4に記載の画像処理装置。
  6. 前記N個の処理画像は、前記入力画像に対して畳み込み処理を行って生成されうる中間画像を縦横1画素以上のN個のブロックに分解した前記N個のブロックにそれぞれ対応する前記入力画像におけるN個の領域に相当し、
    前記特徴量抽出処理は、前記畳み込み処理であり、
    前記特徴量抽出部は、前記N個の領域について、前記畳み込み処理を行うことによって前記N個のブロックのそれぞれに対応する前記N個の特徴量を生成する、
    請求項1に記載の画像処理装置。
  7. 前記特徴量抽出部は、前記N個のブロックのそれぞれについて、加算、平均、または最大値を選択することによって前記N個の特徴量を生成する、
    請求項6に記載の画像処理装置。
  8. 前記N個の特徴量のそれぞれは、複数の要素を持つベクトルである、
    請求項1から請求項5までのいずれか一項に記載の画像処理装置。
  9. 前記最大特徴量選択部は、前記2回以上の比較のそれぞれにおいて、前記複数の要素毎に比較を行うことによって大きい要素を選択し、
    前記最大特徴量は、前記N個の特徴量のうちの最も大きい要素を組み合わせたベクトルに相当する、
    請求項8に記載の画像処理装置。
  10. 前記最適化部は、更に、前記最大特徴量を選択するための比較毎に、選択されなかった要素に対応する処理過程データを前記メモリから解放させる、
    請求項9に記載の画像処理装置。
  11. 前記特徴量抽出部は、前記N個の特徴量をそれぞれシーケンシャルに、または複数の特徴量毎に生成する、
    請求項1から請求項10までのいずれか一項に記載の画像処理装置。
  12. 前記メモリは、M個の特徴量に対応するM個の処理過程データを上限として保持する、
    請求項1から請求項11までのいずれか一項に記載の画像処理装置。
  13. 前記最大特徴量選択部は、前記2回以上の比較において、前記M個の組み合わせの個数が異なる比較を含む、
    請求項1から請求項12までのいずれか一項に記載の画像処理装置。
  14. 前記N個の処理画像は、第1の処理画像と、第2の処理画像と、第3の処理画像とを含み、
    前記特徴量抽出処理は、第1の抽出処理と、第2の抽出処理と、第3の抽出処理とを含み、
    前記N個の特徴量は、第1の特徴量と、第2の特徴量と、第3の特徴量とを含み、
    前記特徴量抽出部は、第1の抽出部と、第2の抽出部と、第3の抽出部とを含み、
    前記最大特徴量選択部は、第1の選択部と、第2の選択部とを含み、
    前記第1の抽出部は、前記第1の処理画像について前記第1の抽出処理を行うことによって前記第1の特徴量を生成し、
    前記メモリは、前記第1の抽出処理の過程で発生する第1の処理過程データを保持し、
    前記第2の抽出部は、前記第2の処理画像について前記第2の抽出処理を行うことによって前記第2の特徴量を生成し、
    前記メモリは、前記第2の抽出処理の過程で発生する第2の処理過程データを保持し、
    前記第1の選択部は、前記第1の特徴量と前記第2の特徴量とを比較することによって大きい方を第1の選択特徴量として選択し、
    前記最適化部は、前記第1の選択部による選択において、選択されなかった特徴量に対応する処理過程データを前記メモリから解放させ、
    前記第3の抽出部は、前記第3の処理画像について前記第3の抽出処理を行うことによって前記第3の特徴量を生成し、
    前記メモリは、前記第3の抽出処理の過程で発生する第3の処理過程データを保持し、
    前記第2の選択部は、前記第1の選択特徴量と前記第3の特徴量とを比較することによって大きい方を第2の選択特徴量として選択し、
    前記最適化部は、前記第2の選択部による選択において、選択されなかった特徴量に対応する処理過程データを前記メモリから解放させる、
    請求項1に記載の画像処理装置。
  15. 前記Nは4以上であり、
    前記N個の処理画像は、第1の処理画像と、第2の処理画像と、第3の処理画像と、第4の処理画像とを含み、
    前記特徴量抽出処理は、第1の抽出処理と、第2の抽出処理と、第3の抽出処理と、第4の抽出処理とを含み、
    前記N個の特徴量は、第1の特徴量と、第2の特徴量と、第3の特徴量と、第4の特徴量とを含み、
    前記特徴量抽出部は、第1の抽出部と、第2の抽出部と、第3の抽出部と、第4の抽出部とを含み、
    前記最大特徴量選択部は、第1の選択部と、第2の選択部と、第3の選択部とを含み、
    前記第1の抽出部は、前記第1の処理画像について前記第1の抽出処理を行うことによって前記第1の特徴量を生成し、
    前記メモリは、前記第1の抽出処理の過程で発生する第1の処理過程データを保持し、
    前記第2の抽出部は、前記第2の処理画像について前記第2の抽出処理を行うことによって前記第2の特徴量を生成し、
    前記メモリは、前記第2の抽出処理の過程で発生する第2の処理過程データを保持し、
    前記第1の選択部は、前記第1の特徴量と前記第2の特徴量とを比較することによって大きい方を第1の選択特徴量として選択し、
    前記最適化部は、前記第1の選択部による選択において、選択されなかった特徴量に対応する処理過程データを前記メモリから解放させ、
    前記第3の抽出部は、前記第3の処理画像について前記第3の抽出処理を行うことによって前記第3の特徴量を生成し、
    前記メモリは、前記第3の抽出処理の過程で発生する第3の処理過程データを保持し、
    前記第4の抽出部は、前記第4の処理画像について前記第4の抽出処理を行うことによって前記第4の特徴量を生成し、
    前記メモリは、前記第4の抽出処理の過程で発生する第4の処理過程データを保持し、
    前記第2の選択部は、前記第3の特徴量と前記第4の特徴量とを比較することによって大きい方を第2の選択特徴量として選択し、
    前記最適化部は、前記第2の選択部による選択において、選択されなかった特徴量に対応する処理過程データを前記メモリから解放させ、
    前記第3の選択部は、前記第1の選択特徴量と前記第2の選択特徴量とを比較することによって大きい方を第3の選択特徴量として選択し、
    前記最適化部は、前記第3の選択部による選択において、選択されなかった特徴量に対応する処理過程データを前記メモリから解放させる、
    請求項1に記載の画像処理装置。
  16. 請求項1から請求項15までのいずれか一項に記載の画像処理装置と、
    前記最大特徴量と前記入力画像に対応する正解特徴量とに基づいて誤差値を算出する誤差算出部と、
    前記メモリが最終的に保持している前記最大特徴量に関する処理過程データと前記誤差値とに基づいて前記ニューラルネットワークを学習する学習部と
    を具備する、学習装置。
  17. 請求項1から請求項15までのいずれか一項に記載の画像処理装置と、
    前記最大特徴量に基づいて前記入力画像において認識対象の物体が存在しているか否かを表す推論結果を出力する出力部と
    を具備する、推論装置。
  18. 前記最大特徴量選択部は、前記2回以上の比較毎に、前記M個の特徴量それぞれとしきい値とを更に比較し、
    前記最適化部は、前記2回以上の比較毎に、前記選択されなかったM-1個以下の特徴量うち、前記しきい値以上の特徴量に対応する処理過程データを前記メモリから解放させない、
    請求項17に記載の推論装置。
  19. 前記出力部は、前記最大特徴量と前記しきい値以上の特徴量とに基づいて前記推論結果を出力する、
    請求項18に記載の推論装置。
  20. 前記処理過程データは、前記推論結果を可視化した推論画像であり、
    前記出力部は、更に、前記入力画像と前記推論画像とに基づいて前記入力画像に写っている前記認識対象の物体の画素を強調させた画像を出力する、
    請求項17から請求項19までのいずれか一項に記載の推論装置。
  21. 入力画像に基づくN個(N≧3)の処理画像について、ニューラルネットワークを用いた特徴量抽出処理を行うことによってN個の特徴量を生成することと、
    前記特徴量抽出処理の過程で発生する処理過程データをメモリに保持することと、
    前記N個の特徴量のうちの2個以上N-1個以下であるM個の組み合わせで2回以上の比較を行うことによって最大特徴量を選択することと、
    前記2回以上の比較毎に、選択されなかったM-1個以下の特徴量に対応するM-1個以下の処理過程データを前記メモリから解放させることと
    を具備する、画像処理方法。
JP2022019857A 2022-02-10 2022-02-10 画像処理装置、学習装置、推論装置、および画像処理方法 Active JP7635170B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022019857A JP7635170B2 (ja) 2022-02-10 2022-02-10 画像処理装置、学習装置、推論装置、および画像処理方法
US17/930,755 US12277751B2 (en) 2022-02-10 2022-09-09 Image processing apparatus, learning apparatus, inference apparatus, and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022019857A JP7635170B2 (ja) 2022-02-10 2022-02-10 画像処理装置、学習装置、推論装置、および画像処理方法

Publications (2)

Publication Number Publication Date
JP2023117247A JP2023117247A (ja) 2023-08-23
JP7635170B2 true JP7635170B2 (ja) 2025-02-25

Family

ID=87521294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022019857A Active JP7635170B2 (ja) 2022-02-10 2022-02-10 画像処理装置、学習装置、推論装置、および画像処理方法

Country Status (2)

Country Link
US (1) US12277751B2 (ja)
JP (1) JP7635170B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128930A (ja) 2008-11-28 2010-06-10 Toyota Motor Corp 画像処理装置
JP2019212206A (ja) 2018-06-08 2019-12-12 沖電気工業株式会社 ニューラルネットワーク軽量化装置、情報処理装置、ニューラルネットワーク軽量化方法およびプログラム
JP2020144659A (ja) 2019-03-07 2020-09-10 キヤノン株式会社 データ処理装置及びその方法、プログラム
CN111950718A (zh) 2019-05-16 2020-11-17 北京知存科技有限公司 利用存算一体芯片实现递进式cnn运算的方法
US20210073585A1 (en) 2019-09-11 2021-03-11 Expedera, Inc. Method And Apparatus For Efficiently Processing Convolution Neural Network Operations

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269406B2 (en) * 2005-05-26 2007-09-11 Intel Corporation Methods and apparatus for providing information indicative of traffic delay of a wireless link
US7613357B2 (en) * 2005-09-20 2009-11-03 Gm Global Technology Operations, Inc. Method for warped image object recognition
US8131107B2 (en) * 2008-05-12 2012-03-06 General Electric Company Method and system for identifying defects in NDT image data
US8229209B2 (en) * 2008-12-26 2012-07-24 Five Apes, Inc. Neural network based pattern recognizer
CN102422319B (zh) * 2009-03-04 2014-04-30 公立大学法人大阪府立大学 图像检索方法和图像存储方法
JP2011013732A (ja) * 2009-06-30 2011-01-20 Sony Corp 情報処理装置、情報処理方法、およびプログラム
JP7297705B2 (ja) 2020-03-18 2023-06-26 株式会社東芝 処理装置、処理方法、学習装置およびプログラム
JP7481956B2 (ja) 2020-08-26 2024-05-13 株式会社東芝 推論装置、方法、プログラムおよび学習装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128930A (ja) 2008-11-28 2010-06-10 Toyota Motor Corp 画像処理装置
JP2019212206A (ja) 2018-06-08 2019-12-12 沖電気工業株式会社 ニューラルネットワーク軽量化装置、情報処理装置、ニューラルネットワーク軽量化方法およびプログラム
JP2020144659A (ja) 2019-03-07 2020-09-10 キヤノン株式会社 データ処理装置及びその方法、プログラム
CN111950718A (zh) 2019-05-16 2020-11-17 北京知存科技有限公司 利用存算一体芯片实现递进式cnn运算的方法
US20210073585A1 (en) 2019-09-11 2021-03-11 Expedera, Inc. Method And Apparatus For Efficiently Processing Convolution Neural Network Operations

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Detection of Prostate Cancer in Whole-Slide Images Through End-to-End Training With Image-Level Labels,IEEE Transactions on Medical Imaging,2021年,Volume: 40, Issue: 7,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9380553

Also Published As

Publication number Publication date
US12277751B2 (en) 2025-04-15
JP2023117247A (ja) 2023-08-23
US20230252762A1 (en) 2023-08-10

Similar Documents

Publication Publication Date Title
US10380753B1 (en) Method and apparatus for generating a displacement map of an input dataset pair
US9418458B2 (en) Graph image representation from convolutional neural networks
KR102140805B1 (ko) 위성 영상의 물체 식별을 위한 뉴럴 네트워크 학습 방법 및 장치
CN112149694B (zh) 一种基于卷积神经网络池化模块的图像处理方法、系统、存储介质及终端
KR102470027B1 (ko) 다수 컨벌루션 윈도우 중의 이미지 데이터를 추출하는 방법, 장치, 기기 및 컴퓨터 판독 가능한 저장매체
US20210350521A1 (en) Method for computer-implemented determination of blade-defects of a wind turbine
CN113888491A (zh) 基于非局部特征的多级高光谱图像递进超分方法及系统
JP2021517283A (ja) 画像処理装置及びその画像処理方法、並びに画像処理システム及びそのトレーニング方法
Rios et al. Feature visualization for 3D point cloud autoencoders
Xiong et al. Bi-directional skip connection feature pyramid network and sub-pixel convolution for high-quality object detection
CN115909077A (zh) 基于无监督光谱解混神经网络的高光谱图像变化检测方法
JP6532334B2 (ja) 並列演算装置、画像処理装置及び並列演算方法
CN120163956A (zh) 一种基于选择性状态空间模型的红外小目标检测方法及相关装置
CN116091893A (zh) 一种基于U-net网络的地震图像反褶积方法及系统
CN115170418A (zh) 符合退化的低秩高维图像填充模型及其填充方法与系统
CN117710301B (zh) 图像处理方法、装置、设备、存储介质及计算机程序产品
JP7635170B2 (ja) 画像処理装置、学習装置、推論装置、および画像処理方法
US12561754B2 (en) Method and system for processing image based on weighted multiple kernels
CN120997324A (zh) 针对无人系统的仿真到真实图像的迁移方法及装置
KR20220074021A (ko) 상품불량 선별을 위한 딥러닝 기반의 이미지 분석 방법 및 이를 위한 시스템
Liu et al. Multimodal cross fusion Mamba network for remote sensing image semantic segmentation with complementary masked self-supervision
CN113269812A (zh) 图像预测模型的训练及应用方法、装置、设备、存储介质
Zhong et al. Depth Completion With Super-Resolution and Cross-Modality Optimization
CN115618945A (zh) 面向边缘设备知识蒸馏方法及装置
Dantas et al. Fast multidimensional image processing with OpenCL

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20230105

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240301

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20241217

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: 20250114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250212

R150 Certificate of patent or registration of utility model

Ref document number: 7635170

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150