(57)【特許請求の範囲】
【請求項１】
入力画像データにそれぞれ対応するＮ個(Ｎは２以上の自然数)の層の層画像データに前記入力画像データを分離し、そのうち少なくとも１個の層画像データは小領域単位で関数変換処理する非可逆符号化方式の画像符号化方式にて符号化を行なう画像符号化装置であって、
個々の前記層画像データである第ｎ層画像データ(ｎは１以上で、前記Ｎ以下の自然数。ｎが小さい程合成処理される場合に上層に配置される。)で表現すべき有効領域が少なくとも特定可能な領域情報データを入力する領域情報データ入力処理手段と、
前記領域情報データに基づいて、前記画像符号化方式にて符号化を行なう層画像データについて、前記小領域単位で、前記入力画像データの画素値を用いる領域と、前記画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを平坦化変換パターンとするとき、該平坦化変換パターンを用いて符号化する領域とを領域判定し、前記第ｎ層画像データを生成する層分離処理手段と、
前記層分離処理手段により作成された第ｎ層画像データを前記画像符号化方式で符号化し、第ｎ層画像符号化データを作成する画像符号化データ作成処理手段と、
前記画像符号化データ作成処理手段により作成された第ｎ層画像符号化データを少なくとも含む出力データを作成する出力データ作成処理手段とを備える、画像符号化装置。
【請求項２】
前記画像符号化装置は、画像データの縦方向の解像度、横方向の解像度を変換する解像度変換処理手段をさらに備え、
前記小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、
前記層分離処理手段は、前記第ｎ層画像データの前記領域判定を、前記ブロックの縦方向の大きさを１／Ｘｎ（Ｘｎは実数であり、第ｎ層画像データの縦方向の解像度）倍、横方向の大きさを１／Ｙｎ（Ｙｎは実数であり、第ｎ層画像データの横方向の解像度）倍、それぞれ乗算した領域単位で判定し、
前記画像符号化データ作成処理手段は、前記入力画像データを用いる領域については、前記解像度変換処理手段により前記入力画像データの対応する領域の縦方向の解像度をＸｎ倍に、横方向の解像度をＹｎ倍に、それぞれ変換した画像データを用いて、前記第ｎ層画像データを生成することを特徴とする、請求項１に記載の画像符号化装置。
【請求項３】
前記小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、
前記層分離処理手段は、前記第ｎ層画像データの前記領域判定に用いる領域を、前記第ｎ層画像データの前記各ブロックにそれぞれ対応する、前記画像符号化方式にて符号化を行なう各層画像データの前記ブロックの縦の大きさの公倍数および横の大きさの公倍数をそれぞれ縦と横の大きさとするブロック単位で判定することを特徴とする、請求項１に記載の画像符号化装置。
【請求項４】
前記小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、
前記層分離処理手段は、前記第ｎ層画像データの前記領域判定に用いる領域を、前記第ｎ層画像データの前記各ブロックにそれぞれ対応する、前記画像符号化方式にて符号化を行なう各層画像データの前記ブロックの縦の大きさの最小公倍数および横の大きさの最小公倍数をそれぞれ縦と横の大きさとするブロック単位で判定することを特徴とする、請求項１に記載の画像符号化装置。
【請求項５】
前記画像符号化装置は、画像データの縦方向の解像度、横方向の解像度を変換する解像度変換処理手段をさらに備え、
前記小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、
前記層分離処理手段は、前記第ｎ層画像データの前記領域判定に用いる領域を、前記第ｎ層画像データの前記各ブロックにそれぞれ対応する、前記画像符号化方式にて符号化を行なう第ｉ層画像データの前記ブロックの縦の大きさに１／Ｘｉ（Ｘｉは実数であり、第ｉ層画像データの縦方向の解像度。１≦ｉ≦Ｎでｉはｎを含まない自然数。）倍乗算した大きさの公倍数、および当該ブロックの横の大きさに１／Ｙｉ（Ｙｉは実数であり、第ｉ層画像データの横方向の解像度）倍乗算した大きさの公倍数、をそれぞれ縦と横の大きさとするブロック単位で判定し、
前記画像符号化データ作成処理手段は、前記入力画像データを用いる領域については、前記解像度変換処理手段により前記入力画像データの対応する領域の縦方向の解像度をＸｎ（Ｘｎは実数であり、第ｎ層画像データの縦方向の解像度）倍に、横方向の解像度をＹｎ（Ｙｎは実数であり、第ｎ層画像データの横方向の解像度）倍に、それぞれ変換した画像データを用いて、前記第ｎ層画像データを生成することを特徴とする、請求項１に記載の画像符号化装置。
【請求項６】
前記画像符号化装置は、画像データの縦方向の解像度、横方向の解像度を変換する解像度変換処理手段をさらに備え、
前記小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、
前記層分離処理手段は、前記第ｎ層画像データの前記領域判定に用いる領域を、前記第ｎ層画像データの前記各ブロックにそれぞれ対応する、前記画像符号化方式にて符号化を行なう第ｉ層画像データの前記ブロックの縦の大きさに１／Ｘｉ（Ｘｉは実数であり、第ｉ層画像データの縦方向の解像度。１≦ｉ≦Ｎでｉはｎを含まない自然数。）倍乗算した大きさの最小公倍数、および当該ブロックの横の大きさに１／Ｙｉ（Ｙｉは実数であり、第ｉ層画像データの横方向の解像度）倍乗算した大きさの最小公倍数、をそれぞれ縦と横の大きさとするブロック単位で判定し、
前記画像符号化データ作成処理手段は、前記入力画像データを用いる領域については、前記解像度変換処理手段により前記入力画像データの対応する領域の縦方向の解像度をＸｎ（Ｘｎは実数であり、第ｎ層画像データの縦方向の解像度）倍に、横方向の解像度をＹｎ（Ｙｎは実数であり、第ｎ層画像データの横方向の解像度）倍に、それぞれ変換した画像データを用いて、前記第ｎ層画像データを生成することを特徴とする、請求項１に記載の画像符号化装置。
【請求項７】
前記第ｎ層画像データにおいて入力画像データの画素値を用いた領域に対応し、前記画像符号化方式にて符号化を行なう第（ｎ＋１）層画像データの領域には、復号処理されたときに前記平坦値になる前記平坦化変換パターンを用いることを特徴とする、請求項１〜６のいずれかに記載の画像符号化装置。
【請求項８】
前記層画像データを前記小領域単位で関数変換処理する非可逆符号化方式であって前記画像符号化方式とは異なる、第２の画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを第２の平坦化変換パターンとするとき、前記第ｎ層画像データにおいて入力画像データの画素値を用いた領域に対応し、前記第２の画像符号化方式にて符号化を行なう第（ｎ＋１）層画像データの領域には、前記第２の平坦化変換パターンを用いることを特徴とする、請求項１〜６のいずれかに記載の画像符号化装置。
【請求項９】
前記平坦値は、前記第ｎ層画像データの復号化において透明色として用いられる値である、請求項１〜８のいずれかに記載の画像符号化装置。
【請求項１０】
前記出力データ作成処理手段は、さらに前記透明色の値を出力データに含めることを特徴とする、請求項９に記載の画像符号化装置。
【請求項１１】
演算処理装置を有するコンピュータが、入力画像データにそれぞれ対応するＮ個(Ｎは２以上の自然数)の層の層画像データに前記入力画像データを分離し、そのうち少なくとも１個の層画像データは小領域単位で関数変換処理する非可逆符号化方式の画像符号化方式にて符号化を行なう画像符号化方法であって、
領域情報データ入力処理手段が、個々の前記層画像データである第ｎ層画像データ(ｎは１以上で、前記Ｎ以下の自然数。ｎが小さい程合成処理される場合に上層に配置される。)で表現すべき有効領域が少なくとも特定可能な領域情報データを入力するステップと、
層分離処理手段が、前記領域情報データに基づいて、前記画像符号化方式にて符号化を行なう層画像データについて、前記小領域単位で、前記入力画像データの画素値を用いる領域と、前記画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを平坦化変換パターンとするとき、該平坦化変換パターンを用いて符号化する領域とを領域判定し、前記第ｎ層画像データを生成するステップと、
画像符号化データ作成処理手段が、前記層分離処理手段により作成された第ｎ層画像データを前記画像符号化方式で符号化し、第ｎ層画像符号化データを作成するステップと、
出力データ作成処理手段が、前記画像符号化データ作成処理手段により作成された第ｎ層画像符号化データを少なくとも含む出力データを作成するステップとを備える、画像符号化方法。
【請求項１２】
入力画像データにそれぞれ対応するＮ個(Ｎは２以上の自然数)の層の層画像データに前記入力画像データを分離し、そのうち少なくとも１個の層画像データは小領域単位で関数変換処理する非可逆符号化方式の画像符号化方式にて符号化を行なう画像符号化方法を、演算処理装置を有するコンピュータに実行させる画像符号化プログラムであって、
前記演算処理装置が、個々の前記層画像データである第ｎ層画像データ(ｎは１以上で、前記Ｎ以下の自然数。ｎが小さい程合成処理される場合に上層に配置される。)で表現すべき有効領域が少なくとも特定可能な領域情報データを入力するステップと、
前記演算処理装置が、前記領域情報データに基づいて、前記画像符号化方式にて符号化を行なう層画像データについて、前記小領域単位で、前記入力画像データの画素値を用いる領域と、前記画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを平坦化変換パターンとするとき、該平坦化変換パターンを用いて符号化する領域とを領域判定し、前記第ｎ層画像データを生成するステップと、
前記演算処理装置が、前記作成された第ｎ層画像データを前記画像符号化方式で符号化し、第ｎ層画像符号化データを作成するステップと、
前記演算処理装置が、前記作成された第ｎ層画像符号化データを少なくとも含む出力データを作成するステップとをコンピュータに実行させる、画像符号化プログラム。
【請求項１３】
請求項１２に記載の画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、静止画像および動画像の符号化および復号処理に関し、画像符号化装置、画像符号化方法、画像符号化プログラムおよび画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【０００２】
近年、ＩＴ技術の発展により、テレビ、パソコン（Personal Computer）、デジタルカラー複写機、デジタルカメラ、デジタルビデオカメラ等、様々な機器で、デジタル画像データ取り扱いが可能となり、利用頻度が増してきている。また、機器間の画像データの受け渡しの効率化、内部処理の高速化、蓄積の効率化のために、デジタル画像データの容量削減技術である画像符号化技術が重要になってきている。画像符号化技術には、画質劣化を伴う非可逆画像符号化方式と画質劣化を伴わない可逆画像符号化方式に分けられる。
【０００３】
近年、画像データ全体を一定の条件で符号化するのではなく、領域によって、異なる条件で符号化することにより、画質を向上させる技術が用いられている。これは、主に非可逆符号化方式で不得意とする領域を可逆符号化方式を用いて符号化し画質劣化を防ぐことに用いられている。画像データを領域によって、異なる条件で符号化する技術として、特許文献１がある。
【特許文献１】特開平１１―３３９００２号公報  特許文献１は、画像データを複数層に分離し、各層を異なる条件で符号化する技術であり、領域毎に用いる層を切り替えている。特に、上層に透明色を用いることにより、用いる層を切り替えており、上層を非可逆符号化方式で符号化したデータに加え、透明色領域を指定するために透明色データを合わせ持っている。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
一般に、可逆画像符号化方式は、非可逆画像符号化方式より、圧縮率が低く、また、画質劣化を伴わないため、符号化後の容量をそれ程大きく低減することが出来ない。特定画素値を透明色に指定した上層画像を可逆符号化方式で符号化を行なう場合は、上層画像の符号化データの容量が肥大化してしまう問題があった。この問題を回避する技術として、特許文献１のように上層画像を非可逆画像符号化方式を用いて符号化する技術がある。しかし、上層画像の符号化が画質劣化を伴うため、単に上層の特定色を透明色とすることは出来ない。透明色の画素値は、たとえ非常に近い値であっても異なる値になってしまうと透明色としての機能を失ってしまうからである。そのため、特許文献１では、上層の透明色の領域を規定する透明色データを別途保持する必要がある。
【０００５】
結局、この透明色データが層の画像データに加えて必要となるとともに、この透明色データは、透明色領域を正確に復号側に伝えるため、符号化は可逆に行なう必要がある、可逆な符号化は圧縮率が小さいため、容量を圧迫してしまう。また、復号時には、透明色データを保持しない方式と比較すると、透明色データの復号処理分、復号時間を要してしまう。これは、特に携帯電話や携帯情報端末（Personal Digital Assistance）といった処理速度の遅い携帯端末での快適利用の妨げとなる。
【０００６】
本発明は、透明色領域を特定可能な状態で、上層画像を非可逆符号化方式で符号化することを可能とし、透明色データを不要とした画像符号化方法を提供するとともに、この画像符号化方法を用いた画像符号化装置、画像符号化プログラムおよび画像符号化プログラムを記録したコンピュータ読取可能な記録媒体を提供することを目的とする。
【０００７】
また、非可逆符号化方式は、符号化時のパラメータの設定によって、画質劣化の度合いをコントロール可能なものがほとんどである。劣化を少なくなるように設定すると、当然圧縮率は低くなるが、それでも、可逆画像符号化方式と比較すると、高い圧縮率が確保できる。この符号化時のパラメータの設定により、必要な画質を保った状態で高い圧縮率を確保することが可能である。これにより、高圧縮率を実現すると共に、高速復号処理を可能とする。
【課題を解決するための手段】
【０００８】
この発明の１つの局面に従うと、入力画像データにそれぞれ対応するＮ個(Ｎは２以上の自然数)の層の層画像データに入力画像データを分離し、そのうち少なくとも１個の層画像データは小領域単位で関数変換処理する非可逆符号化方式の画像符号化方式にて符号化を行なう画像符号化装置であって、個々の層画像データである第ｎ層画像データ(ｎは１以上で、Ｎ以下の自然数。ｎが小さい程合成処理される場合に上層に配置される。)で表現すべき有効領域が少なくとも特定可能な領域情報データを入力する領域情報データ入力処理手段と、領域情報データに基づいて、画像符号化方式にて符号化を行なう層画像データについて、小領域単位で、入力画像データの画素値を用いる領域と、画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを平坦化変換パターンとするとき、該平坦化変換パターンを用いて符号化する領域とを領域判定し、第ｎ層画像データを生成する層分離処理手段と、層分離処理手段により作成された第ｎ層画像データを画像符号化方式で符号化し、第ｎ層画像符号化データを作成する画像符号化データ作成処理手段と、画像符号化データ作成処理手段により作成された第ｎ層画像符号化データを少なくとも含む出力データを作成する出力データ作成処理手段とを備える。
【０００９】
好ましくは、画像符号化装置は、画像データの縦方向の解像度、横方向の解像度を変換する解像度変換処理手段をさらに備え、小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、層分離処理手段は、第ｎ層画像データの領域判定を、ブロックの縦方向の大きさを１／Ｘｎ（Ｘｎは実数であり、第ｎ層画像データの縦方向の解像度）倍、横方向の大きさを１／Ｙｎ（Ｙｎは実数であり、第ｎ層画像データの横方向の解像度）倍、それぞれ乗算した領域単位で判定し、画像符号化データ作成処理手段は、入力画像データを用いる領域については、解像度変換処理手段により入力画像データの対応する領域の縦方向の解像度をＸｎ倍に、横方向の解像度をＹｎ倍に、それぞれ変換した画像データを用いて、第ｎ層画像データを生成する。
【００１０】
好ましくは、小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、層分離処理手段は、第ｎ層画像データの領域判定に用いる領域を、第ｎ層画像データの各ブロックにそれぞれ対応する、画像符号化方式にて符号化を行なう各層画像データのブロックの縦の大きさの公倍数および横の大きさの公倍数をそれぞれ縦と横の大きさとするブロック単位で判定する。
【００１１】
好ましくは、小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、層分離処理手段は、第ｎ層画像データの領域判定に用いる領域を、第ｎ層画像データの各ブロックにそれぞれ対応する、画像符号化方式にて符号化を行なう各層画像データのブロックの縦の大きさの最小公倍数および横の大きさの最小公倍数をそれぞれ縦と横の大きさとするブロック単位で判定する。
【００１２】
好ましくは、画像符号化装置は、画像データの縦方向の解像度、横方向の解像度を変換する解像度変換処理手段をさらに備え、小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、層分離処理手段は、第ｎ層画像データの領域判定に用いる領域を、第ｎ層画像データの各ブロックにそれぞれ対応する、画像符号化方式にて符号化を行なう第ｉ層画像データのブロックの縦の大きさに１／Ｘｉ（Ｘｉは実数であり、第ｉ層画像データの縦方向の解像度。１≦ｉ≦Ｎでｉはｎを含まない自然数。）倍乗算した大きさの公倍数、および当該ブロックの横の大きさに１／Ｙｉ（Ｙｉは実数であり、第ｉ層画像データの横方向の解像度）倍乗算した大きさの公倍数、をそれぞれ縦と横の大きさとするブロック単位で判定し、画像符号化データ作成処理手段は、入力画像データを用いる領域については、解像度変換処理手段により入力画像データの対応する領域の縦方向の解像度をＸｎ（Ｘｎは実数であり、第ｎ層画像データの縦方向の解像度）倍に、横方向の解像度をＹｎ（Ｙｎは実数であり、第ｎ層画像データの横方向の解像度）倍に、それぞれ変換した画像データを用いて、第ｎ層画像データを生成する。
【００１３】
好ましくは、画像符号化装置は、画像データの縦方向の解像度、横方向の解像度を変換する解像度変換処理手段をさらに備え、小領域は、縦方向に平行な２直線と横方向に平行な２直線とで囲まれた四角形からなるブロックであり、層分離処理手段は、第ｎ層画像データの領域判定に用いる領域を、第ｎ層画像データの各ブロックにそれぞれ対応する、画像符号化方式にて符号化を行なう第ｉ層画像データのブロックの縦の大きさに１／Ｘｉ（Ｘｉは実数であり、第ｉ層画像データの縦方向の解像度。１≦ｉ≦Ｎでｉはｎを含まない自然数。）倍乗算した大きさの最小公倍数、および当該ブロックの横の大きさに１／Ｙｉ（Ｙｉは実数であり、第ｉ層画像データの横方向の解像度）倍乗算した大きさの最小公倍数、をそれぞれ縦と横の大きさとするブロック単位で判定し、画像符号化データ作成処理手段は、入力画像データを用いる領域については、解像度変換処理手段により入力画像データの対応する領域の縦方向の解像度をＸｎ（Ｘｎは実数であり、第ｎ層画像データの縦方向の解像度）倍に、横方向の解像度をＹｎ（Ｙｎは実数であり、第ｎ層画像データの横方向の解像度）倍に、それぞれ変換した画像データを用いて、第ｎ層画像データを生成する。
【００１４】
好ましくは、第ｎ層画像データにおいて入力画像データの画素値を用いた領域に対応し、画像符号化方式にて符号化を行なう第（ｎ＋１）層画像データの領域には、復号処理されたときに平坦値になる平坦化変換パターンを用いる。
【００１５】
好ましくは、層画像データを小領域単位で関数変換処理する非可逆符号化方式であって画像符号化方式とは異なる、第２の画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを第２の平坦化変換パターンとするとき、第ｎ層画像データにおいて入力画像データの画素値を用いた領域に対応し、第２の画像符号化方式にて符号化を行なう第（ｎ＋１）層画像データの領域には、第２の平坦化変換パターンを用いる。
【００１６】
好ましくは、平坦値は、第ｎ層画像データの復号化において透明色として用いられる値である。
【００１７】
好ましくは、出力データ作成処理手段は、さらに透明色の値を出力データに含める。
この発明の他の局面に従うと、演算処理装置を有するコンピュータが、入力画像データにそれぞれ対応するＮ個(Ｎは２以上の自然数)の層の層画像データに前記入力画像データを分離し、そのうち少なくとも１個の層画像データは小領域単位で関数変換処理する非可逆符号化方式の画像符号化方式にて符号化を行なう画像符号化方法であって、領域情報データ入力処理手段が、個々の層画像データである第ｎ層画像データ(ｎは１以上で、Ｎ以下の自然数。ｎが小さい程合成処理される場合に上層に配置される。)で表現すべき有効領域が少なくとも特定可能な領域情報データを入力するステップと、層分離処理手段が、領域情報データに基づいて、画像符号化方式にて符号化を行なう層画像データについて、小領域単位で、入力画像データの画素値を用いる領域と、画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを平坦化変換パターンとするとき、該平坦化変換パターンを用いて符号化する領域とを領域判定し、第ｎ層画像データを生成するステップと、画像符号化データ作成処理手段が、層分離処理手段により作成された第ｎ層画像データを画像符号化方式で符号化し、第ｎ層画像符号化データを作成するステップと、出力データ作成処理手段が、画像符号化データ作成処理手段により作成された第ｎ層画像符号化データを少なくとも含む出力データを作成するステップとを備える。
【００１８】
この発明のさらに他の局面に従うと、入力画像データにそれぞれ対応するＮ個(Ｎは２以上の自然数)の層の層画像データに入力画像データを分離し、そのうち少なくとも１個の層画像データは小領域単位で関数変換処理する非可逆符号化方式の画像符号化方式にて符号化を行なう画像符号化方法を、演算処理装置を有するコンピュータに実行させる画像符号化プログラムであって、演算処理装置が、個々の層画像データである第ｎ層画像データ(ｎは１以上で、Ｎ以下の自然数。ｎが小さい程合成処理される場合に上層に配置される。)で表現すべき有効領域が少なくとも特定可能な領域情報データを入力するステップと、演算処理装置が、領域情報データに基づいて、画像符号化方式にて符号化を行なう層画像データについて、小領域単位で、入力画像データの画素値を用いる領域と、画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを平坦化変換パターンとするとき、該平坦化変換パターンを用いて符号化する領域とを領域判定し、第ｎ層画像データを生成するステップと、演算処理装置が、作成された第ｎ層画像データを画像符号化方式で符号化し、第ｎ層画像符号化データを作成するステップと、演算処理装置が、作成された第ｎ層画像符号化データを少なくとも含む出力データを作成するステップとをコンピュータに実行させる。
【００１９】
この発明のさらに他の局面に従うと、画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体であって、画像符号化プログラムは、入力画像データにそれぞれ対応するＮ個(Ｎは２以上の自然数)の層の層画像データに入力画像データを分離し、そのうち少なくとも１個の層画像データは小領域単位で関数変換処理する非可逆符号化方式の画像符号化方式にて符号化を行なう画像符号化方法を、演算処理装置を有するコンピュータに実行させる画像符号化プログラムであって、演算処理装置が、個々の層画像データである第ｎ層画像データ(ｎは１以上で、Ｎ以下の自然数。ｎが小さい程合成処理される場合に上層に配置される。)で表現すべき有効領域が少なくとも特定可能な領域情報データを入力するステップと、演算処理装置が、領域情報データに基づいて、画像符号化方式にて符号化を行なう層画像データについて、小領域単位で、入力画像データの画素値を用いる領域と、画像符号化方式により符号化され復号処理されたときに当該小領域内の画素値が同一の平坦値になる平坦領域の符号化前の画素値パターンを平坦化変換パターンとするとき、該平坦化変換パターンを用いて符号化する領域とを領域判定し、第ｎ層画像データを生成するステップと、演算処理装置が、作成された第ｎ層画像データを画像符号化方式で符号化し、第ｎ層画像符号化データを作成するステップと、演算処理装置が、作成された第ｎ層画像符号化データを少なくとも含む出力データを作成するステップとをコンピュータに実行させる。
【発明の効果】
【００２０】
本発明によると、非可逆符号化方式であっても、符号化し復号されたときの領域の画素値がすべて同じ値である平坦値になる画素値パターンである、平坦化変換パターンを有する非可逆符号化方式であれば、平坦化変換パターンの領域に関して、符号化後の画像が、符号化時のパラメータにより決定される平坦値を持った平坦領域になることが保障されている。したがって、その平坦値である領域について、他の層の画像を用いることにすれば、符号化時の入力画像に相当する画像を再生できる。
【００２１】
また、その平坦値をデコーダ側で透明色に指定することにすれば、透明領域を平坦化変換パターンで埋めれば、復号時には確実に透明色になる。すなわち、平坦化変換パターンを有する非可逆領域方式の関数変換を行なう小領域単位での符号化時のパラメータにより決定される透明色の指定を確実に行なうことが可能である。
【００２２】
透明色を含む層の画像データに非可逆符号化方式を用いて、復号時に特定の領域が確実に透明色となるように符号化処理を行なえる。本発明の画像符号化方法、またはこの画像符号化方法を用いた画像符号化装置によると、透明色領域を特定可能な状態で、上層画像を非可逆符号化方式で符号化することを可能とし、透明色データを不要とする。これにより、高圧縮率を実現すると共に、高速復号処理を可能とする。
【発明を実施するための最良の形態】
【００２３】
最初に、本発明の明細書および請求の範囲で用いる用語の定義付けを行なう。ＤＣＴ(離散コサイン変換)、ＤＦＴ(離散フーリエ変換)、直交ウェーブレット変換に代表される直交変換にとどまらず、非直交ウェーブレット等の非直交変換も含む関数による入力画像データの変換を「関数変換」と定義する。また、画素値がすべて同じ値である領域を「平坦領域」と定義し、平坦領域の画素値を「平坦値」と定義する。具体例で記載すると、領域内の画素値がすべて０の領域を「平坦値０の平坦領域」、領域内の画素値がすべて２５５の領域を「平坦値２５５の平坦領域」、領域内の画素値がすべてＮの領域を「平坦値Ｎの平坦領域」という。
【００２４】
また、領域単位で関数変換処理する非可逆画像符号化方式において、上記１つの領域の画素値を、少なくとも１つの特定のパラメータ条件下で符号化し、符号化したデータを復号することによって得られる１つの復号領域が、平坦領域になる場合、符号化前の上記領域の画素値パターンを「平坦化変換パターン」と定義する。言い換えると、「平坦化変換パターン」とは、符号化前は平坦領域でなくてもよいが、特定のパラメータ条件下で符号化後、符号化したデータを復号すると平坦領域となる符号化前の入力領域である。さらに、平坦化変換パターンが存在する非可逆画像符号化方式を「平坦化変換パターンを有する非可逆画像符号化方式」と定義する。
【００２５】
また、領域単位で関数変換処理する非可逆画像符号化方式において、上記１つの領域の画素値を、任意のパラメータ条件下で符号化し、符号化したデータを復号することによって得られる１つの復号領域が、平坦領域になる場合、符号化前の上記領域の画素値パターンを「恒常平坦化変換パターン」と定義する。言い換えると、「恒常平坦化変換パターン」とは、符号化前は平坦領域でなくてもよいが、符号化する時のパラメータ条件に関係なく、つまり、任意のパラメータ条件下で符号化後、符号化したデータを復号すると平坦領域となる符号化前の入力領域である。さらに、恒常平坦化変換パターンが存在する非可逆画像符号化方式を「恒常平坦化変換パターンを有する非可逆画像符号化方式」と定義する。
【００２６】
また、平坦化変換パターン自体が、符号化前から平坦領域であり、特定のパラメータ条件下で符号化し、復号したときの平坦値がその符号化前の平坦値と一致するような平坦化変換パターンを「不動平坦化変換パターン」と定義する。言い換えると、「不動平坦化変換パターン」とは、符号化前から平坦領域であり、特定のパラメータ条件下で符号化後、符号化したデータを復号すると符号化前の平坦値と同じ平坦値の平坦領域となる符号化前の入力領域である。つまり、特定のパラメータ条件下で符号化したとき、符号化により領域は変化しないものである。さらに、不動平坦化変換パターンが存在する非可逆画像符号化方式を「不動平坦化変換パターンを有する非可逆画像符号化方式」と定義する。
【００２７】
また、平坦化変換パターン自体が、符号化前から平坦領域であり、任意のパラメータ条件下で符号化し、復号したときの平坦値がその符号化前の平坦値と一致するような平坦化変換パターンを「恒常不動平坦化変換パターン」と定義する。言い換えると、「恒常不動平坦化変換パターン」とは、符号化前から平坦領域であり、符号化する時のパラメータ条件に関係なく、つまり、任意のパラメータ条件下で符号化後、符号化したデータを復号すると符号化前の平坦値と同じ平坦値の平坦領域となる符号化前の入力領域である。つまり、任意のパラメータ条件下で符号化したとき、符号化により領域は変化しないものである。さらに、恒常不動平坦化変換パターンが存在する非可逆画像符号化方式を「恒常不動平坦化変換パターンを有する非可逆画像符号化方式」と定義する。
【００２８】
以上の定義に基づく各平坦化変換パターンの具体例を図１〜図４に示している。いずれもＪＰＥＧを用いたものであり、具体的には、IJG libjpeg付属のcjpegで符号化し、djpegで復号する実験を行なったものである。ＪＰＥＧの処理単位である縦８画素×横８画素（以下、８×８画素と称する。）のブロックを領域単位としている。図１は平坦化変換パターンを説明するもので、符号化前の領域を示す（ａ）は０と１の画素値から構成された領域であり、平坦領域ではない。量子化パラメータＱを特定の７５でＪＰＥＧ符号化し復号すると、画素値０から構成された平坦領域（ｂ）になる。しかし、特定された量子化パラメータＱ＝７５を、たとえばＱ＝１００の量子化パラメータでＪＰＥＧ符号化し復号すると、０と１の画素値から構成された領域（ｃ）となり、平坦領域にはならない。この場合の符号化前の領域（ａ）は特定された量子化パラメータＱ＝７５で符号化し復号されたときに平坦領域になるから、平坦化変換パターンであることがわかる。
【００２９】
図２は恒常平坦化変換パターンを説明するもので、符号化前の領域を示す（ａ）は画素値０が大半を占めるが、画素値１も一部含まれた構成の領域であり、平坦領域ではない。任意の量子化パラメータ（Ｑ＝０〜１００）でＪＰＥＧ符号化し復号すると、画素値０から構成された平坦領域（ｂ）になる。この場合の符号化前の領域は任意の量子化パラメータで符号化し復号されたときに平坦領域になるから、恒常平坦化変換パターンであることがわかる。
【００３０】
図３は不動平坦化変換パターンを説明するもので、符号化前の領域を示す（ａ）は画素値１２９の平坦値で構成された平坦領域である。量子化パラメータＱを特定の７５でＪＰＥＧ符号化し復号すると、画素値１２９の平坦値で構成された平坦領域（ｂ）になる。これは平坦値がその符号化前の平坦値と一致しており符号化により領域は変化していない。しかし、特定された量子化パラメータＱ＝７５を、たとえばＱ＝０の量子化パラメータでＪＰＥＧ符号化し復号すると、画素値１２８の平坦値で構成された平坦領域（ｃ）になる。これは符号化前後ともに平坦領域ではあるが、符号化し復号後の平坦値１２８がその符号化前の平坦値１２９から変化している。この場合は、特定された量子化パラメータＱ＝７５で符号化し復号されたときに復号したときの平坦値がその符号化前の平坦値と一致する、つまり、符号化により領域は変化しないものであるから、不動平坦化変換パターンであることがわかる。
【００３１】
図４は恒常不動平坦化変換パターンを説明するもので、符号化前の領域を示す（ａ）は画素値がすべて０（平坦値０）の平坦領域であり、任意の量子化パラメータ（Ｑ＝０〜１００）でＪＰＥＧ符号化し復号しても、画素値がすべて０（平坦値０）の平坦領域（ｂ）のままで領域は変化しない。したがって、この場合は、恒常不動平坦化変換パターンであることがわかる。
【００３２】
以上の定義から明らかなように、領域データと各平坦化変換パターンとの間には図５に示す包含関係が、各非可逆符号化方式の間には図６に示す包含関係がある。たとえば、ＪＰＥＧ画像符号化方式とＭＰＥＧ画像符号化方式は、８×８画素領域単位で関数変換である離散コサイン変換を用いて符号化を行なう非可逆画像符号化方式である。ＪＰＥＧ画像符号化方式とＭＰＥＧ画像符号化方式の平坦化変換パターンは、８×８画素領域のすべてが同じ値であるもの（すなわち平坦領域）すべてである。これは、８×８画素領域で画素値変化がないことは、離散コサイン変換後の交流成分が０になり、符号化後も平坦領域となるからである。また、ＪＰＥＧ画像符号化方式とＭＰＥＧ画像符号化方式の恒常平坦化変換パターンは、８×８画素領域のすべての画素値が０である（すなわち平坦値０の平坦領域）。これは、平坦化変換パターンの内、直流成分が０のときは量子化の影響を受けないためである。（他の平坦化変換パターンでは、量子化幅の設定（符号化時のパラメータ条件）が異なれば、符号化後の平坦値も変わることがあるため、恒常平坦化変換パターンとはいえない。）また、８×８画素領域のすべての画素値が０である恒常平坦化変換パターンは、符号化し復号後にも平坦値０の平坦領域に変換されるため、さらに「恒常不動平坦化変換パターン」であると言える。以上から、ＪＰＥＧ画像符号化方式とＭＰＥＧ画像符号化方式は「恒常不動平坦化変換パターンを有する非可逆画像符号化方式」である。
【００３３】
本発明の技術的ポイントを説明する。特定画素値を透明にする画素値である「透明色」として規定することにより、画像データを複数層に分離して表現することが可能である。復号時には、上の層の特定画素値を透明色とすることにより、下の層の画素値が表示に用いられる。このように透明色を用いることにより有効に表示される層が確定される。入力画像データを複数層の画像データに分離し、一部の層または、すべての層をそれぞれ符号化処理する場合、符号化処理する層画像データに透明色が含まれている場合、特定画素値には、他の画素値と基本的に意味の全く異なる「透明」という特殊な効果が割り当てられている。特定画素値の値が符号化によって、たとえ非常に近い値であっても値が変化してしまうと狙った効果が全く得られない。そのため、従来では、透明色を含む層の画像データを符号化する場合、可逆符号化方式を用いていた。
【００３４】
本発明は、非可逆符号化方式であっても、符号化し復号されたときの領域の画素値がすべて同じ値である平坦値になる平坦領域の符号化前の画素値パターンである、平坦化変換パターンを有する非可逆符号化方式であれば、平坦化変換パターンの領域に関して、符号化後の画像が、符号化時のパラメータにより決定される平坦値を持った平坦領域になることが保障されている。したがって、その平坦値をデコーダ側で透明色に指定すること（もちろん符号化データのヘッダや補助情報の中に透明色の画素値を入れてデコーダ側に渡してもよい）を限定とすれば、透明領域を平坦化変換パターンで埋めれば、復号時には確実に透明色になる。すなわち、平坦化変換パターンを有する非可逆領域方式の関数変換を行なう小領域単位での符号化時のパラメータにより決定される透明色の指定を確実に行なうことが可能である。
【００３５】
また、符号化時のパラメータ条件によらず符号化し復号されたとき平坦化変換パターンとなる、恒常平坦化変換パターンを有する非可逆画像符号化方式であれば、関数変換を行なう小領域単位での符号化時のパラメータを任意に設定しても、透明色の指定を確実に行なうことが可能である。
【００３６】
また、平坦化変換パターン自体が、符号化前から平坦領域であり、特定のパラメータ条件下で符号化し、復号したときの平坦値がその符号化前の平坦値と一致する、不動平坦化変換パターンを有する非可逆符号化方式であれば、不動平坦化変換パターン自体が符号化時のパラメータにより決定される透明色とすることが可能であるという利点がある。
【００３７】
また、平坦化変換パターン自体が、符号化前から平坦領域であり、任意のパラメータ条件下で符号化し、復号したときの平坦値がその符号化前の平坦値と一致する、恒常不動平坦化変換パターンを有する非可逆符号化方式であれば、恒常不動平坦化変換パターン自体を符号化時のパラメータを任意に設定しても、透明色とすることが可能であるという利点がある。
【００３８】
すべての実施の形態に共通する基本技術は、透明色を含む層の画像データに非可逆符号化方式を用いて、復号時に透明にしたい領域が、復号時に確実に透明色となるよう制御し符号化処理を行なう技術である。本発明の画像符号化装置は、透明色領域を特定可能な状態で、上層画像を非可逆符号化方式で符号化することを可能とし、透明色データを不要とする。これにより、高圧縮率を実現すると共に、高速復号処理を可能とする。
【００３９】
［実施の形態１］
本実施の形態の画像符号化装置は、入力画像データを上層である第１層画像データと下層である第２層画像データに分離し、それぞれを符号化する装置である。復号時には、第１層の特定画素値を透明色とすることにより、表示に有効となる層が確定されることを前提とする。すなわち、第１層画像で透明色とされる領域部分が投影する部分は第２層画像の表示が有効となる。第１層画像で透明色とされない領域部分は第１層画像の表示が有効となる。指定された特定画素値には、他の画素値と基本的に関連がない、「透明」という特殊な効果が割り当てられている。特定画素値の値が符号化によって、たとえ非常に近い値であっても値が変化してしまうと狙った効果が得られない。そのため、従来では、透明にしたい画素を透明色とした上で、透明色を含む第１層の画像データを符号化する場合、可逆符号化方式を用いていた。
【００４０】
本実施の形態は、非可逆符号化方式であっても、第１層の画像データの透明にしたい箇所が復号後に確実に透明色になるように、層分離を制御し符号化処理を行なう技術である。第１層画像データの符号化に用いる画像符号化方式を、第１層画像符号化方式と呼ぶ。第１層画像符号化方式は、「平坦化変換パターンを有する非可逆画像符号化方式」であればよい。第２層画像データの符号化に用いる画像符号化方式を、第２層画像符号化方式と呼ぶ。第２層画像符号化方式は、任意の符号化方式を適用可能である。
【００４１】
本実施の形態では、第１層画像データ、第２層画像データの符号化を共にＪＰＥＧ画像符号化方式で行なうこととする。また、第１層画像データの符号化による画質劣化は、第２層画像データの符号化による画質劣化より小さくなるよう符号化時のパラメータを設定するなど、各層で異なる条件での符号化とすることが望ましい。これは、複数層に分けて符号化を行なう利点が出しやすいためである。
【００４２】
まず、本発明の概念的な処理の流れを、図７〜図８を用いて説明する。図７は恒常不動平坦化変換パターンを透明にしたい箇所に用いて符号化を行なう例を示している。（ａ）は入力画像であり、この入力画像データから第１層画像符号化データ（ｇ）、第２層画像符号化データ（ｈ）を作成するまでを説明する。（ｂ）に第１層画像で表示すべき領域を示している。ここでは、「ＡＢＣＤＥＦＧＨ」の黒色表示の文字を含む領域が第１層画像で表示すべき領域を示している。
【００４３】
領域情報データ（ｂ）の第１層画像で表示すべき領域は、入力画像データに応じて、ユーザがマニュアルで指定して作成してもよいし、たとえば、「文字データ」の存在する領域を第１層画像で表示すべき領域とする場合は、「文字」を入力画像から画像パターンの判別プログラムにより自動判別することにより作成されてもよい。
【００４４】
次に（ｄ）に示す層分離情報データを作成する。
層分離情報データ（ｄ）は、（ｃ）に示すように領域情報データを第１層画像符号化方式の関数変換の処理単位に分け、前記関数変換の処理単位領域内に第１層で表示すべき領域があれば、前記関数変換の処理単位領域を、第１層領域とする。（層分離情報データ（ｄ）の黒で塗りつぶした領域が第１層領域である。）また、その他の領域を第２層領域（（ｅ）において黒で塗りつぶした領域が相当する。）とする。
【００４５】
入力画像データ（ａ）のうちから層分離情報データ（ｄ）の第１層領域を有効に表示し、その他の第２層領域を透明にするために、たとえば「恒常不動平坦化変換パターン」とした第１層画像データ（ｅ）と、入力画像データ（ａ）のうちから層分離情報データ（ｄ）の第２層領域を有効に表示し、第１層領域（（ｆ）において斜線で示されている部分ｆ１の領域）は単色で塗りつぶし圧縮率を高めることを可能とした第２層画像データ（ｆ）を作成する。
【００４６】
第１層画像データ（ｅ）の第２層領域を埋める恒常不動平坦化変換パターンは、具体的には、図４の（ａ）に示すように、すべての画素値が０（平坦値が０）の平坦領域である。第２層画像データ（ｆ）において斜線で示されている部分ｆ１を単色で塗りつぶしても構わないのは、この部分は第１層画像で表示すべき第１層領域であるため、この領域は、第２層画像データは表示に用いられないためである。このｆ１部分についての画素値のより有効な決め方は後述する。第１層画像データ（ｅ）、第２層画像データ（ｆ）を符号化処理して第１層画像符号化データ（ｇ）、第２層画像符号化データ（ｈ）を作成する。
【００４７】
なお、第１層画像符号化データ（ｇ）、第２層画像符号化データ（ｈ）は、画像符号化データ接合処理により、出力画像符号化データに接合されて出力される。また、出力画像符号化データは、ヘッダ部とデータ部からなり、ヘッダ部に第１層画像符号化データと第２層画像符号化データのファイル先頭からのオフセット値が格納されており、第１層画像符号化データと第２層画像符号化データを分離するのに必要な情報が揃っている。なお、この「画像符号化データ接合処理」については、図９、図１０を用いて、さらに、「出力画像符号化データ」の構成については、図１１を用いて、後に説明する。
【００４８】
したがって、厳密に言えば、次の図８では復号処理の前に、出力画像符号化データから第１層画像符号化データ（ｇ）、第２層画像符号化データ（ｈ）に分離するのであるが、この図７、図８の説明においては、わかり易くするため、この説明を省略している。
【００４９】
図８は、図７で符号化された第１層画像符号化データ（ｇ）、第２層画像符号化データ（ｈ）を復号処理した第１層画像復号データ（ｊ）、第２層画像復号データ（ｋ）を合成処理した復号画像（ｍ）を作成するまでを示している。正しく合成処理された復号画像（ｍ）においては、第１層画像復号データ（ｊ）の黒く塗りつぶして示されている領域部分（第２層領域）の画素は透明色であるから、この部分が投影される第２層画像復号データ（ｋ）の領域部分は第２層画像復号データ（ｋ）の画素が適用され、入力画像が有効に表示されることがわかる。この透明にする画素の画素値（透明色）を、エンコーダで出力画像符号化データのヘッダに埋め込んでおき、復号側で復号処理の際に読み取ってもよい。
【００５０】
また、出力画像符号化データのヘッダ部に復号時に第１層画像データにおいて透明とする領域には透明色とする画素値を格納しておけば、復号側でデータに応じて動的に透明色とする画素値を変えることも可能となる。ここで「動的に」とは、「固定的ではなく」の意である。なお、図７の第１層画像データ（ｅ）において、透明にしたい領域に恒常不動平坦化変換パターンを用いたが、代わりに符号化後に復号したとき平坦領域になる平坦化変換パターンを用いてもよく、復号の際に変換後の平坦値を透明色に指定すればよい。
【００５１】
次に、図９を用いて、本実施の形態の画像符号化装置のシステム構成を説明する。画像符号化装置０１０４は、領域情報入力装置０１０１から領域情報データを、画像入力装置０１０２から入力画像データをそれぞれ受け取り、画像符号化データ出力装置０１０３に画像符号化データを出力する。
【００５２】
画像符号化装置０１０４は、領域情報入力装置０１０１からの領域情報データを格納する領域情報データバッファ０１０５と、領域情報データに基づいて、入力画像を分離して生成する複数の層の画像、たとえば、第１層と第２層の画像を特定するための層分離情報データを作成する層分離情報作成処理部０１０６と、作成された層分離情報データを格納する層分離情報データバッファ０１０８と、画像入力装置０１０２からの入力画像データを格納するための入力画像データバッファ０１０７と、層分離情報データに基づいて、入力画像データから第１層と第２層の画像を分離して、少なくとも第１層画像データにおける第２層領域は、上述した平坦化変換パターンで埋める処理を行なう層分離処理部０１０９とを含む。
【００５３】
画像符号化装置０１０４は、さらに、層分離処理部０１０９から出力された第１層画像データおよび第２層画像データをそれぞれ格納するための第１層画像データバッファ０１１０および第２層画像データバッファ０１１１と、第１層画像データバッファ０１１０の第１層画像データに対して、復号時に上記平坦化変換パターンで埋められた領域が平坦領域となるような第１画像画像符号化方式で符号化する第１画像符号化処理部０１１２と、第２層画像データバッファ０１１３の第２層画像データに対して、第２画像画像符号化方式で符号化する第２画像符号化処理部０１１３と、第１および第２画像符号化処理部０１１２，０１１３で符号化されたデータをそれぞれ格納する第１および第２画像符号化データバッファ０１１４，０１１５と、第１および第２画像符号化データバッファ０１１４，０１１５内の符号化データを接合して出力画像符号化データを生成する画像符号化データ接合処理部０１１６と、生成された出力画像符号化データを格納する出力画像符号化データバッファ０１１７とを含む。
【００５４】
なお、以下の説明では、画像符号化の一例として、第１層画像データおよび第２層画像データとも、ＪＰＥＧ方式で画像符号化されるものとする。
【００５５】
図１０は、画像符号化装置０１０４の処理の流れを示すフローチャートである。
ここで、図９および図１０を用いて、画像符号化装置０１０４の各部の機能および画像符号化装置０１０４が行なう処理について説明する。領域情報データバッファ０１０５は、領域情報入力装置０１０１から入力された領域情報データを格納する（Ｓ０５０２）。領域情報データは、マスクや、座標指定等で、画像の領域の第１層画像データで表現すべき領域が特定できるようなデータ形式であれば、その形式は限定されない。以下では、特に限定はされないが、図７（ｂ）に示すように、黒色という色（図７（ｂ）では文字の色）の情報により、第１層で表示すべき領域が特定されているものとして説明する。層分離情報作成処理部０１０６にて、領域情報データバッファ０１０５から領域情報データを読み取り、層分離情報データを出力する（Ｓ０５０３）。
【００５６】
この層分離情報作成処理部０１０６は、第１層画像データを符号化する時の関数変換により処理される領域単位（ＪＰＥＧ画像符号化方式ではＤＣＴ変換の処理単位である８×８画素単位）で、入力画像の領域単位毎に第１層領域か否かを判定する。たとえば、第１層画像データを符号化する時の関数変換により処理される領域単位（ＪＰＥＧ画像符号化方式ではＤＣＴ変換の処理単位である８×８画素単位）で、第１層で表示すべき領域が含まれている場合、その領域を第１層領域とする。また、第１層画像データを符号化時の関数変換により処理される領域単位（ＪＰＥＧ画像符号化方式ではＤＣＴ変換の処理単位である８×８画素単位）で、入力画像を指定する画素の割合が一定値以上である場合、その領域を第１層領域とするなど、してもよい。
【００５７】
層分離情報データバッファ０１０８は、層分離情報作成処理部０１０６で出力された層分離情報データを格納する（Ｓ０５０４）。一方、入力画像データバッファ０１０７は、画像入力装置０１０２から入力画像データを受け取り格納する（Ｓ０５０５）。層分離処理部０１０９は、層分離情報データバッファ０１０８から、層分離情報データを、入力画像データバッファ０１０７から入力画像データを、それぞれ読み取り、第１層画像データと第２層画像データを出力する（Ｓ０５０６）。ここで、層分離処理部０１０９は、層分離情報データにより第１層画像データのうちの第１層領域は入力画像の画素値で、その他の領域は、平坦化変換パターンで埋める。平坦化変換パターンで埋めた領域は、後の符号化処理で、平坦領域になり、その平坦値を透明色に指定すれば、この平坦化変換パターンで埋めた領域は第２層の画像情報が適用されることになる。
【００５８】
ここでは、たとえば、平坦化変換パターンとして、ＪＰＥＧ画像符号化方式の恒常不動平坦化変換パターンを用いることとする。すなわち、層分離情報データで第１層領域でない第１層画像データの領域内の画素値をすべて０とする。層分離情報データにより第２層画像データの領域のうち、第２層領域は、入力画像データの画素値で埋め、第１層領域は、任意の画素値で埋めればよい。本実施の形態では、層分離情報データによらず、第２層画像データには、入力画像データの値を埋めることとする。層分離処理部０１０９で出力された第１層画像データは第１層画像データバッファ０１１０に、第２層画像データは、第２層画像データバッファ０１１１にそれぞれ格納される（Ｓ０５０７）。
【００５９】
第１層画像符号化処理部０１１２は、第１層画像データバッファ０１１０から第１層画像データを読み取り、ＪＰＥＧ符号化した第１層画像符号化データを出力し、第２層画像符号化処理部０１１３は、第２層画像データバッファ０１１１から第２層画像データを読み取り、ＪＰＥＧ符号化した第２層画像符号化データを出力する（Ｓ０５０８）。第１層画像符号化処理部０１１２で出力された第１層画像符号化データは第１層画像符号化データバッファ０１１４に、第２層画像符号化処理部０１１３で出力された第２層画像符号化データは第２層画像符号化データバッファ０１１５にそれぞれ格納される（Ｓ０５０９）。画像符号化データ接合処理部０１１６は、第１層画像符号化データバッファ０１１４から第１層画像符号化データを、第２層画像符号化データバッファ０１１５から、第２層画像符号化データをそれぞれ読み取り、出力画像符号化データを出力する（Ｓ０５１０）。
【００６０】
図１１は、出力画像符号化データの構造を示す概念図である。この構造は、ヘッダ部とデータ部からなり、ヘッダ部に第１層画像符号化データと第２層画像符号化データのファイル先頭からのオフセット値が格納されており、第１層画像符号化データと第２層画像符号化データを分離するのに必要な情報が揃っている。このように、第１層画像符号化データと第２層画像符号化データを分離可能であれば、いかなる構造でもよい。また、ヘッダ部に復号時に第１層画像データで透明色とする画素値を格納しておけば、復号側でデータに応じて動的に透明色とする画素値を変えることが可能となる。なお、ここで「動的に」とは、「固定的ではなく」の意である。
【００６１】
再び図１０を参照して、画像符号化データ接合処理部０１１６から出力された出力画像符号化データを出力画像符号化データバッファ０１１７に格納する（Ｓ０５１１）。
【００６２】
領域情報データバッファ０１０５、入力画像データバッファ０１０７、層分離情報データバッファ０１０８、第１層画像データバッファ０１１０、第２層画像データバッファ０１１１、第１層画像符号化データバッファ０１１４、第２層画像符号化データバッファ０１１５、出力画像符号化データバッファ０１１７は、フラッシュメモリ、ハードディスク等のＲＡＭ(ランダムアクセスメモリ)によって実現される。
【００６３】
層分離情報作成処理部０１０６、層分離処理部０１０９、第１層画像符号化処理部０１１２、第２層画像符号化処理部０１１３、画像符号化データ接合処理部０１１６は、たとえば、それぞれ専用回路等のハードウェアによって実現される。あるいは、たとえば、ソフトウェアに基づいてコンピュータ等の演算処理回路によってその機能が実現されてもよい。
【００６４】
上記説明の変形例などを以下に補足しておく。第１層画像符号化方式は、「平坦化変換パターンを有する非可逆画像符号化方式」であればよい。層分離処理部０１０９により第１層画像データの作成で、第２層領域は、第１層画像符号化方式の平坦化変換パターンで埋めればよい。上記第１層画像符号化方式の平坦化変換パターンは第１層画像符号化方式による符号化により、平坦領域となる。その平坦領域の平坦値を第１層の復号時の透明色指定画素値とすることにより透明色指定とすることができ、透明色の領域は下層である第２層の復号結果が表示に用いられる。
【００６５】
層分離処理部０１０９による第２層画像データの作成で、第１層領域は、第２層画像データが復号時の表示には用いられないため、基本的に任意の画素値で埋めればよく、たとえば、第２層画像符号化方式での符号化に有利な画素値で埋めればよい。これにより、第２層画像符号化データの容量を削減することができ、出力画像符号化データの容量も削減できる。
【００６６】
しかし、第１層画像データの符号化には非可逆符号化方式を用いているため、符号化し復号後に透明色に指定したい領域以外の画素でも、符号化し復号後たまたま透明色に指定した画素値になる場合もありうる。この場合は、上記たまたま透明色に指定した画素値になった画素については、第２層画像符号化データの画素値が表示に用いられる。このことを考慮すると、層分離処理部０１０９での第２層画像データの作成で、第２層画像データの第１層領域は第１層で透明色に指定する画素値で埋めることが望ましい。
【００６７】
透明色は、飽くまで第１層での取り決めであり、第２層では透明色という概念はない。
したがって、第２層画像データでは第１層で透明色に指定する画素値は透明という機能を有しない単なる画素値である。第１層画像において透明色に指定したい画素以外で、符号化し復号後たまたま透明色に指定した画素値になった場合に透明となり、第２層画像が表示されることになるが、層分離処理部０１０９での第２層画像データの作成で、第２層画像データの第１層領域は第１層で透明色に指定する画素値で埋めることにより、表示される画素は第１層で透明色に指定する画素値を符号化したものであるから、適切な画素値が表示に用いられる。
【００６８】
さらに、よりよい第２層画像データの第１層領域の画素値の埋め方は、平坦値が第１層で透明色としている画素値である第２層画像符号化方式の平坦化変換パターンを用いることである。そうすれば、第１層画像において透明色に指定したい画素以外で、符号化し復号後たまたま透明色に指定した画素値になった場合に、第２層の復号データは、第１層で透明色としている画素値そのものになる。
【００６９】
すなわち、第２層画像符号化方式に「平坦化変換パターンを有する非可逆画像符号化方式」を用いる場合、その平坦化変換パターンの内、符号化し復号後の平坦値が、第１層画像符号化方式の平坦化変換パターンの内、第１層画像符号化方式で符号化し復号後の平坦値と一致する平坦値を第１層の透明色とすれば、第２層画像データの第１層領域の画素値を、符号化の関数変換を施す処理単位毎で、完全に第１層の透明色に指定した画素値で表すことができる。
【００７０】
すなわち、第１層画像符号化方式と第２層画像符号化方式とで符号化し復号後の平坦値が同じである平坦化変換パターンをそれぞれ平坦化変換パターン１と平坦化変換パターン２とすると、層分離処理部０１０９での第１層画像データの作成で、第２層領域には、平坦化変換パターン１で埋め、第２層画像データの作成で、第２層画像データの符号化時の関数変換処理が行なわれる単位領域が、第１層領域である場合、この単位領域を平坦化変換パターン２で埋め、その他の単位領域は入力画像データの画素値で埋める。
【００７１】
さらに、第１層画像データを符号化する画像符号化方式の関数変換処理単位と第２層画像データを符号化する画像符号化方式の関数変換処理単位が共にブロックである場合、両関数変換処理単位のブロックの縦の大きさの公倍数、横の大きさの公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０１０６で行なう第１層領域か第２層領域かの判定を行なえば、層分離処理部０１０９における第２層画像データの作成で、第１層領域は、すべて平坦化変換パターン２で埋めることが可能となる。
【００７２】
またさらに望ましくは、第１層画像符号化方式の関数変換処理単位と第２層画像符号化方式の関数変換処理単位が共にブロックである場合、層分離情報作成処理部０１０６で行なう第１層領域か否かの判定は、両関数変換処理単位のブロックの縦の大きさの公倍数、横の大きさの公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で行なうことができる。層の切り分けを非可逆符号化される各層の各非可逆符号化方式の関数変換のブロックの大きさを各辺の公倍数とすることで各領域が効率的に領域設定が可能となる。
【００７３】
さらに、両関数変換処理単位のブロックの縦の大きさの最小公倍数、横の大きさの最小公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０１０６で行なう第１層領域の有無の判定を行なえば、層分離処理部０１０９における第２層画像データの作成で、第１層領域は、すべて平坦化変換パターン２で埋めることが可能となるとともに、両関数変換処理単位の最小公倍数のブロック単位で第１層領域の有無の判定を行なえば、透明指定領域をもっとも細かく指定できる。
【００７４】
［実施の形態２］
本実施の形態の画像符号化装置は、実施の形態１の画像符号化装置と同様に、入力画像データを上層である第１層画像データと下層である第２層画像データに分離し、それぞれを符号化する装置である。実施の形態１との違いは、各層画像データの解像度を変える解像度変換を施す処理が加わったことで、層毎に解像度を変えることによって、層によっては解像度を下げることができるため圧縮率が高まる。また、圧縮に際しビット数がより必要な層に他の解像度を下げた層で削減された容量を割り当てることが可能なため、画質も高めることができる。本実施の形態の画像符号化装置のシステム構成は、図９に示した実施の形態１の画像符号化装置のシステム構成における層分離処理部０１０９が図１２の層分離処理部０２０５のような構成になっている点以外は同様である。また、処理の流れも図１０の層分離処理Ｓ０５０６以外の処理の流れは実施の形態１と同様である。したがって、本実施の形態の画像符号化装置について、同一部分には同一符号を付して、上記に挙げた実施の形態１と同じ構成および処理についての説明は省略する。
【００７５】
ただし、層分離情報作成処理（図１０のＳ０５０３）から層分離処理（図１０のＳ０５０６）については以下に補足説明する。
【００７６】
すなわち、実施の形態２では、図１２に示す層分離処理部０２０５の処理の流れを、図１０の層分離処理（Ｓ０５０６）に相当する他の処理に置き換える。図１３は、このようなＳ０５０６と置き換える処理Ｓ０６０２を示す。
【００７７】
以下、図１２および図１３を参照して、第１層解像度変換処理部０２０６にて、入力画像データバッファ０１０７から、入力画像データを読み取り、Ｔ１倍（たとえば、０．５倍）に解像度変換した第１層解像度変換画像データを出力し、第２層解像度変換処理部０２０７にて、入力画像データバッファ０１０７から、入力画像データを読み取り、Ｔ２倍（たとえば、０．２５倍）に解像度変換した第２層解像度変換画像データを出力する（Ｓ０６０４）。Ｔ１、Ｔ２は、正の実数であればよい。このような解像度変換方法は、たとえば、バイリニアを用いることができる。しかし、バイリニアに限定する必要はなく、バイキュービックや単純間引きなど、解像度変換方法であれば如何なる方法を用いてもよい。
【００７８】
また、本実施の形態においては、説明を簡単にするため、縦方向の解像度と横方向の解像度とを同一とし、単に第１層、第２層の解像度をＴ１倍、Ｔ２倍と記載している。しかし、各層の縦方向の解像度と横方向の解像度とをそれぞれ異なった値に設定することができることはいうまでもない。
【００７９】
第１層解像度変換画像データバッファ０２０８は、第１層解像度変換処理部０２０６で出力された第１層解像度変換画像データを格納し、第２層解像度変換画像データバッファ０２０９は、第２層解像度変換処理部０２０７で出力された第２層解像度変換画像データを格納する（Ｓ０６０５）。画素値変更処理部０２１０は、層分離情報データバッファ０１０８から層分離情報データを、第１層解像度変換画像データバッファ０２０８から第１層解像度変換画像データを、第２層解像度変換画像データバッファ０２０９から第２層解像度変換画像データをそれぞれ読み取り、第１層画像データおよび、第２層画像データを出力する（Ｓ０６０６）。画素値変更処理部０２１０で出力された第１層画像データは第１層画像データバッファ０１１０に、第２層画像データは第２層画像データバッファ０１１１にそれぞれ格納される（Ｓ０５０７）。
【００８０】
第１層画像データは、層分離情報データにより第１層領域に指定されている領域は入力画像の画素値で埋め、その他の領域は、平坦化変換パターンで埋める。平坦化変換パターンで埋めた領域は、後の符号化処理で、復号すれば画素値が一定値になり、この値を透明色に指定すれば、この平坦化変換パターンで埋めた領域は透明になり、第２層の画像情報が適用されることになる。ここでは、平坦化変換パターンとして、ＪＰＥＧ画像符号化方式の恒常不動平坦化変換パターンを用いるものとする。すなわち、層分離情報データにより第１層領域に指定されていない第１層画像データの領域内の画素値をすべて０とした。第２層画像データにおいては、第１層領域以外の領域は、入力画像データの画素値で埋め、第１層領域は、任意の画素値で埋めればよい。本実施の形態では、入力画像データの画素値を埋めておく。つまり、入力画像データそのもの、またはコピーしたものを用いる。
【００８１】
ここで、層分離情報作成処理（図１０のＳ０５０３）について補足説明する。層分離情報作成処理（Ｓ０５０３）では、実施の形態１の説明にあるとおり、第１層画像データを符号化する時の関数変換の処理される領域単位で、第１層領域とするか否かを判定する処理である。たとえば第１層画像符号化方式がＪＰＥＧ画像符号化方式である場合、実施の形態１では、第１層領域とするか否かを判定する領域は、入力画像の解像度で８×８画素単位となるが、本実施の形態では、符号化される第１層画像データの解像度がＴ１倍されていることから、第１層画像データを符号化する時の関数変換により処理される領域単位とは、入力画像の解像度で言うと、（８／Ｔ１）×（８／Ｔ１）画素単位となることに留意しなければならない。たとえば、第１層画像データを符号化する時の関数変換により処理される領域単位で、領域情報データに第１層で表示すべき領域が含まれている場合、その領域を第１層領域とする。また、第１層画像データを符号化時の関数変換により処理される領域単位で、入力画像を指定する画素の割合が一定値以上である場合、その領域を第１層領域とするなど、してもよい。
【００８２】
なお、前述したように、第１層の縦方向の解像度をＴ１縦倍、第１層の横方向の解像度をＴ１横倍、と異なった値に設定している場合は、第１層画像データを符号化する時の関数変換により処理される領域単位は（８／Ｔ１縦）×（８／Ｔ１横）画素単位となる。第２層画像データについても、第１層画像データと同様の留意の下に処理を行なう必要がある。
【００８３】
第１層解像度変換画像データバッファ０２０８、第２層解像度変換画像データバッファ０２０９は、フラッシュメモリ、ハードディスク等のＲＡＭ(ランダムアクセスメモリ)によって実現される。
【００８４】
第１層解像度変換処理部０２０６、第２層解像度変換処理部０２０７、画素値変更処理部０２１０は、たとえばそれぞれ専用回路等のハードウェアによって実現される。また、たとえばソフトウェアに基づいてコンピュータ等の演算処理回路によってその機能が実現されてもよい。
【００８５】
上記説明の変形例などを以下に補足しておく。第１層画像符号化方式は、「平坦化変換パターンを有する非可逆画像符号化方式」であればよい。画素値変更処理部０２１０による第１層画像データの作成で、第２層領域は、第１層画像符号化方式の平坦化変換パターンで埋めればよい。上記第１層画像符号化方式の平坦化変換パターンは第１層画像符号化方式による符号化により、平坦領域となるが、その平坦値を復号時の透明色指定画素値とすることにより、透明色指定ができる。
【００８６】
画素値変更処理部０２１０による第２層画像データの作成で、第１層領域の第２層画像データは復号時の表示には用いられないため、基本的に任意の画素値で埋めればよく、第２層画像符号化方式での符号化に有利な画素値で埋めればよい。これにより、第２層画像符号化データの容量を削減することができ、出力画像符号化データの容量も削減できる。しかし、第１層画像データの符号化には非可逆符号化方式を用いているため、符号化後に透明色に指定したい画素以外でも、符号化後たまたま透明色に指定した画素値になる場合もありうる。この場合は、上記たまたま透明色に指定した画素値になった画素については、第２層画像符号化データの画素値が表示に用いられる。このことを考慮すると、画素値変更処理部０２１０での第２層画像データの作成で、第１層領域の第２層画像データは第１層で透明色に指定する画素値で埋めることが望ましい。
【００８７】
透明色を規定しているのは、第１層画像データの画素値のみであり、復号後、透明になることはない。したがって、第２層画像データの画素はその画素が本来持っている画素値に復号される。第２層画像データにおいては、透明色にする箇所はないからであり、第１層画像データと第２層画像データとは、符号化パラメータなど、符号化（圧縮）条件を異ならせるからである。第１層画像において透明色に指定したい画素以外で、符号化し復号後たまたま透明色に指定した画素値になった場合に透明となり、第２層画像が表示されることになる。
【００８８】
また、第２層画像符号化方式に「平坦化変換パターンを有する非可逆画像符号化方式」を用いる場合、その平坦化変換パターンの内、符号化し復号後の平坦値が、第１層画像符号化方式の平坦化変換パターンの内、第１層画像符号化方式で符号化し復号後の平坦値と一致する平坦値を第１層の透明色とすれば、第２層画像データの第１層領域の画素値を、符号化の関数変換を施す処理単位毎で、完全に第１層の透明色に指定した画素値で表すことができる。
【００８９】
すなわち、第１層画像符号化方式と第２層画像符号化方式とで符号化し復号後の平坦値が同じである平坦化変換パターンをそれぞれ平坦化変換パターン１と平坦化変換パターン２とすると、画素値変更処理部０２１０による第１層画像データの作成で、第２層領域には、平坦化変換パターン１で埋め、第２層画像データの作成で、第２層画像データの符号化時の関数変換処理が行なわれる単位領域が、第１層領域である場合、この単位領域を平坦化変換パターン２で埋め、その他の単位領域は入力画像データの画素値で埋める。
【００９０】
さらに、第１層画像データを符号化する画像符号化方式の関数変換処理単位と第２層画像データを符号化する画像符号化方式の関数変換処理単位が共に、第１層解像度変換処理部０２０６での解像度変換倍率を入力画像の解像度に乗算したブロックと、第２層解像度変換処理部０２０７での解像度変換倍率を入力画像の解像度に乗算したブロックである場合、これらのブロックを第１層解像度変換処理部０２０６での解像度変換倍率で除算したブロックの大きさと、第２層解像度変換処理部０２０７での解像度変換倍率で除算したブロックの大きさの、それぞれの縦の大きさの公倍数、それぞれの横の大きさの公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０１０６で行なう第１層領域か第２層領域かの判定を行なえば、画素値変更処理部０２１０における第２層画像データの作成で、第１層領域は、すべて平坦化変換パターン２で埋めることが可能となる。層の切り分けを非可逆符号化される各層の各非可逆符号化方式の関数変換のブロックの大きさを各辺の公倍数とすることで各領域が効率的に領域設定が可能となる。
【００９１】
なお、前述したように、第１層、第２層の各解像度を縦方向、横方向とそれぞれ異なった値に設定し、第１層画像データを符号化する画像符号化方式の関数変換処理単位と第２層画像データを符号化する画像符号化方式の関数変換処理単位が共に、第１層解像度変換処理部０２０６での縦方向の解像度変換倍率（Ｔ１縦）と第１層解像度変換処理部０２０６での横方向の解像度変換倍率（Ｔ１横）とをそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換されたブロックと、第２層解像度変換処理部０２０７での縦方向の解像度変換倍率（Ｔ２縦）と第２層解像度変換処理部０２０７での横方向の解像度変換倍率（Ｔ２横）とそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換されたブロックと、である場合について説明する。
【００９２】
この場合は解像度が変換された第１層のブロックをＴ１縦とＴ１横とで除算した第１層のブロックの大きさと、解像度が変換された第２層のブロックをＴ２縦とＴ２横とで除算した第２層のブロックの大きさとの、それぞれの縦の大きさの公倍数、それぞれの横の大きさの公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０１０６で行なう第１層領域か第２層領域かの判定を行なう。そうすれば、画素値変更処理部０２１０における第２層画像データの作成で、第１層領域は、すべて平坦化変換パターン２で埋めることが可能となる。
【００９３】
また、さらに望ましくは、第１層画像データを符号化する画像符号化方式の関数変換処理単位と第２層画像データを符号化する画像符号化方式の関数変換処理単位が共に、第１層解像度変換処理部０２０６での解像度変換倍率を乗算したブロックと、第２層解像度変換処理部０２０７での解像度変換倍率を乗算したブロックである場合、第１層解像度変換処理部０２０６での解像度変換倍率で除算したブロックの大きさと、第２層解像度変換処理部０２０７での解像度変換倍率で除算したブロックの大きさの縦の大きさの最小公倍数、横の大きさの最小公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０１０６で行なわれる第１層領域か第２層領域かの判定を行なえば、画素値変更処理部０２１０における第２層画像データの作成で、第１層領域は、すべて平坦化変換パターン２で埋めることが可能となる。このため、両関数変換処理単位の最小公倍数のブロック単位で第１層領域か第２層領域かの判定を行なえば、透明指定領域をもっとも細かく指定できる。
【００９４】
なお、前述したように、第１層、第２層の各解像度を縦方向、横方向とそれぞれ異なった値に設定し、第１層画像データを符号化する画像符号化方式の関数変換処理単位と第２層画像データを符号化する画像符号化方式の関数変換処理単位が共に、第１層解像度変換処理部０２０６での縦方向の解像度変換倍率（Ｔ１縦）と第１層解像度変換処理部０２０６での横方向の解像度変換倍率（Ｔ１横）とをそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換されたブロックと、第２層解像度変換処理部０２０７での縦方向の解像度変換倍率（Ｔ２縦）と第２層解像度変換処理部０２０７での横方向の解像度変換倍率（Ｔ２横）とそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換されたブロックと、である場合について説明する。
【００９５】
この場合は解像度が変換された第１層のブロックをＴ１縦とＴ１横とで除算した第１層のブロックの大きさと、解像度が変換された第２層のブロックをＴ２縦とＴ２横とで除算した第２層のブロックの大きさとの、それぞれの縦の大きさの最小公倍数、それぞれの横の大きさの最小公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０１０６で行なう第１層領域か第２層領域かの判定を行なう。こうすることで、透明指定領域をもっとも細かく指定できる。
【００９６】
上記においては、第１層解像度変換処理部０２０６での解像度変換倍率を入力画像の解像度に乗算したブロックと、第２層解像度変換処理部０２０７での解像度変換倍率を入力画像の解像度に乗算したブロックについて第１層領域か第２層領域かの判定を行なう場合を説明した。しかし変形例として、最初に入力画像データのブロック単位で、層分離情報作成処理部０１０６で行なう第１層領域か第２層領域かの判定を行なう。その後、入力画像データを用いる第１層画像データの第１層領域、第２層画像データの第２層領域については、第１層解像度変換処理部０２０６、第２層解像度変換処理部０２０７での解像度変換倍率を入力画像データに乗算したそれぞれの画像データを用いて、第１層画像データ、第２層画像データを生成することにしてもよい。
【００９７】
このことは、各ブロックの縦の大きさの公倍数、横の大きさの公倍数、あるいは、それぞれの最小公倍数とするブロック単位で、層分離情報作成処理部０１０６で行なう第１層領域か第２層領域かの判定を行なう場合でも同様である。また、第１層の縦方向の解像度をＴ１縦倍、第１層の横方向の解像度をＴ１横倍、第２層の縦方向の解像度をＴ２縦倍、第２層の横方向の解像度をＴ２横倍、とそれぞれ異なった値に設定する場合でも同様である。
【００９８】
［実施の形態３］
本実施の形態の画像符号化装置は、入力画像データを複数の層に分離し、それぞれを符号化する装置である。分割する層が３つ以上でも、第１の実施の形態と同様に透明色指定により、復号側で一つの画像に合成できる。本実施の形態の画像符号化装置は、Ｎ層に分離して符号化を行なう。Ｎ層は、図１４に示すように第１層から第Ｎ層まであり、層の番号が大きくなるに従って下層であるとする。また、第Ｎ層以外の層の各層は復号時に透明とする画素値である透明色が規定されている。
【００９９】
入力画像データを複数の層に分離し、それぞれを符号化し、符号化された各層の層画像符号化データを接合した出力画像符号化データを出力する。また、前記出力画像符号化データの復号は、第Ｎ層、第Ｎ−１層、第Ｎ−２層、…、第１層の順で復号し、透明色以外の画素値を上書きしていく。これにより、画像全域の画素が復号される。なお、第ｎ層画像データを画像符号化処理する場合の画像符号化方式を第ｎ層画像符号化方式と呼ぶことにする。
【０１００】
ここで、Ｎ層の画像データのうち、少なくとも１つの層については、上述した「平坦化変換パターンを有する非可逆画像符号化方式」とする。「平坦化変換パターンを有する非可逆画像符号化方式」を用いた場合は、復号化後に平坦値となる平坦領域については、当該層より下層の復号画像を用いることで、画像が再生できるが、特に、当該層において平坦値を透明色に指定することで、第１〜第Ｎ層の復号画像を重ね合わせるだけで、画像の再生を行なうことができる。また、たとえば、透明領域を有するいくつかの層については、可逆画像符号化方式を用いることとしてもよい。このとき、可逆画像符号化方式については、必ずしも、領域単位での符号化が行なわれなくてもよい。また、第１〜第Ｎ層のいくつかの層について非圧縮画像を用いてもよい。また、第Ｎ層については、透明色の規定がないため、領域単位で処理しない任意の符号化方式を用いてもよい。
【０１０１】
なお、以下の説明では、説明の簡単のために、画像符号化の一例として、第１層〜第Ｎ層画像データは、ＪＰＥＧ方式で画像符号化されるものとする。
【０１０２】
図１５は、本実施の形態の画像符号化装置のシステム構成を示した図である。画像符号化装置０３０４は、領域情報入力装置０３０１から領域情報データを、画像入力装置０３０２から入力画像データを受け取り、画像符号化データ出力装置０３０３に画像符号化データを出力する。
【０１０３】
本実施の形態の画像符号化装置０３０４の動作も基本的には、図１０で説明した実施の形態１と同様である。ただし、入力画像がＮ層に分離されることに対応して、画像符号化装置０３０４の各部の構成および機能が、以下の説明のように変更される必要がある。
【０１０４】
ここで、図１５および図１０を用いて、画像符号化装置０３０４の各部の機能および画像符号化装置０３０４の処理について説明する。
【０１０５】
領域情報データバッファ０３０５は、領域情報入力装置０３０１から入力された領域情報データを格納する（Ｓ０５０２）。ここでも、領域情報データは、マスクや、座標指定で、画像の領域の第ｎ層画像データで表示すべき領域が特定できればよい。層分離情報作成処理部０３０６にて、領域情報データバッファ０３０５から領域情報データを読み取り、層分離情報データを出力する（Ｓ０５０３）。
【０１０６】
ここでは、層分離情報作成処理Ｓ０５０３について補足説明する。層分離情報作成処理Ｓ０５０３は、第ｎ層画像データを符号化する時の関数変換の処理される領域単位（ＪＰＥＧ画像符号化方式ではＤＣＴ変換の処理単位である８×８画素単位）で、第ｎ層で表示すべき、第ｎ層領域であるか否かを判定する処理である。また、実施の形態１と同様に、たとえば、第ｎ層画像データを符号化する時の関数変換の処理される領域単位で、第ｎ層で表示すべき領域が含まれている領域を第ｎ層領域とする。また、第ｎ層画像データを符号化時の関数変換の処理される領域単位で、入力画像を指定する画素の割合が一定値以上である場合、その領域を第ｎ層領域とするなど、してもよい。
【０１０７】
層分離情報作成処理部０３０６で出力された層分離情報データは、層分離情報データバッファ０３０８に格納する（Ｓ０５０４）。画像入力装置０３０２から、入力画像データを受け取り、入力画像データバッファ０３０７に格納する（Ｓ０５０５）。層分離処理部０３０９にて、層分離情報データバッファ０３０８から、層分離情報データを、入力画像データバッファ０３０７から入力画像データを、それぞれ読み取り、各層画像データを出力する（Ｓ０５０６）。第ｎ層画像データの層分離情報データにより第ｎ層領域は入力画像の画素値で、第１層画像データ〜第（ｎ−１）層画像データにおける第１層領域〜第（ｎ−１）層領域は任意の画素値で埋めればよく、各層画像符号化方式での符号化に有利な画素値で埋めればよい。
【０１０８】
第ｎ層画像データにおける第１層領域〜第ｎ層領域以外の領域、つまり、透明にしたい領域は、平坦化変換パターンで埋める。平坦化変換パターンで埋めた領域は、後の符号化処理で、平坦領域になり、その平坦値を透明色に指定すれば、この平坦化変換パターンで埋めた領域は第（ｎ＋１）層の画像情報が適用されることになる。ここでは、平坦化変換パターンとして、ＪＰＥＧ画像符号化方式の恒常不動平坦化変換パターンを用いるものとする。すなわち、層分離情報データにより第１層領域〜第ｎ層領域以外の第ｎ層画像データの領域内の画素値をすべて０とした。
【０１０９】
層分離処理部０３０９で出力された各層画像データを層画像データバッファ群０３１０に、それぞれ格納する（Ｓ０５０７）。層画像符号化処理部群０３１１にて、層画像データバッファ群０３１０から各層画像データを読み取り、各層画像データを符号化処理した各層符号化データを出力する（Ｓ０５０８）。層画像符号化処理部群０３１１で出力された各層画像符号化データを層画像符号化データバッファ群０３１２にそれぞれ格納する（Ｓ０５０９）。画像符号化データ接合処理部０３１３にて、層画像符号化データバッファ群０３１２から、各層画像符号化データをそれぞれ読み取り、出力画像符号化データを出力する（Ｓ０５１０）。画像符号化データ接合処理部０３１３から出力された出力画像符号化データを出力画像符号化データバッファ０３１４に格納する（Ｓ０５１１）。
【０１１０】
図１６は、本実施の形態の出力画像符号化データの構造を示す概念図である。この構造においても、ヘッダ部とデータ部からなり、ヘッダ部に各層画像符号化データのファイル先頭からの各オフセット値が格納されており、各層画像符号化データを分離するのに必要な情報が揃っている。このように、各層画像符号化データが分離可能であれば、いかなる構造でもよい。また、ヘッダ部に復号時に各層画像符号化データで透明色とする画素値を格納しておけば、復号側でデータに応じて動的に透明色とする画素値を変えることが可能となる。なお、ここで「動的に」とは、「固定的ではなく」の意である。
【０１１１】
領域情報データバッファ０３０５、入力画像データバッファ０３０７、層分離情報データバッファ０３０８、層画像データバッファ群０３１０、層画像符号化データバッファ群０３１２、出力画像符号化データバッファ０３１４は、フラッシュメモリ、ハードディスク等のＲＡＭ(ランダムアクセスメモリ)によって実現される。
【０１１２】
層分離情報作成処理部０３０６、層分離処理部０３０９、層画像符号化処理部群０３１１、画像符号化データ接合処理部０３１３は、たとえばそれぞれ専用回路等のハードウェアによって実現される。たとえばソフトウェアに基づいてコンピュータ等の演算処理回路によってその機能が実現されてもよい。
【０１１３】
上記説明の変形例などを以下に補足しておく。透明色を有する符号化を行なう層の画像符号化方式は、「平坦化変換パターンを有する非可逆画像符号化方式」であればよい。層分離処理部０３０９による第ｎ層画像データの作成で、第ｎ層画像における第１層領域〜第ｎ層領域以外の領域は、第ｎ層画像符号化方式の平坦化変換パターンで埋めればよい。透明色指定は、上記第ｎ層画像符号化方式の平坦化変換パターンが第ｎ層画像符号化方式による符号化により、復号後は平坦領域となるが、その平坦値を復号時の第ｎ層の透明色指定画素値とすればよい。
【０１１４】
層分離処理部０３０９による第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域は、復号時の表示には用いられないため、基本的に任意の画素値で埋めればよく、各層画像符号化方式での符号化に有利な画素値で埋めればよい。これにより、各層画像符号化データの容量を削減することができ、出力画像符号化データの容量も削減できる。
【０１１５】
しかし、第ｎ層画像データの符号化には非可逆符号化方式を用いているため、符号化後に透明色に指定したい画素以外でも、符号化後たまたま透明色に指定した画素値になる場合もありうる。この場合は、上記たまたま透明色に指定した画素値になった画素については、当該層より下層の層画像符号化データの画素値が表示に用いられる。このことを考慮すると、層分離処理部０３０９での第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域の画像データは第１層〜第（ｎ−１）層のいずれかの層で透明色に指定した画素値で埋めることが望ましい。
【０１１６】
さらに、第ｎ層画像データにおける第１層領域〜第（ｎ−１）層領域の画素値のよりよい埋め方は、第ｎ層画像符号化方式が「平坦値変換パターンを有する非可逆画像符号化方式」である場合、その平坦値が第（ｎ−１）層で透明色としている画素値である第（ｎ−１）層画像符号化方式の平坦化変換パターンを用いることである。そうすれば、第（ｎ−１）層画像において透明色に指定したい画素以外で、符号化し復号後たまたま透明色に指定した画素値になった場合に、第ｎ層の復号データは、第（ｎ−１）層で透明色としている画素値そのものになる。
【０１１７】
また、画像符号化方式が、「平坦値変換パターンを有する非可逆画像符号化方式」で、画像符号化方式の関数変換処理単位がブロックである場合、各ブロックの縦の大きさの公倍数、横の大きさの公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０３０６で第１層領域〜第ｎ層領域の有無の判定を行なえば、層分離処理部０３０９での、第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域は、すべて平坦化変換パターン（ｎ−１）で埋めることが可能となる。ここで、第（ｎ−１）層画像符号化方式の上記平坦値を持つ平坦領域を得るための平坦化変換パターンを、平坦化変換パターン（ｎ−１）とする。層の切り分けを非可逆符号化される各層の各非可逆符号化方式の関数変換のブロックの大きさを各辺の公倍数とすることで各領域が効率的に領域設定が可能となる。
【０１１８】
また、さらに望ましくは、各層画像符号化方式の関数変換処理単位がいずれもブロックである場合、各ブロックの縦の大きさの最小公倍数、横の大きさの最小公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０３０６で第１層領域〜第（ｎ−１）層領域の有無の判定を行なえば、層分離処理部０３０９による第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域は、すべて平坦化変換パターン（ｎ−１）で埋めることが可能となる。このため、各層画像符号化方式の関数変換処理単位の最小公倍数のブロック単位で第１層領域〜第（ｎ−１）層領域の有無の判定を行なえば、透明指定領域をもっとも細かく指定できる。
【０１１９】
［実施の形態４］
本実施の形態の画像符号化装置は、実施の形態３の画像符号化装置と同様に、入力画像データをＮ個の層画像データに分離し、それぞれを符号化する装置である。
【０１２０】
実施の形態４の画像符号化装置が実施の形態３と異なる点は、各層画像データの解像度を変える解像度変換を施す処理が加わったことで、層毎に解像度を変えることによって、圧縮率や画質を高めることができることである。
【０１２１】
本実施の形態の画像符号化装置のシステム構成は、図１５に示した実施の形態３の画像符号化装置のシステム構成における層分離処理部０３０９が、図１７の層分離処理部０４０４のような構成になっている点以外は、実施の形態３の画像符号化装置と同様である。また、処理の流れも図１０の層分離処理Ｓ０５０６以外の処理の流れは実施の形態３と同様である。したがって、本実施の形態の画像符号化装置について、上記に挙げた第３の実施の形態と同様の構成および処理についての説明は省略する。
【０１２２】
ただし、層分離情報作成処理（図１０のＳ０５０３）については以下に補足する。
図１７に示すような層分離処理部０４０４を有する本実施の形態の画像符号化装置の処理の流れは、基本的には、図１０に示したフローチャートに従い、図１０の層分離処理Ｓ０５０６に相当する処理については、図１３のＳ０６０２に置き換えたものに相当する。
【０１２３】
すなわち、層解像度変換処理部群０４０５にて、入力画像データバッファ０３０７から、入力画像データを読み取り、各層所定の解像度に変換した各層解像度変換画像データを出力する（Ｓ０６０４）。第ｎ層解像度変換画像データ（ｎは１≦ｎ≦Ｎの任意の自然数）は、入力画像データをＴｎ倍（Ｔｎは０より大きい実数、たとえば０．５倍）に解像度変換したものである。このような解像度変換方法は、バイリニアを用いることができる。しかし、バイリニアに限定する必要はなく、バイキュービックや単純間引きなど、解像度変換方法であれば如何なる方法を用いてもよい。
【０１２４】
また、本実施の形態においては、説明を簡単にするため、縦方向の解像度と横方向の解像度とを同一とし、単に第ｎ層の解像度をＴｎ倍と記載している。しかし、各層の縦方向の解像度と横方向の解像度とをそれぞれ異なった値に設定することができることはいうまでもない。
【０１２５】
層解像度変換画像データバッファ群０４０６は、層解像度変換処理部群０４０５で出力された各層解像度変換画像データを格納する（Ｓ０６０５）。画素値変更処理部０４０７にて、層分離情報データバッファ０３０８から層分離情報データを、層解像度変換画像データバッファ群０４０６から各層解像度変換画像データをそれぞれ読み取り、各層画像データを出力する（Ｓ０６０６）。画素値変更処理部０４０７で出力された各層画像データを層画像データバッファ群０３１０に、それぞれ格納する（Ｓ０５０７）。
【０１２６】
第ｎ層画像データは、層分離情報データにより第ｎ層領域に指定されている領域は入力画像の画素値で埋め、第１層領域〜第（ｎ−１）層領域は任意の画素で埋めればよく、各層画像符号化方式での符号化に有利な画素値で埋めればよい。
【０１２７】
第１層領域〜第ｎ層領域以外の領域は、平坦化変換パターンで埋める。平坦化変換パターンで埋めた領域は、後の符号化処理で、復号すれば一定値になり、この値を透明色に指定すれば、この平坦化変換パターンで埋めた領域は第ｎ層より下層の画像情報が適用されることになる。ここでは、平坦化変換パターンとして、ＪＰＥＧ画像符号化方式の恒常不動平坦化変換パターンを用いるものとする。すなわち、層分離情報データにより第ｎ層画像データにおいて、第１層領域〜第ｎ層領域以外の領域内の画素値をすべて０とする。
【０１２８】
第Ｎ層画像データにおいては、第Ｎ層に表示すべき領域である、第Ｎ層領域は、入力画像データの画素値で埋め、その他の領域は、すべて第１層領域〜第（Ｎ−１）層領域であるから、任意の画素値で埋めればよく、各層画像符号化方式での符号化に有利な画素値で埋めればよい。
【０１２９】
ここで、層分離情報作成処理Ｓ０５０３（図１０）について補足説明する。
層分離情報作成処理Ｓ０５０３は、実施の形態３の説明にあるとおり、第ｎ層画像データを符号化する時の関数変換の処理される領域単位で、第ｎ層で表示すべき、第ｎ層領域であるか否かを判定する処理である。たとえば第ｎ層画像符号化方式がＪＰＥＧ画像符号化方式である場合、実施の形態３では、第ｎ層画像データにおいて第ｎ層領域である否かを判定する領域は、入力画像の解像度でＤＣＴ変換の処理単位である８×８画素単位となるが、本実施の形態では、符号化される第ｎ層画像データの解像度がＴｎ倍されていることから、第ｎ層画像データを符号化する時の関数変換により処理される領域単位とは、入力画像の解像度で言うと、（８／Ｔｎ）×（８／Ｔｎ）画素単位となることに留意しなければならない。たとえば、第ｎ層画像データを符号化する時の関数変換の処理される領域単位（ＪＰＥＧ画像符号化方式ではＤＣＴ変換の処理単位である８×８画素単位）で、第ｎ層で表示すべき領域を第ｎ層領域とする。また、第ｎ層画像データを符号化時の関数変換の処理される領域単位（ＪＰＥＧ画像符号化方式ではＤＣＴ変換の処理単位である８×８画素単位）で、入力画像を指定する画素の割合が一定値以上である場合、その領域を第ｎ層領域とするなど、してもよい。
【０１３０】
なお、前述したように、第ｎ層の縦方向の解像度をＴｎ縦倍、第ｎ層の横方向の解像度をＴｎ横倍、と異なった値に設定している場合は、第ｎ層画像データを符号化する時の関数変換により処理される領域単位は（８／Ｔｎ縦）×（８／Ｔｎ横）画素単位となる。
【０１３１】
また、この場合、図１６において、ヘッダ部に格納される符号化パラメータとして、各層の解像度を特定する情報が格納され、復号化において当該パラメータを各層毎に参照可能な構成としてもよい。
【０１３２】
層解像度変換画像データバッファ群０４０６は、フラッシュメモリ、ハードディスク等のＲＡＭ(ランダムアクセスメモリ)によって実現される。
【０１３３】
層解像度変換処理部群０４０５、画素値変更処理部０４０７は、たとえばそれぞれ専用回路等のハードウェアによって実現される。また、たとえばソフトウェアに基づいてコンピュータ等の演算処理回路によってその機能が実現されてもよい。
【０１３４】
上記説明の変形例などを以下に補足しておく。透明色を有する符号化を行なう層の画像符号化方式は、「平坦化変換パターンを有する非可逆画像符号化方式」であればよい。画素値変更処理部０４０７での第ｎ層画像データの作成で、第１層領域〜第ｎ層領域以外の領域は、第ｎ層画像符号化方式の平坦化変換パターンで埋めればよい。透明色指定は、上記第ｎ層画像符号化方式の平坦化変換パターンが第ｎ層画像符号化方式による符号化により、復号後は平坦領域となるが、その平坦値を復号時の第ｎ層の透明色指定画素値とすればよい。
【０１３５】
画素値変更処理部０４０７での第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域は、復号時の表示には用いられないため、基本的に任意の画素値で埋めればよく、各層画像符号化方式での符号化に有利な画素値で埋めればよい。これにより、各層画像符号化データの容量を削減することができ、出力画像符号化データの容量も削減できる。
【０１３６】
しかし、第ｎ層画像データの符号化には非可逆符号化方式を用いているため、符号化後に透明色に指定したい画素以外でも、符号化後たまたま透明色に指定した画素値になる場合もありうる。この場合は、上記たまたま透明色に指定した画素値になった画素については、当該層より下層の層画像符号化データの画素値が表示に用いられる。このことを考慮すると、画素値変更処理部０４０７での第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域の画像データは第１層〜第（ｎ−１）層のいずれかの層で透明色に指定した画素値で埋めることが望ましい。
【０１３７】
さらに、第ｎ層画像データにおける第１層領域〜第（ｎ−１）層領域の画素値のよりよい埋め方は、第ｎ層画像符号化方式が「平坦値変換パターンを有する非可逆画像符号化方式」である場合、その平坦値が第（ｎ−１）層で透明色としている画素値である第（ｎ−１）層画像符号化方式の平坦化変換パターンを用いることである。そうすれば、第（ｎ−１）層画像において透明色に指定したい画素以外で、符号化し復号後たまたま透明色に指定した画素値になった場合に、第ｎ層の復号データは、第（ｎ−１）層で透明色としている画素値そのものになる。
【０１３８】
また、画像符号化方式が、「平坦値変換パターンを有する非可逆画像符号化方式」で、画像符号化方式の関数変換処理単位が各層の層解像度変換処理部群０４０５での各層の解像度変換倍率を乗算したブロックである場合、各層のブロックの大きさを層解像度変換処理部０４０５での各層の変換倍率で除算したブロックの大きさの縦の大きさの公倍数、横の大きさの公倍数をそれぞれ縦の大きさ、横の大きさとするブロック単位で、層分離情報作成処理部０３０６で第１層領域〜第ｎ層領域の有無の判定を行なえば、画素値更新処理部０４０７での、第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域は、すべて平坦化変換パターン（ｎ−１）で埋めることが可能となる。ここで、第（ｎ−１）層画像符号化方式の上記平坦値を持つ平坦領域を得るための平坦化変換パターンを、平坦化変換パターン（ｎ−１）とする。層の切り分けを非可逆符号化される各層の各非可逆符号化方式の関数変換のブロックの大きさを各辺の公倍数とすることで各領域が効率的に領域設定が可能となる。
【０１３９】
なお、前述したように、第ｎ層の縦方向の解像度をＴｎ縦倍、第ｎ層の横方向の解像度をＴｎ横倍、とそれぞれ異なった値に設定し、第ｎ層画像データを符号化する画像符号化方式の関数変換処理単位と第ｉ層画像データ（１≦ｉ≦Ｎでｉはｎを含まない自然数。）を符号化する画像符号化方式の関数変換処理単位が共に、層解像度変換処理部群０４０５での第ｎ層の縦方向の解像度変換倍率（Ｔｎ縦）と層解像度変換処理部群０４０５での第ｎ層の横方向の解像度変換倍率（Ｔｎ横）とをそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換されたブロックと、層解像度変換処理部群０４０５での第ｉ層の縦方向の解像度変換倍率（Ｔｉ縦）と層解像度変換処理部群０４０５での第ｉ層の横縦方向の解像度変換倍率（Ｔｉ横）とそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換された第ｉ層のブロックと、である場合について説明する。
【０１４０】
この場合は、解像度が変換された第ｎ層のブロックをＴｎ縦とＴｎ横とで除算した第ｎ層のブロックの大きさと、解像度が変換された第ｉ層のブロックをＴｉ縦とＴｉ横とで除算した第ｉ層のブロックの大きさとの、それぞれの縦の大きさの公倍数、それぞれの横の大きさの公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０３０６で行なう第ｎ層領域か第ｉ層領域かの判定を行なう。そうすれば、画素値変更処理部０４０７における第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域は、すべて平坦化変換パターン（ｎ−１）で埋めることが可能となる。ここで、第（ｎ−１）層画像符号化方式の上記平坦値を持つ平坦領域を得るための平坦化変換パターンを、平坦化変換パターン（ｎ−１）とする。
【０１４１】
また、さらに望ましくは、各層画像データを符号化する画像符号化方式の関数変換処理単位がいずれも、各層の層解像度変換処理部群０４０５での各層の解像度変換倍率を乗算したブロックである場合、各層のブロックの大きさを層解像度変換処理部０４０５での各層の変換倍率で除算したブロックの大きさの縦の大きさの最小公倍数、横の大きさの最小公倍数をそれぞれ縦の大きさ、横の大きさとするブロック単位で、層分離情報作成処理部０３０６で第１層領域〜第（ｎ−１）層領域の有無の判定を行なえば、画素値変更処理部０４０７での、第ｎ層画像データの作成で、第１層領域〜第（ｎ−１）層領域は、すべて平坦化変換パターン（ｎ−１）で埋めることが可能となる。このため、各層画像符号化方式の関数変換処理単位の最小公倍数のブロック単位で第１層領域〜第（ｎ−１）層領域の有無の判定を行なえば、透明指定領域をもっとも細かく指定できる。
【０１４２】
なお、前述したように、第ｎ層の縦方向の解像度をＴｎ縦倍、第ｎ層の横方向の解像度をＴｎ横倍、とそれぞれ異なった値に設定し、第ｎ層画像データを符号化する画像符号化方式の関数変換処理単位と第ｉ層画像データ（１≦ｉ≦Ｎでｉはｎを含まない自然数。）を符号化する画像符号化方式の関数変換処理単位が共に、層解像度変換処理部群０４０５での第ｎ層の縦方向の解像度変換倍率（Ｔｎ縦）と層解像度変換処理部群０４０５での第ｎ層の横方向の解像度変換倍率（Ｔｎ横）とをそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換されたブロックと、層解像度変換処理部群０４０５での第ｉ層の縦方向の解像度変換倍率（Ｔｉ縦）と層解像度変換処理部群０４０５での第ｉ層の横縦方向の解像度変換倍率（Ｔｉ横）とそれぞれ、縦方向、横方向の入力画像の解像度に乗算し解像度が変換された第ｉ層のブロックと、である場合について説明する。
【０１４３】
この場合は、解像度が変換された第ｎ層のブロックをＴｎ縦とＴｎ横とで除算した第ｎ層のブロックの大きさと、解像度が変換された第ｉ層のブロックをＴｉ縦とＴｉ横とで除算した第ｉ層のブロックの大きさとの、それぞれの縦の大きさの最小公倍数、それぞれの横の大きさの最小公倍数をそれぞれ縦の大きさ横の大きさとするブロック単位で、層分離情報作成処理部０３０６で行なう第ｎ層領域か第ｉ層領域かの判定を行なう。こうすることで、透明指定領域をもっとも細かく指定できる。
【０１４４】
上記においては、層解像度変換処理部群０４０５での第ｎ層の解像度変換倍率を入力画像の解像度に乗算し解像度が変換されたブロックと、層解像度変換処理部群０４０５での第ｉ層の縦方向の解像度変換倍率を入力画像の解像度に乗算し解像度が変換された第ｉ層のブロックと、である場合を説明した。しかし変形例として、最初に入力画像データのブロック単位で、層分離情報作成処理部０３０６で行なう第ｎ層領域か第ｉ層領域かの判定を行なう。その後、入力画像データを用いる第ｎ層画像データの第ｎ層領域については、層解像度変換処理部群０４０５での第ｎ層の解像度変換倍率を入力画像データに乗算した画像データを用いて、第ｎ層画像データを生成してもよい。
【０１４５】
このことは、各ブロックの縦の大きさの公倍数、横の大きさの公倍数、あるいは、それぞれの最小公倍数とするブロック単位で、層分離情報作成処理部０３０６で行なう第ｎ層領域か第ｉ層領域かの判定を行なう場合でも同様である。また、第ｎ層の縦方向の解像度をＴｎ縦倍、第ｎ層の横方向の解像度をＴｎ横倍、第ｉ層の縦方向の解像度をＴｉ縦倍、第ｉ層の横方向の解像度をＴｉ横倍、とそれぞれ異なった値に設定する場合でも同様である。
【０１４６】
本実施の形態で説明した画像符号化方法は、画像符号化装置として実用化されるのみならず、この画像符号化方法をプログラムとした画像符号化プログラムおよび画像符号化プログラムを記録したコンピュータ読取可能な記録媒体としても適用できるものである。
【０１４７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１４８】
【図１】平坦化変換パターンの説明図である。
【図２】恒常平坦化変換パターンの説明図である。
【図３】不動平坦化変換パターンの説明図である。
【図４】恒常不動平坦化変換パターンの説明図である。
【図５】領域データに関する包含説明図である。
【図６】非可逆画像符号化方式に関する包含説明図である。
【図７】恒常不動平坦化変換パターンを透明にしたい箇所に用いて符号化を行なう例の説明図である。
【図８】図７で符号化された第１層、第２層画像符号化データを復号し合成するまでの説明図である。
【図９】第１実施の形態の画像符号化装置の構成図である。
【図１０】第１の実施の形態の画像符号化装置の処理のフローチャートである。
【図１１】第１、第２実施の形態の出力画像符号化データの構造例示図である。
【図１２】第２実施の形態の画像符号化装置における層分離処理部の構成図である。
【図１３】第２、第４実施の形態の層分離処理のフローチャートである。
【図１４】入力画像データを複数層に分離したときの構造説明図である。
【図１５】第３実施の形態の画像符号化装置の構成図である。
【図１６】第３、第４実施の形態の出力画像符号化データの構造例示図である。
【図１７】第４実施の形態の画像復号装置における層分離処理部の構成図である。
【符号の説明】
【０１４９】
０１０１  領域情報入力装置、０１０２  画像入力装置、０１０３  画像符号化データ出力装置、０１０４  画像符号化装置、０１０５  領域情報データバッファ、０１０６  層分離情報作成処理部、０１０７  入力画像データバッファ、０１０８  層分離情報データバッファ、０１０９  層分離処理部、０１１０  第１層画像データバッファ、０１１１  第２層画像データバッファ、０１１２  第１層画像符号化処理部、０１１３  第２層画像符号化処理部、０１１４  第１層画像符号化データバッファ、０１１５  第２層画像符号化データバッファ、０１１６  画像符号化データ接合処理部、０１１７  出力画像符号化データバッファ、０２０１  層分離情報データバッファ、０２０２  入力画像データバッファ、０２０３  第１層画像データバッファ、０２０４  第２層画像データバッファ、０２０５  層分離処理部、０２０６  第１層解像度変換処理部、０２０７  第２層解像度変換処理部、０２０８  第１層解像度変換画像データバッファ、０２０９  第２層解像度変換画像データバッファ、０２１０  画素値変更処理部、０３０１  領域情報入力装置、０３０２  画像入力装置、０３０３  画像符号化データ出力装置、０３０４  画像符号化装置、０３０５  領域情報データバッファ、０３０６  層分離情報作成処理部、０３０７  入力画像データバッファ、０３０８  層分離情報データバッファ、０３０９  層分離処理部、０３１０  層画像データバッファ群、０３１１  層画像符号化処理部群、０３１２  層画像符号化データバッファ群、０３１３  画像符号化データ接合処理部、０３１４  出力画像符号化データバッファ、０４０１  層分離情報データバッファ、０４０２  入力画像データバッファ、０４０３  層画像データバッファ群、０４０４  層分離処理部、０４０５  層解像度変換処理部群、０４０６  層解像度変換画像データバッファ群、０４０７  画素値変更処理部。
【図１】
0004584115.tif 000002
【図２】
0004584115.tif 000003
【図３】
0004584115.tif 000004
【図４】
0004584115.tif 000005
【図５】
0004584115.tif 000006
【図６】
0004584115.tif 000007
【図７】
0004584115.tif 000008
【図８】
0004584115.tif 000009
【図９】
0004584115.tif 000010
【図１０】
0004584115.tif 000011
【図１１】
0004584115.tif 000012
【図１２】
0004584115.tif 000013
【図１３】
0004584115.tif 000014
【図１４】
0004584115.tif 000015
【図１５】
0004584115.tif 000016
【図１６】
0004584115.tif 000017
【図１７】
0004584115.tif 000018