JP5606591B2 - ビデオ圧縮方法 - Google Patents
ビデオ圧縮方法 Download PDFInfo
- Publication number
- JP5606591B2 JP5606591B2 JP2013117983A JP2013117983A JP5606591B2 JP 5606591 B2 JP5606591 B2 JP 5606591B2 JP 2013117983 A JP2013117983 A JP 2013117983A JP 2013117983 A JP2013117983 A JP 2013117983A JP 5606591 B2 JP5606591 B2 JP 5606591B2
- Authority
- JP
- Japan
- Prior art keywords
- frame
- alternative reference
- data
- reference frame
- frames
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
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/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/117—Filters, e.g. for pre-processing or post-processing
-
- 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
-
- 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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence 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/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/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/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- 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/156—Availability of hardware or computational resources, e.g. encoding based on power-saving 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/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/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- 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/523—Motion estimation or motion compensation with sub-pixel accuracy
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
本出願は、2003年5月12日に出願された米国仮特許出願第60/469,187
号及び2003年11月14日に出願された米国特許出願第10/713,807号の優
先権を主張する。
タの符号化、復号、圧縮、及び送信を行う方法及びシステムに関する。
時間で無限の情報量を送信することも受信することもできない。送信中の情報の量及び品
質を最大にするために、場合により、情報は、圧縮又は符号化されて送信され、受信時に
伸張又は復号される。
は、膨大でない限り、容易且つ高速に送信される。しかしながら、ビデオデータは、色の
側面、明度の側面、及び多くの場合ステレオ音響情報の側面を含む可能性がある。短いビ
デオクリップであっても、定義するのに大量のデータが必要とされる。このようなデータ
の送信及び符号化は、できるだけ効率的でなければならない。すなわち、送信するのに必
要な情報をできるだけ少なくしなければならない。
信号は、より小さな数字の集合にスクイーズ又は圧縮される。これらの数字は、したがっ
て、ハードドライブを占める空間が小さくなるか、又は、ネットワーク上で送信に要する
時間が少なくなる。これらの数字が再び使用される前に、伸張アルゴリズムが適用されて
、その数字列は、その元の(又は少なくとも類似の)形に展開される。
に、ビデオ圧縮は、信号が、デジタル化されたビデオとして発生していることが知られて
いるという事実を利用する。ビデオ及びオーディオの大幅な圧縮は非可逆アルゴリズムを
考えられる。その理由は、非可逆アルゴリズムが元の情報の或る部分を廃棄するか又は失
い、再現された数字列は元の数字列とは正確には一致しないからである。我々がビデオ及
びオーディオを鑑賞する精度は、デジタル化プロセスの解像度と比較して完全でないこと
から、これは許容することができる。ビデオ信号は、僅かに歪む場合があるが、それにも
かかわらず認識することが可能である。圧縮アルゴリズムが、最小の歪み又は損失で元の
信号を忠実に再現できる程度は、アルゴリズムの成功の尺度である。
っともな理由が多数ある。1つの最優先の問題は、データ送信コストである。インターネ
ットは、21世紀の事実上のデータ搬送プラットフォームに成熟するにつれて、ビデオテ
ープ、フィルム、放送等のアナログメディアは、インターネット技術及びインターネット
関連技術の上に構築されたデジタルメディアインフラストラクチャに取って代わられるこ
とになろう。このデジタルインフラストラクチャにより、必要に応じて、地球上のどの2
つのコンピューティングマシン間でもデータを転送することが可能になる。しかしながら
、このデータを送信できる速度は多数の要因に依存する。極端な場合、百年以上も前に敷
設され、アナログ音声通信を対象とした銅線が、モデム技術(モデム(modem)は、モジ
ュレーション(変調(Modulation))/ディモジュレーション(復調(DEModulation))
の略語である)と共に使用されて、毎秒9600ビット程度の低速でデータが送信される
。同様の速度は、携帯電話等の無線ネットワーク上で音声を運ぶのにも使用される。最近
、ケーブルモデム技術、DSL技術、及び衛星技術が、6桁のデータレート(100,0
00ビット/秒から100万ビット/秒)をホームユーザにもたらしている。ハイエンド
アプリケーションの場合、光ファイバによって、データレートをギガビットの範囲(毎秒
数十億ビット)及びそれを超える範囲にすることが可能である。
の送信には、お金がかかる。現在のところ、1メガバイト(800万ビット)をインター
ネット上で送信するコストは、通例、小さなボリュームの5セントあたりから、安い場合
は極端に大きなボリュームの1セント程度のコストがかかる(この価格は、受信端でのコ
ストを含んでいない)。したがって、或る場所から別の場所へ1メガバイトのデータを搬
送するコストは、常に、1ペニーよりも高い。
ューヨーク州クリフトンパークのOn2 Technologies(当初はDuck Corporationとして知ら
れていた)は、既にVP3やVP5等のコーデックを製造してきており、Microsoft Corp
orationは、MPEG等の符号を作成してきた。既存のビデオコーデックの特徴のいくつ
かには、動きベクトルの離散コサイン変換圧縮、エントロピー符号化、及び差分符号化が
含まれる。また、従来のコーデックは、基準フレームを利用し、データパケットが喪失又
は破損した場合に、基準フレームを参照することによってそのデータを取り出すことがで
きるようにしている。これらの特徴及びこれらの特徴に伴う問題のすべてについて、以下
でより詳細に解説することにする。
テムでは、8×8のピクセルブロック又は予測エラー信号データが、1組の64個の周波
数係数(1つのDC値及び63個のAC値)に変換される。これら64個の周波数係数は
、その後、量子化されて1組のトークンに変換される。
になる可能性は小さくなる(すなわち、ゼロになる可能性が高くなる)。その結果、トー
クン化の前に、それら係数は、多くの場合、最も低い周波数係数(DC値)から開始して
最も高周波のAC係数で終了する昇順に配列される。この走査順序は、時に、「ジグザグ
順序」と呼ばれることがあり、その始点に非ゼロ値を集め、終点に向かうにつれてゼロを
集める傾向があり、そうすることによって、より効率的な圧縮を容易にする。
、インターレースされたビデオ素材を符号化する場合、一定の高周波係数は、はるかに顕
著である。このことは従来技術に反映され、この従来技術では、インターレースされたビ
デオを符号化する時に代替的な走査順序を指令するコーデックが使用される例(たとえば
、MPEG−2)が存在する。
タスクを並列に実行するのに提供できるあらゆる設備が十分に利用されることを確かめる
こと、及び、復号プロセスの個々の部分がボトルネックとなる範囲を制限することが重要
である。
えば、エントロピー符号化されたトークンを含むものとして説明することができる。この
エントロピー符号化されたトークンは、プリディクタ(predictor)トークン又はPトー
クン、及び、予測エラートークン又はEトークンの2つの主要なカテゴリーに分割するこ
とができる。Pトークンは、画像のブロック又は領域を符号化するのに使用される方法又
はモードを記述するトークンであり、或るフレームと別のフレームとの間の動きを記述す
るトークンである。Eトークンは、不完全な予測の結果生じたあらゆる残差を符号化する
のに使用される。
表現が、ビットストリームにおけるそのトークンの周波数、又は、そのトークンが特定の
位置に現れる尤度に従って最適化されるプロセスである。たとえば、非常に頻繁に現れる
トークンは、まれにしか現れないトークンよりも少ないビット数を使用して表される。
。ハフマン符号化では、各トークンは、可変長のビットパターン(又は符号)によって表
される。算術符号化は、計算がより複雑な技法ではあるが、各トークンについて多数のビ
ット全体を使用する制約が除去されている。算術符号化器を使用すると、1ビットの1/
2の平均コストで非常に一般的なトークンを符号化することが完全に可能である。
セッサユニット、及び、より多目的のメインプロセッサを有する。その結果、並列化のた
めに、ビットストリームの符号化又は復号のプロセスは、多くの場合、エントロピーに関
連したタスクと、エントロピーに関連しないタスクとに分割される。しかしながら、所与
のビットクリップの場合、データレートが増加するにつれて、符号化/復号するトークン
数が急激に上昇し、エントロピー符号化がボトルネックになる場合がある。
トルネックを取り除くことは非常に困難である。特に、復号側では、通常は、トークンが
符号化された順序で1度に1つずつトークンを復号しなければならない。また、フレーム
レベル以外の方法又はエントロピー符号化(たとえば、ハフマン符号化及び算術符号化)
を混在させることもきわめて困難である。
ベクトルの(x,y)成分を符号化する。すなわち、各ベクトルは、前のベクトルを基準
にして符号化される。たとえば、2つのベクトル(7,3)及び(8,4)を考える。こ
の場合、第2のベクトルは(1,1)、すなわち(7+1,3+1)として符号化される
ことになる。
動きと類似した動きを示す場合によく機能する。これは、多くの場合、たとえばパンする
時に当てはまることを示すことができる。しかしながら、動きフィールドが不規則である
場合、又は、異なる動き特性を有する背景領域と前景領域との間での遷移が頻繁である場
合に、この方式はあまりよく機能しない。
である。動き予測は、画像の物体又は領域の動きが、1つ又は複数のフレームにわたって
モデル化され、1つ又は複数の「動きベクトル」が、この動きを表すためのビットストリ
ームで送信されるプロセスである。ほとんどの場合、画像内の動きを完全にモデル化する
ことはできず、そこで、動き情報に加えて残差信号を符号化することが必要である。
号化されたフレームの領域を指し示す。残差信号は、各ピクセルの予測値を、現在のフレ
ームの実際の値から差し引くことによって得られる。
き推定といったサブピクセル精度に対して動き予測のサポートを提供することによりこの
プロセスを拡張している。端数ピクセルデータ点を作成するには、実際の(すなわち、フ
ルピクセルアラインされた(full pixel aligned))データ点に適用される或る形態の補
間関数又は補間フィルタを使用することが必要である。
を使用していた。この例では、A、B、C、及びDが、フルピクセルアラインされたデー
タ点であり、x、y、及びzが、1/2ピクセルアラインされた点である。点xは、X方
向に1/2ピクセルアラインされ、方程式:
x=(A+B/2) (1)
を使用して計算することができる。
点yは、Y方向に1/2ピクセルアラインされ、方程式:
y=(A+C/2) (2)
を使用して計算することができる。
点zは、X及びYの双方で1/2ピクセルアラインされ、方程式:
z=(A+B+C+D/2) (3)
を使用して計算することができる。
間フィルタの使用に向かう傾向がある。図2に示す例では、xは、2つのフルピクセルア
ラインされた点BとCとの間の中点にある1/2ピクセル点である。双3次フィルタに対
して整数近似を使用すると、xは、方程式:
x=(−A+9B+9C−D)/16
を使用して計算することができる。
向があるが、いくつかのフレームにわたってそれらフィルタが繰り返し適用されると、場
合によっては、誤ったテキスチャや誤った輪郭等の不快な人工物となる可能性がある。
いので、信頼性のないデータリンク又は問題の多いデータリンク上で圧縮ビデオデータを
送信する場合、データが喪失又は破損したときの回復のためのメカニズムが存在すること
は重要である。
存在し、これらは、通常、エラーの検出、及び、再送又は一定のタイプのエラーの訂正を
可能にする追加データビットの使用のいずれかに依拠する。多くの状況では、これら既存
の技法は十分である。しかし、制限された帯域幅のリンク上でビデオ会議を行う場合、上
述した手法のいずれも理想的ではない。喪失したデータパケットの再送は、端末間の遅延
の増加を引き起こす可能性があるので実用的でない場合がある一方、誤り訂正ビット又は
誤り訂正パケットの使用は、帯域幅がすでに厳しく制限されている状況では受け入れられ
ない場合がある。
することである。符号化器は、その後、回復フレームを復号器へ送信することができる。
この手法は、リンク上のエラーレートが非常に高い場合、たとえば、10フレーム〜20
フレームごとに2つ以上のエラーがある場合に、適切でないおそれがあることに留意され
たい。
tra-only-frame))である。これは、前のフレーム又は前のフレームのデータに何ら依存
関係を有しないフレームである。キーフレームに関連した問題は、それらキーフレームが
、通例、比較的大きいということである。
とである。
法及びコーデックを提供することである。
ー符号化を実行するビデオ圧縮方法及びコーデックを提供することである。
を提供することである。
法及びコーデックを提供することである。
デオ圧縮方法及びコーデックを提供することである。
を有する少なくとも1つのブロックを有する少なくとも1つのフレームを有するビデオデ
ータを圧縮する方法である。本発明の方法は、以下のステップの少なくとも1つを含む。
I)各ブロックのピクセルを係数に変換して、係数の最適な送信順序を作成するステップ
、II)データのビットストリームを区画して各パーティションを独立に符号化すること
により、圧縮されたビデオデータを処理する速度を最適化するステップ、III)所与の
各ブロックに関連した少なくとも1つのメトリックに応じて所与の各複数のピクセルの補
間方法を選択することにより、端数ピクセル動きを予測するステップ、及び、IV)現在
のフレームの直前のフレームよりも前のフレームを唯一の基準フレームとして使用して現
在のフレームのエラー回復を高度化するステップであって、それによって、データ送信中
の品質損失を小さくする、現在のフレームのエラー回復を高度化するステップ。
係数位置及び値を有する係数に変換し、各係数位置に関連した位置の値を求める。次に、
係数の最適な送信順序が、各係数位置の位置の値に基づいて作成され、係数は、そのよう
にして求められた順序で送信される。好ましくは、係数の送信順序は、ビデオデータの各
フレームについて動的に再配列される。変換ステップは、好ましくは、ピクセルを離散コ
サイン変換係数に変換する。係数の送信順序は、係数と共に送信してもよい。好ましくは
、各ブロックは、同じ個数の係数及び係数位置を有し、それぞれの対応する各係数位置は
、ブロックごとに同じ各情報を運ぶ。
のフレームへ係数順序が変更したものに制限してもよい。これに代えて又はこれに加えて
、送信順序は係数の帯域に統合してもよい。各帯域は、上記で求められた数のランクによ
って編成された複数の係数を有する。この場合、帯域情報のみを係数と共に送信してもよ
い。好ましくは、係数が或るフレームから次のフレームにおいて帯域を変更した場合に、
帯域情報のみが送信される。別の代替的なものとして、すべての帯域情報を常に送信して
もよい。
方法は、常に完全に自己符号化され、前のフレームからの情報も前のフレームに関する情
報も必要としないこのようなキーフレームを提供してもよい。このような場合、符号化器
は、所与のフレームがキーフレームであるかどうかを判断する。所与のフレームがキーフ
レームであると判断された場合、そのキーフレームの係数の送信順序全体が送信される。
所与のフレームがキーフレームでないと判断された場合、前のフレームからこの所与のフ
レームにおいて係数の送信順序が変化したもののみが送信される。
立に符号化することにより、圧縮ビデオデータの処理速度を最適化することを検討する。
具体的には、本発明は、ビデオデータを少なくとも2つのデータパーティションに分割し
、各データパーティションについて最適なエントロピー符号化方法を選択する。したがっ
て、選択されたエントロピー符号化方法は、各データパーティションにそれぞれ適用され
る。1つの実施の形態では、ビデオデータは、プリディクタトークンデータパーティショ
ン及びエラートークンデータパーティションに分割される。好ましくは、各データパーテ
ィションは、ハフマン符号化及び算術符号化等の異なるエントロピー符号化方法を受ける
。異なるデータパーティションのさまざまな復号プロセスは、非同期且つ/又は独立に実
行してもよい。これは、ハードウェアに少なくとも2つのサブプロセッサを設けることに
よって行ってもよく、或るデータパーティションは或るサブプロセッサによって復号され
、別のデータパーティションは別のサブプロセッサによって復号される。所与のデータパ
ーティションにどのエントロピー符号化方法が使用されるかの判断は、その所与のデータ
パーティションのサイズに基づいてもよい。
パーティションは読み出されて、プリディクタブロックに変換される。エラートークンデ
ータパーティションも読み出されて、係数及びそこからエラーブロックに変換される。プ
リディクタブロック及びエラーブロックは合計されて、画像ブロックが形成される。上述
したように、少なくとも2つのサブプロセッサを設けることが好ましく、これらのステッ
プのいくつかは、或るサブプロセッサで実行され、ステップの残りは別のサブプロセッサ
で実行される。具体的には、エラートークンデータパーティションを読み出すステップ、
及び、エラートークンデータパーティションを係数に変換するステップは、好ましくは、
高速エントロピー最適化サブプロセッサによって実行され、他のステップは、好ましくは
、汎用サブプロセッサによって実行される。
ムの復号器の性能を最適化する。コードキャッシュに適合できる個数の、復号器のコード
の異なる関数がコードキャッシュに記憶される。このステップからのコードは、データキ
ャッシュに適合できる個数のブロックについて実行される。復号器のコードの次の1組の
異なる関数及び次に収集され、このプロセスは、ビットストリームのすべてが読み出され
、データブロックのそれぞれが生成されるまで繰り返される。
セッサへ割り当てることによってサブプロセッサの利用を最適化するものである。好まし
くは、ビットストリームからエラートークンを読み出して、それらエラートークンを係数
に変換する、復号器の部分は、高速エントロピー最適化サブプロセッサで実行される。ビ
ットストリームからプリディクタトークンを読み出して、これらのトークンからフィルタ
リングされたプリディクタブロックを構築する、復号器の部分は、メモリへの高速アクセ
スを有するサブプロセッサで実行される。上記ステップからの変換係数をエラー信号に変
換する、復号器の部分は、変換符号化器の最適化された実施態様を有するサブプロセッサ
で実行され、プリディクタブロックをエラー信号に加える、復号器の部分は、動き補償に
最適化されたサブプロセッサで実行される。
ィションはフレームの第1のエリアを表し、第2のデータパーティションはフレームの第
2のエリアを表す(たとえば、上半分及び下半分、又は、左半分及び右半分)。或いは、
ビデオデータは、3つのデータパーティションに分割してもよい。各データパーティショ
ンは、それぞれ、フレームのレベル情報、彩度情報、及び色相情報を表す。別の変形では
、これら3つのデータパーティションは、それぞれ、フレームのシアン情報、マゼンタ情
報、及びイエロー情報を表すことができる。
に応じて各所与の複数のピクセルの補間方法を選択することにより、端数ピクセル動きを
予測する態様を含む。具体的には、符号化する所与の複数のピクセルに関連した少なくと
も1つのメトリックの値が求められ、その所与の複数のピクセルを符号化する補間方法が
、求められた少なくとも1つのメトリックの値に応じて選択される。このようにして選択
された補間方法は、符号化する所与の複数のピクセルに適用される。このプロセスは、次
の各複数のピクセルについて繰り返されるステップである。少なくとも1つのメトリック
は、動きベクトル長及び複雑度因子の少なくとも1つとしてもよい。補間方法には、双1
次補間、双3次補間、2次補間、及びBスプライン補間が含まれ得る。所与の複数のピク
セルは、フレーム全体としてもよいし、フレームのサブ部分としてもよい。所与の複数の
ピクセルに関連した動きベクトル長が、所定の長さ値よりも小さいと判断され、且つ、所
与の複数のピクセルに関連した複雑度因子が、所定の複雑度値よりも大きいと判断された
場合、双3次補間が選択される。所定の長さ値及び所定の複雑度値は、好ましくは、所与
の個数の複数のピクセルについて1回設定され、且つ、フレームごとに1回設定される。
る。
C=(nΣxi 2−(Σxi)2)/n2 (4
)
データ送信中の品質損失を少なくするための唯一の参照フレームとして使用して、現在の
フレームのエラー回復を高度化することを含む。具体的には、本発明は、喪失又は破損し
たパケットを引き起こす、ライン上の送信に関連した品質損失を少なくするために、最後
のフレームよりも前に符号化されたフレームを、所与のフレームの唯一の基準フレームと
して使用することを含む。このステップは、周期的(Fフレームごと)及び任意(或る他
の判定基準に基づいて)の少なくとも1つに制限される。
当事者は、ビデオデータのフレームを圧縮し、パケットの喪失又は破損が検出可能なよう
にマーキングされたパケットで、圧縮されたビデオデータを他の当事者へ送信する。パケ
ットが喪失又は破損したことをいずれかの当事者が検出した場合に、検出した当事者は、
送信した当事者に信号で伝え、それによって、残りの当事者のすべてがすでに受信に成功
して復号している基準フレームを使用して符号化された更新フレームが送信される。
レームの一定の間隔Fを符号化器が選択して、復号器へ送信することができる。F番目の
フレームごとにフレームが、前の符号化されたF番目のフレームのみを基準に使用して符
号化される。F番目でないあらゆるフレームは、その前のフレームを基準として使用して
符号化される。ビデオの各フレームは、喪失及び破損が検出可能なように、復号器へ送信
される。これらのステップのすべては、好ましくは、符号化器で行われる。復号器側では
、符号化されたビデオデータが符号化器から受信され、復号器によって復号される。パケ
ットが喪失し、喪失したパケットがF番目でないフレームに関連したものである場合、復
号器は、次のF番目のフレームが喪失したパケットを回復するのを待つ。
の符号化されたフレームから取得された統計値のメトリックによって求められた周囲の品
質よりも高い品質で、周期的及び任意の少なくとも1つで符号化し、符号化された現在の
フレームを、2次的な基準フレームとしてのその後のフレームによる使用のために記憶す
る。
DCT(離散コサイン変換)に基づくビデオ圧縮システムでは、8×8のピクセルブロ
ック又は予測エラー信号データが、1組の64個の周波数係数(1つのDC値及び63個
のAC値)に変換される。これら64個の周波数係数は、その後、量子化されて1組のト
ークンに変換される。
になる可能性は小さくなる。その結果、トークン化の前に、それら係数は、多くの場合、
最も低い周波数係数(DC値)から開始して最も高周波のAC係数で終了する昇順に配列
される。この走査順序は、時に、「ジグザグ順序」と呼ばれることがあり、その始点に非
ゼロ値を集め、終点に向かうにつれてゼロ値を集める傾向があり、そうすることによって
、より効率的な圧縮を容易にする。
、インターレースされたビデオ素材を符号化する時、一定の高周波係数は、はるかに顕著
である。このことは従来技術に反映され、この従来技術では、インターレースされたビデ
オを符号化する時に代替的な走査順序を指令するコーデックが使用される例(たとえば、
MPEG−2)が存在する。
化される走査順序を、コーデックが最適にカスタマイズできる方法である。
のそれぞれについてゼロ値対非ゼロ値の分布の記録を保持する。この記録は、非ゼロにな
る可能性が高い係数がリストに先に現れるカスタムな走査順序を作成するのに使用される
。
して照合することができ、これを使用して走査順序をさらに最適化することができる。
するオーバーヘッドは、場合によっては、改善された係数符号化効率から得られた利益を
打ち消すおそれがある。したがって、更新がネットに利益を提供するかどうかを判断する
のにコスト利益分析が必要となる場合がある。
したがって、係数の個数)、及び新たな走査順序が標準的な走査順序又は前に符号化され
た走査順序のいずれかから逸脱する程度である。
1つ1つにつき新たな位置)を符号化するには、384ビット(それぞれ64個の係数×
6ビット)が必要となる。このコストは、符号化されるブロック数(したがって、係数の
個数)が非常に大きくない限り、又は、最適な走査順序がデフォルト走査順序(これは、
標準的な走査順序又は前に符号化された走査順序のいずれかである)と大幅に異ならない
限り、法外なものとなる可能性がある。この記述の背後にある理論的根拠は、デフォルト
走査順序がカスタム走査順序と類似している場合、各ブロックの符号化に確保される平均
ビット数が小さくなる可能性があり、したがって、走査順序を更新するオーバーヘッドを
正当化するには多数のブロックを符号化しなければならないということである。逆に、デ
フォルト走査順序がカスタム走査順序と異なる場合、ブロックあたりの平均節減は高くな
る可能性がある。
。たとえば、各係数について、その係数が走査順序において自身の位置を変更したかどう
かを示すビットを符号化し、次いで、適切な場合は、その新しい位置を示すビットを符号
化する。これは、通常、更新コストが低くなるが、ここでの最悪の場合のシナリオは、新
たな走査順序がすべての係数について異なる場合である。この場合、更新コストは448
ビット(64×7)となる。
似している場合に更新コストが最小となり(したがって、ブロックごとの可能性のあるコ
スト削減は、その最小のものとなる)、それらの走査順序が最も異なる場合に最高となる
ことである。
さらに改善することができる。たとえば、2つの係数が走査順序において互いに隣接して
おり、非ゼロ値の尤度がその双方でほとんど同一である場合を考える。それら2つの係数
の一方又は他方の非ゼロ値の個数に小さな変化があると、それら2つの係数は、カスタム
走査順序において場所を交換する可能性がある。この変化を符号化することは、(上記更
新モデルを仮定した場合に)14ビットのコストで双方の係数の走査位置を更新すること
を意味する。しかしながら、達成される節減はごく僅かとなる場合がある。
数は、通常、非常に低く、きわめて小さな変化であっても、走査順序における係数の位置
は大幅に変更される可能性がある。
とは確かに実現可能であるが、該当する他の要因がある。前述したように、これらの要因
の1つは、非ゼロ値の平均的な大きさである。もう1つは、場合により、1つ又は複数の
係数の値の間に正の相関が存在する場合があることである。たとえば、低い順序の「完全
に水平な」AC係数と高い順序の「完全に水平な」係数との間である。このような場合、
非ゼロ値の広がりに大幅な相違がない限り、非ゼロ値はその元の順序(最も低い周波数か
ら最も高い周波数)に維持することが好ましい場合がある。
ると同時に、走査順序の更新コストをさらに削減する。
・DC係数は常に最初(位置0)に符号化される。
・AC係数を、各係数の非ゼロである値の比率に基づいて降順に並べる。
・順序リストを16個の可変サイズの帯域に分割する(表1参照)。
・各帯域内において、ジグザグ走査順序に再配列する。
経験的な観測に基づいており、必ずしも最適ではないことに留意されたい。
に非ゼロである値の比率に基づく走査順序を使用して得られた結果と通例は同程度の良好
な結果、又は、多くの場合それよりも良好な結果を与えることを示している。
は、値が或る帯域から別の帯域へ移動される場合にしか、その値を更新する必要がないか
らである。さらに、帯域内の変更の符号化には4ビットしか必要とされない。
るかに頻繁に帯域を変更するという観察結果に基づいている。たとえば、高い順序のAC
係数は、低い順序の係数よりも帯域を変更する頻度は低いという傾向を有する。
ムにおいて更新されるかどうかを示すのに1ビットを使用することは無駄である。算術符
号化技法を使用して、経験的に求められた更新確率を各係数に割り当てることにより、係
数あたり実質的に1ビット未満の平均更新コストを得ることが可能である。
る詳細を与えるものである。
// 収集されたゼロ/非ゼロ周波数データを使用して新たな「好ましい」走査順序を
// 実現する
void CalculateScanOrder( CP_INSTANCE *cpi)
{
UINT32 i, j, k;
UINT32 Sum;
UINT32 tmp[2];
UINT32 NzValue[BLOCK_SIZE][2];
UINT32 GroupStartPoint, GroupEndPoint;
// 各係数について、非ゼロであった値の比率を0〜255からの
// 拡大縮小された数字として計算する
for ( i=1; i<BLOCK_SIZE; i++ )
{
Sum = cpi->FrameNzCount[i][0] + cpi->FrameNzCount[i][1];
if ( Sum )
NzValue[i][0] = (cpi->FrameNzCount[i][1]*255)/Sum;
else
NzValue[i][0] = 0;
NzValue[i][1] = i;
}
// 降順にソートする
for ( i=1; i<BLOCK_SIZE-1; i++ )
{
for ( j=i+1; j>1; j--)
{
if ( NzValue[j][0] > NzValue[j-1][0] )
{
// それらを交換する
tmp[0] = NzValue[j-1][0];
tmp[1] = NzValue[j-1][1];
NzValue[j-1][0] = NzValue[j][0];
NzValue[j-1][1] = NzValue[j][1];
NzValue[j][0] = tmp[0];
NzValue[j][1] = tmp[1];
}
}
}
// 帯域に分割し、次いで、各帯域内において、ジグザグ走査位置に基づいて
// 昇順に再ソートする
GroupEndPoint = 0;
for ( k=0; k<SCAN_ORDER_BANDS; k++ )
{
GroupStartPoint = GroupEndPoint + 1;
GroupEndPoint = EndPointLookup[k];
for ( i=GroupStartPoint; i<GroupEndPoint; i++ )
{
for ( j=i+1; j>GroupStartPoint; j-- )
{
if ( NzValue[j][1] < NzValue[j-1][1] )
{
// それらを交換する
tmp[0] = NzValue[j-1][0];
tmp[1] = NzValue[j-1][1];
NzValue[j-1][0] = NzValue[j][0];
NzValue[j-1][1] = NzValue[j][1];
NzValue[j][0] = tmp[0];
NzValue[j][1] = tmp[1];
}
}
}
// 各係数インデックス(coef index)について、その帯域番号に印を付ける
for ( i=GroupStartPoint; i<=GroupEndPoint; i++ )
{
// 各係数の新たな走査帯域番号に留意する
// NzValue[i][1]は従来のジグザグ順序の係数の位置であり、
// iは新たな走査順序の位置であり、kは帯域番号である。
cpi->NewScanOrderBands[NzValue[i][1]] = k;
}
}
}
// この構造体は、(従来のジグザグ順序の)dct係数のそれぞれについての
// (1〜255の範囲に拡大縮小された)走査順序更新確率を与える。
// これらの値は、関数「nDecodeBool()」に渡され、結果が0(FALSE)である
// 確率を示す。
//
const UINT8 ScanBandUpdateProbs[BLOCK_SIZE] =
{
255, 132, 132, 159, 153, 151, 161, 170,
164, 162, 136, 110, 103, 114, 129, 118,
124, 125, 132, 136, 114, 110, 142, 135,
134, 123, 143, 126, 153, 183, 166, 161,
171, 180, 179, 164, 203, 218, 225, 217,
215, 206, 203, 217, 229, 241, 248, 243,
253, 255, 253, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255
};
// 走査順序に対する更新がこのフレームに利用可能である場合、この更新を読み出す。
void UpdateScanOrder( PB_INSTANCE *pbi )
{
// 走査順序が更新されているのはこのフレームか?
if ( nDecodeBool( 128 ))
{
// 更新された走査帯域で読み出す
for ( i = 1; i < BLOCK_SIZE; i++ )
{
// この係数の帯域は更新されたか?
if ( nDecodeBool( ScanBandUpdateProbs[i] ))
{
pbi->ScanBands[i] = VP6_bitread( SCAN_BAND_UPDATE_BITS );
}
}
// 新たな走査順序を走査帯域データから構築する
BuildScanOrder( pbi, pbi->ScanBands );
}
}
// 1組の走査帯域データからカスタム走査順序を構築する
void BuildScanOrder( PB_INSTANCE *pbi, UINT8 *ScanBands )
{
UINT32 i, j;
UINT32 ScanOrderIndex = 1;
// DCは一定である。
pbi->ModifiedScanOrder[0] = 0;
// 各帯域内において、(係数の元の「ジグザグ」操作順序位置の点で)
// 係数が昇順である走査順序を作成する
for ( i = 0; i < SCAN_ORDER_BANDS; i++ )
{
for ( j = 1; j < BLOCK_SIZE; j++ )
{
if ( ScanBands[j] == i )
{
pbi->ModifiedScanOrder[ScanOrderIndex] = j;
ScanOrderIndex++;
化の容易化、及び、混在モードエントロピー符号化の使用>
特定のハードウェアデバイス用にコーデックを最適化する場合、そのデバイスが複数の
タスクを並列に実行するのに提供できるあらゆる設備が十分に利用されることを確かめる
こと、及び、復号プロセスの個々の部分がボトルネックとなる範囲を制限することが重要
である。
えば、エントロピー符号化されたトークンを含むものとして説明することができる。この
エントロピー符号化されたトークンは、2つの主要なカテゴリーに分割することができる
。
プリディクタトークン(以下、Pトークンと呼ぶ)。たとえば、画像のブロック又は領
域を符号化するのに使用される方法又はモードを記述するトークンであり、或るフレーム
と別のフレームとの間の動きを記述するトークンである。
予測エラー信号トークン(以下、Eトークンと呼ぶ)。これらは、不完全な予測の結果
生じたあらゆる残差を符号化するのに使用される。
表現が、ビットストリームにおけるそのトークンの周波数、又は、そのトークンが特定の
位置に現れる尤度に従って最適化されるプロセスである。たとえば、非常に頻繁に現れる
トークンは、まれにしか現れないトークンよりも少ないビット数を使用して表される。
。ハフマン符号化では、各トークンは、可変長のビットパターン(又は符号)によって表
される。算術符号化は、計算がより複雑な技法ではあるが、各トークンについて多数のビ
ット全体を使用する制約が除去されている。算術符号化器を使用すると、たとえば、1ビ
ットの1/2の平均コストで非常に一般的なトークンを符号化することが完全に可能であ
る。
セッサユニット、及び、より多目的のメインプロセッサを有する。その結果、並列化のた
めに、ビットストリームの符号化又は復号のプロセスは、多くの場合、エントロピーに関
連したタスクと、エントロピーに関連しないタスクとに分割される。
化/復号するトークン数が急激に上昇し、エントロピー符号化がボトルネックになる場合
がある。
トルネックを取り除くことは非常に困難である。特に、復号側では、通常は、トークンが
符号化された順序で1度に1つずつトークンを復号しなければならない。また、フレーム
レベル以外の方法又はエントロピー符号化(たとえば、ハフマン符号化及び算術符号化)
を混在させることもきわめて困難である。
つ、ビットストリームに対する構造的な変更を通じて混在モードのエントロピー符号化の
使用を容易にするように設計された方法である。
のデータパーティションに分割される。これらのパーティションは、並列に書き込むこと
もできるし、並列に読み出すこともでき、同じエントロピー符号化メカニズムを使用する
ように制約されない。これによって、高いビットレートでエントロピーに関連したボトル
ネックを回避するように符号化プロセス又は復号プロセスを最適化することが容易になる
。
が使用できることによって、符号化器には、達成される圧縮量と計算複雑度との間のトレ
ードオフをより良く最適化する機能が与えられる。たとえば、フレームの計画されたサイ
ズが所与のしきい値を超えている場合、符号化器は、そのパーティションの1つ又は複数
において、複雑さが少なくなったハフマン方法を使用するように構成することができる。
ィションの使用をサポートする。これに加えて、小さなヘッダパーティションがある。
ークン及びEトークンの双方が、単一のデータパーティションで独自の算術符号化器を使
用して符号化される。本方法は、オーバーヘッドがわずかに低い(フレームあたり数ビッ
ト)が、柔軟性が少ない。
パーティション1
(ブロック1) P,P,E,E,E
(ブロック2) P,E,E
(ブロック3) P,E,E,E,E
込まれる。
パーティション1 パーティション2
(ブロック1) PP EEE
(ブロック2) P EE
(ブロック3) P EEEE
第1のパーティションのサイズは、データレートによって等しく変化する傾向はなく、
比較的小さい。したがって、このパーティションは、常に、算術符号化器を使用して符号
化される。第2のパーティションは、算術符号化器を使用して符号化することもできるし
、ハフマン符号化器を使用して符号化することもできる。
ルの信号で伝えることができる。好ましい実施態様では、この選択は、ターゲット復号器
のプラットフォームの性能及びフレームの計画されたビットサイズに依存する。具体的に
は、フレームサイズがしきい値数を超える場合において、復号器が実時間でフレームを復
号する問題を有するという危険性があるときは、ハフマン方法が使用される。
、キーフレーム(より大きくなる傾向があり、他のフレームに依存しない)は例外になり
得るとして、エントロピー符号化のコストは、通例、符号化器の全体の計算コストのより
小さな一部分となる。
る詳細を与えるものである。
// この関数は、算術符号化された1つのデータパーティション、算術符号化された
// 2つのデータパーティション、又は、算術符号化された1つのデータパーティ
// ション及び1つのハフマンデータパーティションのいずれかを使用して、
// フレーム用の符号化されたビデオデータを梱包する。
//
// 引数「cpi」は、主符号化器インスタンスデータ構造体へのポインタである。
void PackCodedVideo( CP_INSTANCE *cpi )
{
UINT32 PartitionTwoOffset;
BOOL_CODER *bc = &cpi->bc; // 算術符号化器インスタンスデータ構造体
BOOL_CODER *bc2 = &cpi->bc2; // 第2の算術符号化器インスタンス構造体
PB_INSTANCE *pbi = &cpi->pb; // 復号器インスタンスデータ構造体
// ヘッダパーティションに使用される生のバッファi/oを初期化する
InitAddRawBitsToBuffer( &cpi->RawBuffer, pbi->DataOutputPtr );
// 算術符号化器及び/又はハフマン符号化器を起動する
// 2つのデータパーティションを使用している場合…
if ( pbi->MultiStream || (pbi->VpProfile == SIMPLE_PROFILE))
{
// 第1の算術符号化器を起動する。生のヘッダバイトを考慮する。
VP6_StartEncode( bc, (pbi->DataOutputPtr + ((KeyFrame)? 4:3)));
// 第2の算術パーティション又はハフマンパーティションのいずれかを作成す
る
// これは、保持バッファ「cpi->OutputBuffer2」に最初に書き込まれる
if ( pbi->UseHuffman )
InitAddRawBitsToBuffer ( &pbi->HuffBuffer, cpi->OutputBuffer2 );
else
VP6_StartEncode( bc2, cpi->OutputBuffer2 );
}
// 算術符号化器を使用して符号化された単一のデータパーティションのみを使用し
ている
else
{
// 算術符号化器を起動する。生のヘッダバイトを考慮する。
VP6_StartEncode( bc, (pbi->DataOutputInPtr + ((KeyFrame)? 2:1))); }
…
…
// サイズを含むフレームヘッダ情報を書き出す。
WriteFrameHeader( … );
…
…
if ( pbi->UseHuffman )
PackHuffmanCoeffs( … );
else
PackArithmeticCoeffs( … );
// 第1のデータパーティションに使用された算術符号化器インスタンスを停止する
VP6_StopEncode( bc );
// データパーティションへのオフセットを算出し、それらオフセットを、
//生のヘッダパーティションにおけるこの情報用に予約された空間に書き込む
//
// 2つのデータパーティションを使用している場合…
if ( pbi->MultiStream || (pbi->VpProfile == SIMPLE_PROFILE))
{
// バッファの始点から第1のデータパーティションへのオフセット
PartitionTwoOffset = 4 + bc->pos;
// オフセットを第2のデータパーティションパーティションに書き込む。
AddRawBitsToBuffer( &cpi->RawBuffer, PartitionTwoOffset, 16 );
// 第2のデータパーティションにハフマンが使用された場合…
if ( pbi->UseHuffman )
{
// ハフマン符号化された出力パーティション用のバッファをフラッシュす
る
EndAddRawBitsToBuffer( &pbi->HuffBuffer );
…
// ハフマン符号化されたデータを保持バッファから出力バッファへ
// コピーする
memcpy( &cpi->RawBuffer.Buffer[ PartitionTwoOffset ],
pbi->HuffBuffer.Buffer, pbi->HuffBuffer.pos );
}
else
{
// 第2のデータパーティションによって使用された
// 算術符号化器インスタンスを停止する。
VP6_StopEncode( bc2 );
…
// 第2のパーティションによって使用された保持バッファの内容を
// 出力バッファへコピーする
memcpy( &pbi->DataOutputInPtr[ PartitionTwoOffset ],
bc2.buffer, bc2.pos);
}
}
// ヘッダに使用された生のビット符号化器を停止してフラッシュする
EndAddRawBitsToBuffer( &cpi->RawBuffer );
}
// この関数は、2つのデータパーティションを使用する場合に符号化ストラテジーを選
択するためにコールされる。
void SelectMultiStreamMethod( CP_INSTANCE *cpi)
{
// フレームにおけるトークンの分布から収集された情報を使用して
// フレームの見積もりコスト(シャノンエントロピー)を計算する。
// あらゆるモード情報及び動きベクトル情報を符号化するための、
// 前に計算されたコスト見積もりを算入する
EstimatedFrameCost = VP6_ShannonCost( cpi ) + ModeMvCost;
// 第2のデータパーティションにハフマン符号化を使用して下がるかどうかを判断
する
if ( EstimatedFrameCost > HuffmanCodingThereshold )
pbi->UseHuffman = TRUE;
else
pbi->UseHuffman = FALSE;
現代のほとんどのビデオコーデックにとって、動き予測は、圧縮プロセスの重要な部分
である。動き予測は、画像の物体又は領域の動きが、1つ又は複数のフレームにわたって
モデル化され、1つ又は複数の「動きベクトル」が、この動きを表すためのビットストリ
ームで送信されるプロセスである。ほとんどの場合、画像内の動きを完全にモデル化する
ことはできず、そこで、動き情報に加えて残差信号を符号化することが必要である。
号化されたフレームの領域を指し示す。残差信号は、各ピクセルの予測値を、現在のフレ
ームの実際の値から差し引くことによって得られる。
ことによりこのプロセスを拡張している。たとえば、1/2ピクセル又は1/4ピクセル
の動き推定である。端数ピクセルデータ点を作成するには、実際の(すなわち、フルピク
セルアラインされた)データ点に適用される或る形態の補間関数又は補間フィルタを使用
することが必要である。
A x B
y z
C D
、y、及びzが、1/2ピクセルアラインされた点である。点xは、X方向に1/2ピク
セルアラインされ、公式:x=(A+B/2)を使用して計算することができる。点yは
、Y方向に1/2ピクセルアラインされ、公式:y=(A+C/2)を使用して計算する
ことができる。点zは、X及びYの双方で1/2ピクセルアラインされ、公式:z=(A
+B+C+D/2)を使用して計算することができる。
間フィルタの使用に向かう傾向がある。以下の例では、xは、2つのフルピクセルアライ
ンされた点BとCとの間の中点にある1/2ピクセル点である。双3次フィルタに対して
整数近似を使用すると、xは、公式:x=(−A+9B+9C−D)/16を使用して計
算することができる。
A B x C D
向があるが、いくつかのフレームにわたってそれらフィルタが繰り返し適用されると、場
合によっては、誤ったテキスチャや誤った輪郭等の不快な人工物となる可能性がある。
、より最適な端数ピクセルプリディクタを作成でき、クリップレベル、フレームレベル、
ブロックレベル、又は個々のピクセルレベルでもこれらの方法から選択を行える方法であ
る。
、双3次フィルタリングのみを使用するのか、それとも選択を可能にするのかの選択をフ
レーム単位で行うことができる。
グビットによって行うことができるが、好ましい実施態様では、ビットストリームにおい
てすでに利用可能な文脈情報を使用し、且つ、フィルタリングされることになる、フルピ
クセルアラインされたデータ値に適用された複雑度メトリックによって、この選択は行わ
れる。
ロックの良好な予測を見つけることができなかった場合)では、双1次フィルタリングは
、多くの場合、最善の選択肢となる。具体的には、予測が不十分である場合、双3次フィ
ルタのシャープ化特性は、残差信号の高周波の内容の増加につながる場合があり、符号化
をより困難にする場合がある。
関の程度をより大きくしたりより小さくしたりする文脈的に利用可能なさまざまな値を示
すことができる。これら値の最も単純なものの1つは、動きベクトル長(motion vector
length)である。具体的には、予測の品質は、動きベクトル長の増加と共に劣化する傾向
がある。別の可能な指標は、動きフィールドの滑らかさ(すなわち、近傍のブロックの動
きベクトルがどれだけ類似しているか)である。
まり詳細でなく、類似したエラースコアを有する多くの候補ベクトルがある)状況におい
てより良い選択肢となる傾向がある。特に、比較的平坦で特徴のない領域に対して多くの
フレームにわたり双3次フィルタを繰り返し適用すると、不要な人工物が生み出される場
合がある。
の因子は、動きベクトルの長さである。第2の因子は、フィルタリングされることになる
1組のフルピクセルアラインされたデータ点を解析することによって計算される複雑度メ
トリックCである。
1.動きベクトルが、X及びYの双方でしきい値Lよりも短い。
2.複雑度Cが、しきい値Tよりも大きい。
C=(nΣxi 2−(Σxi)2)/n2
に従って計算された1組のn個のデータ点xiの分散である。
ごとに1回の割合で、符号化器が設定することができる。
る詳細を与えるものである。
PredictBlockFunction( … )
{
…
…
if ( pbi->PredictionFilterMode == AUTO_SELECT_PM )
{
// ベクトルがX又はYにおいてしきい値長よりも大きい場合に双1次を使用する
if ( (( abs(pbi->mbi.Mv[bp].x ) > BicMvSizeLimit ||
(( abs(pbi->mbi.Mv[bp].y ) > BicMvSizeLimit))
{
FilterBlockBilinear( … );
}
else
{
// 複雑度メトリック(分散)を計算する。
// 注意:性能の理由から、分散関数は16個のデータ点
// (8×8ブロックのX及びYの1つおきの点)のみを検査する
Var = Var16Point( DataPtr, Stride );
// 複雑度が所与のしきい値よりも大きい場合には、双3次を使用し、
// そうでない場合には、双1次を使用する
if ( Var >= pbi->PredictionFilterVarThresh )
FilterBlockBilcubic( … )
else
FilterBlockBilinear( … )
}
}
…
…
}
UINT32 Var16Point ( UINT8 *DataPtr, INT32 Stride )
{
UINT32 i, j;
UINT32 XSum=0, XXSum=0;
UINT8 *DiffPtr = DataPtr;
// X及びYの1つおきの点を使用する
for ( i = 0; i < BLOCK_HEIGHT_WIDTH; i += 2 )
{
for ( j = 0; j < BLOCK_HEIGHT_WIDTH; j += 2 )
{
XSum += DiffPtr[j];
XXSum += DiffPtr[j] * DiffPtr[j];
}
// ブロックの次の行へステップする
DiffPtr += (SourceStride << 1)
}
// 適合しないメトリックとして母分散を計算する
return(((XXSum*16)-(XSum*XSum))/256);
慣例により、現代のほとんどのビデオコーデックは、差分符号化方式を使用して、動き
ベクトルの(x,y)成分を符号化する。すなわち、各ベクトルは、前のベクトルを基準
にして符号化される。たとえば、2つのベクトル(7,3)及び(8,4)を考える。こ
の場合、第2のベクトルは(1,1)、すなわち(7+1,3+1)として符号化される
ことになる。
動きと類似した動きを示す場合によく機能する。これは、多くの場合、たとえばパンする
時に当てはまることを示すことができる。しかしながら、動きフィールドが不規則である
場合、又は、異なる動き特性を有する背景領域と前景領域との間での遷移が頻繁である場
合に、この方式はあまりよく機能しない。
景前景遷移の許容範囲がより大きな、動きベクトルを符号化するための代替的なストラテ
ジーである。
以上の基準ベクトルを保持する。コーデックは、ビットストリーム内の明示的なシグナリ
ングビットを介してこれらの基準ベクトルを切り換えることができるが、好ましい実施態
様では、この決定は、符号化方法、及び、ブロックのすぐ隣のブロックによって使用され
る動きベクトルに基づく。
レームにも依存しない)として符号化することもできるし、前のフレームの再構成又は周
期的にしか更新されない代替的な基準フレームのいずれかに依存するインターブロック(
inter block)として符号化することもできる。
は、以下の符号化モードの選択肢をサポートする。
・動きベクトルなし(すなわち、暗黙的な(0,0)ベクトル)で符号化する。
・「最も近い」近傍と同じベクトルを使用して符号化する。
・「次に最も近い」近傍と同じベクトルを使用して符号化する。
・新たな動きベクトルを使用して符号化する。
を基準にして符号化されたブロック及び非ゼロの動きベクトルで符号化されたブロックの
みが考慮される。他のすべてのブロックは無視される。
も無視される。
ベクトルを基準ベクトルとして使用することができる。好ましい実施態様では、最も近い
ベクトルが得られたブロックが、現在のブロックのすぐ左のブロック又はすぐ上のブロッ
クのいずれかである場合に、その最も近いベクトルが使用される(ブロックは、左から右
へ及び上から下へ符号化されるものと仮定する)。他のすべての場合には、新たなベクト
ルは(0,0)を基準にして符号化される。
それぞれ現在のブロックのすぐ左のブロック及びすぐ上のブロックである場合、それら2
つから得られた或る種の合成ベクトルを、新たなベクトルを符号化するための基準として
使用することができる。あるいは、「最も近い」はx成分を予測するのに使用することが
でき、「次に最も近い」はy成分を予測するのに使用することができる。
のブロック及びすぐ上のブロックであると仮定して、最も近いベクトルと次に最も近いベ
クトルとが類似していない場合を特別に考慮したものである。このような場合、最も近い
ベクトル及び次に最も近いベクトルは、x、y、又はx及びyの双方の基準値として0に
戻る。
に、単純な差分符号化の利益を保持する。しかしながら、特別な「ベクトルのない」モー
ド、「最も近い」モード、及び「次に最も近いモード」を使用することは、前景と背景と
の間の遷移をより効率的に符号化するのに役立ち、複数の符号化の起点を自動的に切り換
えることができることによって、本方法の不規則な動きフィールドの許容範囲は、より大
きくなる。
る詳細を与えるものである。
// この関数は、現在のブロックについて、限定的な(qualifying)最も近い近傍
// 及び次に最も近い近傍があるかどうか、それらの動きベクトルは何であるか、
// 並びに最も近い近傍がどれだけ接近しているかを判断する。
//
void VP6_FindNearestandNextNearest( PB_INSTANCE *pbi,
UINT32 MBrow,
UINT32 MBcol,
UINT8 ReferenceFrame,
INT32 *Type )
{
int i;
UINT32 OffsetMB;
UINT32 BaseMB = MBOffset( MBrow, MBcol );
MOTION_VECTOR ThisMv;
// デフォルト結果を設定する
*Type = NONEAREST_MACROBLOCK;
// 限定的な「最も近い」ブロックを探索する
for ( i=0; i<12; i++ )
{
OffsetMB = pbi->mvNearOffset[i] + BaseMB;
// ブロックは同じ基準フレームを基準にして符号化されたか?
if ( VP6_Mode2Frame[pbi->predictionMode[OffsetMB]] != ReferenceFrame )
continue;
// 動きベクトルがもしあれば、その動きベクトルは何を使用したか
ThisMv.x = pbi->MBMotionVector[OffsetMB].x;
ThisMv.y = pbi->MBMotionVector[OffsetMB].y;
// それが非ゼロであった場合、限定的な近傍を有する
if ( ThisMv.x || ThisMv.y )
{
Nearest.x = ThisMv.x;
Nearest.y = ThisMv.y;
*Type = NONEAR_MACROBLOCK;
break;
}
}
pbi->mbi.NearestMvIndex = i;
// 限定的な「次に最も近い」ブロックを探索する
for ( i=i+1; i<12; i++ )
{
OffsetMB = pbi->mvNearOffset[i] + BaseMB;
// ブロックは同じ基準フレームを基準にして符号化されたか?
if ( VP6_Mode2Frame[pbi->predictionMode[OffsetMB]] != ReferenceFrame )
continue;
// 動きベクトルがもしあれば、その動きベクトルは何を使用したか
ThisMv.x = pbi->MBMotionVector[OffsetMB].x;
ThisMv.y = pbi->MBMotionVector[OffsetMB].y;
// このベクトルが「最も近い」ベクトルと同じである場合、このベクトルを無
視する
if ((ThisMv.x == Nearest.x) && (ThisMv.y == Nearest.y))
continue;
// それが非ゼロであった場合、限定的な近傍を有する
if ( ThisMv.x || ThisMv.y )
{
NextNearest.x = ThisMv.x;
NextNearest.y = ThisMv.y;
*Type = MACROBLOCK;
break;
ビデオコーデックは、多くの場合、ビットストリームのエラーの影響を極端に受けやす
いので、信頼性のないデータリンク上で圧縮ビデオデータを送信する場合、データが喪失
又は破損したときの回復のためのメカニズムが存在することは重要である。
存在し、これらは、通常、エラーの検出、及び、再送又は一定のタイプのエラーの訂正を
可能にする追加データビットの使用のいずれかに依拠する。
上でビデオ会議を行う場合、上述した手法のいずれも理想的ではない。喪失したデータパ
ケットの再送は、端末間の遅延の増加を引き起こす可能性があるので実用的でない場合が
ある一方、誤り訂正ビット又は誤り訂正パケットの使用は、帯域幅がすでに厳しく制限さ
れている状況では受け入れられない場合がある。
することである。符号化器は、その後、回復フレームを復号器へ送信することができる。
この手法は、リンク上のエラーレートが非常に高い場合、適切でないおそれがあることに
留意されたい。たとえば、10フレーム〜20フレームごとに2つ以上のエラーがある場
合である。
ある。これは、前のフレーム又は前のフレームのデータに何ら依存関係を有しないフレー
ムである。キーフレームに関連した問題は、それらキーフレームが、通例、比較的大きい
ということである。
して使用できる1つ又は複数の追加された基準フレーム(前に符号化されたフレームの再
構成以外)を保持するメカニズムである。
つ、オプションとしてそれ以外の時に、フレームヘッダのフラグビットを介して更新され
る第2の基準フレームを保持する。たとえば、符号化器は、「X」秒ごとに1回又はエラ
ー回復フレームが符号化される時は常に第2の基準フレームを更新することを選択するこ
とができる。
しているという条件で、この第2の基準フレームを基準にした差分符号化は、キーフレー
ムを符号化するよりもはるかに安価になる可能性がある。
ができるいくつかの方法がある。従来技術に含まれる1つの明らかな使用は、2つ又は3
つ以上の異なるシーン間を行ったり来たりするビデオシーケンスにおいてである。たとえ
ば、ビデオがインタビューする側とインタビューされる側との間で行ったり来たりするイ
ンタビューを考える。各カメラアングル用のベースラインとして別々の基準フレームを記
憶することにより、これらの間を行ったり来たりするコストを大きく削減することができ
、特に、シーンが大幅に異なる場合に大きく削減することができる。
象は、ビデオにゆっくりとした漸進的変化がある状況において、周期的に更新された代替
的な基準フレームを使用して、圧縮されたビデオの品質を高めることである。この良い例
はゆっくりとしたパン、ズーム、又はトラッキングショットである。
進的変化の間、符号化器は、周囲のフレームよりもきわめて高い品質で符号化され、且つ
、第2の又は代替的な基準フレームの更新を引き起こすフレームを周期的に挿入する。
又は最後の第2の基準の更新以来、次第に喪失してきた細部を元に戻すこと、及び、後続
のフレームのインターフレーム予測のより良い基礎を提供することである。品質(したが
ってデータレート)を周期的に引き上げると同時に第2の基準フレームを更新するこのス
トラテジーは、いくつかの状況では、単にすべてのフレームを同様の品質で符号化するこ
とよりもはるかに良好なコスト/品質トレードオフを提供することを示すことができる。
定するための方法は、有効な実施態様の中心となる。
子には、以下のものが含まれる。
・動きの速度の指標として、数個の先行フレームにおける動きベクトルの平均振幅。
・動きフィールドが相関する程度。たとえば、動きベクトルがすべてかなり類似してい
る。
・前の数フレームにおける前のフレームの再構成に優先して、第2の基準フレームがプ
リディクタとして使用された程度。
・周囲の品質又は量子化器の設定。
新間隔及び品質ブースト(quality boost)はともに減少する。逆に、動きがゆっくりと
している場合、より大きな品質ブースト及びより長い間隔が使用される。
場合、第2の基準フレームの更新のための品質ブーストは増加する。逆に、動きフィール
ドの相関が乏しい場合、ブーストの程度は減少する。
使用されている場合、品質ブーストは増加する。逆に、第2の基準フレームが頻繁に使用
されない場合、品質ブーストは減少する。
には大きなブーストが使用され、周囲の品質が高い場合には小さなブーストが使用される
。
ある。
1/4ピクセル単位で指定されたX及びYの動きベクトル成分の平均振幅(AvX及び
AvY)を計算する。
MotionSpeed(動きの速度)=AvX及びAvYの大きい方
X及びYの動きベクトル成分の分散数(VarianceX(分散X)及びVaria
nceY(分散Y))を計算する
MaxVariance(最大分散)=VarianceX及びVarianceYの
大きい方
MotionComplexity(動きの複雑度)=MotionSpeed+(V
arianceX/4)+(VarianceY/4)
第2の基準フレームの更新がまさにこのフレームである場合
そのフレームの予測された品質インデックス(実際には量子化器の設定)に基づいてデ
ータレート%ブースト数(Boost)を計算する。これは、最高品質の+0%と、品質
レベルが非常に低い時の+1250%との範囲とすることができる。
BoostにMotionSpeed訂正係数(correction factor)を乗算する。こ
こで、この係数は、MotionSpeedが非常に小さい値である場合の1と、Mot
ionSpeedが大きな値である場合の0との間で変化することができる。
第2の基準フレームが前の数フレームで使用された程度に基づいて、さらに別の訂正係
数をBoostに適用する。この別の訂正係数は、第2の基準フレームが前の数フレーム
で全く使用されなかった場合の1/16から、第2の基準フレームが符号化されたブロッ
クの15%以上に使用された場合の1まで変化することができる。
次に、一連のテストが適用されて、先に進むかどうか、及び、計算された%ブーストで
第2の基準フレームを更新するかどうかが判断される。
(Boost>MinBoostTreshold)且つ
(MotionSpeed<MaxMotionSpeedThreshold)且つ
(MaxVariance<MaxVarianceThreshold)
ここで、MinBoostTreshold、MaxMotionSpeedThres
hold、及びMaxVarianceThresholdは構成可能なパラメータであ
る。
ドは、或るブロックの動きベクトルが、その近くにある近傍のブロックの1つによって使
用された動きベクトルと同じである場合に、当該或るブロックの動きベクトルをより安価
に符号化することを可能にするものである。これらのモードの使用がしきい値レベル未満
に下がる場合を減らすためのさらなるテストが適用される。
タレート目標値をベースライン値+Boost%に設定し、計算し、MotionSpe
edに基づく次の更新までの間隔。
ータレートブーストで通常通りフレームを更新する。
新間隔を考慮した、削減されたフレームデータレート目標値(負のブースト)を計算する
。
方法の選択>
現代の多くのビデオコーデックは、サブピクセル精度に対する動きの予測をサポートす
る。たとえば、1/2ピクセル又は1/4ピクセルの動き推定である。端数ピクセルデー
タ点を作成するには、実際の(すなわち、フルピクセルアラインされた)データ点に適用
される或る形態の補間関数又は補間フィルタを使用することが必要である。
A x B
y z
C D
、y、及びzが、1/2ピクセルアラインされた点である。
*点xは、X方向に1/2ピクセルアラインされ、公式(A+B/2)を使用して計算
される。
*点yは、Y方向に1/2ピクセルアラインされ、公式(A+C/2)を使用して計算
される。
*点zは、X及びYの双方で1/2ピクセルアラインされ、公式(A+B+C+D/2
)を使用して計算される。
間フィルタの使用に向かう傾向がある。以下の例では、「x」は、2つのフルピクセルア
ラインされた点BとCとの間の中点にある1/2ピクセル点である。xは、公式(−A+
9B+9C−D)/16を使用して計算することができる。
A B x C D
るが、いくつかのフレームにわたってそれらフィルタが繰り返し適用されると、時に、テ
キスチャの誇張や誤った輪郭等の不快な人工物となる可能性がある。
の混在したものを使用して、より最適な端数ピクセルプリディクタを計算することができ
、フレームレベル、又は、動きベクトルが適用される個々のブロックもしくは領域のレベ
ルのいずれかでこれらの方法を選択することができる方法である。
によって行うことができるが、好ましい実施態様では、この選択は、フィルタリングされ
ることになる前の再構成された画像の1組のピクセルに適用された複雑度メトリックによ
って行われる。
は、双3次方法を使用してフィルタリングされるのに対して、これより低い複雑度スコア
を有するブロック又は領域は、双1次方法を使用してフィルタリングされる。
フルピクセルアラインされたデータ点の分散である。ここで、分散は次のように定義され
る。
(n?x2−(?x)2)/n2
。
Claims (18)
- 複数のフレームを含むビデオ信号を復号する方法であって、
前記ビデオ信号において前記複数のフレームに含まれる現在のフレームより前にあり、前記現在のフレームの直前のフレーム以外の代替の基準フレームを生成する段階と、
前記現在のフレームにおいてエラーを検出して、前記検出されたエラーを報告する段階と、
前記検出されたエラーの報告に応じて、前記代替の基準フレームを用いて符号化された回復フレームを受信する段階と、
前記代替の基準フレームを用いて前記回復フレームを復号する段階と、
前記代替の基準フレームの少なくとも一部を、前記回復フレームで更新する段階と
を備える方法。 - キーフレームを受信する段階と、
前記代替の基準フレームの少なくとも一部を、前記キーフレームの少なくとも一部で更新する段階と
をさらに備える請求項1に記載の方法。 - 前記代替の基準フレームは、周期的に更新される
請求項1または2に記載の方法。 - 前記代替の基準フレームは、X秒毎に更新される
請求項3に記載の方法。 - 前記代替の基準フレームは、Fフレーム毎に更新される
請求項3に記載の方法。 - 前記複数のフレームのうちの少なくとも1つのフレームは、前記代替の基準フレームを更新することを示すフラグビットを含むフレームヘッダを有し、
前記方法は、
前記代替の基準フレームの少なくとも一部を、前記フラグビットに応じて更新する段階
をさらに備える請求項1から5のいずれか一項に記載の方法。 - 前記検出されるエラーは、データ喪失およびデータ破損の少なくとも1つを含む
請求項1から6のいずれか一項に記載の方法。 - 前記エラーを検出する段階は、
前記現在のフレームの直前の前記フレームを用いて、前記現在のフレームを復号する段階と、
前記現在のフレーム内のデータ喪失およびデータ破損の少なくとも1つを特定する段階と
を備える請求項7に記載の方法。 - 複数のフレームを含むビデオ信号を符号化する方法であって、
前記ビデオ信号において前記複数のフレームに含まれる現在のフレームより前にあり、前記現在のフレームの直前のフレーム以外の代替の基準フレームを生成する段階と、
前記現在のフレームの復号に関するエラーの報告を受信する段階と、
前記受信した報告に応じて、回復フレームを生成する段階と、
前記代替の基準フレームを用いて前記回復フレームを符号化する段階と、
前記代替の基準フレームの少なくとも一部を、前記回復フレームで更新する段階と
を備える方法。 - キーフレームを生成する段階と、
前記代替の基準フレームの少なくとも一部を、前記キーフレームの少なくとも一部で更新する段階
をさらに備える請求項9に記載の方法。 - 前記代替の基準フレームは、周期的に更新される
請求項9または10に記載の方法。 - 前記代替の基準フレームは、X秒毎に更新される
請求項11に記載の方法。 - 前記代替の基準フレームは、Fフレーム毎に更新される
請求項11に記載の方法。 - 前記エラーは、データ喪失およびデータ破損の少なくとも1つを含む
請求項9から13のいずれか一項に記載の方法。 - 複数のフレームを含むビデオ信号を復号する装置であって、
前記ビデオ信号において前記複数のフレームに含まれる現在のフレームより前にあり、前記現在のフレームの直前のフレーム以外の代替の基準フレームを生成する手段と、
前記現在のフレームにおいてエラーを検出して、前記検出されたエラーを報告する手段と、
前記検出されたエラーの報告に応じて、前記代替の基準フレームを用いて符号化された回復フレームを受信する手段と、
前記代替の基準フレームを用いて前記回復フレームを復号する手段と、
前記代替の基準フレームの少なくとも一部を、前記回復フレームで更新する手段と
を備える装置。 - キーフレームを受信する手段と、
前記代替の基準フレームの少なくとも一部を、前記キーフレームの少なくとも一部で更新する手段と
をさらに備える請求項15に記載の装置。 - 複数のフレームを含むビデオ信号を符号化する装置であって、
前記ビデオ信号において前記複数のフレームに含まれる現在のフレームより前にあり、前記現在のフレームの直前のフレーム以外の代替の基準フレームを生成する手段と、
前記現在のフレームの復号に関するエラーの報告を受信する手段と、
前記受信した報告に応じて、回復フレームを生成する手段と、
前記代替の基準フレームを用いて前記回復フレームを符号化する手段と、
前記代替の基準フレームの少なくとも一部を、前記回復フレームで更新する手段と
を備える装置。 - キーフレームを生成する手段と、
前記代替の基準フレームの少なくとも一部を、前記キーフレームの少なくとも一部で更新する手段と
をさらに備える請求項17に記載の装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US46918703P | 2003-05-12 | 2003-05-12 | |
US60/469,187 | 2003-05-12 | ||
US10/713,807 | 2003-11-14 | ||
US10/713,807 US8824553B2 (en) | 2003-05-12 | 2003-11-14 | Video compression method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010121008A Division JP5341024B2 (ja) | 2003-05-12 | 2010-05-26 | ビデオ圧縮方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013211908A JP2013211908A (ja) | 2013-10-10 |
JP5606591B2 true JP5606591B2 (ja) | 2014-10-15 |
Family
ID=33423828
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006533037A Expired - Fee Related JP4568887B2 (ja) | 2003-05-12 | 2004-05-12 | ビデオ圧縮方法 |
JP2010121008A Expired - Fee Related JP5341024B2 (ja) | 2003-05-12 | 2010-05-26 | ビデオ圧縮方法 |
JP2010239018A Expired - Lifetime JP5480775B2 (ja) | 2003-05-12 | 2010-10-25 | ビデオ圧縮方法 |
JP2013117983A Expired - Fee Related JP5606591B2 (ja) | 2003-05-12 | 2013-06-04 | ビデオ圧縮方法 |
JP2014008689A Pending JP2014099905A (ja) | 2003-05-12 | 2014-01-21 | ビデオ圧縮方法 |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006533037A Expired - Fee Related JP4568887B2 (ja) | 2003-05-12 | 2004-05-12 | ビデオ圧縮方法 |
JP2010121008A Expired - Fee Related JP5341024B2 (ja) | 2003-05-12 | 2010-05-26 | ビデオ圧縮方法 |
JP2010239018A Expired - Lifetime JP5480775B2 (ja) | 2003-05-12 | 2010-10-25 | ビデオ圧縮方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014008689A Pending JP2014099905A (ja) | 2003-05-12 | 2014-01-21 | ビデオ圧縮方法 |
Country Status (7)
Country | Link |
---|---|
US (8) | US8824553B2 (ja) |
EP (1) | EP1656791A2 (ja) |
JP (5) | JP4568887B2 (ja) |
KR (6) | KR101118438B1 (ja) |
CN (2) | CN103037214A (ja) |
CA (1) | CA2525390C (ja) |
WO (1) | WO2004102946A2 (ja) |
Families Citing this family (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6499060B1 (en) | 1999-03-12 | 2002-12-24 | Microsoft Corporation | Media coding for loss recovery with remotely predicted data units |
US20040258147A1 (en) * | 2003-06-23 | 2004-12-23 | Tsu-Chang Lee | Memory and array processor structure for multiple-dimensional signal processing |
JP2006086964A (ja) * | 2004-09-17 | 2006-03-30 | Toshiba Corp | ビットレート変換装置およびビットレート変換方法 |
US7817723B2 (en) * | 2004-12-14 | 2010-10-19 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E. V. | Apparatus and method of optimizing motion estimation parameters for encoding a video signal |
US7324708B2 (en) * | 2004-12-23 | 2008-01-29 | Primax Electronics Ltd. | Interpolation method for digital pictures |
US8634413B2 (en) * | 2004-12-30 | 2014-01-21 | Microsoft Corporation | Use of frame caching to improve packet loss recovery |
KR100727969B1 (ko) * | 2005-08-27 | 2007-06-14 | 삼성전자주식회사 | 영상의 부호화 및 복호화 장치와, 그 방법, 및 이를수행하기 위한 프로그램이 기록된 기록 매체 |
KR100727970B1 (ko) * | 2005-08-30 | 2007-06-13 | 삼성전자주식회사 | 영상의 부호화 및 복호화 장치와, 그 방법, 및 이를수행하기 위한 프로그램이 기록된 기록 매체 |
KR100667815B1 (ko) * | 2005-09-22 | 2007-01-12 | 삼성전자주식회사 | 영상 부호화 및 복호화 장치와, 그 방법, 및 이를 수행하기위한 프로그램이 기록된 기록 매체 |
JP2007189518A (ja) * | 2006-01-13 | 2007-07-26 | Matsushita Electric Ind Co Ltd | 信号処理装置、撮像装置、ネットワークカメラシステム及び映像システム |
KR100834757B1 (ko) | 2006-03-28 | 2008-06-05 | 삼성전자주식회사 | 엔트로피 부호화 효율을 향상시키는 방법 및 그 방법을이용한 비디오 인코더 및 비디오 디코더 |
JP5248802B2 (ja) * | 2006-06-16 | 2013-07-31 | カシオ計算機株式会社 | 動画符号化装置および動画符号化方法と、動画復号化装置および動画復号化方法と、動画記録装置 |
KR101086435B1 (ko) * | 2007-03-29 | 2011-11-25 | 삼성전자주식회사 | 영상 데이터 스트림의 에러 검출 방법 및 그 장치 |
US20100325255A1 (en) * | 2007-04-05 | 2010-12-23 | Gene Cheung | Data transmission system and method |
WO2009032255A2 (en) * | 2007-09-04 | 2009-03-12 | The Regents Of The University Of California | Hierarchical motion vector processing method, software and devices |
US8542748B2 (en) | 2008-03-28 | 2013-09-24 | Sharp Laboratories Of America, Inc. | Methods and systems for parallel video encoding and decoding |
KR20100011628A (ko) * | 2008-07-25 | 2010-02-03 | 삼성전자주식회사 | 코딩 방법 및 코딩 장치 |
US8325796B2 (en) | 2008-09-11 | 2012-12-04 | Google Inc. | System and method for video coding using adaptive segmentation |
US8326075B2 (en) * | 2008-09-11 | 2012-12-04 | Google Inc. | System and method for video encoding using adaptive loop filter |
US8385404B2 (en) | 2008-09-11 | 2013-02-26 | Google Inc. | System and method for video encoding using constructed reference frame |
US8311111B2 (en) * | 2008-09-11 | 2012-11-13 | Google Inc. | System and method for decoding using parallel processing |
US20100074336A1 (en) * | 2008-09-25 | 2010-03-25 | Mina Goor | Fractional motion estimation engine |
CN102158678A (zh) * | 2010-05-20 | 2011-08-17 | 王洪剑 | 一种运动向量场插值方法 |
KR101454133B1 (ko) | 2010-09-02 | 2014-10-23 | 엘지전자 주식회사 | 영상 부호화 및 복호화 방법과 이를 이용한 장치 |
US8503528B2 (en) | 2010-09-15 | 2013-08-06 | Google Inc. | System and method for encoding video using temporal filter |
US8344917B2 (en) | 2010-09-30 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for context initialization in video coding and decoding |
US9313514B2 (en) | 2010-10-01 | 2016-04-12 | Sharp Kabushiki Kaisha | Methods and systems for entropy coder initialization |
KR20130054408A (ko) | 2010-10-05 | 2013-05-24 | 제너럴 인스트루먼트 코포레이션 | 지그재그 스캔에 의한 적응적 컨텍스트 모델 선택을 이용하는 코딩 및 디코딩 |
US8611415B1 (en) | 2010-11-15 | 2013-12-17 | Google Inc. | System and method for coding using improved motion estimation |
US9532066B2 (en) * | 2011-01-21 | 2016-12-27 | Qualcomm Incorporated | Motion vector prediction |
KR101760333B1 (ko) * | 2011-03-02 | 2017-07-21 | 삼성전자주식회사 | 다중 사용자 다중 안테나 전송에서 그룹 아이디 관리를 위한 타겟 단말 및 액세스 포인트의 통신 방법 |
FR2972588A1 (fr) | 2011-03-07 | 2012-09-14 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
EP2687015A4 (en) * | 2011-03-14 | 2014-12-17 | Mediatek Inc | METHOD AND DEVICE FOR OBTAINING PREDICTIONS FOR TEMPORARY MOTION VECTORS |
US9154799B2 (en) | 2011-04-07 | 2015-10-06 | Google Inc. | Encoding and decoding motion via image segmentation |
US8781004B1 (en) | 2011-04-07 | 2014-07-15 | Google Inc. | System and method for encoding video using variable loop filter |
US8780996B2 (en) | 2011-04-07 | 2014-07-15 | Google, Inc. | System and method for encoding and decoding video data |
US8780971B1 (en) | 2011-04-07 | 2014-07-15 | Google, Inc. | System and method of encoding using selectable loop filters |
US8638854B1 (en) | 2011-04-07 | 2014-01-28 | Google Inc. | Apparatus and method for creating an alternate reference frame for video compression using maximal differences |
CN102811346B (zh) * | 2011-05-31 | 2015-09-02 | 富士通株式会社 | 编码模式选择方法和系统 |
CN103609116A (zh) * | 2011-06-17 | 2014-02-26 | 松下电器产业株式会社 | 动态图像编码装置以及动态图像编码方法 |
FR2977111A1 (fr) | 2011-06-24 | 2012-12-28 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
CN102956027B (zh) * | 2011-08-30 | 2016-08-03 | 安凯(广州)微电子技术有限公司 | 基于摄像头图像处理芯片的图像增强处理系统及处理方法 |
US8885706B2 (en) | 2011-09-16 | 2014-11-11 | Google Inc. | Apparatus and methodology for a video codec system with noise reduction capability |
BR122015021735A2 (pt) * | 2011-11-08 | 2019-08-27 | Samsung Electronics Co Ltd | aparelho para decodificar uma imagem |
US9247257B1 (en) | 2011-11-30 | 2016-01-26 | Google Inc. | Segmentation based entropy encoding and decoding |
US9100657B1 (en) | 2011-12-07 | 2015-08-04 | Google Inc. | Encoding time management in parallel real-time video encoding |
US9262670B2 (en) | 2012-02-10 | 2016-02-16 | Google Inc. | Adaptive region of interest |
US9131073B1 (en) | 2012-03-02 | 2015-09-08 | Google Inc. | Motion estimation aided noise reduction |
WO2013162980A2 (en) | 2012-04-23 | 2013-10-31 | Google Inc. | Managing multi-reference picture buffers for video data coding |
US9609341B1 (en) | 2012-04-23 | 2017-03-28 | Google Inc. | Video data encoding and decoding using reference picture lists |
GB2501535A (en) * | 2012-04-26 | 2013-10-30 | Sony Corp | Chrominance Processing in High Efficiency Video Codecs |
US9014266B1 (en) | 2012-06-05 | 2015-04-21 | Google Inc. | Decimated sliding windows for multi-reference prediction in video coding |
US9774856B1 (en) | 2012-07-02 | 2017-09-26 | Google Inc. | Adaptive stochastic entropy coding |
US9344729B1 (en) | 2012-07-11 | 2016-05-17 | Google Inc. | Selective prediction signal filtering |
US9509998B1 (en) | 2013-04-04 | 2016-11-29 | Google Inc. | Conditional predictive multi-symbol run-length coding |
US9756331B1 (en) | 2013-06-17 | 2017-09-05 | Google Inc. | Advance coded reference prediction |
GB2516426B (en) * | 2013-07-17 | 2015-10-07 | Gurulogic Microsystems Oy | Encoder, decoder and method of operation using interpolation |
AU2014294127B2 (en) * | 2013-07-22 | 2018-09-13 | Sony Corporation | Image processing device and method |
US11425395B2 (en) | 2013-08-20 | 2022-08-23 | Google Llc | Encoding and decoding using tiling |
US9392288B2 (en) | 2013-10-17 | 2016-07-12 | Google Inc. | Video coding using scatter-based scan tables |
US9179151B2 (en) | 2013-10-18 | 2015-11-03 | Google Inc. | Spatial proximity context entropy coding |
US10236906B2 (en) | 2013-10-22 | 2019-03-19 | Schlumberger Technology Corporation | Compression and timely delivery of well-test data |
US9774881B2 (en) | 2014-01-08 | 2017-09-26 | Microsoft Technology Licensing, Llc | Representing motion vectors in an encoded bitstream |
US9942560B2 (en) | 2014-01-08 | 2018-04-10 | Microsoft Technology Licensing, Llc | Encoding screen capture data |
US9749642B2 (en) | 2014-01-08 | 2017-08-29 | Microsoft Technology Licensing, Llc | Selection of motion vector precision |
US9392272B1 (en) | 2014-06-02 | 2016-07-12 | Google Inc. | Video coding using adaptive source variance based partitioning |
US9578324B1 (en) | 2014-06-27 | 2017-02-21 | Google Inc. | Video coding using statistical-based spatially differentiated partitioning |
US10102613B2 (en) | 2014-09-25 | 2018-10-16 | Google Llc | Frequency-domain denoising |
US10462480B2 (en) | 2014-12-31 | 2019-10-29 | Microsoft Technology Licensing, Llc | Computationally efficient motion estimation |
US9787332B2 (en) * | 2015-09-15 | 2017-10-10 | Intel Corporation | Error-checking compressed streams in heterogeneous compression accelerators |
TWI546779B (zh) | 2015-11-06 | 2016-08-21 | 財團法人工業技術研究院 | 串流資料的編碼排程方法、裝置與電腦可讀取媒體 |
US10334276B2 (en) * | 2015-12-28 | 2019-06-25 | Ati Technologies Ulc | Method and apparatus for determining the severity of corruption in a picture |
US9794574B2 (en) | 2016-01-11 | 2017-10-17 | Google Inc. | Adaptive tile data size coding for video and image compression |
US10542258B2 (en) | 2016-01-25 | 2020-01-21 | Google Llc | Tile copying for video compression |
KR101742258B1 (ko) * | 2016-02-29 | 2017-05-31 | 경희대학교 산학협력단 | 웹 기반 가상 데스크탑 프로토콜을 이용한 컨텐츠 제공 방법 및 장치 |
KR101895294B1 (ko) | 2017-03-03 | 2018-09-05 | 주식회사 칩스앤미디어 | 프리 스캔을 이용한 블록 기반 동영상 복호화 방법 및 그 장치 |
US10326994B2 (en) * | 2017-08-15 | 2019-06-18 | Google Llc | Modifying a scan order to limit scan distance |
CN107846263B (zh) * | 2017-11-01 | 2020-07-14 | 南京莱斯电子设备有限公司 | 一种基于分段计算的信源二进制算术编码方法和编码系统 |
CN109756739B (zh) * | 2017-11-07 | 2022-09-02 | 华为技术有限公司 | 图像预测方法和装置 |
CN108230487A (zh) * | 2017-12-21 | 2018-06-29 | 上海新案数字科技有限公司 | 共享摄像头资源的方法及设备 |
US11665365B2 (en) * | 2018-09-14 | 2023-05-30 | Google Llc | Motion prediction coding with coframe motion vectors |
US11212520B2 (en) * | 2018-12-04 | 2021-12-28 | Ati Technologies Ulc | Region-based reference frame management |
EP3700210A1 (en) * | 2019-02-21 | 2020-08-26 | Ateme | Method and apparatus for image encoding |
EP3713235B1 (en) * | 2019-03-19 | 2023-08-02 | Axis AB | Methods and devices for encoding a video stream using a first and a second encoder |
EP3968264A4 (en) * | 2019-05-05 | 2022-12-14 | Zhejiang Uniview Technologies Co., Ltd. | END OF TRANSMISSION AND END OF RECEIVE PRIVACY PROTECTION METHOD, ELECTRONIC DEVICE AND COMPUTER READABLE DATA MEDIA |
CN110582022B (zh) * | 2019-09-27 | 2022-12-30 | 腾讯科技(深圳)有限公司 | 视频编解码方法和装置及存储介质 |
KR102153661B1 (ko) * | 2019-11-29 | 2020-09-08 | 국방과학연구소 | 위성탑재용 영상레이더 및 위성탑재용 영상레이더의 텔레메트리 데이터 축소 방법 |
KR20210136476A (ko) | 2020-05-07 | 2021-11-17 | 삼성전자주식회사 | 쿼드 트리 방법의 파라미터들을 이용하여 압축하는 장치 및 방법 |
EP3962091B1 (en) * | 2020-08-26 | 2024-08-28 | Tata Consultancy Services Limited | Methods and systems for maintaining quality of experience in real-time live video streaming |
US20220312004A1 (en) * | 2021-03-23 | 2022-09-29 | Tencent America LLC | Method and apparatus for video coding |
CN115881140A (zh) * | 2021-09-29 | 2023-03-31 | 华为技术有限公司 | 编解码方法、装置、设备、存储介质及计算机程序产品 |
US20230179764A1 (en) * | 2021-12-06 | 2023-06-08 | Tencent America LLC | Arrangement of adaptive loop filter coefficients for fast vectorized transpositions |
CN114640853B (zh) * | 2022-05-18 | 2022-07-29 | 滨州市人防工程与指挥保障中心 | 一种无人机巡航图像处理系统 |
CN115865099B (zh) * | 2022-12-01 | 2024-04-16 | 河南大学 | 基于霍夫曼编码的多类型数据分段压缩方法及系统 |
Family Cites Families (167)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60186179A (ja) | 1984-03-06 | 1985-09-21 | Nec Corp | 画像信号の予測符号化方式とその装置 |
JPS6192073A (ja) | 1984-10-12 | 1986-05-10 | Hitachi Ltd | 画像デ−タ圧縮方式 |
DE3629472A1 (de) | 1986-08-29 | 1988-03-03 | Licentia Gmbh | Verfahren zur bewegungskompensierten bild-zu-bild-praediktionscodierung |
EP0293644B1 (de) | 1987-06-02 | 1992-03-25 | Siemens Aktiengesellschaft | Verfahren zur Ermittlung von Bewegungsvektorfeldern aus digitalen Bildsequenzen |
US6563875B2 (en) | 1987-12-30 | 2003-05-13 | Thomson Licensing S.A. | Adaptive method of encoding and decoding a series of pictures by transformation, and devices for implementing this method |
JP2743434B2 (ja) | 1989-02-17 | 1998-04-22 | 日本ビクター株式会社 | 動き補償フレーム間予測符号化回路 |
JPH02272970A (ja) | 1989-04-14 | 1990-11-07 | Sony Corp | データ処理回路 |
US5091782A (en) | 1990-04-09 | 1992-02-25 | General Instrument Corporation | Apparatus and method for adaptively compressing successive blocks of digital video |
EP0466981B1 (en) | 1990-07-20 | 1997-02-26 | Koninklijke Philips Electronics N.V. | Motion vector processing device |
SE469866B (sv) | 1991-04-12 | 1993-09-27 | Dv Sweden Ab | Metod för estimering av rörelseinnehåll i videosignaler |
EP0533195A2 (en) | 1991-09-20 | 1993-03-24 | Sony Corporation | Picture signal encoding and/or decoding apparatus |
JP3263960B2 (ja) | 1991-10-22 | 2002-03-11 | ソニー株式会社 | 動きベクトル符号器および復号器 |
US5442458A (en) | 1991-12-18 | 1995-08-15 | Eastman Kodak Company | Method and associated apparatus for encoding bitplanes for improved coding efficiency |
US5461423A (en) | 1992-05-29 | 1995-10-24 | Sony Corporation | Apparatus for generating a motion vector with half-pixel precision for use in compressing a digital motion picture signal |
US5289276A (en) | 1992-06-19 | 1994-02-22 | General Electric Company | Method and apparatus for conveying compressed video data over a noisy communication channel |
US5377018A (en) | 1992-06-22 | 1994-12-27 | Media Vision | Video compression and decompression using block selection and subdivision |
US5365280A (en) | 1992-06-26 | 1994-11-15 | U.S. Philips Corporation | Method and apparatus for discriminating between movie film and non-movie film and generating a picture signal processing mode control signal |
US5371841A (en) | 1992-07-31 | 1994-12-06 | Eastman Kodak Company | Progressive bit plane reconstruction method |
US5717394A (en) | 1993-02-10 | 1998-02-10 | Ricoh Company Ltd. | Method and apparatus for encoding and decoding data |
US5586285A (en) | 1993-02-19 | 1996-12-17 | Intel Corporation | Method and circuitry for increasing reserve memory in a solid state memory disk |
US6181822B1 (en) | 1993-05-12 | 2001-01-30 | The Duck Corporation | Data compression apparatus and method |
US6327304B1 (en) | 1993-05-12 | 2001-12-04 | The Duck Corporation | Apparatus and method to digitally compress video signals |
FI94306C (fi) | 1993-07-15 | 1995-08-10 | Nokia Technology Gmbh | Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi |
US5398068A (en) | 1993-09-02 | 1995-03-14 | Trustees Of Princeton University | Method and apparatus for determining motion vectors for image sequences |
JPH07135660A (ja) | 1993-11-12 | 1995-05-23 | Matsushita Electric Ind Co Ltd | 動きベクトル符号化装置 |
US5999641A (en) | 1993-11-18 | 1999-12-07 | The Duck Corporation | System for manipulating digitized image objects in three dimensions |
KR100213018B1 (ko) | 1994-07-30 | 1999-08-02 | 윤종용 | 동화상 부호화장치 |
US5706059A (en) * | 1994-11-30 | 1998-01-06 | National Semiconductor Corp. | Motion estimation using a hierarchical search |
EP0721287A1 (en) | 1995-01-09 | 1996-07-10 | Daewoo Electronics Co., Ltd | Method and apparatus for encoding a video signal |
DE69619002T2 (de) | 1995-03-10 | 2002-11-21 | Kabushiki Kaisha Toshiba, Kawasaki | Bildkodierungs-/-dekodierungsvorrichtung |
JPH08275160A (ja) | 1995-03-27 | 1996-10-18 | Internatl Business Mach Corp <Ibm> | 離散余弦変換方法 |
KR0178198B1 (ko) | 1995-03-28 | 1999-05-01 | 배순훈 | 영상 신호 부호화 장치 |
WO1996033558A1 (en) | 1995-04-18 | 1996-10-24 | Advanced Micro Devices, Inc. | Method and apparatus for hybrid vlc bitstream decoding |
US5812197A (en) | 1995-05-08 | 1998-09-22 | Thomson Consumer Electronics, Inc. | System using data correlation for predictive encoding of video image data subject to luminance gradients and motion |
US5936673A (en) | 1995-05-26 | 1999-08-10 | Intel Corporation | Temporal tile staggering for block based video compression |
JP3364074B2 (ja) | 1995-06-05 | 2003-01-08 | 株式会社リコー | ビットプレーン符号化装置 |
US5568200A (en) | 1995-06-07 | 1996-10-22 | Hitachi America, Ltd. | Method and apparatus for improved video display of progressively refreshed coded video |
JP3618833B2 (ja) | 1995-07-14 | 2005-02-09 | キヤノン株式会社 | 画像処理装置及び方法 |
KR0153671B1 (ko) | 1995-06-30 | 1998-11-16 | 배순훈 | 고선명 텔레비젼 엔코더의 레이트 콘트롤러 |
MY121607A (en) | 1995-07-10 | 2006-02-28 | Hyundai Curitel Inc | Grid moving method of object image and apparatus using the same and compaction/motion estimation method using the same and apparatus thereof |
WO1997003516A1 (en) | 1995-07-11 | 1997-01-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Video coding |
DE69630643T2 (de) | 1995-08-29 | 2004-10-07 | Sharp Kk | Videokodierungsvorrichtung |
US5835138A (en) | 1995-08-30 | 1998-11-10 | Sony Corporation | Image signal processing apparatus and recording/reproducing apparatus |
JP3068002B2 (ja) | 1995-09-18 | 2000-07-24 | 沖電気工業株式会社 | 画像符号化装置、画像復号化装置及び画像伝送システム |
GB9519923D0 (en) | 1995-09-29 | 1995-11-29 | Philips Electronics Nv | Motion estimation for predictive image coding |
JPH09102954A (ja) | 1995-10-04 | 1997-04-15 | Matsushita Electric Ind Co Ltd | 1つまたは2つの予測ブロックからブロックの画素値を計算する方法 |
KR0181069B1 (ko) | 1995-11-08 | 1999-05-01 | 배순훈 | 움직임 추정장치 |
GB2308262B (en) | 1995-12-16 | 1999-08-04 | Paul Gordon Wilkins | Method for analysing the content of a video signal |
KR100197368B1 (ko) | 1995-12-23 | 1999-06-15 | 전주범 | 영상 에러 복구 장치 |
JP3157101B2 (ja) | 1996-03-08 | 2001-04-16 | 沖電気工業株式会社 | 画像符号化方法及び画像符号化装置 |
US5912676A (en) | 1996-06-14 | 1999-06-15 | Lsi Logic Corporation | MPEG decoder frame memory interface which is reconfigurable for different frame store architectures |
CA2208950A1 (en) * | 1996-07-03 | 1998-01-03 | Xuemin Chen | Rate control for stereoscopic digital video encoding |
US5926226A (en) | 1996-08-09 | 1999-07-20 | U.S. Robotics Access Corp. | Method for adjusting the quality of a video coder |
US6075875A (en) | 1996-09-30 | 2000-06-13 | Microsoft Corporation | Segmentation of image features using hierarchical analysis of multi-valued image data and weighted averaging of segmentation results |
JP3967405B2 (ja) * | 1996-10-09 | 2007-08-29 | テキサス インスツルメンツ インコーポレイテツド | 画像信号の符号化方法 |
US7453490B2 (en) * | 1997-01-31 | 2008-11-18 | Gyrus Acmi, Inc. | Correction of image signals characteristic of non-uniform images in an endoscopic imaging system |
US6005980A (en) | 1997-03-07 | 1999-12-21 | General Instrument Corporation | Motion estimation and compensation of video object planes for interlaced digital video |
US5991447A (en) | 1997-03-07 | 1999-11-23 | General Instrument Corporation | Prediction and coding of bi-directionally predicted video object planes for interlaced digital video |
US6385341B1 (en) | 1997-04-17 | 2002-05-07 | Microsoft Corporation | Technique for decoding variable length data codes |
JP3351705B2 (ja) | 1997-04-25 | 2002-12-03 | 日本ビクター株式会社 | 動き補償符号化装置、動き補償符号化方法、及び記録媒体への記録方法 |
DE19721728C2 (de) | 1997-05-24 | 2001-07-12 | Byk Chemie Gmbh | Dispergiermittel für Pigmente oder Füllstoffe auf der Basis von Acrylsäurealkylester-Polymeren, Verwendung und Verfahren zur Herstellung |
JP3381827B2 (ja) | 1997-06-04 | 2003-03-04 | 富士ゼロックス株式会社 | カラー画像符号化装置およびカラー画像復号装置 |
US6359929B1 (en) | 1997-07-04 | 2002-03-19 | Matsushita Electric Industrial Co., Ltd. | Image predictive decoding method, image predictive decoding apparatus, image predictive coding apparatus, and data storage medium |
DE19730305A1 (de) | 1997-07-15 | 1999-01-21 | Bosch Gmbh Robert | Verfahren zur Erzeugung eines verbesserten Bildsignals bei der Bewegungsschätzung von Bildsequenzen, insbesondere eines Prädiktionssignals für Bewegtbilder mit bewegungskompensierender Prädiktion |
KR100244291B1 (ko) | 1997-07-30 | 2000-02-01 | 구본준 | 동영상 움직임 벡터 코딩 방법 |
US5956431A (en) | 1997-10-02 | 1999-09-21 | S3 Incorporated | System and method for fixed-rate block-based image compression with inferred pixel values |
KR100600419B1 (ko) | 1997-11-17 | 2006-07-13 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 움직임 보상된 예측 영상 부호화 및 복호화 |
JP2891253B1 (ja) | 1997-12-10 | 1999-05-17 | 日本電気株式会社 | 画像圧縮処理装置 |
KR100523908B1 (ko) | 1997-12-12 | 2006-01-27 | 주식회사 팬택앤큐리텔 | 격행주사 영상에 대한 영상신호 부호화 장치 및 그 방법 |
US5903382A (en) | 1997-12-19 | 1999-05-11 | Rockwell International Corporation | Electrodeposition cell with high light transmission |
US6501860B1 (en) | 1998-01-19 | 2002-12-31 | Canon Kabushiki Kaisha | Digital signal coding and decoding based on subbands |
KR100328417B1 (ko) | 1998-03-05 | 2002-03-16 | 마츠시타 덴끼 산교 가부시키가이샤 | 화상부호화장치및화상복호화장치, 화상부보화방법 및 화상복호화방법, 및 데이터기억매체 |
JP3856262B2 (ja) | 1998-03-09 | 2006-12-13 | 日本ビクター株式会社 | 動き補償符号化装置、動き補償符号化方法、及び動き補償符号記録媒体 |
JPH11289544A (ja) | 1998-04-02 | 1999-10-19 | Sony Corp | 動き検出装置およびその方法 |
JP3553363B2 (ja) | 1998-04-03 | 2004-08-11 | 京セラミタ株式会社 | デジタル画像読取装置 |
JPH11341496A (ja) | 1998-05-28 | 1999-12-10 | Matsushita Electric Ind Co Ltd | 画像処理方法,画像処理装置,及びデータ記憶媒体 |
US6411651B1 (en) | 1998-06-26 | 2002-06-25 | Compaq Information Technologies Group, L.P. | Method and system for distributed video compression in personal computer architecture |
JP3808241B2 (ja) * | 1998-07-17 | 2006-08-09 | 富士写真フイルム株式会社 | データ圧縮方法および装置並びに記録媒体 |
JP3606306B2 (ja) * | 1998-10-08 | 2005-01-05 | 沖電気工業株式会社 | 画像符号化装置、画像復号化装置及び画像伝送システム |
WO2000031878A1 (en) | 1998-11-20 | 2000-06-02 | Interval Research Corporation | Low cost video compression using fast, modified z-coding of wavelet pyramids |
US20020141501A1 (en) | 1998-11-20 | 2002-10-03 | Philips Electronics North America Corporation | System for performing resolution upscaling on frames of digital video |
US6418166B1 (en) * | 1998-11-30 | 2002-07-09 | Microsoft Corporation | Motion estimation and block matching pattern |
US6389072B1 (en) | 1998-12-23 | 2002-05-14 | U.S. Philips Corp. | Motion analysis based buffer regulation scheme |
JP3660513B2 (ja) | 1998-12-25 | 2005-06-15 | 沖電気工業株式会社 | 画像通信装置およびローカルデコード処理方法 |
EP1068576A1 (en) * | 1999-02-01 | 2001-01-17 | Koninklijke Philips Electronics N.V. | Descriptor for a video sequence and image retrieval system using said descriptor |
US6400763B1 (en) | 1999-02-18 | 2002-06-04 | Hewlett-Packard Company | Compression system which re-uses prior motion vectors |
US6222174B1 (en) | 1999-03-05 | 2001-04-24 | Hewlett-Packard Company | Method of correlating immediately acquired and previously stored feature information for motion sensing |
US6499060B1 (en) | 1999-03-12 | 2002-12-24 | Microsoft Corporation | Media coding for loss recovery with remotely predicted data units |
JP3302939B2 (ja) | 1999-03-12 | 2002-07-15 | アールシーエー トムソン ライセンシング コーポレイシヨン | 独立に圧縮された偶数および奇数フィールド・データ用のビデオ信号圧縮解除装置 |
US7010032B1 (en) | 1999-03-12 | 2006-03-07 | Kabushiki Kaisha Toshiba | Moving image coding apparatus and decoding apparatus |
US6381371B1 (en) | 1999-03-17 | 2002-04-30 | Hewlett-Packard Company | Method and apparatus for processing image files |
JP3591712B2 (ja) | 1999-04-02 | 2004-11-24 | 松下電器産業株式会社 | 動画送信装置及び動画受信装置 |
WO2001010135A1 (en) * | 1999-07-29 | 2001-02-08 | Mitsubishi Denki Kabushiki Kaisha | Moving vector detecting method |
US6735249B1 (en) | 1999-08-11 | 2004-05-11 | Nokia Corporation | Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding |
KR20020064888A (ko) | 1999-10-22 | 2002-08-10 | 액티브스카이 인코포레이티드 | 객체 지향형 비디오 시스템 |
US6671319B1 (en) | 1999-12-28 | 2003-12-30 | Sony Corporation | Methods and apparatus for motion estimation using neighboring macroblocks |
JP2001203897A (ja) * | 2000-01-18 | 2001-07-27 | Nec Corp | パタンマッチング符号化装置及び方法 |
JP2001251627A (ja) * | 2000-03-03 | 2001-09-14 | Matsushita Electric Ind Co Ltd | 符号化装置、符号化方法及びプログラムを記録した記録媒体 |
JP3960451B2 (ja) | 2000-03-06 | 2007-08-15 | Kddi株式会社 | シーン特性検出型動画像符号化装置 |
US6661925B1 (en) | 2000-03-22 | 2003-12-09 | Board Of Supervisors Of Louisiana State University & Agricultural & Mechanical College | Functional set compression |
US6522784B1 (en) | 2000-04-11 | 2003-02-18 | International Business Machines Corporation | Enhanced compression of gray-level images |
JP3677192B2 (ja) * | 2000-04-19 | 2005-07-27 | シャープ株式会社 | 画像処理装置 |
US6711211B1 (en) | 2000-05-08 | 2004-03-23 | Nokia Mobile Phones Ltd. | Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder |
GB2403618A (en) | 2000-05-10 | 2005-01-05 | Picturetel Corp | Video coding using multiple buffers |
KR100708091B1 (ko) | 2000-06-13 | 2007-04-16 | 삼성전자주식회사 | 양방향 움직임 벡터를 이용한 프레임 레이트 변환 장치 및그 방법 |
JP2002010265A (ja) | 2000-06-20 | 2002-01-11 | Sony Corp | 送信装置およびその方法と受信装置およびその方法 |
US6661842B1 (en) * | 2000-09-22 | 2003-12-09 | General Dynamics Decision Systems, Inc. | Methods and apparatus for error-resilient video coding |
JP4607305B2 (ja) * | 2000-09-27 | 2011-01-05 | 株式会社東芝 | 映像符号化装置及び映像符号化方法 |
US9143546B2 (en) | 2000-10-03 | 2015-09-22 | Realtime Data Llc | System and method for data feed acceleration and encryption |
US7224840B2 (en) | 2000-10-26 | 2007-05-29 | International Business Machines Corporation | Method, system, and program for error recovery while decoding compressed data |
JP3699910B2 (ja) * | 2000-10-31 | 2005-09-28 | 株式会社東芝 | データ伝送装置、データ伝送方法及びプログラム |
JP2002141806A (ja) | 2000-10-31 | 2002-05-17 | Hitachi Ltd | 可変長符号復号装置 |
WO2002056250A2 (en) * | 2001-01-10 | 2002-07-18 | Koninklijke Philips Electronics N.V. | Method and system to encode a set of input values into a set of coefficients using a given algorithm |
CN1156168C (zh) * | 2001-01-12 | 2004-06-30 | 北京航空航天大学 | 快速视频运动估计方法 |
EP1360841A1 (en) | 2001-02-06 | 2003-11-12 | Koninklijke Philips Electronics N.V. | Preprocessing method applied to textures of arbitrarily shaped objects |
WO2002071736A2 (en) | 2001-03-05 | 2002-09-12 | Intervideo, Inc. | Systems and methods of error resilience in a video decoder |
TWI241536B (en) * | 2001-03-07 | 2005-10-11 | Pts Corp | Method and apparatus for estimating motion of image region |
JP2002271788A (ja) | 2001-03-08 | 2002-09-20 | Monolith Co Ltd | 画像符号化方法と装置および画像復号方法および装置 |
JP2002290743A (ja) | 2001-03-23 | 2002-10-04 | Ricoh Co Ltd | 画像情報符号化方法、符号化装置、ディジタル複写機、ディジタルファクシミリ装置、及び、ディジタルファイリング装置 |
US6819803B2 (en) | 2001-07-02 | 2004-11-16 | International Business Machines Corporation | Faster lossless rotation of JPEG images |
JP2003046944A (ja) | 2001-08-02 | 2003-02-14 | Sony Corp | 信号処理装置および方法、記録装置および方法、再生装置および方法、記録再生装置および方法、ビデオカメラ、ならびに、映像モニタ装置 |
FR2828614A1 (fr) * | 2001-08-07 | 2003-02-14 | Koninkl Philips Electronics Nv | Methode de codage et de decodage video pour pallier les pertes de donnees dans un signal video code transmis sur un canal |
DE60141961D1 (de) | 2001-09-10 | 2010-06-10 | Texas Instruments Inc | Verfahren und Vorrichtung zur Bewegungsvektorenabschätzung |
EP2099228B1 (en) | 2001-09-14 | 2014-11-12 | NTT DoCoMo, Inc. | Coding method, decoding method, coding apparatus, decoding apparatus, image processing system, coding program, and decoding program |
US6856701B2 (en) | 2001-09-14 | 2005-02-15 | Nokia Corporation | Method and system for context-based adaptive binary arithmetic coding |
FI112424B (fi) | 2001-10-30 | 2003-11-28 | Oplayo Oy | Koodausmenetelmä ja -järjestely |
CN1897705A (zh) | 2002-01-18 | 2007-01-17 | 株式会社东芝 | 视频编码方法和装置以及视频解码方法和装置 |
JP3864098B2 (ja) | 2002-02-08 | 2006-12-27 | 日本電信電話株式会社 | 動画像符号化方法、動画像復号方法、及びこれらの方法の実行プログラムとこれらの実行プログラムを記録した記録媒体 |
US20030161398A1 (en) * | 2002-02-21 | 2003-08-28 | Meir Feder | Improving static picture quality in compressed video |
US7596179B2 (en) * | 2002-02-27 | 2009-09-29 | Hewlett-Packard Development Company, L.P. | Reducing the resolution of media data |
KR101108661B1 (ko) | 2002-03-15 | 2012-01-25 | 노키아 코포레이션 | 비디오 시퀀스에서의 움직임 부호화 방법 |
WO2003084235A1 (en) | 2002-03-28 | 2003-10-09 | British Telecommunications Public Limited Company | Video pre-processing |
US7110459B2 (en) | 2002-04-10 | 2006-09-19 | Microsoft Corporation | Approximate bicubic filter |
US7116831B2 (en) * | 2002-04-10 | 2006-10-03 | Microsoft Corporation | Chrominance motion vector rounding |
JP4355156B2 (ja) | 2002-04-16 | 2009-10-28 | パナソニック株式会社 | 画像復号化方法及び画像復号化装置 |
JP4102973B2 (ja) * | 2002-04-24 | 2008-06-18 | 日本電気株式会社 | 動画像の符号化方法および復号化方法、これを用いた装置とプログラム |
ATE352826T1 (de) | 2002-05-02 | 2007-02-15 | Fraunhofer Ges Forschung | Arithmetische codierung von transformationskoeffizienten |
AU2003246987A1 (en) | 2002-07-09 | 2004-01-23 | Nokia Corporation | Method and system for selecting interpolation filter type in video coding |
RU2321967C2 (ru) | 2002-07-15 | 2008-04-10 | Нокиа Корпорейшн | Способ маскирования ошибок в видеопоследовательностях |
KR100865034B1 (ko) * | 2002-07-18 | 2008-10-23 | 엘지전자 주식회사 | 모션 벡터 예측 방법 |
US7068722B2 (en) | 2002-09-25 | 2006-06-27 | Lsi Logic Corporation | Content adaptive video processor using motion compensation |
US20040120398A1 (en) | 2002-12-19 | 2004-06-24 | Ximin Zhang | System and method for adaptive field and frame video encoding using rate-distortion characteristics |
US20040131117A1 (en) | 2003-01-07 | 2004-07-08 | Sheraizin Vitaly S. | Method and apparatus for improving MPEG picture compression |
JP4593556B2 (ja) | 2003-01-09 | 2010-12-08 | ザ リージェンツ オブ ザ ユニバーシティ オブ カリフォルニア | 映像符号化方法及びデバイス |
JP4419458B2 (ja) * | 2003-07-14 | 2010-02-24 | リコープリンティングシステムズ株式会社 | インクジェットヘッドの製造方法 |
JP4198608B2 (ja) | 2004-01-15 | 2008-12-17 | 株式会社東芝 | 補間画像生成方法および装置 |
US20050271186A1 (en) | 2004-06-02 | 2005-12-08 | Audiopoint, Inc. | System, method and computer program product for interactive voice notification |
JP4852868B2 (ja) | 2005-04-04 | 2012-01-11 | トヨタ自動車株式会社 | 精密加工方法 |
JP4662171B2 (ja) | 2005-10-20 | 2011-03-30 | ソニー株式会社 | 符号化装置および方法、復号化装置および方法、プログラム、並びに記録媒体 |
JP2009518981A (ja) | 2005-12-08 | 2009-05-07 | ヴィドヨ,インコーポレーテッド | ビデオ通信システムでのエラー回復力およびランダムアクセスのためのシステムおよび方法 |
US7924925B2 (en) | 2006-02-24 | 2011-04-12 | Freescale Semiconductor, Inc. | Flexible macroblock ordering with reduced data traffic and power consumption |
EP2008468B1 (en) | 2006-04-20 | 2012-06-13 | Thomson Licensing | Method and apparatus for redundant video coding |
WO2007130389A2 (en) | 2006-05-01 | 2007-11-15 | Georgia Tech Research Corporation | Automatic video quality measurement system and method based on spatial-temporal coherence metrics |
US8718139B2 (en) | 2007-01-12 | 2014-05-06 | Mitsubishi Electric Corporation | Image decoding device and image decoding method |
US20090103635A1 (en) | 2007-10-17 | 2009-04-23 | Peshala Vishvajith Pahalawatta | System and method of unequal error protection with hybrid arq/fec for video streaming over wireless local area networks |
CN101414348A (zh) | 2007-10-19 | 2009-04-22 | 三星电子株式会社 | 多角度人脸识别方法和系统 |
US8130823B2 (en) | 2007-12-19 | 2012-03-06 | Broadcom Corporation | Channel adaptive video transmission system for use with layered video coding and methods for use therewith |
AU2008259744B2 (en) | 2008-12-18 | 2012-02-09 | Canon Kabushiki Kaisha | Iterative DVC decoder based on adaptively weighting of motion side information |
CA2824754A1 (en) | 2009-09-26 | 2011-03-31 | Disternet Technology Inc. | System and method for micro-cloud computing |
US8879632B2 (en) | 2010-02-18 | 2014-11-04 | Qualcomm Incorporated | Fixed point implementation for geometric motion partitioning |
US8249361B1 (en) | 2010-04-22 | 2012-08-21 | Google Inc. | Interdependent learning of template map and similarity metric for object identification |
RU2010140334A (ru) | 2010-10-01 | 2012-04-10 | ЭлЭсАй Корпорейшн (US) | Внутрикадровое режимное предсказание для видеотранскодера |
US20120082225A1 (en) | 2010-10-01 | 2012-04-05 | Qualcomm Incorporated | Selective indication of transform sizes |
US8749565B2 (en) | 2010-11-19 | 2014-06-10 | Apple Inc. | Error check-only mode |
US8630341B2 (en) | 2011-01-14 | 2014-01-14 | Mitsubishi Electric Research Laboratories, Inc. | Method for training and utilizing separable transforms for video coding |
CN103597534B (zh) | 2011-05-28 | 2017-02-15 | 伊格尼斯创新公司 | 用于快速补偿显示器中的像素的编程的系统和方法 |
US8775672B2 (en) | 2012-06-13 | 2014-07-08 | Hulu, LLC | Architecture for simulation of network conditions for video delivery |
-
2003
- 2003-11-14 US US10/713,807 patent/US8824553B2/en active Active
-
2004
- 2004-05-12 KR KR1020117005253A patent/KR101118438B1/ko active IP Right Grant
- 2004-05-12 WO PCT/US2004/015025 patent/WO2004102946A2/en active Application Filing
- 2004-05-12 KR KR1020057021588A patent/KR101140947B1/ko active IP Right Grant
- 2004-05-12 KR KR1020117005249A patent/KR101167006B1/ko active IP Right Grant
- 2004-05-12 KR KR1020117005252A patent/KR101118456B1/ko active IP Right Grant
- 2004-05-12 CN CN2012101402633A patent/CN103037214A/zh active Pending
- 2004-05-12 EP EP04752128A patent/EP1656791A2/en not_active Withdrawn
- 2004-05-12 KR KR1020117005251A patent/KR101131689B1/ko active IP Right Grant
- 2004-05-12 CA CA2525390A patent/CA2525390C/en not_active Expired - Lifetime
- 2004-05-12 CN CN2004800200197A patent/CN101454990B/zh not_active Expired - Lifetime
- 2004-05-12 JP JP2006533037A patent/JP4568887B2/ja not_active Expired - Fee Related
- 2004-05-12 KR KR1020117005250A patent/KR101133321B1/ko active IP Right Grant
-
2010
- 2010-05-26 JP JP2010121008A patent/JP5341024B2/ja not_active Expired - Fee Related
- 2010-10-25 JP JP2010239018A patent/JP5480775B2/ja not_active Expired - Lifetime
-
2012
- 2012-08-30 US US13/599,333 patent/US20120320978A1/en not_active Abandoned
- 2012-08-30 US US13/599,371 patent/US20120320992A1/en not_active Abandoned
- 2012-08-30 US US13/599,345 patent/US20120320987A1/en not_active Abandoned
- 2012-08-30 US US13/599,315 patent/US8942290B2/en not_active Expired - Lifetime
- 2012-08-30 US US13/599,360 patent/US10616576B2/en not_active Expired - Lifetime
-
2013
- 2013-06-04 JP JP2013117983A patent/JP5606591B2/ja not_active Expired - Fee Related
-
2014
- 2014-01-21 JP JP2014008689A patent/JP2014099905A/ja active Pending
-
2020
- 2020-03-24 US US16/827,864 patent/US11240498B2/en not_active Expired - Lifetime
-
2022
- 2022-01-07 US US17/570,533 patent/US20220132116A1/en not_active Abandoned
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11240498B2 (en) | Independently coding frame areas | |
US6438168B2 (en) | Bandwidth scaling of a compressed video stream | |
TWI436287B (zh) | 畫像編碼方法及裝置 | |
US9414086B2 (en) | Partial frame utilization in video codecs | |
US20060251330A1 (en) | Hybrid video compression method | |
US20040028282A1 (en) | Coding method, decoding method, coding apparatus, decoding apparatus, image processing system, coding program, and decoding program | |
US20040264576A1 (en) | Method for processing I-blocks used with motion compensated temporal filtering | |
JPWO2008084745A1 (ja) | 画像符号化装置および画像復号化装置 | |
KR20070026451A (ko) | 모션 예측을 사용하여 디지털 이미지 데이터를 압축하는방법 및 장치 | |
KR20040048289A (ko) | 트랜스코딩 장치 및 방법, 이에 사용되는 타겟비트할당 및픽처 복잡도 예측 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140401 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140630 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140715 |
|
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: 20140729 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140826 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5606591 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |