JP2008154072A - Dynamic image coding apparatus and dynamic image coding method - Google Patents
Dynamic image coding apparatus and dynamic image coding method Download PDFInfo
- Publication number
- JP2008154072A JP2008154072A JP2006341352A JP2006341352A JP2008154072A JP 2008154072 A JP2008154072 A JP 2008154072A JP 2006341352 A JP2006341352 A JP 2006341352A JP 2006341352 A JP2006341352 A JP 2006341352A JP 2008154072 A JP2008154072 A JP 2008154072A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- motion compensation
- compensation block
- motion
- search
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は動画像符号化装置及び動画像符号化方法に関し、特に、複数の動き補償ブロックの動きベクトル探索を並行して実行し、動画像の符号化をリアルタイムに行うために用いて好適な技術に関する。 The present invention relates to a moving picture coding apparatus and a moving picture coding method, and in particular, a technique suitable for performing motion vector search of a plurality of motion compensation blocks in parallel and performing moving picture coding in real time. About.
従来、例えば被写体を撮影し、それにより得られた動画像を圧縮符号化して記録するカメラ一体型動画像記録装置として、デジタルビデオカメラがよく知られている。近年は、ランダムアクセス性などの利便性が高いため、記録媒体が従来の磁気テープからディスク媒体や半導体メモリなどに移り変わってきている。しかし、一般に、ディスク媒体などは記憶容量が少なく、より高能率に圧縮符号化する必要がある。 2. Description of the Related Art Conventionally, for example, a digital video camera is well known as a camera-integrated moving image recording apparatus that captures a subject and compresses and records a moving image obtained thereby. In recent years, recording media have been changed from conventional magnetic tapes to disk media, semiconductor memories, and the like due to high convenience such as random accessibility. However, in general, a disk medium or the like has a small storage capacity and needs to be compressed and encoded with higher efficiency.
また、近年は高画質への期待から、より情報量の多いハイビジョン映像を扱うデジタルビデオカメラの開発が行われており、このように別の観点からも、より高能率な圧縮符号化が望まれており、現在はMPEGが標準方式としてよく用いられている。 Also, in recent years, digital video cameras that handle high-definition video with a large amount of information have been developed with the expectation of high image quality. Thus, more efficient compression coding is desired from another viewpoint as well. At present, MPEG is often used as a standard system.
さらに近年では、記録媒体への記録可能時間のさらなる向上や携帯端末向けに、より低ビットレートでの符号化の必要性が高まっており、さらに高能率な符号化が研究されている。その中の1つがH.264であり、MPEG2やMPEG4などの従来の符号化方式に比べ、符号化や復号化により多くの演算量が必要となるが、より高い符号化効率が実現されることが知られている。 Further, in recent years, the need for encoding at a lower bit rate has been increasing for further improvement of the recordable time on the recording medium and for portable terminals, and higher efficiency encoding has been studied. One of them is H. It is H.264, and a large amount of calculation is required for encoding and decoding as compared with conventional encoding methods such as MPEG2 and MPEG4, but it is known that higher encoding efficiency is realized.
H.264では、符号化効率を上げるために、様々な工夫がなされているが、その一例としてマクロブロック・パーティションがある。これは、符号化単位であるマクロブロックをさらにブロック分割してマクロブロック・パーティション(動き補償ブロック)を形成し、動き補償ブロック単位で動き補償を行うものであり、より緻密な動き補償を可能にしている。 H. In H.264, various devices have been devised in order to increase the coding efficiency. As an example, there is a macroblock partition. In this method, macroblocks, which are coding units, are further divided into blocks to form macroblock partitions (motion compensation blocks), and motion compensation is performed in units of motion compensation blocks, enabling more precise motion compensation. ing.
また、動きベクトルの符号化は対象となる動き補償ブロックに対して、既に符号化済みとなっている周囲の動き補償ブロックの動きベクトルを用いて算出される予測ベクトルを生成する。そして、符号化対象の動きベクトルと予測ベクトルとの差分ベクトルを符号化するようになされている。 In addition, for the motion vector encoding, a prediction vector calculated using the motion vectors of surrounding motion compensation blocks that have already been encoded is generated for the target motion compensation block. Then, the difference vector between the motion vector to be encoded and the prediction vector is encoded.
したがって、より効率的に符号化するためには、動き補償による画素差分値の符号量だけを考慮するのではなく、ベクトルの符号量も考慮して、総合的に最も符号化効率が高くなる動きベクトルを生成することが重要である。なお、効率的にマクロブロックの形状を絞り込んで動き検出を行う先願がある(特許文献1参照)。特許文献1ではカメラ情報を用いてマクロブロックの形状を決定していた。 Therefore, in order to perform encoding more efficiently, not only considering the code amount of the pixel difference value by motion compensation, but also considering the code amount of the vector, the motion with the highest overall encoding efficiency is considered. It is important to generate a vector. In addition, there is a prior application that performs motion detection by efficiently narrowing down the shape of a macroblock (see Patent Document 1). In Patent Document 1, the shape of a macroblock is determined using camera information.
以上説明したように、H.264においては予測ベクトルを算出して、動きベクトルの符号量も考慮しながら動きベクトルを探索する必要があるが、動き補償ブロックの細分化により、膨大な演算を行う必要がある。 As explained above, H.P. In H.264, it is necessary to calculate a prediction vector and search for a motion vector in consideration of the code amount of the motion vector. However, it is necessary to perform enormous operations by subdividing the motion compensation block.
そこで、前記特許文献1ではカメラ情報を使っていたが、カメラ情報を使えない符号化装置にあっては依然として課題が残るうえ、カメラ情報を使った結果、全てのマクロブロック形状に関して演算する結果となったときには、やはりその演算量は多いままである。 Therefore, although the camera information is used in the above-mentioned Patent Document 1, problems still remain in the encoding apparatus that cannot use the camera information, and as a result of using the camera information, the calculation results for all the macroblock shapes are obtained. When that happens, the amount of computation still remains large.
また、リアルタイムで符号化処理を特に重視する場合などでは、非常に高速なプロセッサが必要になり、機器が高価になったり、消費電力が大きくなったりするという弊害も現れる。 In addition, when the encoding process is particularly important in real time, a very high speed processor is required, which causes the disadvantage that the equipment becomes expensive and the power consumption increases.
そこで、符号化処理を抜本的に高速化するために、複数の動き補償ブロックの動きベクトル探索を並列処理で行うという手法が有効となる。しかしながら、動きベクトル探索を並列処理で行うと、場合によっては予測ベクトル生成のために必要な周囲の動きベクトルがまだ生成されていない場合もある。 Therefore, in order to drastically speed up the encoding process, a technique of performing motion vector search of a plurality of motion compensation blocks by parallel processing is effective. However, when the motion vector search is performed in parallel processing, in some cases, surrounding motion vectors necessary for generating a prediction vector may not be generated yet.
その場合は予測ベクトルを生成することができず、好適な動きベクトルを探索できないという課題があった。つまり、低消費電力と好適な動きベクトル探索とを両立した動画像符号化装置を実現することは非常に困難であった。 In that case, there is a problem that a prediction vector cannot be generated and a suitable motion vector cannot be searched. That is, it has been very difficult to realize a moving image encoding device that achieves both low power consumption and suitable motion vector search.
本発明は前述の問題点に鑑み、低消費電力と好適な動きベクトル探索とを両立できるようにすることを目的としている。 The present invention has been made in view of the above-described problems, and an object thereof is to achieve both low power consumption and suitable motion vector search.
本発明の動画像符号化装置は、画面を符号化単位である符号化ブロックに分割するとともに、前記符号化ブロックを動き補償単位である動き補償ブロックに分割し、前記動き補償ブロックの動きベクトル情報を、処理対象の動き補償ブロックの近傍に位置する符号化済み動き補償ブロックの動きベクトル情報を用いて生成される予測動きベクトルとの差分情報によって符号化する動画像符号化装置であって、前記動き補償ブロックの動きベクトルを探索する動きベクトル探索手段と、前記動きベクトル探索手段により、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索を完了しているか否かを判断する探索完了判断手段と、前記探索完了判断手段の判断の結果、前記動き補償ブロックの動きベクトル探索が完了している場合には、動きベクトルを決定する要素として、少なくとも前記処理対象の動き補償ブロックに対する予測動きベクトルを用いて動きベクトルの探索を行うように選択し、前記動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックを含む、前記符号化ブロック内の前記処理対象の動き補償ブロックとは異なる動き補償ブロックに対する予測動きベクトルを用いて、前記動き補償ブロックの動きベクトル探索を行うように選択する選択手段とを備えることを特徴とする。 The moving picture coding apparatus according to the present invention divides a screen into coding blocks which are coding units, and divides the coding block into motion compensation blocks which are motion compensation units, and motion vector information of the motion compensation block Is encoded with difference information from a predicted motion vector generated using motion vector information of an encoded motion compensation block located in the vicinity of a motion compensation block to be processed, Motion vector search means for searching for a motion vector of a motion compensation block, and the vicinity of the motion compensation block to be processed necessary for generating a predicted motion vector for the motion compensation block to be processed by the motion vector search means A search completion judgment that judges whether or not the motion vector search of the motion compensation block located at is completed And when the search of the motion compensation block has been completed as a result of the determination by the search completion determination means, at least a prediction motion vector for the motion compensation block to be processed is used as an element for determining a motion vector. If the motion vector search of the motion compensation block is not completed, the processing target in the coding block including the processing target motion compensation block is selected. Selecting means for performing a motion vector search of the motion compensation block using a predicted motion vector for a motion compensation block different from the motion compensation block.
本発明の動画像符号化方法は、画面を符号化単位である符号化ブロックに分割するとともに、前記符号化ブロックを動き補償単位である動き補償ブロックに分割し、前記動き補償ブロックの動きベクトル情報を、処理対象の動き補償ブロックの近傍に位置する符号化済み動き補償ブロックの動きベクトル情報を用いて生成される予測動きベクトルとの差分情報によって符号化する動画像符号化方法であって、前記動き補償ブロックの動きベクトルを探索する動きベクトル探索工程と、前記動きベクトル探索工程において、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索を完了しているか否かを判断する探索完了判断工程と、前記探索完了判断工程における判断の結果、前記動き補償ブロックの動きベクトル探索が完了している場合には、動きベクトルを決定する要素として、少なくとも前記処理対象の動き補償ブロックに対する予測動きベクトルを用いて動きベクトルの探索を行うように選択し、前記動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックを含む、前記符号化ブロック内の前記処理対象の動き補償ブロックとは異なる動き補償ブロックに対する予測動きベクトルを用いて、前記動き補償ブロックの動きベクトル探索を行うように選択する選択工程とを備えることを特徴とする。 The moving picture coding method of the present invention divides a screen into coding blocks which are coding units, and divides the coding block into motion compensation blocks which are motion compensation units, and motion vector information of the motion compensation block Is encoded with difference information from a predicted motion vector generated using motion vector information of an encoded motion compensation block located in the vicinity of a motion compensation block to be processed, the video encoding method comprising: A motion vector search step for searching for a motion vector of a motion compensation block, and a neighborhood of the motion compensation block to be processed necessary for generating a predicted motion vector for the motion compensation block to be processed in the motion vector search step A search completion judgment for judging whether or not the motion vector search of the motion compensation block located at is completed. And when the motion vector search of the motion compensation block is completed as a result of the determination in the step and the search completion determination step, at least a predicted motion vector for the motion compensation block to be processed as an element for determining a motion vector If the motion vector search of the motion compensation block is not completed, the processing target in the coding block including the processing target motion compensation block is selected. And a selection step of selecting to perform a motion vector search of the motion compensation block using a predicted motion vector for a motion compensation block different from the motion compensation block.
本発明のプログラムは、画面を符号化単位である符号化ブロックに分割するとともに、前記符号化ブロックを動き補償単位である動き補償ブロックに分割し、前記動き補償ブロックの動きベクトル情報を、処理対象の動き補償ブロックの近傍に位置する符号化済み動き補償ブロックの動きベクトル情報を用いて生成される予測動きベクトルとの差分情報によって符号化する工程をコンピュータに実行させるプログラムであって、前記動き補償ブロックの動きベクトルを探索する動きベクトル探索工程と、前記動きベクトル探索工程において、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索を完了しているか否かを判断する探索完了判断工程と、前記探索完了判断工程における判断の結果、前記動き補償ブロックの動きベクトル探索が完了している場合には、動きベクトルを決定する要素として、少なくとも前記処理対象の動き補償ブロックに対する予測動きベクトルを用いて動きベクトルの探索を行うように選択し、前記動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックを含む、前記符号化ブロック内の前記処理対象の動き補償ブロックとは異なる動き補償ブロックに対する予測動きベクトルを用いて、前記動き補償ブロックの動きベクトル探索を行うように選択する選択工程とをコンピュータに実行させることを特徴とする。 The program of the present invention divides a screen into coding blocks that are coding units, divides the coding block into motion compensation blocks that are motion compensation units, and processes motion vector information of the motion compensation block as a processing target. A program for causing a computer to execute a process of encoding using difference information with a predicted motion vector generated using motion vector information of an encoded motion compensation block located near a motion compensation block of the motion compensation block, A motion vector search step for searching for a motion vector of a block, and a position in the vicinity of the motion compensation block to be processed necessary for generating a predicted motion vector for the motion compensation block to be processed in the motion vector search step. Whether or not the motion vector search of the motion compensation block to be completed has been completed. And a search completion determination step that determines whether or not the motion vector search of the motion compensation block has been completed as a result of the determination in the search completion determination step. The coding block including the motion compensation block to be processed when the motion vector search of the motion compensation block is not completed when the motion vector search of the motion compensation block is not completed. And a selection step of selecting a motion vector search for the motion compensation block using a predicted motion vector for a motion compensation block different from the motion compensation block to be processed. .
本発明によれば、符号化効率を大幅に落とすことなく、高速処理を可能とすることができるとともに、省電力化を図ることができ、低消費電力と好適な動きベクトル探索とを両立させることができる。 According to the present invention, high-speed processing can be performed without significantly reducing the coding efficiency, and power saving can be achieved, and both low power consumption and suitable motion vector search can be achieved. Can do.
(第1の実施形態)
以下、本発明の実施の形態を、図面を参照して説明する。
図1は、第1の実施の形態に係る動画像符号化装置の構成例を示すブロック図である。
図1に示したように、本実施形態の動画像符号化装置は、レンズやCCD等のカメラ部を含む撮像部101を備えている。
(First embodiment)
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram illustrating a configuration example of a moving image encoding apparatus according to the first embodiment.
As shown in FIG. 1, the moving image encoding apparatus according to the present embodiment includes an
また、フレームメモリ102、動きベクトル探索回路103、フレーム間動き補償回路104、イントラ予測回路105、スイッチ106、減算器107、整数変換回路108、量子化回路109、逆量子化回路110、逆整数変換回路111を備えている。更に、加算器112、ループ内フィルタ113、エントロピー符号化回路115、符号量制御回路116、記録部117、記録媒体118を備える構成としている。
Also, the
そして、符号量制御回路116を始めとする各構成部の動作は、図示していないシステムコントローラによって制御されるようになされている。すなわち、このシステムコントローラは装置全体の動作制御を司るものであり、図示していない操作部から必要に応じて入力されるユーザからの指示によっても、装置全体の動作制御を行うようになされている。 The operation of each component including the code amount control circuit 116 is controlled by a system controller (not shown). That is, the system controller controls the operation of the entire apparatus, and controls the operation of the entire apparatus in accordance with an instruction from the user that is input as necessary from an operation unit (not shown). .
撮像部101にて撮像して得られた画像信号は、第1フレーム、第2フレーム、第3フレーム、・・・の順で、フレームメモリ102に順次格納されていく。フレームメモリ102からは、例えば、第3フレーム、第1フレーム、第2フレーム、・・・などの、符号化を行う順序で画像データを取り出していく。
Image signals obtained by imaging by the
符号化の種類としては、フレーム内の画像データのみで符号化する"イントラ符号化"と、フレーム間予測も含めて符号化する"インター符号化"がある。インター符号化は、動き補償の単位ブロック(MCブロック)に対して1枚の参照フレームとの予測を行うPピクチャと、MCブロックに対して2枚までの参照フレームとの予測を行うBピクチャとがある。なお、イントラ符号化を行うピクチャをIピクチャという。符号化するフレームの順番が入力されたフレームの順番と異なるのは、時間的に未来のフレームとの予測(後方予測)を可能にするためである。 As types of encoding, there are “intra encoding” in which only image data in a frame is encoded, and “inter encoding” in which encoding is performed including inter-frame prediction. In the inter coding, a P picture that predicts one reference frame for a unit block (MC block) for motion compensation, a B picture that predicts up to two reference frames for an MC block, There is. A picture to be subjected to intra coding is called an I picture. The reason why the order of frames to be encoded differs from the order of input frames is to enable temporal prediction (backward prediction) with future frames.
イントラ符号化が行われる場合、符号化単位となるブロックの画像データはフレームメモリ102から読み出されて、イントラ予測回路105へ入力される。イントラ予測回路105は、符号化対象ブロックと、後述する同一フレーム内の符号化対象ブロック近傍に位置する再構成画像から生成される複数の予測画像とのブロックマッチングをそれぞれに行う。そして、最も相関の高いイントラ予測画像を選択してスイッチ106へ出力する。
When intra coding is performed, image data of a block serving as a coding unit is read from the
すなわち、イントラ符号化が行われる場合、スイッチ106はイントラ予測回路105(イントラ予測画像)の側へ切り替えられ、減算器107へは前記イントラ予測画像が入力される。減算器107は、フレームメモリ102から入力される符号化対象ブロックと、スイッチ106から入力されるイントラ予測画像との画素値の差分情報を整数変換回路108へ出力する。前述のように、スイッチ106により選択することにより、処理対象の動き補償ブロックと同じ空間位置の動き補償ブロックの動きベクトルを用いて動き補償ブロックの動きベクトル探索を行うように選択することが可能となる。
That is, when intra coding is performed, the
前記画素値の差分情報は、整数変換回路108において整数変換が施された後、量子化回路109において量子化処理される。量子化回路109の出力である量子化された変換係数は、エントロピー符号化回路115においてエントロピー符号化がなされる。その後、記録部117によって記録媒体への記録信号が生成されて、記録媒体118へ記録される。
The difference information of the pixel values is subjected to integer conversion by the
量子化回路109における量子化係数は、エントロピー符号化回路115が発生した符号量のフィードバックなどから符号量制御回路116が算出する。また、量子化回路109の出力である量子化された変換係数は、逆量子化回路110において逆量子化される。更に、逆整数変換回路111において逆整数変換処理が施されて、復号された再構成画像となり、前述したイントラ予測回路105の入力となってイントラ予測画像の生成に用いられる。
The quantization coefficient in the
また、前記再構成画像は、ループ内フィルタ113によって符号化歪の軽減処理が施された後、後述するインター符号化の際に用いる参照画像としてフレームメモリ102に記憶される。
The reconstructed image is subjected to encoding distortion reduction processing by the in-
一方、インター符号化が行われる場合、符号化単位となるブロックの画像データはフレームメモリ102から読み出されて、動きベクトル探索回路103へ入力される。同時に、動きベクトル探索回路103は、参照画像をフレームメモリ102から読み出し、符号化画像と参照画像から動きベクトルを検出する。フレーム間動き補償回路104は、前記動きベクトルに従って動き補償を行い、予測画像を生成する。
On the other hand, when inter coding is performed, image data of a block serving as a coding unit is read from the
インター符号化が行われる場合、スイッチ106はフレーム間動き補償回路104側(インター予測画像の側)へ切り替えられ、符号化画像と予測画像との差分は減算器107によって計算されて差分画像が生成される。差分画像は、整数変換回路108に出力される。その他の処理は前述のイントラ符号化の場合と同様である。
When inter coding is performed, the
次に、動きベクトル探索回路103の動作について詳細に説明する。
図2は、第1の実施の形態に係る動画像符号化装置が備える動きベクトル探索回路の構成例を示すブロック図である。
Next, the operation of the motion
FIG. 2 is a block diagram illustrating a configuration example of a motion vector search circuit included in the video encoding device according to the first embodiment.
図2に示すように、動きベクトル探索回路103は、符号化対象ブロックバッファ201、参照画像バッファ202、画素差分コスト計算回路203、予測ベクトル生成回路205、ベクトル符号量コスト計算回路204、コスト判定回路206によって構成されている。
As shown in FIG. 2, the motion
例えば、水平16画素、垂直16画素の符号化対象ブロックは、フレームメモリ102から読み出されて、符号化対象ブロックバッファ201へ記憶される。一方で、動きベクトルの検出範囲を参照画像とすると、水平24画素、垂直24画素の参照画像データは、フレームメモリ102から読み出されて、参照画像バッファ202へ記憶される。
For example, an encoding target block having 16 horizontal pixels and 16 vertical pixels is read from the
ところで、水平16画素、垂直16画素の符号化対象ブロックは、図3に示すように、さらに、補償単位であるMCブロック(補償単位ブロック)にブロック分割することができる。
まず、図3(a)に示す16x16ブロックの動きベクトル探索を行う場合の動作を説明する。画素差分コスト計算回路203は、符号化対象ブロックバッファ201に記憶されている符号化対象ブロックと、参照画像バッファ202に記憶されている、ある座標の水平16画素、垂直16画素のブロックとの相関を調べて画素差分コストを計算する。なお、前記座標が動きベクトルに相当する。画素差分コストの計算方法としては、例えば、符号化画像と参照画像との各画素ごとの差分絶対値を積算した値(MAE)を用いることができる。
Incidentally, the encoding target block of 16 horizontal pixels and 16 vertical pixels can be further divided into MC blocks (compensation unit blocks) which are compensation units, as shown in FIG.
First, the operation when the motion vector search of the 16 × 16 block shown in FIG. The pixel difference
一方、予測ベクトル生成回路205は、探索するMCブロックに対する予測ベクトルを生成する。予測ベクトルの生成方法は符号化の規格により定まっており、例えば16x16ブロックの場合、図4に示すように、符号化対象ブロック(処理対象)Xの近傍のA、B、Cブロックの動きベクトルを用いて生成する。そのため、予測ベクトル生成回路205は、符号化済みの動きベクトル情報を、少なくとも符号化ブロックで画面一列分記憶しておく必要がある。
On the other hand, the prediction
ベクトル符号量コスト計算回路204は、前記生成された予測ベクトルと、前記画素差分コストを算出した動きベクトルとの差分ベクトルを算出し、ベクトル符号量コストを算出する。
The vector code amount
前述の動作を、参照画像バッファ202から読み出す水平16画素、垂直16画素ブロックの座標を変えながら,つまり候補となる動きベクトルを変えながら繰り返すことによって、動きベクトルの探索を行う。
The motion vector search is performed by repeating the above-described operation while changing the coordinates of the horizontal 16-pixel and vertical 16-pixel blocks read from the
動きベクトルに対するコストは、コスト判定回路206に順次入力されて好適な動きベクトルを判定していく。コスト判定回路206では、ある候補動きベクトルに対して算出された、画素差分コストとベクトル符号量コストを合わせて総合コストを算出し、総合コストが常に最小となる時の、候補動きベクトルと、それに対応する総合コストを記憶するようになっている。最終的に水平・垂直ともに±4画素の探索範囲を探索終了した時点で記憶されている候補動きベクトルを確定動きベクトルとして出力する。
The cost for the motion vector is sequentially input to the
次に、図3(d)に示す8x8ブロックの動きベクトル探索で、4個の8x8ブロックの探索処理を同時並列に実行する(並列処理を実行する)場合の動作を説明する。
候補動きベクトルを変えながら総合コストを算出して総合コストが最小となる動きベクトルを決定する基本的な動作は、前述の16x16ブロックの場合と同様である。ただし、4個の8x8ブロックの動きベクトルを並列動作で求めるため、最小となる総合コスト、及び対応する動きベクトルの記憶回路が4ブロック分必要となる。
Next, an operation in the case where the search processing of four 8x8 blocks is executed in parallel (execution of parallel processing) in the motion vector search of 8x8 blocks shown in FIG.
The basic operation of calculating the total cost while changing the candidate motion vector and determining the motion vector that minimizes the total cost is the same as in the case of the 16 × 16 block described above. However, since the motion vectors of four 8 × 8 blocks are obtained in parallel operation, the minimum total cost and the corresponding motion vector storage circuit are required for four blocks.
さて、ここで、図5に示す符号化対象ブロックXを4個の8x8ブロックX0,X1,X2,X3に分割した場合の、X2に対する予測ベクトルの算出について説明する。
X2に対する予測ベクトルは、図5中のA3,X0,X1の動きベクトルを用いて生成するように符号化の規格で定められている。
Now, calculation of a prediction vector for X2 when the encoding target block X shown in FIG. 5 is divided into four 8 × 8 blocks X0, X1, X2, and X3 will be described.
The prediction vector for X2 is defined by the coding standard so as to be generated using the motion vectors of A3, X0, and X1 in FIG.
水平16画素、垂直16画素の符号化ブロック単位で符号化処理しているとすると、A3の動きベクトルは既に確定しているが、X0、及びX1に対する動きベクトルは未確定の状態であり、予測ベクトルの生成ができない。そこで、このように予測ベクトルの生成に必要な動きベクトルが未確定の場合には、16x16ブロックに対する予測ベクトルを、X2の予測ベクトルとして用いる。X1,X3についても同様である。なお、ここではX2の予測ベクトルとして16x16ブロックの予測ベクトルを用いたが、他のブロックサイズで確定できる予測ベクトルであれば、例えば、図3(b)の16x8ブロックに対する予測ベクトルを用いてもよい。 Assuming that encoding processing is performed in units of encoding blocks of 16 horizontal pixels and 16 vertical pixels, the motion vector of A3 has already been determined, but the motion vectors for X0 and X1 are indeterminate and prediction The vector cannot be generated. Therefore, when the motion vector necessary for generating the prediction vector is uncertain, the prediction vector for the 16 × 16 block is used as the X2 prediction vector. The same applies to X1 and X3. Here, a prediction vector of 16 × 16 blocks is used as the prediction vector of X2, but a prediction vector for the 16 × 8 block of FIG. 3B may be used as long as the prediction vector can be determined with other block sizes. .
また、前記説明では16x16ブロックの場合と8x8ブロックの場合とを分けて説明した。しかし、最小となる総合コスト、及び対応する動きベクトルの記憶回路をそれぞれのブロック分を持つことによって、16x16ブロックの動きベクトル探索と、8x8ブロックの動きベクトル探索とを並列に実行することが可能である。したがって、最小となる総合コスト、及び対応する動きベクトルの記憶回路を9個持つことによって、図3(a)、(b)、(c)、(d)の動きベクトル探索をすべて並列で実行することが可能である。 In the above description, the case of 16 × 16 blocks and the case of 8 × 8 blocks have been described separately. However, it is possible to execute a motion vector search of 16 × 16 blocks and a motion vector search of 8 × 8 blocks in parallel by having a minimum total cost and a corresponding motion vector storage circuit for each block. is there. Accordingly, by having nine storage circuits for the minimum total cost and corresponding motion vectors, the motion vector searches shown in FIGS. 3A, 3B, 3C, and 3D are all executed in parallel. It is possible.
(第2の実施形態)
図6は、第2の実施の形態に係る動画像符号化装置の構成を示すブロック図である。
本実施形態の動画像符号化装置においては、図1で説明した動画像符号化装置に加えて、符号化ブロックに比較して十分に広い範囲、あるいはフレーム全体の大域的な動きベクトルを算出する大域動きベクトル探索回路601を備えている。
(Second Embodiment)
FIG. 6 is a block diagram showing a configuration of a moving picture encoding apparatus according to the second embodiment.
In the moving picture coding apparatus according to the present embodiment, in addition to the moving picture coding apparatus described with reference to FIG. 1, a global motion vector of a sufficiently wide range or the entire frame is calculated as compared with the coding block. A global motion
大域動きベクトル探索回路601は、パン撮影など画面全体の動きを検出して、動きベクトル探索回路103が動きベクトルを探索する際に、探索範囲の中心座標の決定になどに用いられ、動きベクトル探索の精度向上に有効である。
The global motion
全体的な構成、動作は前記第1の実施形態と同様であるが、予測ベクトル生成回路205の動作が異なるため、予測ベクトル生成回路205の動作のみ詳細に説明する。
図5の8x8ブロックのX2に対する予測ベクトルは、図5中のA3,X0,X1の動きベクトルから生成するが、X0,X1の動きベクトル探索も並列に実行しているために確定できないことは、前述の通りである。そこで、X2の予測ベクトルとして、前記大域動きベクトル探索回路601が出力した大域動きベクトルを用いるようにしている。X1,X3についても同様である。
Although the overall configuration and operation are the same as those in the first embodiment, since the operation of the prediction
The prediction vector for X2 of the 8 × 8 block in FIG. 5 is generated from the motion vectors of A3, X0, and X1 in FIG. 5, but since the motion vector search of X0 and X1 is also executed in parallel, it cannot be determined. As described above. Therefore, the global motion vector output from the global motion
(第3の実施形態)
図7は、第3の実施の形態に係る動画像符号化装置の構成を示すブロック図である。
本実施形態の動画像符号化装置は、図1に示した動画像符号化装置の構成に加えて、動きベクトル探索回路103が生成した動きベクトルを少なくとも1フレーム期間の間保持する、動きベクトル記憶回路701を備えている。
(Third embodiment)
FIG. 7 is a block diagram showing a configuration of a video encoding apparatus according to the third embodiment.
In addition to the configuration of the moving picture encoding apparatus shown in FIG. 1, the moving picture encoding apparatus of the present embodiment stores a motion vector generated by the motion
全体的な構成、動作は前記第1の実施形態と同様であるが、予測ベクトル生成回路205の動作が異なるため、予測ベクトル生成回路205の動作のみを詳細に説明する。
図5の8x8ブロックのX2に対する予測ベクトルは、図5中のA3,X0,X1の動きベクトルから生成するが、X0,X1の動きベクトル探索も並列に実行しているために確定できないことは、前述の通りである。
Although the overall configuration and operation are the same as those in the first embodiment, since the operation of the prediction
The prediction vector for X2 of the 8 × 8 block in FIG. 5 is generated from the motion vectors of A3, X0, and X1 in FIG. 5, but since the motion vector search of X0 and X1 is also executed in parallel, it cannot be determined. As described above.
そこで、本実施形態の動画像符号化装置においては、X2の予測ベクトルとして、前記動きベクトル記憶回路701に記憶されている、既に符号化済みのフレームの空間的に同じ位置の動きベクトルを用いるようにしている。X1,X3についても同様である。
Therefore, in the moving picture encoding apparatus of the present embodiment, the motion vector at the same spatial position of the already encoded frame stored in the motion
(第4の実施形態)
次に、第4の実施の形態に係る動画像符号化装置について説明する。
全体的な構成、動作は前記第1の実施形態と同様であるが、予測ベクトル生成回路205の動作が異なるため、予測ベクトル生成回路205の動作のみ詳細に説明する。
(Fourth embodiment)
Next, a video encoding device according to the fourth embodiment will be described.
Although the overall configuration and operation are the same as those in the first embodiment, since the operation of the prediction
図5の8x8ブロックのX2に対する予測ベクトルは、図5中のA3,X0,X1の動きベクトルから生成するが、X0,X1の動きベクトル探索も並列に実行しているために確定できないことは、前述の通りである。 The prediction vector for X2 of the 8 × 8 block in FIG. 5 is generated from the motion vectors of A3, X0, and X1 in FIG. 5, but since the motion vector search of X0 and X1 is also executed in parallel, it cannot be determined. As described above.
そこで、本実施形態の動画像符号化装置は、X0,X1の動きベクトルについては、探索途中の候補ベクトルを確定ベクトル(暫定動きベクトル)として用いることでX2の予測ベクトルを生成している。X0,X1の候補ベクトルは動きベクトルの探索処理が進むにつれて、値が変化していく。このため、X2の予測ベクトル生成も、前記X0,X1の候補ベクトルが更新される度に生成され、X2の予測ベクトルも更新されていく。なお、暫定動きベクトルの初期値は、零ベクトルであってもよい。 In view of this, the moving picture encoding apparatus of the present embodiment generates an X2 prediction vector by using a candidate vector in the middle of a search as a fixed vector (provisional motion vector) for the X0 and X1 motion vectors. The values of the candidate vectors X0 and X1 change as the motion vector search process proceeds. Therefore, the prediction vector for X2 is also generated every time the candidate vectors for X0 and X1 are updated, and the prediction vector for X2 is also updated. Note that the initial value of the provisional motion vector may be a zero vector.
ただし、動きベクトルの探索開始時点では、X0,X1の候補ベクトルが未確定、あるいは信頼性評価値が非常に低い状態であるため、X0,X1の候補ベクトルの初期値として、例えば16x16ブロックの予測ベクトルを用いている。そして、動きベクトル探索処理が進み、候補ベクトルが順次更新されていく。そして、前記候補ベクトルに対する総合コストがあらかじめ設定されている値(予め定められた閾値)よりも小さくなった(閾値を超えた)時点で、X0,X1の候補ベクトルをX2の予測ベクトル生成に用いるようにしている。 However, since the candidate vectors for X0 and X1 are undecided or the reliability evaluation value is very low at the start of motion vector search, prediction of, for example, 16 × 16 blocks is performed as the initial value of the candidate vectors for X0 and X1. A vector is used. Then, the motion vector search process proceeds, and the candidate vectors are sequentially updated. Then, when the total cost for the candidate vector becomes smaller than a preset value (predetermined threshold) (exceeds the threshold), the candidate vectors X0 and X1 are used to generate a prediction vector for X2. I am doing so.
なお、ここでは、X0,X1の候補ベクトルの信頼性が非常に低い場合に、16x16ブロックの予測ベクトルを用いている。しかし、他の確定できる予測ベクトルや、ある固定値、大域動きベクトル、あるいは、既に符号化済みのフレームの空間的に同じ位置の動きベクトルなどを用いるようにしてもよい。 Here, when the reliability of the candidate vectors X0 and X1 is very low, a prediction vector of 16 × 16 blocks is used. However, other determinable prediction vectors, a certain fixed value, a global motion vector, or a motion vector at the same spatial position in an already encoded frame may be used.
(本発明に係る他の実施形態)
前述した本発明の実施形態における動画像符号化装置を構成する動きベクトル探索手段、探索完了判断手段、選択手段、大域動きベクトル探索手段及び予測動きベクトル生成手段、並びに動画像符号化方法の各ステップは、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記憶したコンピュータ読み取り可能な記憶媒体は本発明に含まれる。
(Other embodiments according to the present invention)
Each step of motion vector search means, search completion determination means, selection means, global motion vector search means and predicted motion vector generation means, and video encoding method constituting the moving picture encoding apparatus in the embodiment of the present invention described above Can be realized by operating a program stored in a RAM or ROM of a computer. This program and a computer-readable storage medium storing the program are included in the present invention.
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。 In addition, the present invention can be implemented as, for example, a system, apparatus, method, program, storage medium, or the like. Specifically, the present invention may be applied to a system including a plurality of devices. The present invention may be applied to an apparatus composed of a single device.
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接、あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。 Note that the present invention supplies a software program that implements the functions of the above-described embodiments directly or remotely to a system or apparatus. In addition, this includes a case where the system or the computer of the apparatus is also achieved by reading and executing the supplied program code.
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。 Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. In other words, the present invention includes a computer program itself for realizing the functional processing of the present invention.
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。 In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, and the like.
プログラムを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。 Examples of the storage medium for supplying the program include a floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, and CD-RW. In addition, there are magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD-R), and the like.
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。 As another program supply method, a browser on a client computer is used to connect to an Internet home page. It can also be supplied by downloading the computer program itself of the present invention or a compressed file including an automatic installation function from a homepage to a storage medium such as a hard disk.
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。 It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the present invention.
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。 In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and key information for decryption is downloaded from a homepage via the Internet to users who have cleared predetermined conditions. Let It is also possible to execute the encrypted program by using the downloaded key information and install the program on a computer.
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。 Further, the functions of the above-described embodiments are realized by the computer executing the read program. In addition, based on the instructions of the program, an OS or the like running on the computer performs part or all of the actual processing, and the functions of the above-described embodiments can also be realized by the processing.
さらに、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。 Further, the program read from the storage medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. Thereafter, the CPU of the function expansion board or function expansion unit performs part or all of the actual processing based on the instructions of the program, and the functions of the above-described embodiments are realized by the processing.
101 撮像部
102 フレームメモリ
103 動きベクトル探索回路
104 フレーム間動き補償回路
105 イントラ予測回路
106 スイッチ
107 減算器
108 整数変換回路
109 量子化回路
110 逆量子化回路
111 逆整数変換回路
112 加算器
113 ループ内フィルタ
115 エントロピー符号化回路
116 符号量制御回路
117 記録部
118 記録媒体
201 符号化対象ブロックバッファ
202 参照画像バッファ
203 画素差分コスト計算回路
204 ベクトル符号量コスト計算回路
205 予測ベクトル生成回路
206 コスト判定回路
601 大域動きベクトル探索回路
701 動きベクトル記憶回路
DESCRIPTION OF
Claims (17)
前記動き補償ブロックの動きベクトルを探索する動きベクトル探索手段と、
前記動きベクトル探索手段により、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索を完了しているか否かを判断する探索完了判断手段と、
前記探索完了判断手段の判断の結果、前記動き補償ブロックの動きベクトル探索が完了している場合には、動きベクトルを決定する要素として、少なくとも前記処理対象の動き補償ブロックに対する予測動きベクトルを用いて動きベクトルの探索を行うように選択し、前記動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックを含む、前記符号化ブロック内の前記処理対象の動き補償ブロックとは異なる動き補償ブロックに対する予測動きベクトルを用いて、前記動き補償ブロックの動きベクトル探索を行うように選択する選択手段とを備えることを特徴とする動画像符号化装置。 The screen is divided into coding blocks that are coding units, the coding block is divided into motion compensation blocks that are motion compensation units, and motion vector information of the motion compensation block is stored in the vicinity of the motion compensation block to be processed. A video encoding device that performs encoding using difference information with a predicted motion vector generated using motion vector information of an encoded motion compensation block located in
Motion vector search means for searching for a motion vector of the motion compensation block;
Whether the motion vector search means has completed a motion vector search for a motion compensation block located in the vicinity of the processing target motion compensation block, which is necessary for generating a predicted motion vector for the processing target motion compensation block. Search completion determination means for determining whether or not,
As a result of the determination by the search completion determination means, when the motion vector search of the motion compensation block is completed, at least a predicted motion vector for the motion compensation block to be processed is used as an element for determining a motion vector. If motion vector search is selected and motion vector search of the motion compensation block is not completed, the motion compensation of the processing target in the coding block including the motion compensation block of the processing target A moving picture coding apparatus comprising: selection means for performing a motion vector search of the motion compensation block using a predicted motion vector for a motion compensation block different from the block.
前記選択手段は、前記探索完了判断手段の判断の結果、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックの予測動きベクトルとして、前記大域動きベクトル探索手段が探索した、前記処理対象の動き補償ブロックが含まれる範囲の大域動きベクトルを用いて前記動き補償ブロックの動きベクトル探索を行うように選択することを特徴とする請求項1に記載の動画像符号化装置。 A global motion vector search means for searching for a motion vector of a block larger than the encoded block or the entire screen,
As a result of the determination by the search completion determination unit, the selection unit is configured to detect a motion compensation block located in the vicinity of the processing target motion compensation block, which is necessary for generating a predicted motion vector for the processing target motion compensation block. When the motion vector search is not completed, the global motion vector in the range including the processing target motion compensation block searched by the global motion vector search means as the predicted motion vector of the processing target motion compensation block The moving picture coding apparatus according to claim 1, wherein a motion vector search for the motion compensation block is selected by using the motion compensation block.
前記選択手段は、前記探索完了判断手段の判断の結果、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックの予測動きベクトルとして、前記動きベクトル記憶手段に記憶されている既に符号化されたフレームにおける、前記処理対象の動き補償ブロックと同じ空間位置の動き補償ブロックの動きベクトルを用いて前記動き補償ブロックの動きベクトル探索を行うように選択することを特徴とする請求項1に記載の動画像符号化装置。 Motion vector storage means capable of holding motion vector information searched by the motion vector search means for at least one frame period;
As a result of the determination by the search completion determination unit, the selection unit is configured to detect a motion compensation block located in the vicinity of the processing target motion compensation block, which is necessary for generating a predicted motion vector for the processing target motion compensation block. When the motion vector search is not completed, the motion compensation block to be processed in the already encoded frame stored in the motion vector storage means as the predicted motion vector of the motion compensation block to be processed 2. The moving picture coding apparatus according to claim 1, wherein a motion vector search of the motion compensation block is selected using a motion vector of a motion compensation block at the same spatial position as in the above.
前記選択手段は、前記探索完了判断手段の判断の結果、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索が完了していない場合には、前記動きベクトル探索が完了していない動き補償ブロックの動きベクトルとして、探索途中における暫定動きベクトルを用いて、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成して、前記動き補償ブロックの動きベクトル探索を行うことを特徴とする請求項1に記載の動画像符号化装置。 The motion vector search means has a function of performing motion vector search of a plurality of motion compensation blocks included in the encoded block by parallel processing,
As a result of the determination by the search completion determination unit, the selection unit is configured to detect a motion compensation block located in the vicinity of the processing target motion compensation block, which is necessary for generating a predicted motion vector for the processing target motion compensation block. When the motion vector search is not completed, a predicted motion vector for the motion compensation block to be processed is used as a motion vector of the motion compensation block for which the motion vector search is not completed using a provisional motion vector in the middle of the search. The motion picture encoding apparatus according to claim 1, wherein a motion vector search of the motion compensation block is performed.
前記動き補償ブロックの動きベクトルを探索する動きベクトル探索工程と、
前記動きベクトル探索工程において、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索を完了しているか否かを判断する探索完了判断工程と、
前記探索完了判断工程における判断の結果、前記動き補償ブロックの動きベクトル探索が完了している場合には、動きベクトルを決定する要素として、少なくとも前記処理対象の動き補償ブロックに対する予測動きベクトルを用いて動きベクトルの探索を行うように選択し、前記動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックを含む、前記符号化ブロック内の前記処理対象の動き補償ブロックとは異なる動き補償ブロックに対する予測動きベクトルを用いて、前記動き補償ブロックの動きベクトル探索を行うように選択する選択工程とを備えることを特徴とする動画像符号化方法。 The screen is divided into coding blocks that are coding units, the coding block is divided into motion compensation blocks that are motion compensation units, and motion vector information of the motion compensation block is stored in the vicinity of the motion compensation block to be processed. A video encoding method for encoding using difference information with a predicted motion vector generated using motion vector information of an encoded motion compensation block located at
A motion vector search step of searching for a motion vector of the motion compensation block;
Whether the motion vector search of a motion compensation block located in the vicinity of the motion compensation block to be processed, which is necessary for generating a predicted motion vector for the motion compensation block to be processed, has been completed in the motion vector search step A search completion determination step of determining whether or not,
When the motion vector search of the motion compensation block is completed as a result of the determination in the search completion determination step, at least a predicted motion vector for the motion compensation block to be processed is used as an element for determining a motion vector. If motion vector search is selected and motion vector search of the motion compensation block is not completed, the motion compensation of the processing target in the coding block including the motion compensation block of the processing target And a selection step of selecting to perform a motion vector search of the motion compensation block using a predicted motion vector for a motion compensation block different from the block.
前記選択工程においては、前記探索完了判断工程における判断の結果、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックの予測動きベクトルとして、前記大域動きベクトル探索工程において探索した、前記処理対象の動き補償ブロックが含まれる範囲の大域動きベクトルを用いて前記動き補償ブロックの動きベクトル探索を行うように選択することを特徴とする請求項13に記載の動画像符号化方法。 A global motion vector search step for searching for a motion vector of a block larger than the encoded block or the entire screen,
In the selection step, as a result of the determination in the search completion determination step, a motion compensation block located in the vicinity of the processing target motion compensation block necessary for generating a predicted motion vector for the processing target motion compensation block If the motion vector search of the target motion compensation block is not completed, the global motion in the range including the target motion compensation block searched in the global motion vector search step is used as the predicted motion vector of the target motion compensation block. 14. The moving picture encoding method according to claim 13, wherein a selection is made to perform a motion vector search of the motion compensation block using a vector.
前記選択工程においては、前記探索完了判断工程における判断の結果、処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックの予測動きベクトルとして、前記動きベクトル記憶手段に記憶されている既に符号化されたフレームにおける、前記処理対象の動き補償ブロックと同じ空間位置の動き補償ブロックの動きベクトルを用いて前記動き補償ブロックの動きベクトル探索を行うように選択することを特徴とする請求項13に記載の動画像符号化方法。 Motion vector storage means capable of holding the motion vector information searched in the motion vector search step for at least one frame period;
In the selection step, as a result of the determination in the search completion determination step, a motion compensation block located in the vicinity of the processing target motion compensation block necessary for generating a predicted motion vector for the processing target motion compensation block is selected. When the motion vector search is not completed, the motion compensation block to be processed in the already encoded frame stored in the motion vector storage means as the predicted motion vector of the motion compensation block to be processed 14. The moving picture coding method according to claim 13, wherein a motion vector search for the motion compensation block is selected using a motion vector of a motion compensation block at the same spatial position as the motion compensation block.
前記動き補償ブロックの動きベクトルを探索する動きベクトル探索工程と、
前記動きベクトル探索工程において、前記処理対象の動き補償ブロックに対する予測動きベクトルを生成するために必要な、前記処理対象の動き補償ブロックの近傍に位置する動き補償ブロックの動きベクトル探索を完了しているか否かを判断する探索完了判断工程と、
前記探索完了判断工程における判断の結果、前記動き補償ブロックの動きベクトル探索が完了している場合には、動きベクトルを決定する要素として、少なくとも前記処理対象の動き補償ブロックに対する予測動きベクトルを用いて動きベクトルの探索を行うように選択し、前記動き補償ブロックの動きベクトル探索が完了していない場合には、前記処理対象の動き補償ブロックを含む、前記符号化ブロック内の前記処理対象の動き補償ブロックとは異なる動き補償ブロックに対する予測動きベクトルを用いて、前記動き補償ブロックの動きベクトル探索を行うように選択する選択工程とをコンピュータに実行させることを特徴とするプログラム。 The screen is divided into coding blocks that are coding units, the coding block is divided into motion compensation blocks that are motion compensation units, and motion vector information of the motion compensation block is stored in the motion compensation block to be processed. A program for causing a computer to execute a process of encoding using difference information with a predicted motion vector generated using motion vector information of an encoded motion compensation block located in the vicinity,
A motion vector search step of searching for a motion vector of the motion compensation block;
Whether the motion vector search of a motion compensation block located in the vicinity of the motion compensation block to be processed, which is necessary for generating a predicted motion vector for the motion compensation block to be processed, has been completed in the motion vector search step A search completion determination step of determining whether or not,
When the motion vector search of the motion compensation block is completed as a result of the determination in the search completion determination step, at least a predicted motion vector for the motion compensation block to be processed is used as an element for determining a motion vector. If motion vector search is selected and motion vector search of the motion compensation block is not completed, the motion compensation of the processing target in the coding block including the motion compensation block of the processing target A program that causes a computer to execute a selection step of selecting a motion vector search for a motion compensation block using a predicted motion vector for a motion compensation block different from the block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006341352A JP4898415B2 (en) | 2006-12-19 | 2006-12-19 | Moving picture coding apparatus and moving picture coding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006341352A JP4898415B2 (en) | 2006-12-19 | 2006-12-19 | Moving picture coding apparatus and moving picture coding method |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008154072A true JP2008154072A (en) | 2008-07-03 |
JP2008154072A5 JP2008154072A5 (en) | 2010-02-04 |
JP4898415B2 JP4898415B2 (en) | 2012-03-14 |
Family
ID=39655763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006341352A Active JP4898415B2 (en) | 2006-12-19 | 2006-12-19 | Moving picture coding apparatus and moving picture coding method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4898415B2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013065524A1 (en) * | 2011-11-01 | 2013-05-10 | 株式会社日立国際電気 | Image encoding device |
WO2014054896A1 (en) * | 2012-10-07 | 2014-04-10 | 엘지전자 주식회사 | Method and device for processing video signal |
US8699575B2 (en) | 2010-11-08 | 2014-04-15 | Canon Kabushiki Kaisha | Motion vector generation apparatus, motion vector generation method, and non-transitory computer-readable storage medium |
US9113170B2 (en) | 2010-04-12 | 2015-08-18 | Canon Kabushiki Kaisha | Motion vector decision apparatus, motion vector decision method and computer readable storage medium |
CN107257476A (en) * | 2011-09-09 | 2017-10-17 | Lg 电子株式会社 | Inter-frame prediction method and its device |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004072712A (en) * | 2002-04-23 | 2004-03-04 | Matsushita Electric Ind Co Ltd | Motion vector encoding method and motion vector decoding method |
JP2005142606A (en) * | 2003-11-04 | 2005-06-02 | Sony Corp | Data processing apparatus, method thereof, and coding apparatus |
JP2005244503A (en) * | 2004-02-25 | 2005-09-08 | Sony Corp | Apparatus and method for coding image information |
JP2005535228A (en) * | 2002-08-06 | 2005-11-17 | モトローラ・インコーポレイテッド | Method and apparatus for performing high quality fast predictive motion search |
JP2006050294A (en) * | 2004-08-05 | 2006-02-16 | Matsushita Electric Ind Co Ltd | Device and method for motion vector detection |
JP2006074474A (en) * | 2004-09-02 | 2006-03-16 | Toshiba Corp | Moving image encoder, encoding method, and encoding program |
JP2009510845A (en) * | 2005-09-22 | 2009-03-12 | クゥアルコム・インコーポレイテッド | Multidimensional neighborhood block prediction for video encoding |
-
2006
- 2006-12-19 JP JP2006341352A patent/JP4898415B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004072712A (en) * | 2002-04-23 | 2004-03-04 | Matsushita Electric Ind Co Ltd | Motion vector encoding method and motion vector decoding method |
JP2005535228A (en) * | 2002-08-06 | 2005-11-17 | モトローラ・インコーポレイテッド | Method and apparatus for performing high quality fast predictive motion search |
JP2005142606A (en) * | 2003-11-04 | 2005-06-02 | Sony Corp | Data processing apparatus, method thereof, and coding apparatus |
JP2005244503A (en) * | 2004-02-25 | 2005-09-08 | Sony Corp | Apparatus and method for coding image information |
JP2006050294A (en) * | 2004-08-05 | 2006-02-16 | Matsushita Electric Ind Co Ltd | Device and method for motion vector detection |
JP2006074474A (en) * | 2004-09-02 | 2006-03-16 | Toshiba Corp | Moving image encoder, encoding method, and encoding program |
JP2009510845A (en) * | 2005-09-22 | 2009-03-12 | クゥアルコム・インコーポレイテッド | Multidimensional neighborhood block prediction for video encoding |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9113170B2 (en) | 2010-04-12 | 2015-08-18 | Canon Kabushiki Kaisha | Motion vector decision apparatus, motion vector decision method and computer readable storage medium |
US8699575B2 (en) | 2010-11-08 | 2014-04-15 | Canon Kabushiki Kaisha | Motion vector generation apparatus, motion vector generation method, and non-transitory computer-readable storage medium |
CN107257476A (en) * | 2011-09-09 | 2017-10-17 | Lg 电子株式会社 | Inter-frame prediction method and its device |
US10652551B2 (en) | 2011-09-09 | 2020-05-12 | Lg Electronics Inc. | Inter prediction method and apparatus therefor |
CN107257476B (en) * | 2011-09-09 | 2020-11-06 | Lg 电子株式会社 | Video decoding method, video encoding method, and computer-readable storage medium |
US11082704B2 (en) | 2011-09-09 | 2021-08-03 | Lg Electronics Inc. | Inter prediction method and apparatus therefor |
US11570446B2 (en) | 2011-09-09 | 2023-01-31 | Lg Electronics Inc. | Inter prediction method and apparatus therefor |
US11949883B2 (en) | 2011-09-09 | 2024-04-02 | Lg Electronics Inc. | Inter prediction method and apparatus therefor |
JP2013098789A (en) * | 2011-11-01 | 2013-05-20 | Hitachi Kokusai Electric Inc | Image encoder |
US9521417B2 (en) | 2011-11-01 | 2016-12-13 | Hitachi Kokusai Electric, Inc. | Video encoding device using predicted motion vector for blocks of different size |
WO2013065524A1 (en) * | 2011-11-01 | 2013-05-10 | 株式会社日立国際電気 | Image encoding device |
WO2014054896A1 (en) * | 2012-10-07 | 2014-04-10 | 엘지전자 주식회사 | Method and device for processing video signal |
US10171836B2 (en) | 2012-10-07 | 2019-01-01 | Lg Electronics Inc. | Method and device for processing video signal |
Also Published As
Publication number | Publication date |
---|---|
JP4898415B2 (en) | 2012-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9351014B2 (en) | Moving image encoding and decoding system | |
US8761254B2 (en) | Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program | |
JP4495580B2 (en) | In-plane prediction apparatus and in-plane prediction method | |
JP4846719B2 (en) | Panorama motion estimation and compensation | |
US8488678B2 (en) | Moving image encoding apparatus and moving image encoding method | |
US8229233B2 (en) | Method and apparatus for estimating and compensating spatiotemporal motion of image | |
JP4606311B2 (en) | Image coding apparatus and image coding method | |
JP2008510358A (en) | Motion estimation and compensation for panorama video | |
JP4514203B2 (en) | Motion vector detection apparatus and method | |
JP4898415B2 (en) | Moving picture coding apparatus and moving picture coding method | |
KR20160030147A (en) | Method and apparatus for encoding of 2demensional video using depth image | |
JP2007325119A (en) | Image processing apparatus and method | |
JP2006005659A (en) | Device and method for image encoding | |
JP4677351B2 (en) | Motion compensator, motion compensation processing method, computer program, and storage medium | |
JP2007174202A (en) | Motion vector detecting device and method therefor | |
JP2009111647A (en) | Apparatus for detecting motion vector and method for detecting motion vector | |
JP4971817B2 (en) | Image encoding device | |
JP2008154085A (en) | Dynamic image encoding device and dynamic image encoding method | |
JP4590337B2 (en) | Moving picture coding apparatus and moving picture coding method | |
JP2009296363A (en) | Motion vector search apparatus, and motion vector search method | |
JP5247210B2 (en) | Moving picture coding apparatus and moving picture coding method | |
JP5094750B2 (en) | Moving picture coding apparatus and moving picture coding method | |
JP2009049513A (en) | Moving picture encoding device and moving picture encoding method | |
JP2008124765A (en) | Video encoder and its control method, and computer program | |
JP2009021786A (en) | Image encoding device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091214 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091214 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110125 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111220 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111226 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4898415 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150106 Year of fee payment: 3 |