(57)【要約】      （修正有）【課題】所定の空間内における物理的属性の値を表すデータを圧縮する。【解決手段】所定の空間の階層的区画の葉セルのそれぞれから、各葉セルにおける物理的属性の値を表す係数のそれぞれへのマッピングを含む信号から開始して、今回の繰り返しのそれぞれにおいて、前回の繰り返しにおけるローパスサブバンドにウェーブレット畳み込みフィルタの所定の基底を用いて当該信号の離散ウェーブレット変換を決定し、決定した離散ウェーブレット変換を符号化する。【選択図】図１
2018101404.tif 000002
【特許請求の範囲】
【請求項１】
所定の空間（Ｓ）内における物理的属性の値を表すデータを圧縮するための、コンピュータによって実施される方法であって、
前記所定の空間の階層的区画（ｏｃｔｒｅｅＮ（Ｓ））の葉セル（ａＮ１ａＮ２…ａＮＮ∈Ｃ（ＬＮ（ｏｃｔｒｅｅＮ（Ｓ））），ａＮｎ，ｎ∈｛１，…，Ｎ｝∈｛０，１｝３）のそれぞれから、各葉セルにおける物理的属性の値を表す係数（ｃＮ，０００（ａＮ１ａＮ２…ａＮＮ））へのマッピング（ｃＮ，０００（・））を含む信号（ｃＮ，０００）を提供することと、
前記信号（ｃＮ，０００）から開始して、今回の繰り返しのそれぞれ（Ｄ∈｛Ｎ−１，Ｎ−２，・・・，０｝）において、前回の繰り返し（Ｄ＋１）におけるローパスサブバンド（ｃＤ＋１，０００）に各ウェーブレット畳み込みフィルタ（ｆｌ）を渡すことによって、ウェーブレット畳み込みフィルタ（ｆｌ（ｄ，ｓ），ｌ∈｛０，１｝３またはｌ∈｛Ｌ，Ｈ｝３）の所定の基底を用いて前記信号の離散ウェーブレット変換を決定し、それによって、ローパスサブバンド（ｃＤ，０００）を含むサブバンド（ｃＤ，ｌ，ｌ∈｛０，１｝３またはｌ∈｛Ｌ，Ｈ｝３）を反復的に決定することであって、
今回の繰り返し（Ｄ）で決定されたサブバンド（ｃＤ，ｌ）は、それぞれ、前回の繰り返し（Ｄ＋１）における同じ階層的区画（ｏｃｔｒｅｅＤ＋１（Ｓ））をその区画とする階層的区画（ｏｃｔｒｅｅＤ（Ｓ））の、葉セル（ａＤ１ａＤ２・・・ａＤＤ∈Ｃ（ＬＤ（ｏｃｔｒｅｅＤ（Ｓ））），ａＤｎ，ｎ∈｛１，…，Ｄ｝∈｛０，１｝３）からのマッピング（ｃＤ，ｌ（・））を含み、それぞれの所与の葉セル（ａＤ１＊ａＤ２＊・・・ａＤＤ＊）は、それぞれのウェーブレット畳み込みフィルタ（ｆｌ）を前回の繰り返し（Ｄ＋１）のローパスサブバンド（ｃＤ＋１，０００）に渡す間に、前記所与の葉セル（ａＤ１＊ａＤ２＊…ａＤＤ＊）を細分化する前回の繰り返し（Ｄ＋１）の階層的区画（ｏｃｔｒｅｅＤ＋１（Ｓ））の葉セル（ａＤ１＊ａＤ２＊…ａＤＤ＊ａＤ＋１Ｄ＋１∈Ｃ（ＬＤ＋１（ｏｃｔｒｅｅＤ＋１（Ｓ））），ａＤ＋１Ｄ＋１∈｛０，１｝３））からマッピングされた前回の繰り返し（Ｄ＋１）のローパスサブバンド（ｃＤ＋１，０００）の係数（ｃＤ＋１，０００（ａＤ１＊ａＤ２＊・・・ａＤＤ＊ａＤ＋１Ｄ＋１））にそれぞれのウェーブレット畳み込みフィルタ（ｆｌ）を適用することによって決定されたそれぞれの係数（ｃＤ，ｌ（ａＤ１＊ａＤ２＊・・・ａＤＤ＊））にマッピングされるような、決定することと、
前記決定した離散ウェーブレット変換を符号化すること、とを含む
ことを特徴とする方法。
【請求項２】
前記ウェーブレット畳み込みフィルタｆ１が、コンパクトな台（｛０，１｝３）を有していること
を特徴とする請求項１に記載の方法。
【請求項３】
繰り返しにおける少なくとも１つの所与の回（Ｄ）において、前記渡すことは、係数にマッピングされなかった前回の繰り返し（Ｄ＋１）のローパスサブバンド（ｃＤ＋１，０００）の少なくとも１つの葉セル（
【数１３】
2018101404.tif 000015
）に遭遇し、前記離散ウェーブレット変換を決定することは、遭遇したセルに値（
【数１４】
2018101404.tif 000016
）を割り当てることを含み、前記割り当てられた値は、前記ウェーブレット畳み込みフィルタのそれぞれに入力される
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記割り当てられた値は、繰り返しの前記所与の回（Ｄ）で決定されたサブバンド内を強制的に１つ以上のゼロにすることに関連する基準に従って決定される
ことを特徴とする請求項３に記載の方法。
【請求項５】
前記基準（
【数１５】
2018101404.tif 000017
）は、強制的にゼロにされなかった、繰り返しの所与の回（Ｄ）で決定されたすべてのサブバンドの係数の数が、強制的にゼロにされなかった、前回の繰り返し（Ｄ＋１）のローパスサブバンドの係数の数に等しいことである
ことを特徴とする請求項４に記載の方法。
【請求項６】
前記コンパクトな台のサイズは、前記階層的細分化のディバイダの最小値以下である
ことを特徴とする請求項２〜５のいずれかに記載の方法。
【請求項７】
前記階層的細分化のディバイダは定数値（２３）であり、コンパクトな台のサイズは前記階層的細分化のディバイダの前記定数値に等しい
ことを特徴とする請求項６に記載の方法。
【請求項８】
請求項１〜７のいずれかに記載の方法によって得られる圧縮信号を復元するための、コンピュータによって実施される方法。
【請求項９】
請求項１〜７のいずれかに記載の方法によって得られる圧縮信号。
【請求項１０】
請求項１〜７のいずれかに記載の方法および／または請求項８に記載の方法を実行するための指示を含むコンピュータプログラム。
【請求項１１】
請求項１０に記載のコンピュータプログラムおよび／または請求項９に記載の圧縮信号を記録したコンピュータ読み取り可能記憶媒体。
【請求項１２】
請求項１０に記載のコンピュータプログラムおよび／または請求項９に記載の圧縮信号を記録したメモリに接続されたプロセッサを備えるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラムおよびシステムの分野に関し、より具体的には、所定の空間における物理的属性の値を表す信号を圧縮および／または復元するための方法、システムおよびプログラム、およびそのような圧縮信号に関する。
【背景技術】
【０００２】
オブジェクトの設計、エンジニアリング、製造のため、多数のシステムおよびプログラムが市場に提供されている。ＣＡＤは、コンピュータ支援設計（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ）の略語であり、例えば、オブジェクトを設計するためのソフトウェア・ソリューションに関する。ＣＡＥは、コンピュータ支援エンジニアリング（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ）の略語であり、例えば、将来の製品の物理的挙動をシミュレーションするためのソフトウェア・ソリューションに関する。ＣＡＭは、コンピュータ支援製造（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）の略語であり、例えば、製造工程および動作を定義するためのソフトウェア・ソリューションに関する。このようなコンピュータ支援設計システムにおいて、グラフィカル・ユーザ・インターフェースは、技術の効率に関して、重要な役割を果たす。これらの技術は、製品ライフサイクル管理（Ｐｒｏｄｕｃｔ  Ｌｉｆｅｃｙｃｌｅ  Ｍａｎａｇｅｍｅｎｔ：  ＰＬＭ）システムに組み込むことができる。ＰＬＭとは、企業が、拡張エンタープライズの概念全体にわたって、製品データを共有し、共通の工程を適用し、構想に始まり製品寿命の終わりに至る製品開発のための企業知識を活用するのを支援するビジネス戦略を指す。ダッソー・システムズが提供するＰＬＭソリューション（製品名ＣＡＴＩＡ、ＥＮＯＶＩＡ、ＤＥＬＭＩＡ）は、製品エンジニアリング知識をオーガナイズするエンジニアリング・ハブ、製品エンジニアリング知識を管理する製造ハブ、およびエンジニアリング・ハブと製造ハブの両方に対するエンタープライズ統合と接続を可能にするエンタープライズ・ハブを提供する。全てのシステムは、製品、工程、リソースを結ぶオープンなオブジェクトモデルを提供し、最適化された製品定義、製造準備、生産およびサービスを推進する、動的な知識ベースの製品作成および意思決定支援を可能にする。
【０００３】
この文脈において、粒子ベースのアプリケーション（例えば、点群の描画や、平滑化粒子流体力学などのＳＰＨによる流体シミュレーション）、または３Ｄモデル化は、データ圧縮の恩恵を受けることができる。したがって、３Ｄ（または２Ｄ）空間に広がる多数の粒子に適用されるデータ圧縮を実行する方法が開発されている。そのような先行技術は主に２つの研究分野によってカバーされる。第１の分野は、３Ｄ（または２Ｄ）メッシュのジオメトリによる圧縮である。第２の分野は、点群の圧縮である。
【０００４】
ここで、第１の分野（メッシュ圧縮）について述べる。
【０００５】
３Ｄメッシュを圧縮するために非常に多数の方法が提案されている。３Ｄメッシュは、通常、ジオメトリデータ（例えば、空間内のメッシュの各頂点の位置）、接続性データ（例えば、頂点間の入射関係、すなわち、頂点がどのようにリンクして多角形の面を形成するか）、およびオプションとして、頂点ごと、および／または、面ごとの属性（すなわち、頂点／面の位置に関連付けられた少なくとも１つの物理的属性の値、例えば、アプリケーションに有用な頂点／面の特性、例えば、色、法線ベクトル、および／または、テクスチャの座標）からなる。これらの方法の比較的包括的な分類は、Ｍａｇｌｏ他による２０１３年の論文「３Ｄ  ｍｅｓｈ  ｃｏｍｐｒｅｓｓｉｏｎ：ｓｕｒｖｅｙ，ｃｏｍｐａｒｉｓｏｎｓ  ａｎｄ  ｅｍｅｒｇｉｎｇ  ｔｒｅｎｄｓ」に記載されている。基本的に、２つの主系統に分けられる。
【０００６】
第１の系統は、接続性圧縮法である。この方法は、主として接続性データを用いて、接続性データと頂点情報を符号化する。Ｅｄｇｅｂｒｅａｋｅｒ（Ｒｏｓｓｉｇｎａｃによる）、Ｌａｙｅｒｅｄ  ｄｅｃｏｍｐｏｓｉｔｉｏｎ（Ｂａｊａｊによる）、および、Ｓｐａｎｎｉｎｇ  ｔｒｅｅｓ（ＴａｕｂｉｎとＲｏｓｓｉｇｎａｃによる）のアルゴリズムが、よい例である。これらの方法は、接続された頂点の位置および属性値が近いため、良い結果をもたらす。これは、圧縮方式に有利に利用することができる。すなわち、接続された頂点の位置／属性値を既に復号している場合、それらを予測できる（Ｅｄｇｅｂｒｅａｋｅｒアルゴリズムの、いわゆる「平行四辺形予測」法）。
【０００７】
第２の系統は、ジオメトリによる圧縮法に関する。この系統では、まず、ジオメトリデータ（およびその他の頂点属性）を、接続性を考慮することなく圧縮する。接続性は、その後、ジオメトリデータを用いて圧縮する。このような方法の着眼点は、非常に大きな３Ｄメッシュ内の頂点位置／他の属性と比較して、接続性データは、データのほんの一部だけを表すということである。したがって、このような方法は、ジオメトリデータをより慎重に扱うのにより適切であると考えられる。最先端のジオメトリによる圧縮法のほとんどは、空間分割に基づいている。すなわち、頂点がＢＳＰ、Ｋ−ｄツリー、八分木（２Ｄでは四分木）などの階層構造に分割されている。頂点位置を符号化するのにＫ−ｄツリーを用いる方法の数少ない例には、以下が含まれる。Ｌｅｗｉｎｅｒ他（２００６）による論文「ＧＥｎ−ｃｏｄｅ：  Ｇｅｏｍｅｔｒｙ−ｄｒｉｖｅｎ  ｃｏｍｐｒｅｓｓｉｏｎ  ｆｏｒ  Ｇｅｎｅｒａｌ  Ｍｅｓｈｅｓ」、およびＧａｎｄｏｉｎおよびＤｅｖｉｌｌｉｅｒｓ（２００２）による論文「Ｐｒｏｇｒｅｓｓｉｖｅ  ｌｏｓｓｌｅｓｓ  ｃｏｍｐｒｅｓｓｉｏｎ  ｏｆ  ａｒｂｉｔｒａｒｙ  ｓｉｍｐｌｉｃｉａｌ  ｃｏｍｐｌｅｘｅｓ」。頂点位置を符号化するのに八分木を用いる方法の例には、以下が含まれる。Ｐｅｎｇ他（２００５）による論文「Ｇｅｏｍｅｔｒｙ−ｇｕｉｄｅｄ  ｐｒｏｇｒｅｓｓｉｖｅ  ｌｏｓｓｌｅｓｓ  ３Ｄ  ｍｅｓｈ  ｃｏｄｉｎｇ  ｗｉｔｈ  ｏｃｔｒｅｅ  ｄｅｃｏｍｐｏｓｉｔｉｏｎ」、Ｔｉａｎ他（２０１２）による論文「Ａｄａｐｔｉｖｅ  ｃｏｄｉｎｇ  ｏｆ  ｇｅｎｅｒｉｃ  ３Ｄ  ｔｒｉａｎｇｕｌａｒ  ｍｅｓｈｅｓ  ｂａｓｅｄ  ｏｎ  ｏｃｔｒｅｅ  ｄｅｃｏｍｐｏｓｉｔｉｏｎ」、Ｊａｍｉｎ他（２００９）による論文「ＣＨｕＭＩ  ｖｉｅｗｅｒ：  Ｃｏｍｐｒｅｓｓｉｖｅ  ｈｕｇｅ  ｍｅｓｈ  ｉｎｔｅｒａｃｔｉｖｅ  ｖｉｅｗｅｒ」、およびＤｕ他（２００９）による論文「Ｏｕｔ−ｏｆ−Ｃｏｒｅ  Ｐｒｏｇｒｅｓｓｉｖｅ  Ｌｏｓｓｌｅｓｓ  Ｃｏｍｐｒｅｓｓｉｏｎ  ａｎｄ  Ｓｅｌｅｃｔｉｖｅ  Ｄｅｃｏｍｐｒｅｓｓｉｏｎ  ｏｆ  Ｌａｒｇｅ  Ｔｒｉａｎｇｌｅ  Ｍｅｓｈｅｓ」。
【０００８】
ここで第２の分野（点群圧縮）について述べる。
【０００９】
点群には、ジオメトリデータ（頂点位置）と頂点ごとの属性（例えば、頂点ごとの色、および／または、法線ベクトル）のみが含まれる。点群は非常に大きなデータで構成されることが多いため、圧縮は重要な課題である。最先端の圧縮方法も、空間分割に基づいている。これは良い結果をもたらし、頂点のランダムアクセス（点群の別の注目事項）が可能になることもある。以下の方法は、すべて八分木分解に基づいている。Ｂｏｔｓｃｈ他による論文「Ｅｆｆｉｃｉｅｎｔ  ｈｉｇｈ  ｑｕａｌｉｔｙ  ｒｅｎｄｅｒｉｎｇ  ｏｆ  ｐｏｉｎｔ  ｓａｍｐｌｅｄ  ｇｅｏｍｅｔｒｙ」、Ｈｕａｎｇ他による論文「Ａ  Ｇｅｎｅｒｉｃ  Ｓｃｈｅｍｅ  ｆｏｒ  Ｐｒｏｇｒｅｓｓｉｖｅ  Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｄｉｎｇ」、Ｈｕａｎｇ他による論文「Ｏｃｔｒｅｅ−Ｂａｓｅｄ  Ｐｒｏｇｒｅｓｓｉｖｅ  Ｇｅｏｍｅｔｒｙ  Ｃｏｄｉｎｇ  ｏｆ  Ｐｏｉｎｔ  Ｃｌｏｕｄ」、Ｊｕｉａｎｇ他による論文「Ｔａｎｇｅｎｔ−ｐｌａｎｅ−ｃｏｎｔｉｎｕｉｔｙ  ｍａｘｉｍｉｚａｔｉｏｎ  ｂａｓｅｄ  ３ｄ  ｐｏｉｎｔ  ｃｏｍｐｒｅｓｓｉｏｎ」、Ｋａｍｍｅｒｌ他による論文「Ｒｅａｌ−ｔｉｍｅ  ｃｏｍｐｒｅｓｓｉｏｎ  ｏｆ  ｐｏｉｎｔ  ｃｌｏｕｄ  ｓｔｒｅａｍｓ」、およびＺｈａｎｇ他による論文「Ｐｏｉｎｔ  ｃｌｏｕｄ  ａｔｔｒｉｂｕｔｅ  ｃｏｍｐｒｅｓｓｉｏｎ  ｗｉｔｈ  ｇｒａｐｈ  ｔｒａｎｓｆｏｒｍ」。
【００１０】
これらの方法の多くは、２つのステップからなる。まず、各葉が０個または１個（またはいくつか）の頂点（群）を含み、頂点を含む各葉が小さい次元を持つように、八分木内の空間を分割する。このように、ツリー内のセルの位置を知ることにより、３Ｄ空間内の頂点を配置するのに十分な精度が得られる。次いで、ツリー構造を効率的に符号化し、その葉が空であるかどうかを判定する方法である。この情報は、頂点位置を回復するのに十分である。
【００１１】
上に列挙した圧縮方法は、それが第１の分野のものか第２の分野のものかに関わらず、効率を上げるための努力や工夫が惜しむことなくなされている。効率は、以下の基準のいずれか１つ、またはいずれかのトレードオフによって評価することができる。すなわち、圧縮率、圧縮復元時間、プログレッシブ性、データランダムアクセス、および時間的相関関係である。圧縮率は、圧縮後と圧縮前のデータサイズの比である。これは具体的で定量化された尺度であり、通常は、効率を評価する際の最初の方法である。圧縮復元時間もまた、効率を評価するための確かな定量化された尺度である。現実の３Ｄアプリケーションでは、リアルタイムでデータを読み込んで復元する必要があるため、復元時間がより深く関連するが、このようなデータはオフラインで（一度だけ）圧縮されている可能性がある。これはリアルタイムで動作できるかどかという問題に強く関連しているため、メモリ消費を考慮に入れることもある。プログレッシブ性とは、データを部分的にロードし、既に使用可能であるものを得る能力である。部分的にロードされたデータは、最終的な結果の粗いバージョンとして表示され、さらにロードすることによって（さらに）細かい詳細が追加されてもよい。データランダムアクセスは、データの、適切に配置された小さな部分を、他の部分の読み込み／ロードを行うことなく（または最小限の時間で）ロードする機能である。時間的相関関係は、データが継時的にアニメーション化される場合、フレーム間の相関関係（すなわち異なる時間におけるデータの状態）を利用してデータをさらに圧縮する能力である。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
多くの努力にもかかわらず、上に列挙された方法の大部分は、３Ｄ点の属性ではなく、その位置を符号化する効率に重点を置いている。これらの属性は、点群／３Ｄモデルを高品質で描画する上で重要である。これらの頂点の属性のサイズもまた、頂点の位置のサイズに比べて重要である。
【００１３】
いくつかの方法は有効な解決策を提供しているが、それでもなお十分に効率的ではない。
・Ｈｕａｎｇ他による論文「Ａ  Ｇｅｎｅｒｉｃ  Ｓｃｈｅｍｅ  ｆｏｒ  Ｐｒｏｇｒｅｓｓｉｖｅ  Ｐｏｉｎｔ  Ｃｌｏｕｄ  Ｃｏｄｉｎｇ」は、線形非相関変換を行い、次いで、変換したそれぞれの軸に沿って適応量子化を行うことによって、色（頂点ごとの属性）を符号化することを教示している。この方式は高速ではあるが、八分木ベースの方法と同程度の符号化効率しか得られない。
・Ｈｕａｎｇ他による論文「Ｏｃｔｒｅｅ−ｂａｓｅｄ  Ｐｏｉｎｔ−Ｃｌｏｕｄ  Ｃｏｍｐｒｅｓｓｉｏｎ」は、位置と色を、別々の八分木構造中で符号化することを教示している。
・Ｚｈａｎｇ他による論文「Ｐｏｉｎｔ  ｃｌｏｕｄ  ａｔｔｒｉｂｕｔｅ  ｃｏｍｐｒｅｓｓｉｏｎ  ｗｉｔｈ  ｇｒａｐｈ  ｔｒａｎｓｆｏｒｍ」は、頂点の属性の圧縮に着目し、「グラフ変換」に基づく方法を紹介している。
【００１４】
主な難点は、属性（例えば、画素色）が完全に規則的な（例えば、格子状の）構造上にある従来の画像およびビデオとは異なり、この場合の属性は、非構造化および／または疎な点群上に存在し、したがって圧縮が難しいことである。
【００１５】
このような文脈において、現実の物体を表すモデル化オブジェクトを圧縮するための改善された方法が依然として必要である。
【課題を解決するための手段】
【００１６】
したがって、所定の空間内における物理的属性の値を表すデータを圧縮するための、コンピュータによって実施される方法が提供される。本方法は、所定の空間の階層的区画の葉セルのそれぞれから、各葉セルにおける物理的属性の値を表す係数のそれぞれへのマッピングを含む信号を提供することを含む。本方法はまた、当該信号から開始して、今回の繰り返しのそれぞれにおいて、前回の繰り返しにおけるローパスサブバンドに各ウェーブレット畳み込みフィルタを渡すことによって、ウェーブレット畳み込みフィルタの所定の基底を用いて当該信号の離散ウェーブレット変換を決定し、それによって、ローパスサブバンドを含むサブバンドを反復的に決定することを含む。今回の繰り返しで決定されたサブバンドは、それぞれ、前回の繰り返しにおける同じ階層的区画をその区画とする階層的区画の、葉セルからのマッピングを含み、それぞれの所与の葉セルは、それぞれのウェーブレット畳み込みフィルタを前回の繰り返しのローパスサブバンドに渡す間に、所与の葉セルを細分化する前回の繰り返しの階層的細分化の葉セルからマッピングされた前回の繰り返しのローパスサブバンドの係数にそれぞれのウェーブレット畳み込みフィルタを適用することによって決定されたそれぞれの係数にマッピングされる。本方法は、また、決定した離散ウェーブレット変換を符号化することを含む。
【００１７】
本方法は、以下のうちの１つまたは複数を含んでいてもよい。
・ウェーブレット畳み込みフィルタは、コンパクトな台を有する。
・繰り返しにおける少なくとも１つの所与の回において、前記渡すことは、係数にマッピングされなかった前回の繰り返しのローパスサブバンドの少なくとも１つの葉セルに遭遇し、前記離散ウェーブレット変換を決定することは、遭遇したセルに値を割り当てることを含み、前記割り当てられた値は、ウェーブレット畳み込みフィルタのそれぞれに入力される。
・前記割り当てられた値は、繰り返しの前記所与の回で決定されたサブバンド内を強制的に１つ以上のゼロにすることに関連する基準に従って決定される。
・前記基準は、強制的にゼロにされなかった、繰り返しの所与の回で決定されたすべてのサブバンドの係数の数が、強制的にゼロにされなかった、前回の繰り返しのローパスサブバンドの係数の数に等しいことである。
・前記コンパクトな台のサイズは、階層的細分化のディバイダの最小値以下である。かつ／あるいは、
・階層的細分化のディバイダは定数値であり、コンパクトな台のサイズは階層的細分化のディバイダの定数値に等しい。
【００１８】
また、上記圧縮方法によって得られる圧縮信号が提供される。そのような圧縮された信号は、所定の空間、特に初期の階層細分化の葉セルにおける物理的属性の値を表すが、初期マッピングよりも、要するメモリ空間が小さい（「初期」という形容詞は、初期の信号、すなわち離散ウェーブレット変換以前の状態の信号を指す）。圧縮された信号は実際に符号化された離散ウェーブレット変換を含み、それにより離散ウェーブレット変換から生じるサブバンドの階層的構成を符号化した結果を表すデータを含む。圧縮された信号は、係数が初期の信号上にマッピングされる初期の階層的細分化の葉セルを示す追加情報をさらに含んでいてもよい。このような追加情報は、初期マッピング自体を表すデータであってもよいが、係数データを提供するデータを初期データ内（のみ）において破棄する。係数値は実際、縮小したサイズのバージョンの圧縮信号で提供される。すなわち、符号化した離散ウェーブレット変換である。
【００１９】
また、上記圧縮方法によって得られる圧縮信号を復元するための、コンピュータによって実施される方法が提供される。圧縮信号は、上述の圧縮方法によって効果的に得ることができる。したがって、圧縮および復元は、圧縮・復元グローバル処理において逐次実行されてもよい。しかし、圧縮された信号は、同じ圧縮形式になるのであれば、他の圧縮方法で得てもよい。復元は、圧縮を行うのに実行される演算を逆に行うことをその本質とし、後で説明するオプションを用いて、それ自体既知の離散ウェーブレット変換から初期信号を取得する。したがって、復元は、圧縮信号を復号し、次いで、離散ウェーブレット変換を元に戻す（すなわち、その逆を実行する）ことを含んでいてもよい。
【００２０】
一例において、復元により、初期信号に存在しなかった係数、すなわち、圧縮前に係数をマッピングしなかった葉セルからマッピングされる係数が得られる可能性がある。この復元は、復元に由来する各係数について、係数が最初に存在したか否かを決定することを含んでいてもよい。これは、圧縮信号に存在する付加的な情報、例えば上述の付加情報に基づいていてもよい。復元は、最初に存在しなかった係数を破棄することを含んでいてもよい。
【００２１】
また、信号の使用、例えば表現および／または演算および／またはマッピングに基づいて実行されるシミュレーションの表示を含む、コンピュータによって実施される方法が提供される。この使用は、復元後、および／または圧縮前のグローバル処理で実行されてもよい。
【００２２】
さらには、前記圧縮方法、前記復元方法、および／または、前記使用を実行するための命令を含むコンピュータプログラムが提供される。
【００２３】
さらには、前記コンピュータプログラム、および／または前記圧縮信号を記録したコンピュータ読み取り可能記憶媒体が提供される。
【００２４】
また、前記コンピュータプログラム、および／または圧縮信号を記録したメモリに接続されたプロセッサを備えるシステムが提供される。
【図面の簡単な説明】
【００２５】
【図１】本方法の一例のフローチャート。
【図２】本システムの一例。
【図３】本方法を説明する図である。
【図４】本方法を説明する図である。
【図５】本方法を説明する図である。
【図６】本方法を説明する図である。
【図７】本方法を説明する図である。
【図８】本方法を説明する図である。
【図９】本方法を説明する図である。
【図１０】本方法を説明する図である。
【図１１】本方法を説明する図である。
【発明を実施するための形態】
【００２６】
以下、非限定的な例として、本発明の実施の形態を添付の図面を参照しつつ説明する。
図１のフローチャートを参照して、所定の空間内の物理的属性の値を表すデータを圧縮するための、コンピュータによって実施される方法を提案する（すなわち、メモリ記憶装置上のデータのサイズが、例えば、少なくとも統計的に、例えば、情報の損失が比較的少ないか、または全くないように縮小されるように、前記データを処理する）。本方法は、所定の空間の階層的区画の各葉セルにおける物理的属性の値を表す信号を提供すること（Ｓ１０）を含む。本方法はまた、ウェーブレット畳み込みフィルタの所定の基底を用いて信号の離散ウェーブレット変換を決定すること（Ｓ２０）を含む。離散ウェーブレット変換は、信号のデータ構造に基づき、特に階層的細分化構造に従って実行される。言い換えれば、離散ウェーブレット変換の基底となる繰り返しの構造は、階層的細分化の構造に従う。さらに言い換えれば、離散ウェーブレット変換は、葉セルから開始して、階層的細分化構造を巻き戻すことに対応するシーケンス内のサブバンドを決定することを含む。本方法はまた、Ｓ２０で決定した離散ウェーブレット変換を、例えば任意の方法、例えばロスレスな方法で符号化すること（Ｓ３０）を含む。オプションとして、本方法はまた、符号化（Ｓ３０）の前に、ウェーブレット変換から生じる係数を任意の古典的な方法（例えば、そのような段階で圧縮を不可逆なものにするが、圧縮率を増加させるような方法）で量子化することを含んでいてもよい。このような方法は、所定の空間内における物理的属性の値を表すデータの圧縮の分野を改善する。
【００２７】
第１に、Ｓ３０で符号化された物理的属性の離散ウェーブレット変換は、元のデータおよび初期信号の圧縮（すなわち、圧縮されたバージョン）を形成するデータ構造をもたらす（例えば、元のデータおよび初期信号は、本方法の後、その信号が最初に保存されていた不揮発性メモリから、あるいは本方法による処理中のモデル化オブジェクトを形成するあらゆるデータから、破棄／削除されて、例えば遠隔のシステムに送信されてもよい。例えば、本方法は、モデル化オブジェクトを不揮発性メモリ上に定義するデータを圧縮する処理、および／またはモデル化オブジェクトを圧縮したものを遠隔のシステム、例えば別のワークステーションに送信して、帯域幅を削減する処理に関与する）。このように、本方法は、他の任意の圧縮方式に基づき構築され、それによって、そのような他の圧縮方式の効率、特に圧縮率を高める新しい圧縮法を提供する。さらに、例において、圧縮は、少なくとも前記決定（Ｓ２０）の段階でロスレスである。
【００２８】
また、本方法は、現実の物体のロケーションの集合、位置の集合、または形状の表現とは異なる物理的属性を表す信号を変換および符号化してもよい。実際、本方法は、ロケーションの集合、すなわち階層的細分化の葉セルにマッピングされた係数の形で、信号を提供する。したがって、ロケーションの集合は、階層的細分化データ構造によって既に提供されているので、マッピングによって提供された係数は単なるロケーションの集合を超える追加の情報を伝達することができ、その場合、本方法はそのような追加情報を圧縮する。このように、本方法は、単に位置決めデータを圧縮することに着目する従来技術の方法を改善する。
【００２９】
最終的に符号化されるのが具体的には特定の離散ウェーブレット変換であるという事実は、特に効率的であることを証明する。実際、ウェーブレット圧縮方式を使用することにより、本方法は比較的高い圧縮率を達成することができる。特に、物理的属性値（例えば、頂点の色または頂点ごとの法線ベクトルなどの標準属性）は、ウェーブレット圧縮方式によって十分に考慮される良好な空間的相関関係を有する。一例では、物理的属性の値は、所定の閾値を上回る空間的相関関係を有する。さらに、ウェーブレット圧縮方式を使用することにより、本方法は比較的高速になる。特に、決定（Ｓ２０）および／または符号化（Ｓ３０）は、並列化（例えば、ＧＰＵ上で実施）することができる。
【００３０】
また、離散ウェーブレット変換係数（Ｓ２０の出力）を周波数サブバンドにソートすることができる。しかし、本方法は、ウェーブレットを対象とする周知の符号化方式、例えば、当然漸進性を提供するように設計された、ＥＺＷ（Ｓｈａｐｉｒｏによる論文「Ｅｍｂｅｄｄｅｄ  ｉｍａｇｅ  ｃｏｄｉｎｇ  ｕｓｉｎｇ  ｚｅｒｏｔｒｅｅｓ  ｏｆ  ｗａｖｅｌｅｔｓ」に記載）やＳＰＩＨＴ（ＳａｉｄおよびＰｅａｒｌｍａｎによる論文「Ａ  ｎｅｗ  ｆａｓｔ  ａｎｄ  ｅｆｆｉｃｉｅｎｔ  ｉｍａｇｅ  ｃｏｄｅｃ  ｂａｓｅｄ  ｏｎ  ｓｅｔ  ｐａｒｔｉｔｉｏｎｉｎｇ  ｉｎ  ｈｉｅｒａｒｃｈｉｃａｌ  ｔｒｅｅｓ」に記載）、あるいは、漸進性を提供するように構成された他の符号化方式（それ自体公知のもの）に従って、符号化（Ｓ３０）を実行してもよい。
【００３１】
そして、属性データは、未処理で（例えば、構造化していない値の集合として）考慮され変換されない。むしろ、物理的属性係数は、階層的区画（それ自体、信号が供給される所定の空間に関連付けられている）に関連付けられ、前記特定の構造は、物理的属性の空間連続性が利用されるため、圧縮効率を達成する方法で変換に関与する。階層的細分化に基づいて前記決定（Ｓ２０）を実行する方法のおかげで、本方法は、葉セル、および、それからマッピングされた物理的属性の値を表す係数の不規則なおよび／または疎な構造を考慮に入れることができる。実際、階層的細分化は、規則的な格子状の構造を定義せず、すなわち、その葉セルがすべて同じレベル、かつ／あるいは、すべて空ではなく、係数の集合は、所定の空間内の物理的属性の完全な連続値を定義しない。さらに、本方法は、空間的相関関係が高く、前記相関関係は、圧縮されるデータが物理的属性の値であるという事実に起因する。言い換えれば、本方法は、連続性がある場合の相関関係を考慮しながら、不連続性を処理する。このように、本方法は比較的高い圧縮効率を達成する。要約すると、本方法は、ウェーブレット圧縮パラダイムを、不規則な、および／または、疎な場合に、効率的に適用することができる。
【００３２】
さらに、図１の方法の例と比較して、ウェーブレット変換を決定できる特定の方法の直接的な適用（例えば、従来技術の２Ｄ画像の場合）は非効率的であることに留意されたい。例えば、空の空間（物理的属性がない空間）にゼロ値を関連付けることは、不連続が作成されるため、本方法の例より効率が悪くなる。また、ウェーブレット変換の前記決定（Ｓ２０）前の物理的属性の多項式補間は、実行が比較的長くかかる。その代わりに、本方法の例は、圧縮率を下げる不連続性を導入せず、よって比較的高速に実行する。
【００３３】
例では、本方法は、各離散位置または要素が物理的属性の１つの値に関連付けられる点群または３Ｄメッシュの形式で元のデータを（例えば、ＲＧＢ深度カメラ、および／または、構造物移動解析装置、および／または、他の任意の検出装置などの１つまたは複数の物理センサを用いた信号取得を介して）提供することを含み、本方法は、そのような未処理データを処理する。すなわち（例えば、ゼロ、および／または、多項式補間値によって）完成させることなく処理する。言い換えれば、本方法によって圧縮された信号に含まれる係数は、未処理の取得データのすべての値である（例えば、逆に、未処理の取得データのすべてあるいは大部分（例えば少なくとも７５％）の値がＳ１０で提供され圧縮される信号の係数となる。
【００３４】
さらに、圧縮が実行される方法は、高速な復元（ウェーブレット変換データ圧縮の分野それ自体で知られているように、圧縮方法から直接的に生じるような復元方法）を可能にする。以下において、「方法」という表現は、復元方法を指す場合がある。
【００３５】
本方法は、コンピュータにより実施される。すなわち、本方法のステップ（あるいは略全てのステップ）が少なくとも１つのコンピュータ、または類似の任意のシステムによって実行される。よって本方法のステップは、コンピュータにより、完全に自動的に、あるいは半自動的に実行される可能性がある。例えば、本方法の少なくともいくつかのステップは、ユーザとコンピュータの対話を通じて始動されてもよい。求められるユーザとコンピュータの対話レベルは、想定される自動性のレベルに応じたものであって、ユーザの要望を実装する必要性との間でバランスをとるものとしてもよい。例えば、このレベルは、ユーザが設定し、かつ／あるいは、予め定義されていてもよい。例えば、決定が行われる信号またはデータは、ユーザによって提供されてもよく（例えば、メモリから取得、および／または、設計／構築される）、また、本方法は、次いで、（例えば、ユーザが特定のソフトウェア機能、例えば「圧縮コマンド」を開始した後に）信号を圧縮するために完全に自動的に実行されてもよい。
【００３６】
本方法のコンピュータによる実施の典型的な例は、この目的に適したシステムを用いて本方法を実行することである。当該システムは、本方法を実行するための命令を含むコンピュータプログラムを記録したメモリ（および、例えばグラフィカル・ユーザ・インターフェース、すなわちＧＵＩに）に接続されたプロセッサを備えていてもよい。メモリは、データベースを記憶していてもよい。メモリは、そのような記憶に適した任意のハードウェアであり、場合により、物理的に区別可能ないくつかの部分（例えば、プログラム用に１つ、場合によりデータベース用に１つ）を含む。
【００３７】
図２は、本システムの一例を示すものであって、当該システムは、クライアントコンピュータシステム、例えばユーザのワークステーションである。
【００３８】
本例のクライアントコンピュータは、内部通信バス１０００に接続された中央演算処理装置（ＣＰＵ）１０１０、および同じくバスに接続されたランダムアクセスメモリ（ＲＡＭ）１０７０とを備える。クライアントコンピュータは、さらに、バスに接続されたビデオランダムアクセスメモリ１１００と関連付けられたグラフィックス処理装置（ＧＰＵ）１１１０を備える。ビデオＲＡＭ１１００は、当該技術分野において、フレームバッファとしても知られる。大容量記憶装置コントローラ１０２０は、ハードドライブ１０３０などの大容量記憶装置へのアクセスを管理する。コンピュータプログラムの命令及びデータを具体的に実現するのに適した大容量メモリ装置は、例として、ＥＰＲＯＭ、ＥＥＰＲＯＭ及びフラッシュメモリ装置のような半導体メモリ装置、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスク、およびＣＤ−ＲＯＭディスク１０４０を含む、全ての形式の不揮発性メモリを含む。前述のいずれも、特別に設計されたＡＳＩＣ（特定用途向け集積回路）によって補完されてもよいし、組み入れられてもよい。ネットワークアダプタ１０５０は、ネットワーク１０６０へのアクセスを管理する。クライアントコンピュータはまた、カーソル制御装置、キーボードなどの触覚装置１０９０を含んでいてもよい。カーソル制御装置は、ユーザがディスプレイ１０８０上の任意の所望の位置にカーソルを選択的に位置させることを可能にするために、クライアントコンピュータ内で使用される。さらに、カーソル制御デバイスは、ユーザが様々なコマンドを選択し、制御信号を入力することを可能にする。カーソル制御装置は、システムに制御信号を入力するための多数の信号生成装置を含む。典型的には、カーソル制御装置はマウスであってもよく、マウスのボタンは信号を生成するために使用される。あるいは、または追加的に、クライアントコンピュータシステムは、感知パッドおよび／または感知スクリーンを備えてもよい。
【００３９】
コンピュータプログラムは、コンピュータによって実行可能な命令を含んでいてもよく、命令は、上記システムに方法を実行させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体に記録可能であってもよい。プログラムは、例えば、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせで実装されてもよい。プログラムは、例えばプログラマブルプロセッサによる実行のための機械読み取り可能な記憶装置に具体的に実現された製品のような装置として実装されてもよい。方法ステップは、プログラム可能なプロセッサが命令のプログラムを実行し、入力データを操作して出力を生成することによって方法の機能を実行することによって実行されてもよい。したがって、プロセッサは、データ記憶システム、少なくとも１つの入力デバイス、および少なくとも１つの出力デバイスからデータおよび命令を受信し、また、それらにデータおよび命令を送信するようにプログラム可能であってもよく、またそのように接続されていてもよい。アプリケーションプログラムは、高水準の手続き型またはオブジェクト指向のプログラミング言語で、または必要に応じてアセンブリ言語または機械語で実装されていてもよい。いずれの場合も、言語はコンパイラ型言語またはインタープリタ型言語であってもよい。プログラムは、フルインストールプログラムまたは更新プログラムであってもよい。いずれの場合も、プログラムをシステムに適用すると、本方法を実行するための指示が得られる。
【００４０】
本方法は、一般に、モデル化オブジェクトを操作し、その物理的属性信号を圧縮してもよい。モデル化オブジェクトは、例えばデータベースに格納されたデータによって定義される任意のオブジェクトである。さらには、「モデル化オブジェクト」という表現は、データそのものも指す。システムの種類に応じて、異なる種類のデータによってモデル化オブジェクトが定義されてもよい。実際、システムは、ＣＡＤシステム、ＣＡＥシステム、ＣＡＭシステム、ＰＤＭシステム、および／またはＰＬＭシステムのうちの任意の組み合わせであってもよい。それら異なるシステムにおいて、モデル化オブジェクトは、対応するデータによって定義される。したがって、ＣＡＤオブジェクト、ＰＬＭオブジェクト、ＰＤＭオブジェクト、ＣＡＥオブジェクト、ＣＡＭオブジェクト、ＣＡＤデータ、ＰＬＭデータ、ＰＤＭデータ、ＣＡＭデータ、ＣＡＥデータについて言及することがある。しかしながら、モデル化オブジェクトは、これらのシステムの任意の組み合わせに対応するデータによって定義されてもよいため、これらのシステムは、互いに排他的なものではない。したがって、システムは、ＣＡＤ兼ＰＬＭシステムであってもよい。
【００４１】
ここで、本方法により処理されるデータについて述べる。本方法に入力されるデータは、信号の提供（Ｓ１０）を可能にする任意のデータである。本方法は、以下に説明するアプリケーションのいずれか１つまたは任意の組み合わせで実施することができ、かつ／あるいは、所定の空間および／または物理的属性は、以下に説明するもののいずれか１つまたは任意の組み合わせであってもよく、かつ／あるいは、物理的属性は、現実の物体の１つであってもよく、その場合、現実の物体は、例えば、以下に説明するもののいずれか１つまたは任意の組み合わせであってもよい。
【００４２】
本方法は、以下にわたってＳで表される所定の空間内の、同一の物理的属性の値を表す元のデータを圧縮するためのものである。元のデータは、任意のフォーマットで本方法に入力することができ、既にＳ１０で提供された信号のフォーマットである可能性がある（これは、Ｓ１０で提供された信号が元のデータであることを意味する）。次いで、本方法は、Ｓ１０において、任意の方法で、圧縮される信号の注目フォーマット、すなわちマッピングを含むフォーマットを提供してもよい。当該信号（Ｓ１０）は元のデータを表す。信号は、あらかじめ提供された未処理データから任意の方法で作成するか、あるいはそのまま取得することができる。本方法は、Ｓ１０で提供された信号のみを処理してもよい。
【００４３】
物理的属性は、Ｓで生じる物理的現象の挙動に関する情報を伝達する任意の関数である。したがって、物理的属性は、物理的現象を表す任意の空間連続関数（Ｓに対して）であってもよい。関数は少なくともＳのロケーションで値を取り、各値は当該ロケーションにおける物理的現象を表す。関数は、本方法では考慮されていない他のロケーションで値を取ってもよく、したがって単に破棄してもよい。
【００４４】
物理的属性は、色または測光データ、物質量データ、形状データ、速度データ、電磁気データ、温度または熱データ、質量データ、力データ、放射能データ、材料品質データ、エネルギーデータ、音響または無線データ、化学データ、および／または生物学的データのうちのいずれか１つまたは組み合わせに関連していてもよい。
【００４５】
Ｓは、物理属性の値が表されるロケーションを含む任意の領域である。「空間」という用語は、例えば「ベクトル空間」のように、数学的定義によって広く定義される。「ロケーション」という用語は、Ｓ内の任意の位置を指定し、例えば、ジオメトリ的位置を含むが、これに限定されない。物理現象が時間に依存し、空間Ｓが時間次元を含まない場合、例えば、ジオメトリ的位置に限定される場合、値は、同じ時間または同じ時間枠（例えば、１０秒未満）に対応してもよく、これは、その値がその同じ時間または時間枠で物理的属性を表し、それにより物理的現象の静的な画像／キャプションを表してもよいことを意味する。理解されるように、Ｓは、２次元であってもよく（例えば、信号が２Ｄ画像である場合）、また、３次元であってもよい（例えば、３Ｄ表現の場合）。しかし、Ｓは、時間次元または他の次元も含んでいてもよい。
【００４６】
物理的属性は、例えば現実の物体を構成する物質によって占有されるＳの位置とは異なる、現実の物体の物理的属性であってもよい。現実の物体は、例えば固体、流体、および／または、粒子の集合（例えば気体）によって表現可能な任意の物体のように、形状を有する任意の物理的実体からなっていてもよい。「形状」という用語は、現実世界における現実の物体の少なくとも一部の任意の物理的構造／ジオメトリを指定する。このような場合、階層的区画は、現実の物体の形状の階層的区画に対応していてもよい。階層的区画表現は、例えば、現実の物体の存在を示す情報でマークされた葉セルを有していてもよい。
【００４７】
したがって、現実の物体の物理的属性は、例えば物体の単なる形状ではなく、その１つまたは複数の物理的特性または特徴の任意の集合を表す情報であってもよい。物理的属性は、色（例えばこれは、各値が、関連付けられた位置での現実の物体の色を表すことを意味する）、法線ベクトル（例えばこれは、各値が、関連付けられた位置での現実の物体の面法線を表すことを意味する）、テクスチャリング（例えば、信号の値は、例えば、公知のＡＢＦ＋＋アルゴリズムのような、ＵＢテクスチャリングとも呼ばれる、テクスチャアトラス作成アルゴリズムによって生成される、テクスチャ座標）、および／または、速度（例えば、物体が流体からなる場合、例えば流体シミュレーションにおける粒子速度）のうちのいずれか１つまたは組み合わせであってもよい。
【００４８】
例では、本方法は、例えば産業計測処理または検査処理などの、ＣＡＤの文脈で適用されてもよい。現実の物体は、機械部品の集合体における機械部品などのように、製造製品であってもよい。本方法は、医療画像処理の文脈で適用されてもよい。このような場合、現実の物体は、器官または他の任意の生物学的システム、例えば任意の生物学的組織（例えば、任意の医療データ取得システムで取得される）などの、生物学的システムであってもよい。本方法は、地形または都市環境の変更に適用してもよい。このような場合、現実の物体は、都市の一部、例えば、１つまたは複数の建物またはその部分を含むシーンであってもよい。本方法は、３Ｄによる再構築または仮想化の文脈で適用されてもよい。そのような場合、現実の物体は、現実生活の物体を３Ｄで再構築したものであってもよい。本方法は、流体シミュレーションの文脈（例えばＳＰＨ）で適用されてもよい。そのような場合、現実の物体は流体であってもよく、位置の集合は、それぞれ、その流体粒子を表してもよい（例えば、この場合、本方法は、流体の挙動のシーケンスをシミュレートするいくつかのフレームに適用してもよい）。
【００４９】
現実の物体は、ＣＡＤソフトウェア・ソリューションやＣＡＤシステム等を用いた仮想的設計の完了後に実世界において製造される製品、すなわち（例えば機械）部品や、部品の集合（あるいは同様に部品の集合。なぜなら部品の集合は本方法の観点では一つの部品としてみることができ、また、本方法は集合体における各部品に独立して適用することができるからである）、より一般的には任意の剛体の集合体（例えば移動機構）などの製品のジオメトリを表現してもよい。ＣＡＤソフトウェア・ソリューションは、航空宇宙、建築、建設、消費財、ハイテク機器、産業機器、輸送、海洋、および／または海洋石油／ガス生産、または交通を含む、限定されることのない様々な産業分野における製品の設計を可能にする。本方法により設計される３Ｄモデル化オブジェクトは、このように、地上車両の部品（例えば、自動車および軽トラック機器、レーシングカー、オートバイ、トラックおよびモーター機器、トラック、バス、電車を含む）、航空車両の部品（例えば、航空機体機器、航空宇宙機器、推進機器、防衛製品、航空路線機器、宇宙機器を含む）、海軍車両の部品（例えば、海軍用機器、商業用船舶、オフショア機器、ヨットおよび作業船、船舶用機器を含む）、一般的な機械部品（例えば、工業用製造機械、大型移動機械または機器、設置機器、産業機器製品、加工金属製品、タイヤ製造製品を含む）、電気機械部品または電子部品（例えば、家電、セキュリティおよび／または制御および／または計装製品、コンピューティングおよび通信機器、半導体、医療装置および設備を含む）、消費者製品（例えば、家具、家庭用および庭用製品、レジャー用品、ファッション用品、耐久消費財小売用品、織物類小売用品を含む）、包装（例えば、食品および飲料およびたばこ、美容およびパーソナルケア、家庭用製品包装を含む）などのように、任意の機械部品であり得る工業製品を表してもよい。
【００５０】
空間Ｓは、現実の物体が定義される任意の所定の空間であってもよい。空間Ｓは、現実の物体がロケーションによって表されるシーン、例えば２Ｄまたは３Ｄシーンであってもよく、例えば、現実の物体が３Ｄ再構築処理で使用されるときに、現実の物体が設計され、ロードされ、また、さらに再構築されたシーンであってもよい。あるいは、空間Ｓは、そのようなシーン内の現実の物体を囲むボックスであってもよく、例えば、物体を含む、例えば最も小さい正方形あるいは立方体のジオメトリであってもよい。
【００５１】
本方法は、Ｓの値の集合が提供され、比較的不規則かつ／あるいは疎であり（これは、少なくとも１つの空の葉セル、すなわち、係数上にマッピングされないか、またはヌルにマッピングされない葉セルを有する階層的区画によって保証されてもよく、例えば、全ての空のセルは、Ｓのサイズの少なくとも１０％または５０％に対応する）、かつ／または、物理的属性が非ゼロの空間的相関関係（例えば、値の空間的相関関係が厳密に０より大きい、例えば比較的大きな値）を有する、多数の状況において、物理的属性が何であるかに応じて適用され得る。そのような文脈において、本方法は特に高い圧縮率を達成する。例えば、本方法は、粒子ベースのアプリケーション（例えば、点群の描画や、平滑化粒子流体力学などのＳＰＨによる流体シミュレーション、または３Ｄモデル圧縮）に適用することができる。
【００５２】
例において、元のデータの少なくとも一部は、１つまたは複数の３Ｄスキャナ（すなわち、３Ｄデータ取得装置）で取得されたデータによって提供されてもよい。あるいは、または追加的に、元のデータの少なくとも一部は、ＲＧＢカメラ、および／またはＲＧＢＤカメラなどの深度センサを含む３Ｄ再構築検出装置によって提供されてもよい。あるいは、または追加的に、元のデータの少なくとも一部は、ユーザにより設計／定義されてもよい。元のデータの値は、物理現象のキャプション、測定値、シミュレーション、および／または設計に由来してもよい。元のデータ、すなわちＳ１０で提供された信号は、Ｓに対してある程度の空間的相関関係を示す。
【００５３】
すでに説明したように、元のデータは、任意のフォーマットでよい。特に、元のデータは、物理的属性のそれぞれの値が与えられたＳのロケーションの集合を含んでいてもよい。ロケーションの集合は、例えば２Ｄまたは３Ｄ点群または２Ｄまたは３Ｄメッシュのような位置の集合として提供されてもよい。位置は、固体、流体、気体または任意の有形の物体などの現実の物体の材料の形状または存在を表してもよい。あるいは、または追加的に、元のデータは、物理的属性が現実の物体の材料を表さない値をとる位置を含んでいてもよい。しかし、元のデータはＳ１０の信号に相当してもよい。いずれの場合も、元のデータはＳにおいて値をとる物理的属性を表す。
【００５４】
Ｓ１０をそのまま提供するか、または他の元のデータから構築する場合、本方法によって圧縮された信号は特定の構造をとる。具体的には、Ｓの階層的区画の要素からそれぞれの係数へのマッピングを含む。マッピングは任意の方法で決定できる。マッピングは、元のデータに基づいて決定してもよい。Ｓの階層的区画は、元のデータ内に存在してもよいし、図１の方法とは独立して、形状情報を圧縮する方法の間に構築してもよい。いずれの場合も、Ｓの階層的区画の要素、すなわちセルは、係数を示す（または「関連付けられる」、「関連する」、「リンクする」）係数である。係数はそれぞれ、それが指し示されるセルにおける物理的属性の値を、元のデータに沿って表す。
【００５５】
元のデータが、２Ｄまたは３Ｄ点群、あるいは２Ｄまたは３ＤメッシュのようなＳのロケーションの集合として提供される場合、階層的区画は、例えば、ＢＳＰ、Ｋ−ｄツリー、八分木（例えば３Ｄ形状の場合）、または四分木（例えば２Ｄ形状の場合）のような従来技術に関して言及した空間ツリー分割を介して、任意の方法で構築してもよい。このような階層的細分化は、例えば、先行技術に関して言及したような圧縮された方法で現実の物体の形状を表すために、独立して、かつ／あるいは、図１の方法の前に実行することができる。ロケーションの集合に対して与えられた物理的属性値は、それぞれのロケーションを表す階層的区画のそれぞれの葉セルに割り当てられてもよい。割り当ては、任意の方法で、例えば、葉セルごとにいくつかの元のロケーションがある場合には、平均をとることによって、実行することができる。ここでは、階層的区画が、空の葉セル、すなわち物理的属性値に必ずしも関連付けられていない葉セルを含むことができることが理解される。いずれの場合も、Ｓ１０で提供された信号におけるマッピングは、データの位置特定を行うという観点から、元の属性の位置ごとの値（例えば点群）の元の未処理データの圧縮を構成する。図１の方法は、Ｓ１０で提供された信号をさらに圧縮することによって、それ以上のものとなる。
【００５６】
所与の空間ｓの階層的区画は、定義上、ｓをセル（すなわちｓの部分）へと階層的（すなわち反復的）に細分化することを表すデータである。それ自体公知の定義を以下に示す。しかし、ここで、現実の物体の形状を表す所与の空間ｓの階層的区画の例には、階層的区画は、ＢＳＰ、Ｋ−ｄツリー、八分木（例えば３Ｄ形状の場合）、または四分木（例えば２Ｄ形状の場合）のような従来技術に関して言及した空間ツリー分割が含まれることに留意されたい。したがって、以下に示される定義は、そのような特定の種類の階層的区画（従来技術から公知である）に適用され、それにより、本方法によって実施され得る。
【００５７】
「セル」は、空間ｓの任意の部分である。したがって、空間ｓはセルそのものであってもよい。セルは、ｓの規則的、かつ／あるいは、凸の部分に限定されてもよい。例において、すべてのセルがｓと同じ形を示してもよい。例えば、ｓが立方体（あるいは正方形）である場合、セルはそれに対応して立方体（あるいは正方形）に限定されてもよい。例において、繰り返しの同じレベルにおけるセルは、同じジオメトリ（形状と寸法）を示し、位置だけが異なっていてもよい。例において、繰り返しの全てのレベルにおけるセルは、同じ形状を示し、寸法と位置だけが異なっていてもよい。寸法は、場合により空間ｓの寸法とともに、繰り返しのレベルによって完全に決定される。
【００５８】
「反復的区画」を表すデータとは、例えば、ツリー構造（最大ツリー深さｎ）の形で空間ｓの階層的分割を表すデータ構造を意味し、例えば、一意のルートノード（ルートノードは、例えばｓを表し、したがって、ｓは区画の開始セルである）を有する１つのツリー、または、それぞれがルートノードを有する幾つかのツリーの集合である。「反復的細分化」という表現は、階層的分割（これはＳ２０の前に、図１の方法で実行されてもよいが、必ずしも実行されなくてもよい）をもたらす操作と、結果そのもの、すなわち階層的分割そのものの、両方を指す。反復的細分化のセル（「親」セルと呼ばれる）は、それぞれ、いくつかのセル（「子」セルと呼ばれる）に細分化されてもよい。所与の（同じ）親セルの子セルは、空間の位置の集合に適用される集合分割についての公知の数学的定義に従って、親セルの空間分割を形成する。
【００５９】
空間ｓの階層的細分化は、ｓの最大深さｎの階層的なｋ個の区画とすることができる。所与の空間ｓの最大深さｎの階層的なｋ個の区画は、「深さｎの空間ｓのｋ分割」とも呼ばれ、以下では一般にｋ＿ｔｒｅｅｎ（ｓ）で表され、定義上、ｓのセル（すなわちｓの部分）への反復的な細分化を表すデータであり、反復における経路の長さは、ｎより短いか、または等しい（すなわち、ツリーデータ構造の「深さ」の定義に対応して、繰り返しの１回における細分化演算は最大ｎ回）。所与のセルの各区画からは、正確にｋ個の子セル（すなわち、所与のセルをそれらの共通の親セルとして有するセル）が得られ、ここで、ｋは、厳密に正の整数であり、これは予め定められていてもよい。ｋは、異なる区画にわたって一定であってもよい。よく知られているように、八分木（あるいは四分木）の場合、ｋは８（あるいは４）に等しく、与えられたセルの子セルは「オクタント」（あるいは「クアドラント」）と呼ばれる。
【００６０】
反復的細分化は、所定の方法、すなわち、所定の細分化スキームに従って実行されてもよい。一例では、反復的細分化は、繰り返しの各回で同じ所定の細分化動作を実行することができる。このようにして、各セルの細分化において、子セルは、ｋ＿ｔｒｅｅｎ（ｓ）を形成するデータ構造内のどこに論理的に配置されるかを決定するだけでジオメトリ的に配置することができる。したがって、ｋ＿ｔｒｅｅｎ（ｓ）は、単に空間ｓへのリンク（例えば、リレーショナルデータベースにおけるポインタまたは関係）と、全体の反復的区画を論理的に表す（例えば、最小限の）ツリーデータ構造とを含んでいてもよく、ここで、各ノードはリンクされた空間（すなわち空間ｓ）のセルを表す。細分化が所定の方法に従って実行され、それによってｋ＿ｔｒｅｅｎ（ｓ）は対応する既知のデータ型（すなわち、前記所定の方法を示す）を有し、ツリー構造の各ノードは、空間ｓ内に適切に配置されたセルを、そのように、それに関連付けられた特定のジオメトリデータが存在しないように表す。これは、特に八分木または四分木において、広く知られている。
【００６１】
例えば、八分木（あるいは四分木）において、所定の方向（ｘ，ｙ，ｚ）（あるいは（ｘ，ｙ））に関して、細分化された各セルは立方体（あるいは正方形）であり、細分化されたセルの長さの半分の長さ（すなわち、各寸法が半分に分けられる）を有する８個（あるいは４個）の子セルが得られる。したがって、各セルのロケーションは、セルを表すｋ＿ｔｒｅｅｎ（ｓ）内の各データ（例えばノード）に対して、その親セルに対する相対的な位置を付与し、ルート（例えばノード）を空間ｓにリンクさせることによって完全に決定されてもよい。相対的な位置は、ツリーのデータ編成によって最小限の方法で決定されてもよい。相対位置は、（ｘ，ｙ，ｚ）（あるいは（ｘ，ｙ））に関して、２つの取り得る値のうちの１つであってもよい。これらの取り得る値は、例えば、ｘに関して「左」および「右」、ｙに関して「前」および「後」、そして八分木の場合には、ｚに関して「上」および「下」で表される。バイナリパラメータを考慮することができるので、これは表記規則に過ぎない。
【数１】
2018101404.tif 000003
のタイプの表記、例えば、｛０，１｝３は、以下のように得られる。そのようなｋ＿ｔｒｅｅｎ（ｓ）内のセルの位置およびジオメトリは、ｓの知識およびｋ＿ｔｒｅｅｎ（ｓ）内のセルを表すデータ（例えば、ノード）の論理的位置によって完全に決定される。
【００６２】
したがって、ｋ＿ｔｒｅｅｎ（ｓ）は、空間ｓを指すツリーデータ構造であり、ｓのセルを表すノードを有し、ルートノードは空間ｓ自体を表してもよい。ｋ＿ｔｒｅｅｎ（ｓ）は、それぞれ開始ノードから終了ノードへの有向の弧を有している。弧は、終了ノードが、開始ノードによって表されるセルのサブセルを表すという事実を捉えている。同じ開始ノードを有する弧は、その終了ノードによって表される各セルの相対位置が予め決定されるように編成されていてもよい。そのような場合、ｋ＿ｔｒｅｅｎ（ｓ）の最大深さは、ｋ＿ｔｒｅｅｎ（ｓ）の最大の枝の弧の数であり、ｎに等しい。ｎは反復的細分化に対して予め決定されていてもよい。あるいは、特に、反復的細分化が、現実の物体の形状を３Ｄ位置または３Ｄメッシュタイルまたはメッシュの頂点のようなジオメトリの有限集合として表すデータ構造に対して実行された場合、ｎは、例えば、反復的細分化方式によって実装される基準、例えば、精度または解像度によって決定されてもよい。例えば、各セルがせいぜい１つのジオメトリ（例えば、１つの位置または頂点）を含むように、ｎを最小の整数として決定することができる。これは単なる例である。
【００６３】
ここで、形状および／または物理的属性値を表すｋ＿ｔｒｅｅｎ（ｓ）において、各セルは空であるか、または空ではなく、これは、ｋ＿ｔｒｅｅｎ（ｓ）によって表される反復的細分化の各セルが、形状および／または物理的属性を含まないか（すなわち空のセル）、または、形状および／または物理的属性の少なくとも一部を含む（空でないセル）ことを意味する。したがって、空のセルは、現実の物体の材料を含まないセルであり、空でないセルは、現実の物体の材料を含むセルである。したがって、ｋ＿ｔｒｅｅｎ（ｓ）は、そのような情報を捉えるデータを含んでいてもよく、このデータは、セル（例えば、ノードによって表される）が空のセルを表すか、空でないセルを表すかを示す任意の種類のデータ（例えば、セルから値／マーカ（例えばバイナリ値）へのポインタを含む）であり得る。ｎとは異なる深さの空でないセルは、それぞれ、ｋ個のセルに細分化されてもよい。言い換えれば、材料および／または物理的属性情報がセルに存在し、細分化に許容される最大深さに達していない限り、セルは、セルによって搬送される情報が精密になるように細分化される。セルが空であることと空でないこととを示す情報は、任意の方法で提供でき、現実の物体の形状のジオメトリは、空でないセルの位置によって表すことができ、これは先に述べた論理的位置決めによって完全に決定される。
【００６４】
従来技術で知られているように、ｋ＿ｔｒｅｅｎ（ｓ）は、正確な位置に基づくジオメトリ的方法ではなく論理的方法で、（空間ｓのｎ個の区画に対応する解像度で）材料を含む空間ｓ内のセルを指定することによって、現実の物体の形状の圧縮したバージョンを構成する。反復的細分化が正確なジオメトリに基づいて実行された場合、そのような正確なジオメトリは破棄してもよい。このような場合は、正確なジオメトリの形で現実の物体の形状を表すデータの不可逆圧縮に対応し得る。図１の方法は、このような第１の不可逆圧縮に次いで行われてもよい。しかし、代わりに正確なジオメトリを保持してもよい。実際、図１の方法は、物理的属性を表す信号に適用され、現実の物体自体の形状を表すデータには適用されず、したがって他の処理を受けることができる。
【００６５】
反復的細分化は、空のセルが、それぞれ、必ず葉セルであるように構成することができる。これは、空のセルを細分化することができないことを意味する。言い換えれば、繰り返し中に材料を有していないセルが見つかった場合、処理はそれ以上それを細分化しない。これは、従来技術で知られているように、圧縮率を増加させる。
【００６６】
図１の方法によって圧縮された信号は、実際の物体の形状のｋ＿ｔｒｅｅｎ（ｓ）表現に関係し得るが、ｋ＿ｔｒｅｅｎ（ｓ）自体ではない。具体的には、信号は、最初に、空でない葉セル上に係数を分布させることにより、上述した現実の物体の物理的属性を表す。係数は、空でない葉セルにおける物理的属性が取る値を表す任意のデータ、例えば、ダブルおよび／または浮動小数点、および／または、整数、または、そのベクトル／集合／リストである。ヌルはまた、Ｋ＿ｔｒｅｅＮ（Ｓ）の空でない葉セル上に分配され、係数として認められ、例えば、ゼロ値を表してもよい。ゼロ値は、全く係数なしで表すこともでき、この場合、物理的属性は、情報がないか、少なくとも逆の情報（例えば、０とは異なる係数）が提供されていない、すべての空でない葉セルにおいて、ゼロと等しいと考えられる。あるいは、ゼロ値は、明確に存在する情報のみによって表されることが要求される可能性がある。これらは、保持されている規則に依存する実装の詳細である。
【００６７】
空の葉のセルまたは葉でないセルに関連付けられた係数がもしあれば、それらは考慮されていなくてもよく、したがってこの方法によって廃棄されてもよい（例えば、削除され、かつ／あるいは、少なくとも処理されないか、演算に関与しない）。係数がスカラー（すなわち、一次元）ではなくベクトル／集合／リスト（すなわち多次元）である場合、図１の方法は、ベクトル／集合／リストを全体とみなして１回適用されるか、または数回、その回ごとに、次元が縮小された集合に対して、例えば座標ごとに（例えば、各座標を別個の物理的属性とみなして）ベクトル／集合／リストを投影することによって、適用される。
【００６８】
ここで、決定すること（Ｓ２０）について述べる。
【００６９】
所与の初期信号の離散ウェーブレット変換を決定することは、定義により、また信号処理の分野においてそれ自体公知であるように、一般に、ウェーブレット畳み込みフィルタの所定の基底が関与することを意味する。所定の基底は、ウェーブレット関数の所定の集合に過ぎない（各関数はウェーブレット特性に従う）。フィルタはそれぞれ所定の初期信号に渡され（すなわち反復的に適用され）てもよく、それぞれサブバンドを生じる。それによって得られたサブバンドは、基底に関して、所与の初期信号の座標に対応し、共に、信号を表す圧縮した方法を形成する（圧縮は後の符号化によって達成される）。「ローパスサブバンド」と呼ばれるサブバンドの１つは、他のサブバンドと比較して全体的な圧縮に対する関与が少ない。そのため、処理は、このローパスサブバンドなど（同一の基底を有する）に対して繰り返すことができる。したがって、所定の初期信号の離散ウェーブレット変換を決定することは、図１の方法が、所定の基底のウェーブレット畳み込みフィルタを用いて、所定の初期信号から開始して、各繰り返しにおいてローパスサブバンドを含む各サブバンドの決定を（反復を介して）繰り返す（同じ１つの繰り返しにより幾つかのサブバンドが生じる。１つのフィルタに対して１つのサブバンドが生じる）ことを意味する。離散ウェーブレット変換では、それぞれのウェーブレット畳み込みフィルタをサブバンドに適用することは、それぞれのウェーブレット畳み込みフィルタに「サブバンドを通過させる」と呼ばれる。したがって、フィルタは、フィルタを通過するサブバンドの全ての初期係数上を「スライド」する。これはすべてそれ自体公知である。
【００７０】
基本的には、本方法は、各ウェーブレットフィルタを、繰り返しの最初の回で信号に提供された係数に反復的に渡し、次に、前回の繰り返しで得られたローパスサブバンドのウェーブレット係数に反復的に渡す。当該渡すことは、階層的細分化の構造に従う。繰り返しの各回において、各ウェーブレット係数は、最初の階層的区画から始まり、「現在の」階層的区画の構造に従って、同じ「次の」階層的区画に割り当てられる。したがって、当該渡すことは、繰り返しの各回だけでなく、変換の字反復処理全体を通じて、階層的細分化の構造に従う。これにより、空間的相関関係が確実に保存され、良好な結果が得られる。また、これは、圧縮および／または復元時間のスピードに関与する。
【００７１】
Ｓ１０で提供された入力信号の特定のフォーマットが与えられるとして、Ｓ２０で離散ウェーブレット変換が決定される方法について、階層的細分として八分木の例を用いて詳細に説明する。本方法は、Ｓ１０において、ｃＮ，０００で表される信号を提供することを含む。ｃＮ，０００は、本例では八分木データ構造について定義される。しかしながら、この例は、他の種類の階層的細分化にも適用することができる。
【００７２】
ｃＮ，０００は、八分木が整数Ｎに等しい最大深さを有する空間Ｓを細分化する際、ｏｃｔｒｅｅＮ（Ｓ）で表される八分木の葉セルからのｃＮ，０００（・）で表されるマッピング（を表すデータ）を含む。先に説明したように、ｏｃｔｒｅｅＮ（Ｓ）のすべての葉セルが画像にこのようにマッピングされるわけではない。例えば、Ｎと異なる深さの葉セルは、必ず空であってもよい。深さＮのいくつかの葉セルが空であってもよい。また、ｏｃｔｒｅｅＮ（Ｓ）は、葉セルがｏｃｔｒｅｅＮ（Ｓ）の葉セルとは異なる、より大きな八分木に属してもよい。これは、１つの観点に過ぎず、本方法は、葉レベルで物理的属性が定義されている八分木を考慮する。
【００７３】
それぞれの係数にマッピングされるｏｃｔｒｅｅＮ（Ｓ）の葉セルは、上記で提供され、以下に保持される例に沿って、八分木におけるそれらの経路を用いて次のように表すことができる：ａＮ１ａＮ２・・・ａＮＮ∈Ｃ（ＬＮ（ｏｃｔｒｅｅＮ（Ｓ））。ここで、各ａＮｎ（それぞれｎ∈｛１，・・・，Ｎ｝）は、ルートノードから始まって、前のノードから八分木で取られた分岐方向を示す｝∈｛０，１｝３の値を取る３つ組である。ＬＮは、ｏｃｔｒｅｅＮ（Ｓ）の深さＮのすべての葉セルを表す記号である。Ｃは、信号内の係数にマッピングされたすべてのセルの階層的細分化を表す記号である。初期信号中のそのようなセルの数は、Ｃ（ｏｃｔｒｅｅＮ（Ｓ））の基数と呼ばれ、｜ｃ（Ｎ，０００）（・）｜と表すことができる。係数がマッピングされる唯一のセルは深さＮの葉セルのみである場合、｜ｃＮ，０００（・）｜＝｜Ｃ（ｏｃｔｒｅｅＮ（Ｓ））｜＝Ｃ（ＬＮ（ｏｃｔｒｅｅＮ（Ｓ））である。
【００７４】
以下では、考慮される信号は、｜ｃＮ，０００（・）｜＝｜Ｃ（ＬＮ（ｏｃｔｒｅｅＮ（Ｓ））｜を満たすマッピングｃＮ，０００（・）であり、これは深さＮの葉セルのみが信号にマッピングされることを意味する。したがってＣ（ＬＮ（ｏｃｔｒｅｅＮ（Ｓ）））は、そのようなａＮ１ａＮ２・・・ａＮＮすべての集合、すなわち、係数にマッピングされる階層的細分化のすべての葉セルである。また、ｏｃｔｒｅｅＮ（Ｓ）は、深さＮおよび／またはＮとは異なる深さの葉セルを含む、係数にマッピングされない葉セルを含んでいてもよい。そのような信号は、前述したように、属性値が与えられた位置の集合を圧縮して得られる八分木に基づいて構築することができる。
【００７５】
各係数にマッピングされた葉セルａＮ１ａＮ２・・・ａＮＮから見て、係数はｃＮ，０００（ａＮ１ａＮ２・・・ａＮＮ）で表される。このような係数は、各葉セルにおける物理的属性の値を表す。したがって、このマッピング全体が、物理的属性が空間Ｓ上でどのように作用するかを表す。
【００７６】
ここで、先に述べたように、図１の方法は、ウェーブレット畳み込みフィルタの任意の所定の基底で信号の離散ウェーブレット変換を決定すること（Ｓ２０）を含む。フィルタの数は、例では８個であり、したがって、ｆｌ（ｄ，ｓ）、ｌ∈｛０，１｝３で表され、これは離散ウェーブレット変換の各繰り返しで８個のサブバンドが生成されることを意味する。この例は、フィルタの数が異なっても基本的に使用できる。フィルタの索引付けがとる値の集合はｌ∈｛Ｌ，Ｈ｝３で表され、「Ｌ」はローパスを示し、「Ｈ」はハイパスを示す。指数は、八分木の例における３Ｄの場合の自然基底を指す（基底の索引付けは、四分木については、ｌ∈｛０，１｝２となる）。ｄはウェーブレット関数であり、ｓはスケーリング関数である。
【００７７】
既知のように、決定すること（Ｓ２０）は、サブバンド（この例では８つ）を反復的に決定することになる。反復（ｒｅｃｕｒｓｉｏｎ）（またはｉｔｅｒａｔｉｏｎ／ｒｅｐｅｔｉｔｉｏｎ）の各回は、Ｄで索引付けすることが可能であり、ここで保持されている表記例ではＤは減少する。以下で着目する例においては、使用される異なるオブジェクトの寸法設定のために、ＤはＮ−１から具体的には１つずつ減少し、これはいつでも停止することができるが、Ｄ∈Ｄ∈｛Ｎ−１，Ｎ−２，…，０｝となるように０までずっと進み、この整数の集合における、連続的に減少する整数値をとる。したがって繰り返しの所与の回Ｄで決定された各サブバンドはｃＤ，ｌで表され、ｌ∈｛０，１｝３または｛Ｌ、Ｈ｝３である。これらの８つのサブバンドは、ｃＤ，０００（または同等にｃＤ，ＬＬＬ）で表されるローパスサブバンドを含む。このような各サブバンドは、既知のように、各ウェーブレット畳み込みフィルタｆ１に、ｃＤ＋１，０００で表される、前回の繰り返し（繰り返しＤ＋１）のローパスサブバンドを渡すことによって決定される。繰り返しの開始時には、ローパスサブバンドはまだ存在しないため、初期信号、すなわちｃＮ，０００とみなされる。
【００７８】
上述のように、従来の離散ウェーブレット変換では、繰り返しの各回においてローパスサブバンドを一連のフィルタに、例えば独立して通過させるか、または同等に、一連のフィルタを、ローパスサブバンドに渡す（すなわち、フィルタは、ローパスサブバンドの係数が存在するロケーション上をスライドさせるか、またはシフトさせ、それ自体公知のフィルタ定義によって提供される演算における当該係数値を含む）。この場合、ローパスサブバンドは、（マッピングによって）その葉セルに係数を有する八分木のフォーマットを有する。このように、そのような八分木に所与のフィルタを渡すことは、係数が存在する（すなわち、係数がマッピングされた）ローパスサブバンドの葉セル領域に渡すことになり、そのような係数のすべてを当該所与のフィルタを通過させることを含むが、これに限定されない。
【００７９】
初期信号のフォーマットは、演算が、反復を通じて、すなわちＮ−１から０まで繰り返すことができるように維持される。実際、繰り返しの回Ｄで決定されたサブバンドｃＤ，ｌ、特にローパスサブバンドｃＤ，０００は、それぞれ、初期信号同様、八分木の葉セルから係数（ウェーブレットフィルタによって決定され、したがって、ウェーブレット係数と呼ばれる）へのマッピングｃＤ，ｌ（・）を含む。初期信号の八分木の深さがＮであった場合、繰り返しの回Ｄで考慮されるそのような八分木の深さはＤである。この八分木は、繰り返しの回Ｄで決定されたすべてのサブバンドについて同じである（ただし、その上に定義されたマッピングは異なる可能性がある）。異なるインスタンスが作成されるかもしれないが、八分木は構造的に同じであり、ｏｃｔｒｅｅＤ（Ｓ）（サブバンド索引ｌなし）で表すことができる。このように、そのような八分木の葉セルは、深さＤの経路として、そのような索引付けをしなくても表すことができる。すなわち、ａＤ１ａＤ２・・・ａＤＤ∈Ｃ（ＬＤ（ｏｃｔｒｅｅＤ（Ｓ）））であって、セルに対するそのような経路の各ａＤｎ，ｎ∈｛１，・・・，Ｄ｝は、｛０，１｝３において変化する。ｏｃｔｒｅｅＤ＋１（Ｓ）はｏｃｔｒｅｅＤ（Ｓ）の区画であり、これはｏｃｔｒｅｅＤ（Ｓ）の１つまたは複数セルを分割することに対応することを意味する。この例では、ｏｃｔｒｅｅＤ（Ｓ）はｏｃｔｒｅｅＤ＋１（Ｓ）のサブツリーでもある。同様に、ｏｃｔｒｅｅＤ＋１（Ｓ）はｏｃｔｒｅｅＤ（Ｓ）の区画であり、これはＳに対して実行される八分木の反復的区画構築処理における追加の細分化ステップに対応することを意味する。これはｏｃｔｒｅｅ０（Ｓ）がＳそれ自体であることを示唆する。図を参照して後で説明するように、図１の本方法は、このようにｏｃｔｒｅｅＮ（Ｓ）を巻き戻す。
【００８０】
基本的に、Ｃ（ＬＤ（ｏｃｔｒｅｅＤ（Ｓ））の各所与の葉セルａＤ１＊ａＤ２＊・・・ａＤＤ＊は、  ｃＤ，ｌ（ａＤ１＊ａＤ２＊・・・ａＤＤ＊）で表されるそれぞれの係数にマッピングされる。ｃＤ，ｌ（ａＤ１＊ａＤ２＊・・・ａＤＤ＊）は、前回の繰り返しＤ＋１のローパスサブバンドｃＤ＋１，０００にウェーブレット畳み込みフィルタｆ１を渡す間に、ｆｌを、ｃＤ＋１，０００の任意の係数ではなく、ａＤ１ａＤ２・・・ａＤＤを細分化するｏｃｔｒｅｅＤ＋１（Ｓ）の葉セルからマッピングされたｃＤ＋１，０００の係数に適用する。言い換えれば、ローパスサブバンドをフィルタに渡すとき、葉セルのブロック（すなわち、同じ親セルを有する葉セル）の係数は、親セルにマッピングされた係数を生成する（これは、次のローパスサブバンドに関連付けられた八分木の葉セルでもある）。このような葉セルはすべて、寸法が保持されているため（なぜなら、フィルタのコンパクトな台のサイズがこの例の八分木のディバイダと同じであるため）、この例に含まれていてもよい。従って、係数は、ｃＤ＋１，０００（ａＤ１＊ａＤ２＊・・・ａＤＤ＊ａＤ＋１Ｄ＋１）で表され、ａＤ１＊ａＤ２＊・・・ａＤＤ＊ａＤ＋１Ｄ＋１（ａＤ＋１Ｄ＋１は｛０，１｝３において変化する）はＣ（ＬＤ＋１（ｏｃｔｒｅｅＤ＋１（Ｓ））に属する。
【００８１】
ウェーブレット畳み込みフィルタｆ１は、コンパクトな台を有していてもよい。したがって、フィルタは、隣接するセルによってマッピングされた係数を入力とするように設計される。これにより、空間的相関関係が保存され、良好な結果が得られる。
【００８２】
コンパクトな台のサイズは、階層的細分化のディバイダの最小値以下であってもよい。階層的細分化のディバイダは、階層的細分化処理（例ば、本方法の前に実行される）の間に１つのセルの細分化で生じるセルの数である。それは、各親セルが階層的細分化によって有する子セルの数であってもよい。これはまた、変化する値、あるいは一定の値であってもよい。変化する値の場合、最小値が考慮される。一定値の場合、最小値は当該一定値に等しいと考えられる。八分木の場合、各セルは葉セルであるか８つの子を有するかのいずれかであるので、ディバイダは８（すなわち、２３）である。コンパクトな台のサイズが階層的細分化のディバイダの最小値以下であるため、相対的に非常に疎な階層的細分化の場合でも、空間的相関関係が保存できる。
【００８３】
階層的細分化のディバイダが一定値を有する場合、コンパクトな台のサイズは、階層的細分化のディバイダの一定値と等しくてもよい。前述の八分木の例では、コンパクトな台は｛０，１｝３であり、従ってサイズは８である。したがって、フィルタはそれぞれ、（離散ウェーブレット変換の今回の繰り返しのそれぞれにおける）階層的細分化の最大深さの葉セルに対して、「姉妹セルのブロックごと」に適用される。このような構成により、圧縮の効率が保証される。
【００８４】
今回の繰り返しの階層的細分化のセルにフィルタを渡すことは、階層的細分化によって定義された順序を尊重するような任意の方法で実行すればよい。渡している間に、少なくとも１つの所与の繰り返しの回Ｄにおいて、特にフィルタがコンパクトな台に適用されるように制約されている場合、当該渡すことは、係数にマッピングされていない少なくとも１つの葉セルに遭遇してもよい。この葉セルは、ａＤ＋１１’ａＤ＋１２’・・・ａＤ＋１Ｄ＋１’，で表され、これはＣ（ＬＤ＋１（ｏｃｔｒｅｅＤ＋１（Ｓ）））に属する。セルは係数にマッピングされず、フィルタは任意の方法でこのケースを処理できる。
【００８５】
一例においては、決定すること（Ｓ２０）は、そのような状況において、ｃ’Ｄ＋１，０００（ａＤ＋１１’ａＤ＋１２’・・・ａＤ＋１Ｄ＋１’）で表される各値をそのような遭遇したセルに割り当てることを含む。次に、（同じ）割り当て値が各ウェーブレット畳み込みフィルタに入力される。言い換えれば、本方法は、フィルタを直接的に適用できるようにするために、フィルタのコンパクトな台を、「人工的に」割り当てられた値で埋める。これにより、既知の空間のコンパクトな台に関して定義された任意のフィルタ、特に四分木の場合には任意の所定の２Ｄ画像フィルタの基礎を、また八分木の場合には任意の所定の３Ｄ画像フィルタの基礎を実装することができる。
【００８６】
したがって、フィルタの引数は、フィルタがセルのブロックに適用されるたび、上述の係数ｃＤ＋１，０００（ａＤ１＊ａＤ２＊・・・ａＤＤ＊ａＤ＋１Ｄ＋１）であり、ａＤ１＊ａＤ２＊・・・ａＤＤ＊はブロックの親セルへの経路を指定し、ａＤ＋１Ｄ＋１は｛０，１｝３において変化し、欠落した係数に遭遇した場合（すなわち「空」のセル）には、割り当てた値ｃ’Ｄ＋１，０００（ａＤ＋１１’ａＤ＋１２’・・・ａＤ＋１Ｄ＋１’）で補間する。
【００８７】
復元時には、人工的に割り当てられた値は、デコーダで認識することによってフィルタリングしてもよい。例えば、本方法は、データのうち、最初の階層的細分化のどの葉セルが係数にマッピングされるかについての情報を維持することを含んでいてもよい。例えば、図１の方法は、そのようなセルにマークをつけるステップを含んでいてもよい。マーカーは、圧縮信号に存在してもよい。信号を復元する際に得て、他の葉セルにマッピングした係数は、破棄してもよい。
【００８８】
割り当てる値は、どのような方法で決定してもよい。例えば、繰り返しの所与の回で決定されたサブバンド内を強制的に１つまたは複数のゼロにすることに関連する基準に従って決定してもよい。言い換えれば、本方法は、ランダムにではなく、それらを含むフィルタを期待して値を割り当てるので、ゼロが得られる。したがって、割り当てられる値は、（フィルタを適用した際に）結果がゼロとなるフィルタの、引き数である。割り当てられる値は、フィルタおよび現在の係数に基づいて、反復的な方法で（例えば、空のセルごとに）決定してもよい。こうした例は後で示す。ゼロは非常に効率的に符号化可能であるため、高い圧縮率を達成できる。このようにして得られたゼロに等しいウェーブレット係数は、「強制ゼロ」と呼ぶことができる。
【００８９】
基準は、強制的にゼロにされない、繰り返しの所与の回で決定されるすべてのサブバンドの係数の数が、強制的にゼロにされない、前回の繰り返しのローパスサブバンドの係数の数に等しいことであってもよい。基準は、
【数２】
2018101404.tif 000004
で表されてもよい。このようにして、初期信号中に提供される係数の数は、繰り返しを通じて維持され、本方法は特に高い圧縮率を達成する。例えば、係数は、繰り返しの各回において、フィルタを適用することによって行われる変換を法として、全てのサブバンドに（例えば、実質的に等しく）分配されるように見えてもよい。
【００９０】
ここで、上記に沿った図１の方法の概要の例について述べる。図３は、八分木の葉セルから係数へのマッピングを含む信号を提供（Ｓ１０）するために、メッシュ（左図）または点群（右図）として提供される元のデータを八分木でどのように分割することができるかを示す。
【００９１】
八分木を用いる本方法の概要の例は、頂点属性の圧縮に着目してもよい。この例における本方法は、空間が八分木に既に分割されていると仮定しており、これは前述の従来技術のアプローチのほとんどと互換性がある。なぜなら、それらのほとんどが、頂点位置を圧縮するのに八分木を用いるからである。したがって、位置の非構造化集合から開始する代わりに、この例における本方法は、八分木（位置の非構造化集合から得られる可能性がある）から開始する。図４は、点群から始まるそのような八分木分割処理を概略的に示す図であり、これは本方法の前に実行されてもよい。
【００９２】
本方法の例は、画像のウェーブレット圧縮方式に関連するものとして見ることができる。この方法の例は、このアイデアを八分木構造に適用する。本方法の例は、隣接するセルの頂点の属性が互いに関連しているという事実に基づいて構築されている（例えば、色が圧縮したい属性である場合、同じ領域に配置された粒子は近い色の値を持つ可能性が高い）。ウェーブレット圧縮は、圧縮されるべき属性（例えば、画素色）があらゆる場所に定義されている完全に規則的な構造（例えば、画像またはビデオ）について公知である。本方法の例では、葉が、粒子（および圧縮される属性の定義された値）を含んでいるかまたは空であるような八分木に、このような方式を適用する。
【００９３】
したがって、本方法は、記憶手段上の２Ｄ空間または３Ｄ空間内の粒子の集合を圧縮する、コンピュータによって実施される方法を本質とする。本方法は、一例において、各粒子が空間内の位置と、圧縮したい少なくとも１つの属性（通常は色と法線ベクトル）を有するような、２Ｄまたは３Ｄの粒子（頂点）の集合を圧縮するのに適用されてもよい。本方法では、空間が、各葉が粒子（および圧縮される属性の定義された値）を含んでいるかまたは空であるような八分木（あるいは２Ｄの場合、四分木）に、すでに分割されているものと仮定する。先行技術で知られているアプローチは、八分木構造を採用することが最も多いため、このデータ構造が便利である。本方法ではさらに、八分木が、デコーダにおいてうまく再構築され得る（デコーダが、そうすることによって粒子の位置を回復する）ような、任意の所定の圧縮方式で符号化されると仮定する。本方法は、次に、色、法線ベクトル、および／または、速度など、粒子の集合上の属性値を圧縮することを提供する。八分木を符号化／復号する圧縮方式は、そのような任意の方式であってもよい。便利な方式の１つが、先の触れたＰｅｎｇ他による論文「Ｇｅｏｍｅｔｒｙ−ｇｕｉｄｅｄ  ｐｒｏｇｒｅｓｓｉｖｅ  ｌｏｓｓｌｅｓｓ  ３Ｄ  ｍｅｓｈ  ｃｏｄｉｎｇ  ｗｉｔｈ  ｏｃｔｒｅｅ  ｄｅｃｏｍｐｏｓｉｔｉｏｎ」に記載のジオメトリコーダである。この方式は、所望の特性を有する八分木を構築するが、先に列挙した論文のうち、八分木に基づく任意の方法を、代わりに使用することができる。八分木構造は、属性の前に（および属性とは別々に）符号化、および／または、復号することができる。
【００９４】
例の方法をよりよく理解するために、ウェーブレット圧縮方式が画像に対してどのように機能するかについて、概要を説明する。このフレームワークは、本方法の例によって実施できる。
【００９５】
画像のウェーブレット圧縮方式は、以下のステップからなる。まず、ウェーブレット変換を行う：離散ウェーブレット変換が空間構造に適用される。そして、量子化を行う：得られたウェーブレット係数は（公知の方法で）定量化される。そして、符号化を行う：定量化されたウェーブレット係数が符号化される。場合によっては、追加のステップ（例えば、ブロック分割、色空間変換、および／またはＰＣＡによるデータ整列）を適用することもできる。本方法は、そのようなアーキテクチャに従ってもよく、特に、決定すること（Ｓ２０）の後に（例えば、それとインターレースして）量子化ステップを含んでもよい。復号方式は、正確に対称的に逆であってもよく、各逆ステップは逆の順序で適用されてもよい。これらのステップのより詳細な説明を以下に示す。
【００９６】
符号化では、データサイズが真に縮小される。短いシンボルは、入力シンボルに従って出力されるが、動作は可逆的なままである。ウェーブレット圧縮方式で使用されているエンコーダには、ランレングスエンコーダ、エントロピーエンコーダ（例えば、Ｈｕｆｆｍａｎコーダ、Ａｒｉｔｈｍｅｔｉｃコーダ）、辞書エンコーダ（例えばＬｅｍｐｅｌ−Ｚｉｖコーダ）、および、専用エンコーダ（例えば、Ｚｅｒｏｔｒｅｅｓコーダ、ＳＰＩＨＴ、ＥＢＣＯＴ）などの、一般的なエンコーダが含まれる。これらのコーダの任意の組み合わせ（例えば、ランレングスエンコーダ＋Ｈｕｆｆｍａｎコーダ）を実装することもできる。この段階は、ほとんどの場合、完全に逐次的である。つまり、ＧＰＵ上で並列化することはほとんど不可能であり、以前のすべてのシンボルを復号しないと、符号化したデータの途中でシンボルを復号できないため、データへのランダムアクセスが防止できる。エンコーダの効率（圧縮率）は、入力データ内のシンボルの多様性およびこれらのシンボルの分布の影響を受ける。入力がシンボルの小さな集合しか使用しない場合、出力は小さくなる。出力は、等確率分布から遠く離れていると小さくなる。すなわち、入力がたくさんのゼロが含み、ゼロでないシンボルがほとんどない場合、圧縮率は高くなる。
【００９７】
量子化とは、値をある精度単位で丸めるなど、入力値の大きな集合を小さな集合にマッピングする処理である。量子化を実行する装置またはアルゴリズム機能は、量子化器と呼ばれる。量子化によってもたらされた丸め誤差は、量子化誤差と呼ばれる。繰り返すが、多くの量子化器がウェーブレット圧縮方式で用いられている。この段階では、一部のデータが失われ（量子化エラー）、その後不可逆的になる。ロスレスウェーブレット圧縮方式は、この段階をスキップする。この段階は、シンボルの多様性を大幅に減少させるので、符号化ステップをより効率的にする。また、シンボル分布にも影響を与える可能性がある（たとえば、デッドゾーン量子化器は、ほとんどの値をゼロに丸めようとする）。
【００９８】
ウェーブレット変換は、いくつかの係数に対して信号のエネルギーを圧縮し、他の係数をゼロに近づける。ほとんどの場合、ほぼ可逆的な変換である。ウェーブレット変換は、たいていの場合、ウェーブレットの選択によって決定される。この選択は、圧縮される信号の形式に従って行うことができる：Ｈａａｒウェーブレットは、高速で変化する信号に適している。ＬｅＧａｌｌ５／３ウェーブレットと９／７−ＣＤＦウェーブレットは、ゆっくり変化する信号に適している。この段階は、シンボル分布に影響を与えることで、符号化ステップをより効率的にする：ウェーブレット変換された画像は、たくさんのゼロを有し、ゼロでない係数はほとんどない。ウェーブレット変換は、一連の畳み込みフィルタとして反復的に適用することによって実行される。画像畳み込みは、いわゆるスライディングウィンドウアプローチによって実行される：画像内の各画素について、画素の局所的な近傍が重み付けカーネルによって乗算され、次に加算されて、新しい画素の値が得られる。図５は、スライディングウィンドウアルゴリズムを用いて実行される畳み込みのそのような例を、概略的に示す。リフティングフィルタと呼ばれるもう１つのアプローチ（Ｗｉｍ  Ｓｗｅｌｄｅｎｓによる論文「Ｔｈｅ  Ｌｉｆｔｉｎｇ  Ｓｃｈｅｍｅ：Ａ  Ｃｏｎｓｔｒｕｃｔｉｏｎ  ｏｆ  Ｓｅｃｏｎｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｗａｖｅｌｅｔｓ」に詳述）は、より速いため好まれることもあるが、コンボリューションフィルタのアプローチと完全に同等である。この段階は、信号の空間的相関関係を利用していると言われる：すなわち、冗長な情報と見なすことができる、画素の隣接画素への依存関係を削除し、データの圧縮は冗長な情報を何らかの方法で削除することである。
【００９９】
離散ウェーブレット変換ステップが画像Ｎ＊Ｎに対して実行されるとき、一連の畳み込みフィルタが繰り返し適用される。これにより、画像が、サブバンドと呼ばれる、一連のより小さな画像に分解される。これは、多重解像度解析を示す図６に示されている：結果として得られるＮ＊Ｎのウェーブレット係数は、サブバンドにソートされる。各サブバンドは、所定の周波数範囲（ローパスを含む）に限定されたタイル情報を含む。ウェーブレット分解の１つのレベルでは、前の分解ステップ中に導出されたローパスサブバンドから、４つのサブバンドを構築することが可能である。各サブバンドの寸法は、それが由来する画像／サブバンドの寸法の２分の１である。図６からわかるように、サブバンド１ＨＬ、１ＬＨ、１ＨＨ、１ＬＬは、完全なタイルに適用されたウェーブレット分解の結果である（それらの寸法はＮ／２である）。サブバンド２ＨＬ、２ＬＨ、２ＨＨ、２ＬＬは、サブバンド１ＬＬに適用されたウェーブレット分解の結果である（それらの寸法はＮ／４である）。以下同様。階層的サブバンド構造は、多重解像度解析と呼ぶことができる（生成された係数が周波数範囲によってグループ分けされているため）。処理の終了時におけるウェーブレット係数の総数は、入力画素数（Ｎ＊Ｎ）と同じである。
【０１００】
これまでに言及したことはすべて、３Ｄ画像に拡張することができる。４つのサブバンドの代わりに、ウェーブレット分解の１つのレベルで、８つのサブバンドが生成される。これは、離散ウェーブレット変換が３Ｄで実行されるときのサブバンドを示す、図７に示されている。しかしながら、離散ウェーブレット圧縮方式を八分木構造に適用するうえでの主な問題は、完全に規則的な（例えば格子状の）構造を有する従来の画像とは異なり、ここでは、属性値は、より複雑な構造上に存在し、属性値はどこにでも定義されているわけではないことである。ただし、このステートメントの影響を受ける唯一のステップは、ウェーブレット変換である：畳み込みフィルタとリフティングフィルタの両方で、各粒子の局地的な近傍を定義する必要があるが、ここでは明確ではない。量子化ステップでは、画素の近傍は見ない。符号化ステップは係数の順序の影響を受けるが、ウェーブレット変換に比べて程度は低い。したがって、符号化（およびオプションとしての量子化）をこのシナリオに適用するのは容易であり、主な問題はウェーブレット変換（すなわち、決定すること（Ｓ２０））である。
【０１０１】
ここで、このような離散ウェーブレット変換を３Ｄ八分木に適用する例について、図１を参照して説明した本方法の例に沿って説明する。
【０１０２】
ここでこの例についてさらに詳細に説明する。ここでは、八分木に適用される新たな離散ウェーブレット変換を疎なウェーブレット変換と呼ぶ。
【０１０３】
まず、多重解像度解析がどのようなものであるべきかを考える。通常の入力が、Ｎ＊Ｎ＊Ｎ個の画素の規則的な３Ｄ画像（各画素に定義された値を有する）でなければならない場合、本方法は、最大深さがＮで、各葉が、明確に定義された値を保持することも（そのセルに粒子が存在する場合）、あるいは保持しないことも（粒子が存在しない場合）できるような八分木を扱う。
【０１０４】
この例の方法は、ウェーブレット変換が、「規則的な画像」のウェーブレット変換（詳細は後述）に近いままとなることを保証する。よって、「規則的」な場合、
１．ウェーブレット変換は、信号を一連のフィルタに通す（すなわち、信号にフィルタを渡す）ことによって算出される。
【０１０５】
２．分解の各レベルにおいて、前のレベルで得られたローパスサブバンドから８つのサブバンドを生成する。
【０１０６】
本方法は、以下を追加する。
【０１０７】
３．画像全体を描くのに必要な係数の数は、各ステップを通して維持される。簡略化して、８つのサブバンドは、それぞれ、それらが由来するローパスサブバンドと比べて８分の１の（ヌルでない、またはゼロでない）係数を含む。
【０１０８】
各ステップの前後に同じ数の係数を維持することは、疎なウェーブレット変換が以下の特性を有することを示唆する（あるステップの前のローパスサブバンドの最大深さをＤとするとき、第１のステップについてはＤ＝Ｎが成り立つ）：
ｉ．１つのステップによって生成される８つのサブバンドは、最大深さＤ−１の八分木（より正確には、八分木の葉セル上に定義されたマッピング）である。
【０１０９】
ｉｉ．ローパスサブバンドにおける深さｄ＜Ｄの空の葉は、結果として生じるサブバンドの深さｄにおいて空の葉を生成する（すなわち、これらの葉には情報が含まれない）。
【０１１０】
ｉｉｉ．深さＤの８個（２×２×２）のセル（１つのセルが空でない）のブロックは、結果として生じるサブバンドにおいて深さＤ−１にセルを生成する。
【０１１１】
ｉｖ．深さＤにおける８個（２×２×２）のセルのブロックは、１個から８個の空でないセルを有することができる。常に同じ数の係数を維持するために、Ｘ個の空でないセルを含むブロックが、結果として生じる８個のサブバンドに分配されたＸ個のヌルでない係数を生成する必要がある（すなわち、この段階で強制的にゼロにされ、この強制ゼロは、ヌルの係数値または係数値がまったく存在しないものとして符号化されてもよい）。
【０１１２】
２×２×２個のセルのグループを扱うので、コンパクトな台（畳み込みカーネルの幅）が２以下のウェーブレットを使用するのが比較的効率的である。しかし、本方法は、代わりに、より大きなコンパクトな台を有するウェーブレットを用いても機能する。Ｈａａｒウェーブレット（コンパクトな台＝２）は、この場合に良い候補であるが、他の所定のウェーブレットフィルタベースを実装することもできる。したがって、本方法は、ウェーブレットが２以下のコンパクトな台を有するウェーブレットベースに適用されてもよい。
【０１１３】
各画素が符号化する属性に対して定義された値を有する「規則的な画像」では、２×２×２個の画素のグループ（ａｉｊｋ，ｉ，ｊ，ｋ∈｛０，１｝）に適用される分解の１ステップは、以下の係数を生成する（ウェーブレットフィルタは分離可能であると仮定する。これは、畳み込みフィルタを、ｘ軸に沿った畳み込みとｙ軸に沿った畳み込みとの積として分解することができることを意味する）：
ＬＬＬサブバンドにおいて：ｃ０００＝ｓ（ｓ（ｓ（ａ０００，ａ００１），ｓ（ａ０１０，ａ０１１）），ｓ（ｓ（ａ１００，ａ１０１），ｓ（ａ１１０，ａ１１１）））
ＬＬＨサブバンドにおいて：ｃ００１＝ｓ（ｓ（ｄ（ａ０００，ａ００１），ｄ（ａ０１０，ａ０１１）），ｓ（ｄ（ａ１００，ａ１０１），ｄ（ａ１１０，ａ１１１）））
ＬＨＬサブバンドにおいて：ｃ０１０＝ｓ（ｓ（ｓ（ａ０００，ａ００１），ｓ（ａ０１０，ａ０１１）），ｓ（ｓ（ａ１００，ａ１０１），ｓ（ａ１１０，ａ１１１）））
ＬＨＨサブバンドにおいて：ｃ０１１＝ｓ（ｄ（ｄ（ａ０００，ａ００１），ｄ（ａ０１０，ａ０１１）），ｄ（ｄ（ａ１００，ａ１０１），ｄ（ａ１１０，ａ１１１）））
ＨＬＬサブバンドにおいて：ｃ１００＝ｄ（ｓ（ｓ（ａ０００，ａ００１），ｓ（ａ０１０，ａ０１１）），ｓ（ｓ（ａ１００，ａ１０１），ｓ（ａ１１０，ａ１１１）））
ＨＬＨサブバンドにおいて：ｃ１０１＝ｄ（ｓ（ｄ（ａ０００，ａ００１），ｄ（ａ０１０，ａ０１１）），ｓ（ｄ（ａ１００，ａ１０１），ｄ（ａ１１０，ａ１１１）））
ＨＨＬサブバンドにおいて：ｃ１１０＝ｄ（ｄ（ｓ（ａ０００，ａ００１），ｓ（ａ０１０，ａ０１１）），ｄ（ｓ（ａ１００，ａ１０１），ｓ（ａ１１０，ａ１１１）））
ＨＨＨサブバンドにおいて：ｃ１１１＝ｄ（ｄ（ｄ（ａ０００，ａ００１），ｄ（ａ０１０，ａ０１１）），ｄ（ｄ（ａ１００，ａ１０１），ｄ（ａ１１０，ａ１１１））））
ここでｄはウェーブレット関数、ｓは関連付けられたスケーリング関数である。Ｈａａｒの場合、ｓ（ｘ，ｙ）＝α＊（ｘ＋ｙ）であり、ｄ（ｘ，ｙ）＝β＊（ｘ−ｙ）である。ここでαとβは正規化係数である。
【０１１４】
疎なウェーブレット分解の１つのステップにおいて、
・深さＤの８個（２×２×２）のセルのブロックが８個の空でないセルを有する場合、１つは３Ｄ画像の場合と同じであると考えられる。ａｉｊｋはすべて明確に定義されており、本方法は、上記の式を適用することができる。言い換えれば、この場合、本方法は、２Ｄ画像に適合し、２×２のコンパクトな台の画素を有する所定のウェーブレット（例えば、本ケースではＨａａｒウェーブレット）および、３Ｄ（すなわち、２×２×２のコンパクトな台の画素）のために構成された所定のウェーブレットを適用する。
【０１１５】
・深さＤにおける８個（２×２×２）のセルのブロックは、Ｘ個（０＜Ｘ＜８）の空でないセルを有する。幾つかのａｉｊｋは明確に定義されており（空でないセル）、幾つかは、定義されていない値を有する（空のセル）。上述のように、本方法は、Ｘ個の空でないセルが、８個のサブバンドに分配されたＸ個のヌルでない係数を生成することを保証する（先に述べた特性ｉｖ）。したがって、本方法は、８−Ｘ個のｃｉｊｋ係数を強制的にヌルにする。本方法の一例は、未定義のａｉｊｋの任意の値を選択することをその本質とし、それにより８−Ｘ個のｃｉｊｋ係数がヌルとなる。
【０１１６】
以下の記号を用いる。
【０１１７】
・［Ａ］＝（ａｉｊｋ）、［Ａ］は８×１のベクトル。
【０１１８】
・［Ｃ］＝（ｃｉｊｋ）、［Ｃ］は８×１のベクトル。
【０１１９】
・［Ｍ］＝上で定義した変換に関連付けられた行列。［Ｍ］は、８×８の行列。
【０１２０】
・［Ｃ］＝［Ｍ］＊［Ａ］
・［Ｍ］の各列が、離散ウェーブレット変換の機能により、直交（非ヌル）ベクトルである。
【０１２１】
標準的なＨａａｒウェーブレットの場合：
【数３】
2018101404.tif 000005
である。
【０１２２】
［Ａ］と［Ｃ］の要素を次のように並べ替えることができる。
・
【数４】
2018101404.tif 000006
であり、［Ａ＋］は明確に定義されたａｉｊｋであり、［Ａ−］は定義されていないａｉｊｋである。
・
【数５】
2018101404.tif 000007
であり、［Ｃ＋］は強制的にヌルにしないＸ個のｃｉｊｋの値である。
【０１２３】
［Ｍ］の行列を再計算する必要がある：新たな［Ｍ］は、基本的に、置換行列が左と右に乗算された古いものと等しい。新たな［Ｍ］の各列は、依然として直交（非ヌル）ベクトルである。なぜなら、この性質は置換行列を用いた乗算で保存されるためである。
【０１２４】
新たな行列［Ｍ］は以下のように表すことができる。
【数６】
2018101404.tif 000008
［Ｃ］＝［Ｍ］＊［Ａ］は、
［Ｃ＋］＝［Ｍ１］＊［Ａ＋］＋［Ｍ２］＊［Ａ−］、および
［０］＝［Ｍ３］＊［Ａ＋］＋［Ｍ４］＊［Ａ−］となる。
［Ｍ４］が可逆である場合：
［Ａ−］＝−［Ｍ４］−１＊［Ｍ３］＊［Ａ＋］（式１）であり、最終的に、
［Ｃ＋］＝（［Ｍ１］−［Ｍ２］＊［Ｍ４］−１＊［Ｍ３］）＊［Ａ＋］（式２）となる。
【０１２５】
（式１）は、８−Ｘ個のｃｉｊｋをヌルにするために未定義のａｉｊｋに割り当てる必要がある任意の値が、ヌルにしたい８−Ｘ個のｃｉｊｋ係数の選択によって完全に決定されることを示している。
【０１２６】
（式２）は、［Ｍ４］を可逆にするのにヌルでなければならないｃｉｊｋ係数を選べば、上記の式で分解のステップの結果である［Ｃ＋］を算出できることを示している。
【０１２７】
本方法の例で最終的に設定する必要があるのは、ヌルにする８−Ｘ個のｃｉｊｋ係数の選択だけである。この選択は、任意の方法で実行できる。この選択が完了すると、本方法は［Ｍ１］、［Ｍ２］、［Ｍ３］、［Ｍ４］、および最後に分解のステップの結果である［Ｃ＋］を算出することができる。
【０１２８】
次の例は、このような有効な選択肢が常に存在し、本方法が常に選択を実行できることを示す。
【数７】
2018101404.tif 000009
は、［Ｍ］の８−Ｘ個の列である。
【数８】
2018101404.tif 000010
は、８−Ｘ次元の部分空間Ｓ上におけるこれら８−Ｘ個の列の直交射影である。この部分空間Ｓは、構成（すなわち、８個（２×２×２）のセルのブロックにおける明確に定義されたａｉｊｋおよび未定義のａｉｊｋの位置）によって与えられる。［Ｍ］の８−Ｘ個の列の選択は、強制的にゼロにしたい８−Ｘ個のｃｉｊｋ係数の選択によって与えられる。
【数９】
2018101404.tif 000011
の列が線形独立であれば、［Ｍ４］は可逆である。
【０１２９】
前述のように、［Ｍ］の各列は直交（非ヌル）ベクトルである。これらのベクトルｍｉは、正規化して正規直交基底を得ることができる。これらの基底ベクトルのＳへの直交投影は、Ｓの過完備基底である。したがって、Ｓ上の投影［Ｍ４］はＳの完備な基底を形成し、このような［Ｍ］の８−Ｘ列を常に見つけることができ、これは［Ｍ４］が可逆であることを意味する。
【０１３０】
以下は、ヌルにしなければならない８−Ｘ個のｃｉｊｋ係数の選択方法に着目する。
【０１３１】
Ｘ個の明確に定義されたａｉｊｋ（０＜Ｘ＜８）を有する８個（２×２×２）のセルのブロックには、
【数１０】
2018101404.tif 000012
個の取り得る構成（８個のセルのうち、Ｘ個の明確に定義されたａｉｊｋの位置）がある。すべての取り得る構成（Ｘが取り得るすべての値）を考慮すると、考慮するケースは２５４（
【数１１】
2018101404.tif 000013
）ある。
【０１３２】
疎なウェーブレット分解を完全に定義するのに、これらの２５４のケースのそれぞれについて、まだ定義していないものがあり、それはヌルにしたいｃｉｊｋ係数である。各構成について、少なくとも１つの有効な選択肢があることは、既に示した。本方法では、明確に定義されたＸ個（０＜Ｘ＜８）のａｉｊｋを有する８個（２×２×２）のセルのブロックに遭遇するたびに、それがどの構成であるかを単純にチェックし、その構成に対して予め決められた選択肢を適用する。
【０１３３】
実際には、多くの場合、各構成にたくさんの有効な選択肢がある。いくつかの選択肢は、他と比較して、より関連性がある。選択肢の事前決定は、より効率を良くするために、以下に述べる原則に従ってもよい。
【０１３４】
多くの構成が似ている場合、同種のものとしてグループ化して扱うことができる。また、「標準的」な選択肢を予め設定することもできる。そのような標準的なオプションは単純であり、多くの構成で機能する。それは次のように記述することができる。｛０，１｝３の各（ｉ，ｊ，ｋ）に対して、ａｉｊｋが未定義の値を有する場合、本方法は、ｃｉｊｋを強制的にヌルにする。これが有効な選択肢ではない構成はほとんどない（［Ｍ４］が可逆でない場合）。
【０１３５】
なお、「規則的」なＨａａｒ分解の場合、ＬＬＬサブバンドにおいて：
【数１２】
2018101404.tif 000014
→ＬＬＬサブバンドは８個の画素の一種の平均を格納する。また、他のサブバンドは、一方向の平均差を格納する（ｃ１００は、ほぼ、ｘ軸に沿った平均差、ｃ０１０はｙ軸に沿った平均差、など）。つまり、Ｘ個の明確に定義されたａｉｊｋを有する８個（２×２×２）のセルのブロックでは、本方法は、明確に定義されたａｉｊｋの平均がヌルの場合を除いて、ｃ０００に対してヌルでない値を保持してもよい。したがって、この動作を維持するために、本方法は、強制的にヌルにしたい８−Ｘ個のｃｉｊｋ係数のうちｃ０００を保持することがある。
【０１３６】
以下のステップ（量子化および符号化）では、八分木構造が分かっているため、本方法は、多重解像度解析構造がどのようなものであるか、および、この構造のどのゼロが前段落で生成された「強制ゼロ」であるかが分かっている。したがって、これらのセルは量子化され符号化される必要がない。
【０１３７】
復元段階において、復元方法は、八分木構造が既に復号されている（頂点位置が、頂点属性の前に別個に復号されている）と仮定することができる。逆ウェーブレット変換が実行されるとき、本方法は、どの値が実際の空でないセルであり、どの値が「充填したセル」であるかを考慮して、これらの値を破棄することができる。
【０１３８】
このような離散ウェーブレット変換を２Ｄ四分木に適合させる例を次に説明する。この例は、前の例を２次元（八分木ではなく四分木）で使用するケースに対応しており、３Ｄ八分木のケースは、この例の拡張である。
【０１３９】
離散ウェーブレット変換を四分木に適合させるために、まず多重解像度解析がどのようなものであるべきかを見ることができる。四分木に適用されるこの新たな離散ウェーブレット変換は、疎なウェーブレット変換とも呼ばれる。ウェーブレット変換の古典的な画像Ｎ＊Ｎは、最大深さＮの四分木に置き換えられる。
【０１４０】
分解の各レベルで、前の分解ステップ中に導出されたローパスサブバンドから、４つのサブバンドが生成される。
【０１４１】
変換の前後で同じ数の係数を維持するには：
１．これらのサブバンドは、最大深さＮ−１の四分木である。
【０１４２】
２．深さＭ≠Ｎの空の葉は空の葉を生成する。
【０１４３】
３．深さＮの４つのセル（２×２）（１つは空でない）のグループは、深さＮ−１にセルを生成する。４つのサブバンドがあるので、４つの係数を作る。これは図８に示されており、図８は左から右に、元の四分木（圧縮されるデータが、定義された値を有する黒点図）、および、疎なウェーブレット変換の１／２／３個のステップの後の多重解像度解析を示す。規則１−３は、多重解像度解析の構造を定義する。疎なウェーブレット変換の各ステップは、４つのサブバンドを生成する。各サブバンドは四分木である。
【０１４４】
４．深さＮの４つのセルのグループは、１，２，３または４つの空でないセルを有することができる。同じ数の係数を常に維持するために、１／２／３／４個の空でないセルを含むグループは、４つのサブバンドに分配される１／２／３／４個の係数を生成することができる。これは図９に示されており、図９は、規則４を追加することによって更新された図８の方式を示している。疎なウェーブレット変換の各ステップは、この例では、同じ数の係数を維持する。
【０１４５】
２×２個のセルのグループを扱うので、可能性の１つとして、コンパクトな台（畳み込みカーネルの幅）が２以下のウェーブレットを使用することができ、これにより演算が単純になる。Ｈａａｒウェーブレット（コンパクトな台＝２）は良い候補である。より大きいコンパクトな台を有するウェーブレットを用いてもよい。
【０１４６】
これ以降、ウェーブレットが２以下のコンパクトな台を有すると仮定する。各画素が符号化する属性に対して定義された値を有する２Ｄ画像では、２×２個の画素のグループ（ａ００，ａ０１，ａ１０，ａ１１）に適用される分解の１ステップは、以下の係数を生成する（ウェーブレットフィルタは分離可能であると仮定する。これは、畳み込みフィルタを、ｘ軸に沿った畳み込みとｙ軸に沿った畳み込みとの積として分解することができることを意味する）：
ＬＬサブバンドにおいて：ｃ００＝ｓ（ｓ（ａ００，ａ０１），ｓ（ａ１０，ａ１１））
ＬＨサブバンドにおいて：ｃ０１＝ｓ（ｄ（ａ００，ａ０１），ｄ（ａ１０，ａ１１））
ＨＬサブバンドにおいて：ｃ１０＝ｄ（ｓ（ａ００，ａ０１），ｓ（ａ１０，ａ１１））
ＨＨサブバンドにおいて：ｃ１１＝ｄ（ｄ（ａ００，ａ０１），ｄ（ａ１０，ａ１１））
ここで、図１０に示されるように、ｄはウェーブレット関数、ｓは関連付けられたスケーリング関数である（図１０は、画像に適用された、コンパクトな台＝２の離散ウェーブレット変換の１つのステップを示しており、各サブバンドにおいて、２×２画素のブロックが１つの係数を提供している）。Ｈａａｒの場合、ｓ（ａ００，ａ０１）＝α＊（ａ００＋ａ０１）であり、ｄ（ａ００，ａ０１）＝β＊（ａ００−ａ０１）である。ここでαとβは正規化係数である。
【０１４７】
Ｈａａｒウェーブレットでは、
ＬＬサブバンドにおいて：ｃ００α（ａ００＋ａ０１＋ａ１０＋ａ１１）→ＬＬサブバンドは４個の画素の一種の平均を格納する。
【０１４８】
ＬＨサブバンドにおいて：ｃ０１α（ａ００−ａ０１＋ａ１０−ａ１１）→ＬＨサブバンドは水平方向の一種の差異を格納する。
【０１４９】
ＨＬサブバンドにおいて：ｃ１０α（ａ００＋ａ０１−ａ１０−ａ１１）→ＨＬサブバンドは垂直方向の一種の差異を格納する。
【０１５０】
ＨＨサブバンドにおいて：ｃ１１α（ａ００−ａ０１−ａ１０＋ａ１１）→ＨＨサブバンドは一種のクロス差を格納する。
【０１５１】
四分木では、深さＮの２×２個のセルのグループは１、２、３または４個の空でないセルを有することができ、４つのサブバンドに分配された１／２／３／４個の係数を生成する必要がある。これは図１１に示されており、図１１は、２×２個のセルのブロックに適用された疎なウェーブレット変換の１つのステップを示す。ここで、１／２／３／４個の空でないセルのグループは、４個のサブバンドに分配された１／２／３／４個の係数を提供する。
【０１５２】
このアプローチの考え方は、空のセルを、選択した値で埋めることであり、生成するウェーブレット係数の数を最小にするのに役立つ（ゼロにしたいサブバンド係数をヌルにする）。
・空でないセルが４つある場合は、２Ｄ画像の場合と同じである。
・空でないセルが１つ（ａ）しかない場合は、「平均」だけを保持、すなわち値ａをＬＬサブバンドに格納する必要がある。これは、空のセルを同じ値ａで埋め、Ｈａａｒのフィルタを通常どおり適用するのと同等である。
・空でないセルが２つ（ａ、ｂ）しかない場合、本方法は、ＬＬサブバンドにおける「平均」と、（空でないセルの相対位置に応じて）他のサブバンドのうちの１つにおける「差」のみを保持する必要がある。これは、空でないセルが対角線上にある場合には、空のセルを（ａ−ｂ）／２と（ｂ−ａ）／２で埋め、Ｈａａｒのフィルタを通常どおり適用することと同等である。これは、空でないセルが対角線上にある場合には、空のセルを（ａ−ｂ）／２と（ｂ−ａ）／２で埋め、Ｈａａｒのフィルタを通常どおり適用することと同等である。
・空でないセルが３つ（ａ、ｂ、ｃ）しかない場合、本方法は、ＬＬサブバンドにおける「平均」と、他のサブバンドのうちの１つにおける２つの「差」のみを保持する必要がある。これは、空のセルを、第４のサブバンド係数をヌルにする値で埋めることと同等である。
【図１】
2018101404.tif 000018
【図２】
2018101404.tif 000019
【図３】
2018101404.tif 000020
【図４】
2018101404.tif 000021
【図５】
2018101404.tif 000022
【図６】
2018101404.tif 000023
【図７】
2018101404.tif 000024
【図８】
2018101404.tif 000025
【図９】
2018101404.tif 000026
【図１０】
2018101404.tif 000027
【図１１】
2018101404.tif 000028
【外国語明細書】
2018101404.tif 000029
2018101404.tif 000030
2018101404.tif 000031
2018101404.tif 000032
2018101404.tif 000033
2018101404.tif 000034
2018101404.tif 000035
2018101404.tif 000036
2018101404.tif 000037
2018101404.tif 000038
2018101404.tif 000039
2018101404.tif 000040
2018101404.tif 000041
2018101404.tif 000042
2018101404.tif 000043
2018101404.tif 000044
2018101404.tif 000045
2018101404.tif 000046
2018101404.tif 000047
2018101404.tif 000048
2018101404.tif 000049
2018101404.tif 000050
2018101404.tif 000051
2018101404.tif 000052
2018101404.tif 000053
2018101404.tif 000054
2018101404.tif 000055
2018101404.tif 000056
2018101404.tif 000057
2018101404.tif 000058
2018101404.tif 000059
2018101404.tif 000060
2018101404.tif 000061
2018101404.tif 000062
2018101404.tif 000063
2018101404.tif 000064
2018101404.tif 000065
2018101404.tif 000066
2018101404.tif 000067
2018101404.tif 000068
2018101404.tif 000069
2018101404.tif 000070
2018101404.tif 000071
2018101404.tif 000072
2018101404.tif 000073
2018101404.tif 000074
【図１】
2018101404.tif 000075
【図２】
2018101404.tif 000076
【図３】
2018101404.tif 000077
【図４】
2018101404.tif 000078
【図５】
2018101404.tif 000079
【図６】
2018101404.tif 000080
【図７】
2018101404.tif 000081
【図８】
2018101404.tif 000082
【図９】
2018101404.tif 000083
【図１０】
2018101404.tif 000084
【図１１】
2018101404.tif 000085