[go: up one dir, main page]

JP2017004350A - Image processing apparatus, image processing method, and program - Google Patents

Image processing apparatus, image processing method, and program Download PDF

Info

Publication number
JP2017004350A
JP2017004350A JP2015119147A JP2015119147A JP2017004350A JP 2017004350 A JP2017004350 A JP 2017004350A JP 2015119147 A JP2015119147 A JP 2015119147A JP 2015119147 A JP2015119147 A JP 2015119147A JP 2017004350 A JP2017004350 A JP 2017004350A
Authority
JP
Japan
Prior art keywords
image data
data
image
candidate area
category
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.)
Pending
Application number
JP2015119147A
Other languages
Japanese (ja)
Inventor
聡 疋田
Satoshi Hikita
聡 疋田
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2015119147A priority Critical patent/JP2017004350A/en
Publication of JP2017004350A publication Critical patent/JP2017004350A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Abstract

PROBLEM TO BE SOLVED: To support reduction in processing time of recognition processing.SOLUTION: An image processing system which recognizes a first region including an object in an image that image data represents and a category into which the object is classified has: recognition means of recognizing a category into which input image data is classified using a convolutional neural network; and candidate region generation means of generating one or more candidate region image data showing one or more candidate regions included in an image that the image data represents on the basis of first output data showing an output result of a prescribed layer of the convolutional neural network in the recognition means. The recognition means recognizes categories into which more than one candidate region image data generated by the candidate region generation means are classified.SELECTED DRAWING: Figure 2

Description

本発明は、画像処理装置、画像処理方法、及びプログラムに関する。   The present invention relates to an image processing apparatus, an image processing method, and a program.

デジタルカメラや携帯情報端末等の機器において、撮影された画像中の被写体が属するカテゴリ(例えば、「人」、「動物」、「車」等)を分類する技術が知られている。   In devices such as digital cameras and portable information terminals, a technique for classifying a category (for example, “person”, “animal”, “car”, etc.) to which a subject in a photographed image belongs is known.

また、画像中において、被写体が占める領域と、当該被写体が分類されるカテゴリとを認識する技術が知られている(例えば特許文献1及び非特許文献1参照)。このような技術では、被写体が占める領域の候補である候補領域に対して、カテゴリを分類するための処理を行うことで、被写体が占める領域と、当該被写体が分類されるカテゴリとを認識する。   Further, a technique for recognizing an area occupied by a subject and a category into which the subject is classified in an image is known (see, for example, Patent Document 1 and Non-Patent Document 1). In such a technique, a process for classifying a category is performed on a candidate area that is a candidate for an area occupied by the subject, thereby recognizing the area occupied by the subject and the category into which the subject is classified.

しかしながら上記の従来技術では、被写体が占める領域と、当該被写体が分類されるカテゴリとの認識処理に多くの時間を要する場合があった。例えば、候補領域の数が多い場合には、それぞれの候補領域に対してカテゴリを分類するための処理を行うため、認識処理に多くの時間を要することがある。   However, in the above-described prior art, it may take a long time to recognize the area occupied by the subject and the category into which the subject is classified. For example, when there are a large number of candidate areas, a process for classifying the categories for each candidate area is performed, so that a long time may be required for the recognition process.

本発明の実施形態は、認識処理の処理時間の削減を支援することを目的とする。   An object of the embodiment of the present invention is to support reduction of processing time of recognition processing.

上記目的を達成するため、本発明の実施の形態では、画像データが示す画像において対象が含まれる第1の領域と、該対象が分類されるカテゴリとを認識する画像処理装置であって、畳み込みニューラルネットワークを用いて、入力された前記画像データが分類されるカテゴリを認識する認識手段と、前記認識手段における前記畳み込みニューラルネットワークの所定の層の出力結果を示す第1の出力データに基づいて、前記画像データが示す画像に含まれる1以上の候補領域を示す1以上の候補領域画像データを作成する候補領域作成手段とを有し、前記認識手段は、前記候補領域作成手段により作成された前記1以上の候補領域画像データがそれぞれ分類されるカテゴリを認識する。   To achieve the above object, according to an embodiment of the present invention, there is provided an image processing apparatus that recognizes a first region including a target in an image indicated by image data and a category into which the target is classified, and includes a convolution. Recognizing means for recognizing a category into which the input image data is classified using a neural network, and first output data indicating an output result of a predetermined layer of the convolutional neural network in the recognizing means, Candidate area creating means for creating one or more candidate area image data indicating one or more candidate areas included in the image indicated by the image data, wherein the recognition means is created by the candidate area creating means. A category into which one or more candidate area image data is classified is recognized.

本発明の実施形態によれば、認識処理の処理時間の削減を支援することができる。   According to the embodiment of the present invention, it is possible to assist in reducing the processing time of recognition processing.

本実施形態の画像処理装置のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of the image processing apparatus of this embodiment. 本実施形態の画像処理装置の機能構成の一例を示す図である。It is a figure which shows an example of a function structure of the image processing apparatus of this embodiment. 本実施形態の画像処理装置の認識処理のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of the recognition process of the image processing apparatus of this embodiment. 本実施形態の畳み込みニューラルネットワーク処理のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of the convolution neural network process of this embodiment. 本実施形態の入力画像データの加工処理の一例を示す図である。It is a figure which shows an example of the process of input image data of this embodiment. 本実施形態の第1層の畳み込み処理の一例を示す図である。It is a figure which shows an example of the convolution process of the 1st layer of this embodiment. 本実施形態の第1層のネットワークパラメータの一例を示す図である。It is a figure which shows an example of the network parameter of the 1st layer of this embodiment. 本実施形態の第1層のフィルタの一例を示す図である。It is a figure which shows an example of the filter of the 1st layer of this embodiment. 本実施形態の第1層のプーリング処理の一例を示す図である。It is a figure which shows an example of the pooling process of the 1st layer of this embodiment. 本実施形態の第2層の畳み込み処理の一例を示す図である。It is a figure which shows an example of the convolution process of the 2nd layer of this embodiment. 本実施形態の第2層のネットワークパラメータの一例を示す図である。It is a figure which shows an example of the network parameter of the 2nd layer of this embodiment. 本実施形態の第2層のフィルタの一例を示す図である。It is a figure which shows an example of the filter of the 2nd layer of this embodiment. 本実施形態の候補領域の作成処理のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of a creation process of the candidate area | region of this embodiment. 本実施形態の微分処理の一例を示す図である。It is a figure which shows an example of the differentiation process of this embodiment. 本実施形態の閾値処理の一例を示す図である。It is a figure which shows an example of the threshold value process of this embodiment. 本実施形態の領域分割の一例を示す図である。It is a figure which shows an example of the area | region division of this embodiment. 本実施形態の最小矩形の一例を示す図である。It is a figure which shows an example of the minimum rectangle of this embodiment. 本実施形態のカテゴリ分類処理のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of the category classification | category process of this embodiment. 本実施形態の第3層の全結合処理の一例を示す図である。It is a figure which shows an example of the all the joint process of the 3rd layer of this embodiment. 本実施形態の第3層のネットワークパラメータの一例を示す図である。It is a figure which shows an example of the network parameter of the 3rd layer of this embodiment. 本実施形態の正規化処理の一例を示す図である。It is a figure which shows an example of the normalization process of this embodiment.

本実施形態は、画像データが示す画像において、当該画像の被写体を示す対象(例えば、人や物体等)を含む領域と、当該対象が分類されるカテゴリとを認識するものである。ここで、カテゴリとは、例えば、「人」、「動物」、「車」、「花」、「料理」等の対象が分類される種別のことである。   In the present embodiment, in an image indicated by image data, a region including a target (for example, a person or an object) indicating a subject of the image and a category into which the target is classified are recognized. Here, the category is a type into which objects such as “people”, “animals”, “cars”, “flowers”, “cooking” and the like are classified.

以降では、画像データに対して、上述した認識を行う処理(認識処理)を実行する画像処理装置10について説明する。なお、本実施形態の画像処理装置10は、例えば、デジタルカメラ、スマートフォン、タブレット端末、ゲーム機器、ノート型PC、デスクトップ型PC等である。   Hereinafter, the image processing apparatus 10 that performs the above-described recognition processing (recognition processing) on image data will be described. Note that the image processing apparatus 10 of the present embodiment is, for example, a digital camera, a smartphone, a tablet terminal, a game device, a notebook PC, a desktop PC, or the like.

<ハードウェア構成>
まず、本実施形態の画像処理装置10のハードウェア構成について、図1を参照しながら説明する。図1は、本実施形態の画像処理装置のハードウェア構成の一例を示す図である。
<Hardware configuration>
First, the hardware configuration of the image processing apparatus 10 of the present embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of a hardware configuration of the image processing apparatus according to the present embodiment.

本実施形態の画像処理装置10は、入力装置11、表示装置12、CPU(Central Processing Unit)13、及びROM(Read Only Memory)14を有する。また、本実施形態の画像処理装置10は、RAM(Random Access Memory)15、インタフェース装置16、記憶装置17、及び撮像装置18を有する。これら各ハードウェアは、バスBにより相互に接続されている。   The image processing apparatus 10 according to the present embodiment includes an input device 11, a display device 12, a CPU (Central Processing Unit) 13, and a ROM (Read Only Memory) 14. Further, the image processing apparatus 10 according to the present embodiment includes a RAM (Random Access Memory) 15, an interface device 16, a storage device 17, and an imaging device 18. These pieces of hardware are connected to each other by a bus B.

入力装置11は、キーボードやマウス、タッチパネル、各種ボタン等を含み、画像処理装置10に各種信号を入力するのに用いられる。表示装置12は、ディスプレイ等を含み、各種の処理結果を表示する。特に、表示装置12には、本実施形態の認識処理の処理結果が表示される。すなわち、表示装置12には、入力された画像データが示す画像において、被写体等の対象が含まれる領域と、当該対象が分類されるカテゴリと示す処理結果が表示される。   The input device 11 includes a keyboard, a mouse, a touch panel, various buttons, and the like, and is used to input various signals to the image processing device 10. The display device 12 includes a display and displays various processing results. In particular, the display device 12 displays the processing result of the recognition processing of the present embodiment. That is, the display device 12 displays a processing result indicating an area including a subject such as a subject and a category into which the target is classified in the image indicated by the input image data.

CPU13は、例えば記憶装置17やROM14等からプログラムやデータをRAM15上に読み出して、各種処理を実行する演算装置である。ROM14は、電源を切ってもデータを保持することができる不揮発性の半導体メモリである。RAM15は、プログラムやデータを一時保存することができる揮発性の半導体メモリである。   The CPU 13 is an arithmetic device that reads programs and data from the storage device 17 and the ROM 14 onto the RAM 15 and executes various processes. The ROM 14 is a nonvolatile semiconductor memory that can retain data even when the power is turned off. The RAM 15 is a volatile semiconductor memory that can temporarily store programs and data.

インタフェース装置16は、外部装置とのインタフェースである。外部装置には、例えば、CD(Compact Disk)やDVD(Digital Versatile Disk)、SDメモリカード(SD memory card)、USBメモリ(Universal Serial Bus memory)等の記録媒体がある。画像処理装置10は、インタフェース装置16を介して、本実施形態の認識処理の処理対象となる画像データを記録媒体から読み取ることができる。   The interface device 16 is an interface with an external device. Examples of the external device include a recording medium such as a CD (Compact Disk), a DVD (Digital Versatile Disk), an SD memory card (SD memory card), and a USB memory (Universal Serial Bus memory). The image processing apparatus 10 can read image data to be processed in the recognition process of the present embodiment from the recording medium via the interface device 16.

記憶装置17は、プログラムやデータを格納しているHDD(Hard Disk Drive)やSSD(Solid State Drive)等の不揮発性のメモリである。記憶装置17に格納されるプログラムやデータには、本実施形態の認識処理を実行する画像処理プログラム20がある。また、本実施形態の認識処理の処理対象となる画像データが格納されても良い。   The storage device 17 is a non-volatile memory such as a hard disk drive (HDD) or a solid state drive (SSD) that stores programs and data. The programs and data stored in the storage device 17 include an image processing program 20 that executes the recognition process of the present embodiment. In addition, image data to be processed in the recognition process of the present embodiment may be stored.

撮像装置18は、カメラ等であり、本実施形態の認識処理の処理対象となる画像データを作成する。   The imaging device 18 is a camera or the like, and creates image data that is a processing target of the recognition processing of the present embodiment.

本実施形態の画像処理装置10は、上記ハードウェア構成により後述する各種処理を実現することができる。   The image processing apparatus 10 according to the present embodiment can realize various processes described later with the above hardware configuration.

