JP4650454B2 - 符号化装置及び符号化方法 - Google Patents

符号化装置及び符号化方法 Download PDF

Info

Publication number
JP4650454B2
JP4650454B2 JP2007148438A JP2007148438A JP4650454B2 JP 4650454 B2 JP4650454 B2 JP 4650454B2 JP 2007148438 A JP2007148438 A JP 2007148438A JP 2007148438 A JP2007148438 A JP 2007148438A JP 4650454 B2 JP4650454 B2 JP 4650454B2
Authority
JP
Japan
Prior art keywords
picture
encoding
length
group
gop
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.)
Expired - Fee Related
Application number
JP2007148438A
Other languages
English (en)
Other versions
JP2007259493A (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 JP2007148438A priority Critical patent/JP4650454B2/ja
Publication of JP2007259493A publication Critical patent/JP2007259493A/ja
Application granted granted Critical
Publication of JP4650454B2 publication Critical patent/JP4650454B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、Iピクチャ、Pピクチャ、Bピクチャを所定数含んでなる画像符号化グループ(GOP)により、ビデオ素材を符号化する符号化装置及び符号化方法に関する。
ビデオ情報をディジタルビデオディスク(Digital Video Disk:DVD)やビデオCDのようなパッケージメディアに蓄積する際、上記ビデオ情報に圧縮符号化処理を施すエンコードシステムでは、最初に素材の画像の符号化難易度(Difficulty)を測定し、その符号化難易度を元に、パッケージメディアの記録容量内の与えられたバイト数に収まるように、各ビデオ情報のフレームごとにビット配分(以下、Bit assign)処理を行ってエンコードしている。
例えば、上記ディジタルビデオディスク用に、ビデオ情報を圧縮符号化するビデオエンコードシステムの具体例を図12に示す。
図12において、ビデオエンコードの制御を行うビデオエンコードコントローラ10は、システム全体を管理するスーパーバイザコントローラ1に、ネットワーク2を介して接続されている。
スーパーバイザコントローラ1はオペレーティングシステムを構成するプログラムの内、特にシステム全体の動きを監視し、効率的に制御するプログラムであるスーパーバイザを実行するコントローラである。このビデオエンコードシステムにおいてはDVDのオーサリングシステム全体の管理を行い、ビデオ、オーディオ、字幕やメニューといった各エンコードシステムにエンコード条件を与え、エンコード結果の報告を受ける。
このビデオエンコードシステムの具体例に対しては、例えばv.enc というファイルによってビデオエンコード条件を指定している。そして、ビデオエンコードコントローラ10側からは、エンコード結果のビットストリームがハードディスクドライブ(HDD)等を複数並列に接続して記録容量と転送速度性能を向上させたRAID16(Redundant Arrays of Inexpensive Diskes)上に書き込まれたアドレスv.adrと、エンコード結果のビットストリームがオーディオや字幕,メニュー等のサブピクチャとマルチプレックスされる際に必要とされるデータ(vxxx.aui)を報告している。
ビデオエンコードコントローラ10は、グラフィカルユーザインターフェース(Graphical User Interfece:GUI)11と、後述するビット配分計算処理プログラム(Bit_Assign)を格納しているビット配分計算部12と、このビット配分計算部12内部のビット配分計算処理プログラム(Bit_Assign)を実行させるMPEGエンコーダコントローラ13と、ディジタルVTRコントローラ14とを備えている。
ユーザは、グラフィカルユーザインターフェース11を用い、ビット配分計算部12の上記ビット配分計算処理プログラム(BIT_ASSIGN)と、MPEGエンコーダコントローラ13の3つのプログラムを管理することができる。また、DVTRコントローラ14も管理できる。
MPEGエンコーダコントローラ13は、上記ビット配分計算部12内部の上記ビット配分計算処理プログラム(BIT_ASSIGN)を実行すると共に、MPEGエンコーダ15を制御する。また、DVTRコントローラ14はDVTR17を制御する。このDVTR17はMPEGエンコーダ15に接続しており、MPEGエンコーダ15はエンコードした結果を表示するためにモニタ18に接続している。さらに、MPEGエンコーダ15は、エンコード結果を記録するために上記RAID16にも接続している。
MPEGエンコーダ15では、動き補償予測による時間方向の冗長度の除去を行っている。また、MPEGエンコーダ15では、フレーム内だけで符号化されるフレーム内符号化画像をIピクチャ(Intra Coded)、過去の画面から現在を予測することによって符号化されるフレーム間順方向予測符号化画像をPピクチャ(Predictive Coded)、過去、未来の両方向の画像から現在を予測することによって符号化される双方向予測符号化画像をBピクチャ(Bidirectionaly Predictive Coded)を用いて、ビデオ情報を圧縮符号化している。ここでは、必ずIピクチャを1つ含むピクチャのまとまりを図13に示すようなGOP(Group of Pictures)としている。この図13において、GOPのフレーム数Nは15であり、表示順のGOPの先頭は、Iピクチャの前で、P又はIピクチャの次のBピクチャーである。GOPの最後は、次のIピクチャの前の最初のPピクチャである。
このビデオエンコードシステムの動作について図14のフローチャートを参照して説明する。先ず、ステップS1で、スーパーバイザコントローラ1からネットワーク2経由でビデオに割り当てるビット総量や最大レートなどのエンコード条件v.encが与えられ、MPEGエンコーダコントローラ13はエンコード条件を設定する。その後、ステップS2でMPEGエンコーダコントローラ13の制御の基にMPEGエンコーダ15がエンコード素材の符号化難易度を測定する。ここでは、各画素のDC値や動きベクトル量MEも読んでおく。そして、これらの測定結果により、ファイルを作成しておく。
実際の符号化難易度の測定は以下のように行う。エンコード素材となるビデオ情報はDVTR17によってディジタルビデオカセットにマスターとして収録されており、このマスターをDVTRコントローラ14でDVTR17を制御しながら再生してエンコード素材の符号化難易度を測定する。
ここでは、符号化の際に量子化ステップ数を固定値に設定した条件で発生ビット量を測定する。動きが多く、高い周波数成分が大きい画像では発生ビット量が大きくなり、静止画や平坦な部分が多い画像では発生ビット量が少なくなる。この発生ビット量の大きさを上記符号化難易度としている。
次に、ステップS3では、ステップS1で設定されたエンコード条件を元に、ステップS2で測定された各ピクチャの符号化難易度の大きさに応じて、ビット配分計算部12内部のビット配分計算プログラム(BIT_ASSIGN)を実行し、割り当てビット量(ターゲット量 :target)の配分計算を行う。
そして、このステップS3でのビット配分計算による結果を使ってエンコードを実行するかどうかをMPEGエンコーダ15に内蔵されているローカルデコーダ出力の画質によってユーザに判断させる。
実際には、ステップS4で、上記ビット配分によるビットストリームをRAID16に出力しないで、任意の処理範囲を指定できるプレビユーモード(Preview)を行って、ユーザが画質をチェックする。
ステップS5の画質評価で画質に問題がない場合にはステップS6に進み、エンコード処理を実行するが、画質に問題がある場合には、ステップS8に進み、問題のある部分のレートを上げるとか、フィルターレベルを調整するといった画質調整のためのカスタマイズ作業を行ってから、ステップS9で再びビット配分計算部12内部のビット配分計算処理プログラム(BIT_ASSIGN)を実行し、ビット再配分計算を行う。
その後、ステップS4に戻り、カスタマイズした部分をプレビューして、ステップS5で画質を確認し、すべての部分が良ければステップS6に進み、全体のエンコードをMPEGエンコーダ15に実行させる。エンコード結果であるビットストリームは、ステップS7でSCSI(Small Computer System Interface)経由で直接、RAID16に書き込まれる。
ステップS6でのエンコード後、ビデオエンコードコントローラ10は上述したようなエンコード結果情報をネットワーク経由でスーパーバイザコントローラ1に報告する。
この図14のフローチャートにおいて、ステップS2,ステップS4及びステップS6を除いた各ステップの処理はオフライン処理を意味している。
以下、特に、ステップS3で実行されるビット配分計算部12内のビット配分計算処理について詳細に説明する。先ず、スーパーバイザコントローラ1からディスク容量の中から上記ビット総量(QTY_BYTES)と、最大ビットレート(MAXRATE)が指定されると、これに対して、MPEGエンコーダコントローラ13は、最大ビットレート(MAXRATE)以下になるように制限を加えた総ビット数 (USB_BYTES)を求め、この値からGOPのヘッダ(GOP header)に必要なビット数(TOTAL_HEADER)を引いた値と、全体のフレーム総数からターゲット数の総和の目標値となるSUPPLY_BYTESを算出する。
そして、このSUPPLY_BYTESの大きさに収まるようにビット配分計算部12内部のビット配分計算処理プログラムを実行し、各ピクチャへの割り当てビット量(以下、ターゲット量:target)を配分する。
このステップS3でのビット配分計算処理を詳細に示したのが図15のフローチャートである。
先ず、ステップS11で上述したように、スーパーバイザコントローラ1から送られた上記ビット総量(QTY_BYTES)と、最大ビットレート(MAXRATE)が入力されると、MPEGエンコーダコントローラ13は、上述したようにSUPPLY_BYTESを算出する。
次に、上記図14のステップS2の符号化難易度の測定で作成された測定ファイルをステップS12でそのまま読み込み、符号化難易度の測定の際に、併せて測定された各画像のDC値や動きベクトル量MEの大きさのパラメータの変化量から、ステップS13でシーンが変化するポイントを見つける。
このステップS13でのシーンチェンジ検出/処理は、本件出願人が既に特願平8-274094号明細書及び図面にて開示した「映像信号処理装置」に応じてシーンチェンジ点を検出する処理である。
この「映像信号処理装置」は、映像信号の各フレームの直流レベルを検出し、この直流レベルを曲線近似して得られる誤差値より、上記映像信号のシーンチェンジのフレームを検出して、シーンチェンジ点を明らかにする。
そして、図16に示すように、シーンがチェンジしたとして検出したポイントは、PピクチャーをIピクチャーに変更して、画質改善を計る。
次に、ステップS14でチャプター(CHAPTER)境界処理を行う。DVD再生装置でのチャプターサーチ時には、特定されないピクチャからジャンプしてくることになるが、その場合でも再生画像の乱れがないようにするため、図17に示すようにチャプターの位置が必ずGOPの先頭になるようにピクチャタイプを変更する。図17ではPピクチャをIピクチャに変更している。
このようなステップS12,ステップS13での一連の作業の結果、ピクチャタイプ(I,P,Bピクチャ)の変更処理が実行されると、符号化難易度測定時のピクチャタイプが変更されるため、ステップS15で変更後のピクチャタイプに合わせた符号化難易度の値に補間/補正する。
ステップS15での符号化難易度の補間/補正によって得られた符号化難易度と、全体に与えられたビット数(SUPPLY_BYTES)に応じて、ステップS16で各ピクチャごとのターゲットビット数を計算する。
そして、ステップS17でRAID16にエンコード結果のビットストリームを書き込む際のアドレスの計算を行った上で、ステップS18に進み、エンコーダ用のコントロールファイルを作成する。
例えば、ビット配分計算の具体例として、先ずGOP単位にビット量を配分してから、各GOP内で各ピクチャの符号化難易度に応じたビット配分を行う場合を説明する。ここでは、各GOP毎の符号化難易度の和であるGOP_DIFFに応じて、エンコードする際のGOP単位のビット割り当て量(GOP_TARGET)を配分している。このGOP_DIFFとGOP_TARGETとを変換するもっとも簡単な関数の例を図18に図示する。
この例では、縦軸YをGOP_TARGET、横軸XをGOP_DIFFとして、Y=AX+Bという評価関数を用いている。なお、全てのピクチャの符号化難易度の総和(DIFFICULTY_SUM)を算出しておく。
先ず、最大ビットレート以下になるように制限を加えた総ビット数USB_BYTESを、スーパーバイザコントローラ1から与えられたビット総量QTY_BYTESと、最大ビットレートMAXRATEを使って、
USB_BYTES = min (QTY_BYTES,MAXRATE × KT × total_frame_number)
・・・(1)
のように求める。
ここで、NTSCの場合 KT=1/8(bits)/30(Hz), PALの場合1/8(bits)/25(Hz)である。また、total_frame_number はエンコードする素材のフレーム総数、min(s,t)は s,t の内で小さい方を選択する関数である。
また、SUPPLY_BYTESは、上記(1)式で求めたUSB_BYTESからGOPのヘッダに必要なビット数TOTAL_HEADERを引いて、
SUPPLY_BYTES = USB_BYTES - TOTAL_HEADER ・・・(2)
のように求める。
次に、全てのピクチャの符号化難易度の総和は、
DIFFICULTY_SUM = Σdifficulty ・・・(3)
と表せる。
また、GOP_TARGETの最小値を次の(4)式のように、
B = GOP_MINBYTES ・・・(4)
とする。
すると、図18に示した評価関数のような
Σy = A×Σx + B×n
が得られる。
ここで、Σy = SUPPLY_BYTES, Σx = DIFFICULTY_SUM 、n は GOP の総数である。
よって A = (SUPPLY_BYTES - B×n)/ DIFFICULTY_SUM となる。すると、各GOP毎のターゲット量は、
GOP_TARGET = A × GOP_DIFF + B ・・・(5)
と表せる。
その後、各GOP内で各ピクチャの符号化難易度に応じたビット配分を行う。GOP内での各ピクチャの配分は符号化難易度 の大きさに比例させた場合には、各ピクチャのターゲット量は以下の(6)式で求められる。
target(k) = GOP_TARGET × diffuculty(k)/GOP_DIFF ・・・(6)
(1 ≦ k ≦ GOP 内の picture 数)
この場合、素材の中に極端に難しい(GOP_DIFFが大きい)ピクチャがあると、非常に大きいGOP_TARGET量となってしまい、システムで許容されている最大レートを越えてしまうため、GOP_MAXBYTESといった固定量でリミッタをかけることが必要である。また、最小のターゲット量もGOP_MINBYTESで制限する。具体的には、以下に説明するアルゴリズムによっている。
MPEGビデオのエンコード時には、仮想デコーダのバッファ残量を考慮しながらビット配分することが義務付けられている。この仮想バッファ残量の計算をVBV(Video buffering Verifier) という。
先ず、図19を用いてVBV計算方法を説明する。この計算の最初のOCCUPANCY_UP(0)は次の(7)式に示すように、固定値(この例では VBVMAX * 2/3 )からスタートする。
OCCUPANCY_UP(0) = VBVMAX * 2/3 ・・・(7)
以下の OCCUPANCY_UPはグラフ上の各ピクチャの上側のポイント、OCCUPANCY_DOWNはグラフ上の各ピクチャの下側のポイントを意味している。
DVDのバッファサイズVBVMAX(1.75Mbits)に対して、k番目のピクチャのバッファのスタート点をOccupancy_up(k), k 番目のピクチャのターゲット量をtarget(k)とすると、ピクチャにビットを吐き出したあとのバッファ残量 OCCUPANCY_DOWN(k)は後述する(8)式で表される。このバッファには、デコーダのピックアップからビデオのデータ量に応じたビットレートのデータ量(SYSTEM_SUPPLY)が蓄積される。この供給後のバッファ残量 OCCUPANCY_UP(k+1) は次の(9)式で表される。
OCCUPANCY_DOWN(k) = OCCUPANCY_UP(k) - target(k) ・・・(8)
OCCUPANCY_UP(k+1) = OCCUPANCY_DOWN(k) + SYSTEM_SUPPLY ・・・(9)
この供給後のバッファ残量は、図19の図中の右上に上がる量に相当する。供給されるビットレートが大きいほど傾きは大きくなり、バッファにデータがたまりやすくなる。バッファがいっぱいになった場合には、ピックアップからバッファへの供給がストップするため、バッファのオーバーフローに関しては考慮する必要はない。このことは、ある設定値ちょうどに制御する必要はなく、設定値以上になるように制御すれば良いことを意味している。
逆に、各ピクチャのデータ量が大きいと、バッファにたまったデータは減少する。このバッファ残量が一定値以下にならないようにターゲットビット量を計算する。そして、ビデオのデータ量に応じたビットレートのデータ量のSYSTEM_SUPPLYを、
SYSTEM_SUPPLY = MAXRATE(bps) * KT ・・・(10)
のように求める。
図20にGOP単位でのターゲットビット配分計算をおこなった例を示す。図20の(A)は評価関数とGOP_MAXRATE制限を考慮して求めたターゲット量に対して上記VBVバッファ計算をおこなった場合である。ここで、図20の(A)での[1],[4],「7」のピクチャでVBVバッファの下限であるVBVMINの値を下回っている。そこで、VBVがVBVMINを下回ったピクチャを含むGOPのターゲット量を削減させる。GOP内でVBV制限を加える前のターゲット量でVBV計算を実行したときのOCCUPANCYの最小値をOcc_minとすると調整量は以下の式であらわされる。ここで、制限をおこなうスタート点kstartは、OCCUPANCY_UP(k)が基準値(VBVLINE : たとえば VBVMAX * 3/4) 以上のkの値で、このときのOCCUPANCY_UP(k)の値をOcc_startとする。
OCCUPANCY_MIN< VBVMIN の時
r = (Occ_start - VBVMIN)/ (VBVSTART - Occ_min) ・・・(11)
各ターゲットに対して target(j) = target(j) × r (kstart ≦ j ≦ k) とする。
このようにして求められたターゲット量を用いて作成されたコントロールファイルによるエンコード処理を行うことで、素材の画像の難しさに応じた可変ビットレートエンコーディングが実行される。
特開平8−98179号公報 特開平8−140100号公報
ところで、DVDフォーマットでは、1つのGOP構造に含まれるフィールド数(以下 display_fields) がNTSCで36以下、PALで30以下という規定がある。符号化難易度測定時には、この制限を守るGOPの長さでGOPの構造が決められる。オフライン処理によるチャプター指定やシーンチェンジ指定が加わると、図16、図17のようにIピクチャが追加されるため、GOPの数が増加し、かつ、長さの短いGOPが発生することになる。
そもそも、Iピクチャはフレーム内だけで符号化されるため、符号化効率が悪い。したがって、GOPの数がむやみに増加すると符号化効率が悪くなる。また、極端に短い長さのGOPが存在するということは、符号量の多いIピクチャの間隔が狭いことを意味する。
図20に示したVBVの計算の例でわかるように、大きいターゲット量のピクチャの間隔が短いとVBVバッファ制限にかかりやすくなり、その結果その部分のレートを下げなければならなくなり問題となっていた。
本発明は、上記実情に鑑みてなされたものであり、Iピクチャ、Pピクチャ、Bピクチャを所定数含んでなる画像符号化グループの長さが短くなっても符号化効率の悪化を防ぐことのできる符号化装置及び符号化方法の提供を目的とする。
本発明に係る符号化装置は、上記課題を解決するために、画像データを符号化する符号化装置において、Iピクチャ、Pピクチャ、Bピクチャを含む符号化グループ内でピクチャタイプを変更し、ピクチャタイプが変更されたピクチャに関連する各画像符号化グループの長さを変更する変更手段と、上記変更手段により長さが変更された符号化グループのうち長さが短い第1の符号化グループと、この第1の符号化グループに隣接する長さが変更されない第2の符号化グループとの各符号化グループの長さを予め決定されている符号化画像数の範囲で調整する際に、上記第2の符号化グループ内のPピクチャのうち、符号化難易度の大きい方のPピクチャをIピクチャに変更して、各画像符号化グループの長さの修正を行う修正手段とを備える。
本発明に係る符号化方法は、上記課題を解決するために、画像データを符号化する符号化方法において、Iピクチャ、Pピクチャ、Bピクチャを含む符号化グループ内でピクチャタイプを変更し、ピクチャタイプが変更されたピクチャに関連する各画像符号化グループの長さを変更する変更工程と、上記変更工程により長さが変更された符号化グループのうち長さが短い第1の符号化グループと、この第1の符号化グループに隣接する長さが変更されない第2の符号化グループとの各符号化グループの長さを予め決定されている符号化画像数の範囲で調整する際に、上記第2の符号化グループ内のPピクチャのうち、符号化難易度の大きい方のPピクチャをIピクチャに変更して、各画像符号化グループの長さの修正を行う修正工程とを備える。
本発明に係る符号化装置及び方法は、Iピクチャ、Pピクチャ、Bピクチャを所定数含んでなる画像符号化グループの長さが短くなっても符号化効率の悪化を防ぐことができる。
以下、本発明に係る画像符号化方法及び装置の実施の形態について図面を参照しながら説明する。
この実施の形態は、例えばディジタルビデオカセットテープに記録されたビデオ素材をディジタルビデオディスク(Digital Video Disk:DVD)用に、エンコードするためのビデオエンコードシステムであり、図1に示すような構成である。
このビデオエンコードシステムは、上記図12に示したビデオエンコードシステムと基本的に構成を同じにしているが、ビデオエンコードコントローラ20でのビット配分処理を異ならせている。なお、上記図12と同様の動作を行う各部については同一符号を付し説明を省略する。
本実施の形態となる図1に示したビットエンコードシステムの基本的な動作は、上記図14のフローチャートを参照しながら説明することができるが、制御手段となるMPEGエンコーダコントローラ23が実行する上記ビット配分計算部22内のビット配分プログラム(BIT_ASSIGN)は、図2に示すような処理フローとなる。
この図2に示す処理フローは、上記図15に示したフローチャートのステップS14とステップS15との間に、ステップS20としてGOP構造の修正処理工程を設けている。
このステップS20は、ステップS13,ステップS14で画像符号化グループの長さが変更されたときには、隣接する複数の画像符号化グループとの間隔を、予め決定されている上記各符号化画像の数の範囲内で調整するという処理である。
以下、ステップS13のシーンチェンジ処理や、ステップS14でのチャプターの境界処理で、短くなったGOPに対して、DVDフォーマットの制限内(DISPLAY_MAX:この例では36以内)で数を削減または、極端に短いGOP長(8以下)の構造を修正する例を図3〜図8を用いて説明する。ここでは後述するプルダウン(pulldown)変換処理は無いものとする。また、GOPの並びをGOP0,GOP1,GOP2とし、GOP1を処理の対象とする。ただし、GOP1のIピクチャがチャプター指定又はシーンチェンジ指定されている場合にはこの処理は行わない。
先ず、図3及び図4を用い、チャプター指定に対してGOP数を削減する場合について説明する。図3の(A)はチャプター指定される前の、各GOP内の構成を示している。チャプター指定される前のGOP0の長さ、すなわちフィールド数display_fieldsと、GOP1のフィールド数display_fieldsは共に“24”である。ここで、GOP1内の先頭から5番目のピクチャ(Bピクチャ)のときにチャプター(CHAPTERと図示する)指定されると、このBピクチャは図3の(B)のようにIピクチャになる。
このため、図3の(A)のGOP1は、図3の(B)に示すようにフィールド数display_fields“8”のGOP1と、フィールド数display_fields“16”のGOP2の二つになる。
しかし、この図3の(B)に示したGOP1は、フィールド数display_fieldsが“8”と極端に短いのでIピクチャが、次のGOP2のIピクチャと接近し過ぎることになり符号化効率が悪くなり上述したように構造の修正を必要とする。ここでは、GOP1のIピクチャをPピクチャに変更することにより、上記図3の(B)のGOP1を削除し、GOP0とGOP2よりなる図3の(C)を形成する。GOP1の先頭G[0]とGOP2の先頭G[2]間のフィールド数display_fieldsは“32”となるので、上述したDISPLAY_MAX“36”以内というDVDフォーマットの制限を満たすことができる。
チャプター指定によりGOPを削減する場合を示した図3を一般化すると図4のようになる。
ここで、フレーム番号k1とk2の間のdisplay_fields数を次の式で表し、
display_fields(k1 〜 k2)=(k2 - k1)×2+d_adjx
d_adjを、プルダウン変換処理されている場合の補正値とする。プルダウン変換処理されていない場合には d_adjx = 0 となる。
GOP1のIピクチャがチャプター、シーンチェンジ指定されていないとした場合を前提に図4は、
(G[2] - G[0])× 2 + d_adj0 ≦ DISPLAY_MAXの時、GOP1のIピクチャI[1]のピクチャタイプをPピクチャP[0]に変換した状態を示す。
すなわち、チャプター指定によりBピクチャをIピクチャに変更して図4の(A)に示すようにG[1]を先頭にしたGOP1と、G[2]を先頭にしたGOP2とを形成したが、これではGOP1のフィールド数が“8”と短いので、GOP1のIピクチャI[1]をPピクチャP[1]に変換して図4の(B)に示すようにGOP1を削除している。
次に、図5及び図6を用いてチャプター指定に対してGOPを削減できないとき、隣接する一つ前のGOP長を短くする場合について説明する。図5の(A)はチャプター指定される前の、各GOPの構成を示している。チャプター指定される前のGOP0の長さ、すなわちフィールド数display_fieldsと、GOP1のフィールド数display_fieldsは共に“30”である。ここで、GOP1内の先頭から5番目ピクチャであるBピクチャの位置でチャプター指定されると、この5番目のBピクチャは図5の(B)のようにIピクチャになる。
このため、図5の(A)のGOP1は、図5の(B)に示すようにフィールド数display_fields“8”のGOP1と、フィールド数display_fields“22”のGOP2との二つのGOPに分けられる。
ここで、GOP0の長さが閾値(ここでは23)以上のため、図5の(B)のGOP1のIピクチャを図5の(C)のようにPピクチャに変え、図5の(B)のGOP0の一番後ろのPピクチャを図5の(C)のようにIピクチャに変更してGOP0の長さ、すなわちフィールド数display_fieldsを“24”フィールドに削減し、GOP1の長さdisplay_fieldsを“14”に伸ばしている。
また、図5の(D)に示すように、図5の(C)のGOP1のIピクチャをPピクチャに変え、図5の(C)のGOP0の後ろから4番目のピクチャであるPピクチャをIピクチャに変更してGOP0の長さを18フィールドに削減し、GOP1の長さを20フィールドに伸ばしてもよい。
このように、変更の対象となるGOP0のPピクチャは複数(この例では2個)存在するが、その場合には、Pピクチャの符号化難易度の大きい方を選択してIピクチャに変更する。その理由は、符号化難易度の大きい方は、符号化予測が悪いことを意味しているため、フレーム内で処理させるように変更した方が有利だからである。
チャプター指定によりGOPの長さを削減する場合を示した図5を一般化すると図6のようになる。
ここで、図6は、
(G[1] - G[0])× 2 + d_adj1≧23で、
かつ(G[2] - G[1])× 2 + d_adj2 ≦8
の変換条件のとき、
I[1]のピクチャタイプをPピクチャP[1]に変更し、
さらに、GOP0内の複数のPピクチャの内、符号化難易度が大きい方のPピクチャをIピクチャに変換する場合について、二つに分けて示している。
変換前の図6の(A)において、GOP0の先頭から15番目のPピクチャP15[0]が、先頭から12番目のPピクチャP12[0]の符号化難易度より大きい場合、図6の(B)に示すように、PピクチャP15[0]をIピクチャに変換する。
一方、変換前の図6の(A)において、GOP0の先頭から15番目のPピクチャP15[0]が、先頭から12番目のPピクチャP12[0]の符号化難易度以下である場合、図6の(C)に示すように、PピクチャP12[0]をIピクチャに変換する。
次に、図7及び図8を用いてシーンチェンジ処理に対してGOPを削減できない場合で隣接する一つ後ろのGOP長を短くする場合について説明する。図7の(A)はシーンチェンジ処理される前の、各GOPの構成を示している。シーンチェンジ処理される前のGOP0とGOP1のフィールド数display_fieldsの長さは“30”である。ここで、GOP0内の最後のPピクチャの位置でシーンチェンジ(Scene changeと図示する)処理されると、この最後のPピクチャを図7の(B)のようにIピクチャに変換する。このため、図7の(A)のGOP0は二つのGOPに分けられ、図7の(B)に示すようにフィールド数display_fields“24”のGOP0’と、フィールド数display_fields“6”のGOP0になる。このGOP0の後には、フィールド数display_fields“30”のGOP1が続いている。
ここで、GOP1の長さが閾値(ここでは 23 )以上のため、図7の(C)に示すようにGOP1のIピクチャをPピクチャに変え、GOP1の先頭から6番目のピクチャであるPピクチャをIピクチャに変更してGOP1の長さを“24”フィールドに削減し、GOP0の長さを“12”に伸ばしている。
この場合、変更の対象となるPピクチャの数は上記図5の場合より制限している。その理由は、処理をフレーム番号の小さい順におこなっていることから、GOP1の長さを短くしすぎると、次のGOPの処理に影響がおよぼされることを防止するためである。
シーンチェンジ処理によりGOPの長さを削減する場合を示した図7を一般化すると図8のようになる。
ここで、図8は、
(G[2] - G[1])× 2 + d_adj2≧23で、
かつ(G[1]-G[0])× 2 + d_adj1 ≦8
の変換条件のとき、
I[1]のピクチャタイプをPピクチャに変更し、P[1]のピクチャタイプをIピクチャに変更する様子を示している。
すなわち、シーンチェンジ処理によりPピクチャをIピクチャに変更して図7の(B)に示すようにGOP0’とGOP1とを形成したが、これではGOP0のフィールド数が“6”と短いので、GOP1のIピクチャI[1]をPピクチャに変換し、さらにGOP1の最初のPピクチャをIピクチャに変換して図8の(B)に示すようにGOP1の長さを削減している。
このように、本発明による画像符号化方法及び装置によれば、チャプターの指定やシーンチェンジ処理されて短くなったGOPを削減または、極端に短いGOP長の構造を修正することができ、符号化効率を改善することができる。
なお、以上には、プルダウン変換処理を考慮しない場合を説明したが、プルダウン変換処理によりdisplay_fields 数を補正する場合について以下に説明する。最初にプルダウン変換処理について説明する。
映画フィルムは24コマ/秒で構成されているが、これをNTSCの30フレーム/秒に変換するために、周期的に同じフィールド画像を繰り返す処理を行っている。ここでは、この処理を2−3プルダウン処理変換ということにする。図9に2−3プルダウン変換処理の原理を示す。プルダウンのパターンの位相は、フィルム素材からNTSCビデオ素材の変換時に決定され、多くの場合パターンは規則的に変換されている。
ビデオの1フレームは2フィールドで構成されるが、その内の 1st field を top_field とし、2nd field を bottom_field とする。また、同じフィールド画を繰り返す場所は repeat_first_field と呼ぶこととする。このような映画素材の場合、同じフィールドである位置がわかっていれば、エンコードの際にそのフィールドを符号化しないようにすれば、圧縮効率があがることになる。
このような2−3プルダウン変換処理パターンの検出及び、パターンを考慮したプルダウンパターンの自動検出手法では、エンコードの際に現在と1フレーム前の top_field, bottom_field の差分を元に repeat_first_field の位置を調べ、プルダウン位相を検出できる。
符号化の際の2−3プルダウン変換処理のパターンによる組合せは以下の4通りである。
0: bottom_field_first
1: bottom_field_first, repeat_first_field
2: top_field_first
3: top_field_first, repeat_first_field
これらをピクチャーモードと定義する。
次に、2−3プルダウン変換処理パターンとNTSCのロールの先頭からのビデオフレーム番号kの関係を考える。リピートされていないtop_fieldを含む位置のkのピクチャーモードをp_mode[k]とする。すると、0〜3に属さないフレーム番号が存在することがわかる。この場合のp_modeの値を4とする。
図10は、p_mode[k] の状態遷移図である。プルダウンが規則正しく連続している場合には、p_mode[k]の値は、次の(12)式に示すように、フレーム番号 kの増加にともなって5で割った余りの体(mod 5)において1ずつ増加していく。
p_mode[k+1] = (p_mode[k] + 1 ) mod 5 ・・・(12)
図11のadjust0, adjust1 はそれぞれ display_fields を数えるスタートのフレーム番号の p_mode と、終りのフレーム番号の p_mode に対する補正量を示している。たとえば、数え始めの p_mode が0の場合には、符号化されているものには前のフレームの
bottom_field が含まれているため+1となる。数え終りの p_mode が0の場合には、最後の bottom_field が含まれていないため−1となる。
結局、上記図4、図6、図8でプルダウン変換処理が行われた場合、G[0],G[1],G[2]に対する補正量 d_adjx は以下の式で表すことができる。
adjust0[4] = {+1,+1,0,0} ・・・(13)
adjust1[4] = {-1,-1,0,0} ・・・(14)
d_adj0 = adjust0[p_mode[G[0]]] + adjust1[p_mode[G[2]]] ・・・(15)
d_adj1 = adjust0[p_mode[G[0]]] + adjust1[p_mode[G[1]]] ・・・(16)
d_adj2 = adjust0[p_mode[G[1]]] + adjust1[p_mode[G[2]]] ・・・(17)
このようにプルダウン変換処理により、映画フィルムをビデオに変換する場合においても、上述したようにフィールド数を補正することができるので、本発明の画像符号化方法及び装置を適用でき、チャプターの指定やシーンチェンジ処理が施されて短くなったGOPを削減または、極端に短いGOP長の構造を修正することができ、符号化効率を改善することができる。
なお、上記画像符号化方法により圧縮画像信号が記録された記録媒体は、チャプターの指定やシーンチェンジ処理がされていても、隣接する他の画像符号化グループとの間隔が予め決定されている符号化画像数の範囲内で調整されてから、上記各符号化画像に配分するビット量が決定されている画像符号化グループを記録することになるので、符号化効率が改善された高品質の映像を提供できる。
また、上記画像符号化方法により符号化された画像情報を記録媒体に記録するのではなく、例えば有線回線等の伝送路を用いて伝送する画像伝送方法においては、フレーム内符号化画像、フレーム間順方向予測符号化画像、双方向予測符号化画像を所定数含んでなる画像符号化グループの長さを変更するときには、隣接する他の画像符号化グループの間隔を、予め決定されている符号化画像数の範囲内で調整してから、上記各符号化画像に配分するビット量を計算して伝送するので、チャプターの指定やシーンチェンジ処理されて短くなったGOPを削減または、極端に短いGOP長の構造を修正することができ、符号化効率を改善することができる。
本発明に係る画像符号化方法及び装置の実施の形態となるビデオエンコードシステムの具体例のブロック図である。 上記ビデオエンコードシステムに使われるビデオエンコードコントローラ内部のビット配分計算部の実行するビット配分プログラムを説明するためのフローチャートである。 チャプター指定に対してGOP数を削減する場合の、上記ビデオエンコードシステムの動作を説明するための図である。 上記図3を一般化した図である。 チャプター指定に対してGOPを削減できないとき、隣接する一つ前のGOP長を短くする場合の、上記ビデオエンコードシステムの動作を説明するための図である。 上記図5を一般化した図である。 シーンチェンジ処理に対してGOPを削減できないとき、隣接する一つ後ろのGOP長を短くする場合の、上記ビデオエンコードシステムの動作を説明するための図である。 上記図7を一般化した図である。 プルダウン変換処理を説明するための図である。 プルダウン変換処理の状態遷移図である。 プルダウン変換処理に対するGOP内フィールド数の補正値を説明するための図である。 従来のビデオエンコードシステムの具体例のブロック図である。 GOP構造を説明するための図である。 上記従来のビデオエンコードシステムにおけるエンコード処理を説明するためのフローチャートである。 上記図14に示したエンコード処理におけるビット配分計算処理を説明するためのフローチャートである。 シーンチェンジ指定によるピクチャタイプの変更を説明するための図である。 チャプター指定によるピクチャタイプの変更を説明するための図である。 GOP単位の評価関数の例を示す特性図である。 VBVの計算方法を説明するための特性図である。 ターゲットビット配分の具体例を示す図である。
符号の説明
1 スーパーバイザコントローラ、20 ビデオエンコードコントローラ、22 ビット配分計算部、23 MPEGエンコーダコントローラ、25 MPEGエンコーダ

Claims (4)

  1. 画像データを符号化する符号化装置において、
    Iピクチャ、Pピクチャ、Bピクチャを含む符号化グループ内でピクチャタイプを変更し、ピクチャタイプが変更されたピクチャに関連する各画像符号化グループの長さを変更する変更手段と、
    上記変更手段により長さが変更された符号化グループのうち長さが短い第1の符号化グループと、この第1の符号化グループに隣接する長さが変更されない第2の符号化グループとの各符号化グループの長さを予め決定されている符号化画像数の範囲で調整する際に、上記第2の符号化グループ内のPピクチャのうち、符号化難易度の大きい方のPピクチャをIピクチャに変更して、各画像符号化グループの長さの修正を行う修正手段と
    を備える符号化装置。
  2. 上記変更手段は、上記符号化グループ内でシーンがチェンジするポイントを検出したか、又はチャプター指定を行ったことにより、Pピクチャ又はBピクチャをIピクチャに変更する請求項1記載の符号化装置。
  3. 上記修正手段は、上記変更手段によりピクチャタイプが変更されることにより、上記第1の符号化グループの長さが予め決定されている長さよりも短いとき、上記第の符号化グループ内のIピクチャをPピクチャに変更し、上記第2の符号化グループ内のPピクチャをIピクチャに変更する請求項1記載の符号化装置。
  4. 画像データを符号化する符号化方法において、
    Iピクチャ、Pピクチャ、Bピクチャを含む符号化グループ内でピクチャタイプを変更し、ピクチャタイプが変更されたピクチャに関連する各画像符号化グループの長さを変更する変更工程と、
    上記変更工程により長さが変更された符号化グループのうち長さが短い第1の符号化グループと、この第1の符号化グループに隣接する長さが変更されない第2の符号化グループとの各符号化グループの長さを予め決定されている符号化画像数の範囲で調整する際に、上記第2の符号化グループ内のPピクチャのうち、符号化難易度の大きい方のPピクチャをIピクチャに変更して、各画像符号化グループの長さの修正を行う修正工程と
    を備える符号化方法。
JP2007148438A 2007-06-04 2007-06-04 符号化装置及び符号化方法 Expired - Fee Related JP4650454B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007148438A JP4650454B2 (ja) 2007-06-04 2007-06-04 符号化装置及び符号化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007148438A JP4650454B2 (ja) 2007-06-04 2007-06-04 符号化装置及び符号化方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP10978097A Division JP4462643B2 (ja) 1997-04-25 1997-04-25 画像符号化方法及び画像符号化装置

Publications (2)

Publication Number Publication Date
JP2007259493A JP2007259493A (ja) 2007-10-04
JP4650454B2 true JP4650454B2 (ja) 2011-03-16

Family

ID=38633162

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007148438A Expired - Fee Related JP4650454B2 (ja) 2007-06-04 2007-06-04 符号化装置及び符号化方法

Country Status (1)

Country Link
JP (1) JP4650454B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4207760A4 (en) * 2020-08-27 2024-02-21 Bigo Tech Pte Ltd METHOD AND DEVICE FOR IMAGE GROUP PARTITIONING ON A SCENE CHANGE BASIS AND VIDEO CODING METHOD AND DEVICE

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8396114B2 (en) * 2009-01-29 2013-03-12 Microsoft Corporation Multiple bit rate video encoding using variable bit rate and dynamic resolution for adaptive video streaming
JP5189618B2 (ja) * 2010-05-12 2013-04-24 日本電信電話株式会社 映像符号化方法,映像符号化装置および映像符号化プログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0898185A (ja) * 1994-09-29 1996-04-12 Sony Corp 画像符号化装置
JPH0898179A (ja) * 1994-09-29 1996-04-12 Sony Corp 画像符号化装置
JPH08140100A (ja) * 1994-11-14 1996-05-31 Matsushita Electric Ind Co Ltd 映像信号符号化装置
JPH08242452A (ja) * 1995-03-02 1996-09-17 Matsushita Electric Ind Co Ltd 映像信号圧縮符号化装置
JPH0974566A (ja) * 1995-09-04 1997-03-18 Sony Corp 圧縮符号化装置及び圧縮符号化データの記録装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0898185A (ja) * 1994-09-29 1996-04-12 Sony Corp 画像符号化装置
JPH0898179A (ja) * 1994-09-29 1996-04-12 Sony Corp 画像符号化装置
JPH08140100A (ja) * 1994-11-14 1996-05-31 Matsushita Electric Ind Co Ltd 映像信号符号化装置
JPH08242452A (ja) * 1995-03-02 1996-09-17 Matsushita Electric Ind Co Ltd 映像信号圧縮符号化装置
JPH0974566A (ja) * 1995-09-04 1997-03-18 Sony Corp 圧縮符号化装置及び圧縮符号化データの記録装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4207760A4 (en) * 2020-08-27 2024-02-21 Bigo Tech Pte Ltd METHOD AND DEVICE FOR IMAGE GROUP PARTITIONING ON A SCENE CHANGE BASIS AND VIDEO CODING METHOD AND DEVICE

Also Published As

Publication number Publication date
JP2007259493A (ja) 2007-10-04

Similar Documents

Publication Publication Date Title
JP2008109637A (ja) 動画像符号化装置及びその方法
JP3529599B2 (ja) 符号化装置における編集可能点挿入方法および符号化装置
JP3740813B2 (ja) 画像符号化方法および画像符号化装置
JP3911768B2 (ja) 画像符号化方法及び画像符号化装置
JP3837889B2 (ja) エンコード方法およびエンコード装置
JP4650454B2 (ja) 符号化装置及び符号化方法
JP4462643B2 (ja) 画像符号化方法及び画像符号化装置
JP3951152B2 (ja) 画像符号化装置および方法
JPH10304372A (ja) 画像符号化方法および装置、画像伝送方法
JP5046907B2 (ja) 記録装置、その制御方法、プログラム
JP4257504B2 (ja) 立体映像データ処理装置、立体映像データ伝送装置、立体映像データ記録装置
JP4288897B2 (ja) 符号化装置及び方法、プログラム、記録媒体
JP4759360B2 (ja) 画像処理装置
JP4161385B2 (ja) 画像符号化方法及び装置並びに画像処理装置及び画像処理方法
JP3307367B2 (ja) 可変転送レート符号化装置
JP4423216B2 (ja) 画像処理装置
JPH10308942A (ja) 画像符号化方法及び装置並びに記録媒体並びに画像伝送方法
JP4867872B2 (ja) 画像処理装置、この画像処理装置の制御方法、及び、プログラム
JP6300576B2 (ja) 画像処理装置及び画像処理方法
JP3558384B2 (ja) 映像記録再生方法
JP4423215B2 (ja) 画像処理装置
JP4423214B2 (ja) 画像処理装置
JPH10108200A (ja) 画像符号化方法およびその装置
US8149679B2 (en) Recording/reproducing device and method, recording medium, and program
JPH10304376A (ja) 画像符号化方法及び装置並びに記録媒体並びに画像伝送方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100427

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100907

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101029

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

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

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

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees