JPH09214962A - バッファ空/充填ルックアヘッド・ビット・アロケータを有する動画ビデオ圧縮システム - Google Patents

バッファ空/充填ルックアヘッド・ビット・アロケータを有する動画ビデオ圧縮システム

Info

Publication number
JPH09214962A
JPH09214962A JP9002297A JP229797A JPH09214962A JP H09214962 A JPH09214962 A JP H09214962A JP 9002297 A JP9002297 A JP 9002297A JP 229797 A JP229797 A JP 229797A JP H09214962 A JPH09214962 A JP H09214962A
Authority
JP
Japan
Prior art keywords
coding
picture
distortion
coding unit
buffer
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
JP9002297A
Other languages
English (en)
Inventor
Teien Hoan Zan
ザン・ティエン・ホアン
Neil Linzer Elliott
エリオット・ニール・リンザー
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH09214962A publication Critical patent/JPH09214962A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/177Methods 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 ビット割当て制約を満足しながら、一貫して
復号情報における良品質性(例えばピクチャにおけるビ
ジュアル画質)を維持することを可能にする、ピクチャ
などのデジタル情報の単位を符号化するシステム及び技
法を提供する。 【解決手段】 一定及び可変ビット・レートの両方の動
作におけるビット割当て制約に従い、ビットをピクチャ
に割当てるシステム及び方法を提供する。各ピクチャの
符号化の複雑性が、その空間的及び時間的特性にもとづ
きモデル化される。モデル化にもとづき、多数のビット
が予め各ピクチャに割当てられる。各ピクチャが次に、
割当てられたビットに従い圧縮される。達成されたビッ
ト・レートと所望のビット・レートとの差、及び計算資
源の使用可能性にもとづき、符号化を改善するための第
2のパスまたは複数のパスが実行されうる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータ圧縮の分野に
関して、特に、デジタル動画ビデオ信号を圧縮するシス
テム及び方法に関する。
【0002】
【従来の技術】デジタル伝送ネットワーク、デジタル記
憶媒体、超大規模集積装置及びビデオ及び音声信号のデ
ジタル処理の技術的発展は、デジタル・ビデオの伝送及
び記憶を多くのアプリケーションにおいて経済的なもの
にしつつある。デジタル・ビデオ信号の記憶及び伝送
は、多くのアプリケーションの中枢を成し、ビデオ信号
の非圧縮表現は通常、大きな記憶容量を要求するので、
デジタル・ビデオ圧縮技術の使用は、この発展しつつあ
る分野において重要である。
【0003】デジタル・ビデオ信号の圧縮のための幾つ
かの規格が、過去10年の間に登場し、最近でも開発さ
れている。これらの規格は、様々なアプリケーションに
おける圧縮デジタル・ビデオの伝送及び記憶のためのア
ルゴリズムに適合する。こうしたアプリケーションに
は、ビデオ電話やテレビ電話会議、同軸ネットワーク、
光ファイバ・ネットワーク、地上放送または直接衛星放
送による高画質デジタル・テレビ伝送、及びCD−RO
M、デジタル・テープ、デジタル・ビデオ・ディスク、
或いはディスク・ドライブ上に記憶される対話式マルチ
メディア製品などが含まれる。
【0004】幾つかの圧縮規格は、圧縮技術の共通の核
にもとづくアルゴリズムに関連付けられ、こうしたアル
ゴリズムには、例えばCCITT(国際電信電話諮問委
員会)勧告H.120、CCITT勧告H.261、及
びISO/IEC MPEG−1及びMPEG−2規格
などが含まれる。MPEGアルゴリズムは、ISO(国
際標準化機構)及びIEC(国際電気標準会議)の合同
技術委員会の一部である動画専門家グループ(MPE
G)により開発された。MPEG委員会は、ビデオ及び
関連音声信号の多重化圧縮表現の標準規格を開発してき
た。標準規格は圧縮ビット・ストリーム及び復号方法を
指定するが、符号器において使用されるアルゴリズムの
新規性及び多様性のために、かなりな自由度を残してい
る。
【0005】MPEG−1規格は、進行ビデオを圧縮す
るために開発された。進行ビデオ・シーケンスでは、各
フレームが個別の時点において眺められる場面を表現す
る。それに対してインタレース式ビデオでは、画面上の
1つ置きのラインに相当するフィールドが周期的に捕獲
される。インタレース式ビデオでは、画面上の上フィー
ルドと下フィールドとが交互にリフレッシュされる。所
与の時点において、2つのフィールド(フレーム)から
のデータが眺められる。
【0006】MPEG−2規格は、インタレース式ビデ
オ、進行ビデオ、または両者の混合のいずれかを圧縮す
るために使用されうる。すなわち、符号器が各フレーム
が進行式かインタレース式かを指定する。
【0007】MPEG規格は各ピクチャの圧縮表現にお
いて、ビット数が可変なビット・ストリームを指定す
る。この変化は、符号化される場面の時空的複雑性の時
間に伴う固有の変化の他に、異なるタイプのピクチャ処
理による。このことは、ビット・レートの変動を均等化
するためにバッファの使用につながる。例えば、一定ビ
ット・レートの記憶媒体または伝送チャネルにおいて、
バッファリングは、圧縮ピクチャのビット・レートが、
バッファのサイズに依存する限界内で変化することを許
容しながら、一定ビット・レートで記憶装置または伝送
チャネルに出力する。
【0008】バッファリングの重要性を鑑み、MPEG
規格は、図1に示される仮想バッファ検証器(VBV)
と呼ばれる仮想的復号器を定義する。これは符号化ビッ
ト・ストリームが復号器バッファ・サイズ及び入力ビッ
ト・レートの指定制限により、復号可能か否かを検証す
る。VBVは、一定ビット・レート(CBR)と可変ビ
ット・レート(VBR)の2つの動作モードを有する。
これら2つの動作モードについては後述する。
【0009】一定ビット・レート動作では、復号器バッ
ファ101が、記憶または伝送媒体からの圧縮データ1
00により、一定ビット・レートで充填される。バッフ
ァ・サイズ及びビット・レートの両方は、圧縮ビット・
ストリーム内で伝送されるパラメータである。ビット・
ストリーム内の情報から導出される初期遅延の後、仮想
復号器103は即時、バッファから第1のピクチャに関
連付けられる全てのデータを除去する。その後、シーケ
ンスのピクチャ・レートに等しい時間間隔において、復
号器はバッファ内の最早ピクチャに関連付けられる全て
のデータを除去する。
【0010】可変ビット・レート動作はバッファが満杯
になるまで、圧縮ビット・ストリームが指定最大ビット
・レートでバッファに入力する以外は、前記の一定ビッ
ト・レート動作と類似であり、満杯になった時点では、
バッファが少なくとも部分的に空になるまで、ビットは
入力されない。これはバッファに入力するビット・レー
トを事実上可変に変換する。
【0011】ビット・ストリームがMPEGレート制御
要求を満足するためには、各ピクチャに対応する全ての
データが、復号器により必要とされるその瞬間に、バッ
ファ内で使用可能であることが必要がある。この要求
は、各ピクチャ内で許容されるビット数の上限
(UVBV)及び下限(LVBV)に変換される。所与のピク
チャにおける上限及び下限は、そのピクチャに先行する
全てのピクチャ内で使用されるビット数に依存する。V
BV要求を満たすビット・ストリームの生成は、符号器
の機能に相当する。実際の復号器が必ず上述のように構
成または動作することは、期待できない。仮想復号器及
びその関連バッファは、単に圧縮ピクチャのサイズの計
算可能な限界を定める手段である。
【0012】レート制御機構は、Gonzales及びViscito
による米国特許出願第5231484号で見い出され、
そこではMPEGに対応して使用されうるレート制御機
構が述べられる。このタイプの機構のブロック図が図2
に示される。この機構では、入力ビデオ信号Fk200
が複雑性予測器201及びピクチャ・コーダ205に送
信される。複雑性予測器は、複雑性予測Ck(信号20
2)をピクチャ・ビット・アロケータ203に送信す
る。ピクチャ・ビット・アロケータは、量子化スケール
k(信号204)をピクチャ・コーダ205に送信す
る。量子化スケールは、符号器から圧縮ビデオ信号を受
信している仮想復号器バッファの瞬時バッファ満杯度、
及び以前に符号化されたピクチャの複雑性に依存して設
定される。ピクチャ・コーダは量子化スケールを用いて
kを符号化し、出力ビット・ストリームCDk(信号2
06)を生成する。
【0013】
【発明が解決しようとする課題】以上の状況を鑑み、本
発明の目的は、ビット割当て制約を満足しながら、一貫
して復号情報における良品質性(例えばピクチャにおけ
るビジュアル画質)を維持することを可能にする、ピク
チャなどのデジタル情報の単位を符号化するシステム及
び技法を提供することである。
【0014】
【課題を解決するための手段】本発明の1態様によれ
ば、デジタル情報の単位(符号化単位)が、各符号化単
位の符号化歪を割当てられる多数のビットにもとづきモ
デル化することにより、符号化される。ビットが次に一
連の規則に従い、次のように各符号化単位に割当てられ
る。すなわち、モデル復号器バッファからの以前の符号
化単位の除去後に、復号器バッファの満杯度が第1の数
よりも小さい場合にのみ、1番目を除く各符号化単位の
符号化歪が、以前の符号化単位の符号化歪よりも小さく
なる。また、復号器バッファからの以前の符号化単位の
除去後に、モデル復号器バッファの満杯度が第2の数よ
りも大きい場合にのみ、1番目を除く各符号化単位の符
号化歪が以前の符号化単位の符号化歪よりも大きくな
る。そして、符号化単位が前記割当てにもとづき符号化
される。
【0015】様々な実施例において、一定及び可変ビッ
ト・レートの両方の動作におけるVBV制約に従い、ビ
ットをピクチャに割当てる方法が提供される。各ピクチ
ャの符号化の複雑性がその空間的及び時間的特性にもと
づきモデル化される。モデル化にもとづき、多数のビッ
トが予め各ピクチャに割当てられる。各ピクチャが次
に、割当てられたビットに従い圧縮される。達成された
ビット・レートと所望のビット・レートとの差、及び計
算資源の使用可能性にもとづき、符号化を改良するため
の第2のパスまたは複数のパスが実行されうる。
【0016】
【発明の実施の形態】
A.MPEG−2環境 本発明はMPEG−2符号器に関連して適用されうるの
で、本発明の理解を容易にするために、MPEG−2ビ
デオ圧縮規格のいくつかの関連する事項について確認す
ることにする。しかしながら、本発明が、MPEG−2
規格のいくつかの特長を共有する他のビデオ符号化アル
ゴリズムにも適用可能である点に注意されたい。
【0017】まず最初に、テキスト・ページ、イメー
ジ、音声セグメント、またはビデオ・シーケンスなどの
任意のデータ・オブジェクトの圧縮が、以下に示す一連
のステップとして見なされうることが理解されよう。そ
れらは、1)そのオブジェクトをトークンの集合へ分解
するステップ、2)これらのトークンを特定の意味で最
小長を有するバイナリ・ストリングにより表現するステ
ップ、及び、3)ストリングを明確に定義された順序で
連結するステップである。ステップ2及びステップ3は
無損失(lossless)、すなわち、元のデータが逆処理に
おいて忠実に復元可能である。ステップ2はエントロピ
符号化として知られる。
【0018】ステップ1は無損失または有損失のいずれ
であってもよいが、ほとんどのビデオ圧縮アルゴリズム
は、厳しいビット・レート要求のために有損失である。
好適な有損失圧縮アルゴリズムは冗長で無意味な情報を
排除し、可視的に重要でなく、観察者が非常に敏感に感
じるシーケンス面を注意深く表さないと思われる比較的
大きな誤差を許容する。ステップ1に対応してMPEG
−2規格で採用される技術は、予測/補間動き補正混成
DTC/DPCM符号化として述べられる。ステップ2
では、可変長符号化としても知られるハフマン符号化が
使用される。前述のようにMPEG−2規格は、実際に
復号器及び圧縮ビット・ストリーム構文の仕様に当たる
が、MPEG−2仕様の以下の記述は、説明を簡略化す
る都合上、主に符号器の側から見て述べられる。
【0019】MPEGビデオ規格は、伝送のためのビデ
オの符号化表現を指定する。当該規格は、インタレース
式または非インタレース式要素ビデオに対して作用する
ように設計される。各ピクチャは3つの要素、すなわち
輝度(Y)、赤色差(CR)、及び青色差(CB)を有す
る。4:2:0データでは、CR及びCBの各要素は水平
方向及び垂直方向に、Y要素が有するサンプルの数の半
分のサンプルを有する。4:2:2データではCR及び
Bの各要素は、水平方向にはY要素が有するサンプル
の数の半分のサンプルを有するが、垂直方向には同一の
数のサンプルを有する。4:4:4データでは、CR
びCBの各要素は、水平方向及び垂直方向の両方におい
て、Y要素が有するサンプルの数と同一のサンプルを有
する。
【0020】MPEGデータ・ストリームは、ビデオ・
ストリームと音声ストリームとを含み、これらはシステ
ム情報及びおそらく他のビット・ストリームとも一緒に
システム・データ・ストリームにパックされる。システ
ム・データ・ストリームはレイヤ化されるものと見なさ
れうる。MPEGデータ・ストリームのビデオ・データ
内では、圧縮データが更にレイヤ化される。レイヤの構
成に関する説明が、本発明の理解を支援することであろ
う。
【0021】レイヤは、圧縮ビット・ストリームの構成
の他に、圧縮機構の動作にも関連する。最上位のレイヤ
はビデオ・シーケンス・レイヤであり、シーケンス全体
の制御情報及びパラメータを含む。第2のレイヤでは、
シーケンスが連続ピクチャのセットに細分化され、各セ
ットはピクチャ・グループ(GOP:Group of Picture
s)として知られる。このレイヤが図3に一般的に示さ
れる。復号は本質的に先行GOPとは独立に、任意のG
OPの始まりで開始しうる。GOP内に含まれうるピク
チャの数には制限はなく、全てのGOP内に等しい数の
ピクチャが含まれる必要もない。
【0022】第3のレイヤまたは"ピクチャ"・レイヤ
は、単一のピクチャである。このレイヤが、図4に一般
に示される。各ピクチャの輝度要素は、16×16の領
域に細分化される。色差要素は適切なサイズのブロック
に細分化され、16×16の輝度領域と一緒に空間的に
配置される。4:4:4ビデオでは、色差要素は16×
16であり、4:2:2ビデオでは、色差要素は8×1
6であり、4:2:0ビデオでは、色差要素は8×8で
ある。まとめて、これらの一緒に配置される輝度領域及
び色差領域は、"マクロブロック"(MB)として知られ
る第5のレイヤを形成する。ピクチャ内のマクロブロッ
クは、ラスタ走査順に連続的に番号付けされる。
【0023】ピクチャ・レイヤとMBレイヤ間には、第
4のレイヤまたは"スライス"・レイヤが存在する。各ス
ライスは、幾つかの連続MBを含む。スライスはピクチ
ャ内またはピクチャ間でサイズ的に一様である必要はな
い。
【0024】最後に、図5に示されるように、各MBは
4つの8×8輝度ブロック、及び8つ、4つまたは2つ
のクロミナンス・ブロック(4:4:4、4:2:2及
び4:2:0ビデオにそれぞれ対応)を含む。各ピクチ
ャのピクチャ要素または画素内の輝度要素の幅をCとし
て表し、高さをRとして表すと(Cは列、Rは行を表
す)、ピクチャはC/16MBの幅、R/16MBの高
さを有する。
【0025】シーケンス、GOP、ピクチャ及びスライ
ス・レイヤは全て、それらに関連付けられるヘッダを有
する。ヘッダはバイト位置合わせされる"開始コード"で
開始し、対応するレイヤ内に含まれるデータに関連する
情報を含む。
【0026】ピクチャはフィールド構造またはフレーム
構造による。フレーム構造式ピクチャは、フレーム全体
すなわち2つのフィールドを復元するための情報を含
む。フィールド構造式ピクチャは1つのフィールドを復
元するための情報を含む。(ピクチャ要素または画素内
の)各輝度フレームの幅をCとして表し、高さをRとし
て表すと(Cは列、Rは行を表す)、フレーム構造式ピ
クチャはC×R画素の情報を含み、フィールド構造式ピ
クチャはC×R/2画素の情報を含む。
【0027】フィールド構造式ピクチャ内のマクロブロ
ックは、単一フィールドからの16×16画素セグメン
トを含む。フレーム構造式ピクチャ内のマクロブロック
は、両方のフィールドが構成するフレームからの16×
16画素セグメントを含む。
【0028】MPEG−2シーケンス内の各フレーム
は、2つの符号化フィールド・ピクチャまたは1つの符
号化フレーム・ピクチャを含まねばならない。例えば2
つのフレームを1つのフィールド構造式ピクチャと、続
く1つのフレーム構造式ピクチャ、更にそれに続く1つ
のフィールド構造式ピクチャとして符号化することは、
違法である。正当な組み合わせは、2つのフレーム構造
式ピクチャ、4つのフィールド構造式ピクチャ、2つの
フィールド構造式ピクチャとそれに続く1つのフレーム
構造式ピクチャ、或いは1つのフレーム構造式ピクチャ
とそれに続く2つのフィールド構造式ピクチャである。
従って、MPEG−2構文にはフレーム・ヘッダは存在
しないが、概念的には、MPEG−2において、フレー
ム・レイヤを提唱することは可能である。
【0029】GOP内には、3つの"タイプ"のピクチャ
が出現しうる。GOP内の3つのタイプのピクチャの例
が図6に示される。ピクチャ・タイプ間の差別的な特長
は、使用される圧縮方法である。第1のタイプは、モー
ド内(Intramode)ピクチャまたはI−ピクチャであ
り、他のピクチャと独立に圧縮される。I−ピクチャ間
の距離には固定の上限は存在しないが、これらはシーケ
ンスを通じて頻発的に散在され、ランダム・アクセス及
び他の特殊な動作モードを容易にすることが期待され
る。予測的に動き補正されるピクチャ(P−ピクチャ)
は、そのピクチャ内の圧縮データと、以前に表示された
I−ピクチャまたはP−ピクチャから最も最近復元され
た2つのフィールドとから復元される。双方向に動き補
正されるピクチャ(B−ピクチャ)は、そのピクチャ内
の圧縮データと、以前に表示されたI−ピクチャまたは
P−ピクチャから復元される2つのフィールドと、将来
表示されるI−ピクチャまたはP−ピクチャから復元さ
れる2つのフィールドとから復元される。復元されるI
−ピクチャまたはP−ピクチャは、他のピクチャを復元
するために使用されうるので、これらはアンカ(ancho
r)・ピクチャと呼ばれる。この仕様の目的ために、ア
ンカ・ピクチャは、次のアンカ・ピクチャがI−ピクチ
ャの場合、終端(terminal)ピクチャと呼ばれる。
【0030】1つの非常に有用なイメージ圧縮技法は、
変換符号化(transform coding)である。MPEG及び
いくつかの他の圧縮規格では、離散余弦変換(DCT)
が選択される。I−ピクチャの圧縮は、1)画素ブロッ
クのDCTを実行するステップ、2)DCT係数を量子
化するステップ、及び、3)結果をハフマン符号化する
ステップにより達成される。MPEGでは、DCT演算
により8×8画素のブロックを、8×8の変換係数セッ
トに変換する。DCT変換自身は無損失の演算であり、
計算装置及びそれにより実行されるアルゴリズムの精度
内で転置されうる。
【0031】第2のステップはDCT係数の量子化であ
り、MPEG規格における損失の主要要因である。DC
T係数の2次元配列の要素をCmnにより表すと(ここで
m及びnは0乃至7の範囲を取りうる)、切捨てまたは
丸め訂正を除き、量子化は各DCT係数CmnをWmn×Q
Pにより除算することにより達成される。ここでWmn
重み係数であり、QPはマクロブロック量子化器(quant
iser)である。ここでQPは各DCT係数に適用される
点に注意されたい。重み係数Wmnは、視覚的に重要でな
い係数に対する粗い量子化の適用を可能にする。
【0032】これらの重みの幾つかのセットが存在しう
る。例えば、I−ピクチャに対して1つの重み係数が存
在し、P−ピクチャ及びB−ピクチャに対して、別の重
み係数が存在しうる。特注の重みがビデオ・シーケンス
・レイヤ内で伝送されるか、デフォルト指定の値が使用
されうる。マクロブロック量子化器パラメータは、MP
EG−2において、品質とビット・レートとをトレード
・オフする主要手段である。ここでQPがピクチャ内の
MB間で変化しうる点が重要である。この特長は、適応
量子化(AQ)として知られ、各ピクチャの異なる領域
が異なるステップ・サイズにより量子化されることを可
能にし、各ピクチャに渡り、及びピクチャ間で、ビジュ
アル品質を均一化(及び最適化)するために使用されう
る。通常、例えばMPEGテスト・モデルにおいては、
マクロブロック量子化器は、マクロブロック・マスキン
グ係数とピクチャ名目量子化器との積として計算され
る。
【0033】量子化に続き、各MBに対するDCT係数
情報が構成され、ハフマン符号のセットを用いて符号化
される。このステップの詳細は、本発明を理解する上で
重要ではなく、一般的に理解されているので、ここでは
説明を省略する。
【0034】ほとんどのビデオ・シーケンスは、連続ピ
クチャ間の高度な相関を示す。ピクチャを符号化する以
前に、この冗長性を除去する有用な方法は動き補正であ
る。MPEG−2は動き補正のための幾つかのツール
(後述)を提供する。
【0035】動き補正の全ての方法は、以下の内容を共
通に有する。各マクロブロックに対して、1つ以上の動
きベクトルがビット・ストリームに符号化される。これ
らの動きベクトルは、復号器がマクロブロックを復元す
ることを可能にし、これは予測マクロブロックと呼ばれ
る。符号器は、符号化されるマクロブロックから予測マ
クロブロックを減算し、差マクロブロックを形成する。
符号器は、本質的に内部マクロブロックを圧縮するため
に使用されるツールと類似のツールを用いて、差マクロ
ブロックを圧縮する。
【0036】ピクチャのタイプは、使用されうる動き補
正の方法を決定する。符号器は、ピクチャ内の各マクロ
ブロックに対してこれらの方法の中から選択する。動き
補正の方法は、使用されるマクロブロック・モード及び
動き補正モードにより記述される。内部(I)モード、
前方(F)モード、後方(B)モード、及び補間前方−
後方(FB)モードの4つのマクロブロック・モードが
存在する。Iモードでは、動き補正は使用されない。他
のマクロブロック・モードでは、16×16(S)また
は16×8(E)動き補正モードが使用されうる。Fマ
クロブロック・モードでは、デュアル・プライム(D)
動き補正モードも使用されうる。
【0037】MPEG規格は、一定ビット・レート及び
可変ビット・レートの両方の伝送及び記憶媒体と共に使
用されうる。各ピクチャ内のビット数は、符号化される
場面の時空的複雑性の時間に伴う固有の変化の他に異な
るタイプのピクチャ処理により、可変である。MPEG
規格は、仮想バッファ検証器(VBV)の形態によるバ
ッファ・ベースのレート制御方法を用いて、許容される
ビット・レートの変化に対する重要な限界を定める。図
1に示されるように、VBVは仮想復号器103を伴う
復号器バッファ101として考案され、その唯一の機能
は、各ピクチャを符号化するために使用されるビット数
の限界を定めることであり、それにより、全体ビット・
レートが目標の割当てに等しくなり、目標からの短期的
な偏差が制限される。VBVは一定ビット・レート・モ
ードまたは可変ビット・レート・モードのいずれかで動
作しうる。
【0038】一定ビット・レート・モードでは、バッフ
ァが記憶または伝送媒体からのビット・ストリーム内の
圧縮データにより、一定ビット・レートで充填される。
バッファ・サイズ及びビット・レートの両者は、圧縮ビ
ット・ストリーム内で伝送されるパラメータである。初
期遅延(同様にビット・ストリーム内の情報から導出さ
れる)の後、仮想復号器が即時、バッファから、第1の
ピクチャに関連付けられる全てのデータを取り除く。そ
の後、シーケンスのピクチャ・レートに等しい時間間隔
で、符号器がバッファ内の最早ピクチャに関連付けられ
る全てのデータを取り除く。
【0039】VBVの動作が、図7の例により示され
る。この図は、時間と復号器バッファの満杯度との関係
を示す。バッファは初期遅延後の時刻T0において、初
期バッファ満杯度Biで開始する。傾斜線の断片は、圧
縮データが一定ビット・レートでバッファに入力するこ
とを示す。垂直線の断片は、バッファ内の最早ピクチャ
に関連付けられるデータがバッファから即時除去される
ことを示す。この例では、ピクチャは一定時間間隔Tで
除去されるように示される。一般に、ピクチャ表示間
隔、すなわち連続ピクチャの除去の間の時間間隔は可変
である。
【0040】ビット・ストリームがMPEGレート制御
要求を満たすためには、各ピクチャに対する全てのデー
タが、それが復号器により必要とされる瞬間にバッファ
内で使用可能であり、復号器バッファが過剰に充填され
ないことが必要がある。これらの要求は、各ピクチャ内
で許容されるビット数に対する上限及び下限に変換され
る。所与のピクチャの上限及び下限は、それに先行する
全てのピクチャ内で使用されるビット数に依存する。例
えば、第2のピクチャは、U2よりも多くのビットを含
まないかもしれない。なぜなら、U2は第2のピクチャ
が除去されるときに、バッファ内で使用可能なビット数
であるからである。同時に第2のピクチャは、L2より
も少ないビットも含まないかもしれない。なぜなら、L
2よりも少ないビットを除去すると、バッファが入来ビ
ットによりオーバフローするからである。符号器の機能
は、VBVにより誤差無く復号しうるビット・ストリー
ムを生成することである。
【0041】一定ビット・レート動作では、バッファか
ら現ピクチャを除去する直前のバッファの満杯度が、以
前のピクチャ除去直前のバッファ満杯度から、以前のピ
クチャ内のビット数を差し引き、現ピクチャ除去と以前
のピクチャ除去との間の時間量にビット・レートを掛け
た積を加えたものに等しい。すなわち、 現ピクチャ除去直前のバッファ満杯度=最後のピクチャ
除去直前の満杯度−最後のピクチャ内のビット数+現ピ
クチャと最後のピクチャ間の時間×ビット・レート
【0042】ピクチャ内のビット数の上限は、バッファ
からそのピクチャを除去する直前のバッファの満杯度に
等しい。下限は0ビットか、またはバッファ・サイズか
ら、そのピクチャをバッファから除去する直前のバッフ
ァ満杯度を差し引き、次のピクチャが除去される以前に
バッファに入力するビット数を加えたものの、いずれか
大きい方である。所与のピクチャを除去する以前のバッ
ファ満杯度は、初期バッファ満杯度と、全ての先行ピク
チャ内のビット数とに依存し、前記の規則を用いて計算
されうる。
【0043】可変ビット・レート動作では、バッファが
満杯になるまで、圧縮ビット・ストリームが指定最大ビ
ット・レートでバッファに入力する以外は、上述と類似
であり、満杯の時点では、もはやビットは入力されな
い。このことはバッファに入力する事実上可変なビット
・レートを、最大指定レートまで変換する。可変ビット
・レート動作の下でのバッファ満杯度のプロット例が図
8に示される。バッファは、バッファ満杯度が定義上、
バッファ・サイズBmaxを越えることができない以外は
一定ビット・レートの場合と同様に動作する。このこと
は、各ピクチャに対して生成されるビット数に上限を定
めるが下限は定めない。
【0044】可変ビット・レート動作では、バッファか
ら現ピクチャを除去する直前のバッファ満杯度がバッフ
ァのサイズ、または以前のピクチャを除去する直前のバ
ッファ満杯度から、以前のピクチャ内のビット数を差し
引き、現ピクチャ除去と以前のピクチャ除去との間の時
間量に最大ビット・レートを掛けた積を加えたものの、
いずれか小さい方に等しい。すなわち、現ピクチャ除去
直前のバッファ満杯度=(バッファ・サイズ)、または
(最後のピクチャ除去直前の満杯度−最後のピクチャ内
のビット数+現ピクチャと最後のピクチャ間の時間×ビ
ット・レート)の、いずれか小さい方
【0045】ピクチャ内のビット数の上限は、この場合
にも、バッファからそのピクチャを除去する直前のバッ
ファの満杯度に等しい。上述のように、下限は存在しな
い。所与のピクチャを除去する以前のバッファ満杯度
は、この場合も、初期バッファ満杯度と、全ての先行ピ
クチャ内のビット数とに依存し、前記の規則を用いて計
算されうる。
【0046】B.符号器の好適な実施例 本発明の実施例によれば、レート制御はバッファの現状
態だけでなく、多数のピクチャが符号化された後の、バ
ッファの予測される将来状態にもとづく。現バッファ状
態及び予測バッファ状態は、従来の方法と異なる方法に
より、レート制御のために使用される。この実施例で
は、各ピクチャが"符号化単位"と見なされる。バッファ
が指定の上限及び下限に達すると予測されるときのみ、
量子化スケールQPが変更されるように、ビットがピク
チャのシーケンスに割当てられる。特にQPは、復号器
バッファが所与のしきい値を越えて充填されると予測さ
れるときのみ増加され、また復号器バッファが所与のし
きい値を越えて空になると予測されるときのみ減少され
る。
【0047】図9は、本発明の実施例のコンポーネント
及びそれらの相互接続を示す。ピクチャ・コーダ908
は、図2のピクチャ・コーダ205などの従来のタイプ
である。入力ビデオ信号900(Fk)は、複雑性予測
器901(CE)及びピクチャ・コーダ908(PC)
に入力される。ここでkは時間指標である。CEは入力
ビデオ・シーケンス900を処理し、各ピクチャの符号
化複雑性をモデル化するために有用なパラメータP
k(信号902)を予測する。CEの実施例については
後述する。パラメータ902はビット生成モデラ903
(BPM)に送信され、後者は、導入される符号化歪に
もとづきピクチャを符号化するためのビット数のモデル
を構成する。BPMはモデルMk(信号904)を生成
し、これはバッファ空/充填ピクチャ・ビット・アロケ
ータ905(PBA)に送信される。PBAはビデオ・
シーケンス内の各ピクチャに割当てるビット数を決定す
る。PBAの動作については後述する。好適な実施例で
は、ビット割当ては量子化スケールQk(信号907)
の形式でPCに送信される。PBAにより供給されるQ
kを用いて、PCはk番目のピクチャを符号化し、圧縮
データCDk(信号909)を生成する。PCは符号化
統計を形成し、これが信号906(Gk)を通じて、P
BA及びCEに知らされる。
【0048】図9のコンポーネントの各々は、ハードウ
ェアにより、または汎用コンピュータのメモリ内で実体
化されるソフトウェアとして実現されうる。好適には、
ピクチャ・コーダ及び複雑性予測器は、関連するマイク
ロコード制御を有するハードウェア・コンポーネントま
たは回路ボードとして実現され、ビット生成モデラ及び
バッファ空/充填ピクチャ・ビット・アロケータは、プ
ログラム・コードにより実現される。
【0049】複雑性予測器901の1実施例が図10に
示される。入力ピクチャ1000(Fk)(信号20
0、信号900、信号1500と同一)は、ピクチャ・
タイプ分類器1001により、ピクチャ・タイプに分類
され、分類が信号1002(CKk)を通じて知らされ
る。動き補正が動き補正ユニット1003により実行さ
れ、動き補正差Δmc(信号1004)が生成される。
ピクチャ分類及び動き補正のための技術は既知であり、
ここでは説明を省略する。信号1002及び信号100
4は、誤差加算器及び前オーバヘッド・カウンタ100
5に入力され、後者はこれらを用いてビット生成モデル
へのパラメータPk(信号1007)のセットを計算す
る。この実施例では、Pkは複雑性測度Ck及びオーバヘ
ッドOHkを含む。誤差加算器及び前オーバヘッド・カ
ウンタ1005は、ピクチャkの複雑性Ckを、Δmc
の全ての要素の絶対値の合計として計算する。誤差加算
器及び前オーバヘッド・カウンタ1005はまた、ピク
チャkのオーバヘッド予測OHkを同一タイプの以前の
ピクチャ内で使用されるビット数から、同一タイプの以
前のピクチャ内で量子化係数を表すために使用されるビ
ット数を差し引いて計算する。
【0050】OHkの計算方法をより理解するために、
次の例について考えてみよう。ピクチャ1乃至7は既に
符号化されており、ピクチャ6はP−ピクチャであり、
ピクチャ7はB−ピクチャであり、ピクチャ8はP−ピ
クチャである。ピクチャ6は100000ビットを使用
しており、その内の90000ビットは量子化係数とし
て使用されている。従って、ピクチャ8の予測オーバヘ
ッドは、OH8=10000である。
【0051】複雑性予測器901の別の実施例が、図1
5に示される。入力ピクチャ1500が再度ピクチャ・
タイプ分類器1501(ユニット1001と同一)によ
り、ピクチャ・タイプに分類され、分類が信号1502
(CLk)(信号1002と同一)を通じて通知され
る。分析符号器1503(AE)は各ピクチャを圧縮す
る。圧縮を実行する1方法は、従来の符号化方法(例え
ばGonzales及びViscitoのアルゴリズム)を使用するこ
とである。第2の方法は、全てのマクロブロックに対し
て量子化スケールとして固定値を使用することである。
第3の方法は、本特許のテーマである符号器(例えば図
10の複雑性予測器にもとづく符号器)を使用すること
である。いずれの場合にも、ピクチャkに対するオーバ
ヘッド予測は、そのピクチャに対してAE内で使用され
るビット数から、量子化DCT係数を符号化するために
使用されるビット数を減算して設定される。ピクチャk
に対する複雑性はAEによりピクチャk内で使用される
平均量子化スケールと、AEによりピクチャk内の量子
化係数を表すために使用されるビット数との積に設定さ
れる。
【0052】ビット生成モデラ903(BPM)は、ビ
デオ・コーダにより生成されるビット数を圧縮により導
入される符号化歪に関連付ける。1実施例では、量子化
スケールの固定値がピクチャk内で使用され、その値Q
kが符号化歪測度である。ビット生成モデルの例が図1
8に示される。図18では、ピクチャ1乃至3に対する
モデルが描かれており、所与のレベルの符号化歪を獲得
するために必要とされるビット数が示される。ここで各
ピクチャに対してより低レベルの歪を獲得するために
は、一般により多くのビットが必要とされる点に注意さ
れたい。この例では、所与のレベルの符号化歪において
ピクチャ3が最多のビットを要求し、続いてピクチャ
1、ピクチャ2の順である。従って、ピクチャ3が最
も"複雑"であり、ピクチャ2が最も複雑性が低いと言え
る。
【0053】多くの他のビット生成モデラも使用可能で
あり、これらは他の歪方法を使用しうる。例えば適応量
子化が、Gonzales及びViscitoによる前記参照特許で述
べられている。適応量子化を使用することにより、ピク
チャの品質を設定することができる。これは基本量子化
レベルを設定し、次にマクロブロックの空間的特性にも
とづき量子化スケールを生成するように、基本量子化レ
ベルを変更することにより達成される。またビット生成
モデラは異なるピクチャ・タイプ内の異なる量子化レベ
ルを等価に定義できる。(例えば、I−ピクチャ内の量
子化レベルが、B−フレーム内の量子化レベルの2倍に
等しい品質レベルと見なされうる。)
【0054】複雑性予測器の任意の前記実施例におい
て、ビット生成モデラ903は次のように動作する。量
子化スケールQkを有するピクチャkに対して必要とさ
れるビット数が、ピクチャkのオーバヘッド予測と、ピ
クチャkの複雑性をピクチャkの量子化スケールで割っ
た商との合計としてモデル化される。すなわち、 Bk(Qk)=Ck/Qk+OHk であり、ここで、Bk(Qk)は、量子化スケールQk
使用されるときに、ピクチャkの圧縮表現に必要とされ
る予測ビット数である。
【0055】符号器の1実施例では、シーケンスが何度
も圧縮され、最初のパスを除く各圧縮パスにおいて、以
前のパスが分析符号器1503として使用される。
【0056】バッファ空/充填ピクチャ・ビット・アロ
ケータ905が、図11に詳細に示される。ビット生成
モデラ903により生成されるモデルMk(信号110
0で示され、信号904と同一)が、ルックアヘッド・
バッファ制約ビット・アロケータ1104(LABCB
A)により、ビデオ・シーケンス内のピクチャに対する
ビット割当てを構成するために使用される。ビット割当
ては信号1109を通じて量子化スケールQkとして出
力される。LABCBAは、一定ビット・レート・モー
ドで動作するとき、図12に示されるフローチャートを
実行し、可変ビット・レート・モードで動作するとき、
図14のフローチャートを実行する。LABCBAの動
作については、以降で詳述される。LABCBAは仮想
バッファ検証器1108を用いて、バッファ制約に従う
ことをチェックする。好適な実施例では、仮想バッファ
検証器1108は、MPEG VBVアルゴリズムに対
応する。もちろん、符号器が別の符号化環境において使
用される場合には、それに適したバッファ制約が仮想バ
ッファ検証器1108内で使用されるべきである。
【0057】一定ビット・レート動作では、LABCB
Aが次の特性を有するビット割当てを決定する。
【0058】1.ピクチャk−1の除去後にバッファが
空の場合のみ、ピクチャkが符号化されるときの符号化
歪が、符号化順に以前のピクチャk−1の符号化歪から
減少される。
【0059】2.ピクチャkの除去以前にバッファが満
杯の場合のみ、ピクチャkが符号化されるときの符号化
歪が、符号化順に以前のピクチャk−1の符号化歪から
増加される。
【0060】前記特性を有するビット割当ての例が、図
16にバッファ満杯度及び対応する歪のプロットにより
示される。この例では、条件1がピクチャ10及び12
に当てはまり、条件2がピクチャ4、6、16及び18
に当てはまる。
【0061】可変ビット・レート動作では、LABCB
Aが次の特性を有するビット割当てを決定する。
【0062】3.ピクチャk−1の除去後にバッファが
空であるか、或いは条件3が当てはまる場合のみ、ピク
チャkが符号化されるときの符号化歪が、符号化順に以
前のピクチャk−1の符号化歪から減少される。
【0063】4.ピクチャkの除去以前にバッファが満
杯の場合のみ、ピクチャkが符号化されるときの符号化
歪が、符号化順に、以前のピクチャk−1の符号化歪か
ら増加される。
【0064】5.ピクチャkがバッファから除去された
後に、バッファがピクチャkの表示時間間隔の間にピー
ク・ビット・レートで伝送されるビット数よりも少ない
入来ビットにより満杯になる場合、ピクチャkが符号化
されるときの符号化歪は、任意の他のピクチャの符号化
歪よりも大きくない。
【0065】前記特性(3、4、5)を有するビット割
当ての例が、図17にバッファ満杯度及び対応する歪の
プロットにより示される。この例では、条件3がピクチ
ャ3及び14に当てはまり、条件4がピクチャ11に当
てはまり、条件5がピクチャ7、8及び17に当てはま
る。
【0066】好適な実施例では、符号化歪は使用される
量子化スケールQkに関連して評価される。すなわち、
より高いQkはより大きな歪を意味する。復号バッファ
満杯度が下限しきい値、例えばバッファ・サイズの5%
以下の場合、バッファは空と見なされる。同様に、復号
バッファ満杯度が上限しきい値、例えばバッファ・サイ
ズの95%以上の場合、バッファは満杯と見なされる。
【0067】一定ビット・レート・モードの条件1は、
直前に符号化されたピクチャの平均符号化複雑性より
も、グループとして低い符号化複雑性を有するピクチャ
のサブシーケンスを復号するとき、最大の復号バッファ
空間を将来の入来ビットの蓄積のために使用可能にし、
バッファの充填を延期することを保証する。条件2は、
直前に符号化されたピクチャの平均符号化複雑性より
も、グループとして高い符号化複雑性を有するピクチャ
のサブシーケンスを復号するために、最大のバッファ空
間が使用可能にされたこと、従ってバッファが空になる
のが延期されたことを保証する。
【0068】例えば、次の符号化過程について考えてみ
よう。入力ビデオ・シーケンスがn個のピクチャを含
み、これらが1から番号付けされる。ピクチャ1がバッ
ファから除去される以前の復号器バッファの初期満杯度
はBiである。復号バッファのサイズはBmaxである。ピ
クチャnが除去された後の最終バッファ満杯度はBf
ある。一定ビット・レート・モードでは、ビデオ・シー
ケンスの符号化に割当てられるビットの総数は、シーケ
ンスの長さ、ビット・レート、及びバッファの初期及び
最終状態により決定される。
【0069】一定ビット・レート・モードにおけるLA
BCBAの動作について、図12を参照しながら述べる
ことにする。LABCBAは好適には、プログラム・コ
ードとして実現される。
【0070】ステップ1201乃至1206により形成
されるループは、ピクチャ1で始まり、次第に長くなる
ピクチャ・シーケンスの割当てを計算する。用語"部分
割当て"は、ピクチャのサブシーケンスに対するビット
割当てを意味するために使用される。特にバッファから
ピクチャkを除去した後に、バッファが空になるように
ピクチャ1乃至k(1≦k<n)に対する割当てを見い
出す。更に、バッファからピクチャk+1を除去した後
にバッファが満杯になるように、割当てを見い出す(バ
ッファをk+1個のピクチャにより充填する割当てに対
して十分なビットが使用可能な場合)。これらの全ての
割当ては、上述の一定ビット・レート割当てにおける両
方の条件を満足する。
【0071】ステップ1201で、ピクチャ・カウンタ
kが1にセットされる。この時点で、復号器バッファの
満杯度はBiである。ステップ1202は、ピクチャk
+1が除去される以前にバッファが満杯であるように、
任意の正の数のビットをピクチャ1乃至kに割当てるこ
とが可能か否かをテストする。応答が肯定の場合、次に
ステップ1203が実行され、それ以外ではステップ1
204が実行される。
【0072】ステップ1203では、以前に計算された
部分割当てから構成され、ピクチャk+1が除去される
以前にバッファを満杯にする正当な割当て(VBVバッ
ファ制約に違反しない)を見い出すための探索が実行さ
れる。この探索を実行するためのプロシジャが、後述の
図13のフローチャートに示される。このステップで計
算される部分割当ては、メモリ内すなわちTop[k]に記憶
される。ステップ1203の実行の後、ステップ120
4が実行される。
【0073】ステップ1204では、以前に計算された
部分割当てから構成され、ピクチャkが除去された後に
バッファを空にする正当な割当て(VBVバッファ制約
に違反しない)を見い出すための探索が実行される。こ
のステップで計算される部分割当ては、メモリ内すなわ
ちBot[k]に記憶される。ステップ1203の実行の後、
ステップ1204が実行される。この探索を実行するた
めのプロシジャが後述の図13のフローチャートに示さ
れる。
【0074】ステップ1204の実行後、ステップ12
05でカウンタkが1増分される。カウンタkが次にス
テップ1206でnと比較される。kがnに等しくない
場合、次にステップ1202が繰り返される。kがnに
等しい場合には、次にステップ1207が実行される。
【0075】ステップ1207では、以前に計算された
部分割当てから構成され、ピクチャnが除去された後に
バッファをバッファ満杯度Bfにする正当な割当て(V
BVバッファ制約に違反しない)を見い出すための探索
が実行される。このステップで計算される割当ては、L
ABCBAにより出力されるビット割当てである。この
探索を実行するためのプロシジャが、後述の図13のフ
ローチャートに示される。
【0076】ステップ1203、1204及び1207
は全て、特定の開始及び終了バッファ満杯度を有し、前
記の2つの条件を満足する部分割当てを計算する。更に
各場合において、特定のピクチャ、すなわち以前のピク
チャにおいてバッファ満杯または空で終了する割当てが
既に知れているピクチャで終了する割当てを見い出さね
ばならない。次に探索プロシジャについて、図13を参
照しながら述べることにする。
【0077】探索プロシジャは入力として、4つのパラ
メータk_i、k_f、Bii及びBffを取る。探索プロシジャ
は、ピクチャk_i乃至k_fに対してビット割当てを計算
し、それはピクチャk_iが除去される以前にバッファ満
杯度Biiで開始し、ピクチャk_fが除去された後は、バ
ッファ満杯Bffで終了する。正当な割当てが存在する場
合、ピクチャk_i乃至k_f−1の間で、バッファを充填及
び空にする割当てが既に知れている。(これらは配列To
p[]及びBot[]に記憶される。)
【0078】ステップ1301は、初期バッファ満杯度
がBiiの場合に、ピクチャk_fが除去された後の最終バ
ッファ満杯度がBffに等しくなるように、Btをピクチ
ャk_i乃至k_fに割当てられるビットの総数に等しくセッ
トする。ステップ1302は、量子化スケールQの値を
計算する。この値はピクチャk_i乃至k_fを符号化するた
めに使用されるとき、ビット生成モデラ903により出
力されるビット生成モデルに従い、数量Btのビットに
なる。ここで固定値Qにより意味される割当て(以下、
一定値Q割当て)は正当でないかもしれず、バッファの
アンダフローまたはオーバフローを生じうる点に注意さ
れたい。上述のビット生成モデルを有する好適な実施例
では、Qに対する一定値がピクチャk_i乃至k_fの複雑性
kの総和を目標ビット数Btとピクチャk_i乃至k_fのオ
ーバヘッドOHkの総和との差により除算して計算され
うる。
【0079】ステップ1303は、仮想バッファ検証器
に従い、一定値Q割当てが有効か否かをテストする。一
定値Q割当てが有効な場合、これが結果として記憶さ
れ、探索は終了する。一定値Q割当てが有効でない場合
には、次にステップ1305が実行される。ステップ1
305では、カウンタjがk_fに等しくセットされる。
【0080】ステップ1306は、ピクチャj−1が除
去された後にバッファが空の場合、最終バッファ満杯度
がBfとなるように、Btをピクチャj乃至k_fに割当て
られるビットの総数に等しくセットする。ステップ13
07は、量子化スケールQの値を計算し、これはピクチ
ャj乃至k_fを符号化するために使用されるとき、ビッ
ト生成モデラ903により出力されるビット生成モデル
に従い、数量Btのビットを生成する。(再度この割当
ては正当でないかもしれない。)ステップ1308は、
可変最終値Qをピクチャj−1の除去後にバッファを空
にする、以前に計算された部分割当てにおいて使用され
たQの最終値、すなわち、Bot[j-1]に記憶される部分割
当てにおけるQの最終値に等しくセットする。
【0081】ステップ1309では、ピクチャj−1の
除去後にバッファ満杯度が初期に空の場合、仮想バッフ
ァ検証器に従い、ステップ1307で計算された一定値
Qを用いるピクチャj乃至k_fへの割当てが有効か否
か、並びに、Qが最終値Qよりも小さいか否かをテスト
する。両方の条件が真であれば、次にステップ1310
で、Bot[j-1]に記憶される部分割当てをステップ130
7で計算された一定値Q割当てに連結することにより、
割当てが構成される。このようにして構成された割当て
は結果として記憶され、探索が終了する。(ここで最終
割当てにおいて、一定ビット・レート割当てにおける条
件1及び条件2は、ピクチャk_i乃至j−1に対して
は、割当てBot[]に対して条件が真であったために、ま
たピクチャj+1乃至k_fに対しては、これらが全て同
一のQを使用するために、更にピクチャjに対しては、
このピクチャがピクチャj−1よりも小さなQを有する
が、ピクチャj−1が除去された後にバッファが空であ
るために、それぞれ真である。従って、最終割当て条件
1及び条件2が全てのピクチャに対して満足される。)
いずれかの条件が満たされない場合には、ステップ13
11が実行される。
【0082】ステップ1311は、ピクチャj−1が除
去される以前にバッファが満杯の場合に最終バッファ満
杯度がBfとなるように、Btをピクチャj乃至k_fに割
当てられるビットの総数に等しくセットする。ステップ
1312は量子化スケールQの値を計算し、これはピク
チャj乃至k_fを符号化するために使用されるとき、ビ
ット生成モデラ903により出力されるビット生成モデ
ルに従い、数Btのビットを生成する。ステップ131
3は、可変の最終のQをピクチャjが除去される以前に
バッファが満杯となる以前に計算された部分割当てにお
いて使用されたQの最終値、すなわち、Top[j-1]に記憶
される部分割当てにおけるQの最終値に等しくセットす
る。
【0083】ステップ1314は、ピクチャj−1の除
去以前にバッファ満杯度が初期に満杯であれば、仮想バ
ッファ検証器に従い、ステップ1312で計算された一
定値Qを用いるピクチャj乃至k_fへの割当てが有効か
否か、並びにQが最終値Qよりも大きいか否かをテスト
する。両方の条件が真であれば、次にステップ1315
で、Top[j-1]に記憶される部分割当てを、ステップ13
12で計算された一定値Q割当てに連結することにより
割当てが構成される。このようにして構成された割当て
は結果として記憶され、探索が終了する。(ステップ1
310で構成された割当て同様、ステップ1315で構
成される割当ても、一定ビットレート割当てにおいて、
条件1及び2を満足する。)いずれかの条件が満たされ
ない場合には、ステップ1316が実行される。
【0084】ステップ1316では、カウンタjが1減
分され、制御フローはステップ1317に移行する。ス
テップ1317では、カウンタjがk_iと比較される。
jがk_iよりも大きい場合、次にステップ1306が実
行され、それ以外では、探索は終了する。
【0085】小さな例を挙げて、上述の方法のウォーク
スルーを提供する。この例では、ビデオ・シーケンスは
5つのピクチャを含む。ピクチャは複雑性予測器901
により処理され、図21の表に示されるモデル・パラメ
ータが生成され、ルックアヘッド・メモリ1101に記
憶される。数値は、10進小数点以下2桁に丸められ
る。
【0086】仮想バッファ検証器1108は、次のパラ
メータ値により動作する。VBVバッファのサイズB
maxは400000ビットである。第1のピクチャを除
去する以前の初期バッファ満杯度Biは、250000
ビットである。ピクチャ表示時間間隔につき、バッファ
に入力するビット数Baは、200000である。目標
ビット数Btgtは、1000000である。Bi、Ba
びBtgtが提供されると、最後のピクチャが除去された
後の最終バッファ満杯度Bfは、50000ビットであ
る。この例では、バッファはその満杯度がBmaxのと
き、満杯と見なされ、満杯度が0のとき、空と見なされ
る。
【0087】ステップ1201で、ピクチャ・カウンタ
kが1にセットされる。この時点では、復号器バッファ
満杯度はBiすなわち250000である。ステップ1
202では、ピクチャ2が除去される以前にバッファが
満杯となるように、任意の正の数のビットをピクチャ1
に割当てることが可能か否かをテストする。20000
0ビットが1ピクチャ表示時間間隔内に入力し、バッフ
ァ満杯度が現在250000であるので、このテストは
合格し、ステップ1203が実行される。ステップ12
03では、ピクチャ1に対する割当てのための探索が実
行され、その結果、ピクチャ2が除去される以前にバッ
ファが満杯となる。割当てにおいては1つのピクチャし
か存在しないのでこの探索は僅かである。従って、図1
3のフローチャートにより実行されるステップの詳細に
ついては、より例証的な場合について後述する。しかし
ながら、探索プロシジャは、k_i=1、k_f=1、Bii
250000、及びBff=200000を伴い呼び出さ
れる点に注意されたい。探索の結果、Q=136によ
り、ピクチャ1に50000ビットが割当てられ、この
割当てがTop[1]に記憶される。
【0088】ステップ1204では、ピクチャ1が除去
された後に、バッファが空となる正当な割当てを見い出
すための探索が実行される。図13の探索プロシジャ
は、パラメータk_i=1、k_f=1、Bii=25000
0、及びBff=0を伴い呼び出される。その結果、Q=
8により、ピクチャ1に250000ビットが割当てら
れ、この割当てがBot[1]に記憶される。
【0089】ステップ1205の後、カウンタkは値2
を有する。kは5に等しくないので、ステップ1202
が次に実行される。ピクチャ1及び2が表示される時間
間隔内に、ピクチャ3の除去以前にバッファを充填する
のに十分なビットがバッファに入力しているので、次に
ステップ1203が実行される。
【0090】図13の探索プロシジャが、パラメータk_
i=1、k_f=2、Bii=250000、及びBff=20
0000を伴い呼び出される。ステップ1301で、B
tが250000に計算される。ステップ1302で、
Qが13.47に計算される。このQ値を用いるピクチ
ャ1乃至2に対するビット割当ては、バッファをオーバ
フローまたはアンダフローさせることはない。従って、
ステップ1304が実行され、一定値Q割当てがピクチ
ャ1乃至2に対し返却される。この割当ては、Top[2]に
記憶される。
【0091】ステップ1204では、図13の探索プロ
シジャが、パラメータk_i=1、k_f=2、Bii=250
000、及びBff=0を伴い呼び出される。ステップ1
301で、Btが450000に計算される。ステップ
1302で、Qが6.69に計算される。このQ値を用
いるピクチャ1乃至2に対するビット割当ては、バッフ
ァをアンダフローさせる。従って、ステップ1305が
実行され、カウンタjは値2を提供される。ステップ1
306で、Btが200000に計算される。ステップ
1307で、Qが5.19に計算される。ステップ13
08で、最後値QがBot[1]に記憶される割当てにおいて
使用された最後値Q、すなわち8にセットされる。ステ
ップ1305で計算されたQを用いる、ピクチャ2に対
する割当ては有効であり、且つQ<最後値Qである。従
って、ステップ1310が実行され、Bot[1]をピクチャ
2に対して丁度計算された一定値Q割当てに連結するこ
とにより構成される割当てがピクチャ1乃至2に対し返
却される。この割当ては、Bot[2]に記憶される。
【0092】ステップ1202乃至1206を含むルー
プは、ステップ1206でkが5に等しくなるまで実行
される。計算される部分割当てが図22の表に示され、
対応する量子化スケールが図23に示される。
【0093】ステップ1207では、図13の探索プロ
シジャがパラメータk_i=1、k_f=5、Bii=2500
00、及びBff=50000を伴い呼び出される。ステ
ップ1301で、Btが1000000に計算される。
ステップ1302で、Qが6.84に計算される。この
Q値を用いるピクチャ1乃至5に対するビット割当ては
バッファをアンダフローさせる。従って、ステップ13
05が実行され、カウンタjは値5を提供される。ステ
ップ1306で、Btが150000に計算される。ス
テップ1307でQが21に計算される。ステップ13
08で、最後のQがBot[4]に記憶される割当てにおいて
使用された最後値Q、すなわち3.12にセットされ
る。ステップ1305で計算されたQを用いる、ピクチ
ャ5に対する割当ては有効であるが、Qが最後値Qより
も小さくない。従って、ステップ1311が実行され、
tが350000に計算される。ステップ1312
で、Qが7に計算される。ステップ1313では、最後
値Qが、Top[4]に記憶される割当てにおいて使用された
最後値Q、すなわち6にセットされる。ステップ131
3で計算されたQを用いるピクチャ5に対する割当ては
有効であり、且つQ>最後値Qである。従って、ステッ
プ1315が実行され、Top[4]をピクチャ5に対して丁
度計算された一定値Q割当てに連結することにより構成
される割当てが、ピクチャ1乃至2に対して返却され
る。この割当て(最も近い整数に丸められる)が、LA
BCBAにより返却され、図24に対応する量子化スケ
ールと共に示される。この割当てにおける時間に対する
バッファ満杯度の進化の様子が、図19に示される。
【0094】可変ビット・レート・モードにおける条件
3は、直前に符号化されたピクチャの平均符号化複雑性
よりも、グループとして低い符号化複雑性を有するピク
チャのサブシーケンスを復号するとき、将来の入来ビッ
トを蓄積するために、最大の復号器バッファ空間を使用
可能にし、バッファの充填を延期することを保証する。
条件4は、直前に符号化されたピクチャの平均符号化複
雑性よりも、グループとして高い符号化複雑性を有する
ピクチャのサブシーケンスを復号するために、最大のバ
ッファ空間が使用可能にされたこと、従ってバッファが
空になるのが延期されたことを保証する。ピクチャがバ
ッファから除去され、次のピクチャが除去される以前に
バッファが充填する場合、そのピクチャは、次のピクチ
ャの除去以前にバッファ満杯度を変更することなしに、
より多くのビットを使用したことになる(余りに多くの
ビットがピクチャに追加されない限り、余分なビットが
追加されようとなかろうと、バッファ満杯度はBmax
ある)。従って、ある意味でビットはアンダフローを生
じることなく、こうしたピクチャに"追加"されうる(但
しもちろん、使用されるビットの総数は増加する)。こ
のことは特定の意味で、ビットが品質を均一化するため
にシーケンス内の任意の位置から、こうしたピクチャに
転送されうることを意味する。こうしたピクチャは任意
の他のピクチャよりも大きな歪を有さないことが望まれ
る。条件5は、このことが当てはまるように保証する。
【0095】可変ビット・レート・モードにおけるLA
BCBAの動作について、図14を参照しながら述べる
ことにする。LABCBAは、好適にはプログラム・コ
ードとして実現される。
【0096】可変ビット・レート・モードでは、LAB
CBAは概念的にピクチャを2つのタイプ、すなわち"
容易(easy)"及び"困難(hard)"に分類する。容易ピ
クチャは、最高の品質レベルにおいて、すなわち最低の
量子化スケールにより符号化されるピクチャである。困
難なピクチャは、最低の品質レベルにおいて、すなわち
最高の量子化スケールにより符号化されるピクチャであ
る。
【0097】符号化される第1のピクチャは、FIRSTに
より表され、符号化される最後のピクチャはLASTにより
表される。ピクチャFIRST乃至LASTに割当てられるビッ
トの総数は、総括してBtgtとして表される。初期バッ
ファ満杯度は、Binitとして表される。Bmaxはバッフ
ァが満杯と見なされるビット数を表す。
【0098】ステップ1401で、全てのピクチャが容
易とマークされ、変数BeasyがBtg tに等しくセットさ
れる。ステップ1402で、last_overがFIRST−1に、
fがBinitに、及びiがFIRSTにセットされる。変数B
fはある時点のバッファ満杯度を表す。
【0099】ステップ1403で、全ての容易ピクチャ
に対してBeasyビット総数を使用する一定値Q割当てが
計算される。
【0100】ステップ1404で、ピクチャiが容易か
否かがテストされる。ピクチャiが容易でない場合、ス
テップ1405でBfが空にセットされ、実行はステッ
プ1415に移行する。ピクチャiが容易の場合、ステ
ップ1406が実行される。ステップ1406では、B
fがピクチャiに以前に割当てられたビット数だけ減分
される。次にステップ1407で、ピクチャiが除去さ
れる以前のバッファ満杯度Bfを仮定するとき、ピクチ
ャiの除去後にピクチャiに対する割当てがバッファの
アンダフローを生じるか否かが判断される。バッファの
アンダフローが生じる場合、ステップ1408で、last
_over+1とiとの間のピクチャが困難とマークされ、
ピクチャlast_over+1が除去される以前にバッファが
満杯の場合、ピクチャiの除去後に空バッファになるた
めに必要なビットの総数が、それらのピクチャに割当て
られる。一定ビット・レート動作モードを想定すると変
数Bfが空にセットされ、実行はステップ1410に移
行する。バッファがアンダフローしない場合には、ステ
ップ1410が実行され、ピクチャ1が除去された後
に、バッファに入力するビット数だけBfが増分され
る。
【0101】ステップ1411では、ビットが制限無し
にピーク・ビット・レートでバッファに入力する場合、
fがBmaxと比較され、バッファがこの時点でオーバフ
ローしたか否かが確認される。オーバフローの場合、B
fがBmaxにセットされ、last_overがiにセットされ、
実行はステップ1415に移行する。オーバフローでな
い場合には、ステップ1413で、ピクチャi+1が困
難か否か、及びBfがBmaxより小さいか否かをテストす
る。両方の条件が真であれば、ステップ1414が実行
され、それ以外ではステップ1415が実行される。ス
テップ1414では、last_over+1とiとの間のピク
チャが困難としてマークされ、ピクチャlast_over+1
が除去される以前にバッファが満杯の場合、ピクチャi
+1が除去される以前に満杯バッファに成るために必要
なビット総数がそれらのピクチャに割当てらる。一定ビ
ット・レート動作モードが想定され、変数Bfが空にセ
ットされる。BfがBmaxよりも大きい場合には、Bf
maxにセットされ、実行はステップ1415に移行す
る。
【0102】ステップ1415では、カウンタiが1増
分される。ステップ1416では、iがLASTと比較され
る。iがLASTよりも大きくない場合、実行はステップ1
404に移行する。それ以外では、ステップ1417が
実行される。ステップ1417では、目標ビット数B
tgtと容易及び困難ピクチャに割当てられるビット数の
総和との差が計算され、変数extra_bitsに記憶される。
ステップ1418では、extra_bitsが0と比較される。
extra_bitsが0に等しくない場合、Beasyがextra_bits
と容易ピクチャに割当てられるビット数との和にセット
され、実行はステップ1402に移行する。それ以外で
は、ステップ1420が実行される。
【0103】ステップ1402では、上述の方法によ
り、連続困難ピクチャの各最大セグメントが、一定ビッ
ト・レート・モードに従い割当てを与えられ、バッファ
は初期に満杯となり、末期には空となる。この時点にお
ける結果的なビット割当ては、LABCBAから出力さ
れる。
【0104】上述の可変ビット・レート・ビット割当て
方法のウォークスルーを、小さな例を挙げて提供する。
この例では、ビデオ・シーケンスが5つのピクチャを含
む。ピクチャは複雑性予測器901により処理されて、
図21の表に示されるモデル・パラメータが生成され、
ルックアヘッド・メモリ1101に記憶される。特に注
釈されない限り、数値は10進小数点以下2桁に丸めら
れる。
【0105】仮想バッファ検証器は、次のパラメータ値
に関連して動作する。VBVバッファのサイズBmax
400000ビットである。第1のピクチャを除去する
以前の初期バッファ満杯度Biは、250000ビット
である。1ピクチャ表示時間間隔内にバッファに入力し
うるビットの最大数Baは、200000である。目標
ビット数は950000である。この例では、バッファ
はその満杯度がBmaxのとき、満杯と見なされ、満杯度
が0のとき、空と見なされる。
【0106】図14のフローチャートは、FIRST=1、L
AST=5、及び他のパラメータが前記のように定義され
る場合について参照される。
【0107】ステップ1401で、全てのピクチャが容
易とマークされ、Beasyが950000にセットされ
る。ステップ1402では、last_overが0にセットさ
れ、Bfが250000にセットされ、iが1にセット
される。ステップ1403で、ピクチャ1乃至5に対し
て950000ビットの総割当てを提供する一定値Q割
当てが計算される。この割当ては一定値Q=7.26を
使用し、ピクチャ1乃至5にそれぞれ271610ビッ
ト、147203ビット、84365ビット、1076
27ビット、及び339195ビットを割当てる。ピク
チャ1は現在容易であるので、ステップ1404のテス
トはステップ1406に分岐し、そこでBfがピクチャ
1に対する現割当てに当たる271610減分され、B
f=−21610となる。この値は負であるので、ピク
チャ1に対する割当てはアンダフローを生じる。従っ
て、ステップ1407がステップ1408に分岐し、そ
こでピクチャ1が困難とマークされ、250000ビッ
トがそれに割当てられる。(値250000は、バッフ
ァをアンダフローさせることなく、ピクチャ1に割当て
られうる最大ビット数である。複数のピクチャがこのス
テップで困難とマークされる場合、ピクチャiが除去さ
れるときに、バッファをアンダフローさせることなく、
これらのピクチャに割当てられうる最大ビット総数が、
ある様式で、例えば均等にこれらの同一のピクチャに配
分される。)ステップ1409では、Bfが0、すなわ
ちこの例では空に相当する値にセットされ、ステップ1
410に移行する。ステップ1410では、Bfが20
0000ビット、すなわち1ピクチャ表示時間間隔内に
バッファに入力しうる最大ビット数だけ、増分される。
fはこの時Bmaxより小さいので、ステップ1411の
テストはステップ1413に分岐する。ピクチャ2は容
易なので、ステップ1415が実行される。
【0108】ステップ1404からステップ1416ま
でのループは、ステップ1416でiが6に等しくなる
まで実行される。この時点まで、他のピクチャは困難と
マークされない。従って、この時点では、678390
ビットが容易ピクチャに割当てられており、25000
0ビットが困難ピクチャに割当てられている。ステップ
1417では、extra_bitsが21610に計算される。
この値は0よりも大きいので、ステップ1418のテス
トの結果、ステップ1419に分岐し、ここでBeasy
700000ビットにセットされる。処理はステップ1
402に移行する。ステップ1403で一定値Q=7を
用いて、容易ピクチャすなわちピクチャ2乃至5にビッ
トが割当てられる。ステップ1404乃至1416を含
むループは、追加のピクチャを困難とマークすることな
く実行される。ステップ1417に達すると、extra_bi
tsに値0が割当てられ、ステップ1418の後にステッ
プ1420が実行される。ステップ1420では、連続
困難ピクチャの最大サブシーケンスに対して前述の一定
ビット・レート・ビット割当てプロシジャが各サブシー
ケンスの直前及び直後のバッファ状態により定義される
開始及び終了バッファ満杯度と共に呼び出される。この
例では、一定ビット・レート・プロシジャが開始バッフ
ァ満杯度=250000ビット、及び終了バッファ満杯
度=0ビットと共にピクチャ1に対して呼び出される。
従って、この時点では、250000ビットがピクチャ
1に割当てられる。結果の割当て(最も近い整数に丸め
られる)及び対応する量子化が図25に示される。この
割当てにおける時間に対するバッファ満杯度の進化の様
子が図20に示される。LABCBAからビット割当て
が与えられると、ピクチャ・コーダ908がそれに従
い、ビデオ・シーケンスを符号化する。
【0109】図9の符号器は、図26に示す符号化/復
号システム内で使用されうる。符号化ビット・ストリー
ムCDkは、伝送媒体を通じて直接ピクチャ復号器26
01に送信されるか、或いは、最初に記憶装置2602
に記憶される。記憶装置は例えばハード(磁気)・ドラ
イブまたはコンパクト・ディスクである。伝送媒体は、
例えば同軸ケーブルまたは衛星伝送リンクである。圧縮
ビット・ストリームが最初に記憶装置に送信される場
合、これは次にピクチャ復号器2601に伝送される。
ピクチャ復号器は、ビット・ストリームCDkを復号
し、信号2603で示されるビデオ・データを生成す
る。ビデオ・データは次に表示装置2604上に表示さ
れる。
【0110】本発明はMPEG符号化に関連して述べら
れてきたが、他のビデオ符号化技術または非ビデオ・デ
ータに対しても使用されうる。実際、任意のデジタル情
報が符号化単位にセグメント化され、(固定または可変
レート符号化に対応して、)ビットが符号化単位に割当
てられる。符号化単位がこの時、割当てにもとづき符号
化されうる。ビット割当てに関連して上述した技術は、
データがビデオか否かに関わりなく作用する。例えば、
デジタル化音声が1ミリ秒のフレームにセグメント化さ
れ(これらの音声フレームは、ビデオ・ピクチャと同じ
役割を演じる)、ビットが各1ミリ秒の音声(符号化単
位)に対して割当てられうる。
【0111】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0112】(1)順序付けされた符号化単位を符号化
する方法であって、各前記符号化単位の符号化歪を、割
当てられる複数のビットにもとづきモデル化するステッ
プと、一連の規則に従い、各前記符号化単位に複数のビ
ットを割当てるステップであって、モデル復号器バッフ
ァからの以前の前記符号化単位の除去後に、前記復号器
バッファの満杯度が第1の数よりも小さい場合にのみ、
1番目を除く各前記符号化単位の符号化歪が、前記以前
の符号化単位の符号化歪よりも小さくなるようにし、前
記復号器バッファからの前記以前の符号化単位の除去後
に、前記復号器バッファの満杯度が第2の数よりも大き
い場合にのみ、1番目を除く各前記符号化単位の符号化
歪が、前記以前の符号化単位の符号化歪よりも大きくな
るようにする、前記割当てステップと、前記符号化単位
の少なくとも1つを前記割当てにもとづき符号化するス
テップと、を含む、方法。 (2)前記データがビデオ・データである、前記(1)
記載の方法。 (3)前記符号化単位がピクチャである、前記(2)記
載の方法。 (4)前記モデル化が、ビデオ・シーケンスを符号化す
るステップと、前記符号化にもとづき、前記シーケンス
の部分部分の符号化歪を割当てられる複数のビットにも
とづきモデル化するステップと、を含む、前記(2)記
載の方法。 (5)前記モデル化が、ビデオ・シーケンスに対して動
き補正を実行するステップと、前記動き補正にもとづき
前記シーケンスの部分部分の符号化歪を割当てられる複
数のビットにもとづきモデル化するステップと、を含
む、前記(2)記載の方法。 (6)前記歪が量子化レベルである、前記(2)記載の
方法。 (7)順序付けされた符号化単位を符号化する方法であ
って、前記符号化単位のセット内の各前記符号化単位の
符号化歪を割当てられる複数のビットにもとづきモデル
化するステップと、一連の規則に従い、前記符号化単位
のサブセットの間で、第1の数のビットを割当てるステ
ップであって、モデル復号器バッファからの前記サブセ
ット内の以前の前記符号化単位の除去後に、前記復号器
バッファの満杯度が第1のしきい値よりも小さい場合に
のみ、前記サブセット内の1番目を除く各前記符号化単
位の符号化歪が、前記サブセット内の前記以前の符号化
単位の符号化歪よりも小さくなるようにし、前記復号器
バッファからの前記サブセット内の前記以前の符号化単
位の除去後に、前記復号器バッファの満杯度が第2のし
きい値よりも大きい場合にのみ、前記サブセット内の1
番目を除く各前記符号化単位の符号化歪が、前記サブセ
ット内の前記以前の符号化単位の符号化歪よりも大きく
なるようにする、前記割当てステップと、前記第1の数
のビットの割当てに応答して、一連の規則に従い、全て
の前記符号化単位の間で第2の数のビットを割当てるス
テップであって、前記復号器バッファからの以前の前記
符号化単位の除去後に、前記復号器バッファの満杯度が
第3のしきい値よりも小さい場合にのみ、1番目を除く
各前記符号化単位の符号化歪が、前記以前の符号化単位
の符号化歪よりも小さくなるようにし、前記復号器バッ
ファからの前記以前の符号化単位の除去後に、前記復号
器バッファの満杯度が第4のしきい値よりも大きい場合
にのみ、1番目を除く各前記符号化単位の符号化歪が、
前記以前の符号化単位の符号化歪よりも大きくなるよう
にする、前記割当てステップと、前記符号化単位の少な
くとも1つを前記割当てにもとづき符号化するステップ
と、を含む、方法。 (8)前記データがビデオ・データである、前記(7)
記載の方法。 (9)前記符号化単位がピクチャである、前記(8)記
載の方法。 (10)情報を符号化する装置であって、符号化歪と符
号化される各符号化単位のビット使用の関係をモデル化
するビット生成モデラと、前記ビット生成モデラから出
力を受信するように接続され、一連の規則に従い、各前
記符号化単位にビットを割当てるアロケータであって、
モデル復号器バッファからの以前の前記符号化単位の除
去後に、前記復号器バッファの満杯度が第1の数よりも
小さい場合にのみ、1番目を除く各前記符号化単位の符
号化歪が、前記以前の符号化単位の符号化歪よりも小さ
くなるようにし、前記復号器バッファからの前記以前の
符号化単位の除去後に、前記復号器バッファの満杯度が
第2の数よりも大きい場合にのみ、1番目を除く各前記
符号化単位の符号化歪が、前記以前の符号化単位の符号
化歪よりも大きくなるようにする、前記アロケータと、
前記ビット・アロケータから出力を受信するように接続
される符号器と、を含む、装置。 (11)順序付けられた符号化単位を可変ビット・レー
トで符号化する方法であって、各前記符号化単位の符号
化歪を、割当てられる複数のビットにもとづきモデル化
するステップと、一連の規則に従い、各前記符号化単位
に複数のビットを割当てるステップであって、モデル復
号器バッファからの以前の前記符号化単位の除去後に、
前記復号器バッファの満杯度が第1の数よりも小さい場
合にのみ、1番目を除く各前記符号化単位の符号化歪
が、前記以前の符号化単位の符号化歪よりも小さくなる
ようにし、前記復号器バッファからの前記以前の符号化
単位の除去後に、前記復号器バッファの満杯度が第2の
数よりも大きい場合にのみ、1番目を除く各前記符号化
単位の符号化歪が、前記以前の符号化単位の符号化歪よ
りも大きくなるようにし、前記復号器バッファからの次
の前記符号化単位の除去以前に、前記復号器バッファ満
杯度が第3の数よりも大きい場合、最後を除く各前記符
号化単位の符号化歪が、任意の他の前記符号化単位の符
号化歪よりも小さくならないようにする、前記割当てス
テップと、前記符号化単位の少なくとも1つを前記割当
てにもとづき符号化するステップと、を含む、方法。 (12)前記データがビデオ・データである、前記(1
1)記載の方法。 (13)前記符号化単位がピクチャである、前記(1
2)記載の方法。 (14)前記モデル化が、ビデオ・シーケンスを符号化
するステップと、前記符号化にもとづき、前記シーケン
スの部分部分の符号化歪を、割当てられる複数のビット
にもとづきモデル化するステップと、を含む、前記(1
2)記載の方法。 (15)前記モデル化が、ビデオ・シーケンスに対して
動き補正を実行するステップと、前記動き補正にもとづ
き、前記シーケンスの部分部分の符号化歪を割当てられ
る複数のビットにもとづきモデル化するステップと、を
含む、前記(12)記載の方法。 (16)前記歪が量子化レベルである、前記(12)記
載の方法。 (17)順序付けられた符号化単位を可変ビット・レー
トで符号化する方法であって、セット内の各前記符号化
単位の符号化歪を、割当てられる複数のビットにもとづ
きモデル化するステップと、前記符号化単位を第1の符
号化単位セットにセグメント化するステップであって、
前記第1のセット内の各前記符号化単位が、任意の他の
前記符号化単位の符号化歪よりも大きくない符号化歪を
有し、第2のセットが他の全ての符号化単位を含むよう
にする、前記セグメント化ステップと、一連の規則に従
い、前記第2のセット内の各前記符号化単位に複数のビ
ットを割当てるステップであって、モデル復号器バッフ
ァからの前記第2のセット内の別の前記符号化単位の除
去後に、前記復号器バッファの満杯度が第1の数よりも
小さい場合にのみ、前記第2のセット内の前記別の符号
化単位に続く前記第2のセット内の各前記符号化単位の
符号化歪が、前記別の符号化単位の符号化歪よりも小さ
くなるようにし、前記復号器バッファからの前記第2の
セット内の前記別の符号化単位の除去後に、前記復号器
バッファの満杯度が第2の数よりも大きい場合にのみ、
前記第2のセット内の前記別の符号化単位に続く前記第
2のセット内の各前記符号化単位の符号化歪が、前記別
の符号化単位の符号化歪よりも大きくなるようにする、
前記割当てステップと、前記第2の符号化単位セットに
対し使用されないビットを、前記第1の符号化単位セッ
トの間で割当てるステップと、前記符号化単位の少なく
とも1つを前記割当てにもとづき符号化するステップ
と、を含む、方法。 (18)前記データがビデオ・データである、前記(1
7)記載の方法。 (19)前記符号化単位がピクチャである、前記(1
8)記載の方法。 (20)情報を可変ビット・レートで符号化する装置で
あって、符号化歪と符号化される各符号化単位のビット
使用の関係をモデル化するビット生成モデラと、前記ビ
ット生成モデラから出力を受信するように接続され、一
連の規則に従い、各前記符号化単位にビットを割当てる
アロケータであって、モデル復号器バッファからの以前
の前記符号化単位の除去後に、前記復号器バッファの満
杯度が第1の数よりも小さい場合にのみ、1番目を除く
各前記符号化単位の符号化歪が、前記以前の符号化単位
の符号化歪よりも小さくなるようにし、前記復号器バッ
ファからの前記以前の符号化単位の除去後に、前記復号
器バッファの満杯度が第2の数よりも大きい場合にの
み、1番目を除く各前記符号化単位の符号化歪が、前記
以前の符号化単位の符号化歪よりも大きくなるように
し、前記復号器バッファからの次の前記符号化単位の除
去以前に、前記復号器バッファ満杯度が第3の数よりも
大きい場合、最後を除く各前記符号化単位の符号化歪
が、任意の他の前記符号化単位の符号化歪よりも小さく
ならないようにする、前記アロケータと、前記ビット・
アロケータから出力を受信するように接続される符号器
と、を含む、装置。
【図面の簡単な説明】
【図1】仮想バッファ検証器のブロック図である。
【図2】従来のビデオ圧縮システムの概略を示す図であ
る。
【図3】MPEGデータ・ストリームのビデオ圧縮レイ
ヤ内の圧縮データのピクチャ・グループ(GOP)・レ
イヤの一般的セットを示す図である。
【図4】MPEGデータ・ストリームのビデオ圧縮レイ
ヤ内の圧縮データのMBレイヤ内における、ピクチャの
一般的なマクロブロック(MB)細分化を示す図であ
る。
【図5】マクロブロックのブロック細分化を示す図であ
る。
【図6】ピクチャの典型的グループ内のピクチャのタイ
プを示す図である。
【図7】一定ビット・レート動作モードでの、仮想復号
器バッファの時間に対する進化の一般的プロットを示す
図である。
【図8】可変ビット・レート動作モードでの、仮想復号
器バッファの時間に対する進化の一般的プロットを示す
図である。
【図9】本発明の実施例によるビデオ圧縮システムの概
略を示す図である。
【図10】図9の複雑性予測器の実施例のブロック図で
ある。
【図11】図9のバッファ空/ピクチャ・ビット充填ア
ロケータの詳細ブロック図である。
【図12】一定ビット・レート・モードでの、図11の
ルックアヘッド・バッファ制約ビット・アロケータの動
作を示すフローチャートである(これらのフローチャー
トは、可変ビット・レート・モードでのルックアヘッド
・バッファ制約ビット・アロケータの動作の一部として
も使用される)。
【図13】一定ビット・レート・モードでの、図11の
ルックアヘッド・バッファ制約ビット・アロケータの動
作のフローチャートを示す図である(これらのフローチ
ャートは、可変ビット・レート・モードでのルックアヘ
ッド・バッファ制約ビット・アロケータの動作の一部と
しても使用される)。
【図14】可変ビット・レート・モードでの、図11の
ルックアヘッド・バッファ制約ビット・アロケータの動
作を示すフローチャートである。
【図15】図9の複雑性予測器の第2の実施例のブロッ
ク図である。
【図16】一定ビット・レート・モードで動作する本発
明の好適な実施例において達成される、復号器バッファ
の状態と符号化歪との関係の例を示す図である。
【図17】可変ビット・レート・モードで動作する本発
明の好適な実施例において達成される、復号器バッファ
の状態と符号化歪との関係の例を示す図である。
【図18】本発明の実施例において、図9のビット生成
モデラによりモデル化される3つの一般的ピクチャにお
ける、符号化歪と符号化ビットとの関係を示す図であ
る。
【図19】一定ビット・レート・モードでの一般的符号
化において、図11のルックアヘッド・バッファ制約ビ
ット・アロケータにより予測される、復号器バッファ満
杯度の進化を示す図である。
【図20】可変ビット・レート・モードでの一般的符号
化において、図11のルックアヘッド・バッファ制約ビ
ット・アロケータにより予測される、復号器バッファ満
杯度の進化を示す図である。
【図21】テキストにおける割当て問題例において使用
されるモデル・パラメータの一覧を示す図である。
【図22】一定ビット・レート・ビット割当て問題例に
おいて計算される、部分的ビット割当ての一覧を示す図
である。
【図23】図22の部分的ビット割当てに対応する量子
化スケールの一覧を示す図である。
【図24】一定ビット・レート割当て問題例における、
結果のビット割当てを示す図である。
【図25】可変ビット・レート割当て問題例における、
結果のビット割当てを示す図である。
【図26】より広い意味でのビデオ伝送/記憶システム
における、図9のビデオ圧縮システムを示す図である。
【符号の説明】
k 入力ビデオ信号 Ck 複雑性予測信号 Qk 量子化スケール CDk 圧縮データ Pk パラメータ Mk ビット数モデル Gk 符号化統計 CLk 分類信号 Δmc 動き補正差 100 圧縮データ 101 復号器バッファ 103 仮想復号器 200 入力信号Fk 201 複雑性予測 202 複雑性予測Ck 203 ピクチャ・ビット・アロケータ 024 量子化スケールQk 205 ピクチャ・コーダ 206 出力ビット・ストリームCDk 908 ピクチャ・コーダ(PC) 900 入力ビデオ信号(Fk) 901 複雑性予測器(CE) 902 パラメータPk 903 ビット生成モデラ(BPM) 904 モデルMk 905 バッファ空/充填ピクチャ・ビット・アロケー
タ(PBA) 906 信号(Gk) 907 量子化スケールQk 909 圧縮データCDk 1000 入力ピクチャ(Fk) 1001 ピクチャ・タイプ分類器 1002 信号(CKk) 1003 動き補正ユニット 1004 動き補正差Δmc 1005 前オーバヘッド・カウンタ 1007 パラメータPk 1100 モデルMk 1104 ルックアヘッド・バッファ制約ビット・アロ
ケータ(LABCBA) 1108 仮想バッファ検証器 1500 入力ピクチャ 1501 ピクチャ・タイプ分類器 1502 信号(CLk) 1503 分析符号器(AE) 2601 ピクチャ復号器 2602 記憶装置 2603 信号 2604 表示装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 エリオット・ニール・リンザー アメリカ合衆国10463、ニューヨーク州ブ ロンクス、アパートメント 2ビィ、ヘン リー・ハドソン・パークウェイ 3530

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】順序付けされた符号化単位を符号化する方
    法であって、 各前記符号化単位の符号化歪を、割当てられる複数のビ
    ットにもとづきモデル化するステップと、 一連の規則に従い、各前記符号化単位に複数のビットを
    割当てるステップであって、モデル復号器バッファから
    の以前の前記符号化単位の除去後に、前記復号器バッフ
    ァの満杯度が第1の数よりも小さい場合にのみ、1番目
    を除く各前記符号化単位の符号化歪が、前記以前の符号
    化単位の符号化歪よりも小さくなるようにし、前記復号
    器バッファからの前記以前の符号化単位の除去後に、前
    記復号器バッファの満杯度が第2の数よりも大きい場合
    にのみ、1番目を除く各前記符号化単位の符号化歪が、
    前記以前の符号化単位の符号化歪よりも大きくなるよう
    にする、前記割当てステップと、 前記符号化単位の少なくとも1つを前記割当てにもとづ
    き符号化するステップと、 を含む、方法。
  2. 【請求項2】前記データがビデオ・データである、請求
    項1記載の方法。
  3. 【請求項3】前記符号化単位がピクチャである、請求項
    2記載の方法。
  4. 【請求項4】前記モデル化が、 ビデオ・シーケンスを符号化するステップと、 前記符号化にもとづき、前記シーケンスの部分部分の符
    号化歪を割当てられる複数のビットにもとづきモデル化
    するステップと、 を含む、請求項2記載の方法。
  5. 【請求項5】前記モデル化が、 ビデオ・シーケンスに対して動き補正を実行するステッ
    プと、 前記動き補正にもとづき前記シーケンスの部分部分の符
    号化歪を割当てられる複数のビットにもとづきモデル化
    するステップと、 を含む、請求項2記載の方法。
  6. 【請求項6】前記歪が量子化レベルである、請求項2記
    載の方法。
  7. 【請求項7】順序付けされた符号化単位を符号化する方
    法であって、 前記符号化単位のセット内の各前記符号化単位の符号化
    歪を割当てられる複数のビットにもとづきモデル化する
    ステップと、 一連の規則に従い、前記符号化単位のサブセットの間
    で、第1の数のビットを割当てるステップであって、モ
    デル復号器バッファからの前記サブセット内の以前の前
    記符号化単位の除去後に、前記復号器バッファの満杯度
    が第1のしきい値よりも小さい場合にのみ、前記サブセ
    ット内の1番目を除く各前記符号化単位の符号化歪が、
    前記サブセット内の前記以前の符号化単位の符号化歪よ
    りも小さくなるようにし、前記復号器バッファからの前
    記サブセット内の前記以前の符号化単位の除去後に、前
    記復号器バッファの満杯度が第2のしきい値よりも大き
    い場合にのみ、前記サブセット内の1番目を除く各前記
    符号化単位の符号化歪が、前記サブセット内の前記以前
    の符号化単位の符号化歪よりも大きくなるようにする、
    前記割当てステップと、 前記第1の数のビットの割当てに応答して、一連の規則
    に従い、全ての前記符号化単位の間で第2の数のビット
    を割当てるステップであって、前記復号器バッファから
    の以前の前記符号化単位の除去後に、前記復号器バッフ
    ァの満杯度が第3のしきい値よりも小さい場合にのみ、
    1番目を除く各前記符号化単位の符号化歪が、前記以前
    の符号化単位の符号化歪よりも小さくなるようにし、前
    記復号器バッファからの前記以前の符号化単位の除去後
    に、前記復号器バッファの満杯度が第4のしきい値より
    も大きい場合にのみ、1番目を除く各前記符号化単位の
    符号化歪が、前記以前の符号化単位の符号化歪よりも大
    きくなるようにする、前記割当てステップと、 前記符号化単位の少なくとも1つを前記割当てにもとづ
    き符号化するステップと、 を含む、方法。
  8. 【請求項8】前記データがビデオ・データである、請求
    項7記載の方法。
  9. 【請求項9】前記符号化単位がピクチャである、請求項
    8記載の方法。
  10. 【請求項10】情報を符号化する装置であって、 符号化歪と符号化される各符号化単位のビット使用の関
    係をモデル化するビット生成モデラと、 前記ビット生成モデラから出力を受信するように接続さ
    れ、一連の規則に従い、各前記符号化単位にビットを割
    当てるアロケータであって、モデル復号器バッファから
    の以前の前記符号化単位の除去後に、前記復号器バッフ
    ァの満杯度が第1の数よりも小さい場合にのみ、1番目
    を除く各前記符号化単位の符号化歪が、前記以前の符号
    化単位の符号化歪よりも小さくなるようにし、前記復号
    器バッファからの前記以前の符号化単位の除去後に、前
    記復号器バッファの満杯度が第2の数よりも大きい場合
    にのみ、1番目を除く各前記符号化単位の符号化歪が、
    前記以前の符号化単位の符号化歪よりも大きくなるよう
    にする、前記アロケータと、 前記ビット・アロケータから出力を受信するように接続
    される符号器と、 を含む、装置。
  11. 【請求項11】順序付けられた符号化単位を可変ビット
    ・レートで符号化する方法であって、 各前記符号化単位の符号化歪を、割当てられる複数のビ
    ットにもとづきモデル化するステップと、 一連の規則に従い、各前記符号化単位に複数のビットを
    割当てるステップであって、モデル復号器バッファから
    の以前の前記符号化単位の除去後に、前記復号器バッフ
    ァの満杯度が第1の数よりも小さい場合にのみ、1番目
    を除く各前記符号化単位の符号化歪が、前記以前の符号
    化単位の符号化歪よりも小さくなるようにし、前記復号
    器バッファからの前記以前の符号化単位の除去後に、前
    記復号器バッファの満杯度が第2の数よりも大きい場合
    にのみ、1番目を除く各前記符号化単位の符号化歪が、
    前記以前の符号化単位の符号化歪よりも大きくなるよう
    にし、前記復号器バッファからの次の前記符号化単位の
    除去以前に、前記復号器バッファ満杯度が第3の数より
    も大きい場合、最後を除く各前記符号化単位の符号化歪
    が、任意の他の前記符号化単位の符号化歪よりも小さく
    ならないようにする、前記割当てステップと、 前記符号化単位の少なくとも1つを前記割当てにもとづ
    き符号化するステップと、 を含む、方法。
  12. 【請求項12】前記データがビデオ・データである、請
    求項11記載の方法。
  13. 【請求項13】前記符号化単位がピクチャである、請求
    項12記載の方法。
  14. 【請求項14】前記モデル化が、ビデオ・シーケンスを
    符号化するステップと、 前記符号化にもとづき、前記シーケンスの部分部分の符
    号化歪を、割当てられる複数のビットにもとづきモデル
    化するステップと、 を含む、請求項12記載の方法。
  15. 【請求項15】前記モデル化が、 ビデオ・シーケンスに対して動き補正を実行するステッ
    プと、 前記動き補正にもとづき、前記シーケンスの部分部分の
    符号化歪を割当てられる複数のビットにもとづきモデル
    化するステップと、 を含む、請求項12記載の方法。
  16. 【請求項16】前記歪が量子化レベルである、請求項1
    2記載の方法。
  17. 【請求項17】順序付けられた符号化単位を可変ビット
    ・レートで符号化する方法であって、 セット内の各前記符号化単位の符号化歪を、割当てられ
    る複数のビットにもとづきモデル化するステップと、 前記符号化単位を第1の符号化単位セットにセグメント
    化するステップであって、前記第1のセット内の各前記
    符号化単位が、任意の他の前記符号化単位の符号化歪よ
    りも大きくない符号化歪を有し、第2のセットが他の全
    ての符号化単位を含むようにする、前記セグメント化ス
    テップと、 一連の規則に従い、前記第2のセット内の各前記符号化
    単位に複数のビットを割当てるステップであって、モデ
    ル復号器バッファからの前記第2のセット内の別の前記
    符号化単位の除去後に、前記復号器バッファの満杯度が
    第1の数よりも小さい場合にのみ、前記第2のセット内
    の前記別の符号化単位に続く前記第2のセット内の各前
    記符号化単位の符号化歪が、前記別の符号化単位の符号
    化歪よりも小さくなるようにし、前記復号器バッファか
    らの前記第2のセット内の前記別の符号化単位の除去後
    に、前記復号器バッファの満杯度が第2の数よりも大き
    い場合にのみ、前記第2のセット内の前記別の符号化単
    位に続く前記第2のセット内の各前記符号化単位の符号
    化歪が、前記別の符号化単位の符号化歪よりも大きくな
    るようにする、前記割当てステップと、 前記第2の符号化単位セットに対し使用されないビット
    を、前記第1の符号化単位セットの間で割当てるステッ
    プと、 前記符号化単位の少なくとも1つを前記割当てにもとづ
    き符号化するステップと、 を含む、方法。
  18. 【請求項18】前記データがビデオ・データである、請
    求項17記載の方法。
  19. 【請求項19】前記符号化単位がピクチャである、請求
    項18記載の方法。
  20. 【請求項20】情報を可変ビット・レートで符号化する
    装置であって、 符号化歪と符号化される各符号化単位のビット使用の関
    係をモデル化するビット生成モデラと、 前記ビット生成モデラから出力を受信するように接続さ
    れ、一連の規則に従い、各前記符号化単位にビットを割
    当てるアロケータであって、モデル復号器バッファから
    の以前の前記符号化単位の除去後に、前記復号器バッフ
    ァの満杯度が第1の数よりも小さい場合にのみ、1番目
    を除く各前記符号化単位の符号化歪が、前記以前の符号
    化単位の符号化歪よりも小さくなるようにし、前記復号
    器バッファからの前記以前の符号化単位の除去後に、前
    記復号器バッファの満杯度が第2の数よりも大きい場合
    にのみ、1番目を除く各前記符号化単位の符号化歪が、
    前記以前の符号化単位の符号化歪よりも大きくなるよう
    にし、前記復号器バッファからの次の前記符号化単位の
    除去以前に、前記復号器バッファ満杯度が第3の数より
    も大きい場合、最後を除く各前記符号化単位の符号化歪
    が、任意の他の前記符号化単位の符号化歪よりも小さく
    ならないようにする、前記アロケータと、 前記ビット・アロケータから出力を受信するように接続
    される符号器と、 を含む、装置。
JP9002297A 1996-01-25 1997-01-09 バッファ空/充填ルックアヘッド・ビット・アロケータを有する動画ビデオ圧縮システム Pending JPH09214962A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/591807 1996-01-25
US08/591,807 US5719632A (en) 1996-01-25 1996-01-25 Motion video compression system with buffer empty/fill look-ahead bit allocation

Publications (1)

Publication Number Publication Date
JPH09214962A true JPH09214962A (ja) 1997-08-15

Family

ID=24368028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9002297A Pending JPH09214962A (ja) 1996-01-25 1997-01-09 バッファ空/充填ルックアヘッド・ビット・アロケータを有する動画ビデオ圧縮システム

Country Status (4)

Country Link
US (1) US5719632A (ja)
JP (1) JPH09214962A (ja)
KR (1) KR100197385B1 (ja)
GB (1) GB2309611B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1204278A3 (en) * 2000-11-06 2003-12-10 Matsushita Electric Industrial Co., Ltd. Method for coding image signals and apparatus thereof
JPWO2021182512A1 (ja) * 2020-03-11 2021-09-16
US12034920B2 (en) 2020-03-11 2024-07-09 Nec Corporation Communication control system and communication control method
US12166978B2 (en) 2020-06-09 2024-12-10 Nec Corporation Communication control system and communication control method

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694170A (en) * 1995-04-06 1997-12-02 International Business Machines Corporation Video compression using multiple computing agents
EP0836329A4 (en) * 1996-04-12 2002-09-04 Sony Corp IMAGE ENCODER, IMAGE ENCODING METHOD AND RECORDING MEDIUM FOR IMAGE ENCODING PROGRAM
US6115421A (en) * 1996-04-25 2000-09-05 Matsushita Electric Industrial Co., Ltd. Moving picture encoding apparatus and method
US6023713A (en) * 1996-09-06 2000-02-08 Intel Corporation Optimized CD/DVD authoring employing block reallocation
US6549575B1 (en) * 1996-11-07 2003-04-15 International Business Machines Corporation. Efficient, flexible motion estimation architecture for real time MPEG2 compliant encoding
US6078958A (en) * 1997-01-31 2000-06-20 Hughes Electronics Corporation System for allocating available bandwidth of a concentrated media output
US6084910A (en) * 1997-01-31 2000-07-04 Hughes Electronics Corporation Statistical multiplexer for video signals
US6005620A (en) * 1997-01-31 1999-12-21 Hughes Electronics Corporation Statistical multiplexer for live and pre-compressed video
US6188436B1 (en) 1997-01-31 2001-02-13 Hughes Electronics Corporation Video broadcast system with video data shifting
US6052384A (en) * 1997-03-21 2000-04-18 Scientific-Atlanta, Inc. Using a receiver model to multiplex variable-rate bit streams having timing constraints
WO1999007158A2 (en) * 1997-07-29 1999-02-11 Koninklijke Philips Electronics N.V. Variable bitrate video coding method and corresponding video coder
US6192075B1 (en) * 1997-08-21 2001-02-20 Stream Machine Company Single-pass variable bit-rate control for digital video coding
US6230200B1 (en) * 1997-09-08 2001-05-08 Emc Corporation Dynamic modeling for resource allocation in a file server
SG116400A1 (en) * 1997-10-24 2005-11-28 Matsushita Electric Industrial Co Ltd A method for computational graceful degradation inan audiovisual compression system.
US6023233A (en) * 1998-03-20 2000-02-08 Craven; Peter G. Data rate control for variable rate compression systems
US7016413B2 (en) 1998-03-20 2006-03-21 International Business Machines Corporation Adaptively encoding a picture of contrasted complexity having normal video and noisy video portions
EP0994627B1 (en) * 1998-10-13 2006-03-08 Matsushita Electric Industrial Co., Ltd. Regulation of the computational and memory requirements of a compressed bitstream in a video decoder
US6151362A (en) * 1998-10-30 2000-11-21 Motorola, Inc. Joint rate control for stereoscopic video coding
GB2357210A (en) * 1999-12-06 2001-06-13 Snell & Wilcox Ltd Inserting future bit rate information in a compressed data stream
JP4710108B2 (ja) * 2000-07-14 2011-06-29 ソニー株式会社 画像信号符号化方法及び装置
US6594316B2 (en) 2000-12-12 2003-07-15 Scientific-Atlanta, Inc. Method and apparatus for adaptive bit rate control in an asynchronized encoding system
JP2002354477A (ja) * 2001-05-24 2002-12-06 Pioneer Electronic Corp 量子化単位設定装置及び量子化単位設定方法、符号化装置及び符号化方法並びに情報記録媒体及び量子化単位設定用プログラム
EP2302930B1 (en) * 2001-11-27 2015-07-15 Samsung Electronics Co., Ltd. Coding and decoding of a bitstream with a coordinate interpolator
CN101827262B (zh) * 2002-04-26 2014-09-17 索尼株式会社 解码设备和方法
WO2004006446A2 (en) * 2002-07-02 2004-01-15 Conexant Systems, Inc. Hypothetical reference decoder for compressed image and video
US7532670B2 (en) * 2002-07-02 2009-05-12 Conexant Systems, Inc. Hypothetical reference decoder with low start-up delays for compressed image and video
DE60221396D1 (de) * 2002-09-25 2007-09-06 St Microelectronics Srl Verfahren und Gerät, um digitales Signal über einem Rechnerbus zu übertragen und Rechnerprogrammprodukt dafür
DE60209690D1 (de) * 2002-09-25 2006-05-04 St Microelectronics Srl Verfahren und Gerät, um ein digitales Signal über einem Rechnerbus zu übertragen und Rechnerprogrammprodukt dafür
KR100711635B1 (ko) * 2003-02-18 2007-04-25 노키아 코포레이션 화상 부호화 방법
CN101668215A (zh) * 2003-02-18 2010-03-10 诺基亚有限公司 图像解码方法
US7408984B2 (en) * 2003-09-17 2008-08-05 International Business Machines Corporation Method and system for multiple pass video coding
JP4251955B2 (ja) * 2003-10-15 2009-04-08 パナソニック株式会社 オーディオデータのネットワーク装置、アンプ装置
US20050201471A1 (en) * 2004-02-13 2005-09-15 Nokia Corporation Picture decoding method
US7296205B2 (en) * 2004-02-18 2007-11-13 Nokia Corporation Data repair
US9124907B2 (en) * 2004-10-04 2015-09-01 Nokia Technologies Oy Picture buffering method
US8934533B2 (en) * 2004-11-12 2015-01-13 Pelco, Inc. Method and apparatus for controlling a video surveillance display
US20090064242A1 (en) * 2004-12-23 2009-03-05 Bitband Technologies Ltd. Fast channel switching for digital tv
US8340098B2 (en) * 2005-12-07 2012-12-25 General Instrument Corporation Method and apparatus for delivering compressed video to subscriber terminals
US20090307732A1 (en) * 2006-03-07 2009-12-10 Noam Cohen Personalized Insertion of Advertisements in Streaming Media
US8358693B2 (en) 2006-07-14 2013-01-22 Microsoft Corporation Encoding visual data with computation scheduling and allocation
US8311102B2 (en) * 2006-07-26 2012-11-13 Microsoft Corporation Bitstream switching in multiple bit-rate video streaming environments
US8340193B2 (en) * 2006-08-04 2012-12-25 Microsoft Corporation Wyner-Ziv and wavelet video coding
US7388521B2 (en) * 2006-10-02 2008-06-17 Microsoft Corporation Request bits estimation for a Wyner-Ziv codec
US8340192B2 (en) * 2007-05-25 2012-12-25 Microsoft Corporation Wyner-Ziv coding with multiple side information
US8700792B2 (en) * 2008-01-31 2014-04-15 General Instrument Corporation Method and apparatus for expediting delivery of programming content over a broadband network
US8752092B2 (en) * 2008-06-27 2014-06-10 General Instrument Corporation Method and apparatus for providing low resolution images in a broadcast system
US9083976B2 (en) * 2008-09-05 2015-07-14 Freescale Semiconductor, Inc. Processing a video stream in real time based on binary information of the video stream
JP5455547B2 (ja) * 2009-10-19 2014-03-26 キヤノン株式会社 画像処理装置及び画像処理方法
US9357244B2 (en) * 2010-03-11 2016-05-31 Arris Enterprises, Inc. Method and system for inhibiting audio-video synchronization delay
US9384410B2 (en) * 2012-05-21 2016-07-05 Nvidia Corporation Method and system for image compression while encoding at least one extra bit
US9819969B2 (en) 2013-11-26 2017-11-14 Nvidia Corporation Generalization of methods and systems for image compression while encoding at least one extra bit
US10015496B2 (en) * 2015-03-25 2018-07-03 Samsung Display Co., Ltd. Method and apparatus for temporal reference coding with light coding systems for display systems
WO2018200822A1 (en) * 2017-04-26 2018-11-01 Dts, Inc. Bit rate control over groups of frames
US11165847B2 (en) 2018-10-23 2021-11-02 Tencent America LLC Techniques for multiple conformance points in media coding
EP4274225A1 (en) * 2022-05-04 2023-11-08 MK Systems USA Inc. Systems and methods for multiple channel video encoding in a shared resource environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0238684B2 (ja) * 1985-09-18 1990-08-31 Kyushu Emu Ai Shii Kk Kenhoroyonunojinojidoorimagehohotosonosochi
JPH06111113A (ja) * 1992-09-29 1994-04-22 Sanyo Electric Co Ltd 自動販売機の筐体

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4302775A (en) * 1978-12-15 1981-11-24 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
US5231484A (en) * 1991-11-08 1993-07-27 International Business Machines Corporation Motion video compression system with adaptive bit allocation and quantization
US5510840A (en) * 1991-12-27 1996-04-23 Sony Corporation Methods and devices for encoding and decoding frame signals and recording medium therefor
US5734432A (en) * 1994-07-15 1998-03-31 Lucent Technologies, Inc. Method of incorporating a variable rate auxiliary data stream with a variable rate primary data stream
US5543853A (en) * 1995-01-19 1996-08-06 At&T Corp. Encoder/decoder buffer control for variable bit-rate channel
US5623424A (en) * 1995-05-08 1997-04-22 Kabushiki Kaisha Toshiba Rate-controlled digital video editing method and system which controls bit allocation of a video encoder by varying quantization levels

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0238684B2 (ja) * 1985-09-18 1990-08-31 Kyushu Emu Ai Shii Kk Kenhoroyonunojinojidoorimagehohotosonosochi
JPH06111113A (ja) * 1992-09-29 1994-04-22 Sanyo Electric Co Ltd 自動販売機の筐体

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1204278A3 (en) * 2000-11-06 2003-12-10 Matsushita Electric Industrial Co., Ltd. Method for coding image signals and apparatus thereof
US7126988B2 (en) 2000-11-06 2006-10-24 Matsushita Electric Industrial Co., Ltd. Method for coding image signals and apparatus thereof using an average target coding rate
JPWO2021182512A1 (ja) * 2020-03-11 2021-09-16
WO2021182512A1 (ja) * 2020-03-11 2021-09-16 日本電気株式会社 通信制御システム及び通信制御方法
US12034920B2 (en) 2020-03-11 2024-07-09 Nec Corporation Communication control system and communication control method
US12041245B2 (en) 2020-03-11 2024-07-16 Nec Corporation Communication control system and communication control method
US12166978B2 (en) 2020-06-09 2024-12-10 Nec Corporation Communication control system and communication control method

Also Published As

Publication number Publication date
US5719632A (en) 1998-02-17
KR100197385B1 (ko) 1999-06-15
GB2309611B (en) 2000-06-14
GB2309611A (en) 1997-07-30
KR970060716A (ko) 1997-08-12
GB9700307D0 (en) 1997-02-26

Similar Documents

Publication Publication Date Title
JPH09214962A (ja) バッファ空/充填ルックアヘッド・ビット・アロケータを有する動画ビデオ圧縮システム
JP3533282B2 (ja) 複数のプロセッサを使用したビデオ圧縮
US6563954B2 (en) Method for computational graceful degradation in an audiovisual compression system
KR970003789B1 (ko) 비디오 부호기의 전송율을 제어하기 위한 비트 할당 방법
US6181742B1 (en) Single pass target allocation for video encoding
US6522693B1 (en) System and method for reencoding segments of buffer constrained video streams
KR100343352B1 (ko) 일정 비트 레이트 혹은 가변 비트 레이트를 위한 디지털 동영상 시퀀스 2-패스 부호화 방법
KR100253931B1 (ko) 디지탈 영상 시퀀스의 디코딩 방법 및 장치
US6347117B1 (en) Apparatus and method for encoding images and medium in which image encoding program has been recorded
KR100246168B1 (ko) 격행비디오를 위한 계층적 움직임 추정
EP0998151A2 (en) Joint data rate control for stereoscopic video signal coding
EP1032212A2 (en) Transcoder, transcoding system, and recording medium
KR100314329B1 (ko) 일정비트율엔코더를이용하는멀티플렉서
US6574368B1 (en) Image processing method, image processing apparatus and data storage media
KR100950525B1 (ko) 트랜스코딩 장치 및 방법, 이에 사용되는 타겟비트할당 및픽처 복잡도 예측 장치 및 방법
JP3818819B2 (ja) 画像符号化方式変換装置、画像符号化方式変換方法および記録媒体
US20030174771A1 (en) Method, apparatus, and program for variable bit rate encoding
JP3583432B2 (ja) 不足する資源を動的に割り当てるシステム
JP3767007B2 (ja) 符号化装置および符号化方法
JPH11234671A (ja) 信号処理装置
CN1067203C (zh) 利用恒定位率编码器的多路复用系统
JPH09149420A (ja) 動画像圧縮方法および装置
CN1078782C (zh) 异步控制信号发生装置
JP2000358243A (ja) 画像処理方法,画像処理装置,及びデータ記憶媒体