JP2007174202A - Motion vector detecting device and method therefor - Google Patents

Motion vector detecting device and method therefor Download PDF

Info

Publication number
JP2007174202A
JP2007174202A JP2005368143A JP2005368143A JP2007174202A JP 2007174202 A JP2007174202 A JP 2007174202A JP 2005368143 A JP2005368143 A JP 2005368143A JP 2005368143 A JP2005368143 A JP 2005368143A JP 2007174202 A JP2007174202 A JP 2007174202A
Authority
JP
Japan
Prior art keywords
motion vector
vector
global
reliability
search
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.)
Withdrawn
Application number
JP2005368143A
Other languages
Japanese (ja)
Inventor
Daisuke Sakamoto
大輔 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005368143A priority Critical patent/JP2007174202A/en
Publication of JP2007174202A publication Critical patent/JP2007174202A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To detect motion vector, even for a moving image having a large motion. <P>SOLUTION: Rather than setting a search window about the current macro block as the center, a global vector, representing the motion of the current image and a reference image, and the reliability of the global vector, is used to set the shape and position of the search window in the reference image. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、動きベクトル検出装置及びその方法に関するものであり、更に詳しくは画像間の動きの大小を考慮した適応的な動きベクトルの検出が行える動きベクトル検出装置及び方法に関する。   The present invention relates to a motion vector detection apparatus and method, and more particularly to a motion vector detection apparatus and method capable of adaptive motion vector detection in consideration of the magnitude of motion between images.

近年、音声信号、映像信号など所謂マルチメディアに関連する情報のデジタル化が急進しており、これに対応して映像信号の圧縮符号化復号化技術が注目されている。圧縮符号化及び復号化技術により、映像信号の格納に必要な記憶容量や伝送に必要な帯域を減少させることができるため、マルチメディア産業には極めて重要な技術である。   In recent years, digitalization of information related to so-called multimedia such as audio signals and video signals has been advancing rapidly, and in response to this, compression coding and decoding techniques for video signals have attracted attention. Since compression encoding and decoding techniques can reduce the storage capacity required for storing video signals and the bandwidth required for transmission, this technique is extremely important for the multimedia industry.

これらの圧縮符号化復号化技術は、多くの映像信号が有する自己相関性の高さ(すなわち、冗長性)を利用して情報量/データ量を圧縮している。映像信号が有する冗長性には、時間冗長性及び二次元の空間冗長性があり、時間冗長性は、ブロック単位の動き推定及び動き補償を用いて低減することが出来、一方、空間冗長性は、離散コサイン変換(DCT)を用いて低減させることが出来る。   These compression encoding / decoding techniques compress the information amount / data amount by utilizing the high autocorrelation (ie, redundancy) of many video signals. Video signal redundancy includes temporal redundancy and two-dimensional spatial redundancy, which can be reduced using block-wise motion estimation and motion compensation, while spatial redundancy is It can be reduced using discrete cosine transform (DCT).

圧縮符号化復号化技術として知られるMPEG方式などではこれらの手法により映像信号の冗長性を低減させ、経時的に変わるビデオフレーム/フィールドのデータ圧縮効果を向上させる。時間冗長性を低減させるためのブロック単位の動き推定とは、連続して入力する参照フレーム/フィールド(過去のフレーム/フィールド)と現在フレーム/フィールドとの間で最も近似するブロックを探し出す作業であり、対応するブロックの移動方向、移動量を表すベクトルを動きベクトルという。従って、動き推定とは動きベクトルの推定と同義である。   In the MPEG system known as compression encoding / decoding technology, the redundancy of the video signal is reduced by these methods, and the data compression effect of the video frame / field changing with time is improved. The block-by-block motion estimation for reducing temporal redundancy is an operation of finding a block that is closest to a reference frame / field (past frame / field) that is continuously input and a current frame / field. A vector representing the moving direction and moving amount of the corresponding block is called a motion vector. Therefore, motion estimation is synonymous with motion vector estimation.

一般に動きベクトルを推定する方法としては、ブロックマッチング方式が用いられる。ブロックマッチング方式とは、参照フレーム/フィールドと現在フレーム/フィールドように2枚の映像をブロック単位で比較し、信号類型の整合度に基づいてブロック単位で動きを推定する方法をいう。かかるブロックマッチング方式により、参照フレーム/フィールドと現在フレーム/フィールドとからブロックごとに動きベクトルを推定し、推定された動きベクトルを用いて動き補償予測を行う。このブロックマッチング方式については例えば特許文献1に記載されているが、図2を用いて説明する。   In general, a block matching method is used as a method for estimating a motion vector. The block matching method refers to a method in which two images, such as a reference frame / field and a current frame / field, are compared in units of blocks, and motion is estimated in units of blocks based on the degree of matching of signal types. With this block matching method, a motion vector is estimated for each block from the reference frame / field and the current frame / field, and motion compensation prediction is performed using the estimated motion vector. This block matching method is described in Patent Document 1, for example, and will be described with reference to FIG.

図2はブロックマッチング方式を用いた動きベクトル検出装置を示すブロック図である。同図において動きベクトル検出装置は、現在フレーム/フィールド保存部20、参照フレームフィールド保存部21、現在マクロブロック保存バッファ22、参照サーチウィンドウ保存バッファ23、動きベクトル探索部24から成っている。   FIG. 2 is a block diagram showing a motion vector detection apparatus using a block matching method. In the figure, the motion vector detection apparatus includes a current frame / field storage unit 20, a reference frame field storage unit 21, a current macroblock storage buffer 22, a reference search window storage buffer 23, and a motion vector search unit 24.

現在フレーム/フィールド保存部20と参照フレーム/フィールド保存部21はそれぞれ現在フレーム/フィールドと参照フレーム/フィールドが保存され、動きベクトルの推定に用いられる。現在マクロブロック保存バッファ22は現在フレーム/フィールド保存部20から現在のマクロブロックの画像を取り出す。参照サーチウィンドウ保存バッファ23は現在のマクロブロックの中心に探索領域の中心を設定し探索領域の範囲(以下、サーチウィンドウと呼ぶ)分だけ参照フレームフィールド保存部21から画像を取り出す。動きベクトル探索部24ではサーチウィンドウ内で現在のマクロブロックの画像を探索し、現在のマクロブロックについての最終的な動きベクトルを推定する。   The current frame / field storage unit 20 and the reference frame / field storage unit 21 store the current frame / field and the reference frame / field, respectively, and are used for motion vector estimation. The current macroblock storage buffer 22 extracts the current macroblock image from the current frame / field storage unit 20. The reference search window storage buffer 23 sets the center of the search area at the center of the current macroblock, and extracts the image from the reference frame field storage unit 21 for the range of the search area (hereinafter referred to as the search window). The motion vector search unit 24 searches for an image of the current macroblock in the search window, and estimates a final motion vector for the current macroblock.

また、ブロックマッチング方式には、図3に示すように、図2の動きベクトル検出装置に、動きベクトル探索部24で推定された動きベクトルを保存する動きベクトル保存器35を持たせた構成も存在する。この構成では、参照フレーム/フィールド保存部21に動きベクトル保存器35から一つ前のマクロブロックについて推定した動きベクトルを提供する。参照フレーム/フィールド保存部21は、一つ前のマクロブロックの動きベクトル分だけ現在マクロブロックからずらした位置に探索領域の中心位置を設定し、参照サーチウィンドウ保存バッファ23へ参照画像を出力する。   In addition, as shown in FIG. 3, the block matching method includes a configuration in which the motion vector detection apparatus shown in FIG. 2 includes a motion vector storage unit 35 that stores the motion vector estimated by the motion vector search unit 24. To do. In this configuration, the motion vector estimated for the previous macroblock from the motion vector storage unit 35 is provided to the reference frame / field storage unit 21. The reference frame / field storage unit 21 sets the center position of the search area at a position shifted from the current macro block by the motion vector of the previous macro block, and outputs the reference image to the reference search window storage buffer 23.

ブロックマッチング方式のようにマクロブロックごとに動きベクトルの検出/推定を行い、この動きベクトルを用いて動き補償予測を行う方法を、局所的な検出をするという意味から、以後まとめてローカル動き補償と呼ぶことにする。またブロック単位の動きベクトルをローカル動きベクトルと呼ぶことにする。   A method of detecting / estimating a motion vector for each macro block as in the block matching method, and performing motion compensation prediction using this motion vector is collectively referred to as local motion compensation in the sense of performing local detection. I will call it. A motion vector in units of blocks is referred to as a local motion vector.

これまで説明してきたローカル動き補償方式は現在国際標準方式H.261、H.263、MPEG1、MPEG2、MPEG4で用いられており、最も広く採用されている動き補償方式である。
特開平04−323780号公報(第2頁)
The local motion compensation method described so far is currently the international standard method H.264. 261, H.H. It is used in H.263, MPEG1, MPEG2 and MPEG4, and is the most widely adopted motion compensation method.
JP 04-323780 A (2nd page)

しかしながら、ローカル動き補償方式においては1フレームより少ない数の画素からなるサーチウィンドウを用いているため、現在のマクロブロックの中心に探索領域の中心を設定した場合や一つ前のマクロブロックの動きベクトルを用いてサーチウィンドウの中心の位置決めを行った場合、野球中継のように画像間の動きが速いか、画面全体がパンニング(paning)される画像はサーチウィンドウ内に存在しなくなる。この場合、従来のローカル動き補償方式においては画像フレーム間の差異値を得るノン・イントラ符号化を行わず、その代わりにイントラ符号化を行うため、圧縮率が低下し、符号化データ量が多くなってしまう問題点がある。   However, since the local motion compensation method uses a search window consisting of a smaller number of pixels than one frame, when the center of the search area is set at the center of the current macroblock, or the motion vector of the previous macroblock When the center of the search window is positioned using, an image in which the motion between images is fast or the entire screen is panned as in a baseball broadcast does not exist in the search window. In this case, the conventional local motion compensation method does not perform non-intra coding to obtain a difference value between image frames, but instead performs intra coding, so that the compression rate is reduced and the amount of encoded data is large. There is a problem that becomes.

従って、本発明の目的は、前述した問題点を解決し、フレーム或いはフィールド間の動きが大きい画像に対して、その動きを考慮した適切な動きベクトルの検出が行える動きベクトル検出装置及びその方法を提供することにある。   Accordingly, an object of the present invention is to provide a motion vector detection apparatus and method capable of solving the above-described problems and detecting an appropriate motion vector in consideration of the motion of an image having a large motion between frames or fields. It is to provide.

また、フレーム或いはフィールド間の動きが小さい場合には高い圧縮率を維持し、かつフレーム或いはフィールド間の動きが大きい画像の場合にも圧縮率の高い符号化が行える動き補償予測符号化装置を提供することを本発明の更なる目的とする。   Also provided is a motion compensated predictive coding apparatus that can maintain a high compression rate when the motion between frames or fields is small and can perform coding with a high compression rate even when the motion between frames or fields is large. It is a further object of the present invention.

上述の目的は、現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出装置であって、前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定手段と、前記グローバルベクトルの信頼性を判定する信頼性判定手段と、前記グローバルベクトルの信頼性の判定結果に応じて前記探索領域の形状を決定する探索領域決定手段と、前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索手段とを有することを特徴とする動きベクトル検出装置によって達成される。   An object of the present invention is to provide a motion vector detection device that detects a motion vector of each of the plurality of macroblocks by searching each of a plurality of macroblocks constituting the current image in a search region set in a reference image. A global vector determining means for obtaining a global vector which is a motion vector between the current image and the reference image, a reliability determining means for determining the reliability of the global vector, and a determination result of the reliability of the global vector Search area determining means for determining the shape of the search area according to the search area, and a motion vector for searching for a macroblock of the current image within the determined search area of the reference image and detecting a motion vector for the macroblock It is achieved by a motion vector detection device characterized by comprising search means.

また、上述の目的は、現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出装置であって、前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定手段と、前記グローバルベクトルの信頼性を判定する信頼性判定手段と、前記グローバルベクトルの信頼性の判定結果に応じて前記探索領域の位置を決定する探索領域決定手段と、前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索手段とを有することを特徴とする動きベクトル検出装置によっても達成される。   In addition, the above-described object is to detect a motion vector of each of the plurality of macroblocks by searching each of a plurality of macroblocks constituting the current image in a search area set in the reference image. A global vector determining means for determining a global vector which is a motion vector between the current image and the reference image, a reliability determining means for determining the reliability of the global vector, and a reliability of the global vector. Search area determining means for determining the position of the search area according to the determination result, and searching for a macroblock of the current image within the determined search area of the reference image, and detecting a motion vector for the macroblock Also achieved by a motion vector detection device characterized by having motion vector search means It is.

さらに、上述の目的は、現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出方法であって、前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定ステップと、前記グローバルベクトルの信頼性を判定する信頼性判定ステップと、前記グローバルベクトルの信頼性の判定結果に応じて前記探索領域の形状及び位置の少なくとも一方を決定する探索領域決定ステップと、前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索ステップとを有することを特徴とする動きベクトル検出方法によっても達成される。   Furthermore, the above-described object is to detect a motion vector of each of the plurality of macroblocks by searching each of a plurality of macroblocks constituting the current image in a search area set in the reference image. A global vector determination step for obtaining a global vector that is a motion vector between the current image and the reference image, a reliability determination step for determining reliability of the global vector, and reliability of the global vector A search region determining step for determining at least one of a shape and a position of the search region according to a determination result; searching for a macroblock of the current image in the determined search region of the reference image; A motion vector search step for detecting a motion vector. Also achieved by the motion vector detecting method according to.

本発明によれば、フレーム或いはフィールド間の動きが大きい画像に対して、その動きを考慮した適切な動きベクトルの検出が行えるので、動きベクトル検出の精度が向上し、動きが大きい場合であっても圧縮率を向上させることができる。   According to the present invention, since an appropriate motion vector can be detected in consideration of the motion of an image having a large motion between frames or fields, the accuracy of motion vector detection is improved and the motion is large. Can also improve the compression ratio.

以下、図面を参照して本発明をその好適な実施形態に基づき詳細に説明する。   Hereinafter, the present invention will be described in detail based on preferred embodiments with reference to the drawings.

図1は本発明の実施例となる動きベクトル検出装置の構成例を示すブロック図である。図1の動きベクトル検出装置は、参照フレーム/フィールド保存部100、現在フレーム/フィールド保存部101、グローバルベクトル決定部102、グローバルベクトル信頼性判定部103、サーチウィンドウ位置・形状決定部104を有する。すなわち、グローバルベクトルを用いて動きベクトルの探索領域(サーチウィンドウ)を決定する構成である。さらに、動きベクトル探索部105、動きベクトル保存部106、参照サーチウィンドウ保存バッファ107及び現在マクロブロック保存バッファ108を備え、以上の構成により動きベクトルの検出を行う。   FIG. 1 is a block diagram showing a configuration example of a motion vector detection device according to an embodiment of the present invention. 1 includes a reference frame / field storage unit 100, a current frame / field storage unit 101, a global vector determination unit 102, a global vector reliability determination unit 103, and a search window position / shape determination unit 104. In other words, the motion vector search region (search window) is determined using the global vector. Furthermore, a motion vector search unit 105, a motion vector storage unit 106, a reference search window storage buffer 107, and a current macroblock storage buffer 108 are provided, and a motion vector is detected with the above configuration.

係る構成において、以下にその具体的な動作を説明する。参照フレーム/フィールド保存部100と現在フレーム/フィールド保存部101には、動きベクトル検出/推定のための参照フレーム/フィールド(参照画像)と現在フレーム/フィールド(現画像)がそれぞれ保存される。   In the configuration, the specific operation will be described below. The reference frame / field storage unit 100 and the current frame / field storage unit 101 store a reference frame / field (reference image) and a current frame / field (current image) for motion vector detection / estimation, respectively.

グローバルベクトル決定部102は、参照フレーム/フィールド保存部100及び現在フレーム/フィールド保存部101から提供される参照フレーム/フィールドの画素値全てと現在フレーム/フィールドの画素値全てを用いて、参照フレーム/フィールドに対する現在フレーム/フィールドの空間的な位置の差を示すグローバルベクトルを決定する。   The global vector determination unit 102 uses all the reference frame / field pixel values and all the current frame / field pixel values provided from the reference frame / field storage unit 100 and the current frame / field storage unit 101 to generate a reference frame / A global vector indicating the difference in the spatial position of the current frame / field relative to the field is determined.

グローバルベクトル信頼性判定部103は、グローバルベクトル決定部102が決定したグローバルベクトルの信頼度を判定する。サーチウィンドウ決定部104はグローバルベクトル又は一つ前のローカル動きベクトルから参照サーチウィンドウの位置・形状を決定する。   The global vector reliability determination unit 103 determines the reliability of the global vector determined by the global vector determination unit 102. The search window determination unit 104 determines the position / shape of the reference search window from the global vector or the previous local motion vector.

動きベクトル探索部105、動きベクトル保存部106及び参照サーチウィンドウ保存バッファ107、現在マクロブロック保存バッファ108は図2及び図3で説明した同名の構成要素と同一でよいため説明を省略する。   The motion vector search unit 105, the motion vector storage unit 106, the reference search window storage buffer 107, and the current macroblock storage buffer 108 may be the same as the components having the same names described in FIGS.

以上説明した本実施例の動きベクトル検出装置の動作を、図4のフローチャートを用いて説明する。   The operation of the motion vector detection apparatus according to the present embodiment described above will be described with reference to the flowchart of FIG.

まず、グローバルベクトル決定部102は、参照フレーム/フィールド(参照画像)と現在フレーム/フィールド(現画像)との動きベクトルであるグローバルベクトルを検出するため、これら画像間の位置関係毎に評価関数を演算する(ステップS103)
参照フレーム/フィールドと現在フレーム/フィールドとが最大相関度を有する移動距離及び方向を表すグローバルベクトルを推定するためには、次のようなMSE(Mean Square Error)(数1)、MAE(Mean Absolute Error)(数2)、あるいはMAD(Mean Absolute Differ ence)などの評価関数を用いることができる。
First, the global vector determination unit 102 detects a global vector that is a motion vector between a reference frame / field (reference image) and a current frame / field (current image). Calculate (step S103)
In order to estimate a global vector representing a moving distance and direction in which the reference frame / field and the current frame / field have the maximum correlation, the following MSE (Mean Square Error) (Equation 1) and MAE (Mean Absolute) are used. An evaluation function such as Error (Equation 2) or MAD (Mean Absolute Difference) can be used.

Figure 2007174202
Figure 2007174202

ここで、Scur(m,n)は現在のフレーム/フィールドでの(m,n)番目の画素値、Sref(m,n)は参照フレーム、フィールドでの(m,n)番目の画素値を示す。(i,j)は参照フレーム/フィールドに対する現在のフレーム/フィールドの空間的な位置をそれぞれ示している。 Here, S cur (m, n) is the (m, n) -th pixel value in the current frame / field, S ref (m, n) is the reference frame, and the (m, n) -th pixel in the field Indicates the value. (I, j) indicate the spatial position of the current frame / field with respect to the reference frame / field, respectively.

(ただし、M,Nを1フレーム/フィールドでの水平及び垂直画素数とすると、m=k×q,n=l×rであり、k,lは0≦m≦M、1≦k≦M,0≦n≦N,1≦l≦Nを満たす自然数である。また、Q,RはM−k≦Q≦M,N−l≦R≦Nを満たす。)
この評価関数は画素値の差に基づいたものであり、最も小さいMAE値やMSE値となるベクトルをグローバルベクトルとして決定する。
(However, when M and N are the number of horizontal and vertical pixels in one frame / field, m = k × q and n = 1 × r, where k and l are 0 ≦ m ≦ M and 1 ≦ k ≦ M. , 0 ≦ n ≦ N, 1 ≦ l ≦ N, and Q and R satisfy M−k ≦ Q ≦ M and N−l ≦ R ≦ N.)
This evaluation function is based on the difference in pixel values, and determines the vector having the smallest MAE value or MSE value as the global vector.

MAE値を例にした場合の、グローバルベクトルの選定方法の例を図9に示す。参照フレームを所定の方向に1画素ずつずらしていき、画素の移動距離ごとにMAE値の総和の平均を取る。そして平均MAE値が最小となるときの移動量がグローバルベクトルの選定基準となる。この処理を例えば所定の方向と直交する他の方向についても実行し、この方向で平均MAE値が最小となる移動量が求まれば、2つの移動量とその移動方向からグローバルベクトルを決定することができる。   FIG. 9 shows an example of a global vector selection method when the MAE value is taken as an example. The reference frame is shifted one pixel at a time in a predetermined direction, and the average of the sum of MAE values is taken for each pixel moving distance. The amount of movement when the average MAE value is the minimum is the global vector selection criterion. For example, if this process is performed also in another direction orthogonal to a predetermined direction and a movement amount that minimizes the average MAE value in this direction is obtained, a global vector is determined from the two movement amounts and the movement direction. Can do.

また、この時に求まるMAE値やMSE値をグローバルベクトル信頼性判定部103でグローバルベクトル信頼値GRV(Global Vector Reliable Value)として用いる。このように、グローバルベクトル決定部102は上述の評価関数の演算を行った後、最大相関度を示す位置への動きベクトルをグローバルベクトルとして定め、グローバルベクトル信頼性判定部103にグローバルベクトル信頼値GRV及びグローバルベクトルを送信する(ステップS105)。   Further, the MAE value and the MSE value obtained at this time are used as a global vector reliable value GRV (Global Vector Reliable Value) by the global vector reliability determining unit 103. In this way, after performing the above-described evaluation function calculation, the global vector determination unit 102 determines a motion vector to a position indicating the maximum correlation as a global vector, and the global vector reliability determination unit 103 receives the global vector reliability value GRV. The global vector is transmitted (step S105).

(グローバルベクトルの信頼性の判定)
次に、グローバルベクトル信頼性判定部103により、グローバルベクトル決定部102が決定したグローバルベクトルの信頼性を判定する(ステップS107)。この判定方法の例を図10に示す。
(Determining the reliability of global vectors)
Next, the global vector reliability determination unit 103 determines the reliability of the global vector determined by the global vector determination unit 102 (step S107). An example of this determination method is shown in FIG.

本実施例において、グローバルベクトル信頼性判定部103はグローバルベクトル決定部102から送信されてきたグローバルベクトル信頼値GRVと予め設定してある閾値とを比較し、グローバルベクトル信頼値GRVの値が閾値以下ならばグローバルベクトルの信頼性が高いと判定する。この時、サーチウィンドウの位置決定にグローバルベクトルを用いるため、サーチウィンドウ位置・形状決定部104にグローバルベクトルを送信する。   In this embodiment, the global vector reliability determination unit 103 compares the global vector reliability value GRV transmitted from the global vector determination unit 102 with a preset threshold value, and the value of the global vector reliability value GRV is equal to or less than the threshold value. If so, it is determined that the reliability of the global vector is high. At this time, since the global vector is used for determining the position of the search window, the global vector is transmitted to the search window position / shape determining unit 104.

一方、グローバルベクトル信頼値GRVの値が閾値より大きければグローバルベクトルの信頼性が低いと判断する。この場合には、グローバルベクトルの代わりに動きベクトル保存部106から一つ前のローカル動きベクトルをサーチウィンドウ位置・形状決定部104に送信させる。なお、この場合には動きが無いことを意味するゼロ動きベクトルを一つ前のローカル動きベクトルの代わりに送信することも出来る。また、その他、使用者が定義可能な任意の動きベクトルを一つ前のローカル動きベクトルの代わりに送信しても良い。   On the other hand, if the value of the global vector reliability value GRV is larger than the threshold value, it is determined that the reliability of the global vector is low. In this case, instead of the global vector, the previous local motion vector is transmitted from the motion vector storage unit 106 to the search window position / shape determination unit 104. In this case, a zero motion vector indicating no motion can be transmitted instead of the previous local motion vector. In addition, any motion vector that can be defined by the user may be transmitted instead of the previous local motion vector.

(サーチウィンドウの位置・形状の決定)
サーチウィンドウ位置・形状決定部104は送信されてきた動きベクトル(グローバルベクトルに応じて(ステップS109)又は一つ前のローカル動きベクトル(ステップS111))に従いサーチウィンドウの位置と形状を決定する。
(Determination of search window position and shape)
The search window position / shape determining unit 104 determines the position and shape of the search window according to the transmitted motion vector (according to the global vector (step S109) or the previous local motion vector (step S111)).

まず、サーチウィンドウの中心を、現在のマクロブロックに対応する参照フレーム/フィールドのマクロブロックから、動きベクトルの分だけずらした位置に指定する。続いて水平方向・垂直方向各々に対して、予め設定してある閾値と動きベクトルの水平方向・垂直方向の値を比較してサーチウィンドウの形状を決定する。具体的には図6のように水平方向の閾値としてTH(−TH)、垂直方向の閾値TH(−TH)を設定し、動きベクトルの水平方向、垂直方向の値がグラフの何処に属するかでサーチウィンドウの形状を決定する。例えば動きベクトルの水平方向の値xが0<x<TH、垂直方向の値yがTH<yの時、図6の(c)の領域に属するためサーチウィンドウは図5の(ii)の形状となる。一方、x<−TH、y<−THの時、図6の(m)の領域に属するためサーチウィンドウは図5の(v)の形状となる。 First, the center of the search window is designated at a position shifted from the reference block / field macroblock corresponding to the current macroblock by the motion vector. Subsequently, for each of the horizontal direction and the vertical direction, the threshold value set in advance and the value of the motion vector in the horizontal direction and the vertical direction are compared to determine the shape of the search window. Specifically, as shown in FIG. 6, the horizontal threshold value TH h (−TH h ) and the vertical threshold value TH V (−TH V ) are set, and the horizontal and vertical values of the motion vector are shown in the graph. The shape of the search window is determined depending on where it belongs. For example, when the value x in the horizontal direction of the motion vector is 0 <x <TH h and the value y in the vertical direction is TH V <y, the search window belongs to the area shown in FIG. It becomes the shape of. On the other hand, when x <−TH h and y <−TH V , the search window has the shape of (v) of FIG. 5 because it belongs to the area of (m) of FIG.

このように、サーチウィンドウがとり得る形状は図5(i)〜(v)で表わされるとおりである。さらに、図5(i)〜(v)で表わされるサーチウィンドウの各形状が、図6(a)〜(p)のように場合分けされた領域に応じて決定される。   Thus, the shapes that the search window can take are as shown in FIGS. Further, the shapes of the search windows shown in FIGS. 5 (i) to 5 (v) are determined according to the divided areas as shown in FIGS. 6 (a) to 6 (p).

次に、図6において、例えば0<x<TH、TH<yのとき(図6(c)のとき)のサーチウィンドウの位置・形状を決定する様子を図7(i)に示す。同様に、x<−TH、y<−THのとき(図6(m)のとき)のサーチウィンドウの位置・形状を決定する様子を図7(ii)に示す。 Next, FIG. 7 (i) shows how the position / shape of the search window is determined in FIG. 6 when, for example, 0 <x <TH h and TH V <y (when FIG. 6 (c)). Similarly, FIG. 7 (ii) shows how the position / shape of the search window is determined when x <−TH h and y <−TH V (FIG. 6 (m)).

現在フレーム/フィールド保存部101は、現在マクロブロックの画像データを取り出し、現在マクロブロック保存バッファ108に送信する。それと同時に、現在マクロブロックの位置情報を参照フレーム/フィールド保存部100に伝達する。そして、参照フレーム/フィールド保存部100は、サーチウィンドウ位置・形状決定部104が決定したサーチウィンドウの位置・形状に従って、現在マクロブロックの位置に応じた必要な探索範囲の画像データを取り出し、サーチウィンドウ保存バッファ107に送信する。この様子を模式的に表わしたものが、図7(i)及び図7(ii)となる。   The current frame / field storage unit 101 extracts the image data of the current macroblock and transmits it to the current macroblock storage buffer 108. At the same time, the current macroblock position information is transmitted to the reference frame / field storage unit 100. Then, the reference frame / field storage unit 100 extracts image data of a necessary search range corresponding to the position of the current macroblock in accordance with the position / shape of the search window determined by the search window position / shape determination unit 104. Transmit to the save buffer 107. FIG. 7 (i) and FIG. 7 (ii) schematically show this state.

このように、グローバルベクトルの信頼性が高い時は形状をグローバルベクトルに追随させ、グローバルベクトルが指す位置の周辺を探索するようにサーチウィンドウの位置を決定し、信頼性が低い時はマクロブロックの周辺を探索するようにサーチウィンドウの位置・形状を決定する。この様子を模式的に表わしたものが図8である。   As described above, when the reliability of the global vector is high, the shape is made to follow the global vector, and the position of the search window is determined so as to search around the position indicated by the global vector. The position and shape of the search window are determined so as to search the periphery. FIG. 8 schematically shows this state.

(動きベクトルの探索)
次に、動きベクトル探索部105は、サーチウィンドウ内でマクロブロックと類似した領域の探索を行い、現在のマクロブロックに対応する動きベクトルを検出/推定する(ステップS113)。推定した動きベクトルは外部に出力するほか、動きベクトル保存部106に送信し、グローバルベクトルの信頼性が低い場合の次のマクロブロックでの動きベクトル推定で用いる。
(Search motion vector)
Next, the motion vector search unit 105 searches for a region similar to the macroblock in the search window, and detects / estimates a motion vector corresponding to the current macroblock (step S113). In addition to outputting the estimated motion vector to the outside, it is transmitted to the motion vector storage unit 106 and used for motion vector estimation in the next macroblock when the reliability of the global vector is low.

ここで、N×Nサイズのマクロブロックの動きベクトルを参照フレーム/フィールドで±p画素の範囲で探索するとすると、サーチウィンドウの大きさは(N+2p)×(N+2p)となる。ここで、動きベクトルの候補になり得る総ての位置で上述した評価関数を計算した後、最大相関度を示す位置へのベクトルを動きベクトルに決める。   Here, if the motion vector of the N × N size macroblock is searched in the range of ± p pixels in the reference frame / field, the size of the search window is (N + 2p) × (N + 2p). Here, after calculating the above-described evaluation function at all positions that can be motion vector candidates, a vector to a position showing the maximum correlation is determined as a motion vector.

最大相関度を有する動きベクトルを推定するためには、前述のMSE(Mean Square Error)(数3)、MAE(Mean Absolute Error)(数4)、あるいはMAD(Mean Absolute Difference) などの評価関数を用いて次のように求められる。   In order to estimate the motion vector having the maximum correlation, the evaluation function such as the above-mentioned MSE (Mean Square Error) (Equation 3), MAE (Mean Absolute Error) (Equation 4), or MAD (Mean Absolute Difference) is used. It is calculated as follows.

Figure 2007174202
Figure 2007174202

ここで、Srefは参照フレーム/フィールド、Scur,kは現在のフレーム、フィールドでk番目のマクロブロックを示す。(i,j)は現在フレーム/フィールドのk番目のマクロブロックに対する参照フレーム/フィールドの空間的な位置をそれぞれ示している。 Here, S ref indicates a reference frame / field, S cur, k indicates the current frame, and the k th macroblock in the field. (I, j) indicates the spatial position of the reference frame / field with respect to the k-th macroblock of the current frame / field.