<機能構成>
次に、本実施形態の画像処理装置10の機能構成について、図2を参照しながら説明する。図2は、本実施形態の画像処理装置の機能構成の一例を示す図である。
<Functional configuration>
Next, the functional configuration of the image processing apparatus 10 of the present embodiment will be described with reference to FIG. FIG. 2 is a diagram illustrating an example of a functional configuration of the image processing apparatus according to the present embodiment.

本実施形態の画像処理装置10は、CNN処理部110、候補領域作成処理部120、正規化処理部130、及び出力部140を有する。これら各部は、画像処理装置10にインストールされた画像処理プログラム20が、CPU13に実行させる処理により実現される。   The image processing apparatus 10 according to the present embodiment includes a CNN processing unit 110, a candidate area creation processing unit 120, a normalization processing unit 130, and an output unit 140. Each of these units is realized by processing executed by the CPU 13 by the image processing program 20 installed in the image processing apparatus 10.

CNN処理部110は、ネットワークパラメータ1000に基づいて、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)処理を行う。畳み込みニューラルネットワークは、一般に、nを3以上の任意の自然数として、畳み込み処理及びプーリング処理を行う第1層〜第n−2層と、畳み込み処理を行う第n−1層と、全結合処理を行う第n層とを含む。   The CNN processing unit 110 performs a convolutional neural network (CNN) process based on the network parameter 1000. In general, the convolutional neural network is configured such that n is an arbitrary natural number of 3 or more, the first layer to the n-2th layer for performing the convolution process and the pooling process, the n-1th layer for performing the convolution process, and the total connection process. N-th layer to be performed.

ここで、ネットワークパラメータ1000は、教師あり学習の手法により、学習データに基づいて畳み込みニューラルネットワークの各層毎に予め学習されたデータである。教師あり学習の手法には、例えば誤差逆伝播法(Backpropagation)を用いれば良い。   Here, the network parameter 1000 is data previously learned for each layer of the convolutional neural network based on the learning data by a supervised learning method. For example, the backpropagation method may be used as a supervised learning method.

このようなネットワークパラメータ1000は、例えば記憶装置17等に格納され、バイアスデータ1100及び重みデータ1200が含まれる。なお、以降では、第n層のネットワークパラメータ1000を「ネットワークパラメータ1000−n」と表す。したがって、第n層のバイアスデータ1100及び重みデータ1200はそれぞれ「バイアスデータ1100−n」及び「重みデータ1200−n」と表される。ネットワークパラメータ1000の詳細については後述する。   Such a network parameter 1000 is stored in the storage device 17 or the like, for example, and includes bias data 1100 and weight data 1200. Hereinafter, the network parameter 1000 of the nth layer is expressed as “network parameter 1000-n”. Therefore, the bias data 1100 and the weight data 1200 of the nth layer are expressed as “bias data 1100-n” and “weight data 1200-n”, respectively. Details of the network parameter 1000 will be described later.

CNN処理部110は、入力画像を示す画像データ510に対して、畳み込みニューラルネットワーク処理を行い、予め設定された第N層における畳み込み処理の処理結果を示す出力データ520を出力する。   The CNN processing unit 110 performs convolutional neural network processing on the image data 510 indicating the input image, and outputs output data 520 indicating the processing result of the convolution processing in the preset Nth layer.

ここで、本実施形態では、N=2であるものとして説明する。N=2の場合、出力データ520は、例えば、28×28×64チャンネルの画像データとして表すことができる。換言すれば、出力データ520は、64個の28×28チャンネルの画像データの集合として表すことができる。なお、Nの値は、画像処理プログラム20の設計者等により予め設定される。Nの値は、例えば、2〜20程度が好ましい。   Here, in the present embodiment, it is assumed that N = 2. When N = 2, the output data 520 can be expressed as, for example, 28 × 28 × 64 channel image data. In other words, the output data 520 can be expressed as a set of 64 28 × 28 channel image data. Note that the value of N is preset by the designer of the image processing program 20 or the like. The value of N is preferably about 2 to 20, for example.

また、CNN処理部110は、後述する候補領域作成処理部120により作成された候補領域画像データ530に対して、畳み込みニューラルネットワーク処理を行い、出力結果を正規化処理部130に出力する。   The CNN processing unit 110 performs convolutional neural network processing on candidate area image data 530 created by a candidate area creation processing unit 120 described later, and outputs the output result to the normalization processing unit 130.

さらに、CNN処理部110は、加工部111、畳み込み処理部112、プーリング処理部113、及び全結合処理部114を有する。加工部111は、CNN処理部110に入力された画像データの加工処理を行う。畳み込み処理部112は、畳み込みニューラルネットワークの各層において畳み込み処理を行う。プーリング処理部113は、畳み込みニューラルネットワークの各層においてプーリング処理を行う。全結合処理部114は、全結合処理を行う。   Furthermore, the CNN processing unit 110 includes a processing unit 111, a convolution processing unit 112, a pooling processing unit 113, and a full connection processing unit 114. The processing unit 111 performs processing on the image data input to the CNN processing unit 110. The convolution processing unit 112 performs convolution processing in each layer of the convolutional neural network. The pooling processing unit 113 performs pooling processing in each layer of the convolutional neural network. The all combination processing unit 114 performs all combination processing.

ここで、CNN処理部110は、全結合処理部114をカテゴリの組毎に有しているものとする。カテゴリの組とは、カテゴリと、当該カテゴリ以外を示すカテゴリとのペアである。具体的には、カテゴリの組は、「人」「人以外」、「車」「車以外」、「動物」「動物以外」等の、あるカテゴリと、当該カテゴリ以外を示すカテゴリとのペアである。なお、以降では、複数の全結合処理部114を区別して表す場合は、「全結合処理部114−1」、「全結合処理部114−2」等と表す。   Here, it is assumed that the CNN processing unit 110 has an all combination processing unit 114 for each set of categories. A category set is a pair of a category and a category indicating other than the category. Specifically, a category pair is a pair of a category such as “person”, “non-human”, “car”, “non-car”, “animal”, “non-animal”, and a category indicating other than the category. is there. Hereinafter, when the plurality of all-join processing units 114 are distinguished from each other, they are represented as “all-join processing units 114-1”, “all-join processing units 114-2”, and the like.

候補領域作成処理部120は、出力データ520に基づいて、1以上の候補領域画像データ530を作成する。候補領域画像データ120とは、画像データ510が示す画像において、対象が含まれる領域の候補を示すデータである。なお、以降では、複数の候補領域画像データ530を区別して表す場合は、「候補領域画像データ530−1」、「候補領域画像データ530−2」等と表す。   The candidate area creation processing unit 120 creates one or more candidate area image data 530 based on the output data 520. The candidate area image data 120 is data indicating a candidate for an area including a target in the image indicated by the image data 510. Hereinafter, when the plurality of candidate area image data 530 are distinguished from each other, they are expressed as “candidate area image data 530-1”, “candidate area image data 530-2”, and the like.

ここで、候補領域作成処理部120は、データ決定部121、境界決定部122、閾値処理部123、領域分割部124、及び候補領域作成部125を有する。   Here, the candidate area creation processing unit 120 includes a data determination unit 121, a boundary determination unit 122, a threshold processing unit 123, an area division unit 124, and a candidate area creation unit 125.

データ決定部121は、例えば64個の28×28チャンネルのデータとして表される出力データ520から所定のM個の28×28チャンネルのデータを決定する。ここで、Mの値は、画像処理プログラム20の設計者等により予め設定される。Mの値は、例えば、3〜20程度が好ましい。   The data determination unit 121 determines predetermined M pieces of 28 × 28 channel data from output data 520 expressed as, for example, 64 pieces of 28 × 28 channel data. Here, the value of M is preset by the designer of the image processing program 20 or the like. The value of M is preferably about 3 to 20, for example.

境界決定部122は、データ決定部121により決定されたそれぞれのデータに対して、所定の微分処理を行い、領域分割部124が分割する領域の境界を決定する。   The boundary determination unit 122 performs a predetermined differentiation process on each data determined by the data determination unit 121, and determines the boundary of the region to be divided by the region dividing unit 124.

閾値処理部123は、閾値処理を行う。閾値処理とは、予め設定された閾値以下のデータを削除(すなわち、「0」とする)する処理である。なお、このような閾値は、画像処理プログラム20の設計者等により予め設定される。閾値の値は、例えば、10〜50程度が好ましい。   The threshold processing unit 123 performs threshold processing. The threshold process is a process of deleting data that is equal to or less than a preset threshold (that is, “0”). Such a threshold is set in advance by a designer of the image processing program 20 or the like. The threshold value is preferably about 10 to 50, for example.

領域分割部124は、境界決定部122により決定された境界に基づいて、データ決定部121により決定されたデータが示す画像を、複数の領域に分割する。   The area dividing unit 124 divides the image indicated by the data determined by the data determining unit 121 into a plurality of areas based on the boundary determined by the boundary determining unit 122.

候補領域作成部125は、領域分割部124により分割された複数の領域に基づいて、候補領域を作成し、作成した候補領域を示す候補領域画像データ530を出力する。   The candidate area creating unit 125 creates a candidate area based on the plurality of areas divided by the area dividing unit 124, and outputs candidate area image data 530 indicating the created candidate area.

例えば、候補領域作成部125は、領域分割部124により分割された複数の領域のうちの一の領域に基づいて、候補領域画像データ530−1を出力する。同様に、候補領域作成部125は、領域分割部124により分割された複数の領域のうちの他の領域に基づいて、候補領域画像データ530−2を出力する。   For example, the candidate area creating unit 125 outputs the candidate area image data 530-1 based on one area among the plurality of areas divided by the area dividing unit 124. Similarly, the candidate area creation unit 125 outputs candidate area image data 530-2 based on another area among the plurality of areas divided by the area dividing unit 124.

このように、本実施形態の候補領域作成処理部120は、出力データ520に基づいて候補領域画像データ530を作成する。これにより、本実施形態では、認識処理の精度の低下を防ぎつつ、候補領域を削減させることができる。したがって、本実施形態では、認識処理の処理時間を削減させることができる。   As described above, the candidate area creation processing unit 120 of this embodiment creates the candidate area image data 530 based on the output data 520. Thereby, in this embodiment, a candidate area | region can be reduced, preventing the fall of the precision of recognition processing. Therefore, in the present embodiment, the processing time for the recognition process can be reduced.

正規化処理部130は、CNN処理部110による処理結果を正規化する。CNN処理部110の各全結合処理部114による処理結果を比較することができる。以降では、正規化処理部130により正規化された、全結合処理部114の処理結果を「確信度」と表す。   The normalization processing unit 130 normalizes the processing result by the CNN processing unit 110. It is possible to compare the processing results obtained by all the combination processing units 114 of the CNN processing unit 110. Hereinafter, the processing result of the all combination processing unit 114 normalized by the normalization processing unit 130 is expressed as “confidence level”.

例えば、カテゴリの組「人」「人以外」に対応する全結合処理部114の確信度は、CNN処理部110に入力された画像データが示す画像が、カテゴリ「人」に分類される度合いを示す第1の値と、カテゴリ「人以外」に分類される度合いを示す第2の値との組で表される。   For example, the certainty factor of all combination processing units 114 corresponding to the category set “people” and “non-people” indicates the degree to which the image indicated by the image data input to the CNN processing unit 110 is classified into the category “people”. And a second value indicating the degree of classification into the category “non-human”.

同様に、カテゴリの組「車」「車以外」に対応する全結合処理部114の確信度は、CNN処理部110に入力された画像データが示す画像が、カテゴリ「車」に分類される度合いを示す第1の値と、カテゴリ「人以外」に分類される度合いを示す第2の値との組で表される。   Similarly, the certainty factor of the all combination processing unit 114 corresponding to the category set “car” and “other than car” is the degree to which the image indicated by the image data input to the CNN processing unit 110 is classified into the category “car”. And a second value indicating the degree of classification into the category “non-human”.

出力部140は、認識結果540を出力する。ここで、認識結果540には、候補領域画像データ530から選択された結果画像データ541と、当該結果画像データ541のカテゴリを示すカテゴリ情報542とが含まれる。なお、出力部140は、候補領域画像データ530の確信度に基づいて、当該候補領域画像データ530から結果画像データ541を選択するとともに、当該結果画像データ541のカテゴリを決定してカテゴリ情報542を作成する。   The output unit 140 outputs a recognition result 540. Here, the recognition result 540 includes result image data 541 selected from the candidate area image data 530 and category information 542 indicating a category of the result image data 541. The output unit 140 selects the result image data 541 from the candidate area image data 530 based on the certainty factor of the candidate area image data 530, determines the category of the result image data 541, and sets the category information 542. create.

これにより、画像データ510が示す画像において、対象が含まれる領域の画像と、当該対象が分類されるカテゴリとが出力される。   Thereby, in the image indicated by the image data 510, an image of an area including the target and a category into which the target is classified are output.

<処理の詳細>
次に、本実施形態の画像処理装置10の認識処理の詳細について、図3を参照しながら説明する。図3は、本実施形態の画像処理装置の認識処理のフローチャートの一例を示す図である。
<Details of processing>
Next, details of the recognition processing of the image processing apparatus 10 of the present embodiment will be described with reference to FIG. FIG. 3 is a diagram illustrating an example of a flowchart of recognition processing of the image processing apparatus according to the present embodiment.

画像処理装置10は、画像データ510を入力する(ステップS31)。画像処理装置10は、例えば、記憶装置17に格納されている画像データ510を入力しても良いし、撮像装置18により生成された画像データ510を入力しても良い。また、画像処理装置10は、例えば、ネットワーク経由でダウンロードした画像データ510を入力しても良い。   The image processing apparatus 10 receives the image data 510 (step S31). For example, the image processing apparatus 10 may input the image data 510 stored in the storage device 17 or may input the image data 510 generated by the imaging apparatus 18. Further, the image processing apparatus 10 may input image data 510 downloaded via a network, for example.

画像処理装置10は、CNN処理部110により、入力された画像データ510に対して、予め設定された第N層の畳み込み処理までの畳み込みニューラルネットワーク処理を行う(ステップS32)。この畳み込みニューラルネットワーク処理についての詳細については、後述する。ここでは、本ステップの畳み込みニューラルネットワーク処理において、第N層の畳み込み処理の処理結果を示す出力データ520が得られたものとして説明を続ける。   The image processing apparatus 10 causes the CNN processing unit 110 to perform convolutional neural network processing up to the preset N-th layer convolution processing on the input image data 510 (step S32). Details of the convolutional neural network processing will be described later. Here, the description will be continued assuming that output data 520 indicating the processing result of the Nth layer convolution processing is obtained in the convolutional neural network processing of this step.

なお、上述したように、N=3である場合、出力データ520は、例えば64個の28×28チャンネルのデータとして表される。   As described above, when N = 3, the output data 520 is represented as, for example, 64 28 × 28 channel data.

画像処理装置10は、候補領域作成処理部120により、出力データ520を入力して候補領域の作成処理を行う(ステップS33)。この候補領域の作成処理において、候補領域作成処理部120は、出力データ520に基づいて、1以上の候補領域画像データ530を作成する。この候補領域の作成処理の詳細については、後述する。ここでは、本ステップの候補領域の作成処理において、1以上の候補領域画像データ530が得られたものとして説明を続ける。   In the image processing apparatus 10, the candidate area creation processing unit 120 inputs the output data 520 and performs a candidate area creation process (step S33). In this candidate area creation processing, the candidate area creation processing unit 120 creates one or more candidate area image data 530 based on the output data 520. Details of the candidate area creation processing will be described later. Here, the description will be continued on the assumption that one or more candidate area image data 530 has been obtained in the candidate area creation processing in this step.

画像処理装置10は、CNN処理部110及び正規化処理部130により、一の候補領域画像データ530を入力し、当該一の候補領域画像データ530のカテゴリを分類するカテゴリ分類処理を行う(ステップS34)。このカテゴリ分類処理により、入力された一の候補領域画像データ530の確信度が得られる。このカテゴリ分類処理の詳細については、後述する。ここでは、本ステップのカテゴリ分類処理において、一の候補領域画像データ530の確信度が得られたものとして説明を続ける。   In the image processing apparatus 10, the CNN processing unit 110 and the normalization processing unit 130 input one candidate area image data 530 and perform a category classification process for classifying the category of the one candidate area image data 530 (step S34). ). By this category classification process, the certainty factor of the input candidate area image data 530 is obtained. Details of this category classification processing will be described later. Here, the description will be continued on the assumption that the certainty factor of one candidate area image data 530 is obtained in the category classification process of this step.

画像処理装置10は、CNN処理部110及び正規化処理部130により、すべての候補領域画像データ530の確信度が得られたか否かを判定する(ステップS35)。確信度が得られていない(すなわち、カテゴリ分類処理を行っていない)候補領域画像データ530が存在する場合には、ステップS34に戻る。すなわち、画像処理装置10は、候補領域画像データ530−1、候補領域画像データ530−2、・・・等に対して、それぞれの確信度を順に取得する。   The image processing apparatus 10 determines whether or not the certainty factor of all candidate area image data 530 has been obtained by the CNN processing unit 110 and the normalization processing unit 130 (step S35). If there is candidate area image data 530 for which the certainty factor has not been obtained (that is, category classification processing has not been performed), the process returns to step S34. That is, the image processing apparatus 10 sequentially acquires the certainty factors for the candidate area image data 530-1, the candidate area image data 530-2,.

一方、すべての候補領域画像データ530の確信度が得られた場合には、ステップS36に進む。   On the other hand, if the certainty factor of all candidate area image data 530 is obtained, the process proceeds to step S36.

画像処理装置10は、出力部140により、得られた確信度に基づいて候補領域画像データ530から結果画像データ541を選択するとともに、当該結果画像データ541のカテゴリを決定してカテゴリ情報542を作成する。(ステップS36)。すなわち、出力部140は、認識結果540を決定する。   The image processing apparatus 10 uses the output unit 140 to select the result image data 541 from the candidate area image data 530 based on the obtained certainty factor, determine the category of the result image data 541, and create category information 542 To do. (Step S36). That is, the output unit 140 determines the recognition result 540.

出力部140は、すべての候補領域画像データ530を結果画像データ541と選択しても良いし、候補領域画像データ530のうちの一部を結果画像データ541と選択しても良い。   The output unit 140 may select all the candidate area image data 530 as the result image data 541, or may select a part of the candidate area image data 530 as the result image data 541.

また、出力部140は、例えば、候補領域画像データ530が示す画像のうち、一部が重畳している画像が存在する場合に、当該重畳している画像が示す候補領域画像データ530のうち、最も確信度が高い候補領域画像データ530を結果画像データ541と選択しても良い。より具体的には、例えば、候補領域画像データ530−1が示す第1の画像と、候補領域画像データ530−2が示す第2の画像と、候補領域画像データ530−3が示す第3の画像とが、少なくとも一部の領域において重畳しているものとする。この場合、第1の画像の確信度の第1の値と、第2の画像の確信度の第1の値と、第3の画像の確信度の第1の値とを比較し、最も値が高い画像を示す候補領域画像データ530を結果画像データ541と選択すれば良い。   In addition, for example, when there is an image that is partially overlapped among the images indicated by the candidate area image data 530, the output unit 140 includes, among the candidate area image data 530 indicated by the overlapped image, The candidate area image data 530 having the highest certainty factor may be selected as the result image data 541. More specifically, for example, a first image indicated by the candidate area image data 530-1, a second image indicated by the candidate area image data 530-2, and a third image indicated by the candidate area image data 530-3. It is assumed that the image overlaps at least a part of the area. In this case, the first value of the certainty factor of the first image, the first value of the certainty factor of the second image, and the first value of the certainty factor of the third image are compared, and the highest value is obtained. The candidate area image data 530 indicating an image with a high image quality may be selected as the result image data 541.

なお、ステップS36において、出力部140は、2以上の認識結果540を決定しても良い。すなわち、出力部140は、候補領域画像データ530から2以上の結果画像データ541を選択するとともに、当該2以上の結果画像データ541のそれぞれのカテゴリ情報542を作成しても良い。これにより、例えば、画像データ510が示す画像において、複数の対象(例えば、「人」と「車」等)が写っている場合にも、それぞれの対象が含まれる領域の画像と、それぞれの対象が分類されるカテゴリとを決定することができる。   In step S36, the output unit 140 may determine two or more recognition results 540. In other words, the output unit 140 may select two or more result image data 541 from the candidate area image data 530 and create each category information 542 of the two or more result image data 541. Thereby, for example, even when a plurality of objects (for example, “person” and “car”, etc.) are shown in the image indicated by the image data 510, the image of the area including each object and each object Can be determined.

画像処理装置10は、出力部140により、決定された認識結果540を出力する(ステップS37)。このとき、出力部140は、例えば表示装置12に認識結果540を出力すれば良い。これにより、画像データ510が示す画像において、対象が含まれる領域の画像と、当該対象が分類されるカテゴリとが表示装置12に表示される。   The image processing apparatus 10 outputs the determined recognition result 540 through the output unit 140 (step S37). At this time, the output unit 140 may output the recognition result 540 to the display device 12, for example. As a result, in the image indicated by the image data 510, the image of the area including the target and the category into which the target is classified are displayed on the display device 12.

次に、図3のステップS32の畳み込みニューラルネットワーク処理について、図4を参照しながら説明する。図4は、本実施形態の畳み込みニューラルネットワーク処理のフローチャートの一例を示す図である。   Next, the convolutional neural network process in step S32 in FIG. 3 will be described with reference to FIG. FIG. 4 is a diagram illustrating an example of a flowchart of convolutional neural network processing according to the present embodiment.

加工部111は、入力された画像データ510の加工処理を行う(ステップS41)。この加工処理は、入力された画像データ510を、畳み込み処理部112が処理可能な形式とするための処理である。   The processing unit 111 performs processing on the input image data 510 (step S41). This processing is processing for converting the input image data 510 into a format that can be processed by the convolution processing unit 112.

ここで、加工処理について、図5を参照しながら説明する。図5は、本実施形態の入力画像データの加工処理の一例を示す図である。なお、入力された画像データ510の色空間がRGB色空間である(すなわち、画像データ510の色チャンネルが3チャンネルである)ものとして説明する。ただし、画像データ510の色空間は、RGB色空間に限られず、例えば、CMK色空間、HSV色空間、HLS色空間等であっても良い。   Here, the processing will be described with reference to FIG. FIG. 5 is a diagram illustrating an example of processing of input image data according to the present embodiment. In the following description, it is assumed that the color space of the input image data 510 is the RGB color space (that is, the color channels of the image data 510 are 3 channels). However, the color space of the image data 510 is not limited to the RGB color space, and may be, for example, a CMK color space, an HSV color space, an HLS color space, or the like.

Step411)加工部111は、入力された画像データ510を64×64(ピクセル)となるように縮小する、このとき、加工部111は、画像データ510の長辺が64(ピクセル)となるように縮小を行う。また、加工部111は、短辺が縮小された結果64(ピクセル)に満たない部分については値0(すなわち、RGBの各色成分の値が0)でパディングして64(ピクセル)とする。なお、画像データ510を縮小するためのアルゴリズムには、例えば、バイリニア法を用いれば良い。   (Step 411) The processing unit 111 reduces the input image data 510 to 64 × 64 (pixels). At this time, the processing unit 111 sets the long side of the image data 510 to 64 (pixels). Perform reduction. In addition, the processing unit 111 pads a portion that is less than 64 (pixels) as a result of the reduction of the short side with a value of 0 (that is, the value of each color component of RGB is 0) to be 64 (pixels). Note that, for example, a bilinear method may be used as an algorithm for reducing the image data 510.

Step412)加工部111は、StepS411で得られた64×64の画像データの各画素値から、所定の値を減算した画像データを生成する。   (Step 412) The processing unit 111 generates image data obtained by subtracting a predetermined value from each pixel value of the 64 × 64 image data obtained in Step S411.

ここで、所定の値は、各学習データに含まれる画像データ(以降、「学習画像データ」という)の各画素値の平均値である。すなわち、学習画像データの画素位置(i,j)における各学習画像データの画素値の平均値をM(i,j)とした場合、上記のStep411において得られた64×64の画像データの各画素位置(i,j)の画素値からM(i,j)を減算する。ここで、i,j=1,・・・,64である。   Here, the predetermined value is an average value of pixel values of image data (hereinafter referred to as “learning image data”) included in each learning data. That is, when the average value of the pixel values of each learning image data at the pixel position (i, j) of the learning image data is M (i, j), each of the 64 × 64 image data obtained in the above Step 411 M (i, j) is subtracted from the pixel value at the pixel position (i, j). Here, i, j = 1,.

Step413)加工部111は、Step412で得られた画像データの中心の56×56(ピクセル)の画像データ以外を0クリアする。換言すれば、Step412において得られた画像データの周辺4ピクセル分を0クリアする。なお、図5において、網掛け部分が0クリアした部分である。   (Step 413) The processing unit 111 clears 0 other than the image data of 56 × 56 (pixels) at the center of the image data obtained in Step 412. In other words, the surrounding 4 pixels of the image data obtained in Step 412 are cleared to 0. In FIG. 5, the shaded portion is a portion where 0 is cleared.

そして、加工部111は、図5のStep413で得られた64×64(ピクセル)の画像データ(この画像データを「画像データ511」とする。)を畳み込み処理部112に出力する。   Then, the processing unit 111 outputs the 64 × 64 (pixel) image data (this image data is referred to as “image data 511”) obtained in Step 413 in FIG. 5 to the convolution processing unit 112.

CNN処理部110は、畳み込みニューラルネットワークの層を示す変数nを1とする(ステップS42)。   The CNN processing unit 110 sets the variable n indicating the layer of the convolutional neural network to 1 (step S42).

畳み込み処理部112は、画像データ511を入力して、第1層の畳み込み処理を行う(ステップS43)。   The convolution processing unit 112 receives the image data 511 and performs the first layer convolution processing (step S43).

ここで、第1層の畳み込み処理について、図6を参照しながら説明する。図6は、本実施形態の第1層の畳み込み処理の一例を示す図である。   Here, the first layer convolution processing will be described with reference to FIG. FIG. 6 is a diagram illustrating an example of a first layer convolution process according to the present embodiment.

Step431)畳み込み処理部112は、画像データ511を入力する。ここで、入力した画像データ511の色空間はRGB色空間であるため、色チャンネルは64×64×3チャンネルである。   Step 431) The convolution processing unit 112 inputs the image data 511. Here, since the color space of the input image data 511 is an RGB color space, the color channel is 64 × 64 × 3 channels.

Step432)畳み込み処理部112は、重みデータ1200−1からフィルタを生成し、画像データ511の中心の56×56(ピクセル)の部分に対して、生成したフィルタを用いてフィルタ処理を行う。ここで、重みデータ1200−1のデータ構成及び当該重みデータ1200−1から生成されるフィルタ1300f−1(j=1,・・・,64)のデータ構成について説明する。 (Step 432) The convolution processing unit 112 generates a filter from the weight data 1200-1, and performs filter processing on the 56 × 56 (pixel) portion of the center of the image data 511 using the generated filter. Here, the data configuration of the weight data 1200-1 and the data configuration of the filter 1300f j −1 (j = 1,..., 64) generated from the weight data 1200-1 will be described.

図7(b)は、第1層の重みデータ1200−1の一例を示す図である。図7(b)に示すように、第1層の重みデータ1200−1は、75×64の行列で表される。なお、重みデータ1200−1の各値w(i,j)は、上述したように、学習データに基づいて予め学習された値である。 FIG. 7B is a diagram illustrating an example of the weight data 1200-1 of the first layer. As shown in FIG. 7B, the first layer weight data 1200-1 is represented by a 75 × 64 matrix. Each value w 1 (i, j) of the weight data 1200-1 is a value learned in advance based on the learning data as described above.

次に、重みデータ1200−1から生成されるフィルタ1300f−1(j=1,・・・,64)について説明する。図8は、本実施形態の第1層のフィルタの一例を示す図である。 Next, the filter 1300f j −1 (j = 1,..., 64) generated from the weight data 1200-1 will be described. FIG. 8 is a diagram illustrating an example of the first layer filter of the present embodiment.

図8に示すように、各フィルタ1300f−1(j=1,・・・,64)は、5×5の行列の3つの組で表される。換言すれば、各フィルタ1300f−1(j=1,・・・,64)は、5×5×3で表される。 As shown in FIG. 8, each filter 1300f j −1 (j = 1,..., 64) is represented by three sets of 5 × 5 matrices. In other words, each filter 1300f j −1 (j = 1,..., 64) is represented by 5 × 5 × 3.

ここで、重みデータ1200−1のw(1,1)〜w(25,1)、w(26,1)〜w(50,1)、及びw(51,1)〜w(75,1)からフィルタ1300f−1が生成される。同様に、重みデータ1200−1のw(1,2)〜w(25,2)、w(26,2)〜w(50,2)、及びw(51,2)〜w(75,2)からフィルタ1300f−1が生成される。j=3,・・・,64の場合も同様である。 Here, w 1 (1,1) ~w 1 weight data 1200-1 (25,1), w 1 ( 26,1) ~w 1 (50,1), and w 1 (51,1) ~ A filter 1300f 1 −1 is generated from w 1 (75, 1 ). Similarly, w 1 (1,2) ~w 1 weight data 1200-1 (25,2), w 1 ( 26,2) ~w 1 (50,2), and w 1 (51,2) ~ A filter 1300f 2 −1 is generated from w 1 (75, 2 ). The same applies to j = 3,.

以上のように生成された各フィルタ1300f−1(j=1,・・・,64)を用いて、畳み込み処理部112は、画像データ511に対してフィルタ処理を行う。畳み込み処理部112は、例えば以下のようにしてフィルタ処理を行う。 The convolution processing unit 112 performs filter processing on the image data 511 using each filter 1300f j −1 (j = 1,..., 64) generated as described above. The convolution processing unit 112 performs filter processing as follows, for example.

(1)画像データ511の中心56×56×3の部分に対してフィルタ1300f−1をかける(すなわち、画像データ511とフィルタ1300f−1の対応する値の乗算を行う)。 (1) The filter 1300f 1 −1 is applied to the center 56 × 56 × 3 portion of the image data 511 (that is, the corresponding values of the image data 511 and the filter 1300f 1 −1 are multiplied).

これは、例えば、Rチャンネルを固定し、フィルタ1300f−1のRチャンネル用フィルタの中心を、画像データ511のRチャンネルの56×56の部分に対して、左上から5ずつ右にずらしながら行う。そして、フィルタ1300f−1のRチャンネル用フィルタの中心が画像データ511のRチャンネルの56×56の部分の右端まで辿り着いたら、当該Rチャンネル用フィルタの中心を下に5ずらして、再度、左端から行えば良い。 For example, this is performed by fixing the R channel and shifting the center of the filter for the R channel of the filter 1300f 1 -1 to the right by 5 from the upper left with respect to the 56 × 56 portion of the R channel of the image data 511. . When the center of the R channel filter of the filter 1300f 1 -1 reaches the right end of the 56 × 56 portion of the R channel of the image data 511, the center of the R channel filter is shifted downward by 5 and again, Just go from the left.

(2)次に、画像データ511のGチャンネルに対しても、上記(1)と同様の方法でフィルタ1300f−1のGチャンネル用フィルタをかける。画像データ511のBチャンネルに対しても同様である。 (2) Next, the G channel filter of the filter 1300f 1 −1 is applied to the G channel of the image data 511 in the same manner as in the above (1). The same applies to the B channel of the image data 511.

(3)フィルタ1300f−1〜フィルタ1300f64−1についても、上記と同様に、画像データ511のRGBの各チャンネルに対してフィルタ処理を順に行う。 (3) For the filters 1300f 2 −1 to 1300f 64 −1, the filter processing is sequentially performed on the RGB channels of the image data 511 in the same manner as described above.

以上のフィルタ処理により、画像データ511から64×64×3×64チャンネルの画像データが生成される。   Through the above filtering process, 64 × 64 × 3 × 64 channel image data is generated from the image data 511.

Step433)畳み込み処理部112は、Step432で得られた64×64×3×64チャンネルの画像データの各RGB成分を加算する。この結果、64×64×64チャンネルの画像データが得られる。   (Step 433) The convolution processing unit 112 adds the RGB components of the image data of 64 × 64 × 3 × 64 channels obtained in Step 432. As a result, 64 × 64 × 64 channel image data is obtained.

Step434)畳み込み処理部112は、Step433で得られた64×64×64チャンネルの画像データの各画素値に対して、バイアスデータ1100−1を加算する。   (Step 434) The convolution processing unit 112 adds the bias data 1100-1 to each pixel value of the image data of 64 × 64 × 64 channels obtained in Step 433.

ここで、図7(a)は、第1層のバイアスデータ1100−1の一例を示す図である。図7(a)に示すように、バイアスデータ1100−1は、1×64の行列により表される。そこで、畳み込み処理部112は、1つめの64×64チャンネルの画像データの各画素値に対してバイアスデータ1100−1のデータ値b(1)を加算する。同様に、2つ目の64×64チャンネルの画像データの各画素値に対してバイアスデータ1100−1のデータ値b(2)を加算する。以降、同様に、64個すべての64×64チャンネルの画像データの各画素値に対して、それぞれ、バイアスデータ1100−1のデータ値を加算する。 FIG. 7A is a diagram illustrating an example of the bias data 1100-1 for the first layer. As shown in FIG. 7A, the bias data 1100-1 is represented by a 1 × 64 matrix. Therefore, the convolution processing unit 112 adds the data value b 1 (1) of the bias data 1100-1 to each pixel value of the first 64 × 64 channel image data. Similarly, the data value b 1 (2) of the bias data 1100-1 is added to each pixel value of the second 64 × 64 channel image data. Thereafter, similarly, the data values of the bias data 1100-1 are added to the respective pixel values of all 64 image data of 64 × 64 channels.

Step435)畳み込み処理部112は、Step434で得られた64×64×64チャンネルの画像データに対して、所定の活性化関数を適用して出力画像データを得る。所定の活性化関数としては、例えば、任意の画素値xに対して、f(x)=max(0,x)で定義される関数が挙げられる。   (Step 435) The convolution processing unit 112 obtains output image data by applying a predetermined activation function to the image data of 64 × 64 × 64 channels obtained in Step 434. Examples of the predetermined activation function include a function defined by f (x) = max (0, x) for an arbitrary pixel value x.

そして、64×64×64チャンネルの画像データに対して、活性化関数を適用した後、ステップS41の加工処理において0クリアした部分は取り除き、画像データの中心の56×56部分をプーリング処理部113に出力する。したがって、第1層において、畳み込み処理部112がプーリング処理部113に出力する画像データの色チャンネルは、56×56×64である。このようにして得られた56×56×64チャンネルの画像データを「画像データ512」と表す。なお、ステップS41の加工処理において0クリアした部分は、Step433又はStep434で取り除いても良い。   Then, after applying the activation function to the image data of 64 × 64 × 64 channels, the portion that has been cleared to 0 in the processing in step S41 is removed, and the 56 × 56 portion at the center of the image data is removed from the pooling processing unit 113. Output to. Therefore, in the first layer, the color channel of the image data output from the convolution processing unit 112 to the pooling processing unit 113 is 56 × 56 × 64. The image data of 56 × 56 × 64 channels obtained in this way is represented as “image data 512”. In addition, you may remove the part which cleared 0 in the process process of step S41 by Step433 or Step434.

プーリング処理部113は、画像データ512を入力して、第1層のプーリング処理を行う(ステップS44)。   The pooling processing unit 113 receives the image data 512 and performs the first layer pooling process (step S44).

ここで、第1層のプーリング処理について、図9を参照しながら説明する。図9は、本実施形態の第1層のプーリング処理の一例を示す図である。   Here, the pooling process of the first layer will be described with reference to FIG. FIG. 9 is a diagram illustrating an example of a first layer pooling process according to the present embodiment.

Step441)プーリング処理部113は、56×56×64チャンネルの画像データ512を入力する。   (Step 441) The pooling processing unit 113 inputs image data 512 of 56 × 56 × 64 channels.

Step442)プーリング処理部113は、画像データ512の3×3の領域内の最大値を出力する処理を繰り返し行い、28×28×64の画像データ(この画像データを以降「画像データ513」とする)を生成する。これは、例えば、以下のようにして行う。   (Step 442) The pooling processing unit 113 repeatedly performs the process of outputting the maximum value in the 3 × 3 area of the image data 512, and the 28 × 28 × 64 image data (this image data is hereinafter referred to as “image data 513”). ) Is generated. This is performed as follows, for example.

(1)画像データ513の1つの56×56の画像データ(1つのチャンネルを固定した56×56の画像データ)について、左上を中心とした3×3の領域における画素値の最大値を得る。そして、この最大値を、画像データ513の画素位置(1,1)の画素値とする。   (1) For one 56 × 56 image data (56 × 56 image data with one channel fixed) of the image data 513, the maximum value of pixel values in a 3 × 3 region centering on the upper left is obtained. The maximum value is set as the pixel value at the pixel position (1, 1) of the image data 513.

(2)次に、3×3の領域を右に2ずつ移動させながら、それぞれの領域内における画素値の最大値を得て、それぞれ、画像データ513の画素位置(1,2)〜(1,28)の画素値とする。   (2) Next, while moving the 3 × 3 region to the right by two, the maximum pixel value in each region is obtained, and the pixel positions (1, 2) to (1) of the image data 513 are obtained. , 28).

(3)続いて、3×3の領域の中心を下に2移動させ、左端から同様に2ずつ領域の中心を移動させながら、それぞれの領域内における画素値の最大値を得て、それぞれ、画像データ513の画素位置(2,1)〜(2,28)の画素値とする。以降、同様に、(3,1)〜(28,28)の画素値を得る。   (3) Subsequently, the center of the 3 × 3 region is moved down by 2 and the center of the region is similarly moved by 2 from the left end to obtain the maximum value of the pixel values in each region, The pixel values at the pixel positions (2, 1) to (2, 28) of the image data 513 are used. Thereafter, similarly, pixel values of (3, 1) to (28, 28) are obtained.

(4)上記の(1)〜(3)を、すべての56×56の画像データについて行う。すなわち、上記の(1)〜(3)を、64個の56×56の画像データについて行う。   (4) The above (1) to (3) are performed for all the 56 × 56 image data. That is, the above (1) to (3) are performed on 64 pieces of 56 × 56 image data.

Step443)プーリング処理部113は、画像データ513を第2層の畳み込み処理部112に出力する。   (Step 443) The pooling processing unit 113 outputs the image data 513 to the convolution processing unit 112 in the second layer.

次に、CNN処理部110は、畳み込みニューラルネットワークの層を示す変数nに1を加算する(ステップS45)。   Next, the CNN processing unit 110 adds 1 to the variable n indicating the layer of the convolutional neural network (step S45).

次に、CNN処理部110は、変数nが、予め設定されたNと等しいか否かを判定する(ステップS46)。変数nがNと等しい場合、CNN処理部110は、ステップS47に進む。   Next, the CNN processing unit 110 determines whether or not the variable n is equal to N set in advance (step S46). When the variable n is equal to N, the CNN processing unit 110 proceeds to step S47.

一方、変数nがNと等しくない場合(すなわち、変数nがNより小さい場合)、CNN処理部110は、ステップS43に戻る。すなわち、この場合、CNN処理部110は、畳み込みニューラルネットワークの次の層の畳み込み処理及びプーリング処理を行う。   On the other hand, when the variable n is not equal to N (that is, when the variable n is smaller than N), the CNN processing unit 110 returns to step S43. That is, in this case, the CNN processing unit 110 performs a convolution process and a pooling process for the next layer of the convolution neural network.

本実施形態では、N=2であるため、CNN処理部110は、ステップS47に進むものとする。   In this embodiment, since N = 2, the CNN processing unit 110 proceeds to step S47.

畳み込み処理部112は、画像データ513を入力して、第2層の畳み込み処理を行う(ステップS47)。   The convolution processing unit 112 receives the image data 513 and performs the second layer convolution processing (step S47).

ここで、第2層の畳み込み処理について、図10を参照しながら説明する。図10は、本実施形態の第2層の畳み込み処理の一例を示す図である。なお、第2層の畳み込み処理は、第1層の畳み込み処理と各データのチャンネル数が異なること以外は同様である。より一般には、第n層の畳み込み処理は、他の層の畳み込み処理と各データのチャンネル数が異なること以外は同様である。   Here, the convolution processing of the second layer will be described with reference to FIG. FIG. 10 is a diagram illustrating an example of the second layer convolution process according to the present embodiment. The second layer convolution processing is the same as the first layer convolution processing except that the number of channels of each data is different. More generally, the nth layer convolution process is the same as the other layer convolution process except that the number of channels of each data is different.

Step471)畳み込み処理部112は、画像データ513を入力する。ここで、入力した画像データ513の色チャンネルは、上述した通り、28×28×64チャンネルである。   (Step 471) The convolution processing unit 112 inputs the image data 513. Here, the color channels of the input image data 513 are 28 × 28 × 64 channels as described above.

Step472)畳み込み処理部112は、重みデータ1200−2からフィルタを生成し、画像データ513に対して、生成したフィルタを用いてフィルタ処理を行う。ここで、重みデータ1200−2のデータ構成及び当該重みデータ1200−2から生成されるフィルタ1300f−2(j=1,・・・,64)のデータ構成について説明する。 (Step 472) The convolution processing unit 112 generates a filter from the weight data 1200-2, and performs a filtering process on the image data 513 using the generated filter. Here, the data configuration of the weight data 1200-2 and the data configuration of the filter 1300f j -2 (j = 1,..., 64) generated from the weight data 1200-2 will be described.

図11(b)は、第2層の重みデータ1200−2の一例を示す図である。図11(b)に示すように、第2層の重みデータ1200−2は、1600×64の行列で表される。なお、重みデータ1200−2の各値w(i,j)は、上述したように、学習データに基づいて予め学習された値である。 FIG. 11B is a diagram illustrating an example of the second layer weight data 1200-2. As shown in FIG. 11B, the second layer weight data 1200-2 is represented by a 1600 × 64 matrix. Each value w 2 (i, j) of the weight data 1200-2 is a value learned in advance based on the learning data as described above.

次に、重みデータ1200−2から生成されるフィルタ1300f−2(j=1,・・・,64)について説明する。図12は、本実施形態の第2層のフィルタの一例を示す図である。 Next, the filter 1300f j -2 (j = 1,..., 64) generated from the weight data 1200-2 will be described. FIG. 12 is a diagram illustrating an example of the second layer filter of the present embodiment.

図12に示すように、各フィルタ1300f−2(j=1,・・・,64)は、5×5の行列の64個の組で表される。換言すれば、各フィルタ1300f−2(j=1,・・・,64)は、5×5×64で表される。 As shown in FIG. 12, each filter 1300f j -2 (j = 1,..., 64) is represented by 64 sets of 5 × 5 matrices. In other words, each filter 1300f j -2 (j = 1,..., 64) is represented by 5 × 5 × 64.

ここで、重みデータ1200−2のw(1,1)〜w(25,1)、・・・、w(1576,1)〜w(1600,1)からフィルタ1300f−2が生成される。同様に、重みデータ1200−2のw(1,2)〜w(25,2)、・・・、w(1576,2)〜w(1600,2)からフィルタ1300f−2が生成される。j=3,・・・,64の場合も同様である。 Here, w 2 (1,1) ~w 2 weight data 1200-2 (25,1), ···, w 2 (1576,1) filter from ~w 2 (1600,1) 1300f 1 -2 Is generated. Similarly, w 2 of the weighting data 1200-2 (1,2) ~w 2 (25,2 ), ···, w 2 (1576,2) ~w 2 (1600,2) filter from 1300 f 2 -2 Is generated. The same applies to j = 3,.

以上のように生成された各フィルタ1300f−2(j=1,・・・,64)を用いて、畳み込み処理部112は、画像データ513に対してフィルタ処理を行う。畳み込み処理部112は、例えば以下のようにしてフィルタ処理を行う。 The convolution processing unit 112 performs filter processing on the image data 513 using each filter 1300f j -2 (j = 1,..., 64) generated as described above. The convolution processing unit 112 performs filter processing as follows, for example.

(1)画像データ513に対してフィルタ1300f−2をかける(すなわち、画像データ513とフィルタ1300f−2の対応する値の乗算を行う)。 (1) The filter 1300f 1 -2 is applied to the image data 513 (that is, the corresponding values of the image data 513 and the filter 1300f 1 -2 are multiplied).

これは、例えば、1つのチャンネルを固定し、フィルタ1300f−2の中心を、画像データ513の28×28の部分の左上から5ずつ右にずらしながら行う。そして、フィルタ1300f−2の中心が画像データ513の28×28の部分の右端まで辿り着いたら、フィルタ1300f−2の中心を下に5ずらして、再度、左端から行えば良い。 For example, this is performed by fixing one channel and shifting the center of the filter 1300f 1 -2 to the right by 5 from the upper left of the 28 × 28 portion of the image data 513. Then, when the center of the filter 1300f 1 -2 reaches the right end of the 28 × 28 portion of the image data 513, the center of the filter 1300f 1 -2 may be shifted downward by 5 and the processing may be performed again from the left end.

(2)次に、画像データ513の他のチャンネルに対しても、上記(1)と同様の方法でフィルタ1300f−2をかける。この処理をすべてのチャンネル1〜64に対して繰り返す。 (2) Next, filters 1300f 1 -2 are applied to other channels of the image data 513 in the same manner as in (1) above. This process is repeated for all channels 1 to 64.

(3)フィルタ1300f−2〜フィルタ1300f64−2についても、上記と同様に、1〜64のチャンネル毎に、画像データ513の28×28の部分に対して、フィルタ処理を順に行う。 (3) filter 1300 f 2 -2 to filter 1300 f 64 -2, similarly to the above, each channel in the 1 to 64, for the portion of the 28 × 28 image data 513, the filtering processing is carried out sequentially.

以上のフィルタ処理により、画像データ513から28×28×64×64チャンネルの画像データが生成される。   By the above filter processing, 28 × 28 × 64 × 64 channel image data is generated from the image data 513.

Step473)畳み込み処理部112は、Step472で得られた画像データの28×28の部分について、各画素値を1〜64チャンネルのそれぞれについて加算する。この結果、28×28×64チャンネルの画像データが得られる。   (Step 473) The convolution processing unit 112 adds each pixel value for each of the 1 to 64 channels for the 28 × 28 portion of the image data obtained in Step 472. As a result, 28 × 28 × 64 channel image data is obtained.

Step474)畳み込み処理部112は、Step473で得られた28×28×64チャンネルの画像データの各画素値に対して、バイアスデータ1100−2を加算する。   (Step 474) The convolution processing unit 112 adds the bias data 1100-2 to each pixel value of the 28 × 28 × 64 channel image data obtained in Step 473.

ここで、図11(a)は、第2層のバイアスデータ1100−2の一例を示す図である。図11(a)に示すように、バイアスデータ1100−2は、1×64の行列により表される。そこで、畳み込み処理部112は、1つめの28×28チャンネルの画像データの各画素値に対してバイアスデータ1100−2のデータ値b(1)を加算する。同様に、2つ目の28×28チャンネルの画像データの各画素値に対してバイアスデータ1100−2のデータ値b(2)を加算する。以降、同様に、64個すべての28×28チャンネルの画像データの各画素値に対して、それぞれ、バイアスデータ1100−2のデータ値を加算する。 Here, FIG. 11A is a diagram illustrating an example of the bias data 1100-2 for the second layer. As shown in FIG. 11A, the bias data 1100-2 is represented by a 1 × 64 matrix. Therefore, the convolution processing unit 112 adds the data value b 2 (1) of the bias data 1100-2 to each pixel value of the first 28 × 28 channel image data. Similarly, the data value b 2 (2) of the bias data 1100-2 is added to each pixel value of the second 28 × 28 channel image data. Thereafter, similarly, the data value of the bias data 1100-2 is added to each of the pixel values of all 64 image data of 28 × 28 channels.

Step475)畳み込み処理部112は、Step474で得られた28×28×64チャンネルの画像データに対して、所定の活性化関数を適用して出力画像データを得る。所定の活性化関数としては、例えば、任意の画素値xに対して、f(x)=max(0,x)で定義される関数が挙げられる。このようにして得られた出力画像データが、出力データ520である。このように本実施形態の出力データ520は、28×28×64チャンネルの画像データである。   (Step 475) The convolution processing unit 112 applies a predetermined activation function to the 28 × 28 × 64 channel image data obtained in Step 474 to obtain output image data. Examples of the predetermined activation function include a function defined by f (x) = max (0, x) for an arbitrary pixel value x. The output image data obtained in this way is output data 520. As described above, the output data 520 of the present embodiment is 28 × 28 × 64 channel image data.

なお、上記の説明で示されるように、出力データ520は、フィルタ1300f−2の各j(j=1,・・・,64)に対応する28×28の画像データ(出力データ)の集合と言うことができる。すなわち、出力データ520には、フィルタ1300f−2に対応する28×28の出力データ520−1,・・・、フィルタ1300f64−2に対応する28×28の出力データ520−64が含まれる。 As shown in the above description, the output data 520 is a set of 28 × 28 image data (output data) corresponding to each j (j = 1,..., 64) of the filter 1300f j -2. Can be said. That is, the output data 520 includes the output data 520-1 of 28 × 28 corresponding to the filter 1300 f 1 -2, · · ·, output data 520-64 of the filters 1300 f 64 corresponding to -2 28 × 28 is .

次に、図3のステップS33の候補領域の作成処理について、図13を参照しながら説明する。図13は、本実施形態の候補領域の作成処理のフローチャートの一例を示す図である。   Next, the candidate area creation processing in step S33 of FIG. 3 will be described with reference to FIG. FIG. 13 is a diagram illustrating an example of a flowchart of candidate area creation processing according to the present embodiment.

候補領域作成処理部120のデータ決定部121は、出力データ520に含まれる出力データ520−1,・・・,出力データ520−64のそれぞれについて代表値a,・・・a64を決定する(ステップS131)。 The data determination unit 121 of the candidate area creation processing unit 120 determines the representative values a 1 ,..., A 64 for the output data 520-1, ..., output data 520-64 included in the output data 520. (Step S131).

