(57)【要約】【課題】コントローラー側のメモリーアクセスの混雑を緩和し、かつ画像の回転処理を行う場合の処理速度を上げ、画像処理の効率を向上させる。【解決手段】読取ユニット１０１、センサー・ボード・ユニット１０２、エンジン側メモリー・モジュール１４１、画像データ制御部１４２、画像処理プロセッサー１０４、ビデオ・データ制御部１０５、作像ユニット１０６を備える。また、シリアルバス１１０を介して、プロセス・コントローラー１１１、ＲＡＭ１１２、ＲＯＭ１１３を備える。さらに、パラレルバス１２０を介して、画像メモリー・アクセス制御部１２１、コントローラー側メモリー・モジュール１２２、ファクシミリ制御ユニット１２４、画像メモリー・アクセス制御部１２１に接続されるシステム・コントローラー１３１、ＲＡＭ１３２、ＲＯＭ１３３、操作パネル１３４を備える。【選択図】      図１
2004179692.tif 000002
【特許請求の範囲】
【請求項１】
読み取った原稿の画像をディジタル変換された画像データに変換し、該変換された第１の画像データを第１の画像メモリーに蓄積する画像処理装置において、
読み取った前記画像データに対する所定の画像処理を行う画像データ制御手段を備え、
前記画像データ制御手段には、第２の画像メモリーが接続されており、かつ、前記第１の画像データの回転処理を実行する画像データ回転処理手段と、
前記画像データ回転処理手段により回転処理が施された画像データの変倍処理を実行する変倍処理手段と、
前記画像データに対する前記回転処理後、あるいは、変倍処理後の画像データを前記第１の画像メモリーに転送する転送手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記画像データ回転手段には、回転処理後の画像データのリードアドレスを生成するアドレス生成手段が設けられていることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像データ回転処理手段は、前記第１の画像データに対し、左右９０度および１８０度の回転処理を実行することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記画像データ制御手段は、前記第１の画像データに対して回転処理を実行し、回転処理後の画像データを一時的に前記第２の画像メモリーに格納した後に再度読み出して前記第１の画像メモリーへ格納することを特徴とする請求項１〜３のいずれか一つに記載の画像処理装置。
【請求項５】
前記画像データ制御手段は、前記第１の画像データを一時的に前記第２の画像メモリーに格納した後に再度読み出して回転処理を実行し、回転処理後の画像データを前記第１の画像メモリーへ格納することを特徴とする請求項１〜３のいずれか一つに記載の画像処理装置。
【請求項６】
前記画像読取手段には、読み取る原稿のサイズを検出する手段が設けられていることを特徴とする請求項１〜５のいずれか一つに記載の画像処理装置。
【請求項７】
前記第１の画像データに対し、回転処理および変倍処理を行うか否かを選択する手段が設けられていることを特徴とする請求項１〜６のいずれか一つに記載の画像処理装置。
【請求項８】
回転後の画像のベースアドレスを生成する工程と、
前記ベースアドレスを基準にして順に各列のオフセットアドレスを生成していく工程と、
を含むことを特徴とする画像処理方法。
【請求項９】
さらに、当該列のオフセットアドレスの生成が終了したか否かを検出する工程を含み、この工程で当該列のオフセットアドレスの生成が未終了であることが検出された場合、引き続き当該列のオフセットアドレスの生成が続行されることを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
さらに、全工程が終了したか否かを検出する工程を含み、この工程で全工程が未終了であることが検出された場合、引き続き各列のオフセットアドレスの生成が続行されることを特徴とする請求項９に記載の画像処理方法。
【請求項１１】
前記請求項８〜１０のいずれか一つに記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタル画像データに対する画像処理、特に複写機、ファクシミリ、プリンター、スキャナー等の機能を複合したディジタル複合機における画像データに対する画像処理を行う画像処理装置、画像処理方法、およびこの方法をコンピュータに実行させるプログラムに関する。
【０００２】
【従来の技術】
ディジタル画像処理装置に関し、ディジタル画像信号を転写紙に画像として再生する装置、特にスキャナーから画像を読み込んで転写紙に画像を再生する装置が提案されている（例えば、特許文献１に開示されている装置）。
【０００３】
【特許文献１】
特開２０００−３１６０６３号公報
【０００４】
図１０は、前記特許文献１に開示されている画像処理装置の構成を示すブロック図である。この画像処理装置は、読取ユニット１０１と、センサー・ボード・ユニット１０２と、画像データ制御部１０３と、画像処理プロセッサー１０４と、ビデオ・データ制御部１０５と、作像ユニット（エンジン）１０６とを備えている。また、この画像処理装置は、シリアルバス１１０を介して、プロセス・コントローラー１１１と、ＲＡＭ１１２と、ＲＯＭ１１３とを備えている。さらに、この画像処理装置は、パラレルバス１２０を介して、画像メモリー・アクセス制御部１２１と、コントローラー側メモリー・モジュール１２２と、ファクシミリ制御ユニット１２４と、画像メモリー・アクセス制御部１２１に接続されるシステム・コントローラー１３１と、ＲＡＭ１３２と、ＲＯＭ１３３と、操作パネル１３４とを備えている。
【０００５】
読取ユニット１０１は、原稿を光学的に読み取り、原稿に対するランプ照射の反射光をミラーおよびレンズによりセンサー・ボード・ユニット１０２に搭載されている受光素子（例えばＣＣＤ）上に集光する。この受光素子上に集光された光は、その受光素子において電気信号に変換され、さらにセンサー・ボード・ユニット１０２内部でディジタルの画像信号に変換された後、センサー・ボード・ユニット１０２から出力される。センサー・ボード・ユニット１０２から出力された画像信号は画像データ制御部１０３に入力される。画像データ制御部１０３は、センサー・ボード・ユニット１０２、パラレルバス１２０、画像処理プロセッサー１０４間の画像データ転送、および装置全体の制御を行うシステム・コントローラー１３１とプロセス・コントローラー１１１との間で行われる信号のやりとりを制御する。
【０００６】
センサー・ボード・ユニット１０２からの画像信号は、画像データ制御部１０３を経由して画像処理プロセッサー１０４に転送される。ここでは、光学系およびディジタル信号への量子化に伴う信号劣化（スキャナー系の信号劣化とする）の補正が行われ、再度画像データ制御部１０３へ転送される。画像処理プロセッサー１０４から画像データ制御部１０３へ転送されたデータは、画像データ制御部１０３からパラレルバス１２０を経由して画像メモリー・アクセス制御部１２１に送られる。ここではシステム・コントローラー１３１の制御に基づき画像データとコントローラー側メモリー・モジュール１２２のアクセス制御、ＰＣ（パソコン）１２３のプリント用データの展開、メモリー有効活用のための画像データの圧縮／伸張を行う。
【０００７】
画像メモリー・アクセス制御部１２１へ送られた画像データは、圧縮された後コントローラー側メモリー・モジュール１２２に蓄積される。ここに蓄積された画像データは必要に応じて読み出される。読み出された画像データは、伸張され本来の画像データに戻され、画像メモリー・アクセス制御部１２１からパラレルバス１２０経由で画像データ制御部１０３へ戻される。画像データ制御部１０３から画像処理プロセッサー１０４へのデータ転送後は、画質処理およびビデオ・データ制御部１０５でのパルス制御が行われ、作像ユニット１０６において転写紙上に再生画像が形成される。このようにすることで、図１０に示した画像処理装置は、ディジタル複合機としての機能を実現している。
【０００８】
また、図１０に示した画像処理装置は、読み取り画像データを画像処理プロセッサー１０４で画像処理を行った後、画像データ制御部１０３およびパラレルバス１２０を経由してファクシミリ制御ユニット１２４へ転送する。そして、ファクシミリ制御ユニット１２４にて通信網へのデータ変換を行い、公衆回線１２５へファクシミリデータとして送信する。一方、公衆回線１２５からの回線データは、ファクシミリ制御ユニット１２４で画像データへ変換され、パラレルバス１２０および画像データ制御部１０３を経由して画像処理プロセッサー１０４へ転送される。この場合、特別な画質処理は行わず、ビデオ・データ制御部１０５においてドット再配置およびパルス制御を行い、作像ユニット１０６において転写紙上に再生画像を形成する。このようにして、ファクシミリ送信機能を実現している。
【０００９】
複数ジョブ、例えばコピー機能、ファクシミリ送受信機能、プリンター出力機能が並行に動作する状況では、読取ユニット１０１、作像ユニット１０６およびパラレルバス１２０使用権のジョブへの割り振りをシステム・コントローラー１３１およびプロセス・コントローラー１１１によって制御する。プロセス・コントローラー１１１は画像データの流れを制御し、システム・コントローラー１３１はシステム全体を制御し、各リソースの起動を管理する。ディジタル複合機の機能選択は、操作パネル１３４で行い、コピー機能、ファクシミリ機能等の処理内容を設定する。システム・コントローラー１３１とプロセス・コントローラー１１１は、パラレルバス１２０、画像データ制御部１０３およびシリアルバス１１０を介して相互に通信を行う。また、画像データ制御部１０３内において、パラレルバス１２０とシリアルバス１１０とのデータインターフェースのためのデータフォーマット変換を行う。
【００１０】
次に、図１１に基づき、画像処理プロセッサー１０４による画像処理を説明する。図１１は、画像処理プロセッサー１０４の処理の概要を示すブロック図である。読み取られた画像データは、センサー・ボード・ユニット１０２、画像データ制御部１０３を介して画像処理プロセッサー１０４の第１入力Ｉ／Ｆ（インターフェース）１０４１から取り込まれ、スキャナー画像処理部１０４２へ送られる。このスキャナー画像処理部１０４２では、例えばシェーディング補正、スキャナーγ補正、ＭＴＦ補正等の読み取り画像信号の劣化補正が行われる。補正処理が行われた画像データは、第１出力Ｉ／Ｆ１０４３を介して画像データ制御部１０３へ転送される。また、画像データ制御部１０３からの画像データを第２入力Ｉ／Ｆ１０４４から取り込み、画質処理部１０４５で面積階調処理を行う。この処理が施された画像データは、第２出力Ｉ／Ｆ１０４６を介してビデオ・データ制御部１０５へ出力される。この画像データは、転写紙への出力に用いる。
【００１１】
面積階調処理は、濃度変換、ディザ処理、誤差拡散処理等があり、階調情報の面積近似を主な処理とする。一旦スキャナー画像処理された画像データをメモリーに蓄積しておけば、画質処理を変えることによって種々の再生画像を確認することができる。例えば、再生画像の濃度を振ってみたり、ディザマトリクスの線数を変更してみたりすることで、再生画像の雰囲気を変更できる。このとき、処理を変更するたびに、画像を読取ユニット１０１から読み込み直す必要はなく、コントローラー側メモリー・モジュール１２２から格納画像を読み出せば、同一データに対し何度でも異なる処理を実施できる。また、単体スキャナーの場合、スキャナー画像処理と階調処理を合せて実施し、画像データ制御部１０３へ出力する。処理内容はプログラマブルに変更する。処理の切り替え、処理手順の変更等は、コマンド制御部１０４７において管理している。
【００１２】
図１２は、画像データ制御部１０３の構成を示すブロック図である。画像データ入出力制御部１０３１は、センサー・ボード・ユニット１０２からの画像データを入力し、画像処理プロセッサー１０４に対して画像データを出力する。画像データ入力制御部１０３２では、画像処理プロセッサー１０４でスキャナー画像補正されたデータが入力される。入力データに対し、パラレルバス１２０での転送効率を高めるために、データ圧縮部１０３３においてデータ圧縮を行う。そしてデータ変換部１０３４、パラレルデータＩ／Ｆ１０３５を介してパラレルバス１２０へ送出される。パラレルバス１２０からパラレルデータＩ／Ｆ１０３５を介してデータ変換部１０３４に入力される画像データは、バス転送のために圧縮されており、データ伸張部１０３６で伸張される。ここで伸張された画像データは、画像データ出力制御部１０３７から画像処理プロセッサー１０４へ転送される。データ変換部１０３４は、パラレルデータとシリアルデータの変換機能を併せ持つ。すなわち、システム・コントローラー１３１がパラレルバス１２０にデータを転送するときと、プロセス・コントローラー１１１がシリアルバス１１０にデータを転送するときのためのデータ変換を行う。
【００１３】
また、シリアルデータＩ／Ｆは、シリアルバス１１０を介してプロセス・コントローラー１１１とのデータのやりとりをする第１シリアルデータＩ／Ｆ１０３８Ａと、画像処理プロセッサー１０４とのデータのやりとりに用いる第２シリアルデータＩ／Ｆ１０３８Ｂを備える。画像処理プロセッサー１０４との間に独立に１系統持つことにより、画像処理プロセッサー１０４とのインターフェースを円滑化することができる。
【００１４】
コマンド制御部１０３９は、入力された命令にしたがって、上述した画像データ制御部１０３内の各構成部および各インターフェースの動作を制御する。
【００１５】
図１３は、ビデオ・データ制御部１０５の構成を示すブロック図である。このビデオ・データ制御部１０５は、入力される画像データに対して、作像ユニット１０６の特性に応じて、追加の処理を行う。すなわち、エッジ平滑処理部１０５１がエッジ平滑処理によるドットの再配置処理を行い、さらにパルス制御部１０５２がドット形成のための画像信号のパルス制御を行い、これらの処理が行われた画像データを作像ユニット１０６へ出力する。一方、画像データの変換とは別に、パラレルデータとシリアルデータのフォーマット変換機能を備え、ビデオ・データ制御部１０５単体でもシステム・コントローラー１３１とプロセス・コントローラー１１１との間の通信に対応することができる。すなわち、パラレルデータを送受信するパラレルデータＩ／Ｆ１０５３と、シリアルデータを送受信するシリアルデータＩ／Ｆ１０５４と、パラレルデータＩ／Ｆ１０５３およびシリアルデータＩ／Ｆ１０５４により受信されたデータを相互に変換するデータ変換部１０５５とを備えることにより、両データのフォーマットを変換する。
【００１６】
図１４は、画像メモリー・アクセス制御部１２１の構成を示すブロック図である。この画像メモリー・アクセス制御部１２１は、パラレルバス１２０との画像データのインターフェースを管理し、また、コントローラー側メモリー・モジュール１２２への画像データのアクセス、すなわち格納（書き込み）／読み出しを制御し、また、主にＰＣ１２３から入力されるコードデータの画像データへの展開を制御するものである。
【００１７】
パラレルデータＩ／Ｆ１２１１は、パラレルバス１２０との画像データのインターフェースを管理する。また、メモリー・アクセス制御部１２１３は、コントローラー側メモリー・モジュール１２２への画像データのアクセス、すなわち格納（書き込み）／読み出しを制御する。ＰＣ１２３から入力されたコードデータは、ラインバッファー１２１４において、ローカル領域でのデータの格納を行う。ラインバッファー１２１４に格納されたコードデータは、システム・コントローラーＩ／Ｆ１２１２を介して入力されたシステム・コントローラー１３１からの展開処理命令に基づき、ビデオ制御部１２１５において画像データに展開される。
【００１８】
展開された画像データ、もしくはパラレルデータＩ／Ｆ１２１１を介してパラレルバス１２０から入力された画像データは、コントローラー側メモリー・モジュール１２２に格納される。この場合、データ変換部１２１８において格納対象となる画像データを選択し、データ圧縮部１２１６においてメモリー使用効率を上げるためのデータ圧縮を行い、メモリー・アクセス制御部１２１３にてコントローラー側メモリー・モジュール１２２のアドレスを管理しながらコントローラー側メモリー・モジュール１２２に画像データを格納（書き込み）する。
【００１９】
コントローラー側メモリー・モジュール１２２に格納（蓄積）された画像データの読み出しは、メモリー・アクセス制御部１２１３において読み出し先アドレスを制御し、読み出された画像データをデータ伸張部１２１７において伸張する。伸張された画像データをパラレルバス１２０へ転送する場合、パラレルデータＩ／Ｆ１２１１を介してデータ転送を行う。
【００２０】
図１５は、ファクシミリ制御ユニット１２４の構成を示すブロック図である。ファクシミリ制御ユニット１２４は、ファクシミリ送受信部１２４１と外部Ｉ／Ｆ１２４２とから構成される。ここで、ファクシミリ送受信部１２４１は、画像データを通信形式に変換して外部回線に送信し、また、外部からのデータを画像データに戻して外部Ｉ／Ｆ１２４２およびパラレルバス１２０を介して図１０に示した作像ユニット１０６において記録出力する。ファクシミリ送受信部１２４１は、ファクシミリ画像処理部１２４３、画像メモリー１２４４、メモリー制御部１２４５、データ制御部１２４６、画像圧縮伸張部１２４７、モデム１２４８、および網制御装置１２４９を含み構成されている。なお、ファクシミリ画像処理に関し、受信画像に対する二値スムージング処理は、図１３に示したビデオ・データ制御部１０５内のエッジ平滑処理部１０５１において行う。また、画像メモリー１２４４に関しても、出力バッファー機能に関しては画像メモリー・アクセス制御部１２１およびコントローラー側メモリー・モジュール１２２にその機能の一部を移行する。
【００２１】
このように構成されたファクシミリ送受信部１２４１では、画像情報の伝送を開始するとき、データ制御部１２４６がメモリー制御部１２４５に指令し、画像メモリー１２４４から蓄積されている画像情報を順次読み出させる。読み出された画像情報は、ファクシミリ画像処理部１２４３によって元の信号に復元されるとともに、密度変換処理および変倍処理がなされ、データ制御部１２４６に加えられる。データ制御部１２４６に加えられた画像信号は、画像圧縮伸張部１２４７によって符号圧縮され、モデム１２４８によって変調された後、網制御装置１２４９を介して宛先へ送出される。そして、送信が完了した画像情報は、画像メモリー１２４４から削除される。
【００２２】
受信時には、受信画像は一旦画像メモリー１２４４に蓄積され、そのときに受信画像を記録出力可能であれば、１枚分の画像の受信を完了した時点で記録出力される。また、複写動作時に発呼されて受信を開始したときは、画像メモリー１２４４の使用率が所定値、例えば８０％に達するまでは画像メモリー１２４４に蓄積し、画像メモリー１２４４の使用率が８０％に達した場合には、そのときに実行している書き込み動作を強制的に中断し、受信画像を画像メモリー１２４４から読み出し記録出力させる。このとき画像メモリー１２４４から読み出した受信画像は画像メモリー１２４４から削除し、画像メモリー１２４４の使用率が所定値、例えば１０％まで低下した時点で中断していた書き込み動作を再開させ、その書き込み動作がすべて終了した時点で、残りの受信画像を記録出力させる。また、書き込み動作を中断した後に、再開できるように中断時における書き込み動作のための各種パラメータを内部的に退避させ、再開時に、パラメータを内部的に復帰させる。
【００２３】
【発明が解決しようとする課題】
以上のように構成された従来の画像処理装置において、原稿データやユーザースタンプ印字画像の回転操作を行うためには、以下に示すような処理が必要である。まず、図１０に示した画像処理装置において、コピー実行時には前述したように、読取ユニット１０１にて読み取られた画像信号は、センサー・ボード・ユニット１０２、画像データ制御部１０３、画像処理プロセッサー１０４、画像データ制御部１０３へと転送され、画像データ制御部１０３からパラレルバス１２０および画像メモリー・アクセス制御部１２１を介してコントローラー側メモリー・モジュール１２２に蓄積される。その後、画像信号はコントローラー側メモリー・モジュール１２２から画像メモリー・アクセス制御部１２１およびパラレルバス１２０を介して画像データ制御部１０３に送られ、画像処理プロセッサー１０４、ビデオ・データ制御部１０５、作像ユニット１０６に送られ転写画像を得る。
【００２４】
ここでコピーを実現するための機能の一つである画像回転の様子を図１６に示す。図１６（ａ）〜（ｄ）は、Ａ４サイズの原稿の読取ユニット１０１への置き方と得られる正転画像との関係を説明するための図である。図１６（ａ）、（ｂ）はＡ４サイズの原稿を縦に置いた場合で、それぞれ（ａ）は正転画像もＡ４縦サイズにするため画像回転は不要である場合を示し、（ｂ）は正転画像としてＡ４横サイズのものがほしいため左９０度回転が必要である場合を示している。また、図１６（ｃ）、（ｄ）はＡ４サイズの原稿を横に置いた場合で、それぞれ（ｃ）は正転画像もＡ４横サイズにするため画像回転は不要である場合を示し、（ｄ）は正転画像としてＡ４縦サイズのものがほしいため左９０度回転が必要な場合を示している。
【００２５】
次に、スキャナー画像データの回転の例として、コピー機能の一つであるユーザースタンプの回転の様子を図１７に示す。図１７（ａ）は，あらかじめ画像処理装置に登録されている丸秘スタンプを原稿データに印字した様子を示す図である。ユーザーがよく使うスタンプ、例えば「丸秘」や「回収」、「回覧」、「複製厳禁」、「至急」等はあらかじめ画像処理装置に登録されており、ユーザーはこれらのスタンプを選択することで原稿データにスタンプが印字されたコピーを得ることができる。スタンプにはこれとは別に、ユーザー特有のスタンプも印字することができる。図１７（ｂ）は、ユーザー特有の［○○株式会社］というスタンプを原稿データに印字した様子を示す図である。このようにユーザー特有のスタンプはいわゆるユーザースタンプと呼ばれ、ユーザーがスタンプとして使いたい様式を登録することで、以後汎用のスタンプと同様に使用することができる。ユーザースタンプの登録は、ユーザースタンプの原稿をコピーのスキャン時と同様に読み込み、コントローラー側メモリー・モジュール１２２に蓄積することで可能となる。また、図１７（ｃ）は、右９０度回転されたユーザースタンプを原稿に印字した様子を示す図である。
【００２６】
このようにユーザースタンプの登録時にも画像回転が必要となる。これを図１８（ａ）〜（ｇ）を用いて説明する。通常、ユーザースタンプは同じスタンプでも、例えば大きさによって３種類登録し、原稿の大きさやユーザーの目的によって使い分ける。このユーザースタンプ画像を得る際には、コピー時の原稿読み取りと同様に読取ユニット１０１にユーザースタンプとして登録したい原稿データ（図１８（ａ））をセットし、読み取る。スキャン時は例えば１インチに６００ドットの解像度の６００ｄｐｉで読み取られるが、読み取り時の倍率を等倍にした場合は図１８（ｂ）の画像が得られ、６７％に縮小した場合は図１８（ｄ）、３３％に縮小した場合は図１８（ｆ）のようなユーザースタンプ画像が得られる。さらに、図１８（ｃ）、（ｅ）、（ｇ）に示すように、回転後の原稿への印字のためにあらかじめ回転された状態のユーザースタンプの登録も必要となる。
【００２７】
次に、図１６あるいは図１８に示した回転画像を得る従来の方法について説明する。図１９（ａ）〜（ｃ）は、従来の原稿画像データを回転させる方法を説明するための図である。図１９（ａ）は、原稿画像データを左９０度回転させる場合のアドレス制御の様子を示す図である。原稿の主走査方向の１、２、…、５の順にアクセスされた画像データを、回転後では副走査方向の降順に書き込み、あるいは読み取るようにすることで画像左９０度回転が実現される。図１９（ｂ）は、原稿画像データを右９０度回転させる場合のアドレス制御の様子を示す図である。原稿の主走査方向の１、２、…、５の順にアクセスされた画像データを、回転後では副走査方向の昇順に書き込み、あるいは読み取るようにすることで画像右９０度回転が実現される。図１９（ｃ）は、原稿画像データを１８０度回転させる場合のアクセス制御の様子を示す図である。原稿の主走査方向の１、２、…、５の順にアクセスされた画像データを、回転後では主走査方向の降順に書き込み、あるいは読み取るようにすることで画像１８０度回転が実現される。
【００２８】
図２０は、一旦コントローラー側メモリー・モジュール１２２に格納された原稿画像データ、あるいはユーザースタンプデータをシステム・コントローラー１３１でのソフトウェアにより回転する処理を説明するための図である。画像パスａは、画像メモリー・アクセス制御部１２１を経由してコントローラー側メモリー・モジュール１２２から回転前の画像を読み出し、システム・コントローラー１３１でソフトウェアによるアドレスの回転処理を行う。そして、回転後の画像データを画像パスｂで画像メモリー・アクセス制御部１２１経由で再びコントローラー側メモリー・モジュール１２２に格納する。この場合、システム・コントローラー１３１でソフトウェアによる回転を行うため、一般的に画像の回転処理に多くの時間を必要とする。また、この画像回転処理中は、他の動作、例えばプリントデータのビットマップ展開も全く同じ画像パスを経由するため、同時に実行できず、画像処理の効率の向上は望めない。
【００２９】
図２１は、画像回転をシステム・コントローラー１３１ではなく、画像メモリー・アクセス制御部１２１内でハード的に実現する場合を説明するための図である。この場合、図１４に示した画像メモリー・アクセス制御部１２１内に画像回転処理部１２１９を新たに設ける必要がある。画像メモリー・アクセス制御部１２１内で画像回転を実行する際の画像パスｃは、次に示す経路をたどる。まず、メモリー・アクセス制御部１２１３の作用で、コントローラー側メモリー・モジュール１２２から回転前の画像データが読み出され、画像回転処理部１２１９へ送られる。そして、画像回転処理部１２１９にてアドレス制御の画像回転処理が行われ、回転後の画像データは再び画像メモリー・アクセス制御部１２１の作用でコントローラー側メモリー・モジュール１２２に格納される。この場合、図２０を参照して説明したシステム・コントローラー１３１でのソフトウェアによる場合とは異なり、画像の回転処理をハード的に行うため、画像回転の処理速度を向上させることが可能となる。ただし、万一、画像回転処理部１２１９による回転処理とシステム・コントローラー１３１によるプリント画像のビットマップ展開とが同時に行われた場合、メモリーアクセスが重なり、画像回転の処理速度が低下するという問題が発生する。
【００３０】
本発明は、上記のような従来技術の有する問題点に鑑みなされたものであり、その目的は、コントローラー側のメモリーアクセスの混雑を低減し、かつ画像の回転処理を行う場合の処理速度を上げ、画像処理の効率を向上させうる画像処理装置、画像処理方法およびこの方法をコンピュータに実行させるプログラムを提供することにある。
【００３１】
【課題を解決するための手段】
上記目的を達成するため、請求項１にかかる画像処理装置は、読み取った原稿の画像をディジタル変換された画像データに変換し、該変換された第１の画像データを第１の画像メモリーに蓄積する画像処理装置において、読み取った前記画像データに対する所定の画像処理を行う画像データ制御手段を備え、前記画像データ制御手段には、第２の画像メモリーが接続されており、かつ、前記第１の画像データの回転処理を実行する画像データ回転処理手段と、前記画像データ回転処理手段により回転処理が施された画像データの変倍処理を実行する変倍処理手段と、前記画像データに対する前記回転処理後、あるいは、変倍処理後の画像データを前記第１の画像メモリーに転送する転送手段とを備えたことを特徴とする。
【００３２】
この請求項１に記載の発明によれば、外部から取り込んだ画像データまたはユーザースタンプ画像データを回転する必要がある場合に、その画像データの回転処理と、プリントデータのビットマップ展開を同時に行ってもスループットが落ちることを防ぎ、画像処理の速度、効率を向上させることができる。
【００３３】
また、請求項２にかかる画像処理装置は、請求項１に記載の画像処理装置において、前記画像データ回転手段に、回転処理後の画像データのリードアドレスを生成するアドレス生成手段が設けられていることを特徴とする。
【００３４】
この請求項２に記載の発明によれば、簡易な操作で画像データの回転処理が可能になる。
【００３５】
また、請求項３にかかる画像処理装置は、請求項１または２に記載の画像処理装置において、前記画像データ回転処理手段が、前記第１の画像データに対し、左右９０度および１８０度の回転処理を実行することを特徴とする。
【００３６】
この請求項３に記載の発明によれば、画像データの左右９０度および１８０度の回転処理を任意に選択して実行することが可能になる。
【００３７】
また、請求項４にかかる画像処理装置は、請求項１〜３のいずれか一つに記載の画像処理装置において、前記画像データ制御手段が、前記第１の画像データに対して回転処理を実行し、回転処理後の画像データを一時的に前記第２の画像メモリーに格納した後に再度読み出して前記第１の画像メモリーへ格納することを特徴とする。
【００３８】
この請求項４に記載の発明によれば、エンジン側で画像の回転処理を行うため、コントローラー側のメモリーアクセスを低減させることができる。したがって、プリントデータのビットマップ展開等、メモリーアクセスの混雑を防ぐことができるため、スループットが落ちることを防ぎ、画像処理の速度、効率を向上させることができる。
【００３９】
また、請求項５にかかる画像処理装置は、請求項１〜３のいずれか一つに記載の画像処理装置において、前記画像データ制御手段が、前記第１の画像データを一時的に前記第２の画像メモリーに格納した後に再度読み出して回転処理を実行し、回転処理後の画像データを前記第１の画像メモリーへ格納することを特徴とする。
【００４０】
この請求項５に記載の発明によれば、外部から取り込んだ画像データまたはユーザースタンプ画像データを回転させる場合、エンジン側メモリーから画像データを読み出す際に、その読み出しアドレスを制御することで画像回転が実現できるため、従来のコントローラー側での画像回転を不要にできる。したがって、プリントデータのビットマップ展開等、メモリーアクセスの混雑を防ぐことができるため、スループットが落ちることを防ぎ、画像処理の速度、効率を向上させることができる。
【００４１】
また、請求項６にかかる画像処理装置は、請求項１〜５のいずれか一つに記載の画像処理装置において、前記画像読取手段に、読み取る原稿のサイズを検出する手段が設けられていることを特徴とする。
【００４２】
この請求項６に記載の発明によれば、読み取る原稿に異なるサイズの原稿が混在している場合でも、効率的な画像処理を行うことができる。
【００４３】
また、請求項７にかかる画像処理装置は、請求項１〜６のいずれか一つに記載の画像処理装置において、前記第１の画像データに対し、回転処理および変倍処理を行うか否かを選択する手段が設けられていることを特徴とする。
【００４４】
この請求項７に記載の発明によれば、外部から取り込んだ画像データに対し回転処理および変倍処理を行うか否かを選択することができる。
【００４５】
また、請求項８にかかる画像処理方法は、回転後の画像のベースアドレスを生成する工程と、このベースアドレスを基準にして順に各列のオフセットアドレスを生成していく工程と、を含むことを特徴とする。
【００４６】
この請求項８に記載の発明によれば、簡易な操作で画像データの回転処理が可能になる。
【００４７】
また、請求項９にかかる画像処理方法は、請求項８に記載の画像処理方法において、さらに、当該列のオフセットアドレスの生成が終了したか否かを検出する工程を含み、この工程で当該列のオフセットアドレスの生成が未終了であることが検出された場合、引き続き当該列のオフセットアドレスの生成が続行されることを特徴とする。
【００４８】
この請求項９に記載の発明によれば、画像データの回転処理を行う工程において、途中の工程が抜けてしまうことを回避することができる。
【００４９】
また、請求項１０にかかる画像処理方法は、請求項９に記載の画像処理方法において、さらに、全工程が終了したか否かを検出する工程を含み、この工程で全工程が未終了であることが検出された場合、引き続き各列のオフセットアドレスの生成が続行されることを特徴とする。
【００５０】
この請求項１０に記載の発明によれば、画像データの回転処理を行う工程において、途中の工程が抜けてしまうことを回避することができる。
【００５１】
また、請求項１１にかかるプログラムは、請求項８〜１０のいずれか一つに記載の画像処理方法をコンピュータに実行させることで、請求項８〜１０のいずれか一つに記載の方法をコンピュータによって実現することができる。
【００５２】
【発明の実施の形態】
以下、図示した一実施の形態に基づき、本発明を詳細に説明する。以下、前述した従来装置に用いられている部材と同様の部材には同一の符号を付して説明する。
【００５３】
図１は、本発明の画像処理装置の構成を示すブロック図である。本発明の画像処理装置の構成は、ほぼ図１０に示した装置と同様であるが、次の点が異なる。すなわち、エンジン側メモリー・モジュール（第２の画像メモリー）１４１と、図２に示す構成の画像データ制御部１４２を備えている。また、読取ユニット１０１には読み取る原稿のサイズを検出する手段が設けられており、プロセス・コントローラー１１１には回転処理および変倍処理を行うか否かを選択する手段が設けられている。
【００５４】
画像データ制御部１４２は、図２に示すように、おおよそ図１２に示した従来の画像データ制御部１０３と同様の構成であるが、次の点が異なる。すなわち、画像データ入力制御部１４２１と、メモリー回転出力制御部（画像データ回転処理手段）１４２２と、メモリー回転入力制御部（画像データ回転処理手段）１４２３と、画像データ出力制御部１４２４と、変倍処理部１４２５とを備えている。画像データ入力制御部１４２１は、センサー・ボード・ユニット１０２から入力される原稿画像データの入力を制御する。メモリー回転出力制御部１４２２は、入力された原稿画像データの回転後のアドレスを生成してエンジン側メモリー・モジュール１４１に格納する。メモリー回転入力制御部１４２３は、エンジン側メモリー・モジュール１４１からの画像データの読み出しを回転後のアドレスでアクセスできるように制御する。なお、これらにおける画像データの回転制御についての詳細は後述する。画像データ出力制御部１４２４は、画像処理プロセッサー１０４へ送られる画像データの出力を制御する。変倍処理部１４２５は、画像データ入力制御部１０３２とデータ圧縮部１０３３との間に設けられており、画像データの拡大や縮小の変倍を行う。
【００５５】
次に、本発明の画像処理装置において、原稿画像を読み取り、コントローラー側メモリー・モジュール（第１の画像メモリー）１２２に画像データを格納するまでの手順を図３を参照して説明する。読取ユニット１０１にて読み取られた原稿画像データは、センサー・ボード・ユニット１０２、画像データ制御部１４２を経由して、一旦エンジン側メモリー・モジュール１４１に格納される。このとき、必要に応じて画像データ制御部１４２内のメモリー回転出力制御部１４２２により画像の回転処理が行われる。次に、エンジン側メモリー・モジュール１４１から画像データが読み出される。この画像データは、順に画像データ制御部１４２、画像処理プロセッサー１０４、画像データ制御部１４２、パラレルバス１２０、画像メモリー・アクセス制御部１２１を経由してコントローラー側メモリー・モジュール１２２に格納される。この際、必要に応じて、画像データ制御部１４２内のメモリー回転入力制御部１４２３により、メモリー読み出し時に画像の回転処理が行われる。なお、エンジン側メモリー・モジュール１４１への書き込み時、および読み出し時の双方において画像の回転処理は可能であるが、実際に画像の回転処理が必要な場合は、いずれか一方で回転処理が行われ、双方で回転処理が行われることはない。
【００５６】
次に、本発明の画像処理装置において、原稿サイズが混在した場合で、原稿を読み終わらないと原稿サイズが検出できない場合の制御方法について図４を参照して説明する。この場合、すべての原稿画像データを読み終えると読取ユニット１０１からプロセス・コントローラー１１１に対して、原稿サイズが通知される。プロセス・コントローラー１１１は、原稿サイズの通知を受けると、あらかじめユーザーから指定された転写紙サイズと転写紙の方向を考慮し、画像データ制御部１４２に対し、内部のメモリー回転入力制御部１４２３で回転を行うか否か、および変倍処理部１４２５で拡大・縮小等の変倍処理を行うか否かを指示する。そして、エンジン側メモリー・モジュール１４１からの画像データのリードが開始され、あらかじめ設定された画像処理内容にしたがって処理が行われた後、コントローラー側メモリー・モジュール１２２に格納される。
【００５７】
図５は、本発明の画像処理装置による画像回転の例として、等倍および縮小処理と画像回転を伴うユーザースタンプ原稿の読み取りの様子を示す図である。図５（ａ）は、ユーザースタンプ原稿で、この画像データが読取ユニット１０１で読み取られた後、センサー・ボード・ユニット１０２、画像データ制御部１４２へと送られる。そして、画像データ制御部１４２からエンジン側メモリー・モジュール１４１に書き込まれる際、あるいはエンジン側メモリー・モジュール１４１から読み出す際にメモリーアクセスのアドレス制御により、画像の回転処理が実現される（図５（ｂ）参照）。この回転処理後の画像データが画像データ制御部１４２を経由して画像処理プロセッサー１０４、画像データ制御部１４２へ転送される。このとき、必要とするユーザースタンプが図５（ｃ）に示すように等倍のとき、画像データ制御部１４２内の変倍処理部１４２５では、変倍処理は実行されず、データ圧縮後、パラレルバス１２０、画像メモリー・アクセス制御部１２１を経由して、コントローラー側メモリー・モジュール１２２に格納される。
【００５８】
また、図５（ｄ）に示すように、必要とするユーザースタンプが６７％に縮小されたものであるとき、画像データ制御部１４２内の変倍処理部１４２５にて６７％に縮小するための変倍処理が実行され、データ圧縮後、パラレルバス１２０、画像メモリー・アクセス制御部１２１を経由してコントローラー側メモリー・モジュール１２２に格納される。また、図５（ｅ）に示すように、必要とするユーザースタンプが３３％に縮小されたものであるとき、画像データ制御部１４２内の変倍処理部１４２５にて３３％に縮小する変倍処理が実行され、データ圧縮後、パラレルバス１２０、画像メモリー・アクセス制御部１２１を経由してコントローラー側メモリー・モジュール１２２に格納される。
【００５９】
図６は、図２に示した画像データ制御部１４２内のメモリーインターフェースであるメモリー回転出力制御部１４２２およびメモリー回転入力制御部１４２３内に備えられる、画像回転を実現するメモリーアドレス生成回路の概略構成を示す図である。図６において、ＢＡＳＥはベースアドレスを、ＯＦＡはオフセットアドレスを示す。マルチプレクサＭＵＸ１は、その選択信号ｓｅｌ＿ｂａｓｅ＝‘１’のときＢＡＳＥを、ｓｅｌ＿ｂａｓｅ＝‘０’のとき加減算器ＡＤＤ／ＳＵＢ１の出力値を選択し、出力する。ラインアドレスレジスタＬＩＮＥＡは、そのロード信号ｌｄ＿ｌｉｎｅａ＝‘１’のとき、マルチプレクサＭＵＸ１の出力を取り込む。マルチプレクサＭＵＸ２は、その選択信号ｓｅｌ＿ｏｆａ１＝‘１’のときＯＦＡを、ｓｅｌ＿ｏｆａ１＝‘０’のとき値‘１’を選択し、出力する。
【００６０】
加減算器ＡＤＤ／ＳＵＢ１は、その制御信号ａｄｄ／ｓｕｂ１＝‘０’のときラインアドレスレジスタＬＩＮＥＡの出力値とマルチプレクサＭＵＸ２の出力値の加算値を、ａｄｄ／ｓｕｂ１＝‘１’のときラインアドレスレジスタＬＩＮＥＡの出力値からマルチプレクサＭＵＸ２の出力値を減算した値を出力する。マルチプレクサＭＵＸ３は、その選択信号ｓｅｌ＿ｏｆａ２＝‘１’のときＯＦＡを、ｓｅｌ＿ｏｆａ２＝‘０’のとき値‘１’を選択し、出力する。加減算器ＡＤＤ／ＳＵＢ２は、その制御信号ａｄｄ／ｓｕｂ２＝‘０’のときメモリーアドレスカウンタＭＥＭＡの出力値とマルチプレクサＭＵＸ３の出力値の加算値を、ａｄｄ／ｓｕｂ２＝‘１’のときメモリーアドレスカウンタＭＥＭＡの出力値からマルチプレクサＭＵＸ３の出力値を減算した値を出力する。
【００６１】
マルチプレクサＭＵＸ４は、その選択信号ｓｅｌ＿ｌｉｎｅａ＝‘１’のときラインアドレスレジスタＬＩＮＥＡの出力値を、ｓｅｌ＿ｌｉｎｅａ＝‘０’のとき加減算器ＡＤＤ／ＳＵＢ２の出力値を選択し、出力する。メモリーアドレスカウンタＭＥＭＡは、そのロード信号ｌｄ＿ｍｅｍａ＝‘１’のとき、マルチプレクサＭＵＸ４の出力値を取り込む。
【００６２】
次に、本発明の画像処理装置における画像の回転処理について説明する。この画像の回転処理は、図２に示した画像データ制御部１４２内のメモリー回転出力制御部１４２２またはメモリー回転入力制御部１４２３で行われる。詳しくは、各制御部に備えられたメモリーアドレス生成器（図６参照）により実行される。なお、この処理を行うためのプログラムは画像処理プロセッサー１０４内に備えられた記録媒体（不図示）に記録されている。そして、画像処理プロセッサー１０４がそのプログラムを実行することにより、所望する画像データの回転処理が行われる。
【００６３】
まず、図７を参照して原稿として取り込んだ画像データを左９０度回転させる場合を説明する。図７（ａ）は入力される画像データと左９０度回転された後の画像データとの関係を示す図である。ここに示すように、画像データの左９０度回転を実行するため、回転後の画像データの左下の方から上側へ向かってアクセスすることになる。したがって、回転後の画像データの左下のアドレスをベースアドレス（ＢＡＳＥ）、主走査方向の画像サイズをオフセットアドレス（ＯＦＡ）とする。
【００６４】
図７（ｂ）は、同図（ａ）の回転後のアクセス順（１、２、・・・）に対応するアドレスの生成を説明するためのアドレスフローである。例えば図７（ａ）の回転後のアドレス１、２、３、・・・、８にアクセスする場合は、図７（ｂ）に示したアドレスフローの第１行のＢＡＳＥ、ＢＡＳＥ−ＯＦＡ、ＢＡＳＥ−２ＯＦＡ、・・・が順に対応する。さらに、図７（ａ）の回転後のアドレス９、１０、・・・、１３、・・・にアクセスする場合は、図７（ｂ）の第２行のＢＡＳＥ＋１、ＢＡＳＥ＋１−ＯＦＡ、ＢＡＳＥ＋１−２ＯＦＡ、・・・が順に対応する。このようにすることにより、図７（ａ）に示した画像データの左９０度回転が実現される。
【００６５】
続いて、図７（ａ）に示した原稿画像データに対し左９０度の回転処理を行うための手順を示す。図７（ｃ）はこの手順を示すフローチャートである。前述のように画像回転処理は図６に示したアドレス生成回路によって行われるため、以下当該アドレス生成回路を動作させる各信号の名称を記して説明する。
【００６６】
１）ベースアドレス（ＢＡＳＥ）の値をマルチプレクサＭＵＸ１を経由して、ラインアドレスレジスタＬＩＮＥＡに格納する（ステップＳ１）。
【００６７】
２）メモリーアドレスカウンタＭＥＭＡにラインアドレスレジスタＬＩＮＥＡの値、すなわちベースアドレス（ＢＡＳＥ）をマルチプレクサＭＵＸ４を経由して格納する（ステップＳ２）。これにより１ライン目のアクセス準備を終えたことになる。
【００６８】
３）第１画素目の先頭アドレスをＢＡＳＥとして、以後加減算器ＡＤＤ／ＳＵＢ２による（ＭＥＭＡ−ＯＦＡ）の減算を行い、ＢＡＳＥ−ＯＦＡ、ＢＡＳＥ−２ＯＦＡ、ＢＡＳＥ−３ＯＦＡ、・・・の順でアクセスする（ステップＳ３）。
【００６９】
４）処理が行われているメモリーアドレス生成器を搭載しているメモリー回転出力制御部１４２２（またはメモリー回転入力制御部１４２３）は、１ライン分アクセスが終了したか否かを検出する（ステップＳ４）。１ライン分のアクセスが終了した場合は（ステップＳ４：Ｙｅｓ）、ステップＳ５へ進む。１ライン分のアクセスが未終了の場合は（ステップＳ４：Ｎｏ）、ステップＳ３へ戻り、処理を続行する。
【００７０】
５）次のラインの先頭アドレスを設定するため、加減算器ＡＤＤ／ＳＵＢ１により、次のラインの先頭アドレス（例えば、２ライン目の先頭アドレスの場合はＢＡＳＥ＋１）を算出し、算出値をマルチプレクサＭＵＸ１を経由して、ラインアドレスレジスタＬＩＮＥＡに格納する（ステップＳ５）。
【００７１】
６）メモリーアドレスカウンタＭＥＭＡに、ラインアドレスレジスタＬＩＮＥＡの値（例えば、２ライン目の先頭アドレスの場合はＢＡＳＥ＋１）をマルチプレクサＭＵＸ４を経由して格納する（ステップＳ６）。
【００７２】
７）処理が行われているメモリーアドレス生成器を搭載しているメモリー回転出力制御部１４２２（またはメモリー回転入力制御部１４２３）は、全ラインの処理が終了したか否かを検出する（ステップＳ７）。全ラインの処理が未終了である場合は（ステップＳ７：Ｎｏ）、ステップＳ３へ戻り、処理を続行する。全ラインの処理が終了した場合は（ステップＳ７：Ｙｅｓ）、終了ステートＥＮＤに進み、画像の回転処理を終了する。
【００７３】
次に、図８を参照して原稿として取り込んだ画像データを右９０度回転させる場合を説明する。図８（ａ）は入力される画像データと右９０度回転された後の画像データとの関係を示す図である。ここに示すように、画像データの右９０度回転を実行するため、回転後の画像データの右上の方から下側へ向かってアクセスすることになる。したがって、回転後の画像データの右上のアドレスをベースアドレス（ＢＡＳＥ）、主走査方向の画像サイズをオフセットアドレス（ＯＦＡ）とする。
【００７４】
図８（ｂ）は、同図（ａ）の回転後のアクセス順（１、２、・・・）に対応するアドレスの生成を説明するためのアドレスフローである。例えば図８（ａ）の回転後のアドレス１、２、３、・・・、１１にアクセスする場合は、図８（ｂ）に示したアドレスフローの第１行のＢＡＳＥ、ＢＡＳＥ＋ＯＦＡ、ＢＡＳＥ＋２ＯＦＡ、・・・が順に対応する。さらに、図８（ａ）の回転後のアドレス１２、１３、・・・、１６、・・・にアクセスする場合は、図８（ｂ）の第２行のＢＡＳＥ−１、ＢＡＳＥ−１＋ＯＦＡ、ＢＡＳＥ−１＋２ＯＦＡ、・・・が順に対応する。このようにすることにより、図８（ａ）に示した画像データの右９０度回転が実現される。
【００７５】
続いて、図８（ａ）に示した原稿画像データに対し右９０度の回転処理を行うための手順を示す。図８（ｃ）はこの手順を示すフローチャートである。前述のように画像回転処理は図６に示したアドレス生成回路によって行われるため、以下当該アドレス生成回路を動作させる各信号の名称を記して説明する。
【００７６】
１）ベースアドレス（ＢＡＳＥ）の値をマルチプレクサＭＵＸ１を経由して、ラインアドレスレジスタＬＩＮＥＡに格納する（ステップＳ１１）。
【００７７】
２）メモリーアドレスカウンタＭＥＭＡにラインアドレスレジスタＬＩＮＥＡの値、すなわちベースアドレス（ＢＡＳＥ）をマルチプレクサＭＵＸ４を経由して格納する（ステップＳ１２）。これにより１ライン目のアクセス準備を終えたことになる。
【００７８】
３）第１画素目の先頭アドレスをＢＡＳＥとして、以後加減算器ＡＤＤ／ＳＵＢ２による（ＭＥＭＡ＋ＯＦＡ）の加算を行い、ＢＡＳＥ＋ＯＦＡ、ＢＡＳＥ＋２ＯＦＡ、ＢＡＳＥ＋３ＯＦＡ、・・・とアクセスする（ステップＳ１３）。
【００７９】
４）処理が行われているメモリーアドレス生成器を搭載しているメモリー回転出力制御部１４２２（またはメモリー回転入力制御部１４２３）は、１ライン分アクセスが終了したか否かを検出する（ステップＳ１４）。１ライン分のアクセスが終了した場合は（ステップＳ１４：Ｙｅｓ）、ステップＳ１５へ進む。１ライン分のアクセスが未終了の場合は（ステップＳ１４：Ｎｏ）、ステップＳ１３へ戻り、処理を続行する。
【００８０】
５）次のラインの先頭アドレスを設定するため、加減算器ＡＤＤ／ＳＵＢ１で次のラインの先頭アドレス（例えば、２ライン目の先頭アドレスの場合はＢＡＳＥ−１）を算出し、この値をマルチプレクサＭＵＸ１を経由してラインアドレスレジスタＬＩＮＥＡに格納する（ステップＳ１５）。
【００８１】
６）メモリーアドレスカウンタＭＥＭＡに、ラインアドレスレジスタＬＩＮＥＡの値（例えば、２ライン目の先頭アドレスの場合はＢＡＳＥ−１）をマルチプレクサＭＵＸ４を経由して格納する（ステップＳ１６）。
【００８２】
７）処理が行われているメモリーアドレス生成器を搭載しているメモリー回転出力制御部１４２２（またはメモリー回転入力制御部１４２３）は、全ラインの処理が終了したか否かを検出する（ステップＳ１７）。全ラインの処理が未終了である場合は（ステップＳ１７：Ｎｏ）、ステップＳ１３へ戻り、処理を続行する。全ラインの処理が終了した場合は（ステップＳ１７：Ｙｅｓ）、終了ステートＥＮＤに進み、画像の回転処理を終了する。
【００８３】
次に、図９を参照して原稿として取り込んだ画像データを１８０度回転させる場合を説明する。図９（ａ）は入力される画像データと１８０度回転された後の画像データとの関係を示す図である。ここに示すように、画像データの１８０度回転を実行するため、回転後の画像データの右下の方から左側へ向かってアクセスすることになる。したがって、回転後の画像データの右下のアドレスをベースアドレス（ＢＡＳＥ）、主走査方向の画像サイズをオフセットアドレス（ＯＦＡ）とする。
【００８４】
図９（ｂ）は、同図（ａ）の回転後のアクセス順（１、２、・・・）に対応するアドレスの生成を説明するためのアドレスフローである。例えば図９（ａ）の回転後のアドレス１、２、３、・・・、１１にアクセスする場合は、図９（ｂ）に示したアドレスフローの第１行のＢＡＳＥ、ＢＡＳＥ−１、ＢＡＳＥ−２、・・・が順に対応する。さらに、図９（ａ）の回転後のアドレス１２、１３、・・・、１６、・・・にアクセスする場合は、図９（ｂ）の第２行のＢＡＳＥ−ＯＦＡ、ＢＡＳＥ−ＯＦＡ−１、ＢＡＳＥ−ＯＦＡ−２、・・・が順に対応する。このようにすることにより、図９（ａ）に示した画像データの１８０度回転が実現される。
【００８５】
続いて、図９（ａ）に示した原稿画像データに対し１８０度の回転処理を行うための手順を示す。図９（ｃ）はこの手順を示すフローチャートである。前述のように画像回転処理は図６に示したアドレス生成回路によって行われるため、以下当該アドレス生成回路を動作させる各信号の名称を記して説明する。
【００８６】
１）ベースアドレス（ＢＡＳＥ）の値をマルチプレクサＭＵＸ１を経由して、ラインアドレスレジスタＬＩＮＥＡに格納する（ステップＳ２１）。
【００８７】
２）メモリーアドレスカウンタＭＥＭＡにラインアドレスレジスタＬＩＮＥＡの値、すなわちベースアドレス（ＢＡＳＥ）をマルチプレクサＭＵＸ４を経由して格納する（ステップＳ２２）。これにより１ライン目のアクセス準備を終えたことになる。
【００８８】
３）第１画素目の先頭アドレスをＢＡＳＥとして、以後加減算器ＡＤＤ／ＳＵＢ２による（ＭＥＭＡ−１）の減算を行い、ＢＡＳＥ−１、ＢＡＳＥ−２、ＢＡＳＥ−３、・・・とアクセスする（ステップＳ２３）。
【００８９】
４）処理が行われているメモリーアドレス生成器を搭載しているメモリー回転出力制御部１４２２（またはメモリー回転入力制御部１４２３）は、１ライン分アクセスが終了したか否かを検出する（ステップＳ２４）。１ライン分のアクセスが終了した場合は（ステップＳ２４：Ｙｅｓ）、ステップＳ２５へ進む。１ライン分のアクセスが未終了の場合は（ステップＳ２４：Ｎｏ）、ステップＳ２３へ戻り、処理を続行する。
【００９０】
５）次のラインの先頭アドレスを設定するため、加減算器ＡＤＤ／ＳＵＢ１で次のラインの先頭アドレス（例えば、２ライン目の先頭アドレスの場合はＢＡＳＥ−ＯＦＡ）を算出し、この値をマルチプレクサＭＵＸ１を経由してラインアドレスレジスタＬＩＮＥＡに格納する（ステップＳ２５）。
【００９１】
６）メモリーアドレスカウンタＭＥＭＡに、ラインアドレスレジスタＬＩＮＥＡの値（例えば、２ライン目の先頭アドレスの場合はＢＡＳＥ−ＯＦＡ）をマルチプレクサＭＵＸ４を経由して格納する（ステップＳ２６）。
【００９２】
７）処理が行われているメモリーアドレス生成器を搭載しているメモリー回転出力制御部１４２２（またはメモリー回転入力制御部１４２３）は、全ラインの処理が終了したか否かを検出する（ステップＳ２７）。全ラインの処理が未終了である場合は（ステップＳ２７：Ｎｏ）、ステップＳ２３へ戻り、処理を続行する。全ラインの処理が終了した場合は（ステップＳ２７：Ｙｅｓ）、終了ステートＥＮＤに進み、画像の回転処理を終了する。
【００９３】
以上のように、本発明の画像処理装置および画像処理方法によれば、外部から取り込んだ画像データまたはユーザースタンプ画像データを回転する必要がある場合、エンジン側メモリー・モジュール１４１に画像データを格納する際、格納アドレスを制御して画像回転処理を行った後に格納するため、従来行われていたコントローラー側での画像回転処理を不要にできる。したがって、コントローラー側のシステム・コントローラー１３１でソフトウェアによる画像の回転処理を行う必要がなく、システム・コントローラー１３１をプリントデータのビットマップ展開などに専念させることができるため、外部から取り込んだ画像データの回転処理と、プリントデータのビットマップ展開を同時に行う場合でもスループットが落ちることを防ぎ、画像処理の速度、効率を向上させることができる。加えて、画像メモリー・アクセス制御部１２１内でハード的に画像回転を行う従来の方法に比べ、エンジン側で画像回転を行うため、コントローラー側のメモリーアクセスを低減させることができる。したがって、プリントデータのビットマップ展開等、メモリーアクセスの混雑を防ぐことができるため、スループットが落ちることを防ぎ、画像処理の速度、効率を向上させることができる。
【００９４】
また、本発明の画像処理装置および画像処理方法によれば、外部から取り込んだ画像データまたはユーザースタンプ画像データを回転させる場合、エンジン側メモリー・モジュール１４１から画像データを読み出す際に、その読み出しアドレスを制御することで画像回転が実現できるため、従来のコントローラー側での画像回転を不要にできる。したがって、プリントデータのビットマップ展開等、メモリーアクセスの混雑を防ぐことができるため、スループットが落ちることを防ぎ、画像処理の速度、効率を向上させることができる。
【００９５】
また、本発明の画像処理装置および画像処理方法によれば、読み取る原稿のサイズが混在している場合であっても（例え読み取り終了まで原稿のサイズがわからない場合でも）、一旦原稿画像データをエンジン側メモリー・モジュール１４１に格納し、画像データの回転処理が必要な場合には、エンジン側メモリー・モジュール１４１からの画像データ読み出し時に画像の回転処理を行うことができるため、コントローラー側での画像の回転処理を不要にできる。したがって、プリントデータのビットマップ展開等、メモリーアクセスの混雑を防ぐことができるため、スループットが落ちることを防ぎ、画像処理の速度、効率を向上させることができる。
【００９６】
また、本発明の画像処理装置および画像処理方法によれば、原稿画像データの読み取り時またはユーザースタンプデータの登録時に、画像の回転処理を行い、その後の画像データに対して、拡大あるいは縮小の変倍処理を行うことができるため、コントローラー側での画像の回転、拡大、縮小処理を不要にすることができる。したがって、プリントデータのビットマップ展開等、メモリーアクセスの混雑を防ぐことができるため、スループットが落ちず、画像処理の速度、効率を向上させることができる。
【００９７】
以上、本発明の一実施形態を図面に沿って説明した。しかしながら本発明はこの実施の形態に示した事項に限定されず、特許請求の範囲の記載に基づいてその変更、改良等が可能であることは云うまでもない。
【００９８】
【発明の効果】
上述のように、本発明によれば、コントローラー側のメモリーアクセスの混雑を低減し、かつ画像の回転処理を行う場合の処理速度を上げ、画像処理の効率を向上できるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の画像処理装置の構成を示すブロック図である。
【図２】画像データ制御部の構成を示すブロック図である。
【図３】本発明の画像処理装置において、原稿画像を読み取り、コントローラー側メモリー・モジュールに画像データを格納するまでの手順を説明するための図である。
【図４】本発明の画像処理装置において、原稿サイズが混在した場合で、原稿を読み終わらないと原稿サイズが検出できない場合の制御方法を説明するための図である。
【図５】本発明の画像処理装置による画像回転の例として、等倍および縮小処理と画像回転を伴うユーザースタンプ原稿の読み取りの様子を示す図である。
【図６】画像データ制御部内のメモリー回転出力制御部およびメモリー回転入力制御部内に備えられる、画像回転を実現するメモリーアドレス生成回路の概略構成を示す図である。
【図７】原稿として取り込んだ画像データを左９０度回転させる場合を説明するための図である。
【図８】原稿として取り込んだ画像データを右９０度回転させる場合を説明するための図である。
【図９】原稿として取り込んだ画像データを１８０度回転させる場合を説明するための図である。
【図１０】従来の画像処理装置の構成を示すブロック図である。
【図１１】画像処理プロセッサーの処理の概要を示すブロック図である。
【図１２】画像データ制御部の構成を示すブロック図である。
【図１３】ビデオ・データ制御部の構成を示すブロック図である。
【図１４】画像メモリー・アクセス制御部の構成を示すブロック図である。
【図１５】ファクシミリ制御ユニットの構成を示すブロック図である。
【図１６】Ａ４サイズの原稿の読取ユニットへの置き方と得られる正転画像との関係を説明するための図である。
【図１７】スキャナー画像データの回転の例として、コピー機能の一つであるユーザースタンプの回転の様子を説明するための図である。
【図１８】ユーザースタンプの登録時に行われる画像の回転処理を説明するための図である。
【図１９】従来の原稿画像データを回転させる方法を説明するための図である。
【図２０】一旦コントローラー側メモリー・モジュールに格納された原稿画像データ、あるいはユーザースタンプデータをシステム・コントローラーにおいてソフトウェアにより回転する処理を説明するための図である。
【図２１】画像データの回転処理を画像メモリー・アクセス制御部内でハード的に実現する場合を説明するための図である。
【符号の説明】
１０１  読取ユニット
１０２  センサー・ボード・ユニット
１０３，１４２  画像データ制御部
１０４  画像処理プロセッサー
１０５  ビデオ・データ制御部
１０６  作像ユニット
１１０  シリアルバス
１１１  プロセス・コントローラー
１１２，１３２  ＲＡＭ
１１３，１３３  ＲＯＭ
１２０  パラレルバス
１２１  画像メモリー・アクセス制御部
１２２  コントローラー側メモリー・モジュール
１２３  ＰＣ（パソコン）
１２４  ファクシミリ制御ユニット
１２５  公衆回線
１３４  操作パネル
１４１  エンジン側メモリー・モジュール
１０３１  画像データ入出力制御部
１０３２，１４２１  画像データ入力制御部
１０３３，１２１６  データ圧縮部
１０３４，１０５５，１２１８  データ変換部
１０３５，１０５３，１２１１  パラレルデータＩ／Ｆ
１０３６，１２１７  データ伸張部
１０３７，１４２４  画像データ出力制御部
１０３８Ａ  第１シリアルデータＩ／Ｆ
１０３８Ｂ  第２シリアルデータＩ／Ｆ
１０３９，１０４７  コマンド制御部
１０４１  第１入力Ｉ／Ｆ
１０４２  スキャナー画像処理部
１０４３  第１出力Ｉ／Ｆ
１０４４  第２入力Ｉ／Ｆ
１０４５  画質処理部
１０４６  第２出力Ｉ／Ｆ
１０５１  エッジ平滑処理部
１０５２  パルス制御部
１０５４  シリアルデータＩ／Ｆ
１２１２  システム・コントローラーＩ／Ｆ
１２１３  メモリー・アクセス制御部
１２１４  ラインバッファー
１２１９  画像回転処理部
１２４１  ファクシミリ送受信部
１２４２  外部Ｉ／Ｆ
１２４３  ファクシミリ画像処理部
１２４４  画像メモリー
１２４５  メモリー制御部
１２４６  データ制御部
１２４７  画像圧縮伸張部
１２４８  モデム
１２４９  網制御装置
１４２２  メモリー回転出力制御部
１４２３  メモリー回転入力制御部
１４２５  変倍処理部
【図１】
2004179692.tif 000003
【図２】
2004179692.tif 000004
【図３】
2004179692.tif 000005
【図４】
2004179692.tif 000006
【図５】
2004179692.tif 000007
【図６】
2004179692.tif 000008
【図７】
2004179692.tif 000009
【図８】
2004179692.tif 000010
【図９】
2004179692.tif 000011
【図１０】
2004179692.tif 000012
【図１１】
2004179692.tif 000013
【図１２】
2004179692.tif 000014
【図１３】
2004179692.tif 000015
【図１４】
2004179692.tif 000016
【図１５】
2004179692.tif 000017
【図１６】
2004179692.tif 000018
【図１７】
2004179692.tif 000019
【図１８】
2004179692.tif 000020
【図１９】
2004179692.tif 000021
【図２０】
2004179692.tif 000022
【図２１】
2004179692.tif 000023