JP3626709B2 - アンチエイリアス処理装置 - Google Patents
アンチエイリアス処理装置 Download PDFInfo
- Publication number
- JP3626709B2 JP3626709B2 JP2001210931A JP2001210931A JP3626709B2 JP 3626709 B2 JP3626709 B2 JP 3626709B2 JP 2001210931 A JP2001210931 A JP 2001210931A JP 2001210931 A JP2001210931 A JP 2001210931A JP 3626709 B2 JP3626709 B2 JP 3626709B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel data
- pixel
- data
- memory
- mask
- 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
Images
Landscapes
- Image Processing (AREA)
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、3次元ディジタル画像をディスプレイ等の表示装置において表示する際に生じるジャギーが目立たないようにするアンチエイリアス処理装置に関する。特に本発明は、図形を描画する順番に関係なく3次元グラフィックスにおけるアンチエイリアス処理を行えるアンチエイリアス処理装置に関する。
【0002】
【従来の技術】
ディジタル画像で斜めの線を表現すると、ジャギーと呼ばれる階段状のギザギザが発生してしまう。例えば、図12の(a)に示すような斜めの線をディジタル画像としてディスプレイ等で表示させると、実際に表示される線は(b)のようにギザギザになってしまう。ジャギーは、ディジタル画像がピクセル(画素)の集まりで構成されていることが原因で発生する。
また、ディジタル画像を重ね合わせると、重ね合わせた境界部分にジャギーと同様のギザギザが発生して境界が不自然になってしまうことがある。
【0003】
従来、これらのギザギザを目立たなくさせるためにアンチエイリアス処理(アンチエイリアシング)という手法が用いられている。
アンチエイリアス処理の手法としては、解像度を上げることで実質的にジャギーを見えにくくする方法と、ジャギーの発生している画素の周囲をぼかすことで境界部分を目立たなくさせる方法とがある。
解像度を上げてジャギーを見えにくくする方法は、表示手段をより解像度の高い装置に取り替えなければならないため、既存のディスプレイ等を利用することはできない。よって、既存の装置を利用する場合は、後者の方法を適用する必要がある。
【0004】
ジャギーが発生している画素の周囲をぼかす方法として、画素領域内の各図形の占有率に基づいてアンチエイリアス処理を行う手法がある。占有率とは、画素の全面積のうち図形が描画される割合を示す値であり、換言すると、図形の描画領域が当該画素に対して占める割合を示す値である。
図13を用いて、占有率を算出する方法の例を示す。図形7を描画する場合、画素8内部には、図形7が描画される領域(占有領域9)とされない領域とが存在する。画素8の面積をS、専有領域9の面積をsとすると、画素8における図形7の占有率αは、
α=(s/S)×100(%)
で表される。
【0005】
図14を用いて、(a)に示す画像をディスプレイに表示させる場合のアンチエイリアス処理について説明する。この画像は、白地の背景に黒色の図形を描画して得られる画像である。なお、ここでは説明を簡略化するためグレイスケール階調画像において、白と黒との2色を混合することによりアンチエイリアス処理を実行する場合を考える。
(b)に、図形と背景との境界部分を拡大して示す。この画像は、図形と背景との境界線が画素に対して斜め方向であるため、図に示すように境界部に占有率が異なる画素が混在する(この例では占有率25%の画素と、75%の画素とが混在する)。
(c)に、アンチエイリアス処理を実行しない場合にディスプレイに表示される画像を示す。また、この画像の図形と背景との境界部分を(d)に拡大して示す。この画像は、占有率50%を閾値として、占有率が閾値以上である画素は黒色、閾値未満の画素は白色として各画素の出力を決定している。このようにアンチエイリアス処理を行わない場合には、ジャギーが発生して境界部が階段状になってしまう。
(e)は、アンチエイリアス処理を実行する場合にディスプレイに表示される画像を示す。各画素での図形の占有率に基づいて、占有率が大きい画素ほど黒に近い階調値のグレイを表示させることでアンチエイリアス処理を実行している。この例では(f)に示すように、画素内で図形が占める面積と背景が占める面積との割合(占有面積比)に基づいて黒色と白色とを混合して得られた階調値のグレーをその画素におけるグレーの階調値としている。
【0006】
このように、アンチエイリアス処理では、図形と背景との境界上にある各画素の出力を、図形の色値(色)と背景の色値とを占有面積比(α:1−α)に基づいて混合して得られた色値とする。
すなわち、アンチエイリアス処理された画像では、境界部の画素に、図形あるいは背景と同一の色ではなく、これらの色を占有率に基づいた割合で混合して得られる中間の色を表示させることで、境界部分が目立たなくなるようにしている。
なお、カラー画像の場合は上記同様の処理を、R値、G値、B値のそれぞれについて行うことによりアンチエイリアス処理を実行できる。
【0007】
3次元グラフィックスは、画面に対して奥行き方向にも座標(Z座標)が存在するため、この方向に複数の画像が重なり合うことがある。このため、3次元グラフィックスにおけるアンチエイリアス処理として下記の(1)や(2)のような手法が用いられている。
【0008】
(1)の手法は、視点位置をZ座標の基準とし、奥側となる図形から順次描画するか、あるいは、描画した図形をZ座標成分に基づいてソートするかした後、一番奥側となる図形の画素データから順番にアンチエイリアス処理を行う手法である。すなわちこの手法は、図13に示した2次元画像でのアンチエイリアス処理と同様の処理を繰り返し実行する手法である。
例えば、最初に一番奥側の図形を描画する。この図形の画素データと背景とでアンチエイリアス処理を行い、これにより得られた色値を新たに背景の色値とみなす。次に、奥から2番目となる図形を描画して、この図形の画素データと先のアンチエイリアス処理によって得られた新たな背景の色値とでアンチエイリアス処理を行う。同様な処理を、全ての図形を描画するまで繰り返し実行する。
このようにアンチエイリアス処理によって得られた色値を、次回のアンチエイリアス処理の際に背景の色値とみなすことで、2次元グラフィックスと同様にアンチエイリアス処理を実行できる。
【0009】
(2)の手法は、サブピクセル(副画素)を単位として各図形の描画・非描画を判断することで、表示装置の解像度を上げた場合と同様の効果を擬似的に得ようとするものである。
つまりこの手法は、画素を仮想的に更に細かいサブピクセルに分割し、全ての図形についてサブピクセル単位で描画・非描画を判断することにより、仮想的に解像度を向上させる。そして、全ての図形を描画した後に、各画素毎に当該画素にかかる各サブピクセルの色値を混合し、これによって得られた色値をこの画素の色値とする手法である。サブピクセルの色値の混合は、上述した画素の色値の混合と同様にして行える。
【0010】
【発明が解決しようとする課題】
しかしながら、上記(1)の手法は、奥側となる図形から順番にアンチエイリアス処理を実行しないと、表示装置に表示される画像の色が変化してしまうため、奥側となる図形から順次描画するか、あるいは、描画した図形を奥行き方向の座標成分に基づいてソートする必要がある。
しかし、奥側となる図形から順番に描画する場合は、図形を描画する順番を考慮しなければならないし、描画した図形をソートする場合は、全図形の画素データをメモリに格納しておく必要があるため、大量のメモリが必要となる。
一方、上記(2)の手法は、1つの画素を副画素に分割して図形を描画するため、大量のメモリが必要となる。例えば、1つの画素を4×4に分割したサブピクセルを単位としてアンチエイリアス処理を実行する場合は、画素単位でアンチエイリアス処理を実行する場合と比べて、16倍のメモリが必要になっていた。
【0011】
本発明は、かかる問題に鑑みてなされたものであり、アンチエイリアス処理を実行する際に大量のメモリを必要としないアンチエイリアス処理装置を提供することを目的とする。
更には、図形を描画する順番に関係なくアンチエイリアス処理を実行できるアンチエイリアス装置を提供することを目的とする。
【0012】
【課題を解決するための手段】
上記問題を解決するため請求項1記載のアンチエイリアス処理装置は、頂点の座標を基にして各図形を描画する際に生成した画素データを各画素毎に所定の数格納するメモリを有し、前記メモリに色値、奥行きデータ及びマスク情報を格納し、格納された画素データに基づき、3次元グラフィックスにおけるアンチエイリアス処理を行うアンチエイリアス処理装置であって、前記生成した画素データに、前記図形の描画領域が当該画素に対して占める形状を示す画素マスクを設定し、描画する図形の数が前記所定の数を超える画素では、前記生成した画素データおよびメモリに格納済みの画素データそれぞれの、前記画素マスクと前記奥行きデータとに基づいて、前記生成した画素データが有効であるか否かを判定し、有効と判定した画素データのみを前記メモリに格納し、前記メモリに格納した各画素データそれぞれの、前記奥行きデータと前記画素マスクとを用いて、アンチエイリアス処理を行うことを特徴とする。
【0013】
請求項2記載の発明は請求項1記載のアンチエイリアス処理装置であって、生成した画素データおよび前記格納済み画素データをそれぞれの前記奥行きデータに基づいてソートしたときに、前記生成した画素データがユーザの視点側から見て一番手前となる描画領域を有する場合は、前記生成した画素データを有効と判定することを特徴とする。
【0014】
請求項3のアンチエイリアス処理装置は、頂点の座標を基にして各図形を描画する際に生成した画素データを、各画素毎に所定の数格納するメモリを有し、前記メモリに色値、奥行きデータ、マスク情報を格納し、格納された画素データに基づき、3次元グラフィックスにおけるアンチエイリアス処理を行うアンチエイリアス処理装置であって、前記生成した画素データに、前記図形の描画領域が当該画素に対して占める形状を示すマスクを設定し、描画する図形の数が前記所定の数を超える画素においては、前記生成した画素データ及びメモリに格納済みの画素データそれぞれの、前記画素マスクと前記奥行きデータとに基づいて、前記生成した画素データが有効であるか否かを判定し、有効と判定した画素データのみを前記メモリへ格納し、生成した画素データを前記メモリに格納する際に、格納済み画素データが前記所定の数に達している場合は、前記生成した画素データおよび前記格納済み画素データのそれぞれに、各々の奥行きデータ及びマスク情報に基づいた優先順位を設定し、優先順位が低い画素データから順に、前記画素データを選出し、選出した画素データ同士を前記画素マスクと前記優先順位とに基づいて統合することにより、前記メモリに格納する画素データの数を前記所定の数以下に削減し、前記メモリに格納している各画素データそれぞれの、前記奥行きデータと前記画素マスクとを用いて、前記アンチエイリアス処理を行うことを特徴とする。
【0015】
請求項4の発明は請求項3記載のアンチエイリアス処理装置であって、生成した画素データおよび前記格納済み画素データを、それぞれの前記奥行きデータに基づいてソートしたときに、前記生成した画素データがユーザの視点側から見て一番手前となる描画領域を有する場合は、前記生成した画素データを有効と判定することを特徴とする。
【0016】
請求項5の発明は請求項3または4記載のアンチエイリアス処理装置であって、優先順位が最低の画素データと、該画素データより前記優先順位が1つ上位の画素データとを統合することを特徴とする。
【0017】
【発明の実施の形態】
本発明によるアンチエイリアス処理装置は、同一画素に所定の数を超える図形が描画される場合に、画素データを取捨選択してメモリに格納することにより、アンチエイリアス処理を実行する際に必要となるメモリ量を低減する。
また、画素データの取捨選択を各画素データの奥行き方向座標成分に基づいて行うことにより、図形を描画する順番に関係なくアンチエイリアス処理を実行できる。
このようなアンチエイリアス処理装置の実施形態を、図面を用いて以下に説明する。
【0018】
〔第1の実施形態〕
図1に、第1の実施形態によるアンチエイリアス処理装置の構成を示す。このアンチエイリアス装置は、画素データ生成部1、描画制御部2、画素保存用メモリ3、画素データ統合部4、表示用メモリ5、RAMDAC6、CPU200、および図形データメモリ210を有する。
【0019】
画素データ生成部1は、CPU200からの描画指令に基づいて、図形データメモリ210に格納されている各図形の頂点座標データに応じた図形をそれぞれ描画することにより、各図形の画素データを画素毎に生成する。
画素データ生成部1は、座標発生部11、色値発生部12、画素占有率発生部13を有する。座標発生部11は、CPU200からの描画指令に基づいて、描画対象図形の3次元座標位置を示す情報(X,Y,Zの各座標成分)を生成する。色値発生部12は、CPU200からの描画指令に基づいて描画対象となる画素の色値を生成する。画素占有率発生部13は、各画素毎に描画対象図形の占有率を算出する。CPU200は、画素データ生成部1に図形の描画を命令する。図形データメモリ210は、各図形の図形データ(頂点座標、色等)を格納する。
【0020】
描画制御部2は、画素データ生成部1が生成した画素データを画素保存用メモリ3に格納する際に、各画素毎に奥行きデータ(Z座標成分)および占有率に基づいた書き込み制御を行う(すなわち、画素データを取捨選択する)。なお、この制御については、後に詳細に述べる。
画素保存用メモリ3は、同一画素に描画された複数の図形の画素データ(X、Y座標成分が同一の画素データ)を、各画素毎に所定の数(複数)を格納する。本実施形態では、画素保存用メモリ3は、各画素毎に2つまでの画素データを格納できる。画素データ統合部4は、画素保存用メモリ3に格納されている同一画素に係る各画素データの色値を、それぞれの画素データの占有率およびZ座標成分に基づいて混合する。表示用メモリ5は表示装置(ディスプレイ)に表示する画像データを格納する。RAMDAC6は、表示用メモリ5が格納する画像データをディジタルRGB信号からをアナログRGB信号に変換して表示装置に出力する。
【0021】
次に、本実施形態によるアンチエイリアス処理装置が図2に示す画像をディスプレイに表示する場合の動作例ついて、画素103に着目して説明する。
画素103には、図形100(色値=C0、Z値=Z0、占有率100%)、図形101(色値=C1、Z値=Z1、占有率50%)、および図形102(色値=C2、Z値=Z2、占有率=50%)の3つの図形が描画される。なお、色値およびZ値は、画素データの色とZ座標成分とをそれぞれ数値化して示した値である。
図形を描画する順番は、図形100、図形101、図形102とする。また、各図形の奥行き方向の並びは、視点側(手前側)から順に図形101、図形102、図形100とする(Z0<Z2<Z1)。
【0022】
図3に、本実施形態によるアンチエイリアス処理装置のアンチエイリアス処理動作の流れを示す。
画素データ生成部1は、図形データメモリ210に格納されている図形データに基づいて図形100を描画し、画素データを生成する(ステップS101)。描画制御部2は、画素保存用メモリ3に空きが有るか否かをチェックする(ステップS102)。この時点では、画素103に関する画素データは、画素保存用メモリ3に格納されていないので(ステップS102/Yes)、描画制御部2は、図形100の画素データを画素保存用メモリ3に格納する(ステップS103)。この後、図形101および図形102を描画するので(ステップS104/No)、ステップS101に戻る。
【0023】
画素データ生成部1は、図形データメモリ210に格納されている図形データに基づいて図形101を描画し、画素データを生成する(ステップS101)。描画制御部2は、画素保存用メモリ3に空きが有るか否かをチェックする(ステップS102)。この時点では、画素保存用メモリ3には画素103に関する画素データは1つしか格納されていないので(ステップS102/Yes)、描画制御部2は、図形101の画素データを画素保存用メモリ3に格納する(ステップS103)。この後、さらに図形102を描画するので(ステップS104/No)、ステップS101に戻る。
【0024】
画素データ生成部1は、図形データメモリ210に格納されている図形データに基づいて図形102を描画し、画素データを生成する(ステップS101)。描画制御部2は、画素保存用メモリ3に空きがあるか否かをチェックする(ステップS102)。この時点で、画素保存用メモリ3にはすでに画素103に関する画素データが2つ分格納されており(ステップS102/No)、画素103に関する画素データを新たに格納することはできないため、ステップS108に進む。
【0025】
描画制御部2は、各図形の画素データのZ座標成分に基づいて、手前側ほど(視点側に近いほど)高い優先順位を各画素データにそれぞれ設定する(ステップS108)。描画制御部2は、優先順位が一番低い図形100の画素データを破棄する(ステップS109)。これにより、画素保存用メモリ3に空きが生じるため、描画制御部2は、図形102の画素データを画素保存用メモリに格納する(ステップS103)。
【0026】
画素データ生成部1が全ての図形の描画を終了したため(ステップS104/Yes)、画素データ統合部4は、画素保存用メモリ3に格納されている図形101および図形102の画素データの色値を混合する(ステップS105)。この例では、画素保存用メモリ3に格納されている図形101、および図形102の占有率とZ座標成分とに基づいて各画素データの色値を混合する。画素103では、図形101が図形102よりも手前に描画されているが(Z2<Z1)、図形101の占有率は50%であるため、画素103の残りの50%の領域は図形102の描画領域が占めている。よって、画素データ統合部4は、図形101の色値と図形102の色値とを占有面積比(1:1)に従って混合する。
【0027】
画素データ統合部4は、混合した画素データの色値を表示用メモリ5に出力する(ステップS106)。RAMDAC6は、表示用メモリ5の画像データをディスプレイに出力する(ステップS107)。
各画素毎に、上記同様の手順で出力する色値を決定することにより、アンチエイリアス処理を行った画像をディスプレイに表示できる。
【0028】
なお、本実施形態では、描画制御部2が、優先順位が一番低い図形100の画素データを破棄するものとして書き込み制御を行ったが、本発明はこれに限定されることはない。例えば、画素データ統合部4が、優先順位が最下位の図形100の画素データと、第2位の図形102の画素データとを以下に示す手法で統合するようにしてもよい。
画素データの統合とは、複数の画素データを基に1つの画素データを新たに生成することを示す。例を挙げると、統合後の画素データの色値は、統合する各画素データの色値を上記の方法で混合したものとし、Z値は、統合する各データのZ値のうち、一番手前となる値を適用するとよい。
【0029】
また、破棄あるいは統合する画素データの選択方法は、上記の優先順位に基づいて選択する方法に限定されるものではなく、奥行き方向の座標成分に基づいて手前側の画素データを優先して残すようにすればどのような方法でもよい。
【0030】
〔第2の実施形態〕
次に本発明を適用したアンチエイリアス処理装置の第2の実施形態について図面を用いて説明する。
図4に、本実施形態によるアンチエイリアス処理装置の構成を示す。このアンチエイリアス装置は、第1の実施形態によるアンチエイリアス装置の画素占有率発生部13を、画素マスク発生部301で置き換えたものである。
また、このアンチエイリアス処理装置において、描画制御部2は、書き込み制御に加えて、生成した画素データが有効であるか否かの判定を行う。画素保存用メモリ3は、1つの画素について2つ分までの画素データを格納できる。画素データ統合部4は、画素データのZ座標成分および画素マスクを各マスクビット毎に判断して画素データの色値の混合および画素データの統合を行う。画素マスク発生部301は、図形の描画領域が画素に対して占める形状を示す。
【0031】
図5に、画素マスク発生部301が生成する画素マスクの例を示す。画素マスク発生部301は、画素8にこの画素の領域を4×4に分割した画素マスク302を発生させている。マスク発生部301は、各領域毎に図形の占有する面積が閾値以上であるか否かを判断し、描画(1)・非描画(0)の情報をマスクビットとして生成する。例えば、分割された各領域毎に、図形が描画される面積がその領域の面積の50%以上の場合は描画(1)、50%未満の場合は非描画(0)とする。すなわち画素マスクは、図形の描画領域が当該画素に対して占める形状を示す。
【0032】
描画制御部2は、画素データが有効であるか否かをZ座標成分および画素マスクに基づいて判断し、有効である場合は画素保存用メモリ3に格納する。なお、本実施形態では、有効と判定する条件を、判定対象である画素データのマスクビットを画素保存用メモリ3に格納されている全画素データのマスクビットと比較したときに、判定対象の画素データに一番手前となる描画領域が1つでも含まれる場合とする。
【0033】
図6に、本実施形態による描画制御部2が画素データを有効と判断する場合としない場合との例を示す。
(a)ではマスクビット500のハッチングで示した部分は、マスクビット501およびマスクビット502の対応する部分がともに非描画(0)であるため、一番手前の描画領域(視点側に最も近い描画領域)となる。描画制御部2はこのような画素データを有効と判断する。
一方、(b)では、マスクビット500の描画領域は、マスクビット503とマスクビット504との少なくともいずれか一方の描画領域と一致するため、マスクビット500には一番手前となる描画領域は存在しない。描画制御部2は、このような、他の画素データの裏側に隠れてしまう画素データを有効でないと判断する。
【0034】
画素データの統合方法を図7を用いて、画素データ統合部4が、画素データA(色値=Ca)、画素データB(色値=Cb)、および画素データC(色値=Cc)を統合する場合を例に説明する。(a)に示すように、それぞれの画素データの優先順位は、画素データAが最上位、画素データBが中位、画素データCが最下位とする。
(b)に示すように、統合後の画素データのマスクビットの形状は、統合前の各マスクビットのいずれか1つでも描画を示す領域については描画領域となるようにする。
また、各画素データを優先順位に基づいて重ね合わせた場合に一番手前に描画される画素データをマスクの各領域毎に(c)に示す。16分割された画素内の領域のうち画素データAが一番手前に描画される領域は4ブロック、画素データBが一番手前に描画される領域は4ブロック、画素データCが一番手前に描画される領域は5ブロック、描画されない領域が3ブロックとなる。
画素データ統合部4は、このブロック数の比率に基づいて各画素データの色値をCa:Cb:Cc=4:4:5の割合で混合して統合後のデータの色値とする。統合後のZ値は、優先順位が一番高い画素データAのZ値を適用する。
このようにして、3つの画素データを統合することにより、画素データの数を削減できる。なお、この例では3つの画素データを統合する場合を例としたが、2つの画素データを統合する場合や4つ以上の画素データを統合する場合も同様である。
【0035】
本実施形態によるアンチエイリアス処理装置が、図8に示す画像をディスプレイに表示する場合の動作例について、画素104に着目して説明する。図形を描画する順番は図形100(色値=C0、Z値=Z0)、図形101(色値=C1、Z値=Z1)、図形102(色値=C2、Z値=Z2)、図形109(色値=C9、Z値=Z9)とする。なお、色値およびZ値は、画素データの色とZ座標成分とをそれぞれ数値化して示した値である。また、各図形の奥行き方向の並びは手前側(視点側)から順に、図形101、図形109、図形102、図形100とする(Z0<Z2<Z9<Z1)。
【0036】
図9に、本実施形態によるアンチエイリアス処理装置のアンチエイリアス処理の流れを示す。
画素データ生成部1は、図形データメモリ210に格納されている図形データに基づいて、最初に描画する図形100の画素データを生成する(ステップS201)。画素マスク発生部301がこのとき画素104に対して生成する画素マスクのマスクビットは図10(a)に示すようになる。
【0037】
描画制御部2は、画素データ生成部1が生成した画素データが有効であるか否かを判定する(ステップS202)。この時点で、画素保存用メモリ3には画素104に関する画素データは格納されていないため、描画制御部2はこのデータを有効と判定する(ステップS202/Yes)。データが有効であるので、描画制御部2は、この画素データを画素保存用メモリ3に格納する(ステップS203/Yes、S204)。この後、まだ他の図形を描画するので(ステップS205/No)、ステップS201に戻る。
【0038】
次に画素データ生成部1は、図形データメモリ210に格納されている図形データに基づいて、2番目に描画する図形101の画素データを生成する(ステップS201)。画素マスク発生部301がこのとき画素104に対して生成する画素マスクのマスクビットは図10(b)のようになる。
【0039】
描画制御部2は、図形101の画素データが有効であるか否かを判定する(ステップS202)。このとき描画制御部2は、画素保存用メモリ3に格納されている図形100の画素データのZ値と図形101の画素データのZ値とを比較する。Z座標成分の関係は、Z0<Z1であるので図形101の画素データを有効と判定する(ステップS202/Yes)。この時点では、画素保存用メモリ3には図形100の画素データしか格納されていないため(ステップS203/Yes)、描画制御部2は画素保存用メモリ3に図形101の画素データを格納する(ステップS204)。この後、まだ他の図形を描画するので(ステップS205/No)、ステップS201に戻る。
【0040】
次に画素データ生成部1は、図形データメモリ210に格納されている図形データに基づいて、3番目に描画する図形102の画素データを生成する(ステップS201)。画素マスク発生部301がこのとき画素104に対して生成する画素マスクのマスクビットは図10(c)のようになる。
【0041】
描画制御部2は、図形102の画素データが有効であるか否かを判定する(ステップS202)。このとき描画制御部2は、画素保存用メモリ3に格納されている図形100および図形101の画素データのZ座標成分と、図形102の画素データのZ座標成分とを比較する。これらの画素データのZ値の関係はZ0<Z2<Z1であるので、さらに描画制御部2は、図形101画素データのマスクビットと図形102の画素データのマスクビットとを比較する。図形102の画素データのマスクビットには一番手前となる描画領域が存在するため、描画制御部2は図形102の画素データを有効と判定する(ステップS202/Yes)。
【0042】
この時点で、すでに図形100および図形101の2つ分の画素データが、画素保存用メモリ3に格納されている。よって、画素保存用メモリ3は、画素104に関する画素データをこれ以上格納できない(ステップS203/No)。このため、画素データ統合部4は、図形100、図形101、図形102の各画素データのZ座標成分を比較して、手前側ほど(視点側に近い側ほど)優先順位が高いものとして順位を設定する(ステップS209)。この条件では、図形100の画素データの順位が最下位となり、図形102の画素データの順位が下から2番目となるので、画素データ統合部4はこれらの画素データを統合する(ステップS210)。統合後の画素データの色値をCnとする。Z値は、統合前の各画素データのZ値のうち優先順位が高いZ2とする。統合後のマスクビットを図10(d)に示す。
描画制御部2は、統合によって画素保存用メモリ3に空きが生じたため、ここに統合後の画素データを格納する(ステップS204)。
この後、まだ他の図形を描画するので(ステップS205/No)、ステップS201に戻る。
【0043】
画素データ生成部1は、図形データメモリ210に格納されている図形データに基づいて、最後に描画する図形109の画素データを生成する(ステップS201)。画素マスク発生部301がこのとき画素104に対して生成する画素マスクのマスクビットは図10(e)のようになる。
【0044】
描画制御部2は、画素データ生成部1が生成した画素データが有効であるか否かを判定する(ステップS202)。このとき描画制御部2は、画素保存用メモリ3に格納されている各画素データのZ座標成分と図形109の画素データのZ座標成分とを比較する。これらの画素データのZ値の関係はZ2<Z9<Z1であるので、さらに描画制御部2は図形101の画素データのマスクビットと図形109の画素データのマスクビットとを比較する。図形109の画素データの描画領域はすべて図形101の画素データの描画領域の裏側となり一番手前となる描画領域は存在しない。よって、描画制御部2は図形109の画素データを有効ではないと判定し(ステップS202/No)、画素保存用メモリ3に格納せずに放棄する(ステップS211)。
【0045】
全ての図形の描画し終えたので(ステップS205/Yes)、画素データ統合部4は、画素保存用メモリ3に格納されている各画素データの色値を、Z座標成分およびマスクビットに基づいて混合する(ステップS206)。これにより、画素保存用メモリ3内の各画素データの色値は、画素データ統合部4によって混合される。
【0046】
画素データ統合部4は、色値を混合した表示用の画素データを表示用メモリ5に出力する(ステップS207)。RAMDAC6は、表示用メモリ5の画像データをディスプレイに出力して画像を表示させる(ステップS208)。
各画素毎に、上記同様の手順で出力する色値を決定することにより、アンチエイリアス処理を行った画像をディスプレイに表示できる。
【0047】
なお、本実施形態では有効で有るか否かの判定条件を、判定対象である画素データのマスクビットを画素保存用メモリ3に格納されている全画素データのマスクビットと比較した場合に一番手前となる描画領域が1つでも含まれる場合としたが、本発明はこれに限定されることはない。
例えば、図11に示すように、全ての描画領域が、手前となる画素データの描画領域の裏側となってしまう画素データであっても、その画素データの輝度が手前の画素データの輝度より高い場合等は、有効と判定するようにしてもよい。この場合、画素データ統合部4は、画素データの描画領域が一番手前の描画領域であるか否かを考慮せず、単に描画領域のブロック数の比率に基づいて色値を混合するようにすればよい。
【0048】
本発明において1つの画素について格納する画素データの数は、あらかじめ設定されたものであってもよいし、ユーザが任意に設定するものでもよい。
また、各実施形態において示した画素データの統合方法や色値の混合方法は、実施の一例である。よって、本発明は、各実施形態に示した構成および動作に限定されるものではなく、本発明の主旨を逸脱しない範囲で変形実施が可能である。
【0049】
【発明の効果】
以上の説明より明らかなように請求項1記載のアンチエイリアス処理装置は、全ての図形の画素データをメモリに格納できない画素では、奥行きデータ及びマスク情報に基づいて選択した所定の数の画素データをメモリに格納するため、アンチエイリアス処理を実行する際に必要となるメモリ量を削減できる。
また、図形の描画領域の形状を考慮したアンチエイリアス処理を、選択保持した画素データを用いて実行できる。よって、アンチエイリアス処理を実行する際に必要となるメモリ量を削減できる。
さらに、生成した画素データをメモリに格納するか否かを判定できる。よって、格納しないと判定した画素データをメモリに格納する必要がないため、アンチエイリアス処理を実行する際に必要となるメモリ量を削減できる。
【0050】
請求項2の発明は、請求項1記載のアンチエイリアス処理装置であって、ユーザの視点位置を基準として、生成した画素データを格納するか否かを判断するため、図形を描画する順番を考慮する必要がない。
【0051】
請求項3記載のアンチエイリアス処理装置は、所定の数の画素データがすでにメモリに格納されていて、生成した画素データをメモリに格納できない場合に、優先順位に基づいて画素データを統合する。
よって、所定の数を超える画素データをメモリに格納しないため、アンチエイリアス処理を実行する際に必要となるメモリ量を削減できる。
また、統合によって所定の数以下に削減した画素データを用いて、図形の描画領域の形状を考慮したアンチエイリアス処理を実行できる。
よって、アンチエイリアス処理を実行する際に必要となるメモリ量を削減できる。
さらに、生成した画素データをメモリに格納するか否かを判定できる。よって、格納しないと判定した画素データをメモリに格納する必要がないため、アンチエイリアス処理を実行する際に必要となるメモリ量を削減できる。
【0052】
請求項4の発明は請求項3記載のアンチエイリアス処理装置であって、ユーザの視点位置を基準として、生成した画素データを格納するか否かを判断するため、図形を描画する順番を考慮する必要がない。
【0053】
請求項5の発明は請求項3又は4記載のアンチエイリアス処理装置であって、ユーザの視点位置から見て、奥側となる2つの画素データを統合することにより、手前側の有効性の高い画素データをそのままアンチエイリアス処理に用いることができる。このため、図形を描画する順番を考慮する必要がない。
【図面の簡単な説明】
【図1】本発明を適用した第1の実施形態によるアンチエイリアス処理装置の構成を示すブロック図である。
【図2】第1の実施形態によるアンチエイリアス処理装置の動作例において描画する図形を示す図である。
【図3】第1の実施形態によるアンチエイリアス処理装置の動作の流れを示すフローチャートである。
【図4】本発明を適用した第2の実施形態によるアンチエイリアス処理装置の構成を示すブロック図である。
【図5】画素マスク発生部301が生成する画素マスクの例を示す。
【図6】描画制御部2が有効と判断する場合としない場合との例を示す図である。(a)は有効と判断する場合を示す。(b)は有効と判断しない場合を示す。
【図7】画素データを統合する方法の例を示す図である。(a)は、統合前の各画素データのマスクビットを示す。(b)は、統合後のマスクビットを示す。(c)は、優先順位に基づいて各画素データを重ね合わせた場合に一番手前となる画素データを示す。
【図8】第2の実施形態によるアンチエイリアス処理装置の動作例において描画する図形を示す図である。
【図9】第2の実施形態によるアンチエイリアス処理装置の動作の流れを示すフローチャートである。
【図10】各図形の描画時に生成される画素マスクを示す図である。(a)は、図形100描画時の画素マスクを示す。(b)は、図形101描画時の画素マスクを示す。(c)は、図形102描画時の画素マスクを示す。(d)は、図形100と図形102とを統合した時の画素マスクを示す。(e)は、図形109描画時の画素マスクを示す。
【図11】第2の実施形態によるアンチエイリアス処理装置において、有効であるか否かを別条件で判定する場合の例を示す図である。
【図12】ジャギーの発生例を示す図である。
【図13】図形の占有率の求め方を示す図である。
【図14】アンチエイリアス処理の例を示す図である。(a)は、ディスプレイに表示させる画像を示す。(b)は、境界部に混在する占有率の異なる画素を示す。(c)は、アンチエイリアス処理を実行しないで表示させた場合の画像を示す。(d)は、図形の占有率50%以上の画素の色を黒とした状態を示す。(e)は、アンチエイリアス処理を実行して表示させた場合の画像を示す。(f)は、境界部の画素に図形の占有率に基づいたグレーを出力させた状態を示す。
【符号の説明】
1 画素データ生成部
2 描画制御部
3 画素保存用メモリ
4 画素データ統合部
5 表示用メモリ
6 RAMDAC
7、100、101、102、109 図形
8、103、104 画素
9 占有領域
11 座標発生部
12 色値発生部
13 画素占有率発生部
200 CPU
210 図形データメモリ
301 画素マスク発生部
302 画素マスク
500、501、502、503、504 マスクビット
Claims (5)
- 頂点の座標を基にして各図形を描画する際に生成した画素データを各画素毎に所定の数格納するメモリを有し、前記メモリに色値、奥行きデータ及びマスク情報を格納し、格納された画素データに基づき、3次元グラフィックスにおけるアンチエイリアス処理を行うアンチエイリアス処理装置であって、
前記生成した画素データに、前記図形の描画領域が当該画素に対して占める形状を示す画素マスクを設定し、
描画する図形の数が前記所定の数を超える画素では、前記生成した画素データおよびメモリに格納済みの画素データそれぞれの、前記画素マスクと前記奥行きデータとに基づいて、前記生成した画素データが有効であるか否かを判定し、
有効と判定した画素データのみを前記メモリに格納し、
前記メモリに格納した各画素データそれぞれの、前記奥行きデータと前記画素マスクとを用いて、アンチエイリアス処理を行うことを特徴とするアンチエイリアス処理装置。 - 前記生成した画素データおよび前記格納済み画素データをそれぞれの前記奥行きデータに基づいてソートしたときに、前記生成した画素データがユーザの視点側から見て一番手前となる描画領域を有する場合は、前記生成した画素データを有効と判定することを特徴とする請求項1記載のアンチエイリアス処理装置。
- 頂点の座標を基にして各図形を描画する際に生成した画素データを、各画素毎に所定の数格納するメモリを有し、前記メモリに色値、奥行きデータ、マスク情報を格納し、格納された画素データに基づき、3次元グラフィックスにおけるアンチエイリアス処理を行うアンチエイリアス処理装置であって、
前記生成した画素データに、前記図形の描画領域が当該画素に対して占める形状を示すマスクを設定し、
描画する図形の数が前記所定の数を超える画素においては、前記生成した画素データ及びメモリに格納済みの画素データそれぞれの、前記画素マスクと前記奥行きデータとに基づいて、前記生成した画素データが有効であるか否かを判定し、
有効と判定した画素データのみを前記メモリへ格納し、
生成した画素データを前記メモリに格納する際に、格納済み画素データが前記所定の数に達している場合は、前記生成した画素データおよび前記格納済み画素データのそれぞれに、各々の奥行きデータ及びマスク情報に基づいた優先順位を設定し、
優先順位が低い画素データから順に、前記画素データを選出し、
選出した画素データ同士を前記画素マスクと前記優先順位とに基づいて統合することにより、前記メモリに格納する画素データの数を前記所定の数以下に削減し、
前記メモリに格納している各画素データそれぞれの、前記奥行きデータと前記画素マスクとを用いて、前記アンチエイリアス処理を行うことを特徴とするアンチエイリアス処理装置。 - 前記生成した画素データおよび前記格納済み画素データを、それぞれの前記奥行きデータに基づいてソートしたときに、前記生成した画素データがユーザの視点側から見て一番手前となる描画領域を有する場合は、前記生成した画素データを有効と判定することを特徴とする請求項3記載のアンチエイリアス処理装置。
- 前記優先順位が最低の画素データと、該画素データより前記優先順位が1つ上位の画素データとを統合することを特徴とする請求項3又は4記載のアンチエイリアス処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001210931A JP3626709B2 (ja) | 2001-07-11 | 2001-07-11 | アンチエイリアス処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001210931A JP3626709B2 (ja) | 2001-07-11 | 2001-07-11 | アンチエイリアス処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003030681A JP2003030681A (ja) | 2003-01-31 |
JP3626709B2 true JP3626709B2 (ja) | 2005-03-09 |
Family
ID=19046330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001210931A Expired - Fee Related JP3626709B2 (ja) | 2001-07-11 | 2001-07-11 | アンチエイリアス処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3626709B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9235872B2 (en) | 2011-08-11 | 2016-01-12 | Panasonic Intellectual Property Management Co., Ltd. | Image processing device, image processing method, program, and integrated circuit |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7280120B2 (en) | 2003-06-26 | 2007-10-09 | Canon Kabushiki Kaisha | Compositing with a sub-pixel mask in graphic object rendering |
US20130038625A1 (en) * | 2011-08-10 | 2013-02-14 | Isao Nakajima | Method and apparatus for rendering anti-aliased graphic objects |
-
2001
- 2001-07-11 JP JP2001210931A patent/JP3626709B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9235872B2 (en) | 2011-08-11 | 2016-01-12 | Panasonic Intellectual Property Management Co., Ltd. | Image processing device, image processing method, program, and integrated circuit |
Also Published As
Publication number | Publication date |
---|---|
JP2003030681A (ja) | 2003-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102402793B (zh) | 计算机图形处理 | |
US7945114B2 (en) | Image transform method for obtaining expanded image data, image processing apparatus and image display device therefore | |
US6683617B1 (en) | Antialiasing method and image processing apparatus using same | |
US5164717A (en) | Method and apparatus for the dithering of antialiased vectors | |
US6509897B1 (en) | Method and system for providing implicit edge antialiasing | |
EP0568358B1 (en) | Method and apparatus for filling an image | |
US6741243B2 (en) | Method and system for reducing overflows in a computer graphics system | |
US6925204B2 (en) | Image processing method and image processing apparatus using the same | |
JP2008160345A (ja) | 画像処理装置及び画像処理方法、並びにコンピュータ・プログラム | |
US8648874B2 (en) | Method and system for providing edge antialiasing | |
JP3626709B2 (ja) | アンチエイリアス処理装置 | |
JP4183082B2 (ja) | 3次元画像描画装置および3次元画像描画方法 | |
US6894700B2 (en) | Multisampling dithering with shuffle tables | |
JP4698709B2 (ja) | データ作成装置、データ作成方法、データ作成用プログラム、描画装置、描画方法、描画用プログラム、および、コンピュータ読取可能な記録媒体 | |
JP3696584B2 (ja) | 描画処理方法及び装置、半導体デバイス、描画処理プログラム及び記録媒体 | |
JP3255549B2 (ja) | 図形処理方法 | |
JPH10228537A (ja) | 画素面積計算装置 | |
JPH08272351A (ja) | 画像処理装置 | |
JPH0519739A (ja) | 文字パターン生成装置 | |
JPH05120449A (ja) | 画像処理装置 | |
JPH03206782A (ja) | シンボルジェネレータ | |
JPH07140945A (ja) | 階調文字表示方法及び装置 | |
JPH0667648A (ja) | 疑似3次元画像合成装置 | |
JPH08305334A (ja) | 画像処理装置及びその方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040413 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040420 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040727 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040927 |
|
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: 20041116 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041203 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S633 | Written request for registration of reclamation of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313633 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071210 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081210 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091210 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091210 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101210 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101210 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111210 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111210 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121210 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121210 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131210 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |