(57)【特許請求の範囲】
【請求項１】
入力した画像データを処理する画像処理装置であって、
前記入力した画像データを複数のブロックに分割する画像分割手段と、
前記ブロック内に含まれるエッジ要素の数に基づいて、モノクロのエッジ要素の数が所定範囲内のモノクロテキスト，カラーのエッジ要素の数が所定範囲内のカラーテキスト，モノクロかカラーかに拘わらずエッジ要素が多数の複合データ，エッジ要素が少数のイメージデータのうちの少なくとも２つを識別可能に前記ブロック毎に前記入力した画像データの種類を判定する画像種類判定手段と、
前記画像種類判定手段により前記画像データの種類がテキストと判定されたとき、前記検出されたエッジ要素の方向を判定するエッジ方向判定手段と、
前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換する周波数成分変換手段と、
前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮する画像圧縮手段と
を備え、
前記画像圧縮手段は、前記画像種類判定手段により前記画像データの種類がテキストと判定されたときに前記エッジ方向判定手段により判定されたエッジ要素の方向に基づいて前記不要成分を特定する手段である
ことを特徴とする画像処理装置。
【請求項２】
前記画像圧縮手段は、前記判定されたエッジ要素の方向に対応して分布する周波数成分以外の成分を前記不要成分として特定する手段である請求項１記載の画像処理装置。
【請求項３】
前記画像圧縮手段は、前記不要成分のうち成分値が閾値以上の成分に対しては該成分値を小さな値に調整し、前記不要成分のうち成分値が前記閾値未満の成分に対しては該成分値を値０に調整する手段である請求項１または２記載の画像処理装置。
【請求項４】
前記閾値は、前記画像データの色成分の最大値と最小値との差分に基づいて設定される値である請求項３記載の画像処理装置。
【請求項５】
前記エッジ方向判定手段は、パターンマッチングを用いて前記エッジ要素の方向を判定する手段である請求項１ないし４いずれか１項に記載の画像処理装置。
【請求項６】
入力した画像データを処理する画像処理装置であって、
前記入力した画像データを複数のブロックに分割する画像分割手段と、
前記ブロック内に含まれるエッジ要素の数に基づいて、モノクロのエッジ要素の数が所定範囲内のモノクロテキスト，カラーのエッジ要素の数が所定範囲内のカラーテキスト，モノクロかカラーかに拘わらずエッジ要素が多数の複合データ，エッジ要素が少数のイメージデータのうちの少なくとも２つを識別可能に前記ブロック毎に前記入力した画像データの種類を判定する画像種類判定手段と、
前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換する周波数成分変換手段と、
前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮する画像圧縮手段と
を備え、
前記画像圧縮手段は、前記画像データが前記イメージデータと判定されたときには所定周波数以上の高周波領域の成分を前記不要成分として特定し、前記画像データが前記複合データと判定されたときには前記所定周波数よりも高い周波数以上の高周波領域の成分を前記不要成分として特定する手段である
ことを特徴とする画像処理装置。
【請求項７】
請求項１ないし６いずれか１項に記載の画像処理装置であって、
前記画像種類判定手段は、更に全画素が白の空白データを判定する手段であり、
前記画像圧縮手段は、前記入力した画像データが空白データを判定されたときには空白画像を意味する固定データに変換して該画像データを圧縮する手段である
画像処理装置。
【請求項８】
入力した画像データを処理する画像処理装置であって、
前記入力した画像データを複数のブロックに分割する画像分割手段と、
前記ブロック内に含まれるエッジ要素の数に基づいて前記ブロック毎に前記入力した画像データの種類を判定する画像種類判定手段と、
前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換する周波数成分変換手段と、
前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮する画像圧縮手段と
を備え、
前記画像圧縮手段は、前記画像データの各周波数成分のうち前記不要成分を抑制または削除した後に量子化処理と符号化処理とを順に施して該画像データを圧縮する手段である
ことを特徴とする画像処理装置。
【請求項９】
請求項１ないし８いずれか１項に記載の画像処理装置であって、
前記周波数成分変換手段は、離散コサイン変換（ＤＣＴ）を用いて前記入力した画像データの色成分を各周波数成分に変換する手段であり、
前記画像圧縮手段は、前記各周波数成分に変換して得られるＤＣＴ係数を調整することにより前記画像データを圧縮する手段である
画像処理装置。
【請求項１０】
請求項１ないし９いずれか１項に記載の画像処理装置を備え、前記画像圧縮手段により圧縮された画像データを用いてターゲットに画像を形成する画像形成装置。
【請求項１１】
入力した画像を処理する画像処理方法であって、
（ａ）前記入力した画像データを複数のブロックに分割するステップと、
（ｂ）前記ブロック内に含まれるエッジ要素の数に基づいて、モノクロのエッジ要素の数が所定範囲内のモノクロテキスト，カラーのエッジ要素の数が所定範囲内のカラーテキスト，モノクロかカラーかに拘わらずエッジ要素が多数の複合データ，エッジ要素が少数のイメージデータのうちの少なくとも２つを識別可能に前記ブロック毎に前記入力した画像データの種類を判定するステップと、
（ｃ）前記ステップ（ｂ）により前記画像データの種類がテキストと判定されたとき、前記検出されたエッジ要素の方向を判定するステップと、
（ｄ）前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換するステップと、
（ｅ）前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮するステップと
を備え、
前記ステップ（ｅ）は、前記ステップ（ｂ）により前記画像データの種類がテキストと判定されたときに前記ステップ（ｃ）により判定されたエッジ要素の方向に基づいて前記不要成分を特定するステップである
ことを特徴とする画像処理方法。
【請求項１２】
入力した画像データを処理する画像処理方法であって、
（ａ）前記入力した画像データを複数のブロックに分割するステップと、
（ｂ）前記ブロック内に含まれるエッジ要素の数に基づいて、モノクロのエッジ要素の数が所定範囲内のモノクロテキスト，カラーのエッジ要素の数が所定範囲内のカラーテキスト，モノクロかカラーかに拘わらずエッジ要素が多数の複合データ，エッジ要素が少数のイメージデータのうちの少なくとも２つを識別可能に前記ブロック毎に前記入力した画像データの種類を判定するステップと、
（ｃ）前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換するステップと、
（ｄ）前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮するステップと
を備え、
前記ステップ（ｄ）は、前記画像データが前記イメージデータと判定されたときには所定周波数以上の高周波領域の成分を前記不要成分として特定し、前記画像データが前記複合データと判定されたときには前記所定周波数よりも高い周波数以上の高周波領域の成分を前記不要成分として特定するステップである
ことを特徴とする画像処理方法。
【請求項１３】
入力した画像データを処理する画像処理方法であって、
（ａ）前記入力した画像データを複数のブロックに分割するステップと、
（ｂ）前記ブロック内に含まれるエッジ要素の数に基づいて前記ブロック毎に前記入力した画像データの種類を判定するステップと、
（ｃ）前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換するステップと、
（ｄ）前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮するステップと
を備え、
前記ステップ（ｄ）は、前記画像データの各周波数成分のうち前記不要成分を抑制または削除した後に量子化処理と符号化処理とを順に施して該画像データを圧縮するステップである
ことを特徴とする画像処理方法。
【請求項１４】
請求項１１ないし１３いずれか１項に記載の画像処理方法の各ステップをコンピュータで実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を処理する画像処理装置および画像処理装置を備える画像形成装置並びに画像処理方法，画像処理方法の各ステップをコンピュータで実現させるためのプログラムに関する。
【背景技術】
【０００２】
従来、この種の画像処理装置としては、画像データの特徴を識別してその特徴に応じた圧縮形式で画像データを圧縮するものが提案されている（例えば、特許文献１参照）。この装置では、微分フィルタを用いて画像に含まれるエッジ成分をカウントし、エッジカウント数に基づいてテキスト画像か自然画像かを判定し、テキスト画像と判定したときにはＰＮＧ方式やランレングス方式などの可逆圧縮処理を行ない、自然画像と判定したときにはＪＰＥＧ方式の非可逆圧縮を行なうことにより、画質を維持しながらも高い圧縮率を実現しようとしている。
【特許文献１】特開２００４−１９３８１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このように画像データを画質を保持しながら高い圧縮率とすることは画像データを保存するメモリの小容量化や画像データを転送する際の転送の高速化を図る上で極めて重要な課題として考えることができ、処理方法についての更なる改善が望まれている。
【０００４】
本発明の画像処理装置および画像形成装置並びに画像処理方法，プログラムは、入力した画像データの画質を確保しながらデータの圧縮率を高めることを主目的とする。
【課題を解決するための手段】
【０００５】
本発明の画像処理装置および画像形成装置並びに画像処理方法，プログラムは、上述の主目的を達成するために以下の手段を採った。
【０００６】
本発明の画像処理装置は、
入力した画像データを処理する画像処理装置であって、
前記入力した画像データを複数のブロックに分割する画像分割手段と、
前記ブロック内に含まれるエッジ要素の数に基づいて前記ブロック毎に前記入力した画像データの種類を判定する画像種類判定手段と、
前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換する周波数成分変換手段と、
前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮する画像圧縮手段と
を備えることを要旨とする。
【０００７】
この本発明の画像処理装置では、入力した画像データを複数のブロックに分割し、ブロック内に含まれるエッジ要素の数に基づいてブロック毎に入力した画像データの種類を判定し、ブロック毎に入力した画像データの色成分を各周波数成分に変換し、ブロック毎に画像データの種類に基づいて変換された画像データの各周波数成分のうち不要成分を特定すると共に該特性した不要成分を抑制または削除することにより画像データをブロック毎に圧縮する。したがって、画像データの種類に拘わらず画質を保持しながらデータの圧縮率を高めることができる。また、画像データの種類に応じて画像データの各周波数成分のうち不要成分を変更するだけでよいから処理を簡易なものとすることができる。
【０００８】
こうした本発明の画像処理装置において、前記画像種類判定手段は、前記ブロック内に含まれるエッジ要素の数に基づいて、モノクロのエッジ要素の数が所定範囲内のモノクロテキスト，カラーのエッジ要素の数が所定範囲内のカラーテキスト，モノクロかカラーかに拘わらずエッジ要素が多数の複合データ，エッジ要素が少数のイメージデータのうちの少なくとも２つを識別可能に前記画像データの種類を判定する手段であるものとすることもできる。
【０００９】
テキストを識別可能に画像データの種類を判定する態様の本発明の画像処理装置において、前記画像種類判定手段により前記画像データの種類がテキストと判定されたとき、前記検出されたエッジ要素の方向を判定するエッジ方向判定手段を備え、前記画像圧縮手段は、前記判定されたエッジ要素の方向に基づいて前記不要成分を特定する手段であるものとすることもできる。こうすれば、テキストの画質を保持しながら圧縮率をさらに高めることができる。ここで、「エッジ方向判定手段」は、パターンマッチングを用いて前記エッジ要素の方向を判定する手段が含まれる。この態様の本発明の画像処理装置において、前記画像圧縮手段は、前記判定されたエッジ要素の方向に対応して分布する周波数成分以外の成分を前記不要成分として特定する手段であるものとすることもできる。また、これらの態様の本発明の画像処理装置において、前記画像圧縮手段は、前記不要成分のうち成分値が閾値以上の成分に対しては該成分値を小さな値に調整し、前記不要成分のうち成分値が前記閾値未満の成分に対しては該成分値を値０に調整する手段であるものとすることもできる。こうすれば、テキストの画質をさらに良好なものとすることができる。この場合、前記閾値は、前記画像データの色成分の最大値と最小値との差分に基づいて設定される値であるものとすることもできる。これは、画像データの色成分の変化が周波数成分の大きさに相関があると考えられることに基づいている。
【００１０】
イメージデータと複合データとを識別可能に画像データの種類を判定する態様の本発明の画像処理装置において、前記画像圧縮手段は、前記画像データが前記イメージデータと判定されたときには所定周波数以上の高周波領域の成分を前記不要成分として特定し、前記画像データが前記複合データと判定されたときには前記所定周波数よりも高い周波数以上の高周波領域の成分を前記不要成分として特定する手段であるものとすることもできる。こうすれば、エッジ要素が少数のイメージデータの圧縮率を高めることができると共にエッジ要素が多数の複合データについても画質をある程度保持しながら圧縮率を高めることができる。
【００１１】
また、本発明の画像処理装置において、前記画像種類判定手段は、更に全画素が白の空白データを判定する手段であり、前記画像圧縮手段は、前記入力した画像データが空白データを判定されたときには空白画像を意味する固定データに変換して該画像データを圧縮する手段であるものとすることもできる。こうすれば、画像データの圧縮率をさらに高めることができる。
【００１２】
さらに、本発明の画像処理装置において、前記画像圧縮手段は、前記画像データの各周波数成分のうち前記不要成分を抑制または削除した後に量子化処理と符号化処理とを順に施して該画像データを圧縮する手段であるものとすることもできる。
【００１３】
また、本発明の画像処理装置において、前記周波数成分変換手段は、離散コサイン変換（ＤＣＴ）を用いて前記入力した画像データの色成分を各周波数成分に変換する手段であり、前記画像圧縮手段は、前記各周波数成分に変換して得られるＤＣＴ係数を調整することにより前記画像データを圧縮する手段であるものとすることもできる。こうすれば、簡易な処理により画像データを圧縮することができる。
【００１４】
本発明の画像形成装置は、
上述した各態様のいずれかの本発明の画像処理装置を備え、前記画像圧縮手段により圧縮された画像データを用いてターゲットに画像を形成する
ことを要旨とする。
【００１５】
この本発明の画像形成装置では、上述した各態様のいずれかの本発明の画像処理装置を備えるから、本発明の画像処理装置が奏する効果と同様の効果、例えば、画像データの種類に拘わらず画質を保持しながらデータの圧縮率を高めることができる効果や画像データの種類に応じて画像データの各周波数成分のうち不要成分を変更するだけでよいから処理を簡易なものとすることができる効果などを奏することができる。
【００１６】
本発明の画像処理方法は、
入力した画像を処理する画像処理方法であって、
（ａ）前記入力した画像データを複数のブロックに分割し、
（ｂ）前記ブロック内に含まれるエッジ要素の数に基づいて前記ブロック毎に前記入力した画像データの種類を判定し、
（ｃ）前記ブロック毎に前記入力した画像データの色成分を各周波数成分に変換し、
（ｄ）前記ブロック毎に前記判定された画像データの種類に基づいて前記変換された画像データの各周波数成分のうち不要成分を特定すると共に該特定した不要成分を抑制または削除することにより該画像データを圧縮する
ことを要旨とする。
【００１７】
この本発明の画像処理方法によれば、入力した画像データを複数のブロックに分割し、ブロック内に含まれるエッジ要素の数に基づいてブロック毎に入力した画像データの種類を判定し、ブロック毎に入力した画像データの色成分を各周波数成分に変換し、ブロック毎に画像データの種類に基づいて変換された画像データの各周波数成分のうち不要成分を特定すると共に該特性した不要成分を抑制または削除することにより画像データをブロック毎に圧縮する。したがって、画像データの種類に拘わらず画質を保持しながらデータの圧縮率を高めることができる。また、画像データの種類に応じて画像データの各周波数成分のうち不要成分を変更するだけでよいから処理を簡易なものとすることができる。
【００１８】
本発明のプログラムは、上述した画像処理方法の各ステップを１又は複数のコンピュータに実現させるためのものである。このプログラムは、コンピュータが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピュータから別のコンピュータへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを一つのコンピュータに実行させるか又は複数のコンピュータに各ステップを分担して実行させれば、上述した画像処理方法の各ステップが実行されるため、該制御方法と同様の作用効果が得られる。
【発明を実施するための最良の形態】
【００１９】
次に、本発明の実施の形態を図面に基づいて説明する。図１はマルチファンクションプリンタ１０の構成の概略を示す構成図であり、図２はマルチファンクションプリンタ１０のブロック図である。
【００２０】
本実施形態のマルチファンクションプリンタ１０は、図示するように、印刷ジョブに基づいて用紙Ｓへの印刷を実行するプリンタユニット２０と、原稿台３１に載置された原稿Ｐを読み取るフラットベット式のスキャナユニット３０と、メモリカードスロット４０に挿入されたメモリカード４２とのデータの入出力を司るメモリカードコントローラ４４と、各種情報を表示部５２に表示したりユーザの指示をボタン類５４の操作を介して入力したりする操作パネル５０と、装置全体の制御を司るメインコントローラ６０とを備える。このマルチファンクションプリンタ１０は、プリンタユニット２０やスキャナユニット３０，メモリカードコントローラ４４，メインコントローラ６０がバス１２を介して各種制御信号やデータのやり取りができるよう構成されている。
【００２１】
プリンタユニット２０は、プリンタＡＳＩＣ２２とプリンタエンジン２４とを備える。プリンタＡＳＩＣ２２は、プリンタエンジン２４を制御する集積回路であり、メインコントローラ６０から印刷指令を受けると、その印刷指令の対象となる画像ファイルに基づいて用紙Ｓに印刷するようプリンタエンジン２４を制御する。また、プリンタエンジン２４は、印刷ヘッドから用紙へインクを吐出することにより印刷を行う周知のインクジェット方式のカラープリンタ機構として構成されている。なお、ＡＳＩＣは、Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略である。
【００２２】
スキャナユニット３０は、スキャナＡＳＩＣ３２とスキャナエンジン３４とを備える。スキャナＡＳＩＣ３２は、スキャナエンジン３４を制御する集積回路であり、メインコントローラ６０からのスキャン指令を受けると、原稿台３１に載置された原稿Ｐを画像データとして読み取るようスキャナエンジン３４を制御する。また、スキャナエンジン３４は、周知のイメージスキャナとして構成され、原稿Ｐに向かって発光したあとの反射光をレッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の各色に分解してスキャンデータとする周知のカラーイメージセンサを備えている。カラーイメージセンサとしては、本実施形態では、ＣＩＳ（Contact Image Sensor）方式のセンサを用いるものとした。
【００２３】
メモリカードコントローラ４４は、操作パネル５０の横に配置されたメモリカードスロット４０に挿入されたメモリカード４２との間でデータの入出力を行うものである。このメモリカードコントローラ４４は、メモリカードスロット４０にメモリカード４２が接続されているとき、メモリカード４２に保存されているファイルを読み出してメインコントローラ６０に送信したりメインコントローラ６０からの命令を入力し該命令に基づいてメモリカード４２にデータを書き込んだりする。
【００２４】
操作パネル５０は、表示部５２とボタン類５４とを備える。表示部５２は、液晶ディスプレイであり、メニューの選択や設定を行なう各種操作画面などが表示される。また、ボタン類５４は、電源をオンオフするための電源ボタン５４ａや印刷やコピーの開始を指示するスタートボタン５４ｂ，各種印刷設定やコピー設定を行なうための設定ボタン５４ｃ，選択された画像に対する印刷枚数やコピー枚数を設定するための枚数設定ボタン５４ｄ，各種モードを選択するモード選択ボタン５４ｅ，各種項目や設定を選択するための上下左右の矢印キー５４ｆ，選択した設定を有効にするためのＯＫボタン５４ｇ，ひとつ前の画面に戻る戻るボタン５４ｈなどがあり、内部通信インタフェース６９を介してメインコントローラ６０にユーザの指示を入力できるようになっている。ここで、モード選択ボタン５４ｅにより選択可能なモードとしては、原稿台３１にセットした原稿Ｐをスキャンしてコピーするコピーモードやメモリカード４２に記憶された画像を用いて印刷したり原稿Ｐをスキャンしてデータ化してメモリカード４２に保存するメモリカードモード，写真フィルムをスキャンして印刷したりデータをメモリカード４２に保存したりするフィルムモード，ＣＤ／ＤＶＤ内の画像を印刷するＣＤ／ＤＶＤドライブモードなどがある。
【００２５】
メインコントローラ６０は、ＣＰＵ６２を中心とするマイクロプロセッサとして構成されており、各種処理プログラムや各種データ、各種テーブルなどを記憶したＲＯＭ６４と、一時的にスキャンデータや印刷データを記憶するＲＡＭ６６と、電気的に書き換え可能で電源を切ってもデータは保持されるフラッシュメモリ６８と、操作パネル５０との通信を可能とする内部通信インタフェース６９とを備え、これらはバス１２を介して互いに信号のやり取りが可能なように接続されている。メインコントローラ６０は、プリンタユニット２０やスキャナユニット３０，メモリカードコントローラ４４からの各種動作信号や各種検出信号を入力したり、操作パネル５０のボタン類５４の操作に応じて発生する操作信号を入力したりする。また、メモリカード４２から画像ファイルを読み出してメインコントローラ６０へ出力する指令をメモリカードコントローラ４４に出力したり、画像データの印刷を実行するようプリンタユニット２０に指令を出力したり、操作パネル５０のボタン類５４のスキャン指令に基づいて原稿台３１に載置された原稿を画像データとして読み取るようスキャナユニット３０に指令を出力したり、操作パネル５０に表示部５２の制御指令を出力したりする。
【００２６】
次に、こうして構成された本実施形態のマルチファンクションプリンタ１０の動作、特に、コピーモードが選択された際の動作について説明する。図３は、メインコントローラ６０により実行されるコピーモード時処理ルーチンの一例を示すフローチャートである。この処理は、モード選択ボタン５４ｅによりコピーモードが選択されると共に原稿台３１に原稿Ｐがセットされた状態でＯＫボタン５４ｇが押下されたときに実行される。なお、モード選択ボタン５４ｅによりコピーモードが選択されると、メインコントローラ６０は、表示部５２に「原稿台に原稿をセットしてＯＫボタンを押して下さい。」などのメッセージを表示する。
【００２７】
コピーモード時処理ルーチンが実行されると、メインコントローラ６０のＣＰＵ６２は、まず、スキャナユニット３０にスキャン指令を出力することにより原稿台３１にセットされた原稿Ｐをライン単位で走査して読み取ると共に（ステップＳ１００）、読み取って得られる画像データ（ＲＧＢデータ）をブロック単位に分割する（ステップＳ１０２）。実施例では、１ブロックが８×８の画素により構成されるよう分割するものとした。
【００２８】
続いて、分割した複数のブロックのうち未処理のブロックを対象ブロックに設定し（ステップＳ１０４）、設定した対象ブロックの種類を判定するためのオブジェクト判定を行なう（ステップＳ１０６）。この判定は、図４に例示するオブジェクト判定処理を実行することにより行なわれる。ここで、コピーモード時処理ルーチンについての説明を中断し、図４のオブジェクト判定処理について説明する。
【００２９】
図４のオブジェクト判定処理では、まず、画像データのＲＧＢの画素値に基づいてブロック内の全画素が白か否かを判定し（ステップＳ１４０）、ブロック内の全画素が白と判定されたときには空白ブロックと判定して（ステップＳ１４２）、本ルーチンを終了する。ブロック内の全画素が白でないと判定されたときには、ブロック内の画像データの表色系をＲＧＢから輝度信号（Ｙ），輝度信号と青成分との差（Ｕ），輝度信号と赤成分との差（Ｖ）との組み合わせからなるＹＵＶに変換し（ステップＳ１４４）、ＹＵＶ成分の各成分毎にフィルタを適用してブロック内のエッジを検出する（ステップＳ１４６）。このフィルタの一例を図５に示す。エッジ検出は、図示するように、Laplacianフィルタなどの２次微分系のフィルタを用いて、注目画素を中心とした上下左右の９つの画素値に対してフィルタ係数をそれぞれ乗算し、結果を合計したものと閾値とを比較することにより行なわれる。なお、適用するフィルタは上述した２次微分系のフィルタに限られず、SobelフィルタやPrewittフィルタなどの１次微分系のフィルタを用いるものとしてもよいことは勿論である。続いて、検出されたエッジの個数をカウントしてモノクロエッジ数Ｅｍとカラーエッジ数Ｅｃとを算出する（ステップＳ１４８）。ここで、モノクロエッジ数Ｅｍは、ブロック内のＹ成分のエッジ数として算出され、カラーエッジ数Ｅｃは、ブロック内のＵ成分のエッジ数とＶ成分のエッジ数との和として算出される。そして、モノクロエッジ数Ｅｍとカラーエッジ数Ｅｃとの和と閾値Ｂｄとを比較し（ステップＳ１５０）、モノクロエッジ数Ｅｍとカラーエッジ数Ｅｃとの和が閾値Ｂｄ以上のときには、カラーエッジかカラーエッジかに拘わらずブロック内の大半がエッジ要素により構成される線画などの複合データと判定して（ステップＳ１５２）、本ルーチンを終了する。ここで、閾値Ｂｄは、上述した複合データを判定するための閾値であり、例えば、８×８の１ブロックに対して６０個や６２個などのように予め定められている。モノクロエッジ数Ｅｍとカラーエッジ数Ｅｃとの和が閾値Ｂｄ未満と判定されると、複合データでないと判断し、カラーエッジ数Ｅｃが閾値Ｂｃ以上か否か（ステップＳ１５４）、カラーエッジ数Ｅｃがモノクロエッジ数Ｅｍに優先係数Ｐｍを乗じたもの以上か否か（ステップＳ１５６）をそれぞれ判定する。ここで、閾値Ｂｃは、ブロック内にカラーテキストが含まれるか否かを判定するための閾値であり、例えば１ブロックに対して１個や２個などのように定められている。また、優先係数Ｐｍは、ブロック内にカラーテキストとモノクロテキストとが混在している場合にカラーテキストよりもモノクロテキストを優先して判定するための優先係数であり、例えば値３や値４などのように定められている。カラーエッジ数Ｅｃが閾値Ｂｃ以上であり且つカラーエッジ数Ｅｃがモノクロエッジ数Ｅｍに優先係数Ｐｍを乗じたもの以上のときには、ブロック内の画像データはカラーテキストと判定して（ステップＳ１５８）、本ルーチンを終了し、カラーエッジ数Ｅｃが閾値Ｂｃ以上であってもカラーエッジ数Ｅｃがモノクロエッジ数Ｅｍに優先係数Ｐｍを乗じたもの未満と判定されたときにはブロック内の画像データはモノ���ロテキストと判定して（ステップＳ１６２）、本ルーチンを終了する。カラーエッジ数Ｅｃが閾値Ｂｃ未満と判定されたときには、モノクロエッジ数Ｅｍと閾値Ｂｍとを比較し（ステップＳ１６０）、モノクロエッジ数Ｅｍが閾値Ｂｍ以上のときにはブロック内の画像データはモノクロテキストと判定し（ステップＳ１６２）、モノクロエッジ数Ｅｍが閾値Ｂｍ未満のときにはブロック内にはカラーエッジ要素もモノクロエッジ要素も少ないためブロック内の画像データは写真などのイメージデータと判定して（ステップＳ１６４）、本ルーチンを終了する。ここで、閾値Ｂｍは、ブロック内にモノクロテキストが含まれるか否かを判定するための閾値であり、例えば値９や値１０などのように定められている。上述した閾値Ｂｄ，Ｂｃ，Ｂｍや優先係数Ｐｍは、具体的には、スキャナユニット３０のイメージセンサの方式に基づいて決定されている。例えば、ＣＩＳ（Contact Image Sensor）方式ではＣＣＤ（Charge Coupled Devices）方式に比してエッジが検出され易い傾向があるため閾値Ｂｄ，Ｂｃ，ＢｍがＣＣＤ方式に比して大きな値に定められ、また、ＣＩＳ方式ではＣＣＤ方式に比してカラーエッジが強くなる傾向もあるため係数ＰｍもＣＣＤ方式に比して大きな値に定められる。以上、オブジェクト判定処理について説明した。
【００３０】
コピーモード時処理ルーチンのステップＳ１０６に戻って、こうしてブロック内の画像データの種類が判定されると、この判定結果に基づいて（ステップＳ１０８）、対象ブロック内の画像データが空白のときには空白用圧縮処理を実行し（ステップＳ１１０）、対象ブロック内の画像データが複合データのときには複合データ用圧縮処理を実行し（ステップＳ１１２）、対象ブロック内の画像データがテキストデータのときにはテキスト用圧縮処理を実行し（ステップＳ１１４）、対象ブロック内の画像データがイメージデータのときにはイメージ用圧縮処理を実行する（ステップＳ１１６）。ここで、空白用圧縮処理は、図示しない空白用圧縮処理ルーチンを実行することにより行なわれ、具体的には、ブロック内のＹＵＶ成分の成分値を空白を意味する固定データに置き換えることにより行なうことができる。なお、圧縮された空白データはＲＡＭ６６に保存される（ステップＳ１２２）。また、複合データ用圧縮処理は、複合データ用圧縮処理ルーチンを実行することにより行なわれ、テキスト用圧縮処理は、テキスト用圧縮処理ルーチンを実行することにより行なわれ、イメージ用圧縮処理は、イメージ用圧縮処理ルーチンを実行することにより行なわれる。説明の都合上、まず、イメージ用圧縮処理ルーチンと複合データ用圧縮処理ルーチンについて説明し、その後、テキスト用圧縮処理ルーチンについて説明する。図６は、メインコントローラ６０により実行されるイメージ用圧縮処理ルーチンの一例を示すフローチャートであり、図７は、メインコントローラ６０により実行される複合データ用圧縮処理ルーチンの一例を示すフローチャートである。
【００３１】
図６のイメージ用圧縮処理ルーチンでは、まず、離散コサイン変換（ＤＣＴ）を用いて対象ブロック内の画像データのＹＵＶ成分の成分値をＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］（１ブロックは８×８の画素からなるためｘ，ｙは０〜７のインデックス値）に変換する（ステップＳ２００）。ここで、ＤＣＴは、本実施形態では、１ブロックが８×８の画素からなるから、ＤＣＴにより低周波から高周波までの計６４個の各周波数成分の発生頻度をエネルギー量として示すデータに変換する処理となる。そして、ＤＣＴ係数を調整するための調整係数としてイメージ用調整係数Ｉａｄｊ［ｘ］［ｙ］を設定し（ステップＳ２０２）、すべてのインデックス値ｘ、ｙの組み合わせに対してＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］にイメージ用調整係数Ｉａｄｊ［ｘ］［ｙ］を乗じたものを新たなＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］に設定して（ステップＳ２０４）、本ルーチンを終了する。イメージ用調整係数の一例を図８に示す。イメージ用調整係数は、図示するように、各周波数成分毎に値１か値０かのいずれかの値が設定されており、値１が設定されている周波数成分のＤＣＴ係数はそのまま維持され、値０が設定されている周波数成分のＤＣＴ係数については不要成分としてカットされる。本実施形態では、イメージ用調整係数は、写真などのイメージは隣接する画素間の色変化の度合いが小さく高周波成分を除去しても画質に与える影響は少ないと考えられることから、高周波成分のＤＣＴ係数が大幅にカットされるよう定めるものとした。
【００３２】
図７の複合データ用圧縮処理ルーチンでは、上述した離散コサイン変換を用いて画像データのＹＵＶ成分の成分値をＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］に変換すると共に（ステップＳ３００）、このＤＣＴ係数を調整するための調整係数として複合データ用調整係数Ｃａｄｊ［ｘ］［ｙ］を設定し（ステップＳ３０２）、すべてのインデックス値ｘ、ｙの組み合わせに対してＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］に複合データ用調整係数Ｃａｄｊ［ｘ］［ｙ］を乗じたものを新たなＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］に設定して（ステップＳ３０４）、本ルーチンを終了する。複合データ用調整係数の一例を図９に示す。複合データ用調整係数は、図示するように、各周波数成分毎に値１か値０かのいずれかの値が設定されており、値１が設定されている周波数成分のＤＣＴ係数はそのまま維持され、値０が設定されている周波数成分のＤＣＴ係数については不要成分としてカットされる。複合データは、上述したように、ブロック内の大半がエッジ要素により構成されるため、複合データの細かな線の画質を確保するためにはすべての高周波成分を残すことが望ましいが、高周波成分を残すほどデータ量は増大する。そこで、上述したイメージ用圧縮処理ルーチンに比して高周波成分を残すものの所定値以上の高周波成分を一律にカットすることによりデータ量が大きくなり過ぎないようにしている。
【００３３】
次に、テキスト用圧縮処理ルーチンについて説明する。図１０は、メインコントローラ６０により実行されるテキスト用圧縮処理ルーチンの一例を示すフローチャートである。このテキスト用圧縮処理ルーチンでは、まず、ブロック内のＹＵＶ成分の成分値の変化幅Ｈを算出すると共に（ステップＳ４００）、上述した離散コサイン変換を用いてブロック内の画像データのＹＵＶ成分の成分値をＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］に変換する（ステップＳ４０２）。ここで、変化幅Ｈは、ＹＵＶ成分の成分値の最大値と最小値との差分により算出されたものを用いることができる。続いて、ブロック内の画像データがモノクロテキストか否かを判定し（ステップＳ４０４）、モノクロテキストと判定されたときには画像データのＹＵＶ成分のうちＹ成分のみを後述するステップＳ４１２〜Ｓ４１６の処理対象として設定すると共に（ステップＳ４０６）、ＵＶ成分についてはＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］を値０に設定すなわちすべての周波数成分をカットし（ステップＳ４０８）、モノクロテキストでない即ちカラーテキストと判定されたときには画像データのＹＵＶ成分のすべてをステップＳ４１２〜Ｓ４１６の処理対象として設定する（ステップＳ４１０）。なお、本実施形態では、モノクロテキストと判定されたときにはＵＶ成分についてはすべての周波数成分をカットするものとしたが、一部の低周波数成分はカットしないで保持するものとしてもよい。そして、変換したＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］について重要周波数成分Ｍａｐ［ｘ］［ｙ］を選定する（ステップＳ４１２）。ここで、重要周波数成分の選定は、図１１に例示する重要周波数成分選定処理ルーチンを実行することにより行なわれる。ここで、テキスト用圧縮処理ルーチンの説明を中断して重要周波数成分選定処理ルーチンについて説明する。
【００３４】
図１１の重要周波数成分選定処理ルーチンでは、まず、インデックス値ｙを値０に設定すると共に（ステップＳ４２０）、インデックス値ｘを値０に設定する（ステップＳ４２２）。そして、インデックス値ｘ，ｙにおけるＤＣＴ係数の絶対値ａｂｓ（Ｃｏｆ［ｘ］［ｙ］）と係数Ｅｓに変化幅Ｈを乗じたもの（Ｅｓ×Ｈ）とを比較し（ステップＳ４２４）、ＤＣＴ係数の絶対値ａｂｓ（Ｃｏｆ［ｘ］［ｙ］）が係数Ｅｓに変化幅Ｈを乗じたものよりも大きいときには重要周波数成分と判断して重要周波数成分Ｍａｐ［ｘ］［ｙ］に値１を設定し（ステップＳ４２６）、ＤＣＴ係数の絶対値ａｂｓ（Ｃｏｆ［ｘ］［ｙ］）が係数Ｅｓに変化幅Ｈを乗じたもの以下のときには重要周波数成分でないと判断して重要周波数成分Ｍａｐ［ｘ］［ｙ］に値０を設定する（ステップＳ４２８）。ここで、係数Ｅｓは、重要周波数成分か否かを分別するための係数であり、例えば値１．０や値１．２などのように定められている。また、ＹＵＶ成分の変化幅Ｈを用いて重要周波数成分を判定するのは、変化幅ＨがＹＵＶ成分を周波数成分に変換したときの周波数の振幅に相関があると認められることに基づく。そして、インデックス値ｘを値１だけインクリメントし（ステップＳ４３０）、インデックス値ｘが値８未満となるまでステップＳ４２４に戻ってステップＳ４２４〜Ｓ４３０の処理を繰り返し（ステップＳ４３２）、インデックス値ｘが値８以上となると、インデックス値ｙを値１だけインクリメントし（ステップＳ４３４）、インデックス値ｙが値８以上となるまでステップＳ４２２に戻ってステップＳ４２２〜Ｓ４３４の処理を繰り返して（ステップＳ４３６）、本ルーチンを終了する。
【００３５】
テキスト用圧縮処理ルーチンのステップＳ４０８に戻って、重要周波数成分Ｍａｐ［ｘ］［ｙ］を選定すると、この選定された重要周波数成分Ｍａｐ［ｘ］［ｙ］と対象パターンとを比較することによりパターンマッチングを行なってパターンマッチ周波数成分Ｍａｔｒｉｘ［ｘ］［ｙ］を設定する（ステップＳ４１４）。パターンマッチング処理は、図１２に例示するパターンマッチング処理ルーチンを実行することにより行なわれる。図１２のパターンマッチング処理ルーチンでは、すべてのインデックス値ｘ、ｙについてパターンマッチ周波数成分Ｍａｔｒｉｘ［ｘ］［ｙ］に値０を設定して初期化し（ステップＳ４４０）、パターン番号Ｎを値１に設定し（ステップＳ４４２）、設定したパターン番号ＮのパターンＰａｔｔｅｒｎ（Ｎ）［ｘ］［ｙ］を対象パターンに設定する（ステップＳ４４４）。パターンマッチングに用いられるパターンの一例を図１３に示し、パターンの周波数分布と元画像の色変化の方向との関係の一例を図１４に示す。図示するように、パターン毎に周波数分布が異なる１から１１の計１１個のパターンが用意されており、各パターンは元画像の色変化の方向に対応するものとなっている。したがって、画像の周波数分布を調べることによりテキストのエッジが構成される方向を知ることができる。続いて、カウンタＣに値０を設定し（ステップＳ４４６）、インデックス値ｙに値０を設定すると共に（ステップＳ４４８）、インデックス値ｘに値０を設定し（ステップＳ４５０）、インデックス値ｘ，ｙについて重要周波数成分Ｍａｐ［ｘ］［ｙ］が値１で且つパターンＰａｔｔｅｒｎ（Ｎ）［ｘ］［ｙ］が値１であるかを判定することによりパターンマッチングを行なう（ステップＳ４５２）。重要周波数成分Ｍａｐ［ｘ］［ｙ］が値１で且つパターンＰａｔｔｅｒｎ（Ｎ）［ｘ］［ｙ］が値１のときには、重要周波数成分は対象パターンの周波数分布の範囲内に含まれると判断し、対象パターンマッチ周波数成分Ｍａｔｃｈ［ｘ］［ｙ］に値１を設定すると共に（ステップＳ４５４）、カウンタＣを値１だけインクリメントし（ステップＳ４５６）、重要周波数成分Ｍａｐ［ｘ］［ｙ］が値０であったりパターンＰａｔｔｅｒｎ（Ｎ）［ｘ］［ｙ］が値０のときには、重要周波数成分は対象パターンの周波数分布の範囲内に含まれないと判断し、対象パターンマッチ周波数成分Ｍａｔｃｈ［ｘ］［ｙ］に値０を設定する（ステップＳ４５８）。そして、インデックス値ｘを値１だけインクリメントして（ステップＳ４６０）、インデックス値ｘが値８未満となるまでステップＳ４５２に戻ってステップＳ４５２〜Ｓ４６４の処理を繰り返し（ステップＳ４６２）、インデックス値ｘが値８以上となると、インデックス値ｙを値１だけインクリメントし（ステップＳ４６４）、インデックス値ｙが値８以上となるまでステップＳ４５０に戻ってステップＳ４５０〜Ｓ４６４の処理を繰り返す（ステップＳ４６６）。その後、パターン番号Ｎに基づいてマッチング判定用閾値Ｃｒｅｆを設定し（ステップＳ４６８）、カウンタＣの値がマッチング判定用閾値Ｃｒｅｆ以上か否かを判定する（ステップＳ４７０）。マッチング判定用閾値Ｃｒｅｆは、重要周波数成分の分布と対象パターンとがマッチしているか否かを判定するための判定用閾値であり、本実施形態では、パターン番号Ｎとマッチング判定用閾値Ｃｒｅｆとの関係を予め定めてマップとしてＲＯＭ６４に記憶しておき、パターン番号Ｎが与えられると記憶したマップから対応するマッチング判定用閾値Ｃｒｅｆを導出して設定するものとした。このマップの一例を図１５に示す。マッチング判定用閾値Ｃｒｅｆを設定すると、カウンタＣの値とマッチング判定用閾値Ｃｒｅｆとを比較し（ステップＳ４７０）、カウンタＣの値がマッチング判定用閾値Ｃｒｅｆよりも大きいときには、重要周波数成分の分布は対象パターンにマッチすると判断し、対象パターンマッチ周波数成分Ｍａｔｃｈ［ｘ］［ｙ］が値１のすべてのインデックス値ｘ，ｙについてパターンマッチ周波数成分Ｍａｔｒｉｘ［ｘ］［ｙ］に値１を設定し（ステップＳ４７２）、カウンタＣの値がマッチング判定用閾値Ｃｒｅｆ以下のときには、重要周波数成分の分布は対象パターンにマッチしないと判断し、何もせずに次の処理に進む。そして、パターン番号Ｎを値１だけインクリメントして（ステップＳ４７４）、パターン番号Ｎが用意したパターンのうち最後の番号α（本実施形態では１１）を超えるまで（ステップＳ４７６）、ステップ４４４に戻って値１だけインクリメントしたパターン番号Ｎのパターンを対象パターンに設定してステップＳ４４６〜Ｓ４７４の処理を繰り返し実行し、パターン番号Ｎが番号αを超えるとこれで本ルーチンを終了する。なお、ステップＳ４４４〜４７６の処理から解るように、重要周波数成分が複数の対象パターンにマッチするときには、マッチするすべての対象パターンの分布がパターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］に反映されることになる。勿論、カウンタＣの値に基づいて対象パターンのうち重要周波数成分が最も多く分布する一つのパターンを判定し、この判定したパターンの対象パターンマッチ周波数Ｍａｔｃｈ［ｘ］［ｙ］をそのままパターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］として設定するものとしても構わない。
【００３６】
こうしてパターンマッチングを行なってパターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］を設定すると、パターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］の値に基づいてＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］を調整して（ステップＳ４１６）、本ルーチンを終了する。ＤＣＴ係数の調整は、図１６に例示するＤＣＴ係数調整処理ルーチンを実行することにより行なわれる。ＤＣＴ係数調整処理ルーチンでは、まず、インデックス値ｙに値０を設定すると共に（ステップＳ４８０）、インデックス値ｘに値０を設定し（ステップＳ４８２）、インデックス値ｘ，ｙについてパターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］が値１であるか否かを判定し（ステップＳ４８４）、パターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］が値１のときにはそのインデックス値ｘ，ｙにおけるＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］をそのまま維持して次の処理に進み、パターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］が値０のときにはＤＣＴ係数の絶対値ａｂｓ（Ｃｏｆ［ｘ］［ｙ］）と上述した変化幅Ｈに係数Ｅｓを乗じたものとを比較し（ステップＳ４８６）、ＤＣＴ係数の絶対値ａｂｓ（Ｃｏｆ［ｘ］［ｙ］）が変化幅Ｈに係数Ｅｓを乗じたものよりも大きいときにはその周波数成分は基本的には不要成分であるものの画像の画質を決定する上である程度の影響を与える周波数成分と判断し、インデックス値ｘ，ｙにおけるＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］に係数Ｅｒを乗じることにより周波数成分を低減して新たなＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］を設定し（ステップＳ４８８）、ＤＣＴ係数の絶対値ａｂｓ（Ｃｏｆ［ｘ］［ｙ］）が変化幅Ｈに係数Ｅｓを乗じたもの以下のときにはその周波数成分は不要成分と判断して、インデックス値ｘ，ｙにおけるＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］に値０を設定する（ステップＳ４９０）。ここで、係数Ｅｒは、周波数成分を低減するための係数であり、例えば値０．８や値０．７などのように定められる。そして、インデックス値ｘを値１だけインクリメントして（ステップＳ４９２）、インデックス値ｘが値８未満となるまでステップＳ４８４に戻ってステップＳ４８４〜Ｓ４９２の処理を繰り返し（ステップＳ４９４）、インデックス値ｘが値８以上となると、インデックス値ｙを値１だけインクリメントし（ステップＳ４９６）、インデックス値ｙが値８以上となるまでステップＳ４８２に戻ってステップＳ４８２〜Ｓ４９６の処理を繰り返して（ステップＳ４９８）、本ルーチンを終了する。パターンマッチ周波数Ｍａｔｒｉｘ［ｘ］［ｙ］を用いた調整前後のＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］の一例を図１７に示す。図示するように、ＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］は、パターンマッチする周波数分布の範囲内にある成分については保持され、その範囲外にある成分については効果的にカットされていることが解る。以上、テキスト用圧縮処理ルーチンについて説明した。
【００３７】
コピーモード時処理ルーチンに戻って、こうして画像データの種類に応じてＤＣＴ係数を調整すると、量子化処理を行なうと共に（ステップＳ１１８）、ハフマン符号化などのエントロピー符号化処理を行なって（ステップＳ１２０）、得られた符号化データをＲＡＭ６６に保存する（ステップＳ１２２）。ここで、量子化処理に用いる量子化テーブルとしては、本実施形態では、画像データの圧縮をＤＣＴ係数を調整することにより行なっているから、各周波数成分が大幅にカットされないように作成するものとした。そして、次の未処理ブロックが存在するか否かを判定し（ステップＳ１２４）、次の未処理ブロックが存在するときにはステップＳ１０４に戻ってステップＳ１０４〜Ｓ１２２の処理を繰り返し、次の未処理ブロックが存在しないときには次に走査すべきラインが存在するか否かを判定し（ステップＳ１２６）、次のラインが存在するときにはステップＳ１００に戻ってステップＳ１００〜Ｓ１２４の処理を繰り返し、次のラインが存在しないときには、ＲＡＭ６６に記憶した符号化データをバンド単位で展開して画像データを生成すると共に（ステップＳ１２８）、プリンタユニット２０にプリント指令を出力することにより生成された画像データに基づいて印刷処理を実行して（ステップＳ１３０）、本ルーチンを終了する。なお、符号化データの展開は、画像データを符号化データに変換する手順と逆の手順、即ち、エントロピー復号化処理，逆量子化処理，逆離散コサイン変換をこの順で実行するものとすればよい。
【００３８】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態の図３のコピーモード時処理ルーチンのステップＳ１０２の処理を実行するメインコントローラ６０が本発明の画像分割手段に相当し、コピーモード時処理ルーチンのステップＳ１０６の処理（図４のオブジェクト判定処理ルーチン）を実行するメインコントローラ６０が画像種類判定手段に相当し、図６のイメージ用圧縮処理ルーチンのステップＳ２００や図７の複合データ用圧縮処理ルーチンのステップＳ３００，図１０に例示するテキスト用圧縮処理のステップＳ４１０を実行するメインコントローラ６０が周波数成分変換手段に相当し、コピーモード時処理ルーチンのステップＳ１１０〜Ｓ１２０の処理を実行するメインコントローラ６０が画像圧縮手段に相当する。なお、本実施形態では、マルチファンクションプリンタ１０の動作を説明することにより本発明の画像処理方法の一例も明らかにしている。
【００３９】
以上説明した本実施形態のマルチファンクションプリンタ１０によれば、画像データを複数のブロックに分割してブロック毎に画像データを複合データとカラーテキストとモノクロテキストとイメージとを識別可能に判定し、判定した画像データの種類に基づいて画像データの色成分を周波数成分に変換して得られるＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］のうち不要成分を変更して除去するから、画像データの種類に拘わらず良好な画質を保持しながら圧縮率を高めることができる。この結果、ＲＡＭ６４の容量を小さくすることができる。また、画像データの種類に応じてＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］を調整するだけでよいから、処理を簡易なものとすることができる。
【００４０】
また、本実施形態のマルチファンクションプリンタ１０によれば、画像データがテキストデータと判定されたときには、テキストのエッジの方向を判定して、そのエッジの方向に分布する周波数成分を残すと共に他の成分を不要成分として除去するから、テキストの画質を保持しながら圧縮率を高めることができる。しかも、パターンマッチングを用いてエッジの方向を判定するから、簡易な処理によりエッジの方向を判定することができる。また、エッジの方向に分布する周波数成分ではないがＤＣＴ係数が比較的高く画質に影響を与えると考えられる成分を完全に除去せずに低減するから、テキストの画質を更に良好なものとすることができる。
【００４１】
また、本実施形態のマルチファンクションプリンタ１０によれば、画像データが全画素が白の空白データのときには画像データの色成分値を空白を意味する固定データに変換して保存するから、圧縮率を更に高めることができる。また、この場合、複合データとカラーテキストとモノクロテキストとイメージとを識別する判定を行なわないから、処理速度を高めることができる。
【００４２】
本実施形態では、画像データを８×８の画素で分割して１ブロックを構成するものとしたが、例えば４×４の画素や１６×１６の画素で分割するなど１ブロックを如何なるサイズとするものとしてもよい。
【００４３】
本実施形態では、ＲＧＢ表色系をＹＵＶ表色系に変換してＹＵＶ成分値を用いて圧縮処理を行なうものとしたが、これに限られず、ＲＧＢ表色系やＣＭＹＫ表色系などの他の表色系を用いるものとしてもよい。
【００４４】
本実施形態では、ブロック内の画像データの全画素が白か否かを判定して空白用圧縮処理を実行するものとしたが、こうした処理を省略するものとしてもよい。
【００４５】
本実施形態では、画像データの種類として複合データ，カラーテキスト，モノクロテキスト，イメージを区別して判定するものとしたが、これらのうちのいずれか２つを区別して画像データの種類を判定するものであれば、一部の区別を省略するものとしてもよい。例えば、テキストデータについてカラーとモノクロを区別しないものとしてもよい。
【００４６】
本実施形態では、図４のオブジェクト判定処理ルーチンにおいて、カラーエッジ数Ｅｃが閾値Ｂｃ以上であってもカラーエッジ数Ｅｃがモノクロエッジ数Ｅｍにモノクロテキスト優先係数Ｐｍを乗じたもの以上でなくモノクロエッジ数Ｅｍが閾値Ｂｍ以上のときには、モノクロテキストと判定するものとしてカラーテキストに対してモノクロテキストを優先して判定するものとしたが、スキャナユニット３０に仕様によってはモノクロテキストに対してカラーテキストを優先して判定するものとしてもよいし、こうした優先度を設けないものとしてもよい。
【００４７】
本実施形態では、離散コサイン変換（ＤＣＴ）を用いて画像データの色成分を周波数成分に変換して得られるＤＣＴ係数を調整することにより画像データの圧縮を行なうものとしたが、離散コサイン変換を用いるものに限定されるものではなく、ウェーブレットや重複直交変換(ＬＯＴ）など画像データの色成分を周波数成分に変換して解析が可能な手法であれば如何なる手法を用いるものとしてもよい。
【００４８】
本実施形態では、画像データがテキストと判定されたときのパターンマッチング処理において、画像データの色成分を周波数成分に変換して得られるＤＣＴ係数Ｃｏｆ［ｘ］［ｙ］のうちパターンにマッチしない周波数成分についてもＤＣＴ係数の絶対値ａｂｓ（Ｃｏｆ［ｘ］［ｙ］）の大きさに応じて一部を保存するものとしたが、値０として完全に除去するものとしても構わない。
【００４９】
本実施形態では、本発明の画像処理装置をコピーモード時の動作に適用して説明したが、原稿Ｐをスキャンして得られる画像データを圧縮してメモリカード４２に保存するメモリカードモード時の動作に適用するものとしてもよい。
【００５０】
本実施形態では、本発明の画像処理装置をプリンタユニット２０とスキャナユニット３０とを備えてコピーが可能なマルチファンクションプリンタ１０に適用して説明したが、スキャナユニットのみを備えるスキャナ装置に適用するものとしてもよいし、撮像された画像に対して圧縮処理を行なうデジタルカメラやカメラ付きの携帯電話などの画像入力装置に適用するものとしてもよい。また、本発明を画像処理方法の形態とするものとしてもよいし、プログラムに形態とするものとしても構わない。
【００５１】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることは勿論である。
【図面の簡単な説明】
【００５２】
【図１】本実施形態のマルチファンクションプリンタ１０の構成図。
【図２】マルチファンクションプリンタ１０のブロック図。
【図３】コピーモード時処理ルーチンの一例を示すフローチャート。
【図４】オブジェクト判定処理ルーチンの一例を示すフローチャート。
【図５】エッジ検出のためのフィルタの一例を示す説明図。
【図６】イメージ用圧縮処理ルーチンの一例を示すフローチャート。
【図７】複合データ用圧縮処理ルーチンの一例を示すフローチャート。
【図８】イメージ用調整係数の一例を示す説明図。
【図９】複合データ用調整係数の一例を示す説明図。
【図１０】テキスト用圧縮処理ルーチンの一例を示すフローチャート。
【図１１】重要周波数成分選定処理ルーチンの一例を示すフローチャート。
【図１２】パターンマッチング処理ルーチンの一例を示すフローチャート。
【図１３】パターンマッチングに用いるパターンの一例を示す説明図。
【図１４】画像の色変化の方向と周波数分布との関係を示す説明図。
【図１５】パターン番号Ｎとマッチング判定用閾値Ｃｒｅｆとの関係を示す説明図。
【図１６】ＤＣＴ係数調整処理ルーチンの一例を示すフローチャート。
【図１７】調整前後のＤＣＴ係数の絶対値を示す説明図。
【符号の説明】
【００５３】
１０  マルチファンクションプリンタ、１２  バス、２０  プリンタユニット、２２  プリンタＡＳＩＣ、２４  プリンタエンジン、３０  スキャナユニット、３１  原稿台、３２  スキャナＡＳＩＣ、３４  スキャナエンジン、４０  メモリカードスロット、４２  メモリカード、４４  メモリカードコントローラ、５０  操作パネル、５２  表示部、５４  ボタン類、５４ａ  電源ボタン、５４ｂ  スタートボタン、５４ｃ  設定ボタン、５４ｄ  枚数設定ボタン、５４ｅ  モード選択ボタン、５４ｆ  矢印キー、５４ｇ  ＯＫボタン、５４ｈ  戻るボタン、６０  メインコントローラ、６２  ＣＰＵ、６４  ＲＯＭ、６６  ＲＡＭ、６８  フラッシュメモリ、６９  内部通信インタフェース。
【図１】
0005003443.tif 000002
【図２】
0005003443.tif 000003
【図３】
0005003443.tif 000004
【図４】
0005003443.tif 000005
【図５】
0005003443.tif 000006
【図６】
0005003443.tif 000007
【図７】
0005003443.tif 000008
【図８】
0005003443.tif 000009
【図９】
0005003443.tif 000010
【図１０】
0005003443.tif 000011
【図１１】
0005003443.tif 000012
【図１２】
0005003443.tif 000013
【図１３】
0005003443.tif 000014
【図１４】
0005003443.tif 000015
【図１５】
0005003443.tif 000016
【図１６】
0005003443.tif 000017
【図１７】
0005003443.tif 000018