[go: up one dir, main page]

JP2008191817A - Image processing apparatus, image processing method, and computer program - Google Patents

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

Info

Publication number
JP2008191817A
JP2008191817A JP2007024027A JP2007024027A JP2008191817A JP 2008191817 A JP2008191817 A JP 2008191817A JP 2007024027 A JP2007024027 A JP 2007024027A JP 2007024027 A JP2007024027 A JP 2007024027A JP 2008191817 A JP2008191817 A JP 2008191817A
Authority
JP
Japan
Prior art keywords
image
memory
processing
face
face image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007024027A
Other languages
Japanese (ja)
Inventor
Haruo Togashi
治夫 富樫
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2007024027A priority Critical patent/JP2008191817A/en
Publication of JP2008191817A publication Critical patent/JP2008191817A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Input (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

【課題】第1メモリに格納された画像を取得し正規化処理を実行して第2メモリに書き込む構成においてメモリの小型化、正確なメモリ書き込みを実現する。
【解決手段】顔識別処理を行なう画像処理装置において、正規化前の顔画像を蓄える第1メモリ(SRAM1)の画像を取り出して正規化を実行して第2メモリ(SRAM2)に格納する処理を行なう構成において、正規化前の顔画像を蓄える第1メモリ(SRAM1)に顔全体を格納することなく、一部のみを格納する。さらに、第1メモリ(SRAM1)に格納された顔の傾きに応じて、第2メモリに対するデータ書き込み順としてのスキャンシーケンスを変更する。本構成により、小さなメモリの小型化、および正確な正規化画像の書き込みが実現される。
【選択図】図16
In a configuration in which an image stored in a first memory is acquired, normalized, and written to a second memory, the memory can be reduced in size and written accurately.
In an image processing apparatus for performing face identification processing, processing for extracting an image of a first memory (SRAM1) that stores a face image before normalization, performing normalization, and storing the image in a second memory (SRAM2). In the configuration to be performed, only a part of the face is stored in the first memory (SRAM 1) for storing the face image before normalization without storing the entire face. Further, the scan sequence as the data writing order to the second memory is changed according to the inclination of the face stored in the first memory (SRAM 1). With this configuration, a small memory can be miniaturized and an accurate normalized image can be written.
[Selection] Figure 16

Description

本発明は、画像処理装置、および画像処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、例えば撮影された画像データに含まれる顔画像の正規化処理を実行する画像処理装置、および画像処理方法、並びにコンピュータ・プログラムに関する。   The present invention relates to an image processing apparatus, an image processing method, and a computer program. More specifically, the present invention relates to an image processing apparatus, an image processing method, and a computer program that execute normalization processing of a face image included in captured image data, for example.

顔認識の技術は、ユーザに負担をかけない個人認証システムをはじめとして、性別の識別など、マンマシン・インターフェースに幅広く適用が可能である。初期は横顔を使った認識技術も検討されたが、現在は、正面画像の認識技術が中心となっている。   Face recognition technology can be widely applied to man-machine interfaces, such as gender identification, as well as personal authentication systems that do not burden the user. Initially, a recognition technique using a profile was also studied, but at present, the recognition technique of the front image is the center.

顔認識システムでは、CCDカメラなどによる撮像画像から顔の特徴情報に基づいて顔パターンを抽出する顔抽出処理と、抽出された顔パターンと登録顔画像との比較を行い、特定人物の顔であることを識別する顔識別処理を実行する。顔抽出処理や顔識別処理には、例えば、方位選択性を持ち周波数成分の異なる複数のフィルタを用いることにより、顔画像の特徴量を抽出する「ガボア・フィルタリング(Gabor Filtering)」を適用することができる(例えば、特許文献1を参照のこと)。   In the face recognition system, a face extraction process for extracting a face pattern from a captured image by a CCD camera or the like based on face feature information, and comparing the extracted face pattern with a registered face image, the face of a specific person is obtained. A face identification process for identifying this is executed. For face extraction processing and face identification processing, for example, “Gabor Filtering” that extracts facial image feature quantities by using a plurality of filters having directional selectivity and different frequency components is applied. (For example, see Patent Document 1).

人間の視覚細胞には、ある特定の方位に対して選択性を持つ細胞が存在することが既に判明されている。これは、垂直の線に対して反応する細胞と、水平の線に反応する細胞で構成される。ガボア・フィルタは、これと同様に、方向選択性を持つ複数のフィルタで構成される空間フィルタである。   It has already been found that there are cells having selectivity for a specific orientation in human visual cells. It consists of cells that respond to vertical lines and cells that respond to horizontal lines. Similarly, the Gabor filter is a spatial filter composed of a plurality of filters having direction selectivity.

ガボア・フィルタは、窓にガウス関数、周波数応答にサイン関数又はコサイン関数を基底とするガボア関数によって空間表現される。フィルタ窓の大きさは例えば24×24固定とする。また、周波数fを5種類、角度θを8方向とすると、40種類のガボア・フィルタが構成される。   The Gabor filter is spatially expressed by a Gabor function based on a Gaussian function for a window and a sine function or a cosine function for a frequency response. For example, the size of the filter window is fixed to 24 × 24. Further, assuming that the frequency f is 5 types and the angle θ is 8 directions, 40 types of Gabor filters are configured.

ガボア・フィルタの演算は、ガボア・フィルタを適用する画素とガボア・フィルタの係数との畳み込みである。ガボア・フィルタの係数は、周波数応答がコサイン関数からなる実部と周波数応答がサイン関数からなる虚部に分離することができ、それぞれに畳み込み演算を実施し、それぞれの成分を合成して1個のスカラ値からなるガボア・フィルタ結果を求めることができる。このような演算を、周波数fと角度θを切り替えながら最大40種類のガボア・フィルタを適用し、得られた最大40個のスカラ値の組を「ガボア・ジェット」と呼ぶ。顔画像データ上で水平方向及び垂直方向に一定間隔で検出される特徴量抽出位置毎に、局所特徴量としてガボア・ジェットが求められる。ガボア・ジェットは、特徴量抽出位置のある程度の位置のずれや変形に対して、不変であるという特徴を有している。   The calculation of the Gabor filter is a convolution of the pixel to which the Gabor filter is applied and the coefficient of the Gabor filter. The coefficient of the Gabor filter can be separated into a real part whose frequency response is a cosine function and an imaginary part whose frequency response is a sine function. A Gabor filter result consisting of a scalar value of can be obtained. In such a calculation, a maximum of 40 types of Gabor filters are applied while switching between the frequency f and the angle θ, and a set of the maximum 40 scalar values obtained is referred to as a “Gabor jet”. A Gabor jet is obtained as a local feature amount for each feature amount extraction position detected at regular intervals in the horizontal and vertical directions on the face image data. The Gabor jet has a feature that it is invariant to a certain amount of positional shift or deformation of the feature amount extraction position.

特定人物の顔であることを識別する顔識別処理では、抽出された顔パターンと登録顔画像との比較が行われる。登録顔画像に関しては、あらかじめ特徴量抽出位置毎のガボア・ジェットが算出されている。そして、同じ特徴量抽出位置における入力顔のガボア・ジェットと登録顔のガボア・ジェットの類似度を演算し、複数の特徴量抽出位置における類似度の集合である類似度ベクトルが求められる。続いて、サポート・ベクタ・マシーン(SVM)によるクラス判定を行なって、入力顔画像と登録顔画像の認識を行なう。サポート・ベクタ・マシーンは、類似度ベクトルの境界面の値を、例えば、+1又は−1と判定する境界面(値が0である位置の面)からの距離を算出し、intra−personal class又はextra−personal classのいずれに属するかを判断する。intra−personal classに属すると判断される類似度ベクトルが存在しない場合には、未登録の人物の顔が入力されたと判断される(例えば、非特許文献1を参照のこと)。また、1つのサポート・ベクタ・マシーンが多くの顔画像を学習(すなわち登録)することで、新たに入力された顔画像が登録されている(学習済みの)顔画像と一致するのか(intra−personal classに属するのか)、又は、一致しないのか(extra−personal classに属するのか)を判定することができる(例えば、特許文献2、特許文献3を参照のこと)。サポート・ベクタ・マシーンは、パターン認識の分野で最も学習汎化能力が高いと当業界では評価されている。   In the face identification process for identifying the face of a specific person, the extracted face pattern is compared with the registered face image. For the registered face image, a Gabor jet for each feature amount extraction position is calculated in advance. Then, the similarity between the Gabor jet of the input face and the Gabor jet of the registered face at the same feature amount extraction position is calculated, and a similarity vector that is a set of similarities at a plurality of feature amount extraction positions is obtained. Subsequently, class determination is performed by a support vector machine (SVM) to recognize an input face image and a registered face image. The support vector machine calculates the distance from the boundary surface (surface at a position where the value is 0) for determining the value of the boundary surface of the similarity vector as, for example, +1 or −1, and sets the intra-personal class or It is determined which of the extra-personal class it belongs to. If there is no similarity vector determined to belong to the intra-personal class, it is determined that an unregistered person's face has been input (for example, see Non-Patent Document 1). In addition, if one support vector machine learns (that is, registers) many face images, does the newly input face image match the registered (learned) face image (intra-)? whether it belongs to personal class) or does not match (whether it belongs to extra-personal class) (see, for example, Patent Document 2 and Patent Document 3). Support vector machines are recognized in the industry as having the highest level of learning generalization in the field of pattern recognition.

上述したように、顔認識システムでは、CCDカメラなどによる撮像画像から顔の特徴情報に基づいて顔パターンを抽出する顔抽出処理と、抽出された顔パターンと登録顔画像との比較を行い、特定人物の顔であることを識別する顔識別処理を実行するが、顔識別処理においては、登録画像との正確な比較処理が可能となるように、比較処理の前処理として、入力画像から抽出した顔画像に対してフィッティング(fitting)処理が実行される。   As described above, in the face recognition system, a face extraction process for extracting a face pattern from a captured image by a CCD camera or the like based on face feature information is compared with the extracted face pattern and a registered face image, and specified. Face identification processing that identifies a person's face is executed. In the face identification processing, the image is extracted from the input image as preprocessing of comparison processing so that accurate comparison processing with a registered image is possible. A fitting process is performed on the face image.

フィッティング処理は、例えば第1のメモリに記録された顔画像を取り出して正規化処理を実行して第2のメモリに記録する処理として実行される。具体的には、例えば、第1のメモリ上の顔画像の両目位置検出を行い検出された両目位置情報から顔の大きさ、顔の位置、顔の角度を求め、第2のメモリの固定した座標に右目、左目の位置を合わせるように、第1のメモリの顔画像を縮小、シフト、回転変換して顔認識に必要な顔画像を第2のメモリ上に作成する処理をフィッティング処理として実行する。   The fitting process is executed, for example, as a process of taking out the face image recorded in the first memory, executing the normalization process, and recording it in the second memory. Specifically, for example, the position of both eyes of the face image in the first memory is detected, and the face size, face position, and face angle are obtained from the detected eye position information, and the second memory is fixed. A process for creating a face image necessary for face recognition on the second memory by reducing, shifting, and rotating the face image in the first memory so that the right eye and the left eye are aligned with the coordinates is executed as a fitting process. To do.

上述のガボア・フィルタによる顔識別処理は、このフィッティング処理後の画像を適用することで正確な処理が実現される。すなわち、同じ特徴量抽出位置における入力顔のガボア・ジェットと登録顔のガボア・ジェットの類似度を演算し、複数の特徴量抽出位置における類似度の集合である類似度ベクトルを求め、サポート・ベクタ・マシーン(SVM)によるクラス判定を行なって、入力顔画像と登録顔画像の照合に基づく顔識別を行なう。   The above-described face identification process using the Gabor filter is realized by applying an image after the fitting process. That is, the similarity between the Gabor jet of the input face and the Gabor jet of the registered face at the same feature amount extraction position is calculated, and a similarity vector that is a set of similarities at a plurality of feature amount extraction positions is obtained. Class determination is performed by a machine (SVM), and face identification is performed based on collation between an input face image and a registered face image.

上述したフィッティング処理としての正規化処理では、第1のメモリの顔画像に対する縮小、シフト、回転処理を伴う画像変換を実行して、実行結果を第2のメモリ上に作成する正規化処理を行なうが、この正規化(画像変換)処理に際しては、第1のメモリに顔画像全体を格納して、第2のメモリに書き込む画素の画素値を、第1のメモリに格納された正規化前のデータを参照して決定するという処理を行なうのが一般的である。   In the normalization process as the fitting process described above, a normalization process is performed in which image conversion is performed with a reduction, shift, and rotation process on the face image in the first memory, and an execution result is created in the second memory. However, in this normalization (image conversion) process, the entire face image is stored in the first memory, and the pixel values of the pixels to be written in the second memory are the values before normalization stored in the first memory. It is common to perform a process of making a decision with reference to data.

しかしながら、実際に、第2のメモリに書き込む画素の画素値の決定に必要となる参照データは、正規化前の顔画像全体のデータではなく、その一部のみである。従って、第1メモリに正規化前の顔画像データを格納する必然性はない。   However, actually, the reference data necessary for determining the pixel value of the pixel to be written in the second memory is not the entire face image data before normalization, but only a part thereof. Therefore, there is no necessity to store the face image data before normalization in the first memory.

特開2006−4041号公報JP 2006-4041 A 特再WO03/019475号公報Japanese Patent Publication No. WO03 / 019475 特開2006−4003号公報JP 20064003 A B.sholkopf外著"Advance in Kernel Support Vector Learning"(The MIT Press、1999.)B. Sholkopf et al., “Advanced in Kernel Support Vector Learning” (The MIT Press, 1999.)

本発明は、このような状況に鑑みてなされたものであり、正規化(画像変換)処理に際して、第1のメモリに顔画像の全体データを格納せず一部の領域データを格納する構成としてメモリの小型化を実現し、さらに、小型化したメモリを利用して正確に正規化画像のメモリ書き込みを実現する画像処理装置、および画像処理方法、並びにコンピュータ・プログラムを提供することを目的とする。   The present invention has been made in view of such a situation. In normalization (image conversion) processing, the first memory does not store the entire face image data but stores a part of the area data. An object of the present invention is to provide an image processing apparatus, an image processing method, and a computer program that can achieve downsizing of a memory and that can accurately write a normalized image into a memory using the downsized memory. .

本発明の第1の側面は、
入力顔画像の識別処理を行なう画像処理装置であって、
識別処理対象となる顔画像を入力し、入力顔画像に対して画像変換を実行し、予め定められた設定を持つ画像に正規化する処理を実行する画像変換部と、
前記画像変換部において変換された変換入力画像から求めた特徴量と、登録画像の特徴量との類似度を算出する類似度算出部と、
前記類似度算出部の算出した類似度に基づいて入力顔画像と登録顔画像が一致するか否かを判定する一致判定手段を備え、
前記画像変換部は、
正規化処理の対象とする顔画像を格納した第1メモリから、顔画像を取得して画像変換による正規化を実行して正規化後の顔画像を第2メモリに格納する処理を実行する構成であり、
前記第1メモリは、正規化処理の対象とする顔画像の一部のみを格納し、前記第2メモリに対する正規化処理後の画像の書き込みの進行に応じて、前記第1メモリの格納データの更新処理を実行するメモリ制御部を有する構成であることを特徴とする画像処理装置にある。
The first aspect of the present invention is:
An image processing apparatus for performing identification processing of an input face image,
An image conversion unit that inputs a face image to be subjected to identification processing, performs image conversion on the input face image, and performs processing to normalize to an image having a predetermined setting;
A similarity calculation unit that calculates the similarity between the feature amount obtained from the converted input image converted by the image conversion unit and the feature amount of the registered image;
A match determination unit that determines whether the input face image and the registered face image match based on the similarity calculated by the similarity calculation unit;
The image conversion unit
A configuration for acquiring a face image from the first memory storing the face image to be subjected to normalization processing, executing normalization by image conversion, and storing the normalized face image in the second memory And
The first memory stores only a part of the face image to be normalized, and stores the data stored in the first memory in accordance with the progress of the writing of the image after the normalization process to the second memory. An image processing apparatus includes a memory control unit that executes update processing.

さらに、本発明の画像処理装置の一実施態様において、前記メモリ制御部は、前記第2メモリの書き込みアドレスと、該書き込みアドレスに対応する前記第1メモリの対応画素位置の縦方向(Y成分)を比較するアドレス比較部を有し、該アドレス比較部の比較情報に基づいて、前記第1メモリの対応画素位置が、前記前記第1メモリの格納データ中の縦(Y)方向において、ほぼ中央となるように前記第1メモリの格納データの更新処理を実行する構成であることを特徴とする。   Furthermore, in an embodiment of the image processing apparatus of the present invention, the memory control unit includes a write address of the second memory and a vertical direction (Y component) of a corresponding pixel position of the first memory corresponding to the write address. And the corresponding pixel position of the first memory is substantially centered in the longitudinal (Y) direction in the stored data of the first memory based on the comparison information of the address comparison unit. It is the structure which performs the update process of the stored data of the said 1st memory so that it may become.

さらに、本発明の画像処理装置の一実施態様において、前記画像変換部は、正規化処理に際して実行する画像回転の角度情報を入力し、該角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を出力するカウンタを有し、前記カウンタは、異なる角度に応じた異なるカウンタ値を出力する複数のサブカウンタを有する構成であることを特徴とする。   Furthermore, in one embodiment of the image processing apparatus of the present invention, the image conversion unit inputs angle information of image rotation executed during normalization processing, and corresponds to the second memory write address according to the angle information. The counter includes a counter that outputs a counter value, and the counter includes a plurality of sub-counters that output different counter values according to different angles.

さらに、本発明の画像処理装置の一実施態様において、前記サブカウンタの各々は、
画像回転の角度:θ=arctan(±1/n)
ただしnは整数、
上記角度に対応した第2メモリ書き込みアドレスに相当するカウンタ値を出力する構成であることを特徴とする。
Furthermore, in one embodiment of the image processing apparatus of the present invention, each of the sub-counters is
Image rotation angle: θ = arctan (± 1 / n)
Where n is an integer,
The counter value corresponding to the second memory write address corresponding to the angle is output.

さらに、本発明の画像処理装置の一実施態様において、前記画像変換部は、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出するための変換パラメータを算出する演算部と、前記演算部の算出した変換パラメータに含まれる画像回転の角度情報を入力し、入力角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を異なるカウンタ値を出力するカウンタと、前記演算部の算出した変換パラメータに基づいて、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する座標変換部と、前記座標変換部の算出した対応点情報に従って、前記第2メモリの各画素位置に対応する画素値を決定する補間処理部と、
を有する構成であることを特徴とする。
Furthermore, in an embodiment of the image processing apparatus of the present invention, the image conversion unit calculates a conversion parameter for calculating a corresponding point of the first memory corresponding to each pixel position of the second memory. And a counter that inputs image rotation angle information included in the conversion parameter calculated by the calculation unit, and outputs a counter value different from the counter value corresponding to the second memory write address according to the input angle information; Based on the conversion parameter calculated by the calculation unit, the coordinate conversion unit that calculates the corresponding point of the first memory corresponding to each pixel position of the second memory, and the corresponding point information calculated by the coordinate conversion unit, An interpolation processing unit for determining a pixel value corresponding to each pixel position in the second memory;
It is the structure which has these.

さらに、本発明の画像処理装置の一実施態様において、前記演算部は、前記変換パラメータとして、前記第1メモリに格納された顔画像を前記第2メモリに格納する顔画像に変換する際に適用する画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを算出し、前記座標変換部は、画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを適用して、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する処理を実行する構成であることを特徴とする。   Furthermore, in an embodiment of the image processing apparatus of the present invention, the calculation unit is applied when converting the face image stored in the first memory as the conversion parameter into a face image stored in the second memory. A conversion parameter that defines at least one of image reduction processing, image rotation processing, or image translation processing to be performed, and the coordinate conversion unit is configured to perform image reduction processing, image rotation processing, or image translation processing. The conversion parameter that defines at least one of the processes is applied to calculate the corresponding point of the first memory corresponding to each pixel position of the second memory.

さらに、本発明の第2の側面は、
画像処理装置において、入力顔画像の識別処理を行なう画像処理方法であって、
画像変換部が、識別処理対象となる顔画像を入力し、入力顔画像に対して画像変換を実行し、予め定められた設定を持つ画像に正規化する処理を実行する画像変換ステップと、
類似度算出部が、前記画像変換部において変換された変換入力画像から求めた特徴量と、登録画像の特徴量との類似度を算出する類似度算出ステップと、
一致判定手段が、前記類似度算出部の算出した類似度に基づいて入力顔画像と登録顔画像が一致するか否かを判定する一致判定ステップを有し、
前記画像変換ステップは、
正規化処理の対象とする顔画像を格納した第1メモリから、顔画像を取得して画像変換による正規化を実行して正規化後の顔画像を第2メモリに格納する処理を実行するステップと、
メモリ制御部が、前記第1メモリに正規化処理の対象とする顔画像の一部のみを格納し、前記第2メモリに対する正規化処理後の画像の書き込みの進行に応じて前記第1メモリの格納データの更新処理を実行するメモリ制御ステップを含むことを特徴とする画像処理方法にある。
Furthermore, the second aspect of the present invention provides
An image processing method for identifying an input face image in an image processing apparatus,
An image conversion step in which an image conversion unit inputs a face image to be subjected to identification processing, executes image conversion on the input face image, and executes processing for normalizing to an image having a predetermined setting;
A similarity calculation step in which the similarity calculation unit calculates the similarity between the feature amount obtained from the converted input image converted by the image conversion unit and the feature amount of the registered image;
A match determination step for determining whether or not the input face image and the registered face image match based on the similarity calculated by the similarity calculation unit;
The image conversion step includes
A step of acquiring a face image from the first memory storing the face image to be subjected to normalization processing, executing normalization by image conversion, and storing the normalized face image in the second memory When,
The memory control unit stores only a part of the face image to be normalized in the first memory, and the memory control unit stores the first memory in accordance with the progress of the writing of the image after the normalization process to the second memory. An image processing method includes a memory control step of executing a storage data update process.

さらに、本発明の画像処理方法の一実施態様において、前記メモリ制御ステップは、前記第2メモリの書き込みアドレスと、該書き込みアドレスに対応する前記第1メモリの対応画素位置の縦方向(Y成分)を比較し、比較情報に基づいて前記第1メモリの対応画素位置が、前記前記第1メモリの格納データ中の縦(Y)方向において、ほぼ中央となるように前記第1メモリの格納データの更新処理を実行することを特徴とする。   Furthermore, in an embodiment of the image processing method of the present invention, the memory control step includes: a writing address of the second memory; and a vertical direction (Y component) of a corresponding pixel position of the first memory corresponding to the writing address. Based on the comparison information, the corresponding pixel position of the first memory is substantially centered in the longitudinal (Y) direction in the stored data of the first memory. Update processing is executed.

さらに、本発明の画像処理方法の一実施態様において、前記画像変換部は、正規化処理に際して実行する画像回転の角度情報を入力し、該角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を出力するカウンタを有し、前記カウンタは、異なる角度に応じた異なるカウンタ値を出力する複数のサブカウンタを含み、入力する角度情報に応じて適用するサブカウンタを選択して、選択されたサブカウンタのカウンタ値を出力することを特徴とする。   Furthermore, in an embodiment of the image processing method of the present invention, the image conversion unit inputs angle information of image rotation executed during normalization processing, and corresponds to the second memory write address according to the angle information. A counter that outputs a counter value, and the counter includes a plurality of sub-counters that output different counter values according to different angles, and is selected by selecting a sub-counter to be applied according to input angle information. The counter value of the sub-counter is output.

さらに、本発明の画像処理方法の一実施態様において、前記サブカウンタの各々は、
画像回転の角度:θ=arctan(±1/n)
ただしnは整数、
上記角度に対応した第2メモリ書き込みアドレスに相当するカウンタ値を出力することを特徴とする。
Furthermore, in one embodiment of the image processing method of the present invention, each of the sub-counters includes:
Image rotation angle: θ = arctan (± 1 / n)
Where n is an integer,
A counter value corresponding to the second memory write address corresponding to the angle is output.

さらに、本発明の画像処理方法の一実施態様において、前記画像変換部は、演算部が、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出するための変換パラメータを算出する演算ステップと、カウンタが、前記演算ステップにおいて算出した変換パラメータに含まれる画像回転の角度情報を入力し、入力角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を異なるカウンタ値を出力するカウンタ値出力ステップと、座標変換部が、前記演算ステップにおいて算出した変換パラメータに基づいて、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する座標変換ステップと、補間処理部が、前記座標変換ステップにおいて算出した対応点情報に従って、前記第2メモリの各画素位置に対応する画素値を決定する補間処理ステップと有することを特徴とする。   Furthermore, in an embodiment of the image processing method of the present invention, the image conversion unit includes a conversion parameter for calculating a corresponding point of the first memory corresponding to each pixel position of the second memory. The calculation step and the counter input the angle information of the image rotation included in the conversion parameter calculated in the calculation step, and the counter value corresponding to the second memory write address is set differently according to the input angle information. And a coordinate conversion step in which the coordinate conversion unit calculates a corresponding point in the first memory corresponding to each pixel position in the second memory based on the conversion parameter calculated in the calculation step. And the interpolation processing unit determines each pixel position of the second memory according to the corresponding point information calculated in the coordinate conversion step. Characterized in that it has an interpolation processing step of determining a pixel value corresponding to.

さらに、本発明の画像処理方法の一実施態様において、前記演算ステップは、前記変換パラメータとして、前記第1メモリに格納された顔画像を前記第2メモリに格納する顔画像に変換する際に適用する画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを算出し、前記座標変換ステップは、画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを適用して、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する処理を実行することを特徴とする。   Furthermore, in an embodiment of the image processing method of the present invention, the calculation step is applied when converting the face image stored in the first memory as the conversion parameter into a face image stored in the second memory. A conversion parameter that defines at least one of image reduction processing, image rotation processing, or image translation processing to be calculated, and the coordinate conversion step includes image reduction processing, image rotation processing, or image translation processing A process for calculating a corresponding point of the first memory corresponding to each pixel position of the second memory is performed by applying a conversion parameter defining at least one of the processes.

さらに、本発明の第3の側面は、
画像処理装置において、入力顔画像の識別処理を行なわせるコンピュータ・プログラムであり、
画像変換部に、識別処理対象となる顔画像を入力させ、入力顔画像に対して画像変換を実行させて予め定められた設定を持つ画像に正規化する処理を実行させる画像変換ステップと、
類似度算出部に、前記画像変換部において変換された変換入力画像から求めた特徴量と、登録画像の特徴量との類似度を算出させる類似度算出ステップと、
一致判定手段に、前記類似度算出部の算出した類似度に基づいて入力顔画像と登録顔画像が一致するか否かを判定させる一致判定ステップを有し、
前記画像変換ステップは、
正規化処理の対象とする顔画像を格納した第1メモリから、顔画像を取得して画像変換による正規化を実行して正規化後の顔画像を第2メモリに格納する処理を実行させるステップと、
メモリ制御部の制御により、前記第1メモリに正規化処理の対象とする顔画像の一部のみを格納させ、前記第2メモリに対する正規化処理後の画像の書き込みの進行に応じて、前記第1メモリの格納データの更新処理を実行させるメモリ制御ステップを含むことを特徴とするコンピュータ・プログラムにある。
Furthermore, the third aspect of the present invention provides
In the image processing apparatus, a computer program for performing input face image identification processing,
An image conversion step for causing the image conversion unit to input a face image to be subjected to identification processing, executing image conversion on the input face image, and performing processing to normalize to an image having a predetermined setting;
A similarity calculation step for causing the similarity calculation unit to calculate the similarity between the feature amount obtained from the converted input image converted by the image conversion unit and the feature amount of the registered image;
A match determination step for causing the match determination means to determine whether or not the input face image and the registered face image match based on the similarity calculated by the similarity calculation unit;
The image conversion step includes
A step of acquiring a face image from the first memory storing the face image to be normalized and executing normalization by image conversion to store the normalized face image in the second memory When,
Under the control of the memory control unit, only a part of the face image to be normalized is stored in the first memory, and in accordance with the progress of the writing of the image after the normalization process to the second memory, the first memory A computer program comprising a memory control step for executing a process of updating data stored in one memory.

なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、DVD、CD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。   The computer program of the present invention is, for example, a storage medium or a communication medium provided in a computer-readable format to a computer system that can execute various program codes, such as a DVD, a CD, and an MO. It is a computer program that can be provided by a recording medium or a communication medium such as a network. By providing such a program in a computer-readable format, processing corresponding to the program is realized on the computer system.

本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。   Other objects, features, and advantages of the present invention will become apparent from a more detailed description based on embodiments of the present invention described later and the accompanying drawings. In this specification, the system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.

本発明の一実施例の構成によれば、顔識別処理を行なう画像処理装置において、正規化前の顔画像を蓄える第1メモリ(SRAM1)の画像を取り出して正規化を実行して第2メモリ(SRAM2)に格納する処理を行なう構成において、正規化前の顔画像を蓄える第1メモリ(SRAM1)に顔全体を格納することなく、一部のみを格納する構成としてメモリの小型化を実現し、さらに、第1メモリ(SRAM1)に格納された顔の傾きに応じて、第2メモリに対するデータ書き込み順としてのスキャンシーケンスを変更する構成としたので、メモリの小型化および正確な正規化画像の書き込み処理が実現される。   According to the configuration of an embodiment of the present invention, in an image processing apparatus that performs face identification processing, an image of a first memory (SRAM 1) that stores a face image before normalization is extracted and normalized to execute the second memory. In the configuration in which the process of storing in (SRAM2) is performed, the memory is reduced in size as a configuration in which only a part is stored without storing the entire face in the first memory (SRAM1) that stores the face image before normalization. In addition, since the scan sequence as the data writing order to the second memory is changed according to the inclination of the face stored in the first memory (SRAM 1), the memory can be downsized and an accurate normalized image can be obtained. Write processing is realized.

以下、図面を参照しながら本発明の画像処理装置、および画像処理方法、並びにコンピュータ・プログラムの詳細について説明する。   Hereinafter, an image processing apparatus, an image processing method, and a computer program according to the present invention will be described in detail with reference to the drawings.

顔認識システムにおいては、入力画像から顔画像を抽出する顔抽出処理と、抽出された顔画像と登録画像との照合を実行して、入力顔画像がどの登録画像に対応するかを識別する顔識別処理が実行されることは既に述べた通りである。ここでは、まず顔検出処理と顔識別処理について改めて定義しておく。   In the face recognition system, a face extraction process for extracting a face image from an input image and a comparison between the extracted face image and a registered image are performed to identify which registered image the input face image corresponds to As described above, the identification process is executed. Here, the face detection process and the face identification process are defined again.

顔検出は、ある1枚の画像(1枚の写真や動画像の1ピクチャ(フィールド又はフレーム)に当たる)に対して、人物顔を検出しその位置と大きさを求める処理である。1枚の画において複数の顔が存在することがある。一方、顔識別とは検出されたある1個の顔が以前に登録された顔と同一人物かを識別することを言う。   Face detection is processing for detecting a person's face and obtaining its position and size from a certain image (corresponding to one picture or one picture (field or frame) of a moving image). There may be a plurality of faces in one image. On the other hand, face identification refers to identifying whether one detected face is the same person as a previously registered face.

図1には、本発明の一実施形態に係る顔認識システムの全体構成を模式的に示している。図示の顔認識システム1は、画縮小器11と、顔検出器12と、両目位置検出器13と、顔識別器14と、複数枚の画像を蓄えるメモリ(SDRAM)15で構成される。また、顔検出器12と、両目位置検出器13と、顔識別器14内部にローカル・メモリ(SRAM)を備えている。本システム1への入力は画像であり、本システム1からの出力(Yes/No)は、入力顔画像と登録顔画像とが同一人物であるか否かを示すフラグである。   FIG. 1 schematically shows the overall configuration of a face recognition system according to an embodiment of the present invention. The illustrated face recognition system 1 includes an image reducer 11, a face detector 12, a binocular position detector 13, a face discriminator 14, and a memory (SDRAM) 15 that stores a plurality of images. Further, a local memory (SRAM) is provided in the face detector 12, the binocular position detector 13, and the face discriminator 14. The input to the system 1 is an image, and the output (Yes / No) from the system 1 is a flag indicating whether or not the input face image and the registered face image are the same person.

画縮小器11では、入力画像に対し水平及び垂直の各方向にそれぞれ1/2にした縮小画像を作成し、原入力画像とともにSDRAM(Synchronous DRAM)15に格納する。図1に示す例では、入力画像を画1、入力画像に対し水平及び垂直方向にそれぞれ1/2にした縮小画像を画1/2、入力画像に対し水平及び垂直方向にそれぞれ1/4にした縮小画像を画1/4として、これら3枚の画像を作成して、SDRAM15に格納する。   The image reducer 11 creates a reduced image that is halved in each of the horizontal and vertical directions with respect to the input image, and stores it in an SDRAM (Synchronous DRAM) 15 together with the original input image. In the example shown in FIG. 1, the input image is image 1, the reduced image obtained by halving the input image in the horizontal and vertical directions is image 1/2, and the input image is ¼ in the horizontal and vertical directions, respectively. These reduced images are set as the image 1/4 and these three images are created and stored in the SDRAM 15.

縮小画像を作成する際、演算精度を考慮すると、入力画像から直接それぞれの縮小画像を作成する方法が望ましい。但し、ハードウェアの規模を考慮して、1/2縮小を順番に施す方法、つまり、始めに入力画像(画1)から画1/2を作成し、次に作成された画1/2から画1/4を作成する方法で実現するようにしてもよい。   When creating reduced images, considering the calculation accuracy, it is desirable to create each reduced image directly from the input image. However, in consideration of the hardware scale, a method of performing 1/2 reduction in order, that is, first creating an image 1/2 from an input image (image 1) and then creating the image 1/2 You may make it implement | achieve by the method of producing the image 1/4.

顔検出器12では、入力画像とSDRAM15に格納されているすべての縮小画像に対して顔を検出し、検出された顔の大きさと顔の位置を求める。顔の位置の検出に関しては、画像全体を検出することで処理速度を考慮しなければ容易に実現可能である。一方、いろいろな大きさの顔の検出に関しては、画像の解像度と検出顔の大きさの相対関係の問題で、画像の解像度を固定にする方法(すなわち、入力画像に対していろいろな大きさの顔検出器を用意する方法)と、検出顔の大きさを固定にする方法(検出できる顔の大きさが固定された1つの顔検出器を用い、入力画像をいろいろな解像度に縮小して検出する方法)が考えられるが、後者の方法が現実的である。したがって、図1に示すように、顔検出器12では、画縮小器11で作成された画1、画1/2、画1/4の各縮小画像に対して、24×24画素内に顔が存在するか否かを識別する。   The face detector 12 detects a face from the input image and all the reduced images stored in the SDRAM 15 and obtains the detected face size and face position. The detection of the face position can be easily realized by detecting the entire image without considering the processing speed. On the other hand, regarding the detection of faces of various sizes, a method of fixing the resolution of the image (that is, various sizes of the input image) due to the relative relationship between the resolution of the image and the size of the detected face. A method to prepare a face detector) and a method to fix the size of the detected face (one face detector with a fixed face size that can be detected is used to reduce the input image to various resolutions and detect it. Can be considered, but the latter method is practical. Therefore, as shown in FIG. 1, the face detector 12 has a face within 24 × 24 pixels for each reduced image of the image 1, the image 1/2, and the image 1/4 generated by the image reducer 11. Whether or not exists.

なお、縮小率の刻みが1/2、1/4では粗過ぎて精度が不十分である場合には、例えば画縮小器11で画7/8、画6/8、画5/8の縮小率の画像をさらに作成し、顔検出器12でそれぞれの縮小率の画像に対しても顔検出を行なうようにすれば良い。   If the reduction rate increments are 1/2 or 1/4 and are too coarse and the accuracy is insufficient, for example, the image reducer 11 reduces the images 7/8, 6/8, and 5/8. It is only necessary to further create a rate image and perform face detection for each reduction rate image by the face detector 12.

顔検出の特徴抽出として2点画素差分方式を適用することができる。これは、24×24画素内において顔の特徴を抽出し易い2点の画素の差分をさまざまな2点で行なう方式である。また、識別器演算としてadaboostアルゴリズムを用いることができる。   A two-point pixel difference method can be applied as feature extraction for face detection. This is a method of performing a difference between two pixels that easily extract facial features within 24 × 24 pixels at various two points. Further, an adaboost algorithm can be used as the discriminator operation.

両目位置検出器13では、両目位置検出は、顔画像を顔認識するための準備として、顔検出器12によって検出された顔に対して解像度を上げた画像の顔を正規化するために、左右の目の位置を特定する。すなわち、両目位置を検出して、顔検出によって得られた顔の大きさ、顔の位置から、その顔画像の解像度を上げた顔の大きさ、顔の位置、顔の角度を求める。   In the binocular position detector 13, binocular position detection is performed in order to normalize the face of the image whose resolution is increased with respect to the face detected by the face detector 12 as preparation for face recognition of the face image. Specify the position of the eyes. That is, the positions of both eyes are detected, and the face size, face position, and face angle obtained by increasing the resolution of the face image are obtained from the face size and face position obtained by face detection.

顔検出器12では24×24画素の解像度で顔検出が行なわれ、顔識別器14では60×66画素の解像度で顔認識が行なわれる。言い換えると、顔識別器14に必要な解像度は、顔検出器12のそれより精度を要求される。そこで、顔検出器で検出された顔が画1/2とすると、それよりも解像度の高い画1の同等の顔が存在する場所で且つ目が存在する顔の上部で左右の目を検出する。   The face detector 12 performs face detection with a resolution of 24 × 24 pixels, and the face discriminator 14 performs face recognition with a resolution of 60 × 66 pixels. In other words, the resolution required for the face discriminator 14 is required to be more accurate than that of the face detector 12. Therefore, if the face detected by the face detector is an image 1/2, the left and right eyes are detected at a location where an equivalent face of the image 1 with higher resolution exists and above the face where the eye exists. .

両目位置検出の特徴抽出として2点画素差分方式を適用することができる。2点画素差分方式の適用範囲も24×24画素であり、顔検出器12と同じであるので、顔検出器12と同一のハードウェアで処理時間をシリアルにして実現することができる。   A two-point pixel difference method can be applied as feature extraction for detecting both-eye positions. The application range of the two-point pixel difference method is 24 × 24 pixels, which is the same as that of the face detector 12, so that the processing time can be realized serially with the same hardware as the face detector 12.

顔識別器14では、両目位置検出器13によって左右の目位置が特定された顔画像から顔の大きさ、位置、角度を求め、それらに応じて顔を正規化して60×66画素の内部のSRAMに一旦蓄えて、登録画像と一致するか否かを調べる。   The face discriminator 14 obtains the face size, position, and angle from the face image in which the right and left eye positions are specified by the binocular position detector 13, and normalizes the face according to these to normalize the inside of 60 × 66 pixels. Once stored in the SRAM, it is checked whether or not it matches the registered image.

顔識別器14は、例えば顔認識の特徴抽出としてガボア・フィルタリングを適用する。また、識別器演算としてgentleboostを用いる。正規化された顔画像にガボア・フィルタを適用して得られた結果と、以前に登録された画像にガボア・フィルタを適用して得られた結果との類似度を求める。そして、求められた類似度に対してgentleboostを施すことによって、登録画と一致したか否か識別する。   The face discriminator 14 applies Gabor filtering as, for example, feature extraction for face recognition. In addition, “gentleboost” is used as a classifier operation. The degree of similarity between the result obtained by applying the Gabor filter to the normalized face image and the result obtained by applying the Gabor filter to the previously registered image is obtained. Then, by performing a gentle boost on the obtained similarity, it is identified whether or not it matches the registered image.

図2には、顔識別器14の構成例を示している。図示の顔識別器14は、画像変換部141と、ガボア・フィルタ適用部142と、類似度算出部143と、一致判定部144を備えている。   FIG. 2 shows a configuration example of the face discriminator 14. The illustrated face discriminator 14 includes an image conversion unit 141, a Gabor filter application unit 142, a similarity calculation unit 143, and a coincidence determination unit 144.

画像変換部141は、初めに、両目位置検出で検出された両目位置情報に基づいて顔識別に必要である解像度に相当する顔画像を、SDRAM15から、顔識別器14にローカルのSRAM1に転送する。次いで、両目位置情報から顔の大きさ、顔の位置、顔の角度を求め、SRAM1にある顔画像の画像変換による正規化処理を実行して、顔識別処理に必要な顔画像を作成して、顔識別器14に備えられたローカルメモリであるSRAM2に格納する。   First, the image conversion unit 141 transfers a face image corresponding to the resolution required for face identification based on the binocular position information detected by the binocular position detection from the SDRAM 15 to the local SRAM 1 to the face classifier 14. . Next, the face size, face position, and face angle are obtained from the binocular position information, and normalization processing is performed by image conversion of the face image in the SRAM 1 to create a face image necessary for face identification processing. And stored in the SRAM 2 which is a local memory provided in the face discriminator 14.

つまり、画像変換部141では、両目位置情報からSRAM2の固定した座標に右目、左目の位置を合わせるように、SRAM1の顔画像に対する縮小、シフト、回転処理などの画像変換(正規化)を実行して顔認識に必要な顔画像をSRAM2に作成するフィッティング処理を実行する。すなわち、図3に示すように、SRAM1にある顔画像の画像変換による正規化処理を実行してSRAM2に格納する。   That is, the image conversion unit 141 performs image conversion (normalization) such as reduction, shift, and rotation processing on the face image of the SRAM 1 so that the positions of the right eye and the left eye are aligned with the fixed coordinates of the SRAM 2 from the binocular position information. Then, a fitting process for creating a face image necessary for face recognition in the SRAM 2 is executed. That is, as shown in FIG. 3, normalization processing by image conversion of the face image in the SRAM 1 is executed and stored in the SRAM 2.

なお、本発明の装置においては、顔識別処理に際して重要となる目、鼻、口といった顔パーツの位置や形の誤差の発生を抑制した画像変換(正規化)処理を実行する。この処理については、後段で詳細に説明する。   In the apparatus of the present invention, image conversion (normalization) processing is performed in which occurrence of errors in the position and shape of face parts such as eyes, nose and mouth, which are important in face identification processing, is suppressed. This process will be described in detail later.

ガボア・フィルタ適用部142は、画像変換部141において正規化された顔画像に対してガボア・フィルタを適用する。   The Gabor filter application unit 142 applies a Gabor filter to the face image normalized by the image conversion unit 141.

ガボア・フィルタは、窓にガウス関数、周波数応答にサイン関数又はコサイン関数を基底とするガボア関数によって空間表現される。本実施形態では、フィルタ窓は、図4Aに示すように24×24画素固定とする。そして、図4Bに示すような特定の周波数成分のサイン関数又はコサイン関数からなる応答関数にフィルタ窓をかけると、図4Cに示すようなガボア・フィルタを作成することができる。また、例えば、0度、22.5度、45度、67.5度、90度、112.5度、135度、157.5度と22.5度ずつずらした8方向のサイン関数又はコサイン関数からなる応答関数に対してそれぞれフィルタ窓をかけると、図4Dに示すように8通りのガボア・フィルタを作成することができる。さらに、低周波域から高周波域に至る5種類の周波数fの応答関数について、同様に8方向の角度θでフィルタ窓をかけることで、図4Eに示すように合計で40種類のガボア・フィルタが構成される。ガボア・フィルタ(ガボア・カーネルK(x,y))は、以下の演算式で表される。   The Gabor filter is spatially expressed by a Gabor function based on a Gaussian function for a window and a sine function or a cosine function for a frequency response. In the present embodiment, the filter window is fixed to 24 × 24 pixels as shown in FIG. 4A. When a filter window is applied to a response function including a sine function or cosine function of a specific frequency component as shown in FIG. 4B, a Gabor filter as shown in FIG. 4C can be created. In addition, for example, a sine function or cosine of 8 directions shifted by 22.5 degrees from 0 degree, 22.5 degrees, 45 degrees, 67.5 degrees, 90 degrees, 112.5 degrees, 135 degrees, and 157.5 degrees. When a filter window is applied to each response function composed of functions, eight Gabor filters can be created as shown in FIG. 4D. Further, by applying the filter window at the angle θ in eight directions similarly for the response functions of five types of frequencies f from the low frequency range to the high frequency range, a total of 40 types of Gabor filters can be obtained as shown in FIG. 4E. Composed. The Gabor filter (Gabor kernel K (x, y)) is expressed by the following arithmetic expression.

ガボア・フィルタの演算は、ガボア・フィルタGi(x,y)を適用する画素I(x,y)とガボア・フィルタの係数との畳み込みである。ガボア・フィルタの係数は、周波数応答がコサイン関数からなる実部Re(x,y)と周波数応答がサイン関数Im(x,y)からなる虚部に分離することができ、それぞれに畳み込み演算を実施し、それぞれの成分を合成して、1個のスカラ値からなるガボア・フィルタ結果Ji(x,y)を求めることができる。但し、(x,y)は特徴量抽出位置の画素位置を示し、iは上述した40通りのガボア・フィルタのうちi番目であることを示す。   The calculation of the Gabor filter is a convolution of the pixel I (x, y) to which the Gabor filter Gi (x, y) is applied and the coefficient of the Gabor filter. The coefficients of the Gabor filter can be separated into a real part Re (x, y) whose frequency response is a cosine function and an imaginary part whose frequency response is a sine function Im (x, y). The Gabor filter result Ji (x, y) consisting of one scalar value can be obtained by performing the above and combining the respective components. However, (x, y) indicates the pixel position of the feature amount extraction position, and i indicates the i-th of the 40 Gabor filters described above.

画像の特徴量抽出位置(x,y)において最大40種類のガボア・フィルタを適用して得られた最大40スカラ値の組{J1,J2,…,J40}をガボア・ジェットと呼ぶ。   A set {J1, J2,..., J40} of maximum 40 scalar values obtained by applying a maximum of 40 types of Gabor filters at the image feature extraction position (x, y) is called a Gabor jet.

類似度算出部143は、入力画像について算出されたガボア・ジェットGSと登録画像のガボア・ジェットGRに正規化相関演算を行ない、特徴量抽出位置毎の類似度dを求める。   The similarity calculation unit 143 performs a normalized correlation operation on the Gabor Jet GS calculated for the input image and the Gabor Jet GR of the registered image to obtain the similarity d for each feature amount extraction position.

本実施形態では、正規化された60×66画素の顔画像のうち、特徴量が抽出し易い82箇所の特徴量抽出位置(図5を参照のこと)において、正規化相関演算を行ない、類似度を求める。この結果、d0、d1、…、d81の82箇所の各特徴量抽出位置で求められた正規化相関演算結果を要素とする類似度ベクトルDが得られる。   In the present embodiment, normalized correlation calculation is performed at the 82 feature amount extraction positions (see FIG. 5) where feature amounts are easily extracted from the normalized face image of 60 × 66 pixels. Find the degree. As a result, a similarity vector D whose elements are normalized correlation calculation results obtained at the 82 feature amount extraction positions d0, d1,..., D81 is obtained.

なお、上記では「最大40種類」のガボア・フィルタを適用することを記述したが、これは82箇所のすべての特徴量抽出位置において40種類すべてのガボア・フィルタを適用する必要はないことを意味する。何種類のガボア・フィルタを適用するかは、類似度を抽出する特徴量抽出位置の場所に依存し、場所に応じてガボア・フィルタの種類とその数(ガボア・ジェットの要素数)が異なる。   In the above description, “maximum 40 types” of Gabor filters are described. This means that it is not necessary to apply all 40 types of Gabor filters at all 82 feature extraction positions. To do. The number of types of Gabor filters to be applied depends on the location of the feature quantity extraction position where the similarity is extracted, and the types and the number of Gabor filters (the number of Gabor jet elements) differ depending on the location.

一致判定部144は、入力画と登録画間の類似度ベクトルに基づいて、両画像の一致を判定する。本実施形態では、識別器演算としてgentleboostを用いる。ここでは、以下の演算式を用いてgentleboostを算出する。但し、同式中のa、q、bは辞書としてあらかじめ登録されているものとする。   The coincidence determination unit 144 determines the coincidence of both images based on the similarity vector between the input image and the registered image. In the present embodiment, “gentleboost” is used as the discriminator operation. Here, the gentle boost is calculated using the following arithmetic expression. However, it is assumed that a, q, and b in the formula are registered in advance as a dictionary.

そして、以下の判別式に従って、入力画が登録画と一致するかどうかを判定する。   Then, according to the following discriminant, it is determined whether or not the input image matches the registered image.

なお、本実施形態では、一致判定にgentleboostを用いているが、例えば、サポート・ベクタ・マシーンを用いて類似ベクトルの境界面の値をクラス判定して、顔画像の一致を判定するようにしてもよい。   In the present embodiment, gentleboost is used for matching determination. However, for example, by using a support vector machine to classify the values of boundary surfaces of similar vectors, the matching of face images is determined. Also good.

次に、図1に示す顔識別器14における画像変換部141(図2参照)において実行する画像変換処理の詳細について説明する。先に図3を参照して説明したように、画像変換部141では、SRAM1に格納した顔画像を取り出して取り出した顔画像の両目位置情報からSRAM2の固定した座標に右目、左目の位置を合わせるように、SRAM1の顔画像に対する縮小、シフト、回転処理などの画像変換(正規化)を実行して顔認識に必要な顔画像をSRAM2に作成するフィッティング処理を実行する。本発明の装置においては、顔識別処理に際して重要となる目、鼻、口といった顔パーツの位置や形の誤差の発生を抑制した画像変換(正規化)処理を実行する。以下この画像変換処理の詳細について説明する。   Next, details of the image conversion processing executed in the image conversion unit 141 (see FIG. 2) in the face discriminator 14 shown in FIG. 1 will be described. As described above with reference to FIG. 3, the image conversion unit 141 extracts the face image stored in the SRAM 1 and aligns the positions of the right eye and the left eye to the coordinates fixed in the SRAM 2 from the binocular position information of the extracted face image. As described above, the fitting process for executing the image conversion (normalization) such as the reduction, shift, and rotation processing on the face image in the SRAM 1 to create the face image necessary for the face recognition in the SRAM 2 is executed. In the apparatus of the present invention, image conversion (normalization) processing is performed in which occurrence of errors in the position and shape of face parts such as eyes, nose and mouth, which are important in face identification processing, is suppressed. Details of this image conversion processing will be described below.

顔識別器14における画像変換部141は、まず、SDRAM15(図1参照)上にある画像の顔領域部分をSRAM1(図2参照)に書き込む処理(ライト)を実行する。画像変換部141は、SRAM1(図2参照)に書き込んだ画像から顔画像領域を取り出してフィッティング処理としての画像変換を実行して、処理結果をSRAM2に書き込む。フィッティング処理は、SRAM1の画像を正規化してSRAM2に作成する処理である。本装置における正規化とは、顔画像の位置合わせ、回転、拡大縮小処理の少なくともいずれかの処理を含む画像変換処理である。   The image conversion unit 141 in the face discriminator 14 first executes a process (write) for writing a face area portion of an image on the SDRAM 15 (see FIG. 1) into the SRAM 1 (see FIG. 2). The image conversion unit 141 extracts a face image area from the image written in the SRAM 1 (see FIG. 2), executes image conversion as a fitting process, and writes the processing result in the SRAM 2. A fitting process is a process which normalizes the image of SRAM1 and produces it in SRAM2. Normalization in this apparatus is image conversion processing including at least one of face image alignment, rotation, and enlargement / reduction processing.

図6を参照して、画像変換部141において実行する画像変換処理の詳細について説明する。図6は、画像変換部141の詳細構成を示す図である。画像変換部141の演算部203は、まず、SDRAM200上からSRAM1,201に書き込まれた顔画像を読み取り、さらに目位置検出部202からSRAM1,201に書き込まれた顔画像の左右目位置座標を入力する。   Details of the image conversion processing executed in the image conversion unit 141 will be described with reference to FIG. FIG. 6 is a diagram illustrating a detailed configuration of the image conversion unit 141. The calculation unit 203 of the image conversion unit 141 first reads the face image written in the SRAM 1 and 201 from the SDRAM 200, and further inputs the left and right eye position coordinates of the face image written in the SRAM 1 and 201 from the eye position detection unit 202. To do.

演算部203は、この座標データに基づいて、フィッティング処理として実行する画像変換に適用する顔画像の回転角度、倍率、原点位置を求める。さらに座標変換部205は、求めた角度・倍率・原点からSRAM2,251の各々の画素がSRAM1,201のどこの位置に相当するのかを小数精度で求める。例えば、図7に示すSRAM2,251の画素(p,q)が、SRAM1,201のメモリ上の画素位置(m,n)を算出する。例えば図7に示すSRAM2,251が60×66画素情報を格納するメモリである場合、60×66の画素中の顔領域に含まれる各画素位置に対応するSRAM1,201のメモリ上の画素位置(m,n)を算出する。この場合、SRAM1,201のメモリ上の画素位置(m.n)のmやnは整数値とならない場合もあるが、演算部は、対応画素位置(m,n)について、整数部のみならず、小数部、例えば小数点以下2桁等の精度で対応画素位置(m,n)を算出する。   Based on the coordinate data, the calculation unit 203 obtains the rotation angle, magnification, and origin position of the face image applied to the image conversion executed as the fitting process. Further, the coordinate conversion unit 205 obtains the position of each of the SRAM 2 and 251 corresponding to each pixel in the SRAM 1 and 251 with decimal precision from the obtained angle, magnification, and origin. For example, the pixel (p, q) of the SRAM 2 251 illustrated in FIG. 7 calculates the pixel position (m, n) on the memory of the SRAM 1 201. For example, when the SRAM 2 251 shown in FIG. 7 is a memory that stores 60 × 66 pixel information, the pixel position (in the memory of the SRAM 1 201 corresponding to each pixel position included in the face area in the 60 × 66 pixel ( m, n) is calculated. In this case, m and n of the pixel position (mn) on the memory of the SRAM 1 and 201 may not be an integer value, but the arithmetic unit is not limited to the integer part for the corresponding pixel position (m, n). The corresponding pixel position (m, n) is calculated with a precision of a decimal part, for example, two digits after the decimal point.

この座標変換部205の算出した対応画素位置情報に基づいて、図6に示す補間処理部207が、SRAM2,251の各々の画素の画素値を決定する。すなわち、座標変換部205の算出した対応画素位置情報において、SRAM2,251の画素(p,q)に対応するSRAM1,201のメモリ上の画素位置(m.n)が整数値m,nを持つ場合は、SRAM2,251の画素(p,q)の画素値は、対応するSRAM1,201のメモリ上の画素位置(m.n)の画素値として設定するが、対応画素位置(m,n)のmまたはnの値が整数値とならず小数部を持つときは、対応画素位置(m,n)周囲のSRAM1画素の画素値に基づく補間処理によって、SRAM2,251の画素(p,q)の画素値を決定する。   Based on the corresponding pixel position information calculated by the coordinate conversion unit 205, the interpolation processing unit 207 shown in FIG. 6 determines the pixel value of each of the SRAMs 2 and 251. That is, in the corresponding pixel position information calculated by the coordinate conversion unit 205, the pixel position (mn) on the memory of the SRAM 1, 201 corresponding to the pixel (p, q) of the SRAM 2, 251 has integer values m, n. In this case, the pixel value of the pixel (p, q) of the SRAM 2, 251 is set as the pixel value of the pixel position (mn) on the memory of the corresponding SRAM 1, 201, but the corresponding pixel position (m, n) When the value of m or n is not an integer value but has a fractional part, the pixel (p, q) of the SRAM 2, 251 is interpolated based on the pixel value of the SRAM 1 pixel around the corresponding pixel position (m, n). The pixel value of is determined.

図6に示す画像変換部141の補間処理部207の実行する画素補間処理について、図8を参照して説明する。補間処理部207の実行する画素補間処理が、bi−linear手法である場合、図8(a)に示すように、SRAM1,201上の対応画素位置(m,n)の周囲画素4点(SRAM1,201整数部座標)と周囲4画素までの距離(SRAM1小数部座標)を求める。また、補間処理部207の実行する画素補間処理が、bi−cubic手法である場合は、図8(b)に示すように、SRAM1,201上の対応画素位置(m,n)周りの画素16点(SRAM1,201整数部座標)と周り16画素までの距離(SRAM1小数部座標)を求める。   The pixel interpolation processing executed by the interpolation processing unit 207 of the image conversion unit 141 illustrated in FIG. 6 will be described with reference to FIG. When the pixel interpolation processing executed by the interpolation processing unit 207 is a bi-linear method, as shown in FIG. 8A, four surrounding pixels (SRAM1) of the corresponding pixel position (m, n) on the SRAM 1, 201 are used. , 201 integer part coordinates) and the distance to the surrounding four pixels (SRAM1 decimal part coordinates). When the pixel interpolation processing executed by the interpolation processing unit 207 is a bi-cubic method, as shown in FIG. 8B, the pixels 16 around the corresponding pixel position (m, n) on the SRAM 1, 201 are displayed. The point (SRAM 1, 201 integer part coordinates) and the distance to the surrounding 16 pixels (SRAM 1 decimal part coordinates) are obtained.

次に求めたSRAM1,201における整数部座標の画素とSRAM1,201における小数部座標データを適用して各画素値の寄与度としての重みを算出し、算出した重みに基づいてSRAM2,251の対応画素(p,q)の画素値を算出して、SRAM2に記録(ライト)する画素値を算出する。   Next, the weight as the contribution of each pixel value is calculated by applying the pixel of the integer part coordinate in the SRAM 1, 201 and the decimal part coordinate data in the SRAM 1, 201, and the correspondence of the SRAM 2, 251 based on the calculated weight. The pixel value of the pixel (p, q) is calculated, and the pixel value to be recorded (written) in the SRAM 2 is calculated.

このようにして、SRAM1,201に格納された画像の各構成画素値に基づいて、SRAM2,251に格納する画像の画素値が決定されることになる。なお、先に説明したように、画像変換部141の演算部203は、まず、SDRAM200上からSRAM1,201に書き込まれた顔画像を読み取り、さらに目位置検出部202からSRAM1,201に書き込まれた顔画像の左右目位置座標を入力し、この座標データに基づいて、フィッティング処理として実行する画像変換に適用する顔画像の回転角度、倍率、原点位置を求める。さらに演算部203は、求めた角度・倍率・原点からSRAM2,251の各々の画素がSRAM1,201のどこの位置に相当するのかを小数精度で求める。   In this manner, the pixel value of the image stored in the SRAM 2 251 is determined based on each constituent pixel value of the image stored in the SRAM 1 201. As described above, the calculation unit 203 of the image conversion unit 141 first reads the face image written in the SRAM 1, 201 from the SDRAM 200, and further writes it in the SRAM 1, 201 from the eye position detection unit 202. The left and right eye position coordinates of the face image are input, and the rotation angle, magnification, and origin position of the face image applied to the image conversion executed as the fitting process are obtained based on the coordinate data. Further, the calculation unit 203 obtains, with decimal precision, the position in the SRAM 1 or 201 where each pixel of the SRAM 2 251 corresponds from the obtained angle, magnification, or origin.

このフィッティング処理は、登録画像との照合処理をより正確に実行するための正規化処理として実行される画像変換処理である。この正規化処理(画像変換処理)について、以下説明する。演算部203は、はじめに正規化された顔画像を蓄えるSRAM2,251の座標を定義する。   This fitting process is an image conversion process executed as a normalization process for more accurately executing a matching process with a registered image. This normalization process (image conversion process) will be described below. The calculation unit 203 defines the coordinates of the SRAMs 2 and 251 that store the normalized face images first.

本実施例に従った正規化処理では、まず、正規化された顔画像を蓄積するSRAM2,251上の左右の目の位置の座標を決定する。すなわち、左右の目の位置のSRAM2,251の固定座標を決定する。具体的には、例えば、次のような処理によって、SRAM2,251の固定座標を割り当てる。   In the normalization process according to the present embodiment, first, the coordinates of the positions of the left and right eyes on the SRAM 2 251 for accumulating normalized face images are determined. That is, the fixed coordinates of the SRAMs 2 and 251 at the positions of the left and right eyes are determined. Specifically, for example, the fixed coordinates of the SRAM 2 251 are assigned by the following processing.

図9に示すように、正規化(画像変換処理)後の顔画像を格納するSRAM2,251の顔画像格納領域の画素座標(x,y)とし、
横軸(X軸):サイズ60画素、x=−29〜+30、
縦軸(Y軸):サイズ66画素、y=−39〜+26、
とした場合の処理例について説明する。
As shown in FIG. 9, the pixel coordinates (x, y) of the face image storage area of the SRAM 2, 251 for storing the face image after normalization (image conversion processing),
Horizontal axis (X axis): size 60 pixels, x = −29 to +30,
Vertical axis (Y axis): size 66 pixels, y = −39 to +26,
A processing example in the case of the above will be described.

このようなSRAM2,251の顔画像格納領域の座標において、右目位置の(x,y)座標を(−11,0)、左目位置の(x,y)座標を(11,0)に割り当てる。また原点の(x,y)座標を右目位置と左目位置の中心(0,0)とする。   In such face image storage area coordinates of the SRAM 2 251, the (x, y) coordinate of the right eye position is assigned to (−11, 0), and the (x, y) coordinate of the left eye position is assigned to (11, 0). The origin (x, y) coordinates are the center (0, 0) of the right eye position and the left eye position.

次に、正規化前の顔画像を格納したSRAM1,201の座標を割り当てる。SRAM1,201に格納する顔画像データは、図6に示すSDRAM200に格納された顔画像に対応しており、まずSDRAM200上での座標を考える。図6に示す目位置検出部202において、SDRAM200上での左右目位置情報が取得され、この情報が演算部203に入力される。なお、検出された左右目位置は、SDRAMの特定の画素に対応するとは限らない。さらに左右目位置の中心もSDRAM上に規定される特定の画素に対応するとは限らない。   Next, the coordinates of the SRAMs 1 and 201 storing the face images before normalization are assigned. The face image data stored in the SRAM 1, 201 corresponds to the face image stored in the SDRAM 200 shown in FIG. 6, and first consider the coordinates on the SDRAM 200. In the eye position detection unit 202 shown in FIG. 6, left and right eye position information on the SDRAM 200 is acquired, and this information is input to the calculation unit 203. The detected left and right eye positions do not necessarily correspond to specific pixels of the SDRAM. Furthermore, the center of the left and right eye positions does not necessarily correspond to a specific pixel defined on the SDRAM.

つまり、正規化後の顔画像を格納するSRAM2.251において設定する原点である左右の目の中心に対応するSDRAM上の原点(左右目の中心)座標は、SDRAM上の特定の画素位置に対応するとは限らない。
SDRAM上の原点(左右目の中心)座標を、
(org_drx,org_dry)
とする。
That is, the origin (left and right eye center) coordinates on the SDRAM corresponding to the center of the left and right eyes, which is the origin set in the SRAM 2.251 storing the normalized face image, corresponds to a specific pixel position on the SDRAM. Not always.
The origin (center of left and right eyes) coordinates on the SDRAM
(Org_drx, org_dry)
And

SDRAM200上の原点(左右目の中心)座標(org_drx,org_dry)
は、SDRAM200上のある画素(x,y)に対し次の範囲に存在する。
x<=org_drx<x+1
y<=org_dry<y+1
SDRAM200上の画素を切り出してSRAM1,201に格納(ライト)するときは、SDRAM200上の画素(x,y)をSRAM1,201の原点(0,0)に合わせる。
Origin (center of left and right eye) coordinates on SDRAM 200 (org_drx, org_dry)
Exists in the following range for a certain pixel (x, y) on the SDRAM 200.
x <= org_drx <x + 1
y <= org_dry <y + 1
When a pixel on the SDRAM 200 is cut out and stored (written) in the SRAM 1, 201, the pixel (x, y) on the SDRAM 200 is aligned with the origin (0, 0) of the SRAM 1, 201.

図10に示すように、正規化(画像変換処理)前の顔画像を格納するSRAM1,201の顔画像格納領域の画素座標(x,y)とし、
横軸(X軸):サイズ192画素、x=−95+96、
縦軸(Y軸)サイズ180画素、y=−107〜+72、
とする。
As shown in FIG. 10, the pixel coordinates (x, y) of the face image storage area of the SRAM 1, 201 that stores the face image before normalization (image conversion processing),
Horizontal axis (X axis): size 192 pixels, x = −95 + 96,
Vertical axis (Y axis) size 180 pixels, y = −107 to +72,
And

この設定とすると、SDRAM200上の原点(左右目の中心)座標(org_drx,org_dry)に対応するSRAM1,201上の原点位置(org_s1x,org_s1y)は、図10に示すように次の範囲に存在する。
0<=org_s1x<1
0<=org_s1y<1
With this setting, the origin positions (org_s1x, org_s1y) on the SRAM 1, 201 corresponding to the origin (center of left and right eyes) coordinates (org_drx, org_dry) on the SDRAM 200 exist in the following range as shown in FIG. .
0 <= org_s1x <1
0 <= org_s1y <1

図10に示すSRAM1,201の原点領域の近傍を拡大した図を図11に示す。SRAM2の原点に対応する図に示す[▲]は、SRAM1における座標系では、
0<=org_s1x<1
0<=org_s1y<1
の位置にある。ここで、
org_s1x_int:SRAM1の原点座標xの整数部、
org_s1x_frc:SRAM1の原点座標xの小数部、
org_s1y_int:SRAM1の原点座標yの整数部、
org_s1y_frc:SRAM1の原点座標yの小数部、
とすると、
org_s1x_int=0、
org_s1y_int=0、
となる。
FIG. 11 shows an enlarged view of the vicinity of the origin area of the SRAM 1, 201 shown in FIG. [▲] shown in the figure corresponding to the origin of SRAM 2 is the coordinate system in SRAM 1.
0 <= org_s1x <1
0 <= org_s1y <1
In the position. here,
org_s1x_int: the integer part of the origin coordinate x of the SRAM 1,
org_s1x_frc: Decimal part of the origin coordinate x of the SRAM 1,
org_s1y_int: the integer part of the origin coordinate y of the SRAM 1,
org_s1y_frc: the decimal part of the origin coordinate y of the SRAM 1,
Then,
org_s1x_int = 0,
org_s1y_int = 0,
It becomes.

このように、正規化(画像変換処理)後の画像を格納するSRAM2,251における原点はSRAM2座標系における原点(0,0)座標であるが、図10、図11を参照して説明したように、正規化(画像変換処理)前の画像を格納しているSRAM1,201におけるこの原点の対応するSRAM2座標系の座標位置は(0,0)とならず、
0<=org_s1x<1
0<=org_s1y<1
となる(org_s1x,org_s1x)となる。
As described above, the origin in the SRAM 2 251 for storing the image after normalization (image conversion processing) is the origin (0, 0) coordinate in the SRAM 2 coordinate system, but as described with reference to FIGS. In addition, the coordinate position of the SRAM 2 coordinate system corresponding to this origin in the SRAM 1, 201 storing the image before normalization (image conversion processing) is not (0, 0),
0 <= org_s1x <1
0 <= org_s1y <1
(Org_s1x, org_s1x).

従って、SRAM1,201に格納された顔画像を正規化(画像変換)してSRAM2,251に格納する場合は、SRAM2,251の各座標がSRAM1,201の座標系のどこに対応するかを求める処理が必要となる。   Therefore, when normalizing (image converting) the face image stored in the SRAM 1, 201 and storing it in the SRAM 2 251, processing for determining where in the coordinate system of the SRAM 1, 201 the coordinates of the SRAM 2 251 correspond. Is required.

すなわち、SRAM1,201に記録された顔画像に対する正規化(画像変換)処理として、画像の縮小処理、回転処理、平行移動処理の少なくともいずれかの処理を実行してSRAM2,251に正規化後画像を格納する場合、正規化後の画像格納メモリであるSRAM2,251の各座標が、正規化前の画像格納メモリであるSRAM1,201の座標系のどこに対応するかを求める処理が必要となる。図6に示す画像変換部141の演算部203では、対応を求めるために必要となる画像変換パラメータとしての回転角度、変換倍率、原点情報を求め、これらの変換パラメータを座標変換部205に出力する。   That is, as a normalization (image conversion) process for the face image recorded in the SRAM 1, 201, at least one of an image reduction process, a rotation process, and a parallel movement process is executed, and the normalized image is stored in the SRAM 2 251. Is stored, it is necessary to determine where each coordinate of the SRAM 2, 251 as the image storage memory after normalization corresponds to the coordinate system of the SRAM 1, 201 as the image storage memory before normalization. The calculation unit 203 of the image conversion unit 141 shown in FIG. 6 calculates the rotation angle, conversion magnification, and origin information as image conversion parameters necessary for determining the correspondence, and outputs these conversion parameters to the coordinate conversion unit 205. .

座標変換部205では、演算部203から入力するこれらの変換パラメータを適用して、SRAM2,251の座標各々に対応するSRAM1,201の座標を算出する。なお、この処理に際して、座標変換部205は、図6に示す画像変換部141のアドレス作成部204から、SDRAM200やSRAM1,201における顔画像格納領域の画素位置に対応するアドレスを受領して、対応画素位置算出を実行する。この算出結果が補間処理部207に出力され、補間処理部207では、先に図8を参照して説明したbi−linear手法、あるいはbi−cubic手法を適用した画素値補間処理を実行して、画素値を決定して、決定した画素値をSRAM2,251の各座標位置に書き込む。   The coordinate conversion unit 205 applies the conversion parameters input from the calculation unit 203 to calculate the coordinates of the SRAM 1 and 201 corresponding to the coordinates of the SRAM 2 and 251, respectively. In this process, the coordinate conversion unit 205 receives an address corresponding to the pixel position of the face image storage area in the SDRAM 200 or the SRAM 1, 201 from the address generation unit 204 of the image conversion unit 141 shown in FIG. Pixel position calculation is executed. The calculation result is output to the interpolation processing unit 207, and the interpolation processing unit 207 executes pixel value interpolation processing using the bi-linear method or the bi-cubic method described above with reference to FIG. The pixel value is determined, and the determined pixel value is written in each coordinate position of the SRAM 2 251.

図12を参照して、正規化処理において必要とする対応画素算出処理、すなわち、正規化後の画像格納メモリであるSRAM2,251の各座標が、正規化前の画像格納メモリであるSRAM1,201の座標系のどこに対応するかを求める処理の詳細について説明する。図12には、入力画像を格納したSDRAM200、SDRAM200に格納された顔画像領域を切り出して格納するSRAM1,201、SRAM1,201に格納された顔画像の正規化(画像変換)処理を実行して、正規化(変換処理)後の画像を格納するSRAM2,252のメモリ領域を示している。   Referring to FIG. 12, the corresponding pixel calculation process required in the normalization process, that is, the coordinates of SRAM2, 251 which are image storage memories after normalization are SRAM1, 201 which are image storage memories before normalization. The details of the processing for determining where in the coordinate system corresponds will be described. In FIG. 12, the SDRAM 200 storing the input image, the SRAM 1, 201 which cuts out and stores the face image area stored in the SDRAM 200, and the normalization (image conversion) processing of the face image stored in the SRAM 1, 201 are executed. 3 shows the memory area of the SRAM 2 252 for storing the image after normalization (conversion processing).

SDRAM200、SRAM1,201、SRAM2,251のそれぞれのメモリ領域は、図12に示すように、
SDRAM:320×240画素
SRAM1:192×180画素
SRAM2:60×66画素
とする。
The memory areas of the SDRAM 200, SRAM 1, 201, SRAM 2, 251 are as shown in FIG.
SDRAM: 320 × 240 pixels SRAM1: 192 × 180 pixels SRAM2: 60 × 66 pixels

また、正規化処理後にSRAM2,251に格納される顔画像における原点を、SRAM2,251に格納される顔画像の左右の目の中心位置として、この座標SRAM2座標系における原点(0,0)とする。SRAM2,251に格納される顔画像の左右の目の距離を[P]、例えば22画素とする。   Further, the origin in the face image stored in the SRAM 2 251 after normalization is set as the center position of the left and right eyes of the face image stored in the SRAM 2 251, and the origin (0, 0) in this coordinate SRAM 2 coordinate system To do. The distance between the left and right eyes of the face image stored in the SRAM 2 251 is [P], for example, 22 pixels.

正規化前の画像を格納しているSRAM1,201における顔画像の左目および右目座標、および左右目の中心である原点の座標を、図12に示すように、
左目座標(lex,ley)、
右目座標(rex,rey)、
原点座標(cex,cey)、
とする。また、
左目座標(lex,ley)と右目座標(rex,rey)との距離を[c]とし、
左目座標(lex,ley)と右目座標(rex,rey)とのx座標差分を[a]、
左目座標(lex,ley)と右目座標(rex,rey)とのy座標差分を[b]、
とする。
a,b,cは、図12に示すSRAM1,201内の直角三角形の辺の長さに相当し、
=a+b
の関係を持つ。辺aとcのなす角をθとする。
As shown in FIG. 12, the coordinates of the left eye and right eye coordinates of the face image and the origin of the center of the left and right eyes in the SRAM 1, 201 storing the image before normalization are as follows.
Left eye coordinates (lex, ley),
Right eye coordinates (rex, rey),
Origin coordinates (cex, cey),
And Also,
The distance between the left eye coordinates (lex, ley) and the right eye coordinates (rex, rey) is [c],
An x coordinate difference between the left eye coordinates (lex, ley) and the right eye coordinates (rex, rey) is represented by [a],
The difference in y coordinates between the left eye coordinates (lex, ley) and the right eye coordinates (rex, rey) is represented by [b],
And
a, b, c correspond to the lengths of the sides of the right triangle in the SRAM 1, 201 shown in FIG.
c 2 = a 2 + b 2 ,
Have a relationship. Let θ be the angle between sides a and c.

ここで、正規化前の画像格納メモリであるSRAM1,201の座標系、および、正規化後の画像格納メモリであるSRAM2,251の座標系における(x,y)座標を以下のように定義する。
s1x:SRAM1座標系におけるx座標、
s1y:SRAM1座標系におけるy座標、
s2x:SRAM2座標系におけるx座標、
s2y:SRAM2座標系におけるy座標、
このように定義する。
Here, the (x, y) coordinates in the coordinate system of the SRAMs 1, 201 as image storage memories before normalization and the coordinate system of the SRAMs 2, 251 as image storage memories after normalization are defined as follows. .
s1x: x coordinate in the SRAM1 coordinate system,
s1y: y coordinate in the SRAM1 coordinate system,
s2x: x coordinate in the SRAM2 coordinate system,
s2y: y coordinate in the SRAM2 coordinate system,
Define it like this.

座標変換部205では、正規化後の画像格納メモリであるSRAM2の座標(s2x,s2y)の各々について以下の式(式1)に基づいて、正規化前の画像格納メモリであるSRAM1,201の座標(s1x,s1y)を算出する。
s1x=(c/P)×((s2x)×cosθ+s2y×sinθ)+(org_s1x_frc)
=(a×s2x+b×s2y)/P+(org_s1x_frc)
s1y=(c/P)×((−s2x)×sinθ+s2y×cosθ)+(org_s1y_frc)
=(−b×s2x+a×s2y)/P+(org_s1y_frc)
・・・(式1)
In the coordinate conversion unit 205, each of the coordinates (s2x, s2y) of the SRAM 2 that is the image storage memory after normalization is stored in the SRAM 1, 201 that is the image storage memory before normalization based on the following equation (Equation 1). The coordinates (s1x, s1y) are calculated.
s1x = (c / P) × ((s2x) × cos θ + s2y × sin θ) + (org_s1x_frc)
= (A * s2x + b * s2y) / P + (org_s1x_frc)
s1y = (c / P) × ((− s2x) × sin θ + s2y × cos θ) + (org_s1y_frc)
= (-B * s2x + a * s2y) / P + (org_s1y_frc)
... (Formula 1)

なお、上記式(式1)において、
a=(lex)−(rex)、
b=ley−rey、
c=√(a×a+b×b)、
cosθ=a/c、
sinθ=b/c、
である。
In the above formula (Formula 1),
a = (lex) − (rex),
b = ley-rey,
c = √ (a × a + b × b),
cos θ = a / c,
sin θ = b / c,
It is.

座標変換部205では、上記式(式1)を適用して、正規化後の画像格納メモリであるSRAM2の座標(s2x,s2y)の各々について正規化前の画像格納メモリであるSRAM1,201の座標(s1x,s1y)を算出する。   The coordinate conversion unit 205 applies the above equation (Equation 1), and for each of the coordinates (s2x, s2y) of the SRAM 2 that is the image storage memory after normalization, the SRAM 1, 201 that is the image storage memory before normalization. The coordinates (s1x, s1y) are calculated.

演算部203は、上記式(式1)において適用する変換パラメータとしての回転角度、変換倍率、原点情報を求め、これらの変換パラメータを座標変換部205に出力する。上記式(式1)において、
変換倍率(画像縮小処理パラメータ):(c/P)
回転角度(画像回転処理パラメータ):θ、
原点情報(画像平行移動処理パラメータ):(org_s1x_frc,org_s1y_frc)
である。
なお、原点情報(画像平行移動処理パラメータ)は、SRAM1座標系におけるSRAM2における原点に対応する位置を示す情報(図11参照)である。演算部203では、SRAM2,251の原点情報と、SRAM1,201に格納された顔画像情報とに基づいて、上記の各変換パラメータ:回転角度、変換倍率、原点情報を求め、これらの変換パラメータを座標変換部205に出力する。
The calculation unit 203 obtains the rotation angle, the conversion magnification, and the origin information as the conversion parameters applied in the above equation (Equation 1), and outputs these conversion parameters to the coordinate conversion unit 205. In the above formula (Formula 1),
Conversion magnification (image reduction processing parameter): (c / P)
Rotation angle (image rotation processing parameter): θ,
Origin information (image parallel displacement processing parameters): (org_s1x_frc, org_s1y_frc)
It is.
The origin information (image parallel movement processing parameter) is information (see FIG. 11) indicating a position corresponding to the origin in the SRAM 2 in the SRAM 1 coordinate system. Based on the origin information of the SRAMs 2 and 251 and the face image information stored in the SRAMs 1 and 201, the calculation unit 203 obtains each of the above conversion parameters: rotation angle, conversion magnification, and origin information, and calculates these conversion parameters. The data is output to the coordinate conversion unit 205.

座標変換部205は、カウンタ206から、SRAM2,251の各画素(s2x,s2y)のカウント値を入力して、1画素毎に、上記式(式1)を適用して、SRAM2,251の各画素(s2x,s2y)に対応するSRAM1の画素位置(s1x,s1y)を算出する。   The coordinate conversion unit 205 inputs the count value of each pixel (s2x, s2y) of the SRAM2, 251 from the counter 206, applies the above equation (Equation 1) for each pixel, and each of the SRAM2, 251 The pixel position (s1x, s1y) of the SRAM 1 corresponding to the pixel (s2x, s2y) is calculated.

この算出結果が補間処理部207に出力され、補間処理部207では、先に図8を参照して説明したbi−linear手法、あるいはbi−cubic手法を適用した画素値補間処理を実行し画素値を決定して、決定した画素値がSRAM2,251の各座標位置に書き込まれる。なお、カウンタ206から、SRAM2,251の各画素(s2x,s2y)のカウント値がSRAM2の書き込みアドレスとして入力され、アドレス位置に従って、決定した画素値の書き込みが実行される。   The calculation result is output to the interpolation processing unit 207. The interpolation processing unit 207 executes pixel value interpolation processing using the bi-linear method or the bi-cubic method described above with reference to FIG. And the determined pixel value is written to each coordinate position of the SRAM 2 251. It should be noted that the count value of each pixel (s2x, s2y) of the SRAM 2 251 is input from the counter 206 as the write address of the SRAM 2, and the determined pixel value is written according to the address position.

補間処理部207における画素値の決定処理例の一例として、bi−linear手法を適用した処理例について図13を参照して説明する。図13には、SRAM1座標系において、SRAM2のある1つの座標点(s2x,s2y)のSRAM1座標系における対応点[★]301を示している。   As an example of pixel value determination processing in the interpolation processing unit 207, a processing example to which the bi-linear method is applied will be described with reference to FIG. FIG. 13 shows a corresponding point [★] 301 in the SRAM 1 coordinate system of one coordinate point (s2x, s2y) of the SRAM 2 in the SRAM 1 coordinate system.

対応点[★]301は、SRAM2の座標系では、特定の1つの座標点に対応せず、複数の座標点(e,f,g,h)に囲まれた位置にある。座標点E,F,G,Hの各々は、SRAM1座標の座標点であり、以下の座標を持つ。
E=(s1x_int,s1y_int)
F=(s1x_int+1,s1y_int)
G=(s1x_int,s1y_int+1)
H=(s1x_int+1,s1y_int+1)
The corresponding point [★] 301 does not correspond to one specific coordinate point in the coordinate system of the SRAM 2, and is located at a position surrounded by a plurality of coordinate points (e, f, g, h). Each of the coordinate points E, F, G, and H is a coordinate point of the SRAM1 coordinate and has the following coordinates.
E = (s1x_int, s1y_int)
F = (s1x_int + 1, s1y_int)
G = (s1x_int, s1y_int + 1)
H = (s1x_int + 1, s1y_int + 1)

これらの画素点E,F,G,Hには、それぞれ画素値が設定されている。ここで、画素点E,F,G,Hの各画素値をそれぞれe,f,g,hとする。このとき、補間処理部207は、SRAM2の座標点(s2x,s2y)に設定する画素値[Q]を、bi−linear手法を適用して以下の計算式(式2)によって算出する。
Q=[(1−s1x_frc)×(1−s1y_frc)×e+(s1x_frc)×(1−s1y_frc)×f+(1−s1x_frc)×(s1y_frc)×g+(s1x_frc)×(s1y_frc)×h]/4
・・・(式2)
Pixel values are set for these pixel points E, F, G, and H, respectively. Here, the pixel values of the pixel points E, F, G, and H are e, f, g, and h, respectively. At this time, the interpolation processing unit 207 calculates the pixel value [Q] set to the coordinate point (s2x, s2y) of the SRAM 2 by the following calculation formula (Formula 2) by applying the bi-linear method.
Q = [(1-s1x_frc) * (1-s1y_frc) * e + (s1x_frc) * (1-s1y_frc) * f + (1-s1x_frc) * (s1y_frc) * g + (s1x_frc) * (s1y_frc) * h] 4
... (Formula 2)

上記式(式2)は、bi−linear手法による画素値補間処理であり、先に図8(a)を参照して説明した処理に従った画素値決定処理である。すなわち、SRAM2の画素(s2x,s2y)に対応するSRAM1上の対応画素位置[★]と、周囲画素4点(E,F,G,H)との距離(SRAM1小数部座標)を求め、求めた距離に基づいて、各画素値の寄与度としての重みを算出し、算出した重みに基づいてSRAM2の画素(s2x,s2y)の画素値を算出する処理である。上記式によって、
決定した画素値がSRAM2,251の各座標位置に書き込まれる。
The above equation (Equation 2) is a pixel value interpolation process by the bi-linear method, and is a pixel value determination process according to the process described above with reference to FIG. That is, the distance (SRAM1 decimal part coordinates) between the corresponding pixel position [★] on the SRAM 1 corresponding to the pixel (s2x, s2y) of the SRAM 2 and the four surrounding pixels (E, F, G, H) is obtained and obtained. This is a process of calculating a weight as a contribution degree of each pixel value based on the measured distance and calculating a pixel value of the pixel (s2x, s2y) of the SRAM 2 based on the calculated weight. By the above formula
The determined pixel value is written in each coordinate position of the SRAM 2 251.

なお、前述したように、補間処理部207における画素値の決定処理手法としては、上述のbi−linear手法に限らず、bi−cubic手法等の他の手法を適用してもよい。   As described above, the pixel value determination processing method in the interpolation processing unit 207 is not limited to the bi-linear method described above, and other methods such as a bi-cubic method may be applied.

[正規化前の画像格納メモリ(SRAM1)のサイズ削減構成]
次に、正規化前の画像を格納するメモリであるSRAM1のサイズの削減を実現した構成例について説明する。上述した実施例では、例えば、図12を参照して説明したように正規化前の顔画像を格納するメモリであるSRAM1,201は、SDRAM200に格納された顔画像の全体を一時的に格納する構成であり、顔画像全体を記録するためのデータ記憶容量が必要な構成である。
[Size reduction configuration of image storage memory (SRAM 1) before normalization]
Next, a description will be given of a configuration example that realizes a reduction in the size of the SRAM 1, which is a memory for storing an image before normalization. In the embodiment described above, for example, as described with reference to FIG. 12, the SRAMs 1 and 201 which are memories for storing the face images before normalization temporarily store the entire face images stored in the SDRAM 200. This is a configuration that requires a data storage capacity for recording the entire face image.

図12を参照して説明した例では、
SDRAM200、SRAM1,201、SRAM2,251のそれぞれのメモリ領域は、
SDRAM:320×240画素
SRAM1:192×180画素
SRAM2:60×66画素
の画素値各の領域を有している構成として説明した。
In the example described with reference to FIG.
The memory areas of the SDRAM 200, SRAM 1, 201, SRAM 2, 251 are
SDRAM: 320 × 240 pixels SRAM1: 192 × 180 pixels SRAM2: 60 × 66 pixels Each pixel value region has been described as a configuration.

しかし、SRAM1の顔画像データを正規化(画像変換)して、SRAM2に格納する場合、SRAM2の構成画素について順番に1つずつ画素値を決定しながら、SRAM2に正規化後の画像書き込む処理を実行するものであり、例えばSRAM2の1つの構成画素の画素値書き込み処理に際して必要となるデータは、SRAM1に格納された顔画像データの全体ではなく、その一部のみである。具体的には、例えば、上述したbi−linear手法による画素値補間処理を行なう場合は、上述の説明から明らかなように、SRAM2の画素位置(s2x,s2y)に対応するSRAM1上の対応位置の周囲の4画素の画素値情報のみである。   However, when the face image data in the SRAM 1 is normalized (image conversion) and stored in the SRAM 2, the normalized image is written to the SRAM 2 while determining the pixel values one by one for the constituent pixels of the SRAM 2. For example, the data necessary for the pixel value writing process of one constituent pixel of the SRAM 2 is not the entire face image data stored in the SRAM 1 but only a part thereof. Specifically, for example, when performing the pixel value interpolation processing by the above-described bi-linear method, as is apparent from the above description, the corresponding position on the SRAM 1 corresponding to the pixel position (s2x, s2y) of the SRAM 2 is determined. Only the pixel value information of the surrounding four pixels.

このように、SRAM2に対する正規化後の顔画像データの書き込みに必要となるデータはごく限られたデータである。以下では、この事実に鑑みて、正規化前の顔画像データを格納するメモリであるSRAM1のサイズを削減した構成例について説明する。   Thus, the data necessary for writing the normalized face image data to the SRAM 2 is very limited data. In the following, in view of this fact, a configuration example in which the size of the SRAM 1 that is a memory for storing the face image data before normalization is reduced will be described.

具体的な一実施例について図14を参照して説明する。図14に示すように正規化前の顔画像データを格納するSRAM1を顔画像全体ではなく、その一部のみを記憶する設定とする。図の例では、
SRAM1:192×48画素
のデータを記録するメモリとする。なお、例えば1画素当たり8ビットデータのデータ記憶を行なう構成とすると、図14に示すメモリであるSRAM1,401は、
SRAM1:192×48画素×8bit
のデータ記憶容量とすればよい。
A specific example will be described with reference to FIG. As shown in FIG. 14, the SRAM 1 for storing the face image data before normalization is set to store only a part of the face image, not the whole face image. In the example shown,
SRAM 1: A memory for recording data of 192 × 48 pixels. For example, if the configuration stores 8 bits of data per pixel, the SRAMs 1 and 401 shown in FIG.
SRAM 1: 192 x 48 pixels x 8 bits
Data storage capacity.

SRAM1,401に格納する顔画像データは、SRAM2に対するデータ書き込み処理の進行に従って更新する。すなわち、図15に示すように、SRAM1,401の格納データを更新する。具体的には、SRAM2に書き込み予定の画素、図15に示す書き込み画素452に対応するSRAM1上の画素位置をSRAM1,401のメモリ領域の上下48画素分のほぼ中央に設定するようにSRAM1,401の格納データを更新する。   The face image data stored in the SRAM 1 401 is updated as the data writing process to the SRAM 2 progresses. That is, as shown in FIG. 15, the data stored in the SRAM 1, 401 is updated. Specifically, the SRAM 1, 401 is set so that the pixel to be written to the SRAM 2 and the pixel position on the SRAM 1 corresponding to the write pixel 452 shown in FIG. Update the stored data.

顔画像全体を格納したSDRAMからSRAM1へのデータ転送制御を実行するメモリ制御部は、SRAM2,451の書き込み画素のアドレスに基づいて、SRAM1,401の対応画素位置が、SRAM1,401のメモリ領域の上下48画素分のほぼ中央に設定されるようにSRAM1,401の格納データを更新する。   The memory control unit that executes data transfer control from the SDRAM that stores the entire face image to the SRAM 1, the corresponding pixel position of the SRAM 1, 401 is based on the address of the write pixel in the SRAM 2, 451, in the memory area of the SRAM 1, 401. The data stored in the SRAMs 1 and 401 are updated so as to be set at approximately the center of the upper and lower 48 pixels.

すなわち、メモリ制御部は、SRAM2,451の書き込み画素のアドレスと、SRAM1,401の対応画素位置の縦方向(Y成分)を比較するアドレス比較部を有し、このアドレス比較情報に基づいて、SDRAMからSRAM1へのデータ転送を実行する。メモリ制御部は、このような制御によって図15に示すように、書き込み画素452に対応するSRAM1上の画素位置をSRAM1,401のメモリ領域の上下48画素分のほぼ中央に設定するようにSRAM1,401の格納データを更新する。このように、SRAM1,401は、逐次格納データが更新されるリングバッファ的な構成を持つ。   That is, the memory control unit has an address comparison unit that compares the address of the write pixel of the SRAM 2 451 and the vertical direction (Y component) of the corresponding pixel position of the SRAM 1 401, and based on this address comparison information, the SDRAM To the SRAM 1 is executed. As shown in FIG. 15, the memory control unit controls the SRAM 1 so that the pixel position on the SRAM 1 corresponding to the writing pixel 452 is set to approximately the center of 48 pixels above and below the memory area of the SRAM 1 401 by such control. The stored data 401 is updated. As described above, the SRAMs 1 and 401 have a ring buffer configuration in which the stored data is sequentially updated.

このメモリ制御処理を実行する画像変換部141の構成および処理について、図16以下を参照して説明する。図16は、図14、図15を参照して説明したデータ記憶容量の少ない小型のメモリであるSRAM1,401を持つ。SRAM1,401にはSDRAM200に格納された顔画像データの一部のみが格納され、正規化(画像変換)処理と正規化後画像のSRAM2,451への書き込み処理の進行に応じて、SRAM1,401の格納データが、図15を参照して説明したように更新される。   The configuration and processing of the image conversion unit 141 that executes this memory control processing will be described with reference to FIG. FIG. 16 includes SRAMs 1 and 401 which are small memories with a small data storage capacity described with reference to FIGS. 14 and 15. Only a part of the face image data stored in the SDRAM 200 is stored in the SRAMs 1 and 401. The SRAMs 1 and 401 correspond to the progress of the normalization (image conversion) process and the process of writing the normalized images into the SRAMs 2 and 451. The stored data is updated as described with reference to FIG.

このSRAM1,401へのデータ書き込み、すなわち、SDRAM200からのデータ読み出し、SRAM1,401へのデータ書き込み制御を実行するのが、図16に示すメモリ制御部420であり、SDRAM404のデータ読み出し用のアドレスを生成するSDARMアドレス作成部404、SRAM1,401のアクセス用アドレスを生成するSRAM1アドレス作成部405、SRAM1,401の処理対象の画素位置を順次設定するカウンタ406、さらに前述したSRAM2,451の書き込み画素のアドレスと、SRAM1,401の対応画素位置の縦方向(Y成分)を比較するアドレス比較部407を有する。   The memory controller 420 shown in FIG. 16 executes the data write to the SRAMs 1 and 401, that is, the data read from the SDRAM 200 and the data write control to the SRAMs 1 and 401. The address for data read of the SDRAM 404 is set. The SDARM address generation unit 404 to be generated, the SRAM 1 address generation unit 405 to generate an access address for the SRAM 1, 401, the counter 406 for sequentially setting the pixel positions to be processed in the SRAM 1, 401, and the write pixels of the SRAM 2, 451 described above. An address comparison unit 407 that compares the address and the vertical direction (Y component) of the corresponding pixel position of the SRAM 1 401 is provided.

メモリ制御部420のアドレス比較部407は、SRAM2,451の書き込み画素のアドレスと、SRAM1,401の対応画素位置の縦方向(Y成分)を比較し、アドレス比較情報に基づいて、SDRAMからSRAM1へのデータ転送を実行して図15に示すように、書き込み画素452に対応するSRAM1上の画素位置をSRAM1,401のメモリ領域の上下48画素分のほぼ中央に設定するようにSRAM1,401の格納データを更新する。   The address comparison unit 407 of the memory control unit 420 compares the address of the writing pixel of the SRAMs 2 and 451 with the vertical direction (Y component) of the corresponding pixel position of the SRAMs 1 and 401, and from the SDRAM to the SRAM 1 based on the address comparison information. As shown in FIG. 15, the data is stored in the SRAM 1 401 so that the pixel position on the SRAM 1 corresponding to the write pixel 452 is set to approximately the center of 48 pixels above and below the memory area of the SRAM 1 401. Update the data.

SRAM2,451に対するデータ書き込み処理は、SRAM1,401に格納された一部の顔画像データを適用して実行される。この処理は、基本的には、先に説明した処理と同様であり、演算部403において正規化処理に適用する画像変換パラメータとして、
変換倍率(画像縮小処理パラメータ)、
回転角度(画像回転処理パラメータ)、
原点情報(画像平行移動処理パラメータ)、
これらの変換パラメータを算出して、これらの変換パラメータを座標変換部409に出力し、座標変換部409が、これらの変換パラメータを適用して、先に説明した式(式1)を適用して、SRAM1,401とSRAM2,451との対応を求める。すなわち、座標変換部409では、正規化後の画像格納メモリであるSRAM2の座標(s2x,s2y)の各々について以下の式(式1)に基づいて、正規化前の画像格納メモリであるSRAM1,201の座標(s1x,s1y)を算出する。
s1x=(c/P)×((s2x)×cosθ+s2y×sinθ)+(org_s1x_frc)
=(a×s2x+b×s2y)/P+(org_s1x_frc)
s1y=(c/P)×((−s2x)×sinθ+s2y×cosθ)+(org_s1y_frc)
=(−b×s2x+a×s2y)/P+(org_s1y_frc)
The data writing process to the SRAMs 2 and 451 is executed by applying a part of face image data stored in the SRAMs 1 and 401. This process is basically the same as the process described above, and as an image conversion parameter applied to the normalization process in the calculation unit 403,
Conversion magnification (image reduction processing parameter),
Rotation angle (image rotation processing parameters),
Origin information (image translation processing parameters),
These conversion parameters are calculated, and these conversion parameters are output to the coordinate conversion unit 409. The coordinate conversion unit 409 applies these conversion parameters and applies the equation (Equation 1) described above. , The correspondence between the SRAM1, 401 and the SRAM2, 451 is obtained. That is, in the coordinate conversion unit 409, each of the coordinates (s2x, s2y) of the SRAM 2, which is the image storage memory after normalization, is stored in the SRAM 1, which is the image storage memory before normalization, based on the following formula (Formula 1). The coordinates (s1x, s1y) of 201 are calculated.
s1x = (c / P) × ((s2x) × cos θ + s2y × sin θ) + (org_s1x_frc)
= (A * s2x + b * s2y) / P + (org_s1x_frc)
s1y = (c / P) × ((− s2x) × sin θ + s2y × cos θ) + (org_s1y_frc)
= (-B * s2x + a * s2y) / P + (org_s1y_frc)

この算出結果が補間処理部410に出力され、補間処理部410では、先に図8を参照して説明したbi−linear手法、あるいはbi−cubic手法を適用した画素値補間処理を実行し画素値を決定して、決定した画素値がSRAM2,251の各座標位置に書き込まれる。   The calculation result is output to the interpolation processing unit 410, and the interpolation processing unit 410 executes pixel value interpolation processing using the bi-linear method or the bi-cubic method described above with reference to FIG. And the determined pixel value is written to each coordinate position of the SRAM 2 251.

しかし、SRAM1,401に記録された一部の顔画像に基づく正規化処理結果をSRAM2,451に書き込む場合、図17(a)に示すように、SRAM1,401に格納された画像と、SRAM2,451に記録する画像が傾き角度のずれがなく一致していれば、SRAM2,451に書き込むラスタ順(60x66 cnt)にSRAM2,451の書き込み画素を、順次設定して、画素値決定のために必要とする対応するSRAM1,401の画素情報を取得することができる。   However, when the normalization processing result based on a part of the face image recorded in the SRAM 1 401 is written in the SRAM 2 451, the image stored in the SRAM 1 401 and the SRAM 2, as shown in FIG. If the images to be recorded in 451 coincide with each other with no tilt angle deviation, the pixels to be written in SRAM 2 and 451 are sequentially set in the raster order (60 × 66 cnt) to be written in SRAM 2 and 451, and are necessary for determining the pixel value. The pixel information of the corresponding SRAM 1, 401 can be acquired.

しかし、実際には、SRAM1,401に格納される正規化前の画像は、撮影画像に基づいて記録され、図17(b)のように、SRAM1,401に格納される正規化前の画像は、SRAM2,451に記録する正規化後の画像と異なる傾きを持つことが多い。この場合、図17(a)に示すようにSRAM2,451に書き込むラスタ順(60x66 cnt)に処理を行なうと、SRAM1,401から対応画素位置が格納されている状態を維持するためには、絶えずSRAM1,401の格納データの位置変更を行なうことが必要となり非効率的となる。   However, in practice, the image before normalization stored in the SRAM 1, 401 is recorded based on the photographed image, and the image before normalization stored in the SRAM 1, 401 as shown in FIG. In many cases, the image has a slope different from that of the normalized image recorded in the SRAM 2 451. In this case, if processing is performed in the raster order (60 × 66 cnt) written in the SRAM 2 451 as shown in FIG. 17A, in order to maintain the state where the corresponding pixel position is stored from the SRAM 1 401, it is constantly It is necessary to change the position of the data stored in the SRAMs 1 and 401, which is inefficient.

これを解決するために、SRAM2,451に書き込むシーケンスを変更する。すなわち、SRAM1,401に格納された一部の画像データに応じて、SRAM2,451に対するデータ書き込みシーケンスを変更する。以下、この処理例について説明する。   In order to solve this, the sequence of writing to the SRAMs 2 and 451 is changed. That is, the data writing sequence to the SRAMs 2 and 451 is changed according to a part of the image data stored in the SRAMs 1 and 401. Hereinafter, this processing example will be described.

以下の処理例は、SRAM1,401とSRAM2,451との顔画像の傾きの差、すなわち、顔画像の回転角に応じたスキャン順変更を行なう処理例である。複数の異なるスキャン順、すなわち、SRAM2,451に対するデータ書き込みを行なう画素順を変更可能とするための一つの構成としては、複数のスキャン順番を発生するROM(60x66アドレス)を使う構成がある。しかし、任意の角度に応じる構成とするためには、各角度に応じたスキャン順の登録情報が必要となり、このデータを記録するためのメモリサイズが膨大となるという問題がある。   The following processing example is a processing example in which the scan order is changed in accordance with the difference in the inclination of the face image between the SRAM 1, 401 and the SRAM 2, 451, that is, the rotation angle of the face image. As one configuration for making it possible to change a plurality of different scan orders, that is, a pixel order for writing data to the SRAMs 2 and 451, there is a configuration using a ROM (60 × 66 addresses) that generates a plurality of scan orders. However, in order to obtain a configuration corresponding to an arbitrary angle, registration information in the scan order corresponding to each angle is required, and there is a problem that the memory size for recording this data becomes enormous.

そこで、本実施例では、図18に示すように、傾き角度に応じた異なるスキャン順情報を出力する限定された個数(実施例では5個)のカウンタを用意し、これらのカウンタを選択的に使用する。図18に示すカウンタ408は、図16に示す画像変換部141のカウンタ408の一実施構成例である。   Therefore, in this embodiment, as shown in FIG. 18, a limited number of counters (5 in the embodiment) that output different scan order information according to the tilt angle are prepared, and these counters are selectively selected. use. A counter 408 illustrated in FIG. 18 is an exemplary configuration of the counter 408 of the image conversion unit 141 illustrated in FIG.

図16に示すように、カウンタ408は、SRAM1,401のアドレスを読み出して、さらに、演算部403から角度情報、すなわち、正規化処理に際して実行する回転角度情報を入力して、SRAM2,451に対する書き込みアドレスを、順次、出力するカウンタである。演算部403から入力する角度情報は、正規化処理に適用する変換パラメータとしての回転処理パラメータであり、SRAM1,401に格納された顔画像と、SRAM2,451に書き込む顔画像の傾斜角の差分に相当する。   As shown in FIG. 16, the counter 408 reads the address of the SRAM 1, 401, inputs angle information from the arithmetic unit 403, that is, rotation angle information to be executed in normalization processing, and writes to the SRAM 2 451. This is a counter that sequentially outputs addresses. The angle information input from the calculation unit 403 is a rotation process parameter as a conversion parameter applied to the normalization process. The angle information is a difference between the inclination angle of the face image stored in the SRAM 1 401 and the face image written in the SRAM 2 451. Equivalent to.

図18に示すように、カウンタ408は、5つのサブカウンタ501〜505と選択部511によって構成される。
第1サブカウンタは、傾斜角θ≒−27度(arctan(−1/2))、
第2サブカウンタは、傾斜角θ≒−14度(arctan(−1/4))、
第3サブカウンタは、傾斜角θ≒0度(arctan(0))、
第4サブカウンタは、傾斜角θ≒+14度(arctan(+1/4))、
第5サブカウンタは、傾斜角θ≒+27度(arctan(+1/2))、
に対応したスキャン順情報をそれぞれ出力する。
傾斜角θは、正規化画像と、SRAM1,401に格納された画像との傾斜角である。選択部511は、演算部403から入力する角度情報に従って、これらの5つのカウンタ出力のいずれかを選択して出力する。出力情報は、SRAM2,451、座標変換部409に出力される。角度種類はtanθ=1/4,1/2,0,−1/4,−1/2となるθを選んだ設定である。この角度のスキャン順はカウンタに適した規則性があり小さい規模のロジックで実現可能である。
As illustrated in FIG. 18, the counter 408 includes five sub-counters 501 to 505 and a selection unit 511.
The first sub-counter has an inclination angle θ≈−27 degrees (arctan (−1/2)),
The second sub-counter has an inclination angle θ≈−14 degrees (arctan (−1/4)),
The third sub-counter has an inclination angle θ≈0 degrees (arctan (0)),
The fourth sub-counter has an inclination angle θ≈ + 14 degrees (arctan (+1/4)),
The fifth sub-counter has an inclination angle θ≈ + 27 degrees (arctan (+1/2)),
Scan order information corresponding to each is output.
The inclination angle θ is an inclination angle between the normalized image and the image stored in the SRAM 1 401. The selection unit 511 selects and outputs one of these five counter outputs according to the angle information input from the calculation unit 403. The output information is output to the SRAMs 2 and 451 and the coordinate conversion unit 409. The angle type is a setting in which θ is selected such that tan θ = 1/4, 1/2, 0, −1/4, −1/2. The scan order of this angle has regularity suitable for a counter and can be realized with a small-scale logic.

実際には、SRAM1,401に格納される画像の傾斜角は様々であり、演算部403からカウンタ408に入力される角度情報は様々な値となる。本実施例では、例えば、図19に示すように、これらの5つのカウンタを、ある一定の傾斜角度の領域毎に選択して利用する構成とする。図19に示すように、
傾斜角θ<−21度:第1サブカウンタ(−27度対応)、
−21度≦傾斜角θ<−7度:第2サブカウンタ(−14度対応)、
−7度≦傾斜角θ<+7度:第3サブカウンタ(0度対応)、
+7度≦傾斜角θ<+21度:第4サブカウンタ(+14度対応)、
+21度≦傾斜角θ:第5サブカウンタ(+27度対応)、
このように、様々な傾斜角に応じて少ない数のカウンタで対応する。
Actually, the inclination angles of the images stored in the SRAMs 1 and 401 are various, and the angle information input from the calculation unit 403 to the counter 408 has various values. In the present embodiment, for example, as shown in FIG. 19, these five counters are selected and used for each region having a certain inclination angle. As shown in FIG.
Inclination angle θ <−21 degrees: first sub-counter (corresponding to −27 degrees),
−21 degrees ≦ tilt angle θ <−7 degrees: second sub-counter (corresponding to −14 degrees),
−7 degrees ≦ tilt angle θ <+7 degrees: third sub-counter (corresponding to 0 degrees),
+7 degrees ≦ tilt angle θ <+21 degrees: fourth sub-counter (corresponding to +14 degrees),
+21 degrees ≦ tilt angle θ: fifth sub-counter (corresponding to +27 degrees),
In this way, a small number of counters are used according to various inclination angles.

実際の各カウンタ出力に基づくスキャン順の設定例について、図20〜図24を参照して説明する。図20〜図24は、各カウンタ501〜505を選択して利用した場合のスキャン順、すなわちSRAM2,451に対するデータ書き込み順を示している。
図20は、第1サブカウンタ(−27度対応)を利用した場合のスキャン順、
図21は、第2サブカウンタ(−14度対応)を利用した場合のスキャン順、
図22は、第3サブカウンタ(0度対応)を利用した場合のスキャン順、
図23は、第4サブカウンタ(+14度対応)を利用した場合のスキャン順、
図24は、第5サブカウンタ(+27度対応)を利用した場合のスキャン順、
これらの各スキャン順を示している。
Examples of setting the scan order based on actual counter outputs will be described with reference to FIGS. 20 to 24 show the scan order when the counters 501 to 505 are selected and used, that is, the data write order to the SRAMs 2 and 451.
FIG. 20 shows the scan order when the first sub-counter (corresponding to −27 degrees) is used.
FIG. 21 shows the scan order when the second sub-counter (corresponding to −14 degrees) is used,
FIG. 22 shows the scan order when the third sub-counter (corresponding to 0 degree) is used,
FIG. 23 shows the scan order when the fourth sub-counter (corresponding to +14 degrees) is used.
FIG. 24 shows the scan order when the fifth sub-counter (corresponding to +27 degrees) is used,
Each of these scan orders is shown.

図20は、第1サブカウンタ(−27度対応)を利用した場合のスキャン順である。第1サブカウンタ501は、図20の(B)に示す(カウンタ出力アルゴリズム)に従って、スキャンする順番を示すカウンタ値を出力する。すなわち、(x,y)をSRAM2,451に対するデータ書き込みアドレスとして、
cx:current x,
cy:current y,
nx:next x,
ny:next y,
とした場合、以下のカウンタ値出力アルゴリズムに従って、カウンタ値、すなわちスキャン順番の指定データを出力する。
cx=0;cy=0;
if (cx[0]!=1){ −
ny=cy; nx=cx+1;
}else if (cy==0) { (1)
ny=cx[5:1]+1;nx=0;
}else if (cx==59) {
if(cy<36){ (2)
ny=cy+30;nx=0;
}else{ (3)
ny=65; nx=(cy‐35)x2;

}else{ /
ny=cy−1;nx=cx+1;
FIG. 20 shows the scan order when the first sub-counter (corresponding to −27 degrees) is used. The first sub-counter 501 outputs a counter value indicating the scanning order according to the (counter output algorithm) shown in FIG. That is, (x, y) is used as a data write address for the SRAM 2,451.
cx: current x,
cy: current y,
nx: next x,
ny: next y,
In this case, according to the following counter value output algorithm, the counter value, that is, the designated data of the scan order is output.
cx = 0; cy = 0;
if (cx [0]! = 1) {-
ny = cy; nx = cx + 1;
} Else if (cy == 0) {(1)
ny = cx [5: 1] +1; nx = 0;
} Else if (cx == 59) {
if (cy <36) {(2)
ny = cy + 30; nx = 0;
} Else {(3)
ny = 65; nx = (cy-35) x2;
}
} Else {/
ny = cy−1; nx = cx + 1;
}

上記アルゴリズムに従ったカウンタ値出力によって、図20(A)の矢印の結線順に従ってスキャンが実行される。なお、(1),(2),(3)の領域に応じて、カウンタ値出力アルゴリズムの処理も(B)(カウンタ出力アルゴリズム)中の(1)〜(3)に示すように切り替えられる。   By the counter value output according to the above algorithm, the scan is executed in accordance with the connection order of the arrows in FIG. Note that the processing of the counter value output algorithm is switched as shown in (1) to (3) in (B) (counter output algorithm) according to the areas (1), (2), and (3).

図21は、第2サブカウンタ(−14度対応)を利用した場合のスキャン順である。第2サブカウンタ502は、図21の(B)に示す(カウンタ出力アルゴリズム)に従って、スキャンする順番を示すカウンタ値を出力する。すなわち、(x,y)をSRAM2,451に対するデータ書き込みアドレスとして、
cx:current x,
cy:current y,
nx:next x,
ny:next y,
とした場合、以下のカウンタ値出力アルゴリズムに従って、カウンタ値、すなわちスキャン順番の指定データを出力する。
cx=0;cy=0;
if (cx[1:0]!=3) { −
ny=cy; nx=cx+1;
}else if (cy==0) { (1)
ny=cx[5:2]+1;nx=0;
}else if(cx==59) {
if(cy<51) { (2)
ny=cy+15;nx=0;
}else { (3)
ny=65; nx=(cy‐50)x4;

} else { /
ny=cy−1;nx=cx+1;
FIG. 21 shows the scan order when the second sub-counter (corresponding to −14 degrees) is used. The second sub-counter 502 outputs a counter value indicating the scanning order according to the (counter output algorithm) shown in FIG. That is, (x, y) is used as a data write address for the SRAM 2,451.
cx: current x,
cy: current y,
nx: next x,
ny: next y,
In this case, according to the following counter value output algorithm, the counter value, that is, the designated data of the scan order is output.
cx = 0; cy = 0;
if (cx [1: 0]! = 3) {-
ny = cy; nx = cx + 1;
} Else if (cy == 0) {(1)
ny = cx [5: 2] +1; nx = 0;
} Else if (cx == 59) {
if (cy <51) {(2)
ny = cy + 15; nx = 0;
} Else {(3)
ny = 65; nx = (cy-50) x4;
}
} Else {/
ny = cy−1; nx = cx + 1;
}

上記アルゴリズムに従ったカウンタ値出力によって、図21(A)の矢印の結線順に従ってスキャンが実行される。なお、(1),(2),(3)の領域に応じて、カウンタ値出力アルゴリズムの処理も(B)(カウンタ出力アルゴリズム)中の(1)〜(3)に示すように切り替えられる。   By the counter value output according to the above algorithm, scanning is executed in accordance with the connection order of the arrows in FIG. Note that the processing of the counter value output algorithm is switched as shown in (1) to (3) in (B) (counter output algorithm) according to the areas (1), (2), and (3).

図22は、第3サブカウンタ(0度対応)を利用した場合のスキャン順である。第3サブカウンタ503は、図22の(B)に示す(カウンタ出力アルゴリズム)に従って、スキャンする順番を示すカウンタ値を出力する。すなわち、(x,y)をSRAM2,451に対するデータ書き込みアドレスとして、
cx:current x,
cy:current y,
nx:next x,
ny:next y,
とした場合、以下のカウンタ値出力アルゴリズムに従って、カウンタ値、すなわちスキャン順番の指定データを出力する。
cx=0;cy=0;
if (cx==59){
ny=cy+1; nx=0;
}else {
ny=cy; nx=cx+1;
FIG. 22 shows the scanning order when the third sub-counter (corresponding to 0 degree) is used. The third sub-counter 503 outputs a counter value indicating the scanning order according to the (counter output algorithm) shown in FIG. That is, (x, y) is used as a data write address for the SRAM 2,451.
cx: current x,
cy: current y,
nx: next x,
ny: next y,
In this case, according to the following counter value output algorithm, the counter value, that is, the designated data of the scan order is output.
cx = 0; cy = 0;
if (cx == 59) {
ny = cy + 1; nx = 0;
} Else {
ny = cy; nx = cx + 1;
}

上記アルゴリズムに従ったカウンタ値出力によって、図20(A)の矢印の結線順に従ってスキャンが実行される。   By the counter value output according to the above algorithm, the scan is executed in accordance with the connection order of the arrows in FIG.

図23は、第4サブカウンタ(+14度対応)を利用した場合のスキャン順である。第4サブカウンタ504は、図23の(B)に示す(カウンタ出力アルゴリズム)に従って、スキャンする順番を示すカウンタ値を出力する。すなわち、(x,y)をSRAM2,451に対するデータ書き込みアドレスとして、
cx:current x,
cy:current y,
nx:next x,
ny:next y,
とした場合、以下のカウンタ値出力アルゴリズムに従って、カウンタ値、すなわちスキャン順番の指定データを出力する。
cx=59;cy=0;
if (cx[0]!=0) { −
ny=cy; nx=cx−1;
}else if (cy==0) { (1)
ny=30−cx[5:1]; nx=59;
}else if (cx==0) {
if(cy<36) { (2)
ny=cy+30;nx=59;
}else { (3)
ny=65; nx=59−(cy‐35)x2;

}else { ¥
ny=cy−1;nx=cx−1;
FIG. 23 shows the scan order when the fourth sub-counter (corresponding to +14 degrees) is used. The fourth sub-counter 504 outputs a counter value indicating the scanning order in accordance with (counter output algorithm) shown in FIG. That is, (x, y) is used as a data write address for the SRAM 2,451.
cx: current x,
cy: current y,
nx: next x,
ny: next y,
In this case, according to the following counter value output algorithm, the counter value, that is, the designated data of the scan order is output.
cx = 59; cy = 0;
if (cx [0]! = 0) {-
ny = cy; nx = cx−1;
} Else if (cy == 0) {(1)
ny = 30−cx [5: 1]; nx = 59;
} Else if (cx == 0) {
if (cy <36) {(2)
ny = cy + 30; nx = 59;
} Else {(3)
ny = 65; nx = 59− (cy−35) × 2;
}
} Else {¥
ny = cy-1; nx = cx-1;
}

上記アルゴリズムに従ったカウンタ値出力によって、図23(A)の矢印の結線順に従ってスキャンが実行される。なお、(1),(2),(3)の領域に応じて、カウンタ値出力アルゴリズムの処理も(B)(カウンタ出力アルゴリズム)中の(1)〜(3)に示すように切り替えられる。   By the counter value output according to the above algorithm, scanning is executed in accordance with the connection order of the arrows in FIG. Note that the processing of the counter value output algorithm is switched as shown in (1) to (3) in (B) (counter output algorithm) according to the areas (1), (2), and (3).

図24は、第5サブカウンタ(+27度対応)を利用した場合のスキャン順である。第5サブカウンタ505は、図24の(B)に示す(カウンタ出力アルゴリズム)に従って、スキャンする順番を示すカウンタ値を出力する。すなわち、(x,y)をSRAM2,451に対するデータ書き込みアドレスとして、
cx:current x,
cy:current y,
nx:next x,
ny:next y,
とした場合、以下のカウンタ値出力アルゴリズムに従って、カウンタ値、すなわちスキャン順番の指定データを出力する。
cx=59;cy=0;
if (cx[1:0]!=0) { −
ny=cy; nx=cx−1;
}else if (cy==0) { (1)
ny=15−cx[5:2] ;nx=59;
}else if (cx==0) {
if(cy<51) { (2)
ny=cy+15; nx=59;
}else { (3)
ny=65; nx=59−(cy‐50)x4;

} else { ¥
ny=cy−1; nx=cx−1;
FIG. 24 shows the scan order when the fifth sub-counter (corresponding to +27 degrees) is used. The fifth sub-counter 505 outputs a counter value indicating the scanning order according to the (counter output algorithm) shown in FIG. That is, (x, y) is used as a data write address for the SRAM 2,451.
cx: current x,
cy: current y,
nx: next x,
ny: next y,
In this case, according to the following counter value output algorithm, the counter value, that is, the designated data of the scan order is output.
cx = 59; cy = 0;
if (cx [1: 0]! = 0) {−
ny = cy; nx = cx−1;
} Else if (cy == 0) {(1)
ny = 15−cx [5: 2]; nx = 59;
} Else if (cx == 0) {
if (cy <51) {(2)
ny = cy + 15; nx = 59;
} Else {(3)
ny = 65; nx = 59− (cy-50) × 4;
}
} Else {¥
ny = cy-1; nx = cx-1;
}

上記アルゴリズムに従ったカウンタ値出力によって、図24(A)の矢印の結線順に従ってスキャンが実行される。なお、(1),(2),(3)の領域に応じて、カウンタ値出力アルゴリズムの処理も(B)(カウンタ出力アルゴリズム)中の(1)〜(3)に示すように切り替えられる。   By the counter value output according to the above algorithm, scanning is executed in accordance with the connection order of the arrows in FIG. Note that the processing of the counter value output algorithm is switched as shown in (1) to (3) in (B) (counter output algorithm) according to the areas (1), (2), and (3).

このように、図16に示す画像変換部141のカウンタ408は、図18を参照して説明したように、5つのカウンタ501〜505と選択部511によって構成され、
第1サブカウンタは、傾斜角θ≒−27度(arctan(−1/2))、
第2サブカウンタは、傾斜角θ≒−14度(arctan(−1/4))、
第3サブカウンタは、傾斜角θ≒0度(arctan(0))、
第4サブカウンタは、傾斜角θ≒+14度(arctan(+1/4))、
第5サブカウンタは、傾斜角θ≒+27度(arctan(+1/2))、
に対応したスキャン順情報を、図20〜図24を参照して説明したアルゴリズムに従ってそれぞれ出力する。
As described above, the counter 408 of the image conversion unit 141 illustrated in FIG. 16 includes the five counters 501 to 505 and the selection unit 511 as described with reference to FIG.
The first sub-counter has an inclination angle θ≈−27 degrees (arctan (−1/2)),
The second sub-counter has an inclination angle θ≈−14 degrees (arctan (−1/4)),
The third sub-counter has an inclination angle θ≈0 degrees (arctan (0)),
The fourth sub-counter has an inclination angle θ≈ + 14 degrees (arctan (+1/4)),
The fifth sub-counter has an inclination angle θ≈ + 27 degrees (arctan (+1/2)),
Are output in accordance with the algorithm described with reference to FIGS.

図16に示すように、カウンタ408は、SRAM1,401のアドレスを読み出して、演算部403から角度情報、すなわち、正規化処理に際して実行する回転角度情報を入力して、SRAM2,451に対する書き込みアドレスを、順次、出力する。演算部403から角度情報に応じて、5つのカウンタのいずれかのカウンタを選択出力する構成としたので、構成を小型化することが可能であり、正規化後の画像のSRAM2,451に対するデータ書き込みに際して、SRAM1,401の小さなメモリ領域を利用した処理が実現される。   As shown in FIG. 16, the counter 408 reads the address of the SRAM 1, 401, inputs angle information from the arithmetic unit 403, that is, rotation angle information to be executed in the normalization process, and sets a write address for the SRAM 2 451. , Output sequentially. Since one of the five counters is selectively output in accordance with the angle information from the calculation unit 403, the configuration can be reduced, and data can be written to the SRAMs 2 and 451 after normalization. At this time, processing using a small memory area of the SRAM 1, 401 is realized.

以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。   The present invention has been described in detail above with reference to specific embodiments. However, it is obvious that those skilled in the art can make modifications and substitutions of the embodiments without departing from the gist of the present invention. In other words, the present invention has been disclosed in the form of exemplification, and should not be interpreted in a limited manner. It is obvious that those skilled in the art can make modifications and substitutions of the embodiments without departing from the gist of the present invention. In order to determine the gist of the present invention, the claims should be taken into consideration.

なお、本明細書では、顔認識装置に適用した実施形態を中心に説明してきたが、本発明の要旨はこれに限定されるものではない。顔画像データの変換を実行して、メモリに格納、あるいはディスプレイに出力する処理を行なう様々な画像処理装置において適用可能である。   In the present specification, the embodiment applied to the face recognition apparatus has been mainly described, but the gist of the present invention is not limited to this. The present invention can be applied to various image processing apparatuses that perform conversion of face image data and store it in a memory or output it to a display.

また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。   The series of processing described in the specification can be executed by hardware, software, or a combined configuration of both. When executing processing by software, the program recording the processing sequence is installed in a memory in a computer incorporated in dedicated hardware and executed, or the program is executed on a general-purpose computer capable of executing various processing. It can be installed and run.

本発明の一実施例の構成によれば、顔識別処理を行なう画像処理装置において、正規化前の顔画像を蓄える第1メモリ(SRAM1)の画像を取り出して正規化を実行して第2メモリ(SRAM2)に格納する処理を行なう構成において、正規化前の顔画像を蓄える第1メモリ(SRAM1)に顔全体を格納することなく、一部のみを格納する構成としてメモリの小型化を実現し、さらに、第1メモリ(SRAM1)に格納された顔の傾きに応じて、第2メモリに対するデータ書き込み順としてのスキャンシーケンスを変更する構成としたので、メモリの小型化および正確な正規化画像の書き込み処理が実現される。   According to the configuration of an embodiment of the present invention, in an image processing apparatus that performs face identification processing, an image of a first memory (SRAM 1) that stores a face image before normalization is extracted and normalized to execute the second memory. In the configuration in which the process of storing in (SRAM2) is performed, the memory is reduced in size by storing only a part of the first memory (SRAM1) that stores the face image before normalization without storing the entire face. In addition, since the scan sequence as the data writing order to the second memory is changed according to the inclination of the face stored in the first memory (SRAM 1), the memory can be downsized and an accurate normalized image can be obtained. Write processing is realized.

図1は、本発明の一実施形態に係る顔認識システムの全体構成を模式的に示した図である。FIG. 1 is a diagram schematically showing the overall configuration of a face recognition system according to an embodiment of the present invention. 図2は、顔識別器14の構成例を示した図である。FIG. 2 is a diagram illustrating a configuration example of the face discriminator 14. 図3は、検出された顔画像を、縮小、シフト、回転変換して顔認識に必要な顔画像に正規化する様子を示した図である。FIG. 3 is a diagram illustrating a state in which a detected face image is reduced, shifted, and rotated to be normalized to a face image necessary for face recognition. 図4Aは、24×24画素固定で構成されるガウス関数からなるフィルタ窓を示した図である。FIG. 4A is a diagram showing a filter window composed of a Gaussian function configured with 24 × 24 pixels fixed. 図4Bは、サイン関数又はコサイン関数からなる応答関数を示した図である。FIG. 4B is a diagram illustrating a response function including a sine function or a cosine function. 図4Cは、図4Bに示した応答関数に図4Aに示したフィルタ窓をかけて得られるガボア・フィルタを示した図である。FIG. 4C is a diagram showing a Gabor filter obtained by applying the filter window shown in FIG. 4A to the response function shown in FIG. 4B. 図4Dは、22.5度ずつずらした8方向の応答関数についてそれぞれフィルタ窓をかけて得られる8通りのガボア・フィルタを示した図である。FIG. 4D is a diagram showing eight Gabor filters obtained by applying filter windows to response functions in eight directions shifted by 22.5 degrees. 図4Eは、5種類の周波数fの応答関数について、同様に8方向の角度θでフィルタ窓をかけて得られる40種類のガボア・フィルタを示した図である。FIG. 4E is a diagram showing 40 types of Gabor filters obtained by applying filter windows at eight angles θ in the same manner with respect to response functions of five types of frequencies f. 図5は、正規化された60×66画素の顔画像に設けられた82箇所の特徴量抽出位置を示した図である。FIG. 5 is a diagram showing 82 feature amount extraction positions provided in a normalized 60 × 66 pixel face image. 図6は、画像変換部141において実行する画像変換処理の詳細について説明する図である。FIG. 6 is a diagram for explaining the details of the image conversion process executed in the image conversion unit 141. 図7は、SRAM2の画素位置二対応するSRAM1の画素位置を求める処理について説明する図である。FIG. 7 is a diagram for explaining processing for obtaining the pixel position of the SRAM 1 corresponding to the pixel position 2 of the SRAM 2. 図8は、画像変換部141の補間処理部207の実行する画素補間処理について説明する図である。FIG. 8 is a diagram for explaining pixel interpolation processing executed by the interpolation processing unit 207 of the image conversion unit 141. 図9は、正規化(画像変換処理)後の顔画像を格納するSRAM2,251の顔画像格納領域の画素の構成を示した図である。FIG. 9 is a diagram illustrating a configuration of pixels in the face image storage area of the SRAM 2 251 that stores the face image after normalization (image conversion processing). 図10は、正規化(画像変換処理)前の顔画像を格納するSRAM1,201の顔画像格納領域の画素の構成を示した図である。FIG. 10 is a diagram illustrating a configuration of pixels in the face image storage area of the SRAM 1 201 storing the face image before normalization (image conversion processing). 図11は、図10に示すSRAM1,201の原点領域の近傍を拡大した図である。FIG. 11 is an enlarged view of the vicinity of the origin area of the SRAM 1, 201 shown in FIG. 図12は、正規化処理において必要とする対応画素算出処理について説明する図である。FIG. 12 is a diagram for explaining the corresponding pixel calculation process required in the normalization process. 図13は、補間処理部207における画素値の決定処理例の一例として、bi−linear手法を適用した処理例について説明する図である。FIG. 13 is a diagram illustrating a processing example to which the bi-linear method is applied as an example of a pixel value determination processing in the interpolation processing unit 207. 図14は、一部の顔画像データのみを格納するSRAM1の構成例について説明する図である。FIG. 14 is a diagram illustrating a configuration example of the SRAM 1 that stores only a part of face image data. 図15は、一部の顔画像データのみを格納するSRAM1のデータ更新例について説明する図である。FIG. 15 is a diagram for explaining a data update example of the SRAM 1 that stores only a part of face image data. 図16は、一部の顔画像データのみを格納するSRAM1を有する画像変換部の構成例について説明する図である。FIG. 16 is a diagram illustrating a configuration example of an image conversion unit including the SRAM 1 that stores only a part of face image data. 図17は、正規化後の画像の書き込み順としてのスキャン順について説明する図である。FIG. 17 is a diagram for explaining the scan order as the order of writing the images after normalization. 図18は、一部の顔画像データのみを格納するSRAM1を有する画像変換部のカウンタ構成例について説明する図である。FIG. 18 is a diagram illustrating a counter configuration example of the image conversion unit having the SRAM 1 that stores only a part of face image data. 図19は、一部の顔画像データのみを格納するSRAM1を有する画像変換部のカウンタの利用例について説明する図である。FIG. 19 is a diagram for explaining a usage example of the counter of the image conversion unit having the SRAM 1 that stores only part of the face image data. 図20は、一部の顔画像データのみを格納するSRAM1を有する画像変換部のカウンタを適用したスキャン例およびカウンタ値出力アルゴリズムについて説明する図である。FIG. 20 is a diagram for explaining a scan example and a counter value output algorithm to which the counter of the image conversion unit having the SRAM 1 that stores only part of the face image data is applied. 図21は、一部の顔画像データのみを格納するSRAM1を有する画像変換部のカウンタを適用したスキャン例およびカウンタ値出力アルゴリズムについて説明する図である。FIG. 21 is a diagram illustrating a scan example and a counter value output algorithm to which the counter of the image conversion unit having the SRAM 1 that stores only part of the face image data is applied. 図22は、一部の顔画像データのみを格納するSRAM1を有する画像変換部のカウンタを適用したスキャン例およびカウンタ値出力アルゴリズムについて説明する図である。FIG. 22 is a diagram for explaining a scan example and a counter value output algorithm to which the counter of the image conversion unit having the SRAM 1 that stores only part of the face image data is applied. 図23は、一部の顔画像データのみを格納するSRAM1を有する画像変換部のカウンタを適用したスキャン例およびカウンタ値出力アルゴリズムについて説明する図である。FIG. 23 is a diagram illustrating a scan example and a counter value output algorithm to which the counter of the image conversion unit having the SRAM 1 that stores only part of the face image data is applied. 図24は、一部の顔画像データのみを格納するSRAM1を有する画像変換部のカウンタを適用したスキャン例およびカウンタ値出力アルゴリズムについて説明する図である。FIG. 24 is a diagram for explaining a scan example and a counter value output algorithm to which the counter of the image conversion unit having the SRAM 1 that stores only part of the face image data is applied.

符号の説明Explanation of symbols

1 顔認識システム
11 画縮小器
12 顔検出器
13 両目位置検出器
14 顔識別器
15 メモリ
141 画像変換部
142 ガボア・フィルタ適用部
143 類似度算出部
144 一致判定部
200 SDRAM
201 SRAM1
202 目位置検出部
203 演算部
204 アドレス作成部
205 座標変換部
206 カウンタ
207 補間処理部
251 SRAM2
401 SRAM1
402 目位置検出部
403 演算部
404 SDRAMアドレス作成部
405 SRAM1アドレス作成部
406 カウンタ
407 アドレスY作成部
408 カウンタ
409 座標変換部
410 補間処理部
451 SRAM2
501〜505 カウンタ
511 選択部
DESCRIPTION OF SYMBOLS 1 Face recognition system 11 Image reducer 12 Face detector 13 Both-eye position detector 14 Face identifier 15 Memory 141 Image conversion part 142 Gabor filter application part 143 Similarity calculation part 144 Match determination part 200 SDRAM
201 SRAM1
202 Eye position detection unit 203 Calculation unit 204 Address creation unit 205 Coordinate conversion unit 206 Counter 207 Interpolation processing unit 251 SRAM 2
401 SRAM1
402 Eye position detection unit 403 Calculation unit 404 SDRAM address generation unit 405 SRAM1 address generation unit 406 Counter 407 Address Y generation unit 408 Counter 409 Coordinate conversion unit 410 Interpolation processing unit 451 SRAM2
501 to 505 counter 511 selection unit

Claims (13)

入力顔画像の識別処理を行なう画像処理装置であって、
識別処理対象となる顔画像を入力し、入力顔画像に対して画像変換を実行し、予め定められた設定を持つ画像に正規化する処理を実行する画像変換部と、
前記画像変換部において変換された変換入力画像から求めた特徴量と、登録画像の特徴量との類似度を算出する類似度算出部と、
前記類似度算出部の算出した類似度に基づいて入力顔画像と登録顔画像が一致するか否かを判定する一致判定手段を備え、
前記画像変換部は、
正規化処理の対象とする顔画像を格納した第1メモリから、顔画像を取得して画像変換による正規化を実行して正規化後の顔画像を第2メモリに格納する処理を実行する構成であり、
前記第1メモリは、正規化処理の対象とする顔画像の一部のみを格納し、前記第2メモリに対する正規化処理後の画像の書き込みの進行に応じて、前記第1メモリの格納データの更新処理を実行するメモリ制御部を有する構成であることを特徴とする画像処理装置。
An image processing apparatus for performing identification processing of an input face image,
An image conversion unit that inputs a face image to be subjected to identification processing, performs image conversion on the input face image, and performs processing to normalize to an image having a predetermined setting;
A similarity calculation unit that calculates the similarity between the feature amount obtained from the converted input image converted by the image conversion unit and the feature amount of the registered image;
A match determination unit that determines whether the input face image and the registered face image match based on the similarity calculated by the similarity calculation unit;
The image conversion unit
A configuration for acquiring a face image from the first memory storing the face image to be subjected to normalization processing, executing normalization by image conversion, and storing the normalized face image in the second memory And
The first memory stores only a part of the face image to be normalized, and stores the data stored in the first memory in accordance with the progress of the writing of the image after the normalization process to the second memory. An image processing apparatus having a memory control unit that executes update processing.
前記メモリ制御部は、
前記第2メモリの書き込みアドレスと、該書き込みアドレスに対応する前記第1メモリの対応画素位置の縦方向(Y成分)を比較するアドレス比較部を有し、該アドレス比較部の比較情報に基づいて、前記第1メモリの対応画素位置が、前記前記第1メモリの格納データ中の縦(Y)方向において、ほぼ中央となるように前記第1メモリの格納データの更新処理を実行する構成であることを特徴とする請求項1に記載の画像処理装置。
The memory control unit
An address comparison unit that compares the write address of the second memory with the vertical direction (Y component) of the corresponding pixel position of the first memory corresponding to the write address, and based on the comparison information of the address comparison unit The update processing of the data stored in the first memory is executed so that the corresponding pixel position of the first memory is substantially in the center in the longitudinal (Y) direction in the data stored in the first memory. The image processing apparatus according to claim 1.
前記画像変換部は、
正規化処理に際して実行する画像回転の角度情報を入力し、該角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を出力するカウンタを有し、
前記カウンタは、
異なる角度に応じた異なるカウンタ値を出力する複数のサブカウンタを有する構成であることを特徴とする請求項1に記載の画像処理装置。
The image conversion unit
A counter that inputs angle information of image rotation to be executed in the normalization process and outputs a counter value corresponding to the second memory write address according to the angle information;
The counter is
The image processing apparatus according to claim 1, further comprising a plurality of sub-counters that output different counter values corresponding to different angles.
前記サブカウンタの各々は、
画像回転の角度:θ=arctan(±1/n)
ただしnは整数、
上記角度に対応した第2メモリ書き込みアドレスに相当するカウンタ値を出力する構成であることを特徴とする請求項3に記載の画像処理装置。
Each of the sub-counters
Image rotation angle: θ = arctan (± 1 / n)
Where n is an integer,
4. The image processing apparatus according to claim 3, wherein a counter value corresponding to a second memory write address corresponding to the angle is output.
前記画像変換部は、
前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出するための変換パラメータを算出する演算部と、
前記演算部の算出した変換パラメータに含まれる画像回転の角度情報を入力し、入力角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を異なるカウンタ値を出力するカウンタと、
前記演算部の算出した変換パラメータに基づいて、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する座標変換部と、
前記座標変換部の算出した対応点情報に従って、前記第2メモリの各画素位置に対応する画素値を決定する補間処理部と、
を有する構成であることを特徴とする請求項1に記載の画像処理装置。
The image conversion unit
An arithmetic unit for calculating a conversion parameter for calculating a corresponding point of the first memory corresponding to each pixel position of the second memory;
A counter that inputs image rotation angle information included in the conversion parameter calculated by the calculation unit, and outputs a counter value different from the counter value corresponding to the second memory write address according to the input angle information;
A coordinate conversion unit that calculates a corresponding point of the first memory corresponding to each pixel position of the second memory based on the conversion parameter calculated by the calculation unit;
An interpolation processing unit for determining a pixel value corresponding to each pixel position of the second memory according to the corresponding point information calculated by the coordinate conversion unit;
The image processing apparatus according to claim 1, wherein the image processing apparatus includes:
前記演算部は、
前記変換パラメータとして、前記第1メモリに格納された顔画像を前記第2メモリに格納する顔画像に変換する際に適用する画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを算出し、
前記座標変換部は、
画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを適用して、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する処理を実行する構成であることを特徴とする請求項5に記載の画像処理装置。
The computing unit is
As the conversion parameter, at least one of an image reduction process, an image rotation process, and an image translation process applied when converting the face image stored in the first memory into the face image stored in the second memory Calculate the conversion parameter that defines the processing of
The coordinate converter is
Applying a conversion parameter that defines at least one of image reduction processing, image rotation processing, and image parallel movement processing, to calculate corresponding points in the first memory corresponding to each pixel position in the second memory The image processing apparatus according to claim 5, wherein the image processing apparatus is configured to execute the process.
画像処理装置において、入力顔画像の識別処理を行なう画像処理方法であって、
画像変換部が、識別処理対象となる顔画像を入力し、入力顔画像に対して画像変換を実行し、予め定められた設定を持つ画像に正規化する処理を実行する画像変換ステップと、
類似度算出部が、前記画像変換部において変換された変換入力画像から求めた特徴量と、登録画像の特徴量との類似度を算出する類似度算出ステップと、
一致判定手段が、前記類似度算出部の算出した類似度に基づいて入力顔画像と登録顔画像が一致するか否かを判定する一致判定ステップを有し、
前記画像変換ステップは、
正規化処理の対象とする顔画像を格納した第1メモリから、顔画像を取得して画像変換による正規化を実行して正規化後の顔画像を第2メモリに格納する処理を実行するステップと、
メモリ制御部が、前記第1メモリに正規化処理の対象とする顔画像の一部のみを格納し、前記第2メモリに対する正規化処理後の画像の書き込みの進行に応じて前記第1メモリの格納データの更新処理を実行するメモリ制御ステップを含むことを特徴とする画像処理方法。
An image processing method for identifying an input face image in an image processing apparatus,
An image conversion step in which an image conversion unit inputs a face image to be subjected to identification processing, executes image conversion on the input face image, and executes processing for normalizing to an image having a predetermined setting;
A similarity calculation step in which the similarity calculation unit calculates the similarity between the feature amount obtained from the converted input image converted by the image conversion unit and the feature amount of the registered image;
A match determination step for determining whether or not the input face image and the registered face image match based on the similarity calculated by the similarity calculation unit;
The image conversion step includes
A step of acquiring a face image from the first memory storing the face image to be subjected to normalization processing, executing normalization by image conversion, and storing the normalized face image in the second memory When,
The memory control unit stores only a part of the face image to be normalized in the first memory, and the memory control unit stores the first memory in accordance with the progress of the writing of the image after the normalization process to the second memory. An image processing method comprising: a memory control step for executing a stored data update process.
前記メモリ制御ステップは、
前記第2メモリの書き込みアドレスと、該書き込みアドレスに対応する前記第1メモリの対応画素位置の縦方向(Y成分)を比較し、比較情報に基づいて前記第1メモリの対応画素位置が、前記前記第1メモリの格納データ中の縦(Y)方向において、ほぼ中央となるように前記第1メモリの格納データの更新処理を実行することを特徴とする請求項7に記載の画像処理方法。
The memory control step includes
The write address of the second memory is compared with the vertical direction (Y component) of the corresponding pixel position of the first memory corresponding to the write address, and the corresponding pixel position of the first memory is determined based on the comparison information. 8. The image processing method according to claim 7, wherein the update processing of the data stored in the first memory is executed so as to be substantially centered in the longitudinal (Y) direction in the data stored in the first memory. 9.
前記画像変換部は、正規化処理に際して実行する画像回転の角度情報を入力し、該角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を出力するカウンタを有し、
前記カウンタは、異なる角度に応じた異なるカウンタ値を出力する複数のサブカウンタを含み、入力する角度情報に応じて適用するサブカウンタを選択して、選択されたサブカウンタのカウンタ値を出力することを特徴とする請求項7に記載の画像処理方法。
The image conversion unit includes a counter that inputs angle information of image rotation to be executed in normalization processing and outputs a counter value corresponding to the second memory write address in accordance with the angle information,
The counter includes a plurality of sub-counters that output different counter values according to different angles, selects a sub-counter to be applied according to input angle information, and outputs a counter value of the selected sub-counter The image processing method according to claim 7.
前記サブカウンタの各々は、
画像回転の角度:θ=arctan(±1/n)
ただしnは整数、
上記角度に対応した第2メモリ書き込みアドレスに相当するカウンタ値を出力することを特徴とする請求項9に記載の画像処理方法。
Each of the sub-counters
Image rotation angle: θ = arctan (± 1 / n)
Where n is an integer,
10. The image processing method according to claim 9, wherein a counter value corresponding to a second memory write address corresponding to the angle is output.
前記画像変換部は、
演算部が、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出するための変換パラメータを算出する演算ステップと、
カウンタが、前記演算ステップにおいて算出した変換パラメータに含まれる画像回転の角度情報を入力し、入力角度情報に応じて前記第2メモリ書き込みアドレスに相当するカウンタ値を異なるカウンタ値を出力するカウンタ値出力ステップと、
座標変換部が、前記演算ステップにおいて算出した変換パラメータに基づいて、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する座標変換ステップと、
補間処理部が、前記座標変換ステップにおいて算出した対応点情報に従って、前記第2メモリの各画素位置に対応する画素値を決定する補間処理ステップと、
を有することを特徴とする請求項7に記載の画像処理方法。
The image conversion unit
A calculation step for calculating a conversion parameter for calculating a corresponding point of the first memory corresponding to each pixel position of the second memory;
A counter value that outputs angle information of image rotation included in the conversion parameter calculated in the calculation step and outputs a counter value different from the counter value corresponding to the second memory write address according to the input angle information Steps,
A coordinate conversion step in which a coordinate conversion unit calculates a corresponding point in the first memory corresponding to each pixel position in the second memory based on the conversion parameter calculated in the calculation step;
An interpolation processing step in which an interpolation processing unit determines a pixel value corresponding to each pixel position of the second memory according to the corresponding point information calculated in the coordinate conversion step;
The image processing method according to claim 7, further comprising:
前記演算ステップは、
前記変換パラメータとして、前記第1メモリに格納された顔画像を前記第2メモリに格納する顔画像に変換する際に適用する画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを算出し、
前記座標変換ステップは、
画像縮小処理、または画像回転処理、または画像平行移動処理の少なくともいずれかの処理を規定する変換パラメータを適用して、前記第2メモリの各画素位置に対応する前記第1メモリの対応点を算出する処理を実行することを特徴とする請求項11に記載の画像処理方法。
The calculation step includes:
As the conversion parameter, at least one of an image reduction process, an image rotation process, and an image translation process applied when converting the face image stored in the first memory into the face image stored in the second memory Calculate the conversion parameter that defines the processing of
The coordinate transformation step includes
Applying a conversion parameter that defines at least one of image reduction processing, image rotation processing, and image parallel movement processing, to calculate corresponding points in the first memory corresponding to each pixel position in the second memory The image processing method according to claim 11, wherein the processing is performed.
画像処理装置において、入力顔画像の識別処理を行なわせるコンピュータ・プログラムであり、
画像変換部に、識別処理対象となる顔画像を入力させ、入力顔画像に対して画像変換を実行させて予め定められた設定を持つ画像に正規化する処理を実行させる画像変換ステップと、
類似度算出部に、前記画像変換部において変換された変換入力画像から求めた特徴量と、登録画像の特徴量との類似度を算出させる類似度算出ステップと、
一致判定手段に、前記類似度算出部の算出した類似度に基づいて入力顔画像と登録顔画像が一致するか否かを判定させる一致判定ステップを有し、
前記画像変換ステップは、
正規化処理の対象とする顔画像を格納した第1メモリから、顔画像を取得して画像変換による正規化を実行して正規化後の顔画像を第2メモリに格納する処理を実行させるステップと、
メモリ制御部の制御により、前記第1メモリに正規化処理の対象とする顔画像の一部のみを格納させ、前記第2メモリに対する正規化処理後の画像の書き込みの進行に応じて、前記第1メモリの格納データの更新処理を実行させるメモリ制御ステップを含むことを特徴とするコンピュータ・プログラム。
In the image processing apparatus, a computer program for performing input face image identification processing,
An image conversion step for causing the image conversion unit to input a face image to be subjected to identification processing, executing image conversion on the input face image, and performing processing to normalize to an image having a predetermined setting;
A similarity calculation step for causing the similarity calculation unit to calculate the similarity between the feature amount obtained from the converted input image converted by the image conversion unit and the feature amount of the registered image;
A match determination step for causing the match determination means to determine whether or not the input face image and the registered face image match based on the similarity calculated by the similarity calculation unit;
The image conversion step includes
A step of acquiring a face image from the first memory storing the face image to be normalized and executing normalization by image conversion to store the normalized face image in the second memory When,
Under the control of the memory control unit, only a part of the face image to be normalized is stored in the first memory, and in accordance with the progress of the writing of the image after the normalization process to the second memory, the first memory A computer program comprising a memory control step for executing a process of updating stored data in one memory.
JP2007024027A 2007-02-02 2007-02-02 Image processing apparatus, image processing method, and computer program Pending JP2008191817A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007024027A JP2008191817A (en) 2007-02-02 2007-02-02 Image processing apparatus, image processing method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007024027A JP2008191817A (en) 2007-02-02 2007-02-02 Image processing apparatus, image processing method, and computer program

Publications (1)

Publication Number Publication Date
JP2008191817A true JP2008191817A (en) 2008-08-21

Family

ID=39751879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007024027A Pending JP2008191817A (en) 2007-02-02 2007-02-02 Image processing apparatus, image processing method, and computer program

Country Status (1)

Country Link
JP (1) JP2008191817A (en)

Similar Documents

Publication Publication Date Title
JP2008191816A (en) Image processing apparatus, image processing method, and computer program
US9053388B2 (en) Image processing apparatus and method, and computer-readable storage medium
JP5406705B2 (en) Data correction apparatus and method
Lei et al. An efficient 3D face recognition approach using local geometrical signatures
JP4321350B2 (en) Parameter estimation method, parameter estimation device, and verification method
US8331616B2 (en) Face image processing apparatus, face image processing method, and computer program
US9117111B2 (en) Pattern processing apparatus and method, and program
CN102375974B (en) Information processing apparatus and information processing method
JP5121506B2 (en) Image processing apparatus, image processing method, program, and storage medium
JP2008152530A (en) Face recognition device, face recognition method, Gabor filter application device, and computer program
CN113508420B (en) Object tracking device, object tracking method and storage medium
WO2012117687A1 (en) Posture estimation device, posture estimation system, and posture estimation method
EP2704056A2 (en) Image processing apparatus, image processing method
JP6071002B2 (en) Reliability acquisition device, reliability acquisition method, and reliability acquisition program
JP2009015614A (en) Image processing apparatus, image processing method, and computer program
US11017262B2 (en) Method and device to determine image features using multi-resolution gradient analysis
CN108334876A (en) Tired expression recognition method based on image pyramid local binary pattern
CN111652018B (en) Face registration method and authentication method
JP4616841B2 (en) Image clustering using distance, local linear structure and affine symmetry
US10445546B2 (en) Authentication method and authentication apparatus using synthesized code for iris
JP2013015891A (en) Image processing apparatus, image processing method, and program
JP5625196B2 (en) Feature point detection device, feature point detection method, feature point detection program, and recording medium
Quan et al. Statistical shape modelling for expression-invariant face analysis and recognition
JP2008191817A (en) Image processing apparatus, image processing method, and computer program
Kwon et al. Rolled fingerprint construction using MRF-based nonrigid image registration