JPH07240927A - Video encoder - Google Patents

Video encoder

Info

Publication number
JPH07240927A
JPH07240927A JP8152594A JP8152594A JPH07240927A JP H07240927 A JPH07240927 A JP H07240927A JP 8152594 A JP8152594 A JP 8152594A JP 8152594 A JP8152594 A JP 8152594A JP H07240927 A JPH07240927 A JP H07240927A
Authority
JP
Japan
Prior art keywords
prediction error
block
motion vector
error value
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8152594A
Other languages
Japanese (ja)
Inventor
Kinji Hashimoto
欽司 橋本
Shoichi Nishino
正一 西野
Hirobumi Uchida
博文 内田
Takumi Hasebe
巧 長谷部
Hiroshi Nishikawa
浩 西川
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP8152594A priority Critical patent/JPH07240927A/en
Publication of JPH07240927A publication Critical patent/JPH07240927A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To provide the video encoder which can reduce circuit scale in comparison with the case of using a full searching method and can be provided with picture quality close to the full search method. CONSTITUTION:A search information calculator 102 calculates one candidate vector from motion vector values stored in a motion vector memory 101. A high-accuracy computing element 103 sets a second search area which includes a block to be predicted by the candidate vector and is smaller than a search area on a reference frame, sets a candidate vector with accuracy smaller than one picture element and calculates a predictive error value for each candidate vector. A low-accuracy computing element 104 sets a candidate vector with accuracy larger than two picture elements inside the first search area on the reference frame and calculates a predictive error value for each candidate vector. A predictive error comparator 105 compares the predictive error values calculated by the high-accuracy and low-accuracy computing elements 103 and 104 so that the motion vector value of the encoded block can be decided.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、映像を記録および伝送
する場合に、映像信号のデータ量を削減するために動き
補償を用いて高能率符号化を行う映像符号化装置に関す
るものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a video coding apparatus which performs high efficiency coding using motion compensation in order to reduce the data amount of a video signal when recording and transmitting a video.

【0002】[0002]

【従来の技術】近年、映像のディジタル信号処理技術や
半導体の集積技術などの進歩により、映像信号をディジ
タル符号化した装置の開発が盛んになってきている。映
像信号の符号化装置の1つに、時間方向の冗長を削減す
るものがある。この代表例としていわゆるMPEG(Mo
ving Picture Expert Group)があり、現在標準化作業
が活発に行われている。MPEGでは、空間方向の圧縮
にDCT(離散コサイン変換)を、時間方向の圧縮に動
き補償フレーム間予測が用いられている。
2. Description of the Related Art In recent years, development of a device which digitally encodes a video signal has become popular due to advances in digital signal processing technology of video and semiconductor integration technology. One of the video signal encoding devices is one that reduces redundancy in the time direction. As a typical example of this, so-called MPEG (Mo
ving Picture Expert Group), and standardization work is currently underway. In MPEG, DCT (Discrete Cosine Transform) is used for compression in the spatial direction, and motion-compensated interframe prediction is used for compression in the temporal direction.

【0003】動き補償フレーム間予測とは、入力映像信
号をある大きさ(例えば水平16画素、垂直16画素)
のブロックに分割し、以前のフレームの再生映像信号で
ある参照フレ−ムから動きベクトル分ずらして予測を行
い、入力信号と予測信号の差分信号と動きベクトルで映
像信号を符号化する処理をいう。
Motion-compensated inter-frame prediction refers to an input video signal having a certain size (for example, 16 horizontal pixels and 16 vertical pixels).
It is divided into blocks, and the prediction is performed by shifting the motion vector from the reference frame which is the reproduced video signal of the previous frame, and the video signal is encoded by the difference signal between the input signal and the prediction signal and the motion vector. .

【0004】また、動きベクトルの検出とは、符号化ブ
ロックと符号化ブロックの位置に対応する参照フレーム
上のブロックを基準位置として、あらかじめ設定された
探索領域内のブロック群とのマッチングを行い、ブロッ
ク間の相関が高いブロックの位置を動きベクトルとして
検出する処理をいう。
The motion vector detection is performed by matching the coded block and a block on the reference frame corresponding to the position of the coded block as a reference position with a block group in a preset search area, This is a process of detecting the position of a block having a high correlation between blocks as a motion vector.

【0005】ここで、従来例における映像符号化装置に
ついて図面を参照しつつ説明する。図15は従来例にお
ける映像符号化装置の全体構成を示すブロック図であ
る。同図において、1501はバッファメモリで映像デ
ータを格納する。1502はブロック化器でバッファメ
モリ1501に格納された映像データを複数のブロック
に分割する。1503はフレームメモリで、前フレーム
の映像データを保持する。1504は動きベクトル検出
器で、ブロック化器1502により符号化ブロックとフ
レームメモリ1403に保持された映像データから探索
情報を用いて動きベクトルの検出を行う。1505は動
きベクトル符号化器で、動きベクトル検出器1504に
より検出された動きベクトルを符号化する。1506は
予測ブロック生成器で、フレームメモリ1503に保持
された映像データから動きベクトル分変位したブロック
の映像データを予測ブロックとして生成する。1507
は差分器で、符号化ブロックと予測ブロックの差分信号
を算出する。1508は直交変換器で、映像データを直
交変換する。1509は量子化器で、直交変換された映
像データの量子化を行う。1510は直交変換符号化器
で、直交変換および量子化された映像データを符号化す
る。1511は逆量子化器で、量子化器の逆の操作を行
う。1512は逆直交変換器で、直交変換された映像デ
ータを復号する。1513は加算器で、復号された映像
データと予測ブロックを加算する。1514、1515
はスイッチで、予測ブロックの有無により入力信号を切
替える。
Here, a conventional video encoding apparatus will be described with reference to the drawings. FIG. 15 is a block diagram showing the overall configuration of a conventional video encoding device. In the figure, a buffer memory 1501 stores video data. A blocker 1502 divides the video data stored in the buffer memory 1501 into a plurality of blocks. A frame memory 1503 holds the video data of the previous frame. A motion vector detector 1504 detects a motion vector from the coded block by the blocker 1502 and the video data held in the frame memory 1403 using search information. A motion vector encoder 1505 encodes the motion vector detected by the motion vector detector 1504. A prediction block generator 1506 generates, as a prediction block, video data of a block displaced by the motion vector from the video data held in the frame memory 1503. 1507
Is a differencer, which calculates the difference signal between the coding block and the prediction block. Reference numeral 1508 denotes an orthogonal transformer, which orthogonally transforms video data. A quantizer 1509 quantizes the orthogonally transformed video data. An orthogonal transform encoder 1510 encodes the orthogonally transformed and quantized video data. Reference numeral 1511 denotes an inverse quantizer, which performs the inverse operation of the quantizer. An inverse orthogonal transformer 1512 decodes the orthogonally transformed video data. An adder 1513 adds the decoded video data and the prediction block. 1514, 1515
Is a switch that switches the input signal depending on the presence or absence of the prediction block.

【0006】このように構成された従来例の映像符号化
装置の動作について説明する。まず、1フレーム目の映
像データをバッファメモリ1501に格納する。格納さ
れた映像データをブロック化器1502に与え、1フレ
ーム目の画面を碁盤状になるよう複数のブロックに分割
する。1ブロックは例えば縦16画素、横16画素とす
る。1フレーム目の映像データは予測映像データが存在
しないため、スイッチ1514は直交変換器1508に
接続され、各ブロックの映像データは直交変換器150
8に入力されて直交変換される。その変換係数は量子化
器1509により量子化し、直交変換符号化器1510
により符号化される。
The operation of the conventional video coding apparatus thus configured will be described. First, the video data of the first frame is stored in the buffer memory 1501. The stored video data is supplied to the blocker 1502, and the screen of the first frame is divided into a plurality of blocks so as to form a checkerboard pattern. For example, one block has 16 pixels vertically and 16 pixels horizontally. Since the predictive video data does not exist in the video data of the first frame, the switch 1514 is connected to the orthogonal transformer 1508, and the video data of each block is the orthogonal transformer 150.
8 and is subjected to orthogonal transformation. The transform coefficient is quantized by a quantizer 1509, and an orthogonal transform encoder 1510 is used.
Is encoded by.

【0007】一方、量子化器1509の量子化データは
逆量子化器1511にも与えられ、逆量子化の処理が施
される。さらに、逆直交変換器1512により再び元の
映像データに変換される。このときスイッチ1515に
より加算器1513はスルーの状態になっており、予測
ブロックが与えられない。加算器115により出力され
る1フレームの映像データはフレームメモリ1503に
格納され、次のフレームの動きベクトルの検出に用いら
れる。
On the other hand, the quantized data of the quantizer 1509 is also given to the inverse quantizer 1511 and subjected to inverse quantization processing. Further, the inverse orthogonal transformer 1512 converts the original video data again. At this time, the switch 1515 causes the adder 1513 to be in a through state, and no prediction block is given. One frame of video data output by the adder 115 is stored in the frame memory 1503 and is used for detecting the motion vector of the next frame.

【0008】さて、次のフレームの映像データが信号源
から出力されると、そのデータは一旦バッファメモリ1
501に格納される。格納された映像データはブロック
化器1502により複数のブロックに分割される。夫々
のブロックにおいて、各映像データは1フレーム前の映
像データと対応する位置を基準点にして、動きベクトル
検出器1504により予め決められた探索範囲内で調べ
られる。例えば探索範囲を左右及び上下方向に夫々7画
素とし、隣接フレーム間の予測誤差(信号レベルの差)
の最も少ない位置を動きベクトルと判定する。
Now, when the video data of the next frame is output from the signal source, the data is temporarily stored in the buffer memory 1.
It is stored in 501. The stored video data is divided into a plurality of blocks by the blocker 1502. In each block, each video data is searched within a predetermined search range by the motion vector detector 1504, with the position corresponding to the video data one frame before as a reference point. For example, the search range is set to 7 pixels in each of the left and right and up and down directions, and the prediction error between the adjacent frames (signal level difference)
Is determined as a motion vector.

【0009】次に、予測ブロック生成器1506は動き
ベクトル検出器1504で得られた動きベクトルのデー
タを用いて、1フレーム前の基準位置から動きベクトル
分変位された映像を予測し、予測ブロックを生成する。
ここで生成された予測ブロックは差分器1507に与え
られ、前フレームの該当ブロックとの差分データに変換
される。
Next, the prediction block generator 1506 uses the motion vector data obtained by the motion vector detector 1504 to predict the image displaced by the motion vector from the reference position one frame before, and predicts the prediction block. To generate.
The prediction block generated here is given to the differentiator 1507 and converted into difference data with respect to the corresponding block in the previous frame.

【0010】差分器1507で得られた差分データはス
イッチ1514を介して直交変換器1508に与えら
れ、信号の空間的冗長性を除去するための直交変換が行
われる。ここでの変換係数は量子化器1509により量
子化され、直交変換符号化器112により符号化され
る。一方、動きベクトル検出器1504により検出され
た動きベクトルは動きベクトル符号化器1505を用い
て符号化される。
The differential data obtained by the differentiator 1507 is given to the orthogonal transformer 1508 via the switch 1514, and orthogonal transform for removing spatial redundancy of the signal is performed. The transform coefficient here is quantized by the quantizer 1509, and encoded by the orthogonal transform encoder 112. On the other hand, the motion vector detected by the motion vector detector 1504 is encoded using the motion vector encoder 1505.

【0011】また、量子化データは逆量子化器1511
によって量子化器1509と逆の処理が施され、逆直交
変換器1512により差分データに再び変換される。そ
して加算器1513においてスイッチ1515を介して
与えられる映像の予測ブロックが差分データに加算さ
れ、元の映像データに戻される。戻された映像データは
フレームメモリ1503に格納され、次のブロックの動
きベクトルの検出に用いられる。
Also, the quantized data is the inverse quantizer 1511.
Is inversely processed by the quantizer 1509, and is inversely transformed into differential data by the inverse orthogonal transformer 1512. Then, in the adder 1513, the prediction block of the video given via the switch 1515 is added to the difference data to be returned to the original video data. The returned video data is stored in the frame memory 1503 and used for detecting the motion vector of the next block.

【0012】1フレーム目の映像データ以外に、他に符
号化しようとするブロックの入力信号そのものを変換し
て符号化した方が、差分データを変換した場合よりも符
号量が少なくなる場合がある。例えば、画面全体が新し
い映像となった場合は、入力データをそのまま符号化す
ることが必要となる。このときスイッチ1514を用い
てブロック化器1502の出力を直交変換器1508へ
入力し、予測データを加算器1513に与えないように
する。
[0012] In addition to the video data of the first frame, the code amount may be smaller when the input signal itself of the block to be encoded is converted and encoded than when the difference data is converted. . For example, when the entire screen becomes a new video, it is necessary to encode the input data as it is. At this time, the output of the blocker 1502 is input to the orthogonal transformer 1508 using the switch 1514 so that the prediction data is not given to the adder 1513.

【0013】代表的な動きベクトルの検出方法として、
全探索法、3ステップ法などがある。全探索法は、全て
の探索領域に渡り、1画素精度で動きベクトルの探索を
行う方法であり、画質面においては最もよい方法である
が、回路規模が大きいという問題がある。3ステップ法
は、全探索法の回路規模の問題を解決するために考案さ
れた方法であり、3段階の処理により動きベクトルの検
出を行う。すなわち、まず第1ステップでは、4画素精
度で探索することにより、動きベクトルを検出する。次
に第2ステップでは、第1ステップで検出された動きベ
クトルとその8近傍を2画素精度で探索することによ
り、動きベクトルを検出する。さらに第3ステップで
は、第2ステップで検出された動きベクトルとその8近
傍を1画素精度で探索することにより、符号化ブロック
の動きベクトルを決定する。3ステップ法は、全探索法
に比べ探索数が少なくなり回路規模の削減が可能とな
る。しかし、画質面では全探索法と比べて劣化が見られ
る。
As a typical motion vector detection method,
There are a full search method, a three-step method, and the like. The full search method is a method of searching for a motion vector with 1-pixel accuracy over the entire search area, and is the best method in terms of image quality, but has a problem of large circuit scale. The three-step method is a method devised to solve the circuit scale problem of the full search method, and detects a motion vector by three-stage processing. That is, first, in the first step, a motion vector is detected by searching with a precision of 4 pixels. Next, in the second step, the motion vector detected in the first step and its eight neighbors are searched with a 2-pixel precision to detect the motion vector. Furthermore, in the third step, the motion vector of the coding block is determined by searching the motion vector detected in the second step and its eight neighbors with one pixel precision. In the 3-step method, the number of searches is smaller than in the full search method, and the circuit size can be reduced. However, in terms of image quality, deterioration is seen compared to the full search method.

【0014】図16は、動きベクトルの探索範囲を水平
方向−7から+7、垂直方向−7から+7にした場合の
符号化ブロックと参照フレーム上の探索領域を表してい
る。ここで、符号化ブロックのサイズは、水平方向16
画素、垂直方向16画素である。また、探索領域のサイ
ズは、水平方向30画素、垂直方向30画素である。
FIG. 16 shows the search area on the coding block and the reference frame when the search range of the motion vector is set from -7 to +7 in the horizontal direction and from -7 to +7 in the vertical direction. Here, the size of the coding block is 16 in the horizontal direction.
There are 16 pixels in the vertical direction. The size of the search area is 30 pixels in the horizontal direction and 30 pixels in the vertical direction.

【0015】図17は全探索法を用いた場合の動きベク
トルの探索数を表している。動きベクトルの探索範囲が
水平方向−7から+7、垂直方向−7から+7の時、探
索数は225となる。
FIG. 17 shows the number of motion vector searches when the full search method is used. When the search range of the motion vector is −7 to +7 in the horizontal direction and −7 to +7 in the vertical direction, the number of searches is 225.

