WO2010131422A1 - Image decoding apparatus, integrated circuit, image decoding method, and image decoding system - Google Patents

Image decoding apparatus, integrated circuit, image decoding method, and image decoding system Download PDF

Info

Publication number
WO2010131422A1
WO2010131422A1 PCT/JP2010/002806 JP2010002806W WO2010131422A1 WO 2010131422 A1 WO2010131422 A1 WO 2010131422A1 JP 2010002806 W JP2010002806 W JP 2010002806W WO 2010131422 A1 WO2010131422 A1 WO 2010131422A1
Authority
WO
WIPO (PCT)
Prior art keywords
macroblock
motion vector
wth
unit
decoding
Prior art date
Application number
PCT/JP2010/002806
Other languages
French (fr)
Japanese (ja)
Inventor
天野博史
Original Assignee
パナソニック株式会社
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 パナソニック株式会社 filed Critical パナソニック株式会社
Priority to CN2010800020700A priority Critical patent/CN102090066A/en
Priority to US13/003,391 priority patent/US9001893B2/en
Priority to JP2011513228A priority patent/JP5468604B2/en
Publication of WO2010131422A1 publication Critical patent/WO2010131422A1/en

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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/127Prioritisation of hardware or computational resources
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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

Abstract

When a motion vector of a co-located macroblock corresponding to a w-th macroblock is necessary for calculating the motion vector of the w-th macroblock, a transfer unit (130A) transfers the motion vector of the co-located macroblock from an external memory (200) to a buffer (124A). Further, when the motion vector of the co-located macroblock corresponding to the w-th macroblock is not necessary for calculating the motion vector of the w-th macroblock, the transfer unit (130A) does not transfer the motion vector of the co-located macroblock corresponding to the w-th macroblock from the external memory (200) to the buffer (124A).

Description

画像復号装置、集積回路、画像復号方法及び画像復号システムImage decoding apparatus, integrated circuit, image decoding method, and image decoding system
 本発明は、符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する画像復号装置、集積回路、画像復号方法及び画像復号システムに関する。 The present invention relates to an image decoding device, an integrated circuit, an image decoding method, and an image decoding system that sequentially decode a plurality of macroblocks constituting an encoded picture in a predetermined order.
 近年、マルチメディアアプリケーションの発展に伴い、動画像・静止画像・音声・テキストなどのコンテンツを統一的に扱うことが一般的になってきた。この時、全てのコンテンツをディジタル化することにより、統一的にコンテンツを扱うことが可能になる。しかしながら、ディジタル化された画像は膨大なデータ量を持つため、蓄積・伝送のためには、動画像の情報圧縮技術が不可欠である。 In recent years, with the development of multimedia applications, it has become common to handle content such as moving images, still images, audio, and text in a unified manner. At this time, by digitizing all the contents, the contents can be handled uniformly. However, since a digitized image has an enormous amount of data, a moving image information compression technique is indispensable for storage and transmission.
 その一方で、圧縮した動画像データを相互運用するためには、圧縮技術の標準化も重要である。以下においては、動画像圧縮技術の標準規格を、動画像圧縮標準規格という。動画像圧縮標準規格には、例えば、ITU-T(国際電気通信連合 電気通信標準化部門)のH.261、H.263などがある。また、動画像圧縮標準規格には、ISO/IEC(国際標準化機構 国際電気標準会議)のMPEG(Moving Picture Experts Group)-1、MPEG2、MPEG4などがある。また、動画像圧縮標準規格には、ITU-TとMPEGの合同であるJVT(Joint Video Team)のH.264/AVC(MPEG4-AVC)などがある。 On the other hand, in order to interoperate compressed video data, standardization of compression technology is also important. Hereinafter, the standard of the moving image compression technique is referred to as a moving image compression standard. Examples of the video compression standard include H.264 of ITU-T (International Telecommunication Union, Telecommunication Standardization Sector). 261, H.H. 263. The moving image compression standards include ISO / IEC (International Standards Organization, International Electrotechnical Commission) MPEG (Moving Picture Experts Group) -1, MPEG2, MPEG4, and the like. In addition, the moving image compression standard includes JVT (Joint Video で Team) H.264, which is a combination of ITU-T and MPEG. H.264 / AVC (MPEG4-AVC).
 このような動画像圧縮標準規格では、1つのピクチャを所定画素数のブロック(輝度成分:16画素×16画素)に分割し、当該ブロック単位で復号処理または符号化処理が行われる。この処理単位となるブロックをマクロブロックという。 In such a moving image compression standard, one picture is divided into blocks having a predetermined number of pixels (luminance component: 16 pixels × 16 pixels), and decoding processing or encoding processing is performed in units of the blocks. This block as a processing unit is called a macro block.
 また、動画像圧縮技術によっては、1つのマクロブロックを、さらに、所定画素数のサブブロック(輝度成分:8画素×8画素)に分割し、当該サブブロック単位で復号方法または符号化方法を切り替えることが可能である。この処理単位となるサブブロックをサブマクロブロックという。以下においては、マクロブロックまたはサブマクロブロックを総括的に、マクロブロックという。 Depending on the moving image compression technique, one macroblock is further divided into sub-blocks (luminance components: 8 pixels × 8 pixels) of a predetermined number of pixels, and the decoding method or the encoding method is switched in units of the sub-blocks. It is possible. A sub-block that is a unit of processing is called a sub-macro block. Hereinafter, the macroblock or the sub macroblock is collectively referred to as a macroblock.
 一般に、動画像圧縮符号化の重要な処理に、動画像を構成する連続した複数のピクチャ(画面)における時間方向の冗長性を削減することにより情報量の圧縮を行う動き補償面間予測がある。以下においては、符号化対象ピクチャの符号化において、参照されるピクチャを参照ピクチャという。 In general, an important process of moving image compression coding is motion compensation inter-plane prediction in which the amount of information is compressed by reducing redundancy in a time direction in a plurality of consecutive pictures (screens) constituting a moving image. . In the following, a picture that is referred to in coding of a picture to be coded is referred to as a reference picture.
 動き補償面間予測は、符号化対象ピクチャ内のマクロブロックが、参照ピクチャ内のどの方向にどの程度動いたかを検出して、予測画像の作成を行い、得られた予測画像と符号化対象ピクチャとの差分値に対して符号化を行う手法である。当該参照ピクチャは、表示順で符号化対象ピクチャの前方または後方のピクチャである。 In motion compensation inter-frame prediction, a prediction image is generated by detecting how much the macroblock in the encoding target picture has moved in which direction in the reference picture, and the obtained prediction image and the encoding target picture are obtained. This is a technique for performing encoding on the difference value. The reference picture is a picture in front of or behind the encoding target picture in display order.
 符号化対象ピクチャ内のマクロブロックが、参照ピクチャ内のどの方向にどの程度動いたかを示す情報を動きベクトルという。 Information indicating how much the macroblock in the encoding target picture has moved in which direction in the reference picture is called a motion vector.
 参照ピクチャを使用せずに、面内予測符号化が行われるピクチャをIピクチャと呼ぶ。また、1枚の参照ピクチャのみを参照することにより、動き補償面間予測符号化が行われるピクチャをPピクチャと呼ぶ。同時に2枚の参照ピクチャを参照して、動き補償面間予測符号化が行われるピクチャをBピクチャと呼ぶ。 A picture that is subjected to intra prediction encoding without using a reference picture is called an I picture. A picture that is subjected to motion compensation inter-frame prediction coding by referring to only one reference picture is called a P picture. A picture for which motion compensation interframe predictive coding is performed with reference to two reference pictures at the same time is called a B picture.
 参照ピクチャはマクロブロックごとに指定することができる。符号化されたビットストリームにおいて、表示順で、符号化対象ピクチャの前の参照ピクチャを第1参照ピクチャという。また、符号化されたビットストリームにおいて、表示順で、符号化対象ピクチャの後の参照ピクチャを第2参照ピクチャという。 The reference picture can be specified for each macro block. In the encoded bitstream, the reference picture before the encoding target picture in the display order is referred to as a first reference picture. In the encoded bitstream, a reference picture after the encoding target picture is referred to as a second reference picture in display order.
 Bピクチャの符号化を行う際、Bピクチャを構成するマクロブロックが「ダイレクトモード」と呼ばれる符号化モードで符号化されることがある。ダイレクトモードとは、動きベクトルを符号化せずに、過去に符号化された他のマクロブロックの動きベクトルを用いて、マクロブロック毎に動きベクトルを算出する符号化方法(符号化モード)である。 When encoding a B picture, macroblocks constituting the B picture may be encoded in an encoding mode called “direct mode”. The direct mode is an encoding method (encoding mode) in which a motion vector is calculated for each macroblock using a motion vector of another macroblock encoded in the past without encoding a motion vector. .
 以下においては、ダイレクトモードで符号化されているマクロブロックの動きベクトルを算出するために参照対象となるピクチャを、co-locatedピクチャという。また、以下においては、co-locatedピクチャにおいて、符号化対象のマクロブロックと同じ空間位置にあるマクロブロックをco-locatedマクロブロックという。 Hereinafter, a picture to be referred to for calculating a motion vector of a macroblock encoded in the direct mode is referred to as a co-located picture. In the following, in a co-located picture, a macro block located at the same spatial position as a macro block to be encoded is referred to as a co-located macro block.
 具体的には、マクロブロックがダイレクトモードで符号化されていた場合、co-locatedマクロブロックの動きベクトルを用いて、当該マクロブロックの動きベクトルの計算が行われる。 Specifically, when the macroblock is encoded in the direct mode, the motion vector of the macroblock is calculated using the motion vector of the co-located macroblock.
 ダイレクトモードで符号化されたマクロブロックを復号する従来の処理について、図14を参照しながら説明する。 A conventional process for decoding a macroblock encoded in the direct mode will be described with reference to FIG.
 まず、前提として、ダイレクトモードで符号化されたマクロブロックを、将来復号することに備えて、H.264/AVCでは、ピクチャ内の各マクロブロックを順次復号する際に、復号された各マクロブロックの動きベクトルを一定量記憶しておくようになっている。 First, as a premise, in preparation for future decoding of macroblocks encoded in direct mode, In H.264 / AVC, when each macroblock in a picture is sequentially decoded, a certain amount of motion vector of each decoded macroblock is stored.
 例えば、H.264/AVCの1仕様によれば、最大32枚のピクチャの動きベクトルを記憶しておくようになっている。1ピクチャが8160個のマクロブロックで構成されているとすると、合計261120個のマクロブロックの動きベクトルを記憶しておく必要がある。 For example, H. According to one H.264 / AVC specification, motion vectors of up to 32 pictures are stored. If one picture is composed of 8160 macroblocks, it is necessary to store motion vectors of a total of 261120 macroblocks.
 これだけ大量の動きベクトルを画像復号装置内に記憶しておくには通常のバッファでは容量不足であり、現実的ではない。そのため、復号された各マクロブロックの動きベクトルを、復号を行う画像復号装置外にあるDRAM(Dynamic Random Access Memory)等のメモリに記憶しておくのが一般的である。 [To store such a large number of motion vectors in the image decoding apparatus, the capacity of a normal buffer is insufficient, which is not realistic. Therefore, it is general to store the decoded motion vector of each macroblock in a memory such as a DRAM (Dynamic Random Access Memory) outside the image decoding apparatus that performs decoding.
 以下においては、マクロブロックを、MBと表記することがある。また、以下においては、動きベクトルを、mvと表記することがある。 In the following, a macro block may be written as MB. In the following, the motion vector may be expressed as mv.
 ここで、図14に示すように、MB復号処理では、Bピクチャのマクロブロックを復号する際、まず、当該マクロブロックのヘッダに示されるマクロブロックタイプが参照され、当該マクロブロックがダイレクトモードで符号化されているか否かが判定される(S3000)。 Here, as shown in FIG. 14, in the MB decoding process, when a macroblock of a B picture is decoded, first, the macroblock type indicated in the header of the macroblock is referred to, and the macroblock is encoded in the direct mode. It is determined whether or not it has been converted (S3000).
 ダイレクトモードで符号化されていた場合、参照する他のマクロブロックの動きベクトルを外部メモリから取得するためのDMA(Direct Memory Access)指示が、図示しないDMAコントローラに送信される(S3001)。そして、ステップS3002の動きベクトル算出処理により、外部メモリから転送された動きベクトルを用いて、当該マクロブロックの動きベクトルが算出される。 When the encoding is performed in the direct mode, a DMA (Direct Memory Access) instruction for acquiring a motion vector of another macro block to be referenced from an external memory is transmitted to a DMA controller (not shown) (S3001). Then, by the motion vector calculation process in step S3002, the motion vector of the macroblock is calculated using the motion vector transferred from the external memory.
 ところが、図14に示したような従来の手法では、マクロブロックがダイレクトモードで符号化されていることが判定された(S3000)後で、外部メモリにアクセスされ(S3001)、必要となる他のマクロブロックの動きベクトルが取得される。 However, in the conventional method as shown in FIG. 14, after it is determined that the macroblock is encoded in the direct mode (S3000), the external memory is accessed (S3001), and other necessary elements are required. A motion vector of the macroblock is obtained.
 すなわち、外部メモリから画像復号装置内へ動きベクトルの転送が必要なため、図14の矢印で示すように待ち時間がかかってしまい、その結果、Bピクチャのマクロブロックを復号するのに必要な時間Tが長くなってしまうという課題がある。 That is, since it is necessary to transfer the motion vector from the external memory to the image decoding apparatus, a waiting time is required as shown by the arrow in FIG. 14, and as a result, the time required to decode the macroblock of the B picture There is a problem that T becomes long.
 この課題を解決する技術として、例えば特許文献1の動画像復号装置がある。以下、特許文献1における従来の画像復号装置について図15を用いて説明する。 As a technique for solving this problem, for example, there is a moving picture decoding apparatus disclosed in Patent Document 1. Hereinafter, a conventional image decoding apparatus in Patent Document 1 will be described with reference to FIG.
 以下においては、s(1以上の整数)番目のマクロブロックに対応するco-locatedマクロブロックを、s番目用co-locatedマクロブロックという。s番目用co-locatedマクロブロックとは、s番目のマクロブロックの動きベクトルの算出の際に使用される動きベクトルに対応するマクロブロックである。 In the following, the co-located macroblock corresponding to the s (integer greater than or equal to 1) th macroblock is referred to as the sth co-located macroblock. The sth co-located macroblock is a macroblock corresponding to the motion vector used when calculating the motion vector of the sth macroblock.
 例えば、sが“n+1”である場合、n+1番目のマクロブロックに対応するco-locatedマクロブロックを、n+1番目用co-locatedマクロブロックという。 For example, when s is “n + 1”, the co-located macroblock corresponding to the (n + 1) th macroblock is referred to as the (n + 1) th co-located macroblock.
 図15において、MB(n)ヘッダ処理とは、n番目のマクロブロックのヘッダを参照して行われる処理を示す。また、MB(n)復号処理とは、n番目のマクロブロックを復号する処理を示す。また、動きベクトル算出(n)とは、n番目のマクロブロックの動きベクトルを算出する処理を示す。 15, MB (n) header processing refers to processing performed with reference to the header of the nth macroblock. The MB (n) decoding process is a process for decoding the nth macroblock. The motion vector calculation (n) indicates a process for calculating the motion vector of the nth macroblock.
 また、転送指示#(n+1)送信とは、n+1番目用co-locatedマクロブロックの動きベクトルをバッファへ転送させるための転送指示が送信される処理を示す。また、mv#(n+1)転送とは、n+1番目用co-locatedマクロブロックの動きベクトルが、バッファへ転送されることにより、バッファに記憶される処理を示す。 Also, the transfer instruction # (n + 1) transmission indicates a process in which a transfer instruction for transferring the motion vector of the (n + 1) th co-located macroblock to the buffer is transmitted. In addition, mv # (n + 1) transfer indicates processing in which the motion vector of the (n + 1) th co-located macroblock is stored in the buffer by being transferred to the buffer.
 また、図15において、mvColが不要な場合とは、処理対象のマクロブロックの次のマクロブロックがダイレクトモードで符号化されていない場合である。mvColが必要な場合とは、処理対象のマクロブロックの次のマクロブロックがダイレクトモードで符号化されている場合である。また、時間T1,T2は、対応するマクロブロックが復号されるのに要する時間である。 In FIG. 15, the case where mvCol is not required is a case where the macro block next to the macro block to be processed is not encoded in the direct mode. The case where mvCol is necessary is a case where the macro block next to the macro block to be processed is encoded in the direct mode. Times T1 and T2 are times required for decoding the corresponding macroblock.
 特許文献1における画像復号装置は、図15に示すように、n番目のマクロブロックの復号処理(S4000)と、n+1番目用co-locatedマクロブロックの動きベクトルがバッファへ転送される処理(S4001)とが並列して実行される。 As shown in FIG. 15, the image decoding apparatus in Patent Document 1 decodes the nth macroblock (S4000) and transfers the motion vector of the (n + 1) th co-located macroblock to the buffer (S4001). Are executed in parallel.
 これより、n+1番目のマクロブロックがダイレクトモードで符号化されていた場合、時間(期間)T2において、n+1番目のマクロブロックを復号する際に、すぐにバッファに記憶されているn+1番目用co-locatedマクロブロックの動きベクトルを用いて動きベクトルを算出することができる(S4002)。 Thus, when the (n + 1) th macroblock is encoded in the direct mode, when the (n + 1) th macroblock is decoded at the time (period) T2, the n + 1th co-block immediately stored in the buffer is decoded. A motion vector can be calculated using the motion vector of the located macroblock (S4002).
 その結果、n+1番目のマクロブロックを復号するのに要する時間T2が短縮される。この並列処理は、n番目、n+1番目、n+2番目、・・・、(n+x)番目のマクロブロックに対しても同様に行われる。n+x番目のマクロブロックは、ストリームに含まれる最後のマクロブロックである。したがって、どのマクロブロックに対しても同様の効果を奏する。 As a result, the time T2 required to decode the (n + 1) th macroblock is shortened. This parallel processing is similarly performed for the nth, n + 1th, n + 2th,..., (N + x) th macroblocks. The (n + x) th macroblock is the last macroblock included in the stream. Therefore, the same effect is obtained for any macroblock.
 このように、先行的に動きベクトルを取得しておくことにより、外部メモリに対するアクセスレイテンシが大きくても、演算性能に対する影響をなくすことが可能となる。 Thus, by obtaining the motion vector in advance, it is possible to eliminate the influence on the calculation performance even if the access latency to the external memory is large.
特許第4106070号公報Japanese Patent No. 4106070
 しかしながら、前記従来の画像復号装置では、復号対象のマクロブロックがダイレクトモードで符号化されているか否かにかかわらず、常に外部メモリからco-locatedマクロブロックの動きベクトルがバッファへ転送される。そのため、従来の画像復号装置では、復号対象のマクロブロックがダイレクトモードで符号化されていない場合、外部メモリへの不要なメモリアクセスが発生するという問題がある。 However, in the conventional image decoding apparatus, the motion vector of the co-located macroblock is always transferred from the external memory to the buffer regardless of whether or not the macroblock to be decoded is encoded in the direct mode. Therefore, the conventional image decoding apparatus has a problem that unnecessary memory access to the external memory occurs when the decoding target macroblock is not encoded in the direct mode.
 本発明は、上述の問題点を解決するためになされたものであって、その目的は、外部メモリへの不要なメモリアクセスを削減することを可能とした、画像復号装置、集積回路、画像復号方法、及び、画像復号システムを提供することである。 The present invention has been made to solve the above-described problems, and an object of the present invention is to provide an image decoding device, an integrated circuit, and an image decoding that can reduce unnecessary memory access to an external memory. A method and an image decoding system are provided.
 上述の課題を解決するために、この発明のある局面に従う画像復号装置は、符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する。画像復号装置は、各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶する外部メモリとデータ通信を行う転送部と、バッファと、前記複数のマクロブロックを、順次復号する第1復号部と、前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部と、復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定する判定部とを備える。前記転送部は、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送し、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない。 In order to solve the above-described problem, an image decoding apparatus according to an aspect of the present invention sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order. The image decoding apparatus includes a transfer unit that performs data communication with an external memory that stores a motion vector of a co-located macroblock corresponding to each macroblock, a buffer, and a first decoding that sequentially decodes the plurality of macroblocks Encoded determination information corresponding to the w (w ≧ v + 1) th macroblock before the decoding of the vth (an integer greater than or equal to 1) th macroblock by the first decoding unit is completed. Second decoding at least determination information for determining whether or not a motion vector of a co-located macroblock corresponding to the wth macroblock is necessary for calculating a motion vector of the wth macroblock. And a co-located macroblock corresponding to the w-th macroblock from the decoding unit and the decoded determination information Motion vector and a determination unit for determining whether it is necessary to calculate the motion vector of the w-th macroblock. When the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the transfer unit may determine the coth corresponding to the wth macroblock. -The motion vector of the located macroblock is transferred from the external memory to the buffer, and the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock. If not, the motion vector of the co-located macroblock corresponding to the w-th macroblock is not transferred from the external memory to the buffer.
 すなわち、転送部は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送する。また、転送部は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない。 That is, when the motion vector of the co-located macroblock corresponding to the w-th macroblock is necessary for calculating the motion vector of the w-th macroblock, the transfer unit performs co-corresponding to the w-th macroblock. The motion vector of the located macroblock is transferred from the external memory to the buffer. In addition, when the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, the transfer unit may correspond to the co-located macroblock corresponding to the wth macroblock. The motion vector of the macroblock is not transferred from the external memory to the buffer.
 つまり、転送部は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない。 That is, when the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, the transfer unit may perform the co-located macroblock corresponding to the wth macroblock. The motion vector of the macroblock is not transferred from the external memory to the buffer.
 したがって、外部メモリへの不要なメモリアクセスを低減することができる。 Therefore, unnecessary memory access to the external memory can be reduced.
 また、好ましくは、前記画像復号装置は、さらに、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記バッファに転送された前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを用いて前記w番目のマクロブロックの動きベクトルを算出する算出部を備え、前記転送部は、算出された前記w番目のマクロブロックの動きベクトルを、前記外部メモリへ転送する。 Preferably, the image decoding apparatus further includes the buffer when the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock. A calculation unit that calculates a motion vector of the w-th macroblock using a motion vector of a co-located macroblock corresponding to the w-th macroblock transferred to the w-th macroblock, and the transfer unit includes the calculated The motion vector of the wth macroblock is transferred to the external memory.
 また、好ましくは、前記転送部は、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが前記w番目のマクロブロックの動きベクトルの算出に必要である場合、前記v番目のマクロブロックの復号が行われている期間において、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリからバッファへ転送し、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが前記w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記v番目のマクロブロックの復号が行われている期間において、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリからバッファへ転送しない。 In addition, preferably, the transfer unit, when the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, During the period when the block is being decoded, the motion vector of the co-located macroblock corresponding to the wth macroblock is transferred from the external memory to the buffer, and the co− corresponding to the wth macroblock is transferred. If the motion vector of the located macroblock is not necessary for calculating the motion vector of the wth macroblock, the co-corresponding to the wth macroblock in the period during which the vth macroblock is being decoded. The motion vector of the located macroblock is Kigaibu not transferred from the memory to the buffer.
 また、好ましくは、前記第2復号部は、前記判定情報のみを復号する。 Also preferably, the second decoding unit decodes only the determination information.
 また、好ましくは、前記第2復号部は、復号された前記判定情報を、前記第1復号部へ送信する。 Also preferably, the second decoding unit transmits the decoded determination information to the first decoding unit.
 また、好ましくは、前記第1復号部は、前記w番目のマクロブロックのうち、前記第2復号部により復号された前記判定情報以外の部分を復号する。 Also preferably, the first decoding unit decodes a part of the w-th macroblock other than the determination information decoded by the second decoding unit.
 また、好ましくは、前記判定情報は、前記w番目のマクロブロックがダイレクトモードで符号化されているか否かを示す。 Also preferably, the determination information indicates whether or not the w-th macroblock is encoded in the direct mode.
 また、好ましくは、前記判定情報は、前記w番目のマクロブロックがスキップトマクロブロックであるか否かを示す。 Also preferably, the determination information indicates whether or not the w-th macroblock is a skipped macroblock.
 また、好ましくは、前記判定情報は、前記w番目のマクロブロックがインターマクロブロックであるか否かを示す。 Also preferably, the determination information indicates whether or not the w-th macroblock is an inter macroblock.
 また、好ましくは、前記複数のマクロブロックの各々は、H.264/AVCに従って符号化されたマクロブロッである。 Also preferably, each of the plurality of macroblocks is H.264. It is a macroblock encoded according to H.264 / AVC.
 この発明の他の局面に従う集積回路は、符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する。集積回路は、各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶する外部メモリとデータ通信を行う転送部と、バッファと、前記複数のマクロブロックを、順次復号する第1復号部と、前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部と、復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定する判定部とを備える。前記転送部は、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送し、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない。 An integrated circuit according to another aspect of the present invention sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order. An integrated circuit includes a transfer unit that performs data communication with an external memory that stores a motion vector of a co-located macroblock corresponding to each macroblock, a buffer, and a first decoding unit that sequentially decodes the plurality of macroblocks Encoded determination information corresponding to the w (w ≧ v + 1) -th macroblock before decoding of the v-th (an integer greater than or equal to 1) -th macroblock by the first decoding unit, Second decoding for decoding at least determination information for determining whether or not a motion vector of a co-located macroblock corresponding to the wth macroblock is necessary for calculating a motion vector of the wth macroblock Section and the decoded determination information, the operation of the co-located macroblock corresponding to the w-th macroblock Vector and a determination unit for determining whether it is necessary to calculate the motion vector of the w-th macroblock. When the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the transfer unit may determine the coth corresponding to the wth macroblock. -The motion vector of the located macroblock is transferred from the external memory to the buffer, and the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock. If not, the motion vector of the co-located macroblock corresponding to the w-th macroblock is not transferred from the external memory to the buffer.
 この発明のさらに他の局面に従う画像復号方法は、符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する画像復号装置が行う。前記画像復号装置は、各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶する外部メモリとデータ通信を行う転送部と、バッファと、前記複数のマクロブロックを、順次復号する第1復号部と、前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部とを備える。前記画像復号方法は、復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するステップと、前記転送部が、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送するステップとを含み、前記転送部は、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない。 An image decoding method according to still another aspect of the present invention is performed by an image decoding apparatus that sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order. The image decoding apparatus sequentially decodes a plurality of macroblocks, a transfer unit that performs data communication with an external memory that stores a motion vector of a co-located macroblock corresponding to each macroblock, a buffer, and the plurality of macroblocks. The encoded decision information corresponding to the w (w ≧ v + 1) -th macroblock before the decoding of the v-th (an integer greater than or equal to 1) -th macroblock by the decoding unit and the first decoding unit is completed. Thus, at least decoding information for determining whether or not the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock is decoded. 2 decoding part. The image decoding method determines whether or not a motion vector of a co-located macroblock corresponding to the w-th macroblock is necessary to calculate a motion vector of the w-th macroblock from the decoded determination information And when the transfer unit needs a motion vector of a co-located macroblock corresponding to the wth macroblock to calculate a motion vector of the wth macroblock, Transferring a motion vector of a co-located macroblock corresponding to the macroblock from the external memory to the buffer, wherein the transfer unit moves the motion of the co-located macroblock corresponding to the w-th macroblock The vector is the motion vector of the wth macroblock If not required to leave, the motion vector of the co-located macroblock corresponding to the w-th macroblock is not transferred from the external memory to the buffer.
 この発明のさらに他の局面に従う画像復号システムは、符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する画像復号装置と、外部メモリとを含む。前記外部メモリは、各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶しており、前記画像復号装置は、前記外部メモリとデータ通信を行う転送部と、バッファと、前記複数のマクロブロックを、順次復号する第1復号部と、前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部と、復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定する判定部とを備え、前記転送部は、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送し、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない。 An image decoding system according to still another aspect of the present invention includes an image decoding device that sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order, and an external memory. The external memory stores a motion vector of a co-located macroblock corresponding to each macroblock, and the image decoding device includes a transfer unit that performs data communication with the external memory, a buffer, and the plurality of A first decoding unit that sequentially decodes macroblocks and a w (w ≧ v + 1) th macroblock before decoding the v (integer greater than or equal to 1) th macroblock by the first decoding unit It is determined whether the motion vector of the co-located macroblock corresponding to the w th macroblock is necessary for calculating the motion vector of the w th macroblock. A second decoding unit that at least decodes determination information for decoding, and c corresponding to the w-th macroblock from the decoded determination information A determining unit that determines whether or not the motion vector of the located macroblock is necessary for calculating the motion vector of the w-th macroblock, and the transfer unit includes a co corresponding to the w-th macroblock -If the motion vector of the located macroblock is necessary for calculating the motion vector of the wth macroblock, the motion vector of the co-located macroblock corresponding to the wth macroblock is transferred from the external memory to the buffer. If the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, the co-located macroblock corresponding to the wth macroblock is The motion vector of the macroblock Not transferred to the buffer from the part memory.
 なお、本発明は、このような画像復号装置を構成する複数の構成要素の全てまたは一部を、システムLSI(Large Scale Integration:大規模集積回路)として実現してもよい。 In the present invention, all or some of a plurality of constituent elements constituting such an image decoding device may be realized as a system LSI (Large Scale Integration).
 また、本発明は、画像復号装置が備える特徴的な構成部の動作をステップとする画像復号方法として実現してもよい。また、本発明は、そのような画像復号方法に含まれる各ステップをコンピュータに実行させるプログラムとして実現してもよい。また、本発明は、そのようなプログラムを格納するコンピュータ読み取り可能な記録媒体として実現されてもよい。また、当該プログラムは、インターネット等の伝送媒体を介して配信されてもよい。 Further, the present invention may be realized as an image decoding method in which the operation of a characteristic component included in the image decoding apparatus is a step. Further, the present invention may be realized as a program that causes a computer to execute each step included in such an image decoding method. Further, the present invention may be realized as a computer-readable recording medium that stores such a program. The program may be distributed via a transmission medium such as the Internet.
 本発明により、外部メモリへの不要なメモリアクセスを低減することができる。 According to the present invention, unnecessary memory access to the external memory can be reduced.
図1は、本発明の実施の形態1における画像復号システムの構成を示すブロック図である。FIG. 1 is a block diagram showing a configuration of an image decoding system according to Embodiment 1 of the present invention. 図2は、本発明の実施の形態1における復号処理のフローチャートである。FIG. 2 is a flowchart of decoding processing according to Embodiment 1 of the present invention. 図3は、本発明の実施の形態1における画像復号装置の処理を説明するための図である。FIG. 3 is a diagram for explaining processing of the image decoding apparatus according to Embodiment 1 of the present invention. 図4は、本発明の実施の形態2における復号処理Aのフローチャートである。FIG. 4 is a flowchart of decoding process A in Embodiment 2 of the present invention. 図5は、画像復号システムの構成を示すブロック図である。FIG. 5 is a block diagram showing the configuration of the image decoding system. 図6は、画像復号装置の特徴的な機能構成を示すブロック図である。FIG. 6 is a block diagram showing a characteristic functional configuration of the image decoding apparatus. 図7は、実施の形態3におけるコンテンツ配信サービスを実現するコンテンツ供給システムの全体構成図である。FIG. 7 is an overall configuration diagram of a content supply system that implements a content distribution service according to the third embodiment. 図8は、実施の形態3におけるデジタル放送用システムの全体構成図である。FIG. 8 is an overall configuration diagram of the digital broadcasting system according to the third embodiment. 図9は、実施の形態3におけるテレビの構成例を示すブロック図である。FIG. 9 is a block diagram illustrating a configuration example of a television in Embodiment 3. 図10は、光ディスクである記録メディアに情報の読み書きを行う情報再生/記録部の構成例を示すブロック図である。FIG. 10 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk. 図11は、光ディスクである記録メディアの構造例を示す図である。FIG. 11 is a diagram illustrating a structure example of a recording medium that is an optical disk. 図12は、画像復号処理を実現する集積回路を示す構成図である。FIG. 12 is a configuration diagram showing an integrated circuit for realizing the image decoding process. 図13は、画像復号処理を実現する集積回路の構成例を示す構成図である。FIG. 13 is a configuration diagram illustrating a configuration example of an integrated circuit that implements image decoding processing. 図14は、従来の復号処理を示すタイミングチャートである。FIG. 14 is a timing chart showing a conventional decoding process. 図15は、従来の画像復号装置の処理を説明するための図である。FIG. 15 is a diagram for explaining processing of a conventional image decoding apparatus.
 以下、本発明の実施の形態について、図面を参照しながら説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
 (実施の形態1)
 図1は、本発明の実施の形態1における画像復号システム1000の構成を示すブロック図である。
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of an image decoding system 1000 according to Embodiment 1 of the present invention.
 図1において、画像復号システム1000は、画像復号装置100と、外部メモリ200と、記憶媒体300と、受信部400とを含む。 1, the image decoding system 1000 includes an image decoding device 100, an external memory 200, a storage medium 300, and a receiving unit 400.
 外部メモリ200は、画像復号装置100に接続されている。外部メモリ200は、作業領域として使用されるDRAM等の書き込み可能なメモリである。外部メモリ200は、画像復号装置100が、後述する復号処理を実行する上で必要となるデータを一時的に記憶する。 The external memory 200 is connected to the image decoding device 100. The external memory 200 is a writable memory such as a DRAM used as a work area. The external memory 200 temporarily stores data necessary for the image decoding apparatus 100 to execute a decoding process described later.
 以下においては、動画像圧縮標準規格に準じて符号化された動画像データを、ストリームという。動画像圧縮標準規格は、H.264/AVC(MPEG4-AVC)である。すなわち、当該ストリームは、可変長符号化された動画像データである。当該ストリームは、動画像に対応する、符号化された各ピクチャを構成する複数のマクロブロックを含む。 In the following, moving image data encoded according to the moving image compression standard is referred to as a stream. The video compression standard is H.264. H.264 / AVC (MPEG4-AVC). That is, the stream is moving image data that is variable-length encoded. The stream includes a plurality of macro blocks constituting each encoded picture corresponding to a moving image.
 なお、動画像圧縮標準規格は、H.264/AVCに限定されず、MPEG4、MPEG2、MPEG-1、H.263、H.261等であってもよい。 The video compression standard is H.264. H.264 / AVC, MPEG4, MPEG2, MPEG-1, H.264 263, H.M. 261 etc. may be sufficient.
 記憶媒体300は、HDD(Hard Disk Drive)等の大容量記憶媒体である。記憶媒体300は、ストリームを記憶している。当該ストリームは、例えば、テレビ番組が録画されることにより得られるストリームである。 The storage medium 300 is a large-capacity storage medium such as an HDD (Hard Disk Drive). The storage medium 300 stores a stream. The stream is, for example, a stream obtained by recording a television program.
 受信部400は、デジタルチューナー等である。受信部400は、ストリームを受信する。当該ストリームは、例えば、放送局が送信する放送波としてのストリーム、インターネットからダウンロードされたストリーム等である。 The receiving unit 400 is a digital tuner or the like. The receiving unit 400 receives a stream. The stream is, for example, a stream as a broadcast wave transmitted from a broadcast station, a stream downloaded from the Internet, or the like.
 画像復号装置100は、ストリームの復号を行う装置または集積回路である。外部メモリ200には、記憶媒体300、または、受信部400から受信するストリームが記憶される。画像復号装置100は、外部メモリ200に記憶されるストリームを受信し、当該ストリームを復号する。 The image decoding apparatus 100 is an apparatus or an integrated circuit that performs stream decoding. The external memory 200 stores a stream received from the storage medium 300 or the receiving unit 400. The image decoding device 100 receives a stream stored in the external memory 200 and decodes the stream.
 画像復号装置100は、第1復号部111と、第2転送指示部120と、第2復号部121と、判定部122と、mv転送指示部123と、mv保持メモリ124と、mv算出部131と、mv転送指示部132と、参照画像転送指示部133と、逆直交変換部151と、逆量子化部152と、面内予測処理部142と、動き補償処理部141と、予測画像選択部143と、復号画像合成部161と、デブロックフィルタ処理部162と、復号画像転送指示部163と、DMAコントローラ130とを備える。 The image decoding apparatus 100 includes a first decoding unit 111, a second transfer instruction unit 120, a second decoding unit 121, a determination unit 122, an mv transfer instruction unit 123, an mv holding memory 124, and an mv calculation unit 131. An mv transfer instruction unit 132, a reference image transfer instruction unit 133, an inverse orthogonal transform unit 151, an inverse quantization unit 152, an in-plane prediction processing unit 142, a motion compensation processing unit 141, and a predicted image selection unit. 143, a decoded image synthesis unit 161, a deblock filter processing unit 162, a decoded image transfer instruction unit 163, and a DMA controller 130.
 DMAコントローラ130は、外部メモリ200とデータ通信を行う転送部である。 The DMA controller 130 is a transfer unit that performs data communication with the external memory 200.
 第2転送指示部120は、外部メモリ200に記憶されているストリームを第2復号部121へ転送させるための指示を、DMAコントローラ130へ送信する。 The second transfer instruction unit 120 transmits an instruction for transferring the stream stored in the external memory 200 to the second decoding unit 121 to the DMA controller 130.
 第2復号部121は、詳細は後述するが、マクロブロックのヘッダのみを復号する。当該ヘッダには、マクロブロックタイプが示される。第2復号部121は、マクロブロックタイプを、判定部122へ送信する。 The second decoding unit 121 decodes only the header of the macroblock, details of which will be described later. The header indicates the macro block type. The second decoding unit 121 transmits the macroblock type to the determination unit 122.
 判定部122は、第2復号部121が送信したマクロブロックタイプを受信する。そして、判定部122は、マクロブロックタイプを参照することにより、マクロブロックがダイレクトモードで符号化されているか否かを判定する。 The determination unit 122 receives the macroblock type transmitted by the second decoding unit 121. Then, the determination unit 122 determines whether or not the macro block is encoded in the direct mode by referring to the macro block type.
 本実施の形態では、ダイレクトモードが時間ダイレクトモードである場合の処理について説明する。 In the present embodiment, processing when the direct mode is the time direct mode will be described.
 判定部122は、詳細は後述するが、マクロブロックがダイレクトモードで符号化されていた場合、co-locatedマクロブロックの動きベクトルを取得ためのベクトル取得指示を、mv転送指示部123へ送信する。 Although details will be described later, the determination unit 122 transmits a vector acquisition instruction for acquiring a motion vector of a co-located macroblock to the mv transfer instruction unit 123 when the macroblock is encoded in the direct mode.
 mv転送指示部123は、詳細は後述するが、判定部122から、ベクトル取得指示を受信すると、外部メモリ200に記憶されているco-locatedマクロブロックの動きベクトルをmv保持メモリ124へ転送させるため処理を行う。 Although details will be described later, the mv transfer instruction unit 123 receives the vector acquisition instruction from the determination unit 122 to transfer the motion vector of the co-located macroblock stored in the external memory 200 to the mv holding memory 124. Process.
 mv保持メモリ124は、一時的にデータを記憶するためのバッファである。mv保持メモリ124は、co-locatedマクロブロックの動きベクトルを少なくとも1つ記憶できる容量を有する。詳細は後述するが、mv保持メモリ124は、DMAコントローラ130から送信される、co-locatedマクロブロックの動きベクトルを一時的に記憶する。 The mv holding memory 124 is a buffer for temporarily storing data. The mv holding memory 124 has a capacity capable of storing at least one motion vector of a co-located macroblock. Although details will be described later, the mv holding memory 124 temporarily stores the motion vector of the co-located macroblock transmitted from the DMA controller 130.
 第1復号部111は、詳細は後述するが、マクロブロックを可変長復号することにより、当該マクロブロックのヘッダ、及び画素残差周波数成分を取得する。第1復号部111は、ストリームに含まれる符号化された各ピクチャを構成する複数のマクロブロックを所定の順番で順次復号する。当該複数のマクロブロックの各々は、一例として、H.264/AVCに従って符号化されたマクロブロックである。 Although the details will be described later, the first decoding unit 111 performs variable-length decoding on the macroblock to obtain the header of the macroblock and the pixel residual frequency component. The first decoding unit 111 sequentially decodes a plurality of macroblocks constituting each encoded picture included in the stream in a predetermined order. For example, each of the plurality of macroblocks is H.264. It is a macroblock encoded according to H.264 / AVC.
 ここで、第1復号部111が、v(1以上の整数)番目のマクロブロックを復号するとする。この場合、第2復号部121は、w(w≧v+1)番目のマクロブロックに対して処理を行う。 Here, it is assumed that the first decoding unit 111 decodes the vth (an integer greater than or equal to 1) -th macroblock. In this case, the second decoding unit 121 performs processing on the w (w ≧ v + 1) -th macroblock.
 mv算出部131は、詳細は後述するが、マクロブロックの種類に応じて、異なる方法により、動きベクトルを算出する。 Although the details will be described later, the mv calculation unit 131 calculates a motion vector by a different method depending on the type of the macroblock.
 mv転送指示部132は、mv算出部131が算出した動きベクトルを外部メモリ200に記憶させるためのベクトル記憶指示を、DMAコントローラ130へ送信する。 The mv transfer instruction unit 132 transmits a vector storage instruction for storing the motion vector calculated by the mv calculation unit 131 in the external memory 200 to the DMA controller 130.
 参照画像転送指示部133は、外部メモリ200に記憶されている、mv算出部131が算出した動きベクトルに基づく参照画像を、後述する動き補償処理部141に転送させるための参照画像転送指示を、DMAコントローラ130へ送信する。 The reference image transfer instruction unit 133 receives a reference image transfer instruction stored in the external memory 200 for transferring a reference image based on the motion vector calculated by the mv calculation unit 131 to the motion compensation processing unit 141 described later. Transmit to the DMA controller 130.
 逆直交変換部151は、第1復号部111から送信される画素残差周波数成分を逆直行変換することにより、画素残差成分を算出する。 The inverse orthogonal transform unit 151 calculates a pixel residual component by performing an inverse orthogonal transform on the pixel residual frequency component transmitted from the first decoding unit 111.
 逆量子化部152は、逆直交変換部151が算出した画素残差成分に対し、逆量子化を行うことにより画素残差値を取得する。 The inverse quantization unit 152 obtains a pixel residual value by performing inverse quantization on the pixel residual component calculated by the inverse orthogonal transform unit 151.
 以下においては、動き補償が不要なモードで符号化されたマクロブロックを、イントラマクロブロックという。また、以下においては、動き補償を必要とするモードで符号化されたマクロブロックを、インターマクロブロックという。 In the following, a macroblock encoded in a mode that does not require motion compensation is referred to as an intra macroblock. In the following, a macroblock encoded in a mode that requires motion compensation is referred to as an inter macroblock.
 面内予測処理部142は、処理対象のマクロブロックがイントラマクロブロックである場合、面内予測を行うことにより予測画像を生成する。面内予測処理部142は、生成した予測画像を、予測画像選択部143へ送信する。 The in-plane prediction processing unit 142 generates a predicted image by performing in-plane prediction when the processing target macroblock is an intra macroblock. The in-plane prediction processing unit 142 transmits the generated predicted image to the predicted image selection unit 143.
 動き補償処理部141は、処理対象のマクロブロックがインターマクロブロックである場合、mv算出部131から受信する動きベクトルと、DMAコントローラ130から受信する参照画像とを用いて、動き補償面内予測を行うことにより、予測画像を生成する。 When the macroblock to be processed is an inter macroblock, the motion compensation processing unit 141 performs motion compensation intra prediction using the motion vector received from the mv calculation unit 131 and the reference image received from the DMA controller 130. By performing this, a predicted image is generated.
 動き補償処理部141は、生成した予測画像を、予測画像選択部143へ送信する。 The motion compensation processing unit 141 transmits the generated predicted image to the predicted image selection unit 143.
 予測画像選択部143は、マクロブロックがインターマクロブロックである場合、動き補償処理部141から受信する予測画像を、後述する復号画像合成部161へ送信する。また、予測画像選択部143は、マクロブロックがイントラマクロブロックである場合、面内予測処理部142から受信する予測画像を、後述する復号画像合成部161へ送信する。 When the macroblock is an inter macroblock, the predicted image selection unit 143 transmits the predicted image received from the motion compensation processing unit 141 to a decoded image synthesis unit 161 described later. Also, when the macroblock is an intra macroblock, the predicted image selection unit 143 transmits the predicted image received from the in-plane prediction processing unit 142 to the decoded image synthesis unit 161 described later.
 復号画像合成部161は、予測画像選択部143から受信する予測画像と、逆量子化部152から受信する画素残差値とを足し合わせることにより、復号画像を生成する。 The decoded image synthesis unit 161 generates a decoded image by adding the predicted image received from the predicted image selection unit 143 and the pixel residual value received from the inverse quantization unit 152.
 デブロックフィルタ処理部162は、復号画像合成部161から受信する復号画像に対しデブロックフィルタ処理を行う。 The deblock filter processing unit 162 performs deblock filter processing on the decoded image received from the decoded image synthesis unit 161.
 復号画像転送指示部163は、詳細は後述するが、デブロックフィルタ処理された復号画像を外部メモリ200に記憶させるための処理を行う。 The decoded image transfer instruction unit 163 performs a process for storing the decoded image subjected to the deblocking filter processing in the external memory 200, as will be described in detail later.
 次に、画像復号システム1000が行う処理(以下、復号処理という)について説明する。ここで、外部メモリ200には、符号化された動画像データ(ストリーム)が記憶されているとする。ストリームは、動画像に対応する、符号化された各ピクチャを構成する複数のマクロブロックを含む。また、外部メモリ200は、符号化されたピクチャを構成する複数のマクロブロックの各々に対応するco-locatedマクロブロックの動きベクトルを記憶しているとする。 Next, processing performed by the image decoding system 1000 (hereinafter referred to as decoding processing) will be described. Here, it is assumed that the encoded moving image data (stream) is stored in the external memory 200. The stream includes a plurality of macroblocks constituting each encoded picture corresponding to a moving image. Further, it is assumed that the external memory 200 stores a motion vector of a co-located macroblock corresponding to each of a plurality of macroblocks constituting an encoded picture.
 図2は、復号処理のフローチャートである。 FIG. 2 is a flowchart of the decryption process.
 図2に示すように、画像復号装置100において、まず、ストリーム転送処理が実行される(S101)。ストリーム転送処理は、他の処理とは独立して行われる処理である。 As shown in FIG. 2, in the image decoding apparatus 100, first, a stream transfer process is executed (S101). The stream transfer process is a process performed independently of other processes.
 ストリーム転送処理では、第2転送指示部120が、DMAコントローラ130に対して、外部メモリ200に記憶されているストリームを第2復号部121へ転送させるためのストリーム転送指示を、DMAコントローラ130へ送信する。 In the stream transfer process, the second transfer instruction unit 120 transmits to the DMA controller 130 a stream transfer instruction for causing the DMA controller 130 to transfer the stream stored in the external memory 200 to the second decoding unit 121. To do.
 DMAコントローラ130は、当該ストリーム転送指示を受信すると、外部メモリ200からストリームを読み出し、当該ストリームを、第2復号部121へ転送する。 When receiving the stream transfer instruction, the DMA controller 130 reads the stream from the external memory 200 and transfers the stream to the second decoding unit 121.
 そして、第2復号部121は、受信しているストリームから、n番目およびn+1番目のマクロブロックを取得する(S102)。 Then, the second decoding unit 121 acquires the nth and n + 1th macroblocks from the received stream (S102).
 なお、第2復号部121は、n番目およびn+1番目のマクロブロックの取得の際に、n番目およびn+1番目のマクロブロックを含むスライスデータの一部を復号することにより、スキップトマクロブロックを特定する情報(以下、スキップ情報という)を取得する。 The second decoding unit 121 identifies a skipped macroblock by decoding a part of slice data including the nth and n + 1th macroblocks when acquiring the nth and n + 1th macroblocks. Information to be performed (hereinafter referred to as skip information).
 なお、第2復号部121が取得するマクロブロックは、n番目およびn+1番目のマクロブロックに限定されない。例えば、第2復号部121が取得するマクロブロックは、n番目およびn+p(2以上の整数)番目のマクロブロックであってもよい。 Note that the macroblocks acquired by the second decoding unit 121 are not limited to the nth and n + 1th macroblocks. For example, the macroblock acquired by the second decoding unit 121 may be the nth and n + p (an integer greater than or equal to 2) th macroblock.
 第2復号部121は、n+1番目のマクロブロックのヘッダのみを復号する。これにより、第2復号部121は、n+1番目のマクロブロックのヘッダを取得する(S120)。取得された当該ヘッダには、マクロブロックタイプおよびブロック情報等が示される。 The second decoding unit 121 decodes only the header of the (n + 1) th macroblock. Accordingly, the second decoding unit 121 acquires the header of the (n + 1) th macroblock (S120). The acquired header indicates a macro block type, block information, and the like.
 当該マクロブロックタイプは、対応するマクロブロックの符号化モードを示す。当該符号化モードは、例えば、ダイレクトモードである。ブロック情報は、対応するマクロブロックが、インターマクロブロック、イントラマクロブロックのいずれであるかを示す情報である。 This macro block type indicates the encoding mode of the corresponding macro block. The encoding mode is, for example, a direct mode. The block information is information indicating whether the corresponding macro block is an inter macro block or an intra macro block.
 そして、第2復号部121は、判定情報としての前述のスキップ情報と、判定情報としてのマクロブロックタイプおよびブロック情報とを、判定部122へ送信する。 And the 2nd decoding part 121 transmits the above-mentioned skip information as determination information, and the macroblock type and block information as determination information to the determination part 122. FIG.
 ここで、第1復号部111は、v(1以上の整数)番目のマクロブロックを復号するとする。この場合、前述したように、第2復号部121は、w(w≧v+1)番目のマクロブロックに対して処理を行う。この場合、判定情報は、w番目のマクロブロックに対応する符号化された情報である。 Here, it is assumed that the first decoding unit 111 decodes the vth (an integer greater than or equal to 1) -th macroblock. In this case, as described above, the second decoding unit 121 performs processing on the w (w ≧ v + 1) -th macroblock. In this case, the determination information is encoded information corresponding to the w-th macroblock.
 判定情報は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための情報である。 The determination information is information for determining whether or not the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock.
 すなわち、第2復号部121は、ステップS120の処理により、判定情報としてのn+1番目のマクロブロックのヘッダのみを復号する。また、第2復号部121は、前述したように、符号化されたスライスデータの一部である判定情報としてのスキップ情報を復号する。 That is, the second decoding unit 121 decodes only the header of the (n + 1) th macroblock as determination information by the process of step S120. Further, as described above, the second decoding unit 121 decodes the skip information as the determination information that is a part of the encoded slice data.
 ステップS121では、第2復号部121が、取得したn番目およびn+1番目のマクロブロックのうちのn番目のマクロブロックと、復号された判定情報とを、第1復号部111へ送信する。当該復号された判定情報は、前述のスキップ情報、n+1番目のマクロブロックのヘッダである。当該ヘッダには、マクロブロックタイプおよびブロック情報等が示される。 In step S121, the second decoding unit 121 transmits the n-th macroblock of the acquired n-th and n + 1-th macroblocks and the decoded determination information to the first decoding unit 111. The decoded determination information is the above-described skip information and the header of the (n + 1) th macroblock. The header indicates a macro block type, block information, and the like.
 これにより、第1復号部111は、n番目のマクロブロックと、判定情報(スキップ情報、マクロブロックのヘッダ)とを受信することにより取得する(S110)。 Thereby, the first decoding unit 111 acquires the n-th macroblock and the determination information (skip information, macroblock header) by receiving (S110).
 判定部122は、n+1番目のマクロブロックがスキップの対象であるか否かを判定する。具体的には、判定部122は、受信した判定情報としてのスキップ情報が、n+1番目のマクロブロックがスキップトマクロブロックであることを示すか否かを判定する(S122)。すなわち、判定情報は、w番目のマクロブロックがスキップトマクロブロックであるか否かを示す。 The determination unit 122 determines whether or not the (n + 1) th macroblock is a skip target. Specifically, the determination unit 122 determines whether or not the skip information as the received determination information indicates that the (n + 1) th macroblock is a skipped macroblock (S122). That is, the determination information indicates whether or not the w-th macroblock is a skipped macroblock.
 ステップS122でYESならば、処理はステップS124に移行する。一方、ステップS122でNOならば処理はステップS123に移行する。 If YES in step S122, the process proceeds to step S124. On the other hand, if NO in step S122, the process proceeds to step S123.
 判定部122は、受信した判定情報としてのスキップ情報が、n+1番目のマクロブロックがスキップトマクロブロックであることを示す場合(S122でYES)、ステップS124の処理が行われる。 When the received skip information as the determination information indicates that the n + 1-th macroblock is a skipped macroblock (YES in S122), the determination unit 122 performs the process of step S124.
 ステップS123では、判定部122が、第2復号部121が送信した、判定情報としてのマクロブロックタイプを参照し、n+1番目のマクロブロックがダイレクトモードで符号化されているか否かを判定する。マクロブロックタイプは、対応するマクロブロックの符号化モードを示す。当該符号化モードは、例えば、ダイレクトモードである。すなわち、判定情報は、w番目のマクロブロックがダイレクトモードで符号化されているか否かを示す。 In step S123, the determination unit 122 refers to the macroblock type as determination information transmitted by the second decoding unit 121, and determines whether or not the n + 1-th macroblock is encoded in the direct mode. The macro block type indicates the encoding mode of the corresponding macro block. The encoding mode is, for example, a direct mode. That is, the determination information indicates whether or not the w-th macroblock is encoded in the direct mode.
 ステップS123でYESならば処理はステップS124に移行する。一方、ステップS123でNOならば、処理は後述のステップS154に移行する。 If YES in step S123, the process proceeds to step S124. On the other hand, if NO in step S123, the process proceeds to step S154 described later.
 すなわち、ステップS122,S123の処理は、判定部122が、復号された判定情報から、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための処理である。 That is, in the processes of steps S122 and S123, the determination unit 122 calculates the motion vector of the co-located macroblock corresponding to the wth macroblock from the decoded determination information. This is a process for determining whether or not it is necessary.
 ステップS124では、判定部122が、n+1番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを取得するためのベクトル取得指示を、mv転送指示部123へ送信する。n+1番目のマクロブロックに対応するco-locatedマクロブロックとは、n+1番目用co-locatedマクロブロックである。 In step S124, the determination unit 122 transmits a vector acquisition instruction for acquiring the motion vector of the co-located macroblock corresponding to the (n + 1) th macroblock to the mv transfer instruction unit 123. The co-located macroblock corresponding to the (n + 1) th macroblock is an (n + 1) th co-located macroblock.
 mv転送指示部123は、受信したベクトル取得指示に従って、n+1番目用co-locatedマクロブロックの動きベクトルを取得するための処理を行う。 The mv transfer instruction unit 123 performs a process for acquiring the motion vector of the (n + 1) th co-located macroblock according to the received vector acquisition instruction.
 具体的には、mv転送指示部123は、外部メモリ200に記憶されている、n+1番目用co-locatedマクロブロックの動きベクトルをmv保持メモリ124へ転送させるためのベクトル転送指示を、DMAコントローラ130へ送信する。 Specifically, the mv transfer instruction unit 123 sends a vector transfer instruction for transferring the motion vector of the (n + 1) th co-located macroblock stored in the external memory 200 to the mv holding memory 124. Send to.
 DMAコントローラ130は、当該ベクトル転送指示を受信すると、外部メモリ200から、n+1番目用co-locatedマクロブロックの動きベクトルを読出し、当該n+1番目用co-locatedマクロブロックの動きベクトルを、mv保持メモリ124へ転送する。これにより、mv保持メモリ124にn+1番目用co-locatedマクロブロックの動きベクトルが記憶される。 When receiving the vector transfer instruction, the DMA controller 130 reads the motion vector of the (n + 1) th co-located macroblock from the external memory 200 and stores the motion vector of the (n + 1) th co-located macroblock in the mv holding memory 124. Forward to. As a result, the motion vector of the (n + 1) th co-located macroblock is stored in the mv holding memory 124.
 すなわち、転送部としてのDMAコントローラ130は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、当該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、外部メモリ200からバッファとしてのmv保持メモリ124へ転送する。 That is, when the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the DMA controller 130 serving as the transfer unit performs the wth macroblock. The motion vector of the co-located macroblock corresponding to the block is transferred from the external memory 200 to the mv holding memory 124 as a buffer.
 一方、ステップS122でNO、かつ、ステップS123でNOの場合、すなわち、n+1番目のマクロブロックがスキップトマクロブロックでなく、かつ、n+1番目のマクロブロックがダイレクトモードで符号化されていない場合、mv転送指示部123は何もしない。n+1番目のマクロブロックがスキップトマクロブロックでなく、かつ、n+1番目のマクロブロックがダイレクトモードで符号化されていない場合は、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要でない場合である。 On the other hand, if NO in step S122 and NO in step S123, that is, if the (n + 1) th macroblock is not a skipped macroblock and the (n + 1) th macroblock is not encoded in the direct mode, mv The transfer instruction unit 123 does nothing. If the (n + 1) th macroblock is not a skipped macroblock and the (n + 1) th macroblock is not encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is the n + 1th macroblock motion vector. This is a case where it is not necessary to calculate a motion vector.
 つまり、転送部としてのDMAコントローラ130は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、外部メモリ200からバッファとしてのmv保持メモリ124へ転送しない。 That is, the DMA controller 130 as the transfer unit determines that the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock. The motion vector of the corresponding co-located macroblock is not transferred from the external memory 200 to the mv holding memory 124 as a buffer.
 上記ステップS121~S124の処理と並行して、ステップS111~S114の処理が行われる。 In parallel with the processes in steps S121 to S124, the processes in steps S111 to S114 are performed.
 ステップS111では、第1復号部111が、MB復号処理を実行する。MB復号処理は、他の処理とは、独立して行われる処理である。そして、処理はステップS112に移行する。 In step S111, the first decoding unit 111 executes MB decoding processing. The MB decoding process is a process performed independently of other processes. Then, the process proceeds to step S112.
 MB復号処理では、第1復号部111が、取得したn番目のマクロブロックを復号する。なお、ステップS120の処理により、n番目のマクロブロックのヘッダが既に復号されている場合、MB復号処理では、第1復号部111が、n番目のマクロブロックのうち、ヘッダ以外の部分を復号する。すなわち、第1復号部111は、w番目のマクロブロックのうち、第2復号部121により復号された判定情報としてのヘッダ以外の部分を復号する。 In the MB decoding process, the first decoding unit 111 decodes the acquired nth macroblock. If the header of the nth macroblock has already been decoded by the process of step S120, in the MB decoding process, the first decoding unit 111 decodes a part other than the header of the nth macroblock. . That is, the 1st decoding part 111 decodes parts other than the header as determination information decoded by the 2nd decoding part 121 among wth macroblocks.
 n番目のマクロブロックの復号の終了とともに、MB復号処理は終了する。 When the decoding of the nth macroblock ends, the MB decoding process ends.
 MB復号処理により、第1復号部111は、画素残差周波数成分を取得する。 By the MB decoding process, the first decoding unit 111 acquires a pixel residual frequency component.
 なお、第1復号部111は、前回のステップS121の処理が行われることにより、判定情報としてのn番目のマクロブロックのヘッダを取得しているとする。前回のステップS121の処理とは、ステップS121の処理の説明においてnをn-1に置き換えた処理である。 Note that it is assumed that the first decoding unit 111 has acquired the header of the nth macroblock as the determination information by performing the process of the previous step S121. The previous processing in step S121 is processing in which n is replaced with n−1 in the description of processing in step S121.
 そして、第1復号部111は、画素残差周波数成分を、逆直交変換部151へ送信する。また、第1復号部111は、n番目のマクロブロックのヘッダを、面内予測処理部142へ送信する。 Then, the first decoding unit 111 transmits the pixel residual frequency component to the inverse orthogonal transform unit 151. In addition, the first decoding unit 111 transmits the header of the nth macroblock to the in-plane prediction processing unit 142.
 ステップS112では、第1復号部111が、取得した判定情報としてのn番目のマクロブロックのヘッダを参照する。そして、第1復号部111は、参照したヘッダに基づいて、n番目のマクロブロックがインターマクロブロックであるか、イントラマクロブロックであるかを判定する。すなわち、第1復号部111は、n番目のマクロブロックがインターマクロブロックであるか否かを判定する。 In step S112, the first decoding unit 111 refers to the header of the nth macroblock as the acquired determination information. Then, the first decoding unit 111 determines whether the nth macroblock is an inter macroblock or an intra macroblock based on the referenced header. That is, the first decoding unit 111 determines whether or not the nth macroblock is an inter macroblock.
 n番目のマクロブロックがインターマクロブロックである場合(S112でYES)、処理はステップS113に移行する。 If the nth macroblock is an inter macroblock (YES in S112), the process proceeds to step S113.
 ステップS113では、第1復号部111が、n番目のマクロブロックがスキップの対象であるか否かを判定する。具体的には、第1復号部111は、受信した判定情報としてのスキップ情報が、n番目のマクロブロックがスキップトマクロブロックであることを示すか否かを判定する。 In step S113, the first decoding unit 111 determines whether or not the nth macroblock is a skip target. Specifically, the first decoding unit 111 determines whether or not the skip information as the received determination information indicates that the nth macroblock is a skipped macroblock.
 ステップS113においてYESならば処理はステップS115Aに移行する。一方、ステップS113において、NOならば処理はステップS114に移行する。 If YES in step S113, the process proceeds to step S115A. On the other hand, if NO at step S113, the process proceeds to step S114.
 ステップS114では、第1復号部111が、取得した判定情報としてのn番目のマクロブロックのヘッダが示すマクロブロックタイプを参照することにより、n番目のマクロブロックがダイレクトモードで符号化されているか否かを判定する。 In step S114, the first decoding unit 111 refers to the macroblock type indicated by the header of the nth macroblock as the acquired determination information, so that the nth macroblock is encoded in the direct mode. Determine whether.
 ここで、前回のステップS102~S124の処理が既に行われているとする。前回のステップS102~S124の処理とは、前述のステップS102~S124の処理の説明においてnをn-1に置き換えた処理である。この場合、前回のステップS124の処理により、mv保持メモリ124には、n番目用co-locatedマクロブロックの動きベクトルが記憶されているとする。 Here, it is assumed that the processing of the previous steps S102 to S124 has already been performed. The previous processing in steps S102 to S124 is processing in which n is replaced with n-1 in the description of the processing in steps S102 to S124 described above. In this case, it is assumed that the motion vector of the n-th co-located macroblock is stored in the mv holding memory 124 by the previous processing of step S124.
 ステップS115Aでは、mv算出部131が、mv保持メモリ124に記憶されているn番目用co-locatedマクロブロックの動きベクトルを用いて、n番目のマクロブロックの動きベクトルを算出する。そして、mv算出部131は、算出した動きベクトルを、mv転送指示部132、参照画像転送指示部133および動き補償処理部141へ送信する。 In step S115A, the mv calculation unit 131 calculates the motion vector of the nth macroblock using the motion vector of the nth co-located macroblock stored in the mv holding memory 124. Then, the mv calculation unit 131 transmits the calculated motion vector to the mv transfer instruction unit 132, the reference image transfer instruction unit 133, and the motion compensation processing unit 141.
 一方、ステップS113でNO,かつ、ステップS114でNOの場合、すなわち、n番目のマクロブロックがスキップトマクロブロックでなく、かつ、n番目のマクロブロックがダイレクトモードで符号化されていないと判定された場合は、ステップS115Bの処理が行われる。 On the other hand, if NO in step S113 and NO in step S114, that is, it is determined that the nth macroblock is not a skipped macroblock and the nth macroblock is not encoded in the direct mode. If YES, step S115B is performed.
 ステップS115Bでは、mv算出部131が、n番目のマクロブロックのヘッダに含まれる動きベクトルの差分情報を用いて、動きベクトルを算出する。 In step S115B, the mv calculation unit 131 calculates a motion vector using the motion vector difference information included in the header of the nth macroblock.
 そして、mv算出部131は、算出した動きベクトルを、mv転送指示部132、参照画像転送指示部133および動き補償処理部141へ送信する。 The mv calculation unit 131 transmits the calculated motion vector to the mv transfer instruction unit 132, the reference image transfer instruction unit 133, and the motion compensation processing unit 141.
 mv転送指示部132は、ステップS115AまたはステップS115Bで算出された動きベクトルを外部メモリ200に記憶させるためのベクトル記憶指示を、算出された動きベクトルとともに、DMAコントローラ130へ送信する。 The mv transfer instruction unit 132 transmits a vector storage instruction for storing the motion vector calculated in step S115A or step S115B in the external memory 200 to the DMA controller 130 together with the calculated motion vector.
 DMAコントローラ130は、当該動きベクトルおよびベクトル記憶指示を受信すると、当該動きベクトルと、n番目のマクロブロックのピクチャ内の空間的な位置情報とを対応付けて外部メモリ200に転送する(S131)。これにより、外部メモリ200に、動きベクトルとn番目のマクロブロックのピクチャ内の空間的な位置情報とが対応づけて記憶される。 When the DMA controller 130 receives the motion vector and the vector storage instruction, the DMA controller 130 associates the motion vector with the spatial position information in the picture of the nth macroblock and transfers it to the external memory 200 (S131). As a result, the motion vector and the spatial position information in the picture of the nth macroblock are stored in the external memory 200 in association with each other.
 そして、参照画像転送指示部133は、外部メモリ200に記憶されている、mv算出部131から送信された動きベクトルに基づく参照画像を、動き補償処理部141に転送させるための参照画像転送指示を、DMAコントローラ130へ送信する(S132)。 Then, the reference image transfer instruction unit 133 issues a reference image transfer instruction for causing the motion compensation processing unit 141 to transfer the reference image based on the motion vector transmitted from the mv calculation unit 131 and stored in the external memory 200. The data is transmitted to the DMA controller 130 (S132).
 DMAコントローラ130は、当該参照画像転送指示を受信すると、外部メモリ200から、指示された参照画像を読出し、当該参照画像を、動き補償処理部141へ転送する。 When receiving the reference image transfer instruction, the DMA controller 130 reads the instructed reference image from the external memory 200 and transfers the reference image to the motion compensation processing unit 141.
 動き補償処理部141は、動き補償処理を行う(S133)。動き補償処理では、動き補償処理部141が、mv算出部131から受信する動きベクトルと、DMAコントローラ130から受信する参照画像とを用いて、動き補償面間予測を行うことにより、予測画像を生成する。そして、動き補償処理部141は、生成した予測画像を、予測画像選択部143へ送信する。 The motion compensation processing unit 141 performs motion compensation processing (S133). In the motion compensation processing, the motion compensation processing unit 141 generates a predicted image by performing motion compensation inter-surface prediction using the motion vector received from the mv calculation unit 131 and the reference image received from the DMA controller 130. To do. Then, the motion compensation processing unit 141 transmits the generated predicted image to the predicted image selection unit 143.
 予測画像選択部143は、n番目のマクロブロックがインターマクロブロックである場合に動き補償処理部141から受信する予測画像を、復号画像合成部161へ送信する。 The predicted image selection unit 143 transmits the predicted image received from the motion compensation processing unit 141 to the decoded image synthesis unit 161 when the nth macroblock is an inter macroblock.
 逆直交変換部151は、逆直交変換処理を行う(S134)。逆直交変換処理では、逆直交変換部151が、第1復号部111から送信される画素残差周波数成分を逆直行変換することにより、画素残差成分を算出する。そして、逆直交変換部151は、当該画素残差成分を、逆量子化部152へ送信する。 The inverse orthogonal transform unit 151 performs an inverse orthogonal transform process (S134). In the inverse orthogonal transform process, the inverse orthogonal transform unit 151 calculates a pixel residual component by performing an inverse orthogonal transform on the pixel residual frequency component transmitted from the first decoding unit 111. Then, the inverse orthogonal transform unit 151 transmits the pixel residual component to the inverse quantization unit 152.
 逆量子化部152は、逆量子化処理を行う(S135)。逆量子化処理では、逆量子化部152が、逆直交変換部151から受信する画素残差成分に対し、逆量子化を行うことにより画素残差値を取得する。そして、逆量子化部152は、当該画素残差値を、復号画像合成部161へ送信する。 The inverse quantization unit 152 performs an inverse quantization process (S135). In the inverse quantization process, the inverse quantization unit 152 obtains a pixel residual value by performing inverse quantization on the pixel residual component received from the inverse orthogonal transform unit 151. Then, the inverse quantization unit 152 transmits the pixel residual value to the decoded image synthesis unit 161.
 一方で、ステップS112でNOの場合、すなわち、n番目のマクロブロックがイントラマクロブロックであった場合は、mv算出部131は、n番目のマクロブロックの動きベクトルの値を0とする(ステップS140)。 On the other hand, if NO in step S112, that is, if the nth macroblock is an intra macroblock, the mv calculation unit 131 sets the value of the motion vector of the nth macroblock to 0 (step S140). ).
 mv転送指示部132は、n番目のマクロブロックの動きベクトルを、外部メモリ200に記憶させるためのベクトル記憶指示を、DMAコントローラ130へ送信する。 The mv transfer instruction unit 132 transmits a vector storage instruction for storing the motion vector of the nth macroblock in the external memory 200 to the DMA controller 130.
 DMAコントローラ130は、ベクトル記憶指示を受信すると、当該動きベクトルと、n番目のマクロブロックのピクチャ内の空間的な位置情報とを対応づけて外部メモリ200へ転送する(S141)。これにより、外部メモリ200に、当該動きベクトルとn番目のマクロブロックのピクチャ内の空間的な位置情報とが対応づけて記憶される。 When the DMA controller 130 receives the vector storage instruction, the DMA controller 130 associates the motion vector with the spatial position information in the picture of the n-th macroblock and transfers it to the external memory 200 (S141). As a result, the external memory 200 stores the motion vector and spatial position information in the picture of the nth macroblock in association with each other.
 面内予測処理部142は、面内予測処理を行う(S142)。面内予測処理では、面内予測処理部142が、n番目のマクロブロックの周辺画像から予測画像を生成し、生成した予測画像を、予測画像選択部143へ送信する。 The in-plane prediction processing unit 142 performs in-plane prediction processing (S142). In the in-plane prediction process, the in-plane prediction processing unit 142 generates a predicted image from the peripheral image of the nth macroblock, and transmits the generated predicted image to the predicted image selection unit 143.
 予測画像選択部143は、n番目のマクロブロックがイントラマクロブロックである場合、面内予測処理部142から受信する予測画像を、復号画像合成部161へ送信する。 The predicted image selection unit 143 transmits the predicted image received from the in-plane prediction processing unit 142 to the decoded image synthesis unit 161 when the nth macroblock is an intra macroblock.
 逆直交変換部151は、逆直交変換処理を行う(S144)。逆直交変換処理では、逆直交変換部151が、第1復号部111から送信される画素残差周波数成分を逆直行変換することにより、画素残差値を算出する。そして、逆直交変換部151は、当該画素残差成分を、逆量子化部152へ送信する。 The inverse orthogonal transform unit 151 performs an inverse orthogonal transform process (S144). In the inverse orthogonal transform process, the inverse orthogonal transform unit 151 calculates a pixel residual value by performing an inverse orthogonal transform on the pixel residual frequency component transmitted from the first decoding unit 111. Then, the inverse orthogonal transform unit 151 transmits the pixel residual component to the inverse quantization unit 152.
 逆量子化部152は、逆量子化処理を行う(S145)。逆量子化処理では、逆量子化部152が、逆直交変換部151が出力した画素残差値に対し、逆量子化を行うことにより画素残差値を取得する。そして、逆量子化部152は、当該画素残差値を、復号画像合成部161へ送信する。 The inverse quantization unit 152 performs an inverse quantization process (S145). In the inverse quantization process, the inverse quantization unit 152 obtains a pixel residual value by performing inverse quantization on the pixel residual value output from the inverse orthogonal transform unit 151. Then, the inverse quantization unit 152 transmits the pixel residual value to the decoded image synthesis unit 161.
 前述したように、n番目のマクロブロックがイントラマクロブロックである場合、予測画像選択部143は、面内予測処理部142から受信する予測画像を、復号画像合成部161へ送信する。 As described above, when the n-th macroblock is an intra macroblock, the predicted image selection unit 143 transmits the predicted image received from the in-plane prediction processing unit 142 to the decoded image synthesis unit 161.
 また、前述したように、n番目のマクロブロックがインターマクロブロックである場合、予測画像選択部143は、動き補償処理部141から受信する予測画像を、復号画像合成部161へ送信する。 As described above, when the n-th macroblock is an inter macroblock, the predicted image selection unit 143 transmits the predicted image received from the motion compensation processing unit 141 to the decoded image synthesis unit 161.
 また、ステップS135またはステップS145の処理により、復号画像合成部161は、逆量子化部152が送信した画素残差値を受信する。 In addition, the decoded image synthesis unit 161 receives the pixel residual value transmitted by the inverse quantization unit 152 by the processing of step S135 or step S145.
 復号画像合成部161は、復号画像合成処理を行う(S151)。復号画像合成処理では、復号画像合成部161が、受信した画素残差値および予測画像を足し合わせることにより、復号画像を生成する。そして、復号画像合成部161は、生成した復号画像を、デブロックフィルタ処理部162へ送信する。 The decoded image synthesis unit 161 performs a decoded image synthesis process (S151). In the decoded image synthesis process, the decoded image synthesis unit 161 generates a decoded image by adding the received pixel residual value and the predicted image. Then, the decoded image synthesis unit 161 transmits the generated decoded image to the deblock filter processing unit 162.
 デブロックフィルタ処理部162は、復号画像合成部161から受信した復号画像に対し、デブロックフィルタ処理を行う(S152)。ここで、デブロックフィルタ処理とは、デブロッキング・フィルタを使用したフィルタ処理である。そして、デブロックフィルタ処理部162は、デブロックフィルタ処理が行われた復号画像を、復号画像転送指示部163へ送信する。 The deblock filter processing unit 162 performs deblock filter processing on the decoded image received from the decoded image synthesis unit 161 (S152). Here, the deblocking filter process is a filter process using a deblocking filter. Then, the deblock filter processing unit 162 transmits the decoded image on which the deblock filter process has been performed to the decoded image transfer instruction unit 163.
 復号画像転送指示部163は、復号画像記憶処理を行う(S153)。復号画像記憶処理では、復号画像転送指示部163が、受信した復号画像を外部メモリ200に記憶させるための復号画像記憶指示を、当該復号画像とともに、DMAコントローラ130へ送信する。 The decoded image transfer instruction unit 163 performs a decoded image storage process (S153). In the decoded image storage process, the decoded image transfer instruction unit 163 transmits a decoded image storage instruction for storing the received decoded image in the external memory 200 to the DMA controller 130 together with the decoded image.
 DMAコントローラ130は、復号画像記憶指示を受信すると、受信した復号画像を、外部メモリ200に記憶させる。 When the DMA controller 130 receives the decoded image storage instruction, the DMA controller 130 stores the received decoded image in the external memory 200.
 そして、nの値が1インクリメントされ(S154)、再度、ステップS102の処理が行われる。 Then, the value of n is incremented by 1 (S154), and the process of step S102 is performed again.
 以下に説明するステップS102~ステップS124の処理、ステップS110~S114の処理は、前述した説明において、nをn+1に置き換えた処理と同様な処理であるので詳細な説明は繰り返さない。以下、簡単に説明する。 The processes in steps S102 to S124 and the processes in steps S110 to S114 described below are the same as the processes in which n is replaced with n + 1 in the above description, and thus detailed description will not be repeated. A brief description is given below.
 ステップS102の処理により、第2復号部121は、n+1番目およびn+2番目のマクロブロックを取得する。 The second decoding unit 121 acquires the (n + 1) th and (n + 2) th macroblocks by the process of step S102.
 ステップS120の処理により、第2復号部121は、n+2番目のマクロブロックのヘッダを取得する。 The second decoding unit 121 acquires the header of the (n + 2) th macroblock by the process of step S120.
 ステップS121の処理により、第2復号部121は、n+1番目のマクロブロックと、復号された判定情報とを、第1復号部111へ送信する。当該復号された判定情報は、スキップ情報、n+2番目のマクロブロックのヘッダである。これにより、第1復号部111は、n+1番目のマクロブロックと、判定情報(スキップ情報、n+2番目のマクロブロックのヘッダ)とを受信することにより取得する(S110)。 The second decoding unit 121 transmits the (n + 1) th macroblock and the decoded determination information to the first decoding unit 111 by the process of step S121. The decoded determination information is skip information and the header of the (n + 2) th macroblock. Thereby, the 1st decoding part 111 is acquired by receiving the (n + 1) th macroblock and the determination information (skip information, the header of the (n + 2) th macroblock) (S110).
 そして、ステップS122でYESまたはステップS123でYESの場合、ステップS124の処理が行われる。 If YES in step S122 or YES in step S123, the process of step S124 is performed.
 ステップS124の処理により、n+2番目用co-locatedマクロブロックの動きベクトルが、mv保持メモリ124へ転送される。これにより、mv保持メモリ124にn+2番目用co-locatedマクロブロックの動きベクトルが記憶される。 The motion vector of the (n + 2) th co-located macroblock is transferred to the mv holding memory 124 by the process of step S124. As a result, the motion vector of the (n + 2) th co-located macroblock is stored in the mv holding memory 124.
 上記ステップS121~S124の処理と並行して、ステップS111~S114の処理が行われる。 In parallel with the processes in steps S121 to S124, the processes in steps S111 to S114 are performed.
 ステップS111の処理で実行されるMB復号処理により、第1復号部111がn+1番目のマクロブロックを復号する。 The first decoding unit 111 decodes the (n + 1) th macroblock by the MB decoding process executed in the process of step S111.
 そして、ステップS112の処理の後、ステップS113でYESまたはステップS114でYESの場合、ステップS115Aの処理が行われる。ここで、ステップS113でYESまたはステップS114でYESの場合は、n+1番目のマクロブロックがスキップトマクロブロックである場合、または、n+1番目のマクロブロックがダイレクトモードで符号化されている場合である。 Then, after the process of step S112, if YES in step S113 or YES in step S114, the process of step S115A is performed. Here, if YES in step S113 or YES in step S114, the n + 1-th macroblock is a skipped macroblock or the n + 1-th macroblock is encoded in the direct mode.
 また、n+1番目のマクロブロックがスキップトマクロブロックである場合、または、n+1番目のマクロブロックがダイレクトモードで符号化されている場合は、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要な場合である。 When the (n + 1) th macroblock is a skipped macroblock, or when the (n + 1) th macroblock is encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is n + 1th. This is a case necessary for calculating the motion vector of the macroblock.
 ステップS115Aの処理により、mv算出部131が、mv保持メモリ124に記憶されているn+1番目用co-locatedマクロブロックの動きベクトルを用いて、n+1番目のマクロブロックの動きベクトルを算出する。 By the process of step S115A, the mv calculation unit 131 calculates the motion vector of the (n + 1) th macroblock using the motion vector of the (n + 1) th co-located macroblock stored in the mv holding memory 124.
 すなわち、mv算出部131は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、バッファとしてのmv保持メモリ124に転送されたw番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを用いてw番目のマクロブロックの動きベクトルを算出する。 That is, when the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the mv calculation unit 131 stores the mv holding memory 124 as a buffer. The motion vector of the wth macroblock is calculated using the motion vector of the co-located macroblock corresponding to the transferred wth macroblock.
 なお、ステップS131~S135の処理、ステップS140~S145の処理、ステップS151~S153の処理は、前述した説明において、nをn+1に置き換えた処理と同様な処理であるので詳細な説明は繰り返さない。 Note that the processing in steps S131 to S135, the processing in steps S140 to S145, and the processing in steps S151 to S153 are the same as the processing in which n is replaced with n + 1 in the above description, and thus detailed description will not be repeated.
 なお、ステップS131の処理により、転送部としてのDMAコントローラ130は、算出されたw番目のマクロブロックの動きベクトルを、外部メモリ200へ転送する。 Note that the DMA controller 130 as a transfer unit transfers the calculated motion vector of the w-th macroblock to the external memory 200 by the process of step S131.
 以上、本実施の形態によれば、n+1番目のマクロブロックがスキップトマクロブロックである場合、または、n+1番目のマクロブロックがダイレクトモードで符号化されている場合、n+1番目用co-locatedマクロブロックの動きベクトルが、mv保持メモリ124へ転送される。また、当該動きベクトルの転送と並行して、n番目のマクロブロックの復号処理が実行される。 As described above, according to the present embodiment, when the (n + 1) th macroblock is a skipped macroblock, or when the (n + 1) th macroblock is encoded in the direct mode, the (n + 1) th co-located macroblock is used. Are transferred to the mv holding memory 124. In parallel with the transfer of the motion vector, the decoding process of the nth macroblock is executed.
 n+1番目のマクロブロックがスキップトマクロブロックである場合、または、n+1番目のマクロブロックがダイレクトモードで符号化されている場合は、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要な場合である。 When the (n + 1) th macroblock is a skipped macroblock, or when the (n + 1) th macroblock is encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is the (n + 1) th macroblock. This is a case necessary for calculation of the motion vector.
 また、n+1番目のマクロブロックがスキップトマクロブロックでなく、かつ、n+1番目のマクロブロックがダイレクトモードで符号化されていない場合、n+1番目用co-locatedマクロブロックの動きベクトルは、mv保持メモリ124へ転送されない。この場合、n番目のマクロブロックの復号処理のみが実行される。 When the (n + 1) th macroblock is not a skipped macroblock and the (n + 1) th macroblock is not encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is the mv holding memory 124. Not transferred to. In this case, only the decoding process of the nth macroblock is executed.
 n+1番目のマクロブロックがスキップトマクロブロックでなく、かつ、n+1番目のマクロブロックがダイレクトモードで符号化されてない場合は、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要でない場合である。 If the (n + 1) th macroblock is not a skipped macroblock and the (n + 1) th macroblock is not encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is the same as that of the (n + 1) th macroblock. This is a case where it is not necessary to calculate a motion vector.
 これにより、n+1番目のマクロブロックがスキップトマクロブロックである場合、または、n+1番目のマクロブロックがダイレクトモードで符号化されている場合でも、n+1番目のマクロブロックを復号する際に、すぐにmv保持メモリ124に記憶されているn+1番目用co-locatedマクロブロックの動きベクトルを用いて、n番目のマクロブロックの動きベクトルを算出することができる。 Thus, even when the (n + 1) th macroblock is a skipped macroblock or when the (n + 1) th macroblock is encoded in the direct mode, the mv Using the motion vector of the (n + 1) th co-located macroblock stored in the holding memory 124, the motion vector of the nth macroblock can be calculated.
 また、n+1番目のマクロブロックがスキップトマクロブロックでなく、かつ、n+1番目のマクロブロックがダイレクトモードで符号化されてない場合、n+1番目用co-locatedマクロブロックの動きベクトルは、外部メモリ200からDMAコントローラ130を介してmv保持メモリ124へ転送されない。よって、外部メモリへの不要なメモリアクセスを低減することができる。 When the (n + 1) th macroblock is not a skipped macroblock and the (n + 1) th macroblock is not encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is obtained from the external memory 200. The data is not transferred to the mv holding memory 124 via the DMA controller 130. Therefore, unnecessary memory access to the external memory can be reduced.
 次に、従来の画像復号装置の処理を示す図15を用いて、本実施の形態の処理の効果を説明する。図15に示されるように、従来の動画像復号装置では、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要であるか否かに関わらず、常に、n番目のマクロブロックの復号処理と、n+1番目用co-locatedマクロブロックの動きベクトルがバッファへ転送される処理とが並列して実行される。 Next, the effect of the processing of this embodiment will be described with reference to FIG. 15 showing the processing of the conventional image decoding apparatus. As shown in FIG. 15, in the conventional video decoding device, regardless of whether or not the motion vector of the (n + 1) th co-located macroblock is necessary for calculating the motion vector of the (n + 1) th macroblock, The decoding process of the nth macroblock and the process of transferring the motion vector of the (n + 1) th co-located macroblock to the buffer are executed in parallel.
 すなわち、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要でない場合であっても、外部メモリからn+1番目用co-locatedマクロブロックの動きベクトルが転送される。すなわち、外部メモリへの不要なメモリアクセスが発生してしまう。 That is, even when the motion vector of the (n + 1) th co-located macroblock is not necessary for calculating the motion vector of the (n + 1) th macroblock, the motion vector of the (n + 1) th co-located macroblock is transferred from the external memory. The That is, unnecessary memory access to the external memory occurs.
 これに対し、本実施の形態の処理を図3を用いて説明する。図3に示される図15と同じ用語は、図15で説明したので詳細な説明は繰り返さない。 In contrast, the processing of the present embodiment will be described with reference to FIG. The same terms as FIG. 15 shown in FIG. 3 have been described with reference to FIG.
 図3において、MB(n+1)ヘッダ処理とは、n+1番目のマクロブロックのヘッダが復号され、当該ヘッダを参照して行われる処理を示す。MB(n+1)ヘッダ処理は、ステップS120~S123の処理に対応する。 3, MB (n + 1) header processing refers to processing performed by decoding the header of the (n + 1) th macroblock and referring to the header. The MB (n + 1) header process corresponds to the processes in steps S120 to S123.
 また、MB(n)ヘッダ処理とは、n番目のマクロブロックのヘッダを参照して行われる処理を示す。MB(n)ヘッダ処理は、ステップS111~S114の処理に対応する。また、MB(n)復号処理とは、n番目のマクロブロックを復号する処理を示す。MB(n)復号処理は、ステップS111に対応する。 Also, MB (n) header processing refers to processing performed with reference to the header of the nth macroblock. The MB (n) header process corresponds to the processes in steps S111 to S114. The MB (n) decoding process is a process for decoding the nth macroblock. The MB (n) decoding process corresponds to step S111.
 また、動きベクトル算出(n)とは、n番目のマクロブロックの動きベクトルを算出する処理を示す。また、転送指示#(n+1)送信とは、n+1番目用co-locatedマクロブロックの動きベクトルをmv保持メモリ124へ転送させるための転送指示が送信される処理を示す。転送指示#(n+1)送信は、ステップS124の処理に対応する。 Also, motion vector calculation (n) indicates processing for calculating the motion vector of the nth macroblock. The transfer instruction # (n + 1) transmission indicates a process in which a transfer instruction for transferring the motion vector of the (n + 1) th co-located macroblock to the mv holding memory 124 is transmitted. Transmission of transfer instruction # (n + 1) corresponds to the process of step S124.
 また、mv#(n+1)転送とは、n+1番目用co-locatedマクロブロックの動きベクトルが、mv保持メモリ124へ転送されることにより、mv保持メモリ124に記憶される処理を示す。mv#(n+1)転送は、ステップS124の処理に対応する。 Also, mv # (n + 1) transfer refers to a process in which the motion vector of the (n + 1) th co-located macroblock is stored in the mv holding memory 124 by being transferred to the mv holding memory 124. The mv # (n + 1) transfer corresponds to the process of step S124.
 また、図3において、「第2復号部」の右側に記載される処理は、第2復号部121により行われる処理である。「第1復号部」の右側に記載される処理は、第1復号部111により行われる処理である。 In FIG. 3, the process described on the right side of the “second decoding unit” is a process performed by the second decoding unit 121. The process described on the right side of the “first decoding unit” is a process performed by the first decoding unit 111.
 また、図3において、mvColが不要な場合とは、w(例えば、n+1)番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合である。すなわち、mvColが不要な場合とは、w番目のマクロブロックがスキップトマクロブロックでなく、かつ、w番目のマクロブロックがダイレクトモードで符号化されていない場合である。 In FIG. 3, when mvCol is not necessary, the motion vector of the co-located macroblock corresponding to the w (for example, n + 1) th macroblock is not necessary for calculating the motion vector of the wth macroblock. Is the case. That is, the case where mvCol is unnecessary is a case where the w-th macroblock is not a skipped macroblock and the w-th macroblock is not encoded in the direct mode.
 また、図3において、mvColが必要な場合とは、w(例えば、n+1)番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合である。すなわち、mvColが必要な場合とは、w番目のマクロブロックがスキップトマクロブロックである場合、または、w番目のマクロブロックがダイレクトモードで符号化されている場合である。 In FIG. 3, mvCol is necessary when the motion vector of the co-located macroblock corresponding to the w (for example, n + 1) th macroblock is necessary for calculating the motion vector of the wth macroblock. It is the case. That is, the case where mvCol is necessary is a case where the w-th macroblock is a skipped macroblock or a case where the w-th macroblock is encoded in the direct mode.
 図3に示されるように、第1復号部111によるv(例えば、n)番目のマクロブロックの復号が終了する前に、第2復号部121は、w(例えば、n+1)番目のマクロブロックに対応する符号化された判定情報(w(n+1)番目のマクロブロックのヘッダ)を復号する。 As shown in FIG. 3, before the decoding of the v (for example, n) -th macroblock by the first decoding unit 111, the second decoding unit 121 sets the w (for example, n + 1) -th macroblock. Corresponding encoded determination information (the header of the w (n + 1) th macroblock) is decoded.
 また、図3に示されるように、ステップS120~S123の処理により、第2復号部121によりn+1番目のマクロブロックのヘッダが復号され、ヘッダを参照した処理が行われる。 Also, as shown in FIG. 3, the header of the (n + 1) th macroblock is decoded by the second decoding unit 121 by the processing of steps S120 to S123, and processing with reference to the header is performed.
 n+1番目のマクロブロックがスキップトマクロブロックである場合、または、n+1番目のマクロブロックがダイレクトモードで符号化されている場合、n+1番目用co-locatedマクロブロックの動きベクトルがmv保持メモリ124へ転送される処理(S124)と、n番目のマクロブロックの復号処理(S111)とが並行して実行される。また、この場合、ステップS111の処理と、ステップS115Aの処理とが並行して実行される。 When the (n + 1) th macroblock is a skipped macroblock, or when the (n + 1) th macroblock is encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is transferred to the mv holding memory 124. The process to be performed (S124) and the decoding process (S111) of the nth macroblock are executed in parallel. In this case, the process of step S111 and the process of step S115A are executed in parallel.
 すなわち、転送部としてのDMAコントローラ130は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルがw番目のマクロブロックの動きベクトルの算出に必要である場合、v番目のマクロブロックの復号が行われている期間において、当該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、外部メモリ200からバッファとしてのmv保持メモリ124へ転送する。 That is, when the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the DMA controller 130 serving as the transfer unit During the decoding period, the motion vector of the co-located macroblock corresponding to the w-th macroblock is transferred from the external memory 200 to the mv holding memory 124 as a buffer.
 n+1番目のマクロブロックがスキップトマクロブロックでなく、かつ、n+1番目のマクロブロックがダイレクトモードで符号化されていない場合、n+1番目用co-locatedマクロブロックの動きベクトルがmv保持メモリ124へ転送される処理(S124)は実行されない。この場合、n番目のマクロブロックの復号処理(S111)が実行される。また、この場合、ステップS111の処理と、ステップS115Bの処理とが並行して実行される。 When the (n + 1) th macroblock is not a skipped macroblock and the (n + 1) th macroblock is not encoded in the direct mode, the motion vector of the (n + 1) th co-located macroblock is transferred to the mv holding memory 124. The process (S124) is not executed. In this case, the decoding process (S111) of the nth macroblock is executed. In this case, the process of step S111 and the process of step S115B are executed in parallel.
 すなわち、転送部としてのDMAコントローラ130は、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルがw番目のマクロブロックの動きベクトルの算出に必要でない場合、v番目のマクロブロックの復号が行われている期間において、当該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、外部メモリ200からバッファとしてのmv保持メモリ124へ転送しない。 That is, the DMA controller 130 as the transfer unit decodes the v-th macroblock when the motion vector of the co-located macroblock corresponding to the w-th macroblock is not necessary for calculating the motion vector of the w-th macroblock. In the period when the w-th macroblock is performed, the motion vector of the co-located macroblock corresponding to the w-th macroblock is not transferred from the external memory 200 to the mv holding memory 124 as a buffer.
 これにより、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要な場合、n+1番目のマクロブロックを復号する際に、すぐにmv保持メモリ124に記憶されているn+1番目用co-locatedマクロブロックの動きベクトルを用いて動きベクトルを算出することができる。 As a result, when the motion vector of the (n + 1) th co-located macroblock is necessary for calculating the motion vector of the (n + 1) th macroblock, it is immediately stored in the mv holding memory 124 when the (n + 1) th macroblock is decoded. The motion vector can be calculated using the motion vector of the (n + 1) th co-located macroblock.
 また、n+1番目用co-locatedマクロブロックの動きベクトルがn+1番目のマクロブロックの動きベクトルの算出に必要でない場合、n+1番目用co-locatedマクロブロックの動きベクトルが、外部メモリ200からDMAコントローラ130を介してmv保持メモリ124へ転送されない。よって、不要な転送が行われず外部メモリへの不要なメモリアクセスを低減することができる。 If the motion vector of the (n + 1) th co-located macroblock is not necessary for calculating the motion vector of the (n + 1) th macroblock, the motion vector of the (n + 1) th co-located macroblock is transferred from the external memory 200 to the DMA controller 130. And not transferred to the mv holding memory 124. Therefore, unnecessary transfer is not performed, and unnecessary memory access to the external memory can be reduced.
 この並列処理は、n+2番目、n+3番目、・・・n+x番目のマクロブロックに対しても同様に行われる。ここで、n+x番目のマクロブロックは、ストリームに含まれる最後のマクロブロックである。したがって、どのマクロブロックに対しても上記と同様の効果を奏する。  This parallel processing is similarly performed for the (n + 2) th, n + 3th,..., N + xth macroblocks. Here, the n + x-th macroblock is the last macroblock included in the stream. Therefore, the same effects as described above can be obtained for any macroblock.
 具体的には、画像復号装置内のバッファ容量の制約により、復号済みの動きベクトルをいったん外部メモリに記憶しておく必要がある画像復号装置であっても、マクロブロックの復号を開始する前に、将来復号するマクロブロックがダイレクトモードで符号化されているか否かを判定するために必要な情報のみが先行的に復号される。 Specifically, even in the case of an image decoding apparatus that needs to store a decoded motion vector in an external memory once due to the buffer capacity restriction in the image decoding apparatus, before starting decoding of a macroblock Only information necessary for determining whether or not a macroblock to be decoded in the future is encoded in the direct mode is decoded in advance.
 そして、将来復号するマクロブロックがダイレクトモードで符号化されているか否かが判定される。ダイレクトモードで符号化されている場合は、必要な動きベクトルを外部メモリから先行的に画像復号装置内のバッファに転送しておき、ダイレクトモードで符号化されてない場合は必要な動きベクトルの転送を行わない。 Then, it is determined whether or not a macroblock to be decoded in the future is encoded in the direct mode. If encoded in the direct mode, the necessary motion vector is transferred from the external memory to the buffer in the image decoding device in advance, and if it is not encoded in the direct mode, the necessary motion vector is transferred. Do not do.
 ダイレクトモードで符号化されているか否かの判定を先行して行う構成により、マクロブロックがダイレクトモードで符号化されていない場合は、動きベクトルの転送が行われないため、外部メモリへの不要なメモリアクセスが発生せず、マクロブロックがダイレクトモードで符号化されている場合は、先行して必要な動きベクトルが転送される。 If the macro block is not encoded in the direct mode, the motion vector is not transferred if the macro block is not encoded in the direct mode. If no memory access occurs and the macroblock is encoded in the direct mode, the necessary motion vector is transferred in advance.
 そのため、あるマクロブロックがダイレクトモードで符号化されていた場合は、このマクロブロックを復号するときに、すぐに、動きベクトルを算出できる。 Therefore, when a macroblock is encoded in the direct mode, a motion vector can be calculated immediately when decoding the macroblock.
 この結果、マクロブロックがダイレクトモードで符号化されている場合、当該マクロブロックの復号に要する時間を短縮することができ、かつ、外部メモリへのメモリアクセスを低減することができる。 As a result, when the macroblock is encoded in the direct mode, the time required for decoding the macroblock can be shortened and memory access to the external memory can be reduced.
 すなわち、ダイレクトモードで符号化されたマクロブロックを高速に復号しつつ、外部メモリ200への不要なメモリアクセスを低減することができる。 That is, unnecessary memory access to the external memory 200 can be reduced while the macroblock encoded in the direct mode is decoded at high speed.
 なお、本実施の形態では、ダイレクトモードが時間ダイレクトモードである場合の処理について説明したが、これに限定されない。ダイレクトモードが空間ダイレクトモードであっても本実施の形態は実現可能である。ダイレクトモードが空間ダイレクトモードである場合、例えば、特許第4106070号公報に記載されている処理と同様な処理により、動きベクトルを算出することができる。 In the present embodiment, the processing in the case where the direct mode is the time direct mode has been described, but the present invention is not limited to this. Even if the direct mode is the spatial direct mode, this embodiment can be realized. When the direct mode is the spatial direct mode, for example, a motion vector can be calculated by a process similar to the process described in Japanese Patent No. 4106070.
 (実施の形態2)
 本実施の形態では、処理対象のマクロブロックがインターマクロブロックであるか否かの判定結果により、w番目用co-locatedマクロブロックの動きベクトルが外部メモリ200からmv保持メモリ124へ転送される。
(Embodiment 2)
In the present embodiment, the motion vector of the w-th co-located macroblock is transferred from the external memory 200 to the mv holding memory 124 based on the determination result of whether or not the macroblock to be processed is an inter macroblock.
 本実施の形態における画像復号システムは、図1の画像復号システム1000である。つまり、本実施の形態における画像復号装置は、図1の画像復号装置100である。そのため、画像復号装置100の各部の詳細な説明は繰り返さない。 The image decoding system in the present embodiment is the image decoding system 1000 in FIG. That is, the image decoding apparatus in the present embodiment is the image decoding apparatus 100 in FIG. Therefore, detailed description of each part of the image decoding apparatus 100 will not be repeated.
 次に、画像復号システム1000が行う処理(以下、復号処理Aという)について説明する。図4は、復号処理Aのフローチャートである。図4において、図2のステップ番号と同じステップ番号の処理は、第1の実施の形態で説明した処理と同様な処理が行われるので詳細な説明は繰り返さない。 Next, processing (hereinafter referred to as decoding processing A) performed by the image decoding system 1000 will be described. FIG. 4 is a flowchart of the decoding process A. In FIG. 4, the process with the same step number as the step number of FIG. 2 is the same as the process described in the first embodiment, and therefore detailed description will not be repeated.
 復号処理Aは、図2の復号処理と比較して、ステップS122の代わりにステップS122Aが行われる点と、ステップS115Aの代わりにステップS116Aが行われる点と、ステップS123,S113,S114,S115Bが行われない点が異なる。それ以外は、図2の復号処理と同様なので詳細な説明は繰り返さない。 Compared with the decoding process of FIG. 2, the decoding process A includes steps S122A instead of step S122, steps S116A instead of step S115A, and steps S123, S113, S114, and S115B. The difference is not done. The rest is the same as the decoding process of FIG.
 ステップS122Aでは、ブロック情報を利用して、n+1番目のマクロブロックがインターマクロブロックであるか否かが判定される。判定情報としてのブロック情報は、w番目のマクロブロックがインターマクロブロックであるか否かを示す。 In step S122A, it is determined whether or not the (n + 1) th macroblock is an inter macroblock using the block information. The block information as the determination information indicates whether or not the w-th macroblock is an inter macroblock.
 具体的には、判定部122が、第2復号部121から受信した、判定情報としてのブロック情報が、対応するマクロブロックがインターマクロブロックであることを示すか否かを判定する。 Specifically, the determination unit 122 determines whether the block information as the determination information received from the second decoding unit 121 indicates that the corresponding macroblock is an inter macroblock.
 ステップS122AにおいてYESならば、処理はステップS124に移行する。一方。ステップS122AにおいてNOならば処理はステップS154へ移行する。ステップS122AでYESの場合は、w(例えば、n+1)番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合である。 If YES in step S122A, the process proceeds to step S124. on the other hand. If NO in step S122A, the process proceeds to step S154. The case of YES in step S122A is a case where the motion vector of the co-located macroblock corresponding to the w (for example, n + 1) th macroblock is necessary for calculating the motion vector of the wth macroblock.
 そして、ステップS124の処理が第1の実施の形態と同様に行われる。これにより、mv保持メモリ124にn+1番目用co-locatedマクロブロックの動きベクトルが記憶される。 Then, the process of step S124 is performed in the same manner as in the first embodiment. As a result, the motion vector of the (n + 1) th co-located macroblock is stored in the mv holding memory 124.
 ここで、図4の前回のステップS102~S124の処理が既に行われているとする。前回のステップS102~S124の処理とは、前述のステップS102~S124の処理の説明においてnをn-1に置き換えた処理である。この場合、前回のステップS124の処理により、mv保持メモリ124には、n番目用co-locatedマクロブロックの動きベクトルが記憶される。すなわち、n番目用co-locatedマクロブロックの動きベクトルが外部メモリ200からバッファとしてのmv保持メモリ124へ転送される。 Here, it is assumed that the processing of the previous steps S102 to S124 in FIG. 4 has already been performed. The previous processing of steps S102 to S124 is processing in which n is replaced with n−1 in the description of the processing of steps S102 to S124 described above. In this case, the motion vector of the n-th co-located macroblock is stored in the mv holding memory 124 by the previous processing in step S124. That is, the motion vector of the n-th co-located macroblock is transferred from the external memory 200 to the mv holding memory 124 as a buffer.
 ステップS112でYESの場合、処理はステップS116Aに移行する。 If YES in step S112, the process proceeds to step S116A.
 ステップS116Aでは、mv算出部131は、n番目のマクロブロックのヘッダに含まれる動きベクトルの差分情報と、mv保持メモリ124に記憶されているn番目用co-locatedマクロブロックの動きベクトルを用いて、n番目のマクロブロックの動きベクトルを算出する。 In step S116A, the mv calculation unit 131 uses the motion vector difference information included in the header of the nth macroblock and the motion vector of the nth co-located macroblock stored in the mv holding memory 124. , The motion vector of the nth macroblock is calculated.
 そして、第1の実施の形態同様、ステップS131以降の処理が行われる。 And the process after step S131 is performed like 1st Embodiment.
 以上説明したように、本実施の形態によれば、復号対象のマクロブロックの次に復号対象となるマクロブロックが、インターマクロブロックである場合、co-locatedマクロブロックの動きベクトルの転送の処理が行われる。また、復号対象のマクロブロックの次に復号対象となるマクロブロックが、インターマクロブロックでない場合、co-locatedマクロブロックの動きベクトルの転送の処理が行われない。 As described above, according to the present embodiment, when the macroblock to be decoded next to the macroblock to be decoded is an inter macroblock, the motion vector transfer process of the co-located macroblock is performed. Done. If the macroblock to be decoded next to the macroblock to be decoded is not an inter macroblock, the motion vector transfer process of the co-located macroblock is not performed.
 これにより、第1の実施の形態と同様な効果が得られる。すなわち、不要な転送が行われず外部メモリへの不要なメモリアクセスを低減することができる。 Thereby, the same effect as the first embodiment can be obtained. That is, unnecessary transfer is not performed and unnecessary memory access to the external memory can be reduced.
 (その他の変形例)
 前述の画像復号装置100では、第2復号部121が、取得したn番目のマクロブロックを、第1復号部111へ送信する。すなわち、第1復号部111は、第2復号部121からマクロブロックを受信するとしたが、これに限定されない。例えば、第1復号部111が、DMAコントローラ130を介して、外部メモリ200からストリームに含まれるマクロブロックを取得してもよい。
(Other variations)
In the image decoding device 100 described above, the second decoding unit 121 transmits the acquired n-th macroblock to the first decoding unit 111. That is, the first decoding unit 111 receives a macroblock from the second decoding unit 121, but is not limited thereto. For example, the first decoding unit 111 may acquire a macroblock included in the stream from the external memory 200 via the DMA controller 130.
 以下に、第1復号部111が外部メモリ200からストリームを受信する構成の画像復号装置100Aを含む画像復号システム1000Aについて説明する。 Hereinafter, an image decoding system 1000A including the image decoding apparatus 100A configured to receive the stream from the external memory 200 by the first decoding unit 111 will be described.
 図5は、画像復号システム1000Aの構成を示すブロック図である。 FIG. 5 is a block diagram showing a configuration of the image decoding system 1000A.
 図5に示されるように、画像復号システム1000Aは、図1の画像復号システム1000と比較して、画像復号装置100の代わりに画像復号装置100Aを含む点が異なる。それ以外の画像復号装置100Aの構成は、と同様なので詳細な説明は繰り返さない。 5, the image decoding system 1000A is different from the image decoding system 1000 in FIG. 1 in that it includes an image decoding device 100A instead of the image decoding device 100. Since the other configuration of the image decoding apparatus 100A is the same as that of the image decoding apparatus 100A, detailed description will not be repeated.
 画像復号装置100Aは、図1の画像復号装置100と比較して、第1転送指示部110をさらに備える点が異なる。それ以外の画像復号装置100Aの構成は、画像復号装置100と同様なので詳細な説明は繰り返さない。 The image decoding device 100A is different from the image decoding device 100 of FIG. 1 in that it further includes a first transfer instruction unit 110. Since the other configuration of the image decoding device 100A is the same as that of the image decoding device 100, detailed description will not be repeated.
 第1転送指示部110は、DMAコントローラ130に対して、外部メモリ200に記憶されているストリームを第1復号部111へ転送させるためのストリーム転送指示を、DMAコントローラ130へ送信する。 The first transfer instruction unit 110 transmits, to the DMA controller 130, a stream transfer instruction for causing the DMA controller 130 to transfer a stream stored in the external memory 200 to the first decoding unit 111.
 DMAコントローラ130は、当該ストリーム転送指示を受信すると、外部メモリ200からストリームを読み出し、当該ストリームを、第1復号部111へ転送する。 When receiving the stream transfer instruction, the DMA controller 130 reads the stream from the external memory 200 and transfers the stream to the first decoding unit 111.
 そして、第1復号部111は、受信しているストリームから、n番目のマクロブロックを取得する。 Then, the first decoding unit 111 acquires the nth macroblock from the received stream.
 この場合、画像復号装置100Aが行う図2の復号処理のステップS101のストリーム転送処理において、第1復号部111および第2復号部121の各々がストリームを受信する。 In this case, in the stream transfer process in step S101 of the decoding process of FIG. 2 performed by the image decoding apparatus 100A, each of the first decoding unit 111 and the second decoding unit 121 receives a stream.
 そして、ステップS102の処理において、第1復号部111および第2復号部121は、それぞれ、n番目およびn+1番目のマクロブロックを取得する。なお、ステップS120以降の処理は実施の形態1と同様なので詳細な説明は繰り返さない。 In the process of step S102, the first decoding unit 111 and the second decoding unit 121 obtain the nth and n + 1th macroblocks, respectively. Since the processing after step S120 is the same as in the first embodiment, detailed description will not be repeated.
 また、画像復号システム1000を実施の形態に基づいて説明してきたが、この実施の形態の構成及び動作に様々な変形を加えることが可能である。 Further, although the image decoding system 1000 has been described based on the embodiment, various modifications can be made to the configuration and operation of this embodiment.
 上記実施の形態では、マクロブロックの復号処理と並列して、1つ先のマクロブロックのマクロブロックタイプを復号し、当該1つ先のマクロブロックがダイレクトモードで符号化されていればco-locatedマクロブロックの動きベクトルをmv保持メモリ124へ転送する動作を説明した。しかし、これに限定されない。 In the above embodiment, in parallel with the decoding process of the macroblock, the macroblock type of the next macroblock is decoded, and if the one macroblock is encoded in the direct mode, the co-located The operation of transferring the motion vector of the macro block to the mv holding memory 124 has been described. However, it is not limited to this.
 例えば、mv保持メモリ124の容量を大きくし、幾つか先の複数のマクロブロック用co-locatedマクロブロックに対応する複数の動きベクトルを、まとめて転送するようにしてもよい。 For example, the capacity of the mv holding memory 124 may be increased, and a plurality of motion vectors corresponding to a plurality of macro-block co-located macroblocks may be transferred together.
 例えば、外部メモリとして、連続するデータ転送に適したDRAM等のメモリを使用している場合、1つの動きベクトル毎に転送を行うとバースト長が不足し、転送効率が不足することがある。 For example, when a memory such as a DRAM suitable for continuous data transfer is used as the external memory, if transfer is performed for each motion vector, the burst length may be insufficient and transfer efficiency may be insufficient.
 このため、DRAM等のメモリを使用している場合、例えば、n番目のマクロブロックの復号処理と並列して、n+1番目のマクロブロックとn+2番目のマクロブロックのマクロブロックタイプの復号をそれぞれ実行する。 Therefore, when a memory such as a DRAM is used, for example, in parallel with the decoding process of the nth macroblock, the macroblock type decoding of the (n + 1) th macroblock and the (n + 2) th macroblock is executed. .
 そして、n+1番目およびn+2番目のマクロブロックのいずれかがダイレクトモードで符号化されていた場合は、n+1番目およびn+2番目のマクロブロック用co-locatedマクロブロックの動きベクトルをまとめて1回で転送する。 If any of the (n + 1) th and (n + 2) th macroblocks is encoded in the direct mode, the motion vectors of the (n + 1) th and (n + 2) th macroblock co-located macroblocks are transferred at once. .
 n+1番目およびn+2番目のマクロブロックのいずれもダイレクトモードで符号化されていなかった場合、co-locatedマクロブロックの動きベクトルの転送は行わないようにする。 When neither the n + 1-th macroblock nor the n + 2-th macroblock is encoded in the direct mode, the motion vector of the co-located macroblock is not transferred.
 このように、一回のDMA転送で転送するデータ量を増やすことで、外部メモリ200とmv転送指示部123との間でのデータの転送回数を減らし、バースト長を大きくして転送効率を向上させることができる。 In this way, by increasing the amount of data transferred in a single DMA transfer, the number of data transfers between the external memory 200 and the mv transfer instruction unit 123 is reduced, and the burst length is increased to improve transfer efficiency. Can be made.
 尚、図1の画像復号装置100に含まれる各部は典型的には集積回路であるLSIとして実現される。これらはさらに集積回路、外部メモリのように個別にチップ化されても良いし、一部又は全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。 Note that each unit included in the image decoding apparatus 100 of FIG. 1 is typically realized as an LSI that is an integrated circuit. These may be further individually formed into chips such as an integrated circuit and an external memory, or may be realized as a single chip so as to include a part or all of them, that is, realized as a system integrated in a single LSI. .
 (機能ブロック図)
 図6は、画像復号装置100の特徴的な機能構成を示すブロック図である。つまり、図6は、図1に示される画像復号装置100の機能のうち、本発明に関わる主要な機能を示すブロック図である。なお、図6には説明のために、画像復号装置100に含まれない外部メモリ200も示している。
(Function block diagram)
FIG. 6 is a block diagram illustrating a characteristic functional configuration of the image decoding apparatus 100. That is, FIG. 6 is a block diagram showing the main functions related to the present invention among the functions of the image decoding apparatus 100 shown in FIG. 6 also shows an external memory 200 that is not included in the image decoding device 100 for the sake of explanation.
 図6の画像復号装置100は、符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する。 The image decoding apparatus 100 in FIG. 6 sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order.
 図6に示されるように、画像復号装置100は、転送部130Aと、バッファ124Aと、第1復号部111と、第2復号部121と、判定部122とを備える。図6の画像復号装置100は、図1で説明した第1復号部111、第2復号部121および判定部122を備える。 As shown in FIG. 6, the image decoding device 100 includes a transfer unit 130A, a buffer 124A, a first decoding unit 111, a second decoding unit 121, and a determination unit 122. The image decoding apparatus 100 in FIG. 6 includes the first decoding unit 111, the second decoding unit 121, and the determination unit 122 described in FIG.
 転送部130Aは、各マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶する外部メモリ200とデータ通信を行う。 The transfer unit 130A performs data communication with the external memory 200 that stores the motion vector of the co-located macroblock corresponding to each macroblock.
 バッファ124Aは、mv保持メモリ124に相当する。 The buffer 124A corresponds to the mv holding memory 124.
 第1復号部111は、複数のマクロブロックを、順次復号する。 The first decoding unit 111 sequentially decodes a plurality of macroblocks.
 第2復号部121は、第1復号部111によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、判定情報を少なくとも復号する。判定情報は、w(w≧v+1)番目のマクロブロックに対応する符号化された情報である。また、判定情報は、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための情報である。復号された判定情報は、例えば、前述したマクロブロックタイプ、ブロック情報、スキップ情報である。 The second decoding unit 121 decodes at least the determination information before the first decoding unit 111 finishes decoding the vth (an integer greater than or equal to 1) -th macroblock. The determination information is encoded information corresponding to the w (w ≧ v + 1) -th macroblock. The determination information is information for determining whether or not the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock. . The decoded determination information is, for example, the above-described macroblock type, block information, and skip information.
 判定部122は、復号された判定情報から、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定する。判定部122は、図2のステップS122,S123の処理または図4のステップS122Aの処理を行う判定部122に相当する。 The determination unit 122 determines from the decoded determination information whether the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock. . The determination unit 122 corresponds to the determination unit 122 that performs the processing in steps S122 and S123 in FIG. 2 or the processing in step S122A in FIG.
 転送部130Aは、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、外部メモリ200からバッファ124Aへ転送する。転送部130Aは、図2または図4のステップS124の処理を行うmv転送指示部123およびDMAコントローラ130に相当する。 When the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the transfer unit 130A determines that the co-located macroblock corresponds to the wth macroblock. The motion vector of the macro block is transferred from the external memory 200 to the buffer 124A. The transfer unit 130A corresponds to the mv transfer instruction unit 123 and the DMA controller 130 that perform the process of step S124 of FIG.
 また、転送部130Aは、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、外部メモリ200からバッファ124Aへ転送しない。 In addition, when the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, the transfer unit 130A determines that the co−corresponding to the wth macroblock. The motion vector of the located macroblock is not transferred from the external memory 200 to the buffer 124A.
 なお、図6の転送部130A、バッファ124A、第1復号部111、第2復号部121および判定部122の全てまたは一部は、LSI(Large Scale Integration:大規模集積回路)等のハードウエアで構成されてもよい。また、転送部130A、バッファ124A、第1復号部111、第2復号部121および判定部122の全てまたは一部は、CPU等のプロセッサにより実行されるプログラムのモジュールであってもよい。 Note that all or part of the transfer unit 130A, the buffer 124A, the first decoding unit 111, the second decoding unit 121, and the determination unit 122 in FIG. 6 are hardware such as an LSI (Large Scale Integration). It may be configured. All or part of the transfer unit 130A, the buffer 124A, the first decoding unit 111, the second decoding unit 121, and the determination unit 122 may be a module of a program executed by a processor such as a CPU.
 (実施の形態3)
 上記各実施の形態で示した画像復号方法の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
(Embodiment 3)
By recording a program for realizing the configuration of the image decoding method described in each of the above embodiments on a storage medium, the processing described in each of the above embodiments can be easily performed in an independent computer system. It becomes. The storage medium may be any medium that can record a program, such as a magnetic disk, an optical disk, a magneto-optical disk, an IC card, and a semiconductor memory.
 さらに、ここで、上記各実施の形態で示した画像復号方法の応用例とそれを用いたシステムを説明する。 Furthermore, application examples of the image decoding method shown in the above embodiments and a system using the same will be described here.
 図7は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106~ex110が設置されている。 FIG. 7 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service. The communication service providing area is divided into desired sizes, and base stations ex106 to ex110, which are fixed radio stations, are installed in each cell.
 このコンテンツ供給システムex100では、電話網ex104、および、基地局ex106~ex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が相互に接続される。また、各機器が、インターネットサービスプロバイダex102を介して、インターネットex101に接続されている。 In this content supply system ex100, devices such as a computer ex111, a PDA (Personal Digital Assistant) ex112, a camera ex113, a mobile phone ex114, and a game machine ex115 are mutually connected via a telephone network ex104 and base stations ex106 to ex110. Connected. Each device is connected to the Internet ex101 via the Internet service provider ex102.
 しかし、コンテンツ供給システムex100は、図7のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex106~ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。 However, the content supply system ex100 is not limited to the configuration shown in FIG. 7 and may be connected by combining any of the elements. Further, each device may be directly connected to the telephone network ex104 without going through the base stations ex106 to ex110 which are fixed wireless stations. In addition, the devices may be directly connected to each other via short-range wireless or the like.
 カメラex113は、デジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex116は、デジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex114は、GSM(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W-CDMA(Wideband-Code Division Multiple Access)方式、LTE(Long Term Evolution)方式、若しくは、HSPA(High Speed Packet Access)方式の携帯電話、または、PHS(Personal Handyphone System)等であり、いずれでも構わない。 The camera ex113 is a device that can shoot a moving image such as a digital video camera, and the camera ex116 is a device that can shoot a still image and a moving image such as a digital camera. In addition, the mobile phone ex114 is a GSM (Global System for Mobile Communications) method, a CDMA (Code Division Multiple Access) method, a W-CDMA (Wideband-Code Division MultipleL), or a high access rate (L) system. (High Speed Packet Access) type mobile phone, PHS (Personal Handyphone System), etc., which may be either.
 コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して、上記各実施の形態で説明したように符号化処理を行い、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は、要求のあったクライアントに対して、送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号処理して再生する。 In the content supply system ex100, the camera ex113 and the like are connected to the streaming server ex103 through the base station ex109 and the telephone network ex104, thereby enabling live distribution and the like. In live distribution, the content (for example, music live video) captured by the user using the camera ex113 is encoded as described in the above embodiments and transmitted to the streaming server ex103. On the other hand, the streaming server ex103 streams the transmitted content data to the requested client. Examples of the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, a game machine ex115, and the like that can decode the encoded data. Each device that has received the distributed data decodes and reproduces the received data.
 なお、撮影したデータの符号化処理は、カメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号処理は、クライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像および/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理は、カメラex116、コンピュータex111およびストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。 Note that the encoded processing of the captured data may be performed by the camera ex113, the streaming server ex103 that performs data transmission processing, or may be performed in a shared manner. Similarly, the distributed processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in a shared manner. In addition to the camera ex113, still images and / or moving image data captured by the camera ex116 may be transmitted to the streaming server ex103 via the computer ex111. The encoding process in this case may be performed by any of the camera ex116, the computer ex111, and the streaming server ex103, or may be performed in a shared manner.
 また、これら符号化処理および復号処理は、一般的にコンピュータex111および各機器が有するLSI(Large Scale Integration)ex500において実行される。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、画像符号化用のソフトウェアまたは画像復号用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD-ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化処理または復号処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画像データを送信してもよい。このときの動画像データは、携帯電話ex114が有するLSIex500で符号化処理されたデータである。 In addition, these encoding processing and decoding processing are generally executed in a computer ex111 and an LSI (Large Scale Integration) ex500 included in each device. The LSI ex500 may be configured as a single chip or a plurality of chips. It should be noted that image encoding software or image decoding software is incorporated into any recording medium (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111 and the like, and encoding processing or decoding processing is performed using the software. May be performed. Furthermore, when the mobile phone ex114 is equipped with a camera, moving image data acquired by the camera may be transmitted. The moving image data at this time is data encoded by the LSI ex500 included in the mobile phone ex114.
 また、ストリーミングサーバex103は、複数のサーバまたは複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。 Further, the streaming server ex103 may be a plurality of servers or a plurality of computers, and may process, record, and distribute data in a distributed manner.
 以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号し、再生することができ、特別な権利および設備を有さないユーザでも個人放送を実現できる。 As described above, in the content supply system ex100, the encoded data can be received and reproduced by the client. As described above, in the content supply system ex100, the information transmitted by the user can be received, decrypted and reproduced in real time by the client, and even a user who does not have special rights and facilities can realize personal broadcasting.
 なお、コンテンツ供給システムex100の例に限らず、図8に示すように、デジタル放送用システムex200にも、上記各実施の形態の少なくとも画像復号装置のいずれかを組み込むことができる。具体的には、放送局ex201では映像情報のビットストリームが電波を介して通信または衛星ex202に伝送される。このビットストリームは、上記各実施の形態で説明した画像符号化方法により符号化された符号化ビットストリームである。これを受けた放送衛星ex202は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex204が受信する。受信したビットストリームを、テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置が復号して再生する。 It should be noted that not only the example of the content supply system ex100 but also at least one of the image decoding devices of the above-described embodiments can be incorporated in the digital broadcast system ex200 as shown in FIG. Specifically, in the broadcasting station ex201, a bit stream of video information is transmitted to a communication or satellite ex202 via radio waves. This bit stream is an encoded bit stream encoded by the image encoding method described in the above embodiments. Receiving this, the broadcasting satellite ex202 transmits a radio wave for broadcasting, and the home antenna ex204 capable of receiving the satellite broadcast receives the radio wave. The received bit stream is decoded and reproduced by a device such as the television (receiver) ex300 or the set top box (STB) ex217.
 また、記録媒体であるCDおよびDVD等の記録メディアex214に記録したビットストリームを読み取り、復号する再生装置ex212にも上記実施の形態で示した画像復号装置を実装することが可能である。この場合、再生された映像信号はモニタex213に表示される。 In addition, the image decoding apparatus described in the above embodiment can be mounted on the playback apparatus ex212 that reads and decodes the bitstream recorded on the recording medium ex214 such as a CD and a DVD that are recording media. In this case, the reproduced video signal is displayed on the monitor ex213.
 また、DVD、BD等の記録メディアex215に記録した符号化ビットストリームを読み取り復号する、または、記録メディアex215に映像信号を符号化し書き込むリーダ/レコーダex218にも上記各実施の形態で示した画像復号装置または画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示され、符号化ビットストリームが記録された記録メディアex215により他の装置およびシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に画像復号装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に画像復号装置を組み込んでもよい。 In addition, the image decoding shown in the above embodiments is also performed on the reader / recorder ex218 that reads and decodes the encoded bitstream recorded on the recording medium ex215 such as DVD and BD, or encodes and writes the video signal on the recording medium ex215. It is possible to implement a device or an image coding device. In this case, the reproduced video signal is displayed on the monitor ex219, and the video signal can be reproduced in another device and system using the recording medium ex215 in which the encoded bitstream is recorded. Further, an image decoding device may be mounted in a set-top box ex217 connected to a cable ex203 for cable television or an antenna ex204 for satellite / terrestrial broadcasting and displayed on the monitor ex219 of the television. At this time, the image decoding apparatus may be incorporated in the television instead of the set top box.
 図9は、上記各実施の形態で説明した画像復号方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像情報のビットストリームを取得または出力するチューナex301と、受信した符号化データを復調する、または外部に送信する符号化データに変調する変調/復調部ex302と、復調した映像データ、音声データを分離する、または符号化された映像データ、音声データを多重化する多重/分離部ex303を備える。 FIG. 9 is a diagram showing a television (receiver) ex300 that uses the image decoding method described in the above embodiments. The television ex300 includes a tuner ex301 that acquires or outputs a bit stream of video information via the antenna ex204 or the cable ex203 that receives the broadcast, and the encoded data that is demodulated or transmitted to the outside. A modulation / demodulation unit ex302 that modulates and a multiplexing / separation unit ex303 that separates demodulated video data and audio data or multiplexes encoded video data and audio data.
 また、テレビex300は、音声データ、映像データそれぞれを復号する、またはそれぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305を有する信号処理部ex306と、復号した音声信号を出力するスピーカex307、復号した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。 Further, the television ex300 decodes each of the audio data and the video data, or encodes each information, an audio signal processing unit ex304, a signal processing unit ex306 including the video signal processing unit ex305, and outputs the decoded audio signal. A speaker ex307 and an output unit ex309 including a display unit ex308 such as a display for displaying the decoded video signal; Furthermore, the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation. Furthermore, the television ex300 includes a control unit ex310 that controls each unit in an integrated manner, and a power supply circuit unit ex311 that supplies power to each unit.
 インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお、記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。 In addition to the operation input unit ex312, the interface unit ex317 includes a bridge ex313 connected to an external device such as a reader / recorder ex218, a recording unit ex216 such as an SD card, and an external recording such as a hard disk. A driver ex315 for connecting to a medium, a modem ex316 for connecting to a telephone network, and the like may be included. The recording medium ex216 can record information electrically by using a nonvolatile / volatile semiconductor memory element to be stored.
 テレビex300の各部は、同期バスを介して互いに接続されている。 Each part of the television ex300 is connected to each other via a synchronous bus.
 まず、テレビex300がアンテナex204等により外部から取得したデータを復号し、再生する構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した映像データ、音声データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号方法を用いて復号する。復号した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。また、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から符号化された符号化ビットストリームを読み出してもよい。 First, a configuration in which the television ex300 decodes and reproduces data acquired from the outside by the antenna ex204 and the like will be described. The television ex300 receives a user operation from the remote controller ex220 or the like, and demultiplexes the video data and audio data demodulated by the modulation / demodulation unit ex302 by the multiplexing / separation unit ex303 based on the control of the control unit ex310 having a CPU or the like. . Furthermore, in the television ex300, the separated audio data is decoded by the audio signal processing unit ex304, and the separated video data is decoded by the video signal processing unit ex305 using the decoding method described in the above embodiments. The decoded audio signal and video signal are output to the outside from the output unit ex309. When outputting, these signals may be temporarily stored in the buffers ex318, ex319, etc. so that the audio signal and the video signal are reproduced in synchronization. The television ex300 may read the encoded bitstream encoded from the recording media ex215 and ex216 such as a magnetic / optical disk and an SD card, not from broadcasting.
 次に、テレビex300が音声信号および映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。 Next, a description will be given of a configuration in which the television ex300 encodes an audio signal and a video signal and transmits them to the outside or writes them on a recording medium or the like. The television ex300 receives a user operation from the remote controller ex220 or the like, and encodes an audio signal with the audio signal processing unit ex304 based on the control of the control unit ex310, and converts the video signal with the video signal processing unit ex305. Encoding is performed using the encoding method described in (1). The encoded audio signal and video signal are multiplexed by the multiplexing / demultiplexing unit ex303 and output to the outside. When multiplexing, these signals may be temporarily stored in the buffers ex320, ex321, etc. so that the audio signal and the video signal are synchronized.
 なお、バッファex318~ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302および多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。 It should be noted that a plurality of buffers ex318 to ex321 may be provided as shown in the figure, or one or more buffers may be shared. Further, in addition to the illustrated example, data may be stored in the buffer as a buffer material that prevents system overflow and underflow, for example, between the modulation / demodulation unit ex302 and the multiplexing / demultiplexing unit ex303.
 また、テレビex300は、放送および記録メディア等から音声データおよび映像データを取得する以外に、マイクおよびカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号処理、外部出力のみが可能な構成であってもよい。 In addition to acquiring audio data and video data from broadcast and recording media, the television ex300 has a configuration for receiving AV input of a microphone and a camera, and even if encoding processing is performed on the data acquired therefrom Good. Here, the television ex300 has been described as a configuration capable of the above-described encoding processing, multiplexing, and external output. However, these processing cannot be performed, and only the above-described reception, decoding processing, and external output are possible. It may be.
 また、リーダ/レコーダex218で記録メディアから符号化ビットストリームを読み出す、または、書き込む場合には、上記復号処理または符号化処理はテレビex300とリーダ/レコーダex218とのいずれで行ってもよいし、テレビex300とリーダ/レコーダex218とが互いに分担して行ってもよい。 When the encoded bitstream is read from or written to the recording medium by the reader / recorder ex218, the decoding process or the encoding process may be performed by either the television ex300 or the reader / recorder ex218, The ex300 and the reader / recorder ex218 may share each other.
 一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を図10に示す。情報再生/記録部ex400は、以下に説明する要素ex401~ex407を備える。 As an example, FIG. 10 shows a configuration of the information reproducing / recording unit ex400 when data is read from or written to an optical disk. The information reproducing / recording unit ex400 includes elements ex401 to ex407 described below.
 光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex404は、記録メディアex215に記録するための情報および記録メディアex215から再生した情報を一時的に保持する。ディスクモータex405は、記録メディアex215を回転させる。サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。 The optical head ex401 writes information by irradiating a laser spot on the recording surface of the recording medium ex215 that is an optical disk, and reads information by detecting reflected light from the recording surface of the recording medium ex215. The modulation recording unit ex402 electrically drives a semiconductor laser built in the optical head ex401 and modulates the laser beam according to the recording data. The reproduction demodulator ex403 amplifies the reproduction signal obtained by electrically detecting the reflected light from the recording surface by the photodetector built in the optical head ex401, separates and demodulates the signal component recorded on the recording medium ex215, and is necessary. To play back information. The buffer ex404 temporarily holds information to be recorded on the recording medium ex215 and information reproduced from the recording medium ex215. The disk motor ex405 rotates the recording medium ex215. The servo control unit ex406 moves the optical head ex401 to a predetermined information track while controlling the rotational drive of the disk motor ex405, and performs a laser spot tracking process.
 システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しおよび書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成および追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は、例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。 The system control unit ex407 controls the entire information reproduction / recording unit ex400. In the reading and writing processes described above, the system control unit ex407 uses various types of information held in the buffer ex404, and generates and adds new information as necessary, as well as the modulation recording unit ex402, the reproduction demodulation unit This is realized by recording / reproducing information through the optical head ex401 while operating the ex403 and the servo control unit ex406 in a coordinated manner. The system control unit ex407 includes, for example, a microprocessor, and executes these processes by executing a read / write program.
 以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。 In the above, the optical head ex401 has been described as irradiating a laser spot, but it may be configured to perform higher-density recording using near-field light.
 図11に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録および再生を行う装置において情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。 FIG. 11 shows a schematic diagram of a recording medium ex215 that is an optical disk. Guide grooves (grooves) are formed in a spiral shape on the recording surface of the recording medium ex215, and address information indicating the absolute position on the disc is recorded in advance on the information track ex230 by changing the shape of the groove. This address information includes information for specifying the position of the recording block ex231 which is a unit for recording data, and the recording block is specified by reproducing the information track ex230 and reading the address information in a recording and reproducing apparatus. Can do. Further, the recording medium ex215 includes a data recording area ex233, an inner peripheral area ex232, and an outer peripheral area ex234. The area used for recording the user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner circumference or outer circumference of the data recording area ex233 are used for specific purposes other than user data recording. Used.
 情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した符号化データの読み書きを行う。 The information reproducing / recording unit ex400 reads / writes encoded audio data, video data, or encoded data obtained by multiplexing these data with respect to the data recording area ex233 of the recording medium ex215.
 以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。 In the above description, an optical disk such as a single-layer DVD or BD has been described as an example. However, the present invention is not limited to these, and an optical disk having a multilayer structure and capable of recording other than the surface may be used. Also, an optical disc with a multi-dimensional recording / reproducing structure, such as recording information using light of different wavelengths in the same place on the disc, or recording different layers of information from various angles. It may be.
 また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図9に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111および携帯電話ex114等でも考えられる。また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器および復号器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号器のみの受信端末という3通りの実装形式が考えられる。 Also, in the digital broadcasting system ex200, the car ex210 having the antenna ex205 can receive data from the satellite ex202 and the like, and the moving image can be reproduced on a display device such as the car navigation ex211 that the car ex210 has. The configuration of the car navigation ex211 may be, for example, the configuration shown in FIG. 9 with the addition of a GPS receiver, and the same may be considered for the computer ex111, the mobile phone ex114, and the like. In addition to the transmission / reception terminal having both an encoder and a decoder, the mobile phone ex114 and the like can be used in three ways: a transmitting terminal having only an encoder and a receiving terminal having only a decoder. The implementation form of can be considered.
 このように、上記各実施の形態で示した画像符号化方法あるいは画像復号方法を上述したいずれの機器またはシステムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。 As described above, the image encoding method or the image decoding method shown in each of the above embodiments can be used in any of the above-described devices or systems, and by doing so, the effects described in the above embodiments can be obtained. Can be obtained.
 また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。 Further, the present invention is not limited to the above-described embodiment, and various changes and modifications can be made without departing from the scope of the present invention.
 (実施の形態4)
 本実施の形態では、画像復号装置100を、典型的には半導体集積回路であるLSIとして実現する。図6の画像復号装置100をLSI2100として実現した形態を図12に示す。画像復号装置100の各構成要素は、図12に示されたLSI2100上に構成される。
(Embodiment 4)
In the present embodiment, the image decoding apparatus 100 is realized as an LSI that is typically a semiconductor integrated circuit. A form in which the image decoding apparatus 100 of FIG. 6 is realized as an LSI 2100 is shown in FIG. Each component of the image decoding apparatus 100 is configured on the LSI 2100 shown in FIG.
 これらは個別に1チップ化されてもよいし、一部またはすべてを含むように1チップ化されても良い。ここではLSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。 These may be individually made into one chip, or may be made into one chip so as to include a part or all of them. The name used here is LSI, but it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.
 また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現しても良い。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)、または、LSI内部の回路セルの接続および設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。 Further, the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible. An FPGA (Field Programmable Gate Array) that can be programmed after manufacturing the LSI or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
 さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応などが可能性として有り得る。 Furthermore, if integrated circuit technology that replaces LSI emerges as a result of advances in semiconductor technology or other derived technologies, it is naturally also possible to integrate functional blocks using this technology. Biotechnology can be applied as a possibility.
 さらに加えて、本実施の形態の画像復号装置を集積化した半導体チップと、画像を描画するためのディスプレイとを組み合せて、様々な用途に応じた描画機器を構成することができる。携帯電話、テレビ、デジタルビデオレコーダー、デジタルビデオカメラおよびカーナビゲーション等における情報描画手段として、本発明を利用することが可能である。ディスプレイとしては、ブラウン管(CRT)の他、液晶、PDP(プラズマディスプレイパネル)および有機ELなどのフラットディスプレイ、プロジェクターを代表とする投射型ディスプレイなどと組み合わせることが可能である。 In addition, by combining a semiconductor chip in which the image decoding apparatus according to this embodiment is integrated with a display for drawing an image, a drawing device corresponding to various uses can be configured. The present invention can be used as information drawing means in cellular phones, televisions, digital video recorders, digital video cameras, car navigation systems, and the like. As a display, in addition to a cathode ray tube (CRT), a flat display such as a liquid crystal, a PDP (plasma display panel) and an organic EL, a projection display represented by a projector, and the like can be combined.
 また、本実施の形態におけるLSIは、符号化ストリームを蓄積するビットストリームバッファ、および、画像を蓄積するフレームメモリ等を備えるDRAM(Dynamic Random Access Memory)と連携することにより、符号化処理または復号処理を行ってもよい。また、本実施の形態におけるLSIは、DRAMではなく、eDRAM(embeded DRAM)、SRAM(Static Random Access Memory)、または、ハードディスクなど他の記憶装置と連携してもかまわない。 Further, the LSI in the present embodiment cooperates with a DRAM (Dynamic Random Access Memory) including a bit stream buffer for storing an encoded stream and a frame memory for storing an image, thereby performing an encoding process or a decoding process. May be performed. Further, the LSI in the present embodiment may be linked with other storage devices such as eDRAM (embedded DRAM), SRAM (Static Random Access Memory), or hard disk instead of DRAM.
 (実施の形態5)
 上記各実施の形態で示した画像復号装置および画像復号方法は、典型的には集積回路であるLSIで実現される。一例として、図13に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex502~ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
(Embodiment 5)
The image decoding apparatus and the image decoding method described in the above embodiments are typically realized by an LSI that is an integrated circuit. As an example, FIG. 13 shows the configuration of an LSI ex500 that is made into one chip. The LSI ex500 includes elements ex502 to ex509 described below, and each element is connected via a bus ex510. The power supply circuit unit ex505 starts up to an operable state by supplying power to each unit when the power supply is in an on state.
 例えば、符号化処理を行う場合には、LSIex500は、AV I/Oex509によりマイクex117およびカメラex113等からAV信号の入力を受け付ける。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。蓄積したデータは、処理量および処理速度に応じて適宜複数回に分けるなどされ、信号処理部ex507に送られる。信号処理部ex507は、音声信号の符号化および/または映像信号の符号化を行う。ここで映像信号の符号化処理は、上記実施の形態で説明した符号化処理である。信号処理部ex507では、さらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex504から外部に出力する。この出力されたビットストリームは、基地局ex107に向けて送信されたり、または、記録メディアex215に書き込まれたりする。 For example, when encoding processing is performed, the LSI ex500 receives an AV signal input from the microphone ex117, the camera ex113, and the like by the AV I / Oex 509. The input AV signal is temporarily stored in an external memory ex511 such as SDRAM. The accumulated data is divided into a plurality of times as appropriate according to the processing amount and processing speed, and sent to the signal processing unit ex507. The signal processing unit ex507 performs encoding of an audio signal and / or encoding of a video signal. Here, the encoding process of the video signal is the encoding process described in the above embodiment. The signal processing unit ex507 further performs processing such as multiplexing the encoded audio data and the encoded video data according to circumstances, and outputs the result from the stream I / Oex 504 to the outside. The output bit stream is transmitted to the base station ex107 or written to the recording medium ex215.
 また、例えば、復号処理を行う場合には、LSIex500は、マイコン(マイクロコンピュータ)ex502の制御に基づいて、ストリームI/Oex504によって、基地局ex107から得られた符号化データ、または、記録メディアex215から読み出して得た符号化データを一旦メモリex511等に蓄積する。マイコンex502の制御に基づいて、蓄積したデータは処理量および処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声データの復号および/または映像データの復号が行われる。ここで映像信号の復号処理は上記各実施の形態で説明した復号処理である。さらに、場合により復号された音声信号と復号された映像信号を同期して再生できるようそれぞれの信号を一旦メモリex511等に蓄積するとよい。復号された出力信号はメモリex511等を適宜介しながら、AVI/Oex509からモニタex219等に出力される。メモリex511にアクセスする際にはメモリコントローラex503を介する構成である。 Further, for example, when performing the decoding process, the LSI ex500 transmits the encoded data obtained from the base station ex107 or the recording medium ex215 by the stream I / Oex 504 based on the control of the microcomputer (microcomputer) ex502. The encoded data obtained by reading is temporarily stored in the memory ex511 or the like. Based on the control of the microcomputer ex502, the accumulated data is appropriately divided into a plurality of times according to the processing amount and the processing speed and sent to the signal processing unit ex507, where the signal processing unit ex507 decodes the audio data and / or the video data. Decryption is performed. Here, the decoding process of the video signal is the decoding process described in the above embodiments. Further, in some cases, each signal may be temporarily stored in the memory ex511 or the like so that the decoded audio signal and the decoded video signal can be reproduced in synchronization. The decoded output signal is output from the AVI / Oex 509 to the monitor ex219 or the like through the memory ex511 or the like as appropriate. When accessing the memory ex511, the memory controller ex503 is used.
 なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。 In the above description, the memory ex511 has been described as an external configuration of the LSI ex500. However, a configuration included in the LSI ex500 may be used. The LSI ex500 may be made into one chip or a plurality of chips.
 なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。 In addition, although it was set as LSI here, it may be called IC, system LSI, super LSI, and ultra LSI depending on the degree of integration.
 また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)、または、LSI内部の回路セルの接続および設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。 Further, the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible. An FPGA (Field Programmable Gate Array) that can be programmed after manufacturing the LSI, or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
 さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。 Furthermore, if integrated circuit technology that replaces LSI emerges as a result of advances in semiconductor technology or other derived technology, it is naturally also possible to integrate functional blocks using this technology. Biotechnology can be applied.
 なお、これらの実施の形態は例であり、本発明はこれらの実施の形態に限定されるのではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、あるいは異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。 It should be noted that these embodiments are examples, and the present invention is not limited to these embodiments. Unless it deviates from the meaning of this invention, the form which carried out various deformation | transformation which those skilled in the art can think to this embodiment, or the structure constructed | assembled combining the component in different embodiment is also contained in the scope of the present invention. .
 また、上記の画像復号装置を構成する複数の構成要素の全てまたは一部は、ハードウエアで構成されてもよい。また、上記の画像復号装置を構成する構成要素の全てまたは一部は、CPU(Central Processing Unit)等により実行されるプログラムのモジュールであってもよい。 Further, all or some of the plurality of constituent elements constituting the image decoding device may be configured by hardware. Further, all or some of the components constituting the image decoding apparatus may be a module of a program executed by a CPU (Central Processing Unit) or the like.
 また、上記の画像復号装置を構成する複数の構成要素の全てまたは一部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されてもよい。システムLSIは、複数の構成要素を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM(Read Only Memory)及びRAM(Random Access Memory)などを含んで構成されるコンピュータシステムである。 Further, all or some of the plurality of constituent elements constituting the image decoding device may be configured by one system LSI (Large Scale Integration). The system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on one chip. Specifically, a microprocessor, a ROM (Read Only Memory), a RAM (Random Access Memory), etc. It is a computer system comprised including.
 また、本発明は、画像復号装置が備える特徴的な構成部の動作をステップとする画像復号方法として実現してもよい。また、本発明は、そのような画像復号方法に含まれる各ステップをコンピュータに実行させるプログラムとして実現してもよい。また、本発明は、そのようなプログラムを格納するコンピュータ読み取り可能な記録媒体として実現されてもよい。また、当該プログラムは、インターネット等の伝送媒体を介して配信されてもよい。 Further, the present invention may be realized as an image decoding method in which the operation of a characteristic component included in the image decoding apparatus is a step. Further, the present invention may be realized as a program that causes a computer to execute each step included in such an image decoding method. Further, the present invention may be realized as a computer-readable recording medium that stores such a program. The program may be distributed via a transmission medium such as the Internet.
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
 本発明による画像復号装置は、例えば、テレビ、デジタルビデオレコーダー、カーナビゲーション、携帯電話、デジタルカメラ、デジタルビデオカメラ等の情報表示機器および撮影システムとして、様々な用途に有用である。 The image decoding apparatus according to the present invention is useful for various applications, for example, as an information display device and a photographing system such as a television, a digital video recorder, a car navigation system, a mobile phone, a digital camera, and a digital video camera.
100,100A 画像復号装置
110 第1転送指示部
111 第1復号部
120 第2転送指示部
121 第2復号部
122 判定部
123 mv転送指示部
124 mv保持メモリ
124A バッファ
130 DMAコントローラ
130A 転送部
131 mv算出部
132 mv転送指示部
133 参照画像転送指示部
141 動き補償処理部
142 面内予測処理部
143 予測画像選択部
151 逆直交変換部
152 逆量子化部
161 復号画像合成部
162 デブロックフィルタ処理部
163 復号画像転送指示部
200 外部メモリ
300 記憶媒体
400 受信部
1000,1000A 画像復号システム
2100 LSI
ex100 コンテンツ供給システム
ex101 インターネット
ex102 インターネットサービスプロバイダ
ex103 ストリーミングサーバ
ex104 電話網
ex106、ex107、ex108、ex109、ex110 基地局
ex111 コンピュータ
ex112 PDA(Personal Digital Assistant)
ex113、ex116 カメラ
ex114 携帯電話
ex115 ゲーム機
ex117 マイク
ex200 デジタル放送用システム
ex201 放送局
ex202 放送衛星(衛星)
ex203 ケーブル
ex204、ex205 アンテナ
ex210 車
ex211 カーナビゲーション(カーナビ)
ex212 再生装置
ex213、ex219 モニタ
ex214、ex215、ex216 記録メディア
ex217 セットトップボックス(STB)
ex218 リーダ/レコーダ
ex220 リモートコントローラ
ex230 情報トラック
ex231 記録ブロック
ex232 内周領域
ex233 データ記録領域
ex234 外周領域
ex300 テレビ(受信機)
ex301 チューナ
ex302 変調/復調部
ex303 多重/分離部
ex304 音声信号処理部
ex305 映像信号処理部
ex306、ex507 信号処理部
ex307 スピーカ
ex308 表示部
ex309 出力部
ex311、ex505 電源回路部
ex312 操作入力部
ex313 ブリッジ
ex314 スロット部
ex315 ドライバ
ex316 モデム
ex317 インタフェース部
ex318、ex319、ex320、ex321、ex404 バッファ
ex400 情報再生/記録部
ex401 光ヘッド
ex402 変調記録部
ex403 再生復調部
ex405 ディスクモータ
ex406 サーボ制御部
ex407 システム制御部
ex502 マイコン(マイクロコンピュータ)
ex503 メモリコントローラ
ex504 ストリームI/O
ex509 AV I/O
ex510 バス
 
 
 
