JP6048774B2 - Image processing apparatus and method - Google Patents
Image processing apparatus and method Download PDFInfo
- Publication number
- JP6048774B2 JP6048774B2 JP2015229645A JP2015229645A JP6048774B2 JP 6048774 B2 JP6048774 B2 JP 6048774B2 JP 2015229645 A JP2015229645 A JP 2015229645A JP 2015229645 A JP2015229645 A JP 2015229645A JP 6048774 B2 JP6048774 B2 JP 6048774B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- image
- intra prediction
- prediction
- prediction mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本発明は画像処理装置および方法に関し、特に、画像やビットレートに応じたノイズ除去を実現し、予測効率を改善することができるようにした画像処理装置および方法に関する。 The present invention relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of realizing noise removal according to an image and a bit rate and improving prediction efficiency.
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG(Moving Picture Experts Group)などがある。 In recent years, image information has been handled as digital data, and at that time, for the purpose of efficient transmission and storage of information, encoding is performed by orthogonal transform such as discrete cosine transform and motion compensation using redundancy unique to image information. An apparatus that employs a method to compress and code an image is becoming widespread. This encoding method includes, for example, MPEG (Moving Picture Experts Group).
特に、MPEG2(ISO/IEC 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準である。例えば、MPEG2は、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4乃至8Mbpsの符号量(ビットレート)が割り当てられる。また、MPEG2圧縮方式を用いることにより、例えば1920×1088画素を持つ高解像度の飛び越し走査画像であれば18乃至22 Mbpsの符号量(ビットレート)が割り当てられる。これにより、高い圧縮率と良好な画質の実現が可能である。 In particular, MPEG2 (ISO / IEC 13818-2) is defined as a general-purpose image coding system, and is a standard that covers both interlaced scanning images and progressive scanning images, as well as standard resolution images and high-definition images. For example, MPEG2 is currently widely used in a wide range of applications for professional and consumer applications. By using the MPEG2 compression method, for example, a code amount (bit rate) of 4 to 8 Mbps is assigned to an interlaced scanned image having a standard resolution of 720 × 480 pixels. Further, by using the MPEG2 compression method, for example, in the case of a high-resolution interlaced scanned image having 1920 × 1088 pixels, a code amount (bit rate) of 18 to 22 Mbps is allocated. As a result, a high compression rate and good image quality can be realized.
MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。 MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate. With the widespread use of mobile terminals, the need for such an encoding system is expected to increase in the future, and the MPEG4 encoding system has been standardized accordingly. Regarding the image coding system, the standard was approved as an international standard as ISO / IEC 14496-2 in December 1998.
さらに、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T Q6/16 VCEG)という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下H.264/AVCと記す)という国際標準となっている。 Furthermore, in recent years, for the purpose of image coding for the initial video conference, The standardization of 26L (ITU-T Q6 / 16 VCEG) is in progress. H. 26L is known to achieve higher encoding efficiency than the conventional encoding schemes such as MPEG2 and MPEG4, although a large amount of calculation is required for encoding and decoding. In addition, as part of MPEG4 activities, this H. Based on 26L, H. Standardization to achieve higher coding efficiency by incorporating functions not supported by 26L is being carried out as Joint Model of Enhanced-Compression Video Coding. As for the standardization schedule, H. H.264 and MPEG-4 Part10 (Advanced Video Coding, hereinafter referred to as H.264 / AVC).
さらに、その拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCTや量子化マトリクスをも含んだFRExt (Fidelity Range Extension) の標準化が2005年2月に完了している。これにより、H.264/AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc(商標)等の幅広いアプリケーションに用いられる運びとなった。 As an extension, FRExt (including RGB, 4: 2: 2, 4: 4: 4 coding tools necessary for business use, 8x8DCT and quantization matrix specified by MPEG-2) Fidelity Range Extension) standardization was completed in February 2005. As a result, H.C. Using 264 / AVC, it became an encoding method that can express film noise contained in movies well, and it has been used in a wide range of applications such as Blu-Ray Disc (trademark).
しかしながら、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の画像を圧縮したいといった、更なる高圧縮率符号化に対するニーズが高まっている。あるいは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEG (=Video Coding Expert Group) において、符号化効率の改善に関する検討が継続され行なわれている。 However, nowadays, there is an increasing need for further high-compression encoding such as wanting to compress an image of about 4000 × 2000 pixels, which is four times the high-definition image. Alternatively, there is a growing need for further high compression rate encoding such as the desire to deliver high-definition images in an environment with a limited transmission capacity such as the Internet. For this reason, in the above-mentioned VCEG (= Video Coding Expert Group) under the ITU-T, studies on improving the coding efficiency are being continued.
ここで、H.264/AVC方式が、従来のMPEG2方式などに比して高い符号化効率を実現する要因の1つとして、イントラ予測方式の採用が挙げられる。 Here, H. One of the factors that realize the higher encoding efficiency of the H.264 / AVC format than the conventional MPEG2 format is the adoption of an intra prediction method.
イントラ予測方式において、輝度信号については、9種類の4×4画素および8×8画素のブロック単位、並びに4種類の16×16画素のマクロブロック単位のイントラ予測モードが定められている。色差信号については、4種類の8×8画素のブロック単位のイントラ予測モードが定められている。色差信号のイントラ予測モードは、輝度信号のイントラ予測モードと独立に設定が可能である。 In the intra prediction method, nine types of 4 × 4 pixel and 8 × 8 pixel block units, and four types of 16 × 16 pixel macroblock unit intra prediction modes are defined for luminance signals. For color difference signals, four types of 8 × 8 pixel block-unit intra prediction modes are defined. The color difference signal intra prediction mode can be set independently of the luminance signal intra prediction mode.
このようなイントラ予測後の残差の出方には、イントラ予測モード毎に特定のパターンが存在する。 There is a specific pattern for each intra prediction mode in how to generate such a residual after intra prediction.
かかる冗長性を排除し、さらに符号化効率を高める方法として、非特許文献1においては、以下のような方法が提案されている。
As a method for eliminating such redundancy and further improving the encoding efficiency, Non-Patent
すなわち、予めオフライン処理において、トレーニング信号を用い、通常のH.264/AVC方式により、イントラ画像の符号化処理が行われ、それぞれのブロックに対するイントラ予測モード毎に、カルーネン・レーベ変換等の直交変換が行われ、最適な変換係数が算出される。 That is, in the offline processing in advance, the normal H. According to the H.264 / AVC format, intra-picture encoding processing is performed, and orthogonal transform such as Karhunen-Loeve transform is performed for each intra prediction mode for each block, and an optimal transform coefficient is calculated.
そして、実際の符号化処理において、H.264/AVC方式で定められている直交変換に代えて、上述したカルーネン・レーベ変換により、モード毎に最適化された直交変換係数を用いた処理が行われる。 In the actual encoding process, H. Instead of the orthogonal transformation defined in the H.264 / AVC format, processing using the orthogonal transformation coefficient optimized for each mode is performed by the above-described Karhunen-Loeve transformation.
また、非特許文献2には、上述したイントラ予測を、インター予測に組み合わせる方法も提案されている。
Non-Patent
すなわち、非特許文献2においては、インター予測において求められた動きベクトル情報に対して、対象ブロックのみならず、対象ブロックの周辺の隣接画素値に関しても差分情報が生成される。このように生成された対象ブロックに関する差分情報と、隣接画素に関する差分情報の間で、イントラ予測が施されることにより2次差分情報が生成される。そして、生成された2次差分情報が、直交変換および量子化され、圧縮画像とともに、後段に出力される。
That is, in Non-Patent
これにより、さらに、符号化効率が向上される。 Thereby, the encoding efficiency is further improved.
また、上述したように、H.264/AVC方式において、マクロブロックサイズは16×16画素である。しかしながら、マクロブロックサイズを16×16画素とするのは、次世代符号化方式の対象となるようなUHD(Ultra High Definition;4000×2000画素)といった大きな画枠に対しては最適ではない。 In addition, as described above, H.P. In the H.264 / AVC format, the macroblock size is 16 × 16 pixels. However, the macroblock size of 16 × 16 pixels is not optimal for a large image frame such as UHD (Ultra High Definition; 4000 × 2000 pixels) that is the target of the next generation encoding method.
そこで、非特許文献3などにおいては、マクロブロックサイズを、例えば、32×32画素といった大きさに拡張することも提案されている。
Therefore, in
ところで、H.264/AVC方式においては、上述した8×8画素のブロック単位のイントラ予測を行うに先立ち、隣接画素の画素値のローパスフィルタ処理が行われている。これにより、隣接画素に含まれる雑音が除去され、相関を高められるので、より高い符号化効率の実現を可能としている。 H. In the H.264 / AVC format, the low-pass filter processing of the pixel values of adjacent pixels is performed prior to performing the above-described intra prediction in units of 8 × 8 pixels. As a result, noise contained in adjacent pixels is removed and the correlation can be increased, so that higher encoding efficiency can be realized.
しかしながら、雑音の含まれる度合いは、入力画像や、量子化パラメータ値、イントラ予測モードによっても異なるものであるにも関わらず、H.264/AVC方式においては、雑音を除去するためのローパスフィルタが固定されたものであった。すなわち、このローパスフィルタは、入力画像、量子化パラメータ値、イントラ予測モードなどに応じた最適なものではなかった。 However, although the degree of noise is different depending on the input image, the quantization parameter value, and the intra prediction mode, H.264 is used. In the H.264 / AVC format, a low-pass filter for removing noise is fixed. That is, the low-pass filter is not optimal according to the input image, the quantization parameter value, the intra prediction mode, and the like.
また、H.264/AVC方式において、上述の隣接画素の画素値の雑音除去を行うのは、8×8画素のブロック単位のイントラ予測モードのみであり、他のモードに対して適用されていなかった。 H. In the H.264 / AVC format, the noise removal of the pixel values of the adjacent pixels described above is performed only in the 8 × 8 pixel block unit intra prediction mode, and has not been applied to other modes.
本発明は、このような状況に鑑みてなされたものであり、画像やビットレートに応じたノイズ除去を実現し、予測効率を改善させるものである。 The present invention has been made in view of such a situation, and realizes noise removal according to an image and a bit rate and improves prediction efficiency.
本発明の一側面の画像処理装置は、符号化処理する画像を対象として、符号化処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて、前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理を制御する制御部と、前記隣接画素にフィルタ処理を行うか否かを識別するフラグを設定する設定部と、前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行うイントラ予測部と、前記イントラ予測部により生成された予測画像を用いて前記画像を符号化して、前記設定部により設定されたフラグを含むビットストリームを生成する符号化部とを備える。 An image processing apparatus according to an aspect of the present invention is directed to an image to be encoded, and uses a filter according to a block size when performing intra prediction on pixels of a target block to be encoded. A control unit that controls the filtering process so as to select whether to perform a filtering process on an adjacent pixel to be referred to when performing intra prediction on the pixel of the target block or not to perform a filtering process on the adjacent pixel; A setting unit that sets a flag for identifying whether to perform filtering on the adjacent pixels, an intra prediction unit that performs intra prediction on the pixels of the target block using the adjacent pixels, and the intra prediction An encoding unit that encodes the image using the prediction image generated by the unit and generates a bitstream including a flag set by the setting unit; Provided.
本発明の一側面の画像処理方法は、画像処理装置が、符号化処理する画像を対象として、符号化処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて、前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理を制御し、前記隣接画素にフィルタ処理を行うか否かを識別するフラグを設定し、前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行い、生成された予測画像を用いて前記画像を符号化して、設定されたフラグを含むビットストリームを生成する。 According to an image processing method of one aspect of the present invention, an image processing apparatus uses an image to be encoded according to a block size when performing intra prediction on a pixel of a target block to be encoded. Using the filter, the filtering process is performed so as to select whether to perform the filtering process on the adjacent pixel to be referred to when performing intra prediction on the pixel of the target block or not to perform the filtering process on the adjacent pixel. Control, set a flag for identifying whether to perform filtering on the adjacent pixel, perform intra prediction on the pixel of the target block using the adjacent pixel, and use the generated prediction image The image is encoded to generate a bitstream including the set flag.
本発明の他の側面の画像処理装置は、復号処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか否かを識別するフラグを含むビットストリームから、前記フラグを取得する取得部と、前記取得部により取得されたフラグに応じて、前記隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理を制御する制御部と、前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行い、予測画像を生成するイントラ予測部と、前記イントラ予測部により生成された予測画像を用いて、前記ビットストリームを復号処理する復号部とを備える。 An image processing apparatus according to another aspect of the present invention provides intra prediction on a pixel of the target block using a filter according to a block size when performing intra prediction on the pixel of the target block to be decoded. An acquisition unit that acquires the flag from a bitstream including a flag that identifies whether or not to perform filtering processing on the adjacent pixel that is referred to when performing the filtering, and the adjacent pixel according to the flag acquired by the acquisition unit The control unit that controls the filtering process so as to select whether to perform the filtering process on the neighboring pixels or not to perform the filtering process on the neighboring pixels, and using the neighboring pixels, the intra prediction is performed on the pixels of the target block. The bit stream is decoded using an intra prediction unit that generates a prediction image and the prediction image generated by the intra prediction unit. And a decoder for.
本発明の他の側面の画像処理方法は、画像処理装置が、復号処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか否かを識別するフラグを含むビットストリームから、前記フラグを取得し、取得されたフラグに応じて、前記隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理を制御し、前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行い、予測画像を生成し、生成された予測画像を用いて、前記ビットストリームを復号処理する。 The image processing method according to another aspect of the present invention provides a pixel of the target block using a filter according to a block size when the image processing apparatus performs intra prediction on the pixel of the target block to be decoded. The flag is acquired from a bit stream including a flag for identifying whether or not to perform filter processing on an adjacent pixel that is referred to when performing intra prediction on the image, and the adjacent pixel is filtered according to the acquired flag. The filtering process is controlled so as to select whether to perform the processing or not to perform the filtering process on the adjacent pixel, and using the adjacent pixel, the intra prediction is performed on the pixel of the target block, and the predicted image And the bitstream is decoded using the generated predicted image.
本発明の一側面においては、符号化処理する画像を対象として、符号化処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて、前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理が制御される。そして、前記隣接画素にフィルタ処理を行うか否かを識別するフラグが設定され、前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測が行われ、生成された予測画像を用いて前記画像が符号化されて、設定されたフラグを含むビットストリームが生成される。 In one aspect of the present invention, for an image to be encoded, the target block is filtered using a filter according to a block size when performing intra prediction on pixels of the target block to be encoded. The filtering process is controlled so as to select whether to perform the filtering process on the adjacent pixel to be referred to when performing intra prediction on the pixel, or not to perform the filtering process on the adjacent pixel. Then, a flag for identifying whether or not to perform filter processing on the adjacent pixel is set, intra prediction is performed on the pixel of the target block using the adjacent pixel, and the generated predicted image is used. The image is encoded to generate a bitstream that includes the set flag.
本発明の他の側面においては、復号処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか否かを識別するフラグを含むビットストリームから、前記フラグが取得され、取得されたフラグに応じて、前記隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理が制御される。そして、前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測が行われ、予測画像が生成され、生成された予測画像を用いて、前記ビットストリームが復号処理される。 In another aspect of the present invention, when performing intra prediction on a pixel of the target block using a filter according to a block size when performing intra prediction on the pixel of the target block to be subjected to decoding processing The flag is acquired from a bitstream including a flag for identifying whether or not to perform the filtering process on the adjacent pixel to be referred to, and the adjacent pixel is filtered according to the acquired flag, or the adjacent pixel The filtering process is controlled so as to select whether or not to perform the filtering process. And using the said adjacent pixel, intra prediction is performed with respect to the pixel of the said target block, a prediction image is produced | generated, and the said bit stream is decoded using the produced | generated prediction image.
なお、上述の画像処理装置のそれぞれは、独立した装置であっても良いし、1つの画像符号化装置を構成している内部ブロックであってもよい。 Note that each of the above-described image processing apparatuses may be an independent apparatus or may be an internal block constituting one image encoding apparatus.
本発明によれば、画像やビットレートに応じたノイズ除去を行うことができる。 According to the present invention, it is possible to perform noise removal according to an image and a bit rate.
以下、図を参照して本発明の実施の形態について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(隣接画素内挿フィルタ切替:イントラ予測の例)
2.第2の実施の形態(隣接画素内挿フィルタ切替:2次予測の例)
3.第3の実施の形態(隣接画素内挿フィルタオンオフ制御:イントラ予測の例)
4.第4の実施の形態(隣接画素内挿フィルタオンオフ制御:2次予測の例)
Hereinafter, embodiments of the present invention will be described with reference to the drawings. The description will be given in the following order.
1. First embodiment (neighboring pixel interpolation filter switching: example of intra prediction)
2. Second embodiment (neighboring pixel interpolation filter switching: example of secondary prediction)
3. Third Embodiment (Adjacent Pixel Interpolation Filter On / Off Control: Example of Intra Prediction)
4). Fourth embodiment (adjacent pixel interpolation filter on / off control: example of secondary prediction)
<1.第1の実施の形態>
[画像符号化装置の構成例]
図1は、本発明を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
<1. First Embodiment>
[Configuration Example of Image Encoding Device]
FIG. 1 shows a configuration of an embodiment of an image encoding apparatus as an image processing apparatus to which the present invention is applied.
この画像符号化装置51は、例えば、H.264及びMPEG-4 Part10(Advanced Video Coding)(以下H.264/AVCと記す)方式で画像を圧縮符号化する。
This
図1の例において、画像符号化装置51は、A/D変換部61、画面並べ替えバッファ62、演算部63、直交変換部64、量子化部65、可逆符号化部66、蓄積バッファ67、逆量子化部68、逆直交変換部69、演算部70、デブロックフィルタ71、フレームメモリ72、スイッチ73、イントラ予測部74、隣接画素内挿フィルタ切替部75、動き予測・補償部76、予測画像選択部77、およびレート制御部78により構成されている。
In the example of FIG. 1, the
A/D変換部61は、入力された画像をA/D変換し、画面並べ替えバッファ62に出力し、記憶させる。画面並べ替えバッファ62は、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)に応じて、符号化のためのフレームの順番に並べ替える。
The A /
演算部63は、画面並べ替えバッファ62から読み出された画像から、予測画像選択部77により選択されたイントラ予測部74からの予測画像または動き予測・補償部76からの予測画像を減算し、その差分情報を直交変換部64に出力する。直交変換部64は、演算部63からの差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を出力する。量子化部65は直交変換部64が出力する変換係数を量子化する。
The
量子化部65の出力となる、量子化された変換係数は、可逆符号化部66に入力され、ここで可変長符号化、算術符号化等の可逆符号化が施され、圧縮される。
The quantized transform coefficient that is the output of the
可逆符号化部66は、イントラ予測を示す情報などをイントラ予測部74から取得し、インター予測モードを示す情報などを動き予測・補償部76から取得する。なお、イントラ予測を示す情報は、以下、イントラ予測モード情報とも称する。また、インター予測を示す情報モードを示す情報は、以下、インター予測モード情報とも称する。
The
可逆符号化部66は、量子化された変換係数を符号化するとともに、イントラ予測を示す情報やインター予測モードを示す情報、および量子化パラメータなどを符号化し、圧縮画像におけるヘッダ情報の一部とする。可逆符号化部66は、符号化したデータを蓄積バッファ67に供給して蓄積させる。
The
例えば、可逆符号化部66においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。
For example, the
蓄積バッファ67は、可逆符号化部66から供給されたデータを、H.264/AVC方式で符号化された圧縮画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
The
また、量子化部65より出力された、量子化された変換係数は、逆量子化部68にも入力され、逆量子化された後、さらに逆直交変換部69において逆直交変換される。逆直交変換された出力は演算部70により予測画像選択部77から供給される予測画像と加算されて、局部的に復号された画像となる。デブロックフィルタ71は、復号された画像のブロック歪を除去した後、フレームメモリ72に供給し、蓄積させる。フレームメモリ72には、デブロックフィルタ71によりデブロックフィルタ処理される前の画像も供給され、蓄積される。
Further, the quantized transform coefficient output from the
スイッチ73はフレームメモリ72に蓄積された参照画像を動き予測・補償部76またはイントラ予測部74に出力する。
The
この画像符号化装置51においては、例えば、画面並べ替えバッファ62からのIピクチャ、Bピクチャ、およびPピクチャが、イントラ予測(イントラ処理とも称する)する画像として、イントラ予測部74に供給される。また、画面並べ替えバッファ62から読み出されたBピクチャおよびPピクチャが、インター予測(インター処理とも称する)する画像として、動き予測・補償部76に供給される。
In the
イントラ予測部74は、画面並べ替えバッファ62から読み出されたイントラ予測する画像とフレームメモリ72から供給された参照画像に基づいて、候補となる全てのイントラ予測モードのイントラ予測処理を行い、予測画像を生成する。
The
このイントラ予測処理に先立ち、イントラ予測部74は、各対象ブロックのイントラ予測に用いられる画素であって、対象ブロックに所定の位置関係で隣接する隣接画素に対して、フィルタ処理を施す。このフィルタ処理には、イントラ予測部74により供給されたイントラ予測モードなどに対応して、隣接画素内挿フィルタ切替部75により設定されたフィルタ係数が用いられる。すなわち、イントラ予測部74において、候補となる全てのイントラ予測モードのイントラ予測処理には、隣接画素内挿フィルタ切替部75により設定されたフィルタ係数で、フィルタ処理が施された隣接画素が用いられる。
Prior to this intra prediction process, the
イントラ予測部74は、予測画像を生成したイントラ予測モードに対してコスト関数値を算出し、算出したコスト関数値が最小値を与えるイントラ予測モードを、最適イントラ予測モードとして選択する。イントラ予測部74は、最適イントラ予測モードで生成された予測画像と、対応する最適イントラ予測モードについて算出されたコスト関数値を、予測画像選択部77に供給する。
The
イントラ予測部74は、予測画像選択部77により最適イントラ予測モードで生成された予測画像が選択された場合、最適イントラ予測モードを示す情報を、可逆符号化部66に供給する。可逆符号化部66は、イントラ予測部74から情報が送られてきた場合には、この情報を符号化し、圧縮画像におけるヘッダ情報の一部とする。
When the predicted image generated in the optimal intra prediction mode is selected by the predicted
隣接画素内挿フィルタ切替部75は、後述する図28の学習装置251において、トレーニング画像が用いられて学習されることにより得られた、量子化パラメータおよびイントラ予測モードに対応したフィルタ係数を記憶している。
The adjacent pixel interpolation
隣接画素内挿フィルタ切替部75には、レート制御部78からの量子化パラメータが供給され、イントラ予測部74からイントラ予測モードの情報が供給される。隣接画素内挿フィルタ切替部75は、レート制御部78からの量子化パラメータおよびイントラ予測部74からのイントラ予測モードに対応して、フィルタ係数を設定する。隣接画素内挿フィルタ切替部75は、設定したフィルタ係数を、イントラ予測部74に供給する。
The quantization parameter from the
なお、隣接画素内挿フィルタ切替部75においては、フィルタ係数を、量子化パラメータおよびイントラ予測モードの両方でなくても、どちらか一方に対応するように学習、記憶しておくことも可能である。
Note that, in the adjacent pixel interpolation
また、隣接画素内挿フィルタ切替部75においては、予めオフラインで学習されたフィルタ係数が記憶されているが、その代わりに、オンラインでフィルタ係数が算出されるようにすることも可能である。この場合、復号側に送るために、点線矢印に示されるように、隣接画素内挿フィルタ切替部75により設定されたフィルタ係数が、可逆符号化部66に出力される。
Further, in the adjacent pixel interpolation
動き予測・補償部76は、候補となる全てのインター予測モードの動き予測・補償処理を行う。すなわち、動き予測・補償部76には、画面並べ替えバッファ62から読み出されたインター処理する画像と、スイッチ73を介してフレームメモリ72から参照画像が供給される。動き予測・補償部76は、インター処理する画像と参照画像に基づいて、候補となる全てのインター予測モードの動きベクトルを検出し、動きベクトルに基づいて参照画像に補償処理を施し、予測画像を生成する。
The motion prediction /
また、動き予測・補償部76は、候補となる全てのインター予測モードに対してコスト関数値を算出する。動き予測・補償部76は、算出したコスト関数値のうち、最小値を与える予測モードを、最適インター予測モードとして決定する。
Also, the motion prediction /
動き予測・補償部76は、最適インター予測モードで生成された予測画像とそのコスト関数値を、予測画像選択部77に供給する。動き予測・補償部76は、予測画像選択部77により最適インター予測モードで生成された予測画像が選択された場合、最適インター予測モードを示す情報(インター予測モード情報)を可逆符号化部66に出力する。
The motion prediction /
なお、必要であれば、動きベクトル情報、フラグ情報、参照フレーム情報なども可逆符号化部66に出力される。可逆符号化部66は、動き予測・補償部76からの情報をやはり可変長符号化、算術符号化といった可逆符号化処理し、圧縮画像のヘッダ部に挿入する。
If necessary, motion vector information, flag information, reference frame information, and the like are also output to the
予測画像選択部77は、イントラ予測部74または動き予測・補償部76より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードから、最適予測モードを決定する。そして、予測画像選択部77は、決定された最適予測モードの予測画像を選択し、演算部63,70に供給する。このとき、予測画像選択部77は、予測画像の選択情報を、イントラ予測部74または動き予測・補償部76に供給する。
The predicted
レート制御部78は、蓄積バッファ67に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化パラメータにより、量子化部65の量子化動作のレートを制御する。
Based on the compressed image stored in the
量子化部65のレートの制御に用いられた量子化パラメータは、可逆符号化部66に供給され、可逆符号化処理され、圧縮画像のヘッダ部に挿入される。また、この量子化パラメータは、隣接画素内挿フィルタ切替部75に供給され、隣接画素に施すフィルタ処理に用いられるフィルタ係数の設定に用いられる。
The quantization parameter used for controlling the rate of the
[H.264/AVC方式におけるイントラ予測処理の説明]
はじめに、H.264/AVC方式で定められているイントラ予測の各モードについて説明する。
[H. Explanation of intra prediction processing in H.264 / AVC format]
First, H. Each mode of intra prediction defined in the H.264 / AVC format will be described.
まず、輝度信号に対するイントラ予測モードについて説明する。輝度信号のイントラ予測モードには、イントラ4×4予測モード、イントラ8×8予測モード、およびイントラ16×16予測モードの3通りの方式が定められている。これは、ブロック単位を定めるモードであり、マクロブロック毎に設定される。また、色差信号に対しては、マクロブロック毎に輝度信号とは独立したイントラ予測モードを設定することが可能である。
First, the intra prediction mode for the luminance signal will be described. In the luminance signal intra prediction mode, three methods are defined: an
さらに、イントラ4×4予測モードの場合、4×4画素の対象ブロック毎に、9種類の予測モードから1つの予測モードを設定することができる。イントラ8×8予測モードの場合、8×8画素の対象ブロック毎に、9種類の予測モードから1つの予測モードを設定することができる。また、イントラ16×16予測モードの場合、16×16画素の対象マクロブロックに対して、4種類の予測モードから1つの予測モードを設定することができる。
Further, in the case of the
なお、以下、イントラ4×4予測モード、イントラ8×8予測モード、およびイントラ16×16予測モードは、それぞれ、4×4画素のイントラ予測モード、8×8画素のイントラ予測モード、および16×16画素のイントラ予測モードとも適宜称する。
Note that, hereinafter, the
図2の例において、各ブロックに付されている数字−1乃至25は、その各ブロックのビットストリーム順(復号側における処理順)を表している。なお、輝度信号については、マクロブロックが4×4画素に分割されて、4×4画素のDCTが行われる。そして、イントラ16×16予測モードの場合のみ、−1のブロックに示されるように、各ブロックの直流成分を集めて、4×4行列が生成され、これに対して、さらに、直交変換が施される。 In the example of FIG. 2, numerals -1 to 25 given to each block indicate the bit stream order (processing order on the decoding side) of each block. For the luminance signal, the macroblock is divided into 4 × 4 pixels, and DCT of 4 × 4 pixels is performed. Only in the case of the intra 16 × 16 prediction mode, as shown in the block of −1, the DC components of each block are collected to generate a 4 × 4 matrix, and further, orthogonal transformation is performed on this. Is done.
一方、色差信号については、マクロブロックが4×4画素に分割され、4×4画素のDCTが行われた後に、16および17の各ブロックに示されるように、各ブロックの直流成分を集めて、2×2行列が生成され、これに対して、さらに、直交変換が施される。
On the other hand, for the color difference signal, after the macroblock is divided into 4 × 4 pixels and the DCT of 4 × 4 pixels is performed, the DC components of each block are collected as shown in the
なお、このことは、イントラ8×8予測モードに関しては、ハイプロファイルまたはそれ以上のプロファイルで、対象マクロブロックに、8×8直交変換が施される場合についてのみ適用可能である。
Note that this can be applied to the
図3および図4は、9種類の輝度信号の4×4画素のイントラ予測モード(Intra_4x4_pred_mode)を示す図である。平均値(DC)予測を示すモード2以外の8種類の各モードは、それぞれ、図5の番号0,1,3乃至8で示される方向に対応している。
3 and 4 are diagrams illustrating nine types of luminance signal 4 × 4 pixel intra prediction modes (Intra — 4 × 4_pred_mode). Each of the eight types of modes other than
9種類のIntra_4x4_pred_modeについて、図6を参照して説明する。図6の例において、画素a乃至pは、イントラ処理される対象ブロックの画素を表し、画素値A乃至Mは、隣接ブロックに属する画素の画素値を表している。すなわち、画素a乃至pは、画面並べ替えバッファ62から読み出された処理対象の画像であり、画素値A乃至Mは、フレームメモリ72から読み出され、参照される復号済みの画像の画素値である。
Nine types of Intra_4x4_pred_mode will be described with reference to FIG. In the example of FIG. 6, pixels a to p represent pixels of a target block to be intra-processed, and pixel values A to M represent pixel values of pixels belonging to adjacent blocks. That is, the pixels a to p are images to be processed that are read from the
図3および図4に示す各イントラ予測モードの場合、画素a乃至pの予測画素値は、隣接ブロックに属する画素の画素値A乃至Mを用いて、以下のように生成される。なお、画素値が“available”であるとは、画枠の端であったり、あるいは、まだ符号化されていないなどの理由がなく、利用可能であることを表す。これに対して、画素値が“unavailable”であるとは、画枠の端であったり、あるいは、まだ符号化されていないなどの理由により利用可能ではないことを表す。 In the case of each intra prediction mode illustrated in FIGS. 3 and 4, the predicted pixel values of the pixels a to p are generated as follows using the pixel values A to M of the pixels belonging to the adjacent blocks. Note that the pixel value “available” indicates that the pixel value can be used without any reason such as being at the end of the image frame or not yet encoded. On the other hand, the pixel value “unavailable” indicates that the pixel value is not usable because it is at the end of the image frame or has not been encoded yet.
モード0はVertical Prediction modeであり、画素値A乃至Dが “available” の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(1)のように生成される。
画素a, e, i, mの予測画素値 = A
画素b, f, j, nの予測画素値 = B
画素c, g, k, oの予測画素値 = C
画素d, h, l, pの予測画素値 = D ・・・(1)
Predicted pixel value of pixels a, e, i, m = A
Predicted pixel value of pixels b, f, j, n = B
Predicted pixel value of pixels c, g, k, o = C
Predicted pixel value of pixels d, h, l, and p = D (1)
モード1はHorizontal Prediction modeであり、画素値I乃至Lが “available” の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(2)のように生成される。
画素a, b, c, dの予測画素値 = I
画素e, f, g, hの予測画素値 = J
画素i, j, k, lの予測画素値 = K
画素m, n, o, pの予測画素値 = L ・・・(2)
Predicted pixel value of pixels a, b, c, d = I
Predicted pixel value of pixels e, f, g, h = J
Predicted pixel value of pixels i, j, k, l = K
Predicted pixel value of pixels m, n, o, p = L (2)
モード2はDC Prediction modeであり、画素値A,B,C,D,I,J,K,Lが全て “available” である時、予測画素値は式(3)のように生成される。
(A+B+C+D+I+J+K+L+4) >> 3 ・・・(3)
(A + B + C + D + I + J + K + L + 4) >> 3 (3)
また、画素値A,B,C,Dが全て “unavailable” である時、予測画素値は式(4)のように生成される。
(I+J+K+L+2) >> 2 ・・・(4)
Further, when the pixel values A, B, C, and D are all “unavailable”, the predicted pixel value is generated as in Expression (4).
(I + J + K + L + 2) >> 2 (4)
また、画素値I,J,K,Lが全て “unavailable” である時、予測画素値は式(5)のように生成される。
(A+B+C+D+2) >> 2 ・・・(5)
Further, when the pixel values I, J, K, and L are all “unavailable”, the predicted pixel value is generated as in Expression (5).
(A + B + C + D + 2) >> 2 (5)
なお、画素値A,B,C,D,I,J,K,Lが全て“unavailable” である時、128を予測画素値として用いる。 When the pixel values A, B, C, D, I, J, K, and L are all “unavailable”, 128 is used as the predicted pixel value.
モード3はDiagonal_Down_Left Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(6)のように生成される。
画素aの予測画素値 = (A+2B+C+2) >> 2
画素b,eの予測画素値 = (B+2C+D+2) >> 2
画素c,f,iの予測画素値 = (C+2D+E+2) >> 2
画素d,g,j,mの予測画素値 = (D+2E+F+2) >> 2
画素h,k,nの予測画素値 = (E+2F+G+2) >> 2
画素l,oの予測画素値 = (F+2G+H+2) >> 2
画素pの予測画素値 = (G+3H+2) >> 2
・・・(6)
Predicted pixel value of pixel a = (A + 2B + C + 2) >> 2
Predicted pixel value of pixels b and e = (B + 2C + D + 2) >> 2
Predicted pixel value of pixels c, f, i = (C + 2D + E + 2) >> 2
Predicted pixel value of pixels d, g, j, m = (D + 2E + F + 2) >> 2
Predicted pixel value of pixels h, k, n = (E + 2F + G + 2) >> 2
Predicted pixel value of pixels l and o = (F + 2G + H + 2) >> 2
Predicted pixel value of pixel p = (G + 3H + 2) >> 2
... (6)
モード4はDiagonal_Down_Right Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが “available” の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(7)のように生成される。
画素mの予測画素値 = (J+2K+L+2) >> 2
画素i,nの予測画素値 = (I+2J+K+2) >> 2
画素e,j,oの予測画素値 = (M+2I+J+2) >> 2
画素a,f,k,pの予測画素値 = (A+2M+I+2) >> 2
画素b,g,lの予測画素値 = (M+2A+B+2) >> 2
画素c,hの予測画素値 = (A+2B+C+2) >> 2
画素dの予測画素値 = (B+2C+D+2) >> 2
・・・(7)
Predicted pixel value of pixel m = (J + 2K + L + 2) >> 2
Predicted pixel value of pixels i and n = (I + 2J + K + 2) >> 2
Predicted pixel value of pixels e, j, o = (M + 2I + J + 2) >> 2
Predicted pixel value of pixels a, f, k, p = (A + 2M + I + 2) >> 2
Predicted pixel value of pixels b, g, l = (M + 2A + B + 2) >> 2
Predicted pixel value of pixels c and h = (A + 2B + C + 2) >> 2
Predicted pixel value of pixel d = (B + 2C + D + 2) >> 2
... (7)
モード5はDiagonal_Vertical_Right Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(8)のように生成される。
画素a,jの予測画素値 = (M+A+1) >> 1
画素b,kの予測画素値 = (A+B+1) >> 1
画素c,lの予測画素値 = (B+C+1) >> 1
画素dの予測画素値 = (C+D+1) >> 1
画素e,nの予測画素値 = (I+2M+A+2) >> 2
画素f,oの予測画素値 = (M+2A+B+2) >> 2
画素g,pの予測画素値 = (A+2B+C+2) >> 2
画素hの予測画素値 = (B+2C+D+2) >> 2
画素iの予測画素値 = (M+2I+J+2) >> 2
画素mの予測画素値 = (I+2J+K+2) >> 2
・・・(8)
Predicted pixel value of pixels a and j = (M + A + 1) >> 1
Predicted pixel value of pixels b and k = (A + B + 1) >> 1
Predicted pixel value of pixels c and l = (B + C + 1) >> 1
Predicted pixel value of pixel d = (C + D + 1) >> 1
Predicted pixel value of pixels e and n = (I + 2M + A + 2) >> 2
Predicted pixel value of pixels f and o = (M + 2A + B + 2) >> 2
Predicted pixel value of pixels g and p = (A + 2B + C + 2) >> 2
Predicted pixel value of pixel h = (B + 2C + D + 2) >> 2
Predicted pixel value of pixel i = (M + 2I + J + 2) >> 2
Predicted pixel value of pixel m = (I + 2J + K + 2) >> 2
... (8)
モード6はHorizontal_Down Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(9)のように生成される。
画素a,gの予測画素値 = (M+I+1) >> 1
画素b,hの予測画素値 = (I+2M+A+2) >> 2
画素cの予測画素値 = (M+2A+B+2) >> 2
画素dの予測画素値 = (A+2B+C+2) >> 2
画素e,kの予測画素値 = (I+J+1) >> 1
画素f,lの予測画素値 = (M+2I+J+2) >> 2
画素i,oの予測画素値 = (J+K+1) >> 1
画素j,pの予測画素値 = (I+2J+K+2) >> 2
画素mの予測画素値 = (K+L+1) >> 1
画素nの予測画素値 = (J+2K+L+2) >> 2
・・・(9)
Predicted pixel value of pixels a and g = (M + I + 1) >> 1
Predicted pixel value of pixels b and h = (I + 2M + A + 2) >> 2
Predicted pixel value of pixel c = (M + 2A + B + 2) >> 2
Predicted pixel value of pixel d = (A + 2B + C + 2) >> 2
Predicted pixel value of pixels e and k = (I + J + 1) >> 1
Predicted pixel value of pixels f and l = (M + 2I + J + 2) >> 2
Predicted pixel value of pixels i and o = (J + K + 1) >> 1
Predicted pixel value of pixels j and p = (I + 2J + K + 2) >> 2
Predicted pixel value of pixel m = (K + L + 1) >> 1
Predicted pixel value of pixel n = (J + 2K + L + 2) >> 2
... (9)
モード7は、Vertical_Left Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(10)のように生成される。
画素aの予測画素値 = (A+B+1) >> 1
画素b,iの予測画素値 = (B+C+1) >> 1
画素c,jの予測画素値 = (C+D+1) >> 1
画素d,kの予測画素値 = (D+E+1) >> 1
画素lの予測画素値 = (E+F+1) >> 1
画素eの予測画素値 = (A+2B+C+2) >> 2
画素f,mの予測画素値 = (B+2C+D+2) >> 2
画素g,nの予測画素値 = (C+2D+E+2) >> 2
画素h,oの予測画素値 = (D+2E+F+2) >> 2
画素pの予測画素値 = (E+2F+G+2) >> 2
・・・(10)
Predicted pixel value of pixel a = (A + B + 1) >> 1
Predicted pixel value of pixels b and i = (B + C + 1) >> 1
Predicted pixel value of pixels c and j = (C + D + 1) >> 1
Predicted pixel value of pixels d and k = (D + E + 1) >> 1
Predicted pixel value of pixel l = (E + F + 1) >> 1
Predicted pixel value of pixel e = (A + 2B + C + 2) >> 2
Predicted pixel value of pixels f and m = (B + 2C + D + 2) >> 2
Predicted pixel value of pixels g and n = (C + 2D + E + 2) >> 2
Predicted pixel value of pixels h and o = (D + 2E + F + 2) >> 2
Predicted pixel value of pixel p = (E + 2F + G + 2) >> 2
... (10)
モード8は、Horizontal_Up Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(11)のように生成される。
画素aの予測画素値 = (I+J+1) >> 1
画素bの予測画素値 = (I+2J+K+2) >> 2
画素c,eの予測画素値 = (J+K+1) >> 1
画素d,fの予測画素値 = (J+2K+L+2) >> 2
画素g,iの予測画素値 = (K+L+1) >> 1
画素h,jの予測画素値 = (K+3L+2) >> 2
画素k,l,m,n,o,pの予測画素値 = L
・・・(11)
Predicted pixel value of pixel a = (I + J + 1) >> 1
Predicted pixel value of pixel b = (I + 2J + K + 2) >> 2
Predicted pixel value of pixels c and e = (J + K + 1) >> 1
Predicted pixel value of pixels d and f = (J + 2K + L + 2) >> 2
Predicted pixel value of pixels g and i = (K + L + 1) >> 1
Predicted pixel value of pixels h and j = (K + 3L + 2) >> 2
Predicted pixel value of pixels k, l, m, n, o, p = L
(11)
次に、図7を参照して、輝度信号の4×4画素のイントラ予測モード(Intra_4x4_pred_mode)の符号化方式について説明する。図7の例において、4×4画素からなり、符号化対象となる対象ブロックCが示されており、対象ブロックCに隣接する4×4画素からなるブロックAおよびブロックBが示されている。 Next, a 4 × 4 pixel intra prediction mode (Intra — 4 × 4_pred_mode) encoding method for luminance signals will be described with reference to FIG. In the example of FIG. 7, a target block C that is 4 × 4 pixels and is an encoding target is illustrated, and a block A and a block B that are 4 × 4 pixels adjacent to the target block C are illustrated.
この場合、対象ブロックCにおけるIntra_4x4_pred_modeと、ブロックAおよびブロックBにおけるIntra_4x4_pred_modeとは高い相関があると考えられる。この相関性を用いて、次のように符号化処理を行うことにより、より高い符号化効率を実現することができる。 In this case, it is considered that Intra_4x4_pred_mode in the target block C and Intra_4x4_pred_mode in the block A and the block B have a high correlation. By using this correlation and performing encoding processing as follows, higher encoding efficiency can be realized.
すなわち、図7の例において、ブロックAおよびブロックBにおけるIntra_4x4_pred_modeを、それぞれ、Intra_4x4_pred_modeAおよびIntra_4x4_pred_modeBとして、MostProbableModeを次の式(12)と定義する。
MostProbableMode=Min(Intra_4x4_pred_modeA, Intra_4x4_pred_modeB)
・・・(12)
That is, in the example of FIG. 7, Intra_4x4_pred_mode in the block A and the block B is set as Intra_4x4_pred_modeA and Intra_4x4_pred_modeB, respectively, and MostProbableMode is defined as the following equation (12).
MostProbableMode = Min (Intra_4x4_pred_modeA, Intra_4x4_pred_modeB)
(12)
すなわち、ブロックAおよびブロックBのうち、より小さなmode_numberを割り当てられている方をMostProbableModeとする。 That is, among blocks A and B, the one to which a smaller mode_number is assigned is referred to as MostProbableMode.
ビットストリーム中には、対象ブロックCに対するパラメータとして、prev_intra4x4_pred_mode_flag[luma4x4BlkIdx] および rem_intra4x4_pred_mode[luma4x4BlkIdx] という2つの値が定義されており、次の式(13)に示される擬似コードに基づく処理により、復号処理が行われ、対象ブロックCに対するIntra_4x4_pred_mode、Intra4x4PredMode[luma4x4BlkIdx] の値を得ることができる。 In the bitstream, two values, prev_intra4x4_pred_mode_flag [luma4x4BlkIdx] and rem_intra4x4_pred_mode [luma4x4BlkIdx], are defined as parameters for the target block C. And the values of Intra_4x4_pred_mode and Intra4x4PredMode [luma4x4BlkIdx] for the target block C can be obtained.
if(prev_intra4x4_pred_mode_flag[luma4x4BlkIdx])
Intra4x4PredMode[luma4x4BlkIdx] = MostProbableMode
else
if(rem_intra4x4_pred_mode[luma4x4BlkIdx] < MostProbableMode)
Intra4x4PredMode[luma4x4BlkIdx]=rem_intra4x4_pred_mode[luma4x4BlkIdx]
else
Intra4x4PredMode[luma4x4BlkIdx]=rem_intra4x4_pred_mode[luma4x4BlkIdx] + 1
・・・(13)
if (prev_intra4x4_pred_mode_flag [luma4x4BlkIdx])
Intra4x4PredMode [luma4x4BlkIdx] = MostProbableMode
else
if (rem_intra4x4_pred_mode [luma4x4BlkIdx] <MostProbableMode)
Intra4x4PredMode [luma4x4BlkIdx] = rem_intra4x4_pred_mode [luma4x4BlkIdx]
else
Intra4x4PredMode [luma4x4BlkIdx] = rem_intra4x4_pred_mode [luma4x4BlkIdx] + 1
(13)
次に、8×8画素のイントラ予測モードについて説明する。図8および図9は、9種類の輝度信号の8×8画素のイントラ予測モード(Intra_8x8_pred_mode)を示す図である。 Next, an 8 × 8 pixel intra prediction mode will be described. FIG. 8 and FIG. 9 are diagrams illustrating nine types of luminance signal 8 × 8 pixel intra prediction modes (Intra_8 × 8_pred_mode).
対象の8×8ブロックにおける画素値を、p[x,y](0≦x≦7;0≦y≦7)とし、隣接ブロックの画素値をp[-1,-1],…,p[-1,15],p[-1,0],…,[p-1,7]のように表すものとする。
The pixel value in the
8×8画素のイントラ予測モードについては、予測値を生成するに先立ち、隣接画素にローパスフィルタリング処理が施される。ここで、ローパスフィルタリング処理前の画素値を、p[-1,-1],…,p[-1,15],p[-1,0],…p[-1,7]、処理後の画素値をp’[-1,-1],…,p’[-1,15],p’[-1,0],…p’[-1,7]と表すとする。 In the 8 × 8 pixel intra prediction mode, adjacent pixels are subjected to a low-pass filtering process prior to generating a prediction value. Here, the pixel values before the low-pass filtering process are p [-1, -1], ..., p [-1,15], p [-1,0], ... p [-1,7], and after the process Are represented as p ′ [− 1, −1],..., P ′ [− 1,15], p ′ [− 1,0],... P ′ [− 1,7].
まず、p’[0,-1]は、p[-1,-1] が “available” である場合には、次の式(14)のように算出され、“not available” である場合には、次の式(15)のように算出される。
p’[0,-1] = (p[-1,-1] + 2*p[0,-1] + p[1,-1] + 2) >> 2
・・・(14)
p’[0,-1] = (3*p[0,-1] + p[1,-1] + 2) >> 2
・・・(15)
First, p ′ [0, -1] is calculated as in the following equation (14) when p [-1, -1] is “available”, and when “not available” Is calculated as in the following equation (15).
p '[0, -1] = (p [-1, -1] + 2 * p [0, -1] + p [1, -1] + 2) >> 2
(14)
p '[0, -1] = (3 * p [0, -1] + p [1, -1] + 2) >> 2
(15)
p’[x,-1] (x=0,…,7)は、次の式(16)のように算出される。
p’[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >>2
・・・(16)
p ′ [x, −1] (x = 0,..., 7) is calculated as in the following equation (16).
p '[x, -1] = (p [x-1, -1] + 2 * p [x, -1] + p [x + 1, -1] + 2) >> 2
... (16)
p’[x,-1] (x=8,…,15)は、p[x,-1] (x=8,…,15) が “available” である場合には、次の式(17)のように算出される。
p’[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >>2
p’[15,-1] = (p[14,-1] + 3*p[15,-1] + 2) >>2
・・・(17)
p '[x, -1] (x = 8, ..., 15) is expressed by the following equation (17) when p [x, -1] (x = 8, ..., 15) is "available": ).
p '[x, -1] = (p [x-1, -1] + 2 * p [x, -1] + p [x + 1, -1] + 2) >> 2
p '[15, -1] = (p [14, -1] + 3 * p [15, -1] + 2) >> 2
... (17)
p’[-1,-1]は、p[-1,-1]が “available” である場合には、以下のように算出される。すなわち、p’[-1,-1]は、p[0,-1]及びp[-1,0]の双方がavailableである場合には、式(18)のように算出され、p[-1,0] が “unavailable” である場合には、式(19)のように算出される。また、p’[-1,-1]は、p[0,-1] が “unavailable” である場合には、式(20)のように算出される。
p’[-1,-1] = (p[0,-1] + 2*p[-1,-1] + p[-1,0] + 2) >>2
・・・(18)
p’[-1,-1] = (3*p[-1,-1] + p[0,-1] + 2) >>2
・・・(19)
p’[-1,-1] = (3*p[-1,-1] + p[-1,0] + 2) >>2
・・・(20)
p '[-1, -1] is calculated as follows when p [-1, -1] is "available". That is, p ′ [− 1, −1] is calculated as in Expression (18) when both p [0, −1] and p [−1,0] are available, and p [ -1,0] is “unavailable”, it is calculated as in equation (19). Further, p ′ [− 1, −1] is calculated as in Expression (20) when p [0, −1] is “unavailable”.
p '[-1, -1] = (p [0, -1] + 2 * p [-1, -1] + p [-1,0] + 2) >> 2
... (18)
p '[-1, -1] = (3 * p [-1, -1] + p [0, -1] + 2) >> 2
... (19)
p '[-1, -1] = (3 * p [-1, -1] + p [-1,0] + 2) >> 2
... (20)
p’[-1,y] (y=0, … ,7) は、p[-1,y] (y=0, … ,7) が “available” の時、以下のように算出される。すなわち、まず、p’[-1,0]は、p[-1,-1]が “available” である場合には、次の式(21)のように算出され、“unavailable” である場合には、式(22)のように算出される。
p’[-1,0] = (p[-1,-1] + 2*p[-1,0] + p[-1,1] + 2) >>2
・・・(21)
p’[-1,0] = (3*p[-1,0] + p[-1,1] + 2) >>2
・・・(22)
p '[-1, y] (y = 0,..., 7) is calculated as follows when p [-1, y] (y = 0,..., 7) is “available”. That is, first, p ′ [− 1,0] is calculated as in the following equation (21) when p [−1, −1] is “available”, and is “unavailable” Is calculated as shown in Equation (22).
p '[-1,0] = (p [-1, -1] + 2 * p [-1,0] + p [-1,1] + 2) >> 2
(21)
p '[-1,0] = (3 * p [-1,0] + p [-1,1] + 2) >> 2
(22)
また、p’[-1,y] (y=1,…,6)は、次の式(23)のように算出され、p’[-1,7]は、式(24)のように算出される。
p[-1,y] = (p[-1,y-1] + 2*p[-1,y] + p[-1,y+1] + 2) >>2
・・・(23)
p’[-1,7] = (p[-1,6] + 3*p[-1,7] + 2) >>2
・・・(24)
Further, p ′ [− 1, y] (y = 1,..., 6) is calculated as in the following equation (23), and p ′ [− 1, 7] is as in equation (24). Calculated.
p [-1, y] = (p [-1, y-1] + 2 * p [-1, y] + p [-1, y + 1] + 2) >> 2
(23)
p '[-1,7] = (p [-1,6] + 3 * p [-1,7] + 2) >> 2
... (24)
このように算出されたp’を用いて、図8および図9に示される各イントラ予測モードにおける予測値は以下のように生成される。 Using p ′ calculated in this way, the prediction values in each intra prediction mode shown in FIGS. 8 and 9 are generated as follows.
モード0はVertical Prediction modeであり、p[x,-1] (x=0, … ,7) が “available” である時のみ適用される。予測値pred8x8L[x,y]は、次の式(25)のように生成される。
pred8x8L[x,y] = p’[x,-1] x,y=0,...,7
・・・(25)
pred8x8 L [x, y] = p '[x, -1] x, y = 0, ..., 7
... (25)
モード1はHorizontal Prediction modeであり、p[-1,y] (y=0, … ,7) が “available” である時のみ適用される。予測値pred8x8L[x,y]は、次の式(26)のように生成される。
pred8x8L[x,y] = p’[-1,y] x,y=0,...,7
・・・(26)
pred8x8 L [x, y] = p '[-1, y] x, y = 0, ..., 7
... (26)
モード2はDC Prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、p[x,-1] (x=0, … ,7) および p[-1,y] (y=0, … ,7) の両方が “available” である場合には、予測値pred8x8L[x,y]は、次の式(27)のように生成される。
p[x,-1] (x=0, … ,7) は “available” であるが、 p[-1,y] (y=0, … ,7) が “unavailable” である場合には、予測値pred8x8L[x,y]は、次の式(28)のように生成される。
p[x,-1] (x=0, … ,7) は “unavailable” であるが、 p[-1,y] (y=0, … ,7) が “available” である場合には、予測値pred8x8L[x,y]は、次の式(29)のように生成される。
p[x,-1] (x=0, … ,7) および p[-1,y] (y=0, … ,7) の両方が “unavailable” である場合には、予測値pred8x8L[x,y]は、次の式(30)のように生成される。
pred8x8L[x,y] = 128
・・・(30)
ただし、式(30)は、8ビット入力の場合を表している。
If both p [x, -1] (x = 0,…, 7) and p [-1, y] (y = 0,…, 7) are “unavailable”, the predicted value pred8x8 L [ x, y] is generated as in the following Expression (30).
pred8x8 L [x, y] = 128
... (30)
However, Expression (30) represents the case of 8-bit input.
モード3はDiagonal_Down_Left_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Diagonal_Down_Left_prediction modeは、p[x,-1], x=0,…,15が “available” の時のみ適用され、x=7かつy=7である予測画素値は、次の式(31)のように生成され、その他の予測画素値は、次の式(32)のように生成される。
pred8x8L[x,y] = (p’[14,-1] + 3*p[15,-1] + 2) >> 2
・・・(31)
pred8x8L[x,y] = (p’[x+y,-1] + 2*p’[x+y+1,-1] + p’[x+y+2,-1] + 2) >> 2
・・・(32)
pred8x8 L [x, y] = (p '[14, -1] + 3 * p [15, -1] + 2) >> 2
... (31)
pred8x8 L [x, y] = (p '[x + y, -1] + 2 * p' [x + y + 1, -1] + p '[x + y + 2, -1] + 2) >> 2
... (32)
モード4はDiagonal_Down_Right_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Diagonal_Down_Right_prediction modeは、p[x,-1],x=0,…,7及びp[-1,y],y=0,…,7が “available”の時のみ適用され、x > y である予測画素値は、次の式(33)のように生成され、x < y である予測画素値は、次の式(34)のように生成される。また、x = y である予測画素値は、次の式(35)のように生成される。
pred8x8L[x,y] = (p’[x-y-2,-1] + 2*p’[x-y-1,-1] + p’[x-y,-1] + 2) >> 2
・・・(33)
pred8x8L[x,y] = (p’[-1,y-x-2] + 2*p’[-1,y-x-1] + p’[-1,y-x] + 2) >> 2
・・・(34)
pred8x8L[x,y] = (p’[0,-1] + 2*p’[-1,-1] + p’[-1,0] + 2) >> 2
・・・(35)
pred8x8 L [x, y] = (p '[xy-2, -1] + 2 * p' [xy-1, -1] + p '[xy, -1] + 2) >> 2
... (33)
pred8x8 L [x, y] = (p '[-1, yx-2] + 2 * p' [-1, yx-1] + p '[-1, yx] + 2) >> 2
... (34)
pred8x8 L [x, y] = (p '[0, -1] + 2 * p' [-1, -1] + p '[-1,0] + 2) >> 2
... (35)
モード5はVertical_Right_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Vertical_Right_prediction modeは、p[x,-1],x=0,…,7及びp[-1,y],y=-1,…,7が “available”の時のみ適用される。今、zVRを、次の式(36)のように定義する。
zVR = 2*x - y
・・・(36)
zVR = 2 * x-y
... (36)
この時、zVRが、0,2,4,6,8,10,12,14の場合には、画素予測値は、次の式(37)のように生成され、zVRが1,3,5,7,9,11,13の場合には、画素予測値は、次の式(38)のように生成される。
pred8x8L[x,y] = (p’[x-(y>>1)-1,-1] + p’[x-(y>>1),-1] + 1) >> 1
・・・(37)
pred8x8L[x,y]
= (p’[x-(y>>1)-2,-1] + 2*p’[x-(y>>1)-1,-1] + p’[x-(y>>1),-1] + 2) >> 2
・・・(38)
At this time, when zVR is 0,2,4,6,8,10,12,14, the pixel prediction value is generated as in the following equation (37), and zVR is 1,3,5 , 7, 9, 11, and 13, the predicted pixel value is generated as in the following Expression (38).
pred8x8 L [x, y] = (p '[x- (y >> 1) -1, -1] + p' [x- (y >> 1),-1] + 1) >> 1
... (37)
pred8x8 L [x, y]
= (p '[x- (y >> 1) -2, -1] + 2 * p' [x- (y >> 1) -1, -1] + p '[x- (y >> 1 ),-1] + 2) >> 2
... (38)
また、zVRが-1の場合には、画素予測値は、次の式(39)のように生成され、これ以外の場合、すなわち、zVRが-2,-3,-4,-5,-6,-7の場合には、画素予測値は、次の式(40)のように生成される。
pred8x8L[x,y] = (p’[-1,0] + 2*p’[-1,-1] + p’[0,-1] + 2) >> 2
・・・(39)
pred8x8L[x,y] = (p’[-1,y-2*x-1] + 2*p’[-1,y-2*x-2] + p’[-1,y-2*x-3] + 2) >> 2
・・・(40)
In addition, when zVR is −1, the predicted pixel value is generated as in the following Expression (39). In other cases, that is, zVR is −2, −3, −4, −5, − In the case of 6, -7, the pixel prediction value is generated as in the following Expression (40).
pred8x8 L [x, y] = (p '[-1,0] + 2 * p' [-1, -1] + p '[0, -1] + 2) >> 2
... (39)
pred8x8 L [x, y] = (p '[-1, y-2 * x-1] + 2 * p' [-1, y-2 * x-2] + p '[-1, y-2 * x-3] + 2) >> 2
... (40)
モード6はHorizontal_Down_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Horizontal_Down_prediction modeは、p[x,-1],x=0,…,7及びp[-1,y],y=-1,…,7が “available”の時のみ適用される。今、zVRを次の式(41)のように定義するものとする。
zHD = 2*y - x
・・・(41)
zHD = 2 * y-x
... (41)
この時、zHDが0,2,4,6,8,10,12,14の場合には、予測画素値は、次の式(42)のように生成され、zHDが1,3,5,7,9,11,13の場合には、予測画素値は、次の式(43)のように生成される。
pred8x8L[x,y] = (p’[-1,y-(x>>1)-1] + p’[-1,y-(x>>1) + 1] >> 1
・・・(42)
pred8x8L[x,y]
= (p’[-1,y-(x>>1)-2] + 2*p’[-1,y-(x>>1)-1] + p’[-1,y-(x>>1)] + 2) >> 2
・・・(43)
At this time, when zHD is 0,2,4,6,8,10,12,14, the predicted pixel value is generated as in the following equation (42), and zHD is 1,3,5, In the case of 7, 9, 11, 13, the predicted pixel value is generated as in the following equation (43).
pred8x8 L [x, y] = (p '[-1, y- (x >> 1) -1] + p' [-1, y- (x >> 1) + 1] >> 1
... (42)
pred8x8 L [x, y]
= (p '[-1, y- (x >> 1) -2] + 2 * p' [-1, y- (x >> 1) -1] + p '[-1, y- (x >> 1)] + 2) >> 2
... (43)
また、zHDが-1の場合には、予測画素値は、次の式(44)のように生成され、zHDがこれ以外の値の場合、すなわち、-2,-3,-4,-5,-6,-7の場合には、予測画素値は、次の式(45)のように生成される。
pred8x8L[x,y] = (p’[-1,0] + 2*p[-1,-1] + p’[0,-1] + 2) >> 2
・・・(44)
pred8x8L[x,y] = (p’[x-2*y-1,-1] + 2*p’[x-2*y-2,-1] + p’[x-2*y-3,-1] + 2) >> 2
・・・(45)
Further, when zHD is −1, the predicted pixel value is generated as in the following Expression (44), and when zHD is a value other than this, that is, −2, −3, −4, −5 , -6, -7, the predicted pixel value is generated as in the following Expression (45).
pred8x8 L [x, y] = (p '[-1,0] + 2 * p [-1, -1] + p' [0, -1] + 2) >> 2
... (44)
pred8x8 L [x, y] = (p '[x-2 * y-1, -1] + 2 * p' [x-2 * y-2, -1] + p '[x-2 * y- 3, -1] + 2) >> 2
... (45)
モード7はVertical_Left_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Vertical_Left_prediction modeは、p[x,-1], x=0,…,15が “available” の時のみ適用され、y=0,2,4,6の場合、予測画素値は、次の式(46)のように生成され、それ以外の場合、すなわち、y=1,3,5,7の場合、予測画素値は、次の式(47)のように生成される。
pred8x8L[x,y] = (p’[x+(y>>1),-1] + p’[x+(y>>1)+1,-1] + 1) >> 1
・・・(46)
pred8x8L[x,y]
= (p’[x+(y>>1),-1] + 2*p’[x+(y>>1)+1,-1] + p’[x+(y>>1)+2,-1] + 2) >> 2
・・・(47)
pred8x8 L [x, y] = (p '[x + (y >> 1),-1] + p' [x + (y >> 1) + 1, -1] + 1) >> 1
... (46)
pred8x8 L [x, y]
= (p '[x + (y >> 1),-1] + 2 * p' [x + (y >> 1) + 1, -1] + p '[x + (y >> 1) + 2,- 1] + 2) >> 2
... (47)
モード8はHorizontal_Up_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Horizontal_Up_prediction modeは、p[-1,y], y=0,…,7 が “available” の時のみ適用される。以下では、zHUを次の式(48)のように定義する。
zHU = x + 2*y
・・・(48)
zHU = x + 2 * y
... (48)
zHUの値が0,2,4,6,8,10,12の場合、予測画素値は、次の式(49)のように生成され、zHUの値が1,3,5,7,9,11の場合、予測画素値は、次の式(50)のように生成される。
pred8x8L[x,y] = (p’[-1,y+(x>>1)] + p’[-1,y+(x>>1)+1] + 1) >> 1
・・・(49)
pred8x8L[x,y] = (p’[-1,y+(x>>1)]
・・・(50)
When the value of zHU is 0,2,4,6,8,10,12, the predicted pixel value is generated as in the following equation (49), and the value of zHU is 1,3,5,7,9 , 11, the predicted pixel value is generated as in the following equation (50).
pred8x8 L [x, y] = (p '[-1, y + (x >> 1)] + p' [-1, y + (x >> 1) +1] + 1) >> 1
... (49)
pred8x8 L [x, y] = (p '[-1, y + (x >> 1)]
... (50)
また、zHUの値が13の場合、予測画素値は、次の式(51)のように生成され、それ以外の場合、すなわち、zHUの値が13より大きい場合、予測画素値は、次の式(52)のように生成される。
pred8x8L[x,y] = (p’[-1,6] + 3*p’[-1,7] + 2) >> 2
・・・(51)
pred8x8L[x,y] = p’[-1,7]
・・・(52)
In addition, when the value of zHU is 13, the predicted pixel value is generated as in the following equation (51). In other cases, that is, when the value of zHU is larger than 13, the predicted pixel value is It is generated as shown in equation (52).
pred8x8 L [x, y] = (p '[-1,6] + 3 * p' [-1,7] + 2) >> 2
... (51)
pred8x8 L [x, y] = p '[-1,7]
... (52)
次に、16×16画素のイントラ予測モードについて説明する。図10および図11は、4種類の輝度信号の16×16画素のイントラ予測モード(Intra_16x16_pred_mode)を示す図である。 Next, the 16 × 16 pixel intra prediction mode will be described. FIGS. 10 and 11 are diagrams illustrating 16 × 16 pixel intra prediction modes (Intra — 16 × 16_pred_mode) of four types of luminance signals.
4種類のイントラ予測モードについて、図12を参照して説明する。図12の例において、イントラ処理される対象マクロブロックAが示されており、P(x,y);x,y=-1,0,…,15は、対象マクロブロックAに隣接する画素の画素値を表している。 The four types of intra prediction modes will be described with reference to FIG. In the example of FIG. 12, a target macroblock A to be intra-processed is shown, and P (x, y); x, y = −1,0,..., 15 are pixels adjacent to the target macroblock A. It represents a pixel value.
モード0は、Vertical Prediction modeであり、P(x,-1); x,y=-1,0,…,15が “available” である時のみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(53)のように生成される。
Pred(x,y) = P(x,-1);x,y=0,…,15
・・・(53)
Pred (x, y) = P (x, -1); x, y = 0, ..., 15
... (53)
モード1はHorizontal Prediction modeであり、P(-1,y); x,y=-1,0,…,15が “available” である時のみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(54)のように生成される。
Pred(x,y) = P(-1,y);x,y=0,…,15
・・・(54)
Pred (x, y) = P (-1, y); x, y = 0, ..., 15
... (54)
モード2はDC Prediction modeであり、P(x,-1)およびP(-1,y); x,y=-1,0,…,15が全て “available” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(55)のように生成される。
また、P(x,-1); x,y=-1,0,…,15が “unavailable” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(56)のように生成される。
P(-1,y); x,y=-1,0,…,15が “unavailable” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(57)のように生成される。
P(x,-1)およびP(-1,y); x,y=-1,0,…,15が全て “unavailable” である場合には、予測画素値として128を用いる。 When P (x, −1) and P (−1, y); x, y = −1,0,..., 15 are all “unavailable”, 128 is used as the predicted pixel value.
モード3はPlane Prediction modeであり、P(x,-1)及びP(-1,y); x,y=-1,0,…,15が全て “available” の場合のみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(58)のように生成される。
次に、色差信号に対するイントラ予測モードについて説明する。図13は、4種類の色差信号のイントラ予測モード(Intra_chroma_pred_mode)を示す図である。色差信号のイントラ予測モードは、輝度信号のイントラ予測モードと独立に設定が可能である。色差信号に対するイントラ予測モードは、上述した輝度信号の16×16画素のイントラ予測モードに順ずる。 Next, the intra prediction mode for color difference signals will be described. FIG. 13 is a diagram illustrating four types of color difference signal intra prediction modes (Intra_chroma_pred_mode). The color difference signal intra prediction mode can be set independently of the luminance signal intra prediction mode. The intra prediction mode for the color difference signal is in accordance with the 16 × 16 pixel intra prediction mode of the luminance signal described above.
ただし、輝度信号の16×16画素のイントラ予測モードが、16×16画素のブロックを対象としているのに対し、色差信号に対するイントラ予測モードは、8×8画素のブロックを対象としている。さらに、上述した図10と図13に示されるように、両者においてモード番号は対応していない。 However, the 16 × 16 pixel intra prediction mode for the luminance signal is intended for a block of 16 × 16 pixels, whereas the intra prediction mode for a color difference signal is intended for a block of 8 × 8 pixels. Further, as shown in FIGS. 10 and 13 described above, the mode numbers do not correspond to each other.
ここで、図12を参照して上述した輝度信号の16×16画素のイントラ予測モードの対象マクロブロックAの画素値および隣接する画素値の定義に準じる。例えば、イントラ処理される対象マクロブロックA(色差信号の場合は、8×8画素)に隣接する画素の画素値をP(x,y);x,y=-1,0,…,7とする。 Here, it conforms to the definition of the pixel value of the target macroblock A in the 16 × 16 pixel intra prediction mode of the luminance signal and the adjacent pixel value described above with reference to FIG. For example, pixel values of pixels adjacent to the target macroblock A to be intra-processed (8 × 8 pixels in the case of a color difference signal) are P (x, y); x, y = −1,0,. To do.
モード0はDC Prediction modeであり、P(x,-1)およびP(-1,y); x,y=-1,0,…,7が全て “available” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(59)のように生成される。
また、P(-1,y) ; x,y=-1,0,…,7が “unavailable” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(60)のように生成される。
また、P(x,-1) ; x,y=-1,0,…,7が “unavailable”である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(61)のように生成される。
モード1はHorizontal Prediction modeであり、P(-1,y) ; x,y=-1,0,…,7が “available” の場合にのみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(62)のように生成される。
Pred(x,y) = P(-1,y);x,y=0,…,7
・・・(62)
Pred (x, y) = P (-1, y); x, y = 0, ..., 7
... (62)
モード2はVertical Prediction modeであり、P(x,-1) ; x,y=-1,0,…,7が “available” の場合にのみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(63)のように生成される。
Pred(x,y) = P(x,-1);x,y=0,…,7
・・・(63)
Pred (x, y) = P (x, -1); x, y = 0, ..., 7
... (63)
モード3はPlane Prediction modeであり、P(x,-1)及びP(-1,y) ; x,y=-1,0,…,7 が “available” の場合にのみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(64)のように生成される。
以上のように、輝度信号のイントラ予測モードには、9種類の4×4画素および8×8画素のブロック単位、並びに4種類の16×16画素のマクロブロック単位の予測モードがある。このブロック単位のモードは、マクロブロック単位毎に設定される。色差信号のイントラ予測モードには、4種類の8×8画素のブロック単位の予測モードがある。この色差信号のイントラ予測モードは、輝度信号のイントラ予測モードと独立に設定が可能である。 As described above, the luminance signal intra prediction modes include nine types of 4 × 4 pixel and 8 × 8 pixel block units, and four types of 16 × 16 pixel macroblock unit prediction modes. This block unit mode is set for each macroblock unit. The color difference signal intra prediction modes include four types of prediction modes in units of 8 × 8 pixel blocks. This color difference signal intra prediction mode can be set independently of the luminance signal intra prediction mode.
また、輝度信号の4×4画素のイントラ予測モード(イントラ4×4予測モード)および8×8画素のイントラ予測モード(イントラ8×8予測モード)については、4×4画素および8×8画素の輝度信号のブロック毎に1つのイントラ予測モードが設定される。輝度信号の16×16画素のイントラ予測モード(イントラ16×16予測モード)と色差信号のイントラ予測モードについては、1つのマクロブロックに対して1つの予測モードが設定される。 In addition, the 4 × 4 pixel intra prediction mode (intra 4 × 4 prediction mode) and the 8 × 8 pixel intra prediction mode (intra 8 × 8 prediction mode) of the luminance signal are 4 × 4 pixels and 8 × 8 pixels. One intra prediction mode is set for each block of luminance signals. For the 16 × 16 pixel intra prediction mode for luminance signals (intra 16 × 16 prediction mode) and the intra prediction mode for color difference signals, one prediction mode is set for one macroblock.
なお、予測モードの種類は、上述した図5の番号0,1,3乃至8で示される方向に対応している。予測モード2は平均値予測である。
Note that the types of prediction modes correspond to the directions indicated by the
以上のようにH.264/AVC方式におけるイントラ予測においては、式(14)乃至式(24)で上述したように、8×8画素のブロック単位のイントラ予測を行うに先立ってのみ、定められたフィルタ係数で、隣接画素の画素値のフィルタ処理が行われている。これに対して、画像符号化装置51においては、すべてのイントラ予測モードのイントラ予測を行うに先立ち、予測対象のブロックに応じて設定されたフィルタ係数で隣接画素の画素値のフィルタ処理が行われる。
As above. In the intra prediction in the H.264 / AVC format, as described above with reference to the equations (14) to (24), adjacent to the 8 × 8 pixel block unit intra prediction with the predetermined filter coefficient only. Filter processing of pixel values of pixels is performed. On the other hand, in the
[イントラ予測部および隣接画素内挿フィルタ切替部の構成例]
図14は、図1のイントラ予測部74および隣接画素内挿フィルタ切替部75の詳細な構成例を示すブロック図である。
[Configuration Example of Intra Prediction Unit and Adjacent Pixel Interpolation Filter Switching Unit]
FIG. 14 is a block diagram illustrating a detailed configuration example of the
図14の例の場合、イントラ予測部74は、隣接画像設定部81、予測画像生成部82、および最適予測モード判定部83により構成されている。
In the example of FIG. 14, the
隣接画素内挿フィルタ切替部75は、予測モードバッファ91、量子化パラメータバッファ92、およびローパスフィルタ設定部93により構成されている。なお、ローパスフィルタ設定部93には、フィルタ係数メモリ94が内蔵されている。
The adjacent pixel interpolation
隣接画像設定部81には、フレームメモリ72からのイントラ予測の対象ブロックの隣接画素値が供給される。図14の場合、スイッチ73の図示は省略されているが、実際には、隣接画素値は、フレームメモリ72から、スイッチ73を介して隣接画像設定部81に供給される。なお、イントラ予測の場合、隣接画素値として、デブロックフィルタ71によりデブロックフィルタリングされていない画素値が用いられる。
The adjacent
隣接画素設定部81は、ローパスフィルタ設定部93により設定されたフィルタ係数を用いて、フレームメモリ72からの対象ブロックの隣接画素値に対して、フィルタ処理を施し、フィルタ処理された隣接画素値を、予測画像生成部82に供給する。
The adjacent
予測画像生成部82は、現在処理されているイントラ予測モードがどのモードであるのかという情報を、予測モードバッファ91に供給する。予測画像生成部82は、隣接画素設定部81からのフィルタ処理された隣接画素値を用いて、予測モードバッファ91に供給したイントラ予測モードでの対象ブロックのイントラ予測を行い、予測画像を生成する。生成された予測画像は、イントラ予測モード情報とともに、最適予測モード判定部83に供給される。
The prediction image generation unit 82 supplies information indicating which mode is the currently processed intra prediction mode to the prediction mode buffer 91. The prediction image generation unit 82 performs intra prediction of the target block in the intra prediction mode supplied to the prediction mode buffer 91 using the filtered adjacent pixel value from the adjacent
最適予測モード判定部83には、画面並べ替えバッファ62から読み出されたイントラ予測する画像と、予測画像生成部82により生成された予測画像と、そのイントラ予測モード情報が供給される。
The optimal prediction
最適予測モード判定部83は、供給された情報を用いて、予測画像を生成したイントラ予測モードに対してコスト関数値を算出し、算出したコスト関数値が最小値を与えるイントラ予測モードを、最適イントラ予測モードとして決定する。最適予測モード判定部83は、最適イントラ予測モードの予測画像と、対応するコスト関数値を予測画像選択部77に出力する。
The optimal prediction
また、最適予測モード判定部83は、予測画像選択部77により最適イントラ予測モードで生成された予測画像が選択された場合、最適イントラ予測モードを示す情報を、可逆符号化部66に供給する。
In addition, when the predicted image generated in the optimal intra prediction mode is selected by the predicted
予測モードバッファ91は、予測画像生成部82からのイントラ予測モード情報を格納する。量子化パラメータバッファ92は、レート制御部78からの量子化パラメータを格納する。
The prediction mode buffer 91 stores the intra prediction mode information from the predicted image generation unit 82. The quantization parameter buffer 92 stores the quantization parameter from the
ローパスフィルタ設定部93は、予測モードバッファ91から対象ブロックのイントラ予測モード情報を読み出し、量子化パラメータバッファ92から対象ブロックに対する量子化パラメータを読み出す。ローパスフィルタ設定部93は、内蔵するフィルタ係数メモリ94に記憶されているフィルタ係数の中から、これらの情報に対応するフィルタ係数を設定し、設定したフィルタ係数を、隣接画素設定部81に供給する。
The low pass
フィルタ係数メモリ94は、後述する図28の学習装置251において、トレーニング画像が用いられて学習されることにより得られた、量子化パラメータおよびイントラ予測モードに対応したフィルタ係数を記憶している。このフィルタ係数は、例えば、スライス毎に、次に説明するように算出されて記憶されたものである。
The
[最適フィルタ係数の算出の説明]
次に、図15を参照して、この隣接画素のフィルタ処理に用いられる、最適なフィルタ係数の算出方法について説明する。なお、図15の例においては、4×4画素の対象ブロックについて、垂直予測(vertical Prediction)を行う例が示されているが、以下の説明は、どのイントラ予測モードにも適用可能な場合を説明する。
[Explanation of calculation of optimum filter coefficient]
Next, an optimal filter coefficient calculation method used for the filter processing of the adjacent pixels will be described with reference to FIG. In the example of FIG. 15, an example in which vertical prediction (vertical prediction) is performed on a target block of 4 × 4 pixels is shown, but the following description is applicable to any intra prediction mode. explain.
式(14)乃至式(24)で上述した8×8画素のブロック単位のイントラ予測においては、隣接画素に対するローパスフィルタとして、{1,2,1}なる3タップのフィルタ係数が定義されているが、3タップの一般形として、{c0,c1,c2}を考えることとする。さらに、本発明においては、オフセット値として、第4のパラメータc3も導入される。 In the 8 × 8 pixel block prediction intra prediction described above in Equations (14) to (24), a 3-tap filter coefficient of {1, 2, 1} is defined as a low-pass filter for adjacent pixels. Let {c 0 , c 1 , c 2 } be considered as a general form of 3 taps. Furthermore, in the present invention, the fourth parameter c 3 is also introduced as an offset value.
なお、以下の説明においては、この3タップのフィルタが、スライス毎に設定可能であるとするが、これに限定されず、例えば、シーケンス全体や、GOP毎に設定可能であってもよい。 In the following description, the 3-tap filter can be set for each slice. However, the present invention is not limited to this, and may be set for the entire sequence or for each GOP, for example.
図15の例において、akm(0≦k,m≦3)は、対象ブロックに含まれる画素の画素値、bm(-1≦m≦4)は、垂直予測に用いられる隣接画素の画素値である。 In the example of FIG. 15, a km (0 ≦ k, m ≦ 3) is a pixel value of a pixel included in the target block, and bm (−1 ≦ m ≦ 4) is a pixel value of an adjacent pixel used for vertical prediction. It is.
まず、隣接画素値bmに、3タップのフィルタ処理が施されることにより、次の式(65)に示されるb’m(0≦m≦3)が生成される。
すなわち、フィルタ処理がなされ、フィルタ係数が用いられる場合、以下、特に言及しなくても、式(65)に示されるように、対応するオフセット値も用いられるものとする。換言するに、フィルタ係数とオフセット値は、フィルタ処理に用いられる係数である。同様に、フィルタ係数が符号化されて復号側に送られる場合、対応するオフセット値も符号化されて送られるものとする。
First, by performing a 3-tap filter process on the adjacent pixel value b m , b′m (0 ≦ m ≦ 3) shown in the following equation (65) is generated.
That is, when the filter processing is performed and the filter coefficient is used, the corresponding offset value is also used as shown in Expression (65), even if not specifically mentioned below. In other words, the filter coefficient and the offset value are coefficients used for the filtering process. Similarly, when the filter coefficient is encoded and sent to the decoding side, the corresponding offset value is also encoded and sent.
いま、イントラ予測モードがnであるときの予測画素値をpij(b’m,n);0≦i,j≦3であるとすると、イントラ予測画素値は、図2乃至図14を参照して上述したように、予測画素は線形な式により生成されるため、次の式(66)が成り立つ。
このとき、aijを原画像画素値として、対象ブロックΩに対する予測2乗誤差は、次の式(67)で表される。
ここで、対象スライス内で、イントラ予測モードnとして符号化されるイントラブロックの集合を、Φで表すとして、Φに属するブロックに関する予測2乗誤差の総和は、次の式(68)で表される。
上述した式(68)において、Err(Ω∈Φ)を、c0,c1,c2,c3の関数、すなわち、Err(Ω∈Φ;c0,c1,c2,c3)とみなし、Err(Ω∈Φ;c0,c1,c2,c3)を最小とするようなc0,c1,c2,c3が対象スライスにおける最適なフィルタ係数の値ということになる。すなわち、次の式(69)が成り立つc0,c1,c2,c3を求めればよい。
つまり、式(69)により、次の式(70)に示される連立方程式が得られることになる。
行列を用いて、この式(70)を書きなおすと、式(71)となる。
この式(71)を解くことで、対象スライスに対する最適フィルタ係数およびオフセット値{c0,c1,c2,c3}を求めることができる。 By solving the equation (71), it is possible to obtain the optimum filter coefficient and the offset value {c 0 , c 1 , c 2 , c 3 } for the target slice.
なお、最適フィルタ係数およびオフセット値{c0,c1,c2,c3}は、式(70)の連立方程式を解くことにより、浮動小数点の値として求められることになるが、図1の画像符号化装置51と、対応する図22の画像復号装置151に適用する場合には、例えば、8ビットの係数に丸められる。
The optimum filter coefficient and the offset value {c 0 , c 1 , c 2 , c 3 } are obtained as floating point values by solving the simultaneous equations of Equation (70). When the present invention is applied to the
すなわち、フィルタ係数は浮動小数点であっても、例えば、フィルタ係数メモリ94においては、プロセッサのレジスタ長に応じて、nビット(nは整数)の値として保持される。
That is, even if the filter coefficient is a floating point, for example, in the
上述した方法と同様の方法を、他のイントラ予測モードにも適用することにより、他のイントラ予測モードにおいても、最適フィルタ係数を求めることができる。また、イントラ4×4予測モードのみならず、イントラ8×8予測モード、イントラ16×16予測モード、色差信号に対するイントラ予測モードに対しても、同様の方法により、最適フィルタ係数を求めることができる。
By applying the same method as described above to other intra prediction modes, the optimum filter coefficient can be obtained also in other intra prediction modes. Further, not only the
上記説明においては、それぞれのイントラ予測モードに対して1つのフィルタ係数を求めるとしたが、これに限らず、すべてのイントラ予測モードに対して1つだけフィルタ係数を求めるようにしてもよい。特に、図2乃至図14を参照して上述したイントラ予測モードは、Vertical(垂直)及びHorizontal(水平)モードに関しては、予測画素値をそのまま使うのに対し、その他のモードに関しては、予測画素の生成に、何らかの平均処理若しくは加重平均処理が行なわれるため、特性が異なる。このため、VerticalおよびHorizontalモードと、それ以外のモードという2つのクラス分類を行い、それぞれのクラスに対してフィルタ係数を算出することで、更なる符号化効率の向上が実現できる。また、例えば、輝度信号については、イントラ4×4予測モードに対して1つ、イントラ8×8予測モードに対して1つ、イントラ16×16予測モードに対して1つとしてもよい。色差信号に関しては、例えば、Cb/Crそれぞれに対して別途フィルタ係数を求めてもよい。
In the above description, one filter coefficient is obtained for each intra prediction mode. However, the present invention is not limited to this, and only one filter coefficient may be obtained for all intra prediction modes. In particular, the intra prediction modes described above with reference to FIGS. 2 to 14 use the predicted pixel values as they are for the Vertical and Horizontal modes, while the prediction pixel values for the other modes are the same. Since some average processing or weighted average processing is performed for generation, the characteristics are different. For this reason, the encoding efficiency can be further improved by performing two class classifications of the Vertical and Horizontal modes and the other modes and calculating the filter coefficient for each class. Further, for example, one luminance signal may be used for the
また、上記説明においては、ローパスフィルタ処理のためのフィルタ係数として、{c0,c1,c2}の3タップとしたが、3タップに限らず、何タップのフィルタを使用してもよい。すなわち、タップ数のフィルタ係数+オフセット値が求められる。ただし、タップ数の増加とともに、解くべき連立方程式の次数が増大する。 In the above description, the filter coefficients for the low-pass filter processing are three taps {c 0 , c 1 , c 2 }, but the number of filters is not limited to three taps, and any number of taps may be used. . That is, the filter coefficient of the number of taps + the offset value is obtained. However, as the number of taps increases, the order of simultaneous equations to be solved increases.
さらに、CIF(Common Intermediate Format)/QCIF(Quarter CIF),SD(Standard Definition),HD(High Definition)などといったように、画枠に応じて異なるフィルタ係数を用意しておき、それを適用することもできる。 Furthermore, prepare different filter coefficients according to the image frame, such as CIF (Common Intermediate Format) / QCIF (Quarter CIF), SD (Standard Definition), HD (High Definition), etc., and apply them. You can also.
また、上述した方法においては、イントラ予測残差(予測2乗誤差)を最小にすることにより、フィルタ係数の算出を行っている。ただし、フィルタ係数の算出方法は、これに限定されず、例えば、フィルタ係数を復号側に送る必要がある場合には、そのフィルタ係数を送るためのビットを含めた最適化を行ってもよい。 In the above-described method, the filter coefficient is calculated by minimizing the intra prediction residual (prediction square error). However, the calculation method of the filter coefficient is not limited to this. For example, when it is necessary to send the filter coefficient to the decoding side, optimization including a bit for sending the filter coefficient may be performed.
さらに、上述したフィルタ係数において、次の式(72)に示されるように、係数の対称性を仮定する。
C0 = C2
・・・(72)
Further, in the above-described filter coefficient, the symmetry of the coefficient is assumed as shown in the following equation (72).
C0 = C2
... (72)
すなわち、{c0,c1,c0}のように、フィルタ係数が、0位相に対する係数を中心にして、対称性を有するように算出される。これにより、上述した式(70)に示される3つの連立方程式を、2つに減らすことが可能である。この結果、演算量を減らすことができる。 That is, as in {c 0 , c 1 , c 0 }, the filter coefficient is calculated so as to have symmetry with the coefficient for the 0 phase as the center. Thereby, it is possible to reduce the three simultaneous equations shown in the above-mentioned formula (70) to two. As a result, the amount of calculation can be reduced.
以上の方法を用いて、入力画像に適切なフィルタ係数を設定し、適応的に隣接画素に対するローパスフィルタ処理を行うことにより、画像や量子化パラメータ、予測モードに適した予測画像を用いて符号化することが可能となる。これにより、符号化効率を向上させることができる。 Using the above method, by setting an appropriate filter coefficient to the input image and adaptively performing low-pass filter processing on adjacent pixels, encoding using the predicted image suitable for the image, quantization parameter, and prediction mode It becomes possible to do. Thereby, encoding efficiency can be improved.
上述した最適フィルタ係数の算出としては、以下の2通りの方法が考えられる。第1の方法は、符号化処理を行うに先立ち、トレーニングのための画像信号を用いて、予め、その画像信号全体を最適化するフィルタ係数を算出しておくオフライン処理である。このオフライン処理である学習処理については、図28を参照して後述され、その学習処理により算出されたフィルタ係数とオフセット値が、図14のフィルタ係数メモリ94に記憶されている。
As the calculation of the optimum filter coefficient described above, the following two methods can be considered. The first method is an off-line process in which a filter coefficient for optimizing the entire image signal is calculated in advance using an image signal for training prior to performing the encoding process. The learning process as the offline process will be described later with reference to FIG. 28, and the filter coefficient and the offset value calculated by the learning process are stored in the
第2の方法は、各スライスに対し、逐次最適なフィルタ係数を算出するオンライン処理である。この場合、算出されたフィルタ係数とオフセット値は復号側に送られる。なお、第2の方法であるオンライン処理を行う場合の例については、図20を参照して後述される。 The second method is online processing for calculating the optimum filter coefficient sequentially for each slice. In this case, the calculated filter coefficient and offset value are sent to the decoding side. An example of performing the online process as the second method will be described later with reference to FIG.
[画像符号化装置の符号化処理の説明]
次に、図16のフローチャートを参照して、図1の画像符号化装置51の符号化処理について説明する。
[Description of Encoding Process of Image Encoding Device]
Next, the encoding process of the
ステップS11において、A/D変換部61は入力された画像をA/D変換する。ステップS12において、画面並べ替えバッファ62は、A/D変換部61より供給された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
In step S11, the A /
ステップS13において、演算部63は、ステップS12で並び替えられた画像と予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部76から、イントラ予測する場合はイントラ予測部74から、それぞれ予測画像選択部77を介して演算部63に供給される。
In step S13, the
差分データは元の画像データに較べてデータ量が小さくなっている。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。 The difference data has a smaller data amount than the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
ステップS14において、直交変換部64は演算部63から供給された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。ステップS15において、量子化部65は変換係数を量子化する。この量子化に際しては、後述するステップS25の処理で説明されるように、レートが制御される。
In step S <b> 14, the
以上のようにして量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS16において、逆量子化部68は量子化部65により量子化された変換係数を量子化部65の特性に対応する特性で逆量子化する。ステップS17において、逆直交変換部69は逆量子化部68により逆量子化された変換係数を直交変換部64の特性に対応する特性で逆直交変換する。
The difference information quantized as described above is locally decoded as follows. That is, in step S <b> 16, the
ステップS18において、演算部70は、予測画像選択部77を介して入力される予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像(演算部63への入力に対応する画像)を生成する。ステップS19においてデブロックフィルタ71は、演算部70より出力された画像をフィルタリングする。これによりブロック歪みが除去される。ステップS20においてフレームメモリ72は、フィルタリングされた画像を記憶する。なお、フレームメモリ72にはデブロックフィルタ71によりフィルタ処理されていない画像も演算部70から供給され、記憶される。
In step S18, the
ステップS21において、イントラ予測部74および動き予測・補償部76は、それぞれ画像の予測処理を行う。すなわち、ステップS21において、イントラ予測部74は、イントラ予測モードのイントラ予測処理を行う。動き予測・補償部76は、インター予測モードの動き予測・補償処理を行う。
In step S21, the
ステップS21における予測処理の詳細は、図17を参照して後述するが、この処理により、候補となる全ての予測モードでの予測処理がそれぞれ行われ、候補となる全ての予測モードでのコスト関数値がそれぞれ算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測モードが選択され、最適イントラ予測モードのイントラ予測により生成された予測画像とそのコスト関数値が予測画像選択部77に供給される。
The details of the prediction processing in step S21 will be described later with reference to FIG. 17, but by this processing, prediction processing is performed in all candidate prediction modes, and cost functions in all candidate prediction modes are performed. Each value is calculated. Then, based on the calculated cost function value, the optimal intra prediction mode is selected, and the predicted image generated by the intra prediction in the optimal intra prediction mode and its cost function value are supplied to the predicted
なお、このとき、イントラ予測部74においては、イントラ予測処理に先立ち、隣接画素内挿フィルタ切替部75により設定されたフィルタ係数を用いて、各対象ブロックのイントラ予測に用いられる隣接画素に対して、フィルタ処理が施される。そして、イントラ予測部74においては、フィルタ処理が施された隣接画素を用いて、イントラ予測が行われて、予測画像が生成される。
At this time, the
ステップS22において、予測画像選択部77は、イントラ予測部74および動き予測・補償部76より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測画像選択部77は、決定した最適予測モードの予測画像を選択し、演算部63,70に供給する。この予測画像が、上述したように、ステップS13,S18の演算に利用される。
In step S <b> 22, the predicted
なお、この予測画像の選択情報は、イントラ予測部74または動き予測・補償部76に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部74は、最適イントラ予測モードを示す情報(すなわち、イントラ予測モード情報)を、可逆符号化部66に供給する。
The prediction image selection information is supplied to the
最適インター予測モードの予測画像が選択された場合、動き予測・補償部76は、最適インター予測モードを示す情報と、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部66に出力する。最適インター予測モードに応じた情報としては、動きベクトル情報やフラグ情報、参照フレーム情報などがあげられる。すなわち、最適インター予測モードとして、インター予測モードによる予測画像が選択されているときには、動き予測・補償部76は、インター予測モード情報、動きベクトル情報、参照フレーム情報を可逆符号化部66に出力する。
When the prediction image of the optimal inter prediction mode is selected, the motion prediction /
ステップS23において、可逆符号化部66は量子化部65より出力された量子化された変換係数を符号化する。すなわち、差分画像が可変長符号化、算術符号化等の可逆符号化され、圧縮される。このとき、上述したステップS22において可逆符号化部66に入力された、イントラ予測部74からの情報、または、動き予測・補償部76からの情報、および、レート制御部78からの量子化パラメータなども符号化され、ヘッダ情報に付加される。
In step S23, the
ステップS24において蓄積バッファ67は差分画像を圧縮画像として蓄積する。蓄積バッファ67に蓄積された圧縮画像が適宜読み出され、伝送路を介して復号側に伝送される。
In step S24, the
ステップS25においてレート制御部78は、蓄積バッファ67に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化パラメータにより、量子化部65の量子化動作のレートを制御する。
In step S <b> 25, the
量子化部65のレートの制御に用いられた量子化パラメータは、可逆符号化部66に供給され、上述したステップS23において、可逆符号化処理され、圧縮画像のヘッダ部に挿入される。また、この量子化パラメータは、隣接画素内挿フィルタ切替部75に供給され、上述したステップS21において、イントラ予測に先立って行われる、隣接画素に施すフィルタ処理に用いられるフィルタ係数の設定に用いられる。
The quantization parameter used to control the rate of the
[予測処理の説明]
次に、図17のフローチャートを参照して、図16のステップS21における予測処理を説明する。
[Explanation of prediction processing]
Next, the prediction process in step S21 in FIG. 16 will be described with reference to the flowchart in FIG.
画面並べ替えバッファ62から供給される処理対象の画像がイントラ処理されるブロックの画像である場合、参照される復号済みの画像がフレームメモリ72から読み出され、スイッチ73を介してイントラ予測部74に供給される。
When the processing target image supplied from the
ステップS31において、イントラ予測部74は、供給された画像を用いて、処理対象のブロックの画素を、候補となる全てのイントラ予測モードでイントラ予測する。なお、参照される復号済みの画素としては、デブロックフィルタ71によりデブロックフィルタリングされていない画素が用いられる。
In step S31, the
ステップS31におけるイントラ予測処理の詳細は、図18を参照して後述するが、この処理により、最適なフィルタ係数が設定され、設定されたフィルタ係数が用いられて、隣接画素に対してフィルタ処理が行われる。そして、フィルタ処理が行われた隣接画素が用いられて、イントラ予測が行われて、予測画像が生成される。 Details of the intra prediction process in step S31 will be described later with reference to FIG. 18. With this process, an optimum filter coefficient is set, and the set filter coefficient is used to perform a filter process on adjacent pixels. Done. Then, intra prediction is performed using the adjacent pixels on which the filter process has been performed, and a predicted image is generated.
以上の処理が、候補となる全てのイントラ予測モードに対して行われ、候補となる全てのイントラ予測モードに対してコスト関数値が算出され、算出されたコスト関数値に基づいて、最適イントラ予測モードが決定される。生成された予測画像と最適イントラ予測モードのコスト関数値は、予測画像選択部77に供給される。
The above processing is performed for all candidate intra prediction modes, cost function values are calculated for all candidate intra prediction modes, and optimal intra prediction is performed based on the calculated cost function values. The mode is determined. The generated predicted image and the cost function value of the optimal intra prediction mode are supplied to the predicted
画面並べ替えバッファ62から供給される処理対象の画像がインター処理される画像である場合、参照される画像がフレームメモリ72から読み出され、スイッチ73を介して動き予測・補償部76に供給される。これらの画像に基づいて、ステップS32において、動き予測・補償部76はインター動き予測処理を行う。すなわち、動き予測・補償部76は、フレームメモリ72から供給される画像を参照して、候補となる全てのインター予測モードの動き予測処理を行う。
When the processing target image supplied from the
ステップS32におけるインター動き予測処理の詳細は、図19を参照して後述するが、この処理により、候補となる全てのインター予測モードで動き予測処理が行われ、候補となる全てのインター予測モードに対してコスト関数値が算出される。 Details of the inter motion prediction process in step S32 will be described later with reference to FIG. 19, but by this process, the motion prediction process is performed in all candidate inter prediction modes, and all candidate inter prediction modes are set. On the other hand, a cost function value is calculated.
ステップS33において、動き予測・補償部76は、ステップS32において算出されたインター予測モードに対してのコスト関数値を比較し、最小値を与える予測モードを、最適インター予測モードとして決定する。そして、動き予測・補償部76は、最適インター予測モードで生成された予測画像とそのコスト関数値を、予測画像選択部77に供給する。
In step S33, the motion prediction /
[イントラ予測処理の説明]
次に、図18のフローチャートを参照して、図17のステップS31におけるイントラ予測処理を説明する。なお、図18の例においては、輝度信号の場合を例として説明する。
[Description of intra prediction processing]
Next, the intra prediction process in step S31 in FIG. 17 will be described with reference to the flowchart in FIG. In the example of FIG. 18, a case of a luminance signal will be described as an example.
レート制御部78は、上述した図16のステップS25において、対象ブロックに対する量子化パラメータを供給してくる。量子化パラメータバッファ92は、ステップS41において、レート制御部78からの対象ブロックに対する量子化パラメータを取得し、格納する。
The
予測画像生成部82は、ステップS42において、4×4画素、8×8画素、および16×16画素の各イントラ予測モードのうち、1つのイントラ予測モードを選択する。選択したイントラ予測モードの情報は、予測モードバッファ91に格納される。 In step S42, the predicted image generation unit 82 selects one intra prediction mode from the 4 × 4 pixel, 8 × 8 pixel, and 16 × 16 pixel intra prediction modes. Information on the selected intra prediction mode is stored in the prediction mode buffer 91.
ローパスフィルタ設定部93は、予測モードバッファ91からイントラ予測モードの情報を読み出し、量子化パラメータバッファ92から量子化パラメータ値を読み出す。そして、ローパスフィルタ設定部93は、ステップS43において、フィルタ係数メモリ94に記憶されている、スライス毎に算出されたフィルタ係数の中から、イントラ予測モードおよび量子化パラメータに対応するフィルタ係数を設定する。設定されたフィルタ係数は、隣接画素設定部81に供給される。
The low-pass
ステップS44において、隣接画素設定部81は、設定されたフィルタ係数を用いて、対象ブロックの隣接画素値に対してフィルタ処理を行い、フィルタ処理された隣接画素値を、予測画像生成部82に供給する。
In step S44, the adjacent
ステップS43において、予測画像生成部82は、フィルタ処理された隣接画素値を用いて、ステップS42で選択されたイントラ予測モードで、対象ブロックのイントラ予測を行い、予測画像を生成する。 In step S43, the prediction image generation unit 82 performs intra prediction of the target block in the intra prediction mode selected in step S42, using the filtered adjacent pixel values, and generates a prediction image.
最適予測モード判定部83には、画面並べ替えバッファ62から読み出されたイントラ予測する画像と、予測画像生成部82により生成された予測画像と、そのイントラ予測モード情報が供給される。
The optimal prediction
最適予測モード判定部83は、ステップS46において、供給された情報を用いて、予測画像を生成したイントラ予測モードに対してコスト関数値を算出する。ここで、コスト関数値としては、High Complexity モードか、Low Complexity モードのいずれかの手法に基づいて行う。これらのモードは、H.264/AVC方式における参照ソフトウエアであるJM(Joint Model)で定められている。
In step S46, the optimal prediction
すなわち、High Complexity モードにおいては、ステップS45の処理として、候補となる全ての予測モードに対して、仮に符号化処理までが行われる。そして、次の式(73)で表わされるコスト関数値が各予測モードに対して算出され、その最小値を与える予測モードが最適予測モードであるとして選択される。 In other words, in the High Complexity mode, the process up to step S45 is temporarily performed up to the encoding process for all candidate prediction modes. Then, the cost function value represented by the following equation (73) is calculated for each prediction mode, and the prediction mode that gives the minimum value is selected as the optimal prediction mode.
Cost(Mode) = D + λ・R ・・・(73)
Dは、原画像と復号画像の差分(歪)、Rは、直交変換係数まで含んだ発生符号量、λは、量子化パラメータQPの関数として与えられるラグランジュ乗数である。
Cost (Mode) = D + λ · R (73)
D is a difference (distortion) between the original image and the decoded image, R is a generated code amount including up to the orthogonal transform coefficient, and λ is a Lagrange multiplier given as a function of the quantization parameter QP.
一方、Low Complexity モードにおいては、ステップS45の処理として、候補となる全ての予測モードに対して、予測画像の生成、および、動きベクトル情報や予測モード情報、フラグ情報などのヘッダビットまでが算出される。そして、次の式(74)で表わされるコスト関数値が各予測モードに対して算出され、その最小値を与える予測モードが最適予測モードであるとして選択される。 On the other hand, in the Low Complexity mode, as a process in Step S45, for all prediction modes that are candidates, prediction image generation and header bits such as motion vector information, prediction mode information, and flag information are calculated. The Then, the cost function value represented by the following equation (74) is calculated for each prediction mode, and the prediction mode that gives the minimum value is selected as the optimal prediction mode.
Cost(Mode) = D + QPtoQuant(QP)・Header_Bit ・・・(74)
Dは、原画像と復号画像の差分(歪)、Header_Bitは、予測モードに対するヘッダビット、QPtoQuantは、量子化パラメータQPの関数として与えられる関数である。
Cost (Mode) = D + QPtoQuant (QP) · Header_Bit (74)
D is a difference (distortion) between the original image and the decoded image, Header_Bit is a header bit for the prediction mode, and QPtoQuant is a function given as a function of the quantization parameter QP.
Low Complexity モードにおいては、全ての予測モードに対して、予測画像を生成するのみで、符号化処理および復号処理を行う必要がないため、演算量が少なくて済む。 In the Low Complexity mode, only a prediction image is generated for all prediction modes, and it is not necessary to perform encoding processing and decoding processing.
最適予測モード判定部83は、ステップS47において、全てのイントラ予測モードについての処理が終了したか否かを判定する。すなわち、ステップS47においては、4×4画素、8×8画素、および16×16画素の各イントラ予測モードすべてについて、ステップS42乃至S46の処理が行われたか否かが判定される。
In step S47, the optimal prediction
ステップS47において、全てのイントラ予測モードについての処理が終了していないと判定された場合、処理は、ステップS42に戻り、それ以降の処理が繰り返される。 If it is determined in step S47 that the processing for all intra prediction modes has not been completed, the processing returns to step S42, and the subsequent processing is repeated.
ステップS47において、全てのイントラ予測モードについての処理が終了されたと判定された場合、処理は、ステップS48に進む。最適予測モード判定部83は、ステップS48において、算出されたコスト関数値が最小値となるイントラ予測モードを、最適イントラ予測モードとして決定する。
If it is determined in step S47 that the processes for all intra prediction modes have been completed, the process proceeds to step S48. In step S48, the optimal prediction
最適イントラ予測モードの予測画像と、対応するコスト関数値は、予測画像選択部77に供給される。
The predicted image in the optimal intra prediction mode and the corresponding cost function value are supplied to the predicted
そして、予測画像選択部77により最適イントラ予測モードで生成された予測画像が選択された場合、最適予測モード判定部83により、最適イントラ予測モードを示す情報は、可逆符号化部66に供給される。そして、可逆符号化部66において、符号化され、圧縮画像のヘッダ情報に付加される(上述した図16のステップS23)。
When the predicted image generated in the optimal intra prediction mode is selected by the predicted
なお、フィルタ係数メモリ94に記憶されている、学習処理により算出されたフィルタ係数は、後述する図22の画像復号装置151にも同様に記憶させることにより、設定されたフィルタ係数を、圧縮画像のヘッダ情報に付加し、それを送ることは不要となる。
The filter coefficient calculated by the learning process stored in the
したがって、H.264/AVCの場合、量子化パラメータは、51通りあり、イントラ予測モードは、4×4または8×8については9通りあり、これらの組み合わせを考えると、51×9=459通りという膨大なフィルタ係数が必要となる。このように膨大なフィルタ係数に関する情報を復号側に送る必要がないので、係数情報のオーバヘッドを増大させることなく、処理を実現することができる。 Therefore, H. In the case of H.264 / AVC, there are 51 quantization parameters and 9 intra prediction modes for 4 × 4 or 8 × 8, and considering these combinations, a huge filter of 51 × 9 = 459 A coefficient is required. In this way, since it is not necessary to send information on a huge amount of filter coefficients to the decoding side, processing can be realized without increasing the overhead of coefficient information.
[インター動き予測処理の説明]
次に、図19のフローチャートを参照して、図17のステップS32のインター動き予測処理について説明する。
[Explanation of inter motion prediction processing]
Next, the inter motion prediction process in step S32 in FIG. 17 will be described with reference to the flowchart in FIG.
動き予測・補償部76は、ステップS61において、16×16画素乃至4×4画素からなる8種類の各インター予測モードに対して動きベクトルと参照画像をそれぞれ決定する。すなわち、各インター予測モードの処理対象のブロックについて、動きベクトルと参照画像がそれぞれ決定される。
In step S61, the motion prediction /
動き予測・補償部76は、ステップS62において、16×16画素乃至4×4画素からなる8種類の各インター予測モードについて、ステップS61で決定された動きベクトルに基づいて、参照画像に動き予測と補償処理を行う。この動き予測と補償処理により、各インター予測モードでの予測画像が生成される。
In step S62, the motion prediction /
動き予測・補償部76は、ステップS63において、16×16画素乃至4×4画素からなる8種類の各インター予測モードに対して決定された動きベクトルについて、圧縮画像に付加するための動きベクトル情報を生成する。
In step S63, the motion prediction /
生成された動きベクトル情報は、次のステップS64におけるコスト関数値算出の際にも用いられ、最終的に予測画像選択部77により対応する予測画像が選択された場合には、予測モード情報および参照フレーム情報とともに、可逆符号化部66へ出力される。
The generated motion vector information is also used when calculating the cost function value in the next step S64. When the corresponding predicted image is finally selected by the predicted
動き予測・補償部76は、ステップS64において、16×16画素乃至4×4画素からなる8種類の各インター予測モードに対して、上述した式(73)または式(74)で示されるコスト関数値を算出する。ここで算出されたコスト関数値は、上述した図17のステップS34で最適インター予測モードを決定する際に用いられる。
In step S64, the motion prediction /
次に、図20を参照して、最適フィルタ係数を算出する第2の方法としての、各スライスに対し、逐次最適なフィルタ係数を算出するオンライン処理を行う場合の例について説明する。 Next, with reference to FIG. 20, an example in which online processing for sequentially calculating optimum filter coefficients is performed on each slice as a second method of calculating optimum filter coefficients will be described.
なお、この場合、各スライスに対して、符号化側で算出されたフィルタ係数を、復号側に送る必要があり、あまりに多くの場合わけされたフィルタ係数を送ることは、符号化効率の低下を招く。したがって、フィルタ係数は、スライスに対して1つだけ伝送されるか、各ブロックサイズ毎の予測モードのそれぞれに1つだけ伝送されるか、あるいは、水平予測、垂直予測、…といった予測モードの種類に対して1つだけ伝送される。 In this case, for each slice, it is necessary to send the filter coefficient calculated on the encoding side to the decoding side, and sending filter coefficients that are divided in too many cases reduces the encoding efficiency. Invite. Therefore, only one filter coefficient is transmitted for each slice, only one is transmitted for each prediction mode for each block size, or the type of prediction mode such as horizontal prediction, vertical prediction,. Only one is transmitted.
また、上述したオフライン処理の場合には、フィルタ係数を算出するためのパラメータとして、イントラ予測モードと量子化パラメータを用いる例を説明した。これに対して、オンライン処理の場合、フィルタ係数を算出するためのパラメータが多いと処理量が増えてしまうため、図20の例においては、イントラ予測モードのみをパラメータとした例を説明する。説明は省略するが、もちろん、量子化パラメータのみを用いてもよいし、両方のパラメータを用いることもできる。 Moreover, in the case of the offline process mentioned above, the example which used intra prediction mode and a quantization parameter as a parameter for calculating a filter coefficient was demonstrated. On the other hand, in the case of online processing, the amount of processing increases when there are many parameters for calculating filter coefficients. Therefore, in the example of FIG. 20, an example in which only the intra prediction mode is used as a parameter will be described. Although description is omitted, of course, only the quantization parameter may be used, or both parameters may be used.
[イントラ予測部および隣接画素内挿フィルタ切替部の他の構成例]
図20は、各スライスに対し、逐次最適なフィルタ係数を算出するオンライン処理を行う場合のイントラ予測部74および隣接画素内挿フィルタ切替部75の他の構成例を示すブロック図である。
[Other Configuration Examples of Intra Prediction Unit and Adjacent Pixel Interpolation Filter Switching Unit]
FIG. 20 is a block diagram illustrating another configuration example of the
図20の例の場合、イントラ予測部74と隣接画素内挿フィルタ切替部75との間には、スイッチ101が設けられており、スイッチ101のオンオフにより、図14の場合と異なり、イントラ予測部74は、2回イントラ予測を行う。すなわち、イントラ予測部74においては、スイッチ101がオフの状態で、H.264/AVCで定義されているイントラ予測が行われ、そのイントラ予測に適するフィルタ係数が算出される。そして、算出されたフィルタ係数の中から、スイッチ101がオンの状態で、隣接画素内挿フィルタ切替部75により設定されたフィルタ係数でのイントラ予測が行われる。
In the example of FIG. 20, a
図20のイントラ予測部74は、隣接画像設定部111、予測画像生成部112、および最適予測モード判定部113により構成されている。
The
隣接画素内挿フィルタ切替部75は、予測モードバッファ121、最適フィルタ算出部122、およびローパスフィルタ設定部123により構成されている。
The adjacent pixel interpolation
隣接画像設定部111には、フレームメモリ72からのイントラ予測の対象スライスのすべての対象ブロックの隣接画素値が供給される。図20の場合も、スイッチ73の図示は省略されている。なお、イントラ予測の場合、隣接画素値として、デブロックフィルタ71によりデブロックフィルタリングされていない画素値が用いられる。
The adjacent
隣接画素設定部111は、スイッチ101がオフ状態の場合、H.264/AVCで定義されているイントラ予測モードのみ、フィルタ係数を用いて、フレームメモリ72からの対象ブロックの隣接画素値に対して、フィルタ処理を施し、予測画像生成部112に供給する。すなわち、式(14)乃至式(24)に上述した8×8画素予測モードの場合のみ、フィルタ処理が施された隣接画素値が、予測画像生成部112に供給される。それ以外の場合、フレームメモリ72からの対象ブロックの隣接画素値がそのまま、予測画像生成部112に供給される。
When the
隣接画素設定部111は、スイッチ101がオン状態の場合、ローパスフィルタ設定部123から、フィルタ係数が供給される。よって、隣接画素設定部111は、ローパスフィルタ設定部123により設定されたフィルタ係数を用いて、フレームメモリ72からの対象ブロックの隣接画素値に対して、フィルタ処理を施し、フィルタ処理された隣接画素値を、予測画像生成部112に供給する。
The adjacent
予測画像生成部112は、隣接画素設定部111からの隣接画素値を用いて、すべてのイントラ予測モードでの対象ブロックのイントラ予測を行い、予測画像を生成する。生成された予測画像は、イントラ予測モード情報とともに、最適予測モード判定部113に供給される。
The predicted
最適予測モード判定部113には、画面並べ替えバッファ62から読み出されたイントラ予測する画像と、予測画像生成部112により生成された予測画像と、そのイントラ予測モード情報が供給される。
The optimal prediction
最適予測モード判定部113は、供給された情報を用いて、予測画像を生成したイントラ予測モードに対してコスト関数値を算出し、算出したコスト関数値が最小値を与えるイントラ予測モードを、最適イントラ予測モードとして決定する。
The optimal prediction
最適予測モード判定部113は、スイッチ101がオフ状態の場合、最適イントラ予測モードの情報を予測モードバッファ121に供給する。最適予測モード判定部113は、スイッチ101がオン状態の場合、最適イントラ予測モードの予測画像と、対応するコスト関数値を予測画像選択部77に供給する。
The optimal prediction
また、最適予測モード判定部113は、予測画像選択部77により最適イントラ予測モードで生成された予測画像が選択された場合、最適イントラ予測モードを示す情報を、可逆符号化部66に供給する。
Further, when the predicted image generated in the optimal intra prediction mode is selected by the predicted
予測モードバッファ121は、最適予測モード判定部113からのイントラ予測モード情報を格納する。
The
最適フィルタ算出部122には、画面並べ替えバッファ62から読み出されたイントラ予測する画像と、フレームメモリ72からの対象ブロックの隣接画素値が供給される。最適フィルタ算出部122は、予測モードバッファ121から対象スライスに含まれる各ブロックのイントラ予測モードを読み出す。そして、最適フィルタ算出部122は、これらの情報を用いて、図15を参照して上述したように、対象スライスの各イントラ予測モードに対する最適なフィルタ係数を算出し、算出したフィルタ係数を、ローパスフィルタ設定部123に供給する。
The optimal
ローパスフィルタ設定部123は、算出された対象スライスのフィルタ係数の中から、対象ブロックに対するフィルタ係数を設定し、スイッチ101の端子をオンにして、設定されたフィルタ係数を、隣接画素設定部111に供給する。また、ローパスフィルタ設定部123は、対象スライスのフィルタ係数を、可逆符号化部66に供給する。
The low pass
[イントラ予測処理の他の説明]
次に、図21のフローチャートを参照して、図20のイントラ予測部74および隣接画素内挿フィルタ切替部75が行うイントラ予測処理を説明する。なお、このイントラ予測処理は、図17のステップS31におけるイントラ予測処理の他の例である。
[Other explanation of intra prediction processing]
Next, an intra prediction process performed by the
まず、スイッチ101はオフ状態となっている。隣接画像設定部111には、フレームメモリ72からのイントラ予測の対象スライスのすべての対象ブロックの隣接画素値が供給される。隣接画素設定部111は、H.264/AVCで定義されている8×8画素のイントラ予測モードのみ、フィルタ係数を用いて、フレームメモリ72からの対象ブロックの隣接画素値に対して、フィルタ処理を施し、予測画像生成部112に供給する。すなわち、他のイントラ予測モードの場合、フレームメモリ72からの対象ブロックの隣接画素値が、そのまま、予測画像生成部112に供給される。
First, the
予測画像生成部112は、ステップS101において、対象スライスに含まれるすべてのブロックに対して、イントラ予測処理を行う。すなわち、予測画像生成部112は、隣接画素設定部111からの対象ブロックの隣接画素値を用いて、各イントラ予測モードで、イントラ予測を行い、予測画像を生成する。
In step S101, the predicted
最適予測モード判定部113には、画面並べ替えバッファ62から読み出されたイントラ予測する画像と、予測画像生成部112により生成された予測画像と、そのイントラ予測モード情報が供給される。
The optimal prediction
最適予測モード判定部113は、ステップS102において、供給された情報を用いて、予測画像を生成した全てのイントラ予測モードに対して、上述した式(73)または式(74)のコスト関数値を算出する。
In step S102, the optimum prediction
最適予測モード判定部113は、ステップS103において、式(73)または式(74)のコスト関数を最小値とするイントラ予測モードを、最適イントラ予測モードとして決定し、決定したイントラ予測モードの情報を、予測モードバッファ121に供給する。
In step S103, the optimal prediction
最適フィルタ算出部122には、画面並べ替えバッファ62から読み出されたイントラ予測する画像と、フレームメモリ72からの対象ブロックの隣接画素値が供給される。最適フィルタ算出部122は、予測モードバッファ121から対象スライスに含まれる各ブロックのイントラ予測モードを読み出す。
The optimal
そして、最適フィルタ算出部122は、ステップS104において、これらの情報を用いて、対象スライスの各イントラ予測モードに対して、対象スライス全体での残差を最小にするフィルタ係数を、最適なフィルタ係数として算出する。図15を参照して上述したように算出されたフィルタ係数は、ローパスフィルタ設定部123に供給される。
Then, in step S104, the optimum
ローパスフィルタ設定部123は、算出された対象スライスのフィルタ係数の中から、対象ブロックに対するフィルタ係数を設定し、スイッチ101の端子をオンにして、設定されたフィルタ係数を、隣接画素設定部111に供給する。
The low pass
隣接画素設定部111は、ステップS105において、ローパスフィルタ設定部123により設定されたフィルタ係数を用いて、フレームメモリ72からの対象ブロックの隣接画素値に対して、フィルタ処理を行う。
In step S <b> 105, the adjacent
フィルタ処理された隣接画素値は、予測画像生成部112に供給される。予測画像生成部112は、ステップS106において、フィルタ処理された隣接画素値を用いて、対象スライスに含まれる、全てのブロックに対して、再びイントラ予測を行い、予測画像を生成する。生成された予測画像は、イントラ予測モード情報とともに、最適予測モード判定部113に供給される。
The filtered adjacent pixel values are supplied to the predicted
最適予測モード判定部113は、スイッチ101がオン状態の場合、最適イントラ予測モードの予測画像と、対応するコスト関数値を予測画像選択部77に供給する。
When the
予測画像選択部77は、上述した図16のステップS22において、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定して、予測画像の選択情報を供給してくる。
In step S22 in FIG. 16 described above, the predicted
この予測画像の選択情報に対応して、最適予測モード判定部113は、ステップS107において、最適イントラ予測モードの予測画像が選択されたか否かを判定する。ステップS107において、最適イントラ予測モードの予測画像が選択されたと判定された場合、処理は、ステップS108に進む。
Corresponding to the prediction image selection information, the optimal prediction
ステップS108において、最適予測モード判定部113は、イントラ予測モードの情報を、可逆符号化部66に供給する。なお、対象スライスにおいて、まだ、フィルタ係数が供給されていない場合には、最適フィルタ算出部122からのフィルタ係数も可逆符号化部66に供給される。
In step S <b> 108, the optimal prediction
ステップS107において、最適イントラ予測モードの予測画像が選択されていないと判定された場合、イントラ予測処理は終了される。 If it is determined in step S107 that the prediction image in the optimal intra prediction mode has not been selected, the intra prediction process is terminated.
なお、上述したステップS104乃至S106の処理を繰り返すことにより、さらに最適化されたフィルタ係数を得ることも可能である。 It should be noted that further optimized filter coefficients can be obtained by repeating the above-described steps S104 to S106.
符号化された圧縮画像は、所定の伝送路を介して伝送され、画像復号装置により復号される。 The encoded compressed image is transmitted via a predetermined transmission path and decoded by the image decoding device.
[画像復号装置の構成例]
図22は、本発明を適用した画像処理装置としての画像復号装置の一実施の形態の構成を表している。
[Configuration Example of Image Decoding Device]
FIG. 22 shows a configuration of an embodiment of an image decoding apparatus as an image processing apparatus to which the present invention is applied.
画像復号装置151は、蓄積バッファ161、可逆復号部162、逆量子化部163、逆直交変換部164、演算部165、デブロックフィルタ166、画面並べ替えバッファ167、D/A変換部168、フレームメモリ169、スイッチ170、イントラ予測部171、隣接画素内挿フィルタ切替部172、動き予測・補償部173、およびスイッチ174により構成されている。
The
蓄積バッファ161は伝送されてきた圧縮画像を蓄積する。可逆復号部162は、蓄積バッファ161より供給された、図1の可逆符号化部66により符号化された情報を、可逆符号化部66の符号化方式に対応する方式で復号する。逆量子化部163は可逆復号部162により復号された画像を、図1の量子化部65の量子化方式に対応する方式で逆量子化する。逆直交変換部164は、図1の直交変換部64の直交変換方式に対応する方式で逆量子化部163の出力を逆直交変換する。
The
逆直交変換された出力は演算部165によりスイッチ174から供給される予測画像と加算されて復号される。デブロックフィルタ166は、復号された画像のブロック歪を除去した後、フレームメモリ169に供給し、蓄積させるとともに、画面並べ替えバッファ167に出力する。
The inverse orthogonal transformed output is added to the predicted image supplied from the
画面並べ替えバッファ167は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ62により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部168は、画面並べ替えバッファ167から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
The
スイッチ170は、インター処理される画像と参照される画像をフレームメモリ169から読み出し、動き予測・補償部173に出力するとともに、イントラ予測に用いられる画像をフレームメモリ169から読み出し、イントラ予測部171に供給する。
The
イントラ予測部171には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報が、可逆復号部162から供給される。イントラ予測部171は、これらの情報に基づき、隣接画素内挿フィルタ切替部172により設定されたフィルタ係数を用いて、隣接画素値に対してフィルタ処理およびイントラ予測を行うことで、予測画像を生成し、生成した予測画像を、スイッチ174に出力する。
Information indicating the intra prediction mode obtained by decoding the header information is supplied from the
隣接画素内挿フィルタ切替部172には、画像符号化装置51での符号化に応じて、ヘッダ情報を復号して得られたイントラ予測モードを示す情報と量子化パラメータの情報の少なくとも1つが、可逆復号部162から供給される。隣接画素内挿フィルタ切替部172は、図1の隣接画素内挿フィルタ切替部75と同じ、後述する図28の学習装置251において学習されることにより得られた、量子化パラメータおよびイントラ予測モードの少なくとも1つに対応したフィルタ係数を記憶している。
In the adjacent pixel interpolation
隣接画素内挿フィルタ切替部172は、可逆復号部162からの量子化パラメータおよびイントラ予測モードの少なくとも1つに対応するフィルタ係数を設定する。隣接画素内挿フィルタ切替部172は、設定したフィルタ係数を、イントラ予測部74に供給する。
The adjacent pixel interpolation
なお、隣接画素内挿フィルタ切替部172においては、予めオフラインで学習されたフィルタ係数が記憶されている。ただし、図1の隣接画素内挿フィルタ切替部75において、オンラインでフィルタ係数が算出された場合には、そのフィルタ係数が例えば、スライス毎に送信されてくる。この場合、隣接画素内挿フィルタ切替部172においては、可逆復号部162により復号されるフィルタ係数が用いられる。
In the adjacent pixel interpolation
動き予測・補償部173には、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報)が可逆復号部162から供給される。インター予測モードを示す情報が供給された場合、動き予測・補償部173は、動きベクトル情報と参照フレーム情報に基づいて画像に動き予測と補償処理を施し、予測画像を生成する。動き予測・補償部173は、インター予測モードにより生成された予測画像をスイッチ174に出力する。
Information (prediction mode information, motion vector information, reference frame information) obtained by decoding the header information is supplied from the
スイッチ174は、動き予測・補償部173またはイントラ予測部171により生成された予測画像を選択し、演算部165に供給する。
The
なお、図1の画像符号化装置51においては、コスト関数に基づく予測モード判定のため、すべてのイントラ予測モードに対してイントラ予測処理が行われる。これに対して、この画像復号装置151においては、符号化されて送られてくるイントラ予測モードの情報に基づいてのみイントラ予測処理が行われる。
In the
[イントラ予測部および隣接画素内挿フィルタ切替部の構成例]
図23は、イントラ予測部および隣接画素内挿フィルタ切替部の詳細な構成例を示すブロック図である。なお、図23の機能ブロックは、図14に示された画像符号化装置51のオフライン処理の場合の機能ブロックに対応するものである。
[Configuration Example of Intra Prediction Unit and Adjacent Pixel Interpolation Filter Switching Unit]
FIG. 23 is a block diagram illustrating a detailed configuration example of the intra prediction unit and the adjacent pixel interpolation filter switching unit. The functional blocks in FIG. 23 correspond to the functional blocks in the case of offline processing of the
図23の例の場合、イントラ予測部171は、予測画像生成部181、および隣接画素設定部182により構成されている。隣接画素内挿フィルタ切替部172は、予測モードバッファ191、量子化パラメータバッファ192、およびローパスフィルタ設定部193により構成されている。なお、ローパスフィルタ設定部193には、フィルタ係数メモリ194が内蔵されている。
In the case of the example in FIG. 23, the
予測画像生成部181には、可逆復号部162からのイントラ予測モード情報、隣接画素設定部182からフィルタ処理された隣接画素値が供給される。予測画像生成部181は、供給された隣接画素値を用いて、可逆復号部162からのイントラ予測モードでのイントラ予測を行い、予測画像を生成し、生成した予測画像を、スイッチ174に供給する。
The prediction
隣接画素設定部182には、フレームメモリ169からのイントラ予測の対象ブロックの隣接画素値が供給される。図23の場合、スイッチ170の図示は省略されているが、実際には、隣接画素値は、フレームメモリ169から、スイッチ170を介して隣接画像設定部182に供給される。
The adjacent
隣接画素設定部182は、ローパスフィルタ設定部193により設定されたフィルタ係数を用いて、フレームメモリ169からの対象ブロックの隣接画素値に対して、フィルタ処理を施し、フィルタ処理された隣接画素値を、予測画像生成部181に供給する。
The adjacent
予測モードバッファ191は、可逆復号部162からのイントラ予測モード情報を格納する。量子化パラメータバッファ192は、可逆復号部162からの量子化パラメータを格納する。
The
ローパスフィルタ設定部193は、予測モードバッファ191から対象ブロックのイントラ予測モード情報を読み出し、量子化パラメータバッファ192から対象ブロックに対する量子化パラメータを読み出す。ローパスフィルタ設定部193は、内蔵するフィルタ係数メモリ194に記憶されているフィルタ係数の中から、これらの情報に対応するフィルタ係数を設定し、設定したフィルタ係数を、隣接画素設定部182に供給する。
The low-pass
フィルタ係数メモリ194は、図14のフィルタ係数メモリ94と同様に、後述する図28の学習装置251において学習されることにより得られた、量子化パラメータおよびイントラ予測モードに対応したフィルタ係数を記憶している。
Similarly to the
このフィルタ係数は、例えば、スライス毎に、図15を参照して上述したように算出されて記憶されたものである。なお、フィルタ係数メモリ194においても、フィルタ係数は、プロセッサのレジスタ長に応じて、nビット(nは整数)の値として保持される。
This filter coefficient is calculated and stored as described above with reference to FIG. 15 for each slice, for example. Also in the
[画像復号装置の復号処理の説明]
次に、図24のフローチャートを参照して、画像復号装置151が実行する復号処理について説明する。
[Description of Decoding Process of Image Decoding Device]
Next, the decoding process executed by the
ステップS131において、蓄積バッファ161は伝送されてきた画像を蓄積する。ステップS132において、可逆復号部162は、蓄積バッファ161から供給される圧縮画像を復号する。すなわち、図1の可逆符号化部66により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。
In step S131, the
このとき、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モードを示す情報)、量子化パラメータの情報、およびフラグ情報なども復号される。 At this time, motion vector information, reference frame information, prediction mode information (information indicating intra prediction mode or inter prediction mode), quantization parameter information, flag information, and the like are also decoded.
すなわち、予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部171および隣接画素内挿フィルタ切替部172に供給される。また、量子化パラメータの情報が復号された場合には、これも隣接画素内挿フィルタ切替部172に供給される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報および参照フレーム情報は、動き予測・補償部173に供給される。
That is, when the prediction mode information is intra prediction mode information, the prediction mode information is supplied to the
ステップS133において、逆量子化部163は可逆復号部162により復号された変換係数を、図1の量子化部65の特性に対応する特性で逆量子化する。ステップS134において逆直交変換部164は逆量子化部163により逆量子化された変換係数を、図1の直交変換部64の特性に対応する特性で逆直交変換する。これにより図1の直交変換部64の入力(演算部63の出力)に対応する差分情報が復号されたことになる。
In step S133, the
ステップS135において、演算部165は、後述するステップS141の処理で選択され、スイッチ174を介して入力される予測画像を差分情報と加算する。これにより元の画像が復号される。ステップS136においてデブロックフィルタ166は、演算部165より出力された画像をフィルタリングする。これによりブロック歪みが除去される。ステップS137においてフレームメモリ169は、フィルタリングされた画像を記憶する。
In step S135, the
ステップS138において、イントラ予測部171、および動き予測・補償部173は、可逆復号部162から供給される予測モード情報に対応して、それぞれ画像の予測処理を行う。
In step S138, the
すなわち、可逆復号部162からイントラ予測モード情報が供給された場合、イントラ予測部171は、イントラ予測モードのイントラ予測処理を行う。このとき、イントラ予測部171は、隣接画素内挿フィルタ切替部172により設定されたフィルタ係数を用いて、隣接画素に対してのフィルタ処理およびイントラ予測処理を行う。
That is, when intra prediction mode information is supplied from the
ステップS138における予測処理の詳細は、図25を参照して後述するが、この処理により、イントラ予測部171により生成された予測画像、または動き予測・補償部173により生成された予測画像がスイッチ174に供給される。
The details of the prediction process in step S138 will be described later with reference to FIG. 25. By this process, the prediction image generated by the
ステップS139において、スイッチ174は予測画像を選択する。すなわち、イントラ予測部171により生成された予測画像、または動き予測・補償部173により生成された予測画像供給される。したがって、供給された予測画像が選択されて演算部165に供給され、上述したように、ステップS134において逆直交変換部164の出力と加算される。
In step S139, the
ステップS140において、画面並べ替えバッファ167は並べ替えを行う。すなわち画像符号化装置51の画面並べ替えバッファ62により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
In step S140, the
ステップS141において、D/A変換部168は、画面並べ替えバッファ167からの画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
In step S141, the D / A converter 168 D / A converts the image from the
[予測処理の説明]
次に、図25のフローチャートを参照して、図24のステップS138の予測処理を説明する。
[Explanation of prediction processing]
Next, the prediction process in step S138 in FIG. 24 will be described with reference to the flowchart in FIG.
予測画像生成部181は、ステップS171において、対象ブロックがイントラ符号化されているか否かを判定する。可逆復号部162からイントラ予測モード情報が予測画像生成部181に供給されると、予測画像生成部181は、ステップS171において、対象ブロックがイントラ符号化されていると判定し、処理は、ステップS172に進む。
In step S171, the predicted
予測画像生成部181は、ステップS172において、可逆復号部162からのイントラ予測モード情報を受信、取得する。このとき、予測モードバッファ191にも、イントラ予測モード情報が供給され、格納される。
In step S172, the prediction
また、可逆復号部162から量子化パラメータの情報が量子化パラメータバッファ192に供給されると、量子化パラメータバッファ192は、ステップS173において、量子化パラメータを取得し、格納する。
Also, when the quantization parameter information is supplied from the
ローパスフィルタ設定部193は、予測モードバッファ191から対象ブロックのイントラ予測モード情報を読み出し、量子化パラメータバッファ192から対象ブロックに対する量子化パラメータを読み出す。ローパスフィルタ設定部193は、ステップS174において、内蔵するフィルタ係数メモリ194に記憶されているスライス毎のフィルタ係数の中から、これらの情報に対応する、隣接画素に対するフィルタ係数を設定する。設定したフィルタ係数は、隣接画素設定部182に供給される。
The low-pass
隣接画素設定部182は、ステップS175において、ローパスフィルタ設定部193により設定されたフィルタ係数を用いて、フレームメモリ169からの対象ブロックの隣接画素値に対して、フィルタ処理を施し、フィルタ処理された隣接画素値を、予測画像生成部181に供給する。
In step S175, the adjacent
予測画像生成部181は、隣接画素設定部182から供給された隣接画素値を用いて、ステップS172で取得したイントラ予測モードでのイントラ予測を行い、予測画像を生成する。生成された予測画像は、スイッチ174に供給される。
The prediction
一方、ステップS171において、イントラ符号化されていないと判定された場合、処理は、ステップS177に進む。 On the other hand, if it is determined in step S171 that the intra encoding has not been performed, the process proceeds to step S177.
処理対象の画像がインター処理される画像である場合、可逆復号部162からインター予測モード情報、参照フレーム情報、動きベクトル情報が動き予測・補償部173に供給される。ステップS177において、動き予測・補償部173は、可逆復号部162からのインター予測モード情報、参照フレーム情報、動きベクトル情報などを取得する。
When the processing target image is an inter-processed image, the inter prediction mode information, the reference frame information, and the motion vector information are supplied from the
そして、動き予測・補償部173は、ステップS178において、インター動き予測を行う。すなわち、処理対象の画像がインター予測処理される画像である場合、必要な画像がフレームメモリ169から読み出され、スイッチ170を介して動き予測・補償部173に供給される。ステップS177において動き予測・補償部173は、ステップS176で取得した動きベクトルに基づいて、インター予測モードの動き予測をし、予測画像を生成する。生成した予測画像は、スイッチ174に出力される。
Then, the motion prediction /
[イントラ予測部および隣接画素内挿フィルタ切替部の他の構成例]
図26は、イントラ予測部および隣接画素内挿フィルタ切替部の詳細な構成例を示すブロック図である。なお、図26の機能ブロックは、図20に示された画像符号化装置51のオンライン処理の場合の機能ブロックに対応するものである。
[Other Configuration Examples of Intra Prediction Unit and Adjacent Pixel Interpolation Filter Switching Unit]
FIG. 26 is a block diagram illustrating a detailed configuration example of the intra prediction unit and the adjacent pixel interpolation filter switching unit. The functional blocks in FIG. 26 correspond to the functional blocks in the case of online processing of the
図26の例の場合、イントラ予測部171は、図23の予測画像生成部181、および隣接画素設定部182により構成されている。隣接画素内挿フィルタ切替部172は、図23の予測モードバッファ191、並びに、内挿フィルタバッファ201、およびローパスフィルタ設定部202により構成されている。なお、図26の例において、図23の場合と対応する部には、対応する符号が付されており、基本的に同様な処理を行うので、その説明は省略する。
In the case of the example in FIG. 26, the
図26の場合、画像符号化装置51から対象スライスについて算出されたフィルタ係数が符号化されて送られてくる。したがって、可逆復号部162は、それを他の情報とともに復号して、隣接画素内挿フィルタ切替部172の内挿フィルタバッファ201に供給してくる。
In the case of FIG. 26, the filter coefficient calculated for the target slice is encoded from the
内挿フィルタバッファ201は、可逆復号部162からの対象スライスのフィルタ係数を取得し、格納する。
The
ローパスフィルタ設定部202は、予測モードバッファ191から対象ブロックのイントラ予測モード情報を読み出す。ローパスフィルタ設定部202は、内挿フィルタバッファ201に格納されている対象スライスのフィルタ係数の中から、読み出したイントラ予測モードに対応するフィルタ係数を読み出して、対象ブロックのフィルタ係数として設定する。設定されたフィルタ係数は、隣接画素設定部182に供給される。
The low pass
[予測処理の他の説明]
次に、図27のフローチャートを参照して、図26のイントラ予測部171および隣接画素内挿フィルタ切替部172の場合の予測処理を説明する。なお、このイントラ予測処理は、図24のステップS138における予測処理の他の例である。また、図27のステップS181、S182、およびS185乃至S188の処理は、基本的に、図25のステップS171、S172、およびS175乃至S178と同様の処理を行うので、その詳細な説明は省略される。
[Other description of prediction processing]
Next, prediction processing in the case of the
予測画像生成部181は、ステップS181において、対象ブロックがイントラ符号化されているか否かを判定する。可逆復号部162からイントラ予測モード情報が予測画像生成部181に供給されると、予測画像生成部181は、ステップ181において、対象ブロックがイントラ符号化されていると判定し、処理は、ステップS182に進む。
In step S181, the predicted
予測画像生成部181は、ステップS182において、可逆復号部162からのイントラ予測モード情報を受信、取得する。このとき、予測モードバッファ191にも、イントラ予測モード情報が供給され、格納される。
In step S182, the predicted
また、可逆復号部162から対象スライスのフィルタ係数の情報が内挿フィルタバッファ201に供給されると、内挿フィルタバッファ201は、ステップS183において、対象スライスのフィルタ係数を取得し、格納する。なお、このフィルタ係数は、スライス毎に供給される。
Further, when the information on the filter coefficient of the target slice is supplied from the
ローパスフィルタ設定部202は、予測モードバッファ191から対象ブロックのイントラ予測モード情報を読み出す。ローパスフィルタ設定部202は、ステップS184において、内挿フィルタバッファ201に格納された対象スライスのフィルタ係数の中から、対象ブロックのイントラ予測モードに対応する、隣接画素に対するフィルタ係数を設定する。設定したフィルタ係数は、隣接画素設定部182に供給される。
The low pass
隣接画素設定部182は、ステップS185において、ローパスフィルタ設定部202により設定されたフィルタ係数を用いて、フレームメモリ169からの対象ブロックの隣接画素値に対して、フィルタ処理を施し、フィルタ処理された隣接画素値を、予測画像生成部181に供給する。
In step S185, the adjacent
予測画像生成部181は、ステップS186において、隣接画素設定部182から供給された隣接画素値を用いて、ステップS172で取得したイントラ予測モードでのイントラ予測を行い、予測画像を生成する。生成された予測画像は、スイッチ174に供給される。
In step S186, the predicted
一方、ステップS181において、イントラ符号化されていないと判定された場合、処理は、ステップS187に進む。 On the other hand, if it is determined in step S181 that the intra encoding has not been performed, the process proceeds to step S187.
ステップS187において、動き予測・補償部173は、可逆復号部162からのインター予測モード情報、参照フレーム情報、動きベクトル情報などを取得する。
In step S187, the motion prediction /
動き予測・補償部173は、ステップS188において、インター動き予測を行う。この処理により、生成された予測画像は、スイッチ174に出力される。
In step S188, the motion prediction /
以上、図1の画像符号化装置51および図22の画像復号装置151においては、イントラ予測に先立ち、イントラ予測に用いられる隣接画素に対して、画像に適応的に設定されたフィルタ係数を用いて、フィルタ処理が行われる。例えば、イントラ予測のモードや量子化パラメータに応じて、フィルタ係数が設定される。
As described above, in the
これにより、画像やビットレートに応じたノイズ除去を行うことができる。その結果、予測効率を改善することができる。 Thereby, noise removal according to an image and a bit rate can be performed. As a result, prediction efficiency can be improved.
図28は、本発明を適用した学習装置の一実施の形態の構成を表している。図28の例において、学習装置251は、トレーニング画像信号を用いて、フィルタ係数の学習処理を行う。
FIG. 28 shows a configuration of an embodiment of a learning apparatus to which the present invention is applied. In the example of FIG. 28, the
なお、トレーニング画像信号とは、フィルタ係数を求めるためのテスト画像のことであり、例えば、www.vqeg.orgにおいて取得可能な画像圧縮符号化の標準化で使われる標準シーケンスを用いてもよい。あるいは、また、各アプリケーションに応じた入力画像を用いてもよい。例えば、入力がカメラ信号である場合には、CCDやCMOSセンサを用いて撮影されたベースバンド信号を用いて学習を行ってもよい。 The training image signal is a test image for obtaining a filter coefficient. For example, a standard sequence used for standardization of image compression encoding that can be obtained at www.vqeg.org may be used. Alternatively, an input image corresponding to each application may be used. For example, when the input is a camera signal, learning may be performed using a baseband signal photographed using a CCD or CMOS sensor.
図28の学習装置251は、A/D変換部61、画面並べ替えバッファ62、演算部63、直交変換部64、量子化部65、可逆符号化部66、蓄積バッファ67、逆量子化部68、逆直交変換部69、演算部70、デブロックフィルタ71、フレームメモリ72、スイッチ73、イントラ予測部74、動き予測・補償部76、予測画像選択部77、およびレート制御部78を備えている点が、図1の画像符号化装置51と共通している。
The
また、学習装置251は、用いられる信号として、トレーニング用の画像信号が用いられる点、並びに、隣接画素内挿フィルタ切替部75に代えて、隣接画素内挿フィルタ算出部261を備えている点が、図1の画像符号化装置51と異なる。
Further, the
具体的には、学習装置251においては、Iピクチャに含まれるブロックのみが用いられて、学習が行われる。あるいは、学習装置251においては、BピクチャおよびPピクチャに含まれるイントラマクロブロック内のブロックのみが用いられて学習が行われる。前者の方が、後者よりも学習に要する演算量は少なくてすむ。また、前者の場合、Iピクチャに含まれるブロック求められた係数を、Iピクチャに含まれるブロックのみに適用してもよいし、BピクチャおよびPピクチャに含まれるイントラマクロブロックに対してもよい。
Specifically, in the
すなわち、学習装置251においては、イントラ予測部74によるイントラ予測のみによる学習が行われる。したがって、動き予測・補償部76は、実際には、機能しないものとする。
That is, the
さらに、図29の隣接画素内挿フィルタ算出部261は、予測モードバッファ121、最適フィルタ算出部122、およびローパスフィルタ設定部123を備える点が図20の隣接画素内挿フィルタ切替部75と共通する。
Furthermore, the adjacent pixel interpolation
これに対して、隣接画素内挿フィルタ算出部261は、フィルタ係数記憶部271が追加されている点と、レート制御部78から量子化パラメータが、最適フィルタ算出部122に供給されている点が、図20の隣接画素内挿フィルタ切替部75と異なる。
On the other hand, the adjacent pixel interpolation
具体的に説明すると、図29の例においては、図20の例の場合と同様に、イントラ予測部74と隣接画素内挿フィルタ切替部75との間には、スイッチ101が設けられており、スイッチ101のオンオフにより、イントラ予測部74は、2回イントラ予測を行う。
Specifically, in the example of FIG. 29, as in the example of FIG. 20, a
すなわち、イントラ予測部74においては、スイッチ101がオフの状態で、H.264/AVCで定義されているイントラ予測が行われ、そのイントラ予測モードと、量子化パラメータに最適なフィルタ係数がスライス毎に算出される。この算出されたスライス毎のフィルタ係数は、フィルタ係数記憶部271に記憶される。そして、スイッチ101がオンの状態で、算出されたスライス毎のフィルタ係数の中から、隣接画素内挿フィルタ切替部75により設定されたフィルタ係数でのイントラ予測が行われる。
That is, in the
このフィルタ係数記憶部271に記憶されたフィルタ係数が、図1の画像符号化装置51のフィルタ係数メモリ94(図14)および図22の画像復号装置151のフィルタ係数メモリ194(図23)に、記録媒体やネットワークなどを介して記憶される。
The filter coefficients stored in the filter
[学習処理におけるイントラ予測処理の説明]
次に、図30のフローチャートを参照して、図28の学習装置251が行う学習処理の1処理としてのイントラ予測処理を説明する。なお、学習装置251としては、学習処理として、ステップS21の予測処理が図30のイントラ予測処理に入れ替わったことを除いて、図17の符号化処理と基本的に同様の処理が行われる。
[Description of intra prediction processing in learning processing]
Next, with reference to the flowchart of FIG. 30, the intra prediction process as one process of the learning process which the
また、図30のステップS201乃至S203、およびS206乃至S209は、図21のステップS101乃至S103、およびS105乃至S108と基本的に同様な処理を行うので、その説明は繰り返しになるので省略する。すなわち、図30のステップS204において、最適フィルタ算出部122は、対象スライスの各イントラ予測モードおよび対応する量子化パラメータに対して、対象スライス全体での残差を最小にするフィルタ係数を、最適なフィルタ係数として算出する。算出されたフィルタ係数は、フィルタ係数記憶部271に供給される。
Also, steps S201 to S203 and S206 to S209 in FIG. 30 are basically the same as steps S101 to S103 and S105 to S108 in FIG. That is, in step S204 of FIG. 30, the optimum
ステップS205において、フィルタ係数記憶部271は、最適フィルタ算出部122から供給されたフィルタ係数を記憶する。
In step S <b> 205, the filter
ローパスフィルタ設定部123は、フィルタ係数記憶部271に記憶された対象スライスのフィルタ係数の中から、対象ブロックに対するフィルタ係数を設定し、スイッチ101の端子をオンにして、設定されたフィルタ係数を、隣接画素設定部111に供給する。
The low-pass
これに対応して、ステップS206においては、設定されたフィルタ係数が用いられて、フレームメモリ72からの対象ブロックの隣接画素値に対して、フィルタ処理が行われる。
Correspondingly, in step S206, the set filter coefficient is used, and the filter processing is performed on the adjacent pixel value of the target block from the
もちろん、図21の例の場合と同様に、上述したステップS204乃至S207の処理を繰り返すことにより、さらに最適化されたフィルタ係数を得ることも可能である。 Of course, as in the case of the example of FIG. 21, it is also possible to obtain further optimized filter coefficients by repeating the processes of steps S204 to S207 described above.
以上のように、学習装置251においては、トレーニング画像信号が用いられて、実際に行われる符号化処理と同様な処理が行われ、その中で算出されたフィルタ係数が、フィルタ係数記憶部271される。したがって、最適なフィルタ係数を求めることができる。
As described above, in the
このフィルタ係数記憶部271に記憶されたフィルタ係数が、図1の画像符号化装置51のフィルタ係数メモリ94(図14)および図22の画像復号装置151のフィルタ係数メモリ194(図23)に、記録媒体やネットワークなどを介して記憶される。
The filter coefficients stored in the filter
そして、画像符号化装置51においては、上述したように、Iピクチャに含まれるブロック求められた係数(あるいはBピクチャおよびPピクチャに含まれるイントラマクロブロック)が、Iピクチャに含まれるブロックのみに適用される。あるいは、Iピクチャに含まれるブロックだけでなく、BピクチャおよびPピクチャに含まれるイントラマクロブロックにも適用される。
Then, in the
これにより、図1の画像符号化装置51および図22の画像復号装置151において、高い符号化効率を実現することが可能となる。
Accordingly, high encoding efficiency can be realized in the
なお、上述した図1の画像符号化装置51の直交変換部64および逆直交変換部69、並びに、図22の画像復号装置151の逆直交変換部164においては、H.264/AVCで定義されている直交変換・逆直交変換が行われる。これに代えて、図1の画像符号化装置51の直交変換部64および逆直交変換部69、並びに、図22の画像復号装置151の逆直交変換部164に、非特許文献1において提案されている直交変換・逆直交変換を適用することもできる。
Note that the
これにより、非特許文献1において提案されている方式の符号化効率をさらに向上させることができる。
Thereby, the encoding efficiency of the system proposed in
なお、上記説明においては、イントラ予測を行う例を説明したが、本発明は、非特許文献2で提案される2次予測におけるイントラ予測にも適用することができる。
In addition, although the example which performs intra prediction was demonstrated in the said description, this invention is applicable also to the intra prediction in the secondary prediction proposed by the
<2.第2の実施の形態>
[画像符号化装置の他の構成例]
図31は、本発明を適用した画像処理装置としての画像符号化装置の他の実施の形態の構成を表している。
<2. Second Embodiment>
[Other Configuration Examples of Image Encoding Device]
FIG. 31 shows a configuration of another embodiment of an image encoding apparatus as an image processing apparatus to which the present invention is applied.
画像符号化装置351は、A/D変換部61、画面並べ替えバッファ62、演算部63、直交変換部64、量子化部65、可逆符号化部66、蓄積バッファ67、逆量子化部68、逆直交変換部69、演算部70、デブロックフィルタ71、フレームメモリ72、スイッチ73、イントラ予測部74、動き予測・補償部76、予測画像選択部77、およびレート制御部78を備えている点は、図1の画像符号化装置51と共通している。
The
また、画像符号化装置351は、隣接画素内挿フィルタ切替部75が除かれている点、並びに、2次予測部361および隣接画素内挿フィルタ切替部362が追加されている点が、図1の画像符号化装置51と異なる。
Further, the
すなわち、図31の例においては、イントラ予測部74は、H.264/AVCのイントラ予測を行う。 That is, in the example of FIG. Performs 264 / AVC intra prediction.
一方、動き予測・補償部76は、インター処理する画像と参照画像に基づいて、候補となる全てのインター予測モードの動きベクトルを検出し、動きベクトルに基づいて参照画像に補償処理を施し、予測画像を生成する。
On the other hand, the motion prediction /
動き予測・補償部76は、検出された動きベクトル情報、インター処理する画像の情報(アドレスなど)、およびインター処理する画像と生成された予測画像の差分である1次残差を、2次予測部361に供給する。
The motion prediction /
動き予測・補償部76は、2次予測部361からの2次残差を比較することで、2次予測における最適なイントラ予測モードを決定する。また、動き予測・補償部76は、2次残差と1次残差を比較することで、2次残差を符号化するか、または1次残差を符号化するかを決定する。なお、これらの処理は、候補となる全てのインター予測モードに対して行われる。
The motion prediction /
そして、動き予測・補償部76は、候補となる全てのインター予測モードに対してコスト関数値を算出する。このとき、1次残差および2次残差のうち、インター予測モード毎に決定された残差が用いられて、コスト関数値が算出される。動き予測・補償部76は、算出したコスト関数値のうち、最小値を与える予測モードを、最適インター予測モードとして決定する。
Then, the motion prediction /
動き予測・補償部76は、最適インター予測モードで生成された予測画像(またはインターする画像と2次残差の差分)、およびそのコスト関数値を、予測画像選択部77に供給する。動き予測・補償部76は、予測画像選択部77により最適インター予測モードで生成された予測画像が選択された場合、最適インター予測モードを示す情報を可逆符号化部66に出力する。
The motion prediction /
このとき、動きベクトル情報、参照フレーム情報、2次予測を行うことを示す2次予測フラグ、および2次予測におけるイントラ予測モードの情報なども可逆符号化部66に出力される。可逆符号化部66は、動き予測・補償部76からの情報をやはり可変長符号化、算術符号化といった可逆符号化処理し、圧縮画像のヘッダ部に挿入する。
At this time, motion vector information, reference frame information, a secondary prediction flag indicating that the secondary prediction is performed, information on the intra prediction mode in the secondary prediction, and the like are also output to the
2次予測部361は、動き予測・補償部76からの動きベクトル情報とインター処理する画像の情報に基づいて、インター処理する対象の対象ブロックに隣接する対象隣接画素をフレームメモリ72から読み出す。また、2次予測部361は、動きベクトル情報により対象ブロックに対応付けられる参照ブロックに隣接する参照隣接画素をフレームメモリ72から読み出す。
Based on the motion vector information from the motion prediction /
2次予測部361は、2次予測処理を行う。2次予測処理とは、1次残差、および対象隣接画素と参照隣接画素の差分の間でイントラ予測を行い、2次差分情報(2次残差)を生成する処理である。
The
ここで、2次予測処理について、図32を参照して説明する。 Here, the secondary prediction process will be described with reference to FIG.
図32の例においては、対象フレームと参照フレームが示されており、対象フレームには、対象ブロックAが示されている。 In the example of FIG. 32, the target frame and the reference frame are shown, and the target block A is shown in the target frame.
参照フレームと対象フレームにおいて対象ブロックAに対して動きベクトルmv(mv_x,mv_y)が求められた場合に、対象ブロックAと、対象ブロックAに動きベクトルmvで対応付けられるブロックの差分情報(残差)が算出される。 When the motion vector mv (mv_x, mv_y) is obtained for the target block A in the reference frame and the target frame, difference information (residual) between the target block A and the block associated with the target block A by the motion vector mv ) Is calculated.
2次予測方式においては、対象ブロックAに関する差分情報だけでなく、対象ブロックAに隣接する隣接画素群Rと、隣接画素群Rに動きベクトルmvで対応付けられる隣接画素群R1との差分情報も算出される。 In the secondary prediction method, not only the difference information regarding the target block A but also the difference information between the adjacent pixel group R adjacent to the target block A and the adjacent pixel group R1 associated with the adjacent pixel group R by the motion vector mv. Calculated.
すなわち、対象ブロックAの左上の座標(x,y)から、隣接画素群Rの各座標が求められる。また、対象ブロックAに動きベクトルmvで対応付けられるブロックの左上の座標(x+mv_x,y+mv_y)から、隣接画素群R1の各座標が求められる。これらの座標値により、隣接画素群の差分情報が算出される。 That is, each coordinate of the adjacent pixel group R is obtained from the upper left coordinate (x, y) of the target block A. Further, each coordinate of the adjacent pixel group R1 is obtained from the upper left coordinates (x + mv_x, y + mv_y) of the block associated with the target block A by the motion vector mv. Based on these coordinate values, difference information between adjacent pixel groups is calculated.
2次予測方式においては、このように算出された対象ブロックに関する差分情報と、隣接画素に関する差分情報との間で、H.264/AVC方式におけるイントラ予測が行われ、これにより、2次差分情報が生成される。生成された2次差分情報が直交変換、量子化され、圧縮画像とともに符号化されて、復号側に送られる。 In the secondary prediction method, the difference between the difference information related to the target block calculated in this way and the difference information related to adjacent pixels is H.264. Intra prediction in the H.264 / AVC format is performed, whereby secondary difference information is generated. The generated secondary difference information is orthogonally transformed and quantized, encoded with the compressed image, and sent to the decoding side.
2次予測部361は、この2次予測に先立ち、隣接画素内挿フィルタ切替部362により設定されたフィルタ係数を用いて、イントラ予測に用いる対象隣接画素と参照隣接画素の差分に対して、フィルタ処理を行う。そして、2次予測部361は、フィルタ処理された対象隣接画素と参照隣接画素の差分を用いて、2次予測処理を行い、得られた2次差分情報(2次残差)を、動き予測・補償部76に出力する。
Prior to the secondary prediction, the
すなわち、2次予測部361は、図14に示したイントラ予測部74などを含むように構成されている。
That is, the
隣接画素内挿フィルタ切替部362は、図1の隣接画素内挿フィルタ切替部75と基本的に同様に構成され、同様の処理を行う。すなわち、隣接画素内挿フィルタ切替部362は、2次予測部361からのイントラ予測モードの情報と、レート制御部78からの量子化パラメータに応じたフィルタ係数を設定し、設定したフィルタ係数を、2次予測部361に供給する。
The adjacent pixel interpolation
なお、図31の画像符号化装置351の符号化処理は、以下のイントラ処理と動き予測処理が異なるだけであり、その他の処理は、図1の画像符号化装置51による図16の符号化処理と基本的に同様の処理であるので、その説明は省略する。
Note that the encoding process of the
すなわち、図31の画像符号化装置351においては、イントラ処理として、H.264/AVC方式におけるイントラ予測が行われる。また、動き予測処理として、動き予測処理の際に、隣接画素内挿フィルタ切替部362により設定されたフィルタ係数が用いられて、2次差分情報が生成される。そして、1次差分情報と2次差分情報のうち、符号化効率のよいものが選択され、コスト関数値が比較されることにより最適インター予測モードが決定される。
That is, in the
この画像符号化装置351により符号化された圧縮画像を受け、それを復号する画像復号装置について図33を参照して説明する。
An image decoding apparatus that receives a compressed image encoded by the
[画像復号装置の他の構成例]
図33は、本発明を適用した画像処理装置としての画像復号装置の他の実施の形態の構成を表している。
[Other Configuration Examples of Image Decoding Device]
FIG. 33 shows a configuration of another embodiment of an image decoding apparatus as an image processing apparatus to which the present invention is applied.
画像復号装置401は、蓄積バッファ161、可逆復号部162、逆量子化部163、逆直交変換部164、演算部165、デブロックフィルタ166、画面並べ替えバッファ167、D/A変換部168、フレームメモリ169、スイッチ170、イントラ予測部171、動き予測・補償部173、およびスイッチ174を備える点が、図22の画像復号装置151と共通している。
The
また、画像復号装置401は、隣接画素内挿フィルタ切替部172が除かれている点、並びに、2次予測部411、および隣接画素内挿フィルタ切替部412が追加されている点が、図22の画像復号装置151と異なっている。
In addition, the
すなわち、イントラ予測部171には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報が可逆復号部162から供給される。イントラ予測部171は、この情報に基づいて、予測画像を生成し、生成した予測画像を、スイッチ174に出力する。
That is, information indicating the intra prediction mode obtained by decoding the header information is supplied from the
動き予測・補償部173には、ヘッダ情報を復号して得られた情報のうち、予測モード情報、動きベクトル情報、参照フレーム情報などが可逆復号部162から供給される。また、動き予測・補償部173には、対象ブロックに対して2次予測処理が適用されている場合には、2次予測を行うことを示す2次予測フラグと、2次予測におけるイントラ予測モード情報も可逆復号部162から供給される。
Among the information obtained by decoding the header information, the motion prediction /
動き予測・補償部173は、2次予測処理が適用されていると判定した場合、2次予測部411を制御し、2次予測におけるイントラ予測モード情報が示すイントラ予測モードで、2次予測を行わせる。
When the motion prediction /
動き予測・補償部173は、動きベクトル情報と参照フレーム情報に基づいて画像に動き予測と補償処理を施し、予測画像を生成する。すなわち、対象ブロックの予測画像は、参照フレームにおいて、対象ブロックに動きベクトルで対応付けられる参照ブロックの画素値が用いられて生成される。そして、動き予測・補償部173は、生成された予測画像と2次予測部411からの予測差分値を加算して、それをスイッチ174に出力する。
The motion prediction /
2次予測部411は、フレームメモリ169から読み出される対象隣接画素と参照隣接画素の差分を用いて、2次予測を行う。2次予測部411は、この2次予測に先立ち、隣接画素内挿フィルタ切替部412により設定されたフィルタ係数を用いて、対象隣接画素と参照隣接画素の差分に対して、フィルタ処理を行う。そして、2次予測部411は、フィルタ処理された対象隣接画素と参照隣接画素の差分を用いて、2次予測処理を行い、得られた2次差分情報(2次残差)を、動き予測・補償部173に出力する。
The
すなわち、2次予測部411は、図26に示したイントラ予測部171を含むように構成されている。
That is, the
隣接画素内挿フィルタ切替部412は、隣接画素内挿フィルタ切替部172と基本的に同様に構成される。すなわち、隣接画素内挿フィルタ切替部412は、可逆復号部162からの量子化パラメータおよびイントラ予測モードの少なくとも1つに対応するフィルタ係数を設定する。隣接画素内挿フィルタ切替部412は、設定したフィルタ係数を、2次予測部411に供給する。
The adjacent pixel interpolation
なお、図33の画像復号装置401の符号化処理は、以下のイントラ処理と動き予測処理が異なるだけであり、その他の処理は、図22の画像復号装置151による図24の復号処理と基本的に同様の処理であるので、その説明は省略する。
Note that the encoding process of the
すなわち、図33の画像復号装置401においては、イントラ処理として、H.264/AVC方式におけるイントラ予測が行われる。また、動き予測処理として、動き予測処理の際に、隣接画素内挿フィルタ切替部412により設定されたフィルタ係数が用いられて、2次予測(イントラ予測)が行われ、2次差分情報が生成される。
That is, in the
以上のような2次予測処理におけるイントラ予測にも、本発明を適用することができる。 The present invention can also be applied to intra prediction in the secondary prediction processing as described above.
なお、上記説明においては、イントラ予測に先立ち、イントラ予測に用いられる隣接画素に対して、画像に適応的に設定されたフィルタ係数を用いてフィルタ処理が行われる例を説明した。 In the above description, an example has been described in which filter processing is performed on adjacent pixels used for intra prediction using filter coefficients that are adaptively set in the image prior to intra prediction.
ところで、イントラ予測方式に用いられる隣接画素に含まれるノイズは、画像コンテンツおよび量子化パラメータ等の符号化条件により異なる。このため、例えば、H.264/AVC方式において行われるフィルタ処理を施すことにより、符号化効率が向上するブロックと、そうでないブロックが存在する。 By the way, noise included in adjacent pixels used in the intra prediction method varies depending on encoding conditions such as image content and quantization parameters. For this reason, for example, H.C. There are blocks in which the encoding efficiency is improved by performing the filter processing performed in the H.264 / AVC format, and blocks that are not.
それにも拘わらず、H.264/AVC方式においては、マクロブロックに対して、8×8ブロックベースのイントラ予測が行われる際、全てのブロックに対して一様にフィルタ処理が行われていたため、これにより符号化効率が低下するブロックが発生していた。 Nevertheless, H.C. In the H.264 / AVC format, when 8 × 8 block-based intra prediction is performed on a macro block, since all the blocks are uniformly filtered, this reduces the coding efficiency. A block was generated.
そこで、次に、イントラ予測に用いられる隣接画素に対するフィルタ処理をオン/オフする場合の例について説明する。 Therefore, next, an example in which the filter processing for adjacent pixels used for intra prediction is turned on / off will be described.
<3.第3の実施の形態>
[画像符号化装置の他の構成例]
図34は、本発明を適用した画像処理装置としての画像符号化装置の他の実施の形態の構成を表している。
<3. Third Embodiment>
[Other Configuration Examples of Image Encoding Device]
FIG. 34 shows the configuration of another embodiment of an image encoding apparatus as an image processing apparatus to which the present invention is applied.
画像符号化装置451は、A/D変換部61、画面並べ替えバッファ62、演算部63、直交変換部64、量子化部65、可逆符号化部66、蓄積バッファ67、逆量子化部68、逆直交変換部69、演算部70、デブロックフィルタ71、フレームメモリ72、スイッチ73、イントラ予測部74、動き予測・補償部76、予測画像選択部77、およびレート制御部78を備えている点は、図1の画像符号化装置51と共通している。
The
また、画像符号化装置451は、隣接画素内挿フィルタ切替部75が、隣接画素内挿フィルタ制御部461に入れ替わっている点が、図1の画像符号化装置51と異なる。
The
すなわち、隣接画素内挿フィルタ制御部461は、H.264/AVC方式においては、8×8ブロックベースのイントラ予測が行われる際、全てのブロックに対して一様に行われていた隣接画素に対するフィルタ処理を、onまたはoffする制御を行う。なお、H.264/AVC方式においては、8×8ブロックベースのイントラ予測についてのみフィルタ処理が行われていたが、画像符号化装置451においては、イントラ4×4、イントラ16×16についても行われる。
That is, the adjacent pixel interpolation
隣接画素内挿フィルタ制御部461からのフィルタ処理のon/offの制御信号は、イントラ予測部74に供給される。
The on / off control signal for the filter processing from the adjacent pixel interpolation
イントラ予測部74は、画面並べ替えバッファ62から読み出されたイントラ予測する画像とフレームメモリ72から供給された参照画像に基づいて、候補となる全てのイントラ予測モードのイントラ予測処理を行い、予測画像を生成する。この際、イントラ予測部74においては、イントラ予測に先立ち、隣接画素内挿フィルタ制御部461からの制御信号に応じてフィルタ処理をonまたはoffして、イントラ予測が行われ、結果的に、算出されるコスト関数値の小さい方が採用される。
The
さらに、イントラ予測部74は、このフィルタ処理のonまたはoffを示すフラグを生成する。このフラグ情報は、予測画像選択部77により最適イントラ予測モードで生成された予測画像が選択された場合、最適イントラ予測モードを示す情報とともに、可逆符号化部66に供給される。
Further, the
[イントラ予測部の構成例]
図35は、図34のイントラ予測部74の詳細な構成例を示すブロック図である。図35の例の場合、イントラ予測部74は、予測画像生成部471、コスト関数値生成部472、並びにモード及びon/off判定部473により構成されている。
[Configuration example of intra prediction unit]
FIG. 35 is a block diagram illustrating a detailed configuration example of the
予測画像生成部471には、フレームメモリ72からのイントラ予測の対象ブロックの隣接画素値が供給される。図35の場合、スイッチ73の図示は省略されているが、実際には、隣接画素値は、フレームメモリ72から、スイッチ73を介して予測画像生成部471に供給される。なお、イントラ予測の場合、隣接画素値として、デブロックフィルタ71によりデブロックフィルタリングされていない画素値が用いられる。
The prediction
予測画像生成部471は、隣接画素内挿フィルタ制御部461からの制御信号に基づいて、隣接画素値に対するフィルタ処理を行い、あるいは、フィルタ処理を行わずに、候補となる全てのイントラ予測モードのイントラ予測処理を行い、予測画像を生成する。この制御信号が示す隣接画素内挿フィルタ制御部461によるon/offの制御は、図36乃至図38を参照して後述するように、ブロック単位またはマクロブロック単位で行われる。
Based on the control signal from the adjacent pixel interpolation
予測画像生成部471は、生成した予測画像画素値と、そのイントラ予測モードの情報を、コスト関数値生成部472に供給する。
The predicted
コスト関数値生成部472には、画面並べ替えバッファ62から原画像画素値が供給される。コスト関数値生成部472は、原画像画素値と予測画像画素値を用いて、フィルタ処理onまたはoffの場合の、各イントラ予測モードに対するコスト関数値を算出する。コスト関数値生成部472は、算出したコスト関数値、予測画像画素値、およびイントラ予測モードの情報を、モード及びon/off判定部473に供給する。
The original image pixel value is supplied from the
モード及びon/off判定部473は、コスト関数値生成部472からのコスト関数値を用いて、最適イントラ予測モードと、フィルタ処理をonまたはoffのどちらに設定するかを決定し、フィルタ処理のonまたはoffを示すon/offフラグ情報を生成する。
The mode and on / off
モード及びon/off判定部473は、最適イントラ予測モードの予測画像画素値を予測画像選択部77に供給する。予測画像選択部77により最適イントラ予測モードの予測画像が選択された場合、モード及びon/off判定部473は、最適イントラ予測モードを示す情報と、対応するon/offフラグ情報を可逆符号化部66に供給する。
The mode and on / off
なお、画像符号化装置451による処理は、以下に説明するイントラ予測処理以外は、図1の画像符号化装置51の処理と同様の処理を行うため、その説明は繰り返しになるので省略される。
Note that the processing by the
次に、図36のフローチャートを参照して、ブロック単位でonまたはoffの制御が行われる場合の図34のイントラ予測部74のイントラ予測処理について説明する。なお、この処理は、図17のステップS31のイントラ予測処理の他の例であり、図36の例においては、イントラ4×4を例に説明する。また、以下、フィルタ処理on/offを、単にフィルタon/offとも称する。
Next, the intra prediction process of the
ステップS401において、コスト関数値生成部472は、対象ブロックについて、図3または図4に示した9種類のそれぞれのイントラ予測モードに対するコスト関数値を生成する。
In step S401, the cost function
すなわち、予測画像生成部471には、フレームメモリ72からのイントラ予測の対象ブロックの隣接画素値が供給される。予測画像生成部471は、図3または図4に示した9種類のそれぞれのイントラ予測モードに対するイントラ予測を行い、対象ブロックの予測画像を生成する。
That is, the prediction
このとき、隣接画素内挿フィルタ制御部461から、隣接画素に対するフィルタ処理を行わない制御信号が供給され、予測画像生成部471は、隣接画素に対するフィルタ処理を行わずに、イントラ予測を行う。なお、ここでは、隣接画素に対するフィルタ処理を行う制御信号が供給されるようにしてもよい。ただし、例えば、9つのモードのうち、Verticalには行うが、Horizontalには行わないなど異なる制御をするのではなく、行うか行わないかは、9つのモードに対して同一の制御を行うものとする。また、ここでは、全てのモードに対してフィルタ処理を行わないとしたほうが、演算量は少なくて済む。
At this time, a control signal that does not perform filter processing on the adjacent pixels is supplied from the adjacent pixel interpolation
予測画像生成部471は、生成した予測画像画素値と、そのイントラ予測モードの情報を、コスト関数値生成部472に供給する。コスト関数値生成部472は、画面並べ替えバッファ62からの原画像画素値と予測画像画素値を用いて、フィルタoffの場合の、各イントラ予測モードに対して、上述した式(73)または式(74)で示されるコスト関数値を算出する。コスト関数値生成部472は、算出したコスト関数値、予測画像画素値、およびイントラ予測モードの情報を、モード及びon/off判定部473に供給する。
The predicted
ステップS402において、モード及びon/off判定部473は、コスト関数値生成部472からのコスト関数値を用いて、対象ブロックについて最適なイントラ予測モードを選択する。選択されたイントラ予測モードの情報は、隣接画素内挿フィルタ制御部461に供給される。
In step S402, the mode and on / off
ステップS403において、隣接画素内挿フィルタ制御部461は、コスト関数値生成部472に、選択されたイントラ予測モードに対して、フィルタonおよびoffのコスト関数値を生成させる。なお、ステップS401でフィルタoffのコスト関数値は生成されているので、実際には、ステップS403においては、フィルタonのコスト関数値が生成される。
In step S403, the adjacent pixel interpolation
すなわち、隣接画素内挿フィルタ制御部461は、予測画像生成部471に、フィルタonの制御信号と、選択されたイントラ予測モードの情報を供給する。予測画像生成部471は、選択されたイントラ予測モードに用いられる隣接画素値に対するフィルタ処理を行い、選択されたイントラ予測モードで、イントラ予測を行い、対象ブロックの予測画像を生成する。
That is, the adjacent pixel interpolation
予測画像生成部471は、生成した予測画像画素値と、選択されたイントラ予測モードの情報を、コスト関数値生成部472に供給する。コスト関数値生成部472は、画面並べ替えバッファ62からの原画像画素値と予測画像画素値を用いて、フィルタonの場合の、選択されたイントラ予測モードに対して、上述した式(73)または式(74)で示されるコスト関数値を算出する。コスト関数値生成部472は、算出したコスト関数値、および予測画像画素値を、モード及びon/off判定部473に供給する。
The predicted
ステップS404において、モード及びon/off判定部473は、選択されたイントラ予測モードについてのフィルタonおよびoffのコスト関数値を比較し、対象ブロックについて、フィルタon/offを決定する。すなわち、フィルタonのコスト関数値が小さい場合は、対象ブロックについてフィルタonを決定し、フィルタoffのコスト関数値が小さい場合には、対象ブロックについてフィルタoffを決定する。そして、モード及びon/off判定部473は、決定された方の予測画像値を、予測画像選択部77に供給する。
In step S404, the mode and on / off
ステップS405において、モード及びon/off判定部473は、対象ブロックについて、ステップS404で決定されたonまたはoffを示すon/offフラグを生成する。例えば、フィルタonの場合、on/offフィルタの値は、1とされる。フィルタoffの場合、on/offフィルタの値は、0とされる。
In step S405, the mode and on / off
生成されたon/offフラグ情報は、上述した図16のステップS22でイントラ予測モードの予測画像が選択された場合に、最適イントラ予測モードを示す情報とともに、可逆符号化部66に供給される。そして、供給されたこれらの情報は、図16のステップS23において、符号化され、圧縮画像のヘッダに付加されて、復号側に送信される。
The generated on / off flag information is supplied to the
次に、図37のフローチャートを参照して、ブロック単位でonまたはoffの制御が行われる場合の図34のイントラ予測部74のイントラ予測処理の他の例について説明する。図37の例の場合も、イントラ4×4を例に説明する。
Next, another example of the intra prediction process of the
ステップS421において、コスト関数値生成部472は、対象ブロックについて、それぞれのイントラ予測モードに対して、フィルタのonおよびoffによるコスト関数値を生成する。
In step S <b> 421, the cost function
すなわち、予測画像生成部471には、フレームメモリ72からのイントラ予測の対象ブロックの隣接画素値が供給される。予測画像生成部471は、図3または図4に示した9種類のそれぞれのイントラ予測モードに対するイントラ予測を行い、対象ブロックの予測画像を生成する。
That is, the prediction
このとき、まず、隣接画素内挿フィルタ制御部461から、隣接画素に対するフィルタ処理を行わない制御信号が供給され、予測画像生成部471は、隣接画素に対するフィルタ処理を行わずに、各イントラ予測モードに対するイントラ予測を行い、予測画像を生成する。さらに、隣接画素内挿フィルタ制御部461から、隣接画素に対するフィルタ処理を行う制御信号が供給され、予測画像生成部471は、隣接画素に対するフィルタ処理を行って、各イントラ予測モードに対するイントラ予測を行い、予測画像を生成する。
At this time, first, a control signal that does not perform filter processing on adjacent pixels is supplied from the adjacent pixel interpolation
予測画像生成部471は、フィルタonおよびoffの各イントラ予測モードの情報と、対応する予測画像画素値を、コスト関数値生成部472に供給する。コスト関数値生成部472は、画面並べ替えバッファ62からの原画像画素値と予測画像画素値を用いて、フィルタ処理offの場合、onの場合それぞれの、各イントラ予測モードに対して、上述した式(73)または式(74)で示されるコスト関数値を算出する。コスト関数値生成部472は、算出したフィルタ処理on、offの各場合のコスト関数値、予測画像画素値、およびイントラ予測モードの情報を、モード及びon/off判定部473に供給する。
The predicted
ステップS422において、モード及びon/off判定部473は、コスト関数値生成部472からのコスト関数値を用いて、対象ブロックについて、それぞれのイントラ予測モードに対して、フィルタをonするかoffするかを決定する。
In step S422, the mode and on / off
そして、さらに、ステップS423において、モード及びon/off判定部473は、フィルタonまたはoffが決定された各イントラ予測モードの中から、対象ブロックについての最適なイントラ予測モードを選択する。
In step S423, the mode / on / off
ステップS424において、モード及びon/off判定部473は、選択したイントラ予測モードのフィルタの状態(onかoff)を示すon/offフラグを生成する。生成されたon/offフラグ情報は、上述した図16のステップS22でイントラ予測モードの予測画像が選択された場合に、最適イントラ予測モードを示す情報とともに、可逆符号化部66に供給される。そして、供給されたこれらの情報は、図16のステップS23において、符号化され、圧縮画像のヘッダに付加されて、復号側に送信される。
In step S424, the mode and on / off
次に、図38のフローチャートを参照して、マクロブロック単位でonまたはoffの制御が行われる場合の図34のイントラ予測部74のイントラ予測処理について説明する。なお、この処理は、図17のステップS31のイントラ予測処理の他の例であり、図38の例においても、イントラ4×4を例に説明する。
Next, the intra prediction process of the
ステップS451において、隣接画素内挿フィルタ制御部461は、マクロブロック全体に対するフィルタをoffまたはonに固定する。いまの場合、隣接画素内挿フィルタ制御部461は、フィルタをoffに固定し、フィルタoffの制御信号を、予測画像生成部471に供給する。フィルタの固定は、onでもoffでもよいが、offに固定した方が、より少ない演算量により実現することが可能になる。
In step S451, the adjacent pixel interpolation
イントラ予測部74は、ステップS452において、それぞれのブロックに対してイントラ予測モードを決定する。すなわち、予測画像生成部471には、フレームメモリ72からのイントラ予測の対象ブロックの隣接画素値が供給される。予測画像生成部471は、図3または図4に示した9種類のそれぞれのイントラ予測モードに対するイントラ予測を行い、対象ブロックの予測画像を生成する。
In step S452, the
このとき、隣接画素内挿フィルタ制御部461から、隣接画素に対するフィルタ処理を行わない制御信号が供給され、予測画像生成部471は、隣接画素に対するフィルタ処理を行わずに、イントラ予測を行い、予測画像を生成する。予測画像生成部471は、生成した予測画像画素値と、そのイントラ予測モードの情報を、コスト関数値生成部472に供給する。
At this time, the adjacent pixel interpolation
コスト関数値生成部472は、画面並べ替えバッファ62からの原画像画素値と予測画像画素値を用いて、フィルタoffの場合の、各イントラ予測モードに対して、上述した式(73)または式(74)で示されるコスト関数値を算出する。コスト関数値生成部472は、算出したコスト関数値、予測画像画素値、およびイントラ予測モードの情報を、モード及びon/off判定部473に供給する。
The cost function
モード及びon/off判定部473は、コスト関数値生成部472からのコスト関数値を用いて、それぞれのブロックについて最適なイントラ予測モードを決定する。決定されたイントラ予測モードの情報は、隣接画素内挿フィルタ制御部461に供給される。
The mode and on / off
ステップS453において、隣接画素内挿フィルタ制御部461は、コスト関数値生成部472に、マクロブロック全体に対して、フィルタon及びoffのコスト関数値を生成させる。なお、マクロブロック内の各ブロックの最適なイントラ予測モード(すなわち、マクロブロック全体)についてのフィルタoffのコスト関数値は、ステップS452で生成されている。したがって、実際には、ステップS453においては、マクロブロック全体に対してのフィルタonのコスト関数値が生成される。
In step S453, the adjacent pixel interpolation
すなわち、隣接画素内挿フィルタ制御部461は、予測画像生成部471に、フィルタonの制御信号と、各ブロックについてそれぞれ決定されたイントラ予測モードの情報を供給する。予測画像生成部471は、決定されたイントラ予測モードに用いられる隣接画素値に対するフィルタ処理を行い、決定されたイントラ予測モードで、イントラ予測を行い、対象ブロックの予測画像を生成する。
That is, the adjacent pixel interpolation
予測画像生成部471は、生成した予測画像画素値と、決定されたイントラ予測モードの情報を、コスト関数値生成部472に供給する。コスト関数値生成部472は、画面並べ替えバッファ62からの原画像画素値と予測画像画素値を用いて、フィルタ処理onの場合の、決定されたイントラ予測モードに対して、上述した式(73)または式(74)で示されるコスト関数値を算出する。コスト関数値生成部472は、算出したフィルタonおよびoffの場合のコスト関数値、および予測画像画素値を、モード及びon/off判定部473に供給する。
The predicted
ステップS454において、モード及びon/off判定部473は、コスト関数値生成部472からのフィルタonおよびoffの場合のマクロブロック内のすべてのブロックのコスト関数値を比較して、マクロブロック全体に対して、フィルタon/offのどちらを適用するかを決定する。
In step S454, the mode and on / off
ステップS455において、モード及びon/off判定部473は、マクロブロック全体に対して、ステップS454で決定されたonまたはoffを示すon/offフラグを生成する。生成されたon/offフラグ情報は、マクロブロック毎に、可逆符号化部66に供給される。そして、供給されたこれらの情報は、ステップS23において、符号化され、圧縮画像のヘッダに付加されて、復号側に送信される。
In step S455, the mode and on / off
以上のように、フィルタのon/off(onまたはoff)の制御は、ブロック単位で行うこともできるし、マクロブロック単位で行うこともできる。なお、ブロック単位でon/offを制御することにより、イントラ予測処理による予測精度を向上させることが可能であるが、各ブロックに対するフラグ情報を伝送するのに必要な情報量が増大してしまう。これに対して、マクロブロック単位で制御する場合、予測精度の向上はブロック単位で行うよりも低いが、フラグ情報は各マクロブロックに1つで済むので、フラグによる情報量の増大を少なくすることができる。 As described above, the on / off (on or off) control of the filter can be performed in units of blocks or in units of macroblocks. Note that by controlling on / off in units of blocks, it is possible to improve prediction accuracy by intra prediction processing, but the amount of information necessary to transmit flag information for each block increases. On the other hand, when the control is performed in units of macroblocks, the prediction accuracy is lower than that performed in units of blocks, but only one flag information is required for each macroblock. Can do.
なお、上記説明においては、輝度信号の例を説明したが、色差信号に対するイントラ予測にも用いることができる。また、制御するフィルタ処理におけるフィルタ係数については、H.264/AVC方式における{1,2,1}//4という3タップのものに限らず、任意のタップ長の任意の係数や、図1の画像符号化装置51で設定されるフィルタ係数にも適用することができる。
In the above description, an example of a luminance signal has been described, but it can also be used for intra prediction for a color difference signal. For filter coefficients in the filter processing to be controlled, see H. It is not limited to the three taps {1, 2, 1} // 4 in the H.264 / AVC format, but also an arbitrary coefficient having an arbitrary tap length and a filter coefficient set by the
すなわち、フィルタonの場合には、図1の画像符号化装置51で設定されるフィルタ係数によるフィルタ処理が行われるとすることも可能である。
That is, in the case of the filter on, it is possible to perform filter processing using the filter coefficient set by the
この画像符号化装置451により符号化された圧縮画像を受け、それを復号する画像復号装置について図39を参照して説明する。
An image decoding apparatus that receives a compressed image encoded by the
[画像復号装置の他の構成例]
図39は、本発明を適用した画像処理装置としての画像復号装置の他の実施の形態の構成を表している。
[Other Configuration Examples of Image Decoding Device]
FIG. 39 shows the configuration of another embodiment of an image decoding apparatus as an image processing apparatus to which the present invention is applied.
画像復号装置501は、蓄積バッファ161、可逆復号部162、逆量子化部163、逆直交変換部164、演算部165、デブロックフィルタ166、画面並べ替えバッファ167、D/A変換部168、フレームメモリ169、スイッチ170、イントラ予測部171、動き予測・補償部173、およびスイッチ174を備える点が、図22の画像復号装置151と共通している。
The
また、画像復号装置501は、隣接画素内挿フィルタ切替部172が、隣接画素内挿フィルタ制御部511に入れ替わっている点が、図22の画像復号装置151と異なる。
Further, the
すなわち、イントラ予測部171には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報が、可逆復号部162から供給される。イントラ予測部171は、情報が示すイントラ予測モードによるイントラ予測を行うことで、予測画像を生成し、生成した予測画像を、スイッチ174に出力する。このとき。イントラ予測に先立ち、イントラ予測部171は、隣接画素内挿フィルタ制御部511からの制御信号に応じて隣接画素値に対してフィルタ処理を行う(あるいは、行わない)。
That is, information indicating the intra prediction mode obtained by decoding the header information is supplied from the
隣接画素内挿フィルタ制御部511には、画像符号化装置451での符号化に応じて、マクロブロック毎あるいはブロック毎に、on/offフラグ情報が可逆復号部162から供給される。隣接画素内挿フィルタ制御部511は、供給されたon/offフラグ情報に応じて、フィルタ処理を行うか、行わないことを示す制御信号を、イントラ予測部171に供給する。
The on / off flag information is supplied from the
なお、図34の画像符号化装置451においては、フィルタがonの場合とoffの場合の両方を試し、コスト関数値により、より高い符号化効率を与えると判定された方を選択し、イントラ予測処理が行われる。これに対して、この画像復号装置501においては、符号化されて送られてくるon/offフラグの情報に基づいてフィルタonまたはoffが制御されて、イントラ予測処理が行われる。
Note that the
[イントラ予測部および隣接画素内挿フィルタ制御部の構成例]
図40は、イントラ予測部および隣接画素内挿フィルタ制御部の詳細な構成例を示すブロック図である。
[Configuration Example of Intra Prediction Unit and Adjacent Pixel Interpolation Filter Control Unit]
FIG. 40 is a block diagram illustrating a detailed configuration example of the intra prediction unit and the adjacent pixel interpolation filter control unit.
図40の例の場合、イントラ予測部171は、予測モードバッファ521、予測画像生成部522により構成されている。隣接画素内挿フィルタ制御部511は、フラグバッファ531、および制御信号発生部532により構成されている。
In the case of the example of FIG. 40, the
予測モードバッファ521には、可逆復号部162からのイントラ予測モード情報が供給される。予測画像生成部522には、フレームメモリ169からのイントラ予測の対象ブロックの隣接画素値が供給される。図40の場合も、スイッチ170の図示は省略されているが、実際には、隣接画素値は、フレームメモリ169から、スイッチ170を介して予測画像生成部522に供給される。
The intra prediction mode information from the
予測画像生成部522は、予測モードバッファ521からの対象ブロックに対するイントラ予測モード情報を読み出し、対象ブロックについて、読み出したイントラ予測モードのイントラ予測を行い、予測画像を生成する。このイントラ予測に先立ち、予測画像生成部522は、制御信号発生部532からの制御信号に応じて、フレームメモリ169からの隣接画像画素値にフィルタ処理を行う。
The predicted
フラグバッファ531には、マクロブロック毎またはブロック毎にon/offフラグ情報が可逆復号部162から供給される。制御信号発生部532は、フラグバッファ531から対応するon/offフラグを読み出し、ブロック毎に、フィルタ処理を行うか行わないかを示す制御信号を生成し、生成した制御信号を予測画像生成部522に供給する。
On / off flag information is supplied from the
なお、画像復号装置501による処理は、以下に説明する予測処理以外は、図22の画像復号装置151の処理と同様の処理を行うため、その説明は繰り返しになるので省略される。
Note that the processing by the
[予測処理の説明]
次に、図41のフローチャートを参照して、図39の画像復号装置501の予測処理について説明する。なお、この処理は、図24のステップS138の予測処理の他の例である。
[Explanation of prediction processing]
Next, prediction processing of the
予測画像生成部522は、ステップS501において、対象ブロックがイントラ符号化されているか否かを判定する。可逆復号部162からイントラ予測モード情報が予測モードバッファ521に供給され、予測画像生成部522がそれを読み出す。これに対応して、予測画像生成部522は、ステップS501において、対象ブロックがイントラ符号化されていると判定し、処理は、ステップS502に進む。
In step S501, the predicted
予測画像生成部522は、ステップS502において、予測モードバッファ521のイントラ予測モード情報を取得する。
In step S502, the predicted
また、可逆復号部162からon/offフラグの情報がフラグバッファ531に供給されると、フラグバッファ531は、ステップS503において、on/offフラグを取得し、格納する。
Further, when the information of the on / off flag is supplied from the
制御信号発生部532は、対象ブロックに対応するon/offフラグを、フラグバッファ531から読み出し、ステップS504において、on/offフラグが1であるか否かを判定する。ステップS504において、on/offフラグが1である、すなわち、フィルタ処理がonであると判定された場合、制御信号発生部532は、予測画像生成部522に、フィルタ処理を行わせるための制御信号を供給する。
The
この制御信号に対応して、予測画像生成部522は、ステップS505において、フィルタ係数を用いて隣接画素に対してフィルタ処理を施す。そして、ステップS506において、予測画像生成部522は、フィルタ処理を施した隣接画素値を用いて、イントラ予測を行い、予測画像を生成する。
In response to this control signal, the predicted
一方、ステップS504において、on/offフラグが1ではない、すなわち、フィルタ処理がoffであると判定された場合、ステップS505のフィルタ処理はスキップされ、処理は、ステップS506に進む。 On the other hand, if it is determined in step S504 that the on / off flag is not 1, that is, the filtering process is off, the filtering process in step S505 is skipped, and the process proceeds to step S506.
ステップS506において、予測画像生成部522は、フレームメモリ169からの隣接画像画素値を用いて、イントラ予測を行い、予測画像を生成する。
In step S506, the predicted
ステップS506において生成された予測画像は、スイッチ174に供給される。
The predicted image generated in step S506 is supplied to the
一方、ステップS501において、イントラ符号化されていないと判定された場合、処理は、ステップS507に進む。 On the other hand, if it is determined in step S501 that the intra encoding has not been performed, the process proceeds to step S507.
動き予測・補償部173は、ステップS507において、インター動き予測を行う。すなわち、処理対象の画像がインター予測処理される画像である場合、必要な画像がフレームメモリ169から読み出され、スイッチ170を介して動き予測・補償部173に供給される。ステップS508において動き予測・補償部173は、ステップS507で取得した動きベクトルに基づいて、インター予測モードの動き予測をし、予測画像を生成する。生成した予測画像は、スイッチ174に出力される。
In step S507, the motion prediction /
以上のように、画像符号化装置451および画像復号装置501においては、イントラ予測に用いられる隣接画素に対するフィルタ処理のonまたはoffを制御し、符号化効率が低下するブロックに対しては、フィルタ処理を行わないようにした。これにより符号化効率を向上させることができる。
As described above, the
なお、上記説明においては、イントラ予測を行う例を説明したが、図32を参照して上述した2次予測におけるイントラ予測にも、フィルタ処理のonまたはoffの制御を適用することができる。 In the above description, an example in which intra prediction is performed has been described. However, on / off control of filter processing can also be applied to intra prediction in the secondary prediction described above with reference to FIG.
<4.第4の実施の形態>
[画像符号化装置の他の構成例]
図42は、本発明を適用した画像処理装置としての画像符号化装置の他の実施の形態の構成を表している。
<4. Fourth Embodiment>
[Other Configuration Examples of Image Encoding Device]
FIG. 42 shows a configuration of another embodiment of an image encoding device as an image processing device to which the present invention is applied.
画像符号化装置551は、A/D変換部61、画面並べ替えバッファ62、演算部63、直交変換部64、量子化部65、可逆符号化部66、蓄積バッファ67、逆量子化部68、逆直交変換部69、演算部70、デブロックフィルタ71、フレームメモリ72、スイッチ73、イントラ予測部74、動き予測・補償部76、予測画像選択部77、およびレート制御部78を備えている点は、図34の画像符号化装置451と共通している。
The
また、画像符号化装置551は、隣接画素内挿フィルタ制御部461が除かれている点、並びに、図31の2次予測部361、および隣接画素内挿フィルタ制御部561が追加されている点が、図34の画像符号化装置451と異なる。
In addition, the
すなわち、図42の例においては、イントラ予測部74は、H.264/AVCのイントラ予測を行う。 That is, in the example of FIG. Performs 264 / AVC intra prediction.
一方、動き予測・補償部76は、インター処理する画像と参照画像に基づいて、候補となる全てのインター予測モードの動きベクトルを検出し、動きベクトルに基づいて参照画像に補償処理を施し、予測画像を生成する。
On the other hand, the motion prediction /
動き予測・補償部76は、検出された動きベクトル情報、インター処理する画像の情報(アドレスなど)、およびインター処理する画像と生成された予測画像の差分である1次残差を、2次予測部361に供給する。
The motion prediction /
動き予測・補償部76は、2次予測部361からの2次残差を比較することで、2次予測における最適なイントラ予測モードを決定する。また、動き予測・補償部76は、2次残差と1次残差を比較することで、2次残差を符号化するか、または1次残差を符号化するかを決定する。なお、これらの処理は、候補となる全てのインター予測モードに対して行われる。
The motion prediction /
そして、動き予測・補償部76は、候補となる全てのインター予測モードに対してコスト関数値を算出する。このとき、1次残差および2次残差のうち、インター予測モード毎に決定された残差が用いられて、コスト関数値が算出される。動き予測・補償部76は、算出したコスト関数値のうち、最小値を与える予測モードを、最適インター予測モードとして決定する。
Then, the motion prediction /
動き予測・補償部76は、最適インター予測モードで生成された予測画像(またはインターする画像と2次残差の差分)、およびそのコスト関数値を、予測画像選択部77に供給する。動き予測・補償部76は、予測画像選択部77により最適インター予測モードで生成された予測画像が選択された場合、最適インター予測モードを示す情報を可逆符号化部66に出力する。
The motion prediction /
このとき、動きベクトル情報、参照フレーム情報、2次予測を行うことを示す2次予測フラグ、2次予測におけるイントラ予測モードの情報、および2次予測におけるon/ofフラグ情報なども可逆符号化部66に出力される。可逆符号化部66は、動き予測・補償部76からの情報をやはり可変長符号化、算術符号化といった可逆符号化処理し、圧縮画像のヘッダ部に挿入する。
At this time, the motion vector information, the reference frame information, the secondary prediction flag indicating that the secondary prediction is performed, the intra prediction mode information in the secondary prediction, the on / of flag information in the secondary prediction, and the like are also lossless encoding units. 66. The
2次予測部361は、動き予測・補償部76からの動きベクトル情報とインター処理する画像の情報に基づいて、インター処理する対象の対象ブロックに隣接する対象隣接画素をフレームメモリ72から読み出す。また、2次予測部361は、動きベクトル情報により対象ブロックに対応付けられる参照ブロックに隣接する参照隣接画素をフレームメモリ72から読み出す。
Based on the motion vector information from the motion prediction /
2次予測部361は、図32を参照して上述した2次予測処理を行う。2次予測処理とは、1次残差、および対象隣接画素と参照隣接画素の差分の間でイントラ予測を行い、2次差分情報(2次残差)を生成する処理である。
The
ただし、図42の2次予測部361は、この2次予測に先立ち、隣接画素内挿フィルタ制御部561からの制御信号に応じて、イントラ予測に用いる対象隣接画素と参照隣接画素の差分に対して、フィルタ処理を行う(あるいは行わない)。そして、2次予測部361は、フィルタ処理された(あるいはフィルタ処理なしの)対象隣接画素と参照隣接画素の差分を用いて、2次予測処理を行い、得られた2次差分情報(2次残差)を、動き予測・補償部76に出力する。このとき、2次予測部361は、フィルタ処理を行うこと、または行わないことを示すon/offフラグ情報も、動き予測・補償部76に出力する。
However, prior to the secondary prediction, the
すなわち、2次予測部361は、図35に示したイントラ予測部74を含むように構成されている。
That is, the
隣接画素内挿フィルタ制御部561は、図34の隣接画素内挿フィルタ制御部461と基本的に同様に構成され、同様の処理を行う。すなわち、隣接画素内挿フィルタ制御部561は、ブロック単位またはマクロブロック単位でフィルタ処理を行うか、行わないかを制御する制御信号を、2次予測部361に供給する。
The adjacent pixel interpolation
なお、図42の画像符号化装置551の符号化処理は、以下のイントラ処理と動き予測処理が異なるだけであり、その他の処理は、図34の画像符号化装置451による符号化処理(すなわち、図16の符号化処理)と基本的に同様の処理であるので、その説明は省略する。
Note that the encoding process of the
すなわち、図42の画像符号化装置551においては、イントラ処理として、H.264/AVC方式におけるイントラ予測が行われる。また、動き予測処理として、動き予測処理の際に、隣接画素内挿フィルタ制御部561からの制御信号に応じてフィルタ処理が制御されて、フィルタ処理された(あるいはフィルタ処理されない)2次差分情報が生成される。そして、1次差分情報と2次差分情報のうち、符号化効率のよいものが選択され、コスト関数値が比較されることにより最適インター予測モードが決定される。
That is, in the
この画像符号化装置551により符号化された圧縮画像を受け、それを復号する画像復号装置について図43を参照して説明する。
An image decoding apparatus that receives a compressed image encoded by the
[画像復号装置の他の構成例]
図43は、本発明を適用した画像処理装置としての画像復号装置の他の実施の形態の構成を表している。
[Other Configuration Examples of Image Decoding Device]
FIG. 43 shows the configuration of another embodiment of an image decoding apparatus as an image processing apparatus to which the present invention is applied.
画像復号装置601は、蓄積バッファ161、可逆復号部162、逆量子化部163、逆直交変換部164、演算部165、デブロックフィルタ166、画面並べ替えバッファ167、D/A変換部168、フレームメモリ169、スイッチ170、イントラ予測部171、動き予測・補償部173、およびスイッチ174を備える点が、図39の画像復号装置501と共通している。
The
また、画像復号装置601は、隣接画素内挿フィルタ制御部511が除かれている点、並びに、図33の2次予測部411、および隣接画素内挿フィルタ制御部611が追加されている点が、図39の画像復号装置501と異なっている。
Further, the
すなわち、イントラ予測部171には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報が可逆復号部162から供給される。イントラ予測部171は、この情報に基づいて、予測画像を生成し、生成した予測画像を、スイッチ174に出力する。
That is, information indicating the intra prediction mode obtained by decoding the header information is supplied from the
動き予測・補償部173には、ヘッダ情報を復号して得られた情報のうち、予測モード情報、動きベクトル情報、参照フレーム情報などが可逆復号部162から供給される。また、動き予測・補償部173には、対象ブロックに対して2次予測処理が適用されている場合には、2次予測を行うことを示す2次予測フラグと、2次予測におけるイントラ予測モード情報も可逆復号部162から供給される。
Among the information obtained by decoding the header information, the motion prediction /
動き予測・補償部173は、2次予測処理が適用されていると判定した場合、2次予測部411を制御し、2次予測におけるイントラ予測モード情報が示すイントラ予測モードで、2次予測を行わせる。
When the motion prediction /
動き予測・補償部173は、動きベクトル情報と参照フレーム情報に基づいて画像に動き予測と補償処理を施し、予測画像を生成する。すなわち、対象ブロックの予測画像は、参照フレームにおいて、対象ブロックに動きベクトルで対応付けられる参照ブロックの画素値が用いられて生成される。そして、動き予測・補償部173は、生成された予測画像と2次予測部411からの予測差分値を加算して、それをスイッチ174に出力する。
The motion prediction /
2次予測部411は、フレームメモリ169から読み出される対象隣接画素と参照隣接画素の差分を用いて、2次予測を行う。ただし、図43の2次予測部411は、隣接画素内挿フィルタ制御部611からフィルタ処理を行うことを制御する制御信号を受けた場合、この2次予測に先立ち、対象隣接画素と参照隣接画素の差分に対して、フィルタ処理を行う。そして、2次予測部411は、フィルタ処理された対象隣接画素と参照隣接画素の差分を用いて、2次予測処理を行い、得られた2次差分情報(2次残差)を、動き予測・補償部173に出力する。
The
なお、隣接画素内挿フィルタ制御部611からフィルタ処理を行わないことを制御する制御信号を受けた場合、2次予測部411は、フィルタ処理を行わず、対象隣接画素と参照隣接画素の差分を用いて、2次予測処理を行う。
When receiving a control signal for controlling not to perform the filter processing from the adjacent pixel interpolation
すなわち、2次予測部411は、図40に示したイントラ予測部171を含むように構成されている。
That is, the
隣接画素内挿フィルタ制御部611は、図39の隣接画素内挿フィルタ制御部511と基本的に同様に構成され、基本的に同様の処理を行う。すなわち、隣接画素内挿フィルタ制御部611には、ヘッダ情報を復号して得られた情報のうち、on/offフラグ情報が可逆復号部162から供給される。隣接画素内挿フィルタ制御部611は、on/offフラグ情報に応じて、2次予測部411に隣接画素のフィルタ処理を行わせる、または行わせない制御信号を供給する。
The adjacent pixel interpolation
なお、図43の画像復号装置601の復号処理は、以下のイントラ処理と動き予測処理が異なるだけであり、その他の処理は、図39の画像復号装置501による復号処理(すなわち、図24の復号処理)と基本的に同様の処理であるので、その説明は省略する。
Note that the decoding process of the
すなわち、図43の画像復号装置601においては、イントラ処理として、H.264/AVC方式におけるイントラ予測が行われる。また、動き予測処理として、動き予測処理の際に、隣接画素内挿フィルタ制御部611からの制御信号に応じてフィルタ処理がなされて、2次予測(イントラ予測)が行われ、2次差分情報が生成される。
That is, in the
以上のような2次予測処理におけるイントラ予測にも、フィルタ処理のonまたはoffの制御を適用することができる。 The filter processing on or off control can also be applied to the intra prediction in the secondary prediction processing as described above.
なお、上記説明においては、マクロブロックの大きさが、16×16画素の場合について説明してきたが、本発明は、特許文献3に記載の拡張されたマクロブロックサイズに対しても適用することが可能である。
In the above description, the case where the size of the macroblock is 16 × 16 pixels has been described. However, the present invention can also be applied to the expanded macroblock size described in
図44は、拡張されたマクロブロックサイズの例を示す図である。特許文献3では、マクロブロックサイズが32×32画素に拡張されている。
FIG. 44 is a diagram illustrating an example of an extended macroblock size. In
図44の上段には、左から、32×32画素、32×16画素、16×32画素、および16×16画素のブロック(パーティション)に分割された32×32画素で構成されるマクロブロックが順に示されている。図44の中段には、左から、16×16画素、16×8画素、8×16画素、および8×8画素のブロックに分割された16×16画素で構成されるブロックが順に示されている。また、図44の下段には、左から、8×8画素、8×4画素、4×8画素、および4×4画素のブロックに分割された8×8画素のブロックが順に示されている。 In the upper part of FIG. 44, from the left, a macro block composed of 32 × 32 pixels divided into blocks (partitions) of 32 × 32 pixels, 32 × 16 pixels, 16 × 32 pixels, and 16 × 16 pixels. They are shown in order. In the middle part of FIG. 44, blocks composed of 16 × 16 pixels divided into blocks of 16 × 16 pixels, 16 × 8 pixels, 8 × 16 pixels, and 8 × 8 pixels are sequentially shown from the left. Yes. In the lower part of FIG. 44, an 8 × 8 pixel block divided into 8 × 8 pixel, 8 × 4 pixel, 4 × 8 pixel, and 4 × 4 pixel blocks is sequentially shown from the left. .
すなわち、32×32画素のマクロブロックは、図44の上段に示される32×32画素、32×16画素、16×32画素、および16×16画素のブロックでの処理が可能である。 That is, the 32 × 32 pixel macroblock can be processed in the 32 × 32 pixel, 32 × 16 pixel, 16 × 32 pixel, and 16 × 16 pixel blocks shown in the upper part of FIG.
また、上段の右側に示される16×16画素のブロックは、H.264/AVC方式と同様に、中段に示される16×16画素、16×8画素、8×16画素、および8×8画素のブロックでの処理が可能である。 The 16 × 16 pixel block shown on the right side of the upper row is H.264. Similar to the H.264 / AVC format, processing in blocks of 16 × 16 pixels, 16 × 8 pixels, 8 × 16 pixels, and 8 × 8 pixels shown in the middle stage is possible.
さらに、中段の右側に示される8×8画素のブロックは、H.264/AVC方式と同様に、下段に示される8×8画素、8×4画素、4×8画素、および4×4画素のブロックでの処理が可能である。 Further, the 8 × 8 pixel block shown on the right side of the middle stage is H.264. Similar to the H.264 / AVC format, processing in blocks of 8 × 8 pixels, 8 × 4 pixels, 4 × 8 pixels, and 4 × 4 pixels shown in the lower stage is possible.
このような階層構造を採用することにより、拡張されたマクロブロックサイズにおいては、16×16画素のブロック以下に関してH.264/AVC方式と互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。 By adopting such a hierarchical structure, in the expanded macroblock size, H. A larger block is defined as a superset while maintaining compatibility with the H.264 / AVC format.
以上のように提案される拡張されたマクロブロックサイズにも、本発明のフィルタ係数の設定、算出、またはフィルタ処理のオンオフの制御を適用することができる。 The filter coefficient setting, calculation, or filter processing on / off control according to the present invention can be applied to the extended macroblock size proposed as described above.
以上においては、符号化方式としてH.264/AVC方式を用いるようにしたが、本発明はこれに限らず、隣接画素を用いた予測(例えば、イントラ予測や2次予測)を行う、その他の符号化方式/復号方式を適用することができる。 In the above, the encoding method is H.264. The H.264 / AVC system is used, but the present invention is not limited to this, and other encoding systems / decoding systems that perform prediction using adjacent pixels (for example, intra prediction or secondary prediction) are applied. Can do.
なお、本発明は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本発明は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本発明は、それらの画像符号化装置および画像復号装置などに含まれる動き予測補償装置にも適用することができる。 It should be noted that the present invention includes, for example, MPEG, H.264, and the like. When receiving image information (bitstream) compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as 26x, via network media such as satellite broadcasting, cable television, the Internet, or mobile phones. The present invention can be applied to an image encoding device and an image decoding device used in the above. Further, the present invention can be applied to an image encoding device and an image decoding device used when processing on a storage medium such as an optical, magnetic disk, and flash memory. Furthermore, the present invention can also be applied to motion prediction / compensation devices included in such image encoding devices and image decoding devices.
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。 The series of processes described above can be executed by hardware or can be executed by software. When a series of processing is executed by software, a program constituting the software is installed in the computer. Here, the computer includes a computer incorporated in dedicated hardware, a general-purpose personal computer capable of executing various functions by installing various programs, and the like.
図45は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。 FIG. 45 is a block diagram illustrating a hardware configuration example of a computer that executes the above-described series of processing by a program.
コンピュータにおいて、CPU(Central Processing Unit)801、ROM(Read Only Memory)802、RAM(Random Access Memory)803は、バス804により相互に接続されている。
In the computer, a CPU (Central Processing Unit) 801, a ROM (Read Only Memory) 802, and a RAM (Random Access Memory) 803 are connected to each other by a
バス804には、さらに、入出力インタフェース805が接続されている。入出力インタフェース805には、入力部806、出力部807、記憶部808、通信部809、およびドライブ810が接続されている。
An input /
入力部806は、キーボード、マウス、マイクロフォンなどよりなる。出力部807は、ディスプレイ、スピーカなどよりなる。記憶部808は、ハードディスクや不揮発性のメモリなどよりなる。通信部809は、ネットワークインタフェースなどよりなる。ドライブ810は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア811を駆動する。
The
以上のように構成されるコンピュータでは、CPU801が、例えば、記憶部808に記憶されているプログラムを入出力インタフェース805及びバス804を介してRAM803にロードして実行することにより、上述した一連の処理が行われる。
In the computer configured as described above, for example, the
コンピュータ(CPU801)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア811に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供することができる。
The program executed by the computer (CPU 801) can be provided by being recorded on, for example, a
コンピュータでは、プログラムは、リムーバブルメディア811をドライブ810に装着することにより、入出力インタフェース805を介して、記憶部808にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部809で受信し、記憶部808にインストールすることができる。その他、プログラムは、ROM802や記憶部808に、あらかじめインストールしておくことができる。
In the computer, the program can be installed in the
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。 The program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。 The embodiments of the present invention are not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention.
例えば、上述した画像符号化装置51、351、451、および551や画像復号装置151、401、501、および601は、任意の電子機器に適用することができる。以下にその例について説明する。
For example, the
図46は、本発明を適用した画像復号装置を用いるテレビジョン受像機の主な構成例を示すブロック図である。 FIG. 46 is a block diagram illustrating a main configuration example of a television receiver using the image decoding device to which the present invention has been applied.
図46に示されるテレビジョン受像機1300は、地上波チューナ1313、ビデオデコーダ1315、映像信号処理回路1318、グラフィック生成回路1319、パネル駆動回路1320、および表示パネル1321を有する。
A
地上波チューナ1313は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ1315に供給する。ビデオデコーダ1315は、地上波チューナ1313から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路1318に供給する。
The
映像信号処理回路1318は、ビデオデコーダ1315から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路1319に供給する。
The video
グラフィック生成回路1319は、表示パネル1321に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路1320に供給する。また、グラフィック生成回路1319は、項目の選択などにユーザにより利用される画面を表示するための映像データ(グラフィック)を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路1320に供給するといった処理も適宜行う。
The
パネル駆動回路1320は、グラフィック生成回路1319から供給されたデータに基づいて表示パネル1321を駆動し、番組の映像や上述した各種の画面を表示パネル1321に表示させる。
The
表示パネル1321はLCD(Liquid Crystal Display)などよりなり、パネル駆動回路1320による制御に従って番組の映像などを表示させる。
The
また、テレビジョン受像機1300は、音声A/D(Analog/Digital)変換回路1314、音声信号処理回路1322、エコーキャンセル/音声合成回路1323、音声増幅回路1324、およびスピーカ1325も有する。
The
地上波チューナ1313は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ1313は、取得した音声信号を音声A/D変換回路1314に供給する。
The
音声A/D変換回路1314は、地上波チューナ1313から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路1322に供給する。
The audio A /
音声信号処理回路1322は、音声A/D変換回路1314から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル/音声合成回路1323に供給する。
The audio
エコーキャンセル/音声合成回路1323は、音声信号処理回路1322から供給された音声データを音声増幅回路1324に供給する。
The echo cancellation /
音声増幅回路1324は、エコーキャンセル/音声合成回路1323から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ1325から出力させる。
The
さらに、テレビジョン受像機1300は、デジタルチューナ1316およびMPEGデコーダ1317も有する。
Furthermore, the
デジタルチューナ1316は、デジタル放送(地上デジタル放送、BS(Broadcasting Satellite)/CS(Communications Satellite)デジタル放送)の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS(Moving Picture Experts Group-Transport Stream)を取得し、それをMPEGデコーダ1317に供給する。
The
MPEGデコーダ1317は、デジタルチューナ1316から供給されたMPEG-TSに施されているスクランブルを解除し、再生対象(視聴対象)になっている番組のデータを含むストリームを抽出する。MPEGデコーダ1317は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路1322に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路1318に供給する。また、MPEGデコーダ1317は、MPEG-TSから抽出したEPG(Electronic Program Guide)データを図示せぬ経路を介してCPU1332に供給する。
The
テレビジョン受像機1300は、このように映像パケットをデコードするMPEGデコーダ1317として、上述した画像復号装置151、401、501、または601を用いる。したがって、MPEGデコーダ1317は、画像復号装置151および401の場合と同様に、イントラ予測に先立ち、量子化パラメータや予測モードに応じてフィルタ係数を切り替えて、隣接画素のフィルタ処理を行う。あるいは、MPEGデコーダ1317は、画像復号装置501および601の場合と同様に、on/offフラグに基づき、イントラ予測に先立って行われる隣接画素のフィルタ処理をする、しないを制御する。これにより、符号化効率を向上することができる。
The
MPEGデコーダ1317から供給された映像データは、ビデオデコーダ1315から供給された映像データの場合と同様に、映像信号処理回路1318において所定の処理が施される。そして、所定の処理が施された映像データは、グラフィック生成回路1319において、生成された映像データ等が適宜重畳され、パネル駆動回路1320を介して表示パネル1321に供給され、その画像が表示される。
The video data supplied from the
MPEGデコーダ1317から供給された音声データは、音声A/D変換回路1314から供給された音声データの場合と同様に、音声信号処理回路1322において所定の処理が施される。そして、所定の処理が施された音声データは、エコーキャンセル/音声合成回路1323を介して音声増幅回路1324に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ1325から出力される。
The audio data supplied from the
また、テレビジョン受像機1300は、マイクロホン1326、およびA/D変換回路1327も有する。
The
A/D変換回路1327は、音声会話用のものとしてテレビジョン受像機1300に設けられるマイクロホン1326により取り込まれたユーザの音声の信号を受信する。A/D変換回路1327は、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル/音声合成回路1323に供給する。
The A /
エコーキャンセル/音声合成回路1323は、テレビジョン受像機1300のユーザ(ユーザA)の音声のデータがA/D変換回路1327から供給されている場合、ユーザAの音声データを対象としてエコーキャンセルを行う。そして、エコーキャンセル/音声合成回路1323は、エコーキャンセルの後、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1324を介してスピーカ1325より出力させる。
When the audio data of the user (user A) of the
さらに、テレビジョン受像機1300は、音声コーデック1328、内部バス1329、SDRAM(Synchronous Dynamic Random Access Memory)1330、フラッシュメモリ1331、CPU1332、USB(Universal Serial Bus) I/F1333、およびネットワークI/F1334も有する。
Furthermore, the
A/D変換回路1327は、音声会話用のものとしてテレビジョン受像機1300に設けられるマイクロホン1326により取り込まれたユーザの音声の信号を受信する。A/D変換回路1327は、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック1328に供給する。
The A /
音声コーデック1328は、A/D変換回路1327から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス1329を介してネットワークI/F1334に供給する。
The
ネットワークI/F1334は、ネットワーク端子1335に装着されたケーブルを介してネットワークに接続される。ネットワークI/F1334は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック1328から供給された音声データを送信する。また、ネットワークI/F1334は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子1335を介して受信し、それを、内部バス1329を介して音声コーデック1328に供給する。
The network I /
音声コーデック1328は、ネットワークI/F1334から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル/音声合成回路1323に供給する。
The
エコーキャンセル/音声合成回路1323は、音声コーデック1328から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1324を介してスピーカ1325より出力させる。
The echo cancellation /
SDRAM1330は、CPU1332が処理を行う上で必要な各種のデータを記憶する。
The
フラッシュメモリ1331は、CPU1332により実行されるプログラムを記憶する。フラッシュメモリ1331に記憶されているプログラムは、テレビジョン受像機1300の起動時などの所定のタイミングでCPU1332により読み出される。フラッシュメモリ1331には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
The
例えば、フラッシュメモリ1331には、CPU1332の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ1331は、例えばCPU1332の制御により、そのMPEG-TSを、内部バス1329を介してMPEGデコーダ1317に供給する。
For example, the
MPEGデコーダ1317は、デジタルチューナ1316から供給されたMPEG-TSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機1300は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ1317を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
The
また、テレビジョン受像機1300は、リモートコントローラ1351から送信される赤外線信号を受光する受光部1337も有する。
The
受光部1337は、リモートコントローラ1351からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU1332に出力する。
The
CPU1332は、フラッシュメモリ1331に記憶されているプログラムを実行し、受光部1337から供給される制御コードなどに応じてテレビジョン受像機1300の全体の動作を制御する。CPU1332とテレビジョン受像機1300の各部は、図示せぬ経路を介して接続されている。
The
USB I/F1333は、USB端子1336に装着されたUSBケーブルを介して接続される、テレビジョン受像機1300の外部の機器との間でデータの送受信を行う。ネットワークI/F1334は、ネットワーク端子1335に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
The USB I /
テレビジョン受像機1300は、MPEGデコーダ1317として画像復号装置151、401、501、または601を用いることにより、符号化効率を向上することができる。その結果として、テレビジョン受像機1300は、アンテナを介して受信した放送波信号や、ネットワークを介して取得したコンテンツデータから、より高速に、より高精細な復号画像を得て、表示することができる。
The
図47は、本発明を適用した画像符号化装置および画像復号装置を用いる携帯電話機の主な構成例を示すブロック図である。 FIG. 47 is a block diagram showing a main configuration example of a mobile phone using an image encoding device and an image decoding device to which the present invention is applied.
図47に示される携帯電話機1400は、各部を統括的に制御するようになされた主制御部1450、電源回路部1451、操作入力制御部1452、画像エンコーダ1453、カメラI/F部1454、LCD制御部1455、画像デコーダ1456、多重分離部1457、記録再生部1462、変復調回路部1458、および音声コーデック1459を有する。これらは、バス1460を介して互いに接続されている。
A
また、携帯電話機1400は、操作キー1419、CCD(Charge Coupled Devices)カメラ1416、液晶ディスプレイ1418、記憶部1423、送受信回路部1463、アンテナ1414、マイクロホン(マイク)1421、およびスピーカ1417を有する。
The
電源回路部1451は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機1400を動作可能な状態に起動する。
When the end of call and the power key are turned on by a user operation, the power
携帯電話機1400は、CPU、ROMおよびRAM等でなる主制御部1450の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
The
例えば、音声通話モードにおいて、携帯電話機1400は、マイクロホン(マイク)1421で集音した音声信号を、音声コーデック1459によってデジタル音声データに変換し、これを変復調回路部1458でスペクトラム拡散処理し、送受信回路部1463でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1400は、その変換処理により得られた送信用信号を、アンテナ1414を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(音声信号)は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
For example, in the voice call mode, the
また、例えば、音声通話モードにおいて、携帯電話機1400は、アンテナ1414で受信した受信信号を送受信回路部1463で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部1458でスペクトラム逆拡散処理し、音声コーデック1459によってアナログ音声信号に変換する。携帯電話機1400は、その変換して得られたアナログ音声信号をスピーカ1417から出力する。
Further, for example, in the voice call mode, the
更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機1400は、操作キー1419の操作によって入力された電子メールのテキストデータを、操作入力制御部1452において受け付ける。携帯電話機1400は、そのテキストデータを主制御部1450において処理し、LCD制御部1455を介して、画像として液晶ディスプレイ1418に表示させる。
Furthermore, for example, when transmitting an e-mail in the data communication mode, the
また、携帯電話機1400は、主制御部1450において、操作入力制御部1452が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機1400は、その電子メールデータを、変復調回路部1458でスペクトラム拡散処理し、送受信回路部1463でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1400は、その変換処理により得られた送信用信号を、アンテナ1414を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(電子メール)は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
In addition, the
また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機1400は、基地局から送信された信号を、アンテナ1414を介して送受信回路部1463で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1400は、その受信信号を変復調回路部1458でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機1400は、復元された電子メールデータを、LCD制御部1455を介して液晶ディスプレイ1418に表示する。
Further, for example, when receiving an e-mail in the data communication mode, the
なお、携帯電話機1400は、受信した電子メールデータを、記録再生部1462を介して、記憶部1423に記録する(記憶させる)ことも可能である。
Note that the
この記憶部1423は、書き換え可能な任意の記憶媒体である。記憶部1423は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
The
さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機1400は、撮像によりCCDカメラ1416で画像データを生成する。CCDカメラ1416は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。その画像データを、カメラI/F部1454を介して、画像エンコーダ1453で、例えばMPEG2やMPEG4等の所定の符号化方式によって圧縮符号化することにより符号化画像データに変換する。
Furthermore, for example, when transmitting image data in the data communication mode, the
携帯電話機1400は、このような処理を行う画像エンコーダ1453として、上述した画像符号化装置51、351、451、または551を用いる。したがって、画像エンコーダ1453は、画像符号化装置51および351の場合と同様に、イントラ予測に先立ち、量子化パラメータや予測モードに応じてフィルタ係数を設定して、隣接画素のフィルタ処理を行う。あるいは、画像エンコーダ1453は、画像符号化装置451および551の場合と同様に、イントラ予測に先立って行われる隣接画素のフィルタ処理をする、しないを制御する。これにより、符号化効率を向上することができる。
The
なお、携帯電話機1400は、このとき同時に、CCDカメラ1416で撮像中にマイクロホン(マイク)1421で集音した音声を、音声コーデック1459においてアナログデジタル変換し、さらに符号化する。
At the same time, the
携帯電話機1400は、多重分離部1457において、画像エンコーダ1453から供給された符号化画像データと、音声コーデック1459から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機1400は、その結果得られる多重化データを、変復調回路部1458でスペクトラム拡散処理し、送受信回路部1463でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1400は、その変換処理により得られた送信用信号を、アンテナ1414を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(画像データ)は、ネットワーク等を介して、通信相手に供給される。
The
なお、画像データを送信しない場合、携帯電話機1400は、CCDカメラ1416で生成した画像データを、画像エンコーダ1453を介さずに、LCD制御部1455を介して液晶ディスプレイ1418に表示させることもできる。
When image data is not transmitted, the
また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機1400は、基地局から送信された信号を、アンテナ1414を介して送受信回路部1463で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1400は、その受信信号を変復調回路部1458でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機1400は、多重分離部1457において、その多重化データを分離して、符号化画像データと音声データとに分ける。
Further, for example, in the data communication mode, when receiving data of a moving image file linked to a simple homepage or the like, the
携帯電話機1400は、画像デコーダ1456において、符号化画像データを、MPEG2やMPEG4等の所定の符号化方式に対応した復号方式でデコードすることにより、再生動画像データを生成し、これを、LCD制御部1455を介して液晶ディスプレイ1418に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ1418に表示される。
The
携帯電話機1400は、このような処理を行う画像デコーダ1456として、上述した画像復号装置151、401、501、または601を用いる。したがって、画像デコーダ1456は、画像復号装置151および401の場合と同様に、イントラ予測に先立ち、量子化パラメータや予測モードに応じてフィルタ係数を切り替えて、隣接画素のフィルタ処理を行う。あるいは、画像デコーダ1456は、画像復号装置501および601の場合と同様に、on/offフラグに基づき、イントラ予測に先立って行われる隣接画素のフィルタ処理をする、しないを制御する。これにより、符号化効率を向上することができる。
The
このとき、携帯電話機1400は、同時に、音声コーデック1459において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ1417より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
At this time, the
なお、電子メールの場合と同様に、携帯電話機1400は、受信した簡易ホームページ等にリンクされたデータを、記録再生部1462を介して、記憶部1423に記録する(記憶させる)ことも可能である。
As in the case of e-mail, the
また、携帯電話機1400は、主制御部1450において、撮像されてCCDカメラ1416で得られた2次元コードを解析し、2次元コードに記録された情報を取得することができる。
Further, the
さらに、携帯電話機1400は、赤外線通信部1481で赤外線により外部の機器と通信することができる。
Further, the
携帯電話機1400は、画像エンコーダ1453として画像符号化装置51、351、451、または551を用いることにより、例えばCCDカメラ1416において生成された画像データを符号化して生成する符号化データの符号化効率を向上させることができる。結果として、携帯電話機1400は、符号化効率のよい符号化データ(画像データ)を、他の装置に提供することができる。
The
また、携帯電話機1400は、画像デコーダ1456として画像復号装置151、401、501、または601を用いることにより、精度の高い予測画像を生成することができる。その結果として、携帯電話機1400は、例えば、簡易ホームページにリンクされた動画像ファイルから、より高精細な復号画像を得て、表示することができる。
In addition, the
なお、以上において、携帯電話機1400が、CCDカメラ1416を用いるように説明したが、このCCDカメラ1416の代わりに、CMOS(Complementary Metal Oxide Semiconductor)を用いたイメージセンサ(CMOSイメージセンサ)を用いるようにしてもよい。この場合も、携帯電話機1400は、CCDカメラ1416を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
In the above description, the
また、以上においては携帯電話機1400として説明したが、例えば、PDA(Personal Digital Assistants)、スマートフォン、UMPC(Ultra Mobile Personal Computer)、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機1400と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機1400の場合と同様に、画像符号化装置51、351、451、または551および画像復号装置151、401、501、または601を適用することができる。
In the above description, the
図48は、本発明を適用した画像符号化装置および画像復号装置を用いるハードディスクレコーダの主な構成例を示すブロック図である。 FIG. 48 is a block diagram showing a main configuration example of a hard disk recorder using an image encoding device and an image decoding device to which the present invention is applied.
図48に示されるハードディスクレコーダ(HDDレコーダ)1500は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号(テレビジョン信号)に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。 A hard disk recorder (HDD recorder) 1500 shown in FIG. 48 receives audio data and video data of a broadcast program included in a broadcast wave signal (television signal) transmitted from a satellite or a ground antenna received by a tuner. This is an apparatus for storing in a built-in hard disk and providing the stored data to the user at a timing according to the user's instruction.
ハードディスクレコーダ1500は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ1500は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
The
さらに、ハードディスクレコーダ1500は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ1560に供給し、モニタ1560の画面にその画像を表示させる。また、ハードディスクレコーダ1500は、モニタ1560のスピーカよりその音声を出力させることができる。
Further, the
ハードディスクレコーダ1500は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ1560に供給し、モニタ1560の画面にその画像を表示させる。また、ハードディスクレコーダ1500は、モニタ1560のスピーカよりその音声を出力させることもできる。
For example, the
もちろん、この他の動作も可能である。 Of course, other operations are possible.
図48に示されるように、ハードディスクレコーダ1500は、受信部1521、復調部1522、デマルチプレクサ1523、オーディオデコーダ1524、ビデオデコーダ1525、およびレコーダ制御部1526を有する。ハードディスクレコーダ1500は、さらに、EPGデータメモリ1527、プログラムメモリ1528、ワークメモリ1529、ディスプレイコンバータ1530、OSD(On Screen Display)制御部1531、ディスプレイ制御部1532、記録再生部1533、D/Aコンバータ1534、および通信部1535を有する。
As shown in FIG. 48, the
また、ディスプレイコンバータ1530は、ビデオエンコーダ1541を有する。記録再生部1533は、エンコーダ1551およびデコーダ1552を有する。
In addition, the
受信部1521は、リモートコントローラ(図示せず)からの赤外線信号を受信し、電気信号に変換してレコーダ制御部1526に出力する。レコーダ制御部1526は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ1528に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部1526は、このとき、ワークメモリ1529を必要に応じて使用する。
The receiving
通信部1535は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部1535は、レコーダ制御部1526により制御され、チューナ(図示せず)と通信し、主にチューナに対して選局制御信号を出力する。
The
復調部1522は、チューナより供給された信号を、復調し、デマルチプレクサ1523に出力する。デマルチプレクサ1523は、復調部1522より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ1524、ビデオデコーダ1525、またはレコーダ制御部1526に出力する。
The
オーディオデコーダ1524は、入力されたオーディオデータを、例えばMPEG方式でデコードし、記録再生部1533に出力する。ビデオデコーダ1525は、入力されたビデオデータを、例えばMPEG方式でデコードし、ディスプレイコンバータ1530に出力する。レコーダ制御部1526は、入力されたEPGデータをEPGデータメモリ1527に供給し、記憶させる。
The
ディスプレイコンバータ1530は、ビデオデコーダ1525またはレコーダ制御部1526より供給されたビデオデータを、ビデオエンコーダ1541により、例えばNTSC(National Television Standards Committee)方式のビデオデータにエンコードし、記録再生部1533に出力する。また、ディスプレイコンバータ1530は、ビデオデコーダ1525またはレコーダ制御部1526より供給されるビデオデータの画面のサイズを、モニタ1560のサイズに対応するサイズに変換する。ディスプレイコンバータ1530は、画面のサイズが変換されたビデオデータを、さらに、ビデオエンコーダ1541によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部1532に出力する。
The
ディスプレイ制御部1532は、レコーダ制御部1526の制御のもと、OSD(On Screen Display)制御部1531が出力したOSD信号を、ディスプレイコンバータ1530より入力されたビデオ信号に重畳し、モニタ1560のディスプレイに出力し、表示させる。
The
モニタ1560にはまた、オーディオデコーダ1524が出力したオーディオデータが、D/Aコンバータ1534によりアナログ信号に変換されて供給されている。モニタ1560は、このオーディオ信号を内蔵するスピーカから出力する。
The
記録再生部1533は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
The recording /
記録再生部1533は、例えば、オーディオデコーダ1524より供給されるオーディオデータを、エンコーダ1551によりMPEG方式でエンコードする。また、記録再生部1533は、ディスプレイコンバータ1530のビデオエンコーダ1541より供給されるビデオデータを、エンコーダ1551によりMPEG方式でエンコードする。記録再生部1533は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部1533は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
For example, the recording / reproducing
記録再生部1533は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部1533は、デコーダ1552によりオーディオデータおよびビデオデータをMPEG方式でデコードする。記録再生部1533は、復号したオーディオデータをD/A変換し、モニタ1560のスピーカに出力する。また、記録再生部1533は、復号したビデオデータをD/A変換し、モニタ1560のディスプレイに出力する。
The recording / reproducing
レコーダ制御部1526は、受信部1521を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ1527から最新のEPGデータを読み出し、それをOSD制御部1531に供給する。OSD制御部1531は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部1532に出力する。ディスプレイ制御部1532は、OSD制御部1531より入力されたビデオデータをモニタ1560のディスプレイに出力し、表示させる。これにより、モニタ1560のディスプレイには、EPG(電子番組ガイド)が表示される。
The
また、ハードディスクレコーダ1500は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
The
通信部1535は、レコーダ制御部1526に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部1526に供給する。レコーダ制御部1526は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部1533に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部1526および記録再生部1533が、必要に応じて再エンコード等の処理を行うようにしてもよい。
The
また、レコーダ制御部1526は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ1530に供給する。ディスプレイコンバータ1530は、ビデオデコーダ1525から供給されるビデオデータと同様に、レコーダ制御部1526から供給されるビデオデータを処理し、ディスプレイ制御部1532を介してモニタ1560に供給し、その画像を表示させる。
The
また、この画像表示に合わせて、レコーダ制御部1526が、復号したオーディオデータを、D/Aコンバータ1534を介してモニタ1560に供給し、その音声をスピーカから出力させるようにしてもよい。
In accordance with the image display, the
さらに、レコーダ制御部1526は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ1527に供給する。
Further, the
以上のようなハードディスクレコーダ1500は、ビデオデコーダ1525、デコーダ1552、およびレコーダ制御部1526に内蔵されるデコーダとして画像復号装置151、401、501、または601を用いる。したがって、ビデオデコーダ1525、デコーダ1552、およびレコーダ制御部1526に内蔵されるデコーダは、画像復号装置151および401の場合と同様に、イントラ予測に先立ち、量子化パラメータや予測モードに応じてフィルタ係数を切り替えて、隣接画素のフィルタ処理を行う。あるいは、ビデオデコーダ1525、デコーダ1552、およびレコーダ制御部1526に内蔵されるデコーダは、画像復号装置501および601の場合と同様に、on/offフラグに基づき、イントラ予測に先立って行われる隣接画素のフィルタ処理をする、しないを制御する。これにより、符号化効率を向上することができる。
The
したがって、ハードディスクレコーダ1500は、精度の高い予測画像を生成することができる。その結果として、ハードディスクレコーダ1500は、例えば、チューナを介して受信されたビデオデータの符号化データや、記録再生部1533のハードディスクから読み出されたビデオデータの符号化データや、ネットワークを介して取得したビデオデータの符号化データから、より高精細な復号画像を得て、モニタ1560に表示させることができる。
Therefore, the
また、ハードディスクレコーダ1500は、エンコーダ1551として画像符号化装置51、351、451、または551を用いる。したがって、エンコーダ1551は、画像符号化装置51および351の場合と同様に、イントラ予測に先立ち、量子化パラメータや予測モードに応じてフィルタ係数を設定して、隣接画素のフィルタ処理を行う。あるいは、エンコーダ1551は、画像符号化装置451および551の場合と同様に、イントラ予測に先立って行われる隣接画素のフィルタ処理をする、しないを制御する。これにより、符号化効率を向上することができる。
The
したがって、ハードディスクレコーダ1500は、例えば、ハードディスクに記録する符号化データの符号化効率を向上させることができる。その結果として、ハードディスクレコーダ1500は、ハードディスクの記憶領域をより効率よく使用することができる。
Therefore, the
なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ1500について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ1500の場合と同様に、画像符号化装置51、351、451、および551並びに画像復号装置151、401、501、および601を適用することができる。
In the above description, the
図49は、本発明を適用した画像復号装置および画像符号化装置を用いるカメラの主な構成例を示すブロック図である。 FIG. 49 is a block diagram illustrating a main configuration example of a camera using an image decoding device and an image encoding device to which the present invention has been applied.
図49に示されるカメラ1600は、被写体を撮像し、被写体の画像をLCD1616に表示させたり、それを画像データとして、記録メディア1633に記録したりする。
The
レンズブロック1611は、光(すなわち、被写体の映像)を、CCD/CMOS1612に入射させる。CCD/CMOS1612は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部1613に供給する。
The
カメラ信号処理部1613は、CCD/CMOS1612から供給された電気信号を、Y,Cr,Cbの色差信号に変換し、画像信号処理部1614に供給する。画像信号処理部1614は、コントローラ1621の制御の下、カメラ信号処理部1613から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ1641で例えばMPEG方式により符号化したりする。画像信号処理部1614は、画像信号を符号化して生成した符号化データを、デコーダ1615に供給する。さらに、画像信号処理部1614は、オンスクリーンディスプレイ(OSD)1620において生成された表示用データを取得し、それをデコーダ1615に供給する。
The camera
以上の処理において、カメラ信号処理部1613は、バス1617を介して接続されるDRAM(Dynamic Random Access Memory)1618を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM1618に保持させる。
In the above processing, the camera
デコーダ1615は、画像信号処理部1614から供給された符号化データを復号し、得られた画像データ(復号画像データ)をLCD1616に供給する。また、デコーダ1615は、画像信号処理部1614から供給された表示用データをLCD1616に供給する。LCD1616は、デコーダ1615から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
The
オンスクリーンディスプレイ1620は、コントローラ1621の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス1617を介して画像信号処理部1614に出力する。
Under the control of the
コントローラ1621は、ユーザが操作部1622を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス1617を介して、画像信号処理部1614、DRAM1618、外部インタフェース1619、オンスクリーンディスプレイ1620、およびメディアドライブ1623等を制御する。FLASH ROM1624には、コントローラ1621が各種処理を実行する上で必要なプログラムやデータ等が格納される。
The
例えば、コントローラ1621は、画像信号処理部1614やデコーダ1615に代わって、DRAM1618に記憶されている画像データを符号化したり、DRAM1618に記憶されている符号化データを復号したりすることができる。このとき、コントローラ1621は、画像信号処理部1614やデコーダ1615の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部1614やデコーダ1615が対応していない方式により符号化・復号処理を行うようにしてもよい。
For example, the
また、例えば、操作部1622から画像印刷の開始が指示された場合、コントローラ1621は、DRAM1618から画像データを読み出し、それを、バス1617を介して外部インタフェース1619に接続されるプリンタ1634に供給して印刷させる。
For example, when the start of image printing is instructed from the
さらに、例えば、操作部1622から画像記録が指示された場合、コントローラ1621は、DRAM1618から符号化データを読み出し、それを、バス1617を介してメディアドライブ1623に装着される記録メディア1633に供給して記憶させる。
Further, for example, when image recording is instructed from the
記録メディア1633は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア1633は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
The
また、メディアドライブ1623と記録メディア1633を一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
Further, the media drive 1623 and the
外部インタフェース1619は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ1634と接続される。また、外部インタフェース1619には、必要に応じてドライブ1631が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア1632が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM1624にインストールされる。
The
さらに、外部インタフェース1619は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ1621は、例えば、操作部1622からの指示に従って、DRAM1618から符号化データを読み出し、それを外部インタフェース1619から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ1621は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース1619を介して取得し、それをDRAM1618に保持させたり、画像信号処理部1614に供給したりすることができる。
Furthermore, the
以上のようなカメラ1600は、デコーダ1615として画像復号装置151、401、501、または601を用いる。したがって、デコーダ1615は、画像復号装置151および401の場合と同様に、イントラ予測に先立ち、量子化パラメータや予測モードに応じてフィルタ係数を切り替えて、隣接画素のフィルタ処理を行う。あるいは、デコーダ1615は、画像復号装置501および601の場合と同様に、on/offフラグに基づき、イントラ予測に先立って行われる隣接画素のフィルタ処理をする、しないを制御する。これにより、符号化効率を向上することができる。
The
したがって、カメラ1600は、精度の高い予測画像を生成することができる。その結果として、カメラ1600は、例えば、CCD/CMOS1612において生成された画像データや、DRAM1618または記録メディア1633から読み出されたビデオデータの符号化データや、ネットワークを介して取得したビデオデータの符号化データから、より高精細な復号画像を得て、LCD1616に表示させることができる。
Therefore, the
また、カメラ1600は、エンコーダ1641として画像符号化装置51、351、451、または551を用いる。したがって、エンコーダ1641は、画像符号化装置51および351の場合と同様に、イントラ予測に先立ち、量子化パラメータや予測モードに応じてフィルタ係数を設定して、隣接画素のフィルタ処理を行う。あるいは、エンコーダ1641は、画像符号化装置451および551の場合と同様に、イントラ予測に先立って行われる隣接画素のフィルタ処理をする、しないを制御する。これにより、符号化効率を向上することができる。
The
したがって、カメラ1600は、例えば、ハードディスクに記録する符号化データの符号化効率を向上させることができる。その結果として、カメラ1600は、DRAM1618や記録メディア1633の記憶領域をより効率よく使用することができる。
Therefore, the
なお、コントローラ1621が行う復号処理に画像復号装置151、401、501、または601の復号方法を適用するようにしてもよい。同様に、コントローラ1621が行う符号化処理に画像符号化装置51、351、451、または551の符号化方法を適用するようにしてもよい。
Note that the decoding method of the
また、カメラ1600が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
The image data captured by the
もちろん、画像符号化装置51、351、451、または551および画像復号装置151、401、501、または601は、上述した装置以外の装置やシステムにも適用可能である。
Of course, the
51 画像符号化装置, 66 可逆符号化部, 74 イントラ予測部, 75 隣接画素内挿フィルタ切替部, 81 隣接画素設定部, 82 予測画像生成部, 83 最適予測モード判定部, 91 予測モードバッファ, 92 量子化パラメータバッファ, 93 ローパスフィルタ設定部, 94 フィルタ係数メモリ, 111 隣接画素設定部, 112 予測画像生成部, 113 最適予測モード判定部, 121 予測モードバッファ, 122 最適フィルタ算出部, 93 ローパスフィルタ設定部, 151 画像復号装置, 162 可逆復号部, 171 イントラ予測部, 172 隣接画素内挿フィルタ切替部, 181 予測画像生成部, 182 隣接画素設定部, 191 予測モードバッファ, 192 量子化パラメータバッファ, 193 ローパスフィルタ設定部, 194 フィルタ係数メモリ, 202 ローパスフィルタ設定部, 251 学習装置, 261 隣接内挿フィルタ算出部, 271 フィルタ係数記憶部, 351 画像符号化装置, 361 2次予測部, 362 隣接画素内挿フィルタ切替部, 401 画像復号装置, 411 2次予測部, 412 隣接画素内挿フィルタ切替部, 451 画像符号化装置, 461 隣接画素内挿フィルタ制御部, 501 画像復号装置, 511 隣接画素内挿フィルタ制御部, 551 画像符号化装置, 561 隣接画素内挿フィルタ制御部, 601 画像復号装置, 611 隣接画素内挿フィルタ制御部 51 image encoding device, 66 lossless encoding unit, 74 intra prediction unit, 75 adjacent pixel interpolation filter switching unit, 81 adjacent pixel setting unit, 82 predicted image generation unit, 83 optimal prediction mode determination unit, 91 prediction mode buffer, 92 quantization parameter buffer, 93 low-pass filter setting unit, 94 filter coefficient memory, 111 adjacent pixel setting unit, 112 prediction image generation unit, 113 optimal prediction mode determination unit, 121 prediction mode buffer, 122 optimal filter calculation unit, 93 low-pass filter Setting unit, 151 image decoding device, 162 lossless decoding unit, 171 intra prediction unit, 172 adjacent pixel interpolation filter switching unit, 181 prediction image generation unit, 182 adjacent pixel setting unit, 191 prediction mode buffer, 192 quantization parameter bar Buffer, 193 low-pass filter setting unit, 194 filter coefficient memory, 202 low-pass filter setting unit, 251 learning device, 261 adjacent interpolation filter calculation unit, 271 filter coefficient storage unit, 351 image encoding device, 361 secondary prediction unit, 362 Adjacent pixel interpolation filter switching unit, 401 image decoding device, 411 secondary prediction unit, 412 Adjacent pixel interpolation filter switching unit, 451 image encoding device, 461 Adjacent pixel interpolation filter control unit, 501 Image decoding device, 511 Adjacent Pixel interpolation filter control unit, 551 Image encoding device, 561 Adjacent pixel interpolation filter control unit, 601 Image decoding device, 611 Adjacent pixel interpolation filter control unit
Claims (4)
前記隣接画素にフィルタ処理を行うか否かを識別するフラグを設定する設定部と、
前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行うイントラ予測部と、
前記イントラ予測部により生成された予測画像を用いて前記画像を符号化して、前記設定部により設定されたフラグを含むビットストリームを生成する符号化部と
を備える画像処理装置。 Using the filter according to the block size at the time of performing intra prediction with respect to the pixel of the target block which is the target of the encoding process for the image to be encoded, the intra prediction is performed on the pixel of the target block. A control unit that controls the filtering process so as to select whether to perform the filtering process on the adjacent pixel that is referred to when performing the filtering process or not to perform the filtering process on the adjacent pixel;
A setting unit for setting a flag for identifying whether or not to perform filtering on the adjacent pixels;
An intra prediction unit that performs intra prediction on the pixels of the target block using the adjacent pixels;
An image processing apparatus comprising: an encoding unit that encodes the image using the prediction image generated by the intra prediction unit and generates a bitstream including a flag set by the setting unit.
符号化処理する画像を対象として、符号化処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて、前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理を制御し、
前記隣接画素にフィルタ処理を行うか否かを識別するフラグを設定し、
前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行い、
生成された予測画像を用いて前記画像を符号化して、設定されたフラグを含むビットストリームを生成する
画像処理方法。 The image processing device
Using the filter according to the block size at the time of performing intra prediction with respect to the pixel of the target block which is the target of the encoding process for the image to be encoded, the intra prediction is performed on the pixel of the target block. Controlling the filtering process so as to select whether to perform the filtering process on the adjacent pixel to be referred to when performing the filtering process or not to perform the filtering process on the adjacent pixel;
Set a flag for identifying whether to perform filtering on the adjacent pixels,
Intra prediction is performed on the pixel of the target block using the adjacent pixel,
An image processing method for generating a bitstream including a set flag by encoding the image using a generated predicted image.
前記取得部により取得されたフラグに応じて、前記隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理を制御する制御部と、
前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行い、予測画像を生成するイントラ予測部と、
前記イントラ予測部により生成された予測画像を用いて、前記ビットストリームを復号処理する復号部と
を備える画像処理装置。 Filtering adjacent pixels to be referred to when performing intra prediction on the pixels of the target block using a filter according to the block size when performing intra prediction on the pixels of the target block to be decoded An acquisition unit for acquiring the flag from a bitstream including a flag for identifying whether or not to perform;
A control unit that controls the filtering process so as to select whether to perform the filtering process on the adjacent pixel or not to perform the filtering process on the adjacent pixel according to the flag acquired by the acquisition unit;
An intra prediction unit that performs intra prediction on the pixels of the target block using the adjacent pixels and generates a predicted image;
An image processing apparatus comprising: a decoding unit that decodes the bitstream using a prediction image generated by the intra prediction unit.
復号処理の対象となる対象ブロックの画素に対してイントラ予測を行う際のブロックサイズに応じたフィルタを用いて前記対象ブロックの画素に対してイントラ予測を行う際に参照する隣接画素にフィルタ処理を行うか否かを識別するフラグを含むビットストリームから、前記フラグを取得し、
取得されたフラグに応じて、前記隣接画素にフィルタ処理を行うか、前記隣接画素にフィルタ処理を行わないかを選択するように、前記フィルタ処理を制御し、
前記隣接画素を用いて、前記対象ブロックの画素に対してイントラ予測を行い、予測画像を生成し、
生成された予測画像を用いて、前記ビットストリームを復号処理する
画像処理方法。 The image processing device
Filtering adjacent pixels to be referred to when performing intra prediction on the pixels of the target block using a filter according to the block size when performing intra prediction on the pixels of the target block to be decoded Obtaining the flag from a bitstream containing a flag identifying whether or not to perform,
According to the acquired flag, the filtering process is controlled so as to select whether to perform the filtering process on the adjacent pixel or not to perform the filtering process on the adjacent pixel,
Using the adjacent pixels, perform intra prediction on the pixels of the target block to generate a predicted image,
An image processing method for decoding the bitstream using a generated predicted image.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015229645A JP6048774B2 (en) | 2009-07-01 | 2015-11-25 | Image processing apparatus and method |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009156563 | 2009-07-01 | ||
JP2009156563 | 2009-07-01 | ||
JP2015229645A JP6048774B2 (en) | 2009-07-01 | 2015-11-25 | Image processing apparatus and method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014153962A Division JP5854296B2 (en) | 2009-07-01 | 2014-07-29 | Image processing apparatus and method, program, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016042736A JP2016042736A (en) | 2016-03-31 |
JP6048774B2 true JP6048774B2 (en) | 2016-12-21 |
Family
ID=47676305
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012194913A Active JP5429582B2 (en) | 2009-07-01 | 2012-09-05 | Image processing apparatus and method |
JP2014003300A Active JP5733587B2 (en) | 2009-07-01 | 2014-01-10 | Image processing apparatus and method, program, and recording medium |
JP2014003301A Pending JP2014103687A (en) | 2009-07-01 | 2014-01-10 | Image processing device and method, and recording medium |
JP2014153962A Active JP5854296B2 (en) | 2009-07-01 | 2014-07-29 | Image processing apparatus and method, program, and recording medium |
JP2015229645A Active JP6048774B2 (en) | 2009-07-01 | 2015-11-25 | Image processing apparatus and method |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012194913A Active JP5429582B2 (en) | 2009-07-01 | 2012-09-05 | Image processing apparatus and method |
JP2014003300A Active JP5733587B2 (en) | 2009-07-01 | 2014-01-10 | Image processing apparatus and method, program, and recording medium |
JP2014003301A Pending JP2014103687A (en) | 2009-07-01 | 2014-01-10 | Image processing device and method, and recording medium |
JP2014153962A Active JP5854296B2 (en) | 2009-07-01 | 2014-07-29 | Image processing apparatus and method, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (5) | JP5429582B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6065613B2 (en) * | 2013-01-29 | 2017-01-25 | 富士通株式会社 | Video encoding device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3165296B2 (en) * | 1992-12-25 | 2001-05-14 | 三菱電機株式会社 | Inter-frame coding processing method, inter-frame coding processing method, and coding control method |
DE10158658A1 (en) * | 2001-11-30 | 2003-06-12 | Bosch Gmbh Robert | Method for directional prediction of an image block |
JP2007060689A (en) * | 2001-11-30 | 2007-03-08 | Ntt Docomo Inc | Moving picture coding apparatus, moving picture decoding apparatus, moving picture coding method, moving picture decoding method, program, and compute-readable recording medium containing the program |
US7289562B2 (en) * | 2003-08-01 | 2007-10-30 | Polycom, Inc. | Adaptive filter to improve H-264 video quality |
JP2007150913A (en) * | 2005-11-29 | 2007-06-14 | Matsushita Electric Ind Co Ltd | Image encoding device |
EP2001239B1 (en) * | 2006-03-27 | 2017-09-13 | Sun Patent Trust | Picture coding apparatus and picture decoding apparatus |
US8942505B2 (en) * | 2007-01-09 | 2015-01-27 | Telefonaktiebolaget L M Ericsson (Publ) | Adaptive filter representation |
KR101591825B1 (en) * | 2008-03-27 | 2016-02-18 | 엘지전자 주식회사 | A method and an apparatus for encoding or decoding of a video signal |
-
2012
- 2012-09-05 JP JP2012194913A patent/JP5429582B2/en active Active
-
2014
- 2014-01-10 JP JP2014003300A patent/JP5733587B2/en active Active
- 2014-01-10 JP JP2014003301A patent/JP2014103687A/en active Pending
- 2014-07-29 JP JP2014153962A patent/JP5854296B2/en active Active
-
2015
- 2015-11-25 JP JP2015229645A patent/JP6048774B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014103686A (en) | 2014-06-05 |
JP2016042736A (en) | 2016-03-31 |
JP5854296B2 (en) | 2016-02-09 |
JP5733587B2 (en) | 2015-06-10 |
JP2013009418A (en) | 2013-01-10 |
JP2014225910A (en) | 2014-12-04 |
JP2014103687A (en) | 2014-06-05 |
JP5429582B2 (en) | 2014-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5597968B2 (en) | Image processing apparatus and method, program, and recording medium | |
WO2011018965A1 (en) | Image processing device and method | |
WO2010035731A1 (en) | Image processing apparatus and image processing method | |
WO2010095559A1 (en) | Image processing device and method | |
WO2010035734A1 (en) | Image processing device and method | |
JPWO2010095560A1 (en) | Image processing apparatus and method | |
WO2010035732A1 (en) | Image processing apparatus and image processing method | |
WO2010101063A1 (en) | Image processing device and method | |
JP6048774B2 (en) | Image processing apparatus and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161025 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161027 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161109 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6048774 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |