(57)【要約】【課題】  小さいサイズの画像、或るいは小さいサイズのタイル単位の画像においても効率の良い符号化を行なう。また、ランダムアクセス性、並列処理性を高めるために、ブロックに分割して、それぞれ独立に予測符号化する場合においても、より高能率な符号化を可能にする。【解決手段】  状態数決定部１０５は、符号化対象となる画像データの水平方向の画素数Ｗ、垂直方向の画素数Ｈを入力し、状態数を決定するための閾値Ｔ１、Ｔ２、Ｔ３を決定する。可逆符号化部１０３は、ラインバッファ１０２に格納された着目画素位置の状態を、既符号化済み画素位置の値と閾値Ｔ１、Ｔ２、Ｔ３に基づいて求め、この求めた状態値に従って可逆符号化を行なう。【選択図】  図１
2008042684.tif 000002
【特許請求の範囲】
【請求項１】
着目画素の周囲の符号化済み画素の画素値に基づき、着目位置の状態を分類し、分類された状態に応じた確率モデルに従って、前記着目画素を符号化する画像符号化装置であって、
符号化対象の画像データのサイズ情報に従って、前記状態の取り得る個数を決定する状態数決定手段と、
該状態数決定手段で決定された個数内のいずれの状態にあるかを、着目画素の周囲の符号化済み画素の画素値に基づき判別する状態判別手段と、
該状態判別手段で判別された状態を符号化パラメータとし、着目画素を符号化する符号化手段と
を備えることを特徴とする画像符号化装置。
【請求項２】
着目画素の周囲の符号化済み画素の画素値に基づき、着目位置の状態を分類し、分類された状態に応じた確率モデルに従って、前記着目画素を符号化する画像符号化装置であって、
ブロックのサイズを設定する設定手段と、
設定されたサイズのブロックを単位に、符号化対象の画像データから切り出す切り出し手段と、
前記設定手段で設定されたサイズのサイズ情報に従って、前記状態の取り得る個数を決定する状態数決定手段と、
該状態数決定手段で決定された個数内のいずれの状態にあるかを、着目画素の周囲の符号化済み画素の画素値に基づき判別する状態判別手段と、
該状態判別手段で判別された状態を符号化パラメータとし、着目画素を符号化する符号化手段と
を備えることを特徴とする画像符号化装置。
【請求項３】
前記状態数決定手段は、サイズ情報で示される水平、垂直画素数の少なくとも一方に基づいて、状態の個数を決定することを特徴とする請求項１又は２に記載の画像符号化装置。
【請求項４】
前記符号化手段は、予測符号化を用いた可逆符号化手段とすることを特徴とする請求項１乃至３のいずれか１項に記載の画像符号化装置。
【請求項５】
着目画素の周囲の符号化済み画素の画素値に基づき、着目位置の状態を分類し、分類された状態に応じた確率モデルに従って、前記着目画素を符号化する画像符号化方法であって、
符号化対象の画像データのサイズ情報に従って、前記状態の取り得る個数を決定する状態数決定工程と、
該状態数決定工程で決定された個数内のいずれの状態にあるかを、着目画素の周囲の符号化済み画素の画素値に基づき判別する状態判別工程と、
該状態判別工程で判別された状態を符号化パラメータとし、着目画素を符号化する符号化工程と
を備えることを特徴とする画像符号化方法。
【請求項６】
着目画素の周囲の符号化済み画素の画素値に基づき、着目位置の状態を分類し、分類された状態に応じた確率モデルに従って、前記着目画素を符号化する画像符号化方法であって、
ブロックのサイズを設定する設定工程と、
設定されたサイズのブロックを単位に、符号化対象の画像データから切り出す切り出し工程と、
前記設定工程で設定されたサイズのサイズ情報に従って、前記状態の取り得る個数を決定する状態数決定工程と、
該状態数決定工程で決定された個数内のいずれの状態にあるかを、着目画素の周囲の符号化済み画素の画素値に基づき判別する状態判別工程と、
該状態判別工程で判別された状態を符号化パラメータとし、着目画素を符号化する符号化工程と
を備えることを特徴とする画像符号化方法。
【請求項７】
コンピュータが読み込み実行することで、請求項１又は２に記載の画像符号化装置が有する各手段として機能することを特徴とするコンピュータプログラム。
【請求項８】
請求項７に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像データの符号化技術に関するものである。
【背景技術】
【０００２】
画像符号化技術の１つに、画像をラスタースキャン順に走査していく過程で、着目画素の予測値をその周囲画素を用いて求め、その予測値と着目画素の実際の値の差分値を符号化する予測符号化方式がある。従来、このような予測符号化方式においては、符号化済みの画素に基づいて着目画素の状態を分類し、それぞれの状態における予測誤差の確率分布に応じて符号化することで圧縮性能を高めることが一般的に行われている。例えば、連続階調静止画像の可逆と準可逆圧縮の国際標準方式としてＩＳＯとＩＴＵ−Ｔから勧告されているＪＰＥＧ−ＬＳ  Ｐａｒｔ１（非特許文献１）では、着目画素の周囲４画素を参照して、画素間差分を求める。そして、これら差分に基づいて３６５個の状態に分離して予測誤差の符号化を行っている。
【０００３】
以下、ＪＰＥＧ−ＬＳにおける状態生成の方法について説明する。以下の説明では、例えば準可逆符号化のための誤差の許容範囲を表すパラメータＮＥＡＲを０と仮定するなど、本発明に直接関係しない事柄については省略するので、標準方式の詳細については規格書を参照されたい。
【０００４】
図３はＪＰＥＧ−ＬＳで参照される周囲画素（ａ，ｂ，ｃ，ｄ）と着目画素ｘとの相対位置関係を示している。ラスタースキャン順に画素を符号化するため、図示の画素ａ，ｂ，ｃ，ｄは全て符号化済みとなる。まず、以下の式によりａとｃ、ｃとｂ、ｂとｄの差分を求め、それぞれをＤ１、Ｄ２、Ｄ３とする。
Ｄ１＝ｄ−ｂ
Ｄ２＝ｂ−ｃ
Ｄ３＝ｃ−ａ
【０００５】
この差分値Ｄ１、Ｄ２、Ｄ３を９通り(−４から４まで)に量子化して、それぞれの差分の量子化値Ｑ１、Ｑ２、Ｑ３を求める。図２に差分値の範囲とその量子化値の対応を示す。Ｔ１、Ｔ２、Ｔ３はあらかじめ定められた非負の整数値である。例えば、０〜２５５の値を取る８ビットの画像に対しては、Ｔ１＝３、Ｔ２＝７、Ｔ３＝２１といった値が設定される。このようにして得られたＱ１，Ｑ２，Ｑ３の組み合わせ｛Ｑ，Ｑ２，Ｑ３｝は、Ｑ１、Ｑ２、Ｑ３がそれぞれ−４から４までの９通りの値を持つので、９×９×９＝７２９通りとなる。状態｛Ｑ１，Ｑ２，Ｑ３｝で予測誤差ｅが発生する確率は状態｛−Ｑ１，−Ｑ２，−Ｑ３｝で予測誤差−ｅが発生する確率に同じとして考え良いので、これらの状態を統合して３６５通りに縮退する。この３６５通りの状態でそれぞれ想定される確率分布に応じて予測誤差を符号化する。ＪＰＥＧ−ＬＳではそれぞれの状態ごとに予測誤差の絶対値の総和とその状態の発生回数を保持し、これらの値からGolomb符号化のパラメータｋを設定することで各状態の確率分布に適応した符号化を行う。符号化の開始時点ではこれらの値に初期値を設定しておき、符号化処理の過程で随時値を更新していくことにより、動的に各状態の確率分布に追従する。
【非特許文献１】ITU-T T.87 (1998) |  ISO/IEC 14495-1 : 1999,  Information Technology - Lossless and near-lossless compression of continuous-tone still images : Baseline
【発明の開示】
【発明が解決しようとする課題】
【０００６】
さて、上述の状態依存の予測符号化で、Ｓ１からＳｎのｎ個の状態に分離して符号化を行う場合、予測誤差ｅをそれぞれの状態での出現確率Ｐ（ｅ｜Ｓｉ）に基づいて符号化することになり、そのエントロピＨ（ｎ）は以下の式で与えられる。
H（n） =−ΣP(e | Si) log2 P(e | Si)
（ここで、Σはｉ＝１乃至ｎまでの合算を示す）
【０００７】
Ｈ（ｎ）≧Ｈ（ｎ＋１）の関係にあるため、状態数を多くすることで圧縮性能の改善が期待される。しかしながら、上述のＪＰＥＧ−ＬＳなど１パスの画像符号化方式では、符号化しながら、それぞれの状態の確率分布に追従するよう確率モデルを更新していく。そのため、状態数を多くしすぎると各状態の発生回数が少なくなり、確率分布の適応が十分に行われないまま、符号化が終了してしまう。つまり、圧縮性能の低下を引き起こす。同じように、例えば３２×３２等の小さい画像を符号化する場合には３６５個の状態数では十分な確率追従が行われないという問題もある。
【０００８】
本願発明は、上述の問題点に鑑みてなされたものである。そして、本発明は、１つには、小さいサイズの画像データを状態依存の予測符号化する場合や、画像をブロックに分割してそれぞれ独立に状態依存の予測符号化を行う場合において、画像のサイズ、またはブロックのサイズに毎に適切な状態数を設定して符号化することで、圧縮性能を向上する技術を提供しようとするものである。
【課題を解決するための手段】
【０００９】
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
着目画素の周囲の符号化済み画素の画素値に基づき、着目位置の状態を分類し、分類された状態に応じた確率モデルに従って、前記着目画素を符号化する画像符号化装置であって、
符号化対象の画像データのサイズ情報に従って、前記状態の取り得る個数を決定する状態数決定手段と、
該状態数決定手段で決定された個数内のいずれの状態にあるかを、着目画素の周囲の符号化済み画素の画素値に基づき判別する状態判別手段と、
該状態判別手段で判別された状態を符号化パラメータとし、着目画素を符号化する符号化手段とを備える。
【発明の効果】
【００１０】
本発明の構成によれば、小さいサイズの画像、或るいは小さいサイズのタイル単位の画像においても効率の良い符号化を行なうことができる。また、ランダムアクセス性、並列処理性を高めるために、ブロックに分割して、それぞれ独立に予測符号化する場合においても、より高能率な符号化が可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１２】
＜第１の実施形態＞
図１は本実施形態に係る画像処理装置（or画像符号化装置）のブロック構成図である。
【００１３】
図１に示すように、本実施形態に係る装置は、画像入力部１０１、ラインバッファ１０２、可逆符号化部１０３、符号列形成部１０４、状態数決定部１０５とを備える。同図において１０６、１０７、１０８は信号線を示す。なお、画像入力部１０１が入力する画像データの発生源はイメージスキャナとするが、画像データを記憶した記憶媒体、ネットワーク上のサーバ等、その種類は問わない。
【００１４】
以下、図１を参照して、本実施形態の画像処理装置の処理について説明する。
【００１５】
まず、前提として、本実施形態に係る画像処理装置における符号化対象画像は、ＲＧＢカラー画像データであり、各コンポーネント（色）は８ビット（０〜２５５の範囲）の輝度値で表現されるものとする。符号化対象の画像データの並びは点順次、即ち、ラスタースキャン順に各画素を並べ、その各画素はＲ、Ｇ、Ｂの順番でデータを並べて構成されるものとする。また、画像のサイズは水平方向画素数Ｗ、垂直方向画素数Ｈとする。なお、カラー画像はＲＧＢに限らず、ＹＣｂＣｒでも良いし、他の色空間でも良い。また、各コンポーネントも８ビットに限らない。上記はあくまで一例であると認識されたい。
【００１６】
次に、本実施形態の画像処理装置での各部の動作について説明する。
【００１７】
まず、符号化対象画像データの入力に先立ち、装置外部から符号化対象となる画像の水平方向画素数Ｗ、垂直方向画素数Ｈがそれぞれ信号線１０６、信号線１０７から入力される。これらは、原稿のサイズ、イメージスキャナの読取り解像度で一義的に決まる。また、記憶媒体に格納された画像データを符号化対象とする場合には、そのファイルのヘッダに含まれる情報を解析することで得られるものである。
【００１８】
続いて、符号化対象画像データが画像入力部１０１から、ラスタースキャン順に入力される。
【００１９】
ラインバッファ１０２は画像データを２ライン分格納する領域を持ち、画像入力部１０１から入力される画像データを順次格納していく。ラインバッファ１０２に必要とされる容量はＷ×２×３（ＲＧＢ分）バイトである。
【００２０】
可逆符号化部１０３はラインバッファ１０２に格納される２ライン分の画像データのうち、新たに格納された１ライン分の画像データを、それ以前に格納されている直前のラインの画像データを参照してＪＰＥＧ−ＬＳ  Ｂａｓｅｌｉｎｅのラインインターリーブモードとして規定される符号化アルゴリズムに従って符号化し、符号化データを符号列形成部１０４へと出力する。このとき、状態分離に用いられる閾値Ｔ１，Ｔ２，Ｔ３は後述する状態数決定部１０５から与えられる値を用いる。ＪＰＥＧ−ＬＳ  Ｂａｓｅｌｉｎｅのラインインターリーブモードによる符号化の詳細については勧告書に詳細に記述されているのでここでは説明を省略する。
【００２１】
状態数決定部１０５は信号線１０６、信号線１０７から入力される水平、垂直方向の画素数Ｗ、Ｈに基づいて可逆符号化部１０３における予測符号化での状態数を決定づける閾値Ｔ１、Ｔ２、Ｔ３を決定する。その具体例を以下に示す。
【００２２】
まず、状態数決定部１０５はＷとＨの積を求め、符号化対象の画像データの総画素数Ｒを求める。このＲを画素数判定のための閾値Ｔｈ１、Ｔｈ２と比較し、その大小関係から状態数を決定する。
【００２３】
Ｒ＜Ｔｈ１ならば１４状態になるようにＴ１＝Ｔ２＝Ｔ３＝１とする。このように設定すると、可逆符号化部１０３で行われる状態分離で、周囲画素の差分値が−１以下であればその量子化値は−４となり、０ならば０、１以上ならば４となり、差分の量子化値は−４、０、４の３通りとなる。
【００２４】
Ｔｈ１≦Ｒ＜Ｔｈ２ならば６３状態になるようにＴ１＝Ｔ２＝Ｔ３＝７とする。この場合、差分値の量子化値としては−４、−１、０、１、４の５通りとなる。
【００２５】
Ｔｈ２≦Ｒならば３６５状態になるように、閾値値Ｔ１＝３、Ｔ２＝７、Ｔ３＝２１を設定する。この場合、差分値の量子化値として−４、−３、−２、−１、０、１、２、３、４の９通り全てが起こり得る。
【００２６】
ここで画素数判定の閾値Ｔｈ１とＴｈ２は例えばＴｈ１＝１０２４、Ｔｈ２＝４０９６といった値を設定する。従って、この場合、水平と垂直方向の画素数の等しい画像では、３２×３２よりも小さい画像では状態数は１４となる。また、符号化対象の画像が３２×３２以上で６４×６４未満のサイズなら６３、同６４×６４以上の大きさの画像ならば３６５といった具合に切り替えられることになる。
【００２７】
符号列形成部１０４は可逆符号化部１０３から出力される符号化データに、必要な付加情報を加えて本画像処理装置の出力となる符号列を形成して信号線１０８より出力する。図７は本画像処理装置の出力符号列の構成を示す図である。出力符号列の先頭には、画像を復号するために必要となる情報、例えば、画像の水平方向画素数、垂直方向画素数、コンポーネント数、各コンポーネントのビット数などの付加情報がＪＰＥＧ−ＬＳ標準に準拠した形式でヘッダとして付けられる。また、このヘッダ部分には状態数決定部１０５から出力されるＴ１、Ｔ２、Ｔ３の値を含んだＬＳＥマーカセグメントなども含まれる。
【００２８】
図４は、本実施形態に係る画像処理装置における符号化対象画像データの符号化処理の流れを示すフローチャートである。以下、図４に示したフローチャートを参照して、本実施形態に係る画像処理装置が行う画像符号化処理の全体的な流れについて説明する。
【００２９】
まず、信号線１０６、信号線１０７から符号化対象画像の水平方向画素数Ｗ、垂直方向画素数Ｈが入力され、状態数決定部１０５において状態数を決定する閾値Ｔ１、Ｔ２、Ｔ３が定められる（ステップＳ４００）。
【００３０】
次に、符号列形成部１０４は、状態数決定部１０５から出力されるＴ１，Ｔ２，Ｔ３や、符号化対象画像の水平方向画素数Ｗ、垂直方向画素数Ｈなどに基づき、ＪＰＥＧ−ＬＳ標準に準拠した各種ヘッダを生成する（ステップＳ４０１）。
【００３１】
次いで、画像入力部１０１は画像データの入力を開始し、ラインバッファ１０２に符号化対象となる画像データの１ライン分のデータを格納する（ステップＳ４０２）。なお、１つの画像の符号化処理を開始にするに先立ち、ラインバッファ１０２はゼロクリアされるものとする。
【００３２】
可逆符号化部１０３は、ラインバッファ１０２に格納されたラインデータについて可逆符号化を行ない、符号化データを生成し、それを符号列形成部１０４に出力する（ステップＳ４０３）。
【００３３】
符号列形成部１０４は、可逆符号化部１０５から出力される符号化データを結合してＪＰＥＧ−ＬＳ標準の定めるフォーマットで本画像処理装置の出力となる符号化データを生成し、順次装置外部へと出力する（ステップＳ４０４）。
【００３４】
この後、ステップＳ４０５にて、符号化したラインデータが符号化対象画像の最後のラインであるか否か判断し、最後のラインでない場合（ＮＯ）はステップＳ４０２へと処理を戻し、次のラインのデータを読み込んで処理を継続する。一方、最後のラインである場合（ＹＥＳ）には対象とする画像データについての符号化処理を終了する。以上の処理により、画像全体の符号化が行われる。
【００３５】
本実施形態の画像処理装置で生成した符号化データはＪＰＥＧ−ＬＳ標準に定める符号化データの形式であるので、ＪＰＥＧ−ＬＳ標準に準拠した復号装置で復号することができる。
【００３６】
以上の説明のように、本実施形態に係る画像処理装置では、画像のサイズに応じて状態数を切り替えることにより、それぞれの状態の確立分布へ適応しやすくしており、予測符号化の効率を改善することができる。
【００３７】
なお、画像のサイズ（水平、垂直画素数）と閾値Ｔｈ１、Ｔｈ２との関係は、一例であって上記実施形態に本願発明が限定されるものではない。
【００３８】
＜第１の実施形態の変形例＞
上記実施形態では、図１に示す装置構成で画像データを符号化するものであったが、例えばパーソナルコンピュータ等の汎用情報処理装置のソフトウェア（アプリケーションプログラム）でもって、上記と等価の処理を行なうことも可能である。
【００３９】
図１１は本変形例に係る情報処理装置の基本構成を示す図である。
【００４０】
図中、１４０１は装置全体の制御を司るＣＰＵである。１４０２はＣＰＵ１４０１のワークエリアとして使用するＲＡＭであり、１４０３はＢＩＯＳ及びブートプログラムを格納しているＲＯＭである。１４０４はキーボード、１４０５はポインティングデバイスの１つであるマウスである。１４０６は表示制御部であって、内部にはビデオメモリ及びＣＰＵ１４０１の制御によってビデオメモリへの描画、及び、ビデオメモリに可能されたデータをビデオ信号として表示装置１４１２に出力する表示コントローラを内蔵している。表示装置１４１２はＣＲＴや液晶表示装置である。１４０７はハードディスク装置等の外部記憶装置であり、これにはＯＳ（オペレーティングシステム）、画像符号化を行なうアプリケーションプログラムが格納されている。なお、外部記憶装置１４０７は、各種アプリケーションで作成されたファイルを格納すためにも利用される。１４０８は記憶媒体ドライブであり、フレキシブルディスク、メモリカード、ＣＤ−ＲＯＭ等の記憶媒体に対してリード／ライトを行なう。１４０９は本装置とイメージスキャナ１４１１とを接続するためのスキャナインタフェース（ＵＳＢやＳＣＳＩインタフェース等）ある。１４１３はネットワークインタフェースである。
【００４１】
本装置の電源がＯＮになると、ＣＰＵ１４０１はＲＯＭ１４０３のブートプログラムに従って、外部記憶装置１４０７からＯＳをＲＡＭ１４０２にロードする。この結果、ＯＳの制御の下で、表示制御部１４０６にＧＵＩを描画して、表示装置１４１２にそのＧＵＩを表示させる。操作者は、表示装置１４１２の表示を見て、キーボード１４０４やマウス１４０５を操作することになる。ここで、画像符号化アプリケーションの起動指示が操作者より与えられると、ＣＰＵ１４０１は外部記憶装置１４０７内の画像符号化アプリケーションプログラムをＲＡＭ１４０２にロードし、実行する。この結果、本装置が画像処理装置として機能することになる。
【００４２】
ＣＰＵ１４０１が画像符号化アプリケーションを実行し、操作者より符号化対象となる画像の入力指示を受けると、イメージスキャナ１４１１より原稿画像を入力し、符号化を行なうことになる。符号化結果は、外部記憶装置１４０７にファイルとして格納する。
【００４３】
なお、原稿を読取る際、原稿サイズをＧＵＩで指定するので、その際に指定したサイズとイメージスキャナの解像度に基づき、符号化対象の画像データのサイズ（水平方向と垂直方向の画素数）を取得できる。また、イメージスキャナに原稿サイズを検出するセンサが設けられ、その検出結果をスキャナインタフェースを介して受信できる場合には、その原稿サイズと読み取り解像度に基づいて符号化対象の画像データのサイズを取得できる。
【００４４】
さて、原稿の読み取りが開始されると、ＣＰＵ１４０１は、符号化アプリケーションに従って、イメージスキャナ１４１１より原稿画像を入力し、符号化を行なうことになる。符号化結果は、外部記憶装置１４０７にファイルとして格納する。
【００４５】
ここで、画像符号化アプリケーションは、図１に示す各構成要素に相当するモジュール（サブルーチン、関数と言い換えることもできる）を有する。ただし、ラインバッファ１０２については、画像符号化アプリケーションの実行することで、ＲＡＭ１４０２に確保されることになる。従って、画像符号化アプリケーションは、基本的に図４と同様の処理となるのが理解できよう。
【００４６】
よって、本発明は、コンピュータプログラムをもその範疇とするのは明らかである。なお、上記では、符号化対象の画像はイメージスキャナ１４１１から入力するものとしたが、符号化対象の画像データは記憶媒体に格納されていても良いし、ネットワーク上のサーバからダウンロードする場合にも適用可能である。また符号化結果の出力先も、外部記憶装置１４０７に限らず、ネットワークでも構わないし、その出力先は如何なるものでも構わない。
【００４７】
＜第２の実施形態＞
図６は本第２の実施形態に係る画像処理装置のブロック構成図である。
【００４８】
図６に示すように、本実施形態に係る画像処理装置は、画像入力部６０１、ラインバッファ６０２、ブロック分割部６０３、タイルバッファ６０４、可逆符号化部１０３、符号列形成部６０５、状態数決定部１０５、タイルサイズ設定部６０６とを備える。同図において６０７、６０８は信号線を示す。第１の実施形態で説明した図１と共通のブロックについては同じ番号を付し、説明を省略する。
【００４９】
以下、図６を参照して、本第２の実施形態に係る画像処理装置が行う画像符号化処理について説明する。
【００５０】
本第２の実施形態に係る画像処理装置における符号化対象画像は、第１の実施形態と同様に、ＲＧＢ各コンポーネント（色）８ビット（０〜２５５の範囲の輝度値）で表わされるカラー画像データである。また、符号化対象の画像データの並びは点順次、即ち、ラスタースキャン順に各画素を並べ、その各画素はＲ、Ｇ、Ｂの順番でデータを並べて構成されるものとする。画像は水平方向Ｗ画素、垂直方向Ｈ画素により構成されるものとする。本第２の実施形態の画像処理装置は画像データをブロックに分割し、各ブロック（タイル）を独立に符号化するものである。タイルサイズは１６×１６、３２×３２、６４×６４の３種類の中から選択することができ、符号化対象画像ごとに設定する。なお、タイルのサイズは、ユーザが操作パネルやキーボード等を使って指定するものとする。
【００５１】
次に、本実施形態の画像処理装置での各部の動作について説明する。
【００５２】
まず、符号化対象画像データの入力に先立ち、信号線６０７からタイルの大きさを選択するタイルサイズ選択信号が入力される。タイルサイズ選択信号は３値であり、１６×１６を選択する場合には“０”、３２×３２を選択する場合には“１”、６４×６４を選択する場合には“２”が入力される。
【００５３】
タイルサイズ設定部６０６は信号線６０７から入力されるタイルサイズ選択信号に従ってタイルの水平方向画素数Ｉｗ、垂直方向画素数Ｉｈを設定し、出力する。つまり、タイルサイズ選択信号が“０”の場合、タイルサイズ設定部６０６はＩｗ＝Ｉｈ＝１６を出力する。また、“１”の場合にはＩｗ＝Ｉｈ＝３２、“２”の場合にはＩｗ＝Ｉｈ＝６４を出力する。
【００５４】
続いて、符号化対象画像データが画像入力部６０１から、ラスタースキャン順に入力される。
【００５５】
ラインバッファ６０２は画像データを６４ライン分格納する領域を持ち、画像入力部１０１から入力される画像データを順次格納していく。ラインバッファ１０２に必要とされる容量、即ち１ストライプのデータ量はＷ×６４×３（RGB分）バイトである。説明の便宜上、垂直方向画素数Ｈは６４の整数倍であるとする。
【００５６】
ブロック分割部６０３は、タイルサイズ設定部６０６の出力するタイルの垂直方向画素数Ｉｈに基づいてラインバッファ６０２の充足状況を監視し、ラインバッファ６０２にＩｈライン分の画像データが格納されると、ラインバッファ６０２に格納される画像データを水平方向Ｉｗ画素、垂直方向Ｉｈ画素で構成される矩形ブロックに分割して、ブロック単位に読み出してタイルバッファ６０４へと格納する。説明の便宜上、画像の水平方向画素数ＷはＩｗの整数倍であるとし、矩形ブロックに分割した場合に不完全なブロックが発生しないものとする。以降、符号化対象画像データをＩｈラインの幅で分割したデータをストライプと呼び、水平方向Ｉｗ画素、垂直方向Ｉｈ画素で構成される矩形ブロックをタイルと呼ぶ。
【００５７】
図８に符号化対象の画像データとストライプ、タイルの関係を示す。図のように画像中、水平方向ｉ番目、垂直方向ｊ番目のタイルをＴ（ｉ，ｊ）と記す。
【００５８】
タイルバッファ６０４は最大サイズ（６４×６４）の１タイル分の画素データを格納する領域を持ち、ブロック分割部６０３から出力されるタイルデータを順次格納していく。タイルバッファ６０４に必要とされる容量は６４×６４×３（RGB分）バイトである。
【００５９】
可逆符号化部１０３は第１の実施形態と同様にして、タイルバッファ６０４に格納されるタイルをライン単位に、ＪＰＥＧ−ＬＳ  Ｂａｓｅｌｉｎｅのラインインターリーブモードとして規定される符号化アルゴリズムに従って符号化し、タイル符号化データを符号列形成部６０５へと出力する。このとき、状態分離に用いられる閾値Ｔ１、Ｔ２、Ｔ３は状態数決定部１０５から与えられる値を用いる。
【００６０】
符号列形成部１０６は可逆符号化部１０３から出力されるタイル符号化データを結合させ、必要な付加情報を加えて本画像処理装置の出力となる符号列を形成して信号線６０８より出力する。各タイルについて可逆符号化部１０３から出力されるタイル符号化データはそれぞれのタイルを１枚の画像として符号化して得られるＪＰＥＧ−ＬＳ符号化データの構造（図７を参照）の、エントロピ符号化データセグメント部分に相当する。
【００６１】
図９は本第２の実施形態における画像処理装置の出力符号列の構成を示している。出力符号列の先頭には、画像を復号するために必要となる情報、例えば、画像の水平方向画素数、垂直方向画素数、色空間を表す属性情報、コンポーネント数、各コンポーネントのビット数やタイルの幅、高さなどの付加情報がヘッダとして付けられる。また、状態数決定部１０５から出力されるＴ１、Ｔ２、Ｔ３の値をヘッダに含める。
【００６２】
図１０は各タイルの出力符号列の構成を示す図である。各タイルの先頭にはタイルヘッダを付加し、各タイルの水平、垂直位置情報（ｉ，ｊ）などを含める。なお、各タイルデータの先頭、または末尾にマーカを置く。あるいは、各タイルの符号列の長さをタイルの先頭や、符号化データの先頭のヘッダ部分に含めるなどして管理することによりタイル単位のランダムアクセスを可能とすることができる。
【００６３】
図５は、本実施形態に係る画像処理装置による符号化対象画像データの符号化処理の流れを示すフローチャートである。以下、図５に示したフローチャートに従い、本第２の実施形態に係る画像処理装置が行う画像符号化処理の全体的な流れについて説明する。
【００６４】
まず、タイルサイズ設定部６０６は、信号線６０７からタイルサイズ選択信号を入力し、その選択信号に応じてタイルの水平方向画素数Ｉｗ、垂直方向画素数Ｉｈを決定し、出力する。状態数決定部１０５は、これらＩｗ、Ｉｈに基づいて状態数を決定する閾値Ｔ１，Ｔ２，Ｔ３を決定する（ステップＳ５００）。
【００６５】
続いて、画像入力部６０１からの画像データの入力を開始し、ラインバッファ６０２に符号化対象となる画像データの１ストライプ分のデータが格納する（ステップＳ５０１）。
【００６６】
次に、ブロック分割部６０３は、ラインバッファ６０２に格納されるストライプから１つのタイルデータを取り出し、タイルバッファ６０４に格納する（ステップＳ５０２）。続いて可逆符号化部１０３は、タイルバッファ６０４に格納されるタイルデータの可逆符号化を行う（ステップＳ５０３）。符号列形成部６０８は、可逆符号化部１０３から出力されるタイル符号化データを結合して所定のフォーマットで本画像処理装置の出力となる符号化データを生成し、順次装置外部へと出力する（ステップＳ６０５）。
【００６７】
次いで、符号化したタイルがストライプ内の最後のタイルであるか否か判断し（ステップＳ５０５）、最後のタイルでない場合（ＮＯ）は隣のタイルに処理の対象を移してＳ５０２から処理を繰り返す。また、ストライプの最後のタイルの符号化が完了したと判断した場合には、ステップＳ５０６へと処理を移す。ステップＳ５０６では符号化したストライプが画像の最後のストライプであるか否かを判断し、最後のストライプでない場合（ＮＯ）はステップＳ５０１に処理を移して次のストライプのデータを読み込んで、そのストライプの符号化処理を行なう。
【００６８】
こうして、ステップＳ５０６にて、最後のストライプの符号化が完了したと判断した場合、画像データについての符号化処理を終了する。
【００６９】
以上の処理により、画像全体の符号化が行われる。なお、ここでは１タイルづつ順番に符号化する方法について述べたが、各タイルの符号化が他のタイルに全く依存していないため、複数のタイルを並列に符号化処理することもできる。
【００７０】
また、第２の実施形態の画像処理装置で生成した符号化データを復号するにはヘッダに示されるＴ１、Ｔ２、Ｔ３の値を用いて、符号化処理の逆の手順でそれぞれのタイルを復号していくようにすれば良い。各タイルは独立に符号化されているので、先に述べたように、マーカを検出する、あるいは各タイルの符号化データの長さ情報などから復号したいタイルの符号化データにアクセスすることによって特定タイルのみを復号したり、複数のタイルを並列に復号したりすることができる。
【００７１】
以上の説明のように、本第２の実施形態に係る画像処理装置では、画像をタイルに分割し、タイルごとに独立に予測符号化をベースとする可逆符号化を行う符号化方式において、タイルのサイズに応じて状態数を適切に設定することにより符号量を低減することができる。
【００７２】
また、上記第２の実施形態は、第１の実施形態の変形例と同様、コンピュータが該当するプログラムを実行することでも実施できる。この場合、そのコンピュータプログラムは、図６に示すような各構成に対応するモジュールを備え、メイン処理では図５の処理を行なえばよいであろう。
【００７３】
＜他の実施形態＞
本発明は上述した実施の形態に限定されるものではない。例えば、可逆符号化部１０３で用いる可逆符号化方式としてＪＰＥＧ−ＬＳ  Ｂａｓｅｌｉｎｅ方式のラインインターリーブモードを例に説明したが、同標準のその他のインターリーブモードや、コンテキストに基づくその他の符号化方式を適用しても良い。
【００７４】
また、状態数の設定方法として総画素数Ｒに基づいて決定する方法を示したが、水平・垂直方向画素数のいずれか一方のみから定めるなど、画像（またはタイル）の大きさに関係する指標値に基づくものであれば良い。
【００７５】
また、第２の実施形態として画像をタイルに分割して、タイルサイズに応じて状態数を決定する例を示したが、一つの画像を異なる幾つかのタイルに分割して符号化する場合に適用することもできる。この場合、個々のタイルのサイズに応じて状態数を決定すれば良い。
【００７６】
また、上記各実施形態からも明らかなように、本発明はコンピュータプログラムをもその範疇とするものであるが、通常、コンピュータプログラムはＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体に格納されて、コンピュータのシステムにコピーもしくはインストールすることで実行可能となる。従って、このようなコンピュータ可読記憶媒体も本発明の範疇にあることも明らかである。
【図面の簡単な説明】
【００７７】
【図１】第１の実施形態に係る画像処理装置のブロック構成図である。
【図２】差分値とその量子化値の対応を示す図である。
【図３】符号化対象画素ｘと、その周辺画素ａ，ｂ，ｃの相対位置関係と示す図である。
【図４】第１の実施形態の符号化処理手順を示すフローチャートである。
【図５】第２の実施形態の符号化処理手順を示すフローチャートである。
【図６】第２の実施形態に係る画像処理装置のブロック構成図である。
【図７】ＪＰＥＧ―ＬＳ符号化データの基本構成を示す図である。
【図８】画像のタイル分割の様子を示す図である。
【図９】第２の実施形態に係る画像処理装置の出力符号列の構成を示す図である。
【図１０】第２の実施形態に係る画像処理装置の１つのタイルの符号列の構成を示す図である。
【図１１】ソフトウェアで実現する場合の装置の構成を示す図である。
【図１】
2008042684.tif 000003
【図２】
2008042684.tif 000004
【図３】
2008042684.tif 000005
【図４】
2008042684.tif 000006
【図５】
2008042684.tif 000007
【図６】
2008042684.tif 000008
【図７】
2008042684.tif 000009
【図８】
2008042684.tif 000010
【図９】
2008042684.tif 000011
【図１０】
2008042684.tif 000012
【図１１】
2008042684.tif 000013