JP2013176168A - 画像符号化装置および画像復号装置 - Google Patents

画像符号化装置および画像復号装置 Download PDF

Info

Publication number
JP2013176168A
JP2013176168A JP2013124268A JP2013124268A JP2013176168A JP 2013176168 A JP2013176168 A JP 2013176168A JP 2013124268 A JP2013124268 A JP 2013124268A JP 2013124268 A JP2013124268 A JP 2013124268A JP 2013176168 A JP2013176168 A JP 2013176168A
Authority
JP
Japan
Prior art keywords
prediction
encoding
intra
mode
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013124268A
Other languages
English (en)
Inventor
Shunichi Sekiguchi
俊一 関口
Shuichi Yamagishi
秀一 山岸
Yoshimi Moriya
芳美 守屋
Etsuhisa Yamada
悦久 山田
Kotaro Asai
光太郎 浅井
Atsumichi Murakami
篤道 村上
Yuichi Izuhara
優一 出原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2013124268A priority Critical patent/JP2013176168A/ja
Publication of JP2013176168A publication Critical patent/JP2013176168A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Color Television Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】色成分間にサンプル比の区別のない動画像信号を符号化するにあたり、最適性を高めた符号化方法等の提供。
【解決手段】入力色成分信号を、符号化ブロックサイズ指示情報によって定まるサイズのブロックに分割して、前記符号化単位領域の信号を生成するブロック分割部と、予測画像生成方法を示すひとつ以上の予測モードに対応して前記符号化単位領域の信号に対する予測画像を生成する予測画像生成部と、該予測画像生成部から出力される予測画像の予測効率に応じて符号化に用いる予測モードを判定する判定部と、該判定部によって定められた予測モードに対応する予測画像と前記入力色成分信号との差分を符号化する予測誤差符号化部と、前記予測モードと予測誤差符号化部の出力とを可変長符号化する符号化部とを備える。
【選択図】図1

Description

本発明は、画像圧縮符号化技術や圧縮画像データ伝送技術等に用いられるデジタル画像信号符号化装置、デジタル画像信号復号装置、デジタル画像信号符号化方法、およびデジタル画像信号復号方法に関する。
従来、MPEGやITU-T H.26xなどの国際標準映像符号化方式では、主として4:2:0フォーマットと呼ばれる標準化された入力信号フォーマットの使用を前提としてきた。4:2:0とは、RGBなどのカラー動画像信号を輝度成分(Y)と2つの色差成分(Cb、Cr)に変換し、水平・垂直ともに色差成分のサンプル数を輝度成分の半分に削減したフォーマットである。色差成分は輝度成分に比べて視認性が落ちることから、MPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格(以下、AVC)(非特許文献1)のような従来の国際標準映像符号化方式では、このように符号化を行う前に色差成分のダウンサンプルを行うことで符号化対象の原情報量を削減しておくことを前提としていた。一方、近年のビデオディスプレイの高解像度化、高階調化に伴い、また、デジタルシネマなどのコンテンツ制作時の色表現を上映時に正確に再現することを目的として、色差成分をダウンサンプルすることなく輝度成分と同一サンプルで符号化する方式についても検討が行われている。輝度成分と色差成分とがまったく同一のサンプル数のフォーマットは4:4:4フォーマットと呼ばれる。MPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格(以下、AVC)では、4:4:4フォーマットを入力とする符号化方式として「ハイ4:4:4プロファイル」が策定されている。この目的に適した方式として、JPEG2000(ISO/IEC 15444)規格(非特許文献2)のような標準方式がある。図10に示すように、従来の4:2:0フォーマットが色差成分のダウンサンプルを前提としたためにY、Cb、Crという色空間定義にのみ限定されたのに対し、4:4:4フォーマットでは色成分間にサンプル比の区別がないため、Y、Cb、Crのほか、R,G,Bを直接使用したり、その他複数の色空間定義を利用することが可能である。4:2:0フォーマットを用いた映像符号化方式では、その色空間はY、Cb、Crに決まっていたため符号化処理中に色空間の種別を考慮する必要はなかったが、上記のAVCハイ4:4:4プロファイルにおいては色空間定義が符号化処理そのものに影響を与える方式になっている。一方で、現在のハイ4:4:4プロファイルは、Y、Cb、Cr空間で定義された4:2:0フォーマットを符号化対象とするその他のプロファイルとの互換性を考慮するため、4:4:4フォーマットの圧縮効率を最適とする設計になっているとはいえない。
MPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格 JPEG2000(ISO/IEC 15444)規格
たとえば、AVCの4:2:0フォーマットを符号化対象とするハイ4:2:0プロファイルでは、輝度成分16x16画素からなるマクロブロック領域において、対応する色差成分はCb、Crとも各8x8画素ブロックとなる。ハイ4:2:0プロファイルにおける動き補償予測では、輝度成分に対してのみ動き補償予測の単位となるブロックサイズ情報と予測に用いる参照画像情報、各ブロックごとの動きベクトル情報を多重化し、色差成分は輝度成分と同じ情報を用いて動き補償予測を行うことになっている。このような方式は、4:2:0フォーマットが画像の構造(テクスチャ)の表現に大きく寄与する輝度成分に比べ色差成分の寄与が小さいという色空間定義の前提のもとでなりたつものである。しかしながら、現在のハイ4:4:4プロファイルは、マクロブロックあたりの色差信号のブロックサイズが16x16画素に拡張された状態においても、4:2:0フォーマットの色差用イントラ予測モードを単純に拡張した方式となっているのみであり、また、4:2:0フォーマットのときと同様、1成分を輝度成分とみなし、1成分の情報のみしか多重化せずに3成分に共通のインター予測モード、参照画像情報および動きベクトル情報で動き補償予測が行われることになっており、画像信号の構造表現に際して各色成分が同等に寄与する4:4:4フォーマットでは必ずしも最適な予測方法とはいえない。
そこで、本発明は、上記従来技術に述べたように、4:4:4フォーマットのような色成分間にサンプル比の区別のない動画像信号を符号化するにあたり、最適性を高めた符号化装置、復号装置、符号化方法、復号方法、およびこれらを実行するプログラムとこれらのプログラムを記録した記録媒体を提供することを目的とする。
本発明にかかわる画像符号化装置は、複数の色成分から構成されるカラー動画像信号を入力して、該カラー動画像信号を各色成分ごとに所定の符号化単位領域に分割して、画面内符号化ないしは動き補償予測符号化を選択的に適用することにより前記カラー動画像信号をデジタル圧縮する画像符号化装置であって、入力色成分信号を、符号化ブロックサイズ指示情報によって定まるサイズのブロックに分割して、前記符号化単位領域の信号を生成するブロック分割部と、予測画像生成方法を示すひとつ以上の予測モードに対応して前記符号化単位領域の信号に対する予測画像を生成する予測画像生成部と、該予測画像生成部から出力される予測画像の予測効率に応じて符号化に用いる予測モードを判定する判定部と、該判定部によって定められた予測モードに対応する予測画像と前記入力色成分信号との差分を符号化する予測誤差符号化部と、前記予測モードと予測誤差符号化部の出力とを可変長符号化する符号化部とを備え、前記符号化部は、前記符号化ブロックサイズ指示情報、ならびに各符号化単位領域ごとの前記予測モード、予測誤差を符号化した情報をビットストリームに多重化するものである。
本発明の画像符号化装置、画像復号装置によれば、Y、Cb、Crなどの固定された色空間に限定せず多様な色空間を利用する符号化を行う場合において、各色成分で用いるイントラ予測モード情報やインター予測モード情報を柔軟に選択できるように構成することができ、色空間の定義が種々に及ぶ場合にも最適な符号化処理を行うことができる。
実施の形態1における映像符号化装置の構成を示す説明図 実施の形態1における映像復号装置の構成を示す説明図 図1の空間予測部2で評価されるイントラ4x4予測モードの予測画像生成方法を説明する説明図 図1の空間予測部2で評価されるイントラ16x16予測モードの予測画像生成方法を説明する説明図 図1の映像符号化装置において行われるイントラ予測モード判定処理の手順を説明するフローチャート 実施の形態1における映像符号化装置から出力されるビデオビットストリームのデータ配列を示す説明図 図2の映像復号装置において行われるイントラ予測復号処理の手順を説明するフローチャート 実施の形態1における映像符号化装置から出力されるビデオビットストリームの別のデータ配列の形態を示す説明図 AVC規格における色差成分対応イントラ予測モードの予測画像生成方法を説明する説明図 従来と現在のマクロブロックを説明する説明図 実施の形態2における映像符号化装置の構成を示す説明図 実施の形態2における映像復号装置の構成を示す説明図 図11の空間予測部2で評価されるイントラ8x8予測モードの予測画像生成方法を説明する説明図 図11の映像符号化装置において行われるイントラ符号化モード判定処理の手順を説明するフローチャート 実施の形態2における映像符号化装置から出力されるビデオビットストリームのデータ配列を示す説明図 実施の形態2における映像符号化装置から出力されるビデオビットストリームの別のデータ配列を示す説明図 図12の映像復号装置において行われるイントラ予測復号処理の手順を説明するフローチャート 実施の形態3におけるC0成分のイントラ予測モード符号化処理のパラメータを説明する説明図 実施の形態3におけるC1成分のイントラ予測モード符号化処理のパラメータを説明する説明図 実施の形態3におけるC2成分のイントラ予測モード符号化処理のパラメータを説明する説明図 実施の形態3におけるイントラ予測モード符号化処理の流れを示すフローチャート 実施の形態3におけるイントラ予測モード符号化処理の別の流れを示すフローチャート 実施の形態3におけるイントラ予測モード復号処理の流れを示すフローチャート 実施の形態4における映像符号化装置から出力されるビデオビットストリームの別のデータ配列を示す説明図 実施の形態5におけるイントラ予測モード符号化処理の別の流れを示すフローチャート 実施の形態5におけるテーブル化された予測値設定の規則を示す説明図 実施の形態6における符号化手順を示すフローチャート 実施の形態6におけるCurrIntraPredModeの二値系列構成を示す説明図 実施の形態6におけるCurrIntraPredModeの別の二値系列構成を示す説明図 実施の形態7における映像符号化装置の構成を示す説明図 実施の形態7における映像復号装置の構成を示す説明図 マクロブロックの単位を示す説明図 実施の形態7におけるインター予測モード判定処理の流れを示すフローチャート 実施の形態7における映像符号化装置から出力されるビデオストリームのデータ配列を示す説明図 実施の形態7における可変長復号部25で行われる処理の流れを示すフローチャート 実施の形態7における映像符号化装置から出力されるビデオストリームの別のデータ配列を示す説明図 実施の形態7における映像符号化装置から出力されるビデオストリームの別のデータ配列を示す説明図 実施の形態8におけるインター予測モード判定処理の流れを示すフローチャート 実施の形態8におけるマクロブロックのレベルにおけるビットストリームのデータ配列を示す説明図 実施の形態8におけるインター予測画像生成処理の流れを示すフローチャート 実施の形態8におけるマクロブロックのレベルにおけるビットストリームの別のデータ配列を示す説明図 実施の形態8におけるマクロブロックのレベルにおけるビットストリームの別のデータ配列を示す説明図 実施の形態9におけるインター予測モード判定処理の流れを示すフローチャート 実施の形態9におけるインター予測画像生成処理の流れを示すフローチャート 動きベクトル符号化部の構成を示す説明図 動きベクトル符号化部の動作を示す説明図 動きベクトル復号部の構成を示す説明図 ビットストリームシンタックスの様子を示す説明図 実施の形態11におけるマクロブロック符号化データの構成を示す説明図 実施の形態11における図49中のCn成分ヘッダ情報の符号化データの詳細構成を示す説明図 実施の形態11におけるマクロブロック符号化データの別の構成を示す説明図 実施の形態11におけるビットストリームの構成を示す説明図 実施の形態11におけるスライスの構成を示す説明図 実施の形態12における可変長符号化部11の算術符号化処理に関わる内部構成を示す説明図 実施の形態12における可変長符号化部11の算術符号化処理の流れを示すフローチャート 実施の形態12における図55中のステップS162の処理の詳細な流れを示す説明図 コンテクストモデル(ctx)の概念を示す説明図 マクロブロックの動きベクトルに関するコンテクストモデルの例を示す説明図 実施の形態12における可変長復号部25の算術復号処理に関わる内部構成を示す説明図 実施の形態12における可変長復号部25の算術復号処理の流れを示すフローチャート 実施の形態12におけるコンテクストモデル11fを示す説明図 実施の形態12におけるカレントマクロブロックのモードの違いを示す説明図 実施の形態13における符号化装置・復号装置の構成を示す説明図 実施の形態13における映像符号化装置の構成を示す説明図 実施の形態13における映像復号装置の構成を示す説明図 実施の形態14における共通符号化処理を示す説明図 実施の形態14における独立符号化処理を示す説明図 実施の形態14の符号化装置・復号装置におけるピクチャ間の時間方向の動き予測参照関係を示す説明図 実施の形態14の符号化装置で生成され実施の形態14の復号装置が入力・復号処理の対象とするビットストリームの構造の一例を示す説明図 共通符号化処理、独立符号化処理それぞれの場合のスライスデータのビットストリーム構成を示す説明図 実施の形態14の符号化装置の概略構成を示す説明図 符号化装置側での処理遅延を小さくする様子を示す説明図 第1のピクチャ符号化部の内部構成を示す説明図 第2のピクチャ符号化部の内部構成を示す説明図 実施の形態14の復号装置の概略構成を示す説明図 第1のピクチャ復号部の内部構成を示す説明図 第2のピクチャ復号部の内部構成を示す説明図 色空間変換処理を施した第1のピクチャ符号化部の内部構成を示す説明図 色空間変換処理を施した第1のピクチャ符号化部の内部構成を示す説明図 逆色空間変換処理を施した第1のピクチャ符号化部の内部構成を示す説明図 逆色空間変換処理を施した第1のピクチャ符号化部の内部構成を示す説明図 従来のYUV4:2:0フォーマットのビットストリームに含まれるマクロブロックヘッダ情報の符号化データの構成を示す説明図 従来のYUV4:2:0フォーマットのビットストリームに対する互換性を確保する第1のピクチャ復号部の予測部461の内部構成を示す説明図 実施の形態15における多重化する符号化データのビットストリームの構成を示す説明図 AUD NALユニットで始まるアクセスユニット内のピクチャデータが符号化される際のピクチャ符号化タイプの情報を示す説明図 実施の形態15における多重化する符号化データのビットストリームの構成を示す説明図 実施の形態16の符号化装置の概略構成を示す説明図 ピクチャ符号化部の内部構成を示す説明図 色差成分ごとに異なるブロックサイズを用いることを示す説明図 マクロブロックの単位を示す説明図 ピクチャ符号化部からの出力であるビデオストリームのデータ配列を示す説明図 実施の形態16の復号装置の概略構成を示す説明図 復号部の内部構成を示す説明図 半画素予測画素の生成方法を示す説明図 1/4画素MC時の半画素予測画素の生成方法の水平処理のみを示す説明図 実施の形態17の符号化装置の概略構成を示す説明図 ピクチャ符号化部からの出力であるビデオストリームのデータ配列を示す説明図 実施の形態17の復号装置の概略構成を示す説明図
実施の形態1.
本実施の形態1では、4:4:4フォーマットで入力される映像フレームを16×16画素の矩形領域(マクロブロック)に均等分割した単位でフレーム内に閉じた符号化を行う符号化装置、および対応する復号装置について説明する。また、本符号化装置、復号装置は非特許文献1であるMPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格で採用される符号化方式をベースとして、本発明に固有の特徴を付与したものとする。なお、以下、すべての実施の形態において、マクロブロックはフレーム画像の16x16画素に限定する必要はなく、例えばインタレース信号の場合のように、フィールドを符号化単位の画面とするケースでフィールド画像の16x16画素ブロックをマクロブロックとしてもよいし、フレーム画像としてマクロブロック符号化を行うか、フィールド画像としてマクロブロック符号化を行うかに応じて適応的にマクロブロックのブロックサイズを変更しながら符号化するような構成を伴っていてもよい。
図1に、本実施の形態1における映像符号化装置の構成を、図2に本実施の形態1における映像復号装置の構成を示す。図2において、図1の符号化装置の構成要素と同じ番号が付されている要素は同一の要素であることを示す。
以下、これらの図に基づいて符号化装置ならびに復号装置全体の動作と、本実施の形態1の特徴的な動作であるイントラ予測モード判定処理およびイントラ予測復号処理について説明する。
1.符号化装置の動作概要
図1の符号化装置において、入力映像信号1は、個々の映像フレームが4:4:4フォーマットで入力される。入力される映像フレームは、図10に示すように、3つの色成分を同一サイズの16画素×16画素のブロックに分割してまとめたマクロブロック単位で符号化装置に入力されるものとする。
まず、空間予測部2において、メモリ16に格納される局部復号画像15を用いて、該マクロブロックの単位で、各色成分ごとにイントラ予測処理が行われる。メモリは各色成分ごとに3面用意される(本実施の形態では3面として説明するが、設計により適宜変更してよい)。イントラ予測のモードには、図3に示す4画素×4ラインのブロックの単位でその周辺画素を用いた空間予測を行うイントラ4x4予測モード、図4に示す16画素×16ラインのマクロブロックの単位でその周辺画素を用いた空間予測を行うイントラ16x16予測モードがある。
(a)イントラ4x4予測モード
マクロブロック内の輝度信号16×16画素ブロックを4×4画素ブロックで構成される16個のブロックに分割し、図3に示す9つのモードのいずれかを4×4画素ブロック単位に選択する。すでに符号化を終え、局部復号処理されてメモリ16に格納された周囲のブロック(左上、上、右上、左)の画素を予測画像生成に用いる。
Intra4x4_pred_mode = 0: 隣接する上部の画素をそのまま予測画像として使用する。
Intra4x4_pred_mode = 1: 隣接する左部の画素をそのまま予測画像として使用する。
Intra4x4_pred_mode = 2: 隣接する8つの画素の平均値を予測画像として使用する
Intra4x4_pred_mode = 3: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(右45度エッジに対応)。
Intra4x4_pred_mode = 4: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左45度エッジに対応)。
Intra4x4_pred_mode = 5: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左22.5度エッジに対応)。
Intra4x4_pred_mode = 6: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左67.5度エッジに対応)。
Intra4x4_pred_mode = 7: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(右22.5度エッジに対応)。
Intra4x4_pred_mode = 8: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左112.5度エッジに対応)。
イントラ4x4予測モードを選択する場合、マクロブロックあたりのモード情報は16個必要となる。したがって、モード情報自体の符号量を削減するため、モード情報は隣接するブロック間との相関が高いことを利用して、隣接するブロックのモード情報から予測符号化を行う。
(b)イントラ16x16予測モード
マクロブロックサイズに相当する16×16画素ブロックを一度に予測するモードであり、図4に示す4つのモードのいずれかをマクロブロック単位に選択する。イントラ4x4予測モードと同様、すでに符号化を終え、局部復号処理されてメモリ16に格納された周囲のマクロブロック(左上、上、左)の画素を予測画像生成に用いる。
Intra16x16_pred_mode = 0: 上マクロブロックの最下辺の16画素を予測画像として使用する。
Intra16x16_pred_mode = 1: 左マクロブロックの最右辺の16画素を予測画像として使用する。
Intra16x16_pred_mode = 2: 上マクロブロックの最下辺の16画素(図4のA部分)と左マクロブロックの最左辺の16画素(図4のB部分)の合計32画素の平均値を予測画像として使用する。
Intra16x16_pred_mode = 3: 左上のマクロブロックの右下隅の画素、上マクロブロックの最下辺の15画素(白抜き画素を除いた部分)、左マクロブロックの最右辺の15画素(白抜き画素を除いた部分)の合計31画素を用いて所定の演算処理(使用する画素と予測する画素位置に応じた重み付け加算処理)により予測画像を得る。
本実施の形態1における映像符号化装置は、イントラ予測モード共通化識別フラグ23に基づき、3つの色成分に対するイントラ予測処理方法を切り替えることを特徴とする。この点については、下記2で詳しく述べる。
空間予測部2では、図3や図4に示した全モードないしはサブセットに対して予測処理を実行して減算器3により予測差分信号4を得る。予測差分信号4は符号化モード判定部5においてその予測効率が評価され、空間予測部2で実行した予測処理の中から、予測対象のマクロブロックに対して最適な予測効率が得られる予測モードを符号化モード6として出力する。ここで、符号化モード6は、イントラ4x4予測モードを用いるか、イントラ16x16予測モードを用いるかの判別情報(図6のイントラ符号化モードに相当)とともに、予測単位領域あたりで使用する個々の予測モード情報(上記Intra4x4_pred_mode ないしはIntra16x16_pred_mode)も含むものとする。予測単位領域は、イントラ4x4予測モードの場合は4x4画素ブロック、イントラ16x16予測モードの場合は16x16画素ブロックに相当する。符号化モード6の選定にあたっては、符号化制御部19の判断で定まる各符号化モードに対する重み係数20が加味されることもある。符号化モード判定部5において符号化モード6を用いて得られる最適な予測差分信号4は、直交変換部8へ出力される。直交変換部8は入力される予測差分信号4を変換し直交変換係数として量子化部9へ出力する。量子化部9は入力される直交変換係数を、符号化制御部19によって定まる量子化パラメータ21に基づいて量子化を行い、量子化済み変換係数10として可変長符号化部11へ出力する。量子化済み変換係数10は、可変長符号化部11にてハフマン符号化や算術符号化などの手段によりエントロピー符号化される。また、量子化済み変換係数10は逆量子化部12、逆直交変換部13を経て局部復号予測差分信号14へ復元され、符号化モード6に基づいて生成される予測画像7と加算器18で加算することで局部復号画像15が生成される。局部復号画像15は以降のイントラ予測処理に用いるためメモリ16へ格納される。また、可変長符号化部11には、当該マクロブロックに対してデブロッキングフィルタを施すか否かを示すデブロッキングフィルタ制御フラグ24も入力される(空間予測部2で実施される予測処理には、デブロッキングフィルタが施される前の画素データをメモリ16に格納して用いるのでデブロッキングフィルタ処理自体は符号化処理には必要はないが、復号装置側ではデブロッキングフィルタ制御フラグ24の指示によってデブロッキングフィルタを行って最終的な復号画像を得る)。
可変長符号化部11に入力されるイントラ予測モード共通化識別フラグ23、量子化済み変換係数10、符号化モード6、量子化パラメータ21は所定の規則(シンタックス)に従ってビットストリームとして配列・整形され、送信バッファ17へ出力される。送信バッファ17では符号化装置が接続される伝送路の帯域や記録媒体の読み出し速度に合わせてビットストリームを平滑化してビデオストリーム22として出力する。また、送信バッファ17中のビットストリーム蓄積状況に応じて符号化制御部19へフィードバック情報を出力し、以降の映像フレームの符号化における発生符号量を制御する。
2.符号化装置におけるイントラ予測モード判定処理
本実施の形態1の符号化装置の特徴であるイントラ予測モード判定処理について詳述する。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図1の符号化装置における空間予測部2、符号化モード判定部5によって行われる。また、本処理の流れを示すフローチャートを図5に示す。以下、ブロックを構成する3つの色成分の画像データをC0、C1、C2とする。
まず、符号化モード判定部5は、イントラ予測モード共通化識別フラグ23を受け取り、その値に基づいてC0、C1、C2で共通のイントラ予測モードを使用するか否かを判断する(図5のステップS1)。共通化する場合はステップS2以降へ、共通化しない場合はステップS5以降へ進む。
イントラ予測モードをC0、C1、C2で共通化する場合は、符号化モード判定部5は空間予測部2に対して、選択しうるすべてのイントラ4x4予測モードを通知し、空間予測部2はそのすべての予測効率を評価して、C0、C1、C2で共通の最適なイントラ4x4予測モードを選択する(ステップS2)。次いで、符号化モード判定部5は空間予測部2に対して、選択しうるすべてないしは一部のイントラ16x16予測モードを通知し、空間予測部2はそのすべての予測効率を評価して、C0、C1、C2で共通の最適なイントラ16x16予測モードを選択する(ステップS3)。符号化モード判定部5はステップS2、S3で得たモードのうちより予測効率上最適なモードを最終的に選択して(ステップS4)、処理を終了する。
イントラ予測モードをC0、C1、C2で共通化せず、C0、C1、C2でそれぞれ一番よいモードを選択する場合は、符号化モード判定部5は空間予測部2に対して、Ci (i<=0<3)成分で選択しうるすべてないしは一部のイントラ4x4予測モードを通知し、空間予測部2はそのすべての予測効率を評価して、Ci (i<=0<3)成分における最適なイントラ4x4予測モードを選択する(ステップS6)。同様に最適なイントラ16x16予測モードを選択する(ステップS7)。最後にステップS8にてCi (i<=0<3)成分における最適なイントラ予測モードを判定する。
空間予測部2で行われる予測モードの予測効率評価の規範としてはたとえば、
Jm = Dm + λRm(λ:正数)
で与えられるレート・ひずみコストを用いることができる。ここで、Dmはイントラ予測モードmを適用した場合の符号化歪または予測誤差量である。符号化歪とは、イントラ予測モードmを適用して予測誤差を得、予測誤差を変換・量子化した結果から映像を復号して符号化前の信号に対する誤差を計測するものである。予測誤差量は、イントラ予測モードmを適用した場合の予測画像と符号化前の信号との差分を得、その差分の大きさを定量化したもので、たとえば差分絶対値和(Sum of Absolute Distance: SAD)などが用いられる。Rmはイントラ予測モードmを適用した場合の発生符号量である。つまり、Jmはイントラ予測モードmを適用した場合の符号量と劣化度とのトレードオフを規定する値であり、最小のJmを与えるイントラ予測モードmが最適解を与える。
符号化装置がステップS2以降の処理を行った場合、イントラ予測モードの情報は、3つの色成分を含むマクロブロックに対して1つ割り当てられる。一方、ステップS5以降の処理を行った場合は、各色成分に対してそれぞれイントラ予測モード情報が割り当てられる。したがって、マクロブロックに対して割り当てられるイントラ予測モードの情報が異なるため、符号化装置がS2以降の処理過程を行ったか、S5以降の処理過程を行ったかはイントラ予測モード共通化識別フラグ23をビットストリームに多重化して復号装置側で認識できるようにする必要がある。このようなビットストリームのデータ配列を図6に示す。
同図はマクロブロックのレベルにおけるビットストリームのデータ配列を示しており、イントラ符号化モード28はイントラ4x4かイントラ16x16かを判別する情報、基本イントラ予測モード29はイントラ予測モード共通化識別フラグ23が「C0、C1、C2で共通」であることを示す場合は共通イントラ予測モード情報を示し、「C0、C1、C2で共通」でないことを示す場合はC0に対するイントラ予測モード情報を示す。拡張イントラ予測モード30は、イントラ予測モード共通化識別フラグ23が「C0、C1、C2で共通」でないことを示す場合にのみ多重化され、C1、C2に対するイントラ予測モード情報を示す。ついで量子化パラメータ21、量子化済み変換係数10が多重化される。図1における符号化モード6は、上記イントラ符号化モード28とイントラ予測モード(基本・拡張)を総称したものである(図6には図1で可変長符号化部11に入力されているデブロッキングフィルタ制御フラグ24が含まれていないが、本実施の形態1の特徴を説明するために必要な構成要素ではないため割愛している)。
従来の映像符号化標準で採用されてきた4:2:0フォーマットでは、色空間の定義がY、Cb、Crに固定されていたが、4:4:4フォーマットではY、Cb、Crに限定せず多様な色空間を利用することができる。図6のようにイントラ予測モード情報を構成することで、入力映像信号1の色空間の定義が種々に及ぶ場合にも最適な符号化処理を行うことができる。たとえば、色空間がRGBで定義される場合はR、G、Bの各成分には均等に映像テクスチャの構造が残存しているため、共通のイントラ予測モード情報を用いることでイントラ予測モード情報自体の冗長性を削減して符号化効率を高めることができる。一方、Y、Cb、Crで色空間が定義される場合、映像テクスチャの構造はYに集約されるため、必ずしも共通のイントラ予測モードが最適な結果を与えるわけではない。そこで、拡張イントラ予測モード30を適応的に利用することで最適な符号化効率を得ることができる。
3.復号装置の動作概要
図2の復号装置は、図1の符号化装置から出力される図6の配列に従うビデオストリーム22を受信して、3つの色成分が同一サイズ(4:4:4フォーマット)のマクロブロックの単位で復号処理を行い、個々の映像フレームを復元するものとする。
まず、可変長復号部25はストリーム22を入力とし、所定の規則(シンタックス)に従ってストリーム22を解読して、イントラ予測モード共通化識別フラグ23、量子化済み変換係数10、符号化モード6、量子化パラメータ21などの情報を抽出する。量子化済み変換係数10は量子化パラメータ21とともに逆量子化部12へ入力され、逆量子化処理が行われる。ついでその出力が逆直交変換部13へ入力され、局部復号予測差分信号14へ復元される。一方、空間予測部2に対しては符号化モード6とイントラ予測モード共通化識別フラグ23が入力され、これらの情報に従って予測画像7を得る。予測画像7を得る具体的な手順については後述する。局部復号予測差分信号14と予測画像7は加算器18により加算され、暫定復号画像15を得る(これは符号化装置における局部復号画像15とまったく同じ信号である)。暫定復号画像15は以降のマクロブロックのイントラ予測に用いられるためメモリ16へ書き戻される。メモリは各色成分ごとに3面用意される(本実施の形態では3面として説明するが、設計により適宜変更してよい)。また、可変長符号化部25によって解読されたデブロッキングフィルタ制御フラグ24の指示に基づいてデブロッキングフィルタ26を暫定復号画像15に対して作用させ、最終的な復号画像27を得る。
4.復号装置におけるイントラ予測復号処理
本実施の形態1の復号装置の特徴であるイントラ予測画像生成処理について詳述する。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図2の復号装置における可変長復号部25、空間予測部2によって行われる。また、本処理の流れを示すフローチャートを図7に示す。
図7のフローチャートのうち、S10〜S14は可変長復号部25において行われる。可変長復号部25への入力であるビデオストリーム22は、図6のデータ配列に従うものとする。ステップS10では図6のデータのうちイントラ符号化モード28がまず復号され、ついでイントラ予測モード共通化識別フラグ23が復号される(ステップS11)。さらに基本イントラ予測モード29が復号される(ステップS12)。ステップS13では、イントラ予測モード共通化識別フラグ23の結果を用いてイントラ予測モードをC0、C1、C2で共通化するかどうかを判断し、共通化の場合はC0、C1、C2のすべてに対して基本イントラ予測モード29を用いることとし、共通化しない場合は基本イントラ予測モード29をC0のモードとして使用し、さらに拡張イントラ予測モード30を復号して(ステップS14)、C1,C2のモード情報を得る。以上の処理過程を経て各色成分の符号化モード6が確定するため、これを空間予測部2へ出力し、ステップS15〜S17にしたがって各色成分のイントラ予測画像を得る。イントラ予測画像を得るプロセスは図3、図4の手順に従うもので図1の符号化装置で行う処理と同じである。
図8に、図6のビットストリームデータ配列のバリエーションを示す。図7では、イントラ予測モード共通化識別フラグ23は、マクロブロックレベルのフラグとしてでなく、スライス、ピクチャ、シーケンスなどの上位データレイヤに位置するフラグとして多重化され、かつ、拡張イントラ予測モード30の符号語を定義する符号テーブルを複数あるうちのいずれかから選択できるよう、拡張イントラ予測モードテーブル指示フラグ31を備えるようにした。これにより、スライス以上の上位レイヤでの切り替えで十分な予測効率が確保できる場合は、マクロブロックレベルでイントラ予測モード共通化識別フラグ23を逐一多重化することなくオーバヘッドビットを削減できる。また、拡張イントラ予測モード30については、拡張イントラ予測モードテーブル指示フラグ31を設けることにより、基本イントラ予測モード29と同一の定義でなく、C1、C2成分に特化した予測モードの定義を選択することが可能となり、色空間の定義に適応した符号化処理を行うことが可能となる。たとえば、AVCの4:2:0フォーマットの符号化では、色差成分(Cb、Cr)に対しては、輝度(Y)とは異なるイントラ予測モードセットが定義されている。4:2:0フォーマットではマクロブロック内の色差信号は8画素×8ラインであり、図9に示す4つのモードのいずれかをマクロブロック単位に選択して復号処理を行う。色差信号はCbとCrの2種類があるが、同じモードを使用する。intra_chroma_pred_mode = 0のDC予測を除いては、図4のイントラ16×16予測モードと同様の予測処理となるが、DC予測では8×8ブロックを4つの4×4ブロックに分割し、それぞれのブロックごとに平均値を求める画素の位置を変更して処理を行う。同図で「a+x, a or x」となっているブロックは、画素aと画素xが共に利用可能な場合にはaとxの8画素、aのみが利用可能な場合にはaの4画素、xのみ利用可能な場合にはxの4画素のみを用いて平均値を求め、予測画像7として使用する。aとxともに利用不可能な場合には値128を予測画像7として使用する。「b or x」となっているブロックは、画像bが利用可能な場合にはbの4画素を、画素xのみが利用可能な場合にはxの4画素を用いて平均値を求める。
このように、色成分の性質に応じてイントラ予測モードのセットに変更を要する場合、図8のシンタックスのような構成により、より最適な符号化効率を得ることができる。
実施の形態2.
本実施の形態2では、4:4:4フォーマットで入力される映像フレームを16×16画素の矩形領域(マクロブロック)に均等分割した単位でフレーム内に閉じた符号化を行う別の符号化装置、および対応する復号装置について説明する。本符号化装置、復号装置は実施の形態1と同様、非特許文献1であるMPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格で採用される符号化方式をベースとして、本発明に固有の特徴を付与したものとする。
図11に、本実施の形態2における映像符号化装置の構成を、図12に本実施の形態2における映像復号装置の構成を示す。図11において、図1の符号化装置の構成要素と同じ番号が付されている要素は同一の要素であることを示す。図12において、図11の符号化装置の構成要素と同じ番号が付されている要素は同一の要素であることを示す。図11における32は変換ブロックサイズ識別フラグであり、33はイントラ符号化モード共通化識別フラグである。
以下、これらの図に基づいて本実施の形態2の符号化装置ならびに復号装置全体の動作と、本実施の形態2の特徴的な動作であるイントラ符号化・予測モード判定処理およびイントラ予測復号処理について説明する。
1.符号化装置の動作概要
図11の符号化装置において、入力映像信号1は、個々の映像フレームが4:4:4フォーマットであって、かつ3つの色成分が図10に示すように同一サイズのマクロブロックに分割してまとめられた単位で符号化装置に入力されるものとする。
空間予測部2においては、メモリ16に格納される局部復号画像15を用いて、該マクロブロックの単位で、各色成分ごとにイントラ予測処理が行われる。イントラ予測のモードには、図3に示す4画素×4ラインのブロックの単位でその周辺画素を用いた空間予測を行うイントラ4x4予測モード、図13に示す8画素×8ラインのブロックの単位でその周辺画素を用いた空間予測を行うイントラ8x8予測モード、図4に示す16画素×16ラインのマクロブロックの単位でその周辺画素を用いた空間予測を行うイントラ16x16予測モードがある。本実施の形態2における符号化装置では、変換ブロックサイズ識別フラグ32の状態に従ってイントラ4x4予測モードとイントラ8x8予測モードとを切り替えて用いる。あるマクロブロックを4x4予測、8x8予測、16x16予測のいずれのイントラ予測モードを用いて符号化するかは、図6と同様にイントラ符号化モードで表現できる。本実施の形態2における符号化装置では、イントラ符号化モードとして、イントラ4x4予測モードかイントラ8x8予測モードかのいずれかを用いて符号化を行うイントラNxN予測符号化モード(Nは4ないしは8)と、イントラ16x16予測モードを用いて符号化を行うイントラ16x16予測符号化モードの2種類を設ける。以下、イントラ符号化モード別に説明を進める。
(a)イントラNxN予測符号化モード
マクロブロック内の輝度信号16x16画素ブロックを4x4画素ブロックで構成される16個のブロックに分割し、各4x4画素ブロックに対して個別に予測モードを選択するイントラ4x4予測モードと、マクロブロック内の輝度信号16x16画素ブロックを8x8画素ブロックで構成される4個のブロックに分割し、各8x8画素ブロックに対して個別に予測モードを選択するイントラ8x8予測モードとを選択的に切り替えながら符号化を行うモードである。イントラ4x4予測モードとイントラ8x8予測モードの切り替えは、変換ブロックサイズ識別フラグ32の状態に連動する。この点は後述する。イントラ4x4予測モードについては、実施の形態1で説明したように、図3に示す9つのモードのいずれかを4x4画素ブロック単位に選択する。すでに符号化を終え、局部復号処理されてメモリ16に格納された周囲のブロック(左上、上、右上、左)の画素を予測画像生成に用いる。
一方、イントラ8x8予測モードは、図13に示す9つのモードのいずれかを8x8画素ブロック単位に選択する。図3との対比で明らかなように、イントラ4x4予測モードの予測方法を8x8画素ブロックに適合するように変更を加えたものである。
Intra8x8_pred_mode = 0: 隣接する上部の画素をそのまま予測画像として使用する。
Intra8x8_pred_mode = 1: 隣接する左部の画素をそのまま予測画像として使用する。
Intra8x8_pred_mode = 2: 隣接する8つの画素の平均値を予測画像として使用する
Intra8x8_pred_mode = 3: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(右45度エッジに対応)。
Intra8x8_pred_mode = 4: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左45度エッジに対応)。
Intra8x8_pred_mode = 5: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左22.5度エッジに対応)。
Intra8x8_pred_mode = 6: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左67.5度エッジに対応)。
Intra8x8_pred_mode = 7: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(右22.5度エッジに対応)。
Intra8x8_pred_mode = 8: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左112.5度エッジに対応)。
イントラ4x4予測モードを選択する場合、マクロブロックあたりのモード情報は16個必要となる。したがって、モード情報自体の符号量を削減するため、モード情報は隣接するブロック間との相関が高いことを利用して、隣接するブロックのモード情報から予測符号化を行う。同様にイントラ8x8予測モードを選択する場合も隣接するブロック間でイントラ予測モードの相関が高いことを利用して、隣接するブロックのモード情報から予測符号化を行う。
(b)イントラ16x16予測符号化モード
マクロブロックサイズに相当する16x16画素ブロックを一度に予測するモードであり、図4に示す4つのモードのいずれかをマクロブロック単位に選択する。イントラ4x4予測モードと同様、すでに符号化を終え、局部復号処理されてメモリ16に格納された周囲のマクロブロック(左上、上、左)の画素を予測画像生成に用いる。モード種別は実施の形態1における図4の説明の通りである。イントラ16x16予測符号化モードでは、変換ブロックサイズは常に4x4とする。ただし、まず4x4ブロック単位のDC(直流成分、平均値)を16個分集め、その単位で4x4ブロック変換を行い、DC分を除いた残りの交流成分を4x4ブロックごとに変換する2段階の変換を施す。
本実施の形態2における映像符号化装置は、イントラ符号化モード共通化識別フラグ33に基づき、3つの色成分に対するイントラ予測・変換・符号化方法を切り替えることを特徴とする。この点については、下記2で詳しく述べる。
空間予測部2では、入力される3つの色成分の信号に対して、イントラ符号化モード共通化識別フラグ33の指示に基づいてイントラ予測モードの評価を行う。イントラ符号化モード共通化識別フラグ33は、入力される3つの色成分それぞれについて個別にイントラ符号化モードを割り当てるか、3成分すべてに同じイントラ符号化モードを割り当てるかを指示する。これは以下の背景による。
4:4:4フォーマットでは、従来から符号化に用いられてきたY、Cb、Cr色空間以外に、RGBを直接利用することも可能である。Y、Cb、Cr色空間は、Cb、Crの信号から映像のテクスチャ構造に依存する成分が取り除かれる。Y成分とCb、Cr2成分との間では最適なイントラ符号化方法が変化する確率が高い。(現に、ハイ4:2:0プロファイルなど、AVC/H.264の4:2:0フォーマットを対象とする符号化方式では、Y成分とCb、Cr成分で用いるイントラ予測モードの設計が異なっている)。一方、RGB色空間で符号化を行う場合は、Y、Cb、Cr色空間のように色成分間でのテクスチャ構造の除去を行わず、同一空間上の信号成分は相関が高くなるため、イントラ符号化モードを共通的に選択できるように構成することで符号化効率を高められる可能性がある。この点は、色空間の定義だけでなく、ある特定の色空間を使用したとしても映像の性質によって左右される点であり、符号化方式自体は、そういった映像信号の性質に適応的に対応できることが望ましい。そこで、本実施の形態ではイントラ符号化モード共通化識別フラグ33を設け、4:4:4フォーマット映像に対する柔軟な符号化を行うことができるよう符号化装置を構成した。
空間予測部2では、以上のように設定されるイントラ符号化モード共通化識別フラグ33の状態に応じて、図3や図4、図13に示した全イントラ予測モードないしは所定のサブセットに対して各色成分に対する予測処理を実行して減算器3により予測差分信号4を得る。予測分信号4は符号化モード判定部5においてその予測効率が評価され、空間予測部2で実行した予測処理の中から、対象のマクロブロックに対して最適な予測効率が得られるイントラ予測モードを選択する。ここで、イントラNxN予測が選ばれた場合、符号化モード6としてイントラNxN予測符号化モードを出力するとともに、予測モードがイントラ4x4予測であった場合は、変換ブロックサイズ識別フラグ32を「4x4ブロックサイズでの変換」に設定する。また、予測モードがイントラ8x8予測であった場合は、変換ブロックサイズ識別フラグ32を「8x8ブロックサイズでの変換」に設定する。変換ブロックサイズ識別フラグ32の決定方法については様々な方法が考えられるが、本実施の形態2における符号化装置では、イントラNxN予測によって得られる残差に対して変換を行う場合のブロックサイズを定めるため、符号化モード判定部5において最適なイントラNxN予測モードが定まった後、そのN値にあわせて決定する方法が一例として挙げられる。例えば、イントラ4x4予測モードを用いる場合に変換ブロックサイズを8x8画素ブロックとすると、予測の結果得られる予測差分信号4において4x4ブロックの単位で予測信号の空間的連続性が断絶される可能性が高くなり、無駄な高周波成分が発生するため、変換による信号電力集中化の効果が薄れる。変換ブロックサイズを予測モードにあわせて4x4画素ブロックとしておけば、このような問題は発生しない。
符号化モード判定部5においてイントラ16x16予測が選ばれた場合、符号化モード6としてイントラ16x16予測符号化モードを出力する。なお、符号化モード6の選定にあたっては、符号化制御部19の判断で定まる各符号化モードに対する重み係数20が加味されることもある。
符号化モード6によって得られる予測差分信号4は直交変換部8へ出力される。直交変換部8は入力される予測差分信号を変換し直交変換係数として量子化部9へ出力する。量子化部9は入力される直交変換係数を、符号化制御部19によって定まる量子化パラメータ21に基づいて量子化を行い、量子化済み変換係数10として可変長符号化部11へ出力する。
変換ブロックサイズが4x4ブロック単位の場合、直交変換部8に入力される予測差分信号4は、4x4ブロック単位に分割され直交変換され、量子化部9にて量子化が行われる。変換ブロックサイズが8x8ブロック単位の場合、直交変換部8に入力される予測差分信号4は、8x8ブロック単位に分割され直交変換され、量子化部9にて量子化が行われる。
量子化済み変換係数10は、可変長符号化部11にてハフマン符号化や算術符号化などの手段によりエントロピー符号化される。また、量子化済み変換係数10は変換ブロックサイズ識別フラグ32などに基づくブロックサイズにて逆量子化部12、逆直交変換部13を経て局部復号予測差分信号14へ復元され、符号化モード6に基づいて生成される予測画像7と加算器18で加算することで局部復号画像15が生成される。局部復号画像15は以降のイントラ予測処理に用いるためメモリ16へ格納される。また、可変長符号化部11には、当該マクロブロックに対してデブロッキングフィルタを施すか否かを示すデブロッキングフィルタ制御フラグ24も入力される(空間予測部2で実施される予測処理には、デブロッキングフィルタが施される前の画素データをメモリ16に格納して用いるのでデブロッキングフィルタ処理自体は符号化処理には必要はないが、復号装置側ではデブロッキングフィルタ制御フラグ24の指示によってデブロッキングフィルタを行って最終的な復号画像を得る)。
可変長符号化部11に入力されるイントラ符号化モード共通化識別フラグ33、量子化済み変換係数10、符号化モード6、量子化パラメータ21は所定の規則(シンタックス)に従ってビットストリームとして配列・整形され、送信バッファ17へ出力される。送信バッファ17では符号化装置が接続される伝送路の帯域や記録媒体の読み出し速度に合わせてビットストリームを平滑化してビデオストリーム22として出力する。また、送信バッファ17中のビットストリーム蓄積状況に応じて符号化制御部19へフィードバック情報を出力し、以降の映像フレームの符号化における発生符号量を制御する。
2.符号化装置におけるイントラ符号化モード・予測モード判定処理
本実施の形態2の符号化装置の特徴であるイントラ符号化モードおよびイントラ予測モードの判定処理について詳述する。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図11の符号化装置における空間予測部2、符号化モード判定部5によって行われる。また、本処理の流れを示すフローチャートを図14に示す。以下、ブロックを構成する3つの色成分の画像データをC0、C1、C2とする。
まず、符号化モード判定部5は、イントラ符号化モード共通化識別フラグ33を受け取り、その値に基づいてC0、C1、C2で共通のイントラ符号化モードを使用するか否かを判断する(図14のステップS20)。共通化する場合はステップS21以降へ、共通化しない場合はステップS22以降へ進む。
イントラ符号化モードをC0、C1、C2で共通化する場合は、符号化モード判定部5は空間予測部2に対して、選択しうるすべてないしは一部のイントラ予測モード(イントラNxN予測、イントラ16x16予測)を通知し、空間予測部2はそのすべての予測効率を評価して、全成分に最適なイントラ符号化モードおよびイントラ予測モードを選択する(ステップS21)。
一方、C0、C1、C2でそれぞれ最適なイントラ符号化モードを選択する場合は、符号化モード判定部5は空間予測部2に対して、Ci(i<=0<3)成分で選択しうるすべてないしは一部のイントラ予測モード(イントラNxN予測、イントラ16x16予測)を通知し、空間予測部2はそのすべての予測効率を評価して、Ci(i<=0<3)成分における最適なイントラ4x4予測モードを選択する(ステップS23)。
上記ステップS21、S23において、空間予測部2がイントラ4x4予測モードを最適な予測効率を与えるモードとして選択した場合、変換ブロックサイズ識別フラグ32は「4x4ブロックサイズでの変換」に設定され、空間予測部2がイントラ8x8予測モードを最適な予測効率を与えるモードとして選択した場合、変換ブロックサイズ識別フラグ32は「8x8ブロックサイズでの変換」に設定される。
空間予測部2で行われる予測モードの予測効率評価の規範としてはたとえば、
Jm = Dm + λRm(λ:正数)
で与えられるレート・ひずみコストを用いることができる。ここで、Dmはイントラ予測モードmを適用した場合の符号化歪または予測誤差量である。符号化歪とは、イントラ予測モードmを適用して予測誤差を得て、予測誤差を変換・量子化した結果から映像を復号して符号化前の信号に対する誤差を計測するものである。予測誤差量は、イントラ予測モードmを適用した場合の予測画像と符号化前の信号との差分を得て、その差分の大きさを定量化したもので、たとえば差分絶対値和(Sum of Absolute Distance: SAD)などが用いられる。Rmはイントラ予測モードmを適用した場合の発生符号量である。つまり、Jmはイントラ予測モードmを適用した場合の符号量と劣化度とのトレードオフを規定する値であり、最小のJmを与えるイントラ予測モードmが最適解を与える。
符号化装置がステップS21以降の処理を行った場合、イントラ符号化モードの情報は、3つの色成分を含むマクロブロックに対して、1つ割り当てられる。一方、ステップS22以降の処理を行った場合は、各色成分に対してそれぞれイントラ符号化モード情報(計3つ)が割り当てられる。したがって、マクロブロックに対して割り当てられるイントラ予測モードの情報が異なるため、符号化装置がS21以降の処理過程を行ったか、S23以降の処理過程を行ったかはイントラ符号化モード共通化識別フラグ23をビットストリームに多重化して復号装置側で認識できるようにする必要がある。このようなビットストリームのデータ配列を図15に示す。
図15において、マクロブロックレベルでビットストリームに多重化されるイントラ符号化モード0(34a)、1(34b)、2(34c)はそれぞれ、C0、C1、C2成分に対する符号化モード6を示す。イントラ符号化モードがイントラNxN予測符号化モードである場合には、変換ブロックサイズ識別フラグ32、イントラ予測モードの情報がビットストリームに多重化される。一方、イントラ符号化モードがイントラ16x16予測符号化モードである場合には、イントラ予測モードの情報はイントラ符号化モード情報の一部として符号化され、変換ブロックサイズ識別フラグ32、イントラ予測モードの情報はビットストリームに多重化されない。イントラ符号化モード共通化識別フラグ33が「C0、C1、C2で共通」であることを示す場合には、イントラ符号化モード1(34b)・2(34c)、変換ブロックサイズ識別フラグ1(32b)・2(32c)、イントラ予測モード1(35b)・2(35c)はビットストリームに多重化されない(図15中の点線の丸印部分がその分岐を示す)。このときは、イントラ符号化モード0(34a)、変換ブロックサイズ識別フラグ0(32a)、イントラ予測モード0(35a)がそれぞれ全色成分共通の符号化情報として機能する。イントラ符号化モード共通化識別フラグ33は、図15においてはスライス、ピクチャ、シーケンスなど、マクロブロックよりも上位レベルのビットストリームデータとして多重化される例を示す。特に、本実施の形態2に挙げた例のように用いる場合は、シーケンスを通じて色空間が変化しないことが多いことから、シーケンスレベルにイントラ符号化モード共通化識別フラグ33を多重化しておくことで目的を達成できる。
本実施の形態2では、イントラ符号化モード共通化識別フラグ33を「全成分で共通かどうか」という意味で用いたが、これは入力映像信号1の色空間定義に応じて例えば「C1、C2など特定の2成分で共通かどうか」という意味で使用してもよい(Y、Cb、Crのような場合、CbとCrとでは共通化できる可能性が高い)。さらに、イントラ符号化モード共通化識別フラグ33の共通化範囲をイントラ符号化モードのみに限定し、イントラNxN予測モードを使用する場合には、各色成分で独立に変換ブロックサイズやNxN予測モードを選択できるように構成してもよい(図16)。図16のようなシンタックス構成により、NxN予測を必要とするような複雑な絵柄の映像に対して、符号化モード情報を共通化しつつも、色成分ごとに予測方法を変更することができ、予測効率を高めることができる。
なお、イントラ符号化モード共通化識別フラグ33の情報は、符号化装置と復号装置の双方であらかじめ何らかの手段で既知となっていれば、ビデオのビットストリーム中に載せて伝送しなくてもよい。その場合、例えば符号化装置はイントラ符号化モード共通化識別フラグ33をいずれかの値に固定化して符号化を行うように構成してもよいし、ビデオのビットストリームとは別に伝送してもよい。
3.復号装置の動作概要
図12の復号装置は、図11の符号化装置から出力される図15の配列に従うビデオストリーム22を受信して、3つの色成分が同一サイズ(4:4:4フォーマット)のマクロブロックの単位で復号処理を行い、個々の映像フレームを復元するものとする。
まず、可変長復号部25はストリーム22を入力とし、所定の規則(シンタックス)に従ってストリーム22を解読して、イントラ符号化モード共通化識別フラグ33、量子化済み変換係数10、符号化モード6、量子化パラメータ21などの情報を抽出する。量子化済み変換係数10は量子化パラメータ21とともに逆量子化部12へ入力され、逆量子化処理が行われる。ついでその出力が逆直交変換部13へ入力され、局部復号予測差分信号14へ復元される。一方、空間予測部2に対しては符号化モード6とイントラ符号化モード共通化識別フラグ33が入力され、これらの情報に従って予測画像7を得る。予測画像7を得る具体的な手順については後述する。局部復号予測差分信号14と予測画像7は加算器18により加算され、暫定復号画像15を得る(これは符号化装置における局部復号画像15とまったく同じ信号である)。暫定復号画像15は以降のマクロブロックのイントラ予測に用いられるためメモリ16へ書き戻される。メモリは各色成分ごとに3面用意される。また、可変長符号化部25によって解読されたデブロッキングフィルタ制御フラグ24の指示に基づいてデブロッキングフィルタ26を暫定復号画像15に対して作用させ、最終的な復号画像27を得る。
4.復号装置におけるイントラ予測復号処理
本実施の形態2の復号装置の特徴であるイントラ予測画像生成処理について詳述する。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図12の復号装置における可変長復号部25、空間予測部2によって行われる。また、本処理の流れを示すフローチャートを図17に示す。
図17のフローチャートのうち、S25〜S38は可変長復号部25において行われる。可変長復号部25への入力であるビデオストリーム22は、図15のデータ配列に従うものとする。ステップS25では図15のデータのうちイントラ符号化モード0(34a)(C0成分対応)がまず復号される。結果、イントラ符号化モード0(34a)が「イントラNxN予測」である場合は、変換ブロックサイズ識別フラグ0(32a)とイントラ予測モード0(35a)とが復号される(ステップS26,S27)。次いで、イントラ符号化モード共通化識別フラグ33の状態に基づき、イントラ符号化・予測モード情報が全色成分で共通と判断された場合は、イントラ符号化モード0(34a)、変換ブロックサイズ識別フラグ0(32a)、イントラ予測モード0(35a)を、C1およびC2成分で用いる符号化情報として設定する(ステップS29、S30)。図17はマクロブロック単位の処理を図示しており、ステップS29の判断に用いるイントラ符号化モード共通化識別フラグ33は、図17のSTARTのプロセスに入る前に、スライス以上のレイヤレベルで可変長復号部25によってビットストリーム22から読み出されているものとする。
図17におけるステップS29にてイントラ符号化・予測モード情報が各色成分ごとに符号化と判断された場合は、続くステップS31〜S38のプロセスにおいて、C1およびC2成分用のイントラ符号化・予測モード情報を復号する。以上の処理過程を経て各色成分の符号化モード6が確定し、これを空間予測部2へ出力して、ステップS39〜S41にしたがって各色成分のイントラ予測画像を得る。イントラ予測画像を得るプロセスは図3、図4、図13の手順に従うもので図11の符号化装置で行う処理と同じである。
なお、前述のように、イントラ符号化モード共通化識別フラグ33の情報は、符号化装置と復号装置の双方であらかじめ何らかの手段で既知となっていれば、復号装置は、ビデオのビットストリーム中からその値を解析するのでなく、例えばあらかじめ固定の値で復号を行うように構成してもよいし、ビデオのビットストリームとは別に伝送してもよい。
従来の映像符号化標準で採用されてきた4:2:0フォーマットでは、色空間の定義がY、Cb、Crに固定されていたが、4:4:4フォーマットではY、Cb、Crに限定せず多様な色空間を利用することができる。図15や図16のようにイントラマクロブロックの符号化情報を構成することで、入力映像信号1の色空間の定義や映像信号の性質に応じて最適な符号化処理を行えるとともに、かような符号化処理の結果得られるビットストリームを一意に解釈して映像復号再生処理を行うことができる。
実施の形態3.
本実施の形態3では、図11の符号化装置、図12の復号装置の別の構成例を示す。本符号化装置、復号装置は実施の形態1と同様、非特許文献1であるMPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格で採用される符号化方式をベースとして、本発明に固有の特徴を付与したものとする。本実施の形態3における映像符号化装置は、図11で説明した実施の形態2の符号化装置のうち、可変長符号化部11のみが異なる。本実施の形態3における映像復号装置は、図12で説明した実施の形態2の復号装置のうち、可変長復号部25のみが異なる。他は実施の形態2と同様の動作とし、ここでは差異部分のみを説明する。
1.符号化装置におけるイントラ予測モード情報の符号化手順
実施の形態2の符号化装置においては、その可変長符号化部11では、イントラNxN予測モードの情報について、ビットストリーム上のデータ配列は示したが、特にその符号化手順を示さなかった。本実施の形態では、その符号化手順の具体的な方法を示す。本実施の形態では特に、イントラNxN予測モードの値が色成分間で高い相関を有する場合を考慮し、各色成分で得られたイントラNxN予測モードについて、色成分間での値の相関を利用したエントロピー符号化を行う点に特徴がある。
以下の説明では、図16の形式のビットストリーム配列を前提とする。また、説明の簡略化のため、イントラ符号化モード共通化識別フラグ33の値は、イントラ符号化モードをC0、C1、C2で共通化する、と設定し、イントラ符号化モードをイントラNxN予測モード、変換ブロックサイズ0〜2を4x4ブロックであるとする。この際、イントラ予測モード0〜2(35a〜35c)はすべてイントラ4x4予測モードになる。図18〜図20において、符号化の対象となるカレントマクロブロックはXとする。また、その左隣のマクロブロックはマクロブロックA、真上のマクロブロックをマクロブロックBとする。
C0、C1、C2の各色成分の符号化手順の説明図として、図18〜図20を用いる。また、手順のフローチャートを図21、図22に示す。
図18はマクロブロックXのC0成分の様子を示している。ここで、符号化対象の4x4ブロックをブロックX、ブロックXの左、上の4x4ブロックをそれぞれブロックA、ブロックBと呼ぶこととする。マクロブロックXのうち、符号化対象の4x4ブロックの位置に応じて2つのケースがある。Case1は、符号化対象の4x4ブロックに対して、その左、上の4x4ブロックがカレントマクロブロックXの外、すなわち、マクロブロックAないしはマクロブロックBに属する場合である。Case2は、符号化対象の4x4ブロックに対して、その左、上の4x4ブロックがカレントマクロブロックXの内部、すなわち、マクロブロックXに属する場合である。いずれに場合にせよ、イントラ4x4予測モードはマクロブロックX内の個々の4x4ブロックXに対して1つずつ割り当てられ、これをCurrIntraPredModeとする。また、ブロックAのイントラ4x4予測モードをIntraPredModeA、ブロックBのイントラ4x4予測モードをIntraPredModeBとする。IntraPredModeA、IntraPredModeBはともに、ブロックXを符号化する時点ではすでに符号化済みの情報である。あるブロックXのイントラ4x4予測モードを符号化するにあたり、まずこれらのパラメータの割り当てを行う(図21におけるステップS50)。
次に、ブロックXのCurrIntraPredModeに対する予測値 predCurrIntraPredMode を下式で定める(ステップS51)。
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB )
次に、C0成分のCurrIntraPredMode の符号化を行う。ここでは、CurrIntraPredMode = predCurrIntraPredModeならば、予測値と同じであることを示す1ビットのフラグ(prev_intra_pred_mode_flag)を符号化する。CurrIntraPredMode != predCurrIntraPredModeならば、CurrIntraPredModeとpredCurrIntraPredModeを比較してCurrIntraPredModeのほうが小さい場合、CurrIntraPredModeをそのまま符号化する。CurrIntraPredModeのほうが大きい場合、CurrIntraPredMode-1を符号化する(ステップS52)。
if(CurrIntraPredMode == predCurrIntraPredMode)
{
prev_intra_pred_mode_flag = 1;
}
else
{
prev_intra_pred_mode_flag = 0;
if( CurrIntraPredMode < predCurrIntraPredMode)
rem_intra_pred_mode = CurrIntraPredMode;
else
rem_intra_pred_mode = CurrIntraPredMode - 1;
}
Encode prev_intra_pred_mode_flag;
If(prev_intra_pred_mode_flag == 0)
Encode rem_intra_pred_mode;
次に、図19により、C1成分の符号化手順を示す。まず、C0成分と同様、ブロックXの位置に応じて、IntraPredModeA、IntraPredModeBなどの近傍の符号化パラメータを設定する(ステップS53)。
次に、ブロックXのCurrIntraPredModeに対する予測値候補1 predCurrIntraPredMode1 を下式で定める(ステップS54)。
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB )
もしC0成分において、prev_intra_pred_mode_flag=1ならば、このpredCurrIntraPredMode1をそのままC1成分のブロックXにおける predCurrIntraPredMode に採用する。これは以下の理由による。C0成分の同一ブロック位置でprev_intra_pred_mode_flag=1が採用されたということは、C0成分においては近傍画像領域において予測モード間の相関が高かったことを意味している。C0成分とC1成分の間でテクスチャ構造の相関を除去し切れていないRGB信号などの場合においては、このような場合、C1成分においてもC0成分と同様、近傍画像領域間に相関が高い可能性がある。したがって、C1成分の予測値はC0成分のイントラ4x4予測モードに依存しないと判断する。
一方、C0成分において、prev_intra_pred_mode_flag=0、すなわち、rem_intra_pred_modeを符号化した場合(ステップS55)は、C0成分の CurrIntraPredMode を予測値候補2とする(ステップS56)。すなわち、
predCurrIntraPredMode2 = CurrIntraPredMode_C0
これを予測値候補とする背景は以下の通りである。C0成分でrem_intra_pred_modeを符号化するということは、C0成分においては近傍画像領域間でのイントラ予測の相関が低いことを意味する。その場合、C1成分でも同様に近傍画像領域間での相関が低いことが予想され、異なる色成分における同一ブロック位置のイントラ予測モードのほうが、よりよい予測値を与える可能性がある。
C1成分のブロックXにおける CurrIntraPredMode の予測値は最終的に、predCurrIntraPredMode1か、predCurrIntraPredMode2のどちらか一方の値として定める(ステップS57)。どちらの値を用いるかは1ビットのフラグ(pred_flag)で追加符号化する。ただし、pred_flagは、CurrIntraPredModeが予測値に一致するときだけ符号化し、一致しない場合(rem_intra_pred_modeを符号化する場合)予測値はpredCurrIntraPredMode1を用いる。
以上の手順を式で記載すると

if( prev_intra_pred_mode_flag_C0 == 1 )
{
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB );
}
else
{
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
if( CurrIntraPredMode == predCurrIntraPredMode1 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 0; // 予測値候補1を使う
}
else if(CurrIntraPredMode == predCurrIntraPredMode2 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 1; // 予測値候補2を使う
}
else
{
prev_intra_pred_mode_flag = 0;
if( CurrIntraPredMode < predCurrIntraPredMode1 )
rem_intra_pred_mode = CurrIntraPredMode;
else
rem_intra_pred_mode = CurrIntraPredMode - 1;
}
}
Encode prev_intra_pred_mode_flag ;
if(prev_intra_pred_mode_flag == 1)
Encode pred_flag;
else // If(prev_intra_pred_mode_flag == 0)
Encode rem_intra_pred_mode ;

となる。結果、prev_intra_pred_mode_flag、pred_flag、rem_intra_pred_modeが符号化データとして符号化される(ステップS58)。
次に、図20により、C2成分の符号化手順を示す。まず、C0、C1成分と同様、ブロックXの位置に応じて、IntraPredModeA、IntraPredModeBなどの近傍の符号化パラメータを設定する(ステップS59)。
次に、ブロックXのCurrIntraPredModeに対する予測値候補1 predCurrIntraPredMode1 を下式で定める(ステップS60)。
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB )
もしC0、C1成分の両方において、prev_intra_pred_mode_flag=1ならば、このpredCurrIntraPredMode1をそのままC1成分のブロックXにおける predCurrIntraPredMode に採用する。これは以下の理由による。C0、C1成分の同一ブロック位置でprev_intra_pred_mode_flag=1が採用されたということは、C0、C1成分においては近傍画像領域において予測モード間の相関が高かったことを意味している。C0、C1成分とC2成分の間でテクスチャ構造の相関を除去し切れていないRGB信号などの場合においては、このような場合、C2成分においてもC0、C1成分と同様、近傍画像領域間に相関が高い可能性がある。したがって、C2成分の予測値はC0、C1成分のイントラ4x4予測モードに依存しないと判断する。
一方、C0ないしはC1成分において、prev_intra_pred_mode_flag=0、すなわち、rem_intra_pred_modeを符号化した場合(ステップS61)は、C0ないしはC1成分の CurrIntraPredMode を予測値候補2とする(ステップS62)。すなわち、
If( prev_intra_pred_mode_flag_C0 == 0 && pred_intra_pred_mode_flag_C1 == 1 )
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
else if(prev_intra_pred_mode_flag_C0 == 1 && pred_intra_pred_mode_flag_C1 == 0 )predCurrIntraPredMode2 = CurrIntraPredMode_C1;
else
predCurrIntraPredMode2 = CurrIntraPredMode_C1;
これを予測値候補とする背景は以下の通りである。C0ないしはC1成分でrem_intra_pred_modeを符号化するということは、C0ないしはC1成分においては近傍画像領域間でのイントラ予測の相関が低いことを意味する。その場合、C2成分でも同様に近傍画像領域間での相関が低いことが予想され、異なる色成分における同一ブロック位置のイントラ予測モードのほうが、よりよい予測値を与える可能性がある。また、この考え方によれば、C0、C1成分ともにrem_intra_pred_modeを符号化する場合には、C0、C1の両方のカレントイントラ予測モードが予測値の候補となりうるが、ここでは、C1成分のカレントイントラ予測モードを予測値として採用する。その理由は、YUV色空間が入力される場合、C0は輝度、C1/C2は色差として扱われる可能性が高く、その場合、C0よりもC1のほうがよりC2の予測モードに近いと考えられるからである。RGB色空間入力の場合においては、C0を選ぶかC1を選ぶかはそれほど大きなファクタにはならず、一般的にC1成分を予測値に採用するのは妥当と考えられる(設計によりC2成分を予測値に採用してもよい)。
C2成分のブロックXにおける CurrIntraPredMode の予測値は最終的に、predCurrIntraPredMode1か、predCurrIntraPredMode2のどちらか一方の値として定める(ステップS63)。どちらの値を用いるかは1ビットのフラグ(pred_flag)で追加符号化する。
以上の手順を式で記載すると

If( prev_intra_pred_mode_flag_C0 == 1 && prev_intra_pred_mode_flag == 1 )
{
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB );
}
else
{
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
If( prev_intra_pred_mode_flag_C0 == 0 && pred_intra_pred_mode_flag_C1 == 1 )
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
else if(prev_intra_pred_mode_flag_C0 == 1 && pred_intra_pred_mode_flag_C1 == 0 )predCurrIntraPredMode2 = CurrIntraPredMode_C1;
else
predCurrIntraPredMode2 = CurrIntraPredMode_C1;
if( CurrIntraPredMode == predCurrIntraPredMode1 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 0; // 予測値候補1を使う
}
else if(CurrIntraPredMode == predCurrIntraPredMode2 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 1; // 予測値候補2を使う
}
else
{
prev_intra_pred_mode_flag = 0;
if( CurrIntraPredMode < predCurrIntraPredMode1 )
rem_intra_pred_mode = CurrIntraPredMode;
else
rem_intra_pred_mode = CurrIntraPredMode - 1;
}
}
Encode prev_intra_pred_mode_flag ;
if(prev_intra_pred_mode_flag == 1)
Encode pred_flag;
else // If(prev_intra_pred_mode_flag == 0)
Encode rem_intra_pred_mode ;

となる。結果、prev_intra_pred_mode_flag、pred_flag、rem_intra_pred_modeが符号化データとして符号化される(ステップS64)。
以上のべた符号化手順は、イントラ8x8予測モードに対しても同様に定義できる。イントラNxN予測モードをこのような手順で符号化することにより、他の色成分において選択される予測モードとの間の相関を利用することができ、予測モード自体の符号量を削減して、符号化効率を向上することができる。
図21と図22の違いは、MBあたりのイントラ予測モードの符号化処理を各色成分ごとに分離して行うか、まとめて行うかの違いである。図21の場合は4x4ブロックの単位で各色成分の符号化が行われ、それらを16パターン集めたものがビットストリームに配列される(ステップS65)。図22の場合は、各色成分の16個の4x4ブロックがまとめて符号化され、それを色成分別にビットストリームに配列した形態になる(ステップS66、S67、S68)。
なお、上記述べた手順では、pred_flag は、prev_intra_pred_mode_flag が1のときのみ有効な情報としているが、prev_intra_pred_mode_flag が0の場合も包含するように定めてもよい。すなわち、例えば、C1成分の例をとると、

If( prev_intra_pred_mode_flag_C0 == 1 )
{
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB );
if( CurrIntraPredMode == predCurrIntraPredMode )
{
prev_intra_pred_mode_flag = 1;
}
Else{
if( CurrIntraPredMode < predCurrIntraPredMode )
rem_intra_pred_mode = CurrIntraPredMode;
else
rem_intra_pred_mode = CurrIntraPredMode - 1;
}
}
else
{
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
predCurrIntraPredMode2 = CurrIntraPredMode_C0;

if( CurrIntraPredMode == predCurrIntraPredMode1 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 0; // 予測値候補1を使う
}
else if(CurrIntraPredMode == predCurrIntraPredMode2 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 1; // 予測値候補2を使う
}
else
{
prev_intra_pred_mode_flag = 0;
if( | CurrIntraPredMode - predCurrIntraPredMode1 | <
| CurrIntraPredMode predCurrIntraPredMode2 | )
{
pred_flag = 0;
predCurrIntraPredMode = predCurrIntraPredMode1;
}
Else
{
pred_flag = 1;
predCurrIntraPredMode = predCurrIntraPredMode2;
}
if( CurrIntraPredMode < predCurrIntraPredMode )
rem_intra_pred_mode = CurrIntraPredMode;
else
rem_intra_pred_mode = CurrIntraPredMode - 1;
}
}
Encode prev_intra_pred_mode_flag ;
If(prev_intra_pred_mode_flag_C0 == 0)
Encode pred_flag;
If(prev_intra_pred_mode_flag == 0)
Encode rem_intra_pred_mode ;

のような手順で符号化するように構成してもよい。この方法では、C0成分の同一位置のブロックにおけるイントラ予測モードにおいてrem_intra_pred_modeを符号化する場合には常時pred_flagを符号化することになるが、prev_intra_pred_mode_flag = 0の場合でもより精度のよい予測値を使用することができ、符号化効率の改善が期待できる。また、さらに進めて、C0成分の同一位置のブロックにおけるイントラ予測モードにおいてrem_intra_pred_modeを符号化するかどうかに依存せず、pred_flagを符号化するように構成してもよい。この場合は常時C0成分のイントラ予測モードを予測値候補として使用することになる。
すなわち、この場合の式は以下のようになる。

predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
predCurrIntraPredMode2 = CurrIntraPredMode_C0;

if( CurrIntraPredMode == predCurrIntraPredMode1 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 0; // 予測値候補1を使う
}
else if(CurrIntraPredMode == predCurrIntraPredMode2 )
{
prev_intra_pred_mode_flag = 1;
pred_flag = 1; // 予測値候補2を使う
}
else
{
prev_intra_pred_mode_flag = 0;
if( | CurrIntraPredMode - predCurrIntraPredMode1 | <
| CurrIntraPredMode predCurrIntraPredMode2 | )
{
pred_flag = 0;
predCurrIntraPredMode = predCurrIntraPredMode1;
}
Else
{
pred_flag = 1;
predCurrIntraPredMode = predCurrIntraPredMode2;
}
if( CurrIntraPredMode < predCurrIntraPredMode )
rem_intra_pred_mode = CurrIntraPredMode;
else
rem_intra_pred_mode = CurrIntraPredMode - 1;
}
Encode prev_intra_pred_mode_flag ;
Encode pred_flag;
If(prev_intra_pred_mode_flag == 0)
Encode rem_intra_pred_mode ;
なお、pred_flag は、4x4ブロック単位でなく、マクロブロックやシーケンスの単位で設定するようにしてもよい。マクロブロック単位で設定する場合は、マクロブロック内のすべての4x4ブロックについて、予測値候補1ないしは予測値候補2のどちらを使うかを共通化するので、pred_flagとして伝送するオーバヘッド情報をさらに削減できる。また、入力色空間定義に応じて予測値候補1ないしは予測値候補2のどちらを使うかを定めるために、シーケンスの単位で定めるようにすることもできる。この場合はマクロブロックごとにもpred_flagを伝送する必要がなくなり、さらにオーバヘッド情報を削減できる。
2.復号装置におけるイントラ予測モード情報の復号手順
実施の形態2の復号装置においては、その可変長復号部25では、イントラNxN予測モードの情報について、ビットストリーム上のデータ配列は示したが、特にその復号手順を示さなかった。本実施の形態3では、その復号手順の具体的な方法を示す。本実施の形態3では特に、イントラNxN予測モードの値が色成分間で高い相関を有する場合を考慮し、各色成分で得られたイントラNxN予測モードについて、色成分間での値の相関を利用したエントロピー符号化が行われたビットストリームを復号する点に特徴がある。
以下の説明では、図16の形式のビットストリーム配列を前提とする。また、説明をイントラ予測モードの復号手順に限定するため、ビットストリーム中のイントラ符号化モード共通化識別フラグ33の値は、イントラ符号化モードをC0、C1、C2で共通化する、と設定されているものとする。また、イントラ符号化モードはイントラNxN予測モード、変換ブロックサイズ0〜2は4x4ブロックが指定されているものとする。この際、イントラ予測モード0〜2(35a〜35c)はすべてイントラ4x4予測モードになる。符号化装置と同様、復号装置においても、図18〜図20の関係を用いる。復号装置では、復号の対象となるカレントマクロブロックをXとする。また、その左隣のマクロブロックはマクロブロックA、真上のマクロブロックをマクロブロックBとする。復号手順のフローチャートを図23に示す。図23において、図21、図22と同じ番号を付与したステップは符号化装置の処理と同じ処理を実行することを示す。
図18はマクロブロックXのC0成分の様子を示している。マクロブロックXのうち、復号対象の4x4ブロックの位置に応じて2つのケースがある。Case1は、復号対象の4x4ブロックに対して、その左、上の4x4ブロックがカレントマクロブロックXの外、すなわち、マクロブロックAないしはマクロブロックBに属する場合である。Case2は、復号対象の4x4ブロックに対して、その左、上の4x4ブロックがカレントマクロブロックXの内部、すなわち、マクロブロックXに属する場合である。ここで、復号対象の4x4ブロックをブロックX、ブロックXの左、上の4x4ブロックをそれぞれブロックA、ブロックBと呼ぶこととする。いずれに場合にせよ、イントラ4x4予測モードはマクロブロックX内の個々の4x4ブロックXに対して1つずつ割り当てられ、これをCurrIntraPredModeとする。また、ブロックAのイントラ4x4予測モードをIntraPredModeA、ブロックBのイントラ4x4予測モードをIntraPredModeBとする。IntraPredModeA、IntraPredModeBはともに、ブロックXを符号化する時点ではすでに復号済みの情報である。あるブロックXのイントラ4x4予測モードを復号するにあたり、まずこれらのパラメータの割り当てを行う(ステップS50)。
次に、ブロックXのCurrIntraPredModeに対する予測値 predCurrIntraPredMode を下式で定める(ステップS51)。
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB )
次に、CurrIntraPredMode = predCurrIntraPredModeであるかどうかを示す1ビットのフラグ(prev_intra_pred_mode_flag)を復号する。prev_intra_pred_mode_flag = 1は、CurrIntraPredMode = predCurrIntraPredModeであることを意味する。さもなくば(prev_intra_pred_mode_flag = 0)、rem_intra_pred_mode の情報をビットストリーム中から復号する。rem_intra_pred_mode とpredCurrIntraPredModeを比較してrem_intra_pred_modeの方が小さい場合、CurrIntraPredMode = rem_intra_pred_modeとする。CurrIntraPredModeの方が大きい場合、CurrIntraPredMode = rem_intra_pred_mode +1とする(ステップS65)。
これらの手順をまとめると以下のようになる。

predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB );
Decode prev_intra_pred_mode_flag;
if(prev_intra_pred_mode_flag == 1)
{
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
次に、図19により、C1成分の復号手順を示す。まず、C0成分と同様、ブロックXの位置に応じて、IntraPredModeA、IntraPredModeBなどの近傍の符号化パラメータを設定する(ステップS53)。
次に、ブロックXのCurrIntraPredModeに対する予測値候補1 predCurrIntraPredMode1 を下式で定める(ステップS54)。
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB )
もしC0成分において、prev_intra_pred_mode_flag=1ならば、このpredCurrIntraPredMode1をそのままC1成分のブロックXにおける predCurrIntraPredMode に採用する。これは符号化装置において説明した理由と同様である。
一方、C0成分において、prev_intra_pred_mode_flag=0、すなわち、rem_intra_pred_modeを復号した場合(ステップS55)は、C0成分の CurrIntraPredMode を予測値候補2とする(ステップS56)。すなわち、
predCurrIntraPredMode2 = CurrIntraPredMode_C0
これを予測値候補とする背景も符号化装置において説明した理由と同様である。
C1成分のブロックXにおける CurrIntraPredMode の予測値は最終的に、predCurrIntraPredMode1か、predCurrIntraPredMode2のどちらか一方の値として定める(ステップS57)。どちらの値を用いるかは1ビットのフラグ(pred_flag)を復号して定める。ただし、pred_flagは、CurrIntraPredModeが予測値に一致するときだけ復号し、一致しない場合(rem_intra_pred_modeを復号する場合)予測値はpredCurrIntraPredMode1を用いる。
予測値候補1、予測値候補2、prev_intra_pred_mode_flag、pred_flag、rem_intra_pred_modeが与えられた上で、以下の手順により、CurrIntraPredModeを復号する(ステップS66)。

if( prev_intra_pred_mode_flag_C0 == 1 )
{
pred_flag = 0; // このときはpred_flagはビットストリームには含まれない
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB );
Decode prev_intra_pred_mode_flag;
if(prev_intra_pred_mode_flag == 1)
{
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
}
else
{
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
Decode prev_intra_pred_mode_flag;
if(prev_intra_pred_mode_flag == 1)
{
Decode pred_flag;
If( pred_flag == 0 )
predCurrIntraPredMode = predCurrIntraPredMode1;
Else
predCurrIntraPredMode = predCurrIntraPredMode2;
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
predCurrIntraPredMode = predCurrIntraPredMode1;
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
}
次に、図20により、C2成分の復号手順を示す。まず、C0、C1成分と同様、ブロックXの位置に応じて、IntraPredModeA、IntraPredModeBなどの近傍の符号化パラメータを設定する(ステップS59)。
次に、ブロックXのCurrIntraPredModeに対する予測値候補1 predCurrIntraPredMode1 を下式で定める(ステップS60)。
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB )
もしC0、C1成分の両方において、prev_intra_pred_mode_flag=1ならば、このpredCurrIntraPredMode1をそのままC1成分のブロックXにおける predCurrIntraPredMode に採用する。これは符号化装置において説明した理由と同様である。
一方、C0ないしはC1成分において、prev_intra_pred_mode_flag=0、すなわち、rem_intra_pred_modeを復号した場合(ステップS61)は、C0ないしはC1成分の CurrIntraPredMode を予測値候補2とする(ステップS62)。
すなわち、
If( prev_intra_pred_mode_flag_C0 == 0 && pred_intra_pred_mode_flag_C1 == 1 )
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
else if(prev_intra_pred_mode_flag_C0 == 1 && pred_intra_pred_mode_flag_C1 == 0 )predCurrIntraPredMode2 = CurrIntraPredMode_C1;
else
predCurrIntraPredMode2 = CurrIntraPredMode_C1;
これを予測値候補とする背景も符号化装置において説明した理由と同様である。
C2成分のブロックXにおける CurrIntraPredMode の予測値は最終的に、predCurrIntraPredMode1か、predCurrIntraPredMode2のどちらか一方の値として定める(ステップS63)。どちらの値を用いるかは1ビットのフラグ(pred_flag)を復号して定める。ただし、pred_flagは、CurrIntraPredModeが予測値に一致するときだけ復号し、一致しない場合(rem_intra_pred_modeを復号する場合)は、予測値はpredCurrIntraPredMode1を用いる。
予測値候補1、予測値候補2、prev_intra_pred_mode_flag、pred_flag、rem_intra_pred_modeが与えられた上で、以下の手順により、CurrIntraPredModeを復号する(ステップS71)。

if(prev_intra_pred_mode_flag_C0 == 1 && prev_intra_pred_mode_flag_C1 == 1 )
{
pred_flag = 0; // このときはpred_flagはビットストリームには含まれない
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB );
Decode prev_intra_pred_mode_flag;
if(prev_intra_pred_mode_flag == 1)
{
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
}
else
{
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
If( prev_intra_pred_mode_flag_C0 == 0 && pred_intra_pred_mode_flag_C1 == 1 )
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
else if(prev_intra_pred_mode_flag_C0 == 1 && pred_intra_pred_mode_flag_C1 == 0 )predCurrIntraPredMode2 = CurrIntraPredMode_C1;
else
predCurrIntraPredMode2 = CurrIntraPredMode_C1;
Decode prev_intra_pred_mode_flag;
if(prev_intra_pred_mode_flag == 1)
{
Decode pred_flag;
If( pred_flag == 0 )
predCurrIntraPredMode = predCurrIntraPredMode1;
Else
predCurrIntraPredMode = predCurrIntraPredMode2;
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
predCurrIntraPredMode = predCurrIntraPredMode1;
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
}
以上のべた復号手順は、イントラ8x8予測モードに対しても同様に定義できる。イントラNxN予測モードをこのような手順で復号することにより、他の色成分において選択される予測モードとの間の相関を利用して、予測モード自体の符号量を削減し、符号化効率を向上させたビットストリームを復号することができる。
なお、上記述べた手順では、pred_flag は、prev_intra_pred_mode_flag が1となっている場合にのみ復号される情報としているが、prev_intra_pred_mode_flag が0の場合も包含する情報として復号するようにしてもよい。
すなわち、例えば、C1成分の例をとると、

if( prev_intra_pred_mode_flag_C0 == 1 )
{
predCurrIntraPredMode = Min( IntraPredModeA, IntraPredModeB );
Decode prev_intra_pred_mode_flag;
if(prev_intra_pred_mode_flag == 1)
{
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
}
else
{
predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
Decode prev_intra_pred_mode_flag;
Decode pred_flag;
If( pred_flag == 0 )
predCurrIntraPredMode = predCurrIntraPredMode1;
Else
predCurrIntraPredMode = predCurrIntraPredMode2;

if(prev_intra_pred_mode_flag == 1)
{
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
}

のような手順で復号するように構成してもよい。この方法の効果は対応する符号化装置側での符号化手順の記載中に述べたとおりである。また、さらに進めて、C0成分の同一位置のブロックにおけるイントラ予測モードにおいてrem_intra_pred_modeを復号するかどうかに依存せず、pred_flagを復号するように構成してもよい。この場合は常時C0成分のイントラ予測モードを予測値候補として使用することになる。
すなわち、

predCurrIntraPredMode1 = Min( IntraPredModeA, IntraPredModeB );
predCurrIntraPredMode2 = CurrIntraPredMode_C0;
Decode prev_intra_pred_mode_flag;
Decode pred_flag;
If( pred_flag == 0 )
predCurrIntraPredMode = predCurrIntraPredMode1;
Else
predCurrIntraPredMode = predCurrIntraPredMode2;

if(prev_intra_pred_mode_flag == 1)
{
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}

となる。
なお、符号化装置の説明で述べたように、pred_flag は、4x4ブロック単位でなく、マクロブロックやシーケンスの単位でビットストリームに含まれていてもよい。マクロブロック単位で設定する場合は、マクロブロック内のすべての4x4ブロックについて、予測値候補1ないしは予測値候補2のどちらを使うかを共通化するので、復号するpred_flagのオーバヘッド情報が削減される。また、入力色空間定義に応じて予測値候補1ないしは予測値候補2のどちらを使うかを定めるために、シーケンスの単位で定めるようにすることもできる。この場合はマクロブロックごとにもpred_flagを伝送する必要がなくなり、さらにオーバヘッド情報を削減される。
実施の形態4.
実施の形態2にて図16の形式のビットストリームについて説明した。実施の形態2では、イントラ符号化モードが「イントラNxN予測」を示している場合、変換ブロックサイズ識別フラグ0〜2(32a〜32c)の値に応じて、C0、C1、C2各色成分のイントラ予測モードがイントラ4x4予測モードか、イントラ8x8予測モードと認識されることを述べた。本実施の形態4では、このビットストリーム配列を変更して図24に示すように、C1、C2成分について、イントラ予測モード指示フラグ1、2(36a,36b)をシーケンスレベルで伝送するように構成する。イントラ予測モード指示フラグは、イントラ符号化モードにおいてイントラNxN予測モードが選択される場合で、かつ変換ブロックサイズ識別フラグが4x4変換を指示している場合、すなわちイントラ4x4予測モードの場合に有効であって、この値に応じて、以下の2つの状態を切り替えることを可能とする。
状態1:C1ないしはC2成分に対しても、使用するイントラ4x4予測モードは図3の9つから個別に選択し符号化する。
状態2:C1ないしはC2成分に対しては、使用するイントラ4x4予測モードをDC予測、つまり図3のintra4x4_pred_mode = 2に限定し、イントラ予測モード情報を符号化しない。
例えば、Y、Cb、Crのような色空間で符号化を行う場合で、HDTV以上などの高解像度映像の場合、4x4ブロックはきわめて小さい画像領域に対応する。このとき、特にCb、Cr成分といった画像のテクスチャ構造を保持していない成分に対して9つもの予測モードを選択する余地を与えるよりも、予測モード情報自体を1つに固定化してオーバヘッドとなる予測モード情報を伝送しないほうが効率的な場合がある。このようなビットストリーム配列を行うことによって、入力色空間の性質や映像の特性に応じた最適な符号化が可能になる。
図24の形式のビットストリームを受ける復号装置は、可変長復号部25においてイントラ予測モード指示フラグ(36a,36b)を復号し、その値によって、ビットストリームが状態1で符号化されているか、状態2で符号化されているかを識別するように構成しておく。これによって、C1ないしはC2成分に対して、ビットストリームからイントラ4x4予測モードを復号して使用するか、DC予測つまり図3のintra4x4_pred_mode = 2を固定的に適用するかを判断する。
また、本実施の形態4では、状態2は、C1ないしはC2成分に対して、intra4x4_pred_mode = 2に限定するとしたが、予測モード情報を1つに固定すればよく、他の予測モードでもよい。また、状態2は、C1ないしはC2成分に対して、C0と同じイントラ4x4予測モードを使用する、というように定めてもよい。この場合も、C1ないしはC2成分についてはイントラ4x4予測モードを符号化する必要がないのでオーバヘッドビットを削減できる。
実施の形態5.
本実施の形態5では、図11の符号化装置、図12の復号装置の別の構成例を示す。本実施の形態5における符号化装置、復号装置は上記の他の実施の形態と同様、非特許文献1であるMPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格で採用される符号化方式をベースとして、本発明に固有の特徴を付与したものとする。本実施の形態5における映像符号化装置は、実施の形態2、3で説明した図11の符号化装置の構成のうち、可変長符号化部11の動作のみが異なる。本実施の形態5における映像復号装置は、実施の形態2、3で説明した図12の復号装置の構成のうち、可変長復号部25の動作のみが異なる。他は実施の形態2、3と同様の動作とし、ここでは差異部分のみを説明する。
1.符号化装置におけるイントラ予測モード情報の符号化手順
実施の形態3の符号化装置においては、その可変長符号化部11では、図16の形式によるビットストリームにおいて、イントラNxN予測モード情報の具体的な符号化方法について示した。本実施の形態5では、その符号化手順の別の具体的な方法を示す。本実施の形態5では特に、イントラNxN予測モードの値が画像パターンとしてのテクスチャの構造を反映することに着目し、同一色成分中の近傍画素領域内で適応的な予測を行う方法を与える点に特徴がある。以下の説明では、図16の形式のビットストリーム配列を前提とする。また、本実施の形態5では、C0、C1、C2の各成分のイントラNxN予測モード情報の符号化は色成分ごとに独立に符号化することとして、C0成分の符号化方法をC1、C2にも同様に適用するものとし、説明の簡略化のため、C0成分についてのみ説明する。イントラ符号化モード共通化識別フラグ33の値は、イントラ符号化モードをC0、C1、C2で共通化する、と設定し、イントラ符号化モードをイントラNxN予測モード、変換ブロックサイズ識別フラグ0〜2(32a〜32c)を4x4ブロックであるとする。この際、イントラ予測モード0〜2(35a〜35c)はすべてイントラ4x4予測モードになる。C0成分のイントラNxN予測モード情報の符号化手順の説明図として、図18を用いる。図18において、符号化の対象となるカレントマクロブロックはXとする。また、その左隣のマクロブロックはマクロブロックA、真上のマクロブロックをマクロブロックBとする。また、符号化手順のフローチャートを図25に示す。
実施の形態3では、図18において個々の4x4ブロックXに対して1つずつ割り当てられているイントラ4x4予測モードCurrIntraPredModeに対する予測値 predCurrIntraPredMode を、IntraPredModeA, IntraPredModeBのうち小さいほうの値を一意に割り当てた。これは、現在のAVC/H.264規格でも採用されている方法であり、イントラNxN予測モードの値が大きくなるほど、予測画像生成方式が画像パターンの方向性を加味した画素補間を伴う複雑なモードになっており、一般的な画像パターンへの適合性が高いモードには小さい値が割り振られることに起因する。ビットレートが低い場合には、歪の増分よりも予測モードの符号量増分のほうがモード選択に大きな影響を及ぼすため、この方式でも全体の符号化効率にとっては有益であるが、逆に、ビットレートが比較的高い場合は、予測モードの符号量の増分よりも歪の増分のほうがモード選択に大きな影響を与えることから、かならずしもIntraPredModeA, IntraPredModeBのうち小さいほうの値が最適とはいえなくなる。このような観察に基づいて、本実施の形態5では、この予測値設定を、以下に説明するようにIntraPredModeA, IntraPredModeBの状態に応じて適応化することで予測値の精度を向上させる。この手順では、画像パターンとしてみた場合にCurrIntraPredModeをもっともよく推定できると判断される値として、IntraPredModeA, IntraPredModeBの状態をもとにpredCurrIntraPredMode を定める(ステップS73,S74,S75)。
(1)IntraPredModeA, IntraPredModeBがともに0から2の範囲にあるときは、MIN(IntraPredModeA, IntraPredModeB)をpredCurrIntraPredModeとする。
(2)IntraPredModeA, IntraPredModeBのいずれかが3以上のときで、IntraPredModeA, IntraPredModeBの予測の方向がまったく異なるとき (例:IntraPredModeAが3で、IntraPredModeBが4のとき)は、DC予測(intra4x4_pred_mode = 2) をpredCurrIntraPredModeとする。
(3)IntraPredModeA, IntraPredModeBのいずれかが3以上のときで、予測の方向が同じとき(例:IntraPredModeAが3でIntraPredModeBが7のとき(いずれも右上からの予測))は、画素を補間する予測モード(上述の例では7)をpredCurrIntraPredModeとする。
なお、実施の形態3と同様、IntraPredModeA、IntraPredModeBなど符号化のための準備処理は事前に行っておく(ステップS50,S53,S59)。結果、predCurrIntraPredMode は、IntraPredModeA, IntraPredModeBの値から一意に導かれる。この予測値設定の規則をテーブル化したものを図26に示す。図26において網がけされた部分は、従来のMIN(IntraPredModeA, IntraPredModeB)の規則には従わないケースで、画像パターンの連続性からよりよい予測値が判断されるケースである。上記手順(1)では、クラス0のテーブルが使用される。(2)、(3)ではクラス1のテーブルが使用される。
以上の結果、predCurrIntraPredModeが定まった後は、実施の形態3で述べたC0成分の残りの符号化手順を実行することで符号化を完了する(ステップS52,S58,S64)。
つまり、

if(CurrIntraPredMode == predCurrIntraPredMode)
{
prev_intra_pred_mode_flag = 1;
}
else
{
prev_intra_pred_mode_flag = 0;
if( CurrIntraPredMode < predCurrIntraPredMode)
rem_intra_pred_mode = CurrIntraPredMode;
else
rem_intra_pred_mode = CurrIntraPredMode - 1;
}
Encode prev_intra_pred_mode_flag;
If(prev_intra_pred_mode_flag == 0)
Encode rem_intra_pred_mode;

となる。
以上のべた符号化手順は、イントラ8x8予測モードに対しても同様に定義できる。イントラNxN予測モードをこのような手順で符号化することにより、同一色成分の近傍画素領域における予測モードの相関をよりよく利用することができ、予測モード自体の符号量を削減して、符号化効率を向上することができる。
2.復号装置におけるイントラ予測モード情報の復号手順
実施の形態3の復号装置においては、図16の形式によるビットストリームに対して、可変長復号部25でのイントラNxN予測モードの情報の具体的な復号手順の一つを示した。本実施の形態5では、復号手順の別の具体的な方法を示す。本実施の形態5では特に、イントラNxN予測モードの値が画像パターンとしてのテクスチャの構造を反映することに着目し、同一色成分中の近傍画素領域内で適応的な予測を行って符号化が行われたビットストリームを復号する点に特徴がある。
以下の説明では、図16の形式のビットストリーム配列を前提とする。また、説明の簡略化のため、ビットストリーム中のイントラ符号化モード共通化識別フラグ33の値は、イントラ符号化モードをC0、C1、C2で共通化する、と設定されているものとする。また、イントラ符号化モードはイントラNxN予測モード、変換ブロックサイズ識別フラグ0〜2(32a〜32c)は4x4ブロックが指定されているものとする。この際、イントラ予測モード0〜2(35a〜35c)はすべてイントラ4x4予測モードになる。符号化装置と同様、復号装置においても、図18の関係を用いてC0成分についてのみ説明する(C1、C2は同等の手順でC0とは独立に復号する)。復号装置では、復号の対象となるカレントマクロブロックをXとする。また、その左隣のマクロブロックはマクロブロックA、真上のマクロブロックをマクロブロックBとする。
実施の形態3では、符号化装置の説明にも記したように、図18において個々の4x4ブロックXに対して1つずつ割り当てられているイントラ4x4予測モードCurrIntraPredModeに対する予測値 predCurrIntraPredMode を、IntraPredModeA, IntraPredModeBのうち小さいほうの値を一意に割り当てた。これに対し、本実施の形態5における復号装置では、predCurrIntraPredModeを符号化手順に示した手順と全く同じ手順で、図26のテーブルを用いて決定する。IntraPredModeA, IntraPredModeBはすでに復号されて既知であるため、符号化手順とまったく同じ処理を行うことが可能である。
その後の手順は、実施の形態3に述べたC0成分の復号手順と等価である。まとめると以下のようになる。

Decode prev_intra_pred_mode_flag;
if(prev_intra_pred_mode_flag == 1)
{
CurrIntraPredMode == predCurrIntraPredMode;
}
else
{
Decode rem_intra_pred_mode;
if(rem_intra_pred_mode < predCurrIntraPredMode )
CurrIntraPredMode = rem_intra_pred_mode;
else
CurrIntraPredMode = rem_intra_pred_mode + 1;
}
以上のべた復号手順は、イントラ8x8予測モードに対しても同様に定義できる。イントラNxN予測モードをこのような手順で復号することにより、同一色成分の近傍画素領域における予測モードの相関をよりよく利用して、予測モード自体の符号量を削減した符号化ビットストリームを復号することができる。
また、上述の例では図26のテーブルを固定的に使用してpredCurrIntraPredModeを定めて符号化・復号を行ったが、図26のテーブルを初期値として、IntraPredModeA, IntraPredModeBの状態に対して最も発生しやすいイントラ予測モードをpredCurrIntraPredModeとして逐次更新しながら符号化・復号するように構成してもよい。例えば、図26の「クラス=0、IntraPredModeA=0、IntraPredModeB=0、predCurrIntraPredMode=0」なる組み合わせにおいて、上述の実施の形態ではIntraPredModeA=0、IntraPredModeB=0の場合には、常にpredCurrIntraPredModeを0とした。しかし、映像信号自体は非定常信号であるため、映像の内容によっては、この組み合わせが必ずしもベストである保証はない。最悪の場合、映像全体を通じて、ほとんどのケースでpredCurrIntraPredModeが予測値としてヒットしない可能性もゼロではない。したがって、例えば、IntraPredModeA=0、IntraPredModeB=0の場合に発生するCurrIntraPredModeの頻度をカウントしておき、CurrIntraPredModeの符号化・復号が終わるたびに、IntraPredModeA、IntraPredModeBの状態に対して最も発生頻度の高い予測モードをもってpredCurrIntraPredModeを更新するように構成する。このような構成により、CurrIntraPredModeの符号化・復号に用いる予測値を映像内容に照らして最適な値に設定することができる。
実施の形態6.
本実施の形態6では、図11の符号化装置、図12の復号装置の別の構成例を示す。本実施の形態6における符号化装置、復号装置は上記の他の実施の形態と同様、非特許文献1であるMPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格で採用される符号化方式をベースとして、本発明に固有の特徴を付与したものとする。本実施の形態6における映像符号化装置は、実施の形態2、3、5で説明した図11の符号化装置の構成のうち、可変長符号化部11の動作のみが異なる。本実施の形態6における映像復号装置は、実施の形態2、3、5で説明した図12の復号装置の構成のうち、可変長復号部25の動作のみが異なる。他は実施の形態2、3、5と同様の動作とし、ここでは差異部分のみを説明する。
1.符号化装置におけるイントラ予測モード情報の符号化手順
実施の形態3や実施の形態5の符号化装置においては、図16の形式によるビットストリームについて、イントラNxN予測モード情報の具体的な符号化方法について示した。本実施の形態6では、その符号化手順の別の具体的な方法を示す。本実施の形態6では特に、イントラNxN予測モードの値が画像パターンとしてのテクスチャの構造を反映することに着目し、同一色成分中の近傍画素領域内で適応的な算術符号化を行う方法を与える点に特徴がある。以下の説明では、図16の形式のビットストリーム配列を前提とする。また、本実施の形態6では、C0、C1、C2の各成分のイントラNxN予測モード情報の符号化は色成分ごとに独立に符号化することとして、C0成分の符号化方法をC1、C2にも同様に適用するものとし、説明の簡略化のため、C0成分についてのみ説明する。イントラ符号化モード共通化識別フラグ33の値は、イントラ符号化モードをC0、C1、C2で共通化する、と設定し、イントラ符号化モードをイントラNxN予測モード、変換ブロックサイズ識別フラグ0〜2(32a〜32c)を4x4ブロックであるとする。この際、イントラ予測モード0〜2(35a〜35c)はすべてイントラ4x4予測モードになる。C0成分のイントラNxN予測モード情報の符号化手順の説明図として、図18を用いる。図18において、符号化の対象となるカレントマクロブロックはXとする。また、その左隣のマクロブロックはマクロブロックA、真上のマクロブロックをマクロブロックBとする。符号化手順のフローチャートを図27に示す。
実施の形態3、5では、図18において個々の4x4ブロックXに対して1つずつ割り当てられているイントラ4x4予測モードCurrIntraPredModeに対する予測値 predCurrIntraPredMode を、IntraPredModeA, IntraPredModeBのうち小さいほうの値を一意に割り当て、それと等しい場合にはprev_intra_pred_mode_flagを1としてブロックXに対するイントラ4x4予測モードの符号化を打ち切り、異なる場合に、rem_intra_pred_modeによって符号を伝送するように構成した。本実施の形態では、IntraPredModeA, IntraPredModeBの状態を利用してCurrIntraPredMode を直接算術符号化する。この際、AVC/H.264規格に採用されているコンテクスト適応二値算術符号化に従う符号化手順を用いる。
まず、符号化対象のCurrIntraPredModeを図28に示す形式にしたがって二値表現化する(ステップS76)。二値系列の第1ビンは、CurrIntraPredModeが縦方向予測か、横方向予測かを分類する符号になっている(図3参照)。この例では、DC予測(intra4x4_pred_mode = 2)を横方向予測に分類しているが、これは縦方向予測に分類するように構成してもよい。第2ビンは、縦方向、横方向のそれぞれで出現頻度が最も高いと考えられる予測モード値に対してTerminateビットを与える。第3ビン以降は、残存する予測モード値の中で出現頻度が高いものから順次Terminateされるように符号構成する。(図28における二値系列構成の第2ビン以降は実際の画像データ符号化の過程でのシンボル発生確率に応じて設定されることが望ましい)
算術符号化は、二値系列の各ビンに対し、順次、使用する(0,1)生起確率テーブルを選択しながら実行する。第1ビンの符号化では、算術符号化に用いるコンテクストを以下のように定める(ステップS78)。
コンテクストA(CA):イントラ予測モードが縦方向予測か、横方向予測かをバイナリ表現するフラグ intra_pred_direction_flag をIntraPredModeA、IntraPredModeBに対して定義し、以下の4状態をコンテクスト値とする。
CA = (intra_pred_direction_flag for IntraPredModeA == 1) + (intra_pred_direction_flag for IntraPredModeB == 1);
ここで、intra_pred_direction_flagは例えば図3にて、intra4x4_pred_modeが値0、3、5、7をとる場合は縦方向予測(=0)、値1、2、4、6、8をとる場合は横方向予測(=1)に分類する。CAの4状態には、それぞれ、あらかじめIntraPredModeA、IntraPredModeBの状態を前提とするCurrIntraPredModeの条件付確率を求めておき、それに基づいて定まる(0,1)の初期生起確率テーブルを割り当てておく。このようにコンテクストを構成することで、第1ビンの条件付生起確率をよりよく推定することが可能となり、算術符号化の効率を高めることができる。CAの値に応じて第1ビンの生起確率テーブルを選択して算術符号化を実行する。また、符号化値をもって生起確率テーブルを更新する(ステップS79)。
第2ビン以降については、あらかじめ各予測モード値の発生確率に応じて定まる(0,1)の初期生起確率テーブルを割り当てておく(ステップS80)。次いで、第1ビンと同様に二値算術符号化、生起確率テーブル更新を行う(ステップS81)。
以上のべた符号化手順は、イントラ8x8予測モードに対しても同様に定義できる。イントラNxN予測モードをこのような手順で符号化することにより、同一色成分の近傍画素領域における予測モードの相関を利用して、予測モード情報の符号化に適応算術符号化を適用することができるので、符号化効率を向上することができる。
2.復号装置におけるイントラ予測モード情報の復号手順
実施の形態3、5の復号装置においては、図16の形式によるビットストリームに対して、可変長符号部25でのイントラNxN予測モードの情報の具体的な復号手順の一つを示した。本実施の形態6では、復号手順の別の具体的な方法を示す。本実施の形態6では特に、イントラNxN予測モードの値が画像パターンとしてのテクスチャの構造を反映することに着目し、同一色成分中の近傍画素領域内で適応的な算術符号化を用いて符号化が行われたビットストリームを復号する点に特徴がある。
以下の説明では、図16の形式のビットストリーム配列を前提とする。また、説明の簡略化のため、ビットストリーム中のイントラ符号化モード共通化識別フラグ33の値は、イントラ符号化モードをC0、C1、C2で共通化する、と設定されているものとする。また、イントラ符号化モードはイントラNxN予測モード、変換ブロックサイズ識別フラグ0〜2(32a〜32c)は4x4ブロックが指定されているものとする。この際、イントラ予測モード0〜2(35a〜35c)はすべてイントラ4x4予測モードになる。符号化装置と同様、復号装置においても、図18の関係を用いてC0成分についてのみ説明する(C1、C2は同等の手順でC0とは独立に復号する)。復号装置では、復号の対象となるカレントマクロブロックをXとする。また、その左隣のマクロブロックはマクロブロックA、真上のマクロブロックをマクロブロックBとする。
実施の形態3、5では、符号化装置の説明にも記したように、図18において個々の4x4ブロックXに対して1つずつ割り当てられているイントラ4x4予測モードCurrIntraPredModeに対する予測値 predCurrIntraPredMode を、IntraPredModeA, IntraPredModeBのうち小さいほうの値を一意に割り当て、prev_intra_pred_mode_flagを復号してその値が1の場合にはCurrIntraPredModeとしてpredCurrIntraPredModeを採用し、prev_intra_pred_mode_flagがゼロの場合は、rem_intra_pred_modeを復号することによってブロックXのイントラ4x4予測モードを復元するように構成した。これに対し、本実施の形態6では、IntraPredModeA, IntraPredModeBの状態を利用してCurrIntraPredMode を直接算術復号する。この際、AVC/H.264規格に採用されているコンテクスト適応二値算術復号に従う復号手順を用いる。
復号対象のCurrIntraPredModeは、図28に示す形式にしたがって二値系列として符号化されているものとし、この系列を左端から順次二値算術復号していく。本実施の形態6の符号化手順で説明したとおり、二値系列の第1ビンは、CurrIntraPredModeが縦方向予測か、横方向予測かを分類する符号になっており(図3参照)、第2ビン以降は予測モード値の中で出現頻度が高いものから順次Terminateされるように符号構成されている。この符号構成の理由については符号化手順で述べたとおりである。
復号プロセスでは、まず、第1ビンの復号に際して、符号化手順で用いたコンテクストと同じCAを定める。CAの値に応じて第1ビンの生起確率テーブルを選択して算術復号を実行して第1ビンを復元する。また、復号値をもって生起確率テーブルを更新する。
第2ビン以降については、あらかじめ各予測モード値の発生確率に応じて定まる(0,1)の初期生起確率テーブルを割り当てておく。次いで、第1ビンと同様に二値算術復号、生起確率テーブル更新を行う。図28の二値系列は各予測モード値を一意に特定できるように構成されているため、所定の数だけビンを復元したところで逐次CurrIntraPredModeが復号される。
以上のべた復号手順は、イントラ8x8予測モードに対しても同様に定義できる。イントラNxN予測モードをこのような手順で復号することにより、同一色成分の近傍画素領域における予測モードの相関を利用した算術符号化によって予測モード自体の符号量を削減した符号化ビットストリームを復号することができる。
上述の例において、図28のテーブルは他にもバリエーションが考えられる。例えば、図29のような二値系列を構成する方法でもよい。ここでは、第1ビンには以下のコンテクストBを用いる。
コンテクストB(CB):イントラ予測モードがDC予測か、DC予測でないかをバイナリ表現するフラグ intra_dc_pred_flag をIntraPredModeA、IntraPredModeBに対して定義し、以下の4状態をコンテクスト値とする。
CA = (intra_dc_pred_flag for IntraPredModeA == 1) + (intra_dc_pred_flag for IntraPredModeB == 1);
ここで、intra_dc_pred _flagは図3にて、intra4x4_pred_modeが値2をとる場合は1、その他の値をとる場合は0に設定する。CB の4状態には、それぞれ、あらかじめIntraPredModeA、IntraPredModeBの状態を前提とするCurrIntraPredModeの条件付確率を求めておき、それに基づいて定まる第1ビンの値(0,1)の初期生起確率テーブルを割り当てておく。図29では、CurrIntraPredModeがDC予測の場合に、第1ビンは値0を、DC予測以外の場合は第1ビンは値1をとるように設計している。また、第2ビンには、上述のコンテクストA(CA)を用いることとした。このようにコンテクストを構成することで、第1ビンおよび第2ビンのいずれに対しても条件付生起確率をよりよく推定することが可能となり、算術符号化の効率を高めることができる。
実施の形態7.
本実施の形態7では、4:4:4フォーマットで入力される映像フレームを16×16画素の矩形領域(マクロブロック)に均等分割した単位でフレーム間予測を用いて符号化を行う符号化装置、および対応する復号装置について説明する。また、本符号化装置、復号装置はMPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格(以下、AVC)で採用される符号化方式をベースとして、本発明に固有の特徴を付与したものとする。
図30に、本実施の形態7における映像符号化装置の構成を、図31に本実施の形態7における映像復号装置の構成を示す。図31において、図30の符号化装置の構成要素と同じ番号が付されている要素は同一の要素であることを示す。
以下、これらの図に基づいて符号化装置ならびに復号装置全体の動作と、本実施の形態7の特徴的な動作であるインター予測モード判定処理と動き補償予測復号処理について説明する。
1.符号化装置の動作概要
図30の符号化装置において、入力映像信号1は、個々の映像フレームが4:4:4フォーマットであって、かつ3つの色成分を同一サイズのマクロブロックに分割してまとめた単位で符号化装置に入力されるものとする。
まず、動き補償予測部102において、メモリ16に格納される1フレーム以上の動き補償予測参照画像データの中から1フレームの参照画像を選択し、該マクロブロックの単位で、各色成分ごとに動き補償予測処理が行われる。メモリは各色成分ごとに3面用意される(本実施の形態では3面として説明するが、設計により適宜変更してよい)。動き補償予測を行うブロックサイズには、7種類用意されており、まずマクロブロック単位に、図32(a)から(d)に示すように、16x16、16x8、8x16、8x8のいずれかのサイズを選択することができる。さらに8x8が選択された場合には、各8x8ブロックごとに、図32(e)から(h)に示すように、8x8、8x4、4x8、4x4のいずれかのサイズを選択することができる。選択したサイズ情報は、マクロブロック単位のサイズ情報はマクロブロックタイプとして、8x8ブロック単位のサイズ情報はサブマクロブロックタイプとして出力される。なお、それぞれのブロックごとに選択した参照画像の識別番号と動きベクトル情報が出力される。
本実施の形態7における映像符号化装置は、インター予測モード共通化識別フラグ123に基づき、3つの色成分に対する動き補償予測処理方法を切り替えることを特徴とする。この点については、下記2で詳しく述べる。
動き補償予測部102では、図32に示した全ブロックサイズないしはサブブロックサイズ、および所定の探索範囲のすべての動きベクトル137および選択可能な1枚以上の参照画像に対して動き補償予測処理を実行して、動きベクトル137と1枚の参照画像と減算器3により予測差分信号4を得る。予測差分信号4は符号化モード判定部5においてその予測効率が評価され、動き補償予測部102で実行した予測処理の中から、予測対象のマクロブロックに対して最適な予測効率が得られるマクロブロックタイプ/サブマクロブロックタイプ106と動きベクトル137と参照画像の識別番号を出力する。マクロブロックタイプ/サブマクロブロックタイプ106の選定にあたっては、符号化制御部19の判断で定まる各タイプに対する重み係数20が加味されることもある。また、選定されたタイプと動きベクトル137と参照画像に基づく動き補償予測によって得られる予測差分信号4を直交変換部8へ出力する。直交変換部8は入力される予測差分信号4を変換し直交変換係数として量子化部9へ出力する。量子化部9は入力される直交変換係数を、符号化制御部19によって定まる量子化パラメータ21に基づいて量子化を行い、量子化済み変換係数10として可変長符号化部11へ出力する。量子化済み変換係数10は、可変長符号化部11にてハフマン符号化や算術符号化などの手段によりエントロピー符号化される。また、量子化済み変換係数10は逆量子化部12、逆直交変換部13を経て局部復号予測差分信号14へ復元され、選定されたマクロブロックタイプ/サブマクロブロックタイプ106と動きベクトル137と参照画像に基づいて生成される予測画像7と加算器18で加算することで局部復号画像15が生成される。局部復号画像15は以降の動き補償予測処理に用いるためメモリ16へ格納される。また、可変長符号化部11には、当該マクロブロックに対してデブロッキングフィルタを施すか否かを示すデブロッキングフィルタ制御フラグ24も入力される(動き補償予測部102で実施される予測処理には、デブロッキングフィルタが施される前の画素データをメモリ16に格納して用いるのでデブロッキングフィルタ処理自体は符号化処理には必要はないが、復号装置側ではデブロッキングフィルタ制御フラグ24の指示によってデブロッキングフィルタを行って最終的な復号画像を得る)。
可変長符号化部11に入力されるインター予測モード共通化識別フラグ123、量子化済み変換係数10、マクロブロックタイプ/サブマクロブロックタイプ106、動きベクトル137、参照画像識別番号、量子化パラメータ21は所定の規則(シンタックス)に従ってビットストリームとして配列・整形され、送信バッファ17へ出力される。送信バッファ17では符号化装置が接続される伝送路の帯域や記録媒体の読み出し速度に合わせてビットストリームを平滑化してビデオストリーム22として出力する。また、送信バッファ17中のビットストリーム蓄積状況に応じて符号化制御部19へフィードバックをかけ、以降の映像フレームの符号化における発生符号量を制御する。
2.符号化装置におけるインター予測モード判定処理
本実施の形態7の符号化装置の特徴であるインター予測モード判定処理について詳述する。なお以下の記述でインター予測モードとは、上述の動き補償予測の単位となるブロックサイズ、すなわちマクロブロックタイプ/サブマクロブロックタイプを指し、インター予測モード判定処理とは、マクロブロックタイプ/サブマクロブロックタイプと動きベクトルと参照画像を選定する処理のことである。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図30の符号化装置における動き補償予測部102、符号化モード判定部5によって行われる。また、本処理の流れを示すフローチャートを図33に示す。以下、ブロックを構成する3つの色成分の画像データをC0、C1、C2とする。
まず、符号化モード判定部5は、インター予測モード共通化識別フラグ123を受け取り、その値に基づいてC0、C1、C2で共通のインター予測モードと共通の動きベクトル137および共通の参照画像を使用するか否かを判断する(図33のステップS100)。共通化する場合はステップS101以降へ、さもなくばステップS102以降へ進む。
インター予測モードと動きベクトル137および参照画像をC0、C1、C2で共通化する場合は、符号化モード判定部5は動き補償予測部102に対して、選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、C0、C1、C2で共通の最適なインター予測モードと動きベクトル137と参照画像を選択する(ステップS101)。
インター予測モードと動きベクトル137および参照画像をC0、C1、C2で共通化せず、C0、C1、C2でそれぞれ一番よいモードを選択する場合は、符号化モード判定部5は動き補償予測部102に対して、Ci (i<=0<3)成分で選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、Ci (i<=0<3)成分における最適なインター予測モードと動きベクトル137と参照画像を選択する(ステップS102、S103、S104)。
動き補償予測部102で行われる予測モードの予測効率評価の規範としてはたとえば、Jm,v,r = Dm,v,r + λRm,v,r(λ:正数)
で与えられるレート・ひずみコストを用いることができる。ここで、Dm,v,rはインター予測モードmと所定範囲の動きベクトルvと参照画像rを適用した場合の符号化歪または予測誤差量である。符号化歪とは、インター予測モードmと動きベクトルvと参照画像rを適用して予測誤差を得、予測誤差を変換・量子化した結果から映像を復号して符号化前の信号に対する誤差を計測するものである。予測誤差量は、インター予測モードmと動きベクトルvと参照画像rを適用した場合の予測画像と符号化前の信号との差分を得、その差分の大きさを定量化したもので、たとえば差分絶対値和(Sum of Absolute Distance: SAD)などが用いられる。Rm,v,rはインター予測モードmと動きベクトルvと参照画像rを適用した場合の発生符号量である。つまり、Jm,v,rはインター予測モードmおよび動きベクトルvと参照画像rを適用した場合の符号量と劣化度とのトレードオフを規定する値であり、最小のJm,v,rを与えるインター予測モードmと動きベクトルvと参照画像rが最適解を与える。
符号化装置がステップS101以降の処理を行った場合、インター予測モードと動きベクトル137および参照画像の情報は、3つの色成分を含むマクロブロックに対して1組割り当てられる。一方、ステップS102以降の処理を行った場合は、各色成分に対してそれぞれインター予測モード情報と動きベクトル137および参照画像が割り当てられる。したがって、マクロブロックに対して割り当てられるインター予測モードと動きベクトル137と参照画像の情報が異なるため、符号化装置がS101以降の処理過程を行ったか、S102以降の処理過程を行ったかはインター予測モード共通化識別フラグ123をビットストリームに多重化して復号装置側で認識できるようにする必要がある。このようなビットストリームのデータ配列を図34に示す。
図34はマクロブロックのレベルにおけるビットストリームのデータ配列を示しており、マクロブロックタイプは、イントラかインターかを示し、インターモードのときには動き補償の単位となるブロックサイズを示す情報を含む。サブマクロブロックタイプは、マクロブロックタイプで8x8ブロックサイズが選択された場合にのみ多重化され、各8x8ブロックごとのブロックサイズ情報を含む。基本マクロブロックタイプ128と基本サブマクロブロックタイプ129はインター予測モード共通化識別フラグ123が「C0、C1、C2で共通」であることを示す場合は共通マクロブロックタイプおよび共通サブマクロブロックタイプを示し、さもなくばC0に対するマクロブロックタイプおよびサブマクロブロックタイプを示す。拡張マクロブロックタイプ130および拡張サブマクロブロックタイプ131は、インター予測モード共通化識別フラグ123が「C0、C1、C2で共通」でないことを示す場合にのみC1、C2各々に対して多重化され、C1、C2に対するマクロブロックタイプおよびサブマクロブロックタイプを示す。
参照画像識別番号は、動き補償単位となる8x8ブロックサイズ以上のブロックごとに選択する参照画像を特定するための情報である。インターフレームのときには、選択できる参照画像は1フレームであるので、1ブロックごとに1つの参照画像識別番号が多重化される。動きベクトル情報は、動き補償単位となるブロックごとに1組の動きベクトル情報を多重化する。参照画像識別番号および動きベクトル情報は、マクロブロックに含まれる動き補償の単位となるブロックの個数分多重化される必要がある。基本参照画像識別番号132および基本動きベクトル情報133はインター予測モード共通化識別フラグ123が「C0、C1、C2で共通」であることを示す場合は、共通の参照画像識別番号および共通の動きベクトル情報を示し、さもなければC0に対する参照画像識別番号および動きベクトル情報を示す。拡張参照画像識別番号134および拡張動きベクトル情報135は、インター予測モード共通化識別フラグ123が「C0、C1、C2で共通」でないことを示す場合にのみC1、C2各々に対して多重化され、C1、C2に対する参照画像識別番号および動きベクトル情報を示す。
ついで量子化パラメータ21、量子化済み変換係数10が多重化される。(図34には図30で可変長符号化部11に入力されているデブロッキングフィルタ制御フラグ24が含まれていないが、本実施の形態7の特徴を説明するために必要な構成要素ではないため割愛している)
従来の映像符号化標準で採用されてきた4:2:0フォーマットでは、色空間の定義がY、Cb、Crに固定されていたが、4:4:4フォーマットではY、Cb、Crに限定せず多様な色空間を利用することができる。図34のようにインター予測モード情報を構成することで、入力映像信号1の色空間の定義が種々に及ぶ場合にも最適な符号化処理を行うことができる。たとえば、色空間がRGBで定義される場合にR、G、Bの各成分に均等に映像テクスチャの構造が残存している領域では、共通のインター予測モード情報と共通の動きベクトル情報を用いることでインター予測モード情報と動きベクトル情報自体の冗長性を削減して符号化効率を高めることができる。これに対し、例えば赤味がまったくない領域(R成分が0)では、R成分に最適なインター予測モードと動きベクトル情報とG,B成分に最適なインター予測モードと動きベクトル情報は異なるはずである。そこで、拡張インター予測モードと拡張参照画像識別情報および拡張動きベクトル情報を適応的に利用することで最適な符号化効率を得ることができる。
3.復号装置の動作概要
図31の復号装置は、図30の符号化装置から出力される図34の配列に従うビデオストリーム22を受信して、3つの色成分が同一サイズ(4:4:4フォーマット)のマクロブロックの単位で復号処理を行い、個々の映像フレームを復元するものとする。
まず、可変長復号部25はストリーム22を入力とし、所定の規則(シンタックス)に従ってビデオストリーム22を解読して、インター予測モード共通化識別フラグ123、量子化済み変換係数10、マクロブロックタイプ/サブマクロブロックタイプ106、参照画像識別番号、動きベクトル情報、量子化パラメータ21などの情報を抽出する。量子化済み変換係数10は量子化パラメータ21とともに逆量子化部12へ入力され、逆量子化処理が行われる。ついでその出力が逆直交変換部13へ入力され、局部復号予測差分信号14へ復元される。一方、動き補償予測部102に対してはマクロブロックタイプ/サブマクロブロックタイプ106とインター予測モード共通化識別フラグ123と動きベクトル137と参照画像識別番号が入力され、これらの情報に従って予測画像7を得る。予測画像7を得る具体的な手順については後述する。局部復号予測差分信号14と予測画像7は加算器18により加算され、暫定復号画像15を得る(これは符号化装置における局部復号画像15とまったく同じ信号である)。暫定復号画像15は以降のマクロブロックの動き補償予測に用いられるためメモリ16へ書き戻される。メモリは各色成分ごとに3面用意される(本実施の形態では3面として説明するが、設計により適宜変更してよい)。また、可変長復号部25によって解読されたデブロッキングフィルタ制御フラグ24の指示に基づいてデブロッキングフィルタ26を暫定復号画像15に対して作用させ、最終的な復号画像27を得る。
4.復号装置におけるインター予測復号処理
図31の復号装置は、図30の符号化装置から出力される図34の配列に従うビデオストリーム22を受信して、3つの色成分が同一サイズ(4:4:4フォーマット)のマクロブロックの単位で復号処理を行い、個々の映像フレームを復元するものとする。
本実施の形態7の復号装置の特徴であるインター予測画像生成処理について詳述する。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図31の復号装置における可変長復号部25、動き補償予測部102によって行われる。また、本処理のうち可変長復号部25で行われる処理の流れを示すフローチャートを図35に示す。
可変長復号部25への入力であるビデオストリーム22は、図34のデータ配列に従うものとする。ステップS110では図34のデータのうちインター予測モード共通化識別フラグ123が復号される(ステップS110)。さらに基本マクロブロックタイプ128および基本サブマクロブロックタイプ129が復号される(ステップS111)。ステップS112では、インター予測モード共通化識別フラグ123の結果を用いてインター予測モードをC0、C1、C2で共通化するかどうかを判断し、共通化の場合は(ステップS112でYes)C0、C1、C2のすべてに対して基本マクロブロックタイプ128および基本サブマクロブロックタイプ129を用いることとし、さもなければ(ステップS112でNo)基本マクロブロックタイプ128および基本サブマクロブロックタイプ129はC0のモードとして使用し、さらにC1、C2の各々に対して拡張マクロブロックタイプ130および拡張サブマクロブロックタイプ131を復号して(ステップS113)、C1、C2のインター予測モード情報を得る。次に基本参照画像識別番号132と基本動きベクトル情報133を復号し(ステップS114)、インター予測モード共通化識別フラグ123が、「C0、C1、C2で共通化」することを示す場合には(ステップS115でYes)、C0、C1、C2のすべてに対して基本参照画像識別番号132および基本動きベクトル情報133を用いることとし、さもなければ(ステップS115でNo)基本参照画像識別番号132および基本動きベクトル情報133はC0の情報として使用し、さらにC1、C2の各々に対して拡張参照画像識別番号134および拡張動きベクトル情報135を復号する(ステップS116)。以上の処理過程を経て各色成分のマクロブロックタイプ/サブマクロブロックタイプ106、参照画像識別番号および動きベクトル情報が確定するため、これらを動き補償予測部102へ出力し、各色成分の動き補償予測画像を得る。
図36に、図34のビットストリームデータ配列のバリエーションを示す。図36では、インター予測モード共通化識別フラグ123は、マクロブロックレベルのフラグとしてではなく、スライス、ピクチャ、シーケンスなどの上位データレイヤに位置するフラグとして多重化されるようにした。これにより、スライス以上の上位レイヤでの切り替えで十分な予測効率が確保できる場合は、マクロブロックレベルで予測モード共通化識別フラグ123を逐一多重化することなくオーバヘッドビットを削減できる。
図34、図36では、インター予測モード共通化識別フラグ123をマクロブロック毎またはスライス、ピクチャ、シーケンスなどの上位データレイヤに多重化したが、インター予測モード共通化識別フラグ123を多重化せずに4:4:4フォーマットで符号化する場合には常に各成分に異なるインター予測モードと動きベクトル情報を用いるようにしてもよい。その場合のビットストリームデータの配列を図37に示す。図37では、インター予測モード共通化識別フラグ123は存在せず、シーケンスなどの上位データレイヤに4:4:4フォーマットの入力画像を扱うことを指示するプロファイル情報136が多重化され、このプロファイル情報の復号結果によって、拡張マクロブロックタイプ130、拡張サブマクロブロックタイプ131、拡張参照画像識別番号134、拡張動きベクトル情報135が多重化される。
実施の形態8.
実施の形態7では、マクロブロックタイプ/サブマクロブロックタイプ、動きベクトル、参照画像の各々を色成分ごとに異なるものにすることができるようにしたが、本実施の形態8ではマクロブロックタイプ/サブマクロブロックタイプと参照画像を各成分で共通とし、動きベクトルのみを各成分で異なるものにすることができることを特徴とする映像符号化装置、映像復号装置について記述する。本実施の形態8における映像符号化装置および映像復号装置の構成は実施の形態7における図30および図31と同じであるが、インター予測モード共通化識別フラグ123の代わりに動きベクトル共通化識別フラグ123bを使用している点が異なる。
1.符号化装置におけるインター予測モード判定処理
本実施の形態8の符号化装置の特徴であるインター予測モード判定処理について実施の形態7と異なる処理を中心に詳述する。
本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図30の符号化装置における動き補償予測部102、符号化モード判定部5によって行われる。また、本処理の流れを示すフローチャートを図38に示す。以下、ブロックを構成する3つの色成分の画像データをC0、C1、C2とする。
まず、符号化モード判定部5は、動きベクトル共通化識別フラグ123bを受け取り、その値に基づいてC0、C1、C2で共通の動きベクトル137を使用するか否かを判断する(図37のステップS120)。共通化する場合はステップS121以降へ、さもなくばステップS122以降へ進む。
動きベクトル137をC0、C1、C2で共通化する場合は、符号化モード判定部5は動き補償予測部102に対して、選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、C0、C1、C2で共通の最適なインター予測モードと動きベクトル137と参照画像を選択する(ステップS121)。
動きベクトル137をC0、C1、C2で共通化せず、C0、C1、C2でそれぞれ一番よい動きベクトルを選択する場合は、符号化モード判定部5は動き補償予測部102に対して、選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、C0、C1、C2で共通の最適なインター予測モードと参照画像を選択し(ステップS122)、さらにCi (i<=0<3)成分において最適な動きベクトルを選択する(ステップS123、S124、S125)。
動きベクトル共通化識別フラグ123bは、ビットストリームに多重化して復号装置側で認識できるようにする必要がある。このようなビットストリームのデータ配列を図39に示す。
図39はマクロブロックのレベルにおけるビットストリームのデータ配列を示している。マクロブロックタイプ128bとサブマクロブロックタイプ129bおよび参照画像識別番号132bは、「C0、C1、C2で共通」である。基本動きベクトル情報133は、動きベクトル共通化識別フラグ123bが「C0、C1、C2で共通」であることを示す場合は、共通の動きベクトル情報を示し、さもなければC0に対する動きベクトル情報を示す。拡張動きベクトル情報135は、動きベクトル共通化識別フラグ123bが「C0、C1、C2で共通」でないことを示す場合にのみC1、C2各々に対して多重化され、C1、C2に対する動きベクトル情報を示す。なお、図30、31におけるマクロブロックタイプ/サブマクロブロックタイプ106は、図39におけるマクロブロックタイプ128bとサブマクロブロックタイプ129bの総称である。
2.復号装置におけるインター予測復号処理
本実施の形態8の復号装置は、本実施の形態8の符号化装置から出力される図39の配列に従うビデオストリーム22を受信して、3つの色成分が同一サイズ(4:4:4フォーマット)のマクロブロックの単位で復号処理を行い、個々の映像フレームを復元するものとする。
本実施の形態8の復号装置の特徴であるインター予測画像生成処理について実施の形態7と異なる処理を中心に詳述する。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図31の復号装置における可変長復号部25、動き補償予測部102によって行われる。また、本処理のうち可変長復号部25で行われる処理の流れを示すフローチャートを図40に示す。
可変長復号部25への入力であるビデオストリーム22は、図39のデータ配列に従うものとする。ステップS126では、C0、C1、C2で共通のマクロブロックタイプ128b、サブマクロブロックタイプ129bを復号する。復号したマクロブロックタイプ128bまたはサブマクロブロックタイプ129bによって、動き補償の単位となるブロックサイズが決まるので、次に動き補償の単位となるブロックごとにC0、C1、C2に共通の参照画像識別番号132bを復号する(ステップS127)。ステップS128では、動きベクトル共通化識別フラグ123bを復号する。次に動き補償の単位となるブロックごとに基本動きベクトル情報133を復号する(ステップS129)。ステップS130では、動きベクトル共通化識別フラグ123bの結果を用いて動きベクトル137をC0、C1、C2で共通化するかどうかを判断し、共通化の場合は(ステップS130でYes)C0、C1、C2のすべてに対して基本動きベクトル情報を用いることとし、さもなければ(ステップS130でNo)基本動きベクトル情報133はC0のモードとして使用し、さらにC1、C2の各々に対して拡張動きベクトル情報135を復号する(ステップS131)。以上の処理過程を経て各色成分のマクロブロックタイプ/サブマクロブロックタイプ106、参照画像識別番号および動きベクトル情報が確定するため、これらを動き補償予測部102へ出力し、各色成分の動き補償予測画像を得る。
図41に、図39のビットストリームデータ配列のバリエーションを示す。図39では、動きベクトル共通化識別フラグ123bは、マクロブロックレベルのフラグとしてではなく、スライス、ピクチャ、シーケンスなどの上位データレイヤに位置するフラグとして多重化されるようにした。これにより、スライス以上の上位レイヤでの切り替えで十分な予測効率が確保できる場合は、マクロブロックレベルで動きベクトル共通化識別フラグ123bを逐一多重化することなくオーバヘッドビットを削減できる。
図39、図41では動きベクトル共通化識別フラグ123bをマクロブロック毎またはスライス、ピクチャ、シーケンスなどの上位データレイヤに多重化したが、動きベクトル共通化識別フラグ123bを多重化せずに4:4:4フォーマットで符号化する場合には常に各成分に異なる動きベクトル情報を用いるようにしてもよい。その場合のビットストリームデータの配列を図42に示す。図42では、動きベクトル共通化識別フラグ123bが存在せず、シーケンスなどの上位データレイヤに4:4:4フォーマットの入力画像を扱うことを指示するプロファイル情報136が多重化され、このプロファイル情報136の復号結果によって、拡張動きベクトル情報135が多重化される。
本実施の形態8では、マクロブロックタイプ/サブマクロブロックタイプ106と参照画像を各色成分に対して共通とし、動きベクトル137のみを色成分ごとに異なるものにすることができるようにした。これにより、各色成分に対して動きベクトル137のみを適応化することで十分な予測効率が得られる場合にはマクロブロックタイプ/サブマクロブロックタイプ106や参照画像識別番号は色成分ごとに多重化することなくオーバヘッドビットを削減できる。
実施の形態9.
実施の形態7では、インター予測モード共通化識別フラグ123またはプロファイル情報136によって、マクロブロックタイプ/サブマクロブロックタイプ106、動きベクトル137、参照画像の各々を3成分で共通にするか、色成分ごとに異なるものにするかを切り替えることができるようにしたが、本実施の形態9では、Y、Cb、Cr形式などの4:4:4フォーマット画像を想定し、輝度成分(Y)と色差成分(Cb、Cr)に対して異なるものにするかを切り替えることができるようにした(この場合、色差成分の2成分に対しては共通のモードを使用する)。すなわち、3成分で共通にするか、各成分ごとに異なるものにするか、あるいは輝度成分と色差成分に対して異なるものにするかを切り替えることができるようにしたことを特徴とする映像符号化装置および映像復号装置について説明する。本実施の形態9における映像符号化装置および映像復号装置の構成は実施の形態7における図30および図31と同じである。
1.符号化装置におけるインター予測モード判定処理
本実施の形態9の符号化装置の特徴であるインター予測モード判定処理について実施の形態7と異なる処理を中心に詳述する。
本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図30の符号化装置における動き補償予測部102、符号化モード判定部5によって行われる。また、本処理の流れを示すフローチャートを図43に示す。以下、ブロックを構成する3つの色成分の画像データをC0、C1、C2とする。
まず、符号化モード判定部5は、インター予測モード共通化識別フラグ123を受け取り、その値に基づいてC0、C1、C2で共通のインター予測モードと共通の動きベクトル137および共通の参照画像を使用するか否かを判断する(図43のステップS132)。共通化する場合はステップS133以降へ、さもなくばステップS134以降またはステップS137以降へ進む。
インター予測モードと動きベクトル137および参照画像をC0、C1、C2で共通化する場合は、符号化モード判定部5は動き補償予測部102に対して、選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、C0、C1、C2で共通の最適なインター予測モードと動きベクトル137と参照画像を選択する(ステップS133)。
インター予測モードと動きベクトル137および参照画像をC0、C1、C2で共通化せず、C0、C1、C2でそれぞれ一番よいモードを選択する場合は、符号化モード判定部5は動き補償予測部102に対して、Ci (i<=0<3)成分で選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、Ci (i<=0<3)成分における最適なインター予測モードと動きベクトル137と参照画像を選択する(ステップS134、S135、S136)。
インター予測モードと動きベクトル137および参照画像をC1、C2で共通化し、C0(輝度成分相当)とC1,C2(色差成分相当)でそれぞれ一番よいモードを選択する場合は、符号化モード判定部5は動き補償予測部102に対して、C0成分で選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、C0成分における最適なインター予測モードと動きベクトル137と参照画像を選択する(ステップS137)。さらにC1、C2成分で選択しうるすべてのインター予測モードと動きベクトル探索範囲と参照画像を通知し、動き補償予測部102はそのすべての予測効率を評価して、C1、C2で共通の最適なインター予測モードと動きベクトル137と参照画像を選択する(ステップS138)。
本実施の形態9における符号化装置が出力するビットストリームのデータ配列は図34と同じであるが、インター予測モード共通化識別フラグ123が、「C1、C2で共通」であることを示す場合は、拡張マクロブロックタイプ130、拡張サブマクロブロックタイプ131、拡張参照識別番号134、拡張動きベクトル情報135は、C1、C2に対して共通の情報である。
2.復号装置におけるインター予測復号処理
本実施の形態9の復号装置は、本実施の形態9の符号化装置から出力される図34の配列に従うビデオストリーム22を受信して、3つの色成分が同一サイズ(4:4:4フォーマット)のマクロブロックの単位で復号処理を行い、個々の映像フレームを復元するものとする。
本実施の形態9の復号装置の特徴であるインター予測画像生成処理について実施の形態7と異なる処理を中心に詳述する。本処理は上記3つの色成分をまとめたマクロブロックの単位で実施され、主として、図31の復号装置における可変長復号部25、動き補償予測部102によって行われる。また、本処理のうち可変長復号部25で行われる処理の流れを示すフローチャートを図44に示す。
可変長復号部25への入力であるビデオストリーム22は、図34のデータ配列に従うものとする。ステップS140では図34のデータのうちインター予測モード共通化識別フラグ123が復号される(ステップS140)。さらに基本マクロブロックタイプ128および基本サブマクロブロックタイプ129が復号される(ステップS141)。ステップS142では、インター予測モード共通化識別フラグ123の結果を用いてインター予測モードをC0、C1、C2で共通化するかどうかを判断し、共通化の場合はC0、C1、C2のすべてに対して基本マクロブロックタイプ128および基本サブマクロブロックタイプ129を用いることとし、さもなければ基本マクロブロックタイプ128および基本サブマクロブロックタイプ129はC0のモードとして使用する。さらにC1、C2で共通の場合には、C1、C2成分で共通の拡張マクロブロックタイプ130および拡張サブマクロブロックタイプ131を復号する(ステップS143)。C0、C1、C2に対して異なるモードを使用する場合には、C1、C2の各々に対して拡張マクロブロックタイプ130および拡張サブマクロブロックタイプ131を復号して(ステップS144、S145、S146)、C1、C2のモード情報を得る。次に基本参照画像識別番号132と基本動きベクトル情報133を復号し(ステップS147)、インター予測モード共通化識別フラグ123が、「C0、C1、C2で共通化」することを示す場合には、C0、C1、C2のすべてに対して基本参照画像識別番号132および基本動きベクトル情報133を用いることとし、さもなければ基本参照画像識別番号132および基本動きベクトル情報133はC0の情報として使用し、さらにC1、C2で共通の場合には、C1、C2成分で共通の拡張参照画像識別番号134および拡張動きベクトル情報135を復号する(ステップS149)。C0、C1、C2に対して異なるモードを使用する場合には、C1、C2の各々に対して拡張参照画像識別番号134および拡張動きベクトル情報135を復号する(ステップS150、S151、S152)。以上の処理過程を経て各色成分のマクロブロックタイプ/サブマクロブロックタイプ106、参照画像識別番号および動きベクトル情報が確定するため、これらを動き補償予測部102へ出力し、各色成分の動き補償予測画像を得る。
なおビットストリームのデータ配列が、図36の場合も同様に、インター予測モード共通化識別フラグ123が、「C1、C2で共通」であることを示す場合は、拡張マクロブロックタイプ130、拡張サブマクロブロックタイプ131、拡張参照識別番号134、拡張動きベクトル情報135は、C1、C2に対して共通の情報であり、図36に示すデータの配列に従うビデオストリームを出入力とする映像符号化装置および映像復号装置の動作は図34の場合と同様である。
本実施の形態9では、マクロブロックタイプ/サブマクロブロックタイプ106、動きベクトル137、参照画像の各々を色成分ごとに異なるものにすることができるようにしたが、マクロブロックタイプ/サブマクロブロックタイプ106と参照画像は各成分で共通とし、動きベクトル137のみ3成分で共通にするか、各成分ごとに異なるものにするか、あるいはC1、C2で共通化し、C0とC1,C2でそれぞれ最適なものを選択するかを切り替えても良い。この場合のビットストリームのデータ配列は図39または図41に従い、この場合も、インター予測モード共通化識別フラグ123が、「C1、C2で共通」であることを示す場合は、拡張動きベクトル情報135は、C1、C2に対して共通の情報である。
実施の形態10.
本実施の形態10では、実施の形態7で述べた符号化装置の可変長符号化部11において、入力される動きベクトル137を符号化し、ビットストリームに多重化する方法と、対応する復号装置の可変長復号部25において、ビットストリームから動きベクトル137を復号する方法を述べる。
図45は図30に示す符号化装置の可変長符号化部11の一部で、動きベクトル137を符号化する動きベクトル符号化部の構成である。
3つの色成分(C0、C1、C2)の動きベクトル137をC0、C1、C2の順番にビットストリームに多重化する方法について述べる。
C0の動きベクトル137をmv0とする。動きベクトル予測部111にて、C0の動きベクトル137の予測ベクトル(mvp0)を求める。図46に示すように、符号化対象の動きベクトル(mv0)が位置するブロックに隣接するブロック(図46のA、B、C)の動きベクトル(mvA0, mvB0, mvC0)をメモリより取得する。なおA、B、Cの動きベクトル137はすでにビットストリームに多重化されているものとする。mvA0、mvB0、mvC0の中央値をmvp0として算出する。算出した予測ベクトルmvp0と符号化対象の動きベクトルmv0を差分動きベクトル算出部112へ入力する。差分動きベクトル算出部112ではmv0とmvp0の差分ベクトル(mvd0)を算出する。算出したmvd0は差分動きベクトル可変長符号化部113へ入力され、ハフマン符号化や算術符号化などの手段によりエントロピー符号化される。
次にC1の動きベクトル(mv1)を符号化する。動きベクトル予測部111にて、C1の動きベクトル137の予測ベクトル(mvp1)を求める。図46に示すように、符号化対象の動きベクトル(mv1)が位置するブロックに隣接するブロックの動きベクトル(mvA1、mvB1、mvC1)とmv1が位置するブロックと同位置のC0の動きベクトル(mv0)をメモリ16より取得する。なおA、B、Cの動きベクトル137はすでにビットストリームに多重化されているものとする。mvA1、mvB1、mvC1、mv0の中央値をmvp1として算出する。算出した予測ベクトルmvp1と符号化対象の動きベクトルmv1を差分動きベクトル算出部112へ入力し、mv1とmvp1の差分動きベクトル(mvd1=mv1-mvp1)を算出する。算出したmvd1は差分動きベクトル可変長符号化部113へ入力され、ハフマン符号化や算術符号化などの手段によりエントロピー符号化される。
次にC2の動きベクトル(mv2)を符号化する。動きベクトル予測部111にて、C2の動きベクトル137の予測ベクトル(mvp2)を求める。図46に示すように、符号化対象の動きベクトル(mv2)が位置するブロックに隣接するブロックの動きベクトル(mvA2、mvB2、mvC2)とmv2が位置するブロックと同位置のC0およびC1の動きベクトル(mv1、mv2)をメモリより取得する。mvA2、mvB2、mvC2、mv0、mv1の中央値をmvp2として算出する。算出した予測ベクトルmvp2と符号化対象の動きベクトルmv2を差分動きベクトル算出部112へ入力し、mv2とmvp2の差分動きベクトル(mvd2=mv2-mvp2)を算出する。算出したmvd2は差分動きベクトル可変長符号化部113へ入力され、ハフマン符号化や算術符号化などの手段によりエントロピー符号化される。
図47に図31に示す復号装置の可変長復号部25の一部で、動きベクトル137を復号する動きベクトル復号部250の構成を示す。
動きベクトル復号部250ではC0、C1、C2の順番にビデオストリーム22に多重化された3つの色成分の動きベクトル137を復号する。
差分動きベクトル可変長復号部251にて、ビデオストリーム22に多重化された3つの色成分(C0、C1、C2)の差分動きベクトル(mvd0、mvd1、mvd2)を抽出し可変長復号する。
動きベクトル予測部252にて、C0、C1、C2の動きベクトル137の予測ベクトル(mvp0、mvp1、mvp2)を算出する。予測ベクトルの算出方法は符号化装置の動きベクトル予測部111と同じである。
次に動きベクトル算出部253にて差分動きベクトルと予測ベクトルを加算し動きベクトル(mvi=mvdi+mvpi(i=0,1,2))を算出する。算出した動きベクトル137は予測ベクトル候補として用いるためにメモリ16に格納する。
本実施の形態10によれば、動きベクトルを符号化および復号する際に、符号化対象の動きベクトルが位置するブロックに隣接する同一色成分ブロックの動きベクトルと、符号化対象の動きベクトルが位置するブロックと同位置にあって異なる色成分ブロックの動きベクトルを予測ベクトル候補として用いることにしたので、物体の境界領域などで同一色成分内の隣接するブロックの動きベクトルと連続性がない場合などに、異なる色成分の同位置のブロックの動きベクトルを予測ベクトル候補として用いることで動きベクトルの予測効率を高め、動きベクトルの符号量を削減する効果が得られる。
実施の形態11.
本実施の形態11では、実施の形態7で述べた符号化装置および復号装置から派生する別の符号化装置、復号装置の実施例について述べる。本実施の形態11における符号化装置・復号装置は、マクロブロック中のC0、C1、C2成分を個別のヘッダ情報に従って符号化するか否かを所定の制御信号に応じて判断し、その制御信号の情報をビデオストリーム22に多重化する。また、当該制御信号に応じてC0、C1、C2成分の復号に必要なヘッダ情報をビデオストリーム22に多重化するとともに、当該制御信号に応じて伝送すべき動きベクトルや変換係数の情報がない場合のスキップ(またはnot coded)マクロブロックを効率よく符号化する手段を提供する点を特徴とする。
AVCも含め従来のMPEG映像符号化方式では、符号化対象のマクロブロックについて伝送すべき符号化情報が存在しないようなケースを特別にシグナリングすることで、当該マクロブロックの符号量を最小限に抑えた高能率符号化を実現している。例えば、あるマクロブロックを符号化しようとする場合、動き補償予測に用いる参照画像上でまったく同じ位置の画像データを予測画像として使用し(すなわち、動きベクトルがゼロ)、なおかつ得られた予測誤差信号を変換、量子化した結果、マクロブロック内の量子化後のすべての変換係数がゼロになる場合、復号側では逆量子化を行っても得られる予測誤差信号は振幅がゼロとなり、復号装置側へ伝送すべき変換係数データがなくなる。さらに、動きベクトルがゼロであることも結合仮定すれば、「動きベクトルゼロ、変換係数データ無し」という特別なマクロブロックタイプを定義することができる。このようなマクロブロックは従来、スキップマクロブロックまたはnot codedマクロブロックと呼ばれ、特別なシグナリングを行うことで余分な情報を伝送しないようにする工夫がなされている。AVCでは、動きベクトルの仮定を、「図32(a)の16x16予測を行う場合で、かつ動きベクトルの符号化に用いる予測値(予測ベクトルmvp0、mvp1、mvp2が該当)が実際の動きベクトルに等しい場合」という条件とし、その条件に合致し、かつ伝送すべき変換係数データがない場合に、スキップマクロブロックとみなす。従来のAVCでは、このスキップマクロブロックを符号化する場合に、使用する可変長符号化方式に応じて以下の2つの方法のいずれかを選択することになっている。
方法1:スライス内で連続するスキップマクロブロックの数(RUN長)をカウントし、RUN長を可変長符号化する。
方法2:マクロブロックごとに、スキップマクロブロックか否かの指示フラグを符号化する。
各方法によるビットストリームシンタックスを図48に示す。図48(a)は、可変長符号化方式として適応ハフマン符号化を用いた場合(方法1)、図48(b)は適応算術符号化を用いた場合(方法2)である。方法1の場合はmb_skip_run、方法2の場合は mb_skip_flagによってスキップマクロブロックのシグナリングを行っている。MB(n)はn番目の(スキップでない)マクロブロックの符号化データを指す。ここで、mb_skip_runやmb_skip_flagは、C0、C1、C2成分をひとまとめにしたマクロブロックを単位として割り当てられていることに注意されたい。
これに対して、本実施の形態11における符号化装置・復号装置では、上記制御信号、すなわち実施の形態7で述べたインター予測モード共通化識別フラグ123相当の信号の状態に応じて、C0、C1、C2の各成分ごとに動きベクトルなどを含むヘッダ情報を変更し、スキップマクロブロックのシグナリングをC0、C1、C2の各成分ごとに行う方法を提供する。具体的なビットストリームシンタックスの例を図49、図50に示す。
図49は本実施の形態11の符号化装置が出力し、本実施の形態11の復号装置の入力となるマクロブロック符号化データの構成を、図50は図49中のCn成分ヘッダ情報の符号化データの詳細構成を示す。以下では、このビットストリーム構成の効果を説明するため、ビットストリームを受信して映像信号を復元する復号装置側の動作を中心に説明する。復号装置の動作説明には図31を参照する。
実施の形態7におけるインター予測モード共通化識別フラグ123は、定義を拡張し、マクロブロックヘッダ共通化識別フラグ123cと表現する。マクロブロックヘッダ共通化識別フラグ123cはC0成分ヘッダ情報139aを基本マクロブロックヘッダ情報とみなし、C0成分ヘッダ情報139aのみをC1、C2成分にも共通に用いるヘッダ情報として多重化するか、C1成分ヘッダ情報139b、C2成分ヘッダ情報139cをそれぞれ個別に拡張ヘッダ情報として多重化するかを指示するフラグとする。マクロブロックヘッダ共通化識別フラグ123cはビデオストリーム22から可変長復号部25によって抽出・復号される。同フラグが、C0成分ヘッダ情報139aのみをC1,C2成分にも共通に用いるヘッダ情報として多重化することを示す場合は、マクロブロック中のC0、C1、C2の全成分に対して、C0成分ヘッダ情報139aを用いた復号を行い、C1成分ヘッダ情報139b、C2成分ヘッダ情報139cをそれぞれ個別に拡張ヘッダ情報として多重化することを示す場合は、マクロブロック中のC0、C1,C2それぞれの成分に固有のヘッダ情報139a〜139cを用いた復号を行うものとする。以下ではこの点をさらに詳しくマクロブロック単位の処理として説明する。
1.C0成分ヘッダ情報のみが多重化される場合
マクロブロックヘッダ共通化識別フラグ123cがC0成分ヘッダ情報139aのみをC1,C2成分にも共通に用いるヘッダ情報として多重化することを示している場合は、C0、C1、C2の全成分に対して、C0成分ヘッダ情報139aに含まれている各種マクロブロックヘッダ情報に基づいてマクロブロックの復号を行う。この場合は、C0成分スキップ指示情報138aとC0成分ヘッダ情報139aをC1、C2成分に対しても共通に適用することとするため、C1、C2成分についてのスキップ指示情報(138b、138c)、ヘッダ情報(139b、139c)はビットストリーム中に多重化されない。
可変長復号部25はまずC0成分スキップ指示情報138aを復号、評価する。ここでC0成分スキップ指示情報138aが「スキップ」であることを示す場合は、C0成分ヘッダ情報139aは符号化されていないものとみなし、C0成分ヘッダ情報139aのうちの変換係数有効無効指示情報142はゼロ(符号化されている変換係数がまったくない)であるとみなす。これにより、C0〜C2成分変換係数データ(140a〜140c)はすべて符号化されていないものとみなされ、マクロブロック中の量子化済み変換係数10を全てゼロとして出力する。さらに、スキップマクロブロックの定義に従って、C0、C1、C2全成分の動きベクトル137を同一値に設定し出力する。
C0成分スキップ指示情報138aが「スキップ」でないことを示す場合は、C0成分ヘッダ情報139aが存在するものとし、その復号を行う。C0成分ヘッダ情報139aの中で、マクロブロックタイプ128bがイントラ符号化を示していれば、イントラ予測モード141、変換係数有効無効指示情報142、(変換係数有効無効指示情報142が0でなければ)量子化パラメータを復号する。ここで変換係数有効無効指示情報142がゼロでなければ、C0〜C2成分変換係数データ(140a〜140c)を復号して量子化済み変換係数10の形式で出力する。変換係数有効無効指示情報142がゼロの場合は、C0〜C2成分変換係数データ(140a〜140c)はすべてゼロであるとし、マクロブロック中の量子化済み変換係数10を全てゼロとして出力する。マクロブロックタイプ128bがインター符号化を示していれば、必要に応じてサブマクロブロックタイプ129bを復号し、さらに参照画像識別番号132b、動きベクトル情報133b、変換係数有効無効指示情報142、(変換係数有効無効指示情報142が0でなければ)量子化パラメータ21を復号する。ここで変換係数有効無効指示情報142がゼロでなければ、C0〜C2成分変換係数データ(140a〜140c)を復号して量子化済み変換係数10の形式で出力する。変換係数有効無効指示情報142がゼロの場合は、C0〜C2成分変換係数データ(140a〜140c)はすべてゼロであるとし、マクロブロック中の量子化済み変換係数10を全てゼロとして出力する。以上の動作による可変長復号部25からの出力を用いて所定の処理手順に従ってマクロブロックの復号を行う点は実施の形態7と同様である。
2.C0、C1、C2成分について各対応ヘッダ情報が多重化される場合
マクロブロックヘッダ共通化識別フラグ123cがC1成分ヘッダ情報139b、C2成分ヘッダ情報139cをC0成分ヘッダ情報139aとは別にそれぞれ個別に拡張ヘッダ情報として多重化することを示している場合は、C0、C1、C2の各成分に対して、それぞれ対応するヘッダ情報(139a〜139c)に含まれる各種マクロブロックヘッダ情報に基づいて各成分画像の復号を行う。この場合は、C1、C2成分についてのスキップ指示情報(138b、138c)、ヘッダ情報(139b、139c)がビットストリームに多重化される。
可変長復号部25はまずC0成分スキップ指示情報138aを復号、評価する。ここでC0成分スキップ指示情報138aが「スキップ」であることを示す場合は、C0成分ヘッダ情報139aは符号化されていないものとみなし、C0成分ヘッダ情報139aのうちの変換係数有効無効指示情報142はゼロ(符号化されている変換係数がまったくない)であるとみなす。これにより、C0成分変換係数データ140aは符号化されていないものとみなされ、C0成分における量子化済み全変換係数をゼロとする(つまり、マクロブロックヘッダ共通化識別フラグ123cの値により、C0成分スキップ指示情報138aと変換係数有効無効指示情報142の関係が変化する)。さらに、C0成分の動きベクトル137をC0成分スキップの場合の定義に従って設定し出力する。
C0成分スキップ指示情報138aが「スキップ」でないことを示す場合は、C0成分ヘッダ情報139aが存在するものとし、その復号を行う。C0成分ヘッダ情報139aの中で、マクロブロックタイプ128bがイントラ符号化を示していれば、イントラ予測モード141(フレーム内の被予測対象画素の近傍画素を予測値として用いることにする空間画素予測のモード)と、変換係数有効無効指示情報142、(変換係数有効無効指示情報142が0でなければ)量子化パラメータ21を復号する。ここで変換係数有効無効指示情報142がゼロでなければ、C0成分変換係数データを復号して量子化済み変換係数10の形式で出力する。変換係数有効無効指示情報がゼロの場合は、C0成分変換係数データはすべてゼロであるとする。マクロブロックタイプがインター符号化を示していれば、必要に応じてサブマクロブロックタイプを復号し、さらに参照画像識別番号、動きベクトル情報、変換係数有効無効指示情報、(変換係数有効無効指示情報が0でなければ)量子化パラメータを復号する。ここで変換係数有効無効指示情報がゼロでなければ、C0成分変換係数データを復号して量子化済み変換係数10の形式で出力する。変換係数有効無効指示情報がゼロの場合は、C0成分変換係数データはすべてゼロであるとする。以上の処理手順を、C1、C2に対しても同様に行う。
以上の動作による可変長復号部25からの出力を用いて所定の処理手順に従ってマクロブロック中のC0、C1、C2の各成分の復号を行う点は実施の形態7と同様である。
以上は復号装置側での動作を中心に述べたが、このようにビットストリームを構成することにより、以下の効果が得られる。まず、従来のAVCではマクロブロックあたりに利用可能なヘッダ情報(図50)は1組しかなく、このヘッダ情報にしたがってC0〜C2の全成分をひとまとめでイントラ・インター判定を行って符号化を行う必要があった。一方、4:4:4フォーマットのように、画像信号の内容を伝える輝度信号相当の信号成分が3つの色成分に等価に含まれる場合に対しては、各成分への入力映像信号へのノイズの乗り方等に起因する信号特性のばらつきが生じることがあり、必ずしもC0〜C2の全成分をひとまとめで符号化することが最適ではないことがある。本実施の形態11における図49、図50のビットストリーム構成を前提にすることで、符号化装置は、マクロブロックヘッダ共通化識別フラグ123cによって、C0〜C2の各成分ごとに信号特性に応じた最適な符号化モード(イントラ・インター符号化種別を含むマクロブロックタイプ)、動きベクトルなどを選択して符号化を行うことができ、符号化効率を高めることができる。また、従来はC0〜C2の全成分をひとまとめにしたマクロブロックの単位で符号化を行っていたため、全成分の符号化情報がすべて存在しないことを条件にスキップと判定を行っていたが、本実施の形態11では、各成分ごとに符号化情報の有無をスキップ指示情報138で判別できるように構成したため、ある成分だけがスキップだが、別の成分はスキップでないというような場合に、全成分をスキップでないとする必要がなく、より効率的に符号量の割り当てを行うことが可能となる。なお、符号化装置において、スキップ指示情報138の値は、可変長符号化部11にて、量子化済み変換係数データ10と動きベクトル137・参照画像識別番号132b、マクロブロックタイプ/サブマクロブロックタイプ106に基づき、段落0220で述べたような符号化装置・復号装置の双方で一意に規定されるスキップマクロブロックの定義に従って決定される。
なお、本実施の形態11による符号化装置・復号装置が扱うビットストリームの構成は、図51のようにしてもよい。この例では、C0、C1、C2の各成分のスキップ指示情報(138)、ヘッダ情報(139a〜139c)、変換係数データ(140a〜140c)をそれぞれまとめて配置するようにした。この際、スキップ指示情報138は、C0、C1、C2の各状態をそれぞれ1ビットの符号シンボルで並べてもよいし、8状態を1つの符号シンボルにまとめて符号化するようにしてもよい。色成分間でスキップ状態に相関が高い場合は、符号シンボルをまとめて適切に算術符号化のコンテクストモデル(実施の形態12で後述)を定義することによって、スキップ指示情報138そのものの符号化効率を高めることもできる。
なお、マクロブロックヘッダ共通化識別フラグ123cは、マクロブロック、スライス、ピクチャ、シーケンスなどの任意のデータレイヤの単位でビットストリームに多重してもよい。入力信号において定常的に色成分間の信号の性質の違いがある場合には、マクロブロックヘッダ共通化識別フラグ123cをシーケンスの単位で多重化するように構成すれば、より少ないオーバヘッド情報で効率的な符号化を行うことができる。マクロブロックヘッダ共通化識別フラグ123cをピクチャの単位で多重化するように構成すれば、マクロブロックタイプのバリエーションが少ないIピクチャではヘッダを共通化し、マクロブロックタイプのバリエーションが多いP、Bピクチャでは色成分ごとに個別のヘッダを使用することで符号化効率と演算負荷のバランスを改善するなどの効果が期待できる。さらにピクチャレイヤでの切り替えは、シーンチェンジなど、ピクチャごとに信号の性質が変化するような映像信号の符号化制御の観点からも望ましいといえる。マクロブロックヘッダ共通化識別フラグ123cをマクロブロックの単位で多重化することにすると、マクロブロックあたりの符号量が増加する反面、マクロブロックの単位で各色成分の信号状態を踏まえてヘッダ情報の共通化を行うか否かを制御することが可能となり、画像の局所的な信号の変動によりよく追随して圧縮効率を向上させる符号化装置を構成することができる。
AVCのようにピクチャタイプ相当の符号化タイプがスライスレベルで切り替わる場合は、マクロブロックヘッダ共通化識別フラグ123cをスライスごとに多重し、同フラグが「C0、C1、C2で共通」であることを示す場合は当該スライスは3つの色成分の符号化情報をすべて含むようにビットストリームを構成し、また、同フラグが「C0、C1、C2で共通」でないことを示す場合は、1つのスライスが1つの色成分の情報を含むようにビットストリームを構成する方法が考えられる。この様子を図52に示す。図52において、マクロブロックヘッダ共通化識別フラグ123cには、「カレントスライスは3つの色成分の符号化情報をすべて含んでいる」か「カレントスライスはある特定の色成分の符号化情報を含んでいる」かのスライス構成識別情報としての意味を持たせている。もちろん、このようなスライス構成識別情報をマクロブロックヘッダ共通化識別フラグ123cとは別に用意してもよい。「カレントスライスはある特定の色成分の符号化情報を含んでいる」と識別される場合には、それが「C0、C1、C2のうちどれか」という識別を含むものとする。また、このようにしてスライス単位で、一つのマクロブロックヘッダをC0、C1、C2成分で共通に用いるか(C0、C1、C2混在スライス)、C0、C1、C2成分ごとにマクロブロックヘッダを個別に多重するか(C0スライス、C1スライス、C2スライス)を切り替える場合、1ピクチャ内でこれら2種類のスライスが混在する場合においては、C0スライス、C1スライス、C2スライスは常に画面内の同一位置のマクロブロックを符号化したデータとして組にしてビットストリームに多重する制約を設ける。すなわち、スライスヘッダに含まれてスライスの先頭マクロブロックのピクチャ内位置を示すfirst_mb_in_sliceの値は、一組のC0スライス、C1スライス、C2スライスで常に同一の値をとり、かつ、一組のC0スライス、C1スライス、C2スライスに含まれるマクロブロックの個数は同じ数とする。この様子を図53に示す。ビットストリームの構成にこのような制約を設けることにより、符号化装置では、ピクチャ内の局所的な信号の性質に応じて、C0、C1、C2混在スライスと、C0スライス、C1スライス、C2スライスの組のうち、符号化効率の高い符号化方法を適応的に選択して符号化することができ、復号装置はそのようにして効率的に符号化されたビットストリームを受信して映像信号を再生できる。例えば、図31の復号装置に入力されるビットストリーム22がこのような構成であるとすると、可変長復号部25ではスライスデータが入力されるたびにスライス構成識別情報をビットストリームから復号し、これから復号しようとするスライスが図52のいずれのスライスかを識別する。スライス構成識別情報から、C0スライス、C1スライス、C2スライスの組として符号化データが構成されると判断される場合は、インター予測モード共通化識別フラグ123(またはマクロブロックヘッダ共通化識別フラグ123c)の状態を「C0、C1、C2で個別のインター予測モードまたは(マクロブロックヘッダ)を使用」であると定めて復号動作を行うようにすればよい。各スライスのfirst_mb_in_sliceの値とスライス中のマクロブロック個数が等しいことが保証されるため、これに基づいてC0、C1、C2混在スライスとピクチャ上でのオーバラップやギャップを発生させることなく復号処理が可能である。
また、C0、C1、C2の各スライスの信号の性質が大きく異なる場合にこのような制約を設けることによる符号化効率の低下を回避するため、ピクチャ内で異なるスライス構成識別情報の値を持つスライスの混在を許可するかしないかをピクチャレベルまたはシーケンスレベルで選択可能とする識別情報を付与するように構成してもよい。
実施の形態12.
本実施の形態12では、実施の形態11で述べた符号化装置および復号装置から派生する別の符号化装置、復号装置の実施例について述べる。本実施の形態12における符号化装置・復号装置は、マクロブロック中のC0、C1、C2各成分の符号化を、適応算術符号化方式を用いて行う場合に、算術符号化に用いるシンボル生起確率ならびにその学習過程を全成分で共有するか、各成分ごとに分離するかを、ビットストリーム中に多重される指示情報によって適応的に切り替えることを特徴とする。
本実施の形態12は、符号化装置では図30の可変長符号化部11、復号装置では図31の可変長復号部25内の処理のみが実施の形態11と異なり、それ以外の動作は実施の形態11に順ずる。以下、本実施の形態12のポイントである算術符号化および復号処理について詳細に説明する。
1.符号化処理
図54は可変長符号化部11における算術符号化処理に関わる内部構成を、図55及び図56はその動作フローを示す。
本実施の形態12における可変長符号化部11は、符号化対象データである動きベクトル137、参照画像識別番号132b、マクロブロックタイプ/サブマクロブロックタイプ106、イントラ予測モード141、量子化済み変換係数10などの個々のデータタイプに対して定義されるコンテクストモデル(後述)を定めるコンテクストモデル決定部11a、各符号化対象データタイプについて定められる二値化規則に従って多値データを二値データに変換する二値化部11b、二値化後の個々のbinの値(0 or 1)の生起確率を与える生起確率生成部11c、生成された生起確率に基づいて算術符号化を実行する符号化部11d、生起確率情報を記憶するメモリ11gから構成される。コンテクストモデル決定部11aへの入力は、動きベクトル137・参照画像識別番号132b、マクロブロックタイプ/サブマクロブロックタイプ106、イントラ予測モード141、量子化済み変換係数10など、可変長符号化部11に符号化対象データとして入力される各種データであって、符号化部11dからの出力はビデオストリーム22のマクロブロックに関わる情報に相当する。
(1)コンテクストモデル決定処理(図55におけるステップS160)
コンテクストモデルとは、情報源シンボルの生起確率の変動要因となる他の情報との依存関係をモデル化したものであり、この依存関係に対応して生起確率の状態を切り替えることで、よりシンボルの実際の生起確率に適応した符号化を行うことが可能となる。図57にコンテクストモデル(ctx)の概念を示す。なお、図57では情報源シンボルは二値としたが、多値でも構わない。図57の0〜2というctxの選択肢は、このctxを用いる情報源シンボルの生起確率の状態が、状況に応じて変化するであろうことを想定して定義されている。本実施の形態12における映像符号化で言えば、あるマクロブロックにおける符号化データとその周辺のマクロブロックの符号化データとの間の依存関係に応じてctxの値が切り替えられる。例えば、図58に、D. Marpe他, 「Video Compression Using Context-Based Adaptive Arithmetic Coding」, International Conference on Image Processing 2001に開示されるマクロブロックの動きベクトルに関するコンテクストモデルの例を示す。図58において、ブロックCの動きベクトルが符号化対象であり(正確には、ブロックCの動きベクトルを近傍から予測した予測差分値mvdk(C)が符号化される)、ctx_mvd(C,k)がコンテクストモデルを示す。mvdk(A)はブロックAにおける動きベクトル予測差分値、mvdk(B)はブロックBにおける動きベクトル予測差分値をそれぞれ示し、コンテクストモデルの切り替え評価値ek(C)の定義に用いられる。評価値ek(C)は、近傍の動きベクトルのばらつき具合を示すことになり、一般的にはこのばらつきが小さい場合にはmvdk(C)は小さく、逆にek(C)が大きい場合はmvdk(C)も大きくなる傾向がある。したがって、mvdk(C)のシンボル生起確率は、ek(C)に基づいて適応化されることが望ましい。この生起確率のバリエーションセットがコンテクストモデルであり、このケースでは3種類の生起確率バリエーションがある、といえる。
この他、マクロブロックタイプ/サブマクロブロックタイプ106、イントラ予測モード141、量子化済み変換係数10などの符号化対象データそれぞれについてあらかじめコンテクストモデルが定義され、符号化装置と復号装置で共有される。コンテクストモデル決定部11aでは、このような符号化対象データの種別に基づいてあらかじめ定められたモデルを選択する処理を行う(コンテクストモデルの中のどの生起確率バリエーションを選択するかは下記(3)の生起確率生成処理に該当する)。
(2)二値化処理(図55におけるステップS161)
コンテクストモデルは、符号化対象データを二値化部11bにて二値系列化し、二値系列の各bin(バイナリ位置)に応じて定められる。二値化の規則は、各符号化データの取りうる値のおおまかな分布に従い、可変長の二値系列への変換を行う。二値化は、本来多値を取りうる符号化対象データをそのまま算術符号化するよりもbin単位で符号化することにより確率数直線分割数を削減でき演算を簡略化できる、コンテクストモデルのスリム化が可能になるなどのメリットがある。
(3)生起確率生成処理(図55におけるステップS162(ステップS162の詳細は図56))
上記(1)、(2)のプロセスで、多値の符号化対象データの二値化と、各binに適用するコンテクストモデルの設定が完了し、符号化準備が整う。次いで生起確率生成部11cにて算術符号化に用いる生起確率状態の生成処理が行われる。各コンテクストモデルには、0/1の各値に対する生起確率のバリエーションが含まれているので、図54に示すように、ステップS160で決定されたコンテクストモデル11fを参照して処理を行う。図58のek(C)に示したような生起確率選択のための評価値を定め、これに従って、参照するコンテクストモデルの選択肢の中からどの生起確率バリエーションを現在の符号化に用いるかを決定する(図56のステップS162a)。さらに、本実施の形態12における可変長符号化部11は、生起確率情報記憶メモリ11gを備え、符号化の過程で順次更新される生起確率状態11hを色成分別に記憶する機構を備える。生起確率生成部11cは、生起確率状態パラメータ共通化識別フラグ143の値に応じて、現在の符号化に用いる生起確率状態11hをC0〜C2の色成分別に保持されたものから選択するか、C0成分用のものをC1、C2で共有するかを選択して、実際に符号化に用いる生起確率状態11hを決定する(図56のS162b〜S162d)。
生起確率状態パラメータ共通化識別フラグ143は、復号装置で同様の選択を行うことを可能とするため、ビットストリームに多重化する必要がある。このような構成とすることにより、以下の効果がある。例えば、図58を例にとると、マクロブロックヘッダ共通化識別フラグ123cがC0成分ヘッダ情報139aを他の成分でも使用することを示す場合、マクロブロックタイプ128bが16x16予測モードを示していれば、図58のek(C)はマクロブロックあたり1つだけ定まる。このときは、C0成分用に用意された生起確率状態を常時使用する。一方、マクロブロックヘッダ共通化識別フラグ123cが各成分に対応するヘッダ情報(139a〜139c)を使用することを示す場合、マクロブロックタイプ128bがC0、C1、C2のいずれにおいても16x16予測モードを示していれば、図58のek(C)はマクロブロックあたり3つのバリエーションがありうる。後段の符号化部11dでは、それぞれのバリエーションについて、C0成分で用意される生起確率状態11hを共通的に使用、更新するか、または、各色成分別に用意される生起確率状態11hを個別に使用、更新するかという2つの選択肢をとりうる。前者は、C0、C1、C2各成分でほぼ同じような動きベクトル分布をもつ場合、生起確率状態11hを共通的に使用・更新することで学習回数が増え、よりよく動きベクトルの生起確率を学習できる可能性がある。後者は、逆にC0、C1、C2各成分でばらばらの動きベクトル分布をもつ場合、生起確率状態11hを個別に使用・更新することで学習によるミスマッチを削減でき、よりよく動きベクトルの生起確率を学習できる可能性がある。映像信号は非定常であるため、このような適応制御が可能になることにより、算術符号化の効率を高めることができる。
(4)符号化処理
(3)によって、算術符号化プロセスに必要な確率数直線上の0/1各値の生起確率が得られるため、従来例にあげたプロセスにしたがって符号化部11dにおいて算術符号化を行う(図55のステップS163)。また、実際の符号化値(0 or 1)11eは、生起確率生成部11cへフィードバックされ、使用した生起確率状態11hの更新のため、0/1発生頻度のカウントが行われる(ステップS164)。例えば、ある特定の生起確率状態11hを用いて100個のbinの符号化処理が行われた時点で、当該生起確率バリエーションにおける0/1の生起確率が0.25、0.75であったとする。ここで、同じ生起確率バリエーションを用いて1が符号化されると、1の出現頻度が更新され、0/1の生起確率は0.247、0.752に変化する。このメカニズムにより、実際の生起確率に適応した効率的な符号化を行うことが可能となる。符号化値11eは可変長符号化部11からの出力となり、ビデオストリーム22として符号化装置から出力される。
図59は可変長復号部25における算術復号処理に関わる内部構成を、図60はその動作フローを示す。
本実施の形態12における可変長復号部25は、動きベクトル137・参照画像識別番号132b、マクロブロックタイプ/サブマクロブロックタイプ106、イントラ予測モード141、量子化済み変換係数10などの個々の復号対象データのタイプを特定して、それぞれに符号化装置と共通定義されるコンテクストモデルを定めるコンテクストモデル決定部11a、復号対象データのタイプに基づいて定まる二値化規則を生成する二値化部11b、二値化規則とコンテクストモデルに従って、個々のbin(0 or 1)の生起確率を与える生起確率生成部11c、生成された生起確率に基づいて算術復号を実行し、その結果得られる二値系列と、上記二値化規則とから、動きベクトル137・参照画像識別番号132b、マクロブロックタイプ/サブマクロブロックタイプ106、イントラ予測モード141、量子化済み変換係数10などのデータを復号する復号部25a、生起確率情報を記憶するメモリ11gとから構成される。11a〜11c及び11gは図54の可変長符号化部11の内部構成要素と同一のものである。
(5)コンテクストモデル決定処理、二値化処理、生起確率生成処理
これらのプロセスは符号化装置側のプロセス(1)〜(3)に準ずる。なお、図示していないが、生起確率状態パラメータ共通化識別フラグ143は、ビデオストリーム22からあらかじめ抽出されているものとする。
(6)算術復号処理
これから復号しようとするbinの生起確率が(6)までのプロセスで確定するため、復号部25aにおいて、所定の算術復号処理プロセスにしたがって、binの値を復元する(図60におけるステップS166)。binの復元値25bは、生起確率生成部11cへフィードバックされ、使用した生起確率状態11hの更新のため、0/1発生頻度のカウントが行われる(ステップS164)。復号部25aでは、各binの復元値が確定するごとに、二値化規則で定められる二値系列パターンとの合致を確認し、合致したパターンが指し示すデータ値を復号データ値として出力する(ステップS167)。復号データが確定しない限りは、ステップS166へ戻って復号処理を継続する。
以上の構成による、算術符号化ならびに算術復号処理を備えた符号化・復号装置によれば、マクロブロックヘッダ共通化識別フラグ123cに応じて適応的に色成分ごとの符号化情報を算術符号化する場合において、より効率的な符号化が可能となる。
なお、特に図示していないが、生起確率状態パラメータ共通化識別フラグ143を多重する単位はマクロブロック単位、スライス単位、ピクチャ単位、シーケンス単位のいずれでもよい。スライス、ピクチャ、シーケンスなどの上位データレイヤに位置するフラグとして多重化されるようにすることで、スライス以上の上位レイヤでの切り替えで十分な符号化効率が確保できる場合は、マクロブロックレベルで生起確率状態パラメータ共通化識別フラグ143を逐一多重化することなくオーバヘッドビットを削減できる。
また、生起確率状態パラメータ共通化識別フラグ143は、それ自体とは別のビットストリーム中に含まれる関連情報に基づいて復号装置の内部で定まる情報であってもよい。
本実施の形態12において、マクロブロックヘッダ共通化識別フラグ123cをマクロブロック単位に算術符号化する際は、コンテクストモデル11fについて図61に示すモデルを用いる。図61において、マクロブロックXにおけるマクロブロックヘッダ共通化識別フラグ123cの値をIDCXとする。マクロブロックCにおけるマクロブロックヘッダ共通化識別フラグ123cの符号化を行う場合は、マクロブロックAのマクロブロックヘッダ共通化識別フラグ123cの値IDCAと、マクロブロックBのマクロブロックヘッダ共通化識別フラグ123cの値IDCBとの値に基づいて、同図の式に基づいて、以下の3つの状態をとる。
・ 値0:A、Bの両方とも「C0、C1、C2で共通のマクロブロックヘッダを使用する」モードである
・ 値1:A、Bのうちいずれかが「C0、C1、C2で共通のマクロブロックヘッダを使用する」モードで、他方が「C0、C1、C2で個別のマクロブロックヘッダを使用する」モードである
・ 値2:A、Bの両方とも「C0、C1、C2で個別のマクロブロックヘッダを使用する」モードである
このようにマクロブロックヘッダ共通化識別フラグ123cを符号化することにより、近傍のマクロブロックの符号化状態に適合して算術符号化を行うことができ、符号化効率を高めることができる。なお、符号化側でも復号側でも同じ手順でコンテクストモデルを定義して算術復号することは、上記本実施の形態12の復号装置の動作説明から自明である。
また、本実施の形態12において、マクロブロックヘッダ中に含まれる図50のヘッダ情報(マクロブロックタイプ、サブマクロブロックタイプ、イントラ予測モード、参照画像識別番号、動きベクトル、変換係数有効無効指示情報、量子化パラメータ)については、それぞれ各情報種別ごとに定義されるコンテクストモデルで算術符号化を行うが、いずれのコンテクストモデルも図62に示すように、カレントマクロブロックCに対して、マクロブロックA、Bの対応する情報を参照して定義される。ここで、図62(a)のように、マクロブロックCが「C0、C1、C2で共通のマクロブロックヘッダを使用する」モードであって、マクロブロックBが「C0、C1、C2で個別のマクロブロックヘッダを使用する」モードである場合には、コンテクストモデル定義上の参照情報として、C0、C1、C2のいずれか特定の色成分の情報を用いる。
例えば、C0、C1、C2が、R、G、B色成分に対応する場合は、画像の構造をよく表現する信号として従来から符号化に用いられてきた輝度信号に最も近い成分を持つG成分を選択するといった方法が考えられる。それは「C0、C1、C2で共通のマクロブロックヘッダを使用する」モードでも、G成分を基準にしてマクロブロックヘッダの情報を定めて符号化を行うケースが多いと考えられるからである。
一方、逆のケースで、図62(b)のように、マクロブロックCが「C0、C1、C2で個別のマクロブロックヘッダを使用する」モードであって、マクロブロックBが「C0、C1、C2で共通のマクロブロックヘッダを使用する」モードが存在する場合には、マクロブロックCでは、3つの色成分のヘッダ情報を符号化・復号する必要があるが、その際、各色成分のヘッダ情報のコンテクストモデル定義上の参照情報として、マクロブロックBについては3成分共通のヘッダ情報を3成分同じ値として用いることとする。また、自明であるが、マクロブロックAもBもCもすべてマクロブロックヘッダ共通化識別フラグ123cが同じ値を示す場合は、それぞれ対応する参照情報が常に存在するのでそれらを用いることとする。
なお、符号化側でも復号側でも同じ手順でコンテクストモデルを定義して算術復号することは、上記本実施の形態12の復号装置の動作説明から自明である。また、どの成分の情報を参照したコンテクストモデルを用いるかが決まった後は、そのコンテクストモデルに対応付けられている生起確率状態の更新は生起確率状態パラメータ共通化識別フラグ143の状態に基づいて実行する。
また、本実施の形態12において、C0、C1、C2成分の各変換係数データについても各符号化対象データの生起確率分布に応じた算術符号化が行われる。これらのデータはマクロブロックヘッダを共通化するしないに関わらず、常に3成分分の符号化データがビットストリームに含まれる。本実施の形態12では、符号化入力信号の色空間上でイントラ予測、インター予測が行われて予測差分信号が得られるので、予測差分信号を整数変換して得られる変換係数データの分布は、図62のようなマクロブロックヘッダを共通化するしないといった周辺の状態に関わらず、同様の生起確率分布になると考えられる。そこで、本実施の形態12では、C0、C1、C2の各成分ごとに、マクロブロックヘッダを共通化するしないに関わらず、共通のコンテクストモデルを定義して符号化・復号に用いる。
なお、符号化側でも復号側でも同じ手順でコンテクストモデルを定義して算術復号することは、上記本実施の形態12の復号装置の動作説明から自明である。また、どの成分の情報を参照したコンテクストモデルを用いるかが決まった後は、そのコンテクストモデルに対応付けられている生起確率状態の更新は生起確率状態パラメータ共通化識別フラグ143の状態に基づいて実行する。
実施の形態13.
本実施の形態13では、実施の形態7〜12で述べた符号化装置および復号装置から派生する別の符号化装置、復号装置の実施形態について述べる。本実施の形態13における符号化装置・復号装置は、実施の形態7〜12に記載の符号化装置の入力段で色空間変換処理を行い、撮像後に符号化装置へ入力される映像信号の色空間を符号化に適した任意の色空間に変換して、復号側で撮像時の色空間へ戻すための逆変換処理を指定する情報をビットストリームに多重化する符号化装置と、逆変換処理を指定する情報をビットストリームから抽出して、実施の形態7〜12に記載の復号装置によって復号画像を得たのち、逆変換処理を指定する情報に基づいて逆色空間変換を行う構成を特徴とする。
本実施の形態13における符号化装置・復号装置の構成を図63に示す。図63により本実施の形態13の符号化装置・復号装置について説明する。
本実施の形態13の符号化装置は、実施の形態7〜12の符号化装置303に加えて、その前段に色空間変換部301を備える。色空間変換部301は、1つまたは複数の色空間変換処理を備え、入力される映像信号の性質やシステムの設定などによって使用する色空間変換処理を選択して入力映像信号に対する色空間変換処理を行い、その結果得られる変換映像信号302を符号化装置303へ送る。また、同時に使用した色空間変換処理を識別する情報を色空間変換方法識別情報304として符号化装置303へ出力する。符号化装置303は、変換映像信号302を符号化対象信号として実施の形態7〜12に示す方法で圧縮符号化したビットストリーム305に、色空間変換方法識別情報304を多重して伝送路へ送出、または記録メディアへの記録を行う記録装置へ出力する。
ここで、用意される色空間変換方法は、例えば、従来標準で用いられているRGBからYUVへの変換
C0 = Y = 0.299 x R + 0.587 x G + 0.114 x B
C1 = U = -0.169 x R - 0.3316 x G + 0.500 x B
C2 = V = 0.500 x R - 0.4186 x G - 0.0813 x B
や、色成分間の予測、
C0 = G' = G
C1 = B' = B - f(G) (ただし、f(G): G成分に対するフィルタ処理結果)
C2 = R' = R - f(G)
や、RGBからYCoCgへの変換
C0 = Y = R/2 + G/2 + B/4
C1 = Co = R/2 - B/2
C2 = Cg = -R/4 + G/2 - B/4
のような変換がある。色空間変換部301に対する入力はRGBに限定する必要はなく、また変換処理も上記3種に限定するものではない。
本実施の形態13の復号装置は、実施の形態7〜12の復号装置306に加えて、その後段に逆色空間変換部308を備える。復号装置306はビットストリーム305を入力として、色空間変換方法識別情報304をビットストリーム305から抽出して出力するとともに、実施の形態7〜12に記載の復号装置の動作により得られる復号画像307を出力する。逆色空間変換部308は、上記色空間変換部301で選択可能な色空間変換方法のそれぞれに対して対応する逆変換処理を備え、復号装置306から出力される色空間変換方法識別情報304に基づいて色空間変換部301で実行された変換を特定して、復号画像307に対して逆変換処理を施し、本実施の形態13の符号化装置に対する入力映像信号の色空間へ戻す処理を行う。
本実施の形態13のような符号化装置・復号装置によれば、符号化の前段と復号処理の後段で符号化される映像信号に対して最適な色空間の変換処理を行うことにより、3つの色成分から構成される画像信号中に含まれる相関を符号化前に除去して、冗長度を少なくした状態で符号化を行うことができ、圧縮効率を高めることができる。従来のMPEG等の標準符号化方式では、符号化対象の信号の色空間をYUVの1種類に限定していたが、色空間変換部301、逆色空間変換部308を備え、色空間変換方法識別情報304をビットストリーム305に含めることにより、符号化入力される映像信号の色空間に関する制限をなくすことができ、かつ色成分間の相関を取り除く複数種類の手段の中から最適な変換を用いて符号化することが可能になる。色空間変換方法識別情報304はピクチャ、スライス、マクロブロックといったレベルで多重するように構成してもよい。例えばマクロブロック単位で多重することにより、3つの色成分間の局所的な相関をもっともよく取り除くことができる変換を選択的に使用することができ、符号化効率を高めることができる。
本実施の形態13では、色空間変換部301、逆色空間変換部308を常に動作させるという前提で記載したが、これらの処理部を動作させず、従来の規格との互換性を確保することを指示する情報を、シーケンスなどの上位のレイヤで符号化する構成をとることも可能である。
また、本実施の形態13の色空間変換部301、逆色空間変換部308を、本実施の形態7〜12の符号化装置、復号装置の内部構成に取り入れるようにして、予測差分信号レベルでの色空間変換を行うように構成することもできる。このように構成した符号化装置を図64に、復号装置を図65に示す。図64の符号化装置では、直交変換部8の代わりに変換部310が、逆直交変換部13の代わりに逆変換部312が備えられ、図65の復号装置では、逆直交変換部13の代わりに逆変換部312が備えられている。
変換部310は、符号化モード判定部5から出力されるC0、C1、C2成分の予測差分信号4に対して、上記色空間変換部301の処理として示したように、複数の色空間変換処理の中から最適な変換処理を選択して色空間変換をまず実行する。その後、色空間変換の結果に対して直交変換部8相当の変換を実行する。どの変換を選択したかを示す色空間変換方法識別情報311は可変長符号化部11に送り、ビットストリームに多重してビデオストリーム22として出力する。また、逆変換部312では、まず逆直交変換部13相当の逆変換を行った後、色空間変換方法識別情報311で指定される色空間変換処理を用いて逆色空間変換処理を実行する。
復号装置では、可変長復号部25でビットストリームから色空間変換方法識別情報311を抽出して、その結果を逆変換部312へ送ることで、上述の符号化装置における逆変換部312と同様の処理を行う。このように構成することで、色成分の間に残存する相関が予測差分領域で十分に除去できるような場合は、それを符号化処理の一部として実行するようにでき、符号化効率を高める効果がある。ただし、C0、C1、C2成分で個別のマクロブロックヘッダを用いる場合には、そもそもC0成分はイントラ予測、C1成分はインター予測といったように、成分ごとに予測の方法が変化しうるため、予測差分信号4の領域での相関が保持されにくいこともある。したがって、C0、C1、C2成分で個別のマクロブロックヘッダを用いる場合は、変換部310、逆変換部312は色空間変換を実行しないように動作させるようにしてもよいし、予測差分信号4の領域で色空間変換を実行するかしないかを識別情報としてビットストリームに多重するように構成してもよい。なお、色空間変換方法識別情報311はシーケンス、ピクチャ、スライス、マクロブロックのいずれの単位で切り替えられるようにしてもよい。
図64、図65の符号化装置、復号装置の構成では、C0、C1、C2成分の各変換係数データは、色空間変換方法識別情報311に応じて符号化対象信号の信号定義ドメインが異なることになる。したがって、色空間変換方法識別情報311に応じて、変換係数データの分布は、異なる生起確率分布になるのが一般的と考えられる。そこで、図64、65のように符号化装置、復号装置を構成する場合は、C0、C1、C2の各成分ごとに、色空間変換方法識別情報311の状態ごとに個別の生起確率状態が対応付けられたコンテクストモデルを用いて符号化・復号を行う。
なお、符号化側でも復号側でも同じ手順でコンテクストモデルを定義して算術復号することは、上記本実施の形態12の復号装置の動作説明から自明である。また、どの成分の情報を参照したコンテクストモデルを用いるかが決まった後は、そのコンテクストモデルに対応付けられている生起確率状態の更新は生起確率状態パラメータ共通化識別フラグ143の状態に基づいて実行する。
実施の形態14.
本実施の形態14では、上記実施の形態で述べた符号化装置・復号装置につき、さらに具体的な装置構成について言及する。
上記実施の形態では、符号化装置・復号装置の動作説明を、例えば図1、図2、図30、図31等に準ずる図面を用いて実施した。これらの図面では、3つの色成分からなる入力映像信号を符号化装置に一括入力して、装置内部で3つの色成分を共通の予測モードやマクロブロックヘッダに基づいて符号化するか個々の予測モードやマクロブロックヘッダに基づいて符号化するかを選択しながら符号化を行い、その結果得られるビットストリームを復号装置に入力して、復号装置内部で3つの色成分が予測モードやマクロブロックヘッダに基づいて符号化されているか個々の予測モードやマクロブロックヘッダに基づいて符号化されているかを、ビットストリームから復号して取り出したフラグ(例えば、イントラ予測モード共通化識別フラグ23、インター予測モード共通化識別フラグ123等)に基づいて選択しながら復号処理を行い再生映像を得る動作を説明した。上記フラグはマクロブロック、スライス、ピクチャ、シーケンスなどの任意のデータレイヤの単位で符号化・復号してもよい旨はすでに明記したが、本実施の形態14では、特に、3つの色成分信号を共通のマクロブロックヘッダで符号化するか、個別のマクロブロックヘッダで符号化するかを1フレーム(ないしは1フィールド)の単位で切り分けながら符号化・復号する装置構成・動作を具体的な図面をもとに説明する。以下、特に断らない限り、「1フレーム」と記載した場合は1フレームないしは1フィールドのデータ単位とみなす。
本実施の形態14におけるマクロブロックヘッダは、図15のような変換ブロックサイズ識別フラグ、図50のようなマクロブロックタイプ・サブマクロブロックタイプ・イントラ予測モードなどの符号化・予測モード情報、参照画像識別番号・動きベクトルなどの動き予測情報、変換係数有効無効指示情報、変換係数に対する量子化パラメータ等、変換係数データ以外のマクロブロックオーバヘッド情報を含むものとする。
以降、1フレームの3つの色成分信号を共通のマクロブロックヘッダで符号化する処理を「共通符号化処理」、1フレームの3つの色成分信号を個別の独立したマクロブロックヘッダで符号化する処理を「独立符号化処理」と記す。同様に、1フレームの3つの色成分信号が共通のマクロブロックヘッダで符号化されたビットストリームからフレーム画像データを復号する処理を「共通復号処理」、1フレームの3つの色成分信号が個別の独立したマクロブロックヘッダで符号化されたビットストリームからフレーム画像データを復号する処理を「独立復号処理」と記す。本実施の形態14における共通符号化処理では、図66に示すように、1フレーム分の入力映像信号を3つの色成分をまとめた形のマクロブロックに分割する。一方、独立符号化処理では、図67に示すように、1フレーム分の入力映像信号を3つの色成分に分離し、それらを単一の色成分からなるマクロブロックに分割する。つまり、共通符号化処理の対象となるマクロブロックは、C0、C1、C2の3つの色成分のサンプルを含むが、独立符号化処理の対象となるマクロブロックは、C0またはC1またはC2成分のうちのいずれか1つの成分のサンプルのみを含む。
図68は、本実施の形態14の符号化装置・復号装置における、ピクチャ間の時間方向の動き予測参照関係を示す説明図である。この例では、太縦棒線で示されるデータ単位をピクチャとし、ピクチャとアクセスユニットとの関係を囲み点線で示している。共通符号化・復号処理の場合、1ピクチャは、3つの色成分が混在した1フレーム分の映像信号を表すデータであって、独立符号化・復号処理の場合、1ピクチャはいずれか1つの色成分の1フレーム分の映像信号とする。アクセスユニットは、映像信号に対してオーディオ・音声情報などとの同期などを目的とするタイムスタンプを付与する最小データ単位であり、共通符号化・復号処理の場合、1つのアクセスユニットには1ピクチャ分のデータを含む(図68の427a)。一方、独立符号化・復号処理の場合は1つのアクセスユニットに3つのピクチャが含まれる(図68の427b)。これは独立符号化・復号処理の場合、3つの色成分すべての同一表示時刻のピクチャがそろってはじめて1フレーム分の再生映像信号が得られるためである。なお、各ピクチャの上部に付与した番号は、ピクチャの時間方向の符号化・復号処理順序(AVCのframe_num)を示す。図68では、ピクチャ間の矢印は動き予測の参照方向を示している。すなわち、独立符号化・復号処理の場合、同一アクセスユニットに含まれるピクチャの間での動き予測参照、ならびに異なる色成分間での動き予測参照は行わないものとし、C0、C1、C2の各色成分のピクチャを同一色成分の信号に限定して予測参照しながら符号化・復号する。このような構成とすることにより、本実施の形態14における独立符号化・復号処理の場合は、各色成分の符号化・復号を、他の色成分の符号化・復号処理に全く依存することなく実行でき、並列処理が容易になる。
なお、AVCでは、自身はイントラ符号化を行うとともに、動き補償予測に用いる参照画像メモリの内容をリセットするIDR(instantaneous decoder refresh)ピクチャが定義されている。IDRピクチャは他のいかなるピクチャにも依存せずに復号可能であるためランダムアクセスポイントとして利用される。共通符号化処理の場合のアクセスユニットは、1アクセスユニット=1ピクチャであるが、独立符号化処理の場合のアクセスユニットでは1アクセスユニットが複数ピクチャで構成されるため、ある色成分ピクチャがIDRピクチャである場合は他の残りの色成分ピクチャもIDRピクチャとして、IDRアクセスユニットを定義し、ランダムアクセス機能を確保する。
以下、共通符号化処理による符号化を行ったか、独立符号化処理による符号化を行ったかを示す識別情報を、本実施の形態14では、共通符号化・独立符号化識別信号と呼ぶ。
図69は、本実施の形態14の符号化装置で生成され、本実施の形態14の復号装置が入力・復号処理の対象とするビットストリームの構造の一例を示す説明図である。図69は、シーケンスからフレームレベルまでのビットストリーム構成を示したもので、まず、シーケンスレベルの上位ヘッダ(AVCの場合、シーケンスパラメータセットなど)に、共通符号化・独立符号化識別信号423を多重しておく。個々のフレームはアクセスユニットの単位で符号化される。AUDとは、AVCにおいてアクセスユニットの切れ目を識別するためのユニークなNALユニットであるAccess Unit Delimiter NALユニットを示す。共通符号化・独立符号化識別信号423が「共通符号化処理によるピクチャ符号化」を示す場合は、アクセスユニットには1ピクチャ分の符号化データが含まれる。このときのピクチャは、前述のように3つの色成分が混在した1フレーム分の映像信号を表すデータであるとする。このとき、i番目のアクセスユニットの符号化データはスライスデータ Slice(i,j) の集合として構成される。jは、1ピクチャ内のスライスデータのインデックスである。
一方、共通符号化・独立符号化識別信号423が「独立符号化処理によるピクチャ符号化」を示す場合は、1ピクチャはいずれか1つの色成分の1フレーム分の映像信号である。このとき、p番目のアクセスユニットの符号化データは、アクセスユニット内のq番目のピクチャのスライスデータ Slice(p,q,r) の集合として構成される。rは、1ピクチャ内のスライスデータのインデックスである。RGBのように色成分が3成分で構成される映像信号の場合、qがとり得る値の個数は3である。また、3原色からなる映像信号に加えて例えばアルファブレンディングのための透過度情報のような付加データを同一アクセスユニットとして符号化・復号する場合や、4成分以上の色成分(例えばカラー印刷で使用されるYMCKなど)で構成される映像信号を符号化・復号する場合などは、qがとり得る値の個数は4以上となるように設定する。本実施の形態14における符号化装置、復号装置は、独立符号化処理を選択すれば、映像信号を構成する各色成分をまったく独立に符号化するため、原理的に符号化・復号処理を変更することなく、色成分の枚数を自在に変更できる。将来、映像信号の色表現を行うための信号形式が変更された場合にも、本実施の形態14における独立符号化処理で対応可能となる効果がある。
このような構成を実現するために、本実施の形態14では、共通符号化・独立符号化識別信号423は「1アクセスユニット内に含まれ、各々が相互に動き予測参照することなく独立に符号化されるピクチャの数」という形で表現する。このとき、共通符号化・独立符号化識別信号423は上記パラメータqがとり得る値の個数で表現できることになり、このパラメータがとり得る値の個数を以降、num_pictures_in_auと呼ぶ。つまり、num_pictures_in_au = 1は「共通符号化処理」を示し、num_pictures_in_au = 3は本実施の形態14における「独立符号化処理」を示す。色成分が4以上となる場合、num_pictures_in_au > 3なる値に設定すればよい。このようなシグナリングを行うことによって、復号装置はnum_pictures_in_auを復号、参照すれば共通符号化処理による符号化データと独立符号化処理による符号化データの区別ができるだけでなく、1つのアクセスユニット内に何枚の単一色成分ピクチャが存在するかを同時に知ることができ、将来の映像信号の色表現拡張への対応も可能にしつつ、共通符号化処理と独立符号化処理をビットストリーム中でシームレスに扱うことが可能である。
図70は、共通符号化処理、独立符号化処理それぞれの場合のスライスデータのビットストリーム構成を示す説明図である。独立符号化処理によって符号化されたビットストリームでは、後述する効果を達成するため、復号装置で受信したスライスデータがアクセスユニット内のどの色成分のピクチャに属するスライスかを識別可能なように、スライスデータの先頭のヘッダ領域に色成分識別フラグ(color_channel_idc)を付与する。color_channel_idcは、その値が同じスライスをグループ化する。つまり、color_channel_idcの値が異なるスライス間では、いかなる符号化・復号の依存性(例えば動き予測参照、CABACのコンテキストモデリング・生起確率学習など)も持たせないものとする。このように規定することで、独立符号化処理の場合のアクセスユニット内の個々のピクチャの独立性が確保される。また、各スライスヘッダに多重されるframe_num(スライスが属するピクチャの符号化・復号処理順序)については、1アクセスユニット内の全色成分ピクチャにおいて同一の値とする。
図71は、本実施の形態14の符号化装置の概略構成を示す説明図である。図71において、共通符号化処理は第1のピクチャ符号化部503aにおいて実行され、独立符号化処理は第2のピクチャ符号化部503b0、503b1、503b2(3つの色成分分を用意)において実行される。入力映像信号1は、スイッチ(SW)501によって第1のピクチャ符号化部503aか、色成分分離部502および第2のピクチャ符号化部503b0〜503b2のいずれかに供給される。スイッチ501は、共通符号化・独立符号化識別信号423によって駆動され、入力映像信号1を指定されたパスへ供給する。以下では、共通符号化・独立符号化識別信号(num_pictures_in_au)423は、入力映像信号が4:4:4フォーマットの場合にシーケンスパラメータセットに多重され、シーケンスの単位で共通符号化処理と独立符号化処理を選択する信号とする場合について説明する。これは上記実施の形態7で述べたインター予測モード共通化識別フラグ123や、上記実施の形態11で述べたマクロブロックヘッダ共通化識別フラグ123cと概念的に同一である。共通符号化処理を用いた場合は復号装置側では共通復号処理を実行し、独立符号化処理を用いた場合は復号装置側では独立復号処理を実行する必要があるため、共通符号化・独立符号化識別信号423はそれを指定する情報としてビットストリームに多重する必要がある。そのため、共通符号化・独立符号化識別信号423は多重化部504へ入力される。この共通符号化・独立符号化識別信号423の多重化単位は、シーケンス内のいくつかのピクチャ群からなるGOP(グループ・オブ・ピクチャ)の単位など、ピクチャよりも上位レイヤであればどのような単位であってもよい。
第1のピクチャ符号化部503aでは、共通符号化処理を実行するために、入力映像信号1を図66に示すように3つの色成分のサンプルをまとめた形式のマクロブロックへ分割して、その単位で符号化処理を進める。第1のピクチャ符号化部503aにおける符号化処理は後述する。独立符号化処理が選択された場合は、入力映像信号1は色成分分離部502でC0、C1、C2の1フレーム分のデータへ分離され、それぞれ対応する第2のピクチャ符号化部503b0〜503b2へ供給される。第2のピクチャ符号化部503b0〜503b2では、色成分ごとに分離された1フレーム分の信号を図67に示す形式のマクロブロックへ分割して、その単位で符号化処理を進める。第2のピクチャ符号化部における符号化処理は後述する。
第1のピクチャ符号化部503aには、3つの色成分からなる1ピクチャ分の映像信号が入力され、符号化データはビデオストリーム422aとして出力される。第2のピクチャ符号化部503b0〜503b2には、単一色成分からなる1ピクチャ分の映像信号が入力され、符号化データはビデオストリーム422b0〜422b2として出力される。これらビデオストリームは、共通符号化・独立符号化識別信号423の状態に基づいて多重化部504でビデオストリーム422cの形式に多重化され、出力される。
ビデオストリーム422cの多重化に際しては、独立符号化処理される場合のアクセスユニット中では、スライスデータのビットストリーム中での多重化順、伝送順を、アクセスユニット内のピクチャ(各色成分)間でインタリーブ可能とする(図72)。この場合、復号装置側では、受信したスライスデータが、アクセスユニット内のどの色成分に属するスライスかを識別する必要がある。そのために、スライスデータの先頭のヘッダ領域に図70のように多重する色成分識別フラグを利用する。
このような構成にすることにより、符号化装置では、図71の符号化装置のように3つの色成分のピクチャをそれぞれ独立な第2のピクチャ符号化部503b0〜503b2の3セット使用して、並列処理により符号化を行う場合に、他の色成分ピクチャの符号化データの完成を待たずに、自身のピクチャのスライスデータが準備できればすぐに符号化データを送出可能となる。AVCでは1ピクチャを複数のスライスデータに分割して符号化することができ、スライスデータ長やスライス内に含まれるマクロブロックの個数については、符号化条件に応じて柔軟に変化させることができる。画像空間上で隣り合うスライスの間では、スライスの復号処理の独立性を確保するため、イントラ予測や算術符号化などの近傍コンテクストの利用ができないため、スライスデータ長はできるだけ長いほうが符号化効率は高い。一方、伝送や記録の過程でビットストリームに誤りが混入した場合は、スライスデータ長が短いほど誤りからの復帰が早まり、品質劣化を抑えやすくなる。色成分識別フラグを多重化することなく、スライスの長さや構成、色成分の順序などを固定的にしてしまうと、符号化装置においてビットストリームの生成条件が固定化されてしまい、多様な符号化要求条件に柔軟に対応することができなくなる。
また、図72のようにビットストリームを構成することができれば、符号化装置では伝送に必要な送信バッファサイズ、すなわち符号化装置側での処理遅延を小さくすることができる。その様子を図72に示す。もしピクチャをまたがるスライスデータの多重が許容されない場合、符号化装置は、ある特定の色成分のピクチャの符号化が終了するまでの間、他のピクチャの符号化データをバッファリングさせる必要がある。これはピクチャレベルでの遅延が発生することを意味する。一方、図72最下部に示すように、スライスレベルでインタリーブ可能とすれば、ある特定の色成分のピクチャ符号化部はスライスデータの単位で符号化データを多重化部に出力することができ、遅延を抑制することができる。
なお、1つの色成分ピクチャ内においては、それに含まれるスライスデータはマクロブロックのラスタスキャン順で伝送するようにしてもよいし、1つのピクチャ内でもインタリーブ伝送を可能とするように構成してもよい。
以下、第1および第2のピクチャ符号化部の動作を詳しく説明する。
第1のピクチャ符号化部の動作概要
第1のピクチャ符号化部503aの内部構成を図73に示す。図73において、入力映像信号1は、4:4:4フォーマットで、かつ図66の形式の3つの色成分をまとめたマクロブロックの単位で入力されるものとする。
まず、予測部461において、メモリ16aに格納される動き補償予測参照画像データの中から参照画像を選択し、該マクロブロックの単位で動き補償予測処理が行われる。メモリ16aには、複数時刻に渡る、3つの色成分で構成される複数枚の参照画像データが格納され、予測部461では、これらの中からマクロブロックの単位で最適な参照画像を選択して動き予測を行う。メモリ16a内の参照画像データの配置は、色成分ごとに面順次で分けて格納してもよいし、各色成分のサンプルを点順次で格納してもよい。動き補償予測を行うブロックサイズは7種類用意されており、まずマクロブロック単位に、図32(a)から(d)に示すように、16x16、16x8、8x16、8x8のいずれかのサイズを選択することができる。さらに8x8が選択された場合には、各8x8ブロックごとに、図32(e)から(h)に示すように、8x8、8x4、4x8、4x4のいずれかのサイズを選択することができる。
予測部461では、図32のすべてまたは一部のブロックサイズ・サブブロックサイズ、および所定の探索範囲の動きベクトルおよび利用可能な1枚以上の参照画像に対してマクロブロックごとに動き補償予測処理を実行して、動きベクトル情報と予測に用いる参照画像識別番号463と減算器3により、動き補償予測単位となるブロックごとの予測差分信号4を得る。予測差分信号4は符号化モード判定部5においてその予測効率が評価され、予測部461で実行した予測処理の中から、予測対象のマクロブロックに対して最適な予測効率が得られるマクロブロックタイプ/サブマクロブロックタイプ106と動きベクトル情報・参照画像識別番号463を出力する。マクロブロックタイプ、サブマクロブロックタイプ、参照画像インデックス、動きベクトルなどのマクロブロックヘッダ情報はすべて、3つの色成分に対して共通のヘッダ情報として決定され、符号化に使用され、ビットストリームに多重化される。予測効率の最適性の評価にあたっては、演算量を抑制する目的で、ある所定の色成分(たとえばRGBのうちのG成分、YUVのうちのY成分など)に対する予測誤差量だけを評価してもよいし、演算量は大きくなるが最適な予測性能を得るべくすべての色成分についての予測誤差量を総合評価するようにしてもよい。また、最終的なマクロブロックタイプ/サブマクロブロックタイプ106の選定にあたっては、符号化制御部19の判断で定まる各タイプに対する重み係数20が加味されることもある。
同様に、予測部461では、イントラ予測も実行する。イントラ予測実行時は、出力信号463には、イントラ予測モード情報が出力される。以降、特にイントラ予測、動き補償予測を区別しない場合には、出力信号463はイントラ予測モード情報、動きベクトル情報、参照画像識別番号をまとめて予測オーバヘッド情報と呼ぶ。イントラ予測についても所定の色成分だけの予測誤差量を評価してもよいし、すべての色成分についての予測誤差量を総合評価するようにしてもよい。最後に、マクロブロックタイプをイントラ予測にするか、インター予測にするかを、符号化モード判定部5において予測効率または符号化効率で評価して選定する。
選定されたマクロブロックタイプ/サブマクロブロックタイプ106と、予測オーバヘッド情報463に基づくイントラ予測・動き補償予測によって得られる予測差分信号4を変換部310へ出力する。変換部310は入力される予測差分信号4を変換し変換係数として量子化部9へ出力する。この際、変換を行う単位となるブロックのサイズを4x4か8x8のいずれかから選択するようにしてもよい。変換ブロックサイズを選択可能とする場合は、符号化時に選択されたブロックサイズを、変換ブロックサイズ指定フラグ464の値に反映し、同フラグをビットストリームに多重化する。量子化部9は入力される変換係数を、符号化制御部19によって定まる量子化パラメータ21に基づいて量子化を行い、量子化済み変換係数10として可変長符号化部11へ出力する。量子化済み変換係数10は、3つの色成分分の情報を含み、可変長符号化部11にてハフマン符号化や算術符号化などの手段によりエントロピー符号化される。また、量子化済み変換係数10は逆量子化部12、逆変換部312を経て局部復号予測差分信号14へ復元され、選定されたマクロブロックタイプ/サブマクロブロックタイプ106と予測オーバヘッド情報463に基づいて生成される予測画像7と加算器18で加算することで局部復号画像15が生成される。局部復号画像15は、デブロッキングフィルタ462でブロックひずみ除去処理を実施した後、以降の動き補償予測処理に用いるためメモリ16aへ格納される。可変長符号化部11には、当該マクロブロックに対してデブロッキングフィルタを施すか否かを示すデブロッキングフィルタ制御フラグ24も入力される。
可変長符号化部11に入力される量子化済み変換係数10、マクロブロックタイプ/サブマクロブロックタイプ106、予測オーバヘッド情報463、量子化パラメータ21は所定の規則(シンタックス)に従ってビットストリームとして配列・整形され、図66の形式のマクロブロックが1つないしは複数個まとまったスライスデータの単位でNALユニット化された符号化データとして送信バッファ17へ出力される。送信バッファ17では符号化装置が接続される伝送路の帯域や記録媒体の読み出し速度に合わせてビットストリームを平滑化してビデオストリーム422aとして出力する。また、送信バッファ17中のビットストリーム蓄積状況に応じて符号化制御部19へフィードバックをかけ、以降の映像フレームの符号化における発生符号量を制御する。
なお、第1のピクチャ符号化部503aの出力は、3成分をまとめた単位のスライスであってアクセスユニットをまとめた単位での符号量と等価であるため、送信バッファ17はそのまま多重化部504内に配置してもよい。
本実施の形態14における第1のピクチャ符号化部503aでは、共通符号化・独立符号化識別信号423によってシーケンス中のすべてのスライスデータがC0、C1、C2混在スライス(すなわち、3つの色成分の情報が混在するスライス)であることが識別可能であるため、スライスヘッダに色成分識別フラグは多重化しない。
第2のピクチャ符号化部の動作概要
第2のピクチャ符号化部503b0(503b1、503b2)の内部構成を図74に示す。図74において、入力映像信号1は、図67の形式の単一色成分のサンプルからなるマクロブロックの単位で入力されるものとする。
まず、予測部461において、メモリ16bに格納される動き補償予測参照画像データの中から参照画像を選択し、該マクロブロックの単位で動き補償予測処理を行う。メモリ16bには、複数時刻に渡る、単一色成分で構成される複数枚の参照画像データを格納でき、予測部461では、これらの中からマクロブロックの単位で最適な参照画像を選択して動き予測を行う。メモリ16bは3つの色成分分をまとめた単位でメモリ16aと共用するようにしてもよい。動き補償予測を行うブロックサイズには7種類用意されており、まずマクロブロック単位に、図32(a)から(d)に示すように、16x16、16x8、8x16、8x8のいずれかのサイズを選択することができる。さらに8x8が選択された場合には、各8x8ブロックごとに、図32(e)から(h)に示すように、8x8、8x4、4x8、4x4のいずれかのサイズを選択することができる。
予測部461では、図32のすべてまたは一部のブロックサイズ・サブブロックサイズ、および所定の探索範囲の動きベクトルおよび利用可能な1枚以上の参照画像に対してマクロブロックごとに動き補償予測処理を実行して、動きベクトル情報と予測に用いる参照画像識別番号463と減算器3により、動き補償予測単位となるブロックごとの予測差分信号4を得る。予測差分信号4は符号化モード判定部5においてその予測効率が評価され、予測部461で実行した予測処理の中から、予測対象のマクロブロックに対して最適な予測効率が得られるマクロブロックタイプ/サブマクロブロックタイプ106と動きベクトル情報・参照画像識別番号463を出力する。マクロブロックタイプ、サブマクロブロックタイプ、参照画像インデックス、動きベクトルなどのマクロブロックヘッダ情報はすべて、入力映像信号1の単一色成分の信号に対するヘッダ情報として決定され、符号化に使用され、ビットストリームに多重化される。予測効率の最適性の評価にあたっては、符号化処理対象となる単一色成分に対する予測誤差量だけを評価する。また、最終的なマクロブロックタイプ/サブマクロブロックタイプ106の選定にあたっては、符号化制御部19の判断で定まる各タイプに対する重み係数20が加味されることもある。
同様に、予測部461では、イントラ予測も実行する。イントラ予測実行時は、出力信号463には、イントラ予測モード情報が出力される。以降、特にイントラ予測、動き補償予測を区別しない場合には、出力信号463はイントラ予測モード情報、動きベクトル情報、参照画像識別番号をまとめて予測オーバヘッド情報と呼ぶ。イントラ予測についても符号化処理対象となる単一色成分に対する予測誤差量だけを評価する。最後に、マクロブロックタイプをイントラ予測にするか、インター予測にするかを予測効率または符号化効率で評価して選定する。
選定されたマクロブロックタイプ/サブマクロブロックタイプ106と、予測オーバヘッド情報463によって得られる予測差分信号4を変換部310へ出力する。変換部310は入力される単一色成分分の予測差分信号4を変換し変換係数として量子化部9へ出力する。この際、変換を行う単位となるブロックのサイズを4x4か8x8のいずれかから選択するようにしてもよい。選択可能とする場合は、符号化時に選択されたブロックサイズを、変換ブロックサイズ指定フラグ464の値に反映し、同フラグをビットストリームに多重化する。量子化部9は入力される変換係数を、符号化制御部19によって定まる量子化パラメータ21に基づいて量子化を行い、量子化済み変換係数10として可変長符号化部11へ出力する。量子化済み変換係数10は、単一色成分分の情報を含み、可変長符号化部11にてハフマン符号化や算術符号化などの手段によりエントロピー符号化される。また、量子化済み変換係数10は逆量子化部12、逆変換部312を経て局部復号予測差分信号14へ復元され、選定されたマクロブロックタイプ/サブマクロブロックタイプ106と予測オーバヘッド情報463に基づいて生成される予測画像7と加算器18で加算することで局部復号画像15が生成される。局部復号画像15は、デブロッキングフィルタ462でブロックひずみ除去処理を実施した後、以降の動き補償予測処理に用いるためメモリ16bへ格納される。可変長符号化部11には、当該マクロブロックに対してデブロッキングフィルタを施すか否かを示すデブロッキングフィルタ制御フラグ24も入力される。
可変長符号化部11に入力される量子化済み変換係数10、マクロブロックタイプ/サブマクロブロックタイプ106、予測オーバヘッド情報463、量子化パラメータ21は所定の規則(シンタックス)に従ってビットストリームとして配列・整形され、図67の形式のマクロブロックが1つないしは複数個まとまったスライスデータの単位でNALユニット化された符号化データとして送信バッファ17へ出力される。送信バッファ17では符号化装置が接続される伝送路の帯域や記録媒体の読み出し速度に合わせてビットストリームを平滑化してビデオストリーム422b0(422b1、422b2)として出力する。また、送信バッファ17中のビットストリーム蓄積状況に応じて符号化制御部19へフィードバックをかけ、以降の映像フレームの符号化における発生符号量を制御する。
なお、第2のピクチャ符号化部503b0〜503b2の出力は、単一色成分のデータのみからなるスライスであって、アクセスユニットをまとめた単位での符号量制御が必要となる場合には、多重化部504内に全色成分のスライスを多重した単位での共通送信バッファを設け、同バッファの占有量をもとに各色成分の符号化制御部19にフィードバックをかけるように構成してもよい。また、この際、全色成分の発生情報量だけを用いて符号化制御を行うようにしてもよいし、各色成分の送信バッファ17の状態も加味して符号化制御を行うようにしてもよい。全色成分の発生情報量だけを用いて符号化制御を行う場合は、送信バッファ17相当の機能を多重化部504内の共通送信バッファで実現することとして、送信バッファ17を省略する構成をとることもできる。
本実施の形態14における第2のピクチャ符号化部503b0〜503b2では、共通符号化・独立符号化識別信号423によってシーケンス中のすべてのスライスデータが単一色成分スライス(すなわち、C0スライスまたはC1スライスまたはC2スライス)であることが識別可能であるため、スライスヘッダに常に色成分識別フラグを多重化し、復号装置側でどのスライスがアクセスユニット内のどのピクチャデータに該当するかを識別できるようにする。このため、各第2のピクチャ符号化部503b0〜503b2は、それぞれの送信バッファ17からの出力を1ピクチャ分ためることなく、1スライス分のデータがたまった時点で送出することができる。
なお共通符号化・独立符号化識別信号(num_pictures_in_au)は、共通符号化処理による符号化データと独立符号化処理による符号化データを区別する情報(共通符号化識別情報)と、1つのアクセスユニット内に何枚の単一色成分ピクチャが存在するかを示す情報(色成分の数)を同時に表現できるようにしたが、上記2つの情報を独立な情報として符号化してもよい。
なお、第1のピクチャ符号化部503aと第2のピクチャ符号化部503b0〜503b2とは、マクロブロックヘッダ情報を3成分共通の情報として扱うか、単一の色成分の情報として扱うかの違いと、スライスデータのビットストリーム構成が異なるだけである。図73や図74における予測部や変換部・逆変換部、量子化部・逆量子化部、デブロッキングフィルタなどの基本的な処理ブロックの多くは、3つの色成分の情報とまとめて処理するか、単一の色成分の情報だけを扱うかの違いだけで、第1のピクチャ符号化部503aと第2のピクチャ符号化部503b0〜503b2とで共通の機能ブロックで実現することもできる。したがって、図71のような完全に独立な符号化処理部としてだけでなく、図73や図74の基本構成要素を適宜組み合わせて多様な符号化装置の実装を実現することができる。また、第1のピクチャ符号化部503aにおけるメモリ16aの配置を面順次で持つことにすれば、参照画像格納メモリの構成を第1のピクチャ符号化部503aと第2のピクチャ符号化部503b0〜503b2とで共通にできる。
なお、図示はしていないが、本実施の形態14における符号化装置では、図69、図70の配列に従うビデオストリーム422cをバッファリングする仮想的なストリームバッファ(符号化ピクチャバッファ)と、復号画像427a、427bをバッファリングする仮想的なフレームメモリ(復号ピクチャバッファ)の存在を想定し、符号化ピクチャバッファのオーバーフロー・アンダーフローや、復号ピクチャバッファの破綻がないようにビデオストリーム422cを生成する。この制御は主として、符号化制御部19で行う。これにより、復号装置において、ビデオストリーム422cを符号化ピクチャバッファと復号ピクチャバッファの動作(仮想バッファモデル)に従って復号する場合に、復号装置に破綻が生じないようにすることを保証する。仮想バッファモデルを以下に規定する。
符号化ピクチャバッファの動作はアクセスユニット単位で行う。上述のとおり、共通復号処理を行う場合には1アクセスユニットには1ピクチャ分の符号化データが含まれ、独立復号処理を行う場合には1アクセスユニットには色成分数分のピクチャ(3成分ならば3ピクチャ分)の符号化データが含まれている。符号化ピクチャバッファについて規定される動作は、アクセスユニットの最初のビットと最後のビットが符号化ピクチャバッファに入力される時刻とアクセスユニットのビットが符号化ピクチャバッファから読み出される時刻である。なお符号化ピクチャバッファからの読み出しは瞬時に行われると規定し、アクセスユニットのすべてのビットが同じ時刻に符号化ピクチャバッファから読み出されることする。アクセスユニットのビットは符号化ピクチャバッファから読み出されると、上位ヘッダ解析部へ入力され、上述のとおり、第1のピクチャ復号部または第2のピクチャ復号部にて復号処理が行われ、アクセスユニット単位に束ねられたカラー映像フレームとして出力される。なお符号化ピクチャバッファからビットを読み出して、アクセスユニット単位のカラー映像フレームとして出力するまでの処理は、仮想バッファモデルの規定上は瞬時に行われるものとする。アクセスユニット単位に構成されたカラー映像フレームは復号ピクチャバッファへ入力され、復号ピクチャバッファからの出力時刻が算出される。復号ピクチャバッファからの出力時刻は、符号化ピクチャバッファからの読み出し時刻に所定の遅延時間を加えた値である。この遅延時間はビットストリームに多重して復号装置を制御することが可能である。遅延時間が0の場合、すなわち復号ピクチャバッファからの出力時刻が符号化ピクチャバッファからの読み出し時刻に等しい場合には、カラー映像フレームが復号ピクチャバッファへ入力されると同時に復号ピクチャバッファから出力される。それ以外の場合、すなわち復号ピクチャバッファからの出力時刻が符号化ピクチャバッファからの読み出し時刻より遅い場合、復号ピクチャバッファからの出力時刻になるまでカラー映像フレームは復号ピクチャバッファに保存される。上述のとおり、アクセスユニット単位に復号ピクチャバッファからの動作が規定される。
図75は、本実施の形態14の復号装置の概略構成を示す説明図である。図75において、共通復号処理は第1のピクチャ復号部603aにおいて実行され、独立復号処理は色成分判定部602と第2のピクチャ復号部603b0、603b1、603b2(3つの色成分分を用意)において実行される。
ビデオストリーム422cは、上位ヘッダ解析部610でNALユニット単位に分割され、シーケンスパラメータセットやピクチャパラメータセットなどの上位ヘッダ情報は、そのまま復号して復号装置内の第1のピクチャ復号部603a、色成分判定部602、第2のピクチャ復号部603b0〜603b2が参照可能な所定のメモリエリアへ格納しておく。シーケンス単位に多重される共通符号化・独立符号化識別信号423(num_pictures_in_au)は、上位ヘッダ情報の一部として復号・保持される。
復号されたnum_pictures_in_auはスイッチ(SW)601に供給され、スイッチ601はnum_pictures_in_au = 1ならば、ピクチャごとのスライスNALユニットを第1のピクチャ復号部603aへ供給し、num_pictures_in_au = 3ならば、色成分判定部602に供給する。すなわち、num_pictures_in_au = 1ならば第1のピクチャ復号部603aにより、共通復号処理が行われ、num_pictures_in_au = 3ならば3つの第2のピクチャ復号部603b0〜603b2により、独立復号処理が行われる。第1および第2のピクチャ復号部の詳細な動作は後述する。
色成分判定部602は、図70で示した色成分識別フラグの値により、スライスNALユニットが現在のアクセスユニット内のいずれの色成分ピクチャに相当するかを識別して、適切な第2のピクチャ復号部603b0〜603b2へ分配供給する。このような復号装置の構成によって、図72のようにアクセスユニット内でスライスがインタリーブされて符号化されたビットストリームを受信しても、どのスライスがどの色成分ピクチャに属するかを容易に判別し正しく復号できる効果がある。
第1のピクチャ復号部の動作概要
第1のピクチャ復号部603aの内部構成を図76に示す。第1のピクチャ復号部603aは、図71の符号化装置から出力される図69、図70の配列に従うビデオストリーム442cを、上位ヘッダ解析部610でNALユニット単位に分割した後、C0、C1、C2混在スライスの単位で受信して、図66に示す3つの色成分のサンプルからなるマクロブロックを単位として復号処理を行い、出力映像フレームを復元する。
可変長復号部25はNALユニットに分割されたビデオストリーム442cを入力とし、所定の規則(シンタックス)に従ってビデオストリーム442cを解読して、3成分分の量子化済み変換係数10、および3成分で共通して用いられるマクロブロックヘッダ情報(マクロブロックタイプ/サブマクロブロックタイプ106、予測オーバヘッド情報463、変換ブロックサイズ指定フラグ464、量子化パラメータ21)を抽出する。量子化済み変換係数10は量子化パラメータ21とともに、第1のピクチャ符号化部503aと同じ処理を行う逆量子化部12へ入力され、逆量子化処理が行われる。ついでその出力が第1のピクチャ符号化部503aと同じ処理を行う逆変換部312へ入力され、局部復号予測差分信号14へ復元される(変換ブロックサイズ指定フラグ464がビデオストリーム422c中に存在すれば、それを逆量子化、逆変換処理過程で参照する)。一方、予測部461は、第1のピクチャ符号化部503a中の予測部461のうち、予測オーバヘッド情報463を参照して予測画像7を生成する処理だけが含まれ、予測部461に対してマクロブロックタイプ/サブマクロブロックタイプ106、予測オーバヘッド情報463が入力され、3成分分の予測画像7を得る。マクロブロックタイプがイントラ予測であることを示す場合は、予測オーバヘッド情報463からイントラ予測モード情報に従って3成分分の予測画像7を得、マクロブロックタイプがインター予測であることを示す場合は、予測オーバヘッド情報463から動きベクトル、参照画像インデックスに従って3成分分の予測画像7を得る。局部復号予測差分信号14と予測画像7は加算器18により加算され、3成分分の暫定復号画像(局部復号画像)15を得る。暫定復号画像15は以降のマクロブロックの動き補償予測に用いられるため、第1のピクチャ符号化部503aと同じ処理を行うデブロッキングフィルタ462で3成分分の暫定復号画像サンプルに対してブロックひずみ除去処理を実施した後、復号画像427aとして出力されるとともに、メモリ16aへ格納される。この際、可変長復号部25によって解読されたデブロッキングフィルタ制御フラグ24の指示に基づいてデブロッキングフィルタ処理を暫定復号画像15に対して作用させる。メモリ16aには、複数時刻に渡る、3つの色成分で構成される複数枚の参照画像データが格納され、予測部461では、これらの中からマクロブロックの単位でビットストリームから抽出した参照画像インデックスで示される参照画像を選択して予測画像生成を行う。メモリ16a内の参照画像データの配置は、色成分ごとに面順次で分けて格納してもよいし、各色成分のサンプルを点順次で格納してもよい。復号画像427aは3つの色成分を含み、そのまま共通復号処理におけるアクセスユニット427a0を構成するカラー映像フレームとなる。
第2のピクチャ復号部の動作概要
第2のピクチャ復号部603b0〜603b2の内部構成を図77に示す。第2のピクチャ復号部603b0〜603b2は、図71の符号化装置から出力される図69、図70の配列に従うビデオストリーム442cが、上位ヘッダ解析部610でNALユニット単位に分割され、色成分判定部602で振り分けられたC0ないしは、C1ないしは、C2スライスNALユニット単位で受信して、図67に示す単一色成分のサンプルからなるマクロブロックを単位として復号処理を行い、出力映像フレームを復元する。
可変長復号部25はビデオストリーム422cを入力とし、所定の規則(シンタックス)に従ってビデオストリーム422cを解読して、単一色成分の量子化済み変換係数10、および単一色成分に適用するマクロブロックヘッダ情報(マクロブロックタイプ/サブマクロブロックタイプ106、予測オーバヘッド情報463、変換ブロックサイズ指定フラグ464、量子化パラメータ21)を抽出する。量子化済み変換係数10は量子化パラメータ21とともに第2のピクチャ符号化部503b0(503b1、503b2)と同じ処理を行う逆量子化部12へ入力され、逆量子化処理が行われる。ついでその出力が第2のピクチャ符号化部503b0(503b1、503b2)と同じ処理を行う逆変換部312へ入力され、局部復号予測差分信号14へ復元される(変換ブロックサイズ指定フラグ464がビデオストリーム422c中に存在すれば、それを逆量子化、逆直交変換処理過程で参照する)。一方、予測部461は、第2のピクチャ符号化部503b0(503b1、503b2)中の予測部461のうち、予測オーバヘッド情報463を参照して予測画像7を生成する処理だけが含まれ、予測部461に対してマクロブロックタイプ/サブマクロブロックタイプ106、予測オーバヘッド情報463が入力され、単一色成分の予測画像7を得る。マクロブロックタイプがイントラ予測であることを示す場合は、予測オーバヘッド情報463からイントラ予測モード情報に従って単一色成分の予測画像7を得、マクロブロックタイプがインター予測であることを示す場合は、予測オーバヘッド情報463から動きベクトル、参照画像インデックスに従って単一色成分の予測画像7を得る。局部復号予測差分信号14と予測画像7は加算器18により加算され、単一色成分マクロブロックの暫定復号画像15を得る。暫定復号画像15は以降のマクロブロックの動き補償予測に用いられるため、第2のピクチャ符号化部503b0(503b1、503b2)と同じ処理を行うデブロッキングフィルタ26で単一色成分の暫定復号画像サンプルに対してブロックひずみ除去処理を実施した後、復号画像427bとして出力されるとともに、メモリ16bへ格納される。この際、可変長復号部25によって解読されたデブロッキングフィルタ制御フラグ24の指示に基づいてデブロッキングフィルタ処理を暫定復号画像15に対して作用させる。復号画像427bは単一色成分のサンプルのみを含み、図75における他の並列処理される第2のピクチャ復号部603b0〜603b2のそれぞれの出力である復号画像427bをアクセスユニット427b0の単位に束ねることで、カラー映像フレームとして構成される。
以上のことから明らかなように、第1のピクチャ復号部603aと第2のピクチャ復号部603b0〜603b2とは、マクロブロックヘッダ情報を3成分共通の情報として扱うか、単一の色成分の情報として扱うかの違いと、スライスデータのビットストリーム構成が異なるだけで、図73や図74における動き補償予測処理や逆変換、逆量子化などの基本的な復号処理ブロックの多くは第1のピクチャ復号部603aと第2のピクチャ復号部603b0〜603b2とで共通の機能ブロックで実現できる。したがって、図75のような完全に独立な復号処理部としてだけでなく、図76や図77の基本構成要素を適宜組み合わせて多様な復号装置の実装を実現することができる。また、第1のピクチャ復号部603aにおけるメモリ16aの配置を面順次で持つことにすれば、メモリ16a、メモリ16bの構成を第1のピクチャ復号部603aと第2のピクチャ復号部603b0〜603b2とで共通にできる。
なお、図75の復号装置は、図71の符号化装置の別の形態として、共通符号化・独立符号化識別信号423を常に「独立符号化処理」に固定化して、第1のピクチャ符号化部503aを一切使用せず全フレームを独立符号化するように構成された符号化装置から出力されるビットストリームを受信して復号することももちろん可能である。また、図75の復号装置の別の形態として、常に共通符号化・独立符号化識別信号423が「独立符号化処理」に固定化されることを前提とする利用形態では、スイッチ601や第1のピクチャ復号部603aを省略した独立復号処理を行うのみの復号装置として構成してもよい。
なお共通符号化・独立符号化識別信号(num_pictures_in_au)は、共通符号化処理による符号化データと独立符号化処理による符号化データを区別する情報(共通符号化識別情報)と、1つのアクセスユニット内に何枚の単一色成分ピクチャが存在するかを示す情報(色成分の数)を含むようにしたが、上記2つの情報が独立な情報として符号化されていてもよい。
さらに、第1のピクチャ復号部603aに、従来のYUV4:2:0フォーマットを対象として3成分まとめて符号化されたAVCハイプロファイル準拠のビットストリームの復号機能を備えるようにし、上位ヘッダ解析部610において、ビデオストリーム422cから復号するプロファイル識別子を参照していずれのフォーマットで符号化されたビットストリームかを判定し、判定結果を共通符号化・独立符号化識別信号423の信号線の情報の一部としてスイッチ601と第1のピクチャ復号部603aに伝える構成をとれば、従来のYUV4:2:0フォーマットのビットストリームに対する互換性を確保する復号装置を構成することもできる。
なお、本実施の形態14における第1のピクチャ符号化部503aでは、スライスデータに3つの色成分の情報が混在し、かつ3つの色成分に対してまったく同じイントラ・インター予測処理を実施するため、予測誤差信号空間で、色成分間での信号相関が残存することがある。これを除去する工夫として、例えば、予測誤差信号に対して、上記実施の形態13で述べたような色空間変換処理を施すように構成してもよい。このような構成をもつ第1のピクチャ符号化部503aの例を図78、図79に示す。図78は、色空間変換処理を、変換処理を行う前の画素レベルで実施する例であり、色空間変換部465を変換部310の前に、逆色空間変換部466を逆変換部312の後に配置する。図79は、色空間変換処理を、変換処理を行った後で得られた係数データに対して処理対象の周波数成分を適宜選択しながら実施する例であり、色空間変換部465を変換部310の後に、逆色空間変換部466を逆変換部312の前に配置する。色空間変換を施す周波数成分を限定することで、特定の色成分に含まれる高周波ノイズ成分がノイズをあまり含まない他の色成分に伝播することを抑制することができる効果がある。色空間変換処理の対象となる周波数成分を適応選択可能とする場合には、復号側で符号化時の選択を判断するためのシグナリング情報467をビットストリームに多重化する。
色空間変換処理は、符号化対象の画像信号の性質に応じて上記実施の形態13で述べたような複数の変換方式をマクロブロック単位に切り替えて使用するようにしてもよいし、マクロブロックの単位で変換有無を判定するように構成してもよい。選択可能な変換方式の種別をシーケンスレベルなどで指定しておき、それらの中からどれを選ぶかをピクチャ、スライス、マクロブロックなどの単位で指定するようにも構成できる。また、直交変換の前で実施するか、後で実施するかを選択可能なように構成してもよい。これらの適応符号化処理を行う場合は、選択可能なすべての選択肢について、符号化モード判定部5で符号化効率の評価を行ってもっとも符号化効率が高いものを選択するように構成することができる。これらの適応符号化処理を実施する場合は、復号側で符号化時の選択を判断するためのシグナリング情報467をビットストリームに多重化する。このようなシグナリングは、スライス、ピクチャ、GOP、シーケンスなどマクロブロックとは異なるレベルで指定してもよい。
図78、図79の符号化装置に対応する復号装置を図80、図81に示す。図80は、図78の符号化装置によって、変換処理前に色空間変換が行われて符号化されたビットストリームを復号する復号装置である。可変長復号部25はビットストリームから、逆色空間変換部466において変換を行うか行わないかを選択する変換有無の情報や、逆色空間変換部466において実行可能な変換方式を選択する情報であるシグナリング情報467を復号して、逆色空間変換部466へ供給する。図80の復号装置は、逆色空間変換部466において、これらの情報に基づいて逆変換後の予測誤差信号に対する色空間変換処理を実施する。また、図81は、図79の符号化装置によって、変換処理後に処理対象の周波数成分を選択して色空間変換を行うことによって符号化されたビットストリームを復号する復号装置である。可変長復号部はビットストリームから、逆色空間変換部466において変換を行うか行わないかを選択する変換有無の情報や、逆色空間変換部において実行される変換方式を選択する情報や、色空間変換を施す周波数成分を特定する情報などを含む識別情報であるシグナリング情報467を復号して逆色空間変換部466に供給する。図81の復号装置は、逆色空間変換部466において、これらの情報に基づいて逆量子化後の変換係数データに対し色空間変換処理を実施する。
図80、図81の復号装置は、図75の復号装置と同様、第1のピクチャ復号部603aに、従来のYUV4:2:0フォーマットを対象として3成分まとめて符号化されたAVCハイプロファイル準拠のビットストリームの復号機能を備えるようにし、上位ヘッダ解析部610において、ビデオストリーム422cから復号するプロファイル識別子を参照していずれのフォーマットで符号化されたビットストリームかを判定し、判定結果を共通符号化・独立符号化識別信号423の信号線の情報の一部としてスイッチ601と第1のピクチャ復号部603aに伝える構成をとれば、従来のYUV4:2:0フォーマットのビットストリームに対する互換性を確保する復号装置を構成することもできる。
図82に従来のYUV4:2:0フォーマットのビットストリームに含まれるマクロブロックヘッダ情報の符号化データの構成を示す。図50に示したCn成分ヘッダ情報と異なる点は、マクロブロックタイプがイントラ予測のときに、イントラ色差予測モード144の符号化データが含まれている点のみである。なおマクロブロックタイプがインター予測のときには、マクロブロックヘッダ情報の符号化データの構成は、図50に示したCn成分ヘッダ情報と同じであるが、マクロブロックヘッダ情報に含まれる参照画像識別番号、動きベクトル情報を用いて輝度成分とは異なる方法で色差成分の動きベクトルが生成される。
従来のYUV4:2:0フォーマットのビットストリームに対する互換性を確保する復号装置の動作について説明する。上述のとおり、第1のピクチャ復号部603aが従来のYUV4:2:0フォーマットのビットストリームの復号機能を備えるものとする。第1のピクチャ復号部の内部構成は図76と同じである。
従来のYUV4:2:0フォーマットのビットストリームの復号機能を備えた第1のピクチャ復号部の可変長復号部25の動作を説明する。ビデオストリーム422cが可変長復号部へ入力されると、色差フォーマット指示フラグを復号する。色差フォーマット指示フラグはビデオストリーム422cのシーケンスパラメータヘッダに含まれ、入力映像フォーマットが4:4:4か、4:2:2か、4:2:0か、4:0:0かのいずれかのフォーマットを示すフラグである。ビデオストリーム422cのマクロブロックヘッダ情報の復号処理は色差フォーマット指示フラグの値によって切り替えられる。マクロブロックタイプがイントラ予測を示している場合で、色差フォーマット指示フラグが4:2:0または4:2:2を示している場合にはイントラ色差予測モード144をビットストリームから復号する。色差フォーマット指示フラグが4:4:4を示している場合にはイントラ色差予測モード144の復号をスキップする。色差フォーマット指示フラグが4:0:0を示している場合、入力映像信号は輝度信号のみで構成されるフォーマット(4:0:0フォーマット)であるため、イントラ色差予測モード144の復号をスキップする。イントラ色差予測モード144以外のマクロブロックヘッダ情報の復号処理は、従来のYUV4:2:0フォーマットのビットストリームの復号機能を備えていない第1のピクチャ復号部603aの可変長復号部と同じである。以上によりビデオストリーム422cが可変長復号部25へ入力されると、色差フォーマット指示フラグ(図示せず)、3成分分の量子化済み変換係数10、マクロブロックヘッダ情報(マクロブロックタイプ/サブマクロブロックタイプ106、予測オーバヘッド情報463、変換ブロックサイズ指定フラグ464、量子化パラメータ21)を抽出する。予測部461には、色差指示フォーマット指示フラグ(図示せず)と予測オーバヘッド情報463が入力され、3成分分の予測画像7を得る。
図83に従来のYUV4:2:0フォーマットのビットストリームに対する互換性を確保する第1のピクチャ復号部の予測部461の内部構成を示し、その動作を説明する。
切替部4611aは、マクロブロックタイプを判別し、マクロブロックタイプがイントラ予測であることを示す場合は、切替部4611bにて色差フォーマット指示フラグの値を判別する。色差フォーマット指示フラグの値が、4:2:0または4:2:2のいずれかを示す場合には、予測オーバヘッド情報463からイントラ予測モード情報とイントラ色差予測モード情報に従って3成分分の予測画像7を得る。3成分のうち、輝度信号の予測画像は、イントラ予測モード情報に従って輝度信号イントラ予測部4612にて生成される。色差信号2成分の予測画像は、イントラ色差予測モード情報に従って、輝度成分とは異なる処理を行う色差信号イントラ予測部4613にて生成される。色差フォーマット指示フラグの値が、4:4:4を示す場合には、3成分すべての予測画像がイントラ予測モード情報に従って輝度信号イントラ予測部4612にて生成される。色差フォーマット指示フラグの値が、4:0:0を示す場合には、4:0:0フォーマットは輝度信号(1成分)のみで構成されるため、輝度信号の予測画像のみがイントラ予測モード情報に従って輝度信号イントラ予測部4612にて生成される。
切替部4611aにてマクロブロックタイプがインター予測であることを示す場合は、切替部4611cにて色差フォーマット指示フラグの値を判別する。色差フォーマット指示フラグの値が4:2:0または4:2:2のいずれかを示す場合には、輝度信号については、輝度信号インター予測部4614にて予測オーバヘッド情報463から動きベクトル、参照画像インデックスに従って、AVC規格が定める輝度信号の予測画像生成方法に従って予測画像が生成される。色差信号2成分の予測画像については、色差信号インター予測部4615にて、予測オーバヘッド情報463から得られる動きベクトルを色差フォーマットに基づいてスケーリングして色差動きベクトルを生成し、予測オーバヘッド情報463から得られる参照画像インデックスが指示する参照画像から、上記色差動きベクトルに基づいてAVC規格の定める方法に従って予測画像が生成される。色差フォーマット指示フラグの値が、4:0:0を示す場合には、4:0:0フォーマットは輝度信号(1成分)のみで構成されるため、輝度信号の予測画像のみが動きベクトル、参照画像インデックスに従って輝度信号インター予測部4614にて生成される。
以上のように、従来のYUV4:2:0フォーマットの色差信号の予測画像を生成する手段を設け、ビットストリームから復号した色差フォーマット指示フラグの値に応じて3成分の予測画像の生成に用いる手段を切り替えるようにしたため、従来のYUV4:2:0フォーマットのビットストリームに対する互換性を確保する復号装置を構成することができる。
なお、図80、図81の復号装置に供給するビデオストリーム422cに、図75の復号装置のように色空間変換処理をサポートしない復号装置でも復号が可能であるビットストリームかどうかを示す情報をシーケンスパラメータセットなどの単位で付与しておけば、図80、図81と図75いずれの復号装置でもそれぞれの復号性能に応じたビットストリームの復号が可能であり、ビットストリームの互換性を確保しやすい効果がある。
実施の形態15.
本実施の形態15では、図71や図75など上記実施の形態14の符号化装置・復号装置において、その入出力対象となるビットストリームの構成のみが異なる別の実施の形態について述べる。本実施の形態15における符号化装置は、図84に示すビットストリーム構成で符号化データの多重化を行う。
図69の構成のビットストリームにおいて、AUD NALユニットは、その要素としてprimary_pic_typeという情報を含む。これは、AUD NALユニットで始まるアクセスユニット内のピクチャデータが符号化される際のピクチャ符号化タイプの情報を図85に示す。
例えば、primary_pic_type = 0の場合は、ピクチャ内すべてがイントラ符号化されていることを示す。primary_pic_type = 1の場合は、イントラ符号化されるスライスと、参照ピクチャリストを1つだけ使用して動き補償予測を行うことが可能なスライスとがピクチャ内で混在できることを示す。primary_pic_typeは1つのピクチャがどのような符号化モードを使用して符号化できるか、を規定する情報であるので、符号化装置側ではこの情報を操作することで、入力映像信号の性質やランダムアクセス機能などの種々の条件に適した符号化を行うことができる。上記実施の形態14では、primary_pic_typeがアクセスユニットあたり1つだけしかないので、独立符号化処理を行う場合のアクセスユニットでは3つの色成分ピクチャでprimary_pic_typeは共通、とする。本実施の形態15では、各色成分ピクチャの独立符号化を行う場合に、図69のAUD NALユニット内に、num_pictures_in_auの値に応じて、追加で残り2つの色成分ピクチャ分のprimary_pic_typeを挿入するか、図84のビットストリーム構成のように、各色成分ピクチャの符号化データを、色成分ピクチャの開始を示すNALユニット(Color Channel Delimiter)から開始するように構成し、このCCD NALユニット中に、対応するピクチャのprimary_pic_type情報を含むように構成する。この構成では、各色成分ピクチャの符号化データは1ピクチャ分まとめて多重されるので、上記実施の形態14で述べた色成分識別フラグ(color_channel_idc)はスライスヘッダではなく、CCD NALユニットに含めるようにする。これにより、各スライスへの多重が必要であった色成分識別フラグの情報をピクチャ単位のデータに集約できるので、オーバヘッド情報を削減できる効果がある。また、バイト列として構成されるCCD NALユニットを検出してcolor_channel_idcを色成分ピクチャあたり1度だけ検証すればよく、可変長復号処理を行うことなく色成分ピクチャの先頭をすばやく見つけることができるので、復号装置側で、色成分ごとに復号対象のNALユニットを分離するためにスライスヘッダ中のcolor_channel_idcを逐一検証しなくてもよくなり、第2のピクチャ復号部へのデータ供給を円滑に行うことができる。
一方で、このような構成では、上記実施の形態14の図72で述べたような、符号化装置のバッファサイズ、処理遅延を低減する効果が薄れるため、色成分識別フラグはスライス単位に多重するか、色成分ピクチャ単位に多重するかをより上位のレベル(シーケンスやGOP)でシグナリングするように構成してもよい。このようなビットストリーム構成をとることで、符号化装置はその利用形態に応じて柔軟な実装を行うことが可能となる。
さらに別の実施の形態として、図86に示すビットストリーム構成で符号化データの多重化を行ってもよい。図86において、図84ではCCD NALユニットに含むようにした color_channel_idc, primary_pic_typeは各AUDに含むようにする。本実施の形態15におけるビットストリーム構成では、独立符号化処理の場合にも、1つのアクセスユニットに1つの(色成分)ピクチャが含まれるように構成する。このような構成でも、色成分識別フラグの情報をピクチャ単位のデータに集約できることによるオーバヘッド情報の削減効果、また、バイト列として構成されるAUD NALユニットを検出してcolor_channel_idcをピクチャあたり1度だけ検証すればよく、可変長復号処理を行うことなく色成分ピクチャの先頭をすばやく見つけることができるので、復号装置側で、色成分ごとに復号対象のNALユニットを分離するためにスライスヘッダ中のcolor_channel_idcを逐一検証することなく第2のピクチャ復号部へのデータ供給を円滑に行うことができる。一方、1フレームないしは1フィールドの画像は3つのアクセスユニットから構成されるため、3つのアクセスユニットが同一時刻の画像データであることを指定する必要がある。このため、図86のビットストリーム構成では、さらにAUDの中に、各ピクチャのシーケンス番号(時間方向の符号化・復号順序等)を付与するように構成することもできる。このような構成によって、復号装置側では各ピクチャの復号・表示順や色成分属性、IDRの是非などを、スライスデータを一切復号することなく検証可能となり、ビットストリームレベルの編集や特殊再生を効率よく行うことが可能となる。
また、図69、84ないしは図86のビットストリーム構成において、AUDやCCDの領域に、ひとつの色成分ピクチャに含まれるスライスNALユニットの個数を指定する情報を格納するように構成してもよい。
なお、上記すべての実施例について、変換処理、逆変換処理は、DCTのように直交性を保証する変換でもよいし、AVCのような、厳密にはDCTのような直交変換でなく、量子化・逆量子化処理と組み合わせて直交性を近似する変換であってもよい。また、変換を行わずに、予測誤差信号を画素レベルの情報として符号化するような構成であってもよい。
実施の形態16.
本実施の形態16では、4:4:4フォーマットで入力される映像フレームを、各色成分独立にMi×Mi画素(i=0,1,2)の矩形領域に分割した単位でフレーム内、フレーム間適応予測を用いて符号化を行う符号化装置、および対応する復号装置について説明する。Miは、映像フレームのi番目の色成分の信号を分割する領域のサイズを示す。
1.符号化装置の動作概要
図87に、本実施の形態16における映像符号化装置の構成を示す。4:4:4フォーマットの入力映像信号1は、色成分分離部502において、各色成分の画面成分505b0、505b1、505b2に分離され、それぞれ同じ構成からなるピクチャ符号化部503b0、503b1、503b2に入力される。また、この際、色成分分離部502からは、各ピクチャ符号化部503b0、5003b1、503b2における符号化単位の矩形領域のサイズMiを指定する情報506b0、506b1、506b2をそれぞれ対応するピクチャ符号化部503b0、503b1、503b2へ入力する。これにより、色成分Ciを符号化するピクチャ符号化部503b0、503b1、503b2は、各画面成分505b0、505b1、505b2を矩形領域サイズMiに基づいて分割して、その単位で符号化を行う。
以下、ピクチャ符号化部503b0、503b1、503b2の詳細動作説明を行う。本実施の形態16のピクチャ符号化部503b0、503b1、503b2の説明は、図74の構成を変形する形で説明を行う。図88にピクチャ符号化部503b0、503b1、503b2の内部構成を示す。同図中、図74のピクチャ符号化部と同じ番号を付与した機能ブロックや信号線は、特に断らない限り、図74のものと同一のものとする。以下、ピクチャ符号化部503b0、503b1、503b2の説明においては、各色成分の画面成分505b0、505b1、505b2を代表して入力信号505とし、符号化単位の矩形領域のサイズMiを指定する情報506b0、506b1、506b2は代表して符号化ブロックサイズ指示情報506として記載する。入力信号505は、符号化ブロックサイズ指示情報506に基づいてブロック分割部40によって矩形ブロックに分割される。また、色成分Ciに対応する入力信号505のことを、以降の説明では符号化処理のデータ単位としてピクチャと呼ぶことがある。
入力信号505は、入力映像信号1が輝度・色差信号(たとえば、Y、Cb、CrやY、Co、Cgなど)の色空間表現された信号である場合、505b0として輝度成分を、505b1、505b2として色差成分を割り当てるといった符号化方法がある。この場合、輝度成分は画像信号の持つテクスチャ情報を集約した信号となり、色差信号は逆にテクスチャ成分に関わる輝度成分との相関が除かれ、視覚的にはモノクロ画像に対する着色の意味を有する信号成分となる。したがって、テクスチャの構造を根拠とするフレーム間の動き補償予測や、AVCで採用されるようなフレーム内の空間予測といった信号予測において、予測の単位とするブロックのサイズは必ずしも輝度成分と同じである必要はない。逆に、色差信号に対して言えば、必ずしも輝度成分と同一のブロックサイズで予測を行うのではなく、色差信号の画面内における相関を最大限活用可能な個別のブロックサイズで予測を行う方が符号化効率を高めることができると考えられる。例えば、Y成分をC0、Cb成分をC1、Cr成分をC2とした場合、M0=16, M1=M2=32として、色差成分のブロックサイズを輝度よりも大きくとれば、3つのうちの2つの成分に対しては、符号化単位あたりのオーバヘッド情報(予測モード、動きベクトルなど)を輝度成分の4分の1程度まで低減することができる。この様子を図89に示す。
また、Miは、画像サイズに応じて定めるように構成してもよい。例えばHDTV信号(1920画素x1080ライン)の映像と意味的に同じ内容を持つCIF信号(352画素x288ライン)などの低解像度映像とを比べた場合、HDTV信号の4画素x4ラインブロックはCIF信号では1画素領域のサイズしかない。したがって、画像解像度が高くなるほど、画素あたりがカバーする実質的な画像テクスチャ領域は小さくなっていく。フレーム間の動き補償予測やフレーム内空間予測では、元来画像のテクスチャ構造の類似度を検出してもっとも類似度が高い信号部分を予測値として用いるので、予測の単位となるブロック内の信号にある程度テクスチャ構造が保存されていないと、予測がうまくいかない(予測性能が雑音成分に阻害される)。したがって、解像度の高い映像ではブロックサイズを大きくとって低解像度時にカバーされるテクスチャ領域をカバーできるように構成することが望ましい。したがって、画像サイズが大きくなるほどMiを大きくするなどといった構成をとることも可能である。以降、Mi×Mi画素からなる矩形領域をマクロブロックと呼ぶ。
ブロック分割部40によってマクロブロックに分割された入力信号505に対し、まず、予測部461において、カレントピクチャの局所復号済みのメモリ16bに格納される周辺画素から空間予測を行うイントラ予測処理、ないしは、メモリ16bに格納される1フレーム分以上の予測参照画像データの中から参照画像を用いて各色成分ごとに動き補償予測処理が行われる。本実施の形態16における予測部461の処理は図74の予測部461と動作が異なるので、以下説明する。
1.1 イントラ予測処理
予測部461において、メモリ16bに格納される参照画像701を用いて、該マクロブロックの単位でイントラ予測処理が行われる。イントラ予測のモードには、N画素xNラインのブロックの単位でその周辺画素を用いた空間予測を行うイントラNxN予測モード、図89に示すマクロブロックの単位でその周辺画素を用いた空間予測を行うマクロブロック単位イントラ予測モードがある。
(a)イントラNxN予測モード
マクロブロック内をNxN画素ブロックで構成されるブロックに分割し、各ブロックに対して空間予測を行う。イントラNxN予測を行う単位となるブロックサイズNとしては、マクロブロックのサイズMiに対して均等分割が可能なサイズを選択するものとする。例えば、Mi=16であればN=4、8、Mi=32であればN=4、8、16のいずれかを用いる。予測値としては、すでに符号化を終え、局部復号処理されてメモリ16bに格納されたカレントピクチャの周囲のブロック(左上、上、右上、左)の画素を用いる。予測モードとして、例えば図3に示すような複数のモードを用意する。上記実施の形態1と同様に、図3は、N=4の場合の予測モード種別を図示しており、9つの予測モードがあることを示す。この9つのうちのいずれかを4x4画素ブロック単位に選択する。
Intra4x4_pred_mode = 0: 隣接する上部の画素をそのまま予測画像として使用する。
Intra4x4_pred_mode = 1: 隣接する左部の画素をそのまま予測画像として使用する。
Intra4x4_pred_mode = 2: 隣接する8つの画素の平均値を予測画像として使用する
Intra4x4_pred_mode = 3: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(右45度エッジに対応)。
Intra4x4_pred_mode = 4: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左45度エッジに対応)。
Intra4x4_pred_mode = 5: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左22.5度エッジに対応)。
Intra4x4_pred_mode = 6: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左67.5度エッジに対応)。
Intra4x4_pred_mode = 7: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(右22.5度エッジに対応)。
Intra4x4_pred_mode = 8: 隣接する画素から2〜3画素ごとに加重平均を求め予測画像として使用する(左112.5度エッジに対応)。
N=4とする場合、マクロブロックあたりのモード情報は16個必要となる。モード情報自体の符号量を抑制するため、モード情報は隣接するブロック間との相関が高いことを利用して、隣接するブロックのモード情報から予測符号化を行う。Nが8、16といったサイズになる場合は、図示はしないが、N=4の場合と同様の、画像テクスチャの方向性を加味した空間予測モードを定義して、Mi×Miのマクロブロックの中を均等にN×Nで分割したサブブロックの単位でイントラ予測処理を行う。
(b)マクロブロック単位イントラ予測モード
マクロブロックサイズに相当するMixMi画素ブロックを一度に予測するモードであり、Mi=16の場合、図4に示す4つのモードのいずれかをマクロブロック単位に選択する。イントラNxN予測モードと同様、すでに符号化を終え、局部復号処理されてメモリ16bに格納された周囲のマクロブロック(左上、上、左)の画素を予測画像生成に用いる。
Intra16x16_pred_mode = 0: 上マクロブロックの最下辺の16画素を予測画像として使用する。
Intra16x16_pred_mode = 1: 左マクロブロックの最右辺の16画素を予測画像として使用する。
Intra16x16_pred_mode = 2: 上マクロブロックの最下辺の16画素(図4のA部分)と左マクロブロックの最左辺の16画素(図4のB部分)の合計32画素の平均値を予測画像として使用する。
Intra16x16_pred_mode = 3: 左上のマクロブロックの右下隅の画素、上マクロブロックの最下辺の15画素(白抜き画素を除いた部分)、左マクロブロックの最右辺の15画素(白抜き画素を除いた部分)の合計31画素を用いて所定の演算処理(使用する画素と予測する画素位置に応じた重み付け加算処理)により予測画像を得る。Miが16でない場合も、Mi=16の場合と同様の、画像テクスチャの方向性を加味したマクロブロック単位の空間予測モードを定義するものとする。
予測部461で行われるイントラ予測モード選択のための予測効率評価の規範としてはたとえば、
Jm = Dm + λRm(λ:正数)
で与えられるレート・ひずみコストを用いることができる。ここで、Dmはイントラ予測モードmを適用した場合の符号化歪または予測誤差量である。符号化歪とは、イントラ予測モードmを適用して予測差分信号を得、予測差分信号を変換・量子化した結果から映像を復号して符号化前の信号に対する誤差を計測するものである。予測誤差量は、イントラ予測モードmを適用した場合の予測画像と符号化前の信号との差分を得、その差分の大きさを定量化したもので、たとえば差分絶対値和(Sum of Absolute Distance: SAD)などが用いられる。Rmはイントラ予測モードmを適用した場合の発生符号量である。つまり、Jmはイントラ予測モードmを適用した場合の符号量と劣化度とのトレードオフを規定する値であり、最小のJmを与えるイントラ予測モードmが最適解を与える。
1.2 動き補償予測処理
予測部461においては、さらに、メモリ16bに格納される符号化済みの局部復号画像15を用いて、該マクロブロックの単位でフレーム間動き補償予測処理が行われる。動き補償予測を行うブロックサイズとして、図90(a)から(d)に示すように、マクロブロック単位に、MixMi画素、Mix(Mi/2)、(Mi/2)xMi、(Mi/2)x(Mi/2)のいずれかの分割形状タイプを選択することができるものとする。さらに(Mi/2)x(Mi/2)が選択された場合には、各(Mi/2)x(Mi/2)ブロックごとに、図90(e)から(h)に示すように、(Mi/2)x(Mi/2)、(Mi/2)x(Mi/4)、(Mi/4)x(Mi/2)、(Mi/4)x(Mi/4)のいずれかのサイズを選択することができる。
さらには、図90(i)から(l)に示すように、マクロブロック内を不均等分割した領域を動き補償予測単位とするように構成してもよい。画像信号には一般に輪郭をもつ被写体が含まれ、輪郭を境に動きの不連続が発生することが多い。マクロブロックやそのサブセットとしての矩形ブロックのみが動き検出の単位であると、ブロック内に物体境界が存在して動きの不連続が生じる場合は、ブロック分割を細かくして動きベクトルの本数を増やさないと予測効率が高まらないという状況が発生する。図90(i)から(l)のように、マクロブロックを不均等分割した領域を動き補償予測単位として用意しておけば、より少ない動きベクトルで物体輪郭上の動きの不連続性をカバーして予測効率を高めることができる。
また、一般には、マクロブロック内に輪郭が存在する場合のマクロブロック中における輪郭の位置や形状は多様であり、それらをすべて定義するには図90(i)から(l)のような形状にとどまらずありとあらゆるブロック内分割を定義する必要があるが、本実施の形態16の図90(i)から(l)のように、(Mi/2)x(Mi/2)までのブロックまで、といった形で不均一分割の形状を構成する単位領域を限定することにより、分割パターンを表現するために符号化が必要となる付加情報の符号量を抑制したり、各分割パターンに対して動き検出を行うために必要な演算量の抑制、かつ予測値を生成するためのメモリ16bへのアクセスを効率化できメモリバンド幅を抑制する効果がある。
図90のいずれの分割を動き補償予測に用いるかはインター予測モードとして決定され、各分割に割り当てられる動きベクトルが生成・出力される。あるピクチャにおいて利用可能なインター予測モードの種類については、図90のすべての分割パターンを指定可能なようにインター予測モードを定義してもよいし、最適なインター予測モードの選択に必要な演算量やインター予測モードを指定する情報の符号量を削減するために、条件に応じてインター予測モードとして選択可能な分割パターンを制限するように構成してもよい。例えば、マクロブロック内の分割を多くすればするほど、符号化が必要な動きベクトルの情報が増えるので、低いビットレートで符号化を行う場合、図90(e)から(h)に示すような(Mi/2)x(Mi/2)画素以下への再分割を行うパターンは使用せず、代わりに動きベクトルの符号量が少なくてすむ図90(i)から(l)に示す分割パターンを選択するように構成することができる。例えば、ビットレートの高低の判断基準として量子化パラメータの大きさが利用できるので、ピクチャの符号化を行うにあたっての量子化パラメータの初期状態の値に応じてインター予測モードの定義を切り替えるように構成できる。ないしはインター予測モードの定義を定める専用の識別ビットをビットストリームに多重するように構成してもよい。
さらに、MPEG-2のBピクチャや、AVCの双方向予測などのように、複数の参照画像からの予測画像を使用するようなピクチャにおいて、各参照画像に対する動きベクトルを個別に符号化しなければならないケースがある場合、動きベクトルの情報量を削減するために、図90(e)から(h)に示すような(Mi/2)x(Mi/2)画素以下への再分割を行うパターンは使用せず、代わりに動きベクトルの符号量が少なくてすむ図90(i)から(l)に示す分割パターンを選択するように構成することもできる。このほか、画面全体の動きの様子をあらかじめ推定して、ないしは直前に符号化を行ったピクチャの符号化過程を示す情報に基づいてインター予測モードの定義を切り替えるように構成してもよい。例えば、動きが複雑なシーンであれば、より細かい分割パターンが利用可能なようにインター予測モードの定義を定め、動きが均一で大きなブロックの単位でも十分に予測が可能と判断される状況では細かい分割パターンを使用しないインター予測モードの定義にする、といった方法がある。また、マクロブロック内のそれぞれの分割ブロックごとに予測値生成に用いる参照画像を指定できるように構成して、参照画像の識別番号を符号化するように構成してもよい。
動き補償予測処理におけるインター予測モード選択のための予測効率評価の規範としてはたとえば、
Jm,v,r = Dm,v,r + λRm,v,r(λ:正数)
で与えられるレート・ひずみコストを用いることができる。ここで、Dm,v,rはインター予測モードmとそれに応じて定まる動きベクトルv、参照画像rを適用した場合の符号化歪または予測誤差量である。符号化歪とは、インター予測モードmと動きベクトルvと参照画像rを適用して予測差分信号を得、予測差分信号を変換・量子化した結果から映像を復号して符号化前の信号に対する誤差を計測するものである。予測誤差量は、インター予測モードmと動きベクトルvと参照画像rを適用した場合の予測画像と符号化前の信号との差分を得、その差分の大きさを定量化したもので、たとえば差分絶対値和(Sum of Absolute Distance: SAD)などが用いられる。Rm,v,rはインター予測モードmと動きベクトルvと参照画像rを適用した場合の発生符号量である。つまり、Jm,v,rはインター予測モードmおよび動きベクトルvと参照画像rを適用した場合の符号量と劣化度とのトレードオフを規定する値であり、最小のJm,v,rを与えるインター予測モードmと動きベクトルvと参照画像rが最適解を与える。
1.3 ピクチャ符号化処理
予測部461では、図3や図4に示したイントラ予測の全モードないしはそのサブセットに対して、イントラ予測処理を実行してマクロブロック単位のイントラ予測画像を生成するとともに、図90に示した動き補償予測の全モードないしはそのサブセットに対して、動き補償予測処理を実行して、Mi×Miブロックの予測画像7を出力する。予測画像7は減算器3により入力信号505から差し引かれ、予測差分信号4を得る。予測差分信号4は符号化モード判定部5においてその予測効率が評価され、予測部461で実行した予測処理の中から、予測対象のマクロブロックに対して最適な予測効率が得られる予測モードを符号化モード6として出力する。すなわち、符号化モード6は、図3などのイントラNxN予測モードを用いるか、図4などのマクロブロック単位イントラ予測モードを用いるか、図90に示すような分割パターンのいずれを用いて動き補償予測を行うかを識別するマクロブロックタイプの情報を含む。また、本実施の形態16では、カレントピクチャで選択可能な符号化モードの種類を、符号化制御部19等で定まる符号化モード定義選択情報711によって切り替える。符号化モード定義選択情報711としては、専用の選択指示情報を使用するほか、専用の情報を使わずに、例えばカレントピクチャを符号化するにあたっての量子化パラメータ21の初期値、ブロック分割部40に通知される符号化ブロックサイズ指示情報506などを単体で代用したり、または複合的に組み合わせて用いるように構成してもよい。符号化モード6の選定にあたっては、符号化制御部19の判断で定まる各符号化モードに対する重み係数20が加味されることもある。符号化モード判定部5において符号化モード6を用いて得られる最適な予測差分信号4は、変換部310へ出力される。
変換部310は入力されるMi×Mi画素ブロックからなる予測差分信号4を変換し変換係数として量子化部9へ出力する。変換に際しては、Mi×Mi画素ブロックをL×L画素ブロック(L<=Miで、かつMiはLの倍数)へ分割して変換し、変換ブロックサイズLを変換ブロックサイズ指定フラグ464により指定するよう構成する。このように構成することで、Mi×Mi画素ブロック中の信号の局所的性質に適応した変換処理を行うことができる。変換ブロックサイズLは、設定可能なすべてのLの値に対して変換を行って最も効率のより値を選択してもよいし、イントラ予測モードのブロックサイズや動き補償予測モードのブロックサイズに合わせるようにしてもよい。後者の場合は、符号化モード6に変換ブロックサイズ指定フラグ464相当の情報が含まれるため、別途変換ブロックサイズ指定フラグ464をビットストリームに多重化しなくてもよいという効果がある。量子化部9は入力される変換係数を、符号化制御部19によって定まる量子化パラメータ21に基づいて量子化を行い、量子化済み変換係数10として可変長符号化部11へ出力する。量子化済み変換係数10は、可変長符号化部11にてハフマン符号化や算術符号化などの手段によりエントロピー符号化される。また、量子化済み変換係数10は逆量子化部12、逆変換部312を経て局部復号予測差分信号14へ復元され、符号化モード6に対応する予測方法で生成される予測画像7と加算器18で加算することで局部復号画像15が生成される。局部復号画像15は以降の予測処理に用いるため、デブロッキングフィルタを施すか否かを示すデブロッキングフィルタ制御フラグ24に基づいて、デブロッキングフィルタ部462でブロック境界にひずみ除去フィルタを施すか、ないしはそのままメモリ16bへ格納される。なお、デブロッキングフィルタ部462では、符号化ブロックサイズ指示情報506、変換ブロックサイズ指定フラグ464を参照し、マクロブロック境界、変換ブロック境界のそれぞれに対して最適なブロックひずみ除去処理を行う。デブロッキングフィルタ制御フラグ24は、復号装置でも同様の処理を行う必要があるため、可変長符号化部11に入力され、ビットストリームに多重化される。
可変長符号化部11では、マクロブロックサイズMiを規定する符号化ブロックサイズ指示情報506、量子化済み変換係数10、符号化モード6、予測オーバヘッド情報463、量子化パラメータ21がハフマン符号化、算術符号化などによってエントロピー符号化され、所定の規則(シンタックス)に従ってビットストリームとして配列・整形され、送信バッファ17へ出力される。本実施の形態16の予測オーバヘッド情報463には、符号化モード6してイントラ予測処理が選択された場合には、予測単位ブロックあたりで使用する個々の予測モード情報(Intra4x4_pred_mode、Intra16x16_pred_modeなど)が含まれる。また、符号化モード6として動き補償予測処理が選択された場合は、図90記載のマクロブロックタイプごとに定まる分割パターンに合わせた動きベクトル情報や参照画像インデックスが含まれる。送信バッファ17では符号化装置が接続される伝送路の帯域や記録媒体の読み出し速度に合わせてビットストリームを平滑化してビデオストリーム422b0として出力する。また、送信バッファ17中のビットストリーム蓄積状況に応じて符号化制御部19へフィードバック情報を出力し、以降の映像フレームの符号化における発生符号量を制御する。ビデオストリーム422b0は、複数のマクロブロックを束ねたスライスの単位でユニット化され、出力される。
2.符号化ビットストリームの構成
以上の処理をピクチャ符号化部503で実施することにより、符号化装置への入力映像信号1は、3つの独立したピクチャ符号化部503b0、503b1、503b2によってそれぞれ独立して符号化され、複数のマクロブロックを束ねたスライスの単位でビデオストリーム422b0、422b1、422b2として出力され、多重化部504において、3成分から構成される入力映像信号1としてのビデオストリーム422cの形に配列されて符号化装置から出力される。
ピクチャ符号化部503b0、503b1、503b2からの出力であるビデオストリーム422b0、422b1、422b2のデータ配列を図91に示す。ピクチャ符号化によるビデオストリーム422b0、422b1、422b2は、同ピクチャ中に含まれるマクロブロックの数分の符号化データが集められたものとして構成され、マクロブロックは複数個集められたスライスというデータ単位にユニット化される。同一ピクチャに属するマクロブロックが共通パラメータとして参照するピクチャレベルヘッダが用意され、ピクチャレベルヘッダには、符号化ブロックサイズ指示情報506、符号化モード定義選択情報711が格納される。ピクチャ内のすべてのマクロブロックは、参照するピクチャレベルヘッダに含まれる符号化ブロックサイズ指示情報506によってマクロブロックサイズMiを定め、符号化モード定義選択情報711にしたがって符号化モード6の可変長符号化手順を定める。
各スライスはそれぞれスライスヘッダから始まり、スライスヘッダには同スライスにどの色成分の符号化データを含むか(505b0、505b1、505b2の種別を定義する情報)を示す色成分識別フラグ721を含む(図69の独立符号化処理によって得られるスライス符号化データの場合と同じ)。スライスヘッダに引き続いて、スライス内の各マクロブロックの符号化データが配列される。(この例では、1ピクチャ内の第2スライスにK個のマクロブロックが含まれることを示す。)各マクロブロックのデータは、符号化モード6に続いて、予測オーバヘッド情報463、変換ブロックサイズ指定フラグ464、(マクロブロック単位に量子化パラメータを変更する場合のみ)量子化パラメータ21、量子化済み変換係数10が配列される。図87の符号化装置の出力となるビデオストリーム422cは、図91の構成のビデオストリーム422b0、422b1、422b2の3成分分多重される形式をとる。なお、図91では、符号化ブロックサイズ指示情報506や符号化モード定義選択情報711をピクチャレベルヘッダに配置しているが、これらは3成分分の情報をまとめて複数毎の映像フレームを束ねたシーケンスの単位で付与するシーケンスレベルヘッダに格納するように構成してもよい。このようにすることで、3つの成分で異なる情報を個別のピクチャレベルヘッダで符号化・伝送する必要がなくなり、ヘッダの情報量を削減できる。
3.復号装置の動作概要
図92の復号装置は、図87の符号化装置から出力されるビデオストリーム422cを受信して、マクロブロックの単位で復号処理を行い、個々の映像フレームを復元するものとする。
図92において、ビデオストリーム422cは、上位ヘッダ解析部610で、シーケンスレベルヘッダやピクチャレベルヘッダなどの上位ヘッダ情報を復号し、色成分判定部602、ピクチャ復号部603b0、603b1、603b2が参照可能な所定のメモリエリアへ格納しておく。
色成分判定部602は、図91で示した色成分識別フラグ721の値により、スライスがいずれの色成分ピクチャに相当するかを識別して、適切なピクチャ復号部(603b0、603b1、603b2)へ分配供給する。このような復号装置の構成によって、3つの色成分が混在するビデオストリームを受信しても、どのスライスがどの色成分ピクチャに属するかを容易に判別し正しく復号できる。
3.1 ピクチャ復号部603の動作概要
以下、ピクチャ復号部603b0、603b1、603b2の詳細動作説明を行う。本実施の形態16のピクチャ復号部603b0、603b1、603b2の説明は、図77の構成を変形する形で説明を行う。図93にピクチャ復号部603b0、603b1、603b2の内部構成を示す。同図中、図77のピクチャ復号部と同じ番号を付与した機能ブロックや信号線は、特に断らない限り、図77のものと同一のものとする。
ピクチャ復号部603b0、603b1、603b2は、色成分判定部602で振り分けられたC0ないしは、C1ないしは、C2スライス符号化データを受信して、単一色成分のサンプルからなるマクロブロックを単位として復号処理を行い、出力映像フレームの該当色成分の信号427b0(427b1、427b2)を復元する。
可変長復号部25はビデオストリーム422cを入力とし、所定の規則(シンタックス)に従ってビデオストリーム422cを解読して、スライスヘッダ、各マクロブロックの量子化済み変換係数10、予測オーバヘッド情報463、変換ブロックサイズ指定フラグ464、量子化パラメータ21、符号化モード6を抽出する。図92では、シーケンスないしはピクチャレベルヘッダを上位ヘッダ解析部610で復号するように記載したが、この場合は、符号化ブロックサイズ指示情報506、符号化モード定義選択情報711といった情報は、該当する色成分を復号するピクチャ復号部603においてスライスの復号を開始する前に参照できるように構成する。各ピクチャ復号部603中の可変長復号部25で復号する場合は、スライスの復号を開始する前に可変長復号部25においてピクチャレベルヘッダの復号を行い、符号化ブロックサイズ指示情報506、符号化モード定義選択情報711といった情報をビットストリームから抽出する。なお、図示はしていないが、符号化モード定義選択情報711は、可変長復号部25内で符号化モード6を復号する際に、その可変長復号手順を定めるために用いられる。
量子化済み変換係数10は量子化パラメータ21とともにピクチャ符号化部503b0、503b1、503b2と同じ処理を行う逆量子化部12へ入力され、逆量子化処理が行われる。ついでその出力がピクチャ符号化部503b0、503b1、503b2と同じ処理を行う逆変換部312へ入力され、局部復号予測差分信号14へ復元される。これらの過程で、逆変換及び逆量子化の単位となる変換ブロックサイズLを与える変換ブロックサイズ指示フラグ464、逆変換出力をMi×Mi画素ブロックの予測誤差画像として構成するために符号化ブロックサイズ指示情報506を参照する。一方、予測部461には、ピクチャ符号化部503b0、503b1、503b2中の予測部461のうち、符号化モード6、予測オーバヘッド情報463を参照して予測画像7を生成する処理だけが含まれる。予測部461に対して符号化モード6、予測オーバヘッド情報463が入力され、予測画像7を得る。予測部461では、マクロブロックサイズMiに基づいてMixMi画素ブロックに対する予測画像を生成するため、符号化ブロックサイズ指示情報506を通知する。
符号化モード6がイントラNxN予測、マクロブロック単位イントラ予測などのイントラ予測モードであることを示す場合は、予測オーバヘッド情報463からNxNブロック単位のイントラ予測モード情報や、マクロブロック単位のイントラ予測モード情報、およびマクロブロックサイズMiに従ってメモリ16b中に格納される参照画像701を用いて予測画像7を得る。符号化モード6がインター(動き補償)予測であることを示す場合は、符号化モード6より図90のマクロブロック内分割パターンを識別し、予測オーバヘッド情報463から得られる動きベクトル、参照画像インデックス、、およびマクロブロックサイズMiに従ってメモリ16b中に格納される参照画像701を用いて予測画像7を得る。
局部復号予測差分信号14と予測画像7は加算器18により加算され、復号画像427b0(427b1、427b2)を得る。復号画像427b0(427b1、427b2)は以降のマクロブロックの動き補償予測に用いられるため、ピクチャ符号化部503b0、503b1、503b2と同じように、デブロッキングフィルタ制御フラグ24に基づいて、デブロッキングフィルタ26においてブロックひずみ除去処理を実施することがある。この際、デブロッキングフィルタ26の処理結果は、メモリ16bに格納され、以降のピクチャ復号に参照画像701として参照されるため、符号化時と同様、符号化ブロックサイズ指示情報506、変換ブロックサイズ指示フラグ464を参照して、マクロブロック、変換ブロックのそれぞれに適応したブロックひずみ除去処理を行う。復号画像427b0(427b1、427b2)は以降の動き補償予測処理に用いるため、メモリ16bへ格納される。復号画像427b0(427b1、427b2)は単一色成分のサンプルのみを含み、他の色成分の復号を行うピクチャ復号部603b0、603b1、603b2のそれぞれの出力である復号画像427b0、427b1、427b2を映像フレームの単位に束ねることで、カラー映像フレームとして構成される。
以上述べた符号化装置、復号装置によれば、4:4:4フォーマットのカラー映像信号を効率よく符号化するために、各色成分を独立に予測符号化して、かつ各色成分の信号の性質に応じて予測や符号化を行うマクロブロックのサイズを動的に切り替えることが可能となるため、高い圧縮率となる低ビットレート符号化において符号量全体に対する比率が高くなる、イントラ予測モード、動きベクトル、参照画像インデックスといった予測オーバヘッド情報463の符号量を効果的に抑制した符号化を行うことが可能となる。さらに、動き補償予測処理において、予測オーバヘッド情報463の符号量抑制のため、少ない動きベクトル本数で予測効率を高めるためのマクロブロック内不均一分割のパターンを用いることにより、予測効率と符号量のバランスを改善するとともに、これら分割パターンを示すインター予測モードの種別を多様化してさまざまな動きに対する予測効率を高めるとともに、ビットレートや画像解像度などの符号化条件に合わせて必要となるインター予測モードの種別を切り替えられるよう構成したので、4:4:4フォーマットのカラー映像信号を効率よく符号化する符号化装置、復号装置を提供することができる。
なお、本実施の形態16では、図74にブロック分割部40を加えた図88の符号化装置と、それに対応する復号装置を用いて説明したが、他の実施の形態における、色成分ごとに個別・独立な符号化処理を行う処理機能にブロック分割部40を加えた符号化装置、及びそれに対応する復号装置を用いても同様の効果を得ることができる。また、図71の符号化装置における個別符号化処理実施部分を図87の符号化装置に、図75の復号装置における個別復号処理実施部分を図92の復号装置に置き換えることで、4:4:4フォーマットのカラー映像信号の符号化に対してより適応性・効率の高い符号化装置、復号装置を提供することができる。
実施の形態17.
本実施の形態17では、実施の形態16の符号化装置、復号装置に対して、予測部における動き補償予測処理を行う際に動きベクトル検出精度を動的に切り替える符号化装置、復号装置について述べる。
本来、デジタル画像である入力信号505には、サンプリングによって生成された離散的な画素情報(以降、整数画素と呼ぶ)しか存在しないが、整数画素の間に内挿演算によって仮想的なサンプルを作り出し、それを予測画像として用いる技術が広く利用されている。この技術には、予測の候補点が増えることによる予測精度の向上と、内挿演算に伴うフィルタ効果によって予測画像の特異点が削減され予測効率が向上するという2つの効果があることが知られている。一方で、仮想サンプルの精度が向上すると、動き量を表現する動きベクトルの精度も上げる必要があるため、その符号量も増加することに注意する必要がある。
MPEG-1、MPEG-2などの符号化方式ではこの仮想サンプルの精度を1/2画素精度まで許容する半画素予測が採用されている。図94に1/2画素精度のサンプルの生成の様子を示す。同図において、A,B,C,Dは整数画素、e,f,g,h,iはA〜Dから生成される半画素精度の仮想サンプルを示す。
e = (A+B)//2
f = (C+D)//2
g = (A+C)//2
h = (B+D)//2
i = (A+B+C+D)//2
(ただし、//は丸めつき除算を示す。)
また、MPEG-4(ISO/IEC 14496-2)では、1/4画素精度までの仮想サンプルを用いる1/4画素精度予測が採用されている。1/4画素精度予測では、半画素サンプルを生成した後、それらを用いて1/4画素精度のサンプルを生成する。半画素サンプル生成時の過度の平滑化を抑える目的で、タップ数の多いフィルタを用いてもとの信号の周波数成分を極力保持するよう設計される。例えばMPEG-4の1/4画素精度予測では、1/4画素精度の仮想サンプル生成のために作られる半画素精度の仮想サンプルaは、その周辺8画素分を使用して、以下のように生成される。なお、下式は、水平処理の場合のみを示しており、1/4画素精度の仮想サンプル生成のために作られる半画素精度の仮想サンプルaと、下式の整数画素のX成分X-4〜X4との関係は、図95に示す位置関係にある。
a = (COE1*X1+COE2*X2+COE3*X3+COE4*X4+COE-1*X-1+COE-2*X-2+COE-3*X-3+COE-4*X-4)//256
(ただし、COEk: フィルタ係数(係数総和が256)。//は丸めつき除算を示す。)
AVC(ISO/IEC 14496-10)では、半画素精度の仮想サンプルを生成する際に、[1,-5,20,20,-5,1]なる6タップのフィルタを採用しており、さらに1/4画素精度の仮想サンプルを上記MPEG-1、MPEG-2の半画素サンプル生成と同様の線形補間処理によって生成している。
1.符号化装置の動作
本実施の形態17においても、動き補償予測処理時に仮想サンプルの精度として半画素、1/4画素精度まで指定可能とする。そのうえで、本実施の形態17の符号化装置、復号装置は各色成分ごとに利用する仮想サンプルの精度を指定できるように構成する。図96に本実施の形態17におけるピクチャ符号化部503b0、503b1、503b2の構成を示す。図88のピクチャ符号化部503b0、503b1、503b2に対して、予測部461、可変長符号化部11の動作のみが異なる。
本実施の形態17における予測部461は、仮想画素精度指示情報800を受け取り、それに基づいて動きベクトル検出を行う仮想画素の精度を定めて処理を行う。図示していないが、仮想画素精度指示情報800は、各色成分の符号化を行うピクチャ符号化部503にそれぞれ色成分Ci別に個別に指定されるように構成する。予測部461は、仮想画素精度指示情報800が「1/4画素精度の動きベクトル検出」を行うことを示す場合は、上記MPEG-4ないしはAVCのようなマルチタップフィルタに基づく半画素精度サンプルを生成した上で線形補間により1/4画素精度のサンプルを生成しながら動きベクトル検出を行う。一方、仮想画素精度指示情報800が「半画素精度の動きベクトル検出のみ」を行うことを示す場合は、上記MPEG-4ないしはAVCのようなマルチタップフィルタに基づく半画素精度サンプル生成を行うか、または、上記MPEG-1,MPEG-2の場合のような線形補間により半画素精度のサンプルを生成しながら動きベクトル検出を行う。仮想画素精度指示情報800は、復号装置で同じ方法で仮想サンプルを生成して予測画像を得る必要があるため、ビットストリームへ多重出力する。なお、半画素精度サンプルの生成方法は1つに決めておいて符号化装置と復号装置で同じ手順で処理を行うように構成してもよいし、複数の生成方法を用意して、いずれを用いるかを仮想サンプル生成手法指示情報811としてビットストリームに多重して復号装置へ伝達するように構成してもよい。仮想画素精度指示情報800の設定方法としては、例えば、Y、Cb、Crのような色空間で符号化を行う際、画像のテクスチャ構造を強く反映するY成分については仮想画素精度指示情報800を「1/4画素精度の動きベクトル検出」として細かい精度で動き検出を行い、Y成分信号に比べてテクスチャ構造との相関が低い色差成分(Cb,Cr)に対しては、仮想画素精度指示情報800を「半画素精度の動きベクトル検出のみ」とする、といった方法が考えられる。この構成は、色成分別に仮想画素精度の指示を変化させるだけでなく、RGB信号のように、いずれの成分もある程度の画像テクスチャ構造を保存している場合では、すべての成分に対して仮想画素精度指示情報800を「1/4画素精度の動きベクトル検出」として細かい精度で動き検出を行うように構成することも可能であり、どのような色空間の信号に対しても各色成分の信号の性質に合わせて柔軟な動き補償予測処理を行うことができるという効果がある。
また、仮想画素精度指示情報800は、可変長符号化部11へ送られ、予測部461で検出される動きベクトル(予測オーバヘッド情報463に含まれる)の値の単位を識別するために用いられる。可変長符号化部11において、符号化対象となる動きベクトルをMVとし、所定の予測値決定手順にしたがってMVに対して定められた予測ベクトルをPMVとする。PMVはすでに符号化済みの値を用いる。可変長符号化部11ではMV-PMVの値を符号化する。この際、仮想画素精度指示情報800が「1/4画素精度の動きベクトル検出」を示している場合は、MVの値の単位は1/4画素とする。一方、仮想画素精度指示情報800が「半画素精度の動きベクトル検出のみ」を行うことを示す場合は、MVの値の単位は1/2画素とする。1/4画素を1とする動きベクトルは、水平・垂直成分共に1/2画素を1とする場合に比べて値域が2倍になる。したがって、1/2画素精度のサンプルしか使用しない場合は、MVの値の単位を1/2画素とすることで、1/4画素を値の単位とする場合に比べてMVの符号化に必要な情報量を削減できる。
この性質を利用することにより、色空間に伴う信号の性質の違いだけでなく、符号量全体に対して動きベクトルなど予測オーバヘッド情報463の符号量の比率が高くなる高圧縮符号化を行う場合に、仮想画素精度指示情報800を調整して動きベクトルの符号量を抑制した符号化を行うようにすることも可能である。仮想画素精度指示情報800は色成分ごとに独立して設定できるので、高圧縮時の各色成分の状況に適応した制御が可能であり、より適応性の高い符号化処理が可能となる。
2.符号化ビットストリームの構成
図97に、図96の符号化装置から出力されるビデオストリーム422b0、422b1、422b2のデータ配列を示す。図91のストリーム配列と比べて異なる点は、ピクチャレベルヘッダ部分に仮想画素指示情報800を多重している点である。これにより、このビットストリームを受け取る復号装置は、色成分ごとに予測オーバヘッド情報463に含まれる動きベクトルの値の単位を認識して符号化装置と同じように動きベクトルを復号し、予測画像を生成することが可能となる。また、例えば前述のように半画素精度のサンプルを生成するための方法が複数用意できる場合は、仮想サンプル生成手法指示情報811をピクチャレベルヘッダに多重するように構成してもよい。図97では仮想画素指示情報800や仮想サンプル生成手法指示情報811をピクチャレベルヘッダ領域に多重しているが、3つの色成分の分をまとめてシーケンスレベルヘッダなどより上位のヘッダ領域に多重する構成としてもよい。
3.復号装置の動作
図98に本実施の形態17における復号装置(ピクチャ復号部603b0、603b1、603b2)の構成を示す。図93のピクチャ復号部部603b0、603b1、603b2に対して、可変長復号部25、予測部461の動作だけが異なる。可変長復号部25は、図97に示すビデオストリーム422b0、422b1、422b2を復号し、ピクチャレベルヘッダに含まれる仮想画素精度指示情報800をビデオストリームから抽出し、予測部461に出力する。仮想画素精度指示情報800の値が「1/4画素精度の動きベクトル検出」を示している場合は、予測オーバヘッド情報463に含まれる動きベクトルの値の単位を1/4画素に設定して、予測オーバヘッド情報463を予測部461へ送る。予測部461は、予測オーバヘッド情報463に含まれる動きベクトルの値が1/4画素単位であることを踏まえて、上記MPEG-4ないしはAVCのようなマルチタップフィルタに基づく半画素精度サンプルを生成した上で線形補間により1/4画素精度のサンプルを生成しながら予測画像の生成を行う。
一方、仮想画素精度指示情報800の値が「半画素精度の動きベクトル検出」を示している場合は、予測オーバヘッド情報463に含まれる動きベクトルの値の単位を1/2画素に設定して、予測オーバヘッド情報463を予測部461へ送る。予測部461は、予測オーバヘッド情報463に含まれる動きベクトルの値が1/2画素単位であることを踏まえて、上記MPEG-4ないしはAVCのようなマルチタップフィルタに基づく半画素精度サンプル生成を行うか、または、上記MPEG-1,MPEG-2の場合のような線形補間により半画素精度のサンプルを生成しながら予測画像の生成を行う。半画素サンプルの生成方法を複数選択できるように構成する場合は、可変長復号部25において図97の仮想サンプル生成手法指示情報811をビットストリームから抽出し、それを予測部461へ伝達して符号化装置と同じ方法により半画素サンプルの生成を行うように構成する。
以上述べた本実施の形態17における符号化装置、復号装置によれば、4:4:4フォーマットのカラー映像信号を効率よく符号化するために、各色成分を独立に動き補償予測する際に、各色成分の信号の性質に応じて、動きベクトル検出・予測画像生成の際に利用する仮想サンプルの精度を動的に切り替えることが可能となるため、高い圧縮率となる低ビットレート符号化において符号量全体に対する比率が高くなる、動きベクトルの符号量を効果的に抑制した符号化を行うことが可能となる。さらに、仮想サンプルの生成を行う場合に使用する内挿フィルタの種別など仮想サンプル生成の手法を複数用意して選択的に切り替えて仮想サンプルを生成することにより、各色成分の信号の性質に応じた最適な動き補償予測処理が可能となり、4:4:4フォーマットのカラー映像信号を効率よく符号化する符号化装置、復号装置を提供することができる。
なお、本実施の形態17では、上記実施の形態16の図88に仮想画素精度指示情報800を加えた図96の符号化装置、図93に仮想画素精度指示情報800を加えた図98の復号装置を用いて説明したが、他の実施の形態の図に仮想画素精度指示情報800を加えた符号化装置、及び仮想画素精度指示情報800を加えた復号装置を用いても同様の効果を得ることができる。
実施の形態18.
上述した実施の形態において、単一の色成分を他の色成分とは独立に符号化・復号する個別・独立符号化処理を行う符号化装置・復号装置につき、別の実施の形態について述べる。ここでは、実施の形態16を例にして述べる。個別・独立符号化処理では、原理上非可逆符号化ができない符号化モード6や動きベクトルなどの予測オーバヘッド情報463を、色成分別に個々にビットストリームに多重するため、符号量全体に対してこれらの符号量の比率が高くなる高圧縮符号化の場合には圧縮性能の妨げとなる。そこで、本実施の形態18の符号化装置では、ある特定の色成分(例えばC0成分、と決める)でマクロブロック符号化を行った結果得られる、符号化モード6や予測オーバヘッド情報463等の情報をリファレンス情報として保持しておき、他の色成分を扱うピクチャ符号化部503において、リファレンス情報を使用するC0成分のマクロブロックと画像空間上で同一位置にあるマクロブロックの符号化を行う際、上記リファレンス情報を流用して符号化を行うか、あるいは自身の色成分で個別に符号化モード6、予測オーバヘッド情報463を決定して符号化を行うかを選択できるように構成し、いずれの手順を選択したかを示す予測情報符号化指示フラグをマクロブロック単位に多重するように構成する。このように構成することによって、色成分間で符号化モード6や予測オーバヘッド情報463に関わる相関が高い場合、これらの符号量を効果的に削減して圧縮効率を高めることができる。
自身の色成分で個別に符号化モード6、予測オーバヘッド情報463を決定して符号化を行う場合は、実施の形態16や17に述べた符号化・復号処理手順をそのまま利用できる。また、リファレンス情報を参照して符号化を行う場合も、符号化側ではリファレンス情報を得るまで他の成分の符号化処理を待たせる必要はあるものの、符号化モード6や予測オーバヘッド情報463等のビットストリームへの多重処理をスキップするだけで、ほぼ実施の形態16や17に述べた符号化処理手順をそのまま利用できる。復号側においても、はじめにリファレンス情報の復号を行っておく必要はあるが、上記予測情報符号化指示フラグを復号してリファレンス情報を使用するか、自身のマクロブロック内の復号情報を使用するかを判断する処理が行われるだけで、あとは実施の形態16や17に述べた復号処理手順をそのまま利用できる。
さらに、上記予測情報符号化指示フラグがマクロブロック単位に常に多重されるか否かを、より上位のデータ階層(スライス、ピクチャ、シーケンス)で決定しビットストリームに多重することにより、高圧縮時のみに限定するなど、上記予測情報符号化指示フラグを必要な場合にだけマクロブロックレベルの符号として多重すればよく、符号化効率を高めることもできる。また、リファレンス情報をある特定の色成分の情報に限定せず、いずれの色成分をリファレンスとして用いるか、を選択しながら符号化・復号するように構成してもよい。
なお、本実施の形態18の構成は、実施の形態16に限定せず、本願実施の形態における、単一の色成分を他の色成分とは独立に符号化・復号する個別・独立符号化処理を行う符号化装置・復号装置すべてに適用可能である。
1 入力映像信号、2 空間予測部、3 減算器、4 予測差分信号、5 符号化モード判定部、6 符号化モード、7 予測画像、8 直交変換部、9 量子化部、10 量子化済み変換係数、11 可変長符号化部、11a コンテクストモデル決定部、11b 二値化部、11c 生起確率生成部、11d 符号化部、11e 符号化値、11f コンテクストモデル、11g 生起確率情報記憶メモリ、11h 生起確率状態、12 逆量子化部、13 逆直交変換部、14 局部復号予測差分信号、15 局部復号画像(暫定復号画像)、16 メモリ、17 送信バッファ、18 加算器、19 符号化制御部、20 重み係数、21 量子化パラメータ、22 ビデオストリーム、23 イントラ予測モード共通化識別フラグ、24 デブロッキングフィルタ制御フラグ、25 可変長復号部、25a 復号部、25b bin復元値、26 デブロッキングフィルタ、27 復号画像、28 イントラ符号化モード、29 基本イントラ予測モード、30 拡張イントラ予測モード、31 拡張イントラ予測モードテーブル指示フラグ、32 変換ブロックサイズ識別フラグ、33 イントラ符号化モード共通化識別フラグ、34 イントラ符号化モード、35 イントラ予測モード、36 イントラ予測モード指示フラグ、40 ブロック分割部、102 動き補償予測部、106 マクロブロックタイプ/サブマクロブロックタイプ、123 インター予測モード共通化識別フラグ、123b 動きベクトル共通化識別フラグ、123c マクロブロックヘッダ共通化識別フラグ、128 基本マクロブロックタイプ、128b マクロブロックタイプ、129 基本サブマクロブロックタイプ、129b サブマクロブロックタイプ、130 拡張マクロブロックタイプ、131 拡張サブマクロブロックタイプ、132 基本参照画像識別番号、132b 参照画像識別番号、133 基本動きベクトル情報、134 拡張参照画像識別番号、135 拡張動きベクトル情報、136 プロファイル情報、137 動きベクトル、138、138a、138b、138c スキップ指示情報、139a、139b、139c ヘッダ情報、140a、140b、140c 変換係数データ、141 イントラ予測モード、142 変換係数有効無効指示情報、143 生起確率状態パラメータ共通化識別フラグ、144 イントラ色差予測モード、111 動きベクトル予測部、112 差分動きベクトル算出部、113 差分動きベクトル可変長符号化部、250 動きベクトル復号部、251 差分動きベクトル可変長復号部、252 動きベクトル予測部、253 動きベクトル算出部、301 色空間変換部、302 変換映像信号、303 符号化装置、304 色空間変換方法識別情報、305 ビットストリーム、306 復号装置、307 復号画像、308 逆色空間変換部、310 変換部、311 色空間変換方法識別情報、312 逆変換部、422a、422b0、422b1、422b2、422c ビデオストリーム、423 共通符号化・独立符号化識別信号、427a、427b、427b0、427b1、427b2 復号画像、461 予測部、462 デブロッキングフィルタ、463 予測オーバヘッド情報、464 変換ブロックサイズ指定フラグ、465 色空間変換部、466 逆色空間変換部、467 シグナリング情報、501、601 スイッチ、502 色成分分離部、503a 第1のピクチャ符号化部、503b0、503b1、503b2 第2のピクチャ符号化部、504 多重化部、505 入力信号、505b0、505b1、505b2 画面成分、506 符号化ブロックサイズ指示情報、506b0、506b1、506b2 符号化単位の矩形領域のサイズMiを指定する情報、602 色成分判定部、603a 第1のピクチャ復号部、603b0、603b1、603b2 第2のピクチャ復号部、610 上位ヘッダ解析部、701 参照画像、711 符号化モード定義選択情報、721 色成分識別フラグ、800 仮想画素精度指示情報、811 仮想サンプル生成手法指示情報、4611a、4611b、4611c 切替部、4612 輝度信号イントラ予測部、4613 色差信号イントラ予測部、4614 輝度信号インター予測部、4615 色差信号インター予測部。

Claims (4)

  1. 複数の色成分から構成されるカラー動画像信号を入力して、該カラー動画像信号を各色成分ごとに所定の符号化単位領域に分割して、画面内符号化ないしは動き補償予測符号化を選択的に適用することにより前記カラー動画像信号をデジタル圧縮する画像符号化装置であって、
    入力色成分信号を、符号化ブロックサイズ指示情報によって定まるサイズのブロックに分割して、前記符号化単位領域の信号を生成するブロック分割部と、
    予測画像生成方法を示すひとつ以上の予測モードに対応して前記符号化単位領域の信号に対する予測画像を生成する予測画像生成部と、
    該予測画像生成部から出力される予測画像の予測効率に応じて符号化に用いる予測モードを判定する判定部と、
    該判定部によって定められた予測モードに対応する予測画像と前記入力色成分信号との差分を符号化する予測誤差符号化部と、
    前記予測モードと予測誤差符号化部の出力とを可変長符号化する符号化部とを備え、
    前記符号化部は、前記符号化ブロックサイズ指示情報、ならびに各符号化単位領域ごとの前記予測モード、予測誤差を符号化した情報をビットストリームに多重化することを特徴とする画像符号化装置。
  2. 複数の色成分から構成されるカラー動画像信号を圧縮符号化したビットストリームを入力として、該カラー動画像信号の各色成分ごとに、画面内復号処理ないしは動き補償予測復号処理を選択的に適用することにより前記カラー動画像信号を復号する画像復号装置であって、
    色成分ごとに、各色成分信号の符号化単位領域となるブロックのサイズを定める符号化ブロックサイズ指示情報をビットストリームから復号するとともに、該符号化ブロックサイズ指示情報に基づいて符号化単位領域のブロックサイズを定め、該符号化単位領域ごとに、所定のシンタックスにしたがって、該符号化単位領域の符号化に用いられる予測画像生成方法を示す予測モード、および予測誤差を符号化した情報をビットストリームから復号する復号部と、
    前記符号化ブロックサイズ指示情報と前記予測モードとに基づいて前記符号化単位領域の信号に対する予測画像を生成する予測画像生成部と、
    前記予測誤差を符号化した情報に基づいて予測誤差信号を復号する予測誤差復号部と、 前記予測画像生成部の出力と、前記予測誤差復号部の出力とを加算する加算部とを備えることを特徴とする画像復号装置。
  3. 複数の色成分から構成されるカラー動画像信号を入力して、該カラー動画像信号を各色成分ごとに所定の符号化単位領域に分割して、動き補償予測符号化を用いて前記カラー動画像信号をデジタル圧縮する画像符号化装置であって、
    入力色成分信号を、所定のブロックに分割して、前記符号化単位領域の信号を生成するブロック分割部と、
    動き補償予測画像生成方法を示すひとつ以上の動き補償予測モードと動きベクトルに対応して前記符号化単位領域の信号に対する予測画像を生成する予測画像生成部と、
    該予測画像生成部から出力される動き補償予測画像の予測効率に応じて符号化に用いる動き補償予測モードおよび対応する動きベクトルを判定する判定部と、
    該判定部によって定められた動き補償予測モードに対応する予測画像と前記入力色成分信号との差分を符号化する予測誤差符号化部と、
    前記動き補償予測モードと動きベクトルと予測誤差符号化部の出力を可変長符号化する符号化部とを備え、
    前記予測画像生成部は、予測画像生成に際して使用する仮想画素の上限精度を示す仮想画素精度指示情報に基づいて、指定される仮想画素までの精度で前記符号化領域単位ごとに予測画像生成を行うとともに、前記判定部は、前記仮想画素精度指示情報に基づいて、指定される仮想画素までの精度で、前記符号化領域単位ごとに動き補償予測モードと動きベクトルを求め、前記符号化部は、前記仮想画素精度指示情報をビットストリームに多重化するとともに、前記符号化単位領域ごとに、前記仮想画素精度指示情報に基づいて動きベクトルを符号化し、前記動き補償予測モードおよび予測誤差を符号化した情報をビットストリームに多重化することを特徴とする画像符号化装置。
  4. 複数の色成分から構成されるカラー動画像信号を圧縮符号化したビットストリームを入力として、該カラー動画像信号の各色成分ごとに、動き補償予測復号処理を用いて前記カラー動画像信号を復号する画像復号装置であって、
    色成分ごとに、予測画像生成に際して使用する仮想画素の上限精度を示す仮想画素精度指示情報をビットストリームから復号するとともに、符号化単位領域ごとに、所定のシンタックスにしたがって、該符号化単位領域の符号化に用いられる動き補償予測画像生成方法を示す動き補償予測モード、対応する動きベクトルおよび予測誤差を符号化した情報をビットストリームから復号する復号部と、
    前記仮想画素精度指示情報と前記動き補償予測モードと前記動きベクトルとに基づいて前記符号化単位領域の信号に対する予測画像を生成する予測画像生成部と、
    前記符号化単位領域の予測誤差を符号化した情報に基づいて予測誤差信号を復号する予測誤差復号部と、
    前記予測画像生成部の出力と、前記予測誤差復号部の出力とを加算する加算部とを備え、
    前記復号部は、前記仮想画素精度指示情報に基づいて動きベクトルの復号処理を行うことを特徴とする画像復号装置。
JP2013124268A 2007-06-28 2013-06-13 画像符号化装置および画像復号装置 Pending JP2013176168A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013124268A JP2013176168A (ja) 2007-06-28 2013-06-13 画像符号化装置および画像復号装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007170330 2007-06-28
JP2007170330 2007-06-28
JP2013124268A JP2013176168A (ja) 2007-06-28 2013-06-13 画像符号化装置および画像復号装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009520618A Division JP5296679B2 (ja) 2007-06-28 2008-06-25 画像復号装置および画像復号方法

Publications (1)

Publication Number Publication Date
JP2013176168A true JP2013176168A (ja) 2013-09-05

Family

ID=40160460

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009520618A Active JP5296679B2 (ja) 2007-06-28 2008-06-25 画像復号装置および画像復号方法
JP2013124268A Pending JP2013176168A (ja) 2007-06-28 2013-06-13 画像符号化装置および画像復号装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2009520618A Active JP5296679B2 (ja) 2007-06-28 2008-06-25 画像復号装置および画像復号方法

Country Status (10)

Country Link
US (6) US8345968B2 (ja)
EP (2) EP2661088A1 (ja)
JP (2) JP5296679B2 (ja)
KR (2) KR101379087B1 (ja)
CN (2) CN101889449B (ja)
BR (1) BRPI0813996B1 (ja)
CA (1) CA2691742C (ja)
HK (1) HK1148148A1 (ja)
RU (3) RU2430486C1 (ja)
WO (1) WO2009001864A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017513315A (ja) * 2014-03-14 2017-05-25 クアルコム,インコーポレイテッド ユニバーサル色空間逆変換コーディング

Families Citing this family (242)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050267750A1 (en) 2004-05-27 2005-12-01 Anonymous Media, Llc Media usage monitoring and measurement system and method
US9560367B2 (en) * 2004-09-03 2017-01-31 Nokia Technologies Oy Parameter set and picture header in video coding
CN103118254B (zh) * 2005-09-26 2016-01-20 三菱电机株式会社 运动图像编码装置以及运动图像译码装置
CN102611892B (zh) * 2006-03-16 2014-10-08 华为技术有限公司 在编码过程中实现自适应量化的方法及装置
KR101403338B1 (ko) * 2007-03-23 2014-06-09 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
US8345968B2 (en) * 2007-06-28 2013-01-01 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method and image decoding method
BRPI0813904B1 (pt) 2007-06-29 2020-12-08 Velos Media International Limited dispositivo de codificação de imagem para codificar imagens de entrada e dispositivo de decodificação de imagem para decodificar dados de imagens codificados
AU2007237313A1 (en) * 2007-12-03 2009-06-18 Canon Kabushiki Kaisha Improvement for error correction in distributed vdeo coding
US8238676B2 (en) * 2007-12-14 2012-08-07 Yamaha Corporation Image data compressor and image data decompressor
KR101439847B1 (ko) * 2008-01-02 2014-09-16 삼성전자주식회사 부호화 정보의 압축률 향상을 이용한 영상 부호화, 복호화방법 및 장치
TWI375472B (en) * 2008-02-04 2012-10-21 Ind Tech Res Inst Intra prediction method for luma block of video
KR100939917B1 (ko) 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 움직임 예측을 통한 부호화 시스템 및 움직임 예측을 통한부호화 방법
MX2010009194A (es) * 2008-03-07 2010-09-10 Toshiba Kk Metodo y dispositivo de codificacion/decodificacion dinamica de imagen.
US8295356B2 (en) 2008-03-07 2012-10-23 International Business Machines Corporation Method and system for coding mode selection in video compression systems
JP2009218742A (ja) * 2008-03-07 2009-09-24 Canon Inc 画像符号化装置
KR101375667B1 (ko) * 2008-05-16 2014-03-18 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
FR2933565A1 (fr) * 2008-07-01 2010-01-08 France Telecom Procede et dispositif de codage d'une sequence d'images mettant en oeuvre une prediction temporelle, signal, support de donnees, procede et dispositif de decodage, et produit programme d'ordinateur correspondants
KR101517768B1 (ko) * 2008-07-02 2015-05-06 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
US8942490B2 (en) * 2008-07-08 2015-01-27 Yin-Chun Blue Lan Method of high performance image compression
US8503527B2 (en) 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
KR101377527B1 (ko) * 2008-10-14 2014-03-25 에스케이 텔레콤주식회사 복수 개의 참조 픽처의 움직임 벡터 부호화/복호화 방법 및장치와 그를 이용한 영상 부호화/복호화 장치 및 방법
KR101359490B1 (ko) * 2008-12-23 2014-02-10 에스케이 텔레콤주식회사 컬러 영상 부호화/복호화 방법 및 장치
TWI463878B (zh) * 2009-02-19 2014-12-01 Sony Corp Image processing apparatus and method
TWI405469B (zh) * 2009-02-20 2013-08-11 Sony Corp Image processing apparatus and method
EP2230849A1 (en) * 2009-03-20 2010-09-22 Mitsubishi Electric R&D Centre Europe B.V. Encoding and decoding video data using motion vectors
CN102804779A (zh) * 2009-06-09 2012-11-28 索尼公司 图像处理装置和方法
JP5199956B2 (ja) * 2009-06-16 2013-05-15 キヤノン株式会社 画像復号装置及びその制御方法
JP5199955B2 (ja) * 2009-06-16 2013-05-15 キヤノン株式会社 画像復号装置及びその制御方法
MX2011013861A (es) * 2009-06-19 2012-02-13 Mitsubishi Electric Corp Dispositivo de codificacion de imagen, dispositivo de decodificacion de imagen, metodo de codificacion de imagen y metodo de decodificacion de imagen.
WO2011008243A1 (en) * 2009-06-29 2011-01-20 Thomson Licensing Methods and apparatus for adaptive probability update for non-coded syntax
JP5375372B2 (ja) * 2009-07-01 2013-12-25 ヤマハ株式会社 圧縮符号化装置、および復号装置
JP5597968B2 (ja) * 2009-07-01 2014-10-01 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
JP5251774B2 (ja) * 2009-07-27 2013-07-31 ソニー株式会社 画像符号化装置および画像符号化方法
JP5344238B2 (ja) 2009-07-31 2013-11-20 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
JP4844657B2 (ja) * 2009-07-31 2011-12-28 カシオ計算機株式会社 画像処理装置及び方法
US8379718B2 (en) 2009-09-02 2013-02-19 Sony Computer Entertainment Inc. Parallel digital picture encoding
CN102907098B (zh) 2009-10-01 2016-04-20 Sk电信有限公司 使用可变尺寸宏块对图像进行编码/解码的方法和装置
ES2554237T3 (es) * 2009-10-01 2015-12-17 Sk Telecom. Co., Ltd. Método y aparato para codificar/decodificar imagen usando una capa dividida
EA027182B1 (ru) * 2009-10-20 2017-06-30 Шарп Кабусики Кайся Устройство кодирования движущихся изображений, устройство декодирования движущихся изображений, система кодирования/декодирования движущихся изображений, способ кодирования движущихся изображений и способ декодирования движущихся изображений
CN104661026B (zh) * 2009-10-21 2018-03-27 Sk电信有限公司 图像编码和解码装置和方法
US9253495B2 (en) 2009-12-04 2016-02-02 Thomson Licensing Methods and apparatus for improved chroma transforms for inter frames in video encoding and decoding
US8654859B1 (en) 2009-12-17 2014-02-18 Ambarella, Inc. Low cost rate-distortion computations for video compression
KR101703327B1 (ko) 2010-01-14 2017-02-06 삼성전자 주식회사 계층적 데이터 단위의 패턴 정보를 이용하는 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
KR101522850B1 (ko) * 2010-01-14 2015-05-26 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
US8995527B2 (en) * 2010-02-19 2015-03-31 Qualcomm Incorporated Block type signalling in video coding
CN102771126A (zh) * 2010-02-24 2012-11-07 夏普株式会社 图像编码装置、图像解码装置及数据结构
WO2011108089A1 (ja) * 2010-03-03 2011-09-09 三菱電機株式会社 データ圧縮装置及びデータ圧縮方法及びプログラム
WO2011112316A1 (en) * 2010-03-09 2011-09-15 Telegent Systems, Inc. Adaptive video decoding circuitry and techniques
US8660177B2 (en) * 2010-03-24 2014-02-25 Sony Computer Entertainment Inc. Parallel entropy coding
US9369736B2 (en) 2010-04-05 2016-06-14 Samsung Electronics Co., Ltd. Low complexity entropy-encoding/decoding method and apparatus
US8982961B2 (en) 2010-04-05 2015-03-17 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by using transformation index, and method and apparatus for decoding video by using transformation index
US9049450B2 (en) 2010-04-05 2015-06-02 Samsung Electronics Co., Ltd. Method and apparatus for encoding video based on internal bit depth increment, and method and apparatus for decoding video based on internal bit depth increment
CN102215396A (zh) * 2010-04-09 2011-10-12 华为技术有限公司 一种视频编解码方法和系统
CN105611304B (zh) 2010-04-09 2019-06-11 Lg电子株式会社 处理视频数据的方法和装置
US8306343B2 (en) * 2010-04-09 2012-11-06 Newport Media, Inc. Optimized prediction based image compression
KR101500914B1 (ko) * 2010-04-09 2015-03-10 미쓰비시덴키 가부시키가이샤 동화상 복호 장치
BR112012026391B1 (pt) 2010-04-13 2020-12-15 Ge Video Compression, Llc Herança em amostra de arranjo em subdivisão multitree
CN106162171B (zh) 2010-04-13 2020-09-11 Ge视频压缩有限责任公司 解码器及方法、编码方法
HUE045579T2 (hu) 2010-04-13 2020-01-28 Ge Video Compression Llc Síkközi predikció
CN105120287B (zh) 2010-04-13 2019-05-17 Ge 视频压缩有限责任公司 解码器、编码器以及用于解码和编码的方法
WO2011134642A1 (en) * 2010-04-26 2011-11-03 Panasonic Corporation Predictive coding with block shapes derived from a prediction error
KR20110123651A (ko) 2010-05-07 2011-11-15 한국전자통신연구원 생략 부호화를 이용한 영상 부호화 및 복호화 장치 및 그 방법
US20130044814A1 (en) * 2010-05-10 2013-02-21 Thomson Licensing Methods and apparatus for adaptive interpolative intra block encoding and decoding
CN102972028B (zh) * 2010-05-17 2015-08-12 Lg电子株式会社 新的帧内预测模式
KR101379188B1 (ko) * 2010-05-17 2014-04-18 에스케이 텔레콤주식회사 인트라 블록 및 인터 블록이 혼합된 코딩블록을 이용하는 영상 부호화/복호화 장치 및 그 방법
US9012307B2 (en) 2010-07-13 2015-04-21 Crossbar, Inc. Two terminal resistive switching device structure and method of fabricating
US9570678B1 (en) 2010-06-08 2017-02-14 Crossbar, Inc. Resistive RAM with preferental filament formation region and methods
US9601692B1 (en) 2010-07-13 2017-03-21 Crossbar, Inc. Hetero-switching layer in a RRAM device and method
US8946046B1 (en) 2012-05-02 2015-02-03 Crossbar, Inc. Guided path for forming a conductive filament in RRAM
WO2011156787A2 (en) 2010-06-11 2011-12-15 Crossbar, Inc. Pillar structure for memory device and method
KR101673027B1 (ko) * 2010-07-01 2016-11-04 에스케이 텔레콤주식회사 색공간 예측 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
US8374018B2 (en) 2010-07-09 2013-02-12 Crossbar, Inc. Resistive memory using SiGe material
US8884261B2 (en) 2010-08-23 2014-11-11 Crossbar, Inc. Device switching using layered device structure
US8947908B2 (en) 2010-11-04 2015-02-03 Crossbar, Inc. Hetero-switching layer in a RRAM device and method
US8569172B1 (en) 2012-08-14 2013-10-29 Crossbar, Inc. Noble metal/non-noble metal electrode for RRAM applications
US8168506B2 (en) 2010-07-13 2012-05-01 Crossbar, Inc. On/off ratio for non-volatile memory device and method
KR20150059797A (ko) * 2010-07-15 2015-06-02 미쓰비시덴키 가부시키가이샤 동영상 부호화 장치, 동영상 복호 장치, 동영상 부호화 방법 및 동영상 복호 방법
US8837577B2 (en) * 2010-07-15 2014-09-16 Sharp Laboratories Of America, Inc. Method of parallel video coding based upon prediction type
US8855188B2 (en) * 2010-07-15 2014-10-07 Sharp Laboratories Of America, Inc. Method of parallel video coding based on mapping
US8879619B2 (en) * 2010-07-15 2014-11-04 Sharp Laboratories Of America, Inc. Method of parallel video coding based on scan order
JP6342116B2 (ja) * 2010-07-15 2018-06-13 シャープ株式会社 イントラ予測モード推定装置
KR101681307B1 (ko) * 2010-07-23 2016-12-01 에스케이 텔레콤주식회사 주파수영역 복수 가중예측필터를 사용한 색공간 예측 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
US8711933B2 (en) * 2010-08-09 2014-04-29 Sony Computer Entertainment Inc. Random access point (RAP) formation using intra refreshing technique in video coding
GB2482731B (en) * 2010-08-13 2016-12-21 Advanced Risc Mach Ltd A video decoding apparatus and method
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
US9716886B2 (en) * 2010-08-17 2017-07-25 M&K Holdings Inc. Method for restoring an intra prediction mode
US11284072B2 (en) 2010-08-17 2022-03-22 M&K Holdings Inc. Apparatus for decoding an image
US8492195B2 (en) 2010-08-23 2013-07-23 Crossbar, Inc. Method for forming stackable non-volatile resistive switching memory devices
US8889521B1 (en) 2012-09-14 2014-11-18 Crossbar, Inc. Method for silver deposition for a non-volatile memory device
US9401475B1 (en) 2010-08-23 2016-07-26 Crossbar, Inc. Method for silver deposition for a non-volatile memory device
KR101677480B1 (ko) * 2010-09-07 2016-11-21 에스케이 텔레콤주식회사 효과적인 화면내 예측모드 집합 선택을 이용한 영상 부호화/복호화 방법 및 장치
KR101679233B1 (ko) * 2010-09-08 2016-11-24 삼성전자주식회사 디블록킹 필터 및 이를 포함하는 영상 표시 장치
US9154797B2 (en) 2010-09-20 2015-10-06 Onecodec, Limited Systems and methods for encoding and decoding
ES2868133T3 (es) * 2010-09-27 2021-10-21 Lg Electronics Inc Método para partición de bloque y dispositivo de decodificación
US8558212B2 (en) 2010-09-29 2013-10-15 Crossbar, Inc. Conductive path in switching material in a resistive random access memory device and control
CN105516722B (zh) * 2010-09-30 2018-12-07 三菱电机株式会社 运动图像编码装置及方法、运动图像解码装置及方法
US9628821B2 (en) * 2010-10-01 2017-04-18 Apple Inc. Motion compensation using decoder-defined vector quantized interpolation filters
US8885704B2 (en) 2010-10-01 2014-11-11 Qualcomm Incorporated Coding prediction modes in video coding
KR20120035096A (ko) * 2010-10-04 2012-04-13 한국전자통신연구원 쿼드 트리 변환 구조에서 부가 정보의 시그널링 방법 및 장치
US8502185B2 (en) 2011-05-31 2013-08-06 Crossbar, Inc. Switching device having a non-linear element
USRE46335E1 (en) 2010-11-04 2017-03-07 Crossbar, Inc. Switching device having a non-linear element
US9367932B2 (en) * 2010-11-29 2016-06-14 Thomson Licensing Method and device for reconstructing a self-similar textured region of an image
CA3123520C (en) 2010-12-17 2023-10-17 Mitsubishi Electric Corporation Image coding device, image decoding device, image coding method, and image decoding method
US10021384B2 (en) * 2010-12-23 2018-07-10 Samsung Electronics Co., Ltd. Method and device for encoding intra prediction mode for image prediction unit, and method and device for decoding intra prediction mode for image prediction unit
US8930174B2 (en) 2010-12-28 2015-01-06 Crossbar, Inc. Modeling technique for resistive random access memory (RRAM) cells
US8815696B1 (en) 2010-12-31 2014-08-26 Crossbar, Inc. Disturb-resistant non-volatile memory device using via-fill and etchback technique
US9153623B1 (en) 2010-12-31 2015-10-06 Crossbar, Inc. Thin film transistor steering element for a non-volatile memory device
CN103299637B (zh) 2011-01-12 2016-06-29 三菱电机株式会社 图像编码装置、图像译码装置、图像编码方法以及图像译码方法
JP5781313B2 (ja) 2011-01-12 2015-09-16 株式会社Nttドコモ 画像予測符号化方法、画像予測符号化装置、画像予測符号化プログラム、画像予測復号方法、画像予測復号装置及び画像予測復号プログラム
WO2012097376A1 (en) 2011-01-14 2012-07-19 General Instrument Corporation Spatial block merge mode
US20120183064A1 (en) * 2011-01-14 2012-07-19 Sony Corporation Codeword assignment for intra chroma mode signaling for hevc
US9066097B2 (en) * 2011-02-01 2015-06-23 Sony Corporation Method to optimize the transforms and/or predictions in a video codec
US9001883B2 (en) * 2011-02-16 2015-04-07 Mediatek Inc Method and apparatus for slice common information sharing
JP2012186733A (ja) * 2011-03-07 2012-09-27 Honda Elesys Co Ltd 車載カメラシステム
US9848197B2 (en) * 2011-03-10 2017-12-19 Qualcomm Incorporated Transforms in video coding
KR20120103517A (ko) * 2011-03-10 2012-09-19 한국전자통신연구원 인트라 예측 방법 및 그 장치
US8780996B2 (en) * 2011-04-07 2014-07-15 Google, Inc. System and method for encoding and decoding video data
CN103563386A (zh) * 2011-05-31 2014-02-05 Jvc建伍株式会社 动图像编码装置、动图像编码方法及动图像编码程序、以及动图像解码装置、动图像解码方法及动图像解码程序
US9620206B2 (en) 2011-05-31 2017-04-11 Crossbar, Inc. Memory array architecture with two-terminal memory cells
MY165837A (en) * 2011-06-13 2018-05-17 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
US9282338B2 (en) * 2011-06-20 2016-03-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
RU2602672C2 (ru) 2011-06-23 2016-11-20 Сан Пэтент Траст Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
KR101668583B1 (ko) * 2011-06-23 2016-10-21 가부시키가이샤 제이브이씨 켄우드 화상 인코딩 장치, 화상 인코딩 방법 및 화상 인코딩 프로그램, 및 화상 디코딩 장치, 화상 디코딩 방법 및 화상 디코딩 프로그램
US8619459B1 (en) 2011-06-23 2013-12-31 Crossbar, Inc. High operating speed resistive random access memory
USRE47366E1 (en) 2011-06-23 2019-04-23 Sun Patent Trust Image decoding method and apparatus based on a signal type of the control parameter of the current block
KR101895744B1 (ko) * 2011-06-24 2018-10-04 미쓰비시덴키 가부시키가이샤 화상 복호 장치, 화상 부호화 장치, 화상 복호 방법, 화상 부호화 방법, 및 부호화 데이터의 데이터 구조를 기록한 기록 매체
RU2603552C2 (ru) 2011-06-24 2016-11-27 Сан Пэтент Траст Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
WO2012176464A1 (ja) 2011-06-24 2012-12-27 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
TWI628950B (zh) * 2011-06-27 2018-07-01 三星電子股份有限公司 影像解碼裝置
MX2013013483A (es) * 2011-06-27 2014-02-27 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
MX2013012980A (es) 2011-06-28 2013-12-06 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodififcacion de imagenes.
WO2013001767A1 (ja) 2011-06-29 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
US9166163B2 (en) 2011-06-30 2015-10-20 Crossbar, Inc. Sub-oxide interface layer for two-terminal memory
US9627443B2 (en) 2011-06-30 2017-04-18 Crossbar, Inc. Three-dimensional oblique two-terminal memory with enhanced electric field
KR102111917B1 (ko) 2011-06-30 2020-05-18 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기억 매체
EP3419290B1 (en) * 2011-06-30 2020-12-23 JVC KENWOOD Corporation Image coding device, image coding method, image coding program, image decoding device, image decoding method, and image decoding program
WO2013001770A1 (ja) 2011-06-30 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
US9564587B1 (en) 2011-06-30 2017-02-07 Crossbar, Inc. Three-dimensional two-terminal memory with enhanced electric field and segmented interconnects
AU2012277219A1 (en) 2011-06-30 2013-09-19 Sun Patent Trust Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device
US8946669B1 (en) 2012-04-05 2015-02-03 Crossbar, Inc. Resistive memory device and fabrication methods
CN103765885B (zh) 2011-07-11 2017-04-12 太阳专利托管公司 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编解码装置
CN103828047A (zh) 2011-07-22 2014-05-28 科洛斯巴股份有限公司 用于非易失性存储器装置的p+硅锗材料的种子层及方法
US8674724B2 (en) 2011-07-29 2014-03-18 Crossbar, Inc. Field programmable gate array utilizing two-terminal non-volatile memory
US10056907B1 (en) 2011-07-29 2018-08-21 Crossbar, Inc. Field programmable gate array utilizing two-terminal non-volatile memory
US9729155B2 (en) 2011-07-29 2017-08-08 Crossbar, Inc. Field programmable gate array utilizing two-terminal non-volatile memory
US10129556B2 (en) 2014-05-16 2018-11-13 Bevara Technologies, Llc Systems and methods for accessing digital data
US10025787B2 (en) 2011-08-17 2018-07-17 Bevara Technologies, Llc Systems and methods for selecting digital data for archival
US8885706B2 (en) 2011-09-16 2014-11-11 Google Inc. Apparatus and methodology for a video codec system with noise reduction capability
BR112014009433B1 (pt) 2011-10-17 2023-01-24 Kt Corporation Método de decodificação de vídeo
US9807401B2 (en) * 2011-11-01 2017-10-31 Qualcomm Incorporated Transform unit partitioning for chroma components in video coding
US9510018B2 (en) * 2011-11-23 2016-11-29 Luca Rossato Signal analysis and generation of transient information
CN102509091B (zh) * 2011-11-29 2013-12-25 北京航空航天大学 一种飞机尾号识别方法
US9363513B2 (en) * 2011-12-14 2016-06-07 Intel Corporation Methods, systems, and computer program products for assessing a macroblock candidate for conversion to a skipped macroblock
HUE053940T2 (hu) * 2011-12-16 2021-08-30 Jvc Kenwood Corp Dinamikus képkódoló készülék, dinamikus képkódoló eljárás, dinamikus képkódoló program, dinamikus képdekódoló készülék, dinamikus képdekódoló eljárás és dinamikus képdekódoló program
US9503717B2 (en) * 2012-01-09 2016-11-22 Texas Instruments Incorporated Context adaptive binary arithmetic coding (CABAC) with scalable throughput and coding efficiency
US9531990B1 (en) 2012-01-21 2016-12-27 Google Inc. Compound prediction using multiple sources or prediction modes
JP2013172323A (ja) * 2012-02-21 2013-09-02 Toshiba Corp 動き検出装置、画像処理装置および画像処理システム
US9131073B1 (en) 2012-03-02 2015-09-08 Google Inc. Motion estimation aided noise reduction
US11039138B1 (en) * 2012-03-08 2021-06-15 Google Llc Adaptive coding of prediction modes using probability distributions
US8737824B1 (en) 2012-03-09 2014-05-27 Google Inc. Adaptively encoding a media stream with compound prediction
BR122020010110B1 (pt) * 2012-03-28 2021-08-17 JVC Kenwood Corporation Dispositivo de codificação de imagem
US9087576B1 (en) 2012-03-29 2015-07-21 Crossbar, Inc. Low temperature fabrication method for a three-dimensional memory device and structure
US9685608B2 (en) 2012-04-13 2017-06-20 Crossbar, Inc. Reduced diffusion in metal electrode for two-terminal memory
US8658476B1 (en) 2012-04-20 2014-02-25 Crossbar, Inc. Low temperature P+ polycrystalline silicon material for non-volatile memory device
GB2501535A (en) 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
CN104255028A (zh) * 2012-05-02 2014-12-31 索尼公司 图像处理设备及图像处理方法
US8796658B1 (en) 2012-05-07 2014-08-05 Crossbar, Inc. Filamentary based non-volatile resistive memory device and method
EP2670140A1 (en) * 2012-06-01 2013-12-04 Alcatel Lucent Method and apparatus for encoding a video stream
CN109905710B (zh) * 2012-06-12 2021-12-21 太阳专利托管公司 动态图像编码方法及装置、动态图像解码方法及装置
WO2014003421A1 (ko) 2012-06-25 2014-01-03 한양대학교 산학협력단 비디오 부호화 및 복호화를 위한 방법
GB2503875B (en) * 2012-06-29 2015-06-10 Canon Kk Method and device for encoding or decoding an image
US9185414B1 (en) * 2012-06-29 2015-11-10 Google Inc. Video encoding using variance
WO2014009864A2 (en) * 2012-07-09 2014-01-16 Squid Design Systems Pvt Ltd Programmable variable block size motion estimation processor
US9344729B1 (en) 2012-07-11 2016-05-17 Google Inc. Selective prediction signal filtering
US10096653B2 (en) 2012-08-14 2018-10-09 Crossbar, Inc. Monolithically integrated resistive memory using integrated-circuit foundry compatible processes
US9583701B1 (en) 2012-08-14 2017-02-28 Crossbar, Inc. Methods for fabricating resistive memory device switching material using ion implantation
US8946673B1 (en) 2012-08-24 2015-02-03 Crossbar, Inc. Resistive switching device structure with improved data retention for non-volatile memory device and method
US20140072048A1 (en) * 2012-09-13 2014-03-13 Samsung Electronics Co., Ltd Method and apparatus for a switchable de-ringing filter for image/video coding
US9312483B2 (en) 2012-09-24 2016-04-12 Crossbar, Inc. Electrode structure for a non-volatile memory device and method
CN102883163B (zh) * 2012-10-08 2014-05-28 华为技术有限公司 用于运动矢量预测的运动矢量列表建立的方法、装置
US9576616B2 (en) 2012-10-10 2017-02-21 Crossbar, Inc. Non-volatile memory with overwrite capability and low write amplification
US8982647B2 (en) 2012-11-14 2015-03-17 Crossbar, Inc. Resistive random access memory equalization and sensing
US9412790B1 (en) 2012-12-04 2016-08-09 Crossbar, Inc. Scalable RRAM device architecture for a non-volatile memory device and method
US9628790B1 (en) 2013-01-03 2017-04-18 Google Inc. Adaptive composite intra prediction for image and video compression
US9406379B2 (en) 2013-01-03 2016-08-02 Crossbar, Inc. Resistive random access memory with non-linear current-voltage relationship
WO2014115283A1 (ja) * 2013-01-24 2014-07-31 シャープ株式会社 画像復号装置、および画像符号化装置
US9869432B2 (en) 2013-01-30 2018-01-16 Cree, Inc. Luminaires using waveguide bodies and optical elements
US10234616B2 (en) 2013-01-30 2019-03-19 Cree, Inc. Simplified low profile module with light guide for pendant, surface mount, wall mount and stand alone luminaires
US9324942B1 (en) 2013-01-31 2016-04-26 Crossbar, Inc. Resistive memory cell with solid state diode
US9112145B1 (en) 2013-01-31 2015-08-18 Crossbar, Inc. Rectified switching of two-terminal memory via real time filament formation
JP6033725B2 (ja) * 2013-03-28 2016-11-30 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
KR20140123914A (ko) * 2013-04-12 2014-10-23 삼성전자주식회사 랜덤 엑세스를 위한 멀티 레이어 비디오 부호화 방법 및 그 장치, 랜덤 엑세스를 위한 멀티 레이어 비디오 복호화 방법 및 그 장치
US9374578B1 (en) 2013-05-23 2016-06-21 Google Inc. Video coding using combined inter and intra predictors
US9967594B2 (en) * 2013-06-28 2018-05-08 Mozilla Corporation Probability modeling of intra prediction modes
JP6265705B2 (ja) * 2013-11-25 2018-01-24 キヤノン株式会社 画像符号化装置及び画像符号化方法
US9609343B1 (en) 2013-12-20 2017-03-28 Google Inc. Video coding using compound prediction
US10290801B2 (en) 2014-02-07 2019-05-14 Crossbar, Inc. Scalable silicon based resistive memory device
US10182241B2 (en) 2014-03-04 2019-01-15 Microsoft Technology Licensing, Llc Encoding strategies for adaptive switching of color spaces, color sampling rates and/or bit depths
AU2014385774B2 (en) 2014-03-04 2019-01-17 Microsoft Technology Licensing, Llc Adaptive switching of color spaces, color sampling rates and/or bit depths
JP6368795B2 (ja) * 2014-03-14 2018-08-01 ヴィド スケール インコーポレイテッド Rgbビデオコーディングエンハンスメントのためのシステムおよび方法
CA2940015C (en) 2014-03-27 2020-10-27 Microsoft Technology Licensing, Llc Adjusting quantization/scaling and inverse quantization/scaling when switching color spaces
US9584817B2 (en) 2014-03-31 2017-02-28 Sony Corporation Video transmission system with color prediction and method of operation thereof
CN106233716B (zh) * 2014-04-22 2019-12-24 日本电信电话株式会社 动态错觉呈现装置、动态错觉呈现方法、程序
WO2015176009A1 (en) 2014-05-16 2015-11-19 Bevara Technologies, Llc Systems and methods for selecting digital data for archival
US9386317B2 (en) 2014-09-22 2016-07-05 Sony Interactive Entertainment Inc. Adaptive picture section encoding mode decision control
US10102613B2 (en) 2014-09-25 2018-10-16 Google Llc Frequency-domain denoising
US10419760B2 (en) 2014-09-29 2019-09-17 Sony Interactive Entertainment Inc. Picture quality oriented rate control for low-latency streaming applications
WO2016054765A1 (en) 2014-10-08 2016-04-14 Microsoft Technology Licensing, Llc Adjustments to encoding and decoding when switching color spaces
RU2579966C1 (ru) * 2014-12-04 2016-04-10 Общество с ограниченной ответственностью "РЭЙДИКС" Способ сжатия изображений (варианты)
US9716889B2 (en) * 2014-12-09 2017-07-25 Sony Corporation Intra and inter-color prediction for Bayer image coding
US10091506B2 (en) * 2015-06-11 2018-10-02 Sony Corporation Data-charge phase data compression architecture
JP6328076B2 (ja) * 2015-06-17 2018-05-23 ヴェロス メディア インターナショナル リミテッドVelos Media International Limited 画像復号装置および方法、記録媒体、並びにプログラム
EP3323243B1 (en) 2015-07-16 2022-01-19 Dolby Laboratories Licensing Corporation Signal reshaping and decoding for hdr signals
EP3125108A1 (en) * 2015-07-31 2017-02-01 ARM Limited Vector processing using loops of dynamic vector length
JP6212530B2 (ja) * 2015-11-17 2017-10-11 ジーイー ビデオ コンプレッション エルエルシー 平面間予測
WO2017163441A1 (ja) * 2016-03-24 2017-09-28 富士ゼロックス株式会社 画像処理装置、画像処理方法、及び画像処理プログラム
CN105939479B (zh) * 2016-06-15 2019-06-21 北京奇艺世纪科技有限公司 一种并行编码方法和装置
US20170366819A1 (en) * 2016-08-15 2017-12-21 Mediatek Inc. Method And Apparatus Of Single Channel Compression
JP2018037936A (ja) * 2016-09-01 2018-03-08 株式会社ドワンゴ 画像符号化装置および画像復号装置
CN109691100B (zh) * 2016-09-16 2021-08-13 索尼公司 图像处理设备和图像处理方法
US10264264B2 (en) * 2016-09-24 2019-04-16 Apple Inc. Multi-bin decoding systems and methods
WO2019065537A1 (ja) * 2017-09-28 2019-04-04 シャープ株式会社 動き補償フィルタ装置、画像復号装置および動画像符号化装置
US10791341B2 (en) * 2017-10-10 2020-09-29 Qualcomm Incorporated Binary arithmetic coding with progressive modification of adaptation parameters
US10694205B2 (en) 2017-12-18 2020-06-23 Google Llc Entropy coding of motion vectors using categories of transform blocks
WO2019127432A1 (zh) * 2017-12-29 2019-07-04 深圳市大疆创新科技有限公司 视频解码器及其制造方法,数据处理电路、系统和方法
CA3086546A1 (en) 2018-01-18 2019-07-25 Bevara Technologies, Llc Browser navigation for facilitating data access
US10904555B2 (en) * 2018-07-11 2021-01-26 Tencent America LLC Method and apparatus for video coding
US11113999B2 (en) * 2018-09-03 2021-09-07 Chongqing Hkc Optoelectronics Technology Co., Ltd. Data processing method, display device, and computer-readable storage medium
US11412260B2 (en) * 2018-10-29 2022-08-09 Google Llc Geometric transforms for image compression
CN110017571B (zh) * 2018-10-31 2020-11-10 徐州轩科农业机械有限公司 柜式空调背景灯控制系统
JP2022016726A (ja) * 2018-11-16 2022-01-25 ソニーグループ株式会社 画像処理装置および方法
US11210813B2 (en) * 2019-05-30 2021-12-28 Tencent America LLC Method and apparatus for point cloud compression
JP7318024B2 (ja) * 2019-06-24 2023-07-31 エルジー エレクトロニクス インコーポレイティド クロマ変換ブロックの最大サイズ制限を用いた画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
US11399199B2 (en) * 2019-08-05 2022-07-26 Qualcomm Incorporated Chroma intra prediction units for video coding
EP3994886A4 (en) 2019-08-06 2022-12-28 Beijing Bytedance Network Technology Co., Ltd. VIDEO ZONE PARTITION ACCORDING TO COLOR FORMAT
EP4008109A4 (en) * 2019-09-02 2022-09-14 Beijing Bytedance Network Technology Co., Ltd. ENCODING MODE DETERMINATION BASED ON COLOR FORMAT
CN118055248A (zh) 2019-09-21 2024-05-17 北京字节跳动网络技术有限公司 处理视频数据的方法、装置以及计算机可读记录介质
CN111193948B (zh) * 2020-01-07 2022-06-24 上海步频电子科技有限公司 一种显示终端的图片传输和显示的方法和系统
WO2021168624A1 (zh) * 2020-02-24 2021-09-02 深圳市大疆创新科技有限公司 视频图像编码方法、设备及可移动平台
CN113329269A (zh) * 2020-02-28 2021-08-31 杭州海康威视数字技术股份有限公司 视频编码、解码方法、装置、电子设备及存储介质
EP4118823A1 (en) * 2020-03-12 2023-01-18 InterDigital VC Holdings France Method and apparatus for video encoding and decoding
US20220107738A1 (en) * 2020-10-06 2022-04-07 Kioxia Corporation Read controller and input/output controller

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003189312A (ja) * 2001-12-20 2003-07-04 Oki Electric Ind Co Ltd 動画像符号化装置及び動画像復号化装置
WO2007010690A1 (ja) * 2005-07-22 2007-01-25 Mitsubishi Electric Corporation 画像符号化装置、画像復号装置、および画像符号化方法、画像復号方法、画像符号化プログラム、画像復号プログラム、ならびに画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体、画像復号プログラムを記録したコンピュータ読み取り可能な記録媒体
WO2007034601A1 (ja) * 2005-09-20 2007-03-29 Mitsubishi Electric Corporation 画像符号化方法および画像復号方法、画像符号化装置および画像復号装置、並びに画像符号化ビットストリーム及び記録媒体
WO2007034918A1 (ja) * 2005-09-26 2007-03-29 Mitsubishi Electric Corporation 動画像符号化装置及び動画像復号装置

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0139164B1 (ko) * 1994-12-19 1998-06-01 김광호 적응적 직교변환부호화 장치
CN1972183A (zh) * 1996-03-18 2007-05-30 株式会社东芝 编码装置和编码方法
EP1511325A3 (en) * 1997-02-13 2006-07-19 Mitsubishi Denki Kabushiki Kaisha Moving picture prediction system
US6862320B1 (en) * 1997-10-23 2005-03-01 Mitsubishi Denki Kabushiki Kaisha Image decoder, image encoder, image communication system, and encoded bit stream converter
JP4264571B2 (ja) * 1998-04-09 2009-05-20 ソニー株式会社 ディジタル画像復号装置及び方法、並びに記録媒体
JP3413720B2 (ja) * 1998-06-26 2003-06-09 ソニー株式会社 画像符号化方法及び装置、並びに画像復号方法及び装置
FR2783388B1 (fr) * 1998-09-15 2000-10-13 Thomson Multimedia Sa Procede de compression d'images et dispositif pour la mise en oeuvre de ce procede
US6532265B1 (en) * 1999-03-25 2003-03-11 Imec Vzw Method and system for video compression
US6831948B1 (en) * 1999-07-30 2004-12-14 Koninklijke Philips Electronics N.V. System and method for motion compensation of image planes in color sequential displays
JP2002027477A (ja) * 2000-07-04 2002-01-25 Mitsubishi Electric Corp Mpeg画像処理装置およびそのデータ転送方法
JP4724351B2 (ja) * 2002-07-15 2011-07-13 三菱電機株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置
CN100566420C (zh) * 2002-07-15 2009-12-02 株式会社日立制作所 动态图像的编码方法
US7333544B2 (en) * 2003-07-16 2008-02-19 Samsung Electronics Co., Ltd. Lossless image encoding/decoding method and apparatus using inter-color plane prediction
JP4617644B2 (ja) * 2003-07-18 2011-01-26 ソニー株式会社 符号化装置及び方法
EP1515561B1 (en) * 2003-09-09 2007-11-21 Mitsubishi Electric Information Technology Centre Europe B.V. Method and apparatus for 3-D sub-band video coding
KR100754388B1 (ko) * 2003-12-27 2007-08-31 삼성전자주식회사 레지듀 영상 다운/업 샘플링 방법 및 장치와 그를 이용한영상 부호화/복호화 방법 및 장치
JP2006074474A (ja) * 2004-09-02 2006-03-16 Toshiba Corp 動画像符号化装置、動画像符号化方法および動画像符号化プログラム
KR100763178B1 (ko) * 2005-03-04 2007-10-04 삼성전자주식회사 색 공간 스케일러블 비디오 코딩 및 디코딩 방법, 이를위한 장치
MX2007012708A (es) * 2005-04-13 2008-03-14 Thomson Licensing Codificacion de luma y croma con el uso de un pronosticador comun.
KR101246915B1 (ko) * 2005-04-18 2013-03-25 삼성전자주식회사 동영상 부호화 또는 복호화 방법 및 장치
JP2006304102A (ja) * 2005-04-22 2006-11-02 Renesas Technology Corp 画像符号化ユニットと画像符号化方法
EP1753242A2 (en) * 2005-07-18 2007-02-14 Matsushita Electric Industrial Co., Ltd. Switchable mode and prediction information coding
US8300700B2 (en) * 2005-09-20 2012-10-30 Mitsubishi Electric Corporation Image encoding method and image decoding method, image encoder and image decoder, and image encoded bit stream and recording medium
US8300694B2 (en) * 2005-09-20 2012-10-30 Mitsubishi Electric Corporation Image encoding method and image decoding method, image encoder and image decoder, and image encoded bit stream and recording medium
US8306112B2 (en) * 2005-09-20 2012-11-06 Mitsubishi Electric Corporation Image encoding method and image decoding method, image encoder and image decoder, and image encoded bit stream and recording medium
JP4844449B2 (ja) * 2006-04-17 2011-12-28 日本ビクター株式会社 動画像符号化装置、方法、プログラム、動画像復号化装置、方法、およびプログラム
JP5026092B2 (ja) * 2007-01-12 2012-09-12 三菱電機株式会社 動画像復号装置および動画像復号方法
US7529404B2 (en) * 2007-06-20 2009-05-05 Ahdoot Ned M Digital video filter and image processing
US8345968B2 (en) * 2007-06-28 2013-01-01 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method and image decoding method
JP5197630B2 (ja) * 2008-01-09 2013-05-15 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法、および画像復号方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003189312A (ja) * 2001-12-20 2003-07-04 Oki Electric Ind Co Ltd 動画像符号化装置及び動画像復号化装置
WO2007010690A1 (ja) * 2005-07-22 2007-01-25 Mitsubishi Electric Corporation 画像符号化装置、画像復号装置、および画像符号化方法、画像復号方法、画像符号化プログラム、画像復号プログラム、ならびに画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体、画像復号プログラムを記録したコンピュータ読み取り可能な記録媒体
WO2007034601A1 (ja) * 2005-09-20 2007-03-29 Mitsubishi Electric Corporation 画像符号化方法および画像復号方法、画像符号化装置および画像復号装置、並びに画像符号化ビットストリーム及び記録媒体
WO2007034918A1 (ja) * 2005-09-26 2007-03-29 Mitsubishi Electric Corporation 動画像符号化装置及び動画像復号装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017513315A (ja) * 2014-03-14 2017-05-25 クアルコム,インコーポレイテッド ユニバーサル色空間逆変換コーディング
US10271052B2 (en) 2014-03-14 2019-04-23 Qualcomm Incorporated Universal color-space inverse transform coding

Also Published As

Publication number Publication date
CN101889449A (zh) 2010-11-17
US20090003716A1 (en) 2009-01-01
BRPI0813996A2 (pt) 2015-01-06
EP2169961A4 (en) 2011-06-15
RU2010102711A (ru) 2011-08-10
WO2009001864A1 (ja) 2008-12-31
CN103327328A (zh) 2013-09-25
US8145002B2 (en) 2012-03-27
US8139875B2 (en) 2012-03-20
RU2514787C1 (ru) 2014-05-10
JP5296679B2 (ja) 2013-09-25
CA2691742C (en) 2015-11-24
US20090003448A1 (en) 2009-01-01
HK1148148A1 (en) 2011-08-26
RU2012140183A (ru) 2014-05-10
RU2430486C1 (ru) 2011-09-27
KR101088972B1 (ko) 2011-12-01
JPWO2009001864A1 (ja) 2010-08-26
US20090003449A1 (en) 2009-01-01
RU2470480C1 (ru) 2012-12-20
US20090003717A1 (en) 2009-01-01
KR20100032438A (ko) 2010-03-25
EP2661088A1 (en) 2013-11-06
US20090003441A1 (en) 2009-01-01
BRPI0813996B1 (pt) 2020-10-20
US8345968B2 (en) 2013-01-01
CN101889449B (zh) 2013-06-19
EP2169961A1 (en) 2010-03-31
US8422803B2 (en) 2013-04-16
EP2169961B1 (en) 2014-03-05
KR20110061627A (ko) 2011-06-09
KR101379087B1 (ko) 2014-04-11
CA2691742A1 (en) 2008-12-31
CN103327328B (zh) 2016-08-17
RU2011119591A (ru) 2012-11-27
US20090110067A1 (en) 2009-04-30
US7991237B2 (en) 2011-08-02

Similar Documents

Publication Publication Date Title
JP5296679B2 (ja) 画像復号装置および画像復号方法
JP4542107B2 (ja) 画像復号装置及び画像復号方法
RU2426269C2 (ru) Кодер изображения и декодер изображения, способ кодирования изображения и способ декодирования изображения, программа кодирования изображения и программа декодирования изображения и компьютерно-считываемый носитель записи, на котором записана программа кодирования изображения, и компьютерно-считываемый носитель записи, на котором записана программа декодирования изображения
US20080123947A1 (en) Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein
US20080123977A1 (en) Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20090123066A1 (en) Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein,
US20090034857A1 (en) Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080130990A1 (en) Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080130988A1 (en) Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130613

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140530

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150106