【0016】図18は3ステップ法を用いた場合の動き
ベクトルの探索数を表している。図で示すように、第1
ステップでは探索数が9、第2ステップでは探索数が
8、第3ステップでは探索数が8となり、総探索数は2
5となる。
FIG. 18 shows the number of motion vector searches when the three-step method is used. As shown in the figure, the first
The number of searches is 9 in the step, the number of searches is 8 in the second step, the number of searches is 8 in the third step, and the total number of searches is 2
It becomes 5.

【0017】[0017]

【発明が解決しようとする課題】このような従来の映像
符号化装置においては、全探索法を用いた場合、動きベ
クトルの探索数が多く、回路実現が大きくなるという問
題を有している。また、3ステップ法を用いた場合で
は、画質の低下という課題を有していた。
In such a conventional video coding apparatus, when the full search method is used, the number of motion vector searches is large and the circuit implementation becomes large. Further, when the three-step method is used, there is a problem that the image quality is deteriorated.

【0018】本発明は、従来の映像符号化装置が有して
いた上記課題に鑑み、全探索法を用いた場合と比較して
回路規模を削減することができ、かつ全探索法に近い画
質を有することを可能とする映像符号化装置を提供する
ことを目的としている。
In view of the above problems of the conventional video coding apparatus, the present invention can reduce the circuit scale as compared with the case of using the full search method, and has an image quality close to that of the full search method. It is an object of the present invention to provide a video encoding device capable of having the following.

【0019】[0019]

【課題を解決するための手段】上記目的を達成するため
に、本発明の映像符号化装置は、動きベクトルの検出を
行うためのあらかじめ設定された参照フレーム上の探索
領域を第1の探索領域としたとき、動きベクトルが検出
された符号化ブロックの動きベクトル値を格納する動き
ベクトルメモリと、動きベクトルメモリに格納されてい
る動きベクトル値から所定の演算式により1個の候補ベ
クトルを算出する候補ベクトル算出器と、候補ベクトル
により予測されるブロックを含み参照フレーム上の探索
領域より小さい第2の探索領域を設定し、第2の探索領
域内を1画素以下の精度で候補ベクトルを設定してその
候補ベクトルごとに予測誤差値を算出する高精度演算器
と、参照フレーム上の第1の探索領域内を2画素以上の
精度で候補ベクトルを設定してその候補ベクトルごとに
予測誤差値を算出する低精度演算器と、高精度演算器に
より算出された予測誤差値と低精度演算器により算出さ
れた予測誤差値とを比較することにより符号化ブロック
の動きベクトル値を決定する予測誤差値比較器を備えた
ものである。
In order to achieve the above object, the video coding apparatus of the present invention uses a search area on a preset reference frame for detecting a motion vector as a first search area. Then, one candidate vector is calculated from the motion vector memory that stores the motion vector value of the coded block in which the motion vector is detected, and the motion vector value stored in the motion vector memory by a predetermined arithmetic expression. A candidate vector calculator and a second search area including a block predicted by the candidate vector and smaller than the search area on the reference frame are set, and the candidate vector is set in the second search area with an accuracy of 1 pixel or less. And a high-precision calculator that calculates a prediction error value for each candidate vector and a candidate vector with an accuracy of 2 pixels or more in the first search area on the reference frame. By setting the prediction error value for each candidate vector and comparing the prediction error value calculated by the high-precision calculator with the prediction error value calculated by the high-precision calculator It is provided with a prediction error value comparator for determining the motion vector value of the coding block.

【0020】[0020]

【作用】本発明の映像符号化装置は、前記した構成によ
り、まず、探索情報算出器を用いて動きベクトルメモリ
に格納された動きベクトル値から所定の演算式により1
個の候補ベクトルを算出する。次に、高精度演算器で
は、その候補ベクトルにより予測されるブロックを含み
1画素以下の精度で候補ベクトルを設定してその候補ベ
クトルごとに予測誤差値を算出する。低精度演算器で
は、参照フレーム上の第1の探索領域内を2画素以上の
精度で候補ベクトルを設定してその候補ベクトルごとに
予測誤差値を算出する。最後に、予測誤差値比較器で
は、高精度演算器により算出された予測誤差値と低精度
演算器により算出された予測誤差値とを比較することに
より符号化ブロックの動きベクトル値を決定する。
With the above-described structure, the video coding apparatus of the present invention first uses the search information calculator to calculate 1 from the motion vector value stored in the motion vector memory.
Calculate candidate vectors. Next, the high-precision arithmetic unit sets a candidate vector with an accuracy of 1 pixel or less including a block predicted by the candidate vector, and calculates a prediction error value for each candidate vector. The low-precision calculator sets a candidate vector in the first search area on the reference frame with an accuracy of 2 pixels or more, and calculates a prediction error value for each candidate vector. Finally, the prediction error value comparator determines the motion vector value of the coding block by comparing the prediction error value calculated by the high precision arithmetic unit with the prediction error value calculated by the low precision arithmetic unit.

【0021】[0021]

【実施例】【Example】

(実施例1)以下に、本発明の第1実施例における映像
符号化装置について図面を用いて説明する。
(Embodiment 1) A video encoding apparatus according to a first embodiment of the present invention will be described below with reference to the drawings.

【0022】図1は本発明の第1実施例における映像符
号化装置の構成図である。ここでは、図15で示した従
来例における映像符号化装置の動きベクトル検出器15
04が異なるため、それらの構成を記載している。
FIG. 1 is a block diagram of a video encoding apparatus according to the first embodiment of the present invention. Here, the motion vector detector 15 of the video encoding device in the conventional example shown in FIG. 15 is used.
Since 04 is different, those configurations are described.

【0023】図1において、動きベクトルの検出を行う
ための、あらかじめ設定された参照フレーム上の探索領
域を第1の探索領域とする。101は動きベクトルメモ
リで、動きベクトルが検出された符号化ブロックの動き
ベクトル値を格納する。102は探索情報算出器で、動
きベクトルメモリ101に格納されている動きベクトル
値から所定の演算式により1個の候補ベクトルを算出す
る。103は高精度演算器で、候補ベクトルにより予測
されるブロックを含み参照フレーム上の探索領域より小
さい第2の探索領域を設定し、第2の探索領域内を1画
素以下の精度で候補ベクトルを設定して、その候補ベク
トルごとに予測誤差値を算出する。104は低精度演算
器で、参照フレーム上の第1の探索領域内を2画素以上
の精度で候補ベクトルを設定して、その候補ベクトルご
とに予測誤差値を算出する。105は予測誤差値比較器
で、高精度演算器103により算出された予測誤差値と
低精度演算器104により算出された予測誤差値とを比
較することにより、符号化ブロックの動きベクトル値を
決定する。
In FIG. 1, a search area on a preset reference frame for detecting a motion vector is referred to as a first search area. A motion vector memory 101 stores a motion vector value of a coded block in which a motion vector is detected. A search information calculator 102 calculates one candidate vector from a motion vector value stored in the motion vector memory 101 by a predetermined arithmetic expression. Reference numeral 103 denotes a high-precision arithmetic unit that sets a second search area including a block predicted by the candidate vector and smaller than the search area on the reference frame, and sets the candidate vector in the second search area with an accuracy of 1 pixel or less. After setting, a prediction error value is calculated for each of the candidate vectors. A low-precision calculator 104 sets a candidate vector in the first search area on the reference frame with an accuracy of 2 pixels or more, and calculates a prediction error value for each candidate vector. A prediction error value comparator 105 compares the prediction error value calculated by the high-precision calculator 103 with the prediction error value calculated by the low-precision calculator 104 to determine the motion vector value of the coding block. To do.

【0024】図2は、図1で示した詳細ブロックの動作
を説明するフローチャートである。以下に2フレーム目
以降の1フレームの映像データについて処理手順を示
す。 (ステップ201)フレームの画素数を水平800画素
・垂直800画素とし、ブロックの大きさを水平16画
素・垂直16画素とし、水平ブロックの総数を50、垂
直ブロックの総数を50とし、水平ブロックの初期値を
0、垂直ブロックの初期値を0とする。次に(ステップ
202)へ行く。 (ステップ202)動きベクトルメモリ101をすべて
0に初期設定する。次に(ステップ203)へ行く。 (ステップ203)探索情報算出器102を用いて符号
化ブロックの候補ベクトルの算出を行う。水平方向の候
補ベクトル値をHP、垂直方向の候補ベクトル値をVP
とする。(ステップ204)および(ステップ205)
へ行く。 (ステップ204)高精度演算器103により、符号化
ブロックのデータと探索領域のデータを用いて、図3の
フローチャートで示す方法で動きベクトルを検出する。
候補ベクトルを中心に隣接する8画素を探索するとした
とき、水平方向の動きベクトルの探索範囲をHP−1〜
HP+1、垂直方向の動きベクトルの探索範囲をVP−
1〜+VP+1、水平方向の探索精度を1画素、垂直方
向の探索精度を1画素にする。また、最小予測誤差値と
その動きベクトルの初期設定値を与えない。ここで、検
出された動きベクトルを水平方向HH、垂直方向VHと
し、そのときの最小予測誤差値をEHとする。次に(ス
テップ206)へ行く。 (ステップ205)低精度演算器104により、符号化
ブロックのデータと探索領域のデータを用いて図3のフ
ローチャートで示した方法で動きベクトルを検出する。
このとき、水平方向の動きベクトルの探索範囲を−4〜
+4、垂直方向の動きベクトルの探索範囲を−4〜+
4、水平方向の探索精度を4画素、垂直方向の探索精度
を4画素にする。また、最小予測誤差値とその動きベク
トルの初期設定値は与えない。ここで、検出された動き
ベクトルを水平方向HL、垂直方向VLとし、そのとき
の最小予測誤差値をELとする。次に(ステップ20
6)へ行く。 (ステップ206)予測誤差値比較器105を用いて、
高精度演算器103で検出した動きベクトルの予測誤差
値EHと低精度演算器104で検出した動きベクトルの
予測誤差値ELとを比較し、ELがEHよりも小さいと
きはHL、VLを、そうでないときはHH、VHを符号
化ブロックの動きベクトル値として決定する。次に(ス
テップ209)へ行く。 (ステップ207)予測誤差値比較器105で決定した
動きベクトルを動きベクトルメモリ101に格納する。
次に(ステップ208)へ行く。 (ステップ208)符号化フレームの水平ブロックに1
を加算する。次に(ステップ209)へ行く。 (ステップ209)符号化フレームの水平ブロックが水
平ブロックの総数である50に等しいかを調べる。等し
い場合、(ステップ210)へ行く。そうでない場合、
(ステップ203)へ行く。 (ステップ210)符号化フレームの水平ブロックを0
にリセットする。符号化ブロックの垂直ブロックに1を
加算する。次に(ステップ211)へ行く。 (ステップ212)符号化フレームの垂直ブロックが垂
直ブロックの総数である50に等しいかを調べる。等し
い場合、処理を終了する。そうでない場合、(ステップ
203)へ行く。
FIG. 2 is a flow chart for explaining the operation of the detailed block shown in FIG. Below, the processing procedure is shown for the video data of the 1st frame after the 2nd frame. (Step 201) The number of pixels in the frame is 800 horizontal pixels and 800 vertical pixels, the block size is 16 horizontal pixels and 16 vertical pixels, the total number of horizontal blocks is 50, and the total number of vertical blocks is 50. The initial value is 0 and the vertical block initial value is 0. Next, go to (step 202). (Step 202) The motion vector memory 101 is initialized to 0. Next, go to (step 203). (Step 203) Use the search information calculator 102 to calculate the candidate vector of the coding block. The candidate vector value in the horizontal direction is HP, and the candidate vector value in the vertical direction is VP
And (Step 204) and (Step 205)
Go to (Step 204) The high-precision arithmetic unit 103 detects a motion vector by using the data of the encoded block and the data of the search area by the method shown in the flowchart of FIG.
Assuming that 8 pixels adjacent to the candidate vector are searched, the search range of the horizontal motion vector is HP-1 to HP-1.
HP + 1, the search range of the vertical motion vector is VP−
1 to + VP + 1, the horizontal search accuracy is 1 pixel, and the vertical search accuracy is 1 pixel. Further, the minimum prediction error value and the initial setting value of its motion vector are not given. Here, the detected motion vector is HH in the horizontal direction and VH in the vertical direction, and the minimum prediction error value at that time is EH. Next, go to (step 206). (Step 205) The low-precision arithmetic unit 104 detects the motion vector using the data of the encoded block and the data of the search area by the method shown in the flowchart of FIG.
At this time, the search range of the horizontal motion vector is -4 to
+4, vertical motion vector search range is -4 to +
4. The search accuracy in the horizontal direction is 4 pixels, and the search accuracy in the vertical direction is 4 pixels. Also, the minimum prediction error value and the initial setting value of its motion vector are not given. Here, the detected motion vector is HL in the horizontal direction and VL in the vertical direction, and the minimum prediction error value at that time is EL. Next (Step 20
Go to 6). (Step 206) Using the prediction error value comparator 105,
The prediction error value EH of the motion vector detected by the high-precision calculator 103 is compared with the prediction error value EL of the motion vector detected by the low-precision calculator 104. If EL is smaller than EH, HL and VL are If not, HH and VH are determined as motion vector values of the coding block. Next, go to (step 209). (Step 207) The motion vector determined by the prediction error value comparator 105 is stored in the motion vector memory 101.
Next, go to (step 208). (Step 208) 1 in horizontal block of encoded frame
Is added. Next, go to (step 209). (Step 209) It is checked whether the horizontal block of the encoded frame is equal to 50, which is the total number of horizontal blocks. If they are equal, go to (step 210). If not,
Go to (step 203). (Step 210) The horizontal block of the encoded frame is set to 0.
Reset to. Add 1 to the vertical block of the encoded block. Next, go to (step 211). (Step 212) It is checked whether the vertical block of the encoded frame is equal to 50, which is the total number of vertical blocks. If they are equal, the process ends. If not, go to (step 203).

【0025】なお、ここでは、高精度演算器103およ
び低精度演算器104でそれぞれ動きベクトルを検出し
た後に、予測誤差値比較器105でそれらの予測誤差値
を比較することにより、符号化ブロックの動きベクトル
の決定を行っているが、高精度演算器103において符
号化ブロックと各探索点に対応するブロックとのすべて
の予測誤差値を抽出し、低精度演算器104において符
号化ブロックと各探索点に対応するブロックとのすべて
の予測誤差値を抽出し、予測誤差値比較器105におい
てそれらのすべての予測誤差値を比較することにより、
符号化ブロックの動きベクトルを決定してもよい。
Here, after the motion vector is detected by each of the high-precision arithmetic unit 103 and the low-precision arithmetic unit 104, the prediction error value comparator 105 compares the prediction error values with each other, and Although the motion vector is determined, the high-precision arithmetic unit 103 extracts all prediction error values between the encoded block and the block corresponding to each search point, and the low-precision arithmetic unit 104 extracts the encoded block and each search. By extracting all prediction error values with the block corresponding to the point and comparing all those prediction error values in the prediction error value comparator 105,
The motion vector of the coding block may be determined.

【0026】図3は、動きベクトル検出器のフローチャ
ートである。以下に、処理手順を示す。 (ステップ301)水平方向の動きベクトルの探索範囲
をH_SRT〜H_END、垂直方向の動きベクトルの
探索範囲をV_SRT〜V_END、水平方向の探索精
度をH_INTERVAL、垂直方向の探索精度をV_
INTERVALに設定する。次に(ステップ302)
へ行く。 (ステップ302)予測誤差値の最小値とその動きベク
トルの初期設定をする。初期値が与えられた場合はその
値を設定する。初期値が与えられない場合は、最小予測
誤差値として取り得る最大値より大きな値を設定し、動
きベクトルの初期値を設定しない。次に(ステップ30
3)へ行く。 (ステップ303)水平動きベクトルをH_SRTに、
垂直動きベクトルをV_SRTに設定する。次に(ステ
ップ304)へ行く。 (ステップ304)初期設定をした動きベクトル値かど
うかを調べる。そうならば、次に(ステップ310)へ
行く。そうでなければ(ステップ305)へ行く。 (ステップ305)探索領域内の符号化ブロックの対応
位置から動きベクトル分ずれた位置のブロックである参
照ブロックを作成する。次に(ステップ306)へ行
く。 (ステップ306)符号化ブロックと参照ブロックとの
予測誤差値を求める。ここでは予測誤差値の算出方法と
して、ブロック間の対応画素の差分値の絶対値和を用い
る。次に(ステップ307)へ行く。 (ステップ307)算出した予測誤差値と最小予測誤差
値を比較する。算出した予測誤差値が最小予測誤差値よ
り小さい場合には(ステップ308)へ行く。そうでな
い場合には(ステップ310)へ行く。 (ステップ308)最小予測誤差値を算出した予測誤差
値に更新する。次に(ステップ309)へ行く。 (ステップ309)最小評価誤差値に対応する動きベク
トルを更新する。次に(ステップ310)へ行く。 (ステップ310)水平動きベクトルにH_INTER
VALを加算する。次に(ステップ311)に行く。 (ステップ311)水平動きベクトルがH_ENDより
大きいかどうかを調べる。大きい場合(312)に行
く。そうでない場合には(ステップ304)に行く。 (ステップ312)水平動きベクトルをH_SRTに設
定する。垂直動きベクトルにV_INTERVALを加
算する。次に(ステップ313)へ行く。 (ステップ313)垂直動きベクトルがV_ENDより
大きいかどうかを調べる。大きい場合(314)へ行
く。そうでない場合には(ステップ304)に行く。 (ステップ314)最小評価誤差関数の動きベクトルを
動きベクトルとして検出する。処理を終了する。
FIG. 3 is a flowchart of the motion vector detector. The processing procedure is shown below. (Step 301) Horizontal motion vector search range is H_SRT to H_END, vertical motion vector search range is V_SRT to V_END, horizontal search accuracy is H_INTERVAL, and vertical search accuracy is V_.
Set to INTERVAL. Next (step 302)
Go to (Step 302) Initialize the minimum value of the prediction error value and its motion vector. If an initial value is given, set that value. When the initial value is not given, a value larger than the maximum value that can be taken as the minimum prediction error value is set, and the initial value of the motion vector is not set. Next (Step 30
Go to 3). (Step 303) Set the horizontal motion vector to H_SRT,
Set the vertical motion vector to V_SRT. Next, go to (step 304). (Step 304) It is checked whether the motion vector value has been initialized. If so, then go to (step 310). Otherwise (Go to step 305). (Step 305) A reference block, which is a block at a position shifted by the motion vector from the corresponding position of the encoded block in the search area, is created. Next, go to (step 306). (Step 306) A prediction error value between the coded block and the reference block is obtained. Here, as the method of calculating the prediction error value, the sum of absolute values of the difference values of corresponding pixels between blocks is used. Next, go to (step 307). (Step 307) The calculated prediction error value and the minimum prediction error value are compared. When the calculated prediction error value is smaller than the minimum prediction error value, the procedure goes to (step 308). If not, go to (step 310). (Step 308) The minimum prediction error value is updated to the calculated prediction error value. Next, go to (step 309). (Step 309) The motion vector corresponding to the minimum evaluation error value is updated. Next, go to (step 310). (Step 310) H_INTER is set to the horizontal motion vector.
Add VAL. Next, go to (step 311). (Step 311) It is checked whether or not the horizontal motion vector is larger than H_END. If so, go to (312). If not, go to (step 304). (Step 312) The horizontal motion vector is set to H_SRT. Add V_INTERVAL to the vertical motion vector. Next, go to (step 313). (Step 313) It is checked whether the vertical motion vector is larger than V_END. If it is larger, go to (314). If not, go to (step 304). (Step 314) The motion vector of the minimum evaluation error function is detected as a motion vector. The process ends.

【0027】なお、図3の動きベクトルの初期設定は3
ステップ法の第2ステップや第3ステップなどの、あら
かじめ前ステップの動きベクトル値が算出されている場
合にその検出結果を用いる時などに行われる。
The initial setting of the motion vector in FIG. 3 is 3
This is performed when the detection result is used when the motion vector value of the previous step is calculated in advance, such as the second step or the third step of the step method.

【0028】次に、探索情報算出器102による候補ベ
クトルの算出方法について説明する。
Next, a method of calculating a candidate vector by the search information calculator 102 will be described.

【0029】図4は、候補ベクトルの算出方法を説明す
るための図である。符号化は左上のブロックから右方向
に順次行われて行き、1水平マクロブロックラインの処
理が終了したならば次の水平マクロブロックラインの処
理を行うとする。ここでは、符号化ブロックの隣接する
4ブロックである上ブロック、左ブロック、左上ブロッ
ク、右下ブロックの水平値、垂直値ごとの動きベクトル
の平均値を予測値として用いている。このとき動きベク
トルメモリ702に必要な容量は水平方向のブロック数
+1の動きベクトルに対応する容量である。
FIG. 4 is a diagram for explaining a method of calculating a candidate vector. Encoding is sequentially performed from the upper left block in the right direction, and when the processing of one horizontal macroblock line is completed, the processing of the next horizontal macroblock line is performed. Here, the average value of the motion vector for each horizontal value and vertical value of the upper block, the left block, the upper left block, and the lower right block, which are the four adjacent blocks of the coded block, is used as the prediction value. At this time, the capacity required for the motion vector memory 702 is the capacity corresponding to the motion vector of the number of blocks in the horizontal direction + 1.

【0030】なお、候補ベクトルの算出方法として動き
ベクトルの平均値の代わりに動きベクトルの中央値や最
多頻度値を用いることもできる。
As a method of calculating the candidate vector, the median value or the most frequent value of the motion vector may be used instead of the average value of the motion vector.

【0031】図5は候補ベクトルの算出を行い2つの精
度の異なる探索を行う方法(候補ベクトルの算出を用い
た2精度法)の場合の動きベクトルの探索数を表してい
る。図で示すように、高精度演算器103で候補ベクト
ルとそれに隣接する8画素を探索するとした場合探索数
が9、低精度演算器104では探索数が9となり、総探
索数は18となる。
FIG. 5 shows the number of motion vector searches in the case of a method of calculating a candidate vector and performing two different searches (two-precision method using the calculation of a candidate vector). As shown in the figure, when the high-precision arithmetic unit 103 searches a candidate vector and eight pixels adjacent thereto, the number of searches is 9, and the low-precision arithmetic unit 104 has 9 searches, and the total number of searches is 18.

【0032】ここで、高精度演算器103の探索点にお
ける動きベクトル値が符号化ブロックの動きベクトル値
になるのは、ブロックの領域が静止状態、パン・ズー
ム、同一速度の移動物体などの場合である。低精度演算
器 104の探索点における動きベクトル値が符号化ブ
ロックの動きベクトル値になるのは、速度の異なる領域
の境界や前フレームに存在しない領域などの場合であ
る。低精度演算器104を設けることにより候補ベクト
ルの隣接領域に動きベクトルがない場合においても全探
索領域における動きベクトルの探索を行うため大幅な動
きベクトル誤りがなくなり、画質の劣化を防ぐことがで
きる。
Here, the motion vector value at the search point of the high-precision arithmetic unit 103 becomes the motion vector value of the coded block when the block area is in a stationary state, pan / zoom, or moving object of the same speed. Is. The motion vector value at the search point of the low-precision arithmetic unit 104 becomes the motion vector value of the coding block in the case of a boundary between regions having different speeds or a region that does not exist in the previous frame. By providing the low-precision arithmetic unit 104, even when there is no motion vector in the area adjacent to the candidate vector, the motion vector is searched for in the entire search area, so that a large motion vector error is eliminated and deterioration of image quality can be prevented.

【0033】以上のように、第1実施例の映像符号化装
置を用いることにより、高精度演算器103と低精度演
算器104の処理を並列に行うことにより、動きベクト
ルの検出を1ステップで行うことが可能となるため、3
ステップ法と比較して処理時間が約1/3に削減される
かそれを避けるためのパイプライン処理による回路増加
を不要にすることができる。また、動きベクトルの探索
数が全探索法と比較して1/10以下に削減できる。さ
らに、探索情報算出器102により候補ベクトルの精度
を向上させることと、低精度演算器104を設けること
により大幅な動きベクトル誤りがなくすことに全探索法
に近い画質に向上することが可能となる。
As described above, by using the video coding apparatus of the first embodiment, the processing of the high-precision arithmetic unit 103 and the low-precision arithmetic unit 104 is performed in parallel, so that the motion vector can be detected in one step. 3 because it becomes possible to do
The processing time can be reduced to about ⅓ as compared with the step method, or the increase of circuits by pipeline processing for avoiding it can be eliminated. Further, the number of motion vector searches can be reduced to 1/10 or less as compared with the full search method. Furthermore, by improving the accuracy of the candidate vector by the search information calculator 102 and by providing the low-precision calculator 104, it is possible to eliminate a large motion vector error and improve the image quality close to that of the full search method. .

【0034】なお、ここでは探索精度を1画素としてい
るが、0.5画素精度にした場合、図5における高精度
動きベクトル検出の9点の探索点に加え、0.5画素精
度における近傍8画素の探索点との合計17点の探索を
1ステップで行うことにより、動きベクトルを検出す
る。すなわち、0.5画素精度においても1ステップで
動きベクトルを検出することが可能となる。
Although the search accuracy is set to 1 pixel here, when it is set to 0.5 pixel accuracy, in addition to the 9 search points for high-precision motion vector detection in FIG. A motion vector is detected by performing a total of 17 search points including pixel search points in one step. That is, it is possible to detect the motion vector in one step even with an accuracy of 0.5 pixel.

【0035】(実施例2)第1実施例による削減では装
置実現上支障があり、さらなる削減が必要な場合があ
る。
(Embodiment 2) The reduction according to the first embodiment may impede the realization of the apparatus and may require further reduction.

【0036】そこで、第2実施例では、動きベクトルメ
モリを直前の動きベクトル値に必要な容量に削減し、候
補ベクトルとしてそのまま直前の動きベクトル値を用い
ることにより、動きベクトルを検出することが可能な動
きベクトル符号化装置について述べる。
Therefore, in the second embodiment, the motion vector can be detected by reducing the motion vector memory to a capacity necessary for the immediately preceding motion vector value and using the immediately preceding motion vector value as a candidate vector. A motion vector coding device will be described.

【0037】以下に、本発明の第2実施例における映像
符号化装置について図面を用いて説明する。
A video coding apparatus according to the second embodiment of the present invention will be described below with reference to the drawings.

【0038】図6は本発明の第2実施例における映像符
号化装置の構成図である。ここでは、図15で示した従
来例における映像符号化装置の動きベクトル検出器10
4が異なるため、それらの構成を記載している。
FIG. 6 is a block diagram of the video coding apparatus in the second embodiment of the present invention. Here, the motion vector detector 10 of the video encoding device in the conventional example shown in FIG. 15 is used.
4 are different, their configurations are described.

【0039】図6において、動きベクトルの検出を行う
ためのあらかじめ設定された参照フレーム上の探索領域
を第1の探索領域とする。601は動きベクトルメモリ
で、直前の符号化ブロックの動きベクトル値を格納す
る。602は高精度演算器で、動きベクトルメモリ60
1に格納された動きベクトル値より予測されるブロック
を含み参照フレーム上の探索領域より小さい第2の探索
領域を設定し、第2の探索領域内を1画素以下の精度で
候補ベクトルを設定してその候補ベクトルごとに予測誤
差値を算出する。603は低精度演算器で、参照フレー
ム上の第1の探索領域内を2画素以上の精度で候補ベク
トルを設定してその候補ベクトルごとに予測誤差値を算
出する。604は予測誤差値比較器で、高精度演算器6
02により算出された予測誤差値と低精度演算器603
により算出された予測誤差値とを比較することにより符
号化ブロックの動きベクトル値を決定する。
In FIG. 6, the search area on the reference frame set in advance for detecting the motion vector is the first search area. A motion vector memory 601 stores the motion vector value of the immediately preceding coded block. 602 is a high-precision arithmetic unit, which is a motion vector memory 60.
A second search area including a block predicted from the motion vector value stored in 1 and smaller than the search area on the reference frame is set, and a candidate vector is set within the second search area with an accuracy of 1 pixel or less. A prediction error value is calculated for each candidate vector. A low-precision calculator 603 sets a candidate vector in the first search area on the reference frame with an accuracy of 2 pixels or more, and calculates a prediction error value for each candidate vector. Numeral 604 is a prediction error value comparator, which is a high-precision arithmetic unit 6
Prediction error value calculated by 02 and low-precision calculator 603
The motion vector value of the coding block is determined by comparing with the prediction error value calculated by.

【0040】図7は、図6で示した詳細ブロックの動作
を説明するフローチャートである。以下に2フレーム目
以降の1フレームの映像データについて処理手順を示
す。 (ステップ701)フレームの画素数を水平800画素
・垂直800画素とし、ブロックの大きさを水平16画
素・垂直16画素とし、水平ブロックの総数を50、垂
直ブロックの総数を50とし、水平ブロックの初期値を
0、垂直ブロックの初期値を0とする。次に(ステップ
702)へ行く。 (ステップ702)動きベクトルメモリ601の水平方
向をHP、垂直方向をVPとし、共に0に初期設定す
る。次に、(ステップ703)および(ステップ70
4)へ行く。 (ステップ703)高精度演算器602により、符号化
ブロックのデータと探索領域のデータを用いて図8のフ
ローチャートで示した方法で動きベクトルを検出する。
動きベクトルメモリ601に格納された値を中心に隣接
する8画素を探索するとしたとき、水平方向の動きベク
トルの探索範囲をHP−1〜HP+1、垂直方向の動き
ベクトルの探索範囲をVP−1〜+VP+1、水平方向
の探索精度を1画素、垂直方向の探索精度を1画素にす
る。また、最小予測誤差値とその動きベクトルの初期設
定値を与えない。ここで、検出された動きベクトルを水
平方向HH、垂直方向VHとし、そのときの最小予測誤
差値をEHとする。次に(ステップ705)へ行く。 (ステップ704)低精度演算器603により、符号化
ブロックのデータと探索領域のデータを用いて図8のフ
ローチャートで示した方法で動きベクトルを検出する。
このとき、水平方向の動きベクトルの探索範囲を−4〜
+4、垂直方向の動きベクトルの探索範囲を−4〜+
4、水平方向の探索精度を4画素、垂直方向の探索精度
を4画素にする。また、最小予測誤差値とその動きベク
トルの初期設定値は与えない。ここで、検出された動き
ベクトルを水平方向HL、垂直方向VLとし、そのとき
の予測誤差値をELとする。次に(ステップ705)へ
行く。 (ステップ705)予測誤差値比較器604を用いて、
高精度演算器602で検出した動きベクトルの予測誤差
値EHと低精度演算器603で検出した動きベクトルの
予測誤差値ELとを比較し、ELがEHよりも小さいと
きはHL、VLを、そうでないときはHH、VHを符号
化ブロックの動きベクトル値として決定する。次に(ス
テップ706)へ行く。 (ステップ706)予測誤差値比較器604で決定した
動きベクトルを動きベクトルメモリ601に格納する。
次に(ステップ707)へ行く。 (ステップ707)符号化フレームの水平ブロックに1
を加算する。次に(ステップ708)へ行く。 (ステップ708)符号化フレームの水平ブロックが水
平ブロックの総数である50に等しいかを調べる。等し
い場合には、(ステップ709)へ行く。そうでない場
合には、(ステップ703)および(ステップ704)
へ行く。 (ステップ709)符号化フレームの水平ブロックを0
にリセットする。符号化ブロックの垂直ブロックに1を
加算する。次に(ステップ710)へ行く。 (ステップ710)符号化フレームの垂直ブロックが垂
直ブロックの総数である50に等しいかを調べる。等し
い場合、処理を終了する。そうでない場合には、(ステ
ップ702)へ行く。
FIG. 7 is a flow chart for explaining the operation of the detailed block shown in FIG. Below, the processing procedure is shown for the video data of the 1st frame after the 2nd frame. (Step 701) The number of pixels in the frame is 800 horizontal pixels / vertical 800 pixels, the block size is 16 horizontal pixels / 16 vertical pixels, the total number of horizontal blocks is 50, and the total number of vertical blocks is 50. The initial value is 0 and the vertical block initial value is 0. Next, go to (step 702). (Step 702) The horizontal direction of the motion vector memory 601 is set to HP, the vertical direction is set to VP, and both are initialized to 0. Next, (step 703) and (step 70
Go to 4). (Step 703) The high-precision arithmetic unit 602 detects a motion vector using the data of the encoded block and the data of the search area by the method shown in the flowchart of FIG.
When searching for 8 adjacent pixels centered on the value stored in the motion vector memory 601, the search range of the horizontal motion vector is HP-1 to HP + 1 and the search range of the vertical motion vector is VP-1 to VP-1. + VP + 1, the horizontal search accuracy is 1 pixel, and the vertical search accuracy is 1 pixel. Further, the minimum prediction error value and the initial setting value of its motion vector are not given. Here, the detected motion vector is HH in the horizontal direction and VH in the vertical direction, and the minimum prediction error value at that time is EH. Next, go to (step 705). (Step 704) The low-precision arithmetic unit 603 detects a motion vector using the data of the encoded block and the data of the search area by the method shown in the flowchart of FIG.
At this time, the search range of the horizontal motion vector is -4 to
+4, vertical motion vector search range is -4 to +
4. The search accuracy in the horizontal direction is 4 pixels, and the search accuracy in the vertical direction is 4 pixels. Also, the minimum prediction error value and the initial setting value of its motion vector are not given. Here, the detected motion vector is set to the horizontal direction HL and the vertical direction VL, and the prediction error value at that time is set to EL. Next, go to (step 705). (Step 705) Using the prediction error value comparator 604,
The prediction error value EH of the motion vector detected by the high precision calculator 602 is compared with the prediction error value EL of the motion vector detected by the low precision calculator 603. If EL is smaller than EH, HL and VL are set. If not, HH and VH are determined as motion vector values of the coding block. Next, go to (step 706). (Step 706) The motion vector determined by the prediction error value comparator 604 is stored in the motion vector memory 601.
Next, go to (Step 707). (Step 707) 1 in the horizontal block of the encoded frame
Is added. Next, go to (step 708). (Step 708) It is checked whether the horizontal block of the encoded frame is equal to 50, which is the total number of horizontal blocks. If they are equal, go to (step 709). If not, (step 703) and (step 704)
Go to (Step 709) The horizontal block of the encoded frame is set to 0.
Reset to. Add 1 to the vertical block of the encoded block. Next, go to (step 710). (Step 710) It is checked whether the vertical block of the encoded frame is equal to 50, which is the total number of vertical blocks. If they are equal, the process ends. If not, go to (step 702).

【0041】なお、ここでは高精度演算器602および
低精度演算器603でそれぞれ動きベクトルを検出した
後に予測誤差値比較器604でそれらの予測誤差値を比
較することにより符号化ブロックの動きベクトルの決定
を行っているが、高精度演算器602において符号化ブ
ロックと各探索点に対応するブロックとのすべての予測
誤差値を抽出し、低精度演算器603において符号化ブ
ロックと各探索点に対応するブロックとのすべての予測
誤差値を抽出し、予測誤差値比較器604においてそれ
らのすべての予測誤差値を比較することにより符号化ブ
ロックの動きベクトルを決定してもよい。
It should be noted that here, the high-precision arithmetic unit 602 and the low-precision arithmetic unit 603 respectively detect the motion vectors, and then the prediction error value comparator 604 compares the prediction error values with each other, thereby calculating the motion vector of the encoded block. Although the decision is made, the high-precision arithmetic unit 602 extracts all prediction error values of the coding block and the block corresponding to each search point, and the low-precision arithmetic unit 603 corresponds to the coding block and each search point. The prediction vector may be determined by extracting all the prediction error values with respect to the block to be encoded and comparing all the prediction error values with the prediction error value comparator 604.

【0042】以上のように、第2実施例の動きベクトル
符号化装置を用いることにより、直前の動きベクトル値
を候補ベクトルに用いて、候補ベクトル算出器をなくす
ことと動きベクトルメモリの容量を直前の動きベクトル
値のみに削減することができ、第1実施例よりも簡単な
構成で動きベクトルの検出が可能となる。さらに、垂直
方向1/2画素間引きを行うことにより、構成チャンネ
ルを減らすことが可能である。
As described above, by using the motion vector coding apparatus of the second embodiment, the immediately preceding motion vector value is used as the candidate vector, eliminating the candidate vector calculator and reducing the capacity of the motion vector memory to the immediately preceding position. It is possible to reduce only the motion vector values of the above, and the motion vector can be detected with a simpler configuration than the first embodiment. Furthermore, it is possible to reduce the number of constituent channels by thinning out 1/2 pixels in the vertical direction.

【0043】さらなる回路削減手法として、画素間引き
を併用することができる。特に垂直ラインを1画素づつ
間引き(垂直方向1/2画素間引きと呼ぶ)、1フィー
ルドのデータのみで動きベクトルの検出を行うことによ
り動きベクトル検出に必要な探索領域の画素データが半
分になり、メモリアクセスに必要な時間が半減できるた
め、システムクロックの速い回路において、画素間引き
を用いない場合複数チャンネルで構成していたものに対
し、構成チャンネル数を減らすことが可能となる。
Pixel thinning can be used together as a further circuit reduction method. In particular, the vertical lines are decimated pixel by pixel (called vertical pixel ½ pixel decimation), and by detecting the motion vector using only one field of data, the pixel data in the search area required for motion vector detection is halved. Since the time required for memory access can be halved, in a circuit with a fast system clock, the number of constituent channels can be reduced as compared with the case where plural pixels are used when pixel thinning is not used.

【0044】本実施例の映像符号化装置は、高精度演算
器と低精度演算器の処理を並列に行うことにより、動き
ベクトルの検出を1ステップで行うことが可能となるた
め、3ステップ法と比較して処理時間が削減されるかそ
れを避けるためのパイプライン処理による回路増加を不
要にすることができる。また、動きベクトルの探索数が
全探索と比較して大幅に削減できる。その上、直前の動
きベクトル値を候補ベクトルとして用いることにより、
候補算出器をなくし動きベクトルメモリ容量を直前の動
きベクトル値のみに削減することができる。さらに、垂
直方向1/2間引きを併用すれば、複数チャンネル構成
で実現していた場合、構成チャンネル数を減らすことが
可能となる。また、高精度の探索と低精度の探索を併用
することにより全探索法に近い画質に向上することが可
能となる。
In the video coding apparatus of this embodiment, the motion vector can be detected in one step by performing the processes of the high-precision arithmetic unit and the low-precision arithmetic unit in parallel. The processing time can be reduced as compared with, or the increase of circuits by pipeline processing for avoiding it can be unnecessary. In addition, the number of motion vector searches can be significantly reduced compared to the full search. Moreover, by using the previous motion vector value as a candidate vector,
It is possible to eliminate the candidate calculator and reduce the motion vector memory capacity to only the immediately preceding motion vector value. Furthermore, if the vertical ½ decimation is also used, it is possible to reduce the number of constituent channels when the plural channels are realized. Further, by using the high precision search and the low precision search together, it is possible to improve the image quality close to that of the full search method.

【0045】(実施例3)従来の方式では、最小の予測
誤差値となる動きベクトルを符号化ブロックの動きベク
トルと決定しているので、符号化ブロックと探索領域が
共に背景の同一輝度の壁などの同一パターンの領域では
相関値の差が小さくなり、動きベクトル値がさまざまな
値に分散する場合がある。
(Embodiment 3) In the conventional method, since the motion vector having the minimum prediction error value is determined as the motion vector of the coding block, both the coding block and the search area have the same brightness background wall. In the areas of the same pattern such as, the difference in the correlation value becomes small, and the motion vector value may be dispersed into various values.

【0046】実施例1、実施例2で示した手法では、符
号化ブロックに隣接するブロックの検出済みの動きベク
トル値を用いて詳細に探索する領域を決定している。し
かし、このような方式では、同一パターンの領域におけ
る動きベクトルの検出では、隣接するブロックの動きベ
クトル値がさまざまな値に分散するため、符号化ブロッ
クの動きベクトルが詳細に探索する領域に入らなくなる
確率が増大していくため、同一パターン領域の境界で動
きベクトルの予測精度が低下し、符号化効率が低下する
という課題が生じた。
In the methods shown in the first and second embodiments, the area to be searched in detail is determined by using the detected motion vector value of the block adjacent to the coded block. However, in such a method, in detecting motion vectors in the same pattern area, since the motion vector values of adjacent blocks are dispersed into various values, the motion vector of the coded block does not enter the area to be searched in detail. Since the probability increases, the prediction accuracy of the motion vector decreases at the boundary of the same pattern area, which causes a problem that the coding efficiency decreases.

【0047】また、動きベクトルの符号化方法として、
直前ブロックの動きベクトルとの差分値を可変長符号化
する方法が用いることにより符号化効率が向上する。こ
れは、静止状態やパニング・ズーム時など通常よく現れ
る映像において、移動物体のエッジ以外の領域では差分
値が0の近傍に集中するため、差分値を可変長符号化す
ることにより符号量の削減を図ることが可能であるから
である。
As a motion vector coding method,
Coding efficiency is improved by using the method of variable length coding the difference value from the motion vector of the immediately preceding block. This is because the difference value is concentrated in the vicinity of 0 in the area other than the edge of the moving object in an image that often appears in a stationary state or during panning / zooming. Therefore, the difference value is variable length coded to reduce the code amount. This is because it is possible to

【0048】このような符号化方式を用いた場合、動き
ベクトルの検出において、同一パターンの領域の場合、
予測ブロックを決定するための予測誤差値にほとんど差
がなくなり、動きベクトルがさまざまな値で検出される
確率が高まるため、動きベクトルを差分符号化した時、
符号化効率が低下するという課題を有していた。
When such an encoding method is used, in the detection of the motion vector, in the case of the area of the same pattern,
There is almost no difference in the prediction error value for determining the prediction block, and the probability that the motion vector is detected at various values increases, so when the motion vector is differentially encoded,
There is a problem that the coding efficiency is reduced.

【0049】本実施例は、同一パターンの領域におい
て、直前に符号化した動きベクトル値あるいはその近傍
の値を選択する頻度を高めることを可能にしている。
In the present embodiment, it is possible to increase the frequency of selecting the immediately preceding encoded motion vector value or a value in the vicinity thereof in the same pattern area.

【0050】以下、本発明の第3実施例の映像符号化装
置について図面を用いて説明する。図8は本発明の第3
実施例における映像符号化装置の構成図である。ここで
は、図1で示した第1実施例における映像符号化装置の
動きベクトルメモリ104および探索情報算出器105
および動きベクトル符号化器107の機能と動きベクト
ル検出器106が異なるため、それらの構成のみを記載
している。
A video coding apparatus according to the third embodiment of the present invention will be described below with reference to the drawings. FIG. 8 shows the third aspect of the present invention.
It is a block diagram of the video coding apparatus in an Example. Here, the motion vector memory 104 and the search information calculator 105 of the video encoding device in the first embodiment shown in FIG. 1 are used.
Since the function of the motion vector encoder 107 and the motion vector detector 106 are different, only those configurations are described.

【0051】図8において、ブロックに分割された入力
映像データを符号化ブロックとし、符号化ブロックとブ
ロックマッチングを行う参照フレーム上の領域を探索領
域とする。また、符号化ブロックと探索領域が共に背景
の壁などの同一輝度の領域を含む場合、符号化ブロック
が同一パターンブロックであるとする。
In FIG. 8, the input video data divided into blocks is the coding block, and the area on the reference frame that performs block matching with the coding block is the search area. Further, when both the coded block and the search area include areas of the same brightness such as a background wall, the coded block is assumed to be the same pattern block.

【0052】同図において、動きベクトルの検出を行う
ためのあらかじめ設定された参照フレーム上の探索領域
を第1の探索領域とする。801は動きベクトルメモリ
で、直前の符号化ブロックの動きベクトル値を格納す
る。802は高精度演算器で、動きベクトルメモリ80
1に格納された動きベクトル値より予測されるブロック
を含み参照フレーム上の探索領域より小さい第2の探索
領域を設定し、第2の探索領域内を1画素精度で候補ベ
クトルを設定してその候補ベクトルごとに予測誤差値を
算出する。803は低精度演算器で、参照フレーム上の
第1の探索領域内を4画素精度で候補ベクトルを設定し
てその候補ベクトルごとに予測誤差値を算出する。80
4は予測誤差値比較器で、高精度演算器802により算
出された予測誤差値と低精度演算器803により算出さ
れた予測誤差値とを比較することにより予測誤差が最小
の動きベクトル値を求める。805はブロック分類器
で、予測誤差値群の統計量を用いて符号化ブロックを同
一パターンブロックであるかないかに分類する。806
はスイッチで、ブロック分類器805により符号化ブロ
ックが同一パターンブロックに分類された場合、遅延器
801に格納された動きベクトル値を、そうでない場合
は予測誤差値比較器804で求めた最小の予測誤差値に
対応する動きベクトル値を符号化ブロックの動きベクト
ル値として選択する。807は動きベクトル符号化器
で、スイッチ806により選択された動きベクトル値の
差分値を可変長符号化する。
In the figure, the search area on the reference frame set in advance for detecting the motion vector is defined as the first search area. A motion vector memory 801 stores the motion vector value of the immediately preceding coding block. 802 is a high-precision arithmetic unit, which is a motion vector memory 80.
A second search area that includes a block predicted from the motion vector value stored in 1 and is smaller than the search area on the reference frame is set, and a candidate vector is set in the second search area with one-pixel accuracy. A prediction error value is calculated for each candidate vector. A low-precision calculator 803 sets a candidate vector in the first search area on the reference frame with 4-pixel accuracy and calculates a prediction error value for each candidate vector. 80
A prediction error value comparator 4 compares the prediction error value calculated by the high-precision calculator 802 with the prediction error value calculated by the low-precision calculator 803 to obtain a motion vector value with the smallest prediction error. . Reference numeral 805 denotes a block classifier that classifies the coded blocks into the same pattern blocks or not by using the statistics of the prediction error value group. 806
Is a switch, and when the coded blocks are classified into the same pattern blocks by the block classifier 805, the motion vector value stored in the delay unit 801 is obtained. Otherwise, the minimum prediction obtained by the prediction error value comparator 804. The motion vector value corresponding to the error value is selected as the motion vector value of the coding block. Reference numeral 807 is a motion vector encoder, which performs variable length coding on the difference value of the motion vector values selected by the switch 806.

【0053】前述のように構成された第3実施例の映像
符号化装置の動作を以下に説明する。なおここでは、本
発明の主眼である動きベクトルの検出および符号化方法
についてのみ詳しく説明する。
The operation of the video coding apparatus of the third embodiment constructed as described above will be described below. Here, only the motion vector detection and coding method, which is the main object of the present invention, will be described in detail.

【0054】図9は第3実施例の映像符号化装置の動き
ベクトルの検出および符号化方法のフローチャートであ
る。これは、図8のおける構成要素の動作を示してい
る。以下に第2フレーム目の映像データについての処理
手順を示す。 (ステップ901)フレームの画素数を水平800画素
・垂直800画素とし、ブロックの大きさを水平16画
素・垂直16画素とし、水平ブロックの総数を50、垂
直ブロックの総数を50とし、水平ブロックの初期値を
0、垂直ブロックの初期値を0とする。次に(ステップ
902)へ行く。 (ステップ902)動きベクトルメモリ901の水平方
向、垂直方向共に0に初期設定する。次に(ステップ9
03)および(ステップ904)へ行く。 (ステップ903)高精度演算器802により、動きベ
クトルメモリ801に格納された値より第2の探索領域
を設定し、第2の探索領域内を1画素精度で候補ベクト
ルを設定し、その候補ベクトルごとに予測誤差値を算出
する。次に(ステップ905)へ行く。 (ステップ904)低精度演算器803により、第1の
探索領域内を4画素精度で候補ベクトルを設定してその
候補ベクトルごとに予測誤差値を算出する。次に(ステ
ップ905)へ行く。 (ステップ905)予測誤差値比較器804を用いて、
高精度演算器802と低精度演算器803で求めた予測
誤差値群から最小の予測誤差値の動きベクトルを求め
る。次に(ステップ906)へ行く。 (ステップ906)ブロック分類器805を用いて、同
一パタ−ンブロックであるかを判定する。判定方式とし
て、ここでは低精度演算器803で求めた21個の予測
誤差値の最大値があるしきい値以下の場合、同一パタ−
ンブロックとする。次に(ステップ907)へ行く。 (ステップ907)スイッチ806を用いて、符号化ブ
ロックが同一パタ−ンブロックの場合には、(ステップ
908)へ行く。そうでない場合には、(ステップ90
9)へ行く。 (ステップ908)動きベクトルメモリ801の値を符
号化ブロックの動きベクトル値に決定する。次に(ステ
ップ910)へ行く。 (ステップ909)予測誤差値比較器804で求めた予
測誤差値が最小となる位置の動きベクトル値を符号化ブ
ロックの動きベクトル値に決定する。次に(ステップ9
10)へ行く。 (ステップ910)符号化ブロックの動きベクトル値を
動きベクトルメモリ801に格納する。次に(ステップ
911)へ行く。 (ステップ911)動きベクトル符号化器807を用い
て、スイッチ806により選択された動きベクトル値の
差分値を可変長符号化する。次に(ステップ912)へ
行く。 (ステップ912)符号化ブロックの水平ブロックに1
を加算する。次に(ステップ913)へ行く。 (ステップ913)符号化ブロックの水平ブロックが水
平ブロックの総数である50に等しいかを調べる。等し
い場合には、(ステップ914)へ行く。そうでない場
合には、(ステップ903)へ行く。 (ステップ914)符号化ブロックの水平ブロックを0
に設定する。符号化ブロックの垂直ブロックに1を加算
する。次に(ステップ915)へ行く。 (ステップ915)符号化ブロックの垂直ブロックが垂
直ブロックの総数である50に等しいかを調べる。等し
い場合には、処理を終了する。そうでない場合には、
(ステップ902)へ行く。
FIG. 9 is a flow chart of the motion vector detecting and coding method of the video coding apparatus of the third embodiment. This illustrates the operation of the components in FIG. The processing procedure for the video data of the second frame is shown below. (Step 901) The number of pixels in a frame is 800 horizontal pixels / vertical 800 pixels, the block size is 16 horizontal pixels / 16 vertical pixels, the total number of horizontal blocks is 50, and the total number of vertical blocks is 50. The initial value is 0 and the vertical block initial value is 0. Next, go to (step 902). (Step 902) The motion vector memory 901 is initialized to 0 in both the horizontal and vertical directions. Next (Step 9
03) and (step 904). (Step 903) The high-precision arithmetic unit 802 sets a second search area from the value stored in the motion vector memory 801, sets a candidate vector in the second search area with one-pixel accuracy, and sets the candidate vector. A prediction error value is calculated for each. Next, go to (step 905). (Step 904) The low-precision calculator 803 sets a candidate vector in the first search area with 4-pixel accuracy and calculates a prediction error value for each candidate vector. Next, go to (step 905). (Step 905) Using the prediction error value comparator 804,
The motion vector having the minimum prediction error value is obtained from the prediction error value group obtained by the high precision arithmetic unit 802 and the low precision arithmetic unit 803. Next, go to (step 906). (Step 906) Using the block classifier 805, it is determined whether the blocks are the same pattern block. As the determination method, here, if the maximum value of the 21 prediction error values obtained by the low-precision arithmetic unit 803 is less than a certain threshold value, the same pattern is used.
Block lock. Next, go to (step 907). (Step 907) If the coded block is the same pattern block by using the switch 806, go to (step 908). Otherwise, (step 90
Go to 9). (Step 908) The value of the motion vector memory 801 is determined as the motion vector value of the coding block. Next, go to (step 910). (Step 909) The motion vector value of the position where the prediction error value obtained by the prediction error value comparator 804 is the minimum is determined as the motion vector value of the coding block. Next (Step 9
Go to 10). (Step 910) The motion vector value of the encoded block is stored in the motion vector memory 801. Next, go to (step 911). (Step 911) The motion vector encoder 807 is used to perform variable length coding on the difference value of the motion vector values selected by the switch 806. Next, go to (step 912). (Step 912) 1 in horizontal block of encoded block
Is added. Next, go to (step 913). (Step 913) It is checked whether the horizontal block of the encoded block is equal to 50, which is the total number of horizontal blocks. If they are equal, go to (step 914). If not, go to (step 903). (Step 914) Set the horizontal block of the encoded block to 0
Set to. Add 1 to the vertical block of the encoded block. Next, go to (step 915). (Step 915) It is checked whether the vertical block of the encoded block is equal to 50, which is the total number of vertical blocks. If they are equal, the process ends. If not,
Go to (step 902).

【0055】ここで、同一パタ−ンブロックの判定につ
いて図14を用いて説明する。図14は予測誤差値を用
いて同一パターンブロックを判定するための動きベクト
ル値に対する予測誤差値の分布の説明図を表している。
Here, the determination of the same pattern block will be described with reference to FIG. FIG. 14 is an explanatory diagram of the distribution of the prediction error value with respect to the motion vector value for determining the same pattern block using the prediction error value.

【0056】図14(a)は、符号化ブロックと探索領
域が共に、背景の同一輝度の壁などに現れる同一パター
ンの領域と異なる領域(以下、通常領域と呼ぶ)にある
場合の動きベクトル検出を示している。また図14
(b)は、通常領域における動きベクトル値に対する予
測誤差値の分布を表している。動きベクトル値は水平と
垂直の2次元で表すことができるが、ここでは最小とな
る予測誤差値を含む水平または垂直方向の予測誤差値を
示している。通常領域では符号化ブロックと一致するブ
ロックは探索領域に1つであるため、一致する位置では
予測誤差値が小さな値となりそれ以外のところでは予測
誤差値が大きくなる。
FIG. 14A shows motion vector detection in the case where the coding block and the search area are both in an area different from the area of the same pattern appearing on a wall of the same brightness in the background (hereinafter referred to as a normal area). Is shown. Also in FIG.
(B) represents the distribution of the prediction error value with respect to the motion vector value in the normal area. The motion vector value can be expressed in two dimensions, horizontal and vertical, but here the horizontal or vertical prediction error value including the minimum prediction error value is shown. In the normal area, the number of blocks that match the encoded block is one in the search area, so the prediction error value is small at the matching position, and the prediction error value is large at other locations.

【0057】一方、図14(c)は、符号化ブロックと
探索領域が共に背景の同一輝度の壁などに現れる同一パ
タ−ンの領域(以下、同一パターン領域と呼ぶ)にある
場合の動きベクトル検出を示している。また図14
(d)は、同一パタ−ン領域における動きベクトル値に
対する予測誤差値の分布を表している。同一パタ−ン領
域では符号化ブロックと探索領域内の予測ブロックが同
様の輝度になっているため、予測誤差値はすべての動き
ベクトル値に対して小さな値となりその変動も小さい。
On the other hand, FIG. 14C shows a motion vector in the case where the coding block and the search area are both in the same pattern area (hereinafter referred to as the same pattern area) appearing on a wall having the same brightness in the background. Indicates detection. Also in FIG.
(D) represents the distribution of prediction error values for motion vector values in the same pattern area. Since the coding block and the prediction block in the search area have the same brightness in the same pattern area, the prediction error value is a small value with respect to all motion vector values and its variation is small.

【0058】よって、同一パタ−ン領域ではわずかな予
測誤差値の差により動きベクトルが決定されるので、動
きベクトル値がさまざまな値に分散し、符号化ブロック
の動きベクトルが詳細に探索する領域に入らなくなる確
率が増大していくため、同一パターン領域の境界で動き
ベクトルの予測精度が低下し、符号化効率が低下する。
また、動きベクトル値を差分符号化する場合符号化効率
が低下する。そこで同一パタ−ンブロックと判定した場
合、動きベクトル値として直前の符号化ブロックの動き
ベクトル値を用いることにより動きベクトルの符号化効
率の向上を図る。
Therefore, in the same pattern area, since the motion vector is determined by a slight difference in prediction error value, the motion vector value is dispersed into various values, and the motion vector of the coding block is searched in detail. Since the probability of not falling into the range increases, the prediction accuracy of the motion vector decreases at the boundary of the same pattern area, and the coding efficiency decreases.
In addition, when the motion vector value is differentially encoded, the encoding efficiency decreases. Therefore, when it is determined that they are the same pattern block, the motion vector coding efficiency is improved by using the motion vector value of the immediately preceding coding block as the motion vector value.

【0059】図10(c)で示したブロックマッチング
のパターンにおいて、図10(d)で示した予測誤差値
の分布から次の2つの特徴が見い出される。 (A)探索領域内にあるブロックに対する予測誤差値が
すべて小さな値である。 (B)探索領域内にあるブロックに対する予測誤差値の
変動が小さい。
In the block matching pattern shown in FIG. 10C, the following two features are found from the distribution of prediction error values shown in FIG. 10D. (A) The prediction error values for blocks in the search area are all small values. (B) The fluctuation of the prediction error value for the block in the search area is small.

【0060】(A)の特徴により、以下の判定方法を用
いることができる。 (a)予測誤差値の最大値がしきい値以下の場合。 (b)予測誤差値の平均値がしきい値以下の場合。
Due to the feature (A), the following determination method can be used. (A) When the maximum prediction error value is equal to or less than the threshold value. (B) When the average value of the prediction error values is less than or equal to the threshold value.

【0061】(B)の特徴により、以下の判定方法を用
いることができる。 (c)予測誤差値の分散値がしきい値以下の場合。 (d)予測誤差値の平均値と各予測誤差値との差分絶対
値の和がしきい値以下の場合。 (e)予測誤差値の最大値と最小値の差がしきい値以下
の場合。
Due to the feature (B), the following determination method can be used. (C) When the variance of the prediction error value is less than or equal to the threshold value. (D) The sum of absolute differences between the average of the prediction error values and each prediction error value is less than or equal to the threshold value. (E) When the difference between the maximum and minimum prediction error values is less than or equal to the threshold value.

【0062】これらの特徴を用いて同一パターンブロッ
クの判定を行うことが可能である。本実施例では簡単な
構成で実現可能な(a)を用いているが、その他の方法
を用いてもよい。
It is possible to determine the same pattern block using these characteristics. Although (a) which can be realized with a simple configuration is used in this embodiment, other methods may be used.

【0063】以上のように、第3実施例の映像符号化装
置を用いることにより、同一パターンブロックにおいて
符号化ブロックの動きベクトル値が直前の符号化ブロッ
クの動きベクトル値にすることが可能となり、同一パタ
ーン領域の境界で動きベクトルが詳細に探索される領域
で検出される確率が大きくなるため、符号化効率が向上
する。また、動きベクトルの差分値が0になる頻度が高
まり、動きベクトルの差分値を可変長符号化することに
より、動きベクトルの符号化効率を向上させることがで
きる。
As described above, by using the video coding apparatus of the third embodiment, the motion vector value of the coding block in the same pattern block can be made the motion vector value of the immediately preceding coding block. Since the probability that a motion vector is detected in a detailed search at the boundary of the same pattern area is high, the coding efficiency is improved. Further, the frequency of the motion vector difference value becoming 0 increases, and the motion vector difference value is variable-length coded, so that the motion vector coding efficiency can be improved.

【0064】なお、ここではブロック分類器で用いる予
測誤差値を低精度演算器から求めた予測誤差値群より求
めているが、全探索法や3ステップ法の第1ステップな
どにも用いてもよい。
Although the prediction error value used in the block classifier is obtained from the prediction error value group obtained from the low-precision arithmetic unit here, it may be used in the full search method or the first step of the three-step method. Good.

【0065】(実施例4)第3実施例では全探索領域が
同一パタ−ン領域になる場合であるが、同一パタ−ン領
域の境界近傍の符号化ブロックでは探索領域がすべて同
一パターン領域に含まれるとは限らないため、第3実施
例で示した方法では同一パタ−ンブロックとは判定され
ない場合がある。そこで第4実施例では、探索領域が同
一パタ−ン領域の境界を含む場合においても同一パタ−
ンブロックの判定を行うことが可能な映像符号化装置に
ついて述べる。
(Embodiment 4) In the third embodiment, all search areas are in the same pattern area, but in the coding blocks near the boundary of the same pattern area, the search areas are all in the same pattern area. Since it is not necessarily included, the same pattern block may not be determined by the method shown in the third embodiment. Therefore, in the fourth embodiment, even when the search area includes the boundary of the same pattern area, the same pattern is used.
A video encoding device capable of performing block determination will be described.

【0066】以下、本発明の第4実施例の映像符号化装
置について図面を用いて説明する。図11は本発明の第
3実施例における映像符号化装置の構成図である。ここ
では、図1で示した第1実施例における映像符号化装置
の動きベクトルメモリ104および探索情報算出器10
5および動きベクトル符号化器107の機能と動きベク
トル検出器106が異なるため、それらの構成のみを記
載している。
A video coding apparatus according to the fourth embodiment of the present invention will be described below with reference to the drawings. FIG. 11 is a block diagram of a video encoding apparatus according to the third embodiment of the present invention. Here, the motion vector memory 104 and the search information calculator 10 of the video encoding device in the first embodiment shown in FIG. 1 are used.
5 and the functions of the motion vector encoder 107 and the motion vector detector 106 are different, only their configurations are described.

【0067】図11において、ブロックに分割された入
力映像データを符号化ブロックとし、符号化ブロックと
ブロックマッチングを行う参照フレーム上の領域を探索
領域とする。また、符号化ブロックと探索領域が共に背
景の壁などの同一輝度の領域を含む場合、符号化ブロッ
クが同一パターンブロックであるとする。
In FIG. 11, input video data divided into blocks is a coding block, and a region on a reference frame for performing block matching with the coding block is a search region. Further, when both the coded block and the search area include areas of the same brightness such as a background wall, the coded block is assumed to be the same pattern block.

【0068】同図において、動きベクトルの検出を行う
ためのあらかじめ設定された参照フレーム上の探索領域
を第1の探索領域とする。1101は動きベクトルメモ
リで、直前の符号化ブロックの動きベクトル値を格納す
る。1102は高精度演算器で、動きベクトルメモリ1
101に格納された動きベクトル値より予測されるブロ
ックを含み参照フレーム上の探索領域より小さい第2の
探索領域を設定し、第2の探索領域内を1画素精度で候
補ベクトルを設定してその候補ベクトルごとに予測誤差
値を算出する。1103は低精度演算器で、参照フレー
ム上の第1の探索領域内を4画素精度で候補ベクトルを
設定してその候補ベクトルごとに予測誤差値を算出す
る。1104は予測誤差値比較器で、高精度演算器11
02により算出された予測誤差値と低精度演算器110
3により算出された予測誤差値とを比較することにより
予測誤差が最小の動きベクトル値を求める。1105は
ブロック分類器で、予測誤差値群の統計量を用いて符号
化ブロックを同一パターンブロックであるかないかに分
類する。1106は重み付け器で、ブロック分類器11
05により符号化ブロックが同一パターンブロックに分
類された場合、高精度演算器および低精度演算器で求め
られた予測誤差値に重み付けを行う。1107は動きベ
クトル符号化器で、動きベクトル値の差分値を可変長符
号化する。
In the figure, the search area on the preset reference frame for detecting the motion vector is defined as the first search area. A motion vector memory 1101 stores the motion vector value of the immediately preceding coded block. 1102 is a high-precision arithmetic unit, which is a motion vector memory 1
A second search area including a block predicted from the motion vector value stored in 101 and smaller than the search area on the reference frame is set, and a candidate vector is set in the second search area with one-pixel accuracy, A prediction error value is calculated for each candidate vector. A low-precision calculator 1103 sets a candidate vector in the first search area on the reference frame with 4-pixel accuracy and calculates a prediction error value for each candidate vector. Reference numeral 1104 denotes a prediction error value comparator, which is a high-precision arithmetic unit 11
Prediction error value calculated by 02 and the low-precision calculator 110
The motion vector value with the smallest prediction error is obtained by comparing with the prediction error value calculated in 3. A block classifier 1105 classifies the coded blocks into the same pattern blocks or not by using the statistics of the prediction error value group. Reference numeral 1106 denotes a weighting unit, which is a block classifier 11
When the coded blocks are classified into the same pattern blocks by 05, the prediction error values obtained by the high-precision arithmetic unit and the low-precision arithmetic unit are weighted. A motion vector encoder 1107 performs variable length coding on the difference value between the motion vector values.

【0069】前述のように構成された第4実施例の映像
符号化装置の動作を以下に説明する。なおここでは、本
発明の主眼である動きベクトルの検出および符号化方法
についてのみ詳しく説明する。
The operation of the video coding apparatus of the fourth embodiment constructed as described above will be described below. Here, only the motion vector detection and coding method, which is the main object of the present invention, will be described in detail.

【0070】図12は第4実施例の映像符号化装置の動
きベクトルの検出および符号化方法のフローチャートで
ある。これは、図11 5のおける構成要素の動作を示
している。以下に第2フレーム目の映像データについて
の処理手順を示す。 (ステップ1201)フレームの画素数を水平800画
素・垂直800画素とし、ブロックの大きさを水平16
画素・垂直16画素とし、水平ブロックの総数を50、
垂直ブロックの総数を50とし、水平ブロックの初期値
を0、垂直ブロックの初期値を0とする。次に(ステッ
プ1202)へ行く。 (ステップ1202)動きベクトルメモリ1201の水
平方向、垂直方向共に0に初期設定する。次に(ステッ
プ1203)および(ステップ1204)へ行く。 (ステップ1203)高精度演算器1102により、動
きベクトルメモリ1101に格納された値より第2の探
索領域を設定し、第2の探索領域内を1画素精度で候補
ベクトルを設定し、その候補ベクトルごとに予測誤差値
を算出する。次に(ステップ1205)へ行く。 (ステップ1204)低精度演算器1103により、第
1の探索領域内を4画素精度で候補ベクトルを設定して
その候補ベクトルごとに予測誤差値を算出する。次に
(ステップ1205)へ行く。 (ステップ1205)ブロック分類器1105を用い
て、同一パタ−ンブロックであるかを判定する。判定方
式として、ここでは低精度演算器1103で求めた21
個の予測誤差値のうち、水平成分または垂直成分が同一
である予測誤差値の最大値があるしきい値以下の場合、
同一パタ−ンブロックとする。次に(ステップ120
6)へ行く。 (ステップ1206)符号化ブロックが同一パタ−ンブ
ロックの場合には、(ステップ1207)へ行く。そう
でない場合には、(ステップ1208)へ行く。 (ステップ1207)重み付け器1106を用いて高精
度演算器により求められた予測誤差値を小さくするよう
に重み付ける。次に(ステップ1208)へ行く。 (ステップ1208)予測誤差値比較器1104で求め
た予測誤差値が最小となる位置の動きベクトル値を符号
化ブロックの動きベクトル値に決定する。次に(ステッ
プ1209)へ行く。 (ステップ1209)符号化ブロックの動きベクトル値
を動きベクトルメモリ1101に格納する。次に(ステ
ップ1210)へ行く。 (ステップ1210)動きベクトル符号化器1107を
用いて、動きベクトル値の差分値を可変長符号化する。
次に(ステップ1211)へ行く。 (ステップ1211)符号化ブロックの水平ブロックに
1を加算する。次に(ステップ1212)へ行く。 (ステップ1212)符号化ブロックの水平ブロックが
水平ブロックの総数である50に等しいかを調べる。等
しい場合には、(ステップ1213)へ行く。そうでな
い場合には、(ステップ1203)へ行く。 (ステップ1213)符号化ブロックの水平ブロックを
0に設定する。符号化ブロックの垂直ブロックに1を加
算する。次に(ステップ1214)へ行く。 (ステップ1214)符号化ブロックの垂直ブロックが
垂直ブロックの総数である50に等しいかを調べる。等
しい場合には、処理を終了する。そうでない場合には、
(ステップ1202)へ行く。
FIG. 12 is a flowchart of the motion vector detection and coding method of the video coding apparatus according to the fourth embodiment. This illustrates the operation of the components in Figure 115. The processing procedure for the video data of the second frame is shown below. (Step 1201) Set the number of pixels in the frame to 800 horizontal pixels and 800 vertical pixels, and set the block size to 16 horizontal pixels.
Pixels and 16 pixels vertically, the total number of horizontal blocks is 50,
The total number of vertical blocks is 50, the initial value of horizontal blocks is 0, and the initial value of vertical blocks is 0. Next, go to (step 1202). (Step 1202) The motion vector memory 1201 is initialized to 0 in both the horizontal and vertical directions. Next, go to (step 1203) and (step 1204). (Step 1203) The high-precision arithmetic unit 1102 sets a second search area from the values stored in the motion vector memory 1101, sets a candidate vector in the second search area with one-pixel accuracy, and then sets the candidate vector. A prediction error value is calculated for each. Next, go to (step 1205). (Step 1204) The low-precision calculator 1103 sets a candidate vector in the first search area with 4-pixel accuracy, and calculates a prediction error value for each candidate vector. Next, go to (step 1205). (Step 1205) The block classifier 1105 is used to determine whether the blocks are the same pattern block. As the determination method, here, 21 obtained by the low-precision arithmetic unit 1103 is used.
Of the prediction error values, the maximum of the prediction error values with the same horizontal component or vertical component is below a certain threshold,
Use the same pattern block. Next (step 120
Go to 6). (Step 1206) If the coded blocks are the same pattern block, go to (Step 1207). If not, go to (step 1208). (Step 1207) The weighting device 1106 is used to weight the prediction error value obtained by the high-precision arithmetic unit so as to be small. Next, go to (step 1208). (Step 1208) The motion vector value of the position where the prediction error value obtained by the prediction error value comparator 1104 is the minimum is determined as the motion vector value of the coding block. Next, go to (step 1209). (Step 1209) The motion vector value of the encoded block is stored in the motion vector memory 1101. Next, go to (step 1210). (Step 1210) The motion vector encoder 1107 is used to perform variable length coding on the difference value between the motion vector values.
Next, go to (step 1211). (Step 1211) 1 is added to the horizontal block of the encoded block. Next, go to (step 1212). (Step 1212) It is checked whether the horizontal block of the encoded block is equal to 50, which is the total number of horizontal blocks. If they are equal, go to (step 1213). If not, go to (Step 1203). (Step 1213) The horizontal block of the encoded block is set to 0. Add 1 to the vertical block of the encoded block. Next, go to (step 1214). (Step 1214) It is checked whether the vertical block of the encoded block is equal to 50, which is the total number of vertical blocks. If they are equal, the process ends. If not,
Go to (step 1202).

【0071】ここで、同一パタ−ンブロックの判定につ
いて図13および図14を用いて説明する。図13は、
符号化ブロックが同一パタ−ン領域のブロックであり、
探索領域が同一パタ−ン領域と通常領域にまたがる場合
の動きベクトル値に対する予測誤差値の分布の説明図で
ある。なお、符号化ブロックが同一パタ−ン領域のブロ
ックであり、探索領域が2つの異なる同一パタ−ン領域
にまたがる場合については図13(c)で示した予測誤
差値の分布を用いて同様に同一パタ−ンブロックの判定
を行うことが可能であるため、ここでは言及しない。
Here, the determination of the same pattern block will be described with reference to FIGS. 13 and 14. Figure 13
The coded block is a block in the same pattern area,
It is an explanatory view of distribution of the prediction error value with respect to the motion vector value when the search area extends over the same pattern area and the normal area. When the coding block is a block in the same pattern area and the search area extends over two different pattern areas, the prediction error value distribution shown in FIG. Since it is possible to determine the same pattern block, it is not mentioned here.

【0072】一方、図14は、符号化ブロックが2つの
異なる同一パターン領域を含む場合の動きベクトル値に
対する予測誤差値の分布の説明図である。なお、符号化
ブロックが同一パターン領域と通常領域を含む場合は、
通常領域の部分領域の違いから予測ブロックを決定する
ことが可能である。
On the other hand, FIG. 14 is an explanatory view of the distribution of the prediction error value with respect to the motion vector value when the coding block includes two different identical pattern areas. If the coding block includes the same pattern area and the normal area,
It is possible to determine the prediction block from the difference in the partial areas of the normal area.

【0073】図13(a)は、符号化ブロックが同一パ
タ−ン領域のブロックであり、探索領域が同一パタ−ン
領域と通常領域にまたがる場合の動きベクトル検出を示
している。図13(b)は、水平方向の動きベクトル値
に対する予測誤差値の分布を表している。動きベクトル
値は水平と垂直の2次元で表すことができるが、ここで
は最小となる動きベクトル値を含む予測誤差値を示して
いる。予測ブロックが同一パタ−ン領域内にある場合は
予測誤差値の大きさもその変動も小さい。また、予測ブ
ロックが通常領域内にある場合は予測誤差値の大きさも
その変動も大きい。
FIG. 13A shows motion vector detection when the coded block is a block in the same pattern area and the search area extends over the same pattern area and the normal area. FIG. 13B shows the distribution of prediction error values for horizontal motion vector values. The motion vector value can be expressed in two dimensions, horizontal and vertical, but here the prediction error value including the minimum motion vector value is shown. When the prediction block is in the same pattern area, the size and fluctuation of the prediction error value are small. In addition, when the prediction block is in the normal area, the size and variation of the prediction error value are large.

【0074】図13(c)は、予測ブロックが同一パタ
−ン領域内にある場合の垂直方向の動きベクトル値に対
する予測誤差値の分布を示している。この場合、符号化
ブロックと予測ブロックの輝度が同様であるため、予測
誤差値の大きさもその変動も小さい。
FIG. 13C shows the distribution of the prediction error value with respect to the motion vector value in the vertical direction when the prediction block is in the same pattern area. In this case, since the brightness of the coding block is the same as that of the prediction block, the size and fluctuation of the prediction error value are small.

【0075】図13(d)は、予測ブロックが通常領域
内にある場合の垂直方向の動きベクトル値に対する予測
誤差値の分布を表している。この場合符号化ブロックと
予測ブロックとの相関が低いため、予測誤差値の大きさ
もその変動も大きい。図13(e)は、予測ブロックが
同一パタ−ン領域と通常領域とにまたがる場合の垂直方
向の予測誤差値の分布を示している。予測ブロックの中
で同一パタ−ン領域の部分は相関が高く通常領域の部分
は相関が低いため、予測誤差値の分布は図13(c)と
図13(d)の間の値となる。
FIG. 13D shows the distribution of the prediction error value with respect to the vertical motion vector value when the prediction block is in the normal area. In this case, since the correlation between the coding block and the prediction block is low, the magnitude of the prediction error value and its variation are large. FIG. 13E shows the distribution of the prediction error value in the vertical direction when the prediction block extends over the same pattern area and the normal area. Since the correlation is high in the same pattern area in the prediction block and the correlation is low in the normal area, the distribution of the prediction error value is a value between FIG. 13 (c) and FIG. 13 (d).

【0076】一方、図14(a)は、符号化ブロックと
探索領域が共に、2つの異なる同一パタ−ン領域(同一
パターン領域1と同一パターン領域2と呼ぶ)にまたが
る場合の動きベクトル検出を示している。図14(b)
は、最小の予測誤差値を含む水平方向の動きベクトル値
に対する予測誤差値の分布を表している。まず、予測ブ
ロックが同一パターン領域1内の場合は、符号化ブロッ
クの中で同一パターン領域1である部分領域では輝度差
は小さい。一方、符号化ブロックの中で同一パターン領
域2である部分領域では輝度差は大きいがそれぞれ同一
パターン領域であるため、各予測ブロックに対して輝度
差はほぼ一定である。よって、予測誤差値はほぼ一定と
なる。
On the other hand, FIG. 14A shows the motion vector detection in the case where both the coding block and the search area extend over two different identical pattern areas (called the same pattern area 1 and the same pattern area 2). Shows. FIG. 14 (b)
Represents the distribution of the prediction error value with respect to the horizontal motion vector value including the minimum prediction error value. First, when the prediction block is in the same pattern area 1, the luminance difference is small in the partial area that is the same pattern area 1 in the coding block. On the other hand, in the partial areas that are the same pattern area 2 in the coded block, the difference in brightness is large, but since they are the same pattern area, the difference in brightness is almost constant for each prediction block. Therefore, the prediction error value is almost constant.

【0077】次に、予測ブロックが同一パターン領域2
内の場合は、符号化ブロックの中で同一パターン領域2
である部分領域では輝度差は小さい。一方、符号化ブロ
ックの中で同一パターン領域1である部分領域では輝度
差は大きく、各予測ブロックに対してほぼ一定である。
よって予測誤差値はほぼ一定となる。さらに、予測ブロ
ックが2つの同一パターン領域を含む場合は、符号化ブ
ロックと異なる同一パターン領域の部分領域が予測誤差
値が最小となる位置の動きベクトル値を最小として動き
ベクトル値が増加または減少するのに比例して増加す
る。そのため、予測誤差値は動きベクトル値に比例して
増大する。
Next, the prediction block has the same pattern area 2
In the case of, the same pattern area 2 in the encoded block
The luminance difference is small in the partial area. On the other hand, the luminance difference is large in the partial area that is the same pattern area 1 in the encoded block, and is almost constant for each prediction block.
Therefore, the prediction error value is almost constant. Further, when the prediction block includes two identical pattern areas, the motion vector value increases or decreases with the motion vector value at the position where the prediction error value is the smallest in the partial area of the same pattern area different from the coding block. Increases in proportion to. Therefore, the prediction error value increases in proportion to the motion vector value.

