(57)【要約】【課題】  画像処理モジュールを連結するバッファ（リングバッファ）を介してデータを受け渡し場合、ＤＭＡ転送可能か/画像処理モジュールがハードかソフトか/処理単位は同じか等の様々な異なる構成がある。これら画像処理モジュールの構成に対して共通にデータハンドリングする管理手段というのはなく、それぞれ個別のデータハンドリングを行っていた。  そのため、開発期間や品質及び仕様変更による柔軟な対応に問題があった。【解決手段】  画像処理モジュールを連結するバッファへのライトする画像処理モジュール側がライトライン数を、リードする画像処理モジュール側がリードライン数をバンド単位で通知するとそのタイミングで前記画像処理モジュールを連結するバッファ内で未処理データのラインを検査し、前もって登録されているリードトリガファンクションやライトウェイトファンクションやライトリスタートファンクションを実行する。【選択図】  図３
2008098915.tif 000002
【特許請求の範囲】
【請求項１】
画像処理モジュールを連結して動作させるためのバッファと、前記連結バッファの滞留ラインカウンタと、前記連結バッファの滞留限界ライン登録手段と、前記連結バッファへのライトウェイトファンクション登録手段と、前記連結バッファへのリスタートファンクション登録手段と、前記連結バッファへのライトライン通知手段と、前記連結バッファへのライト終了手段と、リードトリガライン登録手段と、前記連結バッファからのリードファンクション登録手段と、前記連結バッファからのリードライン通知手段と、前記連結バッファからのリード終了通知手段と、前記連結バッファの滞留ラインカウンタの値を確認する滞留ラインカウンタチェック手段とを有し、画像処理モジュールを連結するバッファを管理する画像処理モジュール連結バッファ管理手段。
【請求項２】
前記画像処理モジュール連結バッファ管理手段を装置内で統一的に使用することを特徴とする請求項１に記載の画像処理モジュール連結バッファ管理手段。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを記憶手段に蓄積可能な画像処理装置に関する。
【背景技術】
【０００２】
画像処理モジュールを連結するバッファ（リングバッファ）を介してデータを受け渡し場合、ＤＭＡ転送可能か/画像処理モジュールがハードかソフトか/処理単位は同じか等の様々な異なる構成がある。これら画像処理モジュールの構成に対して共通にデータハンドリングする管理手段というのはなく、それぞれ個別のデータハンドリングを行っていた。
【０００３】
従来例としては、例えば特許文献１をあげることが出来る。
【特許文献１】特開２００５−９４６７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
そのため、開発期間や品質及び仕様変更による柔軟な対応に問題があった。
【課題を解決するための手段】
【０００５】
画像処理モジュールを連結するバッファへのライトする画像処理モジュール側がライトライン数を、リードする画像処理モジュール側がリードライン数をバンド単位で通知するとそのタイミングで前記画像処理モジュールを連結するバッファ内で未処理データのラインを検査し、前もって登録されているリードトリガファンクションやライトウェイトファンクションやライトリスタートファンクションを実行する。
【０００６】
前記ファンクションは、各画像処理モジュールで自由。といった汎用的かつ柔軟なバッファ管理手段を提供する。これにより、様々な構成を持つ画像処理モジュールを、メモリを介して共通のインターフェースで容易に連結可能となり、開発期間短縮や品質向上が可能となる。
【発明の効果】
【０００７】
様々な構成を持つ画像処理モジュールを、メモリを介して共通のインターフェースで容易に連結可能となり、開発期間短縮や品質向上が可能となる。
【発明を実施するための最良の形態】
【０００８】
図１は、本発明の画像処理装置の構成を示すブロック図である。
【０００９】
図１は、本発明の実施形態にかかる画像処理装置２００の概略的な構成を示すブロック図である。スキャナインタフェース（以下、「スキャナＩ／Ｆ」という。）部１０には、アナログフロントエンド（ＡＦＥ）１５を介して、ＣＣＤ１７、ＣＩＳ１８が接続し、個別の専用回路を介在することなく、その読み取りデータを画像処理装置２００に取り込むことができる。スキャナI／Ｆ部１０のデータ処理については、後に詳細に説明する。
【００１０】
２０はスキャナ画像処理部であり、スキャナI／Ｆ部１０の処理によりメインメモリ１００に展開された画像データに対して、画像処理動作モード（カラーコピー、モノクロコピー、カラースキャン、モノクロスキャン等）に応じた画像処理を実行する処理部である。スキャナ画像処理部２０の詳細については、後に説明する。
【００１１】
プリンタ画像処理部３０は、画像処理の結果、得られた画像データをプリンタ出力するための処理ユニットであり、ＬＢＰインタフェース（Ｉ／Ｆ）４０を介して接続するレーザビームプリンタ（ＬＢＰ）４５に画像処理結果を出力するための処理を実行する。
【００１２】
５０、６０はＪＰＥＧ、ＪＢＩＧモジュールであり、所定の規格に準拠した画像データの圧縮、伸張処理を実行する処理部である。
【００１３】
７０はメモリ制御部であり、画像処理系の第１ＢＵＳ８０及びコンピュータ系の第２ＢＵＳ８５とそれぞれ接続し、メインメモリ（ＳＤＲＡＭ）１００に対するデータの書き込み、読み出しのためのＤＭＡ制御を行なう。
【００１４】
９０はＤＭＡコントローラ（ＤＭＡＣ）であり、メモリ制御部７０と協働して、各画像処理部（１０、２０、３０）とメインメモリ１００との間のデータ授受に関し、ＤＭＡ制御するための所定のアドレス情報を生成、設定する。例えば、画像読み取りデバイスの種類、ＣＣＤ１７、ＣＩＳ１８の別に応じて、スキャナＩ／Ｆ部１０で読み取り処理された画像データをメインメモリ１００にＤＭＡ転送するためのアドレス情報をＤＭＡのチャンネルごとに生成し、または、メインメモリ１００上に展開された画像データを読み出すためのアドレス情報をＤＭＡのチャンネルに応じて生成し、スキャナ画像処理部２０にＤＭＡ転送する等、メインメモリ１００と、種々のインタフェース部（１０、４０、１７０）、画像処理部（２０、３０）間におけるＤＭＡ制御を、メモリ制御手段７０と共に司るユニットとして機能する。ＤＭＡＣ９０は、ＲＯＭＩＳＡ９７を介してＲＯＭ９５と接続し、画像読み取りデバイス（ＣＣＤ１７やＣＩＳ１８）に応じて、適した制御パラメータ、制御プログラムが設定される。制御パラメータ等を画像読み取りデバイスに応じて種々設定することができるので、ＣＣＤ１７、ＣＩＳ１８の個別のデータ出力形式に応じた画像データの入力処理が可能となるため、専用のインタフェース回路を設ける必要がなくなる。
【００１５】
８０は、画像処理系の各処理部（１０〜６０）間でデータを授受することが可能な第１ＢＵＳであり、８５は、ＣＰＵ１８０、通信及びユーザインタフェース制御部１７０、メカトロ系制御部１２５及びＤＭＡＣ９０が接続するコンピュータ系の第２ＢＵＳである。
【００１６】
メカトロ系制御部１２５にはモータ制御部１１０と、モータの駆動タイミングや、画像処理系の処理の同調を制御するためのタイミング制御を司る割り込みタイマー制御部１２０が含まれる。
【００１７】
ＬＣＤ制御部１３０は、画像処理装置の種々の設定、処理状況等をＬＣＤ１３５に表示するための表示制御を司るユニットである。
【００１８】
１４０、１５０は周辺機器との接続を可能にするＵＳＢインタフェース部であり、図１では、ＩＪ−プリンタ１７５が接続した状態を示している。
【００１９】
１６０はメディアアクセス制御（ＭＡＣ）部であり、接続する機器に対してデータをどのようなタイミングで送り出せばよいか（アクセス）等を制御するユニットである。
【００２０】
１８０はＣＰＵであり、画像処理装置２００の全体的な動作を制御する。
【００２１】
＜スキャナＩ/Ｆ部１０の構成＞
スキャナＩ/Ｆ部１０は、画像読み取りデバイスとして、ＣＣＤ１７及びＣＩＳ１８に対応可能であり、両画像読み取りデバイスの信号を入力処理する。ここで入力された画像データは、メモリ制御部７０によりＤＭＡ転送されてメインメモリ１００上に展開される。
【００２２】
図２は本装置の画像データ変換手段の構成を示すブロック図である。
【００２３】
画像データ変換処理１手段２０１は、入力画像データに対してデータ変換を行い、画像処理モジュール連結バッファ２０２へ前記変換後のデータをライトする処理である。例えば、画像データの解像度変換処理やシェーディング補正処理等がある。画像処理モジュール連結バッファ２０２は、画像データ変換処理１手段２０１の出力データを画像データ変換処理２手段２０３の入力データとして使用するための画像処理モジュールを連結するバッファであり、リングバッファとして使用する。画像データ変換処理２手段２０３は、入力画像データに対してデータ変換を行い、最終画像データ出力メモリ２０５へ前記変換後のデータをライトする処理である。例えば、画像データの２値化処理やエンコード処理等がある。最終画像データ出力メモリ２０５は、画像データ変換処理２手段２０３でデータ変換を行ったデータを出力するメモリである。画像処理モジュール連結バッファ管理手段２０４は、画像データ変換処理１手段２０１、画像データ変換処理２手段２０３を画像処理モジュール連結バッファ２０２を介して連結する手段であり、本発明の主たる特徴の一つであり詳細は後術する。
【００２４】
図３は本発明の画像処理モジュール連結バッファ管理手段２０４の内部構成を示す図である。
【００２５】
滞留ラインカウンタ３０１は、画像処理モジュール連結バッファ２０２に蓄積されている未処理画像データのライン数を保持するためのカウンタである。滞留限界ライン登録手段３０２は、前記未処理画像データのライン数の限界値を画像処理モジュール連結バッファ管理手段２０４へ登録するための手段である。ライトウェイトファンクション登録手段３０３は、滞留ラインカウンタ３０１の値が、滞留限界ライン登録手段３０２により登録された前記未処理画像データのライン数の限界値を超えた場合に実行させるファンクション（例えば、画像データ変換処理１手段２０１への入力データの生成を一時停止させる処理等である）を画像処理モジュール連結バッファ管理手段２０４へ登録する手段である。ライトリスタートファンクション登録手段３０４は、前記ライトウェイトファンクション実行後、滞留ラインカウンタ３０１の値が、滞留限界ライン登録手段３０２により登録された前記滞留ラインの限界値より少なくなった場合に実行させるファンクション（例えば、一時停止させた画像データ変換処理１手段２０１への入力データの生成を再開する処理等である）を画像処理モジュール連結バッファ管理手段２０４へ登録する手段である。ライトライン通知手段３０５は、画像データ変換処理１手段２０１が画像処理モジュール連結バッファ２０２へライトしたデータのライン数を画像処理モジュール連結バッファ管理手段２０４へ通知する手段であり、通知を受信すると滞留カウンタに通知のライン数を加算する。ライト終了通知手段３０６は、画像データ変換処理１手段２０１の処理が全て終了、つまり画像処理モジュール連結バッファ２０２への画像データのライトが終了したことを、画像処理モジュール連結バッファ管理手段２０４へ通知する手段である。リードトリガライン登録手段３０７は、滞留ラインカウンタ３０１の値に対して、リードトリガファンクション登録手段３０８で登録されたリードトリガファンクションを実行するライン数を画像処理モジュール連結バッファ管理手段２０４へ登録する手段である。リードトリガファンクション登録手段３０８は、ライトウェイトファンクション登録手段３０３は、滞留ラインカウンタ３０１の値が、リードトリガファンクション登録手段３０７により登録されたライン数を超えた場合に実行させるファンクション（例えば、未処理画像データを画像データ変換処理２手段２０３へ入力する処理等である）を画像処理モジュール連結バッファ管理手段２０４へ登録する手段である。リードライン通知手段３０９は、画像データ変換処理２手段２０３が画像処理モジュール連結バッファ２０２からリードしたデータのライン数を画像処理モジュール連結バッファ管理手段２０４へ通知する手段であり、通知を受信すると滞留カウンタから通知のライン数を減算する。リード終了通知手段３１０は、画像データ変換処理２手段２０３の処理が全て終了したことを、画像処理モジュール連結バッファ管理手段２０４へ通知する手段である。滞留ラインカウンタチェック手段３１１は、ライトライン通知手段３０５やリードライン通知手段３０９により滞留ラインカウンタ３０１の値が変更された場合に実施する処理であり、滞留ラインカウンタ３０１の値とリードトリガライン登録手段３０７で登録された値、滞留限界ライン登録手段３０２で登録された値を比較して、リードトリガファンクションやライトウェイトファンクションを実行する処理である。
【００２６】
図４、図５、図６、図７に、本願クレームにおける画像データ変換処理を行う場合のフローを示す。
【００２７】
図４は画像データ変換処理１手段２０１のフローであり、図４において、ＣＰＵ１８０によって、画像データ変換処理１手段が開始されると、４０１にて、滞留限界ライン登録手段３０２を実施して４０２の処理を行う。
【００２８】
４０２にて、ライトウェイとファンクション登録手段３０３を実施して４０３の処理を行う。
【００２９】
４０３にて、ライトリスタートファンクション登録手段３０４を実施して４０４の処理を行う。
【００３０】
４０４にて、入力画像データを変換し画像処理モジュール連結バッファ２０２へライトして４０５の処理を行う。
【００３１】
４０５にて、ライトライン通知手段３０５を実施して４０６の処理を行う。
【００３２】
４０６にて、画像データ変換処理１手段により変換すべき入力データがまだあるか確認して、有れば４０４の処理を行う。無ければ４０７の処理を行う。
【００３３】
４０７にて、ライト終了通知手段３０６を実施して画像データ変換処理１手段を終了する。
【００３４】
図５は画像データ変換処理２手段２０３のフローであり、図５において、ＣＰＵ１８０によって、画像データ変換処理２手段が開始されると、５０１にて、リードトリガライン登録手段３０７を実施して５０２の処理を行う。
【００３５】
５０２にて、リードトリガファンクション登録手段３０８を実施して５０３の処理を行う。
【００３６】
５０３にて、画像処理モジュール連結バッファ管理手段２０４から全データの変換終了通知を確認する。通知が無ければ５０３の処理を行う。通知があれば画像データ変換処理２手段を終了する。
【００３７】
図６は画像処理モジュール連結バッファ管理手段のフローであり、図６において、ＣＰＵ１８０によって、画像処理モジュール連結バッファ管理手段が開始されると、６０１にて、画像データ変換処理１手段２０１による滞留限界ライン登録が完了しているか否かを確認する。完了していれば６０２の処理を行う。完了していなければ６０１の処理を行う。
【００３８】
６０２にて、画像データ変換処理１手段２０１によるウェイトファンクション登録が完了しているか否かを確認する。完了していれば６０３の処理を行う。完了していなければ６０２の処理を行う。
【００３９】
６０３にて、画像データ変換処理１手段２０１によるリスタートファンクション登録が完了しているか否かを確認する。完了していれば６０４の処理を行う。完了していなければ６０３の処理を行う。
【００４０】
６０４にて、画像データ変換処理２手段２０３によるリードトリガライン登録が完了しているか否かを確認する。完了していれば６０５の処理を行う。完了していなければ６０４の処理を行う。
【００４１】
６０５にて、画像データ変換処理２手段２０３によるリードファンクション登録が完了しているか否かを確認する。完了していれば６０６の処理を行う。完了していなければ６０５の処理を行う。
【００４２】
６０６にて、ライトライン通知手段３０６の実行要求が来ているか確認する。来ていれば６０７の処理を行う。来ていなければ６０６の処理を行う。
【００４３】
６０７にて、ライトライン通知手段３０６の処理として、滞留ラインカウンタ３０１の値にライトライン数を加算して、６０８の処理を行う。
【００４４】
６０８にて、滞留ラインカウンタチェック手段３１１の処理として、滞留ラインカウンタ３０１の値とリードトリガライン登録手段３０７で登録された値を比較して、滞留ラインカウンタ３０１の値が大きい場合６０９の処理を行う。小さい場合は６１１の処理を行う。
【００４５】
６０９にて、予めリードトリガファンクション登録手段３０８で登録されているリードトリガファンクションを実行し６１０の処理を行う。尚、リードトリガファンクションの実施例のフロー図を図７に示す。詳細は後術する。
【００４６】
６１０にて、リードライン通知手段３０９の処理として、滞留ラインカウンタ３０１の値からリードライン数を減算して６１１の処理を行う。
【００４７】
６１１にて、ライト終了通知手段３０６及びリード終了通知手段３１０両方が既に実施されたか確認する。実施されていれば６１９の処理を行う。実施されていなければ６１２の処理を行う。
【００４８】
６１２にて、滞留ラインカウンタチェック手段３１１の処理として、滞留ラインカウンタ３０１の値と滞留限界ライン登録手段３０２で登録された値を比較して、滞留ラインカウンタ３０１の値が大きい場合６１３の処理を行う。小さい場合は６０８の処理を行う。
【００４９】
６１３にて、予めウェイトファンクション登録手段３０３で登録されているウェイトファンクションを実行し６１４の処理を行う。
【００５０】
６１４にて、滞留ラインカウンタチェック手段３１１の処理として、滞留ラインカウンタ３０１の値とリードトリガライン登録手段３０７で登録された値を比較して、滞留ラインカウンタ３０１の値が大きい場合６１５の処理を行う。小さい場合は６１４の処理を行う。
【００５１】
６１５にて、予めリードトリガファンクション登録手段３０８で登録されているリードトリガファンクションを実行し６１６の処理を行う。尚、リードトリガファンクションの実施例のフロー図を図７に示す。詳細は後術する。
【００５２】
６１６にて、リードライン通知手段３０９の処理として、滞留ラインカウンタ３０１の値からリードライン数を減算して６１７の処理を行う。
【００５３】
６１７にて、滞留ラインカウンタチェック手段３１１の処理として、滞留ラインカウンタ３０１の値と滞留限界ライン登録手段３０２で登録された値を比較して、滞留ラインカウンタ３０１の値が大きい場合６１４の処理を行う。小さい場合は６１８の処理を行う。
【００５４】
６１８にて、予めライトリスタートファンクション登録手段３０４で登録されているライトリスタートファンクションを実行し６０８の処理を行う。
【００５５】
６１９にて、全画像データ変換が終了したことを画像処理変換処理２手段２０３に通知して画像処理モジュール連結バッファ管理手段を終了する。
【００５６】
図７は画像データ変換処理２手段がリードファンクション登録手段３０８で登録するリードトリガファンクションのフローであり、図７において、画像処理モジュール連結バッファ管理手段２０４により、リードトリガファンクションが開始されると、７０１にて、画像処理モジュール連結バッファ２０２にある未処理の画像データを画像データ変換処理２手段２０３にて変換して最終画像データ出力メモリ２０５へライトして７０２の処理を行う。
【００５７】
７０２にて、ライトライン通知手段３０５を実施して７０３の処理を行う。
７０３にて、画像データ変換処理２手段２０３で変換して出力すべきデータを全て出力したか否かを判断する。全て出力していれば、リード終了通知手段３１０を実施して画像処理モジュール連結バッファ管理手段２０４へリード終了を通知する。出力すべきデータを全て出力していなければ、リードトリガファンクションを終了する。
【図面の簡単な説明】
【００５８】
【図１】本発明の実施例における装置構成を示す概略ブロック図
【図２】本装置内の画像データ変換手段の構成を示すブロック図
【図３】本発明の画像処理モジュール連結バッファ管理手段の内部構成を示す図
【図４】本発明の実施形態における画像データ変換処理１手段に関するフローチャート
【図５】本発明の実施形態における画像データ変換処理２手段に関するフローチャート
【図６】本発明の実施形態における画像処理モジュール連結バッファ管理手段に関するフローチャート
【図７】本発明の実施形態におけるリードトリガファンクションに関するフローチャート
【図１】
2008098915.tif 000003
【図２】
2008098915.tif 000004
【図３】
2008098915.tif 000005
【図４】
2008098915.tif 000006
【図５】
2008098915.tif 000007
【図６】
2008098915.tif 000008
【図７】
2008098915.tif 000009