JP2005301902A - 画像処理装置および画像処理システム - Google Patents
画像処理装置および画像処理システム Download PDFInfo
- Publication number
- JP2005301902A JP2005301902A JP2004120603A JP2004120603A JP2005301902A JP 2005301902 A JP2005301902 A JP 2005301902A JP 2004120603 A JP2004120603 A JP 2004120603A JP 2004120603 A JP2004120603 A JP 2004120603A JP 2005301902 A JP2005301902 A JP 2005301902A
- Authority
- JP
- Japan
- Prior art keywords
- stamp
- image processing
- linear equation
- linear
- information
- 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
Links
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/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Abstract
【解決手段】 画像処理装置45は、DDAセットアップ部1と、コンテキスト部2と、直線方程式計算部3と、XY計算部4と、エッジ判定部5と、DDA制御部6と、マスク生成部7とを有する。複数のスレッドを交互に切り替えながらスタンプの処理を行い、スタンプがポリゴンの外部にあると判定されると、次に処理すべきスタンプを瞬時に切り替えるようにしたため、ポリゴンの外部にあるスタンプを無駄に処理するおそれがなくなり、効率的なラスタライズ処理が可能になる。
【選択図】 図3
Description
Ib:a1・x+b1・y+c1 …(2)
Ic:a2・x+b2・y+c2 …(3)
現在のスタンプの位置は、図2に示すように、スタンプ内の左下のピクセル(代表点)の座標で表される。ラスタライズ処理では、スタンプを順次移動させて、各スタンプがポリゴンの内部に存在するか否かを判定する。具体的には、図2に示すように、現在のスタンプの脇に位置する先行点の座標を(1)〜(3)式の直線方程式に与えて得られた値により、現在のスタンプがポリゴンの内部に存在するか否かを判定する。このような内外判定処理を、スタンプを上下左右に1つずつ動かしながら行うが、そのたびごとに直線方程式を計算するのは処理負担が大きい。
図3は本発明の第1の実施形態に係る画像処理装置の概略構成を示すブロック図である。この画像処理装置は、例えばグラフィックプロセッサに内蔵され、頂点データからピクセルデータに変換するラスタライズ処理を行う。
スレッドth1のACCレジスタ13とSaveレジスタ14には、スタンプ1の先行点の直線方程式の値が格納され、XYコンテキスト部12のXレジスタとYレジスタにはスタンプ1の代表点の座標(X,Y)が格納され、XSaveレジスタ61には代表点のX座標が格納されている。
XY計算部4は、Y+Δyの計算を行う。また、3つの直線方程式計算部3はそれぞれ、Ia+dIadyの加算を行い、その計算結果を出力する。
エッジ判定部5は、3つの直線方程式計算部3の出力値の符号を調べて、それらがすべて正であれば、先行点はポリゴンの内部にあり、一つでも負の値があれば、ポリゴンの外部にあると判断する。計算された直線方程式の値は、スタンプ2の先行点のものであるため、図7のポリゴンの場合、すべて正の値になり、ポリゴンの内部にあると判定される。そこで、次は、スタンプ5の位置までX方向に移動することが決定される。
(2-1) スレッドth1、スタンプ1、X方向移動、ステージA(図8のサイクルt2)
スレッドth1のACCレジスタ13とSaveレジスタ14には、スタンプ1の直線方程式の先行点の値が格納され、XYコンテキスト部12のXレジスタ62とYレジスタ63には代表点のX,Yレジスタ62,63が格納されている。また、XSaveレジスタ61には、スタンプ1の代表点のX座標が格納されている。X方向に移動するため、Xレジスタ62の値、ΔxおよびACCレジスタ13の値が出力される。DDA制御部6は、スレッドth1の出力を選択する。
XY計算部4は、X+Δxの計算を行う。また、3つの直線方程式計算部3はそれぞれ、Ia+dIa/dxの計算を行い、その計算結果を出力する。
エッジ判定部5は、3つの直線方程式計算部3の出力値の符号を調べる。この場合、移動後のスタンプ3の先行点における直線方程式の値を調べる。この結果、ポリゴンの外側にあると判定され、その旨のフラグがセットされる。
この場合、X方向の移動であるため、スレッドth2を(2)と同様にして動作させる。移動後のスタンプ4の先行点はポリゴンの内部に位置するため、ステージCの処理が(2-3)と異なる。
この場合、3つの直線方程式計算部3の出力はすべて正になる。このため、直線方程式の値がACCレジスタ13に格納され、スタンプ4のX座標がXレジスタ62に格納される。
上述した(2-3)において、スタンプ3の先行点がポリゴンの外部にある旨のフラグがセットされているため、スレッドth1はY方向への移動を行う。
Y方向への移動を指示するフラグがセットされているため、スレッドth1は、Saveレジスタ14に格納されている直線方程式の値(スタンプ1の先行点の値)を出力する。また、XYコンテキスト部12は、Yレジスタ63の値とΔyを出力する。また、傾きコンテキスト部11はdIadyを出力する。
XY計算部4は、Y+Δyを計算する。3つの直線方程式計算部3はそれぞれIa+dIa/dyを計算し、その計算結果を出力する。
エッジ判定部5は、移動後の先行点が三角形の内部にあると判定し、直線方程式の値をスレッドth1のACCレジスタ13とSaveレジスタ14に格納する。Saveレジスタ14に格納するのは、ポリゴンの内部にあると判定したためである。次に、加算したY座標値をスレッドth1のYレジスタ63に格納する。また、XSaveレジスタ61の値をXレジスタ62に、Xレジスタ62の値をXSaveレジスタ61に格納する。
第2の実施形態は、隣接するポリゴンに別個のスレッドを割り当てて、各スタンプの処理を行う。
第3の実施形態は、ポリゴンを形成する3つの直線方程式のうち2つ(以下、開始辺と終了辺)に沿って、スタンプごとに処理を行うものである。
2 コンテキスト部
3 直線方程式計算部
4 XY計算部
5 エッジ判定部
6 DDA制御部
7 マスク生成部
11 傾きコンテキスト部
12 XYコンテキスト部
13 ACCレジスタ
14 Saveレジスタ
15 マルチプレクサ
16 dI/dyレジスタ
17 マルチプレクサ
18 加算器
19 内外判定器
21 ホストプロセッサ
22 グラフィックプロセッサ
23 メインメモリ
24 I/Oプロセッサ
31 メインプロセッサ
32 信号処理部
33,34,35 I/O部
41 コントローラ
42,43 I/O部
44 画像処理ユニット
45 画像処理装置
46 演算ユニット
47 メモリ
48 ローカルネットワーク
Claims (9)
- 複数の直線方程式のそれぞれに対応して複数個ずつ設けられ、隣接する複数画素からなるスタンプに関連する座標を対応する直線方程式に入力して得られる値を格納可能なスタンプ情報格納手段と、
複数の直線方程式のそれぞれに対応して設けられ、複数個の前記スタンプ情報格納手段に格納された情報の一つを交互に選択する情報選択手段と、
複数の直線方程式のそれぞれに対応して設けられ、前記情報選択手段にて選択された情報を用いて現在のスタンプに関連する座標を対応する前記直線方程式に入力して計算を行い、該計算結果を対応する前記スタンプ情報格納手段に格納する直線方程式演算手段と、
複数の直線方程式のそれぞれに対応する前記直線方程式演算手段の演算結果に基づいて、現在のスタンプに隣接する次のスタンプが複数の直線方程式で囲まれる領域の内側にあるか否かを判定する内外判定手段と、
現在のスタンプ内の代表画素の座標を計算する座標計算手段と、を備えることを特徴とする画像処理装置。 - 前記スタンプ情報格納手段は、
現在のスタンプを第1方向に1スタンプ分移動させた場合の直線方程式の値を格納する第1の値格納手段と、
現在のスタンプを第2方向に1スタンプ分移動させた場合の直線方程式の値を格納する第2の値格納手段と、
前記内外判定手段の判定結果に基づいて、前記第1および第2の値格納手段のいずれかに格納された値を選択して出力する値選択手段と、を有することを特徴とする請求項1に記載の画像処理装置。 - 前記スタンプ情報格納手段による格納処理と、前記直線方程式演算手段による演算処理および前記内外判定手段による判定処理とは並行して行われることを特徴とする請求項1または2に記載の画像処理装置。
- 前記直線方程式のX方向の傾きおよびY方向の傾きを格納する傾き格納手段を備え、
前記情報選択手段は、前記内外判定手段の判定結果に基づいて、前記傾き格納手段に格納されたX方向またはY方向の傾きを選択し、
前記直線方程式演算手段は、前記情報選択手段にて選択されたX方向またはY方向の傾きと、前記情報選択手段にて選択されたいずれかの前記スタンプ情報格納手段に格納された情報と、を加算して、現在のスタンプに関する直線方程式の演算を行うことを特徴とする請求項1乃至3のいずれかに記載の画像処理装置。 - 前記複数の直線方程式のそれぞれに対応する前記直線方程式演算手段の演算結果に基づいて、現在のスタンプ内のすべての画素の座標値およびパラメータを計算する画素情報計算手段を備えることを特徴とする請求項1乃至4のいずれかに記載の画像処理装置。
- 前記パラメータは、RGBの階調値と、透過率情報と、奥行き情報と、テクスチャー座標と、法線ベクトルとを含むことを特徴とする請求項5に記載の画像処理装置。
- 第1方向に隣接する1列分のスタンプに関する直線方程式の値と、該1列に第2方向に隣接する1列分のスタンプに関する直線方程式の値とは、それぞれ別個の前記スタンプ情報格納手段に格納されることを特徴とする請求項1乃至6のいずれかに記載の画像処理装置。
- 複数のポリゴンに含まれるスタンプに関する直線方程式の値は、それぞれ別個の前記スタンプ情報格納手段に格納されることを特徴とする請求項1乃至7のいずれかに記載の画像処理装置。
- ポリゴンの頂点データを供給する頂点データ供給装置と、
前記頂点データに基づいて、画素ごとの座標値およびパラメータを生成する画像処理装置と、
前記座標値およびパラメータを格納する記憶装置と、を備えた画像処理システムにおいて、
前記画像処理装置は、
複数の直線方程式のそれぞれに対応して複数個ずつ設けられ、隣接する複数画素からなるスタンプに関連する座標を対応する直線方程式に入力して得られる値を格納可能なスタンプ情報格納手段と、
複数の直線方程式のそれぞれに対応して設けられ、複数個の前記スタンプ情報格納手段に格納された情報の一つを交互に選択する情報選択手段と、
複数の直線方程式のそれぞれに対応して設けられ、前記情報選択手段にて選択された情報を用いて現在のスタンプに関連する座標を対応する前記直線方程式に入力して計算を行い、該計算結果を対応する前記スタンプ情報格納手段に格納する直線方程式演算手段と、
複数の直線方程式のそれぞれに対応する前記直線方程式演算手段の演算結果に基づいて、現在のスタンプに隣接する次のスタンプが複数の直線方程式で囲まれる領域の内側にあるか否かを判定する内外判定手段と、
現在のスタンプ内の代表画素の座標を計算する座標計算手段と、を備えることを特徴とする画像処理システム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004120603A JP4030519B2 (ja) | 2004-04-15 | 2004-04-15 | 画像処理装置および画像処理システム |
US10/952,827 US20050259100A1 (en) | 2004-04-15 | 2004-09-30 | Graphic processing apparatus, graphic processing system, graphic processing method and graphic processing program |
TW093140131A TWI282518B (en) | 2004-04-15 | 2004-12-22 | Graphic processing apparatus, graphic processing system, graphic processing method and graphic processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004120603A JP4030519B2 (ja) | 2004-04-15 | 2004-04-15 | 画像処理装置および画像処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005301902A true JP2005301902A (ja) | 2005-10-27 |
JP4030519B2 JP4030519B2 (ja) | 2008-01-09 |
Family
ID=35333314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004120603A Expired - Fee Related JP4030519B2 (ja) | 2004-04-15 | 2004-04-15 | 画像処理装置および画像処理システム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20050259100A1 (ja) |
JP (1) | JP4030519B2 (ja) |
TW (1) | TWI282518B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8031208B2 (en) | 2005-12-26 | 2011-10-04 | Kabushiki Kaisha Toshiba | Drawing apparatus and method for processing plural pixels in parallel |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8692844B1 (en) | 2000-09-28 | 2014-04-08 | Nvidia Corporation | Method and system for efficient antialiased rendering |
US8732644B1 (en) | 2003-09-15 | 2014-05-20 | Nvidia Corporation | Micro electro mechanical switch system and method for testing and configuring semiconductor functional circuits |
US8872833B2 (en) | 2003-09-15 | 2014-10-28 | Nvidia Corporation | Integrated circuit configuration system and method |
US8775997B2 (en) | 2003-09-15 | 2014-07-08 | Nvidia Corporation | System and method for testing and configuring semiconductor functional circuits |
US8711161B1 (en) | 2003-12-18 | 2014-04-29 | Nvidia Corporation | Functional component compensation reconfiguration system and method |
US8723231B1 (en) | 2004-09-15 | 2014-05-13 | Nvidia Corporation | Semiconductor die micro electro-mechanical switch management system and method |
US8711156B1 (en) | 2004-09-30 | 2014-04-29 | Nvidia Corporation | Method and system for remapping processing elements in a pipeline of a graphics processing unit |
US8427496B1 (en) | 2005-05-13 | 2013-04-23 | Nvidia Corporation | Method and system for implementing compression across a graphics bus interconnect |
US8698811B1 (en) | 2005-12-15 | 2014-04-15 | Nvidia Corporation | Nested boustrophedonic patterns for rasterization |
US8390645B1 (en) | 2005-12-19 | 2013-03-05 | Nvidia Corporation | Method and system for rendering connecting antialiased line segments |
US9117309B1 (en) | 2005-12-19 | 2015-08-25 | Nvidia Corporation | Method and system for rendering polygons with a bounding box in a graphics processor unit |
US8928676B2 (en) | 2006-06-23 | 2015-01-06 | Nvidia Corporation | Method for parallel fine rasterization in a raster stage of a graphics pipeline |
US8477134B1 (en) | 2006-06-30 | 2013-07-02 | Nvidia Corporation | Conservative triage of polygon status using low precision edge evaluation and high precision edge evaluation |
US8427487B1 (en) | 2006-11-02 | 2013-04-23 | Nvidia Corporation | Multiple tile output using interface compression in a raster stage |
US8482567B1 (en) | 2006-11-03 | 2013-07-09 | Nvidia Corporation | Line rasterization techniques |
US8724483B2 (en) | 2007-10-22 | 2014-05-13 | Nvidia Corporation | Loopback configuration for bi-directional interfaces |
US8063903B2 (en) * | 2007-11-09 | 2011-11-22 | Nvidia Corporation | Edge evaluation techniques for graphics hardware |
US9064333B2 (en) * | 2007-12-17 | 2015-06-23 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US8780123B2 (en) | 2007-12-17 | 2014-07-15 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US8923385B2 (en) | 2008-05-01 | 2014-12-30 | Nvidia Corporation | Rewind-enabled hardware encoder |
US8681861B2 (en) | 2008-05-01 | 2014-03-25 | Nvidia Corporation | Multistandard hardware video encoder |
TWI416345B (zh) * | 2009-09-15 | 2013-11-21 | Chii Ying Co Ltd | Data representation of the correlation values of the data set, computer program products and devices |
US20110063306A1 (en) | 2009-09-16 | 2011-03-17 | Nvidia Corporation | CO-PROCESSING TECHNIQUES ON HETEROGENEOUS GPUs INCLUDING IDENTIFYING ONE GPU AS A NON-GRAPHICS DEVICE |
US9530189B2 (en) | 2009-12-31 | 2016-12-27 | Nvidia Corporation | Alternate reduction ratios and threshold mechanisms for framebuffer compression |
US9331869B2 (en) | 2010-03-04 | 2016-05-03 | Nvidia Corporation | Input/output request packet handling techniques by a device specific kernel mode driver |
US9171350B2 (en) | 2010-10-28 | 2015-10-27 | Nvidia Corporation | Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up |
US9218678B2 (en) * | 2011-04-25 | 2015-12-22 | Intel Corporation | Multi-view rasterization using an analyticl visibility function |
US9607407B2 (en) | 2012-12-31 | 2017-03-28 | Nvidia Corporation | Variable-width differential memory compression |
US9591309B2 (en) | 2012-12-31 | 2017-03-07 | Nvidia Corporation | Progressive lossy memory compression |
US9710894B2 (en) | 2013-06-04 | 2017-07-18 | Nvidia Corporation | System and method for enhanced multi-sample anti-aliasing |
GB2570172B (en) * | 2018-06-29 | 2020-02-12 | Imagination Tech Ltd | Conservative Rasterization Using Gradients |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6504542B1 (en) * | 1999-12-06 | 2003-01-07 | Nvidia Corporation | Method, apparatus and article of manufacture for area rasterization using sense points |
JP4568950B2 (ja) * | 2000-02-29 | 2010-10-27 | ソニー株式会社 | グラフィックス描画装置 |
JP3840966B2 (ja) * | 2001-12-12 | 2006-11-01 | ソニー株式会社 | 画像処理装置およびその方法 |
-
2004
- 2004-04-15 JP JP2004120603A patent/JP4030519B2/ja not_active Expired - Fee Related
- 2004-09-30 US US10/952,827 patent/US20050259100A1/en not_active Abandoned
- 2004-12-22 TW TW093140131A patent/TWI282518B/zh not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8031208B2 (en) | 2005-12-26 | 2011-10-04 | Kabushiki Kaisha Toshiba | Drawing apparatus and method for processing plural pixels in parallel |
Also Published As
Publication number | Publication date |
---|---|
TWI282518B (en) | 2007-06-11 |
JP4030519B2 (ja) | 2008-01-09 |
TW200537393A (en) | 2005-11-16 |
US20050259100A1 (en) | 2005-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4030519B2 (ja) | 画像処理装置および画像処理システム | |
US8339409B2 (en) | Tile-based graphics system and method of operation of such a system | |
JP4824687B2 (ja) | 図形データのキャッシュ効率的なラスター化 | |
JP5518967B2 (ja) | グラフィック・パフォーマンス改善のための方法、装置およびコンピュータ・プログラム・プロダクト | |
EP3471059B1 (en) | Geometry to tiling arbiter for tile-based rendering system | |
JP4938850B2 (ja) | 拡張型頂点キャッシュを備えたグラフィック処理装置 | |
US7161603B2 (en) | Image rendering device and image rendering method | |
US20080100618A1 (en) | Method, medium, and system rendering 3D graphic object | |
JP5634104B2 (ja) | タイルベースのレンダリング装置および方法 | |
JP2008097583A (ja) | グラフィックスパイプラインにおけるタイルベース精度のラスタライズ | |
US9600747B2 (en) | Image forming apparatus and control method that execute a plurality of rendering processing units in parallel | |
US10262391B2 (en) | Graphics processing devices and graphics processing methods | |
JP2007026285A (ja) | 画像処理装置および画像処理プログラム | |
US10593111B2 (en) | Method and apparatus for performing high throughput tessellation | |
JP5304443B2 (ja) | 描画データ処理方法、図形描画システム、及び図形描画データ作成プログラム | |
JP4325812B2 (ja) | ベクター画像描画回路およびベクター画像描画方法 | |
Ma et al. | Rasterization of geometric primitive in graphics based on FPGA | |
JP4863306B2 (ja) | ベクターイメージ描画装置、ベクターイメージ描画方法およびプログラム | |
JP4042377B2 (ja) | 画像処理装置、および画像処理方法、並びにコンピュータ・プログラム | |
Xue et al. | An improved midpoint rasterization algorithm implemented in FPGA | |
KR20230028458A (ko) | 다중 샘플 안티-앨리어싱을 위한 로드 명령어 | |
WO2021262370A1 (en) | Fine grained replay control in binning hardware | |
JP2006031160A (ja) | グラフィックオブジェクト処理方法 | |
JP2006190135A (ja) | 画像生成方法および画像生成装置 | |
JP2011128720A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070619 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070820 |
|
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: 20071009 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071016 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101026 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111026 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111026 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121026 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131026 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |