JP2008504734A - デジタル映像圧縮コマンド優先度 - Google Patents

デジタル映像圧縮コマンド優先度 Download PDF

Info

Publication number
JP2008504734A
JP2008504734A JP2007518086A JP2007518086A JP2008504734A JP 2008504734 A JP2008504734 A JP 2008504734A JP 2007518086 A JP2007518086 A JP 2007518086A JP 2007518086 A JP2007518086 A JP 2007518086A JP 2008504734 A JP2008504734 A JP 2008504734A
Authority
JP
Japan
Prior art keywords
pixel
encoding
command
color
run
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007518086A
Other languages
English (en)
Other versions
JP5028260B2 (ja
Inventor
ロバート エル. ジルジェン、
Original Assignee
アボセント コーポレイション
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 アボセント コーポレイション filed Critical アボセント コーポレイション
Publication of JP2008504734A publication Critical patent/JP2008504734A/ja
Application granted granted Critical
Publication of JP5028260B2 publication Critical patent/JP5028260B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length 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/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • 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
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (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)
  • Image Processing (AREA)

Abstract

【課題】デジタル映像データストリームを圧縮するための映像圧縮システムを提供する
【解決手段】デジタル映像データストリームを圧縮するための映像圧縮システムを開示する。デジタル映像データストリームに適用可能なときは常に公知のランレングス符号化を適用する(62)。ランが識別されないときは、エンコーダは異なる2色だけで一連の連続画素が識別可能かどうかを判定し、そうである場合はメイクシリーズ・コマンドを生成して、ビットが連続する場合には2画素色に対応する2進数値ストリームとして符号化されたビットを備えるバイトを生成する(64)。メイクシリーズ・コマンドをメイクシリーズ・ビットのバイトに再び適用するときに、適用可能なランレングス符号化によってメイクシリーズ・コマンドが先取りされること以外は、連続するビットで満たされる分だけのバイトに対して、メイクシリーズ・コマンドが継続する(65)。
【選択図】図6

Description

本発明は、コンピュータ・データ処理に関し、特に、コンピュータ映像圧縮に関するものである。
(関連出願に対するクロスリファレンス)
本出願は、米国特許出願10/260,534「映像圧縮システム」、2002年10月1日出願、発明者Dambrackas(「Dambrackas出願」)に関し、該出願における開示は、参照により、本願開示の一部を成す。
Dambrackas出願は、コンピュータ画面上で典型的に発生する冗長性の利点を利用するために最適化され、また、リアルタイムでの対話型コンピュータ・ユーザが受け入れ可能な映像損失のタイプの利点を利用するために最適化された新しい映像圧縮システムについて開示する。本出願においては、Dambrackas出願において熟知されている点(familiarity)が修正されるので、Dambrackas出願の詳細の全てを本願で繰り返す必要はない。本願に記載された例示的実施形態の1つにおいては、コンピュータ映像の捕捉された(captured)フレームは、ユニークに選択された5種類の異なるコマンドに符号化される。これらのコマンドは、捕捉された映像を最も効率的に圧縮可能な性能に基づく順に選択されたものである。本願で説明される5つのコマンドは、(1)前フレーム(earlier frame)から古い画素をコピーするもの、(2)左側から画素をコピーするもの、(3)上から画素をコピーするもの、(4)2色セット(2-color set)を使って一連の画素を生成するもの、(5)特定色を使って1つ或いは複数の画素を生成するものであった。Dambrackas出願は、各コマンドを階層構造で使うことによってユニークな有効性が得られることを認識するものであった。
Dambrackas出願によれば、make pixel(メイクピクセル)コマンドは、階層位置で最も低い位置をとり、続いて階層構造を上る順に:make series(メイクシリーズ)コマンド、copy above(コピーアバブ)コマンド、copy left(コピーレフト)コマンド、及びcopy old(コピーオールド)コマンドである。換言すれば、Dambrackasシステムを使って映像を符号化するエンコーダは、まず、copy oldコマンドの作成を試み、それが適していなければ、copy leftコマンドの作成を試み、以下、copy aboveコマンド、次に、make seriesコマンド、そして最後には、make pixelコマンドに頼ることになる。また、Dambrackas出願は、copy oldコマンド, copy leftコマンド, copy aboveコマンドのうち、2つか或いはそれ以上の数のコマンドが同時に現在の画素に適している場合にのみ、階層構造の優先度が適用されるべきことも認識するものであった。さらに、Dambrackas出願は、copy(コピー)コマンド(copy oldコマンド、copy leftコマンド、或いはcopy aboveコマンド)が適している限り、エンコーダが、copyコマンドを、適さなくなるまで使い続けるべきであることを開示する。
本発明は、圧縮コマンドのための代替的な優先順づけ(prioritization)システムを提供することによってDambrackasの映像圧縮システムを改良するものである。
本発明の現時点で好適な実施形態において、コマンドの優先度(priority)は、ランレングスコマンドがあらゆる他のコマンドによっては先取り(pre-empted)され得ないことを除いて、Dambrackas出願で開示されたものと同じである。要約すると、(1)ランが続く(ongoing)場合には、ランレングスコマンドはその他のコマンドによって先取りされず、(2)いずれかのランレングスコマンドを使って第2のバイト或いは後続のバイトを表現する際に、make seriesコマンドが、第2のバイト或いは後続のバイトへと継続しないように、ランレングスコマンドには、最高の優先度(highest priority)が与えられる。ランレングスコマンド及びmake seriesコマンドの全てが、画素の圧縮を生成することに失敗する場合は、最後の頼みの綱として、make pixelコマンドが生成される。
本発明は、コンピュータ映像を通信チャネルに送出するために、いかなるハードウエア或いはソフトウェアにより実施されてもよく、これには介在(invetvening)ネットワークも含まれる。この1つの例示的実施形態が図1に示されるが、これに限定されるものでなく、一例として記載されるに過ぎない。図1において、システム10は、サーバ12のラック(rack)内に示されているKVMシステム11を備える。KVMシステム11は、あらゆる標準タイプのデジタルKVMシステムであってよく、例えば、Alabama州HuntsvilleのAvocent Corporation製の所謂DS1800であってよい。サーバ12は、KVMシステム11を介して、現地オペレータ17や遠隔のオペレータ19などの遠隔のユーザと通信する。図1の実施形態では、サーバ12がラック内にあるコンピュータサーバとして示されているが、サーバ12は、ブレード(blades)、スタンドアロン(standing)PC、或いは、KVMシステム11と通信するその他のコンピュータのセットでもよい。さらに、本発明では、KVMシステム自体を必要とするものでなく、あらゆる種類のデジタル映像源にも対応するあらゆるデジタル映像環境に実装し得る。
例えば、KVMシステム11は、選択されたサーバ12から映像情報を受けとり、デジタル信号を介してその映像情報をシステム10の残りの部分に送る。また、KVMシステム11及びサーバ12は、KVMシステム11’及びサーバ12’と共に共通ラックに収納することができ、同様のサーバ選択機能を提供する。現地オペレータ17や遠隔のオペレータ19などのオペレータは、キーボードやマウスの信号やその他の入力デバイスの信号を、前もって選択されたサーバ12/12’向けKVMシステム11/11’に入力すると、サーバは、あたかもオペレータ17/19のキーボードとマウスが選択されたサーバに直接接続されているかのようにキーボードとマウスの信号を受信する。こうしたKVMシステムのオペレーションは、本業界では公知のことであるので、本願で詳細には説明されない。KVMシステムは、キーボードとマウスから選択されたサーバへ入力があるとそれに応答して、選択されたサーバから映像出力を受けとり、この映像出力を特定のオペレータ17/19へ送る。そして、オペレータ17/19のモニタは、選択されたサーバ12/12’から戻された映像信号を表示する。
KVMシステム11/11’とオペレータ17/19間には、多様な形態のデジタル通信ラインが敷設されていてもよい。そのような一例を図1に示す。イーサネット(登録商標)スイッチ14及び16は、ルータ15と通信して現地のオペレータ17とKVMシステム11/11’との間の接続を提供する。代替的に、遠隔のオペレータ19は、TCP/IPネットワーク18(或いは、その他の種類のネットワーク)を介してルータ15、イーサネット(登録商標)スイッチ14、KVMシステム11/11’と示されるよう連絡する。モニタ(例えば、オペレータ17/19のもの)と映像源(例えば、KVMシステム11/11’)との間で映像情報を通信する他の代替的実施形態は,本発明の範囲内で想到することができる。オペレータ17/19とKVMシステム11/11’との間にあるデジタルシステムの種類は、本発明にとって重要なことではなく、オペレータ17/19とKVMシステム11/11’間のデジタルプロトコルも同様である。
好適な実施形態によれば、本発明は、KVMシステム11/11’と、ローカルオペレータ17或いは遠隔のオペレータ19に対する介在デジタル通信チャネルとを介して、サーバ12/12’から送られる映像のための符号化/復号化プロトコルを提供する。一般的に、サーバ12/12’は、サーバ12/12’によって生成され、KVMシステム11/11’と適当なオペレータ17/19との間のデジタル通信経路に沿って通信されるように意図された映像を符号化するエンコーダを備える。同様に、オペレータ17/19は、適切なモニタ上で映像を再生するために、デジタル通信チャネルから受信されたデジタル映像信号を復号化するデコーダを含む。例示的実施形態の一般表現を図7に示す。KVMシステム11は、本発明に基づく映像を符号化するエンコーダ70を内蔵し、ワークステーション19は、映像を表示させるために複号化するデコーダ71を内蔵する。
サーバ12/12’のエンコーダやオペレータ17/19のデコーダがハードウェア或いはソフトウェアのいずれかであるかは、本発明にとって重要なことではなく、いずれにおいてもハードウェア或いはソフトウェアのいずれかで実現される。本開示が、エンコーダ/デコーダのためのハードウェア或いはソフトウェアの要件に言及するか、暗示するという範囲において、本発明は、これらに限定されることはない。
図2から図4は、例示的実施形態で提供されるコマンドのタイプを示す。図2は幾つかのランレングスコマンドの例を示し、図3はmake series(メイクシリーズ)コマンドを示し、図4はmake pixel(メイクピクセル)コマンドを示す。
まず、図4のmake pixelコマンドは、最もデータに特化した(data intensive)コマンドであるので最も好ましくなく、図4に示されるフレーム内の位置の現在の画素22は、2バイトの make pixel(メイクピクセル)(MP)コマンドによって表される画素色によって定義される。make pixelコマンド(図2と図3で参照される他のコマンドと同様)の詳細については、本願において一般論として説明されるが、これらのコマンドがどのように動作するかに関する詳細と、それらの適切な代替コマンドについては、Dambrackas出願に記載されている。一般的に、make pixelコマンドは、2バイト(two-byte)コマンドによって5ビットの赤、5ビットの緑、5ビットの青を意味する15ビットの色を提供する。図4に示すように、その2バイトは、第1の制御ビットとそれに続く15色ビットから構成される。make pixelコマンドは、1つの色画素を記憶するために2バイトの情報を必要とするため圧縮が不十分である。このため、make pixelコマンドは、図2−図4に示す様々なコマンドの中で最も好ましくないものである。
ここで図3を参照すると、次に最も好ましくないmake series(MS)コマンドが示されている。make seriesコマンドは、エンコーダが2色の選択色(two color selection)だけから以前に決定した一連の画素を符号化する試みを行う。基本的には、後に、エンコーダは、現在の画素21と特定の数の後続画素について、その全ての画素が異なる2色のうちの1つから来ることを決定する。結局、コンピュータ映像では、テキスト量と、(例えば、TV映像と対立する)コンピュータ映像に存在するその他の2色映像を理由として、make seriesコマンドを頻繁に適用可能である。make pixelコマンドのフォーマットを図3に示す。このフォーマットは、2色ビットの要件に適合する連続画素の長さに依存して、1バイト、2バイト、3バイト、或いは、より多いバイト数のものであってよい。図3の例では、make seriesコマンドは、11画素を符号化するための2バイトである。第1のバイトの第1の4ビット(0111)は、次のコマンドがmake seriesコマンドであって、現在のバイト内のmake seriesコマンドの次に第2の後続バイトが続くことをデコーダに知らせる制御コードである。make series制御コードがその情報を規定する方法は、Dambrackas出願に開示されているため、本願では繰り返さない。make series符号(code)の第2バイトには、次に続くのがmake seriesバイトではなく、7画素ビットが続くことをデコーダに知らせるための第1の制御ビットを含む。結局、図3の例のためには、デコーダは、make seriesコマンドを連続する11ビットとして読むことができる。ここで、この11ビットは、その状態から2色グループの2色のうちの一方の色或いは他方の色として識別される。
make seriesコマンドにおいて、一連のデータ(a series)は、4ビット(図3の第1バイトの4個の「C」)と、11ビット(図3の2バイト内のその4プラス7個の「C」)と、或いは、後続バイトごとに付加的な7ビットの他の組み合わせから構成可能である。従って、本例のmake seriesコマンドは、4ビット、11ビット、18ビット、25ビットなどでよい。ここで、各インクリメントの増加値は、make seriesコマンドで付加的な7ビット(バイトあたり)である。従って、make seriesコマンドの最短バイト数は1であり、最長の長さは無制限である。結果として、Dambrackas出願によれば、make seriesコマンドは、白背景上の黒テキストなどの2色の不規則パターンを符号化するためには非常に重要である。
make seriesコマンドは、ある面では効率的であるが、その他の面では非効率的である。まず、図3に示されているように、1バイト・コマンド(single byte command)は、4画素を符号化する。このような1バイトは、その直後にmake seriesバイトが続かない場合、わずか8:1の圧縮比しかもたらさない(1バイトのコマンドでは4:16ビット画素を符号化する)。第2に、より効率的な複数バイト(multi-byte)バージョンのmake seriesコマンドを使うために、正確な画素数(4,11、18、25、・・・)を符号化する必要がある。このことは、7画素の処理の終了後にのみ圧縮が成功したかどうかがわかることを意味する。このためハードウェアでの実現がやっかいでありコマンドの優先順位づけが困難になる。
ランレングス(run length)・コマンドについて図2を使って説明する。ランレングス・コマンドは、現在の画素20に、現在の画素色と前に識別された他の画素との間に特定の相関が見出し得ることを認識する。一例として3つのランレングス符号化コマンド、copy old(コピーオールド)コマンド、copy left(コピーレフト)コマンド、copy above(コピーアバブ)コマンドを図2に示す。copy old(コピーオールド)(CO)コマンドでは、フレーム番号2内の現在の画素20が、フレーム番号1である前フレームの同じ位置にある画素と同じ画素色であるとして識別される。この場合は、前のフレームの古い画素を参照するだけで、make pixelコマンド(図4)によるよりも効率的に、現在の画素20を識別することができる。従って、デコーダエンジンは、「古い画素をコピーせよ」ということを通知されるだけであって、デコーダエンジンは、現在の画素色20が何であるかを知る必要がない。次に、このエンジンは、前のフレーム(フレーム番号1)からその色を検出する。さらに、Dambrackas出願で開示されているように、いったん現在の画素20が、前フレーム(CO)内の同じ画素位置と相関を有すれば、その後、同色の連続画素数をカウントすることによって効率が非常に向上する。図2で示されるように、COがOOORRRRRであるとして、デコーダエンジンに与えられるコマンドは、copy oldコマンドを識別するための3個のフロント(front)画素(OOO)と、デコーダエンジンが同色としてコピー可能な画素数を示す後続の5画素(RRRRR)とを備える。copy oldコマンドをどのように実現できるかと、その代替的実施形態については本願では説明しないが、Dambrackas出願にその記述がある。
また、図2には、copy above(CA)コマンドとcopy left (CL)コマンドとが示されている。Copy aboveコマンド及びcopy leftコマンドが、現在の画素20に対して異なる位置関係を持つことを除いて、copy aboveコマンド及びcopy leftコマンドは、copy oldコマンドと同様に機能する。copy aboveコマンドでは、現在の画素20が、その真上の画素との関係から識別され、その後続のデコーダエンジンが同色からコピー可能な数の画素(RRRRR)が後続する。同様に、copy leftコマンドは、現在の画素20が、この画素の直ぐ左隣の画素との関係から識別される。本発明は、図2で説明されたランレングスコマンドだけに限定されることはなく、現在知られているか、或いは、将来発見されるであろうと考えられるあらゆる他のランレングスコマンドに適用可能である。
本発明に係る現在の時点で好適な実施形態において、コマンドの優先順位が、変更されて、他のコマンドがいかなるランレングスコマンドをも先取りしないように、ランレングスコマンドに最高の優先順位を与える。複数のラン・タイプ(run type)がアクティブである(即ち、現在の画素に適用される)場合は、最大の画素カウント値をもつランが、最高の優先順位を持つ。ランレングスコマンド間に関連(tie)がある場合は、copy oldコマンドは、最高の優先順位を持ち、copy leftコマンドは次に高い優先順位を持ち、copy aboveコマンドは最も低い優先順位を持つ。ランレングスコマンドによる先取り(preemption)は、MSコマンド自体だけではなく、現在のMSコマンドに加えられ得る全ての後続バイトにも適用される。MSコマンドが、4画素コマンドを生成でき、他に利用可能なランレングスコマンドが、同じ4画素を符号化できない場合は、MSコマンドが生成される。次の7画素がMSコマンドに対して1バイトの拡張(one byte extension)を生成するために使用し得、3つのランレングスコマンドのいずれも同じ7画素を表すために使用できない場合に限って、この拡張が生成される。次の7画素がMSコマンドに対して1バイトの拡張を生成することができ、利用可能なランレングスコマンドが同じ7画素を表せない場合に、MSコマンドへの1バイト拡張が適用される(図3に示される2バイトコマンドと同様)。同じ規則を、MSコマンドに対する拡張された全ての第2の後続のバイトの拡張に適用可能である。即ち、第2の或いは後続のMSバイト拡張が利用される前に、第2の或いは後続のバイトとして生成される前にランレングスコマンドのうちの一つが適用されるか否かを判断するために、MSコマンドに対する全ての第2の後続する拡張がテストされる。
無論、ランレングスコマンド及びMSコマンドが、画素の圧縮の生成に失敗した場合は、MPコマンドが、最後の頼みの綱として生成される。
本願における優先順位づけの第1の例示的実施形態を図6に示す。ここでは、エンコーダ70(図7)は、KVMシステム11によって選択されたサーバの映像プロセッサから映像を受信するスタートステップを開始する。映像カード(video card)によって生成された第1の画素は、その他の画素と無関係なので(何故ならば、それは最初で唯一のものであるからである)、第1のステップ61は、図4に示されているような画素を生成しなければならない。従って、2バイトの make pixelコマンドが、第1のステップ61で生成される。その後、エンコーダは、いずれかのランレングス符号化(RLE)コマンドが次の後続の画素に適用されるか否かについて調査する。(無論、サーバによって生成された第2の画素に対しては、適用可能なランレングスコマンドだけがcopy left(CL)コマンドとなる)。ステップ62では、エンコーダが、ランレングスコマンドを次の画素に使えることを決定した場合、ランレングスコマンドが、その画素及びこれと同色が適用される後続画素「RRRRR」に使用される。従って、ステップ63では、例えば、図2のCO, CL, CAの形式のうちの1つに基づくランレングス符号化が、エンコーダ70によって生成される。ステップ63のランレングス符号化後に、次の画素が検索され、ステップ62が繰り返される。
いったん、ステップ62のランレングス符号化の調査で、ランレングス符号化が次の画素に適用されないことが決定されると、ステップ64に進んで、2色シリーズ(two color series)コマンドが次の後続する画素セットに適用されるかどうかに関して調査される。make series (two-color series)コマンドが、次画素と後続画素用に生成可能な場合、ステップ64では、make seriesコマンドが、最小数のバイト用に生成される。ステップ64において、この最小数のバイトは、ランレングス符号化コマンドを適用することはないが、make seriesコマンドが適用されるバイト数によって規定される。従って、ステップ64において、make seriesコマンドが一連の4つの2色ビットに適用され、その後ランレングス符号化が次の後続ビットに適用される場合には、ステップ64の結果は、最小バイト数が、一連の4つの2色ビット用の1となる。従って、処理はステップ62に戻り、そこで、ランレングス符号化が、次に後続する画素のために使用される。
しかしながら、ステップ64で第1の4ビットが識別されて、次の7ビットがランレングスの要件は満たさないがmake seriesの要件は満たす場合には、make seriesステップ65では、一連の11の2色ビットのための少なくとも最小の2バイトが生成される。ステップ64及びステップ65では、次の後続の7ビットのセットの各々に対して、同じ調査が続けられるので、make seriesコマンド65は、最少数のmake seriesバイトを生成するだけである。尚、ステップ62/63では、そのバイトに対してランレングス符号化コマンドは使用され得ない。
最後に、ステップ62で、次の画素にいかなるランレングス符号化も適用されず、ステップ64で、次の画素(或いは次のバイト内の画素のセット)にいかなるmake series コマンドも適用できない場合には、フローはステップ61に戻り、その特定の画素のためにmake pixelコマンドが使用される。上のステップ62に言及した部分で説明したが、次の画素は、ステップ62に移行し、ランレングス符号化コマンドが画素に適用されるかどうかが決定される。上記の図6の説明は、エンコーダについてなされている。復号処理においては、デコーダ71は、図6で示される符号化ステップで生成されたバイト・ストリームを受信し、エンコーダで復号された画素色を検索する。デコード処理のために、コマンド優先順位に関する決定は不要である。コマンドストリームは、デコーダに対して正確にどのように画素を描画するか(render)を指令する。
本発明の代替的実施形態を、図5Aと5Bに示す。本実施形態では、エンコーダ70は、ステップ30で処理を始め、ステップ31でサーバの映像カードから受けとった第1の画素に対するmake pixelコマンドを使用する。ステップ32では、エンコーダ70は、次の画素を読み、映像を圧縮する方法を探し始める。エンコーダは、ランレングスコマンドの調査の各々(ステップ33、34、35)とmake seriesコマンドの調査(ステップ36)とを並行して実行する。しかしながら、いったん適当な数の画素が読まれて、1つのmake seriesバイトが充填(fill)されると、make seriesコマンドの調査のみが行なわれることを理解することは重要なことである。次に、適用されるコマンド、即ち、現在の画素を成功裡に符号化できて適用可能なコマンドが、次の画素について試される。全コマンドがその画素を符号化できない場合は、どのコマンドが前の画素まで成功していたかを決定する。コマンド優先順位の階層構造(command priority hierarchy)は、これらの残りのコマンドのうちのどれが、その地点(that point)までに読まれた画素の全てに対して適用されるかを指示するものである。
ステップ33では、エンコーダ70は、最も効率的な圧縮技術であるcopy oldコマンドを、現在の画素に適用するかどうかを調査する。ステップ33の調査の一部には、図2で示すcopy oldコマンドに対する条件、即ち、現在の画素20が、前のフレームの同じ位置にある画素と同じ色であること、が充足されるか否かを決定することを含む。copy oldコマンドが現在の画素に適用される場合は、処理はステップ37からステップ38に進む。ステップ38で、コマンド優先順位から、copy oldコマンドが、適用されるその他のコマンドと比べて、最長のランレングスを提供することが確認されると、ステップ39で、エンコーダ70は、copy oldコマンドを適用し(図2に示される”OOORRRRR”コマンドを生成する)、ステップ32で次の画素を読む。
ステップ34で、エンコーダは、2番目に最も効率的な圧縮技術であるcopy leftコマンドが現在の画素に適用されるかどうかを調査する。copy leftコマンドを現在の画素に適用する場合は、処理はステップ37からステップ38へ進む。ステップ38で、コマンド優先順位によって、copy leftコマンドが適用される最も効率的なコマンドであることが確認されると、ステップ39で、エンコーダは、copy leftコマンドを適用して、ステップ32で、次の画素を読む。
ステップ35では、copy aboveコマンドの調査が行われる。エンコーダは、copy aboveコマンドが適用されるかどうかを調査し、また、適用されるcopy oldコマンド、copy leftコマンド、copy aboveコマンド、make seriesコマンドの中でcopy aboveコマンドが最も効率的なランレングス符号化であるかどうかを確認する。copy aboveコマンドを現在の画素に適用する場合、処理はステップ37からステップ38に進む。ステップ38で、コマンド優先順位から、copy aboveコマンドが、適用されるコマンドの中で最も効率的なコマンドであることが確認されると、ステップ40で、エンコーダは、copy aboveコマンドを適用し、ステップ32で、次の画素を読む。
図5Aのステップ36と、図5Bにさらに完全に示されているように、make seriesコマンドを現在の画素に適用する場合は、処理はステップ37からステップ38に進む。make seriesコマンドが、現在の画素に適用されるコマンドの中で最も効率的なコマンドであるとステップ38でコマンド優先順位から確認された場合は、ステップ39で、make seriesコマンドが適用される。
ステップ37では、ステップ33/34/35/36のいずれかコマンドが現在の画素に適用されるかどうかが決定され、これらのコマンドのいずれも適用されず、現在の画素までに対して以前に成功したコマンドがなかった場合は、最後の頼みの綱として、ステップ40でmake pixelコマンドが適用され、処理はステップ32に戻る。
図5Bに示すmake seriesコマンドの調査とその適用の場面では、ステップ41で、まず、エンコーダは、前方の4画素を読み、1つのmake-seriesバイトを充填する(fill)。次に、ステップ42では、make seriesコマンドがこれらの4画素に適用されるか否かが決定される。換言すれば、ステップ42では、エンコーダは、これらの4画素が2色だけならなるグループによって全て規定されるかどうかを決定する。ここで、この2色とは、以前の2つのユニークに色付けされた画素によって前もって定義されたものである。ステップ42で、make seriesコマンドがそれらの4画素に適用されない場合は、ステップ54に示すように、make seriesコマンドの調査とその適用処理が終了し、処理は、その後図5Aに示されるように、ステップ36からステップ37に進む。make seriesコマンドが適用される場合は、次にステップ43で、エンコーダは、ランレングス符号化コマンドが4画素のすべてに適用されるかどうかに関する調査を行なう。そうである場合は、ステップ44で、ランレングス符号化が、これらの4画素を表現するために使用される。ステップ43の調査で、ランレングス符号化が4画素の全てに適用されないと確認された場合は、ステップ45で、make seriesコマンドはバッファされ(buffered)、処理はステップ46に進む。ステップ46では、エンコーダは、次の7画素を読み、make series列(progression)の第2の後続のバイトを充填する。次に、ステップ47で、エンコーダは、make seriesコマンドが7画素の第2の/後続のバイトに適用されるかどうかを決定する。これが7画素の全てに適用される場合は、処理はステップ50に進む。しかしながら、そうでない場合は、ステップ48で、バッファされたコマンドが発行される。ステップ50では、エンコーダは、あらゆるランレングス符号化コマンドが7画素の全てに適用されるかどうかに関して調査する。そうである場合は、ステップ52で、バッファされたコマンドが発行され、ステップ53で、ランレングス符号化が適用されて7画素の全てが表現され、次にステップ41に戻って前方の4画素を読む。7画素の全てに対してランレングスコマンドが適用されない場合は、ステップ49で、拡張ビット(extension bit)が設定されバッファされたコマンドが発行され、ステップ51に進む。Dambrackas出願には詳細に記載されているように、コンティニュー・ビット(continue bit)とも呼ばれる拡張ビットは、現在のコマンドがデータの次のバイトに拡張しているかどうかを示す。ステップ51で、拡張ビットが設定されていない新しいmake-seriesコマンドがバッファされ、次にステップ46に戻って、次の7画素を読み進める。本実施形態において、MSコマンドの第2の/後続のバイトによって符号化された7画素の全てを1つのRLEコマンドによって符号化できる場合に限って、ランレングス符号化コマンドは、MSコマンドの第2の/後続のバイトを阻止する(interrupt)ことができる。
図5及び上記の記載について考慮すると理解できることであるが、本例示的実施形態は、可能な限りCO、CL、或いは、CAコマンドを介してランレングス符号化を行い、CO/CL/CAコマンドのうちのいずれか1つを所定の画素に実際に適用しようとする場合に、CO/CL/CAコマンドの各々を連続して適用する際の優先度を与えるものである。さらに、いったんmake seriesコマンドが入力されると、後続のMSバイトに対するmake seriesコマンドの適用は自動的には継続されないが、後続の各バイトに対するコマンドの評価がなされて、後続のMSコマンド・バイトに代えて別のランレングス符号化コマンドが使用可能か決定される。いったん、MSコマンド分析中に、画素に対するランレングス符号化が見つかると、以前に構成されたMSコマンドバイトが集められ(assembled)、ステップ33/34/35でより効率的なランレングス符号化コマンドの処理に戻る。
従って、本発明は、最後のコマンドが送信されてから、画素全体を最も効率的に符号化するコマンドを使うという目標を新たなコマンド優先度に提供するものである。コマンドの優先度は、画像が2色だけを含む場合に、画像の広い部分(large section)を占有するmake seriesコマンドに関しては特に重要なものになる。MSコマンドにそれらの広い部分を占有させるのではなく、MSコマンドバイトがさらに追加される前に、より高い効率を提供するランレングス符号化が、適用され得るか否かが調べられる。
本発明の代替的な例示的実施形態では、MSコマンドの第2の/後続のバイトによって符号化される所定数の7画素が、1つのRLEコマンドで符号化可能な場合は、RLEコマンドが、MSコマンドの第2の/後続のバイトを阻止する。
ランレングス符号化コマンドが、第2の/後続のMSコマンドバイトを阻止する場面で、効率の度合いの変動を提供する多様な代替的な実施形態が想到され得る。
本発明を現在最も実践的な実施形態と好適な実施形態に基づいて説明したが、本発明は開示した実施形態に限定されることはなく、添付の請求項の要旨と範囲内にある様々な変更構成と等価な構成を含むものであることを理解されたい。
本映像符号化を実施するシステムの一例を示す図である。 本発明の好適な実施形態で使用される5個のコマンドを示す映像フレームの模式図である。 本発明の好適な実施形態で使用される5個のコマンドを示す映像フレームの模式図である。 本発明の好適な実施形態で使用される5個のコマンドを示す映像フレームの模式図である。 本発明の例示的実施形態における5個のコマンドの問い合わせと適用を示すフローチャートである。 本発明に係る優先順位づけの他の例示的実施形態である。 図5と図6の例示的実施形態を実施するための他の構成例である。
符号の説明
11 KVMシステム
11’ KVMシステム
12 サーバ
12’ サーバ
15 ルータ
17 現地のオペレータ
19 遠隔のオペレータ

Claims (20)

  1. 少なくとも第1、第2、及び第3の符号技術の階層構造を構築するステップと、ここで、前記符号技術のうちの1つはランレングス符号化の形態であり、前記符号技術のうちの他の1つは、ちょうど2色の状態の、対応するビットに基づく符号化であり、
    少なくとも1つの画素色を読むステップと、
    符号技術の前記階層構造内で最高位の符号技術を優先して、前記第1、第2、及び第3の符号技術から選択された1つを適用するステップと、
    前記第2の符号技術を使用して前記1つの画素を符号化する際に、次の一連の画素色が前記第1の符号技術に適している場合に前記第2の符号技術を妨げ、前記第2の符号技術に代えて前記第1の符号技術によって前記次の一連の画素色を符号化するステップとを含む
    ことを特徴とするデジタル映像符号化方法。
  2. 前記第1の符号技術はランレングス符号化であり、一旦選択されると、前記ランレングス符号化が可能な数だけ、フレーム内で連続する画素色に対して利用される
    ことを特徴とする請求項1に記載の方法。
  3. 前記第1の符号技術はランレングス符号化であり、一旦選択されると、前記ランレングス符号化が可能な数だけ、フレーム内で連続する画素色に対して利用され、
    前記第2の符号技術はビットに基づく符号化であって、一旦選択されると、前記ビットに基づく符号化の次のバイトを次の連続する画素色に適用するときで、かつ前記第1の符号技術を利用して前記ビットに基づく符号化の次のバイトを符号化できないときに限って利用される
    ことを特徴とする請求項1に記載の方法。
  4. 前記第1の符号技術は、複数の異なるランレングス符号化技術から選択したものである
    ことを特徴とする請求項1に記載の方法。
  5. 前記異なるランレングス符号化技術は、前のフレームから画素色をコピーし、左側の前の画素から画素色をコピーし、上の画素色から画素色をコピーすることを含む
    ことを特徴とする請求項4に記載の方法。
  6. 前記階層構造を構築するステップは、前記第1の符号技術の中で異なるランレングス符号化技術間のサブ階層構造を構築することを含む
    ことを特徴とする請求項4に記載の方法。
  7. (1)前記異なるランレングス符号化技術から選択された一つを使って前記少なくとも1つの画素色を符号化するときと、及び
    (2)前記ランレングス符号化直後に、
    前記異なるランレングス符号化技術から選択された同じものを使って少なくとも1つの次の画素色を符号化可能であって、前記異なるランレングス符号化技術間に構築されたサブ階層構造を先取りし、前記異なるランレングス符号化技術から選択された同じものを使って前記少なくとも1つの次の画素色を符号化する
    ことをさらに含むことを特徴とする請求項6に記載の方法。
  8. 現在の画素に対して、少なくとも一つの所定のランレングス符号化技術を使って前記現在の画素を符号化可能かどうかを確認するステップと、
    (a)少なくとも一つの所定のランレングス符号化技術を使って前記現在の画素が符号化可能である場合に、少なくとも前記現在の画素をランレングス符号化するステップと、
    (b)少なくとも一つの所定のランレングス符号化技術を使って前記現在の画素が符号化できない場合に、メイクシリーズ・バイトを充填するために十分な画素を読み、2画素色だけで前記現在の画素と所定数の後続画素とを描画可能かどうかを決定するステップと、
    (i)2画素色だけで前記現在の画素と所定数の後続画素を描画可能である場合に、前記現在と後続の画素色に対応する一連の2進数のビット状態を使って、前記現在の画素と前記所定数の後続の画素の数を符号化するステップを含み、
    前記所定数の後続の画素は、少なくとも一つの前記所定のランレングス符号化技術によって符号化できない現在の画素に続く画素の全てである
    ことを特徴とするデジタル映像情報ストリームの圧縮方法。
  9. (b)(i)の後に、(ii)2画素色のみで前記現在の画素と所定数の後続の画素の描画が不可能な場合は、前記現在の画素を、前記現在の画素色を識別する1つ以上のバイトに符号化する
    ことを特徴とする請求項8に記載の方法。
  10. 前記少なくとも一つの所定のランレングス符号化技術は、前記現在の画素を、前フレーム内の対応する画素からコピーすることを含む
    ことを特徴とする請求項8に記載の方法。
  11. 前記少なくとも一つの所定のランレングス符号化技術は、前記現在の画素を、前記現在の画素と確立された位置関係を有する現在のフレーム内の画素からコピーすることを含む
    ことを特徴とする請求項8に記載の方法。
  12. 前記少なくとも一つの所定のランレングス符号化技術は、古い画素を前フレームからコピーし、前記現在の画素の左の画素をコピーし、前記現在の画素の上の画素をコピーすることを含む
    ことを特徴とする請求項8に記載の方法。
  13. (a)においてランレングス符号化した後で、前の画素ラン用に使用されるのと同じ所定のランレングス符号化技術を使って次の画素を符号化できるかどうかを決定し、
    前記同じ所定のランレングス符号化技術を使って前記次の画素が符号化可能な場合は、前記同じ所定のランレングス符号化技術を使って前記次の画素を符号化することをさらに含む
    ことを特徴とする請求項12に記載の方法。
  14. コピー・コマンド、2色シリーズ・コマンド、個別の画素色コマンドを含む符号化コマンドの階層構造を構築するステップと、
    現在の画素色を読むステップと、
    コピー・コマンドが前記現在の画素色に適用可能であるかどうかを決定して、そうである場合は、前記コピー・コマンドを、前記現在の画素色に適用し、さらに前記コピー・コマンドが適用されるだけの数の連続する後続画素色に適用するステップと、
    確立されたどのコピー・コマンドも前記現在の画素に適用されない場合は、前記2色シリーズ・コマンドを、前記2色シリーズ・コマンドの第1バイトのペイロードのために共に必要な前記現在の画素色と所定数の追加の画素色に適用するか否かを決定して、そうでない場合は、前記個別の画素色コマンドを前記現在の画素に適用するステップと、
    そうである場合は:
    前記2色シリーズ・コマンドを適用して前記第1バイトの前記ペイロードを形成するステップと、
    後続バイトのペイロードに共に必要な次の画素色と所定数の別の追加の画素色を共に読むステップと、
    少なくとも1つのコピー・コマンドが前記次の画素色と前記所定数の別の追加の画素色を符号化可能か否かを決定し、そうである場合は、前記少なくとも一つのコピー・コマンドを前記次の画素と前記所定数の別の追加の画素色に適用するステップと、
    コピー・コマンドが前記次の画素と前記所定数の別の追加の画素色を符号化できない場合は、前記2色シリーズ・コマンドが前記次の画素と前記所定数の別の追加の画素色に適用されるか否かを決定して、そうである場合は、前記2色シリーズ・コマンドを前記後続のバイトのペイロードに適用するステップを含む
    ことを特徴とするデジタル映像符号化方法。
  15. (1)前記コピー・コマンドが前記次の画素色と前記所定数の別の追加の画素色とを符号化できず、及び
    (2)前記2色シリーズ・コマンドが前記次の画素色と前記所定数の別の追加の画素色に適用されない場合は、
    前記個別の画素色コマンドを前記次の画素色に適用する
    ことを特徴とする請求項14に記載の方法。
  16. 1つ以上のバイトに対する符号化コマンドが完了した後で、現在の画素色を読むことから開始する方法を繰り返す
    ことを特徴とする請求項15に記載の方法。
  17. 少なくとも1つのコピー・コマンドが前記次の画素色と前記所定数の別の追加の画素色を符号化可能かどうかを決定する前記ステップは:
    1つのユニークなコピー・コマンドが、前記次の画素色と前記所定数の別の追加の画素色の全てを符号化可能かどうかを決定し、そうである場合は、前記コピー・コマンドを前記次の画素色と前記所定数の別の追加の画素色に適用するステップを含む
    ことを特徴とする請求項14に記載の方法。
  18. エンコーダでデジタル映像ストリームを受けとるステップと、
    現在の画素色を読むステップと、
    ランレングス符号化を、前記現在の画素色と、可能な限り多くの後続の連続画素色とに試みて、
    前記ランレングス符号化が前記現在の画素色に適用されない場合は、2色シリーズビット符号化に基づいて、前記現在の画素色と複数の後続の連続画素色の符号化を試みて、1バイトペイロードを充填するステップと、
    (1)ランレングス符号化を再び適用するか、或いは、(2)前記2色シリーズビットの符号化が適用されなくなるまで、後続の追加の連続画素色を前記2色シリーズビットの符号化に基づいて符号化を続けるステップと;及び
    対応するデコーダで、前記符号化したものを復号し、デジタル映像ストリームを実質的に検索するステップとを含む
    ことを特徴とするデジタル映像転送方法。
  19. 前記ランレングス符号化も前記2色ビットシリーズの符号化も、前記個別の画素色に適用されない場合に、前記エンコーダは、独立したコマンドを前記個別の画素色に適用する
    ことを特徴とする請求項18に記載の方法。
  20. 少なくとも第1及び第2の符号技術の階層構造を構築するステップと、ここで、前記符号技術のうちの1つは、ランレングス符号化の形態であり、前記符号技術のうちの他の1つは、特定の色を使ってメイクピクセル符号化する形態であり、
    少なくとも1つの画素色を読むステップと、
    前記符号技術の階層構造内で最高位の符号技術を優先して、前記第1及び第2の符号技術から選択された1つを適用するステップと、
    前記第2の符号技術を使って前記1つの画素色を符号化する際に、次の一連の画素色もまた前記第1の符号技術に適している場合に、前記第2の符号技術を妨げて、前記第2の符号技術に代えて前記第1の符号技術によって前記次の一連の画素色を符号化するステップを含む
    ことを特徴とするデジタル映像符号化方法。
JP2007518086A 2004-06-25 2005-06-03 デジタル映像符号化方法、デジタル映像情報ストリームの圧縮方法、及びデジタル映像転送方法 Active JP5028260B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/875,678 2004-06-25
US10/875,678 US7006700B2 (en) 2004-06-25 2004-06-25 Digital video compression command priority
PCT/US2005/019256 WO2006007263A1 (en) 2004-06-25 2005-06-03 Digital video compression command priority

Publications (2)

Publication Number Publication Date
JP2008504734A true JP2008504734A (ja) 2008-02-14
JP5028260B2 JP5028260B2 (ja) 2012-09-19

Family

ID=35505805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007518086A Active JP5028260B2 (ja) 2004-06-25 2005-06-03 デジタル映像符号化方法、デジタル映像情報ストリームの圧縮方法、及びデジタル映像転送方法

Country Status (9)

Country Link
US (2) US7006700B2 (ja)
EP (1) EP1759335B1 (ja)
JP (1) JP5028260B2 (ja)
CA (1) CA2571489A1 (ja)
DE (1) DE05756603T1 (ja)
IL (1) IL180028A0 (ja)
MY (1) MY135394A (ja)
TW (1) TWI332794B (ja)
WO (1) WO2006007263A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010147671A (ja) * 2008-12-17 2010-07-01 Casio Electronics Co Ltd データ伸長装置
JP2014525183A (ja) * 2011-11-03 2014-09-25 グーグル インコーポレイテッド 2dマトリクスにエンコーディングパラメータを保存する画像圧縮のための方法および装置

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060126718A1 (en) * 2002-10-01 2006-06-15 Avocent Corporation Video compression encoder
US7321623B2 (en) * 2002-10-01 2008-01-22 Avocent Corporation Video compression system
US9560371B2 (en) * 2003-07-30 2017-01-31 Avocent Corporation Video compression system
US7006700B2 (en) * 2004-06-25 2006-02-28 Avocent Corporation Digital video compression command priority
US7457461B2 (en) * 2004-06-25 2008-11-25 Avocent Corporation Video compression noise immunity
US7555570B2 (en) 2006-02-17 2009-06-30 Avocent Huntsville Corporation Device and method for configuring a target device
US8718147B2 (en) * 2006-02-17 2014-05-06 Avocent Huntsville Corporation Video compression algorithm
TW200814780A (en) * 2006-04-28 2008-03-16 Avocent Corp DVC delta commands
US20080259023A1 (en) * 2007-04-19 2008-10-23 Aten International Co., Ltd. Method and System of Making a Computer as a Console for Managing Another Computer
WO2012162079A2 (en) * 2011-05-20 2012-11-29 Avocent Digital rack interface pod system and method incorporating lossless, partial video refresh feature
US9521418B2 (en) 2011-07-22 2016-12-13 Qualcomm Incorporated Slice header three-dimensional video extension for slice header prediction
US11496760B2 (en) 2011-07-22 2022-11-08 Qualcomm Incorporated Slice header prediction for depth maps in three-dimensional video codecs
US9288505B2 (en) 2011-08-11 2016-03-15 Qualcomm Incorporated Three-dimensional video with asymmetric spatial resolution
PL3454561T3 (pl) * 2011-09-14 2020-05-18 Samsung Electronics Co., Ltd. Sposób i urządzenie do kodowania jednostki predykcji (pu) w oparciu o jej rozmiar i odpowiadające urządzenie do dekodowania
US9485503B2 (en) 2011-11-18 2016-11-01 Qualcomm Incorporated Inside view motion prediction among texture and depth view components
US10523956B2 (en) * 2016-11-16 2019-12-31 Citrix Systems, Inc. Multi-pixel caching scheme for lossless encoding
CN106507108B (zh) * 2016-12-07 2018-04-17 杜昀晓 图像编码、解码的方法和装置
IL265789A (en) 2019-04-01 2020-10-28 Fibernet Ltd Device for secure video streaming
IL266118B2 (en) 2019-04-17 2023-08-01 Fibernet Ltd Device for secure streaming of audio
US11962788B2 (en) 2021-08-03 2024-04-16 Vertiv It Systems, Inc. DVCX and DVCY extensions to DVC video compression
KR102319593B1 (ko) * 2021-08-04 2021-11-01 주식회사 핀텔 영상분석을 위한 압축정보 생성방법, 장치, 및 컴퓨터 프로그램

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001053620A (ja) * 1999-08-13 2001-02-23 Canon Inc 符号化方法及び符号化装置、復号化方法及び復号化装置、記憶媒体
JP2002043950A (ja) * 2000-07-21 2002-02-08 Canon Inc 符号化方法および装置並びに復号化方法および装置
JP2003174564A (ja) * 2001-12-06 2003-06-20 Canon Inc 画像処理装置、画像処理方法、プログラム、及び記憶媒体
JP2003174565A (ja) * 2001-12-07 2003-06-20 Canon Inc 画像処理装置、画像処理方法、プログラム、及び記憶媒体
JP2003244448A (ja) * 2002-02-15 2003-08-29 Canon Inc 符号化方法及び復号方法
JP2003250053A (ja) * 2002-02-22 2003-09-05 Canon Inc 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、プログラム、記憶媒体

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3935379A (en) * 1974-05-09 1976-01-27 General Dynamics Corporation Method of and system for adaptive run length encoding of image representing digital information
US4005411A (en) * 1974-12-30 1977-01-25 International Business Machines Corporation Compression of gray scale imagery to less than one bit per picture element
JPS5816667B2 (ja) * 1976-07-21 1983-04-01 ケイディディ株式会社 フアクシミリ信号のインタ−ライン符号化方式
JPH01303988A (ja) 1988-06-01 1989-12-07 Hitachi Ltd 連続画像符号化方法および復号方法ならびに符号化装置および復号装置
JP3092135B2 (ja) * 1990-03-13 2000-09-25 株式会社日立製作所 アプリケーシヨン実行制御方法
US5757973A (en) * 1991-01-11 1998-05-26 Sony Corporation Compression of image data seperated into frequency component data in a two dimensional spatial frequency domain
EP0495490B1 (en) 1991-01-17 1998-05-27 Mitsubishi Denki Kabushiki Kaisha Video signal encoding apparatus
US5339164A (en) * 1991-12-24 1994-08-16 Massachusetts Institute Of Technology Method and apparatus for encoding of data using both vector quantization and runlength encoding and using adaptive runlength encoding
US5526024A (en) * 1992-03-12 1996-06-11 At&T Corp. Apparatus for synchronization and display of plurality of digital video data streams
US5408542A (en) * 1992-05-12 1995-04-18 Apple Computer, Inc. Method and apparatus for real-time lossless compression and decompression of image data
GB2274224B (en) * 1993-01-07 1997-02-26 Sony Broadcast & Communication Data compression
US5563661A (en) * 1993-04-05 1996-10-08 Canon Kabushiki Kaisha Image processing apparatus
JPH0833000A (ja) 1994-07-15 1996-02-02 Matsushita Electric Ind Co Ltd 映像伝送装置および映像伝送方法
JPH08263262A (ja) 1995-03-20 1996-10-11 Oki Data:Kk 印刷データの圧縮方法
US5675382A (en) * 1996-04-08 1997-10-07 Connectix Corporation Spatial compression and decompression for video
US6094453A (en) * 1996-10-11 2000-07-25 Digital Accelerator Corporation Digital data compression with quad-tree coding of header file
US6064771A (en) * 1997-06-23 2000-05-16 Real-Time Geometry Corp. System and method for asynchronous, adaptive moving picture compression, and decompression
JPH11161782A (ja) * 1997-11-27 1999-06-18 Seiko Epson Corp カラー画像の符号化方法およびその符号化装置ならびにカラー画像の復号化方法およびその復号化装置
US6829301B1 (en) * 1998-01-16 2004-12-07 Sarnoff Corporation Enhanced MPEG information distribution apparatus and method
GB9806767D0 (en) * 1998-03-31 1998-05-27 Philips Electronics Nv Pixel colour valve encoding and decoding
JPH11308465A (ja) 1998-04-17 1999-11-05 Seiko Epson Corp カラー画像の符号化方法およびその符号化装置ならびにカラー画像の復号化方法およびその復号化装置
JPH11313213A (ja) * 1998-04-27 1999-11-09 Canon Inc 情報処理装置、情報処理方法及び媒体
US6124811A (en) * 1998-07-02 2000-09-26 Intel Corporation Real time algorithms and architectures for coding images compressed by DWT-based techniques
US6327307B1 (en) * 1998-08-07 2001-12-04 Motorola, Inc. Device, article of manufacture, method, memory, and computer-readable memory for removing video coding errors
US6233226B1 (en) * 1998-12-14 2001-05-15 Verizon Laboratories Inc. System and method for analyzing and transmitting video over a switched network
US6871008B1 (en) * 2000-01-03 2005-03-22 Genesis Microchip Inc. Subpicture decoding architecture and method
JP2002165105A (ja) 2000-11-27 2002-06-07 Canon Inc 画像処理装置及びその方法並びに記憶媒体
JP3580251B2 (ja) * 2000-12-27 2004-10-20 日本電気株式会社 データ圧縮装置及び圧縮方法並びにその制御プログラムを記録した記録媒体
US6888893B2 (en) * 2001-01-05 2005-05-03 Microsoft Corporation System and process for broadcast and communication with very low bit-rate bi-level or sketch video
US7145676B2 (en) 2001-01-31 2006-12-05 Hewlett-Packard Development Company, L.P. Compound document image compression using multi-region two layer format
US6898313B2 (en) * 2002-03-06 2005-05-24 Sharp Laboratories Of America, Inc. Scalable layered coding in a multi-layer, compound-image data transmission system
US20060126718A1 (en) * 2002-10-01 2006-06-15 Avocent Corporation Video compression encoder
US7321623B2 (en) * 2002-10-01 2008-01-22 Avocent Corporation Video compression system
US9560371B2 (en) * 2003-07-30 2017-01-31 Avocent Corporation Video compression system
US7457461B2 (en) * 2004-06-25 2008-11-25 Avocent Corporation Video compression noise immunity
US7006700B2 (en) 2004-06-25 2006-02-28 Avocent Corporation Digital video compression command priority

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001053620A (ja) * 1999-08-13 2001-02-23 Canon Inc 符号化方法及び符号化装置、復号化方法及び復号化装置、記憶媒体
JP2002043950A (ja) * 2000-07-21 2002-02-08 Canon Inc 符号化方法および装置並びに復号化方法および装置
JP2003174564A (ja) * 2001-12-06 2003-06-20 Canon Inc 画像処理装置、画像処理方法、プログラム、及び記憶媒体
JP2003174565A (ja) * 2001-12-07 2003-06-20 Canon Inc 画像処理装置、画像処理方法、プログラム、及び記憶媒体
JP2003244448A (ja) * 2002-02-15 2003-08-29 Canon Inc 符号化方法及び復号方法
JP2003250053A (ja) * 2002-02-22 2003-09-05 Canon Inc 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、プログラム、記憶媒体

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010147671A (ja) * 2008-12-17 2010-07-01 Casio Electronics Co Ltd データ伸長装置
JP2014525183A (ja) * 2011-11-03 2014-09-25 グーグル インコーポレイテッド 2dマトリクスにエンコーディングパラメータを保存する画像圧縮のための方法および装置
US8977066B2 (en) 2011-11-03 2015-03-10 Google Inc. Image compression using sub-resolution images

Also Published As

Publication number Publication date
CA2571489A1 (en) 2006-01-19
IL180028A0 (en) 2007-05-15
WO2006007263A1 (en) 2006-01-19
US20060120460A1 (en) 2006-06-08
EP1759335A1 (en) 2007-03-07
US20050286784A1 (en) 2005-12-29
EP1759335A4 (en) 2010-12-22
EP1759335B1 (en) 2013-08-21
DE05756603T1 (de) 2007-10-18
US7006700B2 (en) 2006-02-28
TWI332794B (en) 2010-11-01
TW200605681A (en) 2006-02-01
JP5028260B2 (ja) 2012-09-19
MY135394A (en) 2008-04-30
US7336839B2 (en) 2008-02-26

Similar Documents

Publication Publication Date Title
JP5028260B2 (ja) デジタル映像符号化方法、デジタル映像情報ストリームの圧縮方法、及びデジタル映像転送方法
CN1669233B (zh) 视频压缩系统
US7769237B2 (en) Dynamic, locally-adaptive, lossless palettization of color and grayscale images
JP5175371B2 (ja) 開始符号エミュレーションの防止およびデータ充填のための方法およびシステム
CN100499824C (zh) 防止非字节对齐和/或位移位位置起始码仿效的方法和系统
US20070217704A1 (en) Encoding method, encoding apparatus, decoding method, and decoding apparatus
JPH0817444B2 (ja) 画像データの符号化装置
US20050131962A1 (en) Systems and methods for implementing a cache model
KR19980024351A (ko) 화상 부호화 장치, 화상 복호화 장치 및 화상 전송 방법
JPH0870454A (ja) ディジタル画像におけるルミナンス情報およびクロミナンス情報の圧縮システム
US20060126718A1 (en) Video compression encoder
CN102378007B (zh) 用于块和dvc视频压缩的方法和系统
AU2007249117B2 (en) Variable-length encoding for image data compression
US6154780A (en) Method and apparatus for transmission of a flexible and error resilient video bitstream
EP0732851A1 (en) Motion picture reproducing system by biderectional communication
JPH03188768A (ja) 画像圧縮装置
JP2007529123A (ja) 映像圧縮システム
US6560288B1 (en) Method and system for variable length decoding
JP2002043950A (ja) 符号化方法および装置並びに復号化方法および装置
JP2000253402A (ja) 映像データ送信装置及びその映像信号符号化方法並びに映像信号符号化プログラムを格納した記憶媒体
US7562124B2 (en) Systems and methods for determining completion of building a presentation space in a TN3270 environment
JPH06121174A (ja) 符号化復号化装置
KR20010043281A (ko) 화상 정보의 부호화 방법 및 복호화 방법
KR20230079143A (ko) 데이터 스트림을 디코딩하기 위한 방법 및 전자 디바이스, 그리고 연관된 컴퓨터 프로그램 및 데이터 스트림들
KR20230081719A (ko) 데이터 스트림을 디코딩하기 위한 전자 방법 및 디바이스, 및 연관된 컴퓨터 프로그램

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110825

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120625

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

Free format text: PAYMENT UNTIL: 20150629

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5028260

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250