[go: up one dir, main page]

JP2005506019A - カラービットマップの正規化 - Google Patents

カラービットマップの正規化 Download PDF

Info

Publication number
JP2005506019A
JP2005506019A JP2003536994A JP2003536994A JP2005506019A JP 2005506019 A JP2005506019 A JP 2005506019A JP 2003536994 A JP2003536994 A JP 2003536994A JP 2003536994 A JP2003536994 A JP 2003536994A JP 2005506019 A JP2005506019 A JP 2005506019A
Authority
JP
Japan
Prior art keywords
bitmap
color
colors
computer
palette table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003536994A
Other languages
English (en)
Inventor
アリッフィ、サルヴォ
フェッラーラ、フィロメーナ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2005506019A publication Critical patent/JP2005506019A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/46Colour picture communication systems
    • H04N1/64Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor
    • H04N1/644Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor using a reduced set of representative colours, e.g. each representing a particular range in a colour space
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

遠隔制御システムにおいて(多くの他の環境においてと同様)、ビットマップの色表現は、記憶領域の占有および送信速度の点で、最も大きい要素の1つである。多くの場合、ビットマップによって実際に用いられるのは限られた数の色のみであるので、単一画素のビットパターンは、全ての可能な異なる色を表すために実際に必要なものよりも大きい。
本発明によって、色の数が所定の閾値を超えない場合、ビットマップにおいて用いられる全ての色を含むパレットテーブルを生成する。そして、ビットマップにおける画素表現は、パレットテーブルにおける対応するエントリに対するポインタによって置換される。これによって、ビットマップの全体的なサイズを小さくすることができる。そして、小さくなったビットマップを、関連するパレットテーブルと共に送信する。受信コンピュータ(遠隔制御システムにおけるコントローラ)は、パレットテーブルによって、元のビットマップを再構築することができる。

Description

【技術分野】
【0001】
本発明は、カラービットマップ(color bitmap)の記憶領域の占有を小さくするための、特に、ネットワークを介してビットマップを格納または送信しなければならないシステムにおいて用いられる方法およびシステムに関する。
【背景技術】
【0002】
ビットマップサイズは、特にネットワークを介してビットマップを格納または送信しなければならない場合、重要なパラメータである。最初の場合には記憶領域の占有、後者の場合には送信速度が、大きく影響を受ける可能性がある。この理由のため、ビットマップのサイズを小さくし、結果としてそれらの記憶領域の占有および送信速度を低減するために、多くの技法が開発されている。唯一のものではないが、この必要性が極めて重要である一種の用途は、「遠隔制御(remote control)」である。遠隔制御プログラムは、通信の用途の特別なカテゴリである。それらは、あるコンピュータを、それを実際に制御する別のコンピュータと単に接続する以上のものである。電話線およびモデムを介して、またはLAN接続を介して接続されることによって、これらのプログラムは、通常ターゲットと呼ばれる1つのデータ処理システム(例えばパーソナルコンピュータまたはワークステーション)のリソースを全て、通常コントローラと呼ばれる別のデータ処理システム(例えばLANによって接続されたパーソナルコンピュータまたはワークステーション)の完全な制御下に置くことができる。コントローラの画面は、ターゲットのものを再現する。コントローラのキーボードは、ターゲットのデータ処理システム上に直接文字を入力することができる。コントローラのマウスは、ターゲットの画面上でマウスポインタを動かすことができる。コントローラの画面は、常にターゲットのデータ処理システムの画面からデータを受信する。同様に、コントローラのキーボードは、キーが打たれるたびに、ターゲットのデータ処理システムにデータを送信する。あらゆる実際上の目的のため、コントローラのユーザは、ターゲットのデータ処理システムの前に座っているようなものである。
【0003】
この種の遠隔制御ソフトウエアは、多くの環境において有用であり得る。単に一例として、オフィスのパーソナルコンピュータシステムを、家庭のパーソナルコンピュータから制御し動作させることができる。オフィスのPCが(例えばモデムに)接続されたままであれば、家庭のPCから制御を行うことができ、このターゲットPCのリソースを全て遠隔で制御し用いることができる。より具体的な使用は、オフィスでネットワーク接続したPCに(例えばモデムを介して)ダイヤルインし、ログインし、ネットワークアプリケーションを動作させ、またはネットワーク上の共有ファイルを更新することである。
【0004】
送信線によって障害となるものが生じると、遠隔制御動作の速度に大きな影響を与える可能性がある。性能を上げるため、遠隔制御プログラムは、通信線(例えばLANまたは電話ケーブル)を介して送信する必要のあるデータ量を減らし最小限に抑えようとする。コントローラPCに再現しなければならないターゲットPCのディスプレイ画面上のビデオ画像のリフレッシュ(refresh)は、転送しなければならない情報量が多いため、送信速度の大きな要素となる。過去において、遠隔制御プログラムは、数分の1秒ごとにターゲットPC画面の全画像を遠隔PCに送信しリフレッシュすることによって機能した。画面の画像をコントローラPCに送信する一定の速度は、画面リフレッシュレートと呼ばれた。次の画面リフレッシュにターゲットPCの変化が含まれると、コントローラPCの画面は、ターゲットPCの画面を正確に反映した。この手法は、むろん、各リフレッシュで送信するデータが大量であるため、速度に関してあまり満足できるものではなかった。
【0005】
多くの場合、画像の変化は画面の小さい部分に限られており(例えばメニューのプルダウン、オブジェクトの強調)、変化したデータのみをリフレッシュする必要がある。コントローラシステムは、以前に受信した画面データを使用し、その画面の変更部分のみをリフレッシュすることができる。冗長な画面リフレッシュデータを除外することによって、遠隔制御プログラムは、応答時間を改善することができる。キャッシュメモリは、ハードドライブおよびメモリチップの性能を高め、また、遠隔制御プログラムのために有用であり得る。キャッシュの背景にある考えは、迅速にアクセス可能である一時的な格納領域に最近用いたデータを保持することである。まもなくデータが再び必要になると、それらを元のソースから検索するよりも、高速アクセスの一時的格納領域からアクセスする方がはるかに迅速である。この技法に従って、最近表示した画面の要素を、拡張メモリにキャッシュとしてセーブする。ページ全体がコントローラPC画面キャッシュから再作成され、ターゲットからコントローラPCにモデムを介して大量の情報を転送する必要をなくす。画面キャッシュから再作成されることが多い画面要素には、ビットマップ、テキストおよびフォントが含まれる。
【0006】
ビットマップ画像の送信において、送信される最も重い情報の1つは、各画素の色である。周知のRGBフォーマットでは、各画素の色は、1つは赤、1つは緑、1つは青である3つの8ビット(すなわち各々が8ビットを有する3バイト)によって表される。異なる色の最大可能数は、16,777,216すなわち224である。全ての可能な色によるこの表現は、「トゥルーカラー(true color)」と呼ばれる。
【発明の開示】
【発明が解決しようとする課題】
【0007】
遠隔制御システムでは(多くの他の環境と同様に)、この詳細な色表現が常に必要であるわけではなく、この情報全ての送信は望ましくない負担となることが多い。通常、コントローラシステムの範囲では、もっと低品質の色画像でも充分であろう。この理由のため、多くの遠隔制御システムは、減色アルゴリズム(color reduction algorithm)を用いて、色表現を24(または16)ビットから8ビットまたは4ビットにまで削減する。これらのアルゴリズムを実施する機能の1例は、Microsoft(R)のGetDIBitsである。従来技術の減色機能の欠点は、主として元の画像にできるだけ近い減色画像を生成しようとしているために、この減色の実行にそれらが比較的長い計算時間を必要とすることである。遠隔制御システムでは、多くの場合、これらの動作は極めて高速で行われなければならず、減色による遅延は許容不可能である。代替的な減色機構は、International Business Machines CorpによるTivoli Remote Controlによって実施され、英国特許出願9917455.9に記載されたものである。この機構は、処理が速くなる利点を有し、その代わりに、結果として得られる「減らした」色と元の色との間の対応の精度が低下している。この精度低下は、通常、特に遠隔制御システムにおいては許容可能であり、計算における遅延よりは好ましい。従って、処理の速度および容易さを結果の精度と組み合わせる方法は、極めて望まれるものであろう。
【0008】
本発明の目的は、上述の欠点を克服する技法を提供することである。
【課題を解決するための手段】
【0009】
本発明に従って、我々は、複数の画素を表すビットマップのサイズを小さくするための方法を提供する。各画素はビットパターンによって表される。この方法は、
ビットマップに含まれる異なるビットパターンの数nを数えるステップと、
後の再使用のために、少なくともn個のエントリを有するパレットテーブルを生成するステップであって、異なるパターンの各1つは該ビットパターンを含む少なくとも1つの対応するエントリを有する、ステップと、
ビットマップにおけるビットパターンを、パレットテーブルにおける対応するエントリに対するポインタによって置換するステップと、
を具備する。
【0010】
また、本発明に従って、コンピュータプログラムであって、該プログラムがコンピュータ上で実行された場合に上述の方法を実行するためのプログラムコード手段を含むコンピュータプログラムを提供する。
【0011】
本発明の様々な実施形態について、添付図面を参照して、一例として詳細に説明する。
【発明を実施するための最良の形態】
【0012】
図1は、遠隔制御システムを実施可能である典型的なローカルエリアネットワーク(LAN)の一例を示す。これは、2つ以上のデータ処理システム間の通信ブリッジとして機能するLANサーバ101を備える。他の接続システムでは、サーバの機能は、例えば、ブリッジ、モデム、ケーブル、または一般的に、2つ以上のデータ処理システム間に挿入され、それらを接続状態とするいずれかのデバイスによって実行される。
【0013】
データ処理システム105は、コントローラであり、代替的に、他のデータ処理システム103、107、および109の1つの制御を行うことができる。
【0014】
データ処理システム103、105、107、および109は、市販されたパーソナルコンピュータまたはワークステーションとすることができる。それらは、好ましくは、当技術分野に既知の方法で結合されたディスプレイユニットおよびキーボードを含む。更に、データ処理システムは、主プロセッサおよびメモリに加えて固定ディスクドライブおよびディスケットドライブを搭載するように機能することができるプロセッサシステムユニットを含む。更に、グラフィカルユーザインタフェースの利用を容易にするために、データ処理システムは、好ましくは、マウス等のグラフィックポインティングデバイスを含み、これを用いて、画面上の視覚的ディスプレイ内でポインタの位置を操作することができる。
【0015】
上述のデータ処理システムは、International Business Machines Corporationによって製造されるパーソナルコンピュータ等、最新のパーソナルコンピュータのいずれかを利用して実施可能であることは、当業者には認められよう。
【0016】
データ処理システムには、通常、グライフィカルユーザインタフェース(GUI)が設けられており、ユーザがデータ処理システムを制御し、システムディスプレイ上にユーザアクションの結果を提示することを可能とする。グラフィカルユーザインタフェースにおいて、アプリケーションおよびデータは、通常、ユーザインタフェース上に描かれたオブジェクトとして提示される。このため、ユーザには、複雑なデータ処理システムに対する図による直観的なインタフェースが与えられて、描かれたオブジェクトのグラフィックによる選択およびそれらのオブジェクトに対応するアプリケーションの操作を可能とする。
【0017】
上述の構成を利用した多数の異なるグラフィカルユーザインタフェース環境が市販されている。これらの環境には、Apple Computer,Inc.によって開発されたSystem7オペレーティングシステム(System7はApple Computer,Inc.の商標である)、Microsoft Corporationによって開発されたWindows(R)グラフィカルユーザインタフェース(Windows(R)はMicrosoft Corporationの商標である)、International Business Machinesによって開発されたOS/2 Presentation Manager(OS/2およびPresentation ManagerはInternational Business Machinesの商標である)が含まれる。
【0018】
ウインドウ環境は、一般に、コンピュータシステム100の動作を制御するためのユーティリティプログラム集合を含むオペレーティングシステムソフトウエアの一部である。
【0019】
図1に示す例では、システム103はターゲットシステムとして規定され、システム103のリソースは全てコントローラシステムによって使用し活性化することができる。かかる制御を実行するため、システム105は、そのディスプレイ上に、ターゲットディスプレイ103の正確なコピーを表現することができなければならない。
【0020】
上述のように、ビットマップに関連する最も重い情報の1つは、元の画像の各画素の色である。遠隔制御システムでは、要求される精度のレベルは常に極めて高いわけではなく、完全な色情報を送信することは送信時間を無駄にするものであろう。RGBフォーマットによれば、各画素の色は、1つは赤、1つは緑、1つは青である3つの8ビット(すなわち各々が8ビットを有する3バイト)によって表される。いかなるアプリケーションでも、通常、可能な16.777.216色のうち256から成るサブセットで充分である。遠隔制御システムでは、時として、16色が許容可能な妥協案である。これらの減色表現は、一種のインデクス(パレット)を利用し、これは、通常「トゥルーカラー」表現(すなわち3バイト)において可能な色を全て含む。最新のシステムで用いられる別の可能な表現は、64kカラービットマップである。64kカラービットマップでは、各画素を2バイトによって表す。これらの2バイトは、この場合、64k長パレットにおけるインデクスではなく、それら自身が色を表す。16ビットを、3つの5ビット長のグループに分割する。1ビットは無視される。これらのグループの各々が、基本色すなわち赤、緑、および青の1つの強度を識別する。
【0021】
図2は、256色ビットマップを実現する最新の色パレットを示す。ビットマップ201の各画素は、8ビット長である。この場合の8ビット画素は、色自体を表すのではなく、代わりに、システムが用いる物理的な色を含むテーブル203に対するエントリ(entry)を表す。このテーブルはパレットと呼ばれる。256色ビットマップのパレットは、必然的に256のエントリを有しなければならない。つまり、各色に1つである。各エントリは、所望の色を描くために必要な緑、赤、および青の量を表す3つの値によって形成される。色パレットの使用は、ビットマップを正規化し、多くの空間を節約するための技法である。実際、各画素ごとに必要な1バイト(8ビット)に対して、各エントリは3バイト長(RGB)である。このインデクス機構によって、ビットマップのサイズを大幅に縮小する。
【0022】
しかしながら、これらの色のほとんどが実際に用いられないという可能性があり、たいていの場合はそうである。1つのビットマップがサポートする色の数は、色を表すためにそのビットマップで用いられるビット数を決めるだけであり、必ずしも実際に用いられている色の数ではない。換言すれば、ビットマップにおいて見出される理論上の色の数と、ビットマップにおいて実際に用いられる色の数とは、全く別のものである。
【0023】
理論上、256色ビットマップは、それが「ソリッドブラシ(solid brush)」によって描いた領域である場合は1つの色のみを有し、それが2色筆によって描かれた領域である場合または何らかの文書を含む場合は2つの色を有し得る。これは、遠隔制御システムでは極めて一般的に起こることである。なぜなら、これは、文字が書かれたページの大部分を占める典型的な場合だからである(すなわち、画面上にワードプロセッサを表示する場合)。同じ概念を、4色および16色に拡張することができる。本発明による方法およびシステムは、もっと多くの数の色を有するビットマップを用いても使用可能であるが、その利点は小さくなるか、または更には消えてしまう恐れがある。
【0024】
本発明によれば、上述の状況の1つが発生する(すなわち1つのビットマップ内で実際に用いるのが限られた数の色のみである)場合、元のビットマップを、実際に用いる色のみをアドレスする「正規化(normalized)」したものによって置換することができる。上述の図1に示す例では、ビットマップ201において2つの色のみが表現される。すなわち、可能な256色のうち第1のもの(16進表現で00)および最後のもの(FF)である。これは、テーブル203の254のエントリがこのビットマップによって用いられないことを意味する。ビットマップの各画素は、テーブル203の256のエントリをアドレスするのに必要な16進数を表すために8ビット(数ごとに4ビット)を必要とする。この場合、ビットマップの可能な色を全て表すためには、単一のビットで充分であろう(0および1)。各々が3バイトを有する2つのエントリを有するテーブル(パレット)は、ビットマップ201が必要とする色を全て含むことができる。本発明の好適な実施形態によれば、図3に例として示すように、ビットマップ201とパレット203との間に「第2レベルのパレット」を挿入することができる。
【0025】
ビットマップ301では、画素値00およびFFが0および1によって置換されている。なぜなら、ビットマップは実際には2つの色のみを用いていたからである(色パレット203の最初のもの(00)および最後のもの(FF)の16進エントリに対応する)。図2の元のビットマップ201は、画素ごとに8ビットを用いていたが、同じ情報を、画素ごとに1つのみのビットによって表すことができる。実際、1ビットは2つの値のみを表し、この場合はこれらで充分である。問題は、1ビットの2つの値を、どのようにして256色パレットの2つの実際のエントリに一致させるかである。答えは、第2レベルのパレット303を用いることである。第2レベルのパレットは、実際に用いている色の数に関してビットマップを正規化する方法である。これは、元の色パレットに対する第2レベルの間接的方法である。換言すると、上述の例を参照すると、ビット値0は、第2レベルのパレットの第1のエントリをアドレスし、これは元のパレットのエントリ番号00をアドレスする。ビット値1は、第2レベルのパレットの第2のエントリをアドレスし、これは元のパレットのエントリ番号FFをアドレスする。
【0026】
上述の例は、極めて単純な動作で、元の表現の精度を失うことなく、どのように元のビットマップを理論的に元のサイズの8分の1に小さくすることができるかを示す。この場合、バイト00の全発生をビット値0によって置換し、バイトFFの全発生をビット値1によって置換すれば充分である。従って、新しいビットマップは、その第2レベルのパレットに結合されると有意義である。元のビットマップを再構築することができるのは、第2レベルのパレットによってである。
【0027】
図4は、本発明の好適な実施形態による方法のステップを概略的に示す。ビットマップ401に「正規化プロセス」を適用して、出力としてパッケージ403を生成する。これは、例えばネットワーク上で送信することができる。パッケージ403は、正規化ビットマップ405と、正規化ビットマップ405を「復号」するために必要な対応するパレット407とを含む。「逆正規化(reverse normalization)」プロセスは、入力としてパッケージ403を受信し、これは、出力としてビットマップ409を生成する。ビットマップ409は、元のビットマップ401に対応する。上述の遠隔制御システムの例では(図1を参照のこと)、ビットマップ401を、ネットワーク(例えばLAN)上で、ターゲットのコンピュータ(例えば103)からコントローラコンピュータ105に送信しなければならない。元のビットマップで実際に用いる色の数が限られている場合(例えば16未満)、本発明に従って正規化プロセスを適用することにより、色ビットマップ401のサイズを小さくすることが有利である可能性がある。この正規化プロセスは、ターゲットコンピュータ103で実行しなければならず、これは、正規化ビットマップ403およびパレット407を出力として生成する。正規化ビットマップは、サイズが小さくなっており、LAN上でコントローラコンピュータ105に送信することが容易になり速くなる。正規化ビットマップ403が、パレット407と共にコントローラコンピュータ105によって受信されると、逆正規化プロセスにより、元のビットマップ401と同一のビットマップ409を構築することができる。
【0028】
先に示した例では、システムは、256色の表現を用い、対応するパレット203(例えば図2および3を参照のこと)は、ターゲットコンピュータ103およびコントローラコンピュータ105の双方で利用可能である。従って、ビットマップ401の画素は、256の異なる色をアドレス可能とするために、各々が8ビットを必要とする。前述のように、実際にはこれらの限られた256色のサブセットのみを用いるということが起こり得る。この場合、元のビットマップ401を、「第2レベル」のパレットをアドレスする正規化ビットマップ405で置換することが有利である。この第2レベルのパレットは、以下の表に従い、正規化パレットにおいて表現可能な色の最大数と同じ数のエントリを有する。
【0029】
Figure 2005506019
【0030】
第1の場合、ピクチャを再生するために必要な色は単一の色のみなので、実際にはビットマップは送信されず、一方、最後のもの(>16色の使用)では、本発明の方法では何の利点もないということを注記しておく。
【0031】
本発明の好適な実施形態によれば、第2レベルのパレットは、以下のステップで得られる。
−送信対象のビットマップによって実際に用いられる色の数をカウントする。
−この数が16未満である場合、256色のパレット上でこれらの色の各1つをアドレスするために、第2レベルのパレット(上述の表に従ったサイズを有する)を生成する。
−画素が第2レベルのパレットで対応する色をアドレスする正規化ビットマップによって、元のビットマップを置換する。
【0032】
本発明について、256色の表現を有する開始ビットマップを参照して詳細に説明した。これは単に1例であり、大きな相違なく同じ技法を様々な表現に適用可能であることは、当業者には認められよう。別の可能性は、元のビットマップがもっと多くの色を有する色表現を用いる場合、上述した例の正規化プロセスの前に減色ステップを実行することである。多くの場合、これは負担を追加することにはならない。なぜなら、上述のように、減色技法は、最新の遠隔制御システムにおいて多く用いられるからである。本発明の好適な実施形態によれば、GB特許出願9917455.9に開示されたような減色技法を用いて、64k色ビットマップを(または「トゥルーカラー」ビットマップでさえも)256色のビットマップに変換する。この種の減色を行う場合、ビットマップ全体を画素ごとに走査する。本発明の好適な実施形態は、追加の動作のため、この走査を利用する。
−実際に用いられている色の数をカウントする。
−第2レベルのパレットを構築する。
【0033】
必ずしも減色アルゴリズムを変更することなく同じ情報を明白に検索することができるが、効率を高めるためにそうすることが合理的である。
【0034】
以下は、本発明の好適な実施形態において上述の方法ステップを実施することができる方法の例である。
【0035】
色の数のカウント
256色のビットマップの場合、256バイト長のアレイおよびカウンタを割り当てることが充分である。アレイおよびカウンタをゼロに初期化する。色の数をカウントするため、ビットマップを走査する必要がある。新しい画素が走査されるたびに、このアレイに対するインデクスとして画素を用いる。対応する要素値がまだ0である場合、これを1に変更してカウンタを増分する。走査が完了した時、カウンタは、ビットマップが実際に用いる色の数を示す。
【0036】
ビットマップの正規化
256色のビットマップの場合、256バイトの間接的アレイを割り当てれば充分である。この場合も、この走査は、可能ならば既存の方法の走査を利用することは明らかである。間接的インデクスアレイにおいてどの新しいエントリを追加しているかを示す変数が必要である。このアレイは、第2レベルのパレットにおける対応するパレットエントリの変換を表す。従って、N個のエントリのみを用いることがわかる。ここで、Nはまさに色の数である。他のエントリが想定する値は意味がない。それらのエントリは、アクセスされない。なぜなら、それらの位置を示す元のビットマップに画素が無いからである。新しい色が生じるたびに、画素値自体をこのアレイに対するインデクスとして用いて(色をカウントする場合に用いた同様のプロセス)、対応するエントリを、正規化ビットマップにおける画素の新しい値で更新する。次いで、カウンタを増分する。2つのプロセスを共に組み合わせる場合、色をカウントするのに用いた同じカウンタを使用可能である。いったんこのアレイを形成すると、第2レベルのパレットを構築しビットマップの正規化を実行することは容易であり、元の画素の全発生が間接的インデクスの対応するエントリで置換される。
【0037】
正規化ビットマッププロセスにおいて間接的インデクスを用いる一方で、第2レベルパレットを用いて逆プロセスを実行する。この理由で、第2レベルパレットは正規化ビットマップと共に送信しなければならず、このため元のビットマップは逆プロセスによって得ることができる。
【0038】
第2レベルパレットは、正規化プロセスの出力であり、逆正規化プロセスに対する入力である。
【0039】
正規化ビットマップにおいて、画素は、元のビットマップよりも少ないビットで表される。画素は、第2レベルパレットに対するインデクスとして解釈される。第2レベルパレットに、非正規化ビットマップの画素の拡大値または元の値を格納する。
【0040】
逆正規化プロセス
このプロセスは、正規化ビットマップおよび第2レベルパレットから元のビットマップを復元することになっている。このプロセスは、正規化プロセスのちょうど逆である。正規化ビットマップが用いる画素ごとのビット数が与えられると、このプロセスは、各値の発生を、対応する第2レベルパレットのエントリによって置換する。
【0041】
上述の方法およびシステムの性能は、色ビットマップを格納または送信する最新のシステム(例えば遠隔制御システム)で実施されると、圧縮アルゴリズムによって影響を受ける可能性があることを注記しておかなければならない。従って、本方法を用いる場合、性能向上の正確な絶対的大きさを与えるのは難しい。いずれにしても、ビットマップにおいて限られた数の色を用いる場合(例えば256色表現において16未満)、ビットマップのサイズの平均20%の縮小が得られ、結果として送信速度比が低下すると推定される。
【図面の簡単な説明】
【0042】
【図1】本発明の方法およびシステムを実施するために利用可能なネットワークおよびパーソナルコンピュータを概略的に示す。
【図2】来技術による色パレットを示す。
【図3】本発明の好適な実施形態による第2レベル色パレットシステムの一例を示す。
【図4】本発明の好適な実施形態による方法を示す。

Claims (8)

  1. 複数の画素を表すビットマップのサイズを小さくするための方法であって、各画素はビットパターンによって表され、この方法は、
    前記ビットマップに含まれる異なるビットパターンの数nを数えるステップと、
    後の再使用のために、少なくともn個のエントリを有するパレットテーブルを生成するステップであって、前記異なるパターンの各1つは該ビットパターンを含む少なくとも1つの対応するエントリを有する、ステップと、
    前記ビットマップにおける前記ビットパターンを、前記パレットテーブルにおける前記対応するエントリに対するポインタによって置換するステップと、
    を具備する、方法。
  2. 各ビットパターンは3色表現における1つの色を表す、請求項1の方法。
  3. 前記ビットパターンは、3色表現における色のインジケータを含む第2のパレットテーブルに対するポインタである、請求項1の方法。
  4. 第1および第2のコンピュータを接続するネットワーク上でデジタル画像のビットマップを送信するための方法であって、
    前記第1のコンピュータにおいて、前出の請求項のいずれかの方法によって、前記ビットマップの大きさを小さくするステップと、
    前記小さくしたビットマップおよび前記パレットテーブルを前記第2のコンピュータに送信するステップと、
    前記第2のコンピュータにおいて、前記小さくしたビットマップおよび前記パレットテーブルによって前記デジタル画像を取得するステップと、
    を具備する、方法。
  5. コンピュータプログラムであって、該プログラムがコンピュータ上で実行された場合に、前出の請求項のいずれかの方法のステップを実行するように構成されたプログラムコード手段を含むコンピュータプログラム。
  6. 請求項5のコンピュータプログラムを含む遠隔制御プロダクト。
  7. 第1および第2のコンピュータを接続するネットワーク上でデジタル画像のビットマップを送信するためのシステムであって、
    前記第1のコンピュータにおいて、請求項1の方法によって、前記ビットマップの大きさを小さくするための手段と、
    前記小さくしたビットマップおよび前記パレットテーブルを前記第1のコンピュータから前記第2のコンピュータに送信するためのネットワーク手段と、
    前記第2のコンピュータにおいて、前記小さくしたビットマップおよび前記パレットテーブルを用いて前記デジタル画像を取得するための手段と、
    を具備する、システム。
  8. 請求項7のシステムを含む遠隔制御システム。
JP2003536994A 2001-10-11 2002-07-11 カラービットマップの正規化 Pending JP2005506019A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01480097 2001-10-11
PCT/EP2002/008474 WO2003034340A2 (en) 2001-10-11 2002-07-11 Color bitmap normalization

Publications (1)

Publication Number Publication Date
JP2005506019A true JP2005506019A (ja) 2005-02-24

Family

ID=8183413

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003536994A Pending JP2005506019A (ja) 2001-10-11 2002-07-11 カラービットマップの正規化

Country Status (6)

Country Link
US (3) US7382916B2 (ja)
EP (1) EP1436778A2 (ja)
JP (1) JP2005506019A (ja)
CN (1) CN1271565C (ja)
AU (1) AU2002325380A1 (ja)
WO (1) WO2003034340A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008309933A (ja) * 2007-06-13 2008-12-25 Funai Electric Co Ltd 電子機器

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7594207B2 (en) * 2006-09-13 2009-09-22 Cadence Design Systems, Inc. Computationally efficient design rule checking for circuit interconnect routing design
US8111809B2 (en) 2009-01-29 2012-02-07 The Invention Science Fund I, Llc Diagnostic delivery service
US8761520B2 (en) 2009-12-11 2014-06-24 Microsoft Corporation Accelerating bitmap remoting by identifying and extracting 2D patterns from source bitmaps
US8768067B2 (en) 2010-04-15 2014-07-01 Microsoft Corporation Accelerating bitmap remoting by identifying and extracting patterns from source bitmaps through parallel processing techniques
US8421816B1 (en) * 2010-06-30 2013-04-16 Amazon Technologies, Inc. Selection of colors
US9113115B2 (en) * 2012-07-24 2015-08-18 Hewlett-Packard Indigo B.V. Color image data compression
CN103019641B (zh) * 2012-12-13 2016-07-06 北京奇虎科技有限公司 在远程控制过程中传输数据的设备及方法
CN105551069B (zh) * 2015-11-30 2018-08-14 中国农业科学院棉花研究所 一种索引图像的实时快速生成方法及系统
US9846951B2 (en) 2016-03-31 2017-12-19 Konica Minolta Laboratory U.S.A., Inc. Determining a consistent color for an image

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4899136A (en) * 1986-04-28 1990-02-06 Xerox Corporation Data processor having a user interface display with metaphoric objects
US4939507A (en) * 1986-04-28 1990-07-03 Xerox Corporation Virtual and emulated objects for use in the user interface of a display screen of a display processor
JPH06284296A (ja) 1993-03-29 1994-10-07 Sanyo Electric Co Ltd 高圧縮符号化装置
JP3015227B2 (ja) 1993-05-26 2000-03-06 沖電気工業株式会社 画像処理装置
FR2711880B1 (fr) 1993-10-26 1996-01-05 Telediffusion Fse Procédé de codage d'images couleurs mettant en Óoeuvre une palette de couleurs.
US5504846A (en) * 1993-12-16 1996-04-02 International Business Machines Corporation Method and apparatus for improved area demarcation in bit mapped image derived from multi-color bit mapped image
DE4446139C2 (de) * 1993-12-30 2000-08-17 Intel Corp Verfahren und Einrichtung zum Hervorheben von Objekten in einem Konferenzsystem
JPH07274007A (ja) 1994-03-23 1995-10-20 Eastman Kodak Co カラーイメージを圧縮、パレット化、伝送、受信する方法及び装置
US6621934B1 (en) * 1996-12-17 2003-09-16 Thomson Licensing S.A. Memory efficient compression apparatus in an image processing system
JP3598737B2 (ja) 1997-06-09 2004-12-08 富士ゼロックス株式会社 カラー画像転送処理装置及び方法、カラー画像復元処理装置及び方法、並びにカラー画像転送システム
JPH1130978A (ja) 1997-07-09 1999-02-02 Seiko Epson Corp カラー画像の符号化方法およびその符号装置ならびにカラー画像の復号化方法およびその復号化装置
US6518981B2 (en) * 1997-11-12 2003-02-11 Canon Kabushiki Kaisha Generating and using a color palette
NL1009623C2 (nl) * 1998-07-13 2000-01-17 Oce Tech Bv Werkwijze voor het converteren van niet afdrukbare kleurwaarden naar afdrukbare kleurwaarden, een beeldreproductiesysteem voor het reproduceren van een kleurenbeeld alsmede besturingsmiddelen voorzien van kleurconversiemiddelen geschikt voor een dergelijk beeldreproductiesysteem.
JP3748172B2 (ja) * 1998-12-09 2006-02-22 富士通株式会社 画像処理装置
US6978042B1 (en) * 1999-04-23 2005-12-20 The Regents Of The University Of California Color image segmentation method
GB2354679B (en) * 1999-07-26 2003-08-27 Ibm Colour reduction for a remote control system
US6747681B1 (en) * 1999-08-05 2004-06-08 International Business Machines Corporation Computer controlled interactive display with dual cursor image storage for a smooth transition during cursor image change
US6865302B2 (en) * 2000-03-16 2005-03-08 The Regents Of The University Of California Perception-based image retrieval
US6522784B1 (en) * 2000-04-11 2003-02-18 International Business Machines Corporation Enhanced compression of gray-level images
JP2002133405A (ja) * 2000-10-23 2002-05-10 Nec Corp 画像データ登録方法
US6944357B2 (en) * 2001-05-24 2005-09-13 Microsoft Corporation System and process for automatically determining optimal image compression methods for reducing file size
US6808118B2 (en) * 2001-12-31 2004-10-26 Zebra Atlantek, Inc. Security code verification for identification cards

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008309933A (ja) * 2007-06-13 2008-12-25 Funai Electric Co Ltd 電子機器

Also Published As

Publication number Publication date
WO2003034340A3 (en) 2004-01-29
US20090116739A1 (en) 2009-05-07
AU2002325380A1 (en) 2003-04-28
US7382916B2 (en) 2008-06-03
US7480406B2 (en) 2009-01-20
WO2003034340A2 (en) 2003-04-24
US7912281B2 (en) 2011-03-22
CN1271565C (zh) 2006-08-23
US20080212876A1 (en) 2008-09-04
US20050002564A1 (en) 2005-01-06
CN1568483A (zh) 2005-01-19
EP1436778A2 (en) 2004-07-14

Similar Documents

Publication Publication Date Title
US7912281B2 (en) Mechanisms for reducing a size of a color bitmap
US6141022A (en) Screen remote control
JP3705617B2 (ja) 協同システムにおけるアプリケーション共用パレット管理の方法および装置
US6151020A (en) Real time bit map capture and sharing for collaborative tools
US7076735B2 (en) System and method for network transmission of graphical data through a distributed application
US4897799A (en) Format independent visual communications
US6292166B1 (en) System and method for sharing diverse display types in a bit map sharing collaborative tool
US5915098A (en) System for compressing bit maps to be shared and displayed in collaborative tool by client and server systems
US5864711A (en) System for determining more accurate translation between first and second translator, and providing translated data to second computer if first translator is more accurate
US7944451B2 (en) Providing pixels from an update buffer
KR100235219B1 (ko) 디스플레이 속성 식별치의 할당과 다중하드웨어 컬러 조사표를관리하는 방법 및 장치
JP4309270B2 (ja) グラフィックデータ及びデジタルドキュメント処理の視覚的表現を生成するシステム及び方法
US20010034770A1 (en) Method and device for implementing networked terminals in graphical operating environment
US20050024389A1 (en) Method and system for transmitting data for a shared application
JPH05225297A (ja) グラフィックス属性変換システム及び方法
US5847692A (en) Color converting method and apparatus and image processing method and apparatus
US7075538B2 (en) Methods and apparatus for faster line drawing on remote displays
US6600494B1 (en) Color reduction for a remote control system
EP1271409B1 (en) Method and System for Generating a digital image including a transparent object
US7146058B2 (en) Compression of images using object maps
US6091400A (en) Pixel conversion between different color depths
JPH05323908A (ja) 表示制御装置
JPH06291923A (ja) ウィンドウ表示制御装置およびウィンドウデータ切り出し方法
JPH05274396A (ja) 画像処理方法及びその装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061031

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070130

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070206

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070724