JP5106735B2 - 形状プロセッサ - Google Patents
形状プロセッサ Download PDFInfo
- Publication number
- JP5106735B2 JP5106735B2 JP2001577305A JP2001577305A JP5106735B2 JP 5106735 B2 JP5106735 B2 JP 5106735B2 JP 2001577305 A JP2001577305 A JP 2001577305A JP 2001577305 A JP2001577305 A JP 2001577305A JP 5106735 B2 JP5106735 B2 JP 5106735B2
- Authority
- JP
- Japan
- Prior art keywords
- shape
- pixel
- pixels
- display
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000009877 rendering Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims description 104
- 238000012545 processing Methods 0.000 claims description 67
- 230000008569 process Effects 0.000 claims description 42
- 239000011159 matrix material Substances 0.000 claims description 25
- 230000007704 transition Effects 0.000 claims description 24
- 238000002156 mixing Methods 0.000 claims description 22
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 230000001131 transforming effect Effects 0.000 claims description 5
- 238000004804 winding Methods 0.000 claims description 5
- 230000006837 decompression Effects 0.000 claims description 4
- 238000009499 grossing Methods 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 238000005406 washing Methods 0.000 claims description 3
- 239000003086 colorant Substances 0.000 claims description 2
- 230000001419 dependent effect Effects 0.000 claims 7
- 239000000203 mixture Substances 0.000 claims 2
- 230000000295 complement effect Effects 0.000 claims 1
- 238000009940 knitting Methods 0.000 claims 1
- 230000009466 transformation Effects 0.000 claims 1
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 239000010453 quartz Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1205—Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1208—Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1284—Local printer device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/10—Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Quality & Reliability (AREA)
- Image Generation (AREA)
- Saccharide Compounds (AREA)
- Crystals, And After-Treatments Of Crystals (AREA)
- Polarising Elements (AREA)
- Photoreceptors In Electrophotography (AREA)
- Controls And Circuits For Display Device (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
Description
抽象的な形状のグラフィカルレンダリングは、形状記述データの実質的な処理を必要とする。形状処理のための周知の方法は、例えば、Java 2D APIで見つけられることができ、そして、それは二次元のベクトルグラフィカルスを処理するソフトウェアツールを提供する。しかし、特に表示装置を含む組込み型システムで、処理資源を節約するために計算量を減らす形状処理エンジンの必要は残る。
【0002】
形状プロセッサは、所定のフォーマットを有するグラフィカルオブジェクトをフレームバッファまたは物理的表示に流すために使われるレンダリングモジュールである。形状プロセッサによりレンダーされるドキュメントは原始のグラフィカルオブジェクトに分解され、表示のためのオブジェクトを次々に構成する形状プロセッサに渡される。オブジェクトのためのピクセルデータがディスプレイまたはフレームバッファへ出力されるまで、形状プロセッサは各々のオブジェクトをグレイスケール値として都合良く処理する。
【0003】
グラフィカルオブジェクトを処理するためのシステムは、オブジェクトの流れを受けるための入力機構を含み、各々のオブジェクトはイメージを定義する一組のパラメータを有し、ピクセル配列を生成するためにオブジェクト単位でオブジェクト上でオブジェクトの流れを処理するオブジェクトプロセッサを含む。
【0004】
一組のパラメータのうちの1つはパスであってもよい。そして、オブジェクトプロセッサがイメージのアウトラインを表わすピクセル配列を生成するためにパスを処理する。オブジェクトプロセッサはパスの端をエイリアス除去することができる。オブジェクトプロセッサはイメージのアウトラインをランレングス符号化する。一組のパラメータのうちの1つはバウンディングボックスであり、バウンディングボックスはオブジェクトプロセッサにオブジェクトがレンダーされるべき範囲を示す。オブジェクトプロセッサは平滑性因子を受信することができ、平滑性因子がピクセル配列と関連したオブジェクトの過サンプリングの量を特定する。一組のパラメータのうちの1つは透明度であり、透明度は透明度値または形状のための透明度値のビットマップへのポインタであってもよい。
【0005】
一組のパラメータのうちの1つは塗りつぶしであってもよく、塗りつぶしには、色、テクスチャまたはビットマップのうちの少なくとも1つを含む。エイリアス除去された端は、グレイスケール値として表示されることができる。トーン応答曲線は、エイリアス除去された端のグレイスケール値に適用されることができる。ピクセル配列は、スクリーン、プリンタ、ネットワークポートまたはファイルのうちの少なくとも1つに送られることができる。パラメータのうちの1つは、前処理された形状データであってもよい。前処理された形状データは、切落しマスクを含むことができる。前処理された形状データは、透明度を含むことができる。前処理された形状データは、塗りつぶしを含むことができる。この方法は、中間処理データをキャッシュに記憶することをさらに含むことができ、中間処理データは、切落しマスク、塗りつぶしまたは透明度のうちの少なくとも1つを含んでいる。
【0006】
ここに記載されているイメージレンダリングのための方法は、表示されるオブジェクトを受信し、オブジェクトは形状および塗りつぶしを含み、形状の内側のピクセルを表わす第1の状態および形状の外側のピクセルを表わす第2の状態を含む表示のピクセルのために、少なくとも2つの可能な状態のうちの1つを有する符号化された走査データの複数の線にオブジェクトの形状を変換し、そして、走査データの符号化された複数の線の各々と塗りつぶしを、表示のためフレームのラインに混合することができる。
【0007】
符号化された走査データは、形状の内側でピクセルの一部を表わしている表示のピクセルのための第3の可能な状態を含むことができる。形状は複数のセグメントを含むパスを含むことができる。この方法は、1以上の複数の曲げられたパスのセグメントを、複数の曲げられていないセグメントに変換することを含む。フレームは、非ビデオメモリまたは表示装置のうちの少なくとも1つを含むことができる。フレームは、ビデオメモリまたは出力ビットマップフォーマットバッファのうちの少なくとも1つに対応することができる。形状は、符号化された走査データの切落しマスクを含むことができる。第3の可能な状態のための値は、ピクセルを複数のサブピクセル領域に分割することによってピクセルのために算出されることができ、複数のサブピクセル領域の内のどれが形状の内側にあるものかについて決定して、複数のサブピクセル領域と、複数のピクセル領域のうちの形状の内側にあるものとの比率を決定する。この値はグレイスケール値として表示されることができる。
【0008】
表示されるオブジェクトは透明度を含み、混合は、符号化された走査データの複数の線と表示のためのフレームの線の透明度を各々混合することをさらに含む。表示されるオブジェクトは透明度を含み、透明度はビット深さ修正、トーン修正、スケーリング、圧縮解除、または復号化の少なくとも一つによって前処理される。透明度は、形状のための透明度値のビットマップへのポインタを含むことができる。塗りつぶしは、色、テクスチャまたはビットマップのうちの少なくとも1つを含むことができる。この方法は、キャッシュ内に切落しマスクとして符号化された走査データの複数の線を記憶することを含むことができる。方法は、形状によって切落しマスクに指標を付けることを含むことができる。
【0009】
ここの記載されたようなレンダーされたカラーイメージの端を無色にエイリアス除去する方法は表示されたオブジェクトを受けることを含み、オブジェクトには形状と塗りつぶしを含み、塗りつぶしには1以上の色を含み、サブピクセルマトリックスとして表示のピクセルを表わし、サブピクセルマトリックスはピクセルを覆う1以上のサブピクセル領域を含み、サブピクセルマトリックスで形状と交差し、サブピクセルマトリックスをピクセルのためのグレイスケール値に変換する。
【0010】
この方法は、ピクセルと、ピクセルの前の値と共にピクセルに対応する塗りつぶしとを混合することを含む。この方法は、オブジェクトを受信することを繰り返すこと、ピクセルを表わすこと、形状と交差すること、サブピクセルマトリックスを変換すること、およびピクセルの走査線を混合することを含む。この方法は、ピクセルの走査線のためにグレイスケール値をランレングス符号化することを含む。サブピクセルマトリックスの1以上の次元は平滑性値により制御される。
【0011】
ここに記載されたグラフィカルオブジェクトの端を滑らかにするための方法は、表示されるオブジェクトを受け、オブジェクトはオブジェクトのアウトラインを描くパスを含み、パスは内側と外側を有し、パスと交差する複数のピクセルの各々一つのために、パスの内側の一つのピクセルの部分を表わすグレイスケール値を得るためにピクセルの一つを過サンプリングし、および複数のピクセルをピクセル配列に格納されたデータと混合することを含む。
【0012】
この方法は、複数のピクセルのうちの各々一つのために、グレイスケール値によってピクセルのために塗りつぶし値の重み付けをし、グレイスケール値によってビデオメモリ内に記憶されたデータの重み付けを解除することを含む。この方法は、複数のピクセルのうちの各々一つのために、透明度値によってピクセルのために塗りつぶし値の重み付けをし、透明度値によってピクセル配列内に格納されたデータの重み付けを解除する。
【0013】
ここに記載されたようなグラフィカルオブジェクトを処理するためのシステムは、表示されるオブジェクトを受ける手段を含み、オブジェクトは形状、塗りつぶしおよびアルファを含み、オブジェクトの形状を形状の内側のピクセルを表わす第1状態と形状の外側のピクセルを表わす第2状態を含むピクセルのための少なくとも2つの可能な状態のうちの一つを有する符号化された走査データに変換する変換手段と、符号化された走査データ、塗りつぶし、およびアルファをフレームの線に混合する混合手段を含む。
【0014】
符号化された走査データは、第3の可能な状態を含み、第3の可能な状態は形状の端の上であるピクセルを表わすグレイスケール値を含み、グレイスケール値は形状の内側であるピクセルの部分に対応する。フレームは、ディスプレイ、プリンタ、ファイル、またはネットワークポートの少なくとも一つに対応する。オブジェクトは背景塗りつぶしまたは置換え塗りつぶしの少なくとも一つを含み、背景塗りつぶしまたは置換え塗りつぶしの少なくとも一つをフレームの線に混合する混合手段を含む。
【0015】
ここに記載されたようなグラフィカルオブジェクトを処理するためのコンピュータプログラムは、表示されるオブジェクトを受けるためのコンピュータが実行可能なコードを含み、オブジェクトは形状、塗りつぶし、およびアルファを含み、形状の内側のピクセルを表わす第1の状態と形状の外側のピクセルを表わす第2の状態を含むピクセル配列のピクセルのための少なくとも2つの可能な状態を有する符号化された走査データにオブジェクトの形状を変換するコンピュータが実行可能なコードと、および符号化された走査データ、塗りつぶし、およびアルファをピクセル配列のフレームの線に混合するコンピュータが実行可能なコードを含む。
【0016】
ピクセル配列は、ディスプレイ、プリンタ、ファイル、またはネットワークポートの少なくとも一つに対応することができる。符号化された走査データは第3の可能な状態を有することができ、第3の可能な状態は形状の端の上であるピクセルを表わすグレイスケール値を含み、グレイスケール値は形状の内側であるピクセルの部分に対応する。
【0017】
ここに記載されたようなグラフィカルオブジェクトを処理するためのシステムはプロセッサを含み、プロセッサは、形状、塗りつぶし、および透明性を含むグラフィカルオブジェクトを受け、表示の走査線のために内側のピクセル、外側のピクセル、および移り変りのピクセルに対応した符号化された走査データにグラフィカルオブジェクトの形状を変換し、各々の移り変りのピクセルは形状の内側のピクセルの部分に対応したグレイスケール値を含み、および符号化された走査データ、塗りつぶし、およびアルファをピクセルデータの線と結合させるために構成され、およびピクセルデータの線を記憶するメモリを含み、メモリはプロセッサにピクセルデータの線を供給するように適合され、およびメモリはピクセルデータの線が符号化された走査データ、塗りつぶし、および透明性に組み合わされたとき、生成されるピクセルデータの新しい線を記憶するように適合されている。
【0018】
このシステムはメモリを表示するために構成されたディスプレイを含むことができる。プロセッサは、マイクロプロセッサ、マイクロコントローラ、組込み型マイクロコントローラ、プログラム可能なデジタル信号プロセッサ、専用集積回路、プログラム可能なゲートアレイ、またはプログラム可能なアレイロジックのうちの1以上とできる。このシステムは、メモリ内に記憶されたピクセルデータの線を印刷するために構成されたプリンタ、メモリ内に記憶されたピクセルデータの線を記憶するために構成された記憶装置、メモリ内に記憶されたピクセルデータの線を出力するために構成されたネットワーク機器のうちの少なくとも1以上とできる。プロセッサは、チップ、チップセット、またはダイのうちの少なくとも一つとできる。プロセッサおよびメモリはチップ、チップセット、またはダイのうちの少なくとも一つとすることができる。表示は、電子編成機、パームトップコンピュータ、ハンドヘルドゲーム機器、ウェブ化可能な携帯電話、パーソナルデジタルアシスタント、改良された電話、シンネットワーククライアント、またはセットトップボックスのうちの少なくとも一つの表示とできる。
【0019】
表示はプリンタまたはプロッタのうちの少なくとも一つとすることができる。表示はドキュメントマネージメントシステム内で使用されることができる。表示は、ドキュメントマネージメントシステムのファックス機、フォトコピー機、またはプリンタのうちの少なくとも一つで使用されることができる。表示は車内システム内で使用されることができる。表示はオーディオプレーヤ、電子レンジ、冷蔵庫、洗濯機、衣服乾燥機、オーブン、または皿洗い機のうちの少なくとも一つで使用されることができる。プロセッサは複数のグラフィカルオブジェクトを受け、並列の複数のグラフィカルオブジェクトを処理することができる。
【0020】
本発明の前述したおよびその他の目的および利点は、以下のそのさらなる記述から、添付の図面を参照して、より完全に評価される。
本発明の全体を理解するため、ある実例となる、空間フィルタリングおよびレンダーされたオブジェクトの端のトーン制御を行う2次元形状プロセッサを含む実施形態が記載される。しかし、ここに記載された方法とシステムは、3次元形状処理のようなその他のアプリケーションにも適当に適合し、全イメージエイリアス除去に組み合わされることができることがこの技術分野の通常の技術を有する者によって理解される。例えば、粗い全イメージエイリアス除去行程がオブジェクト端の細かいエイリアス除去に組み合わされることができる。この技術分野の通常の技術を有する者に明白な全てのそのような適合と修正は、ここに記載された本発明の範囲内となることを意味する。
【0021】
図1は、形状プロセッサで用いられるグラフィカルオブジェクトのためのデータ構造を示す。グラフィカルオブジェクト100または単にオブジェクト100は、バウンディングボックス101、形状102、塗りつぶし104およびアルファ106を含むことができる。形状102は、ストローク110および塗りつぶし112のパラメータを有するパス108または切り落としマスク114を含むことができる。塗りつぶし104は、色116またはビットマップ118を含むことができる。アルファ106は、値120またはマスク122を含むことができる。
【0022】
バウンディングボックス101は、そこにおいて、オブジェクト100がレンダーされることになっていて、オブジェクトが描かれることになっている領域を定めることができる場所を含むことができる。例えば、このパラメータが、円形のパスを、四分割された円の内の1つに重ね合わせるバウンディングボックス101と組み合わせることによって弧のレンダリングを単純化するために使われることができる。
【0023】
形状102は、ポストスクリプトスタイルパス記述を使用して接続される一連のパス要素を定めるパス108を含むことができる。その他のパス表現が公知であり、また、使われることもできる。パス108は、例えば、直線区分、方向を有するベジェ曲線、および2点または他のパス構造物によって制御される湾曲を含むことができる。パス108は、開かれていても、また閉ざされていても良い。より複雑なジオメトリを支援するために、パス108は自己交差または複数のばらばらにされた領域を含むことができる。パス108のためのストローク110は、例えば、円、斜角、または斜め継ぎ等の結合されてパス要素のためのレンダリングを明示する結合属性、および円、棒、正方形、三角形等のパス108の端のためのレンダリングを明示するキャップ属性を含む、パラメータまたは属性を含む。塗りつぶし112は、適切な領域が塗りつぶされるために、湾曲規則、またはその他のアルゴリズム、またはパス108の外側からパスl08の内側を区別するためのパラメータを含むことができる。切り落しマスク114は、繰り返されているオブジェクトの冗長な処理を減らすために、グラフィカルオブジェクト100の貯えられたレンダリングへのポインタを含む。
【0024】
塗りつぶし104は一般に、形状102がどのように塗りつぶされるかに関して、情報を含むことができる。これは、例えば、8ビットパレットのようなパレット上に定義された色値である、または24ビットRGB、15ビットRGBまたは32ビットCMYKのような色に基づいた構成要素である色116を含み、また色116はグレースケール値でも良い。塗りつぶし104は、形状102を塗りつぶすために使用されるテクスチャのビットマップを含むビットマップ118を含むことができる。ビットマップ118は、その代わりに、形状102を塗りつぶすために使用されるビットマップへのポインタを含むことができる。この種のビットマップは、塗りつぶし104のために使用されるそれらのような、色モデルのいかなる種類にもおいて提供されることができる。
【0025】
塗りつぶされ、および表示されるときに、アルファ106は一般に形状102の透明性に関する情報を含むことができる。アルファは、典型的には0(透明な)から1(不透明な)までの間で変動する、形状102全体のための透明度を記載している単一の値である値120を含むことができる。あるいは、アルファ106は、レンダーされた形状102の各々のピクセルのための値のアルファマスクまたはアルファマスクへのポインタであるマスク122を含むことができる。
【0026】
上記のデータ構造の適切なアプリケーションそして改良は、この技術分野の技術者に明白である。特に、グラフィカルオブジェクト100は、例えば、ポストスクリプト、Java 2D APIまたはQuartz、および例えばMac OS Xオペレーティングシステムで使われるQuickDrawライブラリのようなレンダリング仕様に記載されたその他の特徴を含むことができる。
【0027】
図2は、形状プロセッサの機能ブロック図である。通常、形状プロセッサ200は、グラフィカルオブジェクトの流れを受けるための入力メカニズムを提供して、スクリーン上の表示のためのピクセル配列を生成するためにオブジェクト単位によって、オブジェクト上のオブジェクトの流れを処理するオブジェクトプロセッサを含む。形状プロセッサ200は、例えば、図1を参照して上述されたグラフィカルオブジェクト100の要素に相当する、パス202、バウンディングボックス203、塗りつぶし204およびアルファ206のような図2に示される形状によって記載されているグラフィカルオブジェクトを受ける。以下に記載されるように、形状プロセッサ200は、パス202の代わりの切り落としマスク232を受けることができ、それは形状プロセッサ200によって走査線ブレンダ226に直接渡される。
【0028】
形状プロセッサ200のための制御データは、スクリーンバウンディングボックス208、平滑性210、トーン応答曲線212、ビット深さ214、カラースペース216、およびスクリーンベースアドレス218を含むことができる。この制御データは、スクリーンベースアドレス218またはトーン応答曲線212等の表示に関する物理的なパラメータを格納することができる。トーン応答曲線212は、下記のように、表示装置の非線形性に従って、符号化走査データのグレイスケール値を調整することができる。例えば、全目盛りの50%の強度値は、特定の装置のための65%の1ピクセルの強度に結果としてなることができる。トーン応答曲線212は、ルックアップテーブルまたはその他のアルゴリズムまたはルックアップに基づいた幾つかの方法を使用しているこのような非線形性に適合できる。他の制御データは、ユーザ(またはプログラマ)によって特定されるパラメータと一致することができる。以下に記載されるように、例えば、端処理の細かさまたは細分性を格納する平滑性210は、各ディスプレイピクセル毎のサブ領域のN×Nマトリックスを記載している単数の値(または複数の値)とすることができる。
【0029】
パス202は走査コンバータ220に提供され、それは交差221からのデータを使用して、交差データを交差バッファ222に供給する。交差プロセス224は交差データをさらに処理して、出力を他のグラフィカルオブジェクトデスクリプタと組合せ、ビデオメモリまたは物理的表示への出力を生成するためにデータを制御する走査線ブレンダ226に出力を供給する。形状プロセッサ200によって生成される中間のデータは、パスバウンディングボックス228、単層化されたパス230および切落しマスク232を含むことができる。切落しマスク232または単層化されたパス230は、形状プロセッサ200から独立して使われることができ、また有効な入力として再び提示されることができ、それによって、形状プロセッサ200への繰り返された呼び出しの冗長性を減らす。他の中間のデータ(図示せず)は、出力のための形状プロセッサ200によって発生することができ、例えば、交差したデータまたは塗りつぶしマップの圧縮解除のようなその他の前処理調整、カラースペース変換、修正、調整、およびスケーリングを含む。
【0030】
走査線処理の前に、走査コンバータ220はパス202を前処理することができる。例えば、不必要な走査変換は、特定のデータを横切ること、および処理が必要かどうか決定することによって避けることができる。例えば、パス202のためのバウンディングボックス203およびスクリーンバウンディングボックス208は、交差221において交差されることができる。もし、交差221から出る出力がヌルなら、更なる処理は必要ではない。明確に図2に示されていないが、塗りつぶし204(それは、塗りつぶしデータから形状プロセッサ200によって推定されることができる)のためのバウンディングボックスまたはアルファ206(それは、アルファデータから形状プロセッサ200によって再び推定されることができる)のためのバウンディングボックスについての交差のようなその他の交差が得られる。もしセットされる交差がヌルなら、処理はパス202のために必要ではなく、次の連続したパス202は直ちに処理されることができる。上記したように、もし切落しマスク232が、パス202の代わりに形状として示される場合、切落しマスク232は走査線ブレンダ226に直接渡されることができ、よって、このように走査転換および他のパス処理ステップをバイパスする。例えば、切落しマスク232、塗りつぶしデータ、アルファデータ、単層化されたパスデータ等を含む、いかなる中間の処理データも、冗長な処理を避けるか減らすために、このような方法で格納されることができる。
【0031】
走査コンバータ220は、パス202を目標表示装置の走査線についての交差に変換することができる。この機能は、平滑性210を用いて、アップサンプルベースで実行されることができる。すなわち、交差の位置を決める前に、ピクセルの各々の行は、パラメータとして平滑性210を用いて、サブピクセル領域またはサブピクセルマトリックスに分割されることができる。そのため、例えば、「2」の平滑性210は、スクリーンディスプレイの同じ領域を覆っているサブピクセル領域の200の配列によって「2」として交差データを生成するために処理されている100のピクセルの走査線に結果としてなることができる。「4」の平滑性210は、サブピクセル領域等の400の配列によって「4」として交差データを生成するために処理されている同じ走査線に結果としてなることができる。
【0032】
パス202は、そこでサブピクセル領域に適用されることができる。結果として生じる交差または交差データは、パスが水平軸を横切る方向(例えば、上または下の)に沿った各々の交差のX座標を含む一線一線に基づいて水平上に格納されることができる。他の表現が公知であり、また走査コンバータ220によって使われることができる。走査コンバータ220は、パスバウンディングボックス228を生成することができる。走査コンバータ230は、また、中間のステップとして単層化されたパス230を生成することができ、そこにおいて、ベジュ曲線等の連続、非線形のセグメントは、多くのまっすぐなパスセグメントに変換される。これは、パスと関連する動作の計算量を減らすことができる。交差データは、交差バッファ222に格納されることができる。
【0033】
一般に、交差プロセス224は、サブピクセル領域の行を分析して、形状の内側であるピクセルおよび形状の外側にあるピクセル、およびその移り変りにあるピクセルの群を識別する。移り変りにあるピクセル、形状の端にあって形状を横切り、そのためそれらは部分的に形状の内側であり部分的に形状の外側であるものは、レンダリングに関連したギザギザまたはその他のアーティファクトを除去するかまたは減らすために滑らかにされることができる。この過サンプリング技術は、図3を参照して更に詳細に後述される。以下に記載されるように、内側のピクセル、外側のピクセル、および移り変りのピクセルが、ビデオメモリに混ぜ入れられる。
【0034】
図3は、交差プロセス224までに実行される交差データ上の動作の実施例を表す。図3の例において、各々の走査線ピクセルのための4×4サブピクセルマトリックスに対応する値を有する平滑性210については、交差データは100ピクセルの走査線に相当する。
【0035】
チャート301は、図2の交差バッファ222から受け取られる交差データを示す。チャート301に示すように、交差データは、一般にパス202がパス202の方向と結びついたサブピクセル領域と交差するX座標を含むことができる。第1の行、行Nについて、パス202は上方への方向の第40サブピクセルと交差する。同じ行で、パス202は下方への方向の第140のサブピクセルと交差する。交差データは、行N+1〜N+3についてもチャート301で明らかにされる。これが具体例であり、そして、そのより多くのまたはより少ない交差データがパス202の複雑さによって、サブピクセル領域の行のために提供されることが理解できる。
【0036】
交差データは、ワィンディング規則または同様の方法によって、「オン」または「オフ」の群を抽出するために処理される。図3に示される例において、チャート301の交差データは、この例では、偶数/奇数ワィンディング規則のアプリケーションによりチャート302の符号化されたデータを生成するために、この方法で処理される。
【0037】
チャート302で示すように、サブピクセルの各々の行についてのデータは、オン/オフフラグとオン/オフフラグを共有する行の近隣のサブピクセルの群を含むデータの組として符号化される。一般に、群の最後は、内側から外側への移り変りによって認識され、または反対に、ワインディング規則または同様の技術を交差データに適用することにより決定される。このデータから、ピクセルの群は抜き取られることができ、交差データによって記載されている形状の完全に内側または外側である目標ディスプレイのピクセルを反映する。チャート302の例において、形状の外側にある最初の5つの群の「オフ」ピクセルは直ちに認識されることができ、行N〜N+3、および水平のサブピクセル領域1〜20に相当する。
【0038】
チャート304にて示すように、「オフ」群から「オン」群への移り変りは、サブピクセルの各行毎に、多数の「オン」または「オフ」サブピクセル領域によって、特徴付けられる。現在の例において、5つの「オフ」ピクセルの最初の群の後のデータは、ピクセル、例えばサブピクセル領域21〜24、25〜28等に相当する4つのサブピクセルの集合にグループ化されることができる。サブピクセル領域の各グループの「オン」のサブピクセル領域は、4つの行上で加算され、ピクセルについて「オン」のサブピクセル領域の合計を得る。チャート304は、6つの水平に連続したピクセルについてのこの合計を示す。水平のサブピクセル領域21〜24および行N〜N+3に相当するこれらのピクセルの最初のものは、行N〜N+2から「オン」のサブピクセル領域を含まず、行N+3から4つの「オン」のサブピクセル領域を含む。これは、4:16の比率または25パーセント(4×4サブピクセルマトリックスの4/16)に相当する。これは、このピクセルについて25パーセントのグレイスケール値として表わされる。この分析は、完全な「オン」のピクセルに達するまで、水平に連続したサブピクセル領域について繰り返されることができる。図3の例では、「オン」のピクセルは、16のサブピクセル領域から16が「オン」である、サブピクセル領域41〜44において「オン」のピクセルに達している。対応するピクセルは、走査線の終わりの「オン」のピクセルの一群を始めて良く、または次の移り変りまで、そのような移り変りが起こる。
【0039】
各走査線についての結果として生じたデータは、「オン」のピクセルの群、「オフ」のピクセルの群、およびどのくらいの数の各々の移り変りのピクセルが形状の内側に(または外側に)あるかを示すグレイスケール値を有する1以上の移り変りピクセルとして表わされる。図4は、以下に、この形式内にランレングス符号化されたデータの走査線を含むデータ構造の一例を示す。ある実施では、グレイスケール値は最大または最小のグレイスケール値(例えば100%または0%)を含み、それは、別の方法で「オン」または「オフ」であるピクセルまたは群を示す。このアプローチは、例えば、「オン」と「オフ」の間で切り替えられる短い群を示すデータの符号化を最適化するために、都合良く適用される。
【0040】
他の技術が移り変りのピクセルのためのグレイスケール値を得るために用いることができることはいうまでもない。例えば、形状内側にあるピクセルの部分は、パス306についての点および傾斜情報を用いて機械的に決定されても良い。形状端をグレイスケール値に単層化することにより、自動的なエイリアス除去作業は、完全なカラーイメージのために行われることができる。以下に記載されるように、色は、その後、走査線ブレンダに供給される。新しいピクセルデータの走査線が現在のピクセルデータの走査線と混ぜられるまで、形状のためのアルファおよび塗りつぶしの値の処理は延期されるため、この技術は、オーバサンプリングすることなく有利に用いられることができる(すなわち、平滑性210値について、その各ピクセルを特定することは、単一のサブピクセル領域に対応する。)。上記例が単一の内部領域を有する形状に関するとしても、複数の内部および外部領域を含むより複雑な形状が同様に特徴付けられることが理解される。
【0041】
再び図2を参照すると、交差プロセス224の出力は、切落しマスク232として格納される。切落しマスク232は、任意のスケーリング情報と同様に、例えば、処理されたパス202のためのパスポインタに基づいた参照番号によって指標をつけられる。この方法で格納されたとき、形状プロセッサ200によって受けられた各々の新しいパス202は、キャッシュされた切落しマスクのプールと比較され、テキストの行の繰り返しといった、同じ形状の冗長な処理が減少されるか、避けられることができる。
【0042】
走査線ブレンダ226は、現在のビデオデータのフレームと共に、交差プロセス224からの出力または切落しマスク232を混合する。図2から判るように、これは、ディスプレイメモリアドレス、カラースペース、ビット深さ等のディスプレイパラメータにピクセル値を写像するために、以下に記載されない追加の計算を含むことができる。走査線ブレンダ226により前処理することは、アルファマップまたは塗りつぶしマップの圧縮解除、カラースペース変換、色修正、色調整、およびスケーリングを含むことができる。
【0043】
走査線ブレンダ226は、スクリーン、その他の表示機器、または後のビットマップレンダリングのためのフレームバッファに直接に出力することができる。これは、非ビデオメモリまたはビットマップフォーマットバッファ出力を含むことができる。走査線ブレンダ226は、時々、典型的には、ビデオデータまたはピクセルの行の一行上で動作する。ある実施態様では、多数の走査線ブレンダが、並列の多数の走査線上で動作するために設けられている。各々のピクセルについて、走査線ブレンダ226は、そのピクセルに対応する塗りつぶし204(例えば、24ビット色値)、アルファ206、および交差プロセス224出力(または、入手できるときは切落しマスク)を組合せることができる。一般的に、塗りつぶし204は、アルファ(透明度用(0≦アルファ≦1))および交差プロセス224出力(0(=オフ)≦出力≦1(=オン))によって処理される。これは、形状プロセッサ200によって生成されたピクセル値によって表現される。走査線ブレンダ226内では、この新しい値はピクセルの古い値と組み合わされ、それは補足的な要素によって再度重み付けられる。この混合動作を数学的に表現すると以下のようになる。
【0044】
Pi=αef+(1−αe)Pi−1 (等式1)
f=ピクセルの塗りつぶし値(例えば、24ビット色値)
Pi=走査線ブレンダ出力
Pi−1=前ピクセル値(バッファからの)
α=ピクセルにおける形状のアルファ値
e=ピクセルの端の値(交差プロセス出力)
=0、外側
=1、内側
=グレイスケール値、形状内の端の%
【0045】
混合された出力は表示のためのビデオメモリ内に記憶されることができる。等式1は見本であり、他の等式が1ピクセル1ピクセル毎に基づいた古いおよび新しいデータを組合せるのに用いられることができ、提供された等式は、例えば、新しいデータの透明性および端を反映するように、古いおよび新しいデータを適当に重み付けをすることが理解される。これは、例えば、端の重み付けを最初に行ない、透明性の重み付けをその後に行なう2段階処理とできる。加えて、処理の複雑性を減らすために走査線ブレンダ226で用いることができる等式1の作り直された形態がある。例えば、完全な不透明(すなわち、e=1およびアルファ=1)である形状内部のピクセルの群があるとき、走査線ブレンダ226の出力は各々のピクセルの単純な塗りつぶし値となる。この場合、対応するピクセルの塗りつぶし値fはさらなる処理をしないでビデオメモリに直接供給される。
【0046】
図4は、交差プロセス224による出力のように符号化された走査データのためのデータ構造を示す。オンであるピクセルは形状の内側のピクセルに対応し、それは、図2の塗りつぶし204によって供給される色値として表わされる。オフであるピクセルは形状の外側のピクセルに対応し、現在の表示またはフレームバッファに影響を及ぼさない。上記のように、「オフ」のピクセルや形状の外側のピクセルのための塗りつぶし値を供給する背景塗りつぶし等の、追加のパラメータがオブジェクトに設けられても良い。もう一つの例のように、置換え塗りつぶしが提供されても良く、それは混合の前にフレームバッファ内で前の値から減算される。グレイスケール値は形状の端を表わし、塗りつぶし204によって供給され、グレイスケール値によってスケーリングされた色値として表わされる。符号化することは、形状を処理するときに処理コストの著しい減少を与えるビデオデータの行を表わすための方式を提供する。例えば、イメージ処理のための完全なピクセル配列の必要を回避するため、「オン」の群および「オフ」の群として符号化することは低コストであり、グレイスケール計算はメモリ使用および処理時間上でより低コストである。加えて、切落しマスクとしてビデオデータを格納するときに、ランレングス符号化することは利益をもたらす。しかし、他の圧縮技術がここに記載されたシステムで適当に用いられることができることが判る。
【0047】
ランレングス符号化されたデータ構造400は、ヘッダ402、長さ404、幅406、高さ408、一つ以上のオフセット410および一つ以上のデータセグメント412を含むことができる。ヘッダ402は、データ構造400を識別するかまたは使用することに役立ついかなるヘッダ情報も含むことができる。長さ404は、一区間のデータ構造400を示すことができる。形状のピクセルで、幅406は幅を表わす値を示すことができる。高さ408は、形状の多くの走査線を表わす値を示すことができる。一つ以上のオフセット410は、形状の各々の走査線のためのデータセグメントにバイトオフセットを示す。1つ以上のデータセグメント412は、各々形状の走査線のための符号化されたデータを含む。データセグメント412は、ピクセル内で後にランレングスが続く「内側」として、ピクセル内で後にランレングスが続く「外側」として、または後に端のいくつかのピクセルまたは端のいくつかのピクセルの内の各々のグレイスケール値が続く「端」として表わされることができる。各々の端の値は、例えば1バイト(256レベル)グレイスケール値として表わされる。
【0048】
図5は、形状処理のためのプロセスのフローチャートである。以下の説明において、「交差データ」という語は、パスとサブピクセル領域との間の交差を記載しているデータを言うものとする。後進的な場合では、各々のサブピクセル領域は完全なピクセルに相当し、平滑化は全く行われない。「符号化走査データ」という語は、3つの状態のうちの一つである走査線の領域、すなわち、オン、オフ、またグレイスケールを記載する圧縮解除または圧縮(例えば、ランレングス符号化)された形式のデータを言うものとする。交差データにワインディングルールまたは同様の技術を適用することによって定義するように、群はパスの内側から外側への移り変りによって決定される。
【0049】
ステップ504に示すように、プロセス500は、オブジェクトを受信することによって502を始めることができる。例えば、オブジェクトは図1を参照して上記したグラフィカルオブジェクト100であってもよい。任意のステップ506において、オブジェクトがキャッシュ内にあるかどうか決定される。この決定は、例えば、形状名、またはキャッシュ内の項目に対応するようにオブジェクトの形状を一意に認識するその他の方法を用いてなされることができる。もし、オブジェクトの形状がキャッシュされているなら、プロセス500はステップ516に進むことができ、そこでは、オブジェクトは、キャッシュされた形状およびオブジェクトから供給された任意の塗りつぶしおよび透明性データを用いて、現在のビデオメモリと混合される。もし、形状がキャッシュされていなければ、プロセス500はステップ508に進むことができる。
【0050】
ステップ508に示すように、図2の走査コンバータ220を参照して上述したように、プロセス500は単層化されたパスを生成することができる。ステップ510に示すように、単層化されたパスは、そこでパスとサブピクセル領域との間の交差を表わす交差データを生成するために用いられることができる。これらの交差は形状の端を表わすことができることが理解される。ステップ512に示すように、符号化走査データはそこで、例えば図2の交差プロセス224を参照して上述したように交差データから生成される。ステップ514に示すように、オブジェクトの形状のアウトラインを表わす符号化走査データはキャッシュ内に記憶される。ステップ516に示すように、また図2の走査線ブレンダ226を参照してより詳細に記載されたように、符号化走査データはそこでビデオメモリと混ぜられる。プロセス500はそこでステップ504に戻り、そこで次の連続したオブジェクトが受けられる。
【0051】
ビデオメモリは、ビデオメモリのコンテンツを人間が見える形式に変換するディスプレイへのビデオデータのフレームを供給することができる。ビデオメモリは、形状プロセッサによって生成されたビデオデータの新しい線と混合するために、前のビデオデータの1以上のフレームを記憶することもできる。ディスプレイは、液晶ディスプレイ、発光ダイオードディスプレイ、または人間が見える形式のビデオデータを提供するためのその他のディスプレイとすることができることが理解できる。ディスプレイは、プリンタ、プロッタ、または紙等の固定された有形の媒体にビデオデータを複製するための他の機器とすることができる。
【0052】
上記プロセス500および図2の形状プロセッサ200は、ハードウェア、ソフトウェア、またはそれらの組合せで実現することができることが理解される。プロセス500は、読出し専用メモリ、プログラム可能な読出し専用メモリ、電気的消去可能なプログラム可能な読出し専用メモリ、ランダムアクセスメモリ、ダイナミックランダムアクセスメモリ、2倍データ速度ランダムアクセスメモリ、ラムバスダイレクトランダムアクセスメモリ、フラッシュメモリ、またはプログラム命令、プログラムデータ、およびプログラム出力または他の中間または最終結果を記憶するためのその他の揮発性または不揮発性のメモリといった内部および/または外部メモリと共に、1以上のマイクロプロセッサ、マイクロコントローラ、組込み型マイクロコントローラ、プログラム可能なデジタル信号プロセッサまたはその他のプログラム可能な機器で実現することができる。プロセッサ500および形状プロセッサ200は、また、あるいは替わりに、専用集積回路、プログラム可能なゲートアレイ、プログラム可能なアレイロジック、その他の電気信号を処理するために構成されることができる機器を含むことができる。
【0053】
上記回路および構成要素の組合せは、チップとして、チップセットとして、またはダイとして個別にパッケージ化されたかどうかにかかわらず、ここに記載されたシステムと共に使用することに適当に適合されることができる。上記プロセス500および形状200は、異なるプロセッサ、プロセッサアーキテクチャの組合せまたは異なるハードウェアおよびソフトウェアの組合せと同様に、Cのような構造化プログラミング言語、C++のようなオブジェクト指向プログラミング言語、または、上記機器の内の一つで実行するためにコンパイルまたは解釈されることができるその他の高レベルまたは低レベルプログラミング言語を使い生成されたコンピュータが実行可能なコードとして実現できることが理解される。
【0054】
形状プロセッサ200は、特に、異なるグラフィカルオブジェクトが同時に処理され、ビデオメモリのフレームに混合される並列および/またはパイプラインイメージ処理システムに適している。形状プロセッサ200は、それゆえ、マイクロプロセッサ上で複数の形状プロセッサスレッドが実行するように、多数の物理的に別個のプロセスまたは論理的に別個のプロセスとして実現されることができる。このアプローチは、グラフィカルオブジェクトの異なる走査線に同様に適用されることができる。
【0055】
上記システムはディスプレイのための効率の良いイメージレンダリングを提供し、それは、液晶ディスプレイ(「LCD」)スクリーンを有し、電子編集機、パームトップ(palm-top)コンピュータ、ハンドヘルドゲーム機器、ウェブ可能な携帯電話(または他の無線電話または通信機器)、およびパーソナルデジタルアシスタント(「PDA」)を含む携帯機器のような小型、小電力の機器によく適している。このシステムは、プリンタ、プロッタ等のようなその他のレンダリング機器と同様に、改良された電話、シンネットワーククライアント、およびセットトップボックスのようなディスプレイユニットと共に、低コスト端末機器に組み入れられても良い。このシステムは、例えば、作業ドキュメントの表示および/またユーザインターフェースが実用性を向上させることができるファックス機、プリンタ、コピー機等のドキュメント処理機器内の組込み型システムとして、有効に用いられることができる。このシステムは、ダッシュボードまたは中央コンソールまたは自動車等で、イメージをレンダーおよび/または自動車のユーザにグラフィカルユーザインターフェースを提供する車内システムで、有効に用いられることができる。ここに記載されたシステムは、オーディオプレーヤ、電子レンジ、冷蔵庫、洗濯機、衣服乾燥機、オーブン、または皿洗い機を含む消費者の機器に組み入れられることができる。ここに記載されたシステムは、出力がディスプレイ、プリンタ、ネットワークおよび/またはファイルといった異なる機器への出力が生成される上記システムのいずれかに有効に配置されることができる。単一の機器は、いずれかまたは全てのこれらの機器へ出力するために形状プロセッサを用いることができる。
【0056】
本発明は示された好ましい実施態様について開示され詳細に記載されたが、本発明はここに開示された実施態様に限定されるべきではなく、以下の請求の範囲から理解されるべきであり、それは法上で許される限り広く解釈されるべきであることが理解される。
【図面の簡単な説明】
【図1】 形状プロセッサで用いられるグラフィカルオブジェクトのためのデータ構造を示す。
【図2】 形状プロセッサの機能ブロック図である。
【図3】 交差プロセスにより実行される交差データ上の動作の例を表す。
【図4】 符号化された走査データのためのデータ構造である。
【図5】 形状処理のためのプロセスのフローチャートである。
【符号の説明】
100…グラフィカルオブジェクト、 101…バウンディングボックス、 102…形状、 104…塗りつぶし、 106…アルファ、 108…パス、 110…ストローク、 112…塗りつぶし、 114…切落しマスク、 116…色、 118…ビットマップ、 120…値、 122…マスク、 200…形状プロセッサ、 202…パス、 203…バウンディングボックス、 204…塗りつぶし、 206…アルファ、 208…スクリーンバウンディングボックス、 210…平滑性、 212…トーン応答曲線、 214…ビット深さ、 216…カラースペース、 218…スクリーンベースアドレス、 220…走査コンバータ、 221…交差、 222…交差バッファ、 224…交差プロセス、 226…走査線ブレンダ、 228…パスバウンディングボックス、 230…単層化されたパス、 232…切落しマスク、 301,302,304…チャート、 400…データ構造、 402…ヘッダ、 404…長さ、 406…幅、 408…高さ、 410…オフセット、 412…データセグメント、 500…プロセス、 502,504,506,508,510,512,514,516…ステップ。
Claims (59)
- 受取手段と、変換手段と、混合手段とを備えたグラフィカルオブジェクトを処理するためのシステムにおいて、ピクセルの複数の線を含む表示として、イメージをレンダリングするための方法であって、以下を含む:
前記受取手段が、表示されるオブジェクト(100)のストリームを受け取り、それぞれのオブジェクトは形状(102)および塗りつぶし値(104)を含み;
前記変換手段が、それぞれのオブジェクトのために、形状の内側のピクセルを表わす第1の状態および形状の外側のピクセルを表わす第2の状態を含む表示のピクセルのために、少なくとも2つの可能な状態のうちの1つを有する符号化された走査データの複数の線にオブジェクトの形状を変換し;
前記混合手段が、符号化された走査データの複数の線の各々と塗りつぶし値を、表示のためフレームの線に混合し;以下の特徴を含む:
符号化された走査データの複数の線にオブジェクトの形状を変換し、前記符号化された走査データは以下を含む:
a. サブピクセルマトリックスとして表示のそれぞれのピクセルを表わし、サブピクセルマトリックスはピクセルを覆う1以上のサブピクセル領域を含み、
b. サブピクセルマトリックスでのそれぞれの水平上の行のために、オブジェクトの形状とサブピクセルマトリックス間のそれぞれの交点の座標を含む交差データを生成し、
c. 形状内にある「オン」のサブピクセル、又は形状外にある「オフ」のサブピクセルの群を抽出するために、ザブピクセルマトリックスのそれぞれの行のための前記交差データを処理し、および、表示のそれぞれの線のために以下を含む:
d. 形状の内側にあり、前記第1の状態に関連付けられたピクセルの群と、形状の外側にあり、前記第2の状態に関連付けられたピクセルの群と、部分的に形状の内側にあり部分的に形状の外側にあるため形状の端にあり第3の状態に関連付けられた移り変りのピクセルの群とを同定するために、抽出されたサブピクセルの群を解析し、
e. それぞれの移り変りのピクセルのために、形状の内側にある移り変りのピクセルの部分に対応するグレイスケール値を生成すべく、移り変りのピクセルとして同定されたそれらのピクセルをさらに処理し、
f. 前記それぞれの状態にあるピクセルの群の長さ、及び第3の状態の移り変りのピクセルのための、及び関連付けられたグレイスケール値を含む符号化された走査データの線を生成し、
形状は複数のセグメントを含むパス(108)を含み、
1以上の複数の曲線または非線形のパスのセグメントを、複数の直線のセグメントに変換する。 - 請求項1に記載の方法であって、移り変りのピクセルのためのグレイスケール値は、複数のサブピクセル領域の内のどれが形状の内側にあるものかについて決定して、複数のサブピクセル領域と、複数のピクセル領域の内の形状の内側にあるものとの比率を決定することによって計算されることを特徴とするイメージレンダリングのための方法。
- 請求項1または請求項2のいずれか1項に記載の方法であって、前記パスセグメントはパスセグメントのストロークの属性を定義するパラメータを含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項3のいずれか1項に記載の方法であって、フレームは、ビデオメモリまたは表示装置のうちの少なくとも1つを含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項4のいずれか1項に記載の方法であって、フレームは、非ビデオメモリまたは出力ビットマップフォーマットバッファのうちの少なくとも1つに対応することを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項5のいずれか1項に記載の方法であって、キャッシュ内に切落しマスクとして符号化された走査データの複数の線を記憶(514)することをさらに含むことを特徴とするイメージレンダリングのための方法。
- 請求項6に記載の方法であって、形状によって切落しマスクに指標を付けることをさらに含むことを特徴とするイメージレンダリングのための方法。
- 請求項6または請求項7に記載の方法であって、混合することは、切落しマスクを入手し、かつ切落しマスクに関連付けられた符号化された走査データを混合することを特徴とする方法。
- 請求項1ないし請求項8のいずれか1項に記載の方法であって、表示されるオブジェクトは透明度(106)を含み、混合は、符号化された走査データの複数の線と表示のためのフレームの線の透明度を各々混合することをさらに含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項9のいずれか1項に記載の方法であって、表示されるオブジェクトは透明度(106)を含み、透明度はビット深さ修正、トーン修正、スケーリング、圧縮解除、または復号化の少なくとも一つによって前処理されることを特徴とするイメージレンダリングのための方法。
- 請求項10に記載の方法であって、透明度は、形状のための透明度値のビットマップへのポインタを含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項11のいずれか1項に記載の方法であって、塗りつぶし値(104)は、色(116)、テクスチャまたはビットマップ(118)のうちの少なくとも1つを含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項12のいずれか1項に記載の方法であって,前記形状は、形状を表現する符号化された走査データの複数の線を含む切落しマスク(114)を含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項13のいずれか1項に記載の方法であって、形状内及び形状外を決定するためのアルゴリズムを適用することをさらに含むことを特徴とするイメージレンダリングのための方法。
- 請求項14に記載の方法であって、アルゴリズムを適用することはワインディングルールを適用することを含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項15のいずれか1項に記載の方法であって、レンダーされたカラーイメージの端を無色にエイリアス除去するのに適合し、表示されるオブジェクトの塗りつぶし値(104)は、1つ以上の色(116、118)を含み、移り変りのピクセルのためのグレイスケール値とピクセルの前の値のピクセルに対応する塗りつぶし値(104)とを混合することを含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項16のいずれか1項に記載の方法であって、移り変りのピクセルのためのグレイスケール値をランレングス符号化することをさらに含むことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項17のいずれか1項に記載の方法であって、サブピクセルマトリックスの1以上の次元は平滑性値により制御されることを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項18のいずれか1項に記載の方法であって、オブジェクトの端を滑らかにするのに適合し、オブジェクトの形状はオブジェクトのアウトラインを描くパス(108)を含み、パスは内側と外側を有し、
パスと交差する複数のピクセルの各々一つのために、パスの内側の一つのピクセルの部分を表わすグレイスケール値を得るためにピクセルの一つを過サンプリングし、および、
複数のピクセルをピクセル配列に格納されたデータと混合することを含むことを特徴とするイメージレンダリングのための方法。 - 請求項1ないし請求項19のいずれか1項に記載の方法であって、それぞれのオブジェクトはさらにバウンディングボックス(101)を含み、前記バウンディングボックスはオブジェクトがレンダーされるべき範囲を示すことを特徴とするイメージレンダリングのための方法。
- 請求項20に記載の方法であって、オブジェクトが表示範囲内となったときの決定をするために、表示の境界線を定義するパラメータを持つオブジェクトのバウンディングボックスを交差することによって、さらにオブジェクトを前処理することを含むことを特徴とするイメージレンダリングのための方法。
- 請求項21に記載の方法であって、オブジェクトのバウンディングボックスと表示間がヌルの交差を持つオブジェクトの前処理は、それ以上処理されないことを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項22のいずれか1項に記載の方法であって、符号化された走査データの複数の線のそれぞれ及び塗りつぶし値を、表示のためフレームのラインに混合し、重み付けの要素を持つ塗りつぶし値(104)を重み付けすることによって、かつ補足的な要素を持つ前のピクセルの値の重み付けを解除することによって、ピクセルの前の値と共にピクセルに対応する塗りつぶし値(104)を混合し、前記重み付けの要素は内側のピクセルのために単一体に設定され、外側のピクセルのために0に設定され、移り変りのピクセルのためにグレイスケール値と等しく設定されることを特徴とするイメージレンダリングのための方法。
- 請求項23に記載の方法であって、表示されるオブジェクトは透明度(106)を含み、混合はさらに透明度によって重み付けされることを特徴とするイメージレンダリングのための方法。
- 請求項1ないし請求項24のいずれか1項に記載の方法であって、交差データは、それぞれのサブピクセルマトリックスの行のために、形状が行を横切る上または下の方向と共に、オブジェクトの形状とサブピクセルの行間のそれぞれの交差のX座標をさらに含むイメージレンダリングのための方法。
- ピクセルの複数の線を含む表示として、イメージをレンダリングするためのグラフィカルオブジェクトを処理するためのシステムであって、以下を含む:
表示されるオブジェクト(100)のストリームを受けるための受取手段(202、204、206)を含み、それぞれのオブジェクトは形状(102)、塗りつぶし値(104)、アルファ(106)を含み;
それぞれのオブジェクトの形状を形状の内側のピクセルを表わす第1状態と形状の外側のピクセルを表わす第2状態を含む表示のピクセルのための少なくとも2つの可能な状態のうちの1つを有する符号化された走査データの複数の線に変換(220、512)するための変換手段(220、222、224)を含み;
符号化された走査データの複数の線のそれぞれ、塗りつぶし値、およびアルファとを、表示のためフレームの線に混合するための混合手段(226)を含み;以下の特徴を含む:
前記変換手段は以下に適合する:
a. サブピクセルマトリックスとして表示のそれぞれのピクセルを表わし、サブピクセルマトリックスはピクセルを覆う1以上のサブピクセル領域を含み、
b. サブピクセルマトリックスでのそれぞれの水平上の行のために、オブジェクトの形状とサブピクセルマトリックス間のそれぞれの交点の座標を含む交差データを生成し、
c. 形状内にある「オン」のサブピクセル、又は形状外にある「オフ」のサブピクセルの群を抽出するために、ザブピクセルマトリックスのそれぞれの行のための前記交差データを処理し、および、表示のそれぞれの線のために以下を含む:
d. 形状の内側にあり、前記第1の状態に関連付けられたピクセルの群と、形状の外側にあり、前記第2の状態に関連付けられたピクセルの群と、部分的に形状の内側にあり部分的に形状の外側にあるため形状の端にあり第3の状態に関連付けられた移り変りのピクセルの群とを同定するために、抽出されたサブピクセルの群を解析し、
e. それぞれの移り変りのピクセルのために、形状の内側にある移り変りのピクセルの部分に対応するグレイスケール値を生成すべく、移り変りのピクセルとして同定されたそれらのピクセルをさらに処理し、
f. 前記それぞれの状態にあるピクセルの群の長さ、及び第3の状態の移り変りのピクセルのための、及び関連付けられたグレイスケール値を含む符号化された走査データの線を生成し、
形状は複数のセグメントを含むパス(108)を含み、
1以上の複数の曲線または非線形のパスのセグメントを、複数の直線のセグメントに変換する。 - 請求項26に記載のシステムであって、フレームは、ディスプレイ、プリンタ、ファイル、またはネットワークポートの少なくとも一つに対応することを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項26または請求項27に記載のシステムであって、オブジェクトは背景塗りつぶし値または置換え塗りつぶし値の少なくとも一つを含み、背景塗りつぶし値または置換え塗りつぶし値の少なくとも一つをフレームの線に混合する混合手段を含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項26ないし請求項28のいずれか1項に記載のシステムであって、前記受取手段、前記変換手段、及び前記混合手段はプロセッサとメモリを含み、前記プロセッサは符号化された走査データ、塗りつぶし値、およびアルファをピクセルデータの線と結合させるために構成され、および、
ピクセルデータの線を記憶するメモリを含み、およびメモリはプロセッサにピクセルデータの線を供給するように適合され、およびメモリはピクセルデータの線が符号化された走査データ、塗りつぶし値、および透明性に組み合わされたとき、生成されるピクセルデータの新しい線を記憶するように適合されていることを特徴とするグラフィカルオブジェクトを処理するためのシステム。 - 請求項29に記載のシステムであって、メモリを表示するために構成されたディスプレイを含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項29または請求項30に記載のシステムであって、プロセッサは、マイクロプロセッサ、マイクロコントローラ、組込み型マイクロコントローラ、プログラム可能なデジタル信号プロセッサ、専用集積回路、プログラム可能なゲートアレイ、またはプログラム可能なアレイロジックのうちの1以上をさらに含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項29ないし請求項31のいずれか1項に記載のシステムであって、メモリ内に記憶されたピクセルデータの線を印刷するために構成されたプリンタ、メモリ内に記憶されたピクセルデータの線を記憶するために構成された記憶装置、メモリ内に記憶されたピクセルデータの線を出力するために構成されたネットワーク機器のうちの少なくとも1以上をさらに含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項29ないし請求項32のいずれか1項に記載のシステムであって、プロセッサは、チップ、チップセット、またはダイのうちの少なくとも一つであることを特徴するグラフィカルオブジェクトを処理するためのシステム。
- 請求項29ないし請求項32のいずれか1項に記載のシステムであって、プロセッサおよびメモリはチップ、チップセット、またはダイのうちの少なくとも一つであることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項30または請求項30に従属するときの請求項31ないし請求項34のいずれか1項に記載のシステムであって、表示は、電子編成機、パームトップ(Palm-top)コンピュータ、ハンドヘルドゲーム機器、ウェブ化可能な携帯電話、パーソナルデジタルアシスタント、改良された電話、シンクライアント、またはセットトップボックスのうちの少なくとも一つの表示とすることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項30または請求項30に従属するときの請求項31ないし請求項34のいずれか1項に記載のシステムであって、表示はプリンタまたはプロッタのうちの少なくとも一つであることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項30または請求項30に従属するときの請求項31ないし請求項34のいずれか1項に記載のシステムであって、表示はドキュメントマネージメントシステム内で使用されることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項30または請求項30に従属するときの請求項31ないし請求項34のいずれか1項に記載のシステムであって、ドキュメントマネージメントシステムのファックス機、フォトコピー機、またはプリンタのうちの少なくとも一つで使用されることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項30または請求項30に従属するときの請求項31ないし請求項34のいずれか1項に記載のシステムであって、表示は車内システム内で使用されることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項30または請求項30に従属するときの請求項31ないし請求項34のいずれか1項に記載のシステムであって、表示はオーディオプレーヤ、電子レンジ、冷蔵庫、洗濯機、衣服乾燥機、オーブン、または皿洗い機のうちの少なくとも一つで使用されることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項29ないし請求項40のいずれか1項に記載のシステムであって、プロセッサは複数のグラフィカルオブジェクトを受け、並列の複数のグラフィカルオブジェクトを処理することを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項26ないし請求項28のいずれか1項に記載のシステムであって、
前記受取手段は前記オブジェクトの前記ストリームを受け取るための入力機構を含み、
前記変換手段と混合手段は、ピクセル配列を作成するためのオブジェクトの基準によってオブジェクト上のオブジェクトのストリームを処理するオブジェクトプロセッサを含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。 - 請求項42に記載のシステムであって、それぞれのオブジェクトの形状がパスを含み、オブジェクトプロセッサが、イメージのアウトラインを表現するピクセル配列を作成するために前記パスを処理することを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項43に記載のシステムであって、オブジェクトプロセッサはパスの端をエイリアス除去することを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項43または請求項44に記載のシステムであって、オブジェクトプロセッサはイメージのアウトラインを符号化することを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項42ないし請求項45のいずれか1項に記載のシステムであって、それぞれのオブジェクトがバウンディングボックス(101)をさらに含み、前記バウンディングボックスはオブジェクトがレンダーされるべき範囲をオブジェクトプロセッサに示すことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項42ないし請求項46のいずれか1項に記載のシステムであって、オブジェクトプロセッサは滑らかにする要素(210)を受け取り、前記滑らかにする要素は、ピクセル配列に関連するオブジェクトの過サンプリングの量を指定することを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項42ないし請求項47のいずれか1項に記載のシステムであって、それぞれのオブジェクトのアルファ(106)は透明度値及び形状のための透明度値のビットマップへのポインタを含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項42ないし請求項48のいずれか1項に記載のシステムであって、それぞれのオブジェクトの塗りつぶし値(104)には、色(116)、テクスチャまたはビットマップ(118)のうちの少なくとも1つを含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項44または請求項44に従属するときの請求項45ないし請求項49のいずれか1項に記載のシステムであって、エイリアス除去された端は、グレイスケール値として表示されることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項50に記載のシステムであって、トーン応答曲線は、エイリアス除去された端のグレイスケール値に適用されることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項42ないし請求項51のいずれか1項に記載のシステムであって、ピクセル配列は、スクリーン、プリンタ、ネットワークポートまたはファイルのうちの少なくとも1つに送られることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項42ないし請求項52のいずれか1項に記載のシステムであって、パラメータのうちの1つは、前処理された形状データであることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項53に記載のシステムであって、前処理された形状データは、形状を表現する符号化された走査データの複数の線を含む切落しマスクを含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項53または請求項54に記載のシステムであって、前処理された形状データは、透明度を含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項53ないし請求項55のいずれか1項に記載のシステムであって、前処理された形状データは、塗りつぶし値を含むことを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- 請求項42ないし請求項56のいずれか1項に記載のシステムであって、中間処理データをキャッシュに記憶することをさらに含み、中間処理データは、形状を表現する符号化された走査データの複数の線を含む切落しマスク、塗りつぶし値、または透明度のうちの少なくとも1つを含んでいることを特徴とするグラフィカルオブジェクトを処理するためのシステム。
- ピクセルの複数の線を含む表示として、イメージをレンダリングするためのグラフィカルオブジェクトを処理するためのコンピュータプログラムであって、以下を含む:
ピクセルの複数の線を含む表示として、イメージをレンダリングするために、コンピュータに以下の処理を実行させる:
受取手段として、表示されるオブジェクト(100)のストリームを受け取り、それぞれのオブジェクトは形状(102)、塗りつぶし値(104)、およびアルファ(106)を含み;
変換手段として、それぞれのオブジェクトのために、形状の内側のピクセルを表わす第1の状態と形状の外側のピクセルを表わす第2の状態を含む表示のピクセルのための少なくとも2つの可能な状態のうちの1つを有する符号化された走査データの複数の線にオブジェクトの形状を変換し;
混合手段として、符号化された走査データの複数の線のそれぞれ、塗りつぶし値、およびアルファを、表示のためフレームの線に混合し;以下の特徴を含む:
符号化された走査データの複数の線にオブジェクトの形状を変換し、前記符号化された走査データは以下を含む:
a. サブピクセルマトリックスとして表示のそれぞれのピクセルを表わし、サブピクセルマトリックスはピクセルを覆う1以上のサブピクセル領域を含み、
b. サブピクセルマトリックスでのそれぞれの水平上の行のために、オブジェクトの形状とサブピクセルマトリックス間のそれぞれの交点の座標を含む交差データを生成し、
c. 形状内にある「オン」のサブピクセル、又は形状外にある「オフ」のサブピクセルの群を抽出するために、ザブピクセルマトリックスのそれぞれの行のための前記交差データを処理し、および、表示のそれぞれの線のために以下を含む:
d. 形状の内側にあり、前記第1の状態に関連付けられたピクセルの群と、形状の外側にあり、前記第2の状態に関連付けられたピクセルの群と、部分的に形状の内側にあり部分的に形状の外側にあるため形状の端にあり第3の状態に関連付けられた移り変りのピクセルの群とを同定するために、抽出されたサブピクセルの群を解析し、
e. それぞれの移り変りのピクセルのために、形状の内側にある移り変りのピクセルの部分に対応するグレイスケール値を生成すべく、移り変りのピクセルとして同定されたそれらのピクセルをさらに処理し、
f. 前記それぞれの状態にあるピクセルの群の長さ、及び第3の状態の移り変りのピクセルのための、及び関連付けられたグレイスケール値を含む符号化された走査データの線を生成し、
形状は複数のセグメントを含むパス(108)を含み、
1以上の複数の曲線または非線形のパスのセグメントを、複数の直線のセグメントに変換する。 - 請求項58に記載のコンピュータプログラムであって、表示がディスプレイ、プリンタ、ファイル、またはネットワークポートの少なくとも一つに対応することを特徴とするグラフィカルオブジェクトを処理するためのコンピュータプログラム。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0009129.8 | 2000-04-14 | ||
GB0009192.8 | 2000-04-14 | ||
GBGB0009129.8A GB0009129D0 (en) | 2000-04-14 | 2000-04-14 | Digital document processing |
US09/703,502 | 2000-10-31 | ||
US09/703,502 US7055095B1 (en) | 2000-04-14 | 2000-10-31 | Systems and methods for digital document processing |
PCT/GB2001/001712 WO2001080183A1 (en) | 2000-04-14 | 2001-04-17 | Shape processor |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003531446A JP2003531446A (ja) | 2003-10-21 |
JP2003531446A5 JP2003531446A5 (ja) | 2008-05-22 |
JP5106735B2 true JP5106735B2 (ja) | 2012-12-26 |
Family
ID=38666808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001577305A Expired - Fee Related JP5106735B2 (ja) | 2000-04-14 | 2001-04-17 | 形状プロセッサ |
Country Status (10)
Country | Link |
---|---|
US (2) | US6781600B2 (ja) |
EP (2) | EP1528510B1 (ja) |
JP (1) | JP5106735B2 (ja) |
CN (1) | CN1241150C (ja) |
AT (1) | ATE286285T1 (ja) |
AU (1) | AU2001254915A1 (ja) |
DE (1) | DE60108093T2 (ja) |
ES (1) | ES2236219T3 (ja) |
HK (1) | HK1057121A1 (ja) |
WO (1) | WO2001080183A1 (ja) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7210099B2 (en) * | 2000-06-12 | 2007-04-24 | Softview Llc | Resolution independent vector display of internet content |
GB0105561D0 (en) * | 2001-03-07 | 2001-04-25 | Segmentis Ltd | Improvements in and relating to image signal processing and printing of picture therefrom |
JP3576126B2 (ja) * | 2001-07-30 | 2004-10-13 | 株式会社ナムコ | 画像生成システム、プログラム及び情報記憶媒体 |
GB0124630D0 (en) * | 2001-10-13 | 2001-12-05 | Picsel Res Ltd | "Systems and methods for generating visual representations of graphical data and digital document processing" |
AUPS134202A0 (en) * | 2002-03-25 | 2002-05-09 | Canon Kabushiki Kaisha | System and method for optimizing halftoning printer performance |
US7109997B1 (en) * | 2002-06-28 | 2006-09-19 | Microsoft Corporation | Systems and methods for direct storage of compressed scan converted data |
JP2004120122A (ja) * | 2002-09-24 | 2004-04-15 | Sharp Corp | 画像処理装置 |
US7800631B2 (en) | 2003-03-18 | 2010-09-21 | Qualcomm Incorporated | Triangle rendering using direct evaluation |
US7209105B2 (en) * | 2003-06-06 | 2007-04-24 | Clairvoyante, Inc | System and method for compensating for visual effects upon panels having fixed pattern noise with reduced quantization error |
US7420568B1 (en) * | 2003-12-17 | 2008-09-02 | Nvidia Corporation | System and method for packing data in different formats in a tiled graphics memory |
US7277095B2 (en) * | 2004-03-16 | 2007-10-02 | Canon Kabushiki Kaisha | Method of rendering graphical objects |
US20050240818A1 (en) * | 2004-04-05 | 2005-10-27 | James Don R Jr | System and method for processor diagnostic device with video controller |
KR100600350B1 (ko) * | 2004-05-15 | 2006-07-14 | 삼성에스디아이 주식회사 | 역다중화 및 이를 구비한 유기 전계발광 표시 장치 |
US20050264554A1 (en) * | 2004-05-25 | 2005-12-01 | Deming James L | Tile based rendering of smooth points using polygons |
US7868903B2 (en) * | 2004-10-14 | 2011-01-11 | Daktronics, Inc. | Flexible pixel element fabrication and sealing method |
US8001455B2 (en) * | 2004-10-14 | 2011-08-16 | Daktronics, Inc. | Translation table |
US7893948B1 (en) | 2004-10-14 | 2011-02-22 | Daktronics, Inc. | Flexible pixel hardware and method |
US8344410B2 (en) | 2004-10-14 | 2013-01-01 | Daktronics, Inc. | Flexible pixel element and signal distribution means |
US8184128B2 (en) * | 2004-10-27 | 2012-05-22 | Hewlett-Packard Development Company, L. P. | Data distribution system and method therefor |
JP4266939B2 (ja) | 2005-02-10 | 2009-05-27 | 株式会社ソニー・コンピュータエンタテインメント | 描画処理装置および描画データ圧縮方法 |
US7747946B2 (en) * | 2005-04-11 | 2010-06-29 | Microsoft Corporation | System and method for adorning shapes with data driven objects |
JP2006338507A (ja) * | 2005-06-03 | 2006-12-14 | Fujifilm Holdings Corp | 処理装置及び処理方法 |
JP2006338506A (ja) * | 2005-06-03 | 2006-12-14 | Fujifilm Holdings Corp | コネクタ |
US20070067517A1 (en) * | 2005-09-22 | 2007-03-22 | Tzu-Jen Kuo | Integrated physics engine and related graphics processing system |
US8294731B2 (en) * | 2005-11-15 | 2012-10-23 | Advanced Micro Devices, Inc. | Buffer management in vector graphics hardware |
US20090009526A1 (en) * | 2007-07-03 | 2009-01-08 | Sun Microsystems, Inc. | Method and system for rendering a shape |
US8407619B2 (en) * | 2008-07-30 | 2013-03-26 | Autodesk, Inc. | Method and apparatus for selecting and highlighting objects in a client browser |
US8218904B2 (en) * | 2008-08-27 | 2012-07-10 | Lockheed Martin Corporation | Method and system for circular to horizontal transposition of an image |
KR20110007838A (ko) * | 2009-07-17 | 2011-01-25 | 삼성전자주식회사 | 영상 처리 방법 및 장치 |
EP2845164B1 (en) | 2012-04-30 | 2018-06-06 | Dolby Laboratories Licensing Corporation | Reference card for scene referred metadata capture |
US10019137B2 (en) | 2012-05-09 | 2018-07-10 | Qualcomm Incorporated | Electronic document display |
JP2014106809A (ja) * | 2012-11-28 | 2014-06-09 | Konica Minolta Inc | データ処理装置、コンテンツ表示方法およびブラウジングプログラム |
EP4040395A1 (en) * | 2016-01-18 | 2022-08-10 | Advanced Micro Devices, Inc. | Performing anti-aliasing operations in a computing system |
JP6295299B2 (ja) * | 2016-08-26 | 2018-03-14 | 株式会社ミツトヨ | 座標補正方法及び三次元測定装置 |
EP3293672A1 (en) * | 2016-09-07 | 2018-03-14 | Malvern Panalytical Limited | Particle boundary identification |
CN106651807B (zh) * | 2016-12-29 | 2020-03-10 | 上海天马有机发光显示技术有限公司 | 一种图像处理系统、显示设备及图像处理方法 |
CN107492139B (zh) * | 2017-08-25 | 2020-06-16 | 网易(杭州)网络有限公司 | 泛光信息的处理方法、装置、存储介质、处理器及终端 |
CN107730467B (zh) * | 2017-10-16 | 2020-04-10 | 芯颖科技有限公司 | 显示方法、装置、设备及存储介质 |
US10699374B2 (en) | 2017-12-05 | 2020-06-30 | Microsoft Technology Licensing, Llc | Lens contribution-based virtual reality display rendering |
CN107943479B (zh) * | 2017-12-12 | 2020-11-10 | 网易(杭州)网络有限公司 | 图形用户界面中物理边界的定义方法、装置和设备 |
CN108762832A (zh) * | 2018-05-16 | 2018-11-06 | 无锡小天鹅股份有限公司 | 家用电器默认数据设置方法、装置和衣物处理装置 |
US10650576B1 (en) * | 2018-11-12 | 2020-05-12 | Adobe Inc. | Snapping experience with clipping masks |
US11076151B2 (en) | 2019-09-30 | 2021-07-27 | Ati Technologies Ulc | Hierarchical histogram calculation with application to palette table derivation |
US11915337B2 (en) | 2020-03-13 | 2024-02-27 | Advanced Micro Devices, Inc. | Single pass downsampler |
US11748923B2 (en) | 2021-11-12 | 2023-09-05 | Rockwell Collins, Inc. | System and method for providing more readable font characters in size adjusting avionics charts |
US11887222B2 (en) | 2021-11-12 | 2024-01-30 | Rockwell Collins, Inc. | Conversion of filled areas to run length encoded vectors |
US11854110B2 (en) | 2021-11-12 | 2023-12-26 | Rockwell Collins, Inc. | System and method for determining geographic information of airport terminal chart and converting graphical image file to hardware directives for display unit |
US11954770B2 (en) | 2021-11-12 | 2024-04-09 | Rockwell Collins, Inc. | System and method for recreating graphical image using character recognition to reduce storage space |
US11915389B2 (en) | 2021-11-12 | 2024-02-27 | Rockwell Collins, Inc. | System and method for recreating image with repeating patterns of graphical image file to reduce storage space |
US11842429B2 (en) | 2021-11-12 | 2023-12-12 | Rockwell Collins, Inc. | System and method for machine code subroutine creation and execution with indeterminate addresses |
Family Cites Families (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5083262A (en) | 1986-04-28 | 1992-01-21 | International Business Machines Corporation | Language bindings for graphics functions to enable one application program to be used in different processing environments |
GB2240016A (en) | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | Texture memories store data at alternating levels of resolution |
US5459823A (en) | 1990-07-05 | 1995-10-17 | Canon Kabushiki Kaisha | Graphics engine for true colour 2D graphics |
JPH04246690A (ja) | 1990-08-29 | 1992-09-02 | Xerox Corp | 高品質のイメージを並みの解像度で表示する方法 |
JPH04262473A (ja) | 1990-09-28 | 1992-09-17 | Xerox Corp | 多重ステッパーを用いた高速図形画像生成法 |
US5390320A (en) | 1991-01-22 | 1995-02-14 | Grumman Aerospace Corporation | Automatically converting structured analysis tool database outputs into an integrated simulation model via transportable standardized metafile |
CA2062911A1 (en) | 1991-05-17 | 1992-11-18 | Stephen C. Gates | Computer graphics system and method for auto-tresselating graphic objects |
EP0529121A1 (en) | 1991-08-24 | 1993-03-03 | International Business Machines Corporation | Graphics display tool |
JPH07146931A (ja) * | 1993-03-08 | 1995-06-06 | Canon Inf Syst Res Australia Pty Ltd | 画像創成方法 |
GB2278524B (en) * | 1993-05-28 | 1997-12-10 | Nihon Unisys Ltd | Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency |
US5528738A (en) * | 1993-10-06 | 1996-06-18 | Silicon Graphics, Inc. | Method and apparatus for antialiasing raster scanned, polygonal shaped images |
US5911066A (en) | 1994-02-22 | 1999-06-08 | Microsoft Corporation | Data transfer utilizing a single functionally independent data transfer mechanism |
JPH07271958A (ja) * | 1994-03-31 | 1995-10-20 | Toshiba Corp | 画像ファイル装置及び画像ファイルアクセス方法 |
JPH07282274A (ja) * | 1994-04-04 | 1995-10-27 | Mitsubishi Electric Corp | グラフィック表示装置 |
JP3000855B2 (ja) * | 1994-07-29 | 2000-01-17 | 日本ビクター株式会社 | 文字図形処理装置及び情報処理装置 |
AUPM822394A0 (en) * | 1994-09-16 | 1994-10-13 | Canon Inc. | Object based rendering system |
AUPM822194A0 (en) * | 1994-09-16 | 1994-10-13 | Canon Inc. | Utilisation of scanned images in an image compositing system |
US5920323A (en) * | 1995-02-09 | 1999-07-06 | Canon Kabushiki Kaisha | Diagram processing apparatus and method |
US6025853A (en) * | 1995-03-24 | 2000-02-15 | 3Dlabs Inc. Ltd. | Integrated graphics subsystem with message-passing architecture |
JP3634447B2 (ja) | 1995-07-14 | 2005-03-30 | キヤノン株式会社 | 画像処理装置及び方法 |
US5867166A (en) | 1995-08-04 | 1999-02-02 | Microsoft Corporation | Method and system for generating images using Gsprites |
US6008820A (en) * | 1995-08-04 | 1999-12-28 | Microsoft Corporation | Processor for controlling the display of rendered image layers and method for controlling same |
JP3753263B2 (ja) | 1995-08-23 | 2006-03-08 | ヒューレット・パッカード・カンパニー | 画像を処理する方法 |
US6173075B1 (en) * | 1995-08-30 | 2001-01-09 | Usanimation, Inc. | Drawing pixmap to vector conversion |
US5910805A (en) | 1996-01-11 | 1999-06-08 | Oclc Online Computer Library Center | Method for displaying bitmap derived text at a display having limited pixel-to-pixel spacing resolution |
AU2585797A (en) | 1996-03-15 | 1997-10-01 | University Of Massachusetts | Compact tree for storage and retrieval of structured hypermedia documents |
KR0172581B1 (ko) | 1996-04-02 | 1999-03-30 | 이진기 | 단계적 표현 가능형 폰트 그 변환 방법 및 렌더링 방법 |
US5754348A (en) | 1996-05-14 | 1998-05-19 | Planetweb, Inc. | Method for context-preserving magnification of digital image regions |
JPH09325748A (ja) * | 1996-06-03 | 1997-12-16 | Toshiba Corp | 文字パターン形成装置及び文字パターン形成方法 |
EP0925542B1 (en) | 1996-09-09 | 2002-08-07 | Design Intelligence, Inc. | Automatic layout and formatting of content for a design in a medium |
AU6155498A (en) | 1997-02-10 | 1998-09-09 | Logitech, Inc. | Touch pad with scroll bar, command bar |
JP3361951B2 (ja) | 1997-02-25 | 2003-01-07 | 大日本スクリーン製造株式会社 | 印刷データ処理装置および方法 |
JP2957511B2 (ja) * | 1997-03-28 | 1999-10-04 | インターナショナル・ビジネス・マシーンズ・コーポレイション | グラフィック処理装置 |
US5982381A (en) | 1997-07-03 | 1999-11-09 | Microsoft Corporation | Method and apparatus for modifying a cutout image for compositing |
US6417848B1 (en) | 1997-08-25 | 2002-07-09 | Ati International Srl | Pixel clustering for improved graphics throughput |
US6049390A (en) * | 1997-11-05 | 2000-04-11 | Barco Graphics Nv | Compressed merging of raster images for high speed digital printing |
US6034700A (en) | 1998-01-23 | 2000-03-07 | Xerox Corporation | Efficient run-based anti-aliasing |
US6857102B1 (en) | 1998-04-07 | 2005-02-15 | Fuji Xerox Co., Ltd. | Document re-authoring systems and methods for providing device-independent access to the world wide web |
AU5688199A (en) | 1998-08-20 | 2000-03-14 | Raycer, Inc. | System, apparatus and method for spatially sorting image data in a three-dimensional graphics pipeline |
AU743218B2 (en) * | 1998-09-11 | 2002-01-24 | Canon Kabushiki Kaisha | Fast renering techniques for rasterised graphic object based images |
US6336124B1 (en) | 1998-10-01 | 2002-01-01 | Bcl Computers, Inc. | Conversion data representing a document to other formats for manipulation and display |
US6125391A (en) | 1998-10-16 | 2000-09-26 | Commerce One, Inc. | Market makers using documents for commerce in trading partner networks |
US6608630B1 (en) * | 1998-11-09 | 2003-08-19 | Broadcom Corporation | Graphics display system with line buffer control scheme |
US6480201B1 (en) * | 1999-08-24 | 2002-11-12 | Microsoft Corporation | Alpha regions |
-
2001
- 2001-04-16 US US09/835,462 patent/US6781600B2/en not_active Expired - Lifetime
- 2001-04-17 EP EP04013827.3A patent/EP1528510B1/en not_active Expired - Lifetime
- 2001-04-17 WO PCT/GB2001/001712 patent/WO2001080183A1/en active Search and Examination
- 2001-04-17 ES ES01928048T patent/ES2236219T3/es not_active Expired - Lifetime
- 2001-04-17 JP JP2001577305A patent/JP5106735B2/ja not_active Expired - Fee Related
- 2001-04-17 AU AU2001254915A patent/AU2001254915A1/en not_active Abandoned
- 2001-04-17 CN CNB01808382XA patent/CN1241150C/zh not_active Expired - Fee Related
- 2001-04-17 AT AT01928048T patent/ATE286285T1/de not_active IP Right Cessation
- 2001-04-17 EP EP01928048A patent/EP1272977B8/en not_active Expired - Lifetime
- 2001-04-17 DE DE60108093T patent/DE60108093T2/de not_active Expired - Lifetime
-
2003
- 2003-12-24 HK HK03109409A patent/HK1057121A1/xx not_active IP Right Cessation
-
2004
- 2004-05-24 US US10/853,482 patent/US7009624B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2003531446A (ja) | 2003-10-21 |
EP1272977B8 (en) | 2005-08-10 |
DE60108093T2 (de) | 2006-01-12 |
ES2236219T3 (es) | 2005-07-16 |
WO2001080183A8 (en) | 2004-12-23 |
EP1528510A3 (en) | 2012-03-07 |
DE60108093D1 (de) | 2005-02-03 |
EP1528510B1 (en) | 2017-01-18 |
CN1426574A (zh) | 2003-06-25 |
US6781600B2 (en) | 2004-08-24 |
HK1057121A1 (en) | 2004-03-12 |
WO2001080183A1 (en) | 2001-10-25 |
US7009624B2 (en) | 2006-03-07 |
US20050030321A1 (en) | 2005-02-10 |
US20010030655A1 (en) | 2001-10-18 |
EP1272977B1 (en) | 2004-12-29 |
ATE286285T1 (de) | 2005-01-15 |
AU2001254915A1 (en) | 2001-10-30 |
EP1528510A2 (en) | 2005-05-04 |
EP1272977A1 (en) | 2003-01-08 |
CN1241150C (zh) | 2006-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5106735B2 (ja) | 形状プロセッサ | |
KR100707579B1 (ko) | 비디오 데이터의 프레임 생성 방법 및 시스템 | |
JP5006412B2 (ja) | 効率的な2d及び3dグラフィックス処理 | |
JP3919754B2 (ja) | 画素順次描画システムにおいて実行される合成演算回数の削減法 | |
AU2005201019B2 (en) | A method of rendering graphical objects | |
JP2010165357A (ja) | グラフィックスを処理する方法およびそのための装置 | |
US5867612A (en) | Method and apparatus for the fast scaling of an image | |
EP1014306B1 (en) | Antialiased high-resolution frame buffer architecture | |
JP2013505854A (ja) | 印刷可能なラスタ画像ファイルを作成する方法 | |
US20060061590A1 (en) | Low-cost supersampling rasterization | |
EP1431920B1 (en) | Low-cost supersampling rasterization | |
JPH05120441A (ja) | ベクトル画像描画装置 | |
CN100377179C (zh) | 形状处理器 | |
JP4840033B2 (ja) | 画像処理プログラムおよび画像処理装置 | |
JP2020203432A (ja) | 描画処理装置、描画処理方法及び描画処理プログラム | |
AU770175B2 (en) | Processing pixels of a digital image | |
JP3795564B2 (ja) | イメージ伸張処理方法 | |
AU2014277651A1 (en) | Generating and rendering an anti-aliased page representation | |
Sample et al. | Image Processing and Manipulation | |
JPH10336697A (ja) | 画像処理装置及び方法及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080326 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080326 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20100118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110224 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110329 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110729 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20110808 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20110902 |
|
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: 20121003 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151012 Year of fee payment: 3 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |