JP5974148B2 - Image processing apparatus, image data processing method and program - Google Patents

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

Info

Publication number
JP5974148B2
JP5974148B2 JP2015153494A JP2015153494A JP5974148B2 JP 5974148 B2 JP5974148 B2 JP 5974148B2 JP 2015153494 A JP2015153494 A JP 2015153494A JP 2015153494 A JP2015153494 A JP 2015153494A JP 5974148 B2 JP5974148 B2 JP 5974148B2
Authority
JP
Japan
Prior art keywords
determination
weak
image
processing
discrimination
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.)
Expired - Fee Related
Application number
JP2015153494A
Other languages
Japanese (ja)
Other versions
JP2015222594A (en
Inventor
福田 康男
康男 福田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2015153494A priority Critical patent/JP5974148B2/en
Publication of JP2015222594A publication Critical patent/JP2015222594A/en
Application granted granted Critical
Publication of JP5974148B2 publication Critical patent/JP5974148B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Analysis (AREA)

Description

本発明は、画像処理装置、画像データの処理方法およびプログラムに関する。特に、画像中に写っている特定の被写体を検出する技術に関する。   The present invention relates to an image processing apparatus, a method for processing image data, and a program. In particular, the present invention relates to a technique for detecting a specific subject in an image.

画像から特定の被写体パターンを自動的に検出する画像処理方法は有用であり、例えば、人間の顔の判定に利用することができる。このような方法は、通信会議、マン・マシン・インタフェース、セキュリティ、人間の顔を追跡するためのモニタ・システム、画像圧縮等の多くの分野で使用することができる。このような画像中から顔を検出する技術としては、非特許文献1に各種方式が挙げられている。   An image processing method for automatically detecting a specific subject pattern from an image is useful, and can be used, for example, for determination of a human face. Such methods can be used in many areas such as teleconferencing, man-machine interface, security, monitor systems for tracking human faces, image compression, and the like. As a technique for detecting a face from such an image, Non-Patent Document 1 lists various methods.

特に、実行速度と検出率の高さとから、非特許文献2に掲載されるViolaらのAdaBoostベースの手法は、顔検出研究において広く使用されている。AdaBoostベースの手法は、それぞれ異なる単純な判別処理のフィルタを直列状に連結し、判別処理の途中で非顔領域であるとわかった時点で、後続の判別処理を打ち切ることで、判別処理の高速化を行っている。この判別処理をさらに高速化するために、判別処理の並列化やパイプライン化が考えられるが、画像データなどの内容に応じて処理の打ち切りが発生するため、判別処理のスケジュールが困難であるという課題がある。特に、判別処理をハードウェアで実現する場合には、制限されたリソースをより高い効率で活用して判別処理を実現することが求められるので、さらにこのスケジュールの困難さが大きな課題となっている。   In particular, due to its high execution speed and high detection rate, the AdaBoost-based method of Viola et al. Published in Non-Patent Document 2 is widely used in face detection research. The AdaBoost-based method connects different simple discriminant filters in series, and when the discriminant process is determined to be a non-face area, the subsequent discriminant process is terminated, thereby speeding up the discriminant process. Is going on. In order to further speed up the discrimination process, parallelization of the discrimination process and pipeline processing can be considered, but the process is interrupted depending on the contents of the image data and the like, and it is difficult to schedule the discrimination process. There are challenges. In particular, when the discrimination processing is realized by hardware, it is required to realize the discrimination processing by using limited resources with higher efficiency, and the difficulty of this schedule becomes a major issue. .

課題についてより具体的に説明するために、以下ではBoostingアルゴリズムを応用した顔検出処理を例として説明を行う。図2は、Boostingアルゴリズムを応用した顔検出処理のアルゴリズムを説明する図である。図2において、201は入力された画像データを構成する部分画像であるウィンドウ画像である。ウィンドウ画像201は、後述する弱判別器210〜250が参照する画像領域含む。   In order to describe the problem more specifically, a face detection process using the Boosting algorithm will be described below as an example. FIG. 2 is a diagram for explaining an algorithm for face detection processing to which the Boosting algorithm is applied. In FIG. 2, reference numeral 201 denotes a window image that is a partial image constituting the input image data. The window image 201 includes an image region referred to by weak classifiers 210 to 250 described later.

弱判別器210は、ウィンドウ画像201の一部もしくは全部の画素値を参照し、その画素値に対して予め定められた演算処理を行い、ウィンドウ画像201が、検出対象オブジェクト(例えば、人間の顔領域)を含むか否かを判定する。この予め定めておいた演算に用いる係数等のパラメータは、実際の検出処理の前に機械学習により決定されている。   The weak discriminator 210 refers to a part or all of the pixel values of the window image 201, performs a predetermined calculation process on the pixel values, and the window image 201 is detected by the detection target object (for example, a human face). Region) is determined. Parameters such as coefficients used for the predetermined calculation are determined by machine learning before actual detection processing.

弱判別器211〜250も弱判別器210と同様の演算処理が可能であるが、好ましくは弱判別器210が参照するウィンドウ画像201の参照位置および参照範囲、弱判別器210の演算に用いる係数等のパラメータがそれぞれ異なるよう構成する。弱判別器210〜250はウィンドウ画像201の参照位置や範囲、また演算に用いる係数等のパラメータが異なるだけで、弱判別器210の処理と概略同じ処理を実行することが可能である。図2において、N個の弱判別器(弱判別器210〜弱判別器250)は直列状に接続されている。弱判別器210〜弱判別器250のそれぞれは、演算結果に応じてPASSかNGの判定を行う。そして、0番目の弱判別器210から処理を行い、判定結果がPASSであれば次の弱判別器211が判定処理を行う、というように順次処理を進める。そうして、最終弱判別器である弱判別器250の判定結果もPASSであったら、ウィンドウ画像201は検出対象のオブジェクト(顔)を含むと判定する。一方で、N個の弱判別器のいずれかの弱判別器における判定処理でNGと判定された場合は、以降の処理は打切られ、ウィンドウ画像201には検出の対象オブジェクト(顔)が含まれないと判定する。   The weak classifiers 211 to 250 can perform the same arithmetic processing as the weak classifier 210, but preferably the reference position and reference range of the window image 201 referred to by the weak classifier 210, and the coefficients used for the calculation of the weak classifier 210 The parameters such as are different from each other. The weak classifiers 210 to 250 can execute substantially the same processing as the processing of the weak classifier 210 except that the reference position and range of the window image 201 and parameters such as coefficients used for calculation are different. In FIG. 2, N weak classifiers (weak classifier 210 to weak classifier 250) are connected in series. Each of the weak discriminator 210 to the weak discriminator 250 determines PASS or NG according to the calculation result. Then, the process is performed sequentially from the 0th weak classifier 210, and if the determination result is PASS, the next weak classifier 211 performs the determination process. If the determination result of the weak classifier 250, which is the final weak classifier, is also PASS, it is determined that the window image 201 includes the detection target object (face). On the other hand, when it is determined as NG in the determination process in one of the N weak classifiers, the subsequent processing is aborted, and the detection target object (face) is included in the window image 201. Judge that there is no.

図3は、各弱判別器の出力がPASS/NGの2値ではなく、各弱判別器の出力がOK(部分画像は検出対象オブジェクト(顔)を含む)/PASS/NGの3通りの出力をする場合の例である。図3において、図2と同じものについては同じ参照番号を付して説明を省略する。弱判別器310〜350が図2の弱判別器210〜250と異なるのは、先に述べたように出力が3値である点である。N個の弱判別器310〜350のいずれかの弱判別器における判定処理で、 部分画像が検出対象オブジェクト(顔)を含むことが判定された場合(判定結果「OK」)、後続の判定処理を行う必要がないため、判定処理は打ち切りとなる。この点において、図2で説明した弱判別器と相違する。N個の弱判別器310〜350におけるその他の処理は、図2で説明した弱判別器と同様である。   FIG. 3 shows that the output of each weak classifier is not a binary value of PASS / NG, and the output of each weak classifier is OK (the partial image includes a detection target object (face)) / PASS / NG. This is an example when In FIG. 3, the same components as those in FIG. The weak classifiers 310 to 350 are different from the weak classifiers 210 to 250 in FIG. 2 in that the output is ternary as described above. If the determination process in any one of the N weak classifiers 310 to 350 determines that the partial image includes the detection target object (face) (determination result “OK”), the subsequent determination process Therefore, the determination process is aborted. This is different from the weak classifier described in FIG. The other processes in the N weak classifiers 310 to 350 are the same as those of the weak classifiers described with reference to FIG.

顔検出処理は、与えられた画像の一部分に対して、弱判別器における判定処理を繰り返し行うことで実現される。この時、直列状に並んだ弱判別器列の序盤でなるべく多くの判定結果を確定(OKもしくはNG)できるように構成すれば、全体として弱判別器の処理回数の期待値を小さく抑えることができる。また、全体として弱判別器の演算量の削減や処理速度の向上が期待できる。   The face detection process is realized by repeatedly performing the determination process in the weak classifier on a part of a given image. At this time, if the configuration is such that as many determination results as possible can be confirmed (OK or NG) at the beginning of the series of weak classifiers arranged in series, the expected value of the number of processing times of the weak classifiers as a whole can be kept small. it can. Moreover, it can be expected that the calculation amount of the weak classifier is reduced and the processing speed is improved as a whole.

M.H.Yang, D.J.Kriegman and N.Ahuja. “Detecting Faces in Images:A Survey,” IEEE Trans. on PAMI, vol.24, no.1, pp.34-58, January, 2002.M.H.Yang, D.J.Kriegman and N.Ahuja. “Detecting Faces in Images: A Survey,” IEEE Trans. On PAMI, vol.24, no.1, pp.34-58, January, 2002. P.Viola and M. Jones. “Robust Real-time Object Detection,” in Proc. of IEEE Workshop SCTV, July, 2001.P. Viola and M. Jones. “Robust Real-time Object Detection,” in Proc. Of IEEE Workshop SCTV, July, 2001.

しかしながら、アルゴリズム的な観点では上記のようにして平均演算量を削減できる一方、これをさらに高速化するためにパイプライン処理化する場合、各ウィンドウに対する処理量が不均一なため、処理のスケジュールが難しいという課題がある。   However, from an algorithmic point of view, while the average amount of computation can be reduced as described above, when pipeline processing is performed in order to further increase the processing speed, the processing amount for each window is not uniform, so the processing schedule is not uniform. There is a problem that it is difficult.

本発明は、入力画像データに対し、複数の弱判別器を直列に接続して構成される判別処理を効率良く行うことを可能にする技術を提供する。   The present invention provides a technique that makes it possible to efficiently perform a discrimination process configured by connecting a plurality of weak discriminators in series to input image data.

本発明の一つの側面にかかる画像処理装置は、複数の部分画像の1つを指定し、該指定された部分画像に検出の対象が含まれるか否かを判別する判別処理のための複数の弱判別処理の1つを指定して、該指定された弱判別処理の実行を指示する指示手段と、
前記指示手段の前記指示に従って、前記指定された部分画像について前記指定された弱判別処理を行う演算手段と、
前記演算手段による前記指定された弱判別処理の結果に基づいて、前記指定された部分画像に対する判別処理が終了したか否かを判定する判定手段と、を備え、
前記指示手段は、前記複数の部分画像に対する所定の順序に従って、前記判定手段により前記判別処理が終了したと判定された部分画像以外の部分画像を順次循環的に指定し、前記複数の弱判別処理のうち該指定された部分画像に対して未実行の弱判別処理の1つを指定して、該指定された弱判別処理の実行を順次指示し、
前記演算手段は、前記指示手段による順次指示において指定された部分画像に対して指定された弱判別処理を順次実行することを特徴とする。
An image processing apparatus according to one aspect of the present invention specifies a plurality of partial images, and specifies a plurality of determination processes for determining whether or not a detection target is included in the specified partial image. Instruction means for designating one of the weak discrimination processes and instructing execution of the designated weak discrimination process;
Computing means for performing the designated weak discrimination processing for the designated partial image in accordance with the instruction of the instruction means;
Determination means for determining whether or not the determination processing for the specified partial image is completed based on the result of the specified weak determination processing by the calculation means;
The instructing means sequentially designates partial images other than the partial images determined by the determining means as having been completed in accordance with a predetermined order for the plurality of partial images, and the plurality of weak determination processes Designating one of the unexecuted weak discrimination processes for the designated partial image, sequentially instructing the execution of the designated weak discrimination process,
The computing means sequentially executes the designated weak discrimination processing for the partial images designated in the sequential instruction by the instruction means.

本発明によれば、複数の部分画像に対する判別処理を効率的に行うことが可能になる。   According to the present invention, it is possible to efficiently perform discrimination processing for a plurality of partial images.

実施形態にかかる画像処理装置の構成例を示す図。1 is a diagram illustrating a configuration example of an image processing apparatus according to an embodiment. Boostingアルゴリズムを応用した検出処理の例を説明する図。The figure explaining the example of the detection process which applied the Boosting algorithm. Boostingアルゴリズムを応用した検出処理の例を説明する図。The figure explaining the example of the detection process which applied the Boosting algorithm. 分岐構造を持つ、Boostingアルゴリズムを応用した検出処理の例を説明する図。The figure explaining the example of the detection process which applied the Boosting algorithm with a branch structure. 指示部の処理の流れを説明する図。The figure explaining the flow of a process of an instruction | indication part. 指示部の処理における初期化処理の流れを説明する図。The figure explaining the flow of the initialization process in the process of an instruction | indication part. 指示部の処理における指示部状態更新処理の流れを説明する図。The figure explaining the flow of the instruction | indication part state update process in the process of an instruction | indication part. 指示部の処理におけるジョブ投入処理の流れを説明する図。The figure explaining the flow of the job input process in the process of an instruction | indication part. 指示部の処理におけるメモリ態更新処理の流れを説明する図。The figure explaining the flow of the memory state update process in the process of an instruction | indication part. 判定部の処理の流れを説明する図。The figure explaining the flow of a process of a determination part. ウィンドウ画像の例を示す図。The figure which shows the example of a window image. 弱判別器の処理を例示する図。The figure which illustrates the process of a weak discriminator. 弱判別器の処理を例示する図。The figure which illustrates the process of a weak discriminator. 弱判別器の処理を例示する図。The figure which illustrates the process of a weak discriminator. 弱判別器の処理を例示する図。The figure which illustrates the process of a weak discriminator. 指示部、演算部、パラメータ供給部、メモリおよび判定部の間の動作の流れを示す図。The figure which shows the flow of operation | movement among an instruction | indication part, a calculating part, a parameter supply part, memory, and a determination part. 判定部の処理における判定部状態更新処理の流れを説明する図。The figure explaining the flow of the determination part state update process in the process of a determination part. ウィンドウ画像に対する判別処理の実行順を例示する図。The figure which illustrates the execution order of the discrimination processing with respect to a window image.

(第1実施形態)
本発明の実施形態を、図面を参照して詳細に説明する。図1は、実施形態にかかる画像処理方法を実現する画像処理装置の概略構成を示す図である。図1において、指示部101は、部分画像のそれぞれに対する画像処理のスケジュール管理を行う。指示部101は、外部からの制御入力(画像処理の開始指示)を受け取り、画像処理が開始される。指示部101は、メモリ102との間でデータの入出力が可能である。また、指示部101は、演算部103へのデータ出力が可能であり、判定部104からのデータ入力が可能なように構成されている。
(First embodiment)
Embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a diagram illustrating a schematic configuration of an image processing apparatus that realizes an image processing method according to an embodiment. In FIG. 1, an instruction unit 101 performs image processing schedule management for each partial image. The instruction unit 101 receives an external control input (image processing start instruction) and starts image processing. The instruction unit 101 can input and output data with the memory 102. In addition, the instruction unit 101 is configured to be able to output data to the calculation unit 103 and to be able to input data from the determination unit 104.

メモリ102は、例えば、図2におけるウィンドウ画像201を複数保持することが可能である。メモリ102は、外部に対して画像データの要求を送信し、また、画像データを取得し、取得した画像データを保持することができる。さらに、メモリ102は、指示部101からの指示を受信して、応答が返せるように構成されている。また、メモリ102は、演算部103からの画像データの要求受信と、演算部103へ要求された画像データの出力が可能なように構成されている。メモリ102は検出対象の画像データの全てを同時に格納できる記憶容量を有するものであってもよいが、検出対象の画像データの全体を保持するための記憶容量は必ずしも必要ない。メモリ102は、複数のウィンドウ画像を保持できればよく、例えば、検出対象の画像データをバンド状もしくはブロック状に分割した部分画像を格納できるような記憶容量を有すればよい。また、メモリ102は、指示部101からの指示に応じて、メモリ102に保持している画像データの一部もしくは全部を入れ替えることが可能なように構成されている。その場合、メモリ102は、指示部101からの指示に応じて、外部に対して画像データの要求を送信し、画像データの受信(取得)が完了した時点で指示部101に対して返答するように構成されている。   The memory 102 can hold, for example, a plurality of window images 201 in FIG. The memory 102 can transmit a request for image data to the outside, acquire image data, and hold the acquired image data. Further, the memory 102 is configured to receive an instruction from the instruction unit 101 and return a response. The memory 102 is configured to be able to receive a request for image data from the calculation unit 103 and output the requested image data to the calculation unit 103. The memory 102 may have a storage capacity capable of storing all of the detection target image data at the same time, but a storage capacity for holding the entire detection target image data is not necessarily required. The memory 102 only needs to hold a plurality of window images. For example, the memory 102 may have a storage capacity capable of storing partial images obtained by dividing image data to be detected into bands or blocks. Further, the memory 102 is configured so that part or all of the image data held in the memory 102 can be replaced in accordance with an instruction from the instruction unit 101. In this case, the memory 102 transmits a request for image data to the outside in response to an instruction from the instruction unit 101, and responds to the instruction unit 101 when reception (acquisition) of the image data is completed. It is configured.

演算部103は、少なくとも1つの弱判別器の処理を実行可能なように構成されている。また、演算部103は、メモリ102に画像データの要求を送信し、メモリ102から送信された画像データ(複数の部分画像データ)を参照できるように構成されている。パラメータ供給部105は、弱判別器が判別処理に用いるパラメータを保持しており、演算部103からの要求に応じて、パラメータを送信できるように構成されている。演算部103は、パラメータの要求をパラメータ供給部105に送信し、パラメータ供給部105から送信されたパラメータを参照できるように構成されている。判定部104は、演算部103の出力を受信して判定を行い、判定結果を出力する。この際、判定結果は指示部101にも送信される。   The calculation unit 103 is configured to be able to execute processing of at least one weak classifier. The calculation unit 103 is configured to transmit a request for image data to the memory 102 and to refer to the image data (a plurality of partial image data) transmitted from the memory 102. The parameter supply unit 105 holds parameters used by the weak classifier for the discrimination process, and is configured to transmit parameters in response to a request from the calculation unit 103. The calculation unit 103 is configured to transmit a parameter request to the parameter supply unit 105 and to refer to the parameter transmitted from the parameter supply unit 105. The determination unit 104 receives the output of the calculation unit 103, makes a determination, and outputs a determination result. At this time, the determination result is also transmitted to the instruction unit 101.

メモリ102が保持する複数のウィンドウ画像を図11の参照により例示的に説明する。メモリ領域1110は、演算部103がメモリ102から参照可能な領域を表しており、メモリ領域1110の内部にある最も小さな矩形領域1111は各画素データを表している。1101〜1105はメモリ領域1110に設定された複数のウィンドウ画像を表しており、例えば、ウィンドウ画像1101はメモリ領域1110の位置(0、0)から幅10画素、高さ10画素の領域にある。また、同様にウィンドウ画像1102はメモリ領域1110の位置(0、2)から幅、高さともに10画素の領域にある。ウィンドウ画像1103はメモリ領域1110の位置(0、4)から幅、高さともに10画素の領域にある。ウィンドウ画像1104はメモリ領域1110の位置(0、6)から幅、高さともに10画素の領域にある。そして、ウィンドウ画像1105はメモリ領域1110の位置(0、8)から幅、高さともに10画素の領域である。ウィンドウ画像1101〜1105は、図2におけるウィンドウ画像201に対応するが、それぞれ原画像の位置が異なるウィンドウ画像である。   A plurality of window images held in the memory 102 will be exemplarily described with reference to FIG. The memory area 1110 represents an area that can be referenced from the memory 102 by the arithmetic unit 103, and the smallest rectangular area 1111 inside the memory area 1110 represents each pixel data. Reference numerals 1101 to 1105 denote a plurality of window images set in the memory area 1110. For example, the window image 1101 is in an area having a width of 10 pixels and a height of 10 pixels from the position (0, 0) of the memory area 1110. Similarly, the window image 1102 is in an area of 10 pixels from the position (0, 2) of the memory area 1110 in both width and height. The window image 1103 is in an area of 10 pixels from the position (0, 4) of the memory area 1110 in both width and height. The window image 1104 is in an area of 10 pixels from the position (0, 6) of the memory area 1110 in both width and height. The window image 1105 is an area having 10 pixels in both width and height from the position (0, 8) of the memory area 1110. Window images 1101 to 1105 correspond to the window image 201 in FIG. 2, but are window images having different positions of the original images.

図16は、図1で説明した、指示部101、演算部103、パラメータ供給部105、メモリ102、および判定部104の処理の流れを説明するシーケンス図である。対象オブジェクトの検出処理は、例えば、図2で説明したように、1つのウィンドウ画像に対してN個の弱判別器を順次適用して、N個全ての弱判別器を通過(PASSと判定された)場合、ウィンドウ画像は対象オブジェクトを含むと判定する。あるいは、いずれかの弱判別器でNGと判定された場合、その時点で後続する弱判別器の処理を取りやめ、ウィンドウ領域が対象オブジェクトを含まないと判定する。N個の弱判別器のそれぞれは異なるパラメータを処理に使用するが、処理の内容は同一である。メモリは同時に複数のウィンドウ画像を保持している。   FIG. 16 is a sequence diagram illustrating the processing flow of the instruction unit 101, the calculation unit 103, the parameter supply unit 105, the memory 102, and the determination unit 104 described in FIG. For example, as described with reference to FIG. 2, the target object detection process sequentially applies N weak classifiers to one window image and passes through all N weak classifiers (determined as PASS). The window image includes the target object. Alternatively, if any weak classifier determines NG, the process of the subsequent weak classifier is canceled at that time, and it is determined that the window area does not include the target object. Each of the N weak classifiers uses different parameters for processing, but the content of the processing is the same. The memory holds a plurality of window images at the same time.

指示部101は、外部から画像処理の開始の指示を受信すると(S1601)、メモリ102に対して画像更新要求を送信する。メモリ102は、指示部101から画像更新要求を受信すると、外部に対して画像データを要求し、画像データの要求に対して外部から送信された画像データを蓄積する。複数のウィンドウ画像を構成するのに十分なデータ量を蓄積した時点で指示部101に応答(OK)を返す。   When the instruction unit 101 receives an instruction to start image processing from the outside (S1601), the instruction unit 101 transmits an image update request to the memory 102. When receiving an image update request from the instruction unit 101, the memory 102 requests image data from the outside, and stores image data transmitted from the outside in response to the image data request. A response (OK) is returned to the instruction unit 101 when a sufficient amount of data for composing a plurality of window images is accumulated.

指示部101は演算部103に対して判別処理の実行を指示する(ジョブ指示)。指示部101は演算部103に対し、判別処理の対象となるウィンドウ画像や弱判別器に対して、識別情報(ID)を付与する。1つのウィンドウ画像に対する1つの弱判別器の処理を、以下、判別ジョブ、もしくは単にジョブと呼ぶことにする。判別ジョブの指示は、ウィンドウ画像の識別情報(ID)と弱判別器の識別情報(ID)との対を演算部103に対して送信することで行う。指示部101はステップS1602、S1603、S1604において、次に処理すべき判別ジョブを決定し、演算部103に判別ジョブの指示を送信する。ステップS1602〜S1604の判別ジョブの生成については後述する。   The instruction unit 101 instructs the calculation unit 103 to execute a discrimination process (job instruction). The instruction unit 101 gives the calculation unit 103 identification information (ID) to the window image or weak classifier that is the target of the discrimination process. The processing of one weak classifier for one window image is hereinafter referred to as a discrimination job or simply a job. The discrimination job is instructed by transmitting a pair of identification information (ID) of the window image and identification information (ID) of the weak discriminator to the calculation unit 103. In step S1602, S1603, and S1604, the instruction unit 101 determines a determination job to be processed next, and transmits a determination job instruction to the calculation unit 103. The generation of the discrimination job in steps S1602 to S1604 will be described later.

演算部103は、指示部101からの指示を受け取り、パラメータ供給部105にパラメータの要求を送信する。パラメータには、後続の演算処理ステップS1611で用いる係数、判別処理の継続(PASS)または打ち切り(終了:NG)の判定を行うための閾値や、また、ウィンドウ画像内の参照領域の位置や大きさに関する情報などが含まれる。演算部103は、パラメータ供給部105から送信されたパラメータを受信すると、そのパラメータに従いメモリ102に対して演算処理に必要な画像データを参照するための画像データの要求を送信する。演算部103はメモリ102から送信された画像データを受信して、受信した画像データと、先に受信したパラメータとを用いて、予め定められた演算を行い(S1611)、その演算結果(PASS/NG)を判定部104に送信する。   The calculation unit 103 receives an instruction from the instruction unit 101 and transmits a parameter request to the parameter supply unit 105. The parameters include a coefficient used in the subsequent arithmetic processing step S1611, a threshold value for determining whether to continue (PASS) or abort (end: NG) the determination process, and the position and size of the reference area in the window image. Information about When the calculation unit 103 receives the parameter transmitted from the parameter supply unit 105, the calculation unit 103 transmits a request for image data for referring to the image data necessary for the calculation process to the memory 102 according to the parameter. The calculation unit 103 receives the image data transmitted from the memory 102, performs a predetermined calculation using the received image data and the previously received parameter (S1611), and the calculation result (PASS / NG) is transmitted to the determination unit 104.

ステップS1612とステップS1613は、ステップS1611と異なる判別ジョブに対する演算処理である。   Steps S <b> 1612 and S <b> 1613 are arithmetic processing for a discrimination job different from step S <b> 1611.

ステップS1612、S1613における判別ジョブはウィンドウ画像の識別情報(ID)と弱判別器の識別情報(ID)との少なくとも一方が異なる。それに応じてパラメータ要求や画像データの要求がそれぞれ行われるが、処理の内容はステップS1611と同じである。   The discrimination jobs in steps S1612 and S1613 differ in at least one of the identification information (ID) of the window image and the identification information (ID) of the weak discriminator. In response to this, a parameter request and image data request are made respectively, but the contents of the processing are the same as in step S1611.

判定部104は、ステップS1611の演算結果を演算部103から受け取って、判定処理(S1621)を行い、その結果を指示部101に送信する。判定処理については後述する。尚、ステップS1622とステップS1623は、判定対象の判別ジョブが異なるだけで同じ処理であり、判定処理が完了すると、ステップS1621と同様に判別結果は指示部101に送信される。   The determination unit 104 receives the calculation result of step S1611 from the calculation unit 103, performs determination processing (S1621), and transmits the result to the instruction unit 101. The determination process will be described later. Note that step S1622 and step S1623 are the same processing except that the determination job to be determined is different. When the determination processing is completed, the determination result is transmitted to the instruction unit 101 as in step S1621.

指示部101の判別ジョブの指示もしくは演算部103の演算結果の送信と、判定部104の判定結果の送信はタイミングがずれているようになっているが、それは表記上の都合で、実際は概略同じタイミングであってよい。例えば、ステップS1604のジョブ生成の結果についての判別ジョブ指示と、ステップS1621の判定処理の結果である判定結果の送信とは、ほぼ同時に発生し得る。   The timing of the determination job instruction of the instruction unit 101 or the transmission of the calculation result of the calculation unit 103 and the transmission of the determination result of the determination unit 104 are shifted from each other. It may be timing. For example, the determination job instruction for the result of job generation in step S1604 and the transmission of the determination result that is the result of the determination process in step S1621 can occur almost simultaneously.

図16では、ステップS1621の判定処理で、判定結果が確定した場合を例示的に示している。指示部101は、ステップS1621における判定結果を判定部104から受信する。ウィンドウ画像に対象物(特定パターン)が含まれることを示す結果が判定結果に含まれている場合、ウィンドウ画像に対する検出処理が終了したことを検出する(S1605)。以後、指示部101は判別ジョブの生成を停止する。   FIG. 16 exemplarily shows a case where the determination result is confirmed in the determination processing in step S1621. The instruction unit 101 receives the determination result in step S1621 from the determination unit 104. When the result indicating that the object (specific pattern) is included in the window image is included in the determination result, it is detected that the detection processing for the window image has ended (S1605). Thereafter, the instruction unit 101 stops generating the discrimination job.

しかしながら、図1に示した各部の全ての処理が終わるのは、ステップS1623の判定処理による判定結果送信を受け取った後のステップS1606である。ステップS1606において、全体の処理が終了したか否かを判定するために、指示部101がジョブ生成により演算部103に対して指示したジョブの数と、判定部104が指示部101に送信した判定結果の数とをそれぞれ計数しておく。そして、ステップS1605によるウィンドウ画像の処理終了検出の後に、指示部101は、計数された両者の数が一致するタイミングで、全体の処理が終了したことを判定する。   However, it is step S1606 after receiving the determination result transmission by the determination process of step S1623 that all the processes of each unit shown in FIG. In step S <b> 1606, the number of jobs instructed by the instruction unit 101 to the calculation unit 103 by job generation and the determination unit 104 transmitted to the instruction unit 101 in order to determine whether or not the entire processing has been completed. Count the number of results. After the window image processing end detection in step S1605, the instruction unit 101 determines that the entire processing has ended at the timing when the counted numbers match.

ステップS1622およびS1623の判定処理が、ステップS1621で判別結果が確定済みであるウィンドウ画像と同一のウィンドウ画像に対する判別ジョブである場合、判定部104はそのウィンドウ画像の判別処理が終了済みであると判定する。判定部104は、識別情報(ID)の比較により、同一のウィンドウ画像であるか否かについての判定を行うことが可能である。指示部101においても、ステップS1605において、ウィンドウ画像に対する検出処理が終了したことを検出しており、ウィンドウ画像の判別処理が終了していることは既知である。このような場合、重複した演算処理の負荷を軽減するために、ステップS1622およびS1623の判定処理を省略して、ダミーのデータを指示部101に返すこともできる。   If the determination processing in steps S1622 and S1623 is a determination job for the same window image as the window image for which the determination result has been confirmed in step S1621, the determination unit 104 determines that the determination processing for the window image has been completed. To do. The determination unit 104 can determine whether or not they are the same window image by comparing identification information (ID). The instruction unit 101 also detects that the detection process for the window image has ended in step S1605, and it is known that the window image determination process has ended. In such a case, the dummy data can be returned to the instructing unit 101 by omitting the determination processing in steps S <b> 1622 and S <b> 1623 in order to reduce the load of the overlapping arithmetic processing.

このような場合、例えば、演算処理S1612およびS1613の演算処理の結果は正確なものである必要はない。従って、ステップS1621の判定処理で全てのウィンドウ画像に対する判定処理が確定した後であれば、指示部101はメモリ102に対して画像データの入れ替えを指示しても良い。メモリ102は、画像データの入れ替え中でもメモリ102に対する演算部103の画像データ要求に対して応答を返すように構成することが可能である。そうすれば、演算部103は演算を進めることができる一方、判定部104における重複した判定処理の演算負荷を軽減することができる。   In such a case, for example, the results of the calculation processes of the calculation processes S1612 and S1613 do not need to be accurate. Therefore, the instruction unit 101 may instruct the memory 102 to replace image data after the determination processing for all window images is confirmed in the determination processing in step S1621. The memory 102 can be configured to return a response to the image data request of the calculation unit 103 to the memory 102 even during the replacement of the image data. Then, the calculation unit 103 can advance the calculation, while reducing the calculation load of the overlapping determination process in the determination unit 104.

(指示部101の処理)
図5は、指示部101の処理の流れを示す流れ図である。メモリ102が保持するウィンドウ画像はW個(W>0)あり、0〜(W-1)までの識別情報を与えて区別するものとする。例えば、図11の例において、ウィンドウ画像1101〜1105に対して順番にウィンドウ画像の識別情報(ID)=0〜4の識別情報(ID)を付与する。
(Processing of the instruction unit 101)
FIG. 5 is a flowchart showing the processing flow of the instruction unit 101. The window images held by the memory 102 are W (W> 0), and are distinguished by giving identification information from 0 to (W-1). For example, in the example of FIG. 11, identification information (ID) of window image identification information (ID) = 0 to 4 is given to the window images 1101 to 1105 in order.

また、先頭に配列された弱判別器から順番に弱判別器の識別情報(ID)=0〜(N−1)の識別情報(ID)を付与し、弱判別器の識別情報(ID)の順に判別処理が順次実行される。まず、ステップS501で初期化処理を行う。初期化処理の詳細を図6の参照により説明する。   Further, identification information (ID) of weak classifiers is assigned in order from the weak classifier arranged at the head, and identification information (ID) of weak classifiers is assigned. The determination process is sequentially executed in order. First, initialization processing is performed in step S501. Details of the initialization process will be described with reference to FIG.

まず、ステップS601で、次に処理すべきウィンドウ画像の識別情報(ID)を保持するcurrentをW-1で初期化する。W-1に設定するのは、後述する判別ジョブ投入処理においてウィンドウ画像の識別情報(ID)0番から処理を開始するためにW-1としているが、値を明確に初期化すれば良く、他のウィンドウ画像の識別情報(ID)で初期化してもよい。また、最初の処理であることを表す、init_flagを1にセットする。   First, in step S601, current holding the identification information (ID) of the window image to be processed next is initialized with W-1. The W-1 is set to W-1 in order to start the processing from the window image identification information (ID) 0 in the discrimination job input process described later, but the value may be clearly initialized, You may initialize with the identification information (ID) of another window image. Also, init_flag indicating the first process is set to 1.

ステップS602では、ステップS603〜S604の処理回数を数えるカウンタiを0に初期化する。ステップS603では、ループ処理の終了判定を行う。S604の処理をN回処理したかどうかを判定し、まだ処理が終了していなければ(S603−Yes)、ステップS604の処理を繰り返し、終了した場合(S603−No)、処理は終了する。   In step S602, a counter i for counting the number of times of processing in steps S603 to S604 is initialized to zero. In step S603, the end of the loop process is determined. It is determined whether or not the process of S604 has been performed N times. If the process has not yet been completed (S603-Yes), the process of step S604 is repeated. If the process has been completed (S603-No), the process ends.

ステップS604では、配列win_status[i]の値を0で初期化して、カウンタiの値をカウントアップして、処理をステップS603に戻す。   In step S604, the value of array win_status [i] is initialized to 0, the value of counter i is counted up, and the process returns to step S603.

本実施形態では、各ウィンドウ画像の状態を管理する変数として、win_statusを用いる。win_statusはW個の配列を有し、次に処理すべき弱判別器IDの値を保持する。また、この値が負の値である場合は、そのウィンドウに対する判別処理が終了していることを表すものとする。初期化処理の段階で、次に処理すべき弱判別器の識別情報(ID)として0が設定される。   In this embodiment, win_status is used as a variable for managing the state of each window image. win_status has W arrays and holds the value of the weak classifier ID to be processed next. Further, when this value is a negative value, it means that the discrimination processing for the window has been completed. At the initialization process stage, 0 is set as identification information (ID) of the weak classifier to be processed next.

図6で説明した初期化処理(S501、図6)が終了すると、処理は図5のステップS502に進められる。ステップS502では、メモリ102に対してメモリ更新処理を行う。メモリ更新処理の詳細を図9の参照により説明する。ステップS901において、指示部101は、メモリ102に対して、画像の更新要求を送信する。そして、メモリ102は、指示部101から画像更新要求を受信すると、外部に対して画像データを要求し、画像データの要求に対して外部から送信された画像データを蓄積する。そして、ステップS902において、複数のウィンドウ画像を構成するのに十分なデータ量を蓄積した時点で、メモリ102は、指示部101に応答(OK)を返す。   When the initialization process (S501, FIG. 6) described in FIG. 6 is completed, the process proceeds to step S502 in FIG. In step S502, a memory update process is performed on the memory 102. Details of the memory update processing will be described with reference to FIG. In step S <b> 901, the instruction unit 101 transmits an image update request to the memory 102. When receiving an image update request from the instruction unit 101, the memory 102 requests image data from the outside, and accumulates image data transmitted from the outside in response to the image data request. In step S <b> 902, the memory 102 returns a response (OK) to the instruction unit 101 when a data amount sufficient to form a plurality of window images is accumulated.

メモリ更新処理(S502、図9)が終了すると、図5のステップS503に処理は進められる。ステップS503では、判定部104からの出力の有無を確認する。判定部104からの出力があれば(S503−Yes)、処理はステップS504に進められる。ステップS504では、判定部104の出力(判定結果)を読み込み、ステップS505では、判定部104の出力(判定結果)に応じて指示部101の状態を更新する。指示部状態更新処理の詳細を図7の参照により説明する。   When the memory update process (S502, FIG. 9) ends, the process proceeds to step S503 in FIG. In step S503, the presence / absence of an output from the determination unit 104 is confirmed. If there is an output from determination unit 104 (S503-Yes), the process proceeds to step S504. In step S504, the output (determination result) of the determination unit 104 is read. In step S505, the state of the instruction unit 101 is updated according to the output (determination result) of the determination unit 104. Details of the instruction unit state update processing will be described with reference to FIG.

まず、判定部104の出力(判定結果)には、判定したウィンドウ画像の識別情報(ID)と、その判定結果とが含まれるものとする。ステップS701において、指示部101は、出力(判定結果)から、ウィンドウ画像の識別情報(ID)と判定結果とを読み込む。ここで、判定結果としては、最低限、処理を継続する(PASS)か、処理を終了するかがわかればよい。例えば、判定部104の返す判定結果として、「0」を処理継続、「1」を処理終了とする。処理終了は、例えば、図2の場合、ジョブの判定結果がNGの場合や、最後の弱判別器250をPASSした場合が該当する。さらには、図3の場合、途中の弱判別器でOKの判定がされた場合も処理終了に該当し得る。また、図16のステップS1622やS1623のように、既に判定処理が終了したウィンドウ画像に対するジョブの結果なども、処理終了に該当し得る。   First, it is assumed that the output (determination result) of the determination unit 104 includes the determined window image identification information (ID) and the determination result. In step S <b> 701, the instruction unit 101 reads the window image identification information (ID) and the determination result from the output (determination result). Here, as a determination result, it is sufficient to know at least whether the processing is continued (PASS) or the processing is ended. For example, as the determination result returned by the determination unit 104, “0” is the processing continuation and “1” is the processing end. For example, in the case of FIG. 2, the process end corresponds to a case where the job determination result is NG or a case where the last weak classifier 250 is PASSed. Furthermore, in the case of FIG. 3, the process may be terminated when OK is determined by a weak classifier on the way. Also, as in steps S1622 and S1623 in FIG. 16, the result of a job for a window image for which the determination process has already been completed can also correspond to the end of the process.

これらの判定結果については、より詳細に信号に意味を割り当ててもよいが、最低限、そのウィンドウ画像の継続処理か、処理終了かを判定できればよい。   As for these determination results, meaning may be assigned to the signal in more detail, but it is only necessary to determine at least whether the window image is to be continued or terminated.

続く、ステップS702では、判定部104の出力するウィンドウ画像の識別子が(win_ID)で表されるウィンドウ画像に対して、処理を継続する指示かどうかを判定する。判定結果(result)=0であれば処理継続と判定され(S702−Yes)、処理は終了する。ステップS702の判定で、判定結果(result)=1であれば、処理終了と判定され(S702−No)、処理はステップS703に進められる。   In step S702, it is determined whether or not it is an instruction to continue processing for the window image whose window image identifier output by the determination unit 104 is represented by (win_ID). If the determination result (result) = 0, it is determined that the process is continued (S702-Yes), and the process ends. If it is determined in step S702 that the determination result (result) = 1, it is determined that the process has ended (S702-No), and the process proceeds to step S703.

ステップS703はウィンドウ画像を無効化する処理で、先に述べたように、win_status [win_ID]を無効にするために、判定結果の値として-1を設定し、処理を終了する。   In step S703, the window image is invalidated. As described above, in order to invalidate win_status [win_ID], -1 is set as the value of the determination result, and the process ends.

説明を図5のステップS503に戻す。ステップS503の判定で、判定部104からの出力が無ければ(S503−No)、処理はステップS506に進められる。ステップS506では、演算部103に判別ジョブを投入する空きがあるかどうかを判定する。空きがなければ(S506−No)、処理はS508に進められる。一方、演算部103に判別ジョブを投入する空きがあれば、処理はステップS507のジョブ投入処理に進められる。ジョブ投入処理の詳細を図8の参照により説明する。   The description returns to step S503 in FIG. If it is determined in step S503 that there is no output from the determination unit 104 (S503-No), the process proceeds to step S506. In step S506, it is determined whether or not there is a vacancy in the calculation unit 103 to input the determination job. If there is no space (S506-No), the process proceeds to S508. On the other hand, if there is a vacancy in the calculation unit 103 to input the discrimination job, the process proceeds to the job input process in step S507. Details of the job submission process will be described with reference to FIG.

まず、ステップS801で、指示部101は、currentの値を更新する。また、指示部101は、ステップS802〜S804の処理を制御するカウンタcntを0に初期化する。ステップS802では、ループ処理を抜けるか否かの判断を行う。cnt≧Wとなった場合(S802−No)、処理は終了する。このステップS802の判定でNoとなるのは、次に判別ジョブとして投入すべきウィンドウ画像がなかった場合が該当し得る。   First, in step S801, the instruction unit 101 updates the current value. In addition, the instruction unit 101 initializes a counter cnt that controls the processing of steps S802 to S804 to zero. In step S802, it is determined whether or not to exit the loop process. If cnt ≧ W (S802-No), the process ends. The determination of No in step S802 may correspond to a case where there is no window image to be input next as a determination job.

ステップS802の判定で、cnt<Wの場合(S802−Yes)、処理はステップS803に進められる。ステップS803では、currentのウィンドウ画像が有効か否かが判定される。win_status[current]<0という状態は、currentのウィンドウ画像の処理が終了していること、すなわちウィンドウ画像は無効である判定する(S803−Yes)。ウィンドウが無効な場合(S803−Yes)、処理はステップS804に進められる。ステップS804では、currentの値とcntの値が更新され、処理はステップS802に戻され、同様の処理が繰り返される。ステップS803の判定で、有効なウィンドウが見つかった場合(S803−No)、処理はステップS805に進められる。   If it is determined in step S802 that cnt <W (S802-Yes), the process proceeds to step S803. In step S803, it is determined whether the current window image is valid. If win_status [current] <0, it is determined that the processing of the current window image has been completed, that is, the window image is invalid (S803-Yes). If the window is invalid (S803-Yes), the process proceeds to step S804. In step S804, the current value and the cnt value are updated, the process returns to step S802, and the same process is repeated. If a valid window is found in the determination in step S803 (S803-No), the process proceeds to step S805.

ステップS805では、指示部101は、演算部103に対して、ウィンドウ画像のIDとしてcurrentを、弱判別器のIDとしてwin_status[current]を、判別ジョブとして送信する。指示部101は、判別ジョブとあわせて、フラグinit_flagを送信する。本処理がウィンドウ画像に対して初めての判別ジョブの送信である場合には、初期化処理(図6のS601)でinit_flag =1が設定されているので、init_flag =1を送信する。   In step S805, the instruction unit 101 transmits current as the window image ID and win_status [current] as the weak classifier ID as a discrimination job to the calculation unit 103. The instruction unit 101 transmits a flag init_flag together with the determination job. If this process is the first transmission of a discrimination job for a window image, init_flag = 1 is set in the initialization process (S601 in FIG. 6), so init_flag = 1 is transmitted.

ステップS806では、win_status[current]に「1」を加算して、win_status[current]を更新するとともに、init_flagを「0」にセットする。以上の処理によりジョブ投入処理が終了する。指示部状態更新処理(S505、図7)、またはジョブ投入処理(S507、図8)が終了すると、処理は図5のステップS508に進められる。ステップS508では、有効なウィンドウ画像があるかどうかを判定する。ここでは、win_statusの全ての要素が負の値であれば有効なウィンドウ画像が無いと判定される(S508−Yes)。一方、ステップS508の判定で、有効なウィンドウ画像が有ると判定される場合(S508−No)、処理がステップS503に進められ、以下同様の処理が繰り返される。   In step S806, “1” is added to win_status [current], win_status [current] is updated, and init_flag is set to “0”. The job input process is completed by the above process. When the instruction unit state update process (S505, FIG. 7) or the job input process (S507, FIG. 8) ends, the process proceeds to step S508 in FIG. In step S508, it is determined whether there is a valid window image. Here, if all the elements of win_status are negative values, it is determined that there is no valid window image (S508-Yes). On the other hand, if it is determined in step S508 that there is a valid window image (S508-No), the process proceeds to step S503, and the same process is repeated thereafter.

ステップS508の判定処理で有効なウィンドウ画像が無いと判定される場合(S508−Yes)、処理はステップS509に進められ、処理を終了するか否かが判定される。これは、例えば、外部からの制御入力において、何回ウィンドウ画像の入れ替えをして判定処理を行ったら終了かという情報を受け取っておき、図5のステップS501〜S509の処理を何回行ったかを数えておけばよい。この比較に基づいてステップS509の真偽を決定してもよいし、あるいは、ステップS509の判定において、外部から、継続すべきか終了すべきかの指示を受け取り、それに基づいて終了判定を行うことも可能である。ステップS509の判定で、処理を終了しない場合(S509-No)、処理はステップS501に戻され、同様の処理が繰り返される。   If it is determined in step S508 that there is no valid window image (S508-Yes), the process proceeds to step S509, and it is determined whether or not to end the process. For example, in the control input from the outside, information indicating how many times the window images are replaced and the determination process is completed is received, and the number of times the processes in steps S501 to S509 in FIG. 5 are performed is counted. Just keep it. Based on this comparison, the authenticity of step S509 may be determined, or in the determination of step S509, it is possible to receive an instruction from the outside whether to continue or to end, and to perform the end determination based on that It is. If it is determined in step S509 that the process is not terminated (S509-No), the process returns to step S501, and the same process is repeated.

ステップS510は、図16におけるステップS1622およびステップS1623に対応する処理で、判定部104からの応答を待つ処理である。   Step S510 is processing corresponding to step S1622 and step S1623 in FIG. 16, and is processing for waiting for a response from the determination unit 104.

(判定部104の処理)
判定部104の処理を図10の参照により説明する。ステップS1001では、判定部104は、演算部103からの入力待ちの状態で待機する。ステップS1002では、演算部103よりウィンドウ画像のIDとしてwin_ID、弱判別器のIDとしてclf_ID、また演算値としてval、また、初期化フラグとしてinit_flagを受け取る。ウィンドウ画像のIDと弱判別器のIDとinit_flagは、指示部101が図8のS805で演算部103に送信したものと同じものである。
(Processing of the determination unit 104)
The processing of the determination unit 104 will be described with reference to FIG. In step S <b> 1001, the determination unit 104 stands by in a state waiting for input from the calculation unit 103. In step S1002, win_ID is received from the calculation unit 103 as the window image ID, clf_ID as the weak classifier ID, val as the calculation value, and init_flag as the initialization flag. The window image ID, weak classifier ID, and init_flag are the same as those transmitted by the instruction unit 101 to the calculation unit 103 in step S805 of FIG.

続くステップS1003では、init_flagの値で処理を分岐させる。init_flagが1であれば(S1003−Yes)、ステップS1004の初期化処理を行い、そうでない場合は(S1003−No)、ステップS1004をスキップして、処理はステップS1005に進められる。   In the subsequent step S1003, the process is branched depending on the value of init_flag. If init_flag is 1 (S1003-Yes), the initialization process of step S1004 is performed. If not (S1003-No), step S1004 is skipped and the process proceeds to step S1005.

