(57)【要約】      （修正有）【課題】装置内の各画像処理部の構成メモリ量を減らして画像処理回路の汎用性を高める。【解決手段】画像処理モードを設定するモード設定手段と、設定された画像処理モードに従った第１の矩形領域を設定する矩形領域設定手段と、第１の記憶手段上に展開されている画像データを第１の矩形領域毎に分割し、第１の矩形領域に対応する画像データを第２の記憶手段上に展開する展開手段と、展開された第２の矩形領域内に属する各画素が文字属性を有するか、及び無彩色属性を有するかを判定するそれぞれの判定手段と、各判定手段による判定結果を用いて、第２の矩形領域の画素の属性を判定する判定信号生成手段と、第２の矩形領域内の各画素について生成された信号を利用して第２の矩形領域の属性を判定する第３の判定手段と、その判定結果により、第１の矩形領域の画像データを設定された画像処理モードにおいて画像処理する画像処理手段とを備える。【選択図】図１
2005173924.tif 000002
【特許請求の範囲】
【請求項１】
画像処理モードを設定するモード設定手段と、
前記設定された画像処理モードに従った第１の矩形領域を設定する矩形領域設定手段と、
第１の記憶手段上に展開されている画像データを前記第１の矩形領域毎に分割し、前記第１の矩形領域に対応する画像データを第２の記憶手段上に展開する展開手段と、
前記第２の記憶手段上の前記第１の矩形領域の画像データについて、前記矩形領域よりも小さい第２の矩形領域内に属する各画素が文字属性を有するかどうかを判定する第１判定手段と、
前記第２の矩形領域内に属する各画素が無彩色属性を有するかどうか判定する第２判定手段と、
前記第１判定手段による第１判定結果及び前記第２判定手段による第２判定結果を利用して、前記画素が属する前記第２の矩形領域の属性を判定するための信号を生成する判定信号生成手段と、
前記第２の矩形領域内の各画素について生成された前記信号を利用して前記第２の矩形領域の属性を判定する第３の判定手段と、
前記第３の判定手段における判定結果を利用して、前記第１の矩形領域の画像データを前記設定された画像処理モードにおいて画像処理する画像処理手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記第２の矩形領域を第１の走査方向にＭ領域、第２の走査方向にＮ領域に細分化する領域細分化手段を更に備え、
前記第１判定手段及び第２判定手段は、前記細分化された各領域内の各画素について前記判定を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２の矩形領域が、前記画像処理手段において処理された画像データの第３の矩形領域と異なる場合に、前記第３の判定手段は、前記第３の矩形領域に対応する前記第２の矩形領域内の各画素について生成された前記信号を利用して前記第２の矩形領域の属性を判定することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記第３の判定手段により判定された判定結果を、前記第２の矩形領域の前記第１の記憶手段上の画像データにおける主走査方向の配置数だけ順に保持する第１保持手段と、
前記第１の保持手段が、前記主走査方向の前記第２の矩形領域についての判定結果を全て保持した場合に、前記保持された全ての判定結果を取り込んで保持する第２保持手段と
を更に備えることを特徴とする請求項１乃至３のいずれかに記載の画像処理装置。
【請求項５】
前記第３の判定手段は、
主走査方向判定手段であって、
前記生成された信号の主走査方向の連続回数が第１の設定値と同じ回数となったことを検出する第１検出手段と、
前記第２の矩形領域内で主走査方向のライン毎に前記第１検出手段により検出された回数を計測する第１計測手段と、
前記第１計測手段による計測結果が第２の設定値以上となったかどうかを検出する第２検出手段と
前記第２検出手段により検出された回数を前記第２の矩形領域内で計測する第２計測手段とを備える手段とを備える手段と、
副走査方向判定手段であって、
前記生成された信号の主走査方向の連続回数が第３の設定値と同じ回数となったことを検出する第３検出手段と、
前記第２の矩形領域内で主走査方向のライン毎に前記第３検出手段により検出された回数を計測する第３計測手段と、
前記第３計測手段による計測結果が第４の設定値以上となった主走査方向のラインを検出する第４検出手段と、
前記検出された主走査方向のラインが、前記第２の矩形領域の副走査方向に第５の設定値と同じ数だけ連続するかを検出する第５検出手段と、
前記第５検出手段により検出された回数を前記第２の矩形領域内で計測する第４計測手段とを備える手段と、
前記第２計測手段の計測値と第６の設定値を比較し、前記計測値が第６設定値よりも大きい場合に第１比較信号を有効とする第１比較手段と、
前記第４計測手段の計測値を第７の設定値と比較し、前記計測値が第７の設定値よりも大きい場合に第２比較信号を有効とする第２比較手段とを備え、
前記第１比較信号及び前記第２比較信号との論理演算により前記第２の矩形領域の属性を判定することを特徴とする請求項１乃至４のいずれかに記載の画像処理装置。
【請求項６】
画像処理モードを設定するモード設定工程と、
前記設定された画像処理モードに従った第１の矩形領域を設定する矩形領域設定工程と、
第１の記憶部上に展開されている画像データを前記第１の矩形領域毎に分割し、前記第１の矩形領域に対応する画像データを第２の記憶部上に展開する展開工程と、
前記第２の記憶部上の前記第１の矩形領域の画像データについて、前記矩形領域よりも小さい第２の矩形領域内に属する各画素が文字属性を有するかどうかを判定する第１判定工程と、
前記第２の矩形領域内に属する各画素が無彩色属性を有するかどうか判定する第２判定工程と、
前記第１判定工程における第１判定結果及び前記第２判定工程における第２判定結果を利用して、前記画素が属する前記第２の矩形領域の属性を判定するための信号を生成する判定信号生成工程と、
前記第２の矩形領域内の各画素について生成された前記信号を利用して前記第２の矩形領域の属性を判定する第３の判定工程と、
前記第３の判定工程における判定結果を利用して、前記第１の矩形領域の画像データを前記設定された画像処理モードにおいて画像処理する画像処理工程と
を備えることを特徴とする画像処理方法。
【請求項７】
前記第２の矩形領域を第１の走査方向にＭ領域、第２の走査方向にＮ領域に細分化する領域細分化工程を更に備え、
前記第１判定工程及び第２判定工程では、前記細分化された各領域内の各画素について前記判定が行われることを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記第２の矩形領域が、前記画像処理工程において処理された画像データの第３の矩形領域と異なる場合に、前記第３の判定工程では、前記第３の矩形領域に対応する前記第２の矩形領域内の各画素について生成された前記信号を利用して前記第２の矩形領域の属性が判定されることを特徴とする請求項６又は７に記載の画像処理方法。
【請求項９】
前記第３の判定工程において判定された判定結果を、前記第２の矩形領域の前記第１の記憶部上の画像データにおける主走査方向の配置数だけ第１保持部に順に保持させる第１保持工程と、
前記第１の保持工程において、前記主走査方向の前記第２の矩形領域についての判定結果が全て保持された場合に、前記保持された全ての判定結果を取り込んで第２保持部に保持させる第２保持工程と
を更に備えることを特徴とする請求項６乃至８のいずれかに記載の画像処理方法。
【請求項１０】
前記第３の判定工程は、
主走査方向判定工程であって、
前記生成された信号の主走査方向の連続回数が第１の設定値と同じ回数となったことを検出する第１検出工程と、
前記第２の矩形領域内で主走査方向のライン毎に前記第１検出工程において検出された回数を計測する第１計測工程と、
前記第１計測工程における計測結果が第２の設定値以上となったかどうかを検出する第２検出工程と
前記第２検出工程において検出された回数を前記第２の矩形領域内で計測する第２計測工程とを備える工程とを備える工程と、
副走査方向判定工程であって、
前記生成された信号の主走査方向の連続回数が第３の設定値と同じ回数となったことを検出する第３検出工程と、
前記第２の矩形領域内で主走査方向のライン毎に前記第３検出工程において検出された回数を計測する第３計測工程と、
前記第３計測工程における計測結果が第４の設定値以上となった主走査方向のラインを検出する第４検出工程と、
前記検出された主走査方向のラインが、前記第２の矩形領域の副走査方向に第５の設定値と同じ数だけ連続するかを検出する第５検出工程と、
前記第５検出工程において検出された回数を前記第２の矩形領域内で計測する第４計測工程とを備える工程と、
前記第２計測工程の計測値と第６の設定値を比較し、前記計測値が第６設定値よりも大きい場合に第１比較信号を有効とする第１比較工程と、
前記第４計測工程の計測値を第７の設定値と比較し、前記計測値が第７の設定値よりも大きい場合に第２比較信号を有効とする第２比較工程とを備え、
前記第１比較信号及び前記第２比較信号との論理演算により前記第２の矩形領域の属性が判定されることを特徴とする請求項６乃至９のいずれかに記載の画像処理方法。
【請求項１１】
請求項６乃至請求項１０のいずれかに記載の画像処理方法をコンピュータに実行させるための画像処理プログラム。
【請求項１２】
請求項１１に記載の画像処理プログラムを記憶した、コンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像読み取りデバイス（ＣＣＤ（Charged  Coupled  Device）及びＣＩＳ（Contact  Image  Sensor））の双方に対応可能であり、各デバイスにより読み取った画像データのメモリへの格納、その格納したデータの読み出しを矩形領域単位に制御する画像処置技術に関するものである。
【背景技術】
【０００２】
従来の画像処理装置における、スキャナ画像処理回路の構成を示すブロック図を図２０に示す。画像読み取りデバイスとしては、ＣＣＤ２０１０またはＣＩＳ２１１０といった光学素子が用いられ、主走査方向のライン単位に所定の出力形式に従ったデータが、それぞれＣＣＤインタフェース（Ｉ／Ｆ）回路２０００、ＣＩＳインタフェース（Ｉ／Ｆ）回路２１００によりＡ／Ｄ変換され、メインメモリ２２００に格納される。この場合、ＣＣＤ２０１０はＲ、Ｇ、Ｂに対応したデータがそれぞれパラレルに出力されるのに対し、ＣＩＳ２１１０から出力される信号はＬＥＤの点灯順位に従い、Ｒ、Ｇ、Ｂのデータがシリアルに出力されるという、出力データの特性の相違により、それぞれ専用のインタフェース回路が設けられ、所定のＡ／Ｄ変換処理を経て、読み取られた画像データがメインメモリ２２００に格納される構成となっていた（例えば、特許文献１を参照。）。
【０００３】
そのため、読み取った画像データをメインメモリ２２００上に展開するために、何れのデバイス（例えば、ＣＣＤまたはＣＩＳ）を使用するかに依存することとなり、画像データの入力処理の専用化が不可欠となっていた。つまり、画像処理回路としては、何れの画像読み取りデバイスを採用するかによりカスタマイズされることになり、画像処理回路の汎用化、低コスト化を阻む要因となっていた。
【０００４】
また、図２０において、各画像処理ブロック（シェーディング補正処理部２３００、文字判定処理部２３２０、フィルタ処理部２３４０、変倍処理部２３５０、無彩色判定処理部２３６０、ブロック属性判定処理部２３７０等）には、専用のラインバッファ２４００ａ〜２４００ｆが設けられている。このような回路構成において、メインメモリ２２００に格納されたデータを、主走査方向に複数ライン分読み出し、専用のラインバッファ（２４００ａ〜２４００ｆ）に格納して、個別の画像処理を施すという構成が採られていた。
【０００５】
しかしながら、各処理部ごとに専用のラインバッファ２４００ａ〜ｆを設ける回路構成では、処理をすることができる主走査方向の最大画素数は各処理部に設けられた専用のラインバッファのメモリ容量に依存することとなり、処理のスループットを制限する要因となっていた。
【０００６】
また、処理能力を向上させるために、画像処理回路のハードウエア構成において、ラインバッファの容量の増加はコスト負担を大きくし、画像処理装置全体の低コスト化を阻む要因となっていた。
【特許文献１】特開平７−１７０３７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このように、従来の画像処理装置は、装置内部に構成される各画像処理部における処理のスループットがラインバッファの容量に依存し、画像処理装置全体の低コスト化を阻むとともに、汎用性を欠くものとなっていた。
【０００８】
そこで、本発明は、装置内部に構成される各画像処理部の構成メモリ量を減らして画像処理回路の汎用性を高めることを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するための本発明は、画像処理モードを設定するモード設定手段と、前記設定された画像処理モードに従った第１の矩形領域を設定する矩形領域設定手段と、第１の記憶手段上に展開されている画像データを前記第１の矩形領域毎に分割し、前記第１の矩形領域に対応する画像データを第２の記憶手段上に展開する展開手段と、前記第２の記憶手段上の前記第１の矩形領域の画像データについて、前記矩形領域よりも小さい第２の矩形領域内に属する各画素が文字属性を有するかどうかを判定する第１判定手段と、前記第２の矩形領域内に属する各画素が無彩色属性を有するかどうか判定する第２判定手段と、前記第１判定手段による第１判定結果及び前記第２判定手段による第２判定結果を利用して、前記画素が属する前記第２の矩形領域の属性を判定するための信号を生成する判定信号生成手段と、前記第２の矩形領域内の各画素について生成された前記信号を利用して前記第２の矩形領域の属性を判定する第３の判定手段と、前記第３の判定手段における判定結果を利用して、前記第１の矩形領域の画像データを前記設定された画像処理モードにおいて画像処理する画像処理手段とを備えることを特徴とする。
【発明の効果】
【００１０】
以上の本発明によれば、装置内部に構成される各画像処理部の構成メモリ量を減らして画像処理回路の汎用性を高めることができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の好適な実施例を詳細に説明する。
【実施例１】
【００１２】
図１は、本発明の実施例にかかる画像処理装置２００の概略的な構成を示すブロック図である。スキャナインタフェース（以下、「スキャナＩ／Ｆ」と称する）部１０には、アナログフロントエンド（ＡＦＥ）１５を介して、ＣＣＤ１７、ＣＩＳ１８が接続し、個別の専用回路を介在することなく、その読み取りデータを画像処理装置２００に取り込むことができる。２０はスキャナ画像処理部であり、スキャナI／Ｆ部１０の処理によりメインメモリ１００に展開された画像データに対して、画像処理動作モード（カラーコピー、モノクロコピー、カラースキャン、モノクロスキャン等）に応じた画像処理を実行する処理部である。
【００１３】
プリンタ画像処理部３０は、スキャナ画像処理部２０による画像処理の結果、得られたデータをプリンタに出力するための画像形成処理を行う処理ユニットであり、例えばＮ値化処理を施す。スキャナ画像処理部２０及びプリンタ画像処理部３０の処理内容に関しては後に詳細に説明する。４０は本発明装置の記録部としてレーザービームプリンタ（以下、ＬＢＰと称する）が接続された場合のＬＢＰインターフェース部（以下、ＬＢＰＩ／Ｆ部と称する）、４５はＬＢＰＩ／Ｆ部４０に接続されたＬＢＰである。
【００１４】
５０、６０はＪＰＥＧ、ＪＢＩＧモジュールであり、所定の規格に準拠した画像データの圧縮、伸張処理を実行する処理部である。６５はスキャナＩ／Ｆ部１０、スキャナ画像処理部２０、プリンタ画像処理部３０、ＬＢＰＩ／Ｆ部４０、ＪＰＥＧ５０、ＪＢＩＧ６０に接続されたＤＭＡ制御部（以下、ＬＤＭＡＣと称する）であり、前述した各処理部にはＬＤＭＡＣが有する各チャンネルが接続されている。
【００１５】
例えばスキャナ画像処理部２０にはＬＤＭＡＣ６５のチャンネル１（以下、ＤＭＡＣ／１ｃｈ）が接続されている。ＬＤＭＡＣの各チャンネルは、メモリ制御部７０と協働して、各画像処理部（１０、２０、３０）とメインメモリ１００との間のデータ授受に関し、ＤＭＡ制御するための所定のアドレス情報を生成、設定する。例えば、画像読み取りデバイスの種類、ＣＣＤ１７、ＣＩＳ１８の別に応じて、スキャナＩ／Ｆ部１０で読み取り処理された画像データをメインメモリ１００にＤＭＡ転送するためのアドレス情報をＤＭＡのチャンネルごとに生成し、または、メインメモリ１００上に展開された画像データを読み出すためのアドレス情報をＤＭＡのチャンネルに応じて生成し、スキャナ画像処理部２０にＤＭＡ転送する等、メインメモリ１００と、種々のインタフェース部（１０、４０）、画像処理部（２０、３０）間におけるＤＭＡ制御をメモリ制御手段７０と共に司るユニットとして機能する。
【００１６】
７０はメモリ制御部であり、画像処理系の第１ＢＵＳ８０及びコンピュータ系の第２ＢＵＳ８５とをそれぞれ接続し、メインメモリ１００に対するデータの書き込み、読み出しのための制御を行う。８０は、画像処理系の各処理部（１０〜６０）間でデータを授受することが可能な第１ＢＵＳであり、８５は、ＣＰＵ１８０、通信及びユーザインタフェース制御部１７０、メカトロ系制御部１２５等が接続されるコンピュータ系の第２ＢＵＳである。
【００１７】
９０は第２ＢＵＳ８５と第２ＢＵＳ８５に接続された各制御部間のＤＭＡ制御を行う制御部であり、ＲＯＭＩＳＡ９７を介してＲＯＭ９５と接続し、画像読み取りデバイス（ＣＣＤ１７やＣＩＳ１８）に応じて、適した制御パラメータ、制御プログラムが設定される。制御パラメータ等を画像読み取りデバイスに応じて種々設定することができるので、ＣＣＤ１７、ＣＩＳ１８の個別のデータ出力形式に応じた画像データの入力処理が可能となるため、専用のインタフェース回路を設ける必要がなくなる。
【００１８】
メカトロ系制御部１２５にはモータ制御部１１０と、モータの駆動タイミングや、画像処理系の処理の同調を制御するためのタイミング制御を司る割り込みタイマー制御部１２０が含まれる。
【００１９】
ＬＣＤ制御部１３０は、画像処理装置の種々の設定、処理状況等をＬＣＤ１３５に表示するための表示制御を司るユニットである。
【００２０】
１４０、１５０は周辺機器との接続を可能にするＵＳＢインタフェース部であり、図１では、インクジェットプリンタ１７５が接続した状態を示している。
【００２１】
１６０はメディアアクセス制御（ＭＡＣ）部であり、接続する機器に対してデータをどのようなタイミングで送り出せばよいか（アクセス）等を制御するユニットである。１８０はＣＰＵであり、画像処理装置２００の全体的な動作を制御する。
【００２２】
次に、読み取りデバイスであるＣＣＤ１７あるいはＣＩＳ１８により読み取られたデータのフローに関して説明する。スキャナＩ/Ｆ部１０は、画像読み取りデバイスとして、ＣＣＤ１７及びＣＩＳ１８に対応可能であり、両画像読み取りデバイスの信号を入力処理する。ここで入力された画像データは、ＬＤＭＡＣ６５／０ｃｈ及びメモリ制御部７０によりＤＭＡ転送されてメインメモリ１００上に展開される。
【００２３】
図３にＬＤＭＡＣ６５の概略的な構成と画像読み取りデバイス（ＣＣＤ１７、ＣＩＳ１８）により読み取った画像データを格納するメインメモリ１００との関係を示す。画像データをメインメモリ１００にＤＭＡ転送して格納する処理は、ＬＤＭＡＣ６５のＩ／Ｏ制御ユニット６５１と、メインメモリ１００とスキャナ画像処理部２０との間でデータの授受を制御するＩ／Ｐ制御ユニット６５２と、更に、メインメモリ１００をリングバッファとして使用する場合、データの書き込みと、読み出しを調停するためのバッファコントローラ６５５が含まれる。
【００２４】
＜Ｉ／Ｏ制御ユニット６５１の構成＞
ここで、Ｉ／Ｏ制御ユニット６５１は、データ調停ユニット６５１ａと、第１書き込みデータインタフェース（Ｉ／Ｆ）部６５１ｂと、Ｉ／Ｏインタフェース部６５１ｃとを有している。Ｉ／Ｏインタフェース部６５１ｃは、メインメモリ１００にデータを格納するために生成された所定のアドレス情報を第１書き込みデータＩ／Ｆ部６５１ｂに設定する。また、スキャナＩ／Ｆ部１０より出力される画像データを受信して、Ｉ／Ｏ制御ユニット６５１内の各バッファチャンネル（以下、「チャンネル」と称する）（ｃｈ０〜ｃｈ２）にデータを格納する。
【００２５】
第１書き込みデータＩ／Ｆ部６５１ｂはメモリ制御部７０に対してデータの転送を行うための第１ＢＵＳ８０と接続し、生成された所定のアドレス情報に従って各チャンネル（ｃｈ０〜ｃｈ２）に格納されているデータをメモリ制御部７０にＤＭＡ転送する。
【００２６】
データ調停ユニット６５１ａは、各チャンネルに格納されているデータの読み出しを行い、第１書き込みデータＩ／Ｆ部６５１ｂの書き込み処理に合わせて各チャンネルのデータの受け渡しを行う。第１書き込みデータＩ／Ｆ部６５１ｂはバッファコントローラ６５５と接続し、後に説明するＩ／Ｐ制御ユニット６５２によるデータの読み出し、もしくは書き込みとアクセスが競合しないよう制御される。
【００２７】
このアクセスの制御により、メモリ制御部７０が接続されているメインメモリ１００をリングバッファとして使用した場合であっても、メインメモリ１００に格納されているデータの読み出し前に、同一のメモリアドレスにデータをオーバライトする等のトラブルを防止することができ、メモリリソースを有効に活用することが可能になる。また、以上説明したように、読み取りデバイスによって読み取られた画像データの転送は、専用のＤＭＡチャンネルによりメインメモリ１００に展開するので、ＤＭＡ転送時のアドレス制御を画像読み取りデバイスに合わせて切替えることにより、専用のインターフェース回路を有することなく画像データの取り込みを行える。
【００２８】
なお、図１においては上記Ｉ／Ｏ制御ユニット６５１及びＩ／Ｐ制御ユニット６５２をそれぞれＤＭＡＣ／ｃｈ０及びＤＭＡＣ／ｃｈ１と記載している。また、図１において、ＬＤＭＡＣ６５内部構成であるＤＭＡＣ／２ｃｈ〜５ｃｈにおいても図３に記載した構成となっており、メインメモリ１００に対して書き込みと読み取りを行うチャンネルに関してはＩ／Ｏ制御ユニット６５１及びＩ／Ｐ制御ユニット６５２の構成からなる。
【００２９】
メインメモリ１００に展開された画像データは、所定の矩形領域ごとに、対応する画像データ、即ちＲ、Ｇ、Ｂデータ、もしくはモノクロ画像データとして、スキャナ画像処理部２０に入力され、矩形領域毎に画像処理が実行される。矩形領域ごとに画像処理を行うために、ＣＰＵ１８０は画像読み取りデバイス（ＣＣＤ１７／ＣＩＳ１８）の受光素子の感度のばらつきやＬＥＤ１９の光量のばらつき等を補正するシェーディング（ＳＨＤ）補正データをメインメモリ１００内に準備し、矩形領域のシェーディングデータ及び矩形領域の画像データは、後に説明するＩ／Ｐ制御ユニット７２によりスキャナ画像処理部２０にＤＭＡ転送される。
【００３０】
図４は、矩形領域の画像データをメインメモリ１００からスキャナ画像処理部２０のブロックバッファＲＡＭ２１０（図２）に転送する際のデータの読み出しを説明するための図である。
【００３１】
スキャナ画像処理部２０で処理される画像データの特定の方法について、図４（ａ）中の領域（０，０）を例として説明する。まず、領域（０，０）の有効画素領域ａｂｃｄを処理する場合、有効領域以上の画像データ領域（ＡＢ１ＣＤ１）を設定しなければならない。ここで、有効画素領域とは、スキャナ画像処理部２０において処理が実行される場合に注目画素となりえる画素が存在する領域を意味し、当該画素が存在する領域の形状が矩形の場合には特に有効矩形領域と呼ぶ。また、上記のように有効画像領域以上の画像データを設定するのは、有効領域の境界付近に存在する注目画素に対してフィルタリング処理等の処理を行うためには、その周囲画素を参照しなければならないからである。以下の説明において、特に、有効画素領域や有効矩形領域と断らずに領域を指定する場合には、有効画素領域に処理に必要な周辺画素まで含めた領域、即ち、領域（０，０）であれば、画像データ領域ＡＢ１ＣＤ１を言うものとする。
【００３２】
図４（ｃ）は有効画素領域ａｂｃｄの処理に際して利用される周囲画素を説明するための図である。ここにおいて、ＮｍはＬＤＭＡＣ６５がスキャナ画像処理部２０に対して入力する矩形画像領域の主走査方向画素数を表し、Ｎｓは副走査方向画素数を表している。Ｎａは有効画素領域ａｂｃｄに対して必要となる左端側の必要画素数を、同様にＮｂは右端側必要画素数を、Ｎｃは上端側画素数を、Ｎｄは下端側画素数をそれぞれ表す。
【００３３】
例えば、有効画素領域における任意の注目画素に対して５×５のフィルタリング処理を施す場合、注目画素を中心として主走査方向に５画素、副走査方向に５画素が必要となるので、領域の境界に位置する注目画素を考慮すればＮａ、Ｎｂ、Ｎｃ、Ｎｄは全て２画素となる。
【００３４】
つまり、この場合の有効画素数は（Ｎｍ−２−２）*（Ｎｓ−２−２）画素となる。更に、カラーコピーを行う場合は、文字の判定をするため、画像処理モードの内で最も大きい参照領域が必要となる。これは黒文字の検出のために網点と文字とを確実に判定する必要があり、そのため網点の周期を判定することが求められる。この場合のＮａ、Ｎｂ、Ｎｃ、Ｎｄはその判定アルゴリズムに応じて設定されるが、一般的には１０画素を超えることが多い。このように、有効画素領域の周囲に必要となる画素データは、スキャナ画像処理部２０が行う画像処理アルゴリズムによって決定されるものであり、本発明は特定の画素数に対応する実施例について記載するものではなく、本実施例においては画素数を特に限定しない。
【００３５】
次に、ＬＤＭＡＣ６５がメインメモリ１００からスキャナ画像処理部２０に対して画像データを転送する場合の動作に関して説明する。ＬＤＭＡＣ６５の画像データの転送はメインメモリ１００中の画像データを矩形領域に区切った単位で行われる。有効画像領域がａｂｃｄである矩形画像の処理を行う場合の動作は、図４（ａ）、図４（ｂ）に示す通りである。
【００３６】
ＬＤＭＡＣ６５はメインメモリ中のＡをスタートアドレスとして、対応するデータが主走査方向Ｂ１アドレスまで読み出す。主走査方向のデータの読み出しが終了すると、次に読み出すデータのアドレスを、副走査方向に１ライン分をシフトした図中のＡ２アドレスに移し、主走査方向にＢ３アドレスの画素までデータが読み出される。以下同様にデータが読み出され、有効画素領域を含んだ周囲画素領域の最終ラインに相当するＣアドレスからＤ１アドレスまでの主走査方向のデータの読み出しが行われて、領域（０，０）のデータの読み出しが完了する。
【００３７】
領域（０、１）に関しては、その有効画素領域ｂｅｄｆに対して、有効領域の周囲矩形領域としてＢ２ＥＤ２Ｆが設定されており（図４（ｂ））、画像データの読み出しはＢ２をスタートアドレスとして、対応するデータが主走査方向Ｅアドレスまで読み出される。主走査方向のデータの読み出しが終了すると、次に読み出すデータのアドレスを、副走査方向に１ライン分シフトした図中のＢ４アドレスに移し、主走査方向にＢ５アドレスの画素までデータが読み出される。
【００３８】
そして、周囲矩形領域の最終ラインに相当するＤ２アドレスからＦアドレスまでの主走査方向の画像データの読み出しが行われて、第２領域のデータの読み出しが完了する。以上の処理により、周囲矩形領域を含む有効矩形領域のデータが読み出される。以下、同様の処理が各矩形領域に対して行われる。
【００３９】
＜Ｉ／Ｐ制御ユニット６５２の構成＞
メインメモリ１００に格納されたデータの読み出しは、図３におけるＬＤＭＡＣ６５内のＩ／Ｐ制御ユニット６５２により制御される。読み出しデータＩ／Ｆ部６５２ａは、第２ＢＵＳ８０及びメモリ制御部７０を介してメインメモリ１００と接続し、読み出しデータＩ／Ｆ部６５２ａは、ＬＤＭＡＣ６５により生成されたアドレス情報を参照して、メインメモリ１００から所定の画像データを読み出すことができる。
【００４０】
読み出されたデータはデータ設定ユニット６５２ｂにより、複数個設けられた所定のチャンネル（ｃｈ３〜ｃｈ６）に設定される。例えば、シェーディング補正用の画像データをチャンネル３（ｃｈ３）、面順次のＲデータをチャンネル４（ｃｈ４）、面順次のＧデータをチャンネル５（ｃｈ５）、面順次のＢデータをチャンネル６（ｃｈ６）と、各データが設定される。
【００４１】
各チャンネル（ｃｈ３〜ｃｈ６）に設定されたデータは、Ｉ／Ｐインタフェース６５２ｃを介して、Ｉ／Ｐ制御ユニット６５２の制御の下、順次にＤＭＡ転送され、スキャナ画像処理部２０のブロックバッファＲＡＭ２１０（図２）にローディングされる。
【００４２】
また、チャンネル７（ｃｈ７）は、所定の画像処理が施されたデータをメインメモリ１００に格納するために、スキャナ画像処理部２０から出力される点順次の画像データを格納するチャンネルである。スキャナ画像処理部２０は、点順次の画像データの出力に合わせて、アドレス情報及び各制御信号（矩形領域終了を示すブロック・エンド信号、矩形領域中のラインの終了を示すライン・エンド信号）を出力し、これらの情報に基づいて、第２書き込みデータＩ／Ｆ６５２ｄは、チャンネル７に格納されている画像データを、メモリ制御部７０を介してメインメモリ１００に格納する。
【００４３】
図２は、スキャナ画像処理部２０の概略的な構成を説明するブロック図であり、ブロックバッファＲＡＭ２１０にローディングされたデータに対して、各画像処理モードに応じた処理が実行される。スキャナ画像処理部２０は、設定された画像処理モードに応じて、矩形領域に対して参照するべき矩形画素領域を切替えて処理を実行する。以下、図２を参照してスキャナ画像処理部２０の内容を説明する。
【００４４】
図２において、シェーディング補正ブロック（ＳＨＤ）２２は、主走査方向の光源（ＬＥＤ１９）の光量分布のばらつきや、画像読み取りデバイスの受光素子のばらつき、暗出力のオフセットを補正する処理ブロックである。シェーディングデータはメインメモリ１００上で明Ｒ、明Ｇ、明Ｂ、暗Ｒ、暗Ｇ、暗Ｂの順に１画素分の補正データが面順次に格納されており、矩形領域に対応した画素数分（主走査方向画素数Ｎｍ）がスキャナ画像処理部２０へ入力される。入力された線順次の補正データは、入力データ処理部２１により点順次のデータに変換され、スキャナ画像処理部２０のブロックバッファＲＭＡ２１０に格納される。そして、矩形領域のシェーディングデータの取り込みが終了すると、画像データの転送に移行する。
【００４５】
入力データ処理部２１は、Ｒ、Ｇ、Ｂに分離した面順次のデータを点順次のデータに再構成する処理を実行する処理部である。１画素のデータはメインメモリ１００上に面順次のデータとしてＲ、Ｇ、Ｂ各色毎に格納されており、これらのデータがブロックバッファＲＡＭ２１０にローディングされると、入力データ処理部２１は、各色データごとに１画素データを取り出し、１画素のＲ、Ｇ、Ｂデータとして再構成する。再構成の処理を画素毎に行い、面順次の画像データを点順次のデータに変換する。
【００４６】
シェーディング補正処理２２により補正された画素データは、処理ブロック２３において、更に画像処理が施される。処理ブロック２３において、平均化処理部は、主走査方向の読み取り解像度を落とすためのサブサンプリング（単純間引き）、あるいは平均化処理を行う処理ブロックであり、入力マスキング処理部は、入力されたＲ、Ｇ、Ｂデータの色補正を演算する処理ブロックである。γ補正処理部は入力されたデータに対して、所定の階調特性を与える処理ブロックである。
【００４７】
文字判定処理２４は、入力画像データに対して、文字属性を判定、即ち文字判別、線画輪郭の画素判別を行い、入力画像データを構成する画素毎に文字、線画を形成するか否かを判定するための処理ブロックである。文字判別処理は、上述のように網点周期よりも広いエリアを参照する必要があるため、主走査方向、副走査方向ともに有効画素領域よりも１０画素程度広い領域を参照するのが一般的である。
【００４８】
なお、文字判定処理２４により生成される文字判定信号２４５は有効矩形領域の画素数分出力されるものであり、後に説明するフィルタ補正処理ブロック及びブロック属性判定処理ブロックで使用される。また、以降の説明において、文字判定信号２４５の論理は、値が"０"で非文字判定、値が"１"で文字判定であるものとする。
【００４９】
処理ブロック２５は、ＭＴＦ補正処理部、色変換処理部及び下地濃度調整処理部で構成され、処理ブロック２３によって処理された画素データに対して以下のような画像処理が行われる。まず、ＭＴＦ補正処理部は、画像読み取りデバイスを変更した際の、ＭＴＦ差補正、縮小変倍時のモアレ低減のために主走査方向にフィルタ処理を行う処理部であり、注目領域に対して、主走査方向の所定画素について、各係数を乗加算処理するブロックである。色変換処理部は、後続のフィルタ処理ブロック２６で行うフィルタリング（明度強調、彩度強調、色判定）に際し、Ｒ，Ｇ、Ｂ各色の多値画像データの変換処理を行う。下地濃度調整処理部は、原稿の下地濃度を自動認識し、下地濃度値を白側に補正することによりファクシミリ通信等に適した二値化データを得るための処理を実行する。
【００５０】
フィルタ処理ブロック２６は、先の色変換処理において、得られたデータに対して色判定とフィルタリングを行うための処理として、画像の明度成分（Ｌ）のエッジ強度処理及び彩度（Ｃａ、Ｃｂ）の強調処理を行う。このとき、文字判定処理ブロック２４で生成された文字、線画輪郭部の判定信号等に基づき、強調量のパラメータを変化させることができる。フィルタ処理後のデータは、内部信号である輝度信号（Ｌ）と色差信号（Ｃａ、Ｃｂ）からＲ、Ｇ、Ｂデータに変換されて出力される。この処理ブロックはモノクロ画像データを処理する場合は５画素×５画素のエッジ強調フィルタとして機能する。
【００５１】
ブロック２７は、主走査、副走査方向の線形補間変倍処理を施す処理ブロックであり、設定された倍率に応じて入力画素データを主走査方向及び副走査方向に拡大処理あるいは縮小処理を行う。
【００５２】
ブロック２８は無彩色判定処理ブロックであり、処理ブロック２５による出力データを参照して、入力される画素が無彩色属性を有するか、即ち、無彩色画像を構成する画素であるか否かを判定する無彩色判定を行う。判定結果は後段のブロック属性判定処理部２９で使用されるため、無彩色判定信号２８５として出力される。なお、前記無彩色判定信号２８５も文字判定信号２４５同様、有効矩形領域に対応する画素数分出力される。また、以降の説明における無彩色判定信号２８５の論理は、値が"０"で有彩色判定、値が"１"で無彩色判定であるものとする。
【００５３】
ブロック２９はブロック属性判定処理ブロックであり、文字判定処理ブロック２４の出力である文字判定信号２４５と無彩色判定処理ブロック２８の出力である無彩色判定信号２８５とを参照し、入力される有効矩形画像領域のブロック属性の判定を行う。文字判定信号２４５及び無彩色判定信号２８５はそれぞれ有効矩形領域の画素数に限定されて出力されるので、ＬＤＭＡＣ６５がスキャナ画像処理２０に入力する矩形領域中の有効領域単位で判定処理される。
【００５４】
本実施例では以上の画像処理が、設定された画像処理モード（コピーモード、スキャナモード等）に応じて、矩形領域単位の画像データに施される。また、画像処理モードに応じた矩形領域をメインメモリ１００上に設定し、この矩形領域の単位を切り替えることにより、各画像処理モードに応じた解像度、高精彩処理を実現することが可能になる。
【００５５】
次に本発明装置の特徴部分であるブロック属性判定処理に関して詳細に説明する。
図２１は、ブロック属性判定処理の流れを示すフローチャートである。まず、上記のように、メインメモリ１００から、ブロックバッファＲＡＭ２１０に矩形領域の画像データが転送される（ステップＳ２１０１）。
【００５６】
文字判定処理２４は、ブロックバッファＲＡＭ２１０へ転送された画像データに対して、文字属性判定を行い、文字判定信号２４５をブロック属性判定処理部２９へ出力する（ステップＳ２１０２）。また、無彩色判定処理部２８は、同様に画像データに対して無彩色属性判定を行い、無彩色判定信号２８５をブロック属性判定処理部２９へ出力する（ステップＳ２１０３）。
【００５７】
図５はブロック属性判定処理部２９の構成の一例を表す図である。なお、図５は、各ブロックにおいて実行される処理の順に記載されているので、ブロック属性判定処理の各工程を、各ブロックにおいて実行される処理により表してもいる。図５（ａ）において、２９１は入力される文字判定信号２４５及び無彩色判定信号２８５により、ブロック属性を判定するための判定信号を生成する判定信号生成部、２９２は判定信号生成部２９１により生成されるブロック属性判定信号、２９３は主走査方向の判定を行う主走査方向判定部、２９４は副走査方向の判定を行う副走査方向判定部、２９５、及び２９６は主走査方向判定部２９３、副走査方向判定部２９４が出力する判定信号であり、それぞれ内部で計数されたカウント値が出力される。
【００５８】
２９７は主走査方向判定信号２９５及び副走査方向判定信号２９６の値を参照してブロック属性を判定するブロック属性判定部、２９８は入力矩形画像データ中の所定矩形領域単位のブロック属性を示す判定信号、２９９はブロック属性判定結果信号２９８を入力される主走査方向の複数の矩形領域分記憶する判定結果保持部である。
【００５９】
以下、ブロック属性判定処理部２９を構成する各処理部に関して説明する。図８は判定信号生成部２９１の構成を示す図である。なお、図８は、各ブロックにおいて実行される処理の順に記載されているので、判定信号生成処理の各工程を、各ブロックにおいて実行される処理により表してもいる。ブロック属性判定信号２９２は、ブロック属性判定処理ブロック２９の外部から入力される文字判定信号２４５及び無彩色判定信号２８５を参照して生成される（ステップＳ２１０４）。文字判定信号２４５は反転回路２９１１により論理を反転した信号が生成され、それぞれセレクタ２９１２に入力される。また無彩色判定信号２８５も同様に反転回路２９１３により論理を反転した信号が生成され、それぞれセレクタ２９１４に入力される。セレクタ２９１２及びセレクタ２９１４は例えばブロック属性判定処理部２９内部に構成したレジスタ値により選択信号が切り替えられる構成となる（切り替え信号２９１７、切り替え信号２９１８）。
【００６０】
判定信号生成部２９１では、文字判定信号２４５をセレクタ２９１２及びセレクタ２９１６を介してスルーさせる構成としている。従って、文字判定信号をスルーさせる場合には、切替信号２９１７及び切替信号２９１９として"０"が入力され、入力された文字判定信号２４５がセレクタ２９１２を介してセレクタ２９１６からそのまま出力される。よって、この場合、ブロックの属性を判定するための基本信号としてセレクタ２９１６からの出力される信号（これが、ブロック属性判定信号２９２）は、"０"で非文字を表し、"１"で文字を表す。
【００６１】
一方、この文字判定信号２４５に無彩色判定信号２８５の結果を反映させる場合は、セレクタ２９１４において無彩色判定信号２８５を選択し、ＡＮＤ回路２９１５へ出力する。これにより、ＡＮＤ回路２９１５へは、文字判定の場合も非文字判定の場合も、セレクタ２９１２側から"１"が入力されるので、ＡＮＤ回路２９１５からの出力は、無彩色判定信号２８５の結果が反映されることとなり、無彩色判定信号２８５が無彩色判定の場合に"１"が出力され、有彩色判定の場合に"０"が出力されることとなる。
【００６２】
セレクタ２９１６の切り替え信号は、前述のセレクタ２９１２あるいはセレクタ２９１４の切り替え信号と同様、ブロック属性判定処理部２９の内部に構成されたレジスタ値により切替える。このレジスタ値は、文字判定信号２４５をスルーさせる場合には、"０"に設定され、文字判定信号２４５に無彩色判定信号２８５を反映させて出力させる場合には"１"が設定される。
【００６３】
このように、文字判定処理ブロック２４、無彩色判定処理ブロック２８が出力する判定信号を各々反転できる機能をもたせ、更にＡＮＤ回路２９１６により演算させた信号をブロック属性判定信号２９２として選択できるようにしたことにより、種々のブロック判定信号２９２（文字、非文字、無彩色文字、有彩色文字、無彩色非文字、有彩色非文字）を生成することができる。
【００６４】
また、図８では、文字判定信号２４５をスルーさせるか、無彩色判定信号２８５を反映させるかを選択可能とした構成を有する判定信号生成部２９１の例を示したが、当該判定信号生成部２９１を無彩色判定信号２８５をスルーさせるか、文字判定信号２４５を反映させるかを選択可能とする構成としてもよい。具体的には、セレクタ２９１２へ入力される信号を無彩色判定信号２８５とし、セレクタ２９１４へ入力される信号を文字判定信号２４５とする。この場合、無彩色判定信号２８５がスルーされる場合には、ブロック属性判定信号２９２は、"１"において無彩色を表し、"０"において有彩色を表す。
【００６５】
また、文字判定信号２４５の内容を反映させる場合には、セレクタ２９１２からの出力は無彩色判定信号２８５がスルーされるように切替信号２９１７が入力され、セレクタ２９１４からは、出力が"１"となるように切替信号２９１８が入力される。これにより、ＡＮＤ回路２９１５へは、セレクタ２９１２からは、無彩色判定信号２８５が入力され、セレクタ２９１４からは常に"１"が入力される。よって、ＡＮＤ回路２９１５からの出力は、"１"において無彩色文字又は無彩色非文字を表し、"０"において、有彩色文字または有彩色非文字を表すこととなる。このようにして、文字判定信号２４５をスルーさせるか、無彩色判定信号２８５を反映させるかを選択可能とした構成を有する判定信号生成部２９１では、ブロック属性判定信号２９２は、無彩色、有彩色、無彩色文字、無彩色非文字、有彩色文字、有彩色非文字を表すことができる。
【００６６】
次に、主走査方向判定部２９３においてブロック判定信号２９２を参照して主走査方向判定を行い判定信号２９５を出力するための処理内容に関して説明する。図５（ｂ）は主走査方向判定部２９３の内部構成を示す図である。図５（ｂ）に記載した通り、主走査方向判定部２９３は主走査連続性認識部２９３１、無彩色文字群認識部２９３２、主走査カウント部２９３３から構成される。
【００６７】
別図を用いて、各処理部の動作を更に詳細に説明する。図６（ａ）は主走査連続性認識部２９３１の処理内容を説明する図である。なお、同図において、"０"、"１"と記載したブロックは画素を示し、内部に記載した数字はブロック属性判定信号２９２の論理を示すものである。また、以降の主走査連続性認識部２９３１の説明においては、その説明の簡略化のため、ブロック属性判定処理部２９に入力される有効矩形領域のライン数が４ラインとして説明する。
【００６８】
主走査連続性認識部２９３１は、ブロック属性判定信号２９２の主走査方向の連続性を検出する処理部である。以降、図示しないブロック属性判定処理部２９内部に構成されたレジスタにより、連続度"５"が設定された場合に関して説明する。図６（ａ）の０ライン目のブロック属性判定信号２９２の並びを見ると、２画素目から６画素目まで"１"が５回連続している。
【００６９】
このような場合、主走査連続性認識部２９３１は、ブロック属性判定信号２９２が設定された連続度を満たすものであると検出する（図６中太枠線中のブロック属性信号２９２が検出箇所）。なお、カウント中、連続度が設定値に満たない状態で、ブロック属性判定信号２９２が"０"となった場合は、カウント値を初期化して再度カウントを開始する。
【００７０】
更に主走査連続性認識部２９３１は前記検出信号がラインの終端画素までに何回発生したかを検出する。つまり、図６（ａ）の場合においては、０ライン目：３回、１ライン目：２回、２ライン目：１回、３ライン目：３回が検出回数となる。
【００７１】
無彩色文字群認識部２９３２は、主走査連続性認識部２９３１が検出したライン毎の検出回数が所定の値以上であったラインを検出する。例えば、連続度が"５"であり、前記連続度がライン単位で３回以上発生したラインを検出する設定の場合、０ライン目と３ライン目が検出対象ラインとなる（図６（ｂ））。
【００７２】
主走査カウント部２９３３は無彩色文字群認識部２９３２が検出したライン数をカウントする処理を行う。前記説明で用いた設定値の場合、主走査カウント部２９３３が出力する値は"２"（判定信号２９５）となる（図６（ｃ））。
【００７３】
以上のようにして主走査方向判定部２９３はブロック判定信号２９２を参照して主走査方向判定を行い判定信号２９５を出力する（ステップＳ２１０５）。
【００７４】
このように、各ラインにおいてブロック属性信号の連続性に注目しているのは、ブロック属性判定結果の精度を向上させるためである。例えば、文字を認識する場合、文字を構成する画素は連続して配置される可能性が高く、単にラインにおけるブロック属性信号の量（ヒストグラム）に着目しただけでは、信号値"１"を有する画素が連続的に配置されてはいないが多数配置されている場合であっても文字と判定されてしまう場合があり、判定結果の精度が下がってしまうこととなる。
【００７５】
次に副走査方向判定部２９４の処理内容に関して説明する。副走査方向判定部２９４の構成を図５（ｃ）に示す。図５（ｃ）に示したとおり、副走査方向判定部２９４は主走査連続性認識部２９４１、無彩色文字群認識部２９４２、副走査連続性認識部２９４３、副走査カウント部２９４４により構成される。また、副走査方向判定部２９４が参照するブロック属性判定信号は主走査方向判定部２９３が参照するブロック属性判定信号と同一である。
【００７６】
以降、副走査方向判定部２９４を構成する各処理部に関して説明するが、主走査連続性認識部２９４１、無彩色文字群認識部２９４２の動作は主走査方向判定部２９３で説明した主走査連続性認識部２９３１、無彩色文字群認識部２９３２の動作と同じであるため、ここでの説明は省略する。ただし、動作が同一であるだけで、連続度やライン中の連続度発生回数の検出数といった比較値は別の値が設定できるものとする。
【００７７】
副走査連続性認識部２９４３は無彩色文字群認識部２９４２により検出されたラインが副走査方向に連続していることを検出する処理部である。例えばブロック属性判定信号２９２が図７（ａ）に示した配列であり、主走査方向判定部２９３の説明で用いた比較値が設定（連続度：５、検出回数３回以上）されたとすると、"１"が５画素分連続し、且つライン中に３回以上であるラインは０ライン目、１ライン目、４ライン目、５ライン目、６ライン目となる。
【００７８】
副走査連続性認識部２９４３にて検出する副走査連続度が"２"と設定された場合、図７（ａ）では０ライン目と１ライン目、４ライン目と５ライン目が検出ライン群となる。５ライン目と６ライン目も検出ラインとしては連続しているが、５ライン目は４ライン目とで連続性が検出されているため、副走査連続性認識部２９４３では検出されない。副走査カウント部２９４４は、副走査連続性認識部２９４３にて検出されたライン群の数をカウントする。つまり、前記例では、カウント値は"２"（判定信号２９６）となる。
【００７９】
以上のようにして副走査方向判定部２９４はブロック判定信号２９２を参照して副走査方向判定を行い判定信号２９６を出力する（ステップＳ２１０６）。
【００８０】
次にブロック属性判定部２９７の処理内容を説明する。図１３はブロック属性判定部２９７の構成を示す図である。なお、図１３は、各ブロックにおいて実行される処理の順に記載されているので、ブロック属性判定部２９７における処理の各工程を、各ブロックにおいて実行される処理により表してもいる。同図において、２９７１及び２９７３は入力される判定信号２９５及び判定信号２９６との比較値が設定されるレジスタ、２９７２及び２９７４はレジスタ２９７１と判定信号２９５、レジスタ２９７３と判定信号２９６とを比較する比較器、２９７５はＡＮＤ回路である。
【００８１】
比較器２９７２は、主走査方向判定部２９３による判定信号２９５とレジスタ２９７１に設定された値と比較を行い、判定信号２９５がレジスタ２９７１設定値よりも大きい場合、条件を満たす信号（"１"）をＡＮＤ回路２９７５に対して出力する。同様に比較器２９７４は、副走査方向判定部２９４による判定信号２９６とレジスタ２９７２に設定された値と比較を行い、判定信号２９６がレジスタ２９７２設定値よりも大きい場合、条件を満たす信号（"１"）をＡＮＤ回路２９７５に対して出力する。
【００８２】
ＡＮＤ回路２９７５は、比較器２９７２及び比較器２９７４の出力が双方"１"である場合、ブロック属性判定結果信号２９８をアクティブ状態（"１"）として出力する。例えばブロック属性判定信号２９２が無彩色文字判定として設定され、且つ、図６、図７の例において、レジスタ２９７１及びレジスタ２９７３にそれぞれ"２"が設定されていた場合、比較器２９７２及び比較器２９７４は条件を満たす信号をＡＮＤ回路２９７５に対して出力するので、このとき入力された有効矩形領域の属性は無彩色であることを示す信号を出力する（"１"を出力）。一方、比較器２９７２又は２９７４のいずれかから"１"が入力されない場合には、有効矩形領域の属性は有彩色であることを示す信号を出力する（"０"を出力）。
【００８３】
以上のようにして、ブロック属性判定部２９７において、判定信号２９５及び２９６を利用して、有効矩形領域毎にブロック属性判定結果信号２９８が生成・出力される（ステップＳ２１０７）。
【００８４】
ブロック属性判定部２９７により判定されたブロック属性判定結果信号２９８は後段の判定結果保持部２９９により保持される（ステップＳ２１０８）。判定結果保持部２９９の構成を図１４に示す。なお、図１４は、各ブロックにおいて実行される処理の順に記載されているので、判定結果保持部における処理の各工程を、各ブロックにおいて実行される処理により表してもいる。図１４において、２９９１は入力される有効矩形領域の最終画素処理毎にアクティブとなるタイミング信号である。即ち、図４（ｃ）の場合を例にとると、ｄの画素が処理されると、タイミング信号２９９１が"１"となる。２９９２はブロック属性判定部２９７にて判定する領域単位でアクティブとなるタイミング信号である。図４（ｃ）の場合では、有効矩形領域ａｂｃｄの範囲に属する画素が処理されている間は、タイミング信号が"１"となる。
【００８５】
２９９３は有効矩形領域が主走査方向に何ブロック構成されるかを検出するための比較値を保持するレジスタ、２９９４はタイミング信号２９９２のアクティブ状態（信号値が"１"）と非アクティブ状態（信号値が"０"）との切り替わり回数を計測するカウンタ、２９９５はレジスタ２９９３の設定値とカウンタ２９９４の計数値とを比較してタイミング信号２９９７を生成する比較回路である。タイミング信号２９９７は、主走査方向の最終有効矩形領域の判定処理が終了したときにのみアクティブとなる信号であり、主走査方向単位の処理の同期信号として使用される。即ち、レジスタ２９９３には、主走査方向に存在するブロック数に相当する値が設定されることとなる。２９９６はブロック属性判定結果信号２９８を保持するシフトレジスタであり、２９９９はシフトレジスタ２９９６の出力信号をタイミング信号２９９７に同期して保持する判定結果保持レジスタである。
【００８６】
入力されるブロック属性判定結果信号２９８はタイミング信号２９９１に同期して順次シフトレジスタ２９９６に入力され、有効矩形領域毎にブロック属性判定結果が保持される。このとき、シフトレジスタ２９９６は入力される有効矩形領域毎に以前に保持したブロック属性判定結果信号をシフトしながら保持する。主走査方向の最終有効矩形領域の処理が終了すると、カウンタ２９９４においてカウントされた値とレジスタ２９９３の設定値とが例えば一致することとなり、タイミング信号２９９７が出力されて、このタイミング信号２９９７に同期してシフトレジスタ２９９６の値は判定結果保持レジスタ２９９９に転送される。これにより主走査方向に互いに隣接する複数の有効矩形領域のブロック属性判定結果が、判定結果保持レジスタ２９９９に保持されることとなる。このとき、シフトレジスタ２９９６は、次の有効矩形領域のブロック属性判定結果を保持するためにクリアされる。
【００８７】
続いて、上記で処理された有効矩形領域と副走査方向で隣接する有効矩形領域が主走査方向に順に処理され、ブロック属性判定結果信号２９８がシフトレジスタ２９９６に入力されると、シフトレジスタ２９９６は有効矩形領域のブロック属性判定結果信号として値を保持していく。このとき、主走査方向に全ての有効矩形領域のブロック属性判定結果が保持されるまでは、シフトレジスタ２９９６に保持されたブロック属性判定結果は判定結果保持レジスタ２９９９に転送されないので、次の主走査方向最終有効矩形領域の処理が完了するまで判定結果保持レジスタ２９９９の値は保持される。よって、この間にＣＰＵ１８０により、判定結果保持レジスタ２９９９の値の読み取りを行って、これまでに処理した有効矩形領域のブロック属性判定結果を利用することができる。
【００８８】
なお、これまでの説明においては、ＬＤＭＡＣ６５がスキャナ画像処理部２０に入力する有効矩形領域を単位としてブロック属性判定を行う場合について説明したが、本発明は前記矩形領域単位に限定されるものではない。つまり、入力される有効矩形領域を更に内部で細分化し、細分化した領域を単位としてブロック属性判定を行っても良い。図９にこの場合のブロック構成を示す。
【００８９】
図９において、スキャナ画像処理部２０全体が処理する有効矩形領域はａｂｃｄであり、前記有効矩形領域の処理結果を得るためにＬＤＭＡＣ６５がスキャナ画像処理部２０に入力する矩形画像領域は領域ＡＢＣＤである。図９では、有効矩形領域ａｂｃｄを更に主走査方向画素数Ｎｅからなる矩形領域ａｂ０ｃｄ０、ａ０ｂ１ｃ０ｄ１、ａ１ｂ２ｃ１ｄ２、ａ２ｂｃ２ｄの４つに分割してブロック属性を判定する旨を示している。この例の場合、図１４におけるタイミング信号２９９１は画素ｄ０、ｄ１、ｄ２、ｄが入力、処理されたタイミングでアクティブとなり、タイミング信号２９９２は画素ｄが入力、処理されたタイミングでアクティブとなる。
【００９０】
また、図９においては有効矩形領域の細分化には主走査方向画素Ｎｅ分均等に分割したが、各領域の主走査方向画素数をそれぞれ別の画素数としても良いし、有効矩形領域と細分化した領域に対して各々別の判定処理部を持たせてブロック属性の判定をしても良い。
【００９１】
有効矩形領域を更に細分化するＮｅの値は、ハード規模を考慮すると２のべき乗であることが望ましいが本発明装置におけるブロック属性判定処理は前記単位で限定されるものではない。また、図９においては主走査方向のみの細分化を示したが副走査方向に更に細分化しても良い。この場合の構成図を図１１に示す。図１１では、有効矩形領域ａｂｃｄを副走査方向にＮｆライン、Ｎｇラインに２分割し、内部領域ａｂ０ｅ０ｆ０、ａ０ｂ１ｅ１ｆ１、ａ１ｂ２ｅ２ｆ２、ａ２ｂｅ３ｆ３、ｇ０ｈ０ｃｄ０、ｇ１ｈ１ｃ０ｄ１、ｇ２ｈ２ｃ１ｄ２、ｇ３ｈ３ｃ２ｄの８つの領域に分割している。この例の場合、図１４におけるタイミング信号２９９１は画素ｆ０、ｆ１、ｆ２、ｆ３、ｄ０、ｄ１、ｄ２、ｄが入力、処理されたタイミングでアクティブとなり、タイミング信号２９９２は画素ｄが入力、処理されたタイミングでアクティブとなる。
【００９２】
変倍処理を行うような場合であって、有効矩形領域の処理結果を２のべき乗としたい場合は、周囲のラインデータを参照することが求められる。即ち、単に参照画素として有効矩形領域の周辺の画素を利用するだけでなく、当該周辺の画素を注目画素として処理を実行しなければならない場合がある。この場合、最終的に処理され、出力される有効矩形領域は、主走査方向画素数あるいは副走査ライン数を２のべき乗として細分化可能な領域となるが、ラインメモリ１００からスキャナ画像処理部へ入力される画像データでは、上記周囲のラインデータも有効矩形領域として入力される。よって、ブロック属性判定処理においては、主走査方向画素数あるいは副走査ライン数を２のべき乗として細分化することが困難となる場合がある
本実施例では、上記の様な場合に対応して、画像処理装置２００のブロック属性判定部２９が、入力される文字判定信号２４５及び無彩色判定信号２８５を主走査方向及び副走査方向にマスクさせる機能を備える。図１０及び図１２はこの場合の領域を示す図である。図１０において、例えば主走査変倍処理によって、有効矩形領域ａｂｃｄの処理結果を得るための中間有効矩形領域としてａｂ３ｃｄ３が必要な場合、変倍処理に必要となる参照画素Ｎｆ分の文字判定信号及び無彩色判定信号が有効画素として余分にスキャナ処理部２０に入力される。
【００９３】
Ｎｆ画素分余分に入力されても最終的に変倍処理によって出力される矩形領域結果はａｂｃｄであるため、ブロック属性判定処理部はＮｆ分として入力される文字判定信号２４５及び無彩色判定信号２８５の入力を判定信号生成部２９１によりマスク処理してブロック属性判定処理時のカウントを行わず、矩形領域ａｂｃｄ分の信号のみがカウントされる。
【００９４】
更に図１２においては、主走査変倍処理及び副走査変倍処理によって、有効矩形領域ａｂｃｄの処理結果を得るための中間有効矩形領域として領域ａｂ３ｋｌが必要な場合、変倍処理に必要となる主走査方向参照画素Ｎｈ及び副走査方向参照ラインＮｉ分の文字判定信号及び無彩色判定信号が有効画素として余分に入力される。
【００９５】
Ｎｈ画素及びＮｉライン分入力されても最終的に変倍処理によって出力される矩形領域結果はａｂｃｄであるため、ブロック属性判定処理部はＮｈ及びＮｉ分として入力される文字判定信号２４５及び無彩色判定信号２８５の入力を判定信号生成部２９１によりマスク処理してブロック属性判定処理時のカウントを行わない。
【００９６】
以上のように、本実施例に対応する本発明では、読み取りデバイスにより読み取られた画像データを共通のメインメモリに一旦格納した後、矩形領域単位で画像データを切り出して画像処理を行うため、画像処理部内に構成するメモリの大幅な削減、削除により装置全体の低コスト化及び画像処理回路の汎用性を高めることができる。特に、入力される画像データが矩形領域であるため、ブロック属性判別処理部にはメモリを構成しなくても判別が可能となる効果がある。
【００９７】
更に、入力される矩形領域単位の画像データ及び入力の矩形領域単位の画像データを更に細分化することにより得られる矩形領域毎に、その領域の属性を判定し、判定結果に対応したパラメータを用いて記録系処理を行わせることにより、出力画像の高画質化をはかることができる。
【００９８】
また、ブロック属性判定処理部と同時に動作する各処理部の参照矩形領域がブロック属性判定処理部の必要とする領域よりも大きい場合は、不要部分をマスク処理することでブロック属性の判定精度をより向上させ、且つ連動している他処理部に対する影響をなくすことが可能となる。
【実施例２】
【００９９】
本実施例においは、実施例１において求められたブロック属性判定結果信号を利用した画像処理について説明する。
【０１００】
まず、スキャナ画像処理部２０の処理結果はＬＤＭＡＣ６５のＤＭＡＣ／１ｃｈ及びメモリ制御部７０を介してメインメモリ１００に矩形領域単位で展開される。本発明装置をスキャナモードで動作させた場合、メインメモリ１００に展開された画像データは例えばＤＭＡＣ９０によりＵＳＢ２．０Ｄｅｖｉｃｅ１４０にＤＭＡ転送される。
【０１０１】
本発明装置をコピーモードで動作させる場合は、メインメモリ１００に展開された画像データに対して、プリンタ画像処理３０により記録系の画像処理が施される。記録系の画像処理としては出力マスキング処理、Ｎ値化処理、スムージング処理等があるが、以降の説明においてはブロック属性判定結果信号を使用するＮ値化処理に関して説明する。
【０１０２】
図１５はプリンタ画像処理部３０におけるＮ値化処理を行う処理ブロック構成を示す図である。なお、図１５は、各ブロックにおいて実行される処理の順に記載されているので、プリンタ画像処理部３０におけるＮ値化処理の各工程を、各ブロックにおいて実行される処理により表してもいる。スキャナ画像処理部２０の図２に示す各処理部において処理された画像データは、メインメモリ１００に矩形領域単位で展開され、所定の有効矩形領域の処理が完了した時点でライン単位のデータ出力が可能となる。ＣＰＵ１８０により、ＬＤＭＡＣ６５のＤＭＡＣ／２ｃｈの制御パラメータとして、ライン単位の画像データ転送に必要となるアドレス等が設定されると、ＬＤＭＡＣ６５はメモリ制御部７０を介して、メインメモリ１００からプリンタ画像処理部３０に画像データを転送する。プリンタ画像処理部３０に入力される画像データは図１５における入力信号３０１として入力される。
【０１０３】
以降の説明においては、入力形式Ｒ，Ｇ，Ｂの点順次、各成分のビット数は８ｂｉｔ（０〜２５５）であるとする。図１５において、３０２は入力信号３０１に対して、非線形な階調補正及び輝度濃度変換を行うγテーブル、３０３は加算器、３０４は加算器３０３の出力を所定のレンジに収めるクランプ処理部、３０５はクランプ処理部３０４の出力信号を無彩色化する無彩色化処理部、３０８はスキャナ画像処理部２０内部に構成されたブロック属性判定処理部２９により判定されたブロック属性判定結果信号であり、ＣＰＵ１８０により所定タイミングで読み取られ、プリンタ画像処理部３０に通知されるものである。
【０１０４】
３０９はブロック属性結果判定信号３０８を画素展開する判定信号画素展開部、３０７は無彩色化処理３０５が出力する信号とクランプ処理部３０４が出力する信号を判定信号画素展開部３０９が出力する信号に応じて選択出力するセレクタ、３１０は判定信号画素展開部３０９が出力する信号及びセレクタ３０７が出力する信号に対応した出力コード（印字データ）を出力し、更に前記セレクタ３０７に対して入力される信号に対応した多値データを出力する出力テーブル、３１２はセレクタ３０７が出力する信号と出力テーブル３１０が出力する多値データとの差分を演算する減算器、３１３は減算器３１２により演算された差分を隣接する画素に拡散処理する誤差拡散処理部、３１４は次ラインのデータ処理位置に加算する値を保持する誤差バッファ、３１５は誤差バッファ３１４が出力する該当ラインの誤差データと誤差拡散処理部３１３が出力する値とを加算する加算器である。
【０１０５】
以降、更に詳細にプリンタ画像処理部３０の動作を説明する。プリンタ画像処理部３０の入力データは、スキャナ画像処理部２０により処理された画像データであり、メモリ制御部７０及びＬＤＭＡＣ６５を介してライン単位でメインメモリ１００から入力される。入力データはＲ，Ｇ，Ｂ各８ｂｉｔの輝度データである。プリンタ画像処理部３０内部に構成したγテーブル３０２は、この入力画像データ３０１に対し、非線形な階調補間処理と、記録系の処理データである濃度信号、即ちシアン（以下、Ｃ）、マゼンタ（以下、Ｍ）、イエロー（以下、Ｙ）への変換処理を施す。
【０１０６】
γテーブル３０２によって変換された画像データは、後述する誤差拡散処理部３１３によって生じる前画素の誤差データと誤差バッファ３１４に記憶された前ラインの対象誤差データとで加算器３１５及び加算器３０３によって加算され、クランプ処理部３０４に入力される。クランプ処理部３０４は、加算器３０３によって所定のレンジを越えた部分の補正、即ち、マイナス値となった場合は"０"に、"２５５"を超えた場合は"２５５"にクランプ処理する。
【０１０７】
クランプ処理されたＣ，Ｍ，Ｙの８ｂｉｔ画像データはセレクタ３０７に出力されるとともに、無彩色化処理部３０５に対しても出力される。無彩色化処理部３０５は、入力された各々値の異なるＣ，Ｍ，Ｙの画像データに対して全ての画像成分が同一レベルとなる処理を行う。具体的には、入力されるＣ、Ｍ、Ｙの最小値あるいは最大値を新たなＣ、Ｍ、Ｙ画像データとする処理や、Ｃ、Ｍ、Ｙの平均値を算出して新たなＣ、Ｍ、Ｙ画像データとする処理、更には前記平均値に対してオフセットを加算できる機能を備え、演算後の値を新たなＣ、Ｍ、Ｙ画像データとする処理のいずれかを行う。前述した処理により無彩色化されたＣ、Ｍ、Ｙ画像データはセレクタ３０７に入力される。
【０１０８】
セレクタ３０７の切替信号には、スキャナ画像処理部２０内部のブロック属性判定部２９において生成されたブロック属性判定結果信号２９８が利用される。具体的には、ＣＰＵ１８０によってブロック属性判定部２９の判定結果保持部２９９から読み出されたブロック属性判定結果信号２９８は、同じくＣＰＵ１８０によってプリンタ画像処理部３０に判定信号３０８として、判定信号画素展開部３０９に書き込まれる。
【０１０９】
また、ＣＰＵ１８０はブロック属性判定処理部２９が判定したブロック領域単位（主走査画素数）をプリンタ画像処理部３０に通知する。ブロック属性判定処理部２９による判定は画素単位ではなく、ＣＰＵ１８０により指定された矩形領域単位になされるため、判定信号画素展開部３０９によって画素展開される。
【０１１０】
判定信号画素展開部３０９における画素展開の概念を図１８を参照して説明する。但し、説明を簡略化するため、図１８は、ブロック属性判定処理部２９による判定矩形領域を主走査方向２画素、副走査方向２ラインを単位とした場合を記載している。図１８において、左側に位置する矩形領域のブロック属性判定結果は０である。判定信号画素展開部３０９は、判定矩形領域が主走査方向に２画素であることを参照して、主走査方向に画素展開する。
【０１１１】
即ち、ブロック属性判定結果"０"を"００"と画素展開する。以降、同図中央に位置する矩形領域のブロック属性判定結果、同図右側に位置する矩形領域のブロック属性判定結果をそれぞれ画素展開し、この３矩形領域の画素展開結果として"００１１１１"を生成する。なお、有効矩形領域がブロック属性判定処理部２９内部で細分化されている場合においても以上に説明した概念を用いて、主走査方向に矩形領域毎に画素展開を施せばよい。
【０１１２】
セレクタ３０７は、判定信号画素展開部３０９によって展開された判定結果をもとに、入力されるＣ、Ｍ、Ｙ画像データの切り替えを行う。つまり、判定信号画素展開部３０９が出力する画素展開された判定信号が"０"である場合はクランプ処理部３０４が出力するＣ、Ｍ、Ｙ画像データを後段処理部に対して出力し、判定信号画素展開部３０９が出力する画素展開された判定信号が"１"である場合は無彩色化処理３０５が出力するＣ、Ｍ、Ｙのレベルが同一である無彩色化処理後の画像データを後段処理部に対して出力する。
【０１１３】
出力テーブル３１０は、判定信号画素展開部３０９が出力する画素展開された判定信号レベルに応じたテーブルが設定されており、判定信号画素展開部３０９からの判定信号は、セレクタ３０７だけでなく出力テーブル３１０へも入力される。つまり、判定信号レベル"０"用の出力テーブルと判定信号レベル"１"用の出力テーブルが構成されている。ただし、無彩色判定（無彩色文字判定）時に必要となるテーブルは有彩色判定（有彩色文字判定）時に必要となるテーブルよりも少ない構成にして良いことが知られているため、２通りのテーブルを用意したとしてもテーブルの容量が全体として２倍となるわけではない。
【０１１４】
出力テーブル３１０は、セレクタ３０７のＣ、Ｍ、Ｙ出力信号の各上位３ｂｉｔのデータを基に、判定信号画素展開部３０９の判定信号に従ったテーブルを参照して、出力画像データコード３１１ａと入力データに基づいたＣ、Ｍ、Ｙの画像データ３１１ｂを出力する。この動作を説明する図として図１６を示す。図１６は判定信号画素展開部３０９の出力信号により選択されている出力テーブルを表すものとする。
【０１１５】
例えばセレクタ３０７によるＣ、Ｍ、Ｙの各上位３ｂｉｔの組み合わせが太枠１６０１で囲って示す"101110101"である場合、出力テーブル３１０が出力する出力画像データコード３１１ａは、Ｃが"１"、Ｍが"０"、Ｙが"１"、Ｋが"０"となる。また、この場合の入力データに基づいたＣ、Ｍ、Ｙの画像データ３１１ｂはＣが"２３０"、Ｍが"２４０"、Ｙが"２３０"となる。
【０１１６】
なお、前記出力テーブル３１０の説明においては、出力画像データコード３１１ａは各色とも１ｂｉｔのデータとしたが、本発明における出力テーブルのビット数構成は１ビットに限定されるものではない。つまり、最終的な画像データ出力部（ＬＢＰプリンタ、インクジェットプリンタ等）の出力可能なレベルのテーブルが設定されていても良い。
【０１１７】
出力テーブル３１０の出力信号である画像データ３１１ｂはセレクタ３０７の出力画像データと共に減算器３１２に入力される。減算器３１２は出力テーブル３１０がセレクタ３０７の出力画像データの各色上位３ｂｉｔに基づいた画像データ３１２と実際のその処理位置の画像データとの差分を演算する。この演算結果を後段の誤差拡散処理に入力、処理することで入力データと出力データとの濃度の保存が行われる。
【０１１８】
誤差拡散処理部３１３が行う処理は、既に公知の画像処理手法であり、所定のマトリクスにより構成される重み付け演算によって、入力の差分データを隣接する画素に振り分ける。振り分けた誤差データは、対象が次のラインの画素となるものは誤差バッファ３１４に書き込む。また、対象が次に処理される画素となるものは加算器３１５に対して出力する。加算器３１５は誤差拡散処理部３１３が出力する誤差データと、前ラインの誤差拡散処理によって生じた対象の誤差データとを加算演算を行い、加算器３０３に出力する。
【０１１９】
このように、スキャナ画像処理部２０内部に構成したブロック属性判定部２９のブロック属性判定結果信号を基に、プリンタ画像処理部３０で処理する画像データに無彩色処理を施し、更に専用の出力テーブルを用いることで画素属性に応じたプリンタ画像処理を行うことができる。
【０１２０】
なお、上記に説明した本実施例では、プリンタ画像処理部３０を、無彩色化処理部３０５がクランプ処理部３０４の後に配置される構成としたが、これはブロック属性判定結果が互いに隣接する矩形領域で異なる場合に、画像劣化を防止するために有効な構成である。図１７を参照して、画像劣化防止に関する概念を説明する。同図において、境界Ａ、境界Ｂ、境界Ｃ、境界Ｄを境に隣接するブロックの属性判定結果が、一方は有彩色判定、他方は無彩色判定というように互いに異なっている。
【０１２１】
このような場合に、無彩色化処理部３０５を、γテーブル３０２の直後や加算器３０３の直後に配置し、無彩色化されたデータがクランプ処理を行わずにセレクタ３０７に入力された場合、上記の４つの境界位置において、有彩色判定結果に基づいて行われた誤差拡散処理による誤差データや、無彩色判定結果に基づいて行われた誤差拡散処理による誤差データが、その境界で一気に出力され、レンジを越えて境界部分の出力データに大きな影響を与えることになる。つまり、境界部分における画像データが滑らかなものでなくなり、人間の目に対して悪影響を及ぼすこととなる。
【０１２２】
以上のように、本実施例に対応する本発明では、記録系処理部において、判定結果を矩形領域に対応させた形で画素展開し、展開後の判定信号を基に、最適な画像処理パラメータを使用して画像処理を行うことが可能となる。
【実施例３】
【０１２３】
本実施例では、本発明の画像処理装置２００をコピーモードで動作させ、かつ、スキャナ画像処理部２０にて変倍処理を行った場合のブロック属性判定結果の画素展開に関して説明する。
【０１２４】
本実施例に対応する画像処理装置２００では、図２に示すブロック属性判定処理部２９におけるブロック属性判定処理は、変倍処理部２７における変倍処理の前段処理として行われる。ブロック属性判定処理部２９における処理を前処理としている理由は、ブロック属性判定の精度を上げるためである。
【０１２５】
仮に、ブロック属性判定処理を変倍処理の後段で実行した場合、文字判定処理部２４及び無彩色判定処理部２８における処理も自動的に変倍処理の後に実行されることになる。これにより、変倍処理部２７による変倍処理が先に実行されることで、文字判定処理及び無彩色判定処理が変倍処理の結果に影響を受けることになる。
【０１２６】
より具体的な場合を考えると、例えば変倍処理によって画像データが拡大された場合、当然に文字判定及び無彩色判定はその拡大処理後の画像データを基に行われることになる。文字判定は線画のエッジ量の検出、網点検出をすることを処理の基礎とすることが多いため、拡大処理により線形補間処理が行われればエッジ成分が減退するなどの原因で、判定精度が落ちてしまうおそれがある。つまり、等倍の画像データを基に判定すれば文字判定となるものが、拡大処理後の画像データを基に判定することで文字判定とならなくなる場合が発生する。
【０１２７】
無彩色判定処理も同様であり、拡大処理によって判定画素の輝度成分と色成分が間延びしてしまい誤判定の可能性が高くなる。文字判定結果、無彩色判定結果の誤判定は、ブロック属性判定の誤判定に直結し、画像劣化のもととなる。よって、本実施例に対応する画像処理装置２００では、ブロック属性判定処理部２９が変倍処理部２７の前段に位置することとなる。
【０１２８】
しかしながら、ブロック属性判定処理部２９を変倍処理部２７の前段とすると、変倍を行ったコピー動作時のブロック属性判定結果信号の画素展開が複雑となる。なぜなら、スキャナ画像処理部２０が出力する画像データは変倍処理部２７による変倍処理が行われたものになっているが、ブロック属性判定処理は等倍の矩形領域に対して行われるからである。
【０１２９】
そこで、本実施例では、変倍処理時のブロック属性判定信号の画素展開をＣＰＵ１８０とプリンタ画像処理部３０での処理とに分担して行わせる構成をとる。
【０１３０】
図１９に１５０％変倍（拡大）処理時の画素展開図を示す。但し、説明を簡略化するため、図１９は図１８と同様に、ブロック属性判定処理部２９による判定矩形領域を主走査方向２画素、副走査方向２ラインを単位とした場合を記載している。図１９において、左側、中央、右側にそれぞれ位置する矩形領域のブロック属性判定結果は０、１、１である。また、本実施例に対応する画像処理装置２００の構成においては、変倍処理部２７に対して倍率を設定するのはＣＰＵ１８０であるため、ブロック属性判定処理部２９による等倍のブロック属性判定結果信号を副走査側に画素（ライン）展開する処理はＣＰＵ１８０により行う。
【０１３１】
なお、ブロック属性判定結果信号を主走査側に画素展開するのはプリンタ画像処理部３０内部に構成された判定信号画素展開部３０９にて行う構成をとる。図１９の例を用いて説明すると、ＣＰＵ１８０はまずブロック属性判定処理部２９の判定結果保持部２９９からブロック属性判定結果信号として"０１１"を読み取る。次に読み取ったブロック属性判定結果信号を変倍処理部２７に対して指定した倍率に基づきライン展開する（この場合、副走査方向に画素数が１．５倍、即ち２画素が３画素に拡大されるので、"０１１"，"０１１"，"０１１"となる）。
【０１３２】
ＣＰＵ１８０はプリンタ画像処理部３０に入力するスキャナ画像処理部２０による画像処理後の画像データの入力に同期させて、前記ライン展開したブロック属性判定結果信号の対象判定結果と変倍率とをプリンタ画像処理部３０に入力する。プリンタ画像処理部３０内部の判定信号画素展開部３０９は、前記変倍率に基づき、入力されるブロック属性判定結果信号を主走査方向に画素展開する。この場合、主走査方向に画素数が１．５倍、即ち２画素が３画素に拡大されるので、"０１１"の各要素がそれぞれ３つずつ連続するように拡大され、"０００１１１１１１”となる。このように拡大されたブロック属性判定結果信号を利用して上記に説明した記録系の画像処理が施される。
【０１３３】
なお、図１９においては説明の容易化のため変倍率を１５０％としたが、実際の設定倍率は１％刻みであることが通常であり、全てをプリンタ画像処理部３０で行う構成とするとハード規模が大きくなる。しかし、本実施例に対応する画像処理装置２００の構成では、処理の同期関係も含めて変倍率を知るＣＰＵ１８０が介在するため、制御が簡略化される。また、図１９における説明では拡大処理に関して説明したが、縮小処理を行わせる場合においても、ＣＰＵ１８０とプリンタ画像処理部３０との協働により処理を行う。
【０１３４】
また、倍率によって生じるブロック属性判定結果の画素展開誤差は、プリンタ画像処理部３０内部でより影響のないブロック属性判定結果の論理に修正して記録系の画像処理を行う構成をとる。例えば、有彩色判定結果を用いるか、無彩色判定結果を用いるかが微妙な画素の記録系処理は、出力画像に対する影響を避けるため、有彩色判定結果を使用して後段の記録系画像処理を行ってもよい。
【０１３５】
このように、本実施例に対応する本発明では、読み取り系処理にて変倍処理が行われた場合でも、装置全体を制御するＣＰＵと記録系画像処理部とがブロック属性判定結果をそれぞれ適する方向に展開させるので、変倍処理時の領域属性結果の展開を、主走査方向及び副走査方向といった方向単位で処理を分担化させることで全体の制御の簡略化とハード規模の削減をはかることができる。
【０１３６】
［その他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【０１３７】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１３９】
【図１】本発明の実施例に対応する画像処理装置１００の全体構成の一例を表す図である。
【図２】本発明の実施例に対応するスキャナ画像処理部２０の構成の一例を表す図である。
【図３】本発明の実施例に対応する矩形領域の画像データ転送を行うＤＭＡＣ６５の構成の一例を表す図である。
【図４】本発明の実施例に対応する矩形領域の画像データ読み取り制御を説明するための図である。
【図５】本発明の実施例に対応するブロック属性判定処理部２９の構成の一例を機能的に表す図である。
【図６】本発明の実施例に対応する判定信号生成処理の内容を説明するための図である。
【図７】本発明の実施例に対応する判定信号生成処理の内容を説明するための図である。
【図８】本発明の実施例に対応する判定信号生成部２９１の構成の一例を機能的に表す図である。
【図９】本発明の実施例に対応する有効矩形領域の細分化を説明するための図である。
【図１０】本発明の実施例に対応する有効矩形領域の細分化を説明するための図である。
【図１１】本発明の実施例に対応する有効矩形領域の細分化を説明するための図である。
【図１２】本発明の実施例に対応する有効矩形領域の細分化を説明するための図である。
【図１３】本発明の実施例に対応するブロック属性判定部２９７の構成の一例を機能的に表す図である。
【図１４】本発明の実施例に対応する判定結果保持部２９９の構成の一例を機能的に表す図である。
【図１５】本発明の実施例２に対応するプリンタ画像処理部３０の構成の一例を機能的に表す図である。
【図１６】本発明の実施例２に対応する印字データを生成するテーブル構成例を表す図である。
【図１７】本発明の実施例２に対応する、ブロック属性判定結果が互いに隣接する矩形領域で異なる場合を説明するための図である。
【図１８】本発明の実施例２に対応する、ブロック属性判定結果を画素展開、ライン展開する場合を説明するための図である。
【図１９】本発明の実施例３に対応する、ブロック属性判定結果を画素展開、ライン展開する場合を説明するための図である。
【図２０】従来装置の構成例を表す図である。
【図２１】本発明の実施例に対応するブロック属性判定処理の流れを示すフローチャートの一例である。
【図１】
2005173924.tif 000003
【図２】
2005173924.tif 000004
【図３】
2005173924.tif 000005
【図４】
2005173924.tif 000006
【図５】
2005173924.tif 000007
【図６】
2005173924.tif 000008
【図７】
2005173924.tif 000009
【図８】
2005173924.tif 000010
【図９】
2005173924.tif 000011
【図１０】
2005173924.tif 000012
【図１１】
2005173924.tif 000013
【図１２】
2005173924.tif 000014
【図１３】
2005173924.tif 000015
【図１４】
2005173924.tif 000016
【図１５】
2005173924.tif 000017
【図１６】
2005173924.tif 000018
【図１７】
2005173924.tif 000019
【図１８】
2005173924.tif 000020
【図１９】
2005173924.tif 000021
【図２０】
2005173924.tif 000022
【図２１】
2005173924.tif 000023