JP3775580B2 - 画像処理装置および方法、記録媒体、並びにプログラム - Google Patents

画像処理装置および方法、記録媒体、並びにプログラム Download PDF

Info

Publication number
JP3775580B2
JP3775580B2 JP2001355866A JP2001355866A JP3775580B2 JP 3775580 B2 JP3775580 B2 JP 3775580B2 JP 2001355866 A JP2001355866 A JP 2001355866A JP 2001355866 A JP2001355866 A JP 2001355866A JP 3775580 B2 JP3775580 B2 JP 3775580B2
Authority
JP
Japan
Prior art keywords
texture data
value
logarithm
calculates
base
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
Application number
JP2001355866A
Other languages
English (en)
Other versions
JP2003157445A (ja
Inventor
正寛 五十嵐
英亮 冨川
誠吾 岩崎
哲夫 本村
多仁生 長崎
Original Assignee
ソニー株式会社
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 ソニー株式会社 filed Critical ソニー株式会社
Priority to JP2001355866A priority Critical patent/JP3775580B2/ja
Publication of JP2003157445A publication Critical patent/JP2003157445A/ja
Application granted granted Critical
Publication of JP3775580B2 publication Critical patent/JP3775580B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/36Level of detail

Description

【0001】
【発明の属する技術分野】
本発明は、画像処理装置および方法、記録媒体、並びにプログラムに関し、特に、簡単な構成の装置で、lodを算出することができるようにした画像処理装置および方法、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
コンピュータグラフィックスにおいて、3次元の図形(モデル)を描画する際に、そのモデルの表面に、あらかじめ用意しておいた2次元画像(以下、テクスチャと称する)を貼り付け、質感の高い画像を生成することができるテクスチャマッピングという手法がある。
【0003】
ここで、テクスチャマッピングの基本的な原理を図1および図2を参照してその概略を説明する。
【0004】
図1AのXY座標は、テクスチャが貼り付けられるモデルが写像される座標である。
【0005】
描画されるモデルは、図1Aに示すような三角形のポリゴンの集合により形成される。モデルを形成する各ポリゴンの頂点A,B,Cには、3次元座標の座標値(Sn,Tn,Qn,但しn=1,2,3)が与えられる。なお、以下において、その図示は省略するが、この3次元の座標をテクスチャ座標と称する。
【0006】
ポリゴンの内部のD点の座標値(s,t,q)は、点A,B,Cのテクスチャ座標値を線形補間して得られる。座標(s,t)は、張り合わせのイメージパターンを示すテクスチャの同次座標(s,t)で、同次項qは、簡単にいうと、拡大縮小率のようなものである。
【0007】
なお、上述した(s,t,q),(Sn,Tn,Qn)などのテクスチャ座標値は、描画するモデルを構成する個々のポリゴンに対して与えられるものであり、変数である。また、テクスチャ座標のポリゴンの頂点座標値(Sn,Tn,Qn,但しn=1,2,3)は、XY座標値(X、Y)に対応し、ポリゴンの内部の画素のテクスチャ座標値(s,t,q)は、XY座標値(x、y)に対応する。
【0008】
図1BのUV座標は、描画するモデルのポリゴンに貼り付けられるテクスチャの2次元座標である。図1Bのテクスチャの点A',B',C',D'のUV座標値(u,v)は、ポリゴンの同次座標(Sn,Tn)を同次項Qで乗算した(Sn/Qn,Tn/Qn)となる。また図1Bのテクスチャは、点A',B',C',D'が、XY座標に写像されたポリゴンの点A,B,C,Dと対応するようにポリゴンに貼り付けられる。
【0009】
図2Bは、XY座標を構成する単位画素のX軸方向の辺素dx(図2A)がUV座標上では如何なる変位に対応するかを示したもので、XY座標の辺素dxは、UV座標のU軸方向にdu/dx、V軸方向にdv/dxの変位量に対応していることを表している。すなわち、du/dxとdv/dxは、XY座標で(dx)変化したときのUV座標でのuの変位量とvの変化量である。Y軸方向の辺素dy(図示せず)に対応するUV座標上の変位についても同様である。
【0010】
ところで、このテクスチャマッピングを行う際の、高画質を得る手法としてMIPMAPフィルタリング(Multum in parvo mapping )が知られている。MIPMAPフィルタリングについては、Advanced Animation and Rendering Techniques (page.140) 出版社 : ADDISON WESLEYなどに詳しく述べられている。
【0011】
MIPMAPフィルタリングは、図3に示すように、複数の異なる縮小率(図3の例では、1/1、1/2、1/4、1/8)のそれぞれに対応した、複数のフィルタ処理がなされたテクスチャデータ(元画像、1/2画像、1/4画像、1/8画像)を予め用意し、各画素の縮小率に応じた最適なテクスチャデータを選択し使用するものである。すなわち、これにより、イメージの縮小に伴う情報欠落に起因するエイリアシングの影響を抑制でき、高画質を得ることができる。
【0012】
図4は、MIPMAPフィルタリングを行うテクスチャマッピング装置1の利用例を示している。
【0013】
テクスチャバッファ3には、図3に示したような、複数の異なる縮小率のそれぞれに対応した、複数のフィルタ処理がなされたテクスチャデータが記憶されている。
【0014】
テクスチャマッピング装置1は、ポリゴンの画素の縮小率を表すlod(Level Of Detail)を算出する。テクスチャマッピング装置1は、算出したlodに対応する画像をテクスチャバッファ3から読み出し、ディスプレイバッファ4に出力して記憶させる。ディスプレイバッファ4の記録内容に基づく画像が、図示せぬ表示部に表示される。
【0015】
テクスチャマッピング装置1の動作を、図5のフローチャートを参照して説明する。
【0016】
ステップS1において、テクスチャマッピング装置1は、ポリゴン(図1A)の各頂点ついての同次座標および同次項を示す(s1 ,t1 ,q1 )、(s2 ,t2 ,q2)、および(s3 ,t3 ,q3 )を入力する。
【0017】
次に、ステップS2において、テクスチャマッピング装置1は、入力した各頂点の(s1 ,t1 .q1 )、(s2 ,t2 ,q2 )、および(s3 ,t3 ,q3 )を線形補間して、ポリゴンの内部の各画素の同次座標および同次項を示す(s,t,q)を求める。
【0018】
ステップS3において、テクスチャマッピング装置1は、内蔵したlod算出装置2において、ポリゴンの内部の各画素の(s,t,q)から、各画素のlodを算出する。
【0019】
ここでは、式(1)に示すように、2を底とする、各画素の(s,t,q)の縮小率を1/nとした場合のnの対数で表すことができる。従って、縮小率が1/1,1/2,1/4,1/8・・・のとき、0,1,2,3,・・・となる。
【数1】
【0020】
縮小率(1/n)のnは、式(2)で求めることができる。
【数2】
【0021】
なお、式(2)中の、du/dxとdv/dxは、XY座標で(dx)変化したときのUV座標でのuの変位量とvの変化量であり(図2B)、du/dyとdv/dyは、XY座標で(dy)変化したときのUV座標でのuの変位量とvの変化量であり、それらは、式(3)に従って算出される。したがって、nは、式(4)で求めることができる。
【数3】
【数4】
【0022】
式(3),(4)中、dS/dx、dT/dx、およびdQ/dxは、X方向の1画素当たりの(S,T,Q)の差分を、dS/dy、dT/dy、およびdQ/dyは、Y方向の1画素当たりの(S,T,Q)の差分を表している。USIZEは、テクスチャの幅(U方向の長さ)を表し、VSIZEは、テクスチャの高さ(V方向の長さ)を表す。
【0023】
従って、lodは、結局、式(1)に式(4)が代入された式(5)が演算されることにより算出される。
【数5】
【0024】
図6は、式(5)を演算して、lodを算出するlod算出装置2の構成例を表している。
【0025】
除算器11は、入力されたQで、1を除算し(1/Qを演算し)、その除算結果を、乗算器12、乗算器13、回路21(乗算器32,34)、回路22(乗算器42,44)、回路24(乗算器52,54)、および回路25(乗算器62,64)に出力する。
【0026】
乗算器12は、Sと1/Qを乗算し、その乗算結果を、回路21(乗算器35)、および回路22(乗算器45)に出力する。乗算器13は、Tと1/Qを乗算し、その乗算結果を、回路24(乗算器55)、および回路25(乗算器65)に出力する。
【0027】
乗算器31乃至絶対値検出器37からなる回路21は、式(5)の符号Aに対応する部分(以下、部分Aと称する。他の部分についても同様とする)を演算し、乗算器41乃至絶対値検出器47からなる回路22は、式(5)の部分Cを演算し、演算結果を、それぞれ最大値検出器23に出力する。最大値検出器23は、回路21からの値(部分Aの値)と回路22からの値(部分Cの値)のうちの大きい方を検出し、その検出結果を最大値検出器27に出力する。
【0028】
乗算器51乃至絶対値検出器57からなる回路24は、式(5)の部分Bを演算し、乗算器61乃至絶対値検出器67からなる回路25は、部分Dを演算し、演算結果を、それぞれ最大値検出器26に出力する。最大値検出器26は、回路24からの値(部分Bの値)と回路25からの値(部分Dの値)のうちの大きい方を検出し、その検出結果を最大値検出器27に出力する。
【0029】
最大値検出器27は、最大値検出器23からの値と最大値検出器26からの値のうちの大きい方を検出し、その検出結果を対数演算器28に出力する。対数演算器28は、2を底とする最大値検出器27からの値の対数を演算し、その演算結果(式(5)全体の演算結果)を、lodとしてディスプレイバッファ4(図4)に出力する。
【0030】
次に、ステップS4において、テクスチャマッピング装置1は、各画素の(s,t,q)について、sデータをqデータで除算したuデータと、tデータをqデータで除算したvデータとを算出し、テクスチャ座標データ(u,v)を算出する。
【0031】
ステップS5において、テクスチャマッピング装置1は、lod算出装置2で算出したlodと、テクスチャ座標データ(u,v)とから、テクスチャバッファ3における物理アドレスであるテクスチャアドレス(U,V)を求め、テクスチャバッファ3に出力し、テクスチャデータ(R,G,B)を読み出す。
【0032】
次に、ステップS6において、テクスチャマッピング装置1は、ステップS5で読み出しテクスチャデータに所定の処理を施した画素データをディスプレイバッファ4に書き込む。
【0033】
その後、処理は終了する。
【0034】
以上のようにして、テクスチャバッファ3に記憶されている、複数の異なる縮小率のそれぞれに対応した複数のテクスチャデータのうち、lodに対応したテクスチャデータについてのアクセスが実現される。
【0035】
【発明が解決しようとする課題】
ところで、式(5)の部分A乃至部分Dには、Q2の除算が行われる。その結果、lod算出装置2の構成は、図6で示したように、除算器(図6の例の場合、1個の除算器11)の他、多くの乗算器が必要となり(図6の例の場合、22個の乗算器が必要となり)、lod算出装置2の規模が大きくなるの課題があった。
【0036】
本発明はこのような状況に鑑みてなされたものであり、簡単な構成の装置で、lodを算出することができるようにするものである。
【0037】
【課題を解決するための手段】
本発明の画像処理装置は、所定の縮小率に対応した複数のテクスチャデータを記憶する記憶手段と、単位図形の画素の縮小率を、除算を含まない所定の式の演算結果に基づいて決定する決定手段と、決定手段により決定された縮小率に対応するテクスチャデータを、記憶手段から取得する取得手段と、取得手段により取得されたテクスチャデータを単位図形に対応付ける対応付け手段とを備え、決定手段は、式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、値Wの浮動小数点の数値である2 e ×mの対数を演算することで行うことを特徴とする。
【0039】
決定手段は、1<m<2において、2を底とする2e×mの対数を、e、(m−1)、およびlog2mとm−1の差分値に基づいて算出することができる。
【0040】
決定手段は、mと、mに対応する差分値からなるテーブルを記憶しており、2を底とする2e×mの対数を、e、(m−1)、およびテーブルにおいてmに対応する差分値に基づいて算出することができる。
【0041】
本発明の画像処理方法は、所定の縮小率に対応した複数のテクスチャデータを記憶する記憶ステップと、単位図形の画素の縮小率を、除算を含まない所定の式の演算結果に基づいて決定する決定ステップと、決定ステップの処理で決定された縮小率に対応するテクスチャデータを、記憶制御ステップの処理で記憶された複数のテクスチャデータから取得する取得ステップと、取得ステップの処理で取得されたテクスチャデータを単位図形に対応付ける対応付けステップとを含み、決定ステップは、式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、値Wの浮動小数点の数値である2 e ×mの対数を演算することで行うことを特徴とする。
【0042】
本発明の記録媒体のプログラムは、所定の縮小率に対応した複数のテクスチャデータの記憶を制御する記憶制御ステップと、単位図形の画素の縮小率の、除算を含まない所定の式の演算結果に基づく決定を制御する決定制御ステップと、決定制御ステップの処理で決定された縮小率に対応するテクスチャデータの、記憶制御ステップの処理で記憶された複数のテクスチャデータからの取得を制御する取得制御ステップと、取得制御ステップの処理で取得されたテクスチャデータの、単位図形に対する対応付けを制御する対応付け制御ステップとを含み、決定制御ステップは、式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、値Wの浮動小数点の数値である2 e ×mの対数を演算することで行うことを特徴とする。
【0043】
本発明のプログラムは、所定の縮小率に対応した複数のテクスチャデータの記憶を制御する記憶制御ステップと、単位図形の画素の縮小率の、除算を含まない所定の式の演算結果に基づく決定を制御する決定制御ステップと、決定制御ステップの処理で決定された縮小率に対応するテクスチャデータの、記憶制御ステップの処理で記憶された複数のテクスチャデータからの取得を制御する取得制御ステップと、取得制御ステップの処理で取得されたテクスチャデータの単位図形に対する対応付けを制御する対応付け制御ステップとを含み、決定制御ステップは、式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、値Wの浮動小数点の数値である2 e ×mの対数を演算することで行うを処理をコンピュータに実行させることを特徴とする。
【0044】
本発明の画像処理装置および方法、並びにプログラムにおいては、所定の縮小率に対応した複数のテクスチャデータが記憶され、単位図形の画素の縮小率が、除算を含まない所定の式の演算結果に基づいて決定され、決定された縮小率に対応するテクスチャデータが、記憶された複数のテクスチャデータから取得され、取得されたテクスチャデータが単位図形に対応付けられ、単位図形の画素の縮小率の決定は、式に含まれる2を底とする、任意の値Wの対数の演算が、2を底とする、値Wの浮動小数点の数値である2 e ×mの対数を演算することで行われる。
【0045】
【発明の実施の形態】
図7は、本発明を適用したテクスチャマッピング装置1の利用例を示している。このテクスチャマッピング装置1には、図4のlod算出装置2に代えて、lod算出装置101が設けられている。
【0046】
次に、このテクスチャマッピング装置1の動作を、図8のフローチャートを参照して説明する。
【0047】
ステップS11,S12、およびステップS14乃至ステップS16においては、図5のステップS1,S2、およびステップS4乃至ステップS6における場合と同様の処理が実行されるので、その説明は省略する。
【0048】
ステップS13において、lod算出装置101は、ポリゴンの内部の各画素の(s,t,q)から、式(6)を演算して、lodを算出する。
【数6】
【0049】
式(6)は、図4のlod算出装置2において、lodを算出するために演算された式(5)が、除算を含まないように展開されたもので、正確には、式(5)を式(7)のように展開した後、さらに式(6)のように展開したものである。
【数7】
【0050】
図9は、lod算出装置101の構成例を表している。このlod算出装置101には、乗算器が、図4のlod算出装置2には、22個設けられていたのに対して、9個しか存在せず、装置の小型化が図られている。
【0051】
図9の回路111A乃至111Cのそれぞれは、2個の乗算器、1個の減算器、および1個の絶対値検出器から構成されている。
【0052】
乗算器121−1乃至絶対値検出器121−4からなる回路111Aは、式(6)の部分Aを演算し、その演算結果を、最大値検出器111Cに出力する。すなわち、乗算器121−1は、dS/dxとQを乗算し、乗算器121−2は、dQ/dxとSを乗算し、その乗算結果を、それぞれ減算器121−3に出力する。減算器121−3は、乗算器121−1からの乗算結果から、乗算器121−2からの乗算結果を減算して、その減算結果を、絶対値検出器121−4に出力する。絶対値検出器121−4は、減算器121−3からの減算結果の絶対値を検出し、その検出結果を、最大値検出器111Cに出力する。
【0053】
乗算器122−1乃至絶対値検出器122−4からなる回路111Bは、式(6)の部分Bを演算し、その演算結果を最大値検出器111Cに出力する。
【0054】
最大値検出器111Cは、回路111Aからの演算結果(式(6)の部分Aの値)と、回路111Bからの演算結果(式(6)の部分Bの値)のうちの大きい方を検出し、対数演算器111Dに出力する。すなわち、最大値検出器111Cは、式(6)の部分Cを演算する。
【0055】
対数演算器111Dは、2を底とする最大値検出器111Cからの値の対数を演算し(式(6)の部分Dを演算し)、その演算結果を、加算器131に出力する。
【0056】
対数演算器111Eは、2を底とするUSIZEの対数を演算し(式(6)の部分Eを演算し)、その演算結果を、減算器132に出力する。
【0057】
乗算器111Fは、Qの二乗を演算し(式(6)の部分Fを演算し)、その演算結果を、対数演算器111Gに出力する。対数演算器111Gは、2を底とするQの二乗の対数を演算し(部分Gを演算し)、その演算結果を、減算器132および減算器133に出力する。
【0058】
対数演算器111Hは、2を底とするVSIZEの対数を演算し(式(6)の部分Hを演算し)、その演算結果を、減算器133に出力する。
【0059】
乗算器123−1乃至絶対値検出器123−4からなる回路111Iは、式(6)の部分Iを演算し、乗算器124−1乃至絶対値検出器124−4からなる回路111Jは、部分Jを演算し、その演算結果を、それぞれ最大値検出器111Kに出力する。
【0060】
最大値検出器111Kは、回路111Iからの演算結果(式(6)の部分Iの値)と、回路111Jからの演算結果(式(6)の部分Jの値)のうちの大きい方を検出し(部分Kを演算し)、対数演算器111Lに出力する。対数演算器111Lは、2を底とする最大値検出器111Kからの値の対数を演算し(部分Lを演算し)、その演算結果を、加算器134に出力する。
【0061】
減算器132は、対数演算器111Eからの値から、対数演算器111Gからの値を減算して、その減算結果を、加算器131に出力する。加算器131は、対数演算器111Dからの値と減算器132からの値を加算して、その加算結果を、最大値検出器135に出力する。
【0062】
減算器133は、対数演算器111Hからの値から対数演算器111Gからの値を減算し、その減算結果を、加算器134に出力する。
【0063】
加算器134は、対数演算器111Lからの値と、減算器133からの値とを加算し、その加算結果を、最大値検出器135に出力する。
【0064】
最大値検出器135は、加算器131からの値と、加算器134からの値のうちの大きい方を検出し、その検出結果(式(6)全体の演算結果)を、lodとして、ディスプレイバッファ4に出力する。
【0065】
ところで、対数演算器111D,E,G,H,Lは、図10Aの式に示すように、2を底とする、入力された値(以下、値Wと称する)の対数を演算するが、lod算出装置101への入力値は、浮動小数の数値であるので、ここでは浮動小数点の数値の対数演算が行われる。
【0066】
以下に、この浮動小数点の数値の対数演算について説明する。
【0067】
値Wの浮動小数点の数値は、図10Bに示すように表現され、それの、図10Cの左辺のように、2を底とする対数をとると、図10Cの右辺が得られる。
【0068】
ところで、図10Cの右辺の第2項(log2m)の軌跡は、図11に示すようになる。すなわち、図10Cの右辺の第2項は、1<m<2の範囲において、図11中、点Aと点Bを通る直線に近似することができるので、図10Dの式が成り立つ。
【0069】
図10Dの式中のerror(m)は、図10Cの右辺の第2項と、図11の点Aと点Bを通る直線との差分である(log2mと(m−1.0)の差分である)。
【0070】
すなわち、対数演算器は、1<m<2においては、値Wの浮動小数点の数値を構成するeとm、並びにmに対応するerror(m)を得て、図10Dを図10Cの右辺に代入することで(結局、図10Eの右辺を演算することで)、図10Aの対数の値を得ることができる。
【0071】
なお、error(m)(図10D,Eの式、図11)は、mに1対1に対応するので、この例の場合、対数演算器は、mとerror(m)とが1体1に対応付けられた対応テーブル(詳細は後述するが、正確には、m-1とerror(m)とが1体1に対応付けられた対応テーブル)を記憶しているものとし、値Wのmに対応するerror(m)をその対応テーブルから取得するものとする。
【0072】
また、ここでの、e、(m−1.0)、およびerror(m)の加算(図10Eの右辺の演算)は、eは、整数であり、(m−1.0)+error(m)は、1<m<2の下では、少数点以下の値となるので、この例の場合、図12に示すように、eを4ビットで表して整数部に設定し、(m−1.0+error(m))を4ビットで表して小数部に設定することで行われる。すなわち、lodは、4ビットの整数部と4ビットの小数部からなる。
【0073】
また、(m−1.0)とerror(m)の加算は、m−1.0を表す4ビットと、error(m)を表す4ビットを加算することで行われる。すなわち、この例の場合、対応テーブルには、図13に示すように、小数点以下の数値としての(m−1.0)を表す4ビットと、それに対応する小数点以下の数値としてのerror(m)を表す4ビットが対応して設定されている。m−1.0が0または1、すなわち、mが1または2に近い値であればあるほど、図11に示すように、error(m)は小さいものとなっている。
【0074】
例えば、m−1.0が、値0.5であるとき(m=1.5であるとき)、m−1.0を表す4ビットは”1000”であるので、その”1000”と、対応テーブルにおいてm−1.0の欄の”1000”に対応して設定されているerror(m)の欄の”0001”とが加算され、その加算結果である”1001”が小数部となる。
【0075】
なお、値1を、図14Aに示すように、整数を表す1ビットと、小数点以下の数値を表す4ビットで表した場合、値0.5は、図14Bのように、図14Aの整数を表す1ビットに設定された1を、図中右方向に1ビット分シフトしたものとなるので(1を1/2したものであるので)、値0.5は、”1000”となる。
【0076】
上述した一連の処理は、ハードウエアにより実現させることもできるが、ソフトウエアにより実現させることもできる。一連の処理をソフトウエアにより実現する場合には、そのソフトウエアを構成するプログラムがコンピュータにインストールされ、そのプログラムがコンピュータで実行されることより、上述したlod算出装置101が機能的に実現される。
【0077】
図15は、上述のようなlod算出装置101として機能するコンピュータ501の一実施の形態の構成を示すブロック図である。CPU(Central Processing Unit)511にはバス515を介して入出力インタフェース516が接続されており、CPU511は、入出力インタフェース516を介して、ユーザから、キーボード、マウスなどよりなる入力部518から指令が入力されると、例えば、ROM(Read Only Memory)512、ハードディスク514、またはドライブ520に装着される磁気ディスク531、光ディスク532、光磁気ディスク533、若しくは半導体メモリ534などの記録媒体に格納されているプログラムを、RAM(Random Access Memory)513にロードして実行する。これにより、上述した各種の処理が行われる。さらに、CPU511は、その処理結果を、例えば、入出力インタフェース516を介して、LCD(Liquid Crystal Display)などよりなる出力部517に必要に応じて出力する。なお、プログラムは、ハードディスク514やROM512に予め記憶しておき、コンピュータ501と一体的にユーザに提供したり、磁気ディスク531、光ディスク532、光磁気ディスク533,半導体メモリ534等のパッケージメディアとして提供したり、衛星、ネットワーク等から通信部519を介してハードディスク514に提供することができる。
【0078】
なお、本明細書において、記録媒体により提供されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0079】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0080】
【発明の効果】
本発明によれば、装置を簡単な構成にすることができる。
【図面の簡単な説明】
【図1】テクスチャマッピングの原理を説明する図である。
【図2】テクスチャマッピングの原理を説明する他の図である。
【図3】 MIPMAPフィルタリングの原理を説明する図である。
【図4】従来のテクスチャマッピング装置の構成例を示すブロック図である。
【図5】図4のテクスチャマッピング装置の動作を説明するフローチャートである。
【図6】図4のlod算出装置2の構成例を示すブロック図である。
【図7】本発明を適用したテクスチャマッピング装置の構成例を示すブロック図である。
【図8】図7のテクスチャマッピング装置の動作を説明するフローチャートである。
【図9】図7のlod算出装置の構成例を示すブロック図である。
【図10】図7のlod算出装置におけるlod算出方法について説明する図である。
【図11】 log2mとmの関係を示す図である。
【図12】 lodのデータ構成を説明する図である。
【図13】対応テーブルを説明する図である。
【図14】小数部を説明する図である。
【図15】パーソナルコンピュータ501の構成例を示すブロック図である。
【符号の説明】
1 テクスチャマッピング装置, 3 テクスチャバッファ, 4 ディスプレイバッファ, 101 lod算出装置, 111A 回路, 111B 回路, 111C 最大値検出器, 111D 対数演算器, 111E 対数演算器, 111F 乗算器, 111G 対数演算器, 111H 対数演算器,111I 回路, 111J 回路, 111K 最大値検出器, 111L対数演算器, 131 加算器, 132 減算器, 133 減算器, 134 加算器, 135 最大値検出器

Claims (6)

  1. モデルを形成する複数の単位図形の各画素についての縮小率を決定し、決定した前記縮小率に応じたテクスチャデータを前記単位図形に対応付ける画像処理装置において、
    所定の縮小率に対応した複数のテクスチャデータを記憶する記憶手段と、
    前記単位図形の画素の縮小率を、除算を含まない所定の式の演算結果に基づいて決定する決定手段と、
    前記決定手段により決定された前記縮小率に対応する前記テクスチャデータを、前記記憶手段から取得する取得手段と、
    前記取得手段により取得された前記テクスチャデータを前記単位図形に対応付ける対応付け手段と
    を備え、
    前記決定手段は、前記式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、前記値Wの浮動小数点の数値である2 e ×mの対数を演算することで行う
    ことを特徴とする画像処理装置。
  2. 前記決定手段は、1<m<2において、2を底とする2e×mの前記対数を、e、(m−1)、およびlog2mとm−1の差分値に基づいて算出する
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 前記決定手段は、mと、mに対応する前記差分値からなるテーブルを記憶しており、2を底とする2e×mの前記対数を、前記e、前記(m−1)、および前記テーブルにおいて前記mに対応する前記差分値に基づいて算出する
    ことを特徴とする請求項1に記載の画像処理装置。
  4. モデルを形成する複数の単位図形の各画素についての縮小率を決定し、決定した前記縮小率に応じたテクスチャデータを前記単位図形に対応付ける画像処理装置の画像処理方法において、
    所定の縮小率に対応した複数のテクスチャデータを記憶する記憶ステップと、
    前記単位図形の画素の縮小率を、除算を含まない所定の式の演算結果に基づいて決定する決定ステップと、
    前記決定ステップの処理で決定された前記縮小率に対応する前記テクスチャデータを、前記記憶制御ステップの処理で記憶された前記複数のテクスチャデータから取得する取得ステップと、
    前記取得ステップの処理で取得された前記テクスチャデータを前記単位図形に対応付ける対応付けステップと
    を含み、
    前記決定ステップは、前記式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、前記値Wの浮動小数点の数値である2 e ×mの対数を演算することで行う
    ことを特徴とする画像処理方法。
  5. モデルを形成する複数の単位図形の各画素についての縮小率を決定し、決定した前記縮小率に応じたテクスチャデータを前記単位図形に対応付ける画像処理装置のプログラムであって、
    所定の縮小率に対応した複数のテクスチャデータの記憶を制御する記憶制御ステップと、
    前記単位図形の画素の縮小率の、除算を含まない所定の式の演算結果に基づく決定を制御する決定制御ステップと、
    前記決定制御ステップの処理で決定された前記縮小率に対応する前記テクスチャデータの、前記記憶制御ステップの処理で記憶された前記複数のテクスチャデータからの取得を制御する取得制御ステップと、
    前記取得制御ステップの処理で取得された前記テクスチャデータの、前記単位図形に対する対応付けを制御する対応付け制御ステップと
    を含み、
    前記決定制御ステップは、前記式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、前記値Wの浮動小数点の数値である2 e ×mの対数を演算することで行う
    ことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
  6. モデルを形成する複数の単位図形の各画素についての縮小率を決定し、決定した前記縮小率に応じたテクスチャデータを前記単位図形に対応付ける画像処理装置のプログラムであって、
    所定の縮小率に対応した複数のテクスチャデータの記憶を制御する記憶制御ステップと、
    前記単位図形の画素の縮小率の、除算を含まない所定の式の演算結果に基づく決定を制御する決定制御ステップと、
    前記決定制御ステップの処理で決定された前記縮小率に対応する前記テクスチャデータの、前記記憶制御ステップの処理で記憶された前記複数のテクスチャデータからの取得を制御する取得制御ステップと、
    前記取得制御ステップの処理で取得された前記テクスチャデータの前記単位図形に対する対応付けを制御する対応付け制御ステップと
    を含み、
    前記決定制御ステップは、前記式に含まれる2を底とする、任意の値Wの対数の演算を、2を底とする、前記値Wの浮動小数点の数値である2 e ×mの対数を演算することで行う
    を処理をコンピュータに実行させることを特徴とするプログラム。
JP2001355866A 2001-11-21 2001-11-21 画像処理装置および方法、記録媒体、並びにプログラム Expired - Fee Related JP3775580B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001355866A JP3775580B2 (ja) 2001-11-21 2001-11-21 画像処理装置および方法、記録媒体、並びにプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001355866A JP3775580B2 (ja) 2001-11-21 2001-11-21 画像処理装置および方法、記録媒体、並びにプログラム
US10/299,297 US7151862B2 (en) 2001-11-21 2002-11-19 Image processing apparatus and method, storage medium, and program

Publications (2)

Publication Number Publication Date
JP2003157445A JP2003157445A (ja) 2003-05-30
JP3775580B2 true JP3775580B2 (ja) 2006-05-17

Family

ID=19167490

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001355866A Expired - Fee Related JP3775580B2 (ja) 2001-11-21 2001-11-21 画像処理装置および方法、記録媒体、並びにプログラム

Country Status (2)

Country Link
US (1) US7151862B2 (ja)
JP (1) JP3775580B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4140575B2 (ja) * 2004-07-30 2008-08-27 ソニー株式会社 画像変形装置,画像変形回路及び画像変形方法
JP4462132B2 (ja) 2005-07-04 2010-05-12 ソニー株式会社 画像特殊効果装置,グラフィックスプロセッサ,プログラム
US8106918B2 (en) * 2007-05-01 2012-01-31 Vivante Corporation Apparatus and method for texture level of detail computation
US8207980B2 (en) * 2007-05-01 2012-06-26 Vivante Corporation Coordinate computations for non-power of 2 texture maps

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3082289B2 (ja) * 1991-05-14 2000-08-28 富士ゼロックス株式会社 画像処理装置
JP2637931B2 (ja) * 1994-12-01 1997-08-06 インターナショナル・ビジネス・マシーンズ・コーポレイション テクスチャ・マッピングを行うコンピュータ・システム
KR100214332B1 (ko) * 1996-09-02 1999-08-02 윤종용 영상 배율 임의 변경 방법
JP4069486B2 (ja) * 1998-03-17 2008-04-02 ソニー株式会社 記憶回路制御装置およびグラフィック演算装置
JP4300650B2 (ja) * 1999-09-07 2009-07-22 ソニー株式会社 演算処理回路およびその方法と画像処理装置
JP3502024B2 (ja) * 1999-09-10 2004-03-02 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、記録媒体および画像処理方法
JP3352982B2 (ja) * 1999-09-14 2002-12-03 株式会社スクウェア レンダリング方法及び装置、ゲーム装置、並びに立体モデルをレンダリングするプログラムを格納するコンピュータ読み取り可能な記録媒体
JP4568950B2 (ja) * 2000-02-29 2010-10-27 ソニー株式会社 グラフィックス描画装置

Also Published As

Publication number Publication date
US20030117399A1 (en) 2003-06-26
US7151862B2 (en) 2006-12-19
JP2003157445A (ja) 2003-05-30

Similar Documents

Publication Publication Date Title
US10269176B2 (en) Efficient geometric tessellation and displacement
EP3129973B1 (en) Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location
EP2381421B1 (en) Automatic generation of 3D models from packaged goods product images
US5808619A (en) Real-time rendering method of selectively performing bump mapping and phong shading processes and apparatus therefor
EP1049049B1 (en) Curved surface reconstruction at plural resolution levels
US10685420B2 (en) Tile based computer graphics
DE60126967T2 (de) Verfahren und Vorrichtung für Anti-Aliasing durch Überabtastung
JP2910979B2 (ja) コンピュータグラフィックシステムのサブピクセルマスク発生方法および装置
JP3294149B2 (ja) 立体テクスチャマッピング処理装置及びそれを用いた3次元画像生成装置
KR100594073B1 (ko) 내장형 시스템의 디지털 영상 스케일링방법
US8963960B2 (en) System and method for content aware hybrid cropping and seam carving of images
US5278949A (en) Polygon renderer which determines the coordinates of polygon edges to sub-pixel resolution in the X,Y and Z coordinates directions
US6246422B1 (en) Efficient method for storing texture maps in multi-bank memory
US6999095B2 (en) System and process for optimal texture map reconstruction from multiple views
US6141013A (en) Rapid computation of local eye vectors in a fixed point lighting unit
US5343558A (en) Method for scan converting shaded triangular polygons
US7081895B2 (en) Systems and methods of multi-pass data processing
TW201601115A (zh) 藉由近似頂點至彎曲視埠上的投影在圖形處理中隨螢幕位置變化有效解析度
JP3245655B2 (ja) 作業スペースの表示処理方法
US6133901A (en) Method and system for width independent antialiasing
JP4205327B2 (ja) ボリュームデータセットのレンダリング方法およびシステム
US6160557A (en) Method and apparatus providing efficient rasterization with data dependent adaptations
US7446780B1 (en) Temporal antialiasing in a multisampling graphics pipeline
KR101033779B1 (ko) 확장된 버텍스 캐시를 갖는 그래픽스 프로세싱 유닛을 이용하여 이미지를 프로세싱하는 방법 및 장치
JP4255449B2 (ja) 描画処理装置、テクスチャ処理装置、およびテセレーション方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051028

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060215

LAPS Cancellation because of no payment of annual fees