JPWO2009035143A1 - 画像処理装置及び方法 - Google Patents

画像処理装置及び方法 Download PDF

Info

Publication number
JPWO2009035143A1
JPWO2009035143A1 JP2009532266A JP2009532266A JPWO2009035143A1 JP WO2009035143 A1 JPWO2009035143 A1 JP WO2009035143A1 JP 2009532266 A JP2009532266 A JP 2009532266A JP 2009532266 A JP2009532266 A JP 2009532266A JP WO2009035143 A1 JPWO2009035143 A1 JP WO2009035143A1
Authority
JP
Japan
Prior art keywords
quantization
code amount
unit
prediction
data
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.)
Granted
Application number
JP2009532266A
Other languages
English (en)
Other versions
JP5365518B2 (ja
Inventor
正二郎 柴田
正二郎 柴田
柴田 健
健 柴田
恭平 小藪
恭平 小藪
孝明 渕江
孝明 渕江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2009532266A priority Critical patent/JP5365518B2/ja
Publication of JPWO2009035143A1 publication Critical patent/JPWO2009035143A1/ja
Application granted granted Critical
Publication of JP5365518B2 publication Critical patent/JP5365518B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/192Methods 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 the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • H04N19/194Methods 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 the adaptation method, adaptation tool or adaptation type being iterative or recursive involving only two passes
    • 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/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/172Methods 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 picture, frame or field
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/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/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/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一の量子化スケールで計算した符号量から目標符号量を予測する。本発明は、固定量子化スケール(QI)においてMB発生符号量が相違する複数の予測用量子化データについて、複数の量子化ステップを表す複数の量子化スケール(Q)とMB発生符号量との関係を表す関係情報を予測曲線として記憶している。本発明は、予め定められた複数の量子化スケール(Q)のうち、マクロブロックごとに、一の固定量子化スケール(QI)で画像データを量子化して仮の量子化データを生成し、当該仮の量子化データのマクロブロック単位ごとのMB発生符号量を算出する。そして本発明は、仮の量子化データのMB発生符号量及び固定量子化スケール(QI)に基づいて複数の予測曲線から一の予測用量子化データを選択し、選択された一の予測用量子化データに基づいて、量子化選択部によって選択されなかった量子化スケール(Q)によって画像データを量子化したときのMB発生符号量を予測する。

Description

本発明は、画像処理装置及び方法に係り、特に固定の量子化スケールで計算した発生符号量から精度よく目標符号量を予測する技術分野に関する。
従来、MPEG−2(Moving Picture Experts Group 2)等の画像符号化方式において、符号量を理想的に配分することは、主観的な画質を維持するための大きな課題である。
例えば、静止画における理想的な符号量配分とは、歪を均一とした状態(固定的な量子化スケール)で符号化した状態である。この歪が大きくなるような符号量になると、高周波成分や複雑部に歪を偏らせることと併せて、主観的な画質を高めることができる。
ここで、例えば特許文献1では、所謂フィードフォワード方式の符号量制御を採用し画質信号の局所的性質に適応した制御を可能とすることによって、復号画像の画質を向上できる画質信号の符号化方法が開示されている。フィードフォワード方式とは、等長化単位において発生する符号量を、複数の量子化スケールに基づく量子化ステップについて予め計算し、発生符号量が目標符号量を超えない範囲で、予め適切な量子化スケールを決定するものである。
一方、MPEG−2でテストモデルとして提案されているTM5等の符号量制御では、仮想バッファの残量と以前エンコードした際の量子化ステップと発生符号量の関係を用いてフィードバック制御することによって、符号量制御を行っている。
国際公開第WO96/28937号公報。
しかしながら、静止画に係る上記従来技術では、目標の符号量に近い画面全体で均一となる平均的な量子化ステップを見つける為には、複数回、異なる量子化ステップで符号量を計算して予測する必要があり、演算するための回路に係るコストは大きくなる。
そこで、本発明は、固定の量子化ステップで計算した発生符号量から当該固定の量子化ステップ以外の量子化ステップにおける発生符号量を予測することで、発生符号量を予測する処理を簡易にし、結果として演算を行うための回路を削減することを課題とする。
量子化選択部によって選択された量子化ステップで画像データを量子化して仮の量子化データを生成し、当該仮の量子化データの量子化単位ごとの発生符号量である量子化単位発生符号量を算出する仮符号化部と、量子化選択部によって選択された量子化ステップにおいて量子化単位発生符号量が相違する複数の予測用量子化データについて、複数の量子化ステップと量子化単位発生符号量との関係を表す関係情報を記憶する記憶部と、仮の量子化データの量子化単位発生符号量及び量子化選択部によって選択された量子化ステップに基づいて関係情報から予測用量子化データを選択するデータ選択部と、データ選択部によって選択された予測用量子化データに基づいて、複数の量子化ステップのうち、量子化選択部によって選択されなかった量子化ステップによって画像データを量子化したときの量子化単位発生符号量を予測する符号量予測部とを設けるようにした。
従って、量子化選択部によって選択された量子化ステップで計算した発生符号量から量子化選択部によって選択されなかった量子化ステップにおける発生符号量を予測できる。
複数の量子化ステップのうち、量子化単位ごとに量子化ステップを選択する量子化選択ステップと、選択ステップにおいて選択された量子化ステップで画像データを量子化して仮の量子化データを生成し、当該仮の量子化データの量子化単位ごとの発生符号量である量子化単位発生符号量を算出する仮符号化ステップと、量子化選択ステップで選択された量子化ステップにおいて量子化単位発生符号量が相違する複数の予測用量子化データについて、複数の量子化ステップと量子化単位発生符号量との関係を表す関係情報を記憶する記憶ステップと、仮の量子化データの量子化単位発生符号量及び量子化選択ステップで選択された量子化ステップに基づいて、関係情報から予測用量子化データを選択するデータ選択ステップと、量子化選択ステップにおいて選択された予測用量子化データに基づいて、複数の量子化ステップのうち、量子化選択部によって選択されなかった量子化ステップによって画像データを量子化したときの量子化単位発生符号量を予測する符号量予測ステップとを設けるようにした。
従って、量子化選択部によって選択された量子化ステップで計算した発生符号量から量子化選択部によって選択されなかった量子化ステップにおける発生符号量を予測できる。
本発明によれば、従って、量子化選択部によって選択された量子化ステップで計算した発生符号量から量子化選択部によって選択されなかった量子化ステップにおける発生符号量を予測でき、簡易な処理で異なる量子化ステップにおける発生符号量を予測し得る画像処理装置及び画像処理方法を提供することができる。
図1は、本発明の第1の実施の形態に係る符号化装置の構成図。
図2は、本発明の第1の実施の形態に係る符号化装置による符号化処理について詳述するフローチャート。
図3は、符号量予測の処理を詳述するフローチャート。
図4は、統計的に求めた遷移曲線(MB量子化値と発生量の関係)を示す図。
図5は、従来技術に係る符号化装置の構成図。
図6は、本発明の第2の実施の形態に係る符号化装置の構成図。
図7は、本発明の第2の実施の形態に係る符号化装置の変形例の構成図。
図8は、本発明の第2の実施の形態に係る符号化装置による符号化処理について詳述するフローチャート。
図9は、本発明の第2の実施の形態に係る符号化装置によるピクチャ符号化(発生符号量収集)の詳細を示すフローチャート。
図10は、本発明の第2の実施の形態に係る符号化装置によるピクチャ符号化の詳細を示すフローチャート。
図11は、本発明の第3の実施の形態に係る符号化装置の構成図。
図12は、本発明の第3の実施の形態に係る符号化装置によるピクチャ符号化(発生符号量収集)の詳細を示すフローチャート。
図13は、本発明の第3の実施の形態に係る符号化装置によるピクチャ符号化の詳細を示すフローチャート。
図14は、本発明の第4の実施の形態に係る符号化装置の構成図。
図15は、本発明の第4の実施の形態に係る符号化装置による符号化処理について詳述するフローチャート。
図16は、本発明の第4の実施の形態による符号量予測処理について説明するフローチャート。
図17は、本発明の第4の実施の形態によるMBの符号量予測処理について説明するフローチャート。
図18は、固定補正値を概念的に示す図。
図19は、可変補正値を概念的に示す図。
図20は、復号化装置の構成を示す図。
符号の説明
1……プレコーダ、2……パラメータエンコーダ、3……マクロブロック符号量制御部、4……ディレイバッファ、11……予測モード決定部、12……DCT部、13……量子化部、14……逆量子化部、15……IDCT部、16……予測画生成部、17……符号長計算部、18……符号量のグルーピング部、19……ピクチャ符号量予測部、21……予測モード選択部、22……DCT部、23……量子化部、24……逆量子化部、25……IDCT部、26……予測画生成部、27……符号化部、30……プレコーダ、31……統計量算出部、32……DCT部、33……量子化インデックス決定部、34……量子化部、35……可変長符号化部、36……バッファ、40……レート制御部、41……仮想バッファ初期値の予測部、42……仮想バッファ更新部、43……量子化インデックス決定部、44……マクロブロック目標符号量の予測部、50……パラメータエンコーダ、51……量子化部、52……可変長符号化部、53……バッファ、60……プレコーダ、61……統計量算出部、62……DCT部、63……固定Q量子化部、64……可変長符号量計算部、65……統計量算出部、70……レート制御部、71……量子化インデックス予測部、72……量子化インデックス補正部、73……ターゲットビット量積算部、74……発生ビット量積算部、80……パラメータエンコーダ、81……量子化部、82……可変長符号化部、83……バッファ、91……フォーマット変換マクロブロック化部、92……DCT部、101……統計量算出部、201……プレコーダ、202……符号量見積り処理部、203……パラメータエンコーダ、204……ディレイバッファ、211……予測モード決定部、212……DCT部、213……量子化部、214……逆量子化部、215……IDCT部、216……予測画生成部、217……符号長計算部、221……ピクチャ符号量予測部、222……符号量のグルーピング部、223……マクロブロック符号量予測部
以下、図面を参照して、本発明を実施するための最良の形態(以下、単に実施の形態と称する)について詳細に説明する。なお説明は以下の順序で行う。
(1)第1の実施の形態(固定量子化スケールに基づく発生符号量の予測(MPEG−2))
(2)第2の実施の形態(予測された発生符号量を用いたフィードバック制御(MPEG−2))
(3)第3の実施の形態(スライス単位でのフィードバック制御(MPEG−2)
(4)第4の実施の形態(固定量子化スケールに基づく発生符号量の予測(AVC))
本発明の第1の実施の形態は、MPEG(Moving Picture Experts Group)−2等に代表される固定的なハフマンテーブルを使用する符号化方式において、以下の特徴的な処理を行う。
即ち、第1に、固定量子化スケールQIに基づく固定量子化ステップで仮の符号化を行い、マクロブロック毎のMB発生符号量から全ての量子化スケールに基づく量子化ステップについてMB発生符号量を予測し、ピクチャ全体分だけ積算することでピクチャごとのピクチャ発生符号量を予測する。第2に、マクロブロックの状態を示すマクロブロックモード毎に所定のグルーピングを行い、MB発生符号量のレンジ毎に統計的或いは近似式により求めた関係情報としての遷移曲線を基にMB発生符号量を見積もる。そして、第3に、MB発生符号量のレンジ毎に量子化スケールQのオフセットを付与するようにして、画像の複雑部ほど強く量子化するActivity(例えば、TM5のStep3)の処理を行う。
本発明の第2の実施の形態は、事前に固定量子化スケールQIでエンコードを行いマクロブロック毎のMB発生符号量を利用して、ピクチャの平均量子化スケールQaの予測、マクロブロックの目標符号量の予測、を行うことにより、ピクチャ内の量子化スケールQの分布が良好になるようなレート制御を行うことを特徴としている。
本発明の第3の実施の形態では、第2の実施の形態においてマクロブロック単位で行っていたレート制御(フィードバック制御)を、スライス単位で行うものである。
本発明の第4の実施の形態は、AVCにおいて固定量子化パラメータQPIに基づく固定量子化ステップで仮の符号化を行う。そして第3の実施の形態では、関係情報を基に予測されたMB発生符号量を補正することにより、MB発生符号量から全ての量子化スケールに基づく量子化ステップについてMB発生符号量を予測するものである。
以下、各実施の形態について詳述する。
(1)第1の実施の形態
(1−1)符号化装置の構成
図1には本発明の第1の実施の形態に係る符号化装置の構成を示し説明する。
この図1に示されるように、符号化装置は、MPEG−2に対応しており、プレコーダ1、パラメータエンコーダ2、マクロブロック符号量制御部3、ディレイバッファ4を備える。プレコーダ1は、予測モード決定部11、DCT(Discrete Cosine Transform)部12、量子化部13、逆量子化部14、IDCT(Inverse Discrete Cosine Transform)部15、動き予測と予測画生成部16、符号長計算部17、符号量のグルーピング部18、ピクチャ符号量予測部19からなる。そして、パラメータエンコーダ2は、予測画選択部21、DCT部22、量子化部23、逆量子化部24、IDCT部25、予測画生成部26、符号化部27からなる。
このような構成において、プレコーダ1はプレエンコード(Pre Encode)を行い、パラメータエンコーダ2は本エンコードを行うことになる。尚、プレコーダ1は例えば仮符号化部に相当し、パラメータエンコーダ2は例えば本符号化部に相当し、マクロブロック符号量制御部3は例えば符号量制御部に相当する。
以下、図2及び図3のフローチャートを参照して、本発明の第1の実施の形態に係る画像処理装置としての符号化装置による符号化処理について詳述する。尚、以下の処理の全部又は一部は本発明の第1の実施の形態に係る画像処理方法としての画像符号化方法にも相当するものである。
入力ビデオ信号には、予測モード決定部11でGOP(Group Of Pictures)周期を決定するNと、I又はPピクチャの周期を決定するための初期設定値Mとを基に、ピクチャタイプがIBBPBBP…のように周期的に割り振られる(ステップS1)。続いて、予測モード決定部11では、該入力ビデオ信号を受けて、マクロブロックのタイプを、予測画生成部16で求めたMC画との残差(MAD)とマクロブロックの分散等に基づいて、イントラMB(MB_Intra)、前方予測MB(MB_FW)、後方予測MB(MB_BW)、双方向M(MB_BI)等の中から予測モードが決定され、予測画像がDCT部12に送出される(ステップS2)。
DCT部12では、予測画像が離散コサイン変換により周波数空間に変換され、DCT係数データが量子化部13に送出される。この量子化部13は、DCT係数データに対して固定的な固定量子化スケールQI(例えばq_scale=10)に基づく量子化ステップを用いて量子化処理を行う(ステップS3)。尚、この量子化スケールQは、量子化インデックスにより定められる。
逆量子化部14、IDCT部15では、量子化部13の出力に基づいて予測画像を得るためにローカルデコード画像が生成される。即ち、逆量子化部14では、量子化部13から供給される量子化データが逆量子化されて、DCT係数データが再生される。IDCT部15では、このDCT係数データが逆離散コサイン変換されて、ローカルデコード画像が生成される。そして、このローカルデコード画像に基づいて、予測画生成部16により動き予測が行われることになる(ステップS4、S5)。
続いて、符号量予測が行われる(ステップS6)。より詳細には、図3のフローチャートに示されるように、量子化部13の出力(量子化データ)は、更に符号長計算部17にも送出され、実際に符号化するハフマンテーブルの符号長を基にMB発生符号量がマクロブロック毎に計数される(ステップS11)。符号量のグルーピング部18では、予測モード決定部11で求められたマクロブロックタイプ別の分類とMB発生符号量の上位ビット等を基に符号量が16〜32程度のグループに分類される(ステップS12)。このグルーピング(この例では16通り)したデータは、ピクチャ符号量予測部19に送出される。ピクチャ符号量予測部19では、統計的に求めた曲線(図4で後述する量子化スケールQとMB発生符号量の関係)を基にMB発生符号量を積算することでピクチャ当たりのピクチャ発生符号量を求める(ステップS13)。これに次いで、ピクチャのベースとなる平均量子化スケールQaを求め(ステップS14)、この平均量子化スケールQaを基に、マクロブロック毎の目標符号量TargetMBとマクロブロック単位での基本量子化スケールQMBを決定し(ステップS15)、図3の処理を終了する。
尚、アクティビティを考慮する場合には、後述する図4の遷移曲線の各曲線毎(すなわちグループ毎)に所定のオフセットを定義することで、ピクチャ毎の目標符号量TargetMBが求められる。
さて、再び図1の説明に戻り、上述したようにマクロブロック符号量制御部3では、ピクチャの量子化スケールQが、符号量のグルーピング部18でグルーピングした情報と統計的に求めた遷移曲線に基づいて、マクロブロック毎の基本量子化スケールQMBとターゲットとなる目標符号量TargetMBに変換され、設定されることになる。
パラメータエンコーダ2では、プレコーダ1で求めたピクチャタイプ、マクロブロックの予測モード、動きベクトル、ピクチャ符号量予測部19で決定した基本量子化スケールQMBと目標符号量TargetMBに基づいて、実際のMB発生符号量がフィードバックされ(ステップS7)ながら符号量制御が行われ、パラメータエンコードが行われる(ステップS8)。
即ち、入力ビデオ信号がディレイバッファ4による遅延処理を経て入力される。予測モード選択部21では、マクロブロック符号量制御部3によりマクロブロックの予測モードが指示され、これに従って予測モードが選択される。DCT部22では離散コサイン変換がなされ、DCT係数データが量子化部23に送出される。量子化部23では、このDCT係数データに対してマクロブロック符号量制御部3で求められた基本量子化スケールQMBに基づく量子化ステップによる量子化がなされ、量子化データが符号化部27に送出される。この符号化部27では、可変長符号化がなされ、こうして符号化ストリームが出力される。尚、逆量子化部24、IDCT部25、予測画生成部26では、量子化部23の出力(量子化データ)に基づいて予測画像を得るためにローカルデコード画像が生成される。こうして、一連の処理を終了する。
ここで、図4に、統計的に求めた遷移曲線(MB量子化値と発生量の関係)を示し説明する。この図4は、実画像から、取り得る量子化スケールQ(Q=1〜31)の全ての場合についてマクロブロック毎のMB発生符号量を求め、イントラ(Intra)のピクチャについてマクロブロックの発生量で13段階にグルーピングしてプロットしたものである。
MPEG−2等では可変長符号化としてハフマンテーブルを固定的に使用しており、ゼロランと非ゼロ係数の組み合わせでマクロブロック単位に符号化する。量子化スケールQの値を大きくするにつれてゼロランは次第に増加していき、非ゼロ係数のレベルは減少していくため、量子化スケールQを大きくするにつれて、単調減少する。画像の異なるマクロブロックであっても、ある量子化スケールQの値で同程度の発生量であったマクロブロックは同程度の減少曲線を描く傾向が確認できた。しかるに、本実施の形態に係る符号化装置では、この特徴的な傾向に着目し、1回の仮の符号化結果(固定量子化スケールQI)を用いて、目標とする目標符号量TargetMBをMB発生符号量として求める点に特徴の一つがある。
すなわち符号化装置は、MB発生符号量の異なる複数(ここでは13)の画像データを、全ての量子化スケールQを用いてそれぞれ量子化したときに得られる予測用量子化データのMB発生符号量を関係情報として例えば図示しないROM(Read Only Memory)に記憶しておく。これにより符号化装置は、選択された固定量子化スケールQIによるMB発生符号量に基づいて、当該MB発生符号量に最も近い予測用量子化データを選択し、当該選択された予測用量子化データにおけるMB発生符号量を各量子化スケールQにおけるMB発生符号量として予測することができる。
次に、プレコーダ1によるプレエンコードの特徴を更に詳述する。
先ず、ピクチャ符号量予測部19による符号量予測処理について詳述する。
第1の実施の形態に係る符号化装置では、プレコーダ1の固定量子化スケールQIでの量子化後の量子化データについて、実際に符号化に使用するハフマンテーブルの符号長を基に、マクロブロックの発生量を計算する。例えば、固定量子化スケールQI(Q=10)でのMB発生符号量が0〜512byte程度に収まるとするならば、上位の4bitでMB発生符号量を基に、16通りに分類する。この分類により図4における、どの曲線を使用してMB発生符号量を予測するかを決定する。先に図4に示したな遷移曲線はイントラのマクロブロックとインターのマクロブロックで異なるため、イントラMB(MB_Intra)、前方予測MB(MB_FW)、後方予測MB(MB_BW)、双方向MB(MB_BI)の予測モード等で個別に予測曲線を使用する。
具体的にピクチャ符号量予測部19は、グループごとにグループ閾値範囲を記憶している。そしてピクチャ符号量予測部19は、固定量子化スケールQIにおけるマクロブロックのMB発生符号量がどのグループ範囲閾値にあるかを判別し、当該マクロブロックを対応するグループに分類する。
予測曲線はVirBit[mb_mode][q_scale][byte_group]のように表すことができる。
ここで、mb_modeはマクロブロックの予測モード(4モード)、q_scaleは1〜31までの量子化インデックスから選択された量子化スケールQの値、byte_groupはMB発生符号量で分類した16通りのグループである。
画面全体(ピクチャごと)である量子化スケールQ(q_scale)でのMB発生符号量GenBitPic(q_scale)は、次式のように31通りの量子化スケールQ(q_scale)の分だけ求めることができる。
GenBitPic(q_scale)=ΣVirBit[mb_mode][q_scale][byte_group] ……(1)
すなわちピクチャ符号量予測部19は、マクロブロックごとに予測モードmb_mode、固定量子化スケールQI及び当該固定量子化スケールQIにおけるMB発生符号量から分類されたグループbyte_group(予測曲線)を選択する。そしてピクチャ符号量予測部19は、当該グループbyte_groupに該当する選択された予測曲線が示す固定量子化スケールQI以外の量子化スケールQについてのMB発生符号量を、当該固定量子化スケールQI以外の量子化スケールQにおけるMB発生符号量として予測することができる。さらにピクチャ符号量予測部19は、当該固定量子化スケールQI以外の量子化スケールQのMB発生符号量をピクチャごとに積算することにより、ピクチャごとのピクチャ発生符号量を子測することができる。
このときピクチャ符号量予測部19は、関係情報として、予測モードmb_modeとグループbyte_groupに相当する情報(すなわち予測モードmb_modeごとに全グループ(全ての予測量子化データ)に対応する量子化スケールQ及びMB発生符号量の関係を表す関係情報(予測曲線))を保持しておけば、予測曲線(遷移曲線)を基にマクロブロックの予測発生量を求めることができる。
次にピクチャ符号量予測部19によるActivityへの対応について詳述する。ピクチャ符号量予測部19にてMB発生符号量を基に振り分けたbyte_groupはマクロブロックのMB発生符号量の多い場合ほど複雑な画像情報を含んでいるとみなせる。
複雑なブロックほど量子化スケールQを大きくするような処理はグループbyte_group毎にオフセットを付けることで実現できる。このアクティビティのオフセットをλ[q_scale][byte_group]とするならば、例えば、量子化スケールQ(例えばq_scale=15)については、±4程度のアクティビティをつけるとき、次式のようにしておけばよいことになる。
λ[15][byte_group]={−4,−4,−3,−3,−2,−2,−1,0,1,2,2,3,3,4,4,4} ……(2)
すなわちピクチャ符号量予測部19は、量子化スケールQ及びグループbyte_groupごとにオフセットを設定している。ピクチャ符号量予測部19は、例えばMB発生符号量を予測する量子化スケールQ(q_scale)が「15」であり、MB発生符号量の小さいほうから3番目のグループに属する場合、(2)式における左から3番目の「−3」を量子化スケールQ(q_scale)の「15」に付加することになる。
一般に、量子化スケールQ(q_scale)の小さいときはアクティビティを使用する必要はないので、オフセットのレンジは量子化スケールQ(q_scale)で変化させるようにしておき、量子化スケールQ(q_scale)が大きくなる程、レンジを大きくする方が良い。
このλを用いると、画面全体のピクチャ発生符号量GenBitPicの予測値は次式のようになる。
GenBitPic(q_scale_pic)=ΣVirBit[mb_mode][act_q_scale][byte_group] ……(3)
すなわちピクチャ符号量予測部19は、予測対象となる量子化スケールQ(ピクチャごとに固定)に対してアクティビティによるオフセットを付加した量子化スケールQに基づくピクチャ発生符号量を予測する。このときピクチャ符号量予測部19は、オフセットの付加及び予測曲線に基づくMB発生符号量の予測をマクロブロックごとに実行する。そしてピクチャ符号量予測部19は、MB発生符号量をピクチャごとに積算することにより、予測対象の量子化スケールQに基づくピクチャ発生符号量GenBitPicを予測することができる。
act_q_scale(q_scale_pic)=min(max(1,q_scale_pic+λ[q_sale_pic][byte_group]),31) ……(4)
ここで、(4)式におけるmin(a,b)はa,bのうち小さい値、max(c,d)はc,dのうち大きい値を示す。
すなわちピクチャ符号量予測部19は、予測対象となる量子化スケールQにオフセットが付加された結果「1」未満となる場合には、アクティビティによるオフセットを付加した量子化スケールQを「1」とする。またピクチャ符号量予測部19は、予測対象となる量子化スケールQにオフセットが付加された結果「31」を超える場合には、アクティビティによるオフセットを付加した量子化スケールQを「31」とする。言い換えるとピクチャ符号量予測部19は、アクティビティによるオフセットを付加した量子化スケールQを、量子化インデックスによって定められた「1〜31」の中から選択するようになされている。
このようにピクチャ符号量予測部19は、画面全体の量子化スケールQ(q_scale_pic=1〜31)の全ての場合について、ピクチャ単位でのピクチャ発生符号量を求めることができ、目標とするピクチャ目標符号量に近い量子化スケールQ(q_scale_target)を平均量子化スケールQaとして導出する。
次に、マクロブロック符号量制御部3による量子化インデックス決定処理について詳述する。このマクロブロック符号量制御部3によるマクロブロック単位の符号量制御ではマクロブロックの基本量子化スケールQMBと目標とするマクロブロックのMB目標符号量TargetMBを、次式のように予測することができる。
MB=act_q_scale(q_scale_target) ……(5)
すなわちマクロブロック符号量制御部3は、平均量子化スケールQaに対してアクティビティによるオフセットを付加することにより、基本量子化スケールQMBを決定する。
TargetMB=VirBit[mb_mode][QMB][byte_group] ……(6)
またマクロブロック符号量制御部3は、基本量子化スケールQMBにおいてマクロブロックごとに予測されるMB発生符号量を、MB目標符号量TargetMBとして予測する。
すなわち符号化装置は、MB発生符号量の相違する複数の予測用量子化データのMB発生符号量と、各量子化スケールQにおけるMB発生符号量との関係を予測曲線として記憶しておく。そして符号化装置は、固定量子化スケールQI及び当該固定量子化スケールQIにおけるMB発生符号量に基づいて、予測対象となるマクロブロックをグルーピングし、予測用量子化データに当て嵌める。そして符号化装置は、当該当て嵌められた予測用量子化データにおける固定量子化スケールQI以外の量子化スケールQにおけるMB発生符号量を、当該当て嵌められた予測用量子化データのMB発生符号量から予測する。
すなわち符号化装置は、固定量子化スケールQIに基づく量子化ステップを用いた1回の符号化により、想定されている全ての量子化スケールQに基づく量子化ステップを用いたときのMB発生符号量を予測することができる。
そしてパラメータエンコーダ2による本エンコードでは、プレコーダ1で求めたピクチャタイプ、マクロブロックモード、動きベクトル、予測したマクロブロックの基本量子化スケールQMBを使用して、パラメータエンコードを行う。尚、マクロブロックのMB発生符号量の情報は、フィードバックし、前述したような符号量制御を行うことになる。
この結果符号化装置は、当該予測したMB発生符号量に基づいて画像に応じた適切な基本量子化スケールQMB及びMB目標符号量TargetMBを設定することができ、いわゆるフィードフォワードによる符号量制御を実行し得るようになされている。
以上説明したように、本発明の第1の実施の形態に係る符号化装置及び方法によれば、マクロブロック単位の基本量子化スケールQMB、MB目標符号量TargetMBの予測値を精度良く求めることができる。
(1−2)符号化処理手順
次に、符号化プログラムに従って実行される符号化処理について、図2及び図3のフローチャートを用いて説明する。
符号化装置のプレコーダ1は、入力ビデオ信号が供給されると、符号化処理手順RT1を開始し、ステップS1において、GOP周期及びI,Pピクチャの周期を決定するための初期設定値Mを基に、ピクチャタイプを周期的に割り振ると、次のステップS2へ移る。
ステップS2において、プレコーダ1は、入力ビデオ信号が表す符号化対象となる対象画像及び予測の対象となる予測画像から、最適な予測モード(mb_mode)を決定すると共に、当該最適な予測モードを用いた差分画像データSADを生成し、次のステップS3へ移る。
ステップS3において、プレコーダ1は、差分画像データSADに対し、マクロブロック単位で整数精度DCTにより直交変換を行い、さらに固定量子化スケールQIを用いて量子化を実行することにより、量子化データを生成すると、次のステップS4及びステップS6へ移る。
ステップS4において、プレコーダ1は、量子化データに対して逆量子化及びIDCTを実行し、ローカル差分画像データSADLを生成すると、次のステップS5へ移る。ステップS5において、プレコーダ1は、当該ローカル差分画像データSADLを予測画像とし、以降の対象画像に対するステップ2における処理を遂行させる。
ステップS6において、プレコーダ1は、符号量予測処理手順RT2(図3)のステップS11へ移る。
ステップS11において、プレコーダ1は、符号長計算部17によって量子化データを符号化し、仮の量子化データとして符号化ストリームを生成することにより、固定量子化スケールQIでのマクロブロックごとのMB発生符号量(すなわち仮の量子化データのMB発生符号量)を計算すると、次のステップS12へ移る。
ステップS12において、プレコーダ1は、符号量のグルーピング部18により、ステップS2において決定された予測モード及びステップ11において算出されたMB発生符号量とに基づいて、複数記憶されている予測曲線(例えば予測モードごとに準備された各16の曲線)の中から、一の予測曲線(グループ)に予測対象となるマクロブロックを割り当てると、次のステップS13へ移る。
ステップS13において、プレコーダ1は、ピクチャ符号量予測部19により、全ての量子化スケールQ(q_scale)におけるMB発生符号量を、ピクチャごとに算出すると、次のステップS14へ移る。
このときプレコーダ1は、各マクロブロックがどのグループに割り当てられたかに応じて、(2)式に示したように、量子化スケールQに対してアクティビティによるオフセットを増減した適応量子化スケールQt(act_q_scale)を算出する。プレコーダ1は、(3)式に示すように、適応量子化スケールQt(act_q_scale)を用いたときのマクロブロックごとのMB発生符号量を、割り当てられた予測曲線から算出する。
そしてプレコーダ1は、このマクロブロックごとのMB発生符号量をピクチャごとに積算することにより、ピクチャごとのピクチャ発生符号量を各量子化スケールQによるピクチャ発生符号量として算出する。
ステップS14において、プレコーダ1は、ピクチャ目標符号量よりも小さく、かつ最も近いMB発生符号量でなる量子化スケールQを平均量子化スケールQa(q_scale_target)として選定すると、次のステップS15へ移る。
ステップS15において、プレコーダ1は、(5)式に示したように、平均量子化スケールQaにおける適応量子化スケールQt(act_q_scale)を基本量子化スケールQMBとし、当該基本量子化スケールQMBにおけるマクロブロックごとのMB発生符号量を目標符号量TargetMBとすると、符号量予測処理手順RT2を終了して符号化処理手順RT1(図2)のステップS6へ戻り、次のステップS7へ移る。
ステップS7において、マクロブロック符号量制御部3は、基本量子化スケールQMB及びMB目標符号量TargetMBを用いた符号量制御により、パラメータエンコーダ2を制御しながら、ステップS8においてパラメータエンコーダ2に本エンコードを実行させることにより、本符号化ストリーム(すなわち本量子化データ)を生成すると、終了ステップへ移って処理を終了する。
(1−3)動作及び効果
以上の構成によれば、符号化装置は、複数の量子化スケールQに基づく複数の量子化ステップのうち、選択された量子化スケールQIである固定量子化スケールQIに基づいて量子化単位であるマクロブロックごとに量子化ステップを選択し、当該選択された量子化ステップで画像データとしてのDCT係数データを量子化し、仮の量子化データを生成する。このとき符号化装置は、当該仮の量子化データのマクロブロック単位ごとの発生符号量をMB発生符号量として算出する。
符号化装置は、固定量子化スケールQIに基づいて選択された量子化ステップにおいてMB発生符号量が相違する複数の予測用量子化データについて、複数の量子化ステップを表す複数の量子化スケールQとMB発生符号量との関係を表す関係情報を予測曲線として記憶している。
符号化装置は、仮の量子化データのMB発生符号量及び固定量子化スケールQIに基づいて複数の予測曲線から予測用量子化データを選択し、当該選択された予測用量子化データに基づいて、複数の量子化スケールQのうち、固定量子化スケールQI以外の量子化スケールQに基づく量子化ステップ(すなわち選択されなかった量子化ステップ)によって画像データを量子化したときのMB発生符号量を予測する。
これにより符号化装置は、固定量子化スケールQIに基づいて選択された1つの量子化ステップにおいて予測対象となるDCT係数データを量子化するだけで、複数の量子化スケールQに基づく複数の量子化ステップにより当該対象となるDCT係数データを量子化したときのMB発生符号量を予測することができる。この結果符号化装置は、複数の量子化スケールQにおいてDCT係数データを量子化する従来の方法と比較して、処理負荷を軽減して構成を簡易にすることができる。
また符号化装置は、予測したMB発生符号量を積算することにより、符号化単位であるピクチャごとの量子化データの発生符号量であるピクチャ発生符号量GenBitPicを予測する。これにより符号化装置は、予測したMB発生符号量を積算するだけの簡易な処理によりピクチャ発生符号量GenBitPicを予測することができる。
さらに符号化装置は、複数の量子化スケールQに基づく複数の量子化ステップのうち、ピクチャ発生符号量GenBitPicがピクチャごとの目標となるピクチャ目標符号量に近づくよう基本量子化ステップQMBを予測する。
ここで上記TM5に代表される従来のフィードバック型の符号量制御では、基本量子化スケールQMBによって発生する実際のMB発生符号量が全くの未知であるため、MB目標符号量と実際のMB発生符号量とが大きく相違する場合がある。このため従来の符号量制御では、例えばマクロブロックごとに異なるシーケンスに切り替わる際には、切り替わる前の基本量子化スケールに応じて不適切な基本量子化スケールが設定される場合があった。このような場合、従来の符号量制御では、シーケンス突入時に符号量を発生しすぎてしまい、ピクチャ後半において符号量を抑える必要が生じ、画面下部が上部よりも歪が大きくなり、画質の劣化が目立ってしまっていた。
これに対して符号化装置は、ピクチャが表す画像に応じた適切な基本量子化ステップQMBを設定することができ、実際のピクチャ発生符号量GenBitPicをピクチャ目標符号量に近づけることができ、かかる画質の劣化を抑制することができる。
また符号化装置は、マクロブロック単位ごとにDCT係数データを量子化して本量子化データを生成する。このとき符号化装置は、本量子化データのピクチャ発生符号量GenBitPicがピクチャ目標符号量に近づくよう、基本量子化ステップQMBから変動させた変動量子化ステップでDCT係数データを量子化させる。
これにより符号化装置は、本符号化において実際に発生する符号量に基づき基本量子化ステップQMBを適宜変更することができるため、本量子化データのピクチャ発生符号量GenBitPicをピクチャ目標符号量に近づけることができる。
さらに符号化装置は、本量子化データのMB発生符号量とマクロブロック単位ごとのMB発生符号量の目標となるMB目標符号量TargetMBとの符号量の差分に基づいて基本量子化スケールQMBから変動させた変動量子化スケールQSMBによる変動量子化ステップを決定する。
これにより符号化装置は、本量子化データのMB発生符号量とMB目標符号量TargetMBとの差分に基づくフィードバック制御により、基本量子化ステップQMBを適宜変更することができる。このため符号化装置は、符号量の不足に起因するピクチャ全体における部分的な画質劣化を引き起こすことなく、適切にDCT係数データを量子化することができる。
また符号化装置は、予測された基本量子化スケールQMBに基づいて予測したMB発生符号量を、MB目標符号量TargetMBとする。
これにより符号化装置は、基本量子化スケールQMBを決定するためのピクチャ発生符号量GenBitPicの予測のために算出されたMB目標符号量TargetMBをそのままMB目標符号量TargetMBとして用いることができるため、処理負荷を軽減することができる。
さらに符号化装置は、ピクチャ発生符号量GenBitPicがピクチャ目標符号量よりも小さく、かつピクチャ発生符号量GenBitPic及びピクチャ目標符号量の差分が最小となる平均量子化ステップQaを選択し、当該平均量子化ステップQaに対してアクティビティ増減値としてのオフセットλを加減することにより、基本量子化ステップQMBを予測する。
これにより符号化装置は、画像の複雑さに応じて基本量子化ステップQMBを変動させることができ、複雑な画像に対する誤差を認識しづらいという人間の視覚特性を利用して、量子化によって発生する誤差を視覚的に目立ちにくくすることができる。
また符号化装置は、予測用量子化データ(すなわちグループ)に応じたオフセットλを平均量子化ステップQaに対して加算する。これにより符号化装置は、グループに応じて単純にオフセットλを加算するだけで済み、例えばDCT係数データにおける分散を算出などの適応量子化のための処理をわざわざ実行する必要がなく、処理を簡易にすることができる。
これにより符号化装置は、固定量子化スケールQIに基づく量子化ステップ(すなわち選択された量子化ステップ)によりピクチャ単位のDCT係数データを量子化する。これにより符号化装置は、ピクチャ発生符号量GenBitPicを算出する際に適応量子化をしなくて済み、処理を簡易にすることができる。
さらに符号化装置は、ピクチャタイプ(すなわち予測モードmb_mode)ごとに関係情報(すなわち複数の予測用量子化データ)を記憶し、ピクチャタイプに応じた関係情報から予測用量子化データを選択する。
これにより符号化装置は、ピクチャタイプに応じた関係情報を用いてMB発生符号量を予測できるため、予測の精度を向上させることができる。
また符号化装置は、DCT係数データを量子化した後に固定的なテーブルを用いた可変長符号化であるハフマン符号化をすることにより仮の量子化データを生成する。符号化装置は、選択された予測用量子化データにおける固定量子化スケールQI以外の量子化スケールQに基づく量子化ステップ(すなわち選択されなかった量子化ステップ)におけるMB発生符号量を、当該選択されなかった量子化ステップによってDCT係数データを量子化したときのMB発生符号量として予測する。
これにより符号化装置は、量子化スケールQの値を大きくするにつれてゼロランは次第に増加していき、非ゼロ係数のレベルは減少していくため、量子化スケールQを大きくするにつれて、MB発生符号量が単調減少するという特性を利用して、高い精度でMB発生符号量を予測することができる。
さらに符号化装置は、入力される画像データとしてのビデオ入力信号に対して所定の直交変換処理であるDCT処理を施すことにより、画像データを生成することにより、符号化効率を向上させることができる。
符号化装置では、本エンコード時のフィードバックは符号量を制御するための保険的な処理である為、ピクチャ当たりの理想的な符号量配分を予測することができ、例えばVTRシステム等で使用するIntra Frame CBRの符号量制御を従来のように5段の並列処理を行うことなく実現できる。また、TM5等のフィードバック型の符号量制御で問題となる、シーケンスの変った場合の符号量の使い過ぎによる時間的な不均衡な歪などを低減できる。
以上の構成によれば、符号化装置は、予めMB発生符号量の相違する複数の予測用量子化データについて、量子化スケールQとMB発生符号量との関係を記憶しておき、固定量子化スケールQIを用いて画像データを量子化したときのMB発生符号量から、最も近いMB発生符号量を示す予測用量子化データを選択する。符号化装置は、選択した予測用量子化データにおける固定量子化スケールQI以外の量子化スケールQにおけるMB発生符号量を、画像データを量子化したときの固定量子化スケールQI以外の量子化スケールQにおけるMB発生符号量と擬制することにより、画像データを固定量子化スケールQI以外の量子化スケールQによって量子化したときのMB発生符号量を予測するようにした。
これにより符号化装置は、固定量子化スケールQIに基づく選択された量子化ステップを用いて画像データを量子化するだけで固定量子化スケールQI以外の量子化スケールQに基づく量子化ステップ(すなわち選択されなかった量子化ステップ)によって当該画像データを量子化したときのMB発生符号量を予測することができる。かくして本発明は、固定の量子化ステップで計算した発生符号量から異なる量子化ステップにおける発生符号量を精度よく予測でき、演算を行うための回路を削減し得るよう、簡易な処理で異なる量子化ステップにおける発生符号量を予測し得る画像処理装置及び画像処理方法を実現できる。
(2)第2の実施の形態
(2−1)符号化装置の構成
図5には従来技術に係る符号化装置の構成を示し説明する。
同図に示されるように、この符号化装置では、統計量算出部101で目標とする符号量の1フレーム分の割り当てビット量を計算し、DCT部102では離散コサイン変換を行いDCT係数データを量子化部103に送出する。量子化部103では、このDCT係数データを量子化スケールで量子化し量子化データを可変長符号化部104に送出する。可変長符号化部104では、量子化データを可変長符号化し、バッファ105に送出する。バッファ105は、送信データを一時記憶し、ビットストリームとして出力する。この処理の過程で、レート制御部106によるレート制御が行われる。即ち、仮想バッファ初期化部107により仮想バッファの初期化が行われ、仮想バッファ更新部108により仮想バッファの更新がなされ、量子化インデックス決定部109により量子化部103で採用する量子化スケールQを特定する。
しかるに、このような従来技術では、シーケンス先頭ピクチャやシーンチェンジ直後ピクチャのエンコードにおいては、仮想バッファが固定値となるために、エンコードするピクチャが当該固定値から大きく乖離するような絵柄の場合では、量子化スケールQのフィードバック制御により、画面上部から下部にかけて量子化スケールQが増加もしくは減少するため画質が劣化していた。また、この従来技術のような量子化スケールQのフィードバック制御を採用した場合には、マクロブロック毎にMB発生符号量と目標符号量の差分値を用いて次のマクロブロックの量子化スケールQを決定することになるが、マクロブロック目標符号量は常に一定であった為、画面上部が符号量小、画面下部が符号量大となる画像においては、画面上部に多くの符号量を割り当ててしまい、画面下部に割り当てる符号量が不足する為、マクロブロックスキップが発生することがあった。
このような問題に鑑みて、本発明の第2の実施の形態に係る符号化装置及び方法では、事前に固定量子化スケールQIでエンコードを行い、マクロブロック毎のMB発生符号量を利用して、ピクチャの平均量子化スケールavgQの予測とマクロブロックごとの目標符号量TargetMBの予測を行うことにより、ピクチャ内の量子化値分布が良好になるようなレート制御を行うことを特徴の一つとしている。以下、その構成及び作用効果を詳述する。
図6には本発明の第2の実施の形態に係る符号化装置の構成を示し説明する。
この図6に示されるように、この符号化装置は、MPEG−2に対応しており、1パス目のプレコーダ30、レート制御部40、2パス目のパラメータエンコーダ50からなる。
より詳細には、プレコーダ30は、統計量算出部31、DCT部32、量子化インデックス決定部33、量子化部34、可変長符号化部35、バッファ36からなる。レート制御部40は、仮想バッファ初期値の予測部41、仮想バッファ更新部42、量子化インデックス決定部43、マクロブロック目標符号量の予測部44からなる。そして、パラメータエンコーダ50は、量子化部51、可変長符号化部52、バッファ53からなる。
このような構成において、レート制御部40では、マクロブロック単位のレート制御が実施される。そして、ピクチャ毎に2パス方式のエンコードを行う。即ち、プレコーダ30による1パス目は固定量子化スケールQIでエンコードを行いマクロブロック毎のMB発生符号量を収集する。パラメータエンコーダ50による2パス目は収集したMB発生符号量からピクチャの平均量子化スケールavgQを予測すると共にマクロブロック毎のMB目標符号量TargetMBを予測する。そして、これら予測値を用いて、レート制御手段としてのレート制御部が、例えばTM5のような量子化スケールフィードバックによるレート制御を行うものである。
尚、図6の構成では、2パス目のパラメータエンコーダ50にはDCT部等が備えられてないが、図7に示されるように、フォーマット変換マクロブロック化部91、DCT部92、量子化部51、可変長符号化部52、バッファ53で構成されているのと等価であり、この構成にレート制御部40が関与するようにすることもできる。
以下、図8のフローチャートを参照して、第2の実施の形態に係る符号化装置による2パス方式エンコードでのレート制御について説明する。統計量算出部31は目標とする符号量の1フレーム分の割り当てビット量を計算する(ステップS21)。例えば、30フレーム/secの符号化を50Mbpsで行うとき、VTR等の1フレーム当たりの符号量を一定とするシステム等では、50Mbpsを1秒当たりのフレーム数「30」で除算した値(50Mbps/30)に基づいてピクチャ目標符号量pictBitsを算出する。
ここで用いる目標符号量pictBitsは、次式により決定される。
Iピクチャのとき
pictBits=KI×Bitrate/(KI×NI+KP×NP+KB×NB)
Pピクチャのとき
pictBits=KP×Bitrate/(KI×NI+KP×NP+KB×NB)
Bピクチャのとき
pictBits=KB×Bitrate/(KI×NI+KP×NP+KB×NB)
KI=5,KP=3,KB=1
Bitrateは1秒辺りの発生符号量
NI、NP、NBはI、P、Bピクチャの1秒あたりの発生個数
続いて、ピクチャ毎に1パス目のプレコーダ30により2回のエンコードを行う。即ち、1回目は量子化スケール固定値でエンコードしマクロブロック毎のMB発生符号量を収集し(ステップS22)、2回目は該MB発生符号量を用いて量子化スケールQの分布が適切になるようなレート制御をレート制御部40により行う(ステップS23)。こうして最終ピクチャであるか否かを判断し、上記処理を最終ピクチャとなるまで繰り返し(ステップS24)、最終ピクチャに到達すると、処理を終了することになる。
ここで、上記ステップS22の処理の詳細は図9のフローチャートに示される。
即ち、1回目のエンコードはMB発生符号量の収集を目的とするものであり、量子化スケールQを固定値である固定量子化スケールQIに設定し(ステップS31)、さらに視覚特性を利用した適応量子化を行い最終的な適応量子化スケールQtを決定する(ステップS32)。その適応量子化スケールQtを用いて量子化部34による量子化、及び可変長符号化部35による可変長符号化を行い(ステップS33)、そこで得られたMB発生符号量をマクロブロック毎にバッファ36に保存する(ステップS34)。以上の処理をマクロブロック毎に繰り返し(ステップS35)、最終マクロブロックに至ると、図7のステップS23以降の処理にリターンする。
次に、上記ステップS23の処理の詳細は図10のフローチャートに示される。
即ち、2回目のエンコードでは、MB発生符号量と量子化スケールQの相関関係を予め統計的に把握しておき、これを変換式(関係情報)として記憶している。そして当該変換式により1回目のピクチャ発生符号量からピクチャ目標符号量pictBitsに最も近いピクチャ発生符号量を発生させる量子化スケールを平均量子化スケールavgQとして予測する。この仮想バッファの初期値virtualBufは次式により決定される(ステップS41)。
Figure 2009035143
ここで、virtualBufは仮想バッファの初期値、pictBitsはピクチャの目標符号量、avgQはピクチャの平均量子化スケールを意味している。
すなわち仮想バッファの初期値は、平均量子化スケールavgQを「31」によって正規化した値とピクチャ目標符号量pictBitsとを乗算した値を「2」で除算することにより算出され、平均量子化スケールavgQ及びピクチャ目標符号量pictBitsに応じて変化することになる。
仮想バッファが確定したら平均量子化スケールavgQを基本量子化スケールQMBとし、次式によりマクロブロック毎に変動量子化スケールQSMBを算出する(ステップS42)。
Figure 2009035143
QSMBはマクロブロックの変動量子化スケール、virtualBufMBはマクロブロック処理時点の仮想バッファ、pictsBitsはピクチャ目標符号量を意味している。
すなわち変動量子化スケールQSMBは、仮想バッファ現在値virtualBufMBをピクチャ目標符号量pictBitsによって除算した値に、「31」及び「2」を乗算することにより算出される。ここでピクチャ目標符号量pictBitsは同一ピクチャ内で固定であることから、変動量子化スケールQSMBは、仮想バッファ現在値virtualBufMBに応じて変動することになる。
Figure 2009035143
ここで、TargetBitsMBはマクロブロックの目標符号量、pictBitsはピクチャ目標符号量、GenBitsMBは固定量子化スケールQIによるマクロブロックのMB発生符号量、numOfMBは1ピクチャのマクロブロック数である。
すなわちマクロブロックのMB目標符号量TargetMBは、固定量子化スケールQIによるMB発生符号量GenBitsMBの1ピクチャ分のMB発生符号量ΣGenBitsMBの合計値に対する割合をMB割合として算出し、当MB該割合に対してピクチャ目標符号量pictBitsを乗算して算出される。言い換えると、1ピクチャ分のMB発生符号量ΣGenBitsMBに拘らずMB割合が殆ど変化しないものとし、1ピクチャ分のMB発生符号量ΣGenBitsMBがピクチャ目標符号量pictBitsとなるときのマクロブロックのMB目標符号量TargetMBを算出している。
こうして変動量子化スケールQSMBが決定したら1回目のエンコードと同じく量子化部34により適応量子化を行い(ステップS43)、可変長符号化部35により可変長符号化を実施する(ステップS44)。ピクチャ発生符号量をピクチャ目標符号量picBitsに近づけるために量子化スケールフィードバック制御を行うが、これは実際のMB発生符号量genBitsMBとMB目標符号量TargetMBとの差分に応じて基本量子化スケールQMBから増減された変動量子化スケールQSMBを用いることにより実現される。
実際上仮想バッファ更新部42は、マクロブロック毎に実際のMB発生符号量genBitsMB−1と目標符号量TargetMBの差分を仮想バッファへ加算していく(ステップS46)。仮想バッファ現在値virtualBufMBは次式で求められる。なお1マクロブロック前のMB発生符号量genBitsMB−1を使用するのは、実際に符号化する際に遅延が生じるためである。
virtualBufMB=virtualBufMB−1+(genBitsMB−1−TargetBitsMB) ……(10)
すなわち仮想バッファ現在値virtualBufMBは、実際のMB発生符号量genBitsMB−1と目標符号量TargetMBとの符号量の差異が小さければ殆ど変動せず、当該符号量の差異が大きければ大きく変動することになる。
この結果、(8)式によって算出される変動量子化スケールQSMBの値は、実際のMB発生符号量genBitsMB−1とMB目標符号量TargetMBとの符号量の差異が小さければ当該基本量子化スケールQMB(平均量子化スケールQavg)から殆ど変動することなく決定される。一方、変動量子化スケールQSMBの値は、実際のMB発生符号量genBitsMB−1と目標符号量TargetMBとの符号量の差異が大きい場合には、仮想バッファ現在値virtualBufMBに応じて当該基本量子化スケールQMBから変動した値に決定されることになる。
以上の処理をマクロブロック毎に繰り返す。即ち、最終マクロブロックに至ったか否かを判断し(ステップS47)、最終マクロブロックに至るまで上記処理を繰り返し、最終マクロブロックに至ると図8の処理にリターンすることになる。
以上説明したように、本発明の第2の実施の形態に係る符号化装置及び方法によれば、一つ前のピクチャの絵柄に関わらず量子化スケールの分布が良好なエンコードができ画質が向上する。さらに、当該ピクチャの絵柄に関わらずより正確なマクロブロック毎のレート配分を行うことができ画質が向上する。これにより、一部画像で符号量不足を原因とする画面下部マクロブロックスキップを防ぐことができる。
(2−2)符号化処理手順
次に、符号化プログラムに従って実行される符号化処理について、図8〜図10のフローチャートを用いて説明する。
符号化装置は、画像データとしてのビデオ入力信号が供給されると、符号化処理手順RT3を開始し、ステップS21においてプレコーダ30の統計量算出部31によってピクチャ目標符号量pictBitsを決定すると、次のステップS22に移る。
ステップS22において、符号化装置は、プレコーダ30によって発生符号量を収集するために、固定量子化スケールQIを用いて画像データを符号化する符号量予測処理手順RT4(図9)のステップS31に移る。
ステップS22において、プレコーダ30は、DCT部32によって画像データに対してDCT処理を施すと共に、量子化インデックス33によって固定量子化スケールQIを決定し、次のステップS32へ移る。
ステップS32において、プレコーダ30は、量子化部34によってDCT変換された画像データに対して、固定量子化スケールQIを用いて画像の複雑さに応じた適応量子化を行うと、次のステップS32へ移る。
ステップS33において、プレコーダ30は、可変長符号化部35によって適応量子化が実行された画像データに対して可変長符号化を実行し、仮量子化データを生成すると、次のステップS34へ移る。ステップS34において、プレコーダ30は、当該仮量子化データのマクロブロックごとのMB発生符号量GenBitsMBをバッファ36に一時保存し、次のステップS35へ移る。
ステップS35において、プレコーダ30は、統計量算出部31によって処理対象となるマクロブロックが現在のピクチャにおける最終マクロブロックであるか否かを判別し、否定結果が得られた場合、ステップS32へ戻り、符号量予測処理を継続する。
これに対してステップS35において肯定結果が得られた場合、このことは次のピクチャに対する符号量予測処理を実行すべきことを表しており、このときプレコーダ30は、符号化処理手順RT3のステップS22へ戻り、次のステップS23へ移る。
ステップS23において、符号化装置は、ステップS22において算出されたMB発生符号量GenBitsMBを基にレート制御を実行しながら画像データを符号化する本符号化処理手順RT5(図10)のステップS41へ移る。
ステップS41において、符号化装置のレート制御部40は、ステップS22において算出されたMB発生符号量GenBitsMBを基に平均量子化スケールavgQを算出する。さらにレート制御部40は、仮想バッファ初期値の予測部41によって平均量子化スケールavgQを基に当該(7)式に従って仮想バッファの初期値virtualBufを算出し、これを仮想バッファ更新部42に設定すると、次のステップS42に移る。
ステップS42において、レート制御部40は、量子化インデックス決定部43により、平均量子化スケールavgQを基本量子化スケールQMBとし、(8)式に従い、仮想バッファ現在値virtualBufMBに応じて当該基本量子化スケールQMB(平均量子化スケールQavg)から変動した変動量子化スケールQSMBを決定すると、次のステップS43へ移る。
ステップS43において、レート制御部40は、量子化インデックス決定部43により、変動量子化スケールQSMBに基づき、画像データの複雑さ(アクティビティ)に応じた適応量子化スケールQStMBを決定する。そしてレート制御部40は、パラメータエンコーダ50の量子化部51に対し、当該適応量子化スケールQStMBを用いて量子化を実行するよう、当該量子化部51を制御すると、次のステップS44へ移る。
この結果量子化部51は、プレコーダ30のDCT部32から供給されるDCT処理された画像データ(DCT係数データ)を、当該適応量子化スケールQStMBを用いて量子化することになる。
ステップS44において、パラメータエンコーダ50は、ステップS44において量子化された量子化データを、可変長符号化部52により、可変長符号化して仮量子化データとしての符号化ストリームを生成し、これをバッファ53に一時記憶し、次のステップS45へ移る。
ステップS45において、レート制御部40は、ステップS21において決定されたピクチャ目標符号量pictBits及びバッファ36一時記憶されたMB発生符号量GenBitsMBを基に(9)式に従ってマクロブロックの次のマクロブロックに対するMB目標符号量TargetMBを算出すると、次のステップS46へ移る。
ステップS46において、レート制御部40は、仮想バッファ更新部42により次のMB目標符号量TargetMB及びステップS44においてバッファ53に一時記憶されたマクロブロックの実際のMB発生符号量genBitsMB−1に基づいて、(10)式に従って仮想バッファ現在値virtualBufMBを算出し、これを仮想バッファ更新部42に設定すると、次のステップ47へ移る。
この結果、MB目標符号量TargetMB及び実際のMB発生符号量genBitsMB−1の符号量の差異に基づいて逐次仮想バッファ現在値virtualBufMBが更新され、当該仮想バッファ現在値virtualBufMBを用いて算出される
ステップS47において、レート制御部40は、処理対象となるマクロブロックが最終ブロックであるか否かを判別し、否定結果が得られた場合には、ステップS42へ戻り、本符号化処理を継続する。
これに対してステップS47において肯定結果が得られた場合、このことは次のピクチャに対する処理を実行すべきことを表しており、このとき符号化装置は、符号化処理手順RT3(図8)のステップS23へ戻り、次のステップS24へ移る。
ステップS24において、符号化装置は、処理したピクチャが最終ピクチャであるか否かを判別し、否定結果が得られた場合には、ステップS22へ戻り、符号化処理を継続する。
これに対してステップS24において否定結果が得られた場合、符号化装置は、終了ステップへ移って処理を符号化終了する。
(2−3)動作及び効果
以上の構成において、符号化装置は、(9)式に従って、選択された量子化ステップとして、固定量子化スケールQIに基づく量子化ステップ(すなわち量子化に使用された適応量子化スケールQtに基づく量子化ステップ)によるピクチャ発生符号量に対するピクチャ目標符号量pictBitの比率を、固定量子化スケールQIに基づくMB発生符号量GenBitsMBに対して乗算した値を、MB目標符号量TargetMBとする。
ここで量子化スケールQが変化した場合、全体的な符号量は変動するものの、ピクチャ全体においてマクロブロックが実際に占有する符号量の割合はさほど変動しないと考えられる。
このため符号化装置は、固定量子化スケールQIに基づくMB発生符号量GenBitsMBから当該MB発生符号量GenBitsMBが当該固定量子化スケールQIにおけるピクチャ発生符号量に占める割合を算出する。そして符号化装置は、ピクチャ目標符号量pictBitに対する固定量子化スケールQIにおけるピクチャ発生符号量の比率を当該割合に乗算して符号量のスケールを調整することにより、MB目標符号量TargetMBを算出する。
これにより符号化装置は、画像データに応じた適切なMB目標符号量TargetMBに基づくフィードバック制御を実行することができるため、画像の種類やシーケンスの切り替りなどであっても、MB目標符号量TargetMBと実際のMB発生符号量genBitsMBとの符号量の差異を小さくすることができる。この結果符号化装置は、ピクチャの後方で割り当てる符号量が不足するような事態を未然に防止することができる。
また符号化装置は、プレコーダ30により、固定量子化スケールQIを用いて適応量子化を行うことにより、マクロブロックごとの画像データに応じて、量子化スケールQに基づく量子化ステップ(すなわち適応量子化スケールQtに基づく量子化ステップ)を選択し、当該選択された量子化ステップにより画像データを量子化する。
これにより符号化装置は、MB発生符号量GenBitsMBを単純に積算することにより、適応量子化を行った後のピクチャ発生符号量を算出することができる。
さらに符号化装置は、パラメータエンコーダ50により、平均量子化スケールQavgをそのまま基本量子化スケールQMBとして使用すると共に、当該平均量子化スケールQavgから(7)式及び(8)式に従って算出された変動量子化スケールQSMBに基づいて適応量子化を実行するようにした。これにより符号化装置は、適応量子化により量子化歪みを目立ちにくくすることができる。
以上の構成によれば、符号化装置は、固定量子化スケールQIによるMB発生符号量GenBitsMBに基づいて、関係情報から基本量子化スケールQMBを決定すると共に、当該MB発生符号量GenBitsMBのピクチャに占める符号量の割合に基づいてMB目標符号量TargetMBを決定するようにした。
これにより符号化装置は、画像データに応じた適切な基本量子化スケールQMB及びMB目標符号量TargetMBを設定することができるため、ピクチャ目標符号量pictBitに従ってピクチャ全体を適切に符号化することができる。
(3)第3の実施の形態
(3−1)符号化装置の構成
以上説明した第2の実施の形態に係る符号化装置は、以下に示すように変形することもできる。この第3の実施の形態では、2パス符号量予測方式は、予想曲線から求めたマクロブロック毎の量子化スケールQ(q_scale)とMB発生符号量を使用し、スライス単位でのフィードバック制御を実行する。
図11には第3の実施の形態における符号化装置の構成を示し説明する。この図11に示されるように、この符号化装置は、1パス目のプレコーダ60、レート制御部70、2パス目のパラメータエンコーダ80からなる。
より詳細には、プレコーダ60は、統計量算出部61、DCT部62、固定Q量子化部63、可変長符号量計算部64、統計量算出部65からなる。レート制御部70は、量子化インデックス予測部71、量子化インデックス補正部72、スライス毎にターゲットビット量積算部73、ピクチャ毎に発生ビット量積算部74からなる。2パス目のパラメータエンコーダ80は、量子化部81、可変長符号化部82、バッファ83からなる。
以下、図12及び図13のフローチャートを参照して、この変形例による符号化処理について詳細に説明する。メインフローは、図8と同様である。
まず、図12のピクチャ符号化(MB発生符号量収集)処理では、固定Q量子化部63で用いる量子化スケールに固定値を設定し(ステップS51)、この固定量子化スケールでDCT部62によるDCT後のDCT係数データを固定Q量子化部63で量子化し、可変長符号量計算部64で可変長符号量を計算し(ステップS52)、マクロブロック毎のMB発生符号量を求める(ステップS53)。このような処理を1ピクチャ分繰り返し、最終マクロブロックまで処理がなされたか否かを判断し(ステップS54)、処理が最終マクロブロックまでなされるとリターンする。
次に、図13に示される処理では、統計量算出部65において、関係情報としての統計データVirBitを用いて、第1の実施の形態と同様に、ピクチャ目標発生量に近い量子化スケールQ(q_scale_target)を平均量子化スケールQaとして決定(ステップS61)する。また平均量子化スケールQaをベースとした適応量子化により、(5)式に従ってマクロブロックの基本量子化スケールQMB(q_scaleMB)を決定する(ステップS62)。このときのMB発生符号量TargetMBは、(6)式によって表される。
ところでフィードバックの単位である1つのマクロブロック内にエッジ境界など8x8DCTブロックの特性の著しく異なる個所を有する場合などでは、特性の異なるグループの特性が加算されてしまい、グルーピングの単位がマクロブロックでは適切でない個所である。
このような、統計的な曲線から外れるようなマクロブロックの暴れの影響を取り除くために、マクロブロックよりも大きな単位で、フィードバック制御を行うことができる。システムで許容できる実際に発生する実発生符号量の誤差の許容範囲で、例えば1ライン分のマクロブロックから1画面分までなどの単位で、行えばよい。
このフィードバックの単位をスライス(Slice)と以下では称することにする。
1sliceの本符号化の終了する都度、実MB発生符号量genBitMB及びMB目標符号量TargetMBをそれぞれ積算することにより、スライスごとの実際の発生符号量であるスライス実発生符号量GenBitssliceとスライスごとの目標符号量であるスライス目標符号量Targe t sliceを計算しておく(ステップS65、S66)。次のスライスに対応する全マクロブロックの基本量子化スケールQMB(q_scale)について変動値q_adjだけ補正する(ステップS65)ことでスライス単位のフィードバック制御を行う。
TargetBitsslice=ΣVirBit[mb_mode][act_q_scale][byte_group] ……(11)
GenBitsslice=ΣGenBitsMB ……(12)
ここで、TargetBitssliceはスライス分のMB目標符号量TargetMBの積算値、GenBitssliceはスライス分の実MB発生符号量である。
q_adj=(ΣGenBitsslice−ΣTargetBitsslice)/ΣDeltaslice ……(13)
ここで、変動値q_adjは次に符号化するスライス内の各基本量子化スケール(q_scale)に対して加算する。Deltasliceは基本量子化スケールQMB(q_scale)の1変化量相当の境界値であり、Σは先頭スライスからの相を意味している。
すなわち仮に変動値q_adjが大きく設定されすぎると、変動量子化スケールQSMB(q_scale_adj)の基本量子化スケールQMBからの変動が大きくなりすぎ、発散してしまう可能性がある。従ってスライス実発生符号量GenBitssliceとスライスごとの目標符号量であるスライス目標符号量Targe t sliceとの符号量の差をΣDeltasliceで除算することにより、変動値q_adjを適正な値に調整するようになされている。
次のスライスに対して変動値q_adjを補正後の変動量子化スケールQSMB(q_scale_adj)は「q_scale+q_adj」すなわち基本量子化スケールQMBに対して変動値q_adjとして表すことができる。そして当該変動量子化スケールQSMB(q_scale_adj)を用いて実符号化を行う(ステップS64)。以上の処理を、最後のスライスまで繰り返し(ステップS67)、最後のスライスまで処理を行うとリターンする。
(3−2)符号化処理手順
次に、符号化プログラムに従って実行される符号化処理手順について、図12及び図13のフローチャートを用いて説明する。なお図12のフローチャートは、符号化処理手順RT3(図8)におけるステップS22において実行される符号量予測処理を表し、図13のフローチャートは、符号化処理手順RT3(図8)におけるステップS23において実行される本符号化処理を表している。
ステップS22において、符号化装置は、プレコーダ60によって発生符号量を収集するために、固定量子化スケールQIを用いて画像データを符号化する符号量予測処理手順RT6(図12)のステップS51に移る。
ステップS51において、プレコーダ60は、入力データに対してDCT部62によってDCT処理を施すと共に、当該DCT変換された画像データ(DCT係数データ)に対して、固定量子化スケールQIを用いて量子化を行い、仮量子化データを生成する。さらにプレコーダ60は、仮量子化データに対し、可変長符号量計算部64によって可変長符号化を行うことにより、仮の量子化データとして符号化ストリームを生成すると、次のステップS53へ移る。
ステップS53において、プレコーダ60は、当該符号化ストリームのマクロブロックごとのMB発生符号量GenBitsMBを統計量算出部に一時保存し、次のステップS54へ移る。
ステップS54において、プレコーダ60は、統計量算出部31によって処理対象となるマクロブロックが現在のピクチャにおける最終マクロブロックであるか否かを判別し、否定結果が得られた場合、ステップS52へ戻り、符号量予測処理を継続する。
これに対してステップS54において肯定結果が得られた場合、このことは次のピクチャに対する符号量予測処理を実行すべきことを表しており、このときプレコーダ60は、符号化処理手順RT3(図8)のステップS22へ戻り、次のステップS23へ移る。
ステップS23において、符号化装置は、ステップS22において算出されたMB発生符号量GenBitsMBを基にレート制御を実行しながら画像データ(DCT係数データ)を符号化する本符号化処理手順RT7(図13)のステップS61へ移る。
ステップS61において、符号化装置のレート制御部70は、量子化インデックス予測部71により、ステップS22において算出されたMB発生符号量GenBitsMBを基に、ピクチャごとに決定される平均量子化スケールQaを算出すると、次のステップS62へ移る。
ステップS62において、レート制御部70は、量子化インデックス予測部71により、平均量子化スケールQaを基にアクティビティによるオフセットλを増減することにより、基本量子化スケールQMBを予測すると、次のステップS63へ移る。
ステップS63において、レート制御部70は、量子化インデックス補正部72により、基本量子化スケールQMBを基に、(13)式に従い、変動値q_adjに応じて当該基本量子化スケールQMBから変動した変動量子化スケールQSMBを決定すると、次のステップS64へ移る。
ステップS64において、パラメータエンコーダ80は、変動量子化スケールQSMBに基づいて量子化部81により画像データを量子化して量子化データを生成すると共に、可変長符号化部82によって当該量子化データを可変長符号化して仮の量子化データである符号化ストリームを生成すると、これをバッファ83に一時記憶し、次のステップS65へ移る。
ステップS65において、レート制御部70は、ターゲットビット量積算部73により、(14)式に従ってMB目標符号量TargetBを積算し、スライス目標符号量Targe t sliceを算出すると、次のステップ66へ移る。
ステップS66において、レート制御部70は、発生ビット量積算部74により、(12)式に従ってMB発生符号量GenBitMBを積算し、スライス発生符号量TargetoBitsliceを算出する。このときレート制御部70は、スライス目標符号量Targe t slice及びスライス目標符号量Targe t sliceに基づき、(13)式に従って変動値q_adjを算出すると、次のステップS67へ移る。
ステップS67において、レート制御部40は、処理対象となるスライスが最終スライスであるか否かを判別し、否定結果が得られた場合には、ステップS62へ戻り、本符号化処理を継続する。
これに対してステップS67において肯定結果が得られた場合、このことは次のピクチャに対する処理を実行すべきことを表しており、このとき符号化装置は、符号化処理手順RT3(図8)のステップS23へ戻り、次のステップS24へ移る。
(3−3)動作及び効果
以上の構成において、符号化装置は、スライス単位でスライス目標符号量Targe t sliceを設定し、当該スライス目標符号量Targe t slice及びスライスごとの実際の発生符号量であるスライス実発生符号量GenBitssliceとの差分に基づいてフィードバック制御を実行する。
これにより符号化装置は、同一マクロブロック内にエッジの境界が存在し、2種類の異なる画像が存在するような場合であっても、適切なフィードバック単位によってフィードバック制御を実行することができる。
(4)第4の実施の形態
(4−1)概略
上述したように、MPEG−2でテストモデルとして提案されているTM5等の符号量制御では、仮想バッファの残量と以前エンコードした際の量子化インデックスとMB発生符号量の関係を用いてフィードバック制御することによって、符号量制御を行っている。
しかしながら、静止画に係る上記従来技術では、目標の符号量に近い画面全体で均一となる平均的な量子化スケールを見つける為には、複数回、異なる量子化スケールで符号量を計算して予測する必要があり、演算するための回路に係るコストは大きくなる。
また、上記TM5に代表されるフィードバック型の符号量制御では、異なるシーケンスに切り替わる度に適切な発生量をもたらす量子化スケールを付与することができず、画面下部が上部よりも歪が大きくなり視覚的に目立ち易くなり、シーケンス突入時に符号量を発生しすぎてしまい、符号量を抑える必要が生じ、画質の劣化が目立ってしまう。
このような問題は、事前にある値で量子化したときの発生量を知ることで解決することができる場合がある。第1の実施の形態で説明したように、MPEG−2、特にMPEG−2 Intraの場合、DCT係数の低周波から高周波に向かうにつれて値が小さくなる。自然画の場合、常にこれが成り立つ。よって、マクロブロックMBの符号量と係数分布の相関が強く、符号量だけで予測が可能である。
しかしながら、MPEG−4 Part10:AVC(Advanced Video Coding)以下、AVC規格と呼ぶ)では、Intra MBでも画面内予測(入力画からI−pred画/MC画を引いた画、つまり差分画)などがあり、それが成り立たない場合はMPEG−2でのDCT係数の分布と同じ分布にならない。ゆえに、MPEG−2の対応と同じ方法を採用しても精度のよいMB発生符号量の見積りができない場合がある。
そこで、本発明は、ピクチャあたりの理想的な符号量配分を予測することを可能としVTRシステム等で使用するCBR(constant bit rate)の符号量制御を少ないコストで実現すると共に、TM5などのフィードバック型の符号量制御で問題となる、シーケンスの変った場合の符号量の使い過ぎによる時間的な不均衡な歪などを無くすことを課題とする。
(4−2)符号化装置の構成
図14には本発明の一実施の形態に係る符号化装置の構成を示し説明する。
この符号化装置は、AVC規格に対応すると共に、2Pass Encode方式を採用している。
2Pass Encode方式の本来の目的は、符号化したときのMB発生符号量を正確に見積もり、ピクチャ内の符号量の配分やピクチャ間の符号量の配分を高画質になるように行うことであるが、この実施の形態では、その要素技術である、ある量子化値で符号化した時のMB発生符号量を予測する点に特徴がある。
この図14に示されるように、符号化装置は、プレコーダ201、パラメータエンコーダ203、符号量見積り処理部202、ディレイバッファ204を備える。プレコーダ201は、予測モード決定部211、DCT(Discrete Cosine Transform)部212、量子化部213、逆量子化部214、IDCT(Inverse Discrete Cosine Transform)部215、予測画生成部216、符号長計算部217からなる。符号量見積り処理部202は、ピクチャ符号量予測部221、符号量のグルーピング部222、マクロブロック符号量予測部223からなる。そして、パラメータエンコーダ203は、予測画選択部231、DCT部232、量子化部233、逆量子化部234、IDCT部235、予測画生成部236、符号化部237からなる。
このような構成の下、2Pass Encodeの基本的な制御では、選択された1つの量子化パラメータQPを用いてプレエンコード(Pre Encode)と呼んでいる情報を得るためのエンコードを行い、そこで取得した情報と予め作成しておいた統計量を基に、選択されなかった他の量子化パラメータQPでエンコードした場合のMB発生符号量を予測することになる。即ち、プレコーダ1はプレエンコードを行い、パラメータエンコーダ203は本エンコードを行うことになる。尚、プレコーダ1は例えば仮符号化手段に相当し、パラメータエンコーダ203は例えば本符号化手段に相当し、符号量見積り処理部202は、例えば符号量予測部に相当する。但し、これに限定されない。ピクチャとしてはIntraピクチャ(画面内予測を用いた差分画)を用いる。
プレコーダ1によるプレエンコードでは、全てのマクロブロックを固定の量子化パラメータQP(以下、これを固定量子化パラメータQPIと呼ぶ、例えばQPI=16)で符号化し、符号化処理の部分は、コンテキスト適応型可変長符号化方式(CAVLC;Context−Adaptive Variable Length Coding)で行っている。即ち、本エンコードはCABAC(Context−Adaptive Binary Arithmetic Coding)で符号化を行う場合でも、プレエンコードはCAVLCで符号化する。
CAVLCで行うのは、CABACよりも処理が簡単であること、特にハードウェアではバイナライズの部分での発生量が大きくなりすぎてCABACの処理に時間がかかりすぎてしまう可能性があるからである。CABACは、算術符号化であり、CAVLCは可変長符号化で符号化の方式が違う。また、CAVLCで符号化することで回路規模を抑えることも狙いとしている。
一般的には、可変長符号化はある特定の領域の情報を効率よく符号化しており、算術符号化は領域を特定することなく効率よく符号化できる。
本来ならばこの特徴により、可変長符号化から算術符号化のMB発生符号量を予測すると情報の出力によって大きく誤差がでるが、CAVLCはコンテキストを適用的に変更することにより、一般的な可変長符号化に比べて、あまり領域を特定せずに効率よく符号化することができる。これにより、誤差が全くないわけではないが、CABACのMB発生符号量の推測はCAVLCでの符号化によるMB発生符号量でも可能である。それ以外の、ME(Motion Estimatiton)やMBMode決定の処理は本エンコードとほぼ同じ処理を行う。
プレエンコード(プレコーダ201)では使用しないが、本エンコード(パラメータエンコーダ203)では画の特徴にあわせて量子化パラメータQPを増減させる処理、例えば画の劣化が目立ちやすいマクロブロックは量子化パラメータQPを下げる、目立ちにくいMBは量子化パラメータQPを上げる、いわゆるアクティビティ処理を行う。この増減値も本エンコードでの見積もり精度を上げるために、プレエンコードの時点で計算して、その情報をマクロブロック毎に出力する。
それ以外にプレエンコードで出力する情報としては、各マクロブロックのDCT係数のMB発生符号量やヘッダ(Header)のMB発生符号量、非0の係数の数がある。尚、各MBのDCT係数のMB発生符号量やヘッダ(Header)のMB発生符号量は別々に出力する。
これに加えて、MB毎の各係数を“Coef Cost”と称される値を計算し、その総和も併せて出力することで、精度のよい見積りを可能とする。後述するが、この実施の形態ではこのCoef Costを基に統計量から得られるマクロブロックのMB発生符号量を補正する。
ここ、Coef Costの意味合いは、係数が0になるまでの量子化パラメータQPの増加値の指標であるといえる。換言すれば、Coef Costとは、量子化パラメータQPをどの程度増やせば、係数が0に落ちるかという指標にする値である。この実施の形態では、Coef Costは係数の大きさから求めており、係数が0なら0、1なら1、2なら2、3〜4なら3、5〜8なら4、9〜16なら5とし、それ以降は(係数の大きさ/16)+5で計算している。
係数の小さい場合は、係数の大きさよりも係数が0になるということが大きな意味をもつのでビット(Bit)数を重要視する。一方、係数が大きい場合は、徐々に係数の大きさが小さくなる情報を反映するために、この実施の形態では16ごとにCoaf Costを増やす。
すなわち小さい量子化係数についてのCoef Costは、係数の増減に対するCoef Costの増減を大きくする。一方、大きい量子化係数についてのCoef Costは、係数の増減に対するCoef Costの増減を小さくしている。
ここで、MB発生符号量の予測にかなり精度を要求される場合は、このCoef Costのヒストグラムを出力する方がよいが、情報量も巨大になってしまう。
しかしながら、そこまでの精度がいらない場合は、Coef Costの総和/非0の係数の数つまり、1係数あたりのCoef Costの情報を使い、精度を上げることが可能である。そこで、この実施の形態では、Coef Costの総和を情報として出力している。非0係数の数は出力しているので、総和があれば計算で求めることが可能である。
以下、図15のフローチャートを参照して、本発明の一実施の形態に係る符号化装置による符号化処理について詳述する。尚、以下の処理の全部又は一部は本発明の第1の実施の形態に係る画像符号化方法にも相当するものである。
入力ビデオ信号には、予測モード決定部211でGOP(Group Of Pictures)周期を決定するNと、I又はPピクチャの周期を決定するための初期設定値Mとを基に、ピクチャタイプがIBBPBBP…のように周期的に割り振られる(ステップS1)。続いて、予測モード決定部211では、該入力ビデオ信号を受けて、マクロブロックのタイプを、予測画生成部16で求めたMC画との残差(SAD)とマクロブロックの分散等に基づいて、予測モードが決定され、予測画像がDCT部212に送出される(ステップS2)。
DCT部212では、予測画像が離散コサイン変換により周波数空間に変換され、DCT係数データが量子化部213に送出される。この量子化部213は、DCT係数データに対して固定的な量子化パラメータQP(例えばQP=16)を用いて量子化処理を行う(ステップS3)。
逆量子化部214、IDCT部215では、量子化部213の出力に基づいて予測画像を得るためにローカルデコード画像が生成される。即ち、逆量子化部214では、量子化部213から供給される量子化データが逆量子化されて、DCT係数データが再生される。IDCT部215では、このDCT係数データが逆離散コサイン変換されて、ローカルでコード画像が生成される。そして、このローカルデコード画像に基づいて、予測画生成部16により動き予測が行われることになる(ステップS4、S5)。
続いて、符号量見積り処理部202のピクチャ符号量予測部221により符号量予測が行われる(ステップS6)。その詳細については、図16を参照して後述する。
このとき、マクロブロック符号量予測部223では、ピクチャの量子化パラメータQPが、符号量のグルーピング部222でグルーピングした情報と統計的に求めた予測曲線(遷移曲線)に基づいて、マクロブロック毎に予測される量子化パラメータQP(以下、これを基本量子化パラメータQPMBと呼ぶ)とターゲットとなるマクロブロックごとの目標符号量TargetMBに変換され、パラメータエンコーダ203に設定されることになる(ステップS7)。
パラメータエンコーダ203では、プレコーダ201で求めたピクチャタイプ、マクロブロックの予測モード、動きベクトル、ピクチャ符号量予測部221で決定した基本量子化パラメータQPMBと目標符号量TargetMBに基づいて、実MB発生符号量がフィードバックされながら符号量制御が行われ、パラメータエンコードが行われる(ステップS8)。
即ち、入力ビデオ(Video)信号がディレイバッファ4による遅延処理を経て入力される。予測画選択部231では、マクロブロック符号量予測部223によりマクロブロックの予測モードが設定され、予測画像が選択される。DCT部232では、DCT変換がなされ、DCT係数データが量子化部233に送出される。量子化部233では、このDCT係数データに対してマクロブロック符号量予測部223で求められた基本量子化パラメータQPMBによる量子化がなされ、量子化データが符号化部237に送出される。この符号化部37では、符号化がなされ符号化ストリームが仮の量子化データとして出力される。尚、逆量子化部234、IDCT部235、予測画生成部236では、量子化部233の出力(量子化データ)に基づいて予測画像を得るためにローカルデコード画像が生成される。こうして、一連の処理を終了する。
次に、図16のフローチャートを参照して、図15のステップS6で実行される符号量予測処理について説明する。
符号量予測処理では、GOPをある量子化パラメータQPで量子化したときのピクチャ発生符号量を計算する(ステップS111)。これは、ピクチャを量子化パラメータQPで量子化したときのMB発生符号量を計算することによって行われる(ステップS112)。具体的には、マクロブロックごとの符号量予測によって行われる(ステップS113)。このマクロブロックごとの符号量予測については図17で後に詳述する。
すなわち、ある量子化パラメータQPで量子化したときのマクロブロックごとにMB発生符号量を計算し積算することにより、当該量子化パラメータQPにおけるピクチャごとのピクチャ発生符号量を計算する。さらにピクチャ発生符号量を積算することにより、当該量子化パラメータQPにおけるGOPごとのGOP発生符号量を算出する。
こうして、GOP発生符号量が目標のGOP目標符号量以内に収まっているか否かを判断し(ステップS114)、収まっていない場合には量子化パラメータQPを変更しステップS111に戻り上記処理を繰り返す。一方、収まっている場合には、この処理を終了し、図15のステップS7以降の処理に移行することになる。
次に、図17のフローチャートを参照して、図16のステップS113で実施されるマクロブロックの符号量予測処理について詳述する。
尚、前提として、この実施の形態では、各MB Group毎に、1係数のCoef Costの代表値の統計量を作成している。更に、各MB Groupごとに量子化パラメータQPが「0〜51」の場合の、<マクロブロックが発生するDCT係数の符号量の代表値>の統計量を作成している。また、各MB Groupごとに量子化パラメータQPが「0〜51」の場合の、「1係数のCoef Costが<1係数のCoef Costの代表値>から1ずれた場合の<MB発生符号量が変動する代表値>」の統計量の作成している。あるマクロブロックのMB発生符号量を統計量から得るときには、そのマクロブロックの増減値AddQpを反映させる。(→「0」又は「1」については後日確認)
さて、ある量子化パラメータQPで符号量を予測する場合、先ずプレコーダ201のプレエンコードで求めたマクロブロックのDCT係数のMB発生符号量から、マクロブロックをグルーピングする(ステップS121)。
この実施の形態では、DCT係数のMB発生符号量/64をグループ番号(以下、MbGroupNo)としている。MB発生符号量を予測するに際しては、関係情報として統計量から作成した量子化パラメータQPとMB発生符号量との関係を示す関係テーブル(第1の実施の形態における予測曲線に対応)を使用する。その関係テーブルはVirBits[MbGroupNo][Qp]と表現することができ、マクロブロックのグループ番号ごとの予測テーブルとして記憶されている。従って、当該関係テーブルを用いることにより、対象となる量子化パラメータQPのMB発生符号量の予測値を得ることができる。
この実施の形態では、Inter Slice/Intra Sliceで別々の関係テーブルを準備しており、当該Inter Slice/Intra Sliceごとの関係テーブルを合わせて統計テーブルと呼び、VirBits[SliceType][MbGroup][Qp]と表すことができる。
すなわち量子化パラメータQPごとにMB発生符号量が対応付けられた予測テーブルが、マクロブロックグループのグループ番号ごとに設定されることにより関係テーブルを形成し、当該関係テーブルがスライスごとのピクチャタイプ(すなわち予測モード)ごとに設定されることにより統計テーブルが設定されている。この統計テーブルは、図示しないROM等に記憶されている。
続いて、1ピクチャは1つのある基本の量子化パラメータQP(TargetQp)についてのMB発生符号量の予測を行うが、画の特徴に応じてマクロブロック毎に量子化パラメータQPを増減させる(ステップS122)。即ち、プレエンコード時の画の特徴に応じて量子化パラメータQPの増減値AddQpを加算する。その増減値AddQpを反映させた1ピクチャのピクチャ発生符号量は、次式のように表される(ステップS123)。
Sum(VirBits[SliceType][MbGroup][TaretQp+AddQp]) ……(14)
すなわち、ピクチャタイプ、マクロブロックのグループ番号及び予測対象となる量子化パラメータQP(TargetQp)に対して増減値AddQpを反映させた量子化パラメータQP(TargetQp+AddQp)に対応付けられている発生符号量をピクチャごとに積算した値を、当該予測対象となる量子化パラメータQP(TargetQp)におけるピクチャ発生符号量とする。
それに加えてテーブルから得られるMB発生符号量はグループで1つであるから、グループ内でのMB発生符号量の差を反映させるほうが予測の精度が向上すると考えられる。そのために、プレエンコードで得られたMB発生符号量とVirBits[SliceType][MbGroup][Pre Encode時の量子化パラメータQP]に差(DiffBits)がある場合は、その差をどの量子化パラメータQPでも加算する(ステップS24)。これを式で表すと次のようになる。
DiffBits=Pre Encode時のMB発生符号量
−VirBits[SliceType][MbGroup][Pre Encode時の量子化パラメータQP]……(15)
つまり、ここでは、あるマクロブロックをある量子化パラメータQPでのMB発生符号量を予測するときに、そのマクロブロックがプレエンコードで実際に発生した符号量と、そのMB Groupでその量子化パラメータQPの<MBが発生するDCT係数の符号量の代表値>の差分値を求め、これを固定補正値DiffBitsとして付加することになる。この固定補正値は、図18に概念的に示される。
即ち、図18において縦軸は符号量、横軸は量子化パラメータQPを示している。実線で示した統計量の値に対して、該統計量から外れるものを破線で示している。同図から、同じような状況のマクロブロックの場合、ある量子化パラメータQPでMB発生符号量に差があると(図中、矢印で示す)、その差はどの量子化パラメータQPでもある程度同じような値である。この点に鑑みて、この固定補正値DiffBitsは、グループ内でのMB発生符号量の差として反映させる。
言い換えると、差分値を固定補正値DiffBitsとして利用することにより、統計量が表す予測曲線を平行移動させて使用することになる。
続いて、プレエンコード時のCoef Costと同じグループの統計量のCoef Costの差を求める(ステップS125)。以下、その理由を説明する。
プレエンコード時は同じグループであっても、量子化パラメータQPが変わった場合は、全てのMBが同じように減少したり、増加したりはしない。あるマクロブロックはすぐにMB発生符号量が減少するが、あるマクロブロックはなかなかMB発生符号量が減少しない。MB発生符号量だけの統計量だとそれらの違いが分らず、各MBに誤差が多少出てしまう。個々の誤差はそれほど大きいものではないが、1ピクチャ分加算されるとそれなりの誤差になってしまう。その誤差を修正するために、このステップでは、1係数あたりのCoef Costという情報を使うのである。
このCoef Costは係数の大きさから計算されており、値が小さいと量子化パラメータQPが少し上がっただけでも、0係数となる係数が多いことを示し、逆に値が大きいと量子化パラメータQPが多少上がっても0係数となる係数が少ないことを示す。MC規格に準拠した符号化においては、この0係数の数を増やすとMB発生符号量大きく減少しやすいので、この値を使って誤差を補正する。
この可変補正値は、図19に概念的に示される。
即ち、図19において縦軸は符号量、横軸は量子化パラメータQPを示している。実線で示した統計量の値に対して、該統計量から外れるものを破線で示している。1係数あたりのCoef Cost(Coef Cost/0でない係数の数)が小さいと、マクロブロックの係数が小さいものが多いということになり、量子化パラメータQPを上げると0になるものがすぐに増加していく傾向がある(減少率が大きい)。一方、1係数あたりのCoef Costが大きいとマクロブロックの係数が大きいものが多いということになり、量子化パラメータQPを上げても0になるものがあまり増加しない傾向がある(減少率が少ない)。そこで、1係数あたりのCoef Costと発生ビット数の比率から可変補正値CorrectBitsを求めて、補正を行う。
言い換えると、実際にMB発生符号量を算出した固定量子化パラメータQPIにおけるMB発生符号量を中心として、可変補正値CorrectBitsにより統計量が表す予測曲線の傾きを変化させて使用することになる。
具体的には、誤差を補正するために、先ずそのマクロブロックの1係数あたりのCoef Costが統計量で作成したグループの1係数あたりのCeof Costからのずれ量CostDiffによって算出される。これを式で表すと次のようになる。
CostDiff=1係数あたりのCoef Cost−Coef Cost[MbGroup] ……(16)
つぎに、Coef Costの差の補正値を統計量から計算し、MB発生符号量を求める(ステップS26)。即ち、ここでは、統計量から求めた1係数あたりのCoef Costが1違えばどのくらいMB発生符号量が増減するという増減テーブルを参照し、次式より可変補正量CorrectBitsを求める。
CorrectBits=RatioCostBits[SliceType][MbGroupNo][TargetQp+AddQp]CostDiff ……(17)
つまり、このステップでは、あるマクロブロックをある量子化パラメータQPでのMB発生符号量を予測するときに、そのMBの1係数のCoef Costの値とそのMB Groupの1係数のCoef Costの代表値にがある場合、その差と「1係数のCoef Costが<1係数のCoef Costの代表値>から1ずれた場合の<MB発生符号量が変動する代表値>(以下、これを補正係数RationCostBitと呼ぶ)」から補正するMB発生符号量を求める。
すなわちMB発生符号量は、スライスのピクチャタイプ、マクログループ番号、増減値AddQpを反映させた量子化パラメータQP(TargetQp+AddQp)から選択された補正係数RationCostBitに対し、ずれ量CostDiffが乗算されることにより算出される。
よって1ピクチャのピクチャ発生符号量は、次式のようになる。
Sum(VirBits[SliceType][MbGroup][TaretQp+AddQp]+DiffBits+CorrectBits) ……(18)
こうして、マクロブロックの符号量予測を終了し、図16のステップS114以降の処理に進むことになる。
尚、この実施の形態では、1係数あたりのCoef Costという情報を用いて補正を行ったが、Coef Costという情報を計算する必要がある。処理を少なくする必要がある場合、多少予測精度は落ちてしまうが、1係数あたりのCoef Costは1係数あたりの発生符号量でも代用は可能であることは勿論である。この場合、作成する統計量は、1係数の発生符号量の代表値と「1係数の発生符号量が<1係数の発生符号量の代表値>から1ずれた場合の<発生符号量が変動する代表値」となる。
また、マクロブロックのヘッダ(Header)部分の発生符号量は1ピクチャごと行い、量子化パラメータQPが0−26の間は変更なし、40‐51の間は1MBあたりある固定bits(A bits)とする。プレエンコードでのMB Headerの発生符号量が平均で1MBあたり、A bits以上の場合で量子化パラメータQPが27−39の場合は、量子化パラメータQPが40のときに、1MBあたりA bitsになるように直線補間でもとめる。
ここで、固定量子化パラメータQPIは、パラメータエンコードの際に使用されることの多い量子化パラメータQP(例えば「10〜20」程度の値)が設定されることが想定されている。ここで符号化装置では、量子化パラメータQPが増減した場合であってもヘッダ部分のMB発生符号量が大きく変動しないという特性を利用し、固定量子化パラメータQPIに近い「0〜26」では、固定量子化パラメータQPIによるMB発生符号量をそのまま固定量子化パラメータQPI以外の量子化パラメータQPIによるMB発生符号量と予測する。
また符号化装置は、量子化パラメータQPIが一定値を超えると、ヘッダ部分のMB発生符号量が殆ど変化しなくなる特性を利用して、量子化パラメータQPが「40」以上の場合には、固定値「A」bitを固定量子化パラメータQPI以外の量子化パラメータQPIによるMB発生符号量と予測する。
そして符号化装置は、量子化パラメータQPIが「27〜39」の場合には、固定値「A」を量子化パラメータQPが「40」のときのMB発生符号量とし、固定量子化パラメータQPIのときのMB発生符号量を「26」のときのMB発生符号量とし、直線補間によりMB発生符号量を予測する。
これにより符号化装置は、ヘッダ部分の特性を利用して、簡易な処理により高い精度でヘッダ部分のMB発生符号量を予測し得るようになされている。
そして符号化装置は、第1〜第3の実施の形態のいずれかと同様にしてMB目標符号量TargetMB及び基本量子化パラメータQPMBを設定し、上述したレート制御を実行するようになされている。
以上詳述したように、本発明の一実施の形態によれば、MB単位の基本量子化パラメータQPMB、MB目標符号量TargetMBの予測値を精度良く求めることが出来る。本エンコード時のフィードバックは符号量を制御するための保険的な処理である。このため、ピクチャあたりの理想的な符号量配分を予測することが出来、VTRシステムなどで使用するCBRの符号量制御を少ないCostで実現できる。また、TM5などのフィードバック型の符号量制御で問題となる、シーケンスの変った場合の符号量の使いすぎによる時間的な不均衡な歪などを無くすことができる。画質が向上する。さらに、当該ピクチャの絵柄に関わらずより正確なマクロブロック毎のレート配分を行うことができ画質が向上する。これにより、一部画像で符号量不足を原因とする画面下部マクロブロックスキップを防ぐことができる。
(4−3)符号化処理手順
次に、符号化プログラムに従って実行されるMB符号量予測処理について、図17のフローチャートを用いて説明する。
符号化装置のピクチャ符号量予測部221は、固定量子化パラメータQPによって量子化された量子化データに基づく符号化ストリーム(仮量子化データ)が供給されると、符号量のグルーピング部222により、当該符号ストリームのマクロブロックごとの発生符号量GenBitMB及びピクチャタイプから当該マクロブロックをグループに分類し、次のステップS122へ移る。
ステップS222において、ピクチャ符号量予測部221は、マクロブロック符号量予測部223によって、プレコーダ201によるプレコード時に算出した画の特徴に応じて、予測対象となる量子化パラメータQPに対して増減値AddQPを加算し、適応量子化パラメータQPtを算出すると、次のステップS123へ移る。
ステップS123において、ピクチャ符号量予測部221は、マクロブロック符号量予測部223によって、マクロブロックのピクチャタイプに基づいて統計テーブルの中から1つの関係テーブルを選択すると共に、マクロブロックが分類されたグループに基づいて1つの予測テーブルを選択し、当該マクロブロックの適応量子化パラメータQPtにおけるMB発生符号量を読出すと、次のステップS124へ移る。
ステップS124において、ピクチャ符号量予測部221は、マクロブロック符号量予測部223により、プレコード時のMB発生符号量GenBitMBと選択された予測テーブルにおける固定量子化パラメータQPにおける発生符号量との差分値DiffBitsを(15)式に従って算出する。次のステップS125へ移る。
ステップS125において、ピクチャ符号量予測部221は、マクロブロック符号量予測部223により、マクロブロックごとのCoef Costの総和を非ゼロ係数の数(すなわちゼロでない係数の数)で除算することにより、1係数当たりのCoef Costを算出する。さらにマクロブロック符号量予測部223は、プレコード時に算出されたマクロブロックの1係数当たりのCoef Costと、当該マクロブロックが分類されたグループの固定量子化パラメータQPにおいて算出された1係数当たりのCoef Costとの差分値CostDiffを(16)式に従って算出すると、次のステップS126へ移る。
ステップS126において、ピクチャ符号量予測部221は、マクロブロック符号量予測部223により、ピクチャタイプ、グループ、適応量子化パラメータQPtの値ごとに記憶されている補正情報から対応する補正係数RatioCostBitを選択する。さらにマクロブロック符号量予測部223は、当該選択された補正係数とステップS125で算出した差分値CostDiffとを乗算することにより、(17)式に従って補正値CorrectBitsを算出する。
そしてマクロブロック符号量予測部223は、ステップS124において読出した適応量子化パラメータQPtにおけるMB発生符号最に対し、ステップS124において算出した差分値DiffBits及び補正値CorrectBitsを加算することにより、(18)式に従って適応量子化パラメータQPtにおけるMB発生符号量を予測すると、終了ステップへ移って処理を終了し、符号量予測処理手順RT9のステップS113へ戻る。
(4−4)復号化装置
次に、このようにして符号化された本符号化ストリームを復号する復号化装置300の構成を、図20を用いて説明する。
復号化装置300は、本符号化ストリームが供給されると、当該本符号化ストリームに設定された設定情報を用いて当該本符号化ストリームの復号化を行う。具体的に復号化装置300は、本符号化ストリームを復号化部301に供給する。復号化部301は、本符号化ストリームを復号化して量子化データを生成し、逆量子化部302に供給する。
逆量子化部302は、設定情報に設定された量子化パラメータQPを用いて量子化データを逆量子化することにより、DCT係数でなる画像データを復元し、これをIDCT部303へ供給する。IDCT部303は、画像データに対してIDCT処理を施し、差分画像データSADを予測画像加算部304に供給する。
予測画像加算部304は、差分画像データSADに対し、逆イントラ予測処理及び動き予測処理によって予測した予測値を加算し、画像を表すビデオ出力信号を生成し、これを図示しない外部機器などに出力するようになされている。
(4−5)動作及び効果
以上の構成において、符号化装置は、画像データを量子化した後に領域に応じてマクロブロック発生符号量が大きく変化しない符号化方式によって符号化した符号化ストリームを仮量子化データとする。また符号化装置は、予測用量子化データとして予測テーブルを用い、当該予測テーブルにおける固定量子化パラメータQPI以外の量子化パラメータQPに基づく量子化ステップ(すなわち選択されなかった量子化ステップ)におけるMB発生符号量を、可変補正値CorrectBitsを用いて補正することにより、画像データとしてのDCT係数データを当該選択されなかった量子化ステップによって量子化したときのMB発生符号量を予測する。
これにより符号化装置は、領域に応じてマクロブロック発生符号量が大きく変化しない符号化方式によって量子化データを符号化したような場合であっても、選択された固定量子化パラメータQPを用いて算出したMB発生符号量に基づいて固定量子化パラメータQPI以外の量子化パラメータQPにおけるMB発生符号量を予測することが可能となる。
また符号化装置は、画像データに対して所定の直交変換処理であるDCT処理を施すことにより画像データとしてのDCT係数データ(変換係数)を生成し、当該DCT係数データに基づいて、予測曲線における固定量子化パラメータQPI以外の量子化パラメータQPによる量子化ステップ(すなわち選択されなかった量子化ステップ)におけるマクロブロック発生符号量を補正する可変補正値CorrectBitsを選択する。
さらに符号化装置は、DCT係数をゼロにするのに必要となるゼロ量子化ステップに基づく量子化パラメータQPに応じて算出される指標値としてのCoef Costのマクロブロックごとの指標総和として、当該Coef Costの総和を算出する。符号化装置は、当該Coef Costの総和に基づいてMB発生符号量を補正する補正値としての可変補正値CorrectBitsを決定する。
これにより符号化装置は、MB発生符号量に大きな影響を与えるCoef Costに基づいて可変補正値CorrectBitsを決定できるため、MB発生符号量を適切に補正することができる。また符号化装置は、Coef Costの総和を用いることにより、Coef Costの全ての値を用いる場合と比較して、記憶しておく可変補正値CorrectBitsの情報量及び処理負荷を低減させることができる。
また符号化装置は、小さい値でなるゼロ量子化ステップに基づく量子化パラメータQPに対してCoef Costの増減が大きくなるようCoef Costを算出する。
これにより符号化装置は、量子化パラメータQPの増加に応じて「0」になる可能性の高いDCT係数について、Coef Costの増減を大きくすることができ、MB発生符号量の変動の大きさをそのままCoef Costに反映させることができる。
さらに符号化装置は、DCT係数がゼロでない非ゼロ係数の数当たりのCoef Costである1係数当たりのCoef Costに基づいて可変補正値CorrectBitsを決定する。
これにより符号化装置は、MB発生符号量に大きな影響を与える非ゼロ係数の数を可変補正値CorrectBitsを決定する際の因子とすることができるため、補正によるMB発生符号量の予測精度を向上させることができる。
また符号化装置は、DCT係数がゼロでない非ゼロ係数の数当たりのCoef Cost及びMB発生符号量の予測対象となる固定量子化パラメータQPI以外の量子化パラメータQPによる量子化ステップ(すなわち選択されなかった量子化ステップ)に基づいて可変補正値CorrectBitsを決定する。
これにより符号化装置は、固定量子化パラメータQPIと当該固定量子化パラメータQPI以外の量子化パラメータQPとの差分(すなわち選択された量子化ステップと選択されなかった量子化ステップとの差分)に応じた可変補正値CorrectBitsを決定することができるため、補正によるMB発生符号量の予測精度を向上させることができる。
さらに符号化装置は、仮量子化データである符号化ストリームのMB発生符号量に応じて、選択された予測テーブルの固定量子化パラメータQPI以外の量子化ステップにおけるMB発生符号量を補正する可変補正値CorrectBitsを決定する。
また符号化装置は、予測テーブルの選択された量子化ステップ(固定量子化パラメータQPIに基づく量子化ステップ)におけるMB発生符号量から、予測テーブルが表す予測用量子化データにおける当該選択された量子化ステップによるMB発生符号量の差分値として固定補正値DiffBitsを算出する。そして符号化装置は、選択されなかった量子化パラメータQP(すなわち固定量子化パラメータQPI以外のに応じてによる予測テーブルが表すMB発生符号量に対して固定補正値DiffBitsを加算することにより、当該選択されなかった量子化ステップによるMB発生符号量を予測する。
これにより符号化装置は、予測量子化データへのグループ分けの際に生じる誤差を固定補正値DiffBitsによって補正することができるため、MB発生符号量の予測精度を向上させることができる。
さらに符号化装置は、画像データのうち、画像部分のMB発生符号量と、画像データのうち、ヘッダ部分のMB発生符号量とを別々に予測する。
これにより符号化装置は、増減傾向が異なる画像部分及びヘッダ部分のMB発生符号量を別々に予測できるため、MB発生符号量の予測精度を向上させることができる。
また符号化装置は、選択されなかった量子化ステップの基となる固定量子化パラメータQPI以外の量子化パラメータQPが選択された量子化ステップの基になる固定量子化パラメータQPIに近い「0〜26」までの第1のステップ範囲である場合には、当該固定量子化パラメータQPIにおけるヘッダ部分のMB発生符号量を固定量子化パラメータQPI以外の量子化パラメータQPにおけるヘッダ部分のMB発生符号量とする。
さらに符号化装置は、選択されなかった量子化ステップの基となる固定量子化パラメータQPI以外の量子化パラメータQPが選択された量子化ステップの基になる固定量子化パラメータQPIから遠い「40」以上の第2のステップ範囲である場合には、予め定められた固定値「A」でなる固定のMB発生符号量を固定量子化パラメータQPI以外の量子化パラメータQPにおけるヘッダ部分のMB発生符号量とする。
加えて符号化装置は、選択されなかった量子化ステップの基になる固定量子化パラメータQPI以外の量子化パラメータQPが「0〜26」及び「40」以上の間となる「27〜39」の第3のステップ範囲である場合には、選択された量子化ステップの基になる固定量子化パラメータQPIにおけるMB発生符号量と固定のMB発生符号量(ただし、量子化パラメータQPIを第1のステップ範囲の最大値「26」及び第2のステップ範囲の最小値「40」とする)との直線補間により算出された値を固定量子化パラメータQPI以外の量子化パラメータQPにおけるMB発生符号量とする。
これにより符号化装置は、ヘッダ部分の特性に応じてMB発生符号量を予測することができるため、MB発生符号量の予測精度を向上させることができる。
符号化装置は、画像データを量子化した後に算術符号化によって符号化することにより本量子化データとしての本符号化ストリームを生成し、画像データを量子化した後に、コンテキストを適用的に変更してなる可変長符号化によって符号化することにより仮の量子化データとしての仮符号化ストリームを生成する。
これにより符号化装置は、算術符号化よりも簡易な可変長符号化を用いて各画像データのMB発生符号量を予測できるため、構成を簡易にすることができる。また、コンテキストを適用的に変更してなる可変長符号化を用いることにより、算術符号化との間に生じる誤差を小さくし得る。
以上の構成によれば、符号化装置は、予測テーブルにおいて固定量子化パラメータQPI以外の量子化パラメータQPが示すMB発生符号量を符号化方式に応じて補正することにより、固定量子化パラメータQPに基づくMB発生符号量に基づいて、固定量子化パラメータQPI以外の量子化パラメータによるMB発生符号量を高い精度で予測することができる。
(5)他の実施の形態
なお上述した第1の実施の形態においては、固定量子化スケールQIを「10」に設定するようにした場合について述べた。本発明はこれに限らず、1〜31でなる量子化インデックスの中から任意に選択することが可能である。また第4の実施の形態における固定量子化パラメータQPIについても同様であり、0〜51でなる量子化インデックスの中から任意に選択することが可能である。
また上述した第1〜第4の実施の形態においては、16×16画素でなるマクロブロックを量子化単位とするようにした場合について述べた。本発明はこれに限らず、例えば8×8画素のサブマクロブロックや4×4画素を量子化単位としても良く、量子化単位となる画素数について特に制限はない。
さらに上述した第1〜第4の実施の形態においては、ピクチャを符号化単位とするようにした場合について述べたが、本発明はこれに限られない。例えば所定数のピクチャからなるGOPや、複数のマクロブロックからなるスライス、2つのピクチャからなるフレームなどを符号化単位とするようにしても良く、特に制限はない。
さらに上述した第1〜第3の実施の形態においては、MPEG−2に準拠して符号化が実行されるようにした場合について述べたが、本発明はこれに限られない。また第4の実施の形態についても同様であり、AVC規格に限られない。符号化方式について特に制限されず、要は予め定められた複数の量子化ステップによって量子化がなされる全ての符号化装置に適用することが可能である。
さらに上述した第1〜第4の実施の形態においては、あるMB発生符号量を有する複数の複数の予測用量子化データについて、統計的に量子化スケールQ又は量子化パラメータQPとMB発生符号量の関係を採取し、関係情報として記憶するようにした場合について述べた。本発明はこれに限られず、例えば量子化スケールQ又は量子化パラメータQPと複数の予測用量子化データについてのMB発生符号量の関係を離散的に採取し、これらに基づく変換式などにより、線形補間などにより近似的に予測用量子化データのMB発生符号量を予測し、関係情報として記憶することも可能である。またこの関係情報は、必ずしもピクチャタイプごとに生成されなくても良い。さらに、関係情報に設定される予測量子化データ(すなわちグループ)の数も任意に設定することができる。
さらに上述した第1〜第4の実施の形態においては、パラメータエンコード(本符号化)において適応量子化を実行するようにした場合について述べた。本発明はこれに限られず、必ずしも適応量子化を実行する必要はない。この場合、プレエンコード(仮符号化)の際にも、適応量子化(アクティビティによる量子化ステップの増減)が不要となる。また、適応量子化の指標として必ずしもアクティビティを用いる必要はなく、他の指標を用いて適応量子化を実行することもできる。
さらに上述した第1〜第4の実施の形態においては、他の量子化ステップによるMB発生符号量を予測して、レート制御による目標発生符号量TargetMBに反映させるようにした場合について述べた。本発明はこれに限らず、例えば符号化ストリームが記憶媒体の記憶容量内に収納可能か否かを判別する処理や、圧縮率を決定する処理において使用されるようにしても良い。
さらに上述した第1〜第4の実施の形態においては、基本量子化スケールQから変動させた変動量子化スケールQSMB又は基本量子化パラメータQPに基づく基本量子化ステップから変動させた変動量子化パラメータQPSMBに基づく変動量子化ステップによって量子化することにより、ピクチャ発生符号量をピクチャ目標符号量に近づけるようにした場合について述べた。本発明はこれに限らず、単純に基本量子化スケールQや基本量子化パラメータQPを用いて量子化しても良い。
さらに上述した第1〜第4の実施の形態においては、ピクチャ発生符号量がピクチャ目標符号量pictBitよりも小さく、かつ最も近い量子化スケールQ又は量子化パラメータQPを平均量子化スケールQaとするようにした場合について述べた。本発明はこれに限らず、例えばピクチャ発生符号量がピクチャ目標符号量pictBitに最も近い量子化スケールQ選択しても良い。量子化パラメータQPについても同様である。
さらに上述した第4の実施の形態においては、可変補正値CorrectBitsを決定するための指標値としてCoef Costを用いるようにした場合について述べた。本発明はこれに限らず、その他種々の方法により可変補正値CorrectBitsを決定することができる。また、Coef Costを総和ではなく単体として使用したり、1係数当たりでなくCoef Cost同士を比較したりしても良い。またCoef Costの算出方法にも制限はなく、DCT係数に対して単純に比例するような値をCoef Costとして用いても良い。
さらに上述した第4の実施の形態においては、固定補正値CostDiffを加算するようにした場合について述べた。本発明はこれに限らず、必ずしも固定補正値CostDiffによる補正は必要ではない。
さらに上述した第4の実施の形態においては、画像部分とヘッダ部分のMB発生符号量を別々に予測するようにした場合について述べた。本発明はこれに限らず、同時に予測することも可能である。またヘッダ部分のMB発生符号量の予測方法に制限はなく、例えば画像部分と同様に、ヘッダ部分専用の関係情報を用いるようにすることもできる。
さらに上述した第4の実施の形態においては、算術符号化により本符号化処理を実行する一方、可変長符号化により仮符号化処理を実行する場合について述べた。本発明はこれに限らず、符号化方式に制限はなく、同一の符号化方式により符号化しても良く、また他の符号化方式を用いることもできる。
以上、本発明の実施の形態について説明したが、本発明はこれに限定されることなくその趣旨を逸脱しない範囲で種々の改良・変更が可能であることは勿論である。また上述した第1〜第4の実施の形態の構成を適宜組み合わせることが可能である。
例えば、前述した第1〜第4の実施の形態に係る画像処理装置及び方法は、コンピュータにより実行されるプログラム、及び該プログラムを格納した記録媒体としても実施可能であることは勿論であり、その場合も、前述した作用効果が奏される。

Claims (20)

  1. 複数の量子化ステップのうち、量子化単位ごとに量子化ステップを選択する量子化選択部と、
    上記量子化選択部によって選択された量子化ステップで画像データを量子化して仮の量子化データを生成し、当該仮の量子化データの量子化単位ごとの発生符号量である量子化単位発生符号量を算出する仮符号化部と、
    上記量子化選択部によって選択された量子化ステップにおいて上記量子化単位発生符号量が相違する複数の予測用量子化データについて、上記複数の量子化ステップと上記量子化単位発生符号量との関係を表す関係情報を記憶する記憶部と、
    上記仮の量子化データの上記量子化単位発生符号量及び上記量子化選択部によって選択された量子化ステップに基づいて上記関係情報から予測用量子化データを選択するデータ選択部と、
    上記データ選択部によって選択された上記予測用量子化データに基づいて、上記複数の量子化ステップのうち、上記量子化選択部によって選択されなかった量子化ステップによって上記画像データを量子化したときの上記量子化単位発生符号量を予測する符号量予測部と
    を有する画像処理装置。
  2. 予測した上記量子化単位発生符号量を積算することにより、符号化単位ごとの上記量子化データの発生符号量である符号化単位発生符号量を予測する符号化単位発生符号量予測部
    を有する請求項1に記載の画像処理装置。
  3. 上記複数の量子化ステップのうち、上記符号化単位発生符号量が上記符号化単位ごとの目標となる符号化単位目標符号量に近づくよう基本量子化ステップを予測する基本量子化ステップ予測部
    を有する請求項2に記載の画像処理装置。
  4. 上記量子化単位ごとに上記画像データを量子化し、本量子化データを生成する本符号化部と、
    上記本量子化データの上記符号化単位発生符号量が上記符号化単位目標符号量に近づくよう、上記基本量子化ステップから変動させた変動量子化ステップで上記画像データを量子化させるよう上記本符号化部を制御する符号量制御部と
    を有する請求項3に記載の画像処理装置。
  5. 本量子化データの上記量子化単位発生符号量と上記量子化単位ごとの発生符号量の目標となる量子化単位目標符号量との符号量の差分に基づいて上記変動量子化ステップを決定する変動量子化ステップ決定部
    を有する請求項4に記載の画像処理装置。
  6. 上記基本量子化ステップ予測部によって予測された上記基本量子化ステップに基づいて予測した上記量子化単位発生符号量を、上記量子化単位目標符号量とする量子化単位目標符号量設定部
    を有する請求項4に記載の画像処理装置。
  7. 上記符号量制御部は、
    上記量子化選択部によって選択された量子化ステップによる上記符号化単位発生符号量に対する上記符号化単位目標符号量の比率を、上記量子化選択部によって選択された量子化ステップに基づく上記量子化単位発生符号量に対して乗算した値を、上記量子化単位目標符号量とする量子化単位目標符号量設定部
    を有する請求項4に記載の画像処理装置。
  8. 上記基本量子化ステップ予測部は、
    上記符号化単位発生符号量が上記符号化単位目標符号量よりも小さく、かつ上記符号化単位発生符号量及び上記符号化単位目標符号量の差分が最小となる平均量子化ステップを選択し、当該平均量子化ステップに対してアクティビティ増減値を加減することにより、上記基本量子化ステップを予測する
    請求項1に記載の画像処理装置。
  9. 上記仮符号化部は、
    上記量子化選択部によって選択された量子化ステップにより上記符号化単位の上記画像データを量子化する
    請求項1に記載の画像処理装置。
  10. 上記記憶部は、
    ピクチャタイプごとに上記関係情報を記憶し、
    上記符号量予測部は、
    上記ピクチャタイプに応じた関係情報から上記予測用量子化データを選択する
    請求項1に記載の画像処理装置。
  11. 上記仮符号化部は、
    上記量子化単位ごとの上記画像データに応じた量子化ステップにより上記画像データを量子化する
    請求項1に記載の画像処理装置。
  12. 上記仮符号化部は、
    上記画像データを量子化した後に固定的なテーブルを用いて可変長符号化することにより上記仮量子化データを生成し、
    上記符号量予測部は、
    上記データ選択部によって選択された上記予測用量子化データの上記量子化選択部によって選択されなかった量子化ステップにおける上記量子化単位発生符号量を、上記量子化選択部によって選択されなかった量子化ステップによって上記画像データを量子化したときの上記量子化単位発生符号量として予測する
    請求項1に記載の画像処理装置。
  13. 上記仮符号化部は、
    上記画像データを量子化した後に領域に応じて上記量子化単位発生符号量が大きく変化しない符号化方式によって符号化することにより上記仮量子化データを生成し、
    上記符号量予測部は、
    上記データ選択部によって選択された上記予測用量子化データの上記量子化選択部によって選択されなかった量子化ステップにおける上記量子化単位発生符号量を補正することにより、上記量子化選択部によって選択されなかった量子化ステップによって上記画像データを量子化したときの発生符号量を予測する
    請求項1に記載の画像処理装置。
  14. 上記仮符号化部は、
    画像データに対して所定の直交変換処理を施すことにより、上記画像データを生成し、
    上記符号量予測部は、
    上記画像データにおける変換係数に基づいて、上記データ選択部によって選択された上記予測用量子化データの上記量子化選択部によって選択されなかった量子化ステップにおける上記量子化単位発生符号量を補正する補正値を決定する
    請求項13に記載の画像処理装置。
  15. 上記符号量予測部は、
    上記変換係数をゼロにするのに必要となるゼロ量子化ステップに応じて算出される指標値の上記量子化単位ごとの指標総和を算出し、当該指標総和に基づいて上記量子化単位発生符号量を補正する補正値を決定する
    請求項14に記載の画像処理装置。
  16. 上記符号量予測部は、
    上記量子化選択部によって選択された量子化ステップにおける上記予測用量子化データの発生符号量からの上記量子化単位発生符号量の差分を、上記量子化選択部によって選択されなかった量子化ステップによる上記予測用量子化データの量子化単位発生符号量に対して加算することにより、上記量子化選択ステップによって選択されなかった量子化ステップによる上記量子化単位発生符号量を予測する
    請求項1に記載の画像処理装置。
  17. 上記符号量予測部は、
    上記画像データのうち、画像部分の上記量子化単位発生符号量を予測する画像符号量予測部と、
    上記画像データのうち、ヘッダ部分の上記量子化単位発生符号量を予測するヘッダ符号量予測部と
    を有する請求項1に記載の画像処理装置。
  18. 上記仮符号化部は、
    AVC規格に従って上記量子化データを生成し、
    上記符号量予測部は、
    上記画像データのうち、画像部分の上記量子化単位発生符号量を予測する画像符号量予測部と、
    上記画像データのうち、ヘッダ部分の上記量子化単位発生符号量を予測するヘッダ符号量予測部とを有し、
    上記ヘッダ符号量予測部は、
    量子化ステップの基になる0〜51の量子化パラメータのうち、上記量子化選択部によって選択されなかった量子化ステップが26以下の上記量子化パラメータに基づくときには上記量子化選択部によって選択された量子化ステップにおける上記量子化単位発生符号量を上記量子化選択部によって選択されなかった量子化ステップにおける上記量子化単位発生符号量とする第1のヘッダ符号量予測部と、
    上記量子化選択部によって選択されなかった量子化ステップが40以上51以下の上記量子化パラメータに基づくときには、予め定められた固定値でなる固定発生符号量を上記量子化選択部によって選択されなかった量子化ステップにおける上記量子化単位発生符号量とする第2のヘッダ符号量予測部と、
    上記量子化選択部によって選択されなかった量子化ステップが27以上39以下の上記量子化パラメータに基づくときには、上記量子化選択部によって選択された量子化ステップにおける上記量子化単位発生符号量と上記固定発生符号量(ただし、量子化ステップをそれぞれ第1のステップ範囲の最大値及び第2のステップ範囲の最小値とする)との直線補間により算出された値を上記量子化選択部によって選択されなかった量子化ステップにおける上記量子化単位発生符号量とする第3のヘッダ符号量予測部と
    を有する請求項13に記載の画像処理装置。
  19. 上記本符号化部は、
    画像データを量子化した後に算術符号化によって符号化することにより上記本量子化データを生成し、
    上記仮符号化部は、
    画像データを量子化した後に、コンテキストを適用的に変更してなる可変長符号化によって符号化することにより上記仮の量子化データを生成する
    請求項4に記載の画像処理装置。
  20. 複数の量子化ステップのうち、量子化単位ごとに量子化ステップを選択する量子化選択ステップと、
    上記選択ステップにおいて選択された量子化ステップで画像データを量子化して仮の量子化データを生成し、当該仮の量子化データの量子化単位ごとの発生符号量である量子化単位発生符号量を算出する仮符号化ステップと、
    上記量子化選択ステップで選択された量子化ステップにおいて上記量子化単位発生符号量が相違する複数の予測用量子化データについて、上記複数の量子化ステップと上記量子化単位発生符号量との関係を表す関係情報を記憶する記憶ステップと、
    上記仮の量子化データの上記量子化単位発生符号量及び上記量子化選択ステップで選択された量子化ステップに基づいて、上記関係情報から予測用量子化データを選択するデータ選択ステップと、
    上記量子化選択ステップにおいて選択された上記予測用量子化データに基づいて、上記複数の量子化ステップのうち、上記量子化選択部によって選択されなかった量子化ステップによって上記画像データを量子化したときの上記量子化単位発生符号量を予測する符号量予測ステップと
    を有する画像処理方法。
JP2009532266A 2007-09-12 2008-09-12 画像処理装置及び方法 Expired - Fee Related JP5365518B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009532266A JP5365518B2 (ja) 2007-09-12 2008-09-12 画像処理装置及び方法

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2007236944 2007-09-12
JP2007236944 2007-09-12
JP2008169396 2008-06-27
JP2008169396 2008-06-27
JP2009532266A JP5365518B2 (ja) 2007-09-12 2008-09-12 画像処理装置及び方法
PCT/JP2008/066910 WO2009035143A1 (ja) 2007-09-12 2008-09-12 画像処理装置及び方法

Publications (2)

Publication Number Publication Date
JPWO2009035143A1 true JPWO2009035143A1 (ja) 2010-12-24
JP5365518B2 JP5365518B2 (ja) 2013-12-11

Family

ID=40452143

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009532266A Expired - Fee Related JP5365518B2 (ja) 2007-09-12 2008-09-12 画像処理装置及び方法

Country Status (4)

Country Link
US (1) US8238423B2 (ja)
JP (1) JP5365518B2 (ja)
CN (1) CN101637026B (ja)
WO (1) WO2009035143A1 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4569840B2 (ja) * 2007-09-12 2010-10-27 ソニー株式会社 画像符号化装置、画像符号化方法
US8270745B2 (en) * 2008-06-27 2012-09-18 Sony Corporation Image processing device and image processing method
JPWO2009157581A1 (ja) * 2008-06-27 2011-12-15 ソニー株式会社 画像処理装置及び画像処理方法
CN101779469A (zh) * 2008-06-27 2010-07-14 索尼公司 图像处理装置和图像处理方法
BRPI0904320A2 (pt) * 2008-06-27 2015-06-30 Sony Corp Dispositivo e método de processamento de imagem
JP4784650B2 (ja) * 2009-01-07 2011-10-05 ソニー株式会社 符号化装置、目標符号量調整方法及び記録媒体
CN102282770B (zh) * 2009-01-23 2014-04-16 日本电信电话株式会社 一种参数选择方法、参数选择装置
JP5257215B2 (ja) * 2009-04-16 2013-08-07 ソニー株式会社 画像符号化装置と画像符号化方法
JP5251774B2 (ja) * 2009-07-27 2013-07-31 ソニー株式会社 画像符号化装置および画像符号化方法
JP2011029956A (ja) * 2009-07-27 2011-02-10 Sony Corp 画像符号化装置および画像符号化方法
JP2011029954A (ja) * 2009-07-27 2011-02-10 Sony Corp 画像符号化装置と画像符号化方法
CN101729900B (zh) * 2009-11-17 2014-03-26 北京中星微电子有限公司 离散余弦变换系数的量化控制方法和量化装置
JP5484083B2 (ja) * 2010-01-14 2014-05-07 株式会社メガチップス 画像処理装置
JP5396302B2 (ja) * 2010-02-08 2014-01-22 パナソニック株式会社 映像信号符号化装置及び映像信号符号化方法
KR101645465B1 (ko) * 2010-07-23 2016-08-04 삼성전자주식회사 휴대용 단말기에서 입체 영상 데이터를 생성하기 위한 장치 및 방법
WO2012117744A1 (en) * 2011-03-03 2012-09-07 Panasonic Corporation Method of encoding an image into a coded image, method of decoding a coded image, and apparatuses thereof
ES2715704T3 (es) * 2011-03-09 2019-06-05 Nec Corp Dispositivo de decodificación de vídeo, método de decodificación de vídeo y programa de decodificación de vídeo
JP5947641B2 (ja) * 2012-07-06 2016-07-06 キヤノン株式会社 動画像符号化装置及びその制御方法、コンピュータプログラム
US9516305B2 (en) 2012-09-10 2016-12-06 Apple Inc. Adaptive scaler switching
FR3024314B1 (fr) * 2014-07-25 2017-12-08 Allegro Dvt Codeur de video a faible latence
WO2016164459A1 (en) 2015-04-10 2016-10-13 Red.Com, Inc. Video camera with rate control video compression
CN107113430B (zh) * 2016-10-12 2019-04-30 深圳市大疆创新科技有限公司 码率控制的方法、计算机系统和装置
KR102620350B1 (ko) 2017-07-05 2024-01-02 레드.컴, 엘엘씨 전자 디바이스에서의 비디오 이미지 데이터 처리
DE102018110383A1 (de) * 2018-04-30 2019-10-31 Basler Ag Verfahren und Vorrichtung zum Kodieren von Bilddaten

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04114585A (ja) * 1990-09-04 1992-04-15 Matsushita Electric Ind Co Ltd 動き補償フレーム間符号化装置
JP2908550B2 (ja) 1990-09-28 1999-06-21 株式会社東芝 養液栽培装置
JPH04341085A (ja) * 1991-05-17 1992-11-27 Oki Electric Ind Co Ltd 動画像符号化装置
US5703646A (en) 1993-04-09 1997-12-30 Sony Corporation Picture encoding method, picture encoding apparatus and picture recording medium
JP3358620B2 (ja) 1993-04-09 2002-12-24 ソニー株式会社 画像符号化方法及び画像符号化装置
JP3264043B2 (ja) 1993-04-30 2002-03-11 ソニー株式会社 量子化コントロール装置および方法
EP0671816B1 (en) 1993-09-28 2000-03-29 Sony Corporation Encoding/decoding device with all odd or all even value rounding
JP2882287B2 (ja) 1994-08-22 1999-04-12 日本電気株式会社 動画像符号化装置
US5870145A (en) 1995-03-09 1999-02-09 Sony Corporation Adaptive quantization of video based on target code length
JPH09247675A (ja) * 1996-03-13 1997-09-19 Fuji Film Micro Device Kk 画像圧縮方法および画像圧縮システム
US6100931A (en) 1996-03-19 2000-08-08 Sony Corporation Method and apparatus for controlling a target amount of code and for compressing video data
JPH09294263A (ja) 1996-04-24 1997-11-11 Victor Co Of Japan Ltd 画像情報圧縮装置
US6337879B1 (en) 1996-08-14 2002-01-08 Sony Corporation Video data compression apparatus and method of same
JP3864461B2 (ja) 1996-08-30 2006-12-27 ソニー株式会社 映像データ圧縮装置およびその方法
JPH1079948A (ja) * 1996-09-03 1998-03-24 Mitsubishi Electric Corp 画像符号化装置
JP4114210B2 (ja) 1996-12-12 2008-07-09 ソニー株式会社 映像データ圧縮装置およびその方法
WO1998026602A1 (en) 1996-12-12 1998-06-18 Sony Corporation Equipment and method for compressing picture data
CN1152576C (zh) 1997-07-08 2004-06-02 索尼公司 视频数据编码装置、编码方法和传送装置
JP3356663B2 (ja) * 1997-10-22 2002-12-16 松下電器産業株式会社 画像符号化装置、画像符号化方法および画像符号化プログラムを記録した記録媒体
JP4511649B2 (ja) 1999-02-03 2010-07-28 三菱電機株式会社 画像符号化方式および画像符号化装置
JP2002010259A (ja) * 2000-06-21 2002-01-11 Mitsubishi Electric Corp 画像符号化装置及び画像符号化方法及び画像符号化プログラムを記録した記録媒体
JP2002359853A (ja) 2001-03-26 2002-12-13 Sony Corp 画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体
JP2002290914A (ja) 2001-03-26 2002-10-04 Sony Corp 記録再生装置及びそのバックサーチ方法
EP1377070A4 (en) 2001-03-28 2010-08-11 Sony Corp QUANTIZATION DEVICE, QUANTIZATION PROCESS, QUANTIZATION PROGRAM AND RECORDING MEDIUM
US6865225B2 (en) * 2001-03-30 2005-03-08 Sony Corporation Image signal quantizing device and its method
US6934330B2 (en) 2001-08-01 2005-08-23 Sony Corporation Image processing apparatus
EP2860978B1 (en) 2002-05-28 2020-04-08 Dolby International AB Method and systems for image intra-prediction mode estimation, communication, and organization
US7236524B2 (en) 2002-05-28 2007-06-26 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode communication
US7386048B2 (en) 2002-05-28 2008-06-10 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode organization
US7289672B2 (en) 2002-05-28 2007-10-30 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode estimation
US7054497B2 (en) * 2002-06-14 2006-05-30 Koninklijke Philips Electronics N.V. Method and system for optimizing image sharpness during coding and image enhancement
JP2004056680A (ja) * 2002-07-23 2004-02-19 Ricoh Co Ltd 画像処理装置および画像処理方法
JP4114585B2 (ja) * 2002-09-27 2008-07-09 東洋インキ製造株式会社 ガスバリア性積層体の製造方法
JP4127818B2 (ja) * 2003-12-24 2008-07-30 株式会社東芝 動画像符号化方法及びその装置
JP4247680B2 (ja) * 2004-07-07 2009-04-02 ソニー株式会社 符号化装置、符号化方法、符号化方法のプログラム及び符号化方法のプログラムを記録した記録媒体
CN1275469C (zh) * 2004-11-10 2006-09-13 华中科技大学 一种复杂度可分级的帧内预测方法
JP4235162B2 (ja) 2004-11-18 2009-03-11 日本電信電話株式会社 画像符号化装置,画像符号化方法,画像符号化プログラムおよびコンピュータ読み取り可能な記録媒体
JP2006222555A (ja) * 2005-02-08 2006-08-24 Matsushita Electric Ind Co Ltd 符号化装置及び符号化方法
JP4050754B2 (ja) 2005-03-23 2008-02-20 株式会社東芝 ビデオエンコーダ及び動画像信号の符号化方法
KR20070024211A (ko) * 2005-08-26 2007-03-02 삼성전자주식회사 영상압축장치 및 방법
JP4246723B2 (ja) 2005-08-29 2009-04-02 日本電信電話株式会社 フレーム内予測符号化制御方法、フレーム内予測符号化制御装置、フレーム内予測符号化制御プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Also Published As

Publication number Publication date
CN101637026B (zh) 2012-03-28
WO2009035143A1 (ja) 2009-03-19
US8238423B2 (en) 2012-08-07
JP5365518B2 (ja) 2013-12-11
US20100135386A1 (en) 2010-06-03
CN101637026A (zh) 2010-01-27

Similar Documents

Publication Publication Date Title
JP5365518B2 (ja) 画像処理装置及び方法
JP4388877B2 (ja) ビデオエンコーダレート制御用装置、システムおよび方法
JP4569840B2 (ja) 画像符号化装置、画像符号化方法
US7349474B2 (en) Method and apparatus for variable bit-rate control in video encoding systems and computer program product therefor
US8077775B2 (en) System and method of adaptive rate control for a video encoder
JP5472106B2 (ja) 画像処理装置及び画像処理方法
US20070071094A1 (en) Video encoding method, apparatus, and program
JP5472105B2 (ja) 画像処理装置及び画像処理方法
US8681858B2 (en) Rate control for two-pass encoder
KR100238066B1 (ko) 양자화활동도를 이용한 비트 발생량 제어방법 및 그 영상 부호화장치
KR19990076563A (ko) 동화상 부호화 방식
CN101395923A (zh) 用于在图像信号编码中为图像中的像素块组确定比特分配的方法及设备
EP2027727A1 (en) Method and apparatus for adaptively determining a bit budget for encoding video pictures
JP7015183B2 (ja) 画像符号化装置及びその制御方法及びプログラム
US6879632B1 (en) Apparatus for and method of variable bit rate video coding
CN101335891A (zh) 视频速率控制方法及视频速率控制器
JP2011029954A (ja) 画像符号化装置と画像符号化方法
KR100708182B1 (ko) 동영상 부호화기의 비트율 제어 장치 및 방법
JP2004328150A (ja) 動画像符号化装置及び方法
Lee et al. A rate control algorithm for DCT-based video coding using simple rate estimation and linear source model
KR100678843B1 (ko) 엠펙비디오 인코더의 인트라 프레임 양자화 시스템 및 방법
CN114466190B (zh) 一种图像集合级别的码率控制方法
US8711927B2 (en) System and method for video encoding
JP2008078978A (ja) 動画像符号化装置
Hsu et al. A predictive H. 263 bit-rate control scheme based on scene information

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110831

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130514

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130711

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130826

LAPS Cancellation because of no payment of annual fees