JP2009516250A - ベクトルグラフィック画像のアンチエイリアス - Google Patents

ベクトルグラフィック画像のアンチエイリアス Download PDF

Info

Publication number
JP2009516250A
JP2009516250A JP2008539462A JP2008539462A JP2009516250A JP 2009516250 A JP2009516250 A JP 2009516250A JP 2008539462 A JP2008539462 A JP 2008539462A JP 2008539462 A JP2008539462 A JP 2008539462A JP 2009516250 A JP2009516250 A JP 2009516250A
Authority
JP
Japan
Prior art keywords
pixel
counter value
current
vector
edge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008539462A
Other languages
English (en)
Other versions
JP4982498B2 (ja
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.)
DDEEG Microconsulting Oy
Original Assignee
Bitboys Oy
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 Bitboys Oy filed Critical Bitboys Oy
Publication of JP2009516250A publication Critical patent/JP2009516250A/ja
Application granted granted Critical
Publication of JP4982498B2 publication Critical patent/JP4982498B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/12Indexing scheme for image data processing or generation, in general involving antialiasing

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

携帯端末装置において使用されるベクトルグラフィックス画像をアンチエイリアスするために構成されるプロセッサユニットと、一度に1つのエッジで画素ごとにラスタ化方向の各画素のカウンタ値を算出するように構成されるカウンタ値計算機と、エッジバッファの前記算出カウンタ値を記憶するように構成されるカウンタ値レコーダと、前記記憶されたカウンタ値に基づいて画素範囲値を算出するように構成される画素有効範囲値計算機とを含む。算出された画素有効範囲値は、前記ベクトルグラフィックス画像をラスタ化する際に前記ベクトルグラフィックス画像をアンチエイリアスするために利用される。
【選択図】図1

Description

本発明は、一般的にベクトルグラフィック処理に関し、特にベクトルグラフィック画像のアンチエイリアスに関する。
近年、例えばラスタグラフィックス、ベクタグラフィックスなどのコンピュータグラフィックスがディジタル画像を表現するために使用されている。
ラスタグラフィックス画像は、画素(ピクセル)のグリッドとして記憶でき、操作できる。
通常、画素のグリッドは、水平方向のディメンジョンと垂直方向のディメンジョンを有する矩形である。
ラスタグラフィック画像は、例えばモニタや紙などのメディアなどの表示装置に表示できる。
各画素の色は、個々に定義できる。
通常、各画素は、画素の赤、緑、青成分に対する独立した値によって表現できる。
加えて、透明度成分の値または「アルファ」値がグラフィック画像の各画素に含まれている。
従って、ラスタグラフィック画像は、その解像度(即ち、画素の全体の数)、その色の深さ(即ち、各画素の情報の量)によって決定できる。
これに対して、ベクトルグラフィック画像は、曲線、線、多角形などの幾何学的オブジェクトを含むことができる。
ベクトルグラフィック画像では、画像の各画素を記憶し、操作する代わりに画像に含まれている幾何学的オブジェクトを記述する情報を記憶することができる。
例えば、円のような幾何学的オブジェクトの場合、円を描くために記憶される情報は、円の半径、円の中心点の位置、円のために使用される線のスタイルと色、円を塗りつぶすために使用されるスタイルと色などを含むことができる。
しばしば幾何学的オブジェクトは、より簡単な幾何学的物体に分解できる。
例えば、四角形は、2つの三角形に分解できる。
ベクトルグラフィックアートでは、「プリミティブ」という用語がベクトルグラフィック画像中のオブジェクトの基本的またはプリミティブな要素に言及するときに使用でき、点、線、平面、円、球、三角形、多角形などを含むことができる。
プリミティブが、1つまたはそれ以上のラインセグメントを含んでいるとき、これらのラインセグメントはベクトルグラフィックアートでは「エッジ」と呼ばれる。
例えば、四角形は、4つのエッジから構成された多角形である。
ラスタグラフィックスに比べてベクトルグラフィックスの有利な点には、記憶すべき情報量が最小であることにより、ファイルサイズがかなりより小さいことが含まれている。
加えて、ファイルサイズは、画像に含まれている幾何学的オブジェクトのディメンジョンに依存しない。
さらに、ベクトルグラフィックは、2次元および3次元の両方の幾何学的オブジェクト用に使用でき、ベクトルグラフィック画像はその品質を失うことなく拡大縮小できる。
ベクトルグラフィック画像は、図形情報を含む上述のフォーマットで記憶し、修正できるけれども、ベクトルグラフィック画像は通常表示のためにラスタグラフィック画像に変換でき、これは「ラスタ化」と呼ばれる。
通常、ラスタ化は現在のプリミティブがどの画像中の画素に影響するかを決定する各々のプリミティブを通じたルーピングおよびそれに従った対応する画素の修正を含んでいる。
ベクトルグラフィック画像をラスタ化するときに、結果として得られるラスタグラフィック画像をスムーズにするためにしばしば「アンチエイリアス」が使用され、それは例えばグラフィック画像の輪郭に隣接する画素の透明度を操作して輪郭のみかけのスムーズさを操作することを含むことができる。
アンチエイリアスは、通常、特にデスクトップコンピュータ、サーバなどの通常のコンピュータ関連のコンピュータグラフィックスアートで使用される。
例えば、コンピュータスクリーンに表示されるスケーラブルフォントはアンチエイリアスされ、それは文字を表示するために使用されている各画素に対してその画素が文字によってどれくらい占有されているかを決定し、その画素を対応する不透明度に対応して描画することを含んでいる。
例えば、白い背景に黒い文字を描く場合、画素が理想的に半分だけ塗りつぶされているとき(例えば、コーナからコーナへ対角線状に)、画素は50%のグレイスケールで描画できる。
加えて、3次元グラフィックス用のアンチエイリアスの各種実現様式が開発されている。
例えば、多角形をベースとした3次元描画用の通常のアンチエイリアスソリューションは全体のフレームバッファが最初により高い解像度で描画され、次にサンプリングダウンしていくフルスクリーンアンチエイリアスを含むことができる。
適切なサンプリング手法を使用して、アンチエイリアスは、比較的少ない量のサンプルでかつ性能を犠牲にせずに実現できる。
しかしながら、2次元描画はアンチエイリアス品質に対する要求がより高いので、このアプローチは2次元描画用には特に適していない。
言い換えると、2次元描画におけるアンチエイリアスはかなり大量のサンプルを必要とし、メモリ使用に関してかなりのペナルティを生じる。
さらに、そのようなアプローチは、適切なサンプリングパターンを達成するために出力ビットマップにおけるサンプルの特殊な配置を要求する。
従って、2次元アンチエイリアスアルゴリズムは、通常サンプル配置用に規則正しいグリッドを有するビットマップと共に使用される。
それ故、2次元描画に関連して使用されるアンチエイリアス方式は、サンプル配置用にサンプルの規則正しいグリッドを有するビットマップを共に動作できなければならない。
通常、テキスチャデータは、既にフィルタ処理が行われているので、より高いサンプリング周波数を多角形のエッジだけで使用する必要がある。
従って、いくつかのアンチエイリアス技術は、そのような知見を使用し、例えば、有効範囲マスクが部分的塗りつぶしエリアを定義しているときだけ異なった多角形からフェッチした色の値のブレンドが必要な場所で有効範囲マスクを使用して、多角形データのためだけにアンチエイリアスを計算する。
2次元多角形アンチエイリアスアルゴリズム手法は、サンプルベースのアプローチと解析アプローチに分類される。
サンプルベースのアプローチは、通常内部で高解像度のデータを使用し、そのようなデータから画素の強度を計算する。
高解像度データの生成は、直接に高解像度バッファへのラスタ化または高解像度バッファを構成するために使用されるエッジマスク用のルックアップテーブルを使用する方法を含むことができる。
単により高解像度で描画し、それからダウンスケールする方法は、サンプルベースのアプローチの簡略化バージョンと見なすことができる。
しかしながら、そのようなサンプルベースのアプローチは、大量のサンプルが処理されなければならないので帯域幅およびメモリの使用に関連して比較的高くつく。
これに対して解析的アプローチは、数学的解析を使用して多角形の正確な画素有効範囲を計算しようと企てる。
解析的アプローチは、サンプルベースのアプローチよりも多角形のエッジでより多くのトーンを生成できる。
さらに、解析的アプローチは、サンプリングによる人為現象の被害を受けない。
しかしながら、解析的アプローチは、例えば画素レベルおよび多角形間でのクリッピングを必要とするので、計算費用が高い。
加えて、サンプリングの人為現象は、避けられるけれども、解析的アプローチに関連して最適化が使用されると他のタイプの人為現象が存在する可能性がある。
さらに、解析的アプローチは、各種の塗りつぶしルールをサポートするために拡張することが容易ではなく、むしろ通常1つの多角形がより小さな多角形または三角形に分解され、処理に長時間を必要とするだけである。
上述のアンチエイリアス方法およびアルゴリズムは、通常、高い処理能力のコンピュータで使用され、そこではアンチエイリアス技術を実現するために通常は強力なプロセッサが要求される。
中央処理ユニットに加えて、しばしば別のグラフィック処理ユニットを装備した最新のコンピュータでは、そのような技術は大きな問題を提起しない。
しかしながら、携帯電話、PDA、ハンドヘルドコンピュータなどでグラフィック表示用のディスプレイを備えてはいるが、通常処理能力は、通常のコンピュータよりかなり低い各種携帯端末装置の人気上昇に伴い、各種機能を提供しながら効率がよく(例えば最新のプラットフォームを要求しない)、実現が簡単なアンチエイリアス手法が必要となっている。
さらに、ここに参考文献として組み込まれ、アンチエイリアスを含むハードウエアアクセレレート2次元ベクトルおよびラスタグラフィック用のアプリケーションプログラミングインタフェース(API)を提供する、2005年7月28日のKhronosグループによるOpenVG1.0標準のようないくつかのグラフィック標準が開発されている。
従って、OpenVG仕様は、腕時計からフルマイクロプロセッサベースのデスクトップおよびサーバマシンにおよぶ範囲のデバイス上でハードウエアアクセレレーションを提供するために、デバイスに依存しないで(例えばデバイス製造者によって)実現されるべき一式の仕様を提供している。
しかしながら、OpenVG仕様は、それらの仕様を実際に実現する方法については教示も示唆もしていない。
それ故、上述の問題を軽減する必要が存在する。
上記およびその他の問題は、本発明の実施例によって取り組まれ、高品質で数学的に正しく、サブ画素の精度で、凹面で孔と自己自身で交差する多角形のサポートや偶−奇巻数塗りつぶしルールおよびノンゼロ巻数塗りつぶしルールのサポートなどを含め、制限された処理能力の携帯端末装置などで実現するために十分に効率のよいベクトルグラフィック画像のアンチエイリアスが提供されている。
従って、実施例は、特に携帯用デバイスアプリケーション、計算能力の低いデバイスアプリケーション、メモリの少ないデバイスアプリケーションなどの計算機グラフィックアプリケーションなどを含む各種のグラフィックアプリケーションによって使用できる。
有利には、実施例のアンチエイリアスソリューションは対応するハードウエアの実現などに良く適している。
従って、本発明の実施例においては、少なくとも1つのエッジを有し、少なくとも1つのプリミティブを含むベクトルグラフィック画像のアンチエイリアスのために構成されたプロセッサユニットを提供している。
ベクトルグラフィック画像は、第1ディメンジョンおよび第2ディメンジョンを有する画素のグループにラスタ化される。
ラスタ化は、第1ディメンジョンに平行なラスタ化方向で実行される。
各々の画素に関連して複数のサブ画素サンプリング点があり、各サブ画素サンプリング点に関連してカウンタ値がある。
プロセッサユニットは、各画素のカウンタ値を計算するように構成されたカウンタ値計算機を含むことができる。
カウンタ値計算機によるカウンタ値の計算は、ラスタ化方向で1度に1つのエッジで画素ごとに実行される。
プロセッサユニットは、さらに計算されたカウンタ値をエッジバッファに記憶するように構成されたカウンタ値レコーダと、この記憶されたカウンタ値を基にして画素有効範囲値を計算するように構成された画素有効範囲値計算機とを含んでいる。
計算された画素有効範囲値は、ベクトルグラフィック画像を画素のグループにラスタ化する際にベクトルグラフィック画像をアンチエイリアスするために使用される。
実施例は、さらに少なくとも1つのエッジを有する少なくとも1つのプリミティブを持ち、ベクトルグラフィック画像を第1ディメンジョンおよび第2ディメンジョンを有する画素のグループにラスタ化するように構成されたラスタライザを含む、携帯端末装置などのデバイスを含むことができる。
ラスタ化は、第1ディメンジョンに平行な方向にラスタ化され、複数のサブ画素サンプリング点が各画素と関連付けられ、カウンタ値が各サブ画素サンプリング点と関連付けられている。
携帯端末装置は、さらにベクトルグラフィック画像のアンチエイリアスを容易にするように構成されたプロセッサユニットと、各画素のカウンタ値を計算するように構成されたカウンタ値計算機とを含んでいる。
カウンタ値計算機によるカウンタ値の計算は、ラスタ化方向で1度に1つのエッジで画素ごとに実行される。
プロセッサユニットは、さらに計算されたカウンタ値をエッジバッファに記憶するように構成されたカウンタ値レコーダと、記憶されたカウンタ値を基にして画素有効範囲値を計算するように構成された画素有効範囲値計算機とを含んでいる。
計算された画素有効範囲値は、ベクトルグラフィック画像をラスタ化する際に、ラスタライザによってベクトルグラフィック画像をアンチエイリアスするために使用される。
実施例は、さらに少なくとも1つのエッジを有し、少なくとも1つのプリミティブを含むベクトルグラフィック画像のアンチエイリアス用のプロセッサユニットを含むことができる。
ベクトルグラフィック画像は、第1ディメンジョンおよび第2ディメンジョンを有する画素のグループにラスタ化される。
ラスタ化は、第1ディメンジョンに平行な方向にラスタ化され、複数のサブ画素サンプリング点が各画素と関連付けられ、カウンタ値が各サブ画素サンプリング点と関連付けられている。
プロセッサユニットは、各画素のカウンタ値を計算するためのカウンタ値計算手段を含んでいる。
カウンタ値計算手段によるカウンタ値の計算は、ラスタ化方向で1度に1つのエッジで画素ごとに実行される。
プロセッサユニットは、さらに計算されたカウンタ値をエッジバッファに記憶するためのカウンタ値記録手段と、記憶されたカウンタ値を基にして画素有効範囲値を計算するための画素有効範囲値計算手段とを含んでいる。
計算された画素有効範囲値は、ベクトルグラフィック画像を画素のグループにラスタ化する際にベクトルグラフィック画像をアンチエイリアスするために使用される。
実施例は、さらに少なくとも1つのエッジを有する少なくとも1つのプリミティブを有し、ベクトルグラフィック画像を第1ディメンジョンおよび第2ディメンジョンを有する画素のグループにラスタ化するためのエッジバッファ手段、ラスタ化手段を含む、携帯端末装置などのデバイスを含むことができる。
ラスタ化は、第1ディメンジョンに平行な方向にラスタ化され、複数のサブ画素サンプリング点が各画素と関連付けられ、カウンタ値が各サブ画素サンプリング点と関連付けられている。
携帯端末装置は、さらにベクトルグラフィック画像のアンチエイリアスのためのプロセッサユニットと、各画素のカウンタ値を計算するためのカウンタ値計算手段とを含んでいる。
カウンタ値計算手段によるカウンタ値の計算は、ラスタ化方向で1度に1つのエッジで画素ごとに実行される。
プロセッサユニットは、さらに計算されたカウンタ値をエッジバッファに記憶するためのカウンタ値記録手段と、記憶されたカウンタ値を基にして画素有効範囲値を計算するための画素有効範囲値計算手段とを含んでいる。
計算された画素有効範囲値は、ベクトルグラフィック画像をラスタ化する際に、ラスタ化手段によってベクトルグラフィック画像をアンチエイリアスするために使用される。
実施例において、カウンタ値計算機は、さらに次のステップでカウンタ値の計算を実行するように構成されている。
(i)現在のサブ画素サンプリング点が第1ベクトル方向を有する現在のエッジと交差した場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ増加させる。ここで第1ベクトル方向は、ラスタ化方向とは平行でない。
(ii)現在のサブ画素サンプリング点が第2ベクトル方向を有する現在のエッジと交差した場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ減少させる。ここで第2ベクトル方向は、ラスタ化方向とは平行ではない。
(iii)現在のサブ画素サンプリング点が、ラスタ化方向で、第1のベクトル方向を有する現在のエッジの後に配置されている場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ増加させる。
(iv)現在のサブ画素サンプリング点が、ラスタ化方向で、第2のベクトル方向を有する現在のエッジの後に配置されている場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ減少させる。
(v)現在のサブ画素サンプリング点が、ラスタ化方向で、第1のベクトル方向を有する現在のエッジの前に配置され、かつ現在のサブ画素サンプリング点およびもう1つのサブ画素サンプリング点がそれぞれの画素内で対応する位置に配置されている場合に、ラスタ化方向の現在の画素の次の画素内でもう1つ他のサブ画素サンプリング点に関連するカウンタ値を1つ増加させる。
(vi)現在のサブ画素サンプリング点が、ラスタ化方向で、第2のベクトル方向を有する現在のエッジの前に配置され、かつ現在のサブ画素サンプリング点およびもう1つのサブ画素サンプリング点がそれぞれの画素内で対応する位置に配置されている場合に、ラスタ化方向の現在の画素の次の画素内でもう1つ他のサブ画素サンプリング点に関連するカウンタ値を1つ減少させる。
実施例では、カウンタ値計算機によるカウンタ値計算は、1度に1つのエッジに対して実行される。
例えば、すべての画素内で上述の方法で、ベクトルグラフィック画像が少なくとも全体で2つのエッジを含んでいる場合には、現在のエッジによって影響されるサブ画素サンプリング点に関連するカウンタ値は引続くエッジによって影響されるサブ画素サンプリング点に関連するカウンタ値の1つ増加/1つ減少へ移動する前に1つ増加/1つ減少される。
1つの実施例では、画素有効範囲値計算機は、さらに、現在画素の各サブ画素サンプリング点の記憶されたカウンタ値と現在の画素ライン内の各1つ前の画素の各サブ画素サンプリング点の記憶されたカウンタ値を組み合わせて、現在の画素の画素有効範囲値を計算するように構成されている。
画素有効範囲値計算機は、さらに現在の画素のアルファ値に現在画素の計算された画素有効範囲値を乗算するように構成されている。
有利には、実施例を使用すると携帯電話、PDA、携帯コンピュータなどの限られた処理能力のデバイスでアンチエイリアスの実行を可能にしてハードウエアの実現によく適することが可能な効率的な方法によりベクトルグラフィック画像のアンチエイリアスが可能になる。
加えて、実施例は、例えば凹面、孔との自身との交差、偶−奇巻数塗りつぶしルール、ノンゼロ巻数塗りつぶしルールをサポートし、サブ画素の精度を有する数学的に正しいアンチエイリアスなどのベクトルグラフィック画像の高品質なアンチエイリアスを可能にする。
さらに他の側面で、本発明の利点は本発明を実施することを意図した最良実施例を含むいくつかの実施例、および実施形態を例示する次の詳細な説明から容易に明らかとなる。
本発明はまた他の異なった具体化も可能で、すべては本発明の精神と範囲から逸脱することなく、そのいくつかの詳細は各種観点で修正できる。
従って、図面および説明は、制限的ではなく例示的であると見なされるべきである。
本発明の実施例は、添付された図の中で例として、限定するためではなく示されており、類似の参照番号は同様の要素を指している。
図を参照して、図中で類似の参照番号は、同一または対応する部分を示しており、特に図1で実施例に従った例としての携帯端末装置100を示している。
図1で携帯端末装置100は、例えば携帯電話、PDA携帯コンピュータなどを含むことができる。
携帯端末装置100は、実施例の以下に説明する機能用に取っておかれるメモリの一部を含むエッジバッファ120を含むことができる。
エッジバッファ120がその一部であるメモリは例えば携帯端末装置100のメモリ回路、携帯端末装置100に含まれているグラフィックボード(図示せず)のメモリ回路などを含むことができ、他の機能にも使用できる。
さらに他の実施例では、エッジバッファ120は実施例の機能のみを実行するための専用メモリの一部である。
携帯端末装置100は、ベクトルグラフィック画像を第1ディメンジョンおよび第2ディメンジョンを有する画素のグループにラスタ化するように構成できるラスタライザ130を含むことができる。
ベクトルグラフィック画像は、少なくとも1つのエッジを有する少なくとも1つのプリミティブを含むことができる。
1つの実施例では、第1ディメンジョンに平行な1つのラスタ化方向にラスタ化が実行可能で、複数のサブ画素サンプリング点が各画素と関連付けられ、カウンタ値が各サブ画素サンプリング点と関連付けられている。
図2aは、1つの例として、図1のラスタライザによって画素のグループにラスタ化でき、ラスタ化の際にアンチエイリアスされ、アンチエイリアスが図1のプロセッサユニット110によって容易化されるベクトルグラフィック画像を示している。
説明を明確にするために図2aに示すベクトルグラフィック画像は、1つのプリミティブを含むだけの簡単なグラフィック画像であるが、実施例はグラフィックアートの当業者が理解できるように通常の実生活の複数のプリミティブを含むベクトルグラフィック画像に適用できる。
従って、プリミティブ210は、4個のエッジ211、212、213、214を有する簡単な多角形でその名前が意味するように、ベクトルグラフィックはベクトルに関連しているので、エッジ211、212、213、214の各々は1つのベクトルである。
そのようにしてエッジ211、212、213および214の各々は、図2aに示すように関連するベクトル方向を有する。
実施例の目的のために、エッジ211、212、213および214に関連するベクトル方向は、第1ディメンジョンまたは水平方向ディメンジョンに平行でなく、基本的に互いに反対方向の、上向きまたは第1方向グループ、下向きまたは第2方向グループの2つのメイングループに分類できる。
例えば、エッジ211および213は、下向き方向のグループに属し、エッジ212および214は、上向き方向のグループに属する。
図2aに関連する実施例によれば、多角形210は、例えば16×16画素のグループを含むラスタグラフィック画像200にラスタ化できる。
言い換えると、ラスタグラフィック画像200は、第1ディメンジョンまたは水平ディメンジョン、および第2ディメンジョンまたは垂直ディメンジョンを有する矩形を含んでいる。
従って、ラスタグラフィック画像200は、水平方向に16画素および垂直方向に16画素を含んでいる。
しかしながら、さらに他の実施例では、第1および第2ディメンジョンは等しい大きさを有する必要はない。
1つの実施例では、多角形210は16×16画素の各々を1つずつ処理することによってラスタグラフィック画像200にラスタ化できる。
例えば、最初の行画素は、左から右へ処理でき、次の行の画素は再び左から右へ処理でき、このプロセスはすべての行の画素が処理されるまで繰り返すことができる。
従って、実施例では、ラスタ化の方向は図2aに示すように水平方向に平行または左から右方向である。
グラフィックアートの同業者が理解できるように、アンチエイリアスが実行されない場合は、ラスタ化によって通常多角形210と交差するラスタグラフィック画像200がすべて黒色で描かれるであろう(例えば多角形を描く線が黒色と仮定して)。
しかしながら、アンチエイリアスでは、見かけ上スムーズな輪郭を提供するために、多角形210と交差するこれら画素は隣接する画素と同様に各種の度合いの透明度、または実際には白黒画像の場合は各種の灰色の影で描画できる。
有利には、実施例はどの画素がどの程度の透明度で描画されるべきかを決定することができ、かつそれを計算上効率的でそれによって携帯端末装置のような非常に制限された処理能力の装置上でもアンチエイリアスを実行できるように決定できる。
図2bは、実施例に従い、図2aの画素のグループの1つの画素220内のサンプリング点の分布例を示している。
1つの実施例では、図2aの画素グループの残りの画素は、サンプリング点の類似の分布を使用できる。
図2bからわかるように、画素220は16×16のサブ画素に分割されており、その中において灰色で塗りつぶされたサブ画素はサブ画素のサンプリング点を示している。
1つの実施例では、サンプリング点は図2bに示すように、例えば各水平サブ画素行当り1つのサンプリング点、各垂直サブ画素列当り1つのサンプリング点、および各対角線上のサブ画素線上で1つのサンプリング点というように一様な方法で分布されている。
従って画素220に対して全部で16個のサンプリング点が使用できる。
1つの実施例では、カウンタ値は16サンプリング点の各々に対して関連付けることができる。
各カウンタ値は、予め定められたビット長(例えば8ビットまたは1バイト)を有すればよい。
以下に説明されるように、各画素の各カウンタ値はエッジバッファ120に記憶される。
従って、1つの実施例によれば16×16画素が存在するので、各画素が16個の関連するカウンタ値を有し、各カウンタ値が1バイトの長さを有していれば、エッジバッファは16×16×16または4096バイトを記憶するようにできる。
しかしながら、さらに他の実施例によれば、グラフィックアートの当業者が理解できるように他の画素グリッドサイズ、他のサブ画素グリッドサイズ、他のサンプリング点の分布、他のカウンタのビット長などが使用できる。
実施例によれば、図1の携帯端末装置100はベクトルグラフィック画像のアンチエイリアスを容易にするように構成できるプロセッサユニット110を含むことができる。
1つの実施例では、プロセッサユニット110は携帯端末装置100の、例えば中央処理ユニット、グラフィカル処理ユニットなどのような多目的プロセッサの一部を形成できる。
さらに他の実施例では、プロセッサユニット110は少なくとも実施例の機能を実行する専用の追加のプロセッサの一部として構成できる。
プロセッサユニット110は、各画素のカウンタ値を計算するように構成できるカウンタ値計算機111を含むことができる。
1つの実施例では、カウンタ値の計算は1度に1つのエッジに対して、および画素毎にラスタ化方向に実行できる。
図2cは、本発明の実施例に従い、図2aの画素のグループの2つの連続する画素220および230に対するカウンタ値計算例を示している。
図2cに示すように、多角形210の上向きエッジ214は、画素220と交差している。ここで灰色に塗りつぶされたボックスはサブ画素サンプリング点を示し、黒色に塗りつぶされたボックスは関連するカウンタ値が上向きのエッジ241と関連付けられたサブ画素サンプリング点を示している。
1つの実施例では、現在のサブ画素サンプリング点が第1ベクトル方向を有する現在のエッジと交差した場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ増加させてカウンタ値計算を実行するようにカウンタ値計算機111を構成できる。ここで第1ベクトル方向はラスタ化方向に平行ではない。
例えば、現在の画素が図2a〜図2cの画素220であり、現在のエッジがエッジ214であり、第1ベクトル方向が上向きであり、サブ画素サンプリング点22001、22002が上向きエッジ214と交差すると仮定する。
結果として、サブ画素サンプリング点22001、および22002に関連するカウンタ値が1つ増加される。
1つの実施例では、カウンタ値は初期値ゼロに設定でき、カウンタ値が増加または減少されるときにはいつでも1つ増加または1つ減少されるように設定できる。
1つの実施例では、現在のサブ画素サンプリング点が第2ベクトル方向を有する現在のエッジと交差した場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ減少させてカウンタ値計算を実行するようにカウンタ値計算機111を構成できる。ここで第2ベクトル方向はラスタ化方向に平行ではない。
例えば、現在の画素が図2a〜図2cの画素220であり、現在のエッジがエッジ214であり、第2ベクトル方向が下向きであると仮定すると、下向きのエッジが画素220と交差していないので、画素220内のいかなるサブ画素サンプリング点に関連するカウンタ値も1つ減少されない。
1つの実施例では、現在のサブ画素サンプリング点が、ラスタ化方向で、第1ベクトル方向を有する現在のエッジの後にある場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ増加させてカウンタ値計算を実行するようにカウンタ値計算機111がさらに構成できる。
例えば、現在の画素が図2a〜図2cの画素220であり、現在のエッジがエッジ214であり、第1のベクトル方向が上向きであり、ラスタ化方向が左から右であると仮定すると、サブ画素サンプリング点22004、22005、22006、22007、22008,22009および22010に関連するカウンタ値は1つ増加される。その理由はサブ画素サンプリング点22004、22005、22006、22007、22008,22009および22010は上向きエッジ214の右側(例えばラスタ化方向で上向きエッジ214の後)に配置されているからである。
1つの実施例では、現在のサブ画素サンプリング点が、ラスタ化方向で、第2ベクトル方向を有する現在のエッジの後にある場合に、現在の画素内の現在のサブ画素サンプリング点に関連するカウンタ値を1つ減少させてカウンタ値計算を実行するようにカウンタ値計算機111がさらに構成できる。
例えば、現在の画素が図2a〜図2cの画素220であり、現在のエッジがエッジ214であり、第2ベクトル方向が下向きであり、ラスタ化方向が左から右であると仮定すると、画素220に影響する下向きのエッジがないので、画素220内のいかなるサブ画素サンプリング点に関連するカウンタ値も1つ減少されない。
1つの実施例で、現在のサブ画素サンプリング点が、ラスタ化方向で、第1のベクトル方向を有する現在のエッジの前に配置され、かつ現在のサブ画素サンプリング点およびもう1つのサブ画素サンプリング点がそれぞれの画素内で対応する位置に配置されている場合に、ラスタ化方向の現在の画素の次の画素内でもう1つ他のサブ画素サンプリング点に関連するカウンタ値を1つ増加させるようカウンタ値計算を実行するようにカウンタ値計算機111をさらに構成できる。
例えば、現在の画素が画素図2a〜図2cの220であり、現在のエッジがエッジ214であり、第1のベクトル方向が上向きであり、ラスタ化方向が左から右であると仮定すると、サブ画素サンプリング点23001、23002、23003,23004、23005および23006は1つ増加される。その理由は画素230がラスタ化方向(例えば右方向)で画素220の次の画素であり、サブ画素サンプリング点23001、23002、23003,23004、23005および23006に空間的に対応する画素220のサブ画素サンプリング点(例えば灰色のサンプリング点)は上向きのエッジ214の左側(ラスタ化方向で上向きエッジ214の前)に配置されているからである。
1つの実施例で、現在のサブ画素サンプリング点が、ラスタ化方向で、第2のベクトル方向を有する現在のエッジの前に配置され、かつ現在のサブ画素サンプリング点およびもう1つのサブ画素サンプリング点がそれぞれの画素内で対応する位置に配置されている場合に、ラスタ化方向の現在の画素の次の画素内でもう1つ他のサブ画素サンプリング点に関連するカウンタ値を1つ減少させるようカウンタ値計算を実行するようにカウンタ値計算機111をさらに構成できる。
例えば、現在の画素が図2a〜図2cの画素220であり、現在のエッジがエッジ214であり、第2ベクトル方向が下向きであり、ラスタ化方向が左から右であると仮定すると、画素220に影響する下向きのエッジがないので、画素230内のいかなるサブ画素サンプリング点に関連するカウンタ値も1つ減少されない。
上記の例は、画素220および230のカウンタ値に影響するエッジは1つだけ(例えば上向きエッジ214)を含んでいるがより複雑な実施例では単一の画素のカウンタ値に影響する複数のエッジ(例えば、上向きおよび下向きの可能性)があってもよい。
従って、1つの実施例では、1つのエッジのすべての画素およびそれらのカウンタ値への影響は次のエッジの影響の処理に移動する前に処理できる。
プロセッサユニット110は、エッジバッファ120の中に計算されたカウンタ値を記憶するように構成できるカウンタ値レコーダ112をさらに含むことができる。
プロセッサユニット110は、記憶されたカウンタ値を基にして画素有効範囲値を計算するように構成できる画素有効範囲値計算機113をさらに含むことができ、ベクトルグラフィック画像をラスタ化する際に計算された画素有効範囲値はベクトルグラフィック画像のアンチエイリアスのためのラスタライザ130によって使用できる。
1つの実施例では、画素有効範囲値計算機113はさらに、現在画素の各サブ画素サンプリング点の記憶されたカウンタ値と現在の画素ライン内の各1つ前の画素の各サブ画素サンプリング点の記憶されたカウンタ値を組み合わせて、現在の画素の画素有効範囲値を計算するように構成できる。
例えば、画素220の画素有効範囲値を計算するために、同じ水平画素行(例えば、上から7番目の行)の3つの先行する画素のサブ画素サンプリング点の記憶されたカウンタ値が画素220の記憶されたカウンタ値と組み合わされる。
しかしながら、これらの3つの先行する画素に影響するエッジがないので、3つの先行する画素のサブ画素サンプリング点の記憶されたカウンタ値はゼロである。
その結果、画素220の画素有効範囲値は、画素220のサブ画素サンプリング点の記憶されたカウンタ値の組合せである。
言い換えると、画素220の画素有効範囲値は、10/16に設定できる。その理由は画素220の16個のカウンタ値の内の10個のカウンタ値が上向きエッジ214によって1つ増加され、残りの6個のカウンタ値は初期値ゼロのままだからである。
同様に、画素230の画素有効範囲値を計算するために、同じ水平画素行の最初の3つの画素のサブ画素サンプリング点の記憶されたカウンタ値が画素220のカウンタ値と同様に画素230の記憶されたカウンタ値と組み合わされる。
従って、画素230の画素有効範囲値は、画素220および230のサブ画素サンプリング点の記憶されたカウンタ値の組合せである。
言い換えると、画素230の画素有効範囲値は16/16または10/16+6/16に設定できる。その理由は、画素230の全体で16個の内の6個のカウンタ値は上向きエッジ214によって1つ増加されており、かつ残りの10個のカウンタ値はその初期値を保持しており、そしてまた画素220のサブ画素サンプリング点の上記カウンタ値は画素230のサブ画素サンプリング点のカウンタ値と結合できるからである。
1つの実施例では、同じ画素行の画素のサブ画素サンプリング点のカウンタ値のみが上記の方法で累積され、そこにおいてはカウンタ値の累積を容易にするために、1つの補助バッファ(図示されていない)を使用することができる。
そのような1つの補助バッファは、少なくとも1つの画素のためのサブ画素サンプリング点のカウンタ値の数と同じ数の補助カウンタ値、または16の補助カウンタ値を含むことができる。
補助バッファは、現在画素の画素有効範囲値を計算する際に、画素の現在のラインの中で1つ前の画素の累積されたカウンタ値用の一時的記憶として使用できる。
初期には、補助カウンタ値はゼロに設定できる。
従って、ラスタ画像200の第7番目の行で画素220および230に関連して上記の例で続けると、画素220のサブ画素サンプリング点のカウンタ値は、エッジバッファ120に記憶でき、補助バッファ中の補助カウンタ値(初期値ゼロ)と結合でき、結果として画素220の上記の画素有効範囲値の10/16が得られる。
そのような初期補助カウンタ値と画素220のサブ画素サンプリング点のカウンタ値の結合は、次の画素230のために使用される引続く補助カウンタ値を形成できる。
従って、エッジバッファ120中に記憶された画素230のサブ画素サンプリング点のカウンタ値は、補助バッファ中の引続く補助カウンタ値と結合される。そして画素230用の画素有効範囲値の16/16が結果として得られる。
1つの実施例では、画素有効範囲値計算機113は、さらに現在の画素のアルファ値に現在画素の計算された画素有効範囲値を乗算するように構成できる。
グラフィックアートの当業者が理解できるように、1つのアルファ値は、透明度を定義するために使用される比率である。通常アルファ値100%は完全に不透明な画素を示し、アルファ値0%は完全に透明な画素を示し、その間の値のアルファ値は画素の透明度の度合いを示すようにアルファ値が定義される。
例えば、ラスタ画像200のすべての画素の初期のアルファ値が100%であると仮定すると、画素220の最終アルファ値が10/16×100%=62.5%(即ちわずかに透明)となり、画素230の最終アルファ値が16/16×100=100%(即ち完全に不透明)となる。
実施例は、実施例の処理を実行でき、例えばインターネットアクセス、任意の適切な形式(例えば音声、モデムなど)の通信、無線通信メディア、1つまたはそれ以上の無線通信ネットワーク、セル方式通信ネットワーク、G3通信ネットワーク、公衆交換電話網(PSTN)、パケットデータネットワーク(PDN)インターネット、イントラネットそれらの組合せなどを含む1つまたはそれ以上のインタフェースメカニズムで通信でき、例えば任意の適切なサーバ、ワークステーション、PC,ラップトップコンピュータ、PDA、インターネット機器、携帯端末装置、セル方式電話、無線デバイス、他のデバイスなどの任意の適切なデバイスに含むことができる。
実施例は、例としての目的だけであり、ハードウエアの当業者が理解できるように実施例を実現するために使用される多くの各種特定のハードウエアが可能であることが理解されるべきである。
例えば、実施例の1つまたはそれ以上の部品の機能は1つまたはそれ以上のハードウエアデバイスを使用して実現できる。
実施例は、ここに説明された各種プロセスに関連する情報を記憶できる。
この情報は、ハードディスク、光ディスク、磁気光ディスク、RAMなどの1つまたはそれ以上のメモリに記憶できる。
1つまたはそれ以上のデータベースは、本発明の実施例を実現するために使用される情報を記憶できる。
データベースは、ここにリストされた1つまたはそれ以上のメモリ、または記憶デバイスに含まれるデータ構造(例えばレコード、テーブル、アレイ、フィールド、グラフ、ツリー、リストなど)を使用して編成できる。
実施例に関連して説明されたプロセスは、デバイスおよび実施例のサブシステムによって1つまたはそれ以上のデータベースの中に収集され、および/または生成されたデータを記憶するために適切なデータ構造を含むことができる。
実施例のすべてまたは一部は、ハードウエアの当業者が理解できるように、特定用途向けIC(ASIC)または通常の部品回路の適切なネットワーク接続によって実現できる。
上述のように実施例の部品は、本発明の教示による計算機で読み取れ、ここで説明されたデータ構造、テーブル、レコードおよび/または他のデータを保持する媒体またはメモリを含むことができる。
計算機で読み取れる媒体は、実行のためにプロセッサへ命令を提供するために関与する任意の適切な媒体を含むことができる。
そのような媒体は、これに限られるものではないが不揮発性媒体、揮発性媒体、伝送媒体などを含むことができる。
不揮発性媒体は、例えば光または磁気ディスク、磁気光ディスクなどを含むことができる。
揮発性媒体は、ダイナミックメモリなどを含むことができる。
伝送媒体は、同軸ケーブル、銅線、光ファイバなどを含むことができる。
また、伝送媒体は、無線周波数(RF)通信、赤外(IR)データ通信などで生成される音響、光、電磁波などの形をとることができる。
計算機で読み取れる媒体の通常の形は、例えばフロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の適切な磁気媒体、CD−ROM、CDRW、DVD任意のほかの適切な光媒体、パンチカード、紙テープ、光マークシート、任意の他の適切な孔のパターンまたは他の光で認識可能な印付きの物理媒体、RAM、PROM、EPROM、フラッシュEPROM、任意の他の適切なメモリチップまたはカートリッジ、搬送波または任意の適切な計算機が読める媒体を含むことができる。
本発明は、いくつかの実施例と実施形態に関連付けて説明されたが、本発明はそれらに限られるものではなく、むしろ見込みのある請求項の範囲内にある、各種の変形および等価な組合せにわたっている。
本発明の例示的実施形態によれば、例示的な携帯端末装置を示すブロック図である。 本発明の例示的実施形態により、ラスタ化され、一群の画素にアンチエイリアス処理された1つのプリミティブを有する例示的なベクトルグラフィックス画像を示す。 本発明の例示的な実施例に従って、図2aの画素群の1つ画素のサンプリング点の例示的な分布を示す。 本発明の例示的実施形態によれば、図2aの画素群の連続的な2画素のための例示的なカウンタ値計算を示す。

Claims (10)

  1. 少なくとも1つのエッジを有し、少なくとも1つのプリミティブを含むベクトルグラフィック画像のアンチエイリアスのためのプロセッサユニットであって、
    前記ベクトルグラフィック画像は、第1ディメンジョンおよび第2ディメンジョンを有する画素のグループにラスタ化され、
    前記ラスタ化は、前記第1ディメンジョンに平行なラスタ化方向で実行され、各々の画素に関連して複数のサブ画素サンプリング点があり、サブ画素サンプリング点に関連してカウンタ値があり、
    前記プロセッサユニットは、
    各画素のカウンタ値を計算するように構成されたカウンタ値計算機と、
    前記カウンタ値計算機によるカウンタ値の計算は、前記ラスタ化方向で1度に1つのエッジで画素ごとに実行され、
    前記計算されたカウンタ値をエッジバッファに記憶するように構成されたカウンタ値レコーダと、
    前記記憶されたカウンタ値に基づいて画素有効範囲値を計算するように構成された画素有効範囲値計算機とを有し、
    前記計算された画素有効範囲値は、前記ベクトルグラフィック画像を画素の前記グループにラスタ化する際に、前記ベクトルグラフィック画像をアンチエイリアスするために使用される、ことを特徴とするプロセッサユニット。
  2. 前記カウンタ値計算機は、
    現在のサブ画素サンプリングが、第1ベクトル方向および第2ベクトル方向は、前記ラスタ化方向とは平行ではなく、それぞれ第1ベクトル方向および第2ベクトル方向の一方を有する現在のエッジと交差する場合に、現在画素内で現在のサブ画素サンプリング点と関連したカウンタ値を増加および減少の一方を行い、
    前記ラスタ化方向において、それぞれ前記第1ベクトル方向および前記第2ベクトル方向の一方を有する前記現在のエッジの後に、前記現在のサブ画素サンプリングが位置する場合に、前記現在画素内で前記現在のサブ画素サンプリングと関連した前記カウンタ値を増加および減少の一方を行い、
    前記ラスタ化方向において、前記第1ベクトル方向および前記第2ベクトル方向の一方を有する前記現在のエッジの前に、前記現在のサブ画素サンプリングが位置する場合、かつ、前記現在のサブ画素サンプリングおよび別のサブ画素サンプリングがそれぞれの画素内で対応する位置に配置されている場合に、前記ラスタ化方向の前記現在画素の次に画素内部で別のサブ画素サンプリングと関連したカウンタ値を増加および減少の一方を行うことにより、前記カウンタ値の計算を実行するように更に構成される、ことを特徴とする請求項1に記載のプロセッサユニット。
  3. 前記画素有効範囲値計算機は、現在画素の各サブ画素サンプリングの前記記憶されたカウンタ値を画素の現在の行の各先行する画素の各サブ画素サンプリングの前記記憶されたカウンタ値と組み合わせて現在画素の前記画素有効範囲値を算出するために、更に構成される、ことを特徴とする請求項1に記載のプロセッサユニット。
  4. 前記画素有効範囲値計算機は、前記現在画素の前記算出された画素有効範囲値を有する前記現在画素の文字値に乗算するために、更に構成される、ことを特徴とする請求項3に記載のプロセッサユニット。
  5. エッジバッファと、
    少なくとも1つのエッジを有する少なくとも1つのプリミティブを含むベクトルグラフィックス画像をラスタ化するように構成されるラスタライザと、
    前記ベクトルグラフィックス画像は、第1ディメンションおよび第2ディメンションを有する画素のグループにラスタ化され、前記ラスタ化は、前記第1ディメンションと平行して、ラスタ化方向において実行され、複数のサブ画素サンプリングは、各画素と関連し、かつ、カウンタ値は、各サブ画素サンプリングと関連し、
    各画素に対する前記カウンタ値を算出するように構成されるカウンタ値計算機と、
    前記カウンタ値の計算は、前記ラスタ化方向で一度に1つのエッジで画素ごとに実行され、
    前記エッジバッファの前記算出されたカウンタ値を記憶するように構成されるカウンタ値レコーダと、
    前記記憶されたカウンタ値に基づいて画素有効範囲値を算出するように構成される画素有効範囲値計算機と、
    前記算出された画素有効範囲値は、前記ベクトルグラフィックス画像をラスタ化する際に、前記ベクトルグラフィックス画像のアンチエイリアスのための前記ラスタライザによって使用される、ことを特徴とするグラフィック装置。
  6. 前記カウンタ値計算機は、
    それぞれ現在のサブ画素サンプリングが第1ベクトル方向および第2ベクトル方向の現在のエッジを有する1つと交差する場合に、現在画素内で現在のサブ画素サンプリングと関連したカウンタ値を増加および減少の一方を行い、
    前記第1ベクトル方向および第2ベクトル方向は、前記ラスタ化方向との平行ではなく、前記現在のサブ画素サンプリングが位置する場合に、前記ラスタ化方向において、それぞれ前記第1ベクトル方向および前記第2ベクトル方向の一方を有する前記現在のエッジの後に、前記現在画素内で前記現在のサブ画素サンプリングと関連した前記カウンタ値を増加および減少の一方を行い、
    前記ラスタ化方向において、それぞれ前記第1ベクトル方向および前記第2ベクトル方向の一方を有する前記現在のエッジの前に、前記現在のサブ画素サンプリングが位置する場合、かつ、前記現在のサブ画素サンプリングおよび別のサブ画素サンプリングは、それぞれの画素内で対応する位置に配置される場合、前記ラスタ化方向の前記現在画素の次に画素内部で別のサブ画素サンプリングと関連したカウンタ値を増加および減少の一方を行うことにより、前記カウンタ値の計算を実行するように更に構成される、ことを特徴とする請求項5に記載のグラフィック装置。
  7. 前記グラフィック装置は、携帯端末装置を含む、ことを特徴とする請求項5に記載のグラフィック装置。
  8. 少なくとも1つのエッジを有する少なくとも1つのプリミティブを含むベクトルグラフィックス画像のアンチエイリアスのためのプロセッサユニットであって、
    前記ベクトルグラフィックス画像は、第1ディメンションおよび第2のディメンションを有する画素のグループにラス化され、
    ラスタ化は、前記第1ディメンションと平行して、ラスタ化方向において実行され、
    複数のサブ画素サンプリングは、各画素と関連し、カウンタ値は、各サブ画素サンプリングと関連し、
    前記プロセッサユニットは、
    各画素に対する前記カウンタ値を算出するためのカウンタ値算出手段、
    前記カウンタ値の計算は、前記ラスタ化方向で一度に1つのエッジで画素ごとに実行され、
    エッジバッファ手段の前記算出されたカウンタ値を記憶するためのカウンタ値記録手段と、
    前記記憶されたカウンタ値に基づいて画素有効範囲値を算出するための画素有効範囲値算出手段とを有し、
    前記算出された画素有効範囲値は、画素の前記グループに前記ベクトルグラフィックス画像をラスタ化する際に、アンチエイリアスのために利用される前記ベクトルグラフィックス画像である、ことを特徴とするプロセッサユニット。
  9. エッジバッファ手段と、
    少なくとも1つのエッジを有する少なくとも1つのプリミティブを含むベクトルグラフィックス画像をラスタ化するためのラスタ化手段と、
    前記ベクトルグラフィックス画像は、第1ディメンションおよび第2のディメンションを有しする1つのグループの画素にラスタ化され、
    前記ラスタ化は、前記第1ディメンションと平行して、ラスタ化方向において実行され、
    複数のサブ画素サンプリングは、各画素と関連し、
    カウンタ値は、各サブ画素サンプリングと関連し、
    前記ベクトルグラフィックス画像のアンチエイリアスのためのプロセッサユニットと、
    各画素に対する前記カウンタ値を算出するためのカウンタ値算出手段と、
    前記カウンタ値の計算は、前記ラスタ化方向で一度に1つのエッジで画素ごとに実行され、
    前記エッジバッファ手段の前記算出されたカウンタ値を記憶するためのカウンタ値記録手段と、
    前記記憶されたカウンタ値に基づいて画素有効範囲値を算出するための画素有効範囲値算出手段とを有し、
    前記算出された画素有効範囲値は、前記ベクトルグラフィックス画像をラスタ化する際に、前記ベクトルグラフィックス画像の前記アンチエイリアスのための前記ラスタ化手段によって使用される、ことを特徴とするグラフィック装置。
  10. 前記グラフィック装置は、携帯端末装置を含む、ことを特徴とする請求項9に記載のグラフィック装置。
JP2008539462A 2005-11-15 2006-11-15 ベクトルグラフィック画像のアンチエイリアス Expired - Fee Related JP4982498B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/272,866 US8269788B2 (en) 2005-11-15 2005-11-15 Vector graphics anti-aliasing
US11/272,866 2005-11-15
PCT/FI2006/000375 WO2007057506A1 (en) 2005-11-15 2006-11-15 Vector graphics anti-aliasing

Publications (2)

Publication Number Publication Date
JP2009516250A true JP2009516250A (ja) 2009-04-16
JP4982498B2 JP4982498B2 (ja) 2012-07-25

Family

ID=38040315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008539462A Expired - Fee Related JP4982498B2 (ja) 2005-11-15 2006-11-15 ベクトルグラフィック画像のアンチエイリアス

Country Status (5)

Country Link
US (1) US8269788B2 (ja)
EP (1) EP1958162B1 (ja)
JP (1) JP4982498B2 (ja)
CN (1) CN101356548B (ja)
WO (1) WO2007057506A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010250831A (ja) * 2009-04-17 2010-11-04 Arm Ltd グラフィックス処理パイプライン内での画素値の生成および分解

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4766657B2 (ja) * 2005-05-02 2011-09-07 キヤノン株式会社 画像処理装置及びその制御方法、プログラム
KR100803947B1 (ko) * 2006-12-01 2008-02-15 주식회사 코아로직 오픈 벡터그래픽 응용 프로그램 인터페이스 변환 장치와방법, 모바일 단말기, 및 그 방법이 기록된 기록매체
US20090033671A1 (en) * 2007-08-02 2009-02-05 Ati Technologies Ulc Multi-sample rendering of 2d vector images
WO2010046792A1 (en) * 2008-10-21 2010-04-29 Nxp B.V. Method of edge anti-aliasing a graphics geometry and a vectorgraphics processor for executing the same
CN101923699B (zh) * 2009-06-10 2012-09-26 炬力集成电路设计有限公司 一种降低在矢量图形填充过程中对cpu耗费的方法及装置
US20110285718A1 (en) 2010-05-21 2011-11-24 Kilgard Mark J Point containment for quadratic bèzier strokes
KR102426667B1 (ko) 2015-06-23 2022-07-28 삼성전자주식회사 경로 렌더링에서 에일리어싱을 방지하는 방법 및 장치.
CN108701235B (zh) 2016-01-18 2022-04-12 超威半导体公司 在计算系统中执行抗混叠操作
US11113790B2 (en) 2018-04-12 2021-09-07 Nvidia Corporation Adding greater realism to a computer-generated image by smoothing jagged edges
CN109636751B (zh) * 2018-12-07 2020-11-27 厦门天马微电子有限公司 一种异形显示面板的边缘处理方法、显示面板及显示装置
US11076151B2 (en) 2019-09-30 2021-07-27 Ati Technologies Ulc Hierarchical histogram calculation with application to palette table derivation
US11631215B2 (en) * 2020-03-11 2023-04-18 Qualcomm Incorporated Methods and apparatus for edge compression anti-aliasing
US11915337B2 (en) 2020-03-13 2024-02-27 Advanced Micro Devices, Inc. Single pass downsampler

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002056395A (ja) * 2000-08-07 2002-02-20 Matsushita Electric Ind Co Ltd 図形描画装置
JP2003271987A (ja) * 1997-07-02 2003-09-26 Hewlett Packard Co <Hp> プリミティブにより覆われるピクセルの割合を求める方法
WO2004086307A1 (en) * 2003-03-25 2004-10-07 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for antialiasing a region of a two-dimensional distance field representing an object

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4554538A (en) * 1983-05-25 1985-11-19 Westinghouse Electric Corp. Multi-level raster scan display system
US4808988A (en) * 1984-04-13 1989-02-28 Megatek Corporation Digital vector generator for a graphic display system
US4908780A (en) * 1988-10-14 1990-03-13 Sun Microsystems, Inc. Anti-aliasing raster operations utilizing sub-pixel crossing information to control pixel shading
US5303321A (en) * 1990-09-14 1994-04-12 Hughes Aircraft Company Integrated hardware generator for area fill, conics and vectors in a graphics rendering processor
US5748178A (en) 1995-07-18 1998-05-05 Sybase, Inc. Digital video system and methods for efficient rendering of superimposed vector graphics
US6331856B1 (en) 1995-11-22 2001-12-18 Nintendo Co., Ltd. Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing
US5815162A (en) * 1996-04-19 1998-09-29 Silicon Graphics, Inc. System and method of drawing anti-aliased lines using a modified bresenham line-drawing algorithm
JP3639108B2 (ja) * 1998-03-31 2005-04-20 株式会社ソニー・コンピュータエンタテインメント 描画装置および描画方法、並びに提供媒体
US6501483B1 (en) * 1998-05-29 2002-12-31 Ati Technologies, Inc. Method and apparatus for antialiasing using a non-uniform pixel sampling pattern
US7064771B1 (en) * 1999-04-28 2006-06-20 Compaq Information Technologies Group, L.P. Method and apparatus for compositing colors of images using pixel fragments with Z and Z gradient parameters
JP4332934B2 (ja) * 1999-06-17 2009-09-16 株式会社セガ アンチエイリアシング方法及びこれを用いた画像処理装置
EP1504417A2 (en) * 2002-05-10 2005-02-09 NEC Electronics Corporation Graphics engine converting individual commands to spatial image information, and electrical device and memory incorporating the graphics engine
AU2003278789A1 (en) 2002-06-20 2004-01-06 Alberto Baroncelli Vector graphics circuit accelerator for display systems
US7006110B2 (en) * 2003-04-15 2006-02-28 Nokia Corporation Determining a coverage mask for a pixel
EP1480171B1 (en) * 2003-05-22 2016-11-02 Telefonaktiebolaget LM Ericsson (publ) Method and system for supersampling rasterization of image data
AU2003903448A0 (en) * 2003-06-26 2003-07-17 Canon Kabushiki Kaisha A method for tracking depths in a scanline based raster image processor
US7280120B2 (en) * 2003-06-26 2007-10-09 Canon Kabushiki Kaisha Compositing with a sub-pixel mask in graphic object rendering
US6967663B1 (en) * 2003-09-08 2005-11-22 Nvidia Corporation Antialiasing using hybrid supersampling-multisampling
JP2005100177A (ja) * 2003-09-25 2005-04-14 Sony Corp 画像処理装置およびその方法
WO2006129943A1 (en) 2005-06-03 2006-12-07 Polidigm Co., Ltd. Fast anti-aliasing method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271987A (ja) * 1997-07-02 2003-09-26 Hewlett Packard Co <Hp> プリミティブにより覆われるピクセルの割合を求める方法
JP2002056395A (ja) * 2000-08-07 2002-02-20 Matsushita Electric Ind Co Ltd 図形描画装置
WO2004086307A1 (en) * 2003-03-25 2004-10-07 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for antialiasing a region of a two-dimensional distance field representing an object

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010250831A (ja) * 2009-04-17 2010-11-04 Arm Ltd グラフィックス処理パイプライン内での画素値の生成および分解

Also Published As

Publication number Publication date
EP1958162B1 (en) 2019-05-08
US20070109318A1 (en) 2007-05-17
EP1958162A1 (en) 2008-08-20
CN101356548A (zh) 2009-01-28
EP1958162A4 (en) 2012-06-20
WO2007057506A1 (en) 2007-05-24
JP4982498B2 (ja) 2012-07-25
CN101356548B (zh) 2012-03-21
US8269788B2 (en) 2012-09-18

Similar Documents

Publication Publication Date Title
JP4982498B2 (ja) ベクトルグラフィック画像のアンチエイリアス
US10102663B2 (en) Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location
US8111264B2 (en) Method of and system for non-uniform image enhancement
US8290300B2 (en) Seam-based reduction and expansion of images with color-weighted priority
US8160398B1 (en) Independent resizing of multiple image regions
US8280191B1 (en) Banded seam carving of images with pyramidal retargeting
US8704830B2 (en) System and method for path rendering with multiple stencil samples per color sample
US11348308B2 (en) Hybrid frustum traced shadows systems and methods
US8520007B2 (en) Graphic drawing device and graphic drawing method
US8218900B1 (en) Non-linear image scaling with seam energy
JP2006106705A (ja) アウトラインフォントのレンダリング
US7038678B2 (en) Dependent texture shadow antialiasing
US8270765B1 (en) Hybrid seam carving and scaling of images with configurable energy threshold
JP2019121381A (ja) グラフィックプロセッサ、及びその動作方法
US7027047B2 (en) 3D graphics rendering engine for processing an invisible fragment and a method therefor
US8280186B1 (en) Seam-based reduction and expansion of images with table-based priority
US11087511B1 (en) Automated vectorization of a raster image using a gradient mesh with arbitrary topology
US8280187B1 (en) Seam carving and expansion of images with color frequency priority
US8265424B1 (en) Variable seam replication in images with energy-weighted priority
CN111724313B (zh) 一种阴影贴图生成方法与装置
US8270766B1 (en) Hybrid seam carving and scaling of images with configurable carving tolerance
Alvin Rendering Resolution Independent Fonts in Games and 3D-Applications
AU2014277651A1 (en) Generating and rendering an anti-aliased page representation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091109

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20101112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110816

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111109

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111116

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20111125

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20111128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120216

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

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

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

Free format text: PAYMENT UNTIL: 20150427

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4982498

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

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