(57)【要約】【課題】  前景部分と背景部分とで構成されている画像の圧縮効率を向上させるための技術を提供すること。【解決手段】  ビットマップ圧縮部１０８は画像から前景部分を除去した背景画像を圧縮する。ベクトル化部１０４は前景部分のベクトル化処理を行う。圧縮処理で順次得られる圧縮データの累積データサイズが閾値を越えている場合には、背景画像に対する圧縮処理を再度行うようビットマップ圧縮部１０８を制御する。ベクトル化処理で順次得られるデータの累積データサイズが閾値を越えている場合には、前景画像に対するベクトル化処理を再度行うよう、ベクトル化部１０４を制御する。圧縮結果を伸張することで得られる背景画像と、ベクトル化処理結果に基づいて再構成される前景部分と、を合成し、合成した画像を出力する。【選択図】  図１
2008042345.tif 000002
【特許請求の範囲】
【請求項１】
前景部分と背景部分とで構成されている画像を入力する入力工程と、
前記画像から前記前景部分を除去した背景画像を生成する生成工程と、
前記背景画像に対して画像圧縮処理を行う第１の処理工程と、
前記前景部分に対してベクトル化処理を行う第２の処理工程と、
前記画像圧縮処理で順次得られる圧縮データの累積データサイズが閾値を越えている場合には、前記画像圧縮処理に係る第１のパラメータを変更し、当該変更した第１のパラメータを用いて前記背景画像に対する画像圧縮処理を再度行うよう、前記第１の処理工程を制御する第１の制御工程と
前記ベクトル化処理で順次得られるデータの累積データサイズが閾値を越えている場合には、前記ベクトル化処理に係る第２のパラメータを変更し、当該変更した第２のパラメータを用いて前記前景画像に対するベクトル化処理を再度行うよう、前記第２の処理工程を制御する第２の制御工程と、
前記第１の処理工程で圧縮された結果を伸張することで得られる背景画像と、前記第２の処理工程によって得られた処理結果に基づいて再構成される前景部分と、を合成し、当該合成した画像を出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項２】
前記前景部分は、文字・図形を含む領域であり、前記背景部分は、前記前景部分以外の領域であることを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記第１の制御工程では、画像圧縮処理で用いる量子化ステップを大きくし、当該大きくした量子化ステップを用いて前記背景画像に対する画像圧縮処理を再度行うよう、前記第１の処理工程を制御することを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記第２の制御工程では、ベクトル化における制御点の数を減少させるよう前記第２のパラメータを変更し、当該変更したパラメータを用いて前記前景画像に対するベクトル化処理を再度行うよう、前記第２の処理工程を制御することを特徴とする請求項１に記載の画像処理方法。
【請求項５】
前景部分と背景部分とで構成されている画像を入力する入力手段と、
前記画像から前記前景部分を除去した背景画像を生成する生成手段と、
前記背景画像に対して画像圧縮処理を行う第１の処理手段と、
前記前景部分に対してベクトル化処理を行う第２の処理手段と、
前記画像圧縮処理で順次得られる圧縮データの累積データサイズが閾値を越えている場合には、前記画像圧縮処理に係る第１のパラメータを変更し、当該変更した第１のパラメータを用いて前記背景画像に対する画像圧縮処理を再度行うよう、前記第１の処理手段を制御する第１の制御手段と
前記ベクトル化処理で順次得られるデータの累積データサイズが閾値を越えている場合には、前記ベクトル化処理に係る第２のパラメータを変更し、当該変更した第２のパラメータを用いて前記前景画像に対するベクトル化処理を再度行うよう、前記第２の処理手段を制御する第２の制御手段と、
前記第１の処理手段によって圧縮された結果を伸張することで得られる背景画像と、前記第２の処理手段によって得られた処理結果に基づいて再構成される前景部分と、を合成し、当該合成した画像を出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項６】
コンピュータに請求項１乃至４の何れか１項に記載の画像処理方法を実行させるためのプログラム。
【請求項７】
請求項６に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の符号化技術に関するものである。
【背景技術】
【０００２】
近年、デジタルコピー機とプリンタとを統合したデジタル複合機の開発が盛んになりつつある。デジタル複合機は、紙原稿をスキャンしてコピーを取る機能と、PCからの印刷データを印刷出力する機能と、の両方が搭載されている。
【０００３】
このような機器を作る場合、スキャン画像とページ記述言語（PDL）とを混在して印刷出力する場合などを考慮し、スキャン画像およびPDLを統一的に扱うための画像圧縮方式が必要となる。従来は、全部画像をビットマップデータに変換してから、JPEG等を用いて圧縮する方式を用いることが多かった。このため、原稿の文字・グラフィックス部に、圧縮による歪が生じていた。
【０００４】
一方、スキャン画像において、特に文字の部分をベクトルデータ化するという技術が知られている。このような技術の一例として、文書画像をブロックセレクション（BS）によって文字ブロックと背景部とに分け、文字部をベクトル化することにより領域単位に圧縮方法を変えるという技術がある。このような技術は、文字品質および拡大画像の画質を向上させる目的などに使われている。
【０００５】
しかし、この技術では、ページ全体を記録するメモリが必要とされる領域分割技術を使うことになり、その結果、分割処理のために必要なメモリには大容量のものが要求される。これにより、メモリに対するコストの増大が考えられる。また、分割処理には繰り返し演算が必要となるので、処理を高速に行うことは困難であった。
【０００６】
一方、高速処理を行うハードウェアに対応可能な領域分割技術として、画像のエッジ情報などを利用して、像域フラグと呼ばれる属性フラグを画素単位に割り当てる技術がある。これは主に、コピーの文字画質を改善するために、エッジ強調や色処理の方法を切り替えるための条件として使われるものである。しかし、この技術で領域分割を行う場合には、画素単位で属性フラグを参照し、何れの領域に属する画素であるのかを判定するので、係る技術とベクトル化技術との融合はできていない。
【０００７】
そこで、スキャン画像およびPDLを統一的に扱うように、高速手法でベクトルデータとビットマップデータの２つに分け、ビットマップデータは解像度を固定し（例えば６００dpi）、ベクトルデータは解像度に非依存にする、というようなデータ管理を行うことで、プリント解像度に依存しないデータ構成をとる方法が考えられる。しかし、このような構成ができたとしても、画像圧縮という観点からは、データを一定サイズ以下に符号量を制御ことが必要とされている。
【特許文献１】特開平09-223236号公報
【特許文献２】特開2000-322586号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は以上の問題に鑑みてなされたものであり、前景部分と背景部分とで構成されている画像の圧縮効率を向上させるための技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００１０】
即ち、前景部分と背景部分とで構成されている画像を入力する入力工程と、
前記画像から前記前景部分を除去した背景画像を生成する生成工程と、
前記背景画像に対して画像圧縮処理を行う第１の処理工程と、
前記前景部分に対してベクトル化処理を行う第２の処理工程と、
前記画像圧縮処理で順次得られる圧縮データの累積データサイズが閾値を越えている場合には、前記画像圧縮処理に係る第１のパラメータを変更し、当該変更した第１のパラメータを用いて前記背景画像に対する画像圧縮処理を再度行うよう、前記第１の処理工程を制御する第１の制御工程と
前記ベクトル化処理で順次得られるデータの累積データサイズが閾値を越えている場合には、前記ベクトル化処理に係る第２のパラメータを変更し、当該変更した第２のパラメータを用いて前記前景画像に対するベクトル化処理を再度行うよう、前記第２の処理工程を制御する第２の制御工程と、
前記第１の処理工程で圧縮された結果を伸張することで得られる背景画像と、前記第２の処理工程によって得られた処理結果に基づいて再構成される前景部分と、を合成し、当該合成した画像を出力する出力工程と
を備えることを特徴とする。
【００１１】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１２】
即ち、前景部分と背景部分とで構成されている画像を入力する入力手段と、
前記画像から前記前景部分を除去した背景画像を生成する生成手段と、
前記背景画像に対して画像圧縮処理を行う第１の処理手段と、
前記前景部分に対してベクトル化処理を行う第２の処理手段と、
前記画像圧縮処理で順次得られる圧縮データの累積データサイズが閾値を越えている場合には、前記画像圧縮処理に係る第１のパラメータを変更し、当該変更した第１のパラメータを用いて前記背景画像に対する画像圧縮処理を再度行うよう、前記第１の処理手段を制御する第１の制御手段と
前記ベクトル化処理で順次得られるデータの累積データサイズが閾値を越えている場合には、前記ベクトル化処理に係る第２のパラメータを変更し、当該変更した第２のパラメータを用いて前記前景画像に対するベクトル化処理を再度行うよう、前記第２の処理手段を制御する第２の制御手段と、
前記第１の処理手段によって圧縮された結果を伸張することで得られる背景画像と、前記第２の処理手段によって得られた処理結果に基づいて再構成される前景部分と、を合成し、当該合成した画像を出力する出力手段と
を備えることを特徴とする。
【発明の効果】
【００１３】
本発明の構成によれば、前景部分と背景部分とで構成されている画像の圧縮効率を向上させることができる。
【発明を実施するための最良の形態】
【００１４】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００１５】
［第１の実施形態］
図１は、本実施形態に係る画像処理装置に搭載された符号化処理部の機能構成を示すブロック図である。本実施形態に係る画像処理装置は、外部から入力されたＰＤＬを印刷出力する装置とするが、出力形態が如何なるものであったとしても、以下の説明の本質は変わらない。
【００１６】
同図において１０１は描画部で、外部からＰＤＬを受信すると、これをビットマップデータに展開する。ＰＤＬをビットマップデータに展開する技術については周知の技術である。
【００１７】
１０２は前判定部で、描画部１０１によって生成されたビットマップデータ（以下、オリジナル画像と呼称する場合がある）を複数の矩形（タイル）に分割し、それぞれの矩形について前景部分を含んでいるのか否かを判断する。ここで、オリジナル画像は、前景部分と背景部分とで構成されている。前景部分とは、後述するベクトル化の対象となるもので、オリジナル画像中の文字、表の枠線・罫線、図形、イラスト等である。従って、タイル内には、背景部分だけが含まれている場合もあれば、背景部分と前景部分とが含まれている場合もある。背景部分は前景部分以外の部分を差す。
【００１８】
そして前判定部１０２は、前景部分を含んでいるタイルについてはベクトル化部１０４と背景生成部１０７とに送出し、前景部分を含んでいないタイルについては背景生成部１０７に送出する。
【００１９】
１０４はベクトル化部で、前景部分を含んでいるタイルに対して周知のベクトル化処理を行い、アウトライン・ベクトルデータとその内部色を取得する。
【００２０】
１０７は背景生成部で、前景部分を含んでいないタイルについてはそのまま後段のビットマップ圧縮部１０８に送出する。また、前景部分を含んでいるタイルについては、このタイルから前景部分を除去した後、除去部分をその周囲の色で埋めたタイル（背景タイル）を生成し、ビットマップ圧縮部１０８に送出する。
【００２１】
１０８はビットマップ圧縮部で、背景生成部１０７から受けたタイル若しくは背景タイルをＪＰＥＧ方式などに従って圧縮する。圧縮方法については特には限定しない。
【００２２】
１１２はメモリで、ベクトル化部１０４やビットマップ圧縮部１０８による処理結果を一時的に記憶するためのものである。
【００２３】
１０６はベクトルレンダラで、メモリ１１２に格納されているアウトライン・ベクトルデータを読み出し、これに基づいてエッジ部分を復元し、更にメモリ１１２から内部色を読み出し、これでもってエッジに囲まれた領域を塗りつぶす。これにより、前景部分を復元する。なお、このように、ベクトル化処理がなされた結果を用いて、元の前景部分を復元する為の処理については周知の技術である。そして復元した前景部分を合成部１１０に送出する。
【００２４】
１０９はビットマップ伸張部で、メモリ１１２に格納されている圧縮データを読み出し、これを伸張することで、タイル若しくは背景タイルを復元する。そして復元したタイル若しくは背景タイルを合成部１１０に送出する。
【００２５】
１１０は合成部で、ビットマップ伸張部１０９から受けたタイル若しくは背景タイル上に、ベクトルレンダラ１０６が復元した前景部分を合成し、その合成結果である合成画像を出力する。上述の通り、この出力は印刷出力であるので、出力先は画像処理装置が有するプリンタエンジンであるが、出力先については特に限定するものではない。
【００２６】
１１１は符号量監視部で、ベクトル化部１０４により順次生成される処理結果データの累積データサイズや、ビットマップ圧縮部１０８により順次生成される圧縮データの累積データサイズを監視している。そして、ベクトル化部１０４により順次生成される処理結果データの累積データサイズが閾値を越えた場合には、このデータサイズを所定サイズ以下に押さえる為に、ベクトル化に係る処理パラメータを変更し、この変更したパラメータに従ってベクトル化部１０４に再度処理を実行させる。また、ビットマップ圧縮部１０８により順次生成される圧縮データの累積データサイズが閾値を越えた場合には、このデータサイズを所定サイズ以下に押さえる為に、画像圧縮に係る処理パラメータを変更し、この変更したパラメータに従ってビットマップ圧縮部１０８に再度処理を実行させる。符号量監視部１１１による制御処理については図４を用いて後述する。
【００２７】
以上が本実施形態に係る画像処理装置が有する符号化処理部である。以下の説明では同図に示した各部は全てハードウェアでもって構成されているものとして説明するが、部分的にソフトウェアでもって実現しても良い。
【００２８】
図２は、描画部１０１が生成したオリジナル画像に基づいて、ベクトル化結果と圧縮データとを生成し、メモリ１１２に格納する一連の処理のフローチャートである。
【００２９】
先ず、オリジナル画像が前判定部１０２に入力されると、ステップＳ２０１では、前判定部１０２がこのオリジナル画像を複数のタイルに分割する。そしてステップＳ２０２ではそのうちの１つのタイル（注目タイル）を選択し、この注目タイル内に前景部分が含まれているのか否かをチェックする。
【００３０】
ここで、画像を構成する各画素には、その画素の属性値が割り当てられている。例えばある画素にはその画素がＣＧに含まれていることを示す属性値が割り当てられているし、ある画素にはその画素が文字に含まれていることを示す属性値が割り当てられている。従ってステップＳ２０２では、注目タイルを構成する各画素に割り当てられた属性値を参照し、注目タイルを構成する各画素の属性値が全て「背景部分を示す値」であるのかをチェックする。
【００３１】
そして、全ての画素の属性値が「背景部分を示す値」を有するのであれば、この注目タイルは前景部分を含んでいないタイルであると判断されるし、所定数以上の画素の属性値が「前景部分を示す値」を有するのであれば、この注目タイルは前景部分を含んでいるタイルを判断することができる。なお、それぞれのタイルに前景部分が含まれているか否かを判断する方法はこれに限定するものではなく、様々な方法がある。
【００３２】
例えば、それぞれのタイルの属性値を記したヘッダがＰＤＬに付加されている場合には、このヘッダを参照し、注目タイルに前景部分が含まれているのか否かを判断しても良い。
【００３３】
図２に戻って、注目タイルに前景部分が含まれていない場合、即ち、注目タイルは背景部分を構成しているものである場合には処理をステップＳ２０４に進め、前判定部１０２は、この注目タイルを背景生成部１０７に送出する。背景生成部１０７はこの注目タイルをそのままビットマップ圧縮部１０８に送出するので、ビットマップ圧縮部１０８はこの注目タイルを圧縮する処理を行う。そして圧縮した結果をメモリ１１２に格納する。
【００３４】
一方、注目タイルに前景部分が含まれている場合には、処理をステップＳ２０３に進め、この注目タイルに対して以下説明する各処理を実行する。
【００３５】
図３は、ステップＳ２０３における処理の詳細を示すフローチャートである。ここでは前景部分の一例として文字／線画が記されている部分を用いる。
【００３６】
先ずステップＳ３０１では、ベクトル化部１０４は、注目タイルから文字／線画が記されている部分を抽出し、ビットマップ画像として生成する。次に、ステップＳ３０２では、このビットマップ画像に対して周知のラベリング処理を行い、同じ領域に属するものとして判断された画素群毎にラベル番号を付与する。
【００３７】
ステップＳ３０３では、ベクトル化部１０４は、それぞれのラベル番号が付けられた領域毎に、その領域の形状に沿った輪郭を、アウトライン・ベクトル化する。
【００３８】
ステップＳ３０４では、背景生成部１０７は、注目タイルから文字／線画が記されている部分を除去し、除去部分を、その周辺の色や注目タイル全体の平均色で埋める。これにより、上記背景タイルを生成することができる。
【００３９】
そしてステップＳ３０５では、ビットマップ圧縮部１０８は、この背景タイルを圧縮する。そして圧縮した結果をメモリ１１２に格納する。
【００４０】
図２に戻って、以上のステップＳ２０２からステップＳ２０４における処理を全てのタイルについて行っている場合にはステップＳ２０５を介して本処理を終了するが、全てのタイルについて処理を行っていない場合には、ステップＳ２０５を介してステップＳ２０２に戻し、未だ処理対象となっていないタイルについて以降の処理を行う。
【００４１】
以上の処理により、前景部分を含まないタイルについてはビットマップ圧縮部１０８により圧縮されてメモリ１１２に格納される。一方、前景部分を含んでいるタイルについては、前景部分に対するベクトル化処理の結果と、この前景部分を除去した除去部分に所定の色を埋めることで生成した背景タイルを圧縮したものと、がメモリ１１２に格納される。
【００４２】
図７は、前景部分としての文字を含むタイルを例に取り、このタイルに対する上記処理を説明する図である。
【００４３】
７１は、前景部分としての文字「Ｈ」を含むタイルである。７２は、前景部分である。７３は、前景部分に対するアウトライン・ベクトル化の様子を示している。前景部分に対してラスタースキャンを行い、最初の有意画素を検出し、そこから境界追跡を行う。領域の境界をたどっていき、開始点に戻ったところで終了する。同図の例では、各点の座標を記録しておき、この間を直線で結べば、もとの画像の輪郭が再現でき、また元の画像の内部色を抽出しておいて、この色で塗り潰せば、原画が再現できることになる。同図では直線のみで元の前景部分を構成しているが、曲線で構成する場合は、公知のベジェ関数近似を用いることができる。これをアウトライン・ベクトルと呼ぶ。
【００４４】
７４は、タイルから前景部分を切り取った残りである。この状態では、もともとの背景と切り取った部分との境界に強いエッジがあり、後段のビットマップ圧縮ではあまり高圧縮率は望めない。７５はこの抜き取った部分をタイル内の平均色やその周辺色で埋めたものである。これにより、もともとの背景と切り取った部分との境界には弱いエッジが残ることになり、７４に示した画像に比べてより高い圧縮率が望める。本実施形態では、このような画像（７５）がビットマップ圧縮部１０８に送出される。
【００４５】
図４は、符号量監視部１１１による監視の結果に基づいて、ベクトル化部１０４やビットマップ圧縮部１０８を制御する処理のフローチャートである。
【００４６】
上述の通り、符号量監視部１１１は、ベクトル化部１０４により順次生成される処理結果データの累積データサイズや、ビットマップ圧縮部１０８により順次生成される圧縮データの累積データサイズを監視している。ステップＳ４０１では、符号量監視部１１１は、ベクトル化部１０４により順次生成された処理結果データの累積データサイズがθ１に達したか否かをチェックする。達している場合には処理をステップＳ４０３に進める。
【００４７】
ステップＳ４０３では、符号量監視部１１１は、ベクトル化に係る処理パラメータを変更し、この変更したパラメータに従って再度処理を実行するようベクトル化部１０４に指示するので、ベクトル化部１０４はこの指示に従って処理を実行する。
【００４８】
そもそもベクトル化処理結果の符号量が多い原因は、背景部分でありながら前景部分として判断されてベクトル化がなされている場合や、もともと細かい図形が画像中に多く含まれている場合などが考えられる。従って、ベクトル化処理結果の符号量をより小さくするためには、タイル中に前景部分が含まれているか否かを判定するための条件を変更したり、ベクトル化における制御点を削除したり、前景部分を含むタイルのビットマップ化を行うなど、様々な処理を行う必要がある。ステップＳ４０３における処理については、図５を用いて後述する。
【００４９】
一方、ステップＳ４０１におけるチェックの結果、ベクトル化部１０４により順次生成される処理結果データの累積データサイズがθ１に達していない場合には、処理をステップＳ４０２に進める。ステップＳ４０２では、ビットマップ圧縮部１０８により順次生成される圧縮データの累積データサイズが閾値θ２に達したか否かをチェックする。達している場合には、処理をステップＳ４０４に進める。
【００５０】
ステップＳ４０４では、画像圧縮処理で用いる量子化ステップを大きくし、大きくした量子化ステップを用いて背景部分に対する画像圧縮処理を再度行うよう、ビットマップ圧縮部１０８に指示するので、ビットマップ圧縮部１０８はこの指示に従った処理を実行する。なおここでは圧縮率を上げる為に、量子化ステップを上げたが、これ以外の方法で圧縮率を上げるようにしても良い。
【００５１】
図５は、上記ステップＳ４０３における処理の詳細を示すフローチャートである。
【００５２】
ステップＳ５０１では、ベクトル化における制御点の数を減少させるようパラメータを変更する。より詳しくは、ベクトルをベジェ近似していたものを、曲率の小さいところは直線近似に置き換えていくことにより、制御点数の削減を行っていく。
【００５３】
ステップＳ５０２では、制御点の座標値を整数、１／２、１／４、１／１０（小数第一位）の４段階に変更できるようにする。このままでは、データ量が減ったようには見えないが、この後に、ZIP圧縮などテキストベースのユニバーサル圧縮をすると５０％〜８０％程度圧縮率をあげることができる。ところが、制御点の削減をしていくと、近似誤差が大きくなる。
【００５４】
そこでステップＳ５０４ではこの近似誤差を求め、求めた近似誤差と閾値θ３との大小比較を行う。この近似誤差の求め方については特に限定するものではないが、制御点の削減前と削減後とで、ベクトル化した対象の輪郭の差を求める。
【００５５】
この大小比較の結果、近似誤差が閾値θ３に達していない場合には本処理を終了するが、達している場合には処理をステップＳ５０５に進める。ステップＳ５０５では、そのままベクトル化処理を行い、ベクトル化処理を越えると、ベクトルレンダラ１０６はこのベクトル処理結果を用いて前景部分を復元する。そしてステップＳ５０６では、復元した前景部分に対してビットマップ圧縮部１０８により圧縮を行う。
【００５６】
図６は、制御点の削減を説明する図である。アウトライン・ベクトル化の最初の段階では、ベクトルデータを例えば３次ベジェ近似している。３次ベジェ曲線は、tを0〜1のパラメータとしてP1(1-t)3+3C1t(t-1)2+3C2t2(1-t)+P2t3のように表せる。このように３次ベジェ（P1,C1,C2,P2）では、４点で表せるし、２次ベジェ（P1,C0，P2）では、３点で表せるし、直線（P1,P2）ではｍ２点で表せることになる。
【００５７】
もし曲率が許容範囲にあれば、近似方式を３次、２次、直線と順番に変えていくことにより、制御点数を削減できる。曲率判定方法は、最小値(距離(C1,P1P2),距離(C2,P1P2))や線分P1P2からの最大距離などにより、原データと近似との近似誤差を測定する方法で、削減の可否を判定していくことができる。
【００５８】
［第２の実施形態］
第１の実施形態では、符号化処理部に入力されるものはＰＤＬデータであったが、本実施形態では、画像処理装置が有するスキャナ部によりスキャン画像を符号化処理部に入力する場合について説明する。
【００５９】
図８は、本実施形態に係る画像処理装置に搭載された符号化処理部の機能構成を示すブロック図である。同図に示す如く、本実施形態に係る符号化処理部は、図１に示した機能構成において、描画部１０１をスキャナ部８０１に置き換えた機能構成を有する。
【００６０】
以上が本実施形態に係る画像処理装置が有する符号化処理部である。以下の説明では同図に示した各部は全てハードウェアでもって構成されているものとして説明するが、部分的にソフトウェアでもって実現しても良い。
【００６１】
スキャナ部８０１が記録媒体上に記録された画像を読み取ることで取得したスキャン画像（オリジナル画像）に基づいて、ベクトル化結果と圧縮データとを生成し、メモリ１１２に格納する一連の処理のフローチャートは図２に示したものと同じであるが、ステップＳ２０３における処理のみが若干第１の実施形態とは異なる。図１０は、本実施形態に係るステップＳ２０３における処理の詳細を示すフローチャートである。
【００６２】
図１０に示したフローチャートは、図３に示したフローチャートにおいてステップＳ３０１における処理をステップＳ９１１に置き換えた点のみが異なる。ステップＳ９１１では、オリジナル画像を二値化して、二値画像を生成する。そしてこの二値画像を処理対象としてステップＳ３０２以降の処理を行う。また、ステップＳ３０４では、平均色を求める場合、求めた平均色を二値化したものを用いる。
【００６３】
［第３の実施形態］
図１１は、上記ステップＳ４０３に適用可能な処理のフローチャートである。ステップＳ４１１では、ベクトル化効率を求める。ベクトル化効率とは、ベクトル化により発生した制御点数の合計を、そのベクトルで表される閉ループ内の画素数で割ったものと定義する。これが大きいときは、微小閉ループが多いことがわかる。
【００６４】
従って、このベクトル化効率が閾値よりも大きい場合には処理をステップＳ４１２を介してステップＳ４１４に進め、そのままベクトル化処理を行い、ベクトル化処理を越えると、ベクトルレンダラ１０６はこのベクトル処理結果を用いて前景部分を復元する。そしてステップＳ４１５では、復元した前景部分に対してビットマップ圧縮部１０８により圧縮を行う。
【００６５】
図１２は、上記ステップＳ４０４に適用可能な処理のフローチャートである。ステップＳ４２１では、既に圧縮処理済みの領域の色数をカウントし、カウントした色の数が閾値以上であるのか否かをチェックする。このチェックの結果、閾値以上である場合には処理をステップＳ４２２に進め、圧縮処理を行っているタイルについてはベクトル化処理を行う。
【００６６】
［第４の実施形態］
上記実施形態では、図１，８に示した各部はハードウェアでもって実現していたが、図１，８に示した各部（スキャナ部８０１、メモリ１１２を除く）をソフトウェアでもって実現しても良い。その場合、このソフトウェアは、複合機などの画像形成装置はもちろんのこと、ＰＣ（パーソナルコンピュータ）によって実現しても良い。図９は、このソフトウェアを実行可能なコンピュータのハードウェア構成を示すブロック図である。
【００６７】
９０１はＣＰＵで、ＲＡＭ９０２やＲＯＭ９０３に格納されているプログラムやデータを用いて本コンピュータ全体の制御を行うと共に、本コンピュータを適用した装置が行う各処理を実行する。
【００６８】
９０２はＲＡＭで、外部記憶装置９０５からロードされたプログラムやデータや、Ｉ／Ｆ９０７を介して外部から受信したデータ（スキャナ部８０１からのデータやＰＤＬデータ等）を一時的に記憶する為のエリアを有する。またＲＡＭ９０２は、ＣＰＵ９０１が各処理を実行する際に使用するワークエリアも有する。即ち、ＲＡＭ９０２は各種のエリアを適宜提供することができる。
【００６９】
９０３はＲＯＭで、本コンピュータの設定データやブートプログラムなどを格納する。
【００７０】
９０４は操作部で、キーボードやマウス、操作パネル等により構成されており、本コンピュータの操作者が操作することで、ＣＰＵ９０１に対して各種の指示を入力することができる。
【００７１】
９０５は外部記憶装置で、ハードディスクに代表される大容量情報記憶装置であって、ここにはＯＳ（オペレーティングシステム）や、本コンピュータを適用する装置が行う各処理をＣＰＵ９０１に実行させるためのプログラムやデータ（上記ソフトウェア）が保存されている。このプログラムやデータは、ＣＰＵ９０１による制御に従って適宜ＲＡＭ９０２にロードされる。そしてＣＰＵ９０１はこのロードされたプログラムやデータを用いて、各処理を実行することになる。
【００７２】
９０６は表示部で、ＣＲＴや液晶画面、タッチパネルなどにより構成されており、ＣＰＵ９０１による処理結果を画像や文字などでもって表示する。
【００７３】
９０７はＩ／Ｆで、外部とのデータ通信を行うためのインターフェースとして機能するものである。
【００７４】
９０８は上述の各部を繋ぐバスである。
【００７５】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００７６】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７７】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７８】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００７９】
【図１】本発明の第１の実施形態に係る画像処理装置に搭載された符号化処理部の機能構成を示すブロック図である。
【図２】描画部１０１が生成したオリジナル画像に基づいて、ベクトル化結果と圧縮データとを生成し、メモリ１１２に格納する一連の処理のフローチャートである。
【図３】ステップＳ２０３における処理の詳細を示すフローチャートである。
【図４】符号量監視部１１１による監視の結果に基づいて、ベクトル化部１０４やビットマップ圧縮部１０８を制御する処理のフローチャートである。
【図５】ステップＳ４０３における処理の詳細を示すフローチャートである。
【図６】制御点の削減を説明する図である。
【図７】前景部分としての文字を含むタイルを例に取り、このタイルに対する上記処理を説明する図である。
【図８】本発明の第２の実施形態に係る画像処理装置に搭載された符号化処理部の機能構成を示すブロック図である。
【図９】ソフトウェアを実行可能なコンピュータのハードウェア構成を示すブロック図である。
【図１０】本発明の第２の実施形態に係るステップＳ２０３における処理の詳細を示すフローチャートである。
【図１１】ステップＳ４０３に適用可能な処理のフローチャートである。
【図１２】ステップＳ４０４に適用可能な処理のフローチャートである。
【図１】
2008042345.tif 000003
【図２】
2008042345.tif 000004
【図３】
2008042345.tif 000005
【図４】
2008042345.tif 000006
【図５】
2008042345.tif 000007
【図６】
2008042345.tif 000008
【図７】
2008042345.tif 000009
【図８】
2008042345.tif 000010
【図９】
2008042345.tif 000011
【図１０】
2008042345.tif 000012
【図１１】
2008042345.tif 000013
【図１２】
2008042345.tif 000014