JP2005045736A - 画像信号符号化方法及び装置、符号化制御装置並びにプログラム - Google Patents

画像信号符号化方法及び装置、符号化制御装置並びにプログラム Download PDF

Info

Publication number
JP2005045736A
JP2005045736A JP2003280428A JP2003280428A JP2005045736A JP 2005045736 A JP2005045736 A JP 2005045736A JP 2003280428 A JP2003280428 A JP 2003280428A JP 2003280428 A JP2003280428 A JP 2003280428A JP 2005045736 A JP2005045736 A JP 2005045736A
Authority
JP
Japan
Prior art keywords
encoding
amount
unit time
image signal
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003280428A
Other languages
English (en)
Inventor
Kazuhiro Ishitani
和博 石谷
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 JP2003280428A priority Critical patent/JP2005045736A/ja
Publication of JP2005045736A publication Critical patent/JP2005045736A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】 動画像の符号化においてリアルタイム処理を可能にしながら、画質劣化を抑え、ハードウェア負担を低減でき、演算量も少なくする。
【解決手段】 入力映像信号(動画像信号)を符号化する動画像符号化器36に対して、入力画像信号の単位時間(例えば1GOP)毎の符号化難易度を計算する符号化難易度計算器31からの過去の単位時間の符号化難易度が割り当てビット量計算器32に送られ、割り当てビット量計算器32からの割り当てビット量がレートコントロールパラメータ設定器33に送られて、各マクロブロックに割り当てられるビット量と実際に発生したビット量との差分がレートコントロール仮想バッファに蓄えられ、そのバッファ占有量に基づき量子化スケールが算出される。この量子化スケールに基づき、レートコントロール手段23が動画像符号化器36の現在の符号化ビットレートを制御する。
【選択図】 図2

Description

本発明は、入力画像信号の単位時間毎に目標符号量を求めて可変ビットレート符号化を行う画像信号符号化方法及び装置、符号化制御装置並びにプログラムに関する。
ディジタルビデオ信号を高い圧縮率で効率よく符号化する高能率符号化の手法として、ビデオ信号の相関を利用した高能率符号化方法が提案されており、その一つにMPEG方式がある。このMPEG(Moving Picture Image Coding Experts Group) とは、ISO−IEC/JTC1/SC2/WG11にて議論され、標準案として提案されたものであり、動き補償予測符号化と離散コサイン変換(DCT:Discrete Cosine Transform)符号化とを組み合わせたハイブリッド方式である。このMPEG方式では、まずビデオ信号のフレーム間の差分を取ることにより時間軸方向の冗長度を落とし、その後、離散コサイン変換を用いて空間軸方向の冗長度を落とし、ビデオ信号を能率よく符号化している。
このようなMPEG方式の動画像符号化技術は、DVD(Digital Versatile Disc)やディジタル放送など様々なアプリケーションに実施、応用されている。特に記録レートが可変制御出来るディスクメディアにおいては、入力画像の難しさに応じてレートを制御し、効率的に符号を割り当てることで画質改善、長時間記録などを実現している。
このMPEG方式にも用いられているVBR(Variable Bit Rate:可変ビットレート)アルゴリズムは、単位時間毎に符号化難易度を算出し、平均ビットレートとの比率により目標符号量を割り当てる。また所定の時間長の信号を扱える保証のために仮想バッファを設けてレート制御を行っている。
ここで図9は、MPEG方式の動画像符号化に用いられる符号化装置(エンコーダ)の基本構成を示すブロック回路図である。
この図9において、入力端子110からの入力映像信号(動画像信号)は、フレーム毎に、I(フレーム内予測)、P(フレーム間順方向予測)、B(フレーム間双方向予測)の各ピクチャタイプに分けられ、M(I、Pの周期)とN(GOPを構成する枚数)によりGOP(グループオブピクチャ)が構成される。入力映像信号のP、Bピクチャについては、フレームメモリ内の過去、現在、未来の原画像を用いて、動き検出回路111により動きベクトル検出(ME)が行われる。そして、ピクチャ符号化順並び替え回路112によってピクチャを符号化する順番に並び替えられる。動き補償回路121では、上記MEで得たフレーム毎の動き補償残差を使って、動き補償(MC)によりMB(マクロブロック)ごとにイントラ/インター、フレーム/フィールド予測、順/逆/双方向予測などの予測判定が行われ、予測画像が作られる。ピクチャ符号化順並び替え回路112からの現画像と動き補償回路121からの予測画像が加算器113に送られ、これらの現画像と予測画像との差分画像が加算器113から出力される。Iピクチャについては動き補償は行わずフレーム内予測される。以上により出力されたデータは、DCT(離散コサイン変換)回路114によりDCT処理され、量子化器115に送られて、レートコントロール回路122により決定された量子化スケールにより量子化される。そして得られた量子化係数はVLC(可変長符号化)回路116によりVLC処理され、バッフアメモリ117によって一旦保持された後、出力端子129よりビットストリームとして出力される。なお、量子化器115からの量子化出力は、ローカルデコーダとしての逆量子化器118、逆DCT回路119、加算器120を介して復号され、動き補償回路121に送られている。
次に、このようなMPEG符号化に対して用いられる可変ビットレート(VBR)符号化について説明する。
いわゆるDVD−video に記録されるビデオ信号は、2パス方式の可変ビットレート符号化が、一般に用いられている。この2パス方式は、符号量を求めるための符号化処理と、求められた符号量に基づいてビットレートを可変制御しながら行う符号化処理との2度の符号化を行うものであり、使用可能な符号化ビット総量を有効に使うことが出来る利点があるが、処理時間が動画像シーケンスの時間長の約2倍必要という欠点があるため、リアルタイム処理には不向きである。そこで、この処理時間を短くすることを目的とした1パス方式(1パスフィードフォワード方式)の可変ビットレート符号化方式が考えられている。この1パスフィードフォワード方式の動画像の符号化方式は、例えば、特許文献1、特許文献2、特許文献3等に開示されている。
ここで、図10に、従来の1パス方式の可変ビットレート符号化方法を適用した動画像の符号化装置の構成例を示し、また図11に1パス方式の可変ビットレート符号化処理を説明するためのフローチャートを示す。
図10のブロック図に示す動画像符号化装置において、入力端子130に供給された入力動画像信号は、VBR(可変ビットレート)演算器131及び遅延器135に供給される。VBR(可変ビットレート)演算器131は、符号化難易度計算器132と割り当てビット量計算器133とを有しており、入力動画像信号が入力される符号化難易度計算器132からの出力は、単位時間毎の割り当てビット量を計算する割り当てビット量計算器133に送られ、割り当てビット量計算器133からの出力は動画像符号化器136に送られる。動画像符号化器136は、遅延器135からの出力信号を、割り当てビット量計算器133からの割り当てビット量に応じて符号化し、端子139より符号化ビットストリームとして出力する。
以下、図10に示す動画像符号化装置の動作を、図11のフローチャートに従って説明する。
図11のステップS141では、端子130に供給された動画像信号を図10のVBR(可変ビットレート)演算器131の符号化難易度計算器132に入力し、単位時間毎の入力画像の符号化難易度R_currentを計算する。上記単位時間は、例えば0.5秒(15フレーム)程度とされる。この符号化難易度の計算は、例えば量子化ステップを固定して入力動画像をエンコードして、所定時間毎の発生符号量を計算することが挙げられ、あるいは、符号化難易度を算出する方法として、単位時間毎に動き補償残差やACパワー、量子化スケール、発生ビット量などの各種パラメータの平均をとり、重み付けすることで求めることが挙げられる。ここで、例えば難しい画像が続いた場合、残りの画像への割り当てビット量の不足を避けるために、いくつか符号化難易度に対して補正を行っている。一つは最大値、最小値の制限を設けることで、難易度の高すぎるものはある一定以上はビットを与えず、難易度の低い画像に対してビット量を保証している。また先ほど述べたように、ある単位時間を設定し、その単位時間ごとに仮想的にVBRバッファを用意して、所定の時間長の信号を一定の記憶容量の記録媒体に収録できることを保証する符号量の制御を行っている。
このようにして符号化難易度計算器132から得られた符号化難易度R_currentは、VBR(可変ビットレート)演算器131内の割り当てビット量計算器133に送られ、ステップS142において、符号化難易度R_currentに対する割り当てビット量(ビットレート値)bitrate が計算により求められる。この場合、予め、基準となる動画像シーケンスを所定の平均ビットレートで可変ビットレート符号化する時の単位時間毎の符号化難易度R_currentと割り当てビット量bitrate を関係付けておく。ここで、基準となる動画像シーケンスに対する単位時間毎の割り当てビット量の総和は、目的の記録媒体の記憶容量以下にされている。割り当てビット量計算器133では、端子130からの入力画像の単位時間の符号化難易度R_currentに対して、割り当てビット量bitrate を求める。
この1パス方式の動画像符号化装置における遅延器135は、単位時間長の入力画像に対しての符号化難易度計算器132と割り当てビット量計算器133での処理が単位時間内に終了するので、その画像信号の動画像符号化器136への入力を単位時間だけ遅延するために設けられている。
次のステップ143では、動画像符号化器136が、単位時間毎の入力動画像を、これに対応して割り当てビット量計算器133から与えられる割り当てビット量になるように符号化する。すなわち、動画像符号化器136は、割り当て符号量に基づいた量子化ステップサイズにより、単位時間毎の入力動画像をエンコード処理し、出力端子139より符号化ビットストリームを出力する。
特開平9−23423号公報 特開平10−302396号公報 特開2002−34039号公報
ところで、上述のような1パスフィードフォワード方式によるビットレート制御法においては、次のような問題点がある。
一つは、2パスは元より1パスにおいても、フィードフォワードを実現するために単位時間分のデータ記憶メモリを必要とすることである。
二つ目としては、1パスフィードフォワード方式は2パス処理で必要な時間を削減することはできたが、遅延器135で行われるVBR演算器の処理時間長の遅延(0.5秒程度)が生じることである。カムコーダなど利用されるアプリケーションによってはリアルタイム処理が必須となるものもあり、この遅延時間が問題となる。
本発明は、このような従来の実情に鑑みて提案されたものであり、動画像の符号化においてリアルタイム処理を可能にしながら、画質劣化を抑え、ハードウェア負担を低減でき、演算量も少なくて済むような画像信号符号化方法及び装置、符号化制御装置並びにプログラムを提供することを目的とする。
上述の課題を解決するために、本発明では、時間的に近接した画像間においてはその画像の性質も近似することを考慮し、過去のパラメータ情報をフィードバックすることにより難易度計算を行うことを提案するものである。これによりデータを保持するメモリがなくてもより近い符号化制御を実現することができる。また遅延器の削除によりハード容量の負担も軽減できる。
すなわち、本発明に係る画像信号符号化方法は、上記目的を達成するため、入力画像信号の単位時間毎の符号化パラメータを求める工程と、上記入力画像信号の過去の単位時間の符号化パラメータに基づいて現在の単位時間の目標符号量を求める工程と、上記目標符号量に基づいて上記入力画像信号に対して可変ビットレート符号化を行う工程とを有することを特徴とする。
ここで、上記符号化パラメータとして符号化後の発生符号量及び量子化スケールを用い、過去の単位時間の発生符号量及び量子化スケールを用いて符号化難易度を算出することで、現在の単位時間の目標符号量を求めることが好ましい。また、上記目標符号量に基づき各フレーム内のマクロブロック毎に量子化スケールを求める際に、レートコントロール仮想バッファを設け、各マクロブロックに割り当てられるビット量と実際に発生したビット量との差分を上記レートコントロール仮想バッファに蓄え、そのバッファ占有量に基づき上記量子化スケールを算出することが好ましい。
次に、本発明に係る画像信号符号化装置は、上記目的を達成するため、入力画像信号の単位時間毎に目標符号量を求めて可変ビットレート符号化を行う画像信号符号化装置において、上記入力画像信号の上記単位時間毎の符号化難易度を計算する符号化難易度計算手段と、上記符号化難易度計算手段からの過去の単位時間の符号化難易度に基づき割り当てビット量を計算する割り当てビット量計算手段と、上記割り当てビット量計算手段からの割り当てビット量に基づき現在の符号化ビットレートを制御するレートコントロール手段とを有することを特徴とする。
ここで、上記符号化難易度計算手段は、過去の単位時間の発生符号量及び量子化スケールを用いて符号化難易度を算出することが好ましい。また、上記割り当てビット計算手段からの割り当てビット量が入力され、各マクロブロックに割り当てられるビット量と実際に発生したビット量との差分をレートコントロール仮想バッファに蓄え、そのバッファ占有量に基づき量子化スケールを算出して上記レートコントロール手段に送るレートコントロールパラメータ設定手段をさらに有することが好ましい。
このような本発明では、可変符号量制御の単位時間ごとの目標符号量の設定について、過去の単位時間のパラメータをフィードバックさせて符号化難易度を算出することで、現在の単位時間の目標符号量を割り当て、全体のビットレートを制御する。
また、難易度を算出するためのフィードバックするパラメータとして、ピクチャ符号化後の発生符号量と量子化値を用いて制御をする。
さらに、割り当てられた目標符号量より、量子化値を決定するためのパラメータ及び仮想バッファを最適化する。
本発明によれば、入力画像信号の過去の単位時間の符号化パラメータに基づいて現在の単位時間の目標符号量を求め、入力画像信号に対して可変ビットレート符号化を行っているため、時間遅延がなくなり、リアルタイム処理を可能にしながら、画質劣化を抑え、ハードウェア負担を低減でき、演算量も少なくて済む。
すなわち、従来においては可変ビットレート符号化の符号量制御をフィードフォワード方式により実現していたのに対し、本発明では、フィードバック方式による実現が可能となり、これにより遅延器によるハードウェア上の負荷が削減され、単位時間(単位フレーム、例えば15フレーム)における符号化難易度計算と割り当てビット量計算の部分の遅延も取り除くことができる。また難易度計算に用いるパラメータについては、過去の単位時間での発生符号量と量子化スケールを用い、これにより難易度を算出し、割り当てビット量を算出することで、より最適なビット割り当てが可能となる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
本発明の実施の形態における画像信号符号化装置の概略構成を図1に示す。
この図1において、入力端子10からの入力映像信号(動画像信号)は、動き検出回路11に送られて動きベクトル検出(ME)が行われ、ピクチャ符号化順並び替え回路12によってピクチャを符号化する順番に並び替えられ、加算器13に送られる。加算器13には、動き補償回路21からの動き予測画像が送られ、ピクチャ符号化順並び替え回路102からの現画像との差分画像が取り出され、DCT(離散コサイン変換)回路14に送られる。動き補償回路21では、上記動きベクトル検出で得たフレーム毎の動き補償残差を使って、動き補償(MC)によりMB(マクロブロック)ごとにイントラ/インター、フレーム/フィールド予測、順/逆/双方向予測などの予測判定が行われ、予測画像が作られる。なおIピクチャについては動き補償は行わずフレーム内予測される。DCT回路14によりDCT処理されて得られた係数データは、量子化器15に送られて量子化される。このときの量子化には、後述するVBR(可変ビットレート)演算器22及びレートコントロール回路23により決定された量子化スケールが用いられる。得られた量子化係数はVLC(可変長符号化)回路16によりVLC処理され、バッフアメモリ17によって一旦保持された後、出力端子29よりビットストリームとして出力される。なお、量子化器15からの量子化出力は、ローカルデコーダとしての逆量子化器18、逆DCT回路19、加算器20を介して復号され、動き補償回路21に送られている。
本発明の実施の形態においては、レートコントロール回路23において決定される量子化スケール(Qスケール、量子化値)の算出方法を、VBR(可変ビットレート)を適用し最適化させることで、より量子化スケールを安定化させ、画質向上を実現している。すなわち、入力画像信号の単位時間(例えば1GOP、15フレーム)毎に目標符号量を求めて可変ビットレート符号化を行う際に、入力画像信号の過去の単位時間の符号化パラメータに基づいて現在の単位時間の目標符号量を求め、入力画像信号に対して可変ビットレート符号化を行うようにしている。
具体的に、図1のVBR演算器22及びレートコントロール回路23においては、まず所定の単位時間(例えば1GOP、15フレーム)毎に割り当てられたビットから、前時間のコンプレキシティ値(複雑度)をフィードバックさせ単位時間(例えばGOP)内の各フレームに対してターゲットビット(目標符号量)を求める。それを基に、各フレーム内のMB(マクロブロック)毎に量子化スケールを求め、発生符号量を制御している。ここで量子化スケールの算出法の具体例としては、レートコントロール仮想バッファを設け、MBに割り当てられるビット量と実際発生したビット量の差分をレートコントロール仮想バッファに蓄え占有量を計算する。以下に式を示す。
Figure 2005045736
この式(1)の仮想バッファ占有量d及びリアクションパラメータreact_qを用いて、以下の式(4)によりj番目のMB(マクロブロック)の量子化スケールqを求める。
j番目のMBの量子化スケール q = d×31/react_q (4)
以上の式により、現MB(マクロブロック)の量子化スケールは、前MBまでの発生符号量を参照し、それによって更新させる仮想バッファ値(仮想バッファ占有量d)とリアクションパラメータreact_qとにより決定する。この後、適応量子化により量子化スケールの補正を行えばよい。
従来の方式では、上記リアクションパラメータを固定値としている。ビットレートの変化が小さければ影響は少ないが、ビットレートが大きく変化する場合には、リアクションパラメータを固定値とすると、上記式(4)において最適な量子化スケールを求めることができない。例えばビットレートが高い場合でも、仮想バッファの占有量により量子化スケールが変化し易くなってしまう。
これを解決するために、本発明の実施の形態においては、ビットレートの変化に応じて上記式(3)のリアクションパラメータを更新させるようにしている。また上記式(2)に関連して、全てのフレームの先頭MBで仮想バッファの初期値を固定値にした場合には量子化スケールも安定しないため、各ピクチャタイプごと先頭のMBの量子化スケールが前フレームの最後のMBの量子化スケールと同じになるように仮想バッファを設定する。これによって、従来のGOPごとの量子化スケールのずれから起こる劣化を抑えることができ、画質向上を図ることができる。
以上の本発明の実施の形態においては、従来の1パスフィードフォワード方式の問題を解決するフィードバック方式を採用し、より高品質の画質を保証した可変ビットレート制御を実現している。
すなわち、本発明の実施の形態の要点は、従来行っていたフィードフォワード方式によるVBR制御に対して、フィードバック方式でVBR制御を実現したこと、難易度計算の際に参照するパラメータとしてコンプレキシティ(複雑度)を用いたこと、また、VBR演算処理後にレートコントローラで使用するリアクションパラメータ、及び仮想バッファ初期値を単位時間(単位フレーム、例えば1GOP、15フレーム)ごとに設定することである。
次に、実際のフィードバック方式可変符号化制御の具体例、特に図1のVBR演算器22の動作について、図2以降を参照しながら説明する。
図2は、本発明の実施の形態におけるエンコーダ構成及びVBR(可変ビットレート)演算器22の構成例を示すブロック図である。VBR演算器22は、従来のエンコーダに対して、レートコントローラ前に実装され単位時間(単位フレーム、例えば1GOP、15フレーム)の先頭で処理が行われる。バッファ(図1のバッフアメモリ17)から出力されたコンプレキシティ(複雑度)Xに基づいて、符号化難易度計算器31で平均ビットレートの基準値から符号難易度R_currentが単位時間毎に算出される。そして出力されたR_currentから割り当てビット量計算器32により、ターゲットビット量bitrate が算出される。得られたビットレートを用いレートコントロールパラメータ設定器33により、リアクションパラメータreact_qとレートコントロール仮想バッファvirtual_bufが初期化され出力されて、レートコントロール回路23に送られ、動画像符号化器36によるエンコードが制御される、というように処理が流れる。動画像符号化器36には、例えば図1に示すような符号化装置が用いられる。なお、本実施の形態では、VBR演算処理の単位時間(単位フレーム)を1GOP、例えば15フレームとし、1GOPごとにビットレートを可変させることにしているが、これに限定されず、任意数のフレームを単位時間(単位フレーム)としてもよく、また1GOPも15フレームに限定されないことは勿論である。
図2のVBR(可変ビットレート)演算器22は、各部をハードウェアにより構成することもできるが、現実には例えば図3に示すようなコンピュータハードウェアシステム上で動作するソフトウェアプログラムとして実現されることが多い。すなわち、この図3において、VBR演算器22は、CPU41、ROM42、RAM43、I/O(インターフェース)45を有してなるハードウェアシステム上で動作するソフトウェアプログラムとして実現されている。
次に、VBR(可変ビットレート)演算処理について、図4のフローチャートを用いて説明する。まずステップS1にて画像が入力され、シーケンスの最初でステップS2により、これから行われるVBR演算処理に必要なパラメータについて初期化される。ここでは先に述べたように、実際の割り当て符号量を制御し、所定時間長を保証するためのVBR仮想バッファを初期化している。またVBR処理の単位時間(VBR仮想バッファ処理を行う単位)T_vbr毎に、次の式(6)によりバッファを更新する。尚、この計算についてはT_vbr毎の先頭で行われる。
Figure 2005045736
次に、ステップS3においては、映像信号のシーンチェンジ検出の有無を調べ、検出されない場合にはステップS4の符号難易度計算により単位時間(例えばGOP)ごとの難易度を算出する。
この符号難易度計算について、図5のフローチャートを参照しながら説明する。まず、図5のステップS41で、直前の単位時間(前GOP)のコンプレキシティ(複雑度)をフィードバックし、以下のように平均値を求めている。
Figure 2005045736
本発明の実施の形態においては、フィードバック方式によるため、様々なパラメータを参照できるが、ここでコンプレキシティ(複雑度)を用いたのは、エンコード時のQスケール(量子化スケール)と実際に発生した符号量との関係が、その画像の難易度を求めるのにもっとも最適であると判断したためである。これにより、より固定Qスケールに近い動作の実現を図っている。ステップS41によって得られたGOPの平均コンプレキシティ(Avg_GOP_complexity)は、ステップS42において最大値(initial_avg_complexity×PARAM_MAX)でクリップされる。次のステップS43ではパラメータの基準値の更新を行っている。現時点で求めたい難易度は前GOPのVBR演算で使用したコンプレキシティの基準値を引きずる形で急激な変化にも対応できるよう、ビットレート変動の追従速度を用いて制御している。式は以下の通りである。
avg_complexity_R
=avg_complexity_R×React+Avg_GOP_complexity×(1-React) (9)
ここで、avg_complexity_R:コンプレキシティの基準値、React:ビットレート変動の追従速度、である。
図5のステップS44では、コンプレキシティと実際のターゲットビット量とは比例の関係があるため、ここで重み付けをすることで難易度値に幅をもたせ、理想的なビット量を算出する。この重み付け係数に関してはアプリケーションに依存する。算出された理想的なビット量ideal_bit_GOPは、平均ビットレートとの比率をとることでGOPの符号化難易度を算出することができる。
ideal_bit_GOP=avg_complexity_R×W_complx (10)
R_current=ideal_bit_GOP×(picture_rate/GOP_num)/Rate_vbr (11)
Rate_vbr=Rate_target×R_margin (12)
ここで、ideal_bit_GOP:GOPの理想的ビット量、W_complx:コンプレキシティの重み付け係数、R_current:GOPの符号難易度、である。
上記式(11)中のRate_vbrについて、ここでは単位時間T_vbr内の平均ビットレートから上記ステップS2により与えたVBR仮想バッファ容量を引いた分、実際の計算で平均ビットレートの基準値とし、後々に起こりうるバッファ容量の不足を符号量に余裕をもたせることにより改善している。
上記図4のステップS3でシーンチェンジ検出された時は、ステップS5のシーンチェンジ処理が行われ、このステップS5でのシーンチェンジ処理の具体例を図6に示す。この図6に示すように、ステップS51において、パラメータの基準値avg_complexity_Rを初期化(avg_complexity_R=initial_avg_complexity)し、ステップS52において、符号化難易度R_currentを1.0に初期化(R_current=1.0)し、前基準値を引きずらないようリセットしている。
以上より算出された符号化難易度R_currentは、図4のステップS6にて符号化難易度補正処理が施される。具体的には、例えば図7のステップS61〜S64に示すように、符号化難易度R_currentをあらかじめ与えた最大値と最小値でクリップすることが挙げられる。これは難しすぎる画像へのビット配分を制限することで、易しい画像に対してのビット配分を保証するためである。また、ステップS65において、前GOPのエンコーダが終了した時点でのVBR仮想バッファの残量がVBR_BUFF_LOW値を下回っていた場合、つまりバッファ残量がある一定以下になった時、ステップS66でR_currentをVBR_CORR_LOWに補正し、ターゲットビット量を下げている。補正処理を終えた後は、図4のステップS7により、単位時間(例えばGOP)ごとの割り当てビット量を計算する。式は以下の通りである。
Rate_current=Rate_vbr ×R_current (13)
ここで、Rate_current:GOPのターゲットビット量、である
以上によりVBR(可変ビットレート)演算処理が終了し、算出されたビットレートを元とし、単位時間(例えばGOP)ごとにレートコントロール回路23でピクチャ毎のビットそしてMB(マクロブロック)ごとのQスケール値が求められ、動画像符号化器36によりエンコードされる。ここで本発明の実施の形態では、図4のステップS8にて、先に述べたようにリアクションパラメータとレートコントロール仮想バッファの初期値を更新する。このステップS8のレートコントロールパラメータ初期化の具体例を、図8のフローチャートに示す。この図8のステップS81におけるリアクションパラメータ更新は、上記式(3)に示した通りであり、ステップS82のレートコントロール仮想バッファの初期化は以下の通りである。
initial_virtual_buf_i=virtual_buf_i/react_q_bef×react_q (14)
initial_virtual_buf_p=virtual_buf_p/react_q_bef×react_q (15)
initial_virtual_buf_b=virtual_buf_b/react_q_bef×react_q (16)
ここで、react_q_bef:前GOPのリアクションパラメータ、initial_virtual_buf_i, _p, _b :レートコントロール仮想バッファの初期値、virtual_buf_i ,_p, _b :レートコントロール仮想バッファ値、である。
この式により、新しい単位時間(例えばGOP)ごとに固定値に初期化するのではなく、各ピクチャタイプごと前フレームの最後のMBのQスケール値を設定することで、Qスケールの大きな変化と画質の劣化を防ぐことができる。以上によって単位時間、例えば1GOP分のVBR演算処理が行われ、レートコントロール、エンコーダのように処理が流れていく。1GOP分のエンコーダ処理が終了したら、図4のステップS9でその時点で得られたGOPの発生符号量とT_vbr内のGOPに割り当てられる平均ビット量との差をとり、これをあらかじめステップS2で設定した仮想バッファを使って占有量を計算し更新する。
V_buffer −= (GOP_generated_bits−Rate_vbr×GOP_num/picture_rate) (17)
ここで、GOP_generated_bits:前GOPの発生符号量、である。
以上の処理を単位時間T_vbr内の全GOPで行い(ステップS10)、シーケンスが終了するまで繰り返す(ステップS11)ことで、VBR(可変ビットレート)演算処理が終了する。
上述したような本発明の実施の形態によれば、従来のVBR符号化の符号量制御をフィードフォワード方式により実現していたのに対し、フィードバック方式による実現が可能となる。これにより従来の遅延器によるハードウェア上の負荷が削減され、単位時間における符号化難易度計算と割り当てビット量計算の部分の遅延も取り除くことができる。また難易度計算に用いるパラメータについてはコンプレキシティを用いて更に重み付けを加え、難易度を算出し、割り当てビット量を算出することで、より最適なビット割り当てが可能となる。さらに可変するビットレートに対してフィードバックループの応答速度が最適となるようなリアクションパラメータを設定し、レートコントロールの仮想バッファ値も前ピクチャの最後のMBから更新することで、より正確で安定性のある量子化値を得ることができ、結果的に画質向上へとつなげることができる。以上よりフィードバック方式の符号量制御に加え、より高品質な画質を保証する符号量制御器を実現できる。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
本発明の実施の形態となる画像信号符号化装置の概略構成を示すブロック図である。 本発明の実施の形態におけるエンコーダ及びVBR(可変ビットレート)演算器の構成例を示すブロック図である。 VBR(可変ビットレート)演算器のハードウェア構成の例を示すブロック図である。 本発明の実施の形態となる画像信号符号化におけるVBR(可変ビットレート)演算処理を説明するためのフローチャートである。 VBR演算処理における符号化難易度計算処理の一例を説明するためのフローチャートである。 VBR演算処理におけるシーンチェンジ処理の一例を説明するためのフローチャートである。 VBR演算処理における符号化難易度補正処理の一例を説明するためのフローチャートである。 VBR演算処理におけるレートコントロールパラメータ初期化処理の一例を説明するためのフローチャートである。 MPEG方式の動画像符号化に用いられる符号化装置の基本構成を示すブロック回路図である。 従来の1パス方式の可変ビットレート符号化方法を適用した動画像の符号化装置の構成例を示すブロック図である。 1パス方式の可変ビットレート符号化処理を説明するためのフローチャートである。
符号の説明
22 VBR演算処理回路、 23 レートコントロール回路、 31 符号化難易度計算器、 32 割り当てビット量計算器、 33 レートコントロールパラメータ設定器、 36 動画像符号化器

Claims (8)

  1. 入力画像信号の単位時間毎の符号化パラメータを求める工程と、
    上記入力画像信号の過去の単位時間の符号化パラメータに基づいて現在の単位時間の目標符号量を求める工程と、
    上記目標符号量に基づいて上記入力画像信号に対して可変ビットレート符号化を行う工程と
    を有することを特徴とする画像信号符号化方法。
  2. 上記符号化パラメータとして符号化後の発生符号量及び量子化スケールを用い、過去の単位時間の発生符号量及び量子化スケールを用いて符号化難易度を算出することで、現在の単位時間の目標符号量を求めることを特徴とする請求項1記載の画像信号符号化方法。
  3. 上記目標符号量に基づき各フレーム内のマクロブロック毎に量子化スケールを求める際に、レートコントロール仮想バッファを設け、各マクロブロックに割り当てられるビット量と実際に発生したビット量との差分を上記レートコントロール仮想バッファに蓄え、そのバッファ占有量に基づき上記量子化スケールを算出することを特徴とする請求項1記載の画像信号符号化方法。
  4. 入力画像信号の単位時間毎に目標符号量を求めて可変ビットレート符号化を行う画像信号符号化装置において、
    上記入力画像信号の上記単位時間毎の符号化難易度を計算する符号化難易度計算手段と、
    上記符号化難易度計算手段からの過去の単位時間の符号化難易度に基づき割り当てビット量を計算する割り当てビット量計算手段と、
    上記割り当てビット量計算手段からの割り当てビット量に基づき現在の符号化ビットレートを制御するレートコントロール手段と
    を有することを特徴とする画像信号符号化装置。
  5. 上記符号化難易度計算手段は、過去の単位時間の発生符号量及び量子化スケールを用いて符号化難易度を算出することを特徴とする請求項4記載の画像信号符号化装置。
  6. 上記割り当てビット計算手段からの割り当てビット量が入力され、各マクロブロックに割り当てられるビット量と実際に発生したビット量との差分をレートコントロール仮想バッファに蓄え、そのバッファ占有量に基づき量子化スケールを算出して上記レートコントロール手段に送るレートコントロールパラメータ設定手段をさらに有することを特徴とする請求項4記載の画像信号符号化装置。
  7. 入力画像信号の単位時間毎に目標符号量を求めて可変ビットレート符号化を行う画像信号符号化装置の符号化を制御する符号化制御装置において、
    上記入力画像信号の上記単位時間毎の符号化難易度を計算する符号化難易度計算手段と、
    上記符号化難易度計算手段からの過去の単位時間の符号化難易度に基づき割り当てビット量を計算する割り当てビット量計算手段と、
    上記割り当てビット計算手段からの割り当てビット量が入力され、各マクロブロックに割り当てられるビット量と実際に発生したビット量との差分をレートコントロール仮想バッファに蓄え、そのバッファ占有量に基づき量子化スケールを算出するレートコントロールパラメータ設定手段と、
    上記レートコントロールパラメータ設定手段からの量子化スケールに基づき現在の符号化ビットレートを制御するレートコントロール手段と
    を有することを特徴とする符号化制御装置。
  8. コンピュータに、
    入力画像信号の単位時間毎の符号化パラメータを求める手順と、
    上記入力画像信号の過去の単位時間の符号化パラメータに基づいて現在の単位時間の目標符号量を求める手順と、
    上記目標符号量に基づいて上記入力画像信号に対して可変ビットレート符号化を行う手順と
    を実行させるためのプログラム。
JP2003280428A 2003-07-25 2003-07-25 画像信号符号化方法及び装置、符号化制御装置並びにプログラム Pending JP2005045736A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003280428A JP2005045736A (ja) 2003-07-25 2003-07-25 画像信号符号化方法及び装置、符号化制御装置並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003280428A JP2005045736A (ja) 2003-07-25 2003-07-25 画像信号符号化方法及び装置、符号化制御装置並びにプログラム

Publications (1)

Publication Number Publication Date
JP2005045736A true JP2005045736A (ja) 2005-02-17

Family

ID=34266261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003280428A Pending JP2005045736A (ja) 2003-07-25 2003-07-25 画像信号符号化方法及び装置、符号化制御装置並びにプログラム

Country Status (1)

Country Link
JP (1) JP2005045736A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100716791B1 (ko) 2005-08-08 2007-05-14 삼성전기주식회사 이미지 압축디바이스 및 그 방법
KR100723507B1 (ko) 2005-10-12 2007-05-30 삼성전자주식회사 I-프레임 움직임 예측을 이용한 동영상 압축 장치의 적응양자화 제어기 및 적응 양자화 제어 방법
WO2008111454A1 (ja) * 2007-03-14 2008-09-18 Nippon Telegraph And Telephone Corporation 量子化制御方法及び装置、そのプログラム並びにプログラムを記録した記録媒体
JP2009206543A (ja) * 2008-02-26 2009-09-10 Mega Chips Corp トランスコーダ
US8265142B2 (en) 2007-03-14 2012-09-11 Nippon Telegraph And Telephone Corporation Encoding bit-rate control method and apparatus, program therefor, and storage medium which stores the program
US8396130B2 (en) 2007-03-14 2013-03-12 Nippon Telegraph And Telephone Corporation Motion vector search method and apparatus, program therefor, and storage medium which stores the program
US9455739B2 (en) 2007-03-14 2016-09-27 Nippon Telegraph And Telephone Corporation Code amount estimating method and apparatus, and program and storage medium therefor

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100716791B1 (ko) 2005-08-08 2007-05-14 삼성전기주식회사 이미지 압축디바이스 및 그 방법
KR100723507B1 (ko) 2005-10-12 2007-05-30 삼성전자주식회사 I-프레임 움직임 예측을 이용한 동영상 압축 장치의 적응양자화 제어기 및 적응 양자화 제어 방법
WO2008111454A1 (ja) * 2007-03-14 2008-09-18 Nippon Telegraph And Telephone Corporation 量子化制御方法及び装置、そのプログラム並びにプログラムを記録した記録媒体
JPWO2008111454A1 (ja) * 2007-03-14 2010-06-24 日本電信電話株式会社 量子化制御方法及び装置、そのプログラム並びにプログラムを記録した記録媒体
US8265142B2 (en) 2007-03-14 2012-09-11 Nippon Telegraph And Telephone Corporation Encoding bit-rate control method and apparatus, program therefor, and storage medium which stores the program
US8396130B2 (en) 2007-03-14 2013-03-12 Nippon Telegraph And Telephone Corporation Motion vector search method and apparatus, program therefor, and storage medium which stores the program
JP5197574B2 (ja) * 2007-03-14 2013-05-15 日本電信電話株式会社 量子化制御方法及び装置、そのプログラム並びにプログラムを記録した記録媒体
US9161042B2 (en) 2007-03-14 2015-10-13 Nippon Telegraph And Telephone Corporation Quantization control method and apparatus, program therefor, and storage medium which stores the program
US9455739B2 (en) 2007-03-14 2016-09-27 Nippon Telegraph And Telephone Corporation Code amount estimating method and apparatus, and program and storage medium therefor
JP2009206543A (ja) * 2008-02-26 2009-09-10 Mega Chips Corp トランスコーダ
US8780977B2 (en) 2008-02-26 2014-07-15 Megachips Corporation Transcoder

Similar Documents

Publication Publication Date Title
US6823008B2 (en) Video bitrate control method and device for digital video recording
JP4764136B2 (ja) 動画像符号化装置、及びフェードシーン検出装置
JP2002010259A (ja) 画像符号化装置及び画像符号化方法及び画像符号化プログラムを記録した記録媒体
JP2003018603A (ja) 動画像符号化方法及び装置
JPH09271026A (ja) 画像符号化装置
JP3259702B2 (ja) 動画像可変ビットレート符号化装置および方法
JP3907875B2 (ja) 符号化レート制御装置及び情報符号化装置
JP2006295535A (ja) 動画像符号化装置および方法
JP3508916B2 (ja) 動画像可変ビットレート符号化方法および装置
JP2007318617A (ja) 画像符号化装置、及び画像符号化プログラム
JP2004514352A (ja) Mpeg−2スケーラブル復号器内の複雑さの動的な適応
JP4179917B2 (ja) 動画像符号化装置及び方法
JP2001028753A (ja) 動画像符号化装置及びその方法
JP2005045736A (ja) 画像信号符号化方法及び装置、符号化制御装置並びにプログラム
JP2004523985A (ja) ビデオ符号化方法及びこれに対応する符号化装置
JP2004040811A (ja) 動映像符号化のためのdct演算量調節方法及びその装置
JP2008252225A (ja) 動画像符号化装置及び方法
JP4193080B2 (ja) 符号化装置及び方法
JP2003069997A (ja) 動画像符号化装置
JPH11196424A (ja) 画像処理装置および方法、並びに提供媒体
JP3812269B2 (ja) 動画像符号化装置及びその方法
JP2001025015A (ja) 動画像符号化装置及びその方法
JP4857243B2 (ja) 画像符号化装置及びその制御方法、コンピュータプログラム
KR100677128B1 (ko) 동영상 부호화기의 비트율 제어장치 및 방법
CN102202220A (zh) 编码设备及其控制方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060725

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080908

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090303