JP4369318B2 - ENCODING MODE DETERMINING DEVICE, IMAGE ENCODING DEVICE, ENCODING MODE DETERMINING METHOD, AND ENCODING MODE DETERMINING PROGRAM - Google Patents
ENCODING MODE DETERMINING DEVICE, IMAGE ENCODING DEVICE, ENCODING MODE DETERMINING METHOD, AND ENCODING MODE DETERMINING PROGRAM Download PDFInfo
- Publication number
- JP4369318B2 JP4369318B2 JP2004213786A JP2004213786A JP4369318B2 JP 4369318 B2 JP4369318 B2 JP 4369318B2 JP 2004213786 A JP2004213786 A JP 2004213786A JP 2004213786 A JP2004213786 A JP 2004213786A JP 4369318 B2 JP4369318 B2 JP 4369318B2
- Authority
- JP
- Japan
- Prior art keywords
- motion estimation
- encoding
- prediction
- coding
- cost
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本発明は、符号化モード決定装置、画像符号化装置、符号化モード決定方法、および符号化モード決定プログラムに関する。 The present invention relates to an encoding mode determination device, an image encoding device, an encoding mode determination method, and an encoding mode determination program.
マルチメディア・インターネット時代のキーテクノロジーとして、MPEG−4が注目を集めている。MPEG−4では、移動体通信、インターネットなどの応用領域に対応するため、MPEG−1/2に比べ、符号化効率改善などに特徴を有している(例えば、非特許文献1参照。)。
MPEG-4 is attracting attention as a key technology in the multimedia Internet era. MPEG-4 is characterized by improved coding efficiency and the like compared to MPEG-1 / 2 in order to deal with application areas such as mobile communication and the Internet (see Non-Patent
MPEG−4では、新しい高能率の符号化方式として、AVCと呼ばれる方式が策定されている。AVCはISO MPEG−4 Part10 Advanced Video CodingまたはITU−T H.264と呼ばれている符号化方式である。
この方式は、動き推定やDCTを4×4ピクセルの画像ブロックでも可能とし、動き推定のための画像を複数のピクチャから選択するなどして符号化効率の向上を図っている。AVCは、これまでの符号化方式に利用されていた技術を取り入れた高機能な符号化方式となっているため、応用領域に適応した最適な利用が課題となっている。
In MPEG-4, a method called AVC is formulated as a new high-efficiency encoding method. AVC is ISO MPEG-4 Part 10 Advanced Video Coding or ITU-T H.264. It is an encoding method called H.264.
This method enables motion estimation and DCT even with an image block of 4 × 4 pixels, and attempts to improve coding efficiency by selecting an image for motion estimation from a plurality of pictures. Since AVC is a high-performance encoding method that incorporates techniques used in conventional encoding methods, optimal use adapted to application areas has become a problem.
例えば、AVC策定以前のMPEG−4では、マクロブロック単位の符号化モードの候補(パーティションサイズ、予測方向、ダイレクトモードなど)の組み合わせ数が比較的少なく、符号化の際にこれらの候補を網羅して最適な符号化モードの探索を行ってもエンコーダでの処理量の負担は大きくなかった。 For example, in MPEG-4 before AVC development, the number of combinations of encoding mode candidates (partition size, prediction direction, direct mode, etc.) in units of macroblocks is relatively small, and these candidates are covered during encoding. Even when searching for the optimum coding mode, the processing load on the encoder was not large.
一方、AVCでは、図25に示す様に、16×16ピクセル(以下、16×16という)のマクロブロックを16×16,16×8,8×16,8×8のマクロブロックパーティション(以下、小ブロックという)に分割可能である。また8×8ピクセルの小ブロックを8×8,8×4,4×8,4×4のサブマクロブロックパーティションに分割可能である。 On the other hand, in AVC, as shown in FIG. 25, a 16 × 16 pixel (hereinafter referred to as 16 × 16) macroblock is converted into a 16 × 16, 16 × 8, 8 × 16, and 8 × 8 macroblock partition (hereinafter referred to as “16 × 16”). Can be divided into small blocks). A small block of 8 × 8 pixels can be divided into 8 × 8, 8 × 4, 4 × 8, and 4 × 4 sub-macroblock partitions.
以下、16×16に分割された1つの小ブロックを小ブロックSb1と、16×8に分割された2つの小ブロックを小ブロックSb2,Sb3と、8×16に分割された2つの小ブロックを小ブロックSb4,Sb5と、8×8に分割された4つの小ブロックを小ブロックSb6〜Sb9とする。 Hereinafter, one small block divided into 16 × 16 is divided into a small block Sb1, two small blocks divided into 16 × 8 into small blocks Sb2 and Sb3, and two small blocks divided into 8 × 16 into two small blocks. The small blocks Sb4 and Sb5 and the four small blocks divided into 8 × 8 are referred to as small blocks Sb6 to Sb9.
また、AVCでは、図26に示す様に、それぞれの小ブロックSb1〜Sb9について、参照ピクチャを参照して動き推定を行うことが可能である。これは、それぞれのサブマクロブロックパーティションについても同様である。さらに、AVCでは、図27に示す様に、符号化ピクチャに対して時間的に前の参照ピクチャを参照する前方向予測(図27(a)参照)、符号化ピクチャに対して時間的に後の参照ピクチャを参照する後方向予測(図27(b)参照)、あるいは符号化ピクチャに対して双方向の参照ピクチャを参照する双方向予測(図27(c)参照)などのインター予測を行うことが可能である。 In AVC, as shown in FIG. 26, motion estimation can be performed for each of the small blocks Sb1 to Sb9 with reference to a reference picture. The same applies to each sub macroblock partition. Further, in AVC, as shown in FIG. 27, forward prediction (refer to FIG. 27A) referring to a reference picture temporally preceding the coded picture, and temporally subsequent to the coded picture. Inter prediction such as backward prediction referring to the reference picture (see FIG. 27B) or bidirectional prediction referring to the bidirectional reference picture with respect to the encoded picture (see FIG. 27C) is performed. It is possible.
〈従来のエンコーダによる処理〉
これらの符号化モードを網羅する従来のエンコーダの処理を図28および図29を用いて説明する。
従来のエンコーダでは、画像ブロックを複数の分割方法候補で分割した小ブロックの全てについて動き推定を行う。さらに、小ブロック毎の参照ピクチャの選択および画像ブロックの分割方法の選択を行い、選択された分割方法を用いた符号化を行う。
<Processing by conventional encoder>
The processing of the conventional encoder covering these coding modes will be described with reference to FIGS.
In a conventional encoder, motion estimation is performed for all small blocks obtained by dividing an image block by a plurality of division method candidates. Further, a reference picture for each small block and an image block dividing method are selected, and encoding using the selected dividing method is performed.
ここで、小ブロック毎の参照ピクチャの選択および画像ブロックの分割方法の選択に際して、符号化コストという量が用いられる。符号化コストとは、画質劣化度(小ブロックと予測画像との絶対差分和)と動き情報(動きベクトルあるいは差分動きベクトルなど)の符号量との和で表される量であり、画像ブロック単位の符号化コストが小さいほど、画像ブロックの符号化効率が良いことを示している。なお、絶対差分和以外にも、差分の二乗和や、差分のアダマール変換やDCT変換後の誤差の絶対値和などが用いられることがある。 Here, an amount of coding cost is used when selecting a reference picture for each small block and selecting an image block division method. The coding cost is an amount represented by the sum of the image quality degradation degree (absolute difference sum between a small block and a predicted image) and the code amount of motion information (such as a motion vector or a difference motion vector), and is an image block unit. The smaller the encoding cost is, the better the encoding efficiency of the image block is. In addition to the sum of absolute differences, a sum of squares of differences, an absolute value sum of errors after difference Hadamard transform, or DCT transform may be used.
図28は、小ブロックのそれぞれに対する動き推定の処理フローを示すブロック図である。16×16の画像ブロックを分割したM×N((M,N)=(16,16),(16,8),(8,16),(8,8))の小ブロックのそれぞれに対して、図28の処理が行われる。図28に示す動き推定の処理フローは、小ブロックについてのフルペル予測ステップS300と、サブペル予測ステップS301と、参照方向選択ステップS302とを備えている。 FIG. 28 is a block diagram showing a process flow of motion estimation for each of the small blocks. For each of the small blocks of M × N ((M, N) = (16,16), (16,8), (8,16), (8,8)) obtained by dividing the 16 × 16 image block) Thus, the process of FIG. 28 is performed. The motion estimation processing flow shown in FIG. 28 includes a full-pel prediction step S300, a sub-pel prediction step S301, and a reference direction selection step S302 for a small block.
フルペル予測ステップS300は、M×Nの小ブロックに対して、前方向予測および後方向予測による整数画素精度の動き推定を行う(ステップS305,S306)。具体的には、整数画素精度で、決められた探索範囲内(例えば±32)の動き推定を行う。すなわち、探索範囲内で、符号化コストを最小とする動きベクトル(以下、MVという)0fおよびMV0bを検出する。 The full-pel prediction step S300 performs motion estimation with integer pixel accuracy by forward prediction and backward prediction for M × N small blocks (steps S305 and S306). Specifically, motion estimation within a determined search range (for example, ± 32) is performed with integer pixel accuracy. That is, motion vectors (hereinafter referred to as MV) 0f and MV0b that minimize the coding cost are detected within the search range.
サブペル予測ステップS301は、M×Nの小ブロックに対して、前方向予測、後方向予測および双方向予測による非整数画素精度の動き推定を行う(ステップS307〜S309)。AVCのインター予測では、1/2画素精度や1/4画素精度といった非整数画素精度で動き推定を行うことができる。そこで、非整数画素精度の参照ピクチャをフィルタを用いて生成し、生成された参照ピクチャに対して動き推定が行われる。 The sub-pel prediction step S301 performs motion estimation with non-integer pixel accuracy by forward prediction, backward prediction, and bidirectional prediction for M × N small blocks (steps S307 to S309). In AVC inter prediction, motion estimation can be performed with non-integer pixel accuracy such as 1/2 pixel accuracy or 1/4 pixel accuracy. Therefore, a reference picture with non-integer pixel precision is generated using a filter, and motion estimation is performed on the generated reference picture.
前方向予測ステップS307では、2段階の動きベクトル探索により、MV2fが検出される。具体的には、フルペル予測ステップS300で検出されたMV0fを中心として、周囲8近傍の1/2画素(または1/4画素)と中心のMV0fを含めた9点の中から、符号化コストを最小とするMV1f(図示せず)が求められる。さらに、MV1fを中心として、周囲8近傍の1/2画素(または1/4画素)と中心のMV1fを含めた9点の中から、符号化コストを最小とするMV2fが求められる。なお、フルペル予測では整数画素精度の動き推定を行うと書いたが、間引き画素、例えば、水平に1画素間引く、などした場合でも、本発明のモード選択の方法が適用可能である。 In the forward prediction step S307, MV2f is detected by a two-step motion vector search. Specifically, the encoding cost is selected from 9 points including ½ pixel (or ¼ pixel) in the vicinity of 8 surroundings and MV0f in the center with MV0f detected in the full-pel prediction step S300 as the center. The minimum MV1f (not shown) is determined. Further, MV2f that minimizes the coding cost is obtained from 9 points including ½ pixel (or ¼ pixel) in the vicinity of the surrounding 8 and MV1f at the center with MV1f as the center. In the full-pel prediction, it is written that motion estimation with integer pixel accuracy is performed, but the mode selection method of the present invention can be applied even when thinned pixels, for example, one pixel is thinned horizontally.
後方向予測ステップS308でも、前方向予測ステップS307と同様に、フルペル予測ステップS300で検出されたMV0bから、MV2bが検出される。
双方向予測ステップS309は、2枚の参照ピクチャを参照するため、処理量が多い。そこで、前方向予測ステップS307および後方向予測ステップS308で検出されたMV2fおよびMV2bを利用した予測が行われる。具体的には、MV2fおよびMV2bが示す参照ピクチャ上の参照領域を平均したものを予測画像として用いる。
Also in the backward prediction step S308, MV2b is detected from MV0b detected in the full-pel prediction step S300, as in the forward prediction step S307.
The bidirectional prediction step S309 has a large amount of processing because it refers to two reference pictures. Therefore, prediction using MV2f and MV2b detected in forward prediction step S307 and backward prediction step S308 is performed. Specifically, an average of the reference areas on the reference picture indicated by MV2f and MV2b is used as the predicted image.
また、前方向予測ステップS307、後方向予測ステップS308および双方向予測ステップS309では、それぞれの符号化コストC0,C1およびC2が導出される。
参照方向選択ステップS302は、符号化コストC0〜C2のうち最小の符号化コストを有する方向を小ブロックの参照方向として選択するとともに、最小の符号化コストを出力する。
Also, in the forward prediction step S307, the backward prediction step S308, and the bidirectional prediction step S309, the respective encoding costs C0, C1, and C2 are derived.
The reference direction selection step S302 selects the direction having the minimum encoding cost among the encoding costs C0 to C2 as the reference direction of the small block and outputs the minimum encoding cost.
図29は、画像ブロックについての動き推定の処理フローを示すブロック図である。図29の画像ブロックについての動き推定の処理フローは、16×16の画像ブロックを4種類の分割方法候補により分割したM×N((M,N)=(16,16),(16,8),(8,16),(8,8))の小ブロックのそれぞれに対する動き推定を行う動き推定ステップS315と、小ブロックごとの動き推定の結果に基づいて、画像ブロックの符号化コストを分割方法候補毎に導出する符号化コスト換算ステップS316と、分割方法候補毎に導出された画像ブロックの符号化コストから、最良の分割方法を選択する分割方法選択ステップS317とを備えている。 FIG. 29 is a block diagram illustrating a process flow of motion estimation for an image block. The motion estimation processing flow for the image block of FIG. 29 is obtained by dividing M × N ((M, N) = (16, 16), (16, 8) by dividing a 16 × 16 image block by four types of division method candidates. ), (8, 16), (8, 8)) motion estimation step S315 for performing motion estimation for each of the small blocks, and the coding cost of the image block is divided based on the result of motion estimation for each small block. An encoding cost conversion step S316 derived for each method candidate, and a division method selection step S317 for selecting the best division method from the image block coding costs derived for each division method candidate are provided.
動き推定ステップS315は、図28を用いて説明した小ブロックに対する動き推定の処理フローに対応する小ブロック動き推定ステップS320〜S323を有している。ここで、図29では、小ブロック動き推定ステップS321〜S323の処理ブロックは複数の矢印により接続されている。例えば、16×8の小ブロック動き推定ステップS321では、それぞれの処理ブロックは2本の矢印により接続されている。これは、それぞれの処理が、16×16の画像ブロックを16×8に分割する2つの小ブロックSb2,Sb3に対して行われることを示している。同様に、8×16の小ブロック動き推定ステップS322においては、それぞれの処理ブロックは、2本の矢印により接続されており、8×8の小ブロック動き推定ステップS323においては、それぞれの処理ブロックは、4本の矢印により接続されている。それぞれの処理ブロックの処理の内容は、図28で説明したのと同様であるため、ここでは説明を省略する。 The motion estimation step S315 includes small block motion estimation steps S320 to S323 corresponding to the process flow of motion estimation for the small block described with reference to FIG. Here, in FIG. 29, the processing blocks of the small block motion estimation steps S321 to S323 are connected by a plurality of arrows. For example, in the 16 × 8 small block motion estimation step S321, each processing block is connected by two arrows. This indicates that each process is performed on two small blocks Sb2 and Sb3 that divide a 16 × 16 image block into 16 × 8. Similarly, in the 8 × 16 small block motion estimation step S322, each processing block is connected by two arrows, and in the 8 × 8 small block motion estimation step S323, each processing block is Connected by four arrows. Since the contents of the processing of each processing block are the same as those described with reference to FIG. 28, description thereof is omitted here.
符号化コスト換算ステップS316は、MBコスト換算ステップS325〜S328を有している。MBコスト換算ステップS325〜S328は、小ブロック動き推定ステップS320〜323により出力された小ブロック毎の符号化コストを合計し、画像ブロックの符号化コストを分割方法候補毎に導出する。 The encoding cost conversion step S316 includes MB cost conversion steps S325 to S328. In MB cost conversion steps S325 to S328, the encoding costs for the small blocks output in the small block motion estimation steps S320 to 323 are totaled, and the encoding cost of the image block is derived for each division method candidate.
分割方法選択ステップS317は、MBコスト換算ステップS325〜S328が導出した分割方法候補毎の符号化コストのうち、最小の符号化コストを示す分割方法候補を画像ブロックに適用する分割方法として選択する。
また、AVCでは、図30に示す様に、2つの画像ブロック71,72からなる画像ブロックペア73という概念を導入しており、画像ブロックペア73を単位として、フィールド予測およびフレーム予測を適応的に切り換えることが可能である。例えば、フィールド予測の場合、フィールド構造ブロック75,76のそれぞれに対して動き推定が行われる。フレーム予測の場合、フレーム構造ブロック77,78のそれぞれについて動き推定が行われる。
In the division method selection step S317, among the encoding costs for each of the division method candidates derived by the MB cost conversion steps S325 to S328, the division method candidate indicating the minimum encoding cost is selected as the division method to be applied to the image block.
In addition, as shown in FIG. 30, AVC introduces the concept of an
また、画像ブロックペア73の符号化モードは、符号化ピクチャ構造の2種類(フィールド・フレーム)および符号化予測方式(イントラ・インター予測)の2種類で、合計4種類ある。従来は、これらの全ての組み合わせを考慮していたため、処理量多いと言う問題があった。特にイントラ予測の処理負担が大きかった。
In addition, the coding mode of the
ここで、従来の符号化モード決定について説明する。AVCより前のCodecではMBpair(大ブロック)という概念は無く、MB(中ブロック)の種類として、フィールド/フレームがあった。そして、イントラ/インターとフィールド/フレームの4通りを網羅するのが一般的だった。図31に示すように、動き推定ステップS81と、ピクチャ構造及び符号化予測方式決定ステップS82とから構成されている。推定ステップS81は、第1〜第6推定ステップS811〜S816とを有している。第1推定ステップS811は、フレーム構造ブロックに対してインター予測を行う。第2推定ステップS812は、フレーム構造ブロックに対してイントラ予測を行う。第3推定ステップS813は、フィールド構造トップMBに対してインター予測を行う。第4推定ステップS814は、フィールド構造のボトムフィールドに対してインター予測を行う。第3推定ステップS813によって導出された符号化コストと、第4推定ステップS814によって導出された符号化コストは合計されて、フィールド構造ブロックに対してインター予測して導出された符号化コストが得られる。第5推定ステップS815は、フィールド構造のトップフィールドに対してイントラ予測を行う。第6推定ステップS816は、フィールド構造のボトムフィールドに対してイントラ予測を行う。第5推定ステップS815によって導出された符号化コストと、第6推定ステップS816によって導出された符号化コストは合計されて、フィールド構造ブロックに対してイントラ予測して導出された符号化コストが得られる。 Here, conventional coding mode determination will be described. In Codec before AVC, there is no concept of MBpair (large block), and there is field / frame as a type of MB (medium block). And it was common to cover four types of intra / inter and field / frame. As shown in FIG. 31, it consists of a motion estimation step S81 and a picture structure and coding prediction method determination step S82. The estimation step S81 includes first to sixth estimation steps S811 to S816. The first estimation step S811 performs inter prediction on the frame structure block. In the second estimation step S812, intra prediction is performed on the frame structure block. In the third estimation step S813, inter prediction is performed on the field structure top MB. In the fourth estimation step S814, inter prediction is performed on the bottom field of the field structure. The coding cost derived by the third estimation step S813 and the coding cost derived by the fourth estimation step S814 are added together to obtain the coding cost derived by inter prediction on the field structure block. . In the fifth estimation step S815, intra prediction is performed on the top field of the field structure. In the sixth estimation step S816, intra prediction is performed on the bottom field of the field structure. The coding cost derived by the fifth estimation step S815 and the coding cost derived by the sixth estimation step S816 are added together to obtain the coding cost derived by intra prediction on the field structure block. .
ピクチャ構造及び符号化予測方式決定ステップS82は、前記4種類の符号化コストのうち、最小となるものを選択する。
以上までが従来技術であるが、そのような考えを単純にAVCに適用すると考えると、図32のような処理が想定される。図32では、処理全体は、動き推定ステップS81’と、符号化予測方式決定ステップS83と、MBペアのピクチャ構造決定ステップS82’とから構成されている。
The picture structure and coding prediction method determination step S82 selects the smallest of the four types of coding costs.
The above is the prior art, but when such an idea is simply applied to AVC, a process as shown in FIG. 32 is assumed. In FIG. 32, the entire process includes a motion estimation step S81 ′, a coding prediction method determination step S83, and an MB pair picture structure determination step S82 ′.
動き推定ステップS81’は、第1〜第8推定ステップS811’〜S818’を備えている。第1推定ステップS811’はフレーム構造トップMB77に対してインター予測を行い、第2推定ステップS812’はフレーム構造トップMB77に対してイントラ予測を行う。第3推定ステップS813’はフレーム構造ボトムMB78に対してインター予測を行い、第4推定ステップS814’はフレーム構造ボトムMB78に対してイントラ予測を行う。第5推定ステップS815’はフィールド構造トップMB75に対してインター予測を行い、第6推定ステップS816’はフィールド構造トップMB75に対してイントラ予測を行う。第7推定ステップS817’はフィールド構造ボトムMB76に対してインター予測を行い、第8推定ステップS818’はフィールド構造ボトムMB76に対してイントラ予測を行う。 The motion estimation step S81 'includes first to eighth estimation steps S811' to S818 '. The first estimation step S811 'performs inter prediction on the frame structure top MB77, and the second estimation step S812' performs intra prediction on the frame structure top MB77. The third estimation step S813 'performs inter prediction on the frame structure bottom MB78, and the fourth estimation step S814' performs intra prediction on the frame structure bottom MB78. The fifth estimation step S815 'performs inter prediction on the field structure top MB75, and the sixth estimation step S816' performs intra prediction on the field structure top MB75. The seventh estimation step S817 'performs inter prediction on the field structure bottom MB76, and the eighth estimation step S818' performs intra prediction on the field structure bottom MB76.
符号化予測方式決定ステップS83は、第1〜第4予測方式決定ステップS831〜S834を備えている。第1予測方式決定ステップS831は、第1推定ステップS811’及び第2推定ステップS812’の符号化コストを比較して、フレーム構造トップMB77に対するイントラ/インターを選択する。第2予測方式決定ステップS832は、第3予測ステップS813’及び第4予測ステップS814’の符号化コストを比較して、フレーム構造ボトムMB78に対するイントラ/インターを選択する。イントラ/インターが選択されたフレーム構造のトップMB77とボトムMB78の符号化コストは合計され、フレーム構造ブロックペア77,78の符号化コストが得られる。第3予測方式決定ステップS833は、第5推定ステップS815’及び第6推定ステップS816’の符号化コストを比較して、フィールド構造トップMB75に対するイントラ/インターを選択する。第4予測方式決定ステップS834は、第7推定ステップS817’及び第8推定ステップS818’の符号化コストを比較して、フィールド構造ボトムMB76に対するイントラ/インターを選択する。イントラ/インターが選択されたフィールド構造のトップMB75とボトムMB76の符号化コストは合計され、フィールド構造ブロックペア75,76の符号化コストが得られる。
The encoding prediction method determination step S83 includes first to fourth prediction method determination steps S831 to S834. The first prediction method determination step S831 compares the coding costs of the first estimation step S811 'and the second estimation step S812', and selects intra / inter for the frame structure top MB77. The second prediction method determination step S832 compares the coding costs of the third prediction step S813 'and the fourth prediction step S814', and selects intra / inter for the frame structure bottom MB78. The coding costs of the
ピクチャ構造決定ステップS82’は、フレーム構造ブロックペア77,78の符号化コストとフィールド構造ブロックペア75,76の符号化コストとを比較し、画像ブロックペア73(71,72)のフィールド/フレームを決定する。
以上の処理では、イントラ予測とインター予測の両方でフィールド/フレームそれぞれのコスト計算を行うため、インター予測とイントラ予測のいずれか一方のみで圧縮率が向上する画像の場合であっても、圧縮率が最良となるように符号化ピクチャ構造と符号化予測方式を決定できる。しかし、その一方でイントラ予測の回数が多いため、処理量が膨大になる。
In the above processing, since the cost calculation for each field / frame is performed in both intra prediction and inter prediction, the compression rate is improved even in the case of an image in which the compression rate is improved by only one of inter prediction and intra prediction. Therefore, the coded picture structure and the coded prediction method can be determined so as to be the best. However, on the other hand, since the number of intra predictions is large, the processing amount becomes enormous.
以上のように、AVCでは、マクロブロック(ペア)毎に符号化モードの候補が膨大であり、全ての候補を網羅して符号化効率の高い符号化モードを探索すると、エンコーダの処理量の負担が大きくなる。
そこで、本発明では、より少ない処理量で適切な符号化モードの選択を可能とさせる符号化モード決定装置、画像符号化装置、符号化モード決定方法、および符号化モード決定プログラムを提供することを課題とする。
As described above, in AVC, there are an enormous number of encoding mode candidates for each macroblock (pair), and when searching for an encoding mode with high encoding efficiency covering all candidates, the burden of the processing amount of the encoder is reduced. Becomes larger.
Therefore, the present invention provides an encoding mode determination device, an image encoding device, an encoding mode determination method, and an encoding mode determination program that enable selection of an appropriate encoding mode with a smaller amount of processing. Let it be an issue.
請求項1に記載の符号化モード決定装置では、画像ブロックの符号化モードを複数候補の中から少なくとも1つに決定する装置であって、簡易動き推定部と、符号化モード選択部と、複雑動き推定部と、符号化モード決定部とを備えている。簡易動き推定部は、各符号化モードによってそれぞれ得られる画像ブロックのパーティションである小ブロックに対する簡易な動き推定に基づいて、各符号化モードの符号化コストを導出する。符号化モード選択部は、簡易動き推定部によって導出された符号化コストに基づいて、複数の符号化モードから一部の符号化モードを選択する。複雑動き推定部は、一部の符号化モードの少なくとも一部の符号化モードによって得られる小ブロックに対する複雑な動き推定に基づいて、各符号化モードの符号化コストを導出する。符号化モード決定部は、複雑動き推定部によって導出された符号化コストに基づいて、画像ブロックの符号化モードを決定する。
The encoding mode determining apparatus according to
ここで、複雑な動き推定とは、簡易な動き推定よりも複雑な動き推定のことである(以下、同じ)。例えば、複雑な動き推定とは、整数画素精度の簡易な動き推定に対するより詳細な精度(例えば、1/2画素精度、1/4画素精度などといった非整数画素精度)での動き推定、非整数画素の簡易な動き推定に対するより詳細な精度での動き推定、縮小画像(画素情報の間引かれた画像)を参照する簡易な動き推定に対するより詳細な画像を参照する動き推定などである。 Here, complex motion estimation refers to motion estimation that is more complicated than simple motion estimation (the same applies hereinafter). For example, complex motion estimation is motion estimation with a more detailed accuracy (eg, non-integer pixel accuracy such as ½ pixel accuracy, ¼ pixel accuracy, etc.), non-integer than simple motion estimation with integer pixel accuracy For example, motion estimation with more detailed accuracy with respect to simple motion estimation of pixels, motion estimation with reference to a more detailed image with respect to simple motion estimation with reference to a reduced image (image with thinned pixel information), and the like.
符号化コストは、例えば、画質劣化度(小ブロックと動き推定における参照ピクチャとの絶対差分和)と動き情報(動きベクトルあるいは差分動きベクトルなど)の符号量との和で表される。符号化モードとは、例えば、小ブロックの分割方法や、小ブロックの動き推定の際のピクチャ参照方向や、小ブロックの符号化ピクチャ構造などである。 The encoding cost is represented, for example, by the sum of the image quality degradation level (absolute difference sum between the small block and the reference picture in motion estimation) and the code amount of motion information (such as a motion vector or a difference motion vector). The coding mode is, for example, a small block division method, a picture reference direction in motion estimation of a small block, a coded picture structure of a small block, or the like.
この装置では、簡易動き推定部により得られた符号化コストから符号化モード選択部が符号化モードの絞り込みを行う。さらに、絞り込んだ符号化モードの小ブロックに対して、複雑動き推定部が複雑な動き推定を行う。ここで、複雑な動き推定は、例えば、フィルタを適用する必要があるなどの理由により、簡易な動き推定に比して処理量が多いが、この装置では、符号化モードの決定に際して全ての小ブロックについて複雑な動き推定を行う必要が無い。このため、複雑な動き推定の回数を削減でき、符号化モード決定の処理量を低減することが可能となる。また、必要な小ブロックには複雑な動き推定を行うため、適切な符号化効率の符号化モードを決定することが可能となる。 In this apparatus, the encoding mode selection unit narrows down encoding modes from the encoding cost obtained by the simple motion estimation unit. Further, the complex motion estimator performs complex motion estimation on the narrow blocks of the encoded mode. Here, the complicated motion estimation has a larger processing amount than the simple motion estimation because, for example, it is necessary to apply a filter. However, in this apparatus, all small motion estimations are performed when determining the coding mode. There is no need to perform complex motion estimation for blocks. For this reason, the number of times of complicated motion estimation can be reduced, and the processing amount for determining the coding mode can be reduced. In addition, since a complicated motion estimation is performed for a necessary small block, it is possible to determine an encoding mode with appropriate encoding efficiency.
請求項2に記載の符号化モード決定装置では、請求項1において、簡易動き推定部は、各符号化モードの符号化コストを導出する際に、各符号化モードによって得られる小ブロックごとに複数のピクチャ参照方向の簡易な動き推定を行って符号化コストを算出し、次に各小ブロックごとに符号化コストが低いピクチャ参照方向を選択し、次に選択したピクチャ参照方向に関する全ての小ブロックの符号化コストを各分割方法候補ごとに合計して、各分割方法候補ごとの符号化モードの符号化コストを導出する。
In the encoding mode determination apparatus according to
この装置では、簡易動き推定部が各小ブロックごとに符号化コストが低いピクチャ参照方向を選択しているため、各分割方法候補ごとの符号化モードにおいて最も符号化コストが小さい小ブロックの組み合わせが可能となる。
請求項3に記載の符号化モード決定装置では、請求項1において、簡易動き推定部は、各符号化モードの符号化コストを導出する際に、各符号化モードによって得られる小ブロックごとに複数のピクチャ参照方向の簡易な動き推定を行って符号化コストを算出し、次に小ブロックの各ピクチャ参照方向ごとの符号化コストを画像ブロック単位に換算して、各分割候補の各ピクチャ参照方向ごとの符号化モードの符号化コストを導出する。
In this apparatus, since the simple motion estimation unit selects a picture reference direction with a low encoding cost for each small block, the combination of small blocks with the lowest encoding cost in the encoding mode for each division method candidate is selected. It becomes possible.
According to a third aspect of the present invention, there is provided a coding mode determining apparatus according to the first aspect, wherein the simple motion estimation unit includes a plurality of simple motion estimation units for each small block obtained by each coding mode when deriving the coding cost of each coding mode. The encoding cost is calculated by performing simple motion estimation in the picture reference direction of each picture, and then the coding cost for each picture reference direction of the small block is converted into image block units, and each picture reference direction of each division candidate is calculated. The encoding cost of each encoding mode is derived.
この装置では、簡易動き推定部が小ブロックのピクチャ参照方向ごとの符号化コストを画像ブロック単位に換算して符号化モードを導出するため、一つの小ブロックにおいて異なるピクチャ参照方向の符号化モードも符号化モード選択部の対象となる。
請求項4に記載の符号化モード決定装置では、請求項2又は3において、簡易動き推定部の複数のピクチャ参照方向の簡易な動き推定は、時間的に前方向のピクチャを参照する前方向予測と、時間的に後方向のピクチャを参照する後方向予測のみを含む。すなわち、この装置は双方向予測を行わない。なお、前方向予測と後方向予測は、それぞれ、同一方向における複数枚のピクチャを参照する複数予測を含む(以下、同じ)。
In this apparatus, since the simple motion estimation unit derives the encoding mode by converting the encoding cost for each picture reference direction of the small block into the image block unit, the encoding mode of different picture reference directions in one small block is also included. This is a target of the encoding mode selection unit.
The encoding mode determination apparatus according to
この装置では、簡易動き推定部は、前方向予測と後方向予測のみを行う。双方向予測を行わないため、処理量を削減でき、簡易な動き推定の処理時間を短縮できる。
請求項5に記載の符号化モード決定装置では、請求項2又は3において、簡易動き推定部の複数のピクチャ参照方向の簡易な動き推定は、時間的に前方向のピクチャを参照する前方向予測と、時間的に後方向のピクチャを参照する後方向予測と、時間的に双方向のピクチャを参照する双方向予測とを含む。
In this apparatus, the simple motion estimation unit performs only forward prediction and backward prediction. Since bidirectional prediction is not performed, the amount of processing can be reduced, and the processing time for simple motion estimation can be shortened.
The encoding mode determination apparatus according to claim 5, wherein the simple motion estimation in the plurality of picture reference directions of the simple motion estimation unit according to
この装置では、双方向予測を行うため、簡易な動き推定の精度を向上させることが可能となる。このため、より適切な符号化モードを選択することが可能となる。
請求項6に記載の符号化モード決定装置では、請求項2又は3において、簡易動き推定部の複数のピクチャ参照方向の簡易な動き推定は、時間的に前方向のピクチャを参照する前方向予測と、時間的に後方向のピクチャを参照する後方向予測とを含む。簡易動き推定部は、前方向予測と後方向予測とに基づいて、時間的に双方向のピクチャを参照する双方向予測を行った場合の符号化コストを導出する。例えば、前方向予測の符号化コストと後方向予測の符号化コストとが近い値の場合には、双方向予測の符号化コストは、それらの符号化コストの小さい方の値よりも少しだけ小さい値である、などと推定される。
Since this apparatus performs bi-directional prediction, it is possible to improve the accuracy of simple motion estimation. For this reason, it becomes possible to select a more appropriate encoding mode.
The coding mode determination apparatus according to
この装置では、双方向予測の予測結果を推定するため、簡易動き推定部では、双方向予測を行う必要はなく、処理量を低減することが可能となる。また、予測結果を簡易動き推定部による符号化コストに反映させることにより、双方向予測を行った場合と同様の効果を簡易に得ることが可能となる。このため、符号化効率を簡易に向上させることが可能となる。 In this apparatus, since the prediction result of bidirectional prediction is estimated, the simple motion estimation unit does not need to perform bidirectional prediction, and the processing amount can be reduced. In addition, by reflecting the prediction result on the coding cost by the simple motion estimation unit, it is possible to easily obtain the same effect as when bi-directional prediction is performed. For this reason, encoding efficiency can be easily improved.
請求項7に記載の符号化モード決定装置では、請求項1〜6のいずれかにおいて、複雑動き推定部は、簡易動き推定部における簡易な動き推定に基づいて、複雑な動き推定の際のピクチャ参照方向を決定する。複雑動き推定部では、決定された参照方向のピクチャを参照して動き推定を行う。すなわち、前方向予測又は後方向予測を実行可能な場合であっても、常に全ての方向の動き推定を行う必要が無くなる。 The coding mode determining apparatus according to claim 7, wherein the complex motion estimator is a picture for complex motion estimation based on simple motion estimation in the simple motion estimator. Determine the reference direction. The complex motion estimation unit performs motion estimation with reference to the determined picture in the reference direction. That is, even when forward prediction or backward prediction can be performed, it is not necessary to always perform motion estimation in all directions.
この装置では、必要な参照方向を参照して複雑な動き推定を実行することが可能となる。このため、複雑な動き推定の処理量を削減でき、複雑な動き推定の処理時間を短縮可能となる。
請求項8に記載の符号化モード決定装置では、請求項7において、複雑動き推定部は、簡易動き推定部における小ブロックに対する簡易な動き推定の結果、前方向予測と後向予測の符号化コストが概ね同じ場合は両方を選択し、異なる場合は符号化コストが小さい方のみを選択する。
In this apparatus, it is possible to execute complicated motion estimation with reference to a necessary reference direction. For this reason, the amount of processing of complicated motion estimation can be reduced, and the processing time of complicated motion estimation can be shortened.
The coding mode determining apparatus according to
この装置では、前方向予測と後向予測の符号化コストが概ね同じ場合は両方を選択し、さらに双方向予測を行うことができる。また、異なる場合は符号化コストが小さい方のみを選択する。これは、一方の符号化コストが大きい場合は、双方向予測で符号化コストが小さくなることが期待できないからである。 In this apparatus, when the encoding costs of forward prediction and backward prediction are substantially the same, both can be selected and further bi-directional prediction can be performed. If they are different, only the one with the lower coding cost is selected. This is because when one coding cost is large, it cannot be expected that the coding cost is reduced by bidirectional prediction.
請求項9に記載の符号化モード決定装置では、請求項1〜8のいずれかにおいて、複雑動き推定部は、簡易動き推定部における小ブロックに対する簡易な動き推定に基づいて、一部の符号化モードからさらに少なくとも一部の符号化モードを選択する。複雑動き推定部は、小ブロックに対する簡易な動き推定に基づいて、一部の符号化モードのうちの少なくとも一部の符号化モードを選択する。 The coding mode determining apparatus according to claim 9, wherein the complex motion estimator is configured to perform partial coding based on simple motion estimation for a small block in the simple motion estimator. At least some coding modes are further selected from the modes. The complex motion estimation unit selects at least some of the coding modes from among some of the coding modes based on simple motion estimation for the small block.
この装置では、異なる符号化モードから選択された一部の符号化モードの全部について、複雑な動き推定を行う必要がなく、処理量を削減できる。また、処理量を一定に保つように一部の符号化モードのうちの少なくとも一部の符号化モードを選択することも可能となる。 In this apparatus, it is not necessary to perform complicated motion estimation for all of some of the encoding modes selected from different encoding modes, and the processing amount can be reduced. It is also possible to select at least some of the coding modes among some of the coding modes so as to keep the processing amount constant.
請求項10に記載の符号化モード決定装置では、請求項9において、複雑動き推定部は、各符号化モードを符号化コストが低い順に選択していき、選択した符号化モードの符号化コストの和が処理余裕量を超える直前に選択を打ち切る。
この装置では、複雑動き推定部は符号化モード選択部によって選択された符号化モードの全てを選択しないこともあり得るが、その場合でも符号化コストが低い符号化モードは選択されているため問題が少ない。
In the coding mode determination device according to claim 10, in claim 9, the complex motion estimation unit selects each coding mode in ascending order of coding cost, and the coding cost of the selected coding mode is determined. The selection is aborted immediately before the sum exceeds the processing allowance.
In this apparatus, the complex motion estimation unit may not select all of the encoding modes selected by the encoding mode selection unit, but even in that case, an encoding mode with a low encoding cost is selected. Less is.
請求項11に記載の符号化モード決定装置では、請求項1〜10において、簡易動き推定部あるいは複雑動き推定部は、動き推定処理の処理量がほぼ一定に保たれるように簡易動き推定あるいは複雑動き推定における動き推定方式を変化させる。
例えば、符号化モード決定装置は、画像ブロックにより構成される画像の画像属性に応じて、動き推定方式を変化させる。ここで、画像属性とは、例えば、画像のサイズや、画像の符号化方式(ピクチャタイプ〔Iピクチャ、Pピクチャ、Bピクチャ〕など)や、画像のフォーマット(走査方式〔プログレッシブ、インターレース〕、色差フォーマットなど)や、画像の動き量などである。
In the encoding mode determination apparatus according to
For example, the encoding mode determination apparatus changes the motion estimation method according to the image attribute of an image configured by image blocks. Here, the image attributes include, for example, the image size, the image encoding method (picture type [I picture, P picture, B picture], etc.), the image format (scanning method [progressive, interlaced], color difference). Format) and the amount of motion of the image.
動き推定方式とは、例えば、参照するピクチャの枚数・方向、動き推定を行うパーティションサイズのバリエーション、動きの探索範囲などである。
この装置では、適切な処理量の処理が実現され、装置の可動率が向上する。さらに付随的な効果として、より適切な動き推定を行うことが可能となる。
The motion estimation method includes, for example, the number and direction of referenced pictures, a variation in partition size for performing motion estimation, a motion search range, and the like.
In this apparatus, processing with an appropriate processing amount is realized, and the mobility of the apparatus is improved. As an additional effect, more appropriate motion estimation can be performed.
請求項12に記載の符号化モード決定装置では、請求項1〜11において、簡易な動き推定は、整数画素精度の動き推定であり、複雑な動き推定は、非整数画素精度の動き推定である。
この装置では、簡易動き推定部により得られた符号化コストから符号化モード選択部が符号化モードの絞り込みを行う。さらに、絞り込んだ符号化モードの小ブロックに対して、複雑動き推定部が非整数画素精度の動き推定を行う。ここで、非整数画素精度の動き推定はフィルタを適用する必要があって整数画素精度の動き推定に比して処理量が多いが、この装置では、符号化モードの決定に際して全ての小ブロックについて非整数画素精度の動き推定を行う必要が無い。このため、非整数画素精度の動き推定の回数を削減でき、符号化モード決定の処理量を低減することが可能となる。また、必要な小ブロックには非整数画素精度の動き推定を行うため、適切な符号化効率の符号化モードを決定することが可能となる。
The encoding mode determining apparatus according to
In this apparatus, the encoding mode selection unit narrows down encoding modes from the encoding cost obtained by the simple motion estimation unit. Further, the complex motion estimator performs motion estimation with non-integer pixel accuracy for the small blocks in the narrowed encoding mode. Here, the motion estimation with non-integer pixel accuracy needs to apply a filter, and the processing amount is larger than the motion estimation with integer pixel accuracy. However, in this apparatus, when determining the coding mode, There is no need to perform motion estimation with non-integer pixel accuracy. For this reason, the number of times of motion estimation with non-integer pixel precision can be reduced, and the processing amount for determining the coding mode can be reduced. In addition, since motion estimation with non-integer pixel accuracy is performed for the necessary small blocks, it is possible to determine an encoding mode with appropriate encoding efficiency.
請求項13に記載の集積回路は、請求項1〜12のいずれかに記載の符号化モード決定装置を含む。
この集積回路では、請求項1〜12のいずれかに記載の符号化モード決定装置と同様の効果を得ることができる。
An integrated circuit according to a thirteenth aspect includes the coding mode determining apparatus according to any one of the first to twelfth aspects.
In this integrated circuit, it is possible to obtain the same effect as that of the coding mode determining apparatus according to any one of
請求項14に記載の画像符号化装置は、請求項1〜12のいずれかに記載の符号化モード決定装置と、符号化装置とを備えている。符号化装置は、符号化モード決定装置が決定する画像ブロックの符号化モードに基づいて、画像ブロックの符号化を行う。
この画像符号化装置では、符号化モードの決定に際して、全てのパーティションについて複雑な動き推定を行う必要が無い。このため、複雑な動き推定の回数を削減でき、符号化モード決定の処理量を低減することが可能となる。また、必要なパーティションには複雑な動き推定を行うため、適切な符号化効率の符号化モードを決定し、符号化を行うことが可能となる。
An image coding apparatus according to a fourteenth aspect includes the coding mode determining apparatus according to any one of the first to twelfth aspects, and a coding apparatus. The encoding device encodes the image block based on the encoding mode of the image block determined by the encoding mode determination device.
In this image encoding apparatus, it is not necessary to perform complicated motion estimation for all partitions when determining the encoding mode. For this reason, the number of times of complicated motion estimation can be reduced, and the processing amount for determining the coding mode can be reduced. In addition, since complicated motion estimation is performed on the necessary partitions, it is possible to determine an encoding mode with appropriate encoding efficiency and perform encoding.
請求項15に記載の集積回路は、請求項14に記載の画像符号化装置を含む。
この集積回路では、請求項14に記載の画像符号化装置と同様の効果を得ることができる。
請求項16に記載の符号化モード決定装置は、画像ブロックの符号化モードを決定する装置であって、インター予測部と、符号化ピクチャ構造決定部と、イントラ予測部と、符号化予測方式決定部とを備えている。インター予測部は、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックの各ブロックについてインター予測を行って、符号化コストを導出する。符号化ピクチャ構造決定部は、インター予測部による符号化コストに基づいて、画像ブロックの符号化ピクチャ構造を決定する。イントラ予測部は、決定された符号化ピクチャ構造を有する各ブロックについてイントラ予測を行って、符号化コストを導出する。符号化予測方式決定部は、インター予測による符号化コストとイントラ予測による符号化コストを比較して、決定された符号化ピクチャ構造を有する画像ブロックの各ブロックに対する符号化予測方式を決定する。ここで、符号化ピクチャ構造とは、画像ブロックを符号化する際のピクチャ構造であり、フィールド構造又はフレーム構造を意味している。符号化予測方式とは、画像ブロックを符号化する際のインター予測あるいはイントラ予測を意味している。
An integrated circuit according to a fifteenth aspect includes the image encoding device according to the fourteenth aspect.
In this integrated circuit, the same effect as that of the image encoding device according to claim 14 can be obtained.
The coding mode determination device according to
ここで、フィールド構造ブロックとは、例えば、画像ブロックの奇数ラインの集合により構成されるブロックと偶数ラインの集合により構成されるブロックとを含んでいる(以下、同じ)。フレーム構造ブロックとは、例えば、画像ブロックのラインを順次含むブロックにより構成されている(以下、同じ)。 Here, the field structure block includes, for example, a block constituted by a set of odd lines of an image block and a block constituted by a set of even lines (hereinafter the same). The frame structure block is composed of, for example, blocks that sequentially include image block lines (hereinafter the same).
この装置では、イントラ予測部は符号化ピクチャ構造決定部によって決定された符号化ピクチャ構造の各ブロックについてのみイントラ予測を行うため、イントラ予測部はフィールド構造ブロックおよびフレーム構造ブロックの全てについてイントラ予測を行う必要がない。このように処理負荷の高いイントラ予測の回数を減らすことができるため、画像ブロックの符号化予測方式を決定するための処理負荷を削減できる。 In this apparatus, since the intra prediction unit performs intra prediction only for each block of the encoded picture structure determined by the encoded picture structure determination unit, the intra prediction unit performs intra prediction for all of the field structure block and the frame structure block. There is no need to do it. Since the number of intra predictions with a high processing load can be reduced in this way, the processing load for determining the coding prediction method for an image block can be reduced.
請求項17に記載の符号化モード決定装置では、請求項16において、インター予測部は、フレーム構造ブロックの各ブロックの符号化コストを合計してフレーム構造ブロックの符号化コストを導出し、フィールド構造ブロックの各ブロックの符号化コストを合計してフィールド構造ブロックの符号化コストを導出する。 The coding mode determination apparatus according to claim 17, wherein the inter prediction unit derives the coding cost of the frame structure block by summing up the coding costs of the blocks of the frame structure block, and calculates the field structure. The coding cost of the field structure block is derived by summing up the coding cost of each block of the block.
この装置では、インター予測部は各ピクチャ構造ごとの各ブロックの符号化コストを導出して合計することで、各ピクチャ構造ごとの符号化コストを導出する。
請求項18に記載の符号化モード決定装置では、請求項17において、イントラ予測部は、決定された符号化ピクチャ構造を有する各ブロックについてイントラ予測を行って符号化コストを導出する。符号化予測方式決定部は、決定された符号化ピクチャ構造を有する各ブロックについて、インター予測部で導出された符号化コストとイントラ予測部で導出された符号化コストとを比較し、各ブロックごとに符号化予測方式を決定する。
In this apparatus, the inter prediction unit derives the coding cost for each picture structure by deriving and summing the coding costs of each block for each picture structure.
In an encoding mode determining apparatus according to an eighteenth aspect, in the seventeenth aspect, the intra prediction unit performs intra prediction on each block having the determined encoded picture structure to derive an encoding cost. The coding prediction method determination unit compares the coding cost derived by the inter prediction unit and the coding cost derived by the intra prediction unit for each block having the determined coded picture structure, and The encoding prediction method is determined.
この装置では、イントラ予測部は、決定された符号化ピクチャ構造を有する各ブロックについてイントラ予測を行って符号化コストを導出するため、フィールド構造ブロックおよびフレーム構造ブロックの全てについてイントラ予測を行う必要がない。このように処理負荷の高いイントラ予測の回数を減らすことができるため、画像ブロックの符号化予測方式を決定するための処理負荷を削減でき、さらに符号化装置全体の処理量を低減することが可能となる。 In this apparatus, since the intra prediction unit performs intra prediction for each block having the determined coded picture structure to derive the coding cost, it is necessary to perform intra prediction for all of the field structure block and the frame structure block. Absent. Since the number of intra predictions with a high processing load can be reduced in this way, the processing load for determining the coding prediction method of the image block can be reduced, and further the processing amount of the entire encoding device can be reduced. It becomes.
請求項19に記載の符号化モード決定装置では、請求項16〜18のいずれかにおいて、画像ブロックは、2つの正方ブロックから構成されているブロックペアである。
この装置では、ブロックペアが2つの正方ブロックから構成されており、フィールド構造ブロックとフレーム構造ブロックとのそれぞれを正方のブロックとして処理することが可能となる。
In the encoding mode determining apparatus according to a nineteenth aspect, in any one of the sixteenth to eighteenth aspects, the image block is a block pair composed of two square blocks.
In this apparatus, the block pair is composed of two square blocks, and each of the field structure block and the frame structure block can be processed as a square block.
請求項20に記載の集積回路は、請求項16〜19のいずれかに記載の符号化モード決定装置を含む。
この集積回路では、請求項16〜19のいずれかに記載の符号化モード決定装置と同様の効果を得ることができる。
An integrated circuit according to a twentieth aspect includes the coding mode determining apparatus according to any one of the twelfth to nineteenth aspects.
In this integrated circuit, it is possible to obtain the same effect as that of the coding mode determining apparatus according to any one of
請求項21に記載の画像符号化装置は、請求項16〜19のいずれかに記載の符号化モード決定装置と、符号化モード決定装置が決定する画像ブロックの符号化モードに基づいて、画像ブロックの符号化を行う符号化装置とを備える。
この装置では、イントラ予測部はピクチャ構造決定部によって決定されたピクチャ構造のブロックについてのみイントラ予測を行うため、イントラ予測部はフィールド構造ブロックおよびフレーム構造ブロックの全てについてイントラ予測を行う必要がない。このように処理負荷の高いイントラ予測の回数を減らすことができるため、画像ブロックの符号化予測方式を決定するための処理負荷を削減できる。
An image encoding device according to
In this apparatus, since the intra prediction unit performs intra prediction only for the block having the picture structure determined by the picture structure determining unit, the intra prediction unit does not need to perform intra prediction for all of the field structure block and the frame structure block. Since the number of intra predictions with a high processing load can be reduced in this way, the processing load for determining the coding prediction method for an image block can be reduced.
請求項22に記載の集積回路は、請求項21に記載の画像符号化装置を含む。
この集積回路では、請求項21に記載の画像符号化装置と同様の効果を得ることができる。
請求項23に記載の符号化モード決定装置は、画像ブロックの符号化モードを決定する装置であって、簡易動き推定部と、符号化ピクチャ構造決定部とを備えている。簡易動き推定部は、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックのそれぞれのブロックに対して簡易な動き推定によって符号化コストを導出する。符号化ピクチャ構造決定部は、簡易動き推定部による符号化コストに基づいて、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックの符号化コストを比較し、符号化ピクチャ構造を決定する。
An integrated circuit according to a twenty-second aspect includes the image encoding device according to the twenty-first aspect.
In this integrated circuit, the same effect as that of the image encoding device according to claim 21 can be obtained.
A coding mode determination apparatus according to a twenty-third aspect is an apparatus for determining a coding mode of an image block, and includes a simple motion estimation unit and a coded picture structure determination unit. The simple motion estimation unit derives an encoding cost by simple motion estimation for each of the field structure block and the frame structure block of the image block. The encoded picture structure determining unit determines the encoded picture structure by comparing the encoding costs of the field structure block and the frame structure block of the image block based on the encoding cost of the simple motion estimation unit.
この装置では、簡易な動き推定に基づいて、画像ブロックの符号化モード(具体的には、符号化ピクチャ構造)を決定する。このため、符号化モードを決定するための処理量を軽減することが可能となる。
請求項24に記載の符号化モード決定装置では、請求項23において、簡易動き推定部は、各ブロックに対して簡易なインター予測と簡易なイントラ予測を行い、次に簡易なインター予測の符号化コストと簡易なイントラ予測の符号化コストを比較し各ブロックごとに簡易なインター予測と簡易なイントラ予測のいずれかを選択し、さらに各ピクチャ構造ごとのブロックの符号化コストを合計してフレーム構造ブロック及びフィールド構造ブロックの符号化コストを導出する。
In this apparatus, an encoding mode (specifically, an encoded picture structure) of an image block is determined based on simple motion estimation. For this reason, it is possible to reduce the processing amount for determining the encoding mode.
In the coding mode determination apparatus according to
この装置では、簡易動き推定部がインター予測とイントラ予測を用いてフレーム構造ブロック及びフィールド構造ブロックの符号化コストを導出するため、インター予測又はイントラ予測のいずれかで圧縮率が向上する画像ブロックの場合でも圧縮率が最良となるような符号化ピクチャ構造を決定できる。 In this apparatus, since the simple motion estimation unit derives the coding cost of the frame structure block and the field structure block using inter prediction and intra prediction, an image block whose compression rate is improved by either inter prediction or intra prediction is determined. Even in this case, it is possible to determine a coded picture structure that provides the best compression rate.
請求項25に記載の符号化モード決定装置では、請求項24において、簡易なインター予測は、整数画素精度のインター予測である。
この装置では、簡易動き推定部では、整数画素精度のインター予測と簡易なイントラ予測とを行うことできる。
In the coding mode determining apparatus according to a twenty-fifth aspect, in the twenty-fourth aspect, the simple inter prediction is inter prediction with integer pixel accuracy.
In this apparatus, the simple motion estimation unit can perform inter prediction with integer pixel accuracy and simple intra prediction.
請求項26に記載の符号化モード決定装置は、請求項23〜25のいずれかにおいて、画像ブロックは、2つの正方ブロックから構成されているブロックペアである。
この装置では、ブロックペアが2つの正方ブロックから構成されており、フィールド構造ブロックとフレーム構造ブロックとのそれぞれを正方のブロックとして処理することが可能となる。
According to a twenty-sixth aspect of the present invention, in any one of the twenty-third to twenty-fifth aspects, the image block is a block pair composed of two square blocks.
In this apparatus, the block pair is composed of two square blocks, and each of the field structure block and the frame structure block can be processed as a square block.
請求項27に記載の集積回路は、請求項23〜26のいずれかに記載の符号化モード決定装置を含む。
この集積回路により、請求項23〜26のいずれかに記載の符号化モード決定装置と同様の効果を得ることができる。
An integrated circuit according to a twenty-seventh aspect includes the coding mode determining device according to any one of the twenty-third to twenty-sixth aspects.
With this integrated circuit, an effect similar to that of the coding mode determining apparatus according to any one of
請求項28に記載の画像符号化装置は、請求項23〜26のいずれかに記載の符号化モード決定装置と、符号化モード決定装置によって決定される符号化ピクチャ構造の画像ブロックに対して複雑な動き推定を行う複雑動き推定部と、複雑動き推定部による予測結果に基づいて、画像ブロックの符号化を行う符号化部とを備える。 An image encoding device according to a twenty-eighth aspect is complex with respect to the coding mode determining device according to any one of the twenty-third to twenty-sixth aspects and an image block having a coded picture structure determined by the coding mode determining device. A complex motion estimation unit that performs accurate motion estimation and an encoding unit that encodes an image block based on a prediction result by the complex motion estimation unit.
この装置では、複雑な動き推定によって画像ブロックの符号化を行うため、圧縮効率が向上する。しかも、ここでは、符号化モード決定装置によって決定された符号化ピクチャ構造の画像ブロックに対してのみ複雑な動き推定を行うため、従来より複雑な動き推定の回数を減らすことができる。 In this apparatus, since the image block is encoded by complicated motion estimation, the compression efficiency is improved. In addition, here, since the complicated motion estimation is performed only on the image block having the coded picture structure determined by the coding mode determining apparatus, the number of times of motion estimation more complicated than before can be reduced.
請求項29に記載の画像符号化装置では、請求項28において、複雑予測部は、決定された符号化ピクチャ構造を有する各ブロックに対して、複雑なインター予測又は複雑なイントラ予測を行う。
この装置では、インター予測又はイントラ予測のいずれかで圧縮率が向上する画像ブロックに対しても、圧縮効率を向上させることができる。
In an image coding apparatus according to a twenty-ninth aspect, in the twenty-eighth aspect, the complex prediction unit performs complex inter prediction or complex intra prediction on each block having the determined coded picture structure.
In this apparatus, the compression efficiency can be improved even for an image block whose compression rate is improved by either inter prediction or intra prediction.
請求項30に記載の画像符号化装置では、請求項29において、複雑なインター予測は、非整数画素精度のインター予測である。
この装置では、非整数画素精度のインター予測を用いて複雑なインター予測を行うことが可能となる。
In an image encoding device according to a thirty-third aspect, in the twenty-ninth aspect, the complicated inter prediction is inter prediction with non-integer pixel accuracy.
In this apparatus, it is possible to perform complex inter prediction using inter prediction with non-integer pixel accuracy.
請求項31に記載の集積回路は、請求項28〜30のいずれかに記載の画像符号化装置を含む。
この集積回路により、請求項28〜30のいずれかに記載の画像符号化装置と同様の効果を得ることができる。
An integrated circuit according to a thirty-first aspect includes the image encoding device according to any one of the twenty-eighth to thirty-third aspects.
With this integrated circuit, it is possible to obtain the same effect as that of the image encoding device according to any one of
請求項32に記載の符号化モード決定方法は、画像ブロックの符号化モードを複数候補の中から少なくとも1つに決定する符号化モード決定方法であって、簡易動き推定ステップと、符号化モード選択ステップと、複雑動き推定ステップと、符号化モード決定ステップとを備えている。簡易動き推定ステップは、各符号化モードによってそれぞれ得られる画像ブロックのパーティションである小ブロックに対する簡易な動き推定に基づいて、各符号化モードの符号化コストを導出する。符号化モード選択ステップは、簡易動き推定ステップによって導出された符号化コストに基づいて、複数の符号化モードから一部の符号化モードを選択する。複雑動き推定ステップは、一部の符号化モードの少なくとも一部の符号化モードによって得られる小ブロックに対する複雑な動き推定に基づいて、各符号化モードの符号化コストを導出する。符号化モード決定ステップは、複雑動き推定ステップによって導出された符号化コストに基づいて、画像ブロックの符号化モードを決定する。
The encoding mode determination method according to
この方法では、簡易動き推定ステップにより得られた符号化コストから符号化モード選択ステップが符号化モードの絞り込みを行う。さらに、絞り込んだ符号化モードの小ブロックに対して、複雑動き推定ステップが複雑な動き推定を行う。ここで、複雑な動き推定は、例えば、フィルタを適用する必要があるなどの理由により、簡易な動き推定に比して処理量が多いが、この方法では、符号化モードの決定に際して全ての小ブロックについて複雑な動き推定を行う必要が無い。このため、複雑な動き推定の回数を削減でき、符号化モード決定の処理量を低減することが可能となる。また、必要な小ブロックには複雑な動き推定を行うため、適切な符号化効率の符号化モードを決定することが可能となる。 In this method, the encoding mode selection step narrows down the encoding mode from the encoding cost obtained by the simple motion estimation step. Further, the complicated motion estimation step performs a complicated motion estimation on the narrow blocks of the narrowed coding mode. Here, the complicated motion estimation has a larger processing amount than the simple motion estimation because, for example, it is necessary to apply a filter. However, in this method, all of the small motion estimations are performed when determining the coding mode. There is no need to perform complex motion estimation for blocks. For this reason, the number of times of complicated motion estimation can be reduced, and the processing amount for determining the coding mode can be reduced. In addition, since a complicated motion estimation is performed for a necessary small block, it is possible to determine an encoding mode with appropriate encoding efficiency.
請求項33に記載の符号化モード決定方法は、画像ブロックの符号化モードを決定する符号化モード決定方法であって、インター予測ステップと、符号化ピクチャ構造決定ステップと、イントラ予測ステップと、符号化予測方式決定ステップとを備えている。インター予測ステップは、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックの各ブロックについてインター予測を行って、符号化コストを導出する。符号化ピクチャ構造決定ステップは、インター予測ステップによる符号化コストに基づいて、画像ブロックの符号化ピクチャ構造を決定する。イントラ予測ステップは、決定された符号化ピクチャ構造を有する各ブロックについてイントラ予測を行って、符号化コストを導出する。符号化予測方式決定ステップは、インター予測による符号化コストとイントラ予測による符号化コストを比較して、決定された符号化ピクチャ構造を有する画像ブロックの各ブロックに対する符号化予測方式を決定する。
The encoding mode determination method according to
この方法では、イントラ予測ステップは符号化ピクチャ構造決定ステップによって決定された符号化ピクチャ構造の各ブロックについてのみイントラ予測を行うため、イントラ予測ステップはフィールド構造ブロックおよびフレーム構造ブロックの全てについてイントラ予測を行う必要がない。このように処理負荷の高いイントラ予測の回数を減らすことができるため、画像ブロックの符号化予測方式を決定するための処理負荷を削減できる。 In this method, since the intra prediction step performs intra prediction only for each block of the coded picture structure determined by the coded picture structure determining step, the intra prediction step performs intra prediction for all of the field structure block and the frame structure block. There is no need to do it. Since the number of intra predictions with a high processing load can be reduced in this way, the processing load for determining the coding prediction method for an image block can be reduced.
請求項34に記載の符号化モード決定方法は、画像ブロックの符号化モードを決定する符号化モード決定方法であって、簡易動き推定ステップと、符号化ピクチャ構造決定ステップとを備えている。簡易動き推定ステップは、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックのそれぞれのブロックに対して簡易な動き推定によって符号化コストを導出する。符号化ピクチャ構造決定ステップは、簡易動き推定ステップによる符号化コストに基づいて、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックの符号化コストを比較し、符号化ピクチャ構造を決定する。 An encoding mode determination method according to a thirty-fourth aspect is an encoding mode determination method for determining an encoding mode of an image block, and includes a simple motion estimation step and an encoded picture structure determination step. The simple motion estimation step derives an encoding cost by simple motion estimation for each of the field structure block and the frame structure block of the image block. The coded picture structure determination step compares the coding costs of the field structure block and the frame structure block of the image block based on the coding cost of the simple motion estimation step, and determines the coded picture structure.
この方法では、簡易な動き推定に基づいて、画像ブロックの符号化モード(具体的には、符号化ピクチャ構造)を決定する。このため、符号化モードを決定するための処理量を軽減することが可能となる。
請求項35に記載の符号化モード決定プログラムは、コンピュータに以下の方法を行わさせる。符号化モード決定方法は、画像ブロックの符号化モードを複数候補の中から少なくとも1つに決定する符号化モード決定方法であって、簡易動き推定ステップと、符号化モード選択ステップと、複雑動き推定ステップと、符号化モード決定ステップとを備えている。簡易動き推定ステップは、各符号化モードによってそれぞれ得られる画像ブロックのパーティションである小ブロックに対する簡易な動き推定に基づいて、各符号化モードの符号化コストを導出する。符号化モード選択ステップは、簡易動き推定ステップによって導出された符号化コストに基づいて、複数の符号化モードから一部の符号化モードを選択する。複雑動き推定ステップは、一部の符号化モードの少なくとも一部の符号化モードによって得られる小ブロックに対する複雑な動き推定に基づいて、各符号化モードの符号化コストを導出する。符号化モード決定ステップは、複雑動き推定ステップによって導出された符号化コストに基づいて、画像ブロックの符号化モードを決定する。
In this method, a coding mode (specifically, a coded picture structure) of an image block is determined based on simple motion estimation. For this reason, it is possible to reduce the processing amount for determining the encoding mode.
An encoding mode determination program according to a thirty-fifth aspect causes a computer to perform the following method. The encoding mode determination method is an encoding mode determination method that determines at least one encoding mode of an image block from a plurality of candidates, and includes a simple motion estimation step, an encoding mode selection step, and a complex motion estimation And a coding mode determination step. The simple motion estimation step derives the coding cost of each coding mode based on simple motion estimation for a small block which is a partition of an image block obtained by each coding mode. The encoding mode selection step selects some encoding modes from the plurality of encoding modes based on the encoding cost derived by the simple motion estimation step. The complex motion estimation step derives the coding cost of each coding mode based on the complex motion estimation for the small block obtained by at least some of the coding modes. The encoding mode determination step determines the encoding mode of the image block based on the encoding cost derived by the complex motion estimation step.
このプログラムでは、簡易動き推定ステップにより得られた符号化コストから符号化モード選択ステップが符号化モードの絞り込みを行う。さらに、絞り込んだ符号化モードの小ブロックに対して、複雑動き推定ステップが複雑な動き推定を行う。ここで、複雑な動き推定は、例えば、フィルタを適用する必要があるなどの理由により、簡易な動き推定に比して処理量が多いが、このプログラムでは、符号化モードの決定に際して全ての小ブロックについて複雑な動き推定を行う必要が無い。このため、複雑な動き推定の回数を削減でき、符号化モード決定の処理量を低減することが可能となる。また、必要な小ブロックには複雑な動き推定を行うため、適切な符号化効率の符号化モードを決定することが可能となる。 In this program, the encoding mode selection step narrows down the encoding mode from the encoding cost obtained by the simple motion estimation step. Further, the complicated motion estimation step performs a complicated motion estimation on the narrow blocks of the narrowed coding mode. Here, the complicated motion estimation has a larger processing amount than the simple motion estimation because, for example, it is necessary to apply a filter. However, in this program, all small motion estimations are performed when determining the encoding mode. There is no need to perform complex motion estimation for blocks. For this reason, the number of times of complicated motion estimation can be reduced, and the processing amount for determining the coding mode can be reduced. In addition, since a complicated motion estimation is performed for a necessary small block, it is possible to determine an encoding mode with appropriate encoding efficiency.
請求項36に記載の符号化モード決定プログラムは、コンピュータに以下の方法を行わさせる。符号化モード決定方法は、画像ブロックの符号化モードを決定する符号化モード決定方法であって、インター予測ステップと、符号化ピクチャ構造決定ステップと、イントラ予測ステップと、符号化予測方式決定ステップとを備えている。インター予測ステップは、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックの各ブロックについてインター予測を行って、符号化コストを導出する。符号化ピクチャ構造決定ステップは、インター予測ステップによる符号化コストに基づいて、画像ブロックの符号化ピクチャ構造を決定する。イントラ予測ステップは、決定された符号化ピクチャ構造を有する各ブロックについてイントラ予測を行って、符号化コストを導出する。符号化予測方式決定ステップは、インター予測による符号化コストとイントラ予測による符号化コストを比較して、決定された符号化ピクチャ構造を有する画像ブロックの各ブロックに対する符号化予測方式を決定する。 A coding mode determination program according to a thirty-sixth aspect causes a computer to perform the following method. The encoding mode determination method is an encoding mode determination method for determining an encoding mode of an image block, and includes an inter prediction step, an encoded picture structure determination step, an intra prediction step, an encoding prediction method determination step, It has. In the inter prediction step, inter prediction is performed on each of the field structure block and the frame structure block of the image block to derive the coding cost. The encoded picture structure determination step determines the encoded picture structure of the image block based on the encoding cost of the inter prediction step. In the intra prediction step, intra prediction is performed on each block having the determined encoded picture structure to derive an encoding cost. The encoding prediction scheme determination step determines the encoding prediction scheme for each block of the image block having the determined encoded picture structure by comparing the encoding cost by inter prediction and the encoding cost by intra prediction.
このプログラムでは、イントラ予測ステップは符号化ピクチャ構造決定ステップによって決定された符号化ピクチャ構造の各ブロックについてのみイントラ予測を行うため、イントラ予測ステップはフィールド構造ブロックおよびフレーム構造ブロックの全てについてイントラ予測を行う必要がない。このように処理負荷の高いイントラ予測の回数を減らすことができるため、画像ブロックの符号化予測方式を決定するための処理負荷を削減できる。 In this program, since the intra prediction step performs intra prediction only for each block of the coded picture structure determined by the coded picture structure determining step, the intra prediction step performs intra prediction for all of the field structure block and the frame structure block. There is no need to do it. Since the number of intra predictions with a high processing load can be reduced in this way, the processing load for determining the coding prediction method for an image block can be reduced.
請求項37に記載の符号化モード決定プログラムは、コンピュータに以下の方法を行わさせる。符号化モード決定方法は、画像ブロックの符号化モードを決定する符号化モード決定方法であって、簡易動き推定ステップと、符号化ピクチャ構造決定ステップとを備えている。簡易動き推定ステップは、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックのそれぞれのブロックに対して簡易な動き推定によって符号化コストを導出する。符号化ピクチャ構造決定ステップは、簡易動き推定ステップによる符号化コストに基づいて、画像ブロックのフィールド構造ブロックおよびフレーム構造ブロックの符号化コストを比較し、符号化ピクチャ構造を決定する。 An encoding mode determination program according to a thirty-seventh aspect causes a computer to perform the following method. The encoding mode determination method is an encoding mode determination method for determining the encoding mode of an image block, and includes a simple motion estimation step and an encoded picture structure determination step. The simple motion estimation step derives an encoding cost by simple motion estimation for each of the field structure block and the frame structure block of the image block. The coded picture structure determination step compares the coding costs of the field structure block and the frame structure block of the image block based on the coding cost of the simple motion estimation step, and determines the coded picture structure.
このプログラムでは、簡易な動き推定に基づいて、画像ブロックの符号化モード(具体的には、符号化ピクチャ構造)を決定する。このため、符号化モードを決定するための処理量を軽減することが可能となる。 In this program, an encoding mode (specifically, an encoded picture structure) of an image block is determined based on simple motion estimation. For this reason, it is possible to reduce the processing amount for determining the encoding mode.
本発明では、より少ない処理量で適切な符号化モードの選択を可能とさせる符号化モード決定装置、画像符号化装置、符号化モード決定方法、および符号化モード決定プログラムを提供することができる。 According to the present invention, it is possible to provide an encoding mode determination device, an image encoding device, an encoding mode determination method, and an encoding mode determination program that enable selection of an appropriate encoding mode with a smaller processing amount.
[第1実施形態]
図1〜図15を用いて、本発明の第1実施形態としてのエンコーダについて説明する。
図1は、本発明の第1実施形態としてのエンコーダ1の構造を説明するブロック図である。エンコーダ1は、例えば、入力画像信号30をMPEG−4符号化し、符号化画像信号31として出力する画像符号化装置であり、パーソナルコンピュータ(PC)、携帯電話などにおいて備えられる。
[First Embodiment]
An encoder as a first embodiment of the present invention will be described with reference to FIGS.
FIG. 1 is a block diagram illustrating the structure of an
〈エンコーダ1の構成〉
図1に示すエンコーダ1は、入力画像信号30のイントラ予測を行うイントラ予測部2と、入力画像信号30のインター予測を行うインター予測部3と、イントラ予測およびインター予測の予測結果を切り換える切換部4と、切換部4の出力を符号化して符号化画像信号31を出力する符号化部5と、入力画像信号30のローカルデコード信号32を作成する参照画像作成部6とを備えている。
<Configuration of
An
イントラ予測部2は、入力画像信号30を画像ブロック毎にイントラ予測し、イントラ予測画像との差分信号を切換部4に出力する。
インター予測部3は、入力画像信号30を第1の入力とし、ローカルデコード信号32を第2の入力として、インター予測結果を切換部4に出力する。さらに、インター予測部3は、インター予測結果のうち、動きベクトルなど符号化にかかる情報を第2の出力として符号化部5に出力する。
The
The
インター予測部3は、入力画像信号30を第1の入力、ローカルデコード信号32を第2の入力とし、動き推定を行う動き推定部10と、動き推定部10の出力を第1の入力、ローカルデコード信号32を第2の入力とし、予測画像を出力する予測画像作成部11と、入力画像信号30を第1の入力、予測画像作成部11の出力を第2の入力とする減算部12とから構成されている。また、動き推定部10の出力のうち、動きベクトルや符号化モードなどの符号化情報は、後述する可変長符号化部22の入力にも与えられる。
The
動き推定部10は、主に、フルペル予測部13と、分割方法候補選択部14と、サブペル予測部15と、分割方法決定部16とを備えている(動作については、後述)。
切換部4は、イントラ予測結果を第1の入力、インター予測結果を第2の入力とし、いずれかの入力を符号化部5に出力する。
The motion estimation unit 10 mainly includes a full-
The
符号化部5は、切換部4の出力を第1の入力とし、DCT(Discrete Cosine Transform)部20、量子化部21、可変長符号化部22を通して符号化画像信号31を出力する。
参照画像作成部6では、逆量子化部23には量子化部21の出力が入力され、逆量子化部23の出力は、逆DCT部24を通して、加算部25の第1の入力に与えられる。加算部25は、予測画像作成部11の出力を第2の入力とし、加算結果をメモリ26に出力する。メモリ26は、予測画像作成部11の第2の入力と動き推定部10の第2の入力にローカルデコード信号32を出力する。
The encoding unit 5 uses the output of the
In the reference
〈エンコーダ1の動作〉
次に、エンコーダ1の動作について説明する。まず、入力画像信号30は、符号化処理の基本単位である画像ブロックを単位として入力されている。
イントラ符号化される画像ブロックは、イントラ予測部2において、同一ピクチャ内の他の画像ブロックの画素係数を用いてイントラ予測される。イントラ予測された画像ブロックは、DCT部20において離散コサイン変換(DCT)を施され、量子化部21において量子化され、可変長符号化部22において可変長符号化される。
<Operation of
Next, the operation of the
The image block to be intra-coded is intra-predicted by the
一方、量子化部21において量子化されたDCT係数は、逆量子化部23において逆量子化され、逆DCT部24において逆DCTされ、ローカルデコードされ、ローカルデコード信号32としてメモリ26に記憶される。このメモリ26に記憶されたローカルデコード信号32は、インター予測部3において画像ブロックがインター符号化される際に使用される。
On the other hand, the DCT coefficient quantized by the quantizing
インター符号化される画像ブロックは、動き推定部10において、動き推定される。ここで、動き推定部10の詳しい動作については後述する。
予測画像作成部11は、動き推定部10の動き推定の結果と、メモリ26に記憶されたローカルデコード信号32とに基づいて、予測画像を作成する。減算部12は、画像ブロックと作成された予測画像との差分から差分画像ブロックを求める。差分画像ブロックは、DCT部20において離散コサイン変換を施され、量子化部21において量子化される。離散コサイン変換および量子化された差分画像ブロックは、動き推定の結果などとともに可変長符号化部22において可変長符号化される。
The motion estimation unit 10 performs motion estimation on the image block to be inter-coded. Here, the detailed operation of the motion estimation unit 10 will be described later.
The predicted
〈動き推定部10の動作〉
動き推定部10は、画像ブロックの符号化コストを最小とする画像ブロックの符号化モード(画像ブロックの分割方法、予測方向など)を決定するとともに、動きベクトルの導出を行う。
<Operation of Motion Estimation Unit 10>
The motion estimation unit 10 determines an image block coding mode (image block division method, prediction direction, etc.) that minimizes the coding cost of the image block, and derives a motion vector.
図2を用いて、動き推定部10の特徴について説明する。動き推定部10は、画像ブロックの全てのパーティションサイズおよび動き推定の際の全ての参照ピクチャに対して、整数画素精度の動き推定を行う(ステップS701〜S703)。さらに、整数精度の動き推定の結果に基づいて、符号化コストを小さくするパーティションサイズと参照ピクチャとの候補を選択し、選択された候補に対して非整数画素精度の動き推定を行う(ステップS704)。 The features of the motion estimation unit 10 will be described with reference to FIG. The motion estimator 10 performs motion estimation with integer pixel accuracy for all the partition sizes of the image block and all the reference pictures at the time of motion estimation (steps S701 to S703). Further, based on the result of motion estimation with integer precision, a candidate for a partition size and a reference picture for reducing the coding cost is selected, and motion estimation with non-integer pixel precision is performed on the selected candidate (step S704). ).
これにより、全てのパーティションサイズおよび全ての参照ピクチャに対して非整数画素精度の動き推定を行う必要なく、符号化の際のパーティションサイズおよび参照ピクチャを決定するための処理量を低減することが可能となる。また、選択された候補に対しては非整数画素精度の動き推定を行うため、適切な符号化効率を実現することが可能となる。 As a result, it is not necessary to perform motion estimation with non-integer pixel accuracy for all partition sizes and all reference pictures, and it is possible to reduce the processing amount for determining the partition size and reference picture at the time of encoding. It becomes. In addition, since the motion estimation with non-integer pixel accuracy is performed on the selected candidate, it is possible to realize appropriate encoding efficiency.
図3を用いて、動き推定部10の動作についてさらに説明を加える。
図3は、画像ブロックについての符号化モード決定の処理フローを示すブロック図である。図3の画像ブロックについての符号化モード決定の処理フローは、フルペル予測部13により実行されるフルペル予測ステップS41と、分割方法候補選択部14により実行される分割方法候補選択ステップS42と、サブペル予測部15により実行されるサブペル予測ステップS43と、分割方法決定部16により実行される分割方法決定ステップS44とから構成されている。
The operation of the motion estimation unit 10 will be further described with reference to FIG.
FIG. 3 is a block diagram illustrating a processing flow for determining an encoding mode for an image block. The processing flow for determining the coding mode for the image block in FIG. 3 includes a full-pel prediction step S41 executed by the full-
フルペル予測ステップS41は、小ブロックフルペル予測ステップS45と、予測方向選択ステップS46と、符号化コスト導出ステップS47とを備えている。
小ブロックフルペル予測ステップS45は、16×16の画像ブロックを4種類の分割方法候補により分割したM×N((M,N)=(16,16),(16,8),(8,16),(8,8))の小ブロックSb1〜Sb9(図25参照)のそれぞれに対して、整数画素精度の動き推定を行い、小ブロック毎の符号化コストおよび動きベクトルを導出する。具体的には、それぞれの小ブロックSb1〜Sb9に対して、前方向予測ステップS451〜S454および後方向予測ステップS455〜S458が行われている。すなわち、前方向予測ステップS451〜S454および後方向予測ステップS455〜S458では、それぞれの分割方法候補により分割された小ブロックの個数に応じた回数の処理が行われている。図3では、この回数を処理ブロックからの矢印の本数で表している。
The full pel prediction step S41 includes a small block full pel prediction step S45, a prediction direction selection step S46, and an encoding cost derivation step S47.
In the small block full-pel prediction step S45, M × N ((M, N) = (16,16), (16,8), (8, 16), (8, 8)) for each of the small blocks Sb1 to Sb9 (see FIG. 25), motion estimation with integer pixel accuracy is performed to derive the coding cost and motion vector for each small block. Specifically, forward prediction steps S451 to S454 and backward prediction steps S455 to S458 are performed for each of the small blocks Sb1 to Sb9. That is, in the forward prediction steps S451 to S454 and the backward prediction steps S455 to S458, the number of processes corresponding to the number of small blocks divided by the respective division method candidates is performed. In FIG. 3, this number is represented by the number of arrows from the processing block.
予測方向選択ステップS46は、フルペル予測ステップS45によって導出された符号化コストに基づいて、複数の符号化モードから一部の符号化モードを選択する。予測方向選択ステップS46は、具体的には、前方向予測ステップS451〜S454の符号化コストと後方向予測ステップS455〜S458の符号化コストとを比較して、小ブロック毎の符号化コストを小さくする予測方向(ピクチャ参照方向)を選択する。 The prediction direction selection step S46 selects a part of the encoding modes from the plurality of encoding modes based on the encoding cost derived by the full-pel prediction step S45. Specifically, the prediction direction selection step S46 compares the encoding cost of the forward prediction steps S451 to S454 with the encoding cost of the backward prediction steps S455 to S458, and reduces the encoding cost for each small block. The prediction direction (picture reference direction) to be selected is selected.
符号化コスト導出ステップS47は、予測方向選択ステップS46が選択した予測方向の符号化コストを分割方法候補毎に合計し、画像ブロック単位での符号化コストを導出する。ここでは、フルペル予測ステップS45が各小ブロックごとに符号化コストが低いピクチャ参照方向を選択しているため、各分割方法候補ごとの符号化モードにおいて最も符号化コストが低い小ブロックの組み合わせが可能となる。 In the encoding cost deriving step S47, the encoding costs in the prediction direction selected in the prediction direction selecting step S46 are summed for each division method candidate, and the encoding cost in units of image blocks is derived. Here, since the full-pel prediction step S45 selects the picture reference direction with the lowest coding cost for each small block, the combination of the small blocks with the lowest coding cost is possible in the coding mode for each division method candidate. It becomes.
分割方法候補選択ステップS42は、符号化コスト導出ステップS47が導出した画像ブロック単位での符号化コストを比較し、符号化コストが小さい2種類の分割方法候補を選択する。
サブペル予測ステップS43は、分割方法候補選択ステップS42において選択された2種類の分割方法候補により分割された小ブロックのそれぞれについて、非整数画素精度の動き推定を行う。ここで、非整数画素精度の動き推定は、図28を用いて説明したサブペル予測ステップS301と同様に行われる。すなわち、選択された2種類の分割方法候補により分割された小ブロックのそれぞれについて、小ブロックフルペル予測ステップS45で導出された動きベクトルに基づいて、非整数画素精度の動き推定を行う。また、サブペル予測ステップS43では、小ブロックのそれぞれについて、前方向予測ステップS431,S434と、後方向予測ステップS432,S435と、双方向予測ステップS433,S436とが行われる。この結果、それぞれの小ブロックについて、3種類の予測方向についての符号化コストが導出される。また、前方向予測ステップS431,S434と、後方向予測ステップS432,S435と、双方向予測ステップS433,S436は、選択された2種類の分割方法候補により分割された小ブロックの個数に応じた回数の処理が行われている。
In the division method candidate selection step S42, the coding costs in units of image blocks derived by the coding cost deriving step S47 are compared, and two types of division method candidates with low coding costs are selected.
The sub-pel prediction step S43 performs motion estimation with non-integer pixel accuracy for each of the small blocks divided by the two types of division method candidates selected in the division method candidate selection step S42. Here, the motion estimation with non-integer pixel accuracy is performed in the same manner as the sub-pel prediction step S301 described with reference to FIG. That is, motion estimation with non-integer pixel accuracy is performed for each of the small blocks divided by the two selected division method candidates based on the motion vector derived in the small block full-pel prediction step S45. In sub-pel prediction step S43, forward prediction steps S431 and S434, backward prediction steps S432 and S435, and bidirectional prediction steps S433 and S436 are performed for each of the small blocks. As a result, for each small block, encoding costs for three types of prediction directions are derived. The forward prediction steps S431 and S434, the backward prediction steps S432 and S435, and the bidirectional prediction steps S433 and S436 are performed in accordance with the number of small blocks divided by the two selected division method candidates. Is being processed.
分割方法決定ステップS44は、分割方法候補選択ステップS42において選択された2種類の分割方法候補により分割されたそれぞれの小ブロックについて最小となる符号化コストから、小ブロックごとの予測方向を決定するとともに、画像ブロック単位での符号化コストを導出する。さらに、導出された画像ブロック単位での符号化コストを2種類の分割方法候補について比較し、最小の符号化コストを有する分割方法候補を画像ブロックの分割方法として決定する。また、同時に小ブロックについての動きベクトルが得られる。 In the division method determination step S44, the prediction direction for each small block is determined from the encoding cost that is the minimum for each small block divided by the two types of division method candidates selected in the division method candidate selection step S42. Deriving the coding cost for each image block. Further, the derived encoding cost for each image block is compared for two types of division method candidates, and the division method candidate having the minimum encoding cost is determined as the image block division method. At the same time, a motion vector for a small block is obtained.
図4を用いて、フルペル予測ステップS41と分割方法候補選択ステップS42との処理について詳しい説明を加える。なお、上述の様に、フルペル予測ステップS41は、小ブロックフルペル予測ステップS45と、予測方向選択ステップS46と、符号化コスト導出ステップS47とを備えている。 With reference to FIG. 4, a detailed description will be given of the processing in the full-pel prediction step S41 and the division method candidate selection step S42. As described above, the full-pel prediction step S41 includes a small block full-pel prediction step S45, a prediction direction selection step S46, and an encoding cost derivation step S47.
小ブロックフルペル予測ステップS45は、小ブロックSb1〜Sb9の全てに対して、整数画素精度の前方向予測(図4では、fwと記載)と後方向予測(図4では、bwと記載)を行い、それぞれの参照方向に対する符号化コストを導出する。図4では、それぞれの符号化コストを例示している。例えば、小ブロックSb2では、前方向予測の符号化コストが(21)、後方向予測の符号化コストが(22)である。 The small block full-pel prediction step S45 performs forward prediction (denoted as fw in FIG. 4) and backward prediction (denoted as bw in FIG. 4) with integer pixel accuracy for all of the small blocks Sb1 to Sb9. Then, the encoding cost for each reference direction is derived. FIG. 4 illustrates the respective encoding costs. For example, in the small block Sb2, the encoding cost for forward prediction is (21), and the encoding cost for backward prediction is (22).
予測方向選択ステップS46は、小ブロック毎に前方向予測と後方向予測との符号化コストを比較して、符号化コストがより小さい予測方向を選択する。例えば、小ブロックSb2では、前方向予測が選択される。
符号化コスト導出ステップS47は、予測方向選択ステップS46が選択した小ブロック毎の符号化コストから画像ブロック単位での符号化コストを導出する。例えば、16×8の分割方法について、小ブロックSb2では、前方向予測が選択され、小ブロックSb3では、後方向予測が選択されているため、16×16の画像ブロック単位での符号化コストは、(41)となる。
The prediction direction selection step S46 compares the encoding costs of the forward prediction and the backward prediction for each small block, and selects a prediction direction with a smaller encoding cost. For example, in the small block Sb2, forward prediction is selected.
In the coding cost deriving step S47, the coding cost for each image block is derived from the coding cost for each small block selected in the prediction direction selecting step S46. For example, for the 16 × 8 division method, the forward prediction is selected in the small block Sb2, and the backward prediction is selected in the small block Sb3. Therefore, the coding cost for each 16 × 16 image block is (41).
分割方法候補選択ステップS42では、フルペル予測ステップS41により導出された画像ブロック単位での符号化コストを分割方法候補毎に比較し、符号化コストが小さい2種類の分割方法候補を選択する。図4では、16×16の分割方法(符号化コスト(40))および16×8の分割方法(符号化コスト(41))が分割方法候補として選択される。 In the division method candidate selection step S42, the coding costs in units of image blocks derived in the full-pel prediction step S41 are compared for each division method candidate, and two types of division method candidates with low coding costs are selected. In FIG. 4, a 16 × 16 division method (encoding cost (40)) and a 16 × 8 division method (encoding cost (41)) are selected as division method candidates.
〈エンコーダ1の効果〉
エンコーダ1では、フルペル予測ステップS41により得られた符号化コストから分割方法候補選択ステップS42が分割方法候補の絞り込みを行う。さらに、絞り込んだ分割候補の小ブロックに対して、サブペル予測ステップS43がサブペル予測を行う。ここで、サブペル予測はフィルタを適用する必要があってフルペル予測に比して処理量が多いが、この装置では、符号化モードの決定に際して全ての小ブロックSb1〜Sb9についてサブペル予測を行う必要が無い。このため、サブペル予測の回数を削減でき、符号化モード決定の処理量を低減することが可能となる。また、必要な小ブロックにはサブペル予測を行うため、適切な符号化効率の符号化モードを決定することが可能となる。
<Effect of
In the
〈エンコーダ1の変形例〉
本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形又は修正が可能である。
(1)フルペル予測部13の変形例
(1−1)
上記実施形態では、フルペル予測ステップS41を実行するフルペル予測部13は、それぞれの小ブロックSb1〜Sb9に対して、前方向予測ステップS451〜S454および後方向予測ステップS455〜S458を実行すると説明した(以下、第1フルペル予測方法という)。この場合は、双方向予測を行わないため、処理量を削減でき、フルペル予測の処理時間を短縮できる。
<Modification of
The present invention is not limited to the above-described embodiment, and various changes or modifications can be made without departing from the scope of the present invention.
(1) Modification of full-pel prediction unit 13 (1-1)
In the above-described embodiment, the full-
ここで、フルペル予測ステップS41は、さらに双方向予測を実行し符号化コストを導出するものであっても良い(以下、第2フルペル予測方法という)。この場合は、双方向予測を行うため、フルペル予測の精度を向上させることが可能となる。このため、より適切な符号化モードを選択することが可能となる。また、前方向予測ステップS451〜S454および後方向予測ステップS455〜S458により導出された符号化コストから双方向予測を実行した場合の符号化コストを推定するものであっても良い(以下、第3フルペル予測方法という)。この装置では、双方向予測の予測結果を推定するため、フルペル予測部13では、双方向予測を行う必要はなく、処理量を低減することが可能となる。また、予測結果をフルペル予測部13による符号化コストに反映させることにより、双方向予測を行った場合と同様の効果を簡易に得ることが可能となる。このため、符号化効率を簡易に向上させることが可能となる。
Here, the full-pel prediction step S41 may further perform bi-directional prediction to derive an encoding cost (hereinafter referred to as a second full-pel prediction method). In this case, since bi-directional prediction is performed, it is possible to improve the accuracy of full-pel prediction. For this reason, it becomes possible to select a more appropriate encoding mode. Moreover, the encoding cost when bi-directional prediction is executed may be estimated from the encoding costs derived by the forward prediction steps S451 to S454 and the backward prediction steps S455 to S458 (hereinafter referred to as “third”). Full-pel prediction method). In this apparatus, since the prediction result of bidirectional prediction is estimated, the full-
図5を用いて、16×16の画像ブロックを2つに分割した8×16の小ブロックSb4および小ブロックSb5(図25参照)に対して実行される第1〜第3フルペル予測方法について説明する。
図5(a)は、第1フルペル予測方法について説明する処理フローである。第1フルペル予測方法では、小ブロックSb4,Sb5に対する前方向予測ステップS453および後方向予測ステップS457とが行われ、小ブロックSb4,Sb5についての前方向予測ステップS453による符号化コストC4f,C5fと、小ブロックSb4,Sb5についての後方向予測ステップS457による符号化コストC4b,C5bとが導出される。導出された符号化コストC4f,C5f,C4b,C5bは、小ブロックごとの予測方法選択ステップS46である小ブロック予測方法選択ステップS463(図3参照)において、小ブロックごとに比較され、小さい符号化コストを有する予測方向が選択される。より具体的には、小ブロック予測方法選択ステップS463内の比較ステップS463aにおいて、小ブロックSb4についての符号化コストC4fとC4bとが比較され、比較ステップS463bにおいて、小ブロックSb5についての符号化コストC5fとC5bとが比較され、それぞれの小ブロックについて、より小さい符号化コストを有する予測方向が選択される。
The first to third full-pel prediction methods executed for the 8 × 16 small block Sb4 and the small block Sb5 (see FIG. 25) obtained by dividing the 16 × 16 image block into two will be described with reference to FIG. To do.
FIG. 5A is a processing flow for explaining the first full-pel prediction method. In the first full-pel prediction method, the forward prediction step S453 and the backward prediction step S457 for the small blocks Sb4 and Sb5 are performed, and the encoding costs C4f and C5f by the forward prediction step S453 for the small blocks Sb4 and Sb5 are: The encoding costs C4b and C5b in the backward prediction step S457 for the small blocks Sb4 and Sb5 are derived. The derived encoding costs C4f, C5f, C4b, and C5b are compared for each small block in a small block prediction method selection step S463 (see FIG. 3), which is a prediction method selection step S46 for each small block, and are encoded with a small encoding. A prediction direction having a cost is selected. More specifically, the coding cost C4f and C4b for the small block Sb4 are compared in the comparison step S463a in the small block prediction method selection step S463, and the coding cost C5f for the small block Sb5 is compared in the comparison step S463b. And C5b are compared, and for each small block, the prediction direction with the lower coding cost is selected.
図5(b)は、第2フルペル予測方法について説明する処理フローである。第1フルペル予測方法との違いは、双方向予測ステップS459が行われる点である。例えば、小ブロックSb4について、前方向予測ステップS453および後方向予測ステップS457で検出された動きベクトルであるMV4fとMV4bとを利用した予測が行われる。具体的には、MV4fおよびMV4bが示す参照ピクチャ上の参照領域を平均して予測画像とし、双方向予測ステップS459の符号化コストC4gが導出される。小ブロックSb5についても同様に、MV5fとMV5bとを利用して、符号化コストC5gが導出される。 FIG. 5B is a processing flow for explaining the second full-pel prediction method. The difference from the first full-pel prediction method is that a bidirectional prediction step S459 is performed. For example, for the small block Sb4, prediction using the motion vectors MV4f and MV4b detected in the forward prediction step S453 and the backward prediction step S457 is performed. Specifically, the reference area on the reference picture indicated by MV4f and MV4b is averaged to be a predicted image, and the encoding cost C4g of the bidirectional prediction step S459 is derived. Similarly, for the small block Sb5, the encoding cost C5g is derived using the MV 5f and the MV 5b.
導出された双方向予測ステップS459の符号化コストC4g,C5gは、小ブロック予測方法選択ステップS463の変形例としての小ブロック予測方法選択ステップS465において、前方向予測ステップS453および後方向予測ステップS457の符号化コストC4f,C5f,C4b,C5bと比較される。具体的には、比較ステップS465aにおいて、小ブロックSb4についての符号化コストC4f,C4b,C4gが比較され、比較ステップS465bにおいて、小ブロックSb5についての符号化コストC5f,C5b,C5gが比較される。この結果、それぞれの小ブロックについての最小の符号化コストを有する予測方向が選択される。 The derived encoding costs C4g and C5g of the bidirectional prediction step S459 are the same as those of the forward prediction step S453 and the backward prediction step S457 in the small block prediction method selection step S465 as a modification of the small block prediction method selection step S463. It is compared with the coding costs C4f, C5f, C4b, C5b. Specifically, in the comparison step S465a, the encoding costs C4f, C4b, and C4g for the small block Sb4 are compared, and in the comparison step S465b, the encoding costs C5f, C5b, and C5g for the small block Sb5 are compared. As a result, the prediction direction with the lowest coding cost for each small block is selected.
第2フルペル予測方法では、小ブロックについてより正確な動き検出が可能となり、符号化効率の向上が期待できる。
図5(c)は、第3フルペル予測方法について説明する処理フローである。第1フルペル予測方法との違いは、双方向予測を行った場合の符号化コストの符号化コスト推定ステップS468が行われる点である。
In the second full-pel prediction method, more accurate motion detection is possible for small blocks, and an improvement in coding efficiency can be expected.
FIG. 5C is a processing flow for explaining the third full-pel prediction method. The difference from the first full-pel prediction method is that the encoding cost estimation step S468 of the encoding cost when bi-directional prediction is performed is performed.
符号化コスト推定ステップS468は、前方向予測ステップS453および後方向予測ステップS457の符号化コストC4f,C5f,C4b,C5bから、双方向予測を行った場合の符号化コストの推定値である推定符号化コストC4hおよびC5hを導出する。具体的には、小ブロックSb4についての符号化コストC4fとC4bとが「近い値」のときに、推定符号化コストC4hは、符号化コストC4fとC4bとの小さい方よりも少しだけ小さい、例えば、小さい方の値の9割の値など、と推定される。 The coding cost estimation step S468 is an estimated code that is an estimated value of the coding cost when bi-directional prediction is performed from the coding costs C4f, C5f, C4b, and C5b of the forward prediction step S453 and the backward prediction step S457. Derivation costs C4h and C5h are derived. Specifically, when the encoding costs C4f and C4b for the small block Sb4 are “near values”, the estimated encoding cost C4h is slightly smaller than the smaller one of the encoding costs C4f and C4b, for example, It is estimated that 90% of the smaller value.
ここで、「近い値」とは、例えば、式abs([C4f]−[C4b])*K<abs(abs([C4f])+abs([C4b])が真の時に、符号化コストC4fとC4bとが「近い値」と判定される。ここで、[C4f]、[C4b]は、符号化コストC4f,C4bの値を示し、Kは、所定の定数である。 Here, the “near value” is, for example, the encoding cost C4f when the formula abs ([C4f] − [C4b]) * K <abs (abs ([C4f]) + abs ([C4b])) is true. C4b is determined to be “near value.” Here, [C4f] and [C4b] indicate values of the encoding costs C4f and C4b, and K is a predetermined constant.
さらに、推定符号化コストC4h,C5hは、比較ステップS463a,S463bの変形例としての比較ステップS466a,S466bにおいて、符号化コストC4f,C5f,C4b,C5bと比較される。具体的には、比較ステップS466aにおいて、推定符号化コストC4hおよび符号化コストC4f,C4bの比較が行われ、比較ステップS466bにおいて、推定符号化コストC5hおよび符号化コストC5f,C5bの比較が行われる。この結果、それぞれの小ブロックについての最小の符号化コストを有する予測方向が選択される。 Further, the estimated encoding costs C4h and C5h are compared with the encoding costs C4f, C5f, C4b, and C5b in comparison steps S466a and S466b as modifications of the comparison steps S463a and S463b. Specifically, in the comparison step S466a, the estimated coding cost C4h and the coding costs C4f and C4b are compared, and in the comparison step S466b, the estimated coding cost C5h and the coding costs C5f and C5b are compared. . As a result, the prediction direction with the lowest coding cost for each small block is selected.
第3フルペル予測方法では、双方向予測を行う必要はなく、処理量を低減することが可能となる。また、双方向予測を行った場合と同様の効果を簡易に得ることが可能となる。このため、符号化効率を簡易に向上させることが可能となる。
(1−2)
上記実施形態において、小ブロックフルペル予測ステップS45と予測方向選択ステップS46とは、逐次処理されるものであっても、並列処理されるものであってもよい。
In the third full-pel prediction method, it is not necessary to perform bi-directional prediction, and the processing amount can be reduced. In addition, it is possible to easily obtain the same effect as when bidirectional prediction is performed. For this reason, encoding efficiency can be easily improved.
(1-2)
In the above embodiment, the small block full-pel prediction step S45 and the prediction direction selection step S46 may be sequentially processed or may be processed in parallel.
図6を用いて、16×16の画像ブロックを1つに分割した16×16の小ブロックSb1(図25参照)に対する小ブロックフルペル予測ステップS45と予測方向選択ステップS46との処理順序について説明する。
図6(a)は、小ブロックフルペル予測ステップS45と予測方向選択ステップS46とを逐次処理する場合の処理フローを示している。詳しい説明は、図3を用いて上記実施形態において行ったので省略する。
The processing order of the small block full-pel prediction step S45 and the prediction direction selection step S46 for the 16 × 16 small block Sb1 (see FIG. 25) obtained by dividing the 16 × 16 image block into one will be described with reference to FIG. To do.
FIG. 6A shows a processing flow when the small block full-pel prediction step S45 and the prediction direction selection step S46 are sequentially processed. Detailed description has been made in the above embodiment with reference to FIG.
図6(b)は、小ブロックフルペル予測ステップS45と予測方向選択ステップS46とを並列処理する場合の処理フローを示している。ここでは、前方向予測ステップS451と後方向予測ステップS455とそれぞれの符号化コストの比較が並列実行される。具体的には、エンコーダ1のメモリ26に前方向予測ステップS451および後方向予測ステップS455のために2枚の参照ピクチャを格納し、並列に動き推定および符号化コスト計算を実行する。最初の数回のコスト計算の最良値を比較し、符号化コストが大きい参照方向の動き推定を打ち切る。
FIG. 6B shows a processing flow when the small block full pel prediction step S45 and the prediction direction selection step S46 are processed in parallel. Here, the forward prediction step S451, the backward prediction step S455, and the respective encoding costs are compared in parallel. Specifically, two reference pictures are stored in the
通常、動き推定では、有望な探索開始位置と、その周辺について符号化コスト計算を行い、その中で一番良い候補を選択する。この際、符号化コストの計算は、10回から1000回は行われる。本発明の場合、予測方向の選択に不必要な動き推定処理を途中で打ち切ることができ、フルペル予測の処理量を削減することが可能となる。 Usually, in motion estimation, encoding cost calculation is performed for a probable search start position and its surroundings, and the best candidate is selected. At this time, the encoding cost is calculated 10 to 1000 times. In the case of the present invention, the motion estimation process unnecessary for selection of the prediction direction can be stopped halfway, and the processing amount of full-pel prediction can be reduced.
ここで、メモリ26の割り当て量を、1枚の参照ピクチャを格納する場合と同じにするため、画素情報の間引かれた2枚の参照ピクチャを用いて、動き推定することとしても良い。
また、小ブロックフルペル予測ステップS45と予測方向選択ステップS46とは、それぞれの小ブロックごとに並列処理されるだけでなく、全ての小ブロックについて並列処理されるものであっても良い。
Here, in order to make the allocation amount of the
Further, the small block full pel prediction step S45 and the prediction direction selection step S46 may be performed not only in parallel for each small block but also in parallel for all small blocks.
図7を用いて、16×16の画像ブロックを4種類の分割方法で分割した場合の全ての小ブロックSb1〜Sb9に対する、小ブロックフルペル予測ステップS45と予測方向選択ステップS46との処理順序について説明する。
図7では、全ての小ブロックSb1〜Sb9に対する、小ブロックフルペル予測ステップS45と予測方向選択ステップS46とが並列実行されている。また、図6(b)を用いて説明したように、それぞれの小ブロックごとに、不必要な予測方向への動き推定の処理が打ち切られる。さらに、小ブロックごとの符号化コストの比較により、符号化コストが小さくならない小ブロックについての動き推定の処理が打ち切られる。
Referring to FIG. 7, the processing order of small block full-pel prediction step S45 and prediction direction selection step S46 for all small blocks Sb1 to Sb9 when a 16 × 16 image block is divided by four types of division methods is used. explain.
In FIG. 7, the small block full pel prediction step S45 and the prediction direction selection step S46 are executed in parallel for all the small blocks Sb1 to Sb9. Further, as described with reference to FIG. 6B, the motion estimation process in the unnecessary prediction direction is terminated for each small block. Furthermore, the motion estimation process for a small block whose encoding cost does not decrease is terminated by comparing the encoding costs for each small block.
すなわち、小ブロックごとに、不要な予測方向への動き推定処理を打ち切るだけでなく、分割方法の選択に不要な小ブロックへの動き推定処理も打ち切ることが可能となる。これにより、不必要な動き推定処理をさらに削減することが可能となり、フルペル予測の処理量をさらに削減することが可能となる。 That is, for each small block, not only the motion estimation process in the unnecessary prediction direction is aborted, but also the motion estimation process to the small block unnecessary for selection of the division method can be aborted. Thereby, unnecessary motion estimation processing can be further reduced, and the processing amount of full-pel prediction can be further reduced.
(1−3)
上記実施形態において、小ブロックフルペル予測ステップS45と予測方向選択ステップS46とは、小ブロックごとに逐次処理されるものであってもよい。
図8を用いて、16×16の画像ブロックを2つに分割した16×8の小ブロックSb2,Sb3(図25参照)に対する小ブロックフルペル予測ステップS45と予測方向選択ステップS46との処理順序について説明する。
(1-3)
In the above embodiment, the small block full-pel prediction step S45 and the prediction direction selection step S46 may be sequentially processed for each small block.
The processing order of the small block full-pel prediction step S45 and the prediction direction selection step S46 for 16 × 8 small blocks Sb2 and Sb3 (see FIG. 25) obtained by dividing a 16 × 16 image block into two using FIG. Will be described.
小ブロックフルペル予測ステップS45と予測方向選択ステップS46とが逐次処理される場合(図8(a)参照)、前方向予測ステップS452、後方向予測ステップS456、および小ブロックごとの予測方法選択ステップS46である小ブロック予測方法選択ステップS463は、以下の順番で行われる。小ブロックSb2についての前方向予測ステップS452’、小ブロックSb2についての後方向予測ステップS456’、小ブロックSb3についての前方向予測ステップS452”、小ブロックSb3についての後方向予測ステップS456”、小ブロックSb2についての予測方法選択ステップS46である小ブロック予測方法選択ステップS462’、小ブロックSb3についての小ブロック予測方法選択ステップS462”の順である。 When the small block full-pel prediction step S45 and the prediction direction selection step S46 are sequentially processed (see FIG. 8A), the forward prediction step S452, the backward prediction step S456, and the prediction method selection step for each small block The small block prediction method selection step S463, which is S46, is performed in the following order. Forward prediction step S452 ′ for small block Sb2, backward prediction step S456 ′ for small block Sb2, forward prediction step S452 ″ for small block Sb3, backward prediction step S456 ″ for small block Sb3, small block The order is the small block prediction method selection step S462 ′, which is the prediction method selection step S46 for Sb2, and the small block prediction method selection step S462 ″ for the small block Sb3.
一方、小ブロックフルペル予測ステップS45と予測方向選択ステップS46とが、小ブロックごとに逐次処理される場合には(図8(b)参照)、まず、小ブロックSb2についての処理が行われ、その後、小ブロックSb3についての処理が行われる。すなわち、まず、小ブロックSb2についての前方向予測ステップS452’、後方向予測ステップS456’、小ブロック予測方法選択ステップS462’が行われる。その後、小ブロックSb3についての前方向予測ステップS452”、後方向予測ステップS456”、小ブロック予測方法選択ステップS462”が行われる。また、この際に、小ブロックごとの処理は、(1−2)で説明したように、並列処理されてもよい。例えば、小ブロック1についての前方向予測ステップS452”、後方向予測ステップS456”、小ブロック予測方法選択ステップS462”が並列実行されても良い。
On the other hand, when the small block full-pel prediction step S45 and the prediction direction selection step S46 are sequentially processed for each small block (see FIG. 8B), first, processing for the small block Sb2 is performed. Thereafter, the process for the small block Sb3 is performed. That is, first, a forward prediction step S452 ', a backward prediction step S456', and a small block prediction method selection step S462 'for the small block Sb2 are performed. Thereafter, the forward prediction step S452 ", backward prediction step S456", and small block prediction method selection step S462 "for the small block Sb3 are performed. At this time, the processing for each small block is (1-2 For example, the forward prediction step S452 ", the backward prediction step S456", and the small block prediction method selection step S462 "for the
(1−4)
図9及び図10を用いてフルペル予測部13の変形例について説明する。図9は、画像ブロックについての符号化モード決定の処理フローを示すブロック図である。図9の画像ブロックについての符号化モード決定の処理フローは、フルペル予測部13により実行されるフルペル予測ステップS41’と、分割方法候補選択部14により実行される分割方法候補選択ステップS42’とを備えている。
(1-4)
A modification of the full-
フルペル予測ステップS41’は、小ブロックフルペル予測ステップS45と、符号化コスト換算ステップS66とを備えている。
小ブロックフルペル予測ステップS45は、16×16の画像ブロックを4種類の分割方法候補により分割したM×N((M,N)=(16,16),(16,8),(8,16),(8,8))の小ブロックSb1〜Sb9(図25参照)のそれぞれに対して、整数画素精度の動き推定を行い、小ブロック毎の符号化コストおよび動きベクトルを導出する。具体的には、それぞれの小ブロックSb1〜Sb9に対して、前方向予測ステップS451〜ステップS454および後方向予測ステップS455〜ステップS458が行われている。すなわち、前方向予測ステップS451〜ステップS454および後方向予測ステップS455〜ステップS458では、それぞれの分割方法候補により分割された小ブロックの個数に応じた回数の処理が行われている。図9では、この回数を処理ブロックからの矢印の本数で表している。
The full-pel prediction step S41 ′ includes a small block full-pel prediction step S45 and an encoding cost conversion step S66.
In the small block full-pel prediction step S45, M × N ((M, N) = (16,16), (16,8), (8, 16), (8, 8)) for each of the small blocks Sb1 to Sb9 (see FIG. 25), motion estimation with integer pixel accuracy is performed to derive the coding cost and motion vector for each small block. Specifically, forward prediction steps S451 to S454 and backward prediction steps S455 to S458 are performed on each of the small blocks Sb1 to Sb9. That is, in forward prediction steps S451 to S454 and backward prediction steps S455 to S458, processing is performed a number of times according to the number of small blocks divided by the respective division method candidates. In FIG. 9, this number is represented by the number of arrows from the processing block.
符号化コスト換算ステップS66は、前方向予測ステップS451〜ステップS454の符号化コストと後方向予測ステップS455〜ステップS458の符号化コストを、それぞれ個別に、画像ブロック単位に換算する。具体的には、画像ブロック単位に換算した換算値とは、小ブロックフルペル予測ステップS45によって得られた各小ブロックの各予測符号の符号化コストに、当該パーティションの分割数を乗じた値である。 In the encoding cost conversion step S66, the encoding costs in the forward prediction steps S451 to S454 and the encoding costs in the backward prediction steps S455 to S458 are individually converted into image block units. Specifically, the converted value converted into image block units is a value obtained by multiplying the encoding cost of each prediction code of each small block obtained by the small block full-pel prediction step S45 by the number of divisions of the partition. is there.
分割方法候補選択ステップS42’は、符号化コスト導出ステップS47が導出した画像ブロック単位での符号化コストを比較し、符号化コストが小さい2種類の分割方法候補を選択する。
図10を用いて、フルペル予測ステップS41’と分割方法候補選択ステップS42’との処理について詳しい説明を加える。なお、上述の様に、フルペル予測ステップS41’は、小ブロックフルペル予測ステップS45と、符号化コスト換算ステップS66とを備えている。
In the division method candidate selection step S42 ′, the coding costs in units of image blocks derived by the coding cost deriving step S47 are compared, and two types of division method candidates with low coding costs are selected.
With reference to FIG. 10, a detailed description will be given of the processing of the full-pel prediction step S41 ′ and the division method candidate selection step S42 ′. As described above, the full-pel prediction step S41 ′ includes a small block full-pel prediction step S45 and an encoding cost conversion step S66.
小ブロックフルペル予測ステップS45は、小ブロックSb1〜Sb9の全てに対して、整数画素精度の前方向予測(図10では、fwと記載)と後方向予測(図10では、bwと記載)と双方向予測(図10では、bid)を行い、それぞれの参照方向に対する符号化コストを導出する。図10では、それぞれの符号化コストを例示している。例えば、小ブロックSb1では、前方向予測の符号化コストが(40)、後方向予測の符号化コストが(70)である。 The small block full-pel prediction step S45 includes forward prediction (denoted as fw in FIG. 10) and backward prediction (denoted as bw in FIG. 10) with integer pixel accuracy for all of the small blocks Sb1 to Sb9. Bidirectional prediction (bid in FIG. 10) is performed, and the coding cost for each reference direction is derived. FIG. 10 illustrates each encoding cost. For example, in the small block Sb1, the encoding cost for forward prediction is (40), and the encoding cost for backward prediction is (70).
符号化コスト換算ステップS66は、前方向予測ステップS451〜ステップS454の符号化コストと後方向予測ステップS455〜ステップS458の符号化コストとを、それぞれ個別に、画像ブロック単位の符号化コストに換算する。具体的には、Sb1のfw、bw、bidの符号化コストは1倍し、Sb2〜Sb5のfw,bw,bidの符号化コストは2倍し、Sb6〜Sb9のFW、bw、bidの符号化コストは4倍する。 In the encoding cost conversion step S66, the encoding costs in the forward prediction steps S451 to S454 and the encoding costs in the backward prediction steps S455 to S458 are individually converted into the encoding costs for each image block. . Specifically, the coding cost of fw, bw, and bid of Sb1 is multiplied by 1, the coding cost of fw, bw, and bid of Sb2 to Sb5 is doubled, and the codes of FW, bw, and bid of Sb6 to Sb9 The cost will be quadrupled.
上記実施形態では、図11(a)に示すように、フルペル予測ステップS41’を実行するフルペル予測部13は、それぞれの小ブロックSb1〜Sb9に対して、前方向予測ステップS451〜S454および後方向予測ステップS455〜S458のみを実行すると説明した(以下、第1フルペル予測方法という)。ここで、フルペル予測ステップS41’は、さらに双方向予測を実行し符号化コストを導出するものであっても良い(以下、第2フルペル予測方法という)。また、前方向予測ステップS451〜S454および後方向予測ステップS455〜S458により導出された符号化コストから双方向予測を実行した場合の符号化コストを推定するものであっても良い(以下、第3フルペル予測方法という)。
In the said embodiment, as shown to Fig.11 (a), the full
分割方法候補選択ステップS42’では、フルペル予測ステップS41’により導出された画像ブロック単位での符号化コストを比較し、符号化コストが小さい2種類の分割方法候補を選択する。図10では、16×16の分割方法のfw(符号化コスト(40))および16×16の分割方法のbw(符号化コスト(70))が分割方法候補として選択される。 In the division method candidate selection step S42 ', the encoding costs for each image block derived in the full-pel prediction step S41' are compared, and two types of division method candidates with low encoding costs are selected. In FIG. 10, fw (encoding cost (40)) of the 16 × 16 division method and bw (encoding cost (70)) of the 16 × 16 division method are selected as division method candidates.
〈エンコーダ1の効果〉
エンコーダ1では、分割方法候補選択ステップS42’において、フルペル予測ステップS41’が導出した画像ブロック単位での符号化コストを比較し、符号化コストが小さい2種類の分割方法候補を選択しているため、全ての小ブロックSb1〜Sb9についてサブペル予測を行う必要が無い。このため、サブペル予測の回数を削減でき、処理量を低減することが可能となる。また、必要な小ブロックにはサブペル予測を行うため、符号化効率を維持することが可能となる。
<Effect of
In the
特に、この実施形態では、前記実施形態とは異なり、分割方法候補選択ステップS42’までに各分割方法の予測方向が絞り込まれておらず、すなわち各分割方法の各予測方向ごとにそれぞれ符号化コストが分割方法候補選択ステップS42’での比較の対象となっている。言い換えると、フルペル予測部13が小ブロックのピクチャ参照方向ごとの符号化コストを画像ブロック単位に換算して符号化モードを導出するため、一つの小ブロックにおいて異なるピクチャ参照方向の符号化モードも分割方法候補選択ステップS42での比較対象となる。そのため、図10に示す実施形態の画像ブロック場合は、最小の符号化コストである16×16の分割方法のfw(符号化コスト(40))および16×16の分割方法のbw(符号化コスト(70))が2種類の分割方法候補として選択される。この実施形態の画像ブロックに対して前記実施形態の装置を適用した場合は、フルペル予測ステップS41において16×16の分割方法についてはbwが放棄されるため、例えば第2候補として16×8分割(sb2がbidで、sb3がbidであり、符号化コストが77)が選択されてしまう。
In particular, in this embodiment, unlike the previous embodiment, the prediction direction of each division method has not been narrowed down until the division method candidate selection step S42 ′, that is, the encoding cost for each prediction direction of each division method. Is a comparison target in the division method candidate selection step S42 ′. In other words, since the full-
なお、図11(b)に示すように、符号化コスト換算ステップS66を小ブロックフルペル予測ステップS45内で行ってもよい。例えば、符号化換算処理は2倍や4倍といった簡単な計算であるため、小ブロックフルペル予測ステップS45内にマージしてもい。また、換算値は、小ブロックフルペル予測ステップS45中に1探索位置ごとに算出してもよいし、小ブロックフルペル予測ステップS45後に求めてもよい。 In addition, as shown in FIG.11 (b), you may perform encoding cost conversion step S66 within small block full pel prediction step S45. For example, since the encoding conversion process is a simple calculation such as 2 or 4 times, it may be merged into the small block full-pel prediction step S45. The converted value may be calculated for each search position during the small block full pel prediction step S45, or may be obtained after the small block full pel prediction step S45.
(2)分割方法候補選択部14の変形例
分割方法候補選択ステップS42が選択する分割方法候補は、2種類に限られない。4種類の分割方法候補のうち、1〜3種類の分割方法候補を選択するものであれば良い。
(3)サブペル予測部15の変形例
(3−1)
上記実施形態では、サブペル予測ステップS43は、分割方法候補選択ステップS42において選択された2種類の分割方法候補により分割された小ブロックのそれぞれについて、前方向予測、後方向予測、および双方向予測の3種類の予測方向へのサブペル予測を行うと説明した。
(2) Modification of Division Method
(3) Modification of sub-pel prediction unit 15 (3-1)
In the above embodiment, the sub-pel prediction step S43 performs forward prediction, backward prediction, and bidirectional prediction for each of the small blocks divided by the two types of division method candidates selected in the division method candidate selection step S42. It has been described that sub-pel prediction in three types of prediction directions is performed.
ここで、サブペル予測ステップS43は、フルペル予測ステップS41の動き推定の結果に基づいて、各分割候補において3種類の予測方向のうち実際に行うものを決定し、決定したものについてのみサブペル予測を行っても良い。これについて、図12を用いて説明する。 Here, the sub-pel prediction step S43 determines what is actually performed among the three types of prediction directions in each division candidate based on the motion estimation result of the full-pel prediction step S41, and performs sub-pel prediction only for the determined one. May be. This will be described with reference to FIG.
まず、フルペル予測ステップS41は、それぞれのパーティションに対する前方向および後方向の整数画素精度の動き推定を行う。分割方法候補選択ステップS42は、フルペル予測ステップS41の整数画素精度の動き推定に基づいて、分割方法候補を選択する。さらに、サブペル予測ステップS43は、分割方法候補選択ステップS42で選択された分割方法候補により分割された小ブロックについてのサブペル予測の予測方向を判断する。 First, the full-pel prediction step S41 performs motion estimation with forward and backward integer pixel accuracy for each partition. In the division method candidate selection step S42, a division method candidate is selected based on the motion estimation with integer pixel accuracy in the full-pel prediction step S41. Further, the sub-pel prediction step S43 determines the prediction direction of the sub-pel prediction for the small block divided by the division method candidate selected in the division method candidate selection step S42.
より具体的には、以下の3つのケースにより予測方向が判断される。
第1のケースは、前方向予測の符号化コストと後方向予測の符号化コストとがほぼ一致する場合である。この場合、前方向予測、後方向予測、および双方向予測の3種類の予測方向について、非整数画素精度の動き推定が実行される。また、この場合に、前方向予測および後方向予測の2種類の予測方向についてのみ、非整数画素精度の動き推定が実行されてもよい。
More specifically, the prediction direction is determined by the following three cases.
The first case is a case where the encoding cost for forward prediction and the encoding cost for backward prediction substantially match. In this case, motion estimation with non-integer pixel accuracy is performed for three types of prediction directions: forward prediction, backward prediction, and bidirectional prediction. Further, in this case, motion estimation with non-integer pixel accuracy may be executed only for two types of prediction directions: forward prediction and backward prediction.
第2のケースは、第1のケース以外で、前方向予測の符号化コストが後方向予測の符号化コストよりも小さい場合である。この場合、前方向予測による非整数画素精度の動き推定が実行され、後方向予測および双方向予測による非整数画素精度の動き推定は実行されない。 The second case is a case where the encoding cost for forward prediction is smaller than the encoding cost for backward prediction except for the first case. In this case, motion estimation with non-integer pixel accuracy by forward prediction is executed, and motion estimation with non-integer pixel accuracy by backward prediction and bidirectional prediction is not executed.
第3のケースは、第1のケース以外で、前方向予測の符号化コストが後方向予測の符号化コストよりも大きい場合である。この場合、後方向予測による非整数画素精度の動き推定が実行され、前方向予測および双方向予測による非整数画素精度の動き推定は実行されない。 The third case is a case where the encoding cost of the forward prediction is larger than the encoding cost of the backward prediction except for the first case. In this case, motion estimation with non-integer pixel accuracy by backward prediction is executed, and motion estimation with non-integer pixel accuracy by forward prediction and bidirectional prediction is not executed.
第2及び第3のケースのように前方向予測と後向予測の符号化コストが異なる場合は符号化コストが小さい方のみを選択するのは、一方の符号化コストが大きい場合は双方向予測で符号化コストが小さくなることが期待できないからである。
以上に述べたように、上記3つのケースの判断により、必要な参照方向を参照して非整数画素精度の動き推定を実行することが可能であるため、サブペル予測の処理量を削減でき、サブペル予測の処理時間を短縮可能となる。
When the encoding costs of forward prediction and backward prediction are different as in the second and third cases, only the one with the smaller encoding cost is selected. When one of the encoding costs is large, bi-directional prediction is selected. This is because the encoding cost cannot be expected to be small.
As described above, since it is possible to perform motion estimation with non-integer pixel accuracy by referring to the required reference direction by the determination of the above three cases, it is possible to reduce the processing amount of sub-pel prediction, The processing time for prediction can be shortened.
(3−2)
上記(3−1)の判断に加えて、サブペル予測ステップS43は、分割方法候補選択ステップS42において選択された分割方法候補のうちのさらに一部の分割方法候補に対してサブペル予測を行うものであってもよい。すなわち、この場合は、分割方法候補選択ステップS42において選択された分割方法候補でもサブペル予測が行われないものが発生する。つまり、複数の符号化モードから選択された一部の符号化モードの全部についてサブペル予測を行う必要がなく、処理量を削減できる。また、処理量を一定に保つように一部の符号化モードのうちの少なくとも一部の符号化モードを選択することも可能となる。
(3-2)
In addition to the determination in (3-1) above, the sub-pel prediction step S43 performs sub-pel prediction on a part of the division method candidates selected in the division method candidate selection step S42. There may be. That is, in this case, some of the division method candidates selected in the division method candidate selection step S42 are not subjected to sub-pel prediction. That is, it is not necessary to perform sub-pel prediction for all of some of the encoding modes selected from the plurality of encoding modes, and the processing amount can be reduced. It is also possible to select at least some of the coding modes among some of the coding modes so as to keep the processing amount constant.
例えば、上記(3−1)で判断された予測方向に基づいて、サブペル予測の対象となる小ブロックごとの必要処理量が推定される。さらに、画像ブロック全体についての必要処理量の合計が、画像ブロックのサブペル予測に割り当てられた処理余裕量を超えないように、サブペル予測を行う小ブロックの候補を絞り込む。このため、サブペル予測ステップS43は分割方法候補選択ステップS42によって選択された符号化モード(具体的には、分割方法候補)の全てを選択しないこともあり得るが、その場合でも符号化コストが低い分割方法候補は選択されているため問題が少ない。 For example, based on the prediction direction determined in (3-1) above, the required processing amount for each small block to be subjected to sub-pel prediction is estimated. Further, narrow block candidates to be subjected to sub-pel prediction are narrowed down so that the total required processing amount for the entire image block does not exceed the processing margin allocated to the sub-pel prediction of the image block. For this reason, the sub-pel prediction step S43 may not select all of the coding modes (specifically, the division method candidates) selected in the division method candidate selection step S42, but even in that case, the coding cost is low. Since the division method candidates are selected, there are few problems.
より具体的には、図13のサブペル予測の動作処理フローを用いて説明する。なお、説明の都合上、16×16の小ブロックSb1の1予測方向あたりの必要処理量を[4]、16×8,8×16の小ブロックSb2〜Sb5の必要処理量をそれぞれ[2]、8×8の小ブロックSb6〜Sb9の必要処理量をそれぞれ[1]として説明を行う。小ブロックの1予測方向あたりのサブペル予測の必要処理量は、小ブロックの画素数に比例するためである。 More specifically, the operation processing flow for sub-pel prediction in FIG. 13 will be described. For convenience of explanation, the required processing amount per prediction direction of the 16 × 16 small block Sb1 is [4], and the required processing amounts of the 16 × 8 and 8 × 16 small blocks Sb2 to Sb5 are [2]. , 8 × 8 small blocks Sb6 to Sb9 will be described as [1]. This is because the required processing amount of sub-pel prediction per prediction direction of a small block is proportional to the number of pixels of the small block.
処理は、画像ブロック単位で行われる(ステップS30〜ステップS37)。まず、16×16の画像ブロックのサブペル予測に割り当てられた処理量が処理余裕量として設定される(ステップS30)。次に、分割方法候補毎の処理が行われる(ステップS31〜ステップS37)。 Processing is performed in units of image blocks (steps S30 to S37). First, the processing amount allocated to the sub-pel prediction of the 16 × 16 image block is set as the processing margin amount (step S30). Next, processing for each candidate division method is performed (steps S31 to S37).
分割方法候補毎の処理は、分割方法候補選択ステップS42において選択された分割方法候補のうち、フルペル予測による符号化コストが小さいものから順番に行われる。まず、(3−1)で説明した方法により、小ブロックごとのサブペル予測の予測方向が選択され、小ブロックごとのサブペル予測の必要処理量が推定される。さらに、推定された小ブロックごとの必要処理量は、分割方法候補単位で合計され、分割方法候補全体の必要処理量が算出される(ステップS31)。 The processing for each division method candidate is performed in order from the division method candidate selected in the division method candidate selection step S42 in ascending order of encoding cost by full-pel prediction. First, the prediction direction of sub-pel prediction for each small block is selected by the method described in (3-1), and the necessary processing amount of sub-pel prediction for each small block is estimated. Further, the estimated necessary processing amount for each small block is summed up in units of division method candidates, and the necessary processing amount of the entire division method candidates is calculated (step S31).
例えば、16×8の小ブロックSb2に対して、1方向の予測方向が選択された場合には(例えば、(3−1)の第2のケースまたは第3のケース)、小ブロックSb2の1予測方向あたりの必要処理量[2]に、予測方向から定まる定数[1]を乗じた値[2]が小ブロックSb2の必要処理量として算出される。また、3方向の予測方向が選択された場合には(例えば、(3−1)の第1のケース)、小ブロックSb2の1予測方向あたりの必要処理量[2]に、予測方向から定まる定数[2]を乗じた値[4]が小ブロックSb2の必要処理量として算出される。ここで、3方向の予測方向が選択されている場合に予測方向から定まる定数を[2]としている理由は、双方向予測については、動き推定処理は行わず、前方向予測および後方向予測の結果を利用した予測を行うことができるからである(図5(b)又は(c)で説明した方法をサブペル予測に利用可能である。)。このようにして推定した小ブロック毎の必要処理量は、分割方法単位で合計され、分割方法候補の必要処理量が算出される。 For example, when one prediction direction is selected for the 16 × 8 small block Sb2 (for example, the second case or the third case (3-1)), 1 of the small block Sb2 is selected. A value [2] obtained by multiplying the required processing amount [2] per prediction direction by a constant [1] determined from the prediction direction is calculated as the required processing amount of the small block Sb2. When three prediction directions are selected (for example, the first case of (3-1)), the required processing amount per prediction direction [2] of the small block Sb2 is determined from the prediction direction. A value [4] multiplied by the constant [2] is calculated as the required processing amount of the small block Sb2. Here, the reason that the constant determined from the prediction direction when the three prediction directions are selected is [2]. For bidirectional prediction, the motion estimation process is not performed, and the forward prediction and the backward prediction are performed. This is because prediction using the result can be performed (the method described in FIG. 5B or 5C can be used for sub-pel prediction). The necessary processing amount for each small block estimated in this way is summed up in units of division methods, and the necessary processing amount of the division method candidate is calculated.
算出された必要処理量は、ステップS30で設定された処理余裕量と比較され、必要処理量が処理余裕量より大きくない場合には、処理余裕があると判定される(ステップS32)。
処理余裕があると判定された場合には、(3−1)で選択された予測方向に対する小ブロックごとのサブペル予測が行われる(ステップS33)。さらに、処理余裕量と分割方法候補の必要処理量との差が処理余裕量として設定され、次の分割方法候補に対する処理が開始される。
The calculated required processing amount is compared with the processing margin amount set in step S30, and if the required processing amount is not larger than the processing margin amount, it is determined that there is a processing margin (step S32).
If it is determined that there is a processing margin, sub-pel prediction is performed for each small block in the prediction direction selected in (3-1) (step S33). Further, the difference between the processing margin amount and the required processing amount of the division method candidate is set as the processing margin amount, and processing for the next division method candidate is started.
処理余裕が無いと判定された場合には、フルペル予測に基づいて最小の符号化コストを示すと判断される1つの予測方向が小ブロック毎に選択され(ステップS55)、小ブロックごとの必要処理量が分割方法候補単位で合計され、分割方法候補の必要処理量が算出される(ステップS35)。例えば、16×8の小ブロックSb2,Sb3に対して、小ブロックSb2,Sb3の1予測方向あたりの必要処理量[2]が合計され、16×8の分割方法候補の必要処理量が[4]と算出される。算出された必要処理量は、ステップS30で設定された処理余裕量と比較され、必要処理量が処理余裕量より小さい場合には、処理余裕があると判定される(ステップS36)。 If it is determined that there is no processing margin, one prediction direction determined to indicate the minimum coding cost based on full-pel prediction is selected for each small block (step S55), and necessary processing for each small block is performed. The amounts are totaled in units of division method candidates, and the necessary processing amount of the division method candidates is calculated (step S35). For example, for the 16 × 8 small blocks Sb2 and Sb3, the necessary processing amount [2] per prediction direction of the small blocks Sb2 and Sb3 is totaled, and the necessary processing amount of the 16 × 8 division method candidate is [4 ] Is calculated. The calculated required processing amount is compared with the processing margin amount set in step S30. If the required processing amount is smaller than the processing margin amount, it is determined that there is a processing margin (step S36).
処理余裕があると判定された場合には、フルペル予測に基づいて最小の符号化コストを示すと判断される1つの予測方向に対するサブペル予測が行われる(ステップS37)。さらに、処理余裕量とステップS35で算出された分割方法候補の必要処理量との差が処理余裕量として設定され(ステップ34)、次の分割方法候補に対する処理が開始される。 If it is determined that there is a processing margin, sub-pel prediction is performed for one prediction direction that is determined to indicate the minimum coding cost based on full-pel prediction (step S37). Further, the difference between the processing margin amount and the necessary processing amount of the division method candidate calculated in step S35 is set as the processing margin amount (step 34), and processing for the next division method candidate is started.
ステップS36で処理余裕がないと判定された場合には、サブペル予測は行わず、次の画像ブロックの処理を開始する。
(3−2−1)
次に、図14を用いて、第1の具体例を説明する。この具体例では、分割方法候補選択ステップ42において、第1候補として16×16分割方法(符号化コスト(40))が選択され、第2候補として16×8分割方法(符号化コスト(43))が選択されている。
If it is determined in step S36 that there is no processing margin, sub-pel prediction is not performed and processing of the next image block is started.
(3-2-1)
Next, a first specific example will be described with reference to FIG. In this specific example, in the division method
図14に示すように、処理は、画像ブロック単位で行われる(ステップS30〜ステップS37)。まず、16×16の画像ブロックのサブペル予測に割り当てられた処理量が処理余裕量[8]として設定される(ステップS30)。次に、分割方法候補毎の処理が行われる(ステップS31〜S37)。 As shown in FIG. 14, the process is performed in units of image blocks (step S30 to step S37). First, the processing amount allocated to the sub-pel prediction of the 16 × 16 image block is set as the processing margin amount [8] (step S30). Next, processing is performed for each candidate division method (steps S31 to S37).
分割方法候補毎の処理は、分割方法候補選択ステップS42において選択された分割方法候補のうち、フルペル予測による符号化コストが小さいものから順番に行われる。
最初は、16×16の分割方法(符号化コスト(40))が対象になる。具体的には、16×16の分割方法において、まず、(3−1)で説明した方法により、小ブロックSb1のサブペル予測の予測方向が選択される。この場合は、第2のケースであり、前方向予測fwの符号化コストが後方向予測bwの符号化コストよりも小さい場合である。そのため、前方向予測による非整数画素精度の動き推定が実行され、後方向予測および双方向予測による非整数画素精度の動き推定は実行されない。この結果、小ブロックSb1のサブペル予測の必要処理量[4]が推定される。さらに、16×16の分割方法の必要処理量[4]が算出される(ステップS31)。
The processing for each division method candidate is performed in order from the division method candidate selected in the division method candidate selection step S42 in ascending order of encoding cost by full-pel prediction.
Initially, the 16 × 16 division method (encoding cost (40)) is targeted. Specifically, in the 16 × 16 division method, first, the prediction direction of the sub-pel prediction of the small block Sb1 is selected by the method described in (3-1). This case is a second case where the coding cost of the forward prediction fw is smaller than the coding cost of the backward prediction bw. Therefore, motion estimation with non-integer pixel accuracy by forward prediction is executed, and motion estimation with non-integer pixel accuracy by backward prediction and bidirectional prediction is not executed. As a result, the necessary processing amount [4] for sub-pel prediction of the small block Sb1 is estimated. Further, the required processing amount [4] of the 16 × 16 division method is calculated (step S31).
算出された必要処理量[4]は、ステップS50で設定された処理余裕量[8]と比較され、必要処理量[4]が処理余裕量[8]より大きくないため、処理余裕があると判定される(ステップS32)。
この場合は、(3−1)で選択された予測方向(fw)に対する小ブロックSb1のサブペル予測が行われる(ステップS33)。さらに、処理余裕量[8]と分割方法候補の必要処理量[4]との差が処理余裕量[4]として設定される(ステップS34)。
The calculated required processing amount [4] is compared with the processing margin amount [8] set in step S50. Since the required processing amount [4] is not larger than the processing margin amount [8], there is a processing margin. Determination is made (step S32).
In this case, sub-pel prediction of the small block Sb1 with respect to the prediction direction (fw) selected in (3-1) is performed (step S33). Further, the difference between the processing margin [8] and the necessary processing amount [4] of the division method candidate is set as the processing margin [4] (step S34).
次に、16×8の分割方法(符号化コスト(42))が対象になる。具体的には、16×8の分割方法において、まず、(3−1)で説明した方法により、第2のケースとして小ブロックSb2のサブペル予測の予測方向が選択され(fw)、小ブロックSb2のサブペル予測の必要処理量[2]が推定される。また、第3のケースとして小ブロックSb3のサブペル予測の予測方向が選択され(bw)、小ブロックSb3のサブペル予測の必要処理量[2]が推定される。さらに、推定された小ブロックSb2の必要処理量[2]と小ブロックSb3の必要処理量[2]は合計され、16×8の分割方法候補の必要処理量[4]が算出される(ステップS31)。 Next, the 16 × 8 division method (encoding cost (42)) is targeted. Specifically, in the 16 × 8 division method, first, the prediction direction of the sub-pel prediction of the small block Sb2 is selected as the second case by the method described in (3-1) (fw), and the small block Sb2 The required processing amount [2] for sub-pel prediction is estimated. As a third case, the prediction direction of the sub-pel prediction of the small block Sb3 is selected (bw), and the necessary processing amount [2] of the sub-pel prediction of the small block Sb3 is estimated. Further, the estimated necessary processing amount [2] of the small block Sb2 and the necessary processing amount [2] of the small block Sb3 are summed to calculate the necessary processing amount [4] of the 16 × 8 division method candidate (step). S31).
算出された必要処理量[4]は、ステップS34で設定された処理余裕量[4]と比較され、必要処理量[4]が処理余裕量[4]より大きくないため、処理余裕があると判定される(ステップS32)。
この場合は、(3−1)で選択された予測方向(fw)に対する小ブロックSb2のサブペル予測が行われ、さらに(3−1)で選択された予測方向(bw)に対する小ブロックSb3のサブペル予測が行われる(ステップS33)。
The calculated required processing amount [4] is compared with the processing margin amount [4] set in step S34, and the required processing amount [4] is not larger than the processing margin amount [4]. Determination is made (step S32).
In this case, sub-pel prediction of the small block Sb2 for the prediction direction (fw) selected in (3-1) is performed, and further, the sub-pel of the small block Sb3 for the prediction direction (bw) selected in (3-1). Prediction is performed (step S33).
さらに、処理余裕量[4]とステップ35で算出された分割方法候補の必要処理量[4]との差が処理余裕量として設定されるが(ステップS34)、その値が[0]になったので、次の分割方法候補に対する処理は行わない。
(3−2−2)
次に、図15を用いて、第2の具体例を説明する。この具体例では、分割方法候補選択ステップ42において、第1候補として16×16分割方法(符号化コスト(40))が選択され、第2候補として16×8分割方法(符号化コスト(43))が選択されている。
Furthermore, the difference between the processing margin [4] and the necessary processing amount [4] of the division method candidate calculated in
(3-2-2)
Next, a second specific example will be described with reference to FIG. In this specific example, in the division method
図15に示すように、処理は、画像ブロック単位で行われる(ステップS30〜S37)。まず、16×16の画像ブロックのサブペル予測に割り当てられた処理量が処理余裕量[8]として設定される(ステップS30)。次に、分割方法候補毎の処理が行われる(ステップS31〜ステップS37)。 As shown in FIG. 15, the processing is performed in units of image blocks (steps S30 to S37). First, the processing amount allocated to the sub-pel prediction of the 16 × 16 image block is set as the processing margin amount [8] (step S30). Next, processing for each candidate division method is performed (steps S31 to S37).
分割方法候補毎の処理は、分割方法候補選択ステップS42において選択された分割方法候補のうち、フルペル予測による符号化コストが小さいものから順番に行われる。
最初は、16×16の分割方法(符号化コスト(40))が対象になる。具体的には、16×16の分割方法において、まず、(3−1)で説明した方法により、小ブロックSb1のサブペル予測の予測方向が選択される。第1のケースであり、前方向予測fwの符号化コストと後方向予測の符号化bwコストとがほぼ一致している。そのため、前方向予測fwおよび後方向予測bwの2種類の予測方向について、非整数画素精度の動き推定が実行される。その結果、小ブロックSb1の前方向予測fwのサブペル予測の必要処理量[4]と、小ブロックSb1の前方向予測bwのサブペル予測の必要処理量[4]とが推定される。推定された小ブロックSb1ごとの必要処理量[4]は、分割方法候補単位で合計され、分割方法候補の必要処理量[8]が算出される(ステップS31)。
The processing for each division method candidate is performed in order from the division method candidate selected in the division method candidate selection step S42 in ascending order of encoding cost by full-pel prediction.
Initially, the 16 × 16 division method (encoding cost (40)) is targeted. Specifically, in the 16 × 16 division method, first, the prediction direction of the sub-pel prediction of the small block Sb1 is selected by the method described in (3-1). In the first case, the encoding cost of the forward prediction fw and the encoding bw cost of the backward prediction are substantially the same. Therefore, motion estimation with non-integer pixel accuracy is executed for two types of prediction directions, ie, forward prediction fw and backward prediction bw. As a result, the necessary processing amount [4] for sub-pel prediction of the forward prediction fw of the small block Sb1 and the necessary processing amount [4] for sub-pel prediction of the forward prediction bw of the small block Sb1 are estimated. The estimated necessary processing amount [4] for each small block Sb1 is summed up in units of division method candidates, and the necessary processing amount [8] of the division method candidates is calculated (step S31).
算出された必要処理量[8]は、ステップS30で設定された処理余裕量[8]と比較され、必要処理量[8]が処理余裕量[8]より大きくないため、処理余裕があると判定される(ステップS32)。
この場合は、(3−1)で選択された予測方向(fw)に対する小ブロックSb1のサブペル予測が行われ、さらに予測方向(bw)に対する小ブロックSb1のサブペル予測が行われる(ステップS33)。
The calculated required processing amount [8] is compared with the processing margin amount [8] set in step S30, and the required processing amount [8] is not larger than the processing margin amount [8]. Determination is made (step S32).
In this case, sub-pel prediction of the small block Sb1 with respect to the prediction direction (fw) selected in (3-1) is performed, and further, sub-pel prediction of the small block Sb1 with respect to the prediction direction (bw) is performed (step S33).
さらに、処理余裕量[8]とステップ55で算出された分割方法候補の必要処理量[8]との差が処理余裕量として設定されるが(ステップS34)、その値が[0]になったので、次の分割方法候補に対する処理は行わない。
この具体例では、16×8分割方法(符号化コスト(42))は、分割方法候補選択ステップS42において選択された分割方法候補であるにもかかわらず、サブペル予測が行われない。
Furthermore, the difference between the processing margin [8] and the necessary processing amount [8] of the division method candidate calculated in
In this specific example, although the 16 × 8 division method (encoding cost (42)) is the division method candidate selected in the division method candidate selection step S42, sub-pel prediction is not performed.
(3−2)の効果
このサブペル予測部15では、サブペル予測の処理量を制御することが可能となる。特に、処理量を最小にする制御を行うと、ソフトウェアエンコーダの場合には、処理時間の短縮化の効果があり、ハードウェアエンコーダの場合には、消費電力削減の効果がある。また、リアルタイムエンコーダのように、処理時間を一定にしなければならない場合には、余裕分の処理量をその他の候補に配分することで、圧縮性能を上げることも可能となる。
Effect of (3-2) The
(3−3)
上記実施形態では、以下のように説明した。すなわち、分割方法決定ステップS44は、分割方法候補選択ステップS42において選択された2種類の分割方法候補により分割されたそれぞれの小ブロックについて最小となる符号化コストから、小ブロックごとの予測方向を決定するとともに、画像ブロック単位での符号化コストを導出する。さらに、導出された画像ブロック単位での符号化コストを2種類の分割方法候補について比較し、最小の符号化コストを有する分割方法候補を画像ブロックの分割方法として決定する。
(3-3)
In the said embodiment, it demonstrated as follows. That is, the division method determination step S44 determines the prediction direction for each small block from the minimum coding cost for each small block divided by the two types of division method candidates selected in the division method candidate selection step S42. In addition, the encoding cost for each image block is derived. Further, the derived encoding cost for each image block is compared for two types of division method candidates, and the division method candidate having the minimum encoding cost is determined as the image block division method.
ここで、分割方法候補選択ステップS42が選択する分割方法候補は、2種類に限られず、さらに多くの候補を選択してもよい。
また、分割方法決定ステップS44は、画像ブロックの分割方法を1つに決定せず、さらに多くの方法を選択するものであってもよい。例えば、分割方法決定ステップS44では、2つの符号化モードを選択し、さらに別のステップによって最終的な符号化モードを決定してもよい。
Here, the division method candidates selected in the division method candidate selection step S42 are not limited to two types, and more candidates may be selected.
Further, the division method determination step S44 may select more methods without determining one image block division method. For example, in the division method determination step S44, two encoding modes may be selected, and the final encoding mode may be determined in yet another step.
(4)その他の変形例
(4−1)
フルペル予測部13では整数画素精度の動き推定が、サブペル予測部15では非整数画素の動き推定が行われると記載した。ここで、動き推定の精度は、これらに限定されるものではない。
(4) Other modifications (4-1)
It has been described that the full-
例えば、フルペル予測部13では、簡易な動き推定が、サブペル予測部15では、複雑な動き推定が行われるものであってもよい。
より具体的には、複雑な動き推定とは、簡易な動き推定よりも複雑な動き推定のことであり、例えば、複雑な動き推定とは、整数画素精度の簡易な動き推定に対するより詳細な精度(例えば、1/2画素精度、1/4画素精度などといった非整数画素精度)での動き推定、非整数画素の簡易な動き推定に対するより詳細な精度での動き推定、縮小画像(画素情報の間引かれた画像)を参照する簡易な動き推定に対するより詳細な画像を参照する動き推定などである。
For example, the full-
More specifically, complex motion estimation is more complex motion estimation than simple motion estimation. For example, complex motion estimation is more detailed accuracy than simple motion estimation with integer pixel accuracy. (E.g., non-integer pixel accuracy such as ½ pixel accuracy, ¼ pixel accuracy, etc.), motion estimation with more detailed accuracy for simple motion estimation of non-integer pixels, reduced image (pixel information For example, a motion estimation that refers to a more detailed image with respect to a simple motion estimation that refers to a thinned image).
さらに、簡易な動き推定は、縮小画像に対して2画素精度、1/2画素精度などの動き推定であってもよい。
これにより、複雑な動き推定の処理量を低減しつつ、複雑な動き推定による適切な動き推定の効果を享受することが可能となる。
Further, the simple motion estimation may be motion estimation such as 2-pixel accuracy and 1 / 2-pixel accuracy for a reduced image.
Accordingly, it is possible to enjoy the effect of appropriate motion estimation by complex motion estimation while reducing the amount of processing of complex motion estimation.
また、ここでは2段階の精度の動き推定により符号化モードの選択を行っているが、より多くの段階により選択を行ってもよい。
例えば、整数画素精度、1/2画素精度、1/4画素精度というように、3段階の精度の動き推定を用いて、符号化モードの選択を行ってもよい。
Here, the encoding mode is selected by motion estimation with two stages of accuracy, but the selection may be performed by more stages.
For example, the coding mode may be selected using motion estimation with three stages of accuracy, such as integer pixel accuracy, 1/2 pixel accuracy, and 1/4 pixel accuracy.
(4−2)
フルペル予測部13あるいはサブペル予測部15は、それぞれの動き推定の処理量がほぼ一定に保たれるように動き推定の方式を変化させるものであってもよい。
従来では、それぞれの動き推定処理に際して、それぞれ所定の処理時間が割り当てられており、この所定の処理時間内で、固定的に選択されたパーティションサイズ、参照ピクチャに対して動き推定処理が行われている。この場合、処理量が最も多くなると考えられる場合(ワーストケース)を想定して処理時間が割り当てられるため、処理対象がワーストケースで無い場合、処理時間に余裕が生まれ、効率的な動き推定処理が妨げられている。
(4-2)
The full-
Conventionally, a predetermined processing time is assigned to each motion estimation process, and the motion estimation process is performed on a fixedly selected partition size and reference picture within the predetermined processing time. Yes. In this case, processing time is allocated assuming that the amount of processing is considered to be the largest (worst case). Therefore, when the processing target is not the worst case, there is room in processing time, and efficient motion estimation processing is performed. It is hindered.
そこで本発明では、処理に余裕がある場合には、動き推定の方式を変化させ、効率的な動き推定処理を行う。ここで、処理に余裕があるか否かは、例えば、画像ブロックにより構成される入力画像の画像属性に応じて、判断される。画像属性とは、例えば、画像のサイズや、画像の符号化方式(ピクチャタイプ〔Iピクチャ、Pピクチャ、Bピクチャ〕など)や、画像のフォーマット(走査方式〔プログレッシブ、インターレース〕、色差フォーマットなど)や、画像の動き量などである。 Therefore, in the present invention, when there is a margin in processing, the motion estimation method is changed to perform efficient motion estimation processing. Here, whether or not there is a margin for the processing is determined, for example, according to the image attribute of the input image configured by the image block. Image attributes include, for example, image size, image encoding method (picture type [I picture, P picture, B picture], etc.), image format (scanning method (progressive, interlaced), color difference format, etc.) And the amount of motion of the image.
(4−2−1)
例えば、画像ブロックにより構成される入力画像サイズと参照ピクチャ数とパーティションサイズ数との積がほぼ一定になるように、動き推定の方式(参照するピクチャの枚数・方向、動き推定を行うパーティションサイズのバリエーション、動きの探索範囲など)を変化させる。より具体的には、入力画像サイズが小さい場合には、参照ピクチャ数やパーティションサイズ数を大きくし、フルペル予測あるいはサブペル予測の処理をより精度良く行うことが可能となる。
(4-2-1)
For example, the motion estimation method (number of reference pictures, direction, partition size for motion estimation is set so that the product of the input image size composed of image blocks, the number of reference pictures, and the number of partition sizes is substantially constant. Variation, motion search range, etc.). More specifically, when the input image size is small, it is possible to increase the number of reference pictures and the number of partition sizes, and to perform full-pel prediction or sub-pel prediction processing with higher accuracy.
(4−2−2)
また、例えば、Bピクチャの参照ピクチャ数をPピクチャよりも少なくし、ピクチャ単位で動き推定の処理量がほぼ一定に保たれるようにする。より具体的には、次のようなバリエーションが考えられる。<1>Pピクチャでは前方4枚を参照し、Bピクチャでは前方2枚・後方2枚を参照する。<2>Pピクチャでは前方3枚を参照し、Bピクチャでは前方2枚・後方1枚を参照する。<3>Pピクチャでは前方2枚を参照し、Bピクチャでは前方1枚・後方1枚を参照する。
(4-2-2)
Further, for example, the number of reference pictures of B picture is made smaller than that of P picture so that the processing amount of motion estimation is kept almost constant for each picture. More specifically, the following variations can be considered. <1> The front four pictures are referred to in the P picture, and the front two pictures and the rear two pictures are referred to in the B picture. <2> The front 3 frames are referred to in the P picture, and the front 2 frames and the rear 1 frame are referred to in the B picture. <3> The front picture is referred to in the P picture, and the front picture and the rear picture are referred to in the B picture.
(4−2−3)
また、例えば、Bピクチャのパーティションサイズ数をPピクチャよりも少なくし、ピクチャ単位での動き推定の処理量がほぼ一定に保たれる用にする。より具体的には、次のようなバリエーションが考えられる。<1>Pピクチャでは前方1枚を参照し、16x16,16x8,8x16,8x8の4パーティションサイズで予測を行うとする。一方、Bピクチャでは、上記4サイズのいずれか二つを選び、それぞれが前方予測と後方予測を行うとする。<2>Pピクチャでは後方1枚を参照し、16x16,16x8,8x16,8x8の4パーティションサイズで予測を行うとする。一方、Bピクチャでは、上記4サイズのいずれか二つを選び、それぞれが前方予測と後方予測を行うとする。
(4-2-3)
Further, for example, the number of partition sizes of a B picture is made smaller than that of a P picture, so that the processing amount of motion estimation for each picture is kept almost constant. More specifically, the following variations can be considered. <1> It is assumed that prediction is performed with four partition sizes of 16 × 16, 16 × 8, 8 × 16, and 8 × 8 with reference to the front one in the P picture. On the other hand, in the B picture, any two of the above four sizes are selected, and each performs forward prediction and backward prediction. <2> It is assumed that prediction is performed with four partition sizes of 16 × 16, 16 × 8, 8 × 16, and 8 × 8 with reference to the rear one in the P picture. On the other hand, in the B picture, any two of the above four sizes are selected, and each performs forward prediction and backward prediction.
(4−2−4)
また、例えば、入力画像がインターレースの場合には参照ピクチャ数あるいはパーティションサイズ数をプログレッシブの場合よりもより減らす。これは、インターレースの場合には、トップフィールドとボトムフィールドの二フィールドを参照する必要があるからである。より具体的には、次のようなバリエーションが考えられる。<1>Pピクチャの場合、プログレッシブのPピクチャでは、前方2フレームを参照し、インターレースのPピクチャでは、前方2フィールド(時間的には1フレーム分)を参照する。<2>Pピクチャの場合、プログレッシブのPピクチャでは、前方1フレームを参照し、パーティションサイズは4種類(16x16から8x8)の予測をし、インターレースのPピクチャでは、前方2フィールド(時間的には1フレーム分)を参照し、パーティションサイズはそれぞれ2種類の予測をする。
(4-2-4)
Also, for example, when the input image is interlaced, the number of reference pictures or the number of partition sizes is reduced more than in the case of progressive. This is because in the case of interlace, it is necessary to refer to two fields, a top field and a bottom field. More specifically, the following variations can be considered. In the case of a <1> P picture, the front two frames are referred to in the progressive P picture, and the two front fields (one frame in time) are referred to in the interlaced P picture. <2> In the case of a P picture, the progressive P picture refers to the front one frame, and the partition size is predicted in four types (16 × 16 to 8 × 8). In the interlaced P picture, the front two fields (in terms of time) One frame) is referenced, and two types of partition sizes are predicted.
(4−2−5)
また、例えば、画像の動きに応じて、参照ピクチャ数あるいはパーティションサイズ数を変化させる。動きベクトルの探索では、探索の処理時間が動きベクトルの大きさの影響を受ける方式がある。このような方式を用いた場合、動きが小さければ、各パーティションサイズ・各参照ピクチャの処理時間が短い。このため、動きが小さい場合には、より多くのパーティションサイズ数・参照ピクチャ数を用いて動き推定を行う。一方、動きが大きい場合には、それぞれの動き推定の処理時間が長くなる。このため、動きが大きい場合には、参照ピクチャの枚数を減らす、あるいは、パーティションサイズ数を減らす。
(4-2-5)
Also, for example, the number of reference pictures or the number of partition sizes is changed according to the motion of the image. In motion vector search, there is a method in which search processing time is affected by the size of a motion vector. When such a method is used, if the motion is small, the processing time of each partition size and each reference picture is short. For this reason, when the motion is small, motion estimation is performed using a larger number of partition sizes and reference pictures. On the other hand, when the motion is large, the processing time for each motion estimation becomes long. For this reason, when the motion is large, the number of reference pictures is reduced, or the number of partition sizes is reduced.
[第2実施形態]
図16及び図17を用いて、本発明の第2実施形態としてのエンコーダについて説明する。
図16は、本発明の第2実施形態としてのエンコーダ60の構造を説明するブロック図である。エンコーダ60は、例えば、入力画像信号30をMPEG−4符号化し、符号化画像信号31として出力する画像符号化装置であり、パーソナルコンピュータ(PC)、携帯電話などにおいて備えられる。また、AVCにおいて導入された画像ブロックペア73という単位で入力画像信号30を符号化する装置である(図30参照)。
[Second Embodiment]
An encoder as a second embodiment of the present invention will be described with reference to FIGS. 16 and 17.
FIG. 16 is a block diagram illustrating the structure of an
〈エンコーダ60の構成〉
図16に示すエンコーダ60は、入力画像信号30のイントラ予測を行うイントラ予測部61と、入力画像信号30のインター予測を行うインター予測部62と、符号化モード決定部63と、イントラ予測およびインター予測の予測結果を切り換える切換部64と、切換部64の出力を符号化して符号化画像信号31を出力する符号化部5と、入力画像信号30のローカルデコード信号32を作成する参照画像作成部6とを備えている。
<Configuration of
The
イントラ予測部61は、図示しない制御部により制御され、符号化ピクチャ構造決定部67が決定したピクチャ構造のブロック(フィールド構造ブロックまたはフレーム構造ブロック)についてイントラ予測を行う。その結果、イントラ予測部61は、入力画像信号30を画像ブロック毎にイントラ予測し、イントラ予測結果を切換部4に出力する。
The
インター予測部62は、入力画像信号30を第1の入力とし、ローカルデコード信号32を第2の入力として、インター予測結果を切換部4に出力する。さらに、インター予測部62は、インター予測結果のうち、動きベクトルなど符号化にかかる情報を第2の出力として符号化部5に出力する。
The
インター予測部3は、入力画像信号30を第1の入力、ローカルデコード信号32を第2の入力とし、動き推定を行う動き推定部65と、動き推定部65の出力を第1の入力、ローカルデコード信号32を第2の入力とし、予測画像を出力する予測画像作成部11と、入力画像信号30を第1の入力、予測画像作成部11の出力を第2の入力とする減算部12とから構成されている。動き推定部65は、動き推定を行い、符号化コスト導出する。また、動き推定部65の出力のうち、動きベクトルや符号化モードなどの符号化情報は、可変長符号化部22の入力にも与えられる。
The
切換部4は、イントラ予測結果を第1の入力、インター予測結果を第2の入力とし、符号化モード決定部63からの切換信号に従って、いずれかの入力を符号化部5に出力する。
符号化部5及び参照画像作成部6の構造及び機能は前記実施形態と同様であるため、ここでは説明を省略する。
The
Since the structures and functions of the encoding unit 5 and the reference
符号化モード決定部63は、符号化ピクチャ構造決定部67と、イントラ/インター決定部68とを有している。符号化ピクチャ構造決定部67は、動き推定部65からの符号化コスト情報を入力としている。符号化ピクチャ構造決定部67は、トップ・ボトムについての符号化コストを、符号化ピクチャ構造毎に合計し、符号化ピクチャ構造を決定する。符号化ピクチャ構造決定部67は、決定した符号化ピクチャ構造をイントラ/インター選択部68に出力する。
The encoding mode determination unit 63 includes an encoded picture
イントラ/インター選択部68は、イントラ予測部61からのイントラ予測の符号化コストと、インター予測部62からのインター予測の符号化コストを入力としている。イントラ/インター選択部68は、イントラ予測とインター予測の符号化コストを比較し、符号化モードを決定する。イントラ/インター選択部68は、この結果を切換部64に通知する。この結果、切換部64が動作する。
The intra /
なお、制御部は、符号化モード決定部63が備えていても良い。
図17は、符号化モード決定(画像ブロックペアについての符号化ピクチャ構造決定と符号化予測方式決定)の処理フローを示すブロック図である。図17の処理フローは、動き推定部65によるインター予測ステップS51と、符号化ピクチャ構造決定部67による符号化ピクチャ構造決定ステップS52と、イントラ予測部61によるイントラ予測ステップS53と、イントラ/インター選択部68による符号化予測方式決定ステップS54とを備えている。
Note that the control unit may be included in the encoding mode determination unit 63.
FIG. 17 is a block diagram illustrating a processing flow of determining an encoding mode (determining an encoded picture structure and determining an encoding prediction scheme for an image block pair). The processing flow of FIG. 17 includes an inter prediction step S51 by the
インター予測ステップS51は、画像ブロックペア73のフィールド構造ブロックペア75,76およびフレーム構造ブロックペア77,78についての動き推定結果を導出する(図30参照)。具体的には、インター予測ステップS51は、フレーム構造トップMB77についての第1インター予測ステップS511とボトムMB78についての第2インター予測ステップS512とを備えている。第1インター予測ステップS511は、フレーム構造トップMB77に対してインター予測を行い、符号化コスト(cost top0)を導出する。第2インター予測ステップS512は、フレーム構造ブロックペアのボトムMB78に対してインター予測を行い、符号化コスト(cost bot0)を導出する。各符号化コストcost top0,cost bot0は符号化ピクチャ構造決定ステップS52に送られる。さらに各符号化コストcost top0,cost bot0が合計され、フレーム構造ブロックペア77,78の符号化コストcost0が得られ、それが符号化ピクチャ構造決定ステップS52に送られる。なお、この実施形態では、cost top0は1500であり、cost bot0は1300であり、cost0は2800である。インター予測ステップS51は、フィールド構造ブロックペア75,76のトップMB75についての第3インター予測ステップS513と、ボトムMB76についての第4インター予測ステップS514とをさらに備えている。第3インター予測ステップS513は、フィールド構造ブロックペア75,76のトップMB75に対してインター予測を行い、符号化コスト(cost top1)を導出する。第4インター予測ステップS514は、フィールド構造ブロックペア75,76のボトムMB76に対してインター予測を行い、符号化コスト(cost bot1)を導出する。各符号化コストcost top1,cost bot1は符号化ピクチャ構造決定ステップS52に送られる。さらに各符号化コストcost top1,cost bot1が合計され、フィールド構造ブロックペア75,76の符号化コストcost1が得られ、それが符号化ピクチャ構造決定ステップS52に送られる。なお、この実施形態では、cost top1は1400であり、cost bot1は1300であり、cost1は2700である。
The inter prediction step S51 derives motion estimation results for the field structure block pairs 75 and 76 and the frame structure block pairs 77 and 78 of the image block pair 73 (see FIG. 30). Specifically, the inter prediction step S51 includes a first inter prediction step S511 for the frame structure top MB77 and a second inter prediction step S512 for the bottom MB78. In the first inter prediction step S511, inter prediction is performed on the frame structure top MB77, and an encoding cost (cost top0) is derived. In the second inter prediction step S512, inter prediction is performed on the
なお、第1〜第4インター予測ステップS511〜ステップS514は、それぞれが、16×16の分割方法、16×8の分割方法、8×16の分割方法、8×8の分割方法を含んだ動き推定動作全体を表している。つまり、第1〜第4インター予測ステップS511〜S514には、本発明の第1実施形態を適用できる。また、第1〜第4インター予測ステップS511〜ステップS514は、フルペル予測とサブペル予測の両方を行っても良いが、処理量削減のためフルペル予測だけを行っても良い。 The first to fourth inter prediction steps S511 to S514 are motions including a 16 × 16 division method, a 16 × 8 division method, an 8 × 16 division method, and an 8 × 8 division method, respectively. It represents the entire estimation operation. That is, the first embodiment of the present invention can be applied to the first to fourth inter prediction steps S511 to S514. Moreover, although 1st-4th inter prediction step S511-step S514 may perform both full pel prediction and sub pel prediction, you may perform only full pel prediction for processing amount reduction.
以上のように符号化ピクチャ構造の符号化コスト導出にはインター予測のみを行っているが、インター予測の判定の精度はイントラ予測より良いため、十分な精度が得られる。
符号化ピクチャ構造決定ステップS52は、動き推定結果に基づいて、画像ブロックペア73の符号化ピクチャ構造を決定する。具体的には、符号化ピクチャ構造決定ステップS52は、インター予測ステップS51からのフレーム構造ブロックペア77,78の符号化コストcost0と、フィールド構造ブロックペア75,76の符号化コストcost1とを比較し、フレーム/フィールド選択を行う。この実施形態ではフィールド構造ブロックペア75,76の符号化コストcost1(2700)がフレーム構造ブロックペア77,78の符号化コストcost0(2800)より小さいため、フィールドを選択する。この結果、フィールド構造ブロックペア75,76のトップMB75のインター符号化コストcost top1とボトムMB76のインター符号化コストcost bot1が、符号化予測方式決定ステップS54に提供される。
As described above, only the inter prediction is performed for deriving the coding cost of the coded picture structure. However, since the accuracy of determination of inter prediction is better than that of intra prediction, sufficient accuracy can be obtained.
The encoded picture structure determination step S52 determines the encoded picture structure of the
イントラ予測ステップS53は、決定された符号化ピクチャ構造を有するブロックペアについてのイントラ予測結果を導出する。具体的には、イントラ予測ステップS53は、トップMBについての第1イントラ予測ステップS531と、ボトムMBについての第2イントラ予測ステップS532とを備えている。第1イントラ予測ステップS531は、選択された符号化ピクチャ構造ブロックペア(この場合はフィールド構造ブロックペア75,76)のトップMB75についてイントラ符号化コストcost top2を導出し、符号化予測方式決定ステップS54に提供する。第2イントラ予測ステップS532は、選択された符号化ピクチャ構造ブロックペア(この場合はフィールド構造ブロックペア75,76)のボトムMB76についてイントラ符号化コストcost bot2を導出し、符号化予測方式決定ステップS54に提供する。なお、この実施形態では、cost top2は1500であり、cost bot2は1400である。また、イントラ予測は、処理量を減らすため、画素を間引いて精度を落とした処理であっても良いし、さらにはイントラ4×4を省略しても良い。
In the intra prediction step S53, an intra prediction result for a block pair having the determined coded picture structure is derived. Specifically, the intra prediction step S53 includes a first intra prediction step S531 for the top MB and a second intra prediction step S532 for the bottom MB. The first intra prediction step S531 derives the intra coding cost cost top2 for the
符号化予測方式決定ステップS54は、インター予測結果とイントラ予測結果とに基づいて、決定された符号化ピクチャ構造を有するブロックペアの各ブロックに対する符号化予測方式を決定する。具体的には、符号化予測方式決定ステップS54は、トップMBについての第1符号化予測方式決定ステップS541と、ボトムMBについての第2符号化予測方式決定ステップS542とを備えている。第1符号化予測方式決定ステップS541は、符号化ピクチャ構造決定ステップS52からのトップMBのインター符号化コスト(具体的には、フィールド構造ブロックペア75,76のトップMB75のインター符号化コストcost top1)と、第1イントラ予測ステップS531からのトップMB75のイントラ符号化コストcost top2を比較し、トップMBについてのイントラ/インター選択を行う。この場合は、インター符号化コストcost top1(1400)がイントラ符号化コストcost top2(1500)より小さいため、インターが選択される。第2符号化予測方式決定ステップS542は、符号化ピクチャ構造決定ステップS52からのボトムMBのインター符号化コスト(具体的には、フィールド構造ブロックペア75,76のボトムMB76のインター符号化コストcost bot1)と、第2イントラ予測ステップS532からのボトムMB76のイントラ符号化コストcost bot2を比較し、ボトムMB76についてのイントラ/インター選択を行う。この場合は、この場合は、インター符号化コストcost bot1(1300)がイントラ符号化コストcost bot2(1400)より小さいため、インターが選択される。
The coding prediction scheme determination step S54 determines a coding prediction scheme for each block of the block pair having the determined coded picture structure based on the inter prediction result and the intra prediction result. Specifically, the encoding prediction method determination step S54 includes a first encoding prediction method determination step S541 for the top MB and a second encoding prediction method determination step S542 for the bottom MB. The first encoding prediction scheme determination step S541 is the top MB inter encoding cost from the encoded picture structure determination step S52 (specifically, the inter MB encoding cost cost top1 of the
なお、本実施形態ではトップMBとボトムMBで符号化予測方式(イントラ/インター)は同一になったが、異なることもある。ただし、トップMBとボトムMBで異なる符号化ピクチャ構造で符号化されることは無い。符号化ピクチャ構造決定ステップS52で符号化ピクチャ構造が決定されているからである。 In this embodiment, the encoding prediction scheme (intra / inter) is the same for the top MB and the bottom MB, but may be different. However, the top MB and the bottom MB are not encoded with different encoded picture structures. This is because the encoded picture structure is determined in the encoded picture structure determining step S52.
この実施形態では、イントラ予測ステップS53は符号化ピクチャ構造決定ステップS52によって決定された符号化ピクチャ構造の画像ブロックペアについてのみイントラ予測を行うため、イントラ予測ステップS53はフィールド構造ブロックおよびフレーム構造ブロックの全てについてイントラ予測を行う必要がない。このように処理負荷の高いイントラ予測の回数を減らすことができるため、画像ブロックペアの符号化予測方式を決定するための処理負荷を削減できる。 In this embodiment, since the intra prediction step S53 performs intra prediction only for the image block pair having the coded picture structure determined by the coded picture structure determining step S52, the intra prediction step S53 includes the field structure block and the frame structure block. There is no need to make intra predictions for everything. As described above, since the number of intra predictions with a high processing load can be reduced, the processing load for determining the coding prediction method of the image block pair can be reduced.
〈変形例〉
第2実施形態では、第1実施形態で記載した内容を適宜変形して適用可能である。ここでは、第2実施形態に特徴的な変形例について記載する。
(1)
上記実施形態では、第1〜第4インター予測ステップS511〜ステップS514は、フルペル予測とサブペル予測の両方を行っても良いと記載した。
<Modification>
In the second embodiment, the contents described in the first embodiment can be appropriately modified and applied. Here, a modified example characteristic of the second embodiment will be described.
(1)
In the said embodiment, 1st-4th inter prediction step S511-step S514 described that you may perform both full pel prediction and sub pel prediction.
ここで、フルペル予測とサブペル予測との両方を行う場合には、フルペル予測により絞り込まれたパーティションサイズ、参照ピクチャ、ピクチャ構造の組み合わせに対して、サブペル予測を行うものであっても良い。より具体的には、図18に示すように、整数画素精度の動き推定により、適切なパーティションサイズ、参照ピクチャ、ピクチャ構造の組み合わせを選択し(ステップS710)、選択された組み合わせに対して非整数画素精度の動き推定により、さらに絞り込みを行う(ステップS711)。さらに、絞り込みの結果として得られるパーティションサイズ、参照ピクチャ、ピクチャ構造の組み合わせに対して、イントラ予測を行い(ステップS712)、イントラ予測・インター予測の選択を行う。 Here, when performing both full-pel prediction and sub-pel prediction, sub-pel prediction may be performed on a combination of partition size, reference picture, and picture structure narrowed down by full-pel prediction. More specifically, as shown in FIG. 18, an appropriate combination of partition size, reference picture, and picture structure is selected by motion estimation with integer pixel accuracy (step S710), and a non-integer is selected for the selected combination. Further narrowing is performed by motion estimation with pixel accuracy (step S711). Further, intra prediction is performed on the combination of partition size, reference picture, and picture structure obtained as a result of narrowing down (step S712), and intra prediction / inter prediction is selected.
これにより全パーティションサイズ、全参照ピクチャ、全ピクチャ構造について非整数画素精度の動き推定とイントラ予測とを行う必要が無く、処理量を削減することが可能となる。
(2)
上記実施形態では、画像ブロックペア73という単位で入力画像信号30を符号化する装置について説明した。ここで、符号化は、画像ブロックペア単位で行われなくてもよい。例えば、正方の画像ブロックを単位として符号化が行われてもよい。この場合、上記実施形態で説明した方法は、矩形のフィールド構造ブロックペアと矩形のフレーム構造ブロックペアとに対して適用される。
As a result, it is not necessary to perform motion estimation and intra prediction with non-integer pixel accuracy for all partition sizes, all reference pictures, and all picture structures, and the processing amount can be reduced.
(2)
In the above embodiment, the apparatus that encodes the
[第3実施形態]
図19〜図20を用いて、本発明の第3実施形態としてのエンコーダについて説明する。
〈エンコーダ1の構成〉
図19に示すエンコーダ60は、入力画像信号30のイントラ予測を行うイントラ予測部91と、入力画像信号30のインター予測を行うインター予測部92と、符号化モード決定部93と、イントラ予測およびインター予測の予測結果を切り換える切換部94と、切換部94の出力を符号化して符号化画像信号31を出力する符号化部5と、入力画像信号30のローカルデコード信号32を作成する参照画像作成部6とを備えている。
[Third Embodiment]
An encoder as a third embodiment of the present invention will be described with reference to FIGS.
<Configuration of
19 includes an intra prediction unit 91 that performs intra prediction of the
イントラ予測部91は、簡易なイントラ予測と複雑なイントラ予測が可能である。簡易なイントラ予測とは、例えば、圧縮画像に対するイントラ予測であり、複雑なイントラ予測とは、例えば、非圧縮画像に対するイントラ予測である。イントラ予測部91は、符号化モード決定部93内の制御部99(後述)により制御され、簡易なイントラ予測を行い、符号化コスト導出する。その結果、イントラ予測部91は、入力画像信号30を画像ブロック毎にイントラ予測し、イントラ予測結果を切換部94に出力する。
The intra prediction unit 91 can perform simple intra prediction and complex intra prediction. Simple intra prediction is, for example, intra prediction for a compressed image, and complex intra prediction is, for example, intra prediction for an uncompressed image. The intra prediction unit 91 is controlled by a control unit 99 (described later) in the encoding mode determination unit 93, performs simple intra prediction, and derives an encoding cost. As a result, the intra prediction unit 91 performs intra prediction on the
インター予測部92は、入力画像信号30を第1の入力とし、ローカルデコード信号32を第2の入力として、インター予測結果を切換部94に出力する。さらに、インター予測部92は、インター予測結果のうち、動きベクトルなど符号化にかかる情報を第2の出力として符号化部5に出力する。
The inter prediction unit 92 outputs the inter prediction result to the
インター予測部92は、入力画像信号30を第1の入力、ローカルデコード信号32を第2の入力とし、動き推定を行う動き推定部95と、動き推定部95の出力を第1の入力、ローカルデコード信号32を第2の入力とし、予測画像を出力する予測画像作成部11と、入力画像信号30を第1の入力、予測画像作成部11の出力を第2の入力とする減算部12とから構成されている。動き推定部95は、フルペル・インター予測もしくはサブペル・インター予測を行い、符号化コスト導出する。また、動き推定部95の出力のうち、動きベクトルや符号化モードなどの符号化情報は、可変長符号化部22の入力にも与えられる。
The inter prediction unit 92 uses the
切換部94は、イントラ予測結果を第1の入力、インター予測結果を第2の入力とし、符号化モード決定部93からの切換信号に従って、いずれかの入力を符号化部5に出力する。
符号化部5及び参照画像作成部6の構造及び機能は前記実施形態と同様であるため、ここでは説明を省略する。
The switching
Since the structures and functions of the encoding unit 5 and the reference
符号化モード決定部93は、決定部96と、制御部99とを有している。決定部96は、イントラ/インター選択部97と、符号化ピクチャ構造決定部98とを有している。決定部96は、動き推定部95からの符号化コストと、イントラ予測部91からの符号化コストを入力としている。イントラ/インター選択部97がイントラ/インターを決定する。符号化ピクチャ構造決定部98がフィールド/フレームを決定する。制御部99が、イントラ予測部91または動き推定部95を制御して、決定された符号化ピクチャ構造の画像ブロックペア73に動き推定をさせる。つまり、制御部99は、イントラ予測部91に複雑なイントラ予測を行わさせ、または動き推定部95にサブペル・インター予測を行わさせる。制御部99は、さらに切換部94を動作させ、イントラ予測結果あるいはインター予測結果を符号化させる。
The encoding mode determination unit 93 includes a determination unit 96 and a
なお、制御部は、エンコーダ90のどこかに有ればよい。符号化モード決定部93が備えていなくても良い。
図20は、画像ブロックペア73の符号化モード決定の処理動作のフローである。この処理動作は、イントラ予測部91又は動き推定部95によって実行される簡易動き推定ステップS61と、イントラ/インター選択部97によって実行されるイントラ/インター選択ステップS62と、符号化ピクチャ構造決定部98によって実行される画像ブロックペア73の符号化ピクチャ構造決定ステップS63とを備えている。なお、符号化ピクチャ構造決定ステップS63の次には、イントラ予測部91又は動き推定部95によって実行される複雑動き推定ステップS64とを備えている。
The control unit only needs to be somewhere in the
FIG. 20 is a flowchart of the processing operation for determining the coding mode of the
簡易動き推定ステップS61は、フレーム/フィールド構造のトップMB及びボトムMBに対して、フルペル・インター予測と簡易イントラ予測を行って、それらの符号化コストを導出する。簡易動き推定ステップS61は、第1〜第8推定ステップS611〜S618を備えている。第1推定ステップS611はフレーム構造ブロックペア77,78のトップMB77に対してフルペル・インター予測を行い、第2推定ステップS612はフレーム構造ブロックペア77,78のトップMB77に対して簡易・イントラ予測を行う。第3推定ステップS613はフレーム構造ブロックペア77,78のボトムMB78に対してフルペル・インター予測を行い、第4推定ステップS614はフレーム構造ブロックペア77,78のボトムMB78に対して簡易イントラ予測を行う。第5推定ステップS615はフィールド構造ブロックペア75,76のトップMB75に対してフルペル・インター予測を行い、第6推定ステップS616はフィールド構造ブロックペア75,76のトップMB75に対して簡易イントラ予測を行う。第7推定ステップS617はフィールド構造ブロックペア75,76のボトムMB76に対してフルペル・インター予測を行い、第8推定ステップS818はフィールド構造ブロックペア75,76のボトムMB76に対して簡易イントラ予測を行う。このように簡易動き推定ステップS61がインター予測とイントラ予測を用いてフレーム構造ブロックペア77,78及びフィールド構造ブロックペア75,76の符号化コストを導出するため、インター予測又はイントラ予測のいずれかで圧縮率が向上する画像ブロックペア73(71,72)の場合でも、圧縮率が最良となるような符号化ピクチャ構造を決定できる。
The simple motion estimation step S61 performs full-pel inter prediction and simple intra prediction on the top MB and the bottom MB of the frame / field structure, and derives their coding costs. The simple motion estimation step S61 includes first to eighth estimation steps S611 to S618. The first estimation step S611 performs full-pel inter prediction for the
イントラ/インター選択ステップS62は、(フレーム、フィールド)*(トップ、ボトム)の4種類それぞれで、イントラ、インターの符号化コストを比較し、小さい方を選択する。
イントラ/インター選択ステップS62は、第1〜第4選択ステップS621〜ステップS624を備えている。第1選択ステップS621は、第1推定ステップS611及び第2推定ステップS612の符号化コストを比較して、フレーム構造トップMB77に対するイントラ/インターを選択する。この場合は、第2推定ステップS612の符号化コスト(1300)を選択する。第2選択ステップS622は、第3推定ステップS613及び第4推定ステップS614の符号化コストを比較して、フレーム構造ボトムMB78に対するイントラ/インターを選択する。この場合は、第4推定ステップS614の符号化コスト(1200)を選択する。イントラ/インターが選択されたフレーム構造トップMB77の符号化コスト(1300)とボトムMB78の符号化コスト(1200)は合計され、フレーム構造ブロックペア77,78の符号化コスト(2500)が得られる。第3選択ステップS623は、第5推定ステップS615及び第6推定ステップS616の符号化コストを比較して、フィールド構造トップMB75,76に対するイントラ/インターを選択する。この場合は、第5推定ステップS615の符号化コスト(1400)を選択する。第4選択ステップS624は、第7推定ステップS617及び第8推定ステップS618の符号化コストを比較して、フィールド構造ボトムMB76に対するイントラ/インターを選択する。この場合は、第7推定ステップS617の符号化コスト(1300)を選択する。イントラ/インターが選択されたフィールド構造トップMB75の符号化コスト(1400)とボトムMB76の符号化コスト(1300)は合計され、フィールド構造ブロックペア75,76の符号化コスト(2700)が得られる。
The intra / inter selection step S62 compares the intra and inter coding costs for each of the four types (frame, field) * (top, bottom), and selects the smaller one.
The intra / inter selection step S62 includes first to fourth selection steps S621 to S624. The first selection step S621 compares the coding costs of the first estimation step S611 and the second estimation step S612, and selects intra / inter for the frame structure top MB77. In this case, the encoding cost (1300) of the second estimation step S612 is selected. The second selection step S622 compares the coding costs of the third estimation step S613 and the fourth estimation step S614, and selects intra / inter for the frame structure bottom MB78. In this case, the encoding cost (1200) of the fourth estimation step S614 is selected. The coding cost (1300) of the frame
符号化ピクチャ構造決定ステップS63は、フレーム構造ブロックペア77,78の符号化コストとフィールド構造ブロックペア75,76の符号化コストとを比較し、画像ブロックペア73のフィールド/フレームを決定する。この場合は、フレーム構造ブロックペア77,78の符号化コスト(2500)はフィールド構造ブロックペア75,76の符号化コスト(2700)より小さいため、フレーム構造ブロックペア77,78が選択される。
The coded picture structure determination step S63 compares the coding cost of the frame
複雑動き推定ステップS64は、決定された符号化ピクチャ構造の画像ブロックペア73のトップMB及びボトムMB77,78それぞれに対して、複雑な動き推定(サブペル/インター又は複雑イントラの一方)を行う。複雑動き推定ステップS64は、第1〜第4推定ステップS641〜S644を備えている。第1推定ステップS641は、トップMB77に対するサブペル・インター予測を行う。第2推定ステップS642は、トップMB77に対する複雑イントラ予測を行う。なお、第1推定ステップS641と第2推定ステップS642はいずれか一方のみが実行される。第3推定ステップS643は、ボトムMB78に対するサブペル・インター予測を行う。第4推定ステップS644は、ボトムMB78に対する複雑イントラ予測を行う。なお、第3推定ステップS643と第4推定ステップS644はいずれか一方のみが実行される。
In the complex motion estimation step S64, complex motion estimation (one of sub-pel / inter or complex intra) is performed for each of the top MB and the
以上に述べたように、簡易動き推定ステップS61の簡易なインター予測・イントラ予測に基づいて、符号化ピクチャ構造決定ステップS63によって、符号化モード(具体的には、符号化ピクチャ構造)を決定している。このため、符号化モードを決定するための処理量を軽減することが可能となる。 As described above, the encoding mode (specifically, the encoded picture structure) is determined by the encoded picture structure determination step S63 based on the simple inter prediction / intra prediction in the simple motion estimation step S61. ing. For this reason, it is possible to reduce the processing amount for determining the encoding mode.
また、符号化モードが決定された後に複雑動き推定ステップS64が複雑な動き推定を行っている。このように、複雑な予測によって画像ブロックペア73の符号化を行うため、圧縮効率が向上する。しかも、ここでは、決定された符号化ピクチャ構造の画像ブロックペア73に対してのみ複雑な予測を行うため、従来より複雑な予測の回数を減らすことができる。この結果、符号化効率を維持しながらも処理量を減らすることができる。
Further, after the coding mode is determined, the complex motion estimation step S64 performs complex motion estimation. Thus, since the
なお、トップMBとボトムMBで異なる符号化ピクチャ構造で符号化されることは無いが、異なる符号化予測方式(イントラ/インター)で符号化されることはある。
なお、第3実施形態では、第1〜第2実施形態で記載した内容を適宜変形して適用可能である。
[第4実施形態]
さらにここで、上記実施の形態で示した動画像符号化装置の応用例とそれを用いたシステムを説明する。
The top MB and the bottom MB are not encoded with different encoded picture structures, but may be encoded with different encoding prediction schemes (intra / inter).
In the third embodiment, the contents described in the first and second embodiments can be appropriately modified and applied.
[Fourth Embodiment]
Furthermore, application examples of the moving picture coding apparatus shown in the above embodiment and a system using the same will be described.
図21は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示すブロック図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107〜ex110が設置されている。
このコンテンツ供給システムex100は、例えば、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex107〜ex110を介して、コンピュータex111、PDA(personal digital assistant)ex112、カメラex113、携帯電話ex114、カメラ付きの携帯電話ex115などの各機器が接続される。
FIG. 21 is a block diagram showing an overall configuration of a content supply system ex100 that implements a content distribution service. The communication service providing area is divided into desired sizes, and base stations ex107 to ex110, which are fixed radio stations, are installed in each cell.
The content supply system ex100 includes, for example, a computer ex111, a PDA (personal digital assistant) ex112, a camera ex113, a mobile phone ex114, a camera via the Internet ex101, the Internet service provider ex102, the telephone network ex104, and the base stations ex107 to ex110. Each device such as the attached mobile phone ex115 is connected.
しかし、コンテンツ供給システムex100は図21のような組合せに限定されず、いずれかを組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex107〜ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、PDC(Personal Digital Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband-Code Division Multiple Access)方式、若しくはGSM(Global System for Mobile Communications)方式の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
However, the content supply system ex100 is not limited to the combination as shown in FIG. 21, and may be connected in any combination. Further, each device may be directly connected to the telephone network ex104 without going through the base stations ex107 to ex110 which are fixed wireless stations.
The camera ex113 is a device capable of shooting a moving image such as a digital video camera. The mobile phone is a PDC (Personal Digital Communications) system, a CDMA (Code Division Multiple Access) system, a W-CDMA (Wideband-Code Division Multiple Access) system, or a GSM (Global System for Mobile Communications) system mobile phone, Alternatively, PHS (Personal Handyphone System) or the like may be used.
また、ストリーミングサーバex103は、カメラex113から基地局ex109、電話網ex104を通じて接続されており、カメラex113を用いてユーザが送信する符号化処理されたデータに基づいたライブ配信等が可能になる。撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするサーバ等で行ってもよい。また、カメラ116で撮影した動画データはコンピュータex111を介してストリーミングサーバex103に送信されてもよい。カメラex116はデジタルカメラ等の静止画、動画が撮影可能な機器である。この場合、動画データの符号化はカメラex116で行ってもコンピュータex111で行ってもどちらでもよい。また、符号化処理はコンピュータex111やカメラex116が有するLSIex117において処理することになる。なお、画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な記録媒体である何らかの蓄積メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込んでもよい。さらに、カメラ付きの携帯電話ex115で動画データを送信してもよい。このときの動画データは携帯電話ex115が有するLSIで符号化処理されたデータである。 In addition, the streaming server ex103 is connected from the camera ex113 through the base station ex109 and the telephone network ex104, and live distribution or the like based on the encoded data transmitted by the user using the camera ex113 becomes possible. The encoded processing of the captured data may be performed by the camera ex113 or may be performed by a server or the like that performs data transmission processing. Further, the moving image data shot by the camera 116 may be transmitted to the streaming server ex103 via the computer ex111. The camera ex116 is a device that can shoot still images and moving images, such as a digital camera. In this case, the encoding of the moving image data may be performed by the camera ex116 or the computer ex111. The encoding process is performed in the LSI ex117 included in the computer ex111 and the camera ex116. Note that image encoding / decoding software may be incorporated into any storage medium (CD-ROM, flexible disk, hard disk, etc.) that is a recording medium readable by the computer ex111 or the like. Furthermore, you may transmit moving image data with the mobile telephone ex115 with a camera. The moving image data at this time is data encoded by the LSI included in the mobile phone ex115.
このコンテンツ供給システムex100では、ユーザがカメラex113、カメラex116等で撮影しているコンテンツ(例えば、音楽ライブを撮影した映像等)を上記実施の形態同様に符号化処理してストリーミングサーバex103に送信する一方で、ストリーミングサーバex103は要求のあったクライアントに対して上記コンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114等がある。このようにすることでコンテンツ供給システムex100は、符号化されたデータをクライアントにおいて受信して再生することができ、さらにクライアントにおいてリアルタイムで受信して復号化し、再生することにより、個人放送をも実現可能になるシステムである。 In this content supply system ex100, the content (for example, video shot of music live) captured by the user with the camera ex113, camera ex116, etc. is encoded and transmitted to the streaming server ex103 as in the above embodiment. On the other hand, the streaming server ex103 distributes the content data to the requested client. Examples of the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, and the like that can decode the encoded data. In this way, the content supply system ex100 can receive and reproduce the encoded data at the client, and also realize personal broadcasting by receiving, decoding, and reproducing in real time at the client. It is a system that becomes possible.
このシステムを構成する各機器の符号化には上記各実施の形態で示した動画像符号化装置を用いるようにすればよい。
その一例として携帯電話について説明する。
図22は、上記実施の形態で説明した動画像符号化装置を用いた携帯電話ex115を示す図である。携帯電話ex115は、基地局ex110との間で電波を送受信するためのアンテナex201、CCDカメラ等の映像、静止画を撮ることが可能なカメラ部ex203、カメラ部ex203で撮影した映像、アンテナex201で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex202、操作キーex204群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex208、音声入力をするためのマイク等の音声入力部ex205、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータまたは復号化されたデータを保存するための記録メディアex207、携帯電話ex115に記録メディアex207を装着可能とするためのスロット部ex206を有している。記録メディアex207はSDカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(Electrically Erasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものである。
The moving picture coding apparatus described in each of the above embodiments may be used for coding of each device constituting this system.
A mobile phone will be described as an example.
FIG. 22 is a diagram illustrating the mobile phone ex115 using the video encoding device described in the above embodiment. The cellular phone ex115 includes an antenna ex201 for transmitting and receiving radio waves to and from the base station ex110, a camera such as a CCD camera, a camera unit ex203 capable of taking a still image, a video shot by the camera unit ex203, and an antenna ex201. A display unit ex202 such as a liquid crystal display that displays data obtained by decoding received video and the like, a main body unit composed of a group of operation keys ex204, an audio output unit ex208 such as a speaker for audio output, and audio input To store encoded data or decoded data such as a voice input unit ex205 such as a microphone, captured video or still image data, received mail data, video data or still image data, etc. Recording medium ex207, and slot portion ex20 for enabling recording medium ex207 to be attached to mobile phone ex115 The has. The recording medium ex207 stores a flash memory element which is a kind of EEPROM (Electrically Erasable and Programmable Read Only Memory) which is a nonvolatile memory that can be electrically rewritten and erased in a plastic case such as an SD card.
さらに、携帯電話ex115について図23を用いて説明する。携帯電話ex115は表示部ex202及び操作キーex204を備えた本体部の各部を統括的に制御するようになされた主制御部ex311に対して、電源回路部ex310、操作入力制御部ex304、画像符号化部ex312、カメラインターフェース部ex303、LCD(Liquid Crystal Display)制御部ex302、画像復号化部ex309、多重分離部ex308、記録再生部ex307、変復調回路部ex306及び音声処理部ex305が同期バスex313を介して互いに接続されている。 Further, the cellular phone ex115 will be described with reference to FIG. The cellular phone ex115 controls the power supply circuit ex310, the operation input control unit ex304, and the image coding for the main control unit ex311 which is configured to control the respective units of the main body unit including the display unit ex202 and the operation key ex204. Unit ex312, camera interface unit ex303, LCD (Liquid Crystal Display) control unit ex302, image decoding unit ex309, demultiplexing unit ex308, recording / reproducing unit ex307, modulation / demodulation circuit unit ex306, and audio processing unit ex305 via a synchronization bus ex313 Are connected to each other.
電源回路部ex310は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話ex115を動作可能な状態に起動する。
携帯電話ex115は、CPU、ROM及びRAM等でなる主制御部ex311の制御に基づいて、音声通話モード時に音声入力部ex205で集音した音声信号を音声処理部ex305によってディジタル音声データに変換し、これを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。また携帯電話機ex115は、音声通話モード時にアンテナex201で受信した受信信号を増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex306でスペクトラム逆拡散処理し、音声処理部ex305によってアナログ音声信号に変換した後、これを音声出力部ex208を介して出力する。
When the end call and power key are turned on by a user operation, the power supply circuit ex310 activates the camera-equipped digital mobile phone ex115 by supplying power from the battery pack to each unit. .
The mobile phone ex115 converts the voice signal collected by the voice input unit ex205 in the voice call mode into digital voice data by the voice processing unit ex305 based on the control of the main control unit ex311 including a CPU, a ROM, a RAM, and the like. The modulation / demodulation circuit unit ex306 performs spread spectrum processing, and the transmission / reception circuit unit ex301 performs digital analog conversion processing and frequency conversion processing, and then transmits the result via the antenna ex201. In addition, the cellular phone ex115 amplifies the received signal received by the antenna ex201 in the voice call mode, performs frequency conversion processing and analog-digital conversion processing, performs spectrum despreading processing by the modulation / demodulation circuit unit ex306, and analog audio by the voice processing unit ex305. After conversion into a signal, this is output via the audio output unit ex208.
さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーex204の操作によって入力された電子メールのテキストデータは操作入力制御部ex304を介して主制御部ex311に送出される。主制御部ex311は、テキストデータを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して基地局ex110へ送信する。 Further, when an e-mail is transmitted in the data communication mode, text data of the e-mail input by operating the operation key ex204 of the main body is sent to the main control unit ex311 via the operation input control unit ex304. The main control unit ex311 performs spread spectrum processing on the text data in the modulation / demodulation circuit unit ex306, performs digital analog conversion processing and frequency conversion processing in the transmission / reception circuit unit ex301, and then transmits the text data to the base station ex110 via the antenna ex201.
データ通信モード時に画像データを送信する場合、カメラ部ex203で撮像された画像データをカメラインターフェース部ex303を介して画像符号化部ex312に供給する。また、画像データを送信しない場合には、カメラ部ex203で撮像した画像データをカメラインターフェース部ex303及びLCD制御部ex302を介して表示部ex202に直接表示することも可能である。 When transmitting image data in the data communication mode, the image data captured by the camera unit ex203 is supplied to the image encoding unit ex312 via the camera interface unit ex303. When image data is not transmitted, the image data captured by the camera unit ex203 can be directly displayed on the display unit ex202 via the camera interface unit ex303 and the LCD control unit ex302.
画像符号化部ex312は、本願発明で説明した画像符号化装置を備えた構成であり、カメラ部ex203から供給された画像データを上記実施の形態で示した画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex308に送出する。また、このとき同時に携帯電話機ex115は、カメラ部ex203で撮像中に音声入力部ex205で集音した音声を音声処理部ex305を介してディジタルの音声データとして多重分離部ex308に送出する。 The image encoding unit ex312 has a configuration including the image encoding device described in the present invention, and an encoding method using the image data supplied from the camera unit ex203 in the image encoding device described in the above embodiment. The encoded image data is converted into encoded image data by compression encoding, and sent to the demultiplexing unit ex308. At the same time, the cellular phone ex115 sends the sound collected by the audio input unit ex205 during imaging by the camera unit ex203 to the demultiplexing unit ex308 as digital audio data via the audio processing unit ex305.
多重分離部ex308は、画像符号化部ex312から供給された符号化画像データと音声処理部ex305から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。 The demultiplexing unit ex308 multiplexes the encoded image data supplied from the image encoding unit ex312 and the audio data supplied from the audio processing unit ex305 by a predetermined method, and the multiplexed data obtained as a result is a modulation / demodulation circuit unit A spectrum spread process is performed in ex306, a digital analog conversion process and a frequency conversion process are performed in the transmission / reception circuit unit ex301, and then the signal is transmitted through the antenna ex201.
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex201を介して基地局ex110から受信した受信信号を変復調回路部ex306でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex308に送出する。
また、アンテナex201を介して受信された多重化データを復号化するには、多重分離部ex308は、多重化データを分離することにより画像データの符号化ビットストリームと音声データの符号化ビットストリームとに分け、同期バスex313を介して当該符号化画像データを画像復号化部ex309に供給すると共に当該音声データを音声処理部ex305に供給する。
When receiving data of a moving image file linked to a home page or the like in the data communication mode, the received signal received from the base station ex110 via the antenna ex201 is subjected to spectrum despreading processing by the modulation / demodulation circuit unit ex306, and the resulting multiplexing is obtained. Is sent to the demultiplexing unit ex308.
In addition, in order to decode the multiplexed data received via the antenna ex201, the demultiplexing unit ex308 separates the multiplexed data to generate an encoded bitstream of image data and an encoded bitstream of audio data. The encoded image data is supplied to the image decoding unit ex309 via the synchronization bus ex313, and the audio data is supplied to the audio processing unit ex305.
次に、画像復号化部ex309は、画像データの符号化ビットストリームを上記実施の形態で示した符号化方法に対応した復号化方法で復号することにより再生動画像データを生成し、これをLCD制御部ex302を介して表示部ex202に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex305は、音声データをアナログ音声信号に変換した後、これを音声出力部ex208に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まる音声データが再生される。 Next, the image decoding unit ex309 generates reproduction moving image data by decoding the encoded bit stream of the image data with a decoding method corresponding to the encoding method described in the above embodiment, and generates the reproduced moving image data. This is supplied to the display unit ex202 via the control unit ex302, and thereby, for example, moving image data included in a moving image file linked to a home page is displayed. At the same time, the audio processing unit ex305 converts the audio data into an analog audio signal, and then supplies the analog audio signal to the audio output unit ex208. Thus, for example, the audio data included in the moving image file linked to the home page is reproduced. The
なお、上記システムの例に限られず、最近は衛星、地上波によるディジタル放送が話題となっており、図24に示すようにディジタル放送用システムにも上記実施の形態の画像符号化装置を組み込むことができる。具体的には、放送局ex409では映像情報の符号化ビットストリームが電波を介して通信または放送衛星ex410に伝送される。これを受けた放送衛星ex410は、放送用の電波を発信し、この電波を衛星放送受信設備をもつ家庭のアンテナex406で受信し、テレビ(受信機)ex401またはセットトップボックス(STB)ex407などの装置により符号化ビットストリームを復号化してこれを再生する。また、記録媒体であるCDやDVD等の蓄積メディアex402に記録した符号化ビットストリームを読み取り、復号化する再生装置ex403にも上記実施の形態で示した画像復号化装置を実装することが可能である。この場合、再生された映像信号はモニタex404に表示される。また、ケーブルテレビ用のケーブルex405または衛星/地上波放送のアンテナex406に接続されたセットトップボックスex407内に画像復号化装置を実装し、これをテレビのモニタex408で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に画像復号化装置を組み込んでも良い。また、アンテナex411を有する車ex412で衛星ex410からまたは基地局ex107等から信号を受信し、車ex412が有するカーナビゲーションex413等の表示装置に動画を再生することも可能である。 It should be noted that the present invention is not limited to the above-described system, and recently, digital broadcasting using satellites and terrestrial waves has become a hot topic, and as shown in FIG. Can do. Specifically, in the broadcasting station ex409, the encoded bit stream of the video information is transmitted to the communication or broadcasting satellite ex410 via radio waves. Receiving this, the broadcasting satellite ex410 transmits a radio wave for broadcasting, and receives the radio wave with a home antenna ex406 having a satellite broadcasting receiving facility, such as a television (receiver) ex401 or a set top box (STB) ex407. The device decodes the encoded bit stream and reproduces it. In addition, the image decoding apparatus described in the above embodiment can also be mounted on a playback apparatus ex403 that reads and decodes an encoded bitstream recorded on a storage medium ex402 such as a CD or DVD as a recording medium. is there. In this case, the reproduced video signal is displayed on the monitor ex404. Further, a configuration in which an image decoding device is mounted in a set-top box ex407 connected to a cable ex405 for cable television or an antenna ex406 for satellite / terrestrial broadcasting, and this is reproduced on the monitor ex408 of the television is also conceivable. At this time, the image decoding apparatus may be incorporated in the television instead of the set top box. It is also possible to receive a signal from the satellite ex410 or the base station ex107 by the car ex412 having the antenna ex411 and reproduce a moving image on a display device such as the car navigation ex413 that the car ex412 has.
更に、画像信号を上記実施の形態で示した画像符号化装置で符号化し、記録媒体に記録することもできる。具体例としては、DVDディスクex421に画像信号を記録するDVDレコーダや、ハードディスクに記録するディスクレコーダなどのレコーダex420がある。更にSDカードex422に記録することもできる。レコーダex420が上記実施の形態で示した画像復号化装置を備えていれば、DVDディスクex421やSDカードex422に記録した画像信号を再生し、モニタex408で表示することができる。 Further, the image signal can be encoded by the image encoding device shown in the above embodiment and recorded on a recording medium. As a specific example, there is a recorder ex420 such as a DVD recorder that records an image signal on a DVD disk ex421 or a disk recorder that records on a hard disk. Further, it can be recorded on the SD card ex422. If the recorder ex420 includes the image decoding device described in the above embodiment, the image signal recorded on the DVD disc ex421 or the SD card ex422 can be reproduced and displayed on the monitor ex408.
なお、カーナビゲーションex413の構成は例えば図23に示す構成のうち、カメラ部ex203とカメラインターフェース部ex303、画像符号化部ex312を除いた構成が考えられ、同様なことがコンピュータex111やテレビ(受信機)ex401等でも考えられる。 For example, the configuration of the car navigation ex413 may be a configuration excluding the camera unit ex203, the camera interface unit ex303, and the image encoding unit ex312 in the configuration illustrated in FIG. 23. The same applies to the computer ex111 and the television (receiver). ) Ex401 can also be considered.
また、上記携帯電話ex114等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の3通りの実装形式が考えられる。
このように、上記実施の形態で示した動画像符号化装置を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記実施の形態で説明した効果を得ることができる。
In addition to the transmission / reception type terminal having both the encoder and the decoder, the terminal such as the mobile phone ex114 has three mounting formats: a transmitting terminal having only an encoder and a receiving terminal having only a decoder. Can be considered.
As described above, the moving picture coding apparatus described in the above embodiment can be used in any of the above-described devices and systems, and by doing so, the effects described in the above embodiment can be obtained. .
[全実施形態共通の変形例]
(1)
前記実施形態では、16×16のマクロブロックを各分割候補によって分割したマクロブロックパーティションを小ブロックとして動き推定の単位として扱ってきた。この場合、図25に示すように、8×8の分割方法で得られた小ブロックをさらに8×8、8×4、4×8,4×4のサブマクロブロックパーティションに分割することができ、このサブマクロブロックパーティションを本発明の小ブロックとして本発明を適用できる。
[Modifications common to all embodiments]
(1)
In the above embodiment, a macroblock partition obtained by dividing a 16 × 16 macroblock by each division candidate has been treated as a unit of motion estimation as a small block. In this case, as shown in FIG. 25, the small block obtained by the 8 × 8 division method can be further divided into 8 × 8, 8 × 4, 4 × 8, and 4 × 4 sub-macroblock partitions. Therefore, the present invention can be applied by using this sub-macroblock partition as a small block of the present invention.
(2)
ブロック図(例えば、図1、図16、図19、図23など)の各機能ブロックは典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されても良いし、一部又は全てを含むように1チップ化されても良い。
(2)
Each functional block in the block diagrams (for example, FIG. 1, FIG. 16, FIG. 19, FIG. 23, etc.) is typically implemented as an LSI that is an integrated circuit. These may be individually made into one chip, or may be made into one chip so as to include a part or all of them.
より具体的には、図1の動き推定部10は、1チップ化されてもよい。さらに、図1のメモリ26以外の機能ブロックが1チップ化されていてもよい。また、図16のインター予測部3と符号化モード決定部63とイントラ予測部61とが1チップ化されてもよい。さらに図16のメモリ26以外の機能ブロックが1チップ化されていてもよい。また、図19のインター予測部92と符号化モード決定部93とが1チップ化されていてもよい。さらに、図19のメモリ以外の機能ブロックが1チップ化されていてもよい。
More specifically, the motion estimation unit 10 in FIG. 1 may be integrated into one chip. Furthermore, functional blocks other than the
なおここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
Note that the name used here is LSI, but it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.
Further, the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible. An FPGA (Field Programmable Gate Array) that can be programmed after manufacturing the LSI or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。 Further, if integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Biotechnology can be applied.
本発明に係る符号化モード決定装置、画像符号化装置、符号化モード決定方法、および符号化モード決定プログラムにより、より少ない処理量で適切な符号化モードの選択が可能となり、上記分野において有用である。 The encoding mode determination device, the image encoding device, the encoding mode determination method, and the encoding mode determination program according to the present invention enable selection of an appropriate encoding mode with a smaller amount of processing, which is useful in the above field. is there.
1 エンコーダ
2 イントラ予測部
3 インター予測部
4 切換部
10 動き推定部
13 フルペル予測部
14 分割方法候補選択部
15 サブペル予測部
16 分割方法決定部
60 エンコーダ
61 イントラ予測部
62 インター予測部
63 符号化モード決定部
64 切換部
65 動き推定部
67 符号化ピクチャ構造決定部
68 イントラ/インター選択部
91 イントラ予測部
92 インター予測部
93 符号化モード決定部
94 切換部
95 動き推定部
96 決定部
97 イントラ/インター選択部
98 符号化ピクチャ構造決定部
99 制御部
1
Claims (31)
各符号化モードによってそれぞれ得られる画像ブロックのパーティションである小ブロックに対する簡易な動き推定に基づいて、各符号化モードの符号化コストである第1符号化コストを導出する簡易動き推定部と、
前記簡易動き推定部によって導出された第1符号化コストに基づいて、前記複数の符号化モードから一部の符号化モードを選択する符号化モード選択部と、
前記一部の符号化モードの少なくとも一部の符号化モードによって得られる小ブロックに対する複雑な動き推定に基づいて、各符号化モードの符号化コストである第2符号化コストを導出する複雑動き推定部と、
前記複雑動き推定部によって導出された第2符号化コストに基づいて、前記画像ブロックの符号化モードを決定する符号化モード決定部と、
を備え、
前記複雑動き推定部は、
前記簡易動き推定部における簡易な動き推定に基づいて、前記複雑な動き推定の際のピクチャ参照方向を決定し、
前記簡易動き推定部における前記小ブロックに対する簡易な動き推定の結果、前方向予測の第1符号化コストと後方向予測の第1符号化コストとが同じ場合は両方を選択し、異なる場合は符号化コストが小さい方のみを選択して、前記第2符号化コストを算出する、
符号化モード決定装置。 An encoding mode determining apparatus that determines at least one encoding mode of an image block from a plurality of candidates,
A simple motion estimation unit that derives a first encoding cost that is an encoding cost of each encoding mode based on simple motion estimation for a small block that is a partition of an image block obtained by each encoding mode;
An encoding mode selection unit that selects a part of the encoding modes from the plurality of encoding modes based on the first encoding cost derived by the simple motion estimation unit;
Complex motion estimation for deriving a second coding cost that is a coding cost of each coding mode based on a complex motion estimation for a small block obtained by at least a part of the coding modes. And
An encoding mode determination unit that determines an encoding mode of the image block based on a second encoding cost derived by the complex motion estimation unit;
Equipped with a,
The complex motion estimator is
Based on the simple motion estimation in the simple motion estimation unit, determine a picture reference direction in the complex motion estimation,
As a result of simple motion estimation for the small block in the simple motion estimation unit, if the first encoding cost for forward prediction and the first encoding cost for backward prediction are the same, both are selected, and if different, the code is Selecting only the one with the smaller encoding cost and calculating the second encoding cost;
Encoding mode determination device.
請求項1に記載の符号化モード決定装置。 When deriving the first coding cost, the simple motion estimation unit performs simple motion estimation in a plurality of picture reference directions for each small block obtained by each coding mode, and reduces the first coding cost. Next, for each small block, a picture reference direction with the low first coding cost is selected, and the first coding cost of all small blocks related to the selected picture reference direction is then determined for each division method candidate. To derive the first encoding cost of the encoding mode for each candidate division method,
The encoding mode determination device according to claim 1.
請求項1に記載の符号化モード決定装置。 When deriving the first coding cost, the simple motion estimation unit performs simple motion estimation in a plurality of picture reference directions for each small block obtained by each coding mode, and reduces the first coding cost. calculated, then converted to the first cost of coding each picture reference direction of the small blocks into image blocks, the first coding cost of coding mode for each picture reference direction of each candidate dividing To derive,
The encoding mode determination device according to claim 1.
請求項2又は3に記載の符号化モード決定装置。 The simple motion estimation in the reference direction of the plurality of pictures of the simple motion estimation unit includes only forward prediction referring to a temporally forward picture and backward prediction referring to a temporally backward picture. ,
The encoding mode determination device according to claim 2 or 3.
請求項2又は3に記載の符号化モード決定装置。 The simple motion estimation in the plurality of picture reference directions of the simple motion estimator includes forward prediction referring to a temporally forward picture, backward prediction referring to a temporally backward picture, temporal Bi-directional prediction with reference to bi-directional pictures,
The encoding mode determination device according to claim 2 or 3.
前記簡易動き推定部は、前記前方向予測と前記後方向予測とに基づいて、時間的に双方向のピクチャを参照する双方向予測を行った場合の符号化コストを導出する、
請求項2又は3に記載の符号化モード決定装置。 The simple motion estimation in the plurality of picture reference directions of the simple motion estimation unit includes forward prediction that refers to a temporally forward picture and backward prediction that refers to a temporally backward picture. ,
The simple motion estimator derives a coding cost when bi-directional prediction referring to a bi-directional picture is performed based on the forward prediction and the backward prediction.
The encoding mode determination device according to claim 2 or 3.
請求項1〜6のいずれかに記載の符号化モード決定装置。 The complex motion estimation unit further selects at least a part of the coding mode from the part of the coding modes based on simple motion estimation for the small block in the simple motion estimation unit;
The encoding mode determination device according to any one of claims 1 to 6 .
請求項1〜6のいずれかに記載の符号化モード決定装置。 The encoding mode determination device according to any one of claims 1 to 6.
請求項1に記載の符号化モード決定装置。 The complex motion estimator selects each coding mode in ascending order of the first coding cost, and while the sum of the processing amount of the selected coding mode does not exceed the processing margin amount , When the first coding cost is repeated, the second coding cost is derived, and when the sum of the processing amounts of the selected coding mode exceeds the processing margin amount, the selection of the coding mode is performed. Discontinue, do not perform the second encoding cost derivation process after the sum of the processing amount of the selected encoding mode exceeds the processing margin amount,
The encoding mode determination device according to claim 1 .
請求項8又は9に記載の符号化モード決定装置。 The encoding mode determination apparatus according to claim 8 or 9.
請求項8又は9に記載の符号化モード決定装置。 The encoding mode determination apparatus according to claim 8 or 9.
前記簡易動き推定部の前記複数のピクチャ参照方向の簡易な動き推定が、時間的に双方向のピクチャを参照する双方向予測により実行される場合、ピクチャを参照する方向の数をカウントせず、 When the simple motion estimation of the plurality of picture reference directions of the simple motion estimation unit is executed by bidirectional prediction that refers to temporally bidirectional pictures, the number of directions referring to pictures is not counted,
前記簡易動き推定部の前記複数のピクチャ参照方向の簡易な動き推定が、時間的に双方向のピクチャを参照する双方向予測以外により実行される場合、ピクチャを参照する方向の数をカウントする、 When simple motion estimation in the plurality of picture reference directions of the simple motion estimation unit is performed by other than bidirectional prediction that refers to temporally bidirectional pictures, the number of directions referring to pictures is counted.
ことにより求めた参照方向数に比例するように算出される、 Calculated to be proportional to the number of reference directions obtained by
請求項11に記載の符号化モード決定装置。 The encoding mode determination device according to claim 11.
請求項1〜12のいずれかに記載の符号化モード決定装置。 The simple motion estimation unit, so that the processing amount of the motion estimation process is maintained substantially constant, the motion estimation scheme definitive in the simple motion estimation, is changed according to the image attribute,
Coding mode determining apparatus according to any one of claims 1 to 1 2.
請求項1〜12のいずれかに記載の符号化モード決定装置。The encoding mode determination apparatus according to any one of claims 1 to 12.
請求項1〜12のいずれかに記載の符号化モード決定装置。The encoding mode determination apparatus according to any one of claims 1 to 12.
請求項13〜15のいずれかに記載の符号化モード決定装置。The encoding mode determination device according to any one of claims 13 to 15.
請求項16に記載の符号化モード決定装置。The encoding mode determination device according to claim 16.
請求項16に記載の符号化モード決定装置。The encoding mode determination device according to claim 16.
請求項16に記載の符号化モード決定装置。The encoding mode determination device according to claim 16.
(1)Pピクチャでは前方4枚を参照し、Bピクチャでは前方2枚・後方2枚を参照する、 (1) P picture refers to the front 4 pictures, B picture refers to the front 2 pictures and the back 2 pictures,
(2)Pピクチャでは前方3枚を参照し、B ピクチャでは前方2枚・後方1枚を参照する、 (2) The P picture refers to the front 3 pictures, and the B picture refers to the front 2 pictures and the rear 1 picture.
(3)Pピクチャでは前方2枚を参照し、Bピクチャでは前方1枚・後方1枚を参照する、 (3) P picture refers to the front two pictures, B picture refers to the front one and the rear one
のいずれか1つにより、ピクチャ単位で動き推定の処理量が一定に保たれるようにする、 By any one of the above, the processing amount of motion estimation is kept constant for each picture.
請求項16に記載の符号化モード決定装置。The encoding mode determination device according to claim 16.
請求項16に記載の符号化モード決定装置。 The encoding mode determination device according to claim 16.
(1)Pピクチャでは前方1枚を参照し、16画素×16画素、16画素×8画素,8画素×16画素,8画素×8画素の4つのパーティションサイズで予測を行い、Bピクチャでは、前記4つのパーティションサイズからいずれか2つのパーティションサイズを選択し、選択した2つのパーティションサイズについて、それぞれ、前方予測および後方予測を行う、 (1) With reference to the front one in the P picture, prediction is performed with four partition sizes of 16 pixels × 16 pixels, 16 pixels × 8 pixels, 8 pixels × 16 pixels, and 8 pixels × 8 pixels. Select any two partition sizes from the four partition sizes, and perform forward prediction and backward prediction for the two selected partition sizes, respectively.
(2)Pピクチャでは後方1枚を参照し、16画素×16画素、16画素×8画素、8画素×16画素、8画素×8画素の4つのパーティションサイズで予測を行い、Bピクチャでは、前記4つのパーティションサイズからいずれか2つのパーティションサイズを選択し、選択した2つのパーティションサイズについて、それぞれ、前方予測と後方予測を行う、 (2) In the P picture, the back one is referenced, and prediction is performed with four partition sizes of 16 pixels × 16 pixels, 16 pixels × 8 pixels, 8 pixels × 16 pixels, and 8 pixels × 8 pixels. Select any two partition sizes from the four partition sizes, and perform forward prediction and backward prediction for the two selected partition sizes, respectively.
のいずれかにより、ピクチャ単位での動き推定の処理量が一定に保たれるようにする、 To ensure that the amount of motion estimation processing per picture is kept constant,
請求項16に記載の符号化モード決定装置。The encoding mode determination device according to claim 16.
請求項16に記載の符号化モード決定装置。 The encoding mode determination device according to claim 16.
(1)Pピクチャの場合、プログレッシブ形式のPピクチャでは、前方2フレームを参照し、インターレース形式のPピクチャでは、前方2フィールドを参照する、 (1) In the case of a P picture, a progressive P picture refers to the front two frames, and an interlaced P picture refers to the front two fields.
(2)Pピクチャの場合、プログレッシブ形式のPピクチャでは、前方1フレームを参照し、16画素×16画素、16画素×8画素、8画素×16画素、8画素×8画素の4つのパーティションサイズについて、それぞれ、予測を行い、インターレース形式のPピクチャでは、前方2フィールドを参照し、16画素×16画素、16画素×8画素、8画素×16画素、8画素×8画素の4つのパーティションサイズからいずれか2つのパーティションサイズを選択し、選択した2つのパーティションサイズについて、それぞれ、予測を行う、 (2) In the case of a P picture, the progressive P picture refers to the front one frame, and has four partition sizes of 16 pixels × 16 pixels, 16 pixels × 8 pixels, 8 pixels × 16 pixels, and 8 pixels × 8 pixels. In the interlaced P picture, reference is made to the two front fields, and the four partition sizes of 16 pixels × 16 pixels, 16 pixels × 8 pixels, 8 pixels × 16 pixels, and 8 pixels × 8 pixels are respectively predicted. Select any two partition sizes from and perform prediction for each of the two selected partition sizes.
請求項16に記載の符号化モード決定装置。The encoding mode determination device according to claim 16.
請求項16に記載の符号化モード決定装置。The encoding mode determination device according to claim 16.
前記複雑な動き推定は、非整数画素精度の動き推定である、
請求項1〜25のいずれかに記載の符号化モード決定装置。 The simple motion estimation is motion estimation with integer pixel accuracy;
The complex motion estimation is motion estimation with non-integer pixel accuracy;
The encoding mode determination device according to any one of claims 1 to 25 .
集積回路。 The encoding mode determination device according to any one of claims 1 to 26 is included.
Integrated circuit.
前記符号化モード決定装置が決定する画像ブロックの符号化モードに基づいて、前記画像ブロックの符号化を行う符号化装置と、
を備える画像符号化装置。 The encoding mode determination device according to any one of claims 1 to 26 ,
An encoding device for encoding the image block based on the encoding mode of the image block determined by the encoding mode determination device;
An image encoding device comprising:
集積回路。 An image encoding device according to claim 28 ,
Integrated circuit.
各符号化モードによってそれぞれ得られる画像ブロックのパーティションである小ブロックに対する簡易な動き推定に基づいて、各符号化モードの符号化コストである第1符号化コストを導出する簡易動き推定ステップと、
前記簡易動き推定ステップによって導出された第1符号化コストに基づいて、前記複数の符号化モードから一部の符号化モードを選択する符号化モード選択ステップと、
前記一部の符号化モードの少なくとも一部の符号化モードによって得られる小ブロックに対する複雑な動き推定に基づいて、各符号化モードの符号化コストである第2符号化コストを導出する複雑動き推定ステップと、
前記複雑動き推定ステップによって導出された第2符号化コストに基づいて、前記画像ブロックの符号化モードを決定する符号化モード決定ステップと、
を含み、
前記複雑動き推定ステップでは、
前記簡易動き推定ステップにおける簡易な動き推定に基づいて、前記複雑な動き推定の際のピクチャ参照方向を決定し、
前記簡易動き推定ステップにおける前記小ブロックに対する簡易な動き推定の結果、前方向予測の第1符号化コストと後方向予測の第1符号化コストとが同じ場合は両方を選択し、異なる場合は符号化コストが小さい方のみを選択して前記第2符号化コストを導出する、
符号化モード決定方法。 An encoding mode determination method for determining an encoding mode of an image block as at least one of a plurality of candidates,
A simple motion estimation step for deriving a first encoding cost that is an encoding cost of each encoding mode based on simple motion estimation for a small block that is a partition of an image block obtained by each encoding mode;
An encoding mode selection step of selecting a part of the encoding modes from the plurality of encoding modes based on the first encoding cost derived by the simple motion estimation step;
Complex motion estimation for deriving a second coding cost that is a coding cost of each coding mode based on a complex motion estimation for a small block obtained by at least a part of the coding modes. Steps,
A coding mode determining step for determining a coding mode of the image block based on the second coding cost derived by the complex motion estimation step;
Including
In the complex motion estimation step,
Based on the simple motion estimation in the simple motion estimation step, determine a picture reference direction in the complex motion estimation,
As a result of simple motion estimation for the small block in the simple motion estimation step, if the first encoding cost for forward prediction and the first encoding cost for backward prediction are the same, both are selected. Deriving the second encoding cost by selecting only the one with the smaller encoding cost,
Coding mode determination method.
前記符号化モード決定プログラムは、コンピュータに、
各符号化モードによってそれぞれ得られる画像ブロックのパーティションである小ブロックに対する簡易な動き推定に基づいて、各符号化モードの符号化コストである第1符号化コストを導出する簡易動き推定ステップと、
前記簡易動き推定ステップによって導出された第1符号化コストに基づいて、前記複数の符号化モードから一部の符号化モードを選択する符号化モード選択ステップと、
前記一部の符号化モードの少なくとも一部の符号化モードによって得られる小ブロックに対する複雑な動き推定に基づいて、各符号化モードの符号化コストである第2符号化コストを導出する複雑動き推定ステップと、
前記複雑動き推定ステップによって導出された第2符号化コストに基づいて、前記画像ブロックの符号化モードを決定する符号化モード決定ステップと、
を含み、
前記複雑動き推定ステップでは、
前記簡易動き推定ステップにおける簡易な動き推定に基づいて、前記複雑な動き推定の際のピクチャ参照方向を決定し、
前記簡易動き推定ステップにおける前記小ブロックに対する簡易な動き推定の結果、前方向予測の第1符号化コストと後方向予測の第1符号化コストとが同じ場合は両方を選択し、異なる場合は符号化コストが小さい方のみを選択して前記第2符号化コストを導出する、符号化モード決定方法を行わせるものである、
符号化モード決定プログラム。
An encoding mode determination program for determining at least one encoding mode of an image block from a plurality of candidates by a computer,
The encoding mode determining program is stored in a computer.
A simple motion estimation step for deriving a first encoding cost that is an encoding cost of each encoding mode based on simple motion estimation for a small block that is a partition of an image block obtained by each encoding mode;
An encoding mode selection step of selecting a part of the encoding modes from the plurality of encoding modes based on the first encoding cost derived by the simple motion estimation step;
Complex motion estimation for deriving a second coding cost that is a coding cost of each coding mode based on a complex motion estimation for a small block obtained by at least a part of the coding modes. Steps,
A coding mode determining step for determining a coding mode of the image block based on the second coding cost derived by the complex motion estimation step;
Including
In the complex motion estimation step,
Based on the simple motion estimation in the simple motion estimation step, determine a picture reference direction in the complex motion estimation,
As a result of simple motion estimation for the small block in the simple motion estimation step, if the first encoding cost for forward prediction and the first encoding cost for backward prediction are the same, both are selected. A coding mode determination method for selecting only the one with the smaller coding cost and deriving the second coding cost is performed.
Encoding mode determination program.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004213786A JP4369318B2 (en) | 2003-07-24 | 2004-07-22 | ENCODING MODE DETERMINING DEVICE, IMAGE ENCODING DEVICE, ENCODING MODE DETERMINING METHOD, AND ENCODING MODE DETERMINING PROGRAM |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003278698 | 2003-07-24 | ||
| JP2004213786A JP4369318B2 (en) | 2003-07-24 | 2004-07-22 | ENCODING MODE DETERMINING DEVICE, IMAGE ENCODING DEVICE, ENCODING MODE DETERMINING METHOD, AND ENCODING MODE DETERMINING PROGRAM |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2005057750A JP2005057750A (en) | 2005-03-03 |
| JP4369318B2 true JP4369318B2 (en) | 2009-11-18 |
Family
ID=34380053
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004213786A Expired - Fee Related JP4369318B2 (en) | 2003-07-24 | 2004-07-22 | ENCODING MODE DETERMINING DEVICE, IMAGE ENCODING DEVICE, ENCODING MODE DETERMINING METHOD, AND ENCODING MODE DETERMINING PROGRAM |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4369318B2 (en) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4612825B2 (en) * | 2004-09-21 | 2011-01-12 | キヤノン株式会社 | Image encoding apparatus and method, computer program, and computer-readable storage medium |
| JP4515922B2 (en) | 2005-01-11 | 2010-08-04 | パナソニック株式会社 | Data holding device, image encoding device, and image decoding device |
| JP4146444B2 (en) * | 2005-03-16 | 2008-09-10 | 株式会社東芝 | Video encoding method and apparatus |
| JP2006324888A (en) * | 2005-05-18 | 2006-11-30 | Fujitsu Ltd | Dynamic-image coding equipment |
| JP4686280B2 (en) * | 2005-07-06 | 2011-05-25 | 株式会社東芝 | Video encoding device |
| JP4623650B2 (en) | 2005-09-06 | 2011-02-02 | パナソニック株式会社 | Moving picture coding apparatus and moving picture coding method |
| KR100728031B1 (en) * | 2006-01-23 | 2007-06-14 | 삼성전자주식회사 | Method and apparatus for determining coding mode for variable block size motion prediction |
| JP4987322B2 (en) | 2006-02-28 | 2012-07-25 | 株式会社東芝 | Moving picture decoding apparatus and moving picture decoding method |
| JP4752631B2 (en) * | 2006-06-08 | 2011-08-17 | 株式会社日立製作所 | Image coding apparatus and image coding method |
| JP4789200B2 (en) * | 2006-08-07 | 2011-10-12 | ルネサスエレクトロニクス株式会社 | Functional module for executing either video encoding or video decoding and semiconductor integrated circuit including the same |
| JP4908180B2 (en) | 2006-12-20 | 2012-04-04 | 株式会社東芝 | Video encoding device |
| JP5086777B2 (en) * | 2007-11-20 | 2012-11-28 | キヤノン株式会社 | Image encoding apparatus, control method therefor, computer program, and computer-readable storage medium |
| US8238437B2 (en) | 2007-09-20 | 2012-08-07 | Canon Kabushiki Kaisha | Image encoding apparatus, image decoding apparatus, and control method therefor |
| JP2012004615A (en) * | 2010-06-14 | 2012-01-05 | Nippon Telegr & Teleph Corp <Ntt> | Motion vector search method, motion vector search apparatus and program therefor |
| JP2013098899A (en) * | 2011-11-04 | 2013-05-20 | Sony Corp | Encoder, encoding method, decoder and decoding method |
| JP6178698B2 (en) * | 2013-11-08 | 2017-08-09 | 日本電信電話株式会社 | Video encoding device |
| JP6187286B2 (en) * | 2014-01-28 | 2017-08-30 | 富士通株式会社 | Video encoding device |
| GB201405649D0 (en) * | 2014-03-28 | 2014-05-14 | Sony Corp | Data encoding and decoding |
| CN117176959B (en) * | 2023-11-02 | 2024-04-09 | 深圳传音控股股份有限公司 | Processing method, processing device and storage medium |
-
2004
- 2004-07-22 JP JP2004213786A patent/JP4369318B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2005057750A (en) | 2005-03-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1830214B (en) | Coding mode determination instrument, image coding instrument, coding mode determination method | |
| JP4369318B2 (en) | ENCODING MODE DETERMINING DEVICE, IMAGE ENCODING DEVICE, ENCODING MODE DETERMINING METHOD, AND ENCODING MODE DETERMINING PROGRAM | |
| EP1578137A2 (en) | Moving picture coding apparatus with multistep interpolation process | |
| JP4767991B2 (en) | Image encoding method and image encoding apparatus | |
| EP3349461B1 (en) | Method for coding and decoding b pictures in direct mode | |
| KR100956910B1 (en) | Motion vector derivation method, moving picture coding method, and moving picture decoding method | |
| AU2003281135B2 (en) | Moving picture coding apparatus and moving picture decoding apparatus | |
| JP4594201B2 (en) | Image coding method, image coding apparatus, program, and integrated circuit | |
| KR100557911B1 (en) | Image coding method and image decoding method | |
| JP4685636B2 (en) | Decoding device, encoding device, interpolation frame generation system, integrated circuit device, decoding program, and encoding program | |
| JP2005277968A (en) | Method for image coding and decoding | |
| JP2008079152A (en) | Image encoding method and image decoding method | |
| JP4495013B2 (en) | Video encoding device | |
| JP3824268B2 (en) | Motion vector deriving method and motion vector deriving device | |
| JP2005341545A (en) | Moving picture encoding method, moving picture decoding method, moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding program, and moving picture decoding program | |
| JP2004343408A (en) | Interpolation frame creation device, image decoding device, interpolation frame creation method, and interpolation frame creation program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070514 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20070514 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090519 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090526 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20090527 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090703 |
|
| 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: 20090804 |
|
| 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: 20090827 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120904 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130904 Year of fee payment: 4 |
|
| LAPS | Cancellation because of no payment of annual fees |