(57)【要約】【課題】アンダーランが発生した場合でも、極力元の画像データに近い画像を確実に印刷出力させることができる画像処理装置を提供する。【解決手段】画像データを一時的に格納するＦＩＦＯ処理部１１と、このＦＩＦＯ処理部１１に格納された画像データをラインごとに読み出してプリント処理部１３に転送する転送機能を有するコントローラ１２と、このコントローラ１２がＦＩＦＯ処理部１１から画像データを読み出すときにアンダーランの発生有無を検知するアンダーラン検知部１４とを備える画像処理装置であって、コントローラ１２は、アンダーラン検知部１４がアンダーランの発生を検知した場合に、このアンダーランの発生によって読み出せなかった元の画像データに代わる代替データをプリント処理部１３に転送することにより、ページ内での画像印刷位置のずれを回避する。【選択図】        図１
2004201192.tif 000002
【特許請求の範囲】
【請求項１】
画像データを一時的に格納する格納手段と、前記格納手段に格納された前記画像データをラインごとに読み出して画像印刷手段に転送する転送手段と、前記転送手段が前記格納手段から前記画像データを読み出すときにアンダーランの発生有無を検知する検知手段とを備える画像処理装置であって、
前記転送手段は、前記検知手段が前記アンダーランの発生を検知した場合に、当該アンダーランの発生によって読み出せなかった元の画像データに代わる代替データを前記画像印刷手段に転送する
ことを特徴とする画像処理装置。
【請求項２】
前記転送手段は、前記アンダーランが発生したラインの終端まで前記代替データの転送を継続する
ことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記転送手段は、前記代替データとして、白レベル又は黒レベルの階調データを転送する
ことを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記転送手段は、前記代替データの階調値を、前記アンダーランが発生した地点の周辺の画像データの階調値に基づいて設定する
ことを特徴とする請求項１記載の画像処理装置。
【請求項５】
前記検知手段が前記アンダーランの発生を検知した場合に、当該アンダーランの発生によって元の画像データが前記代替データに置き換えられたことをユーザーに通知する手段を有する
ことを特徴とする請求項１記載の画像処理装置。
【請求項６】
前記転送手段は、前記検知手段が複数回にわたってアンダーランの発生を検知した場合に、予め設定された所定の判定条件にしたがって画像データの転送処理を中止する
ことを特徴とする請求項１記載の画像処理装置。
【請求項７】
前記転送手段が前記画像データの転送処理を中止した場合に、その旨をユーザーに通知する手段を有する
ことを特徴とする請求項６記載の画像処理装置。
【請求項８】
画像データを一時的に格納し、この格納した画像データをラインごとに読み出して画像印刷手段に転送するときにアンダーランが発生した場合、当該アンダーランの発生によって読み出せなかった元の画像データに代わる代替データを前記画像印刷手段に転送する
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、バッファ等のメモリから画像データを読み出して転送するデータ転送機能を有する画像処理装置及び画像処理方法に関する。
【０００２】
【従来の技術】
ホストコンピュータにインタフェースを介して接続されるプリンタ等の画像処理装置では、ホストコンピュータからインターフェース経由で入力された画像データをビットマップデータに展開してプリンタエンジンに転送している。その際、画像データをビットマップデータに展開してバッファに書き込む速度は、主として、画像データのデータ量やビットマップ展開の処理速度などに依存するのに対し、バッファから画像データ（ビットマップデータ）を読み出してプリンタエンジンに転送する速度は、主として、プリンタエンジンの処理速度に依存する。そのため、バッファへの書き込み速度とプリンタエンジンへのデータ転送速度とは、互いに相違するのが普通である。
【０００３】
したがって、例えば、データ量の多い画像データを処理する場合に、バッファへの書き込みがプリンタエンジンへのデータ転送時期に間に合わず、ページを印刷している途中でバッファから読み出すデータが無くなって印刷が続けられなくなるエラー、すなわちアンダーランが発生することがある。アンダーランの発生を防止する方法として、画像データを圧縮して全体のデータ量を減らす方法が知られている。しかしながら、１ページ分の画像データを複数のラインデータで構成する場合に、部分的に圧縮率が低くてデータ量の多いラインが存在すると、このラインデータを処理するときにアンダーランが発生しやすくなる。
【０００４】
このようなアンダーランがページの印刷途中で発生すると、例えば、入力された画像データ（元の画像データ）が図１５（Ａ）に示すものであった場合に、アンダーランの発生地点を境にして画像の印刷位置に大きなずれが生じる。その結果、図１５（Ｂ）に示すように、元の画像から大きくかけ離れた画像が印刷出力されてしまう。
【０００５】
そこで従来においては、アンダーランが発生したラインデータについて、例えば階調数を落としてデータ量を少なくし、この状態で再び画像データの転送を行って用紙等の記録媒体に画像を再出力させるものが知られている（例えば、特許文献１参照）。
【０００６】
【特許文献１】
特開平９−１９８２０３号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、上述のように階調数を落として画像を再出力させる場合でも、エラーの内容によっては再びアンダーランが発生し、結果的に画像の出力が不可になる恐れもある。そうした場合、ユーザーが所望する画像を出力することができなくなる。
【０００８】
本発明は、上記課題を解決するためになされたもので、その目的とするところは、アンダーランが発生した場合でも、極力元の画像データに近い画像を確実に印刷出力させることができる画像処理装置及び画像処理方法を提供することにある。
【０００９】
【課題を解決するための手段】
本発明に係る画像処理装置は、画像データを一時的に格納する格納手段と、この格納手段に格納された画像データをラインごとに読み出して画像印刷手段に転送する転送手段と、この転送手段が格納手段から画像データを読み出すときにアンダーランの発生有無を検知する検知手段とを備える画像処理装置であって、転送手段は、検知手段がアンダーランの発生を検知した場合に、当該アンダーランの発生によって読み出せなかった元の画像データに代わる代替データを画像印刷手段に転送するものである。
【００１０】
上記構成の画像処理装置においては、格納手段からの画像データの読み出しが転送手段によって行われ、この転送手段による画像データの読み出し中に検知手段がアンダーランの発生を検知すると、アンダーランの発生によって読み出せなかった元の画像データに代わる代替データが転送手段から画像印刷手段へと転送される。これにより、画像印刷手段では、アンダーランの発生したラインが代替データに置き換えて印刷出力される。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しつつ詳細に説明する。
【００１２】
図１は本発明の第１実施形態に係る画像処理装置の構成例を示す概略図である。図示した画像処理装置は、ＦＩＦＯ(First-In First-Out)処理部１１と、データ転送機能を有するコントローラ１２と、プリント処理部（印刷処理部）１３と、アンダーラン検知部１４とを備えた構成となっている。
【００１３】
ＦＩＦＯ処理部１１は、ホストコンピュータ等の外部装置からインターフェース等を介して入力された画像データを図示しない描画処理部でビットマップデータに展開したときに、描画処理部から生成されるビットマップ形式の画像データを所定の領域に順に格納するとともに、コントローラ１２からのデータ読み出し要求（データリード信号の出力）に応じて、上記所定の領域から上記格納した順に画像データを取り出してコントローラ１２に出力するものである。このＦＩＦＯ処理部１１では、コントローラ１２からデータ読み出し要求がなされた状態で、上記所定の領域に格納されている画像データがなくなると、その旨を通知するエンプティ信号をコントローラ１２に出力する。
【００１４】
コントローラ１２は、予め与えられた制御プログラム等にしたがって画像処理装置全体の処理動作を統括的に制御するものである。コントローラ１２は、プリント処理部１３からのリクエスト信号にしたがってＦＩＦＯ処理部１１に画像データの読み出しを要求するデータリード信号を出力するとともに、このデータリード信号に応答してＦＩＦＯ処理部１１から出力された画像データをプリント処理部１３に転送（出力）する。また、コントローラ１２は、ＦＩＦＯ処理部１１に対して１ライン分の画像データの読み出し要求を終えると、その旨を知らせる入力ラインエンド信号をアンダーラン検知部１４に出力する。
【００１５】
プリント処理部１３は、コントローラ１２から転送された画像データを用紙等の記録媒体に印刷出力するものである。このプリント処理部１３では、ページ内を１ラインごとに走査し、このライン走査を繰り返すことにより、記録媒体にページ画像を印刷出力する。また、プリント処理部１３は、ライン走査を行うのに先立って、１ライン分の画像データの転送を要求するリクエスト信号を一定周期で出力するとともに、このリクエスト信号に応答してコントローラ１２から転送された画像データにしたがって記録媒体に印刷出力（ライン走査）を行う。
【００１６】
アンダーラン検知部１４は、ＦＩＦＯ処理部１１からコントローラ１２を経由してプリント処理部１３に画像データを転送するにあたり、コントローラ１２がＦＩＦＯ処理部１１から画像データを読み出すときにアンダーランの発生有無を検知するものである。このアンダーラン検知部１４においては、実際にアンダーランの発生を検知するために、コントローラ１２からＦＩＦＯ処理部１１に出力されるデータリード信号と、ＦＩＦＯ処理部１１からコントローラ１２に出力されるエンプティ信号とを監視する。また、アンダーラン検知部１４は、アンダーランの発生を検知した場合に、その旨を通知するアンダーラン検知信号をコントローラ１２に出力するとともに、このアンダーラン検知信号のオンオフ（立ち上がり、立ち下がり）状態を、コントローラ１２から出力される入力ラインエンド信号にしたがって切り替える。
【００１７】
続いて、本発明の第１実施形態に係る画像処理装置で画像データを処理する場合の手順について、図２のフローチャートを用いて説明する。先ず、コントローラ１２で画像データの転送を開始する場合は、ライン数：Ｎの値をゼロにリセット（Ｎ＝０）した後、Ｎの値をインクリメント（＋１）する（ステップＳ１１，Ｓ１２）。
【００１８】
次に、プリント処理部１３がコントローラ１２にＮライン目の画像データの転送を要求するリクエスト信号を出力すると、このリクエスト信号を受けてコントローラ１２がＦＩＦＯ処理部１１にＮライン目の画像データの読み出しを要求するデータリード信号を出力する（ステップＳ１３，Ｓ１４）。
【００１９】
次いで、ＦＩＦＯ処理部１１は、コントローラ１２からの読み出し要求に応答して所定の領域から画像データを取り出し、この画像データをコントローラ１２に出力する（ステップＳ１５）。このとき、アンダーラン検知部１４は、ＦＩＦＯ処理部１１からコントローラ１２にエンプティ信号が出力されていないかどうかを監視し、出力されていない場合はアンダーランの発生を検知せず、出力された場合はアンダーランの発生を検知する（ステップＳ１６）。
【００２０】
その後、上記ステップＳ１６でアンダーラン検知部１４がアンダーランの発生を検知しなかった場合は、ＦＩＦＯ処理部１１から入力された画像データをコントローラ１２がプリント処理部１３に転送する（ステップＳ１７）。次いで、コントローラ１２は、Ｎライン目の画像データの読み出しが終了したかどうかを判断し（ステップＳ１８）、終了していないと判断した場合は上記ステップＳ１４に戻ってＦＩＦＯ処理部１１へのデータ読み出し要求（データリード信号の出力）を継続し、終了したと判断した場合は、その旨を通知する入力ラインエンド信号をアンダーラン検知部１４に出力してステップＳ１９に進む。
【００２１】
一方、上記ステップＳ１６でアンダーラン検知部１４がアンダーランの発生を検知した場合は、アンダーランのリカバリ処理（ステップＳ２０）を実行した後、ステップＳ１９に進む。ステップＳ１９においては、コントローラ１２がページ内の全ラインの画像データの転送を終了したかどうかを判断し、終了していないと判断した場合は上記ステップＳ１２に戻り、終了したと判断した場合はその時点で画像データの転送に係る一連の処理を終了する。
【００２２】
図３は上記ステップＳ２０で行われるアンダーランのリカバリ処理の手順を示すフローチャートである。先ず、リカバリ処理が開始されると、コントローラ１２は、プリント処理部１３に対して、アンダーランの発生によって読み出せなかった元の画像データの代わりに代替データを出力する（ステップＳ２０１）。この代替データは、例えば、画像データの階調数が２５６階調（０〜２５５）であるとすると、白レベル（階調値が０近傍）の階調データ、又は黒レベル（階調値が２５５近傍）の階調データを採用する。
【００２３】
次いで、コントローラ１２は、プリント処理部１３から（Ｎ＋１）ライン目の画像データの転送を要求するリクエスト信号が出力されたかどうかを判断し（ステップＳ２０２）、出力されていないと判断した場合は、これに続いて、Ｎライン目の画像データの読み出しが終了したかどうかを判断する（ステップＳ２０３）。そして、Ｎライン目の画像データの読み出しが終了したと判断した場合は、その時点でリカバリ処理を抜ける。
【００２４】
一方、上記ステップＳ２０２でプリント処理部１３から（Ｎ＋１）ライン目の画像データの転送を要求するリクエスト信号が出力されたとコントローラ１２が判断すると、Ｎの値をインクリメントした後（ステップＳ２０４）、ステップＳ２０５に移行し、また上記ステップＳ２０３でＮライン目の画像データの読み出しが終了していないと判断した場合もステップＳ２０５に移行する。ステップＳ２０５においては、コントローラ１２がＦＩＦＯ処理部１１に対する画像データの読み出し要求（データリード信号の出力）を継続し、これに続くステップＳ２０６においては、ＦＩＦＯ処理部１１がコントローラ１２への画像データの出力（読み出し）を継続する。そして、ステップＳ２０６の後は上記ステップＳ２０１に戻って代替データの転送を継続する。これにより、アンダーランが発生したラインの終端まで代替データの転送が継続される。
【００２５】
図４は、本発明の第１実施形態に係る画像処理装置において、ページ内の画像データのライン数が合計４ラインで、そのうちの２ライン目の画像データを転送するときにアンダーランが発生した場合の各信号の出力状態を示すタイミングチャートである。
【００２６】
先ず、プリント処理部１３が１ライン目の画像データの転送を要求するリクエスト信号を出力すると、これを受けてコントローラ１２がデータリード信号をＦＩＦＯ処理部１１に出力する。これにより、ＦＩＦＯ処理部１１からコントローラ１２への１ライン目の画像データ（データ１）の読み出しが開始され、これに連動して、コントローラ１２からプリント処理部１３への１ライン目の画像データ（データ２）の転送が開始される。
【００２７】
その後、コントローラ１２は、ＦＩＦＯ処理部１１への読み出し要求を終えてデータリード信号を立ち下げた後、ＦＩＦＯ処理部１１からの１ライン目の画像データ（データ１）の読み出し終了タイミングに合わせてアンダーラン検知部１４に入力ラインエンド信号を出力する。その後、ＦＩＦＯ処理部１１からコントローラ１２への１ライン目の画像データの読み出し終了に続いて、コントローラ１２からプリント処理部１３への１ライン目の画像データの転送が終了する。
【００２８】
続いて、プリント処理部１３が２ライン目の画像データの転送を要求するリクエスト信号を出力すると、これを受けてコントローラ１２がデータリード信号をＦＩＦＯ処理部１１に出力する。これにより、ＦＩＦＯ処理部１１からの２ライン目の画像データの読み出しと、プリント処理部１３への２ライン目の画像データの転送が開始される。このとき、データリード信号が立ち上がった状態（つまり、コントローラ１２がＦＩＦＯ処理部１１に画像データの読み出し要求を行っている状態）で、ＦＩＦＯ処理部１１がエンプティ信号を出力すると、アンダーラン検知部１４がアンダーランの発生を検知してアンダーラン検知信号を立ち上げる。このとき、コントローラ１２からプリント処理部１３に転送される画像データは、アンダーランの発生によって元の画像データが途切れるところから、これに連結するかたちで代替データに切り替わる。
【００２９】
その後、ＦＩＦＯ処理部１１からのエンプティ信号が立ち下がると、それと同時に画像データの読み出しが再開する。そして、プリント処理部１３が３ライン目の画像データの転送を要求するリクエスト信号を出力する前に、２ライン目の画像データの読み出し終了を通知する入力ラインエンド信号をコントローラ１２が出力すると、その時点でアンダーラン検知信号が立ち下がる。したがって、３ライン目と４ライン目については、上記１ライン目と同様に画像データの転送が行われる。
【００３０】
これに対して、図５に示すように、２ライン目の画像データの読み出し終了を通知する入力ラインエンド信号をコントローラ１２が出力する前に、プリント処理部１３が３ライン目の画像データの転送を要求するリクエスト信号を出力した場合は、アンダーラン検知部１４でアンダーラン検知信号の立ち上がり状態を維持する。そして、３ライン目の画像データについても、これに代わる代替データをコントローラ１２がプリント処理部１３に転送する。その後、プリント処理部１３が４ライン目の画像データの転送を要求するリクエスト信号を出力する前に、３ライン目の画像データの読み出し終了を通知する入力ラインエンド信号をコントローラ１２が出力すると、その時点でアンダーラン検知信号が立ち下がる。したがって、４ライン目については、上記１ライン目と同様に画像データの転送が行われる。
【００３１】
その結果、プリント処理部１３で記録媒体に印刷出力された画像（出力イメージ）は次のようになる。すなわち、上記図４に示すタイミングチャートが適用された場合は、図６（Ｂ）に示すように、２ライン目の画像データだけが部分的に代替データに置き換えて印刷出力される。また、上記図５に示すタイミングチャートが適用された場合は、図６（Ａ）に示すように、２ライン目の画像データの一部と３ライン目の画像データの全部が代替データに置き換えて印刷出力される。
【００３２】
このようにＦＩＦＯ処理部１１から読み出した画像データをプリント処理部１３に転送するときにアンダーランが発生し、このアンダーランの発生をアンダーラン検知部１４で検知した場合に、コントローラ１２からプリント処理部１３に白レベル又は黒レベルの階調データを代替データとして転送し、この代替データの転送を、アンダーランが発生したラインの終端まで継続することにより、プリント処理部１３ではアンダーランの発生地点からライン終端までの区間が白又は黒のライン画像で印刷出力されるようになる。そのため、ページの印刷途中でアンダーランが発生しても、ページ内で印刷位置がずれることはなくなる。
【００３３】
したがって、例えば、元の画像データが図７（Ａ）に示すものであって、この画像データの転送途中の１ラインでアンダーランが発生するものとすると、従来の画像処理装置でデータ転送を行った場合は図７（Ｂ）に示すようにアンダーランの発生地点から画像の印刷位置に大きなずれが生じるものの、本発明の実施形態に係る画像処理装置でデータ転送を行った場合は図７（Ｃ）に示すようにアンダーランが発生したラインの画像データの一部が代替データで出力（印刷）されるだけで印刷位置にずれが生じることはない。
【００３４】
また、元の画像データが図８（Ａ）に示すものであって、この画像データの転送途中で複数ラインで連続的にアンダーランが発生するものとすると、従来の画像処理装置でデータ転送を行った場合は図８（Ｂ）に示すようにアンダーランの発生地点から画像の印刷位置に大きなずれが生じるものの、本発明の実施形態に係る画像処理装置でデータ転送を行った場合は図８（Ｃ）に示すようにアンダーランが発生した複数ラインの画像データがまとめて代替データで出力（印刷）されるだけで印刷位置にずれが生じることはない。
【００３５】
また、元の画像データが図９（Ａ）に示すものであって、この画像データの転送途中で複数ラインで断続的にアンダーランが発生するものとすると、従来の画像処理装置でデータ転送を行った場合は図９（Ｂ）に示すようにアンダーランの発生地点から画像の印刷位置に大きなずれが生じるものの、本発明の実施形態に係る画像処理装置でデータ転送を行った場合は図９（Ｃ）に示すようにアンダーランが発生した複数ラインの画像データの一部がそれぞれ代替データで出力（印刷）されるだけで印刷位置にずれが生じることはない。
【００３６】
図１０は本発明の第２実施形態に係る画像処理装置の構成例を示す概略図である。図示した画像処理装置は、ラインバッファ２１と、データ転送機能を有するコントローラ２２と、プリント処理部（印刷処理部）２３と、アンダーラン検知部２４とを備えた構成となっている。
【００３７】
ラインバッファ２１は、ホストコンピュータ等の外部装置からインターフェース等を介して入力された画像データを図示しない描画処理部でビットマップデータに展開したときに、描画処理部から生成されるビットマップ形式の画像データをライン単位に所定のアドレス領域に格納するとともに、コントローラ２２からのデータ読み出し要求（データリード信号の出力）とデータ格納場所のアドレス領域を指定するアドレス情報（アドレス信号の出力）に応じて、当該アドレス情報で指定されるアドレス領域から画像データを取り出してコントローラ２２に出力するものである。このラインバッファ２１では、コントローラ２２からデータ読み出し要求がなされた状態で、コントローラ２２が指定したアドレス領域に画像データが格納されていないと、その旨を通知するエンプティ信号をコントローラ２２に出力する。
【００３８】
コントローラ２２は、予め与えられた制御プログラム等にしたがって画像処理装置全体の処理動作を統括的に制御するものである。コントローラ２２は、プリント処理部２３からのリクエスト信号にしたがってラインバッファ２１に画像データの読み出しを要求するデータリード信号と画像データの格納領域を指定するアドレス信号を出力するとともに、これらのデータリード信号とアドレス信号に応答してラインバッファ２１から出力された画像データをプリント処理部２３に転送（出力）する。また、コントローラ２２は、プリント処理部２３に対して１ライン分の画像データの出力（転送）を終えると、その旨を知らせる出力ラインエンド信号をアンダーラン検知部２４に出力する。
【００３９】
プリント処理部２３は、コントローラ２２から転送された画像データを用紙等の記録媒体に印刷出力するものである。このプリント処理部２３では、ページ内を１ラインごとに走査し、このライン走査を繰り返すことにより、記録媒体にページ画像を印刷出力する。また、プリント処理部２３は、ライン走査を行うのに先立って、１ライン分の画像データの転送を要求するリクエスト信号を一定周期で出力するとともに、このリクエスト信号に応答してコントローラ２２から転送された画像データにしたがって記録媒体に印刷出力（ライン走査）を行う。
【００４０】
アンダーラン検知部２４は、ラインバッファ２１からコントローラ２２を経由してプリント処理部２３に画像データを転送するにあたり、コントローラ２２がラインバッファ２１から画像データを読み出すときにアンダーランの発生有無を検知するものである。このアンダーラン検知部２４においては、実際にアンダーランの発生を検知するために、コントローラ２２からラインバッファ２１に出力されるデータリード信号と、ラインバッファ２１からコントローラ２２に出力されるエンプティ信号とを監視する。また、アンダーラン検知部２４は、アンダーランの発生を検知した場合に、その旨を通知するアンダーラン検知信号をコントローラ２２に出力するとともに、このアンダーラン検知信号のオンオフ（立ち上がり、立ち下がり）状態を、コントローラ２２から出力される出力ラインエンド信号にしたがって切り替える。
【００４１】
続いて、本発明の第２実施形態に係る画像処理装置で画像データを処理する場合の手順について、図１１のフローチャートを用いて説明する。先ず、コントローラ２２で画像データの転送を開始する場合は、ライン数：Ｎの値をゼロにリセット（Ｎ＝０）した後、Ｎの値をインクリメント（＋１）する（ステップＳ２１，Ｓ２２）。
【００４２】
次に、プリント処理部２３がコントローラ２２にＮライン目の画像データの転送を要求するリクエスト信号を出力すると、このリクエスト信号を受けてコントローラ２２がラインバッファ２１にＮライン目の画像データの読み出しを要求するデータリード信号と当該画像データの格納領域を指定するアドレス信号とを出力する（ステップＳ２３，Ｓ２４）。
【００４３】
次いで、ラインバッファ２１は、コントローラ２２からの読み出し要求に応答して所定のアドレス領域から画像データを取り出し、この画像データをコントローラ２２に出力する（ステップＳ２５）。このとき、アンダーラン検知部２４は、ラインバッファ２１からコントローラ２２にエンプティ信号が出力されていないかどうかを監視し、出力されていない場合はアンダーランの発生を検知せず、出力された場合はアンダーランの発生を検知する（ステップＳ２６）。
【００４４】
その後、上記ステップＳ２６でアンダーラン検知部２４がアンダーランの発生を検知しなかった場合は、ラインバッファ２１から入力された画像データをコントローラ２２がプリント処理部２３に転送する（ステップＳ２７）。次いで、コントローラ２２は、Ｎライン目の画像データの転送出力が終了したかどうかを判断し（ステップＳ２８）、終了していないと判断した場合は上記ステップＳ２４に戻ってラインバッファ２１へのデータ読み出し要求（データリード信号の出力）を継続し、終了したと判断した場合は、その旨を通知する出力ラインエンド信号をアンダーラン検知部２４に出力してステップＳ２９に進む。
【００４５】
一方、上記ステップＳ２６でアンダーラン検知部２４がアンダーランの発生を検知した場合は、アンダーランのリカバリ処理（ステップＳ３０）を実行した後、ステップＳ２９に進む。ステップＳ２９においては、コントローラ２２がページ内の全ラインの画像データの転送を終了したかどうかを判断し、終了していないと判断した場合は上記ステップＳ２２に戻り、終了したと判断した場合はその時点で画像データの転送に係る一連の処理を終了する。
【００４６】
図１２は上記ステップＳ３０で行われるアンダーランのリカバリ処理の手順を示すフローチャートである。先ず、リカバリ処理が開始されると、コントローラ２２は、ラインバッファ２１からの画像データの読み出しを中止する（ステップＳ３０１）。次に、コントローラ２２は、プリント処理部２３に対して、アンダーランの発生によって読み出せなかった元の画像データの代わりに代替データを出力する（ステップＳ３０２）。この代替データは、例えば、画像データの階調数が２５６階調（０〜２５５）であるとすると、白レベル（階調値が０近傍）の階調データ、又は黒レベル（階調値が２５５近傍）の階調データを採用する。
【００４７】
その後、次いで、コントローラ２２は、Ｎライン目の画像データの転送出力が終了したかどうかを判断し（ステップＳ３０３）、終了していないと判断した場合は上記ステップＳ３０２に戻って代替データの出力を継続し、終了したと判断した場合は、その旨を通知する出力ラインエンド信号をアンダーラン検知部２４に出力してリカバリ処理を抜ける。これにより、アンダーランが発生したラインの終端まで代替データの転送が継続される。
【００４８】
図１３は、本発明の第２実施形態に係る画像処理装置において、ページ内の画像データのライン数が合計４ラインで、そのうちの２ライン目の画像データを転送するときにアンダーランが発生した場合の各信号の出力状態を示すタイミングチャートである。
【００４９】
先ず、プリント処理部２３が１ライン目の画像データの転送を要求するリクエスト信号を出力すると、これを受けてコントローラ２２がデータリード信号とアドレス信号をラインバッファ２１に出力する。これにより、ラインバッファ２１からコントローラ２２への１ライン目の画像データ（データ１）の読み出しが開始され、これに連動して、コントローラ２２からプリント処理部２３への１ライン目の画像データ（データ２）の転送が開始される。
【００５０】
その後、コントローラ２２は、ラインバッファ２１への読み出し要求を終えてデータリード信号を立ち下げた後、プリント処理部２３への１ライン目の画像データ（データ２）の転送終了タイミングに合わせてアンダーラン検知部２４に出力ラインエンド信号を出力する。
【００５１】
続いて、プリント処理部２３が２ライン目の画像データの転送を要求するリクエスト信号を出力すると、これを受けてコントローラ２２がデータリード信号とアドレスをラインバッファ２１に出力する。これにより、ラインバッファ２１からの２ライン目の画像データの読み出しと、プリント処理部２３への２ライン目の画像データの転送が開始される。このとき、データリード信号が立ち上がった状態（つまり、コントローラ２２がラインバッファ２１に画像データの読み出し要求を行っている状態）で、ラインバッファ２１がエンプティ信号を出力すると、アンダーラン検知部２４がアンダーランの発生を検知してアンダーラン検知信号を立ち上げる。このとき、コントローラ２２からプリント処理部２３に転送される画像データは、アンダーランの発生によって元の画像データが途切れるところから、これに連結するかたちで代替データに切り替わる。
【００５２】
その後、代替データを用いたプリント処理部２３へのデータ転送が終了すると、それと同時にコントローラ２２が出力ラインエンド信号を出力するとともに、アンダーラン検知部２４がアンダーラン検知信号を立ち下げる。次いで、プリント処理部２３が３ライン目の画像データの転送を要求するリクエスト信号を出力し、これに応答してコントローラ２２が３ライン目の画像データの読み出しを行った場合は、上記１ライン目と同様に画像データの転送を行う。また、プリント処理部２３が４ライン目の画像データの転送を要求するリクエスト信号を出力し、これに応答してコントローラ２２が４ライン目の画像データの読み出しを行った場合も、上記１ライン目と同様に画像データの転送を行う。
【００５３】
これに対して、図１４に示すように、プリント処理部２３が３ライン目の画像データの転送を要求するリクエスト信号を出力し、これに応答してコントローラ２２がラインバッファ２１にデータリード信号とアドレス信号を出力したときに、ラインバッファ２１がエンプティ信号を出力した場合は、アンダーラン検知部２４がアンダーランの発生を検知してアンダーラン検知信号を立ち上げる。このとき、コントローラ２２は、３ライン目の画像データの全部を先頭アドレスから代替データに置き換えてプリント処理部２３に転送する。そして、このコントローラ２２による３ライン目の画像データ（代替データ）の転送が終了すると、それと同時にコントローラ２２が出力ラインエンド信号を出力するとともに、アンダーラン検知部２４がアンダーラン検知信号を立ち下げる。次いで、プリント処理部２３が４ライン目の画像データの転送を要求するリクエスト信号を出力し、これに応答してコントローラ２２が４ライン目の画像データの読み出しを行った場合は、上記１ライン目と同様に画像データの転送を行う。
【００５４】
その結果、プリント処理部２３で記録媒体に印刷出力された画像（出力イメージ）は次のようになる。すなわち、上記図１３に示すタイミングチャートが適用された場合は、上記図６（Ｂ）に示すように、２ライン目の画像データだけが部分的に代替データに置き換えて印刷出力される。また、上記図１４に示すタイミングチャートが適用された場合は、上記図６（Ａ）に示すように、２ライン目の画像データの一部と３ライン目の画像データの全部が代替データに置き換えて印刷出力される。
【００５５】
このようにラインバッファ２１から読み出した画像データをプリント処理部２３に転送するときにアンダーランが発生し、このアンダーランの発生をアンダーラン検知部２４で検知した場合に、コントローラ２２からプリント処理部２３に白レベル又は黒レベルの階調データを代替データとして転送し、この代替データの転送を、アンダーランが発生したラインの終端まで継続することにより、プリント処理部２３ではアンダーランの発生地点からライン終端までの区間が白又は黒のライン画像で印刷出力されるようになる。そのため、ページの印刷途中でアンダーランが発生しても、ページ内で印刷位置がずれることはなくなる。したがって、上記第１実施形態と同様の出力（印刷）画像を得ることができる。
【００５６】
なお、上記第１，第２実施形態においては、アンダーランが発生したときに、元の画像データに代わる代替データとして、白レベル又は黒レベルの階調データを転送するとしたが、本発明はこれに限らず、アンダーランが発生した地点の周辺の画像データの階調値に基づいて代替データの階調値を設定してもよい。具体的には、アンダーラン発生地点の周辺に存在する複数画素の階調値の平均値を求め、この平均値を代替データの階調値に設定してもよい。また、アンダーランが発生した地点の直上（１ライン前）の画像データの階調値を代替データの階調値に設定してもよい。
【００５７】
さらに、本発明の応用例として、アンダーラン検知部（１４，２４）がアンダーランの発生を検知した場合に、アンダーランの発生によって元の画像データが代替データに置き換えられたことをユーザーに通知する手段を備えた構成としてもよい。具体的には、アンダーラン検知部（１４，２４）からアンダーラン検知信号が出力された場合に、これをコントローラ（１２，２２）で認識し、全ての画像データの転送及び印刷を終えた段階で、図示しない表示部（例えば、画像処理装置のコントロールパネル）にコントローラ（１２，２２）がメッセージの表示命令を出力し、この表示命令を受けて表示部が代替データによる置き換え印刷が行われた旨のメッセージを表示する構成とすればよい。
【００５８】
また、本発明の他の応用例として、複数ページの印刷又は複数部の印刷が指示された一つの印刷ジョブの中で、アンダーラン検知部（１４，２４）が、１ページ内、複数ページ内又は複数部内で、アンダーランの発生を複数回にわたって検知した場合に、予め設定された所定の判定条件にしたがってコントローラ（１２，２２）がプリント処理部（１３，２３）への画像データの転送を自動的に中止（実質的に印刷処理を中止）する構成としてもよい。この場合の判定条件としては、例えば、アンダーランが発生したラインの数をコントローラ（１２，２２）で順にカウントし、このカウント数が予め設定された所定ライン数に達したときに、画像データの転送を中止するといった構成が考えられる。
【００５９】
また、他の判定条件として、アンダーランが発生したラインで代替データに置き換えて出力した画素数を順にカウントし、このカウント数が予め設定された所定画素数に達したときに、画像データの転送を中止することが考えられる。また、アンダーランが発生したラインのうち、代替データに置き換えて出力した画素数が所定数以上となったラインの数を順にカウントし、このカウント数が予め設定された所定ライン数に達したときに、画像データの転送を中止することが考えられる。また、アンダーランが連続して発生したラインの数をカウントし、このカウント数が所定連続ライン数に達したときに、画像データの転送を中止することが考えられる。このような構成を採用することにより、一つの印刷ジョブの中で、アンダーランの多発により元の画像データから大きくかけ離れた画像が連続して印刷される恐れがある場合に、以降の印刷処理を自動的に中止して、用紙等の記録媒体やインク、トナー等の画像記録材料の無用な消費を未然に回避することができる。
【００６０】
また、上記判定基準にしたがって画像データの転送（実質的に印刷処理）を中止した場合は、その旨を表示部へのメッセージ表示等によってユーザーに通知する手段を備える構成とするのが望ましい。さらに、上記判定基準にしたがって画像データの転送処理（印刷処理）を自動的に中止する処理モードと、上記判定基準に関係なく画像データの転送処理（印刷処理）を継続する処理モードをユーザ側で任意に選択できる構成とすることが望ましい。
【００６１】
【発明の効果】
以上説明したように本発明によれば、画像データの転送途中でアンダーランが発生した場合でも、アンダーランの発生したラインが代替データに置き換えて印刷出力されるため、従来のように印刷位置にずれを生じることなく、元の画像データに近似した画像を確実に印刷出力させることができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態に係る画像処理装置の構成例を示す概略図である。
【図２】本発明の第１実施形態に係る画像処理装置の処理手順を説明するフローチャート（その１）である。
【図３】本発明の第１実施形態に係る画像処理装置の処理手順を説明するフローチャート（その２）である。
【図４】本発明の第１実施形態に係る画像処理装置の処理手順を説明するタイミングチャート（その１）である。
【図５】本発明の第１実施形態に係る画像処理装置の処理手順を説明するタイミングチャート（その２）である。
【図６】本発明の画像処理装置によるページ画像の出力イメージを説明する図である。
【図７】画像出力結果の比較図（その１）である。
【図８】画像出力結果の比較図（その２）である。
【図９】画像出力結果の比較図（その３）である。
【図１０】本発明の第２実施形態に係る画像処理装置の構成例を示す概略図である。
【図１１】本発明の第２実施形態に係る画像処理装置の処理手順を説明するフローチャート（その１）である。
【図１２】本発明の第２実施形態に係る画像処理装置の処理手順を説明するフローチャート（その２）である。
【図１３】本発明の第２実施形態に係る画像処理装置の処理手順を説明するタイミングチャート（その１）である。
【図１４】本発明の第２実施形態に係る画像処理装置の処理手順を説明するタイミングチャート（その２）である。
【図１５】アンダーランの発生による印刷画像の位置ずれ状態を説明する図である。
【符号の説明】
１１…ＦＩＦＯ処理部、１２，２２…コントローラ、１３，２３…プリント処理部、１４，２４…アンダーラン検知部、２１…ラインバッファ
【図１】
2004201192.tif 000003
【図２】
2004201192.tif 000004
【図３】
2004201192.tif 000005
【図４】
2004201192.tif 000006
【図５】
2004201192.tif 000007
【図６】
2004201192.tif 000008
【図７】
2004201192.tif 000009
【図８】
2004201192.tif 000010
【図９】
2004201192.tif 000011
【図１０】
2004201192.tif 000012
【図１１】
2004201192.tif 000013
【図１２】
2004201192.tif 000014
【図１３】
2004201192.tif 000015
【図１４】
2004201192.tif 000016
【図１５】
2004201192.tif 000017