JP5995864B2 - 表示データの符号化方法及びシステム - Google Patents

表示データの符号化方法及びシステム Download PDF

Info

Publication number
JP5995864B2
JP5995864B2 JP2013543876A JP2013543876A JP5995864B2 JP 5995864 B2 JP5995864 B2 JP 5995864B2 JP 2013543876 A JP2013543876 A JP 2013543876A JP 2013543876 A JP2013543876 A JP 2013543876A JP 5995864 B2 JP5995864 B2 JP 5995864B2
Authority
JP
Japan
Prior art keywords
tile
data
encoded
display
remote computer
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.)
Active
Application number
JP2013543876A
Other languages
English (en)
Other versions
JP2014506042A (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 JP2014506042A publication Critical patent/JP2014506042A/ja
Application granted granted Critical
Publication of JP5995864B2 publication Critical patent/JP5995864B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • H03M7/48Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind alternating with other codes during the code conversion process, e.g. run-length coding being performed only as long as sufficientlylong runs of digits of the same kind are present
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/413Classification of content, e.g. text, photographs or tables
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Discrete Mathematics (AREA)
  • Economics (AREA)
  • Artificial Intelligence (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明はリモートコンピューティングの方法及びシステムに関する。
ローカルコンピュータなどの装置を用いて物理的に離れたコンピュータとインターラクトすることが知られている。個人ユーザの場合、離れたところにいる技術にあまり詳しくない身内のコンピュータのトラブルシューティングを助けることはよくあるシナリオである。バルチモアにある自分のデスクにいても、リモートコンピューティングにより、ユーザは、カリフォルニアにいる身内のPCを制御して、バルチモアにある自分のPCから新しいソフトウェアパッケージをどう使うかやって、それを身内に示すことができる。よく使われるビジネスアプリケーションはリモートシステム管理されており、それによりアドミニストレータは従業員のマシンを制御して、問題を診断して修復する。すべてのシナリオにおいて、キーの押下、マウスの動き、及びマウスのクリックは、ローカルコンピュータからリモートコンピュータに送られ、リモートコンピュータに変化を及ぼす。リモートコンピュータディスプレイの連続的に更新されるコピーが、ローカルコンピュータのウィンドウに表示される。したがって、リモートコンピュータは別の場所にあっても、ユーザには、自分がリモートコンピュータの前に座っているように見える。
連続的に更新されるコピーは、リモートコンピュータのディスプレイの内容を記述する画素データを符号化して、このデータまたはその変化をローカルコンピュータに送信することにより得られる。この符号化を実現する方法はたくさんある。その一端にはRawエンコーディングがある。これは、データ圧縮をしないので、リモートコンピュータで必要とされるCPUオーバーヘッドは最小だが、高速ネットワークにのみ適している。大量のデータを伝送しないとならないからである。他端には高圧縮率エンコーディング(例えば、ランレングス符号化(RLE)やその変形)がある。これは圧縮率が高く低速ネットワークに適しているが、CPUオーバーヘッドは高くなる。これらの標準的な符号化方法はすべてロスレス(lossless)であり、ローカルコンピュータにおける表示はリモートコンピュータにおける表示の厳密な再現(exact representation)である。
一般的には、リモートコンピュータにおける表示はテキストと画像データがミックスされたものを含む。近年、より多くの画像とビデオを含めるため、及び半透明かつぼやけたウィンドウフレーム、及びテクスチャや色のグラデーションに凝ったバックグラウンド及びフィルパターンに向かうトレンドにより、画像データ量は増大している。
リモートコンピューティングでは時間的要素も大きい。リモートコンピュータにおける表示の連続的に更新されるコピーを生成して送信するアルゴリズムは、リモートコンピュータにおける変化に遅れることなく追随するだけ高速でなければならない。ボトルネックとなるのは、符号化時間、データ通信時間、又は復号時間であり得る。
出願人は符号化の改善が必要であることを認識している。
本発明の第1の態様によると、リモートコンピュータからディスプレイを有するローカルコンピュータへ表示データを送信し、ユーザが前記ローカルコンピュータにおいて前記リモートコンピュータ表示データを見ることができる方法が提供される。前記方法は、前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割するステップと、各タイルに色削減アルゴリズムを適用して色削減タイルを作り、各タイルを対応する色削減タイルと比較することにより、各タイルが画像データを表すかテキストデータを表すか判断するステップと、テキストデータを表す各タイルをロスレス圧縮を用いて符号化するステップと、画像データを表す各タイルをロッシー圧縮を用いて符号化するステップと、前記送信される表示データは前記ロッシー符号化画像データと前記ロスレス符号化テキストデータとを有する。
本発明の第2の態様によると、表示データを生成するように構成されたプロセッサを有するリモートコンピュータが提供される。前記リモートコンピュータは、プロセッサとディスプレイとを有するローカルコンピュータにネットワークを介して接続され、前記リモートコンピュータのプロセッサは、前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割し、各タイルに色削減アルゴリズムを適用して色削減タイルを作り、各タイルを対応する色削減タイルと比較することにより、各タイルが画像データを表すかテキストデータを表すか判断し、テキストデータを表す各タイルをロスレス圧縮を用いて符号化し、画像データを表す各タイルをロッシー圧縮を用いて符号化し、前記リモートコンピュータから前記ローカルコンピュータに前記ロッシー符号化された画像と前記ロスレス符号化されたテキストデータとを含む表示データを送信し、ユーザが前記ローカルコンピュータディスプレイにおいて前記リモートコンピュータ表示データを見えるように構成されている。
本発明は、ロッシー符号化とロスレス符号化との、具体的にはJPEGとRLE(ランレングス符号化)の変形とのハイブリッドであり、JRLEとも呼ばれ得る。これはロッシー符号化(JPEG)を用いて「画像」画素データを符号化し、ロスレス符号化(ZRLE)を用いて「テキスト」画素データを符号化する。言うまでもなく、「画像」と「テキスト」をミックスしたものである表示データの場合、このハイブリッドは、純粋なロッシー符号化又は純粋なロスレス符号化よりも以下に詳述する組合せ基準を満たす。一般的に、テキストデータは、はっきりした線(well defined lines)により特徴付けられ、シャープテキスト、線図、単色領域などのデータを含む。対照的に、画像データは、段階的に変化する色、細かいテクスチャ、ぼかしたテキストや線のエリアを含む。
以下の特徴は本発明のすべての態様に当てはまる。
リモートコンピュータは物理的ディスプレイ、例えばディスプレイモニタを有する。あるいは、リモートコンピュータは物理的ディスプレイに接続されていなくてもよい。この場合、リモートコンピュータのプロセッサは、標準的デスクトップディスプレイなどの表示を生成する。この表示はフレームストア(framestore)にレンダリングされる。このプロセッサは、前記表示を物理的ディスプレイ上に生成させる信号(VGAやDVIなど)を出力してもよい。しかし、物理的モニタが無いので、この出力はモニタ上では見られない。それにもかかわらず、ディスプレイとそのフレームストアがあり、以下に詳述するように更新が検知され送出される。
前記表示データは画素データの形式であり、nは元の画素データ中の各画素を表すのに用いる総ビット数である。nは色削減アルゴリズムにおいて50%(例えば、24から12に)削減され得る。
前記判断するステップはさらに、ロスレス圧縮を用いて各タイルを圧縮して第1の符号化コピーを作るステップと、前記色削減タイルを、前記第1の符号化ステップで用いた前記ロスレス圧縮で圧縮して第2の符号化コピーを作るステップと、前記第1と第2の符号化コピーを比較して、前記タイルが画像データを表すかテキストデータを表すか判断するステップとを有し、前記第1の符号化コピーのサイズが前記第2の符号化コピーのサイズより大きいとき、タイルは画像データを表し、前記サイズがほぼ等しいとき、タイルはテキストデータを表す。
画像領域を特定するアルゴリズムは、色数を削減すると、画像領域はみにくくなるとの知見に基づく。よって、換言すると、前記判断するステップは、各タイルの色データを考慮することにより、各タイルが画像データを表すか又はテキストデータを表すか判断するステップを有すると言うこともできる。画像は色の削減により色の帯域が広がり、ポスタライズ(posterized)されがちである。これらの帯域は、原画像より少量のデータに圧縮されるので、フルカラー画像と色削減画像との間の圧縮サイズの差は大きい。対照的に、テキスト領域の場合には、この差は、エッジがもっとシャープなので無視できる。したがって、色削減アルゴリズムとそれに続く圧縮を用いると、タイルがテキストデータか画像データかを判断する有用な方法となる。しかし、他の方法も可能である。
サイズの差の大きさは、閾値に対して判断され得る。よって、前記比較するステップは、前記第1の符号化コピーと前記第2の符号化コピーとの間のサイズの差が閾値より大きいか判断するステップを有し、前記閾値より大きいとき、タイルは画像データを表し、前記閾値より大きくないとき、タイルはテキストデータを表す。前記閾値はn(上記の通り総ビット数)により決定される。例えば、nが16と24の間にあれば、閾値は50と150の間にあり得る。閾値は発見的に見いだしてもよい。
データの圧縮の替わりに、テキストデータと画像データを選択する他のアルゴリズムをもちいてもよい。前記表示データは画素データの形式であり、前記判断するステップは異なる値の画素データの発生頻度を分析するステップを有してもよい。
複数のタイルを、複数のタイルの行と列を有するグリッドに配置してもよい。タイルは重なっても良い。各タイルは16×16画素を有しても良い。前記タイルは四角形でもその他の任意の適切な形状であってもよい。
送信される画像データは、好ましくはリアルタイムデータであり、ユーザは自分のローカルコンピュータディスプレイにおいてリモートコンピュータディスプレイの更新されたビューを見ることができる。本方法は、前記リモートコンピュータ表示データのどの領域が変化したか判断するステップを有し、前記リモートコンピュータ表示データの少なくとも一部が前記変化した領域を含む。このように、変化した情報のみを送信し、送信されるデータ量を低減して、システムがより効率的に機能するようにする。ボトルネックを回避するため、本システムは、ローカルコンピュータから戻ってくる要求により構成されるフィードバックループ(例えば、送信したデータを復号するデコーダ)を有しても良い。リソースが足りないとき、リモートコンピュータディスプレイにおける変化は、次の要求が戻ってくるまで破棄される。よって、どの圧縮方式を用いるか素早く決定することが不可欠であり、色削減とそれに続く素早いロスレスアルゴリズムが適当である。
ユーザは、ローカルコンピュータディスプレイにおいてリモートコンピュータディスプレイの表示を見ることができるので、リモートコンピュータとの任意のインターラクションをローカルコンピュータから見ることができる。
本発明の他の一態様によると、ローカルコンピュータからリモートコンピュータを制御する方法が提供される。前記方法は、前記ローカルコンピュータと前記リモートコンピュータとをリンクするステップと、前記ローカルコンピュータにコマンドを入力するステップと、前記ローカルコンピュータから前記リモートコンピュータに前記コマンドを送信し、前記リモートコンピュータで実行させるステップと、上記の通り、表示データを前記リモートコンピュータから送信するステップとを有する。
リモートコンピューティングシステムであって、プロセッサとディスプレイとを有するローカルコンピュータと、プロセッサとディスプレイとを有するローカルコンピュータと、前記ローカルコンピュータと前記リモートコンピュータとをリンクするネットワークとを有し、前記リモートコンピュータのプロセッサは、前記リモートコンピュータ表示データの少なくとも一部を複数のタイルを有するグリッドに分割し、各タイルに色削減アルゴリズムを適用して色削減タイルを作り、各タイルを対応する色削減タイルと比較することにより、各タイルが画像データを表すかテキストデータを表すか判断し、テキストデータを表す各タイルをロスレス圧縮を用いて符号化し、画像データを表す各タイルをロッシー圧縮を用いて符号化し、前記リモートコンピュータから前記ローカルコンピュータに前記ロッシー符号化画素データと前記ロスレス符号化テキストデータとを含む表示データを送るように構成され、前記ローカルコンピュータの前記プロセッサは、前記送信された表示データを復号し、前記ローカルコンピュータディスプレイに前記リモートコンピュータディスプレイを表示するように構成される。
各タイルに色削減アルゴリズムを適用して色削減タイルを作り、各タイルを対応する色削減タイルと比較するステップを有することは好ましいオプションである。本発明の他の一態様によると、リモートコンピュータからディスプレイを有するローカルコンピュータへ表示データを送信し、ユーザが前記ローカルコンピュータにおいて前記リモートコンピュータ表示データを見ることができる方法が提供される。前記方法は、前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割するステップと、各タイルが画像データを表す又はテキストデータを表すか判断するステップと、テキストデータを表す各タイルをロスレス圧縮を用いて符号化するステップと、画像データを表す各タイルをロッシー圧縮を用いて符号化するステップとを有し、前記送信される表示データは前記ロッシー符号化画像データと前記ロスレス符号化テキストデータとを有する。
他の一態様では、リモートコンピュータの表示データを生成するように構成されたプロセッサを有する前記リモートコンピュータが提供される。前記リモートコンピュータは、プロセッサとディスプレイとを有するローカルコンピュータにネットワークを介して接続され、前記リモートコンピュータのプロセッサは、前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割し、各タイルが画像データを表す又はテキストデータを表すか判断し、テキストデータを表す各タイルをロスレス圧縮を用いて符号化し、画像データを表す各タイルをロッシー圧縮を用いて符号化し、前記リモートコンピュータから前記ローカルコンピュータに前記ロッシー符号化画素データと前記ロスレス符号化テキストデータとを含む表示データを送り、ユーザが前記ローカルコンピュータディスプレイにおいて前記リモートコンピュータディスプレイデータを見られるようにするように構成される。
他の一態様では、リモートコンピューティングシステムが提供される。該システムは、プロセッサとディスプレイとを有するローカルコンピュータと、プロセッサを有するリモートコンピュータと、前記ローカルコンピュータと前記リモートコンピュータとをリンクするネットワークとを有し、前記リモートコンピュータのプロセッサは、前記リモートコンピュータの表示データを生成し、前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割し、各タイルが画像データを表す又はテキストデータを表すか判断し、テキストデータを表す各タイルをロスレス圧縮を用いて符号化し、画像データを表す各タイルをロッシー圧縮を用いて符号化し、前記リモートコンピュータから前記ローカルコンピュータに前記ロッシー符号化画素データと前記ロスレス符号化テキストデータとを含む表示データを送るように構成され、前記ローカルコンピュータの前記プロセッサは、前記送信された表示データを復号し、前記ローカルコンピュータディスプレイに前記リモートコンピュータディスプレイを表示するように構成される。
これらの各態様は最初の2つの態様について記載した特徴と組み合わせることができる。
本発明はさらに、上記のシステムと方法を、例えば汎用コンピュータシステムやデジタル信号プロセッサ(DSP)において実施するプロセッサ制御コードを提供する。このコードは、ディスク、CD−ROM、DVD−ROM、不揮発性メモリ(例えばフラッシュ)などのプログラムされたメモリ又はリードオンリーメモリ(ファームウェア)などのキャリアで提供できる。本発明の実施形態を実装するコード(及び/又はデータ)は、Cやアセンブリコードなどの従来のプログラミング言語(インタープリタ又はコンパイルされた)中のソース、オブジェクト、又は実行可能コードを含む。当業者には言うまでもなく、かかるコード及び/又はデータは、互いに通信できように結合した複数のコンポーネント間に分散していてもよい。
本発明を以下の図面により例として図示する。
リモート制御ができるようにネットワークで接続されたコンピュータのペアを含むシステムを示す図である。 図1に示したコンピュータのリモート制御をどのように実現するか示すフローチャートである。 コンピュータのペアの画面上の表示のスクリーンショットを示す図である。 図3aの画像にグリッドを重ねたものである。 図1のシステムの性能を改善するプロセスを示すフローチャートである。
図1はリモートコンピューティングシステムを示す。該システムは、ユーザがいるローカルコンピュータ10を含み、これはそのユーザから物理的に離れたところにある他のコンピュータ20にネットワーク30を介して接続されている。ローカルコンピュータは、キーボード12(又はマウスなど、その他の同様の入力装置)、中央処理ユニット16、メモリ18、及び(任意的に)グラフィックスカード17により任意的なフレームストア(framestore)からのデータを用いて駆動されるディスプレイ14を含む。同様に、リモートコンピュータ20は、キーボード22、中央処理ユニット26、メモリ28、及び(任意的に)グラフィックスカード27により任意的なフレームストアからのデータを用いて駆動されるディスプレイ24などの標準的なコンポーネントを含む。言うまでもなく、コンピュータは同じタイプのものである必要はなく、PDA、携帯電話などの同様の電子装置で置き換えても良い。ネットワーク30は、インターネットなどを介した任意の好適なネットワークであり、又は企業内コンピュータネットワークであってもよい。同様に、グラフィックスカードは任意的であり、本システムは任意の好適な画像生成方法を用いることができる。例えば、CPUがフレームストア(framestore)などのメモリに格納されたデータから直接画像を生成してもよい。
リモートコンピューティングの一般的なプロセスを図2に示す。以下の説明では、制御プログラムはVNCビューアプログラム及びVNCサーバプログラムと呼ぶが、リモートコンピューティングを可能ならしめる任意の技術を用いることができる。リモートコンピュータのCPUがVNC(登録商標)サーバプログラム(又は同様のプログラム)を実行し、同時にローカルコンピュータのCPUが補完的なVNC(登録商標)ビューアプログラム(又は同様のプログラム)を実行する。フローチャートに示したように、リモートコンピュータ上の任意のプログラムを制御できる。第1のステップでは、リモートコンピュータ20のCPU26がリモートコンピュータのグラフィックスカード27とインターラクト(interact)する。VNC(登録商標)サーバプログラムの制御下、リモートコンピュータのCPU26は、(例えば、グラフィックスカード27やXサーバなどの仮想グラフィックスカードにリンクすることにより)ディスプレイ用のフレームバッファを得て、リモートコンピュータのディスプレイ24に示された情報のコピーを含む(メモリ28に記憶された)画素バッファを生成する。次のステップでは、VNC(登録商標)サーバプログラムの制御下のCPUが、以下に詳細に説明するように、画素バッファを符号化する。一旦、最初の表示を符号化すると、CPU26はその後リモートコンピュータの表示24のうち変化した領域のみを符号化すればよい。符号化された画素バッファデータ(及びその後の更新された画素バッファデータ)がネットワークを介してローカルコンピュータ10に送られる。
リモートコンピュータ20から受信した符号化画素バッファデータは、ローカルコンピュータ10に、例えばローカル画素バッファのメモリ18に格納される。VNC(登録商標)ビューアプログラムの制御下、ローカルコンピュータのCPU16は、符号化画素バッファデータを復号し、表示のため、例えばグラフィックスカード17を介して復号データを送る。このように、ローカルコンピュータ10のディスプレイ14は、リモートコンピュータ20のディスプレイ上に現在表示されている表示情報の更新されたコピーを表示する。
図3aと図3bにより詳細に示すように、表示される情報は異なるタイプのデータ、すなわち(写真やその他の実世界の画像など)画像とテキストをミックスしたものである。理想的な符号化は:
(i)リモート表示自体と見かけ上違わないリモート表示のコピーを作り、
(ii)素早く符号化と復号をし、
(iii)少量の符号化データを生成する。
符号化がこれらの基準を満たす程度は、符号化する画素データのタイプに依存する。画像の画素データ(画像画素データ)は、一般的に、画定されている領域にわたって滑らかに変化する。対照的に、テキストの画素データ(テキスト画素データ)は、一般的に、画定されている領域にわたって頻繁ではないが鋭く変化する。テキスト画素データは、テキスト、又はボタン、メニュー、ダイアローグボックスなどのユーザインタフェース要素を表すことが多い。
出願人は、様々なタイプの符号化の間の違いを調べた。ロスレス符号化は、例えばZRLE(下記定義を参照)は、基準(i)は完全に満たすが、基準(ii)は両タイプの画素データについてあまり満たさない。かかるロスレス符号化は基準(iii)を、テキスト画素データではよく満たすが、画像画素データではほとんど満たさない。一方、ロッシー符号化は、例えばJPEGは、基準(i)と(iii)を、画像画素データではよく満たすが、テキスト画素データでは不十分であり、基準(ii)は両タイプのデータでよく満たす。
出願人は、表示のすべての部分に対して同じ符号化をする必要はないことを認識した。したがって、図3bに示したように、表示にタイルのグリッド(a grid of tiles)を重ねて、各タイルを「画像」又は「テキスト」と分類する。典型的なグリッドは、16×16画素を有するタイルを有するが、他のサイズのグリッドを用いてもよい。グリッドは重なっても良い。さらに、タイルは四角形として示したが、他の形状のタイルを用いてもよい。グリッドは表示全体に重ねられるが、実際には、変化した領域にのみ重ねられる。図3bでは、「画像」タイルには「I」とマークし、「テキスト」タイルには「T」とマークした。
タイルとその符号化を分類するプロセスを図4に示す。各タイルを「画像」又は「テキスト」に分類するアルゴリズムは、「画像」タイルの異なる画素値の数が、概して「テキスト」タイルより多いということに基づくものである。このことを利用する方法は多数ある。本発明では、このことを、「画像」タイルに隣接する画素は互いに近い画素値を有することが多いことと組み合わせて用いる。この結果、各画素値を表すのに用いるビット数を少なくすると、「画像」タイルの多くの隣接画素が、ビット深度を小さくする前は異なる画素値を有していても、同じ画素値を有することになる。これは、ランレングス符号化に基づくロスレス符号化により、低減前の「画像」タイルより低減後の「画像」タイルにおいて、符号化データ量が大きく圧縮されることを意味する。対照的に、この低減は、「テキスト」タイルに適用されるロスレス符号化による圧縮には影響しない。各タイルの統計的分析を、例えば使用色のヒストグラムを用いて「画像」又は「テキスト」データを検知するその他の手段を用いても良い。例えば、タイルにおいて画素値の80%以上が色値の1%内であるとき、そのタイルはテキストである。
第1のステップS400では、リモートコンピュータにおいて画素バッファからタイルをコピーする。ステップS402において、そのタイルにロスレス符号化(例えば、TRLE符号化)を適用して、データを圧縮し、この符号化により生じるデータのバイト数をn1として記録する。次のステップS404では、同じ時のコピーを取り、各画素の色を表すのに用いるビット数を低減する。これは、以下に説明するように、標準的な手法により実現したり発見的に決定したりできる。ステップS406において、本プロセスは、ビット深度(bit depth)を少なくしたタイルにロスレス符号化を適用して、データを圧縮し、この符号化により生じたデータのバイト数をn2として記録する。ステップS408においてn1をn2と比較する。両者の差がある閾値より大きい場合、そのタイルは「画像」として分類され、ステップS410に示したように、そのタイルはJPEGなどのロッシー圧縮(lossy compression)を用いて符号化される。上記閾値は発見的に決定されるものである(例えば、図4に示したように、150であると仮定する)。差が閾値より小さい場合、タイルは「テキスト」として分類され、ZRLEなどのロスレス圧縮(lossless compression)を用いて符号化される。ステップS414において、本プロセスでは、最後のタイルが符号化されたかどうか判断し、否であれば、すべてのグリッドが符号化されるまで、ステップS400乃至S414がくり返される。
符号化されたグリッドは、上記の通り復号するため、一連の符号化タイルとしてローカルコンピュータに送られ、復号を可能とするため、各符号化タイルにはどの符号化がタイルに用いられたか示すフラグが、例えば「JPEG符号化」又は「ZRLE符号化」を示すフラグが先行する。
ロスレス圧縮を検知して一定色の領域を最適化できれば(これはかかるほとんどの方法の機能である)、圧縮を実現するロスレス符号化や色低減に用いるアルゴリズムそのものは重要ではない。
任意的ビット深度の低減は以下の通り発見的に決定できる。nを元の画素データの各画素値を表すのに用いる総ビット数であるとする。すなわち、nは各画素値の赤、緑、及び青成分を表すのに用いるビット数の合計でなければならない。低減されたビット深度の画素値は、赤、緑、及び青成分のそれぞれのビット数として、(n+5)/6以下の最大整数を用いなければならない。例えば、元の画素データが8ビットを用いて各画素値の赤、緑、及び青成分のそれぞれを表す場合、低減されたビット深度画素値は4ビットを用いて各画素値の赤、緑、及び青成分のそれぞれを表すべきである。なぜなら4が(8+8+8+5)/6以下の最大整数だからである。
ビット深度低減の前後の符号化データのバイト数の差に対する最適な閾値は、発見的に見いだされ、元の画素データの各画素値を表すのに用いられる総ビット数(n)に関係する。nが24である場合、閾値は150である。nが16である場合、閾値は50である。nが16である場合、閾値は50×(n/16)である。nが16より大きい場合、閾値は、50(n=16の場合)と150(n=24の場合)の値の間で線形補間/外挿により見いだされる。
間違いなく、当業者はこの他の有効な代替案に想到するであろう。言うまでもなく、本発明は上記の実施形態に限定されず、ここに添付した請求項の精神と範囲内にある当業者には明らかな変形例を含む。
定義
JPEGはロッシー圧縮の周知技術である。「JPEG」との要素は、この標準を作成したJoint Photographic Experts Groupの頭字語である。
RLEはロスレス圧縮の周知技術である。データは、タイルが終わるまでくり返される複数のラン(run)よりなる。各ランは、一つの画素値とそれに続くそのランの長さにより表される。長さは1バイト以上で表される。
TRLEはRLEの変形であり、Tiled Run-Length Encodingを表す。これはタイリング、パレット化、及びランレングス符号化を組み合わせたものである。四角形は左から右、上から下の順序で16×16画素のタイルに分割される。TRLEは新しいタイプのCPIXEL(圧縮画素)を用いる。これは、特殊な場合を除き、合意された画素フォーマットのPIXELと同じであり、true-colorフラグが非ゼロであり、bits-per-pixelが32であり、depthが24以下であり、赤、緑、及び青の強さを示すすべてのビットが最下位3バイト又は最上位3バイトのいずれかである場合、よりコンパクトなフォーマットを用いる。これらがすべて当てはまれば、CPIXELは、3バイト長であり、必要に応じて、最下位又は最上位3バイトを含む。bytesPerCPixelはCPIXELのバイト数である。
各タイルはサブエンコーディングタイプバイト(subencoding type byte)で始まる。このバイトの先頭ビットは、タイルがランレングス符号化された場合に設定され、そうでない場合にクリアされる。下位7ビットは使われるパレットのサイズを示す:ゼロはパレット無し、1はタイルが1色であることを意味し、2乃至127はそのサイズのパレットを示す。特殊なサブエンコーディング値である129と127は、RLEをする場合又はしない場合に、パレットを有する最後のタイルから再使用されることを示す。
ZRLEはZlib Run-Length Encodingを表し、TRLEと同様の符号化にzlib圧縮を組み合わせる。電話では、四角形は4バイト長フィールドで始まり、zlib圧縮データのそれだけ多くのバイトが続く。RFBプロトコル接続に対して単一zlib「ストリーム」オブジェクトを用い、ZRLE四角形が順序通りに符号化及び復号されるようにする。
圧縮されていないzlibDataは、TRLEと同様に、左から右、上から下の順序でタイルを表すが、タイルサイズは64×64画素である。四角形の幅がきっちり64の倍数でない場合、各行の最後のタイルの幅は小さく、四角形の高さがきっちり64の倍数でない場合、最後の行の各タイルの高さは小さい。
サブエンコーディング(subencoding)が127又は129の値を取らないことを除き、すなわちタイル間でパレットを再使用できないことを除き、タイルはTRLEとまったく同じ方法で符号化され、サーバは、各ZRLE符号化四角形の終わりでバイト境界にzlibストリームをフラッシュ(flush)する。四角形中のタイルの間のストリームをフラッシュする必要はない。単一四角形のzlibDataは潜在的に非常に大きいので、クライアントはzlibDataをインクリメント的に復号して解釈できるが、符号化タイルデータのバイトが調整(align)されていると仮定してはならない。

Claims (17)

  1. リモートコンピュータからディスプレイを有するローカルコンピュータへ表示データを送信し、前記ローカルコンピュータのディスプレイに前記リモートコンピュータ表示データを表示させる方法であって、
    前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割するステップと、
    各タイルに色削減アルゴリズムを適用して色削減タイルを作り、各タイルを対応する色削減タイルと比較することにより、各タイルが画像データを表すかテキストデータを表すか判断するステップと、
    テキストデータを表す各タイルをロスレス圧縮を用いて符号化するステップと、
    画像データを表す各タイルをロッシー圧縮を用いて符号化するステップと、
    前記送信される表示データは前記ロッシー圧縮によって符号化されたロッシー符号化画像データと前記ロスレス圧縮によって符号化されたロスレス符号化テキストデータとを有しており
    前記判断するステップは、
    ロスレス圧縮を用いて各タイルを圧縮して第1の符号化コピーを作る第1の符号化ステップと、
    前記色削減タイルを、前記第1の符号化ステップで用いた前記ロスレス圧縮で圧縮して第2の符号化コピーを作る第2の符号化ステップと、
    前記第1の符号化コピーと前記第2の符号化コピーとを比較して、前記タイルが画像データを表すかテキストデータを表すか判断するステップとを有し、
    前記第1の符号化コピーのサイズが前記第2の符号化コピーのサイズより大きいとき、タイルは画像データを表し、前記第1の符号化コピーのサイズが前記第2の符号化コピーのサイズとほぼ等しいとき、タイルはテキストデータを表す、
    方法。
  2. 前記判断するステップは、各タイルの色データを考慮することにより、各タイルが画像データを表すか又はテキストデータを表すか判断するステップを有する、
    請求項1に記載の方法。
  3. 前記表示データは画素データの形式であり、前記判断するステップは異なる値の画素データの発生頻度を分析するステップを有する、
    請求項2に記載の方法。
  4. 前記比較するステップは、前記第1の符号化コピーと前記第2の符号化コピーとの間のサイズの差が閾値より大きいか判断するステップを有し、
    前記閾値より大きいとき、タイルは画像データを表し、前記閾値より大きくないとき、タイルはテキストデータを表す、請求項に記載の方法。
  5. 前記表示データは画素データの形式であり、nを元の画素データ中の各画素を表すのに用いる総ビット数であるとすると、前記閾値はnにより決まる、請求項に記載の方法。
  6. 圧縮で用いられるロスレス圧縮はTRLEである、請求項4又は5に記載の方法。
  7. 前記表示データは画素データの形式であり、nを元の画素データ中の各画素を表すのに用いる総ビット数であるとすると、前記色削減アルゴリズムは各画素を表すのに用いられる総ビット数を削減する、請求項1乃至いずれか一項に記載の方法。
  8. 号化で用いられるロスレス圧縮はRLEの変化形である、請求項1乃至いずれか一項に記載の方法。
  9. 前記変化形はZRLEである、請求項に記載の方法。
  10. 前記ロッシー圧縮はJPEGである、請求項1乃至いずれか一項に記載の方法。
  11. 前記複数のタイルはグリッドを構成する、請求項1乃至10いずれか一項に記載の方法。
  12. 前記リモートコンピュータ表示データのどの領域が変化したかを判定し、前記リモートコンピュータ表示データの少なくとも一部が前記変化した領域を含む、請求項1乃至11いずれか一項に記載の方法。
  13. 前記ローカルコンピュータから要求を受けるまで、より新しい変化により取って代わられた変化を破棄するステップを有する、請求項12に記載の方法。
  14. ローカルコンピュータからリモートコンピュータを制御する方法であって、
    前記ローカルコンピュータと前記リモートコンピュータとをリンクするステップと、
    前記ローカルコンピュータにコマンドを入力するステップと、
    前記ローカルコンピュータから前記リモートコンピュータに前記コマンドを送信し、前記リモートコンピュータで実行させるステップと、
    請求項1乃至13いずれか一項記載の前記リモートコンピュータから表示データを送るステップとを有する、方法。
  15. コンピュータで請求項1乃至14いずれか一項に記載の方法を実施する処理コードを記録した記録媒体
  16. リモートコンピューティングシステムであって、リモートコンピュータの表示データを生成するように構成されたプロセッサを有し、前記リモートコンピュータは、プロセッサとディスプレイとを有するローカルコンピュータにネットワークを介して接続され、
    前記リモートコンピュータのプロセッサは、
    前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割し、
    各タイルに色削減アルゴリズムを適用して色削減タイルを作り、各タイルを対応する色削減タイルと比較することにより、各タイルが画像データを表すかテキストデータを表すか判断し、
    テキストデータを表す各タイルをロスレス圧縮を用いて符号化し、
    画像データを表す各タイルをロッシー圧縮を用いて符号化し、
    前記リモートコンピュータから前記ローカルコンピュータに前記ロッシー圧縮によって符号化されたロッシー符号化画像データと前記ロスレス圧縮によって符号化されたロスレス符号化テキストデータとを含む表示データを送信し、前記ローカルコンピュータディスプレイに前記リモートコンピュータ表示データを表示させるように構成され、
    前記判断するステップは、
    ロスレス圧縮を用いて各タイルを圧縮して第1の符号化コピーを作る第1の符号化ステップと、
    前記色削減タイルを、前記第1の符号化ステップで用いた前記ロスレス圧縮で圧縮して第2の符号化コピーを作る第2の符号化ステップと、
    前記第1の符号化コピーと前記第2の符号化コピーとを比較して、前記タイルが画像データを表すかテキストデータを表すか判断するステップとを有し、
    前記第1の符号化コピーのサイズが前記第2の符号化コピーのサイズより大きいとき、タイルは画像データを表し、前記第1の符号化コピーのサイズが前記第2の符号化コピーのサイズとほぼ等しいとき、タイルはテキストデータを表す、
    リモートコンピューティングシステム
  17. リモートコンピューティングシステムであって、
    プロセッサとディスプレイとを有するローカルコンピュータと、
    プロセッサを有するリモートコンピュータと、
    前記ローカルコンピュータと前記リモートコンピュータとをリンクするネットワークとを有し、
    前記リモートコンピュータのプロセッサは、
    前記リモートコンピュータの表示データを生成し、
    前記リモートコンピュータ表示データの少なくとも一部を複数のタイルに分割し、
    各タイルに色削減アルゴリズムを適用して色削減タイルを作り、各タイルを対応する色削減タイルと比較することにより、各タイルが画像データを表すかテキストデータを表すか判断し、
    テキストデータを表す各タイルをロスレス圧縮を用いて符号化し、
    画像データを表す各タイルをロッシー圧縮を用いて符号化し、
    前記リモートコンピュータから前記ローカルコンピュータに前記ロッシー圧縮によって符号化されたロッシー符号化画素データと前記ロスレス圧縮によって符号化されたロスレス符号化テキストデータとを含む表示データを送信し
    前記ローカルコンピュータの前記プロセッサは、前記送信された表示データを復号し、前記ローカルコンピュータディスプレイに前記リモートコンピュータディスプレイを表示するように構成され、
    前記判断するステップは、
    ロスレス圧縮を用いて各タイルを圧縮して第1の符号化コピーを作る第1の符号化ステップと、
    前記色削減タイルを、前記第1の符号化ステップで用いた前記ロスレス圧縮で圧縮して第2の符号化コピーを作る第2の符号化ステップと、
    前記第1の符号化コピーと前記第2の符号化コピーとを比較して、前記タイルが画像データを表すかテキストデータを表すか判断するステップとを有し、
    前記第1の符号化コピーのサイズが前記第2の符号化コピーのサイズより大きいとき、タイルは画像データを表し、前記第1の符号化コピーのサイズが前記第2の符号化コピーのサイズとほぼ等しいとき、タイルはテキストデータを表す、
    リモートコンピューティングシステム。


JP2013543876A 2010-12-14 2011-11-22 表示データの符号化方法及びシステム Active JP5995864B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1021259.5A GB2481870B (en) 2010-12-14 2010-12-14 Method and system for remote computing
GB1021259.5 2010-12-14
PCT/GB2011/052286 WO2012080713A1 (en) 2010-12-14 2011-11-22 Method and system for encoding display data

Publications (2)

Publication Number Publication Date
JP2014506042A JP2014506042A (ja) 2014-03-06
JP5995864B2 true JP5995864B2 (ja) 2016-09-21

Family

ID=43567229

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013543876A Active JP5995864B2 (ja) 2010-12-14 2011-11-22 表示データの符号化方法及びシステム

Country Status (5)

Country Link
US (1) US8760366B2 (ja)
EP (1) EP2652951B1 (ja)
JP (1) JP5995864B2 (ja)
GB (1) GB2481870B (ja)
WO (1) WO2012080713A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013027908A1 (en) * 2011-08-25 2013-02-28 Lg Electronics Inc. Mobile terminal, image display device mounted on vehicle and data processing method using the same
WO2014047606A2 (en) * 2012-09-24 2014-03-27 President And Fellows Of Harvard College Techniques for data synchronization using compressive sensing
US9077965B2 (en) 2012-10-12 2015-07-07 Mediatek Inc. Method and apparatus for performing lossy image compression through source quantization and lossless compression kernel, and related method and apparatus for image decompression
US20140118542A1 (en) * 2012-10-30 2014-05-01 Teleste Oyj Integration of Video Surveillance Systems
GB2507603B (en) * 2013-03-01 2014-10-01 Gurulogic Microsystems Oy Data encoder, data decoder and method
US9912624B2 (en) 2015-09-25 2018-03-06 International Business Machines Corporation Lossy text source coding by word length
CN109831668B (zh) * 2018-12-29 2022-06-24 中兴通讯股份有限公司 数据压缩方法及装置、数据编码/解码方法及装置
FR3117640B1 (fr) * 2020-12-11 2023-06-02 Blade Procédé de production de données d’affichage au niveau d’un terminal d’une machine virtuelle hébergée sur un serveur d’un ordinateur hôte

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324305B1 (en) * 1998-12-22 2001-11-27 Xerox Corporation Method and apparatus for segmenting a composite image into mixed raster content planes
US8416847B2 (en) 1998-12-21 2013-04-09 Zin Stai Pte. In, Llc Separate plane compression using plurality of compression methods including ZLN and ZLD methods
US20020115477A1 (en) * 2001-02-13 2002-08-22 Raja Singh Portable high speed internet access device with scrolling
US7218784B1 (en) * 2000-05-01 2007-05-15 Xerox Corporation Method and apparatus for controlling image quality and compression ratios
US7065254B2 (en) * 2001-09-13 2006-06-20 Sharp Laboratories Of America, Inc. Multilayered image file
US6825846B2 (en) * 2001-12-10 2004-11-30 American Megatrends, Inc. Systems and methods for capturing screen displays from a host computing system for display at a remote terminal
US7016547B1 (en) * 2002-06-28 2006-03-21 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
US7072512B2 (en) 2002-07-23 2006-07-04 Microsoft Corporation Segmentation of digital video and images into continuous tone and palettized regions
US7333240B2 (en) * 2003-10-01 2008-02-19 Hewlett-Packard Development Company, L.P. Color image processor
US8345999B2 (en) * 2005-12-15 2013-01-01 Xerox Corporation System and method for monochrome binary compression on legacy devices
JP5046527B2 (ja) * 2006-02-14 2012-10-10 カシオ計算機株式会社 コンピュータシステムのサーバ装置及びサーバ制御プログラム
JP4697967B2 (ja) * 2006-03-02 2011-06-08 キヤノン株式会社 画像符号化装置及びその制御方法
US7801356B2 (en) * 2006-05-15 2010-09-21 Cisco Technology, Inc. Methods and apparatuses for generating compressed data representing a visual frame
JP2008109478A (ja) * 2006-10-26 2008-05-08 Canon Inc 画像符号化装置及び方法及びプログラム及び記憶媒体
JP4538514B2 (ja) * 2008-07-30 2010-09-08 シャープ株式会社 画像圧縮方法、画像圧縮装置、画像形成装置、コンピュータプログラム及び記録媒体
JP2010171971A (ja) * 2009-01-26 2010-08-05 Toshiba Corp 画像形成装置、そのシステム及びその制御方法
JP4707751B2 (ja) * 2009-05-21 2011-06-22 シャープ株式会社 画像圧縮方法、画像圧縮装置、画像形成装置、コンピュータプログラム及び記録媒体
GB2481612A (en) * 2010-06-30 2012-01-04 Skype Ltd Updating image regions in a shared image system

Also Published As

Publication number Publication date
US8760366B2 (en) 2014-06-24
US20130249774A1 (en) 2013-09-26
WO2012080713A1 (en) 2012-06-21
EP2652951B1 (en) 2016-04-20
GB201021259D0 (en) 2011-01-26
EP2652951A1 (en) 2013-10-23
GB2481870A (en) 2012-01-11
GB2481870B (en) 2012-06-13
JP2014506042A (ja) 2014-03-06

Similar Documents

Publication Publication Date Title
JP5995864B2 (ja) 表示データの符号化方法及びシステム
JP7134200B2 (ja) デジタルイメージ再圧縮
US8254704B2 (en) Remote computing platforms providing high-fidelity display and interactivity for clients
CN109842803B (zh) 一种图像压缩的方法及装置
US11451835B2 (en) Method and device for entropy coding and decoding using mapping of matching relationship parameters
KR101962990B1 (ko) 복잡도가 낮은 원격 프리젠테이션 세션 인코더
CN1669233A (zh) 视频压缩系统
JP3618833B2 (ja) 画像処理装置及び方法
KR101805550B1 (ko) 프리젠테이션 가상화를 위한 화면 부호화 방법 및 서버
CN107368269B (zh) 传输屏幕图像的方法、装置和系统
US9332277B2 (en) Transform space difference compression
WO2016016607A1 (en) Managing display data for display
US20120218292A1 (en) System and method for multistage optimized jpeg output
CN108668170B (zh) 图像信息处理方法及装置、存储介质
CN116030114A (zh) 物电同源电子印模的制作方法、装置、设备及介质
WO2015107622A1 (ja) 画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置
CN113766319A (zh) 图像信息处理方法及装置、存储介质
JP2002262100A (ja) 計算機画面画像符号化方法およびその実行プログラムとその実行プログラムを記録した記録媒体
CN111131857A (zh) 图像压缩方法、装置及电子设备
EP1051806B1 (en) Method for encoding digital information
KR20160098822A (ko) 클라우드 스트리밍 서비스 시스템, 화질 저하도에 따른 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
JP5593514B2 (ja) スクリーンフレームの符号化方法、及び、それを応用した電子装置
JP2011120180A (ja) 画像符号化装置及びその制御方法
JP2008042684A (ja) 画像符号化装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2007060206A (ja) データ圧縮装置およびデータ圧縮プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140710

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160310

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160823

R150 Certificate of patent or registration of utility model

Ref document number: 5995864

Country of ref document: JP

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

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250