(57)【特許請求の範囲】
【請求項１】
画像データを複数のタイルに分割し、タイルごとに符号化する画像符号化装置であって、
タイルごとにウェーブレット変換を行い、変換係数データを得る変換手段と、
タイルごとに、該変換手段で得られた変換係数データを符号化する符号化手段と、を備え、
符号化対象のタイルに対して、隣接する隣接タイルが存在する場合は、
前記変換手段は、前記符号化対象のタイルの画素データと、前記隣接タイルのうち前記符号化対象のタイルと隣接する複数の画素データと、を参照して、前記ウェーブレット変換を行うことにより、変換係数データを取得し、
前記符号化手段は、前記隣接タイルの前記複数の画素データを参照して得られた前記隣接タイルに対応する変換係数データのうち、逆ウェーブレット変換により変換係数データから画素データを取得する際に自タイルの画素データを取得するために必要となる変換係数データを符号化し、前記隣接タイルに対応する変換係数データの一部は符号化しない
ことを特徴とする画像符号化装置。
【請求項２】
前記符号化手段は、前記変換手段で得られた変換係数データを量子化し、量子化後の係数データを符号化することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記変換手段は、複数回ウェーブレット変換を行って、複数のサブバンドの変換係数データを取得し、
前記符号化手段は、前記複数のサブバンドのうち、分解レベルが最上位の低周波成分のサブバンドと、高周波成分のサブバンドとを符号化することを特徴とする請求項１に記載の画像符号化装置。
【請求項４】
前記符号化手段は、前記隣接タイル内の変換係数データのうち、前記符号化対象のタイルとのタイル境界に隣接する変換係数データを、前記符号化対象のタイルの垂直または水平方向の画素数に応じた数、符号化することを特徴とする請求項１に記載の画像符号化装置。
【請求項５】
前記符号化手段は、前記隣接タイル内の変換係数データのうち、前記符号化対象のタイルとのタイル境界に隣接する変換係数データを、前記変換手段によるウェーブレット変換の回数に応じた数、符号化することを特徴とする請求項１に記載の画像符号化装置。
【請求項６】
前記符号化対象のタイルの水平または垂直方向の画素数に応じて、前記符号化対象のタイルと共に前記変換手段によりウェーブレット変換を行う前記隣接タイルの画素数が決定されることを特徴とする請求項１に記載の画像符号化装置。
【請求項７】
前記符号化対象のタイルの水平または垂直方向の画素数を所定の数で割ったときの余りに応じて、前記符号化対象のタイルと共に前記変換手段によりウェーブレット変換を行う前記隣接タイルの画素数が決定されることを特徴とする請求項６に記載の画像符号化装置。
【請求項８】
前記符号化対象のタイルの水平または垂直方向の画素数に応じて、前記符号化手段により符号化する前記隣接タイル内の変換係数データが決定されることを特徴とする請求項１に記載の画像符号化装置。
【請求項９】
前記符号化対象のタイルの水平または垂直方向の画素数を所定の数で割ったときの余りに応じて、前記符号化手段により符号化する前記隣接タイル内の変換係数データが決定されることを特徴とする請求項８に記載の画像符号化装置。
【請求項１０】
さらに前記ウェーブレット変換で得る変換係数データの解像度レベル数、及び、圧縮率を設定する設定手段を有し、
前記変換手段は、前記設定手段で設定された圧縮率が予め設定された閾値より小さい場合、前記符号化対象のタイルに対してウェーブレット変換を行う際に、前記符号化対象のタイル外には当該符号化対象のタイル内の画素が折り返し存在するものとして、前記設定手段で設定した解像度レベルの変換係数データを得るためのウェーブレット変換を行い、前記符号化対象のタイル内から生成された変換係数データを量子化手段に供給し、
前記設定手段で設定された圧縮率が予め設定された閾値以上の場合、前記設定手段で設定した解像度レベルの変換係数データを得るため、前記符号化対象のタイルおよび前記符号化対象のタイルに隣接する隣接タイルの画素データを参照してウェーブレット変換を行い、
前記隣接タイルから得られた変換係数データのうち前記符号化対象のタイルと前記隣接タイルとの境界に最近接する各解像度レベルの変換係数データと、前記符号化対象のタイルから得られた変換係数データとを、前記符号化対象のタイルに対応する量子化対象の変換係数データとして前記量子化手段に供給する、
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項１１】
前記設定手段で設定された圧縮率と前記閾値との比較の結果を示す情報を、符号化ストリームのヘッダに格納して出力することを特徴とする請求項１０に記載の画像符号化装置。
【請求項１２】
前記変換手段は、５／３タップフィルタを用いてウェーブレット変換を行い、
前記隣接タイルから得られた変換係数データのうち、各解像度レベルの高周波の変換係数データを前記量子化手段に供給することを特徴とする請求項１０に記載の画像符号化装置。
【請求項１３】
画像データを複数のタイルに分割し、タイルごとに符号化する画像符号化装置の制御方法であって、
変換手段が、タイルごとにウェーブレット変換を行い、変換係数データを得る変換工程と、
符号化手段が、タイルごとに、該変換手段で得られた変換係数データを符号化する符号化工程と、を備え、
符号化対象のタイルに対して、隣接する隣接タイルが存在する場合は、
前記変換工程では、前記符号化対象のタイルの画素データと、前記隣接タイルのうち前記符号化対象のタイルと隣接する複数の画素データと、を参照して、前記ウェーブレット変換を行うことにより、変換係数データを取得し、
前記符号化工程では、前記隣接タイルの前記複数の画素データを参照して得られた前記隣接タイルに対応する変換係数データのうち、逆ウェーブレット変換により変換係数データから画素データを取得する際に自タイルの画素データを取得するために必要となる変換係数データを符号化し、前記隣接タイルに対応する変換係数データの一部は符号化しない
ことを特徴とする画像符号化装置の制御方法。
【請求項１４】
コンピュータが読み込み実行することで、前記コンピュータを、請求項１乃至１２のいずれか１項に記載の画像符号化装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像データの符号化技術に関するものである。
【背景技術】
【０００２】
昨今、デジタルカメラやデジタルカムコーダー等のデジタル撮像装置の発展に伴い、様々な画像データの圧縮符号化方式が検討されている。
【０００３】
代表的な圧縮符号化方式としてはＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）２０００が挙げられる。ＪＰＥＧ２０００では、符号化対象の画像は少なくとも１以上のタイルに分割される。そしてタイルを単位に、ウェーブレット変換、量子化、エントロピー符号化が行われる。ウェーブレット変換は、例えば可逆５／３タップフィルタが用いられる。このフィルタでは、連続する３個の画素から１個のハイパス係数を生成し、連続する５個の画素から１個のローパス係数を生成する。従って、タイルの境界の画素をフィルタ処理する場合には、そのタイル外の画素を必要とする。タイル外の画素として、タイル内の画素を代用する提案が知られている（特許文献１）。この特許文献１は、着目タイルの境界の画素の位置を折り返し位置とし、タイル外の画素や係数データとして、タイル内の画素や係数データを利用するものである。
【０００４】
しかし、着目タイル外の現実に存在する画素や係数データを参照してフィルタ処理するわけではない。それ故、タイル境界の量子化後の係数データは、実際にタイル外の画素を参照した場合の係数データとの間は差が生じる。この差は、復号して得られる画像におけるタイルの連続性が失われることを意味し、結果的に、タイル境界にノイズとなって現れる。
【０００５】
かかる問題に対し、特許文献２は、着目タイルを符号化するとき、その着目タイルに隣接するタイル内の画素も含めて、符号化処理を行う技術を開示している。この特許文献２によれば、着目タイルの復号処理では、その着目タイルの画素と、その隣接タイルの境界近傍の画素が得られる。それ故、隣接タイルの画素を除去した結果を、着目タイルの復号結果の画像とする。この特許文献２によれば、隣り合うタイルの連続性が維持されるのでタイル境界でのノイズの発生を抑制できる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−１４２６１５号公報
【特許文献２】特開２００４−５６２１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記特許文献２は画質劣化を抑制できるものの、着目タイルを符号化する際には、その隣接タイルの画素を含めて符号化する必要がある。それ故、特許文献２で生成される符号化データ量は、特許文献１のそれよりも無視できないくらい多くなる。つまり、特許文献２の技術を用いて、特許文献１と同等の符号量とするためには、特許文献２における量子化ステップを、特許文献１のそれよりも大きくしなければならない。しかし、量子化ステップが大きいほど、画質劣化が大きい。
【０００８】
本発明は、係る点に鑑みなされたものであり、タイル分割をした際のタイルの連続性が維持され、かつ、生成する符号量も特許文献２よりは遥かに少なくすることを可能にする技術を提供しようとするものである。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
画像データを複数のタイルに分割し、タイルごとに符号化する画像符号化装置であって、
タイルごとにウェーブレット変換を行い、変換係数データを得る変換手段と、
タイルごとに、該変換手段で得られた変換係数データを符号化する符号化手段と、を備え、
符号化対象のタイルに対して、隣接する隣接タイルが存在する場合は、
前記変換手段は、前記符号化対象のタイルの画素データと、前記隣接タイルのうち前記符号化対象のタイルと隣接する複数の画素データと、を参照して、前記ウェーブレット変換を行うことにより、変換係数データを取得し、
前記符号化手段は、前記隣接タイルの前記複数の画素データを参照して得られた前記隣接タイルに対応する変換係数データのうち、逆ウェーブレット変換により変換係数データから画素データを取得する際に自タイルの画素データを取得するために必要となる変換係数データを符号化し、前記隣接タイルに対応する変換係数データの一部は符号化しないことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、タイル分割による符号量の増加を抑えつつ、タイル境界の画質劣化を抑えることができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態における画像符号化部のブロック構成図。
【図２】第１の実施形態におけるタイル入力法を説明するための図。
【図３】第１の実施形態におけるウェーブレット変換処理を示す図。
【図４】第１の実施形態におけるウェーブレット変換を３回行う場合の実行法を説明するための図。
【図５】第１の実施形態における符号化処理の手順を示すフローチャート。
【図６】第１の実施形態における復号部のブロック構成図。
【図７】第１の実施形態における逆ウェーブレット変換法を説明するための図。
【図８】第２の実施形態における画像符号化部のブロック構成図。
【図９】第２の実施形態における符号化装置の処理手順を示すフローチャート。
【図１０】ウェーブレット変換を３回を行う場合の隣接タイルからオーバーラップして入力される画素数との関係を示す図。
【図１１Ａ】、
【図１１Ｂ】、
【図１１Ｃ】、
【図１１Ｄ】、
【図１１Ｅ】、
【図１１Ｆ】、
【図１１Ｇ】、
【図１１Ｈ】ウェーブレット変換を３回を行う場合の実行法を説明するための図。
【発明を実施するための形態】
【００１２】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の例を示すもので、特許請求の範囲に記載した構成の具体的な実施形態の一つである。
【００１３】
［第１の実施形態］
本第１の実施形態は、デジタルカメラ等の撮像装置に適用した例を説明する。図１は、撮像装置における画像符号化部１００のブロック構成図である。
【００１４】
画像符号化部１００は、図示のように、フレームメモリ１０１、データ入力制御部１０２、ウェーブレット変換部１０３、量子化部１０４、エントロピー符号化部１０５、設定部１０６を有する。なお、第１実施形態では、符号化方式の一例としてＪＰＥＧ２０００を用いた例を説明するが、特に符号化方式については問わない。以下、図１の構成に基づき、符号化処理の処理手順を説明する。ここで、設定部１０６は、不図示の操作部からの指示に従い、符号化対象の画像データをいくつのタイルに分割するか、さらには、ウェーブレット変換を何回行うか（分解レベル数いくつにするか）を決定する。そして、設定部１０６は、１タイルのサイズや、詳細は後述するが、オーバーラップ画素数、量子化対象の変換係数データを決定する。
【００１５】
本実施形態では、タイルの分割数や、分解レベル数を、操作部からの指示に従って決定するものとするが、撮像装置のシステム制御部（不図示）が、所定の条件に基づいて自動的に決定するようにしてもよい。
【００１６】
また、本実施形態において、タイルとは、１つのフレーム画像を複数に分割した際の、分割画像を示している。
【００１７】
不図示の操作部から記録の開始指示があると、フレームメモリ１０１には、不図示の撮像部で撮像した画像データが撮像順に入力され、格納される。データ入力制御部１０２は、フレームメモリ１０１に格納された１フレームの画像データを複数のタイルに分割する。このタイルの分割数並びに各タイルのサイズは、設定部１０６からの設定に依存する。以降、分割されたタイルが表す部分画像データをタイル画像データという。データ入力制御部１０２は、各タイル画像データを、予め定められた順序に従いウェーブレット変換部１０３に供給する。詳細は後述するが、入力データ制御部１０２は、或る着目タイル画像データをウェーブレット変換部１０３に供給する際には、その着目タイル画像データだけでなく、タイル境界から予め設定された距離内に位置する隣接タイル画像データ内の画素データも供給する。以降、隣接タイル画像データ内の、タイル境界から予め設定された距離内に位置する画素データを、タイル周辺画素データという。上記の通りなので、入力データ制御部１０２からウェーブレット変換部１０３に供給される各画像データは、互いオーバーラップしている。
【００１８】
ウェーブレット変換部１０３は、フレームメモリ１０１から入力されたタイル画像データとタイル周辺画素データに対して、ウェーブレット変換を実行して得た変換係数データを量子化部１０４に送る。ただし、このウェーブレット変換の具体的な実行方法については後述する。
【００１９】
量子化部１０４は、ウェーブレット変換部１０３から送られた変換係数データを、量子化パラメータを用いて量子化し、エントロピー符号化部１０５に送る。この際、タイル画像の間で、同一サブバンドに与える量子化パラメータを同一あるいは近い値にしておく。こうすることでタイル画像間における画質劣化を均一化し、タイル境界における画質劣化を目立たなくすることができる。
【００２０】
エントロピー符号化部１０５は、量子化部１０４による量子化後の変換係数データを、サブバンドごとに、エントロピー符号化を行い、その符号化データを出力する。エントロピー符号化としては、ＥＢＣＯＴ（Ｅｍｂｅｄｄｅｄ  Ｂｌｏｃｋ  Ｃｏｄｉｎｇ  ｗｉｔｈ  Ｏｐｔｉｍｉｚｅｄ  Ｔｒｕｎｃａｔｉｏｎ）などのエントロピー符号化を施して、符号化データとして出力する。
【００２１】
次に、ウェーブレット変換部１０３に供給される、タイル画像データとタイル周辺画素データの関係を図２を用いて説明する。
【００２２】
図２（ａ）は１フレームの画像データを水平方向３分割、垂直方向３分割することで、１フレームから９つのタイル画像データＡ〜Ｉを生成する例を示している。データ入力制御部１０２は、タイル画像データＡ→Ｂ→Ｃ→Ｄ→…→Ｉと、タイルを単位とするラスタースキャン順にウェーブレット変換部１０３に供給する。また、既に説明したように、ウェーブレット変換部１０２は、１つのタイル画像データをウェーブレット変換部１０３に供給する際、そのタイル周辺画素データもウェーブレット変換部１０３に供給する。
【００２３】
ここで図２（ｂ）のタイル画像データＡを例に挙げ、タイル周辺画素データとの関係を説明する。タイル画像データＡは、フレーム画像中の左上に位置している。それ故、タイル画像データＡの隣接するタイル画像データは、タイル画像データＢ，Ｄ，Ｅとなる。そこでデータ入力制御部１０２はタイル画像データＡをウェーブレット変換部１０３に供給する際、図２（ｂ）の斜線Ｐで示した部分の画素データをタイル周辺画素データとしてウェーブレット変換部１０２に入力する。同様の考えをタイル画像データＡ〜Ｉ全てのタイルで当てはめると、各タイル画像データに対するタイル周辺画素データは図２（ｃ）の斜線Ｑで示される。なお、タイル周辺画素データＰの水平、垂直方向の距離（画素数）は、ウェーブレット変換の回数、着目タイル画像データのサイズと、隣接するタイル画像の位置によって異なる。また、タイル周辺画素データＰの水平、垂直方向の画素数を、オーバーラップ画素数と呼ぶ。
【００２４】
ウェーブレット変換を３回までの行う場合の、オーバーラップ画素数と、着目タイルの端の画素を復号するのに必要な隣接タイルの変換係数データの数の関係を図１０（ａ）、（ｂ）に示す。
【００２５】
図１０（ａ），（ｂ）には、隣接タイルの画素を加えてウェーブレット変換した際に取得した隣接タイルの変換係数データのうち、符号化対象の着目タイルの画素を復号する際に必要となる変換係数データの数を、サブサブバンド毎に記載している。本実施形態では、ウェーブレット変換が１回の場合は、サブバンド１Ｈ，１Ｌの変換係数データが生成され、サブバンド１Ｈ、１Ｌの変換係数データが符号化される。ウェーブレット変換が２回の場合は、サブバンド１Ｈ、１Ｌ、２Ｈ、２Ｌの変換係数データが生成され、サブバンド１Ｈ、２Ｈ、２Ｌの変換係数データが符号化される。ウェーブレット変換が３回の場合は、サブバンド１Ｈ、１Ｌ、２Ｈ、２Ｌ、３Ｈ、３Ｌの変換係数データが生成され、サブバンド１Ｈ、２Ｈ、３Ｈ、３Ｌの変換係数データが符号化される。そのため、生成されないサブバンドや、符号化を行わないサブバンドについては、データ数を記載せずに、グレーにしている。
【００２６】
図１０（ａ）は、着目タイルの上、または、左に隣接タイルが位置する場合の、ウェーブレット変換回数と、オーバーラップ画素数と、着目タイルの上端、または、左端の画素を復号するのに必要な隣接タイルの変換係数データの数との関係を示している。
【００２７】
本実施形態では、ウェーブレット変換は、整数型５／３タップフィルタを用いる。１つのタイル画像データをウェーブレット変換する場合、そのタイル画像データの左上隅を開始位置として変換を開始する。それ故、着目タイル画像データがいかなるサイズであっても、上、左に隣接するタイル画像データからは、ウェブレート変換の回数に応じた固定のオーバーラップ画素数の画素が参照される。図示のように、ウェーブレット変換を１回のみ行う場合、上、または、左に隣接するタイル画像データのオーバーラップ画素数は“２”となる。また、ウェーブレット変換を２回行う場合の隣接タイルとのオーバーラップ画素数は“８”となる。そして、ウェーブレット変換を３回行う場合の隣接タイルとのオーバーラップ画素数は“１６”となる。
【００２８】
図１０（ｂ）は、着目タイル画像の下、または、右に隣接タイルが位置する場合の、ウェーブレット変換回数と、オーバーラップ画素数と、着目タイルの画素を復号するのに必要な隣接タイルの変換係数データの数との関係を示している。隣接タイル画像データが、着目タイル画像データの下または右に位置する場合、オーバーラップ画素数は、着目タイル画像データのサイズに依存したものとなる。正確には、着目タイル画像データの水平、垂直方向の画素数を“８”で除算した余りに依存する。例えば、着目タイル画像データの水平または垂直方向の画素数を“８”で除算した余りが０であるとする。この場合、ウェーブレット変換を１回のみ行う場合、下、または、右に隣接するタイル画像データのオーバーラップ画素数は“３”となる。また、ウェーブレット変換を３回行う場合には、オーバーラップ画素数は“１５”となる。
【００２９】
ウェーブレット変換部１０３による前述の可逆５／３タップフィルタを用いたウェーブレット変換を１回実行するためのリフティング構造を図３に示す。ウェーブレット変換を１回実行するわけであるから、得られる変換係数データのレベルは１となる。
【００３０】
図３の符号ａ〜ｉは、画像データのタイル境界付近の１ラインの画素データを示している。図示は、画素ｄとｅの間にタイル境界がある例を示し、画素ｅ〜ｉがウェーブレット変換対象となる着目タイル画像データに属し、画素ａ〜ｄが左に位置する隣接タイル画像データに属する例である。５／３タップフィルタを用いてウェーブレット変換を行う場合、連続する３画素を参照して高周波成分を示す変換係数データが算出される。図示の、ｂ’、ｄ’、ｆ’、ｈ’が、分解レベル１の高周波成分の変換係数（１Ｈ）を示している。また、連続する５画素を参照して低周波成分を示す変換係数データが算出される。図示のｃ”、ｅ”、ｇ”が、分解レベル１の低周波成分を示す変換係数データ（１Ｌ）を示している。
【００３１】
ここで、着目タイル画像データにおけるタイル境界に最近接する画素ｅを復号する場合を考察する。画素ｅを復号するためには、図示のように、高周波変換係数データｄ’，ｆ’と、低周波変換係数データｅ”の３つがあればよい。このうち、着目タイル画像データに隣接するタイルに属するのは、高周波変換係数データｄ’である。そして、この高周波変換係数ｄ’は、着目タイル内の画素ｅと、隣接タイルの画素ｃ、ｄの２つの計３つから算出される。そのため、ウェーブレット変換を１回行う場合に、左に隣接するタイル画像のオーバーラップ画素数は“２”となる。
【００３２】
このように、ウェーブレット変換部１０３は、隣接タイルの位置が左の場合にウェーブレット変換を１回のみ行う場合には、着目タイル画像データに加えて、隣接タイル画像データからオーバーラップ画素数“２”に対応する画素ｃ、ｄを入力し、ウェーブレット変換を行う。そして、ウェーブレット変換部１０３は、着目タイル画像データから得られた変換係数データに加えて、隣接タイル画像データから得られた変換係数データｄ’を量子化部１０４に供給する。
【００３３】
先に示した特許文献２の技術によれば、着目タイル画像データの符号化データを生成するために、隣接タイル画像のｃ、ｄを復元するのに必要な符号化データを生成する。つまり、特許文献２に開示された技術では、着目タイル画像の符号化する際には、隣接タイルの変換係数ｂ’、ｃ”、ｄ’を含めて量子化し、符号化が行われる。これに対し、本実施形態では、隣接タイルで必要な変換係数データはｄ’だけでよくなり、符号化効率を更に高くできる。
【００３４】
なお、図２（ａ）のタイル画像データＡのように、その上や左に隣接タイルがない場合には、従来のＪＰＥＧ２０００などと同様にミラー処理を行ってタイル外の画素を生成し、ウェーブレット変換を行う。
【００３５】
また、ウェーブレット変換の回数が増えるほど（分解レベルが増えるほど）特許文献２の場合に比べ、削減できる符号量は増加するため、本第１の実施形態による発生符号量削減効果が大きく表れる。図４は、可逆５／３タップフィルタを用いて分解レベル３までの変換係数を得るためのリフティング構造を示している。
【００３６】
ウェーブレット変換を１回実行する図３の場合には、着目タイル内の左端の画素を復号するのに必要な変換係数を生成するために、隣接タイルからオーバーラップして入力する画素は既に図３を用いて説明したように２画素であった。一方、ウェーブレット変換を３回行う場合は、図４のように隣接タイル画像データから１６画素を入力する必要がある。  
特許文献２の場合、１６画素分の変換係数データである、変換係数データ（１Ｈ）の８係数、変換係数データ（２Ｈ）の４係数、変換係数データ（３Ｈ）の２係数、変換係数データ（３Ｌ）の２係数）を量子化、符号化する必要がある。それ故、符号量は無視できないほど大きなものとなる。
【００３７】
一方、本第１の実施形態の場合、着目タイル画像データの端に位置する画素を復号するのに必要な、隣接タイル画像データから生成された変換係数データは、図示の丸で囲った変換係数となる。つまり、分解レベル１の変換係数データ（１Ｈ）の１係数、分解レベル２の変換係数データ（２Ｈ）の１係数、分解レベル３の変換係数データ（３Ｈ）の１係数の計３係数だけである。よって、隣接タイル画像データから得られた変換係数データのうち、これら３係数を量子化、符号化すれば良い。つまり、特許文献２と比較し、符号化対象の変換係数の個数は大幅に削減できる。
【００３８】
図４からもわかるように、隣接タイルの位置が上または左の場合、第１の実施形態における、ウェーブレット変換の回数と、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データとの関係は次のようになる。
ウェーブレット変換回数が１回：  変換係数データ（１Ｈ）の１係数
ウェーブレット変換回数が２回：  変換係数データ（１Ｈ）、（２Ｈ）の２係数
ウェーブレット変換回数が３回：  変換係数データ（１Ｈ）、（２Ｈ）、（３Ｈ）の３係数
：
ここで、ウェーブレット変換の実行回数をＮとする。この場合、ウェーブレット変換部１０３は、隣接タイルから生成された各分解レベルの高周波の変換係数データのうち、タイル境界に最も近い変換係数データ１Ｈ，２Ｈ，…、ＮＨのＮ個を量子化部１０４に供給すればよい、と言うことができる。
【００３９】
次に、隣接タイルの位置が下または右であって、ウェーブレット変換を３回行う場合に、隣接タイルから生成された変換係数データのうち、着目タイルの端の画素を復元するために必要となる変換係数データについて、図１１Ａ〜１１Ｈを参照して説明する。
【００４０】
なお、ウェーブレット変換を３回行った場合、変換係数データ１Ｈ、変換係数データ２Ｈ、変換係数データ３Ｈ、変換係数データ３Ｌが、量子化及び符号化される。つまり、変換係数データ１Ｌ、変換係数データ２Ｌは符号化されない。変換係数データ１Ｌは、変換係数データ２Ｈと変換係数データ２Ｌとから生成可能であり、また、変換係数データ２Ｌは、変換係数データ３Ｈと変換係数データ３Ｌとから生成可能であるためである。つまり、ウェーブレット変換をＮ回行った場合、変換係数データ１Ｈ，２Ｈ，…、ＮＨと、変換係数データＮＬとが符号化され、変換係数データ１Ｌ，２Ｌ，…、（Ｎ−１）Ｌは符号化されず記録されないことになる。
【００４１】
上記は、着目タイル、隣接タイルに対して共通のものである。以下、かかる点を踏まえ、隣接タイル内で生成される変換係数データにおける符号化対象となる変換係数データについて説明する。図１１Ａは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“０”の場合に、ウェーブレット変換を３回行った場合を示している。つまり、着目タイルの水平方向又は垂直方向の画素数が８の整数倍である。
【００４２】
符号化対象の着目タイルの端の画素ｄを復号するには、画素ｃ、変換係数データ１Ｈｄ、画素ｅのデータが必要となる。しかし、画素ｅは、変換係数データ１Ｈｄ、変換係数データ１Ｌｅ、変換係数データ１Ｈｆとから、生成することができる。ここで、変換係数データ１Ｌｅは、１Ｌの変換係数データであり、記録しないデータであり、変換係数データ２Ｈｃ、変換係数データ２Ｌｅ、変換係数データ２Ｈｇとから生成できる。さらに、変換係数データ２Ｌｅは記録されないデータであり、変換係数データ３Ｈａ、変換係数データ３Ｌｅ、変換係数データ３Ｈｉとから生成できる。つまり、符号化対象の着目タイルの端の画素ｄを復号するには、隣接タイルにおける境界に近い、図示の実線で囲った変換係数データ１Ｈｆ、変換係数データ２Ｈｇ、変換係数データ３Ｈｉ、変換係数データ３Ｌｅがあれば十分である。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。そのため、符号化対象の着目タイル内の１Ｈ、２Ｈ、３Ｈ、３Ｌの変換係数データに加えて、隣接タイルの変換係数データ｛１Ｈｆ、２Ｈｇ、３Ｈｉ、３Ｌｅ｝を符号化する。
【００４３】
また、これらの変換係数データを算出するためには、隣接タイルの１５画素を必要とする。そのため、着目タイルに加えて少なくとも隣接タイルの１５画素を入力してウェーブレット変換を３回行う。そして、符号化する際には、ウェーブレット変換により得られた隣接タイルの変換係数データ全てを符号化せずに、符号化対象の着目タイルの端部のデータを復号するのに必要となる変換係数データを符号化する。もちろん、符号化対象の着目タイル内については、１Ｈ、２Ｈ、３Ｈ、３Ｌの変換係数データを全て符号化する。
【００４４】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：１係数、サブバンド３Ｈ：１係数、サブバンド３Ｌ：１係数、の合計４係数となる。
【００４５】
図１１Ｂは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“１”の場合に、ウェーブレット変換を３回行った場合を示している。
【００４６】
符号化対象の着目タイルの端の画素ｅを復号するためには、着目タイルの端部の１Ｌの変換係数データ１Ｌｅおよび着目タイル内の１Ｈの変換係数データ１Ｈｄ，及び、隣接タイルの１Ｈの変換係数データ１Ｈｆが必要となる。変換係数１Ｌｅは、着目タイル内の変換係数２Ｈｃ，２Ｌｅ，及び隣接タイル内の変換係数データ２Ｈｇから算出できる。また、変換係数２Ｌｅは、着目タイル内の変換係数３Ｈａ，３Ｌｅ．及び、隣接タイルの変換係数データ３Ｈｉから算出できる。従って、結局のところ、図１１Ｂに示すように、着目タイル内のデータに加えて、隣接タイル内の変換係数データ１Ｈｆ、変換係数データ２Ｈｇ、変換係数データ３Ｈｉがあれば十分となる。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。また、これらの変換係数データを算出するためには、隣接タイルの１４画素を必要とする。そのため、“着目タイル幅／８”の余りが１となる場合は、着目タイルに加えて少なくとも隣接タイルの１４画素を入力してウェーブレット変換を3回行う。そして、符号化する際には、隣接タイルの変換係数データについては、ウェーブレット変換で得られた全ての変換係数でなく、着目タイルの端部の画素ｅおよび端部の変換係数データを復号するのに必要となる変換係数データ｛１Ｈｆ、２Ｈｇ、３Ｈｉ｝を符号化する。
【００４７】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：１係数、サブバンド３Ｈ：１係数、サブバンド３Ｌ：０係数、の合計３係数となる。
【００４８】
図１１Ｃは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“２”の場合に、ウェーブレット変換を３回行った場合を示している。
【００４９】
着目タイルの端の画素ｆを復号するためには、着目タイルの画素ｅ、着目タイルの１Ｈの変換係数データ１Ｈｆ，および、画素ｇが必要となる。画素ｇを復号するには、着目タイル内の１Ｈの変換係数データ１Ｈｆ、隣接タイル内の１Ｌの変換係数データ１Ｌｇ、および、隣接タイル内の１Ｈの変換係数データ１Ｈｆが必要となる。このうち、１Ｌの変換係数データ１Ｌｇは記録されないので、生成する必要がある。変換係数データ１Ｌｇは、着目タイル内の変換係数１Ｌｅ，及び隣接タイル内の変換係数データ２Ｈｇ，１Ｌｉから算出できる。１Ｌの変換係数データ１Ｌｅ，１Ｌｉは記録されないので算出する必要がある。変換係数データ１Ｌｅは、着目タイル内の変換係数データ２Ｈｃ、２Ｌｅ、隣接タイル内の２Ｈｇ~算出できる。記録されない２Ｌの変換係数データである２Ｌｅは、着目タイル内の２Ｈａ、３Ｌｅ、および、隣接タイル内の３Ｈｉから算出できる。また、変換係数データ１Ｌｉは、隣接タイル内の変換係数データ２Ｈｇ，２Ｌｉ、２Ｈｋから算出できる。記録されない２Ｌの変換係数データである２Ｌｉは、着目タイル内の変換係数データ２Ｌｅ、および、隣接タイル内の３Ｈｉ、２Ｌｍから算出できる。また、記録されない２Ｌの変換係数データである２Ｌｍは、隣接タイル内の変換係数データ３Ｈｉ，３Ｌｍ，３Ｈｑから算出できる。従って、結局のところ、図１１Ｃに示すように、符号化対象の着目タイル内のデータに加えて、隣接タイルの変換係数データ１Ｈｈ、変換係数データ２Ｈｇ、変換係数データ２Ｈｋ、変換係数データ３Ｈｉ、変換係数データ３Ｈｑ、変換係数データ３Ｌｍがあれば十分となる。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。また、これらの変換係数データを算出するためには、隣接タイルの２１画素を必要とする。そのため、“着目タイル幅／８”の余りが２となる場合は、着目タイルに加えて少なくとも隣接タイルの２１画素を入力してウェーブレット変換を行う。そして、符号化する際には、隣接タイルの変換係数データについては、ウェーブレット変換で得られた全ての変換係数でなく、変換係数データ｛１Ｈｈ、２Ｈｇ、２Ｈｋ、３Ｈｉ、３Ｈｑ、３Ｌｍ｝を符号化する。
【００５０】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：２係数、サブバンド３Ｈ：２係数、サブバンド３Ｌ：１係数、の合計６係数となる。
【００５１】
図１１Ｄは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“３”の場合に、ウェーブレット変換を３回行った場合を示している。
【００５２】
着目タイルの端の画素ｇを復号するためには、着目タイルの端部の１Ｈの変換係数データ１Ｈｆ，１Ｌの変換係数データ１Ｌｇ、および隣接タイル内の１Ｈの変換係数データ１Ｈｈが必要となる。このうち、１Ｌの変換係数データ１Ｌｇは記録されないので、他の変換係数データから算出する必要がある。変換係数データ１Ｌｇは、着目タイル内の１Ｌｅ、２Ｈｇ、及び、隣接タイル内の１Ｌｉから算出できる。１Ｌの変換係数データである１Ｌｅ、１Ｌｉは記録されないので、他の変換係数データから算出する必要がある。変換係数データ１Ｌｅは、着目タイル内の変換係数データ２Ｈｃ、２Ｌｅ、２Ｈｇから算出できる。記録されない２Ｌの変換係数データである２Ｌｅは、着目タイル内の変換係数データ３Ｈａ、３Ｌｅ、及び、隣接タイル内の変換係数データ３Ｈｉから算出できる。また、変換係数データ１Ｌｉは、着目タイル内の変換係数データ２Ｈｇ、及び、隣接タイル内の変換係数データ２Ｌｉ，２Ｈｋから算出できる。記録されない２Ｌの変換係数データである２Ｌｉは、着目タイル内の変換係数データ２Ｌｅ及び。隣接タイル内の３Ｈｉ、２Ｌｍから算出できる。記録されない２Ｌの変換係数データである２Ｌｍは、隣接タイル内の変換係数データ３Ｈｉ,３Ｌｍ，３Ｈｑから算出できる。したがって、結局のところ、図１１Ｄに示すように、符号化対象の着目タイル内のデータに加えて、隣接タイルの変換係数データ１Ｈｈ、変換係数データ２Ｈｋ、変換係数データ３Ｈｉ、変換係数データ３Ｈｑ、変換係数データ３Ｌｍがあれば十分となる。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。また、これらの変換係数データを算出するためには、隣接タイルの２０画素を必要とする。そのため、“着目タイル幅／８”の余りが３となる場合は、着目タイルに加えて少なくとも隣接タイルの２０画素を入力してウェーブレット変換を行う。そして、符号化する際には、隣接タイルの変換係数データについては、ウェーブレット変換で得られた全ての変換係数でなく、着目タイルの端部の画素ｇおよび端部の変換係数データを復号するのに必要となる変換係数データ｛１Ｈｈ、２Ｈｋ、３Ｈｉ、３Ｈｑ、３Ｌｍ｝を符号化する。
【００５３】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：１係数、サブバンド３Ｈ：２係数、サブバンド３Ｌ：１係数、の合計５係数となる。
【００５４】
図１１Ｅは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“４”の場合に、ウェーブレット変換を３回行った場合を示している。
【００５５】
着目タイルの端の画素ｈを復号するためには、着目タイル内の画素ｇ、着目タイル内の変換係数データ１Ｈｈ、隣接タイル内の画素ｉが必要となる。画素ｉを復号するには、着目タイル内の変換係数データ１Ｈｈ、隣接タイル内の変換係数データ１Ｌｉ，１Ｈｊが必要となる。記録されない１Ｌの変換係数データである１Ｌｉは、着目タイル内の変換係数データ２Ｈｇ、隣接タイル内の変換係数データ２Ｌｉ、２Ｈｋから算出できる。記録されない２Ｌの変換係数データである２Ｌｉは、着目タイル内の変換係数データ２Ｌｅ、及び、隣接タイル内の変換係数データ３Ｈｉ、２Ｌｍから算出できる。変換係数データ２Ｌｅは、変換係数データ３Ｈａ、３Ｌｅ、３Ｈｉから算出できる。記録されない２Ｌの変換係数データである２Ｌｍは、隣接タイル内の変換係数データ３Ｈｉ，３Ｌｍ、３Ｈｑから算出できる。したがって、結局のところ、図１１Ｅに示すように、符号化対象の着目タイル内のデータに加えて、隣接タイルの変換係数データ１Ｈｊ、変換係数データ２Ｈｋ、変換係数データ３Ｈｉ、変換係数データ３Ｈｑ、変換係数データ３Ｌｍがあれば十分となる。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。また、これらの変換係数データを算出するためには、隣接タイルの１９画素を必要とする。そのため、“着目タイル幅／８”の余りが４となる場合は、着目タイルに加えて少なくとも隣接タイルの１９画素を入力してウェーブレット変換を行う。そして、符号化する際には、隣接タイルの変換係数データについては、ウェーブレット変換で得られた全ての変換係数でなく、着目タイルの端部の画素ｈおよび端部の変換係数データを復号するのに必要となる変換係数データ｛１Ｈｊ、２Ｈｋ、３Ｈｉ、３Ｈｑ、３Ｌｍ｝を符号化する。
【００５６】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：１係数、サブバンド３Ｈ：２係数、サブバンド３Ｌ：１係数、の合計５係数となる。
【００５７】
図１１Ｆは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“５”の場合に、ウェーブレット変換を３回行った場合を示している。
【００５８】
着目タイルの端の画素ｉを復号するためには、着目タイルの変換係数データ１Ｈｈ，１Ｌｉ、隣接タイルの変換係数データ１Ｈｊが必要となる。変換係数データ１Ｌｉは、着目タイルの変換係数データ２Ｈｇ、２Ｌｉ、隣接タイルの変換係数データ２Ｈｋから算出できる。変換係数データ２Ｌｉは、着目タイルの変換係数データ２Ｌｅ、３Ｈｉ、及び、隣接タイルの変換係数データ２Ｌｍから算出できる。変換係数データ２Ｌｍは、着目タイルの変換係数データ３Ｈｉおよび隣接タイルの変換係数データ３Ｌｍ，３Ｈｑが必要となる。したがって、結局のところ、図１１Ｆに示すように、符号化対象の着目タイル内のデータに加えて、隣接タイルの変換係数データ１Ｈｊ、変換係数データ２Ｈｋ、変換係数データ３Ｈｑ、変換係数データ３Ｌｍがあれば十分となる。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。また、これらの変換係数データを算出するためには、隣接タイルの１８画素を必要とする。そのため、“着目タイル幅／８”の余りが５となる場合は、着目タイルに加えて少なくとも隣接タイルの１８画素を入力してウェーブレット変換を行う。そして、符号化する際には、隣接タイルの変換係数データについては、ウェーブレット変換で得られた全ての変換係数でなく、着目タイルの端部の画素ｉおよび端部の変換係数データを復号するのに必要となる変換係数データ｛１Ｈｊ、２Ｈｋ、３Ｈｑ、３Ｌｍ｝を符号化する。
【００５９】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：１係数、サブバンド３Ｈ：１係数、サブバンド３Ｌ：１係数、の１係数、の合計４係数となる
図１１Ｇは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“６”の場合に、ウェーブレット変換を３回行った場合を示している。
【００６０】
着目タイルの端の画素ｊを復号するためには、着目タイル内の画素ｉ、変換係数データ１Ｈｊ、隣接タイルの画素ｋが必要となる。隣接タイルの画素ｋを復号するためには、着目タイル内の変換係数データ１Ｈｊ、隣接タイル内の変換係数データ１Ｌｋ、１Ｈｌが必要となる。変換係数データ１Ｌｋは、着目タイル内の変換係数データ１Ｌｉ、及び、隣接タイル内の変換係数データ２Ｈｋ，１Ｌｍから算出できる。変換係数データ１Ｌｍは、隣接タイル内の変換係数データ２Ｈｋ，２Ｌｍ、２Ｈｏから算出できる。変換係数データ２Ｌｍは、着目タイル内の変換係数データ３Ｈｉ、及び、隣接タイル内の変換係数データ３Ｌｍ，３Ｈｑから算出できる。なお、着目タイル内の記録されない変換係数データ１Ｌｉ、２Ｌｉについては、着目タイル内の記録される変換係数と、隣接タイル内の変換係数２Ｈｋ、２Ｌｍにより算出できる。従って、結局のところ、図１１Ｇに示すように、符号化対象の着目タイル内のデータに加えて、隣接タイルの変換係数データ１Ｈｌ、変換係数データ２Ｈｋ、変換係数データ２Ｈｏ、変換係数データ３Ｈｑ、変換係数データ３Ｌｍがあれば十分となる。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。また、これらの変換係数データを算出するためには、隣接タイルの１７画素を必要とする。そのため、“着目タイル幅／８”の余りが６となる場合は、着目タイルに加えて少なくとも隣接タイルの１７画素を入力してウェーブレット変換を行う。そして、符号化する際には、隣接タイルの変換係数データについては、ウェーブレット変換で得られた全ての変換係数でなく、着目タイルの端部の画素ｊおよび端部の変換係数データを復号するのに必要となる変換係数データ｛１Ｈｌ、２Ｈｋ、２Ｈｏ、３Ｈｑ、３Ｌｍ｝を符号化する。
【００６１】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：２係数、サブバンド３Ｈ：１係数、サブバンド３Ｌ：１係数、の合計５係数となる
図１１Ｈは、符号化対象の着目タイルの水平または垂直方向の画素数（着目タイル幅）を“８”で除算した余りが“７”の場合に、ウェーブレット変換を３回行った場合を示している。
【００６２】
着目タイルの端の画素ｋを復号するためには、着目タイル内の変換係数データ１Ｈｊ，１Ｌｋ、及び、隣接タイル内の変換係数データ１Ｈｌが必要となる。変換係数データ１Ｌｋは、着目タイル内の変換係数データ１Ｌｉ，２Ｈｋ、及び、隣接タイル内の変換係数データ１Ｌｍから算出できる。変換係数データ１Ｌｍは、着目タイル内の変換係数データ２Ｈｋ、および、隣接タイル内の変換係数データ２Ｌｍ、２Ｈｏから算出できる。変換係数データ２Ｌｍは、着目タイル内の変換係数データ３Ｈｉ、及び、隣接タイル内の変換係数データ３Ｌｍ、３Ｈｑから算出できる。また、詳しい説明は省略するが、着目タイル内の記録されない１Ｌ、２Ｌの端部の変換係数データについても、着目タイル内の記録される変換係数データと、隣接タイル内の変換係数データ１Ｌｍ、２Ｌｍとから算出できる。従って、結局のところ、図１１Ｈに示すように、符号化対象の着目タイル内のデータに加えて、隣接タイルの変換係数データ１Ｈｌ、変換係数データ２Ｈｏ、変換係数データ３Ｈｉ、変換係数データ３Ｈｑ、変換係数データ３Ｌｍがあれば十分となる。この変換係数データがあれば、着目タイル内の隣接タイル側の端の画素まで復号できる。また、これらの変換係数データを算出するためには、隣接タイルの１６画素を必要とする。そのため、“着目タイル幅／８”の余りが７となる場合は、着目タイルに加えて少なくとも隣接タイルの１６画素を入力してウェーブレット変換を行う。そして、符号化する際には、隣接タイルの変換係数データについては、ウェーブレット変換で得られた全ての変換係数でなく、着目タイルの端部の画素ｋおよび端部の変換係数データを復号するのに必要となる変換係数データ｛１Ｈｌ、２Ｈｏ、３Ｈｑ、３Ｌｍ｝を符号化する。
【００６３】
つまり、着目タイル内の端の画素を復元するために隣接タイルから生成された変換係数データのうちの利用する変換係数データは、サブバンド１Ｈ：１係数、サブバンド２Ｈ：１係数、サブバンド３Ｈ：１係数、サブバンド３Ｌ：１係数、の合計４係数となる
このように、隣接タイルから生成された変換係数データのうち、着目タイル内の端の画素を復元するために必要となる変換係数データを求めていくと、図１０（ａ），（ｂ）の図のようになる。なお、隣接タイル内の変換係数データのうち、着目タイル側から図１０に示す数分の変換係数データが、着目タイル内の端の画素を復元するために必要となることを示している。
【００６４】
高周波成分のサブバンドの変換係数データについては、必ず１つ以上必要となり、変換係数データ１Ｈについては、ウェーブレット変換の回数にかかわらず、必ず１となる。１Ｈ以外の変換係数データの数は、着目タイル幅によって異なる。また、ウェーブレット変換回数がＮ回の場合に符号化される低周波成分のサブバンドの変換係数データ、つまり、変換係数データ（ＮＬ）については、着目タイルの端の画素を復元するのに必要となる変換係数データ（ＮＬ）の数は、０または１となり、着目タイル幅によって決まる。
【００６５】
後述のフローのように、図１０（ａ），（ｂ）に示す数値で、オーバーラップ画素数でウェーブレット変換を行い、さらに、隣接タイル内の着目タイル側から、着目タイルの復号に必要な変換係数データの数分の変換係数データのみを符号化することにより、処理の高速化および符号量の削減を行うことができる。
【００６６】
また、上述の説明で、隣接タイル内の変換係数データとは、隣接タイルの画素を参照して得られた変換係数データであって、着目タイルの画素と隣接タイルの画素との間をタイル境界として、このタイル境界により変換係数を着目タイル側と隣接タイル側とに分けた場合に、隣接タイル側に含まれる変換係数データのことを示している。
【００６７】
上記は可逆５／３タップのフィルタを用いた例であるが、例えば非可逆９／７タップフィルタを用いてウェーブレット変換した場合には、特許文献２との差はさらに大きなものとすることができる。
【００６８】
ここで、上記の本第１の実施形態の画像符号化部１００の処理を図５のフローチャートに従って説明する。
【００６９】
設定部１０６は、ステップＳ１、Ｓ２にて、１フレーム画像の分割タイル数Ｍ、ウェーブレット変換回数Ｎ（ｏｒ分解レベル数Ｎ）を設定する。そして、設定部１０６は、ステップＳ３にて、各タイルをウェーブレット変換する際のタイル周辺画素数を表すオーバーラップ画素数を決定する。設定部１０６は図１０（ａ），（ｂ）のようなテーブルを保持しており、オーバーラップ画素数は、ステップＳ２で設定されたウェーブレット変換回数Ｎ、および、タイル幅に応じて、図１０（ａ），（ｂ）Ｂのように決定され、隣接タイルが上または左の場合と、下または右の場合とでそれぞれオーバーラップ画素数が決定される。また、符号化対象の着目タイル幅によって隣接タイルが下または右の場合のオーバーラップ画素数は異なるため、図５のように全タイルでまとめてオーバーラップ画素数を決定せずに、着目タイル毎にオーバーラップ画素数を決定してもよい。また、タイル幅が全て同じ場合は一括で決定し、タイル毎にタイル幅が異なる場合は着目タイル毎に決定するように、処理を切り換えるようにしてもよい。
【００７０】
この後、ステップＳ４にて、入力データ制御部１０２は、ステップＳ１、Ｓ３で決定した情報に基づき、フレームメモリ１０１から、着目タイル画像データとそのタイル周辺画素データ（隣接タイルの着目タイル側の端の画素データ）を読み出し、ウェーブレット変換部１０３に供給する。ウェーブレット変換部１０３は、ステップＳ５にて、設定された回数だけウェーブレット変換を実行し、変換係数データを生成する。そして、ウェーブレット変換部１０３は、ステップＳ６にて、着目タイル画像データから得られた、符号化対象のサブバンドの全変換係数データを量子化部１０４に供給する。また、ウェーブレット変換部１０３は、タイル周辺画素データから得られた変換係数データについて、タイル境界側の端部から、図１０Ａ，１０Ｂに示す着目タイルの端の画素の復号に必要となる数の変換係数データを、分解量子化部１０４に供給する。量子化部１０４は、これを受けて量子化処理を実行する。図１０Ａ，１０Ｂに示されているように、着目タイルのタイル幅や、ウェーブレット変換の回数によって、量子化部１０４に供給される変換係数データの数は異なっており、サブバンド毎に、量子化部１０４に供給される変換係数データの数が定義されている。
【００７１】
この後、ステップＳ７にて、エントロピー符号化部１０５は、量子化後の変換係数データをエントロピー符号化し、符号化データを生成する。そして、ステップＳ８にて、全タイルの符号化を終えるまで、データ入力制御部１０２ウェーブレット変換部１０３、量子化部１０４、エントロピー符号化部１０５による処理が繰り返される。
【００７２】
なお、動画像を符号化する場合には、ステップＳ４以降の処理を２つ目のフレーム以降で繰り返せばよい。
【００７３】
本実施形態では、図１０（ａ），（ｂ）のような関係を用いて、着目タイルの符号化を行った。
【００７４】
つまり、隣接タイルの位置が下または右の場合、着目タイル幅とウェーブレット変換の回数に応じて、オーバーラップ画素数と、隣接タイルの変換係数データうち符号化する変換係数データを決定した。
【００７５】
しかし、以下のような変形例で着目タイル幅にかかわらず、オーバーラップ画素数と、隣接タイルの変換係数データうち符号化する変換係数データを決定するようにしてもよい。
【００７６】
図１０（ａ），（ｂ）によると、ウェーブレット回数が１回の場合は、符号化するサブバンド（１Ｈ，１Ｌ）のうち、着目タイル内の端の画素を復元するために必要となる変換係数データの数は０〜１で、オーバーラップ画素数は２〜３となっている。そのため、ウェーブレット回数が１回の場合は、オーバーラップ画素数：３、符号化する隣接タイルの変換係数データの数：１とする。
【００７７】
ウェーブレット回数が２回の場合は、符号化するサブバンド（１Ｈ、２Ｈ、２Ｌ）のうち、着目タイル内の端の画素を復元するために必要となる変換係数データの数は、１Ｈは１、２Ｈは１〜２、２Ｌは０〜１で、オーバーラップ画素数は６〜９となっている。そのため、ウェーブレット回数が２回の場合は、オーバーラップ画素数：９、符号化する隣接タイルの変換係数データの数は、１Ｈ：１、２Ｈ：２、２Ｌ：１とする。または、符号化する隣接タイルの変換係数データの数については、符号化する全サブバンド（１Ｈ、２Ｈ、２Ｌ）について２としてもよい。
【００７８】
ウェーブレット回数が３回の場合は、符号化するサブバンド（１Ｈ、２Ｈ、３Ｈ、３Ｌ）のうち、着目タイル内の端の画素を復元するために必要となる変換係数データの数は、１Ｈは１、２Ｈは１〜２、３Ｈは１〜２、３Ｌは０〜１で、オーバーラップ画素数は１４〜２１となっている。そのため、ウェーブレット回数が３回の場合は、オーバーラップ画素数：２１、符号化する隣接タイルの変換係数データの数は、１Ｈ：１、２Ｈ：２、３Ｈ：２、３Ｌ：１とする。または、符号化する隣接タイルの変換係数データの数については、符号化する全サブバンド（１Ｈ、２Ｈ、３Ｈ、３Ｌ）について２としてもよい。
【００７９】
本変形例では、第１の実施形態の図１０（ａ），（ｂ）よりも、符号化量は増加してしまうが、ウェーブレット変換により得られた隣接タイルの変換係数データであっても、符号化しない係数データがある。そのため、ウェーブレット変換により得られた隣接タイルの全ての変換係数データを符号化するよりも、データ量を削減することができる。
【００８０】
次に、第１の実施形態を用いて得られた符号化データの復号について図６を用いながら説明する。図６は、第１の実施形態における復号部６００のブロック構成図である。この復号部６００は、撮像装置内に設けられることになる。
【００８１】
復号部６００は、エントロピー復号部６０１、逆量子化部６０２、逆ウェーブレット変換部６０３を有する。
【００８２】
エントロピー復号部６０１は、ＥＢＣＯＴ（Ｅｍｂｅｄｄｅｄ  Ｂｌｏｃｋ  Ｃｏｄｉｎｇ  ｗｉｔｈ  Ｏｐｔｉｍｉｚｅｄ  Ｔｒｕｎｃａｔｉｏｎ）などでエントロピー符号化されたデータをタイル単位に入力し、復号する。そして、エントロピー復号部６０１は復号して得られた、量子化後の変換係数データ、量子化パラメータを逆量子化部６０２に供給する。
【００８３】
逆量子化部６０２は、エントロピー復号部６０１から送られた変換係数データを、復号して得られた量子化パラメータを乗算して、量子化前の変換係数データを算出する。そして、逆量子化部６０２は、算出した変換係数データを逆ウェーブレット変換部６０３に供給する。
【００８４】
逆ウェーブレット変換部６０３は、逆量子化部６０２から送られた変換係数データを逆ウェーブレット変換を実行し、タイル画像データを復元する。
【００８５】
ここで、前述の可逆５／３タップフィルタを用いてウェーブレット変換をリフティング構造を用いて符号化した場合の復号部６００の復号処理を図７を用いて説明する。
【００８６】
図７は、図３を用いて説明したウェーブレット変換で生成した係数をリフティング構造を用いて逆ウェーブレット変換する様を示す図である。図７のｄ’、ｅ”、ｆ’、ｇ”は、図３のｄ’、ｅ”、ｆ’、ｇ”に対応する。つまり、ｄ’，ｆ’は分解レベル１の高周波の変換係数データ（１Ｈ）であり、ｅ”、ｇ”は分解レベル１の低周波の変換係数データ（１Ｌ）を示している。このうち、変換係数データｄ’は、隣接タイル画像に属するものである。係数データｄ’、ｅ”、ｆ’から、着目タイルの端の画素ｅを生成することができる。
【００８７】
このように、第１の実施形態では、タイル境界の画素データｅを生成する際に、図７のように予め符号化されている復号タイル対象外の隣接タイルに属するウェーブレット係数ｄ’を用いて復号する。このため、隣接するタイル間の連続性が保たれタイル境界での画質劣化の発生を防止することが可能になる。
【００８８】
［第２の実施形態］
図８は、第２の実施形態における画像符号化部８００のブロック構成図である。本第２の実施形態における画像符号化部８００は、第１の実施形態における図１の設定部１０６に変えて設定部８０１を設けた点、並びに、符号量調整部８０２を有する点が異なる。また、データ入力制御部１０２及びウェーブレット変換部１０３の動作が図１とも異なる。なお、第２の実施形態における設定部８０１は、図１の設定部１０６の機能に加えて、不図示の操作部からの指示に従った圧縮率を入力し、それに従い、データ入力制御部１０２、符号量調整部８０２を制御する。図９は、本第２の実施形態における処理手順を示すフローチャートである。以下、図８の各構成要素の処理を、図９のフローチャートに従って説明する。
【００８９】
設定部８０１は、入力した圧縮率が予め設定された閾値より小さい場合、タイル境界のウェーブレット変換をミラー処理で実施するようデータ入力制御部１０２に指示する（Ｓ１００１、Ｓ１００２）。一方、圧縮率が閾値以上の場合には、タイル境界のウェーブレット変換を隣接タイルの画素までオーバーラップして実施するようデータ入力制御部１０２に指示する（Ｓ１００１、Ｓ１００３）。また、いずれの方式で符号化されたのか示すフラグ（圧縮率と閾値との大小判定結果を示すフラグ）を符号化ストリームのヘッダに格納する。圧縮率によって処理を切り換えるのは以下の理由による。
【００９０】
圧縮率が閾値より小さい場合には、符号量は多くなるものの、量子化ステップが小さいので、量子化誤差も小さくなり、タイル境界における画質劣化が発生しにくい。従って、ミラー処理を選択したとしても、オーバーラップによる余分な符号化対象係数の増加を防ぐように制御する。
【００９１】
一方、圧縮率が大きい場合には、量子化誤差は無視できなくなり、タイル境界における画質劣化が目立つ。それ故、第１の実施形態と同様に、タイル周辺画素データを参照した符号化処理を実行する。なお、実際の符号量の調整は、符号量調整部８０２が行うが、その詳細は後述する。
【００９２】
データ入力制御部１０２は設定部８０１から指定されたウェーブレット変換処理方法に従い、画像データを所定のサイズのタイルに分割し、予め定められた順序でタイルをフレームメモリ１０１から読み出し、ウェーブレット変換部１０３に供給する。
【００９３】
例えば、タイル境界のウェーブレット変換をミラー処理で実施する方法が選択されていた場合には、隣接タイルの画素は入力せずに符号化対象タイルの画素のみを入力する（Ｓ１００４）。一方、ウェーブレット変換を隣接タイルの画素までオーバーラップして実施する方式が選択されていれば、先に説明した第１実施形態に示したタイル入力方法を実施する（Ｓ１００５）。なお、その際、設定部８０１で指定されたウェーブレット変換処理方法もウェーブレット変換部１０３に送信する。
【００９４】
ウェーブレット変換部１０３はデータ制御入力部１０２から送信されるウェーブレット変換方式に従ってウェーブレット変換を実行する。例えば、タイル境界のウェーブレット変換をミラー処理で実施する方法が選択されていた場合には、タイル境界の画素をミラー処理で生成し、ウェーブレット変換を行う（Ｓ１００６）。
【００９５】
一方、ウェーブレット変換を隣接タイルの画素までオーバーラップして実施する方式が選択されている場合、ウェーブレット変換部１０３は、着目タイル画像データとそのタイル周辺画素データを用いてウェーブレット変換を実行する（Ｓ１００７）。この際、量子化部１０４に供給する変換係数データの取捨選択は、第１の実施形態と同じである。
【００９６】
次に、本第２の実施形態における符号量調整部８０２の処理を説明する。
【００９７】
１フレーム画像あたりの目標符号量は、圧縮率で決定される。そこで、この目標符号量をＡ＿Ｔａｒｇｅｔとする。エントロピー符号化部１０５は、量子化後の各変換係数データの同一ビット位置で構成されるビットプレーンをエントロピー符号化するものとする。ビットｉのプレーンの符号化データをＣｉと表し、その符号量をＡ（Ｃｉ）と表す。このとき、エントロピー符号化部１０５で生成された符号化データの１フレームの総符号量Ｃ＿Ｔｏｔａｌは、次式の通りである。
Ｃ＿Ｔｏｔａｌ＝ΣＡ（Ｃｉ）（ｉ＝０，１、…、ＭＳＢ）
従って、着目フレームの符号量を目標符号量Ａ＿Ｔａｒｇｅｔ以下とするために、次式を満たすｋの最小値を求める。
Ｃ＿ｔｏｔａｌ−ΣＡ（Ｃｋ）≦Ａ＿Ｔａｒｇｅｔ
ｋが求まれば、ビット０からビットｋまでのビットプレーンの符号化データを破棄すれば良い。
【００９８】
なお、本第２の実施形態で符号化されたストリームを復号する際には、ストリームヘッダに記録されているいずれの方式が選択されたのかを示すフラグを参照すればよい。フラグを参照することで、符号化データが、タイル境界を隣接タイルの係数までオーバーラップして実施して得られたものか、あるいは、タイル境界で折り返すミラー処理を経て生成されたものか判断できる。
【００９９】
以上説明したように、本第２の実施形態によれば、圧縮率に応じて、タイル画像データの符号化処理時に、ミラー処理を行うか、タイル周辺画素データを参照するかを選択する。この結果、特に高い圧縮率が設定された場合に、タイル境界でのノイズの発生をこれまで以上に抑制できるようになる。
【０１００】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１０１】
１００…画像符号化部、１０１…フレームメモリ、１０２…データ入力制御部、１０３…ウェーブレット変換部、１０４…量子化部、１０５…エントロピー符号化部、１０６…設定部
【図１】
0006793499.tif 000002
【図２】
0006793499.tif 000003
【図３】
0006793499.tif 000004
【図４】
0006793499.tif 000005
【図５】
0006793499.tif 000006
【図６】
0006793499.tif 000007
【図７】
0006793499.tif 000008
【図８】
0006793499.tif 000009
【図９】
0006793499.tif 000010
【図１０】
0006793499.tif 000011
【図１１Ａ】
0006793499.tif 000012
【図１１Ｂ】
0006793499.tif 000013
【図１１Ｃ】
0006793499.tif 000014
【図１１Ｄ】
0006793499.tif 000015
【図１１Ｅ】
0006793499.tif 000016
【図１１Ｆ】
0006793499.tif 000017
【図１１Ｇ】
0006793499.tif 000018
【図１１Ｈ】
0006793499.tif 000019