ステップS1004の初期化処理では、各ウィンドウ画像の判定済みか否かを管理する変数の初期化を行う。例えば、判定状態を示す情報win_status2[win_ID](配列:要素数W個)を設け、要素の値が0であればそのウィンドウ画像の処理は判定済(状態が確定)を表し、そうでなければウィンドウ画像の処理は判定が終了していないとする。この場合、それらの各要素について非0値 (ウィンドウは有効) 、例えば1を設定すれば良い。また、ステップS1008で用いるsend_flagフラグの値(結果を送信したかどうか判別するのに用いる)を0に初期化する。さらに、各ウィンドウ画像の検出結果を示す情報win_detect[]配列(要素数W個)を設け、各要素に0を設定する。win_detect[]配列は、各ウィンドウの検出結果を記憶し、0は検出なし、1は検出ありを表すものとする。   In the initialization process in step S1004, a variable for managing whether or not each window image has been determined is initialized. For example, the information win_status2 [win_ID] (array: number of elements W) indicating the judgment status is provided, and if the value of the element is 0, the processing of the window image represents the judgment (state is confirmed), otherwise It is assumed that the window image processing has not been determined. In this case, a non-zero value (window is valid), for example, 1 may be set for each of those elements. Also, the value of the send_flag flag used in step S1008 (used to determine whether the result has been transmitted) is initialized to zero. Further, information win_detect [] array (number of elements W) indicating the detection result of each window image is provided, and 0 is set to each element. The win_detect [] array stores the detection result of each window, where 0 indicates no detection and 1 indicates detection.

ステップS1005では判定部104の内部状態を更新する。これは演算部103の出力する結果に基づき、win_status2[win_ID]の値を更新する。例えば、図2の例の場合、演算部103の演算結果がNGであるか、あるいは最後の弱判別器(N-1) (図2の250)をPASSして状態が確定すれば、win_status2[win_ID]の値を0にする。ステップS1005の詳細を図17の参照により説明する。   In step S1005, the internal state of the determination unit 104 is updated. This updates the value of win_status2 [win_ID] based on the result output from the calculation unit 103. For example, in the case of the example of FIG. 2, if the calculation result of the calculation unit 103 is NG or if the state is determined by PASSing the last weak discriminator (N-1) (250 in FIG. 2), win_status2 [ Set win_ID] to 0. Details of step S1005 will be described with reference to FIG.

まず、ステップS1701で、指定されたウィンドウ画像が判定未終了かそれとも終了しているかを判定する。これは、演算部103から受け取ったwin_IDに基づき、それに対応するwin_status2[]配列の要素、すなわちwin_status2[win_ID]を参照し、その値と0を比較して判定すれば良い。win_status2[win_ID]が非0であればウィンドウは判定が済んでいない状態であるので(S1701−Yes)、処理はステップS1702に進められる。win_status2[win_ID]=0の場合(S1701−No)、図17の処理は終了する。   First, in step S1701, it is determined whether the specified window image has not been determined yet or has been completed. This may be determined based on the win_ID received from the calculation unit 103, referring to the corresponding element of the win_status2 [] array, that is, win_status2 [win_ID], and comparing the value with 0. If win_status2 [win_ID] is non-zero, the window has not been determined (S1701-Yes), and the process proceeds to step S1702. If win_status2 [win_ID] = 0 (S1701-No), the processing in FIG. 17 ends.

続くステップS1702では、判定部104は演算部103から入力された演算値がPASSを表すかどうかを判定する。演算値に対してその弱判別器に応じた閾値を使って判定し、閾値未満であればNG、そうでなければPASSとする。各弱判別器によって閾値が変わる場合には、その閾値はパラメータ供給部105から閾値の供給を受ければよい。図1において、パラメータ供給部105は判定部104と直接には接続していないが、例えば、演算部103を介して閾値の供給を受けることが可能である。あるいは、図1に示していないが、パラメータ供給部105と判定部104との間を接続し、その接続を介して閾値の供給を受けるように変形してもよい。閾値との大小関係とNG/PASSの対応は一例であって、例えば、逆に閾値未満であればPASS、そうでなければNGとするような演算であってもよい。   In subsequent step S <b> 1702, the determination unit 104 determines whether or not the calculation value input from the calculation unit 103 represents PASS. The calculation value is determined using a threshold value corresponding to the weak classifier. If it is less than the threshold value, it is determined as NG, otherwise it is determined as PASS. When the threshold value varies depending on each weak classifier, the threshold value may be supplied from the parameter supply unit 105. In FIG. 1, the parameter supply unit 105 is not directly connected to the determination unit 104, but can be supplied with a threshold value via the calculation unit 103, for example. Alternatively, although not shown in FIG. 1, the parameter supply unit 105 and the determination unit 104 may be connected, and the threshold value may be supplied via the connection. The correspondence between the magnitude relationship with the threshold value and NG / PASS is an example, and conversely, for example, the calculation may be PASS if it is less than the threshold value, or NG otherwise.

ステップS1702の判定結果が真であれば、処理はステップS1703に進められ、そうでない場合、処理はステップS1705に進められる。ステップS1703の判定は処理中の弱判別器が最終弱判別器(図2における250)か否かの判定である。これは演算部103から弱判別器のIDとして受け取ったclf_IDを元にN-1と比較すれば良い。ステップS1703―Yesの場合、判定の対象となる弱判別器は最終判別器ではないので、処理は終了する。一方、ステップS1703―Noの場合、処理中の弱判別器は最終弱判別器なので、PASSであった場合に、検出対象物である顔を「検出した」として処理をする。ステップS1704では、最終弱判別器をPASSして、判定状態は確定する。判定状態を示す情報win_status2[win_ID]の値を0に設定する。また、「検出した」ことを記憶するため、検出結果を示す情報win_detect[win_ID]の値を1に設定し、処理は終了する。各ウィンドウ画像の検出結果として、例えば、0は検出なし、1は検出ありを表すものとする。   If the determination result in step S1702 is true, the process proceeds to step S1703; otherwise, the process proceeds to step S1705. The determination in step S1703 is a determination as to whether or not the weak classifier being processed is the final weak classifier (250 in FIG. 2). This may be compared with N-1 based on clf_ID received as the weak classifier ID from the arithmetic unit 103. In the case of step S1703—Yes, the weak discriminator to be determined is not the final discriminator, and the process ends. On the other hand, in the case of step S1703-No, since the weak classifier being processed is the final weak classifier, if it is PASS, the face that is the detection target is processed as “detected”. In step S1704, the final weak discriminator is PASSed to determine the determination state. The value of information win_status2 [win_ID] indicating the determination state is set to 0. Further, in order to store “detected”, the value of the information win_detect [win_ID] indicating the detection result is set to 1, and the process ends. As a detection result of each window image, for example, 0 represents no detection, and 1 represents detection.

ステップS1705は、S1702の判定で、弱判別器の判定結果がNGとなった場合、部分画像には対象物(特定パターン)は含まれない判定が確定するので、判定状態を示す情報win_status2[win_ID]の値を0に設定して処理は終了する。ステップS1005の処理(図17)が終了すると処理は、図10のステップS1006に進められ、判定部状態更新処理の結果が指示部101に通知される。   In step S1705, when the determination result of the weak discriminator is NG in the determination of S1702, determination that the target object (specific pattern) is not included in the partial image is confirmed, so information indicating the determination state win_status2 [win_ID ] Is set to 0, and the process ends. When the process of step S1005 (FIG. 17) ends, the process proceeds to step S1006 of FIG. 10, and the result of the determination unit state update process is notified to the instruction unit 101.

ステップS1007では、有効なウィンドウ画像があるかどうかをwin_status2[]配列を参照し、有効なウィンドウ画像がない場合(S1007−N0)、処理はステップS1008に進められ、そうでなければ処理はS1001に戻る。ステップS1008では、結果を送信したかどうか判別するのに用いるフラグsend_flagの値を調べて処理を分岐する。フラグsend_flagの値が1であれば(S1008−Yes)、処理はステップS1009に進められ、そうでなければ処理はステップS1001に戻される(S1008−No)。   In step S1007, the win_status2 [] array is referred to as to whether there is a valid window image. If there is no valid window image (S1007-N0), the process proceeds to step S1008; otherwise, the process proceeds to S1001. Return. In step S1008, the value of the flag send_flag used to determine whether or not the result has been transmitted is checked, and the process is branched. If the value of the flag send_flag is 1 (S1008-Yes), the process proceeds to step S1009; otherwise, the process returns to step S1001 (S1008-No).

ステップS1009では、判定結果の出力処理を実行する。これはwin_detect[]配列の各要素の値に基づき、各ウィンドウ画像の領域検出の有無を出力する。出力は任意の形式で良い。   In step S1009, determination result output processing is executed. This is based on the value of each element of the win_detect [] array, and outputs the presence / absence of area detection of each window image. The output can be in any format.

ステップS1010では、send_flagの値を0に設定する。これは、図16で説明した通り、ウィンドウ画像の検出が全て終了した後も、演算部103からはジョブの演算結果が入力される可能性があるためである。この処理は、図10のフローチャートにおいてステップS1008へのパスを複数回通る可能性があるので、その最初の一回のみにステップS1009の処理を実行するようにするためのものである。ステップS1010を実行した後は、ステップS1008の判定は偽(S1008−No)になりステップS1009は実行されない。また、init_flagとして1が与えられるとステップS1004の初期化処理によってsend_flagが1に設定され、S1008の判定が再度、真になるようになる。   In step S1010, the value of send_flag is set to 0. This is because, as described with reference to FIG. 16, there is a possibility that the calculation result of the job may be input from the calculation unit 103 even after all the window image detection is completed. This process is for performing the process of step S1009 only once in the flowchart of FIG. 10 because there is a possibility that the path to step S1008 may be passed a plurality of times. After executing step S1010, the determination in step S1008 is false (S1008-No), and step S1009 is not executed. If 1 is given as init_flag, send_flag is set to 1 by the initialization processing in step S1004, and the determination in S1008 becomes true again.

演算部103の処理は、公知の検出処理における弱判別処理であれば任意のもので良い。概略としては次のように構成する。まず、メモリ102内に設定された複数のウィンドウ画像のうち、指示部101から判別ジョブとして指定されたウィンドウ画像のIDに基づきウィンドウ画像を特定する。   The processing of the calculation unit 103 may be arbitrary as long as it is weak discrimination processing in known detection processing. The outline is configured as follows. First, out of a plurality of window images set in the memory 102, a window image is specified based on the window image ID designated as a discrimination job from the instruction unit 101.

続いて、そのウィンドウ画像の内部の一部もしくは全部の画素値を参照するとともに、判別ジョブの弱判別器のIDに基づき、パラメータ供給部105から対応するパラメータの供給を受け、画素値とパラメータを用いた演算を行う。そして、その演算値を判別ジョブの情報とともに判定部104に出力するよう構成する。   Subsequently, a part or all of the pixel values in the window image are referred to, and the corresponding parameter is supplied from the parameter supply unit 105 based on the ID of the weak classifier of the discrimination job. Perform the operation used. Then, the calculation value is output to the determination unit 104 together with the information of the determination job.

メモリ102は指示部101の指示に応じて、外部から画像データを取得し、保持する。メモリ102は、例えば、図11のように複数のウィンドウ画像を保持することが可能である。メモリ102内に複数のウィンドウ画像が同時に存在していればよく、必ずしも図11のようにウィンドウが他のウィンドウと重複している必要はない。   The memory 102 acquires and holds image data from the outside in response to an instruction from the instruction unit 101. For example, the memory 102 can hold a plurality of window images as shown in FIG. It is only necessary that a plurality of window images exist in the memory 102 at the same time, and the windows do not necessarily overlap with other windows as shown in FIG.

パラメータ供給部105は演算部103の要求に応じて、判別処理用のパラメータを提供する。パラメータ供給部105が全ての判別処理用のパラメータを保持するよう構成するか、あるいは外部に大容量のメモリを設け、パラメータ供給部105はその大容量メモリに対するキャッシュのように動作するように構成してもよい。パラメータ供給部105をキャッシュのように動作するように構成する場合、好ましくは、指示部101からの出力を、パラメータ供給部105が直接受け取るように構成する。さらに、指示部101は処理の進行を予測して、事前にパラメータ供給部105に必用とされる判別処理用のパラメータをプリフェッチするよう構成することも可能である。指示部101が処理の進行を予測するとは、例えば、図2乃至図4のような処理に対し、例えば、演算部103に対して指示を行う弱判別器よりN個(N≧0)先の弱判別器で用いる判別パラメータのプリフェッチをパラメータ供給部105に指示するようにする。Nは予め定めておけば良いし、なんらかの方法により弱判別器処理の進行を予測して動的に決定するように構成しても良い。   The parameter supply unit 105 provides parameters for determination processing in response to a request from the calculation unit 103. The parameter supply unit 105 is configured to hold all parameters for discrimination processing, or a large-capacity memory is provided outside, and the parameter supply unit 105 is configured to operate like a cache for the large-capacity memory. May be. When the parameter supply unit 105 is configured to operate like a cache, the parameter supply unit 105 preferably receives the output from the instruction unit 101 directly. Further, the instructing unit 101 can also be configured to predict the progress of the processing and prefetch the parameters for determination processing required for the parameter supply unit 105 in advance. The instruction unit 101 predicts the progress of the process, for example, with respect to the process as shown in FIGS. 2 to 4, for example, N (N ≧ 0) ahead of the weak discriminator that instructs the operation unit 103. The parameter supply unit 105 is instructed to prefetch the discrimination parameter used in the weak discriminator. N may be determined in advance, or may be determined dynamically by predicting the progress of weak classifier processing by some method.

(弱判別器の処理)
次に、弱判別器の処理について、図12乃至図15を参照して説明する。弱判別器の処理方式は、図2、3に示した、直線状に接続した弱判別器の判別処理に適用可能であるが、この例に限定されず、図4に示した分岐構造を有する判別処理に対しても適用可能である。直線状に接続した弱判別器(例えば、弱判別器(1、0)・・・(1、P−1)、または、弱判別器(2、0)・・・(2、Q−1)、または、弱判別器(3、0)・・・(3、R−1))の判別処理に適用可能である。また、その分岐先の弱判別器の処理を、仮想的に別検出ウィンドウ画像に対する処理のように扱えば、分岐が多段であっても適用可能であることは自明である。
(Weak classifier processing)
Next, processing of the weak classifier will be described with reference to FIGS. The processing method of the weak discriminator is applicable to the discrimination processing of the weak discriminators connected in a straight line as shown in FIGS. 2 and 3, but is not limited to this example, and has the branch structure shown in FIG. It can also be applied to discrimination processing. Weak classifiers connected in a straight line (for example, weak classifier (1, 0) (1, P-1) or weak classifier (2, 0) (2, Q-1) Or the weak discriminator (3, 0) (3, R-1)). In addition, if the processing of the weak discriminator at the branch destination is treated virtually like the processing for another detection window image, it is obvious that the present invention can be applied even when there are multiple stages of branching.

説明の簡単のため、検出対象のウィンドウ画像が対象物(特定パターン)を含むか含まないかが確定したことを、検出対象のウィンドウ画像に対する処理が終了したとも言うこととする。図12乃至図15では判別ジョブが、指示部101、演算部103および判定部104で処理される際のタイムチャートを示している。図12乃至図15において横軸は時間軸である。図12では時刻t0〜t15、図13乃至図15においてはt0〜t18の時刻の間にそれぞれ15個、18個のタイムスロットがあり、各タイムスロットで各部が1つの判別ジョブを処理するものとする。タイムスロットに配置された四角は判別ジョブをあらわし、Wxはウィンドウ画像のIDがxであること、Syは弱判別器のIDがyであることを示している。また、説明の簡単のため、ウィンドウ画像のグループ中には最大でIDが0から2(0≦x≦3)の3ウィンドウ画像あることとする。また、弱判別器はIDが0から5(0≦y≦5)の6個あり、弱判別器S5をPASSした場合、対象物(特定パターン)有りと検出するものとする。また、ウィンドウ画像のID =Wx、弱判別器のID= Syの判別ジョブを、Wx/Syとも表記する。   For the sake of simplicity, it is also said that the processing for the detection target window image is completed when it is determined whether the detection target window image includes or does not include the target object (specific pattern). 12 to 15 show time charts when the discrimination job is processed by the instruction unit 101, the calculation unit 103, and the determination unit 104. FIG. 12 to 15, the horizontal axis is a time axis. In FIG. 12, there are 15 and 18 time slots between times t0 and t15, and in FIGS. 13 to 15 between times t0 and t18, and each section processes one discrimination job in each time slot. To do. A square arranged in the time slot represents a discrimination job, Wx indicates that the window image ID is x, and Sy indicates that the weak classifier ID is y. For simplicity of explanation, it is assumed that there are three window images having IDs 0 to 2 (0 ≦ x ≦ 3) at the maximum in the group of window images. Further, there are six weak classifiers with IDs from 0 to 5 (0 ≦ y ≦ 5), and when the weak classifier S5 is PASSed, it is detected that there is an object (specific pattern). A discrimination job in which window image ID = Wx and weak discriminator ID = Sy is also expressed as Wx / Sy.

図12乃至図15では、最初のウィンドウ画像のグループに対して実線の四角で表された判別ジョブの処理を行う。そして全てのウィンドウ画像に対する処理が終了したことを検出した時に、指示部101のt13の時点でメモリの入れ替えを行い、次のウィンドウ画像のグループとして破線の四角で表された判別ジョブを行うものとする。ただし、図13は1つのウィンドウ画像のグループに関するタイムチャートで、2つ目のウィンドウ画像のグループ、すなわち、図12に示すような破線のウィンドウ画像のグループの判別ジョブは書かれていない。また、網掛けで表された四角は、実際にはその判別ジョブに対応する弱判別器より前の弱判別器で処理が終了した判別ジョブであることを示している。図12乃至図15では、方式1〜方式3の3つの方式による処理の違いを図示している。方式1〜方式3はそれぞれ以下のように動作する。   In FIG. 12 to FIG. 15, the processing of the discrimination job represented by the solid line square is performed on the first group of window images. Then, when it is detected that the processing for all window images has been completed, the memory is replaced at the time point t13 of the instruction unit 101, and a discrimination job represented by a broken-line square is performed as the next window image group. To do. However, FIG. 13 is a time chart relating to one window image group, and a second window image group, that is, a broken line window image group discrimination job as shown in FIG. 12 is not written. In addition, the squares represented by shading indicate that the job is actually a discrimination job that has been processed by a weak discriminator before the weak discriminator corresponding to the discrimination job. 12 to 15 illustrate differences in processing by the three methods 1 to 3. System 1 to system 3 operate as follows.

(方式1)
ある検出対象のウィンドウ画像に対する処理が終了するまで投機的に判別ジョブを指示する。判別処理が終了したことを検知した時点で、そのウィンドウ画像に対する判別処理の指示を止め、次のウィンドウ画像の判別ジョブを指示する。
(Method 1)
A discrimination job is speculatively instructed until the processing for a certain detection target window image is completed. When it is detected that the discrimination processing has been completed, the discrimination processing instruction for the window image is stopped, and a discrimination job for the next window image is instructed.

(方式2)
各ウィンドウ画像に対する同一の弱判別器に対する判別ジョブを指示し、その判別結果を待つ。判別結果を受け取り、そのウィンドウ画像の処理が終了していなかったら、次の弱判別器に対する判別ジョブを指示する。
(Method 2)
A discrimination job for the same weak classifier for each window image is instructed, and the discrimination result is awaited. If the discrimination result is received and the processing of the window image is not completed, the discrimination job for the next weak discriminator is instructed.

(方式3)
本発明の実施形態による画像データの処理はこの方式によるものである。判別ジョブの指示の時点で判別処理が終了していないウィンドウ画像を巡回しながら次に行うべき判別器に対する判別ジョブを指示する。
(Method 3)
The image data processing according to the embodiment of the present invention is based on this method. The discriminating job for the discriminator to be performed next is instructed while circulating through the window image that has not been discriminated at the discriminating job.

図12では、最初のウィンドウ画像のグループ中にW0〜W2の3つのウィンドウ画像が存在し、次の表1のような判定結果である場合の例を示している。   FIG. 12 shows an example in which three window images W0 to W2 exist in the first window image group, and the determination result is as shown in Table 1 below.

表1のケースを方式1で処理すると、表2のようになる。表2は方式1による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表2において、セルが網掛けになっている部分は、その判別ジョブに対応する弱判別器より前の弱判別器で処理が終了した判別ジョブである。また、空白のセルは判別ジョブを処理していない状態を示している。   When the case of Table 1 is processed by Method 1, Table 2 is obtained. Table 2 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 1. In Table 2, the shaded portion of the cell is a discrimination job that has been processed by the weak discriminator before the weak discriminator corresponding to the discrimination job. A blank cell indicates a state where the discrimination job is not processed.

表2の例の場合、方式1による方式でウィンドウ画像のグループの処理終了を検知するのは、時刻t13のタイミングである。   In the case of the example in Table 2, it is the timing at time t13 that the processing end of the group of window images is detected by the method according to method 1.

表1のケースを方式2で処理すると、表3のようになる。表3は方式2による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表3の表記は表2の表記と同様である。   When the case of Table 1 is processed by the method 2, Table 3 is obtained. Table 3 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 2. The notation in Table 3 is the same as the notation in Table 2.

表3の例の場合、方式2による方式でウィンドウ画像のグループの処理終了を検知するのは、時刻t12のタイミングになる。   In the case of the example in Table 3, the end of processing of the window image group by the method 2 is detected at time t12.

次に、図12の方式3について説明する。本方式においては、ウィンドウ画像を処理する順序を規定する。指示部101は外部からの制御入力により、複数のウィンドウ画像について、判別処理の実行順を設定することが可能である。設定された実行順は、判別ジョブに含まれ、指示部101から演算部103に送信される。演算部103は、判別ジョブに含まれる実行順に従い、複数のウィンドウ画像(部分画像)の判別処理を行う。図18(a)、(b)、(c)は、ウィンドウ画像に対する判別処理の実行順を例示する図であり、図12の例にあわせて、3つのウィンドウ画像(W0〜W2)の例を示している。図18のウィンドウ画像1801〜1803が、図12のウィンドウ画像W0〜W2に対応するものとする。図18(a)、(b)、(c)において、実線の矩形は処理済みでないウィンドウ画像を示しており、破線の矩形は処理済みのウィンドウ画像を示している。尚、ウィンドウ画像の数は、3つの例に限定されるものではなく、4つ以上の場合でも循環の順序を規定できるのは明らかである。   Next, method 3 in FIG. 12 will be described. In this method, the order in which window images are processed is defined. The instruction unit 101 can set the execution order of the discrimination processing for a plurality of window images by an external control input. The set execution order is included in the discrimination job and transmitted from the instruction unit 101 to the calculation unit 103. The calculation unit 103 performs a determination process for a plurality of window images (partial images) according to the execution order included in the determination job. FIGS. 18A, 18B, and 18C are diagrams illustrating the execution order of the discrimination processing for the window image. Examples of three window images (W0 to W2) are combined with the example of FIG. Show. It is assumed that window images 1801 to 1803 in FIG. 18 correspond to window images W0 to W2 in FIG. In FIGS. 18A, 18B, and 18C, the solid line rectangles indicate unprocessed window images, and the broken line rectangles indicate processed window images. It should be noted that the number of window images is not limited to three examples, and it is obvious that the order of circulation can be defined even when there are four or more window images.

図18(a)は、全てのウィンドウ画像が処理済みでない状態を例示している。例えば、判別処理を行う弱判別器を弱判別器Siとする。この弱判別器Siで最初に処理されるウィンドウ画像をウィンドウ画像W0(1801)とする。ウィンドウ画像W0(1801)の次に処理の対象となるのはウィンドウ画像W1(1802)である。ウィンドウ画像W1(1802)の次に処理の対象となるのはウィンドウ画像W2(1803)である。ウィンドウ画像W0(1801)〜W2(1803)が弱判別器Siの判別処理で処理済みとならない場合、ウィンドウ画像W0(1801)〜W2(1803)は、次の弱判別器Si+1で処理される。次の弱判別器Si+1で処理される処理の対象となるのは、順番が循環してウィンドウ画像W2(1803)の次の順番にあたるウィンドウ画像W0(1801)から順番に、ウィンドウ画像W0(1801)、W1(1802)、W2(1803)が処理される。図18(b)は、ウィンドウ画像W1(1802)が処理済となった状態を例示しており、処理済となったウィンドウ画像W1(1802)は、次の判別処理の対象から除外される。指示部101は、複数のウィンドウ画像(部分画像)のうち判別処理の打ち切り(終了)と判定されたウィンドウ画像(部分画像)が少なくとも1つ含まれている場合、ウィンドウ画像(例えば、W1)を除いた新たな実行順(W0→W2)を設定する。この場合、ウィンドウ画像W0(1801)の次に処理の対象となるのは、ウィンドウ画像W2(1803)である。図18(c)は、処理済でないウィンドウ画像が1つになった状態を例示している。例えば、判別処理を行う弱判別器Siとして、ウィンドウ画像W0(1801)が弱判別器Siの判別処理により処理済みとならなければ、次の弱判別器Si+1での判別処理の対象もウィンドウ画像W0(1801)である。   FIG. 18A illustrates a state in which all window images have not been processed. For example, a weak discriminator that performs discrimination processing is referred to as weak discriminator Si. The window image processed first by the weak classifier Si is defined as a window image W0 (1801). The window image W1 (1802) is the target of processing next to the window image W0 (1801). The window image W2 (1803) is to be processed next to the window image W1 (1802). When the window images W0 (1801) to W2 (1803) are not processed by the weak classifier Si, the window images W0 (1801) to W2 (1803) are processed by the next weak classifier Si + 1. The The object to be processed by the next weak discriminator Si + 1 is the window image W0 (1801) in order from the window image W0 (1801) in the order next to the window image W2 (1803). 1801), W1 (1802), and W2 (1803) are processed. FIG. 18B illustrates a state in which the window image W1 (1802) has been processed, and the processed window image W1 (1802) is excluded from the next determination processing target. The instruction unit 101 selects a window image (for example, W1) when at least one window image (partial image) determined to be aborted (terminated) of the discrimination process among a plurality of window images (partial images) is included. A new execution order (W0 → W2) is set. In this case, the window image W2 (1803) is to be processed next to the window image W0 (1801). FIG. 18C illustrates a state where there is one window image that has not been processed. For example, if the window image W0 (1801) is not processed by the weak discriminator Si as the weak discriminator Si that performs the discriminating process, the next weak discriminator Si + 1 is also subject to discrimination processing by the window. This is the image W0 (1801).

表1のケースを方式3で処理すると、表4のようになる。表4は方式3による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表4の表記は表2の表記と同様である。   When the case of Table 1 is processed by Method 3, Table 4 is obtained. Table 4 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 3. The notation in Table 4 is the same as the notation in Table 2.

時刻t4で判別器S1による判別ジョブを指示したウィンドウ画像W1の次に処理の対象となるのはウィンドウ画像W2である。時刻t4におけるW2/S0の判定結果(NG)により、ウィンドウ画像W2に対する判別処理が終了していることは、指示部101において、時刻t5の時点で既知になっている。この場合、指示部101は、更に、次のウィンドウ画像W0を探し、ウィンドウ画像W0が処理済でないのでW0/S2の判別ジョブを再度指示する(t5)。   The window image W2 is the target of processing next to the window image W1 instructing the discrimination job by the discriminator S1 at time t4. Based on the W2 / S0 determination result (NG) at time t4, it is known in the instruction unit 101 at time t5 that the determination processing for the window image W2 has been completed. In this case, the instruction unit 101 further searches for the next window image W0 and instructs the W0 / S2 determination job again because the window image W0 has not been processed (t5).

同様に時刻t8では、時刻t7で弱判別器S3による判別ジョブを再度指示したウィンドウ画像W0の次に処理の対象となるのはウィンドウ画像W1である。時刻t6におけるW1/S1の判定結果(NG)により、ウィンドウ画像W1に対する判別処理は終了している。時刻t7、t8では判別処理が終了していないウィンドウ画像に対する判別処理が順次出力される(WO/S3、WO/S4)。この間、ウィンドウ画像W1、W2は判別対象から除外される。時刻t9のタイミングにおいて、判定部104はWO/S3の判定結果(NG)を確定し、時刻t10のタイミングにおいて、指示部101は、ウィンドウ画像のグループの処理終了を検知する。以上のように、図12の例の場合、本発明の実施形態にかかる方式3が最も早くウィンドウ画像のグループを処理することができる。   Similarly, at time t8, the window image W1 is subject to processing next to the window image W0 that has instructed the discrimination job by the weak classifier S3 again at time t7. Based on the W1 / S1 determination result (NG) at time t6, the determination processing for the window image W1 is completed. At times t7 and t8, discrimination processing for window images for which discrimination processing has not been completed is sequentially output (WO / S3, WO / S4). During this time, the window images W1 and W2 are excluded from the discrimination targets. At the timing of time t9, the determination unit 104 determines the determination result (NG) of WO / S3, and at the timing of time t10, the instruction unit 101 detects the end of the processing of the window image group. As described above, in the example of FIG. 12, the method 3 according to the embodiment of the present invention can process a group of window images earliest.

図13は別の例として、表5のように、ウィンドウ画像W0〜W2の全てにおいて、検出対象物(特定パターン)が含まれると判定される場合の例を示している。   As another example, FIG. 13 shows an example in which it is determined that all the window images W0 to W2 include a detection target (specific pattern) as shown in Table 5.

図13の場合、3つの方法ともウィンドウ画像のグループの処理が終了したことを時刻t18のタイミングで、指示部101が検知しており、この例に関しては3つの方式で処理速度に差はない。   In the case of FIG. 13, the instruction unit 101 detects that the processing of the group of window images is completed at the time t18 in all three methods, and there is no difference in processing speed between the three methods in this example.

図14は、更に別の例として、表6のように、ウィンドウ画像W0〜W2の全てが最初の弱判別器S0でNGと判定された場合の例を示している。   FIG. 14 shows an example in which all the window images W0 to W2 are determined to be NG by the first weak discriminator S0 as shown in Table 6 as yet another example.

表6のケースを方式1で処理すると、表7のようになる。表7は方式1による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表7の表記は表2の表記と同様である。   When the case of Table 6 is processed by Method 1, Table 7 is obtained. Table 7 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 1. The notation in Table 7 is the same as the notation in Table 2.

表7に示すように、方式1では、ウィンドウ画像W0〜W2のグループの処理終了を指示部101が検知するのは、時刻t9のタイミングである。   As shown in Table 7, in method 1, the instruction unit 101 detects the end of the processing of the group of the window images W0 to W2 at time t9.

表1のケースを方式2で処理すると、表8のようになる。表8は方式2による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表8の表記は表2の表記と同様である。   When the case of Table 1 is processed by the method 2, Table 8 is obtained. Table 8 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 2. The notation in Table 8 is the same as the notation in Table 2.

表8に示すように、方式2では、ウィンドウ画像W0〜W2のグループの処理終了を指示部101が検知するのは、時刻t5のタイミングである。   As shown in Table 8, in the method 2, the instruction unit 101 detects the end of the processing of the group of the window images W0 to W2 at time t5.

表1のケースを方式3で処理すると、表9のようになる。表9は方式3による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表9の表記は表2の表記と同様である。   When the case of Table 1 is processed by the method 3, Table 9 is obtained. Table 9 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 3. The notation in Table 9 is the same as the notation in Table 2.

表9に示すように、方式3では、ウィンドウ画像W0〜W2のグループの処理終了を指示部101が検知するのは、時刻t5のタイミングである。方式3は、方式2と同じ時刻t5のタイミングで、ウィンドウ画像のグループの処理を終了することができる。また方式3は、方式1に比べて速くウィンドウ画像のグループを処理することができる。   As shown in Table 9, in method 3, the instruction unit 101 detects the end of the processing of the group of the window images W0 to W2 at time t5. The method 3 can end the window image group processing at the same time t5 as the method 2. Also, method 3 can process a group of window images faster than method 1.

図15は、更に別の例として、表10のように、ウィンドウ画像W0〜W2のうち、ウィンドウ画像W0とW1が最初の弱判別器S0でNGと判定され、処理終了していないウィンドウが1つだけという場合の例を示している。   FIG. 15 shows, as another example, as shown in Table 10, among the window images W0 to W2, the window images W0 and W1 are determined to be NG by the first weak discriminator S0, and the window that has not been processed is 1 An example of the case of only one is shown.

表10のケースを方式1で処理すると、表11のようになる。表11は方式1による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表11の表記は表2の表記と同様である。   When the case of Table 10 is processed by Method 1, Table 11 is obtained. Table 11 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 1. The notation in Table 11 is the same as the notation in Table 2.

表11に示すように、方式1では、ウィンドウ画像W0〜W2のグループの処理終了を指示部101が検知するのは、時刻t10のタイミングである。   As shown in Table 11, in Method 1, the instruction unit 101 detects the end of the processing of the group of the window images W0 to W2 at time t10.

表10のケースを方式2で処理すると、表12のようになる。表12は方式2による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表12の表記は表2の表記と同様である。   When the case of Table 10 is processed by the method 2, Table 12 is obtained. Table 12 summarizes the time and the processing of the instruction unit and the determination unit for the processing by method 2. The notation in Table 12 is the same as the notation in Table 2.

表12に示すように、方式2では、ウィンドウ画像W0〜W2のグループの処理終了を指示部101が検知するのは、時刻t8のタイミングである。   As shown in Table 12, in method 2, the instruction unit 101 detects the end of the processing of the group of the window images W0 to W2 at time t8.

表10のケースを方式3で処理すると、表13のようになる。表13は方式3による処理について、時刻と、指示部および判定部の処理と、をまとめたものである。表13の表記は表2の表記と同様である。   When the case of Table 10 is processed by method 3, it becomes as shown in Table 13. Table 13 summarizes the time and the processing of the instruction unit and the determination unit for the processing by the method 3. The notation in Table 13 is the same as the notation in Table 2.

表13に示すように、方式3では、ウィンドウ画像W0〜W2のグループの処理終了を指示部101が検知するのは、時刻t7のタイミングである。方式3は、方式1、2に比べて速くウィンドウ画像のグループを処理することができる。   As shown in Table 13, in the method 3, the instruction unit 101 detects the end of the processing of the group of the window images W0 to W2 at time t7. Method 3 can process a group of window images faster than methods 1 and 2.

図12乃至図15に示す例において、方式3は、他の方式1、2に比べて同等もしくは高速にウィンドウ画像のグループを処理することができる。   In the examples shown in FIGS. 12 to 15, the method 3 can process a group of window images at the same or higher speed than the other methods 1 and 2.

本実施形態ではメモリ102が保持するのは静止画の画像データであるとして説明を行ったが、動画像データであっても良い。複数フレームをメモリ102に格納し、それらを参照して処理を行うことも可能である。また、メモリ102は単一のメモリにより構成されるものに限定されず、複数のメモリで構成してもよい。例えば、3つのメモリで構成し、それぞれに注目しているフレームと、その前後のフレームを格納するように構成することも可能である。その場合、演算部103が複数のメモリのそれぞれに対して判別処理を実行する際に、各メモリのウィンドウ画像と判別処理で参照すべきパラメータとを対応付けるための対応付け情報が、パラメータ供給部105に付与されている。パラメータ供給部105がパラメータを演算部103に供給する際に、対応付け情報もあわせて演算部103に供給される。演算部103はこの対応付け情報を参照して、各メモリとの対応付けを判断し、ウィンドウ画像の判別処理で参照すべきパラメータを特定する。   In the present embodiment, the description has been made assuming that the memory 102 stores still image data, but it may be moving image data. It is also possible to store a plurality of frames in the memory 102 and refer to them for processing. The memory 102 is not limited to a single memory, and may be a plurality of memories. For example, it may be configured by three memories, and each of the frames being noticed and the frames before and after the frames may be stored. In this case, when the calculation unit 103 executes the determination process for each of the plurality of memories, the association information for associating the window image of each memory with the parameter to be referred to in the determination process is the parameter supply unit 105. Has been granted. When the parameter supply unit 105 supplies parameters to the calculation unit 103, association information is also supplied to the calculation unit 103. The calculation unit 103 refers to the association information, determines the association with each memory, and specifies the parameter to be referred to in the window image discrimination process.

実施形態として、静止画像を空間軸による2次元データ、動画像をさらに時間軸を加えた3次元データの例を説明した。この他、更に多次元のデータ、あるいは、音声などの1次元データ(音声の場合、時間軸を入れ2次元とする場合もある)にも本発明を適用することは可能である。また、本実施形態では、特定オブジェクトを検出するとして説明したが、一般的な多次元データである場合、これは多次元データの特定パターンを検出することに相当する。   As an embodiment, an example has been described in which a still image is two-dimensional data with a spatial axis and a moving image is three-dimensional data with a time axis added. In addition, the present invention can also be applied to multidimensional data or one-dimensional data such as voice (in the case of voice, the time axis may be set to two dimensions). In the present embodiment, the specific object is detected. However, in the case of general multidimensional data, this corresponds to detecting a specific pattern of multidimensional data.

また、本実施形態ではメモリ102が保持するものは画像データそのものであったが、例えば、前処理として特徴量(例えばエッジ量、フレーム間差分など)を抽出し、それをメモリ部に保持するようにしてもよい。なお特徴量を1種類に限る必要性はなく、例えば、1つの画像から複数の特徴量を抽出し、それを用いて判定処理を行うことも可能である。この場合、動画像データの場合のように、パラメータ保持部が保持するパラメータにはどの特徴量を参照するのかという情報を付与し、それに基づいて演算部103が参照すべきデータを特定するように構成する。更には、本実施形態ではメモリ102が通常の画像データを保持するものとして説明したが、積分画像(Integral Image)の形式で保持することも可能である。   Further, in the present embodiment, what is held in the memory 102 is the image data itself. For example, a feature amount (for example, an edge amount, a difference between frames, etc.) is extracted as preprocessing, and is stored in the memory unit. It may be. Note that there is no need to limit the feature amount to one type. For example, it is possible to extract a plurality of feature amounts from one image and perform determination processing using the extracted feature amounts. In this case, as in the case of moving image data, information about which feature quantity is referred to is assigned to the parameter held by the parameter holding unit, and the calculation unit 103 specifies data to be referenced based on the information. Configure. Furthermore, in the present embodiment, the memory 102 has been described as holding normal image data, but it is also possible to hold in the form of an integral image.

以上説明したように、本実施形態によれば、入力画像データに対し、複数の弱判別器を直列に接続して構成される判別処理を効率良く行うことができる。   As described above, according to the present embodiment, it is possible to efficiently perform a discrimination process configured by connecting a plurality of weak discriminators in series to input image data.

(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.

101:指示部、102:メモリ、103:演算部、104:判定部、105:パラメータ供給部   101: Instruction unit, 102: Memory, 103: Calculation unit, 104: Determination unit, 105: Parameter supply unit

Claims (7)

複数の部分画像の1つを指定し、該指定された部分画像に検出の対象が含まれるか否かを判別する判別処理のための複数の弱判別処理の1つを指定して、該指定された弱判別処理の実行を指示する指示手段と、
前記指示手段の前記指示に従って、前記指定された部分画像について前記指定された弱判別処理を行う演算手段と、
前記演算手段による前記指定された弱判別処理の結果に基づいて、前記指定された部分画像に対する判別処理が終了したか否かを判定する判定手段と、を備え、
前記指示手段は、前記複数の部分画像に対する所定の順序に従って、前記判定手段により前記判別処理が終了したと判定された部分画像以外の部分画像を順次循環的に指定し、前記複数の弱判別処理のうち該指定された部分画像に対して未実行の弱判別処理の1つを指定して、該指定された弱判別処理の実行を順次指示し、
前記演算手段は、前記指示手段による順次指示において指定された部分画像に対して指定された弱判別処理を順次実行することを特徴とする画像処理装置。
Specify one of a plurality of partial images, specify one of a plurality of weak discrimination processes for discrimination processing to determine whether the designated partial image includes a detection target, and perform the designation Instruction means for instructing execution of the performed weak discrimination processing;
Computing means for performing the designated weak discrimination processing for the designated partial image in accordance with the instruction of the instruction means;
Determination means for determining whether or not the determination processing for the specified partial image is completed based on the result of the specified weak determination processing by the calculation means;
The instructing means sequentially designates partial images other than the partial images determined by the determining means as having been completed in accordance with a predetermined order for the plurality of partial images, and the plurality of weak determination processes Designating one of the unexecuted weak discrimination processes for the designated partial image, sequentially instructing the execution of the designated weak discrimination process,
The image processing apparatus according to claim 1, wherein the arithmetic means sequentially executes designated weak discrimination processing for the partial images designated in the sequential instruction by the instruction means.
前記演算手段は、前記指示手段により指定された部分画像に対して先に指定された弱判別処理の結果に基づく前記判定手段による判定が未完了であっても、該判定の結果を待たずに、当該部分画像に対して新たに指定された弱判別処理を実行することを特徴とする請求項1に記載の画像処理装置。   The calculation means does not wait for the result of the determination even if the determination by the determination means based on the result of the weak determination process previously specified for the partial image specified by the instruction means is incomplete. The image processing apparatus according to claim 1, wherein newly designated weak discrimination processing is executed on the partial image. 前記指示手段は、前記複数の弱判別処理に対する所定の順序に従って、前記複数の弱判別処理のうち該指定された部分画像に対して次の未実行の弱判別処理を指定することを特徴とする請求項1または2に記載の画像処理装置。   The instruction means designates a next unexecuted weak discrimination process for the designated partial image among the plurality of weak discrimination processes according to a predetermined order for the plurality of weak discrimination processes. The image processing apparatus according to claim 1. 前記判定手段は、前記演算手段による前記指定された弱判別処理により特定パターンが含まれないと判別された場合、前記指定された部分画像に対する判別処理が終了したと判定することを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。   The determination unit determines that the determination process for the specified partial image is completed when it is determined that the specific pattern is not included in the specified weak determination process by the calculation unit. Item 4. The image processing device according to any one of Items 1 to 3. 前記判定手段は、前記指定された部分画像に対して前記複数の弱判別処理の全てにより特定パターンが含まれると判別された場合、前記指定された部分画像に対する判別処理が終了したと判定することを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。   The determination unit determines that the determination process for the specified partial image is completed when it is determined that the specific pattern is included in all of the plurality of weak determination processes for the specified partial image. The image processing apparatus according to claim 1, wherein: 画像処理装置で実行される画像処理方法であって、
前記画像処理装置の指示手段が、複数の部分画像の1つを指定し、該指定された部分画像に検出の対象が含まれるか否かを判別する判別処理のための複数の弱判別処理の1つを指定して、該指定された弱判別処理の実行を指示する指示工程と、
前記画像処理装置の演算手段が、前記指示工程の前記指示に従って、前記指定された部分画像について前記指定された弱判別処理を行う演算工程と、
前記画像処理装置の判定手段が、前記演算工程による前記指定された弱判別処理の結果に基づいて、前記指定された部分画像に対する判別処理が終了したか否かを判定する判定工程と、を有し、
前記指示工程は、前記複数の部分画像に対する所定の順序に従って、前記判定工程により前記判別処理が終了したと判定された部分画像以外の部分画像を順次循環的に指定し、前記複数の弱判別処理のうち該指定された部分画像に対して未実行の弱判別処理の1つを指定して、該指定された弱判別処理の実行を順次指示し、
前記演算工程は、前記指示工程による順次指示において指定された部分画像に対して指定された弱判別処理を順次実行することを特徴とする画像処理方法。
An image processing method executed by an image processing apparatus,
Instructing means of the image processing apparatus designates one of a plurality of partial images, and a plurality of weak discrimination processes for discrimination processing for discriminating whether or not a detection target is included in the designated partial image. An instruction process for designating one and instructing execution of the designated weak discrimination process;
A computing step in which the computing means of the image processing device performs the designated weak discrimination processing for the designated partial image in accordance with the instruction of the instruction step;
A determination step for determining whether or not the determination processing for the specified partial image is completed based on a result of the specified weak determination processing by the calculation step. And
The instructing step sequentially designates partial images other than the partial images determined by the determination step to be completed according to a predetermined order with respect to the plurality of partial images, and the plurality of weak determination processes Designating one of the unexecuted weak discrimination processes for the designated partial image, sequentially instructing the execution of the designated weak discrimination process,
The image processing method characterized in that the calculation step sequentially executes designated weak discrimination processing for the partial images designated in the sequential instruction in the instruction step.
コンピュータを、請求項1乃至5のいずれか1項に記載の画像処理装置の各手段として機能させるためのプログラム。   The program for functioning a computer as each means of the image processing apparatus of any one of Claims 1 thru | or 5.
JP2015153494A 2015-08-03 2015-08-03 Image processing apparatus, image data processing method and program Expired - Fee Related JP5974148B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015153494A JP5974148B2 (en) 2015-08-03 2015-08-03 Image processing apparatus, image data processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015153494A JP5974148B2 (en) 2015-08-03 2015-08-03 Image processing apparatus, image data processing method and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011118396A Division JP5789128B2 (en) 2011-05-26 2011-05-26 Image processing apparatus, image data processing method and program

Publications (2)

Publication Number Publication Date
JP2015222594A JP2015222594A (en) 2015-12-10
JP5974148B2 true JP5974148B2 (en) 2016-08-23

Family

ID=54785533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015153494A Expired - Fee Related JP5974148B2 (en) 2015-08-03 2015-08-03 Image processing apparatus, image data processing method and program

Country Status (1)

Country Link
JP (1) JP5974148B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5100596B2 (en) * 2008-10-03 2012-12-19 キヤノン株式会社 Information processing apparatus and information processing method
JP5258506B2 (en) * 2008-10-24 2013-08-07 キヤノン株式会社 Information processing device

Also Published As

Publication number Publication date
JP2015222594A (en) 2015-12-10

Similar Documents

Publication Publication Date Title
US11822898B2 (en) Semiconductor memory device employing processing in memory (PIM) and method of operating the semiconductor memory device
Plastiras et al. Efficient convnet-based object detection for unmanned aerial vehicles by selective tile processing
US9542621B2 (en) Spatial pyramid pooling networks for image processing
US11049270B2 (en) Method and apparatus for calculating depth map based on reliability
KR101370785B1 (en) Apparatus and method for generating depth map of streoscopic image
JP4642128B2 (en) Image processing method, image processing apparatus and system
EP3028254B1 (en) Apparatus and method for resource-adaptive object detection and tracking
US20210014451A1 (en) Video processing system
JP5235691B2 (en) Information processing apparatus and information processing method
CN108875505B (en) Pedestrian re-identification method and device based on neural network
CN112329505A (en) Method and apparatus for detecting an object
JP5789128B2 (en) Image processing apparatus, image data processing method and program
EP3885979A1 (en) Method and apparatus for detecting liveness based on phase difference
Elloumi et al. Real-time camera orientation estimation based on vanishing point tracking under manhattan world assumption
EP3971781A1 (en) Method and apparatus with neural network operation
CN106663191A (en) System and method for classifying pixels
CN113874877A (en) Neural network and classifier selection system and method
JP5974148B2 (en) Image processing apparatus, image data processing method and program
US20220180150A1 (en) Data processing method and apparatus using neural network and electronic device including the same
CN105160349B (en) A kind of Haar detection goal approach based on GPU platform
JP2017191571A (en) Image processing device, method thereof, and program
US20220366177A1 (en) Method and apparatus with estimation of distance between pedestrian and camera
KR102343348B1 (en) Method of acquiring infrared image data, apparatus for acquiring infrared image data, and computer program for the method
JP2003022442A (en) Method and device for object detection and position measurement, execution program for the same method, and its recording medium
US20220253642A1 (en) Burst image-based image restoration method and apparatus

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160609

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160617

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160715

R151 Written notification of patent or utility model registration

Ref document number: 5974148

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees