JP2012019462A - Picture decoding device and picture decoding method - Google Patents

Picture decoding device and picture decoding method Download PDF

Info

Publication number
JP2012019462A
JP2012019462A JP2010156884A JP2010156884A JP2012019462A JP 2012019462 A JP2012019462 A JP 2012019462A JP 2010156884 A JP2010156884 A JP 2010156884A JP 2010156884 A JP2010156884 A JP 2010156884A JP 2012019462 A JP2012019462 A JP 2012019462A
Authority
JP
Japan
Prior art keywords
picture
image
decoding
motion compensation
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010156884A
Other languages
Japanese (ja)
Inventor
Hiroshi Okamoto
啓史 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic 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 Panasonic Corp filed Critical Panasonic Corp
Priority to JP2010156884A priority Critical patent/JP2012019462A/en
Publication of JP2012019462A publication Critical patent/JP2012019462A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To solve the problem that in decoding processing of moving picture coded data, a large quantity of data required to read reference data for motion compensation requires a decoding device to have high-performance memory.SOLUTION: An picture decoding device 100 decodes the coded data obtained by coding a moving picture, by decoding processing with the motion compensation. The picture decoding device 100 comprises: picture memory 112 for storing decoded picture data; a reference image acquisition unit 109 for acquiring from the picture memory 112 a reference picture required for the motion compensation; a motion compensation unit 108 for performing the motion compensation by use of the reference picture; an picture output unit 113 for reading an output picture from the picture memory 112 and outputting thereof; and a control unit 110 which determines whether writing, into the picture memory 112, of the picture data obtained by decoding the picture to be decoded will be completed within a preset target processing period, and which when determined to be not completed, performs control to interrupt decoding processing of the picture to be decoded and to restart the decoding processing from the next picture.

Description

本発明は、動画像を圧縮符号化したデータの復号処理を行う、画像復号装置および画像復号方法に関するものである。   The present invention relates to an image decoding apparatus and an image decoding method for performing decoding processing on data obtained by compression-encoding moving images.

近年、AV情報のデジタル化が進み、動画像をデジタル化して取り扱うことのできる機器が広く普及しつつある。動画像は膨大な情報量を有するので、記録容量や伝送効率を考慮して情報量を削減しつつ符号化することが一般的である。動画像の符号化技術として、MPEG2やH.264(非特許文献1参照)という国際規格が定められており、ビデオカメラレコーダ、デジタル放送、インターネットストリーミングなど様々な分野で広く用いられている。これらの画像符号化技術では、動き予測(以下、動き補償ともいう)方式が導入されている。   In recent years, digitalization of AV information has progressed, and devices capable of digitizing and handling moving images are becoming widespread. Since a moving image has an enormous amount of information, encoding is generally performed while reducing the amount of information in consideration of recording capacity and transmission efficiency. As a moving image encoding technique, MPEG2 or H.264 is used. H.264 (see Non-Patent Document 1) has been established and is widely used in various fields such as video camera recorders, digital broadcasting, and Internet streaming. In these image coding techniques, a motion prediction (hereinafter also referred to as motion compensation) method is introduced.

動き予測は、符号化処理対象のピクチャと、参照ピクチャとから動きベクトルを検出し、予測ピクチャを生成する処理である。ここで、参照ピクチャは、動き予測において参照されるピクチャであり、既に符号化されているピクチャの中から選択される。   Motion prediction is processing for detecting a motion vector from a picture to be encoded and a reference picture and generating a predicted picture. Here, the reference picture is a picture that is referred to in motion prediction, and is selected from pictures that have already been encoded.

動き予測により得られた動き情報(参照ピクチャを特定する情報、動きベクトルなど)および予測結果との差分などの情報が符号化される。ピクチャは、通常マクロブロックと呼ばれる16×16画素サイズの矩形領域に分割され、そのマクロブロック単位で符号化処理は行われる。   Information such as motion information (information specifying a reference picture, motion vector, etc.) obtained by motion prediction and a difference from a prediction result is encoded. A picture is divided into rectangular areas having a size of 16 × 16 pixels, usually called macroblocks, and encoding processing is performed in units of the macroblocks.

上記のような動き予測を伴う画像符号化データの復号処理について、動画像復号装置の典型的な全体構成例を図3に示し、その動作を簡単に説明する。動画像復号装置は、符号化データの入力端子101、可変長復号部102、逆量子化部103、逆直交変換部104、動き補償部108、参照画像取得部109、画像メモリ112、加算器105および再生画像の出力端子114を備える。   A typical overall configuration example of the moving image decoding apparatus for the decoding processing of the encoded image data accompanied with motion prediction as described above is shown in FIG. 3 and the operation will be briefly described. The moving image decoding apparatus includes an encoded data input terminal 101, a variable length decoding unit 102, an inverse quantization unit 103, an inverse orthogonal transform unit 104, a motion compensation unit 108, a reference image acquisition unit 109, an image memory 112, and an adder 105. And a playback image output terminal 114.

入力された画像符号化データは、可変長復号部102で可変長符号の復号を行い、16×16画素サイズのマクロブロック毎に量子化変換係数データと動き情報が出力される。以後はマクロブロック単位で復号処理が行われる。量子化変換係数データは、逆量子化部103で逆量子化処理、逆直交変換部104で逆直交変換処理が施され、予測差分データが出力される。参照画像取得部109は、動き情報に基づいて必要な参照ピクチャの一部の領域を画像メモリ112から読み出して出力する。動き補償部108では参照画像取得部109から得た参照ピクチャデータと動き情報から、動き予測データを生成して出力する。加算器105は、この動き予測データに、逆変換処理部104から出力される予測差分データを加算することで復号画素データを生成する。復号画素データは出力端子114から出力されるとともに、画像メモリ112に格納される。   The input image encoded data is subjected to variable length decoding by the variable length decoding unit 102, and quantized transform coefficient data and motion information are output for each macroblock of 16 × 16 pixel size. Thereafter, the decoding process is performed in units of macroblocks. The quantized transform coefficient data is subjected to inverse quantization processing by the inverse quantization unit 103 and inverse orthogonal transform processing by the inverse orthogonal transform unit 104, and prediction difference data is output. The reference image acquisition unit 109 reads out a partial area of the required reference picture from the image memory 112 based on the motion information and outputs it. The motion compensation unit 108 generates and outputs motion prediction data from the reference picture data obtained from the reference image acquisition unit 109 and the motion information. The adder 105 generates decoded pixel data by adding the prediction difference data output from the inverse transform processing unit 104 to the motion prediction data. The decoded pixel data is output from the output terminal 114 and stored in the image memory 112.

ここで、動き補償について詳しく説明する。H .264では、16×16画素からなるマクロブロックに対して、動き補償のブロックは、16×16、16×8、8×16、8×8、8×4、4×8、4×4画素の合計7種類の動き補償のブロックサイズから適切なブロックサイズを選択して符号化に使用される。動き予測データを生成する参照ピクチャは、前方(時間的に過去の画像)および後方(時間的に未来の画像)の中から最大2つ選択することができる。   Here, motion compensation will be described in detail. H. In H.264, a motion compensation block is 16 × 16, 16 × 8, 8 × 16, 8 × 8, 8 × 4, 4 × 8, 4 × 4 pixels, compared to a macroblock composed of 16 × 16 pixels. An appropriate block size is selected from a total of seven types of motion compensation block sizes and used for encoding. A maximum of two reference pictures for generating motion prediction data can be selected from the front (temporarily past image) and the rear (temporally future image).

図4は、H.264における動き補償のブロックサイズについて示したものであり、横16画素×縦16画素の大きさを有するマクロブロックをどのように分割するかを示している。まず、16×16画素のブロックに対する分割方法が4通りあり、各々のブロック分割タイプを図4(a)〜(d)に示している。   FIG. 2 shows the block size of motion compensation in H.264, and shows how to divide a macroblock having a size of horizontal 16 pixels × vertical 16 pixels. First, there are four division methods for a block of 16 × 16 pixels, and each block division type is shown in FIGS.

図4(a)は、マクロブロックを分割せずに動き補償を行う場合(分割タイプ1)を示し、図4(b)はマクロブロックを横16画素×縦8画素の2つのブロックに分割して動き補償を行う場合(分割タイプ2)を示し、図4(c)はマクロブロックを横8画素×縦16画素の2つのブロックに分割して動き補償を行う場合(分割タイプ3)を示し、図4(d)はマクロブロックを横8画素×縦8画素の4つのブロックに分割して動き補償を行う場合(分割タイプ4)を示している。   FIG. 4A shows a case where motion compensation is performed without dividing a macroblock (division type 1), and FIG. 4B shows that the macroblock is divided into two blocks of 16 horizontal pixels × 8 vertical pixels. FIG. 4C shows a case where motion compensation is performed by dividing a macroblock into two blocks of 8 horizontal pixels × 16 vertical pixels (division type 3). FIG. 4D shows a case where motion compensation is performed by dividing a macroblock into four blocks of 8 horizontal pixels × 8 vertical pixels (division type 4).

さらに、図4(d)に示す分割タイプ4の分割方法を選択する場合には、横8画素×縦8画素の4つのサブブロックに対して、図4(e)〜(h)にそれぞれ示す横8画素×縦8画素の4ブロックのそれぞれを分割する方法から選択できる。ここで図4(e)、(f)、(g)、および(h)に示す分割方法はそれぞれ、分割タイプ4、分割タイプ5、分割タイプ6、および分割タイプ7に対応している。   Furthermore, when the division type 4 division method shown in FIG. 4D is selected, four sub-blocks of 8 horizontal pixels × 8 vertical pixels are shown in FIGS. 4E to 4H, respectively. It can be selected from a method of dividing each of 4 blocks of 8 horizontal pixels × 8 vertical pixels. Here, the division methods shown in FIGS. 4E, 4F, 4G, and 4H correspond to division type 4, division type 5, division type 6, and division type 7, respectively.

また、H.264規格では1/4画素までの小数画素単位で動き補償を行うことが許可されている。この際、H.264規格ではその線形フィルタ画素補間の方法として6タップフィルタが採用されており、1/2精度画素を周辺の6画素から求めることが決められている。この6タップフィルタによる画素補間の方法について、図5を用いて説明する。   H. In the H.264 standard, motion compensation is permitted in units of decimal pixels up to 1/4 pixel. At this time, H.C. In the H.264 standard, a 6-tap filter is employed as the linear filter pixel interpolation method, and it is determined that half-precision pixels are obtained from the surrounding six pixels. A pixel interpolation method using this 6-tap filter will be described with reference to FIG.

図5はH.264における輝度信号の画素補間方法を説明するための概念図である。図5において補間前の整数精度画素位置の画素信号を網掛けの四角形で表し、1/2画素精度および1/4画素精度の小数画素位置の画素信号を白抜きの四角形で表している。まず、整数画素信号から6タップフィルタを用いて1/2画素精度の画素信号が生成され、次に2タップの平均値フィルタにより1/4画素精度の画素信号が生成される。   FIG. 2 is a conceptual diagram for explaining a pixel interpolation method of a luminance signal in H.264. In FIG. 5, pixel signals at integer precision pixel positions before interpolation are represented by shaded squares, and pixel signals at decimal pixel positions with 1/2 pixel precision and 1/4 pixel precision are represented by white squares. First, a pixel signal with 1/2 pixel accuracy is generated from the integer pixel signal using a 6-tap filter, and then a pixel signal with 1/4 pixel accuracy is generated by an average value filter with 2 taps.

2つの整数画素信号の水平方向の中間位置にある1/2画素信号は、水平方向の6タップフィルタ処理により生成する。例えば、画素bは、整数画素E、F、G、H、I、Jに水平方向の6タップフィルタを施すことによって生成する。   The 1/2 pixel signal at the intermediate position in the horizontal direction between the two integer pixel signals is generated by horizontal 6-tap filter processing. For example, the pixel b is generated by applying a horizontal 6-tap filter to the integer pixels E, F, G, H, I, and J.

2つの整数画素信号の垂直方向の中間位置にある1/2画素信号は、垂直方向の6タップフィルタ処理により生成する。例えば、画素hは、整数画素A、C、G、M、R、Tに垂直方向の6タップフィルタを施すことによって生成する。   A ½ pixel signal at an intermediate position in the vertical direction between two integer pixel signals is generated by vertical 6-tap filter processing. For example, the pixel h is generated by applying a vertical 6-tap filter to the integer pixels A, C, G, M, R, and T.

4つの整数画素信号の中間位置にある1/2画素信号は、6タップフィルタ処理を水平と垂直の両方向に行うことにより生成する。例えば、画素jを生成する場合、1/2画素精度の信号aa、bb、b、s、gg、hhを水平方向6タップフィルタ処理により生成した後、これらの信号に垂直方向に6タップフィルタ処理を行うことによって生成する。あるいは、垂直方向フィルタ処理により画素cc、dd、h、m、ee、ffを生成した後、水平方向フィルタ処理によってjを生成しても構わない。   The half pixel signal at the middle position of the four integer pixel signals is generated by performing 6-tap filter processing in both the horizontal and vertical directions. For example, when generating the pixel j, the signals aa, bb, b, s, gg, and hh with 1/2 pixel accuracy are generated by the horizontal 6-tap filter process, and then these signals are subjected to the 6-tap filter process in the vertical direction. Generate by doing Alternatively, after generating the pixels cc, dd, h, m, ee, and ff by the vertical filter process, j may be generated by the horizontal filter process.

このように、全ての1/2画素精度の信号を計算した後、平均値フィルタを用いて1/4画素精度の信号を生成する。例えば、画素aはGとbから、画素fはbとjから、画素rはmとsからそれぞれ平均値フィルタを施して生成する。   In this way, after calculating all the signals with ½ pixel accuracy, a signal with ¼ pixel accuracy is generated using the average value filter. For example, the pixel a is generated from G and b, the pixel f is generated from b and j, and the pixel r is generated from m and s by applying an average value filter.

従って、整数画素精度の画素G、H、MおよびNで囲まれる小数精度画素位置の画素信号を求めるためには、図5で示した周囲6×6の画素が必要である。   Therefore, in order to obtain the pixel signal at the decimal pixel position surrounded by the pixels G, H, M and N with integer pixel accuracy, the surrounding 6 × 6 pixels shown in FIG. 5 are required.

また、動き補償を行うブロック単位では、図6に示すように動き補償を行うブロックの画素が位置する領域(a)に対して、対象のブロックを上と左に2画素、下と右に3画素分拡大した領域(b)の画素が輝度信号では必要となる。従って、横×縦サイズが16×16、16×8、8×16、8×8、8×4、4×8、4×4の各動き補償のブロックサイズに対して、それぞれ水平、垂直に5画素分ずつ拡大した21×21、21×13、13×21、13×13、13×9、9×13、9×9の画素領域が必要となる。   In addition, in the block unit for performing motion compensation, as shown in FIG. 6, with respect to the area (a) where the pixels of the block for which motion compensation is performed are located, the target block is 2 pixels above and left, and 3 pixels below and right The pixels in the area (b) enlarged by the pixels are necessary for the luminance signal. Therefore, the horizontal and vertical sizes are 16 × 16, 16 × 8, 8 × 16, 8 × 8, 8 × 4, 4 × 8, and 4 × 4 block sizes for motion compensation horizontally and vertically, respectively. 21 × 21, 21 × 13, 13 × 21, 13 × 13, 13 × 9, 9 × 13, and 9 × 9 pixel regions that are enlarged by 5 pixels are required.

なお、色差信号に関しては、小数精度画素の周囲4つの整数精度画素から線形補間で生成する。色差信号の動き補償ブロックサイズは、例えば4:2:0フォーマットの場合、8×8、8×4、4×8、4×4、4×2、2×4、2×2であり、小数精度画素を求めるのに必要な参照画素領域は、それぞれ水平、垂直に1画素分ずつ拡大した9×9、9×5、5×9、5×5、5×3、3×5、3×3となる。   The color difference signal is generated by linear interpolation from four integer precision pixels around the decimal precision pixel. For example, in the case of 4: 2: 0 format, the motion compensation block size of the color difference signal is 8 × 8, 8 × 4, 4 × 8, 4 × 4, 4 × 2, 2 × 4, 2 × 2, and is a decimal number. The reference pixel areas necessary for obtaining the precision pixels are 9 × 9, 9 × 5, 5 × 9, 5 × 5, 5 × 3, 3 × 5, 3 ×, respectively, enlarged horizontally and vertically by one pixel. 3

以上のように、動き補償を行うために必要な参照画素データのデータ転送量が大きくなるという問題が生じる。従って、参照画像データを高速に読み出して処理するためには、高性能で高価なメモリが必要となり、画像復号装置のコストが上昇してしまう。   As described above, there arises a problem that the data transfer amount of the reference pixel data necessary for performing motion compensation increases. Therefore, in order to read and process the reference image data at a high speed, a high-performance and expensive memory is required, and the cost of the image decoding device increases.

上記問題を解決するために、特許文献1では参照ピクチャから取得した画素を一旦記憶するバッファを設け、既にバッファ内に記憶されている画素は再取得せずに動き補償を行う技術が示されている。この技術では、一度取得した画素が他のブロックの動き補償で再利用される可能性が高いことを利用し、画像メモリから取得するデータ量を削減する。   In order to solve the above problem, Patent Document 1 discloses a technique for providing a buffer for temporarily storing pixels acquired from a reference picture and performing motion compensation without re-acquiring pixels already stored in the buffer. Yes. This technique uses the fact that once acquired pixels are likely to be reused in motion compensation of other blocks, and reduces the amount of data acquired from the image memory.

特開2005−354673号公報JP 2005-354673 A

H.264 ISO/IEC14496−10規格H. H.264 ISO / IEC 14496-10 standard

しかしながら上記従来の構成では、マクロブロック毎の動きベクトルの相関が大きいときはバッファ内に記憶されているデータを利用できるため効率的であるが、動きベクトルがランダムになっているような場合はバッファ内のデータを利用することができない。そのため、H.264規格に準拠した全ての符号化データに対して破綻なく復号処理を行うためには、帯域の広いメモリが必要になるという課題がある。   However, the above conventional configuration is efficient because the data stored in the buffer can be used when the correlation between the motion vectors for each macroblock is large. However, if the motion vector is random, the buffer is buffered. You cannot use the data inside. Therefore, H.H. There is a problem that a wide-band memory is required to perform decoding processing on all encoded data compliant with the H.264 standard without failure.

本発明は、帯域の狭いメモリを使用しても、どのような符号化データに対しても破綻することなく復号可能な画像復号装置を提供することを目的とする。   An object of the present invention is to provide an image decoding apparatus that can decode any encoded data without fail even when a narrow-band memory is used.

本発明の画像復号装置の第一の発明は、復号した画像データを格納する画像メモリと、動き補償に必要な参照ピクチャを、前記画像メモリから取得する参照画像取得部と、前記参照ピクチャを使用して動き補償処理を行う動き補償部と、前記画像メモリから出力画像を読み出して出力する画像出力部とを備え、予め設定した目標処理時間内に復号対象ピクチャを復号した画像データの前記画像メモリへの書き込みが完了するかどうかを判定し、完了しないと判定された場合は前記復号対象ピクチャの復号処理を中断し、次のピクチャから復号処理を再開するよう制御する制御部とを備える。   A first invention of an image decoding device according to the present invention uses an image memory for storing decoded image data, a reference image acquisition unit for acquiring a reference picture necessary for motion compensation from the image memory, and the reference picture A motion compensation unit that performs motion compensation processing, and an image output unit that reads and outputs an output image from the image memory, and the image memory of image data obtained by decoding a decoding target picture within a preset target processing time A controller that controls whether or not the decoding process of the picture to be decoded is interrupted and the decoding process is resumed from the next picture.

また第二の発明は、前記制御部は、前記復号処理が中断されたピクチャに対して、復号されなかった画面内の領域の画像データを、直前に出力したピクチャの画像データで置き換えて出力することを特徴とする。   In the second invention, the control unit replaces the image data of the area in the screen that has not been decoded with the image data of the picture that was output immediately before the picture for which the decoding process has been interrupted. It is characterized by that.

また第三の発明は、前記制御部は、前記復号処理の中断は、復号対象ピクチャが別のピクチャの参照ピクチャになり得ない場合にのみ行うことを特徴とする。   According to a third aspect of the present invention, the control unit performs the interruption of the decoding process only when a decoding target picture cannot be a reference picture of another picture.

本発明の第一の発明によれば、ピクチャ単位で目標処理時間内に処理が完了するかどうかを判定し、完了しない場合は途中で符号化処理を打ち切る。これにより、動画符号化データ内のあるピクチャに対して、動き補償処理のための参照画像読み出しに必要なメモリ帯域が使用するメモリの帯域を超える場合にも、その影響は1ピクチャ内に制限され、符号化データ全体の復号処理の遅延などが起こることはなく、時間軸方向での影響を最小限に留めることが可能になる。   According to the first aspect of the present invention, it is determined whether or not the processing is completed within the target processing time in units of pictures, and if not completed, the encoding processing is terminated halfway. As a result, even if the memory bandwidth required for reading a reference image for motion compensation processing exceeds the memory bandwidth used for a certain picture in the moving image encoded data, the effect is limited to one picture. Thus, there is no delay in the decoding process of the entire encoded data, and the influence in the time axis direction can be minimized.

また第二の発明によれば、復号処理が打ち切られることで復号されなかった領域は、相関の大きな直前のピクチャで置き換える。これにより、ピクチャ内における画像乱れの影響を最小限に留めることが可能になる。   According to the second invention, a region that has not been decoded due to the decoding process being aborted is replaced with the immediately preceding picture having a large correlation. As a result, it is possible to minimize the influence of image disturbance in the picture.

また第三の発明によれば、復号処理を打ち切るピクチャは、他の参照ピクチャになり得ないピクチャに限定する。これにより、復号処理打ち切りによって発生する影響は他のピクチャに伝播することがなく、ピクチャ内に留められる。   According to the third invention, the picture for which the decoding process is terminated is limited to a picture that cannot be another reference picture. As a result, the influence caused by the decoding process abortion is not propagated to other pictures, but remains in the picture.

実施の形態における画像復号装置の構成を示すブロック図The block diagram which shows the structure of the image decoding apparatus in embodiment 実施の形態における画像復号装置の動作を説明するタイミング図Timing chart explaining operation of image decoding apparatus in embodiment 従来の画像復号装置の構成を示すブロック図The block diagram which shows the structure of the conventional image decoding apparatus 動き補償ブロックの説明図Illustration of motion compensation block 6タップフィルタによる画素補間処理の説明図Explanatory drawing of pixel interpolation processing by 6-tap filter 参照画像データ読み込み領域の説明図Illustration of reference image data reading area

以下に、実施の形態について、図面を参照しながら説明する。   Embodiments will be described below with reference to the drawings.

図1は、実施の形態における画像復号装置の構成を示すブロック図である。また、図2は、具体的に動作を説明するための図である。図1において、画像復号装置100は、入力端子101、可変長復号部102、逆量子化部103、逆直交変換部104、加算器105、画面内予測部106、信号選択部107、動き補償部108、参照画像取得部109、制御部110、メモリコントローラ111、画像メモリ112、画像出力部113および出力端子114を備える。   FIG. 1 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment. FIG. 2 is a diagram for specifically explaining the operation. In FIG. 1, an image decoding apparatus 100 includes an input terminal 101, a variable length decoding unit 102, an inverse quantization unit 103, an inverse orthogonal transform unit 104, an adder 105, an intra prediction unit 106, a signal selection unit 107, and a motion compensation unit. 108, a reference image acquisition unit 109, a control unit 110, a memory controller 111, an image memory 112, an image output unit 113, and an output terminal 114.

可変長復号部102は、入力端子101から入力されたH.264画像符号化データの可変長符号の復号を行い、16×16画素サイズのマクロブロック単位で可変長復号結果を出力する。その出力は、量子化変換係数データ、量子化パラメータ情報、マクロブロックの符号化モードを示すマクロブロックタイプ情報および動きベクトルと参照ピクチャを示す動き情報などである。   The variable length decoding unit 102 receives the H.264 input from the input terminal 101. The variable-length code of the H.264 image encoded data is decoded, and the variable-length decoding result is output in a macro block unit of 16 × 16 pixel size. The output includes quantized transform coefficient data, quantization parameter information, macroblock type information indicating a macroblock coding mode, motion information indicating a motion vector and a reference picture, and the like.

量子化変換係数データは、逆量子化部103で逆量子化処理、逆直交変換部104で逆直交変換処理が施される。逆直交変換部104は、予測差分データを出力する。   The quantized transform coefficient data is subjected to an inverse quantization process by the inverse quantization unit 103 and an inverse orthogonal transform process by the inverse orthogonal transform unit 104. The inverse orthogonal transform unit 104 outputs prediction difference data.

画面内予測部106は、そのマクロブロックが画面内予測符号化されている場合、マクロブロックタイプ情報で示された予測モードに従って、マクロブロックの周辺画素データから画面内予測データを生成する。   When the macroblock is subjected to intraframe prediction encoding, the intraframe prediction unit 106 generates intraframe prediction data from the surrounding pixel data of the macroblock according to the prediction mode indicated by the macroblock type information.

参照画像取得部109は、そのマクロブロックが動き予測符号化されている場合、動き補償のブロック毎に、参照ピクチャを示す情報と動きベクトルから動き予測データを生成するのに必要な参照ピクチャの矩形領域を求め、画像メモリ112上の該当するアドレスを決定してメモリコントローラ111に対して読み出し要求を発行する。   When the macroblock is motion prediction encoded, the reference image acquisition unit 109 generates a reference picture rectangle necessary for generating motion prediction data from information indicating a reference picture and a motion vector for each motion compensation block. An area is obtained, a corresponding address on the image memory 112 is determined, and a read request is issued to the memory controller 111.

動き補償部108は、参照画像取得部109経由で取得された参照ピクチャのデータを使用して、補間フィルタ処理を行い、1/4画素精度の動き予測データを生成する。   The motion compensation unit 108 performs interpolation filter processing using the reference picture data acquired via the reference image acquisition unit 109, and generates motion prediction data with 1/4 pixel accuracy.

信号選択部107は、そのマクロブロックの予測モードに従って画面内予測データもしくは動き予測データを選択する。選択された予測データと逆直交変換部104から出力される予測差分データを加算器105で加算してマクロブロックの復号データが生成される。復号データはメモリコントローラ111を介して画像メモリ112に書き込まれる。   The signal selection unit 107 selects intra prediction data or motion prediction data according to the prediction mode of the macroblock. The selected prediction data and the prediction difference data output from the inverse orthogonal transform unit 104 are added by the adder 105 to generate decoded data of the macroblock. The decoded data is written into the image memory 112 via the memory controller 111.

画像出力部113は、再生画像出力タイミングに合わせてメモリコントローラ111に対して必要なピクチャの読み出し要求を行い、読み出されたデータを出力する。   The image output unit 113 requests the memory controller 111 to read a necessary picture in accordance with the reproduction image output timing, and outputs the read data.

メモリコントローラ111の動作について説明する。本実施の形態においては、画像メモリ112はDDR−SDRAM(Double−Data−Rate Synchronous Dynamic Random Access Memory)で構成される。なお、画像メモリ112は、DDR−SDRAMに限らず、他の形態のメモリであってもよく、画像を保持できるものであればよい。メモリにアクセスする回路(マスター)は、(1)復号データ書き込み、(2)再生出力読み出し、(3)参照画像読み出しの計3回路からなる。メモリコントローラ111は、各マスターからのメモリアクセス要求の調停処理を行い、選択されたマスターの書き込みおよび読み出しアクセスを行う。また、メモリコントローラ111は、DDR−SDRAMへのモード設定やリフレッシュ動作を行う。   The operation of the memory controller 111 will be described. In this embodiment, the image memory 112 is configured by a DDR-SDRAM (Double-Data-Rate Synchronous Dynamic Random Access Memory). Note that the image memory 112 is not limited to the DDR-SDRAM, and may be a memory of another form as long as it can hold an image. A circuit (master) for accessing the memory is composed of a total of three circuits: (1) decoding data writing, (2) reproduction output reading, and (3) reference image reading. The memory controller 111 performs arbitration processing of memory access requests from each master, and performs write and read access of the selected master. The memory controller 111 performs mode setting and refresh operation for the DDR-SDRAM.

メモリコントローラ111へのアクセス要求のうち、復号データの書き込みと、画像出力の読み出しについては、ピクチャあたりのデータ量は一定である。一方、参照画像取得のためのデータ量は符号化モードによって異なる。例えば、Iピクチャのようにピクチャ全体が画面内符号化されている場合、参照画像の読み出しデータ量は0である。それに対して、動き補償ブロックサイズ16×16の片方向予測で符号化される場合、輝度信号では21×21=441画素分の読み出しが必要である。さらに、動き補償ブロックサイズ4×4の双方向予測で符号化される場合、動き補償ブロックあたり9×9サイズの参照画像読み出しが必要であり、マクロブロックあたりの動き補償ブロック数は16、それぞれ双方向予測のため更に2倍のブロック数が必要になるので、16×16画素のマクロブロックあたり、9×9×16×2=2592画素分の読み出しが必要となる。このようなマクロブロックでは画像メモリ112からのデータ読み込み時間が大きくなる。すなわち、動き補償ブロックサイズが小さいマクロブロックの割合が大きいピクチャは、そうでないピクチャに比べて復号処理に要する時間が増大する。   Of the access requests to the memory controller 111, the amount of data per picture is constant for writing decoded data and reading image output. On the other hand, the amount of data for acquiring a reference image differs depending on the encoding mode. For example, when the entire picture is intra-coded like an I picture, the read data amount of the reference image is zero. On the other hand, when encoding is performed by unidirectional prediction with a motion compensation block size of 16 × 16, it is necessary to read out 21 × 21 = 441 pixels in the luminance signal. Further, when encoding is performed with bi-directional prediction with a motion compensation block size of 4 × 4, it is necessary to read out a reference image of 9 × 9 size per motion compensation block, and the number of motion compensation blocks per macroblock is 16, respectively. Since twice the number of blocks is required for the direction prediction, it is necessary to read out 9 × 9 × 16 × 2 = 2592 pixels per macroblock of 16 × 16 pixels. In such a macroblock, the time for reading data from the image memory 112 becomes long. That is, a picture with a large proportion of macroblocks with a small motion compensation block size requires a longer time for decoding processing than a picture with no macroblock.

制御部110は、参照画像データの取得状況からピクチャ単位で復号処理の進行状況を監視し、予め決めておいた目標時間を越える場合、そのピクチャの復号処理の打ち切りを可変長復号部102と画像出力部113に通知する。可変長復号部102は、復号中のピクチャにおいて復号処理打ち切りが通知された時点のマクロブロック以降の復号処理を中止し、次のピクチャの先頭マクロブロックから復号処理を再開する。   The control unit 110 monitors the progress of the decoding process in units of pictures from the acquisition state of the reference image data, and when the predetermined target time is exceeded, the control unit 110 cancels the decoding process of the picture with the variable length decoding unit 102 and the image. Notify the output unit 113. The variable length decoding unit 102 stops the decoding process after the macroblock at the time when the decoding process abort is notified in the picture being decoded, and restarts the decoding process from the first macroblock of the next picture.

画像出力部113は、通常はピクチャ毎に画像メモリ112から再生画像データを読み出して出力する。復号処理が途中で打ち切られている場合、復号されなかった領域は直前に出力したピクチャのデータを画像メモリ112から読み込んで出力する。   The image output unit 113 normally reads out and outputs reproduced image data from the image memory 112 for each picture. If the decoding process is interrupted, the picture data output immediately before is read from the image memory 112 and output for the undecoded area.

図2は、復号打ち切り処理の説明図である。図2において、(a)はピクチャ毎の復号処理タイミングを示している。(a)の矩形は各復号ピクチャ、矩形の中の文字はピクチャタイプと表示順である。例えばI2はIピクチャで2番目に表示するピクチャの意味である。(b)は画像メモリ112上における書き込みピクチャアドレス、(c)は画像出力部113が読み出す再生データ、(d)は読み出しピクチャアドレス、(e)は再生画像の画面イメージを示している。   FIG. 2 is an explanatory diagram of the decoding abort process. In FIG. 2, (a) shows the decoding processing timing for each picture. The rectangle in (a) is each decoded picture, and the characters in the rectangle are the picture type and display order. For example, I2 means the picture to be displayed second in the I picture. (B) is a write picture address on the image memory 112, (c) is reproduction data read by the image output unit 113, (d) is a read picture address, and (e) is a screen image of the reproduction image.

図2(a)の点線は、各ピクチャの目標復号完了時刻である。制御部110は各ピクチャが目標復号完了時刻までに復号完了しない場合には、強制的に復号処理を打ち切る。図中のB1ピクチャに対して復号処理が打ち切られている。画像出力部113は、ピクチャ毎に画像メモリ112からデータを読み出して出力する際、復号されていない領域は直前のピクチャを出力するよう、読み出しアドレスを変更して画像メモリ112からデータを読み出す。図2(c)で再生出力の斜線部が直前のピクチャのデータが出力されている区間であり、再生画像は図2(e)に示すように、画面下部の斜線領域が直前のピクチャで置き換えられて表示される。   The dotted line in FIG. 2A indicates the target decoding completion time for each picture. The control unit 110 forcibly terminates the decoding process when each picture does not complete decoding by the target decoding completion time. The decoding process is terminated for the B1 picture in the figure. When the image output unit 113 reads and outputs data from the image memory 112 for each picture, the image output unit 113 reads the data from the image memory 112 while changing the read address so that an undecoded area outputs the previous picture. In FIG. 2C, the hatched portion of the playback output is the section where the data of the previous picture is output, and the playback image replaces the hatched area at the bottom of the screen with the previous picture as shown in FIG. Displayed.

以上説明したように、本実施の形態によれば、ピクチャ毎に目標処理時間内に処理が完了するかどうかを判定し、完了しない場合は途中で符号化処理を打ち切ることにより、動き補償の符号化条件によって参照画像読み出しに必要なデータ量が多く、メモリの性能を超えた読み出し帯域が要求されるようなピクチャが符号化データ内に存在した場合においても、符号化データ全体の復号処理の遅延は発生せず、その影響はピクチャ内のみに限定される。   As described above, according to the present embodiment, for each picture, it is determined whether or not the processing is completed within the target processing time. Even when there is a large amount of data required to read the reference image depending on the encoding conditions and a picture that requires a read bandwidth exceeding the memory performance is present in the encoded data, the decoding process of the entire encoded data is delayed. Does not occur, and its effect is limited only within the picture.

また、復号されなかった領域は直前に出力されたピクチャで置き換えることにより、復号処理を途中で打ち切っても、そのピクチャの再生画像は大きく乱れることなく再生することができる。   Also, by replacing the area that has not been decoded with the picture that was output immediately before, even if the decoding process is interrupted halfway, the reproduced image of that picture can be reproduced without being greatly disturbed.

さらに、H.264規格ではストリーム中のnal_ref_idcなるフラグにより、そのピクチャが他のピクチャの参照ピクチャかどうかが示される。このフラグを見て、参照ピクチャでない場合にのみ打ち切り処理を行うことが可能である。これにより、復号打ち切りの影響が他のピクチャに伝播することを防ぐことができる。なお、双方向予測では、参照ピクチャは、表示順で前にある非参照ピクチャよりも先に復号されるため、復号完了から表示までの時間的余裕が大きく、復号打ち切り処理を行わなくても再生破綻が起きることはない。   Further, H.C. In the H.264 standard, a flag nal_ref_idc in a stream indicates whether the picture is a reference picture of another picture. By looking at this flag, it is possible to perform the censoring process only when it is not a reference picture. Thereby, it is possible to prevent the influence of decoding truncation from propagating to other pictures. In bi-directional prediction, the reference picture is decoded before the non-reference picture preceding in the display order, so that there is a large time margin from the completion of decoding to display, and playback is performed without performing the decoding truncation process. No bankruptcy will occur.

なお、本実施の形態では、制御部110とメモリコントローラ111とを別に設ける構成について説明したが、メモリコントローラ111を設けず、制御部110で画像メモリ112に対する制御を実施する形態であってもよい。   In the present embodiment, the configuration in which the control unit 110 and the memory controller 111 are separately provided has been described. However, the memory controller 111 may not be provided, and the control unit 110 may control the image memory 112. .

本実施の形態にかかる画像復号装置は、処理に必要なメモリに要求される性能を低く抑えることができるため、高解像度画像信号の符号化システムや低コストの画像復号装置に有用である。   The image decoding apparatus according to the present embodiment can keep the performance required for the memory required for processing low, and is useful for high-resolution image signal encoding systems and low-cost image decoding apparatuses.

102 可変長復号部
103 逆量子化部
104 逆直交変換部
106 画面内予測部
108 動き補償部
109 参照画像取得部
110 制御部
111 メモリコントローラ
112 画像メモリ
113 画像出力部
DESCRIPTION OF SYMBOLS 102 Variable length decoding part 103 Inverse quantization part 104 Inverse orthogonal transformation part 106 Intra-screen prediction part 108 Motion compensation part 109 Reference image acquisition part 110 Control part 111 Memory controller 112 Image memory 113 Image output part

Claims (4)

動画像の符号化により得られた符号化データを、動き補償を伴う復号処理により復号する画像復号装置であって、
復号した画像データを格納する画像メモリと、
動き補償に必要な参照ピクチャを、前記画像メモリから取得する参照画像取得部と、
前記参照ピクチャを使用して動き補償を行う動き補償部と、
前記画像メモリから出力画像を読み出して出力する画像出力部と、
予め設定した目標処理時間内に復号対象ピクチャを復号した画像データの前記画像メモリへの書き込みが完了するかどうかを判定し、完了しないと判定された場合は前記復号対象ピクチャの復号処理を中断し、次のピクチャから復号処理を再開するよう制御する制御部と、
を備える画像復号装置。
An image decoding device that decodes encoded data obtained by encoding a moving image by a decoding process with motion compensation,
An image memory for storing the decoded image data;
A reference picture acquisition unit for acquiring a reference picture necessary for motion compensation from the image memory;
A motion compensation unit that performs motion compensation using the reference picture;
An image output unit that reads and outputs an output image from the image memory;
It is determined whether or not the writing of the image data obtained by decoding the decoding target picture within the target processing time set in advance to the image memory is completed. If it is determined that the writing is not completed, the decoding process of the decoding target picture is interrupted. A control unit that controls to resume the decoding process from the next picture;
An image decoding apparatus comprising:
前記制御部は、
前記復号処理が中断されたピクチャに対して、復号されなかった画面内の領域の画像データを、直前に出力したピクチャの画像データで置き換えて出力する
請求項1記載の画像復号装置。
The controller is
The image decoding apparatus according to claim 1, wherein the image data of the area in the screen that has not been decoded is replaced with the image data of the picture that was output immediately before the picture for which the decoding process has been interrupted.
前記制御部は、
前記復号処理の中断は、復号対象ピクチャが別のピクチャの参照ピクチャになり得ない場合にのみ行う
請求項1または2に記載の画像復号装置。
The controller is
The image decoding apparatus according to claim 1, wherein the decoding process is interrupted only when a decoding target picture cannot be a reference picture of another picture.
動画像の符号化により得られた符号化データを、動き補償を伴う復号処理により復号する画像復号方法であって、
復号した画像データを画像メモリに格納するステップと、
動き補償に必要な参照ピクチャを、前記画像メモリから取得するステップと、
前記参照ピクチャを使用して動き補償を行うステップと、
前記画像メモリから出力画像を読み出して出力するステップと、
予め設定した目標処理時間内に復号対象ピクチャを復号した画像データの前記画像メモリへの書き込みが完了するかどうかを判定し、完了しないと判定された場合は前記復号対象ピクチャの復号処理を中断し、次のピクチャから復号処理を再開するよう制御するステップと、
を含む画像復号方法。
An image decoding method for decoding encoded data obtained by encoding a moving image by a decoding process with motion compensation,
Storing the decoded image data in an image memory;
Obtaining a reference picture required for motion compensation from the image memory;
Performing motion compensation using the reference picture;
Reading and outputting an output image from the image memory; and
It is determined whether or not the writing of the image data obtained by decoding the decoding target picture within the target processing time set in advance to the image memory is completed. If it is determined that the writing is not completed, the decoding process of the decoding target picture is interrupted. Controlling to resume the decoding process from the next picture;
An image decoding method including:
JP2010156884A 2010-07-09 2010-07-09 Picture decoding device and picture decoding method Pending JP2012019462A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010156884A JP2012019462A (en) 2010-07-09 2010-07-09 Picture decoding device and picture decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010156884A JP2012019462A (en) 2010-07-09 2010-07-09 Picture decoding device and picture decoding method

Publications (1)

Publication Number Publication Date
JP2012019462A true JP2012019462A (en) 2012-01-26

Family

ID=45604340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010156884A Pending JP2012019462A (en) 2010-07-09 2010-07-09 Picture decoding device and picture decoding method

Country Status (1)

Country Link
JP (1) JP2012019462A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015533462A (en) * 2012-10-25 2015-11-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated Reference picture status for video coding

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015533462A (en) * 2012-10-25 2015-11-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated Reference picture status for video coding

Similar Documents

Publication Publication Date Title
US8428126B2 (en) Image decoding device with parallel processors
KR100192696B1 (en) Method and apparatus for reproducing picture data
US20160080687A1 (en) Image output device, image output method, and recording medium
US9386310B2 (en) Image reproducing method, image reproducing device, image reproducing program, imaging system, and reproducing system
JP4675383B2 (en) Image decoding apparatus and method, and image encoding apparatus
JPH11298903A (en) Digital image decoding device/method and supply medium thereof
JP7324065B2 (en) Motion vector detection device, imaging device, motion vector detection method, and program
US8406306B2 (en) Image decoding apparatus and image decoding method
JP2010098633A (en) Prediction coding apparatus, and prediction coding method
US20050141620A1 (en) Decoding apparatus and decoding method
JP2007318615A (en) Moving image reproducing device, moving image reproduction method and program
JP2007180723A (en) Image processor and image processing method
JP2003348594A (en) Device and method for decoding image
JP2012019462A (en) Picture decoding device and picture decoding method
JP2009218965A (en) Image processor, imaging device mounted with the same and image reproduction device
JP2008187694A (en) Image encoder and method thereof
JP5053774B2 (en) Video encoding device
JP2014078891A (en) Image processing apparatus and image processing method
TWI512675B (en) Image processing device and method thereof
US9788002B2 (en) Image processing apparatus and method
JP2009130599A (en) Moving picture decoder
JP2007109329A (en) Picture data recording apparatus, picture data reproducing apparatus, picture data recording method, program, and recording medium
JP2018117308A (en) Playback apparatus and control method of the same
JP5867050B2 (en) Image processing device
JP2009290387A (en) Encoder, decoder and recording reproducing device