(57)【要約】【課題】  入力された画像データの符号化後の画質や容量を領域ごとに制御すること。【解決手段】  画像符号化装置１０３は、ＤＣＴ変換を用いて、入力画像データを符号化する画像符号化装置であって、入力画像データの領域毎の属性を保持した領域データを記憶する領域データバッファ１０９と、入力画像データをＤＣＴ変換するＤＣＴ変換処理部１０８と、ＤＣＴ変換処理部１０８により作成されたＤＣＴ係数を領域データに基づいて、属性に応じた丸め処理を行う丸め処理部１１２とを備える。【選択図】        図１
2005198186.tif 000002
【特許請求の範囲】
【請求項１】
直交変換を用いて、入力画像データを符号化する画像符号化装置であって、
前記入力画像データの領域毎の属性を保持した領域データを記憶する領域データ記憶手段と、
前記入力画像データの直交変換を行なう直交変換処理手段と、
前記直交変換処理手段により作成された直交係数データを前記領域データに基づいて、属性に応じた丸め処理を行なう丸め処理手段とを備えた、画像符号化装置。
【請求項２】
前記丸め処理手段で丸められた直交係数データを量子化する量子化処理手段をさらに備えた、請求項１に記載の画像符号化装置。
【請求項３】
前記入力画像データの属性毎に丸め後に取りうる値を規定した丸めスケールテーブルを複数記憶する丸めスケールテーブル記憶手段をさらに備え、
前記丸め処理手段は、前記直交変換処理手段により作成された直交係数データを、前記領域データに関連して記憶されている丸めスケールテーブルで規定された値に丸める、請求項１に記載の画像符号化装置。
【請求項４】
前記入力画像データの属性に関連した丸め精度を定義する丸めテーブルを複数記憶する丸めテーブル記憶手段をさらに備え、
前記丸め処理手段は、前記直交変換処理手段により作成された直交係数データを、前記領域データに関連して記憶されている丸めテーブルを用いて丸める、請求項１に記載の画像符号化装置。
【請求項５】
前記丸めテーブルは、領域の属性毎に異なる、請求項４に記載の画像符号化装置。
【請求項６】
前記丸め処理手段で丸められた直交係数データを量子化する量子化処理手段をさらに備え、
前記量子化処理手段で用いる量子化テーブルの要素は、前記丸め処理手段により用いられた丸めテーブルの対応する要素の公約数である、請求項４記載の画像符号化装置。
【請求項７】
前記量子化処理手段で用いる量子化テーブルの要素は、丸め処理手段により用いられた丸めテーブルの対応する要素の最大公約数である、請求項６記載の画像符号化装置。
【請求項８】
前記直交変換処理手段は、ブロック単位で直交変換し、
前記丸め処置手段は、直交変換されるブロック単位と同じブロック単位で丸め処理する、請求項１に記載の画像符号化装置。
【請求項９】
複数の領域を含む入力画像データの前記複数の領域の属性を判定して前記領域データを生成する領域判定処理手段をさらに備えた、請求項１に記載の画像符号化装置。
【請求項１０】
前記領域判定処理手段は、所定のアルゴリズムに従って前記領域を決定して属性を判定する、請求項９に記載の画像符号化装置。
【請求項１１】
前記領域判定処理手段は、ユーザによる指定の有無により前記領域を決定して属性を判定する、請求項９に記載の画像符号化装置。
【請求項１２】
前記領域判定処理手段は、画像中の位置から前記領域を決定して属性を判定する、請求項９に記載の画像符号化装置。
【請求項１３】
前記領域判定処理手段は、画像中から所定の形状を抽出する形状抽出手段を含み、
前記抽出された形状を含む領域を決定して属性を判定する、請求項９に記載の画像符号化装置。
【請求項１４】
前記直交変換処理手段は、ブロック単位で直交変換し、
前記領域判定処理手段は、前記ブロック単位の領域の直交係数データに基づいて属性を判定する、請求項９に記載の画像符号化装置。
【請求項１５】
直交変換を用いて、入力画像データを符号化する画像符号化装置で実行される画像符号化方法あって、
前記入力画像データの領域毎の属性を保持した領域データを記憶するステップと、
前記入力画像データの直交変換を行なうステップと、
前記直交変換ステップにより作成された直交係数データを前記領域データに基づいて、属性に応じた丸め処理を行なうステップとを含む、画像符号化方法。
【請求項１６】
請求項１５記載の画像符号化方法の各ステップをコンピュータに実行させるための画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像符号化装置、画像符号化方法および画像符号化プログラムに関し、特に、画像データの画質や圧縮率を領域ごとに制御する画像符号化装置、画像符号化方法および画像符号化プログラムに関する。
【背景技術】
【０００２】
従来、デジタルカメラ等で撮影されて得られる画像は、インターネット等のネットワークを用いて伝送されたり、ハードディスク等の記録媒体に蓄積する際に圧縮されたりする。画像データを圧縮する技術としては、ＪＰＥＧ（Joint Photographic Experts Group）符号化方式が広く用いられている。ＪＰＥＧ符号化方式は、自然画像の符号化に特に適した方式である。近年では、複写機のディジタル化、電子書籍の普及等に伴い、文字、写真、イラスト等の複数種の画像要素を含んだ画像データの符号化にもＪＰＥＧ符号化方式が利用される機会が増えてきた。
【０００３】
ＪＰＥＧ符号化方式は、直交変換の１つである離散コサイン変換（ＤＣＴ変換）することにより、画素データをＤＣＴ係数に変換した後に、量子化テーブルを用いて量子化し、最後にエントロピー符号化を行なう方式である。このＪＰＥＧ符号化方式は、量子化テーブルの値を変更することにより、画質および圧縮率をコントロールすることができる。しかしながら、たとえば、画像データに文字が表されている場合と、写真が表されている場合と、イラストが表されている場合など、画像の性質により、最適な量子化テーブルの値が異なる。
【０００４】
一方、ＪＰＥＧ符号化方式では、量子化テーブルは１つの画像成分につき１つと規定されている。画像成分とは、画像プレーンをいい、例えば、ＲＧＢカラー画像は、Ｒ成分、Ｇ成分、Ｂ成分の３つの画像成分からなる。このため、画像データに、異なる属性の領域を含む場合、たとえば、文字が表された領域と、写真が表された領域と、イラストが表された領域とを含む場合等は、画像の部分的な領域毎に量子化テーブルを異ならせることができない。すなわち、領域毎に他の領域と独立して画質および圧縮率をコントロールすることができない。このため、次の２つの問題が生じる。
【０００５】
（１）  全ての領域の画質を一定以上に保つように量子化テーブルを設定した場合、過剰画質の領域が生じ、圧縮性能が低下する。
【０００６】
（２）  画像全体での画質評価値（たとえば、ＰＳＮＲ（peak-signal to noise ratio））を基準に量子化テーブルを設定した場合、画質の低い領域が生じる。この場合には、特定の領域、例えば文字が表された領域だけを他の領域と比べて画質を高めることができない。
【０００７】
これを緩和するための画像符号化制御方式が、特開平５−３４４３４８号公報（特許文献１）に記載されている。この画像符号化制御方式は、上述したＪＰＥＧ符号化方式では１成分につき１つに限定されていた量子化テーブルを、画像の種別ごとに複数の量子化テーブルを準備し、領域毎にその種別に対応する量子化テーブルを用いる方式である。
【特許文献１】特開平５−３４４３４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特開平５−３４４３４８号公報に開示されている画像符号化制御方式は、デコーダ側で、領域毎にどの量子化テーブルを用いたかを特定できなければならない。このため、符号化データ内に領域毎の量子化テーブル番号が付加データとして埋込まれている。この付加データの容量は、領域毎の量子化テーブルの切替を細かく設定すればする程増大する。また、用いる量子化テーブルの数を増やせば増やす程増大する。したがって、量子化テーブルを最適に設定する程圧縮性能が著しく低下してしまう。
【０００９】
また、現在一般的に用いられているＪＰＥＧ符号化方式やＭＰＥＧ符号化方式といった規格は、画像１成分につき量子化テーブルを複数使うことができない。そのため、複数の量子化テーブルの使用が前提である特開平５−３４４３４８号公報で開示されている画像符号化制御方式は、先の一般的な規格に対応した汎用的なデコーダで復号可能なデータを生成することができない。そのため独自仕様の複雑な処理を伴ったデコーダが必要となり、復号処理時間や復号に必要なリソースが増大する。また、量子化テーブルの数により、データ格納方法を変える必要があるため、量子化テーブル数を変更するとデコーダのアルゴリズムも変更しなければならず、拡張性に乏しいといった問題がある。
【００１０】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の１つは、入力された画像データの符号化後の画質や圧縮率を領域ごとに制御することが可能な画像符号化装置、画像符号化方法および画像符号化プログラムを提供することである。
【課題を解決するための手段】
【００１１】
上述した目的を達成するためにこの発明のある局面によれば、画像符号化装置は、直交変換を用いて、入力画像データを符号化する画像符号化装置であって、入力画像データの領域毎の属性を保持した領域データを記憶する領域データ記憶手段と、入力画像データの直交変換を行なう直交変換処理手段と、直交変換処理手段により作成された直交係数データを領域データに基づいて、属性に応じた丸め処理を行う丸め処理手段とを備える。
【００１２】
この発明に従えば、入力画像データが直交変換されて作成された直交係数データが、領域データに基づいて属性に応じて丸められる。このため、入力画像データの符号化後の画質や圧縮率を領域ごとに制御することが可能な画像符号化装置を提供することができる。
【００１３】
好ましくは、丸め処理手段で丸められた直交係数データを量子化する量子化処理手段をさらに備える。
【００１４】
好ましくは、入力画像データの属性毎に丸め後に取りうる値を規定した丸めスケールテーブルを複数記憶する丸めスケールテーブル記憶手段をさらに備え、丸め処理手段は、直交変換処理手段により作成された直交係数データを、領域データに関連して記憶されている丸めスケールテーブルで規定された値に丸める。
【００１５】
好ましくは、入力画像データの属性に関連した丸め精度を定義する丸めテーブルを複数記憶する丸めテーブル記憶手段をさらに備え、丸め処理手段は、直交変換処理手段により作成された直交係数データを、領域データに関連して記憶されている丸めテーブルを用いて丸める。
【００１６】
この発明に従えば、各領域において直交係数データが量子化に適した値に丸められる。このため、効率的に量子化することができる。
【００１７】
好ましくは、丸めテーブルは、領域の属性毎に異なる。
【００１８】
好ましくは、丸め処理手段で丸められた直交係数データを量子化する量子化処理手段をさらに備え、量子化処理手段で用いる量子化テーブルの要素は、丸め処理手段により用いられた丸めテーブルの対応する要素の公約数である。
【００１９】
この発明に従えば、各領域において直交係数データが量子化にさらに適した値に丸められる。このため、さらに効率的に量子化することができる。
【００２０】
好ましくは、量子化処理手段で用いる量子化テーブルの要素は、丸め処理手段により用いられた丸めテーブルの対応する要素の最大公約数である。
【００２１】
好ましくは、直交変換処理手段は、ブロック単位で直交変換し、丸め処置手段は、直交変換されるブロック単位と同じブロック単位で丸め処理する。
【００２２】
好ましくは、複数の領域を含む入力画像データの複数の領域の属性を判定して領域データを生成する領域判定処理手段をさらに備える。
【００２３】
好ましくは、領域判定処理手段は、所定のアルゴリズムに従って領域を決定して属性を判定する。
【００２４】
好ましくは、領域判定処理手段は、ユーザによる指定の有無により領域を決定して属性を判定する。
【００２５】
好ましくは、領域判定処理手段は、画像中の位置から領域を決定して属性を判定する。
【００２６】
好ましくは、領域判定処理手段は、画像中から所定の形状を抽出する形状抽出手段を含み、抽出された形状を含む領域を決定して属性を判定する。
【００２７】
好ましくは、直交変換処理手段は、ブロック単位で直交変換し、領域判定処理手段は、ブロック単位の領域の直交係数データに基づいて属性を判定する。
【００２８】
この発明の他の局面によれば、画像符号化方法は、直交変換を用いて、入力画像データを符号化する画像符号化装置で実行される画像符号化方法あって、入力画像データの領域毎の属性を保持した領域データを記憶するステップと、入力画像データの直交変換を行なうステップと、直交変換ステップにより作成された直交係数データを領域データに基づいて、属性に応じた丸め処理を行なうステップとを含む。
【００２９】
この発明に従えば、入力画像データの符号化後の画質や圧縮率を領域ごとに制御することが可能な画像符号化方法を提供することができる。
【００３０】
この発明のさらに他の局面によれば、画像符号化プログラムは、上記画像符号化方法の各ステップをコンピュータに実行させる。
【００３１】
この発明に従えば、入力画像データの符号化後の画質や圧縮率を領域ごとに制御することが可能な画像符号化プログラムを提供することができる。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照しつつ本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００３３】
＜第１の実施の形態＞
第１の実施の形態における画像符号化装置は、入力された画像データ（入力画像データ）を直交変換し、画像の領域毎に異なった丸め処理を行うことにより、領域毎に最適化した符号化処理を実現する装置である。本実施の形態における画像符号化装置は、文字画像要素を含んだ文字領域と、写真、イラスト等の画像を含み文字画像要素を含まない領域である非文字領域とで異なった丸め処理を行なう。また、直交変換はＤＣＴ変換を用い、変換は８画素×８画素のブロック単位で行なう。
【００３４】
図１は、本発明の第１の実施の形態における画像符号化装置の全体構成を示す図である。図１を参照して、画像符号化装置１０３は、画像入力装置１０１から入力画像データを受取り一時的に記憶する入力画像データバッファ１０５と、入力画像データに含まれる領域の属性を判定する領域判定処理部１０６と、判定された領域の属性を一時的に記憶するための領域データバッファ１０９と、入力データに直交変換するためのＤＣＴ変換処理部１０８と、ＤＣＴ変換処理部１０８より出力されるＤＣＴ係数データを一時的に記憶するためのＤＣＴ係数データバッファ１１１と、丸めテーブル入力装置１０２より入力された丸めテーブルＡを記憶するための丸めテーブルＡバッファ１０７と、丸めテーブル入力装置１０２より入力された丸めテーブルＢを記憶するための丸めテーブルＢバッファ１１０と、丸めテーブルＡと丸めテーブルＢとから量子化テーブルを作成する量子化テーブル作成処理部１１３と、丸めテーブルＡまたは丸めテーブルＢを用いて、ＤＣＴ係数データを丸める丸め処理部１１２と、丸められたＤＣＴ係数データを量子化する量子化処理部１１４と、量子化されたＤＣＴ係数データをエントロピー符号化するためのエントロピー符号化処理部１１６と、符号化されたエントロピー符号化データを一時的に記憶するためのエントロピー符号化データバッファ１１７と、エントロピー符号化データと量子化テーブルとから符号化データを作成するための符号化データ作成処理部１１８と、符号化データを一時的に記憶するための符号化データバッファ１１９とを含む。
【００３５】
符号化データバッファ１１９に記憶された符号化データは、符号化データ出力装置１０４により読出されて出力される。
【００３６】
入力画像データバッファ１０５は、画像入力装置１０１と接続されており、画像入力装置１０１から画像データが入力される。入力画像データバッファ１０５は、入力された入力画像データを一時的に記憶する。画像入力装置１０１は、画像データを出力し、たとえば、イメージスキャナ、デジタルカメラ、画像データを記憶したハードディスクなどの記憶装置である。入力画像データバッファ１０５は、領域判定処理部１０６およびＤＣＴ変換処理部１０８と接続され、それぞれからの読出し指示に応じて入力画像データを出力する。ここでは、入力画像データの大きさを、横画素数ＸＳＩＺＥとし、縦画素数ＹＳＩＺＥとする。
【００３７】
丸めテーブルＡバッファ１０７と丸めテーブルＢバッファ１１０とは、丸めテーブル入力装置１０２と接続されており、丸めテーブル入力装置１０２から丸めテーブルＡと丸めテーブルＢとがそれぞれ入力される。丸めテーブルＡバッファ１０７は、入力された丸めテーブルＡを記憶する。丸めテーブルＢバッファ１１０は、入力された丸めテーブルＢを記憶する。丸めテーブル入力装置１０２は、キーボードまたはマウス等の入力装置、または、丸めテーブルを記憶するハードディスク等の記憶装置である。丸めテーブルＡバッファ１０７は、量子化テーブル作成処理部１１３および丸め処理部１１２と接続されており、それぞれからの読出し指示に応じて丸めテーブルＡを出力する。丸めテーブルＢバッファ１１０は、量子化テーブル作成処理部１１３および丸め処理部１１２と接続されており、それぞれからの読出し指示に応じて丸めテーブルＢを出力する。
【００３８】
丸めテーブルＡは、文字領域の丸め処理に用いられ、丸めテーブルＢは非文字領域の丸め処理に用いられる。文字領域とは、文字が表された領域をいい、非文字領域とは文字領域以外の領域をいう。ここでは、丸めテーブルＡおよび丸めテーブルＢは、８行８列の行列とする。丸めテーブルＡ，Ｂは、後述する丸め処理部１１２で用いられ、ＤＣＴ係数データの丸め単位を規定する。丸め単位は丸めテーブルＡ，Ｂの要素ごとに独立して規定される。このため、すべての要素で互いに異なる丸め単位とすることも可能である。
【００３９】
領域判定処理部１０６は入力画像データバッファ１０５から入力画像データを読出し、入力画像データから領域データを生成して、生成した領域データを領域データバッファ１０９に出力する。本実施の形態においては、領域データは、入力画像データの縦横画素数のそれぞれ１／８の大きさの縦画素数がＸＳＩＺＥ／８で横画素数がＹＳＩＺＥ／８の行列データとしている。このため、領域データの１つの要素は、入力画像データに直交変換するブロックに対応する。
【００４０】
領域判定処理部１０６は、入力画像データを縦８画素横８画素の複数のブロックに分割し、ブロック毎に画像の属性を判定する。ここでは、画像の属性は、文字属性と非文字属性とを含む。文字属性は文字が表されたブロックに与えられ、非文字属性は文字属性が与えられないブロックに与えられる。文字属性が与えられたブロックは文字領域となり、非文字種別が与えられたブロックは非文字領域となる。領域データの要素の値は、対応するブロックの種別が文字領域である場合に「１」が設定され、非文字領域である場合に「０」が設定される。なお、領域データは入力データの各ブロックの属性が特定できるデータであれば、他の格納形式であってもよい。
【００４１】
領域データバッファ１０９は、入力された領域データを一時的に記憶する記憶装置である。領域データバッファ１０９は、丸め処理部１１２と接続され、丸め処理部１１２からの読出し指示に応じて、領域データを出力する。
【００４２】
ＤＣＴ変換処理部１０８は、入力画像データバッファ１０５から入力画像データを読取り、入力画像データを直交変換してＤＣＴ係数データを算出する。より具体的には、入力画像データを縦８画素、横８画素の複数のブロックに分割し、ブロック毎に直交変換してＤＣＴ係数データを算出する。ＤＣＴ変換処理部１０８は、算出したＤＣＴ係数データをＤＣＴ係数データバッファ１１１に出力する。ＤＣＴ変換処理部１０８で直交変換処理の対象とするブロックと、丸め処理部１１２で用いる丸めテーブルＡおよび丸めテーブルＢとは、サイズが同じである。このため、直交変換処理されるブロック単位と同じブロック単位で丸め処理される。
【００４３】
ＤＣＴ係数データバッファ１１１は、記憶装置であり、入力されたＤＣＴ係数データを一時的に記憶する。ＤＣＴ係数データバッファ１１１は、丸め処理部１１２、量子化処理部１１４およびエントロピー符号化処理部１１６とも接続される。
【００４４】
量子化テーブル作成処理部１１３は、丸めテーブルＡバッファ１０７から丸めテーブルＡを読出し、丸めテーブルＢバッファ１１０から丸めテーブルＢを読出し、量子化テーブルを作成する。本実施の形態においては、丸めテーブルＡと丸めテーブルＢとは、８×８の行列である。量子化テーブル作成処理部１１３は、丸めテーブルＡおよび丸めテーブルＢとサイズが同じ、８×８の行列である。量子化テーブルは、丸めテーブルＡと丸めテーブルＢの対応する位置の値の公約数とされる。好ましくは、最大公約数である。
【００４５】
そして、作成した量子化テーブルを量子化テーブルバッファ１１５に出力する。量子化テーブルバッファ１１５は、量子化テーブルを一時的に記憶するための記憶装置である。量子化テーブルバッファ１１５は、量子化処理部１１４に接続され、読出し指示に応じて量子化テーブルを出力する。
【００４６】
丸め処理部１１２は、領域データバッファ１０９から領域データを、丸めテーブルＡバッファ１０７から丸めテーブルＡを、丸めテーブルＢバッファ１１０から丸めテーブルＢを読取り、ＤＣＴ係数データバッファ１１１に格納されているＤＣＴ係数データを丸めて、丸めた値に書き換える。このＤＣＴ係数データの丸めは、処理対象となるＤＣＴ係数データの属する領域の領域データにより、丸めテーブルＡと丸めテーブルＢのいずれかを用いて丸める。ここでは、領域データが「１」の場合には丸めテーブルＡを用い、領域データが「０」の場合には丸めテーブルＢを用いる。丸め処理とは、ＤＣＴ係数データを、丸めテーブルＡ，Ｂで規定される丸め単位を整数倍した値のうち近い値とする処理である。本実施の形態においては、丸め処理は、ＤＣＴ係数データを、丸めテーブルＡ，Ｂで規定される丸め単位で除算した商（整数）に、丸め単位を乗算した値としている（切捨て処理）。なお、ＤＣＴ係数データを、丸めテーブルＡ，Ｂで規定される丸め単位で除算した商（整数）に１を加算した値に丸め単位を乗算した値としてもよい（切上げ処理）。さらに、ＤＣＴ係数データを、丸めテーブルＡ，Ｂで規定される丸め単位で除算した商を四捨五入して整数とした値に丸め単位を乗算した値としてもよい（四捨五入処理）。
【００４７】
量子化処理部１１４は、量子化テーブルバッファ１１５から量子化テーブルを読取り、ＤＣＴ係数データバッファ１１１に格納されている、丸め処理されたＤＣＴ係数データを量子化して書き換える。ここでの量子化は、ＤＣＴ係数データを量子化テーブルの各要素で除算した商（整数）とすることをいう。
【００４８】
エントロピー符号化処理部１１６は、ＤＣＴ係数データバッファ１１１から、ＤＣＴ係数データを読取り、エントロピー符号化してエントロピー符号化データを生成し、エントロピー符号化データをエントロピー符号化データバッファ１１７に出力する。
【００４９】
符号化データ作成処理部１１８は、量子化テーブルバッファ１１５から量子化テーブルを、エントロピー符号化データバッファ１１７からエントロピー符号化データを読取り、符号化データを符号化データバッファ１１９に出力する。
【００５０】
入力画像データバッファ１０５、丸めテーブル１バッファ１０７、丸めテーブル２バッファ１１０、領域データバッファ１０９、ＤＣＴ係数データバッファ１１１、量子化テーブルバッファ１１５、エントロピー符号化データバッファ１１７、符号化データバッファ１１９は、フラッシュメモリ、ハードディスク等のＲＡＭ（ランダムアクセスメモリ）によって実現される。
【００５１】
領域判定処理部１０６、ＤＣＴ変換処理部１０８、丸め処理部１１２、量子化テーブル作成処理部１１３、量子化処理部１１４、エントロピー符号化処理部１１６、符号化データ作成処理部１１８は、例えばそれぞれ独立した回路によって実現される。また、例えばコンピュータ等の演算処理回路によって実現される仮想回路とされてもよい。この場合、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）等の記録媒体に記録された画像符号化プログラムが、ＣＤ−ＲＯＭドライブ等により読取られてハードディスクに一旦格納され、さらに、ハードディスクからランダムアクセスメモリ（ＲＡＭ）に読出されてＣＰＵ（Central Processing Unit）により実行されることにより、コンピュータのＣＰＵに仮想回路が実現される。
【００５２】
図２は、入力される画像データと領域データとのサイズの関係を示す図である。図２（Ａ）は画像データのサイズを示し、図２（Ｂ）は領域データのサイズを示す。図２（Ａ）に示すように、入力画像データのサイズは、横画素数がＸＳＩＺＥであり、縦画素数がＹＳＩＺＥである。本実施の形態においては、領域判別に用いるブロックサイズを横画素数を８、縦画素数を８としているため、領域データのサイズは、図２（Ｂ）に示すように横画素数がＸＳＩＺＥ／８となり、縦画素数がＹＳＩＺＥ／８となる。
【００５３】
図３は、本実施の形態における画像符号化装置１０３に入力される文字領域用の丸めテーブルＡの一例を示す図である。図４は、本実施の形態における画像符号化装置１０３に入力される非文字領域用の丸めテーブルＢの一例を示す図である。図５は、本実施の形態における画像符号化装置１０３で生成される量子化データの一例を示す図である。
【００５４】
図４に示す非文字領域用の丸めテーブルの各要素の丸め単位は、図３に示す文字領域用の丸めテーブルの各要素の丸め単位に比較して大きな値となっている。これは、文字領域の画像は非文字領域の画像に比較して高周波成分が多く含まれていることによる。高周波成分が多く含む画像の丸め単位を小さくすることにより、復号後の画像の画質を向上させることができる。一方、高周波成分の少ない非文字領域の画像は、丸め単位を大きくしても、復号後の画像の画質に与える影響は少ない。丸め単位を大きくすることにより、丸め単位が小さい場合に比較して符号化効率を向上させることができる。
【００５５】
図５を参照して、量子化データの各要素は、丸めテーブルＡおよび丸めテーブルＢの対応する要素の最大公約数となる。なお、最大公約数に代えて、公約数を用いることもできる。このように公約数を用いれば、量子化処理によって新たな誤差が生じない。
【００５６】
次に、画像符号化装置１０３の処理の流れを説明する。図６は、画像符号化装置１０３で実行される処理の流れを示すフローチャートである。図６を参照して、画像入力装置１０１から入力された画像データを入力画像データバッファ１０５に格納する（Ｓ２０２）。丸めテーブル入力装置１０２から入力された丸めテーブルＡおよび丸めテーブルＢを丸めテーブルＡバッファ１０７および丸めテーブルＢバッファ１１０にそれぞれ格納する（Ｓ２０３）。
【００５７】
領域判定処理部１０６にて、入力画像データバッファ１０５から、入力画像データを読取り、所定のアルゴリズムに従って文字領域と非文字領域を抽出して、領域データを作成する（Ｓ２０４）。より具体的には、縦×横が８画素×８画素のブロック単位で文字領域と非文字領域とのいずれかを判別し、領域データを作成する。そして、作成された領域データを領域データバッファ１０９に格納する（Ｓ２０５）。
【００５８】
領域データの作成には、特開２００２―２９８１３９号公報に記載されている文字抽出アルゴリズムを用い、抽出結果からブロック毎に文字要素の有無を判定する。判定の結果、文字要素があれば「１」に、文字要素がなければ「０」をそのブロックに対応する領域データの要素に設定する。なお、本実施の形態においては、領域データを作成するアルゴリズムとして、文字要素の有無を基準に領域の判定を行う文字抽出アルゴリズムを用いたが、これに代えて、周知のアルゴリズムを任意に用いることができる。たとえば、平坦部とエッジ部等の基準で文字領域か否かを判別してもよい。また、ブロック単位で領域の属性を判定するのではなく、文字領域と非文字領域を抽出して、領域データを生成するようにしてもよい。
【００５９】
次に、ＤＣＴ変換処理部１０８にて、入力画像データバッファ１０５に格納されている入力画像データを読込み、その画像データを縦×横が８画素×８画素のブロック単位でＤＣＴ係数データにＤＣＴ変換する（Ｓ２０６）。ＤＣＴ係数データはＤＣＴ係数データバッファ１１１に記憶される（Ｓ２０７）。
【００６０】
量子化テーブル作成処理部１１３にて、量子化テーブルが作成される（Ｓ２０８）。量子化テーブルは、図３に示した丸めテーブルＡと図４に示した丸めテーブルＢのそれぞれ対応する要素の値の最大公約数をユークリッドの互除法を用いて求め、量子化テーブルの対応する要素の値に、求めた最大公約数を設定することにより作成される。このように図５に示した量子化テーブルを作成して、量子化テーブルバッファ１１５に格納する（Ｓ２０９）。なおここでは、最大公約数の算出にユークリッドの互除法を用いたが、公約数を算出するための他の算出法を用いてもよい。
【００６１】
そして、丸め処理部１１２にて、ＤＣＴ係数データの各ブロックを領域データで指定されている丸めテーブルを用いて丸め処理する（Ｓ２１０）。すなわち、領域データの要素が「１」とされたブロックに対しては文字領域用の丸めテーブルＡを用いてＤＣＴ係数データが丸められ、領域データの要素が「０」とされたブロックに対しては非文字領域用の丸めテーブルＢを用いてＤＣＴ係数データが丸められる。
【００６２】
次に、量子化処理部１１４にて、丸め処理されたＤＣＴ係数データを量子化テーブルに基づいて量子化する（Ｓ２１１）。この量子化処理の対象となるＤＣＴ係数データは、上述したステップＳ２１０で丸め処理されたＤＣＴ係数データである。量子化テーブルの各要素は、複数の丸めテーブルの対応する各要素の最大公約数なので、丸め処理されたＤＣＴ係数データは、すべて割り切れる値となっているはずであり、丸め処理以上にデータが失われることがない。
【００６３】
さらに、エントロピー符号化処理部１１６にて、量子化されたＤＣＴ係数データに対してエントロピー符号化を行い（Ｓ２１２）、符号化されたエントロピー符号化データをエントロピー符号化データバッファ１１７に格納する（Ｓ２１３）。なお、エントロピー符号化を用いたが、可逆な符号化方式であれば、他の方式で符号化してもよい。
【００６４】
符号化データ作成処理部１１８は、エントロピー符号化データに量子化テーブルを埋め込んで符号化データを作成する（Ｓ２１４）。符号化データは、エントロピー符号化データと量子化テーブルとを含む。そして、符号化データを符号化データバッファ１１９に格納する（Ｓ２１５）。格納された符号化データは、符号化データ出力装置に出力される（Ｓ２１６）。
【００６５】
なお、第１の実施の形態における画像符号化装置１０３の丸め処理（Ｓ２１０）と、量子化処理（Ｓ２１１）の処理順序は入れ替えてもかまわない。
【００６６】
なお、直交変換は、ＤＣＴ変換以外のフーリエ変換や、ＫＬ（Karhunen-Loeve）変換等を用いてもよい。また、直交変換を行なう単位は、８画素×８画素のブロック単位である必要はなく、Ｍ画素×Ｎ画素（Ｍ，Ｎ：正数）のブロック単位であれば良い。また、直交変換をＭ画素×Ｎ画素単位で行う場合、丸めテーブルＡ、丸めテーブルＢおよび量子化テーブルはすべてＮ行Ｍ列（Ｍ×Ｎ）の行列となる。ステップＳ２０４での領域判定処理は、Ｍ画素×Ｎ画素のブロック単位で行い、領域データを入力画像データの横画素数の１／Ｍ倍の大きさの列と、縦画素数の１／Ｎ倍の大きさの行とからなる行列データとする。また、ステップＳ２０４での領域判定処理をＭ画素×Ｎ画素のブロック単位で行なわない場合であっても、領域データは入力画像データの横画素数の１／Ｍ倍の大きさの列と、縦画素数の１／Ｎ倍の大きさの行とからなる行列データとする。
【００６７】
本実施の形態では、静止画像データの画像符号化装置を示したが、動画像データの各フレーム画像は静止画像データである。したがって、本実施の形態の画像符号化装置は、動画像データのフレーム画像の符号化にそのまま用いることができる。
【００６８】
＜領域判定処理の変形例＞
上述した領域判定処理部１０６では、所定のアルゴリズムを用いて文字属性の文字領域と非文字属性の非文字領域とを抽出して領域データを作成する例を示した。画像の属性は、任意に定義できる。本実施の形態で例に用いた文字属性の他に、たとえば、指定属性、形状属性、位置属性、周波数属性等を定義することができる。
【００６９】
（１）  指定属性
指定属性とは、画像データ中のユーザが指定した領域に与えられる属性である。ユーザが、ディスプレイに表示された画像データを見ながら、ポインティングデバイスなどで領域を指定することにより、画像中の指定された領域が指定属性とされる。領域判定処理部１０６は、ユーザによる指定の有無が判断されて、指定された領域の属性を指定属性に判定する。
【００７０】
なお、領域データは、領域判定処理部１０６で判定することなく、入力画像データとともに画像符号化装置１０３に入力されるようにしてもよい。この場合には、領域判定処理部１０６は不要となる。
【００７１】
指定属性と指定属性以外の領域には、異なる丸めテーブルが対応付けられる。これにより、指定属性の領域と指定属性以外の領域とで丸め量を異ならせることができる。文字属性以外の写真が表された非文字属性の領域であっても、ＤＣＴ係数データの高周波成分が重要となる領域と重要でない領域とがある。高周波成分が重要となる領域を指定することにより、重要でない領域の丸め量を多くすることができ、その結果、重要でない領域の圧縮率を高くしつつ、重要な領域の画質が劣化するのを防止することができる。
【００７２】
（２）  形状属性
形状属性とは、画像データに含まれる所定の形状の領域に与えられる属性をいう。たとえば、画像データに人物を撮影した写真画像が含まれている場合に、人の顔の輪郭を所定の形状とすることにより、画像データから人の顔の領域を抽出することができる。この抽出された領域に形状属性が与えられる。領域判定処理部１０６は、入力画像データから所定の形状を抽出する形状抽出部を含み、形状抽出部により抽出された形状を含む領域を決定し、その領域を形状属性と判定する。
【００７３】
形状属性の領域用の丸めテーブルを準備すれば、画像中に含まれる形状属性の領域だけ、他の領域とは異なる丸め処理を行うことができる。たとえば、形状属性用の丸めテーブルの丸め単位を他の丸めテーブルよりも小さな値とすれば、人物の領域のみの画質の劣化を防止しながら、人物以外の領域の画質をある程度劣化させて圧縮率を向上させることができる。すなわち、所定の形状の領域の画質が劣化するのを防止しつつ、圧縮率を向上させることができる。
【００７４】
（３）  位置属性
位置属性とは、画像データ中の位置により定まる領域に与えられる属性をいう。人物の顔を撮影した写真は、写真の中央部分に人物の顔が通常は位置する。したがって、入力画像データ中の中央部分の所定範囲の領域に位置属性を与える。領域判定処理部１０６は、入力画像データ中の位置から領域を決定して、その領域の属性を形状属性に判定する。
【００７５】
位置属性の領域用の丸めテーブルを準備すれば、画像中に含まれる位置属性の領域だけ、他の領域とは異なる丸め処理を行うことができる。たとえば、位置属性用の丸めテーブルの丸め単位を他の丸めテーブルよりも小さな値とすれば、画像の中央部分の画質の劣化を防止しながら、周辺部分の画質をある程度劣化させて圧縮率を向上させることができる。
【００７６】
（４）  周波数属性
周波数属性とは、直交変換後のＤＣＴ係数データに基づき定められる属性である。周波数属性は、たとえば、直交変換後のＤＣＴ係数データの周波数成分の総和を周波数成分のうちブロックの右下近傍のＤＣＴ係数データの和で除算した値が、所定のしきい値よりも小さい場合に周波数成分が重要な周波数属性のブロックとし、そうでない場合に周波数成分が重要でない非周波数属性のブロックとする。領域判定処理部１０６は、ブロック単位の領域のＤＣＴ係数データに基づいて属性を判定する。好ましくは、領域判定処理部１０６は、ブロック単位の領域のＤＣＴ係数データの周波数成分に基づいて属性を判定する。
【００７７】
右下近傍の要素は、たとえば、８行８列のブロックの場合、８行６列、８行７列、８行８列、７行７列、７行８列、６行８列の６つの要素とすればよい。
ＤＣＴ係数データの周波数成分は、１行１例の直流成分の要素を除くすべての要素である。
【００７８】
（５）  画像属性の組み合わせ
画像の属性は、任意に定義して、それを組合わせて用いてもよい。たとえば,前述の文字属性、形状属性、位置属性、周波数属性をそれぞれ単独で定義してもよいが、これらを組合わせて定義してもよい。具体的には、文字属性かつ指定属性、非文字属性かつ形状属性、非文字属性かつ周波数属性などである。
【００７９】
たとえば、文字属性と周波数属性とを組み合わせた場合に画像の属性は、文字属性かつ周波数属性、文字属性かつ非周波数属性、非文字属性かつ周波数属性および非文字属性かつ非周波数属性の４通りがある。４通りの属性それぞれに対して丸めテーブルを準備して、丸め処理を行えば、４つの属性の領域ごとに異なる丸め処理を行うことができる。
【００８０】
なお、組合わせは２つの属性の組み合わせに限らず、３つ以上の属性を組あわせてもよい。例に挙げたすべての属性を組み合わせた場合、領域データは、各要素を６ビットとして、第１ビットを文字属性、第２ビットを指定属性、第３ビットを形状属性、第４ビットを位置属性、第５ビットを周波数属性を割り当てればよい。
【００８１】
各属性および組み合わせられた属性それぞれに丸めテーブルを対応させることができる。このようにして領域データの属性をＬ通り用意すれば、Ｌ個の丸めテーブルを用い、Ｌ通りの異なる丸め処理をおこなうことができる。この場合には、丸めテーブルバッファはＬ個備える必要がある。Ｌ個の丸めテーブルを用いる場合であっても、量子化テーブルの各要素は、Ｌ個の丸めテーブルの対応する要素の公約数または最大公約数なので、量子化テーブルは１つでよい。
【００８２】
以上説明したように本実施の形態における画像符号化装置１０３は、領域毎に異なった丸めテーブルを用いた丸め処理を行うので、領域毎に圧縮後の画質や圧縮率を制御することが可能となる。
【００８３】
また、文字領域用の丸めテーブルＡと非文字領域用の丸めテーブルＢとは領域の種類に応じて定められるため、画像データの画質や符号化後の圧縮率を領域の属性毎に制御することができる。
【００８４】
さらに、量子化テーブルの要素は、文字領域用の丸めテーブルＡと非文字領域用の丸めテーブルＢとの対応する要素の公約数なので、ＤＣＴ係数データが量子化に適した値に丸められるので、領域ごとに効率的に量子化することができる。最大公約数とすれば、さらに効率的に量子化することができる。
【００８５】
本実施の形態における画像符号化装置１０３は、量子化テーブルは画像１成分につき１つでよいため量子化テーブルが１つでよい。このため、特開平５−３４４３４８号公報に記載されている画像符号化制御方式で必要であった領域毎の量子化テーブル識別情報を符号化データに埋め込む必要がない。その結果、圧縮性能を高くすることができ、同容量下での画質を向上させることができる。
【００８６】
また、量子化テーブルが１つであることの利点はこれだけにとどまらず、ＪＰＥＧ方式やＭＰＥＧ方式が適用された従来から用いられているデコーダを改良することなく、それらに入力するためのデータを作成することができる。
【００８７】
また、デコーダ側の復号処理は、特開平５−３４４３４８号公報で開示されている画像符号化制御方式と比べると単純となるため、少ないリソースでの高速復号処理が可能となる。
【００８８】
また、丸めテーブルの数の増加や、領域毎の設定の細分化を行なっても、領域に関する情報は復号に全く必要ないため、特開平５−３４４３４８号公報で開示されている画像符号化制御方式のように圧縮性能が著しく低下することはなく、むしろ領域毎に丸めテーブルを細かく最適に設定すればするほど、圧縮性能は向上する。これにより、例えば、同じ文字でも、小さい文字では、高周波に対応した箇所の丸めテーブルの要素値を比較的小さくし、大きい文字では高周波に対応した箇所の丸めテーブルの要素値を比較的大きくするなど、細かな設定が可能となる。
【００８９】
また、ＤＣＴ係数データに基づいて、丸め処理に用いる丸めテーブルを切換えるようにしてもよい。
【００９０】
なお、本実施の形態においては、画像の属性として、文字属性、指定属性、形状属性、位置属性、周波数属性を示したが、これに限られることなく、ある領域を他の領域と区別できる領域に、他のいかなる属性を含めてもよい。そして、その属性に適した丸めテーブルを用いて丸め処理をすればよい。
【００９１】
また、本実施の形態においては、量子化処理部１１４で量子化処理をするようにしたが、この量子化処理部１１４は必ずしも必要でない。丸め処理されたＤＣＴ係数データを直接エントロピー符号化するようにしてもよく、この場合であっても異なる属性の領域ごとに圧縮後の画質やデータ圧縮率を制御することができる。
【００９２】
さらに、本実施の形態においては、画像符号化装置１０３について説明したが、図６に示した処理を実行する画像符号化方法、または、それらの処理をコンピュータに実行させるための画像符号化プログラムとしても実現できる。
【００９３】
＜第２の実施の形態＞
本発明の第２の実施の形態における画像符号化装置は、第１の実施の形態における画像符号化装置１０３が領域判定処理部１０６を備えたのと異なり、外部から領域データを読込むようにしたものである。その他の構成は第１の実施の形態における画像符号化装置１０３と同様であるので、ここでは説明を繰り返さない。
【００９４】
図７は、第２の実施の形態における画像符号化装置の全体構成を示す図である。画像符号化装置１０３Ａは、図１に示した第１の実施の形態における画像符号化装置１０３と異なるところは、画像符号化装置１０３Ａには領域判定処理部１０６に相当する部分がなく、領域データが外部の領域データ入力装置２０１から入力され、領域データバッファ１０９に記憶される点である。
【００９５】
図８は、第２の実施の形態における画像符号化装置１０３Ａで実行される処理の流れを示すフローチャートである。図６に示した第１の実施の形態における画像符号化装置１０３の処理と異なるところは、ステップＳ２０４における領域判定処理に相当する処理がなくなっている点と、領域データの領域データバッファ１０９へ格納するステップＳ２０５において、領域データが入力装置２０１から入力される点である。
【００９６】
領域データが外部から入力されるので、画像符号化装置１０３Ａの処理負荷を低減することができる。
【００９７】
なお、第２の実施の形態における画像符号化装置１０３Ａの丸め処理（Ｓ２１０）と、量子化処理（Ｓ２１１）の処理順序は入れ替えてもかまわない。
【００９８】
＜第３の実施の形態＞
上述した第１または第２の実施の形態における画像符号化装置１０３，１０３Ａでは、量子化テーブルを丸めテーブルから内部的に生成するものであった。第３の実施の形態における画像符号化装置は、量子化テーブルを外部から入力するようにした点で異なる。
【００９９】
図９は、第３の実施の形態における画像符号化装置の全体構成を示す図である。第３の実施の形態における画像符号化装置１０３Ｂと、図７に示した第２の実施の形態における画像符号化装置１０３Ａの異なるところは、画像符号化装置１０３Ｂには量子化テーブル作成処理部１１３に相当する部分がなく、量子化テーブルが外部の量子化テーブル入力装置３０１から入力され、量子化テーブルバッファ１１５に記憶される点である。
【０１００】
図１０は、第３の実施の形態における画像符号化装置１０３Ｂで実行される処理の流れを示すフローチャートである。図８に示した第２の実施の形態における画像符号化装置１０３Ａの処理と異なるところは、ステップＳ２０８の量子化テーブル作成処理がない点だけでありそれ以外は全く同じである。第１または第２の実施の形態における画像符号化装置１０３，１０３Ａでは、量子化処理によってＤＣＴ係数データの情報が失われることはなかったが、第３の実施の形態における画像符号化装置１０３Ｂでは、ＤＣＴ係数データは量子化処理により一部失われる。また、丸め処理が属性に応じて実行される点は、第１または第２の実施の形態における画像符号化装置１０３、１０３Ａと同じであるので、第１または第２の実施の形態における画像符号化装置１０３、１０３Ａと同様に、画像の属性に応じて領域毎に圧縮率を制御することが可能である。
【０１０１】
第３の実施の形態における画像符号化装置１０３Ｂは、量子化テーブル作成処理部１１３がないため、第１または第２の実施の形態における画像符号化装置１０３、１０３Ａと比べると、システム構成が単純で、計算コストを下げることができる。また、第１または第２の実施の形態における画像符号化装置１０３、１０３Ａは、量子化テーブルを丸めテーブルの最大公約数とすることで、画質コントロールを丸め処理のみで行うため、画質制御のし易い合理的な装置であったが、丸めテーブルに例えば素数が多く含まれていた場合など最大公約数が小さくなる可能性がある。量子化テーブルの値の大きさは全体の圧縮率に関連するため、この場合、量子化テーブルの要素が小さい値となり、全体の圧縮率を下げる結果になる恐れがある。そのため、第１または第２の実施の形態の画像符号化装置１０３、１０３Ａは、丸めテーブルをどう設定するかに気を配る必要があった。それに対して、第３の実施の形態の画像符号化装置１０３Ｂでは、丸め処理と量子化処理の両方で画質コントロールを行うため、画質コントロールは第１または第２の実施の形態と比べ、しづらいところもあるが、量子化テーブルが丸めテーブルにより、変わらないため、丸めテーブルの設定に気を配る必要がない。
【０１０２】
なお、第１の実施の形態における画像符号化装置１０３のように、領域判定処理部１０６を設けて、入力画像データから領域データを生成するようにしてもよい。
【０１０３】
第３の実施の形態における画像符号化装置１０３Ｂによれば、領域の属性に応じて異なる丸めテーブルを用いて丸め処理を実行した後に、外部から入力された１つの量子化テーブルに従って量子化処理を実行するので、領域ごとに異なる量子化をしたのと同様の結果が得られる。このため、送信する量子化テーブルが１つでも、画像の属性に応じて圧縮率を異ならせることができる。
【０１０４】
また、第３の実施の形態における画像符号化装置１０３Ｂの丸め処理（Ｓ２１０）と、量子化処理（Ｓ２１１）の処理順序は入れ替えてもかまわない。
【０１０５】
＜第４の実施の形態＞
上述した第１〜第３の実施の形態における画像符号化装置１０３，１０３Ａ，１０３Ｂはいずれも（ＤＣＴの）各要素の丸め処理の刻み幅を規定した丸めテーブルを用いた。第４の実施の形態における画像符号化装置１０３Ｃは、丸め処理の刻み幅が一定とは限らない丸めスケールテーブルを用いるようにしたものである。
【０１０６】
図１１は、第４の実施の形態における画像符号化装置の全体構成を示す図である。第４の実施の形態における画像符号化装置１０３Ｃは、図９に示した第３の実施の形態における画像符号化装置１０３Ｂと異なるところは、丸め処理に関連するデータの入力が、丸めテーブル入力装置１０２から丸めスケールテーブル入力装置４０１に変更された点と、丸めテーブルバッファＡおよび丸めテーブルバッファＢが丸めスケールテーブルＡバッファ４０２および丸めスケールテーブルＢバッファ４０３に変更された点と、丸め処理部１１２がスケールによる丸め処理部４０４に変更された点である。
【０１０７】
スケールテーブル入力装置４０１から入力されるスケールテーブルは、丸め処理により丸めることが可能な値を（ＤＣＴの）要素毎に規定する。このスケールテーブルを用いた丸め処理では、丸め処理の刻み幅を任意に設定することが可能である。丸めスケールテーブルＡバッファ４０２、丸めスケールテーブルＢバッファ４０３は、フラッシュメモリ、ハードディスク等のＲＡＭ（ランダムアクセスメモリ）によって実現される。
【０１０８】
スケールテーブルによる丸め処理部４０４は、たとえばそれぞれ独立した回路によって実現される。また、たとえばコンピュータ等の演算処理回路によって実現される仮想回路とされてもよい。この場合、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）等の記録媒体に記録された画像符号化プログラムが、ＣＤ−ＲＯＭドライブ等により読取られてハードディスクに一旦格納され、さらに、ハードディスクからランダムアクセスメモリ（ＲＡＭ）に読出されてＣＰＵ（Central Processing Unit）により実行されることにより、コンピュータのＣＰＵに仮想回路が実現される。
【０１０９】
次に、画像符号化装置１０３Ｃの処理の流れを説明する。図１２は、第４の実施の形態における画像符号化装置１０３Ｃで実行される処理の流れを示すフローチャートである。図１２を参照して、画像入力装置１０１から入力された画像データを入力画像データバッファ１０５に格納する（Ｓ２０２）。丸めスケールテーブル入力装置４０１から入力された丸めスケールテーブルＡおよび丸めスケールテーブルＢを丸めスケールテーブルＡバッファ４０２および丸めスケールテーブルＢバッファ４０３にそれぞれ格納する（Ｓ２０３Ａ）。
【０１１０】
領域データ入力装置２０１から、領域データを領域データバッファ１０９に格納する（Ｓ２０５）。
【０１１１】
次に、入力画像データをＤＣＴ変換し（Ｓ２０６）、ＤＣＴ係数をＤＣＴ係数バッファ１１１に格納する（Ｓ２０７）。
【０１１２】
そして、スケールテーブルによる丸め処理部４０４にて、ＤＣＴ係数データの各ブロックを領域データで指定されている丸めスケールテーブルを用いて丸め処理する（Ｓ２１０Ａ）。すなわち、領域データの要素が「１」とされたブロックに対しては文字領域用の丸めスケールテーブルＡを用いてＤＣＴ係数データが丸められ、領域データの要素が「０」とされたブロックに対しては非文字領域用の丸めスケールテーブルＢを用いてＤＣＴ係数データが丸められる。
【０１１３】
スケールテーブルによる丸め処理とは、丸めスケールテーブルで規定されている丸めることが可能な値に丸めることであり、その方法はどのようなものであってもよい。ここでは、最も近い値に丸めた。その他、スケールテーブルによる丸め処理には、たとえば、丸めスケールテーブルで規定されている値のなかで、値が減少する方向に最も近い値に丸める方式でもよい。
【０１１４】
次に、量子化テーブル入力装置３０１から、量子化テーブルを量子化テーブルバッファ１１５に読み込み、量子化処理部１１４にて、丸め処理されたＤＣＴ係数データを量子化テーブルに基づいて量子化する（Ｓ２１１）。この量子化処理の対象となるＤＣＴ係数データは、上述したステップＳ２１０Ａで丸め処理されたＤＣＴ係数データである。
【０１１５】
さらに、エントロピー符号化処理部１１６にて、量子化されたＤＣＴ係数データに対してエントロピー符号化を行い（Ｓ２１２）、符号化されたエントロピー符号化データをエントロピー符号化データバッファ１１７に格納する（Ｓ２１３）。なお、エントロピー符号化を用いたが、可逆な符号化方式であれば、他の方式で符号化してもよい。
【０１１６】
符号化データ作成処理部１１８は、エントロピー符号化データに量子化テーブルを埋め込んで符号化データを作成する（Ｓ２１４）。符号化データは、エントロピー符号化データと量子化テーブルとを含む。そして、符号化データを符号化データバッファ１１９に格納する（Ｓ２１５）。格納された符号化データは、符号化データ出力装置１０４に出力される（Ｓ２１６）。
【０１１７】
なお、直交変換は、ＤＣＴ変換以外のフーリエ変換や、ＫＬ（Karhunen-Loeve）変換等を用いてもよい。また、直交変換を行なう単位は、８画素×８画素のブロック単位である必要はなく、Ｍ画素×Ｎ画素（Ｍ，Ｎ：正数）のブロック単位であれば良い。また、直交変換をＭ画素×Ｎ画素単位で行う場合、量子化テーブルはＮ行Ｍ列（Ｍ×Ｎ）の行列となる。ステップＳ２０４での領域判定処理は、Ｍ画素×Ｎ画素のブロック単位で行い、領域データを入力画像データの横画素数の１／Ｍ倍の大きさの列と、縦画素数の１／Ｎ倍の大きさの行とからなる行列データとする。また、ステップＳ２０４での領域判定処理をＭ画素×Ｎ画素のブロック単位で行なわない場合であっても、領域データは入力画像データの横画素数の１／Ｍ倍の大きさの列と、縦画素数の１／Ｎ倍の大きさの行とからなる行列データとする。
【０１１８】
第４の実施の形態における画像符号化装置１０３Ｃによれば、領域の属性に応じて異なるスケールテーブルを用いて丸め処理を実行した後に、外部から入力された１つの量子化テーブルに従って量子化処理を実行するので、領域ごとに異なる量子化をしたのと同様の結果が得られる。このため、送信する量子化テーブルが１つでも、画像の属性に応じて圧縮率を異ならせることができる。
【０１１９】
なお、第１の実施の形態における画像符号化装置１０３のように、領域判定処理部１０６を設けて、入力画像データから領域データを生成するようにしてもよい。
【０１２０】
また、第４の実施の形態における画像符号化装置１０３Ｃのスケールテーブルによる丸め処理（Ｓ２１０Ａ）と、量子化処理（Ｓ２１１）の処理順序は入れ替えてもかまわない。
【０１２１】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１２２】
【図１】本発明の第１の実施の形態における画像符号化装置の全体構成を示す図である。
【図２】入力される画像データと領域データとのサイズの関係を示す図である。
【図３】第１の実施の形態における画像符号化装置に入力される文字領域用の丸めテーブルＡの一例を示す図である。
【図４】第１の実施の形態における画像符号化装置に入力される非文字領域用の丸めテーブルＢの一例を示す図である。
【図５】第１の実施の形態における画像符号化装置で生成される量子化データの一例を示す図である。
【図６】第１の実施の形態における画像符号化装置で実行される処理の流れを示すフローチャートである。
【図７】第２の実施の形態における画像符号化装置の全体構成を示す図である。
【図８】第２の実施の形態における画像符号化装置で実行される処理の流れを示すフローチャートである。
【図９】第３の実施の形態における画像符号化装置の全体構成を示す図である。
【図１０】第３の実施の形態における画像符号化装置で実行される処理の流れを示すフローチャートである。
【図１１】第４の実施の形態における画像符号化装置の全体構成を示す図である。
【図１２】第４の実施の形態における画像符号化装置で実行される処理の流れを示すフローチャートである。
【符号の説明】
【０１２３】
１０１  画像入力装置、１０２  テーブル入力装置、１０３，１０３Ａ，１０３Ｂ，１０３Ｃ  画像符号化装置、１０４  符号化データ出力装置、１０５  入力画像データバッファ、１０６  領域判定処理部、１０７  丸めテーブルＡバッファ、１０８  変換処理部、１０９  領域データバッファ、１１０  丸めテーブルＢバッファ、１１１  ＤＣＴ係数データバッファ、１１２  処理部、１１３  量子化テーブル作成処理部、１１４  量子化処理部、１１５  量子化テーブルバッファ、１１６  エントロピー符号化処理部、１１７  エントロピー符号化データバッファ、１１８  符号化データ作成処理部、１１９  符号化データバッファ、２０１  領域データ入力装置、３０１  量子化テーブル入力装置、４０１  丸めスケールテーブル入力装置、４０２  丸めスケールテーブルＡバッファ、４０３  丸めスケールテーブルＢバッファ、４０４  スケールテーブルによる丸め処理部。
【図１】
2005198186.tif 000003
【図２】
2005198186.tif 000004
【図３】
2005198186.tif 000005
【図４】
2005198186.tif 000006
【図５】
2005198186.tif 000007
【図６】
2005198186.tif 000008
【図７】
2005198186.tif 000009
【図８】
2005198186.tif 000010
【図９】
2005198186.tif 000011
【図１０】
2005198186.tif 000012
【図１１】
2005198186.tif 000013
【図１２】
2005198186.tif 000014