【0078】図14(c)は、予測領域が同一パタ−ン
領域1内にある場合の垂直方向の動きベクトルの検出を
示している。この場合、符号化ブロックの同一パターン
領域2の部分領域と同一パターン領域1との差分値はあ
る大きさでほぼ一定となるため予測誤差値の大きさも一
定になる。図14(d)は、予測領域が同一パターン領
域2内にある場合の垂直方向の動きベクトル値に対する
予測誤差値の分布を表している。この場合も、図14
(c)と同様に、予測誤差値の大きさはほぼ一定とな
る。図14(e)は、最小の予測誤差値を含む垂直方向
の予測誤差値の分布を示している。すべての予測ブロッ
クと符号化ブロックの輝度差が小さいため、予測誤差値
の大きさもその変動も小さい。
FIG. 14C shows the detection of the motion vector in the vertical direction when the prediction areas are in the same pattern area 1. In this case, since the difference value between the partial area of the same pattern area 2 and the same pattern area 1 of the encoded block is substantially constant at a certain size, the size of the prediction error value is also constant. FIG. 14D shows the distribution of the prediction error value with respect to the vertical motion vector value when the prediction region is in the same pattern region 2. Also in this case, FIG.
Similar to (c), the magnitude of the prediction error value is almost constant. FIG. 14E shows the distribution of vertical prediction error values including the minimum prediction error value. Since the difference in brightness between all the prediction blocks and the coding blocks is small, the size and fluctuation of the prediction error value are small.

【0079】よって、同一パターン領域の境界が水平ま
たは垂直である時は、動きベクトルの水平成分または垂
直成分が同一である複数の予測誤差値群について同一パ
ターンブロックの判定を行い、少なくとも1つ以上の予
測誤差値群が同一パターンブロックの判定を満たした場
合、符号化ブロックが同一パタ−ン領域を含んでいると
することが可能である。さらに、この条件は図15で示
した探索領域が同一パタ−ン領域内に含まれる場合にお
いても成立する。
Therefore, when the boundary of the same pattern area is horizontal or vertical, the same pattern block is determined for a plurality of prediction error value groups having the same horizontal or vertical component of the motion vector, and at least one or more of them are determined. If the group of prediction error values satisfies the judgment of the same pattern block, it is possible that the coding block includes the same pattern area. Further, this condition is satisfied even when the search area shown in FIG. 15 is included in the same pattern area.

【0080】また、重みつけの方法として以下のような
方法が考えられる。 (1)直前の動きベクトル値のみを用いるような重みつ
けを行う。 (2)直前の動きベクトル値の予測誤差値を小さくする
ような重み付けを行う。 (3)高精度演算器1102で求められた予測誤差値の
みを用いるような重みつけを行う。 (4)高精度演算器1102で求められた予測誤差値を
小さくするような重み付けを行う。
The following methods can be considered as weighting methods. (1) Weighting is performed so that only the immediately preceding motion vector value is used. (2) Weighting is performed so as to reduce the prediction error value of the immediately preceding motion vector value. (3) Weighting is performed so that only the prediction error value obtained by the high-precision arithmetic unit 1102 is used. (4) Weighting is performed so as to reduce the prediction error value obtained by the high precision arithmetic unit 1102.

【0081】(1)では、差分符号化効率は良くなる
が、直前の動きベクトル値に対応する位置の予測誤差値
が大きい場合、符号化効率が悪くなる。
In (1), the differential coding efficiency is improved, but when the prediction error value of the position corresponding to the immediately preceding motion vector value is large, the coding efficiency is deteriorated.

【0082】(2)では、直前の動きベクトルに対応す
る位置の予測誤差値に重み付けを行うことにより、直前
の動きベクトル値が選択される確率を高め、予測誤差値
が大きい場合は選択しないようにする方法である。この
場合、重み付けのための乗算機能が必要である。
In (2), by weighting the prediction error value of the position corresponding to the immediately preceding motion vector, the probability that the immediately preceding motion vector value is selected is increased, and if the prediction error value is large, it is not selected. Is the way to. In this case, a multiplication function for weighting is necessary.

【0083】(3)では、高精度演算器1102で求め
られた直前の動きベクトル値に対応する位置に隣接する
予測誤差値のみを用いる方法で、差分符号化効率の向上
と、複数の予測誤差値を用いることにより符号化効率の
向上が可能となる。
In (3), the method of using only the prediction error value adjacent to the position corresponding to the immediately previous motion vector value obtained by the high-precision arithmetic unit 1102 improves the differential coding efficiency and improves the prediction error. By using the value, the coding efficiency can be improved.

【0084】(4)では、(1)よりもさらに符号化効
率の向上を可能なように重み付けを行うものである。た
だし、この場合重み付けを行うための乗算機能が必要で
ある。
In (4), weighting is performed so that the coding efficiency can be improved more than in (1). However, in this case, a multiplication function for weighting is required.

【0085】以上のように、第4実施例の映像符号化装
置を用いることにより、同一パターン領域を含む符号化
ブロックにおいて、同一パターンブロックを判定するこ
とにより、符号化ブロックの動きベクトル値を直前の符
号化ブロックの動きベクトル値にすることが可能とな
り、動きベクトルの差分値が0になる頻度が高まる。そ
のため動きベクトルの差分値を可変長符号化することに
より、動きベクトルの符号化効率を向上させることがで
きる。
As described above, by using the video coding apparatus of the fourth embodiment, it is possible to determine the motion vector value of the coding block immediately before by judging the same pattern block in the coding block including the same pattern area. It becomes possible to set the motion vector value of the coding block of, and the frequency of the difference value of the motion vector becoming 0 increases. Therefore, by encoding the difference value of the motion vector by variable length coding, the coding efficiency of the motion vector can be improved.

【0086】また第3実施例と比較して、同一パタ−ン
領域の境界近傍にある符号化ブロックについても同一パ
タ−ンブロックを判定することが可能となり、同一パタ
−ンブロックの検出精度が高まるため動きベクトルの符
号化効率がさらに向上する。
Further, as compared with the third embodiment, it is possible to determine the same pattern block even for the coded blocks in the vicinity of the boundary of the same pattern area, and the detection accuracy of the same pattern block can be improved. Since it increases, the coding efficiency of the motion vector is further improved.

【0087】なお、ここでは同一パターン領域と通常領
域との境界を水平あるいは垂直であると仮定したが、斜
線上や任意の曲線上の予測誤差値群を用いて処理を行う
ことにより、さまざまな境界に対応することが可能であ
る。
Although it is assumed here that the boundary between the same pattern area and the normal area is horizontal or vertical, various kinds of processing can be performed by using a prediction error value group on a diagonal line or an arbitrary curve. It is possible to accommodate boundaries.

【0088】[0088]

【発明の効果】本発明の映像符号化装置は、高精度演算
器と低精度演算器の処理を並列に行うことにより、動き
ベクトルの検出を1ステップで行うことが可能となるた
め、3ステップ法と比較して処理時間が削減されるか、
それを避けるためのパイプライン処理による回路増加を
不要にすることができる。また、動きベクトルの探索数
が全探索と比較して大幅に削減できる。さらに、高精度
の探索と低精度の探索を併用することにより、全探索法
に近い画質に向上することが可能となる。
The video coding apparatus of the present invention can detect a motion vector in one step by performing the processing of the high-precision arithmetic unit and the processing of the low-precision arithmetic unit in parallel. Will processing time be reduced compared to the law?
It is not necessary to increase the number of circuits by pipeline processing to avoid this. In addition, the number of motion vector searches can be significantly reduced compared to the full search. Furthermore, by using the high-precision search and the low-precision search together, it is possible to improve the image quality close to the full search method.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1実施例における映像符号化装置の
ブロック図
FIG. 1 is a block diagram of a video encoding device according to a first embodiment of the present invention.

【図2】本発明の第1実施例における映像符号化装置の
フローチャート
FIG. 2 is a flowchart of the video encoding device according to the first embodiment of the present invention.

【図3】本発明の第1実施例における動きベクトル探索
のフローチャート
FIG. 3 is a flowchart of motion vector search according to the first embodiment of the present invention.

【図4】本発明の第1実施例における候補ベクトルの抽
出方法の説明図
FIG. 4 is an explanatory diagram of a candidate vector extraction method according to the first embodiment of the present invention.

【図5】本発明の第1実施例における動きベクトル探索
の説明図
FIG. 5 is an explanatory diagram of motion vector search according to the first embodiment of the present invention.

【図6】本発明の第2実施例における映像符号化装置の
ブロック図
FIG. 6 is a block diagram of a video encoding device according to a second embodiment of the present invention.

【図7】本発明の第2実施例における映像符号化装置の
フローチャート
FIG. 7 is a flowchart of the video encoding device according to the second embodiment of the present invention.

【図8】本発明の第3実施例における映像符号化装置の
ブロック図
FIG. 8 is a block diagram of a video encoding device according to a third embodiment of the present invention.

【図9】本発明の第3実施例における映像符号化装置の
フローチャート
FIG. 9 is a flowchart of the video encoding device according to the third embodiment of the present invention.

【図10】本発明の第3実施例における、動きベクトル
値に対する予測誤差値の分布を示す図
FIG. 10 is a diagram showing distribution of prediction error values with respect to motion vector values in the third embodiment of the present invention.

【図11】本発明の第4実施例における映像符号化装置
のブロック図
FIG. 11 is a block diagram of a video encoding device according to a fourth embodiment of the present invention.

【図12】本発明の第4実施例における動き補償符号化
装置のフローチャート
FIG. 12 is a flowchart of a motion compensation encoding device according to a fourth embodiment of the present invention.

【図13】本発明の第4実施例における、符号化ブロッ
クが同一パタ−ン領域の場合の領域境界における動きベ
クトル値に対する予測誤差値の分布を示す図
FIG. 13 is a diagram showing a distribution of prediction error values with respect to motion vector values at a region boundary when coding blocks are in the same pattern region according to the fourth embodiment of the present invention.

【図14】本発明の第4実施例における、符号化ブロッ
クが2つの同一パタ−ン領域の境界上にある場合の動き
ベクトル値に対する相関誤差値の分布を示す図
FIG. 14 is a diagram showing a distribution of a correlation error value with respect to a motion vector value when a coding block is on the boundary of two identical pattern areas in the fourth embodiment of the present invention.

【図15】従来例における映像符号化装置のブロック図FIG. 15 is a block diagram of a video encoding device in a conventional example.

【図16】従来例における動きベクトルの探索領域の説
明図
FIG. 16 is an explanatory diagram of a motion vector search area in a conventional example.

【図17】従来例におけるる全探索法の説明図FIG. 17 is an explanatory diagram of a conventional full search method.

【図18】従来例における3ステップ法の説明図FIG. 18 is an explanatory diagram of a three-step method in a conventional example.

【符号の説明】[Explanation of symbols]

101 動きベクトルメモリ 102 探索情報算出器 103 高精度演算器 104 低精度演算器 105 予測誤差値比較器 101 Motion Vector Memory 102 Search Information Calculator 103 High Precision Calculator 104 Low Precision Calculator 105 Prediction Error Value Comparator

───────────────────────────────────────────────────── フロントページの続き (72)発明者 長谷部 巧 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 西川 浩 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Takumi Hasebe 1006 Kadoma, Kadoma, Osaka Prefecture Matsushita Electric Industrial Co., Ltd. (72) Hiroshi Nishikawa, 1006 Kadoma, Kadoma City, Osaka Matsushita Electric Industrial Co., Ltd.

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】動きベクトルの検出を行うためのあらかじ
め設定された参照フレーム上の探索領域を第1の探索領
域としたとき、動きベクトルが検出された符号化ブロッ
クの動きベクトル値を格納する動きベクトルメモリと、
前記動きベクトルメモリに格納されている動きベクトル
値から所定の演算式により1個の候補ベクトルを算出す
る候補ベクトル算出器と、前記候補ベクトルにより予測
されるブロックを含み参照フレーム上の探索領域より小
さい第2の探索領域を設定し、前記第2の探索領域内を
1画素以下の精度で候補ベクトルを設定してその候補ベ
クトルごとに予測誤差値を算出する高精度演算器と、参
照フレーム上の前記第1の探索領域内を2画素以上の精
度で候補ベクトルを設定してその候補ベクトルごとに予
測誤差値を算出する低精度演算器と、前記高精度演算器
により算出された予測誤差値と前記低精度演算器により
算出された予測誤差値とを比較することにより符号化ブ
ロックの動きベクトル値を決定する予測誤差値比較器を
備えたことを特徴とする映像符号化装置。
1. A motion for storing a motion vector value of a coded block in which a motion vector is detected, when a search region on a reference frame set in advance for detecting a motion vector is used as a first search region. Vector memory,
A candidate vector calculator that calculates one candidate vector from a motion vector value stored in the motion vector memory according to a predetermined arithmetic expression, and a block that is predicted by the candidate vector and is smaller than a search area on a reference frame A high-precision calculator that sets a second search area, sets a candidate vector in the second search area with an accuracy of one pixel or less, and calculates a prediction error value for each candidate vector; A low-precision calculator that sets a candidate vector in the first search area with an accuracy of 2 pixels or more and calculates a prediction error value for each candidate vector; and a prediction error value calculated by the high-precision calculator. A prediction error value comparator for determining a motion vector value of a coding block by comparing with a prediction error value calculated by the low precision arithmetic unit Video encoding apparatus for.
【請求項2】動きベクトルの検出を行うためのあらかじ
め設定された参照フレーム上の探索領域を第1の探索領
域としたとき、直前の符号化ブロックの動きベクトル値
により予測されるブロックを含み参照フレーム上の探索
領域より小さい第2の探索領域を設定し、前記第2の探
索領域内を1画素以下の精度で候補ベクトルを設定して
その候補ベクトルごとに予測誤差値を算出する高精度演
算器と、参照フレーム上の前記第1の探索領域内を2画
素以上の精度で候補ベクトルを設定してその候補ベクト
ルごとに予測誤差値を算出する低精度演算器と、前記高
精度演算器により算出された予測誤差値と前記低精度演
算器により算出された予測誤差値とを比較することによ
り符号化ブロックの動きベクトル値を決定する予測誤差
値比較器を備えたことを特徴とする映像符号化装置。
2. When a search area on a reference frame set in advance for detecting a motion vector is used as a first search area, a reference including a block predicted by a motion vector value of an immediately preceding coding block is included. A high-precision calculation that sets a second search area smaller than the search area on the frame, sets a candidate vector in the second search area with an accuracy of one pixel or less, and calculates a prediction error value for each candidate vector. And a low-precision calculator that sets a candidate vector in the first search area on a reference frame with an accuracy of 2 pixels or more and calculates a prediction error value for each candidate vector, and the high-precision calculator. A prediction error value comparator for determining the motion vector value of the coding block by comparing the calculated prediction error value with the prediction error value calculated by the low-precision calculator is provided. Video encoding apparatus according to claim and.
【請求項3】高精度探索器と低精度探索器は、垂直方向
の画素を1画素づつ間引いた符号化ブロックおよび探索
領域を用いて予測誤差値の演算を行うことを特徴とする
請求項1または請求項2記載の映像符号化装置。
3. The high-precision searcher and the low-precision searcher calculate a prediction error value using a coded block and a search region in which vertical pixels are thinned out pixel by pixel. Alternatively, the video encoding device according to claim 2.
【請求項4】ブロックに分割された入力映像データを符
号化ブロックとし、前記符号化ブロックとブロックマッ
チングを行う参照フレーム上の領域を探索領域とした
時、前記符号化ブロックと前記探索領域のブロック群と
の予測誤差値群の最小値を求める予測誤差値比較器と、
前記予測誤差値群の統計量を用いて前記符号化ブロック
をパターン1とパターン2に分類するブロック分類器
と、前記ブロック分類器により前記符号化ブロックが前
記パターン1に分類された場合は隣接するブロックの動
きベクトル値を、前記パターン2に分類された場合は前
記予測誤差値比較器で求めた最小の予測誤差値に対応す
る動きベクトル値を前記符号化ブロックの動きベクトル
値として選択するスイッチを備えたことを特徴とする映
像符号化装置。
4. When the input video data divided into blocks is used as a coding block and a region on a reference frame for performing block matching with the coding block is used as a search region, the coding block and the block of the search region Prediction error value comparator for obtaining the minimum value of the prediction error value group with the group,
A block classifier that classifies the coded blocks into patterns 1 and 2 using the statistics of the prediction error value group and a block classifier that is adjacent when the coded blocks are classified into the pattern 1 When the motion vector value of the block is classified into the pattern 2, a switch for selecting the motion vector value corresponding to the minimum prediction error value obtained by the prediction error value comparator as the motion vector value of the coding block is selected. A video encoding device provided with.
【請求項5】ブロックに分割された入力映像データを符
号化ブロックとし、前記符号化ブロックとブロックマッ
チングを行う参照フレーム上の領域を探索領域とし、前
記探索領域を第1の探索領域としたとき、隣接するブロ
ックの動きベクトル値により予測されるブロックを含み
参照フレーム上の探索領域より小さい第2の探索領域を
設定し、前記第2の探索領域内を1画素以下の精度で候
補ベクトルを設定してその候補ベクトルごとに予測誤差
値を算出する高精度演算器と、参照フレーム上の前記第
1の探索領域内を2画素以上の精度で候補ベクトルを設
定してその候補ベクトルごとに予測誤差値を算出する低
精度演算器と、前記高精度演算器により算出された予測
誤差値と前記低精度演算器により算出された予測誤差値
とを比較することにより予測誤差値が最小のブロックを
求める予測誤差値比較器と、前記予測誤差値群の統計量
を用いて前記符号化ブロックをパターン1とパターン2
に分類するブロック分類器と、前記ブロック分類器によ
り前記符号化ブロックが前記パターン1に分類された場
合は前記動きベクトルメモリに格納された動きベクトル
値を、前記パターン2に分類された場合は前記予測誤差
値比較器で求めた最小の予測誤差値に対応する動きベク
トル値を前記符号化ブロックの動きベクトル値として選
択するスイッチを備えたことを特徴とする映像符号化装
置。
5. When the input video data divided into blocks is a coding block, a region on a reference frame for performing block matching with the coding block is a search region, and the search region is a first search region. , Setting a second search area smaller than the search area on the reference frame including the block predicted by the motion vector value of the adjacent block, and setting the candidate vector in the second search area with an accuracy of 1 pixel or less And a high-precision calculator for calculating a prediction error value for each candidate vector, and a prediction error for each candidate vector set in the first search area on the reference frame with an accuracy of 2 pixels or more. Comparing a prediction error value calculated by the high precision calculation unit with a prediction error value calculated by the low precision calculation unit And more predictable error value comparator prediction error values determine the smallest block, the prediction pattern 1 the encoded block using statistics of error value group and pattern 2
And a motion vector value stored in the motion vector memory when the coded block is classified into the pattern 1 by the block classifier, and a motion vector value stored in the pattern 2 when the coded block is classified into the pattern 1. A video coding apparatus comprising a switch for selecting a motion vector value corresponding to a minimum prediction error value obtained by a prediction error value comparator as a motion vector value of the coding block.
【請求項6】ブロックに分割された入力映像データを符
号化ブロックとし、前記符号化ブロックとブロックマッ
チングを行う参照フレーム上の領域を探索領域とした
時、前記符号化ブロックと前記探索領域のブロック群と
の予測誤差値群の統計量を用いて前記符号化ブロックを
パターン1とパターン2に分類するブロック分類器と、
前記ブロック分類器により前記符号化ブロックが前記パ
ターン1に分類された場合は前記予測誤差値群に重み付
けを行う重み付け器と、前記重み付け器により重み付け
された前記予測誤差値群の最小値を求める予測誤差値比
較器を備えたことを特徴とする映像符号化装置。
6. When the input video data divided into blocks is used as a coding block and a region on a reference frame for performing block matching with the coding block is used as a search region, the coding block and the block of the search region A block classifier that classifies the coded blocks into pattern 1 and pattern 2 by using the statistics of the prediction error value group with the group;
A weighter for weighting the prediction error value group when the coded block is classified into the pattern 1 by the block classifier, and a prediction for obtaining the minimum value of the prediction error value group weighted by the weighter An image coding apparatus comprising an error value comparator.
【請求項7】ブロックに分割された入力映像データを符
号化ブロックとし、前記符号化ブロックとブロックマッ
チングを行う参照フレーム上の領域を探索領域とし、前
記探索領域を第1の探索領域としたとき、隣接するブロ
ックの動きベクトル値により予測されるブロックを含み
参照フレーム上の探索領域より小さい第2の探索領域を
設定し、前記第2の探索領域内を1画素以下の精度で候
補ベクトルを設定してその候補ベクトルごとに予測誤差
値を算出する高精度演算器と、参照フレーム上の前記第
1の探索領域内を2画素以上の精度で候補ベクトルを設
定してその候補ベクトルごとに予測誤差値を算出する低
精度演算器と、前記符号化ブロックと前記探索領域のブ
ロック群との予測誤差値群の統計量を用いて前記符号化
ブロックをパターン1とパターン2に分類するブロック
分類器と、前記ブロック分類器により前記符号化ブロッ
クが前記パターン1に分類された場合は前記予測誤差値
群に重み付けを行う重み付け器と、前記重み付け器によ
り重み付けされた前記予測誤差値群の最小値を求める予
測誤差値比較器を備えたことを特徴とする映像符号化装
置。
7. When input video data divided into blocks is a coding block, a region on a reference frame for performing block matching with the coding block is a search region, and the search region is a first search region. , Setting a second search area smaller than the search area on the reference frame including the block predicted by the motion vector value of the adjacent block, and setting the candidate vector in the second search area with an accuracy of 1 pixel or less And a high-precision calculator for calculating a prediction error value for each candidate vector, and a prediction error for each candidate vector set in the first search area on the reference frame with an accuracy of 2 pixels or more. Patterning the encoded block using a low-precision arithmetic unit that calculates a value, and statistics of the prediction error value group of the encoded block and the block group of the search region 1 and a pattern 2, a block classifier, a weighter that weights the prediction error value group when the block is classified into the pattern 1, and a weighter that weights the prediction error value group. And a prediction error value comparator for obtaining the minimum value of the prediction error value group.
【請求項8】重み付け器は、隣接したブロックの動きベ
クトル値により設定された候補ベクトルに対応する位置
の予測誤差値の重み付けを小さくすることを特徴とする
請求項6または請求項7記載の映像符号化装置。
8. The video according to claim 6, wherein the weighter reduces the weighting of the prediction error value at the position corresponding to the candidate vector set by the motion vector value of the adjacent block. Encoding device.
【請求項9】重み付け器は、前記高精度探索器により算
出された予測誤差値の重み付けを小さくすることを特徴
とする請求項6または請求項7記載の映像符号化装置。
9. The video coding apparatus according to claim 6, wherein the weighting unit reduces the weighting of the prediction error value calculated by the high precision search unit.
【請求項10】動きベクトル値の差分値を可変長符号化
する動きベクトル符号化器を備えたことを特徴とする請
求項4、請求項5、請求項6、請求項7のいずれかに記
載の映像符号化装置。
10. A motion vector encoder for variable length coding a difference value between motion vector values, according to claim 4, claim 5, claim 6, or claim 7. Video encoding device.
【請求項11】探索領域内に1つの部分領域または重複
可能な複数の部分領域を設定し、前記部分領域内にある
前記予測誤差値群を部分予測誤差値群とした時、前記部
分予測誤差値群に対して前記分類を行い、少なくとも一
つ以上の前記部分領域の前記部分予測誤差値群が前記パ
タ−ン1に分類された場合前記符号化ブロックをパタ−
ン1に分類する前記符号化ブロック分類器を備えたこと
を特徴とする請求項4、請求項5、請求項6、請求項7
のいずれかに記載の映像符号化装置。
11. A partial prediction error is defined when one partial area or a plurality of overlapping partial areas are set in a search area and the prediction error value group in the partial area is set as a partial prediction error value group. The classification is performed on a value group, and the coded block is patterned when the partial prediction error value group of at least one or more partial regions is classified into the pattern 1.
8. The coding block classifier for classifying the coding block into the class 1 is provided, claim 4, claim 5, claim 6, and claim 7.
The video encoding device according to any one of 1.
【請求項12】予測誤差値に対応する動きベクトルの水
平値または垂直値が同一の値であるブロック群より構成
された、領域探索領域内に1つの部分領域または重複可
能な複数の部分領域を設定し、前記部分領域内にある前
記予測誤差値群を部分予測誤差値群とした時、前記部分
予測誤差値群に対して前記分類を行い、少なくとも一つ
以上の前記部分領域の前記部分予測誤差値群が前記パタ
−ン1に分類された場合前記符号化ブロックをパタ−ン
1に分類する前記符号化ブロック分類器を備えたことを
特徴とする請求項4、請求項5、請求項6、請求項7の
いずれかに記載の映像符号化装置。
12. A partial area or a plurality of partial areas that can overlap each other are formed in an area search area, which is composed of a block group in which the horizontal value or the vertical value of a motion vector corresponding to a prediction error value is the same value. When setting the prediction error value group in the partial region as a partial prediction error value group, the classification is performed on the partial prediction error value group, and the partial prediction of at least one or more partial regions is performed. 6. The coding block classifier for classifying the coding block into the pattern 1 when the error value group is classified into the pattern 1, wherein the coding block classifier is provided. The video encoding device according to claim 6 or 7.
【請求項13】符号化ブロックに対する予測誤差値群ま
たは部分予測誤差値群を分類予測誤差値群としたとき、
統計量として、少なくとも前記分類予測誤差値群の最大
値あるいは平均値を含む前記分類予測誤差値群の大きさ
を表す統計量、または、少なくとも前記分類予測誤差値
群の分散値あるいは前記平均値と各前記予測誤差値との
差の絶対値和あるいは前記分類予測誤差値群の最大値と
最小値との差を含む前記分類予測誤差値群の変動を表す
統計量を用い、前記統計量があらかじめ設定された値以
下の場合前記パタ−ン1とし、そうでない場合前記パタ
ーン2とする前記符号化ブロック分類器を備えたことを
特徴とする請求項4、請求項5、請求項6、請求項7の
いずれかに記載の映像符号化装置。
13. When a prediction error value group or a partial prediction error value group for a coded block is a classification prediction error value group,
As a statistic, a statistic indicating the size of the classification prediction error value group including at least the maximum value or the average value of the classification prediction error value group, or at least the variance value or the average value of the classification prediction error value group. Using a statistic representing the variation of the classification prediction error value group including the difference between the maximum value and the minimum value of the classification prediction error value group or the sum of absolute values of the differences between the prediction error values, 5. The coding block classifier which sets the pattern 1 when the value is less than or equal to a set value and sets the pattern 2 when the value is less than the set value, claims 4, 5, 6 and 6. 7. The video encoding device according to any one of 7.
JP8152594A 1993-04-21 1994-04-20 Video encoder Pending JPH07240927A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8152594A JPH07240927A (en) 1993-04-21 1994-04-20 Video encoder

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP9402993 1993-04-21
JP5-94029 1993-12-09
JP5-309100 1993-12-09
JP30910093 1993-12-09
JP8152594A JPH07240927A (en) 1993-04-21 1994-04-20 Video encoder

Publications (1)

Publication Number Publication Date
JPH07240927A true JPH07240927A (en) 1995-09-12

Family

ID=27303611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8152594A Pending JPH07240927A (en) 1993-04-21 1994-04-20 Video encoder

Country Status (1)

Country Link
JP (1) JPH07240927A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006331136A (en) * 2005-05-27 2006-12-07 Victor Co Of Japan Ltd Moving vector detection apparatus
JP2007194973A (en) * 2006-01-20 2007-08-02 Victor Co Of Japan Ltd Motion vector detector
JP2010011150A (en) * 2008-06-27 2010-01-14 Mitsubishi Electric Corp Motion vector detecting apparatus and motion image encoding device
JP2011223086A (en) * 2010-04-05 2011-11-04 Mitsubishi Electric Corp Resolution converting device and method, scanning line interpolating device and method, and video display device and method
JP2017533669A (en) * 2014-10-31 2017-11-09 サムスン エレクトロニクス カンパニー リミテッド Motion vector encoding method, motion vector decoding method, and apparatus thereof

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006331136A (en) * 2005-05-27 2006-12-07 Victor Co Of Japan Ltd Moving vector detection apparatus
JP2007194973A (en) * 2006-01-20 2007-08-02 Victor Co Of Japan Ltd Motion vector detector
JP4674549B2 (en) * 2006-01-20 2011-04-20 日本ビクター株式会社 Motion vector detection device
JP2010011150A (en) * 2008-06-27 2010-01-14 Mitsubishi Electric Corp Motion vector detecting apparatus and motion image encoding device
JP2011223086A (en) * 2010-04-05 2011-11-04 Mitsubishi Electric Corp Resolution converting device and method, scanning line interpolating device and method, and video display device and method
US10531113B2 (en) 2014-10-31 2020-01-07 Samsung Electronics Co., Ltd. Method and device for encoding/decoding motion vector
JP2017533669A (en) * 2014-10-31 2017-11-09 サムスン エレクトロニクス カンパニー リミテッド Motion vector encoding method, motion vector decoding method, and apparatus thereof
US10848780B2 (en) 2014-10-31 2020-11-24 Samsung Electronics Co., Ltd. Method and device for encoding/decoding motion vector
JP2021101536A (en) * 2014-10-31 2021-07-08 サムスン エレクトロニクス カンパニー リミテッド Motion vector decoding device
US11483584B2 (en) 2014-10-31 2022-10-25 Samsung Electronics Co., Ltd. Method and device for encoding/decoding motion vector
US11818387B2 (en) 2014-10-31 2023-11-14 Samsung Electronics Co., Ltd. Method and device for encoding/decoding motion vector
US11818389B2 (en) 2014-10-31 2023-11-14 Samsung Electronics Co., Ltd. Method and device for encoding/decoding motion vector
US11818388B2 (en) 2014-10-31 2023-11-14 Samsung Electronics Co., Ltd. Method and device for encoding/decoding motion vector
US11831904B2 (en) 2014-10-31 2023-11-28 Samsung Electronics Co., Ltd. Method and device for encoding/decoding motion vector

Similar Documents

Publication Publication Date Title
EP0609022A2 (en) Image encoding apparatus
KR950009699B1 (en) Motion vector detection method and apparatus
KR0178231B1 (en) Method and apparatus for detecting motion vectors based on hierarchical motion estimation
JP2744871B2 (en) Image signal encoding method and image signal encoding device
KR100242406B1 (en) Method for motion estimation using trajectory in a digital video encoder
CN1348312A (en) Method and equipment for estimation of mixed high-speed movement
KR100207390B1 (en) Moving vector detecting method using hierachical motion predicting method
JP2009147807A (en) Image processing apparatus
JPH05328333A (en) Moving vector detector
KR19990038001A (en) Motion Estimator and Method for Digital Image
JPH11289544A (en) Motion detector and its method
JPH08265777A (en) Movement vector determination method using hierarchical movement presumption
JP2002125233A (en) Image compression system for weighting video contents
US7852939B2 (en) Motion vector detection method and device of the same
KR20010030652A (en) Image encoding system
JPH07240927A (en) Video encoder
KR100266161B1 (en) Method of predicting motion for digital image
US6788741B1 (en) Device and method of retrieving high-speed motion
US20090268822A1 (en) Motion vector detection by stepwise search
KR0152014B1 (en) Method and apparauts for moving estimation in image data compression
KR0174455B1 (en) Method and apparatus for encoding a video signal using pixel-by-pixel motion prediction
JPH06233279A (en) Motion compensating encoder
JP2644811B2 (en) Motion compensated interframe predictive coding device
JP2008072608A (en) Apparatus and method for encoding image
KR0154948B1 (en) Motion vector search apparatus using the gradient and the intensity similarity of the moving picture