(57)【要約】【課題】  カラー画像用の可逆符号化器を流用しながらも、１コンポーネントで表わされる画像データについては高速に符号化する。【解決手段】  原稿読取部１００で読取ったカラー画像データは、色変換部３０３でＣＭＹＫＬデータに変換される。カラー読取りモードの場合、スイッチ部３０４は、ＣＭＹＫのデータをそのまま符号化部３０５に出力する。読取りモードがモノクロ読取りモードの場合には、スイッチ部３０４は、ＣＭＹＫのデータ中、ＣＭＹの成分は無視し、４つのＫ成分が入力された場合、その４つのＫ成分を擬似的にＣ、Ｍ、Ｙ、Ｋの各色成分のデータとして符号化部３０５に供給する。符号化部３０５は、入力したＣＭＹＫの各成分データを可逆符号化する。【選択図】  図２
2008042688.tif 000002
【特許請求の範囲】
【請求項１】
画像データを符号化する画像処理装置であって、
Ｎ（≧３）成分で表わされるカラー画像データを可逆符号化する符号化手段と、
符号化対象の画像データが１成分で構成されるモノクロ画像データであるか、前記Ｎ成分のデータで構成されるカラー画像データであるかを判定する判定手段と、
該判定手段で符号化対象画像データがカラー画像データであると判定した場合、当該カラー画像データを前記符号化手段に供給し、
前記判定手段で符号化対象画像データが前記モノクロ画像データであると判定した場合、当該モノクロ画像データ中のＮ個のデータを、カラー画像の擬似的なＮ成分のデータとして、前記符号化手段に供給する供給手段と、
該供給手段による供給により、前記符号化手段で生成された可逆符号化データを出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記出力手段は、前記符号化手段で生成された可逆符号化データに、前記判定手段の判定結果の情報を付加して出力することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記供給手段は、入力されるモノクロ画像のラスタースキャン方向に連続するＮ個のデータを１カラー画素データとして前記符号化手段に供給することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記供給手段は、入力されるモノクロ画像のラスタースキャンの隣接するＮライン中の主走査方向の座標位置が同じ位置のＮ個のデータを１カラー画素データとして前記符号化手段に供給することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項５】
前記供給手段は、カラー画像データの１画素の成分の数Ｎをｍ×ｎ（ｍ、ｎ≧２）で定義できるとき、入力されるモノクロ画像のラスタースキャンの隣接する複数ライン中のｍ×ｎの２次元窓内のデータを１カラー画素データとして前記符号化手段に供給することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項６】
可逆符号化画像データを復号する画像処理装置であって、
Ｎ個の成分で構成されるカラー画像データの可逆符号化データを復号する復号手段と、
オリジナル画像がカラー画像であるか、モノクロ画像であるかを識別する識別情報を有し、カラー画像符号化形式のデータフォーマットの可逆符号化データを入力する入力手段と、
該入力手段で入力した可逆符号化データを、前記復号手段に供給する供給手段と、
前記入力手段で入力した識別情報がカラー画像を示すか、モノクロ画像を示すかを判定する判断手段と、
該判断手段によって識別情報がカラー画像を示すと判断した場合、前記供給手段で供給することで復号して得られたカラー画像データを出力し、
前記判断手段によって識別情報がモノクロ画像を示すと判断した場合、前記供給手段で供給することで復号して得られたカラー画像データを構成する１画素のＮ個成分データを、１色成分で表わされるモノクロ画像のＮ個のデータとして出力する出力手段と、
を備えることを特徴とする画像処理装置。
【請求項７】
画像データを符号化する画像処理装置の制御方法であって、
Ｎ（≧３）成分で表わされるカラー画像データを可逆符号化する符号化工程と、
符号化対象の画像データが１成分で構成されるモノクロ画像データであるか、前記Ｎ成分のデータで構成されるカラー画像データであるかを判定する判定工程と、
該判定工程で符号化対象画像データがカラー画像データであると判定した場合、当該カラー画像データを前記符号化工程に供給し、
前記判定工程で符号化対象画像データが前記モノクロ画像データであると判定した場合、当該モノクロ画像データ中のＮ個のデータを、カラー画像の擬似的なＮ成分のデータとして、前記符号化手段に供給する供給工程と、
該供給工程による供給により、前記符号化工程で生成された可逆符号化データを出力する出力工程と
を備えることを特徴とする画像処理装置の制御方法。
【請求項８】
可逆符号化画像データを復号する画像処理装置の制御方法であって、
Ｎ個の成分で構成されるカラー画像データの可逆符号化データを復号する復号工程と、
オリジナル画像がカラー画像であるか、モノクロ画像であるかを識別する識別情報を有し、カラー画像符号化形式のデータフォーマットの可逆符号化データを入力する入力工程と、
該入力工程で入力した可逆符号化データを、前記復号工程に供給する供給工程と、
前記入力工程で入力した識別情報がカラー画像を示すか、モノクロ画像を示すかを判定する判断工程と、
該判断工程によって識別情報がカラー画像を示すと判断した場合、前記供給工程で供給することで復号して得られたカラー画像データを出力し、
前記判断工程によって識別情報がモノクロ画像を示すと判断した場合、前記供給工程で供給することで復号して得られたカラー画像データを構成する１画素のＮ個成分データを、１色成分で表わされるモノクロ画像のＮ個のデータとして出力する出力工程と、
を備えることを特徴とする画像処理装置の制御方法。
【請求項９】
請求項７又は８に記載の各工程をコンピュータに実行させるためのコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【請求項１１】
１つの色成分のモノクロ画像データ、又は、Ｎ個の成分で合わされるカラー画像データを符号化する画像処理装置であって、
符号化対象の画像データを入力する入力手段と、
該入力手段で入力する符号化対象の画像データがモノクロ画像データであるか、カラー画像データであるかを識別する画像識別手段と、
該画像識別手段により入力画像データがカラー画像であると識別した場合には、当該カラー画像データを通過させ、前記画像識別手段により入力画像データがモノクロ画像であると識別した場合には、当該モノクロ画像中のＮ個の成分データを、擬似的にカラー画像の１画素のＮ個の成分データに並べかえて出力するスイッチ手段と、
該スイッチ手段を介して出力されたカラー画像データから、複数画素で構成される画素ブロック単位の画像データを取得する取得手段と、
取得された画素ブロックの画像データを非可逆符号化する第１の符号化手段と、
取得された画素ブロックの画像データを可逆符号化する第２の符号化手段と、
画素ブロックの画像データが、予め設定された特定パターンの性質を有するか否かを判定する特定パターン判定手段と、
前記第１、第２の符号化手段で符号化することで得られた非可逆及び可逆符号化データのそれぞれのデータ量、前記画像識別手段の識別結果、及び、前記特定パターン判定手段の判定結果に基づき、前記第１、第２の符号化手段で得られた非可逆符号化データ、可逆符号化データのいずれか一方を選択し、出力する出力制御手段とを備え、
当該出力制御手段は、
（ａ）前記画像識別手段の識別結果がモノクロ画像を示す場合、前記可逆符号化データを出力し、
（ｂ）前記画像識別手段の識別結果がカラー画像を示し、且つ、前記パターン判定手段により注目画素ブロックが特定パターンの性質を有すると判定した場合、予め指定された非可逆、可逆符号化データのうちの一方を出力し、
（ｃ）前記画像識別手段の識別結果がカラー画像を示し、且つ、前記パターン判定手段により注目画素ブロックが特定パターンの性質を有しないと判定した場合、非可逆、可逆符号化データのうち、符号量の少ない方を出力する
ことを特徴とする画像処理装置。
【請求項１２】
更に、前記取得手段で取得された画素ブロックの画像データの解像度を更に低い解像度に変換する解像度変換手段を備え、
前記第１の符号化手段は、解像度変換後の画像データを非可逆符号化することを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
前記特定パターン判定手段は、
前記解像度変換手段による解像度変換後の画像データと、変換前の画像データの差分情報Ｄｔを算出する差分情報算出手段と、
前記画素ブロック内をスキャン中に、着目画素の周囲に存在する複数の周囲画素が持つ色数が２となる回数Ｃｒを算出する２色数算出手段と、
前記画素ブロック内をスキャン中に、注目画素とその直前の画素が同じとなる個数Ｒｒを計数する連続画素数算出手段と、
閾値Ｔｈ１、Ｔｈ２、Ｔｈ３と、前記Ｄｔ、Ｃｒ、Ｒｒが
条件：Ｄｔ＞Ｔｈ１、且つ、Ｃｒ＞Ｔｈ２、且つ、Ｒｒ＜Ｔｈ３
を満たす場合に注目画素ブロックは特定パターンの性質を持つと判定し、前記条件を満たさない場合に注目画素ブロックは特定パターンの性質を持たないと判定する手段と
を備えることを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記出力制御手段は、
符号化データをファイルとして記憶手段に格納し、
当該ファイルヘッダには、前記画像識別手段の識別情報を格納し、
各画素ブロックの符号化データのヘッダには、可逆、非可逆の識別情報を格納する
ことを特徴とする請求項１１乃至１３のいずれか１項に記載の画像処理装置。
【請求項１５】
符号化画像データを復号する画像処理装置であって、
オリジナル画像がＮ個の成分で表わされるカラー画像であるか、１つ成分で表わされるモノクロ画像であるかを識別する画像識別情報、及び、複数画素で表わされる画素ブロックの符号化データが、非可逆、可逆のいずれであるかを示す画素ブロック識別情報を有する符号化画像データを入力する入力手段と、
非可逆符号化されたカラー画像又はモノクロ画像を復号する第１の復号手段と、
Ｎ個の成分で構成されるカラー画像の可逆符号化データを復号する第２の復号手段と、
入力した符号化データの前記画像識別情報、及び、前記画素ブロック識別情報を判定する判定手段と、
該判定手段で注目画素ブロックの符号化データが非可逆符号化データである場合、当該符号化データを前記第１の復号手段に供給し、
前記判定手段で注目画素ブロックの符号化データが可逆符号化データである場合、当該符号化データを前記第２の復号手段に供給する供給手段と、
前記第１の復号手段で画像データに復号した場合には当該復号して得られたモノクロ、又は、カラー画像データを出力し、
前記判定手段により、オリジナル画像がカラー画像であることが判定された場合には、前記第２の復号手段で復号して得られたカラー画像データを出力し、
前記判定手段により、オリジナル画像がモノクロ画像であることが判定された場合には、前記第２の復号手段で復号して得られたカラー画像データを構成する１画素のＮ個成分データを、１色成分で表わされるモノクロ画像のＮ個のデータとして出力する出力制御手段と、
を備えることを特徴とする画像処理装置。
【請求項１６】
１つの色成分のモノクロ画像データ、又は、Ｎ個の成分で合わされるカラー画像データを符号化する画像処理装置の制御方法であって、
符号化対象の画像データを入力する入力工程と、
該入力工程で入力する符号化対象の画像データがモノクロ画像データであるか、カラー画像データであるかを識別する画像識別工程と、
該画像識別工程により入力画像データがカラー画像であると識別した場合には、当該カラー画像データを通過させ、前記画像識別工程により入力画像データがモノクロ画像であると識別した場合には、当該モノクロ画像中のＮ個の成分データを、擬似的にカラー画像の１画素のＮ個の成分データに並べかえて出力するスイッチ工程と、
該スイッチ工程を介して出力されたカラー画像データから、複数画素で構成される画素ブロック単位の画像データを取得する取得工程と、
取得された画素ブロックの画像データを非可逆符号化する第１の符号化工程と、
取得された画素ブロックの画像データを可逆符号化する第２の符号化工程と、
画素ブロックの画像データが、予め設定された特定パターンの性質を有するか否かを判定する特定パターン判定工程と、
前記第１、第２の符号化工程で符号化することで得られた非可逆及び可逆符号化データのそれぞれのデータ量、前記画像識別工程の識別結果、及び、前記特定パターン判定工程の判定結果に基づき、前記第１、第２の符号化工程で得られた非可逆符号化データ、可逆符号化データのいずれか一方を選択し、出力する出力制御工程とを備え、
当該出力制御工程は、
（ａ）前記画像識別工程の識別結果がモノクロ画像を示す場合、前記可逆符号化データを出力し、
（ｂ）前記画像識別工程の識別結果がカラー画像を示し、且つ、前記パターン判定工程により注目画素ブロックが特定パターンの性質を有すると判定した場合、予め指定された非可逆、可逆符号化データのうちの一方を出力し、
（ｃ）前記画像識別工程の識別結果がカラー画像を示し、且つ、前記パターン判定工程により注目画素ブロックが特定パターンの性質を有しないと判定した場合、非可逆、可逆符号化データのうち、符号量の少ない方を出力する
ことを特徴とする画像処理装置の制御方法。
【請求項１７】
符号化画像データを復号する画像処理装置の制御方法であって、
オリジナル画像がＮ個の成分で表わされるカラー画像であるか、１つ成分で表わされるモノクロ画像であるかを識別する画像識別情報、及び、複数画素で表わされる画素ブロックの符号化データが、非可逆、可逆のいずれであるかを示す画素ブロック識別情報を有する符号化画像データを入力する入力工程と、
非可逆符号化されたカラー画像又はモノクロ画像を復号する第１の復号工程と、
Ｎ個の成分で構成されるカラー画像の可逆符号化データを復号する第２の復号工程と、
入力した符号化データの前記画像識別情報、及び、前記画素ブロック識別情報を判定する判定工程と、
該判定工程で注目画素ブロックの符号化データが非可逆符号化データである場合、当該符号化データを前記第１の復号工程に供給し、
前記判定工程で注目画素ブロックの符号化データが可逆符号化データである場合、当該符号化データを前記第２の復号工程に供給する供給工程と、
前記第１の復号工程で画像データに復号した場合には当該復号して得られたモノクロ、又は、カラー画像データを出力し、
前記判定工程により、オリジナル画像がカラー画像であることが判定された場合には、前記第２の復号工程で復号して得られたカラー画像データを出力し、
前記判定工程により、オリジナル画像がモノクロ画像であることが判定された場合には、前記第２の復号工程で復号して得られたカラー画像データを構成する１画素のＮ個成分データを、１色成分で表わされるモノクロ画像のＮ個のデータとして出力する出力制御工程と、
を備えることを特徴とする画像処理装置の制御方法。
【請求項１８】
請求項１６又は１７に記載の各工程をコンピュータに実行させるためのコンピュータプログラム。
【請求項１９】
請求項１８に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【請求項２０】
１つの成分で表わされるモノクロ画像データ、又は、Ｎ個の成分で合わされるカラー画像データを符号化する画像処理装置であって、
符号化対象の画像データを入力する入力手段と、
該入力手段で入力する符号化対象の画像データがモノクロ画像データであるか、カラー画像データであるかを識別する画像識別手段と、
前記入力手段で入力された画像データ中の、複数画素で構成される画素ブロック単位の画像データを非可逆符号化する第１の符号化手段と、
該画像識別手段により入力画像データがカラー画像であると識別した場合には、当該カラー画像データを通過させ、前記画像識別手段により入力画像データがモノクロ画像であると識別した場合には、当該モノクロ画像中のＮ個の成分データを、擬似的にカラー画像の１画素のＮ個の成分データに並べかえて出力するスイッチ手段と、
該スイッチ手段を介して出力されたカラー画像データ中の、複数画素で構成される画素ブロック単位の画像データを可逆符号化する第２の符号化手段と、
画素ブロックの画像データが、予め設定された特定パターンの性質を有するか否かを判定する特定パターン判定手段と、
前記第１、第２の符号化手段で符号化することで得られた非可逆及び可逆符号化データのそれぞれのデータ量、及び、前記特定パターン判定手段の判定結果に基づき、前記第１、第２の符号化手段で得られた非可逆符号化データ、可逆符号化データのいずれか一方を選択し、出力する出力制御手段とを備え、
当該出力制御手段は、
（ａ）前記パターン判定手段により注目画素ブロックが特定パターンの性質を有すると判定した場合、予め指定された非可逆、可逆符号化データのうちの一方を出力し、
（ｂ）前記パターン判定手段により注目画素ブロックが特定パターンの性質を有しないと判定した場合、非可逆、可逆符号化データのうち、符号量の少ない方を出力する
ことを特徴とする画像処理装置。
【請求項２１】
前記入力手段で入力された画像データ中の、複数画素で構成される画素ブロック単位の画像データを更に低い解像度に変換する解像度変換手段を備え、
前記第１の符号化手段は、解像度変換後の画像データを非可逆符号化することを特徴とする請求項２０に記載の画像処理装置。
【請求項２２】
前記特定パターン判定手段は、
前記解像度変換手段による解像度変換後の画像データと、変換前の画像データの差分情報Ｄｔを算出する差分情報算出手段と、
前記画素ブロック内をスキャン中に、着目画素の周囲に存在する複数の周囲画素が持つ色数が２となる回数Ｃｒを算出する２色数算出手段と、
前記画素ブロック内をスキャン中に、注目画素とその直前の画素が同じとなる個数Ｒｒを計数する連続画素数算出手段と、
閾値Ｔｈ１、Ｔｈ２、Ｔｈ３と、前記Ｄｔ、Ｃｒ、Ｒｒが
条件：Ｄｔ＞Ｔｈ１、且つ、Ｃｒ＞Ｔｈ２、且つ、Ｒｒ＜Ｔｈ３
を満たす場合に注目画素ブロックは特定パターンの性質を持つと判定し、前記条件を満たさない場合に注目画素ブロックは特定パターンの性質を持たないと判定する手段と
を備えることを特徴とする請求項２１に記載の画像処理装置。
【請求項２３】
前記出力制御手段は、
符号化データをファイルとして記憶手段に格納し、
当該ファイルヘッダには、前記画像識別手段の識別情報を格納し、
各画素ブロックの符号化データのヘッダには、可逆、非可逆の識別情報を格納する
ことを特徴とする請求項２０乃至２２のいずれか１項に記載の画像処理装置。
【請求項２４】
１つの成分で表わされるモノクロ画像データ、又は、Ｎ個の成分で合わされるカラー画像データを符号化する画像処理装置の制御方法であって、
符号化対象の画像データを入力する入力工程と、
該入力工程で入力する符号化対象の画像データがモノクロ画像データであるか、カラー画像データであるかを識別する画像識別工程と、
前記入力工程で入力された画像データ中の、複数画素で構成される画素ブロック単位の画像データを非可逆符号化する第１の符号化工程と、
該画像識別工程により入力画像データがカラー画像であると識別した場合には、当該カラー画像データを通過させ、前記画像識別工程により入力画像データがモノクロ画像であると識別した場合には、当該モノクロ画像中のＮ個の成分データを、擬似的にカラー画像の１画素のＮ個の成分データに並べかえて出力するスイッチ工程と、
該スイッチ工程を介して出力されたカラー画像データ中の、複数画素で構成される画素ブロック単位の画像データを可逆符号化する第２の符号化工程と、
画素ブロックの画像データが、予め設定された特定パターンの性質を有するか否かを判定する特定パターン判定工程と、
前記第１、第２の符号化工程で符号化することで得られた非可逆及び可逆符号化データのそれぞれのデータ量、及び、前記特定パターン判定工程の判定結果に基づき、前記第１、第２の符号化工程で得られた非可逆符号化データ、可逆符号化データのいずれか一方を選択し、出力する出力制御工程とを備え、
当該出力制御工程は、
（ａ）前記パターン判定工程により注目画素ブロックが特定パターンの性質を有すると判定した場合、予め指定された非可逆、可逆符号化データのうちの一方を出力し、
（ｂ）前記パターン判定工程により注目画素ブロックが特定パターンの性質を有しないと判定した場合、非可逆、可逆符号化データのうち、符号量の少ない方を出力する
ことを特徴とする画像処理装置の制御方法。
【請求項２５】
請求項２４に記載の各工程をコンピュータに実行させるためのコンピュータプログラム。
【請求項２６】
請求項２５に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データの圧縮符号化技術に関するものである。
【背景技術】
【０００２】
従来、静止画像の圧縮方式では、離散コサイン変換を利用したＪＰＥＧ方式や、Ｗａｖｅｌｅｔ変換を利用した方式が多く使われている。これらの符号化方式はある特定の符号化単位に画像を分割し、そのブロックに対して、離散コサイン変換や、Ｗａｖｅｌｅｔ変換処理を行うために、画像内でパラレル処理が比較的容易である。その場合例えばハード実装などを考えると処理速度を稼ぎたい場合はその並列度を高めることで、処理速度向上が望める。
【０００３】
ところで、モノクログレースケール画像のコンポーネントは１つであるので、複数のコンポーネントで表わされるカラー画像と比較して、情報量は少ない。しかし、このモノクログレースケール画像を、カラー画像用の符号化器を流用すると、存在しないコンポーネントがあるものとして符号化することになり、かなり冗長である。また、モノクログレースケール画像の符号化に要する時間は、カラー画像を符号化するのに要する時間と実質的に同じであるので、処理効率も改善の余地がある。これはソフトウェアで実現する場合にも言えることである。
【０００４】
ＲＧＢの符号化器を流用し、グレースケール画像に対する処理高速化の一例として、次のようなものが知られている。
【０００５】
まず、元々色差成分を持たないグレースケール画像であっても、ＲＧＢ→ＹＣｂＣｒ色空間変換を行なう。そして、グレー画像領域に関しては、色空間変換処理として色差成分の符号量は０とし輝度成分のみを有効とする。この後、色空間変換処理以降の全ての処理を行わせることで、無駄な処理を省き、処理の高速化、符号化効率が向上するようにしている（例えば、特許文献１）
しかしながら、一部の画像符号化方式、特に可逆の画像符号化方式にはブロック単位での処理ではなく、１ピクセル順次に処理するものが多くある。例えばＪＰＥＧ−ＬＳ方式であれば注目ピクセルの近傍ピクセルの状態によりモード遷移を行い、符号を決定する。この場合、並列度を高めようとすると、先のＪＰＥＧ方式同様、処理のブロック化を行う必要があり、またカラーの符号化器を流用することは困難である。
【特許文献１】特開２００４−２２８９５２
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ＪＰＥＧ−ＬＳに代表される１ピクセル単位の符号化方式は、近傍画素との相関を元に冗長度を削減することで圧縮効率を高めているので、速度向上のための過度のブロック化は圧縮効率悪化につながる。
【０００７】
また、ＲＧＢで表現されているカラー画像であれば１ピクセルにＲ、Ｇ、Ｂの３つのコンポーネントを保持することになり、ピクセルごとのモード遷移のタイミングやパターン辞書更新もＲＧＢを１セットとして処理される。従って、カラー画像用の符号化器を流用する限り、１コンポーネントで構成されているグレースケール画像、３コンポーネントで構成される画像のいずれであっても、同じピクセル数の画像である限り、符号化処理を高速化することはできない。
【０００８】
本発明は、上記の問題に鑑みてなされたものであり、カラー画像用の可逆符号化器を流用しながらも、１コンポーネントで表わされる画像データについては高速に符号化することを可能ならしめる技術を提供しようとするものである。
【課題を解決するための手段】
【０００９】
この課題を解決するため、例えば本発明の画像処理装置は以下の構成を備える。すなわち、
画像データを符号化する画像処理装置であって、
Ｎ（≧３）成分で表わされるカラー画像データを可逆符号化する符号化手段と、
符号化対象の画像データが１成分で構成されるモノクロ画像データであるか、前記Ｎ成分のデータで構成されるカラー画像データであるかを判定する判定手段と、
該判定手段で符号化対象画像データがカラー画像データであると判定した場合、当該カラー画像データを前記符号化手段に供給し、
前記判定手段で符号化対象画像データが前記モノクロ画像データであると判定した場合、当該モノクロ画像データ中のＮ個のデータを、カラー画像の擬似的なＮ成分のデータとして、前記符号化手段に供給する供給手段と、
該供給手段による供給により、前記符号化手段で生成された可逆符号化データを出力する出力手段とを備える。
【発明の効果】
【００１０】
本発明によれば、カラー画像用の可逆符号化器を流用しながらも、１コンポーネントで表わされる画像データについては高速に符号化することが可能になる。
【発明を実施するための最良の形態】
【００１１】
以下、図面に従って本発明に係る実施形態を詳細に説明する。なお、実施形態では、画像処理装置としてカラー複写機に適用した例を説明するが、画像データを圧縮符号化する回路、もしくは、画像データを圧縮するソフトウェアにも適用できるので、必ずしも本発明が複写機にのみに限定されるものではない。
【００１２】
＜装置概要の説明＞
図１は、実施形態におけるカラー複写機の構造断面図である。本装置は大きく分けて、原稿読取部１００と、プリンタエンジン部２００で構成される。
【００１３】
原稿読取部１００は、ＡＤＦ（Auto Document Deeder）装置１１０と、スキャナ部１２０を有する。また、不図示の液晶表示器や各種スイッチやボタン等で構成される操作パネル４００（図２参照）も、この原稿読取部１００に設けられている。
【００１４】
ＡＤＦ装置１１０は、原稿を載置するトレイ１１１を有し、複写時には、原稿を１枚単位にスキャナ部１２０の原稿台ガラス１２１上に搬送し、読取りが終わると排出トレイ１１２に排出する。
【００１５】
また、スキャナ部１２０は、原稿台ガラス（プラテンガラス）１２１、原稿の読みより面を、下方から照らす蛍光燈ランプを内蔵した露光部１２２を有する。また、スキャナ部１２０は、ミラーユニット１２３、集光レンズ１２４、及び、各色成分のリニアＣＣＤイメージセンサ１２４、１２５、１２６をも有する。これらリニアＣＣＤイメージセンサ１２４、１２５、１２６は、原稿からの光を赤（Ｒ）、緑（Ｇ）、青（Ｂ）の各色成分に分解して読み取り、その読取った各色成分のデータ（各８ビットとする）を画像処理部３００に供給する。
【００１６】
尚、露光部１２２が速度ｖで、ミラーユニット１２３が速度ｖ／２で、図示の矢印方向（リニアＣＣＤイメージセンサの画素の並びに直交する方向）に移動することにより、露光部１２２とＣＣＤ１２４乃至１２６間の距離を一定にしている。
【００１７】
画像処理部３００の詳細は後述するが、読取った原稿画像を蓄積する処理、及び、蓄積した画像データを、記録色成分であるイエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）に変換し蓄積する。そして、画像処理部３００は、面順次にＹ、Ｍ、Ｃ、Ｋの画像データをプリンタエンジン部２００に出力する処理を行なう。
【００１８】
プリンタエンジン部２００は、レーザドライバ２０１、ポリゴンミラー２０２、ｆθレンズ２０３、ミラー２０４、感光ドラム２０５、現像器２０６、転写ドラム２０７、給紙カセット２０８、２０９、定着器２１０、及び、排紙トレイ２１１を有する。
【００１９】
転写ドラム２０７は、搬送ベルトを介して、給紙カセット２０８又は２０９からの搬送されてきた記録紙を、静電気の作用で、自身に巻きつける。
【００２０】
レーザドライバ２０１は、画像処理部３００より面順次に送られてくるＹ，Ｍ，Ｃ，Ｋの１つの画像データに従いレーザ素子を駆動することで、ポリゴンミラー２０２に向けてレーザ光を照射する。ポリゴンミラー２０２は図示のように自転していて、その側面でレーザ光を反射することで、レーザ光を図面に対して垂直な１次元の軸に掃引させる。ミラー２０４は、このレーザ光を感光ドラムに向けて反射する。この結果、図面の垂直方向に沿って、感光ドラム２０５の表面を走査露光することになる。感光ドラム２０５は図示のように回転しているので、上記走査露光により、その表面上に２次元静電潜像が形成されることになる。
【００２１】
現像器２０６は、イエロー、マゼンタ、シアン、及び、ブラックの各現像ユニット２０６Ｍ、２０６Ｃ、２０６Ｙ、及び２０６Ｋを収容し、回転可能となっている。現像器２０６は、４つの現像ユニットのうち、走査露光している色成分に対応する１つの現像ユニットを感光ドラム２０５に当接する。この結果、感光ドラム２０５上には、当接した現像ユニットの色トナーが静電気の作用で付着する。感光ドラム２０５に付着したトナーは、天斜体２０７に巻きつけられた記録紙に転写される。
【００２２】
上記処理を、Ｃ、Ｍ、Ｙ、Ｋの４つ成分について実行することで、転写ドラム２２３に巻きつけられた記録紙上には、４つの色のトナーが重畳転写されることになる。この後、記録紙は、転写ドラム２０７から不図示の剥離爪によって剥離され、定着器２１０に向けて搬送される。定着器２１０は、記録紙上のトナーを記録紙に熱の作用で定着する。この後、定着済みの記録紙は、排紙トレイ２１１に排紙される。
【００２３】
上記はカラー複写処理である。モノクロ複写時は、原稿から読取って得られたＲＧＢのデータから１つの輝度成分のデータのみを抽出し、その輝度データからブラックの濃度データを生成し、レーザドライバ２０１を駆動する。このとき、現像器２０６はブラック現像ユニット２０６Ｋを感光ドラム２０５に当接する。そして、搬送されてきた記録紙に、そのブラック単色のトナー像が記録紙に転写し、定着器２１０に搬送し、排出する。つまり、Ｃ、Ｍ、Ｙの画像形成処理は行なわない。従って、記録紙の装置内の搬送時間を除外すれば、モノクロ複写の画像形成に要する時間は、カラー複写時のそれの１／４となり、高速な複写が可能になる。
【００２４】
なお、上記の通り、実施形態におけるプリンタエンジン部２００はレーザビームプリンタを例にしているが、インクジェットプリンタであっても良いし、印刷方式の種類は問わない。
【００２５】
図２は、実施形態における画像処理部３００のブロック構成図である。
【００２６】
画像処理部３００は、装置全体の制御を司る制御部（マイクロプロセッサ、ＲＯＭ、ＲＡＭで構成される）３０１を有する。
【００２７】
レンダリング部３０１は、不図示のインタフェース（ネットワークインタフェースを含む）を介して、ホストコンピュータから受信したＰＤＬ形式の印刷データを解釈し、画像を描画する。描画される画像の各画素は、Ｒ、Ｇ、Ｂの３つの成分を有し、それぞれが８ビット（２５６階調）である。
【００２８】
セレクタ５は、制御部３０１からの指示に従って、原稿読取部１００、又は、レンダリング部３０１から出力されたビットマップイメージのいずれか一方を選択し、出力する。
【００２９】
色変換部３０３は、セレクタ３０２を介して入力したＲ、Ｇ、Ｂデータを、記録色成分であるＣ（シアン）、Ｍ（マゼンタ）、イエロー（Ｙ）、及び、ブラック（Ｋ）に変換する。一般には、ＲＧＢ色空間からＣＭＹＫ色空間への変換は、ＲＧＢ色空間のデータをまず、ＣＭＹ色空間に変換する。そして、ＣＭＹ色空間のＣＭＹのデータに対してＵＣＲ（Under Color Removal）処理することで、ＣＭＹの各データを補正すると共に、Ｋ成分を生成することで行われる。ただし、これら一連の処理をＬＵＴ（Look Up Table）で実現しれも構わない。
【００３０】
スイッチ３０４は、制御部３０１からの制御信号に従って、入力されたＣＭＹＫの４成分のデータから、出力用ＣＭＹＫデータを生成し、出力する。このスイッチ３０４の処理についの詳細について後述する。
【００３１】
符号化器３０５は、スイッチ３０４から入力したＣＭＹＫの各データを可逆符号化する。可逆符号化の種類は問わないが、実施形態の符号化器３０５は、公知のＪＰＥＧ−ＬＳのアルゴリズムを応用した。
【００３２】
ＪＰＥＧは、自然画に適した非可逆符号化として知られている。これに対し、ＪＰＥＧ−ＬＳは、「ＪＰＥＧ」を冠するものの、ＪＰＥＧとは全く異なるアルゴリズムであり、可逆な符号化データを生成する。ＪＰＥＧ−ＬＳは、特にコンピュータグラフィックスや文字線画に適した符号化技術として知られている。
【００３３】
ＪＰＥＧ−ＬＳは、簡単に説明すると、ランレングス符号化と予測符号化とを組み合わせたものである。具体的には、符号化対象のカラー画像をラスタースキャンしている最中、注目画素の周辺の複数画素に含まれる色数が１のとき、直前の画素と注目画素が同じとなる回数（ラン）の計数を開始する。そして、注目画素の色が直前の画素の色と異なったときに、ランを符号化し出力する。また、ランレングス符号化していない状態で、注目画素の周辺の複数画素に含まれる色数が１以外の場合には、その周辺画素から着目画素の各成分の予測値を算出する。そして、各成分毎の予測値と注目画素の実際の成分の値との差分をエントロピー符号化するものである。ＪＰＥＧ−ＬＳは、ＲＧＢやＹＣｂＣｒ色空間の３つの成分を有する画像データを符号化するものとして知られているが、実施形態では、ＣＭＹＫの４成分に適用させたものであり、アルゴリズムそのものはＪＰＥＧ−ＬＳと同じである。当業者であれば、上記説明からＣＭＹＫ画像データにも適用できることは容易に想到できるであろうから、これ以上の詳述は省略する。
【００３４】
符号列生成部３１０は、符号化部３０５より符号化データを入力する。この符号列生成部３１０は、制御部３０１からの制御信号に応じたヘッダを生成し、そのヘッダと共に符号化データをファイルとして大容量の記憶装置３０６に格納する。このヘッダには、図１９に示すように、画像データのサイズ（画像データの水平方向、垂直方向の画素数）、成分の数、各成分のビット数、ダミーデータの個数情報（詳細後述）、及び、カラー／モノクロ識別情報（詳細後述）が含まれる。
【００３５】
復号部３０７は、記憶装置３０６に格納された圧縮符号化された画像データファイルを読み込み、復号し、復号結果をスイッチ部３０８に出力する。
【００３６】
スイッチ部３０８は、先に説明したスイッチ部３０４と対を成すものであり、制御部３０１からの制御信号に従って、入力されたＣＭＹＫの４成分のデータから、出力用ＣＭＹＫデータを生成し、出力する。このスイッチ部３０８の処理についての詳細について後述する。
【００３７】
画像データ出力部３０９は、入力したＣＭＹＫのデータに基づき、プリンタエンジン２００の印刷処理のタイミングに合わせて、ＣＭＹＫデータを面順次に出力する。
【００３８】
なお、通常、複写機においては、ＣＣＤの特性や、プリンタエンジンの特性に応じて各補正（シェーディング補正、ガンマ補正等）を行なうが、これらの補正処理そのものは本発明には直接には関係がないので、図２では省略していることに注意されたい。
【００３９】
上記構成において、原稿の複写を行なうとき、利用者が操作部４００を操作して、カラー複写モード、もしくは、モノクロ複写モードのいずれかを選択し、原稿を原稿読取部１００（のＡＤＦ）にセットし、複写開始キーを押下する。制御部３０１は、複写開始キーの押下を検出すると、原稿読取部１００で読取られた原稿画像データは、ラスター順に、セレクタ３０２を介して符号化処理部３０５に転送され、ここで圧縮符号化されて記憶装置３０６に格納していく。
【００４０】
また、外部より印刷データを受信した場合には、セレクタ３０２をレンダリング部３０１を選択するようにし、レンダリング部３０２が生成した印刷データに基づく画像を圧縮符号化し、記憶装置３０６に格納することになる。
【００４１】
復号処理部３０７は、プリンタエンジン２００の印刷速度に応じて、記憶装置３０６から圧縮符号化データを読出し、復号処理する。そして、復号した画像データをプリンタエンジン部２００に出力し、印刷を行う。
【００４２】
上記の通り、記憶装置３０６への圧縮符号化データの格納処理と、復号し印刷するための読出し処理は、非同期である。つまり、記憶装置３０６は画像圧縮処理と、復号処理との間に介在するバッファとして機能することになる。この結果、原稿読取り／符号化処理は、復号／記録処理に非依存なので、多数の原稿を高速に読取ることができ、次のジョブの原稿読取りにすばやく移行することが可能になる。
【００４３】
以上、実施形態における装置全体の構成について説明した。次に、本装置の特徴部分であるスイッチ部３０４、３０８について説明する。
【００４４】
カラー画像を印刷する場合には、ＲＧＢ色空間の画像データからＣＭＹＫ色空間の画像データを生成し、符号化部３０５はそれを符号化する。また、復号して得られたＣＭＹＫの各成分の画像データに従い、ＣＭＹＫの各色の画像形成を行なうことになる。
【００４５】
一方、モノクログレースケール画像を印刷する場合には、記録色成分としてＫ（ブラック）成分のみを用いて画像を形成する。つまり、Ｃ、Ｍ、Ｙの色成分の画像データの形成処理は行なわない。
【００４６】
しかし、実施形態の符号化部３０５は、ＣＭＹＫの画像データが存在するものとして符号化する。従って、単純に、Ｋ成分だけが意味のあるモノクログレースケール画像を符号化する場合であっても、符号化部３０５は、Ｃ、Ｍ、Ｙのデータがあるものとして符号化処理を行なう。つまり、モノクログレースケール画像であろうが、カラー画像であろうが、同じサイズの原稿を複写する場合には符号化部３０５に係る負荷は同じである。
【００４７】
説明を簡単なものとするため、プリンタエンジン部２００内における記録紙の搬送時間を無視し、画像形成に係る時間について考察する。
【００４８】
プリンタエンジン部２００のカラー画像を形成するために必要な時間をＴｐとすると、１成分（Ｋ成分）のみを利用するモノクロ画像のプリンタエンジン部２００の画像形成処理に要する時間はＴｐ／４となるのは、これまでの説明から明らかであろう。
【００４９】
従って、プリンタエンジン部２００がその能力を１００％発揮するためには、符号化部３０５は、１枚のカラー画像の符号化するのＴｐの時間以内となるように設計する必要がある。なぜなら、もし、符号化部３０５の１枚のカラー画像を符号化するの必要な時間がＴｐ以上であるとすると、復号部３０７が復号すべき画像データが記憶装置３０６に格納されるのを待ちつづけることになる。つまり、単位時間当たりの印刷枚数が、本来のプリンタエンジン部２００の能力以下になってしまうからである。
【００５０】
さて、符号化部３０５が１ページのカラー画像の符号化に要する時間をＴｐとすると、モノクログレースケールの画像の符号化でも、やはりＴｐの時間が必要となる。しかし、プリンタエンジン部２００はモノクログレースケール画像の画像形成ではＴｐ／４の時間しかかからないので、プリンタエンジン部２００は本来の１／４の能力しか発揮しないことになる。
【００５１】
モノクロ画像の印刷でも、プリンタエンジン部２００の能力を１００％発揮させるためには、原稿読取部１００のスキャン速度を４倍にする。また、符号化部３０５も１ページのカラー画像を符号化するに要する時間をＴｐ／４とするため、高いクロック周波数で駆動すすればよい。しかし、これでは符号化部３０５の負担が大きなものとなり、コストアップは避けられない。
【００５２】
本実施形態では、カラー画像、モノクログレースケール画像のいずれの印刷であっても、符号化部３０５、及び、プリンタエンジン部２００の処理能力を十分に発揮させるものである。これを、制御部３０１が、スイッチ部３０４、３０８を制御することで実現する。以下にその詳細を説明する。
【００５３】
まず、カラー画像の印刷を行なう場合、制御部３０１は、スイッチ部３０４に対して、カラー画像印刷モードを示す制御信号を発行する。スイッチ部３０４は、この制御信号を入力した場合、ＣＭＹＫの各成分のデータをそのまま通過出力するだけである。カラー画像の符号化、及び、復号、画像形成は既に説明している通りである。また、符号列生成部３１０は、符号化データを記憶装置３０６にファイルとして格納する際、そのファイルヘッダに、カラー画像データの水平方向、垂直方向の画素数を格納する。また、符号列生成部３１０は、更に、各成分のビット数、ダミーデータの個数情報として“０”、識別情報としてカラーを示す情報をファイルヘッダに格納する。
【００５４】
カラー画像の印刷の場合の復号部３０７は、復号対象のファイルのヘッダを制御部３０１に通知すると共に、ヘッダ内の情報情報に基づき、符号化データを復号し、ＣＭＹＫのデータに復元する。制御部３０１は、復号部３０７からの識別情報が「カラー」である場合、スイッチ部３０８に対して、印刷モードがカラー印刷モードであることを通知する。スイッチ部３０８は、この情報を受信した場合には、復号部３０７で復号されたＣＭＹＫの各成分のデータを、そのまま画像データ出力部３０８に出力する。
【００５５】
一方、モノクロ画像を印刷する場合、制御部３０１は、スイッチ部３０４に対して、モノクロ画像印刷モードであることを示す制御信号を出力する。
【００５６】
スイッチ部３０４は、この制御信号を入力した場合、ラスタースキャン順に入力されるＣ、Ｍ、Ｙ、Ｋの各成分のデータ中、Ｃ、Ｍ、Ｙのデータを破棄（無視）する。そして、スイッチ部３０４は、図３に示すように、連続する４つのＫ成分を入力する度に、それら４つのデータをあたかもＣ、Ｍ、Ｙ、Ｋのデータとして出力する。
【００５７】
入力する画像の水平方向画素数がＷ、垂直方向画素数がＨとすると、Ｃ、Ｍ、Ｙ、Ｋの各成分の画像サイズは、Ｗ／４×Ｈとなる。これらＷ、Ｈは、原稿のサイズ、及び、原稿読み取り部１００の読取り解像度で一義的に決まることは理解できよう。
【００５８】
なお、符号化対象のモノクログレースケールの水平方向の画素数が必ずしも４の倍数になるとは限らない。このような場合には、１ラインの末端のダミーデータを付加する。典型的には、スイッチ部３０４は、Ｋ成分データを記憶保持する４つのレジスタを有し、尚且つ、４つのＫ成分データが揃ったときにＣＭＹＫの各成分として出力し、その直後に、４つのレジスタをゼロクリアする。そして、色変換部３０３から入力したＫ成分が１ラインの末端位置にあるとき、スイッチ部３０４は、４つのレジスタ全てにＫ成分のデータが格納されていなくても、強制的にそれら４つのレジスタのデータを出力すればよい。
【００５９】
また、符号列生成部３１０は、符号化データを記憶装置３０６にファイルとして格納する際、そのヘッダに、画像カラー画像データの水平方向の画素数としてＷ／４、垂直方向の画素数としてＨを格納する。また、符号列生成部３１０は、各成分のビット数、ダミーデータの個数情報、識別情報として「モノクロ」を示す情報を格納する。
【００６０】
復号部３０７は、復号対象のファイルのヘッダを制御部３０１に通知すると共に、そのヘッダ内の情報に基づき、通常のカラー画像データへの復号処理と同様の復号処理を行なう。制御部３０１は、復号部３０７から通知された識別情報が「モノクロ」である場合、スイッチ部３０８に対して、印刷モードがモノクロ印刷モードであること、及び、ダミーデータの個数を通知する。また、プリンタエンジン部２００に対して、現像ユニット２０６Ｋのみを感光ドラム２０５に当接するように要求信号を発行し、モノクロ印刷を行なうように設定する。スイッチ部３０８は、この通知を受けた場合、復号部３０７からＣＭＹＫのデータを入力する度に、それらが全てＫ成分のデータであるものとし、出力する。ただし、復号した注目画素が１ラインの端部（Ｗ／４画素目）にあるとき、入力したＣ、Ｍ、Ｙ、Ｋの４つのデータ中、ダミーデータの個数を引いた残りの個数のＫ成分データを出力する。
【００６１】
なお、制御部３０１は、ユーザがモノクロ複写モードを指定し、複写開始指示を入力したことを検出した場合、原稿読取部１００に対して、カラー複写時の４倍の速度でスキャンするよう指示要求を発行する。原稿読取部１００は、この要求を受け、露光部１２２の副走査方向の速度を、カラー複写時の速度の４倍の速度４Ｖ（図１参照）で移動する。また、原稿読取部１００は、リニアＣＣＤイメージセンサ１２４乃至１２６からの画像データの出力クロック周波数を、カラー画像時のそれの４倍にし、各色成分データを読出す。
【００６２】
この結果、モノクロ複写モード時の単位時間あたりの読取り画素数は、カラー複写時の４倍になるが、符号化部３０５にかかる負担は、カラー複写モード時と同じである。以下にその理由を説明する。
【００６３】
図４（ａ）はカラー複写モード時の色変換部３０３が出力するＣＭＹＫのデータシーケンスを示している。各ＣＭＹＫデータ間の時間間隔は、カラー複写時のリニアＣＣＤイメージセンサ１２４乃至１２６のクロックＣＬＫの逆数となる。
【００６４】
一方、モノクロ複写時モード時では、リニアＣＣＤイメージセンサ１２４乃至１２６からの読出しクロックは４倍である。従って、同図（ｂ）のように、Ｋ成分の時間間隔（ＣＭＹの各成分は省略）は、同図（ａ）のそれの１／４、すなわち、１／（ＣＬＫ×４）となる。
【００６５】
スイッチ部３０４は、４つのＫ成分のデータが入力される毎に、それをＣ、Ｍ、Ｙ、Ｋのデータとして出力する。従って、スイッチ部３０４が出力するＣＭＹＫのデータの時間間隔は、同図（ａ）と同じ、１／ＣＬＫとなる。なお、符号化部３０５は、ＣＭＹＫのデータを同時に入力することを要求していないのであれば、スイッチ部３０４は１つのＫデータが入力される度に、Ｃ、Ｍ、Ｙ、Ｋのデータバスの１つを順番に選択し、出力すれば良い。
【００６６】
このように、符号化部３０５は、カラー複写モード、モノクロ複写モードのいずれであっても、クロックＣＬＫに従って符号化を行なうことになる。つまり、符号化部３０５に係る単位時間当たりの負担は、カラー画像、モノクロ画像の区別なく、同じとすることができる。更に、このような状況でありつつも、これまで説明したように、１ページのモノクログレースケール画像データの符号化に要する時間は、カラー画像のそれの１／４の時間とすることができる。それ故、プリンタエンジン部２００によるモノクロ印刷時には、カラー複写時と比較して、単位時間当たり４倍の枚数の印刷を行なえ、プリンタエンジン部２００の性能をフルに発揮することができる。
【００６７】
以上説明したように本発明によれば、単に、カラー画像用の符号化部３０５をモノクログレースケール画像の符号化処理に流用することが可能になる。また、符号化部３０５の符号化対象となるカラー画像の成分の数をＮ個（実施形態ではＮ＝４）とするとき、モノクログレースケール画像を符号化する場合には、ほぼ１／Ｎの時間で符号化を完了させることができる。
【００６８】
＜第１の実施形態の変形例＞
上記は複写機に適用した例であったが、パーソナルコンピュータ等の情報処理装置のアプリケーションに適用した例を以下に説明する。
【００６９】
図５は情報処理装置のブロック構成図である。図中、６０１は装置全体の制御を司るＣＰＵ、６０２はＢＩＯＳやブートプログラムを格納しているＲＯＭ、６０３はＣＰＵ６０１のワークエリアとして使用されるＲＡＭである。６０４は、ＯＳ（オペレーティングシステム）や、各種アプリケーション（本変形例のアプリケーションプログラムを含む）を格納したり、各種アプリケーションで作成されたデータファイルを記憶保持するハードディスクドライブである。６０５はキーボード、マウスである。６０６は表示制御部であり、内部にビデオメモリ、ビデオメモリへの描画処理を行なうコントローラを内蔵し、表示装置６０７にビデオ信号を出力する。表示装置６０７はＣＲＴ表示装置でも良いし、液晶表示装置でも構わない。６０８はネットワークインタフェースである。６０９はイメージスキャナ６１０を接続するためのイメージスキャナインタフェースであり、典型的には、ＵＳＢ、ＳＣＳＩインタフェースであろう。
【００７０】
上記構成において、本装置に電源が投入されると、ＣＰＵ６０１はＲＯＭ６０２に格納されたＢＩＯＳやブートプログラムに従って、ＨＤＤ６０４からＯＳ（オペレーティングシステム）をＲＡＭ６０３にロードする。この結果、本装置が情報処理装置として機能する。ＯＳの制御下で、ＣＰＵ６０１は表示制御部６０６に各種描画処理命令を発行したり、ビットマップデータを転送したりして、表示装置６０７にＧＵＩを表示する。また、ＣＰＵ６０１は、ＯＳの制御下で、キーボード、マウス６０５からの入力を受け付け、その結果に基づいて表示制御部６０６を制御することで、マンマシンインタフェースを構築する。
【００７１】
また、ユーザにより、画像処理アプリケーションの起動が指示されると、ＣＰＵ６０１は、そのアプリケーションプログラムをＨＤＤ６０４からＲＡＭ６０３にロードし、実行することになる。
【００７２】
以下、実施形態におけるアプリケーションプログラムの復号処理の手順を図６のフローチャートに従って説明する。なお、実施形態におけるアプリケーションプログラムに含まれる符号化、復号に係る部分は、カラー画像データ（Ｒ、Ｇ、Ｂ）をＪＰＥＧ−ＬＳのみであるものとして説明する。また、画像符号化処理で生成された符号化データは、ＲＡＭ６０３の適当な領域に格納されていくものとする。
【００７３】
まず、ステップＳ１では、イメージスキャナ６１０による読取りモードを設定する。この設定は、ＧＵＩウインドウ（不図示）を表示装置６０７に表示させ、ユーザがキーボード＆マウス６０５を操作することで決定する。読取りモードには、カラー読取りモード、モノクログレースケール読取りモードがある。また、原稿サイズ、読み取り解像度等についても設定するようにしても構わない。
【００７４】
さて、読取りモードの設定を終え、ユーザが読取り開始指示を入力すると、ステップＳ２に進む。このステップＳ２では、ＣＰＵ６０１はイメージスキャナＩ／Ｆ６０９を介して、イメージスキャナ５１０に読取りモード、及び、読取り開始要求コマンドを発行すると共に、設定された読取りモードがいずれであるのかを判定する。なお、一般に、イメージスキャナのスキャン速度は、モノクログレースケール読取りモードが、カラー読取りモードよりも早い。
【００７５】
設定した読取りモードがカラー読取りモードであると判定した場合には、ステップＳ３に進む。このステップＳ３では、イメージスキャナ６１０から転送されてくるＲＧＢデータ（各８ビット）を、ＲＡＭ６０３に確保した受信バッファに格納すると共に、カラー画像データのＪＰＥＧ−ＬＳ符号化関数に渡すことで、可逆符号化を行なわせる。
【００７６】
以下、このステップＳ３の処理を、ステップＳ４で、１ページの最終画素のデータを入力したと判定するまで、繰り返す。
【００７７】
１ページの符号化が終了すると、ＲＡＭ６０３には、１ページのカラー画像データの符号化データが格納されていることになる。そこで、ステップＳ５において、ＲＡＭ６０３に格納された符号化データに適当なヘッダ（第１の実施形態と同様の情報）を付加し、ファイルとしてＨＤＤ６０４に格納する。
【００７８】
一方、ステップＳ２において、読取りモードがモノクログレースケールであると判断した場合には、ステップＳ６に進む。このステップＳ６では、イメージスキャナ６１０から転送されてくる輝度成分データ（８ビット）を、３つ入力する毎に、その３つのデータをあたかもＲ、Ｇ、Ｂの成分として、ＪＰＥＧ−ＬＳ符号化関数に渡すことで、可逆符号化を行なわせる。
【００７９】
以下、このステップＳ６の処理を、ステップＳ７で、１ページの最終画素のデータを入力したと判定するまで、繰り返す。
【００８０】
１ページの符号化が終了すると、ＲＡＭ６０３には、１ページのカラー画像データの符号化データが格納されていることになる。そこで、ステップＳ８において、ＲＡＭ６０３に格納された符号化データに適当なヘッダ（第１の実施形態と同様の情報）を付加し、ファイルとしてＨＤＤ６０４に格納する。
【００８１】
第１の実施形態では、復号対象の画像データがＹＭＣＫデータの４成分であったのに対し、本変形例ではＲＧＢの３成分としている。従って、ヘッダには、画像カラー画像データの水平方向の画素数としてＷ／３、垂直方向の画素数としてＨ、各成分のビット数、ダミーデータの個数情報、識別情報として「モノクロ」を示す情報を格納する。
【００８２】
次に、復号処理を図７のフローチャートに従って説明する。
【００８３】
まず、ステップＳ１１において、適当なファイル一覧のＧＵＩを表示し、復号対象のファイルをユーザに選択させ、ＧＵＩ上の不図示の復号開始ボタンがクリックされるのを待つ。
【００８４】
復号開始が指示されると、処理はステップＳ１２に進み、選択したファイルのヘッダを解析し、復号処理に必要な情報を取得する。
【００８５】
次いで、ステップＳ１３に進み、選択されたファイルから符号化データを読込み、ステップＳ１４でＪＰＥＧ−ＬＳ復号処理を行なう。
【００８６】
ステップＳ１５では、選択されたファイルのヘッダの識別情報が「モノクロ」であるか「カラー」であるかを判断する。「カラー」である場合には、ステップＳ１６に進み、復号した結果をそのまま出力する。復号結果を表示する場合には、復号結果の出力先はＲＡＭ６０３となり、そのＲＡＭ６０３に格納された復号して得られた画像データを表示制御部６０６内のビデオメモリに転送すればよい。また、復号結果をファイルとして格納するのであれば、ＨＤＤ６０４に新たなファイルの一部として格納すれば良い。
【００８７】
一方、ステップＳ１５にて、識別情報が「モノクロ」であると判定した場合には、ステップＳ１７に進み、復号して得られた｛Ｒ、Ｇ、Ｂ｝のデータを、３つの輝度信号に並べ替え、出力する。なお、出力対象が表示装置である場合、１画素につきＲＧＢのデータが必要になるので、表示の場合には１つの輝度の値を、Ｒ、Ｇ、Ｂの３つにコピーし出力する。
【００８８】
以上のステップＳ１３以降の処理を、１ページの画像の復号処理が完了したとステップＳ１８で判断するまで繰り返すことになる。
【００８９】
以上説明したように、本変形例でも、第１の実施形態と同様の作用効果を奏することが可能となる。すなわち、１つのカラー画像用の符号化関数プログラム（サブルーチン）を利用しつつも、カラーとモノクログレースケールの画像のいずれも符号化することができる。また、カラー画像の成分の数がＮとした場合、モノクログレースケールの符号化に要する時間を最大、１／Ｎまで短縮することも可能になる。
【００９０】
＜第２の実施形態＞
上記第１の実施形態、及び、その変形例では、可逆符号化技術としてＪＰＥＧ−ＬＳを利用するものとして説明した。ＪＰＥＧ−ＬＳは、その符号化処理の一部に、ランレングス符号化処理を利用している。このランレングス符号化は、スキャン方向（水平方向）に同じ色の画素が連続する場合に符号化効率が良い。しかし、第１の実施形態及びその変形例では、モノクログレースケールの画像を符号化する際、４又は３画素毎に擬似的な４つ、又は３の成分を有する１画素を作成することになるので、同じ値を持つ擬似的なカラー画素が水平方向に連続する確率は小さくなる。つまり、モノクログレースケール画像の圧縮率は低くなる。
【００９１】
そこで、本第２の実施形態では、図８に示す如く、グレースケール画像の４水平ラインの主走査方向座標が同じ位置のデータを、擬似的にＣ、Ｍ、Ｙ、Ｋの色成分として、符号化部３０５に出力することで符号化させる。
【００９２】
本第２の実施形態の装置構成は、第１の実施形態と同じとする。ただし、スイッチ３０４は、少なくともラインバッファを３つ内蔵する。カラー複写モードでは、第１の実施形態と同じで、入力した４成分のデータをそのまま出力する。そして、モノクロ複写モードでは、スイッチ部３０３は、色変換部３０３から出力された３ライン分のＫ成分データ（Ｃ、Ｍ、Ｙ成分は無視する）を各ラインバッファに格納する。そして、スイッチ部３０３は４ライン目のＫ成分を入力したとき、それに同期して、３つのラインバッファから３つのＫ成分を読み出す。そして、スイッチ部３０４は、現入力したＫ成分と読出した３つのＫ成分の計４個のＫ成分データを、擬似Ｃ、Ｍ、Ｙ、Ｋ成分のデータとして、符号化部３０５に出力する。
【００９３】
なお、符号化対象の画像データの垂直方向の画素数Ｈが４の倍数にならない場合には、ダミーのラインデータを出力し、最終的なヘッダにそのダミーデータのライン数を示す情報を格納する。また、図８に示すように、擬似的な、Ｃ、Ｍ、Ｙ、Ｋの各成分の画像の垂直方向の画素数が、オリジナルの画像の１／４になる。また、モノクロ複写モードでの、本第２の実施形態における符号化部３０５に係る単位時間あたりの負荷は、第１の実施形態でのモノクロ複写モードと実質的に同じとすることができる。なお、記憶装置３０６に格納するファイルのヘッダ中の、垂直方向の画素数としてＨ／４を設定することになる。
【００９４】
一方、スイッチ部３０８にも、適当なラインバッファを内蔵する。スイッチ部３０８は、カラー複写モードの場合には、第１の実施形態と同様、復号部３０７で復号された結果をそのまま出力する。また、モノクロ複写モードの場合には、１ライン分の擬似ＣＭＹＫデータが復号できたとき、それを４ライン分のＫ成分として出力すれば良い。
【００９５】
以上本第２の実施形態を説明したが、先に説明した第１の実施形態の変形例と同様に、本第２の実施形態に相当する処理をコンピュータプログラムによっても実現できることはこれまでの説明から明らかであろう。
【００９６】
＜第３の実施形態＞
上記第２の実施形態によれば、ランレングス符号化の効率を上げることができる。しかし、可逆符号化には、ランレングス符号化以外にも予測符号化もある。予測符号化方式の参照窓や、回転を考慮した自己相関を基にした符号化の場合、符号化対象画像の縦横アスペクト比が崩れることにより、符号化効率が低くなる可能性が高い。
【００９７】
予測符号化方式では、通常注目ピクセルに対し、前、上、左上、右上など（左右上下対称）の参照窓を用いる。この窓が想定しているアスペクト比からずれがある場合、予測値の算出に誤差が生じ、予測誤差が大きくなる。従って、予測符号化を利用する場合、第１、第２の実施形態の処理では、擬似ＣＭＹＫ画像のアスペクト比に崩れることで、圧縮率が低くなる可能性が高いことが理解できよう。
【００９８】
そこで、本第３の実施形態では、図９に示すように、モノクロ複写モードでは、２×２の２次元の窓内の２×２の４つのＫ成分データを、あたかも４つの成分を有する１画素として符号化を行なう。
【００９９】
このためには、スイッチ部３０４には、２ライン分のメモリを内蔵する。そして、複写モードがモノクロ複写モードである場合に、２ライン分のＫデータが格納されると、そこから２×２のＫ成分を読出し、擬似的なＣ、Ｍ、Ｙ、Ｋの各成分として符号化部３０５に出力する。また、記憶装置３０６に符号化データを格納する際には、そのファイルヘッダに、画像サイズとしてＷ／２、Ｈ／２を格納する。
【０１００】
また、スイッチ部３０８も適当なメモリを内蔵する。そして、モノクロ複写モードのページを印刷する場合には、２ライン分の擬似ＣＭＹＫのデータ格納したとき、擬似１画素の４成分データを、４つのＫ成分として出力すればよい。
【０１０１】
以上説明したように本第３の実施形態によれば、符号化部３０５が予測符号化方式を採用している場合、第１、第２の実施形態と同様の作用効果を奏することが可能となる。
【０１０２】
＜第４の実施形態＞
上記第１の実施形態及びその変形例、並びに、第２、第３の実施形態では、符号化部３０５は、可逆符号化を行なうものとして説明した。
【０１０３】
オリジナル画像（原稿読取部１００で読取った画像、或いは、レンダリングによって得られた画像）がカラーの自然画の場合、人間の視覚に影響が少ない成分をカットすることで符号化すると圧縮率を高めることできる。つまり、このようなカラー自然画については、非可逆符号化を行なったとしても、最終的に出力（印刷）される画像の品位低下は無視できる。
【０１０４】
一方、これまでの説明の通り、グレースケール画像の場合、擬似的なカラー画像に変換するので、非可逆符号化してしまうと、元のグレースケールの画像に復元することはできない。
【０１０５】
そこで、本第４の実施形態の符号化部３０５は、オリジナル画像がカラー画像である場合には非可逆符号化、可逆符号化を適応的に切り替えて符号化しつつ、オリジナル画像がグレースケール画像の場合には可逆符号化を行なう。
【０１０６】
装置構成は、図１、図２と同じとし、その説明は省略する。すなわち、スイッチ部３０４、３０８は、第１乃至第３の実施形態のいずれかと同様に動作するものとして説明する。従って、入力部１０１が入力する１画素のデータはＹ、Ｃ、Ｍ、Ｋの成分は、文字通りオリジナル画像の１画素の成分に対応している場合と、グレースケール画像の４つのＫ成分から擬似的に生成された場合のいずれかである点に注意されたい。
【０１０７】
ただし、本第４の実施形態の場合、符号化部３０５は上記の機能を実現するため、その構成につて説明する必要があろう。そこで、本第４の実施形態における符号化部３０５の構成を、図１０に示し、以下に説明する。
【０１０８】
図１０において、入力部５０１は、複数ライン分のラインバッファーメモリを内蔵する。そして、入力部５０１は、先に説明したように、スイッチ部３０４からの画像データをラスター順に入力し、内部のラインバッファーに格納し、Ｎ×Ｍ画素のブロック（実施形態では１６×１６画素ブロックとした）単位に出力する。
【０１０９】
解像度変換部５０２は、入力部５０１より入力した画素ブロック（１６×１６画素のデータ）の画素数を、水平、垂直とも１／２のサイズに変換する。すなわち、１６×１６画素のデータを８×８画素のデータに変換する。この変換は、画素ブロック中の２×２画素の各成分の平均値Ｃave、Ｍave、Ｙave、Ｋaveを求め、その各平均値を成分とする１画素を生成する処理を行なうものとする。なお、解像度変換のアルゴリズムはこれ以外の手法を採用しても構わない（例えばニアレストネイバー法等）。
【０１１０】
差分算出部５０３は、解像度変換後の８×８画素の画像データと、解像度変換前の１６×１６画素の画像データの差分情報Ｄを求める。
【０１１１】
解像度変換後の画素値をＶ（）、解像度変換前の画素値をＶ’（）として表わすと、差分情報Ｄは次のように算出できる。
Ｄ＝Σ|Ｖ(i,j)-Ｖ'(2i,2j)|+|Ｖ(i,j)-Ｖ'(2i,2j+1)|+|Ｖ(i,j)-Ｖ'(2i+1,2j)|+|Ｖ(i,j)-Ｖ'(2i+1,2j+1)|  …（１）
（ここで、Σは、i,j=0,1,2…7の合算を示す）。
【０１１２】
実際は、上記式（１）を各成分毎に算出する。実施形態の場合、色成分はＣ，Ｍ，Ｙ，Ｋの４つであるので、差分演算部１０３は式（２）に従って各成分毎のＤ（Ｃ）、Ｄ（Ｍ）、Ｄ（Ｙ）、Ｄ（Ｋ）を求める。そして、それらの加算結果Ｄ（Ｒ）＋Ｄ（Ｇ）＋Ｄ（Ｂ）を差分情報Ｄｔとして特定画像判定部５０８に出力する。
【０１１３】
第１の符号化部５０４は、非可逆符号化部であって、本第４の実施形態ではＪＰＥＧ符号化方式を採用した。すなわち、第１の符号化部５０４は、解像度変換部５０２より出力された８×８画素のデータを、ＤＣＴ変換、量子化、そして、エントロピー符号化を行ない、生成された符号化データをメモリ制御部５２０に出力する。ただし、第１の符号化部５０４は、非可逆符号化データであることを示す識別ビットを、その符号化データの先頭に付加して、出力する。なお、ＪＰＥＧ符号化は、自然画に適した符号化方式として知られている。
【０１１４】
また、第１の符号化部５０４が符号化データ（識別ビットを含む）をメモリ制御部５２０に出力する際、第１の符号長検出部５０６はその符号化データ量を検出し、その結果を符号化シーケンス制御部５１０に出力する。
【０１１５】
第２の符号化部５０５は、第１の符号化部５０４と異なり、入力部５０１より入力した１６×１６画素の画像データを可逆符号化する。可逆符号化であるので、オリジナルの１６×１６画素のデータに完全に復元できる。本第４の実施形態では、この第２の符号化部５０５は、ＪＰＥＧ−ＬＳを採用した。ＪＰＥＧとＪＰＥＧ−ＬＳは全く異なる符号化方式である点は先に説明した通りである。
【０１１６】
ただし、実施形態における第２の符号化部５０５は、１６×１６画素の画像データをＪＰＥＧ−ＬＳ符号化した場合、その画像データからラン率Ｒｒ、２色率Ｃｒを算出し、それを特定画像判定部５０８に出力する。ここで、ラン率Ｒｒ、２色率Ｃｒの算出方法を以下に説明する。
【０１１７】
第２の符号化部５０５は、１６×１６画素の画像データ内をラスタースキャン中、図１１に示すウインドウ６００を用いて、注目画素Ｘと、既に符号化済みであって、その注目画素Ｘの周囲の画素Ｘａ、Ｘｂ、Ｘｃ、Ｘｄの色を検出する処理を行なう。そして、周辺画素Ｘａ、Ｘｂ、Ｘｃ、Ｘｄに含まれる色数が“１”であるとき、即ち、Ｘａ＝Ｘｂ＝Ｘｃ＝Ｘｄのとき、注目画素Ｘとその直前の画素Ｘａとが同じとなる回数（ラン）の計数の開始する。ランの計数の終了は、Ｘ≠Ｘａとなるか、注目画素Ｘがラインの終端になったときである。ランの計数が終了したとき、計数したランに対応する符号語を出力する。また、ランレングス符号化を行なっていない状況であって、周辺画素Ｘａ、Ｘｂ、Ｘｃ、Ｘｄに含まれる色数が“１”以外の場合には、第２の符号化部５０は、周辺画素Ｘａ、Ｘｂ、Ｘｃ等を用いて注目画素Ｘの予測値を求める。そして、第２の符号化部５０５は、その予測値と注目画素の実際の値との差をハフマン符号化し、その符号語を出力する。
【０１１８】
さて、本実施形態では、上記のような処理を行なうことを利用し、１６×１６画素の画像データ中、ランレングス符号化された個数の割合をラン率Ｒｒとして求める。
【０１１９】
Ｒｒ＝ランレングス符号化した画素数の総数／２５６
ラン率Ｒｒは、後述するように、そのランレングス符号化された画素数が多いか少ないかを示す指標として利用されるので、実際には、
Ｒｒ＝ランレングス符号化した画素数の総数
としても構わない。
【０１２０】
また、先に説明したように、第２の符号化部５０５が符号化処理中、注目画素Ｘの周囲画素Ｘａ、Ｘｂ、Ｘｃ、Ｘｄの色数を検出している。本実施形態では、周囲Ｘａ、Ｘｂ、Ｘｃ、Ｘｄに含まれる色数が“２”となる回数Ｆを計数し、２色率Ｃｒを求める。
Ｃｒ＝Ｆ／２５６
２色率Ｃｒも、後述するように、その２色となる頻度の指標値として利用されるので、実際には、
Ｃｒ＝Ｆ
としても構わない。なお、２色となる例としては、Ｘａ≠Ｘｂ＝Ｘｃ＝Ｘｄや、Ｘａ＝Ｘｄ≠Ｘｂ＝Ｘｃ等である。
【０１２１】
特定画像判定部５０８は、差分算出部５０３からの差分情報Ｄｔと、第２符号化部５０５からのラン率Ｒｒ、２色率Ｃｒに基づき、注目画素ブロックが特定画像のパターンの性質を有するか否かを判定する。そして、その判定結果を判定情報Ｄｐとして符号化シーケンス制御部５１０に出力する。具体的には、特定画像判定部５０８は、次の条件を満たすとき、注目画素ブロックが特定の画像の性質を有するものと判定する。
条件：Ｄｔ＞Ｔｈ１、且つ、Ｒｒ＞Ｔｈ２、且つ、Ｃｒ＜Ｔｈ３    …（２）
ここで、Ｔｈ１、Ｔｈ２、Ｔｈ３は予め設定された閾値であるが、利用する環境に併せて適宜変更可能とする（例えば、操作パネルに、Ｔｈ１乃至Ｔｈ３に係る組み合わせ候補を表示し、ユーザに選択されば良い）。
【０１２２】
上記条件を満たす典型的な画像は、図１２に示すように、高い濃度と低い濃度が交互に並んでいるものである。このような画像を水平、垂直とも１／２に解像度変換してしまうと、各画素の値が平均化されてしまい、オリジナル画像との差が大きくなる。従って、このような画像の場合には、差分情報Ｄｔは大きな値となる。また、２色率Ｃｒは１００％に近い値になり、ラン率Ｒｒは０％に近い値になることも容易に理解できよう。
【０１２３】
逆に、自然画の場合、隣接する画素の色は、多少異なるものの、その差は小さいので、必然的に差分情報Ｄｔは小さくなり、２色率Ｃｒ、ラン率Ｒｒはそれぞれ適当な範囲内で変動するので、上記の条件は満足しない。
【０１２４】
このような黒と白等、２つの色の画素が交互に並んだ画像が、もし濃淡を表現する目的で生成されているとするなら、解像度変換後の符号化データを選択したとしてもさほど問題にはならない。しかし、その一方で、比較的小さい文字画像が並ぶ文書画像や単位面積当たりに描画される線数が多い線画の場合にも、図１２に近い状態に成り得る。このような文字／線画を解像度変換してしまうと文字や線画の境界の濃度が中間的な濃度になってしまい、画像のエッジがボケた状態になってしまい、可読性が悪くなり、望ましくない。
【０１２５】
そこで、本実施形態では、ユーザは操作部４００を操作し、カラー複写モードを選択した場合、上記のような特定パターンの性質を有する画像領域について可逆／非可逆のいずれを優先するかを設定可能とした。この設定情報は、制御部３０１から符号化シーケンス制御部５１０に通知される。ただし、ユーザがモノクロ複写モードを選択した場合には、後述する如く、無条件に可逆符号化データが選択される。
【０１２６】
さて、本第４の実施形態における符号化シーケンス制御部５１０は、第１の符号長検出部５０６、第２の符号長検出部５０７、特定画像判定部５０８、及び、制御部３０１からの情報に従い、注目画素ブロックの判定処理を行なう。
【０１２７】
メモリ制御部５２０は、符号化シーケンス制御部５１０の判定結果を入力し、第１の符号化部５０４からの非可逆符号化データ、第２の符号化部５０５からの可逆符号化データのいずれか一方を選択し、出力バッファメモリ５２１に格納する。また、メモリ制御部５２０は、出力バッファメモリ５２１に１ページ分の符号化データが格納された場合に、その符号化データを符号列生成部３１０に出力する。
【０１２８】
ここで、本第４の実施形態における符号化シーケンス制御部５１０の判定処理について更に詳しく説明する。
【０１２９】
［カラー複写モードの場合］
まず、符号化シーケンス制御部５１０は、制御部３０１より、カラー複写モードであり、可逆符号化を優先する旨の情報を受信した場合について説明する。
【０１３０】
なお、以下の説明において、第１の符号長検出部５０６で検出された非可逆符号化データの符号長をＬＨ、第２の符号長検出部５０７で検出された可逆符号化データの符号長ＬＫとする。また、特定画像判定部５０８は、先の条件（２）を満たすときＤｐ＝１、条件（２）を満たさないときＤｐ＝０の判定信号を符号化シーケンス制御部５１０に出力するものとする。
【０１３１】
さて、符号化シーケンス制御部５１０は、出力バッファメモリ５２１に出力する符号化データを、次のようにして決定する。
＜Ｄｐ＝１のとき＞
優先指定された可逆符号化データ（第２の符号化部５０５で得られた符号化データ）を出力バッファメモリ５２１に出力することに決定する。ただし、１ページ分の符号化が完了するまで、選択対象が変わることはなく、固定である。
＜Ｄｐ＝０のとき＞
・ＬＨ＜ＬＫの場合、非可逆符号化データ（第１の符号化部５０４で得られた符号化データ）を出力バッファメモリ５２１に出力することに決定する。
・ＬＨ≧ＬＫの場合、可逆符号化データ（第２の符号化部５０５で得られた符号化データ）を出力バッファメモリ５２１に出力することに決定する。
【０１３２】
以上の結果、カラー画像複写モードにおいては、特定パターンの性質を持つ画像領域では、可逆、非可逆の符号化データが混在することがなくなる。この結果、符号化方式の違いによる、画素ブロックの境界に不自然はブロックノイズが発生することを抑制できる。また、可逆符号データを優先するように設定した場合には、オリジナル画像の画質を実質的に維持することも約束される。更にまた、特定パターンの性質を備えていない画素ブロックについては、１／２に解像度変換した後の非可逆符号化データと、可逆符号化データのうち、符号量（符号長）の少ない方を選択するので、符号化効率を上げることが可能になる。
【０１３３】
上記は、カラー複写モード時の処理であったが、図２に示す如く、実施形態の複写機は、ホストコンピュータからのＰＤＬ形式の印刷データを受信して印刷する機能も有している。通常、ホストコンピュータが印刷データを生成する際、ホストコンピュータ上で動作するプリンタドライバが、カラープリントするか、モノクロプリントするかを、印刷データ中に記述する。従って、レンダリング部３０１は、レンダリング処理を行なう場合、そのページがカラーかモノクロかを判定できるので、それを制御部３０１に通知すればよい。また、ホストコンピュータのプリンタドライバは、可逆／非可逆符号のいずれを優先するかを選択可能なＧＵＩを表示する（デフォルトでは可逆とすれば良い）。プリンタドライバは、その選択内容も印刷データ中に記述する。レンダリング部３０１は、その選択情報も制御部３０１に通知すればよい。かかる点は、以下に説明するモノクロ複写モードでも同様である。
【０１３４】
［モノクロ複写モードの場合］
次に、符号化シーケンス制御部５１０が、制御部３０１より、モノクロ複写モードの通知を受けた場合について説明する。
【０１３５】
モノクロ複写モードの場合、入力部５０１が入力する１画素を構成するＣＭＹＫの４成分は、擬似的なものであり、それらＣＭＹＫの各成分のデータは本来は４つの連続するＫ成分データである。
【０１３６】
従って、モノクロ複写モードでは、符号化シーケンス制御部５１０は、特定画像判定部５０８、第１の符号長検出部５０６、第２の符号長検出部５０７からの情報は無視する。そして、符号化シーケンス制御部５１０は、可逆符号化データ（第２の符号化部５０５で得られた符号化データ）を出力バッファメモリ５２１に出力することに決定する。
【０１３７】
ここで、原稿読取部１００が原稿をモノクロモードで読取った水平方向の画素数をＷ、垂直方向の画素数をＨとする。
【０１３８】
本第４の実施形態が、第１の実施形態を基礎にするのであれば、グレースケール画像（Ｋ成分のみの画像）に対し、スイッチ部３０４が、図３に示すような形式でＣＭＹＫのデータを生成することになる。従って、本第４の実施形態の符号化部３０５は、あたかも水平方向の画素数がＷ／４、垂直方向の画素数がＨのサイズのカラー画像を可逆符号化する。
【０１３９】
また、本第４の実施形態が、第２の実施形態を基礎にするのであれば、スイッチ部３０４は、モノクログレースケール画像から図８に示すような形式でＣＭＹＫのデータを生成することになる。従って、本第４の実施形態の符号化部３０５は、あたかも水平方向の画素数がＷ、垂直方向の画素数がＨ／４のカラー画像を可逆符号化することになる。
【０１４０】
そして、本第４の実施形態が、第３の実施形態を基礎にするのであれば、スイッチ部３０４は、モノクログレースケール画像から図９に示すような形式でＣＭＹＫのデータを生成することになる。従って、本第４の実施形態の符号化部３０５は、あたかも水平方向の画素数がＷ／２、垂直方向の画素数がＨ／２のカラー画像を可逆符号化することになる。
【０１４１】
いずれの場合であっても、記憶装置３０６にファイルを格納する際、モノクログレースケールの符号化データのヘッダには、第１乃至第３の実施形態のいずれかに対応する画像サイズ情報を含めて格納する。
【０１４２】
さて、本第４の実施形態における復号部３０７は、可逆、非可逆符号化データが混在したファイルを読込み、復号する機能を備えることになる。
【０１４３】
それ故、各画素ブロックのヘッダを解析し、識別情報が可逆を示している場合にはＪＰＥＧ−ＬＳ方式に従って復号すればよい。また、識別情報が非可逆を示していれば、ＪＰＥＧ方式に従って復号すればよい。ただし、１画素ブロックの復号結果の画像サイズは８×８画素であるので、１６×１６画素に解像度変換する必要がある。この変換は、線形補間処理で良いであろう。なお、モノクロ複写モードで作成されたファイル内の全画素ブロックの符号化データのヘッダの識別情報は、可逆を示していることになる点に注意されたい。また、復号部３０７は、既に説明した第１乃至第３の実施形態に記載の通り、ファイルヘッダ内のカラー／モノクロ識別情報が「モノクロ」を示している場合には、その旨をスイッチ部３０８に通知する。
【０１４４】
スイッチ部３０８は、復号部３０７から、カラー／モノクロ識別情報が「モノクロ」である通知を受けた場合、復号部３０７からのＣＭＹＫのデータは、４つのＫ成分のデータとして並べ替え処理を行い、出力することになる。
【０１４５】
以上説明したように本第４の実施形態によれば、自然画を含むカラー画像の場合には、非可逆、可逆符号化処理を画素ブロック単位に適応的に切り替えることで、１ページの画像の圧縮率を高くすることが可能となる。また、特定パターンの性質を有する画像領域では、少なくとも１ページの符号化処理中では、可逆、非可逆符号化データの一方のみを選択するので、画素ブロックの境界での不自然なノイズの発生も防ぐことができる。更にまた、モノクログレースケール画像については、カラー画像の符号化部を効率良く利用することが可能になる。また、カラー画像の色成分の数をＮとしたとき、同一サイズのカラー画像とモノクロ画像それぞれの符号化に要する時間は、後者が１／Ｎの時間で符号化することも可能になる。
【０１４６】
なお、本第４の実施形態では、符号化対象であるカラー画像は、ＣＭＹＫの４つの成分で表わされる例を説明したが、ＲＧＢやＹＣｂＣｒ等の３成分であっても構わない。ただし、プリンタエンジンを利用して印刷する場合には、復号して得られたＲＧＢやＹＣｂＣｒ等のカラー画像データを、記録色成分であるＣＭＹやＣＭＹＫに変換することになるであろう。
【０１４７】
＜第４の実施形態の変形例１＞
上記第４の実施形態は、複写機や印刷装置に適用するものであったが、第４の実施形態に相当する符号化処理、復号処理を、パーソナルコンピュータ等の汎用情報処理装置上で実行するアプリケーションプログラムに適用しても構わない。
【０１４８】
この場合の装置構成は、図５の構成で良いので、以下では、ＣＰＵ６０１が実行する、アプリケーションプログラム（ＨＤＤ５０４に格納されている）の符号化処理、復号処理について図１３乃至図１５のフローチャートに従って説明する。なお、説明を簡単なものとするため、本変形例では、カラー符号化処理は、ＲＧＢの３成分の画像データを符号化するものとする。また、モノクロ読取りモードでは、３つの輝度データを擬似的にＲ、Ｇ、Ｂのデータに並べ替えて符号化するものとする。
【０１４９】
まず、符号化処理を図１３、図１４のフローチャートに従って説明する。
【０１５０】
まず、ステップＳ３１では、イメージスキャナ６１０による読取りモードを設定する。この設定は、ＧＵＩウインドウ（不図示）を表示装置６０７に表示させ、ユーザがキーボード＆マウス６０５を操作することで決定する。読取りモードには、カラー読取りモード、モノクログレースケール読取りモードがある。また、原稿サイズ、読み取り解像度等についても設定するようにしても構わない。
【０１５１】
さて、読取りモードの設定を終え、ユーザが読取り開始指示を入力すると、ステップＳ３２に進む。このステップＳ３２では、ＣＰＵ６０１はイメージスキャナＩ／Ｆ６０９を介して、イメージスキャナ５１０に読取りモード、及び、読取り開始要求コマンドを発行すると共に、設定された読取りモードがいずれであるのかを判定する。なお、一般に、イメージスキャナのスキャン速度は、モノクログレースケール読取りモードが、カラー読取りモードよりも早い。
【０１５２】
設定した読取りモードがモノクロ読取りモードであると判定した場合には、ステップＳ３３に進む。このステップＳ３３では、イメージスキャナ６１０から転送されてくる３つの輝度成分データ（各８ビット）を、擬似的にＲ、Ｇ、Ｂデータとして入力し、ＲＡＭ５０３内の受信バッファに格納する。なお読取りモードがカラー読取りモードである場合には、イメージスキャナ６１０から入力したＲＧＢデータをそのまま受信バッファに格納する。
【０１５３】
ステップＳ３４では、１画素ブロック（１６×１６画素）のデータを受信バッファから入力し、ステップＳ３５で可逆符号化を行ない、可逆符号化データを生成する。なお、生成された符号化データは一時的にＲＡＭ５０３内の適当なエリアに格納する。また、可逆符号化処理中に、参照した周辺画素に含まれる色数が２となった注目画素位置、及び、ランレングス符号化を行なった際の注目画素位置をＲＡＭ５０３にフラグとして格納しておく。
【０１５４】
次いで、ステップＳ３６では、読み取りモードがモノクロ読取りモードであったか否かを判断する。
【０１５５】
ここで、読取りモードがモノクロ読取りモードであった場合について説明する。モノクロ読取りモードであると判断した場合、生成された可逆符号化データは、擬似的なＲＧＢデータの画素ブロックの符号化結果であることを意味する。従って、後述する、非可逆符号化処理、各特徴パラメータの算出処理は不要である。そこで、この可逆符号化データをＲＡＭ５０３内に確保された出力バッファに出力する。
【０１５６】
そして、ステップＳ４７に進み、全画素ブロックの符号化が完了したか否かを判断し、否の場合にはステップＳ３２以降の処理を繰り返す。そして、全画素ブロックについての符号化が完了した場合、ステップＳ４７に進み、ＨＤＤ５０４にファイルとして格納する。読取った原稿画像の水平方向画素数をＷ、垂直方向の画素数をＨとし、擬似ＲＧＢデータの各プレーンがＷ／３×Ｈとするなら、ファイルのヘッダには、画像サイズとして水平方向Ｗ／３、垂直方向Ｈを格納する。また、ダミーデータがあればダミーデータの個数情報、識別情報として「モノクロ」を示す情報をそれぞれヘッダに格納する。
【０１５７】
次に、読取りモードがカラー読取りモードである場合を説明する。
【０１５８】
カラー読取りモードの場合、処理はステップＳ３６からステップＳ３８に進むことになる。このステップＳ３８では、可逆符号化処理中にＲＡＭ５０３に格納したフラグを調べ、ラン率Ｒｒ、２色率Ｃｒを算出する。
【０１５９】
次いで、ステップＳ３９では、先のステップＳ３４で入力した画素ブロック（１６×１６画素）を水平、垂直とも１／２の解像度に変換する。ステップＳ４０では、解像度変換前の１６×１６画素ブロックの画像と、解像度変換後の８×８画素の画像との差分情報Ｄｔを先に示した式（１）を利用して算出する。そして、ステップＳ４１において、解像度変換後の８×８画素の画像データを非可逆符号化し、得られた非可逆符号化データをＲＡＭ５０３に一時的に記憶する。
【０１６０】
この後、処理はステップＳ４２に進み、上記のようにして得られた差分情報Ｄｔ、ラン率Ｒｒ、２色率Ｃｒが、先に示した条件（２）を満足するか否かを判定する。つまり、注目画素ブロックが特定パターンに属するものであるか否かを判断する。
【０１６１】
注目画素ブロックが特定パターンに属すると判断した場合には、ステップＳ４３に進み、優先指示のあった種類の符号化データを選択し、それをＲＡＭ５０３に確保された出力バッファに格納する。
【０１６２】
また、注目画素ブロックが特定パターンに属しないと判断された場合には、ステップＳ４４に進む。このステップＳ４４では、ＣＰＵは、ＲＡＭ５０３内に一時的に記憶されている可逆符号化データのデータ量と非可逆符号化データ量のデータ量を比較し、少ない方を出力バッファに出力する（ステップＳ４５、Ｓ４６）。
【０１６３】
この後、ステップＳ４７で、全画素ブロックについて符号化処理が終了したと判断するまで、ステップＳ３２以降の処理を繰り返すことになる。全画素ブロックについての符号化が完了した場合、ステップＳ４８に進み、ＨＤＤ５０４にファイルとして格納する。このとき、ファイルヘッダには、画像サイズとして読取った原稿画像の水平方向画素数をＷ、垂直方向の画素数をＨをそのまま格納し、ダミーデータがあればダミーデータの個数情報、識別情報として「カラー」を示す情報を格納する。
【０１６４】
次に、復号処理を図１５のフローチャートに従って説明する。
【０１６５】
まず、ステップＳ５１において、適当なファイル一覧のＧＵＩを表示し、復号対象のファイルをユーザに選択させ、ＧＵＩ上の不図示の復号開始ボタンがクリックされるのを待つ。
【０１６６】
復号開始が指示されると、処理はステップＳ５２に進み、選択したファイルのヘッダを解析し、復号処理に必要な情報を取得する。
【０１６７】
次いで、ステップＳ５３に進み、選択されたファイルから符号化データを読込む。
【０１６８】
そして、ステップＳ５４にて、読込んだ符号化データのヘッダを解析し、その符号化データが非可逆符号化データであるか、可逆符号化データであるかを判定する。
【０１６９】
可逆符号化データであると判断した場合には、ステップＳ５５に進み、可逆復号処理を行なう。そして、ステップＳ５６にて、先のステップＳ５２で解析したファイルヘッダの識別情報が「モノクロ」であるか否かを判断する。モノクロであると判断した場合、復号して得られたＲＧＢデータは、擬似的なものである。そこで、ステップＳ５７において、Ｒ、Ｇ、Ｂの各データを３つの輝度データとして出力する。なお、出力対象が表示装置である場合、１画素につきＲＧＢの３つの成分が必要になるので、表示の場合には１つの輝度の値を、Ｒ、Ｇ、Ｂの３つにコピーし出力する。
【０１７０】
また、ステップＳ５６において、ファイルヘッダの識別子が「カラー」を示していると判断した場合、復号したＲＧＢデータをそのまま出力する（ステップＳ５８）。
【０１７１】
さて、ステップＳ５４において、復号対象ファイルから読出したデータが非可逆符号化データであると判断した場合、処理はステップＳ５９に進む。
【０１７２】
ステップＳ５９では、非可逆復号処理を行なう。この結果、８×８画素のカラー画像データを得る。次いで、ステップＳ６０において、解像度変換処理を行なう。この解像度変換処理では、８×８画素の画像データを１６×１６画素の画像データに変換する。変換アルゴリズムは線形補間法で良い。そして、ステップＳ６１において、解像度変換した結果を出力する。
【０１７３】
ステップＳ６２では、１ページの復号処理が終了したか否かを判断する。否の場合には、ステップＳ５３以降の処理を繰り返す。また、１ページの復号処理が終了したと判断した場合には、本処理を終了する。
【０１７４】
以上説明したように、本変形例でも、第４の実施形態と同様の作用効果を奏することが可能となる。すなわち、１つのカラー画像用の符号化エンジンプログラムを利用しつつも、カラーとモノクログレースケールの画像のいずれでも符号化することができる。また、カラー画像の成分の数がＮとした場合、モノクログレースケールの符号化に要する時間を最大、１／Ｎまで短縮することが可能となる。
【０１７５】
また、上記手順に従えば、モノクログレースケールの画像を符号化する場合には、差分情報Ｄｔ、２色率Ｒｒ、ラン率Ｒｒの算出、及び、非可逆符号化処理も行なわないので、符号化処理は高速なものとなる。
【０１７６】
＜第４の実施形態の変形例２＞
本変形例では、特に、読取りモードがカラー読取りモードである場合には、目標符号量以下に符号化することを可能にする例を説明する。符号化部３０５の構成は図１０と同じとし、その説明は省略する。また、本変形例２は、モノクロ読取りモードでは、第４の実施形態と同じである。
【０１７７】
第１の符号化部５０４は先に説明したようにＪＰＥＧ方式に従った非可逆符号化部である。ＪＰＥＧ符号化処理では、ＤＣＴ変換した後の８×８個の変換係数を量子化することで、データ量を削減している。量子化処理では、やはり８×８個の量子化ステップ値で構成される量子化マトリクスを用いる。
【０１７８】
図１６はＤＣＴ変換後の周波数係数を量子化する際に用いる量子化マトリクステーブルＱ０、Ｑ１、Ｑ２を示している（符号化シーケンス制御部５１０に記憶保持されている）。ここで、量子化マトリクステーブル内の値Ｑｉ（０、０）〜Ｑｉ（７、７）（ｉ＝０、１、２…）が量子化ステップ値を意味する。量子化ステップ値は、概ね、Ｑ０＜Ｑ１＜Ｑ２…の関係にある。量子化ステップ値が大きくなればなるほど、量子化後の周波数係数値の取り得る範囲が狭くなり、圧縮率が向上する。
【０１７９】
従って、１ページの画像を符号化する際、第１の符号化部５０４は、量子化マトリクスＱ０を用いて符号化する。そして、１ページの符号化中に、出力バッファ５２０に格納されつつある総符号化データ量が目標符号量を超えた場合、再度、同じ原稿を読取りを開始し、量子化マトリクスＱ１を用いて符号化する。以下、目標符号量を超えたと判断する度に、使用する量子化マトリクスをＱ２、Ｑ３…と更新する。
【０１８０】
ここで、優先する符号化の種類が可逆符号化を選択していて、出力バッファ５２１内に格納されている符号化データのほとんどが可逆符号化データである場合には、量子化マトリクスをいくら更新しても、目標符号量以下にすることはできない。
【０１８１】
そこで、２回め以降の原稿画像の符号化を行なう際には、強制的に、優先する符号化の種類を非可逆符号化に変更する。
【０１８２】
以上の結果、カラー読取りモードで、最初に符号化処理中に、出力バッファ５２１に蓄積されていく符号化データのデータ量が目標符号量を超えてしまった場合には、再符号化時には全符号化データが非可逆符号化データとなる。従って、量子化マトリクスに依存して符号量を確実に減らすことが可能になり、最終的には、目標符号量以下にすることが可能になる。
【０１８３】
なお、出力バッファ５２１に蓄積される符号化データのデータ量を算出するのは、簡単である。なぜなら、符号化シーケンス制御部５１０は、メモリ制御部５２０に対して選択指示した符号化データの符号量（第１、第２の符号長検出部５０６、５０７からの情報）を、累積加算していけば良いからである。
【０１８４】
＜第５の実施形態＞
上記第１乃至第４の実施形態では、図１における画像処理部３００が、図２の構成であることを前提にするものであった。本第５の実施形態では、図１の画像処理部３００が、図１７の構成であるものとして説明する。
【０１８５】
図１７は、図２におけるスイッチ部３０４を除き、符号化部３０５を符号化部３０５’とするものである。それ以外は同じであるので、説明は省略する。
【０１８６】
本第５の実施形態における符号化部３０５’の構成を図１８に示す。この図１８は、ちょうど第４の実施形態における図１０に対応するものであり、同一構成要素については同一符号を付した。図１８の構成は、図１０に対し、第２の符号化部５０５の直前にスイッチ部５１１を設けている点とある。また、図１８の解像度変換部５０２’、差分算出部５０３’、第１の符号化部５０４’、及び、第１の符号化部５０４’は、図１０の対応する構成について機能が変わった点である（詳細は後述）。
【０１８７】
また、入力部３０３は、色変換部３０３からのＣＭＹＫのデータを入力することになる。
【０１８８】
さて、本第５の実施形態では、カラー読取りモード時の動作は、スイッチ部５１１は、入力部５０１より入力したＣＭＹＫのデータをそのまま第２の符号化部５０５に出力する。また、他の構成要素は第４の実施形態と同じ動作を行なうことなる。それ故、カラー読取りモード時の動作については第４の実施形態の動作を引用することとし、ここでは詳述しない。
【０１８９】
以下ではモノクロ読取りモード時の動作について説明する。まず、モノクロ読取りモードでの注意すべき点を以下に列挙する。
【０１９０】
解像度変換部５０２’は、ＣＭＹの３成分のデータは無視し、入力部５０１から１６×１６画素のＫ成分のデータについてのみ解像度変換を行なう。
【０１９１】
差分算出部５０３’は、解像度変換前のＫ成分の１６×１６画素のＫ成分の画像データと、解像度変換後の８×８画素との差分を差分情報Ｄｔとして特定画像判定部５０８に出力する。
【０１９２】
第１の符号化部５０４’は、解像度変換したＫ成分の画像データについて非可逆符号化処理を行なう。
【０１９３】
要するに、解像度変換部５０２’、差分算出部５０３’、第１の符号化部５０４’は、モノクロ読取りモードのときは、カラー読取りモード時の１／４の負荷でそれぞれが処理することになる。換言すれば、これら処理部は、カラー読取りモード時の１／４の時間で処理することが可能になる。
【０１９４】
さて、符号化シーケンス制御部５１０’は、制御部３０１からモノクロ読取りモードであることの通知を受けると、解像度変換部５０２’、差分算出部５０３’、第１の符号化部５０４’に対して、Ｋ成分についてのみ処理を行なうよう指示する。
【０１９５】
また、この結果、第１の符号化部５０４’からは、解像度変換後の８×８画素のＫ成分データについての非可逆符号化データが生成されることになる。
【０１９６】
また、符号化シーケンス制御部５１０’は、読取りモードがモノクロ読取りモードの場合、その旨をスイッチ部５１１に通知する。スイッチ部５１１は、この通知を受けた場合、入力したＣＭＹＫのデータのうち、ＣＭＹの成分データを無視し、連続する４つのＫ成分のデータを擬似的にＣＭＹＫの成分データとして並べ替え、第２の符号化部５０７に出力する。つまり、このスイッチ部５１１は、第４の実施形態におけるスイッチ部３０４と等価の動作を行なうものである。
【０１９７】
この結果、第１の符号化部５０４’、及び、第２の符号化部５０５は共に、入力部５０１が入力したＫ成分のデータについて符号化することになる。
【０１９８】
本第５の実施形態における符号化シーケンス制御部５１０’の制御は次の通りである（カラー複写モード時の制御は、第４の実施形態を参照されたい）。
【０１９９】
［モノクロ複写モードの場合］
なお、以下の説明において、第１の符号長検出部５０６で検出された非可逆符号化データの符号長をＬＨ、第２の符号長検出部５０７で検出された可逆符号化データの符号長ＬＫとする。また、特定画像判定部５０８は、先の条件（２）を満たすときＤｐ＝１、条件（２）を満たさないときＤｐ＝０の判定信号を符号化シーケンス制御部５１０’に出力するものとする。
【０２００】
さて、符号化シーケンス制御部５１０’は、出力バッファメモリ５２１に出力する符号化データを、次のようにして決定する。
＜Ｄｐ＝１のとき＞
優先指定された可逆符号化データ（第２の符号化部５０５で得られた符号化データ）を出力バッファメモリ５２１に出力することに決定する。ただし、１ページ分の符号化が完了するまで、選択対象が変わることはなく、固定である。
＜Ｄｐ＝０のとき＞
・ＬＨ＜ＬＫの場合、非可逆符号化データ（第１の符号化部５０４’で得られた符号化データ）を出力バッファメモリ５２１に出力することに決定する。
・ＬＨ≧ＬＫの場合、可逆符号化データ（第２の符号化部５０５で得られた符号化データ）を出力バッファメモリ５２１に出力することに決定する。
【０２０１】
以上の通り、本第５の実施形態での符号化シーケンス制御部５１０’は、カラー読取りモードと実質的に同じとなる。
【０２０２】
なお、ファイルヘッダの識別情報が「モノクロ」を示しているファイルを復号する場合であって、ヘッダが「可逆」を示している符号化データを復号した場合、スイッチ部３０８は１画素のＣＭＹＫの４成分のデータが、４つのＫ成分として出力すれば良い。
【０２０３】
以上説明したように本第５の実施形態によれば、モノクログレースケール画像についても、カラー画像用の符号化を利用しながらも、非可逆、可逆を適応的に切り替え、それらが混在した符号化データを生成することが可能になる。この結果、モノクログレースケール画像の圧縮率は、第４の実施形態のそれよりも高くすることが可能となる。
【０２０４】
なお、本第５の実施形態も第４の実施形態と同様、特定パターンの性質を持つ画像領域では、非可逆、可逆が混在することもなくなるので、符号化単位であるブロックの境界でノイズが発生することもない。
【０２０５】
＜第５の実施形態の変形例＞
上記第５の実施形態
上記第５の実施形態は、複写機や印刷装置に適用するものであったが、第５の実施形態に相当する符号化処理、復号処理を、パーソナルコンピュータ等の汎用情報処理装置上で実行するアプリケーションプログラムに適用しても構わない。
【０２０６】
この場合の装置構成は、図５の構成で良いので、以下では、ＣＰＵ６０１が実行する、アプリケーションプログラム（ＨＤＤ５０４に格納されている）の符号化処理を図２０のフローチャートに従って説明する。なお、説明を簡単なものとするため、本変形例では、カラー符号化処理は、ＲＧＢの３成分の画像データを符号化するものとする。また、モノクロ読取りモードでスキャンした場合、イメージスキャナからは輝度成分だけが転送されてくる。この輝度データを便宜的にＬ成分と表現する。
【０２０７】
まず、ステップＳ７１では、イメージスキャナ６１０による読取りモードを設定する。この設定は、ＧＵＩウインドウ（不図示）を表示装置６０７に表示させ、ユーザがキーボード＆マウス６０５を操作することで決定する。読取りモードには、カラー読取りモード、モノクログレースケール読取りモードがある。また、原稿サイズ、読み取り解像度等についても設定するようにしても構わない。そして、ユーザが読取り開始指示を入力すると、イメージスキャナ６１０からは読取った原稿の画像データ（カラーであれば、ＲＧＢの各成分データ、モノクロであればＬ成分データ）が出力されてくる。
【０２０８】
ステップＳ７２では、受信した画像データをＲＡＭ５０３内に確保された受信バッファに格納し、そこから例えば１６×１６画素の画像データを読出す。
【０２０９】
次いで、ステップＳ７３に進み、イメージスキャナより受信した画像データがモノクログレースケール画像データであるか、カラー画像データであるかを判断する。この判断は、ステップＳ７１で設定した読取りモードが何であったかに基づいて判断すればよい。
【０２１０】
モノクログレースケール画像であると判断した場合、処理はステップＳ７４に進み、カラ画像データであると判断した場合にはステップＳ８０に処理を進める。
【０２１１】
ステップＳ７４では、１６×１６画素のＬ成分データを解像度変換し、８×８画素のＬ成分データを生成する。そして、ステップＳ７５では差分情報Ｄｔを算出する。そして、ステップＳ７６にて、解像度変換後のＬ成分の画像データを非可逆符号化し、その結果をＲＡＭ５０３の適当な領域に一時的に格納する。このとき、符号化データのヘッダには、非可逆であることを示す識別情報を付加する。
【０２１２】
ステップＳ７７では、３つのＬ成分データを、擬似的にＲ、Ｇ、Ｂデータにパッキングする。そして、ステップＳ７８にて、カラー画像用の可逆符号化処理関数にパッキングした結果を渡し、可逆符号化データを生成させ、その生成された可逆符号化データをＲＡＭ５０３の適当な領域に一時的に格納する。また、この可逆符号化処理中に生成されるフラグに基づき、ラン率Ｒｒ、２色率Ｃｒも算出する（ステップＳ７９）。
【０２１３】
一方、ステップＳ７３にて、イメージスキャナより受信した画像データがカラー画像データであると判断した場合、処理はステップＳ８０に進む。
【０２１４】
ステップＳ８０では、１６×１６画素のカラー画像を解像度変換し、８×８画素のカラー画像を生成する。そして、ステップＳ８１では差分情報Ｄｔを算出する。そして、ステップＳ８２にて、解像度変換後のカラー画像データを非可逆符号化し、その結果をＲＡＭ５０３の適当な領域に一時的に格納する。このとき、符号化データのヘッダには可逆であることを示す識別情報を付加する。
【０２１５】
ステップＳ８３では、解像度変換前の１６×１６画素のカラー画像について可逆符号化を行なう。その生成された可逆符号化データはＲＡＭ５０３の適当な領域に一時的に格納される。また、この可逆符号化処理中に生成されるフラグに基づき、ラン率Ｒｒ、２色率Ｃｒも算出する（ステップＳ８４）。
【０２１６】
上記ステップＳ７９、又は、ステップＳ８４の処理の次の処理は、図１４のステップＳ４２以降の処理を行なえばよい。また、復号処理についても、図１５と同じになるので、その説明は省略する。
【０２１７】
以上本第５の実施形態の変形例を説明したが、第４の実施形態の変形例２と同様の技術を、本第５の実施形態に適用しても良いのは明らかである。
【０２１８】
以上本発明に係る実施形態、及び、その変形例を説明した。
【０２１９】
各実施形態での符号化部３０５、３０５’による符号化対象のカラー画像はＣ、Ｍ、Ｙ、Ｋの４成分で表わされるとし、変形例で示したプログラムでの実現例ではカラー画像はＲ、Ｇ、Ｂの３成分で表わされるものとして説明した。これは便宜的なものであり、これまでの説明からすれば、色成分の数、色空間の種類については問われないことは明らかであろう。
【０２２０】
また、実施形態では、符号化単位を１６×１６画素としたが、これも便宜的なものであり、そのサイズはこれに限らない。しかし、非可逆符号化としてＪＰＥＧを利用し、第４の実施形態の如く、解像度変換部５０２を設けるのであれば、８Ｍ×８Ｎ画素（Ｍ，Ｎは２以上の整数）のサイズを単位に符号化することが望まれる。
【０２２１】
また、第４の、第５の実施形態、及び、それらの変形例を採用する場合、入力部５０１が出力する画像サイズは、１６×１６画素よりも大きいサイズにすることが望ましい。理由は、モノクログレースケール画像の場合に、４つのＫ成分を擬似的にＣＭＹＫの各成分のデータとして出力する。つまり、第２の符号化部５０５は４×１６画素の画像データを可逆符号化することと等価になってしまい、最大でもランは“４”となり、符号化効率が落ちるからである。従って、最低でも入力部５０１は３２×３２画素の画像データを出力するようにしたい。
【０２２２】
また、実施形態では可逆符号化方式としてＪＰＥＧ−ＬＳ、非可逆符号化方式としてＪＰＥＧを例にしたが、これ以外の符号化方式を採用しても構わない。
【０２２３】
また、実施形態での第１、第４の実施形態の変形例で示したように、本発明はコンピュータが読込み実行するコンピュータプログラムに適用できることは明らかである。また、通常、コンピュータプログラムはＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体に格納されている。そして、それをコンピュータが有する読取り装置（ＣＤ−ＲＯＭドライブ）にセットし、システムにコピーもしくはインストールすることで実行可能となる。従って、このようなコンピュータ可読記憶媒体も本発明の範疇に入ることもまた明らかである。
【図面の簡単な説明】
【０２２４】
【図１】実施形態が適用する複写機の構造断面図である。
【図２】図１における画像処理部３００のブロック構成図である。
【図３】第１の実施形態におけるモノクロ画像から擬似カラー画像への変換処理を示す図である。
【図４】図２の符号化部３０５における、カラー画像、モノクロ画像から生成された擬似カラー画像のデータ入力タイミングを示す図である。
【図５】第１の実施形態の変形例におけるコンピュータのブロック構成図である。
【図６】第１の実施形態の変形例における符号化処理手順を示すフローチャートである。
【図７】第１の実施形態の変形例における復号処理手順を示すフローチャートである。
【図８】第２の実施形態におけるモノクロ画像から擬似カラー画像への変換処理を示す図である。
【図９】第３の実施形態におけるモノクロ画像から擬似カラー画像への変換処理を示す図である。
【図１０】第４の実施形態における符号化部３０５のブロック構成図である。
【図１１】可逆符号化処理における参照ウインドウを示す図である。
【図１２】第４の実施形態における特定パターンの典型的な例を示す図である。
【図１３】第４の実施形態の変形例１における符号化処理手順を示すフローチャートである。
【図１４】第４の実施形態の変形例１における符号化処理手順を示すフローチャートである。
【図１５】第４の実施形態の変形例１における復号処理手順を示すフローチャートである。
【図１６】第４の実施形態の変形例２で採用する量子化マトリクステーブルの例を示す図である。
【図１７】第５の実施形態における画像処理部３００のブロック構成図である。
【図１８】図１７における符号化部３０５のブロック構成図である。
【図１９】第１の実施形態で生成される符号化データファイルの構造を示す図である。
【図２０】第５の実施形態の変形例における符号化処理手順の一部を示すフローチャートである。
【図１】
2008042688.tif 000003
【図２】
2008042688.tif 000004
【図３】
2008042688.tif 000005
【図４】
2008042688.tif 000006
【図５】
2008042688.tif 000007
【図６】
2008042688.tif 000008
【図７】
2008042688.tif 000009
【図８】
2008042688.tif 000010
【図９】
2008042688.tif 000011
【図１０】
2008042688.tif 000012
【図１１】
2008042688.tif 000013
【図１２】
2008042688.tif 000014
【図１３】
2008042688.tif 000015
【図１４】
2008042688.tif 000016
【図１５】
2008042688.tif 000017
【図１６】
2008042688.tif 000018
【図１７】
2008042688.tif 000019
【図１８】
2008042688.tif 000020
【図１９】
2008042688.tif 000021
【図２０】
2008042688.tif 000022
【手続補正書】
【提出日】平成19年5月31日(2007.5.31)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
原稿読取部１００は、ＡＤＦ（Auto Document Feeder）装置１１０と、スキャナ部１２０を有する。また、不図示の液晶表示器や各種スイッチやボタン等で構成される操作パネル４００（図２参照）も、この原稿読取部１００に設けられている。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
また、スキャナ部１２０は、原稿台ガラス（プラテンガラス）１２１、原稿の読み取り面を、下方から照らす蛍光燈ランプを内蔵した露光部１２２を有する。また、スキャナ部１２０は、ミラーユニット１２３、集光レンズ１２７、及び、各色成分のリニアＣＣＤイメージセンサ１２４、１２５、１２６をも有する。これらリニアＣＣＤイメージセンサ１２４、１２５、１２６は、原稿からの光を赤（Ｒ）、緑（Ｇ）、青（Ｂ）の各色成分に分解して読み取り、その読取った各色成分のデータ（各８ビットとする）を画像処理部３００に供給する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００７２
【補正方法】変更
【補正の内容】
【００７２】
以下、実施形態におけるアプリケーションプログラムの符号化処理の手順を図６のフローチャートに従って説明する。なお、実施形態におけるアプリケーションプログラムに含まれる符号化、復号に係る部分は、カラー画像データ（Ｒ、Ｇ、Ｂ）をＪＰＥＧ−ＬＳのみであるものとして説明する。また、画像符号化処理で生成された符号化データは、ＲＡＭ６０３の適当な領域に格納されていくものとする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００８１
【補正方法】変更
【補正の内容】
【００８１】
第１の実施形態では、符号化対象の画像データがＹＭＣＫデータの４成分であったのに対し、本変形例ではＲＧＢの３成分としている。従って、ヘッダには、画像カラー画像データの水平方向の画素数としてＷ／３、垂直方向の画素数としてＨ、各成分のビット数、ダミーデータの個数情報、識別情報として「モノクロ」を示す情報を格納する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１８６
【補正方法】変更
【補正の内容】
【０１８６】
本第５の実施形態における符号化部３０５’の構成を図１８に示す。この図１８は、ちょうど第４の実施形態における図１０に対応するものであり、同一構成要素については同一符号を付した。図１８と図１０と相違する点は、図１８では第２の符号化部５０５の直前にスイッチ部５１１を設けている点である。また、図１８の解像度変換部５０２’、差分算出部５０３’、第１の符号化部５０４’、及び、第１の符号化部５０４’は、図１０の対応する構成に対して機能が変わった点である（詳細は後述）。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０１８７
【補正方法】変更
【補正の内容】
【０１８７】
また、入力部５０１は、色変換部３０３からのＣＭＹＫのデータを入力することになる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０２０５
【補正方法】変更
【補正の内容】
【０２０５】
＜第５の実施形態の変形例＞
上記第５の実施形態は、複写機や印刷装置に適用するものであったが、第５の実施形態に相当する符号化処理、復号処理を、パーソナルコンピュータ等の汎用情報処理装置上で実行するアプリケーションプログラムに適用しても構わない。
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図５
【補正方法】変更
【補正の内容】
【図５】
2008042688.tif 000023