(57)【要約】【課題】膨大なテクスチャデータを圧縮し、圧縮したデータを用いたロバストかつ高品位なテクスチャ生成を行うことができ、少ないテクスチャサンプルを用いても精度の良いマッピングを行う。【解決手段】圧縮手段１０１が、テクスチャ画像群に含まれている各テクスチャ画像に対して、素材の特徴に応じたサンプリングを行い圧縮する。生成手段１０２が、圧縮されたテクスチャ画像群を、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、コードブックのアドレスを示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャに変換し、高次元テクスチャを基にして任意サイズの高次元テクスチャを生成する。マッピング手段１０３が、３次元モデルのデータを入力し、複数の条件に応じて、高次元テクスチャからテクスチャサンプルを選出し、テクスチャマッピングを行う。【選択図】図１
2006031561.tif 000002
【特許請求の範囲】
【請求項１】
複数の異なる条件で取得あるいは作成した複数のテクスチャ画像を含むテクスチャ画像群に対してサンプリングを行い、前記複数の異なる条件の各々に対応する任意サイズのテクスチャ画像を生成し、３次元モデルへのテクスチャマッピングを行う高次元テクスチャマッピング装置であって、
前記テクスチャ画像群に含まれている各テクスチャ画像に対して、素材の特徴に応じたサンプリングを行い圧縮する圧縮手段と、
前記圧縮されたテクスチャ画像群を、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、該コードブックのアドレスを示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャに変換し、該高次元テクスチャを基にして任意サイズの高次元テクスチャを生成する生成手段と、
前記３次元モデルのデータを入力し、前記複数の条件に応じて、前記高次元テクスチャからテクスチャサンプルを選出し、テクスチャマッピングを行うマッピング手段を具備することを特徴とする高次元テクスチャマッピング装置。
【請求項２】
前記圧縮手段は、クラスタリング処理若しくは隣接したテクスチャサンプルによる補間画像を利用することの妥当性を評価することを特徴とする請求項１に記載の高次元テクスチャマッピング装置。
【請求項３】
前記圧縮手段は、前記テクスチャ画像群に周期的なサンプリング若しくは非周期的なサンプリングを行い、
非周期的にサンプリングを行う場合には、全てのテクスチャサンプルに対して、各テクスチャサンプルを削除した場合の補間による再現性を計算し、最も再現性の高いテクスチャサンプルを削除し、この手順を目標のテクスチャサンプル数になるまで繰り返すことを特徴とする請求項１又は請求項２に記載の高次元テクスチャマッピング装置。
【請求項４】
前記圧縮手段は、前記再現性の計算として、複数の近隣条件のテクスチャサンプルを線形補間することによって生成した補間画像と元の画像との類似度を、ＳＮ比若しくは相関値若しくはベクトルの内積を利用して計算することを特徴とする請求項３記載の高次元テクスチャマッピング装置。
【請求項５】
前記圧縮手段は、前記テクスチャ画像群に非周期的なサンプリングを行う場合に、取得条件が類似している２枚のテクスチャサンプルの類似度を全てのテクスチャサンプルの組み合わせに対して計算し、最も類似度の高い２枚のテクスチャをブレンドし、２枚のテクスチャをこれらテクスチャのブレンド画像で置き換え、この手順を目標のテクスチャサンプル数になるまで繰り返すことを特徴とする請求項１又は２に記載の高次元テクスチャマッピング装置。
【請求項６】
前記圧縮手段は、前記類似度を計算する場合に、既にブレンドされていて同じブレンド画像であるものを除外して計算することを特徴とする請求項５に記載の高次元テクスチャマッピング装置。
【請求項７】
前記圧縮手段は、２枚のテクスチャをこれらテクスチャのブレンド画像で置き換える場合に、該２枚のうちの少なくともいずれかのテクスチャが複数のテクスチャサンプルをブレンドしたものである場合には、該ブレンドしたものと同じブレンド画像の全てのテクスチャサンプルを含めて、前記ブレンド画像で置き換えることを特徴とする請求項５又は請求項６に記載の高次元テクスチャマッピング装置。
【請求項８】
前記圧縮手段は、前記テクスチャ画像群に非周期的なサンプリングを行う場合に、テクスチャサンプルのベクトル量子化を行うことを特徴とする請求項１又は請求項２に記載の高次元テクスチャマッピング装置。
【請求項９】
前記圧縮手段は、クラスタ要素の平均及び分散の少なくともいずれかを利用して２つの代表ベクトルを決定し、全てのテクスチャサンプルに対して最も近い代表ベクトルを求め複数のクラスタを生成し、新たな代表ベクトルとして各クラスタ要素ごとの平均ベクトルを計算し、この処理を代表ベクトルが収束するまで繰り返し、収束した代表ベクトルの数がある数に到達するまで２ｋ（ｋは２以上の自然数）個に増やしながら収束する代表ベクトルの数を増加させることを特徴とする請求項１又は請求項２に記載の高次元テクスチャマッピング装置。
【請求項１０】
前記生成手段は、前記インデックス画像の配列に類似した、前記圧縮されたテクスチャ画像群の圧縮率に応じたサイズの新規インデックス画像を生成し、該新規インデックス画像をブロック単位でスキャンし、近隣ブロックに類似した部分を前記インデックス画像の中から探索しブロック単位で描画し、前記近隣ブロックに類似した部分を探索する場合に、探索誤差のしきい値を設定して、新規インデックス画像の大きさに応じて、かつ該探索誤差の範囲内でブロックサイズを動的に変化させ、描画後のブロック間のインデックスの配列が元々のインデックス画像の配列にはないものであった場合は、ピクセル単位に再描画することを特徴とする請求項１又は請求項２に記載の高次元テクスチャマッピング装置。
【請求項１１】
前記マッピング手段は、３次元モデルデータの最小単位である３角形プリミティブの各頂点の位置情報に基づいて、該３角形プリミティブ内の各点での、前記複数の条件である視点方向及び光源方向を決定し、マッピングのための各頂点のテクスチャ座標情報に基づいて前記３角形プリミティブ内の各点に対応するテクスチャ座標を決定し、前記決定された条件が前記圧縮されたテクスチャ画像群内に存在しない条件である場合には、類似の条件で取得又は作成された複数のテクスチャサンプルの指定されたテクスチャ座標の色情報を利用して、補間色を生成してマッピングを行うことを特徴とする請求項１又は請求項２に記載の高次元テクスチャマッピング装置。
【請求項１２】
複数の異なる条件で取得あるいは作成した複数のテクスチャ画像を含むテクスチャ画像群に対してサンプリングを行い、前記複数の異なる条件の各々に対応する任意サイズのテクスチャ画像を生成し、３次元モデルへのテクスチャマッピングを行う高次元テクスチャマッピング方法であって、
前記テクスチャ画像群に含まれている各テクスチャ画像に対して、素材の特徴に応じたサンプリングを行い圧縮し、
前記圧縮されたテクスチャ画像群を、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、該コードブックのアドレスを示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャに変換し、該高次元テクスチャを基にして任意サイズの高次元テクスチャを生成し、
前記３次元モデルのデータを入力し、前記複数の条件に応じて、前記高次元テクスチャからテクスチャサンプルを選出し、テクスチャマッピングを行うことを特徴とする高次元テクスチャマッピング方法。
【請求項１３】
複数の異なる条件で取得あるいは作成した複数のテクスチャ画像を含むテクスチャ画像群に対してサンプリングを行い、前記複数の異なる条件の各々に対応する任意サイズのテクスチャ画像を生成し、３次元モデルへのテクスチャマッピングを行うためにコンピュータ上で使用される高次元テクスチャマッピングプログラムであって、
コンピュータを、
前記テクスチャ画像群に含まれている各テクスチャ画像に対して、素材の特徴に応じたサンプリングを行い圧縮する圧縮手段と、
前記圧縮されたテクスチャ画像群を、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、該コードブックのアドレスを示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャに変換し、該高次元テクスチャを基にして任意サイズの高次元テクスチャを生成する生成手段と、
前記３次元モデルのデータを入力し、前記複数の条件に応じて、前記高次元テクスチャからテクスチャサンプルを選出し、テクスチャマッピングを行うマッピング手段として機能させるための高次元テクスチャマッピングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元コンピュータグラフィックス分野における高品位なテクスチャマッピング技術を行うための高次元テクスチャマッピング装置、方法及びプログラムに関し、特に、視点方向や光源方向などの条件に応じて変化する素材のテクスチャ取得、それらの条件に対応する任意サイズのテクスチャ生成、さらに３次元モデルへのテクスチャマッピングを行うための高次元テクスチャマッピング装置、方法及びプログラムに関する。
【背景技術】
【０００２】
近年、観察者に自然な印象を与える画像を提供するために、小さなテクスチャ画像から任意サイズのテクスチャ画像を生成する方式が提案されている（非特許文献１，２参照）。これは、元の小さなテクスチャ画像を参照しながら、任意サイズのテクスチャ画像をスキャンし、元の画像に近いテクスチャ画像を生成するというものである。また、その応用として、参照している小さなテクスチャ画像の他に目標とするテクスチャ画像を用意し、この目標とするテクスチャ画像の模様や柄を有し、かつ、参照している小さなテクスチャ画像の素材に近い画像を生成する方式も提案されている。
【非特許文献１】Li-Yi Wei, Marc Levoy, "Fast Texture Synthesis Using Tree-structured Vector Quantization", Proceedings SIGGRAPH 2000, pp.479-488.
【非特許文献２】Andrew Nealen and Marc Alexa, “Hybrid Texture Synthesis”, Eurographics symposium on Rendering, 2003.
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、このような従来のテクスチャ画像生成技術は、単に１枚のテクスチャ画像を生成するというものであり、多視点及び多光源についての多数のテクスチャ画像を一括に扱って生成することはできない。この問題を解決するために、複数の異なる視点及び光源などの条件で取得又は作成したテクスチャ群を用いて、それぞれの条件に対応する任意サイズのテクスチャを生成するための高次元テクスチャ生成装置があり、これによって視点及び光源方向に依存したテクスチャを高品位に生成することができる。
【０００４】
しかしながら、複数の異なる視点及び光源などの条件で取得又は作成したテクスチャ群を扱うことによる問題は、膨大なデータ量を要するという点である。そこで、素材の特徴に応じたテクスチャデータの圧縮技術が必須となる。また、データを圧縮することによって、様々なテクスチャ生成技術を利用することができ、ロバストかつ高品位にテクスチャを生成することができる。さらに、テクスチャを３次元モデルにマッピングする際、テクスチャサンプル数の減少に伴い、精度の良い補間技術が必要となる。
【０００５】
視点方向及び光源方向に応じて変化する物体表面の光学的特性をテクスチャで表現しようとすると、視点方向や光源方向が異なる大量のテクスチャ画像と膨大な演算量を必要とするため、実用的なシステムとして利用されていない。
【０００６】
また、大量のテクスチャ画像を一括に扱ったテクスチャ生成手法が存在しないため、任意サイズのテクスチャ画像を視点方向及び光源方向に応じて変化させた時に、物体表面の光学的特性をリアルに表現することができない。
【０００７】
本発明は、上述した従来の技術における問題点に鑑み、膨大なテクスチャデータを圧縮し、圧縮したデータを用いたロバストかつ高品位なテクスチャ生成を行うことができ、少ないテクスチャサンプルを用いても精度の良いマッピングを行うことができる高次元テクスチャマッピング装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の高次元テクスチャマッピング装置によれば、複数の異なる条件で取得あるいは作成した複数のテクスチャ画像を含むテクスチャ画像群に対してサンプリングを行い、前記複数の異なる条件の各々に対応する任意サイズのテクスチャ画像を生成し、３次元モデルへのテクスチャマッピングを行う高次元テクスチャマッピング装置であって、前記テクスチャ画像群に含まれている各テクスチャ画像に対して、素材の特徴に応じたサンプリングを行い圧縮する圧縮手段と、前記圧縮されたテクスチャ画像群を、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、該コードブックのアドレスを示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャに変換し、該高次元テクスチャを基にして任意サイズの高次元テクスチャを生成する生成手段と、前記３次元モデルのデータを入力し、前記複数の条件に応じて、前記高次元テクスチャからテクスチャサンプルを選出し、テクスチャマッピングを行うマッピング手段を具備することを特徴とする。
【０００９】
本発明の高次元テクスチャマッピング方法によれば、複数の異なる条件で取得あるいは作成した複数のテクスチャ画像を含むテクスチャ画像群に対してサンプリングを行い、前記複数の異なる条件の各々に対応する任意サイズのテクスチャ画像を生成し、３次元モデルへのテクスチャマッピングを行う高次元テクスチャマッピング方法であって、前記テクスチャ画像群に含まれている各テクスチャ画像に対して、素材の特徴に応じたサンプリングを行い圧縮し、前記圧縮されたテクスチャ画像群を、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、該コードブックのアドレスを示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャに変換し、該高次元テクスチャを基にして任意サイズの高次元テクスチャを生成し、前記３次元モデルのデータを入力し、前記複数の条件に応じて、前記高次元テクスチャからテクスチャサンプルを選出し、テクスチャマッピングを行うことを特徴とする。
【００１０】
本発明の高次元テクスチャマッピングプログラムによれば、複数の異なる条件で取得あるいは作成した複数のテクスチャ画像を含むテクスチャ画像群に対してサンプリングを行い、前記複数の異なる条件の各々に対応する任意サイズのテクスチャ画像を生成し、３次元モデルへのテクスチャマッピングを行うためにコンピュータ上で使用される高次元テクスチャマッピングプログラムであって、
コンピュータを、前記テクスチャ画像群に含まれている各テクスチャ画像に対して、素材の特徴に応じたサンプリングを行い圧縮する圧縮手段と、前記圧縮されたテクスチャ画像群を、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、該コードブックのアドレスを示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャに変換し、該高次元テクスチャを基にして任意サイズの高次元テクスチャを生成する生成手段と、前記３次元モデルのデータを入力し、前記複数の条件に応じて、前記高次元テクスチャからテクスチャサンプルを選出し、テクスチャマッピングを行うマッピング手段として機能させるためのものである。
【発明の効果】
【００１１】
本発明の高次元テクスチャマッピング装置、方法及びプログラムによれば、膨大なテクスチャデータを圧縮し、圧縮したデータを用いたロバストかつ高品位なテクスチャ生成を行うことができ、少ないテクスチャサンプルを用いても精度の良いマッピングを行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照しながら本発明の実施形態にかかる高次元テクスチャマッピング装置、方法及びプログラムについて詳細に説明する。まず、高次元テクスチャマッピング装置に関する概略を説明した後、各実施形態を説明する。  
３次元物体の見え方、すなわち３次元物体の形状及びその表面の色や質感は、この３次元物体を眺める方向（視点方向）及び光を照射する方向（光源方向）に依存して変化する。３次元コンピュータグラフィックスの分野では、３次元物体の表面をポリゴンと称する多数の２次元平面単位に分割し、ポリゴンごとに描画を行って２次元画像を生成し、これを３次元物体の表示画像としている。
【００１３】
また、視点方向及び光源方向が変化する際の３次元物体の見え方は、表示ポリゴンの向き（３次元姿勢）やポリゴンの光学的特性（輝度等）を視点方向及び光源方向とともに変化させることで表現することができる。
【００１４】
さらに、ポリゴン内部のディテール（例えば模様や柄など）を表現したいという要求に対してはテクスチャマッピングと呼ばれる手法が用いられる。テクスチャマッピングとは、模様や柄が表現された画像（テクスチャ画像）をポリゴン表面に配置（マッピング）する画像処理技術である。
【００１５】
（第１の実施形態）  
本実施形態では、高次元テクスチャマッピング装置の一連の処理の一例を図を参照して説明する。  
本実施形態の高次元テクスチャマッピング装置１００は、複数の異なる条件で取得あるいは作成したテクスチャ画像群を入力し、素材の特徴に応じたテクスチャサンプリング、ロバストかつ高品位な高次元テクスチャ生成を行い、３次元モデルデータへのマッピングを行うものである。高次元テクスチャマッピング装置１００は、図１に示したように、テクスチャサンプリング部１０１、高次元テクスチャ生成部１０２、高次元テクスチャマッピング部１０３を備えている。図１は、本実施形態の高次元テクスチャマッピング装置の構成を説明する図である。  
テクスチャサンプリング部１０１は、複数の異なる条件で取得あるいは作成したテクスチャ画像群を入力し、全テクスチャサンプルのクラスタリング若しくは隣接サンプルによる補間画像利用の妥当性評価などを行い、適切なデータ量に圧縮する。テクスチャサンプリング部１０１は、補間による再現性の計算を行うことによって、サンプル数を削減する。
【００１６】
高次元テクスチャ生成部１０２は、圧縮されたテクスチャ画像群を入力し、同一のピクセルの画像情報を取り出してまとめ、高次元テクスチャと呼ばれるデータ形式に変換し、任意サイズの新規テクスチャを生成する。高次元テクスチャ生成部１０２は、ロバストなテクスチャ生成として、ブロックベースのテクスチャを生成する。
【００１７】
高次元テクスチャマッピング部１０３は、３次元モデルデータ及び高次元テクスチャ生成部１０２で生成された高次元テクスチャを入力し、テクスチャサンプル間の補間処理を行いながら、高品位なテクスチャマッピングを行う。高次元テクスチャマッピング部１０３は、少ないテクスチャサンプルの中で、適切な補間によって、高品位なマッピングを行う。
【００１８】
次に、高次元テクスチャ生成部１０２が行う高次元テクスチャの生成手法、高次元テクスチャのデータ構造などを以下に説明する。高次元テクスチャマッピング装置１００は、テクスチャサンプリング部１０１が行う最適サンプリング（圧縮）手法と以下に述べる高次元テクスチャ生成部１０２の例を組み合わせて、高次元テクスチャマッピング装置１００を構成することができる。  
高次元テクスチャ生成部１０２は、複数の異なる条件で取得又は作成された１つ以上のテクスチャ画像を利用し、これら複数の異なる条件のそれぞれに対応する任意サイズのテクスチャ画像を生成するための新規高次元テクスチャを合成する生成部である。この生成部は、１つ以上のテクスチャ画像を参照テクスチャ画像として入力し、同一ピクセルの色情報を取り出してまとめ、参照高次元テクスチャを生成する参照高次元テクスチャ生成手段と、この参照高次元テクスチャを１つ以上の量子化レベルで量子化するとともにコードブックを生成する参照高次元テクスチャ量子化手段と、この量子化レベルに対応する参照高次元テクスチャの階層性に従って、参照テクスチャ画像のインデックスを画像化してなる参照インデックス画像から、任意の画像サイズを有する新規インデックス画像を合成するインデックス画像合成手段と、インデックス画像合成手段により合成された新規インデックス画像と、参照高次元テクスチャ量子化手段により生成されたコードブックとを組み合わせて、新規高次元テクスチャを生成する新規高次元テクスチャ生成手段と、を備える。
【００１９】
また、高次元テクスチャ生成部１０２は、複数の異なる視点／光源などの条件で取得又は作成されたテクスチャ画像群を、複数の素材に対して入力し、任意サイズ及び任意模様のテクスチャ画像を合成する。  
高次元テクスチャ生成部１０２は、異なる条件で生成され、１種類以上の素材を示すテクスチャ画像を含むテクスチャ画像群を利用して任意サイズ及び任意模様のテクスチャ画像を生成し、このテクスチャ画像群から同一位置のピクセルの画像情報を取り出してまとめて生成した高次元ピクセルデータにより形成されるコードブックと、このコードブックのアドレスを指定するためのインデックス情報により形成されるインデックス画像とを含む高次元テクスチャを生成する。  
また、高次元テクスチャマッピング装置１００は、高次元テクスチャ生成部１０２の他に、高次元テクスチャを格納する高次元テクスチャデータ蓄積部（図示せず）と、高次元テクスチャデータ蓄積部から１種類以上の素材の高次元テクスチャを取り出し、ユーザによって与えられる制御データ又は該制御データを画像化した制御画像に従って、１種類以上の素材のインデックス画像を基に、任意サイズのインデックス画像を合成し、合成インデックス画像を前記高次元テクスチャデータ蓄積部に格納するインデックス画像合成部と、高次元テクスチャデータ蓄積部から高次元テクスチャを取り出し、特定の取得条件又は作成条件に対応する１つ以上のテクスチャ画像に変換するテクスチャ画像生成部とを備え、複数の素材の組み合わせによる任意模様のテクスチャ画像を生成してもよい。
【００２０】
さらに、高次元テクスチャマッピング装置１００は、異なる条件で生成され、１種類以上の素材を示すテクスチャ画像を含むテクスチャ画像群を利用して任意サイズ及び任意模様のテクスチャ画像を生成する高次元テクスチャ合成方法を使用してもよい。この高次元テクスチャ合成方法は、テクスチャ画像群から同一位置のピクセルの画像情報を取り出してまとめて生成した高次元ピクセルデータにより形成されるコードブックと、このコードブックのアドレスを指定するためのインデックス情報により形成されるインデックス画像とを含む高次元テクスチャを生成するステップと、高次元テクスチャを蓄積部に格納するステップと、蓄積部から１種類以上の素材の高次元テクスチャを取り出し、ユーザによって与えられる制御データ又はこの制御データを画像化した制御画像に従って、１種類以上の素材のインデックス画像を基に、任意サイズのインデックス画像を合成するステップと、合成インデックス画像を蓄積部に格納するステップと、蓄積部から高次元テクスチャを取り出し、特定の取得条件又は作成条件に対応する１つ以上のテクスチャ画像に変換するステップとを備え、複数の素材の組み合わせによる任意模様のテクスチャ画像を生成する。
【００２１】
また、高次元テクスチャマッピング装置１００は、異なる条件で生成され、１種類以上の素材を示すテクスチャ画像を含むテクスチャ画像群を利用して任意サイズ及び任意模様のテクスチャ画像をコンピュータに生成させるプログラムを使用してもよい。このプログラムは、テクスチャ画像群から同一位置のピクセルの画像情報を取り出してまとめて生成した高次元ピクセルデータにより形成されるコードブックと、このコードブックのアドレスを指定するためのインデックス情報により形成されるインデックス画像とを含む高次元テクスチャを生成するステップと、高次元テクスチャを蓄積部に格納するステップと、蓄積部から１種類以上の素材の高次元テクスチャを取り出し、ユーザによって与えられる制御データ又はこの制御データを画像化した制御画像に従って、１種類以上の素材のインデックス画像を基に、任意サイズのインデックス画像を合成するステップと、合成インデックス画像を蓄積部に格納するステップと、蓄積部から高次元テクスチャを取り出し、特定の取得条件又は作成条件に対応する１つ以上のテクスチャ画像に変換するステップとをコンピュータに実行させる。
【００２２】
複数の素材の組み合わせを利用した高次元テクスチャマッピング装置１００は、高次元テクスチャのブレンド処理やフィルタリング処理などを行わないものであってもよい。
【００２３】
高次元テクスチャ生成部１０２は、高次元テクスチャデータ蓄積部（図示せず）を中心としたものであり、データ蓄積部に蓄積した様々な素材を組み合わせて、ユーザが与える制御データ又は制御画像によって、任意模様の高次元テクスチャを生成することができ、また、合成後の高次元テクスチャを再利用することができたり、ブレンド処理やフィルタリング処理などによって、輝度や透過度の変化付け、モーフィングのような特殊効果の表現などを行うことができる。
【００２４】
次に、本実施形態の高次元テクスチャマッピング装置１００の動作を図２を参照して説明する。図２は、図１に示す高次元テクスチャマッピング装置１００により実現される一連の処理を示す図である。以下、各処理の方法について説明する。
【００２５】
テクスチャサンプリング部１０１がテクスチャ画像群を入力する（ステップＳ１１）。この場合、テクスチャサンプリング部１０１は様々な条件の下でテクスチャ画像群を取得する。これらの条件は後に図３及び図４を参照して詳細に説明する。
【００２６】
テクスチャサンプリング部１０１がテクスチャサンプリングを行う（ステップＳ１２）。このテクスチャサンプリングでテクスチャ画像群のデータをどの程度圧縮するかが決まる。このテクスチャサンプリングの詳細は、後に図３、図４、図５、図６及び図７を参照して説明する。
【００２７】
高次元テクスチャ生成部１０２が高次元テクスチャを生成する（ステップＳ１３）。高次元テクスチャ生成部１０２がどのように高次元テクスチャを生成するかは、後に図８を参照して説明する。
【００２８】
高次元テクスチャマッピング部１０３が３次元モデルデータを入力する（ステップＳ１４）。そして、高次元テクスチャマッピング部１０３が高次元テクスチャマッピングを行う（ステップＳ１５）。高次元テクスチャマッピング部１０３が３次元モデルデータを入力して、高次元テクスチャマッピングをどのように行うかは後に図９を参照して説明する。
【００２９】
次に、ステップＳ１１での、テクスチャ画像群を取得する様々な条件を図３及び図４を参照して説明する。図３及び図４に示すように、これらの図では、視点条件及び光源条件の例を挙げている。図３は、θφ座標系で取得した例であり、θは経度方向、φは緯度方向の角度を表している。また、図４は、ＸＹ座標系で取得した例である。
【００３０】
次に、ステップＳ１２でのテクスチャのサンプリングを図５を参照して説明する。図５は、テクスチャサンプリング部１０１におけるテクスチャサンプリングの基本概念を示したものである。図３あるいは図４で示したような方法で取得したテクスチャサンプルは、図５の中心上方に示したように、一般的に膨大なデータ量となる。すなわち、ステップＳ１２でのテクスチャサンプルは、例えば、視点方向及び光源方向ともに、θ方向に２０度刻み（一周）、φ方向に１０度刻み（７０度まで）のサンプリングを行ったとすると、２０，７３６枚ものテクスチャを取得することになる。仮にテクスチャサイズが２５６×２５６ピクセル（２４ビットカラー）であったとすると、データ量は約３．８ＧＢとなってしまい、現在の計算機性能の環境で現実的に扱えるデータ量とはいえない。  
そこで、周期的にサンプリングを行い、データ量を削減する。例えばθ方向を４０度刻みとし、φ方向を２０度刻みとすると、１，２９６枚のテクスチャで約２４３ＭＢとなり、データ量を大幅に削減することができる。このような周期的にサンプリングを行い、テクスチャの取得間隔を変更するという方法とは異なり、取得テクスチャ画像群の特徴を解析して、非周期的にサンプリングする方法もある。この非周期的なサンプリングによれば、素材の特徴を考慮して、素材表面の変化に応じた適切なサンプリングをすることができる。
【００３１】
次に、非周期的なサンプリングの例を図６を参照して説明する。図６は、テクスチャサンプリング部１０１が行うステップＳ１２での処理フローを示している。  
始めに、現在のサンプル数ｎを取得した全サンプル数Ｎとする（Ｓ１２１１）。図６に示した処理フローは、このｎを徐々に減らして、目標のサンプル数Ｎｔ（例えば、メモリが許す限りの指定されたサンプル数など）に近づける処理を行う。  
全てのテクスチャサンプルに対して、仮にそのサンプルを削除した場合の補間による再現性を評価する（Ｓ１２１２）。具体的には、取得条件の近い複数のテクスチャサンプルをブレンドし、そのブレンド画像と元の画像との比較を行って、より類似した画像であれば、再現性が高いと評価することができる。このブレンド画像と元の画像との比較例は後に図７を参照して説明する。
【００３２】
次に、ステップＳ１２１２で最も再現性の高いテクスチャサンプルを削除する（Ｓ１２１３）。その際、削除したテクスチャサンプルがどのテクスチャサンプルを補間して再現できるのかを記録しておく必要がある。なぜなら、補間に利用したテクスチャサンプルも後に削除される可能性もあり、その際の再現性に影響するからである。  
現在のテクスチャサンプル数ｎを１減らし（Ｓ１２１４）、ｎが目標のサンプル数Ｎｔ以下になったかどうかを調べる（Ｓ１２１５）。まだ目標のサンプル数に達していないようであれば、Ｓ１２１２の処理に戻り、Ｓ１２１２からＳ１２１５までの処理を繰り返す。目標のテクスチャサンプル数に達しているようであれば、残されたテクスチャサンプルを代表のサンプルとして抽出し、圧縮されたテクスチャ画像群として出力する。
【００３３】
ここで、このブレンド画像と元の画像との比較例を図７を参照して説明する。画像Ｂの取得条件の近いサンプルとして画像Ａと画像Ｃがあった場合、画像Ａと画像Ｃを条件の近さに応じたブレンドを行い、画像Ｂとの比較を行う。画像間の類似度は、ＳＮ比、相関値あるいはベクトルの内積を利用することによって評価する。
【００３４】
また図６において、テクスチャサンプルを削除する処理（Ｓ１２１３）を行わずに、全てのテクスチャサンプルに対して、仮にそのサンプルを削除した場合の補間による再現性の計算（Ｓ１２１２）のみを行うこともできる。この場合、データ量を削減することはできないが、素材の取得条件の変化に応じた特徴を解析する際に、重要視すべきテクスチャサンプルの順位付けを行うことができる。補間による再現性が高いということは、そのサンプルが素材の特徴を解析する際にはそれほど重要ではないということを意味し、逆に補間による再現性が低いということは、そのサンプルが重要であるということを意味する。すなわち、素材の特徴が顕著に現れている高周波な部分のサンプルを優先的に抽出できるということである。
【００３５】
次に、高次元テクスチャ生成部１０２がどのように高次元テクスチャを生成するかを図８を参照して説明する。  
高次元テクスチャ生成部１０２が、圧縮されたテクスチャ画像群を入力し、同一ピクセルの画像情報を取り出してまとめたものを登録したコードブックと、コードブックのアドレスを指し示すインデックスを画像化したインデックス画像とに分けて表現した高次元テクスチャと呼ばれるデータ形式に変換する。その際、無圧縮のテクスチャ画像群若しくは周期的なサンプリングによって圧縮されたテクスチャ画像群をコードブックにする場合には同一ピクセルの画像情報を規則的に並べればよいが、非周期的なサンプリングによって圧縮されたテクスチャ画像群をコードブックにする場合にはどの位置にどういった取得条件のサンプルが登録されているかどうかを示すテーブルが必要となる。また、高次元テクスチャ生成部１０２は、各サンプルの重要度が異なる場合には、サンプルごとにその重要度を示した重みを付加する。  
次に、高次元テクスチャ生成部１０２は、ここで作成されたインデックス画像を参照インデックス画像とし、参照インデックス画像の配列によく似た任意サイズの新規インデックス画像を生成する。図８に示すように、新規インデックス画像をブロック単位でスキャンし、近隣ブロックによく似た部分を参照インデックス画像の中から探索し、ブロック単位に描画していく。  
また、図８に一例として示したＬ字型ブロックによる探索の際に、探索誤差のしきい値を設定して、ブロックサイズを動的に変化させることもできる。さらに、描画後のブロック間のインデックス配列が参照インデックス画像の配列にはないものであった部分に対して、ピクセル単位に再描画することもできる。Ｌ字型ブロック探索においては、インデックスの指し示すコードブック内のピクセルデータ同士を比較して、その類似度を評価する。その評価の際に、サンプルごとの重みを考慮した評価を行うことによって、より信頼度の高い評価を行うことができる。
【００３６】
本実施形態の高次元テクスチャマッピング装置１００によれば、圧縮したテクスチャデータを利用することによって、データ量を大幅に削減することができ、参照インデックス画像のサイズを大きくすることができる。そのため、探索によって描画していくブロックのサイズを大きくすることができ、ロバストなテクスチャ生成を行うことができる。したがって、本実施形態の高次元テクスチャマッピング装置１００によれば、このようなブロックベースのテクスチャ生成だけではなく、たった１枚のテクスチャを任意サイズに生成するといった既存の技術を容易に高次元テクスチャ生成に適用することができる。
【００３７】
次に、高次元テクスチャマッピング部１０３が３次元モデルデータを入力して、高次元テクスチャマッピングをどのように行うかを図９を参照して説明する。ステップＳ１４で３次元モデルデータを入力し、３角形プリミティブごとに内部の各点に適切な色情報を描画していく。まず、各頂点の位置情報を基に、３角形プリミティブ内の各点の視点や光源などの条件を決定する。次に、マッピングのための各頂点のテクスチャ座標情報を基に、３角形プリミティブ内の各点の対応するテクスチャ座標を決定する。  
このようにして算出したある点の要求する色情報の条件が、Ｃ（ｕ，ｖ，θＥｊ，φＥｊ，θＬｊ，φＬｊ）であったとする。ここで、ｕ，ｖはテクスチャ座標を示し、θＥｊ，φＥｊ，θＬｊ，φＬｊは取得条件を示しており、それぞれ視点の経度方向、視点の緯度方向、光源の経度方向、光源の緯度方向を示している。このとき、テクスチャサンプルが圧縮されているため、要求する取得条件のテクスチャサンプルが存在しない場合が生じる。この場合は、取得条件の近い複数のテクスチャサンプルのｕ，ｖの色情報を利用し、重みＷｋ（図９の例では０≦ｋ≦１５）もつけてその近さに応じてブレンドを行う。このように補間色を各点に描画することによって、ある程度粗いテクスチャサンプルであっても、高品位にテクスチャマッピングすることができる。
【００３８】
以上説明した第１の実施形態の高次元テクスチャマッピング装置１００によれば、視点方向及び光源方向などの条件によって変化するテクスチャ画像群を、素材の特徴に応じてデータを圧縮することによって、任意サイズのテクスチャ画像をロバストかつ高品位に生成することができるとともに、３次元モデルへのテクスチャマッピングにおける高精度な補間を行うことによって、リアルな素材質感を持った３次元グラフィックスを実現することができる。
【００３９】
（第２の実施形態）   
本実施形態の高次元テクスチャマッピング装置１００は、第１の実施形態の高次元テクスチャマッピング装置１００とは、テクスチャサンプリング部１０１が行うステップＳ１２での処理フローが異なる。その他の本実施形態の高次元テクスチャマッピング装置１００は第１の実施形態の高次元テクスチャマッピング装置１００と同様である。  
本実施形態でのステップＳ１２での処理フローは、非周期的なサンプリング方法の１つであり、近隣のテクスチャサンプルとの比較をすることによって、類似度の高い順にブレンドをして、サンプル数を削減していく。
【００４０】
本実施形態でのステップＳ１２での処理フローを図１０を参照して説明する。ここで、図６のフローに含まれるステップと同様なステップは同一の符号を付す。  
始めに、現在のサンプル数ｎを取得した全サンプル数Ｎとする（Ｓ１２１１）。まず、取得条件の隣り合った２枚のテクスチャサンプルの類似度を全組み合わせにわたって計算する（Ｓ１２２２）。画像間の類似度は、ＳＮ比、相関値あるいはベクトルの内積を利用することによって評価する。そして、その中で最も類似度の高い２枚のテクスチャをブレンドし、２枚のテクスチャをブレンド画像と置き換える（Ｓ１２２３）。
【００４１】
ブレンド画像と置き換える際、置き換えられる画像が元々ブレンド画像であるかどうかを判定する。置き換えられる画像が元々ブレンド画像である場合はステップＳ１２２５に進み、一方、置き換えられる画像が元々ブレンド画像でない場合はステップＳ１２１４に進む。
【００４２】
ステップＳ１２１４では、現在のサンプル数ｎを１ずつ減らしていく。そして、ｎが目標のサンプル数Ｎｔ以下になったかどうかを調べる（Ｓ１２１５）。まだ目標のサンプル数に達していないようであれば、Ｓ１２２２の処理に戻り、Ｓ１２２２からＳ１２１５までの処理を繰り返す。一方、目標のサンプル数に達している場合はステップＳ１２２９に進む。また、この処理ループの２回目以降、Ｓ１２２３の処理においては、同じブレンド画像同士を除いた上で、最も類似度の高い２枚のテクスチャを選出する必要がある。
【００４３】
ステップＳ１２２５では、同じブレンド画像のテクスチャサンプルも含めて、全て、ブレンド後の画像と置き換える。このような処理ループを繰り返し、目標のテクスチャサンプル数に達した時点で、同じブレンド画像を持つ領域の中で、そのブレンド画像に最も類似したサンプルを代表のサンプルとして抽出し、圧縮されたテクスチャ画像群として出力する（Ｓ１２２９）。
【００４４】
以上説明した第２の実施形態の高次元テクスチャマッピング装置１００によれば、第１の実施形態と同様の効果を得ることができる。
【００４５】
（第３の実施形態）   
本実施形態の高次元テクスチャマッピング装置１００は、第１及び第２の実施形態の高次元テクスチャマッピング装置１００とは、テクスチャサンプリング部１０１が行うステップＳ１２での処理フローが異なる。その他の本実施形態の高次元テクスチャマッピング装置１００は第１及び第２の実施形態の高次元テクスチャマッピング装置１００と同様である。  
また、本実施形態の高次元テクスチャマッピング装置１００は、ステップＳ１２の処理を行ってサンプル数を増やしていくことが、第１及び第２の実施形態の処理とは異なる。
【００４６】
本実施形態でのステップＳ１２での処理フローは、非周期的なサンプリング方法の１つであり、一般にＬＢＧ法と呼ばれるベクトル量子化を行い、目標のサンプル数になるまでクラスタ数を増やしていく。
【００４７】
本実施形態でのステップＳ１２での処理フローを図１１を参照して説明する。  
始めにループ回数ｉを１とする（Ｓ１２３１）。この処理フローは、２ｉを目標のサンプル数Ｎｔに近づける処理を行う。まず、２ｉ個の代表ベクトルを決定する（Ｓ１２３２）。決定の際には、クラスタ内の全テクスチャサンプルの平均や分散を利用して決定する。次に、全てのテクスチャサンプルに対して、最も近い代表ベクトルを求め、どの代表ベクトルに近いかに基づいてクラスタを生成する（Ｓ１２３３）。そして、同じクラスタ内に存在する全てのテクスチャサンプルの平均ベクトルを求め、それを新たな代表ベクトルとする（Ｓ１２３４）。このようにして求めた新たな代表ベクトルが、元々の代表ベクトルとどれだけ異なっているかどうかによって、代表ベクトルが収束したかどうかを判定し（Ｓ１２３５）、収束していなければＳ１２３３の処理に戻り、一方、収束している場合はステップＳ１２３６に進む。
【００４８】
ステップＳ１２３６では代表ベクトルが収束した時点で、２ｉが目標のサンプル数Ｎｔに達したかどうかを判定し、達していなければループ回数ｉに１を加えて（Ｓ１２３７）、Ｓ１２３２の処理に戻り、一方、Ｎｔに達している場合はステップＳ１２３８に進む。ステップＳ１２３８では、各クラスタの代表ベクトル若しくはその代表ベクトルに最も近いテクスチャサンプルを代表のサンプルとして抽出し、圧縮されたテクスチャ画像群として出力する。
【００４９】
以上説明した第３の実施形態の高次元テクスチャマッピング装置１００によれば、第１の実施形態と同様の効果を得ることができる。
【００５０】
また、上述した実施形態の高次元テクスチャマッピング装置１００は、高次元テクスチャマッピング装置の高次元テクスチャマッピング部１０３を取り除き、高次元テクスチャデータを蓄積するものであってもよく、高次元テクスチャ生成部１０２による再生成や、ネットワークなどでのデータベースとしての公開を行ってもよい。
【００５１】
さらに、上述した実施形態の高次元テクスチャマッピング装置１００は、テクスチャデータの圧縮によって、様々なテクスチャ生成技術を適用することができるようになる。たった１枚のテクスチャを任意サイズに生成するだけでなく、それらの技術を容易に高次元テクスチャ生成技術として適用することができる。
【００５２】
ところで、上述した実施形態の高次元テクスチャマッピング装置１００は、次世代グラフィックス処理エンジンへの搭載や、アパレル業界向けの衣服シミュレーション、建築物や車の外装／内装シミュレーションなどへの応用が期待できる。
【００５３】
また、上述の実施形態の中で示した処理手順に示された指示、及び流れ図の各ステップに示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した実施形態の高次元テクスチャマッピング装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フレキシブルディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ±Ｒ、ＤＶＤ±ＲＷなど）、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をＣＰＵで実行させれば、上述した実施形態の高次元テクスチャマッピング装置と同様な動作を実現することができる。
【００５４】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００５５】
【図１】本発明の第１の実施形態にかかる高次元テクスチャマッピング装置のブロック図。
【図２】図１の高次元テクスチャマッピング装置の動作を示すフロー図。
【図３】図２のステップＳ１１でのθφ座標系におけるテクスチャ画像の取得手法を示す図。
【図４】図２のステップＳ１１でのＸＹ座標系におけるテクスチャ画像の取得手法を示す図。
【図５】図２のステップＳ１２のテクスチャサンプリングの概念図。
【図６】図２のステップＳ１２のテクスチャサンプリングの処理フロー図。
【図７】ブレンド画像と元の画像との比較例を示す図。
【図８】図１の高次元テクスチャ生成部がどのように高次元テクスチャを生成するかを示す図。
【図９】図１の高次元テクスチャマッピング部が３次元モデルデータを入力して、高次元テクスチャマッピングをどのように行うかを示す図。
【図１０】本発明の第２の実施形態での、図２のステップＳ１２のテクスチャサンプリングの処理フロー図。
【図１１】本発明の第３の実施形態での、図２のステップＳ１２のテクスチャサンプリングの処理フロー図。
【符号の説明】
【００５６】
１００・・・高次元テクスチャマッピング装置、１０１・・・テクスチャサンプリング部、１０２・・・高次元テクスチャ生成部、１０３・・・高次元テクスチャマッピング部
【図１】
2006031561.tif 000003
【図２】
2006031561.tif 000004
【図３】
2006031561.tif 000005
【図４】
2006031561.tif 000006
【図５】
2006031561.tif 000007
【図６】
2006031561.tif 000008
【図７】
2006031561.tif 000009
【図８】
2006031561.tif 000010
【図９】
2006031561.tif 000011
【図１０】
2006031561.tif 000012
【図１１】
2006031561.tif 000013