JP2011259205A - Image decoding device, image encoding device, and method and program thereof - Google Patents

Image decoding device, image encoding device, and method and program thereof Download PDF

Info

Publication number
JP2011259205A
JP2011259205A JP2010131891A JP2010131891A JP2011259205A JP 2011259205 A JP2011259205 A JP 2011259205A JP 2010131891 A JP2010131891 A JP 2010131891A JP 2010131891 A JP2010131891 A JP 2010131891A JP 2011259205 A JP2011259205 A JP 2011259205A
Authority
JP
Japan
Prior art keywords
unit
data
image data
transform
prediction
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.)
Withdrawn
Application number
JP2010131891A
Other languages
Japanese (ja)
Inventor
Kenji Kondo
健治 近藤
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2010131891A priority Critical patent/JP2011259205A/en
Priority to BR112012030544A priority patent/BR112012030544A2/en
Priority to CN201180027201.5A priority patent/CN102918843B/en
Priority to RU2012151530/08A priority patent/RU2012151530A/en
Priority to CN201510424195.7A priority patent/CN105049859B/en
Priority to PCT/JP2011/061974 priority patent/WO2011155332A1/en
Priority to US13/701,319 priority patent/US9053549B2/en
Priority to KR20127031223A priority patent/KR20130090322A/en
Priority to CN201510422994.0A priority patent/CN105025295B/en
Priority to EP11792289.8A priority patent/EP2582137A1/en
Priority to TW100119435A priority patent/TW201215156A/en
Publication of JP2011259205A publication Critical patent/JP2011259205A/en
Priority to US14/720,265 priority patent/US9596476B2/en
Priority to US15/432,338 priority patent/US9979982B2/en
Priority to US15/960,370 priority patent/US10499083B2/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve an encoding efficiency.SOLUTION: An encoded bit stream is processed by a reversible decoding part 52, an inverse quantization part 53 and an inverse orthogonal transformation part 54 in this order to obtain coefficient data and encoding parameter information after orthogonal transformation. The inverse orthogonal transformation part 54 inverse-transforms the coefficient data by means of a preset basis according to a position of a transformation block in a macro block indicated by the encoding parameter information to obtain predictive error data. An intra-prediction part 62 generates predictive image data. An addition part 55 adds the predictive image data to the predictive error data to obtain image data. By use of the basis set according to the position of the transformation block, the optimum inverse orthogonal transformation can be performed to improve an encoding efficiency.

Description

この発明は、画像復号化装置と画像符号化装置およびその方法とプログラムに関する。詳しくは、効率的な復号化や符号化を行うことができる画像復号化装置と画像符号化装置およびその方法とプログラムを提供する。   The present invention relates to an image decoding device, an image encoding device, a method thereof, and a program. Specifically, an image decoding apparatus, an image encoding apparatus, a method thereof, and a program that can perform efficient decoding and encoding are provided.

近年、画像情報をディジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、直交変換と動き補償により圧縮するMPEGなどの方式に準拠した装置が、放送局などの情報配信、および一般家庭における情報受信の双方において普及しつつある。   In recent years, image information has been handled as digital data. At that time, the purpose is to transmit and store information efficiently, and it is based on a method such as MPEG that compresses by orthogonal transform and motion compensation using redundancy unique to image information. Devices are becoming popular for both information distribution in broadcasting stations and information reception in general households.

特に、MPEG2(ISO/IEC 13818−2)は、汎用画像符号化方式として定義されている。MPEG2圧縮方式は、飛び越し走査画像および順次走査画像の双方、並びに標準解像度画像および高精細画像を網羅する標準で、プロフェッショナル用途およびコンシューマー用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば1920×1088画素を持つ高解像度の飛び越し走査画像であれば18〜22Mbpsの符号量(ビットレート)を割り当てることで、高い圧縮率と良好な画質の実現が可能である。   In particular, MPEG2 (ISO / IEC 13818-2) is defined as a general-purpose image coding system. MPEG2 compression is a standard that covers both interlaced and progressively scanned images, as well as standard resolution and high definition images, and is currently widely used in a wide range of professional and consumer applications. By using the MPEG2 compression method, a high compression rate and good image quality can be realized by assigning a code amount (bit rate) of 18 to 22 Mbps for, for example, a high-resolution interlaced scanned image having 1920 × 1088 pixels. It is.

MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496−2としてその規格が国際標準に承認された。   MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate. With the widespread use of mobile terminals, the need for such an encoding system is expected to increase in the future, and the MPEG4 encoding system has been standardized accordingly. Regarding the image coding system, the standard was approved as an international standard as ISO / IEC 14496-2 in December 1998.

さらに、近年、MPEG2やMPEG4といった符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率を実現できるH.264およびMPEG−4 Part10(Advanced Video Coding、以下H.264/AVCと記す)という名で国際標準となっている。このH.264/AVCは、H.26Lをベースとして、H.26Lではサポートされない機能をも取り入れている。   Further, in recent years, compared with encoding methods such as MPEG2 and MPEG4, although a large amount of calculation is required for encoding and decoding, H.264 can realize higher encoding efficiency. H.264 and MPEG-4 Part 10 (Advanced Video Coding, hereinafter referred to as H.264 / AVC) are international standards. This H. H.264 / AVC is H.264. Based on 26L, It also incorporates functions not supported by 26L.

また、H.264/AVCを用いて画像データをより効率的に符号化することが特許文献1等に開示されている。   H. Patent Document 1 discloses that image data is more efficiently encoded using H.264 / AVC.

特開2008−4984号公報JP 2008-4984 A

ところで、イントラ予測では、イントラ予測の方向に合わせて変換手法の切り替えを行う、MDDT(Mode dependent directional transform)と呼ばれる方式が提案されている。このようなMDDT方式を用いる場合、イントラ予測の方向に合わせて行われる変換が最適化されていないと、符号化効率を改善することが困難である。   By the way, in intra prediction, a method called MDDT (Mode dependent directional transform) has been proposed in which conversion methods are switched in accordance with the direction of intra prediction. When such an MDDT method is used, it is difficult to improve coding efficiency unless conversion performed in accordance with the direction of intra prediction is optimized.

そこで、この発明では、符号化効率を改善できる画像復号化装置と画像符号化装置およびその方法とプログラムを提供することを目的とする。   Therefore, an object of the present invention is to provide an image decoding apparatus, an image encoding apparatus, a method thereof, and a program that can improve encoding efficiency.

この発明の第1の側面は、画像データと予測画像データとの誤差である予測誤差データを、変換ブロック毎に直交変換して、該直交変換後の係数データを処理して生成された符号化ビットストリームから前記画像データを復号する画像復号化装置において、前記符号化ビットストリームを処理して、前記直交変換後の係数データと符号化パラメータ情報を得るデータ処理部と、前記符号化パラメータ情報で示されたマクロブロック内における前記変換ブロックの位置に応じて予め設定されている基底を用いて前記係数データの逆直交変換を行い予測誤差を得る逆直交変換部と、前記予測画像データを生成する予測画像データ生成部と、前記逆直交変換部で得られた前記予測誤差に前記予測画像データ生成部で生成された予測画像データを加算して前記画像データを復号する加算部とを有する画像復号化装置にある。   According to a first aspect of the present invention, encoding is performed by orthogonally transforming prediction error data, which is an error between image data and predicted image data, for each transform block and processing the coefficient data after the orthogonal transform. In an image decoding device that decodes the image data from the bit stream, a data processing unit that processes the encoded bit stream to obtain coefficient data and encoding parameter information after the orthogonal transformation, and the encoding parameter information An inverse orthogonal transform unit that obtains a prediction error by performing inverse orthogonal transform of the coefficient data using a base set in advance according to the position of the transform block in the indicated macroblock, and generates the predicted image data Add the predicted image data generated by the predicted image data generation unit to the prediction error obtained by the predicted image data generation unit and the inverse orthogonal transform unit In the image decoding apparatus and an addition unit for decoding the image data Te.

この発明の画像復号化装置では、符号化ビットストリームを処理して得られた直交変換後の係数データの逆直交変換を行う際に、前記符号化ビットストリームに含まれている画像データを復号するための符号化パラメータ情報で示されたマクロブロック内における変換ブロックのブロック位置やブロック位置と符号化パラメータ情報で示された予測モードに応じて予め設定されている基底が用いられて、逆直交変換例えばカルーネン・レーベ逆変換が行われる。また、マクロブロックに含まれる変換ブロックが複数であるとき、各変換ブロックの直交変換後の最も低い周波数成分の係数を用いたブロックの直交変換後の係数データに対して、予測モードに応じて予め設定されている基底を用いて、カルーネン・レーベ逆変換が行われる。また、逆直交変換部で用いられる基底は、予測誤差データを変換ブロック毎に直交変換したときに用いられる基底の逆行例である。このような基底を予め設けておき、ブロック位置等に応じた基底を選択して用いて逆直交変換を行い直交変換が行われるまえの予測誤差データを生成する。   In the image decoding apparatus according to the present invention, when inverse orthogonal transformation is performed on coefficient data after orthogonal transformation obtained by processing the coded bit stream, the image data included in the coded bit stream is decoded. Inverse orthogonal transform using the block position of the transform block in the macroblock indicated by the encoding parameter information and the base set in advance according to the block position and the prediction mode indicated by the encoding parameter information For example, the Karhunen-Loeve inverse transformation is performed. In addition, when there are a plurality of transform blocks included in the macroblock, the coefficient data after the orthogonal transform of the block using the coefficient of the lowest frequency component after the orthogonal transform of each transform block is previously stored according to the prediction mode. The Karoonen-Labe inverse transform is performed using the set basis. Further, the base used in the inverse orthogonal transform unit is a reverse example of the base used when the prediction error data is orthogonally transformed for each transform block. Such a base is provided in advance, and the prediction error data before the orthogonal transformation is generated by performing the inverse orthogonal transformation by selecting and using the basis corresponding to the block position or the like.

この発明の第2の側面は、画像データと予測画像データとの誤差である予測誤差データを、変換ブロック毎に直交変換して、該直交変換後の係数データを処理して生成された符号化ビットストリームから前記画像データを復号する画像復号化方法において、前記符号化ビットストリームを処理して、前記直交変換後の係数データと符号化パラメータ情報を得るデータ処理工程と、前記符号化パラメータ情報で示されたマクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記係数データの逆直交変換を行い予測誤差を得る逆直交変換工程と、前記予測画像データを生成する予測画像データ生成工程と、前記逆直交変換部で得られた前記予測誤差に前記生成された予測画像データを加算して前記画像データを復号する加算工程とを設けた画像復号化方法にある。   According to a second aspect of the present invention, there is provided an encoding generated by orthogonally transforming prediction error data, which is an error between image data and predicted image data, for each transform block and processing the coefficient data after the orthogonal transform In an image decoding method for decoding the image data from a bit stream, a data processing step of processing the encoded bit stream to obtain coefficient data and encoding parameter information after the orthogonal transformation, and the encoding parameter information An inverse orthogonal transform step for obtaining a prediction error by performing inverse orthogonal transform of the coefficient data using a preset basis according to the position of the transform block in the indicated macroblock, and generating the predicted image data A predicted image data generating step, and adding the generated predicted image data to the prediction error obtained by the inverse orthogonal transform unit to generate the image data. In a picture decoding method is provided an addition step of decoding the data.

この発明の第3の側面は、画像データと予測画像データとの誤差である予測誤差データを、変換ブロック毎に直交変換して、該直交変換後の係数データを処理して生成された符号化ビットストリームから前記画像データを復号する画像符号化をコンピュータで実行させるプログラムであって、前記符号化ビットストリームを処理して、前記直交変換後の係数データと符号化パラメータ情報を得るデータ処理手順と、前記符号化パラメータ情報で示されたマクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記係数データの逆直交変換を行い予測誤差を得る逆直交変換手順と、前記予測画像データを生成する予測画像データ生成手順と、前記逆直交変換部で得られた前記予測誤差に前記生成された予測画像データを加算して前記画像データを復号する加算手順とを前記コンピュータで実行させるプログラムにある。   According to a third aspect of the present invention, there is provided an encoding generated by orthogonally transforming prediction error data, which is an error between image data and predicted image data, for each transform block, and processing the coefficient data after the orthogonal transform. A program for causing a computer to execute image coding for decoding the image data from a bitstream, and processing the coded bitstream to obtain coefficient data and coding parameter information after the orthogonal transformation; An inverse orthogonal transform procedure for obtaining a prediction error by performing inverse orthogonal transform of the coefficient data using a preset basis according to the position of the transform block in the macroblock indicated by the encoding parameter information; A predicted image data generation procedure for generating the predicted image data, and the prediction error generated by the prediction error obtained by the inverse orthogonal transform unit. There adds the image data and the addition procedure for decoding the image data in the program to be executed by the computer.

この発明の第4の側面は、画像データの符号化を行う画像符号化装置において、前記画像データの予測画像データを生成する予測部と、前記画像データと前記予測画像データとの誤差である予測誤差データを生成する減算部と、前記予測誤差の直交変換を変換ブロック毎に行い、マクロブロック内における前記変換ブロックの位置に応じて予め設定されている基底を用いて、前記直交変換を行う直交変換部と、前記直交変換部の出力データを処理して符号化ビットストリームを生成するデータ処理部とを有する画像符号化装置にある。   According to a fourth aspect of the present invention, in an image encoding device that encodes image data, a prediction unit that generates predicted image data of the image data, and prediction that is an error between the image data and the predicted image data An orthogonal unit that performs orthogonal transform of the prediction error for each transform block and performs orthogonal transform using a base set in advance according to the position of the transform block in a macro block. The image coding apparatus includes a transform unit and a data processing unit that processes output data of the orthogonal transform unit to generate a coded bitstream.

この発明の画像符号化装置では、画像データと予測画像データの誤差を示す予測誤差データを変換ブロック毎に直交変換する際に、マクロブロック内における変換ブロックのブロック位置やブロック位置と予測画像データを生成したときの予測モードに応じて予め設定されている基底が用いられて、直交変換例えばカルーネン・レーベ変換が行われる。また、マクロブロックに含まれる変換ブロックが複数であるとき、各変換ブロックにおける直交変換後の最も低い周波数成分の係数で構成したブロックのカルーネン・レーベ変換が行われる。このカルーネン・レーベ変換では、予測モードに応じて予め設定されている基底が用いられる。この基底は、予め基底の学習用に用意されている複数の画像を用いて、マクロブロックサイズ毎、変換ブロックサイズ毎、マクロブロック内における変換ブロックの位置毎、および予測モード毎の各変換ブロック内の予測誤差データから算出した行列の固有値に対応する固有ベクトルである。また、基底は、基底間の距離または参照画素からの距離に応じてグループ化されている。このような基底を予め設けておき、ブロック位置等に応じた基底を選択して用いて直交変換を行う。さらに、直交変換後の係数データに対して量子化や可逆符号化等の処理が行われて、符号化ビットストリームの生成が行われる。   In the image coding apparatus according to the present invention, when orthogonally transforming prediction error data indicating an error between image data and predicted image data for each transform block, the block position and block position of the transform block in the macro block and the predicted image data are obtained. A base set in advance according to the prediction mode at the time of generation is used, and orthogonal transformation, for example, Karhunen-Loeve transformation, is performed. In addition, when there are a plurality of transform blocks included in the macroblock, Karoonen-Label transform is performed on the block configured with the coefficient of the lowest frequency component after orthogonal transform in each transform block. In this Karoonen-Loeve transform, a base set in advance according to the prediction mode is used. This base is obtained by using a plurality of images prepared for base learning in advance, in each transform block for each macroblock size, each transform block size, each transform block position in the macroblock, and each prediction mode. Is an eigenvector corresponding to the eigenvalue of the matrix calculated from the prediction error data. The bases are grouped according to the distance between the bases or the distance from the reference pixel. Such a base is provided in advance, and an orthogonal transform is performed by selecting and using a base corresponding to a block position or the like. Further, the coefficient data after the orthogonal transform is subjected to processing such as quantization and lossless encoding, and an encoded bit stream is generated.

この発明の第5の側面は、画像データの符号化を行う画像符号化方法において、前記画像データの予測画像データを生成する予測画像データ生成工程と、前記画像データと前記予測画像データとの誤差である予測誤差データを生成する減算工程と、前記予測誤差の直交変換を変換ブロック毎に行い、マクロブロック内における前記変換ブロックの位置に応じて予め設定されている基底を用いて、前記直交変換を行う直交変換工程とを設けた画像符号化方法にある。   According to a fifth aspect of the present invention, in an image encoding method for encoding image data, a predicted image data generation step for generating predicted image data of the image data, and an error between the image data and the predicted image data A subtraction process for generating prediction error data, and orthogonal transformation of the prediction error is performed for each transformation block, and the orthogonal transformation is performed using a base set in advance according to the position of the transformation block in a macroblock. The image encoding method includes an orthogonal transform step for performing the above.

この発明の第6の側面は、画像データの符号化をコンピュータで実行させるプログラムであって、前記画像データの予測画像データを生成する予測画像データ生成手順と、前記画像データと前記予測画像データとの誤差である予測誤差データを生成する減算手順と、前記予測誤差の直交変換を変換ブロック毎に行い、マクロブロック内における前記変換ブロックの位置に応じて予め設定されている基底を用いて、前記直交変換を行う直交変換手順とを前記コンピュータで実行させるプログラムにある。   According to a sixth aspect of the present invention, there is provided a program for causing a computer to execute encoding of image data, a predicted image data generation procedure for generating predicted image data of the image data, the image data, the predicted image data, A subtraction procedure for generating prediction error data that is an error of the above, and orthogonal transformation of the prediction error for each transform block, using a base set in advance according to the position of the transform block in a macroblock, There is a program for causing the computer to execute an orthogonal transformation procedure for performing orthogonal transformation.

なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。   The program of the present invention is, for example, a storage medium or communication medium provided in a computer-readable format to a general-purpose computer system capable of executing various program codes, such as an optical disk, a magnetic disk, a semiconductor memory, etc. Or a program that can be provided by a communication medium such as a network. By providing such a program in a computer-readable format, processing corresponding to the program is realized on the computer system.

この発明によれば、画像データの符号化時に行われる直交変換において、マクロブロック内における変換ブロックのブロック位置に応じて予め設定されている基底を用いて直交変換が行われる。また、ブロック位置に応じて予め設定されている基底を用いて直交変換を行うことに得られた係数データを処理して生成された符号化ビットストリームの復号化において、符号化ビットストリームに含まれている符号化パラメータ情報で示されたマクロブロック内のブロック位置に応じて予め設定されている基底が用いられて、逆直交変換が行われるので、直交変換後の係数データを直交変換前の予測誤差データに戻すことができる。このように、マクロブロック内のブロック位置に応じた基底を用いて直交変換や逆直交変換が行われるので、ブロック位置に応じて最適化した変換を行うことが可能となり、符号化効率を改善することができる。   According to the present invention, in the orthogonal transformation performed at the time of encoding image data, orthogonal transformation is performed using a base set in advance according to the block position of the transformation block in the macroblock. In addition, in decoding of an encoded bitstream generated by processing coefficient data obtained by performing orthogonal transformation using a base set in advance according to a block position, it is included in the encoded bitstream. Inverse orthogonal transformation is performed using a base set in advance according to the block position in the macroblock indicated by the encoding parameter information, so that coefficient data after orthogonal transformation is predicted before orthogonal transformation. Error data can be restored. As described above, since orthogonal transform and inverse orthogonal transform are performed using a base corresponding to the block position in the macroblock, it is possible to perform a transform optimized according to the block position and improve coding efficiency. be able to.

画像符号化装置の構成を示した図である。It is the figure which showed the structure of the image coding apparatus. 4×4画素のブロックについてのイントラ予測モードを示す図である。It is a figure which shows the intra prediction mode about a 4x4 pixel block. 予測モードと予測誤差の関係を示した図である。It is the figure which showed the relationship between prediction mode and a prediction error. 直交変換部におけるKL変換を示す図である。It is a figure which shows KL conversion in an orthogonal transformation part. 直交変換部の構成を示す図である。It is a figure which shows the structure of an orthogonal transformation part. 画像符号化処理動作を示すフローチャートである。It is a flowchart which shows an image coding process operation. 予測処理を示すフローチャートである。It is a flowchart which shows a prediction process. イントラ予測処理を示すフローチャートである。It is a flowchart which shows an intra prediction process. インター予測処理を示すフローチャートである。It is a flowchart which shows the inter prediction process. 符号化パラメータ生成処理を示すフローチャートである。It is a flowchart which shows an encoding parameter production | generation process. 直交変換処理を示すフローチャートである。It is a flowchart which shows an orthogonal transformation process. 直交変換動作を説明するための図である。It is a figure for demonstrating orthogonal transformation operation | movement. 画像復号化装置の構成を示した図である。It is the figure which showed the structure of the image decoding apparatus. 逆直交変換部の構成を示す図である。It is a figure which shows the structure of an inverse orthogonal transformation part. 画像復号化処理動作を示すフローチャートである。It is a flowchart which shows an image decoding process operation. 逆直交変換処理を示すフローチャートである。It is a flowchart which shows an inverse orthogonal transformation process. 逆直交変換処理を説明するための図である。It is a figure for demonstrating an inverse orthogonal transformation process. 予測処理を示すフローチャートである。It is a flowchart which shows a prediction process. 基底の学習動作を示すフローチャートである。It is a flowchart which shows the learning operation | movement of a basis. 基底のグループ化を説明するための図である。It is a figure for demonstrating grouping of a basis. テレビジョン装置の概略構成を例示した図である。It is the figure which illustrated schematic structure of the television apparatus. 携帯電話機の概略構成を例示した図である。It is the figure which illustrated schematic structure of the mobile phone. 記録再生装置の概略構成を例示した図である。It is the figure which illustrated schematic structure of the recording / reproducing apparatus. 撮像装置の概略構成を例示した図である。It is the figure which illustrated schematic structure of the imaging device.

以下、発明を実施するための形態について説明する。なお、説明は以下の順序で行う。
1.画像符号化装置の構成
2.直交変換部の構成
3.画像符号化装置の動作
4.画像復号化装置の構成
5.逆直交変換部の構成
6.画像復号化装置の動作
7.基底の学習動作
8.ソフトウェア処理の場合
9.電子機器に適用した場合
Hereinafter, modes for carrying out the invention will be described. The description will be given in the following order.
1. 1. Configuration of image encoding device 2. Configuration of orthogonal transform unit 3. Operation of image encoding device 4. Configuration of image decoding device Configuration of inverse orthogonal transform unit 6. 6. Operation of image decoding device Base learning operation 8. 8. Software processing When applied to electronic equipment

<1.画像符号化装置の構成>
図1は、画像符号化装置の構成を示している。画像符号化装置10は、アナログ/ディジタル変換部(A/D変換部)11、画面並び替えバッファ12、減算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、レート制御部18を備えている。さらに、画像符号化装置10は、逆量子化部21、逆直交変換部22、加算部23、デブロッキングフィルタ24、フレームメモリ27、イントラ予測部31、動き予測・補償部32、予測画像・最適モード選択部33を備えている。
<1. Configuration of Image Encoding Device>
FIG. 1 shows the configuration of an image encoding device. The image encoding device 10 includes an analog / digital conversion unit (A / D conversion unit) 11, a screen rearrangement buffer 12, a subtraction unit 13, an orthogonal transformation unit 14, a quantization unit 15, a lossless encoding unit 16, and a storage buffer 17. The rate control unit 18 is provided. Further, the image encoding device 10 includes an inverse quantization unit 21, an inverse orthogonal transform unit 22, an addition unit 23, a deblocking filter 24, a frame memory 27, an intra prediction unit 31, a motion prediction / compensation unit 32, a predicted image / optimum A mode selection unit 33 is provided.

A/D変換部11は、アナログの画像信号をディジタルの画像データに変換して画面並べ替えバッファ12に出力する。   The A / D converter 11 converts an analog image signal into digital image data and outputs the digital image data to the screen rearrangement buffer 12.

画面並べ替えバッファ12は、A/D変換部11から出力された画像データに対してフレームの並べ替えを行う。画面並べ替えバッファ12は、符号化処理に係るGOP(Group of Pictures)構造に応じてフレームの並べ替えを行い、並べ替え後の画像データを減算部13とイントラ予測部31と動き予測・補償部32に出力する。   The screen rearrangement buffer 12 rearranges the frames of the image data output from the A / D conversion unit 11. The screen rearrangement buffer 12 rearranges frames according to a GOP (Group of Pictures) structure related to encoding processing, and subtracts the image data after the rearrangement, the intra prediction unit 31, and the motion prediction / compensation unit. 32.

減算部13には、画面並べ替えバッファ12から出力された画像データと、後述する予測画像・最適モード選択部33で選択された予測画像データが供給される。減算部13は、画面並べ替えバッファ12から出力された画像データと予測画像・最適モード選択部33から供給された予測画像データとの差分である予測誤差データを算出して、直交変換部14に出力する。   The subtraction unit 13 is supplied with the image data output from the screen rearrangement buffer 12 and the prediction image data selected by the prediction image / optimum mode selection unit 33 described later. The subtraction unit 13 calculates prediction error data that is a difference between the image data output from the screen rearrangement buffer 12 and the prediction image data supplied from the prediction image / optimum mode selection unit 33, and sends the prediction error data to the orthogonal transformation unit 14. Output.

直交変換部14は、減算部13から出力された予測誤差データに対して直交変換処理を行う。また、直交変換部14は、イントラ予測を行う場合、予測モードに応じた直交変換処理を行う。直交変換部14は、直交変換処理を行うことにより得られた係数データを量子化部15に出力する。   The orthogonal transform unit 14 performs orthogonal transform processing on the prediction error data output from the subtraction unit 13. Moreover, the orthogonal transformation part 14 performs the orthogonal transformation process according to prediction mode, when performing intra prediction. The orthogonal transform unit 14 outputs coefficient data obtained by performing the orthogonal transform process to the quantization unit 15.

量子化部15には、直交変換部14から出力された係数データと、後述するレート制御部18からレート制御信号が供給されている。量子化部15は係数データの量子化を行い、量子化データを可逆符号化部16と逆量子化部21に出力する。また、量子化部15は、レート制御部18からのレート制御信号に基づき量子化パラメータ(量子化スケール)を切り替えて、量子化データのビットレートを変化させる。   The quantization unit 15 is supplied with coefficient data output from the orthogonal transform unit 14 and a rate control signal from a rate control unit 18 described later. The quantization unit 15 quantizes the coefficient data and outputs the quantized data to the lossless encoding unit 16 and the inverse quantization unit 21. Further, the quantization unit 15 changes the bit rate of the quantized data by switching the quantization parameter (quantization scale) based on the rate control signal from the rate control unit 18.

可逆符号化部16には、量子化部15から出力された量子化データと、後述するイントラ予測部31と動き予測・補償部32や予測画像・最適モード選択部33から符号化パラメータ情報が供給される。なお、符号化パラメータ情報には、イントラ予測であるかインター予測であるかを示す情報、マクロブロックサイズを示すマクロブロック情報、イントラ予測に関する情報、インター予測に関する情報等が含まれる。可逆符号化部16は、量子化データに対して例えば可変長符号化または算術符号化等により可逆符号化処理を行い、符号化ビットストリームを生成して蓄積バッファ17に出力する。また、可逆符号化部16は、符号化パラメータ情報を可逆符号化して、符号化ビットストリームの例えばヘッダ情報に付加する。なお、量子化部15や可逆符号化部16が、直交変換部14の出力データを処理して符号化ビットストリームを生成するデータ処理部に相当する。   The lossless encoding unit 16 is supplied with quantized data output from the quantization unit 15 and encoding parameter information from an intra prediction unit 31, a motion prediction / compensation unit 32, and a predicted image / optimum mode selection unit 33, which will be described later. Is done. The coding parameter information includes information indicating whether the prediction is intra prediction or inter prediction, macroblock information indicating the macroblock size, information regarding intra prediction, information regarding inter prediction, and the like. The lossless encoding unit 16 performs lossless encoding processing on the quantized data by, for example, variable length encoding or arithmetic encoding, generates an encoded bit stream, and outputs the encoded bit stream to the accumulation buffer 17. In addition, the lossless encoding unit 16 performs lossless encoding on the encoding parameter information and adds it to, for example, header information of the encoded bit stream. Note that the quantization unit 15 and the lossless encoding unit 16 correspond to a data processing unit that processes output data of the orthogonal transform unit 14 to generate an encoded bit stream.

蓄積バッファ17は、可逆符号化部16からの符号化ビットストリームを蓄積する。また、蓄積バッファ17は、蓄積した符号化ビットストリームを伝送路に応じた伝送速度で出力する。   The accumulation buffer 17 accumulates the encoded bit stream from the lossless encoding unit 16. The accumulation buffer 17 outputs the accumulated encoded bit stream at a transmission rate corresponding to the transmission path.

レート制御部18は、蓄積バッファ17の空き容量の監視を行い、空き容量に応じてレート制御信号を生成して量子化部15に出力する。レート制御部18は、例えば蓄積バッファ17から空き容量を示す情報を取得する。レート制御部18は空き容量が少なくなっているとき、レート制御信号によって量子化データのビットレートを低下させる。また、レート制御部18は蓄積バッファ17の空き容量が十分大きいとき、レート制御信号によって量子化データのビットレートを高くする。   The rate control unit 18 monitors the free capacity of the accumulation buffer 17, generates a rate control signal according to the free capacity, and outputs the rate control signal to the quantization unit 15. The rate control unit 18 acquires information indicating the free capacity from the accumulation buffer 17, for example. The rate control unit 18 reduces the bit rate of the quantized data by the rate control signal when the free space is low. In addition, when the free capacity of the storage buffer 17 is sufficiently large, the rate control unit 18 increases the bit rate of the quantized data by the rate control signal.

逆量子化部21は、量子化部15から供給された量子化データの逆量子化処理を行う。逆量子化部21は、逆量子化処理を行うことで得られた係数データを逆直交変換部22に出力する。   The inverse quantization unit 21 performs an inverse quantization process on the quantized data supplied from the quantization unit 15. The inverse quantization unit 21 outputs coefficient data obtained by performing the inverse quantization process to the inverse orthogonal transform unit 22.

逆直交変換部22は、逆量子化部21から供給された係数データの逆直交変換処理を行うことで得られたデータを加算部23に出力する。   The inverse orthogonal transform unit 22 outputs data obtained by performing an inverse orthogonal transform process on the coefficient data supplied from the inverse quantization unit 21 to the addition unit 23.

加算部23は、逆直交変換部22から供給されたデータと予測画像・最適モード選択部33から供給された予測画像データを加算して参照画像データを生成して、デブロッキングフィルタ24とイントラ予測部31に出力する。   The adding unit 23 adds the data supplied from the inverse orthogonal transform unit 22 and the predicted image data supplied from the predicted image / optimum mode selection unit 33 to generate reference image data, and the deblocking filter 24 and the intra prediction. To the unit 31.

デブロッキングフィルタ24は、画像の符号化時に生じるブロック歪みを減少させるためのフィルタ処理を行う。デブロッキングフィルタ24は、加算部23から供給された参照画像データからブロック歪みを除去するフィルタ処理を行い、フィルタ処理後の参照画像データをフレームメモリ27に出力する。   The deblocking filter 24 performs a filter process for reducing block distortion that occurs when an image is encoded. The deblocking filter 24 performs a filtering process to remove block distortion from the reference image data supplied from the adding unit 23, and outputs the filtered reference image data to the frame memory 27.

フレームメモリ27は、デブロッキングフィルタ24から供給されたフィルタ処理後の参照画像データとを保持する。   The frame memory 27 holds the filtered reference image data supplied from the deblocking filter 24.

イントラ予測部31は、画面並べ替えバッファ12から出力された符号化対象画像の画像データと加算部23から供給された参照画像データを用いて、イントラ予測処理を行う。イントラ予測部31は、直交変換における変換ブロックサイズ毎、およびイントラ予測の予測モード毎にイントラ予測処理を行う。イントラ予測部31は、生成した予測画像データを予測画像・最適モード選択部33に出力する。また、イントラ予測部31は、イントラ予測処理に関する符号化パラメータ情報を生成して、可逆符号化部16と予測画像・最適モード選択部33に出力する。イントラ予測部31は、符号化パラメータ情報に、例えばマクロブロックサイズや変換ブロックサイズ、マクロブロック内における変換ブロックの位置、予測モード等を含める。   The intra prediction unit 31 performs an intra prediction process using the image data of the encoding target image output from the screen rearrangement buffer 12 and the reference image data supplied from the addition unit 23. The intra prediction unit 31 performs an intra prediction process for each transform block size in orthogonal transform and for each prediction mode of intra prediction. The intra prediction unit 31 outputs the generated predicted image data to the predicted image / optimum mode selection unit 33. Further, the intra prediction unit 31 generates coding parameter information related to the intra prediction process, and outputs the coding parameter information to the lossless coding unit 16 and the predicted image / optimum mode selection unit 33. The intra prediction unit 31 includes, for example, the macro block size, the transform block size, the position of the transform block in the macro block, the prediction mode, and the like in the encoding parameter information.

また、イントラ予測部31は、各イントラ予測処理においてコスト関数値を算出して、算出したコスト関数値が最小となるイントラ予測処理、すなわち符号化効率が最も高くなる最適イントラ予測処理を選択する。イントラ予測部31は、最適イントラ予測処理における符号化パラメータ情報とコスト値と最適イントラ予測処理で生成した予測画像データを、予測画像・最適モード選択部33に出力する。   The intra prediction unit 31 calculates a cost function value in each intra prediction process, and selects an intra prediction process that minimizes the calculated cost function value, that is, an optimal intra prediction process that maximizes the coding efficiency. The intra prediction unit 31 outputs the encoding parameter information and the cost value in the optimal intra prediction process, and the predicted image data generated in the optimal intra prediction process to the predicted image / optimum mode selection unit 33.

動き予測・補償部32は、マクロブロックに対するすべての動き補償ブロックサイズでインター予測処理を行い、予測画像データを生成して予測画像・最適モード選択部33に出力する。動き予測・補償部32は、画面並べ替えバッファ12から読み出された符号化対象画像における各動き補償ブロックサイズの画像毎に、フレームメモリ27から読み出されたフィルタ処理後の参照画像データを用いて動きベクトルを検出する。さらに、動き予測・補償部32は、検出した動きベクトルに基づいて参照画像に動き補償処理を施して予測画像データの生成を行う。また、動き予測・補償部32は、インター予測処理に関する符号化パラメータ情報、例えばマクロブロックサイズや動き補償ブロックサイズ、動きベクトル等を示す符号化パラメータ情報を生成して、可逆符号化部16と予測画像・最適モード選択部33に出力する。   The motion prediction / compensation unit 32 performs inter prediction processing with all the motion compensation block sizes for the macroblock, generates predicted image data, and outputs the predicted image data to the predicted image / optimum mode selection unit 33. The motion prediction / compensation unit 32 uses the filtered reference image data read from the frame memory 27 for each image of each motion compensation block size in the encoding target image read from the screen rearrangement buffer 12. To detect a motion vector. Further, the motion prediction / compensation unit 32 performs motion compensation processing on the reference image based on the detected motion vector to generate predicted image data. In addition, the motion prediction / compensation unit 32 generates encoding parameter information related to inter prediction processing, for example, encoding parameter information indicating a macroblock size, a motion compensation block size, a motion vector, and the like, and performs prediction with the lossless encoding unit 16. Output to the image / optimum mode selection unit 33.

また、動き予測・補償部32は、各動き補償ブロックサイズに対してコスト関数値を算出して、算出したコスト関数値が最小となるインター予測処理、すなわち符号化効率が最も高くなるインター予測処理を選択する。動き予測・補償部32は、最適インター予測処理における符号化パラメータ情報とコスト値と最適インター予測処理で生成した予測画像データを予測画像・最適モード選択部33に出力する。   In addition, the motion prediction / compensation unit 32 calculates a cost function value for each motion compensation block size, and performs an inter prediction process in which the calculated cost function value is the minimum, that is, an inter prediction process in which the encoding efficiency is the highest. Select. The motion prediction / compensation unit 32 outputs the encoding parameter information and cost value in the optimal inter prediction process, and the predicted image data generated in the optimal inter prediction process to the predicted image / optimum mode selection unit 33.

予測画像・最適モード選択部33は、イントラ予測部31で変換ブロックサイズや予測モード毎にイントラ予測処理を行い最適イントラ予測処理を選択するとき、符号化パラメータ情報を直交変換部14と可逆符号化部16、予測画像データを減算部13に出力する。また、予測画像・最適モード選択部33は、動き予測・補償部32で予測ブロック毎にインター予測処理を行って最適インター予測処理を選択するとき、符号化パラメータ情報を直交変換部14と可逆符号化部16に出力し、予測画像データを減算部13に出力する。さらに、予測画像・最適モード選択部33は、最適イントラ予測処理と最適インター予測処理のいずれかを選択して最適モードとするとき、最適イントラ予測処理のコスト関数値と最適インター予測処理のコスト関数値を比較する。予測画像・最適モード選択部33は、比較結果に基づき、コスト関数値の小さい予測処理、すなわち符号化効率の高い予測処理を最適モードとして選択して、選択した最適モードで生成された予測画像データを減算部13出力する。また、予測画像・最適モード選択部33は、最適モードの予測処理を示す符号化パラメータ情報を直交変換部14と可逆符号化部16に出力する。   When the intra prediction unit 31 performs intra prediction processing for each transform block size or prediction mode and selects the optimal intra prediction processing, the predicted image / optimum mode selection unit 33 performs lossless encoding on the encoding parameter information with the orthogonal transform unit 14. Unit 16 outputs the predicted image data to the subtraction unit 13. When the motion prediction / compensation unit 32 performs inter prediction processing for each prediction block and selects the optimal inter prediction processing, the prediction image / optimum mode selection unit 33 converts the encoding parameter information into the orthogonal transform unit 14 and the lossless code. Output to the conversion unit 16, and output the predicted image data to the subtraction unit 13. Further, when the predicted image / optimum mode selection unit 33 selects either the optimal intra prediction process or the optimal inter prediction process to obtain the optimal mode, the cost function value of the optimal intra prediction process and the cost function of the optimal inter prediction process are selected. Compare values. The predicted image / optimum mode selection unit 33 selects a prediction process with a small cost function value, that is, a prediction process with high encoding efficiency, as the optimal mode based on the comparison result, and predicted image data generated in the selected optimal mode. Is output to the subtraction unit 13. Further, the predicted image / optimum mode selection unit 33 outputs encoding parameter information indicating the prediction process of the optimal mode to the orthogonal transform unit 14 and the lossless encoding unit 16.

<2.直交変換部の構成>
イントラ予測処理では、符号化済みの隣接ブロックの画素を用いて予測が行われており、複数の予測方向から最適な予測方向を選択することが行われている。例えば、H.264/AVCでは、16×16画素のブロックについての予測モードとして、予測モード0〜予測モード3の4つモードが設定されている。また、8×8画素のブロックについての予測モードとして、予測モード0〜予測モード8の9つの予測モードが設定されている。さらに、4×4画素のブロックについての予測モードとして、予測モード0〜予測モード8の9つの予測モードが設定されている。
<2. Configuration of orthogonal transform unit>
In the intra prediction process, prediction is performed using pixels of encoded adjacent blocks, and an optimal prediction direction is selected from a plurality of prediction directions. For example, H.M. In H.264 / AVC, four modes of prediction mode 0 to prediction mode 3 are set as prediction modes for a block of 16 × 16 pixels. In addition, nine prediction modes of prediction mode 0 to prediction mode 8 are set as prediction modes for an 8 × 8 pixel block. Further, nine prediction modes of prediction mode 0 to prediction mode 8 are set as prediction modes for a 4 × 4 pixel block.

図2は、例えば4×4画素のブロックについての予測モードを示している。以下、図2の各予測モードについて簡単に説明する。なお、図2において矢印は予測方向を示している。   FIG. 2 shows a prediction mode for a block of 4 × 4 pixels, for example. Hereinafter, each prediction mode in FIG. 2 will be briefly described. In FIG. 2, the arrow indicates the prediction direction.

図2の(A)は予測モード0(vertical)を示している。予測モード0は、垂直方向に隣接する参照画素(reference pixel)A〜Dをより予測値を生成するモードである。図2の(B)は予測モード1(horizontal)を示している。予測モード1は、矢印で示すように、水平方向に隣接する参照画素I〜Lより予測値を生成するモードである。図2の(C)は予測モード2(DC)を示している。予測モード2は、13個の参照画素A〜Mのうち、このブロックの垂直方向および水平方向に隣接する参照画素A〜DおよびI〜Lより予測値を生成するモードである。   FIG. 2A shows prediction mode 0 (vertical). The prediction mode 0 is a mode for generating more prediction values for reference pixels A to D adjacent in the vertical direction. FIG. 2B shows prediction mode 1 (horizontal). Prediction mode 1 is a mode in which a prediction value is generated from reference pixels I to L adjacent in the horizontal direction as indicated by arrows. FIG. 2C shows prediction mode 2 (DC). The prediction mode 2 is a mode in which a prediction value is generated from the reference pixels A to D and I to L adjacent in the vertical direction and the horizontal direction of the block among the 13 reference pixels A to M.

図2の(D)は予測モード3(diagonal down-left)を示している。予測モード3は、13個の参照画素A〜Mのうち、水平方向に連続する参照画素A〜Hより予測値を生成するモードである。図2の(E)は予測モード4(diagonal down-right)を示している。予測モード4は、13個の参照画素A〜Mのうち、当該ブロックに隣接する参照画素A〜D、I〜Mとにより予測値を生成するモードである。図2の(F)は予測モード5(vertical-right)を示している。予測モード5は、13個の参照画素A〜Mのうち、当該ブロックに隣接する参照画素A〜D、I〜Mとにより予測値を生成するモードである。   FIG. 2D shows prediction mode 3 (diagonal down-left). The prediction mode 3 is a mode in which a prediction value is generated from the reference pixels A to H that are continuous in the horizontal direction among the 13 reference pixels A to M. FIG. 2E shows a prediction mode 4 (diagonal down-right). The prediction mode 4 is a mode in which a prediction value is generated by the reference pixels A to D and I to M adjacent to the block among the 13 reference pixels A to M. FIG. 2F shows prediction mode 5 (vertical-right). The prediction mode 5 is a mode in which a prediction value is generated by the reference pixels A to D and I to M adjacent to the block among the 13 reference pixels A to M.

図2の(G)は予測モード6(horizontal-down)を示している。予測モード6は、予測モード4および予測モード5と同様に、13個の参照画素A〜Mのうち、当該ブロックに隣接する参照画素A〜D、I〜Mにより予測値を生成するモードである。図2の(H)は予測モード7(vertical-left)を示している。予測モード7は、13個の参照画素A〜Mのうち、当該ブロックの上方に隣接する4個の参照画素A〜Dと、この4個の参照画素A〜Dに続く4個の参照画素E〜Gとにより予測値を生成するモードである。図2の(I)は予測モード8(horizontal-up)を示している。予測モード8は、13個の参照画素A〜Mのうち、当該ブロックの左方に隣接する4個の参照画素I〜Lにより予測値を生成するモードである。   FIG. 2G shows prediction mode 6 (horizontal-down). The prediction mode 6 is a mode in which, as in the prediction modes 4 and 5, the prediction value is generated by the reference pixels A to D and I to M adjacent to the block among the 13 reference pixels A to M. . (H) of FIG. 2 has shown prediction mode 7 (vertical-left). In the prediction mode 7, among the 13 reference pixels A to M, four reference pixels A to D adjacent above the block, and four reference pixels E following the four reference pixels A to D are used. This is a mode for generating a predicted value by ~ G. (I) of FIG. 2 shows prediction mode 8 (horizontal-up). The prediction mode 8 is a mode in which a prediction value is generated by four reference pixels I to L adjacent to the left of the block among the 13 reference pixels A to M.

このように予測値を生成する場合、ブロック内の画素において、予測値との誤差(予測誤差)は予測に用いる画素に近い画素ほど少なくなる場合が多い。したがって、例えば、図3の(A)に示すように最適モードとして予測モード0(vertical)が選択された場合、画素P0〜P3は画素P12〜P15よりも予測誤差が少ない。また、図3の(B)に示すように予測モード1(horizontal)が選択された場合、画素P0,P4,P8,P12は画素P3,P7,P11,P15よりも予測誤差が少ない。また、図3の(C)に示すように予測モード4(diagonal down-right)が選択された場合、画素P0は画素P15よりも予測誤差が少ない。このように、予測誤差は予測モードに依存している。また、マクロブロック内のブロック位置についても、符号化済みの隣接マクロブロックに近いブロックほど予測誤差が少なくなる場合が多く、予測誤差はマクロブロックにおけるブロック位置にも依存する。したがって、直交変換部14は、予測モードおよびマクロブロック内の直交変換を行うブロックの位置毎に最適な基底を設定することで、予測誤差の直交変換を最適化する。   When a prediction value is generated in this way, an error from a prediction value (prediction error) among pixels in a block often decreases as a pixel closer to a pixel used for prediction. Therefore, for example, when the prediction mode 0 (vertical) is selected as the optimum mode as shown in FIG. 3A, the pixels P0 to P3 have fewer prediction errors than the pixels P12 to P15. Also, as shown in FIG. 3B, when the prediction mode 1 (horizontal) is selected, the pixels P0, P4, P8, and P12 have fewer prediction errors than the pixels P3, P7, P11, and P15. Also, as shown in FIG. 3C, when the prediction mode 4 (diagonal down-right) is selected, the pixel P0 has less prediction error than the pixel P15. Thus, the prediction error depends on the prediction mode. Also, with respect to block positions within a macroblock, the prediction error often decreases as the block is closer to the encoded adjacent macroblock, and the prediction error also depends on the block position in the macroblock. Therefore, the orthogonal transform unit 14 optimizes the orthogonal transform of the prediction error by setting an optimum base for each position of the block that performs the orthogonal transform in the prediction mode and the macroblock.

また、直交変換において、カルーネン・レーベ変換(以下「KL(Karhunen-Loeve)変換」という)は、変換後の係数が互いに無相関となるように変換する変換方式、すなわち最大の符号化効率を得ようとする最適な変換方式であることが知られている。しかし、KL変換の基底を知るためには、予測誤差に基づいた行列の生成や生成した行列の固有値に対応する固有ベクトルを算出しなければならない。ここで、画像符号化装置でその都度基底を計算すると、画像符号化装置における演算量が大きくなってしまう。また、計算した基底を符号化ビットストリームに付加すると符号化効率の悪化を招いてしまう。そこで、マクロブロック内の直交変換を行うブロック位置や予測モード毎に最適な基底を予め学習によって算出しておく。この算出した基底を画像符号化装置と画像復号化装置で用いるようにすれば、画像符号化装置と画像復号化装置で基底の算出を行う必要がなく、画像符号化装置と画像復号化装置の構成は、基底を算出する場合に比べて簡易となる。さらに、基底を伝送する必要がないので、KL変換を用いて符号化効率を高めることができるようになる。なお、基底の学習については後述する。   In the orthogonal transform, the Karoonen-Loeve transform (hereinafter referred to as “KL (Karhunen-Loeve) transform”) is a transform method that transforms the coefficients after the transform so as to be uncorrelated with each other, that is, obtains the maximum coding efficiency. It is known that this is the optimum conversion method. However, in order to know the basis of the KL transformation, it is necessary to generate a matrix based on the prediction error and to calculate an eigenvector corresponding to the eigenvalue of the generated matrix. Here, if the base is calculated each time by the image encoding device, the amount of calculation in the image encoding device becomes large. Moreover, if the calculated base is added to the encoded bitstream, the encoding efficiency is deteriorated. Therefore, an optimal base is calculated in advance for each block position and prediction mode for performing orthogonal transformation in the macroblock. If the calculated base is used in the image coding apparatus and the image decoding apparatus, it is not necessary to calculate the base in the image coding apparatus and the image decoding apparatus, and the image coding apparatus and the image decoding apparatus The configuration is simple compared to the case of calculating the base. Furthermore, since it is not necessary to transmit the base, it is possible to increase the coding efficiency using the KL transform. The basis learning will be described later.

イントラ予測では、マクロブロックが16×16画素であるとき、符号化対象画像のブロックサイズである変換ブロックサイズは、例えば16×16画素、8×8画素、4×4画素のいずれかのブロックサイズとされる。また、マクロブロックが8×8画素であるとき、変換ブロックサイズは、例えば8×8画素、4×4画素のいずれかのブロックサイズとされる。したがって、直交変換部14は、図4に示すように、マクロブロックが16×16画素であるとき、16×16画素、8×8画素、4×4画素のブロックサイズで予測モードに応じたKL変換を行うことができるように構成する。また、直交変換部14は、マクロブロックが8×8画素であるとき、8×8画素、4×4画素のブロックサイズで予測モードに応じたKL変換を行うことができるように構成する。さらに、直交変換部14は、マクロブロック内に複数の変換ブロックが設けられる場合、マクロブロック内のブロック位置locに応じたKL変換を行う。   In the intra prediction, when the macroblock is 16 × 16 pixels, the transform block size that is the block size of the encoding target image is, for example, any block size of 16 × 16 pixels, 8 × 8 pixels, or 4 × 4 pixels. It is said. In addition, when the macro block is 8 × 8 pixels, the conversion block size is, for example, any block size of 8 × 8 pixels and 4 × 4 pixels. Therefore, as shown in FIG. 4, when the macro block is 16 × 16 pixels, the orthogonal transform unit 14 has a block size of 16 × 16 pixels, 8 × 8 pixels, and 4 × 4 pixels according to the prediction mode. It is configured so that conversion can be performed. The orthogonal transform unit 14 is configured to perform KL transform according to the prediction mode with a block size of 8 × 8 pixels and 4 × 4 pixels when the macroblock is 8 × 8 pixels. Further, when a plurality of transform blocks are provided in the macro block, the orthogonal transform unit 14 performs KL transform corresponding to the block position loc in the macro block.

図5は、KL変換を用いた直交変換部14の構成を例示している。直交変換部14は、16×16KL変換部141、8×8KL変換部142、2×2KL変換部143,146、4×4KL変換部144,145、DCT部147、係数選択部148を有している。   FIG. 5 illustrates the configuration of the orthogonal transform unit 14 using KL transform. The orthogonal transform unit 14 includes a 16 × 16 KL transform unit 141, an 8 × 8KL transform unit 142, a 2 × 2KL transform unit 143, 146, a 4 × 4KL transform unit 144, 145, a DCT unit 147, and a coefficient selection unit 148. Yes.

16×16KL変換部141は、予測モード毎に予め学習されている最適な基底を用いて、16×16画素のブロック単位で予測誤差データのKL変換を行い、得られた係数を係数選択部148に出力する。   The 16 × 16 KL conversion unit 141 performs KL conversion of prediction error data in block units of 16 × 16 pixels using an optimal base learned in advance for each prediction mode, and the obtained coefficient is used as a coefficient selection unit 148. Output to.

8×8KL変換部142は、予測モードおよびマクロブロック内におけるブロック位置毎に予め学習されている最適な基底を用いて、8×8画素のブロック単位で予測誤差データのKL変換を行う。また、予測誤差データが16×16画素のブロックサイズに対応するデータであるとき、16×16画素のブロックには8×8画素のブロックが4個含まれる。したがって、8×8KL変換部142は、8×8画素の各ブロックにおける最も低い周波数成分の係数(以下「最低周波数成分係数」という)を2×2KL変換部143に出力し、他の係数を係数選択部148に出力する。また、8×8KL変換部142は、予測誤差データが8×8画素のブロックサイズに対応するデータであるとき、予測モード毎に予め学習されている最適な基底を用いて、8×8画素のブロック単位で予測誤差データのKL変換を行う。8×8KL変換部142は、KL変換によって得られた係数を係数選択部148に出力する。   The 8 × 8 KL conversion unit 142 performs KL conversion of prediction error data in units of blocks of 8 × 8 pixels, using an optimal base previously learned for each block position in the prediction mode and macroblock. When the prediction error data is data corresponding to a block size of 16 × 16 pixels, the block of 16 × 16 pixels includes four blocks of 8 × 8 pixels. Accordingly, the 8 × 8KL conversion unit 142 outputs the coefficient of the lowest frequency component in each block of 8 × 8 pixels (hereinafter referred to as “lowest frequency component coefficient”) to the 2 × 2 KL conversion unit 143 and uses the other coefficients as coefficients. The data is output to the selection unit 148. In addition, when the prediction error data is data corresponding to a block size of 8 × 8 pixels, the 8 × 8KL conversion unit 142 uses an optimal base learned in advance for each prediction mode, and uses 8 × 8 pixels. KL conversion of prediction error data is performed in block units. The 8 × 8 KL conversion unit 142 outputs the coefficient obtained by the KL conversion to the coefficient selection unit 148.

2×2KL変換部143は、予測モード毎に予め学習されている最適な基底を用いて、8×8KL変換部142から供給された2×2ブロック分の係数のKL変換を予測モードに対応する基底を用いて行い、得られた係数を係数選択部148に出力する。   The 2 × 2 KL conversion unit 143 uses the optimal base learned in advance for each prediction mode, and performs the KL conversion of the coefficients of 2 × 2 blocks supplied from the 8 × 8 KL conversion unit 142 to the prediction mode. The basis is used, and the obtained coefficient is output to the coefficient selection unit 148.

4×4KL変換部144は、予測モードおよびマクロブロック内におけるブロック位置毎に予め学習されている最適な基底を用いて、4×4画素のブロック単位で予測誤差データのKL変換を行う。また、予測誤差データが16×16画素のブロックサイズに対応するデータであるとき、16×16画素のブロックには4×4画素のブロックが16個含まれる。したがって、4×4KL変換部144は、4×4画素の各ブロックにおける最低周波数成分係数を4×4KL変換部145に出力し、他の係数を係数選択部148に出力する。また、予測誤差データが8×8画素のブロックサイズに対応するデータであるとき、8×8画素のブロックには4×4画素のブロックが4個含まれる。したがって、4×4KL変換部144は、4×4画素の各ブロックにおける最低周波数成分係数を2×2KL変換部146に出力し、他の係数を係数選択部148に出力する。   The 4 × 4 KL conversion unit 144 performs KL conversion of prediction error data in units of 4 × 4 pixel blocks, using an optimal base learned in advance for each block position in the prediction mode and macroblock. When the prediction error data is data corresponding to a block size of 16 × 16 pixels, the 16 × 16 pixel block includes 16 4 × 4 pixel blocks. Therefore, the 4 × 4KL conversion unit 144 outputs the lowest frequency component coefficient in each block of 4 × 4 pixels to the 4 × 4KL conversion unit 145 and outputs the other coefficients to the coefficient selection unit 148. When the prediction error data is data corresponding to a block size of 8 × 8 pixels, the block of 8 × 8 pixels includes four 4 × 4 pixel blocks. Therefore, the 4 × 4 KL conversion unit 144 outputs the lowest frequency component coefficient in each block of 4 × 4 pixels to the 2 × 2 KL conversion unit 146 and outputs the other coefficients to the coefficient selection unit 148.

4×4KL変換部145は、予測モード毎に予め学習されている最適な基底を用いて、4×4KL変換部144から供給された4×4ブロック分の最低周波数成分係数のブロックについてKL変換を、4×4KL変換部144から示された予測モードに対応する基底を用いて行う。4×4KL変換部145は、KL変換によって得られた係数を係数選択部148に出力する。   The 4 × 4 KL conversion unit 145 performs KL conversion on the block of the lowest frequency component coefficient for 4 × 4 blocks supplied from the 4 × 4 KL conversion unit 144 using the optimal base learned in advance for each prediction mode. This is performed using a base corresponding to the prediction mode indicated by the 4 × 4KL conversion unit 144. The 4 × 4 KL conversion unit 145 outputs the coefficient obtained by the KL conversion to the coefficient selection unit 148.

2×2KL変換部146は、予測モード毎に予め学習されている最適な基底を用いて、4×4KL変換部144から供給された2×2ブロック分の最低周波数成分係数のブロックについてKL変換を予測モードに対応する基底を用いて行う。2×2KL変換部146は、KL変換によって得られた係数を係数選択部148に出力する。   The 2 × 2 KL conversion unit 146 performs KL conversion on the block of the lowest frequency component coefficient for 2 × 2 blocks supplied from the 4 × 4 KL conversion unit 144 using the optimum base learned in advance for each prediction mode. This is done using the basis corresponding to the prediction mode. The 2 × 2 KL conversion unit 146 outputs the coefficient obtained by the KL conversion to the coefficient selection unit 148.

DCT部147は、予測誤差データの離散コサイン変換を行い、得られた係数を係数選択部148に出力する。   The DCT unit 147 performs discrete cosine transform on the prediction error data and outputs the obtained coefficient to the coefficient selection unit 148.

係数選択部148は、マクロブロックサイズと、変換ブロックサイズすなわち予測誤差データに対応するブロックサイズに応じて係数の選択を行う。係数選択部148は、マクロブロックサイズが16×16画素であるとき、16×16KL変換部141から出力された係数、8×8KL変換部142と2×2KL変換部143から出力された係数、4×4KL変換部144と4×4KL変換部145から出力された係数のいずれかを変換ブロックサイズに基づき選択する。係数選択部148は、選択した係数を量子化部15に出力する。   The coefficient selection unit 148 selects a coefficient according to the macroblock size and the block size corresponding to the transform block size, that is, the prediction error data. When the macro block size is 16 × 16 pixels, the coefficient selection unit 148 is the coefficient output from the 16 × 16 KL conversion unit 141, the coefficient output from the 8 × 8 KL conversion unit 142 and the 2 × 2 KL conversion unit 143, 4 One of the coefficients output from the × 4KL conversion unit 144 and the 4 × 4KL conversion unit 145 is selected based on the conversion block size. The coefficient selection unit 148 outputs the selected coefficient to the quantization unit 15.

また、係数選択部148は、マクロブロックサイズが8×8画素であるとき、8×8KL変換部142から出力された係数、4×4KL変換部144と2×2KL変換部146から出力された係数のいずれかを変換ブロックサイズに基づき選択する。係数選択部148は、選択した係数を量子化部15に出力する。なお、係数選択部148は、予測画像・最適モード選択部33から供給された符号化パラメータ情報によってインター予測モードであることが示されたとき、DCT部147から出力された係数を量子化部15に出力する。   In addition, when the macro block size is 8 × 8 pixels, the coefficient selection unit 148 is a coefficient output from the 8 × 8KL conversion unit 142, and a coefficient output from the 4 × 4KL conversion unit 144 and the 2 × 2KL conversion unit 146. Is selected based on the transform block size. The coefficient selection unit 148 outputs the selected coefficient to the quantization unit 15. Note that the coefficient selection unit 148, when the encoding parameter information supplied from the predicted image / optimum mode selection unit 33 indicates the inter prediction mode, the coefficient output from the DCT unit 147 is quantized by the quantization unit 15 Output to.

<3.画像符号化装置の動作>
次に、画像符号化処理動作について説明する。図6は、画像符号化処理動作を示すフローチャートである。ステップST11において、A/D変換部11は入力された画像信号をA/D変換する。
<3. Operation of Image Encoding Device>
Next, the image encoding processing operation will be described. FIG. 6 is a flowchart showing the image encoding processing operation. In step ST11, the A / D converter 11 performs A / D conversion on the input image signal.

ステップST12において画面並べ替えバッファ12は、画像並べ替えを行う。画面並べ替えバッファ12は、A/D変換部11より供給された画像データを記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。   In step ST12, the screen rearrangement buffer 12 performs image rearrangement. The screen rearrangement buffer 12 stores the image data supplied from the A / D conversion unit 11, and rearranges from the display order of each picture to the encoding order.

ステップST13において減算部13は、予測誤差データの生成を行う。減算部13は、ステップST12で並び替えられた画像の画像データと予測画像・最適モード選択部33で選択された予測画像データとの差分を算出して予測誤差データを生成する。予測誤差データは、元の画像データに比べてデータ量が小さい。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。   In step ST13, the subtraction unit 13 generates prediction error data. The subtraction unit 13 calculates a difference between the image data of the images rearranged in step ST12 and the predicted image data selected by the predicted image / optimum mode selection unit 33, and generates prediction error data. The prediction error data has a smaller data amount than the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.

ステップST14において直交変換部14は、直交変換処理を行う。直交変換部14は、減算部13から供給された予測誤差データを直交変換する。直交変換部14は、例えば予測誤差データに対してカルーネン・レーベ変換や離散コサイン変換等の直交変換を行い、係数データを出力する。なお、直交変換部14の動作の詳細については後述する。   In step ST14, the orthogonal transform unit 14 performs an orthogonal transform process. The orthogonal transformation unit 14 performs orthogonal transformation on the prediction error data supplied from the subtraction unit 13. For example, the orthogonal transform unit 14 performs orthogonal transform such as Karhunen-Loeve transform or discrete cosine transform on the prediction error data, and outputs coefficient data. Details of the operation of the orthogonal transform unit 14 will be described later.

ステップST15において量子化部15は、量子化処理を行う。量子化部15は、係数データを量子化する。量子化に際しては、後述するステップST26の処理で説明されるように、レート制御が行われる。   In step ST15, the quantization unit 15 performs a quantization process. The quantization unit 15 quantizes the coefficient data. At the time of quantization, rate control is performed as described in the process of step ST26 described later.

ステップST16において逆量子化部21は、逆量子化処理を行う。逆量子化部21は、量子化部15により量子化された係数データを量子化部15の特性に対応する特性で逆量子化する。   In step ST16, the inverse quantization unit 21 performs an inverse quantization process. The inverse quantization unit 21 inversely quantizes the coefficient data quantized by the quantization unit 15 with characteristics corresponding to the characteristics of the quantization unit 15.

ステップST17において逆直交変換部22は、逆直交変換処理を行う。逆直交変換部22は、逆量子化部21により逆量子化された係数データを直交変換部14の特性に対応する特性で逆直交変換する。   In step ST17, the inverse orthogonal transform unit 22 performs an inverse orthogonal transform process. The inverse orthogonal transform unit 22 performs inverse orthogonal transform on the coefficient data inversely quantized by the inverse quantization unit 21 with characteristics corresponding to the characteristics of the orthogonal transform unit 14.

ステップST18において加算部23は、参照画像データの生成を行う。加算部23は、予測画像・最適モード選択部33から供給された予測画像データと、この予測画像データと対応するブロック位置の逆直交変換後のデータを加算して、参照画像データを生成する。   In step ST18, the adding unit 23 generates reference image data. The adder 23 adds the predicted image data supplied from the predicted image / optimum mode selection unit 33 and the data after inverse orthogonal transformation of the block position corresponding to the predicted image data to generate reference image data.

ステップST19においてデブロッキングフィルタ24は、フィルタ処理を行う。デブロッキングフィルタ24は、加算部23より出力された参照画像データをフィルタリングしてブロック歪みを除去する。   In step ST19, the deblocking filter 24 performs a filter process. The deblocking filter 24 filters the reference image data output from the addition unit 23 to remove block distortion.

ステップST20においてフレームメモリ27は、参照画像データを記憶する。フレームメモリ27は、フィルタ処理後の参照画像データを記憶する。   In step ST20, the frame memory 27 stores reference image data. The frame memory 27 stores the reference image data after the filter processing.

ステップST21においてイントラ予測部31と動き予測・補償部32は、それぞれ予測処理を行う。すなわち、イントラ予測部31は、イントラ予測モードのイントラ予測処理を行い、動き予測・補償部32は、インター予測モードの動き予測・補償処理を行う。予測処理の詳細は、図7を参照して後述するが、この処理により、候補となるすべての予測モードで予測処理がそれぞれ行われ、候補となるすべての予測モードでコスト関数値がそれぞれ算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測処理と最適インター予測処理が選択され、選択された予測処理で生成された予測画像データとそのコスト関数および符号化パラメータ情報が予測画像・最適モード選択部33に供給される。   In step ST21, the intra prediction unit 31 and the motion prediction / compensation unit 32 each perform a prediction process. That is, the intra prediction unit 31 performs intra prediction processing in the intra prediction mode, and the motion prediction / compensation unit 32 performs motion prediction / compensation processing in the inter prediction mode. The details of the prediction process will be described later with reference to FIG. 7. With this process, the prediction process is performed in all candidate prediction modes, and the cost function values are calculated in all candidate prediction modes. The Then, based on the calculated cost function value, the optimal intra prediction process and the optimal inter prediction process are selected, and the predicted image data generated by the selected prediction process and its cost function and coding parameter information are predicted image The optimum mode selection unit 33 is supplied.

ステップST22において予測画像・最適モード選択部33は、予測画像データの選択を行う。予測画像・最適モード選択部33は、イントラ予測部31および動き予測・補償部32より出力された各コスト関数値に基づいて、符号化効率が最良となる最適モードを決定する。また、予測画像・最適モード選択部33は、決定した最適モードの予測画像データを選択して、減算部13と加算部23に供給する。この予測画像データは、上述したように、ステップST13,ST18の演算に利用される。   In step ST22, the predicted image / optimum mode selection unit 33 selects predicted image data. The predicted image / optimum mode selection unit 33 determines the optimal mode with the best coding efficiency based on the cost function values output from the intra prediction unit 31 and the motion prediction / compensation unit 32. Further, the predicted image / optimum mode selection unit 33 selects the predicted image data of the determined optimal mode and supplies it to the subtraction unit 13 and the addition unit 23. As described above, the predicted image data is used for the calculations in steps ST13 and ST18.

ステップST23において予測画像・最適モード選択部33は、符号化パラメータ情報生成処理を行う。予測画像・最適モード選択部33は、選択した予測画像データに関する符号化パラメータ情報を最適モードの符号化パラメータ情報として直交変換部14と可逆符号化部16に出力する。   In step ST23, the predicted image / optimum mode selection unit 33 performs an encoding parameter information generation process. The prediction image / optimum mode selection unit 33 outputs the encoding parameter information regarding the selected prediction image data to the orthogonal transform unit 14 and the lossless encoding unit 16 as the encoding parameter information of the optimal mode.

ステップST24において可逆符号化部16は、可逆符号化処理を行う。可逆符号化部16は、量子化部15より出力された量子化データを可逆符号化する。すなわち、量子化データに対して可変長符号化や算術符号化等の可逆符号化が行われて、データ圧縮される。このとき、上述したステップST23において可逆符号化部16に供給された符号化パラメータ情報等も可逆符号化される。さらに、量子化データを可逆符号化して生成された符号化ビットストリームのヘッダ情報に、符号化パラメータ情報等の可逆符号化データが付加される。   In step ST24, the lossless encoding unit 16 performs a lossless encoding process. The lossless encoding unit 16 performs lossless encoding on the quantized data output from the quantization unit 15. That is, lossless encoding such as variable length encoding or arithmetic encoding is performed on the quantized data, and the data is compressed. At this time, the encoding parameter information supplied to the lossless encoding unit 16 in step ST23 described above is also losslessly encoded. Further, lossless encoded data such as encoding parameter information is added to the header information of the encoded bitstream generated by lossless encoding of the quantized data.

ステップST25において蓄積バッファ17は、蓄積処理を行う。蓄積バッファ17は、可逆符号化部16から出力される符号化ビットストリームを蓄積する。この蓄積バッファ17に蓄積された符号化ビットストリームは、適宜読み出されて伝送路を介して復号側に伝送される。   In step ST25, the accumulation buffer 17 performs an accumulation process. The accumulation buffer 17 accumulates the encoded bit stream output from the lossless encoding unit 16. The encoded bit stream stored in the storage buffer 17 is appropriately read and transmitted to the decoding side via the transmission path.

ステップST26においてレート制御部18は、レート制御を行う。レート制御部18は、蓄積バッファ17で符号化ビットストリームを蓄積するとき、オーバーフローまたはアンダーフローが蓄積バッファ17で発生しないように、量子化部15の量子化動作のレートを制御する。   In step ST26, the rate control unit 18 performs rate control. The rate control unit 18 controls the rate of the quantization operation of the quantization unit 15 so that overflow or underflow does not occur in the accumulation buffer 17 when the encoded bit stream is accumulated in the accumulation buffer 17.

次に、図7のフローチャートを参照して、図6のステップST21における予測処理を説明する。   Next, the prediction process in step ST21 in FIG. 6 will be described with reference to the flowchart in FIG.

ステップST31において、イントラ予測部31はイントラ予測処理を行う。イントラ予測部31は処理対象のブロックの画像を、候補となるすべての予測モードでイントラ予測処理する。なお、イントラ予測処理では、加算部23から供給された参照画像データが用いられる。イントラ予測は、後述するように各予測モードでイントラ予測処理が行われて、各予測モードにおけるコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、符号化効率が最も高いイントラ予測処理が選択される。   In step ST31, the intra prediction unit 31 performs an intra prediction process. The intra prediction unit 31 performs an intra prediction process on the image of the block to be processed in all candidate prediction modes. In the intra prediction process, the reference image data supplied from the adding unit 23 is used. Intra prediction, as will be described later, intra prediction processing is performed in each prediction mode, and a cost function value in each prediction mode is calculated. Then, based on the calculated cost function value, the intra prediction process with the highest coding efficiency is selected.

ステップST32において、動き予測・補償部32はインター予測を行う。動き予測・補償部32は、フレームメモリ27に記憶されているフィルタ処理後の参照画像データを用いて、各動き補償ブロックサイズでインター予測処理を行う。インター予測では、各動き補償ブロックサイズでインター予測処理が行われて、各予測ブロックにおけるコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、符号化効率が最も高いインター予測処理が選択される。   In step ST32, the motion prediction / compensation unit 32 performs inter prediction. The motion prediction / compensation unit 32 uses the reference image data after filter processing stored in the frame memory 27 to perform inter prediction processing with each motion compensation block size. In inter prediction, inter prediction processing is performed with each motion compensation block size, and a cost function value in each prediction block is calculated. Then, based on the calculated cost function value, the inter prediction process with the highest coding efficiency is selected.

次に、図7のステップST31におけるイントラ予測処理について図8のフローチャートを参照して説明する。   Next, the intra prediction process in step ST31 in FIG. 7 will be described with reference to the flowchart in FIG.

ステップST41でイントラ予測部31は、各予測モードおよび変換ブロックサイズで仮にイントラ予測処理を行う。イントラ予測部31は、各予測モードおよび変換ブロックサイズで、仮に加算部23から供給された参照画像データを用いて予測画像データの生成と、予測誤差データの生成から可逆符号化までの処理を行う。なお、イントラ予測部31は、各イントラ予測処理において、イントラ予測処理に関する符号化パラメータ情報を直交変換部14と可逆符号化部16に出力する。   In step ST41, the intra prediction unit 31 temporarily performs an intra prediction process with each prediction mode and transform block size. The intra prediction unit 31 performs processing from generation of prediction image data and generation of prediction error data to lossless encoding using reference image data supplied from the addition unit 23 in each prediction mode and transform block size. . Note that the intra prediction unit 31 outputs coding parameter information related to the intra prediction process to the orthogonal transform unit 14 and the lossless encoding unit 16 in each intra prediction process.

ステップST42でイントラ予測部31は、各予測モードと各変換ブロックサイズに対するコスト関数値を算出する。コスト関数値としては、H.264/AVC方式における参照ソフトウェアであるJM(Joint Model)で定められているように、High Complexity モードか、Low Complexity モードのいずれかの手法に基づいて行う。   In step ST42, the intra prediction unit 31 calculates a cost function value for each prediction mode and each transform block size. The cost function value is H.264. As defined by JM (Joint Model), which is reference software in the H.264 / AVC format, this is performed based on either the High Complexity mode or the Low Complexity mode.

すなわち、High Complexity モードにおいては、ステップST41の処理として、各予測モードおよび変換ブロックサイズに対して、仮に可逆符号化処理までを行い、次の式(1)で表されるコスト関数値を各予測モードおよび変換ブロックサイズに対して算出する。
Cost(Mode∈Ω)=D+λ・R ・・・(1)
That is, in the High Complexity mode, as the process of step ST41, the process up to the lossless encoding process is performed for each prediction mode and transform block size, and the cost function value represented by the following equation (1) is calculated for each prediction. Calculate for mode and transform block size.
Cost (Mode∈Ω) = D + λ · R (1)

Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードと変換ブロックサイズの全体集合を示している。Dは、予測モードおよび変換ブロックサイズで符号化を行った場合の参照画像と入力画像との差分エネルギー(歪み)を示している。Rは、直交変換係数や符号化パラメータ情報等を含んだ発生符号量、λは、量子化パラメータQPの関数として与えられるラグランジュ乗数である。   Ω indicates the entire set of prediction modes and transform block sizes that are candidates for encoding the block or macroblock. D indicates the difference energy (distortion) between the reference image and the input image when encoding is performed in the prediction mode and the transform block size. R is a generated code amount including orthogonal transform coefficients and coding parameter information, and λ is a Lagrange multiplier given as a function of the quantization parameter QP.

つまり、High Complexity Modeでの符号化を行うには、上記パラメータDおよびRを算出するため、候補となるすべての予測モードおよび変換ブロックサイズにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。   That is, in order to perform encoding in High Complexity Mode, in order to calculate the parameters D and R, it is necessary to perform temporary encoding processing once with all candidate prediction modes and transform block sizes. Computation amount is required.

一方、Low Complexity モードにおいては、ステップST41の処理として、候補となるすべての予測モードおよび変換ブロックサイズに対して、予測画像の生成、および、符号化パラメータ情報などのヘッダビットまでを算出し、次の式(2)で表されるコスト関数値を各予測モードに対して算出する。
Cost(Mode∈Ω)=D+QPtoQuant(QP)・Header_Bit ・・・(2)
On the other hand, in the Low Complexity mode, as a process of Step ST41, for all prediction modes and transform block sizes that are candidates, prediction image generation and header bits such as encoding parameter information are calculated. The cost function value represented by the equation (2) is calculated for each prediction mode.
Cost (Mode∈Ω) = D + QPtoQuant (QP) · Header_Bit (2)

Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードと変換ブロックサイズの全体集合を示している。Dは、予測モードと変換ブロックサイズで符号化を行った場合の参照画像と入力画像との差分エネルギー(歪み)を示している。Header_Bitは、予測モードと変換ブロックサイズに対するヘッダビット、QPtoQuantは、量子化パラメータQPの関数として与えられる関数である。   Ω indicates the entire set of prediction modes and transform block sizes that are candidates for encoding the block or macroblock. D indicates the difference energy (distortion) between the reference image and the input image when encoding is performed in the prediction mode and the transform block size. Header_Bit is a header bit for the prediction mode and transform block size, and QPtoQuant is a function given as a function of the quantization parameter QP.

すなわち、Low Complexity Modeにおいては、それぞれの予測モードおよび変換ブロックサイズに関して、予測処理を行う必要があるが、復号化画像までは必要ないため、High Complexity Modeより低い演算量での実現が可能である。   That is, in Low Complexity Mode, it is necessary to perform prediction processing for each prediction mode and transform block size, but since it is not necessary to obtain a decoded image, it is possible to realize with a calculation amount lower than that in High Complexity Mode. .

ステップST43でイントラ予測部31は、最適イントラ予測処理を決定する。イントラ予測部31は、ステップST42において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つのイントラ予測処理を選択して最適イントラ予測処理に決定する。   In step ST43, the intra prediction unit 31 determines an optimal intra prediction process. Based on the cost function value calculated in step ST42, the intra prediction unit 31 selects one intra prediction process whose cost function value is the minimum value, and determines the optimum intra prediction process.

次に、図9のフローチャートを参照して、図7のステップST32のインター予測処理について説明する。   Next, the inter prediction process in step ST32 in FIG. 7 will be described with reference to the flowchart in FIG.

ステップST51で動き予測・補償部32は、各動き補償ブロックサイズで仮にインター予測処理を行う。動き予測・補償部32は、各動き補償ブロックサイズで、仮に符号化処理対象ブロックの画像データと参照画像データを用いて動き予測を行う。動き予測・補償部32は、検出した動きベクトル基づき参照画像データの動き補償を行い予測画像データの生成等を行う。なお、動き予測・補償部32は、各インター予測処理において、インター予測処理に関する符号化パラメータ情報を直交変換部14と可逆符号化部16に出力する。   In step ST51, the motion prediction / compensation unit 32 temporarily performs inter prediction processing with each motion compensation block size. The motion prediction / compensation unit 32 performs motion prediction using the image data and reference image data of the block to be encoded at each motion compensation block size. The motion prediction / compensation unit 32 performs motion compensation of the reference image data based on the detected motion vector, and generates predicted image data. Note that the motion prediction / compensation unit 32 outputs the encoding parameter information related to the inter prediction process to the orthogonal transform unit 14 and the lossless encoding unit 16 in each inter prediction process.

ステップST52で動き予測・補償部32は、各動き補償ブロックサイズに対するコスト関数値の算出を行う。動き予測・補償部32は、上述した式(1)または式(2)を用いてコスト関数値の算出を行う。コスト関数値の算出では、符号化パラメータ情報等を含めた発生符号量を用いる。なお、インター予測モードに対するコスト関数値の算出には、H.264/AVC方式において定められているSkip ModeおよびDirect Modeのコスト関数値の評価も含まれる。   In step ST52, the motion prediction / compensation unit 32 calculates a cost function value for each motion compensation block size. The motion prediction / compensation unit 32 calculates the cost function value using the above-described equation (1) or equation (2). In calculating the cost function value, a generated code amount including coding parameter information and the like is used. Note that the cost function value for the inter prediction mode is calculated using the H.264 standard. Evaluation of Skip Mode and Direct Mode cost function values defined in the H.264 / AVC format is also included.

ステップST53で動き予測・補償部32は、最適インター予測処理を決定する。動き予測・補償部32は、ステップST54において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つのインター予測処理を選択して最適インター予測処理に決定する。   In step ST53, the motion prediction / compensation unit 32 determines an optimal inter prediction process. Based on the cost function value calculated in step ST54, the motion prediction / compensation unit 32 selects one inter prediction process having the minimum cost function value from them, and determines the optimum inter prediction process. .

次に、図10のフローチャートを参照して、図6におけるステップST23の符号化パラメータ情報生成処理について、イントラ予測処理の場合を説明する。符号化パラメータ情報は、上述のようにイントラ予測部31で生成する。また、予測画像・最適モード選択部33で最適モードを選択したとき、選択した予測処理に応じた符号化パラメータ情報を予測画像・最適モード選択部33で生成するようにしてもよい。   Next, with reference to the flowchart of FIG. 10, the case of an intra prediction process is demonstrated about the encoding parameter information generation process of step ST23 in FIG. The encoding parameter information is generated by the intra prediction unit 31 as described above. Further, when the optimum mode is selected by the predicted image / optimum mode selection unit 33, the prediction image / optimum mode selection unit 33 may generate encoding parameter information corresponding to the selected prediction process.

ステップST61でイントラ予測部31は、マクロブロックサイズが16×16画素であるか否かを判別する。イントラ予測部31は、マクロブロックサイズが16×16画素であるときステップST62に進み、16×16画素でないときステップST63に進む。   In step ST61, the intra prediction unit 31 determines whether or not the macroblock size is 16 × 16 pixels. The intra prediction unit 31 proceeds to step ST62 when the macroblock size is 16 × 16 pixels, and proceeds to step ST63 when the macroblock size is not 16 × 16 pixels.

ステップST62でイントラ予測部31は、16×16画素における変換ブロックサイズ情報を設定してステップST65に進む。イントラ予測部31は、例えば直交変換部14でKL変換を行うときの変換ブロックサイズを4×4画素とするとき、変換ブロックサイズを示す変換ブロックサイズ情報を「0」に設定する。また、イントラ予測部31は、直交変換部14でKL変換を行うときの変換ブロックサイズを8×8画素とするとき、変換ブロックサイズ情報を「1」、16×16画素とするとき「2」に設定する。   In step ST62, the intra prediction unit 31 sets transform block size information for 16 × 16 pixels, and proceeds to step ST65. For example, when the transform block size when the KL transform is performed by the orthogonal transform unit 14 is 4 × 4 pixels, the intra prediction unit 31 sets transform block size information indicating the transform block size to “0”. The intra prediction unit 31 sets the transform block size when the orthogonal transform unit 14 performs KL transform to 8 × 8 pixels, sets the transform block size information to “1”, and sets the transform block size information to “2”. Set to.

ステップST63でイントラ予測部31は、マクロブロックサイズが8×8画素であるか否か判別する。イントラ予測部31は、マクロブロックサイズが8×8画素であるときステップST64に進み、8×8画素でないときステップST65に進む。   In step ST63, the intra prediction unit 31 determines whether or not the macroblock size is 8 × 8 pixels. The intra prediction unit 31 proceeds to step ST64 when the macroblock size is 8 × 8 pixels, and proceeds to step ST65 when the macroblock size is not 8 × 8 pixels.

ステップST64でイントラ予測部31は、8×8画素における変換ブロックサイズ情報を設定してステップST65に進む。イントラ予測部31は、例えば直交変換部14でKL変換を行うときの変換ブロックサイズを4×4画素とするとき、変換ブロックサイズ情報を「0」に設定する。また、イントラ予測部31は、直交変換部14でKL変換を行うときの変換ブロックサイズを8×8画素とするとき、変換ブロックサイズ情報を「1」とする。   In step ST64, the intra prediction unit 31 sets transform block size information for 8 × 8 pixels, and proceeds to step ST65. For example, when the transform block size when the KL transform is performed by the orthogonal transform unit 14 is 4 × 4 pixels, the intra prediction unit 31 sets transform block size information to “0”. The intra prediction unit 31 sets the transform block size information to “1” when the transform block size when the orthogonal transform unit 14 performs the KL transform is 8 × 8 pixels.

ステップST65でイントラ予測部31は、符号化パラメータ情報を生成する。イントラ予測部31は、イントラ予測であることを示す情報、マクロブロックサイズ、変換ブロックサイズ情報、予測モード、マクロブロック内のブロック位置等を用いて符号化パラメータ情報を構成する。   In step ST65, the intra prediction unit 31 generates encoding parameter information. The intra prediction unit 31 configures encoding parameter information using information indicating that the prediction is intra prediction, macroblock size, transformed block size information, prediction mode, block position in the macroblock, and the like.

次に、図11のフローチャートを参照して、直交変換処理について説明する。ステップST71で直交変換部14は、イントラ予測であるか否か判別する。直交変換部14は、符号化パラメータ情報でイントラ予測であることが示されているときステップST72に進み、イントラ予測であることが示されていないときステップST81に進む。   Next, orthogonal transform processing will be described with reference to the flowchart of FIG. In step ST71, the orthogonal transform unit 14 determines whether or not intra prediction is performed. The orthogonal transform unit 14 proceeds to step ST72 when the encoding parameter information indicates that it is intra prediction, and proceeds to step ST81 when it is not indicated that it is intra prediction.

ステップST72で直交変換部14は、マクロブロックサイズが16×16画素であるか否か判別する。直交変換部14は、符号化パラメータ情報でマクロブロックサイズが16×16画素であることを示しているときステップST73に進み、16×16画素であることを示していないとき、すなわち8×8画素であるときステップST78に進む。   In step ST72, the orthogonal transform unit 14 determines whether or not the macroblock size is 16 × 16 pixels. The orthogonal transform unit 14 proceeds to step ST73 when the encoding parameter information indicates that the macroblock size is 16 × 16 pixels, and does not indicate that it is 16 × 16 pixels, that is, 8 × 8 pixels. If so, the process proceeds to step ST78.

ステップST73で直交変換部14は、変換ブロックサイズが4×4画素であるか否か判別する。直交変換部14は、符号化パラメータ情報で変換ブロックサイズが4×4画素であることを示しているときステップST74に進み、4×4画素であることを示していないときステップST75に進む。   In step ST73, the orthogonal transform unit 14 determines whether the transform block size is 4 × 4 pixels. The orthogonal transform unit 14 proceeds to step ST74 when the coding parameter information indicates that the transform block size is 4 × 4 pixels, and proceeds to step ST75 when it does not indicate that it is 4 × 4 pixels.

ステップST74で直交変換部14は、4×4直交変換処理を行う。直交変換部14は、予測モードとブロック位置に応じて予め学習されている基底を用いて4×4画素のブロック毎にKL変換を行う。ここで、16×16画素のブロックには、4×4画素のブロックが16個含まれることから16回のKL変換を行う。さらに、直交変換部14は、4×4画素のブロックについてKL変換を行って得られた係数から、最低周波数成分係数を選択して、選択した4×4の係数に対して予測モードに応じた基底を用いてKL変換を行う。直交変換部14は、最低周波数成分係数に対してKL変換を行って得られた係数と、最低周波数成分係数を除いた他の係数を量子化部15に出力する。すなわち、図5に示す直交変換部14の係数選択部148は、4×4KL変換部144,146から出力される係数を選択して量子化部15に出力する。   In step ST74, the orthogonal transform unit 14 performs 4 × 4 orthogonal transform processing. The orthogonal transform unit 14 performs KL transform for each block of 4 × 4 pixels using a base learned in advance according to the prediction mode and the block position. Here, since the 16 × 16 pixel block includes 16 4 × 4 pixel blocks, KL conversion is performed 16 times. Further, the orthogonal transform unit 14 selects the lowest frequency component coefficient from the coefficients obtained by performing the KL transform on the 4 × 4 pixel block, and according to the prediction mode for the selected 4 × 4 coefficient. KL conversion is performed using the basis. The orthogonal transform unit 14 outputs the coefficient obtained by performing the KL transform on the lowest frequency component coefficient and other coefficients excluding the lowest frequency component coefficient to the quantization unit 15. That is, the coefficient selection unit 148 of the orthogonal transform unit 14 illustrated in FIG. 5 selects the coefficients output from the 4 × 4KL transform units 144 and 146 and outputs the selected coefficients to the quantization unit 15.

ステップST75で直交変換部14は、変換ブロックサイズが8×8画素であるか否か判別する。直交変換部14は、符号化パラメータ情報で変換ブロックサイズが8×8画素であることを示しているときステップST76に進み、8×8画素であることを示していないときステップST77に進む。   In step ST75, the orthogonal transform unit 14 determines whether the transform block size is 8 × 8 pixels. The orthogonal transform unit 14 proceeds to step ST76 when the coding parameter information indicates that the transform block size is 8 × 8 pixels, and proceeds to step ST77 when it does not indicate that it is 8 × 8 pixels.

ステップST76で直交変換部14は、8×8直交変換処理を行う。直交変換部14は、予測モードとブロック位置に応じて予め学習されている基底を用いて8×8画素のブロック毎にKL変換を行う。ここで、16×16画素のブロックには、8×8画素のブロックが4個含まれることから4回のKL変換を行う。さらに、直交変換部14は、8×8画素のブロックについてKL変換を行って得られた係数から、最低周波数成分係数を選択して、選択した2×2の係数に対して予測モードに応じた基底を用いてKL変換を行う。直交変換部14は、最低周波数成分係数に対してKL変換を行って得られた係数と、最低周波数成分係数を除いた他の係数を量子化部15に出力する。すなわち、図5に示す直交変換部14の係数選択部148は、8×8KL変換部142と2×2KL変換部143から出力される係数を選択して量子化部15に出力する。   In step ST76, the orthogonal transform unit 14 performs 8 × 8 orthogonal transform processing. The orthogonal transform unit 14 performs KL transform for each block of 8 × 8 pixels using a base learned in advance according to the prediction mode and the block position. Here, since a block of 16 × 16 pixels includes four blocks of 8 × 8 pixels, KL conversion is performed four times. Further, the orthogonal transform unit 14 selects the lowest frequency component coefficient from the coefficients obtained by performing the KL transform on the 8 × 8 pixel block, and according to the prediction mode for the selected 2 × 2 coefficient. KL conversion is performed using the basis. The orthogonal transform unit 14 outputs the coefficient obtained by performing the KL transform on the lowest frequency component coefficient and other coefficients excluding the lowest frequency component coefficient to the quantization unit 15. That is, the coefficient selection unit 148 of the orthogonal transformation unit 14 illustrated in FIG. 5 selects the coefficients output from the 8 × 8 KL conversion unit 142 and the 2 × 2 KL conversion unit 143 and outputs the selected coefficients to the quantization unit 15.

ステップST77で直交変換部14は、16×16直交変換処理を行う。直交変換部14は、予測モードに応じて予め学習されている基底を用いて16×16画素のブロックのKL変換を行い、得られた係数を量子化部15に出力する。すなわち、図5に示す直交変換部14の係数選択部148は、16×16KL変換部141から出力される係数を選択して量子化部15に出力する。   In step ST77, the orthogonal transform unit 14 performs 16 × 16 orthogonal transform processing. The orthogonal transform unit 14 performs KL transform of a block of 16 × 16 pixels using a base learned in advance according to the prediction mode, and outputs the obtained coefficient to the quantization unit 15. That is, the coefficient selection unit 148 of the orthogonal transformation unit 14 illustrated in FIG. 5 selects the coefficient output from the 16 × 16 KL conversion unit 141 and outputs the selected coefficient to the quantization unit 15.

ステップST72からステップST78に進むと、直交変換部14は、変換ブロックサイズが4×4画素であるか否か判別する。直交変換部14は、符号化パラメータ情報で変換ブロックサイズが4×4画素であることを示しているときステップST79に進み、4×4画素であることを示していないときステップST80に進む。   When proceeding from step ST72 to step ST78, the orthogonal transform unit 14 determines whether or not the transform block size is 4 × 4 pixels. The orthogonal transform unit 14 proceeds to step ST79 when the coding parameter information indicates that the transform block size is 4 × 4 pixels, and proceeds to step ST80 when it does not indicate that it is 4 × 4 pixels.

ステップST79で直交変換部14は、4×4直交変換処理を行う。直交変換部14は、予測モードとブロック位置に応じて予め学習されている基底を用いて4×4画素のブロック毎にKL変換を行う。ここで、8×8画素のブロックには、4×4画素のブロックが4個含まれることから4回のKL変換を行う。さらに、4×4画素のブロックについてKL変換を行って得られた係数から、最低周波数成分係数を選択して、選択した2×2の係数に対して予測モードに応じた基底を用いてKL変換を行う。直交変換部14は、最低周波数成分係数に対してKL変換を行って得られた係数と、最低周波数成分係数を除いた他の係数を量子化部15に出力する。すなわち、図5に示す直交変換部14の係数選択部148は、4×4KL変換部144と2×2KL変換部146から出力される係数を選択して量子化部15に出力する。   In step ST79, the orthogonal transform unit 14 performs 4 × 4 orthogonal transform processing. The orthogonal transform unit 14 performs KL transform for each block of 4 × 4 pixels using a base learned in advance according to the prediction mode and the block position. Here, since an 8 × 8 pixel block includes four 4 × 4 pixel blocks, KL conversion is performed four times. Further, the lowest frequency component coefficient is selected from the coefficients obtained by performing the KL conversion on the 4 × 4 pixel block, and the KL conversion is performed on the selected 2 × 2 coefficient using the basis corresponding to the prediction mode. I do. The orthogonal transform unit 14 outputs the coefficient obtained by performing the KL transform on the lowest frequency component coefficient and other coefficients excluding the lowest frequency component coefficient to the quantization unit 15. That is, the coefficient selection unit 148 of the orthogonal transform unit 14 illustrated in FIG. 5 selects the coefficients output from the 4 × 4KL conversion unit 144 and the 2 × 2KL conversion unit 146 and outputs the selected coefficients to the quantization unit 15.

ステップST80で直交変換部14は、8×8画素のブロック単位で直交変換を行う。直交変換部14は、予測モードに応じて予め学習されている基底を用いて8×8画素のブロックのKL変換を行い、得られた係数を量子化部15に出力する。すなわち、図5に示す直交変換部14の係数選択部148は、8×8KL変換部142から出力される係数を選択して量子化部15に出力する。   In step ST80, the orthogonal transform unit 14 performs orthogonal transform in units of 8 × 8 pixel blocks. The orthogonal transform unit 14 performs KL transform of an 8 × 8 pixel block using a base learned in advance according to the prediction mode, and outputs the obtained coefficient to the quantization unit 15. That is, the coefficient selection unit 148 of the orthogonal transformation unit 14 illustrated in FIG. 5 selects the coefficient output from the 8 × 8 KL conversion unit 142 and outputs the selected coefficient to the quantization unit 15.

ステップST81で直交変換部14は、離散コサイン変換(DCT)を行う。直交変換部14は、離散コサイン変換を行って得られた係数を量子化部15に出力する。すなわち、図5に示す直交変換部14の係数選択部148は、DCT部147から出力される係数を選択して量子化部15に出力する。   In step ST81, the orthogonal transform unit 14 performs discrete cosine transform (DCT). The orthogonal transform unit 14 outputs the coefficient obtained by performing the discrete cosine transform to the quantization unit 15. That is, the coefficient selection unit 148 of the orthogonal transform unit 14 illustrated in FIG. 5 selects the coefficient output from the DCT unit 147 and outputs the selected coefficient to the quantization unit 15.

図12は、直交変換動作を説明するための図であり、マクロブロックサイズが図12の(A)に示すように16×16画素であり、変換ブロックサイズが4×4画素であると、図12の(B)に示すように、マクロブロック内には16個の変換ブロックが含まれる。なお、ブロック内の数字はブロック位置locを示している。直交変換部14の4×4KL変換部144は、各変換ブロックについて、各ブロックの予測モードとブロック位置に対して最適化された基底を用いてKL変換を行い、図12の(C)に示すようにブロック毎の係数を生成する。さらに、4×4KL変換部145は、各ブロックにおける最低周波数成分係数(斜線で示す)を用いて、図12の(D)に示すように4×4のブロックを構成する。4×4KL変換部145は、このブロックに対して、予測モードに応じて最適化された基底を用いてKL変換を行い、図12の(E)に示すようにブロック毎の係数を生成する。直交変換部14は図12の(E)に示す係数と、図12の(C)における最低周波数成分係数を除いた他の係数を量子化部15に出力する。   FIG. 12 is a diagram for explaining the orthogonal transform operation. When the macroblock size is 16 × 16 pixels as shown in FIG. 12A, the transform block size is 4 × 4 pixels. As shown in FIG. 12B, the 16 macroblocks are included in the macroblock. The number in the block indicates the block position loc. The 4 × 4 KL transform unit 144 of the orthogonal transform unit 14 performs KL transform on each transform block using a base optimized for the prediction mode and block position of each block, and is shown in FIG. Thus, a coefficient for each block is generated. Further, the 4 × 4 KL conversion unit 145 forms a 4 × 4 block as shown in FIG. 12D using the lowest frequency component coefficient (indicated by hatching) in each block. The 4 × 4 KL conversion unit 145 performs KL conversion on the block using a base optimized in accordance with the prediction mode, and generates a coefficient for each block as illustrated in FIG. The orthogonal transform unit 14 outputs the coefficient shown in (E) of FIG. 12 and other coefficients excluding the lowest frequency component coefficient in (C) of FIG. 12 to the quantization unit 15.

マクロブロックサイズが図12の(F)に示すように8×8画素であり、変換ブロックサイズが4×4画素であると、図12の(G)に示すように、マクロブロック内には4個の変換ブロックが含まれる。なお、ブロック内の数字はブロック位置locを示している。直交変換部14の4×4KL変換部144は、各変換ブロックについて、各ブロックの予測モードとブロック位置に対して最適化された基底を用いてKL変換を行い、図12の(H)に示すようにブロック毎の係数を生成する。さらに、2×2KL変換部146は、各ブロックにおける最低周波数成分係数(斜線で示す)を用いて、図12の(I)に示すように2×2のブロックを構成する。2×2KL変換部146は、このブロックに対して、予測モードに応じて最適化された基底を用いてKL変換を行い、図12の(J)に示すようにブロック毎の係数を生成する。直交変換部14は図12の(J)に示す係数と、図12の(H)における最低周波数成分係数を除いた他の係数を量子化部15に出力する。   When the macroblock size is 8 × 8 pixels as shown in FIG. 12F and the transform block size is 4 × 4 pixels, 4 macroblocks are included in the macroblock as shown in FIG. Contains transformation blocks. The number in the block indicates the block position loc. The 4 × 4 KL transform unit 144 of the orthogonal transform unit 14 performs KL transform on each transform block using a base optimized for the prediction mode and block position of each block, and is shown in FIG. Thus, a coefficient for each block is generated. Further, the 2 × 2 KL conversion unit 146 forms a 2 × 2 block as shown in (I) of FIG. 12 using the lowest frequency component coefficient (indicated by hatching) in each block. The 2 × 2 KL conversion unit 146 performs KL conversion on the block using a base optimized in accordance with the prediction mode, and generates a coefficient for each block as illustrated in FIG. The orthogonal transform unit 14 outputs the coefficient shown in (J) of FIG. 12 and other coefficients excluding the lowest frequency component coefficient in (H) of FIG.

このように、本願発明の画像符号化装置および方法によれば、画像データの符号化時に行われる直交変換において、マクロブロック内における変換ブロックのブロック位置に応じて予め設定されている基底を用いて直交変換が行われる。したがって、ブロック位置に応じて最適化した変換を行うことが可能となり、符号化効率を改善することができる。また、ブロック位置だけでなく予測モードに応じて予め設定されている基底を用いて直交変換を行うことで、さらに最適化した直交変換を行うことが可能となり、さらに符号化効率を改善することができる。また、符号化効率を改善することで、例えば符号化ビットストリームのデータ量を増やさなくとも画質を改善できる。   As described above, according to the image coding apparatus and method of the present invention, in the orthogonal transform performed at the time of image data coding, a base set in advance according to the block position of the transform block in the macro block is used. Orthogonal transformation is performed. Therefore, it is possible to perform the conversion optimized according to the block position, and the encoding efficiency can be improved. Furthermore, by performing orthogonal transformation using a base set in advance according to not only the block position but also the prediction mode, it is possible to perform further optimized orthogonal transformation and further improve the coding efficiency. it can. Further, by improving the encoding efficiency, for example, the image quality can be improved without increasing the data amount of the encoded bit stream.

<4.画像復号化装置の構成>
入力画像を符号化して生成された符号化ビットストリームは、所定の伝送路や記録媒体等を介して画像復号化装置に供給されて復号される。
<4. Configuration of Image Decoding Device>
An encoded bit stream generated by encoding an input image is supplied to an image decoding apparatus via a predetermined transmission path, a recording medium, or the like and decoded.

図13は、画像復号化装置の構成を示している。画像復号化装置50は、蓄積バッファ51、可逆復号化部52、逆量子化部53、逆直交変換部54、加算部55、デブロッキングフィルタ56、画面並べ替えバッファ57、ディジタル/アナログ変換部(D/A変換部)58を備えている。さらに、画像復号化装置50は、フレームメモリ61、イントラ予測部62、動き補償部63、セレクタ64を備えている。   FIG. 13 shows the configuration of the image decoding apparatus. The image decoding device 50 includes a storage buffer 51, a lossless decoding unit 52, an inverse quantization unit 53, an inverse orthogonal transform unit 54, an addition unit 55, a deblocking filter 56, a screen rearrangement buffer 57, a digital / analog conversion unit ( D / A converter 58). Furthermore, the image decoding device 50 includes a frame memory 61, an intra prediction unit 62, a motion compensation unit 63, and a selector 64.

蓄積バッファ51は、伝送されてきた符号化ビットストリームを蓄積する。可逆復号化部52は、蓄積バッファ51より供給された符号化ビットストリームを、図1の可逆符号化部16の符号化方式に対応する方式で復号化する。   The accumulation buffer 51 accumulates the transmitted encoded bit stream. The lossless decoding unit 52 decodes the encoded bit stream supplied from the accumulation buffer 51 by a method corresponding to the encoding method of the lossless encoding unit 16 of FIG.

可逆復号化部52は、符号化ビットストリームのヘッダ情報を復号して得られた符号化パラメータ情報をイントラ予測部62や動き補償部63、デブロッキングフィルタ56に出力する。また、可逆復号化部52は、復号化対象のブロックと復号化済みの隣接ブロックの動きベクトルを用いて予測動きベクトルの候補を設定する。可逆復号化部52は、符号化ビットストリームを可逆復号化して得られた予測動きベクトル選択情報に基づき、予測動きベクトルの候補から動きベクトルを選択して、選択した動きベクトルを予測動きベクトルとする。また、可逆復号化部52は、符号化ビットストリームを可逆復号化して得られた差分動きベクトルに予測動きベクトルを加算して復号化対象のブロックの動きベクトルを算出して、動き補償部63に出力する。   The lossless decoding unit 52 outputs the encoding parameter information obtained by decoding the header information of the encoded bitstream to the intra prediction unit 62, the motion compensation unit 63, and the deblocking filter 56. Further, the lossless decoding unit 52 sets prediction motion vector candidates using the motion vectors of the decoding target block and the decoded adjacent block. The lossless decoding unit 52 selects a motion vector from prediction motion vector candidates based on prediction motion vector selection information obtained by lossless decoding of the encoded bitstream, and uses the selected motion vector as a prediction motion vector. . Further, the lossless decoding unit 52 adds the predicted motion vector to the difference motion vector obtained by lossless decoding of the encoded bitstream to calculate the motion vector of the block to be decoded, and the motion compensation unit 63 Output.

逆量子化部53は、可逆復号化部52で復号された量子化データを、図1の量子化部15の量子化方式に対応する方式で逆量子化する。逆直交変換部54は、図1の直交変換部14の直交変換方式に対応する方式で逆量子化部53の出力を逆直交変換して加算部55に出力する。   The inverse quantization unit 53 inversely quantizes the quantized data decoded by the lossless decoding unit 52 by a method corresponding to the quantization method of the quantization unit 15 of FIG. The inverse orthogonal transform unit 54 performs inverse orthogonal transform on the output of the inverse quantization unit 53 by a method corresponding to the orthogonal transform method of the orthogonal transform unit 14 of FIG.

加算部55は、逆直交変換後のデータとセレクタ64から供給される予測画像データを加算して復号画像データを生成してデブロッキングフィルタ56とイントラ予測部62に出力する。   The adding unit 55 adds the data after inverse orthogonal transformation and the predicted image data supplied from the selector 64 to generate decoded image data, and outputs the decoded image data to the deblocking filter 56 and the intra prediction unit 62.

デブロッキングフィルタ56は、加算部55から供給された復号画像データに対してフィルタ処理を行い、ブロック歪みを除去してからフレームメモリ61に供給し蓄積させるとともに、画面並べ替えバッファ57に出力する。   The deblocking filter 56 performs a filtering process on the decoded image data supplied from the adding unit 55, removes block distortion, supplies the frame memory 61 for accumulation, and outputs the frame memory 61 to the screen rearrangement buffer 57.

画面並べ替えバッファ57は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ12により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられて、D/A変換部58に出力される。   The screen rearrangement buffer 57 rearranges images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 12 in FIG. 1 is rearranged in the original display order and output to the D / A conversion unit 58.

D/A変換部58は、画面並べ替えバッファ57から供給された画像データをD/A変換し、図示せぬディスプレイに出力することで画像を表示させる。   The D / A conversion unit 58 performs D / A conversion on the image data supplied from the screen rearrangement buffer 57 and outputs it to a display (not shown) to display an image.

フレームメモリ61は、デブロッキングフィルタ24から供給されたフィルタ処理後の復号画像データとを保持する。   The frame memory 61 holds the decoded image data after the filtering process supplied from the deblocking filter 24.

イントラ予測部62は、可逆復号化部52から供給された符号化パラメータ情報に基づいて予測画像の生成を行い、生成した予測画像データをセレクタ64に出力する。   The intra prediction unit 62 generates a predicted image based on the encoding parameter information supplied from the lossless decoding unit 52, and outputs the generated predicted image data to the selector 64.

動き補償部63は、可逆復号化部52から供給された符号化パラメータ情報や動きベクトルに基づいて動き補償を行い、予測画像データを生成してセレクタ64に出力する。すなわち、動き補償部63は、可逆復号化部52から供給された動きベクトルおよび参照フレーム情報に基づいて、参照フレーム情報で示された参照画像に対して、動きベクトルに基づき動き補償を行い、動き補償ブロックサイズの予測画像データを生成する。   The motion compensation unit 63 performs motion compensation based on the encoding parameter information and the motion vector supplied from the lossless decoding unit 52, generates predicted image data, and outputs the prediction image data to the selector 64. That is, the motion compensation unit 63 performs motion compensation on the basis of the motion vector for the reference image indicated by the reference frame information based on the motion vector and the reference frame information supplied from the lossless decoding unit 52, Prediction image data having a compensation block size is generated.

セレクタ64は、イントラ予測部62で生成された予測画像データを加算部55に供給する。また、セレクタ64は、動き補償部63で生成された予測画像データを加算部55に供給する。   The selector 64 supplies the predicted image data generated by the intra prediction unit 62 to the adding unit 55. Further, the selector 64 supplies the predicted image data generated by the motion compensation unit 63 to the addition unit 55.

<5.逆直交変換部の構成>
図14は、逆直交変換部54の構成を示している。逆直交変換部54は、16×16KL逆変換部541、2×2KL逆変換部542,545、8×8KL逆変換部543、4×4KL逆変換部544,546、IDCT部547およびデータ選択部548を有している。
<5. Configuration of Inverse Orthogonal Transformer>
FIG. 14 shows the configuration of the inverse orthogonal transform unit 54. The inverse orthogonal transform unit 54 includes a 16 × 16KL inverse transform unit 541, a 2 × 2KL inverse transform unit 542, 545, an 8 × 8KL inverse transform unit 543, a 4 × 4KL inverse transform unit 544, 546, an IDCT unit 547, and a data selection unit. 548.

16×16KL逆変換部541は、図5に示す16×16KL変換部141で行われたKL変換に対応するKL逆変換を行う。16×16KL逆変換部541は、可逆復号化部52から供給された最適モードの符号化パラメータ情報が示す予測モード(最適予測モード)に応じた基底を用いて、逆量子化部53から出力された逆量子化後データのKL逆変換を行う。16×16KL逆変換部541は、KL逆変換を行うことにより得られた画像データをデータ選択部548に出力する。   The 16 × 16 KL inverse conversion unit 541 performs KL inverse conversion corresponding to the KL conversion performed by the 16 × 16 KL conversion unit 141 illustrated in FIG. 5. The 16 × 16KL inverse transform unit 541 is output from the inverse quantization unit 53 using a basis corresponding to the prediction mode (optimum prediction mode) indicated by the coding parameter information of the optimum mode supplied from the lossless decoding unit 52. KL inverse transformation of the dequantized data is performed. The 16 × 16 KL inverse transform unit 541 outputs the image data obtained by performing the KL inverse transform to the data selection unit 548.

2×2KL逆変換部542は、図5に示す2×2KL変換部143で行われたKL変換に対応するKL逆変換を行う。2×2KL逆変換部542は、最適モードの符号化パラメータ情報が示す予測モードに応じた基底を用いて、逆量子化部53から出力された逆量子化後データのKL逆変換を行う。2×2KL逆変換部542は、KL逆変換を行うことにより得られた最低周波数成分係数を8×8KL逆変換部543に出力する。   The 2 × 2 KL inverse conversion unit 542 performs KL inverse conversion corresponding to the KL conversion performed by the 2 × 2 KL conversion unit 143 illustrated in FIG. 5. The 2 × 2 KL inverse transform unit 542 performs KL inverse transform of the dequantized data output from the inverse quantization unit 53 using a basis corresponding to the prediction mode indicated by the coding parameter information of the optimal mode. The 2 × 2 KL inverse transform unit 542 outputs the lowest frequency component coefficient obtained by performing the KL inverse transform to the 8 × 8 KL inverse transform unit 543.

8×8KL逆変換部543は、図5に示す8×8KL変換部143で行われたKL変換に対応するKL逆変換を行う。8×8KL逆変換部543は、可逆復号化部52から供給された最適モードの符号化パラメータ情報に基づいてKL逆変換を行う。例えば、8×8KL逆変換部543は、マクロブロックサイズが16×16画素であるとき、最適モードの符号化パラメータ情報が示す予測モードとブロック位置に応じた基底を用いて、2×2KL逆変換部542から出力された最低周波数成分係数と逆量子化部53から出力された逆量子化後データとのKL逆変換を行う。8×8KL逆変換部543は、KL逆変換を行うことにより得られた画像データをデータ選択部548に出力する。また、8×8KL逆変換部543は、マクロブロックサイズが8×8画素であるとき、予測モードとブロック位置に応じた基底を用いて、逆量子化部53から出力された逆量子化後データのKL逆変換を行い、得られた画像データをデータ選択部548に出力する。   The 8 × 8KL reverse conversion unit 543 performs KL reverse conversion corresponding to the KL conversion performed by the 8 × 8KL conversion unit 143 illustrated in FIG. 5. The 8 × 8 KL inverse transform unit 543 performs KL inverse transform based on the coding parameter information of the optimal mode supplied from the lossless decoding unit 52. For example, when the macro block size is 16 × 16 pixels, the 8 × 8 KL inverse transform unit 543 uses the prediction mode indicated by the coding parameter information of the optimal mode and the basis corresponding to the block position to perform the 2 × 2 KL inverse transform. The KL inverse transform between the lowest frequency component coefficient output from the unit 542 and the post-inverse quantization data output from the inverse quantization unit 53 is performed. The 8 × 8 KL inverse transform unit 543 outputs the image data obtained by performing the KL inverse transform to the data selection unit 548. Further, the 8 × 8KL inverse transform unit 543 uses the basis corresponding to the prediction mode and the block position when the macroblock size is 8 × 8 pixels, and the dequantized data output from the inverse quantization unit 53 KL inverse transform is performed, and the obtained image data is output to the data selection unit 548.

4×4KL逆変換部544は、図5に示す4×4KL変換部145で行われたKL変換に対応するKL逆変換を行う。4×4KL逆変換部544は、最適モードの符号化パラメータ情報が示す予測モードに応じた基底を用いて、逆量子化部53から出力された逆量子化後データのKL逆変換を行う。4×4KL逆変換部544は、KL逆変換を行うことにより得られた最低周波数成分係数を4×4KL逆変換部546に出力する。   The 4 × 4KL inverse conversion unit 544 performs KL inverse conversion corresponding to the KL conversion performed by the 4 × 4KL conversion unit 145 illustrated in FIG. The 4 × 4KL inverse transform unit 544 performs KL inverse transform on the dequantized data output from the inverse quantization unit 53 using a basis corresponding to the prediction mode indicated by the coding parameter information of the optimal mode. The 4 × 4KL inverse transform unit 544 outputs the lowest frequency component coefficient obtained by performing the KL inverse transform to the 4 × 4KL inverse transform unit 546.

2×2KL逆変換部545は、図5に示す2×2KL変換部146で行われたKL変換に対応するKL逆変換を行う。2×2KL逆変換部545は、最適モードの符号化パラメータ情報が示す予測モードに応じた基底を用いて、逆量子化部53から出力された逆量子化後データのKL逆変換を行う。2×2KL逆変換部545は、KL逆変換を行うことにより得られた最低周波数成分係数を4×4KL逆変換部546に出力する。   The 2 × 2 KL inverse conversion unit 545 performs KL inverse conversion corresponding to the KL conversion performed by the 2 × 2 KL conversion unit 146 illustrated in FIG. 5. The 2 × 2 KL inverse transform unit 545 performs KL inverse transform on the dequantized data output from the inverse quantization unit 53 using a basis corresponding to the prediction mode indicated by the coding parameter information of the optimal mode. The 2 × 2 KL inverse transform unit 545 outputs the lowest frequency component coefficient obtained by performing the KL inverse transform to the 4 × 4 KL inverse transform unit 546.

4×4KL逆変換部546は、図5に示す4×4KL変換部144で行われたKL変換に対応するKL逆変換を行う。4×4KL逆変換部546は、可逆復号化部52から供給された最適モードの符号化パラメータ情報に基づいてKL逆変換を行う。例えば、4×4KL逆変換部546は、マクロブロックサイズが16×16画素であるとき、最適モードの符号化パラメータ情報が示す予測モードとブロック位置に応じた基底を用いて、4×4KL逆変換部544から出力された最低周波数成分係数と逆量子化部53から出力された逆量子化後データとのKL逆変換を行う。4×4KL逆変換部546は、KL逆変換を行うことにより得られた画像データをデータ選択部548に出力する。また、4×4KL逆変換部546は、マクロブロックサイズが8×8画素であるとき、予測モードとブロック位置に応じた基底を用いて、2×2KL逆変換部545から出力された最低周波数成分係数と逆量子化部53から出力された逆量子化後データとのKL逆変換を行う。4×4KL逆変換部546は、KL逆変換を行うことにより得られた画像データをデータ選択部548に出力する。   The 4 × 4KL inverse conversion unit 546 performs KL inverse conversion corresponding to the KL conversion performed by the 4 × 4KL conversion unit 144 illustrated in FIG. 5. The 4 × 4KL inverse transform unit 546 performs KL inverse transform based on the coding parameter information of the optimal mode supplied from the lossless decoding unit 52. For example, when the macro block size is 16 × 16 pixels, the 4 × 4 KL inverse transform unit 546 uses the prediction mode indicated by the coding parameter information of the optimal mode and the basis corresponding to the block position to perform the 4 × 4 KL inverse transform. The KL inverse transform between the lowest frequency component coefficient output from the unit 544 and the dequantized data output from the inverse quantization unit 53 is performed. The 4 × 4 KL inverse transform unit 546 outputs the image data obtained by performing the KL inverse transform to the data selection unit 548. In addition, when the macro block size is 8 × 8 pixels, the 4 × 4 KL inverse transform unit 546 uses the base corresponding to the prediction mode and the block position, and the lowest frequency component output from the 2 × 2 KL inverse transform unit 545. KL inverse transform is performed between the coefficient and the data after inverse quantization output from the inverse quantization unit 53. The 4 × 4 KL inverse transform unit 546 outputs the image data obtained by performing the KL inverse transform to the data selection unit 548.

IDCT部547は、逆量子化部53から出力された逆量子化後データを用いて、逆離散コサイン変換を行い、得られた画像データをデータ選択部548に出力する。   The IDCT unit 547 performs inverse discrete cosine transform using the dequantized data output from the inverse quantization unit 53 and outputs the obtained image data to the data selection unit 548.

データ選択部548は、符号化パラメータ情報に基づいて、16×16KL逆変換部541、8×8KL逆変換部543、4×4KL逆変換部546、IDCT部547から出力された画像データの選択を行う。データ選択部548は、選択した画像データを予測誤差データとして加算部55に出力する。   The data selection unit 548 selects the image data output from the 16 × 16KL inverse transform unit 541, the 8 × 8KL inverse transform unit 543, the 4 × 4KL inverse transform unit 546, and the IDCT unit 547 based on the encoding parameter information. Do. The data selection unit 548 outputs the selected image data to the addition unit 55 as prediction error data.

<6.画像復号化装置の動作>
次に、図15のフローチャートを参照して、画像復号化装置50で行われる画像復号処理動作について説明する。
<6. Operation of Image Decoding Device>
Next, the image decoding processing operation performed by the image decoding device 50 will be described with reference to the flowchart of FIG.

ステップST91で蓄積バッファ51は、伝送されてきた符号化ビットストリームを蓄積する。ステップST92で可逆復号化部52は、可逆復号化処理を行う。可逆復号化部52は、蓄積バッファ51から供給される符号化ビットストリームを復号化する。すなわち、図1の可逆符号化部16により符号化された各ピクチャの量子化データが得られる。また、可逆復号化部52、符号化ビットストリームのヘッダ情報に含まれている符号化パラメータ情報の可逆復号化を行い、得られた符号化パラメータ情報をデブロッキングフィルタ56やセレクタ64に供給する。さらに、可逆復号化部52は、符号化パラメータ情報がイントラ予測モードに関する情報である場合、符号化パラメータ情報をイントラ予測部62に出力する。また、可逆復号化部52は、符号化パラメータ情報がインター予測モードに関する情報である場合、符号化パラメータ情報を動き補償部63に出力する。   In step ST91, the accumulation buffer 51 accumulates the transmitted encoded bit stream. In step ST92, the lossless decoding unit 52 performs lossless decoding processing. The lossless decoding unit 52 decodes the encoded bit stream supplied from the accumulation buffer 51. That is, quantized data of each picture encoded by the lossless encoding unit 16 in FIG. 1 is obtained. In addition, the lossless decoding unit 52 performs lossless decoding of the encoding parameter information included in the header information of the encoded bitstream, and supplies the obtained encoding parameter information to the deblocking filter 56 and the selector 64. Furthermore, the lossless decoding unit 52 outputs the encoding parameter information to the intra prediction unit 62 when the encoding parameter information is information related to the intra prediction mode. Also, the lossless decoding unit 52 outputs the encoding parameter information to the motion compensation unit 63 when the encoding parameter information is information related to the inter prediction mode.

ステップST93において逆量子化部53は、逆量子化処理を行う。逆量子化部53は、可逆復号化部52により復号された量子化データを、図1の量子化部15の特性に対応する特性で逆量子化する。   In step ST93, the inverse quantization unit 53 performs an inverse quantization process. The inverse quantization unit 53 inversely quantizes the quantized data decoded by the lossless decoding unit 52 with characteristics corresponding to the characteristics of the quantization unit 15 in FIG.

ステップST94において逆直交変換部54は、逆直交変換処理を行う。逆直交変換部54は、逆量子化部53からの逆量子化後データに対して、図1の直交変換部14の直交変換に対応する逆直交変換を行う。   In step ST94, the inverse orthogonal transform unit 54 performs an inverse orthogonal transform process. The inverse orthogonal transform unit 54 performs inverse orthogonal transform corresponding to the orthogonal transform of the orthogonal transform unit 14 of FIG. 1 on the data after inverse quantization from the inverse quantization unit 53.

ステップST95において加算部55は、復号画像データの生成を行う。加算部55は、逆直交変換処理を行うことにより得られた予測誤差データと、後述するステップST99で選択された予測画像データを加算して復号画像データを生成する。これにより元の画像が復号される。   In step ST95, the adding unit 55 generates decoded image data. The adder 55 adds the prediction error data obtained by performing the inverse orthogonal transform process and the prediction image data selected in step ST99 described later to generate decoded image data. As a result, the original image is decoded.

ステップST96においてデブロッキングフィルタ56は、フィルタ処理を行う。デブロッキングフィルタ56は、加算部55より出力された復号画像データのフィルタ処理を行い、復号画像に含まれているブロック歪みを除去する。   In step ST96, the deblocking filter 56 performs a filtering process. The deblocking filter 56 performs a filtering process on the decoded image data output from the adding unit 55 to remove block distortion included in the decoded image.

ステップST97においてフレームメモリ61は、復号画像データの記憶処理を行う。   In step ST97, the frame memory 61 performs storage processing of decoded image data.

ステップST98においてイントラ予測部62と動き補償部63は、予測処理を行う。イントラ予測部62と動き補償部63は、可逆復号化部52から供給される符号化パラメータ情報に対応してそれぞれ予測処理を行う。   In step ST98, the intra prediction unit 62 and the motion compensation unit 63 perform prediction processing. The intra prediction unit 62 and the motion compensation unit 63 perform prediction processing corresponding to the encoding parameter information supplied from the lossless decoding unit 52, respectively.

すなわち、可逆復号化部52から供給された符号化パラメータ情報がイントラ予測であることを示している場合、イントラ予測部62は、符号化パラメータ情報に基づいてイントラ予測処理を行い、予測画像データを生成する。また、可逆復号化部52から供給された符号化パラメータ情報がインター予測であることを示している場合、動き補償部63は、符号化パラメータ情報に基づき動き補償を行い、予測画像データを生成する。   That is, when the encoding parameter information supplied from the lossless decoding unit 52 indicates intra prediction, the intra prediction unit 62 performs intra prediction processing based on the encoding parameter information, and obtains predicted image data. Generate. Also, when the encoding parameter information supplied from the lossless decoding unit 52 indicates inter prediction, the motion compensation unit 63 performs motion compensation based on the encoding parameter information and generates predicted image data. .

ステップST99において、セレクタ64は予測画像データの選択を行う。すなわち、セレクタ64は、イントラ予測部62から供給された予測画像データと動き補償部63で生成された予測画像データを選択して加算部55に供給して、上述したように、ステップST95において逆直交変換部54の出力と加算させる。   In step ST99, the selector 64 selects predicted image data. That is, the selector 64 selects the prediction image data supplied from the intra prediction unit 62 and the prediction image data generated by the motion compensation unit 63 and supplies the selection image data to the addition unit 55. As described above, the selector 64 performs the reverse operation in step ST95. It is added to the output of the orthogonal transformation unit 54.

ステップST100において画面並べ替えバッファ57は、画像並べ替えを行う。すなわち画面並べ替えバッファ57は、図1の画像符号化装置10の画面並べ替えバッファ12により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。   In step ST100, the screen rearrangement buffer 57 performs image rearrangement. That is, the screen rearrangement buffer 57 rearranges the order of frames rearranged for encoding by the screen rearrangement buffer 12 of the image encoding device 10 of FIG. 1 to the original display order.

ステップST101において、D/A変換部58は、画面並べ替えバッファ57からの画像データをD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。   In step ST101, the D / A converter 58 D / A converts the image data from the screen rearrangement buffer 57. This image is output to a display (not shown), and the image is displayed.

次に、逆直交変換処理について、図16に示すフローチャートを用いて説明する。ステップST111で逆直交変換部54は、イントラ予測であるか否か判別する。逆直交変換部54は、例えば可逆復号化部52で符号化ビットストリームから取り出された符号化パラメータ情報に基づき復号化を行うブロックがイントラ予測であるか否か判別する。逆直交変換部54は、符号化パラメータ情報がイントラ予測であることを示しているときステップST112に進み、イントラ予測であることを示していないとき、すなわちインター予測であるときステップST121に進む。   Next, inverse orthogonal transform processing will be described using the flowchart shown in FIG. In step ST111, the inverse orthogonal transform unit 54 determines whether or not intra prediction is performed. For example, the inverse orthogonal transform unit 54 determines whether the block to be decoded is intra prediction based on the encoding parameter information extracted from the encoded bitstream by the lossless decoding unit 52. The inverse orthogonal transform unit 54 proceeds to step ST112 when the encoding parameter information indicates intra prediction, and proceeds to step ST121 when it does not indicate intra prediction, that is, when it is inter prediction.

ステップST112で逆直交変換部54は、マクロブロックサイズが16×16画素であるか否か判別する。逆直交変換部54は、符号化パラメータ情報でマクロブロックサイズが16×16画素であることを示しているときステップST113に進み、16×16画素であることを示していないときステップST118に進む。   In step ST112, the inverse orthogonal transform unit 54 determines whether or not the macroblock size is 16 × 16 pixels. The inverse orthogonal transform unit 54 proceeds to step ST113 when the encoding parameter information indicates that the macroblock size is 16 × 16 pixels, and proceeds to step ST118 when it does not indicate that it is 16 × 16 pixels.

ステップST113で逆直交変換部54は、変換ブロックサイズが4×4画素であるか判別する。逆直交変換部54は符号化パラメータ情報における変換ブロックサイズ情報が「0」であるときステップST114に進み、「0」でないときステップST115に進む。   In step ST113, the inverse orthogonal transform unit 54 determines whether the transform block size is 4 × 4 pixels. The inverse orthogonal transform unit 54 proceeds to step ST114 when the transform block size information in the coding parameter information is “0”, and proceeds to step ST115 when it is not “0”.

ステップST114で逆直交変換部54は、4×4逆直交変換処理を行う。逆直交変換部54は、予測モードとブロック位置に応じて予め学習されている基底を用いて4×4KL逆変換を行う。マクロブロックサイズが16×16画素であるとき、符号化では16回のKL変換とKL変換を行って得られた係数から最低周波数成分係数を選択してKL変換が行われている。したがって、逆直交変換部54は、予測モードに応じた基底を用いて、最低周波数成分係数の逆量子化後データのKL逆変換を行う。また、逆直交変換部54は、このKL逆変換によって得られた最低周波数成分係数と他の成分の係数からなる16個のブロックに対して、予測モードとブロック位置に応じた基底を用いてKL逆変換を行う。逆直交変換部54は、KL逆変換を行うことにより得られた予測誤差データを加算部55に出力する。すなわち、図14に示す逆直交変換部54のデータ選択部548は、4×4KL逆変換部544の出力を用いて4×4KL逆変換部546でKL逆変換を行うことにより得られたデータを選択して加算部55に出力する。   In step ST114, the inverse orthogonal transform unit 54 performs 4 × 4 inverse orthogonal transform processing. The inverse orthogonal transform unit 54 performs 4 × 4 KL inverse transform using a base learned in advance according to the prediction mode and the block position. When the macroblock size is 16 × 16 pixels, in coding, the KL conversion is performed by selecting the lowest frequency component coefficient from the coefficients obtained by performing KL conversion and KL conversion 16 times. Therefore, the inverse orthogonal transform unit 54 performs KL inverse transform on the data after inverse quantization of the lowest frequency component coefficient, using the basis corresponding to the prediction mode. Further, the inverse orthogonal transform unit 54 uses the basis corresponding to the prediction mode and the block position for 16 blocks including the lowest frequency component coefficient obtained by the KL inverse transform and the coefficients of the other components. Perform inverse transformation. The inverse orthogonal transform unit 54 outputs prediction error data obtained by performing the KL inverse transform to the addition unit 55. That is, the data selection unit 548 of the inverse orthogonal transform unit 54 shown in FIG. 14 uses the output of the 4 × 4KL inverse transform unit 544 to perform the data obtained by performing the KL inverse transform in the 4 × 4KL inverse transform unit 546. Select and output to the adder 55.

ステップST115で逆直交変換部54は、変換ブロックサイズが8×8画素であるか判別する。逆直交変換部54は符号化パラメータ情報における変換ブロックサイズ情報が「1」であるときステップST116に進み、「1」でないときステップST117に進む。   In step ST115, the inverse orthogonal transform unit 54 determines whether the transform block size is 8 × 8 pixels. The inverse orthogonal transform unit 54 proceeds to step ST116 when the transform block size information in the coding parameter information is “1”, and proceeds to step ST117 when it is not “1”.

ステップST116で逆直交変換部54は、8×8逆直交変換処理を行う。逆直交変換部54は、予測モードとブロック位置に応じて予め学習されている基底を用いて8×8KL逆変換を行う。マクロブロックサイズが16×16画素であるとき、符号化では4回のKL変換とKL変換を行って得られた係数から最低周波数成分係数を選択してKL変換が行われている。したがって、逆直交変換部54は、予測モードに応じた基底を用いて、最低周波数成分係数の逆量子化後データのKL逆変換を行う。また、逆直交変換部54は、このKL逆変換によって得られた最低周波数成分係数と他の成分の係数からなる4個のブロックに対して、予測モードとブロック位置に応じた基底を用いてKL逆変換を行う。逆直交変換部54は、KL逆変換を行うことにより得られた予測誤差データを加算部55に出力する。すなわち、図14に示す逆直交変換部54のデータ選択部548は、2×2KL逆変換部542の出力を用いて8×8KL逆変換部543でKL逆変換を行うことにより得られたデータを選択して加算部55に出力する。   In step ST116, the inverse orthogonal transform unit 54 performs 8 × 8 inverse orthogonal transform processing. The inverse orthogonal transform unit 54 performs 8 × 8 KL inverse transform using a base learned in advance according to the prediction mode and the block position. When the macroblock size is 16 × 16 pixels, in coding, the KL conversion is performed by selecting the lowest frequency component coefficient from the coefficients obtained by performing KL conversion and KL conversion four times. Therefore, the inverse orthogonal transform unit 54 performs KL inverse transform on the data after inverse quantization of the lowest frequency component coefficient, using the basis corresponding to the prediction mode. Further, the inverse orthogonal transform unit 54 uses the basis corresponding to the prediction mode and the block position for the four blocks including the lowest frequency component coefficient obtained by the KL inverse transform and the coefficients of the other components. Perform inverse transformation. The inverse orthogonal transform unit 54 outputs prediction error data obtained by performing the KL inverse transform to the addition unit 55. That is, the data selection unit 548 of the inverse orthogonal transform unit 54 illustrated in FIG. 14 uses the output of the 2 × 2KL inverse transform unit 542 to perform the KL inverse transform in the 8 × 8KL inverse transform unit 543. Select and output to the adder 55.

ステップST117で逆直交変換部54は、16×16逆直交変換処理を行う。逆直交変換部54は、予測モードに応じて予め学習されている基底を用いて16×16KL逆変換を行う。逆直交変換部54は、KL逆変換を行うことにより得られた予測誤差データを加算部55に出力する。すなわち、図14に示す逆直交変換部54のデータ選択部548は、16×16KL逆変換部541でKL逆変換を行うことにより得られたデータを選択して加算部55に出力する。   In step ST117, the inverse orthogonal transform unit 54 performs 16 × 16 inverse orthogonal transform processing. The inverse orthogonal transform unit 54 performs 16 × 16 KL inverse transform using a base learned in advance according to the prediction mode. The inverse orthogonal transform unit 54 outputs prediction error data obtained by performing the KL inverse transform to the addition unit 55. That is, the data selection unit 548 of the inverse orthogonal transform unit 54 illustrated in FIG. 14 selects the data obtained by performing the KL inverse transform in the 16 × 16 KL inverse transform unit 541 and outputs the data to the adder 55.

ステップST112からステップST118に進むと、逆直交変換部54は、変換ブロックサイズが4×4画素であるか判別する。逆直交変換部54は符号化パラメータ情報における変換ブロックサイズ情報が「0」であるときステップST119に進み、「0」でないときステップST120に進む。   When the process proceeds from step ST112 to step ST118, the inverse orthogonal transform unit 54 determines whether the transform block size is 4 × 4 pixels. The inverse orthogonal transform unit 54 proceeds to step ST119 when the transform block size information in the coding parameter information is “0”, and proceeds to step ST120 when it is not “0”.

ステップST119で逆直交変換部54は、4×4逆直交変換処理を行う。逆直交変換部54は、予測モードとブロック位置に応じて予め学習されている基底を用いて4×4KL逆変換処理を行う。マクロブロックサイズが8×8画素であるとき、符号化では4回のKL変換とKL変換を行って得られた係数から最低周波数成分係数を選択してKL変換が行われている。したがって、逆直交変換部54は、予測モードに応じた基底を用いて、最低周波数成分係数の逆量子化後データのKL逆変換を行う。また、逆直交変換部54は、このKL逆変換によって得られた最低周波数成分係数と他の成分の係数からなる4個のブロックに対して、予測モードとブロック位置に応じた基底を用いてKL逆変換を行う。逆直交変換部54は、KL逆変換を行うことにより得られた予測誤差データを加算部55に出力する。すなわち、図14に示す逆直交変換部54のデータ選択部548は、2×2KL逆変換部545の出力を用いて4×4KL逆変換部546でKL逆変換を行うことにより得られたデータを選択して加算部55に出力する。   In step ST119, the inverse orthogonal transform unit 54 performs 4 × 4 inverse orthogonal transform processing. The inverse orthogonal transform unit 54 performs 4 × 4 KL inverse transform processing using a base learned in advance according to the prediction mode and the block position. When the macroblock size is 8 × 8 pixels, in coding, the KL conversion is performed by selecting the lowest frequency component coefficient from the coefficients obtained by performing KL conversion and KL conversion four times. Therefore, the inverse orthogonal transform unit 54 performs KL inverse transform on the data after inverse quantization of the lowest frequency component coefficient, using the basis corresponding to the prediction mode. Further, the inverse orthogonal transform unit 54 uses the basis corresponding to the prediction mode and the block position for the four blocks including the lowest frequency component coefficient obtained by the KL inverse transform and the coefficients of the other components. Perform inverse transformation. The inverse orthogonal transform unit 54 outputs prediction error data obtained by performing the KL inverse transform to the addition unit 55. That is, the data selection unit 548 of the inverse orthogonal transform unit 54 illustrated in FIG. 14 uses the output of the 2 × 2KL inverse transform unit 545 to perform the data obtained by performing the KL inverse transform in the 4 × 4KL inverse transform unit 546. Select and output to the adder 55.

ステップST120で逆直交変換部54は、8×8逆直交変換処理を行う。逆直交変換部54は、予測モードに応じて予め学習されている基底を用いて8×8KL逆変換を行う。逆直交変換部54は、KL逆変換を行うことにより得られた予測誤差データを加算部55に出力する。すなわち、図14に示す逆直交変換部54のデータ選択部548は、8×8KL逆変換部543でKL逆変換を行うことにより得られたデータを選択して加算部55に出力する。   In step ST120, the inverse orthogonal transform unit 54 performs 8 × 8 inverse orthogonal transform processing. The inverse orthogonal transform unit 54 performs 8 × 8 KL inverse transform using a base learned in advance according to the prediction mode. The inverse orthogonal transform unit 54 outputs prediction error data obtained by performing the KL inverse transform to the addition unit 55. That is, the data selection unit 548 of the inverse orthogonal transform unit 54 illustrated in FIG. 14 selects the data obtained by performing the KL inverse transform in the 8 × 8KL inverse transform unit 543 and outputs the selected data to the adder 55.

ステップST121で逆直交変換部54は、逆離散コサイン変換(IDCT)を行う。逆直交変換部54は、逆離散コサイン変換を行って得られた係数を加算部55に出力する。すなわち、図14に示す逆直交変換部54のデータ選択部548は、IDCT部547から出力されるデータを選択して加算部55に出力する。   In step ST121, the inverse orthogonal transform unit 54 performs inverse discrete cosine transform (IDCT). The inverse orthogonal transform unit 54 outputs the coefficient obtained by performing the inverse discrete cosine transform to the addition unit 55. That is, the data selection unit 548 of the inverse orthogonal transform unit 54 illustrated in FIG. 14 selects the data output from the IDCT unit 547 and outputs the data to the addition unit 55.

図17は、逆直交変換動作を説明するための図であり、図12の直交変換動作で生成された変換係数の逆直交変換を例示している。   FIG. 17 is a diagram for explaining the inverse orthogonal transform operation, and illustrates the inverse orthogonal transform of the transform coefficient generated by the orthogonal transform operation of FIG.

例えば、マクロブロックサイズが16×16画素で変換ブロックサイズが4×4画素とする。この場合、4×4KL逆変換部544は、最適モードの符号化パラメータ情報が示す予測モードに応じた基底を用いて図17の(A)に示す最低周波数成分係数のKL変換後データ(逆量子化データ)のKL逆変換を行う。4×4KL逆変換部544は、このKL逆変換によって、図17の(B)に示す最も低い周波数成分の係数を生成する。4×4KL逆変換部546は、図17の(C)に示すように、最低周波数成分係数と他のKL変換後データ(逆量子化データ)をブロック毎の係数に戻す。さらに、4×4KL逆変換部546は、図17の(D)に示すように、符号化パラメータ情報が示す予測モードとブロック位置に応じた基底を用いて16個の4×4ブロック毎にKL逆変換を行い、図17の(E)に示す予測誤差データを生成する。データ選択部548は、生成された予測誤差データを選択して加算部55に出力する。   For example, the macroblock size is 16 × 16 pixels and the conversion block size is 4 × 4 pixels. In this case, the 4 × 4KL inverse transform unit 544 uses the basis corresponding to the prediction mode indicated by the coding parameter information of the optimal mode, and performs the KL-transformed data (inverse quantum) of the lowest frequency component coefficient shown in FIG. KL inverse transform of the data). The 4 × 4KL inverse transform unit 544 generates the coefficient of the lowest frequency component shown in FIG. 17B by the KL inverse transform. As shown in FIG. 17C, the 4 × 4KL inverse transform unit 546 returns the lowest frequency component coefficient and other KL-transformed data (inverse quantized data) to coefficients for each block. Further, as shown in FIG. 17D, the 4 × 4 KL inverse transform unit 546 uses the prediction mode indicated by the encoding parameter information and the basis corresponding to the block position to perform KL every 16 4 × 4 blocks. Inverse transformation is performed to generate prediction error data shown in FIG. The data selection unit 548 selects the generated prediction error data and outputs it to the addition unit 55.

また、マクロブロックサイズが8×8画素で変換ブロックサイズが4×4画素であるとする。この場合、2×2KL逆変換部545は、最適モードの符号化パラメータ情報が示す予測モードに応じた基底を用いて、図17の(F)に示す最低周波数成分係数のKL変換後データ(逆量子化データ)のKL逆変換を行う。2×2KL逆変換部545は、このKL逆変換によって、図17の(G)に示す最低周波数成分係数を生成する。4×4KL逆変換部546は、図17の(H)に示すように、最低周波数成分係数と他のKL変換後データ(逆量子化データ)をブロック毎の係数に戻す。さらに、4×4KL逆変換部546は、図17の(I)に示すように、符号化パラメータ情報が示す予測モードとブロック位置に応じた基底を用いて4個の4×4ブロック毎にKL逆変換を行い、図17の(J)に示す予測誤差データを生成する。データ選択部548は、生成された予測誤差データを選択して加算部55に出力する。   Also assume that the macroblock size is 8 × 8 pixels and the transform block size is 4 × 4 pixels. In this case, the 2 × 2 KL inverse transform unit 545 uses the basis corresponding to the prediction mode indicated by the coding parameter information of the optimum mode, and performs the KL-transformed data (inverse of the lowest frequency component coefficient shown in FIG. 17F). KL inverse transform of (quantized data) is performed. The 2 × 2 KL inverse transform unit 545 generates the lowest frequency component coefficient shown in FIG. 17G by the KL inverse transform. As shown in FIG. 17H, the 4 × 4KL inverse transform unit 546 returns the lowest frequency component coefficient and other KL-transformed data (inverse quantized data) to coefficients for each block. Further, as shown in (I) of FIG. 17, the 4 × 4KL inverse transform unit 546 uses the prediction mode indicated by the encoding parameter information and the base corresponding to the block position to perform KL for every 4 × 4 blocks. Inverse transformation is performed to generate prediction error data shown in FIG. The data selection unit 548 selects the generated prediction error data and outputs it to the addition unit 55.

次に、図18のフローチャートを参照して、図15のステップST98の予測処理について説明する。   Next, the prediction process in step ST98 in FIG. 15 will be described with reference to the flowchart in FIG.

ステップST131で可逆復号化部52は、対象ブロックがイントラ符号化されているか否かを判定する。可逆復号化部52は、可逆復号化を行うことにより得られた符号化パラメータ情報がイントラ予測の情報であるとき、符号化パラメータ情報をイントラ予測部62に供給してステップST132に進む。また、可逆復号化部52は、符号化パラメータ情報がイントラ予測の情報でないとき、符号化パラメータ情報を動き補償部63に供給してステップST133に進む。   In step ST131, the lossless decoding unit 52 determines whether or not the target block is intra-coded. When the encoding parameter information obtained by performing lossless decoding is intra prediction information, the lossless decoding unit 52 supplies the encoding parameter information to the intra prediction unit 62, and proceeds to step ST132. Also, when the encoding parameter information is not intra prediction information, the lossless decoding unit 52 supplies the encoding parameter information to the motion compensation unit 63 and proceeds to step ST133.

ステップST132でイントラ予測部62は、イントラ予測処理を行う。イントラ予測部62は、加算部55から供給された復号画像データと符号化パラメータ情報を用いてイントラ予測を行い、予測画像データを生成する。   In step ST132, the intra prediction unit 62 performs an intra prediction process. The intra prediction unit 62 performs intra prediction using the decoded image data and the encoding parameter information supplied from the addition unit 55, and generates predicted image data.

ステップST133で動き補償部63は、インター予測処理を行う。動き補償部63は、可逆復号化部52からの符号化パラメータ情報や動きベクトルに基づいて、フレームメモリ61から供給された復号画像データの動き補償を行う。さらに、動き補償部63は、動き補償により生成した予測画像データをセレクタ64に出力する。   In step ST133, the motion compensation unit 63 performs an inter prediction process. The motion compensation unit 63 performs motion compensation on the decoded image data supplied from the frame memory 61 based on the encoding parameter information and the motion vector from the lossless decoding unit 52. Further, the motion compensation unit 63 outputs predicted image data generated by motion compensation to the selector 64.

このように、本願発明の画像復号化装置および方法では、ブロック位置に応じて予め設定されている基底を用いて直交変換を行うことに得られた係数データを処理して生成された符号化ビットストリームの復号化において、符号化ビットストリームに含まれている符号化パラメータ情報で示されたマクロブロック内のブロック位置に応じて予め設定されている基底が用いられて、逆直交変換が行われる。したがって、直交変換後の係数データを直交変換前の予測誤差データに戻すことができるので、マクロブロック内のブロック位置に応じた基底を用いて直交変換が行われても、直交変換前の予測誤差データに戻すことができる。また、予測モードに応じた基底を用いて符号化が行われても、符号化パラメータ情報で示された予測モードに応じて予め設定されている基底を用いることで、直交変換後の係数データを直交変換前の予測誤差データに戻すことができる。   As described above, in the image decoding apparatus and method of the present invention, coded bits generated by processing coefficient data obtained by performing orthogonal transformation using a base set in advance according to a block position. In decoding a stream, inverse orthogonal transform is performed using a base set in advance according to the block position in the macroblock indicated by the encoding parameter information included in the encoded bitstream. Therefore, the coefficient data after orthogonal transformation can be restored to the prediction error data before orthogonal transformation, so even if orthogonal transformation is performed using the basis corresponding to the block position in the macroblock, the prediction error before orthogonal transformation is performed. You can return to data. In addition, even if encoding is performed using a basis corresponding to the prediction mode, coefficient data after orthogonal transformation is obtained by using a basis set in advance according to the prediction mode indicated by the encoding parameter information. The prediction error data before the orthogonal transformation can be restored.

<7.基底の学習動作>
次に、直交変換部14と逆直交変換部54で用いられる基底を、学習動作によって予め生成する基底生成部について説明する。図19は、基底の学習動作を示すフローチャートであり、基底生成部は、学習用に用意した画像を用いて図19に示す処理を行い基底を生成する。なお、学習用の画像としては、画像の内容によって学習に偏りが起こらないように、なるべく異なる多くの画像を用いるようにする。
<7. Base learning action>
Next, a base generating unit that generates bases used in the orthogonal transform unit 14 and the inverse orthogonal transform unit 54 in advance by a learning operation will be described. FIG. 19 is a flowchart showing a base learning operation, and the base generation unit generates a base by performing the processing shown in FIG. 19 using an image prepared for learning. As learning images, as many different images as possible are used so that learning is not biased depending on the contents of the images.

ステップST141で基底生成部は、学習に用いていない画像が残っているか判別する。基底生成部は、学習に用いていない画像が残っているときはステップST142に進み、すべての画像を用いて学習が行われたときはステップST152に進む。   In step ST <b> 141, the base generation unit determines whether an image that is not used for learning remains. The base generation unit proceeds to step ST142 when an image not used for learning remains, and proceeds to step ST152 when learning is performed using all images.

ステップST142で基底生成部は、学習に用いていないマクロブロックが残っているか判別する。基底生成部は、学習に使う画像において、学習に用いていないマクロブロックが残っているときはステップST143に進み、すべてのマクロブロックを用いて学習が行われたときはステップST141に戻る。   In step ST142, the base generation unit determines whether there is a macroblock that is not used for learning. The base generation unit proceeds to step ST143 when macroblocks not used for learning remain in the image used for learning, and returns to step ST141 when learning is performed using all macroblocks.

ステップST143で基底生成部は、マクロブロックサイズが16×16画素であるか判別する。基底生成部は、マクロブロックサイズが16×16画素であるときステップST144に進み、マクロブロックサイズが16×16画素でないときステップST148に進む。   In step ST143, the base generation unit determines whether the macroblock size is 16 × 16 pixels. The base generation unit proceeds to step ST144 when the macroblock size is 16 × 16 pixels, and proceeds to step ST148 when the macroblock size is not 16 × 16 pixels.

ステップST144で基底生成部は、16×16予測誤差データを生成する。基底生成部はイントラ予測を行い16×16画素の予測誤差データを生成する。   In step ST144, the base generation unit generates 16 × 16 prediction error data. The base generation unit performs intra prediction and generates prediction error data of 16 × 16 pixels.

ステップST145で基底生成部は、4×4直交変換の対称行列を算出する。基底生成部は、16×16予測誤差データを4×4画素である16個の変換ブロックに分割して、予測モードとマクロブロック内における変換ブロックのブロック位置毎に対称行列Mを算出する。基底生成部は、4×4画素の変換ブロックの予測誤差データを並べて16次のベクトルとして、16次のベクトルの平均と各ベクトルとの差を算出する。基底生成部は、この差を「q」として式(3)の演算を行い対称行列Mを求める。

Figure 2011259205

In step ST145, the base generation unit calculates a symmetric matrix of 4 × 4 orthogonal transformation. The base generation unit divides the 16 × 16 prediction error data into 16 transform blocks each having 4 × 4 pixels, and calculates a symmetric matrix M for each block position of the transform block in the prediction mode and the macroblock. The base generation unit calculates the difference between the average of the 16th-order vectors and each vector as 16th-order vectors by arranging the prediction error data of the 4 × 4 pixel conversion blocks. The base generation unit calculates the symmetric matrix M by performing the calculation of Expression (3) using this difference as “q”.
Figure 2011259205

なお、式(3)において、「mdt」はマクロブロックサイズと変換ブロックサイズを判別可能とする変換モード情報である。「mid」はイントラ予測の予測モードである。「loc」は、マクロブロック内における変換ブロックのブロック位置である。「num」は学習回数である。また「T」は転置行列であることを示している。   In Expression (3), “mdt” is conversion mode information that makes it possible to determine the macroblock size and the conversion block size. “Mid” is a prediction mode of intra prediction. “Loc” is the block position of the transform block within the macroblock. “Num” is the number of learning times. “T” indicates a transposed matrix.

ステップST146で基底生成部は、8×8直交変換の対称行列を算出する。基底生成部は、16×16予測誤差データを8×8画素である4個の変換ブロックに分割して、予測モードとマクロブロック内における変換ブロックのブロック位置毎に対称行列Mを算出する。基底生成部は、8×8画素の変換ブロックの予測誤差データを並べて64次のベクトルとして、64次のベクトルの平均と各ベクトルとの差を算出する。基底生成部は、この差を「q」として式(3)の演算を行い対称行列Mを求める。   In step ST146, the base generation unit calculates a symmetric matrix of 8 × 8 orthogonal transformation. The base generation unit divides the 16 × 16 prediction error data into four transform blocks each having 8 × 8 pixels, and calculates a symmetric matrix M for each block position of the transform block in the prediction mode and the macroblock. The base generation unit calculates the difference between the average of the 64th order vector and each vector as a 64th order vector by arranging the prediction error data of the 8 × 8 pixel transform block. The base generation unit calculates the symmetric matrix M by performing the calculation of Expression (3) using this difference as “q”.

ステップST147で基底生成部は、16×16直交変換の対称行列を算出する。基底生成部は、予測モード毎に16×16画素の変換ブロックの予測誤差データを並べて256次のベクトルとして、256次のベクトルの平均と各ベクトルとの差を算出する。基底生成部は、この差を「q」として式(3)の演算を行い、予測モード毎に対称行列Mを求める。   In step ST147, the base generation unit calculates a 16 × 16 orthogonal transformation symmetric matrix. The base generation unit calculates the difference between the average of the 256th order vectors and each vector as a 256th order vector by arranging the prediction error data of the 16 × 16 pixel transform blocks for each prediction mode. The base generation unit calculates the symmetric matrix M for each prediction mode by performing the calculation of Expression (3) using this difference as “q”.

ステップST143からステップST148に進むと、基底生成部は、マクロブロックサイズが8×8画素であるか判別する。基底生成部は、マクロブロックサイズが8×8画素であるときステップST149に進み、マクロブロックサイズが8×8画素でないときステップST142に戻る。   When the process proceeds from step ST143 to step ST148, the base generation unit determines whether the macroblock size is 8 × 8 pixels. The base generation unit proceeds to step ST149 when the macroblock size is 8 × 8 pixels, and returns to step ST142 when the macroblock size is not 8 × 8 pixels.

ステップST149で基底生成部は、8×8予測誤差データを生成する。基底生成部はイントラ予測を行い8×8画素の予測誤差データを生成する。   In step ST149, the base generation unit generates 8 × 8 prediction error data. The base generation unit performs intra prediction and generates prediction error data of 8 × 8 pixels.

ステップST150で基底生成部は、4×4直交変換の対称行列を算出する。基底生成部は、8×8予測誤差データを4×4画素である4個の変換ブロックに分割して、予測モードとマクロブロック内における変換ブロックのブロック位置毎に対称行列Mを算出する。基底生成部は、4×4画素の変換ブロックの予測誤差データを並べて16次のベクトルとして、16次のベクトルの平均と各ベクトルとの差を算出する。基底生成部は、この差を「q」として式(3)の演算を行い対称行列Mを求める。   In step ST150, the base generation unit calculates a symmetric matrix of 4 × 4 orthogonal transformation. The base generation unit divides the 8 × 8 prediction error data into four transform blocks each having 4 × 4 pixels, and calculates a symmetric matrix M for each block position of the transform block in the prediction mode and the macroblock. The base generation unit calculates the difference between the average of the 16th-order vectors and each vector as 16th-order vectors by arranging the prediction error data of the 4 × 4 pixel conversion blocks. The base generation unit calculates the symmetric matrix M by performing the calculation of Expression (3) using this difference as “q”.

ステップST151で基底生成部は、8×8直交変換の対称行列を算出する。基底生成部は、予測モード毎に8×8画素の変換ブロックの予測誤差データを並べて64次のベクトルとして、64次のベクトルの平均と各ベクトルとの差を算出する。基底生成部は、この差を「q」として式(3)の演算を行い、予測モード毎に対称行列Mを求める。   In step ST151, the base generation unit calculates a symmetric matrix of 8 × 8 orthogonal transformation. The base generation unit calculates the difference between the average of the 64th order vectors and each vector as a 64th order vector by arranging the prediction error data of the 8 × 8 pixel transform block for each prediction mode. The base generation unit calculates the symmetric matrix M for each prediction mode by performing the calculation of Expression (3) using this difference as “q”.

ステップST152で基底生成部は、KL変換の基底を算出する。基底生成部は、各対称行列Mの固有値に対応する固有ベクトルを求め、固有値の大きさの順に固有ベクトルを並べて、KL変換の基底とする。   In step ST152, the base generation unit calculates the base of the KL conversion. The base generation unit obtains eigenvectors corresponding to the eigenvalues of each symmetric matrix M, arranges the eigenvectors in the order of the eigenvalue magnitudes, and uses them as the basis of the KL transformation.

このような処理を行うと、16×16KL変換部141、8×8KL変換部142、2×2KL変換部143,146、4×4KL変換部144,145でKL変換を行うときの基底を生成できる。また、各基底の逆行列の算出を行うことで、16×16KL逆変換部541、2×2KL逆変換部542,545、8×8KL逆変換部543、4×4KL逆変換部544,546でKL逆変換を行うときの基底を生成できる。   By performing such processing, a base for performing KL conversion by the 16 × 16 KL conversion unit 141, the 8 × 8KL conversion unit 142, the 2 × 2KL conversion units 143 and 146, and the 4 × 4KL conversion units 144 and 145 can be generated. . Also, by calculating the inverse matrix of each base, the 16 × 16KL inverse transform unit 541, 2 × 2KL inverse transform unit 542, 545, 8 × 8KL inverse transform unit 543, 4 × 4KL inverse transform unit 544, 546 A base for performing KL inverse transformation can be generated.

さらに、マクロブロックサイズ毎と予測モード毎およびマクロブロック内のブロック位置毎に各ブロックのKL変換やKL逆変換を行うための基底を、画像符号化装置と画像復号化装置のそれぞれで記憶すると、記憶しておく基底の数が多くなってしまう。すなわち、容量の大きいメモリが必要となる。そこで、基底のグループ化を行い、記憶する基底を削減する。   Furthermore, when the base for performing KL transformation or KL inverse transformation of each block is stored in each of the image encoding device and the image decoding device for each macroblock size, each prediction mode, and each block position in the macroblock, The number of bases to memorize increases. That is, a memory with a large capacity is required. Therefore, base grouping is performed to reduce the bases to be stored.

次に、グループ化の方法について、2つの方法を例示する。第1の方法は、学習で求めた基底について、基底間でユークリッド距離を計算し、距離が小さいものをグループ化して、グループ内の複数の基底を代表する1つの基底に置き換える。このようにグループ化を行えば、基底の数を削減できる。   Next, two methods will be exemplified for the grouping method. The first method calculates the Euclidean distance between the bases obtained by learning, groups those having a small distance, and replaces them with one base representing a plurality of bases in the group. By performing grouping in this way, the number of bases can be reduced.

第2の方法は、参照画素かの距離に応じてグループ化する方法である。図20に示すように、予測モード0(Vertical)では、例えばGroup1={P4,P5,P6,P7}のブロックは 参照画素からの距離が等しくなる。このような場合、画素P4,P5,P6,P7の予測誤差は同じような特性になる場合が多い。そこで、このGroup1はすべて同じ基底を採用する。同様に、Group0,2,3も同じ基底を採用することで、16種類から4種類に基底を削減できる。   The second method is a method of grouping according to the distance of the reference pixel. As shown in FIG. 20, in the prediction mode 0 (Vertical), for example, the blocks of Group1 = {P4, P5, P6, P7} have the same distance from the reference pixel. In such a case, the prediction errors of the pixels P4, P5, P6, and P7 often have similar characteristics. Therefore, all the Groups 1 adopt the same base. Similarly, the groups 0, 2, and 3 can be reduced from 16 types to 4 types by adopting the same base.

同様に、予測モード1(horizontal)では、例えばGroup1={P1,P5,P9,P13}のブロックは 参照画素からの位置関係(あるいは距離)が等しくなる。このような場合、画素P1,P5,P9,P13の予測誤差は同じような特性になる場合が多い。そこで、このGroup1はすべて同じ基底を採用する。同様に、Group0,2,3も同じ基底を採用することで、16種類から4種類に基底を削減できる。   Similarly, in the prediction mode 1 (horizontal), for example, the block of Group1 = {P1, P5, P9, P13} has the same positional relationship (or distance) from the reference pixel. In such a case, the prediction errors of the pixels P1, P5, P9, and P13 often have similar characteristics. Therefore, all the Groups 1 adopt the same base. Similarly, the groups 0, 2, and 3 can be reduced from 16 types to 4 types by adopting the same base.

また、予測モード4(diagonal down-right)では、参照画素と各ブロックの位置関係が同じにならない。しかし、90度回転することでP3,P12は参照画素との位置関係が同じになる。そこで、90度回転することで参照画素との位置関係が同じとなる{P1,P4}},{P2,P8},{P6,P9},{P7,P13},{P11,P14}をそれぞれグループ化して同じ基底を採用する。   In prediction mode 4 (diagonal down-right), the positional relationship between the reference pixel and each block is not the same. However, by rotating 90 degrees, P3 and P12 have the same positional relationship with the reference pixel. Therefore, {P1, P4}}, {P2, P8}, {P6, P9}, {P7, P13}, {P11, P14}, which have the same positional relationship with the reference pixel by rotating 90 degrees, respectively Group and adopt the same basis.

さらに、予測モード0(Vertical)を90度回転したときの参照画素と各ブロックの位置関係は、予測モード1(horizontal)と等しくなることから、予測モード0(Vertical)と予測モード1(horizontal)をグループ化すれば、さらに基底を削減できることになる。   Further, since the positional relationship between the reference pixel and each block when the prediction mode 0 (Vertical) is rotated 90 degrees is equal to the prediction mode 1 (horizontal), the prediction mode 0 (Vertical) and the prediction mode 1 (horizontal) If the groups are grouped, the base can be further reduced.

<8.ソフトウェア処理の場合>
明細書中において説明した一連の処理はハードウェア、またはソフトウェア、または両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることも可能である。
<8. For software processing>
The series of processes described in the specification can be executed by hardware, software, or a combined configuration of both. When processing by software is executed, a program in which a processing sequence is recorded is installed and executed in a memory in a computer incorporated in dedicated hardware. Alternatively, the program can be installed and executed on a general-purpose computer capable of executing various processes.

例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。または、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。   For example, the program can be recorded in advance on a hard disk or ROM (Read Only Memory) as a recording medium. Alternatively, the program is temporarily or permanently stored on a removable recording medium such as a flexible disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, or a semiconductor memory. It can be stored (recorded). Such a removable recording medium can be provided as so-called package software.

なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。   The program is installed on the computer from the removable recording medium as described above, or is wirelessly transferred from the download site to the computer, or is wired to the computer via a network such as a LAN (Local Area Network) or the Internet. The computer can receive the program transferred in this manner and install it on a recording medium such as a built-in hard disk.

プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   The step of describing the program includes not only the processing that is performed in time series in the order described, but also the processing that is not necessarily performed in time series but is executed in parallel or individually.

<9.電子機器に適用した場合>
また、以上においては、符号化方式/復号方式としてH.264/AVC方式が用いられたが、本発明は、その他の符号化方式/復号方式を用いる画像符号化装置/画像復号装置に適用することもできる。
<9. When applied to electronic devices>
In the above, H.264 is used as the encoding method / decoding method. Although the H.264 / AVC format is used, the present invention can also be applied to an image encoding device / image decoding device using other encoding / decoding methods.

さらに、本発明は、例えば、MPEG,H.26x等のように、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(符号化ビットストリーム)を、衛星放送、ケーブルTV(テレビジョン)、インターネット、および携帯電話機などのネットワークメディアを介して受信する際に、あるいは、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。   Furthermore, the present invention relates to MPEG, H.264, for example. The image information (encoded bit stream) compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as 26x, etc., and network media such as satellite broadcasting, cable TV (television), the Internet, and cellular phones. The present invention can be applied to an image encoding device and an image decoding device that are used when receiving via the storage medium or processing on a storage medium such as an optical, magnetic disk, and flash memory.

上述した画像符号化装置10や画像復号化装置50は、任意の電子機器に適用することができる。以下にその例について説明する。   The image encoding device 10 and the image decoding device 50 described above can be applied to any electronic device. Examples thereof will be described below.

図21は、本発明を適用したテレビジョン装置の概略構成を例示している。テレビジョン装置90は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース部909を有している。さらに、テレビジョン装置90は、制御部910、ユーザインタフェース部911等を有している。   FIG. 21 illustrates a schematic configuration of a television device to which the present invention is applied. The television apparatus 90 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, and an external interface unit 909. Furthermore, the television apparatus 90 includes a control unit 910, a user interface unit 911, and the like.

チューナ902は、アンテナ901で受信された放送波信号から所望のチャンネルを選局して復調を行い、得られた符号化ビットストリームをデマルチプレクサ903に出力する。   The tuner 902 selects and demodulates a desired channel from the broadcast wave signal received by the antenna 901, and outputs the obtained encoded bit stream to the demultiplexer 903.

デマルチプレクサ903は、符号化ビットストリームから視聴対象である番組の映像や音声のパケットを抽出して、抽出したパケットのデータをデコーダ904に出力する。また、デマルチプレクサ903は、EPG(Electronic Program Guide)等のデータのパケットを制御部910に供給する。なお、スクランブルが行われている場合、デマルチプレクサ等でスクランブルの解除を行う。   The demultiplexer 903 extracts video and audio packets of the program to be viewed from the encoded bit stream, and outputs the extracted packet data to the decoder 904. Further, the demultiplexer 903 supplies a packet of data such as EPG (Electronic Program Guide) to the control unit 910. If scrambling is being performed, descrambling is performed by a demultiplexer or the like.

デコーダ904は、パケットの復号化処理を行い、復号処理化によって生成された映像データを映像信号処理部905、音声データを音声信号処理部907に出力する。   The decoder 904 performs a packet decoding process, and outputs video data generated by the decoding process to the video signal processing unit 905 and audio data to the audio signal processing unit 907.

映像信号処理部905は、映像データに対して、ノイズ除去やユーザ設定に応じた映像処理等を行う。映像信号処理部905は、表示部906に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成する。また、映像信号処理部905は、項目の選択などのメニュー画面等を表示するための映像データを生成し、それを番組の映像データに重畳する。映像信号処理部905は、このようにして生成した映像データに基づいて駆動信号を生成して表示部906を駆動する。   The video signal processing unit 905 performs noise removal, video processing according to user settings, and the like on the video data. The video signal processing unit 905 generates video data of a program to be displayed on the display unit 906, image data by processing based on an application supplied via a network, and the like. The video signal processing unit 905 generates video data for displaying a menu screen for selecting an item and the like, and superimposes the video data on the video data of the program. The video signal processing unit 905 generates a drive signal based on the video data generated in this way, and drives the display unit 906.

表示部906は、映像信号処理部905からの駆動信号に基づき表示デバイス(例えば液晶表示素子等)を駆動して、番組の映像などを表示させる。   The display unit 906 drives a display device (for example, a liquid crystal display element or the like) based on a drive signal from the video signal processing unit 905 to display a program video or the like.

音声信号処理部907は、音声データに対してノイズ除去などの所定の処理を施し、処理後の音声データのD/A変換処理や増幅処理を行いスピーカ908に供給することで音声出力を行う。   The audio signal processing unit 907 performs predetermined processing such as noise removal on the audio data, performs D / A conversion processing and amplification processing on the audio data after processing, and outputs the audio data to the speaker 908.

外部インタフェース部909は、外部機器やネットワークと接続するためのインタフェースであり、映像データや音声データ等のデータ送受信を行う。   The external interface unit 909 is an interface for connecting to an external device or a network, and performs data transmission / reception such as video data and audio data.

制御部910にはユーザインタフェース部911が接続されている。ユーザインタフェース部911は、操作スイッチやリモートコントロール信号受信部等で構成されており、ユーザ操作に応じた操作信号を制御部910に供給する。   A user interface unit 911 is connected to the control unit 910. The user interface unit 911 includes an operation switch, a remote control signal receiving unit, and the like, and supplies an operation signal corresponding to a user operation to the control unit 910.

制御部910は、CPU(Central Processing Unit)やメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータ、EPGデータ、ネットワークを介して取得されたデータ等を記憶する。メモリに記憶されているプログラムは、テレビジョン装置90の起動時などの所定のタイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、テレビジョン装置90がユーザ操作に応じた動作となるように各部を制御する。   The control unit 910 is configured using a CPU (Central Processing Unit), a memory, and the like. The memory stores a program executed by the CPU, various data necessary for the CPU to perform processing, EPG data, data acquired via a network, and the like. The program stored in the memory is read and executed by the CPU at a predetermined timing such as when the television device 90 is activated. The CPU controls each unit so that the television device 90 operates according to the user operation by executing the program.

なお、テレビジョン装置90では、チューナ902、デマルチプレクサ903、映像信号処理部905、音声信号処理部907、外部インタフェース部909等と制御部910を接続するためバス912が設けられている。   Note that the television device 90 is provided with a bus 912 for connecting the tuner 902, the demultiplexer 903, the video signal processing unit 905, the audio signal processing unit 907, the external interface unit 909, and the control unit 910.

このように構成されたテレビジョン装置では、デコーダ904に本願の画像復号化装置(画像復号化方法)の機能が設けられる。このため、放送局側で本願の画像符号化装置の機能を用いることにより、符号化効率や画質の改善がはかられて符号化ビットストリームの生成が行われても、テレビジョン装置で符号化ビットストリームの復号化を正しく行うことができる。   In the television apparatus configured as described above, the decoder 904 is provided with the function of the image decoding apparatus (image decoding method) of the present application. Therefore, by using the function of the image encoding device of the present application on the broadcasting station side, even if the encoding bit stream is generated with the improvement of the encoding efficiency and the image quality, the encoding is performed by the television device. Bitstream decoding can be performed correctly.

図22は、本発明を適用した携帯電話機の概略構成を例示している。携帯電話機92は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931を有している。これらは、バス933を介して互いに接続されている。   FIG. 22 illustrates a schematic configuration of a mobile phone to which the present invention is applied. The cellular phone 92 includes a communication unit 922, an audio codec 923, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, and a control unit 931. These are connected to each other via a bus 933.

また、通信部922にはアンテナ921が接続されており、音声コーデック923には、スピーカ924とマイクロホン925が接続されている。さらに制御部931には、操作部932が接続されている。   An antenna 921 is connected to the communication unit 922, and a speaker 924 and a microphone 925 are connected to the audio codec 923. Further, an operation unit 932 is connected to the control unit 931.

携帯電話機92は、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。   The mobile phone 92 performs various operations such as transmission / reception of voice signals, transmission / reception of e-mail and image data, image shooting, and data recording in various modes such as a voice call mode and a data communication mode.

音声通話モードにおいて、マイクロホン925で生成された音声信号は、音声コーデック923で音声データへの変換やデータ圧縮が行われて通信部922に供給される。通信部922は、音声データの変調処理や周波数変換処理等を行い送信信号を生成する。また、通信部922は、送信信号をアンテナ921に供給して図示しない基地局へ送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、得られた音声データを音声コーデック923に供給する。音声コーデック923は、音声データのデータ伸張やアナログ音声信号への変換を行いスピーカ924に出力する。   In the voice call mode, the voice signal generated by the microphone 925 is converted into voice data and compressed by the voice codec 923 and supplied to the communication unit 922. The communication unit 922 performs transmission processing of audio data, frequency conversion processing, and the like to generate a transmission signal. The communication unit 922 supplies a transmission signal to the antenna 921 and transmits it to a base station (not shown). In addition, the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and supplies the obtained audio data to the audio codec 923. The audio codec 923 performs data expansion of the audio data and conversion to an analog audio signal and outputs the result to the speaker 924.

また、データ通信モードにおいて、メール送信を行う場合、制御部931は、操作部932の操作によって入力された文字データを受け付けて、入力された文字を表示部930に表示する。また、制御部931は、操作部932におけるユーザ指示等に基づいてメールデータを生成して通信部922に供給する。通信部922は、メールデータの変調処理や周波数変換処理等を行い、得られた送信信号をアンテナ921から送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、メールデータを復元する。このメールデータを、表示部930に供給して、メール内容の表示を行う。   In addition, when mail transmission is performed in the data communication mode, the control unit 931 accepts character data input by operating the operation unit 932 and displays the input characters on the display unit 930. In addition, the control unit 931 generates mail data based on a user instruction or the like in the operation unit 932 and supplies the mail data to the communication unit 922. The communication unit 922 performs mail data modulation processing, frequency conversion processing, and the like, and transmits the obtained transmission signal from the antenna 921. In addition, the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and restores mail data. This mail data is supplied to the display unit 930 to display the mail contents.

なお、携帯電話機92は、受信したメールデータを、記録再生部929で記憶媒体に記憶させることも可能である。記憶媒体は、書き換え可能な任意の記憶媒体である。例えば、記憶媒体は、RAMや内蔵型フラッシュメモリ等の半導体メモリ、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアである。   Note that the mobile phone 92 can also store the received mail data in a storage medium by the recording / playback unit 929. The storage medium is any rewritable storage medium. For example, the storage medium is a removable medium such as a semiconductor memory such as a RAM or a built-in flash memory, a hard disk, a magnetic disk, a magneto-optical disk, an optical disk, a USB memory, or a memory card.

データ通信モードにおいて画像データを送信する場合、カメラ部926で生成された画像データを、画像処理部927に供給する。画像処理部927は、画像データの符号化処理を行い符号化データを生成する。   When transmitting image data in the data communication mode, the image data generated by the camera unit 926 is supplied to the image processing unit 927. The image processing unit 927 performs encoding processing of image data and generates encoded data.

多重分離部928は、画像処理部927で生成された符号化データと、音声コーデック923から供給された音声データを所定の方式で多重化して通信部922に供給する。通信部922は、多重化データの変調処理や周波数変換処理等を行い、得られた送信信号をアンテナ921から送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、多重化データを復元する。この多重化データを多重分離部928に供給する。多重分離部928は、多重化データの分離を行い、符号化データを画像処理部927、音声データを音声コーデック923に供給する。画像処理部927は、符号化データの復号化処理を行い画像データを生成する。この画像データを表示部930に供給して、受信した画像の表示を行う。音声コーデック923は、音声データをアナログ音声信号に変換してスピーカ924に供給して、受信した音声を出力する。   The demultiplexing unit 928 multiplexes the encoded data generated by the image processing unit 927 and the audio data supplied from the audio codec 923 by a predetermined method, and supplies the multiplexed data to the communication unit 922. The communication unit 922 performs modulation processing and frequency conversion processing of multiplexed data, and transmits the obtained transmission signal from the antenna 921. In addition, the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and restores multiplexed data. This multiplexed data is supplied to the demultiplexing unit 928. The demultiplexing unit 928 performs demultiplexing of the multiplexed data, and supplies the encoded data to the image processing unit 927 and the audio data to the audio codec 923. The image processing unit 927 performs a decoding process on the encoded data to generate image data. The image data is supplied to the display unit 930 and the received image is displayed. The audio codec 923 converts the audio data into an analog audio signal, supplies the analog audio signal to the speaker 924, and outputs the received audio.

このように構成された携帯電話装置では、画像処理部927に本願の画像符号化装置(画像符号化方法)や画像復号化装置(画像復号化方法)の機能が設けられる。したがって、画像データの通信を行う際に、符号化効率や画質を改善することができる。   In the cellular phone device configured as described above, the image processing unit 927 is provided with the functions of the image encoding device (image encoding method) and the image decoding device (image decoding method) of the present application. Therefore, encoding efficiency and image quality can be improved when communicating image data.

図23は、本発明を適用した記録再生装置の概略構成を例示している。記録再生装置94は、例えば受信した放送番組のオーディオデータとビデオデータを、記録媒体に記録して、その記録されたデータをユーザの指示に応じたタイミングでユーザに提供する。また、記録再生装置94は、例えば他の装置からオーディオデータやビデオデータを取得し、それらを記録媒体に記録させることもできる。さらに、記録再生装置94は、記録媒体に記録されているオーディオデータやビデオデータを復号して出力することで、モニタ装置等において画像表示や音声出力を行うことができるようにする。   FIG. 23 illustrates a schematic configuration of a recording / reproducing apparatus to which the present invention is applied. The recording / reproducing apparatus 94 records, for example, audio data and video data of a received broadcast program on a recording medium, and provides the recorded data to the user at a timing according to a user instruction. The recording / reproducing device 94 can also acquire audio data and video data from another device, for example, and record them on a recording medium. Furthermore, the recording / reproducing device 94 decodes and outputs the audio data and video data recorded on the recording medium, thereby enabling image display and audio output on the monitor device or the like.

記録再生装置94は、チューナ941、外部インタフェース部942、エンコーダ943、HDD(Hard Disk Drive)部944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)部948、制御部949、ユーザインタフェース部950を有している。   The recording / reproducing apparatus 94 includes a tuner 941, an external interface unit 942, an encoder 943, an HDD (Hard Disk Drive) unit 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) unit 948, a control unit 949, A user interface unit 950 is included.

チューナ941は、図示しないアンテナで受信された放送信号から所望のチャンネルを選局する。チューナ941は、所望のチャンネルの受信信号を復調して得られた符号化ビットストリームをセレクタ946に出力する。   The tuner 941 selects a desired channel from a broadcast signal received by an antenna (not shown). The tuner 941 outputs an encoded bit stream obtained by demodulating the received signal of a desired channel to the selector 946.

外部インタフェース部942は、IEEE1394インタフェース、ネットワークインタフェース部、USBインタフェース、フラッシュメモリインタフェース等の少なくともいずれかで構成されている。外部インタフェース部942は、外部機器やネットワーク、メモリカード等と接続するためのインタフェースであり、記録する映像データや音声データ等のデータ受信を行う。   The external interface unit 942 includes at least one of an IEEE 1394 interface, a network interface unit, a USB interface, a flash memory interface, and the like. The external interface unit 942 is an interface for connecting to an external device, a network, a memory card, and the like, and receives data such as video data and audio data to be recorded.

エンコーダ943は、外部インタフェース部942から供給された映像データや音声データが符号化されていないとき所定の方式で符号化を行い、符号化ビットストリームをセレクタ946に出力する。   The encoder 943 performs encoding by a predetermined method when the video data and audio data supplied from the external interface unit 942 are not encoded, and outputs an encoded bit stream to the selector 946.

HDD部944は、映像や音声等のコンテンツデータ、各種プログラムやその他のデータ等を内蔵のハードディスクに記録し、また再生時等にそれらを当該ハードディスクから読み出す。   The HDD unit 944 records content data such as video and audio, various programs, and other data on a built-in hard disk, and reads them from the hard disk at the time of reproduction or the like.

ディスクドライブ945は、装着されている光ディスクに対する信号の記録および再生を行う。光ディスク、例えばDVDディスク(DVD−Video、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+RW等)やBlu−rayディスク等である。   The disk drive 945 records and reproduces signals with respect to the mounted optical disk. An optical disk such as a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.), a Blu-ray disk, or the like.

セレクタ946は、映像や音声の記録時には、チューナ941またはエンコーダ943からのいずれかの符号化ビットストリームを選択して、HDD部944やディスクドライブ945のいずれかに供給する。また、セレクタ946は、映像や音声の再生時に、HDD部944またはディスクドライブ945から出力された符号化ビットストリームをデコーダ947に供給する。   The selector 946 selects one of the encoded bit streams from the tuner 941 or the encoder 943 and supplies it to either the HDD unit 944 or the disk drive 945 when recording video or audio. Further, the selector 946 supplies the encoded bit stream output from the HDD unit 944 or the disk drive 945 to the decoder 947 at the time of reproduction of video and audio.

デコーダ947は、符号化ビットストリームの復号化処理を行う。デコーダ947は、復号処理化を行うことにより生成された映像データをOSD部948に供給する。また、デコーダ947は、復号処理化を行うことにより生成された音声データを出力する。   The decoder 947 performs a decoding process on the encoded bitstream. The decoder 947 supplies the video data generated by performing the decoding process to the OSD unit 948. The decoder 947 outputs audio data generated by performing the decoding process.

OSD部948は、項目の選択などのメニュー画面等を表示するための映像データを生成し、それをデコーダ947から出力された映像データに重畳して出力する。   The OSD unit 948 generates video data for displaying a menu screen for selecting an item and the like, and superimposes the video data on the video data output from the decoder 947 and outputs the video data.

制御部949には、ユーザインタフェース部950が接続されている。ユーザインタフェース部950は、操作スイッチやリモートコントロール信号受信部等で構成されており、ユーザ操作に応じた操作信号を制御部949に供給する。   A user interface unit 950 is connected to the control unit 949. The user interface unit 950 includes an operation switch, a remote control signal receiving unit, and the like, and supplies an operation signal corresponding to a user operation to the control unit 949.

制御部949は、CPUやメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータを記憶する。メモリに記憶されているプログラムは、記録再生装置94の起動時などの所定のタイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、記録再生装置94がユーザ操作に応じた動作となるように各部を制御する。   The control unit 949 is configured using a CPU, a memory, and the like. The memory stores programs executed by the CPU and various data necessary for the CPU to perform processing. The program stored in the memory is read and executed by the CPU at a predetermined timing such as when the recording / reproducing apparatus 94 is activated. The CPU executes the program to control each unit so that the recording / reproducing device 94 operates in accordance with the user operation.

このように構成された記録再生装置では、エンコーダ943に本願の画像符号化装置(画像符号化方法)の機能、デコーダ947に画像復号化装置(画像復号化方法)の機能が設けられて、符号化効率や画質を改善して、映像の記録再生を効率よく行うことができる。   In the recording / reproducing apparatus configured as described above, the encoder 943 is provided with the function of the image encoding apparatus (image encoding method) of the present application, and the decoder 947 is provided with the function of the image decoding apparatus (image decoding method). Video recording and reproduction can be performed efficiently by improving the efficiency and image quality.

図24は、本発明を適用した撮像装置の概略構成を例示している。撮像装置96は、被写体を撮像し、被写体の画像を表示部に表示させたり、それを画像データとして、記録媒体に記録する。   FIG. 24 illustrates a schematic configuration of an imaging apparatus to which the present invention is applied. The imaging device 96 images a subject and displays an image of the subject on a display unit, or records it on a recording medium as image data.

撮像装置96は、光学ブロック961、撮像部962、カメラ信号処理部963、画像データ処理部964、表示部965、外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、制御部970を有している。また、制御部970には、ユーザインタフェース部971が接続されている。さらに、画像データ処理部964や外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、制御部970等は、バス972を介して接続されている。   The imaging device 96 includes an optical block 961, an imaging unit 962, a camera signal processing unit 963, an image data processing unit 964, a display unit 965, an external interface unit 966, a memory unit 967, a media drive 968, an OSD unit 969, and a control unit 970. Have. In addition, a user interface unit 971 is connected to the control unit 970. Furthermore, the image data processing unit 964, the external interface unit 966, the memory unit 967, the media drive 968, the OSD unit 969, the control unit 970, and the like are connected via a bus 972.

光学ブロック961は、フォーカスレンズや絞り機構等を用いて構成されている。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCDまたはCMOSイメージセンサを用いて構成されており、光電変換によって光学像に応じた電気信号を生成してカメラ信号処理部963に供給する。   The optical block 961 is configured using a focus lens, a diaphragm mechanism, and the like. The optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962. The imaging unit 962 is configured using a CCD or CMOS image sensor, generates an electrical signal corresponding to the optical image by photoelectric conversion, and supplies the electrical signal to the camera signal processing unit 963.

カメラ信号処理部963は、撮像部962から供給された電気信号に対してニー補正やガンマ補正、色補正等の種々のカメラ信号処理を行う。カメラ信号処理部963は、カメラ信号処理後の画像データを画像データ処理部964に供給する。   The camera signal processing unit 963 performs various camera signal processes such as knee correction, gamma correction, and color correction on the electrical signal supplied from the imaging unit 962. The camera signal processing unit 963 supplies the image data after the camera signal processing to the image data processing unit 964.

画像データ処理部964は、カメラ信号処理部963から供給された画像データの符号化処理を行う。画像データ処理部964は、符号化処理を行うことにより生成された符号化データを外部インタフェース部966やメディアドライブ968に供給する。また、画像データ処理部964は、外部インタフェース部966やメディアドライブ968から供給された符号化データの復号化処理を行う。画像データ処理部964は、復号化処理を行うことにより生成された画像データを表示部965に供給する。また、画像データ処理部964は、カメラ信号処理部963から供給された画像データを表示部965に供給する処理や、OSD部969から取得した表示用データを、画像データに重畳させて表示部965に供給する。   The image data processing unit 964 performs an encoding process on the image data supplied from the camera signal processing unit 963. The image data processing unit 964 supplies the encoded data generated by performing the encoding process to the external interface unit 966 and the media drive 968. Further, the image data processing unit 964 performs a decoding process on the encoded data supplied from the external interface unit 966 and the media drive 968. The image data processing unit 964 supplies the image data generated by performing the decoding process to the display unit 965. Further, the image data processing unit 964 superimposes the processing for supplying the image data supplied from the camera signal processing unit 963 to the display unit 965 and the display data acquired from the OSD unit 969 on the image data. To supply.

OSD部969は、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを生成して画像データ処理部964に出力する。   The OSD unit 969 generates display data such as a menu screen or an icon made up of symbols, characters, or graphics and outputs it to the image data processing unit 964.

外部インタフェース部966は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタと接続される。また、外部インタフェース部966には、必要に応じてドライブが接続され、磁気ディスク、光ディスク等のリムーバブルメディアが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、インストールされる。さらに、外部インタフェース部966は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。制御部970は、例えば、ユーザインタフェース部971からの指示にしたがって、メモリ部967から符号化データを読み出し、それを外部インタフェース部966から、ネットワークを介して接続される他の装置に供給させることができる。また、制御部970は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース部966を介して取得し、それを画像データ処理部964に供給したりすることができる。   The external interface unit 966 includes, for example, a USB input / output terminal, and is connected to a printer when printing an image. In addition, a drive is connected to the external interface unit 966 as necessary, a removable medium such as a magnetic disk or an optical disk is appropriately mounted, and a computer program read from them is installed as necessary. Furthermore, the external interface unit 966 has a network interface connected to a predetermined network such as a LAN or the Internet. For example, the control unit 970 reads the encoded data from the memory unit 967 in accordance with an instruction from the user interface unit 971, and supplies the encoded data to the other device connected via the network from the external interface unit 966. it can. Also, the control unit 970 may acquire encoded data and image data supplied from another device via the network via the external interface unit 966 and supply the acquired data to the image data processing unit 964. it can.

メディアドライブ968で駆動される記録メディアとしては、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアが用いられる。また、記録メディアは、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であってもよい。   As a recording medium driven by the media drive 968, any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory is used. The recording medium may be any type of removable medium, and may be a tape device, a disk, or a memory card. Of course, a non-contact IC card or the like may be used.

また、メディアドライブ968と記録メディアを一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。   Further, the media drive 968 and the recording medium may be integrated and configured by a non-portable storage medium such as a built-in hard disk drive or an SSD (Solid State Drive).

制御部970は、CPUやメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータ等を記憶する。メモリに記憶されているプログラムは、撮像装置96の起動時などの所定のタイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、撮像装置96がユーザ操作に応じた動作となるように各部を制御する。   The control unit 970 is configured using a CPU, a memory, and the like. The memory stores programs executed by the CPU, various data necessary for the CPU to perform processing, and the like. The program stored in the memory is read and executed by the CPU at a predetermined timing such as when the imaging device 96 is activated. The CPU executes the program to control each unit so that the imaging device 96 operates according to the user operation.

このように構成された撮像装置では、画像データ処理部964に本願の画像符号化装置(画像符号化方法)や画像復号化装置(画像復号化方法)の機能が設けられる。したがって、撮像画像をメモリ部967や記録メディア等に記録する際に、符号化効率や画質の改善をはかり撮像画像の記録再生を効率よく行うことができる。   In the imaging device configured as described above, the image data processing unit 964 is provided with the functions of the image encoding device (image encoding method) and the image decoding device (image decoding method) of the present application. Therefore, when the captured image is recorded in the memory unit 967, a recording medium, or the like, it is possible to improve the encoding efficiency and the image quality and efficiently record and reproduce the captured image.

さらに、本発明は、上述した発明の実施の形態に限定して解釈されるべきではない。例えば、上述のマクロブロックサイズや変換ブロックサイズおよび予測モードに限定されるべきではない。この発明の実施の形態は、例示という形態で本発明を開示しており、本発明の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。   Furthermore, the present invention should not be construed as being limited to the above-described embodiments. For example, it should not be limited to the above-described macroblock size, transform block size, and prediction mode. The embodiments of the present invention disclose the present invention in the form of examples, and it is obvious that those skilled in the art can make modifications and substitutions of the embodiments without departing from the gist of the present invention. That is, in order to determine the gist of the present invention, the claims should be taken into consideration.

この発明の画像復号化装置と画像符号化装置およびその方法とプログラムでは、画像データの符号化時に行われる直交変換において、マクロブロック内における変換ブロックのブロック位置に応じて予め設定されている基底を用いて直交変換が行われる。また、ブロック位置に応じて予め設定されている基底を用いて直交変換を行うことに得られた係数データを処理して生成された符号化ビットストリームの復号化において、符号化ビットストリームに含まれている符号化パラメータ情報で示されたマクロブロック内のブロック位置に応じて予め設定されている基底が用いられて、逆直交変換が行われて、直交変換後の係数データが直交変換前の予測誤差データに戻される。このように、マクロブロック内のブロック位置に応じた基底を用いて直交変換や逆直交変換が行われるので、ブロック位置に応じて最適化した変換を行うことが可能となり、符号化効率を改善することができる。したがって、MPEG、H.26x等のように、ブロック単位で符号化を行うことにより得られた画像情報(符号化ビットストリーム)を、衛星放送、ケーブルTV、インターネット、携帯電話などのネットワークメディアを介して送受信する際に、若しくは光、磁気ディスク、フラッシュメモリのような記憶メディア上で処理する際に用いられる画像復号化装置や画像符号化装置等に適している。   In the image decoding apparatus, the image encoding apparatus, the method and the program according to the present invention, in the orthogonal transform performed at the time of encoding image data, a base set in advance according to the block position of the transform block in the macro block is set. To perform orthogonal transformation. In addition, in decoding of an encoded bitstream generated by processing coefficient data obtained by performing orthogonal transformation using a base set in advance according to a block position, it is included in the encoded bitstream. The base set in advance according to the block position in the macroblock indicated by the encoding parameter information is used, inverse orthogonal transformation is performed, and the coefficient data after orthogonal transformation is predicted before orthogonal transformation. Returned to error data. As described above, since orthogonal transform and inverse orthogonal transform are performed using a base corresponding to the block position in the macroblock, it is possible to perform a transform optimized according to the block position and improve coding efficiency. be able to. Therefore, image information (encoded bitstream) obtained by performing encoding in block units, such as MPEG and H.26x, is transmitted via network media such as satellite broadcasting, cable TV, the Internet, and cellular phones. Therefore, the present invention is suitable for an image decoding device, an image encoding device, or the like used when transmitting / receiving data or processing on a storage medium such as an optical, magnetic disk, or flash memory.

10・・画像符号化装置、11・・・A/D変換部、12,57・・・画面並べ替えバッファ、13・・・減算部、14・・・直交変換部、15・・・量子化部、16・・・可逆符号化部、17,51・・・蓄積バッファ、18・・・レート制御部、21,53・・・逆量子化部、22,54・・・逆直交変換部、23,55・・・加算部、24,56・・・デブロッキングフィルタ、27,61・・・フレームメモリ、31,62・・・イントラ予測部、32,63・・・動き予測・補償部、33・・・予測画像・最適モード選択部、50・・・画像復号化装置、52・・・可逆復号化部、58・・・D/A変換部、64,946・・・セレクタ、90・・・テレビジョン装置、92・・・携帯電話機、94・・・記録再生装置、96・・・撮像装置、141・・・16×16KL変換部、142・・・8×8KL変換部、143,146・・・2×2KL変換部、144,145・・・4×4KL変換部、147・・・DCT部、148・・・係数選択部、541・・・16×16KL逆変換部、542,545・・・2×2KL逆変換部、543・・・8×8KL逆変換部、544,546・・・KL逆変換部、547・・・IDCT部、548・・・データ選択部、901、921・・・アンテナ、902、941・・・チューナ、903・・・デマルチプレクサ、904,947・・・デコーダ、905・・・映像信号処理部、906・・・表示部、907・・・音声信号処理部、908・・・スピーカ、909、942、966・・・外部インタフェース部、910、931,949,970・・・制御部、911,932,971・・・ユーザインタフェース部、912,933,972・・・バス、922・・・通信部、923・・・音声コーデック、924・・・スピーカ、925・・・マイクロホン、926・・・カメラ部、927・・・画像処理部、928・・・多重分離部、929・・・記録再生部、930・・・表示部、943・・・エンコーダ、944・・・HDD部、945・・・ディスクドライブ、948、969・・・OSD部、961・・・光学ブロック、962・・・撮像部、963・・・カメラ信号処理部、964・・・画像データ処理部、965・・・表示部、967・・・メモリ部、968・・・メディアドライブ DESCRIPTION OF SYMBOLS 10 ... Image encoding apparatus, 11 ... A / D conversion part, 12, 57 ... Screen rearrangement buffer, 13 ... Subtraction part, 14 ... Orthogonal transformation part, 15 ... Quantization , 16... Lossless encoding unit, 17, 51... Accumulation buffer, 18... Rate control unit, 21, 53, inverse quantization unit, 22, 54, inverse orthogonal transform unit, 23, 55 ... addition unit, 24, 56 ... deblocking filter, 27, 61 ... frame memory, 31, 62 ... intra prediction unit, 32, 63 ... motion prediction / compensation unit, 33 ... predicted image / optimum mode selection unit, 50 ... image decoding device, 52 ... lossless decoding unit, 58 ... D / A conversion unit, 64, 946 ... selector, 90 ..Television device, 92... Mobile phone, 94. Imaging device, 141... 16 × 16 KL converter, 142... 8 × 8 KL converter, 143, 146... 2 × 2 KL converter, 144, 145... 4 × 4 KL converter, 147. DCT section, 148... Coefficient selection section, 541... 16 × 16 KL inverse transform section, 542, 545... 2 × 2 KL inverse transform section, 543... 8 × 8 KL inverse transform section, 544, 546 KL inverse transform unit, 547 ... IDCT unit, 548 ... data selection unit, 901, 921 ... antenna, 902, 941 ... tuner, 903 ... demultiplexer, 904, 947 ..Decoder, 905 ... Video signal processing unit, 906 ... Display unit, 907 ... Audio signal processing unit, 908 ... Speaker, 909, 942, 966 ... External interface unit, 910,931 , 949, 970 ... control unit, 911, 932, 971 ... user interface unit, 912, 933, 972 ... bus, 922 ... communication unit, 923 ... voice codec, 924 ... Speaker, 925 ... Microphone, 926 ... Camera part, 927 ... Image processing part, 928 ... Demultiplexing part, 929 ... Recording / reproducing part, 930 ... Display part, 943 ... Encoder, 944... HDD section, 945... Disk drive, 948, 969... OSD section, 961... Optical block, 962. ..Image data processing unit, 965... Display unit, 967... Memory unit, 968.

Claims (16)

画像データと予測画像データとの誤差である予測誤差データを、変換ブロック毎に直交変換して、該直交変換後の係数データを処理して生成された符号化ビットストリームから前記画像データを復号する画像復号化装置において、
前記符号化ビットストリームを処理して、前記直交変換後の係数データと符号化パラメータ情報を得るデータ処理部と、
前記符号化パラメータ情報で示されたマクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記係数データの逆直交変換を行い予測誤差データを得る逆直交変換部と、
前記予測画像データを生成する予測画像データ生成部と、
前記逆直交変換部で得られた前記予測誤差データに前記予測画像データ生成部で生成された予測画像データを加算して前記画像データを復号する加算部と
を有する画像復号化装置。
Prediction error data, which is an error between image data and predicted image data, is orthogonally transformed for each transform block, and the image data is decoded from an encoded bitstream generated by processing the coefficient data after the orthogonal transformation. In the image decoding device,
A data processing unit that processes the encoded bitstream to obtain coefficient data and encoding parameter information after the orthogonal transformation;
An inverse orthogonal transform unit that obtains prediction error data by performing inverse orthogonal transform of the coefficient data using a base set in advance according to the position of the transform block in the macroblock indicated by the encoding parameter information ,
A predicted image data generation unit that generates the predicted image data;
An image decoding apparatus comprising: an addition unit configured to add the prediction image data generated by the prediction image data generation unit to the prediction error data obtained by the inverse orthogonal transform unit and decode the image data.
前記逆直交変換部は、前記変換ブロックの位置と前記符号化パラメータ情報で示された予測モードに応じて、予め設定されている基底を用いて前記逆直交変換を行う請求項1記載の画像復号化装置。   The image decoding according to claim 1, wherein the inverse orthogonal transform unit performs the inverse orthogonal transform using a base set in advance according to a position of the transform block and a prediction mode indicated by the encoding parameter information. Device. 前記逆直交変換部は、前記符号化パラメータ情報に基づきマクロブロックに変換ブロックが複数含まれるとき、前記マクロブロックに含まれる各変換ブロックの直交変換後の最も低い周波数成分の係数データについての直交変換後の係数データに対して、予測モードに応じて予め設定されている基底を用いて前記逆直交変換を行う請求項2記載の画像復号化装置。   The inverse orthogonal transform unit, when a plurality of transform blocks are included in a macroblock based on the coding parameter information, performs orthogonal transform on coefficient data of the lowest frequency component after orthogonal transform of each transform block included in the macroblock The image decoding apparatus according to claim 2, wherein the inverse orthogonal transformation is performed on the subsequent coefficient data using a base set in advance according to a prediction mode. 前記逆直交変換部で用いられる基底は、前記予測誤差データを変換ブロック毎に直交変換したときに用いられる基底の逆行例である請求項2記載の画像復号化装置。   The image decoding apparatus according to claim 2, wherein the base used in the inverse orthogonal transform unit is an inverse example of a base used when the prediction error data is orthogonally transformed for each transform block. 前記逆直交変換部は、前記基底を用いてカルーネン・レーベ逆変換を行う請求項1記載の画像復号化装置。   The image decoding device according to claim 1, wherein the inverse orthogonal transform unit performs Karoonen-Labe inverse transform using the base. 画像データと予測画像データとの誤差である予測誤差データを、変換ブロック毎に直交変換して、該直交変換後の係数データを処理して生成された符号化ビットストリームから前記画像データを復号する画像復号化方法において、
前記符号化ビットストリームを処理して、前記直交変換後の係数データと符号化パラメータ情報を得るデータ処理工程と、
前記符号化パラメータ情報で示されたマクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記係数データの逆直交変換を行い予測誤差を得る逆直交変換工程と、
前記予測画像データを生成する予測画像データ生成工程と、
前記逆直交変換部で得られた前記予測誤差に前記生成された予測画像データを加算して前記画像データを復号する加算工程と
を設けた画像復号化方法。
Prediction error data, which is an error between image data and predicted image data, is orthogonally transformed for each transform block, and the image data is decoded from an encoded bitstream generated by processing the coefficient data after the orthogonal transformation. In the image decoding method,
A data processing step of processing the encoded bitstream to obtain coefficient data and encoding parameter information after the orthogonal transformation;
An inverse orthogonal transform step for obtaining a prediction error by performing inverse orthogonal transform of the coefficient data using a preset basis according to the position of the transform block in the macroblock indicated by the encoding parameter information;
A predicted image data generation step of generating the predicted image data;
An image decoding method comprising: an addition step of decoding the image data by adding the generated predicted image data to the prediction error obtained by the inverse orthogonal transform unit.
画像データと予測画像データとの誤差である予測誤差データを、変換ブロック毎に直交変換して、該直交変換後の係数データを処理して生成された符号化ビットストリームから前記画像データを復号する画像符号化をコンピュータで実行させるプログラムであって、
前記符号化ビットストリームを処理して、前記直交変換後の係数データと符号化パラメータ情報を得るデータ処理手順と、
前記符号化パラメータ情報で示されたマクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記係数データの逆直交変換を行い予測誤差を得る逆直交変換手順と、
前記予測画像データを生成する予測画像データ生成手順と、
前記逆直交変換部で得られた前記予測誤差に前記生成された予測画像データを加算して前記画像データを復号する加算手順と
を前記コンピュータで実行させるプログラム。
Prediction error data, which is an error between image data and predicted image data, is orthogonally transformed for each transform block, and the image data is decoded from an encoded bitstream generated by processing the coefficient data after the orthogonal transformation. A program for causing a computer to execute image encoding,
A data processing procedure for processing the encoded bit stream to obtain coefficient data and encoding parameter information after the orthogonal transformation;
An inverse orthogonal transform procedure for obtaining a prediction error by performing an inverse orthogonal transform of the coefficient data using a preset basis according to the position of the transform block in the macroblock indicated by the encoding parameter information;
A predicted image data generation procedure for generating the predicted image data;
A program for causing the computer to execute an addition procedure for adding the generated predicted image data to the prediction error obtained by the inverse orthogonal transform unit and decoding the image data.
画像データの符号化を行う画像符号化装置において、
前記画像データの予測画像データを生成する予測部と、
前記画像データと前記予測画像データとの誤差である予測誤差データを生成する減算部と、
前記予測誤差の直交変換を変換ブロック毎に行い、マクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記直交変換を行う直交変換部と、
前記直交変換部の出力データを処理して符号化ビットストリームを生成するデータ処理部と
を有する画像符号化装置。
In an image encoding device that encodes image data,
A prediction unit that generates predicted image data of the image data;
A subtraction unit that generates prediction error data that is an error between the image data and the predicted image data;
An orthogonal transform unit that performs orthogonal transform of the prediction error for each transform block, and performs the orthogonal transform using a preset base according to the position of the transform block in a macroblock;
An image encoding apparatus comprising: a data processing unit that processes output data of the orthogonal transform unit to generate an encoded bit stream.
前記直交変換部は、前記変換ブロックの位置と前記予測部で前記予測画像データの生成を行ったときの予測モードに応じて、予め設定されている基底を用いて前記直交変換を行う請求項8記載の画像符号化装置。   The said orthogonal transformation part performs the said orthogonal transformation using the base currently preset according to the position of the said transformation | conversion block, and the prediction mode when the said prediction part produces | generates the said prediction image data. The image encoding device described. 前記直交変換部は、前記マクロブロックに含まれる変換ブロックが複数であるとき、マクロブロックに含まれる各変換ブロックの直交変換後の最も低い周波数成分の係数を用いたブロックについて、前記予測モードに応じて、予め設定されている基底を用いて直交変換を行う請求項9記載の画像符号化装置。   The orthogonal transform unit, when there are a plurality of transform blocks included in the macro block, according to the prediction mode for a block using the coefficient of the lowest frequency component after orthogonal transform of each transform block included in the macro block The image encoding device according to claim 9, wherein orthogonal transformation is performed using a preset basis. 前記直交変換部で用いられる基底は、予め用意されている複数の画像を用いて、前記マクロブロックサイズ、前記変換ブロックサイズ、前記マクロブロック内における変換ブロックの位置、および前記予測モード毎の各変換ブロック内の予測誤差データから算出した行列の固有値に対応する固有ベクトルである請求項9記載の画像符号化装置。   The base used in the orthogonal transform unit uses a plurality of images prepared in advance, the macroblock size, the transform block size, the position of the transform block in the macroblock, and each transform for each prediction mode The image encoding device according to claim 9, wherein the image encoding device is an eigenvector corresponding to an eigenvalue of a matrix calculated from prediction error data in a block. 前記直交変換部で用いられる基底は、基底間の距離に応じてグループ化されている請求項11記載の画像符号化装置。   The image encoding device according to claim 11, wherein the bases used in the orthogonal transform unit are grouped according to a distance between the bases. 前記直交変換部で用いられる基底は、参照画素からの距離に応じてグループ化されている請求項11記載の画像符号化装置。   The image encoding device according to claim 11, wherein bases used in the orthogonal transform unit are grouped according to a distance from a reference pixel. 前記直交変換部は、前記基底を用いてカルーネン・レーベ変換を行う請求項8記載の画像符号化装置。   The image encoding device according to claim 8, wherein the orthogonal transform unit performs Karoonen-Loeve transform using the base. 画像データの符号化を行う画像符号化方法において、
前記画像データの予測画像データを生成する予測画像データ生成工程と、
前記画像データと前記予測画像データとの誤差である予測誤差データを生成する減算工程と、
前記予測誤差の直交変換を変換ブロック毎に行い、マクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記直交変換を行う直交変換工程と
を設けた画像符号化方法。

In an image encoding method for encoding image data,
A predicted image data generation step of generating predicted image data of the image data;
A subtraction step of generating prediction error data that is an error between the image data and the predicted image data;
An image encoding provided with an orthogonal transform step for performing orthogonal transform of the prediction error for each transform block, and performing the orthogonal transform using a preset base according to the position of the transform block in a macro block Method.

画像データの符号化をコンピュータで実行させるプログラムであって、
前記画像データの予測画像データを生成する予測画像データ生成手順と、
前記画像データと前記予測画像データとの誤差である予測誤差データを生成する減算手順と、
前記予測誤差の直交変換を変換ブロック毎に行い、マクロブロック内における前記変換ブロックの位置に応じて、予め設定されている基底を用いて前記直交変換を行う直交変換手順と
を前記コンピュータで実行させるプログラム。
A program for causing a computer to execute encoding of image data,
A predicted image data generation procedure for generating predicted image data of the image data;
A subtraction procedure for generating prediction error data that is an error between the image data and the predicted image data;
Performing orthogonal transform of the prediction error for each transform block, and causing the computer to execute an orthogonal transform procedure for performing the orthogonal transform using a preset base according to the position of the transform block in a macro block. program.
JP2010131891A 2010-06-09 2010-06-09 Image decoding device, image encoding device, and method and program thereof Withdrawn JP2011259205A (en)

Priority Applications (14)

Application Number Priority Date Filing Date Title
JP2010131891A JP2011259205A (en) 2010-06-09 2010-06-09 Image decoding device, image encoding device, and method and program thereof
KR20127031223A KR20130090322A (en) 2010-06-09 2011-05-25 Image decoder apparatus, image encoder apparatus and methods and programs thereof
CN201510422994.0A CN105025295B (en) 2010-06-09 2011-05-25 Picture coding device and image encoding method
RU2012151530/08A RU2012151530A (en) 2010-06-09 2011-05-25 IMAGE DECODING DEVICE, IMAGE CODING DEVICE, METHOD AND PROGRAM FOR DECODING AND ENCODING AN IMAGE
CN201510424195.7A CN105049859B (en) 2010-06-09 2011-05-25 Picture decoding apparatus and picture decoding method
PCT/JP2011/061974 WO2011155332A1 (en) 2010-06-09 2011-05-25 Image decoder apparatus, image encoder apparatus and methods and programs thereof
US13/701,319 US9053549B2 (en) 2010-06-09 2011-05-25 Image decoding apparatus, image encoding apparatus, and method and program for image decoding and encoding
BR112012030544A BR112012030544A2 (en) 2010-06-09 2011-05-25 image decoding apparatus and method, program, and image encoding apparatus and method
CN201180027201.5A CN102918843B (en) 2010-06-09 2011-05-25 Picture decoding apparatus, picture coding device and for the method for image decoding and coding and program
EP11792289.8A EP2582137A1 (en) 2010-06-09 2011-05-25 Image decoder apparatus, image encoder apparatus and methods and programs thereof
TW100119435A TW201215156A (en) 2010-06-09 2011-06-02 Image decoding device, image encoding device, and method and program thereof
US14/720,265 US9596476B2 (en) 2010-06-09 2015-05-22 Image decoding apparatus, image encoding apparatus, and method and program for image decoding and encoding
US15/432,338 US9979982B2 (en) 2010-06-09 2017-02-14 Image decoding apparatus, image encoding apparatus, and method and program for image decoding and encoding
US15/960,370 US10499083B2 (en) 2010-06-09 2018-04-23 Image decoding apparatus, image encoding apparatus, and method and program for image decoding and encoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010131891A JP2011259205A (en) 2010-06-09 2010-06-09 Image decoding device, image encoding device, and method and program thereof

Publications (1)

Publication Number Publication Date
JP2011259205A true JP2011259205A (en) 2011-12-22

Family

ID=45097940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010131891A Withdrawn JP2011259205A (en) 2010-06-09 2010-06-09 Image decoding device, image encoding device, and method and program thereof

Country Status (9)

Country Link
US (4) US9053549B2 (en)
EP (1) EP2582137A1 (en)
JP (1) JP2011259205A (en)
KR (1) KR20130090322A (en)
CN (3) CN105049859B (en)
BR (1) BR112012030544A2 (en)
RU (1) RU2012151530A (en)
TW (1) TW201215156A (en)
WO (1) WO2011155332A1 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8625914B2 (en) * 2013-02-04 2014-01-07 Sony Corporation Image processing system, image processing method and program
CN106131557A (en) * 2010-06-07 2016-11-16 数码士有限公司 The method and apparatus of decoding high resolution image
JP2011259205A (en) 2010-06-09 2011-12-22 Sony Corp Image decoding device, image encoding device, and method and program thereof
KR20120035096A (en) * 2010-10-04 2012-04-13 한국전자통신연구원 A method and apparatus of side information signaling for quadtree transform
US8923633B2 (en) * 2011-03-07 2014-12-30 Panasonic Intellectual Property Corporation Of America Image decoding method, image coding method, image decoding apparatus, and image coding apparatus
TWI568246B (en) * 2012-02-29 2017-01-21 新力股份有限公司 Image processing apparatus and method
CN103974076B (en) 2014-05-19 2018-01-12 华为技术有限公司 Image coding/decoding method and equipment, system
US10139480B2 (en) * 2016-02-19 2018-11-27 Fujifilm Sonosite, Inc. Ultrasound transducer with data compression
KR102254162B1 (en) * 2016-05-12 2021-05-20 엘지전자 주식회사 Intra prediction method and apparatus in video coding system
EP4395313A1 (en) * 2016-12-28 2024-07-03 Sony Group Corporation Image processing apparatus and method
JP7493310B2 (en) * 2019-06-07 2024-05-31 キヤノン株式会社 Image decoding device, method, and program

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0846971A (en) * 1994-07-29 1996-02-16 Sharp Corp Device for encoding moving picture
JP3169783B2 (en) * 1995-02-15 2001-05-28 日本電気株式会社 Video encoding / decoding system
JP3788823B2 (en) * 1995-10-27 2006-06-21 株式会社東芝 Moving picture encoding apparatus and moving picture decoding apparatus
JP4014263B2 (en) * 1997-10-01 2007-11-28 松下電器産業株式会社 Video signal conversion apparatus and video signal conversion method
JP3519594B2 (en) * 1998-03-03 2004-04-19 Kddi株式会社 Encoding device for stereo video
JP4168304B2 (en) * 1999-09-16 2008-10-22 ソニー株式会社 Information output device, information notification method, and information signal supply route selection method
US6940911B2 (en) * 2000-03-14 2005-09-06 Victor Company Of Japan, Ltd. Variable picture rate coding/decoding method and apparatus
JP3887178B2 (en) * 2001-04-09 2007-02-28 株式会社エヌ・ティ・ティ・ドコモ Signal encoding method and apparatus, and decoding method and apparatus
JP4120301B2 (en) * 2002-04-25 2008-07-16 ソニー株式会社 Image processing apparatus and method
US7009655B2 (en) * 2002-07-23 2006-03-07 Mediostream, Inc. Method and system for direct recording of video information onto a disk medium
US20090118019A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
JP4617644B2 (en) * 2003-07-18 2011-01-26 ソニー株式会社 Encoding apparatus and method
JP2005130417A (en) * 2003-10-01 2005-05-19 Matsushita Electric Ind Co Ltd Conversion encoding method and conversion decoding method
JP2005272727A (en) * 2004-03-25 2005-10-06 Nippon Shokubai Co Ltd Aqueous resin dispersion and method for producing the same
KR101104828B1 (en) * 2004-12-09 2012-01-16 삼성전자주식회사 Motion vector operation apparatus and method thereof
JP2008004984A (en) * 2006-06-20 2008-01-10 Sony Corp Image processor and method, program, and recording medium
US20080008246A1 (en) * 2006-07-05 2008-01-10 Debargha Mukherjee Optimizing video coding
US8571104B2 (en) * 2007-06-15 2013-10-29 Qualcomm, Incorporated Adaptive coefficient scanning in video coding
JP4678015B2 (en) * 2007-07-13 2011-04-27 富士通株式会社 Moving picture coding apparatus and moving picture coding method
EP2051524A1 (en) * 2007-10-15 2009-04-22 Panasonic Corporation Image enhancement considering the prediction error
US8275033B2 (en) * 2008-01-15 2012-09-25 Sony Corporation Picture mode selection for video transcoding
JP2009194617A (en) * 2008-02-14 2009-08-27 Sony Corp Image processor, image processing method, program of image processing method and recording medium with program of image processing method recorded thereon
JP2009272727A (en) 2008-04-30 2009-11-19 Toshiba Corp Transformation method based on directivity of prediction error, image-encoding method and image-decoding method
WO2010143853A2 (en) * 2009-06-07 2010-12-16 엘지전자 주식회사 Method and apparatus for decoding a video signal
US20110090952A1 (en) * 2009-10-21 2011-04-21 Cohen Robert A Directional Transforms for Video and Image Coding
KR101441879B1 (en) * 2009-12-09 2014-09-23 에스케이텔레콤 주식회사 Video encoding apparatus and method, transform encoding apparatus and method, basis transform generating apparatus and method, and video decoding apparatus and method
KR20110090781A (en) * 2010-02-02 2011-08-10 (주)휴맥스 Method for encoding/decoding video for rate-distortion optimization and apparatus for performing the same
JP2011259205A (en) * 2010-06-09 2011-12-22 Sony Corp Image decoding device, image encoding device, and method and program thereof
HUE036472T2 (en) * 2010-07-09 2018-07-30 Samsung Electronics Co Ltd Method for entropy decoding transform coefficients
US9066097B2 (en) * 2011-02-01 2015-06-23 Sony Corporation Method to optimize the transforms and/or predictions in a video codec
JP5874725B2 (en) * 2011-05-20 2016-03-02 ソニー株式会社 Image processing apparatus and image processing method
KR20200023499A (en) * 2011-12-19 2020-03-04 소니 주식회사 Image processing device and method

Also Published As

Publication number Publication date
US20130071038A1 (en) 2013-03-21
CN105025295B (en) 2019-01-29
US20150281697A1 (en) 2015-10-01
CN105025295A (en) 2015-11-04
US20180242019A1 (en) 2018-08-23
CN105049859A (en) 2015-11-11
EP2582137A1 (en) 2013-04-17
RU2012151530A (en) 2014-07-20
TW201215156A (en) 2012-04-01
US9979982B2 (en) 2018-05-22
US20170164005A1 (en) 2017-06-08
CN105049859B (en) 2019-01-08
KR20130090322A (en) 2013-08-13
WO2011155332A1 (en) 2011-12-15
CN102918843A (en) 2013-02-06
US9053549B2 (en) 2015-06-09
CN102918843B (en) 2015-08-19
BR112012030544A2 (en) 2016-08-09
US9596476B2 (en) 2017-03-14
US10499083B2 (en) 2019-12-03

Similar Documents

Publication Publication Date Title
WO2011155332A1 (en) Image decoder apparatus, image encoder apparatus and methods and programs thereof
KR101914896B1 (en) Image processor and image processing method
KR101965119B1 (en) Image encoding apparatus and image encoding method
WO2011155364A1 (en) Image decoder apparatus, image encoder apparatus and method and program thereof
WO2014002896A1 (en) Encoding device, encoding method, decoding device, and decoding method
WO2011018965A1 (en) Image processing device and method
WO2012063878A1 (en) Image processing device, and image processing method
WO2010035732A1 (en) Image processing apparatus and image processing method
US20110229049A1 (en) Image processing apparatus, image processing method, and program
JP4360093B2 (en) Image processing apparatus and encoding apparatus and methods thereof
JP2013150164A (en) Encoding apparatus and encoding method, and decoding apparatus and decoding method
KR20130088119A (en) Encoding device, encoding method, decoding device, and decoding method
JP5387520B2 (en) Information processing apparatus and information processing method
JP4655791B2 (en) Encoding apparatus, encoding method and program thereof
JP2018191334A (en) Image coding device, image coding method, and program
JP2012138884A (en) Encoding device, encoding method, decoding device, and decoding method

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20130903