JP4254784B2 - 動画像符号化装置、方法及びプログラム - Google Patents

動画像符号化装置、方法及びプログラム Download PDF

Info

Publication number
JP4254784B2
JP4254784B2 JP2006021965A JP2006021965A JP4254784B2 JP 4254784 B2 JP4254784 B2 JP 4254784B2 JP 2006021965 A JP2006021965 A JP 2006021965A JP 2006021965 A JP2006021965 A JP 2006021965A JP 4254784 B2 JP4254784 B2 JP 4254784B2
Authority
JP
Japan
Prior art keywords
buffer
code amount
bit rate
adjustment
encoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006021965A
Other languages
English (en)
Other versions
JP2007208377A (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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2006021965A priority Critical patent/JP4254784B2/ja
Publication of JP2007208377A publication Critical patent/JP2007208377A/ja
Application granted granted Critical
Publication of JP4254784B2 publication Critical patent/JP4254784B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、動画像の符号化技術に関し、より詳しくは、目標とする平均ビットレートの符号化データを出力するために必要であり、かつ、復号装置においてバッファを破綻、つまり、バッファのオーバフロー及びアンダフローを発生させることのない各フレームの符号量を算出し、算出した符号量となるように符号化を行う動画像の符号化技術に関する。
特許文献1には、動画像の各フレームの符号化に必要な符号量を、事前解析により決定し、決定した符号量で符号化した場合における符号化用バッファのバッファ占有量の遷移を計算し、符号化用バッファの破綻が生じる場合には、符号化用バッファの破綻回避のために、フレームの符号量を調整する符号化方法について記載されている。ここで、バッファの破綻とは、バッファにおいてオーバフロー又はアンダフローが発生することをいう。
図6は、特許文献1に記載の符号化方法を説明する図であり、符号化用バッファのバッファ占有量と時間との遷移関係を示したものである。符号化用バッファには、動画像のフレームの符号化が行われる度に符号化データが入力されるため、フレーム間隔毎にバッファ占有量が垂直に立ち上がり、また、符号化用バッファからは一定のビットレートにて符号化データが読み出されるため、時間の経過と共に、ビットレートに応じた傾きでバッファ占有量が減少する。
各フレームの符号量と、フレーム間隔毎に符号化用バッファから読み出されるデータ量とが等しい場合、バッファ占有量はほぼ一定の値となるが、動き補償予測等を用いる各種動画像の圧縮符号化方式では、符号量はフレームごとに異なり、したがって、バッファ占有量は時間と共に増減する。
図6においては、符号80で示すフレーム位置においてオーバフローが発生している。特許文献1によると、符号80で示すフレーム位置でのオーバフローを回避するため、符号80で示すフレーム以前のフレームの符号量を減少させ、減少させた符号量だけ、区間92で示す、符号80で示すフレーム以後のフレームの符号量を増加させている。尚、アンダフローの場合も、符号量の減少/増加がオーバフローのときと反転する以外は同じである。
特開2002−232882号公報
特許文献1では、バッファ破綻が生ずるフレーム以前のフレームの符号量を、オーバフローの場合は減少させ、アンダフローの場合は増加させることで、バッファ破綻を回避し、かつ、バッファ破綻が生ずるフレーム以後のフレームで、バッファ破綻の回避のために増加又は減少させた符号量の補償を行っているが、調整するフレームの範囲については規定されていない。
例えば、図6に示す区間90のように、オーバフロー発生時点直近の、わずかなフレームで調整を行うと、1フレーム当たりの符号量を大きく減少させねばならず、符号量を減少させたフレームの画質の劣化が顕著になってしまう。一方、図6に示す区間91のように、オーバフロー発生時点のかなり前のフレームからフレームの符号量を減少させると、例えば、符号81で示すフレーム位置のようなバッファ占有量が少ない位置において、符号量の調整による他のアンダフローを発生させてしまう可能性が増大する。また、バッファ占有量の遷移の傾向が同じ区間は、フレームに割り当てられる符号量がほぼ同じであり、画像性質も同様な傾向を示す区間であると考えられる。逆に言うと、図6の符号81で示すフレーム位置のような、バッファ占有量の遷移の傾向が変化する点は、画像性質の変化点であると考えられる。このため、区間91の様に、バッファ占有量の遷移の傾向が変化する符号81で示すフレーム位置を跨ぐ区間においてフレームの符号量を調整すると、符号81で示すフレーム位置を境に主観画質に悪影響を与える可能性がある。
したがって、本発明は、復号装置においてバッファを破綻させることがなく、バッファ破綻回避のためのバッファ占有量の調整に起因する画質劣化を極力低減する動画像符号化装置、方法及びプログラムを提供することを目的とする。
本発明における動画像符号化装置によれば、
動画像符号化装置であって、所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出する中間符号量算出手段と、中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するバッファ遷移算出手段と、バッファ破綻発生を判定するためのバッファ占有量の閾値を有し、閾値に基づく判定によりバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、中間符号量及び/又は目標ビットレートを調整してバッファ占有量を閾値以内に変更する調整手段と、割当符号量に基づき量子化パラメータを決定する量子化パラメータ決定手段と、量子化パラメータ決定手段が決定する量子化パラメータに基づき動画像の符号化を行う動画像符号化手段とを有している。ここで、中間符号量のみを調整する場合、割当符号量は調整後の中間符号量であり、目標ビットレートのみを調整する場合、割当符号量は中間符号量算出手段が算出した中間符号量に等しく、動画像符号化手段は、量子化パラメータに基づき動画像の符号化を行って符号化データを生成し、符号化データを、調整手段による調整後の目標ビットレートを示す割当ビットレート情報と共に出力する。さらに、中間符号量及び目標ビットレートを調整する場合、割当符号量は調整後の中間符号量であり、動画像符号化手段は、動画像の符号化を行って符号化データを生成し、符号化データを、調整手段による調整後の目標ビットレートを示す割当ビットレート情報と共に出力する。
本発明の動画像符号化装置における他の実施形態によれば、
調整手段は、フレーム順にバッファ破綻発生を判定し、バッファ破綻発生による調整を行った場合、該調整を行った調整区間以後については、該調整による変更後のバッファ占有量に基づきバッファ破綻発生を判定することも好ましい。
また、本発明の動画像符号化装置における他の実施形態によれば、
調整手段は、1つ以上の調整区間で調整を行った場合、バッファ遷移算出手段が算出したバッファ占有量からの調整に伴う変更分を、最後の極点から最終フレームの区間で補償することも好ましい。
更に、本発明の動画像符号化装置における他の実施形態によれば、
量子化パラメータ決定手段は、1回目の符号化では所定の量子化パラメータを出力し、2回目の符号化では割当符号量に基づく量子化パラメータを出力し、中間符号量算出手段は、1回目の符号化で動画像符号化手段が生成する符号化データの各フレームの符号量である観測符号量に基づき、中間符号量を算出することも好ましい。
更に、本発明の動画像符号化装置における他の実施形態によれば、
目標ビットレートは、1回目の符号化での観測符号量から算出される平均ビットレートから算出したものであることも好ましい。
本発明における動画像符号化方法によれば、
中間符号量算出部が、所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出するステップと、バッファ遷移算出部が、中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するステップと、調整部が、算出したバッファ占有量と閾値に基づき、バッファ破綻発生を判定するステップと、調整部が、閾値に基づく判定でバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、中間符号量を調整してバッファ占有量を閾値以内に変更するステップと、量子化パラメータ決定部が、調整後の中間符号量に基づき、量子化パラメータを決定するステップと、動画像符号化部が、前記決定した量子化パラメータに基づき動画像の符号化を行って符号化データを生成するステップとを有することを特徴とする。
また、本発明における動画像符号化方法によれば、
中間符号量算出部が、所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出するステップと、バッファ遷移算出部が、中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するステップと、調整部が、算出したバッファ占有量と閾値に基づき、バッファ破綻発生を判定するステップと、調整部が、閾値に基づく判定でバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、目標ビットレートを調整してバッファ占有量を閾値以内に変更するステップと、量子化パラメータ決定部が、前記中間符号量に基づき、量子化パラメータを決定するステップと、動画像符号化部が、前記決定した量子化パラメータに基づき動画像の符号化を行って符号化データを生成し、符号化データを、調整部による調整後の目標ビットレートを示す情報と共に出力するステップとを有することを特徴とする。
さらに、本発明における動画像符号化方法によれば、
中間符号量算出部が、所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出するステップと、バッファ遷移算出部が、中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するステップと、調整部が、算出したバッファ占有量と閾値に基づき、バッファ破綻発生を判定するステップと、調整部が、閾値に基づく判定でバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、中間符号量及び目標ビットレートを調整してバッファ占有量を閾値以内に変更するステップと、量子化パラメータ決定部が、調整後の中間符号量に基づき、量子化パラメータを決定するステップと、動画像符号化部が、前記決定した量子化パラメータに基づき動画像の符号化を行って符号化データを生成し、符号化データを、調整部による調整後の目標ビットレートを示す情報と共に出力するステップとを有することを特徴とする。
本発明におけるプログラムによれば、
コンピュータを、前記動画像符号化装置として機能させることを特徴とする。
中間符号量に基づく符号化によるバッファ破綻発生の可能性を閾値に基づき判定し、閾値に基づく判定でバッファ破綻が発生する場合、バッファ破綻発生の事前回避のためのバッファ占有量の調整を、調整に起因する他のアンダフロー又はオーバフローを発生させない最大区間である、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までとすることで、調整により他のアンダフロー又はオーバフローを発生させることなく、かつ、バッファ破綻発生の事前回避に伴う画質の劣化を極力抑えることができる。
本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。
本発明による符号化装置は、2パス符号化、即ち、符号化対象動画像の発生符号量を把握するため所定の量子化パラメータを用いて1回目の符号化を行い、1回目の符号化結果から、目標ビットレートとなる符号化データを得るための各フレームの符号量を決定し、決定した符号量となるように量子化パラメータを制御しながら2回目の符号化を行い動画像の符号化データの出力を行う。ここで、目標ビットレートとは、実際に出力すべき動画像の符号化データの全符号量を記録時間で除した値、即ち、実際に出力すべき動画像の平均ビットレートであり、明示的に外部より指定する場合と、1回目の所定の量子化パラメータによる符号化で得られた平均ビットレートを使用する場合が考えられる。以下、機能ブロック図に基づき本発明による動画像符号化装置を説明する。
図1は、本発明による動画像符号化装置の機能ブロック図である。図1によると動画像符号装置は、割当符号量算出部1と、量子化パラメータ決定部2と、動画像符号化部3とを備えている。
動画像符号化部3は、直交変換部31と、量子化部32と、逆量子化部33と、直交逆変換部34と、フレームメモリ35と、動き補償部36と、動きベクトル検出部37と、符号化部38と、多重化部39と、符号化バッファ40とを備え、量子化パラメータ決定部2が出力する量子化パラメータに基づき入力される動画像の符号化を行って符号化データを生成し、後述するCBR(Constant Bit Rate)制御の場合には、動き補償部36が出力する動きベクトルと、符号化に関するモード情報と、符号化データを含む符号化ストリームを出力し、更に、後述するVBR(Variable Bit Rate)制御の場合には、CBR制御の場合に加え、割当符号量算出部1が出力する割当ビットレート情報を含む符号化ストリームを出力する。ここで、モード情報とは、動画像の画像サイズ、初期化情報、マクロブロック毎のIntra/Inter符号化モード及び量子化パラメータ等からなる情報である。
ここで、割当ビットレート情報とは、ビットレートの瞬時値についての情報であり、割当ビットレート情報が示すビットレートの平均は目標ビットレートに一致し、例えば、符号化装置が通信及び/又は放送機器であれば符号化データの伝送路への出力速度制御に使用され、符号化装置が記録機器であれば、復号装置が記録媒体から符号化データを読出して復号を行う際の速度制御に使用する。割当ビットレート情報を変更する時間単位は任意であるが、例えば、フレーム間隔の整数倍を使用する。
直交変換部31は、入力画像のフレームと、動き補償部36が出力する動き補償後のフレームとの差分である入力信号に対し、例えば離散コサイン変換等の直交変換を行い変換後の信号を出力する。量子化部32は、量子化パラメータ決定部2が決定する量子化パラメータに従い直交変換部31からの入力信号の量子化を行い、符号化部38は、量子化後の信号の符号化を行って符号化データを多重化部39に出力する。
また、量子化部32の出力は、逆量子化部33及び直交逆変換部34で、それぞれ、量子化部32と直交変換部31での処理と逆の処理が行われ、直交変換部31の入力信号に逆変換される。直交逆変換部34から出力される、直交変換部31の入力信号に逆変換した信号は、動き補償部36が出力する動き補償後のフレームと加算されるが、直交変換部31の入力信号は、入力画像のフレームと動き補償後のフレームとの差分であるため、加算後の信号は、入力画像のフレームをローカルデコードしたものであり、この入力画像のフレームをローカルデコードした信号は、一旦フレームメモリ35に入力される。動きベクトル検出部37は、入力画像のフレームと、フレームメモリ35に蓄積されている過去の入力画像をローカルデコードした信号から動きベクトルを求め、動き補償部36は、動きベクトルと、フレームメモリ35に蓄積されている過去の入力画像をローカルデコードした信号から、動き補償後のフレームを求めて出力する。
多重化部39は、符号化部38からの符号化データと、動きベクトル検出部37からの動きベクトルと、割当符号量算出部1からの割当ビットレート情報と、モード情報を多重化して符号化ストリームとして符号化バッファ40に蓄積し、符号化バッファ40に蓄積された符号化ストリームは、例えば、符号化装置が通信及び/又は放送機器であれば伝送路に、符号化装置が記録機器であればハードディスク等の記録媒体に出力される。
量子化パラメータ決定部2は、1回目の符号化においては、予め定められた量子化パラメータを量子化部32に出力し、割当符号量算出部1は、この予め定められた量子化パラメータで得られる符号化データの各フレームの符号量を観測符号量として監視する。
CBR制御の場合、割当符号量算出部1は、1回目の符号化で得られる観測符号量から、目標ビットレートを達成するための、各フレームに割り当てる割当符号量を決定して、割当符号量を量子化パラメータ決定部2に出力する。また、VBR制御の場合、割当符号量算出部1は、更に、割当ビットレート情報を決定して、割当ビットレート情報を多重化部39に出力する。
量子化パラメータ決定部2は、2回目の符号化においては、各フレームの符号量が、割当符号量算出部1が決定した割当符号量となるように、1回目の符号化で用いた量子化パラメータと、そのときの観測符号量に基づき量子化パラメータを決定し、決定した量子化パラメータを量子化部32に出力する。更に、決定した量子化パラメータで得られる発生符号量を符号化部38から取得し、発生符号量と割当符号量の差に基づき、量子化部32に出力する量子化パラメータを調整する。
図2は割当符号量算出部1の機能ブロック図である。図2によると、割当符号量算出部1は、中間符号量算出部11と、バッファ遷移算出部12と、調整部13とを有する。割当符号量算出部1は、CBR制御と、VBR制御の両制御が可能であるが、まず、CBR制御について説明を行い、その後、VBR制御についてCBR制御との相違点を中心に説明する。
中間符号量算出部11は、1回目の符号化で得られた各フレームの観測符号量と、予め設定された目標ビットレートに基づき、各フレームに割り当てる仮の符号量である中間符号量を算出する。具体的には、第i番目のフレームの観測符号量がM[i]、観測符号量の動画像を構成する全フレームについての和をMA、動画像の記録時間をRT、目標ビットレートをTBRとすると、第i番目のフレームの中間符号量I[i]は、
I[i]=M[i]×TBR/(MA/RT)
として決定する。ここで、MA/RTは、1回目で使用する固定的な量子化パラメータで得られる平均ビットレートを表し、この平均ビットレートに対する目標ビットレートの比で、観測符号量を調整したものが中間符号量となるようにする。各フレームの符号化で得られる符号量を中間符号量と等しくなるように量子化パラメータを調整すると、その平均的なビットレートは目標ビットレートと等しくなるが、中間符号量での符号化については、復号装置でのバッファの制約、いわゆる、VBV(Video Buffering Verifier)の規定を満足するものであるか否かが不明であるため、バッファ遷移算出部12にて、復号装置でのバッファ占有量の遷移を算出する。
バッファ遷移算出部12は、まず、中間符号量算出部11が求めた中間符号量と目標ビットレートに基づき、フレームの進行に伴う、復号装置でのバッファ占有量の遷移を求める。バッファ占有量は、読出直前占有量と、読出直後占有量の両方を求める。読出直前占有量とは、復号装置がフレーム信号の復号のため、フレームの符号化データをバッファから読み出す直前のバッファ占有量であり、読出直後占有量とは、復号装置がフレーム信号の復号のため、フレームの符号化データをバッファから読み出した直後のバッファ占有量である。復号装置において、第i番目のフレームを読み出す直前の読出直前占有量をBBL[i]、第i番目のフレームを読み出した直後の読出直後占有量をABL[i]、動画像のフレーム間隔をFPとすると、
BBL[i]=TBR×FP+ABL[i―1]
ABL[i]=BBL[i]−I[i]
となる。
ここで、TBRは目標ビットレートであり、I[i]は、第i番目のフレームの中間符号量である。
図3は、本発明の説明に用いるバッファ占有量の遷移である。復号装置のバッファには、目標ビットレートにて符号化データが入力されるため、時間の進行に伴い、目標ビットレートに応じた傾斜でバッファ占有量が増加する。一方、復号装置はフレーム間隔毎にフレームの符号化データをバッファから読み出すため、フレーム間隔毎に、フレームの符号量だけバッファ占有量は減少する。フレームの符号量は一定でないため、バッファ占有量は時間と共に変動する。
図3のバッファ占有量の遷移を示すグラフにおいて、垂直にバッファ占有量が減少しているところが、復号装置のバッファからフレームの符号化データが読み出された時点であり、この上側のバッファ占有量が読出前占有量であり、下側のバッファ占有量が読出後占有量である。尚、読出前占有量の初期値、つまりBBL[1]は、任意の値を使用可能であるが、例えば、MPEG(Motion Picture Expert Group)方式では、標準的な値として、バッファ容量の2/3となる値を使用する。
尚、図3のグラフは復号装置でのバッファ占有量であり、図6に示す特許文献1に記載のグラフは符号化装置でのバッファ占有量であるため、グラフの形状が反転している。本発明においては、VBVの定義に従い、復号装置でのバッファ占有量に基づき説明を行うが、このバッファ占有量は、符号化装置での符号化に伴うフレームの符号量と、符号化装置の符号化バッファ40からの出力レートである目標ビットレート、言い換えると復号装置におけるバッファへの入力レートから計算されるものであり、符号化装置でのバッファ占有量と置き換えることも可能である。
以後、ある読出前占有量が、1つ前の読出占有量より大きく、かつ、1つ後の読出前占有量以上である場合、この読出前占有量の位置を極大点と呼び、ある読出後占有量が、1つ前の読出前占有量より小さく、かつ、1つ後の読出後占有量以下である場合、この読出後占有量の位置を極小点と呼ぶものとする。図3において、符号100、101、102及び103は、極大点を示し、符号200、201及び202は、極小点を示している。また、極大点のバッファ占有量を極大値、極小点のバッファ占有量を極小値と、更に、極大点及び極小点をまとめて極点と、極大値及び極小値をまとめて極値と呼ぶものとする。
調整部13は、占有量の下限を示す下限閾値と、占有量の上限を示す上限閾値とを有し、第1番目のフレームの符号化データ読出し位置から順に、読出後占有量が下限閾値以上であり、かつ、読出前占有量が上限閾値以下に収まっているか否かを検査する。画像の最終フレームまで下限閾値以上、上限閾値以下に収まっている場合、調整部13は、復号装置におけるバッファの破綻の発生はないと判断し、中間符号量を割当符号量としてそのまま出力する。また、CBR制御における割当ビットレート情報として、フレーム読み出し位置に係らず、常に目標ビットレートに等しい値を出力する。
一方、調整部13は、読出後占有量が下限閾値を下回る場合は、復号装置においてバッファのアンダフローが、読出前占有量が上限閾値を上回る場合は、復号装置においてバッファのオーバフローが発生すると判断し、調整区間に含まれるフレームの中間符号量を調整してバッファ占有量を閾値以内に変更する。ここで、調整区間とは、閾値に基づく判定によるバッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間をいう。具体的には、アンダフロー回避のための調整区間は、下限閾値を下回る直前の極大点から、下限閾値を下回った後の最初の極小点までの区間であり、オーバフロー回避のための調整区間は、上限閾値を上回る直前の極小点から、上限閾値を上回った後の最初の極大点までの区間である。
図3(a)に示すグラフでは、アンダフロー発生と判定され、このアンダフロー回避のための調整区間は、極大点100から極小点200までであり、図3(b)に示すグラフでは、オーバフロー発生と判定され、このオーバフロー回避のための調整区間は、極小点201から極大点102までである。尚、上限閾値の典型的な例は復号装置のバッファ容量であり、下限閾値の典型的な例は“0”であるが、それ以外の値も使用可能である。
尚、以後の説明において、下限閾値及び上限閾値をまとめて閾値と呼び、バッファ占有量が下限閾値を下回っていること、及び、バッファ占有量が上限閾値を上回っていることをまとめて閾値超過と呼ぶ。
バッファ破綻回避のために調整すべき符号量である調整対象符号量300は、閾値超過後の最初の極値と、アンダフロー又はオーバフロー判定のための閾値との差である。具体的には、アンダフローの場合には、調整区間の極小値と下限閾値との差であり、オーバフローの場合には、調整区間の極大値と上限閾値との差である。調整部13は、調整対象符号量300を、調整区間に含まれるフレームの中間符号量を調整することで吸収し、最終的に各フレームに割り当てる符号量である割当符号量を出力する。また、CBR制御のため、割当ビットレート情報は、フレーム位置に係わらず目標ビットレートと等しい値を出力する。
具体的には、アンダフローが発生している図3(a)では、調整対象符号量300を調整区間に含まれる6フレームに分配し、各フレームの調整後の符号量を、中間符号量から、分配した符号量を減じた値とする。分配の方法としては、調整対象符号量300を、単に調整区間に含まれるフレーム数で割る方法がある。
図4(a)は、CBR制御における調整後のバッファ占有量を示す図であり、実線が調整後の、点線が調整前の占有量を示している。図4(a)に示す様に、調整区間内においては、調整後のグラフの垂直に立ち下がる部分が調整前から同じ長さだけ短くなっており、この長さは、調整対象符号量300を調整区間に含まれるフレーム数で割った値に相当する。また、CBR制御では、復号装置のバッファへの入力ビットレートは一定であるため、調整後及び調整前では、傾斜部分の傾きは同じである。尚、分配の方法としては、調整対象符号量300を、調整区間に含まれるフレームの中間符号量の比に応じて配分する等、他の方法であってもよい。
同様に、オーバフローが発生している図3(b)においては、調整対象符号量300を調整区間に含まれる6フレームに分配し、各フレームの調整後の符号量を、中間符号量に分配した符号量を加えた値とする。分配の方法としては、アンダフローで説明したのと同様である。
図4(b)は、CBR制御における調整後のバッファ占有量を示す図であり、実線が調整後の、点線が調整前の占有量を示している。図4(b)に示す様に、調整区間内において、調整後のグラフの垂直に立ち下がる部分は調整前から同じ長さだけ長くなっており、この長さは、調整対象符号量300を調整区間に含まれるフレーム数で割った値に相当する。また、CBR制御では、復号装置のバッファへの入力ビットレートは一定であるため、調整後及び調整前では、傾斜部分の傾きは同じである。
アンダフロー回避のため、調整対象符号量300だけ符号量を減少させ、また、オーバフロー回避のため、調整対象符号量300だけ符号量を増加させることにより、調整区間以後のバッファ占有量の遷移は、バッファ遷移算出部12で算出した値から調整対象符号量300だけ変更される。調整部13は、フレーム順に、バッファ破綻発生を判定していき、バッファ破綻が発生した時点で、調整区間での符号量の調整を行い、調整を行った場合、調整区間以後については、調整した符号量を加味した、つまり変更後のバッファ占有量の遷移でバッファ破綻の発生を判定し、バッファ破綻が発生する場合には、同様の処理で符号量の調整を行う。
つまり、符号量の調整を行う度に、調整区間以後のバッファ占有量の遷移は、調整前のバッファ占有量の遷移から調整対象符号量300だけ平行移動したものとなる。したがって、調整部13が、最後の極点を処理した段階での調整後のバッファ占有量は、バッファ遷移算出部12が算出した最後の極点でのバッファ占有量から、各調整区間での調整対象符号量300の和だけ平行移動したものとなる。ここで、調整対象符号量300の和は、アンダフロー回避のため、符号量を減少させた場合には調整対象符号量300を負の値とし、オーバフロー回避のため、調整対象符号量300を増加させた場合には調整対象符号量300を正の値として計算したものである。調整部13は、この変動分を最後の極点から最後のフレームまでの区間にて補償する。
アンダフロー及び/又はオーバフロー事前回避のための極点区間における符号量調整の結果生じる動画像全体の符号量増減を、上述した最後の区間で調整することは、複数の点でアンダフロー及び/又はオーバフローが発生していたとしても、アンダフロー及び/又はオーバフロー事前回避のための符号量の増減を合算した上で最後にまとめて調整するため、アンダフロー及び/又はオーバフローが発生するたびに調整を行う方法に比べ、処理を簡略化できる利点がある。しかしながら、アンダフロー回避のための調整を行う場合、調整区間で符号量の調整を行うと共に、調整区間以降にある任意の極小点から1つ後の極大点の1区間又は複数区間で、減少させた符号量の調整を行い、オーバフロー回避のための調整を行う場合、調整区間で符号量の調整を行うと共に、調整区間以降にある任意の極大点から1つ後の極小点の1区間又は複数区間で、増加させた符号量の調整を行う構成とすることも可能である。
続いて、VBR制御時の動作を、CBR制御時の動作との相違点を中心に説明する。中間符号量算出部11及びバッファ遷移算出部12の動作は、CBR制御時と同一であり、また、調整部13での動作も、バッファ占有量が常に下限閾値以上、上限閾値以下である場合、つまりバッファが破綻しない場合にはCBR制御時と同一である。
一方、バッファが破綻する場合、CBR制御においては、調整区間内のフレームの中間符号量を調整するが、VBR制御においては、調整区間内の目標ビットレートからの調整を行う。調整部13は、調整後の目標ビットレートを割当ビットレート情報として出力し、中間符号量を、そのまま割当符号量として出力する。
具体的には、アンダフローが発生している図3(a)において、調整部13は、調整区間内で、調整対象符号量300だけ復号装置のバッファに入力されるデータ量を増加させるように目標ビットレートを増加させる。増加させるビットレートは、例えば、調整対象符号量300を対象区間の時間で除した値を、目標ビットレートに加える方法があるが、他の方法であってもよい。
図5(a)は、VBR制御における調整後のバッファ占有量を示す図であり、実線が調整後の、点線が調整前の占有量を示している。図5(a)に示す様に、調整区間内において、調整後のグラフの増加部分の傾きは、調整前から所定の値だけ増加しており、この傾きの増加分は、調整対象符号量300を調整区間の時間で割った値に相当する。また、VBR制御においては中間符号量と割当符号量は常に一致するため、調整後及び調整前では、垂直に立ち下がる部分の長さは同じである。
同様に、オーバフローが発生している図3(b)において、調整部13は、調整区間内で、調整対象符号量300だけ復号装置のバッファに入力されるデータ量を減少させるように目標ビットレートを減少させる。減少させるビットレートは、例えば、調整対象符号量300を対象区間の時間で除した値を、目標ビットレートから減ずる方法があるが、他の方法であってもよい。図5(b)は、VBR制御における調整後のバッファ占有量を示す図であり、実線が調整後の、点線が調整前の占有量を示している。
図5(b)示す様に、VBR制御では調整区間内において、調整後のグラフの増加部分の傾きは、調整前から所定の値だけ減少しており、この傾きの減少分は、調整対象符号量300を調整区間の時間で割った値に相当する。また、中間符号量と割当符号量は常に一致するため、調整後及び調整前では、垂直に立ち下がる部分の長さは同じである。
以上、所定の量子化パラメータを用いた1回目の符号化で発生する観測符号量から、目標ビットレートを得るための中間符号量を算出して、中間符号量で符号化した場合における復号装置でのバッファ破綻を閾値を用いて判定し、閾値超過直前のバッファ占有量の極点から、閾値超過直後のバッファ占有量の極点までの区間で、上限閾値以下、下限閾値以上となる様にバッファ占有量の調整を行って、バッファ破綻を回避する。
バッファ占有量の調整は、上述したように中間符号量又は目標ビットレートを調整することにより行うが、中間符号量及び目標ビットレートの両方を調整することにより行うことも当然可能である。また、符号量の調整を行う場合において、調整区間内の全フレームの符号量の増減を行うことも必須ではなく、例えば、所定の符号量以上のフレームのみで調整を行う等の方法を使用しても良い。
本発明による符号化では、符号量の調整に伴うバッファ破綻を生じさせず、かつ、バッファ破綻回避に伴う画質の劣化を極力抑えることを可能とする。これは、バッファ破綻を生じさせることのない最大区間であり、かつ、画像性質が類似する区間として、閾値超過直前と直後の極点区間でのみバッファ占有量の調整を行うためである。
尚、本発明による動画像符号化装置、符号化方法は、コンピュータに上述した処理を行わせるプログラムにより実現することが可能である。
本発明による符号化装置の機能ブロック図である。 割当符号量算出部の機能ブロック図である。 バッファ占有量の遷移を示す図である。 CBR制御時の中間符号量の調整を示す図である。 VBR制御時の中間符号量の調整を示す図である。 従来技術による動画像の符号化方法を説明する図である。
符号の説明
1 割当符号量算出部
2 量子化パラメータ決定部
3 動画像符号化部
31 直交変換部
32 量子化部
33 逆量子化部
34 直交逆変換部
35 フレームメモリ
36 動き補償部
37 動きベクトル検出部
38 符号化部
39 多重化部
40符号化バッファ
11 中間符号量算出部
12 バッファ遷移算出部
13 調整部
80、81 フレーム位置
90、91、92 区間
100、101、102、103 極大点
200、201、202 極小点
300 調整対象符号量

Claims (11)

  1. 動画像符号化装置であって、
    所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出する中間符号量算出手段と、
    中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するバッファ遷移算出手段と、
    バッファ破綻発生を判定するためのバッファ占有量の閾値を有し、閾値に基づく判定によりバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、中間符号量を調整してバッファ占有量を閾値以内に変更する調整手段と、
    調整手段が出力する、調整後の中間符号量である割当符号量に基づき、量子化パラメータを決定する量子化パラメータ決定手段と、
    量子化パラメータ決定手段が決定する量子化パラメータに基づき動画像の符号化を行って符号化データを生成する動画像符号化手段と、
    を有することを特徴とする動画像符号化装置。
  2. 動画像符号化装置であって、
    所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出する中間符号量算出手段と、
    中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するバッファ遷移算出手段と、
    バッファ破綻発生を判定するためのバッファ占有量の閾値を有し、閾値に基づく判定によりバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、目標ビットレートを調整してバッファ占有量を閾値以内に変更する調整手段と、
    中間符号量算出手段が算出した中間符号量に等しい割当符号量に基づき、量子化パラメータを決定する量子化パラメータ決定手段と、
    量子化パラメータ決定手段が出力する量子化パラメータに基づき動画像の符号化を行って符号化データを生成し、符号化データを、調整手段による調整後の目標ビットレートを示す割当ビットレート情報と共に出力する動画像符号化手段と、を有することを特徴とする動画像符号化装置。
  3. 動画像符号化装置であって、
    所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出する中間符号量算出手段と、
    中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するバッファ遷移算出手段と、
    バッファ破綻発生を判定するためのバッファ占有量の閾値を有し、閾値に基づく判定によりバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、中間符号量及び目標ビットレートを調整してバッファ占有量を閾値以内に変更する調整手段と、
    調整手段が出力する、調整後の中間符号量である割当符号量に基づき、量子化パラメータを決定する量子化パラメータ決定手段と、
    量子化パラメータ決定手段が出力する量子化パラメータに基づき動画像の符号化を行って符号化データを生成し、符号化データを、調整手段による調整後の目標ビットレートを示す割当ビットレート情報と共に出力する動画像符号化手段と、
    を有することを特徴とする動画像符号化装置。
  4. 調整手段は、フレーム順にバッファ破綻発生を判定し、バッファ破綻発生による調整を行った場合、該調整を行った調整区間以後については、該調整による変更後のバッファ占有量に基づきバッファ破綻発生を判定すること、
    を特徴とする請求項1から3のいずれか1項に記載の動画像符号化装置。
  5. 調整手段は、1つ以上の調整区間で調整を行った場合、バッファ遷移算出手段が算出したバッファ占有量からの調整に伴う変更分を、最後の極点から最終フレームの区間で補償すること、
    を特徴とする請求項1から4のいずれか1項に記載の動画像符号化装置。
  6. 量子化パラメータ決定手段は、1回目の符号化では所定の量子化パラメータを出力し、2回目の符号化では割当符号量に基づく量子化パラメータを出力し、
    中間符号量算出手段は、1回目の符号化で動画像符号化手段が生成する符号化データの各フレームの符号量である観測符号量に基づき、中間符号量を算出すること、
    を特徴とする請求項1から5のいずれか1項に記載の動画像符号化装置。
  7. 目標ビットレートは、1回目の符号化での観測符号量から算出される平均ビットレートから算出したものであること、
    を特徴とする請求項6に記載の動画像符号化装置。
  8. 動画像の符号化方法であって、
    中間符号量算出部が、所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出するステップと、
    バッファ遷移算出部が、中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するステップと、
    調整部が、算出したバッファ占有量と閾値に基づき、バッファ破綻発生を判定するステップと、
    調整部が、閾値に基づく判定でバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、中間符号量を調整してバッファ占有量を閾値以内に変更するステップと、
    量子化パラメータ決定部が、調整後の中間符号量に基づき、量子化パラメータを決定するステップと、
    動画像符号化部が、前記決定した量子化パラメータに基づき動画像の符号化を行って符号化データを生成するステップと、
    を有することを特徴とする動画像の符号化方法。
  9. 動画像の符号化方法であって、
    中間符号量算出部が、所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出するステップと、
    バッファ遷移算出部が、中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するステップと、
    調整部が、算出したバッファ占有量と閾値に基づき、バッファ破綻発生を判定するステップと、
    調整部が、閾値に基づく判定でバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、目標ビットレートを調整してバッファ占有量を閾値以内に変更するステップと、
    量子化パラメータ決定部が、前記中間符号量に基づき、量子化パラメータを決定するステップと、
    動画像符号化部が、前記決定した量子化パラメータに基づき動画像の符号化を行って符号化データを生成し、符号化データを、調整部による調整後の目標ビットレートを示す情報と共に出力するステップと、
    を有することを特徴とする動画像の符号化方法。
  10. 動画像の符号化方法であって、
    中間符号量算出部が、所定の目標ビットレートを平均ビットレートとする符号化データ出力のための各フレームの符号量である中間符号量を算出するステップと、
    バッファ遷移算出部が、中間符号量と目標ビットレートより、バッファ占有量の遷移を算出するステップと、
    調整部が、算出したバッファ占有量と閾値に基づき、バッファ破綻発生を判定するステップと、
    調整部が、閾値に基づく判定でバッファ破綻が発生する場合は、バッファ破綻発生直前のバッファ占有量の極点から、バッファ破綻発生直後のバッファ占有量の極点までの区間である調整区間内において、中間符号量及び目標ビットレートを調整してバッファ占有量を閾値以内に変更するステップと、
    量子化パラメータ決定部が、調整後の中間符号量に基づき、量子化パラメータを決定するステップと、
    動画像符号化部が、前記決定した量子化パラメータに基づき動画像の符号化を行って符号化データを生成し、符号化データを、調整部による調整後の目標ビットレートを示す情報と共に出力するステップと、
    を有することを特徴とする動画像の符号化方法。
  11. コンピュータを、
    請求項1から7のいずれか1項に記載の動画像符号化装置として機能させることを特徴とするプログラム。
JP2006021965A 2006-01-31 2006-01-31 動画像符号化装置、方法及びプログラム Active JP4254784B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006021965A JP4254784B2 (ja) 2006-01-31 2006-01-31 動画像符号化装置、方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006021965A JP4254784B2 (ja) 2006-01-31 2006-01-31 動画像符号化装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2007208377A JP2007208377A (ja) 2007-08-16
JP4254784B2 true JP4254784B2 (ja) 2009-04-15

Family

ID=38487496

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006021965A Active JP4254784B2 (ja) 2006-01-31 2006-01-31 動画像符号化装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4254784B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010007749A1 (ja) * 2008-07-17 2010-01-21 パナソニック株式会社 送信装置、受信装置、レート制御装置、送信方法及び受信方法
WO2011138900A1 (ja) 2010-05-06 2011-11-10 日本電信電話株式会社 映像符号化制御方法および装置
RU2530313C2 (ru) 2010-05-07 2014-10-10 Ниппон Телеграф Энд Телефон Корпорейшн Способ управления кодированием видео, устройство кодирования видео и программа кодирования видео

Also Published As

Publication number Publication date
JP2007208377A (ja) 2007-08-16

Similar Documents

Publication Publication Date Title
US8077775B2 (en) System and method of adaptive rate control for a video encoder
US7983160B2 (en) Method and apparatus for transmitting a coded video signal
JP4390112B2 (ja) ビデオシーケンスのレートを制御する方法及び装置並びにビデオ符号化装置
KR100484148B1 (ko) 개선된 비트율 제어 방법과 그 장치
JP3866538B2 (ja) 動画像符号化方法及び装置
US6201844B1 (en) Transcoding of a data stream
JP4358215B2 (ja) 動画像符号化装置及びその方法
KR100790986B1 (ko) 가변 비트율 비디오 코딩에서 비트율을 제어하는 장치 및방법
JP5128389B2 (ja) 動画像符号化装置及び動画像符号化方法
KR20090129064A (ko) 영상 처리 시스템에서 비트 레이트를 제어하는 장치 및방법
JP5064305B2 (ja) ビットレート変換装置及び変換方法
JP2006295535A (ja) 動画像符号化装置および方法
JP4795223B2 (ja) 画像処理装置
JP4254784B2 (ja) 動画像符号化装置、方法及びプログラム
JP4179917B2 (ja) 動画像符号化装置及び方法
US8780977B2 (en) Transcoder
KR100950275B1 (ko) 모델 파라미터 기반의 비디오 인코딩 비트율 제어장치와 방법 및 이를 수록한 저장매체
US9426474B2 (en) Transcoder
JP4586340B2 (ja) 符号化装置、および、符号化方法、並びに、プログラム
JPH114445A (ja) 画像符号化装置および方法
JPH11308622A (ja) 動画像再符号化装置
JP4871848B2 (ja) 動画像再符号化装置
JPH0744686B2 (ja) 可変伝送速度画像符号化装置
JP4239734B2 (ja) 符号化装置、および、符号化方法、並びに、プログラム
KR100949755B1 (ko) 비디오 시퀀스의 레이트를 제어하는 방법 및 장치, 비디오부호화 장치

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080818

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: 20090106

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090119

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120206

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4254784

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150206

Year of fee payment: 6