JPH08212357A - 補間装置および補間方法、並びに画像生成装置 - Google Patents
補間装置および補間方法、並びに画像生成装置Info
- Publication number
- JPH08212357A JPH08212357A JP7304870A JP30487095A JPH08212357A JP H08212357 A JPH08212357 A JP H08212357A JP 7304870 A JP7304870 A JP 7304870A JP 30487095 A JP30487095 A JP 30487095A JP H08212357 A JPH08212357 A JP H08212357A
- Authority
- JP
- Japan
- Prior art keywords
- texture
- pixel
- interpolation
- pixels
- address
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
Abstract
能な補間装置を提供する。 【解決手段】 補間装置は、複数の画素を含むテクスチ
ャを格納する第1の原画像格納部207と、そのテクス
チャに対する参照点の位置にかかわらず、そのテクスチ
ャに含まれる所定の数の画素に関連する情報を補間処理
部204に供給する画素値供給部203と、その所定の
数の画素に関連する情報に基づいて補間画素データを計
算することにより、補間処理を実行する補間処理部20
4とを備えている。
Description
ングや画像のスケーリングなどの画像処理、コンピュー
タグラフィックスにおいて、高画質な画像を得るために
内挿補間処理を実行する補間装置および補間方法、並び
にその補間装置を含む画像生成装置に関する。
ゲーム機などの分野では、テクスチャマッピングによ
り、ポリゴンレンダリングを行っているものが多い。通
常、インバースマップと呼ばれるテクスチャマッピング
手法では、スクリーン座標(Xs,Ys)からテクスチ
ャパターンの座標(u,v)が計算され、その座標
(u,v)に対応する色が取得される。計算により得ら
れる座標(u,v)は小数部を有するのに対し、実際の
テクスチャパターンは、座標(u,v)が整数値となる
有限個の格子点上でしか定義されていない。このため、
計算により得られる小数部を有する座標(u,v)を単
に整数に丸めたのでは、テクスチャマッピングにより綺
麗な画像を得ることはできない。折り返しひずみなどの
影響を受けるからである。この格子点間のテクスチャ情
報をどのように補間するかによって、生成画像に差が現
れる。すなわち、テクスチャマッピングにおいてテクス
チャ情報を内挿補間することにより高画質な画像を生成
することができる。
辺に位置する画素の画素値を用いて、サンプル点の画素
値を算出するものである。サンプル点の周辺に位置する
画素とは、サンプル点を中心とし、半径1画素の円の領
域内に存在する画素を表す。この補間処理にはいくつか
の手法がある。高画質な画像を生成することができる手
法としては、例えば、バイリニア補間処理が知られてい
る(George Wolberg,"Digital Image Warping", IEEE C
omputer Society Press発行, 1990, pp147-pp149)。
テクスチャパターンのサイズは比較的大きかったので、
そのテクスチャパターンの境界部分の画素データをどの
ように扱うかは考慮されていなかった。
セスが高速であり、かつ、高画質な画像を生成するため
に使用される補間装置および補間方法、並びに画像生成
装置を提供することにある。
数の画素を含むテクスチャを格納する第1格納手段と、
該テクスチャに対する参照点の位置にかかわらず、該テ
クスチャに含まれる所定の数の画素に関連する情報を提
供する提供手段と、該所定の数の画素に関連する情報に
基づいて補間画素データを計算することにより、補間処
理を実行する補間処理手段とを備えており、これによ
り、上記目的が達成される。
されているテクスチャから、処理の対象となる第1テク
スチャより少なくとも周囲1画素だけ大きい第2テクス
チャを切り出す切り出し手段と、該第2テクスチャを格
納する第2格納手段と、該第1テクスチャに対する参照
点の位置に応じて、該第2格納手段に格納されている第
2テクスチャの画素にアクセスするためのアドレスを生
成するアドレス生成手段とを備えていてもよい。
るように切り出されてもよい。
されているテクスチャのうち少なくとも一部を含む第1
テクスチャを、該第1テクスチャより少なくとも周囲1
画素だけ大きい第2テクスチャに変換するテクスチャ変
換手段と、該第2テクスチャを格納する第2格納手段
と、該第1テクスチャに対する参照点の位置に応じて、
該第2格納手段に格納されている第2テクスチャの画素
にアクセスするためのアドレスを生成するアドレス生成
手段とを備えていてもよい。
スチャの境界部分の画素を、前記第1テクスチャの周囲
に複写する手段を備えていてもよい。
スチャの周囲に所定の固定値を挿入する手段を備えてい
てもよい。
てもよい。
表す値であってもよい。
されているテクスチャのうち少なくとも一部を含む第1
テクスチャを格納する第2格納手段と、該第1テクスチ
ャを該第2格納手段に転送する転送手段と、該第1テク
スチャに対する参照点の位置に応じて、該第2格納手段
に格納されている第1テクスチャの画素にアクセスする
ためのアドレスを生成するアドレス生成手段とを備えて
いてもよい。
ップ上に形成され、前記第1格納手段は該第1のチップ
とは異なる第2のチップ上に形成されてもよい。
りも高速に動作するメモリであってもよい。
クスチャに対する参照点の位置にかかわらず、該テクス
チャに含まれる所定の数の画素に関連する情報を提供す
るステップと、該所定の数の画素に関連する情報に基づ
いて補間画素データを計算することにより、補間処理を
実行するステップとを包含しており、これにより、上記
目的が達成される。
スチャから、処理の対象となる第1テクスチャより少な
くとも周囲1画素だけ大きい第2テクスチャを切り出す
ステップと、該第1テクスチャに対する参照点の位置に
応じて、該第2テクスチャの画素にアクセスするための
アドレスを生成するステップとを包含してもよい。
るように切り出されれてもよい。
スチャのうち少なくとも一部を含む第1テクスチャを、
該第1テクスチャより少なくとも周囲1画素だけ大きい
第2テクスチャに変換するステップと、該第1テクスチ
ャに対する参照点の位置に応じて、該第2テクスチャの
画素にアクセスするためのアドレスを生成するステップ
とを包含してもよい。
の境界部分の画素を、前記第1テクスチャの周囲に複写
するステップを包含してもよい。
の周囲に所定の固定値を挿入するステップを包含しても
よい。
てもよい。
表す値であってもよい。
スチャのうち少なくとも一部を含む第1テクスチャに対
する参照点の位置に応じて、該第1テクスチャの画素に
アクセスするためのアドレスを生成するステップを包含
してもよい。
リゴンにマッピングすることにより、画像を生成する画
像生成装置であって、複数の画素を含むテクスチャを格
納する手段と、ポリゴン平面上の点の座標をテクスチャ
平面上の点の座標に変換する手段と、該テクスチャ平面
上の点の座標の値にかかわらず、該テクスチャに含まれ
る所定の数の画素に関連する情報を提供する手段と、該
所定の数の画素に関連する情報に基づいて補間画素デー
タを計算することにより、補間処理を実行する手段と、
該補間画素データに基づいて、画像を生成する手段とを
備えており、これにより、上記目的が達成される。
実施の形態を説明する。
ピングによりポリゴンを描画するシステム100の構成
を示す。システム100は、プロセッサ1と、メインメ
モリ2と、レンダリングプロセッサ3と、ピクセルメモ
リ4と、デジタルアナログコンバータ(DAC)5と、
モニタ6とを有している。システム100は、システム
バス7をさらに有している。プロセッサ1とメインメモ
リ2とレンダリングプロセッサ3とピクセルメモリ4と
はシステムバス7に接続されている。入出力装置(不図
示)もまたシステムバス7に接続され得る。
行うための三次元図形処理の幾何演算、レンダリングプ
ロセッサ3およびDAC5の動作の制御、並びにシステ
ム全体の動作の制御を行う。
実行されるプログラムや、不透明処理やテクスチャマッ
ピングなどの各処理に必要とされるデータを格納する。
そのようなデータには、ポリゴンデータが含まれる。
モリ4に格納される画像に含まれる各画素ごとにその画
素の色を表す画素データを計算することにより、ポリゴ
ンを表す画像を生成する。レンダリングプロセッサ3に
よって生成される画像もまたピクセルメモリ4に格納さ
れる。このようにして、レンダリングプロセッサ3によ
ってポリゴンの描画が達成される。レンダリングプロセ
ッサ3の動作は、プロセッサ1によって制御される。
セッサ3による描画の対象となる画像のほか、その画像
の画素データを計算するために使用される原画像(テク
スチャ)が格納される。
れた画像は、DAC5を介してモニタ6に出力される。
このようにして、ポリゴンを表す画像がモニタ6上に表
示される。
ピクセルメモリ4の構成を示す。レンダリングプロセッ
サ3は、DDA(Digital differential analyzer)係数
演算部201と、マッピングアドレス生成部202と、
画素値供給部203と、補間処理部204と、合成処理
部205とを含んでいる。ピクセルメモリ4は、レンダ
リングプロセッサ3によって生成された画像を格納する
生成画像格納部206と、その画像を生成するために使
用される原画像(テクスチャ)を格納する第1の原画像
格納部207とを含んでいる。
系で表されるポリゴンの頂点の座標(x,y,z)とu
v座標系で表されるテクスチャの頂点の座標(u,v)
との間の関係がシステムバス7を介して供給される。例
えば、その関係は、u=f(x,y)およびv=g
(x,y)という関数の形式で与えられる。DDA係数
演算部201は、入力されるポリゴンの頂点の座標とテ
クスチャの頂点の座標との関係に基づいて、DDA係数
を生成する。DDA係数は、y方向の微分係数(du/
dy,dv/dy)と、x方向の偏微分係数(∂u/∂
x,∂v/∂x)とからなる。DDA係数演算部201
によって生成されたDDA係数は、マッピングアドレス
生成部202に供給される。
A係数に基づいてポリゴンの座標(x,y)を生成する
xy−DDA処理部211と、DDA係数に基づいてそ
のポリゴンの属性値を生成するアルファ−DDA処理部
212と、DDA係数に基づいてそのポリゴンの座標
(x,y)に対応するテクスチャの座標(u,v)を生
成するuv−DDA処理部213とを含んでいる。例え
ば、アルファ−DDA処理部212によって生成される
ポリゴンの属性値は、1つの画素が占める面積のうちそ
のポリゴンが占める面積の割合(面積寄与率)であり得
る。
DDA処理は、y方向の微分係数とx方向の偏微分係数
と初期値(ポリゴンの頂点の座標)とに基づいて行われ
る。例えば、uv−DDA処理部213は、y方向の微
分係数とx方向の偏微分係数と初期値(ポリゴンの頂点
の座標)とに基づいて、第1の原画像格納部207に格
納されている原画像(テクスチャ)に対する参照点を示
す座標(u,v)を生成する。第1の原画像格納部20
7に格納されている原画像(テクスチャ)の参照点を示
す座標(u,v)は、以下に説明するようにして得られ
る。
標は、複数のスキャンラインのそれぞれについて(数
1)の漸化式を適用することによって計算される。(数
1)における(u(n+1),v(n+1))は、(u
(n),v(n))に対して1つ下のスキャンライン上
のポリゴンのエッジにおけるテクスチャの座標を表す。
内部(以下、「スパン」という)におけるテクスチャの
座標は、(数2)の漸化式によって計算される。(数
2)における(u(n+1),v(n+1))は、(u
(n),v(n))に対してスパン方向に1画素となり
の点におけるテクスチャの座標を表す。
部213によって生成されるテクスチャの座標(u,
v)の値にかかわらず、所定数の画素の座標およびその
所定数の画素の値を補間処理部204に供給する。
部213から供給されるテクスチャの座標(u,v)が
参照アドレスとして供給される。また、補間処理部20
4には、画素値供給部203から所定数の画素の座標お
よびその所定数の画素の値が供給される。補間処理部2
04は、参照アドレス(u,v)の値に応じて、画素値
供給部203から供給される所定数の画素の値をそれぞ
れ重みづけすることにより補間画素データの値(P_g
en)を計算する。この処理をバイリニア補間処理とい
う。
(u,v)の近傍に4つの画素2110〜2140が配
置されている例を示す。この場合、画素値供給部203
(図2)によって、参照アドレス2100(u,v)の
近傍に位置する画素2110〜2140のそれぞれの座
標値と画素値とが補間処理部204に供給される。ここ
で、本明細書では、「参照アドレス(u,v)の近傍」
とは、そのテクスチャの座標(u,v)を中心とし、半
径1画素の円の範囲をいうと定義する。補間処理部20
4は、補間画素データの値(P_gen)を(数3)に
従って求める。
v0)、画素2110の画素値をa、画素2120の座
標値を(u0,v1)、画素2120の画素値をb、画
素2130の座標値を(u1,v1)、画素2130の
画素値をc、画素2140の座標値を(u1,v0)、
画素2140の画素値をdとする。
の近傍に位置する場合には、その参照アドレスを中心と
する半径1画素の円の範囲には4つの画素が存在しない
場合がある。本明細書では、参照アドレスを中心とする
半径1画素の円の範囲には4つの画素が存在しない領域
を「境界領域」といい、それ以外の領域を「中心領域」
という。
ントを画素の中心とした場合における中心領域(ハッチ
ング部分)と境界領域(ハッチング部分以外)とを示
す。すなわち、中心領域は、(数4)で示される。ここ
で、テクスチャのサイズはm×n画素である。
ントを画素の左上点(すなわち、画素を表す座標系の原
点に最も近い画素の点)とした場合における中心領域
(ハッチング部分)と境界領域(ハッチング部分以外)
とを示す。すなわち、中心領域は、(数5)で示され
る。ここで、テクスチャのサイズはm×n画素である。
クスチャは4×4画素からなり、各画素は小さな四角形
で表されている。
クスチャの中心領域内にあるか境界領域内にあるかにか
かわらず、補間処理部204に所定数の画素の座標値と
その所定数の画素の画素値とを供給する。
08と第2の原画像格納部209と原画像格納制御部2
10とを含んでいる。
理部213によって生成されるテクスチャの座標(u,
v)に応じて、第2の原画像格納部209に格納される
テクスチャの画素をアクセスするためのアドレスを生成
する。
像格納部207に格納されているレンダリングの対象と
なる原画像(テクスチャ)の一部又は全部を格納する。
レンダリングプロセッサ3を1つのチップ上に形成し、
第1の原画像格納部207を別のチップ上に形成しても
よい。例えば、レンダリングプロセッサ3は1つのLS
Iとして実装され得る。また、第1の原画像格納部20
7を外部メモリとして実装され得る。この場合には、第
2の原画像格納部209は、第1の原画像格納部207
のキャッシュ/バッファの役割を果たす。従って、第2
の原画像格納部209は、第1の原画像格納部207よ
り高速に動作するメモリであることが好ましい。これに
より、第2の原画像格納部209に格納されているテク
スチャへのアクセスはLSI内部におけるアクセスとな
る。その結果、テクスチャへの高速なアクセスが可能と
なり、レンダリングプロセッサ3(LSI)と第1の原
画像格納部207(外部メモリ)との間のバスボトルネ
ックが解消される。
格納部207に格納されている原画像(テクスチャ)の
うち少なくとも一部を切り出して、その切り出した原画
像(テクスチャ)を第2の原画像格納部209に転送す
る。
に格納されている原画像(テクスチャ)301の例を示
す。この例では、テクスチャ301は16×16画素か
ら構成されており、テクスチャマッピングを行う最小単
位は4×4画素であると仮定する。従って、テクスチャ
301は、16個の4×4画素に分割されている。例え
ば、テクスチャ302(図5(b))は、(u,v)=
(4,4)、(4,8)、(8,8)、(8,4)に囲
まれる4×4画素のテクスチャである。また、テクスチ
ャ304(図5(b))は、(u,v)=(0,1
2)、(0,16)、(4,16)、(4,12)に囲
まれる4×4画素のテクスチャである。テクスチャマッ
ピングを行う最小単位は、第2の原画像格納部209に
格納可能なテクスチャのサイズに応じて決定される。以
下の説明では、第2の原画像格納部209に格納可能な
テクスチャのサイズは、テクスチャマッピングを行う最
小単位である4×4画素より周囲1画素分だけ大きい6
×6画素であると仮定する。
るポリゴン401の例を示す。ポリゴン401にはテク
スチャ301(図5(a))がテクスチャマッピングさ
れる。ポリゴン401もテクスチャ301と同様に16
個のポリゴンに分割される。分割ポリゴン402は、テ
クスチャ302に対応し、分割ポリゴン403は、テク
スチャ304に対応する。
格納部207に格納されているテクスチャ301から、
テクスチャ302より周囲1画素分だけ大きいテクスチ
ャ303(図5(c))を切り出して、その切り出した
テクスチャ303を第2の原画像格納部209に転送す
る。テクスチャ303は、(u,v)=(3,3)、
(3,9)、(9,9)、(9,3)に囲まれる6×6
画素のテクスチャである。テクスチャ301からテクス
チャ303を切り出す処理は、テクスチャ302がテク
スチャ301の境界領域を含まない場合における原画像
格納制御部210による処理の一例である。なお、テク
スチャ301から、テクスチャ302より周囲2画素以
上大きいテクスチャを切り出すようにしてもよい。
格納部207に格納されているテクスチャ301から、
テクスチャ304より周囲1画素分だけ大きいテクスチ
ャ305(図5(c))を切り出して、その切り出した
テクスチャ305を第2の原画像格納部209に転送す
る。テクスチャ305は、(u,v)=(0,11)、
(0,16)、(5,16)、(5,11)に囲まれる
5×5画素のテクスチャ部分と、(u,v)=(15,
11)、(15,16)、(16,16)、(16,1
1)に囲まれる5×1画素のテクスチャ部分と、(u,
v)=(0,0)、(0,1)、(5,1)、(5,
0)に囲まれる1×5画素のテクスチャ部分と、(u,
v)=(15,0)、(15,1)、(16,1)、
(16,0)に囲まれる1画素のテクスチャ部分とから
構成される。このようなテクスチャ305の構成は、テ
クスチャはトーラス状に形成されているという事実に基
づいている。テクスチャ301からテクスチャ305を
切り出す処理は、テクスチャ304がテクスチャ301
の境界領域を含む場合における原画像格納制御部210
による処理の一例である。なお、テクスチャ301か
ら、テクスチャ304より周囲2画素以上大きいテクス
チャを切り出すようにしてもよい。
り出し処理についてさらに詳しく説明する。この切り出
し処理は、原画像格納制御部210によって実行され
る。
画素であり、切り出されるテクスチャのサイズが6×6
画素である場合における切り出し処理の手順を示す。
マッピングの対象となる分割テクスチャ302(30
4)の原点に最も近い座標点を示す。(cut_u,c
ut_v)は、テクスチャ301から切り出されるべき
テクスチャ303(305)の原点に最も近い座標点を
示す。(H,W)は、テクスチャ301の高さおよび幅
を示す。ここで、H、Wは2のべき乗とする。(i,
j)は、切り出し処理を制御するためのカウンタを示
す。iは切り出すべきテクスチャ303(305)のu
座標方向の画素数をカウントするためのカウンタであ
り、jは切り出すべきテクスチャ303(305)のv
座標方向の画素数をカウントするためのカウンタであ
る。記号”&”は論理積演算を示し、記号”^”は排他
的論理和演算を示す。
プ609は1つのループを形成する。このループは、切
り出すべきテクスチャ303(305)のu座標方向の
座標を計算するために使用される。ステップ602から
ステップ611はもう1つのループを形成する。このル
ープは、切り出すべきテクスチャ303(305)のv
座標方向の座標を計算するために使用される。
を各ステップごとに詳細に説明する。
れる。また、内部カウンタ(i,j)が初期化される。
内部カウンタ(i,j)はそれぞれu座標方向およびv
座標方向のカウンタである。
クスチャ303(305)のv座標cut_vが計算さ
れる。
いて計算されたcut_vの値がテクスチャ301の範
囲にあるか否かが判定される。cut_vの値がテクス
チャ301の範囲にある場合には、処理はステップ60
5に進む。cut_vの値がテクスチャ301の範囲に
ない場合には、処理はステップ604を経由してステッ
プ605に進む。
ス状に形成されるようにcut_vの値が変換される。
様にして、切り出されるべきテクスチャ303(30
5)のu座標cut_uが計算される。
様にして、ステップ605において計算されたcut_
uの値がテクスチャ301の範囲にあるか否かが判定さ
れる。cut_uの値がテクスチャ301の範囲にある
場合には、処理はステップ608に進む。cut_uの
値がテクスチャ301の範囲にない場合には、処理はス
テップ607を経由してステップ608に進む。
様にして、テクスチャがトーラス状に形成されるように
cut_uの値が変換される。
タであるjが1だけインクリメントされる。
終了するか否かが判定される。
タであるiが1だけインクリメントされる。
終了するか否かが判定される。
ることにより、テクスチャがトーラス状に形成されてい
ることを考慮して、分割テクスチャ302(304)の
原点に最も近い座標点(u,v)から、テクスチャ30
2から切り出されるべきテクスチャ303(305)の
原点に最も近い座標点(cut_u,cut_v)を得
ることができる。
れば、分割ポリゴンに対応するテクスチャよりも少なく
とも周囲1画素分だけ大きいテクスチャが切り出され、
その切り出されたテクスチャが第2の原画像格納部20
9に格納される。その結果、第2の原画像格納部209
は、アドレス生成部208によって生成される参照アド
レスが第2の原画像格納部209に格納されているテク
スチャの境界領域内に位置するか否かにかかわらず、常
に、その参照アドレスの近傍に配置される4つの画素を
補間処理部204に提供することが可能となる。また、
レンダリングプロセッサ3を1つのLSI上に実装した
場合には、第2の原画像格納部209に格納されるテク
スチャへのアクセスを高速に行うことができるので、メ
モリボトルネックを解消することができる。さらに、単
一のテクスチャを複数のテクスチャに分割して、分割さ
れたテクスチャのそれぞれに対してテクスチャマッピン
グを行うことにより得られる画像の質は、単一のテクス
チャに対してテクスチャマッピングを行うことにより得
られる画像の質に比べて劣らない。
は、補間処理部204から補間画素データ(P_ge
n)が供給され、アルファ−DDA処理部212からそ
の補間画素データ(P_gen)の属性値(α_ge
n)が供給される。さらに、合成処理部205には、生
成画像格納部206から画素データ(P_acc_i
n)およびその画素データの属性値(α_acc_i
n)が供給される。合成処理部205は、これらの入力
に基づいて、生成画像の画素データ(P_acc_ou
t)およびその画素データの属性値(α_acc_ou
t)を生成する。合成処理部205によって生成された
生成画像の画素データ(P_acc_out)およびそ
の画素データの属性値(α_acc_out)は、生成
画像格納部206に格納される。この合成処理は、アル
ファブレンディングと呼ばれる。アルファブレンディン
グとは、補間処理部204から供給される補間画素デー
タと、生成画像格納部206に格納されている画素デー
タとを所定の混合率で合成する処理である。その所定の
混合率は、アルファ−DDA処理部212から供給され
る属性値と、生成画像格納部206に格納されている属
性値とに基づいて決定される。具体的には、合成処理部
205によるアルファブレンディングは、(数6)に従
って生成画像の画素データ(P_acc_out)およ
びその画素データの属性値(α_acc_out)を計
算することによって達成される。
データおよびその画素データの属性値を格納する。第1
の原画像格納部207は、レンダリングに使用される原
画像(テクスチャ)を格納する。生成画像格納部206
および第1の原画像格納部207としては、一般の大容
量メモリを使用することができる。生成画像格納部20
6および第1の原画像格納部207は、同一のバスを用
いて構成され得る。生成画像格納部206および第1の
原画像格納部207は、図1のピクセルメモリ4に相当
する。
生成画像が格納される。
態2を説明する。システム100の構成およびレンダリ
ングプロセッサ3の構成は、実施の形態1と同様であ
る。従って、ここではその説明を省略する。実施の形態
1と比較すると、原画像格納制御部210によって実行
される処理が異なる。
されるテクスチャの例を示す。原画像格納制御部210
は、テクスチャマッピングの対象となるテクスチャ(例
えば、4×4画素のテクスチャ)を第1の原画像格納部
207から読み出す。次に、原画像格納制御部210
は、読み出されたテクスチャの境界領域に位置する画素
をその境界領域の周囲に複写することにより、テクスチ
ャマッピングの対象となるテクスチャより周囲1画素分
だけ大きいテクスチャ(例えば、6×6画素のテクスチ
ャ)を生成する。あるいは、原画像格納制御部210
は、テクスチャマッピングの対象となるテクスチャより
周囲2画素以上大きいテクスチャを生成してもよい。こ
のようにして生成されたテクスチャが第2の原画像格納
部209に格納される。
ャ501は、図5(b)に示す4×4画素のテクスチャ
302の境界領域に位置する画素をその境界領域の周囲
に複写することにより得られる。図8に示す6×6画素
のテクスチャ502は、図5(b)に示す4×4画素の
テクスチャ304の境界領域に位置する画素をその境界
領域の周囲に複写することにより得られる。
9に格納されるテクスチャの周囲1画素を複写処理によ
り生成することにより、実施の形態1に比較して、若干
の画質劣化はあるものの、第1の原画像格納部207か
ら第2の原画像格納部209に転送される画素データの
量を削減することができる。
理についてさらに詳しく説明する。
されているテクスチャの一部であって、テクスチャマッ
ピングの対象となるテクスチャT0を示す。この例で
は、テクスチャT0は4×4画素からなり、テクスチャ
T0に含まれる各画素の画素値は配列T0[i][j]
に格納されていると仮定する。ここで、i=0,1,
2,3;j=0,1,2,3である。
テクスチャT0を図10に示されるテクスチャT1に変
換する。この例では、テクスチャT1は6×6(=(4
+2)×(4+2))画素からなる。また、テクスチャ
T1に含まれる各画素の画素値は配列T1[i][j]
に格納される。ここで、i=0,1,2,3,4,5;
j=0,1,2,3,4,5である。テクスチャT1
は、第2の原画像格納部209に格納される。
ャT1への変換は、(数7)に従って行われる。ここで
は、オリジナルテクスチャT0のサイズが4×4画素で
あるから、m=4、n=4である。
原画像参照アドレスを(u0,v0)、テクスチャT1
に対する非整数の原画像参照アドレスを(u1,v1)
とすると、テクスチャT0からテクスチャT1への変換
式(数7)により、(u1,v1)は、(数8)と表す
ことができる。
アドレスを生成し、そのアドレスを用いて第2の原画像
格納部209に格納されるテクスチャの画素にアクセス
する。その結果、補間処理部204には、(数10)に
示す画素データが入力される。(数10)において、外
側の括弧([])は配列を表し、内側の括弧([])は
ガウス記号を表す。
8)に示す参照アドレス(u1,v1)の一部を入力と
して、補間処理部204は、(数11)に従って補間画
素データ(P_gen)を生成する。以上の処理によ
り、テクスチャT1に対して参照アドレス(u1,v
1)を与えた場合、その補間画素データとして(数1
1)に示すP_genを得ることができる。
ス(u0,v0)を与えた場合に得られる補間画素デー
タP_gen’について説明する。テクスチャT0に対
して、バイリニア補間処理可能な参照アドレスの範囲
は、(数4)より(数12)となる。この場合、補間処
理に必要な4つの画素データは、(数13)によって与
えられる(図3参照)。従って、テクスチャT0に対し
て参照アドレス(u0,v0)を与えた場合、その補間
画素データとして(数14)に示すP_gen’を得る
ことができる((数11)参照)。
る、p、qは(数8)により一致することは自明であ
る。また、(数15)より、(数10)に示す画素デー
タと(数13)に示す画素データとは一致する。すなわ
ち、(数11)に示す補間画素データP_genと、
(数14)に示す補間画素データP_gen’とは、
(数12)に示す範囲において一致する。すなわち、補
間画素データとしても等しいデータを得ることができ
る。
(数12)に示す範囲外である場合について説明する。
ここでは、参照アドレス(u0,v0)が(数16)の
範囲にあったとする。
合、補間処理に必要とされる4つのテクスチャを揃える
ことは不可能である。しかし、本発明の画素値供給部2
03によれば、補間処理に用いるテクスチャデータとし
て(数10)を補間処理に用いることが可能となる。こ
れらのテクスチャデータは(数17)となる。
クスチャデータおよび参照アドレス(u1,v1)か
ら、補間画素データ(P_gen)を生成する。補間画
素データ(P_gen)は、(数11)より、(数1
8)となる。
0に対して、参照アドレスを挟む隣り合う2画素による
補間処理を実現することができる。これは、参照アドレ
スが図9のテクスチャの上の境界近傍に位置する場合に
おける補間処理であるが、参照アドレスが(数16)に
示す範囲以外の境界近傍に位置する場合も、同様にし
て、補間処理を実現することができる。
の範囲において補間処理(バイリニア補間処理)を行う
ことができる。ここで、テクスチャのサイズはm×n画
素、サンプリングポイントは画素の中心であるとする。
すなわち、テクスチャの座標位置にかかわらず、ただ1
つの補間処理((数11)参照)方式で、補間処理を実
現できる。
(数6)に従って画像を生成する。
スチャに分割した場合におけるテクスチャマッピングに
ついて説明する。
れている生成画像の各画素と、描画されるべきポリゴン
と、そのポリゴンに対してマップされるべきテクスチャ
の各画素との対応関係を示したものである。図11にお
いて、点線は、生成画像格納部206に格納されている
生成画像の各画素を示し、太線は、描画されるべきポリ
ゴンを示し、細線は、そのポリゴンに対してマッピング
されるべきテクスチャの各画素を示す。
ポリゴン42とは接している。ポリゴン41には、テク
スチャ0がマッピングされ、ポリゴン42には、テクス
チャ1がマッピングされると仮定する。テクスチャ0
は、画素43aと画素43bとを含む。画素43aは画
素値aを有し、画素43bは画素値bを有している。テ
クスチャ1は、画素43cと画素43dとを含む。画素
43cは画素値cを有し、画素43dは画素値dを有し
ている。ここで、注目画素は画素44であるとする。注
目画素44は、図11において×印で示されている。注
目画素とは、生成画像格納部206において、補間画素
データが適用される画素の位置を表すものである。
dに基づいて補間画素データを生成し、その補間画素デ
ータを注目画素44に適用する。
ャ座標((u,v)座標)で表した場合における、注目
画素44とテクスチャ0の画素43aおよび43bとテ
クスチャ1の画素43cおよび43dの配置の例を示
す。図12に示される注目画素44と画素43a〜43
dは、図11に示されるそれらと同一のものである。図
12に示される注目画素44は、生成画像格納部206
の注目画素を第2の原画像格納部209に投影したもの
であり、(u,v)座標系の非整数点に位置する。
b,c,dに基づいて補間画素データとして(数20)
が得られるべきである。
ャ1とを用いてどのようにして(数20)が得られるか
を説明する。ここで、テクスチャ0をポリゴン41にマ
ッピングした後、テクスチャ1をポリゴン42にマッピ
ングすると仮定する。しかしながら、マッピングする順
序が逆の場合も処理は同様である。
ャ0に関して補間画素データ(P_gen0)を生成す
る。補間画素データ(P_gen0)は、(数11)に
従って計算される。その結果、(数21)が得られる。
注目画素44が占める面積のうちポリゴン0が占める面
積の割合(寄与率)が0.4である場合には、属性値
(α0_gen)は、(数22)によって表される。生
成画像格納部206の注目画素44に格納される値(P
_acc_out)は、このようにして得られた補間画
素データ(P_gen0)と属性値(α0_gen)と
に基づいて、(数6)に従って計算される。その結果、
(数23)が得られる。
に関して補間画素データ(P_gen1)を生成する。
補間画素データ(P_gen1)は、(数11)に従っ
て計算される。その結果、(数24)が得られる。注目
画素44が占める面積のうちポリゴン1が占める面積の
割合(寄与率)が0.6である場合には、属性値(α1
_gen)は、(数25)によって表される。生成画像
格納部206の注目画素44に格納される値(P_ac
c_out)は、このようにして得られた補間画素デー
タ(P_gen1)と属性値(α1_gen)と値P_
acc_inと値α_acc_inとに基づいて、(数
6)に従って計算される。その結果、(数26)および
(数27)が得られる。
一致する。このことから、ある1つのテクスチャを複数
のテクスチャに分割した場合でもテクスチャマッピング
によって理想的な補間を実現することができることが理
解される。
スチャに分割したことにより、テクスチャ間、すなわ
ち、ポリゴン間において、不連続な画像が生成されるこ
とはない。そのため、高画質な画像を提供するテクスチ
ャマッピングを実現することができる。
とし、その画素データに関連する補間画素の数をnと
し、n個の補間画素が有する補間画素データをそれぞれ
P_gen(i)とし、n個の補間画素の寄与率(仮想
的にピクセルを一辺の長さが1の正方形とみなしたとき
に、スクリーン上の画素と生成する補間画素との共有領
域の面積)をそれぞれα_gen(i)とする場合、α
_gen(i)の和は、(数28)に示すように1.0
となり、値Pは、(数29)に従って得られる。
29)より、最終的に生成される画素データPには、そ
の画素にかかるポリゴンに対応するテクスチャデータを
反映させることが可能であることが分かる。言い換える
と、隣接するポリゴン間に反映されるそれぞれのテクス
チャの画素データを互いに参照することが可能となる。
すなわち、従来の補間装置に発生するポリゴン間の不連
続を排除することが可能となる。これにより、たとえ独
立したテクスチャであっても、隣接するポリゴン間であ
るならば、連続したテクスチャとして扱ったのと同じ効
果を得ることが可能となり、高画質なテクスチャマッピ
ングを実現することが可能となる。
イリニア補間処理に関するものである。バイリニア補間
処理は、コンピュータグラフィックス、特にテクスチャ
マッピングや画像のスケーリングなどの画像処理におい
て、高画質な画像を生成するために必要不可欠な処理で
ある。
を行う回路規模を小さくするとともに、高い処理能力を
備えた、高速で高画質なテクスチャマッピングにおける
補間処理を実現するものである。
ンリングポイントを画素の中心としたが、サンプリング
ポイントの位置は任意である。
スチャ302の境界領域に位置する画素をその境界領域
の周囲に複写することにより、テクスチャ302より少
なくとも周囲1画素分だけ大きいテクスチャ501を生
成した。このような複写処理による効果と同様の効果
は、第2の原画像格納部209にテクスチャ302を格
納しつつ、アドレス生成部208の処理を変更すること
によっても得られる。すなわち、uv−DDA処理部2
13によって生成されるテクスチャ座標(u,v)がテ
クスチャ302の境界領域に位置する場合には、アドレ
ス生成部208がテクスチャ302の領域を越えてアド
レスを生成しないようにすればよい。これにより、第2
の原画像格納部209に必要とされる記憶領域を小さく
することができる。
システム100の構成およびレンダリングプロセッサ3
の構成は、実施の形態2と同様である。従って、ここで
はその説明を省略する。実施の形態2と比較すると、原
画像格納制御部210とアドレス生成部208によって
実行される処理が異なる。
ッピングの対象となるテクスチャ(例えば、4×4画素
のテクスチャ)を第1の原画像格納部207から読み出
す。次に、原画像格納制御部210は、読み出されたテ
クスチャを第2の原画像格納部209に格納する。
の原画像格納部209に格納されていると仮定する。こ
こで、テクスチャT0は4×4画素からなり、テクスチ
ャT0に含まれる各画素の画素値は配列T0[i]
[j]に格納されている。ここで、i=0,1,2,
3;j=0,1,2,3である。
納部209に格納されているテクスチャT0に対して参
照アドレス(u0,v0)を与える。参照アドレス(u
0,v0)が(数12)の範囲内にある場合には、補間
処理部204は、補間処理に必要とされる画素データを
第2の原画像格納部209から得ることができる。上述
したように、その補間処理に必要とされる画素データ
は、(数13)によって表される。
30)である場合におけるテクスチャマッピングについ
て説明する。(数30)に示される参照アドレスは、実
施の形態2で言及した(数16)の範囲に位置する。
0)に示される参照アドレス(u0,v0)の点を示し
たものである。その点は小円71によって表されてい
る。また、図13における×印は、テクスチャ0のサン
プリングポイントを表す。
(u0,v0)の近傍を拡大したものである。81は参
照アドレス(u0,v0)を示し、82a〜82dは周
辺の4画素を示す。画素82bと画素82dとは、実際
に存在するテクスチャ0の画素であり、その画素値とし
てT0[1][0]とT0[2][0]とをそれぞれ有
している。他方、画素82aと画素82cとは、実際に
は存在しない仮想的な画素である。
がテクスチャ0の境界領域に位置する場合には、アドレ
ス生成部208は、補間処理を行うために必要とされる
画素データ((数13)、(数31)参照)を得るため
のアドレスを生成する。
1)は、実施の形態2で言及したテクスチャT1に対し
て参照アドレス(u1,v1)を与えることによって得
られる画素データと同一である。このことは、アドレス
生成部208のアドレス生成処理を変更することによっ
て、テクスチャT1を生成することなく、実施の形態1
および2と同様の効果を得ることができることを意味す
る。
部208を詳細に説明する。
生成部208の内部構成を示す。アドレス生成部208
には、2次元アドレスが入力される。その2次元アドレ
スは、uアドレス(u_adr)とvアドレス(v_a
dr)とから構成される。
リメンタ111および112と、アドレスセレクタ12
1〜124とを含んでいる。
れたuアドレス(u_adr)を1だけインクリメント
し、その結果を示すアドレス(u_adr’)を出力す
る。アドレスインクリメンタ112は、入力されたvア
ドレス(v_adr)を1だけインクリメントし、その
結果を示すアドレス(v_adr’)を出力する。
0とを比較することにより、u_adrか0かを選択的
に出力する。その出力をu_adr_out0とする。
アドレスセレクタ122は、v_adrと0とを比較す
ることにより、v_adrか0かを選択的に出力する。
その出力をv_adr_out0とする。アドレスセレ
クタ123は、u_adr’と原画像の横のサイズm
(この例では4)とを比較することにより、u_ad
r’かmかを選択的に出力する。その出力をu_adr
_out1とする。アドレスセレクタ124は、v_a
dr’と原画像の縦のサイズn(この例では4)とを比
較することにより、v_adr’かnかを選択的に出力
する。その出力をv_adr_out1とする。
8に対して、(数30)に示される参照アドレスを入力
した場合には、u_adrおよびv_adrは、(数3
2)によって表される。
および112の動作を説明する。アドレスインクリメン
タ111および112への入力(u_adr,v_ad
r)と、アドレスインクリメンタ111および112か
らの出力(u_adr’,v_adr’)との関係は、
(数33)によって表される。
動作を説明する。ここで、アドレスセレクタ121の動
作を規定する関数をsel1、アドレスセレクタ122
の動作を規定する関数をsel2、アドレスセレクタ1
23の動作を規定する関数をsel3、アドレスセレク
タ124の動作を規定する関数をsel4とする。これ
らの関数を用いて、出力値u_adr_out0、v_
adr_out0、u_adr_out1、v_adr
_out1を表すと(数34)に示すようになる。
データアドレス1として(u_adr_out0,v_
adr_out0)を出力し、補間処理用画素データア
ドレス2として(u_adr_out0,v_adr_
out1)を出力し、補間処理用画素データアドレス3
として(u_adr_out1,v_adr_out
0)を出力し、補間処理用画素データアドレス4として
(u_adr_out1,v_adr_out1)を出
力する。
は、第2の原画像格納部209に対して4つのアドレス
(補間処理用画素データアドレス)を出力する。それら
の4つのアドレスは、(数35)によって表される。
るアドレス生成部208によれば、画素データを参照す
るためのアドレス(数35)を生成することができる。
このことは、画素82aをアドレスする代わりに画素8
2bをアドレスし、画素82cをアドレスする代わりに
画素82dをアドレスすることを意味する。その結果、
画素値供給部203は、参照アドレスがテクスチャの境
界領域に位置するか否かにかかわらず、補間処理部20
4に所定数の画素データを供給することになる。これに
より、補間処理部204は、(数11)に従って補間画
素データ(P_gen)を計算することが可能になる
((数36)参照)。
ある。すなわち、実施の形態3では、アドレス生成部2
08は、実施の形態2によって生成されたテクスチャT
1があたかもあるかのように、アドレスを生成する。
の形態2と同様にして、高画質で高速なテクスチャマッ
ピング時の補間処理を実現することができる。しかも、
実施の形態2に比較して、原画像格納制御部210によ
るテクスチャの変換処理が不要となり、第2の原画像格
納部209の記憶容量も少なくて済むという利点があ
る。
スチャ302の境界領域に位置する画素をその境界領域
の周囲に複写することにより、テクスチャ302より少
なくとも周囲1画素分だけ大きいテクスチャ501を生
成した。このような複写処理による効果と同様の効果
は、第2の原画像格納部209にテクスチャ302を格
納しつつ、補間処理部204の処理を変更することによ
っても得られる。すなわち、補間処理部204に入力さ
れる画素データの数が補間処理に必要とされる画素デー
タの数より少ない場合(例えば、補間処理部204に入
力される画素データの数が4より少ない場合)には、入
力された補間画素データに基づいて補間処理に必要とさ
れる画素データを生成する補間画素データ生成部93a
を設ければよい。これにより、原画像格納制御部210
によるテクスチャの変換処理が不要となるので、実施の
形態2に比較して、第2の原画像格納部209に必要と
される記憶領域を小さくすることができる。
システム100の構成およびレンダリングプロセッサ3
の構成は、実施の形態2と同様である。従って、ここで
はその説明を省略する。実施の形態2と比較すると、原
画像格納制御部210と補間処理部204によって実行
される処理が異なる。
ッピングの対象となるテクスチャ(例えば、4×4画素
のテクスチャ)を第1の原画像格納部207から読み出
す。次に、原画像格納制御部210は、読み出されたテ
クスチャを第2の原画像格納部209に格納する。
の原画像格納部209に格納されていると仮定する。こ
こで、テクスチャT0は4×4画素からなり、テクスチ
ャT0に含まれる各画素の画素値は配列T0[i]
[j]に格納されている。ここで、i=0,1,2,
3;j=0,1,2,3である。
部204の内部構成を示す。補間処理部204は、補間
データ生成部93aと補間実処理部93bとを含んでい
る。
理部93bの動作を説明する。ここで、テクスチャのサ
ンプリングは画素の中心で行うものとし、テクスチャマ
ッピングの対象となるテクスチャは4×4画素からなる
と仮定する。
像格納部209に格納されているテクスチャT0に対し
て与えられた参照アドレス(u0,v0)が(数12)
の範囲内にある場合には、補間データ生成部93aに
は、4つの画素データが入力される。これら4つの画素
データは、バイリニア補間処理によって要求される適切
な数の画素データである。従って、補間データ生成部9
3aは、入力された4つの画素データに対して何らの加
工を施すことなく、それらの画素データを補間実処理部
93bに出力する。補間実処理部93aは、バイリニア
補間処理を実行する。補間実処理部93aの動作は、実
施の形態1〜3における補間処理部204の動作と同一
である。
12)の範囲外にある場合には、補間処理データ生成部
93aに入力される画素データの数は、バイリニア補間
処理に必要とされる画素データの数より少なくなる。こ
の場合には、補間処理データ生成部93aは、不足する
画素データを生成する。その結果、補間実処理部93b
には4つの画素データが出力されることとなる。
30)である場合におけるテクスチャマッピングについ
て説明する。(数30)に示される参照アドレスは、実
施の形態2で言及した(数16)の範囲に位置する。
部209に格納されているテクスチャT0に対して参照
アドレス(u0,v0)を与えることにより、補間処理
データ生成部93aには、(数37)に示す画素データ
が入力される。しかしながら、(数37)に示す4つの
画素データのうち、(数38)に示す画素データは不当
なデータであるか、もしくはデータが存在しない。補間
処理データ生成部93aは、与えられた参照アドレス
(u0,v0)の値とテクスチャT0のサイズ(4×4
画素)とに基づいて、(数38)に示す2つの画素デー
タが不当なものであると識別する。
画素データに不当な画素データが含まれている場合に
は、補間処理データ生成部93aは、その不当な画素デ
ータの代わりに正当な画素データを補間実処理部93b
に出力する。例えば、(数38)に示す画素データの代
わりに(数39)に示す画素データが出力される。補間
実処理部93bは、これらの画素データに基づいて補間
処理を実行する。この補間処理によって得られる補間画
素データは、(数36)に一致する。
力される画素データのうち正当な画素データの数は、4
つか、2つか、1つかのいずれかである。また、参照ア
ドレス(u0,v0)の値の振舞いによって、補間処理
に必要とされる画素データは一意に決定される。このこ
とから、補間処理データ生成部93aを簡単なマルチプ
レクサで実現できることは当業者であれば容易に理解で
きるだろう。
ある。
態5を説明する。システム100の構成およびレンダリ
ングプロセッサ3の構成は、実施の形態1と同様であ
る。従って、ここではその説明を省略する。実施の形態
1と比較すると、原画像格納制御部210によって実行
される処理が異なる。
納されるテクスチャ503および504の例を示す。原
画像格納制御部210は、テクスチャマッピングの対象
となるテクスチャ(例えば、4×4画素のテクスチャ)
を第1の原画像格納部207から読み出す。次に、原画
像格納制御部210は、読み出されたテクスチャの周囲
1画素に予め定められた固定値を挿入することにより、
テクスチャマッピングの対象となるテクスチャより周囲
1画素分だけ大きいテクスチャ(例えば、6×6画素の
テクスチャ)を生成する。あるいは、原画像格納制御部
210は、テクスチャマッピングの対象となるテクスチ
ャより周囲2画素以上大きいテクスチャを生成してもよ
い。このようにして生成されたテクスチャが第2の原画
像格納部209に格納される。
チャ503は、図5(b)に示す4×4画素のテクスチ
ャ302の周囲1画素に固定値を挿入することにより得
られる。図17に示す6×6画素のテクスチャ504
は、図5(b)に示す4×4画素のテクスチャ304の
周囲1画素に固定値を挿入することにより得られる。例
えば、その固定値は、画素値0(黒)である。
チャの周囲1画素に画素値0(黒)を挿入することによ
り、ポリゴンの内部からポリゴンの境界に近づくにつれ
て徐々に画素値が0に近づく。これは、ポリゴンエッジ
に対してフィルタリング処理を行った状態であることを
意味する。これにより、ポリゴンエッジのエイリアスを
除去することができる。
補間処理とエッジアンチエイリアシング処理とを同時に
実現することができる。
固定値は画素値0(黒)には限定されない。その固定値
として任意の値を挿入することが可能である。
理についてさらに詳しく説明する。
部210は、テクスチャT0をテクスチャT1に変換す
る。ただし、実施の形態5では、この変換は、(数4
0)によって規定される。(数40)では、黒を表す画
素値を0と表している。
2)に示す範囲内である場合には、その補間処理結果
は、実施の形態2と同一である。しかし、参照アドレス
(u0,v0)が、(数12)に示す範囲外である場合
には、その補間処理結果は、実施の形態2とは異なる。
すなわち、参照アドレス(u0,v0)がテクスチャ0
の境界領域に位置する場合には、テクスチャT0の境界
に近づくにつれて黒色の画素(画素値0)の割合を多く
して、補間処理を行うこととなる((数11)参照)。
ある。ポリゴン境界の画素値を算出することは、テクス
チャの境界近傍への参照となる。これは、ポリゴンのエ
ッジを滑らかにする処理を行うことと等価である。
果は、第2の原画像格納部209にテクスチャ302を
格納しつつ、アドレス生成部208の処理を変更するこ
とによっても得られる。すなわち、uv−DDA処理部
213によって生成されるテクスチャ座標(u,v)が
テクスチャ302の境界領域に位置する場合には、アド
レス生成部208がテクスチャ302の領域を越えてア
ドレスを生成しないようにすればよい。その代わり、ア
ドレス生成部208は、固定値が格納された特定のレジ
スタを参照する。これにより、第2の原画像格納部20
9に必要とされる記憶領域を小さくすることができる。
ポリゴンが描画される対象の背景色を表す画素値を挿入
することにより、高画質な背景とのアンチエイリアシン
グ処理を生成することも可能である。
処理には、参照アドレスの近傍に位置する4つ画素が使
用される例について説明した。しかし、内挿補間処理に
使用される画素の数は4には限定されない。以下、内挿
補間処理に使用される画素の数が9、16である場合に
ついて説明する。
9個の画素を用いて、内挿補間処理を行う場合における
画素の配置を示す。
スの位置を示す。また、参照点700の近傍には、画素
701(画素値a)、画素702(画素値b)、画素7
03(画素値c)、画素704(画素値d)、画素画素
705(画素値e)、画素706(画素値f)、画素7
07(画素値g)、画素708(画素値h)、画素70
9(画素値i)が存在するとする。さらに、参照点70
0は、画素701、702、704、705に囲まれる
位置にあり、図18に示すように、参照点700と画素
701とは、u軸方向にpだけ離れており、v軸方向に
qだけ離れているとする。ここで、0≦p<1、0≦q
<1である。
データ(P_gen)は、(数41)に従って計算され
る。これは、画素701から画素709を4画素ごとに
処理することにより、参照アドレスの近傍に位置する9
画素を用いて内挿補間処理を行うことを意味している。
その内挿補間処理における4画素ごとの組は、図18に
おいて組711〜714として示される。
16個の画素を用いて、内挿補間処理を行う場合におけ
る画素の配置を示す。
スの位置を示す。また、参照点800の近傍には、画素
801(画素値a)、画素802(画素値b)、画素8
03(画素値c)、画素804(画素値d)、画素画素
805(画素値e)、画素806(画素値f)、画素8
07(画素値g)、画素808(画素値h)、画素80
9(画素値i)、画素810(画素値j)、画素811
(画素値k)、画素812(画素値l)、画素画素81
3(画素値m)、画素814(画素値n)、画素815
(画素値o)、画素816(画素値r)が存在するとす
る。さらに、参照点800は、画素801、802、8
05、806に囲まれる位置にあり、図19に示すよう
に、参照点800と画素801とは、u軸方向にpだけ
離れており、v軸方向にqだけ離れているとする。ここ
で、0≦p<1、0≦q<1である。
データ(P_gen)は、(数42)に従って計算され
る。これは、画素801から画素816を4画素ごとに
処理することにより、参照アドレスの近傍に位置する1
6画素を用いて内挿補間処理を行うことを意味してい
る。その内挿補間処理における4画素ごとの組は、図1
9において組821〜829として示される。
処理としてバイリニア処理を用い、原画像に対する参照
アドレス(u,v)の一部を補間処理部204に入力し
た。しかし、補間範囲を広く取る場合には、単に参照ア
ドレス(u,v)の一部を入力したのでは、情報量が劣
化する。従って、少なくともp、qの値を高精度に算出
することのできる参照アドレス(u,v)を入力するこ
とが好ましい。
チャの中心領域内に位置するか境界領域内に位置するか
にかかわらず、補間処理部が要求する数の画素に関連す
る情報を補間処理部に提供することが可能になる。これ
により、単一の補間処理でテクスチャパターンの全領域
を補間することが可能となるため、従来の補間装置にお
いて必要とされた例外補間処理を排除することができ
る。その結果、回路規模を削減することができる。
る画質の劣化は現れない。しかも、テクスチャパターン
の全領域にわたり、均一な補間処理であるので、非常に
高画質な画像を得ることができる。
を複数のテクスチャに分割して、それぞれのテクスチャ
を独立に取り扱うことができる。さらに、分割前のテク
スチャを第1メモリに格納し、分割後のテクスチャを第
2メモリに格納する場合において、第2のメモリとして
第1のメモリより非常に高速に動作するものを使用すれ
ば、第2メモリは第1メモリに対するキャッシュ/バッ
ファとしての役割を果たす。その結果、テクスチャマッ
ピングの対象となるテクスチャに高速にアクセスするこ
とが可能となり、バスボトルネックが解消される。
るシステム100の構成を示す図である。
る。
する画素の配置の例を示す図である。
と境界領域の例を示す図である。
れている原画像(テクスチャ)301の例を示す図、
(b)は、原画像(テクスチャ)301の一部である原
画像(テクスチャ)302および304の例を示す図、
(c)は、原画像(テクスチャ)301から切り出され
た原画像(テクスチャ)303および305の例を示す
図である。
01の例を示す図である。
手順を示す図である。
チャの例を示す図である。
チャT0の例を示す図である。
スチャT1の例を示す図である。
画像の各画素と、描画されるべきポリゴンと、そのポリ
ゴンに対してマッピングされるべきテクスチャの各画素
との対応関係を示す図である。
の配置の例を示す図である。
0,v0)の点を示す図である。
0)の近傍を拡大した図である。
ある。
る。
スチャの例を示す図である。
用いて、内挿補間処理を行う場合における画素の配置を
示す図である。
を用いて、内挿補間処理を行う場合における画素の配置
を示す図である。
Claims (21)
- 【請求項1】 複数の画素を含むテクスチャを格納する
第1格納手段と、 該テクスチャに対する参照点の位置にかかわらず、該テ
クスチャに含まれる所定の数の画素に関連する情報を提
供する提供手段と、 該所定の数の画素に関連する情報に基づいて補間画素デ
ータを計算することにより、補間処理を実行する補間処
理手段とを備えた補間装置。 - 【請求項2】 前記提供手段は、 前記第1格納手段に格納されているテクスチャから、処
理の対象となる第1テクスチャより少なくとも周囲1画
素だけ大きい第2テクスチャを切り出す切り出し手段
と、 該第2テクスチャを格納する第2格納手段と、 該第1テクスチャに対する参照点の位置に応じて、該第
2格納手段に格納されている第2テクスチャの画素にア
クセスするためのアドレスを生成するアドレス生成手段
とを備えている、請求項1に記載の補間装置。 - 【請求項3】 前記第2テクスチャは、トーラスを形成
するように切り出される、請求項2に記載の補間装置。 - 【請求項4】 前記提供手段は、 前記第1格納手段に格納されているテクスチャのうち少
なくとも一部を含む第1テクスチャを、該第1テクスチ
ャより少なくとも周囲1画素だけ大きい第2テクスチャ
に変換するテクスチャ変換手段と、 該第2テクスチャを格納する第2格納手段と、 該第1テクスチャに対する参照点の位置に応じて、該第
2格納手段に格納されている第2テクスチャの画素にア
クセスするためのアドレスを生成するアドレス生成手段
とを備えている、請求項1に記載の補間装置。 - 【請求項5】 前記テクスチャ変換手段は、 前記第1テクスチャの境界部分の画素を、前記第1テク
スチャの周囲に複写する手段を備えている、請求項4に
記載の補間装置。 - 【請求項6】 前記テクスチャ変換手段は、 前記第1テクスチャの周囲に所定の固定値を挿入する手
段を備えている、請求項4に記載の補間装置。 - 【請求項7】 前記処理の固定値は、黒色を表す値であ
る、請求項6に記載の補間装置。 - 【請求項8】 前記処理の固定値は、描画対象の背景色
を表す値である、請求項6に記載の補間装置。 - 【請求項9】 前記提供手段は、 前記第1格納手段に格納されているテクスチャのうち少
なくとも一部を含む第1テクスチャを格納する第2格納
手段と、 該第1テクスチャを該第2格納手段に転送する転送手段
と、 該第1テクスチャに対する参照点の位置に応じて、該第
2格納手段に格納されている第1テクスチャの画素にア
クセスするためのアドレスを生成するアドレス生成手段
とを備えている、請求項1に記載の補間装置。 - 【請求項10】 前記提供手段と補間処理手段とは第1
のチップ上に形成され、前記第1格納手段は該第1のチ
ップとは異なる第2のチップ上に形成される、請求項1
に記載の補間装置。 - 【請求項11】 前記第2格納手段は、前記第1格納手
段よりも高速に動作するメモリである、請求項2、4、
9に記載の補間装置。 - 【請求項12】 複数の画素を含むテクスチャに対する
参照点の位置にかかわらず、該テクスチャに含まれる所
定の数の画素に関連する情報を提供するステップと、 該所定の数の画素に関連する情報に基づいて補間画素デ
ータを計算することにより、補間処理を実行するステッ
プとを包含する補間方法。 - 【請求項13】 前記情報を提供するステップは、 前記テクスチャから、処理の対象となる第1テクスチャ
より少なくとも周囲1画素だけ大きい第2テクスチャを
切り出すステップと、 該第1テクスチャに対する参照点の位置に応じて、該第
2テクスチャの画素にアクセスするためのアドレスを生
成するステップとを包含する、請求項12に記載の補間
方法。 - 【請求項14】 前記第2テクスチャは、トーラスを形
成するように切り出される、請求項13に記載の補間方
法。 - 【請求項15】 前記情報を提供するステップは、 前記テクスチャのうち少なくとも一部を含む第1テクス
チャを、該第1テクスチャより少なくとも周囲1画素だ
け大きい第2テクスチャに変換するステップと、 該第1テクスチャに対する参照点の位置に応じて、該第
2テクスチャの画素にアクセスするためのアドレスを生
成するステップとを包含する、請求項12に記載の補間
方法。 - 【請求項16】 前記変換ステップは、 前記第1テクスチャの境界部分の画素を、前記第1テク
スチャの周囲に複写するステップを包含する、請求項1
5に記載の補間方法。 - 【請求項17】 前記変換ステップは、 前記第1テクスチャの周囲に所定の固定値を挿入するス
テップを包含する、請求項15に記載の補間方法。 - 【請求項18】 前記処理の固定値は、黒色を表す値で
ある、請求項17に記載の補間方法。 - 【請求項19】 前記処理の固定値は、描画対象の背景
色を表す値である、請求項17に記載の補間方法。 - 【請求項20】 前記情報を提供するステップは、 前記テクスチャのうち少なくとも一部を含む第1テクス
チャに対する参照点の位置に応じて、該第1テクスチャ
の画素にアクセスするためのアドレスを生成するステッ
プを包含する、請求項12に記載の補間方法。 - 【請求項21】 テクスチャをポリゴンにマッピングす
ることにより、画像を生成する画像生成装置であって、 複数の画素を含むテクスチャを格納する手段と、 ポリゴン平面上の点の座標をテクスチャ平面上の点の座
標に変換する手段と、 該テクスチャ平面上の点の座標の値にかかわらず、該テ
クスチャに含まれる所定の数の画素に関連する情報を提
供する手段と、 該所定の数の画素に関連する情報に基づいて補間画素デ
ータを計算することにより、補間処理を実行する手段
と、 該補間画素データに基づいて、画像を生成する手段とを
備えた画像生成装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7304870A JP3071387B2 (ja) | 1994-11-25 | 1995-11-22 | 補間装置および補間方法、並びに画像生成装置 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6-291043 | 1994-11-25 | ||
| JP29104394 | 1994-11-25 | ||
| JP7304870A JP3071387B2 (ja) | 1994-11-25 | 1995-11-22 | 補間装置および補間方法、並びに画像生成装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH08212357A true JPH08212357A (ja) | 1996-08-20 |
| JP3071387B2 JP3071387B2 (ja) | 2000-07-31 |
Family
ID=26558366
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7304870A Expired - Fee Related JP3071387B2 (ja) | 1994-11-25 | 1995-11-22 | 補間装置および補間方法、並びに画像生成装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3071387B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1032883A4 (en) * | 1997-11-21 | 2004-04-28 | Acuity Imaging Llc | DATA RESHANTILLONEURER FOR DATA PROCESSING SYSTEM |
| US7405735B2 (en) | 2004-05-19 | 2008-07-29 | Sony Computer Entertainment Inc. | Texture unit, image rendering apparatus and texel transfer method for transferring texels in a batch |
| JP2012068905A (ja) * | 2010-09-24 | 2012-04-05 | Seiko Epson Corp | 画像処理装置、画像処理方法、及び表示装置 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03138779A (ja) * | 1989-10-25 | 1991-06-13 | Daikin Ind Ltd | テクスチャ・マッピング方法およびその装置 |
| JPH05120439A (ja) * | 1991-10-25 | 1993-05-18 | Hitachi Ltd | 格子点算出方法及びテクスチヤマツピング方法 |
| JPH05303648A (ja) * | 1992-04-24 | 1993-11-16 | Mitsubishi Precision Co Ltd | 模擬視界発生装置 |
| JPH06251165A (ja) * | 1993-02-25 | 1994-09-09 | Toshiba Corp | 画像処理装置 |
| JPH06309472A (ja) * | 1993-04-23 | 1994-11-04 | Mitsubishi Precision Co Ltd | テクスチャ・マッピングの方法及びテクスチャ・マッピング装置 |
| JPH06348857A (ja) * | 1993-06-04 | 1994-12-22 | Toshiba Corp | 図形描画処理装置 |
-
1995
- 1995-11-22 JP JP7304870A patent/JP3071387B2/ja not_active Expired - Fee Related
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03138779A (ja) * | 1989-10-25 | 1991-06-13 | Daikin Ind Ltd | テクスチャ・マッピング方法およびその装置 |
| JPH05120439A (ja) * | 1991-10-25 | 1993-05-18 | Hitachi Ltd | 格子点算出方法及びテクスチヤマツピング方法 |
| JPH05303648A (ja) * | 1992-04-24 | 1993-11-16 | Mitsubishi Precision Co Ltd | 模擬視界発生装置 |
| JPH06251165A (ja) * | 1993-02-25 | 1994-09-09 | Toshiba Corp | 画像処理装置 |
| JPH06309472A (ja) * | 1993-04-23 | 1994-11-04 | Mitsubishi Precision Co Ltd | テクスチャ・マッピングの方法及びテクスチャ・マッピング装置 |
| JPH06348857A (ja) * | 1993-06-04 | 1994-12-22 | Toshiba Corp | 図形描画処理装置 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1032883A4 (en) * | 1997-11-21 | 2004-04-28 | Acuity Imaging Llc | DATA RESHANTILLONEURER FOR DATA PROCESSING SYSTEM |
| US7405735B2 (en) | 2004-05-19 | 2008-07-29 | Sony Computer Entertainment Inc. | Texture unit, image rendering apparatus and texel transfer method for transferring texels in a batch |
| JP2012068905A (ja) * | 2010-09-24 | 2012-04-05 | Seiko Epson Corp | 画像処理装置、画像処理方法、及び表示装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3071387B2 (ja) | 2000-07-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5940091A (en) | Three-dimensional graphic drawing apparatus wherein the CPU and the three-dimensional drawing mechanism access memory via a memory control unit | |
| JP3203160B2 (ja) | ボリューム・レンダリング装置及び方法 | |
| US6356269B1 (en) | Image processing device and system using the same | |
| US6275235B1 (en) | High precision texture wrapping method and device | |
| JP3466661B2 (ja) | 画像処理装置及びその方法 | |
| JPH04287292A (ja) | トリミングされたパラメトリック面のレンダリング方法及び装置 | |
| JP3081774B2 (ja) | テクスチャーパターンメモリ回路 | |
| US6292192B1 (en) | System and method for the direct rendering of curve bounded objects | |
| JPH1186007A (ja) | プリミティブにより覆われるピクセルの割合を求める方法 | |
| JPH05307610A (ja) | テクスチャマッピング方法およびその装置 | |
| US20130127915A1 (en) | System and Method for Content Aware Hybrid Cropping and Seam Carving of Images | |
| WO2000002165A1 (fr) | Procede permettant de produire des donnees de polygone et afficheur d'images utilisant lesdites donnees | |
| JPS6158083A (ja) | 高速メモリ−・システム、デ−タ処理方法及びメモリ−・セグメント | |
| JPWO2000002165A1 (ja) | ポリゴンデータの生成方法及び、これを用いた画像表示装置 | |
| JPH03212775A (ja) | アンチエイリアス多角形の描図方法及び装置 | |
| JP4355697B2 (ja) | グラフィックモデル生成方法およびグラフィックモデル生成装置 | |
| JP2002042159A (ja) | コンピュータ・グラフィック・システムにおけるアンチエイリアシング方法 | |
| KR100277803B1 (ko) | 3차원 그래픽 표시장치 | |
| US5889526A (en) | Interpolation apparatus and method, and image generation apparatus including such an apparatus | |
| JP2002537613A (ja) | スーパサンプリング・サンプル・バッファを有し、表示効果を実現するため選択的フィルタ調節を使用して出力ピクセルを生成するグラフィックス・システム | |
| JP2005332195A (ja) | テクスチャユニット、画像描画装置、テクセル転送方法 | |
| JP3071387B2 (ja) | 補間装置および補間方法、並びに画像生成装置 | |
| JPH10334269A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラムを記録した記録媒体 | |
| JPH01131976A (ja) | テクスチャマッピング装置およびその方法 | |
| US6816162B2 (en) | Data management to enable video rate anti-aliasing convolution |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19991122 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000509 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090526 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100526 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110526 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110526 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120526 Year of fee payment: 12 |
|
| LAPS | Cancellation because of no payment of annual fees |