100, 100A Image decoding apparatus 110 First transfer instruction unit 111 First decoding unit 120 Second transfer instruction unit 121 Second decoding unit 122 Determination unit 123 mv transfer instruction unit 124 mv holding memory 124A buffer 130 DMA controller 130A transfer unit 131 mv Calculation unit 132 mv transfer instruction unit 133 Reference image transfer instruction unit 141 Motion compensation processing unit 142 In-plane prediction processing unit 143 Predicted image selection unit 151 Inverse orthogonal transform unit 152 Inverse quantization unit 161 Decoded image synthesis unit 162 Deblock filter processing unit 163 Decoded image transfer instruction unit 200 External memory 300 Storage medium 400 Receiving unit 1000, 1000A Image decoding system 2100 LSI
ex100 Content supply system ex101 Internet ex102 Internet service provider ex103 Streaming server ex104 Telephone network ex106, ex107, ex108, ex109, ex110 Base station ex111 Computer ex112 PDA (Personal Digital Assistant)
ex113, ex116 Camera ex114 Mobile phone ex115 Game machine ex117 Microphone ex200 Digital broadcasting system ex201 Broadcast station ex202 Broadcast satellite (satellite)
ex203 Cable ex204, ex205 Antenna ex210 Car ex211 Car navigation (car navigation system)
ex212 Playback device ex213, ex219 Monitor ex214, ex215, ex216 Recording media ex217 Set-top box (STB)
ex218 reader / recorder ex220 remote controller ex230 information track ex231 recording block ex232 inner circumference area ex233 data recording area ex234 outer circumference area ex300 television (receiver)
ex301 tuner ex302 modulation / demodulation unit ex303 multiplexing / demultiplexing unit ex304 audio signal processing unit ex305 video signal processing unit ex306, ex507 signal processing unit ex307 speaker ex308 display unit ex309 output unit ex311, ex505 power supply circuit unit ex312 operation input unit ex313 bridge ex314 slot Unit ex315 driver ex316 modem ex317 interface unit ex318, ex319, ex320, ex321, ex404 buffer ex400 information reproduction / recording unit ex401 optical head ex402 modulation recording unit ex403 reproduction demodulation unit ex405 disk motor ex406 servo control unit ex407 system control unit ex502 microcomputer (micro Computer)
ex503 Memory controller ex504 Stream I / O
ex509 AV I / O
ex510 bus

Claims (13)

  1.  符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する画像復号装置であって、
     各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶する外部メモリとデータ通信を行う転送部と、
     バッファと、
     前記複数のマクロブロックを、順次復号する第1復号部と、
     前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部と、
     復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定する判定部とを備え、
     前記転送部は、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送し、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない、
     画像復号装置。
    An image decoding device that sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order,
    A transfer unit that performs data communication with an external memory that stores a motion vector of a co-located macroblock corresponding to each of the macroblocks;
    A buffer,
    A first decoding unit for sequentially decoding the plurality of macroblocks;
    Before the decoding of the v (an integer greater than or equal to 1) -th macroblock by the first decoding unit is completed, encoded determination information corresponding to the w (w ≧ v + 1) -th macroblock, A second decoding unit for decoding at least determination information for determining whether or not the motion vector of the co-located macroblock corresponding to the th macroblock is necessary for calculating the motion vector of the wth macroblock; ,
    A determination unit that determines from the decoded determination information whether a motion vector of a co-located macroblock corresponding to the wth macroblock is necessary to calculate a motion vector of the wth macroblock; With
    The transfer unit is
    If the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the co-located macroblock corresponding to the wth macroblock Transferring a motion vector from the external memory to the buffer;
    If the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, the motion of the co-located macroblock corresponding to the wth macroblock Do not transfer vectors from the external memory to the buffer;
    Image decoding device.
  2.  前記画像復号装置は、さらに、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記バッファに転送された前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを用いて前記w番目のマクロブロックの動きベクトルを算出する算出部を備え、
     前記転送部は、算出された前記w番目のマクロブロックの動きベクトルを、前記外部メモリへ転送する、
     請求項1に記載の画像復号装置。
    The image decoding device further includes:
    When the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, it corresponds to the wth macroblock transferred to the buffer. a calculation unit that calculates a motion vector of the w-th macroblock using a motion vector of the co-located macroblock;
    The transfer unit transfers the calculated motion vector of the w-th macroblock to the external memory;
    The image decoding apparatus according to claim 1.
  3.  前記転送部は、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが前記w番目のマクロブロックの動きベクトルの算出に必要である場合、前記v番目のマクロブロックの復号が行われている期間において、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリからバッファへ転送し、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが前記w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記v番目のマクロブロックの復号が行われている期間において、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリからバッファへ転送しない、
     請求項1または2に記載の画像復号装置。
    The transfer unit is
    When the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary to calculate the motion vector of the wth macroblock, the vth macroblock is decoded during the period. Transfer a motion vector of a co-located macroblock corresponding to the w th macroblock from the external memory to a buffer;
    When the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, in the period when the vth macroblock is being decoded, Do not transfer the motion vector of the co-located macroblock corresponding to the wth macroblock from the external memory to the buffer;
    The image decoding apparatus according to claim 1 or 2.
  4.  前記第2復号部は、前記判定情報のみを復号する、
     請求項1~3のいずれかに記載の画像復号装置。
    The second decoding unit decodes only the determination information;
    The image decoding device according to any one of claims 1 to 3.
  5.  前記第2復号部は、復号された前記判定情報を、前記第1復号部へ送信する、
     請求項1~4のいずれかに記載の画像復号装置。
    The second decoding unit transmits the decoded determination information to the first decoding unit.
    The image decoding device according to any one of claims 1 to 4.
  6.  前記第1復号部は、前記w番目のマクロブロックのうち、前記第2復号部により復号された前記判定情報以外の部分を復号する、
     請求項4または5に記載の画像復号装置。
    The first decoding unit decodes a portion of the w-th macroblock other than the determination information decoded by the second decoding unit;
    The image decoding device according to claim 4 or 5.
  7.  前記判定情報は、前記w番目のマクロブロックがダイレクトモードで符号化されているか否かを示す、
     請求項1~6のいずれかに記載の画像復号装置。
    The determination information indicates whether the w-th macroblock is encoded in the direct mode.
    The image decoding device according to any one of claims 1 to 6.
  8.  前記判定情報は、前記w番目のマクロブロックがスキップトマクロブロックであるか否かを示す、
     請求項1~6のいずれかに記載の画像復号装置。
    The determination information indicates whether or not the w-th macroblock is a skipped macroblock.
    The image decoding device according to any one of claims 1 to 6.
  9.  前記判定情報は、前記w番目のマクロブロックがインターマクロブロックであるか否かを示す、
     請求項1~6のいずれかに記載の画像復号装置。
    The determination information indicates whether the w-th macroblock is an inter macroblock,
    The image decoding device according to any one of claims 1 to 6.
  10.  前記複数のマクロブロックの各々は、H.264/AVCに従って符号化されたマクロブロックである、
     請求項1~9のいずれかに記載の画像復号装置。
    Each of the plurality of macroblocks is H.264. A macroblock encoded according to H.264 / AVC.
    The image decoding device according to any one of claims 1 to 9.
  11.  符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する集積回路であって、
     各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶する外部メモリとデータ通信を行う転送部と、
     バッファと、
     前記複数のマクロブロックを、順次復号する第1復号部と、
     前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部と、
     復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定する判定部とを備え、
     前記転送部は、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送し、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない、
     集積回路。
    An integrated circuit that sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order,
    A transfer unit that performs data communication with an external memory that stores a motion vector of a co-located macroblock corresponding to each of the macroblocks;
    A buffer,
    A first decoding unit for sequentially decoding the plurality of macroblocks;
    Before the decoding of the v (an integer greater than or equal to 1) -th macroblock by the first decoding unit is completed, encoded determination information corresponding to the w (w ≧ v + 1) -th macroblock, A second decoding unit for decoding at least determination information for determining whether or not the motion vector of the co-located macroblock corresponding to the th macroblock is necessary for calculating the motion vector of the wth macroblock; ,
    A determination unit that determines from the decoded determination information whether a motion vector of a co-located macroblock corresponding to the wth macroblock is necessary to calculate a motion vector of the wth macroblock; With
    The transfer unit is
    If the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the co-located macroblock corresponding to the wth macroblock Transferring a motion vector from the external memory to the buffer;
    If the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, the motion of the co-located macroblock corresponding to the wth macroblock Do not transfer vectors from the external memory to the buffer;
    Integrated circuit.
  12.  符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する画像復号装置が行う画像復号方法であって、
     前記画像復号装置は、
      各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶する外部メモリとデータ通信を行う転送部と、
      バッファと、
      前記複数のマクロブロックを、順次復号する第1復号部と、
      前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部とを備え、
     前記画像復号方法は、
      復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するステップと、
      前記転送部が、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送するステップとを含み、
     前記転送部は、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない、
     画像復号方法。
    An image decoding method performed by an image decoding apparatus that sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order,
    The image decoding device includes:
    A transfer unit that performs data communication with an external memory that stores a motion vector of a co-located macroblock corresponding to each of the macroblocks;
    A buffer,
    A first decoding unit for sequentially decoding the plurality of macroblocks;
    Before the decoding of the v (an integer greater than or equal to 1) -th macroblock by the first decoding unit is completed, encoded determination information corresponding to the w (w ≧ v + 1) -th macroblock, A second decoding unit for decoding at least determination information for determining whether or not the motion vector of the co-located macroblock corresponding to the th macroblock is necessary for calculating the motion vector of the wth macroblock; With
    The image decoding method includes:
    Determining from the decoded determination information whether a motion vector of a co-located macroblock corresponding to the wth macroblock is necessary for calculating a motion vector of the wth macroblock;
    When the transfer unit needs the motion vector of the co-located macroblock corresponding to the wth macroblock to calculate the motion vector of the wth macroblock, the transfer unit corresponds to the coth corresponding to the wth macroblock. Transferring a motion vector of a located macroblock from the external memory to the buffer;
    When the motion vector of the co-located macroblock corresponding to the w-th macroblock is not necessary for calculating the motion vector of the w-th macroblock, the transfer unit determines that the co-corresponds to the w-th macroblock. do not transfer the motion vector of the located macroblock from the external memory to the buffer;
    Image decoding method.
  13.  符号化されたピクチャを構成する複数のマクロブロックを所定の順番で順次復号する画像復号装置と、外部メモリとを含む画像復号システムであって、
     前記外部メモリは、各前記マクロブロックに対応するco-locatedマクロブロックの動きベクトルを記憶しており、
     前記画像復号装置は、
      前記外部メモリとデータ通信を行う転送部と、
      バッファと、
      前記複数のマクロブロックを、順次復号する第1復号部と、
      前記第1復号部によるv(1以上の整数)番目のマクロブロックの復号が終了する前に、w(w≧v+1)番目のマクロブロックに対応する符号化された判定情報であって、該w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定するための判定情報を少なくとも復号する第2復号部と、
      復号された前記判定情報から、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要であるか否かを判定する判定部とを備え、
     前記転送部は、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要である場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送し、
      前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルが該w番目のマクロブロックの動きベクトルの算出に必要でない場合、前記w番目のマクロブロックに対応するco-locatedマクロブロックの動きベクトルを、前記外部メモリから前記バッファへ転送しない、
     画像復号システム。
     
     
    An image decoding system including an image decoding device that sequentially decodes a plurality of macroblocks constituting an encoded picture in a predetermined order, and an external memory,
    The external memory stores a motion vector of a co-located macroblock corresponding to each macroblock;
    The image decoding device includes:
    A transfer unit for data communication with the external memory;
    A buffer,
    A first decoding unit for sequentially decoding the plurality of macroblocks;
    Before the decoding of the v (an integer greater than or equal to 1) -th macroblock by the first decoding unit is completed, encoded determination information corresponding to the w (w ≧ v + 1) -th macroblock, A second decoding unit for decoding at least determination information for determining whether or not the motion vector of the co-located macroblock corresponding to the th macroblock is necessary for calculating the motion vector of the wth macroblock; ,
    A determination unit that determines from the decoded determination information whether a motion vector of a co-located macroblock corresponding to the wth macroblock is necessary to calculate a motion vector of the wth macroblock; With
    The transfer unit is
    If the motion vector of the co-located macroblock corresponding to the wth macroblock is necessary for calculating the motion vector of the wth macroblock, the co-located macroblock corresponding to the wth macroblock Transferring a motion vector from the external memory to the buffer;
    If the motion vector of the co-located macroblock corresponding to the wth macroblock is not necessary for calculating the motion vector of the wth macroblock, the motion of the co-located macroblock corresponding to the wth macroblock Do not transfer vectors from the external memory to the buffer;
    Image decoding system.

PCT/JP2010/002806 2009-05-13 2010-04-19 Image decoding apparatus, integrated circuit, image decoding method, and image decoding system WO2010131422A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN2010800020700A CN102090066A (en) 2009-05-13 2010-04-19 Image decoding apparatus, integrated circuit, image decoding method, and image decoding system
US13/003,391 US9001893B2 (en) 2009-05-13 2010-04-19 Image decoding apparatus, integrated circuit, image decoding method, and image decoding system
JP2011513228A JP5468604B2 (en) 2009-05-13 2010-04-19 Image decoding apparatus, integrated circuit, image decoding method, and image decoding system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-116121 2009-05-13
JP2009116121 2009-05-13

Publications (1)

Publication Number Publication Date
WO2010131422A1 true WO2010131422A1 (en) 2010-11-18

Family

ID=43084808

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/002806 WO2010131422A1 (en) 2009-05-13 2010-04-19 Image decoding apparatus, integrated circuit, image decoding method, and image decoding system

Country Status (4)

Country Link
US (1) US9001893B2 (en)
JP (1) JP5468604B2 (en)
CN (1) CN102090066A (en)
WO (1) WO2010131422A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2013118216A1 (en) * 2012-02-07 2015-05-11 パナソニックIpマネジメント株式会社 Image processing apparatus and image processing method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9300975B2 (en) * 2011-09-11 2016-03-29 Texas Instruments Incorporated Concurrent access shared buffer in a video encoder
KR102232417B1 (en) * 2013-11-20 2021-03-26 엘지전자 주식회사 A method and an apparatus for processing a video signal

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11215509A (en) * 1998-01-28 1999-08-06 Nec Corp Motion compensation processing method and recording medium with its processing program stored therein
WO2006057182A1 (en) * 2004-11-26 2006-06-01 Matsushita Electric Industrial Co., Ltd. Decoding circuit, decoding device, and decoding system
JP2006279330A (en) * 2005-03-28 2006-10-12 Victor Co Of Japan Ltd Motion compensation processing method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04106070A (en) 1990-08-23 1992-04-08 Sanyo Electric Co Ltd Cover tape peeling device for tape delivering device
JP2004088722A (en) * 2002-03-04 2004-03-18 Matsushita Electric Ind Co Ltd Motion picture encoding method and motion picture decoding method
CN101043626B (en) * 2002-07-15 2010-06-09 株式会社日立制作所 Moving picture encoding method
JP4592656B2 (en) * 2006-08-17 2010-12-01 富士通セミコンダクター株式会社 Motion prediction processing device, image encoding device, and image decoding device
KR100968371B1 (en) * 2008-04-25 2010-07-06 주식회사 코아로직 Method and Apparatus of Decoding Image

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11215509A (en) * 1998-01-28 1999-08-06 Nec Corp Motion compensation processing method and recording medium with its processing program stored therein
WO2006057182A1 (en) * 2004-11-26 2006-06-01 Matsushita Electric Industrial Co., Ltd. Decoding circuit, decoding device, and decoding system
JP2006279330A (en) * 2005-03-28 2006-10-12 Victor Co Of Japan Ltd Motion compensation processing method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2013118216A1 (en) * 2012-02-07 2015-05-11 パナソニックIpマネジメント株式会社 Image processing apparatus and image processing method
JP2017108434A (en) * 2012-02-07 2017-06-15 パナソニックIpマネジメント株式会社 Image processor and image processing method
US9743079B2 (en) 2012-02-07 2017-08-22 Panasonic Intellectual Property Management Co., Ltd. Image processing apparatus and image processing method for the collective transfer of prediction parameters between storage units
JP2018033187A (en) * 2012-02-07 2018-03-01 パナソニックIpマネジメント株式会社 Image processor and image processing method

Also Published As

Publication number Publication date
JP5468604B2 (en) 2014-04-09
US20110116548A1 (en) 2011-05-19
US9001893B2 (en) 2015-04-07
JPWO2010131422A1 (en) 2012-11-01
CN102090066A (en) 2011-06-08

Similar Documents

Publication Publication Date Title
JP5518069B2 (en) Image decoding apparatus, image encoding apparatus, image decoding method, image encoding method, program, and integrated circuit
JP5574345B2 (en) Encoding method, error detection method, decoding method, encoding device, error detection device, and decoding device
JP5588438B2 (en) Image encoding method and image encoding apparatus
WO2012035728A1 (en) Image decoding device and image encoding device, methods therefor, programs thereof, integrated circuit, and transcoding device
US8718149B2 (en) Image coding method and image decoding method
JP5659160B2 (en) Moving picture decoding apparatus, moving picture encoding apparatus, moving picture decoding circuit, and moving picture decoding method
WO2011161949A1 (en) Image decoding apparatus, image decoding method, integrated circuit, and program
WO2012046435A1 (en) Image processing device, image coding method and image processing method
JP6390883B2 (en) Image processing device
WO2011048764A1 (en) Decoding apparatus, decoding method, program and integrated circuit
WO2013108330A1 (en) Image decoding device, image encoding device, image decoding method, and image encoding method
JP5999515B2 (en) Image processing apparatus and image processing method
JP5546044B2 (en) Image decoding apparatus, image encoding apparatus, image decoding circuit, and image decoding method
JP5468604B2 (en) Image decoding apparatus, integrated circuit, image decoding method, and image decoding system
JP5378520B2 (en) Moving picture decoding apparatus, moving picture decoding method, moving picture decoding system, integrated circuit, and program
WO2013076897A1 (en) Image processing device and image processing method
JP2011182132A (en) Image encoding apparatus, image decoding apparatus, image encoding method, image decoding method, integrated circuit, and program
WO2011089865A1 (en) Image encoding method, image decoding method, device therefor, program, and integrated circuit

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080002070.0

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2011513228

Country of ref document: JP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10774682

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13003391

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10774682

Country of ref document: EP

Kind code of ref document: A1