(57)【要約】【課題】一般にファイルサイズが大きいカラー画像の画質をなるべく低下させずにファイルサイズを削減すること。【解決手段】圧縮制御部９０１は、バッファ部５０８からビットマップデータを読み出し、画像可逆圧縮部９０２、画像非可逆圧縮部９０３および属性可逆圧縮部９０４での圧縮処理の制御を行う。画像可逆圧縮部９０２は、バッファ部５０８の第１レイヤーバッファ５０９から文字およびグラフィックのビットマップデータを読み出し可逆圧縮を行う。画像非可逆圧縮部９０３は、バッファ部５０８の第２レイヤーバッファ５１０からイメージのビットマップデータを読み出し非可逆圧縮を行う。属性可逆圧縮部９０４は、バッファ部５０８の属性情報バッファ５１１から属性情報を読み出し可逆圧縮を行う。【選択図】図９
2011199744.tif 000002
【特許請求の範囲】
【請求項１】
２つ以上のオブジェクトを含む画像データが入力されると、前記２つ以上のオブジェクトをビットマップデータに展開する展開手段（２１１）と、
展開されたビットマップデータと、オブジェクトの属性とに基づいて前記画像データの属性情報を生成する生成手段（２１１）と、
前記展開されたビットマップデータの各々を、前記生成手段で生成された属性情報に基づきレイヤーを選択して２つ以上のレイヤーを有する格納手段（５０８）に格納する選択手段（５０７）と、
前記２つ以上のレイヤーにおいて、レイヤーごとに異なる圧縮方法により、前記展開されたビットマップデータの各々を圧縮する圧縮手段と
を備えたことを特徴とする画像形成装置。
【請求項２】
前記画像データは、ＰＤＬデータであり、
前記格納手段（５０８）のいずれかのレイヤーは、前記ＰＤＬデータ展開したイメージオブジェクトのビットマップデータを格納することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記選択手段は、前記属性情報に基づき、文字およびグラフィックオブジェクトとイメージオブジェクトとを異なるレイヤーに格納するようにレイヤーを選択すること（Ｓ７０１）を特徴とする請求項１または２に記載の画像形成装置。
【請求項４】
前記レイヤーごとに異なる圧縮方法は、可逆圧縮および非可逆圧縮を含むこと（２１２、８０１）を特徴とする請求項１ないし３のいずれかに記載の画像形成装置。
【請求項５】
前記格納手段の一部のレイヤーに格納されたデータは、前記属性情報に応じて前記圧縮手段の処理の前に削除されること（Ｓ１２０２）を特徴とする請求項１ないし４のいずれかに記載の画像形成装置。
【請求項６】
２つ以上のオブジェクトを含む画像データが入力されると、前記２つ以上のオブジェクトをビットマップデータに展開する展開ステップと、
展開されたビットマップデータと、オブジェクトの属性とに基づいて前記画像データの属性情報を生成する生成ステップと、
前記展開されたビットマップデータの各々を、前記生成ステップで生成された属性情報に基づきレイヤーを選択して２つ以上のレイヤーを有する格納手段に格納する選択ステップと、
前記２つ以上のレイヤーにおいて、レイヤーごとに異なる圧縮方法により、前記展開されたビットマップデータの各々を圧縮する圧縮ステップと
を備えたことを特徴とする画像形成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、PDLデータを受信し、それを展開して画像形成する画像形成装置および画像形成方法に関するものである。
【背景技術】
【０００２】
一般に、カラー画像はファイルサイズが大きいことから、カラー画像の画質をなるべく低下させずにファイルサイズを縮小する技術が要求される。例えば、文字、図形などの特定属性を持った領域がある場合でも特定属性部の画像の可視性を確保しつつ、処理対象画像の画質をあまり低下させることなくファイルサイズを削減する画像処理技術を施したものがある（例えば、特特許文献１参照）。特許文献１では、入力多値画像とこれに基づく2値画像を用意し、2値画像に基づき文字領域などの特定の属性を持った領域の画素を特定する。ついで、特定属性部領域の有無に応じて、特定属性部以外の画素を白画素に置き換えた２値画像を生成後に決定した色からなる特定属性部の画像を生成するとともに、特定属性部の画素を背景色で埋めた多値画像を生成して各々を符号化する。以上特許文献１によれば、文字、罫線などの特定の属性を持った領域がある場合でも特定属性部の画像の視認性を確保しつつ、それ以外の多値画像の画質をあまり低下させることなく、ファイルサイズの削減を行うことができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２０４２０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の先行技術では、文字領域などの特定属性部を検出する際に２値画像化するため、文字画像の品質を劣化させる可能性がある。さらに、文字領域以外の画素を白画素に変換するため、多値画像を圧縮した場合に多値画像の品質を劣化させる可能性がある。
【課題を解決するための手段】
【０００５】
上記目的を達成するために本発明の画像形成装置は、２つ以上のオブジェクトを含む画像データが入力されると、２つ以上のオブジェクトをビットマップデータに展開する展開手段（２１１）と、展開されたビットマップデータと、オブジェクトの属性とに基づいて画像データの属性情報を生成する生成手段（２１１）と、展開されたビットマップデータの各々を、生成手段で生成された属性情報に基づきレイヤーを選択して２つ以上のレイヤーを有する格納手段（５０８）に格納する選択手段（５０７）と、２つ以上のレイヤーにおいて、レイヤーごとに異なる圧縮方法により展開されたビットマップデータの各々を圧縮する圧縮手段とを備えたことを特徴とする。
【０００６】
また、本発明の画像形成方法は、２つ以上のオブジェクトを含む画像データが入力されると、２つ以上のオブジェクトをビットマップデータに展開する展開ステップと、展開されたビットマップデータと、オブジェクトの属性とに基づいて画像データの属性情報を生成する生成ステップと、展開されたビットマップデータの各々を、生成ステップで生成された属性情報に基づきレイヤーを選択して２つ以上のレイヤーを有する格納手段に格納する選択ステップと、２つ以上のレイヤーにおいて、レイヤーごとに異なる圧縮方法により、展開されたビットマップデータの各々を圧縮する圧縮ステップとを備えたことを特徴とする。
【発明の効果】
【０００７】
文字、図形などの特定の属性を持った領域がある場合でも特定属性部の画像の視認性を確保しつつ、さらにイメージの画質を低下させることなく、ファイルサイズの削減を行うことができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態のシステム構成を示す図である。
【図２】本発明の一実施形態のブロック構成を示す図である。
【図３】本発明の一実施形態のＰＤＬ処理フローを示す図である。
【図４】本発明の一実施形態のプリント処理フローを示す図である。
【図５】本発明の一実施形態のレンダリング出力構成を示す図である。
【図６】本発明の一実施形態のレンダラ出力処理フローを示す図である。
【図７】本発明の一実施形態のレイヤー選択処理フローを示す図である。
【図８】本発明の一実施形態のレンダリング出力の具体例を示す図である。
【図９】本発明の一実施形態の圧縮処理構成を示す図である。
【図１０】本発明の一実施形態の伸張処理構成を示す図である。
【図１１】本発明の一実施形態のレイヤー選択テーブルを示す図である。
【図１２】本発明の一実施形態のバッファ整理処理フローを示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための最良の形態について図面を参照して説明する。
［第１実施形態］
図１は本発明の一実施形態に係る画像処理システムの構成を示すブロック図である。このシステムではホストコンピュータ１３０及び２台の画像処理装置１００および１１０がＬＡＮ１４０に接続されているが、本発明における画像処理システムにおいては、これらの接続数に限られることはない。また、本実施形態では接続方法としてＬＡＮを使用しているが、これに限られることはない。例えば、ＷＡＮ（公衆回線）などの任意のネットワーク、ＵＳＢなどのシリアル伝送方式、セントロニクスやＳＣＳＩなどのパラレル伝送方式なども使用することができる。
【００１０】
ホストコンピュータ（以下、ＰＣと称する）１３０はパーソナルコンピュータの基本的な機能を有していればいずれのコンピュータを用いることができる。ＰＣ１３０は、ＬＡＮ１４０やＷＡＮなどのネットワークを介してＦＴＰやＳＭＢプロトコルなどを用い、ファイルを送受信したり電子メールを送受信したりすることができる。さらに、ＰＣ１３０は画像処理装置１００、１１０に対して、プリンタドライバを介して印刷を指示することもできる。画像処理装置１００および１１０は基本的に同じ構成であり、スキャナ部を有する。以降説明を簡略にするため、画像処理装置１００、１１０のうちの画像処理装置１１０を用いて、その構成を詳細に説明する。
【００１１】
画像処理装置１１０は、画像入力デバイスであるスキャナ部１１３、画像出力デバイスであるプリンタ部１１４、画像形成装置１１０全体の動作制御を行うコントローラ１１１およびユーザインターフェース（ＵＩ）である操作部１１２を備える。
【００１２】
図２は、本実施形態におけるコントローラの構成を示すブロック図である。ＣＰＵ２０１は、画像処理装置１１０全体を制御するためのコントローラである。ＣＰＵ２０１は、ＲＯＭ２０２に格納されているブートプログラムによりＯＳ（Operating System）を起動する。このＯＳ上で大容量ストレージ２０６に記憶されているコントローラプログラムや各種アプリケーションプログラムを実行させる。ＣＰＵ２０１は、データバス２０４などの内部バスによって後述の各部と接続されている。
【００１３】
ＲＡＭ２０３は、ＣＰＵ２０１の主メモリやワークエリア等の一時記憶領域として使用され、さらに、画像処理の一時記憶領域としても使用される。インターフェース制御部２０７は、ＮＩＣ（Network Interface Card）２０８などのネットワークＩ／Ｆを制御して、ＬＡＮなどのネットワークに対して、画像データをはじめとする様々なデータの送受信を行う。また、インターフェース制御部２０７はモデム２０９を制御し、電話回線を使用してデータの送受信を行う。
【００１４】
操作Ｉ／Ｆ２１０は、タッチパネルやハードキーを備えた操作部１１２からユーザの操作支持の入力を受け取る。同様に、操作Ｉ／Ｆ２１０はＬＣＤやＣＲＴなどを備えた操作部１１２を制御して、操作画面をユーザに対して表示する。レンダラ部２１１は、インターフェース制御部２０７を介して受信したデータに基づきプリンタ部１１４が処理可能なビットマップデータの生成を行う。圧縮部２１２は、ビットマップデータの圧縮を行う。伸張部２１３では圧縮部２１２で圧縮されたデータの伸張を行ってビットマップデータを出力する。
【００１５】
スキャナ画像処理部２１４は、スキャナ部１１３が読み込み、スキャナＩ／Ｆ２１５を介して受取った画像データの補正、加工及び編集を行う。なお、スキャナ画像処理部２１４は、受取った画像データがカラー原稿か白黒原稿か、文字原稿か写真原稿かなどを判定する。その判定結果は、画像データに関連付けられるが、こうした関連付けられた情報を属性データと称する。プリンタ画像形成部２１６は、プリンタ部で印字するための画像処理を行い、プリンタＩ／Ｆ２１７を介してプリンタ部１１４にビットマップデータとして送信する。
【００１６】
図３は、本発明の第１実施形態におけるコントローラ１１１のＰＤＬ（Page Description Language）処理フローを示す図である。
【００１７】
図３を参照すると、先ずコントローラ１１１のインターフェース制御部２０７は、ＬＡＮ１４０に接続したホストコンピュータ１３０からＰＤＬデータを受信し、受信したＰＤＬデータをＲＡＭ２０３又は大容量ストレージ２０６に一時記憶する（Ｓ３０１）。コントローラ１１１のＣＰＵ２０１は、Ｓ３０１で取得したＰＤＬデータを展開し、ディスプレイリストを生成する（Ｓ３０２）。
【００１８】
コントローラ１１１のレンダラ部２１１は、Ｓ３０２で生成したディスプレイリストをレンダリングし、予め定めたブロック単位（例えば、６４画素×６４画素）でＰＤＬを展開したPDLに対応するビットマップデータを生成する（Ｓ３０３）。Ｓ３０３の詳細は、図６を参照して後述する。なお、本実施形態の説明においては、ブロック単位に分割されたビットマップデータの実体をタイル画像データと、タイル画像データのヘッダ情報、画像データおよび属性データの各情報を合わせたデータ転送単位をパケットデータと呼ぶ。
【００１９】
コントローラ１１１の圧縮部２１２は、Ｓ３０３で生成したビットマップデータの解像度変換を実行し、ブロック単位で縮小されたビットマップデータを生成する（Ｓ３０４）。Ｓ３０４の詳細は、図７を参照して後述する。コントローラ１１１は、Ｓ３０４で生成した圧縮後のビットマップデータをＲＡＭ２０３又は大容量ストレージ２０６に格納する（Ｓ３０５）。
【００２０】
図４は、本発明の第１の実施形態におけるコントローラ１１１のプリント処理フローを示す図である。
【００２１】
図４を参照すると、先ずコントローラ１１１は、Ｓ３０５で格納した圧縮後のビットマップデータをＲＡＭ２０３又は大容量ストレージ２０６から読み出す（Ｓ４０１）。コントローラ１１１の伸張部２１３は、Ｓ４０１で取得した圧縮後のビットマップデータを伸張し、ブロック単位で伸張されたビットマップデータを生成する（Ｓ４０２）。Ｓ４０２の詳細は、図８を参照して後述する。コントローラ１１１のＣＰＵ２０１は、Ｓ４０２で伸張したビットマップデータをバッファメモリに展開し、ブロック単位のビットマップデータからページ単位のビットマップデータを生成し、ＲＡＭ２０３に格納する（Ｓ４０３）。コントローラ１１１のプリンタ画像形成部２１６は、Ｓ４０３で生成したページ単位のビットマップデータにプリンタ部で用いるための画像処理を行い、プリンタＩ／Ｆ２１７を介してプリンタ部２１４へ送信する（Ｓ４０４）。
【００２２】
図５は本発明の第１実施形態におけるレンダラ部２１１の詳細を示すブロック図である。
【００２３】
画像生成部５０１では、Ｓ３０２で生成したディスプレイリストを基に画像生成を行う。本実施形態の例では、画像生成部５０１は、文字生成部５０２、グラフィック生成部５０３、イメージ生成部５０４を備える。文字生成部５０２は、ディスプレイリストに含まれる文字オブジェクトのビットマップデータを生成する。グラフィック生成部５０３は、ディスプレイリストに含まれるグラフィックオブジェクトのビットマップデータを生成する。イメージ生成部５０４は、ディスプレイリストに含まれるイメージオブジェクトのビットマップデータを生成する。
【００２４】
画像論理描画演算部５０５は、ディスプレイリストに含まれるＲＯＰ（Raster Operation）コードにより論理描画演算による画像生成を行う。属性論理描画演算部５０６は、画像論理描画演算部５０５と同様に、ディスプレイリストに含まれるＲＯＰ（Raster Operation）コードにより論理描画演算することにより属性情報を生成する。レイヤー選択部５０７は、属性論理描画演算部５０６で生成した属性情報を基に出力レイヤーバッファの選択を行う。この選択の方法の詳細フローは、図６を参照して後述する。
【００２５】
バッファ部５０８は、第１レイヤーバッファ５０９、第２レイヤーバッファ５１０および属性情報バッファ５１１を備える。第１レイヤーバッファ５０９は、文字およびグラフィックのビットマップデータを格納するバッファである。第２レイヤーバッファ５１０は、イメージのビットマップデータを格納するバッファである。属性情報バッファ５１１は属性情報を格納するバッファである。
【００２６】
図６は、レンダリング出力の処理フローを示す図であり、図３に示すＳ３０３の詳細な処理フローを示している。
【００２７】
図６を参照すると、先ずレンダラ部２１１は、ディスプレイリストを基に描画オブジェクトの生成を行う（Ｓ６０１）。この際に、描画オブジェクトの種別に合わせ文字生成部５０２、グラフィック生成部５０３、イメージ生成部５０４でビットマップデータを生成する。
【００２８】
次に、レンダラ部２１１は、ディスプレイリストとＳ６０１で生成したデータを基に論理描画演算を行う（Ｓ６０２）。この際に、ビットマップデータおよび属性情報の論理描画演算を行う。レンダラ部２１１は、属性論理描画演算部５０６の結果を基に生成したビットマップデータを格納するレイヤーを選択する（Ｓ６０３）。レンダラ部２１１は、Ｓ６０３で選択したレイヤーバッファにビットマップデータを格納する（Ｓ６０４）。
【００２９】
図７は本実施形態のレイヤー選択部５０７の処理フローを示す図である。
【００３０】
図７を参照すると、先ずレイヤー選択部５０７において、属性論理描画演算部５０６の結果を基に、そのビットマップデータの属性情報により属性がイメージか否かを判断する（Ｓ７０１）。レイヤー選択部５０７において、Ｓ７０１の判断が（Ｙｅｓ）である場合、画像論理描画演算部５０５の演算結果を第２レイヤーバッファ５１０へ格納する（Ｓ７０２）。レイヤー選択部５０７において、Ｓ７０１の判断が（Ｎｏ）である場合、画像論理描画演算部５０６の演算結果を第１レイヤーバッファ５０９へ格納する（Ｓ７０３）。
【００３１】
次に、レイヤー選択部５０７において、イメージ生成部５０４によるイメージデータが存在するか否かを判断する（Ｓ７０４）。レイヤー選択部５０７において、Ｓ７０４の判断が（Ｙｅｓ）である場合にイメージ生成部５０４により生成されたイメージデータを第２レイヤーバッファ５１０へ格納する（Ｓ７０５）。
【００３２】
図８は、図６を参照して説明した本実施形態のレンダリング出力の処理フローの具体例を説明するための図である。図８を参照すると、印刷イメージ８０１は、文字オブジェクトの例としての２つの文字「Ａ」８０３および８０４並びにイメージオブジェクト８０５で構成される。レンダラ部２１１はブロック単位で処理するので、印刷イメージ８０１のうちブロックデータ８０２を展開する例を説明する。
【００３３】
文字生成部５０２は、文字オブジェクト「Ａ」８０３および８０４をブロック単位で展開することにより、ビットマップデータ８０６を生成する。ビットマップデータ８０６は、文字オブジェクト「Ａ」８０３および８０４の一部を展開したビットマップデータ８０７および８０８で構成される。また、イメージ生成部５０４は、イメージオブジェクト８０５をブロック単位で展開することにより、ビットマップデータ８０９を生成する。
【００３４】
画像論理描画演算部５０５は、ビットマップデータ８０６および８０９を基に論理描画演算によりブロックビットマップデータ８１０を生成する。レイヤー選択部５０７は、属性情報８１１を参照するとビットマップデータ８１３が文字であって、イメージではないので第１レイヤーバッファ５０９にビットマップデータ８１３を格納する。さらに、ビットマップデータ８１４はイメージなので第２レイヤーバッファ５１０にビットマップデータ８１４を格納する。属性データ８１１において、各属性情報種別８１２は黒色により文字属性を、灰色によりイメージ属性を、および白色により画像無し属性を示す。
【００３５】
図９は本発明の一実施形態に適した圧縮部２１２の処理を説明するための図である。圧縮制御部９０１は圧縮処理全体の制御を行う。圧縮制御部９０１は、バッファ部５０８からビットマップデータを読み出し、画像可逆圧縮部９０２、画像非可逆圧縮部９０３および属性可逆圧縮部９０４での圧縮処理の制御を行い、圧縮データバッファ９０５に圧縮データを格納する。
【００３６】
画像可逆圧縮部９０２は、バッファ部５０８の第１レイヤーバッファ５０９から文字およびグラフィックのビットマップデータを読み出し可逆圧縮を行う。画像非可逆圧縮部９０３は、バッファ部５０８の第２レイヤーバッファ５１０からイメージのビットマップデータを読み出し非可逆圧縮を行う。属性可逆圧縮部９０４は、バッファ部５０８の属性情報バッファ５１１から属性情報を読み出し可逆圧縮を行う。
【００３７】
図１０は、本発明の一実施形態に適した伸張部２１３の処理を説明するための図である。伸張制御部１００１は伸張処理全体の制御を行う。伸張制御部１００１は、圧縮データバッファ９０５から圧縮データを読み出し、画像可逆伸張部１００２、画像非可逆伸張部１００３および属性可逆伸張部１００４での伸張処理の制御を行って合成部１００５へ出力する。
【００３８】
画像可逆伸張部１００２は、伸張制御部１００２から入力された圧縮データを伸張して合成部１００５へ出力する。画像非可逆伸張部１００３は、伸張制御部１００２から入力された圧縮データを伸張して合成部９０５へ出力する。属性可逆伸張部１００４は、伸張制御部１００２から入力された圧縮データを伸張して合成部９０５へ出力する。合成部１００５は、画像可逆伸張部１００２、画像非可逆伸張部１００３および属性可逆伸張部１００４の出力データから合成処理を行ってビットマップデータを生成する。合成処理の詳細は図１１を参照して後述する。合成部１００５は、生成したビットマップデータおよび属性可逆伸張部１００４で生成されたデータを伸張バッファ１００６へ出力する。
【００３９】
図１１は、本実施形態の合成部１００５で用いるための合成テーブルを示す図である。
【００４０】
合成部１００５は、属性可逆伸張部１００５の出力結果を基にビットマップを生成する。属性可逆伸張部１００５の出力が文字およびグラフィックの属性を示す場合には、画像可逆伸張部１００２の出力データをビットマップとして生成する。属性可逆伸張部１００５の出力がイメージの属性を示す場合には、画像非可逆伸張部１００３の出力データをビットマップとして生成する。
【００４１】
以上の第１実施形態に従えば、文字、グラフィックなどの特定の属性を持った領域がある場合でも特定属性部の画像の視認性を確保しつつ、さらにイメージの画質を低下させることなく、ファイルサイズの削減を行うことができる。
【００４２】
［第２実施形態］
本発明の第２実施形態は、第１実施形態でのＳ３０４の圧縮処理を行う前にバッファ部５０８に格納されたデータの整理を行う。図１１は、Ｓ３０４の圧縮処理を行う前の本実施形態のデータ整理の処理フローを示す図である。
【００４３】
コントローラ１１１は、Ｓ３０３で生成したデータのうち、属性情報バッファ５１１に格納されたデータ内にイメージ属性が存在するか否かを判断する（Ｓ１２０１）。コントローラ１１１は、Ｓ１２０１で（Ｎｏ）と判断した場合、第２レイヤーバッファ５１０に格納されるビットマップデータの削除を行う（Ｓ１２０２）。
【００４４】
以上の第２実施形態に従えば、ブロック単位の処理において、画質を低下させることなくファイルサイズの削減を行うことができる。
【００４５】
［他の実施形態］
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【図１】
2011199744.tif 000003
【図２】
2011199744.tif 000004
【図３】
2011199744.tif 000005
【図４】
2011199744.tif 000006
【図５】
2011199744.tif 000007
【図６】
2011199744.tif 000008
【図７】
2011199744.tif 000009
【図９】
2011199744.tif 000010
【図１０】
2011199744.tif 000011
【図１１】
2011199744.tif 000012
【図１２】
2011199744.tif 000013
【図８】
2011199744.tif 000014