(ただし、X及びYをサーチウィンドウの水平及び垂直画素数とすると、x=g×u,y=h×vであり、g、hは0≦x≦X、1≦g≦X,0≦y≦Y,1≦h≦Yを満たす自然数である。また、U,VはX−g≦U≦X,Y−h≦V≦Yを満たす。)
この評価関数は画素の差に基づいたものであり、最も小さいMAE値やMSE値を有する場合を現在のマクロブロックにおける最終的な動きベクトルとして選定する。
(However, if X and Y are the number of horizontal and vertical pixels of the search window, x = g × u, y = h × v, and g and h are 0 ≦ x ≦ X, 1 ≦ g ≦ X, 0 ≦ (Y ≦ Y, 1 ≦ h ≦ Y is a natural number, and U and V satisfy X−g ≦ U ≦ X and Y−h ≦ V ≦ Y.)
This evaluation function is based on the pixel difference, and the case having the smallest MAE value or MSE value is selected as the final motion vector in the current macroblock.

選定されたマクロブロックの動きベクトルは、該マクロブロックを符号化するための不図示の符号化装置における符号化処理に利用される。上記符号化装置はMPEG2やH.264/MPEG4−AVC等の動き補償予測符号化装置であって、本実施例の動きベクトル検出装置を包含或いは併設して構成されることによって、動きの大きい画像であっても高能率の圧縮符号化が行えるようになる。   The motion vector of the selected macroblock is used for encoding processing in an encoding apparatus (not shown) for encoding the macroblock. The above encoding apparatus is MPEG2 or H.264. H.264 / MPEG4-AVC and other motion compensated predictive encoding devices including a motion vector detecting device according to the present embodiment, or a high-efficiency compression code even for a large motion image. Can be made.

ところで、上述した本実施例では、一つの現画像・参照画像に対して一つのグローバルベクトルを算出しているが、現画像・参照画像を複数のエリアに分割して各々のエリアに対してグローバルベクトル(GRV)を算出し、画面内の複数のGRVによってエリアごとに適切なサーチウィンドウを決定する構成をとることもできる。図13は画像を4分割した場合の例である。図13において、(13−1)のエリアではグローバルベクトルは右上方向を指しているが、GRVが低かったため、マクロブロックを中心としてサーチウィンドウを設定している例である。一方、(13−2)のエリアではGRVが高くグローバルベクトルが右方向を指しているためサーチウィンドウをマクロブロックの右側におき、形状を図5(iii)に決定した例である。また、(13−3)はGRVが高くグローバルベクトルが左下方向を指しているためサーチウィンドウをマクロブロックの左下におき、形状を図5の(v)に決定した例である。さらに、(13−4)は、GRVが高くグローバルベクトルが右上方向を指しているためサーチウィンドウをマクロブロックの右上におき、形状を図5の(v)に決定した場合である。このように画像を複数のエリアに分割して処理することによって、エリアごとの動きに追随したより確度の高い動きベクトルの検出が行えるようになる。これにより、画面の一部のみが大きく動いているようなシーン等に対しても効果的となる。   In the above-described embodiment, one global vector is calculated for one current image / reference image. However, the current image / reference image is divided into a plurality of areas and each area is globally calculated. It is also possible to take a configuration in which a vector (GRV) is calculated and an appropriate search window is determined for each area by a plurality of GRVs in the screen. FIG. 13 shows an example in which an image is divided into four. In FIG. 13, in the area (13-1), the global vector points in the upper right direction, but since GRV is low, the search window is set around the macroblock. On the other hand, in the area (13-2), since the GRV is high and the global vector points to the right, the search window is placed on the right side of the macroblock, and the shape is determined as shown in FIG. 5 (iii). Further, (13-3) is an example in which the GRV is high and the global vector points in the lower left direction, so that the search window is placed at the lower left of the macro block and the shape is determined as (v) in FIG. Further, (13-4) is a case where GRV is high and the global vector points to the upper right direction, so that the search window is placed at the upper right of the macro block and the shape is determined as (v) in FIG. In this way, by dividing an image into a plurality of areas and processing them, it becomes possible to detect a motion vector with higher accuracy following the movement of each area. This is effective for a scene where only a part of the screen is moving greatly.

このように本実施例によれば、上述の構成により、現画像と参照画像との動きベクトルであるグローバルベクトルを求め、グローバルベクトルを用いて参照サーチウィンドウを設定することにより、現在のマクロブロックを参照サーチウィンドウの中心としたり、一つ前のローカル動きベクトルを用いて参照サーチウィンドウを設定する場合に比べ、大きな動きを有する画像に対しても適切な動きベクトルを検出することができる。従って、本実施例による動きベクトル検出装置を用いることにより、動きの大きい場面において動きベクトルを決定できず、イントラ符号化を行い、符号量が多くなる従来の動き補償符号化システムにおける問題を解決し、動き補償予測符号化効率を向上させることが可能になる。   As described above, according to the present embodiment, with the above-described configuration, a global vector that is a motion vector between the current image and the reference image is obtained, and a reference search window is set using the global vector, so that the current macroblock is obtained. As compared with the case where the reference search window is set using the center of the reference search window or the previous local motion vector, an appropriate motion vector can be detected even for an image having a large motion. Therefore, by using the motion vector detection apparatus according to the present embodiment, it is not possible to determine a motion vector in a scene with a large motion, and solves the problem in the conventional motion compensation coding system that performs intra coding and increases the amount of code. Thus, it is possible to improve the motion compensation predictive coding efficiency.

続いて本発明の第2の実施例に係る動きベクトル検出装置について説明する。実施例2に係る動きベクトル検出装置は、図1の動きベクトル検出装置におけるサーチウィンドウ位置・形状決定部104で閾値を2つ持っている点が実施例1の構成と異なる部分であり、その他に関しては実施例1と同じ構成及び機能を有する。従って、本実施例においては図1を用いて説明を行い、かつ同様の構成要素については重複する説明は省略する。   Next, a motion vector detection apparatus according to the second embodiment of the present invention is described. The motion vector detection device according to the second embodiment is different from the configuration of the first embodiment in that the search window position / shape determination unit 104 in the motion vector detection device in FIG. Has the same configuration and function as the first embodiment. Therefore, in the present embodiment, the description will be made with reference to FIG. 1, and the redundant description of the same components will be omitted.

以下、図11のフローチャートを併せて参照しながら、本実施例の動きベクトル検出装置の動作について説明する。   Hereinafter, the operation of the motion vector detection apparatus of the present embodiment will be described with reference to the flowchart of FIG.

まず、グローバルベクトル決定までの処理(ステップS103、S105)については実施例1と同様である。   First, the processing up to global vector determination (steps S103 and S105) is the same as that in the first embodiment.

本実施例においては、次にステップS207においてグローバルベクトル信頼性判定部103が行う信頼性判定処理と、その結果に応じたサーチウィンドウの設定処理が実施例1と異なる。具体的にはステップS207においてグローバルベクトル信頼性判定部103が信頼性判定を行う際、閾値を複数用いる。そして、信頼値GRVと複数の閾値との関係に応じて、サーチウィンドウの位置・形状を変化させる。本実施例ではグローバルベクトル信頼性判定部103が2つの閾値Th1、Th2を用いて信頼性評価を行う場合を例に挙げて説明する。   In this embodiment, the reliability determination process performed by the global vector reliability determination unit 103 in step S207 and the search window setting process corresponding to the result are different from those in the first embodiment. Specifically, when the global vector reliability determination unit 103 performs reliability determination in step S207, a plurality of threshold values are used. Then, the position / shape of the search window is changed according to the relationship between the reliability value GRV and the plurality of threshold values. In the present embodiment, the case where the global vector reliability determination unit 103 performs reliability evaluation using two threshold values Th1 and Th2 will be described as an example.

この場合、グローバルベクトル信頼値GRVと閾値Th1,Th2とが取りうる関係は以下の3通りである。   In this case, the global vector reliability value GRV and the threshold values Th1 and Th2 can have the following three relationships.

Figure 2007174202
Figure 2007174202

そして、本実施例のグローバルベクトル信頼性判定部103は、数5の(i)、(ii)、(iii)の順に信頼性が落ちる、つまり(ii)の条件を満たす場合が最も信頼性が高いものと判定する。そして、その判定結果に応じてサーチウィンドウの位置と形状を変化させる(ステップS209、S211、S213)。   And the global vector reliability determination part 103 of a present Example is most reliable when the reliability falls in order of (i), (ii), (iii) of Formula 5, that is, the condition of (ii) is satisfied. Judge as high. Then, the position and shape of the search window are changed according to the determination result (steps S209, S211, and S213).

具体的には信頼性が最も高い場合(i)には、サーチウィンドウの位置はグローバルベクトルの指し示す位置とし、さらにはサーチウィンドウの形状もグローバルベクトルの指し示す方向に追随させたものに変化させる。次に信頼性が高い(ii)の場合は(i)の場合に比べ、グローバルベクトルの信頼性が落ちるため、サーチウィンドウの位置はグローバルベクトルの指し示す位置にずらすもののサーチウィンドウの形状は動きが無い状態で用いられる図5(i)のものとする。   Specifically, in the case of the highest reliability (i), the position of the search window is set to the position indicated by the global vector, and the shape of the search window is also changed to follow the direction indicated by the global vector. Next, when the reliability is high (ii), the reliability of the global vector is lower than in the case of (i). Therefore, although the position of the search window is shifted to the position indicated by the global vector, the shape of the search window does not move. Assume that in FIG. 5 (i) used in the state.

また、(iii)の場合にはグローバルベクトルの信頼性がさらに落ちるため、サーチウィンドウの位置決めにグローバルベクトルを用いず、グローバルベクトルの代わりに動きベクトル保存部106から一つ前のローカル動きベクトルあるいは動きが無いことを意味するゼロ動きベクトル、その他、使用者が定義可能な任意の動きベクトルを用いてサーチウィンドウの位置を決定する。   In the case of (iii), since the reliability of the global vector is further lowered, the global vector is not used for positioning the search window, and instead of the global vector, the previous local motion vector or motion from the motion vector storage unit 106 is used. The position of the search window is determined using a zero motion vector meaning that there is no other, or any other motion vector definable by the user.

本実施例ではゼロ動きベクトルを用いるものとし、マクロブロックの周辺部にサーチウィンドウを設定する。更にサーチウィンドウの形状も動きが無い状態で用いられる図5(i)のものとする。   In this embodiment, a zero motion vector is used, and a search window is set around the macroblock. Further, the shape of the search window is assumed to be that shown in FIG.

図12に、本実施例における、グローバルベクトルの信頼性に応じたサーチウィンドウ範囲の制御を模式的に示す。このように、本実施例においては、グローバルベクトルの信頼性によりサーチウィンドウの位置・形状の両方をグローバルベクトルにより変化させるか、サーチウィンドウの位置のみグローバルベクトルで変化させるか、サーチウィンドウの位置・形状をグローバルベクトルに依存させないかを決定する。   FIG. 12 schematically shows search window range control according to the reliability of the global vector in this embodiment. As described above, in this embodiment, depending on the reliability of the global vector, both the position and shape of the search window are changed by the global vector, or only the position of the search window is changed by the global vector, or the position and shape of the search window. Determines whether to depend on global vectors.

サーチウィンドウ位置・形状決定部104はグローバルベクトル信頼性判定部103から送信されてくるグローバルベクトルと、サーチウィンドウの位置・形状に応じて、参照フレーム/フィールド保存部100、現在フレーム/フィールド保存部101から各々動きベクトル推定に必要な画像を取り出し、参照サーチウィンドウ保存バッファ107と現在マクロブロック保存バッファ108に送信する。   The search window position / shape determining unit 104 determines the reference frame / field storage unit 100 and the current frame / field storage unit 101 according to the global vector transmitted from the global vector reliability determination unit 103 and the position / shape of the search window. The images necessary for motion vector estimation are taken out from each of them and transmitted to the reference search window storage buffer 107 and the current macroblock storage buffer 108.

そして、動きベクトル探索部105は、実施例1において説明したようにして、マクロブロックの動きベクトルを検出し(ステップS113)、出力する。   Then, as described in the first embodiment, the motion vector search unit 105 detects and outputs a macroblock motion vector (step S113).

本実施例ではグローバルベクトルとグローバルベクトル信頼値GRVを用いてサーチウィンドウの位置及び形状を決定していたが、上述の数3あるいは数4で求められる値のうち最小のものを信頼値として、ローカル動きベクトルとその信頼値LRV(Local Vector Reliable Value)を用いてサーチウィンドウの位置及び形状を決定してもよい。   In the present embodiment, the position and shape of the search window are determined using the global vector and the global vector confidence value GRV. However, the minimum value among the values obtained by the above Equation 3 or Equation 4 is used as the confidence value. The position and shape of the search window may be determined using a motion vector and its reliability value LRV (Local Vector Reliable Value).

以上説明したように本実施例によれば、グローバルベクトルの信頼度に応じてサーチウィンドウの大きさを制御するため、グローバルベクトルの信頼性が低い場合でもローカル動きベクトルを探索できる可能性を高めることができる。また、ローカル動きベクトル保存部106が不要となり、より簡便な構成を実現できる。   As described above, according to the present embodiment, since the size of the search window is controlled according to the reliability of the global vector, the possibility of searching for a local motion vector is improved even when the reliability of the global vector is low. Can do. Further, the local motion vector storage unit 106 is not necessary, and a simpler configuration can be realized.

(他の実施形態)
上述の各実施例で説明した動きベクトル検出装置は、動き補償予測符号化装置に好適に適用することができ、結果として大きな動きを有する画像に対する圧縮率を向上させることが可能である。
(Other embodiments)
The motion vector detection apparatus described in each of the above embodiments can be suitably applied to a motion compensated prediction encoding apparatus, and as a result, it is possible to improve the compression rate for an image having a large motion.

上述の実施例においては、1つの機器から構成される動きベクトル検出装置についてのみ説明したが、同等の機能を複数の機器から構成されるシステムによって実現しても良い。   In the above-described embodiments, only the motion vector detection device configured by one device has been described, but an equivalent function may be realized by a system configured by a plurality of devices.

尚、前述した実施例の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線/無線通信を用いて当該プログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムを実行することによって同等の機能が達成される場合も本発明に含む。   A software program for realizing the functions of the above-described embodiments is supplied from a recording medium directly to a system or apparatus having a computer that can execute the program using wired / wireless communication. The present invention includes a case where an equivalent function is achieved by a computer executing the supplied program.

従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。   Accordingly, the program code itself supplied and installed in the computer in order to implement the functional processing of the present invention by the computer also realizes the present invention. That is, the computer program itself for realizing the functional processing of the present invention is also included in the present invention.

その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。   In this case, the program may be in any form as long as it has a program function, such as an object code, a program executed by an interpreter, or script data supplied to the OS.

プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体、MO、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−R、DVD−RW等の光/光磁気記憶媒体、不揮発性の半導体メモリなどがある。   As a recording medium for supplying the program, for example, a magnetic recording medium such as a flexible disk, a hard disk, a magnetic tape, MO, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-R, DVD- There are optical / magneto-optical storage media such as RW, and non-volatile semiconductor memory.

有線/無線通信を用いたプログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイル等、クライアントコンピュータ上で本発明を形成するコンピュータプログラムとなりうるデータファイル(プログラムデータファイル)を記憶し、接続のあったクライアントコンピュータにプログラムデータファイルをダウンロードする方法などが挙げられる。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに配置することも可能である。   As a program supply method using wired / wireless communication, a computer program forming the present invention on a server on a computer network, or a computer forming the present invention on a client computer such as a compressed file including an automatic installation function A method of storing a data file (program data file) that can be a program and downloading the program data file to a connected client computer can be used. In this case, the program data file can be divided into a plurality of segment files, and the segment files can be arranged on different servers.

つまり、本発明の機能処理をコンピュータで実現するためのプログラムデータファイルを複数のユーザに対してダウンロードさせるサーバ装置も本発明に含む。   That is, the present invention includes a server device that allows a plurality of users to download a program data file for realizing the functional processing of the present invention on a computer.

また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件を満たしたユーザに対して暗号化を解く鍵情報を、例えばインターネットを介してホームページからダウンロードさせることによって供給し、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。   In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to the user, and key information for decrypting the encryption for a user who satisfies a predetermined condition is provided via a homepage via the Internet, for example. It is also possible to realize the program by downloading it from the computer and executing the encrypted program using the key information and installing it on the computer.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施例の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施例の機能が実現され得る。   In addition to the functions of the above-described embodiments being realized by the computer executing the read program, the OS running on the computer based on the instructions of the program may be part of the actual processing. Alternatively, the functions of the above-described embodiments can be realized by performing all of the processing and performing the processing.

さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施例の機能が実現され得る。   Furthermore, after the program read from the recording medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion board or The CPU or the like provided in the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments can be realized by the processing.

本発明の第1の実施例に係る動きベクトル検出装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the motion vector detection apparatus which concerns on 1st Example of this invention. 従来の動きベクトル検出装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the conventional motion vector detection apparatus. 従来の動きベクトル検出装置の別の構成例を示すブロック図である。It is a block diagram which shows another structural example of the conventional motion vector detection apparatus. 本発明の第1の実施例に係る動きベクトル検出装置の動作を説明するフローチャートである。It is a flowchart explaining operation | movement of the motion vector detection apparatus which concerns on 1st Example of this invention. 設定可能なサーチウィンドウの形状を説明するための図である。It is a figure for demonstrating the shape of the search window which can be set. グローバルベクトルの水平方向・垂直方向の値に応じたサーチウィンドウの形状決定方法を説明するための図である。It is a figure for demonstrating the shape determination method of the search window according to the value of the horizontal direction of a global vector, and a perpendicular direction. 第1の実施例におけるグローバルベクトルの信頼性に応じたサーチウィンドウ位置・形状の決定方法の一例である。It is an example of the determination method of the search window position and shape according to the reliability of the global vector in 1st Example. 第1の実施例におけるグローバルベクトルの信頼性に応じたサーチウィンドウ位置・形状の決定方法を説明するための図である。It is a figure for demonstrating the determination method of the search window position and shape according to the reliability of the global vector in 1st Example. 第1の実施例におけるグローバルベクトルの決定方法を説明するための図である。It is a figure for demonstrating the determination method of the global vector in a 1st Example. 第1の実施例におけるグローバルベクトルの信頼性の判定方法を説明するための図である。It is a figure for demonstrating the determination method of the reliability of the global vector in a 1st Example. 本発明の第2の実施例に係る動きベクトル検出装置の動作を説明するフローチャートである。It is a flowchart explaining operation | movement of the motion vector detection apparatus which concerns on 2nd Example of this invention. 第2の実施例におけるグローバルベクトルの信頼性に応じたサーチウィンドウ位置・形状の決定方法を説明するための図である。It is a figure for demonstrating the determination method of the search window position and shape according to the reliability of the global vector in a 2nd Example. 第1の実施例における画像を複数のエリアに分割し各エリアに対してグローバルベクトル及びGRVを求めた際のサーチウィンドウ位置・形状の決定方法を説明するための図である。It is a figure for demonstrating the determination method of the search window position and shape at the time of dividing | segmenting the image in a 1st Example into a some area, and calculating | requiring a global vector and GRV with respect to each area.

符号の説明Explanation of symbols

100 現在フレーム/フィールド保存部
101 参照フレーム/フィールド保存部
102 グローバルベクトル決定部
103 グローバルベクトル信頼性判定部
104 サーチウィンドウ位置・形状決定部
105 動きベクトル探索部
106 動きベクトル保存部
107 サーチウィンドウ保存バッファ
108 現在マクロブロック保存バッファ
100 current frame / field storage unit 101 reference frame / field storage unit 102 global vector determination unit 103 global vector reliability determination unit 104 search window position / shape determination unit 105 motion vector search unit 106 motion vector storage unit 107 search window storage buffer 108 Current macroblock save buffer

Claims (14)

現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出装置であって、
前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定手段と、
前記グローバルベクトルの信頼性を判定する信頼性判定手段と、
前記グローバルベクトルの信頼性の判定結果に応じて前記探索領域の形状を決定する探索領域決定手段と、
前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索手段とを有することを特徴とする動きベクトル検出装置。
A motion vector detection device for detecting a motion vector of each of the plurality of macroblocks by searching in a search region set in a reference image for each of a plurality of macroblocks constituting a current image,
A global vector determining means for obtaining a global vector which is a motion vector between the current image and the reference image;
Reliability determination means for determining the reliability of the global vector;
Search area determining means for determining the shape of the search area according to the determination result of the reliability of the global vector;
A motion vector detection device comprising: motion vector search means for searching for a macroblock of the current image in the determined search area of the reference image and detecting a motion vector for the macroblock.
現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出装置であって、
前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定手段と、
前記グローバルベクトルの信頼性を判定する信頼性判定手段と、
前記グローバルベクトルの信頼性の判定結果に応じて前記探索領域の位置を決定する探索領域決定手段と、
前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索手段とを有することを特徴とする動きベクトル検出装置。
A motion vector detection device for detecting a motion vector of each of the plurality of macroblocks by searching in a search region set in a reference image for each of a plurality of macroblocks constituting a current image,
A global vector determining means for obtaining a global vector which is a motion vector between the current image and the reference image;
Reliability determination means for determining the reliability of the global vector;
Search region determining means for determining the position of the search region according to the determination result of the reliability of the global vector;
A motion vector detection device comprising: motion vector search means for searching for a macroblock of the current image in the determined search area of the reference image and detecting a motion vector for the macroblock.
現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出装置であって、
前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定手段と、
前記グローバルベクトルの信頼性を判定する信頼性判定手段と、
前記グローバルベクトルの信頼性の判定結果に応じて前記探索領域の形状及び位置を決定する探索領域決定手段と、
前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索手段とを有することを特徴とする動きベクトル検出装置。
A motion vector detection device for detecting a motion vector of each of the plurality of macroblocks by searching in a search region set in a reference image for each of a plurality of macroblocks constituting a current image,
A global vector determining means for obtaining a global vector which is a motion vector between the current image and the reference image;
Reliability determination means for determining the reliability of the global vector;
Search area determining means for determining the shape and position of the search area according to the determination result of the reliability of the global vector;
A motion vector detection apparatus comprising: motion vector search means for searching for a macroblock of the current image in the determined search area of the reference image and detecting a motion vector for the macroblock.
前記探索領域決定手段は、前記信頼性判定手段によって前記グローバルベクトルの信頼性が高いと判定されたときに、前記グローバルベクトルの水平方向、垂直方向の成分値に応じて前記探索領域を決定することを特徴とする請求項1乃至3の何れか1項記載の動きベクトル検出装置。   The search area determining means determines the search area according to horizontal and vertical component values of the global vector when the reliability determining means determines that the reliability of the global vector is high. The motion vector detection device according to claim 1, wherein: 現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出装置であって、
前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定手段と、
前記グローバルベクトルの信頼性を判定する信頼性判定手段と、
前記信頼性判定手段によって前記グローバルベクトルの信頼性が高いと判定されたときに、前記グローバルベクトルの向きと大きさに応じて前記探索領域の形状を決定する探索領域決定手段と、
前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索手段とを有することを特徴とする動きベクトル検出装置。
A motion vector detection device for detecting a motion vector of each of the plurality of macroblocks by searching in a search region set in a reference image for each of a plurality of macroblocks constituting a current image,
A global vector determining means for obtaining a global vector which is a motion vector between the current image and the reference image;
Reliability determination means for determining the reliability of the global vector;
Search area determining means for determining the shape of the search area according to the direction and size of the global vector when the reliability determination means determines that the reliability of the global vector is high;
A motion vector detection apparatus comprising: motion vector search means for searching for a macroblock of the current image in the determined search area of the reference image and detecting a motion vector for the macroblock.
さらに、前記検出した動きベクトルを保存する保存手段を有し、前記グローバルベクトルの信頼性が低い場合、前記探索領域決定手段は前記保存手段に保存された動きベクトルを用いて前記探索領域の形状及び位置の少なくとも一方を決定することを特徴とする請求項1乃至5の何れか1項記載の動きベクトル検出装置。   Further, the storage unit stores the detected motion vector, and when the reliability of the global vector is low, the search region determination unit uses the motion vector stored in the storage unit and the shape of the search region and 6. The motion vector detection device according to claim 1, wherein at least one of the positions is determined. さらに、前記検出した動きベクトルを保存する保存手段を有し、前記グローバルベクトルの信頼性が低い場合、前記探索領域決定手段は前記保存手段に保存された動きベクトルの水平方向及び垂直方向の成分値から前記探索領域の形状を決定することを特徴とする請求項1乃至5の何れか1項記載の動きベクトル検出装置。   In addition, when the global motion vector is low in reliability, the search area determining unit stores horizontal and vertical component values of the motion vector stored in the storage unit. The motion vector detection apparatus according to claim 1, wherein the shape of the search area is determined from the following. さらに、前記検出した動きベクトルを保存する保存手段を有し、前記グローバルベクトルの信頼性が低い場合、前記探索領域決定手段はゼロ動きベクトル又は予め定義された動きベクトルを用いて前記探索領域の形状及び位置の少なくとも一方を決定することを特徴とする請求項1乃至5の何れか1項記載の動きベクトル検出装置。   In addition, when the global motion vector is low in reliability, the search region determination unit uses a zero motion vector or a predefined motion vector to store the shape of the search region. 6. The motion vector detection apparatus according to claim 1, wherein at least one of the position and the position is determined. さらに、前記検出した動きベクトルを保存する保存手段を有し、前記グローバルベクトルの信頼性が低い場合、前記探索領域決定手段はゼロ動きベクトル又は予め定義された動きベクトルのそれぞれに対して予め設定されている探索領域の形状を選択することを特徴とする請求項8記載の動きベクトル検出装置。   In addition, when the global motion vector is low in reliability, the search area determination unit is preset for each of the zero motion vector or the predefined motion vector when the global vector has low reliability. 9. The motion vector detecting apparatus according to claim 8, wherein the shape of the search area is selected. 前記現画像及び参照画像を複数のエリアに分割し、前記エリアごとにグローバルベクトルを決定して、前記エリアごとにグローバルベクトルの信頼性の判定結果に応じて探索領域の位置を決定する処理を行うことを特徴とする請求項1乃至9の何れか1項記載の動きベクトル検出装置。   The current image and the reference image are divided into a plurality of areas, a global vector is determined for each area, and a search region position is determined for each area according to the determination result of the reliability of the global vector. 10. The motion vector detection device according to claim 1, wherein 請求項1乃至10のいずれか1項に記載の動きベクトル検出装置を用いて検出された動きベクトルを用いて前記現画像の動き補償予測による符号化を行う動き補償予測符号化装置。   11. A motion compensated predictive coding apparatus that performs coding by motion compensated prediction of the current image using a motion vector detected by using the motion vector detecting apparatus according to claim 1. 現画像を構成する複数のマクロブロックの各々について、参照画像に設定された探索領域で探索することにより、前記複数のマクロブロックの各々の動きベクトルを検出する動きベクトル検出方法であって、
前記現画像と前記参照画像との動きベクトルであるグローバルベクトルを求めるグローバルベクトル決定ステップと、
前記グローバルベクトルの信頼性を判定する信頼性判定ステップと、
前記グローバルベクトルの信頼性の判定結果に応じて前記探索領域の形状及び位置の少なくとも一方を決定する探索領域決定ステップと、
前記参照画像の前記決定された探索領域内で前記現画像のマクロブロックを探索し、当該マクロブロックに対する動きベクトルを検出する動きベクトル探索ステップとを有することを特徴とする動きベクトル検出方法。
A motion vector detection method for detecting a motion vector of each of the plurality of macroblocks by searching in a search area set in a reference image for each of a plurality of macroblocks constituting a current image,
A global vector determination step for obtaining a global vector which is a motion vector between the current image and the reference image;
A reliability determination step of determining the reliability of the global vector;
A search region determination step of determining at least one of the shape and position of the search region according to the determination result of the reliability of the global vector;
A motion vector detection method comprising: searching for a macroblock of the current image within the determined search area of the reference image and detecting a motion vector for the macroblock.
コンピュータ装置を請求項1乃至請求項12のいずれか1項に記載の動きベクトル検出装置として機能させるプログラム。   A program causing a computer device to function as the motion vector detection device according to any one of claims 1 to 12. 請求項13記載のプログラムを格納したコンピュータ装置読み取り可能な記録媒体。   A computer-readable recording medium storing the program according to claim 13.
JP2005368143A 2005-12-21 2005-12-21 Motion vector detecting device and method therefor Withdrawn JP2007174202A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005368143A JP2007174202A (en) 2005-12-21 2005-12-21 Motion vector detecting device and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005368143A JP2007174202A (en) 2005-12-21 2005-12-21 Motion vector detecting device and method therefor

Publications (1)

Publication Number Publication Date
JP2007174202A true JP2007174202A (en) 2007-07-05

Family

ID=38300189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005368143A Withdrawn JP2007174202A (en) 2005-12-21 2005-12-21 Motion vector detecting device and method therefor

Country Status (1)

Country Link
JP (1) JP2007174202A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010183180A (en) * 2009-02-03 2010-08-19 Sanyo Electric Co Ltd Image processor and imaging device loaded with the same
WO2011077628A1 (en) * 2009-12-22 2011-06-30 パナソニック株式会社 Image encoding method, image encoding device and imaging system
GB2497812A (en) * 2011-12-22 2013-06-26 Canon Kk Motion estimation with motion vector predictor list
CN111008295A (en) * 2019-11-13 2020-04-14 广东小天才科技有限公司 Page retrieval method and device, electronic equipment and storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010183180A (en) * 2009-02-03 2010-08-19 Sanyo Electric Co Ltd Image processor and imaging device loaded with the same
WO2011077628A1 (en) * 2009-12-22 2011-06-30 パナソニック株式会社 Image encoding method, image encoding device and imaging system
GB2497812A (en) * 2011-12-22 2013-06-26 Canon Kk Motion estimation with motion vector predictor list
GB2497812B (en) * 2011-12-22 2015-03-04 Canon Kk Motion estimation with motion vector predictor list
CN111008295A (en) * 2019-11-13 2020-04-14 广东小天才科技有限公司 Page retrieval method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
JP4514203B2 (en) Motion vector detection apparatus and method
CA2576690C (en) Method and device for motion estimation and compensation for panorama image
CN101366279B (en) Adaptive motion search range
US8229233B2 (en) Method and apparatus for estimating and compensating spatiotemporal motion of image
US20100208817A1 (en) Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording medium
KR100843418B1 (en) Apparatus and method for image coding
JP2006313950A (en) Image coding apparatus, and image coding method
JP5216710B2 (en) Decryption processing method
JP2008061133A (en) Image encoding apparatus and image encoding method
US20050123039A1 (en) Motion estimation method for motion picture encoding and recording medium having program recorded thereon to implement the motion estimation method
CN101151889A (en) Image processing device and program
JP2009042917A (en) Electronic equipment, motion vector detection method and program
JP2007174202A (en) Motion vector detecting device and method therefor
JP4898415B2 (en) Moving picture coding apparatus and moving picture coding method
JP2005167976A (en) Motion vector detecting device and motion vector detecting program
JP4677351B2 (en) Motion compensator, motion compensation processing method, computer program, and storage medium
JP4429996B2 (en) Moving picture coding program, moving picture coding method, and moving picture coding apparatus
JP4235209B2 (en) Motion vector detection apparatus and motion vector detection method
JP2008301270A (en) Moving image encoding device and moving image encoding method
US10075691B2 (en) Multiview video coding method using non-referenced view video group
JP2008072608A (en) Apparatus and method for encoding image
JP5247210B2 (en) Moving picture coding apparatus and moving picture coding method
JP2011166207A (en) Motion vector prediction method, motion vector prediction device, and motion vector prediction program
JP2005348438A (en) Image encoding method
JP5339855B2 (en) Motion vector search device, motion vector search method, image processing device, image processing method, program, and storage medium

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20090303