(57)【要約】【課題】簡単な構成で、圧縮画像データから元画像データへの復元を可能とすることである。【解決手段】ビットサイズを指定し、処理の種類、圧縮された領域情報、圧縮の終端コード、及び繰り返し情報からなる複数のユニットを含むヘッダ情報と画像データとを入力し、前記繰り返し情報、及びビットサイズに基づき、前記圧縮された領域情報を伸張し、伸張結果が特定値である場合に前記処理の種類で指定される画像処理を選択し、選択された画像処理を画像データに施し、画像処理の施された画像データを印字部に出力する構成を特徴とする。【選択図】　　　図７
2004048414.tif 000002
【特許請求の範囲】
【請求項１】
ビットサイズを指定し、
処理の種類、圧縮された領域情報、圧縮の終端コード、及び繰り返し情報からなる複数のユニットを含むヘッダ情報と画像データとを入力し、
前記繰り返し情報、及びビットサイズに基づき、前記圧縮された領域情報を伸張し、
伸張結果が特定値である場合に前記処理の種類で指定される画像処理を選択し、選択された画像処理を画像データに施し、
画像処理の施された画像データを印字部に出力することを特徴とする画像領域分離方法。
【請求項２】
ビットサイズを指定する手段と、
処理の種類、圧縮された領域情報、圧縮の終端コード、及び繰り返し情報からなる複数のユニットを含むヘッダ情報と画像データとを入力する手段と、
前記繰り返し情報、及びビットサイズに基づき、前記圧縮された領域情報を伸張する手段と、
伸張結果が特定値である場合に前記処理の種類で指定される画像処理を選択する手段と、
選択された画像処理を画像データに施す手段と、
画像処理の施された画像データを印字する印字部と、
を有することを特徴とする印刷装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、任意ライン数の元画像データに所定の画像処理を行う画像領域分離方法および印刷装置に関するものである。
【０００２】
【従来の技術】
従来、この種の画像処理装置、特に、任意の元画像データに対する圧縮伸長処理して、”０”と”１”の並びで画像領域分離を行う画像処理装置において、領域分離データを圧縮伸長する技術として、ビット単位でのランレングスやバイト単位で圧縮するパックビッツ圧縮方法が比較的簡単な回路構成で実現可能なことから利用されることが多くあった。特に、後者の場合同じデータ列が連続する場合には、高圧縮率が見込める。
【０００３】
【発明が解決しようとする課題】
しかし、最近のプリンタの高解像度（１２００ｄｐｉ，２４００ｄｐｉ）になると、ライン数および画素数の総量が膨大となるため、たとえ同じデータ列が連続しても必ずしも高圧縮とはならない場合があった。
【０００４】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、圧縮画像データから元画像データへの復元が可能となり、画像領域分離を伴う画像処理を高速化することができる画像領域分離方法および印刷装置を提供することである。
【０００５】
【課題を解決するための手段】
本発明に係る第１の発明は、ビットサイズを指定し、処理の種類、圧縮された領域情報、圧縮の終端コード、及び繰り返し情報からなる複数のユニットを含むヘッダ情報と画像データとを入力し、前記繰り返し情報、及びビットサイズに基づき、前記圧縮された領域情報を伸張し、伸張結果が特定値である場合に前記処理の種類で指定される画像処理を選択し、選択された画像処理を画像データに施し、画像処理の施された画像データを印字部に出力することを特徴とする。
【０００６】
本発明に係る第２の発明は、ビットサイズを指定する手段（レジスタ８１１に相当）と、
処理の種類、圧縮された領域情報、圧縮の終端コード、及び繰り返し情報からなる複数のユニットを含むヘッダ情報と画像データとを入力する手段と、前記繰り返し情報、及びビットサイズに基づき、前記圧縮された領域情報を伸張する手段（伸張制御部５０７に相当）と、伸張結果が特定値である場合に前記処理の種類で指定される画像処理を選択する手段（画像処理セレクト部５１１に相当）と、選択された画像処理を画像データに施す手段と、（画像処理部５１３に相当）画像処理の施された画像データを印字する印字部とを有することを特徴とする。
【０００７】
【発明の実施の形態】
〔第１実施形態〕
図１は、本発明の第１実施形態を示す画像処理装置の構成を説明するブロック図である。
【０００８】
図１において、８０１は演算処理を行うＣＰＵ（中央処理演算器）である。８０２は入力部で、外部ホストより印字データを取り込む。８０３はＲＡＭ（ランダムアクセス・メモリ）で、入力部８０２より取り込まれた印字データや最終的に印字部へ送られるピットマップデータの格納及びＣＰＵの作業領域等として使われる。
【０００９】
８０４はＲＯＭ（リードオンリー・メモリ）で、ＣＰＵ８０１のプログラム及びフォントデータ等の各種データを格納する。８０５は各種バス（アドレス、データ、制御）をあらわしている。
【００１０】
８０６は描画部で、取り込まれた印字データを加工して、最終的に１ページ分のビットマップ・イメージデータを生成するところである。８０７はメモリ制御部で、ＤＭＡＣ（ダイレクト・メモリアクセス制御）等のメモリへのアクセスのバンドシェイク及び各種制御信号の出力を行う。８０８は転送部で、描画部８０６が生成したビットマッブイメージを印字部８１６へ転送する働きをするが、本実施形態では、その送られるビットマップイメージに対してさらに幾つかの画像領域に分割してその領域に適した処理を施すことを明確に示すために転送部８０８と実際の印刷を行う印字部８１６との間に画像処理部８１０が備えられている。
【００１１】
このことにより、８０１〜８０８までを１個のＡＳＩＣとして、画像処理部８１０を別のＡＳＩＣと考えてもよいし、印字部８１６を除く他をすべて１個のＡＳＩＣとする場合には転送部８０８と画像処理部８１０は１つのブロックとして考えてもよい。
【００１２】
バス（アドレス、データ、制御）８１５は画像処理部８１０に接続されている。これらのバス８１５の制御は画像処理部８１０が行い、そのバスに一時的にデータを記憶するＦＩＦＯ（ファーストイン・ファーストアウトメモリ）８１２またはレジスタ８１１、後述するヘッダ情報を記憶するＲＡＭ８１３、画像データ（ビットマップデータ）を記憶するＲＡＭ８１４が接続されている。
【００１３】
図２は、図１に示す画像処理装置における圧縮コード体系を説明する図であり、パックビット圧縮処理例に対応する。なお、１０１〜１０２は圧縮単位を示す。
【００１４】
一般に、パックビッツ圧縮（バイトランレングス：バイト単位のデータ列で同じ値のデータ列と違う値のデータ列とに分けて圧縮する方法）は、１６進数で１バイトである「００ｈ〜ＦＦｈ」までの値で「ＦＦｈ〜８１ｈ」までを２〜１２８回の同種（同じ値のデータ並びのことを呼ぶ）の繰り返しコードと「００ｈ〜７Ｆｈ」までを１回から１２８回の異種（違う値のデータ並びのことを呼ぶ）の繰り返しコード、残る「８０ｈ」を圧縮データの終端コードとして表す。
【００１５】
本実施形態では、図２に示すように、同種繰り返しコード１部として「ＦＦｈ」（２回）〜８１ｈ（１２８回）、同種繰り返しコード２部として「７Ｆｈ」（１２９回）〜ＸＸｈ（レジスタにより可変：デフォルト「０１ｈ」（２５５回）、異種繰り返しコードＹＹｈ（レジスタにより可変：デフォルト「００ｈ」（１回））で表す。
【００１６】
図３は、本発明に係る画像処理装置における画像領域分離処理状態を説明する模式図であり、図１に示した画像処理部８１０の１ページにおける”０”と”１”の並びで示される画像領域分離例に対応する。
【００１７】
図３において、画像領域ＳＦ１，ＳＦ２では画像処理ＩＭ２を、画像領域ＳＦ３では画像処理ＩＭ３を、画像領域ＳＦ４では画像処理ＩＭ４を施す分離領域を想定している。
【００１８】
区間Ａ及び区間Ｃはデータ２０２並びで各区間のライン数分繰り返すとよい。その他区間Ｂでは、データ２０３並びのＢライン数分の繰り返し、Ｅ区間ではＥライン数分のデータ並びが必要である。すなわち、区間Ａ〜Ｃでは、ライン単位の繰り返しで表現できるが、区間Ｅはライン単位での繰り返しはない。
【００１９】
そこで、本実施形態では、図２に示した圧縮単位１０１に終端コード「８０ｈ」の次のビットをラインの繰り返し回数指定として、ここまでを圧縮単位と呼ぶものとする。従って、図３に示す区間Ａ、Ｂ、Ｃは、１個の圧縮単位で表現できることになる。
【００２０】
また、区間Ｅの場合は、Ｅライン分の圧縮で１つの圧縮単位となる。Ｄライン，Ｆラインは空白ラインである。
【００２１】
図４は、本発明に係る画像処理装置における圧縮単位を説明する模式図であり、”０”と”１”によるデータ並び例である。
【００２２】
図４において、１つの矩形をパック単位と呼ぶ。前記パック単位が繰り返しコードでカウントされるデータのサイズを示している。この値はレジスタにより１バイトや２バイトと可変にできる。矩形で白の部分が”０”並び、斜線の部分が”１”並びを示している。
【００２３】
また、図４の（ａ）に示すように、前記異種繰り返しコードのＹＹ部分（ＸＸ部分）は、例えば図４の（ｂ）に示すように、異種繰り返し３回が頻繁に現れるページである時には「ＹＹ」として、「０２ｈ」（３回）を指定すると効率がよい。
【００２４】
このとき、異種繰り返しコードが３回以上連続する場合には、図４の（ｂ）に示すように、圧縮単位Ｃ１，Ｃ２，Ｃ３のように３回以内に分解するとよい。
【００２５】
図５は、本発明に係る画像処理装置における領域分離情報を示すヘッダ情報のフォーマットの一例を示す図であり、例えば１ページの領域分離情報を示すヘッダ情報のフォーマット例に対応する。
【００２６】
図５において、４０１〜４０３は最小単位としてのユニットで、各ユニット４０１〜４０３の先頭の任意ビットはある領域の処理の種類情報を示すビットとする。
【００２７】
本例では、２ビットを割り当てて、（０，０）を処理ＩＭ２と、（０，１）を処理ＩＭ３と、（１，０）を処理ＩＭ４と、（１，１）を未定義としている。ユニットの残りは圧縮単位がくる。これらのユニット群が１ページの領域を分離するヘッダ情報となる。
【００２８】
なお、本実施形態では、ここまでの処理（ヘッダ情報の構築）はホストからの文字データの位置情報とそこに貼り付ける画像領域の位置情報からソフト的に生成することを前提としている。
【００２９】
図６は、本発明に係る画像処理装置における領域分離処理例を説明するブロック図である。
【００３０】
図６において、画像処理部５０２と印字部５０３間の信号としては、１ページの垂直方向の同期信号であるＶＳｙｎｃ信号（ＶＳｙｎｃ信号）、水平方向の同期信号であるＨＳｙｎｃ信号（ＨＳｙｎｃ信号）、印字データを転送するための同期クロックＣＫ２、印字データを転送するデータバスＤａｔａからなる。
【００３１】
また、転送部５０１と画像処理部５０２間の信号は、各ラインの起点を示す水平同期のためのＴＳｙｎｃ信号（ＴＳｙｎｃ信号）、印字データをやり取りするための同期クロックＣＫ１、ヘッダ情報の転送要求を示すＣｆｇバス信号（例えば信号線２本でのシリアル通信など）、印字データを転送するデータバスＤａｔａからなる。ここで、ＣＫ１とＣＫ２は必ずしも一致していなくてもよいが、本実施形態では、説明上、ＣＫ１＝ＣＫ２とする。
【００３２】
図７は、図６に示した画像処理部５０２の詳細構成を説明するブロック図である。
【００３３】
図７において、７０１は主コントロール部で、転送部５０１及び印字部５０３からのシリアル通信のインタフェース（Ｉ／Ｆ）を行い、レジスタ８１１の設定を行い（パック単位が何バイトであるかを示す情報を設定する）、同期信号ＶＳｙｎｃ，ＨＳｙｎｃを受け取り各ブロックの制御を行う。７０２はＦＩＦＯメモリで構成されるヘッダ情報領域で、ヘッダ情報を格納する。７０３はヘッダカウンタで、ヘッダ情報を取り込む。７０４はラインメモリで構成される画像データ領域で、画像データを記憶する。
【００３４】
７０５は水平カウンタで、１ラインの水平方向のアドレスをカウントする。７１０は垂直カウンタで、垂直方向のラインをカウントする。７０７は伸長制御部で、ヘッダ情報を取り込んで圧縮データを伸長して領域の分離を行う。７０８は画像処理セレクト部で、各画像領域での処理を選択する。７０９は画像処理部で、第１から第４の画像処理を行う。
【００３５】
このように構成された画像処理部５０２において、バス信号Ｃｆｇにより各種レジスタ（水平カウンタ７０５，垂直カウンタ７１０，ヘッダカウンタ７０３およびその他制御レジスタ等）を設定し、画像処理部５０２に起動がかかると、主コントロール部７０１は、転送部５０１に対してＴＳｙｎｃ信号を発行し、このＴＳｙｎｃ信号を基点として同期信号ＣＫ１に同期されたヘッダ情報をヘッダカウンタ７０３が所定の値になるまでヘッダ情報領域へ取り込む。
【００３６】
印字部５０３よりＶＳｙｎｃ信号およびＨＳｙｎｃ信号がくると、１ページの処理が開始され、ＨＳｙｎｃ信号に同期してＴＳｙｎｃ信号を転送部５０１へ発行して、各ラインの画像データを画像データ領域に取り込んでいく。
【００３７】
そして、所定ライン分の画像データが揃うと、主コントロール部７０１は、伸長制御部７０７を起動して領域分離を行いつつ、画像処理をラインメモリのデータに対して行い、印字部５０３へとＨＳｙｎｃ信号を基点として同期信号ＣＫ２に同期して画像データ（印字データ）を転送する。
【００３８】
図８は、図７に示した伸長制御部７０７の構成を説明するブロック図である。
【００３９】
図８において、伸長制御レジスタ６０２により各種モードがＣｆｇバス信号によって主コントロール部７０１を介して設定される。こうして、主コントロール部７０１より起動がかかると、伸長コントローラ６０１が処理を開始し、ＦＩＦＯ６０５にヘッダ情報を取り込みつつ、そのユニットでの処理の種類と繰り返しコードの解析を逐次行い制御レジスタ８１１に設定されたパック単位毎に、切り出しカウンタ６０６で切り出していく。
【００４０】
パック単位で切り出されたデータは、次段のパラレル−シリアル変換を行うシリアル変換部６０７によりシリアルデータに変換され、処理の種類を示すデータとともに、画像処理セレクト部７０８へ送出される。
【００４１】
ここで、アドレス保持レジスタ６０３は、ヘッダ情報の先頭のユニットと指定回数分のライン数を繰り返した次のユニットの先頭アドレスを保持する。これによって、伸長コントローラ６０１は、繰り返すラインの先頭の圧縮データの在処を記憶しておくことができる。
【００４２】
また、繰り返しカウンタ６１１は、ユニットの繰り返し回数を保持しておくカウンタとして機能し、このカウント値がゼロになる間、同じラインを繰り返す。
【００４３】
例えば図３に示した区間Ａでは、最初のユニットの伸長を開始するのと同時に、その先頭アドレスを保持して、次の区間Ｂの繰り返し処理を行う。
【００４４】
また、区間Ｅに示すように、画像領域ＳＦ３，ＳＦ４で処理が異なる場合には、１つのユニットとしては表現できず、各ライン２個のユニットで構成される。後は、この繰り返しで各ページの領域分離を行う。
【００４５】
〔第２実施形態〕
第１実施形態では、パック単位は可変であるものの、最大同種の繰り返しは「２５５」回が最大である。例えば１２００ｄｐｉや２４００ｄｐｉのように同種繰り返しが大きな数字となる場合は、図６に示すように、倍率カウンタ６０４を用いて１つの同種繰り返しコードに対して、この倍率カウンタ６０４により圧縮率を上げることも可能である。
【００４６】
この時、ＹＹ値（ＸＸ値）に適当な値を与えて半端なデータ長分は異種の繰り返しコードで微調整を行えば良い。
【００４７】
【発明の効果】
以上説明したように、本発明によれば、圧縮画像データから元画像データへの復元が可能となり、画像領域分離を伴う画像処理を高速化することができるという効果を奏する。更には、ビットサイズ（パック単位）を可変にできるので、より圧縮率を高めることができる。
【図面の簡単な説明】
【図１】本実施例のシステムを示す図である。
【図２】各画像領域を”０”と”１”の並びで圧縮する単位を表現した図である。
【図３】１ページ内での各領域に対して領域分離のための”０”と”１”の並びを示した図である。
【図４】１ラインでのある部分の”０”と”１”の並びを示した図である。
【図５】画像領域を分離するヘッダ情報の最小単位であるユニットの内容を示した図である。
【図６】転送部、画像処理部及び印字部の本発明に関わる信号の接続を示した図である。
【図７】伸長処理部の内部ブロック図である。
【図８】画像処理部の内部ブロック図である。
【符号の説明】
７０１　コントロール部
７０２　ヘッダ情報領域
７０３　ヘッダカウンタ
７０４　ラインメモリ
７０５　水平カウンタ
７０７　伸長制御部
７０８　画像処理セレクト部
７０９　画像処理部
７１０　垂直カウンタ
【図１】
2004048414.tif 000003
【図２】
2004048414.tif 000004
【図３】
2004048414.tif 000005
【図４】
2004048414.tif 000006
【図５】
2004048414.tif 000007
【図６】
2004048414.tif 000008
【図７】
2004048414.tif 000009
【図８】
2004048414.tif 000010