(57)【要約】【課題】並列しておこなわれる処理と逐次おこなわれる処理との切替タイミングがずれることによって遅延が発生することがない画像処理装置を提供する。【解決手段】画像データを並列的に処理するＳＩＭＤ型プロセッサー５０６と、ＳＩＭＤ型画像データ処理部５００を制御する画像データ制御部２０３と、画像データ制御部２０３とは無関係にＳＩＭＤ型プロセッサー５０６から出力された画像データのみを逐次処理する画像データ逐次処理手段５０７と、を設ける。【選択図】図５
2007259490.tif 000002
【特許請求の範囲】
【請求項１】
一方向に配列された複数の画素で構成される複数の画素ラインによる画像データを入力する入力手段と、
前記入力手段によって入力された画像データを受け取り、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素間でおこなわれる処理を、並列的に実行する画像データ並列処理手段と、
前記画像データ並列処理手段が受け取った画像データについて、同一の画素ラインに含まれる画素間でおこなわれる処理を、逐次的に実行する画像データ逐次処理手段と、
を備え、
前記画像データ逐次処理手段は、当該画像データ逐次処理手段によって処理がおこなわれた場合、処理結果を前記画像データ並列処理手段に戻すことを特徴とする画像処理装置。
【請求項２】
前記画像データ並列処理手段は、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素の誤差拡散処理を実行し、前記画像データ逐次処理手段は、同一の画素ラインに含まれる画素間の誤差拡散処理を実行することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像データ並列処理手段は、注目画素が含まれる現画素ラインよりも前に処理された前画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データと注目画素の画素データとを加算する第１の加算手段と、前記第１の加算手段における加算によって算出された加算値を前記画像データ逐次処理手段に出力する出力手段とを備え、
前記画像データ逐次処理手段は、現画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データを算出する誤差データ算出手段と、前記誤差データ算出手段によって算出された誤差データと前記出力手段が出力した加算値とを加算する第２の加算手段とを備え、
前記画像データ並列処理手段は、さらに、前記誤差データ算出手段によって算出された誤差データを前記第１の加算手段の加算に必要な数だけ保存する誤差データ保存手段を備えることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記画像データ並列処理手段は、コンピュータプログラムの制御により複数の処理を並列的に実行できるＳＩＭＤ型のプロセッサーを備え、かつ、前記画像データ逐次処理手段は、コンピュータプログラムの制御によらず稼動するハードウェアであることを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記画像データ逐次処理手段は、２値誤差拡散、３値誤差拡散、４値誤差拡散のうちのいずれによって誤差拡散を実行するかを選択する誤差拡散選択手段と、誤差拡散処理に使用される演算係数を選択する係数選択手段と、誤差拡散処理にブルーノイズを使用するか否かを選択するブルーノイズ選択手段とのうちの少なくとも一つを備えることを特徴とする請求項２〜４のいずれか一つに記載の画像処理装置。
【請求項６】
請求項１〜５のいずれか一つに記載の画像処理装置を備えたことを特徴とするプリンター装置。
【請求項７】
請求項１〜５のいずれか一つに記載の画像処理装置を備えたことを特徴とする複写装置。
【請求項８】
請求項１〜５のいずれか一つに記載の画像処理装置を備えたことを特徴とするファクシミリ装置。
【請求項９】
請求項１〜５のいずれか一つに記載の画像処理装置を備えたことを特徴とする画像形成複合装置。
【請求項１０】
一方向に配列された複数の画素で構成される複数の画素ラインによる画像データを入力する入力工程と、
前記入力工程によって入力された画像データを受け取り、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素間でおこなわれる処理を、並列的に実行する画像データ並列処理工程と、
前記画像データ並列処理工程が受け取った画像データについて、同一の画素ラインに含まれる画素間でおこなわれる処理を、逐次的に実行する画像データ逐次処理工程と、
を含み、
前記画像データ逐次処理工程は、当該画像データ逐次処理工程によって処理がおこなわれた場合、処理結果を前記画像データ並列処理工程に戻すことを特徴とする画像処理方法。
【請求項１１】
前記画像データ並列処理工程は、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素の誤差拡散処理を実行し、前記画像データ逐次処理工程は、同一の画素ラインに含まれる画素間の誤差拡散処理を実行することを特徴とする請求項１０に記載の画像処理方法。
【請求項１２】
前記画像データ並列処理工程は、注目画素が含まれる現画素ラインよりも前に処理された前画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データと注目画素の画素データとを加算する第１の加算工程と、前記第１の加算工程における加算によって算出された加算値を前記画像データ逐次処理工程に送出する出力工程とを含み、
前記画像データ逐次処理工程は、現画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データを算出する誤差データ算出工程と、前記誤差データ算出工程において算出された誤差データと前記出力工程において出力された加算値とを加算する第２の加算工程とを含み、
前記画像データ並列処理工程は、さらに、前記誤差データ算出工程によって算出された誤差データを前記第１の加算工程における加算に必要な数だけ保存する誤差データ保存工程を含むことを特徴とする請求項１１に記載の画像処理方法。
【請求項１３】
前記画像データ並列処理工程は、コンピュータプログラムの制御により実行され、かつ、前記画像データ逐次処理工程は、コンピュータプログラムの制御によらず実行されることを特徴とする請求項１１または１２に記載の画像処理方法。
【請求項１４】
前記画像データ逐次処理工程は、２値誤差拡散、３値誤差拡散、４値誤差拡散のうちのいずれによって誤差拡散を実行するかを選択する誤差拡散選択工程と、誤差拡散処理に使用される演算係数を選択する係数選択工程と、誤差拡散処理にブルーノイズを使用するか否かを選択するブルーノイズ選択工程とのうちの少なくとも一つを含むことを特徴とする請求項１１〜１３のいずれか一つに記載の画像処理方法。
【請求項１５】
一方向に配列された複数の画素で構成される複数の画素ラインによる画像データを入力する入力手順と、
前記入力手順によって入力された画像データを受け取り、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素間でおこなわれる処理を、並列的に実行する画像データ並列処理手順と、
前記画像データ並列処理手順が受け取った画像データについて、同一の画素ラインに含まれる画素間でおこなわれる処理を、逐次的に実行する画像データ逐次処理手順と、
を含み、
前記画像データ逐次処理手順は、当該画像データ逐次処理手順によって処理がおこなわれた場合、処理結果を前記画像データ並列処理手順に戻すことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合装置および画像処理方法に関する。
【背景技術】
【０００２】
現在、コピー機、ファクシミリ、プリンター、スキャナーといった画像形成装置の複合装置として構成された、いわゆるＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ）と呼ばれる画像形成複合装置がある。このようなＭＦＰの画像処理部に、ＳＩＭＤ（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ｄａｔｅ  Ｓｔｒｅａｍ）型の演算処理部と補助的な演算処理部とを設け、両者を画像処理の種別に応じて使い分けることにより、高速、かつプログラマブルに画像を処理する技術がある（たとえば、下記特許文献１を参照。）。
【０００３】
ＳＩＭＤ型演算処理部は、処理に使用されるデータを一度に複数入力し、入力した複数のデータを並列的に処理するため、一度に大量のデータが処理することができ、短時間のうちに演算処理ができるという利点がある。
【０００４】
ところで、画像処理には、ＳＩＭＤ型演算処理部で並列的に処理することによって処理速度が高められる処理と、逐次演算で処理する方が処理効率が高い処理とがある。一部にＳＩＭＤ型演算処理部を用いると不利な処理がある画像処理の一例として、たとえば、誤差拡散処理が挙げられる。
【０００５】
なお、誤差拡散処理は、電気的なディジタル信号に変換された各画素（画像）のデータ（画像データ）を紙などの画像担持体上で表現する際、各画素の画像データの値とあらかじめ定められている閾値との差分（誤差）を他の画素の画像データの処理に反映させる処理である。また、誤差拡散処理では、主走査方向にのみ配列された画素で構成されるライン（画素ライン）が副走査方向に複数配列されたものとして画像を取り扱う。
【０００６】
誤差拡散処理におけるＳＩＭＤ型演算処理部を用いると有利な処理とは、互いに異なる画素ラインに含まれる画素間でおこなわれる誤差拡散処理が該当する。また、逐次演算処理の方が有利な処理とは、同一の画素ラインに含まれる画素間でおこなわれる誤差拡散処理が該当する。
【０００７】
誤差拡散処理を従来の画像処理装置でおこなう場合、異なる画素ラインに含まれる画素間でおこなわれる誤差拡散処理をＳＩＭＤ型演算処理部で実行し、同一の画素ラインに含まれる画素間でおこなわれる誤差拡散処理を補助的な演算処理部で逐次的におこなうことが考えられる。
【０００８】
【特許文献１】特開平９−２８２３０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、ＭＦＰのような画像形成複合装置では、ＳＩＭＤ型演算処理部と補助演算処理部とが、同一の制御装置で制御されている。そして、制御装置は、画像処理の内容に応じてＳＩＭＤ型演算処理部による画像処理と補助的な演算処理部による画像処理とを切り替えて画像形成複合装置を制御している。
【００１０】
制御装置によるＳＩＭＤ型演算処理部と補助的な演算処理部との切替は、画像処理のタイミングに対して常に最適なタイミングになるとは限らない。切替のタイミングが画像処理のタイミングに対して適切でない場合、画像処理は、短時間ながら一時停止する。このため、画像処理時間の遅延が発生し、画像形成複合装置にＳＩＭＤ型演算処理部の画像処理時間短縮の効果が十分に発揮されないという不具合があった。
【００１１】
この発明は、上述した従来技術による問題点を解消するため、統括的な制御とは無関係にＳＩＭＤ型演算処理部に適さない処理をおこなう演算処理部を設ける。そして、制御装置による画像処理の切替が不用であり、このために画像処理の遅延のない画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合機および画像処理方法を提供することを目的とする。
【００１２】
また、この発明は、統括的な制御とは無関係にＳＩＭＤ型演算処理部に適さない処理をおこなう演算処理部を誤差拡散処理をおこなうものとして構成し、誤差拡散処理の遅延がない画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合機および画像処理方法を提供することを目的とする。
【００１３】
また、この発明は、統括的な制御によって制御されない演算処理部に対して誤差拡散モードを変更できる構成を設け、処理される画像に応じて適切な誤差拡散処理ができる画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合機および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するため、本発明にかかる画像処理装置は、一方向に配列された複数の画素で構成される複数の画素ラインによる画像データを入力する入力手段と、前記入力手段によって入力された画像データを受け取り、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素間でおこなわれる処理を、並列的に実行する画像データ並列処理手段と、前記画像データ並列処理手段が受け取った画像データについて、同一の画素ラインに含まれる画素間でおこなわれる処理を、逐次的に実行する画像データ逐次処理手段と、を備え、前記画像データ逐次処理手段は、当該画像データ逐次処理手段によって処理がおこなわれた場合、処理結果を前記画像データ並列処理手段に戻すことを特徴とする。
【００１５】
この発明によれば、入力手段による制御とは無関係に前記画像データ並列処理手段から出力された画像データのみを逐次処理することができる。このため、入力手段は、画像データ並列処理手段と画像データ逐次処理手段とを切り替える制御をおこなうことがなくなる。また、異なる画素ラインに含まれる画素間の処理を並列におこなうとともに、同一の画素ラインに含まれる画素間の処理を逐次おこなうことができる。さらに、画像データ逐次処理手段によって処理がおこなわれた場合、処理結果を画像データ並列処理手段に戻すことができる。このため、画像データ並列処理手段と画像データ逐次処理手段とを連携させ、異なる画素ラインに含まれる画素間の処理については並列処理を用いて処理効率を高め、しかも並列処理に適さない同一画素ラインに含まれる画素間の処理については逐次処理することによって処理効率が低下することを防ぐことができる。
【００１６】
また、本発明にかかる画像処理装置は、上記発明において、前記画像データ並列処理手段は、前記複数の画素ラインのうちの異なる画素ラインに含まれる画素の誤差拡散処理を実行し、前記画像データ逐次処理手段は、同一の画素ラインに含まれる画素間の誤差拡散処理を実行することを特徴とする。
【００１７】
この発明によれば、異なる画素ラインに含まれる画素間の誤差拡散処理を並列におこなうとともに、同一の画素ラインに含まれる画素間の誤差拡散処理を逐次おこなうことができる。このため、異なる画素ラインに含まれる画素間の誤差拡散処理については並列処理を用いて処理効率を高め、しかも並列処理に適さない同一画素ラインに含まれる画素間の誤差拡散処理については逐次処理することによって処理効率が低下することを防ぐことができる。
【００１８】
また、本発明にかかる画像処理装置は、上記発明において、前記画像データ並列処理手段が、注目画素が含まれる現画素ラインよりも前に処理された前画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データと注目画素の画素データとを加算する第１の加算手段と、前記第１の加算手段における加算によって算出された加算値を前記画像データ逐次処理手段に出力する出力手段とを備え、前記画像データ逐次処理手段は、現画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データを算出する誤差データ算出手段と、前記誤差データ算出手段によって算出された誤差データと前記出力手段が出力した加算値とを加算する第２の加算手段とを備え、前記画像データ並列処理手段は、さらに、前記誤差データ算出手段によって算出された誤差データを前記第１の加算手段の加算に必要な数だけ保存する誤差データ保存手段を備えることを特徴とする。
【００１９】
この発明によれば、画像データ並列処理手段は画像データ逐次処理手段にデータを入力し、画像データ逐次処理手段は、入力されたデータを独立に処理して画像データ並列処理手段に出力することができる。また、画像データ並列処理手段は、画像データ逐次処理手段が出力したデータを加算に必要な数だけ保存しておき、データを一括して処理することができる。このため、画像データ逐次処理手段を画像データ並列処理手段に連動して制御する必要がなくなる。
【００２０】
また、本発明にかかる画像処理装置は、上記発明において、前記画像データ並列処理手段が、コンピュータプログラムの制御により複数の処理を並列的に実行できるＳＩＭＤ型のプロセッサーを備え、かつ、前記画像データ逐次処理手段は、コンピュータプログラムの制御によらず稼動するハードウェアであることを特徴とする。
【００２１】
この発明によれば、ＳＩＭＤ型のプロセッサーを用いて画像処理をおこなうとともに、ＳＩＭＤ型のプロセッサーに不向きの逐次的な処理をコンピュータプログラムの制御によらず稼動するハードウェアでおこなうことができる。また、高速処理が可能であって、かつ、構成が簡易な画像データ逐次処理手段を提供することができる。
【００２２】
また、本発明にかかる画像処理装置は、上記発明において、前記画像データ逐次処理手段が、２値誤差拡散、３値誤差拡散、４値誤差拡散のうちのいずれによって誤差拡散を実行するかを選択する誤差拡散選択手段と、誤差拡散処理に使用される演算係数を選択する係数選択手段と、誤差拡散処理にブルーノイズを使用するか否かを選択するブルーノイズ選択手段とのうちの少なくとも一つを備えることを特徴とする。
【００２３】
この発明によれば、誤差拡散処理のモードやブルーノイズ使用の有無、演算係数の値を設定することができる。このため、処理すべき画像に応じた画像処理が実行できる。
【００２４】
また、本発明にかかるプリンター装置は、上記画像処理装置を備えたことを特徴とする。
【００２５】
この発明によれば、画像処理装置を、プリンターに設けることができ、前記画像処理装置により画像処理が施された画像データをプリントすることができる。
【００２６】
また、本発明にかかる複写装置は、上記画像処理装置を備えたことを特徴とする。
【００２７】
この発明によれば、上記画像処理装置を、複写装置に設けることができ、読み取られた画像データを前記画像処理装置により画像処理を施し、出力することができる。
【００２８】
また、本発明にかかるファクシミリ装置は、上記画像処理装置を備えたことを特徴とする。
【００２９】
この発明によれば、上記画像処理装置を、ファクシミリ装置に設けることができ、受信した画像データまたは送信する画像データに対して、前記画像処理装置により画像処理を施すことができる。
【００３０】
また、本発明にかかる画像形成複合装置は、上記画像処理装置を備えたことを特徴とする。
【００３１】
この発明によれば、上記画像処理装置を画像形成複合装置に設けることができ、所望の入力手段により入力された画像データに対して前記画像処理装置により画像処理を施し、施された画像データを所望の出力手段により出力することができる。
【００３２】
また、本発明にかかる画像処理方法は、一方向に配列された複数の画素で構成される複数の画素ラインによる画像データを入力する入力工程と、前記入力工程によって入力された画像データを受け取り、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素間でおこなわれる処理を、並列的に実行する画像データ並列処理工程と、前記画像データ並列処理工程が受け取った画像データについて、同一の画素ラインに含まれる画素間でおこなわれる処理を、逐次的に実行する画像データ逐次処理工程と、を含み、前記画像データ逐次処理工程は、当該画像データ逐次処理工程によって処理がおこなわれた場合、処理結果を前記画像データ並列処理工程に戻すことを特徴とする。
【００３３】
この発明によれば、入力工程の制御とは無関係に前記画像データ並列処理工程において出力された画像データのみを逐次処理することができる。このため、画像データ並列処理工程と画像データ逐次処理工程とを切り替える制御をおこなうことがなくなる。また、異なる画素ラインに含まれる画素間の処理を並列におこなうとともに、同一の画素ラインに含まれる画素間の処理を逐次おこなうことができる。さらに、画像データ逐次処理工程によって処理がおこなわれた場合、処理結果を画像データ並列処理工程に戻すことができる。このため、画像データ並列処理工程と画像データ逐次処理工程とを連携させ、異なる画素ラインに含まれる画素間の処理については並列処理を用いて処理効率を高め、しかも並列処理に適さない同一画素ラインに含まれる画素間の処理については逐次処理することによって処理効率が低下することを防ぐことができる。
【００３４】
また、本発明にかかる画像処理方法は、上記発明において、前記画像データ並列処理工程は、前記複数の画素ラインのうちの異なる画素ラインに含まれる画素の誤差拡散処理を実行し、前記画像データ逐次処理工程は、同一の画素ラインに含まれる画素間の誤差拡散処理を実行することを特徴とする。
【００３５】
この発明によれば、異なる画素ラインに含まれる画素間の誤差拡散処理を並列におこなうとともに、同一の画素ラインに含まれる画素間の誤差拡散処理を逐次おこなうことができる。このため、異なる画素ラインに含まれる画素間の誤差拡散処理については並列処理を用いて処理効率を高め、しかも並列処理に適さない同一画素ラインに含まれる画素間の誤差拡散処理については逐次処理することによって処理効率が低下することを防ぐことができる。
【００３６】
また、本発明にかかる画像処理方法は、上記発明において、前記画像データ並列処理工程が、注目画素が含まれる現画素ラインよりも前に処理された前画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データと注目画素の画素データとを加算する第１の加算工程と、前記第１の加算工程における加算によって算出された加算値を前記画像データ逐次処理工程に送出する出力工程とを含み、前記画像データ逐次処理工程は、現画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データを算出する誤差データ算出工程と、前記誤差データ算出工程において算出された誤差データと前記出力工程において出力された加算値とを加算する第２の加算工程とを含み、前記画像データ並列処理工程は、さらに、前記誤差データ算出工程によって算出された誤差データを前記第１の加算工程における加算に必要な数だけ保存する誤差データ保存工程を含むことを特徴とする。
【００３７】
この発明によれば、画像データ並列処理工程において画像データ逐次処理工程にデータを送出し、画像データ並列処理工程においては、入力されたデータを独立に処理して画像データ逐次処理工程に送出することができる。また、画像データ並列処理工程においては、画像データ逐次処理工程において送出されたデータを加算に必要な数だけ保存しておき、データを一括して処理することができる。このため、画像データ逐次処理工程と画像データ並列処理工程とを連動して制御する必要がなくなる。
【００３８】
また、本発明にかかる画像処理方法は、上記発明において、前記画像データ並列処理工程が、コンピュータプログラムの制御により実行され、かつ、前記画像データ逐次処理工程は、コンピュータプログラムの制御によらず実行されることを特徴とする。
【００３９】
この発明によれば、逐次的な処理をコンピュータプログラムの制御によらず稼動するハードウェアでおこなうことができ、画像データ逐次処理工程の処理速度を高めることができる。
【００４０】
また、本発明にかかる画像処理方法は、上記発明において、前記画像データ逐次処理工程が、２値誤差拡散、３値誤差拡散、４値誤差拡散のうちのいずれによって誤差拡散を実行するかを選択する誤差拡散選択工程と、誤差拡散処理に使用される演算係数を選択する係数選択工程と、誤差拡散処理にブルーノイズを使用するか否かを選択するブルーノイズ選択工程とのうちの少なくとも一つを含むことを特徴とする。
【００４１】
この発明によれば、誤差拡散処理のモードやブルーノイズ使用の有無、演算係数の値を設定することができる。このため、処理すべき画像に応じた画像処理が実行できるようになる。
【００４２】
また、本発明にかかる画像処理方法は、一方向に配列された複数の画素で構成される複数の画素ラインによる画像データを入力する入力手順と、前記入力手順によって入力された画像データを受け取り、前記複数の画素ラインのうち、異なる画素ラインに含まれる画素間でおこなわれる処理を、並列的に実行する画像データ並列処理手順と、前記画像データ並列処理手順が受け取った画像データについて、同一の画素ラインに含まれる画素間でおこなわれる処理を、逐次的に実行する画像データ逐次処理手順と、を備え、前記画像データ逐次処理手順は、当該画像データ逐次処理手順によって処理がおこなわれた場合、処理結果を前記画像データ並列処理手順に戻すことを特徴とする。
【００４３】
この発明によれば、画像データ並列処理手順とは無関係に前記画像データ並列処理手順で出力させた画像データのみを逐次処理することができる。このため、画像データ並列処理手順と画像データ逐次処理手順とを切り替える制御をおこなうことがなくなる。また、異なる画素ラインに含まれる画素間の処理を並列におこわせるとともに、同一の画素ラインに含まれる画素間の処理を逐次おこなわせることができる。さらに、画像データ逐次処理手順によって処理がおこなわれた場合、処理結果を画像データ並列処理手順に戻すことができる。このため、画像データ並列処理手順と画像データ逐次処理手順とを連携させ、異なる画素ラインに含まれる画素間の処理については並列処理を用いて処理効率を高め、しかも並列処理に適さない同一画素ラインに含まれる画素間の処理については逐次処理することによって処理効率が低下することを防ぐことができる。
【発明の効果】
【００４４】
以上説明したように、上述の発明によれば、画像データ並列処理手段と画像データ逐次処理手段とを切り替える制御をおこなうことがなくなる。このため、画像処理の切替が不用になり、切替による画像処理の遅延をなくすことが可能な画像処理装置が得られるという効果を奏する。また、並列処理によって処理効率を高め、しかも並列処理に適さない処理については逐次処理することによって処理効率が低下することを防ぐことができる。さらに、画像データ逐次処理手段によって処理がおこなわれた場合、処理結果を画像データ並列処理手段に戻すことができる。このため、画像データ並列処理手段と画像データ逐次処理手段とを連携させ、画像処理の総合的な処理効率を高めることが可能な画像処理装置が得られるという効果を奏する。
【００４５】
また、並列処理に適さない処理をおこなう画像データ逐次処理手段を誤差拡散処理をおこなうものとして構成し、誤差拡散処理の遅延をなくすことが可能な画像処理装置が得られるという効果を奏する。
【００４６】
また、画像データ逐次処理手段を画像データ並列処理手段に連動して制御する必要がなく、画像データ逐次処理手段と画像データ並列処理手段との動作タイミングのずれによる誤差拡散処理の遅延をなくすことが可能な画像処理装置が得られるという効果を奏する。
【００４７】
また、誤差拡散処理のうちの逐次的な処理の処理速度を高め、しかも誤差拡散処理を比較的簡易な構成で実行することができる。このため、誤差拡散処理の処理速度が高く、しかも簡易に構成することが可能な画像処理装置が得られるという効果を奏する。
【００４８】
また、画像データ逐次処理部に対して誤差拡散モードを変更できる構成を設け、処理される画像に応じて適切な誤差拡散処理をすることが可能な画像処理装置が得られるという効果を奏する。
【００４９】
また、ピーク検出処理をも画像データ逐次処理部によって実行することができる。このため、高速に、しかも簡易な構成でピーク検出処理をおこなうことが可能な画像処理装置が得られるという効果を奏する。
【００５０】
また、像域分離処理をも画像データ逐次処理部によって実行することができる。このため、高速に、しかも簡易な構成で像域分離処理をおこなうことが可能な画像処理装置が得られるという効果を奏する。
【００５１】
また、直前に処理された画素の画素データを参照して今回処理される画素の濃度を決定する処理を画像データ逐次処理部によって実行することができる。このため、高速に、しかも簡易な構成で直前に処理された画素の画素データを参照する処理をおこなうことが可能な画像処理装置が得られるという効果を奏する。
【００５２】
また、画像処理装置をプリンター装置に設けることにより、並列的な処理と逐次的な処理との切替によって発生する遅延をなくすことが可能なプリンター装置が得られるという効果を奏する。
【００５３】
また、画像処理装置を複写装置に設けることにより、並列的な処理と逐次的な処理との切替によって発生する遅延をなくすことが可能な複写装置が得られるという効果を奏する。
【００５４】
また、画像処理装置をファクシミリ装置に設けることにより、並列的な処理と逐次的な処理との切替によって発生する遅延をなくすことが可能なファクシミリ装置が得られるという効果を奏する。
【００５５】
また、画像処理装置を画像形成複合装置に設けることにより、並列的な処理と逐次的な処理との切替によって発生する遅延のない画像形成複合装置を提供することができる。
【００５６】
また、上述の発明によれば、画像データ並列処理手段と画像データ逐次処理手段とを切り替える制御をおこなうことがなくなる。さらに、画像データ逐次処理手段によって処理がおこなわれた場合、処理結果を画像データ並列処理手段に戻すことができる。このため、画像データ並列処理手段と画像データ逐次処理手段とを連携させ、画像処理の切替が不用になり、切替による画像処理の遅延をなくすことが可能な画像処理方法が得られるという効果を奏する。また、並列処理によって処理効率を高め、しかも並列処理に適さない処理については逐次処理することによって処理効率が低下することを防ぐことができる。このため、画像処理の総合的な処理効率を高めることが可能な画像処理装置が得られるという効果を奏する。
【００５７】
また、並列処理に適さない処理をおこなう画像データ逐次処理手段を誤差拡散処理をおこなうものとして構成し、誤差拡散処理の遅延をなくすことが可能な画像処理方法が得られるという効果を奏する。
【００５８】
また、画像データ逐次処理工程を画像データ並列処理工程に連動して制御する必要がなく、画像データ逐次処理工程と画像データ並列処理工程との動作タイミングのずれによる誤差拡散処理の遅延をなくすことが可能な画像処理方法が得られるという効果を奏する。
【００５９】
また、誤差拡散処理のうちの逐次的な処理の処理速度を高め、しかも誤差拡散処理を比較的簡易な構成で実行することができる。このため、高速に、しかも簡易な構成で誤差拡散処理をおこなうことが可能な画像処理方法が得られるという効果を奏する。
【００６０】
また、画像データ逐次処理部に対して誤差拡散モードを変更できる工程を設け、処理される画像に応じて適切な誤差拡散処理をおこなうことが可能な画像処理方法が得られるという効果を奏する。
【００６１】
また、ピーク検出処理をも画像データ逐次処理工程によって実行することができる。このため、高速に、しかも簡易な構成によってピーク検出処理をおこなうことが可能な画像処理方法が得られるという効果を奏する。
【００６２】
また、像域分離処理をも画像データ逐次処理工程によって実行することができる。このため、高速に、しかも簡易な構成によって像域分離処理をおこなうことが可能な画像処理方法が得られるという効果を奏する。
【００６３】
また、直前に処理された画素の画素データを参照して今回処理される画素の濃度を決定する処理をも画像データ逐次処理工程によって実行することができる。このため、高速に、しかも簡易な構成によって直前に処理された画素の画素データを参照して今回処理される画素の濃度を決定する処理をおこなうことが可能な画像処理方法が得られるという効果を奏する。
【発明を実施するための最良の形態】
【００６４】
以下に添付図面を参照して、この発明にかかる画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合装置および画像処理方法の好適な実施の形態を詳細に説明する。
【００６５】
本実施の形態にかかる画像処理装置は、ファクシミリ装置、プリンター装置、複写装置としての機能を併せ持ったＭＦＰ（画像形成複合装置）の一部として構成されている。ＭＦＰの各装置は、同一の制御装置によって統括的に制御されている。また、本実施の形態にかかる画像処理装置は、複数の画像データに対して並列的に画像処理を施すＳＩＭＤ型画像データ処理部を備えていて、ＳＩＭＤ型画像データ処理部もまた、ＭＦＰの統括的な制御装置によって制御されている。
【００６６】
以上のように構成された本実施の形態にかかる画像処理装置は、さらに統括的な制御装置による制御とは無関係にＳＩＭＤ型画像データ処理部から出力された画像データのみを逐次処理する逐次型画像データ処理部を備えている。そして、画像処理のうちの並列処理に適した画像処理をＳＩＭＤ型画像データ処理部に割り当てる一方、並列処理に不向きな処理のみを逐次型画像データ処理部に割り当て、制御装置によるＳＩＭＤ型画像データ処理部、逐次型画像データ処理部の切替とは無関係に並列処理、逐次処理を切り替える。
【００６７】
このような本実施の形態にかかる画像処理部によれば、制御装置による切替のタイミングと画像処理の切替のタイミングがずれることがなく、画像処理の遅延が発生しない。したがって、画像処理装置にＳＩＭＤ型画像データ処理部を設けたことによる画像処理時間短縮の効果が十分に得られ、処理効率の高い画像処理装置を得ることができる。
【００６８】
なお、本実施の形態にかかる画像処理装置は、画像を、一方向に配列された複数の画素で構成される複数の画素ラインとして画像を処理するものとする。そして、ＳＩＭＤ型画像データ処理部が複数の画素ラインのうちの異なる画素ラインに含まれる画素の誤差拡散処理を実行するとともに、逐次型画像データ処理部が同一の画素ラインに含まれる画素間の誤差拡散処理を実行するものとする。
【００６９】
以上述べた画像処理装置について、１．ＭＦＰの機能、２．ＭＦＰのハードウェア構成、３．画像処理装置（画像処理プロセッサー）の機能、４．画像処理装置（画像処理プロセッサー）のハードウェア構成、５．ＳＩＭＤ型画像データ処理部、６．逐次型画像データ処理部の順序で説明する。
【００７０】
まず、画像処理装置を含むＭＦＰの機能および構成について説明する。
１．ＭＦＰの機能
図１は、本実施の形態にかかるＭＦＰの機能的を説明するためのブロック図である。ＭＦＰは、以下に示す５つのユニットを含んでいる。５つのユニットとは、画像データ制御ユニット１００と、画像データを読み取る画像読取ユニット１０１と、画像を蓄積する画像メモリーを制御して画像データの書き込み／読出しをおこなう画像メモリー制御ユニット１０２と、画像データに対し加工編集等の画像処理を施す画像処理ユニット１０３と、画像データを転写紙等に書き込む画像書込ユニット１０４とである。
【００７１】
各ユニットは、画像データ制御ユニット１００を中心に構成されている。すなわち、画像読取ユニット１０１、画像メモリー制御ユニット１０２、画像処理ユニット１０３、画像書込ユニット１０４は、いずれも画像データ制御ユニット１００に接続されている。以下、この各ユニットについて、それぞれ説明する。
【００７２】
（画像データ制御ユニット１００）
画像データ制御ユニット１００によりおこなわれる処理としては以下のようなものがある。
【００７３】
すなわち、
（１）データのバス転送効率を向上させるためのデータ圧縮処理（一次圧縮）、
（２）一次圧縮データの画像データへの転送処理、
（３）画像合成処理（複数ユニットからの画像データを合成することが可能である。この画像データの合成には、データバス上での合成も含む。）、
（４）画像シフト処理（主走査および副走査方向の画像のシフト）、
（５）画像領域拡張処理（画像領域を周辺へ任意量だけ拡大することが可能）、
（６）画像変倍処理（たとえば、５０％または２００％の固定変倍）、
（７）パラレルバス・インターフェース処理、
（８）シリアルバス・インターフェース処理（後述するプロセス・コントローラー２１１とのインターフェース）、
（９）パラレルデータとシリアルデータのフォーマット変換処理、
（１０）画像読取ユニット１０１とのインターフェース処理、
（１１）画像処理ユニット１０３とのインターフェース処理、
等である。
【００７４】
（画像読取ユニット１０１）
画像読取ユニット１０１によりおこなわれる処理としては以下のようなものがある。
【００７５】
すなわち、
（１）光学系による原稿反射光の読み取り処理、
（２）ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ：電荷結合素子）での電気信号への変換処理、
（３）Ａ／Ｄ変換器でのディジタル化処理、
（４）シェーディング補正処理（光源の照度分布ムラを補正する処理）、
（５）スキャナーγ補正処理（読み取り系の濃度特性を補正する処理）、
等である。
【００７６】
（画像メモリー制御ユニット１０２）
画像メモリー制御ユニット１０２によりおこなわれる処理としては以下のようなものがある。
【００７７】
すなわち、
（１）システム・コントローラーとのインターフェース制御処理、
（２）パラレルバス制御処理（パラレルバスとのインターフェース制御処理）、
（３）ネットワーク制御処理、
（４）シリアルバス制御処理（複数の外部シリアルポートの制御処理）、
（５）内部バスインターフェース制御処理（操作部とのコマンド制御処理）、
（６）ローカルバス制御処理（システム・コントローラーを起動させるためのＲＯＭ、ＲＡＭ、フォントデータのアクセス制御処理）、
（７）メモリー・モジュールの動作制御処理（メモリー・モジュールの書き込み／読み出し制御処理等）、
（８）メモリー・モジュールへのアクセス制御処理（複数のユニットからのメモリー・アクセス要求の調停をおこなう処理）、
（９）データの圧縮／伸張処理（メモリー有効活用のためのデータ量の削減するための処理）、
（１０）画像編集処理（メモリー領域のデータクリア、画像データの回転処理、メモリー上での画像合成処理等）、
等である。
【００７８】
（画像処理ユニット１０３）
画像処理ユニット１０３によりおこなわれる処理としては以下のようなものがある。なお、この発明の画像処理装置によりおこなわれる処理は、画像処理ユニット１０３の処理に含まれる。
【００７９】
すなわち、
（１）シェーディング補正処理（光源の照度分布ムラを補正する処理）、
（２）スキャナーγ補正処理（読み取り経の濃度特性を補正する処理）、
（３）ＭＴＦ補正処理、
（４）平滑処理、
（５）主走査方向の任意変倍処理、
（６）濃度変換（γ変換処理：濃度ノッチに対応）、
（７）単純多値化処理、
（８）単純二値化処理、
（９）誤差拡散処理、
（１０）ディザ処理、
（１１）ドット配置位相制御処理（右寄りドット、左寄りドット）、
（１２）孤立点除去処理、
（１３）像域分離処理（色判定、属性判定、適応処理）、
（１４）密度変換処理、
等である。
【００８０】
（画像書込ユニット１０４）
画像書込ユニット１０４によりおこなわれる処理としては以下のようなものがある。
【００８１】
すなわち、
（１）エッジ平滑処理（ジャギー補正処理）、
（２）ドット再配置のための補正処理、
（３）画像信号のパルス制御処理、
（４）パラレルデータとシリアルデータのフォーマット変換処理、
等である。
【００８２】
２．ＭＦＰのハードウェア構成
つぎに、本実施の形態にかかる画像処理装置が含まれるＭＦＰのハードウエア構成を説明する。図２は、本実施の形態にかかる画像処理装置が含まれるＭＦＰのハードウエア構成を説明するためのブロック図である。
【００８３】
図２に示したＭＦＰは、読取ユニット２０１と、センサー・ボード・ユニット２０２と、画像データ制御部２０３と、画像処理プロセッサー２０４と、ビデオ・データ制御部２０５と、作像ユニット（エンジン）２０６とを備える。また、図示したＭＦＰは、シリアルバス２１０を介して、プロセス・コントローラー２１１と、ＲＡＭ２１２と、ＲＯＭ２１３とを備える。
【００８４】
上記した構成のうち、画像処理プロセッサー２０４は、画像に基づいて作成されたディジタル信号である画像データを顕像として出力できるように処理することにより、複数の画像形成動作を実現できるプログラマブルな画像処理手段である。本実施の形態にかかる画像処理装置のＳＩＭＤ型画像データ処理部と逐次型画像データ処理部とは、画像処理プロセッサー２０４として構成される。
【００８５】
なお、画像処理プロセッサー２０４の構成については、図３以降の図面を用いて詳細に説明するものとする。また、画像データ制御部２０３は、画像データを伝送するデータバスと画像処理プロセッサー２０４による画像処理に用いられる処理ユニットとの間の画像データの伝送を一括して管理する画像データ伝送管理手段である。本実施の形態にかかる画像処理装置の制御手段は、画像データ制御部２０３として構成される。
【００８６】
また、本実施の形態にかかる画像処理装置は、パラレルバス２２０を介して、画像メモリー・アクセス制御部２２１とファクシミリ制御ユニット２２４とを備え、さらに、画像メモリー・アクセス制御部２２１に接続されるメモリー・モジュール２２２と、システム・コントローラー２３１と、ＲＡＭ２３２と、ＲＯＭ２３３と、操作パネル２３４とを備える。
【００８７】
ここで、上記各構成部と、図１に示した各ユニット１００〜１０４との関係について説明する。すなわち、読取ユニット２０１およびセンサー・ボード・ユニット２０２は、図１に示した画像読取ユニット１０１の機能を実現する構成である。また、画像データ制御部２０３は、画像データ制御ユニット１００の機能を実現する構成である。また、画像処理プロセッサー２０４は、画像処理ユニット１０３の機能を実現する構成である。
【００８８】
また、ビデオ・データ制御部２０５および作像ユニット（エンジン）２０６は、画像書込ユニット１０４を実現する構成である。画像メモリー・アクセス制御部２２１およびメモリー・モジュール２２２は、画像メモリー制御ユニット１０２を実現する構成である。
【００８９】
つぎに、上記したように構成されたＭＦＰの動作について説明する。原稿を光学的に読み取る読取ユニット２０１は、ランプとミラーとレンズから構成され、原稿に対するランプ照射の反射光をミラーおよびレンズにより受光素子に集光する。
【００９０】
受光素子、たとえばＣＣＤは、センサー・ボード・ユニット２０２に搭載され、ＣＣＤにおいて電気信号に変換された画像データはディジタル信号に変換された後、センサー・ボード・ユニット２０２から出力（送信）される。センサー・ボード・ユニット２０２から出力（送信）された画像データは、画像データ制御部２０３に入力（受信）する。
【００９１】
画像データ制御部２０３は、機能デバイス（処理ユニット）およびデータバス間における画像データの伝送をすべて制御する構成である。すなわち、画像データ制御部２０３は、画像データに関し、センサー・ボード・ユニット２０２、パラレルバス２２０、画像処理プロセッサー２０４間のデータ転送、画像データに対するプロセス・コントローラー２１１と画像処理装置の全体制御を司るシステム・コントローラー２３１との間の通信をおこなう。また、ＲＡＭ２１２はプロセス・コントローラー２１１のワークエリアとして使用され、ＲＯＭ２１３はプロセス・コントローラー２１１のブートプログラム等を記憶している。
【００９２】
センサー・ボード・ユニット２０２から出力（送信）された画像データは、画像データ制御部２０３を経由して画像処理プロセッサー２０４に転送（送信）され、光学系およびディジタル信号への量子化にともなう信号劣化（スキャナー系の信号劣化とする）を補正し、再度、画像データ制御部２０３へ出力（送信）される。
【００９３】
画像メモリー・アクセス制御部２２１は、メモリー・モジュール２２２に対する画像データの書き込み／読み出しを制御する。また、パラレルバス２２０に接続される各構成部の動作を制御する。また、ＲＡＭ２３２は、システム・コントローラー２３１のワークエリアとして使用され、ＲＯＭ２３３は、システム・コントローラー２３１のブートプログラム等を記憶している。
【００９４】
操作パネル２３４は、画像処理装置がおこなうべき処理を入力する。たとえば、処理の種類（複写、ファクシミリ送信、画像読込、プリント等）および処理すべき原稿の枚数等を入力する。これにより、画像データ制御情報の入力をおこなうことができる。なお、ファクシミリ制御ユニット２２４の内容については後述する。
【００９５】
また、読み取った画像データの処理には、メモリー・モジュール２２２に蓄積して再利用する場合と、メモリー・モジュール２２２に蓄積しない場合とがある。つぎに、それぞれの場合について説明する。画像データをメモリー・モジュール２２２に蓄積する例としては、１枚の原稿について複数枚を複写する場合に、読取ユニット２０１を１回だけ動作させ、読取ユニット２０１により読み取った画像データをメモリー・モジュール２２２に蓄積し、蓄積された画像データを複数回読み出すという方法が挙げられる。
【００９６】
一方、メモリー・モジュール２２２を使わない例としては、１枚の原稿を１枚だけ複写する場合の処理が挙げられる。すなわち、１枚の原稿を１枚だけ複写する場合には、読み取り画像データをそのまま再生すればよいので、画像メモリー・アクセス制御部２２１によるメモリー・モジュール２２２へのアクセスをおこなう必要はない。
【００９７】
メモリー・モジュール２２２を使わない場合、画像処理プロセッサー２０４から画像データ制御部２０３へ転送されたデータは、再度画像データ制御部２０３から画像処理プロセッサー２０４へ戻される。画像処理プロセッサー２０４においては、センサー・ボード・ユニット２０２におけるＣＣＤによる輝度データを面積階調に変換するための画質処理がおこなわれる。
【００９８】
画質処理後の画像データは、画像処理プロセッサー２０４からビデオ・データ制御部２０５に転送される。ビデオ・データ制御部２０５は、面積階調に変化された信号に対し、ドット配置に関する後処理およびドットを再現するためのパルス制御をおこない、その後、作像ユニット２０６において転写紙上に再生画像を形成する。
【００９９】
つぎに、メモリー・モジュール２２２に蓄積された画像データを読み出す際におこなわれる付加的な処理、たとえば画像方向の回転、画像の合成等をおこなう場合の画像データの流れについて説明する。画像処理プロセッサー２０４から画像データ制御部２０３へ転送された画像データは、画像データ制御部２０３からパラレルバス２２０を経由して画像メモリー・アクセス制御部２２１に送られる。
【０１００】
ここでは、システム・コントローラー２３１の制御に基づいて画像データとメモリー・モジュール２２２のアクセス制御、外部ＰＣ（パーソナル・コンピュータ）２２３のプリント用データの展開、メモリー・モジュール２２２の有効活用のための画像データの圧縮／伸張をおこなう。
【０１０１】
画像メモリー・アクセス制御部２２１へ送られた画像データは、データ圧縮後メモリー・モジュール２２２へ蓄積される。蓄積された画像データは、必要に応じて読み出され、伸張されて本来の画像データに戻り、画像メモリー・アクセス制御部２２１からパラレルバス２２０を経由して画像データ制御部２０３へ戻される。
【０１０２】
画像データ制御部２０３から画像処理プロセッサー２０４への転送後は画質処理、およびビデオ・データ制御部２０５でのパルス制御をおこない、作像ユニット２０６において転写紙上に再生画像を形成する。
【０１０３】
また、図示したＭＦＰは、パラレルバス２２０および画像データ制御部２０３のバス制御により、ディジタル複合機の機能を実現する。ＭＦＰのファクシミリ装置としての機能は、読み取られた画像データを画像処理プロセッサー２０４にて画像処理し、画像データ制御部２０３およびパラレルバス２２０を経由してファクシミリ制御ユニット２２４へ転送する。そして、ファクシミリ制御ユニット２２４で通信網に合わせたデータ形式にデータ変換し、公衆回線（ＰＮ）２２５へファクシミリデータとして送信することによって実現される。
【０１０４】
また、ＭＦＰに受信されたファクシミリデータは、公衆回線（ＰＮ）２２５の回線データから画像データへファクシミリ制御ユニット２２４で変換され、パラレルバス２２０および画像データ制御部２０３を経由して画像処理プロセッサー２０４へ転送される。さらに、ビデオ・データ制御部２０５でドット再配置およびパルス制御がなされ、作像ユニット２０６で転写紙上に再生画像を形成する。
【０１０５】
また、ＭＦＰが複数ジョブ、たとえば、複写装置、ファクシミリ装置、プリンター装置として並行に動作する場合、読取ユニット２０１、作像ユニット２０６およびパラレルバス２２０の使用権のジョブへの割り振りは、システム・コントローラー２３１およびプロセス・コントローラー２１１で制御される。
【０１０６】
プロセス・コントローラー２１１は、画像データの流れを制御し、システム・コントローラー２３１はシステム全体を制御し、各リソースの起動を管理する。また、コピー、プリンター、ファクシミリといった機能選択は、操作パネル（操作部）２３４からの入力によってなされる。また、操作パネルからの入力により、コピー、ファクシミリ等の処理内容を設定することもできる。
【０１０７】
システム・コントローラー２３１とプロセス・コントローラー２１１は、パラレルバス２２０、画像データ制御部２０３およびシリアルバス２１０を介して相互に通信をおこなう。具体的には、画像データ制御部２０３内において、パラレルバス２２０とシリアルバス２１０とのデータ・インターフェースのためのデータフォーマット変換をおこなうことにより、システム・コントローラー２３１とプロセス・コントローラー２１１間の通信をおこなう。
【０１０８】
つぎに、画像処理プロセッサー２０４について説明する。なお、画像処理プロセッサー２０４の説明は、画像処理プロセッサー２０４の機能、画像処理プロセッサー２０４の構成の順におこなうものとする。
【０１０９】
３．画像処理プロセッサーの機能
図３は、画像処理プロセッサーの機能について説明するためのブロック図である。図３に示した画像処理プロセッサー２０４は、第１入力Ｉ／Ｆ（インターフェース）３０１と、スキャナー画像処理部３０２と、第１出力Ｉ／Ｆ３０３と、第２入力Ｉ／Ｆ３０４と、画質処理部３０５と、第２出力Ｉ／Ｆ３０６とを備えている。
【０１１０】
上記構成において、読み取られた画像データは、センサー・ボード・ユニット２０２、画像データ制御部２０３を介して画像処理プロセッサー２０４の第１入力インターフェース（Ｉ／Ｆ）３０１からスキャナー画像処理部３０２へ伝達される。
【０１１１】
スキャナー画像処理部３０２は、読み取られた画像データの劣化を補正することを目的として、具体的には、シェーディング補正、スキャナーγ補正、ＭＴＦ補正等をおこなう。補正処理ではないが、拡大／縮小の変倍処理もおこなうことができる。読み取り画像データの補正処理が終了すると、第１出力インターフェース（Ｉ／Ｆ）３０３を介して画像データ制御部２０３へ画像データを転送する。
【０１１２】
転写紙への出力の際は、画像データ制御部２０３からの画像データを第２入力Ｉ／Ｆ３０４より受信し、画質処理部３０５において面積階調処理をおこなう。画質処理後の画像データは第２出力Ｉ／Ｆ３０６を介してビデオ・データ制御部２０５または画像データ制御部２０３へ出力される。
【０１１３】
画質処理部３０５における面積階調処理は、濃度変換処理、ディザ処理、誤差拡散処理等があり、階調情報の面積近似を主な処理とする。一旦、スキャナー画像処理部３０２により処理された画像データをメモリー・モジュール２２２に蓄積しておけば、画質処理部３０５により画質処理を変えることによって種々の再生画像を確認することができる。
【０１１４】
たとえば、再生画像の濃度を振って（変更して）みたり、ディザマトリクスの線数を変更してみたりすることにより、再生画像の雰囲気を容易に変更することができる。この際、処理を変更するごとに画像を読取ユニット２０１からの読み込みをやり直す必要はなく、メモリー・モジュール２２２に蓄積された画像データを読み出すことにより、同一画像データに対して、何度でも異なる処理を迅速に実施することができる。
【０１１５】
また、単体スキャナーとして動作する場合、スキャナー画像処理と階調処理を合せて実施し、画像データ制御部２０３へ出力する。処理内容はプログラマブルに変更することができる。処理の切り替え、処理手順の変更等はシリアルＩ／Ｆ３０８を介してコマンド制御部３０７において管理する。
【０１１６】
４．画像処理プロセッサーのハードウェア構成
図４は、本画像処理プロセッサー２０４の内部構成を示すブロック図である。図４のブロック図において、画像処理プロセッサー２０４は、外部とのデータ入出力に関し、複数個の入出力ポート４０１を備え、それぞれデータの入力および出力を任意に設定することができる。
【０１１７】
また、入出力ポート４０１と接続するように内部にバス・スイッチ／ローカル・メモリー群４０２を備え、使用するメモリー領域、データバスの経路をメモリー制御部４０３において制御する。入力されたデータおよび出力のためのデータは、バス・スイッチ／ローカル・メモリー群４０２をバッファー・メモリーとして割り当て、それぞれに格納し、外部とのＩ／Ｆを制御される。
【０１１８】
バス・スイッチ／ローカル・メモリー群４０２に格納された画像データに対してプロセッサー・アレー部４０４において各種処理をおこない、出力結果（処理された画像データ）を再度バス・スイッチ／ローカル・メモリー群４０２に格納する。プロセッサー・アレー部４０４における処理手順、処理のためのパラメーター等は、プログラムＲＡＭ４０５およびデータＲＡＭ４０６との間でやりとりがおこなわれる。
【０１１９】
プログラムＲＡＭ４０５、データＲＡＭ４０６の内容は、シリアルＩ／Ｆ４０８を通じて、プロセス・コントローラー２１１からホスト・バッファー４０７にダウンロードされる。また、プロセス・コントローラー２１１がデータＲＡＭ４０６の内容を読み出して、処理の経過を監視する。
【０１２０】
処理の内容を変えたり、システムで要求される処理形態が変更になる場合は、プロセッサー・アレー部４０４が参照するプログラムＲＡＭ４０５およびデータＲＡＭ４０６の内容を更新して対応する。以上述べた構成のうち、プロセッサー・アレー部４０４が、本実施の形態にかかるＳＩＭＤ型画像データ処理部と逐次型画像データ処理部とに相当する。
【０１２１】
つぎに、本実施の形態にかかる画像処理装置のＳＩＭＤ型画像データ処理部と逐次画像データ処理部とについて説明する。図５は、ＳＩＭＤ型画像データ処理部５００と、逐次画像データ演算処理部５０７との構成について説明する図である。本実施の形態では、まず、ＳＩＭＤ型画像データ処理部５００について説明し、続いて逐次型画像データ処理部５０７について説明するものとする。
【０１２２】
なお、画像データ並列処理部５００と画像データ逐次処理部５０７とは、一方向に配列された複数の画素で構成される複数の画素ラインとして画像を処理するものである。図６は、画素ラインを説明するための図であり、画素ラインａ〜ｄの４本の画素ラインを示している。また、図中に斜線を付して示した画素は、今回処理される注目画素である。
【０１２３】
本実施の形態では、注目画素の誤差拡散処理に当たり、注目画素に対して周囲の画素の影響を、同一の画素ラインに含まれる画素、異なる画素ラインに含まれる画素の両方について考慮している。そして、注目画素とは異なる画素ラインに含まれる画素との間の誤差拡散処理をＳＩＭＤ型画像データ処理部５００でおこない、注目画素と同一の画素ラインに含まれる画素（図中に１、２、３を付して示した画素）との間の誤差拡散処理を逐次型画像データ処理部５０７でおこなう。
【０１２４】
５．ＳＩＭＤ型画像データ処理部
ＳＩＭＤ型画像データ処理部５００は、ＳＩＭＤ型プロセッサー５０６と、ＳＩＭＤ型画像データ処理部５００に画像データおよび制御信号を入力する５つのデータ入出力用バス５０１ａ〜５０１ｅと、データ入出力用バス５０１ａ〜５０１ｅをスイッチングしてＳＩＭＤ型プロセッサー５０６に入力する画像データおよび制御信号を切り替えるとともに、接続されたバスのバス幅を切り替えるバススイッチ５０２ａ〜５０２ｃと、入力した画像データの処理に使用されるデータを記憶する２０個のＲＡＭ５０３と、各々対応するＲＡＭ５０３を制御するメモリーコントローラー５０５ａ、メモリーコントローラー５０５ｂ、メモリーコントローラー５０５ａまたはメモリーコントローラー５０５ｂの制御にしたがってＲＡＭ５０３をスイッチングする４つのメモリースイッチ５０４ａ〜５０４ｄとを有している。
【０１２５】
なお、以上の構成では、バススイッチ５０２ａ〜５０２ｃによって制御されるメモリーコントローラーをメモリーコントローラー５０５ｂとし、バススイッチ５０２ａ〜５０２ｃの制御をうけないメモリーコントローラーをメモリーコントローラー５０５ａとして区別した。
【０１２６】
図７は、ＳＩＭＤ型プロセッサー５０６の構成をより詳細に説明するための図である。すなわち、ＳＩＭＤ型プロセッサー５０６は、複数の画像データに対して単一の命令を並列的に実行するため、複数のプロセッサーエレメント（ＰＥ）を有している。複数のＰＥは、データを格納するレジスター（Ｒｅｇ）７０１、他のＰＥのレジスターをアクセスするためのマルチプレクサ（ＭＵＸ）７０２、バレルシフター（Ｓｈｉｆｔ  Ｅｘｐａｎｄ）７０３、論理演算器（ＡＬＵ）７０４、論理結果を格納するアキュムレーター（Ａ）７０５、アキュムレーター７０５の内容を一時的に退避させるテンポラリー・レジスター（Ｆ）７０６から構成される。
【０１２７】
各レジスター７０１は、アドレスバスおよびデータバス（リード線およびワード線）に接続されており、処理を規定する命令コード、処理の対象となるデータを格納する。レジスター７０１の内容は論理演算器７０４に入力され、演算処理結果はアキュムレーター７０５に格納される。結果をＰＥ外部に取り出すために、テンポラリー・レジスター７０６に一旦退避させる。テンポラリー・レジスター７０６の内容を取り出すことにより、対象データに対する処理結果が得られる。
【０１２８】
命令コードは各ＰＥに同一内容で与え、処理の対象データをＰＥごとに異なる状態で与え、隣接ＰＥのレジスター７０１の内容をマルチプレクサ７０２において参照することで、演算結果は並列処理され、各アキュムレーター７０５に出力される。
【０１２９】
たとえば、画像データ１ラインの内容を各画素ごとにＰＥに配置し、同一の命令コードで演算処理させれば、１画素ずつ逐次処理するよりも短時間で１ライン分の処理結果が得られる。特に、空間フィルタ処理、シェーディング補正処理はＰＥごとの命令コードは演算式そのもので、ＰＥすべてに共通に処理を実施することができる。
【０１３０】
上記したＳＩＭＤ型プロセッサー５０６は、レジスター０（Ｒ０）〜レジスター２３（Ｒ２３）を備えている。Ｒ０〜Ｒ２３の各々は、ＳＩＭＤ型プロセッサー５０６にあるＰＥとメモリーコントローラー５０５ａ，５０５ｂとのデータインターフェースとして機能する。バススイッチ５０２ａは、Ｒ０〜Ｒ３に接続されたメモリーコントローラー５０５ｂを切り替えてＳＩＭＤ型プロセッサーに制御信号を入力する。
【０１３１】
また、バススイッチ５０２ｂは、Ｒ４，Ｒ５に接続されたメモリーコントローラー５０５を切り替えてＳＩＭＤ型プロセッサーに制御信号を入力する。また、バススイッチ５０２ｃは、Ｒ６〜Ｒ９に接続されたメモリーコントローラー５０５を切り替えてＳＩＭＤ型プロセッサーに制御信号を入力する。そして、バススイッチ５０２ｃは、Ｒ６〜Ｒ９に接続されたメモリーコントローラー５０５ｂを切り替えてＳＩＭＤ型プロセッサーに制御信号を入力する。
【０１３２】
メモリースイッチ５０４ａは、Ｒ０〜Ｒ５に接続されたメモリーコントローラー５０５ｂを使用してＳＩＭＤ型プロセッサー５０６内部のＰＥとＲＡＭ５０３との間で画像データを授受している。また、メモリースイッチ５０４ｂは、Ｒ６，Ｒ７に接続されたメモリーコントローラー５０５ｂを使用してＳＩＭＤ型プロセッサー５０６内部のＰＥとＲＡＭ５０３との間で画像データを授受している。また、メモリースイッチ５０４ｃは、Ｒ８〜Ｒ１３に接続されたメモリーコントローラー５０５ａまたはメモリーコントローラー５０５ｂを使用してＳＩＭＤ型プロセッサー５０６内部のＰＥとＲＡＭ５０３との間で画像データを授受している。
【０１３３】
そして、メモリースイッチ５０４ｄは、Ｒ１４〜Ｒ１９に接続されたメモリーコントローラー５０５ａを使用してＳＩＭＤ型プロセッサー５０６内部のＰＥとＲＡＭ５０３との間で画像データを授受している。
【０１３４】
画像データ制御部２０３は、画像データとともに画像データを処理するための制御信号をデータ入出力用バス５０１ａ〜５０１ｅを介してバススイッチ５０２ａ〜５０２ｃに入力する。バススイッチ５０２ａ〜５０２ｃは、制御信号に基づいて接続されているバスのバス幅を切り替える。また、間接的に、あるいは直接接続されたメモリーコントローラー５０５ｂを制御し、画像データの処理に必要なデータをＲＡＭ５０３から取り出すようにメモリースイッチ５０４ａ〜５０４ｃをスイッチングさせる。
【０１３５】
ＳＩＭＤ型画像データ処理部５００は、誤差拡散処理をおこなう場合、画像データ制御部２０３を介して読取ユニットおよびセンサー・ボード・ユニット２０２によって作成された画像データを入力する。そして、注目画素が含まれる画素ライン（現画素ライン）よりも前に処理された画素ライン（前画素ライン）に含まれる画素の画素データと所定の閾値との差である誤差データと注目画素の画素データとを加算する。
【０１３６】
ＳＩＭＤ型画像データ処理部５００では、ＳＩＭＤ型プロセッサー５０６を用い、誤差データとの加算を複数の注目画素について並列的に実行する。このため、ＳＩＭＤ型プロセッサー５０６に接続されているＲＡＭ５０３のいずれかには、ＳＩＭＤ型プロセッサー５０６で一括して処理される画素の数に対応する複数の誤差データが保存されている。本実施の形態では、ＳＩＭＤ型プロセッサー５０６において１画素ライン分の加算処理を一括しておこなうものとし、ＲＡＭ５０３に１画素ライン分の誤差データを保存するものとした。
【０１３７】
ＳＩＭＤ型プロセッサー５０６で一括して処理された１画素ライン分の画像データと誤差データとの加算値は、Ｒ２０，Ｒ２１，Ｒ２３，Ｒ２２の少なくとも２つから逐次型画像データ処理部５０７に一つずつ出力される。また、以上の処理に使用される誤差データは、後述する逐次型画像データ処理部５０７によって算出され、ＳＩＭＤ型プロセッサー５０６に入力されるものである。
【０１３８】
６．逐次型画像データ処理部
一方、逐次型画像データ処理部５０７は、コンピュータプログラムの制御によらず稼動するハードウェアである。なお、図５では、逐次型画像データ処理部５０７をＳＩＭＤ型プロセッサー５０６に２個接続するものとしているが、本実施の形態にかかる画像処理装置ではこのうちのいずれか１個を逐次おこなう誤差拡散処理専用に使用するものとする。
【０１３９】
図８は、逐次型画像データ処理部５０７を説明するためのブロック図である。図示した逐次型画像データ処理部５０７は、誤差データ算出部８０１と、誤差データ算出部８０１が算出した誤差データから一つを選択するマルチプレクサ８０７と、マルチプレクサ８０７によって選択された誤差データを加工してＳＩＭＤ型画像データ処理部５００から入力したデータに加算する誤差データ加算部８０８とを備えている。
【０１４０】
また、逐次型画像データ処理部５０７は、誤差データの選択に必要な信号をマルチプレクサ８０７に入力する論理回路８０６と、逐次型画像データ処理部５００に対し、あらかじめ設定されている誤差拡散のモード（２値誤差拡散、３値誤差拡散、４値誤差拡散）のうちのいずれによって誤差拡散を実行するか、あるいは誤差拡散処理に使用される演算係数を設定できる誤差拡散処理ハードウェアレジスター群８０５を備えている。さらに、逐次型画像データ処理部５０７は、ブルーノイズ信号発生部８０９を備え、誤差拡散処理にブルーノイズを使用するか否かをも誤差拡散処理ハードウェアレジスター群８０５の設定によって選択可能に構成されている。
【０１４１】
誤差データ算出部８０１は、現画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データを算出する構成である。誤差データ算出手段８０１は、３つの量子化基準値保存部８０３ａ〜８０３ｃと、３つのコンパレータ８０４ａ〜８０４ｃと、３つの閾値テーブル８０２ａ〜８０２ｃを備えている。本実施の形態では、量子化基準値保存部８０３ａ、コンパレータ８０４ａ、閾値テーブル８０２ａが１組となって動作する。また、量子化基準値保存部８０３ｂ、コンパレータ８０４ｂ、閾値テーブル８０２ｂが１組となって動作し、量子化基準値保存部８０３ｃ、コンパレータ８０４ｃ、閾値テーブル８０２ｃが１組となって動作する。
【０１４２】
逐次型画像データ処理部５０７は、画像データと誤差データとの加算値（加算値データ）をＳＩＭＤ型プロセッサー５０６から入力する。この画像データは、今回処理される注目画素の画像データであり、誤差データは、注目画素以前に処理された画素の誤差データである。
【０１４３】
入力した加算値データは、以前に処理された画素の誤差データに基づいて誤差データ加算部８０８が算出した値を加算され、演算誤差低減のために１６、または３２で除算される。さらに、除算された加算値データは、誤差データ算出部８０１の３つのコンパレータ８０４ａ〜８０４ｃのすべてに入力する。なお、誤差データ加算部８０８が以前に処理された画素の誤差データに基づいて算出した値については、後述するものとする。
【０１４４】
コンパレータ８０４ａ〜８０４ｃは、それぞれ接続された閾値テーブル８０２ａ〜８０２ｃから閾値を入力する。そして、入力した加算値データから閾値を差し引き、画像データを作成する。また、加算値データからそれぞれの量子化基準値保存部８０３ａ〜８０３ｃに保存されている量子化基準値を差し引いた値を誤差データとしてマルチプレクサ８０７に出力する。この結果、マルチプレクサ８０７には、合計３つの誤差データが同時に入力することになる。
【０１４５】
なお、誤差拡散処理にブルーノイズを使用する場合には、ブルーノイズ信号発生部７０９がブルーノイズデータを比較的高周期でオン、オフしてブルーノイズを発生する。閾値は、コンパレータ８０４ａ〜８０４ｃに入力する以前にブルーノイズから差し引かれる。ブルーノイズを用いた処理により、閾値に適当なばらつきを持たせて画像が単調になることを防ぐことができる。
【０１４６】
また、閾値テーブル８０２ａ〜８０２ｃには、それぞれ異なる値の閾値が保存されている。本実施の形態では、閾値テーブル８０２ａ〜８０２ｃのうち、閾値テーブル８０２ａが最も大きい閾値を保存し、次いで閾値テーブル８０２ｂ、閾値テーブル８０２ｃの順序で保存される閾値が小さくなるものとした。また、量子化標準値保存部８０４ａ〜８０４ｃは、接続された閾値テーブル８０２ａ〜８０２ｃに応じて保存する量子化基準値が設定されている。たとえば、画像データが０〜２５５の２５６値で表される場合、量子化基準値保存部８０３ａには２５５が、また、量子化基準値保存部８０３ｂには１７０が、量子化基準値保存部８０３ｃには８５が保存される。
【０１４７】
また、コンパレータ８０４ａ〜８０４ｃは、作成した画像データを論理回路８０６に出力する。論理回路８０６は、このうちから注目画素の画像データを選択してマルチプレクサ８０７に入力する。マルチプレクサ８０７は、入力した画像データに応じて３つの誤差データのうちのいずれかを注目画素の誤差データとして選択する。選択された誤差データは、ＳＩＭＤ型プロセッサー５０６のＰＥを介してＲＡＭ５０３のいずれかに入力する。
【０１４８】
さらに、論理回路８０６が出力した画像データは、マルチプレクサ８０７に入力する以前に分岐され、ＳＩＭＤ型プロセッサー５０６のＰＥのいずれかに入力する。本実施の形態では、画像データを上位ビット、下位ビットの２ビットで表されるデータとした。このため、この処理では、コンパレータ８０４ａは使用されていない。なお、本実施の形態では、以降、注目画素の画像データを画素データというものとする。
【０１４９】
また、選択された誤差データは、誤差データ加算部８０８にも入力する。誤差データ加算部８０８は、図６に示した１、２、３を付して示した画素、つまり注目画素に対して３つ前に処理された画素の誤差データ（図８中誤差データ３と記す）、２つ前に処理された画素の誤差データ（図８中誤差データ２と記す）、一つ前に処理された画素の誤差データ（図８中誤差データ１と記す）を保存している。
【０１５０】
誤差データ加算部８０８は、誤差データ３に演算係数である０または１を乗じる。また、誤差データ２に演算係数である１または２を乗じ、誤差データ１に演算係数である２または４を乗じる。そして、３つの乗算値を足し合わせ、この値（重み付け誤差データ）をＳＩＭＤ型プロセッサー５０６からつぎに入力した加算値データと足し合わせる。この結果、注目画素に近い位置にある画素ほど注目画素の誤差拡散処理に大きい影響を及ぼすことになり、画素の誤差を適切に拡散し、元画像のイメージに近い画像を形成することができる。
【０１５１】
なお、以上述べた逐次型画像データ処理部５０７における画像データの作成は、一般的にＩＩＲ型フィルタシステムと呼ばれる構成を用いておこなわれている。ＩＩＲ型フィルタシステムで用いられる演算式は、図９のように、
ＯＤn＝（１−Ｋ）×ＯＤn-1＋Ｋ・ＩＤn    …    （１）
ＯＤn：演算後の画素濃度
ＯＤn-1：一つ前の画素データを用いての演算結果
ＩＤn：現画素データ
Ｋ：重み係数と表される。
【０１５２】
式（１）および図９から明らかなように、演算後の濃度ＯＤnは、一つ前の画素データを用いての演算結果ＯＤn-1と現画素データＩＤnの値から求められる。一般的にＩＩＲ型フィルタシステムは、現画素より以前に処理された画素を用いた演算結果を使用して現画素についての演算をおこなう、いわゆる逐次変換をおこなうための専用の回路である。本実施の形態にかかる画像処理装置の逐次型画像データ処理部５０７は、図８に示した処理によらず、図９に示したような逐次変換の全般に使用することができる。
【０１５３】
図１０は、誤差拡散処理ハードウェアレジスター群８０５に設定されるレジスターを説明するための図である。本実施の形態にかかる画像処理装置は、図示したレジスターの設定によって２値誤差拡散で誤差拡散処理をおこなうモード（２値誤差拡散モード）、３値誤差拡散で誤差拡散処理をおこなうモード（３値誤差拡散モード）、４値誤差拡散で誤差拡散処理をおこなうモード（４値誤差拡散モード）のいずれで誤差拡散処理をおこなうか選択することができる。また、誤差データ加算部８０８で使用される演算係数を設定することができる。さらに、誤差拡散処理にブルーノイズを使用するか否かを選択することもできる。
【０１５４】
図１０に示した誤差拡散処理ハードウェアレジスター群８０５は、量子化基準値保存部８０３ａの量子化基準値０を設定するレジスター１００１、量子化基準値保存部８０３ｂの量子化基準値１を設定するレジスター１００２、量子化基準値保存部８０３ｃの量子化基準値２を設定するレジスター１００３を備えている。
【０１５５】
また、誤差拡散処理ハードウェアレジスター群８０５は、閾値テーブル８０２ｃに設定される閾値０を設定するレジスター１００４、閾値テーブル８０２ｂに設定される閾値１０〜１７を設定するレジスター１００５、閾値テーブル８０２ａに設定される閾値２０〜２７を設定するレジスター１００６、ブルーノイズ値を設定するレジスター１００７、誤差拡散処理ハードウェアコントロールレジスター１００８を有している。各レジスターには、それぞれ８ビットが割り当てられていて、レジスター全体は、６４ビットのデータ量を持っている。
【０１５６】
２値誤差拡散モードは、レジスター１００１、レジスター１００２、レジスター１００３のすべてに同一の値を設定する。そして、レジスター１０４、レジスター１００５にＦＦＨを設定することによって実現できる。また、３値誤差拡散モードは、レジスター１００１、レジスター１００２に同一の値を設定し、レジスター１００４にＦＦＨを設定する。さらに、２値誤差拡散モード、３値誤差拡散モードでは、レジスター１００５、レジスター１００６に同一の値を設定するか、異なる値を設定するかによって固定閾値誤差拡散処理と変動閾値誤差拡散処理とを切り替えることができる。
【０１５７】
誤差拡散処理にブルーノイズを用いる場合は、レジスター１００７にブルーノイズを使用することを示す値を設定する。そして、レジスター１００５にブルーノイズデータのオンオフを示すスイッチングデータを設定する。スイッチングデータが１の場合にはブルーノイズ値を各閾値に加算し、スイッチングデータが０の場合には閾値をそのまま使用する。さらに、誤差データ加算部８０８で使用される演算係数は、誤差拡散処理ハードウェアコントロールレジスターの設定値を変更することによって選択できる。
【０１５８】
つぎに、以上述べたＳＩＭＤ型プロセッサー５０６、逐次型画像データ処理部５０７でおこなわれる処理について、フローチャートおよび処理手順を示した図を用いて説明する。図１１は、ＳＩＭＤ型プロセッサー５０６でおこなわれる誤差拡散処理を説明するためのフローチャートである。また、図１２は、逐次型画像データ処理部５０７でおこなわれる誤差拡散処理の手順を説明するための図である。
【０１５９】
ＳＩＭＤ型プロセッサー５０６は、画像データバス制御部２０３から誤差拡散処理するように指示されたと判断すると（ステップＳ１１０１）、加算値データを逐次型画像データ処理部５０７に逐次出力する（ステップＳ１１０２）。そして、逐次型画像データ処理部５０７から注目画素の画像データである画素データと誤差データとが入力したか否か判断する（ステップＳ１１０３）。
【０１６０】
画素データと誤差データとが入力したと判断された場合には（ステップＳ１１０３肯定）、入力した画素データと誤差データとが１画素ライン分蓄積されたか否か判断する（ステップＳ１１０４）。１画素ライン分の画素データと誤差データとがＲＡＭ５０３に蓄積されていない場合は（ステップＳ１１０４否定）、再度ステップＳ１１０２に戻り、加算値データを逐次型画像データ処理部５０７に出力する。
【０１６１】
一方、１画素ライン分の画素データと誤差データとがＲＡＭ５０３に蓄積された場合（ステップＳ１１０４肯定）、１画素ライン分の画素データと誤差データとを一括処理して加算値データを生成し（ステップＳ１１０５）、ＲＡＭ５０３に保存する（ステップＳ１１０６）。なお、加算値データの生成にあたっては、以前に生成された加算値データをＲＡＭ５０３から読み出して今回生成する加算値データに反映させる。
【０１６２】
続いてＳＩＭＤ型プロセッサー５０６は、誤差拡散処理が終了したか否か判断し（ステップＳ１１０７）、終了していない場合には（ステップＳ１１０７否定）、ステップＳ１１０２に戻り、加算値データを逐次型画像データ処理部５０７に出力する。また、ステップＳ１１０７で誤差拡散処理を終了すると判断した場合には（ステップＳ１１０７肯定）、誤差拡散処理を終了する。
【０１６３】
一方、逐次型画像データ処理部５０７は、図１２に示したように、ステップＳ１１０２においてＳＩＭＤ型プロセッサー５０６が出力した加算値データを入力する（ステップＳ１２０１）。そして、入力した加算値データに誤差データ加算部８０８で生成された重み付け誤差データを加算する（ステップＳ１２０２）。重み付け誤差データが加算された加算値データは、１６または３２で除算され（ステップＳ１２０３）、誤差データ算出部８０１に入力する。誤差データ算出部８０１は、入力したデータに基づいて誤差データおよび画素データを生成し（ステップＳ１２０４）、誤差データをマルチプレクサ８０７に入力する。また、画素データを、論理回路８０６およびＳＩＭＤ型プロセッサー５０６に入力する。
【０１６４】
マルチプレクサ８０７は、論理回路８０６から入力した画像データに応じて誤差データを一つ選択する（ステップＳ１２０５）。そして、選択した誤差データをＳＩＭＤ型プロセッサー５０６および誤差データ加算部８０８に出力する（ステップＳ１２０６）。誤差データを入力した誤差データ加算部８０８は、誤差データに基づいて重み付け誤差データを算出する（ステップＳ１２０７）。逐次型画像データ処理部５０７は、入力してくる加算値データに対して逐次的に以上の処理を繰り返し実行する。
【０１６５】
以上述べたように、本実施の形態は、統括的な制御とは無関係にＳＩＭＤ型演算処理部に適さない処理をおこなう逐次型画像データ処理部を設ける。そして、逐次型画像データ処理部をコンピュータプログラムの制御によらず動作するハードウェアとして構成したことにより、画像処理の切替が不用であり画像処理の遅延のない画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合機および画像処理方法を提供することができる。
【０１６６】
また、本実施の形態は、統括的な制御とは無関係にＳＩＭＤ型演算処理部に適さない処理をおこなう逐次型画像データ処理部を誤差拡散処理をおこなうものとして構成し、誤差拡散処理の遅延がない画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合機および画像処理方法を提供することができる。
【０１６７】
また、本実施の形態は、逐次型画像データ処理部対して誤差拡散モードを変更できる構成を設け、処理される画像に応じて適切な誤差拡散処理ができる画像処理装置、プリンター装置、複写装置、ファクシミリ装置、画像形成複合機および画像処理方法を提供することができる。
【０１６８】
なお、本実施の形態で説明した画像処理方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現される。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、上記記録媒体を介して、また伝送媒体として、インターネット等のネットワークを介して配布することができる。
【０１６９】
なお、この発明は、以上述べた実施の形態に限定されるものではない。すなわち、本実施の形態では、ＳＩＭＤ型画像データ処理部、逐次型画像データ処理部を誤差拡散処理をおこなうものとしたが、本実施の形態のＳＩＭＤ型画像データ処理部、逐次型画像データ処理部は、たとえば、同一の画素ラインに含まれる画素を参照しておこなわれるピーク検出処理、隣接する画素を参照しておこなわれる像域分離処理、さらに、図９で述べた直前に処理された画素のデータを参照しておこなわれる処理であれば、他の処理についてもおこなうことが可能である。
【０１７０】
さらに、本実施の形態では、逐次型画像データ処理部をコンピュータプログラムを用いないで動作するハードウェアとして構成しているが、この発明は、このような構成に限定されるものではない。すなわち、逐次型画像データ処理部に統括的な処理に依存しないＣＰＵを設け、このＣＰＵによるプログラムを用いた制御で逐次型画像データ処理部を動作するようにしてもよい。
【０１７１】
また、本実施の形態では、ＳＩＭＤ型画像データ処理部を制御する制御手段としてＭＦＰにおける画像データの流れを制御する画像データ制御部２０３としているが、この発明は、このような構成に限定されるものではない。すなわち、ＳＩＭＤ型画像データ処理部は、複数のデータに対して同一の処理を並列して実行できる処理部であればよく、また、制御手段は、こうした処理部の動作を制御する制御部であればよい。
【０１７２】
さらに、本実施の形態では、本発明を画像形成複合装置として構成しているが、この発明は、画像処理装置、プリンター装置、複写装置、ファクシミリ装置のいずれとしても構成することができる。
【図面の簡単な説明】
【０１７３】
【図１】この発明の実施の形態にかかるＭＦＰの機能を説明するためのブロック図である。
【図２】この発明の実施の形態にかかるＭＦＰの構成を説明するためのブロック図である。
【図３】図２に示した画像処理プロセッサーの機能を説明するためのブロック図である。
【図４】図２に示した画像処理プロセッサーの構成を説明するためのブロック図である。
【図５】本実施の形態にかかる画像処理装置のＳＩＭＤ型画像データ処理部の構成を説明するためのブロック図である。
【図６】誤差拡散処理について説明するための図である。
【図７】ＳＩＭＤ型プロセッサーを説明するための図である。
【図８】逐次型画像データ処理部を説明するための図である。
【図９】逐次的な処理を説明するための図である。
【図１０】逐次型画像データ処理部に設定されるレジスターを説明するための図である。
【図１１】ＳＩＭＤ型画像データ処理部でおこなわれる処理について説明するフローチャートである。
【図１２】逐次型画像データ処理部でおこなわれる処理の手順を示した図である。
【符号の説明】
【０１７４】
１００  画像データ制御ユニット
１０１  画像読み取りユニット
１０２  画像メモリー制御ユニット
１０３  画像処理ユニット
１０４  画像書込ユニット
２０１  読取ユニット
２０２  センサー・ボード・ユニット
２０３  画像データ制御部
２０４  画像処理プロセッサー
２０５  ビデオ・データ制御部
２１０  シリアルバス
２１１  プロセス・コントローラー
２２０  パラレルバス
２２１  画像メモリー・アクセス制御部
２２２  メモリー・モジュール
２２４  ファクシミリ制御ユニット
２３１  システム・コントローラー
２３４  操作パネル
４０４  プロセッサー・アレー部
５０１ａ，５０１ｂ，５０１ｃ，５０１ｄ，５０１ｅ  データ入出力用バス
５０２ａ，５０２ｂ，５０２ｃ  バススイッチ
５０３  ＲＡＭ
５０４ａ，５０４ｂ，５０４ｃ，５０４ｄ  メモリースイッチ
５０５ａ，５０５ｂ  メモリーコントローラー
５０６  ＳＩＭＤ型プロセッサー
５０７  逐次型画像データ処理部
８０１  誤差データ算出部
８０２ａ，８０２ｂ，８０２ｃ  閾値テーブル
８０３ａ，８０３ｂ，８０３ｃ  量子化基準値保存部
８０４ａ，８０４ｂ，８０４ｃ  コンパレータ
８０５  誤差拡散処理ハードウェアレジスター群
８０６  論理回路
８０７  マルチプレクサ
８０８  誤差データ加算部
８０９  ブルーノイズ信号発生部
【図１】
2007259490.tif 000003
【図２】
2007259490.tif 000004
【図３】
2007259490.tif 000005
【図４】
2007259490.tif 000006
【図５】
2007259490.tif 000007
【図６】
2007259490.tif 000008
【図７】
2007259490.tif 000009
【図８】
2007259490.tif 000010
【図９】
2007259490.tif 000011
【図１０】
2007259490.tif 000012
【図１１】
2007259490.tif 000013
【図１２】
2007259490.tif 000014