JP2002511669A - 映像データストリームの適応的符号化方法と装置 - Google Patents
映像データストリームの適応的符号化方法と装置Info
- Publication number
- JP2002511669A JP2002511669A JP2000542929A JP2000542929A JP2002511669A JP 2002511669 A JP2002511669 A JP 2002511669A JP 2000542929 A JP2000542929 A JP 2000542929A JP 2000542929 A JP2000542929 A JP 2000542929A JP 2002511669 A JP2002511669 A JP 2002511669A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- information
- anchor
- frames
- encoded
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/53—Multi-resolution motion estimation; Hierarchical motion estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/114—Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/177—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
の優先権の利益を主張する。
連続性の兆候に対応して情報ストリームを適応的に符号化する方法とそれに付随
する装置に関する。
されるデータを圧縮する。例えば、動画エキスパートグループ(MPEG)は、
デジタルデータ転送システムに関する幾つかの規格を公表している。MPEG−
1として周知の第1の規格はISO/IEC規格11172と呼ばれ、本件の援
用文献である。MPEG−2として周知の第2の規格はISO/IEC規格13
818と呼ばれ、本件の援用文献である。先端テレビシステム委員会(ATSC
)のデジタルテレビ規格書A/53には圧縮されたデジタル映像システムについ
ての説明があり、本件の援用文献である。
を用いた、映像、音声、または、その他の情報の圧縮と伝送に適したデータ処理
と操作技術に関して記述されている。特に、上で引用された規格とその他の“M
PEG準拠”の規格と技術は、内部フレーム符号化技術(ランレングス符号化、
ハフマン符号化等)と内部フレーム符号化技術(前方向と後方向の予測符号化、
動き補償等)を使って映像情報を圧縮する。特に、映像処理システムの場合、M
PEGとMPEG準拠の映像処理システムは、フレーム内動き補償符号化やフレ
ーム間動き補償符号化を使って、もしくは、使わないで、映像フレームを予測ベ
ースの縮符号化するものとして特徴づけられる。
ストリームは、前もって定義されたピクチャ・グループ(GOP)構成に基づい
て符号化される。即ち、受信された映像ストリームは符号化され、例えば、イン
トラ符号化フレーム(Iフレーム)と、それに続く一つ以上の前方向予測符号化
フレーム(Pフレーム)と双方向(即ち、前方向と後方向)予測フレーム(Bフ
レーム)を備えるGOPが生成される。受信された映像ストリームの場面が変化
する場合、新たな場面の第1のフレームは前のアンカーフレームとかなり異なっ
ていてもよい。従って、エンコーダは、第1のフレーム内で非常に大きな割合を
占めるマクロブロックをイントラ符号化する必要がある。この状況では、エンコ
ーダは典型的にはそのフレームをアンカーフレームとして符号化する。これによ
り、前もって定義されたGOP構成内の後続フレームが予測される。
象とされたなら、そのイントラ符号化はエンコーダによって利用されるレート制
御(RC)予測に影響を与える。いかにRCが行われるかによって、これはPフ
レーム自体の符号化の質と、Pフレームの後に符号化される幾つかのフレームの
質に影響を与えることがある。特に、前のアンカーフレームがIフレームであっ
たときが最も影響が大きいと考えられる。
んど、もしくは、全体がイントラ符号化されたマクロブロックをもつPフレーム
と断定されたなら、場面変化の始めの近辺では、ランダムアクセス(即ち、独立
した復号化の可能性)はうまくいかない。従って、ランダムアクセスを行うため
に、Pフレームが予定されていようとBフレームが予定されていようとにかかわ
らず、幾つかのエンコーダで場面変化後の第1のフレームをIフレームとして単
純に符号化する。また、このエンコーダの動作はRC動作に影響を与える。
セスを場面変化点近辺で行うために、MPEG準拠のエンコーダの処理を受信さ
れた映像ストリームでの場面変化領域に適用する方法とそれに付随する装置を提
供することによって上述の問題に取り組むことが望ましいと考えられる。より一
般的には、符号化の質を維持し、符号化されたストリームに対するランダムアク
セスを情報の不連続点近辺で行うために、MPEG準拠のエンコーダの処理を、
受信されたいかなる種類の情報ストリーム内の情報の不連続領域に適用する方法
とそれに付随する装置を提供することが望ましいと考えられる。
点近辺で符号化する質を維持し、また、結果として符号化されたストリームに対
するランダムアクセスを行うことができるように、受信情報ストリーム内の情報
の不連続領域に合わせてMPEG準拠のエンコーダの動作を修正する方法とそれ
に伴う装置を備える。具体的には、情報の不連続領域に先行するIフレームを備
えるアンカーフレームをPフレームとして符号化する一方で、情報の不連続領域
の次のアンカーフレームをIフレームとして符号化する。
プ(GOF)情報構成に実質的に基づく一連の符号化情報フレームを生成するシ
ステム内で、各GOFは少なくとも一つのサブGOFを備え、各サブGOFは少
なくとも一つのアンカーフレームを備え、各アンカーフレームはイントラ符号化
フレーム(Iフレーム)と前方予測フレーム(Pフレーム)のうちの一つを備え
る。本発明の方法は、前記一連の非符号化情報フレーム内のインターフレーム情
報の不連続領域に対応して、前記情報の不連続領域の次の第1のアンカーフレー
ムはIフレームを備え、また、前記情報の不連続領域に先行する第1のアンカー
フレームはPフレームを備えるように前記GOF情報構成を修正する工程を備え
る。
に理解することができる。
データ構造に名目上従う符号化出力情報ストリームOUTを生成するために入力
情報ストリームを符号化するMPEG準拠の符号化システムの枠内で説明される
。各GOF/GOPデータ構造は、最大の大きさがM個のフレームである複数の
サブGOFまたはサブGOPのデータ構造で構成されたN個のフレームを備える
。各サブGOF/GOPは、各アンカーフレーム(例えば、Bフレーム、もしく
は、Pフレーム)と、オプションとして一つ以上の非アンカーフレーム(例えば
、Bフレーム)を備える。入力された情報ストリームIN内のフレーム間の情報
の不連続性に対応して、本発明では、不連続な情報の後の第1のアンカーフレー
ムがIフレームを備え、また、不連続な情報に先行する第1のアンカーフレーム
がPフレームを備えるように符号化出力情報ストリームを修正する。
。具体的には、図1は、第1の符号化モジュール101、第2の符号化モジュー
ル、コントローラ103、セレクタ104、出力バッファ160を備えるMPE
G準拠の符号化システム100を示す。MPEG準拠の符号化システム100は
、複数の非圧縮情報フレーム、例えば、映像情報ストリームを構成する一連の画
像を備える入力情報ストリームINを受信して符号化し、符号化された出力情報
ストリームOUTを生成する。
、フレーム・グループ(GOF)やピクチャ・グループ(GOP)のデータ構造
に部分的に従う第1の符号化情報ストリームS101を生成する。第1の符号化
情報ストリームS101は、GOFやGOPのデータ構造に部分的に従う。何故
なら、フレームがGOF/GOPデータ構造に基づくイントラ符号化されたフレ
ーム(Iフレーム)になるように予定されていたとしても、第1の符号化モジュ
ール101は、前方向予測符号化されたフレーム(Pフレーム)として各アンカ
ーフレームを符号化するからである。従って、第1の符号化情報ストリームS1
01は、Pフレームをアンカーフレームとして備えるサブGOP、もしくは、サ
ブGOFを備える。第1の符号化情報ストリームS101は、サブGOF/GO
Pバッファでバッファされた後、セレクタ104の第1の入力点に入る。
、イントラ符号化されたアンカーフレームのみを備える第2の符号化情報ストリ
ームS102を生成する。具体的には、フレームが、第1の符号化モジュール1
01によって用いられるGOF/GOPのデータ構造に基づくPフレームとなる
予定であっても、第2の符号化モジュール102は、各アンカーフレームをイン
トラ符号化フレーム(Iフレーム)として符号化する。このフレームは双方向符
号化フレームと呼ばれる。何故なら、それはIフレームとして第2の符号化モジ
ュール102によって符号化され、また、Pフレームとして第1の符号化モジュ
ール101によって符号化されるからである。従って、第2の符号化情報ストリ
ームS102はイントラ符号化されたアンカーフレームだけを備える。第2の符
号化情報ストリームS102はサブGOF/GOPバッファでバッファされた後
、セレクタ104の第2の入力点に入る。さらに、以下で説明するが、第2のエ
ンコーダ102によって符号化された各フレームは再生(即ち、復号化)され、
第1の符号化モジュール101の動き予測領域での使用に適する基準アンカーフ
レームを提供する。
ルを示すレート制御信号RCを生成する。レート制御信号RCは第1の符号化モ
ジュール101と第2の符号化モジュール102に与えられる。符号化モジュー
ルはレート制御信号を利用してそれぞれの符号化工程の量子化パラメータを選ぶ
ことにより、出力信号S101、S102のそれぞれのビットレートを制御して
、最も遠くにあるデコーダバッファでのバッファオーバフローやアンダーフロー
を避けることができる。
モジュール101と第2の符号化モジュール102をそれぞれ制御するための第
1の符号化制御信号C1と第2の符号化制御信号C2を生成する。コントローラ
103は、通常、連続動作モードで動作する。ここで、出力バッファに供給され
た情報ストリームは定義されたGOF/GOPデータ構造に従う。例えば,供給
された情報ストリーム内のIフレーム型の連続アンカーフレームの発生を防ぐた
めに、コントローラ103は、例えば、場面変化やその他の情報ストリームが不
連続となる事象があると不連続動作モードに入る。不連続動作モードでは、コン
トローラ103は第1の(一時的)アンカーフレームをIフレームからPフレー
ムに変える。これは可能である。何故ならば、上述したように、各アンカーフレ
ームはIフレームとPフレームとして双方向符号化されるからである。このよう
な情報の不連続な部分を検出するために、コントローラ103は少なくとも一つ
の入力情報ストリームINと第2の符号化モジュール102からのモード決定指
示信号MDを受信する。情報の不連続な部分の検出については以下で説明される
。簡単に言うと、イントラ符号化する(インター符号化や予測符号化ではなく)
ために、閾値より大きな数のマクロブロックが選択される。符号化される情報フ
レームは本来、アンカーフレームとは十分に異なり、これに基づく予測によって
場面の変化等の不連続な情報領域があると推定する。
5P、離散コサイン変換(DCT)モジュール110P、量子化(Q)モジュー
ル、可変長符号化(VLC)モジュール120P、逆量子化(Q-1)125P、
逆離散コサイン変換(DCT-1)モジュール130P、減算器156、バッファ
135P、レート制御モジュール140P、動き補償モジュール145P、動き
推定モジュール150P、アンカーフレーム記憶モジュール170を備える。第
2の符号化モジュール102は複数のモジュールを備えるが、当業者であれば様
々なモジュールによって実行される機能を、図1に示されるような別々のモジュ
ールに分ける必要がないことがわかっている。例えば、動き補償モジュール14
5P,逆量子化モジュール125P,逆DCTモジュール130Pを備えるモジ
ュール集合は、一般的に、“組み込みデコーダ”として周知のものである。
、また、例えばMPEG規格に基づく輝度と2つの色差信号(Y,Cr,Cb)で
表される入力信号経路IN上の一連の画像が映像情報ストリームで表わされる。
さらに、これらの信号は複数のレイヤー(シーケンス、ピクチャ・グループ、ピ
クチャ、スライス、マクロブロック、ブロック)に分割されて、各ピクチャ(フ
レーム)が複数のマクロブロックによって表される。各マクロブロックは、四つ
(4)の輝度ブロック、一つのCrブロック,一つCbブロックを備え、ブロック
とは八個の(8)サンプルアレイによって八(8)個のものとして定義される。
ブロック単位にピクチャを分割することにより、2つの連続するピクチャ間での
変化を識別する能力を改善し、また、小振幅の変換係数を削除することによって
画像圧縮を改善する(以下で説明される)。デジタイズされた信号は、適切な窓
と解像度と入力フォーマットを選択するためのフォーマット変換等の前処理が選
択的に行われる。
予測マクロブロックを減算して、剰余信号(本技術分野では、単に剰余、もしく
は、剰余マクロブロックとも呼ばれる)を生成する。
ち、予測マクロブロック)を、また、信号経路INから入力マクロブロックを受
信する。もし予測マクロブロックが入力マクロブロックに実質的に類似している
なら(即ち、剰余が比較的小さく、非常に少ないビットを用いて簡単に符号化で
きる)、モード決定モジュール105Pはインター符号化のために減算器155
から剰余信号を選択する。即ち、マクロブロックは、動き補償されたマクロブロ
ック、即ち、動ベクトルとそれに関連する剰余として符号化される。しかしなが
ら、もし予測マクロブロックと入力マクロブロック間の差、即ち、剰余が大きけ
れば、剰余を符号化することは困難である。結論としては、動き補償剰余マクロ
ブロックを符号化するのではなく入力マクロブロックを直接符号化することによ
って、システムはより効率的に動作することができる。
ックの符号化はイントラ符号化と呼ばれ、剰余の符号化はインター符号化と呼ば
れる。これら2つのモード間での選択は、イントラ−インター決定(IID)と
して知られている。典型的には、まず、剰余マクロブロックの分散(VarR)
と入力マクロブロック(VarI)の分散を計算することによってIIDが計算
される。符号化の決定はこれらの値に基づいてなされる。この決定を行うために
使用できる幾つかの機能がある。例えば、最も簡単な機能を用いて、もしVar
RがVarIより小さいなら、IIDはインターモードを選択する。逆に、Va
rIがVarRより小さければ、IIDはイントラモードを選択する。
続な領域があるかないかを示す出力信号MDを供給する。例えば、本発明の一つ
の実施形態では、出力信号MDは、IID工程によってイントラ符号化マクロブ
ロックとして選択された特定の情報フレーム内のマクロブロックの数を示す。特
定の情報フレーム内に非常に多くのイントラ符号化マクロブロックがあることは
、情報フレームが前の情報フレームと実質的に異なることを示している。この実
質的な違いは情報の不連続さ、例えば、入力映像情報ストリームの場面カットや
場面変化等によることがある。場面カットを示す一つのフレーム内の所定数のイ
ントラ符号化マクロブロックを越える逸脱を示すことができるようにコントロー
ラを調整することができる。コントローラの動作については、以下で図2と図3
を用いてより詳細に説明される。
)は離散コサイン変換(DCT)モジュール110Pに与えられる。DCTモジ
ュール110Pは、受信されたマクロブロックの各ブロックに離散コサイン変換
を施して、例えば、八つ(8)のブロックのDCT係数によって八(8)個の集
合を生成する。DCTベースの処理、即ち、サブバンド分解により、次の量子化
工程で重要となる心理視覚的評価基準を効果的に使うことができる。八個のブロ
ックの大きさによる八がMPEG準拠の圧縮システムで一般的に使われているが
、いかなる大きさのブロック、あるいは、マクロブロックも処理できるようにD
CTモジュールを適応させることができることに注目すべきである。DCTモジ
ュール110Pによって生成されたDCT係数は量子化モジュール115Pに与
えられる。
た出力ブロックを生成する。量子化処理では、整数値になるように適切に丸めら
れた量子化値の集合でDCT係数を割ることによって、DCT係数を表す正確さ
を下げる。基底関数の可視度の評価基準を使って、各DCT係数に対して個々に
量子化値を設定することができる(視覚的重み付け量子化として知られる)。即
ち、量子化値は、所定の基底関数の可視度、即ち、人間の目によって正確に検出
可能な係数振幅に対する閾値に対応する。この値を使ってDCT係数を量子化す
ることによって、DCT係数の多くは値“ゼロ”に変換されるので、画像圧縮効
率が改良される。量子化処理は基本的な処理であり、視覚的に高い質を達成し、
エンコーダの出力を所定のビットレート(レート制御)に合わせるように制御す
るために重要な道具である。様々な量子化値を各DCT係数に適用できるので、
“量子化マトリクス”が基準テーブル、例えば、輝度量子化テーブルやクロミナ
ンス量子化テーブルとして一般的に確立される。従って、エンコーダは、変換さ
れたブロックの各周波数係数をどのように量子化するのかを確定する量子化マト
リクスを選択する。
子化スケール(ステップサイズ)を制御したり、出力バッファ160によって生
成されたレート制御信号RCに対応してシステムによって符号化されるDCT係
数の数を制御する。出力バッファ160によって生成されたレート制御信号RC
は出力バッファ160の使用レベルを示す。レート制御モジュール140Pの主
な処理は出力バッファ160の満杯度、即ち、使用レベルを管理することであり
、これにより伝送経路に一定の出力ビットレートを与えることができる。各画像
や一連の画像に依存して符号化レートは大きく変化することがあるが、一定のビ
ットレートが維持されなければならない。
を維持するように各フレームに対する量子化スケールを選択することによって、
第1の符号化モジュール101の出力ビットレートを調整する。即ち、一連のピ
クチャ全体に渡って視覚的な質を均一に保ちながらピクチャに対する目標のビッ
トレートを達成するように、各フレームに対する量子化スケールが選択される。
この方法では、出力情報ストリームOUTの伝送後にデコーダ側(例えば、不図
示の受信器や目標の記憶デバイス内)でバッファオーバフローやアンダーフロー
を発生させないようにレート制御モジュール140Pが動作する。
用レベルを示すレート制御信号RC1に応答することができる。前述したように
、バッファ135Pを使って、例えば、GOF/GOPデータ構造のアンカーフ
レーム(即ち、Iフレーム、もしくは、Pフレーム)と複数の非アンカーフレー
ム(即ち、Bフレーム)を備える、少なくとも一つの符号化されたサブGOF/
GOPを保持する。従って、もしバッファ135Pの容量に制限があると、レー
ト制御モジュール140Pはバッファ135Pがオーバフローしないことを保証
しなければならない。
れたビットストリームによりデコーダの入力バッファをオーバフロー、もしくは
、アンダーフローさせないことを保証することである。オーバフローとアンダー
フローの制御は、仮想的なバッファをエンコーダ内に設けて、それを監視するこ
とによって達成される。この仮想バッファは映像バッファ検証器(VBV)とし
て知られている。デコーダの入力バッファのビット制御を適切に行うことを保証
するために、エンコーダのレート制御処理により、各ピクチャと各ピクチャを構
成する複数画素の各マクロブロックに対してビット割り当て数(ここでは、ビッ
ト集合とも呼ばれる)を決める。各ビット集合内の各複数ビットを使ってビット
ブロックとピクチャ全体を符号化することにより、VBVはオーバフローやアン
ダーフローすることがなくなる。VBVはデコーダの入力バッファの動作を反映
するものなので、もしVBVがオーバフローやアンダーフローしないなら、デコ
ーダの入力バッファではアンダーフローもオーバフローも発生しない。
のピクチャは前のピクチャにある程度似ているという基準の仮定をおく。もしこ
の仮定が正しいなら、ピクチャの画素ブロックは符号化技術によって動き補償さ
れ、この補償後は非常に少数のビットの符号化が必要となる。ピクチャの符号化
で必要な実際のビット数がピクチャに割り当てられた目標ビット数に近い限り、
即ち、実際に使われるビット数がピクチャに対するビット割り当て数以内である
限りこの方法は非常にうまくいく。
x8の量子化DCT係数ブロック)は、可変長符号化(VLC)モジュールに与
えられる。ここで、量子化係数の二次元ブロックは“ジグザグ”の順序でスキャ
ンされ、一次元の量子化DCT係数列に変換される。このジグザグスキャンの順
序は、DCT係数が最低の空間周波数から最大の空間周波数へ概ね連続する順序
である。次に、可変長(VLC)モジュール120は可変長符号化とランレング
ス符号化を使って、マクロブロックに対する量子化DCT係数列と副次的情報の
全てを符号化する。
れたアンカーフレームを基準フレームとして使うために生成する。具体的には、
量子化モジュール115Pによって生成された量子化DCT係数(例えば、8x
8の量子化係数ブロック)は、逆量子化(Q-1)モジュール125Pに与えられ
る。ここで、各マクロブロックは逆量子化処理がなされる。結果としての逆量子
化DCT係数(例えば、8x8の逆量子化DCT係数ブロック)が逆DCT(D
CT-1)モジュール130Pに与えられる。ここで、各マクロブロックは逆DC
T処理がなされて、復号化された誤差信号が生成される。DCT-1モジュール1
30Pで生成された誤差信号は加算器156に入力される。
フレーム情報ストリームAOUTを受信する。この記憶されたアンカーフレーム
情報ストリームAOUTは、第2の符号化モジュール101から供給された入力
アンカーフレーム情報ストリームAINを格納するアンカーフレーム記憶モジュ
ール170から出力されるが、以下で詳細に説明される。手短に言えば、記憶さ
れたアンカーフレーム情報ストリームAOUTは、現在、第2の符号化モジュー
ル102(と第1の符号化モジュール101)によって符号化されたGOFある
いはGOPのイントラ符号化第1情報ストリームAOUTが復号化されたものを
表す。
ーフレーム情報ストリームAOUTを使って動ベクトルを推定する。動ベクトル
は二次元ベクトルであり、動き補償の際に使われ、現在のピクチャ内のブロック
の座標位置から基準フレーム内の座標までのオフセット値を供給する。基準フレ
ームは、前方向予測符号化フレーム(Pフレーム)、もしくは、双方向(即ち、
前方向と後方向)予測フレーム(Bフレーム)でよい。動ベクトルを使って経路
に伝送される情報量を減らすことによって画像圧縮を大幅に改善することができ
る。何故ならば、現在のフレームと基準フレーム間の変化分だけが符号化されて
伝送されるからである。動ベクトルは動き補償モジュール145PとVLCモジ
ュール120Pに与えられる。
の予測効率を改善する。予測誤差を生成するために使われた、復号化された前の
サンプル値を含む過去や将来の基準フレームに対するオフセット値を与える動ベ
クトルを使った予測が動き補償には必要である。即ち、動き補償モジュール15
0Pは前に復号化されたフレームと動きフレームを使って現在のフレームの推定
値を生成する。さらに、当業者であれば、動き推定モジュールと動き補償モジュ
ールによって実行された処理を複合モジュール、例えば、一つのブロック動き補
償器で実行できることがわかっている。
する必要がある。符号化モード決定する分野では、MPEG規格とMPEG準拠
の規格として複数の様々なマクロブロック符号化モードが提供されている。具体
的には、MPEG−2では、イントラモード、非動き補償モード(非MC)、フ
レーム/フィールド/デュアルプライム動き補償インターモード、前方向/後方
向/平均インターモード、フィールド/フレームDCTモードを含むマクロブロ
ック符号化モードがある。
基準ピクチャに基づくブロック内容の経路PF上に動き補償された予測フレーム
(例えば、予測画像)を生成する。減算器155では、経路PF上のこの動き補
償された予測フレームを現在のマクロブロック内の入力情報フレームIN(例え
ば、映像イメージ)から減算して、誤差信号、即ち、予測剰余信号を生成する。
予測剰余信号を生成することにより、映像イメージから冗長な情報を効果的に除
去することができる。上述されたように、予測剰余信号は、別の処理を行うモー
ド決定モジュール105Pに与えられる。
えば、GOF/GOPデータ構造の少なくとも一つの符号化されたサブGOF/
GOPを保持する“先入れ先出し”(FIFO)バッファ等のバッファ135P
で受信される。バッファ135Pに格納されたVLCデータストリームは、セレ
クタ104を介して、例えば、FIFOバッファ等の出力バッファ160に与え
られる。
ットレートの全てが可変となる。即ち、各フレームを符号化するために使われる
ビット数は様々である。出力情報ストリームOUTを、例えば、記憶媒体や遠距
離通信経路等に供給するための固定レートの経路を備えるアプリケーションでは
、出力バッファ160を使ってビットレートを平滑するためにエンコーダの出力
をその経路に合わせる。従って、FIFOバッファ160の出力信号OUTは、
入力情報ストリームINが圧縮されたものである。
10I、量子化(Q)モジュール115I、可変長符号化(VLC)モジュール
120I、逆量子化(Q-1)モジュール、逆離散コサイン変換(DCT-1)モジ
ュール1301I、バッファ135I、レート制御モジュール140Iを備える
。第2の符号化モジュール内に含まれる様々なモジュールは相互に接続され、第
1の符号化モジュール101について上述された方法と実質的に同じように動作
する。従って、2つの符号化モジュール間の差のみについて詳細に説明する。2
つの符号化モジュール間での主な違いは、第2の符号化モジュール102では、
アンカーフレームとして符号化される予定のGOF/GOPデータ構造の入力情
報フレームだけを符号化することである。対照的に、第1の符号化モジュール1
01はGOF/GOPデータ構造の入力情報フレームの全てを符号化する。
モード、即ち、連続動作モードと不連続動作モードのうちの一つで動作する。コ
ントローラ103は連続動作モードで通常動作する。ここで、出力バッファに与
えられる情報ストリームは定義されたGOF/GOPデータ構造に従う。例えば
、供給された情報ストリーム内で連続するIフレーム型アンカーフレームを生成
させないために、例えば、場面変化やその他の情報ストリームが不連続となる等
の事象がおこるとコントローラ103は不連続動作モードに入る。不連続動作モ
ードでは、コントローラ103は第1の(一時的)アンカーフレームをIフレー
ムからPフレームに変える。各アンカーフレームは、上述したようにIフレーム
とPフレームの両方として双方向符号化されているため、このことが可能となる
。コントローラ103の動作は、図1と図2について以下で詳細に説明される。
リーム内に場面変化や“場面カット”があることがわかると、コントローラ10
3は不連続動作モードに入る。連続動作モードでは、スイッチ104の出力点に
GOF/GOPデータ構造に従う情報ストリームを生成させるため、第1のエン
コーダ出力ストリームS101と第2のエンコーダ出力ストリームS102を選
択するように、コントローラ103はセレクタ104を制御する。具体的には、
コントローラ103は、形成されるGOFあるいはGOPの第1のフレームとし
て、GOFあるいはGOPの第1のフレームに関連して形成される第2のエンコ
ーダ出力ストリームS102内のIフレームを選択するようスイッチ104を制
御する。従って、Iフレーム型の双方向符号化フレームが選択される。次に、コ
ントローラ103は、形成されるGOFあるいはGOPの残りのフレームとして
、GOFあるいはGOPの残りのフレームに関連するアンカーフレームと非アン
カーフレームを選択するようにセレクタ104を制御する。この処理は、コント
ローラ103が不連続動作モードに入るまで各GOFあるいはGOPに対して繰
り返される。
情報構成の先頭から一つのサブGOF/GOP内に不連続があるかどうか調べる
。もしこれが本当ではないなら(即ち、前のアンカーフレームがPフレームであ
るため、新たなサブGOF/GOPの第1フレームではない)、コントローラ1
03は、情報の不連続が発生した後のIフレームとしてアンカーフレームを符号
化することによって新たなサブGOF/GOPを開始させる。しかしながら、も
し予定されたIフレームの一つのサブGOF/GOPに不連続が発生すると、コ
ントローラ103は、Pフレーム型の双方向符号化された前のアンカーフレーム
がそれに関連する非アンカーフレーム(即ち、サブGOF/GOPのBフレーム
)に対応して選択されるようにセレクタ104を制御する。次に、コントローラ
103は、情報ディスクの連続領域の直後のIフレーム型の双方向符号化アンカ
ーフレームが選択されるようにセレクタ104を制御する。実際は、新たなGO
F/GOPの予定された第1サブGOF/GOPが、前のGOF/GOP情報構
成の最後のサブGOF/GOPに形成され、また、新たなGOF/GOP情報構
成では、不連続後のアンカーフレームが第1のフレームとして始まる。
供される複数の入力情報フレーム、例えば、映像フレームの各々と関連するフレ
ーム番号(即ち、1−18)を結びつけるものである。表1の第2行は、第1行
の入力映像フレームの各々に関連する場面番号(即ち、1−2)を示す。11番
目のフレーム後の場面1から場面2への場面番号の遷移に注目することは重要で
ある。
化するために使われる所望のGOF/GOPデータ構造を示す。この所望のGO
F/GOPデータ構造は、出力バッファ160から例えば伝送経路に供給される
出力情報ストリームOUT向けの構造である。図1に示された模範的なGOF/
GOPデータ構造は例示するためだけのものであり、GOF/GOPデータ構造
を用いて本発明を実施することができることに注目すべきである。
ル101の出力情報ストリームS101を示す。上述したように、第1の符号化
モジュール101は入力情報ストリームINを受信し符号化して、フレーム・グ
ループ(GOF)、もしくは、ピクチャ・グループ(GOP)のデータ構造、例
えば、表1の第3行に示されたGOF/GOPデータ構造に部分的に従う第1の
符号化情報ストリームS101を生成する。第1の符号化情報ストリームS10
1は、GOFもしくはGOPのデータ構造に部分的に従う。何故ならば、アンカ
ーフレームがGOF/GOPデータ構造のIフレームになる予定であったとして
も、第1の符号化モジュール101は全てのアンカーフレームをPフレームとし
て符号化するからである。従って、第1の符号化情報ストリームS101は、P
フレームをアンカーフレームとして備えるサブGOF、もしくは、サブGOPを
備える。
ル102の出力情報ストリームS102を示す。上述されたように、第2の符号
化モジュール102は入力情報ストリームINを受信し符号化して、イントラ符
号化されたアンカーフレームだけを備える第2の符号化情報ストリームS102
を生成する。具体的には、フレームが、符号化モジュール101で利用されるG
OP/GOPデータ構造に従うPフレームになる予定であっても、第2の符号化
モジュール102はアンカーフレームの全てをイントラ符号化フレーム(Iフレ
ーム)として符号化する。従って、第2の符号化情報ストリームS102はイン
トラ符号化アンカーフレームだけを備える。
された出力情報ストリームOUTを示す。具体的には、第6行は、第1の場面(
フレーム11)と第2の場面(フレーム12)からの変化に対応してGOF/G
OPデータ構造になされた修正を示す。 第3行で定義されたGOF/GOP構造を参照すると、フレーム13はPフレー
ムとして符号化される予定となっている。しかしながら、新たな場面がフレーム
12から始まるので、場面変化領域の次の第1のサブGOP/GOPの第1のア
ンカーフレームはIフレームとして符号化される。フレーム10(双方向符号化
アンカーフレーム)は、既にIフレームとして予定されているので、コントロー
ラによってPフレーム型のフレーム10が出力用に選択され、他方、Iフレーム
型のフレーム13が出力用に選択される。このように、近接する2つのIフレー
ム(即ち、フレーム10と13)を出力するような好ましくない状態が回避され
る。
から供給された別の出力情報ストリームOUTを示す。具体的には、第7行は、
第1の場面(フレーム11)と第2の場面(フレーム12)からの変化に対応し
てGOP/GOPデータ構造に対してなされた修正を示す。ここで、新たな場面
(即ち、フレーム12)の第1のフレームは、第6行で示される新たな場面の第
1のアンカーフレーム(即ち、フレーム13)ではなく、Iフレームとして符号
化される。
レーム切り替えルーチン200のフロー図を示す。具体的には、コントローラ1
03内の制御ルーチンとして、即ち、図1のMPEG準拠のエンコーダ100の
複数の協力的なモジュール間での論理処理として、図2のルーチン200を実行
することができる。アンカーフレームをIフレームとPフレームの両方(即ち、
双方向符号化フレーム)に同時に符号化する符号化システムで、ルーチン200
は適応的フレームの切り替えを行う。
205から始まる。次に、ルーチン200はステップ210に進む。ここでは、
符号化される受信した入力情報フレームがGOP/GOPデータ構造のIフレー
ムとして符号化される予定であるかどうかについて質問される。もしステップ2
10の質問に対する答えは肯定的であれば、ルーチン200はステップ215へ
進む。
化されたIフレームを第1のバッファ(即ち、バッファ_I)に格納する。次に
、ルーチン200はステップ220へ進む。ここでは、受信されたフレームをP
フレームとして符号化し、符号化されたPフレームを第2のバッファ(即ち、バ
ッファ_P)に格納する。ルーチン200は次にステップ225に進む。ここで
は、変数LAST_INTRAが1に設定される。次に、ルーチン200はステ
ップ210へ進む。
はステップ230へ進む。ステップ230では、受信されたフレームがBフレー
ムに符号化される予定になっているかどうかについて質問される。もしステップ
230での質問に対する答えが肯定的であれば、ルーチン200はステップ23
5へ進む。ここでは、変数LAST−INTRAが1であるかどうかについて質
問される。もしステップ235での質問に対する答えが肯定的であれば、ルーチ
ン200はステップ240へ進む。ここでは、受信フレームがBフレームとして
符号化され、符号化されたBフレームが第3のバッファ(即ち、バッファ_B)
に格納される。次に、ルーチン200はステップ210へ進む。もしステップ2
35での質問に対する答えが否定的であれば、ルーチン200はステップ245
へ進む。ここでは、受信フレームをBフレームとして符号化し、符号化されたB
フレームを出力バッファに送る。次に、ルーチン200はステップ210へ進む
。
P)、第3のバッファ(即ち、バッファ_B)は、特有のメモリモジュール、も
しくは、そのメモリモジュールの一部、あるいは、例えば、コントローラ103
の内部メモリ、または、エンコーダ出力バッファの一部を含むその他の入手可能
なメモリを備えてもよいことに注目すべきである。本開示による教唆を受ける当
業者にとって、本発明を様々なメモリ構成に適するように修正することは簡単な
ことであり、また、様々なメモリの位置によって本発明の実施が影響を受けるこ
とはない。
ップ250は進む。ここでは、情報の不連続領域(例えば、入力映像ストリーム
内での場面変化領域)が検出されたかどうかについて質問される。もしステップ
250での質問に対する答えが肯定的であれば、ルーチン200はステップ27
2へ進む。ここでは、変数LAST_INTRAが1に設定されているかどうか
質問される。もしステップ272での質問に対する答えが否定的であれば、ルー
チン200はステップ274へ進む。ここでは、受信フレームがIフレームとし
て符号化され、符号化されたIフレームは出力バッファに送られる。次に、ルー
チン200はステップ210へ進む。
はステップ276へ進む。ここでは、第2のバッファ(即ち、バッファ_P)の
内容が出力バッファに送られる。次に、ルーチン200はステップ278に進む
。ここでは、第3のバッファ(例えば、バッファ_B)の内容が出力バッファに
送られ、そして、ステップ280に進む。ここでは、受信フレームがIフレーム
として符号化され、符号化されたIフレームは出力バッファに送られる。次に、
ルーチン200はステップ282に進む。ここでは、変数LAST_INTRA
が0に設定される。次に、ルーチン200がステップ210に進む。
ステップ255へ進む。ここでは、変数LAST_INTRAが1に設定されて
いるかどうかについて質問される。もしステップ255での質問に対する答えが
否定的であれば、ルーチン200はステップ260へ進む。ここでは、受信フレ
ームがPフレームとして符号化され、符号化されたPフレームは出力バッファに
送られる。次に、ルーチン200はステップ210に進む。
はステップ262へ進む。ここでは、変数LAST_INTRAが0に設定され
る。次に、ルーチン200はステップ264へ進む。ここでは、第1のバッファ
(即ち、バッファ_I)の内容が出力バッファに送られ、そして、ステップ26
8へ進む。ここでは、第3のバッファ(即ち、BUFFER_B)の内容が出力
バッファに送られる。次に、ルーチン200はステップ270に進み、受信フレ
ームがPフレームとして符号化され、符号化されたPフレームが出力バッファに
送られる。次に、ルーチン200はステップ210に進む。
的には、上述のルーチンは、受信したアンカーフレームをIフレームとPフレー
ムの両方に同時に符号化する処理を示す。符号化(即ち、圧縮された)情報フレ
ームを格納するためだけに第1、第2、第3の出力バッファが使用されることに
注目することは重要である。従って、増大する処理に対する必要条件を犠牲にし
て、システムでのメモリに対する必要条件が減る。このシステムで追加された処
理(例えば、第2の符号化モジュールを追加すること)にかかるコストは、メモ
リにかかる費用の低下分の差し引き勘定以上になる可能性があることを本発明者
はわかっている。
ームの全てをIフレームとして符号化する。また、GOF/GOPデータ構造の
Pフレームとして符号化される予定のフレームだけをIフレームとして符号化す
るように第2の符号化モジュール102を制御できることに注目すべきである。
即ち、本発明の別の実施形態では、第1の符号化モジュール101は、GOP/
GOPデータ構造に基づくIフレーム、Pフレーム、Bフレームとして入力フレ
ームを符号化する。同時に、第2の符号化モジュール102は、GOP/GOP
データ構造のPフレームとして符号化される予定のフレームだけをIフレームと
して符号化する。
3だけにより、第1の符号化モジュールの出力ストリームS101を出力バッフ
ァ160に供給させることができること以外は、コントローラ103は上述され
た方法と実質的に同様に動作する。これは、第1の符号化モジュール101の出
力ストリームS101がGOF/GOPデータ構造に従って適切に符号化される
からである。不連続動作モードでは、第1の符号化モジュールの出力ストリーム
S10l内のPフレームをIフレームに置き換える必要があるとき、コントロー
ラ103によって、第2の符号化モジュール102の出力ストリームS102が
出力バッファ160に与えられる。
。具体的には、図3は、符号化モジュール101、コントローラ103、出力バ
ッファ160を備えるMPEG準拠の符号化システム300を示す。MPEG準
拠の符号化システム300は、複数の非圧縮情報フレーム、例えば、映像情報ス
トリームを構成する一連の画像を備える入力情報ストリームINを受信し、符号
化することで、符号化された出力情報ストリームOUTを生成する。
で、フレーム・グループ(GOF)、もしくは、ピクチャ・グループ(GOP)
のデータ構造に実質的に従う符号化情報ストリームS101を生成する。第1の
符号化情報ストリームS101は、サブGOF/GOPバッファ135Pでバッ
ファされ、出力バッファに与えられる。サブGOP/GOPバッファ135Pに
格納された符号化フレームは、コントローラ103によって修正することができ
るが、このことは以下で説明される。符号化モジュール101は様々な要素を含
むが、それらは、図1について上述された第1の符号化モジュール101の対応
する構成要素と実質的に同じように動作する。そのため、様々な要素の中で動作
が異なるものだけを以下で説明する。具体的には、符号化モジュール101は、
加算器155、ノード決定モジュール105P、離散コサイン変換(DCT)モ
ジュール110P、量子化(Q)モジュール115P、可変長符号化(VLC)
モジュール120P、逆量子化器(Q−I)125P、逆離散コサイン変換(D
CT−I)モジュール130P、減算器156、バッファ135P、レート制御
モジュール140P、動き補償モジュール145P、動き推定モジュール150
P、アンカーフレーム記憶モジュール170を備える。
違いは、逆DCTモジュール130Pの出力(即ち、最後のアンカーフレーム)
がアンカーフレーム記憶モジュール170に格納され、動ベクトルを推定する動
き推定モジュール150Pに与えられることである(図1の第2の符号化モジュ
ールからの非符号化Iフレームではない)。さらに、GOF/GOP構造のIフ
レームになる予定の符号化されていない各フレームはアンカーフレーム記憶モジ
ュール170に格納される。従って、アンカーフレーム記憶モジュールは、符号
化されていない最後のIフレームと最後のIフレームに先行する再生されたアン
カーフレームを含む。このように、Pフレームとして再符号化されるIフレーム
(即ち、そのように予定された符号化Iフレーム)の場合、(符号化されていな
いIフレームの他に)Iフレームに先行する再生されたアンカーフレームを使っ
て、符号化されたIフレームに対するPフレームの置換えを予測する。
する。出力バッファ160は、最も遠くにあるデコーダバッファのバッファ利用
レベルを示すレート制御信号RCを生成する。例えば、量子化パラメータを修正
するためにレート制御信号を用いる符号化モジュール101にレート制御信号R
Cを与えて出力情報ストリームOUTのビットレートを制御することで、最も遠
くにあるデコーダバッファでのバッファ・オーバフローやアンダーフローを避け
ることができる。
C1を生成して、入力情報ストリームINと、符号化モジュール101からのモ
ード決定指示信号MDのうちの少なくとも一つを受信する。図3のコントローラ
103は、図1について上述された方法で情報の不連続領域を検出する。また、
図3のコントローラ103が連続モードと不連続モードのうちの一方で動作して
も2つの動作モードでの最終結果は同じ(GOF/GOPデータ構造を適用した
とき)であるが、これらのモードでのコントローラ103の動作は図1のコント
ローラ103の動作とはわずかに異なる。
Nを上述の方法で符号化して、符号化情報ストリームS101を生成する。符号
化情報ストリームは、出力バッファに供給される前に、一時的バッファ(サブG
OF/GOPバッファ135P)に格納される。 情報の不連続領域を検出すると、コントローラ103は不連続動作モードに入る
。もし最後の符号化アンカーフレームをPフレームとして再符号化する(即ち、
現在予定されているPフレームをIフレームとして符号化する)ことが適当と考
えられるならば、最後の符号化アンカーフレーム(Iフレームと推定される)の
符号化前のものがアンカー記憶モジュール170から検索され、次に、非符号化
Iフレーム(アンカー記憶モジュールにも格納される)に一時的に先行する再生
されたアンカーフレームを使ってPフレームとして符号化される。従って、図3
のMPEG準拠のエンコーダは、前に符号化されたIフレームをPフレームとし
て、"オンデマンド"で再符号化する。 図4は、図3に示すMPEG準拠のエンコーダでの使用に適した適応的フレー
ム切り替えルーチン400のフロー図を示す。具体的には、コントローラ103
内の制御ルーチンとして、即ち、図3のMPEG準拠のエンコーダ300の協力
的なモジュール間の論理処理として図4のルーチン400を実施することができ
る。必要に応じてIフレームかPフレームのいずれか一方でアンカーフレームを
オンデマンドで符号化する符号化システム内で、ルーチン400は適応的なフレ
ーム切り替えを行う。
定する。次に、ルーチン400はステップ404へ進み、受信した情報フレーム
が(GOF/GOPデータ構造に従う)Iフレームとして符号化される予定であ
るかどうかについて質問される。もしステップ404での質問に対する答えが肯
定的であれば、ルーチン400はステップ406に進む。ここでは、受信フレー
ムがIフレームとして符号化され、符号化されたIフレームが第1のバッファ(
即ち、バッファ_I)に格納される。次に、ルーチン400はステップ408へ
進み、変数LAST_INTRAが1に設定される。次に、ルーチン400はス
テップ410に進み、受信フレームと前に再生された基準フレーム(即ち、アン
カーフレーム)が非符号化バッファ(例えば、アンカー記憶モジュール170)
に格納される。次に、ルーチン400はステップ404に進む。
0はステップ 412に進む。ここでは、受信フレームがBフレームとして符号
化されるよう予定されているかどうかについて質問される。もしステップ 41
2での質問が肯定的であれば、ルーチン400はステップ 414に進む。ここ
では、変数LAST_INTAが1であるかどうかについて質問される。もしス
テップ414での質問に対する答えが肯定的であれば、ルーチン400はステッ
プ416へ進む。ここでは、受信フレームがBフレームとして符号化され、符号
化されたBフレームは第2のバッファ(即ち、バッファ_B)に格納される。次
に、ルーチン400はステップ404に進む。もしステップ414の質問に対す
る答えが否定的であれば、ルーチン400はステップ418に進む。ここでは、
受信フレームがBフレームとして符号化され、符号化されたBフレームは出力バ
ッファに送られる。次に、ルーチン400はステップ404に進む。
はステップ420に進む。ここでは、情報の不連続領域(例えば、場面変化の領
域)が検出されたかどうかについて質問される。
はステップ422へ進む。ここでは、変数LAST_INTRAが1であるかど
うかについて質問される。もしステップ422での質問に対する答えが否定的で
あれば、ルーチン400はステップ424へ進む。ここでは、受信フレームがI
フレームとして符号化され、符号化されたIフレームは出力バッファに供給され
る。次に、ルーチン400はステップ404に進む。
はステップ426に進む。ここでは、前に格納された基準フレームが Pフレー
ムとして再符号化され、符号化された Pフレーム出力 バッファに供給される
。次に、ルーチン 400はステップ428に進む。ここでは、第2のバッファ
(即ち、バッファ_B)の内容が出力バッファに供給される。次に、ルーチン4
00はステップ430へ進み、受信フレームがIフレームとして符号化され、符
号化されたIフレームは出力バッファに供給される。次に、ルーチン400はス
テップ432に進み、変数LAST_INTRAが0に設定され、次に、ステッ
プ404へ進む。
ップ434に進む。ここでは、変数LAST_INTRAが1であるかどうかに
ついて質問される。もしステップ434での質問に対する答えが否定的であれば
、ルーチン400はステップ436へ進む。ここでは、受信フレームはPフレー
ムとして符号化され、符号化されたPフレームは出力バッファに送られる。次に
ルーチン400はステップ404へ進む。
はステップ438に進む。ここでは、第1のバッファ(バッファ_I)の内容が
出力バッファに供給され、次にステップ440に進む。ここでは、第2のバッフ
ァ(バッファ_B)の内容が出力バッファに供給される。次に、ルーチン400
は444に進む。ここでは、受信フレームはPフレームとして符号化され、符号
化されたPフレームは出力バッファに供給される。次に、ルーチン400はステ
ップ446に進み、変数LAST_INTRAが0に設定され、次に、ステップ
404に進む。図4のルーチン400はより多くのメモリ資源を必要とし、また
、図2のルーチン200より少ない処理資源を必要とする傾向があること以外は
、図4の適応的フレーム切り替えルーチンは図2の適応的フレーム切り替えルー
チン200と実質的に同じ処理を実行する。これは、図4のルーチン400では
、GOPもしくはGOPの第1のフレームとなるように予定される非符号化(即
ち、非圧縮の)情報フレームと、その前の再生されたアンカーフレームを記憶す
る必要があるからである。
す。具体的には、図5は、フレーム遅延モジュール510、符号化モジュール1
01、コントローラ103、出力バッファ160を備えるMPEG準拠の符号化
システム500を示す。MPEG準拠の符号化システム 500は、複数の非圧
縮情報フレーム、例えば、映像情報ストリームを構成する一連の画像を備える入
力情報ストリームINを受信し符号化して、符号化出力情報ストリームOUTを
生成する。図5のMPEG準拠の符号化システム500は、図3について上述さ
れたMPEG準拠の符号化システム300と実質的に同様であるので、2つのシ
ステムの違いだけについて詳細に説明する。
510、例えば、“先入れ先出し”(FIFO)バッファは入力情報ストリーム
INを受信し、遅延された入力情報ストリームINをエンコーダ101に供給す
る。上述したように、GOF/GOPデータ構造は、最大の大きさのMフレーム
をもつ複数のサブGOF、もしくは、サブGOPのデータ構造で構成されるNフ
レームを備える。従って、Mフレーム遅延モジュール510は、GOF/GOP
データ構造に基づく少なくとも一つのサブGOF/GOPを保持することができ
る。
符号化して、フレーム・グループ(GOF)、もしくは、ピクチャ・グループ(
GOP)のデータ構造に実質的に従う符号化情報ストリームS101を生成する
。第1の符号化情報ストリームS101は出力バッファ160に供給される。符
号化モジュール101は、図1と図3について上述された第1の符号化モジュー
ル101の対応する構成要素と実質的に同様に動作する様々な要素を含む。その
ため、それらの様々な要素の動作のうち異なっている点だけを以下で詳細に説明
する。具体的には、符号化モジュール10は、加算器155、モード決定モジュ
ール105P、離散コサイン変換(DCT)モジュール110P、量子化(Q)
モジュール115P、可変長符号化(VLC)モジュール120P、逆量子化器
(Q-1)125P、逆離散コサイン変換(DCT-1)モジュール130P、減算
器156、レート制御モジュール140P、動き補償モジュール145P、動き
推定モジュール150P、アンカーフレーム記憶モジュール170を備える。
、図5の符号化モジュール101が図3の符号化モジュール101内に示された
バッファ135(それに関連する選択的なレート制御信号RC1も)を含まない
ことである。さらに、図5の符号化モジュール101のアンカーフレーム記憶モ
ジュール170は、図3の符号化モジュール101に示されているように、GO
F/GOP構造に基づくGOF、もしくは、GOP(即ち、Iフレーム)の第1
のフレームとなる予定の非符号化情報フレームを格納しない。最後に、図5の符
号化モジュール101のモード決定モジュール105Pは、図3の符号化モジュ
ール 101で示されているように、オプションとしてのモード決定信号 MD
1をコントローラに供給しない。 出力バッファ 160は、図 3の出力バッファ160と実質的に同様に動作す
る。出力バッファ160は、最も遠くにあるデコーダバッファのバッファ利用レ
ベルを示すレート制御信号 RCを生成する。レート制御信号RCは符号化モジ
ュール101に供給される。ここで、符号化モジュール101はこのレート制御
信号RCを使って、例えば、量子化パラメータを修正する。これにより、出力情
報ストリームOUTのビットレートが制御されて、最も遠くにあるデコーダバッ
ファでのバッファ・オーバフローやアンダーフローの発生を避けることができる
。
制御信号C1を生成する。コントローラ103は、入力情報ストリームINを受
信して、その情報ストリーム内で情報の不連続領域を検出する。(非遅延の)入
力情報ストリームIN内で情報の不連続領域が検出されると、コントローラ10
3は、連続する2つのサブGOF/GOPの符号化フレーム・グループの両方に
Iフレームが含まれないように、エンコーダによって使われるGOF/GOPデ
ータ構造を動的に修正する。
10に入る入力情報ストリームINのサブGOF/GOPに情報の不連続領域が
含まれる場合について考える。コントローラ103は入力ストリームを監視する
ことで、遅延入力情報ストリームINをエンコーダ101が受信する前に、情報
の不連続領域を検出する。コントローラ103は、情報の不連続領域を含むサブ
GOF/GOPのアンカーフレームをPフレームとして符号化するようエンコー
ダ101を制御する。また、コントローラ103は、情報の不連続領域(例えば
、新たな場面の第1の映像フレーム)の次の第1のフレーム、もしくは、次のサ
ブGOP/GOPのアンカーフレームをIフレームとして符号化するようエンコ
ーダ101を制御する。
3は各サブGOP/GOPを検査するので、コントローラ103は検査されたサ
ブGOP/GOPを符号化するための最も適した方法を確定することができる。
即ち、コントローラは、符号化される予定の次のサブGOF/GOPに関する情
報を制御信号C1を介してレート制御モジュール140Pに与える。従って、レ
ートコントローラ140Pのバッファ利用予測が改善されるので、エンコーダ1
01の符号化の機能が改善される(例えば、ビット集合安全マージンを減らすこ
とができるので、多くのビットを各フレームに割り付けることによって質の高い
の符号化を行うことができる)。
くは、GOP全体に波及させることにより、特定のサブGOF/GOPで起こっ
ていた品質の低下を最小限にすることができることに注目すべきである。さらに
、視覚的忠実度の維持については、場面の最後のサブGOF/GOPの重要性は
おそらく場面の第1のサブGOF/GOPよりも低いので、現在の場面の最後の
サブGOF/GOPに割り当てられたビットを減らすことができる。このため、
次のサブGOF/GOPに対するビット割付け量を増やすことができるので、新
たな場面のIフレームの品質を改善することができる。
時々2度ではなく、一度だけ各アンカーフレームを符号化することに注目するこ
とは重要である。
ダでの使用に適したコントローラ103を示す。コントローラ103は、同時に
符号化する適応的フレーム切り替えルーチン200や"オンデマンド"で符号化 する適応的フレーム切り替えルーチン400を記憶するメモリ103−8はもと
より、マイクロプロセッサ103−4を備える。マイクロプロセッサ103−4
は、ソフトウエアルーチンの実行を支援する回路はもとより、電源、クロック回
路、キャッシュメモリ等の従来の支援回路と協調動作する。そのため、ここでは
ソフトウエア処理として説明される処理工程のうちの幾つかはハードウエア、例
えば、様々な処理を実行するマイクロプロセッサ103−4と協調動作する回路
で実行することが考えられる。また、コントローラ103は、様々な符号化モジ
ュール(101と102)とセレクタ(104)間のインターフェイスを構成す
る入力/出力回路103−2を備える。本発明に係る適応的フレーム切り替えと
それに関連する制御処理を実行するようプログラムされている汎用コンピュータ
としてコントローラ103が示されているが、特定用途向け集積回路(ASIC
)のハードウエアで本発明を実施してもよい。そのため、(例えば、図2と図4
について)ここで述べられる処理は、ソフトウエア、ハードウエア、もしくは、
その組み合わせで等価的に実行されるものとして広く解釈されるべきである。
を実行することができる。しかしながら、また、コントローラ103を使って、
図1、図3、図5のMPEG準拠のエンコーダを全体的にソフトウエアで実施で
きることに注目すべきである。そのため、図6には、入力情報ストリームINを
受信して、出力情報ストリームOUTを生成するコントローラ103を示す。そ
のソフトウエアを使うことにより、コントローラ103は図1、図3、図5のM
PEG準拠のエンコーダについて上述した処理を実行する。
ンクリスト"の形態で格納してもよいに注目すべきである。即ち、格納された符
号化フレームの各々を、例えば、一連の符号化フレーム内での次の符号化フレー
ムを識別するポインタ変数に関連づけることができる。この方法で、Pフレーム
の代わりにIフレームを選択してエンコーダ出力ストリームS101に入れる処
理には、非選択フレームの“リンクをはずし”、選択フレームを“リンク”する
処理が含まれる。即ち、非リンクのフレームに先行する符号化フレームのポイン
タを作って、リンクされたフレームをポイントする。同様に、リンクされたフレ
ームに関するポインタを作って、非リンクのフレームの次のフレームをポイント
する。
ムの最後のサブGOP/GOPをイントラ符号化する際にそのビット集合を無駄
にすることがなくなる。さらに、本発明は、狭い間隔のイントラ符号化情報フレ
ーム(例えば、連続する2つのIフレーム)によって引き起こされるデコーダバ
ッファのオーバフロー状態が実質的に発生しないように動作する。さらに、双方
向符号化情報フレームの情報の質、例えば、映像情報の質は、IフレームとPフ
レームの両方にとってほとんど同じであると見なせることに注目すべきである。
従って、GOP/GOPの質の向上に加えて、GOF/GOPの各フレームで認
識可能な情報の劣化が起こるとはない。
置によって実施することができる。また、本発明は、有形の媒体、例えば、フロ
ッピーディスク媒体、CD−ROM、ハードドライブ、その他のコンピュータ読
み出し可能記憶媒体で実現されるコンピュータプログラムコードで実施すること
ができる。ここで、コンピュータプログラムコードがコンピュータにロードされ
て実行されるとき、そのコンピュータは本発明を実施する装置になる。また、本
発明は、例えば記憶媒体に格納されコンピュータにロードされて実行されるか、
または、電線や、ファイバー光学や電磁放射に基づくケーブル等の特定の伝送媒
体を介して送信されるコンピュータプログラムコードの形態で実施することがで
きる。ここで、コンピュータプログラムコードがコンピュータにロードされ実行
されるとき、そのコンピュータは本発明を実施する装置となる。汎用マイクロプ
ロセッサで実行するときは、コンピュータプログラムコードセグメントが特定の
論理回路を生成するマイクロプロセッサを構成する。
あれば、その教唆を具体化するために修正されたその他の多くの実施形態を簡単
に考案することができる。
レーム切り替えルーチン200のフロー図を示す。
。
レーム切り替えルーチン400のフロー図を示す。
。
したコントローラを示す。 理解を容易にするために、複数の図に共通の同じ要素を示すことができるとこ
ろには同じ参照番号を使っている。
Claims (14)
- 【請求項1】 一連の非符号化情報フレームを圧縮符号化して、フレーム・
グループ(GOF)情報構成に実質的に基づく一連の符号化情報フレームを生成
するシステム内で、各GOFは少なくとも一つのサブGOFを備え、各サブGO
Fは少なくとも一つのアンカーフレームを備え、各アンカーフレームはイントラ
符号化フレーム(Iフレーム)と前方予測フレーム(Pフレーム)のうちの一つ
を備え、 前記一連の非符号化情報フレーム内のインターフレーム情報の不連続領域に対
応して、 前記情報の不連続領域の次の第1のアンカーフレームはIフレームを備え、前記
情報の不連続領域に先行する第1のアンカーフレームはPフレームを備えるよう
に前記GOF情報構成を修正する工程を備える方法。 - 【請求項2】 前記修正する工程は、 GOF情報構成のアンカーフレームになる予定の各非符号化情報フレームをI
フレームとPフレームの両方として符号化する工程と、 前記生成された一連の符号化情報フレームに含まれる各符号化アンカーフレ
ームに対して、前記符号化されたIフレームと、前記アンカーフレームに関連す
る前記符号化されたPフレームのうちの一つをそれぞれ選択する工程を備え、 情報の不連続領域が存在すると、前記情報の不連続領域の次の前記第1のアン
カーフレームに関連するIフレームが選択され、また、前記情報不連続領域に先
行する前記第1のアンカーフレームに関連するPフレームが選択される請求項1
の方法。 - 【請求項3】 前記修正する工程は、 GOF情報構成のPフレームとして符号化される予定の各非符号化情報フレー
ムをIフレームとPフレームの両方として符号化する工程と、 前記生成された一連の符号化情報フレーム内に含まれる予定の各符号化され
たPフレームに対して、前記符号化されたPフレームとそれに関連して符号化さ
れたIフレームのうちの一つをそれぞれ選択する工程とを備え、 情報の不連続領域が存在すると、前記情報の不連続領域の次の前記第1のアン
カーフレームに関連するIフレームが選択され、また、前記情報の不連続領域に
先行する前記第1のアンカーフレームに関連するPフレームが選択される請求項
1の方法。 - 【請求項4】 前記修正する工程は、 GOF情報構成に基づくIフレームになる予定の各非符号化情報フレームを格
納する工程と、 GOF情報構成に基づくIフレームかPフレームのいづれか一方として各アン
カーフレームを符号化する工程と、 情報の不連続領域がない場合は、 前記生成された一連の符号化情報フレームに含ませるために、前記符号化アン
カーフレームの各々を選択する工程と、 情報の不連続領域がある場合は、 前記格納された非符号化情報フレームを用いて予測されるPフレームとして符
号化し、前記生成された一連の符号化情報フレームに含ませるために、前記情報
の不連続領域に先行する前記第1のアンカーフレームを選択する工程と、 前記生成された一連の符号化情報フレームに含ませるために、前記情報の不連
続領域の次の前記第1のアンカーフレームをIフレームとして符号化する工程と
を備える請求項1の方法。 - 【請求項5】 前記一連の非符号化情報フレームの各サブGOFを遅延させ
る工程をさらに備え、前記修正する工程は、前記一連の非符号化情報フレームを
符号化する前に前記情報の不連続領域に対応して前記GOF構成を再定義する工
程をさらに備える請求項1の方法。 - 【請求項6】 一連の情報フレームを圧縮符号化して、フレーム・グループ
(GOF)情報構成に基づく一連の符号化情報フレームを生成するシステム内で
、各GOPは少なくとも一つのサブGOPを備え、各サブGOPはアンカーフレ
ームと一つ以上の非アンカーフレームを備え、前記非アンカーフレームは前記ア
ンカーフレームに基づく予測情報を含み、 第1の符号化モジュールを使って、前記GOP情報構成に基づいて前記一連の
情報フレームのサブGOP部分を符号化して一連の符号化情報フレームを生成す
る工程と、ここで、前記アンカーフレームの各々は第1の種類、もしくは、第2
の種類のフレームを備え、 第2の符号化モジュールを使って、前記GOP構成に基づいて前記一連の情報
フレームの前記サブGOP部分を符号化して一連の符号化情報フレームを生成す
る工程と、ここで、前記アンカーフレームの各々は前記第1の種類のフレームを
備え、 情報の不連続領域が前記一連の情報フレームの前記サブGOF部分内に存在す
るかどうかを確かめる工程と、 情報の不連続領域が前記一連の情報フレームの前記サブGOP部分に存在する
場合、前記第2の符号化モジュールで生成された前記一連の符号化情報フレーム
を出力する工程と、 情報の不連続領域が前記一連の情報フレームの前記サブGOP部分に存在しな
い場合、前記第1の符号化モジュールによって生成された前記一連の符号化情報
フレームを出力する工程を備える方法。 - 【請求項7】 前記第1の種類のアンカーフレームはIフレームであり、前
記第2の種類のアンカーフレームはPフレームであり、前記非アンカーフレーム
はBフレームである請求項6の方法。 - 【請求項8】 一連の情報フレームを圧縮符号化して、フレーム・グループ
(GOP)情報構成に基づく一連の符号化情報フレームを生成するシステムで使
う装置であって、各GOFは少なくとも一つのサブGOPを備え、各サブGOF
はアンカーフレームと一つ以上の非アンカーフレームを備え、前記非アンカーフ
レームは前記アンカーフレームに基づく予測情報を含み、 前記GOF情報構成に基づいて前記一連の情報フレームを符号化して、一連の
符号化情報フレームを生成する第1の符号化モジュールと、ここで、前記アンカ
ーフレームの各々は第1の種類あるいは第2の種類のフレームを備え、 前記第1の符号化モジュールによって生成されたサブGOFを格納する第1の
バッファと、 前記GOP構成に基づく前記一連の情報フレームを符号化して一連の符号化情
報フレームを生成する第2の符号化モジュールと、ここで、前記アンカーフレー
ムのそれぞれは前記第1の種類のフレームを備え、 前記第2の符号化モジュールによって生成されたサブGOFを格納する第2の
バッファと、ここで、第1の動作モードでは前記第1のバッファに格納された前
記サブGOFが出力点に与えられ、第2の動作モードでは前記第2のバッファに
格納された前記サブGOPは前記出力点に与えられる装置。 - 【請求項9】 前記第1の種類のアンカーフレームはIフレームであり、前
記第2の種類のアンカーフレームはPフレームであり、前記非アンカーフレーム
はBフレームである請求項8の装置。 - 【請求項10】 前記一連の情報フレーム内の情報の不連続領域の示値に対
応して前記第2の動作モードに入る請求項8の装置。 - 【請求項11】 フレーム・グループ(GOF)情報構成に実質的に基づい
て一連の非符号化情報フレームを圧縮符号化して一連の符号化情報フレームを生
成する第1のエンコーダと、ここで、各GOFは少なくとも一つのサブGOFを
備え、各サブGOPは少なくとも一つのアンカーフレームを備え、各アンカーフ
レームはイントラ符号化フレーム(Iフレーム)と前方予測フレーム(Pフレー
ム)のうちの一つを備え、 前記一連の非符号化情報フレーム内のインターフレーム情報の不連続領域の示
値に対応して前記エンコーダを制御するコントローラであって、前記情報不連続
領域の次の第1のアンカーフレームはIフレームを備え、前記情報の不連続領域
に対して先行する第1のアンカーフレームがPフレームを備えるように前記GO
F情報構成を修正する前記コントローラとを備える装置。 - 【請求項12】 フレーム・グループ(GOF)情報構成に基づくPフレー
ムとして符号化される予定のフレームをIフレームとして符号化する第2のエン
コーダと、 前記第1のエンコーダによって生成された前記一連の符号化情報フレーム、も
しくは、前記第2のエンコーダによって生成された前記符号化されたIフレーム
を出力点に与える前記コントローラに応答するセレクタをさらに備え、 前記コントローラは前記一連の非符号化情報フレーム内のインターフレーム情
報の不連続領域の前記示値に応答し、前記セレクタに、前記情報の不連続領域の
次の前記第1のアンカーフレームに関連するIフレームと前記情報の不連続領域
に先行する前記第1のアンカーフレームに関連するPフレームを出力用に選択さ
せる請求項11の装置。 - 【請求項13】 前記GOF情報構成に基づくIフレームとして符号化され
る予定の各非符号化情報フレームを格納し、前記予定のIフレームに一時的に先
行する再生されたアンカーフレームを格納するメモリをさらに備え、 前記情報不連続領域が存在する場合、前記コントローラは前記第1のエンコー
ダに前記IフレームをPフレームとして再符号化させる請求項11の方法。 - 【請求項14】 前記一連の非符号化情報フレームの各サブGOFを遅延さ
せるバッファをさらに備え、前記コントローラは前記バッファの入力点に与えら
れた前記一連の非符号化情報フレームを検査し、もし前記検査された情報フレー
ムが情報の不連続領域を含むならば、前記コントローラは前記第1のエンコーダ
で使われた前記GOP構成を修正する請求項11の装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US8053698P | 1998-04-03 | 1998-04-03 | |
US09/105,730 | 1998-06-26 | ||
US09/105,730 US6563549B1 (en) | 1998-04-03 | 1998-06-26 | Method and apparatus for adaptively encoding an information stream |
US60/080,536 | 1998-09-11 | ||
PCT/US1999/007408 WO1999052296A1 (en) | 1998-04-03 | 1999-04-02 | Method and apparatus for adaptively encoding a video data stream |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002511669A true JP2002511669A (ja) | 2002-04-16 |
JP2002511669A5 JP2002511669A5 (ja) | 2006-05-18 |
JP4373609B2 JP4373609B2 (ja) | 2009-11-25 |
Family
ID=26763639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000542929A Expired - Lifetime JP4373609B2 (ja) | 1998-04-03 | 1999-04-02 | 映像データストリームの適応的符号化方法と装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6563549B1 (ja) |
EP (1) | EP1068735B1 (ja) |
JP (1) | JP4373609B2 (ja) |
DE (1) | DE69921108T2 (ja) |
TW (1) | TW404137B (ja) |
WO (1) | WO1999052296A1 (ja) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6904174B1 (en) * | 1998-12-11 | 2005-06-07 | Intel Corporation | Simplified predictive video encoder |
JP3840020B2 (ja) * | 1999-12-14 | 2006-11-01 | 株式会社東芝 | 動画像符号化装置 |
US6907073B2 (en) * | 1999-12-20 | 2005-06-14 | Sarnoff Corporation | Tweening-based codec for scaleable encoders and decoders with varying motion computation capability |
US6639878B1 (en) * | 2000-03-21 | 2003-10-28 | Microsoft Corporation | Method and apparatus for characterizing and improving optical drive performance |
JP3889552B2 (ja) * | 2000-06-09 | 2007-03-07 | パイオニア株式会社 | 符号量割り当て装置および方法 |
JP4573957B2 (ja) * | 2000-07-04 | 2010-11-04 | キヤノン株式会社 | 画像制御装置、画像制御方法及びテレビ受信機 |
US6914939B1 (en) * | 2000-11-13 | 2005-07-05 | International Business Machines Corporation | Method and apparatus for producing pseudo-constant bits per picture video bit-streams for low-delay compression system |
JP3788260B2 (ja) * | 2001-04-09 | 2006-06-21 | 日本電気株式会社 | 配信システムとその配信方法、及び配信プログラム |
US7197072B1 (en) * | 2002-05-30 | 2007-03-27 | Intervideo, Inc. | Systems and methods for resetting rate control state variables upon the detection of a scene change within a group of pictures |
AU2003281645A1 (en) * | 2002-07-24 | 2004-02-09 | Koninklijke Philips Electronics N.V. | Method and encoder for coding a digital video signal |
US7856054B1 (en) * | 2003-11-14 | 2010-12-21 | Apple Inc. | Scene change identification during encoding of compressed video |
US7536487B1 (en) * | 2005-03-11 | 2009-05-19 | Ambarella, Inc. | Low power memory hierarchy for high performance video processor |
JP2006270435A (ja) * | 2005-03-23 | 2006-10-05 | Toshiba Corp | 動画像符号化装置 |
US20070025441A1 (en) * | 2005-07-28 | 2007-02-01 | Nokia Corporation | Method, module, device and system for rate control provision for video encoders capable of variable bit rate encoding |
JP4501808B2 (ja) * | 2005-08-02 | 2010-07-14 | 船井電機株式会社 | 再生装置 |
US8295343B2 (en) | 2005-11-18 | 2012-10-23 | Apple Inc. | Video bit rate control method |
US8233535B2 (en) | 2005-11-18 | 2012-07-31 | Apple Inc. | Region-based processing of predicted pixels |
US8031777B2 (en) * | 2005-11-18 | 2011-10-04 | Apple Inc. | Multipass video encoding and rate control using subsampling of frames |
US20070116117A1 (en) * | 2005-11-18 | 2007-05-24 | Apple Computer, Inc. | Controlling buffer states in video compression coding to enable editing and distributed encoding |
US8780997B2 (en) * | 2005-11-18 | 2014-07-15 | Apple Inc. | Regulation of decode-side processing based on perceptual masking |
JP4584871B2 (ja) * | 2006-06-09 | 2010-11-24 | パナソニック株式会社 | 画像符号化記録装置および画像符号化記録方法 |
US20080008190A1 (en) * | 2006-07-07 | 2008-01-10 | General Instrument Corporation | Method and apparatus for distributing statistical multiplex signals to handheld devices |
CN100499815C (zh) * | 2007-01-12 | 2009-06-10 | 清华大学 | 一种支持视频帧随机读取的视频编解码方法 |
JP5481923B2 (ja) * | 2009-04-28 | 2014-04-23 | 富士通株式会社 | 画像符号化装置、画像符号化方法および画像符号化プログラム |
US20110109721A1 (en) * | 2009-11-06 | 2011-05-12 | Sony Corporation | Dynamic reference frame reordering for frame sequential stereoscopic video encoding |
CA2798008C (en) | 2010-05-06 | 2015-10-20 | Nippon Telegraph And Telephone Corporation | Method for controlling video encoding if a decoder underflow condition is detected |
CA2798012A1 (en) | 2010-05-07 | 2011-11-10 | Nippon Telegraph And Telephone Corporation | Video encoding to prevent decoder buffer underflow by re-encoding selected pictures in a video sequence using a retry count or a retry point |
US8405748B2 (en) * | 2010-07-16 | 2013-03-26 | Omnivision Technologies, Inc. | CMOS image sensor with improved photodiode area allocation |
US9906785B2 (en) * | 2013-03-15 | 2018-02-27 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata |
KR101811718B1 (ko) | 2013-05-31 | 2018-01-25 | 삼성전자주식회사 | 영상 처리 방법 및 장치 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5212549A (en) * | 1991-04-29 | 1993-05-18 | Rca Thomson Licensing Corporation | Error concealment apparatus for a compressed video signal processing system |
US5247363A (en) * | 1992-03-02 | 1993-09-21 | Rca Thomson Licensing Corporation | Error concealment apparatus for hdtv receivers |
JP2611607B2 (ja) | 1992-06-29 | 1997-05-21 | 日本ビクター株式会社 | シーンチェンジ検出装置 |
US5592226A (en) * | 1994-01-26 | 1997-01-07 | Btg Usa Inc. | Method and apparatus for video data compression using temporally adaptive motion interpolation |
JP2914170B2 (ja) * | 1994-04-18 | 1999-06-28 | 松下電器産業株式会社 | 映像変化点検出方法 |
US5768539A (en) * | 1994-05-27 | 1998-06-16 | Bell Atlantic Network Services, Inc. | Downloading applications software through a broadcast channel |
JP3711571B2 (ja) | 1994-09-29 | 2005-11-02 | ソニー株式会社 | 画像符号化装置及び画像符号化方法 |
JPH08163554A (ja) | 1994-12-02 | 1996-06-21 | Electron & Telecommun Res Inst | ビデオビット率制御方法 |
JPH0974566A (ja) | 1995-09-04 | 1997-03-18 | Sony Corp | 圧縮符号化装置及び圧縮符号化データの記録装置 |
US5731835A (en) | 1996-02-26 | 1998-03-24 | David Sarnoff Research Center, Inc. | Dynamic coding rate control in a block-based video coding system |
JPH09261648A (ja) * | 1996-03-21 | 1997-10-03 | Fujitsu Ltd | シーンチェンジ検出装置 |
US6337879B1 (en) | 1996-08-14 | 2002-01-08 | Sony Corporation | Video data compression apparatus and method of same |
US5917830A (en) * | 1996-10-18 | 1999-06-29 | General Instrument Corporation | Splicing compressed packetized digital video streams |
US5978029A (en) * | 1997-10-10 | 1999-11-02 | International Business Machines Corporation | Real-time encoding of video sequence employing two encoders and statistical analysis |
-
1998
- 1998-06-26 US US09/105,730 patent/US6563549B1/en not_active Expired - Lifetime
-
1999
- 1999-04-02 EP EP99915257A patent/EP1068735B1/en not_active Expired - Lifetime
- 1999-04-02 WO PCT/US1999/007408 patent/WO1999052296A1/en active IP Right Grant
- 1999-04-02 JP JP2000542929A patent/JP4373609B2/ja not_active Expired - Lifetime
- 1999-04-02 DE DE69921108T patent/DE69921108T2/de not_active Expired - Lifetime
- 1999-04-03 TW TW088105368A patent/TW404137B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP1068735A1 (en) | 2001-01-17 |
TW404137B (en) | 2000-09-01 |
US6563549B1 (en) | 2003-05-13 |
JP4373609B2 (ja) | 2009-11-25 |
DE69921108T2 (de) | 2005-11-17 |
DE69921108D1 (de) | 2004-11-18 |
WO1999052296A1 (en) | 1999-10-14 |
EP1068735B1 (en) | 2004-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4373609B2 (ja) | 映像データストリームの適応的符号化方法と装置 | |
US6167088A (en) | Method and apparatus for performing adaptive encoding rate control of a video information stream including 3:2 pull-down video information | |
JP3224465B2 (ja) | 画像符号化装置 | |
US9258567B2 (en) | Method and system for using motion prediction to equalize video quality across intra-coded frames | |
US7653129B2 (en) | Method and apparatus for providing intra coding frame bit budget | |
JP4391809B2 (ja) | 画像のシーケンスを適応的に符号化するシステムおよび方法 | |
US8432964B2 (en) | Image processing device, method, and program | |
US20070199011A1 (en) | System and method for high quality AVC encoding | |
US6628713B1 (en) | Method and device for data encoding and method for data transmission | |
WO2003017677A2 (en) | Video encoding method | |
EP1143737A2 (en) | Image encoding apparatus and method, video camera, image recording apparatus, and image transmission apparatus | |
JP4391810B2 (ja) | 画像のシーケンスを適応的に符号化するシステムおよび方法 | |
JP3508916B2 (ja) | 動画像可変ビットレート符号化方法および装置 | |
JP4224778B2 (ja) | ストリーム変換装置および方法、符号化装置および方法、記録媒体、並びに、プログラム | |
JPH09294262A (ja) | 画像符号化装置 | |
JP3818819B2 (ja) | 画像符号化方式変換装置、画像符号化方式変換方法および記録媒体 | |
JP3599942B2 (ja) | 動画像符号化方法、及び動画像符号化装置 | |
JP4120934B2 (ja) | 画像処理装置および画像処理方法、記録媒体、並びに、プログラム | |
KR20010104058A (ko) | 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기 | |
JP5873290B2 (ja) | 符号化装置 | |
JP4539028B2 (ja) | 画像処理装置および画像処理方法、記録媒体、並びに、プログラム | |
JP3311312B2 (ja) | 符号化制御方法、符号化制御装置、および符号化制御プログラムを記録した記録媒体 | |
JP4264790B2 (ja) | 統計多重制御装置、画像符号化装置、統計多重システム、統計多重制御方法および符号化方法 | |
KR100228542B1 (ko) | 비디오 인코더의 비트발생율 제어용 장면전환 적응 비트 할당 방법 | |
JPH11225342A (ja) | データ符号化装置及びデータ符号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20050622 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050622 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050704 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060323 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060323 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090106 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090403 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090428 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090723 |
|
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: 20090818 |
|
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: 20090904 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120911 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130911 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |