(57)【要約】【課題】ポリゴンメッシュの解像度を段階的に復号可能なように符号化するプログレッシブ符号化方式において、復号に係る処理量を削減することである。【解決手段】ポリゴンメッシュの解像度を段階的に復号可能な符号化データを出力する情報処理装置（符号化装置）であって、第１のポリゴンメッシュを表すメッシュデータを取得するメッシュ入力部（２０１）と、メッシュ入力部より取得（入力）されたメッシュデータに基づいて、第１のポリゴンメッシュより解像度が高い第２のポリゴンメッシュのジオメトリに関するジオメトリデータを生成するメッシュ細分化部（２０４）と、第１のポリゴンメッシュのトポロジに関するトポロジデータとメッシュ細分化部により生成されたジオメトリデータとを含む符号化データを出力するメッシュ出力部（２０７）を備え、トポロジデータは、第１のポリゴンメッシュの頂点間の接続関係を示すエッジの情報を含む。【選択図】図４
2020119292.tif 000002
【特許請求の範囲】
【請求項１】
ポリゴンメッシュの解像度を段階的に復号可能な符号化データを出力する情報処理装置であって、
第１のポリゴンメッシュを表すメッシュデータを取得する取得手段と、
前記取得手段により取得されたメッシュデータに基づいて、前記第１のポリゴンメッシュより解像度が高い第２のポリゴンメッシュのジオメトリに関するジオメトリデータを生成する生成手段と、
前記第１のポリゴンメッシュのトポロジに関するトポロジデータと前記生成手段により生成されたジオメトリデータとを含む前記符号化データを出力する出力手段と
を有し、
前記トポロジデータは、前記第１のポリゴンメッシュの頂点間の接続関係を示すエッジの情報を含むことを特徴とする情報処理装置。
【請求項２】
前記トポロジデータは、前記エッジ及び前記第１のポリゴンメッシュの構成単位に関する情報を含み、
前記第１のポリゴンメッシュの構成単位は、当該構成単位を形成するエッジを用いて記述されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記エッジは、当該エッジの両端の頂点の参照を記述することで定義され、
前記頂点の参照は、前記メッシュデータにおける頂点の順位を示すものであり、前記順位の低い順又は高い順に記述されることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第１のポリゴンメッシュの構成単位は、三角形のメッシュであることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記第１のポリゴンメッシュの構成単位は、前記三角形を構成する頂点のうち、前記順位の低い頂点を基点として、対辺に向かって、右側のエッジ、左側のエッジ、対辺のエッジの順に前記エッジの参照を記述することで定義されることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記第１のポリゴンメッシュを第２のポリゴンメッシュに細分化する細分化手段を有し、
前記細分化手段は、
前記三角形を構成するエッジの各々に対して、２つのエッジに分割し、当該分割した２つのエッジを接続する頂点を生成し、
当該生成された頂点を互いに接続するエッジを生成することで、前記三角形を４つの三角形に分割することを特徴とする請求項４又は５に記載の情報処理装置。
【請求項７】
前記ジオメトリデータは、前記第２のポリゴンメッシュを構成する頂点の三次元空間における位置に関する情報を含むことを特徴とする請求項１から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記第１のポリゴンメッシュのトポロジを細分化して、第３のポリゴンメッシュのトポロジを生成する生成手段と、
前記第２のポリゴンメッシュのジオメトリのうち、前記第３のポリゴンメッシュのトポロジから参照される、前記第３のポリゴンメッシュのジオメトリを取得する第２の取得手段と、
前記第３のポリゴンメッシュのトポロジ及びジオメトリから、前記第３のポリゴンメッシュを復元する復元手段と
を備えることを特徴とする請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
プログレッシブ符号化方式を用いた情報処理装置であって、
第１のメッシュを定義する、第１のトポロジ及び第１のジオメトリを含むメッシュデータを取得する第１の取得手段と、
前記第１のトポロジを、当該第１のトポロジから形成される第２のメッシュの頂点間の接続関係を示すエッジを用いたデータ記述形式に変換する変換手段と、
前記変換された前記第１のトポロジを第２のトポロジに細分化する細分化手段と、
前記第１のジオメトリのうち、前記第２のトポロジから参照されるジオメトリを第２のジオメトリとして取得する第２の取得手段と、
前記第２のトポロジ及び前記第２のジオメトリから前記第１のメッシュを復元する復元手段と
を備えることを特徴とする情報処理装置。
【請求項１０】
前記第２のメッシュを前記第１のメッシュに細分化する細分化手段と、
前記第１のメッシュを表現したメッシュデータを出力する出力手段と、
を備え、
前記出力手段は、前記メッシュデータとして、少なくとも前記第２のメッシュのトポロジ及び前記第１のメッシュのジオメトリを含むデータを出力し、
前記トポロジは、前記エッジを用いることなく記述されることを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
ポリゴンメッシュを表すメッシュデータのデータ構造であって、
第１のポリゴンメッシュのトポロジに関するトポロジデータと、
前記第１のポリゴンメッシュより解像度が高い第２のポリゴンメッシュのジオメトリに関するジオメトリデータと
を含み、
前記データ構造に応じたメッシュデータが、ポリゴンメッシュを複数の解像度で復号可能なメッシュデータとして、情報処理装置によるポリゴンメッシュの復号に用いられることを特徴とするメッシュデータのデータ構造。
【請求項１２】
前記トポロジデータは、前記第１のポリゴンメッシュの頂点間の接続関係を示す情報を含み、
前記ジオメトリデータは、前記第２のポリゴンメッシュの頂点の位置を示す情報を含むことを特徴とする請求項１１に記載のメッシュデータのデータ構造。
【請求項１３】
ポリゴンメッシュの解像度を段階的に復号可能な符号化データを出力する情報処理装置における情報処理方法であって、
第１のポリゴンメッシュを表すメッシュデータを取得する取得ステップと、
前記取得ステップにおいて取得されたメッシュデータに基づいて、前記第１のポリゴンメッシュより解像度が高い第２のポリゴンメッシュのジオメトリに関するジオメトリデータを生成する生成ステップと、
前記第１のポリゴンメッシュのトポロジに関するトポロジデータと前記生成ステップにおいて生成されたジオメトリデータとを含む前記符号化データを出力する出力ステップと
を含み、
前記トポロジデータは、前記第１のポリゴンメッシュの頂点間の接続関係を示すエッジの情報を含むことを特徴とする情報処理方法。
【請求項１４】
プログレッシブ符号化方式を用いた情報処理装置における情報処理方法であって、
第１のメッシュを定義する、第１のトポロジ及び第１のジオメトリを含むメッシュデータを取得する第１の取得ステップと、
前記第１のトポロジを、当該第１のトポロジから形成される第２のメッシュの頂点間の接続関係を示すエッジを用いたデータ記述形式に変換する変換ステップと、
前記変換された前記第１のトポロジを第２のトポロジに細分化する細分化ステップと、
前記第１のジオメトリのうち、前記第２のトポロジから参照されるジオメトリを第２のジオメトリとして取得する第２の取得ステップと、
前記第２のトポロジ及び前記第２のジオメトリから前記第１のメッシュを復元する復元ステップと
を含むことを特徴とする情報処理方法。
【請求項１５】
コンピュータを、請求項１から１０のいずれか１項に記載された情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、データ構造、及びプログラムに関する。
【背景技術】
【０００２】
従来、三次元情報のデータ表現の方法として、ポリゴンメッシュによるサーフェイスモデル（メッシュモデル）を用いる方法が知られている。但し、この方法において、例えば、ウェブブラウザを用いてポリゴンメッシュの描画を行う場合等、描画リソースが限られる場合がある。
【０００３】
そこで、低解像度から高解像度までポリゴンメッシュを段階的に復号可能なプログレッシブ符号化方式を適用し、先に低解像度のメッシュデータを転送して描画し、後から追加の詳細情報を転送して高解像度のメッシュデータを描画することが行われている。
【０００４】
特許文献１には、符号化時にメッシュの２頂点を１頂点に統合する処理を繰り返すことで簡略化したメッシュとその手順を管理する木構造を生成し、復号時にその簡略化したメッシュから木構造を逆に辿ることで元のメッシュを復元する方法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２６５４５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の方法では、元のメッシュを復元する上で、順次、木構造を辿り、１つずつ頂点を復号する処理が必要であり、復号する処理に時間がかかるという課題がある。取り分け、多数の高精細なメッシュを描画する場合等には、復号時間が長くなる。
【０００７】
本発明は、前記従来の課題に鑑みてなされたものであって、その目的は、ポリゴンメッシュの解像度を段階的に復号可能なように符号化するプログレッシブ符号化方式において、復号に係る処理量を削減する。
【課題を解決するための手段】
【０００８】
本発明は、ポリゴンメッシュの解像度を段階的に復号可能な符号化データを出力する情報処理装置であって、第１のポリゴンメッシュを表すメッシュデータを取得する取得手段と、前記取得手段により取得されたメッシュデータに基づいて、前記第１のポリゴンメッシュより解像度が高い第２のポリゴンメッシュのジオメトリに関するジオメトリデータを生成する生成手段と、前記第１のポリゴンメッシュのトポロジに関するトポロジデータと前記生成手段により生成されたジオメトリデータとを含む前記符号化データを出力する出力手段とを有し、前記トポロジデータは、前記第１のポリゴンメッシュの頂点間の接続関係を示すエッジの情報を含むことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ポリゴンメッシュの解像度を段階的に復号可能なように符号化するプログレッシブ符号化方式において、復号に係る処理量を削減することができる。
【図面の簡単な説明】
【００１０】
【図１】既存のデータ記述形式で記述されたメッシュデータを示す図である。
【図２】プログレッシブ符号化装置の機能構成を示す図である。
【図３】プログレッシブ符号化装置の符号化部において実行される処理の概要及び手順を示すフローチャートである。
【図４】プログレッシブ形式で記述されたメッシュデータを示す図である。
【図５】ベースメッシュの細分化、及び入力されたメッシュへのフィッティングによって、メッシュが変化する様子を示す図である。
【図６】細分化前後におけるプログレッシブ形式で記述されたメッシュデータの変化を示す図である。
【図７】細分化前後における要素数の変動を示す図である。
【図８】プログレッシブ符号化装置の符号化部のメッシュ出力部より出力されるファイルの構成を示す図である。
【図９】プログレッシブ符号化装置の復号部において実行される処理の概要及び手順を示すフローチャートである。
【図１０】符号化装置のハードウェア構成を示す図である。
【図１１】ベースメッシュの細分化、及び入力されたメッシュへのフィッティングによって、メッシュが変化する様子を示す図である。
【図１２】プログレッシブ符号化装置の機能構成を示す図である。
【図１３】三角形のメッシュ及び四角形のメッシュの細分化を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は、本発明を限定するものではなく、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。加えて、本発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれ、また、以下の実施形態の一部を適宜組み合わせることもできる。その他、以下の実施形態において、その装置構成として、符号化部と復号部の双方の機能を有するものとして説明するが、符号化部と復号部のいずれか一方の機能を有するものでもよい。
【００１２】
（実施形態１）
はじめに、本実施形態について説明する前に、本実施形態で用いるメッシュのデータ記述方法（データ記述形式）との対比のため、既存のメッシュのデータ記述方法について、図１を用いて説明する。図１は、既存のデータ記述形式で記述されたメッシュデータを示す図である。
【００１３】
図１（Ａ）は、頂点Ｖ０、頂点Ｖ２、頂点Ｖ３によって構成される三角形Ｔ０と頂点Ｖ０、頂点Ｖ３、頂点Ｖ１によって構成される三角形Ｔ１から成るメッシュを表したものである。このようなメッシュは、図１（Ｂ）に示される各頂点の頂点座標と、図１（Ｃ）に示される各三角形を構成する頂点の参照を記述することで定義される。
【００１４】
なお、頂点の参照はデータ上の頂点の順位（インデックス）を示すものであるが（記述するものであるが）、各要素間の接続関係は、頂点座標にアクセス可能な手段で示されればよく、その他、メモリ上のアドレス等で記述されることもある。また、図１（Ｂ）に示されるような三次元空間における位置を表現する情報をジオメトリ、図１（Ｃ）に示されるような各要素間の接続関係を表現する情報をトポロジと称する。加えて、以下において、上述のデータ記述形式を、既存のデータ記述形式と称する。
【００１５】
次に、本実施形態に係る情報処理装置（符号化装置）として、メッシュを高速に復号することが可能なプログレッシブ符号化装置、併せて、そのプログレッシブ符号化装置により生成されるメッシュのデータ記述形式について説明する。
【００１６】
図２は、プログレッシブ符号化装置の機能構成を示す図である。なお、図２において、図２（Ａ）は符号化部、図２（Ｂ）は復号部を示している。以下、順に説明する。図２（Ａ）に示される符号化部は、上述の図１で示した既存のデータ記述形式で表現されたメッシュを、段階的に解像度を制御することができるようにプログレッシブ符号化する。本実施形態におけるプログレッシブ符号化は、ポリゴンメッシュの３次元メッシュモデルを複数の解像度（精細度）で復号可能なように（複数の解像度のうち、いずれかの解像度（各々の解像度）を選択して復号可能なように）符号化する符号化方式である。即ち、本実施形態における符号化装置は、ポリゴンメッシュを複数の解像度で復号可能な符号化データ（プログレッシブメッシュデータ）を出力する情報処理装置として機能する。
【００１７】
符号化部は、図２（Ａ）に示されるように、メッシュ入力部２０１、メッシュ簡略化部２０２、トポロジ変換部２０３、メッシュ細分化部２０４、メッシュ出力部２０７を備える。さらに、メッシュ細分化部２０４は、トポロジ細分化部２０５、ジオメトリ算出部２０６を有する。
【００１８】
メッシュ入力部２０１は、既存のデータ記述形式（具体的には、図１（Ｂ）、図１（Ｃ）に示されるデータ記述形式）で記述されたポリゴンメッシュを表すメッシュデータを受信（取得）し、プログレッシブ符号化装置内に入力する。メッシュ簡略化部２０２は、入力されたメッシュデータのメッシュを簡略化する。なお、以下において、この簡略化したメッシュをベースメッシュと称する。
【００１９】
トポロジ変換部２０３は、ベースメッシュをプログレッシブ表現に変換する。なお、プログレッシブ表現については、図４を用いて後述する。メッシュ細分化部２０４は、プログレッシブ表現に変換されたベースメッシュのトポロジの細分化、及び頂点座標の入力されたメッシュ（以下、入力メッシュと称する）へのフィッティングを繰り返し実行する。これにより、メッシュ細分化部２０４は、最終階層のメッシュ（以下、フルメッシュと称する）を生成する。メッシュ出力部２０７は、トポロジ変換部２０３で生成されたプログレッシブ表現のベースメッシュのトポロジ、及びメッシュ細分化部２０４で生成されたフルメッシュのジオメトリを、プログレッシブ表現されたメッシュとして出力する。なお、以下において、メッシュ出力部２０７により出力されるプログレッシブ表現されたメッシュデータをプログレッシブメッシュデータと称する。
【００２０】
次に、図２（Ａ）に示されるプログレッシブ符号化装置の符号化部において実行される処理の概要及び手順を、図３（Ａ）のフローチャートを用いて説明する。なお、フローチャートの説明における記号「Ｓ」は、ステップを表すものとする。また、この点、以降のフローチャートの説明においても同様とする。
【００２１】
Ｓ３０１において、メッシュ入力部２０１は、プログレッシブ符号化装置内にメッシュデータを入力する。Ｓ３０２において、メッシュ簡略化部２０２は、入力されたメッシュデータにおけるメッシュを簡略化して、より面数の少ないメッシュ（即ち、ベースメッシュ）で入力されたメッシュデータにおけるメッシュを近似的に表現する。なお、メッシュの簡略化に関して、本実施形態では、上述の特許文献１で開示されている方法を用いるが、必ずしもこの方法に限定されず、形状の構造を保った状態で面数を削減できる方法であれば任意の方法でよい。
【００２２】
Ｓ３０３において、トポロジ変換部２０３は、ベースメッシュをプログレッシブ表現に変換する。なお、プログレッシブ表現に変換するときの解像度の段階数をＰＤ（Progressive Depth）とする。例えば、ＰＤ＝３の場合、ベースメッシュから２回の細分化が行われ、１階層目のベースメッシュと３階層目のフルメッシュとその間に２階層目の中間メッシュが存在することになる。中間メッシュはベースメッシュより解像度が高く、フルメッシュは中間メッシュより解像度が高くなる。
【００２３】
Ｓ３０４において、トポロジ細分化部２０５は、メッシュの正則分割を実行する。なお、メッシュの正則分割については、図５を用いて後述する。また、正則分割では面数や頂点数が増えるだけで形状は変化しないため、Ｓ３０５において、ジオメトリ算出部２０６は、頂点座標が入力メッシュに近づくように、位置合わせを実行する。ここでは、位置合わせを実行する頂点により近い入力メッシュの頂点を探索し、その位置合わせを実行する頂点の座標をその探索した頂点の座標と一致させる。その他、位置合わせに関して、入力メッシュとの差を最小化するようなエネルギー最小化問題として実行してもよく、その方法は任意である。
【００２４】
ここで、補足として、Ｓ３０２〜Ｓ３０５の一連の処理によって、メッシュが変化する様子を、図５を用いて説明する。図５（Ａ）は入力メッシュであり、表現したい理想的な形状であり、図示されていない多数の微小な三角形によって形成されているものとする。この図５（Ａ）に示されるメッシュを入力メッシュとして、Ｓ３０２においてメッシュを簡略化することで、図５（Ｂ）に示されるように２つの三角形で近似的に表現する。そして、Ｓ３０４においてメッシュの正則分割を実行することで、図５（Ｃ）に示されるように、各々の三角形が４分割される。最後に、Ｓ３０５において頂点の位置合わせを実行することで、図５（Ｄ）に示されるように、メッシュの形状を入力メッシュに近付ける。
【００２５】
Ｓ３０６において、メッシュ細分化部２０４は、上述のＳ３０４、Ｓ３０５の処理がＰＤ−１回、繰り返し実行されたか否かを判定する。メッシュ細分化部２０４は、上述のＳ３０４、Ｓ３０５の処理をＰＤ−１回、繰り返し実行することで（Ｓ３０６ Ｙｅｓ）、解像度の段階数がＰＤであるプログレッシブ表現されたメッシュ（即ち、フルメッシュ）を生成することができる。Ｓ３０７において、メッシュ出力部２０７が出力するプログレッシブメッシュデータは、少なくともベースメッシュのトポロジに関するトポロジデータ及びフルメッシュのジオメトリに関するジオメトリデータを含む。
【００２６】
次に、プログレッシブ表現されたメッシュのデータ記述形式を、図４を用いて説明する。図４（Ａ）はメッシュのデータ記述形式の概略を示したものであり、また、メッシュデータは、Ｖ（Ｖ0、Ｖ1、Ｖ2、Ｖ3）で示される頂点、Ｅ（Ｅ0、Ｅ1、Ｅ2、Ｅ3、Ｅ4）で示されるエッジ、Ｔ（Ｔ0、Ｔ1）で示される三角形を含むように構成される。図４（Ｂ）は、頂点座標を記述したものであり、図１（Ｂ）と同様である。
【００２７】
図４（Ｃ）は、メッシュ上の頂点間の接続関係を示すエッジを記述したものであり、ここでは、エッジ両端の頂点の参照を記述している。また、図４（Ｃ）では、頂点の参照を、図４（Ｂ）に示される頂点の順位（番号）のうち、順位の低い（小さい）ものから順に記述している（即ち、順位が低いものが先に記述される）。なお、頂点の参照に関して、順位の高い（大きい）ものから順に記述してもよい。
【００２８】
図４（Ｄ）は、メッシュの構成単位である三角形のメッシュを記述したものであり、ここでは、その三角形を構成する３つのエッジの参照を記述する。なお、エッジの参照は、三角形を構成する頂点の順位のうち、最も順位が低い頂点を基点として、対辺に向かって、右側のエッジ、左側のエッジ、対辺のエッジの順に記述される。補足として、この順番は、三角形の表方向をエッジの記述順序によって一意に表現できればよく、例えば、逆順やずれ等、その他の順序で記述されていてもよい。以下、このデータ記述形式をプログレッシブ形式と称する。
【００２９】
次に、プログレッシブ符号化装置の符号化部のメッシュ出力部２０７より出力されるファイルの構成を、図８を用いて説明する。出力されるファイルは、図８に示されるように、ｈｅａｄｅｒ領域、ｂａｓｅ ｍｅｓｈ領域、ｓｕｂｂａｎｄ ｍｅｓｈ領域を含む。ｈｅａｄｅｒ領域には、解像度の段階数（ｐｒｏｇｒｅｓｓｉｖｅ_ｄｅｐｔｈ）、各階層におけるメッシュの頂点数（ｎｕｍ_ｖｅｒｔｉｃｅｓ）、エッジ数（ｎｕｍ_ｅｄｇｅｓ）、三角形数（ｎｕｍ_ｔｒｉａｎｇｌｅｓ）が記述されている。
【００３０】
ｂａｓｅ ｍｅｓｈ領域には、ベースメッシュのエッジｅｄｇｅｓ、三角形ｔｒｉａｎｇｌｅｓ、頂点座標ｃｏｏｒｄｓが記述されている。ｓｕｂｂａｎｄ ｍｅｓｈ領域には、ベースメッシュよりも解像度の高い階層で必要とされる追加の詳細情報が記述されており、ここでは、各階層において、解像度の低い階層からの細分化処理で新たに生じた頂点の頂点座標ｃｏｏｒｄｓが記述されている。即ち、同一の階層において、ｈｅａｄｅｒ領域に記述されている頂点数とｓｕｂｂａｎｄ ｍｅｓｈ領域に記述される頂点数が異なることに留意する。
【００３１】
続いて、図３（Ｂ）のフローチャートを用いて、上述のプログレッシブメッシュの正則分割処理について説明する。ここで、分割前のメッシュの頂点数をＮＶ、エッジ数をＮＥ、三角形数をＮＴとし、以下、各要素の参照番号を（ｎ）で示すものとする。なお、頂点に関して、分割後の頂点も分割前の頂点を利用するため、分割の前後において参照番号は維持されるが、エッジ及び三角形に関して、分割の前後において独立（固有）の参照番号が付与される。図６に細分化前後におけるプログレッシブ形式で記述されたメッシュデータの変化（即ち、頂点Ｖ、エッジＥ、三角形Ｔの参照番号の関係）を示し、図７に細分化前後における各要素数の変動を示す。
【００３２】
Ｓ３０８において、トポロジ細分化部２０５は、例えば、着目するエッジをＥｄとして、そのエッジＥｄの両端の２頂点（Ｖa、Ｖb）の平均座標である新頂点ＶNV+dを生成する。Ｓ３０９において、トポロジ細分化部２０５は、分割により生成された新頂点とその両端の２頂点の各々とを結ぶエッジＥ2d、Ｅ2d+1を新エッジとして生成する。Ｓ３１０において、トポロジ細分化部２０５は、全てのエッジに対して分割処理を実行したか否かを判定する。
【００３３】
このように、Ｓ３０８〜Ｓ３１０では、トポロジ細分化部２０５は、分割前のエッジの１つ１つに順に着目して分割処理を実行する。また、図１３を用いて補足すると、図１３（Ａ）と図１３（Ｂ）の関係に示されるようになる。即ち、エッジＥ0、エッジＥ1、エッジＥ2から新頂点ＶNV+0、ＶNV+1、ＶNV+2を生成し、さらに新エッジＥ20及びＥ20+1、新エッジＥ21及びＥ21+1、新エッジＥ22及びＥ22+1を生成する。
【００３４】
Ｓ３１１において、トポロジ細分化部２０５は、三角形Ｔｇを構成するエッジＥｄ、Ｅｅ、Ｅｆを分割して生成された３つの新頂点ＶNV+d、ＶNV+e、ＶNV+fを互いに接続する。これにより、トポロジ細分化部２０５は、３つの新エッジＥ2NE+3g、Ｅ2NE+3g+1、Ｅ２NE+3g+2を生成する。Ｓ３１２において、三角形Ｔｇを分割して生成された９つの新エッジＥ2d、Ｅ2d+1、Ｅ2e、Ｅ2e+1、Ｅ2f、Ｅ2f+1、Ｅ2NE+3g〜Ｅ2NE+3g+2により構成される４つの新三角形Ｔ4g〜Ｔ4g+3を生成（定義）する。Ｓ３１３において、トポロジ細分化部２０５は、全ての三角形に対して分割処理を実行したか否かを判定する。
【００３５】
このように、Ｓ３１１〜Ｓ３１３では、新エッジを生成し、さらに、新三角形を定義（生成）する。また、図１３を用いて補足すると、図１３（Ｂ）と図１３（Ｃ）の関係に示されるように、図１３（Ｂ）において生成された新頂点ＶNV+0、ＶNV+1、ＶNV+2を互いに結ぶことにより、図１３（Ｃ）に示されるように４つの新三角形を生成（定義）する。これにより、トポロジ（即ち、各要素間の接続関係を表現する情報）が生成される。
【００３６】
その他、図７に、細分化前後における頂点、エッジ、三角形の要素数の変動を示す。図７において、Ｓ３０８で生成される新頂点は符号７０１の領域、Ｓ３０９で生成される新エッジは符号７０２の領域、Ｓ３１１で生成される新エッジは符号７０３の領域、Ｓ３１２で生成される新三角形は符号７０４の領域に記述される。
【００３７】
次に、図２（Ｂ）に示される復号部について説明する。復号部は、図２（Ａ）の符号化部により生成されたプログレッシブメッシュデータを復号し、所望の解像度のメッシュ（設定された階層のメッシュ）を取得する。復号部は、例えば、ＰＤ（解像度の段階数）＝３で生成されたプログレッシブメッシュデータに対して、解像度の段階数として２階層目のメッシュを指定すると、ベースメッシュの４倍の面数のメッシュを取得する。なお、本実施形態では、復号時に設定された階層のメッシュのみを出力する仕様としているが、復号の過程で取得される全ての階層のトポロジを出力するようにしてもよい。
【００３８】
復号部は、図２（Ｂ）に示されるように、メッシュ入力部２０８、トポロジ格納部２０９、トポロジ細分化部２１０、ジオメトリ格納部２１１、ジオメトリ取得部２１２、メッシュ復元部２１３、メッシュ出力部２１４を備える。
【００３９】
メッシュ入力部２０８は、プログレッシブ符号化装置内にプログレッシブメッシュデータを入力し、トポロジ格納部２０９にトポロジを格納（設定）し、ジオメトリ格納部２１１に頂点座標情報を格納する。
【００４０】
トポロジ細分化部２１０は、トポロジ格納部２０９に格納されたトポロジを細分化し、設定された階層のメッシュのトポロジを生成する。ジオメトリ取得部２１２は、ジオメトリ格納部２１１に格納された頂点座標のうち、設定された階層に必要な部分（頂点座標データ）を取得する。
【００４１】
メッシュ復元部２１３は、細分化されたメッシュのトポロジを変換して既存のデータ記述形式のトポロジを取得すると共に、ジオメトリ取得部２１２から取得した頂点座標データと併せて、設定された階層におけるメッシュの表現を取得する。メッシュ出力部２１４は、生成したメッシュを出力する。
【００４２】
次に、図２（Ｂ）に示されるプログレッシブ符号化装置の復号部において実行される処理の概要及び手順を、図９（Ａ）のフローチャートを用いて説明する。Ｓ９０１において、メッシュ入力部２０８は、プログレッシブ符号化装置内にプログレッシブメッシュデータを入力する。
【００４３】
Ｓ９０２において、トポロジ細分化部２１０は、ベースメッシュのトポロジの正則分割を実行する。Ｓ９０３において、トポロジ細分化部２１０は、解像度の段階数がＮ階層のメッシュを取得する場合、Ｎ−１回、Ｓ９０２における正則分割を実行したか否かを判定する。
【００４４】
Ｓ９０４において、メッシュ復元部２１３は、プログレッシブ表現された三角形を既存のメッシュ表現のメッシュデータ（即ち、既存のデータ記述形式のメッシュデータ）に変換する。なお、この場合、上述の図４のデータ記述形式（即ち、三角形におけるエッジの参照の記述順序、エッジにおける頂点の参照の記述順序）に従うことで、メッシュの面の表裏を誤ることなく、頂点を取得することができる。具体的には、例えば、三角形を構成する３つのエッジのうち、１番目に記述されたエッジの１番目に記述された頂点、１番目に記述されたエッジの２番目に記述された頂点、２番目に記述されたエッジの２番目に記述された頂点を取り出せばよい。Ｓ９０５において、メッシュ出力部２１４は、生成したメッシュを出力する。
【００４５】
続いて、図９（Ｂ）のフローチャートを用いて、Ｓ９０２において実行されるベースメッシュのトポロジの正則分割処理について説明する。なお、図９（Ｂ）において、上述の図３（Ｂ）との変更点は、図３（Ｂ）のＳ３０８を実行しないことである（即ち、図９（Ｂ）では、頂点座標の算出は行わず、入力された頂点座標情報を利用する）。
【００４６】
上述の構成により、メッシュのトポロジをエッジで管理することで、上位階層で生じるトポロジの生成ルールが簡易になり、高速に復号可能な三次元メッシュのプログレッシブ符号化を実現することができる。なお、本実施形態において説明した内容は、二次元メッシュにも同様に適用することができる。
【００４７】
図１０は、符号化装置のハードウェア構成を示す図である。本実施形態に係る符号化装置は、ＣＰＵ１００１、ＲＡＭ１００２、ＲＯＭ１００３、キーボード１００４、マウス１００５、表示装置１００６、外部記憶装置１００７、記憶媒体ドライブ１００８、Ｉ／Ｆ１００９を備える。
【００４８】
ＣＰＵ（Central Processing Unit）１００１は、ＲＡＭ１００２又はＲＯＭ１００３に格納されているコンピュータプログラム又はデータを用いて、コンピュータ全体の制御を行う。また、ＣＰＵ１００１は、符号化装置が実行するものとして説明した上述の各処理を実行する。ＲＡＭ（Random Access Memory）１００２は、コンピュータ読み取り可能な記憶媒体の一例である。ＲＡＭ１００２は、外部記憶装置１００７、記憶媒体ドライブ１００８、又はネットワークＩ／Ｆ（インタフェース）１００９からロードされたコンピュータプログラムやデータを一時的に記憶するための記憶エリアを備える。また、ＲＡＭ１００２は、ＣＰＵ１００１が各種の処理を実行するときに用いるワークエリアを備える。即ち、ＲＡＭ１００２は、各種のエリアを適宜提供することができる。ＲＯＭ（Read Only Memory）１００３は、コンピュータ読み取り可能な記憶媒体の一例であり、例えば、コンピュータの設定データ、ブートプログラム等を格納する。
【００４９】
本実施形態に係る符号化装置のＣＰＵ１００１は、図２に示されるブロックの一部の機能を実現する。即ち、ＣＰＵ１００１は、図２に示されるブロックの一部として、メッシュ簡略化部２０２、トポロジ変換部２０３、メッシュ細分化部２０４、トポロジ細分化部２１０、ジオメトリ取得部２１２、メッシュ復元部２１３の機能を実現する。また、ＣＰＵ１００１がＲＡＭ１００２にロードされたプログラムを実行することで、上述の図２に示されるブロックの一部は、ＣＰＵ１００１が実行するソフトウェア（コンピュータプログラム）として実装できる。この場合、このソフトウェアは、ＰＣ（Personal Computer）等のコンピュータのＲＡＭ１００２にインストールされることになる。そして、このコンピュータのＣＰＵ１００１がこのインストールされたソフトウェアを実行することで、このコンピュータは上述の符号化装置の機能を実現することになる。
【００５０】
なお、ＣＰＵ１００１とは異なる専用の１又は複数のハードウェア或いはＧＰＵ（Graphics Processing Unit）を備え、ＣＰＵ１００１による処理の少なくとも一部を専用のハードウェア又はＧＰＵが行うようにしてもよい。また、専用のハードウェアとしては、例えば、ＡＳＩＣ（特定用途向け集積回路）、ＦＰＧＡ（Field-Programmable Gate Array）、及びＤＳＰ（デジタルシグナルプロセッサ）等がある。その他、補足として、図２のトポロジ格納部２０９及びジオメトリ格納部２１１は、例えば、ＲＡＭ１００２、外部記憶装置１００７等に対応する。
【００５１】
キーボード１００４及びマウス１００５は、コンピュータの操作者が操作するものであり、これを用いることで、各種の指示やデータをＣＰＵ１００１に対して入力することができる。表示装置１００６は、ＣＲＴや液晶画面等により構成されており、ＣＰＵ１００１による処理結果を画像や文字等で表示することができる。
【００５２】
外部記憶装置１００７は、コンピュータ読み取り記憶媒体の一例であり、ハードディスクドライブ装置に代表される大容量情報記憶装置である。外部記憶装置１００７には、例えば、ＯＳ（オペレーティングシステム）、図３（Ａ）及び（Ｂ）に示される各処理をＣＰＵ１００１に実現させるためのコンピュータプログラムやデータ、上述の各種テーブル、データベース等が記憶される。外部記憶装置１００７に記憶されるコンピュータプログラムやデータは、ＣＰＵ１００１による制御に従って、適宜ＲＡＭ１００２にロードされる。
【００５３】
記憶媒体ドライブ１００８は、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ等の記憶媒体に記憶されているコンピュータプログラムやデータを読み出し、その読み出したコンピュータプログラムやデータをＲＡＭ１００２や外部記憶装置１００７に出力する。なお、外部記憶装置１００７に記憶されているものとして説明した情報の一部又は全部を上述のＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ等の記憶媒体に記憶させておき、この記憶媒体ドライブ１００８に読み取らせてもよい。
【００５４】
ネットワークＩ／Ｆ１００９は、外部装置から頂点インデックス等を入力したり、外部装置に符号データを出力したりするためのインタフェースであり、例えば、ＵＳＢ（Universal Serial Bus）である。バス１０１０は、プログレッシブ符号化装置内の各部を接続するバスである。
【００５５】
以上のようなハードウェア構成において、コンピュータの電源がオンになると、ＣＰＵ１００１は、ＲＯＭ１００３に格納されているブートプログラムに従って、外部記憶装置１００７からＯＳをＲＡＭ１００２にロードする。この結果、キーボード１００４及びマウス１００５を介した入力操作が可能となり、また、表示装置１００６にＧＵＩ（Graphical User Interface）を表示することが可能となる。さらに、ユーザが、マウス１００５等を操作し、外部記憶装置１００７に格納されたテクスチャマッピングアプリケーションの起動を指示すると、ＣＰＵ１００１は、このテクスチャマッピングアプリケーションをＲＡＭ１００２にロードし、各種処理を実行する。これにより、上述のコンピュータが符号化装置として機能することになる。
【００５６】
なお、ＣＰＵ１００１により実行される、プログレッシブ符号化のアプリケーションプログラムは、メッシュ簡略化部２０２、メッシュ細分化部２０４、トポロジ細分化部２１０、メッシュ復元部２１３に相当する関数を備えることになる。また、ここでの処理結果は、外部記憶装置１００７に保存される。以上のように、上述のコンピュータは、本実施形態に係る符号化装置に適用することができる。
【００５７】
（実施形態２）
上述の実施形態１では、高速に復号する上でエッジデータをデータ構造内に埋め込む例について説明した。但し、実施形態１では、メッシュを高速に復号できる反面、エッジ数は頂点数に対して約３倍程度であり、要素数が多くなることから、結果、データ量が大きくなる傾向がある。
【００５８】
そこで、本実施形態では、データ量を低減することを目的として、出力するデータのデータ構造内にエッジデータを埋め込まずに、プログレッシブ符号化を実現する方法について説明する。なお、本実施形態に係る符号化装置に関して、上述の図２に示される符号化装置と同様に、後述する各ブロックの機能を、各ブロックの機能を有する関数群から成るプログラムにより実現してもよい。また、上述の実施形態１では、メッシュの構成単位として、三角形のメッシュを例に説明したが、本実施形態では四角形のメッシュを例に説明する。
【００５９】
図１２は、プログレッシブ符号化装置の機能構成を示す図である。なお、図１２において、図１２（Ａ）は符号化部、図１２（Ｂ）は復号部を示している。符号化部は、図１２（Ａ）に示されるように、メッシュ入力部１２０１、メッシュ簡略化部１２０２、トポロジ変換部１２０３、メッシュ細分化部１２０４、メッシュ出力部１２０７を備える。さらに、メッシュ細分化部１２０４は、トポロジ細分化部１２０５、ジオメトリ算出部１２０６を有する。また、復号部は、図１２（Ｂ）に示されるように、以下を備える。即ち、メッシュ入力部１２０８、トポロジ格納部１２０９、トポロジ変換部１２１０、トポロジ細分化部１２１１、ジオメトリ格納部１２１２、ジオメトリ取得部１２１３、メッシュ復元部１２１４、メッシュ出力部１２１５を備える。
【００６０】
以下、主に、実施形態１と共通する内容については、その説明を省略し、実施形態１と異なる部分に着目して説明する。符号化部のメッシュ簡略化部１２０２は、実施形態１と同様に、入力されたメッシュデータのメッシュを簡略化し、それにより得られた既存のデータ記述形式のベースメッシュのトポロジをメッシュ出力部１２０７に出力する。メッシュ出力部１２０７は、プログレッシブ表現されたメッシュのトポロジではなく、一般的なデータ記述形式のベースメッシュのトポロジを出力する。
【００６１】
復号部のメッシュ入力部１２０８は、符号化部のメッシュ出力部１２０７から既存のデータ記述形式のベースメッシュを受信する。メッシュ入力部１２０８は、その受信したベースメッシュのトポロジをトポロジ格納部１２０９に格納し、そのベースメッシュのジオメトリをジオメトリ格納部１２１２に格納する。
【００６２】
トポロジ変換部１２１０は、そのベースメッシュのトポロジをプログレッシブ表現に変換する。
なお、ここで、トポロジ変換部１２１０における入出力は、トポロジ変換部１２０３における入出力と一致するものとする。即ち、このように、復号部において、ベースメッシュをプログレッシブ表現に変換する。その後、トポロジ細分化部１２１１は、トポロジ変換部１２１０においてプログレッシブ表現に変換されたベースメッシュのトポロジを細分化し、設定された階層のメッシュのトポロジを生成する。
【００６３】
また、本実施形態では、上述のように、四角形のメッシュをメッシュの構成単位として取り扱うため、メッシュ細分化（分割）の行程は、基本的に図５と同様であるが、図１１に示されるようにトポロジが図５と異なる。具体的には、三角形のメッシュに対して四角形のメッシュは、エッジの分割において、図１３（Ｄ）のエッジが図１３（Ｅ）のように分割され、実施形態１と同様であるが、図１３（Ｆ）に示されるように、四角形の内部に新たな頂点が生成される点で異なる。
【００６４】
以上、本実施形態では、既存のデータ記述形式のベースメッシュのトポロジを出力して、プログレッシブ符号化を実現する構成について説明した。本実施形態に係る符号化装置は、この構成により、実施形態１に係る符号化装置と比較して、トポロジに要するデータ量を低減することができる。
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００６５】
２０３  トポロジ変換部
２０４  メッシュ細分化部
２０７  メッシュ出力部
【図１】
2020119292.tif 000003
【図２】
2020119292.tif 000004
【図３】
2020119292.tif 000005
【図４】
2020119292.tif 000006
【図５】
2020119292.tif 000007
【図６】
2020119292.tif 000008
【図７】
2020119292.tif 000009
【図８】
2020119292.tif 000010
【図９】
2020119292.tif 000011
【図１０】
2020119292.tif 000012
【図１１】
2020119292.tif 000013
【図１２】
2020119292.tif 000014
【図１３】
2020119292.tif 000015