(57)【要約】【課題】圧縮する画像の中に有効な画像データが含まれるのか否かを１バンド単位又は任意の複数バンド単位で確認できる圧縮器及び画像形成装置を提供する。【解決手段】画像中の１バンドの画像データをバンドごとに完結させる圧縮を行い、符号側の圧縮データ完結符号が書かれたディスクリプタに対して、圧縮時の白画像検出結果を書き出す圧縮器１０４とディスクリプタにライトバックフラグを書き出すライトバック発生モジュール１０５１を有するライトＤＭＡＣ１０５とを備えた。【選択図】図１
2008219410.tif 000002
【特許請求の範囲】
【請求項１】
画像中の１バンドの画像データをバンドごとに完結させる圧縮を行い、符号側の圧縮データ完結符号が書かれたディスクリプタに対して、圧縮時の白画像検出結果を書き出す圧縮器と前記ディスクリプタにライトバックフラグを書き出す機能を有するライトＤＭＡＣとを備えた画像形成装置。
【請求項２】
画像中の複数のバンドの画像データに対する圧縮処理を画像側ディスクリプタの指示によって完結させ、符号側の圧縮データ完結符号が書かれたディスクリプタに対して、圧縮時の白画像検出結果を書き出す圧縮器と前記ディスクリプタにライトバックフラグを書き出す機能を有するライトＤＭＡＣとを備えた画像形成装置。
【請求項３】
前記ライトバックフラグによって、画像側のバンドとこれに対応する符号側のバンドとを関連付けることを特徴とする請求項１又は２記載の画像形成装置。
【請求項４】
前記ディスクリプタの設定により、バンド単位で前記ディスクリプタに対応した画像データをそのまま出力する伸長器を備えた請求項３記載の画像形成装置。
【請求項５】
前記ディスクリプタの設定により、メモリアクセス無しに所定のパターンを出力するフィルパターン機能を有するリードＤＭＡＣを備えたことを特徴とする請求項４記載の画像形成装置。
【請求項６】
複数のバンドの白画像検出結果情報を基に、カラーデータがあるか否かを判断し、白黒印刷を行うかカラー印刷を行うかを決定することを特徴とする請求項１から５のいずれか１項記載の画像形成装置。
【請求項７】
白黒印刷を行うと決定した場合に、黒色画像の符号データのみを保持し、その他の色の画像データを破棄することを特徴とする請求項６記載の画像形成装置。
【請求項８】
前記圧縮器によって書き込みが行われた符号側ディスクリプタの白画像検出結果を基に、符号側のディスクリプタを書き換え、白画像が検出されたディスクリプタをフィルパターン指示のディスクリプタに置き換えることを特徴とする請求項１から７のいずれか１項記載の画像形成装置。
【請求項９】
置き換える前のディスクリプタと、そのディスクリプタが指し示す圧縮データとが占有していたメモリを画像データの圧縮後に解放することを特徴とする請求項８記載の画像形成装置。
【請求項１０】
置き換える前のディスクリプタと、そのディスクリプタが指し示す圧縮データとが占有していたメモリを画像データの圧縮中に解放することを特徴とする請求項８記載の画像形成装置。
【請求項１１】
圧縮中にライト側のディスクリプタを書き換え、白画像が占有していた圧縮データ領域に次バンド以降の圧縮データを書き込むことを特徴とする請求項１０記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数バンドで構成される画像データをバンド単位もしくは、複数バンド単位で圧縮して一次保存し、印刷時にデータを展開して出力する画像形成装置に関する。
【背景技術】
【０００２】
従来、複数バンドで構成される画像データをバンド単位もしくは、複数バンド単位で圧縮して一次保存し、印刷時にデータを展開して出力する画像形成装置が知られている。
【０００３】
しかし、このような画像形成装置は、圧縮する画像の中に有効な画像データが含まれるのか否かを１バンド単位又は任意の複数バンド単位で確認することができなかった。
【特許文献１】特開２００１−１１３７５９号公報
【特許文献２】特開２００３−０９４７３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は係る問題に鑑みてなされたものであり、圧縮する画像の中に有効な画像データが含まれるのか否かを１バンド単位又は任意の複数バンド単位で確認できる画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明は、第１の態様として、画像中の１バンドの画像データをバンドごとに完結させる圧縮を行い、符号側の圧縮データ完結符号が書かれたディスクリプタに対して、圧縮時の白画像検出結果を書き出す圧縮器とディスクリプタにライトバックフラグを書き出す機能を有するライトＤＭＡＣとを備えた画像形成装置を提供するものである。これにより、画像１バンドごとに対して有効な画像データが含まれるのか否かを確認できる。
【０００６】
また、上記目的を達成するため、本発明は、第２の態様として、画像中の複数のバンドの画像データに対する圧縮処理を画像側ディスクリプタの指示によって完結させ、符号側の圧縮データ完結符号が書かれたディスクリプタに対して、圧縮時の白画像検出結果を書き出す圧縮器とディスクリプタにライトバックフラグを書き出す機能を有するライトＤＭＡＣとを備えた画像形成装置を提供するものである。これにより、画像単位ではなく、任意の複数バンドごとに対して有効な画像データが含まれているのか否かを確認できる。
【０００７】
本発明の第１又は第２の態様においては、ライトバックフラグによって、画像側のバンドとこれに対応する符号側のバンドとを関連付けることが好ましい。これにより、画像と符号の関連づけが容易となる。
【０００８】
本発明の第１又は第２の態様においては、ディスクリプタの設定により、バンド単位でディスクリプタに対応した画像データをそのまま出力する伸長器を備えることが好ましく、これに加えて、ディスクリプタの設定により、メモリアクセス無しに所定のパターンを出力するフィルパターン機能を有するリードＤＭＡＣを備えることがより好ましい。これにより、画像側ディスクリプタと対応するデータを符号側ディスクリプタと対応するデータから置き換えても伸長を行える。また、メモリアクセス無しに伸長器を動作させてデータを出力することができる。また、複数のバンドの白画像検出結果情報を基に、カラーデータがあるか否かを判断し、白黒印刷を行うかカラー印刷を行うかを決定することが好ましく、これに加えて、白黒印刷を行うと決定した場合に、黒色画像の符号データのみを保持し、その他の色の画像データを破棄することがより好ましい。これにより、圧縮器を正常に動作させることができ、さらに不要なメモリを解放できる。すなわち、保持する必要のない色の符号データを破棄することにより、メモリを有効活用して処理速度を高速化できる。
【０００９】
本発明の第１又は第２の態様の上記のいずれの構成においても、圧縮器によって書き込みが行われた符号側ディスクリプタの白画像検出結果を基に、符号側のディスクリプタを書き換え、白画像が検出されたディスクリプタをフィルパターン指示のディスクリプタに置き換えることが好ましい。これにより、このバンドを展開する際にはデータ領域のリードが発生しなくなるため、データバスの混雑解消につながり、データバスを他のリソースが占有でき、画像処理を高速化できる。これに加えて、置き換える前のディスクリプタと、そのディスクリプタが指し示す圧縮データとが占有していたメモリを画像データの圧縮後に解放することがより好ましい。これにより、不必要となった符号データ及びディスクリプタを削除できるため、メモリ使用量を節約でき、メモリ資源を他のリソースへ渡すことなどにより、高速化に繋がる。又は、置き換える前のディスクリプタと、そのディスクリプタが指し示す圧縮データとが占有していたメモリを画像データの圧縮中に解放することがより好ましく、さらに加えて圧縮中にライト側のディスクリプタを書き換え、白画像が占有していた圧縮データ領域に次バンド以降の圧縮データを書き込むことがなお好ましい。これにより、圧縮時に一時的に確保されるデータサイズを縮小でき、メモリ使用量を節約し、メモリ資源を他のリソースに渡すなどして高速化を図れる。また、圧縮中に画像１バンドに対応する圧縮データを別なデータに置き換えることができ、ディスクリプタの関連性の整合を図れる。
【発明の効果】
【００１０】
本発明によれば、圧縮する画像の中に有効な画像データが含まれるのか否かを１バンド単位又は任意の複数バンド単位で確認できる画像形成装置を提供できる。
【発明を実施するための最良の形態】
【００１１】
本発明の好適な実施の形態について説明する。図１に、本実施形態に係る画像形成装置の画像形成部の構成を示す。画像処理部１００は、ＣＰＵ１０１、メモリ１０２、第１のリードＤＭＡＣ（Direct Memory Access Controller）１０３、圧縮器１０４、ライトＤＭＡＣ１０５、第２のリードＤＭＡＣ１０６、ビデオ伸長器１０７及びプロッタ１０８を有する。なお、ライトＤＭＡＣ１０５、第２のリードＤＭＡＣ１０６、ビデオ伸長器１０７及びプロッタ１０８は、ＣＹＭＫの各色に対応してＣ〜Ｋの四つが設けられている。
【００１２】
ＣＰＵ１０１は、各モジュールに対して設定を行う。メモリ１０２は、ＤＭＡＣ制御のためのディスクリプタ、圧縮前の画像、圧縮後の符号を記録する。第１のリードＤＭＡＣ１０３は、圧縮器１０４に接続される。圧縮器１０４は、第１のリードＤＭＡＣ１０３からの入力データが全て白画像であったか否かを判断する白画像検知モジュール１０４１を備える。ライトＤＭＡＣ１０５は、圧縮器が出力した圧縮終端符号を書き込むハンドのディスクリプタに対して、白画像検出結果を書き込むライトバック発生モジュール１０５１を備える。第２のリードＤＭＡＣ１０６は、ディスクリプタの情報に応じて、データの入力無しに指定されたパターンを発生させるパターン発生モジュール１０６１を備える。ビデオ伸長器１０７は、符号データを伸長し、伸長した画像をプロッタへ１０８送る。プロッタ１０８は、ビデオ伸長器から入力された画像を形成する。
【００１３】
ここで、ディスクリプタは、メモリ１０２上に図２に示すデータ構造の情報を持ち、ディスクリプタとそれに対応するデータとで一つのバンドを構成するものとする。さらに、「次ディスクリプタ（ＮＤＰ）」で別のディスクリプタのアドレスを指定することにより、ディスクリプタとバンドのチェーンを構成する。ライトバックフラグ、白画像検出結果、パターンフィルフラグは圧縮開始時は０が設定されている。ライトバックフラグは、画像の終端となるディスクリプタにおいて立てられる（１とされる）。白画像検出結果は、白画像（階調値が全て０の画像データ）を検出した際に立てられる。パターンフィルフラグは、圧縮データをメモリ１０２から読み込まない場合に立てられる。
また、画像側のディスクリプタの画像種には、データが画像である旨の情報が書き込まれ、符号側のディスクリプタの画像種には、データが符号である旨を書き込まれるものとする。
【００１４】
ここで扱うカラー画像は、Ｃ、Ｍ、Ｙ、Ｋの各プレーンから構成されており、それぞれのプレーンの画像がバンドという単位に分割されている。ここでは、それぞれのプレーンの画像がｎのバンドに分割されているものとする。
【００１５】
図３に示すように、ディスクリプタは、圧縮時には、Ｃプレーンの１バンド目、Ｍプレーンの１バンド目、・・・、Ｋプレーンのｎバンド目と順々に圧縮されるように構成されている。
【００１６】
図４〜７に画像圧縮時の処理の流れを示す。
画像側の各バンドのディスクリプタには、任意の処理単位ごと（例えば、各単色画像ごと）に符号終端指示フラグが立てられる（ステップＳ１０１）。このフラグが立っている場合、圧縮器は１バンド分の画像データが終わるごとに符号データを完結させて圧縮する。その際には、最後に終端符号を符号データに書き込む。終端符号を書き込んだ符号データのバンドに対応したディスクリプタには、ライトバックフラグに１を書き込み、圧縮を行ったバンドの画像データが白画像（何も書き込まれていない状態）であったならば、符号側のディスクリプタの白画像検出結果に１を書き込み、そうでない場合は０を書き込む（ステップＳ１０２〜１０９）。
【００１７】
ここで、１バンド分の画像データを圧縮器が読み込み終えた時点で動作が一次停止するような構成であった場合（ステップＳ１１０）、今書き込みが終わった符号側データに対応するディスクリプタのライトバックフラグ、白画像検知フラグがともに１だった場合（ステップＳ１１１／Ｙｅｓ）、その圧縮画像データの元となる画像は白画像であったとみなし、このバンドに対応する圧縮データとディスクリプタとを、これと等価なデータであるフィルパターンフラグを使ったディスクリプタへと置き換える（ステップＳ１１２、Ｓ１１３）。
さらに、当該メモリ領域を開放し、符号側のディスクリプタを書き換え、まだ書き込みが終わっていないディスクリプタに対し、スタートアドレス（ＳＡ）を直前に解放したメモリアドレス（前のディスクリプタが使用するはずであったメモリのアドレス）に指定するか否かを判断する。
【００１８】
別の実装として、１画像分の（複数バンド分の）画像データを圧縮器１０４が書き込んだ時点で圧縮器１０４の動作が終了する場合（ステップＳ１１０／Ｎｏ、Ｓ１１５／Ｙｅｓ）、圧縮器１０４の動作が完了した後に、プログラムは符号側のディスクリプタを書き込んだ順に読んでいき（ステップＳ１１６）、ライトバックフラグが立っており、かつ、白画像検知フラグが立っていたディスクリプタが存在したならば（ステップＳ１１７／Ｙｅｓ）、この符号データとディスクリプタとを削除する（ステップＳ１１８）。削除するデータ及びディスクリプタは、白画像検知された画像を圧縮したデータが書き込まれているバンドである。つまり、白画像検知フラグが立ったバンドの一つ前にライトバックが行われたバンドの次のバンドから白画像検出フラグが立ったバンドまでである。なお、ライトバックが行われたバンドは、ライトバックフラグに基づいて判断できる。
【００１９】
さらに、白画像検知された画像を圧縮した符号の代わりとなるディスクリプタを生成する。このディスクリプタは、白画像検知された画像と等価なデータ長であり、パターンフィルフラグを立てて、リードアクセス無しにフィルパターンデータに設定されたデータを出力し、画像種には画像として設定がなされているものとする。ディスクリプタ作成後、削除されたディスクリプタの直前のディスクリプタ情報を変更し、ここで作成したディスクリプタを指し示すように次ディスクリプタアドレスを変更してディスクリプタを連結する（ステップＳ１１９）。
【００２０】
また、圧縮終了後にＣ、Ｍ、Ｙプレーンの画像に相当するバンドのディスクリプタを走査し、ライトバックが行われた全てのバンドが白画像検知されていた場合（ステップＳ１２１／Ｙｅｓ）、印刷工程では、Ｃ、Ｍ、Ｙプレーンの印刷を行わない（ステップＳ１２２）。この場合、Ｃ、Ｍ、Ｙプレーンの符号データは、この時点でメモリ１０２から削除する。
【００２１】
上記操作が終了した時点で、圧縮データはＣプレーンの１バンド目の符号、Ｍ１、Ｙ１、Ｋ１、Ｃ２、Ｍ２、・・・、Ｋｎのように構成されているが、図８に示すようにこの構成を組み替え、プレーンごとに独立したディスクリプタ構成に置き換える。組み替えは、各ディスクリプタの次ディスクリプタアドレスを書き換えることによって行う。
【００２２】
次に、伸長工程（印刷工程）でのビデオ伸長器１０７の動作について説明する。
図９、図１０に伸長時の処理の流れを示す。
Ｃ、Ｍ、Ｙ、Ｋ各プレーン用の符号データを伸長するために、ＣＰＵ１０１は各ビデオ伸長器１０７に対して設定を行い起動する（ステップＳ２０１〜Ｓ２０３）。ビデオ伸長器１０７に接続された第２のリード用ＤＭＡＣ１０６は、符号ディスクリプタを順に読み出していく（ステップＳ２０４）。通常は、ディスクリプタに指定されたスタートアドレスを基に、メモリ１０２上からデータリードをデータ長のサイズだけ行い、ビデオ伸長器１０７にデータを送る。
【００２３】
ここで、ディスクリプタのパターンフィルフラグが立っていた場合（ステップＳ２０５／Ｙｅｓ）、第２のリード用ＤＭＡＣ１０６は、メモリ１０２上のデータリードを行わず、データ長分だけフィルパターンデータをパターン発生モジュール１０６１から出力する（ステップＳ２０６）。
【００２４】
ビデオ伸長器１０７では、通常、第２のリード用ＤＭＡＣ１０６から転送されてきたデータを順に伸長していき、プロッタ１０８へ転送する（ステップＳ２１１）。この場合、転送されたデータに対応するディスクリプタの画像種は「符号」に設定されている（ステップＳ２０７／Ｎｏ）。しかし、画像種情報が「画像」となっていた場合（ステップＳ２０７／Ｙｅｓ）、伸長器１０７はリード用ＤＭＡＣ１０６から送られてきたデータを符号と見なさずに画像と見なし、送られてきたデータをそのままプロッタ１０８へ転送する（ステップＳ２０８）。
以上の処理を最後のディスクリプタ分の最後まで繰り返す（ステップＳ２０９）。
【００２５】
このように、本実施形態に係る画像形成装置は、圧縮する画像の中に有効な画像データが含まれるのか否かを１バンド単位又は任意の複数バンド単位で確認できる。
【００２６】
上記実施形態は本発明の好適な実施の一例であり、本発明はこれに限定されること無く様々な変形が可能である。
【図面の簡単な説明】
【００２７】
【図１】本発明の好適な実施の形態に係る画像形成装置の構成を示す図である。
【図２】ディスクリプタの構成例を示す図である。
【図３】圧縮前後のディスクリプタを示す図である。
【図４】画像形成装置の画像圧縮時の処理の流れを示すフローチャートである。
【図５】画像形成装置の画像圧縮時の処理の流れを示すフローチャートである。
【図６】画像形成装置の画像圧縮時の処理の流れを示すフローチャートである。
【図７】画像形成装置の画像圧縮時の処理の流れを示すフローチャートである。
【図８】符号データをプレーンごとに独立したディスクリプタ構成に置き換えた状態を示す図である。
【図９】画像形成装置の符号伸長時の処理の流れを示すフローチャートである。
【図１０】画像形成装置の符号伸長時の処理の流れを示すフローチャートである。
【符号の説明】
【００２８】
１００    画像形成装置
１０１    ＣＰＵ
１０２    メモリ
１０３    第１のリード用ＤＭＡＣ
１０４    圧縮器
１０５    ライト用ＤＭＡＣ
１０６    第２のリード用ＤＭＡＣ
１０７    ビデオ伸長器
１０８    プロッタ
１０４１    白検知モジュール
１０５１    ライトバック発生モジュール
１０６１    パターン発生モジュール
【図１】
2008219410.tif 000003
【図２】
2008219410.tif 000004
【図３】
2008219410.tif 000005
【図４】
2008219410.tif 000006
【図５】
2008219410.tif 000007
【図６】
2008219410.tif 000008
【図７】
2008219410.tif 000009
【図８】
2008219410.tif 000010
【図９】
2008219410.tif 000011
【図１０】
2008219410.tif 000012