(57)【要約】【課題】  ２色化サブサンプリング処理、もしくは４色階調削減処理のいずれかの方法でデータ圧縮された画像データを、元の画像に展開処理することなく、回転鏡像処理を実現する。【解決手段】  課題解決のために、回転鏡像情報に基づいて、圧縮情報の変換処理と、上記圧縮方法に応じた圧縮データのスワップ処理をおこなう、上記圧縮データに対応した新たな回転鏡像手段を構成する。【選択図】  図１
2010118760.tif 000002
【特許請求の範囲】
【請求項１】
入力された元画像データに対して、Ｍ×Ｎ画素（Ｍ、Ｎは共に１以上の整数であり、かつＭおよびＮの少なくとも一方が２以上の整数）からなるブロックに分割する画像分割手段と、
各ブロック内に含まれる色数を２色以下に減色し、減色後の第１色と第２色の色データを含む第１の色情報と、前記２色が当該ブロック内でどのように配置されているかを示す配置情報と当該圧縮手段によって圧縮されたことを示す圧縮情報を含む第１の圧縮ブロック情報を出力する第１の圧縮手段と、
各ブロックに含まれる色データを構成する各コンポーネントデータから、１以上の下位ビットを削減し、丸め処理をおこなった色データを含む第２の色情報と、当該圧縮手段によって圧縮されたことを示す圧縮情報を含む第２の圧縮情報を出力する第２の圧縮手段と、
前記第１の圧縮手段と第２の圧縮手段のいずれかの出力を、ブロックごとに選択して出力する選択手段と、
前記選択手段による出力データと、回転鏡像処理に関する回転鏡像処理情報を入力として、前記Ｍ×Ｎ画素のブロック内の回転鏡像処理をおこなう回転鏡像手段と、
を備えた画像処理装置において、
前記回転鏡像処理手段は、さらに、
第１の圧縮情報もしくは第２の圧縮情報から、第１の圧縮手段もしくは第２の圧縮手段のいずれで圧縮処理されたブロックであるかを判断する圧縮判断手段と、
第１の色情報の第１色と第２色、もしくは第２の色情報の複数の色データの内容を入れ替える色情報変換手段と、
第１の圧縮情報の配置情報を変換する配置情報変換手段と、
から成り、
前記圧縮判断手段によって、第１の圧縮手段によって圧縮処理されたブロックであると判断された場合、前記色情報変換手段は、第１の圧縮情報の配置情報と回転鏡像処理情報に基づいて、第１の色情報の第１色と第２色の色データを入れ替え、さらに、前記配置情報変換手段は、回転鏡像処理情報に基づいて、前記第１の圧縮情報の配置情報を変換すると共に、
前記圧縮判断手段によって、第２の圧縮手段によって圧縮処理されたブロックであると判断された場合、前記色情報変換手段は、回転鏡像処理情報に基づいて、第２の色情報の複数の色データを入れ替え、
前記第１の圧縮手段もしくは第２の圧縮手段によって圧縮されたブロックを、前記第１の圧縮手段もしくは第２の圧縮手段に対応する展開手段によって展開することなく、回転鏡像処理をおこなうことを特徴とする画像処理装置。
【請求項２】
前記ブロックは２×２画素からなることを特徴とする請求項１に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、コンピュータプログラム、および記憶媒体に関する。より詳細には、本発明は、高解像度画像の細部の情報を保ちながら、省メモリかつ画像処理負荷を抑える画像処理装置、画像処理方法、コンピュータプログラム、および記憶媒体に関する。
【背景技術】
【０００２】
画像印刷装置は、装置内でラスタライズされた多値のビットマップ画像を生成する。通常このビットマップ画像は、出力装置（画像印刷装置）の解像度（６００ｄｐｉや１２００ｄｐｉ等）にあわせて作成される。
【０００３】
しかしながら、細かい文字や線画などにおいては６００ｄｐｉ程度の解像度の場合に斜めのエッジ部にジャギーと呼ばれる凹凸が視認され、画質劣化の要因とされている。
【０００４】
ジャギー低減のもっとも明快な解としては、解像度を６００ｄｐｉから１２００ｄｐｉなど、より高解像度にすることでも改善される。その際の問題としては、処理されるべき画素数が膨大になり（６００ｄｐｉ画像の４倍）処理時間等の処理リソースが必要になる。
【０００５】
これに対して局所的に適応的に高解像度データを保持する技術が提案されている。特許文献１においては、ベクトル画像をラスタライズする際に描画オブジェクトのエッジ部をより高解像度に保持することで、高速でかつエッジ部のジャギーを低減させている。
【０００６】
他にも低コストにジャギーを低減する技術はいくつか提案されている。
【０００７】
代表的な技術にアンチエイリアシング処理があげられる。これはあるベクトルデータをラスタライズする際に行なわれる処理である。図３（ａ）〜図３（ｅ）にその詳細を示す。
【０００８】
ある画素（図３（ａ））を細かなサブピクセル（図３（ｂ）、９分割）に分解し、ベクトルデータをそのサブピクセル上に重ねる（図３（ｃ））。各サブピクセルにおいて、ベクトルデータが半分以上重なる場合（描画する領域がサブピクセルの面積の半分以上の場合）は“１”、そうでなければ“０”とし（図３（ｄ））、出力画素値を決定する。この場合は、図３（ｄ）から分かるように、９個のサブピクセル中で“１”となるサブピクセルは４個あるので、出力画素値は“４／９”（図３（ｅ））となる。
【０００９】
以上のようなアンチエイリアシング処理は多くの改良手法が提案されている。
【００１０】
特許文献２においては、アンチエイリアシング処理を行なう際に併せてそのピクセルがベクトルデータをラスタライズしたものかどうかの識別子を付与するとともに、そのエッジの向きを記憶する。また得られた中間階調データのビット数を落とし、そこにエッジの向き情報を付与することで、記憶領域を縮小している。ここで、９個のサブピクセルにおいて、各サブピクセルの状況（サブピクセルが“１”なのか、“０”なのか）毎のビットマップパターンとエッジの方向とを予め関連付けておく。この関連付けられた関係を参照して、図３（ｄ）にて得られた関係からエッジの方向を決める。図３では、エッジの方向は“下”となる。
【特許文献１】特開２００４−３２０３６１号公報
【特許文献２】特開平０９−１８７１０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
ところが、特許文献１では、１つの画素値で複数の色情報を持たせているため特定の色でのみ有効な手法であり色処理など他の画像処理系に制約が加わる。またベクトル情報のレンダリング時のみ有効であり、ラスタ画像に関しては処理することができない。
【００１２】
また、特許文献２では、上記エッジ部の向き情報取得においてベクトル情報が必要になっており、ラスタ画像に対しては処理ができない。またエッジが込み入った画像においてつぶれの問題を潜在的に抱えることになる。
【００１３】
そして、上述のように、ジャギーなどを低減するためには、解像度を上げることが有効であるが、この解像度の増加に伴い、処理時間や処理リソースの増加を招いてしまう。よって、ジャギーなどの低減のために解像度を上げた場合であっても、処理時間や処理リソースの増加を抑えることが望まれている。
【００１４】
そのような課題を解決する方法として、以下のような解決方法が考えられる。
まず、ラスタデータである画像データを、Ｍ×Ｎ画素を持つ複数のブロックに分割する。そしてそのブロック内部の色数を２色以下に減色し、減色後の２色の色情報と、その２色がＭ×Ｎ画素のブロック内にどのように配置されているかを表す形状情報に圧縮する。これにより１２００ｄｐｉ等の高解像度画質を保ちつつ，処理画素，処理メモリ，データ転送サイズを削減することを可能にすることができる。
【００１５】
また、上記方法は、ＰＤＬ等の印刷用画像データに対しては、良好な画質が保たれる圧縮方法であるが、スキャナ等の入力デバイスから入力された画像データに対しては、色数を削減することによる画像の劣化が目立ってしまうという課題がある。
【００１６】
このような課題を解決する方法として、以下のような解決方法がある。すなわち、前記２色化の画像処理と並行して、画素データの下位ビットを削減し階調を下げる処理をおこない、これら２つの出力画素データと、元の入力画素データを比較して、差分の小さい方を出力データとする方法が考えられる。
【００１７】
これによって、ＰＤＬ等の印刷用画像データに特徴的な文字・線画部の境界部に関しては、エッジ部を強調する２色化の画像処理が採用され、スキャナ等の入力デバイスからの入力画像に特徴的な写真部に関しては、階調を保持しながらデータ量を圧縮することができる。
【００１８】
以上のような圧縮方法によって、元画像の劣化を最小限に抑えた形で、データ転送処理時間や処理リソースを低減することができる。
【００１９】
しかしながら、回転鏡像処理等のある種の画像処理をおこなう場合、前記圧縮データを展開し、画像処理の後に再び圧縮処理をおこなう必要があり、展開／再圧縮処理に必要なバッファ量、処理時間が増大してしまうといった問題点がある。
【課題を解決するための手段】
【００２０】
このような目的を達成するために、本発明の画像処理装置は、入力された元画像データに対して、Ｍ×Ｎ画素（Ｍ、Ｎは共に１以上の整数であり、かつＭおよびＮの少なくとも一方が２以上の整数）からなるブロックに分割する画像分割手段と、
各ブロック内に含まれる色数を２色以下に減色し、減色後の第１色と第２色の色データを含む第１の色情報と、前記２色が当該ブロック内でどのように配置されているかを示す配置情報と当該圧縮手段によって圧縮されたことを示す圧縮情報を含む第１の圧縮ブロック情報を出力する第１の圧縮手段と、
各ブロックに含まれる色データを構成する各コンポーネントデータから、１以上の下位ビットを削減し、丸め処理をおこなった色データを含む第２の色情報と、当該圧縮手段によって圧縮されたことを示す圧縮情報を含む第２の圧縮情報を出力する第２の圧縮手段と、
前記第１の圧縮手段と第２の圧縮手段のいずれかの出力を、ブロックごとに選択して出力する選択手段と、
前記選択手段による出力データと、回転鏡像処理に関する回転鏡像処理情報を入力として、前記Ｍ×Ｎ画素のブロック内の回転鏡像処理をおこなう回転鏡像手段とを備えた画像処理装置において、
前記回転鏡像処理手段は、さらに、
第１の圧縮情報もしくは第２の圧縮情報から、第１の圧縮手段もしくは第２の圧縮手段のいずれで圧縮処理されたブロックであるかを判断する圧縮判断手段と、
第１の色情報の第１色と第２色、もしくは第２の色情報の複数の色データの内容を入れ替える色情報変換手段と、
第１の圧縮情報の配置情報を変換する配置情報変換手段と、
から成り、
前記圧縮判断手段によって、第１の圧縮手段によって圧縮処理されたブロックであると判断された場合、前記色情報変換手段は、第１の圧縮情報の配置情報と回転鏡像処理情報に基づいて、第１の色情報の第１色と第２色の色データを入れ替え、さらに、前記配置情報変換手段は、回転鏡像処理情報に基づいて、前記第１の圧縮情報の配置情報を変換すると共に、
前記圧縮判断手段によって、第２の圧縮手段によって圧縮処理されたブロックであると判断された場合、前記色情報変換手段は、回転鏡像処理情報に基づいて、第２の色情報の複数の色データを入れ替え、
前記第１の圧縮手段もしくは第２の圧縮手段によって圧縮されたブロックを、前記第１の圧縮手段もしくは第２の圧縮手段に対応する展開手段によって展開することなく、回転鏡像処理をおこなうこと
を特徴とする。
【発明の効果】
【００２１】
本発明によれば、高解像度ラスタ画像データを適応的にサンプリングし処理画素数を減らしながら、ジャギーなどの画質劣化を抑え高品質な画像を得ることができる画像形成装置において、処理時間やバッファを増加させることなく、画像の回転鏡像処理をおこなうことが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、図面を参照して本発明の実施例を詳細に説明する。なお、以下で説明する図面で、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
【００２３】
以下では、本発明の一実施例にかかる画像形成装置としてディジタル複合機を想定するが、カラー複写機やカラープリンタなどの他の印刷デバイスにも同様に適用可能である。
【実施例１】
【００２４】
［画像形成装置の構成］
図１は、本実施例に係る画像形成装置の概略構成を示すブロック図である。
【００２５】
図１に示すように、本実施例に係る画像形成装置は、画像読取部１０１、画像処理部１０２、記憶部１０３、ＣＰＵ  １０４および画像出力部１０５を備える。なお、画像形成装置は、画像データを管理するサーバ、プリントの実行を指示したり、画像データを提供可能なパーソナルコンピュータ（ＰＣ）等にネットワークなどを介して接続可能である。
【００２６】
画像読取部１０１は、原稿の画像を読み取り、画像データを出力する。この画像読取部１０１は例えばスキャナである。
【００２７】
画像処理部１０２は、画像読取部１０１や、ＰＣ等の外部から入力される画像データを含む印刷情報を中間情報（以下「オブジェクト」と呼ぶ）に変換し、記憶部１０３のオブジェクトバッファに格納する。その際、濃度補正などの画像処理を行う。さらに、バッファしたオブジェクトに基づきビットマップデータを生成し、記憶部１０３のバンドバッファに格納する。その際、ディザなどのハーフトーン処理を行う。
【００２８】
本発明に特徴的な適応的サブサンプリング処理は、ラスタイメージ処理においてビットマップデータに対して施される。追って詳細に述べる。
【００２９】
記憶部１０３は、ＲＯＭ、ＲＡＭ、ハードディスク（ＨＤ）などを含むことができる。ＲＯＭは、ＣＰＵ１０４が実行する各種の制御プログラムや画像処理プログラムを格納する。ＲＡＭは、ＣＰＵ１０４がデータや各種情報を格納する参照領域や作業領域として用いられる。また、ＲＡＭとＨＤは、上記のオブジェクトバッファ、バンドバッファなどに用いられる。
【００３０】
画像出力部１０５は、記録紙などの記録媒体にカラー画像を形成して出力する。この画像出力部１０５は後述のように例えば電子写真方式のプリンタである。
【００３１】
［装置概観］
図２は、本実施例に係る画像形成装置の概観図である。
【００３２】
図２において、画像読取部１０１では、原稿台ガラス２０３および原稿圧板２０２の間に、画像を読み取る原稿２０４が置かれる。原稿２０４がランプ２０５の光に照射されると、原稿２０４からの反射光は、ミラー２０６と２０７に導かれ、レンズ２０８によって３ラインセンサ２１０上に像が結ばれる。なお、レンズ２０８には赤外カットフィルタ２３１が設けられている。図示しないモータにより、ミラー２０６とランプ２０５を含むミラーユニットを速度Ｖで、ミラー２０７を含むミラーユニットを速度Ｖ／２で矢印の方向に移動する。つまり、３ラインセンサ２１０の電気的走査方向（主走査方向）に対して垂直方向（副走査方向）にミラーユニットが移動し、原稿２０４の全面を走査する。
【００３３】
３ラインのＣＣＤからなる３ラインセンサ２１０は、レッドＲを受光するＣＣＤ２１０−１、グリーンＧを受光するＣＣＤ２１０−２、およびブルーＢを受光するＣＣＤ２１０−３を備えている。このような構成で、入力される光情報を色分解して、フルカラー情報レッドＲ、グリーンＧおよびブルーＢの各色成分を読み取る。なお、３ラインセンサ２１０を構成するＣＣＤ２１０−１〜２１０−３はそれぞれ、５０００画素分の受光素子を有する。また、ＣＣＤ２１０−１〜２１０−３はそれぞれ、原稿台ガラス２０３に載置可能な原稿の最大サイズであるＡ３サイズの原稿の短手方向（２９７ｍｍ）を４００ｄｐｉの解像度で読み取ることができる。
【００３４】
標準白色板２１１は、３ラインセンサ２１０の各ＣＣＤ２１０−１〜２１０−３によって読み取ったデータを補正するためのものである。標準白色板２１１は、可視光でほぼ均一の反射特性を示す白色である。
【００３５】
画像処理部１０２は、３ラインセンサ２１０から入力される画像信号を電気的に処理して、マゼンタＭ、シアンＣ、イエローＹおよびブラックＫの各色成分信号を生成し、生成したＭＣＹＫの色成分信号を画像出力部１０５に送る。また、イメージスキャナ部（画像読取部１０１）における一回の原稿走査（スキャン）につきＭＣＹＫのうちの一つの色成分信号が画像出力部１０５に送られ、計四回の原稿走査により一回のプリントアウトが完成する。
【００３６】
画像出力部１０５において、画像読取部１０１から送られてくるＭ、Ｃ、Ｙ、および／またはＫの画像信号はレーザドライバ２１２へ送られる。レーザドライバ２１２は、入力される画像信号に応じて半導体レーザ素子２１３を変調駆動する。半導体レーザ素子２１３から出力されるレーザビームは、ポリゴンミラー２１４、ｆ−θレンズ２１５およびミラー２１６を介して感光ドラム２１７を走査し、感光ドラム２１７上に静電潜像を形成する。
【００３７】
現像器は、マゼンタ現像器２１９、シアン現像器２２０、イエロー現像器２２１およびブラック現像器２２２を備えている。四つの現像器が交互に感光ドラム２１７に接することで、感光ドラム２１７上に形成された静電潜像を対応する色のトナーで現像してトナー像を形成する。記録紙カセット２２５から供給される記録紙は、転写ドラム２２３に巻き付けられ、感光ドラム２１７上のトナー像が記録紙に転写される。
【００３８】
このようにしてＭ、Ｃ、ＹおよびＫの四色のトナー像が順次転写された記録紙は、定着ユニット２２６を通過することで、トナー像が定着された後、装置外へ排出される。
【００３９】
次に適応的サブサンプリング処理の詳細に関して説明する。なお本処理への入力は画像読取部１０１や外部から入力されるビットマップデータであり、画像処理部１０２にて行なわれる。
【００４０】
図４に本実施例に係る第１の圧縮手段、第２の圧縮手段、および、選択手段の構成を表すブロック図を示す。
【００４１】
まず、画像読取部１０１やＰＣなどから高解像度画像データ４０１が入力されると、画像処理部１０２内のブロック分割部４０２は、入力された高解像度画像データをＭ×Ｎ画素のブロックに分割する。なお、Ｍ、Ｎは共に１以上の整数であり、かつＭおよびＮの少なくとも一方が２以上の整数である。もちろん、Ｍ＝Ｎであっても良い。
【００４２】
ここでは簡便さのために８ｂｉｔ・ＲＧＢの十分大きい入力画像が２×２画素のブロックに分割されるとして説明を行う。すなわち、入力された画像データを２×２画素のブロックに分割する。また、入力された高解像度画像データが１０００×１０００画素の場合、２×２画素のブロックに分割するので、５００×５００個のブロックに分割される。
【００４３】
次に、分割されたブロックの１つは、請求項１記載の第１の圧縮手段に相当する２色化サブサンプリング処理部４０３と、第２の圧縮手段に相当する４色階調削減処理部４０４に入力される。
【００４４】
２色化サブサンプリング処理部４０３は、２色化減色処理部４０５、復号化部４０６、差分算出部４０７から成り、図５に示すようなフローチャートで表される処理をおこなう。
【００４５】
まず、２色化減色処理部４０５では、４つある画素の色に対して、近い色を同色とする色丸めの処理を行う（Ｓ５０１）。この処理はある閾値より近いレベルを持つ画素があった場合に画素同士を平均化し、同じレベル（色）の画素値に丸める処理である。すなわち、上記色丸め処理は、ブロック中に複数の色が含まれている場合、類似色同士を同色に変換して、色を近似できればいずれの処理であって良い。このようにして、対象となるブロック中に含まれる色から、後述の処理に用いる色を取得し、記憶部１０３に記憶させる。そして、２色化減色処理部４０５では、次に、上記色丸めを行ったブロック内の色の数をカウントする（Ｓ５０２）。すなわち、２色化減色処理部４０５は、対象となるブロックに存在する色数を算出する。前処理として色丸め処理を行なっているため、ここで同色といっても数レベルの違いは許容する。
【００４６】
次にその色数が２色の場合に着目する。すなわち、２色化減色処理部４０５は、上記色丸めを行ったブロック内の色数が２色か否かを判断し（Ｓ５０３）、２色と判断する場合はＳ５０６へ進み、２色ではないと判断する場合はＳ５０４に進む。
【００４７】
ここで、２×２画素のブロックが２色で構成されている場合、その配置は図６（ａ）−（１）〜（７）に示すように７通り、全体が１色の場合（図６（ａ）−（０））も含めると８通りしか取りえない。すなわち、２×２画素のブロック内の２色の配置は３ｂｉｔで表現が可能である。これに加えて、２×２画素内の左上の画素の色を第１色データと決めておくことで、図６（ｂ）のようなデータフォーマットで、図６（ａ）に示されるパターンをすべて表すことができる。
【００４８】
さて、本実施例では、２×２画素のブロックを用いているので、上述のように、２色の配置を３ｂｉｔで表現できる。この配置は、入力された画像の、各ブロックにおける形状に対応しているので、上記配置を表す情報を、本明細書では、「形状情報」と参照する。例えば、画像のエッジを含むブロックにおいては、上記形状はエッジ形状となる。
【００４９】
本実施例では、形状情報は３ｂｉｔの情報となる。なお、２×２画素のブロックに分割することは一例であり、上記Ｍ、Ｎに応じてｂｉｔ数が変わる。例えば、２×２画素のブロックに対して、ブロックサイズが１画素増える毎に１ｂｉｔずつ増えていく。
【００５０】
Ｓ５０３にて、ブロック内の色数が２色で構成されていると判断された場合、２色化減色処理部４０５は、そのブロック内の２色の配置パターンが、図６（ａ）に示す７通りのうちのどれに分類されるか検出を行なう。そして、ブロックに含まれる２色の色情報と形状情報とを取得して、図６（ｂ）のようなフォーマットのデータを生成する（Ｓ５０６）。一方、Ｓ５０３にて、ブロック内の色数が２色で構成されていると判断されなかった場合、２色化減色処理部４０５は、ブロック内の２×２画素の平均色を算出する（Ｓ５０４）。そして、その平均色の色情報を第１色データと第２色データに割り当て、図６（ｂ）のようなフォーマットのデータを生成する（Ｓ５０５）。この時、ブロック内が平均色に１色化される場合は、ブロック内部の形状を表す形状情報が必要ないため、形状情報に対しては本来任意の値を割り当てればよい。しかし、ここでは、形状情報が表す８パターンのうち、０×０に相当するパターンを後述する４色保持階調削減処理によって処理されたデータに割り当てる。そのため、Ｓ５０５で１色化されたデータには、０×１〜０×７の中から任意の形状情報を割り当てる。
【００５１】
以上のような処理によって生成された図６（ｂ）のようなフォーマットのデータは、復号化部４０６および差分算出部４０７を通して、元の画像ブロックとの差分が算出される（Ｓ５０７）。
【００５２】
復号化部４０６では、図６（ｂ）のように２色のデータと形状情報に符号化されたデータを、４色のデータに復号する。図７に復号化の例を示す。例えば、図７（ａ）上図のように形状情報として０×１が付加されているデータは、図６（ａ）（１）のようなパターンを持つので、図７（ａ）下図のように復号化される。また、図７（ｂ）上図のように形状情報として０×６が付加されているデータは、図６（ａ）（６）のようなパターンを持つので、図７（ｂ）下図のように復号化される。
【００５３】
このように復号化されたデータは、元の画像ブロックのデータと共に、後段の差分算出部４０７に入力され、差分計算される。差分計算は、例えば、元の画像ブロックの画素データと、復号化部４０６からの出力データの、各画素間の平均二乗誤差の和を求める方法などによって算出し、その出力データを後段の差分比較・選択部４１１に入力する。
【００５４】
以上で説明された２色化サブサンプリング処理部４０３での処理と並行して、階調削減処理部４０８、復号化部４０９、差分算出部４１０から成る４色階調削減処理部４０４は図８に示すようなフローチャートで表される処理をおこなう。
【００５５】
まず、階調削減処理部４０８では、４つある画素の各コンポーネントデータに対して、下位半分のビット数を削減する丸め処理をおこなう（Ｓ８０１）。例えば、図９（ａ）、図９（ｂ）に表されるように、入力データの各画素、各コンポーネントのデータ８ｂｉｔの下位４ｂｉｔビットずつが削減され、残ったデータがマージされて階調削減処理された新たな４色（４画素）データが生成される。
【００５６】
さらに、前述したように、４色階調削減処理部４０４によってデータ圧縮されたことを表す３ｂｉｔの付加情報  ０ｂ０００  がデータの先頭に付加される。以上述べたように、これら３ｂｉｔ付加情報は、２色化サブサンプリング処理部４０３によって処理出力された圧縮データなのか、４色階調削減処理部４０４によって処理出力された圧縮データなのかを判断するための情報をもつ。さらに、この３ｂｉｔ付加情報は、データが２色化サブサンプリング処理部４０３によって処理出力された圧縮データであった場合に、ブロック内部に２色の色がどのように配置されているかを判断し、復元できるようにするための情報をもつ。この３ｂｉｔの付加情報を、本明細書では「圧縮情報」と参照する。
【００５７】
以上の説明によれば、８ｂｉｔ・ＲＧＢの２×２画素のブロックを例にとると、圧縮前の１ブロックあたりのデータ量は、８ｂｉｔ＊３ｃｏｍｐ＊４画素＝９６ｂｉｔである。そして、このデータは、２色化サブサンプリング処理によって、圧縮情報３ｂｉｔ＋８ｂｉｔ＊３ｃｏｍｐ＊２色＝５１ｂｉｔに圧縮される。また、同様に、４色階調削減処理によって、圧縮情報３ｂｉｔ＋４ｂｉｔ＊３ｃｏｍｐ＊４画素＝５１ｂｉｔに圧縮される。双方の圧縮処理の結果、同じビット長の出力を得られることは、その他の様々な実装を考える上で、効率が良い。しかし、本提案は２つの出力のビット長が必ずしも同じであることを必要とはしない。
【００５８】
図１０にこの圧縮情報と各データ形式の対応付けを判断するフローを表す。
これによれば、まず圧縮情報０ｂ０００がデータに付加されているかどうかを判断し（Ｓ１００１）、０ｂ０００が付加されている場合、そのデータは４色階調削減処理されていると判断することができる（Ｓ１００２）。また、圧縮情報０ｂ００１−０ｂ１１１がデータに付加されている場合、そのデータは２色化減色処理されている（Ｓ１００３）。２色化減色処理されていると判断されたデータは、さらに、第１色データと第２色データの比較処理がおこなわれる（Ｓ１００４）。比較処理の結果、２つが同じ場合、２×２のブロックは図６（ａ）（０）のように１色化されていると判断することができる（Ｓ１００５）。一方、２つが異なる色の場合、２×２のブロックは異なる２色の色から構成されていると判断することができる（Ｓ１００６）。そしてさらに、その配置は、付加されている圧縮情報から、図６（ａ）（１）〜図６（ａ）（７）のいずれかの配置に一意に判断することができる（Ｓ１００７）。
【００５９】
話は元に戻り、階調削減処理部４０８から出力された圧縮データは、２色化減色処理部４０５からの出力データと同様に、復号化部４０９、差分算出部４１０を介して、階調削減処理前後のデータの差分が計算される。そして、差分比較・選択部４１１で比較された差分が小さい方が、最終的な出力として選択されて、対応する圧縮情報と共に差分比較・選択部４１１から出力される。
【００６０】
図１１に、図４のような圧縮手段で圧縮されたデータを展開する展開手段の代表的なブロック図を示す。
【００６１】
まず、２色化サブサンプリング処理部４０３、４色階調削減処理部４０４のいずれかで圧縮された入力データ１１０１は、圧縮判定処理部１１０２に入力され、付加されている３ｂｉｔの圧縮情報に基づいて、いずれの圧縮処理がされているデータかを判定する。ここで、圧縮情報に０ｂ００１−０ｂ１１１が付加されており、２色化サブサンプリング処理されていると判断された場合、２色化減色処理復号化部１１０３へデータが転送される。また、圧縮情報に０ｂ０００が付加されており、４色階調削減処理されていると判断された場合、４色階調削減処理復号化部１１０４へデータが転送される。
【００６２】
２色化減色処理復号化部１１０３へ転送されたデータは、前述した復号化部４０６と同様に、図７で示される復号化処理をおこなう。また、４色階調削減処理復号化部１１０４へ転送されたデータについても、前述した復号化部４０９と同様に、図９で示される圧縮処理とは反対の復号化処理をおこなう。すなわち、図９（ａ）、図９（ｂ）それぞれの下段に示される圧縮形式から、上段に示される展開形式へのビット拡張処理がおこなわれ、さらに、各色、各コンポーネントの下位４ｂｉｔには０ｂ００００が付加されるような処理がおこなわれる。
これら復号化されたデータの一方が、復号データ出力部１１０５に転送されて、最終的な展開データとして出力される。
【００６３】
ここで、図１２に２×２画素ごとにブロック化した画像データを回転鏡像処理する時の概念図を示す。
【００６４】
例として、画像１２０１のように、６×４ｐｉｘｅｌの画像データを、Ａ〜Ｆまでの６ブロックの２×２画素ブロックに分割したデータを９０度時計回りに回転処理する場合の処理を考える。画像１２０１全体としての回転鏡像処理を効率的におこなうために、ブロック単位での回転鏡像処理と、ブロック内の回転鏡像処理の２つの処理を組み合わせておこなう方法がある。
【００６５】
まず、ブロック単位での回転鏡像処理に関しては、画像１２０２のようになる処理をおこなう。画像１２０１において、各ブロックＡ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆは、この順番に不図示のメモリ上に配置されていると仮定する。これに加えて、この６ブロックが３×２ブロックであるという情報を保持していれば、これら６ブロックの配置を一意に決定することができる。これを９０度時計回りに回転して画像１２０２のような配置にするためには、各ブロックデータをＤ，Ａ，Ｅ，Ｂ，Ｆ，Ｃの順番にメモリ上に配置し直す必要がある。さらに、３×２ブロックであるという情報を２×３ブロックであるという情報に変換することで、実現することができる。
【００６６】
次に、ブロック内の回転鏡像処理に関しては、各ブロック内が画像１２０３のようになる処理をおこなう。画像１２０１において、ブロックＡは、画素１，２，３，４という２×２画素から構成されており、この順番に不図示のメモリ上に配置されていれば、ブロック内の配置を一意に決定することができる。これを９０度時計回りに回転して画像１２０３のような配置にするためには、ブロックＡの内部の画素を、画素３，１，４，２の順番にメモリ上に配置し直すことで、実現することができる。
【００６７】
これらの２つの処理を組み合わせておこなうことで、画像１２０４のような９０度回転した画像を得ることができる。
【００６８】
ここで、前記ブロック単位での回転鏡像処理に関しては、各ブロックが持つデータは、内部の２×２画素の色データそのものではなく、前述した圧縮処理をおこなった後の符号化データであっても、上記回転鏡像処理が可能である。しかしながら、ブロック内の回転鏡像処理の場合、４画素の色データそのものを持っている必要がある。そのため、前記圧縮データを、前述した従来の回転鏡像処理でおこなうためには、従来、図１３に示すような構成が必要であった。すなわち、圧縮されたブロックデータを格納するメモリ１３０１と、メモリと圧縮ブロック回転鏡像器１３０８を接続するバス１３０２と、前述した図４に示される圧縮手段で圧縮された画像を回転鏡像処理する圧縮ブロック回転鏡像機１３０８である。
【００６９】
そしてさらに、圧縮ブロック回転鏡像器１３０８は、メモリの所定のアドレスから圧縮ブロックデータをリードするＤＭＡＣ＿Ａ １３０３と、メモリの所定のアドレスへ圧縮ブロックデータをライトするＤＭＡＣ＿Ｂ １３０４と、図１１の１１０７と同じ構成をもつ展開器１３０５と、図４の４１３と同じ構成をもつ圧縮器１３０６と、前述した２×２画素をもつブロック内の回転鏡像処理をおこなう回転鏡像器１３０７から構成される。
【００７０】
ＤＭＡＣ＿Ａ １３０３で画像を構成するブロックをリードする順番を制御する。すなわち、図１２の画像１２０１を９０度回転する際には、ブロックＤ，Ａ，Ｅ，Ｂ，Ｆ，Ｃの順にブロックを読み出す。またＤＭＡＣ＿Ｂ １３０４は、圧縮器１３０６から転送されてきた圧縮ブロックデータをメモリ上に線形に書き出す。これによって、圧縮ブロック回転鏡像器１３０８の出力側のメモリ領域には、ブロックＤ，Ａ，Ｅ，Ｂ，Ｆ，Ｃの順に圧縮ブロックが線形に書き出され、前記ブロック単位での回転鏡像処理が実現できる。
【００７１】
次に、展開器１３０５によって２×２画素の色データに展開されたブロック内のデータは、回転鏡像器１３０７で回転鏡像処理され、その出力データは圧縮器１３０６で再圧縮される。これによって、ＤＭＡＣ＿Ａ １３０３から転送されてきた各ブロックデータに対し、ブロック内での回転鏡像処理を実現できる。
【００７２】
図１３のような従来の方式では、通常の回転鏡像器の他に、図１１の１１０７に示されるような展開器１３０５と、図４の４１３に示されるような圧縮器１３０６が必要となり、回路規模を大きくしていた。
【００７３】
図１４は、このような状況を鑑みて構成された圧縮ブロック回転器のブロック図であり、本発明の骨子をなす。
【００７４】
これによれば、新たな圧縮ブロック回転器１４０１は、メモリの所定のアドレスから圧縮ブロックデータをリードするＤＭＡＣ＿Ａ １３０３と、メモリの所定のアドレスへ圧縮ブロックデータをライトするＤＭＡＣ＿Ｂ １３０４と、新回転鏡像器１４０２から構成される。
【００７５】
図１５（ｂ）に本発明における新回転鏡像器１４０２を表す。この中で、入力１５０５，１５０７、および、出力１５０６，１５０８が表すデータフォーマットに関する説明を図１６にまとめる。これによれば、ＲＧＢ・８ｂｉｔのデータに対して、２色化減色処理部４０３もしくは４色階調削減処理部４０４のいずれの処理がおこなわれていても、圧縮処理後のデータは、図１６（ｃ）のように、３ｂｉｔの圧縮情報部１６０１と、４８ｂｉｔのデータ部１６０２の組み合わせから構成されている。図１５（ｂ）の入力１５０５と出力１５０６は、前述のデータ部１６０２の入出力を表しており、入力１５０７と出力１５０８は、前述の圧縮情報部１６０１の入出力を表している。また、矢印１５０３は、図１７に示されるような３ｂｉｔで表される回転鏡像情報を表している。
【００７６】
新回転鏡像器１４０２は、さらに、データ変換処理部１５０９と、圧縮情報変換処理部１５１０から構成され、それぞれ、データ部１６０２の変換処理と圧縮情報部１６０１の変換処理がおこなわれる。
【００７７】
図１８にデータ変換処理部１５０９における処理フローを示す。
【００７８】
データ変換処理部１５０９は、まず、圧縮情報部１６０１（１５０７）が０ｂ０００であるかどうかを判断する（Ｓ１８０１）。圧縮情報部１６０１（１５０７）が０ｂ０００である場合、入力されたデータ部１６０２（１５０５）は４色階調削減処理されていると判断し（Ｓ１８０２）、入力された回転鏡像情報１７０１（１５０３）に基づいて、４色スワップ処理をおこなう（Ｓ１８０３）。
【００７９】
図１６（ｂ）下段に示されるような４色階調削減処理後のデータ部の第１色〜第４色は、ブロックを構成する２×２画素の各画素に相当する。したがって、４色スワップ処理は、通常の回転鏡像処理における画素のスワップ処理と同等の処理をおこなえばよい。
【００８０】
図１９に９０°回転時に４色スワップ処理でおこなわれるスワップ処理の例を示す。図１９（ａ）の第１色〜第４色は、ブロックを構成する２×２画素の左上、右上、左下、右下の画素の色データを表している。これを９０°回転すると、図１９（ｂ）の右図のような画素構成になるため、４色スワップ処理では、図１９（ｂ）左図のようにデータスワッピングがおこなわれる。これは、図１５（ａ）のデータ変換処理部でおこなわれている回転鏡像処理のためのデータスワップ処理と等価である。
【００８１】
図１８の処理フローに戻り、圧縮情報部１６０１（１５０７）が０ｂ０００ではない場合、入力されたデータ部１６０２（１５０５）は２色化減色処理されていると判断する（Ｓ１８０３）。そして、入力された回転鏡像情報１７０１（１５０３）と圧縮情報部１６０１（１５０７）に基づいて、２色スワップ処理をおこなう（Ｓ１８０５）。
【００８２】
図２０に圧縮情報０ｂ０１１が付加されている圧縮データを９０°回転および１８０°回転する時に、２色スワップ処理でおこなわれるスワップ処理の例を示す。圧縮情報０ｂ０１１が付加されたデータは、図２０（ａ）の右図のような画素パターンを持っている。２色化減色処理後の第１色データは、２×２画素の左上の画素の色データを表しており、第２色データは２×２画素に含まれる２色のうち、第１色データではない方の色データを表している。これを９０°回転すると、図２０（ｂ）の右図のような画素構成になり、左上の画素の色データに変化がないため、２色スワップ処理では、図２０（ｂ）左図のようにデータスワッピングがおこなわれない。また１８０°回転すると、図２０（ｃ）の右図のような画素構成になり、左上の画素の色データが元データの第２色に変化するため、２色スワップ処理では、図２０（ｃ）左図のように、第１色と第２色データスワッピングがおこなわれる。
【００８３】
以上で説明したようなデータスワップ処理されたデータ部は、出力１５０６として出力される。
【００８４】
図１５（ｂ）のブロック図に戻り、圧縮情報変換処理部１５１０では、回転鏡像情報１７０１（１５０３）に基づいて、圧縮情報部１６０１（１５０７）を変換する。圧縮情報部１６０１（１５０７）が０ｂ０００の場合、この圧縮情報部は、４色階調削減処理で処理されているという以上の情報を持たない。新回転鏡像器１４０１では、圧縮方式を変更する処理はおこなわないので、圧縮情報部１６０１（１５０７）の０ｂ０００というデータは変換されない。
【００８５】
一方、圧縮情報部１６０１（１５０７）が０ｂ０００の場合、この圧縮情報部は、２色化減色処理で処理されているという情報に加えて、ブロック内の２×２画素がどのように配置されているかを示す、図６（ａ）のような形状情報をも含んでいる。そのため、ブロック内の回転鏡像処理をおこなう場合、回転後の形状パターンに適合するように、圧縮情報を変換する必要がある。
【００８６】
図２０にその変換処理の一例を示す。圧縮情報０ｂ０１１が付加されたデータは、図２０（ａ）の右図のような画素パターンを持っている。これを９０°回転すると、図２０（ｂ）の右図のような画素構成になる。するとブロック内の２×２画素の配置が変化するため、圧縮情報は０ｂ１１０に変換される。また、１８０°回転すると、図２０（ｃ）の右図のような画素構成になる。するとブロック内の２×２画素の配置は変化しないため、圧縮情報は変換されない。
【００８７】
以上で説明したように、回転鏡像情報１７０１（１５０３）に基づいて変換処理された圧縮情報部は、出力１５０８として出力される。
【００８８】
以上で説明したように、前述した圧縮方法で圧縮された画像データは、図１５（ｂ）のような新回転鏡像器１４０２を構成することで、図１４のように、展開器１３０５や圧縮器１３０６を必要としない。また、圧縮データをそのまま回転鏡像処理できることで、展開したデータをハンドリングするさいに必要なバッファや、データ転送のためのバス幅を小さくすることができる。
【００８９】
これにより、少ない回路規模で、前述の圧縮データの回転鏡像処理をおこなうことが可能となる。
【図面の簡単な説明】
【００９０】
【図１】本発明の実施例で用いる画像形成装置の概略構成を示すブロック図である。
【図２】本発明の実施例で用いる画像形成装置の概観図である。
【図３】従来技術のアンチエイリアシング処理を説明するための図である。
【図４】本実施例に係る第１の圧縮手段、第２の圧縮手段、および、選択手段の構成を表すブロック図である。
【図５】本実施例に係る２色化サブサンプリング処理のフローを示したフロー図である。
【図６】本実施例に係る２色化サブサンプリング処理において、２色化減色処理の減色後ブロック内配置パターンと、データフォーマットを説明するための図である。
【図７】本実施例に係る２色化サブサンプリング処理において、圧縮データと展開データのデータフォーマットの対応関係を説明するための図である。
【図８】本実施例に係る４色階調削減処理のフローを示したフロー図である。
【図９】本実施例に係る４色階調削減処理において、圧縮データと展開データのデータフォーマットの対応関係を説明するための図である。
【図１０】本実施例に係る圧縮データの圧縮情報によって、圧縮方式を判断するフローを示したフロー図である。
【図１１】本実施例に係る圧縮データの判定手段と、第１の圧縮手段、第２の圧縮手段に対応する展開手段の構成を表すブロック図である。
【図１２】本実施例に係るブロック化された画像データ全体の、回転鏡像処理方法について示した概念図である。
【図１３】本実施例に係る圧縮データを、従来の回転鏡像処理手段をそのまま用いて回転鏡像処理するために必要な回路構成を示したブロック図である。
【図１４】本実施例に係る圧縮データを、展開処理することなく回転鏡像処理するために必要な回路構成全体を示したブロック図である。
【図１５】図１３、図１４における回転鏡像器の詳細構成を示したブロック図である。
【図１６】ＲＧＢ・８ｂｉｔの入力画像に対し、２色化サブサンプリング処理、４色階調削減処理をおこなった後のデータフォーマットの差異と共通部に関して説明するための図である。
【図１７】本実施例に係る回転鏡像情報と回転鏡像処理の内容の対応付けを説明するための図である。
【図１８】図１５（ｂ）におけるデータ変換処理部での処理フローを示したフロー図である。
【図１９】図１８の４色スワップ処理時の圧縮データの変換例を示した図である。
【図２０】図１８の２色スワップ処理時の圧縮データの変換例を示した図である。
【図１】
2010118760.tif 000003
【図２】
2010118760.tif 000004
【図３】
2010118760.tif 000005
【図４】
2010118760.tif 000006
【図５】
2010118760.tif 000007
【図６】
2010118760.tif 000008
【図７】
2010118760.tif 000009
【図８】
2010118760.tif 000010
【図９】
2010118760.tif 000011
【図１０】
2010118760.tif 000012
【図１１】
2010118760.tif 000013
【図１２】
2010118760.tif 000014
【図１３】
2010118760.tif 000015
【図１４】
2010118760.tif 000016
【図１５】
2010118760.tif 000017
【図１６】
2010118760.tif 000018
【図１７】
2010118760.tif 000019
【図１８】
2010118760.tif 000020
【図１９】
2010118760.tif 000021
【図２０】
2010118760.tif 000022