(57)【特許請求の範囲】
【請求項１】
画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理方法であって、
前記各タイルの圧縮画像データ（以下、第１圧縮画像データ）に対して、当該第１圧縮画像データと隣接するタイルの圧縮画像データ（以下、第２圧縮画像データ）における前記第１圧縮画像データとのタイル境界の近傍情報を利用してデタイリングを行うステップ、
前記デタイリングされた各タイルの圧縮画像データを伸長するステップ、
前記伸長された各タイルの画像データを一つの画像データに再合成するステップ、
からなることを特徴とするデータ処理方法。
【請求項２】
前記多重レベルウェーブレット係数は、各レベルごとにハイパス係数とローパス係数とを含み、
前記デタイリングを行うステップは、
前記第１圧縮画像データのあるレベルにおけるタイル境界近傍のハイパス係数及びローパス係数を、前記第２圧縮画像データの同一レベルにおける前記タイル境界近傍のハイパス係数及びローパス係数を用いて修正することにより、デタイリングを行うことを特徴とする請求項１記載のデータ処理方法。
【請求項３】
前記デタイリングを行うステップは、
（ａ）タイル単位に、レベルＪのローパス係数、ハイパス係数に対する１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数を生成し、
（ｂ）前記生成されたレベルＪ−１のローパス係数にタイルをまたいで順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成し、
（ｃ）レベルＪのハイパス係数を０に設定して、前記近似の係数を用いて、タイルをまたいで１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数に近似の係数を生成し、
（ｄ）前記レベルＪ−１の全てのローパス係数に近似の係数が得られるまで、前記（ｂ）および（ｃ）を繰り返し、
（ｅ）前記（ｄ）で得られたレベルＪ−１のローパス係数に近似の係数に、タイル単位の１レベル順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成する、
ことによりデタイリングを行うことを特徴とする請求項２記載のデータ処理方法。
【請求項４】
前記デタイリングを行うステップは、
前記（ｅ）で生成されたローパス係数に近似の係数を量子化するステップ、
前記量子化された係数を逆ウェーブレット変換するステップ、
をさらに含むことを特徴とする請求項３記載のデータ処理方法。
【請求項５】
前記デタイリングを行うステップは、各レベルごとに、デタイリング処理を繰り返し行うことを特徴とする請求項３または４記載のデータ処理方法。
【請求項６】
画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理装置であって、
前記各タイルの圧縮画像データ（以下、第１圧縮画像データ）に対して、当該第１圧縮画像データと隣接するタイルの圧縮画像データ（以下、第２圧縮画像データ）における前記第１圧縮画像データとのタイル境界の近傍情報を利用してデタイリングを行う手段、
前記デタイリングされた各タイルの圧縮画像データを伸長する手段、
前記伸長された各タイルの画像データを一つの画像データに再合成する手段、
からなることを特徴とするデータ処理装置。
【請求項７】
前記多重レベルウェーブレット係数は、各レベルごとにハイパス係数とローパス係数とを含み、
前記デタイリングを行う手段は、
前記第１圧縮画像データのあるレベルにおけるタイル境界近傍のハイパス係数及びローパス係数を、前記第２圧縮画像データの同一レベルにおける前記境界近傍のハイパス係数及びローパス係数を用いて修正することにより、デタイリングを行うことを特徴とする請求項６記載のデータ処理装置。
【請求項８】
前記デタイリングを行う手段は、
（ａ）タイル単位に、レベルＪのローパス係数、ハイパス係数に対する１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数を生成し、
（ｂ）前記生成されたレベルＪ−１のローパス係数にタイルをまたいで順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成し、
（ｃ）レベルＪのハイパス係数を０に設定して、前記近似の係数を用いて、タイルをまたいで１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数に近似の係数を生成し、
（ｄ）前記レベルＪ−１の全てのローパス係数に近似の係数が得られるまで、前記（ｂ）および（ｃ）を繰り返し、
（ｅ）前記（ｄ）で得られたレベルＪ−１のローパス係数に近似の係数に、タイル単位の１レベル順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成する、
ことによりデタイリングをおこなうことを特徴とする請求項７記載のデータ処理装置。
【請求項９】
前記デタイリングを行う手段は、
前記（ｅ）で生成されたローパス係数に近似の係数を量子化する手段、
前記量子化された係数を逆ウェーブレット変換する手段、
をさらに有することを特徴とする請求項８記載のデータ処理装置。
【請求項１０】
前記デタイリングを行う手段は、各レベルごとに、デタイリング処理を繰り返し行うことを特徴とする請求項８または９記載のデータ処理装置。
【請求項１１】
画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理方法であって、
前記各タイルの圧縮画像データを復号して多重レベルのウェーブレット係数を生成するステップ、
前記生成された多重レベルのウェーブレット係数に対し多重レベル逆ウェーブレット変換を行うステップとからなり、
前記多重レベル逆ウェーブレット変換を行うステップは、
少なくとも１つのレベルのタイル境界にあるウェーブレット係数に対し係数調整を行ってデタイリングしたウェーブレット係数を生成し、
前記デタイリングされたウェーブレット係数に対し逆ウェーブレット変換を適用してデータ・サンプルを生成する、
ことを特徴とするデータ処理方法。
【請求項１２】
前記係数調整は、レベルＪのローパス係数及びハイパス係数に対し予め計算されたフィルタ係数を適用してレベルＪ−１の近似係数を生成することにより行うことを特徴とする請求項１１記載のデータ処理方法。
【請求項１３】
前記フィルタ係数の適用は、ある乗数をレベルＪのローパス係数及びハイパス係数に乗算し、それら乗算の積を加算して前記近似係数を生成することであることを特徴とする請求項１２記載のデータ処理方法。
【請求項１４】
画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理装置であって、
前記各タイルの圧縮画像データを復号して多重レベルのウェーブレット係数を生成する手段、
前記生成された多重レベルのウェーブレット係数に対し多重レベル逆ウェーブレット変換を行う手段とを有し、
前記多重レベル逆ウェーブレット変換を行う手段は、
少なくとも１つのレベルのタイル境界にあるウェーブレット係数に対し係数調整を行ってデタイリングしたウェーブレット係数を生成し、
前記デタイリングされたウェーブレット係数に対し逆ウェーブレット変換を適用してデータ・サンプルを生成する、
ことを特徴とするデータ処理装置。
【請求項１５】
前記係数調整は、レベルＪのローパス係数及びハイパス係数に対し予め計算されたフィルタ係数を適用してレベルＪ−１の近似係数を生成することにより行うことを特徴とする請求項１４記載のデータ処理装置。
【請求項１６】
前記フィルタ係数の適用は、ある乗数をレベルＪのローパス係数及びハイパス係数に乗算し、それら乗算の積を加算して前記近似係数を生成することであることを特徴とする請求項１５記載のデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ処理の分野に係り、特に、ウェーブレットを利用するデータ圧縮／伸長の分野に関する。より詳細には、本発明は、任意のウェーブレットフィルタを使用する場合のタイル境界歪みを除去する技術に関する。
【０００２】
【従来の技術】
実用的な画像圧縮システムでは、画素ドメイン並びに変換係数ドメインにおいて独立したタイルに分割された画像の処理が重要である。単純な矩形のタイルに分割する方法が、実行するのに最も簡便な方法である。タイリングによって、矩形の対象領域（ＲＯＩ）が符号器オプションとしても復号器オプションとしても可能となり、また、省メモリ動作及び並列処理が容易になる。
【０００３】
しかしながら、ウェーブレットをベースにしたロッシィ（損失のある）圧縮システムにおいては、個々のタイルを単純に復号化したのでは目障りなタイル境界歪みが発生することがある。ロッシィのフルフレーム・ウェーブレットベース圧縮によって生じる歪みは、一般的に、圧縮画像上のエッジの周囲に”滑らかな”、例えばリンギングとして現れるが、実際には「シャープ」でも「尖鋭(peaky)」でもない。すなわち、原画像の独立したタイルに対しウェーブレット変換を用いて計算したロッシィ圧縮画像では、圧縮されたタイルそれ自体は滑らかに見えるが、隣のタイルとのつなぎ目が急峻なエッジ型の境界になることがある。このようなタイル境界歪みが発生するのは、量子化に用いられる変換係数が、互いに素な画素集合から計算されるためである。タイル境界歪みは、どのようなフィルタが選択されても発生する可能性がある。境界でどのようなフィルタ又は拡張ルール（対称拡張、レプリケーション、反対称拡張）が用いられたとしても、境界の反対側の実際の画像と調和せず、画像によっては歪みを生じる。タイル境界歪みは、許容できないような見え方をすることがしばしばあり、低ビットレートでは特にそうである。
【０００４】
ＤＣＴ圧縮画像のブロック歪み除去の分野では重要な研究がなされている。タイル境界歪みを除去するための１つの方法は、後処理ステップを適用し、ローパスフィルタを用いて圧縮画像の境界を単純に平滑化する方法である。しかしながら、この方法は、好結果を得るためには画像モデルを必要とし、したがって、あらゆる画像に効果があるわけではない。一般的に、境界でローパスフィルタを用いて平滑化すると新たな歪みが生じる。
【０００５】
もう１つの方法はデタイリング(detiling)によって解決する方法であり、これは復号器に実装され、様々な量子化ウェーブレット係数より得られる情報を利用する。ＤＣＴについては、この条件に合致する一方法がＪＰＥＧ標準のセクションＫ８に記載されている。「W．G．Pennebaker及びJ．L．Mitchell,”JPEG-Still  Image  and  Data  Compression  Standard”，Van  Norstrand  Reighhold，NewYork，1993」を参照されたい。この方法は、量子化された係数に作用するもので、量子化係数を利用して所定の係数に対する多項式近似を計算する。この多項式モデルはＤＣＴとは本来関係がないので、この方法はかなり複雑な計算を必要とする。もう１つの周知の方法は凸集合射影法（Projection  Onto  Convex  Sets）である。「A．Kakhor，”Iterative  Procedure  for  Reduction  of  Blocking  Effects  in  Transform  Coding”，IEEE  Trans．Circ．Sys.，vol．2，no.1，pp.91-95，1992」を参照されたい。この方法は、変換ドメインでは規定不可能なモデルを必要とし、また、再帰的手法を変換ドメインとデータ・ドメイン間を行き来させるように切り替える必要があるため、計算コストの上昇をまねく。
【０００６】
ウェーブレット・ベースの圧縮におけるブロック歪みを回避する一方法が、「J．K．Eom，Y．S．Kiln及びJ．H．Kim，”A  Block  Wavelet  Transform  for  Sub-band  Image  Coding/Decoding”，SPIE  Electroinc  Imaging，vol.2669，（San  Jose，California），pp.169-77，January  1996」に提案されている。この方法においては、オーバーラップしたタイルのウェーブレット係数が計算される。タイルのオーバーラップ・サイズはウェーブレット・ツリー上の最高分解レベルに依存する。オーバーラップ領域より計算されたウェーブレット係数を保存することは、フルフレーム分解から選択した係数を保存することと等価である。分解レベルが高くなるほど、より多くのフルフレーム・ウェーブレット係数を保存する必要がある。「ライン・ベース（line-based）」法又は「ローリング・バッファ（rolling  buffer）」法でも同様の保存を要する。これらの方法では、メモリのランダムアクセス及び並列処理が面倒になる。
【０００７】
【発明が解決しようとする課題】
以上の諸点に鑑み、本発明の目的は、ウェーブレット・ベースの圧縮／伸長におけるタイル境界歪みを除去するための新規かつ効果的な方法及び装置を提供しようとするものである。
【０００８】
【課題を解決するための手段】
請求項１記載の発明は、画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理方法であって、前記各タイルの圧縮画像データ（以下、第１圧縮画像データ）に対して、当該第１圧縮画像データと隣接するタイルの圧縮画像データ（以下、第２圧縮画像データ）における前記第１圧縮画像データとのタイル境界の近傍情報を利用してデタイリングを行うステップ、前記デタイリングされた各タイルの圧縮画像データを伸長するステップ、前記伸長された各タイルの画像データを一つの画像データに再合成するステップ、からなることを特徴とする。
【０００９】
請求項２記載の発明は、請求項１記載のデータ処理方法において、前記多重レベルウェーブレット係数は、各レベルごとにハイパス係数とローパス係数とを含み、前記デタイリングを行うステップは、前記第１圧縮画像データのあるレベルにおけるタイル境界近傍のハイパス係数及びローパス係数を、前記第２圧縮画像データの同一レベルにおける前記タイル境界近傍のハイパス係数及びローパス係数を用いて修正することにより、デタイリングを行うことを特徴とする。
【００１０】
請求項３記載の発明は、請求項２記載のデータ処理方法において、前記デタイリングを行うステップは、
（ａ）タイル単位に、レベルＪのローパス係数、ハイパス係数に対する１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数を生成し、
（ｂ）前記生成されたレベルＪ−１のローパス係数にタイルをまたいで順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成し、
（ｃ）レベルＪのハイパス係数を０に設定して、前記近似の係数を用いて、タイルをまたいで１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数に近似の係数を生成し、
（ｄ）前記レベルＪ−１の全てのローパス係数に近似の係数が得られるまで、前記（ｂ）および（ｃ）を繰り返し、
（ｅ）前記（ｄ）で得られたレベルＪ−１のローパス係数に近似の係数に、タイル単位の１レベル順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成する、
ことによりデタイリングを行うことを特徴とする。
【００１１】
請求項４記載の発明は、請求項３記載のデータ処理方法において、前記デタイリングを行うステップは、前記（ｅ）で生成されたローパス係数に近似の係数を量子化するステップ、前記量子化された係数を逆ウェーブレット変換するステップをさらに含むことを特徴とする。
【００１２】
請求項５記載の発明は、請求項３または４記載のデータ処理方法において、前記デタイリングを行うステップは、各レベルごとに、デタイリング処理を繰り返し行うことを特徴とする。
【００１３】
請求項６記載の発明は、画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理装置であって、前記各タイルの圧縮画像データ（以下、第１圧縮画像データ）に対して、当該第１圧縮画像データと隣接するタイルの圧縮画像データ（以下、第２圧縮画像データ）における前記第１圧縮画像データとのタイル境界の近傍情報を利用してデタイリングを行う手段、前記デタイリングされた各タイルの圧縮画像データを伸長する手段、前記伸長された各タイルの画像データを一つの画像データに再合成する手段からなることを特徴とする。
【００１４】
請求項７記載の発明は、請求項６記載のデータ処理装置において、前記多重レベルウェーブレット係数は、各レベルごとにハイパス係数とローパス係数とを含み、前記デタイリングを行う手段は、前記第１圧縮画像データのあるレベルにおけるタイル境界近傍のハイパス係数及びローパス係数を、前記第２圧縮画像データの同一レベルにおける前記境界近傍のハイパス係数及びローパス係数を用いて修正することにより、デタイリングを行うことを特徴とする。
【００１５】
請求項８記載の発明は、請求項７記載のデータ処理装置において、前記デタイリングを行う手段は、
（ａ）タイル単位に、レベルＪのローパス係数、ハイパス係数に対する１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数を生成し、
（ｂ）前記生成されたレベルＪ−１のローパス係数にタイルをまたいで順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成し、
（ｃ）レベルＪのハイパス係数を０に設定して、前記近似の係数を用いて、タイルをまたいで１レベル逆ウェーブレット変換を適用して、レベルＪ−１のローパス係数に近似の係数を生成し、
（ｄ）前記レベルＪ−１の全てのローパス係数に近似の係数が得られるまで、前記（ｂ）および（ｃ）を繰り返し、
（ｅ）前記（ｄ）で得られたレベルＪ−１のローパス係数に近似の係数に、タイル単位の１レベル順ウェーブレット変換を適用して、レベルＪのローパス係数に近似の係数を生成する、
ことによりデタイリングをおこなうことを特徴とする。
【００１６】
請求項９記載の発明は、請求項８記載のデータ処理装置において、前記デタイリングを行う手段は、前記（ｅ）で生成されたローパス係数に近似の係数を量子化する手段、前記量子化された係数を逆ウェーブレット変換する手段をさらに有することを特徴とする。
【００１７】
請求項１０記載の発明は、請求項８または９記載のデータ処理装置において、前記デタイリングを行う手段は、各レベルごとに、デタイリング処理を繰り返し行うことを特徴とする。
【００１８】
請求項１１記載の発明は、画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理方法であって、前記各タイルの圧縮画像データを復号して多重レベルのウェーブレット係数を生成するステップ、前記生成された多重レベルのウェーブレット係数に対し多重レベル逆ウェーブレット変換を行うステップとからなり、前記多重レベル逆ウェーブレット変換を行うステップは、少なくとも１つのレベルのタイル境界にあるウェーブレット係数に対し係数調整を行ってデタイリングしたウェーブレット係数を生成し、前記デタイリングされたウェーブレット係数に対し逆ウェーブレット変換を適用してデータ・サンプルを生成することを特徴とする。
【００１９】
請求項１２記載の発明は、請求項１１記載のデータ処理方法において、前記係数調整は、レベルＪのローパス係数及びハイパス係数に対し予め計算されたフィルタ係数を適用してレベルＪ−１の近似係数を生成することにより行うことを特徴とする。
【００２０】
請求項１３記載の発明は、請求項１２記載のデータ処理方法において、前記フィルタ係数の適用は、ある乗数をレベルＪのローパス係数及びハイパス係数に乗算し、それら乗算の積を加算して前記近似係数を生成することであることを特徴とする。
【００２１】
請求項１４記載の発明は、画像データを複数のタイルに分割して、各タイルごとに、多重レベルウェーブレット変換を適用して多重レベルウェーブレット係数を生成し、該多重レベルウェーブレット係数を符号化して得られた、各タイルの圧縮画像データを処理するデータ処理装置であって、前記各タイルの圧縮画像データを復号して多重レベルのウェーブレット係数を生成する手段、前記生成された多重レベルのウェーブレット係数に対し多重レベル逆ウェーブレット変換を行う手段とを有し、前記多重レベル逆ウェーブレット変換を行う手段は、少なくとも１つのレベルのタイル境界にあるウェーブレット係数に対し係数調整を行ってデタイリングしたウェーブレット係数を生成し、前記デタイリングされたウェーブレット係数に対し逆ウェーブレット変換を適用してデータ・サンプルを生成することを特徴とする。
【００２２】
請求項１５記載の発明は、請求項１４記載のデータ処理装置において、前記係数調整は、レベルＪのローパス係数及びハイパス係数に対し予め計算されたフィルタ係数を適用してレベルＪ−１の近似係数を生成することにより行うことを特徴とする。
【００２３】
請求項１６記載の発明は、請求項１５記載のデータ処理装置において、前記フィルタ係数の適用は、ある乗数をレベルＪのローパス係数及びハイパス係数に乗算し、それら乗算の積を加算して前記近似係数を生成することであることを特徴とする。
【００２４】
【発明の実施の形態】
以下、添付図面を参照し、本発明によるタイル境界歪み除去方法及び装置について説明する。以下の説明において、様々な具体例を提示する。しかし、当業者には、そのような具体例によることなく本発明を実施し得ることは明白であろう。一方、本発明を分かりにくくしないため、周知の構造及び装置はブロック図の形で表し、詳細には述べない。
【００２５】
以下の詳細な説明には、コンピュータ・メモリ内のデータビット操作のアルゴリズム及び記号表現によって表された部分がある。このようなアルゴリズム記述及び表現は、データ処理技術分野において、当業者が研究内容を他の当業者に最も効率的に伝えるために用いる手段である。あるアルゴリズムがあり、それが概して期待した結果に至る筋の通ったステップの系列だと理解されるとする。それらのステップは、物理量の物理的処理を要するステップである。必ずという訳ではないが、これらの物理量は記憶、転送、結合、比較、その他処理が可能な電気的または磁気的信号の形をとるのが普通である。これらの信号をビット、値、要素、記号、文字、術語、番号などで表わすのが、主に慣用上の理由から便利な場合があることが分かっている。
【００２６】
しかしながら、このような術語や同様の用語はすべて適切な物理量に関連付けられるべきであり、また、それら物理量に付けた便宜上のラベルに過ぎないということに留意すべきである。以下の説明より明らかなように、特に断わらない限り、”処理”、”演算”、”計算”、”判定”、”表示”などの術語によって論じられることは、コンピュータシステムのレジスタ及びメモリの内部の物理的（電子的）な量として表現されたデータを処理して、コンピュータシステムのメモリやレジスタ、その他同様の情報記憶装置、情報伝送装置又は表示装置の内部の同様に物理量として表現された他のデータへ変換する、コンピュータシステムや同様の電子的演算装置の作用及びプロセスを意味する。
【００２７】
本発明は、本明細書に述べた処理を実行するための装置にも関係するものである。このような装置は、所要目的のために専用に作られてもよいし、汎用コンピュータを内蔵のコンピュータ・プログラムによって選択駆動もしくは再構成したものでもよい。そのようなコンピュータ・プログラムは、コンピュータが読み取り可能な記憶媒体、限定するわけではないが例えば、フロッピーディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスクなどの任意の種類のディスク、リードオンリーメモリ（ＲＯＭ）やランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード又は光カードなど、コンピュータのシステムバスに接続された電子的命令の記憶に適した任意種類の媒体に格納することができる。
【００２８】
本明細書で提示したアルゴリズム及び表示は、本質的に、いかなる特定のコンピュータ、その他の装置とも関わりがない。様々な汎用マシンを、本明細書に述べる内容に従ったプログラムで使用し得るが、所要の手順のステップの実行のために、より特化した装置を作るほうが好都合であるかもしれない。そのような多様なシステムに必要とされる構造は以下の説明から明らかになろう。さらに、どのような特定のプログラミング言語とも関連付けることなく本発明を説明する。本明細書に述べる本発明の内容を実現するために様々なプログラミング言語を使用し得ることを理解されよう。
【００２９】
《任意の双直交ウェーブレットフィルタのための滑らかな近似によるデタイリング》
例えば双直交ウェーブレットフィルタのようなウェーブレットフィルタを使用し、滑らかな近似によりデタイリングを行う方法及び装置について説明する。本明細書に述べる方法は復号器に組み込まれるもので、ウェーブレット系の平滑性を利用する。
【００３０】
任意の双直交ウェーブレットファイルのためのデタイリング法の一実施例は、タイル全体にわたって滑らかに再構成するが、ここで「滑らか」とは選択した合成ウェーブレット系の滑らかさとして定義される。本方法は、ウェーブレット系の本来の平滑性が利用されていない他の方法とは異なる。本方法は、3-5フィルタ又はドベシィ（Daubechies）の7-9フィルタを用いるような多くの圧縮方式に適用できる。本方法は、2,10フィルタ又は2,6フィルタを用いる圧縮方式、例えば、１９９５年６月２０日出願の”Method  and  Apparatus  for  Compression  using  Reversible  Wavelet  Transforms  and  an  Embedded  Codestream”なる表題の米国特許出願第08/498,695号、及び、１９９６年５月３日出願の”Compression  and  Decompression  with  Wavelet  Style  and  Binary  Style  Including  Quantization  by  Device  Dependent  Parser”なる表題の米国特許第5,881,176号に記載された圧縮方式にも適用できる。
【００３１】
本明細書に述べる実施例の１つ以上には、以下に述べる利点の１つ以上がある。第１に、歪み除去によりタイル境界における目に見えるような画質劣化がなくなる。第２に、本方法は復号器のオプションである。したがって、符号化時、ロスレス復号化時及び高ビットレート復号時のコストは皆無である。さらに、本方法は、特定の画像モデルに依存しない。すなわち、本方法はロッシィ・ウェーブレット圧縮によってもたらされる平滑化と調和した平滑化をもたらす。
【００３２】
本明細書に述べる方法を論ずるため、以下においてウェーブレットフィルタの特性について説明する。タイル境界が滑らかな伸長画像を得るため、レベル（スケール）ごとに異なった品質目標画像Ｉqを考える。伸長画像Ｉc の各再構成レベル（スケール）Ｊで、原画像Ｉのフルフレーム・ウェーブレット分解により得られた画像を、タイル変換における境界修正により影響を受けるレベルＪのハイパス係数のみ修正したものが、品質目標画像Ｉq に選ばれる。その修正された係数はすべて０に設定される。ウェーブレット変換の特性から、伸長画像は合成ローパスフィルタにより決まる合成スケーリング関数と同じ平滑度を有する。タイル境界歪みを除去するために、スケールＪにおけるタイル・ハイパス係数の同スケールの近傍ローパス係数を利用した修正について説明する。
【００３３】
次のパラグラフにおいて、この１次元逆変換の１ステップについて具体的に説明する。品質基準のフルフレーム・ウェーブレット分解は、ローパス係数ｓj及びハイパス係数ｄjにより与えられる（ｊ＝１，．．．，Ｊ）。最も粗いスケールでのローパス係数ｓj の計算過程において、全スケールのローパス係数ｓj（ｊ＝１，．．．，Ｊ−１）を中間ステップで計算する必要があるが、最も粗いスケールのみを保存するだけでよい。これらの係数はローパス演算子Ｈ及びハイパス演算子Ｇと関連している。すなわち、
【００３４】
【数１】
0004248754.tif 000002
その後にダウンサンプリングされる。他方、（タイルに対し別々にウェーブレット変換を適用して得られる）タイル・ウェーブレット分解は、演算子
【００３５】
【数２】
0004248754.tif 000003
を用いて計算される係数
【００３６】
【数３】
0004248754.tif 000004
（ｊ＝１，．．．，Ｊ）によって与えられる。すなわち、
【００３７】
【数４】
0004248754.tif 000005
両方の演算子手法は全ての係数に適用される。上記の２つの演算子手法の相違点は、
【００３８】
【数５】
0004248754.tif 000006
がタイル境界及び画像境界における境界演算を含むのに対し、Ｈ，Ｇが画像境界における境界演算しか含まないことである。逆変換の計算のためには、合成演算子
【００３９】
【数６】
0004248754.tif 000007
が必要である。逆変換の１ステップは次式により行われる。
【００４０】
【数７】
0004248754.tif 000008
【００４１】
その目的は、演算子
【数８】
0004248754.tif 000009
で与えられる逆変換を係数
【００４２】
【数９】
0004248754.tif 000010
に適用することにより、演算子Ｈ*，Ｇ*による（ｓj，ｄj）のフルフレーム逆変換により得られるものと同じ係数が得られるような、新たな近似係数
【００４３】
【数１０】
0004248754.tif 000011
で係数
【００４４】
【数１１】
0004248754.tif 000012
を置き換えることである。すなわち、
【００４５】
【数１２】
0004248754.tif 000013
ここで
【００４６】
【数１３】
0004248754.tif 000014
は双直交ウェーブレット系による単一レベル分解のための一般変換演算子であり、ｓj，ｄjはスケールｊにおける品質基準Ｉqの係数である。後者の条件は、順タイル変換の境界修正の影響を受けた位置以外では、係数ｓj，ｄjが
【００４７】
【数１４】
0004248754.tif 000015
とそれぞれ一致することを意味する。境界修正の影響を受けた位置では、係数ｄjは０である。合成フィルタの長さが２の場合（例えば、2-10フィルタの場合）、
【００４８】
【数１５】
0004248754.tif 000016
である。このような場合、（２）式を解くことは
【００４９】
【数１６】
0004248754.tif 000017
を解くことである。合成フィルタの長さが２を超える場合には、（２）式の近似解の計算は２ステップからなる。まず、
【００５０】
【数１７】
0004248754.tif 000018
となる近似
【００５１】
【数１８】
0004248754.tif 000019
を求め、次に
【００５２】
【数１９】
0004248754.tif 000020
の解を計算する。
【００５３】
１つの方法は、完全な逆変換とフルフレーム順変換を計算して実際の係数ｓjの近似値を算出する方法である。この方法で、ロスレス圧縮の場合には正確な係数ｓjが得られるが、ロッシィ圧縮の場合には近似値しか得られないであろう。しかし、この方法は高速な復号器には利用できないであろう。したがって、目標とすることは
【００５４】
【数２０】
0004248754.tif 000021
となるｓjの近似値
【数２１】
0004248754.tif 000022
を求めることである。
【００５５】
係数
【００５６】
【数２２】
0004248754.tif 000023
を求める手順の一実施例を、３タップのローパス合成フィルタを例に説明する。図１（Ａ）は、タイルに対する変換により計算されるローパス係数の概要図を示す。これら係数のほとんどはフルフレームに変換を適用して得られるものと同一であるが、相違のある係数１０１のような、タイル境界近傍の一部の係数は相違する。順変換においてダウンサンプリングが行われるため、係数ｓj，ｄjは超完備ウェーブレット変換ｓjm，ｄjmの係数集合の部分集合である（ｍは整数のインデックス）。超完備変換係数によって、前記（１）式は次のように変形される。
【００５７】
【数２３】
0004248754.tif 000024
この表記法を用いると、変換演算子Ｈ，Ｇを、もとの係数のシフト列である係数
【００５８】
【数２４】
0004248754.tif 000025
に適用することによって係数
【００５９】
【数２５】
0004248754.tif 000026
を計算することができる。係数
【００６０】
【数２６】
0004248754.tif 000027
が得られたならば、逆変換の１ステップでも係数ｓj-1の集合を得られる。
【００６１】
古典的ＤＷＴのためのスケーリング係数
【００６２】
【数２７】
0004248754.tif 000028
を得るための順変換ステップを図１（Ｂ）に示す。図１（Ｂ）を参照すれば、行２１０上のレベル２のｓ係数に逆変換を適用すると、行２１１上のレベル１のｓ係数が生成される。例えば、ｓ係数２２２〜２２４及び対応したｄ係数に逆変換を適用すると、ｓ係数２２５が生成される。より上の分解レベルの係数で、その下の分解レベルの１つの値を生成するために必要とされる係数の個数は、フィルタの長さによって決まり、また、その分解レベルに左右されるであろう。
【００６３】
デタイリング法は、超完備ウエー変換により得られる知識を利用しウェーブレット変換のシフトを計算する。シフトＤＷＴのスケーリング係数
【００６４】
【数２８】
0004248754.tif 000029
を得るための順変換ステップを図１（Ｃ）に示す。図１（Ｃ）を参照すれば、行２１６上のレベル１のｓ係数に順変換を適用すると行２１５上のレベル２のｓ係数が生成される。例えば、ｓ係数２１９，２３１，２３３に順変換を適用すると、係数２１８及び対応したｄ係数（不図示）が生成される。
【００６５】
双直交ウェーブレット系によるフルフレーム変換を利用する場合、スケールＪ＝２の完全再構成を得るためには、係数
【００６６】
【数２９】
0004248754.tif 000030
のみを保存するか次レベルの分解計算へ渡せば足りる。しかし、逆変換の１ステップとシフト順変換の１ステップを適用することによって、保存された情報から係数
【００６７】
【数３０】
0004248754.tif 000031
を計算することができる。この手順をスケール２の品質基準の係数に適用すれば、中間的な係数
【数３１】
0004248754.tif 000032
を得られる。さらに、係数
【００６８】
【数３２】
0004248754.tif 000033
を使用する代わりに、係数
【００６９】
【数３３】
0004248754.tif 000034
を品質基準の再構成に使用して係数
【００７０】
【数３４】
0004248754.tif 000035
を得ることもできる。これらの追加の係数を再構成に用いれば、より滑らかな近似が得られる。本明細書で述べる方法は、これらのアイデアを「タイル間を滑らかにする」ために利用する。近似係数
【００７１】
【数３５】
0004248754.tif 000036
は一連のステップにより計算されるが、最大のスケール、すなわち本例ではスケール２のローパス係数及びハイパス係数からスタートする。
【００７２】
図２は、タイル境界を滑らかにするプロセスを示す。本プロセスは、ハードウェア、ソフトウェア、あるいは両者の組み合わせによって構成可能な処理ロジックにより実行される。
【００７３】
図２を参照すれば、本プロセスの最初で、処理ロジックは逆タイル変換の１ステップを係数
【数３６】
0004248754.tif 000037
に適用することにより係数
【００７４】
【数３７】
0004248754.tif 000038
を計算する（処理ブロック２０１）。次に、処理ロジックは、変換演算子Ｈを係数
【００７５】
【数３８】
0004248754.tif 000039
に適用することによりフルフレーム係数
【００７６】
【数３９】
0004248754.tif 000040
の近似
【００７７】
【数４０】
0004248754.tif 000041
を計算する（処理ブロック２０２）。次に、処理ロジックは、逆変換演算子Ｈ*を係数
【００７８】
【数４１】
0004248754.tif 000042
に適用することにより
【００７９】
【数４２】
0004248754.tif 000043
の近似
【００８０】
【数４３】
0004248754.tif 000044
を計算する（処理ロジック２０３）。最後に、処理ロジックは、係数
【００８１】
【数４４】
0004248754.tif 000045
に順タイル変換を適用することにより、新たな係数
【００８２】
【数４５】
0004248754.tif 000046
を計算する。
【００８３】
上に説明した４ステップは、以下の概略図並びに図３（Ａ）乃至図３（Ｅ）に詳しく示されるが、その結果は、図１（Ａ）の相違のある係数１０１の近似のような、係数の近似を生成することである。
【００８４】
図３（Ａ）を参照すると、プロセスはレベル２のスケーリング（ｓ）係数及びウェーブレット（ｄ）係数からスタートする。処理ロジックは、レベル２の係数に逆タイル変換を適用し、スムーズ・スケーリング係数及びディテール・ウェーブレット係数を用いてレベル１のスケーリング係数を生成する。この逆変換の結果が図３（Ｂ）に示すレベル１のスケーリング係数である。この段階では、ウェーブレット（ｄ）係数はもはや利用されない。
【００８５】
次に、処理ロジックは、レベル１の係数に順変換を適用してレベル２のスケーリング係数
【００８６】
【数４６】
0004248754.tif 000047
を計算する。これが図３（Ｃ）に示されている。
【００８７】
次に処理ロジックは、シフトされたスケーリング係数
【００８８】
【数４７】
0004248754.tif 000048
に逆変換を適用し、図３（Ｄ）に示す
【００８９】
【数４８】
0004248754.tif 000049
を計算する。
【００９０】
実際の滑らかな再構成は、この段階で完了している。しかしながら、逆変換の完全な１ステップのための入力データセットとして修正された係数を得る必要がある場合には、次に処理ロジックは、スケーリング係数
【００９１】
【数４９】
0004248754.tif 000050
を含むスケーリング係数に順タイル変換を適用してスケーリング係数
【００９２】
【数５０】
0004248754.tif 000051
及びディテール係数
【００９３】
【数５１】
0004248754.tif 000052
を計算する。
【００９４】
図４は、タイル境界係数を平滑化するためのプロセスの一実施例のフローチャートである。この処理は、ハードウェア、ソフトウェア又は両者の組み合わせから構成できる処理ブロックによって実行される。図４を参照すると、処理ロジックは、タイル逆変換をレベルＪのｓ係数及びｄ係数に適用することによって、レベルＪ−１のタイル・ウェーブレット分解のためのｓ係数を計算する（処理ロジック４０１）。次に、処理ロジックは、レベルＪ−１のｓ係数のシフト列に対しフルフレーム順変換を適用することにより、レベルＪのフルフレーム係数の近似を計算する（処理ブロック４０２）。この計算の結果は、レベルＪにおける別フェーズのｓ係数である。
【００９５】
次いで、処理ブロックは、処理ブロック４０２で計算されたレベルＪのｓ係数に対し逆フルフレーム・ウェーブレット変換を適用することにより、レベルＪ−１のフルフレーム係数の近似を計算する（処理ブロック４０３）。この処理ブロックは、最初の繰り返しで、タイル境界に影響される最も右側と左側の係数
【００９６】
【数５２】
0004248754.tif 000053
の近似
【００９７】
【数５３】
0004248754.tif 000054
を生成する。２回目以降の繰り返しでは、前回の左側係数の右にある係数と前回の右側係数の左にある係数の近似が求められる。
【００９８】
処理ロジックは、全ての
【００９９】
【数５４】
0004248754.tif 000055
係数が得られたか判定し、全ての
【０１００】
【数５５】
0004248754.tif 000056
係数の近似が得られるまで処理ブロック４０２，４０３を繰り返す（処理ブロック４０５）。
【０１０１】
その後、処理ロジックは、前に計算したレベルＪ−１のｓ係数に対し順タイル変換の１ステップを適用することにより、レベルＪのｓ係数の近似
【０１０２】
【数５６】
0004248754.tif 000057
を計算する（処理ブロック４０４）。このような手順は、より詳しく後述する単純なフィルタ演算として実行することができる。
【０１０３】
本プロセスをソフトウェアで実行してもよい。デタイリングを行わない圧縮／伸長システムの一実施例のための擬似コードを図２５に示す。
【０１０４】
また、デタイリングを行う圧縮／伸長システムのための擬似コードの一例を図２６に、別の例を図２７にそれぞれ示す。図２６及び図２７において、Ｍはタイル境界近傍にある、正しい係数と相違する係数の個数である。
【０１０５】
また、Matlabコードによる実現例を図２８、図２９及び図３０に示す。
【０１０６】
さて、ある特定のスケールＪにおるデタイリングは、スケールＪのスケーリング係数及びウェーブレット係数に対する単純なフィルタ演算によって行うことができる。修正する必要があるスケールJ-1の係数の個数並びにフィルタ演算は、所与のウェーブレット系及びスケールＪに依存する。
【０１０７】
図５、図８、及び、図９と図１０の組はそれぞれ、3-9ウェーブレット系、5-3ウェーブレット系及び9-7ウェーブレット系のためのデタイリング・フィルタ係数の例を示す。これらのウェーブレット系のためのフィルタ係数を以下に示す。
《3-9フィルタ》
分析ローパス：
0.5/sqrt(2)
1.0/sqrt(2)
0.5/sqrt(2)
分析ハイパス：
(-3/64)/sqrt(2)
(-3/32)/sqrt(2)
(1/4)/sqrt(2)
(19/32)/sqrt(2)
(1/4)/sqrt(2)
(-3/32)sqrt(2)
(-3/64)/sqrt(2)
《5-3フィルタ》
分析ローパス：
-0.25/sqrt(2)
0.5/sqrt(2)
1.5/sqrt(2)
0.5/sqrt(2)
-0.25/sqrt(2)
分析ハイパス：
0.5/sqrt(2)
-1.0/sqrt(2)
0.5/sqrt(2)
《ドベシィ9-7》
分析ローパス：
0.03782846
-0.02384946
-0.11062440
0.37740285
0.85269868
0.37740285
-0.11062440
-0.02384946
0.03782846
分析ハイパス：
0.06543888
-0.04068942
-0.41809227
0.78848562
-0.41809227
-0.04068942
0.06453888
【０１０８】
これらフィルタは、各ローパスフィルタの係数の総和が1/√2となるように正規化されている。縦列は、ダウンサンプリングされていてスケーリングに関わらせる必要がある係数のベクトル、又は、その表題に示されたポジションにおけるスケールJ-1のスケーリング係数の滑らかな近似を計算するためのスケールＪのウェーブレット係数を表している。ポジション”インデックス(index)”は、タイル境界の右側の最初のポジションを表し、本例では”ｋ”に対応する。”left...”及び”right...”で記されたポジション・インデックスは、最初の逆タイル変換ステップのために必要な境界拡張部分から得られた係数を示す。すなわち、図２及び図３に図示したステップは、予め計算したフィルタを適用する単一のステップにまとめることができる。
【０１０９】
これらのフィルタの作用は以下のように説明することができる。以下において、ｓ係数のためのデタイリング・フィルタをｆ[s]、ｄ係数のためのデタイリング・フィルタをｆ[d]とすれば、
【０１１０】
【数５７】
0004248754.tif 000058
のためのデタイリング方法は次の通りである：
【０１１１】
【数５８】
0004248754.tif 000059
ここで＜a，b＞はａとｂのベクトル内積を意味する。
【０１１２】
図５に示した3-9ウェーブレット系又は図８に示した5-3フィルタの場合
【０１１３】
【数５９】
0004248754.tif 000060
【０１１４】
例えば、図５を参照すれば、3-9ウェーブレット系のためのフィルタ係数を近似係数ｓindexの計算のために用いることができる。図６の表は、レベル１のテスト信号に関する実際のスケーリング（ｓ）係数と、その対応ベクトル・ポジションを示す。これらのポジションを図７に表すが、同図には、タイル境界を、それぞれ１個ずつ計２個の円拡張部分で二重化したものが表されている。非対称フィルタに対応する円拡張部が、図５の表の領域５０５に示されている。ｋの係数が修正の対象である。タイル境界の各側のタイルの拡張部分と一緒にまとめたものが示されている。対称フィルタによれば、より良好な近似を得られる。
【０１１５】
図６は、テスト信号に適用される3-9ウェーブレット系用デタイリングの一例を示す。図５の縦列５０１中の各ポジションに関するスケーリング係数に対するフィルタ係数は、図６の縦列５５１中のレベル１信号に対しタイル・ウェーブレット変換を適用することにより計算される、対応したレベル２スケーリング係数を乗じられる。同様に、縦列５０３中に示された各ポジションに関するウェーブレット係数に対するフィルタ係数は、上記したもののインデックスから計算される対応のレベル２ウェーブレット係数を乗じられる。これらの乗算により得らた積が加算されてデタイリング修正値が生成される。このデタイリング修正値５５３が、近似なしのレベル１スケーリング係数の値（縦列５５１）とともに図６に示されているレベル１のｓindex値である。ここに示すように、デタイリング修正値は、デタイリング無しのスケーリング係数よりも、他の係数とよく調和していることは明らかである。
【０１１６】
図８は、5-3ウェーブレット系用のフィルタ係数を示す。図８を見ると、この表には各係数インデックス・ポジションにつき複数のポジション・インデックス列がある。この表の使い方は図５の表と同じである。ただし、レベル１のポジションindex及びレベル１のポジションindex-1で２つのデタイリング修正値を計算する必要がある。追加されたポジションindex-1列は、レベル２係数を生成するため、（ポジションindexを係数に適用した結果として生成された）修正されたｓindex値を含む前レベル（レベル１）の係数に適用される。
【０１１７】
図９及び図１０は、9-7ウェーブレット系の場合のｓ係数及びｄ係数の表をそれぞれ示す。この例では、４つのレベルに対する修正値を生成するための各ｓ係数及び各ｄ係数につき４つのポジション・インデックスがある。
【０１１８】
《デタイリング用フィルタの特徴の説明》
１つの実施例においては、デタイリング用フィルタは以下のような特徴を有する。第１に、デタイリングのためには、分解レベルが上がるにつれてフィルタの数が増加する（フィルタが同一長の場合）。あるレベルＬにおけるフィルタ数は、順変換ローパスフィルタの長さ及びフィルタのタイル内での位置関係によって左右される。すなわち、
レベルＬのフィルタ数＝レベルＬのローパス係数で、レベルＬの
フルフレーム・ローパス係数と相違するローパス係数の個数
これらの相違する係数があるために、デタイリング用フィルタを使用する必要がある。相違する係数が増加すると、必要とされるフィルタも増加する。
【０１１９】
以下はデタイリング用フィルタの特性であるが、順変換ローパスフィルタは奇数長であり、フィルタの中心は奇数ローパス係数に合わせられ、レベルＬのデタイリングであり、タイルは２Mのサイズである（ただしＭ＞Ｌ）。順変換ローパスフィルタがN=2*2*D+1の長さであるならば、タイル境界の左のローパス係数を修正するためのフィルタの数ｎleft(L)は次式のとおりである。
【０１２０】
【数６０】
0004248754.tif 000061
タイル境界の右のローパス係数を修正するためのフィルタの数ｎright(L)は次式のとおりである。
【０１２１】
【数６１】
0004248754.tif 000062
ただし、ｎleft(1)＝Ｄかつｎright(1)＝Ｄ。順変換ローパスフィルタがN=2*(2*D+1)+1の長さであるとする。これは3,9ウェーブレット系のようなフィルタに該当するが、この場合、タイル境界の左のローパス係数を修正するためのフィルタの数ｎleft(L)は次式のとおりである。
【０１２２】
【数６２】
0004248754.tif 000063
ここで、ｎleft(1)＝Ｄかつｎright(1)＝Ｄ＋１。また、タイル境界の右のローパス係数を修正するためのフィルタの数ｎright(L)は次式のとおりである。
【０１２３】
【数６３】
0004248754.tif 000064
ここで、ｎleft(1)＝Ｄかつｎright(1)＝Ｄ＋１。
【０１２４】
ここに述べる１つの実施例におけるデタイリング用フィルタのもう１つの特徴は、元の変換ローパスフィルタの係数の総和が√2、かつハイパスフィルタの係数の総和が０だとすれば、ローパスフィルタの係数の総和が1/(√2)となることである。非ユニタリ変換では、別の正規化因子を用いることができる。
【０１２５】
１つの実施例において、デタイリング用フィルタの３つ目の特徴は、デタイリングのためのフィルタがフルフレーム分解と関連があることである。その関連は、レベルＬのフルフレーム・ディテール係数が０になるように信号ｘを構成することによって説明することができる。この場合、フィルタ係数は次の条件を充足する。
【０１２６】
[境界拡張部の”オーバーラップ・ブロック”に対するタイル・デタイリングフィルタ＝０パディングのあるフルフレーム・フィルタ]
ローパス係数に対する逆変換は次式で表すことができる。
【０１２７】
【数６４】
0004248754.tif 000065
この逆変換に続けてシフト順変換を行うと、これは次式で表すことができる。
【０１２８】
【数６５】
0004248754.tif 000066
逆のシフト順変換、逆変換は次式で表すことができる。
【０１２９】
【数６６】
0004248754.tif 000067
ここで、ＴF*,Fは”オーバーラップ・ブロック”の境界拡張部に対するタイル変換のローパスフィルタであり、Ｆ*は逆変換ローパスフィルタであり、Ｆは順変換ローパスフィルタである。
【０１３０】
《ロッシィな係数再構成》
上述の４ステップを実行後、修正されたディテール係数を実際の量子化と整合させるための係数の量子化を行うことができる。量子化は既知であるから、係数を量子化と整合させることは難しくない。
【０１３１】
１つの実施例においては、切り捨てによって値を所定の整数値集合にまるめることによりロッシィな再構成が行われる。例えば、０から３１までの係数はすべて０に量子化され、３２から６３までの係数はすべて３２に量子化される、等々である。図２３は、量子化しない場合の係数の典型的な分布を示す。各係数の下位ビットが分からない場合でも、その量子化を行うことができる。もう１つの実施例では、各範囲の中心の値を、その係数グループを表すためのより正確な値として用いることもできる。例えば、６４から１２７までの全ての係数が９５に量子化される。値の量子化先の点は、再構成点と呼ばれる。
【０１３２】
画像の差異により、得られる分布は歪んだ形になることもある。例えば、図２３中の曲線２７０１と曲線２７０２を比較されたい。
【０１３３】
１つの実施例では、生成されたデタイリング係数値に基づいて値が選択される。係数が量子化され、その値が６４から１２７までの値であることが判明し、デタイリングによって当該範囲外の値が生成される場合、係数を量子化と整合させるとは、６４から１２７までの範囲内の値を選択することを意味する。例えば、生成された値が１２７を超えるときは１２７にクリップし、生成された値が６４未満のときは６４にクリップすることができる。
【０１３４】
《システムの実施例》
図２４は、画像を圧縮し、次いで画像又はその同じ場所を伸長するためのシステムを示す。図２４を参照すると、本システムは圧縮フロントエンド２２０１を有し、これは画像データを取り込んでタイルに分割するためのタイリング・ブロック２２０２を持ち、これらタイルは別々に圧縮ブロック２２０３1〜２２０３Nによって圧縮される。ここで、Ｎはタイルの総数である。選択ブロック２２０４は、複数の伸長モードから１つのモードを選択する。各モードは、図１１乃至図１５に示す各システムによって表すことができる。これらモードには、デタイリングを行わずに画像全体を伸長するモード、デタイリングを行って、又は行わないで１つの対象領域を伸長するモード、１つのタイルだけを伸長するモードがある。
【０１３５】
図１１は、画像を圧縮し、次いで画像を伸長するためのシステムを示す。図１１を参照すると、本システムはタイリング・ブロック９０１、複数の圧縮ブロック９０２1〜９０２N（圧縮器）、及び、伸長ブロック９０３1〜９０３N（伸長器）からなる。タイリング・ブロック９０１は、画像データを取り込み、その画像データをタイル１〜Ｎに分割する。タイル１〜Ｎはそれぞれ圧縮ブロック９０２1〜９０２Nに送られ取り込まれる。
【０１３６】
圧縮ブロック９０２1〜９０２Nは、個々のタイルを別々に圧縮する。圧縮データは通信路へ送られて（少なくとも一時的に）記憶され、あるいは、圧縮データは（少なくとも一時的に）記憶される。各タイルの圧縮データは、伸長ブロック９０３1〜９０３Nへ送られ取り込まれる。例えば、圧縮ブロック９０２1で圧縮された１タイル分のデータが伸長ブロック９０３1に送られる。各伸長ブロック９０３1〜９０３Nは、それぞれのタイルの圧縮データを他の伸長ブロックとは無関係に伸長する。
【０１３７】
図１２は、画像を圧縮し、次いで画像を伸長するためのシステムを示す。図１２を参照すると、本システムはタイリング・ブロック９０１と、複数の圧縮ブロック９０２1〜９０２N及び伸長ブロック１００３1〜１００３Nからなる。タイリング・ブロック９１は画像データを取り込み、同画像データをタイル１〜Ｎに分割する。各タイル１〜Ｎは、圧縮ブロック９０２1〜９０２Nの１つへ送られ取り込まれる。圧縮ブロック９０２1〜９０２Nは、互いに独立して各タイルを圧縮する。圧縮データは通信路へ送られて（少なくとも一時的に）記憶され、あるいは、圧縮データは（少なくとも一時的に）記憶される。各タイルの圧縮データは伸長ブロック１００３1〜１００３Nへ送られ取り込まれる。
【０１３８】
例えば、圧縮ブロック９０２1により圧縮されたタイル１の圧縮データは伸長ブロック１００３1へ送られる。各伸長ブロック１００３1〜１００３Nは、各々のタイルの圧縮データを、他の伸長ブロックからの情報を利用して伸長する。１つの実施例にあっては、伸長ブロック間で共有される情報は、前述のデタイリングの実行に利用される近傍情報である。そして、伸長データは出力され、不図示の再合成器によって１つの画像に再合成されることになろう。なお、タイルの画像への再合成については、本発明を難解にしないため説明しない。以上のように、図１２のシステムは、タイルを別々に圧縮してからデタイリングを利用し画像全体を伸長する。このようなケースでは、特殊なフィルタ係数を用いることによってデタイリングを行うことができる。すなわち、フィルタにそのような特性を持たせることによって、デタイリングが行われることになる。このデタイリングは省略可能であり、また、図１２のデタイリングを行うために、それ以外の圧縮／伸長動作に関し余分な費用／手間が必要となることはない。
【０１３９】
図１３は、画像を圧縮し、次いで画像を伸長するためのシステムを示す。図１３を参照すると、本システムはタイリング・ブロック９０１と、複数の圧縮ブロック９０２1〜９０２N及び伸長ブロック１１０３1〜１１０３3からなる。図１３のシステムは、伸長ブロック１１０３1〜１１０３3が画像中の１つの対象領域を伸長することを別にすれば、図１１のシステムと同様に動作する。
【０１４０】
図１４は、画像を圧縮し、次いで画像を伸長するためのシステムを示す。図１４を参照とすると、本システムはタイリング・ブロック９０１と、複数の圧縮ブロック９０２1〜９０２N及び伸長ブロック１２０３1〜１２０３Nからなる。図１４のシステムは、伸長ブロック１２０３1〜１２０３Nが画像中の１つの対象領域を伸長すること以外は、図１２のシステムと同様に動作する。前述のように、デタイリングを行う図１２及び図１４において、デタイリングを行うために、それ以外の圧縮／伸長動作に関し余分な費用／手間がかかることはない。
【０１４１】
図１５は、画像を圧縮し、次いで画像を伸長するためのシステムを示す。図１５を参照すると、本システムはタイリング・ブロック９０１、複数の圧縮ブロック９０２1〜９０２N、及び、伸長ブロック１３０１1からなる。これらの要素は、前述の要素と同様に動作する。したがって、本システムは１つのタイルだけを独立して伸長する。前述のように、デタイリングを行う図１２及び図１４において、デタイリングを行うために、それ以外の圧縮／伸長動作に関し余分な費用／手間がかかることはない。
【０１４２】
図１６は、圧縮システムの一実施例を示す。図１６を参照すると、多重レベル順ウェーブレット変換器１４０１は画素１４００を取り込み係数１４０２を生成する。多重レベル順ウェーブレット変換器１４０１は、それら係数を生成するための複数のレベル１〜Ｎのウェーブレット変換器からなる。符号器１４０３がその係数を取り込むように接続され、同係数に応答して符号化データ１４０４を生成する。符号器１４０３は、係数をブロック、ツリー、又は、それ以外のグループに分割してもよい。
【０１４３】
１つの実施例では、全てのエントロピー符号化がバイナリ・エントロピー符号器によって行われる。１つの実施例では、このエントロピー符号器はＱ−符号器、ＱＭ−符号器、ＭＱ−符号器、有限ステートマシン符号器、高速並列符号器などのいずれかである。符号器を１つだけ使用して単一の出力符号ストリームを発生してもよい。もう１つの選択肢として、複数の（物理的な又は仮想的な）符号器を用いて複数の（物理的な又は仮想的な）データ・ストリームを発生してもよい。
【０１４４】
１つの実施例では、バイナリ・エントロピー符号器はＱ−符号器である。Ｑ−符号器の詳細を知るには「Pennebaker，W．B．ほか”An  Overview  of  the  Basic  Principles  of  the  Q-coder  Adapdve  Binary  Arithmetic”，IBM  Journal  of  Research  and  Development，Vol.32，pg．717-26，1988」を参照されたい。もう１つの実施例では、バイナリ・エントロピー符号器はＱＭ−符号器を使用するが、これは周知の効率バイナリ・エントロピー符号器である。ＱＭ−符号器は、ＪＰＥＧ標準及びＪＢＩＧ標準の両方に使用されている。ＪＰＥＧ２０００及びＪＢＩＧ２標準用に提案されたＱＭ−符号器も使用できる。
【０１４５】
バイナリ・エントロピー符号器は、有限ステートマシン（ＦＳＭ）符号器でもよい。１つの実施例では、本発明の有限ステートマシン符号器は、１９９３年１２月２１日に発行された”Method  and  Apparatus  for  Entropy  Coding”なる表題の米国特許第5,272,478号に記載されているＢ−符号器である。
【０１４６】
１つの実施例では、バイナリ・エントロピー符号器は高速並列符号器である。ＱＭ−符号器もＦＳＭ符号器も、１ビットずつ符号化する必要がある。高速並列符号器は数ビットを並列に処理する。１つの実施例では、高速並列符号器は、圧縮性能を犠牲にすることなく、ＶＬＳＩ又はマルチプロセッサ・コンピュータで実現される。本発明に利用できる高速並列符号器の一例が、１９９５年１月１０日に発行された”Method  and  Apparatus  for  Parallel  Decoding  and  Encoding  of  Data”なる表題の米国特許第5381,145号に記載されている。
【０１４７】
殆どの効率バイナリ・エントロピー符号器は、基本フィードバック・ループによって速度が制限される。可能な解決策の１つは、入力データストリームを複数のストリームに分割し、それらストリームを並列の複数の符号器に入力する方法である。それら符号器の出力は複数の可変長符号化データ・ストリームである。このようなアプローチにおける問題点は、１本の通信路でどのようにしてデータを伝送するかである。米国特許第5,381,145号に記載されている高速並列符号器は、複数の符号化データストリームをインターリーブする方法によって、その問題点を解決する。
【０１４８】
コンテクストの多くは確率が一定しているであろ。そうならば、Ｂ−符号器のような有限ステートマシン符号器が特に有効である。なお、システムが０．５に近い確率を利用する場合、前記米国特許に開示された高速並列符号器と有限ステートマシン符号器は共にＱ−符号器よりも効率よく動作する。
【０１４９】
もう１つの実施例では、バイナリ・エントロピー符号器と高速ｍ元符号器の両方が用いられる。この高速ｍ元符号器はハフマン符号器でよい。
【０１５０】
図１７は、前記図面中に示した伸長ブロックの一実施例を示す。図１７を参照すると、符号化データ１５０１は復号器１５０２に取り込まれて係数１５０３に復号化される。この係数１５０３は、多重レベル逆変換器１５０４に取り込まれ、画素１５０５に変換される。多重レベル逆変換器１５０４は、複数のレベル１〜Ｎの逆ウェーブレット変換器からなる。
【０１５１】
図１８は、係数修正によりデタイリングを行う、あるレベルの逆ウェーブレット変換器の一実施例を示す。図１８を参照すると、この逆ウェーブレット変換器は、係数調整ブロック１６０１と逆ウェーブレット変換ブロック１６０２からなる。係数調整ブロック１６０１は、係数１６１０とオーバーラップ情報１６１１を取り込み、それらに応答してデタイリングされた係数１６１２を生成する。逆ウェーブレット変換ブロック１６０２は、このデタイリングされた係数１６１２を取り込む。逆ウェーブレット変換ブロック１６０２は、２次元逆ウェーブレット変換器とすることができる。逆ウェーブレット変換ブロック１６０２は、デタイリングされた係数１６１２に応答して、サンプル１６１３を生成する。サンプル１６１３は、画素であるか、前レベルの係数である。
【０１５２】
図１９は、サンプルの置き換えによってデタイリングを行う、１レベルの逆ウェーブレット変換器の別の実施例を示す。図１９を参照すると、この逆ウェーブレット変換器は、逆ウェーブレット変換ブロック１７０１と、スムーズ(smooth)逆変換ブロック１７０２を有する。逆ウェーブレット変換ブロック１７０１は、係数１７０３を取り込んで、その出力１７１０にサンプルを生成する。１つの実施例では、逆ウェーブレット変換ブロック１７０１は２次元逆変換器である。スムーズ逆変換ブロック１７０２も係数１７０３とオーバーラップ情報１７０４を取り込み、その出力１７１１にサンプルを生成する。１つの実施例では、スムーズ逆変換ブロック１７０２は、近傍情報を利用してデタイリングを行う。別の実施例では、スムーズ逆変換ブロック１７０２に用いられるフィルタ係数は境界係数に対しデタイリング効果をもたらす。スイッチ１７０６は、逆ウェーブレット変換ブロック１７０１の出力とスムーズ逆変換ブロック１７０２の出力の一方を、１レベルの逆ウェーブレット変換器の出力サンプルとして選択する。スイッチ１７０６は制御ブロック１７０５により制御される。１つの実施例では、制御ブロック１７０５は、個々のサンプルがタイル境界に影響を受けるか判定する。そのサンプルがタイル境界による影響を受けないときには、制御ブロック１７０５は逆ウェーブレット変換ブロック１７０１から出力１７１０に出されるサンプルをスイッチ１７０６に選択させる。一方、制御ブロック１７０５は、そのサンプルがタイル境界による影響を受けると判定したときには、スムーズ逆変換ブロック１７０２から出力１７１１に出されるサンプルをスイッチ１７０６に選択させる。これらサンプルは、画素又は前レベルの係数である。
【０１５３】
図２０は、Le  Gall-Tabatabiの4,4順変換の一実施例を示す。図２１は、4,4逆変換の一実施例を示す。エネルギー保存のための正規化因子を無視し、また、Ｎをインデックス（Ｎ＝０，２，４，６．．．）とする。
【０１５４】
スムーズ係数Ｓn及びディテール係数Ｄn並びに入力Ｘnは、下記式によって表すことができる。
【０１５５】
【数６７】
0004248754.tif 000068
図２０及び図２１を参照すると、太線は３を掛けることを意味し、細線は１を掛けることを意味する。正負符号（＋又は−）はＤ係数の場合とＳ係数の場合とで異なる。
【０１５６】
この変換の生成は、１つの例によって説明することができる。タイルの信号ｘをTiled  X:0...0|100...100とする。ここで”|”は境界であり、0，100は（任意に選んだ）画素値である。この場合、順変換を適用すると、その結果はTiled  S:0...0|400...400とTiled  D:0...O|O...0となる。
【０１５７】
フルフレーム係数は次の通りである。
Fullframe  S:0...0  -100|500  400...400
(Fullframe  D:0...0  -100|-100  0...0)
フルフレームＳに逆変換を適用すると、次の結果が得られる。
【０１５８】
【数６８】
0004248754.tif 000069
この再構成は”リンギング”があり、タイル境界の周囲は”尖鋭(peaky)”である。
【０１５９】
別のフェーズを使った場合は次の通りである。
他フェーズのfullframe  S:0...0  200|400...4OO
(他フェーズのfullframe  D:0...0  0|0...0)
そして、この他フェーズのフルフレームＳに逆変換を適用すると、次のフルフレームＳが得られる。
【０１６０】
【数６９】
0004248754.tif 000070
この再構成は、タイル境界が滑らかである。
【０１６１】
図２２の（Ａ）乃至（Ｄ）は、デタイリングを行う順変換及び逆変換を示す。図２２（Ａ）には多重レベルの順タイル変換が示されている。図２２（Ａ）を参照すれば、順変換は、レベル１の順タイル離散ウェーブレット変換(DWT)からレベルＪの順タイルＤＷＴからなる。レベルＪの順タイルＤＷＴの出力は係数の集合で、これが係数２００３である。量子化・圧縮ブロック２００４は、係数２００３を取り込み、それを量子化し、圧縮して圧縮データ２００５とする。
【０１６２】
図２２（Ｂ）、（Ｃ）及び（Ｄ）は異なったレベルの逆タイルＤＷＴを示す。なお、３レベル分を示したが、各レベル毎に対応した１つの逆タイルＤＷＴがある。どのレベルも同一であるので、１つのレベルについてのみ説明する。
【０１６３】
逆タイルＤＷＴ２０２０は係数に対する逆変換を実行する。逆タイルＤＷＴ２０２０の出力はサンプルの集合からなる。このサンプルは、タイル境界修正ブロック２０２１によってタイル境界修正を施される。境界にないサンプルは修正されることなく量子化ブロック２０２２へ送られ、この量子化ブロックはクリッピング処理を行って、そのサンプルを量子化する。量子化されたサンプルは逆タイル変換出力として出力される。境界に生じたサンプルは順タイルＤＷＴ２０２３へ送られ、この順タイルＤＷＴ２０２３はそのサンプルに対する順タイル変換を行って係数の集合を生成する。この係数は量子化ブロック２０２４に送られ、同ブロックはその係数に対する量子化処理を実行する。１つの実施例では、この量子化処理はクリッピング処理である。量子化された係数は逆タイルＤＷＴブロック２０２５へ送られ、この逆タイルＤＷＴブロック２０２５はその係数に対し逆タイルＤＷＴを実行してサンプルを生成し、このサンプルは逆タイル変換出力として出力される。
【０１６４】
以上の説明から当業者には本発明の様々な変更及び修正は明白であるから、説明のために図示及び説明したいずれの実施例も限定的にとらえるべきでなく、各実施例に関し詳細に述べた内容は特許請求の範囲を限定することを意図するものではない。
【０１６５】
【発明の効果】
以上に述べたように、本発明の方法及び装置は、タイル境界歪みを除去してタイル境界における画質劣化を排除することができ、符号化時、ロスレス復号化時及び高ビットレート復号時のコストが皆無であり、特定の画像モデルに依存しないため、ロッシィ・ウェーブレット圧縮によってもたらされる平滑化と調和した平滑化をもたらすことができる、等々の多くの効果を得られるものである。
【図面の簡単な説明】
【図１】（Ａ）タイルの変換により計算されるローパス係数の概要を示す。
（Ｂ）スケーリング係数を求めるフルフレームＤＷＴ（デタイリング無し）のための順変換処理を示す。
（Ｃ）シフト・フルフレームＤＷＴのスケーリング係数を求めるための順変換処理を示す。
【図２】  タイル境界を滑らかにするためのプロセスの一実施例を示す。
【図３】  図２のプロセスの動作を模式的に示す。
【図４】  タイル境界を滑らかにするためのプロセスの他の実施例を示す。
【図５】  3-9ウェーブレット系のためのスケールL=2のデタイリング用フィルタ係数の一実施例を示す。
【図６】  レベル１のSindex値に対するデタイリング修正値を、修正なしのレベル１のスケーリング係数の値とともに示す。
【図７】  ２つの円拡張部で二重化されたタイル境界とポジションを示す。
【図８】  5-3ウェーブレット系のためのスケールL=2のデタイリング用フィルタ係数の一例を示す。
【図９】  ドベシィの9-7ウェーブレット変換系のためのスケールL=2のデタイリング用フィルタ係数の一例を示す。
【図１０】  ドベシィの9-7ウェーブレット変換系のためのスケールL=2のデタイリング用フィルタ係数の一例を示す。
【図１１】  画像をタイル単位で別々に圧縮した後に各タイル毎に伸長するためのシステムの一実施例を示す。
【図１２】  画像を圧縮し、次にデタイリングを含む画像伸長を行うためのシステムの一実施例を示す。
【図１３】  画像を圧縮し、次に画像の対象領域を伸長するためのシステムの一実施例を示す。
【図１４】  画像を圧縮し、次に画像の対象領域のデタイリングを含む伸長を行うためのシステムの一実施例を示す。
【図１５】  画像を圧縮し、次に画像を伸長するためのシステムを示す。
【図１６】  圧縮システムの一実施例を示す。
【図１７】  伸長ブロックの一実施例を示す。
【図１８】  係数の修正によりデタイリングを行う逆ウェーブレット変換の１レベルの実施例を示す。
【図１９】  サンプルの置き換えによってデタイリングを行う逆ウェーブレット変換の１レベルの他の実施例を示す。
【図２０】  順4,4変換の一実施例を示す。
【図２１】  逆4,4変換の一実施例を示す。
【図２２】  デタイリングを行う順変換及び逆変換を示す。
【図２３】  量子化を行わない係数の典型的な分布を示す。
【図２４】  画像を圧縮した後に伸長するためのシステムを示す。
【図２５】  デタイリングを行わない圧縮／伸長システムのための擬似コードの一例を示す。
【図２６】  デタイリングを行う圧縮／伸長システムのための擬似コードの一例を示す。
【図２７】  デタイリングを行う圧縮／伸長システムのための擬似コードの他の例を示す。
【図２８】  デタイリングを行う圧縮／伸長システムのためのMatlabコードの例を示す。
【図２９】  図２８の続きを示す。
【図３０】  図２９の続きを示す。
【符号の説明】
９０１  タイリング・ブロック
９０２  圧縮ブロック（圧縮器）
９０３  伸長ブロック（伸長器）
１００３  伸長ブロック（伸長器）
１１０３  伸長ブロック（伸長器）
１２０３  伸長ブロック（伸長器）
１３０３  伸長ブロック（伸長器）
１４０１  多重レベル順ウェーブレット変換器
１４０３  符号器
１５０２  復号器
１５０４  多重レベル逆ウェーブレット変換器
１６０１  係数調整ブロック
１６０２  逆ウェーブレット変換ブロック
１７０１  逆ウェーブレット変換ブロック
１７０２  スムーズ逆変換ブロック
１７０５  制御ブロック
１７０６  スイッチ
２２０２  タイリング・ブロック
２２０４  選択ブロック
【図１】
0004248754.tif 000071
【図２】
0004248754.tif 000072
【図３】
0004248754.tif 000073
【図４】
0004248754.tif 000074
【図５】
0004248754.tif 000075
【図６】
0004248754.tif 000076
【図７】
0004248754.tif 000077
【図８】
0004248754.tif 000078
【図９】
0004248754.tif 000079
【図１０】
0004248754.tif 000080
【図１１】
0004248754.tif 000081
【図１２】
0004248754.tif 000082
【図１３】
0004248754.tif 000083
【図１４】
0004248754.tif 000084
【図１５】
0004248754.tif 000085
【図１６】
0004248754.tif 000086
【図１７】
0004248754.tif 000087
【図１８】
0004248754.tif 000088
【図１９】
0004248754.tif 000089
【図２０】
0004248754.tif 000090
【図２１】
0004248754.tif 000091
【図２２】
0004248754.tif 000092
【図２３】
0004248754.tif 000093
【図２４】
0004248754.tif 000094
【図２５】
0004248754.tif 000095
【図２６】
0004248754.tif 000096
【図２７】
0004248754.tif 000097
【図２８】
0004248754.tif 000098
【図２９】
0004248754.tif 000099
【図３０】
0004248754.tif 000100