ここで、代表値a,・・・a64としては、出力データ520−1,・・・,出力データ520−64それぞれのデータ値の最大値とすれば良い。例えば、出力データ520−1に含まれるデータ値の最大値を代表値aとすれば良い。他の出力データ520−2,・・・,出力データ520−64についても同様である。ただし、代表値a,・・・a64は、最大値に限られず、例えば、平均値等を用いても良い。 Here, the representative values a 1 ,..., A 64 may be the maximum values of the data values of the output data 520-1,. For example, the maximum value of the data value contained in the output data 520-1 may be a representative value a 1. The same applies to the other output data 520-2,..., Output data 520-64. However, the representative values a 1 ,..., A 64 are not limited to the maximum value, and for example, an average value or the like may be used.

候補領域作成処理部120のデータ決定部121は、代表値a,・・・a64に基づいて、出力データ520−1,・・・,出力データ520−64から所定のM個のデータを決定する(ステップS132)。ここで、データ決定部121は、代表値a,・・・a64の値が大きい順に(昇順に)、上位M個の代表値に対応する出力データを決定すれば良い。 Data determination unit 121 of the candidate area generation processing unit 120, representative value a 1, on the basis of ... a 64, output data 520-1, ..., and predetermined M data from the output data 520-64 Determine (step S132). Here, the data determination unit 121 may determine output data corresponding to the top M representative values in descending order of the representative values a 1 ,..., A 64 (in ascending order).

以降では、M=3として、データ決定部121により、出力データ520−2、出力データ520−43、及び出力データ520−47が決定されたものとする。   Hereinafter, it is assumed that M = 3 and the data determination unit 121 determines the output data 520-2, the output data 520-43, and the output data 520-47.

なお、Mの値を大きくすることで、認識処理の精度を向上させることができるが、処理速度は低下する。一方で、Mの値を小さくすることで、認識処理の精度は低下するものの処理速度が向上する。したがって、Mは、画像処理プログラム20の設計者等により、認識対象の画像データ510の性質や、認識処理に求められる精度等に応じて適切な値が予め設定される。   Note that by increasing the value of M, the accuracy of the recognition process can be improved, but the processing speed decreases. On the other hand, by reducing the value of M, the processing speed is improved although the accuracy of the recognition process is reduced. Therefore, an appropriate value of M is set in advance by the designer or the like of the image processing program 20 according to the nature of the image data 510 to be recognized, the accuracy required for the recognition process, and the like.

候補領域作成処理部120は、データ決定部121により決定されたM個の出力データ520のうち一の出力データを取得する(ステップS133)。すなわち、本実施形態では、データ決定部121は、出力データ520−2、出力データ520−43、及び出力データ520−47から一の出力データを取得する。以降では、候補領域作成処理部120は、出力データ520−2を取得したものとして説明する。   The candidate area creation processing unit 120 acquires one output data among the M pieces of output data 520 determined by the data determination unit 121 (step S133). That is, in this embodiment, the data determination unit 121 acquires one output data from the output data 520-2, the output data 520-43, and the output data 520-47. In the following description, it is assumed that the candidate area creation processing unit 120 has acquired the output data 520-2.

候補領域作成処理部120の境界決定部122は、取得された出力データ520−2について、微分処理を行って、領域分割部124により分割される領域の境界を決定する(ステップS134)。   The boundary determination unit 122 of the candidate region creation processing unit 120 performs differentiation processing on the acquired output data 520-2 to determine the boundary of the region divided by the region division unit 124 (step S134).

ここで、境界決定部122により決定される領域の境界について、図14を参照しながら説明する。図14は、本実施形態の微分処理の一例を示す図である。   Here, the boundary of the region determined by the boundary determination unit 122 will be described with reference to FIG. FIG. 14 is a diagram illustrating an example of differentiation processing according to the present embodiment.

図14では、一例として、出力データ520−2について、微分処理を行った場合を示している。図14に示すように、境界決定部122により微分処理を行い、微分値が負から正に変わる部分を、出力データ520−1の出力値の谷間として検出する。そして、境界決定部122は、検出された出力値の谷間を、境界D1及び境界D2として決定する。ここで、微分処理には、例えばSobelフィルタを用いれば良い。   In FIG. 14, as an example, a case where the differentiation process is performed on the output data 520-2 is illustrated. As illustrated in FIG. 14, the boundary determination unit 122 performs differentiation processing, and detects a portion where the differential value changes from negative to positive as a valley of the output value of the output data 520-1. Then, the boundary determining unit 122 determines the valleys of the detected output values as the boundary D1 and the boundary D2. Here, for example, a Sobel filter may be used for the differentiation process.

候補領域作成処理部120の閾値処理部123は、閾値処理を行う(ステップS135)。すなわち、閾値処理部123は、予め設定された閾値(例えば、閾値=30)以下のデータを削除する。   The threshold processing unit 123 of the candidate area creation processing unit 120 performs threshold processing (step S135). That is, the threshold processing unit 123 deletes data that is equal to or less than a preset threshold (for example, threshold = 30).

ここで、閾値処理部123による閾値処理について、図15を参照しながら説明する。図15は、本実施形態の閾値処理の一例を示す図である。図15では、一例として、出力データ520−2に対して閾値処理を行った場合を示している。図15に示すように、閾値処理部123は、閾値処理を行って所定の閾値以下のデータ値を削除することにより、出力データ520−2から出力データ521−2を作成する。なお、図15に示す出力データ521において、網掛けで示した部分がデータ値を削除した部分である。   Here, threshold processing by the threshold processing unit 123 will be described with reference to FIG. FIG. 15 is a diagram illustrating an example of threshold processing according to the present embodiment. FIG. 15 shows a case where threshold processing is performed on the output data 520-2 as an example. As illustrated in FIG. 15, the threshold processing unit 123 creates output data 521-2 from the output data 520-2 by performing threshold processing and deleting data values equal to or less than a predetermined threshold. In the output data 521 shown in FIG. 15, the shaded portion is a portion from which the data value is deleted.

候補領域作成処理部120の領域分割部124は、境界決定部122により決定された境界に基づいて、ステップS133で取得された一の出力データが示す画像を複数の領域に分割する(ステップS136)。   The region dividing unit 124 of the candidate region creation processing unit 120 divides the image indicated by the one output data acquired in step S133 into a plurality of regions based on the boundary determined by the boundary determining unit 122 (step S136). .

ここで、領域分割部124により分割される領域について、図16を参照しながら説明する。図16は、本実施形態の領域分割の一例を示す図である。図16では、出力データ521−2が示す画像を境界D1及び境界D2に基づいて分割した例を示している。図16に示すように、出力データ521−2が示す画像は、境界D1及び境界D2に基づいて、領域S1、領域S2、領域S3、及び領域S4に分割される。   Here, the regions divided by the region dividing unit 124 will be described with reference to FIG. FIG. 16 is a diagram illustrating an example of area division according to the present embodiment. FIG. 16 shows an example in which the image indicated by the output data 521-2 is divided based on the boundary D1 and the boundary D2. As shown in FIG. 16, the image indicated by the output data 521-2 is divided into a region S1, a region S2, a region S3, and a region S4 based on the boundary D1 and the boundary D2.

候補領域作成処理部120の候補領域作成部125は、領域分割部124により分割された領域S1〜S4について、各領域を含む最小矩形を特定し、当該特定された最小矩形に基づいて候補領域を示す候補領域画像データ530を作成する(ステップS137)。   The candidate area creation unit 125 of the candidate area creation processing unit 120 specifies the minimum rectangle including each area for the areas S1 to S4 divided by the area division unit 124, and selects the candidate area based on the specified minimum rectangle. The candidate area image data 530 shown is created (step S137).

ここで、一例として、領域S1を囲む最小矩形B1を図17に示す。このように最小矩形とは、領域分割部124により分割された領域された領域に外接する矩形のことである。したがって、候補領域作成部125は、各領域S1〜S4について、それぞれ最小矩形を特定する。   Here, as an example, a minimum rectangle B1 surrounding the region S1 is shown in FIG. As described above, the minimum rectangle is a rectangle that circumscribes the area divided by the area dividing unit 124. Therefore, the candidate area creation unit 125 specifies a minimum rectangle for each of the areas S1 to S4.

そして、候補領域作成部125は、画像データ510が示す画像において、当該特定された最小矩形によって囲まれる領域と対応する領域を候補領域として候補領域画像データ530を作成する。このとき、候補領域作成部125は、画像データ510が示す画像において、最小矩形によって囲まれる領域と対応する領域を、当該画像データ510の解像度を考慮した上で候補領域として候補領域画像データ530を作成する。   Then, the candidate area creating unit 125 creates candidate area image data 530 using an area corresponding to the area surrounded by the specified minimum rectangle in the image indicated by the image data 510 as a candidate area. At this time, the candidate area creating unit 125 sets the candidate area image data 530 as an area corresponding to the area surrounded by the minimum rectangle in the image indicated by the image data 510, considering the resolution of the image data 510. create.

候補領域作成処理部120は、ステップS132で決定されたすべての出力データに対して、候補領域画像データ530を作成したか否かを判定する(ステップS138)。すなわち、候補領域作成処理部120は、出力データ520−2、出力データ520−43、及び出力データ520−47に対して、ステップS133〜ステップS138の処理が実行されたか否かを判定する。   The candidate area creation processing unit 120 determines whether candidate area image data 530 has been created for all the output data determined in step S132 (step S138). In other words, the candidate area creation processing unit 120 determines whether or not the processing of Step S133 to Step S138 has been performed on the output data 520-2, the output data 520-43, and the output data 520-47.

ステップS132で決定されたすべての出力データに対して、候補領域画像データ530が作成された場合、候補領域作成処理部120は、処理を終了させる。一方、ステップS132で決定された出力データのうち、候補領域画像データ530が作成されていない出力データがある場合、候補領域作成処理部120は、ステップS133に戻る。   When the candidate area image data 530 is created for all the output data determined in step S132, the candidate area creation processing unit 120 ends the process. On the other hand, if there is output data for which the candidate area image data 530 has not been created among the output data determined in step S132, the candidate area creation processing unit 120 returns to step S133.

これにより、本実施形態の画像処理装置10では、入力された画像データ510が示す画像において、対象が含まれる領域の候補である候補領域を示す候補領域画像データ530が作成される。しかも、本実施形態の画像処理装置10では、畳み込みニューラルネットワークの第N層における出力データ520を用いて、候補領域画像データ530が作成される。このため、本実施形態の画像処理装置10では、認識処理の精度の低下を防ぎつつ、候補領域を削減させることができる。   Thereby, in the image processing apparatus 10 according to the present embodiment, candidate area image data 530 indicating candidate areas that are candidates for areas including the object is created in the image indicated by the input image data 510. Moreover, in the image processing apparatus 10 of the present embodiment, candidate area image data 530 is created using the output data 520 in the Nth layer of the convolutional neural network. For this reason, in the image processing apparatus 10 according to the present embodiment, it is possible to reduce candidate regions while preventing a reduction in recognition processing accuracy.

次に、図3のステップS34のカテゴリ分類処理について、図18を参照しながら説明する。図18は、本実施形態のカテゴリ分類処理のフローチャートの一例を示す図である。   Next, the category classification process in step S34 in FIG. 3 will be described with reference to FIG. FIG. 18 is a diagram illustrating an example of a flowchart of the category classification process of the present embodiment.

CNN処理部110は、1以上の候補領域画像データ530から一の候補領域画像データ530を入力し、入力された候補領域画像データ530に対して、畳み込みニューラルネットワーク処理を行う(ステップS181)。すなわち、CNN処理部110は、入力された候補領域画像データ530に対して、図4で示した畳み込みニューラルネットワーク処理を行う。   The CNN processing unit 110 receives one candidate area image data 530 from one or more candidate area image data 530, and performs convolutional neural network processing on the input candidate area image data 530 (step S181). That is, the CNN processing unit 110 performs the convolutional neural network process shown in FIG. 4 on the input candidate area image data 530.

なお、ステップS181において、CNN処理部110は、予め設定された第N層までの畳み込みニュールラルネットワーク処理を行っても良いし、Nより大きい任意の自然数をLとして、第L層までの畳み込みニューラルネットワーク処理を行っても良い。   In step S181, the CNN processing unit 110 may perform a convolutional neural network process up to a preset N-th layer, or an arbitrary natural number greater than N as L and a convolutional neural network up to the L-th layer. Network processing may be performed.

ここでは、ステップS181において、CNN処理部110は、第N層までの畳み込みニューラルネットワーク処理を行ったものとして説明する。したがって、ステップS181の処理結果として、CNN処理部110の畳み込み処理部112は、出力データ520と同じデータ構成である28×28×64チャンネルの出力データ531を全結合処理部114に出力する。   Here, description will be made assuming that the CNN processing unit 110 performs the convolutional neural network processing up to the Nth layer in step S181. Accordingly, as a result of the processing in step S181, the convolution processing unit 112 of the CNN processing unit 110 outputs the output data 531 of 28 × 28 × 64 channels having the same data configuration as the output data 520 to the all combination processing unit 114.

次に、CNN処理部110の全結合処理部114は、出力データ531を入力して、全結合処理を行う。なお、全結合処理部114は、上述したように、カテゴリの組毎に存在する。したがって、各全結合処理部114は、それぞれ、出力データ531を入力する。   Next, the full connection processing unit 114 of the CNN processing unit 110 receives the output data 531 and performs full connection processing. Note that, as described above, the total combination processing unit 114 exists for each category set. Therefore, each all combination processing unit 114 receives the output data 531.

例えば、カテゴリ数が「人」、「動物」、「車」の3つである場合、全結合処理部114は、カテゴリの組「人」「人以外」に対応する全結合処理部114−1、カテゴリの組「動物」「動物以外」に対応する全結合処理部114−2、及びカテゴリの組「車」「車以外」に対応する全結合処理部114−3の3つが存在する。   For example, when the number of categories is three, “people”, “animals”, and “cars”, the all combination processing unit 114 includes all combination processing units 114-1 corresponding to the category sets “people” and “other than people”. There are three combination processing units 114-2 corresponding to the category set "animal" and "non-animal", and all connection processing units 114-3 corresponding to the category set "car" and "other than car".

ここで、全結合処理について、図19を参照しながら説明する。図19は、本実施形態の第3層の全結合処理の一例を示す図である。   Here, the total joining process will be described with reference to FIG. FIG. 19 is a diagram illustrating an example of the third layer full connection processing according to the present embodiment.

Step1821)全結合処理部114は、出力データ531を入力する。ここで、入力した出力データ531の色チャンネルは、上述したように、28×28×64である。   (Step 1821) The all combination processing unit 114 receives the output data 531. Here, the color channel of the input output data 531 is 28 × 28 × 64 as described above.

Step1822)全結合処理部114は、出力データ531の各データ値をベクトル値に変換する。すなわち、28×28×64チャンネルの出力データ531の各データ値を50176行1列のベクトル値に変換する。ここで、ベクトル値の各成分の値をx,・・・,x50176とする。 (Step 1822) The total connection processing unit 114 converts each data value of the output data 531 into a vector value. That is, each data value of the output data 531 of 28 × 28 × 64 channels is converted into a vector value of 50176 rows and 1 column. Here, the value of each component of the vector value is assumed to be x 1 ,..., X 50176 .

Step1823)全結合処理部114は、それぞれ、バイアスデータ1100−3及び重みデータ1200−3を用いて、積和演算を行う。   (Step 1823) The all combination processing unit 114 performs a product-sum operation using the bias data 1100-3 and the weight data 1200-3, respectively.

ここで、バイアスデータ1100−3及び重みデータ1200−3について、図20を参照しながら説明する。図20は、本実施形態の第3層のネットワークパラメータの一例を示す図である。   Here, the bias data 1100-3 and the weight data 1200-3 will be described with reference to FIG. FIG. 20 is a diagram illustrating an example of network parameters of the third layer according to the present embodiment.

図20(a)は、第3層のバイアスデータ1100−3の一例を示す図である。図20(a)に示すように、第3層のバイアスデータ1100−3は、カテゴリ毎のバイアスデータ1100−3,バイアスデータ1100−3,・・・を含む。また、カテゴリ毎のバイアスデータ1100−3は、1行2列のベクトル値である。なお、ベクトルの各成分の値b(k,j)は、上述したように、学習データに基づいて予め学習された値である。 FIG. 20A is a diagram illustrating an example of the bias data 1100-3 for the third layer. As shown in FIG. 20A, the third layer bias data 1100-3 includes bias data 1100-3 1 , bias data 1100-3 2 ,... For each category. The bias data 1100-3 k for each category is a vector value of one row and two columns. Note that the value b 3 (k, j) of each component of the vector is a value learned in advance based on the learning data, as described above.

ここで、kは、カテゴリを示す数値であるとする。例えば、k=1のときカテゴリ「人」を示し、k=2のときカテゴリ「動物」を示し、k=3のときカテゴリ「車」を示す等である。また、jは、カテゴリに分類されるか否かを示す数値である。例えば、j=1のときは該当のカテゴリに分類される場合を示し、j=2のときは該当のカテゴリに分類されない場合(すなわち、該当のカテゴリ以外のカテゴリに分類される場合)を示す。   Here, k is a numerical value indicating a category. For example, the category “person” is indicated when k = 1, the category “animal” is indicated when k = 2, the category “car” is indicated when k = 3, and so on. Further, j is a numerical value indicating whether or not it is classified into a category. For example, when j = 1, it indicates a case where it is classified into the corresponding category, and when j = 2, it indicates a case where it is not classified into the corresponding category (that is, when it is classified into a category other than the corresponding category).

図20(b)は、第3層の重みデータ1200−3の一例を示す図である。図20(b)に示すように、第3層の重みデータ1200−3は、カテゴリ毎の重みデータ1200−3,重みデータ1200−3,・・・を含む。また、カテゴリ毎の重みデータ1200−3は、50176行2列の行列である。なお、この行列の各成分の値w(i,j,k)は、上述したように、学習データに基づいて予め学習された値である。 FIG. 20B is a diagram illustrating an example of the third layer weight data 1200-3. As shown in FIG. 20B, the weight data 1200-3 of the third layer includes weight data 1200-3 1 , weight data 1200-3 2 ,... For each category. In addition, weight data 1200-3 k of each category is a matrix of 50,176 rows and two columns. Note that the value w 3 (i, j, k) of each component of the matrix is a value learned in advance based on the learning data, as described above.

図19の説明に戻り、全結合処理部114は、それぞれ以下の積和演算を行う。すなわち、カテゴリkに対して、全結合処理部114−kは、以下の積和演算を行う。   Returning to the description of FIG. 19, the all-join processing unit 114 performs the following product-sum operation. That is, for the category k, the full connection processing unit 114-k performs the following product-sum operation.

ここで、j及びkの意味は上述した通りである。 Here, the meanings of j and k are as described above.

Step1824)全結合処理部114は、Step1823で得られた2×1×|k|のデータを正規化処理部130に出力する。なお、|k|は、カテゴリ数である。   (Step 1824) The total connection processing unit 114 outputs the data of 2 × 1 × | k | obtained in Step 1823 to the normalization processing unit 130. Note that | k | is the number of categories.

なお、上記の積和演算の結果が、入力された候補領域画像データ530がカテゴリkに分類される場合(j=1の場合)の算出結果と、当該候補領域画像データ530がカテゴリk以外のカテゴリに分類される場合(j=2の場合)の算出結果である。   Note that the result of the product-sum operation described above is the calculation result when the input candidate area image data 530 is classified into category k (when j = 1), and the candidate area image data 530 is other than category k. It is a calculation result when it is classified into categories (when j = 2).

これにより、候補領域画像データ530が、あるカテゴリkに分類されるか否かを数値として判定することができる。例えば、あるカテゴリkについて、y(k)の値が0.7、y(k)の値が0.3である場合、当該候補領域画像データ530は、カテゴリkに分類される場合が高いと判定することができる。換言すれば、あるカテゴリkについて、y(k)の値がy(k)の値より高い場合、入力された候補領域画像データ530はカテゴリkに分類される可能性が高いといえる。 Thereby, it can be determined numerically whether candidate area image data 530 is classified into a certain category k. For example, for a certain category k, if the value of y 1 (k) is 0.7 and the value of y 2 (k) is 0.3, the candidate area image data 530 may be classified into the category k. It can be determined to be high. In other words, when the value of y 1 (k) is higher than the value of y 2 (k) for a certain category k, it can be said that the input candidate area image data 530 is highly likely to be classified into the category k.

ただし、上記の算出結果では、各全結合処理部114の出力結果同士の比較ができない場合があるため、次のステップS183において正規化処理を行う。   However, in the above calculation results, there is a case where the output results of the respective all-joining processing units 114 cannot be compared with each other, so normalization processing is performed in the next step S183.

正規化処理部130は、全結合処理部114により出力された2×1×|k|のデータを入力して、正規化処理を行う(ステップS183)。   The normalization processing unit 130 receives the data of 2 × 1 × | k | output from the full connection processing unit 114 and performs normalization processing (step S183).

ここで、正規化処理について、図21を参照しながら説明する。図21は、本実施形態の正規化処理の一例を示す図である。   Here, the normalization process will be described with reference to FIG. FIG. 21 is a diagram illustrating an example of the normalization process of the present embodiment.

Step1831)正規化処理部130は、全結合処理部114により出力された2×1×|k|のデータを入力する。   (Step 1831) The normalization processing unit 130 inputs the data of 2 × 1 × | k | output from the full connection processing unit 114.

Step1832)正規化処理部130は、(y(k),y(k))について、カテゴリ毎に以下の式により正規化を行う。 (Step 1832) The normalization processing unit 130 normalizes (y 1 (k), y 2 (k)) by the following formula for each category.

このようにして得られた2×1×|k|が確信度である、このように正規化処理を行うことにより、すべてのカテゴリにおける確信度は0以上1以下の値に正規化される。このため、異なるカテゴリ同士の確信度を比較することが可能となる。例えば、k=1をカテゴリ「人」、k=2をカテゴリ「動物」とした場合において、z(1)=0.8,z(1)=0.2,z(2)=0.6,z(2)=0.4であるとき、入力された候補領域画像データ530は、カテゴリ「人」に分類される可能性が高いと言える。 The 2 × 1 × | k | obtained in this way is the certainty factor. By performing the normalization process in this way, the certainty factors in all categories are normalized to a value of 0 or more and 1 or less. For this reason, it becomes possible to compare the reliability of different categories. For example, when k = 1 is a category “people” and k = 2 is a category “animal”, z 1 (1) = 0.8, z 2 (1) = 0.2, z 1 (2) = When 0.6, z 2 (2) = 0.4, it can be said that the input candidate area image data 530 is highly likely to be classified into the category “person”.

Step1833)正規化処理部130は、各カテゴリの確信度を出力部140に出力する。   (Step 1833) The normalization processing unit 130 outputs the certainty factor of each category to the output unit 140.

以上により、本実施形態の画像処理装置10では、入力された画像データが示す画像において、被写体等を示す対象が含まれる領域の候補となる候補領域画像データを作成する。しかも、本実施形態の画像処理装置10では、畳み込みニューラルネットワークの予め設定された層の出力結果に基づいて、候補領域画像データを作成することにより、認識処理の精度の低下を防ぎつつ、候補領域画像データの数の削減を図ることができる。   As described above, the image processing apparatus 10 according to the present embodiment creates candidate area image data that is a candidate for an area that includes a target indicating a subject or the like in the image indicated by the input image data. Moreover, in the image processing apparatus 10 according to the present embodiment, the candidate region image data is created based on the output result of the preset layer of the convolutional neural network, thereby preventing a reduction in the accuracy of the recognition process and the candidate region. The number of image data can be reduced.

したがって、本実施形態の画像処理装置10は、入力された画像データが示す画像において、対象が含まれる領域と、当該対象が分類されるカテゴリとを識別する識別処理の処理時間を削減することができる。   Therefore, the image processing apparatus 10 according to the present embodiment can reduce the processing time of the identification process for identifying the region including the target and the category into which the target is classified in the image indicated by the input image data. it can.

本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。   The present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.

10 画像処理装置
20 画像処理プログラム
110 CNN処理部
111 加工部
112 畳み込み処理部
113 プーリング処理部
114 全結合処理部
120 候補領域作成処理部
121 データ決定部
122 境界決定部
123 閾値処理部
124 領域分割部
125 候補領域作成部
130 正規化処理部
140 出力部
DESCRIPTION OF SYMBOLS 10 Image processing apparatus 20 Image processing program 110 CNN process part 111 Processing part 112 Convolution process part 113 Pooling process part 114 All joint process part 120 Candidate area creation process part 121 Data determination part 122 Boundary determination part 123 Threshold process part 124 Area division part 125 Candidate area creation unit 130 Normalization processing unit 140 Output unit

特許第4322913号公報Japanese Patent No. 4322913

Rich feature hierarchies for accurate object detection and semantic segmentation. Ross Girshick, Jeff Donahue, Trevor Darrell, Jitendra Malik. CVPR 2014.Rich feature hierarchies for accurate object detection and semantic segmentation. Ross Girshick, Jeff Donahue, Trevor Darrell, Jitendra Malik. CVPR 2014.

Claims (9)

画像データが示す画像において対象が含まれる第1の領域と、該対象が分類されるカテゴリとを認識する画像処理装置であって、
畳み込みニューラルネットワークを用いて、入力された前記画像データが分類されるカテゴリを認識する認識手段と、
前記認識手段における前記畳み込みニューラルネットワークの所定の層の出力結果を示す第1の出力データに基づいて、前記画像データが示す画像に含まれる1以上の候補領域を示す1以上の候補領域画像データを作成する候補領域作成手段と
を有し、
前記認識手段は、
前記候補領域作成手段により作成された前記1以上の候補領域画像データがそれぞれ分類されるカテゴリを認識する、画像処理装置。
An image processing apparatus for recognizing a first region including a target in an image indicated by image data and a category into which the target is classified,
Recognizing means for recognizing a category into which the input image data is classified using a convolutional neural network;
One or more candidate area image data indicating one or more candidate areas included in an image indicated by the image data based on first output data indicating an output result of a predetermined layer of the convolutional neural network in the recognition means. A candidate area creation means to create,
The recognition means is
An image processing apparatus for recognizing a category into which each of the one or more candidate area image data created by the candidate area creating means is classified.
前記第1の出力データは、前記畳み込みニューラルネットワークの前記所定の層のネットワークパラメータから特定されるフィルタ毎の第2の出力データを含み、
前記第1の出力データから所定の個数の前記第2の出力データを決定する決定手段を有し、
前記候補領域作成手段は、
前記決定手段で決定された前記第2の出力データに基づいて、前記1以上の候補領域データを作成する、請求項1記載の画像処理装置。
The first output data includes second output data for each filter specified from network parameters of the predetermined layer of the convolutional neural network,
Determining means for determining a predetermined number of the second output data from the first output data;
The candidate area creating means includes
The image processing apparatus according to claim 1, wherein the one or more candidate area data are created based on the second output data determined by the determination unit.
前記決定手段は、
前記第2の出力データの代表データ値の昇順に、前記所定の個数の前記第2の出力データを決定する、請求項2記載の画像処理装置。」
The determining means includes
The image processing apparatus according to claim 2, wherein the predetermined number of the second output data is determined in ascending order of representative data values of the second output data. "
前記第2の出力データが示す画像を1以上の第2の領域に分割する分割手段を有し、
前記候補領域作成手段は、
前記分割手段により分割された前記1以上の第2の領域のそれぞれについて、該第2の領域を囲む最小の矩形領域を前記候補領域とする、請求項2又は3に記載の画像処理装置。
Dividing means for dividing the image indicated by the second output data into one or more second regions;
The candidate area creating means includes
The image processing apparatus according to claim 2, wherein, for each of the one or more second areas divided by the dividing unit, a minimum rectangular area surrounding the second area is set as the candidate area.
前記分割手段は、
微分処理により前記1以上の第2の領域の境界を検出し、該検出された境界に基づいて分割する、請求項4記載の画像処理装置。
The dividing means includes
The image processing apparatus according to claim 4, wherein a boundary of the one or more second regions is detected by differentiation processing and is divided based on the detected boundary.
前記分割手段は、
前記微分処理にSobelフィルタを用いる、請求項5記載の画像処理装置。
The dividing means includes
The image processing apparatus according to claim 5, wherein a Sobel filter is used for the differentiation process.
所定の閾値以下のデータ値を削除する閾値手段を有し、
前記分割手段は、
前記閾値手段により所定の閾値以下のデータ値を削除した前記第2の出力データが示す画像を1以上の領域に分割する、請求項4ないし6のいずれか1項に記載の画像処理装置。
Having a threshold means for deleting data values below a predetermined threshold,
The dividing means includes
7. The image processing apparatus according to claim 4, wherein an image indicated by the second output data in which a data value equal to or less than a predetermined threshold is deleted by the threshold means is divided into one or more regions.
画像データが示す画像において対象が含まれる第1の領域と、該対象が分類されるカテゴリとを認識する画像処理装置による画像処理方法であって、
畳み込みニューラルネットワークを用いて、入力された前記画像データが分類されるカテゴリを認識する認識手順と、
前記認識手順における前記畳み込みニューラルネットワークの所定の層の出力結果を示す第1の出力データに基づいて、前記画像データが示す画像に含まれる1以上の候補領域を示す1以上の候補領域画像データを作成する候補領域作成手順と
を有し、
前記認識手順は、
前記候補領域作成手順により作成された前記1以上の候補領域画像データがそれぞれ分類されるカテゴリを認識する、画像処理方法。
An image processing method by an image processing apparatus for recognizing a first region including a target in an image indicated by image data and a category into which the target is classified,
A recognition procedure for recognizing a category into which the input image data is classified using a convolutional neural network;
Based on the first output data indicating the output result of the predetermined layer of the convolutional neural network in the recognition procedure, one or more candidate area image data indicating one or more candidate areas included in the image indicated by the image data is obtained. A candidate area creation procedure to be created, and
The recognition procedure is:
An image processing method for recognizing a category into which each of the one or more candidate area image data created by the candidate area creation procedure is classified.
画像データが示す画像において対象が含まれる第1の領域と、該対象が分類されるカテゴリとを認識する画像処理装置を、
畳み込みニューラルネットワークを用いて、入力された前記画像データが分類されるカテゴリを認識する認識手段、
前記認識手段における前記畳み込みニューラルネットワークの所定の層の出力結果を示す第1の出力データに基づいて、前記画像データが示す画像に含まれる1以上の候補領域を示す1以上の候補領域画像データを作成する候補領域作成手段
として機能させ、
前記認識手段は、
前記候補領域作成手段により作成された前記1以上の候補領域画像データがそれぞれ分類されるカテゴリを認識する、プログラム。
An image processing apparatus for recognizing a first region including a target in an image indicated by image data and a category into which the target is classified;
A recognition means for recognizing a category into which the input image data is classified using a convolutional neural network;
One or more candidate area image data indicating one or more candidate areas included in an image indicated by the image data based on first output data indicating an output result of a predetermined layer of the convolutional neural network in the recognition means. Function as a candidate area creation means to create,
The recognition means is
A program for recognizing a category into which each of the one or more candidate area image data created by the candidate area creating means is classified.
JP2015119147A 2015-06-12 2015-06-12 Image processing apparatus, image processing method, and program Pending JP2017004350A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015119147A JP2017004350A (en) 2015-06-12 2015-06-12 Image processing apparatus, image processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015119147A JP2017004350A (en) 2015-06-12 2015-06-12 Image processing apparatus, image processing method, and program

Publications (1)

Publication Number Publication Date
JP2017004350A true JP2017004350A (en) 2017-01-05

Family

ID=57751837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015119147A Pending JP2017004350A (en) 2015-06-12 2015-06-12 Image processing apparatus, image processing method, and program

Country Status (1)

Country Link
JP (1) JP2017004350A (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018112550A (en) * 2017-01-12 2018-07-19 清華大学Tsinghua University Inspection apparatus and method for detecting firearms
JP2018146587A (en) * 2017-03-08 2018-09-20 清華大学Tsinghua University Method for segmenting inspection equipment and vehicle images
WO2018207334A1 (en) * 2017-05-12 2018-11-15 日本電気株式会社 Image recognition device, image recognition method, and image recognition program
CN109117858A (en) * 2017-06-26 2019-01-01 北京金风科创风电设备有限公司 Method and device for monitoring wind turbine blade icing
JP2019028504A (en) * 2017-07-25 2019-02-21 住友電気工業株式会社 Determination device, determination method, and determination program
WO2019111840A1 (en) * 2017-12-06 2019-06-13 日本電気株式会社 Image recognition model generating device, image recognition model generating method, image recognition model generating program storing medium, image generating device, image generating method, and image generating program storing medium
JP2020038664A (en) * 2018-09-04 2020-03-12 株式会社ストラドビジョン Method and apparatus for providing an integrated feature map using an ensemble of multiple outputs from a convolution neural network
US10762329B2 (en) 2017-12-06 2020-09-01 Toyota Jidosha Kabushiki Kaisha Inter-object relation recognition apparatus, learned model, recognition method and non-transitory computer readable medium
KR20210075955A (en) * 2017-10-27 2021-06-23 주식회사 두잉랩 Methods for management of nutrition and disease using food images
US11430137B2 (en) 2018-03-30 2022-08-30 Samsung Electronics Co., Ltd. Electronic device and control method therefor

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018112550A (en) * 2017-01-12 2018-07-19 清華大学Tsinghua University Inspection apparatus and method for detecting firearms
US10796436B2 (en) 2017-03-08 2020-10-06 Nuctech Company Limited Inspection apparatuses and methods for segmenting an image of a vehicle
JP2018146587A (en) * 2017-03-08 2018-09-20 清華大学Tsinghua University Method for segmenting inspection equipment and vehicle images
WO2018207334A1 (en) * 2017-05-12 2018-11-15 日本電気株式会社 Image recognition device, image recognition method, and image recognition program
JPWO2018207334A1 (en) * 2017-05-12 2019-11-21 日本電気株式会社 Image recognition apparatus, image recognition method, and image recognition program
CN109117858A (en) * 2017-06-26 2019-01-01 北京金风科创风电设备有限公司 Method and device for monitoring wind turbine blade icing
CN109117858B (en) * 2017-06-26 2024-02-13 北京金风科创风电设备有限公司 Method and device for monitoring icing of wind driven generator blade
JP2019028504A (en) * 2017-07-25 2019-02-21 住友電気工業株式会社 Determination device, determination method, and determination program
KR102326540B1 (en) * 2017-10-27 2021-11-16 주식회사 두잉랩 Methods for management of nutrition and disease using food images
KR20210075955A (en) * 2017-10-27 2021-06-23 주식회사 두잉랩 Methods for management of nutrition and disease using food images
US10762329B2 (en) 2017-12-06 2020-09-01 Toyota Jidosha Kabushiki Kaisha Inter-object relation recognition apparatus, learned model, recognition method and non-transitory computer readable medium
JPWO2019111840A1 (en) * 2017-12-06 2020-11-19 日本電気株式会社 Image recognition model generator, image recognition model generation method and image recognition model generation program
US11501522B2 (en) 2017-12-06 2022-11-15 Nec Corporation Image recognition model generating device, image recognition model generating method, and image recognition model generating program storing medium
WO2019111840A1 (en) * 2017-12-06 2019-06-13 日本電気株式会社 Image recognition model generating device, image recognition model generating method, image recognition model generating program storing medium, image generating device, image generating method, and image generating program storing medium
US11430137B2 (en) 2018-03-30 2022-08-30 Samsung Electronics Co., Ltd. Electronic device and control method therefor
JP2020038664A (en) * 2018-09-04 2020-03-12 株式会社ストラドビジョン Method and apparatus for providing an integrated feature map using an ensemble of multiple outputs from a convolution neural network

Similar Documents

Publication Publication Date Title
JP2017004350A (en) Image processing apparatus, image processing method, and program
US9697416B2 (en) Object detection using cascaded convolutional neural networks
JP6737776B2 (en) Feature calculation in sensor element array
JP6351240B2 (en) Image processing apparatus, image processing method, and program
CN100405388C (en) Specific object detection device
KR101831204B1 (en) Method and apparatus for document area segmentation
CN107209942B (en) Object detection method and image retrieval system
CN110689036A (en) Method and system for automatic chromosome classification
WO2017190646A1 (en) Facial image processing method and apparatus and storage medium
US8811725B2 (en) Learning device, learning method, identification device, identification method, and program
CN110176024B (en) Method, device, equipment and storage medium for detecting target in video
CN110582783B (en) Training device, image recognition device, training method, and computer-readable information storage medium
JPWO2019026104A1 (en) Information processing apparatus, information processing program, and information processing method
US10062007B2 (en) Apparatus and method for creating an image recognizing program having high positional recognition accuracy
JP6989450B2 (en) Image analysis device, image analysis method and program
CN101228552B (en) Face image detecting device, and face image detecting method
JP2005190400A (en) Face image detection method, face image detection system, and face image detection program
JP6937508B2 (en) Image processing system, evaluation model construction method, image processing method and program
CN110516731B (en) Visual odometer feature point detection method and system based on deep learning
US11410278B2 (en) Automatic artifact removal in a digital image
CN109961083B (en) Method and image processing entity for applying a convolutional neural network to an image
CN102713974A (en) Learning device, identification device, learning identification system and learning identification device
US20160078312A1 (en) Image processing method and apparatus using training dictionary
CN111507252A (en) Human body falling detection device and method, electronic terminal and storage medium
JP2019046225A (en) Recognition device, recognition program, and recognition method