JP2011086263A - Data processing apparatus, and processing method therefor - Google Patents
Data processing apparatus, and processing method therefor Download PDFInfo
- Publication number
- JP2011086263A JP2011086263A JP2009240872A JP2009240872A JP2011086263A JP 2011086263 A JP2011086263 A JP 2011086263A JP 2009240872 A JP2009240872 A JP 2009240872A JP 2009240872 A JP2009240872 A JP 2009240872A JP 2011086263 A JP2011086263 A JP 2011086263A
- Authority
- JP
- Japan
- Prior art keywords
- parameter
- result
- processing
- determination
- data processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は、入力されたデータに対して繰り返しデータ処理を行なうデータ処理装置及びその処理方法に関するものである。 The present invention relates to a data processing apparatus that repeatedly processes input data and a processing method thereof.
従来、デジタルカメラやプリンタにおいて、入力画像中の人物や顔といった特定の被写体を検出し、検出された被写体に適した処理を行なう技術が提案されている。この特定の被写体を検出する一例として、顔に対して肌色補正処理を行なうための「顔検出処理」がある。 2. Description of the Related Art Conventionally, there has been proposed a technique for detecting a specific subject such as a person or a face in an input image in a digital camera or a printer, and performing processing suitable for the detected subject. As an example of detecting this specific subject, there is a “face detection process” for performing a skin color correction process on the face.
この顔検出処理には様々な手法が提案されており、例えばViola&Jones手法や、人間の顔の対称的特徴、テンプレートマッチング、ニューラルネットワークなどを利用することにより、人間の顔を検出する方法が示されている。 Various methods have been proposed for this face detection process. For example, a method of detecting a human face by using a Viola & Jones method, a symmetrical feature of a human face, template matching, a neural network, etc. is shown. ing.
また、顔検出処理を行なう際に、内部メモリの回路規模を抑制しつつ処理を高速化するための従来技術として、キャッシュ手法やプリフェッチ手法(次に必要となるパラメータを事前に準備する方法)が広く用いられている。キャッシュ手法とは、キャッシュメモリにパラメータを保持しておき、メモリが一杯になった場合、最古のパラメータから消していく方法である。一方、プリフェッチ手法とは、次に必要となるパラメータをパラメータ保持部に取得しておく方法である。 In addition, when performing face detection processing, as a conventional technique for speeding up processing while suppressing the circuit scale of the internal memory, there are a cache method and a prefetch method (a method for preparing parameters required next in advance). Widely used. The cache method is a method in which parameters are stored in a cache memory and deleted from the oldest parameters when the memory becomes full. On the other hand, the prefetch method is a method in which parameters required next are acquired in a parameter holding unit.
しかしながら、内部メモリの回路規模を抑制しつつ処理を高速化するための従来技術であるキャッシュ手法やリフェッチ手法では、以下のような問題があった。 However, the conventional cache method and refetch method for increasing the processing speed while suppressing the circuit scale of the internal memory have the following problems.
最古の辞書データから消すようなキャッシュ手法では、処理がパラメータ保存の数より多いステップ処理へ進んでから誤判定になった場合、次の入力データ処理では、必ず全辞書データの再ロードが必要であった。そのため、キャッシュ効果が全くでないという問題があった。 In the cache method that erases from the oldest dictionary data, if the process proceeds to a step process that has more parameters than the number of saved parameters and an erroneous determination is made, the next input data process must be reloaded with all dictionary data. Met. Therefore, there is a problem that the cache effect is not at all.
また、プリフェッチ手法では、次に必要となる辞書データが次ステップ用辞書データであると予測してプリフェッチを行なうが、認識処理では、予測が外れることがあるという特徴がある。よって、プリフェッチ手法では、例えばステップ2の処理中に辞書データ3のロードを行なうが、ステップ2の処理結果が誤判定になった場合、辞書データ3のロードが無駄になる。更に、次に必要となる辞書データ1が削除されてしまうので、再度辞書データ1をロードする時間がかかるという問題があった。
Further, the prefetch method performs prefetching by predicting that the next required dictionary data is the dictionary data for the next step, but the recognition process has a feature that the prediction may be lost. Therefore, in the prefetch method, for example, the
本発明は、過去の処理履歴を用いてプリフェッチを行なうか否かを判定することにより、無駄なプリフェッチを軽減し、パラメータロードによる待ち時間を短縮することを目的とする。 An object of the present invention is to reduce useless prefetch and reduce waiting time due to parameter loading by determining whether or not to perform prefetch using a past processing history.
本発明は、入力画像を示すデータに対してパラメータ保持手段に保持されたパラメータによる照合処理を行なうデータ処理装置であって、
前記照合処理の結果を保持する処理履歴保持手段と、
前記保持された前記照合処理の結果に応じて、次の照合処理に使用されるパラメータをプリフェッチするか否かを判定する判定手段と、
前記判定の結果に基づいて前記次の照合処理に使用されるパラメータを取得するパラメータ取得手段と、
を有することを特徴とする。
The present invention is a data processing apparatus that performs a collation process using data held in a parameter holding unit for data indicating an input image,
Processing history holding means for holding the result of the matching process;
A determination unit that determines whether to prefetch a parameter used for the next matching process, according to the held result of the matching process;
Parameter acquisition means for acquiring a parameter used for the next matching process based on the result of the determination;
It is characterized by having.
本発明によれば、過去の処理履歴を用いてプリフェッチを行なうか否かを判定することにより、無駄なプリフェッチを軽減し、パラメータロードによる待ち時間を短縮できる。従って、内部メモリの回路規模を抑制しつつ処理の高速化を図ることが可能なデータ処理装置を実現することができる。 According to the present invention, it is possible to reduce useless prefetch and reduce waiting time due to parameter loading by determining whether or not to perform prefetch using past processing history. Therefore, it is possible to realize a data processing apparatus capable of increasing the processing speed while suppressing the circuit scale of the internal memory.
以下、図面を参照しながら発明を実施するための形態について詳細に説明する。本実施形態では、デジタルカメラやプリンタにおいて、入力された画像中の人物の顔をパターン照合処理により認識する認識処理、例えばViola&Jones手法を例に挙げて説明する。 Hereinafter, embodiments for carrying out the invention will be described in detail with reference to the drawings. In the present embodiment, a description will be given of a recognition process for recognizing a human face in an input image by a pattern matching process, for example, a Viola & Jones technique in a digital camera or a printer.
また、データ処理装置はデジタルカメラやプリンタに搭載され、入力画像に対して繰り返しパターン照合処理を行ない、処理結果に応じて次のパターン照合処理を行なうか否かを決定する。 The data processing apparatus is mounted on a digital camera or printer, repeatedly performs pattern matching processing on the input image, and determines whether or not to perform the next pattern matching processing according to the processing result.
[第1の実施形態]
ここで、過去の処理履歴を用いて入力画像と照合するパラメータをプリフェッチするか否かを判定し、判定の結果に応じてパラメータをプリフェッチする処理を、図1〜図3を用いて説明する。尚、パラメータは、パターン照合処理に必要な特徴量や正誤判定(顔か非顔かの判定)の基準に用いる閾値などであり、以下では辞書データと称す。また、照合処理毎に、正誤判定を行なう処理単位のことをステップと称す。また、認識処理は動画に適用しても良く、その場合、動画の各フレームに対して認識処理を行なうことになる。
[First Embodiment]
Here, processing for determining whether to prefetch a parameter to be collated with an input image using a past processing history and prefetching the parameter according to the determination result will be described with reference to FIGS. The parameter is a feature amount necessary for pattern matching processing, a threshold value used as a criterion for correct / incorrect determination (determination of face or non-face), and is hereinafter referred to as dictionary data. In addition, a processing unit for performing correctness determination for each verification process is referred to as a step. In addition, the recognition process may be applied to a moving image. In this case, the recognition process is performed on each frame of the moving image.
図1は、第1の実施形態におけるデータ処理装置の構成を示すブロック図である。図1において、演算部101は、現在処理中のフレームの矩形画像と、現在処理中のステップで必要な辞書データとを受け取り、照合処理を行ない、処理結果を出力する。ここで照合処理は、図2に示すように、ステップ0(201)、ステップ1(202)、ステップ2(203)、…、で行なわれ、処理結果として正誤判定が出力される。図3に示すように、ステップ0では、特徴量0(301)と矩形画像とが照合され(303)、ステップ1では、特徴量1(302)と矩形画像とが照合される(304)。
FIG. 1 is a block diagram illustrating a configuration of a data processing device according to the first embodiment. In FIG. 1, a
図1に戻り、処理履歴保持部102は演算部101から出力された処理結果を保持する。パラメータ取得部103は演算部101から出力された処理結果を受け取ることにより次に必要な辞書データを検知する。ここで、パラメータ保持部104及び105の何れにも必要な辞書データが保持されていない場合、必要な辞書データのロード処理を行なう。ロード処理を行なうために、パラメータ取得部103は不図示の制御部にパラメータ入力要求を出力する。そして、パラメータ入力要求に対するパラメータ入力応答を受けると、パラメータ取得部103はパラメータ保持部104又は105に対してパラメータロード許可を出力する。これにより、パラメータロード許可信号を受け取ったパラメータ保持部104又は105が入力されるパラメータをロードする。
Returning to FIG. 1, the processing
必要な辞書データのロードが完了した場合や既に必要な辞書データがパラメータ保持部104又は105に保持されている場合には、パラメータ取得部103はパラメータ切替部106へパラメータ切替指示を行なう。パラメータ切替指示は、演算部101が必要なパラメータを使用して演算が行なえるように、パラメータ保持部104又は105を切り替えるためのセレクト信号である。このパラメータの切り替えが終わると、演算部101は処理を開始する。
When loading of necessary dictionary data is completed or when necessary dictionary data is already held in the
処理開始を指示すると同時に、パラメータ取得部103は現在処理中のステップの番号をプリフェッチ判定部107へ出力する。一方、プリフェッチ判定部107は、入力したステップの番号に基づいて、次のステップで必要となる辞書データをプリフェッチするか否かの判定を行ない、判定の結果をパラメータ取得部103へ返す。具体的には、演算部101から現在処理中の領域を示すアドレス情報を受け取り、処理履歴保持部102に保持されている前フレームの処理結果を参照することにより判定処理が行なわれる。
Simultaneously with instructing the start of processing, the
次に、パラメータ取得部103がプリフェッチを行なうという判定の結果を受けると、次ステップに必要なパラメータのロードを要求するために、次ステップのパラメータ入力要求を出す。そして、パラメータ入力要求に対するパラメータ入力応答を受けると、現在のステップで使用されていないもう一方のパラメータ保持部に対して、パラメータロード許可を出力し、入力されるパラメータをそのパラメータ保持部にロードする。
Next, when the
パラメータ取得部103が演算部101からの処理結果を受け、正判定であった場合は、次ステップの照合処理が行なわれる。ここで、上述のプリフェッチにより、次ステップのパラメータが既にパラメータ保持部に保持されている場合は、パラメータ切替部106へ切替指示を出すだけで、次のステップの照合処理を行なうことができる。
When the
次に、処理履歴保持部102に保持される情報を詳細に説明する。この処理履歴保持部102には、演算部101から出力された処理結果が保持される。ここで、処理結果とは、照合処理を行なった領域のアドレス情報と、その領域の照合処理が正判定となった最後のステップの番号である。領域のアドレス情報とは、フレームを識別するための情報と、フレーム内の矩形画像領域を識別するための情報とから構成される。例えば、フレームを識別するための情報としてフレーム番号を用いることができる。また、フレーム内の矩形画像領域を識別するための情報としては、矩形画像領域の右上の画素のアドレスを用いることができる。
Next, information held in the processing
続いて、処理履歴保持部102に保持される、ステップの番号について説明する。ある領域における処理結果が、あるステップで誤判定となった場合、そのステップの前までの処理結果は正判定であると考えられる。よって、そのステップの前の番号が処理履歴保持部102に保持されることになる。例えば、ステップ3で照合処理が誤判定となった場合、ステップ2が処理履歴保持部102に保持される。また同様に、ステップ1で照合処理が誤判定となった場合、ステップ0が処理履歴保持部102に保持される。従って、最終ステップで照合処理が正判定となった場合には、その最終ステップの番号が処理履歴保持部102に保持される。
Next, step numbers held in the processing
次に、プリフェッチ判定部107での判定処理を詳細に説明する。プリフェッチ判定部107は、演算部101から現在処理中の領域を示すアドレス情報を受け取る。受け取ったアドレス情報に基づき、処理履歴保持部102に保持されている現在処理中の矩形画像領域の前フレームの処理結果を参照して、前フレームの照合処理が正判定となった最後のステップの番号を取得する。更に、プリフェッチ判定部107はパラメータ取得部103から現在処理中のステップの番号を受け取り、次ステップの番号と処理履歴保持部102から取得されたステップの番号との比較を行なう。比較の結果、次ステップの番号が処理履歴保持部102から取得されたステップの番号以下であれば、プリフェッチを行なうと判定する。そして、判定の結果はパラメータ取得部103に出力される。
Next, the determination process in the
ここで、動画を用いた認識処理の場合、前フレームの処理結果と現在処理中のフレームの処理結果とは非常に近い結果になる。これは、動画像のフレームレートに対して、顔や人体などの認識対象物の移動速度が十分に遅いからである。即ち、前フレームの処理結果が正判定となったステップまでは現在処理中のフレームの処理結果も正判定となる可能性が高い。よって、前ステップで正判定となったステップまで辞書データのプリフェッチを行なうことで、無駄なプリフェッチを削減することが可能になる。 Here, in the case of recognition processing using a moving image, the processing result of the previous frame is very close to the processing result of the currently processed frame. This is because the moving speed of the recognition target object such as the face or the human body is sufficiently slow with respect to the frame rate of the moving image. That is, there is a high possibility that the processing result of the currently processed frame is also positively determined until the step in which the processing result of the previous frame is positively determined. Therefore, it is possible to reduce useless prefetching by prefetching dictionary data up to the step in which a positive determination is made in the previous step.
次に、第1の実施形態における認識処理の処理時間を、図4〜図5を用いて説明する。この認識処理の処理時間を説明する前に、説明に必要な用語を定義する。まず、ステップ処理時間とは、各ステップの照合処理にかかる時間のことである。パラメータロード時間とは、外部メモリに保存されている辞書データを、パラメータ保持部へロードするために必要な時間である。ここでは、S1、S2、S3のパラメータロード時間が1、2、4倍と徐々に大きくなる例を示す。これは、ステップが後段に行くに従って、照合処理の数が多くなるものと仮定したためである。また、ステップ処理時間は全て同じ例を示す。これは、ハードウェアにおいては、複数の照合処理を並列実行できるように、作成することが可能であるからである。また、ステップ処理時間とS1のパラメータロード時間とが同じと仮定している。 Next, the processing time of the recognition process in the first embodiment will be described with reference to FIGS. Before explaining the processing time of this recognition process, terms necessary for the explanation are defined. First, the step processing time is the time required for the collation processing of each step. The parameter loading time is a time required for loading dictionary data stored in the external memory into the parameter holding unit. Here, an example is shown in which the parameter loading times of S1, S2, and S3 are gradually increased to 1, 2, and 4 times. This is because it is assumed that the number of collation processes increases as the step goes to the subsequent stage. All step processing times show the same example. This is because the hardware can be created so that a plurality of collation processes can be executed in parallel. Further, it is assumed that the step processing time and the parameter loading time of S1 are the same.
図4は、第1の実施形態における認識処理を説明するための図で、図4に示す横方向はライン方向であり、縦方向は照合処理の深さである。この例では、あるライン方向の一番左端の矩形画像領域A1に対しては、S1の照合処理が正判定で、次のS2の照合処理が誤判定となった例である。また、矩形画像領域A2に対しては、S1、S2の照合処理が正判定で、S3の照合処理が誤判定となった例である。このように、矩形画像領域に対する各ステップの照合処理は、結果が誤判定となるか、全ての照合処理が正判定となるまで行なわれる。 FIG. 4 is a diagram for explaining the recognition processing in the first embodiment. The horizontal direction shown in FIG. 4 is the line direction, and the vertical direction is the depth of the matching processing. In this example, for the leftmost rectangular image area A1 in a certain line direction, the collation process of S1 is a positive determination, and the next collation process of S2 is an erroneous determination. Further, for the rectangular image area A2, the collation process of S1 and S2 is a positive determination, and the collation process of S3 is an erroneous determination. As described above, the collation process in each step for the rectangular image area is performed until the result is erroneously determined or all the collation processes are positively determined.
図5は、第1の実施形態における認識処理の処理時間を示す図である。図5において、最上段の処理サイクルは演算部101が照合処理を行なっている時間である。また、その下のA1(S1)は矩形画像領域A1に対するステップ1の照合処理にかかるサイクルである。その下のS1、S2、S3は辞書データのロードサイクルである。ここで、S1はステップ1で使用される辞書データのロードサイクルを、S2はステップ2で使用される辞書データのロードサイクルを示す。また、最下段はパラメータ保持部104及び105に保持されている辞書データを示す。
FIG. 5 is a diagram illustrating the processing time of the recognition process in the first embodiment. In FIG. 5, the uppermost processing cycle is a time during which the
図5において、まず、S1に必要なパラメータのロードを行なう。プリフェッチ判定部107は、演算部101がA1に対してS1の照合処理を行なうと同時に、現在処理中のA1に対して、どのステップまでプリフェッチを行なうべきかを決定する。プリフェッチ判定部107はA1の前フレームにおける処理結果を処理履歴保持部102から参照する。ここで、前フレームにおける処理結果がS1まで正判定であるため、現在処理中のA1に関してS1まで辞書データのプリフェッチを行なうと決定する。そして、プリフェッチ判定部107はパラメータ取得部103から現在処理中のステップの番号(S1)を受け取り、次ステップ(S2)の辞書データをプリフェッチするか否かの判定を行なう。ここで、受け取った番号がプリフェッチを行なうと決定したステップと同じ番号なので、次のS2の辞書データのプリフェッチを行なわないと判定する。判定の結果はパラメータ取得部103に返され、これにより、パラメータ取得部103はS2の辞書データのプリフェッチを行なわない。
In FIG. 5, first, parameters necessary for S1 are loaded. The
続いて、演算部101において、A1(S1)の結果が誤判定となると、次処理であるA2(S1)を行なう。プリフェッチ判定部107は、A2に対してA1と同様に、どのステップまでプリフェッチを行なうべきか否かを決定する。A2は前フレームでS2まで照合処理が正判定であるため、S2まではプリフェッチを行なうと決定する。更に、プリフェッチ判定部107はパラメータ取得部103から現在処理中のステップの番号(S1)を受け取り、次のS2の辞書データをプリフェッチするか否か判定を行なう。ここで、受け取った番号がプリフェッチを行なうと決定したステップと同じ番号でないので、S2の辞書データのプリフェッチを行なうと判定する。判定の結果はパラメータ取得部103に返され、パラメータ取得部103はS2の辞書データのプリフェッチを行なう。
Subsequently, when the result of A1 (S1) is erroneously determined in the
続いて、A2(S1)の結果が正判定となり、この時点でS2の辞書データのプリフェッチをまだ行なっているため、S2の辞書データのプリフェッチが完了するまで、処理を待つ。辞書データのプリフェッチが完了すると、パラメータ切替を行ない、A2(S2)の処理を行なう。A2に対してはプリフェッチの判定結果がS2までなので、パラメータ取得部103はS3の辞書データのプリフェッチは行なわない。この時点で、パラメータ保持部104及び105にはS1及びS2のパラメータが保持されている。そして、A2(S2)の処理結果が誤判定となると、次のA3(S1)を行なうが、S1のパラメータがパラメータ保持部104に保持されているため、引き続き照合処理を開始できる。
Subsequently, the result of A2 (S1) becomes a positive determination, and since the dictionary data prefetching of S2 is still performed at this time, the process waits until the prefetching of dictionary data of S2 is completed. When dictionary data prefetch is completed, parameters are switched and the process of A2 (S2) is performed. Since the determination result of prefetch for A2 is up to S2, the
このように、処理結果がプリフェッチの判定の結果と一致した場合、キャッシュ手法のように、辞書データのロード待ちによる処理停止が起きない。また、必ずプリフェチするために無駄な辞書データのロード時間中、処理が停止し、必要な辞書データを上書きしてしまうことで生じる、次に必要な辞書データの再ロードの必要がない。 As described above, when the processing result matches the result of the prefetch determination, the processing stop due to the dictionary data load waiting does not occur unlike the cache method. Further, there is no need to reload the next necessary dictionary data, which is caused by overwriting the necessary dictionary data while the processing is stopped during the loading time of unnecessary dictionary data for prefetching.
従って、第1の実施形態によれば、A3(S3)の処理が終了するまで11サイクルとなり、速く処理できていることがわかる。 Therefore, according to the first embodiment, it is 11 cycles until the processing of A3 (S3) is completed, and it can be seen that the processing is fast.
次に、第1の実施形態におけるデータ処理装置の認識処理を、図6を用いて詳細に説明する。認識処理は、F601〜F615で行なわれる。F601で、認識処理がスタートすると、F602で、切り出された(或いはアドレス指定された)矩形画像領域のデータが入力される。F603で、入力されたデータ(入力データ)に対してプリフェッチ判定値計算処理を行なう。プリフェッチ判定値計算処理では、入力データに対して、どのステップまでプリフェッチを行なうか否かを決定する。ここでは、1フレーム前に入力されたデータの処理が最後に正判定となったステップの処理までプリフェッチを行なうものとする。 Next, the recognition processing of the data processing apparatus in the first embodiment will be described in detail with reference to FIG. The recognition process is performed in F601 to F615. When the recognition process starts in F601, data of the cut-out (or addressed) rectangular image area is input in F602. In F603, prefetch determination value calculation processing is performed on the input data (input data). In the prefetch determination value calculation process, it is determined to what step prefetching is performed for input data. Here, it is assumed that prefetching is performed up to the processing of the step in which the processing of data input one frame before becomes the last positive determination.
プリフェッチ判定値計算処理が完了すると、F604〜F611、F613〜F615で、順次ステップの照合処理を実行する。各ステップの照合処理では、まず、F605で次ステップの辞書データがあるか否かの判定を行なう。ここで、辞書データがある場合、F606へ処理を進め、パラメータ取得部103がパラメータ切替部106に対してパラメータ切替指示を出し、パラメータを切り替える。この切り替えにより、演算部101は次ステップの照合処理に必要な辞書データによるパターン照合処理が可能となる。
When the prefetch determination value calculation processing is completed, step collation processing is sequentially executed in F604 to F611 and F613 to F615. In the collation process at each step, first, at F605, it is determined whether there is dictionary data for the next step. If there is dictionary data, the process proceeds to F606, where the
一方、F605で、辞書データがない場合、F613へ処理を進め、プリフェッチ処理中であるか否かの判定を行なう。ここで、プリフェッチ処理中の場合、F615へ処理を進め、プリフェッチ処理の完了を待つ。また、プリフェッチ処理中でない場合、F614へ処理を進め、パラメータの取得処理を行ない、F615でパラメータの取得処理が完了するまで待つ。尚、F614におけるパラメータの取得処理はパラメータのプリフェッチ処理ではなく、通常のパラメータのロード処理である。 On the other hand, if there is no dictionary data in F605, the process proceeds to F613 to determine whether prefetch processing is in progress. If prefetch processing is in progress, the process advances to F615 to wait for completion of the prefetch processing. If the prefetch process is not in progress, the process proceeds to F614, the parameter acquisition process is performed, and the process waits until the parameter acquisition process is completed in F615. The parameter acquisition process in F614 is not a parameter prefetch process but a normal parameter load process.
F615で、プリフェッチ、或いはパラメータのロード処理により、パラメータの取得処理が完了すると、F606へ処理を進め、パラメータ取得部103がパラメータ切替部106に対してパラメータ切替指示を出し、パラメータを切り替える。この切り替えにより、演算部101は次ステップの照合処理に必要な辞書データによるパターン照合処理が可能となる。
In F615, when the parameter acquisition processing is completed by prefetch or parameter loading processing, the processing proceeds to F606, and the
次に、F607で、次ステップの辞書データをプリフェッチするか否かの判定を行なう。この判定では、次ステップの番号がF603で取得された判定値以下の番号であれば、プリフェッチを行なうと判定する。ここで、プリフェッチを行なわないと判定した場合は、F609へ処理を進めるが、プリフェッチを行なうと判定した場合は、F608へ処理を進め、次ステップに必要なパラメータのプリフェッチ処理を開始する。パラメータ取得部103がパラメータ(入力)要求を出す。このパラメータ(入力)要求を出した後、F609で、照合処理を開始する。
Next, in F607, it is determined whether or not to prefetch dictionary data in the next step. In this determination, if the number of the next step is a number equal to or smaller than the determination value acquired in F603, it is determined that prefetching is performed. If it is determined that prefetching is not performed, the process proceeds to F609. If it is determined that prefetching is performed, the process proceeds to F608, and prefetch processing of parameters necessary for the next step is started. The
照合処理が終わると、F610で、照合処理の結果を判定する。ここで、正判定の場合は、F611へ処理を進め、最終段のステップの照合処理が完了したか否かを判定する。判定の結果、最終段のステップの照合処理が完了していなければ、F604に戻り、次のステップの照合処理を行なう。また、F611で最終段のステップの照合処理が完了した場合、或いはF610で、処理結果が誤判定であれば、F612へ処理を進め、最終矩形画像領域のデータまで認識処理を行なったか否かの判定を行なう。そして、最終矩形画像領域のデータまで認識処理が完了していなければ、F601に戻り、次の矩形画像領域のデータに対する認識処理を行なう。一方、最終矩形画像領域のデータに対する処理が完了したならば、この認識処理を終了する。 When the collation process ends, the result of the collation process is determined in F610. Here, in the case of a positive determination, the process proceeds to F611, and it is determined whether or not the collation process of the final step is completed. If the result of determination is that the collation processing for the final step has not been completed, the process returns to F604 to perform collation processing for the next step. Further, when the final step collation process is completed in F611, or if the process result is an erroneous determination in F610, the process proceeds to F612 and whether or not the recognition process has been performed up to the data of the final rectangular image area. Make a decision. If the recognition process has not been completed up to the data of the final rectangular image area, the process returns to F601 to perform the recognition process for the data of the next rectangular image area. On the other hand, when the process for the data of the final rectangular image area is completed, the recognition process is terminated.
第1の実施形態によれば、過去の処理履歴を用いてプリフェッチを行なうか否かを判定することにより、無駄なプリフェッチを軽減し、パラメータロードによる待ち時間を短縮することができる。 According to the first embodiment, it is possible to reduce useless prefetch and reduce waiting time due to parameter loading by determining whether or not to perform prefetch using the past processing history.
[第2の実施形態]
次に、図面を参照しながら本発明に係る第2の実施形態を詳細に説明する。尚、第2の実施形態におけるデータ処理装置の構成は、第1の実施形態で説明したデータ処理装置の構成と同じであるが、プリフェッチ判定部の動作が異なる。
[Second Embodiment]
Next, a second embodiment according to the present invention will be described in detail with reference to the drawings. The configuration of the data processing device in the second embodiment is the same as the configuration of the data processing device described in the first embodiment, but the operation of the prefetch determination unit is different.
第1の実施形態では、処理履歴保持部102から現在処理を行なっている矩形画像領域のデータの前フレームの処理結果を参照し、その処理結果をそのまま判定結果としてパラメータ取得部103に出力していた。
In the first embodiment, the processing result of the previous frame of the data of the rectangular image area currently being processed is referred to from the processing
第2の実施形態では、プリフェッチ判定部107が、現在処理を行なっている矩形画像領域の近傍における前フレームの処理結果を参照し、処理結果の平均値を求め、その平均値を判定の結果として、パラメータ取得部103に出力する。
In the second embodiment, the
ここで、現在処理を行なっている矩形画像領域の1画素近傍の処理結果を判定の結果とする場合を説明する。まず、現在処理を行なっている矩形画像領域のアドレスを(X,Y)とする。ここで、Xは画像のライン方向の位置を表し、Yは画像のカラム方向の位置を表す。 Here, a case will be described in which the processing result in the vicinity of one pixel of the rectangular image region currently being processed is used as the determination result. First, assume that the address of the rectangular image area currently being processed is (X, Y). Here, X represents the position in the line direction of the image, and Y represents the position in the column direction of the image.
プリフェッチ判定部107は処理履歴保持部102から、前フレームの以下に示す9つのアドレスが示す矩形画像領域の処理結果を参照する。
The
(X-1,Y-1)、(X,Y-1)、(X+1,Y-1)、
(X-1,Y)、(X,Y)、(X+1,Y)、
(X-1,Y+1)、(X,Y+1)、(X+1,Y+1)
1画素近傍領域の処理結果の平均を得るために、参照した9つの処理結果の和を求め、9で割る。尚、画像の縁近辺では、9画素分の処理結果が得られない可能性がある。その場合には、得られた処理結果だけの和を取り、得られた処理結果の数で割ることで平均値を得ることができる。また、割った結果が、割り切れない可能性がある。その場合には、得られ結果を四捨五入しても切捨てしても切り上げしても構わない。
(X-1, Y-1), (X, Y-1), (X + 1, Y-1),
(X-1, Y), (X, Y), (X + 1, Y),
(X-1, Y + 1), (X, Y + 1), (X + 1, Y + 1)
In order to obtain the average of the processing results in the vicinity of one pixel, the sum of the nine processing results referred to is obtained and divided by nine. Note that there is a possibility that the processing result for nine pixels may not be obtained near the edge of the image. In that case, an average value can be obtained by taking only the sum of the obtained processing results and dividing by the number of the obtained processing results. In addition, the result of division may not be divisible. In that case, the obtained result may be rounded off, rounded down or rounded up.
プリフェッチ判定部107は得られた平均値をパラメータ取得部103に出力し、パラメータ取得部103がその平均値のステップまではパラメータのプリフェッチを行なう。
The
[第3の実施形態]
次に、図面を参照しながら本発明に係る第2の実施形態を詳細に説明する。第3の実施形態におけるデータ処理装置の構成を、図7を用いて説明する。第3の実施形態のデータ処理装置の構成は、第1の実施形態のデータ処理装置の構成に対して動きベクトル検出部108を加えたものである。以下、動きベクトル検出部108の検出処理と、その結果を参照してプリフェッチを行なうか否かを判定するプリフェッチ判定部107の判定処理を説明する。
[Third Embodiment]
Next, a second embodiment according to the present invention will be described in detail with reference to the drawings. The configuration of the data processing apparatus according to the third embodiment will be described with reference to FIG. The configuration of the data processing apparatus of the third embodiment is obtained by adding a motion
動きベクトル検出部108は、フレーム間の各画素における物体の動きベクトルを検出する。検出の結果としては、各画素における動きベクトルの方向及びベクトルの大きさが得られる。例えば、動きベクトルが画像のX方向に+2、Y方向に−1であれば(+2,-1)のような形で結果が得られる。
The motion
プリフェッチ判定部107は、動きベクトル検出部108から現在処理を行なっている矩形画像領域の動きベクトルを参照する。また、処理履歴保持部102に保持されている前フレームの処理結果を参照する際に、参照した動きベクトルを用いて参照先のアドレスにオフセットを加える。
The
ここで、現在処理を行なっている矩形画像領域のアドレスが(X,Y)で、当該領域における動きベクトルが(+2,-1)で与えられた場合を説明する。この場合、オフセットを加えたアドレスは(X-2,Y+1)となり、処理履歴保持部102から前フレームの処理結果を参照する場合、オフセットつきのアドレス(X-2,Y+1)を用いる。
Here, a case will be described in which the address of the rectangular image area currently being processed is (X, Y) and the motion vector in the area is given by (+2, -1). In this case, the address to which the offset is added is (X-2, Y + 1). When referring to the processing result of the previous frame from the processing
プリフェッチ判定部107は得られたオフセット付きアドレスの処理結果をパラメータ取得部103に出力し、パラメータ取得部103がオフセット付きアドレスの処理結果のステップまではパラメータのプリフェッチを行なう。
The
このように、参照先のアドレスに動きベクトルを用いてオフセットを加えることで物体の動きに対する補正が可能になり、より精度の高い予測が可能になる。特に、フレームを間引いて処理を行なう場合や移動速度の速い物体を認識する場合には、フレーム間の相関関係が低くなってしまうため、動き補正は有効である。 In this way, by adding an offset to the reference destination address using a motion vector, it is possible to correct the motion of the object, and it is possible to perform prediction with higher accuracy. In particular, when processing is performed with thinning out frames or when an object with a high moving speed is recognized, the correlation between frames becomes low, so that motion correction is effective.
上述した実施形態では、パラメータ保持部104及び105を明示的に分けて説明したが、同じパラメータ保持部のエリアを区別することで実施してもかまわない。
In the above-described embodiment, the
[他の実施例]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
[Other embodiments]
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
Claims (7)
前記照合処理の結果を保持する処理履歴保持手段と、
前記保持された前記照合処理の結果に応じて、次の照合処理に使用されるパラメータをプリフェッチするか否かを判定する判定手段と、
前記判定の結果に基づいて前記次の照合処理に使用されるパラメータを取得するパラメータ取得手段と、
を有することを特徴とするデータ処理装置。 A data processing apparatus for performing a collation process on data indicating an input image using a parameter held in a parameter holding unit,
Processing history holding means for holding the result of the matching process;
A determination unit that determines whether to prefetch a parameter used for the next matching process, according to the held result of the matching process;
Parameter acquisition means for acquiring a parameter used for the next matching process based on the result of the determination;
A data processing apparatus comprising:
前記判定手段は、前記処理履歴保持手段に保持されている処理結果を参照する際に前記動きベクトル検出手段の結果を用いて参照先のアドレスに補正を加えることを特徴とする請求項2に記載のデータ処理装置。 Motion vector detecting means for detecting motion between frames of the moving image;
3. The determination unit according to claim 2, wherein when the processing result stored in the processing history storage unit is referred to, the determination unit adds a correction to a reference destination address using the result of the motion vector detection unit. Data processing equipment.
前記データ処理装置の処理履歴保持手段が、前記照合処理の結果を保持する処理履歴保持工程と、
前記データ処理装置の判定手段が、前記保持された前記照合処理の結果に応じて、次の照合処理に使用されるパラメータをプリフェッチするか否かを判定する判定工程と、
前記データ処理装置のパラメータ取得手段が、前記判定の結果に基づいて前記次の照合処理に使用されるパラメータを取得するパラメータ取得工程と、
を有することを特徴とするデータ処理装置の処理方法。 A processing method of a data processing apparatus for performing a collation process on data indicating an input image using a parameter held in a parameter holding unit,
A process history holding step in which a processing history holding unit of the data processing apparatus holds a result of the matching process;
A determination step of determining whether or not the determination unit of the data processing device prefetches a parameter used for the next verification process according to the stored result of the verification process;
A parameter acquisition step of acquiring a parameter used for the next matching process based on the result of the determination, by the parameter acquisition means of the data processing device;
A processing method for a data processing apparatus, comprising:
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009240872A JP5448711B2 (en) | 2009-10-19 | 2009-10-19 | Data processing apparatus and processing method thereof |
US12/899,371 US8700860B2 (en) | 2009-10-16 | 2010-10-06 | Information processing apparatus, method and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009240872A JP5448711B2 (en) | 2009-10-19 | 2009-10-19 | Data processing apparatus and processing method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011086263A true JP2011086263A (en) | 2011-04-28 |
JP5448711B2 JP5448711B2 (en) | 2014-03-19 |
Family
ID=44079132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009240872A Expired - Fee Related JP5448711B2 (en) | 2009-10-16 | 2009-10-19 | Data processing apparatus and processing method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5448711B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012242969A (en) * | 2011-05-17 | 2012-12-10 | Canon Inc | Data processor, data processor control method and program |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008047124A (en) * | 2006-08-11 | 2008-02-28 | Samsung Electronics Co Ltd | Method and unit for processing computer graphics data |
JP2009086749A (en) * | 2007-09-27 | 2009-04-23 | Canon Inc | Pattern identification method, parameter learning method for identification and device |
JP2009116400A (en) * | 2007-11-01 | 2009-05-28 | Canon Inc | Information processing apparatus and information processing method |
-
2009
- 2009-10-19 JP JP2009240872A patent/JP5448711B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008047124A (en) * | 2006-08-11 | 2008-02-28 | Samsung Electronics Co Ltd | Method and unit for processing computer graphics data |
JP2009086749A (en) * | 2007-09-27 | 2009-04-23 | Canon Inc | Pattern identification method, parameter learning method for identification and device |
JP2009116400A (en) * | 2007-11-01 | 2009-05-28 | Canon Inc | Information processing apparatus and information processing method |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012242969A (en) * | 2011-05-17 | 2012-12-10 | Canon Inc | Data processor, data processor control method and program |
US9020211B2 (en) | 2011-05-17 | 2015-04-28 | Canon Kabushiki Kaisha | Data processing apparatus, control method therefor, and non-transitory computer-readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP5448711B2 (en) | 2014-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11961286B2 (en) | Performing object detection in an image | |
JP6871416B2 (en) | Methods and devices for determining facial image quality, electronics and computer storage media | |
US8805081B2 (en) | Object detection in an image | |
JP2015524115A (en) | High-speed pause detector | |
CN111667504B (en) | Face tracking method, device and equipment | |
WO2019085338A1 (en) | Electronic apparatus, image-based age classification method and system, and storage medium | |
CN105389575A (en) | Processing method and device for biological data | |
JP5371541B2 (en) | Data processing apparatus and processing method thereof | |
US8700860B2 (en) | Information processing apparatus, method and computer program | |
JP5778983B2 (en) | Data processing apparatus, data processing apparatus control method, and program | |
JP5448711B2 (en) | Data processing apparatus and processing method thereof | |
US8611599B2 (en) | Information processing apparatus, information processing method, and storage medium | |
JP2010146522A (en) | Face image tracking device, face image tracking method, and program | |
CN100377164C (en) | Method, device and storage medium for detecting face complexion area in image | |
JP5371565B2 (en) | Data processing apparatus, data processing method, and program | |
US8358803B2 (en) | Navigation using fourier phase technique | |
CN111833232A (en) | Image processing device | |
WO2022153481A1 (en) | Posture estimation apparatus, learning model generation apparatus, method, and computer-readable recordingmedium | |
US10895911B2 (en) | Image operation method and system for eye-tracking | |
JP6958951B2 (en) | Operation estimation device, operation estimation method, and program | |
CN107507124B (en) | Device and method for processing gray image background in system on chip | |
CN116579978A (en) | Product detection method and device | |
JP5692987B2 (en) | Information processing apparatus, information processing method, and computer program | |
CN117809370A (en) | Action recognition method and device, electronic equipment and storage medium | |
CN117953475A (en) | Fatigue driving detection method and device based on key point positioning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121017 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130705 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130903 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131125 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131224 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5448711 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |