JP2007193565A - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP2007193565A
JP2007193565A JP2006011029A JP2006011029A JP2007193565A JP 2007193565 A JP2007193565 A JP 2007193565A JP 2006011029 A JP2006011029 A JP 2006011029A JP 2006011029 A JP2006011029 A JP 2006011029A JP 2007193565 A JP2007193565 A JP 2007193565A
Authority
JP
Japan
Prior art keywords
boundary
line segment
pixel
dda
color
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
JP2006011029A
Other languages
English (en)
Other versions
JP4749868B2 (ja
Inventor
Yukimasa Shima
幸雅 島
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006011029A priority Critical patent/JP4749868B2/ja
Publication of JP2007193565A publication Critical patent/JP2007193565A/ja
Application granted granted Critical
Publication of JP4749868B2 publication Critical patent/JP4749868B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Color Image Communication Systems (AREA)

Abstract

【課題】アンチエイリアス処理においてより小規模な回路で高速に境界画素の色の濃度を求めることができる画像処理装置を提供する。
【解決手段】二次元状に配置された画素に所定の幅を有し主軸方向に延在する線分をレンダリングする画像処理装置において,前記線分と背景との境界に位置する境界画素の色データを,当該境界画素における前記線分部分の面積に応じて求める画素データ算出手段と,前記線分の傾きに基づき主軸方向に隣接する前記境界画素間の色の濃度差を求める濃度差算出手段とを有し,前記画素データ算出手段は,色データが求められた第1の境界画素の色データと前記濃度差に基づき,前記第1の境界画素と主軸方向に隣接する第2の境界画素の色データを求める。
【選択図】図5

Description

本発明は,二次元状に配置された画素に所定の幅を有し主軸方向に延在する線分をレンダリングする画像処理装置に関し,特に,線分と背景との境界に位置する境界画素の色データを,当該境界画素における前記線分部分の面積に応じて求める画像処理装置に関する。
ラスタスキャン型のCRTディスプレイは,格子状に画素が配置された表示画面をスキャンして,画素の集合として図形などの画像を表現する。よって,斜線や曲線は画素による階段状に表示されるため,ジャギーと呼ばれるギザギザが現れてしまう。このようなジャギーを目立たせなくするためのアンチエイリアス手法が種々提案されている。
アンリエイリアス手法の一類型としては,画像処理装置がCRTディスプレイに供給するビットマップ画像データをフレームメモリに展開した段階で,斜線や曲線を構成する画素の色の濃度を調整することにより,ディスプレイに表示された時点でジャギーを目立たなくさせる手法がある。
例えば,特許文献1に記載されている画像処理方法では,描画する図形の座標にオフセットを与え,表示画面と同面積の複数の領域において位置をずらして同一の図形をメモリ上に描画する。そして,描画された図形を合成し,重複した画素の色の濃度を平均することにより,斜線などを構成する境界画素の色の濃度を求め,ジャギーが目立たないアンチエイリアス効果を持った画像を得る。
また,シリコングラフィクス社が提供する図形描画用のAPI(Application Program Interface)であるOpenGL(登録商標)によれば,一定の幅を持った斜線などを描画するときは,境界部分の画素における斜線部が占める面積の比率により,その画素の色の濃度を決定する。そのようにして,境界の画素を中間調の色で表現することで,ジャギーが目立たないアンチエイリアス効果を持った画像を得る。
特開2003−303349号公報
しかしながら,上記のような従来技術では,複数の描画結果の平均計算や,境界画素における斜線部分の面積計算など,複雑な計算を伴う。よって,そのための描画プロセッサなどの画像処理装置は回路規模が大きくなるのでコスト高となり,しかも描画処理に時間がかかるという問題があった。
そこで,本発明の目的は,アンチエイリアス処理においてより小規模な回路で高速に境界画素の色の濃度を求めることができる画像処理装置を提供することにある。
上記の目的を達成するために,本発明の第1の側面における画像処理装置は,二次元状に配置された画素に所定の幅を有し主軸方向に延在する線分をレンダリングする画像処理装置であって,前記線分と背景との境界に位置する境界画素の色データを,当該境界画素における前記線分部分の面積に応じて求める画素データ算出手段と,前記線分の傾きに基づき主軸方向に隣接する前記境界画素間の色の濃度差を求める濃度差算出手段とを有し,前記画素データ算出手段は,色データが求められた第1の境界画素の色データと前記濃度差に基づき,前記第1の境界画素と主軸方向に隣接する第2の境界画素の色データを求めることを特徴とする。
また,上記側面の好ましい実施例における画像処理装置は,前記第1の境界画素の色データに前記濃度差を加算して前記第2の境界画素の色データを求める処理を繰り返すことを特徴とする。
上記画像処理装置によれば,アンチエイリアス処理を施す境界の画素の個々について線分の面積に応じた色の濃度を求めるのではなく,境界の画素の1つについて色の濃度を求めておけば,他の境界画素の色の濃度は一定の濃度差を繰り返し加算することにより求めることができる。よって,より小規模な回路で高速な処理が可能となる。
以下,図面にしたがって本発明の実施の形態について説明する。但し,本発明の技術的範囲はこれらの実施の形態に限定されず,特許請求の範囲に記載された事項とその均等物まで及ぶものである。
図1は,アンチエイリアス処理の概要を説明する図である。OpenGLによって描画された図形のアンチエイリアス処理を例としている。
OpenGLは描画関数やコマンドのライブラリであり,描画ソフトなどのアプリケーションソフトに対してAPIを提供している。OpenGLは,アプリケーションソフト側からユーザ入力やファイル読み込みにより得た描画図形の入力データを関数の引数として受け取り,ドライバを介して描画プロセッサなどの画像処理装置に描画データを送る。すると,画像処理装置では,フレームメモリ上に描画図形に対応したビットマップ画像データの展開,すなわちレンダリングを行う。
図1(A)は,OpenGLにより二次元の格子状の画素にレンダリングされた,一定の幅と傾きを持った線分S−Lを例示している。描画する線分S−Lの始点S−Pの座標(xs,ys)と終点E−Pの座標(xe,ye),線分の幅,色成分,テクスチャ等の描画データに基づきレンダリングされたものである。線分上の各点は2次元座標で表現されるが,線分の傾きに応じて,座標の変移が大きい方を主軸とする。すなわち,線分S−Lは,x軸を主軸とし,主軸方向に延在する一定の幅を有する線分である。
図1(B)は,図1(A)の矢印で示した線分S−Lの一部の領域を拡大した図である。アンチエイリアスの対象となる境界画素を説明している。図中の正方形の格子は画素を表しており,2行6列の画素のうち線分S−Lと背景との境界線B−Lが通過する画素P1〜P6の6画素が境界画素である。なお,以降の説明において図示する画素についても,正方形の格子を用いて表現し,それぞれの1辺は1単位座標の長さとする。
OpenGLの仕様における原則的な処理では,境界画素には線分部分の面積比率に応じた色の濃度が与えられる。ここで,境界画素の色の濃度とは,線分が有する色と背景色との合成において,線分の色の割合のことを言う。よって,境界画素の色の濃度が高いということは,より線分の色に近い色で表現されることを意味する。
例えば,画素P1〜P3において線分S−Lが占める領域(斜線部分)の面積の比率を比べると,画素P3における比率が最も大きい。よって,境界画素P3は線分内部の画素よりも低い濃度であるが,境界画素P1,P2よりは高い濃度の色で表現される。そして,境界画素P2,P1と移動するに従い背景色の割合が増すので,線分の色がぼやけて見えることになる。そうすることにより,ディスプレイに表示されたときにジャギーが目立たなくなる。
しかしながら,境界画素において線分の占める面積比率を求めるには,まず線分の占める部分の面積を求めなくてはならず,場合によって計算が複雑となる。
例えば,境界画素P2においては,線分の占める部分である台形TR1の面積を求める計算が必要になる。そのためには,台形TR1の各頂点の座標を求めることにより底辺の長さ等を求め,さらに乗算により台形TR1の面積を求める。また,境界画素P6では,画素全体の面積から背景部分の三角形TR2の面積を減算することが必要になる。そのためには,三角形TR2の各頂点の座標を求めることにより底辺の長さ等を求め,乗算により三角形TR2の面積を求め,さらに画素の面積から減算する。
このように,境界画素において線分が占める部分の形状も一様ではないのでその面積を求める計算も複雑となり,画像処理上の負荷となる。そこで,かかる負荷軽減のためには,DDA(デジタル微分解析器)により境界線B−L上の等間隔の点を求め,各点の座標を利用して境界画素における線分の面積に代替する数値を求める,より容易な計算方法が用いられる。
図1(C)では,線分S−Lの始点S−Pのx座標「xs」から主軸であるx軸方向に1単位座標ずつ加算してゆき,算出されるx座標に対応する境界線B−L上の点をDDA加算点とする処理について説明する。境界画素P1〜P3の拡大図に,境界線B−L上にある線分S−Lの始点に対応するDDA点からのDDA加算点を表示している。
例えば,線分S−Lの始点S−Pのx座標「xs」に対応する境界線B−L上の点をDDAsとする。ここで,1画素の1辺の長さは1単位座標の距離に該当するので,点DDAsのx座標「xs」に単位座標「1」ずつ加算し境界線B−L上にプロットしてゆくと,x座標「x1」〜「x3」に対応してDDA加算点DDA1〜DDA3が求められ,それぞれの点を含む対応する1つの境界画素が特定される。すなわち,DDA加算点DDA1に対応する画素が境界画素P1,DDA加算点DDA2に対応する画素が境界画素P2,DDA加算点DDA3に対応する画素が境界画素P3となる。
このような各DDA加算点に対応する境界画素において,線分の面積に代替する数値は次のように求めることができる。
まず,各境界画素において太線で描かれた,それぞれのDDA加算点を高さとする長方形を見てみる。すると,境界画素P1,P2,P3ごとの長方形の面積の比は,各画素の線分の面積の比とほぼ一致する。よって,線分の面積の代わりにこれらの長方形の面積を用いて各境界画素の色の濃度を求めたとしても,境界画素P1〜P3における色の濃度は段階的に変化することになるので,ジャギーを目立たなくさせるという効果としては十分である。よって,このような長方形の面積を計算すれば,上述した線分の面積を求める計算より単純に行うことができるので,処理負荷の軽減を図ることができる。
さらに,上記の長方形の面積は,各DDA点における長方形の高さ,すなわち各DDA点の副軸であるy軸方向の座標であるy座標の少数部分と等しい。また,これら長方形の底辺の長さは各画素の1辺の長さに等しい。よって,各画素において矢印が示す,DDA加算点における画素内の線分部分の副軸方向の距離(以下,「DDA加算点の副軸距離」という)f1,f2,f3を基準として各画素の色の濃度を求めることで,さらに計算効率を良くすることができる。
このように,DDA加算点を用いることにより,境界画素において線分が占める部分の形状を問わず,副軸距離という一律の尺度で色の濃度を求めることができるようになる。さらに,線分S−Lの傾きが一定であることに着目すれば,DDA加算点の副軸距離の増分も一定であるので,加算によりDDA加算点ごとの副軸距離を求めることができる。
本実施の形態における画像処理装置は,上記のようなDDA加算点の副軸距離に応じて境界画素の色の濃度を求めるアンチエイリアス処理において,DDA加算点の副軸距離を一定の増分を加算することによって求めるものである。さらに,後述するように,副軸距離の増分に対応した一定の色の濃度差を主軸方向に隣接する境界画素ごとに順次加算することで,境界画素の色の濃度を求めることを特徴とする。
図2は,上記のような本実施の形態におけるアンチエイリアス処理を行う画像処理装置を備えた描画システムの概略構成図である。CPU10,入力部12,記憶部14,ジオメトリブロック16,レンダリングブロック18,フレームメモリ20,及び表示部22がシステムバスS−BUSを介して接続されている。このような構成を備えたパーソナルコンピュータまたはグラフィックワークステーションに,ユーザからの入力を受ける入力装置13が入力部12に接続され,また描画された画像を表示する表示装置24が表示部22に接続されて,描画システムを構成する。
CPU10は,記憶部14に格納された制御プログラムに従いシステムバスS−BUSを介して描画システムの各部の動作を制御する。また,入力部12は,マウスその他のポインティングデバイス,もしくはキーボードなどの入力装置13からの入力信号を受け,CPU10や他のブロックへ入力データとして提供する入力制御部である。
ジオメトリブロック16は,入力部12から供給される入力データを,記憶部14に格納されたOpenGLの関数を呼び出して処理し,描画データとしてレンダリングブロック18に出力する。例えばユーザの入力に基づき一定の幅を持った線分を描画する場合には,マウス等で入力された線分の位置や色などの入力データを入力部12から受け取り,線分の始点・終点の座標,線分の幅,色データ,テクスチャデータ等などの描画データに変換して出力する。ここで3次元画像に関する入力データは2次元画像の描画データに変換される。
レンダリングブロック18は,ジオメトリブロック16から供給された2次元画像の描画データを処理して,フレームメモリ20に描画する図形に対応したビットマップ画像データを展開する。その際,斜線や曲線などの境界画素に対してはアンチエイリアス処理を施す。
表示部22はフレームメモリ20に展開されたビットマップ画像データを読み出して表示信号に変換し,CRTディスプレイなどの表示装置24に送る。そして表示装置24は表示画面上の画素をスキャンして描画された図形を表示する。
以上の構成において,レンダリングブロック18が画像処理装置に対応する。次に,図3と図4を用いて,レンダリングブロック18において実行される図1(C)で示したDDA加算点を用いたアンチエイリアス処理について説明する。図3では,個々の境界画素ごとに,DDA加算点の副軸距離に対し乗算を行い色の濃度を求める場合を説明し,図4では,本実施の形態の特徴である,DDA加算点の副軸距離の増分に対応する濃度差を加算することにより境界画素の色の濃度を求める場合を,図3に対比して説明する。
図3は,境界画素ごとにDDA加算点の副軸距離に対し乗算を行い色の濃度を求めるアンチエイリアス処理を説明する図である。図3(A)は,x−y軸上に一定の幅を持った線分S−Lの一部を拡大し,画素を格子状に表した図である。これらの画素のうち,境界線B−L上にプロットされたDDA加算点DDA1〜DDA6に対応する画素が境界画素P1〜P6である。さらに各DDA加算点にはx座標とy座標を対応づけて表示している。
アンチエイリアス処理の手順としては,まず,DDA加算点の座標を求める。DDA加算点のx座標は,図1(C)において説明したとおりジオメトリブロック16から提供される線分S−Lの始点S−Pの座標により求められる。すなわち,始点S−Pのx座標「xs」に対応する境界線B−L上の点を求め,DDA加算点の始点DDAsとする(図1(C))。この始点DDAsのx座標に1単位座標を順次加算し,各DDA加算点のx座標を求めることができる。
各DDA加算点のy座標も,始点DDAsのy座標に線分S−Lの傾き,つまりx座標が1座標増加するときのy座標の増加分を順次加算することにより求めることができる。ここで線分S−Lの傾きは,ジオメトリブロック16から提供される線分S−Lの始点及び終点の座標から求めることができる。このように算出されたDDA加算点を含む対応する画素が,すなわち境界画素である。
次に,各境界画素におけるDDA加算の副軸距離を求める。図中,各境界画素内の矢印の長さf1〜f6が,求める距離である。ここで,例えば境界画素P4〜P6において表現されているように,求める距離は,境界画素内部での副軸方向の距離であるから,DDA加算点のy座標ではなく,各DDA加算点のy座標の少数部分が求める距離である。よって,各DDA加算点の副軸距離f1〜f6は,DDA加算点DDA1〜DDA6のy座標,y1〜y6のそれぞれ小数部分を抽出することにより求めることができる。
そして,各DDA加算点の副軸距離f1〜f6に基づき,各境界画素P1〜P6における色の濃度を求める。そのためには,各DDA加算点の副軸距離を各境界画素の副軸方向の1辺の長さ「1」で除した割合を求める。すると,その割合に応じた比率で線分の色が背景色と合成されることとなり,アンチエイリアス効果を持つ画像を得ることができる。さらに,得られる画像にアンチエイリアス効果をどの程度持たせるかを調整する所定の係数を基準濃度として乗算することにより,アンチエイリアスの効果を調整できる。
上記の計算により境界画素P1〜P6の色の濃度を求める手順を表にしたものが図3(B)である。DDA加算点の座標を求める工程1,DDA加算点の副軸距離を求める工程2,そして,境界画素の色の濃度を求める工程3の3工程に分類してある。
境界画素P1の色の濃度を求める場合を例にとると,まず工程1でジオメトリブロック16から提供された描画データに基づきDDA加算点DDA1の座標(x1,y1)を求める。
x座標「x1」は,直前のDDA加算点のx座標「x0」に単位座標1を加えることにより得られる。y座標「y1」についても,直前のDDA加算点のy座標「y0」に,線分S−Lの傾き「△y」を加えることにより得られる。このように,DDA加算点のx座標は,線分S−Lの始点のx座標から単位座標1ずつ増加する等差数列として計算することができる。また,線分S−Lの傾き「△y」も一定であるので,y座標も等差数列として計算することができる。このようにしてDDA加算点DDA1の座標を求めることにより,対応する境界画素P1が特定される。
そして,工程2では,DDA加算点DDA1のy座標「y1」の少数部を抽出することにより,境界画素P1におけるDDA加算点DDA1の副軸距離f1が求められる。
さらに,工程3では,DDA加算点DDA1の副軸距離f1に対し,基準濃度としてアンチエイリアス値の最大値「αmax」を乗算し,境界画素P1の色の濃度「α1」を求める。アンチエイリアス値の最大値とは,線分の面積が100%である画素の色の濃度を最大値として,境界画素におけるアンチエイリアス処理の効果を調整する係数である。
例えば,仮に副軸距離f1が「0.3」であって,アンチエイリアス値の最大値αmaxを「80%」としたとする。すると,境界画素P1の色の濃度は,副軸距離f1にアンチエイリアス値の最大値αmaxを乗算した結果「0.24」となる。すると,境界画素P1においては線分の色の割合が「0.24」で背景色と合成された色データが最終的に求められる。このアンチエイリアス値の最大値の値が小さければ,境界画素の色の濃度はより低く算出されるので,表示装置24に表示された場合にジャギーはよりぼやけて見える。
境界画素P2〜P6についても,上記と同様の工程1〜3を繰り返すことにより,色の濃度α2〜α6が求められる。
上記の手順では,境界画素ごとに乗算,つまり副軸距離に対する基準濃度の乗算が発生する。しかしながら,線分の傾きが一定であることに着目すると,隣接する画素間でのDDA加算点の副軸距離は線形に変移するので,乗算ではなく加算により同じ結果を求めることができる。本実施の形態における画像処理装置は,次図で説明するように,乗算よりも処理負荷の少ない加算により境界画素の色の濃度を求めることを特徴とする。
図4は,DDA加算点の副軸距離の増分に対応する濃度差を加算することにより境界画素の色の濃度を求めるアンチエイリアス処理を説明する図である。図4(A)は,図3(A)と同じ図に,x軸方向の1単位座標の増分に対するy座標の増分「△y」を表現する三角形TR3を対応させたものである。すなわち,各DDA加算点におけるy座標は,1つ前のDDA加算点のy座標に,△yを加えたものであることを表現している。すると,主軸方向に隣接する境界画素においては,DDA加算点の副軸距離に対応する色の濃度も次のように加算で求めることができる。
具体的に境界画素P2とP3の例で説明すると,まず境界画素P2の色の濃度「α2」と境界画素P3の濃度「α3」は,図3(B)で示したように各DDA加算点DDA2,DDA3の副軸距離「f2」,「f3」とアンチエイリアス値の最大値「αmax」を乗算したものである。よって,次の2式が得られる。
α2=f2×αmax(式1)
α3=f3×αmax(式2)
ここで,(式2)と(式1)より,次の式が得られる。
α3―α2=(f3―f2)×αmax (式3)
すると,(式3)の右辺におけるDDA加算点DDA3の副軸距離「f3」とDDA加算点DDA2の副軸距離「f2」の差は,x軸方向の1単位座標の増分に対するy座標の増分「△y」,つまり線分S−Lの傾きであるので,さらに次の式が得られる。
α3―α2=△y×αmax (式4)
上記の(式4)の右辺が境界画素P2からP3への色の濃度の増加分であり,この値は一定である。よって,(式4)の関係を同一の境界線B−L上において主軸方向に隣接する境界画素に適用すると,主軸座標の増加に伴い濃度の増加分を加算することにより,順次境界画素の色の濃度を得ることができる。ただし,例えば境界画素P3からP4へ移行する場合のように,副軸座標の整数値が1単位増加する場合には,DDA加算点DDA4の副軸距離f4,つまりy座標「y4」の少数部分に対応するように,加算結果の下位ビットを抽出する。
上記の計算により境界画素P1〜P6の色の濃度を求める手順を表にしたものが図4(B)である。境界画素間の濃度の差分を求める工程1,DDA加算点の座標を求める工程2,そして,境界画素の色の濃度を求める工程3の3工程に分類してある。
境界画素P1の色の濃度を求める場合を例にとると,まず工程1では,線分S−Lの傾き「△y」にアンチエイリアス値の最大値「αmax」を乗算することで,画素間の濃度差「△α」を求める。
そして,工程2では,ジオメトリブロック16から提供された描画データに基づきDDA加算点DDA1の座標(x1,y1)を求める。その際,図3(B)の工程1と同じ計算を行う。
さらに,工程3では,DDA加算点DDA1の1つ前のDDA加算点に対応する境界画素の濃度「α0」に,上記濃度差「△α」を加算して境界画素P1の色の濃度「α1」を求める。
次に,境界画素P2の色の濃度を求める場合は,上記境界画素P1の色の濃度「α1」に,濃度差「△α」を加算するだけでよい。すなわち,工程1は初回実行すれば,その後は工程2と工程3のみでよい。以下,同様の手順で各境界画素の色の濃度α3〜α6が求められる。
以上のように,図3で示した場合のような基準濃度の乗算は境界画素ごとにする必要はなく初回だけ行えばよいので,加算の繰り返しにより境界画素の色の濃度を求めることができる。
以下においては,上述した2種類の処理,すなわち個々の境界画素ごとに乗算を行い色の濃度を求める処理と,濃度差を加算することにより境界画素の色の濃度を求める処理とに対応するレンダリングブロック18内の構成を比較する。そして,それぞれの構成による処理速度を比較する。
図5は,レンダリングブロック18内の構成を説明する図である。図5(A)の構成は図3で示した境界画素ごとに乗算を用いて色の濃度を求めるアンチエイリアス処理に対応し,図5(B)の構成は図4で示した境界画素の色の濃度を加算で求めるアンチエイリアス処理に対応する。各構成においては,実行される処理を記してある。
図5(A)の構成では,レンダリングブロック18内に,セットアップブロック31,DDA加算部30,画素データ処理部32,副軸距離算部34,及び濃度算出部36が設けられ,各ブロックには基準クロックCLKが不図示のクロック発生器から与えられる。
まず,セットアップブロック31は,ジオメトリブロック16から描画データNDとして,線分S−Lの始点の座標(xs,ys),終点の座標(xe,ye),線分S−LのRGB色空間での色データ(Rs,Gs,Bs)等を受け取る。そして線分S−Lの始点の座標(xs,ys)と終点の座標(xe,ye)から,線分S−Lの傾き「△y」を求める。
次に,DDA加算部30は,セットアップブロック31から線分S−Lの始点の座標(xs,ys),終点の座標(xe,ye),線分S−LのRGB色空間での色データ(Rs,Gs,Bs)に加えて線分S−Lの傾き「△y」等を受け取る。これらデータに基づき,線分S−Lの始点に対応するDDA点の始点から「n」番目のDDA加算点DDAnの座標(xn,yn)を加算により求める。
次に,副軸距離算出部34は,DDA加算部30により算出されたDDA加算点DDAnのy座標「yn」の小数部を抽出し,DDA加算点DDAnの副軸距離「fn」を算出する。
次に,濃度算出部36は,副軸距離算出部34により算出された副軸距離「fn」を受け取り,アンチエイリアス値の最大値「αmax」を乗算することにより,DDA加算点DDAnに対応する境界画素の色の濃度「αn」を算出する。算出が終了したら,DDA加算部30に終了信号ESを送るとともに,画素データ処理部32に濃度「αn」を渡す。
そして,DDA加算部30は,濃度算出部36からの終了信号ESを受け取ってから,画素データ処理部32にDDA加算点DDAnの座標(xn,yn)等を出力する。
そして,画素データ処理部32は,DDA加算部30からはDDA加算点DDAnの座標(xn,yn)や色データ(Rs,Gs,Bs)等を,濃度算出部36からはDDA加算点DDAnに対応する境界画素の色の濃度「αn」を受け取り,DDA加算点DDAnに対応する境界画素の色データ,つまりRGB階調値(Rn,Gn,Bn)を,ジオメトリブロック16から受け取った色データ(Rs,Gs,Bs)と濃度「αn」に基づき算出する。そして,算出結果をフレームメモリ20に出力してビットマップ画像データで展開する。
図5(A)の構成においては,以上の処理が境界画素毎に実行され,かつ,DDA加算部30においては濃度算出部36からの終了信号ESの待ち時間が生じている。
一方,図5(B)の構成では,レンダリングブロック18内に,セットアップブロック31,DDA加算部30,画素データ処理部32,及び濃度差算出部38が設けられ,各ブロックには基準クロックCLKが不図示のクロック発生器から与えられる。
セットアップブロック31は,図5(A)で説明した処理を行い,DDA加算部30へ線分S−Lの始点の座標(xs,ys),終点の座標(xe,ye),線分S−LのRGB色空間での色データ(Rs,Gs,Bs)等を出力し,それと同時に濃度差算出部38へは線分S−Lの傾き「△y」を出力する。
すると,まず濃度差算出部38では,線分の傾き「△y」に対しアンチエイリアス値の最大値「αmax」を乗算し,最初に濃度差「△α」を算出する。
次にDDA加算部30では,セットアップブロック31から提供されたデータと,濃度差算出部から提供される濃度差「△α」に基づき,加算の一環として,DDA加算点DDAnの座標(xn,yn),及び色の濃度「αn」を算出する。そして,算出結果を画素データ処理部32に送り,画素データ処理部32はこれらのデータに基づきフレームメモリ20にビットマップ画像データを展開する。
以上のとおり,図5(A)の構成と比べると,図5(B)の構成は濃度算出部36という乗算回路を省略することができるので,回路規模をより小さくすることが可能となる。次に,各構成の処理速度を比較する。
図6は,レンダリングブロック18の動作を説明するタイミングチャート図である。図6(A)のチャートは図5(A)の構成に,図6(B)のチャートは図5(B)の構成に対応する。上段に示すCLKは,基準クロックCLKを表しており,チャートの表示は,各構成部におけるクロック単位の処理を表している。
図6(A)では,図5(A)の構成でセットアップブロック31による線分S−Lの傾き「△y」を求める処理を終えた後の,DDA加算部30,画素データ処理部32,副軸距離算部34,及び濃度算出部36の処理を表している。
DDA加算点DDA1の処理を例にすると,図に示すとおり,基準クロックの1クロック目で,DDA加算部30における座標(x1,y2)を求める加算処理と,副軸距離算出部34における副軸座標「y1」からの小数部「f1」抽出処理が行われる。そして,副軸距離算出部34からの終了信号を受け取って,2クロック目で濃度算出部36でDDA加算点DDA1に対応する境界画素の色の濃度を求める乗算が行われる。さらに,濃度算出部36からの計算結果を受けて画素データ処理部32がフレームメモリ20へのビットマップ画像データ展開を行うのは,3クロック目ということになる。
また,図5(A)の構成では,副軸距離算出部34と濃度算出部36の処理がDDA加算点ごとに繰り返されることになる。
一方,図6(B)では,図5(B)の構成でセットアップブロック31による線分S−Lの傾き「△y」を求める処理を終えた後の,DDA加算部30,画素データ処理部32,及び濃度差算出部38の処理を表している。
DDA加算点DDA1の処理を例にすると,図に示すとおり,基準クロックの1クロック目で,濃度算出部38における濃度差「△α」を求める乗算処理と,DDA加算部30における座標(x1,y2)の加算処理と濃度差「△α」の加算処理が同時に行われる。そして,2クロック目で画素データ処理部32がフレームメモリ20へのビットマップ画像データ展開を行うことができる。
さらに,図5(B)の構成では,濃度算出部38の乗算処理は1回だけ行えば,その乗算結果を繰り返し用いて毎クロックDDA加算処理の一環として画素データ処理部32に提供する境界画素のデータを算出できる。よって,図5(A)の構成より高速な処理が可能となる。
なお,境界画素における面積比が線形に変化するような線分であれば,その線分が多角形などの図形の一部を構成する場合であっても,上述したアンチエイリアス処理を行うことができる。
以上のとおり,本実施の形態における画像処理装置によれば,境界画素にアンチエイリアス処理を施す際に,1つの境界画素の色の濃度を求めておけば,一定の濃度差を加算することで主軸方向に隣接する境界画素の色の濃度を順次求めることができる。よって,画素毎に色の濃度を求める乗算を行う場合と比べて,より小規模な回路でかつより高速な処理が可能となる。
アンチエイリアス処理の概要を説明する図である。 本実施の形態におけるアンチエイリアス処理を行う画像処理装置を備えた描画システムの概略構成図である。 境界画素ごとにDDA加算点の副軸距離に対し乗算を行い色の濃度を求めるアンチエイリアス処理を説明する図である。 DDA加算点の副軸距離の増分に対応する濃度差を加算することにより境界画素の色の濃度を求めるアンチエイリアス処理を説明する図である。 レンダリングブロック18内の構成を説明する図である。 レンダリングブロック18の動作を説明するタイミングチャート図である。
符号の説明
18: レンダリングブロック DDA1:DDA加算点
P1: 境界画素 f1: DDA加算点の副軸距離

Claims (3)

  1. 二次元状に配置された画素に所定の幅を有し主軸方向に延在する線分をレンダリングする画像処理装置において,
    前記線分と背景との境界に位置する境界画素の色データを,当該境界画素における前記線分部分の面積に応じて求める画素データ算出手段と,
    前記線分の傾きに基づき主軸方向に隣接する前記境界画素間の色の濃度差を求める濃度差算出手段とを有し,
    前記画素データ算出手段は,色データが求められた第1の境界画素の色データと前記濃度差に基づき,前記第1の境界画素と主軸方向に隣接する第2の境界画素の色データを求めることを特徴とする画像処理装置。
  2. 請求項1において,
    前記濃度差算出手段は,前記線分の傾きに所定の基準濃度を乗算して前記濃度差を算出することを特徴とする画像処理装置。
  3. 請求項1または2において,
    前記画素データ算出手段は,前記第1の境界画素の色データに前記濃度差を加算して前記第2の境界画素の色データを求める処理を繰り返すことを特徴とする画像処理装置。
JP2006011029A 2006-01-19 2006-01-19 画像処理装置 Expired - Fee Related JP4749868B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006011029A JP4749868B2 (ja) 2006-01-19 2006-01-19 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006011029A JP4749868B2 (ja) 2006-01-19 2006-01-19 画像処理装置

Publications (2)

Publication Number Publication Date
JP2007193565A true JP2007193565A (ja) 2007-08-02
JP4749868B2 JP4749868B2 (ja) 2011-08-17

Family

ID=38449218

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006011029A Expired - Fee Related JP4749868B2 (ja) 2006-01-19 2006-01-19 画像処理装置

Country Status (1)

Country Link
JP (1) JP4749868B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014186682A (ja) * 2013-03-25 2014-10-02 Mega Chips Corp 画像処理装置、プログラムおよび集積回路
JP2017202409A (ja) * 2017-08-29 2017-11-16 株式会社三洋物産 遊技機
JP2018043108A (ja) * 2017-12-25 2018-03-22 株式会社三洋物産 遊技機

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60132274A (ja) * 1983-03-07 1985-07-15 テクトロニツクス・インコーポレイテツド 直線発生装置
JP2005228109A (ja) * 2004-02-13 2005-08-25 Seiko Epson Corp 直線描画装置および直線描画方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60132274A (ja) * 1983-03-07 1985-07-15 テクトロニツクス・インコーポレイテツド 直線発生装置
JP2005228109A (ja) * 2004-02-13 2005-08-25 Seiko Epson Corp 直線描画装置および直線描画方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CSNG200202334008, 島田 喜夫 外3名, ""グラフィック・ディスプレイにおける高速ライン・スムージングの実現"", 情報処理学会研究報告, 19900223, 第90巻,第16号, p.1−8, JP, 社団法人情報処理学会 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014186682A (ja) * 2013-03-25 2014-10-02 Mega Chips Corp 画像処理装置、プログラムおよび集積回路
JP2017202409A (ja) * 2017-08-29 2017-11-16 株式会社三洋物産 遊技機
JP2018043108A (ja) * 2017-12-25 2018-03-22 株式会社三洋物産 遊技機

Also Published As

Publication number Publication date
JP4749868B2 (ja) 2011-08-17

Similar Documents

Publication Publication Date Title
JP4030519B2 (ja) 画像処理装置および画像処理システム
JP3164617B2 (ja) 文字図形変形処理装置および方法
US7945114B2 (en) Image transform method for obtaining expanded image data, image processing apparatus and image display device therefore
JP2010113624A (ja) ベジェ曲線描画装置、ベジェ曲線描画方法およびプログラム
JP4370438B2 (ja) ベクター画像描画装置、ベクター画像描画方法およびプログラム
JP4749868B2 (ja) 画像処理装置
JP2006235839A (ja) 画像処理装置および画像処理方法
US20040164985A1 (en) Triangle polygon plotting device and triangle polygon plotting method
JP2006139727A (ja) 3次元図形描画処理装置、画像表示装置、3次元図形描画処理方法、これをコンピュータに実行させるための制御プログラムおよび、これを記録したコンピュータ読み取り可能な可読記録媒体
JP4480476B2 (ja) 画像処理装置および画像処理方法
JP2008201058A (ja) 画像形成装置
JP2010134654A (ja) 描画処理装置
JP4325812B2 (ja) ベクター画像描画回路およびベクター画像描画方法
JP4930860B2 (ja) 図形描画装置、アンチエイリアス処理方法およびプログラム
JP4863306B2 (ja) ベクターイメージ描画装置、ベクターイメージ描画方法およびプログラム
JP3479282B2 (ja) 文字図形変形処理装置
CN117911578B (zh) 一种文字渲染方法、装置、计算机设备和存储介质
JP4320604B2 (ja) 画像処理方法および画像処理装置
JP2011028641A (ja) 画像処理装置及び画像処理方法
JP2018019212A (ja) 情報処理装置及び描画処理方法、コンピュータプログラム
JPH05205070A (ja) 図形描画方法
JP3517982B2 (ja) 図形描画装置
JP3164795B2 (ja) 文字図形変形処理装置および方法
JP2010009271A (ja) 画像処理装置
JP2006093905A (ja) 画像処理装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080731

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080916

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110408

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4749868

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140527

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees