JP4395174B2 - Moving picture coding method, moving picture parallel coding encoder, moving picture parallel coding method, moving picture parallel coding apparatus, program thereof, and computer-readable recording medium recording the program - Google Patents

Moving picture coding method, moving picture parallel coding encoder, moving picture parallel coding method, moving picture parallel coding apparatus, program thereof, and computer-readable recording medium recording the program Download PDF

Info

Publication number
JP4395174B2
JP4395174B2 JP2007110014A JP2007110014A JP4395174B2 JP 4395174 B2 JP4395174 B2 JP 4395174B2 JP 2007110014 A JP2007110014 A JP 2007110014A JP 2007110014 A JP2007110014 A JP 2007110014A JP 4395174 B2 JP4395174 B2 JP 4395174B2
Authority
JP
Japan
Prior art keywords
strip
rectangular small
area
filtering process
encoding
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.)
Active
Application number
JP2007110014A
Other languages
Japanese (ja)
Other versions
JP2008271068A (en
Inventor
淳 嵯峨田
靖之 中島
充郎 池田
次郎 長沼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007110014A priority Critical patent/JP4395174B2/en
Publication of JP2008271068A publication Critical patent/JP2008271068A/en
Application granted granted Critical
Publication of JP4395174B2 publication Critical patent/JP4395174B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は,動画像の符号化を複数の符号化器を用いて並列に実行する動画像並列符号化方法に関するものである。   The present invention relates to a moving image parallel coding method for performing moving image coding in parallel using a plurality of encoders.

MPEG−2規格(ISO/IEC 13818−2)[非特許文献1参照]に準拠して並列符号化処理を行う場合において,入力された動画像の各フレームを水平方向に領域分割してN個の短冊状分割領域を生成し,N個の符号化器がそれぞれ一つの短冊状分割領域を担当して符号化する方法が提案されている[非特許文献2参照]。   When parallel encoding processing is performed in accordance with the MPEG-2 standard (ISO / IEC 13818-2) [see non-patent document 1], each frame of the input moving image is divided into N regions by horizontally dividing the frame. A method has been proposed in which a strip-shaped divided region is generated, and N encoders are in charge of encoding each strip-shaped divided region [see Non-Patent Document 2].

図9は,従来のMPEG−2規格に準拠した並列符号化処理の例を示すブロック図である。また,図10は,入力フレームを短冊状領域に分割する例を示している。図9では,入力フレームを図10に示すように4つの短冊状領域に分割し,4つの符号化器102〜105にて並列符号化動作を行う例を記載している。   FIG. 9 is a block diagram showing an example of parallel encoding processing conforming to the conventional MPEG-2 standard. FIG. 10 shows an example in which the input frame is divided into strip-shaped regions. FIG. 9 shows an example in which an input frame is divided into four strip-shaped areas as shown in FIG. 10 and parallel encoding operations are performed by four encoders 102 to 105.

入力フレームは,画面分割処理部101に入力され,N個(この例ではN=4)の短冊状領域(1〜4)に分割される。生成された各短冊状領域は,それぞれ符号化器102〜105に入力され,並列して同時に符号化され,各符号化器102〜105からそれぞれ分割符号化データが出力される。これらの分割符号化データは,ストリーム連結部106に入力される。各分割符号化データはそれぞれバイトアライメントがとれた状態であるため,ストリーム連結部106にて単純に連結することで,MPEG−2規格に準拠した符号化データが出力される。   The input frame is input to the screen division processing unit 101, and is divided into N (N = 4 in this example) strip-like regions (1 to 4). Each of the generated strip-shaped regions is input to the encoders 102 to 105 and is encoded simultaneously in parallel, and the divided encoded data is output from each of the encoders 102 to 105, respectively. These divided encoded data are input to the stream concatenation unit 106. Since each piece of divided encoded data is in a state in which byte alignment is achieved, encoded data that conforms to the MPEG-2 standard is output by simply connecting them at the stream connecting unit 106.

このMPEG−2規格に準拠した符号化器102〜105は,同一の構成からなる。符号化器102〜105の構成例を図11に示す。   The encoders 102 to 105 compliant with the MPEG-2 standard have the same configuration. A configuration example of the encoders 102 to 105 is shown in FIG.

各符号化器102〜105は,短冊状領域を処理対象の入力画像とする。入力された短冊状領域は,マクロブロック分割部110に入力される。マクロブロック分割部110は,短冊状領域をマクロブロックと呼ばれる16×16画素(輝度信号の場合)の符号化処理単位に分割し,処理対象マクロブロックとして減算器111に出力する。   Each of the encoders 102 to 105 uses a strip-shaped area as an input image to be processed. The input strip-shaped area is input to the macroblock dividing unit 110. The macroblock dividing unit 110 divides the strip-like area into 16 × 16 pixel (in the case of luminance signals) encoding processing units called macroblocks, and outputs them to the subtractor 111 as processing target macroblocks.

減算器111には,処理対象マクロブロックの入力と同時に,イントラインター選択部112によりインターが選択された場合にはインター予測画像マクロブロックが入力され,イントラが選択された場合には無効画像(画素値がすべて0のマクロブロック)が予測マクロブロックとして入力される。減算器111は,これらをマクロブロック内の画素単位で減算した結果をDCT部113に出力する。   At the same time as the input of the processing target macroblock, an inter-predicted image macroblock is input to the subtractor 111 when the intra / inter selection unit 112 selects inter. When an intra is selected, an invalid image (pixel) is selected. Macroblocks whose values are all 0) are input as predicted macroblocks. The subtractor 111 outputs a result obtained by subtracting them in units of pixels in the macroblock to the DCT unit 113.

DCT部113は,減算器111の出力に対してDCT変換を行い,DCT変換係数を量子化部114に出力する。量子化部114は,指定された量子化ステップにて量子化処理を行い,量子化係数を情報源符号化部115に出力する。情報源符号化部115は,ハフマン符号を用いた二次元可変長符号化を行い,分割符号化データを出力する。   The DCT unit 113 performs DCT conversion on the output of the subtractor 111 and outputs a DCT conversion coefficient to the quantization unit 114. The quantization unit 114 performs a quantization process at the designated quantization step, and outputs a quantization coefficient to the information source encoding unit 115. The information source encoding unit 115 performs two-dimensional variable length encoding using a Huffman code, and outputs divided encoded data.

量子化部114から出力される量子化係数は,逆量子化部116にも入力され,逆量子化処理が行われ,逆量子化部116から逆量子化後DCT変換係数が出力される。逆量子化後DCT変換係数は,逆DCT部117に入力され,逆DCT部117により逆DCT変換された変換後マクロブロックが加算器118に出力される。加算器118には,予測マクロブロックが併せて入力され,画素ごとに加算処理が行われ,加算結果のローカルデコードマクロブロックがフレームメモリ119に出力される。   The quantization coefficient output from the quantization unit 114 is also input to the inverse quantization unit 116, where inverse quantization processing is performed, and the inverse quantized DCT transform coefficient is output from the inverse quantization unit 116. The inverse quantized DCT transform coefficient is input to the inverse DCT unit 117, and the transformed macroblock subjected to the inverse DCT transform by the inverse DCT unit 117 is output to the adder 118. The adder 118 is also input with the prediction macroblock, the addition process is performed for each pixel, and the local decoding macroblock as the addition result is output to the frame memory 119.

フレームメモリ119では,マクロブロックを水平ラスタスキャン順に再構成を行い,短冊状領域ローカルデコード画像として記録する。なお,隣接する符号化器102〜105間でそれぞれ短冊状領域ローカルデコード画像を互いに転送することで,隣接する符号化器の所有する短冊状領域ローカルデコード画像を取得し,上隣接・下隣接の短冊状領域ローカルデコード画像を合わせて入力フレーム全体のローカルデコード画像を生成し,フレームメモリ119に記録してもよい。   In the frame memory 119, macroblocks are reconstructed in the order of horizontal raster scan, and are recorded as strip-shaped area local decoded images. It should be noted that the strip-shaped area local decoded images are respectively transferred between the adjacent encoders 102 to 105, thereby acquiring the strip-shaped area local decoded images owned by the adjacent encoders. The local decode image of the entire input frame may be generated by combining the strip-shaped area local decode images and recorded in the frame memory 119.

動き予測部120には,処理対象マクロブロックとローカルデコード画像が入力され,動き推定処理が行われ,推定された動きベクトルが動き補償部121に出力される。動き補償部121は,動きベクトルがローカルデコード画像内で示す位置のマクロブロックを抽出し,インター予測画像マクロブロックとしてイントラインター選択部112に出力する。   The motion prediction unit 120 receives the processing target macroblock and the local decoded image, performs a motion estimation process, and outputs the estimated motion vector to the motion compensation unit 121. The motion compensation unit 121 extracts a macroblock at a position indicated by the motion vector in the local decoded image, and outputs the macroblock to the intra / inter selection unit 112 as an inter predicted image macroblock.

同様に,H.264規格(ISO/IEC 14496−10)[非特許文献3参照]に準拠して並列符号化処理を行う場合についても,H.264規格の特徴であるループフィルタ処理(デブロッキングフィルタ処理)の機能をオフとした場合には,図9と同様な構成にて動画像並列符号化処理を実現することが可能である。   Similarly, H.M. The H.264 standard (ISO / IEC 14496-10) [see Non-Patent Document 3] also performs parallel encoding processing in accordance with H.264 standard. When the function of the loop filter process (deblocking filter process), which is a feature of the H.264 standard, is turned off, it is possible to realize the moving image parallel encoding process with the same configuration as in FIG.

すなわち,図9における符号化器において,MPEG−2規格に準拠して符号化処理を行うときと同様に,入力フレームは画面分割処理部101に入力され,図10に示すようにN個の短冊状領域に分割される。生成された各短冊状領域は,それぞれ符号化器102〜105に入力され,並列して同時にH.264規格に準拠して符号化され,各符号化器102〜105からそれぞれ分割符号化データが出力される。符号化器102〜105から出力された分割符号化データは,ストリーム連結部106に入力される。各分割符号化データはそれぞれバイトアライメントがとれた状態であるため,ストリーム連結部106にて単純に連結することで,H.264規格に準拠した符号化データが出力される。H.264規格(ループフィルタ設定はOFF)に準拠して並列符号化する場合の符号化器102〜105の構成例を図12に示す。   That is, in the encoder in FIG. 9, the input frame is input to the screen division processing unit 101 as in the case of performing the encoding process in conformity with the MPEG-2 standard, and N strips as shown in FIG. It is divided into like areas. Each of the generated strip-shaped regions is input to the encoders 102 to 105, respectively, and at the same time in parallel with H.264. The encoded data is encoded in accordance with the H.264 standard, and divided encoded data is output from each of the encoders 102 to 105. The divided encoded data output from the encoders 102 to 105 is input to the stream concatenation unit 106. Since each piece of divided encoded data is in a state in which the byte alignment is taken, the stream concatenation unit 106 simply concatenates each of the encoded data. The encoded data conforming to the H.264 standard is output. H. FIG. 12 shows a configuration example of the encoders 102 to 105 in the case of performing parallel encoding in accordance with the H.264 standard (loop filter setting is OFF).

各H.264規格に準拠して短冊状領域を符号化する符号化器102〜105は,短冊状領域を処理対象の入力画像とする。この短冊状領域は,マクロブロック分割部210に入力される。マクロブロック分割部210は,短冊状領域をマクロブロックと呼ばれる符号化処理単位に分割し,処理対象マクロブロックとして減算器211に出力する。   Each H. The encoders 102 to 105 that encode the strip-shaped area in accordance with the H.264 standard use the strip-shaped area as an input image to be processed. This strip area is input to the macroblock dividing unit 210. The macroblock dividing unit 210 divides the strip-like area into coding processing units called macroblocks, and outputs them to the subtractor 211 as processing target macroblocks.

減算器211には,処理対象マクロブロックと同時に,イントラインター選択部212によりインターが選択された場合にはインター予測画像マクロブロックが入力され,イントラが選択された場合にはイントラ予測画像マクロブロックが予測マクロブロックとして入力される。減算器211は,これらをマクロブロック内の画素単位で減算した結果を整数DCT部213に出力する。   When the inter is selected by the intra / inter selection unit 212, the inter prediction image macro block is input to the subtractor 211 at the same time as the processing target macro block. When the intra is selected, the intra prediction image macro block is input. Input as a prediction macroblock. The subtractor 211 outputs a result obtained by subtracting them in units of pixels in the macroblock to the integer DCT unit 213.

整数DCT部213は,減算器211の出力に対してDCT変換を行い,DCT変換係数を量子化部214に出力する。量子化部214は,指定された量子化ステップにて量子化処理を行い,量子化係数を情報源符号化部215に出力する。情報源符号化部215では,CAVLCと呼ばれるコンテキスト適応型可変長符号あるいはCABACと呼ばれるコンテキスト適応型算術符号を用いた情報源符号化処理が行われ,分割符号化データが出力される。   The integer DCT unit 213 performs DCT conversion on the output of the subtractor 211 and outputs a DCT conversion coefficient to the quantization unit 214. The quantization unit 214 performs quantization processing at the designated quantization step, and outputs the quantization coefficient to the information source encoding unit 215. The information source coding unit 215 performs information source coding processing using a context adaptive variable length code called CAVLC or a context adaptive arithmetic code called CABAC, and outputs divided coded data.

量子化部214から出力される量子化係数は,逆量子化部216にも入力され,逆量子化部216で逆量子化処理が行われ,逆量子化後DCT変換係数が出力される。逆量子化後DCT変換係数は,逆整数DCT部217に入力され,逆整数DCT処理が行われ,変換後マクロブロックが加算器218に出力される。加算器218には,予測マクロブロックが併せて入力され,画素ごとに加算処理が行われ,フィルタ前フレームメモリ219にローカルデコードマクロブロックが出力される。フィルタ前フレームメモリ219では,マクロブロックがラスタスキャン順に再構成され,フィルタ前短冊状領域ローカルデコード画像として記録される。   The quantization coefficient output from the quantization unit 214 is also input to the inverse quantization unit 216, where the inverse quantization unit 216 performs an inverse quantization process, and outputs an inverse-quantized DCT transform coefficient. The inverse-quantized DCT transform coefficient is input to the inverse integer DCT unit 217, subjected to inverse integer DCT processing, and the converted macroblock is output to the adder 218. The adder 218 also receives the prediction macroblock, performs addition processing for each pixel, and outputs the local decode macroblock to the pre-filter frame memory 219. In the pre-filter frame memory 219, the macroblocks are reconstructed in the raster scan order and recorded as a pre-filter strip area local decoded image.

フィルタ前短冊状領域ローカルデコード画像は,ループフィルタがONの場合にはループフィルタ部220に入力される。ループフィルタ部220は,入力画像についてマクロブロック境界のブロックノイズを除去して,フィルタ後短冊状領域ローカルデコード画像としてフィルタ後フレームメモリ221に出力し,フィルタ後フレームメモリ221に蓄積する。また,ループフィルタがOFFの動作としては,フィルタ前短冊状領域ローカルデコード画像とフィルタ後短冊状領域ローカルデコード画像は同一のものであり,フィルタ前フレームメモリ219に蓄積された画像がそのままフィルタ後フレームメモリ221に転送され蓄積される。   The pre-filter strip area local decoded image is input to the loop filter unit 220 when the loop filter is ON. The loop filter unit 220 removes block noise at the macroblock boundary from the input image, outputs it to the post-filter frame memory 221 as a post-filter strip region local decoded image, and accumulates it in the post-filter frame memory 221. As an operation of turning off the loop filter, the pre-filter strip region local decode image and the post-filter strip region local decode image are the same, and the image stored in the pre-filter frame memory 219 is used as it is. It is transferred to the memory 221 and stored.

図9および図12に示すような構成で画面を水平短冊状に分割して並列符号化処理を行うことができるのは,ループフィルタがOFFに選択された場合に限られる。ループフィルタがONの場合には,後述する問題があるため,図9および図12に示す構成ではH.264規格に準拠した符号化の実現は不可能である。   The parallel coding process can be performed by dividing the screen into horizontal strips with the configuration shown in FIGS. 9 and 12 only when the loop filter is selected OFF. When the loop filter is ON, there is a problem that will be described later. Therefore, in the configuration shown in FIGS. It is impossible to realize encoding conforming to the H.264 standard.

図9で示した構成と同様に,隣接する符号化器102〜105間でそれぞれフィルタ後短冊状領域ローカルデコード画像を互いに転送することにより,隣接する符号化器の所有するフィルタ後短冊状領域ローカルデコード画像を取得し,上隣接・下隣接の短冊状領域ローカルデコード画像を合わせて入力フレーム全体のフィルタ後ローカルデコード画像を生成し,フィルタ後フレームメモリ221に記録してもよい。上隣接・下隣接の短冊状領域ローカルデコード画像も合わせてフィルタ後フレームメモリ221に記録することにより,後述する動き予測・動き補償処理の探索範囲を当該短冊状領域外まで広げることが可能となり,符号化効率が改善される。   Similarly to the configuration shown in FIG. 9, the filtered strip-shaped area local decoded images are transferred between the adjacent encoders 102 to 105, respectively, so that the filtered strip-shaped area locals owned by the adjacent encoders are transferred. The decoded image may be acquired, and the filtered local decoded image of the entire input frame may be generated by combining the upper and lower adjacent strip-shaped area local decoded images and recorded in the filtered frame memory 221. By recording together the upper and lower adjacent strip-shaped area local decoded images in the post-filter frame memory 221, it becomes possible to extend the search range of motion prediction / motion compensation processing described later to outside the strip-shaped area. Coding efficiency is improved.

動き予測部222には,処理対象マクロブロックとフィルタ後ローカルデコード画像が入力され,動き推定処理が行われ,推定された動きベクトルが動き補償部223に出力される。動き補償部223は,動きベクトルがフィルタ後ローカルデコード画像内で示す位置のマクロブロックを抽出し,インター予測画像マクロブロックとしてイントラインター選択部212に出力する。   The motion prediction unit 222 receives the processing target macroblock and the filtered local decoded image, performs a motion estimation process, and outputs the estimated motion vector to the motion compensation unit 223. The motion compensation unit 223 extracts a macroblock whose position is indicated by the motion vector in the filtered local decoded image, and outputs the macroblock to the intra / inter selection unit 212 as an inter predicted image macroblock.

一方,イントラ予測モード評価部224およびイントラ予測値生成部225には,フィルタ前フレームメモリ219からフィルタ前短冊状領域ローカルデコード画像が入力される。H.264規格では,イントラ予測はループフィルタ部220での処理が行われる前のローカルデコード画像に対して行われることになっているため,このような構成となる。イントラ予測モード評価部224では,選択可能な各種イントラ予測モードから適切な予測モードが選択され,イントラ予測モード符号がイントラ予測値生成部225に出力される。イントラ予測値生成部225は,フィルタ前短冊状領域ローカルデコード画像およびイントラ予測モード符号からイントラ予測画像マクロブロックを生成し,イントラインター選択部212に出力する。   On the other hand, the pre-filter strip area local decoded image is input from the pre-filter frame memory 219 to the intra prediction mode evaluation unit 224 and the intra prediction value generation unit 225. H. In the H.264 standard, intra prediction is performed on a local decoded image before the processing in the loop filter unit 220 is performed, and thus the configuration is as described above. The intra prediction mode evaluation unit 224 selects an appropriate prediction mode from various selectable intra prediction modes, and outputs an intra prediction mode code to the intra prediction value generation unit 225. The intra-prediction value generation unit 225 generates an intra-prediction image macroblock from the pre-filter strip region local decoded image and the intra-prediction mode code, and outputs the intra-prediction image macroblock to the intra-inter selection unit 212.

なお,H.264規格では,スライスヘッダに存在するdisable _deblocking_filter_idc というフラグを用いることで,ループフィルタの有効化・無効化の設定が可能である。
ITU-T Recommendation H.262(2000)|ISO/IEC 13818-2:2000,“Information technology−Generic coding of moving pictures and associated audio information:Video”,International Standard,second edition,December 2000 . 中村他,“複数SDTVエンコーダLSIによるMPEG−2 HDTVエンコーダシステム”,電子情報通信学会,信学技報,ICD2001-78(2001-08), pp.91-96 . ITU-T Recommendation H.264 :“Advanced Video Coding for generic audiovisual services”(2003)|ISO/IEC 14496-10: “Coding of audiovisual objects - Part 10: Advanced Video Coding”(2003).
H. In the H.264 standard, it is possible to enable / disable the loop filter by using a flag called disable_deblocking_filter_idc existing in the slice header.
ITU-T Recommendation H.262 (2000) | ISO / IEC 13818-2: 2000, “Information technology-Generic coding of moving pictures and associated audio information: Video”, International Standard, second edition, December 2000. Nakamura et al., “MPEG-2 HDTV Encoder System Using Multiple SDTV Encoder LSIs”, IEICE, IEICE Technical Report, ICD2001-78 (2001-08), pp.91-96. ITU-T Recommendation H.264: “Advanced Video Coding for generic audiovisual services” (2003) | ISO / IEC 14496-10: “Coding of audiovisual objects-Part 10: Advanced Video Coding” (2003).

H.264規格では,ローカルデコード画像にフィルタ処理を行った画像を以降のインター予測画像生成に用いる規定となっている。また,ループフィルタ処理では,図13に示すように,少なくても復号器においてはフレームの左上のマクロブロックから右下のマクロブロックに向けて水平ラスタスキャン順に各マクロブロックごとのフィルタ処理を行うことが規定されている。したがって,フィルタ処理対象マクロブロックの左隣接および上隣接の両マクロブロックは,フィルタ処理が終えている必要があり,フィルタ処理が既に行われた両マクロブロックと符号化対象マクロブロックとの間でフィルタ処理が行われる必要がある。   H. The H.264 standard stipulates that an image obtained by performing filter processing on a local decoded image is used for subsequent inter prediction image generation. In the loop filter processing, as shown in FIG. 13, at least the decoder performs filter processing for each macroblock in the horizontal raster scan order from the upper left macroblock to the lower right macroblock in the decoder. Is stipulated. Therefore, both the left and upper adjacent macroblocks of the filtering target macroblock need to be filtered, and the filtering is performed between both of the macroblocks that have already been filtered and the encoding target macroblock. Processing needs to be done.

ループフィルタ部220の構成例を,図14に示す。ループフィルタ部220に入力されたフィルタ前短冊状領域ローカルデコード画像は,マクロブロック分割部301に入力される。マクロブロック分割部301は,短冊状領域をマクロブロックと呼ばれる符号化処理単位に分割し,水平ラスタスキャン順に各マクロブロックを処理対象マクロブロックとして対垂直エッジ水平フィルタ部302に出力する。対垂直エッジ水平フィルタ部302では,マクロブロック内の4画素おきの垂直方向のエッジに対して,順に水平方向にフィルタ処理を行う。   A configuration example of the loop filter unit 220 is shown in FIG. The pre-filter strip region local decoded image input to the loop filter unit 220 is input to the macroblock dividing unit 301. The macroblock dividing unit 301 divides the strip-like area into encoding processing units called macroblocks, and outputs each macroblock as a processing target macroblock to the vertical edge horizontal filter unit 302 in the order of horizontal raster scanning. The vertical edge horizontal filter unit 302 sequentially performs a filtering process in the horizontal direction on every vertical edge in the macroblock.

図15の左側に対垂直エッジ水平フィルタ部302の処理概要を示す。対垂直エッジ水平フィルタ部a303では,垂直エッジaを構成する各画素を中心として水平8画素×垂直1画素のフィルタ処理を行う。ここでは,当該マクロブロックの画素値と,左隣フィルタ処理済みマクロブロックの画素値を入力画素値としてフィルタ処理を行う。垂直エッジaへのフィルタ処理が行われた結果の画素値に対し,対垂直エッジ水平フィルタ部b304において垂直エッジbへのフィルタ処理が行われる。以降も同様に,図16に示すように,垂直エッジbに対する水平フィルタ処理結果に対し,対垂直エッジ水平フィルタ部c305において,垂直エッジcに対する水平フィルタ処理が行われ,その出力結果に対して,対垂直エッジ水平フィルタ部d306において垂直エッジdに対する水平フィルタ処理が行われる。   The processing outline of the vertical edge horizontal filter unit 302 is shown on the left side of FIG. The vertical edge horizontal filter unit a303 performs a filter process of 8 horizontal pixels × 1 vertical pixel centering on each pixel constituting the vertical edge a. Here, filter processing is performed using the pixel value of the macroblock and the pixel value of the macroblock that has been subjected to the filter processing on the left as input pixel values. The pixel value resulting from the filtering process on the vertical edge a is subjected to the filtering process on the vertical edge b in the vertical edge horizontal filter unit b304. Similarly, as shown in FIG. 16, the horizontal filter processing for the vertical edge c is performed on the horizontal filter processing result for the vertical edge b, and the horizontal filter processing for the vertical edge c is performed in the vertical edge horizontal filter section c305. The horizontal filter processing for the vertical edge d is performed in the vertical edge horizontal filter unit d306.

以上により水平フィルタ処理を終えたフィルタ途中マクロブロックは,対水平エッジ垂直フィルタ部307に入力される。対水平エッジ垂直フィルタ部307では,マクロブロック内の4画素おきの水平方向のエッジに対して,順に垂直方向にフィルタ処理を行う。図15の右側に対水平エッジ垂直フィルタ部307の処理概要を示す。   The halfway filter macroblock that has been subjected to the horizontal filter processing as described above is input to the horizontal edge vertical filter unit 307. The horizontal edge vertical filter unit 307 sequentially performs filtering in the vertical direction on every horizontal edge in every four pixels in the macroblock. The processing outline of the horizontal edge vertical filter unit 307 is shown on the right side of FIG.

対水平エッジ垂直フィルタ部e308では,水平エッジeを構成する各画素を中心として水平1画素×垂直8画素のフィルタ処理を行う。ここでは,当該マクロブロックの画素値と,上隣フィルタ処理済みマクロブロックの画素値の双方を入力信号値として処理を行う。水平エッジeへのフィルタ処理が行われた結果の画素値に対し,対水平エッジ垂直フィルタ部f309において水平エッジfへのフィルタ処理が行われる。以降も同様に,図16に示すように水平エッジfに対する垂直フィルタ処理結果に対し,対水平エッジ垂直フィルタ部g310において,水平エッジgに対する垂直フィルタ処理が行われ,その出力結果に対して,対水平エッジ垂直フィルタ部h311において,水平エッジhに対する垂直フィルタ処理が行われる。   The horizontal edge vertical filter unit e308 performs a filter process of 1 horizontal pixel × 8 vertical pixels centering on each pixel constituting the horizontal edge e. Here, processing is performed using both the pixel value of the macroblock and the pixel value of the macroblock that has been subjected to the upper adjacent filter processing as input signal values. The pixel value resulting from the filtering process on the horizontal edge e is subjected to the filtering process on the horizontal edge f in the horizontal edge vertical filter unit f309. Similarly, as shown in FIG. 16, the vertical filter processing for the horizontal edge g is performed on the vertical filter processing result for the horizontal edge f in the vertical filter unit g310 for the vertical filter processing result for the horizontal edge f. The horizontal edge vertical filter unit h311 performs vertical filter processing on the horizontal edge h.

以上示したように,H.264規格におけるループフィルタ処理は,フィルタ済み画素を再利用しながら順にフィルタ処理を行う構成となっているため,フィルタ処理の順を適切に行う必要がある。また,あるマクロブロックのフィルタ処理を行うためには,上隣および左隣のマクロブロックは,既にフィルタ処理が完了している必要がある。   As indicated above, H.C. Since the loop filter processing in the H.264 standard is configured to sequentially perform filter processing while reusing filtered pixels, it is necessary to appropriately perform the order of filter processing. In addition, in order to perform filter processing of a certain macroblock, it is necessary that filter processing has already been completed for the macroblocks on the upper and left sides.

対水平エッジ垂直フィルタ部h311でフィルタ処理が行われて得られるフィルタ後マクロブロックは,フィルタ後マクロブロックメモリ312に入力され,水平ラスタスキャン順に再構成が行われ,フィルタ後短冊状領域ローカルデコード画像として記録される。   The post-filter macroblock obtained by performing the filtering process with respect to the horizontal edge / vertical filter unit h311 is input to the post-filter macroblock memory 312 and reconstructed in the order of horizontal raster scanning, and the post-filter strip-like region local decoded image As recorded.

図17は,H.264並列符号化処理での問題点を説明する図である。図9および図12に示した動画像並列符号化処理構成を用いて,かつループフィルタ処理を有効にした場合について考える。符号化器102〜105の中の各ループフィルタ部220は,各短冊状領域内において,図17に示すように左上のマクロブロックから右下のマクロブロックに対して水平ラスタスキャン順にフィルタ処理を行うこととなる。   FIG. It is a figure explaining the problem in a H.264 parallel encoding process. Consider a case where the moving image parallel encoding processing configuration shown in FIGS. 9 and 12 is used and the loop filter processing is enabled. Each loop filter unit 220 in the encoders 102 to 105 performs filter processing in the order of horizontal raster scanning from the upper left macroblock to the lower right macroblock in each strip-shaped region as shown in FIG. It will be.

図17中の短冊状領域2,3,4の並列処理中マクロブロックについて考えた場合,対水平エッジ垂直フィルタ部e308の処理を行うにあたり,上隣接のマクロブロックはフィルタ未処理の状態であることがわかる。このため,対水平エッジ垂直フィルタ部e308で行われる垂直フィルタ処理は,H.264規格に準拠しないフィルタ処理となり,結果としてH.264に準拠した復号器で得られる復号画像とは異なるフィルタ後短冊状領域ローカルデコード画像が生成される。これはドリフトと呼ばれる符号化器と復号器の復号映像の不一致に起因した映像に尾が引く現象を生じさせるため,許容されがたい歪みを発生させる。   When considering the parallel processing macroblocks in the strip-like areas 2, 3 and 4 in FIG. 17, the upper adjacent macroblock is in an unfiltered state when performing the processing of the horizontal edge vertical filter unit e308. I understand. For this reason, the vertical filter processing performed by the horizontal edge vertical filter unit e308 is H.264. H.264 standard, resulting in H.264 filter processing. A filtered strip region local decoded image different from the decoded image obtained by the decoder compliant with H.264 is generated. This causes a phenomenon of tailing in the video due to the mismatch between the decoded video of the encoder and the decoder, which is called drift, and thus causes unacceptable distortion.

先に述べたように,ループフィルタはOFFに設定する(disable _deblocking_filter_idc =1)ことも可能である。しかし,この場合,著しく符号化効率が劣化し,とりわけ低レート符号化時にブロック歪み等の画質の低下が起こる。また,図9および図12に示すような構成を用いた動画像並列符号化構成でもループフィルタ処理の機能を利用できるように,短冊状矩形領域の境界のみループフィルタをOFFとし,それ以外の隣接するマクロブロックの境界にのみループフィルタ処理の機能を利用できるようなモード設定(disable _deblocking_filter_idc =2)も,H.264規格には用意されているが,短冊状領域の上下隣接の境界のみ継ぎ目の目立つ復号画像が生成され,視覚的な妨害となる。   As described above, the loop filter can be set to OFF (disable_deblocking_filter_idc = 1). However, in this case, the encoding efficiency is remarkably deteriorated, and the image quality such as block distortion is deteriorated particularly at the low rate encoding. Further, in order to be able to use the function of the loop filter processing even in the moving image parallel coding configuration using the configurations as shown in FIGS. 9 and 12, the loop filter is turned off only at the border of the rectangular rectangular region, and other adjacent regions are also used. A mode setting (disable_deblocking_filter_idc = 2) that allows the function of the loop filter processing to be used only at the boundary of the macroblock to be performed is also described in H.264. Although it is prepared in the H.264 standard, a decoded image in which a joint is conspicuous only at the upper and lower adjacent borders of the strip-shaped region is generated, which causes visual disturbance.

以上述べたように,H.264規格に準拠して,かつループフィルタ機能を有効にして,画面水平短冊状領域に分割して並列符号化を行った場合,符号化器と復号器との間で復号画像間の不一致が生じ,ドリフト等の歪みが発生する。また,これらを回避するため,ループフィルタ機能を無効にするか,短冊状領域間のみ無効にすることも可能であるが,いずれにしても本来のH.264に比べ符号化効率が劣化する。   As mentioned above, H.C. When the parallel coding is performed in accordance with the H.264 standard, the loop filter function is enabled, and the screen is divided into horizontal strip-like areas, there is a mismatch between the decoded images between the encoder and the decoder. , Distortion such as drift occurs. In order to avoid these problems, it is possible to disable the loop filter function or disable only between the strip-shaped regions. Compared with H.264, encoding efficiency is deteriorated.

本発明は上記問題点の解決を図り,H.264規格(実質的に同等な規格を含む)に規定されるループフィルタ機能を有効としたまま,完全にH.264規格に準拠した符号化データを生成することができるようにすることを目的とする。   The present invention has been made to solve the above problems. The H.264 standard (including substantially equivalent standards) remains completely effective while the loop filter function defined in the H.264 standard is valid. It is an object to enable generation of encoded data that conforms to the H.264 standard.

上記の問題を解決するため,本発明では,例えばH.264規格に準拠して,かつループフィルタ機能を有効にして,画面水平短冊状領域に分割して並列符号化を行う方式を規定する。   In order to solve the above problem, in the present invention, for example, H.264. H.264 standard is defined, and the loop filter function is enabled, and a method of performing parallel coding by dividing the screen into horizontal strip-like regions is defined.

本発明の動画像符号化方法は,入力された動画像の各フレームを格子状に矩形小領域に分割して各矩形小領域を水平方向にラスタスキャン順で順に符号化する動画像符号化方法であって,既に符号化済みのフレームについて復号器側で得られる復号画像と同一画像であるローカルデコード画像を符号化器側で生成し,該ローカルデコード画像にフィルタ処理を施した画像を参照画像として利用して後続フレームのフレーム間予測符号化を行う動画像符号化方法において,入力動画像フレームを格子状に分割して得られる矩形小領域について,左上の矩形小領域から右下の矩形小領域に向けて各矩形小領域ごとに水平ラスタスキャン順に符号化を行うステップと,前記ローカルデコード画像を格子状に分割して得られる矩形小領域について,左上の矩形小領域から右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行うステップとを実行することを特徴とする。   The moving image encoding method of the present invention is a moving image encoding method in which each frame of an input moving image is divided into rectangular small regions in a grid pattern, and the rectangular small regions are sequentially encoded in the raster scan order in the horizontal direction. A local decoded image that is the same as the decoded image obtained on the decoder side for the already encoded frame is generated on the encoder side, and an image obtained by filtering the local decoded image is used as a reference image. In the moving picture coding method that performs interframe predictive coding of subsequent frames using as a rectangular small area obtained by dividing an input moving picture frame in a grid pattern, Encoding for each rectangular small area toward the area in the order of horizontal raster scan, and for the rectangular small area obtained by dividing the local decoded image into a grid, Characterized by the small rectangular area in each small rectangular area toward the small rectangular area of the bottom right and a step of performing a filtering process in the vertical raster scan order.

また,前記動画像符号化方法において,ローカルデコード画像を格子状に分割して得られる矩形小領域について,左上の矩形小領域から右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行うにあたり,該矩形小領域に対応するフィルタ処理の一番最後のフィルタ処理ステップとして,該矩形小領域と該矩形小領域の右に隣接する矩形小領域との隣接境界画素にフィルタ処理を行うことで,H.264規格(ITU−T H.264)に準拠した符号化データを生成することを特徴とする。   In the moving picture encoding method, a vertical raster for each rectangular small area from a rectangular small area in the upper left to a rectangular small area in the lower right is obtained for the rectangular small areas obtained by dividing the local decoded image in a grid pattern. When performing the filtering process in the scan order, as the last filtering step of the filtering process corresponding to the rectangular small area, an adjacent boundary pixel between the rectangular small area and the rectangular small area adjacent to the right of the rectangular small area is set. By performing the filter processing, The present invention is characterized in that encoded data compliant with the H.264 standard (ITU-T H.264) is generated.

また,前記動画像符号化方法において,入力動画像フレームを格子状に分割して得られる全ての矩形小領域の水平ラスタスキャン順の符号化が完了した後に,ローカルデコード画像を格子状に分割して得られる全ての矩形小領域について,垂直ラスタスキャン順にフィルタ処理を開始することを特徴とする。   Further, in the moving image encoding method, after encoding of all rectangular small areas obtained by dividing the input moving image frame in a grid pattern in the horizontal raster scan order is completed, the local decoded image is divided into a grid pattern. The filtering process is started in the order of the vertical raster scan for all the rectangular small areas obtained in this way.

本発明の動画像並列符号化用符号化器は,入力された動画像の各フレームを水平方向に領域分割して複数の短冊状分割領域を生成し,複数の符号化器がそれぞれ各短冊状分割領域を格子状に矩形小領域に分割して短冊状分割領域内の矩形小領域を並列に符号化する動画像並列符号化装置において用いられる前記短冊状分割領域を符号化するための符号化器であって,前記短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに水平ラスタスキャン順に符号化を行う手段と,前記符号化された短冊状分割領域の符号化データを復号したローカルデコード画像の短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行う手段と,該短冊状分割領域の上側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器から,少なくとも該短冊状分割領域の最も上の矩形小領域に隣接する矩形小領域のフィルタ処理後の画像を受信しメモリに記録する手段と,該短冊状分割領域の下側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器に向けて,少なくとも該短冊状分割領域の最も下の矩形小領域のフィルタ処理後の画像を転送する手段とを備え,前記フィルタ処理を行う手段は,該短冊状分割領域の最も上の矩形小領域に対してフィルタ処理を行うにあたって,前記メモリに記録したフィルタ処理後の画像を用いてフィルタ処理を行い,前記符号化を行う手段は,前記フィルタ処理後のローカルデコード画像を参照画像として利用して後続フレームのフレーム間予測符号化を行うことを特徴とする。   The moving image parallel coding encoder of the present invention generates a plurality of strip-shaped divided regions by horizontally dividing each frame of an input moving image, and each of the plurality of encoders has a strip shape. Coding for encoding the strip-shaped divided region used in a moving image parallel coding apparatus that divides the divided region into rectangular small regions in a grid pattern and encodes the rectangular small regions in the strip-shaped divided region in parallel. A rectangular small region obtained by dividing the strip-shaped divided region into a lattice shape, from the upper left rectangular small region in the strip-shaped divided region to the lower right rectangular small region in the strip-shaped divided region Means for encoding each rectangular small area in the order of horizontal raster scan, and dividing the strip-shaped divided areas of the locally decoded image obtained by decoding the encoded data of the encoded strip-shaped divided areas into a grid pattern. A small rectangular area Means for performing a filtering process in the order of vertical raster scan for each rectangular small area from the upper left rectangular small area in the rectangular divided area toward the lower right rectangular small area in the rectangular divided area; If there is an encoder in charge of encoding the strip-shaped divided area adjacent to the upper side of the rectangular divided area, a rectangle adjacent to at least the uppermost rectangular small area of the strip-shaped divided area from the encoder If there is a means for receiving the image after filtering of the small area and recording it in the memory, and an encoder in charge of encoding the adjacent strip-shaped divided area below the strip-shaped divided area, the code Means for transferring a filtered image of at least the rectangular small area at the bottom of the strip-shaped divided area toward the generator, and the means for performing the filtering process has an uppermost portion of the strip-shaped divided area. For a small rectangular area When performing the filtering process, the filtering process is performed using the filtered image recorded in the memory, and the encoding means uses the filtered local decoded image as a reference image to generate a subsequent frame. Inter-frame predictive coding is performed.

また,前記動画像並列符号化用符号化器において,前記フィルタ処理を行う手段は,前記短冊状分割領域内の一つの矩形小領域のフィルタ処理において,該矩形小領域内の画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理と,水平方向のエッジに対する垂直方向のフィルタ処理を行った後,該矩形小領域と該矩形小領域の右に隣接する矩形小領域との隣接境界画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理を行うことを特徴とする。   Further, in the moving image parallel encoding encoder, the filter processing means targets pixels in the rectangular small area in the filtering process of one rectangular small area in the strip-shaped divided area. After performing a horizontal filtering process on the vertical edge and a vertical filtering process on the horizontal edge, an adjacent boundary pixel between the rectangular small area and the rectangular small area adjacent to the right of the rectangular small area is determined. A horizontal filtering process is performed on a vertical edge as a target.

本発明の動画像並列符号化方法は,入力された動画像の各フレームを水平方向に領域分割して複数の短冊状分割領域を生成し,複数の符号化器がそれぞれ各短冊状分割領域を格子状に矩形小領域に分割して短冊状分割領域内の矩形小領域を水平方向にラスタスキャン順で順に符号化する動画像並列符号化方法であって,既に符号化済みの短冊状分割領域について復号器側で得られる復号画像と同一画像であるローカルデコード画像を各符号化器側で生成し,該ローカルデコード画像内で同位置の短冊状分割領域にフィルタ処理を施した画像を参照画像として利用して後続フレームのフレーム間予測符号化を行う動画像並列符号化方法において,該短冊状分割領域を格子状に分割して得られる矩形小領域について,各符号化器が,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに水平ラスタスキャン順に符号化を行うステップと,ローカルデコード画像内で同位置の短冊状分割領域を格子状に分割して得られる矩形小領域について,各符号化器が,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行うステップとを実行することを特徴とする。   The moving image parallel coding method according to the present invention generates a plurality of strip-shaped divided regions by horizontally dividing each frame of an input moving image into a plurality of strip-shaped divided regions. A moving image parallel encoding method for dividing a rectangular small region in a strip-shaped divided region into a grid shape and sequentially encoding the rectangular small regions in a raster scan order in the horizontal direction, and the already-encoded strip-shaped divided region A local decoded image that is the same image as the decoded image obtained on the decoder side is generated on each encoder side, and an image obtained by filtering the strip-shaped divided region at the same position in the local decoded image is a reference image. In the moving picture parallel coding method for performing interframe predictive coding of subsequent frames by using as a rectangular small area obtained by dividing the strip-like divided area into a grid shape, each encoder has the strip-like shape. Split Encoding in the order of horizontal raster scan for each rectangular small area from the upper left rectangular small area to the lower right rectangular small area in the strip-shaped divided area, and a strip at the same position in the local decoded image For each rectangular small area obtained by dividing the rectangular divided area into a grid pattern, each encoder changes from the rectangular upper left area in the rectangular divided area to the lower right rectangular small area in the rectangular divided area. And performing a filtering process in the order of vertical raster scanning for each rectangular small area.

また,前記動画像並列符号化方法において,ローカルデコード画像内の短冊状分割領域を格子状に分割して得られる矩形小領域について,各符号化器が,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行うにあたり,該矩形小領域に対応するフィルタ処理の一番最後のフィルタ処理ステップとして,該矩形小領域と該矩形小領域の右に隣接する矩形小領域との隣接境界画素にフィルタ処理を行うことで,H.264規格(ITU−T H.264)に準拠した符号化データを生成することを特徴とする。   Further, in the moving image parallel coding method, for each rectangular small region obtained by dividing the strip-shaped divided region in the local decoded image into a grid shape, each encoder has a rectangular shape at the upper left in the strip-shaped divided region. When performing filter processing in the order of vertical raster scan for each rectangular small area from the small area toward the lower right rectangular small area in the strip-shaped divided area, the last filter of the filter processing corresponding to the rectangular small area As a processing step, a filter process is performed on an adjacent boundary pixel between the rectangular small region and the rectangular small region adjacent to the right of the rectangular small region. The present invention is characterized in that encoded data compliant with the H.264 standard (ITU-T H.264) is generated.

また,前記動画像並列符号化方法において,各符号化器が,入力動画像フレームの各短冊状分割領域を格子状に分割して得られる全ての矩形小領域の水平ラスタスキャン順の符号化が完了した後に,ローカルデコード画像内で同位置の短冊状分割領域を格子状に分割して得られる全ての矩形小領域について,垂直ラスタスキャン順にフィルタ処理を開始することを特徴とする。   Further, in the moving image parallel coding method, each encoder performs coding in the horizontal raster scan order of all rectangular small regions obtained by dividing each strip-like divided region of the input moving image frame into a grid pattern. After completion, the filtering process is started in the vertical raster scan order for all rectangular small areas obtained by dividing the strip-like divided areas at the same position in the local decoded image into a grid pattern.

また,前記動画像並列符号化方法において,ある符号化器が上からA番目の短冊状分割領域の左からB番目の列の矩形小領域群の上からC番目の矩形小領域のフィルタ処理を行うのと並列して,別の符号化器が上からW番目の短冊状分割領域の左から(A+B−W)番目の矩形小領域群の上からC番目の矩形小領域のフィルタ処理を行うことを特徴とする。   In the moving image parallel encoding method, a certain encoder performs a filtering process on the C-th rectangular small region from the top of the rectangular small region group in the B-th column from the left of the A-th strip-shaped divided region from the top. In parallel with this, another encoder performs a filtering process on the C-th rectangular small region from the top of the (A + B−W) -th rectangular small region group from the left of the W-th strip-shaped divided region from the top. It is characterized by that.

また,前記動画像並列符号化方法において,上からX番目の短冊状分割領域を担当する符号化器が,X番目の短冊状分割領域の左からY番目の列の矩形小領域群の垂直ラスタスキャン順のフィルタ処理を行うステップと,該X番目の短冊状分割領域を担当する符号化器から,(X+1)番目の短冊状分割領域を担当する符号化器に向けて,X番目の短冊状分割領域の左からY番目の列の最も下の矩形小領域のフィルタ処理後の画像を転送するステップと,該(X+1)番目の短冊状分割領域を担当する符号化器が,該X番目の短冊状分割領域の左からY番目の列の最も下の矩形小領域のフィルタ処理後の画像を受信し,メモリに記録するステップと,該(X+1)番目の短冊状分割領域を担当する符号化器が,該受信した矩形小領域のフィルタ処理後の画像を用いて,(X+1)番目の短冊状分割領域の左からY番目の列の最も上の矩形小領域のフィルタ処理を行うステップとを実行することを特徴とする。   In the moving image parallel coding method, the encoder in charge of the Xth strip-shaped divided region from the top is a vertical raster of the rectangular small region group in the Yth column from the left of the Xth strip-shaped divided region. A step of performing a filtering process in the scan order and an Xth strip shape from an encoder in charge of the Xth strip-shaped divided region to an encoder in charge of the (X + 1) th strip-shaped divided region A step of transferring the filtered image of the bottom rectangular small area of the Yth column from the left of the divided area, and an encoder in charge of the (X + 1) th strip-shaped divided area, Receiving the filtered image of the lowermost rectangular small area of the Yth column from the left of the strip-shaped divided area and recording it in the memory, and the encoding responsible for the (X + 1) th strip-shaped divided area The filter of the received rectangular small area Using an image after processing, and executes the steps of performing (X + 1) -th most filtering small rectangular area above the Y-th column from the left of the strip-shaped divided areas.

本発明の動画像並列符号化装置は,複数の前記動画像並列符号化用符号化器を用いて,各動画像並列符号化用符号化器がそれぞれ入力フレームを分割した各短冊状分割領域を格子状に矩形小領域に分割して短冊状分割領域内の矩形小領域を水平方向にラスタスキャン順で順に符号化することを特徴とする。   The moving image parallel coding apparatus of the present invention uses each of the plurality of moving image parallel coding encoders to form each strip-shaped divided region obtained by dividing each input frame by each moving image parallel coding encoder. The rectangular small areas in the strip-shaped divided areas are encoded in order in a raster scan order in the horizontal direction by dividing into rectangular small areas in a grid pattern.

〔作用〕
本発明を用いて,入力フレームを水平短冊状分割領域(以下,短冊状領域という)に分割してH.264並列符号化を行うことで,符号化器と復号器との間で復号画像間の不一致が生じることなく完全にH.264規格に準拠した符号化データを生成することができる。さらに画面水平短冊状分割数を増やすことで並列度を容易に上げることが可能であり,より低規模なLSIを複数個用いた大画面符号化装置の開発が可能となる。
[Action]
By using the present invention, an input frame is divided into horizontal strip-like divided regions (hereinafter referred to as strip-like regions). By performing H.264 parallel coding, the H.264 decoding is completely performed without any mismatch between decoded images between the encoder and the decoder. It is possible to generate encoded data that conforms to the H.264 standard. Furthermore, the parallelism can be easily increased by increasing the number of horizontal strip divisions, and a large-screen encoding device using a plurality of lower scale LSIs can be developed.

また,H.264規格に規定されるループフィルタ機能を有効としたまま並列符号化処理が可能となることから,並列符号化処理を行うためにループフィルタ処理を無効化することに起因する画質の低下は発生しない。   H. Since the parallel coding process can be performed while the loop filter function defined in the H.264 standard is enabled, there is no deterioration in image quality caused by disabling the loop filter process in order to perform the parallel coding process. .

以上説明したように,本発明を用いて入力フレームを水平短冊状領域に分割してH.264並列符号化(H.264規格と実質的に同等な規格を含む)を行うことで,符号化器と復号器との間で復号画像間の不一致が生じることなく完全にH.264規格に準拠した符号化データを生成することができる。   As described above, the present invention is used to divide the input frame into horizontal strip-like areas and to generate H.264. By performing H.264 parallel coding (including a standard substantially equivalent to the H.264 standard), there is no discrepancy between decoded images between the encoder and the decoder. It is possible to generate encoded data that conforms to the H.264 standard.

また,H.264規格に規定されるループフィルタ機能を有効としたまま並列符号化処理が可能となることから,並列符号化処理を行うためにループフィルタ処理を無効化することに起因する画質の低下は発生しない。   H. Since the parallel coding process can be performed while the loop filter function defined in the H.264 standard is enabled, there is no deterioration in image quality caused by disabling the loop filter process in order to perform the parallel coding process. .

以下,本発明の実施例を説明する。本発明を含む動画像並列符号化装置の全体の構成を図1に示す。図1に示す全体構成図では,入力フレームを4つの短冊状領域に分割し,4つのH.264符号化器にて並列符号化動作を行う例を記載している。   Examples of the present invention will be described below. FIG. 1 shows the overall configuration of a moving image parallel encoding apparatus including the present invention. In the overall configuration diagram shown in FIG. 1, the input frame is divided into four strip-shaped areas, and four H.264 frames are divided. An example in which a parallel encoding operation is performed by an H.264 encoder is described.

図1において,入力フレームは,画面分割処理部21に入力され,N個(この例ではN=4)の短冊状領域に分割される。入力フレームを短冊状領域に分割する例については,図10と同様である。生成された各短冊状領域は,それぞれH.264符号化器22〜25に入力され,並列して同時に符号化され,各H.264符号化器22〜25からそれぞれ分割符号化データが出力される。これらの分割符号化データは,ストリーム連結部26に入力される。各分割符号化データは,それぞれバイトアライメントがとれた状態であるため,ストリーム連結部26にて単純に連結することで,H.264規格に準拠した符号化データが出力される。なお,以下ではマクロブロックを“MB”と略記することもある。   In FIG. 1, an input frame is input to a screen division processing unit 21 and divided into N (N = 4 in this example) strip-like regions. An example in which the input frame is divided into strip-like regions is the same as in FIG. Each of the generated strip-shaped regions is H.264. H.264 encoders 22 to 25, which are simultaneously encoded in parallel. H.264 encoders 22 to 25 respectively output divided encoded data. These divided encoded data are input to the stream concatenation unit 26. Since each piece of divided encoded data is in a state in which the byte alignment is taken, the stream concatenation unit 26 simply concatenates each of the H.264 data. The encoded data conforming to the H.264 standard is output. Hereinafter, the macroblock may be abbreviated as “MB”.

このH.264符号化器22〜25において,H.264符号化におけるループフィルタ処理を行うにあたり,H.264符号化器22は,下側に隣接する短冊状領域を担当するH.264符号化器23に向けて,最下MBフィルタ後画像を転送する。H.264符号化器23は,上側に隣接する短冊状領域の最下MBフィルタ後画像を受信し,メモリに蓄積すると同時に,当該H.264符号化器23が担当する短冊状領域の最下MBフィルタ後画像をH.264符号化器24に転送する。同様に,H.264符号化器24は,H.264符号化器23から,上側に隣接する短冊状領域の最下MBフィルタ後画像を受信し,メモリに蓄積すると同時に,当該H.264符号化器24が担当する短冊状領域の最下MBフィルタ後画像をH.264符号化器25に転送する。同様に,H.264符号化器25は,H.264符号化器24から,上側に隣接する短冊状領域の最下MBフィルタ後画像を受信し,メモリに蓄積する。H.264符号化器23〜25においてメモリに蓄積された最下MBフィルタ後画像は,後述する処理により,各短冊状領域の最上端のマクロブロックへのループフィルタ処理に利用される。   This H. In the H.264 encoders 22 to 25, the H.264 encoder In performing loop filter processing in H.264 encoding, H.264 The H.264 encoder 22 is a H.264 encoder responsible for the strip-like region adjacent to the lower side. The image after the lowest MB filter is transferred to the H.264 encoder 23. H. The H.264 encoder 23 receives the lowermost MB-filtered image of the strip-like region adjacent on the upper side, and stores the image in the memory. The H.264 encoder 23 handles the lowermost MB filtered image of the strip-shaped area. The data is transferred to the H.264 encoder 24. Similarly, H.M. H.264 encoder 24 is an H.264 encoder. The H.264 encoder 23 receives the image after the lowermost MB filter of the strip-like region adjacent on the upper side and stores it in the memory. The H.264 encoder 24 handles the lowermost MB filtered image of the strip-shaped area. It is transferred to the H.264 encoder 25. Similarly, H.M. H.264 encoder 25 is an H.264 encoder. From the H.264 encoder 24, the image after the lowest MB filter of the strip-like region adjacent on the upper side is received and stored in the memory. H. The image after the lowermost MB filter accumulated in the memory in the H.264 encoders 23 to 25 is used for loop filter processing to the macroblock at the uppermost end of each strip-shaped region by processing described later.

図1のH.264符号化器22〜25の構成は,図12に示した従来のH.264符号化器の構成とは一部異なる。本発明の実施例に係るH.264符号化器22〜25のそれぞれの構成例を,図2に示す。   H. of FIG. The configuration of the H.264 encoders 22 to 25 is the same as that of the conventional H.264 shown in FIG. The configuration of the H.264 encoder is partially different. H. according to an embodiment of the present invention. A configuration example of each of the H.264 encoders 22 to 25 is shown in FIG.

各H.264規格に準拠して短冊状領域を符号化するH.264符号化器22〜25は,それぞれ短冊状領域を処理対象の入力画像とする。入力された短冊状領域は,マクロブロック分割部40に入力される。マクロブロック分割部40は,短冊状領域をマクロブロックと呼ばれる符号化処理単位に分割し,処理対象マクロブロックとして減算器41に出力する。   Each H. H.264 that encodes strip-shaped areas in accordance with the H.264 standard. Each of the H.264 encoders 22 to 25 uses a strip-shaped area as an input image to be processed. The input strip-shaped area is input to the macroblock dividing unit 40. The macroblock dividing unit 40 divides the strip-like area into encoding processing units called macroblocks, and outputs them to the subtracter 41 as processing target macroblocks.

減算器41には,処理対象マクロブロックの入力と同時に,イントラインター選択部42によりインターが選択された場合にはインター予測画像マクロブロックが予測マクロブロックとして入力され,イントラが選択された場合にはイントラ予測マクロブロックが予測マクロブロックとして入力される。減算器41は,これらをマクロブロック内の画素単位で減算し,その結果を整数DCT部43に出力する。   At the same time as the input of the processing target macroblock, the inter prediction image macroblock is input to the subtractor 41 as the prediction macroblock when the intra / inter selection unit 42 selects inter. When the intra is selected, An intra prediction macroblock is input as a prediction macroblock. The subtractor 41 subtracts them in units of pixels in the macroblock and outputs the result to the integer DCT unit 43.

整数DCT部43は,減算器41の出力に対してDCT変換を行い,DCT変換係数を量子化部44に出力する。量子化部44は,指定された量子化ステップにて量子化処理を行い,量子化係数を情報源符号化部45に出力する。情報源符号化部45では,CAVLCと呼ばれるコンテキスト適応型可変長符号あるいはCABACと呼ばれるコンテキスト適応型算術符号を用いた情報源符号化処理が行われ,分割符号化データが出力される。   The integer DCT unit 43 performs DCT conversion on the output of the subtracter 41 and outputs a DCT conversion coefficient to the quantization unit 44. The quantization unit 44 performs a quantization process at the designated quantization step, and outputs a quantization coefficient to the information source encoding unit 45. The information source coding unit 45 performs information source coding processing using a context adaptive variable length code called CAVLC or a context adaptive arithmetic code called CABAC, and outputs divided coded data.

量子化部44から出力される量子化係数は,逆量子化部46にも入力され,逆量子化部46で逆量子化処理が行われ,逆量子化後DCT変換係数が出力される。逆量子化後DCT変換係数は,逆整数DCT部47に入力され,逆整数DCT処理が行われ,変換後マクロブロックが加算器48に出力される。加算器48には,予測マクロブロックが併せて入力され,画素ごとに加算処理が行われ,フィルタ前フレームメモリ49にローカルデコードマクロブロックが出力される。フィルタ前フレームメモリ49では,マクロブロックがラスタスキャン順に再構成され,フィルタ前短冊状領域ローカルデコード画像として記録される。   The quantization coefficient output from the quantization unit 44 is also input to the inverse quantization unit 46, where the inverse quantization unit 46 performs an inverse quantization process, and outputs an inverse-quantized DCT transform coefficient. The inversely quantized DCT transform coefficients are input to the inverse integer DCT unit 47, subjected to inverse integer DCT processing, and the converted macroblock is output to the adder 48. The adder 48 also receives the prediction macroblock, performs addition processing for each pixel, and outputs the local decode macroblock to the pre-filter frame memory 49. In the pre-filter frame memory 49, macroblocks are reconstructed in the raster scan order and recorded as a pre-filter strip area local decoded image.

フィルタ前短冊状領域ローカルデコード画像は,ループフィルタがONの場合にはループフィルタ部50に入力される。ループフィルタ部50は,入力画像についてマクロブロック境界のブロックノイズを除去して,フィルタ後短冊状領域ローカルデコード画像としてフィルタ後フレームメモリ51に出力し,フィルタ後フレームメモリ51に蓄積する。   The pre-filter strip region local decoded image is input to the loop filter unit 50 when the loop filter is ON. The loop filter unit 50 removes block noise at the macroblock boundary from the input image, outputs it to the post-filter frame memory 51 as a post-filter strip region local decoded image, and accumulates it in the post-filter frame memory 51.

ループフィルタ部50において,各短冊状領域の最上端のマクロブロックに対してループフィルタ処理を行う際には,直上の短冊状領域の最下マクロブロックのループフィルタ後の画像である最下MBフィルタ後画像(入力)が,直上に隣接する短冊状領域を担当する他の符号化器より上隣接短冊状領域最下MB用メモリ56を介して,ループフィルタ部50に入力される。   In the loop filter unit 50, when the loop filter process is performed on the uppermost macroblock of each strip-shaped region, the bottom MB filter that is an image after the loop filter of the bottommost macroblock of the strip-shaped region directly above The subsequent image (input) is input to the loop filter unit 50 via the upper adjacent strip-shaped area bottom MB memory 56 from another encoder in charge of the adjacent strip-shaped area directly above.

この処理により,各短冊状領域の最上端の各マクロブロックのループフィルタ処理を行うにあたって,該マクロブロックの上隣接ならびに左隣接のマクロブロックのフィルタ処理後の画像がループフィルタ部50にて取得可能なため,規格に準拠した正しいループフィルタ処理が可能となる。また,直下の短冊状領域を担当する他の符号化器のループフィルタ処理のため,ループフィルタ後の最下MBフィルタ後画像(出力)を下側に隣接する短冊状領域を担当する符号化器に転送する。   With this processing, when performing the loop filter processing of each macroblock at the uppermost end of each strip-shaped area, the loop filter unit 50 can acquire the image after the filter processing of the macroblock on the upper and left sides of the macroblock. Therefore, correct loop filter processing conforming to the standard becomes possible. Also, for loop filter processing of other encoders in charge of the strip area immediately below, an encoder in charge of the strip area adjacent to the lower MB filtered image (output) after the loop filter. Forward to.

また,ループフィルタがOFFの動作としては,フィルタ前短冊状領域ローカルデコード画像とフィルタ後短冊状領域ローカルデコード画像は同一のものであり,フィルタ前フレームメモリ49に蓄積された画像がそのままフィルタ後フレームメモリ51に転送され蓄積される。   As an operation of turning off the loop filter, the pre-filter strip region local decoded image and the post-filter strip region local decoded image are the same, and the image stored in the pre-filter frame memory 49 is used as it is. It is transferred to the memory 51 and stored.

図1で示した構成と同様に,隣接するH.264符号化器22〜25間でそれぞれフィルタ後短冊状領域ローカルデコード画像を互いに転送することにより,隣接する符号化器の所有するフィルタ後短冊状ローカルデコード画像を取得し,上隣接・下隣接の短冊状領域ローカルデコード画像を合わせて入力フレーム全体のフィルタ後ローカルデコード画像を生成し,フィルタ後フレームメモリ51に記録してもよい。上隣接・下隣接の短冊状領域ローカルデコード画像も合わせてフィルタ後フレームメモリ51に記録することにより,後述する動き予測・動き補償処理の探索範囲を当該短冊状領域外にまで広げることが可能となり,符号化効率が改善される。   Similar to the configuration shown in FIG. H.264 encoders 22 to 25 respectively obtain post-filter strip-like local decoded images owned by adjacent encoders by transferring the post-filter strip-like region local decoded images to each other. The filtered local decoded image of the entire input frame may be generated by combining the strip-shaped area local decoded images and recorded in the post-filter frame memory 51. By recording the locally decoded images of the upper and lower adjacent strip-shaped areas together in the post-filter frame memory 51, it becomes possible to extend the search range for motion prediction / motion compensation processing described later to outside the strip-shaped area. , Coding efficiency is improved.

動き予測部52には,処理対象マクロブロックとフィルタ後ローカルデコード画像が入力され,動き推定処理が行われる。動き予測部52は,推定した動きベクトルを動き補償部53に出力する。動き補償部53は,動きベクトルがフィルタ後ローカルデコード画像内で示す位置のマクロブロックを抽出し,インター予測画像マクロブロックとしてイントラインター選択部42に出力する。   The motion prediction unit 52 receives the processing target macroblock and the filtered local decoded image, and performs motion estimation processing. The motion prediction unit 52 outputs the estimated motion vector to the motion compensation unit 53. The motion compensation unit 53 extracts a macroblock whose position is indicated by the motion vector in the filtered local decoded image, and outputs the macroblock to the intra / inter selection unit 42 as an inter predicted image macroblock.

一方,イントラ予測モード評価部54およびイントラ予測値生成部55には,フィルタ前フレームメモリ49からフィルタ前短冊状領域ローカルデコード画像が入力される。H.264規格では,イントラ予測はループフィルタ部50での処理が行われる前のローカルデコード画像に対して行われることになっているため,このような構成となる。イントラ予測モード評価部54では,選択可能な各種イントラ予測モードから適切な予測モードが選択され,イントラ予測モード符号がイントラ予測値生成部55に出力される。イントラ予測値生成部55は,フィルタ前短冊状領域ローカルデコード画像およびイントラ予測モード符号からイントラ予測画像マクロブロックを生成し,イントラインター選択部42に出力する。   On the other hand, the pre-filter strip area local decoded image is input from the pre-filter frame memory 49 to the intra prediction mode evaluation unit 54 and the intra prediction value generation unit 55. H. In the H.264 standard, intra prediction is performed on the local decoded image before the processing in the loop filter unit 50 is performed. The intra prediction mode evaluation unit 54 selects an appropriate prediction mode from various selectable intra prediction modes, and outputs an intra prediction mode code to the intra prediction value generation unit 55. The intra prediction value generation unit 55 generates an intra prediction image macroblock from the pre-filter strip region local decoded image and the intra prediction mode code, and outputs the intra prediction image macroblock to the intra / inter selection unit 42.

図3において,ループフィルタ部50に入力されたフィルタ前短冊状領域ローカルデコード画像は,マクロブロック分割部1に入力される。マクロブロック分割部1では,短冊状領域をマクロブロックと呼ばれる符号化処理単位に分割する。ただし,従来構成の対応する回路ブロック(マクロブロック分割部301)とは異なり,分割されて得られたマクロブロックを垂直ラスタスキャン順に処理対象マクロブロックとして対垂直エッジ水平フィルタ部2に出力する。マクロブロックの垂直ラスタスキャン順に処理することについて,その例を図4に示す。   In FIG. 3, the pre-filter strip region local decoded image input to the loop filter unit 50 is input to the macroblock dividing unit 1. The macroblock division unit 1 divides the strip area into encoding processing units called macroblocks. However, unlike the corresponding circuit block (macroblock dividing unit 301) of the conventional configuration, the divided macroblocks are output to the vertical edge horizontal filter unit 2 as the processing target macroblocks in the vertical raster scan order. An example of processing in the macro raster vertical raster scan order is shown in FIG.

このとき図3に示す方式におけるループフィルタ部50では,マクロブロック位置計算部15が,処理対象マクロブロックの位置を,図4に示す垂直ラスタスキャン順になるように算出する。これにより,ループフィルタ部50は,ループフィルタ処理を垂直ラスタスキャン順で行うが,マクロブロックの符号化処理については,図12に示す構成図と同様に,H.264規格に準拠して,水平ラスタスキャン順に行うことに留意されたい。   At this time, in the loop filter unit 50 in the method shown in FIG. 3, the macroblock position calculation unit 15 calculates the positions of the macroblocks to be processed in the vertical raster scan order shown in FIG. As a result, the loop filter unit 50 performs the loop filter process in the vertical raster scan order, but the macroblock encoding process is similar to the configuration shown in FIG. Note that the horizontal raster scan order is used in accordance with the H.264 standard.

対垂直エッジ水平フィルタ部2では,マクロブロック内の4画素おきの垂直方向のエッジに対して,順に水平方向にフィルタ処理を行う。図5に対垂直エッジ水平フィルタ部2の処理概要を示す。従来構成の対応する回路ブロック(対垂直エッジ水平フィルタ部302)とは異なり,処理対象マクロブロックの左隣のマクロブロックとの間の垂直エッジaに対しては,水平フィルタ処理を行わないことに留意されたい。   The vertical edge horizontal filter unit 2 sequentially performs a filtering process in the horizontal direction on every vertical edge in every four pixels in the macroblock. FIG. 5 shows a processing outline of the vertical edge horizontal filter unit 2. Unlike the corresponding circuit block (with respect to the vertical edge horizontal filter unit 302) of the conventional configuration, the horizontal filter processing is not performed on the vertical edge a between the macroblock adjacent to the left of the processing target macroblock. Please keep in mind.

対垂直エッジ水平フィルタ部b3では,垂直エッジbを構成する各画素を中心として水平8画素×垂直1画素のフィルタ処理を行う。垂直エッジbへのフィルタ処理が行われた結果の画素値に対し,対垂直エッジ水平フィルタ部c4において垂直エッジcへのフィルタ処理が行われる。以降も同様に,図6に示すように垂直エッジcに対する水平フィルタ処理結果に対し,対垂直エッジ水平フィルタ部d5において,垂直エッジdに対する水平フィルタ処理が行われる。   The vertical edge horizontal filter unit b3 performs a filter process of 8 horizontal pixels × vertical 1 pixel with each pixel constituting the vertical edge b as the center. The pixel value obtained as a result of the filtering process on the vertical edge b is subjected to the filtering process on the vertical edge c in the horizontal edge filter unit c4. Similarly, as shown in FIG. 6, the horizontal filter processing for the vertical edge d is performed in the vertical edge horizontal filter section d5 on the horizontal filter processing result for the vertical edge c.

対水平エッジ垂直フィルタ部6については,従来構成における対水平エッジ垂直フィルタ部307と同一の構成となる。すなわち,対水平エッジ垂直フィルタ部6では,図15右側図に示すようなマクロブロック内の4画素おきの水平方向のエッジに対して,順に垂直方向にフィルタ処理を行う。   The anti-horizontal edge vertical filter unit 6 has the same configuration as the anti-horizontal edge vertical filter unit 307 in the conventional configuration. That is, the horizontal edge vertical filter unit 6 sequentially performs filtering in the vertical direction on every horizontal edge in every four pixels in the macro block as shown in the right side of FIG.

対水平エッジ垂直フィルタ部e7では,水平エッジeを構成する各画素を中心として,水平1画素×垂直8画素のフィルタ処理を行う。この処理は,当該マクロブロックの画素値と,上隣フィルタ処理済みマクロブロックの画素値の双方を入力信号値として行われる。このとき,当該マクロブロックの上隣接のマクロブロックのループフィルタ後の画像は,フィルタ後マクロブロックメモリ13より上隣フィルタ処理済みマクロブロックとして供給される。なお,当該フィルタ対象マクロブロックが短冊状領域の最上端であった場合には,上隣接短冊状領域最下MB用メモリ56によりフィルタ後マクロブロックメモリ13に入力されている直上に隣接する短冊状領域の最下マクロブロックのフィルタ後画像が,同様にフィルタ後マクロブロックメモリ13より上隣フィルタ処理済みマクロブロックとして,対水平エッジ垂直フィルタ部e7に入力される。   In the horizontal edge vertical filter unit e7, a filter process of horizontal 1 pixel × vertical 8 pixels is performed around each pixel constituting the horizontal edge e. This processing is performed using both the pixel value of the macroblock and the pixel value of the macroblock that has been subjected to the upper neighboring filter processing as input signal values. At this time, the image after the loop filter of the macro block adjacent above the macro block is supplied from the post-filter macro block memory 13 as the macro block after the upper filter processing. If the macro block to be filtered is at the uppermost end of the strip-shaped area, the strip-shaped area adjacent to the top immediately after being input to the post-filter macro-block memory 13 by the upper adjacent strip-shaped area bottom MB memory 56. Similarly, the filtered image of the lowermost macroblock of the region is input from the post-filter macroblock memory 13 to the horizontal edge vertical filter unit e7 as a macroblock that has been subjected to the upper adjacent filter processing.

以降も同様に,図6に示すように,水平エッジeへのフィルタ処理が行われた結果の画素値に対し,対水平エッジ垂直フィルタ部f8において,水平エッジfへの垂直フィルタ処理が行われ,水平エッジfに対する垂直フィルタ処理結果に対し,対水平エッジ垂直フィルタ部g9において,水平エッジgに対するフィルタ処理が行われ,その出力結果に対して,対水平エッジ垂直フィルタ部h10において,水平エッジhに対する垂直フィルタ処理が行われる。得られたフィルタ途中画像(マクロブロック)は対垂直エッジ水平フィルタ部11に出力される。   Similarly, as shown in FIG. 6, the vertical filter processing to the horizontal edge f is performed in the horizontal edge vertical filter unit f8 on the pixel value resulting from the filtering processing to the horizontal edge e. The horizontal edge vertical filter unit g9 performs a filtering process on the horizontal edge g on the vertical filter processing result on the horizontal edge f, and the output result on the horizontal edge h on the horizontal edge vertical filter unit h10. Is subjected to vertical filtering. The obtained mid-filter image (macroblock) is output to the vertical edge horizontal filter unit 11.

対垂直エッジ水平フィルタ部11の中にある対垂直エッジ水平フィルタ部A12では,図5および図6に示すように,処理対象マクロブロックの右隣のマクロブロックとの間の垂直エッジである垂直エッジAに対し,水平方向にフィルタ処理を行う。対垂直エッジ水平フィルタ部A12でフィルタ処理が行われて得られるフィルタ後マクロブロックは,フィルタ後マクロブロックメモリ13に入力され,マクロブロック分割部1での並びと同様にマクロブロックごとの垂直ラスタスキャン順に再構成が行われ,フィルタ後短冊状領域ローカルデコード画像として記録される。   In the vertical edge horizontal filter unit A12 in the horizontal edge horizontal filter unit 11, as shown in FIGS. 5 and 6, the vertical edge that is the vertical edge between the macroblock on the right side of the macroblock to be processed A filter process is performed on A in the horizontal direction. The post-filter macroblock obtained by performing the filtering process with respect to the vertical edge horizontal filter unit A12 is input to the post-filter macroblock memory 13, and the vertical raster scan for each macroblock is performed in the same manner as in the macroblock dividing unit 1. Reconstruction is performed in order, and it is recorded as a filtered strip-shaped area local decoded image.

なお,上隣接短冊状領域最下MB用メモリ56より入力される直上に隣接する短冊状領域の最下MBのフィルタ後画像は,フィルタ後マクロブロックメモリ13に入力され,当該短冊状領域の最上MB水平エッジeへのループフィルタ処理に利用される。   The filtered image of the lowermost MB in the strip-like area immediately above and inputted from the upper adjacent strip-like area lowermost MB memory 56 is inputted to the post-filter macroblock memory 13 and the uppermost of the strip-like area. This is used for loop filter processing to the MB horizontal edge e.

図1および図2に示した動画像並列符号化処理構成を用いて,かつ図3に示す方式によるループフィルタ処理構成を採用した場合の並列符号化処理について考える。H.264符号化器22〜25の中の本方式による各ループフィルタ部50は,各短冊状領域内において,図7に示すように左上のマクロブロックから右下のマクロブロックに対して垂直ラスタスキャン順にフィルタ処理を行うこととなる。   Consider parallel coding processing using the moving image parallel coding processing configuration shown in FIGS. 1 and 2 and the loop filter processing configuration according to the method shown in FIG. H. Each loop filter unit 50 according to the present system in the H.264 encoders 22 to 25 is arranged in the vertical raster scan order from the upper left macro block to the lower right macro block as shown in FIG. Filter processing is performed.

短冊状領域間でループフィルタをH.264規格に準拠してフィルタ処理を行うためには,水平エッジeに対する垂直フィルタを行うにあたり,上隣接マクロブロックが既にフィルタ処理済である必要がある。このため,図7に示す通り,各短冊状領域間で並列処理中のマクロブロックの列をずらしてフィルタ処理を行う。すなわち,上からX番目の短冊状分割領域の左からY番目の列の矩形小領域群の垂直ラスタスキャン順のフィルタ処理が完了した後に,上から(X+1)番目の短冊状分割領域の左からY番目の列の矩形小領域の垂直ラスタスキャン順のフィルタ処理を開始する。   H. Loop filter between strip-shaped areas. In order to perform the filtering process in conformity with the H.264 standard, it is necessary that the upper adjacent macroblock has already been subjected to the filtering process when performing the vertical filter on the horizontal edge e. Therefore, as shown in FIG. 7, the filter processing is performed by shifting the row of macroblocks being processed in parallel between the strip-like regions. That is, from the left of the (X + 1) th strip-shaped divided region from the top after the filter processing in the vertical raster scan order of the rectangular small region group of the Yth column from the left of the X-th strip-shaped divided region from the top is completed. The filtering process in the vertical raster scan order of the rectangular small area in the Yth column is started.

以上のべた動作を並列的に継続して動作させることにより,下記のような並列フィルタ処理動作を行うことで動画像並列符号化を実現する。
(1) 短冊状領域1の1列目のマクロブロック群の垂直ラスタスキャン順フィルタ処理開始・完了
(2) 短冊状領域1の2列目と,短冊状領域2の1列目のマクロブロック群を並列して処理開始・完了
(3) 短冊状領域1の3列目と,短冊状領域2の2列目と,短冊状領域3の1列目のマクロブロック群を並列して処理開始・完了
(4) 短冊状領域1の4列目と,短冊状領域2の3列目と,短冊状領域3の2列目と,短冊状領域4の1列目のマクロブロック群を並列して処理開始・完了
(5) 以降,短冊状領域1のB列目と,短冊状領域2の(B−1)列目と,短冊状領域3の(B−2)列目と,短冊状領域4の(B−3)列目のマクロブロック群を並列して処理を行う。
By continuously performing the above operations in parallel, the following parallel filter processing operation is performed to realize moving image parallel coding.
(1) Start / complete vertical raster scan order filter processing for the first row of macroblocks in strip area 1
(2) Start and complete processing in parallel for the second row of strip-shaped area 1 and the macroblock group in the first row of strip-shaped area 2
(3) Processing starts and completes in parallel for the third row of strip-shaped area 1, the second row of strip-shaped area 2, and the first block of strip-shaped area 3
(4) Process the fourth row of strip-shaped area 1, the third row of strip-shaped area 2, the second row of strip-shaped area 3, and the macroblock group of the first row of strip-shaped area 4 in parallel. Start / Complete
(5) Thereafter, the B-th row of the strip-like region 1, the (B-1) -th row of the strip-like region 2, the (B-2) -th row of the strip-like region 3, and the (B -3) Processing is performed in parallel on the macroblock group in the column.

すなわち,これを一般化して説明するのであれば,上からA番目の短冊状分割領域の左からB番目の列の矩形小領域群の上からC番目の矩形小領域のフィルタ処理を行うのと並列して,別の符号化器が上からW番目の短冊状分割領域の左から(A+B−W)番目の矩形小領域群の上からC番目の矩形小領域のフィルタ処理を行うことで,動画像並列符号化を実現する。   That is, if this is generalized and explained, the filter processing of the C-th rectangular small area from the top of the rectangular small area group in the B-th column from the left of the A-th strip-shaped divided area from the top is performed. In parallel, another encoder performs a filtering process on the Cth rectangular small area from the top of the (A + B−W) th rectangular small area group from the left of the Wth strip-shaped divided area from the top, Realizes moving picture parallel coding.

さらに,短冊状領域間でループフィルタをH.264規格に準拠してフィルタ処理を行うためには,各短冊状領域の境界である水平エッジeへの垂直フィルタ処理に関しても,同様に上隣接マクロブロックが既にフィルタ処理済みであって,上隣接マクロブロックのフィルタ後画像が入手済みである必要がある。このため,各短冊状領域の最上端マクロブロックへの水平エッジeへの垂直フィルタ処理を行う前に,上隣接短冊状領域の最下端マクロブロックのフィルタ処理が完了した後に,そのフィルタ後画像を上隣接短冊状領域を担当する符号化器より当該符号化器に転送・受信して,メモリに蓄積し,当該短冊状領域の最上端マクロブロックのフィルタ処理に利用する。   In addition, a loop filter between the strip-like regions is used. In order to perform filtering in conformity with the H.264 standard, the upper adjacent macroblock has already been filtered for the vertical filtering on the horizontal edge e that is the boundary of each strip-shaped region, and the upper adjacent The filtered image of the macroblock needs to be obtained. For this reason, before performing the vertical filter processing to the horizontal edge e to the uppermost macroblock of each strip-shaped region, after the filter processing of the lowermost macroblock of the upper adjacent strip-shaped region is completed, the filtered image is The encoder in charge of the upper adjacent strip-shaped area is transferred to and received from the encoder, stored in the memory, and used for filtering the uppermost macroblock of the strip-shaped area.

図2に示すH.264符号化器22〜25は,それぞれLSI化して符号化チップとして構成することができる。また,それぞれをコンピュータとソフトウェアプログラムとによっても実現することもできる。   As shown in FIG. Each of the H.264 encoders 22 to 25 can be configured as an LSI chip as an LSI chip. Each can also be realized by a computer and a software program.

図8は,本発明の実施例に係る動画像符号化方法におけるフィルタ処理のフローチャートである。図8では,上からA番目の短冊状領域に対するループフィルタ処理の流れを説明する。関連する他の符号化に関する処理の流れは,従来技術と同様であるので,フローチャートを用いた説明は省略する。   FIG. 8 is a flowchart of the filtering process in the moving picture coding method according to the embodiment of the present invention. In FIG. 8, the flow of the loop filter process for the Ath strip-shaped region from the top will be described. Since the flow of processing related to other related encoding is the same as that of the prior art, description using a flowchart is omitted.

ステップS1では,マクロブロック位置計算部15が処理対象マクロブロックの位置を初期化する。ここでは,処理対象マクロブロックを,A番目の短冊状領域における左からB列目,上からC行目の位置のマクロブロックとして処理するにあたり,B=0,C=0に初期化する。   In step S1, the macroblock position calculation unit 15 initializes the position of the processing target macroblock. Here, when processing the macroblock to be processed as a macroblock at the position of the Bth column from the left and the Cth row from the top in the Ath strip-shaped region, it is initialized to B = 0 and C = 0.

ステップS2では,マクロブロック分割部1が,フィルタ前短冊状領域ローカルデコード画像から,B列目・C行目のマクロブロックを処理対象マクロブロックとして取り出す。以降,マクロブロック位置計算部15の指示により,垂直ラスタスキャン順に処理対象マクロブロックを取り出していく。   In step S2, the macroblock dividing unit 1 extracts the macroblocks in the B-th column and the C-th row as processing target macroblocks from the pre-filter strip-shaped region local decoded image. Thereafter, in response to an instruction from the macroblock position calculation unit 15, the processing target macroblocks are extracted in the order of the vertical raster scan.

ステップS3では,対垂直エッジ水平フィルタ部2が,垂直エッジbを構成する各画素を中心として水平8画素×垂直1画素のフィルタ処理を行う。また,垂直エッジbへのフィルタ処理が行われた結果の画素値に対し,垂直エッジcに対するフィルタ処理を行う。同様に,垂直エッジcに対する水平フィルタ処理結果に対し,垂直エッジdに対する水平フィルタ処理を行う。   In step S3, the vertical edge horizontal filter unit 2 performs a filter process of 8 horizontal pixels × vertical 1 pixel centering on each pixel constituting the vertical edge b. Further, the filtering process for the vertical edge c is performed on the pixel value obtained as a result of the filtering process for the vertical edge b. Similarly, the horizontal filter processing for the vertical edge d is performed on the horizontal filter processing result for the vertical edge c.

ステップS4では,対水平エッジ垂直フィルタ部6が,マクロブロック内の4画素おきの水平方向のエッジに対して,順に垂直方向にフィルタ処理を行う。まず,水平エッジeを構成する各画素を中心として,水平1画素×垂直8画素のフィルタ処理を行う。また,水平エッジeに対するフィルタ処理が行われた結果の画素値に対し,水平エッジfに対する垂直フィルタ処理を行う。順次同様に,水平エッジgに対するフィルタ処理,水平エッジhに対する垂直フィルタ処理を行う。   In step S4, the horizontal edge vertical filter unit 6 sequentially performs a filtering process in the vertical direction on every horizontal edge in the macroblock. First, a filter process of 1 horizontal pixel × 8 vertical pixels is performed around each pixel constituting the horizontal edge e. Further, the vertical filter processing for the horizontal edge f is performed on the pixel value obtained as a result of the filtering processing for the horizontal edge e. Similarly, a filtering process for the horizontal edge g and a vertical filtering process for the horizontal edge h are performed.

ステップS5では,対垂直エッジ水平フィルタ部11が,最後のフィルタ処理ステップとして,処理対象マクロブロックと右隣のマクロブロックとの間の隣接境界である垂直エッジAに対し,水平方向にフィルタ処理を行う。   In step S5, the vertical edge horizontal filter unit 11 performs horizontal filtering on the vertical edge A, which is an adjacent boundary between the processing target macroblock and the right macroblock, as the last filtering step. Do.

ステップS6では,フィルタ処理後のマクロブロックをフィルタ後マクロブロックメモリ13内のB列目・C行目のマクロブロックの位置に記録し蓄積する。   In step S6, the filtered macroblock is recorded and stored at the position of the macroblock in the Bth column and the Cth row in the filtered macroblock memory 13.

次に,ステップS7では,A番目の短冊状領域における左からB番目の列のすべてのマクロブロックに対するフィルタ処理が完了したかどうかを判定し,完了していない場合には,ステップS8へ進む。完了した場合には,ステップS9へ進む。   Next, in step S7, it is determined whether or not the filter processing has been completed for all macroblocks in the Bth column from the left in the Ath strip-shaped region. If not, the process proceeds to step S8. If completed, the process proceeds to step S9.

ステップS8では,マクロブロック位置計算部15が,Cに1を加算して一つ下のマクロブロックを処理対象マクロブロックとする。その後,この処理対象マクロブロックに対して,ステップS2〜S6の処理を同様に繰り返す。   In step S8, the macroblock position calculation unit 15 adds 1 to C and sets the next lower macroblock as the processing target macroblock. Thereafter, the processing of steps S2 to S6 is repeated in the same manner for this processing target macroblock.

ステップS9では,処理対象である上からA番目の短冊状領域内のすべてのマクロブロックに対するフィルタ処理が完了したかどうかを判定し,完了していない場合には,ステップS10へ進む。完了した場合には,現在の上からA番目の短冊状領域に対するループフィルタ処理を終了する。   In step S9, it is determined whether or not the filter processing has been completed for all the macroblocks in the A-th strip-shaped area from the top, and if not, the process proceeds to step S10. If completed, the loop filter process for the A-th strip-shaped region from the top is finished.

ステップS10では,マクロブロック位置計算部15が,Cを0に初期化し,Bに1を加算して,現在のマクロブロックの右隣接マクロブロックの列における最も上のマクロブロックを処理対象マクロブロックとする。   In step S10, the macroblock position calculation unit 15 initializes C to 0, adds 1 to B, and sets the uppermost macroblock in the right adjacent macroblock column of the current macroblock as the processing target macroblock. To do.

ステップS11では,直上(A−1番目)の短冊状領域内のB+1番目の全マクロブロックのフィルタ処理が完了したかどうかを判定し,まだ完了していなければ,処理完了を待つ。直上(A−1番目)の短冊状領域内のB+1番目の全マクロブロックのフィルタ処理が完了した場合には,ステップS2以降の処理を同様に繰り返す。   In step S11, it is determined whether or not the filtering process has been completed for all the B + 1th macroblocks in the strip area immediately above (A-1), and if not, the process is awaited. When the filtering process for all the B + 1th macroblocks in the strip area immediately above (A-1) is completed, the processes after step S2 are similarly repeated.

以上の実施例の説明では,H.264規格に準拠した並列符号化への本発明の適用例を説明したが,本発明はもちろんH.264符号化に限定されるわけではなく,H.264規格を改良したような新しい規格であっても,本発明の適用上,H.264規格と同様な技術内容を有する規格であれば,まったく同様に本発明を適用できることは説明するまでもない。   In the description of the above embodiment, H.C. The application example of the present invention to the parallel coding conforming to the H.264 standard has been described. It is not limited to H.264 encoding. Even in the case of a new standard that is an improvement of the H.264 standard, for the application of the present invention, H.264 standard. It goes without saying that the present invention can be applied in exactly the same manner as long as it has a technical content similar to that of the H.264 standard.

以上の動画像符号化の処理は,コンピュータとソフトウェアプログラムとによっても実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも,ネットワークを通して提供することも可能である。   The above moving image encoding processing can be realized by a computer and a software program, and the program can be provided by being recorded on a computer-readable recording medium or provided through a network. .

MPEG−2においては,複数のSD(標準テレビ)規模のCODEC−LSIを用いて,HD(ハイビジョン)対応のCODECを実現する手法は提案されている(非特許文献2参照)。上記技術をそのままH.264に拡張することで,HD対応のH.264−CODECは実現可能ではあるが,単純なH.264への適用では,H.264の特徴である規格にて規定されたループフィルタ処理を実現することができない。本発明は,H.264規格に準拠したループフィルタ処理に対応したH.264−HD−CODECを,複数の小規模なH.264−LSIを利用して並列処理で実現することを可能とする。   In MPEG-2, there has been proposed a method for realizing HD (high definition) CODEC using a plurality of SD (standard television) scale CODEC-LSIs (see Non-Patent Document 2). The above technique is used as it is. By extending to H.264, HD compatible H.264 264-CODEC is feasible, but simple H.264. For application to H.264, H.264. The loop filter processing defined by the standard that is the feature of H.264 cannot be realized. The present invention relates to H.264. H.264 compatible with loop filter processing conforming to the H.264 standard. 264-HD-CODEC, a number of small H.264 It can be realized by parallel processing using 264-LSI.

本発明を含む動画像並列符号化装置の全体の構成例を示す図である。It is a figure which shows the example of a whole structure of the moving image parallel encoding apparatus containing this invention. 本発明の実施例に係るH.264符号化器の構成例を示す図である。H. according to an embodiment of the present invention. 2 is a diagram illustrating a configuration example of an H.264 encoder. FIG. 本発明の実施例に係るループフィルタ構成図である。It is a loop filter block diagram concerning the Example of this invention. 本発明の実施例におけるループフィルタ垂直ラスタスキャン方式を説明する図である。It is a figure explaining the loop filter vertical raster scan system in the Example of this invention. 本発明の実施例における対垂直エッジ水平フィルタ部の処理概要を示す図である。It is a figure which shows the process outline | summary of the versus vertical edge horizontal filter part in the Example of this invention. 本発明の実施例における水平ループフィルタ処理および垂直ループフィルタ処理順序を示す図である。It is a figure which shows the horizontal loop filter process in the Example of this invention, and a vertical loop filter process order. 本発明の実施例における垂直ラスタスキャン順ループフィルタを採用した並列フィルタ処理タイミングを示す図である。It is a figure which shows the parallel filter process timing which employ | adopted the vertical raster scan forward loop filter in the Example of this invention. 本発明の実施例に係る動画像符号化方法におけるフィルタ処理のフローチャートである。It is a flowchart of the filter process in the moving image encoding method which concerns on the Example of this invention. 従来のMPEG−2規格に準拠した並列符号化処理構成を示す図である。It is a figure which shows the parallel encoding process structure based on the conventional MPEG-2 standard. 入力フレームの短冊状領域分割例を示す図である。It is a figure which shows the strip-shaped area | region division example of an input frame. 従来のMPEG−2符号化器構成例を示す図である。It is a figure which shows the example of a conventional MPEG-2 encoder structure. 従来のH.264符号化器構成例を示す図である。Conventional H.264. 2 is a diagram illustrating a configuration example of an H.264 encoder. FIG. 一般的なH.264ループフィルタ処理順序を示す図である。General H.P. It is a figure which shows a H.264 loop filter process order. 一般的なH.264ループフィルタ構成例を示す図である。General H.P. It is a figure which shows a H.264 loop filter structural example. 従来のH.264水平ループフィルタ処理および垂直ループフィルタ処理概要を説明する図である。Conventional H.264. It is a figure explaining the H.264 horizontal loop filter process and the vertical loop filter process outline. 従来のH.264水平ループフィルタ処理および垂直ループフィルタ処理順序を示す図である。Conventional H.264. It is a figure which shows a H.264 horizontal loop filter process and a vertical loop filter process order. 従来のH.264並列符号化処理での問題点を説明する図である。Conventional H.264. It is a figure explaining the problem in a H.264 parallel encoding process.

符号の説明Explanation of symbols

1 マクロブロック分割部
2,11 対垂直エッジ水平フィルタ部
3〜5,12 対垂直エッジ水平フィルタ部b〜d,A
6 対水平エッジ垂直フィルタ部
7〜10 対水平エッジ垂直フィルタ部e〜h
13 フィルタ後マクロブロックメモリ
15 マクロブロック位置計算部
20 動画像並列符号化装置
21 画面分割処理部
22〜25 H.264符号化器
26 ストリーム連結部
40 マクロブロック分割部
41 減算器
42 イントラインター選択部
43 整数DCT部
44 量子化部
45 情報源符号化部
46 逆量子化部
47 逆整数DCT部
48 加算器
49 フィルタ前フレームメモリ
50 ループフィルタ部
51 フィルタ後フレームメモリ
52 動き予測部
53 動き補償部
54 イントラ予測モード評価部
55 イントラ予測値生成部
56 上隣接短冊状領域最下MB用メモリ
1 Macroblock division unit 2,11 pair vertical edge horizontal filter unit 3-5,12 pair vertical edge horizontal filter unit bd, A
6 to horizontal edge vertical filter part 7 to 10 to horizontal edge vertical filter part e to h
13 Macro-block memory after filter 15 Macro-block position calculation unit 20 Video parallel encoding device 21 Screen division processing unit 22-25 H.264 encoder 26 Stream concatenation unit 40 Macroblock division unit 41 Subtractor 42 Intra-inter selection unit 43 Integer DCT unit 44 Quantization unit 45 Information source encoding unit 46 Inverse quantization unit 47 Inverse integer DCT unit 48 Adder 49 Filter Pre-frame memory 50 Loop filter unit 51 Post-filter frame memory 52 Motion prediction unit 53 Motion compensation unit 54 Intra prediction mode evaluation unit 55 Intra prediction value generation unit 56 Upper adjacent strip-shaped region bottom MB memory

Claims (15)

入力された動画像の各フレームを水平方向に領域分割して複数の短冊状分割領域を生成し,複数の符号化器がそれぞれ各短冊状分割領域を格子状に矩形小領域に分割して短冊状分割領域内の矩形小領域を並列に符号化する動画像並列符号化装置において用いられる前記短冊状分割領域を符号化するための前記各符号化器が実行する動画像符号化方法であって,
前記短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに水平ラスタスキャン順に符号化を行うステップと,
前記符号化された短冊状分割領域の符号化データを復号したローカルデコード画像の短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行うステップと,
該短冊状分割領域の上側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器から,少なくとも該短冊状分割領域の最も上の矩形小領域に隣接する矩形小領域のフィルタ処理後の画像を受信しメモリに記録するステップと,
該短冊状分割領域の下側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器に向けて,少なくとも該短冊状分割領域の最も下の矩形小領域のフィルタ処理後の画像を転送するステップとを有し,
前記フィルタ処理を行うステップでは,該短冊状分割領域の最も上の矩形小領域に対してフィルタ処理を行うにあたって,前記メモリに記録したフィルタ処理後の画像を用いてフィルタ処理を行い,
前記符号化を行うステップでは,前記フィルタ処理後のローカルデコード画像を参照画像として利用して後続フレームのフレーム間予測符号化を行う
ことを特徴とする動画像符号化方法。
Each frame of the input moving image is divided into regions in the horizontal direction to generate a plurality of strip-shaped divided regions, and a plurality of encoders respectively divide each strip-shaped divided region into rectangular small regions in a grid pattern. A moving picture coding method executed by each of the encoders for coding the strip-like divided areas used in a moving picture parallel coding apparatus for coding rectangular small areas in a parallel divided area in parallel. ,
For rectangular small areas obtained by dividing the strip-shaped divided area into a grid, each rectangle from the upper-left rectangular small area in the strip-shaped divided area toward the lower-right rectangular small area in the strip-shaped divided area Encoding for each small region in the order of horizontal raster scan;
For the rectangular small area obtained by dividing the strip-shaped divided area of the local decoded image obtained by decoding the encoded data of the encoded strip-shaped divided area into a lattice shape, the upper left rectangular small area in the strip-shaped divided area Performing a filtering process in the order of vertical raster scan for each rectangular small area from the rectangular divided area toward the lower right rectangular small area in the strip-shaped divided area;
When there is an encoder in charge of encoding the strip-like divided area adjacent to the upper side of the strip-like divided area, it is adjacent to at least the uppermost rectangular small area of the strip-like divided area from the encoder. Receiving a filtered image of a rectangular small area to be recorded in a memory;
When there is an encoder responsible for encoding the strip-like divided area adjacent to the lower side of the strip-like divided area, at least the lowest rectangular small part of the strip-like divided area is directed toward the encoder. Transferring the filtered image of the region,
In the step of performing the filtering process, when performing the filtering process on the uppermost rectangular small area of the strip-shaped divided area, the filtering process is performed using the image after the filtering process recorded in the memory,
In the encoding step, the inter-frame prediction encoding of the subsequent frame is performed using the local decoded image after the filtering process as a reference image.
請求項1に記載の動画像符号化方法において,
前記フィルタ処理を行うステップでは,前記短冊状分割領域内の一つの矩形小領域のフィルタ処理において,該矩形小領域内の画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理と,水平方向のエッジに対する垂直方向のフィルタ処理を行った後,該矩形小領域と該矩形小領域の右に隣接する矩形小領域との隣接境界画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理を行う
ことを特徴とする動画像符号化方法。
In the moving image encoding method according to claim 1,
In the step of performing the filtering process, in the filtering process of one rectangular small area in the strip-shaped divided area, a horizontal filtering process for a vertical edge for pixels in the rectangular small area, and a horizontal direction After performing vertical filtering on the edges of the rectangle, horizontal filtering is performed on the vertical edges for the border pixels between the rectangular small area and the rectangular small area adjacent to the right of the rectangular small area. A moving image encoding method characterized by comprising:
請求項1または請求項2に記載の動画像符号化方法において,
前記符号化を行うステップにより,前記短冊状分割領域を格子状に分割して得られる全ての矩形小領域の水平ラスタスキャン順の符号化が完了した後に,
前記フィルタ処理を行うステップによるフィルタ処理を開始する
ことを特徴とする動画像符号化方法。
In the moving image encoding method according to claim 1 or 2,
After the encoding step in the horizontal raster scan order of all the rectangular small areas obtained by dividing the strip-shaped divided areas into a grid pattern by the encoding step,
The moving image encoding method, wherein the filtering process is started by performing the filtering process.
入力された動画像の各フレームを水平方向に領域分割して複数の短冊状分割領域を生成し,複数の符号化器がそれぞれ各短冊状分割領域を格子状に矩形小領域に分割して短冊状分割領域内の矩形小領域を並列に符号化する動画像並列符号化装置において用いられる前記短冊状分割領域を符号化するための符号化器であって,
前記短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに水平ラスタスキャン順に符号化を行う手段と,
前記符号化された短冊状分割領域の符号化データを復号したローカルデコード画像の短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行う手段と,
該短冊状分割領域の上側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器から,少なくとも該短冊状分割領域の最も上の矩形小領域に隣接する矩形小領域のフィルタ処理後の画像を受信しメモリに記録する手段と,
該短冊状分割領域の下側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器に向けて,少なくとも該短冊状分割領域の最も下の矩形小領域のフィルタ処理後の画像を転送する手段とを備え,
前記フィルタ処理を行う手段は,該短冊状分割領域の最も上の矩形小領域に対してフィルタ処理を行うにあたって,前記メモリに記録したフィルタ処理後の画像を用いてフィルタ処理を行い,
前記符号化を行う手段は,前記フィルタ処理後のローカルデコード画像を参照画像として利用して後続フレームのフレーム間予測符号化を行う
ことを特徴とする動画像並列符号化用符号化器。
Each frame of the input moving image is divided into regions in the horizontal direction to generate a plurality of strip-shaped divided regions, and a plurality of encoders respectively divide each strip-shaped divided region into rectangular small regions in a grid pattern. An encoder for encoding the strip-shaped divided region used in a moving image parallel coding device for encoding rectangular small regions in a rectangular divided region in parallel;
For rectangular small areas obtained by dividing the strip-shaped divided area into a grid, each rectangle from the upper left rectangular small area in the strip-shaped divided area toward the lower right rectangular small area in the strip-shaped divided area Means for encoding each small area in the order of horizontal raster scan;
For the rectangular small area obtained by dividing the strip-shaped divided area of the local decoded image obtained by decoding the encoded data of the encoded strip-shaped divided area into a lattice shape, the upper left rectangular small area in the strip-shaped divided area Means for performing a filtering process in the order of vertical raster scan for each rectangular small area from the rectangular divided area toward the lower right rectangular small area;
When there is an encoder in charge of encoding the strip-like divided area adjacent to the upper side of the strip-like divided area, it is adjacent to at least the uppermost rectangular small area of the strip-like divided area from the encoder. Means for receiving a filtered image of a rectangular small area and recording it in a memory;
When there is an encoder responsible for encoding the strip-like divided area adjacent to the lower side of the strip-like divided area, at least the lowest rectangular small part of the strip-like divided area is directed toward the encoder. Means for transferring the image after region filtering,
The means for performing the filtering process performs the filtering process using the image after filtering recorded in the memory when performing the filtering process on the uppermost rectangular small area of the strip-shaped divided area,
The moving image parallel coding encoder, wherein the coding means performs inter-frame predictive coding of a subsequent frame using the filtered local decoded image as a reference image.
請求項4に記載の動画像並列符号化用符号化器において,
前記フィルタ処理を行う手段は,前記短冊状分割領域内の一つの矩形小領域のフィルタ処理において,該矩形小領域内の画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理と,水平方向のエッジに対する垂直方向のフィルタ処理を行った後,該矩形小領域と該矩形小領域の右に隣接する矩形小領域との隣接境界画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理を行う
ことを特徴とする動画像並列符号化用符号化器。
The encoder for parallel encoding of moving images according to claim 4,
The means for performing the filtering process includes: a filtering process for one rectangular small area in the strip-shaped divided area; a horizontal filtering process for a vertical edge for a pixel in the rectangular small area; After performing vertical filtering on the edges of the rectangle, horizontal filtering is performed on the vertical edges for the border pixels between the rectangular small area and the rectangular small area adjacent to the right of the rectangular small area. An encoder for parallel video encoding, characterized in that:
入力された動画像の各フレームを水平方向に領域分割して複数の短冊状分割領域を生成し,複数の符号化器がそれぞれ各短冊状分割領域を格子状に矩形小領域に分割して短冊状分割領域内の矩形小領域を並列に符号化する動画像並列符号化方法であって,
前記各符号化器が,前記短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに水平ラスタスキャン順に符号化を行うステップと,
前記各符号化器が,前記符号化された短冊状分割領域の符号化データを復号したローカルデコード画像の短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行うステップと,
前記各符号化器が,該短冊状分割領域の上側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器から,少なくとも該短冊状分割領域の最も上の矩形小領域に隣接する矩形小領域のフィルタ処理後の画像を受信しメモリに記録するステップと,
前記各符号化器が,該短冊状分割領域の下側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器に向けて,少なくとも該短冊状分割領域の最も下の矩形小領域のフィルタ処理後の画像を転送するステップとを有し,
前記フィルタ処理を行うステップでは,該短冊状分割領域の最も上の矩形小領域に対してフィルタ処理を行うにあたって,前記メモリに記録したフィルタ処理後の画像を用いてフィルタ処理を行い,
前記符号化を行うステップでは,前記フィルタ処理後のローカルデコード画像を参照画像として利用して後続フレームのフレーム間予測符号化を行う
ことを特徴とする動画像並列符号化方法。
Each frame of the input moving image is divided into regions in the horizontal direction to generate a plurality of strip-shaped divided regions, and a plurality of encoders respectively divide each strip-shaped divided region into rectangular small regions in a grid pattern. A video parallel encoding method for encoding rectangular small regions in a segmented region in parallel,
For each rectangular small area obtained by dividing each strip-shaped divided area in a grid pattern by each of the encoders, a rectangular shape located at the lower right in the strip-shaped divided area from the rectangular small area at the upper left in the strip-shaped divided area. Encoding in a horizontal raster scan order for each rectangular subregion towards the subregion;
For each rectangular small region obtained by dividing each strip-shaped divided region of the local decoded image obtained by decoding the encoded data of the encoded strip-shaped divided region into a lattice shape, each encoder has the strip-shaped divided region. Performing a filtering process in the order of vertical raster scan for each rectangular small region from the rectangular small region at the upper left to the rectangular small region at the lower right within the strip-shaped divided region in
When there is an encoder in charge of encoding the strip-like divided area adjacent to the upper side of the strip-like divided area, each encoder has at least the most of the strip-like divided area. Receiving a filtered image of a rectangular small area adjacent to the upper rectangular small area and recording it in a memory;
When each of the encoders has an encoder responsible for encoding the adjacent strip-shaped divided region below the strip-shaped divided region, at least the strip-shaped divided portion is directed toward the encoder. Transferring the filtered image of the rectangular small area at the bottom of the area,
In the step of performing the filtering process, when performing the filtering process on the uppermost rectangular small area of the strip-shaped divided area, the filtering process is performed using the image after the filtering process recorded in the memory,
In the encoding step, the inter-frame predictive encoding of the subsequent frame is performed using the local decoded image after the filtering process as a reference image.
請求項6に記載の動画像並列符号化方法において,
前記各符号化器が前記フィルタ処理を行うステップでは,前記短冊状分割領域内の一つの矩形小領域のフィルタ処理において,該矩形小領域内の画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理と,水平方向のエッジに対する垂直方向のフィルタ処理を行った後,該矩形小領域と該矩形小領域の右に隣接する矩形小領域との隣接境界画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理を行う
ことを特徴とする動画像並列符号化方法。
In the moving image parallel encoding method according to claim 6,
In each of the encoders performing the filtering process, in the filtering process for one rectangular small area in the strip-shaped divided area, a horizontal direction with respect to a vertical edge for pixels in the rectangular small area is selected. After the filtering process and the vertical filtering process for the horizontal edge, the vertical edge for the adjacent boundary pixel between the rectangular small area and the rectangular small area adjacent to the right of the rectangular small area is processed. A moving image parallel coding method characterized by performing horizontal filtering.
請求項6または請求項7に記載の動画像並列符号化方法において,
前記各符号化器が,
前記符号化を行うステップにより,前記短冊状分割領域を格子状に分割して得られる全ての矩形小領域の水平ラスタスキャン順の符号化が完了した後に,
前記フィルタ処理を行うステップによるフィルタ処理を開始する
ことを特徴とする動画像並列符号化方法。
In the moving image parallel encoding method according to claim 6 or 7,
Each encoder is
After the encoding step in the horizontal raster scan order of all the rectangular small areas obtained by dividing the strip-shaped divided areas into a grid pattern by the encoding step,
The moving image parallel encoding method, wherein the filtering process by the step of performing the filtering process is started.
請求項6,請求項7または請求項8に記載の動画像並列符号化方法において,
前記符号化器の一つが,上からA番目の前記短冊状分割領域の左からB番目の列の矩形小領域群の上からC番目の矩形小領域のフィルタ処理を行うのと並列して,別の前記符号化器が,上からW番目の前記短冊状分割領域の左から(A+B−W)番目の矩形小領域群の上からC番目の矩形小領域のフィルタ処理を行う
ことを特徴とする動画像並列符号化方法。
In the moving image parallel encoding method according to claim 6, claim 7 or claim 8,
In parallel with one of the encoders performing the filtering process of the C-th rectangular small region from the top of the rectangular small region group of the B-th column from the left of the A-th strip-shaped divided region from the top, The another encoder performs a filtering process on the C-th rectangular small region from the top of the (A + B−W) -th rectangular small region group from the left of the W-th strip-shaped divided region from the top. A moving image parallel coding method.
入力された動画像の各フレームを水平方向に領域分割して複数の短冊状分割領域を生成し,複数の符号化器がそれぞれ各短冊状分割領域を格子状に矩形小領域に分割して短冊状分割領域内の矩形小領域を並列に符号化する動画像並列符号化装置であって,
前記各符号化器が,
前記短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに水平ラスタスキャン順に符号化を行う手段と,
前記符号化された短冊状分割領域の符号化データを復号したローカルデコード画像の短冊状分割領域を格子状に分割して得られる矩形小領域について,該短冊状分割領域内で左上の矩形小領域から該短冊状分割領域内で右下の矩形小領域に向けて各矩形小領域ごとに垂直ラスタスキャン順にフィルタ処理を行う手段と,
該短冊状分割領域の上側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器から,少なくとも該短冊状分割領域の最も上の矩形小領域に隣接する矩形小領域のフィルタ処理後の画像を受信しメモリに記録する手段と,
該短冊状分割領域の下側に隣接する短冊状分割領域の符号化を担当する符号化器が存在する場合に,その符号化器に向けて,少なくとも該短冊状分割領域の最も下の矩形小領域のフィルタ処理後の画像を転送する手段とを備え,
前記フィルタ処理を行う手段は,該短冊状分割領域の最も上の矩形小領域に対してフィルタ処理を行うにあたって,前記メモリに記録したフィルタ処理後の画像を用いてフィルタ処理を行い,
前記符号化を行う手段は,前記フィルタ処理後のローカルデコード画像を参照画像として利用して後続フレームのフレーム間予測符号化を行う
ことを特徴とする動画像並列符号化装置。
Each frame of the input moving image is divided into regions in the horizontal direction to generate a plurality of strip-shaped divided regions, and a plurality of encoders respectively divide each strip-shaped divided region into rectangular small regions in a grid pattern. A video parallel encoding device that encodes rectangular small regions in a segmented region in parallel,
Each encoder is
For rectangular small areas obtained by dividing the strip-shaped divided area into a grid, each rectangle from the upper-left rectangular small area in the strip-shaped divided area toward the lower-right rectangular small area in the strip-shaped divided area Means for encoding each small area in the order of horizontal raster scan;
For the rectangular small area obtained by dividing the strip-shaped divided area of the local decoded image obtained by decoding the encoded data of the encoded strip-shaped divided area into a lattice shape, the upper left rectangular small area in the strip-shaped divided area Means for performing a filtering process in the order of vertical raster scan for each rectangular small area from the rectangular divided area toward the lower right rectangular small area;
When there is an encoder in charge of encoding the strip-like divided area adjacent to the upper side of the strip-like divided area, it is adjacent to at least the uppermost rectangular small area of the strip-like divided area from the encoder. Means for receiving a filtered image of a rectangular small area to be recorded in a memory;
When there is an encoder responsible for encoding the strip-like divided area adjacent to the lower side of the strip-like divided area, at least the lowest rectangular small part of the strip-like divided area is directed toward the encoder. Means for transferring the image after region filtering,
The means for performing the filtering process performs the filtering process using the image after filtering recorded in the memory when performing the filtering process on the uppermost rectangular small area of the strip-shaped divided area,
The moving picture parallel coding apparatus characterized in that the coding means performs inter-frame predictive coding of subsequent frames using the filtered local decoded image as a reference image.
請求項10に記載の動画像並列符号化装置において,
前記各符号化器の前記フィルタ処理を行う手段は,前記短冊状分割領域内の一つの矩形小領域のフィルタ処理において,該矩形小領域内の画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理と,水平方向のエッジに対する垂直方向のフィルタ処理を行った後,該矩形小領域と該矩形小領域の右に隣接する矩形小領域との隣接境界画素を対象とした垂直方向のエッジに対する水平方向のフィルタ処理を行う
ことを特徴とする動画像並列符号化装置。
In the moving image parallel encoding device according to claim 10,
The means for performing the filtering process of each encoder includes: a filtering process for one rectangular small area in the strip-shaped divided area; and a horizontal direction with respect to a vertical edge for pixels in the rectangular small area. After the filtering process and the vertical filtering process for the horizontal edge, the vertical edge for the adjacent boundary pixel between the rectangular small area and the rectangular small area adjacent to the right of the rectangular small area is processed. A moving image parallel coding apparatus characterized by performing horizontal filtering.
請求項1から請求項3までのいずれか1項に記載された動画像符号化方法を,コンピュータに実行させるための動画像符号化プログラム。   A moving picture coding program for causing a computer to execute the moving picture coding method according to any one of claims 1 to 3. 請求項1から請求項3までのいずれか1項に記載された動画像符号化方法を,コンピュータに実行させるための動画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium having recorded thereon a moving image encoding program for causing a computer to execute the moving image encoding method according to any one of claims 1 to 3. 請求項6から請求項9までのいずれか1項に記載された動画像並列符号化方法を,コンピュータに実行させるための動画像並列符号化プログラム。   A moving picture parallel coding program for causing a computer to execute the moving picture parallel coding method according to any one of claims 6 to 9. 請求項6から請求項9までのいずれか1項に記載された動画像並列符号化方法を,コンピュータに実行させるための動画像並列符号化プログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium on which a moving image parallel coding program for causing a computer to execute the moving image parallel coding method according to any one of claims 6 to 9 is recorded.
JP2007110014A 2007-04-19 2007-04-19 Moving picture coding method, moving picture parallel coding encoder, moving picture parallel coding method, moving picture parallel coding apparatus, program thereof, and computer-readable recording medium recording the program Active JP4395174B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007110014A JP4395174B2 (en) 2007-04-19 2007-04-19 Moving picture coding method, moving picture parallel coding encoder, moving picture parallel coding method, moving picture parallel coding apparatus, program thereof, and computer-readable recording medium recording the program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007110014A JP4395174B2 (en) 2007-04-19 2007-04-19 Moving picture coding method, moving picture parallel coding encoder, moving picture parallel coding method, moving picture parallel coding apparatus, program thereof, and computer-readable recording medium recording the program

Publications (2)

Publication Number Publication Date
JP2008271068A JP2008271068A (en) 2008-11-06
JP4395174B2 true JP4395174B2 (en) 2010-01-06

Family

ID=40050007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007110014A Active JP4395174B2 (en) 2007-04-19 2007-04-19 Moving picture coding method, moving picture parallel coding encoder, moving picture parallel coding method, moving picture parallel coding apparatus, program thereof, and computer-readable recording medium recording the program

Country Status (1)

Country Link
JP (1) JP4395174B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5087016B2 (en) * 2009-01-19 2012-11-28 キヤノン株式会社 Encoding apparatus, control method therefor, and computer program
US9143804B2 (en) * 2009-10-29 2015-09-22 Nec Corporation Method and apparatus for parallel H.264 in-loop de-blocking filter implementation
JP6272182B2 (en) * 2014-08-07 2018-01-31 三菱電機株式会社 Image encoding apparatus and image decoding apparatus
US11997298B2 (en) 2022-08-03 2024-05-28 Qualcomm Incorporated Systems and methods of video decoding with improved buffer storage and bandwidth efficiency

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4270125B2 (en) * 2004-12-16 2009-05-27 ソニー株式会社 Data processing apparatus, image processing apparatus, method and program thereof

Also Published As

Publication number Publication date
JP2008271068A (en) 2008-11-06

Similar Documents

Publication Publication Date Title
CA2876017C (en) Method and apparatus for intra transform skip mode
KR101879890B1 (en) Image processing device, image processing method and recording medium
KR101962591B1 (en) Image processing device, image processing method and recording medium
US20170272758A1 (en) Video encoding method and apparatus using independent partition coding and associated video decoding method and apparatus
JP7445799B2 (en) Image decoding device and image decoding method
US11303900B2 (en) Method and apparatus for motion boundary processing
US20180324431A1 (en) Method and device for encoding/decoding image
TWI507019B (en) Method and apparatus for decoding video data
CN104380734B (en) The method and apparatus of coding and decoding video data
KR101614828B1 (en) Method, device, and program for coding and decoding of images
WO2010029850A1 (en) Image coding device, image decoding device, image coding method, image decoding method, and program
KR20100133006A (en) Dynamic image encoding/decoding method and device
TWI729549B (en) Post processing apparatus and associated post processing method
JP2007013298A (en) Image coding apparatus
JP4395174B2 (en) Moving picture coding method, moving picture parallel coding encoder, moving picture parallel coding method, moving picture parallel coding apparatus, program thereof, and computer-readable recording medium recording the program
JP4786623B2 (en) Moving picture encoding apparatus and moving picture decoding apparatus
WO2020003740A1 (en) Image coding device, image decoding device, control methods therefor, and program
JP6890993B2 (en) Image coding device, image decoding device, its control method, and control program
TW202349960A (en) Method and apparatus for entropy coding partition splitting decisions in video coding system
KR102125969B1 (en) Intra prediction method and apparatus using the method
JP2020108077A (en) Video encoder, video encoding method, video encoding program, video decoder, video decoding method, and video decoding program
KR20190023294A (en) Method and apparatus for encoding/decoding a video signal
WO2011096071A1 (en) Video encoder and video decoder

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090908

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: 20090929

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: 20091016

R150 Certificate of patent or registration of utility model

Ref document number: 4395174

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121023

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121023

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131023

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350