(57)【要約】【課題】  ベクトル化処理をより高速に行うための技術を提供すること。【解決手段】  文字／線画の画像と判断された注目矩形に対して行うラベリング処理の処理時間が閾値以上となった場合には、注目矩形において未だラベリング処理対象としていない未処理領域について解析処理を行う（Ｓ４０１）。そして、この解析結果に応じて、減色処理、低解像度化処理の何れかを未処理領域について行う（Ｓ４０２，Ｓ４０３，Ｓ４０４）。そしてこの処理結果についてラベリング処理（Ｓ３０２）を行う。そして、ラベリング処理結果に基づいてベクトルデータを生成する（Ｓ３０６）。【選択図】  図４
2008022529.tif 000002
【特許請求の範囲】
【請求項１】
受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段と、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段と、を備える画像処理装置であって、
前記ラベリング手段は、前記ラベリング処理の時間が閾値以上かかると判断した場合、前記画像の減色画像あるいは前記画像の低解像度化画像に対して前記ラベリング処理を実行することを特徴とする画像処理装置。
【請求項２】
前記ラベリング手段は、前記ラベリング処理の時間が閾値以上かかると判断した場合、更に、前記画像内の色数が閾値以上であるか否か判断し、
前記画像内の色数が閾値以上であると判断した場合は、前記画像の減色画像を用いて前記ラベリング処理を実行し、
前記画像内の色数が閾値より少ないと判断した場合は、前記画像の低解像度化画像に対して前記ラベリング処理を実行する、ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記ラベリング手段は、前記ラベリング処理の経過時間が閾値以上になったか否かに基づいて、前記ラベリング処理の時間が閾値以上かかるか否か判断することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記ラベリング手段は、前記ラベリング処理の経過時間が閾値以上になった場合、前記ラベリング処理が未実行の領域については、前記減色画像あるいは前記低解像度化画像を用いて前記ラベリング処理を行うことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記ラベリング手段は、前記画像の特性に基づいて前記ラベリング処理にかかる時間を予測し、当該予測した時間に基づいて前記ラベリング処理の時間が閾値以上かかるか否か判断することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記ラベリング手段は、前記ラベリング処理が閾値以上かかると判断した場合、更に、前記画像内の閾値以上のエッジ強度を有するエッジ数が閾値以上であるか否か判断し、
前記画像内のエッジ数が閾値以上であると判断した場合は、前記画像の減色画像を用いて前記ラベリング処理を実行し、
前記画像内のエッジ数が閾値より小さい場合は、前記画像の低解像度化画像に対して前記ラベリング処理を実行する、ことを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記画像は、スキャンして得た画像を閾値サイズで分割することにより得た矩形画像であることを特徴とする請求項１に記載の画像処理装置。
【請求項８】
前記ベクトル化手段で生成されたベクトルデータを用いて印刷処理を行う印刷手段を、更に有することを特徴とする請求項１に記載の画像処理装置。
【請求項９】
受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段と、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段と、を備える画像処理装置であって、
前記ベクトル化手段により生成されたベクトルデータの量が多い場合、前記画像の減色画像あるいは前記画像の低解像度化画像を用いて、前記ラベリング手段によるラベリング処理と前記ベクトル化手段によるベクトルデータ生成処理とを、実行させるように制御することを特徴とする画像処理装置。
【請求項１０】
更に、前記ラベリング手段あるいは前記ベクトル化手段による処理時間が、閾値以上かかると判断した場合、前記画像の減色画像あるいは前記画像の低解像度化画像を用いて、前記ラベリング手段によるラベリング処理と前記ベクトル化手段によるベクトルデータ生成処理とを、実行させるように制御することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
ラベリング手段が、受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング工程と、
ベクトル化手段が、前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化工程と、を備える画像処理方法であって、
前記ラベリング工程では、前記ラベリング処理の時間が閾値以上かかると判断した場合、前記画像の減色画像あるいは前記画像の低解像度化画像に対して前記ラベリング処理を実行することを特徴とする画像処理方法。
【請求項１２】
前記ラベリング工程では、前記ラベリング処理の時間が閾値以上かかると判断した場合、更に、前記画像内の色数が閾値以上であるか否か判断し、
前記画像内の色数が閾値以上であると判断した場合は、前記画像の減色画像を用いて前記ラベリング処理を実行し、
前記画像内の色数が閾値より少ないと判断した場合は、前記画像の低解像度化画像に対して前記ラベリング処理を実行する、ことを特徴とする請求項１１に記載の画像処理方法。
【請求項１３】
ラベリング手段が、受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング工程と、
ベクトル化手段が、前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化工程と、を備える画像処理方法であって、
前記ベクトル化工程で生成されたベクトルデータの量が多い場合、前記画像の減色画像あるいは前記画像の低解像度化画像を用いて、前記ラベリング手段によるラベリング処理と前記ベクトル化手段によるベクトルデータ生成処理とを、実行させるように制御することを特徴とする画像処理方法。
【請求項１４】
コンピュータを、
受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段、として機能させるためのコンピュータプログラムであって、
前記ラベリング手段では、前記ラベリング処理の時間が閾値以上かかると判断した場合、前記画像の減色画像あるいは前記画像の低解像度化画像に対して前記ラベリング処理を実行させることを特徴とするコンピュータプログラム。
【請求項１５】
前記ラベリング手段では、前記ラベリング処理の時間が閾値以上かかると判断した場合、更に、前記画像内の色数が閾値以上であるか否か判断し、
前記画像内の色数が閾値以上であると判断した場合は、前記画像の減色画像を用いて前記ラベリング処理を実行し、
前記画像内の色数が閾値より少ないと判断した場合は、前記画像の低解像度化画像に対して前記ラベリング処理を実行する、ことを特徴とする請求項１４に記載のコンピュータプログラム。
【請求項１６】
コンピュータを、
受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段、として機能させるためのコンピュータプログラムであって、
前記ベクトル化手段により生成されたベクトルデータの量が多い場合、前記画像の減色画像あるいは前記画像の低解像度化画像を用いて、前記ラベリング手段によるラベリング処理と前記ベクトル化手段によるベクトルデータ生成処理とを、実行させるように制御することを特徴とするコンピュータプログラム。
【請求項１７】
請求項１４乃至１６の何れか１項に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ベクトル符号化処理技術に関するものである。
【背景技術】
【０００２】
複写機や複合機等のシステムにおいて、スキャン画像の再利用を実現する技術としてベクトル化があり、適用例は特許文献１，２に開示されている。効率的な再利用の観点から、スキャンノイズを除去した画像をベクトル化の対象とすることが望まれている。
【０００３】
その一方で、ノイズ除去は必要となるデータ（例えば網点などの微細なドット）を除去してしまうこともあり、高品位にプリントアウトする上で、元のスキャン画像が必要となっていた。
【特許文献１】特開2004-246577号公報
【特許文献２】特開2004-265384号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ここで、上記で説明した従来技術を背景に、本出願人は、以下で説明するようなベクトル化処理を用いた階層符号化を考えている。
【０００５】
図１１は、画像処理装置（複写機や複合機等）が有するコントローラ部の機能構成を示すブロック図である。図１２は、この画像処理装置のコントローラ部が行う処理のフローチャートである。以下では図１２を用いて、図１１に示した各部の動作について説明する。
【０００６】
スキャン部から出力された画像データは判定部１１０４に入力される。判定部１１０４は、入力された画像を複数の矩形（矩形状の画像）に分割する。図１２は、分割された矩形毎に行われる処理のフローチャートを示している。以下の説明では、注目矩形についての処理を説明するが、他の矩形についても、同様の処理が行われる。
【０００７】
ステップＳ１２０１では、判定部１１０４は、注目矩形が文字／線画の画像であるのか、自然画像であるのかを判定する。この判定において、注目矩形に文字／線画の画像と自然画像とが混在している場合には、自然画像と判定する。
【０００８】
この判定の結果、注目矩形が自然画像であると判定された場合には処理をステップＳ１２０２に進め、ビットマップ圧縮部１１０６は、この注目矩形に対して国際標準のＪＰＥＧ方式に従った圧縮処理を行う。そしてビットマップ圧縮部１１０６は、圧縮した注目矩形をステップＳ１２０３においてＨＤＤ１１０７に格納する。
【０００９】
この格納された圧縮注目矩形は、ステップＳ１２０４において、印字エンジン（印刷部）による印刷のタイミングに合わせてビットマップ伸張部１１１３によってＨＤＤ１１０７から読み出され、伸張される。この伸張処理は、上記圧縮処理に対応したものである。
【００１０】
伸張された注目矩形は、ステップＳ１２０５で画像処理部１１１２によって様々な画像処理が施され、ステップＳ１２０６で、印字エンジンに出力される。
【００１１】
一方、上記ステップＳ１２０１で、注目矩形が文字／線画の画像であると判定された場合には、処理をステップＳ１２０７に進める。ステップＳ１２０７では、注目矩形の画像をコピーしたものを差分画像生成部１１１０に送信する。またステップＳ１２０８では、オリジナルの注目矩形をＰＤＬライク画像生成部１１０５に送信する。
【００１２】
ＰＤＬライク画像生成部１１０５では、受信した注目矩形に対してノイズ除去を行う。その理由は、一般的に、スキャナから受けた画像にはスキャンノイズが存在しており、ノイズをベクトル化すると符号量の増加を招いてしまうからである。
【００１３】
続いて、ステップＳ１２０９では、ベクトル処理部１１０８は、ＰＤＬライク画像生成部１１０５によってノイズ除去処理された画像に対してベクトル化処理（ベクトルデータへの変換処理）を行う。そして、ステップＳ１２１０では、このベクトル化に関する処理の結果を、ＨＤＤ１１０７に格納する。ベクトル処理部１１０８は、図１３に示す構成を有する。
【００１４】
図１３は、ベクトル処理部１１０８の構成を示すブロック図である。同図に示す如く、ベクトル処理部１１０８は、ラベリング部１３０１とベクトル化部１３０２とで構成されている。
【００１５】
ラベリング部１３０１は、図１４に示す如く、公知のラベリング技術により注目矩形中のオブジェクト（文字、グラデーション領域、背景等）を抽出する。そして、ベクトル化部１３０２は、ラベリング部１３０１で抽出したオブジェクトをベクトル化し、その結果であるベクトル化データをＨＤＤ１１０７に格納する。
【００１６】
ラベリング部１３０１における処理を簡単に説明する。注目矩形を構成している各ラインの画素をスキャンし、ほぼ同じ画素値であれば同一色とみなしながら、同一色とみなされた区間についてスタート位置(Xstart)と終了位置(Xend)と色情報をテーブルに格納する。例えば、位置(x,y)=(0,0)〜(0,9)において、画素がモノクロ値で、(130,130,129,129,131,131,130,130,130,129)と並んでいたら、この区間についてXstart=(0,0),Xend=(0,9),level=130という情報をテーブルに格納する。
【００１７】
続いて、注目矩形中の全ラインについてこの処理を終えると、ライン間で接している同一色区間を連結させて同一色領域を生成する。この同一色領域をオブジェクトととして、各オブジェクトの輪郭を構成する座標情報をベクトル化部１３０２に通知する。
【００１８】
図１２に戻って、次にステップＳ１２１１では、ステップＳ１２１０でＨＤＤ１１０７に格納されたベクトル化データをコピーし、コピーしたベクトル化データをベクトルレンダラ１１０９に出力する。ベクトルレンダラ１１０９は、受けたベクトル化データに基づいて注目矩形内の画像を復元する。このベクトルデータから復元された注目矩形をベクトル復元画像と呼称する。ベクトル復元画像は、差分画像生成部１１１０に送出される。
【００１９】
ステップＳ１２１２では、差分画像生成部１１１０は、オリジナルの注目矩形を判定部１１０４から受信し、このオリジナルの注目矩形の画像と、ベクトル復元画像との差分を求めることで差分画像を生成する。この差分画像を構成する各画素は、オリジナルの注目矩形における対応する画素と、ベクトル復元画像における対応する画素との差分画素値を有するものである。
【００２０】
ステップＳ１２１３では、ビットマップ圧縮部１１０６が、この差分画像を圧縮し、ステップＳ１２１４で、この圧縮した差分画像をＨＤＤ１１０７に格納する。
【００２１】
ステップＳ１２１５では先ず、ベクトルレンダラ１１０９は、ステップＳ１２１０でＨＤＤ１１０７に格納されたベクトル化データに基づいてベクトル復元画像を生成し、合成部１１１１に送出する。更に、ビットマップ伸長部１１１３は、ステップＳ１２１４でＨＤＤ１１０７に格納された圧縮差分画像を伸長し、合成部１１１１に送出する。合成部１１１１は、ビットマップ伸長部１１１３で伸張した差分画像と、ベクトルレンダラ１１０９で復元したベクトル復元画像とを合成する。
【００２２】
ベクトル復元画像は、注目矩形からノイズ除去処理した画像から生成されたベクトルデータに基づいて復元された画像であるので、ノイズ除去により必要な情報（例えば網点など）が除去されていることもある。したがって、プリントアウト画像としてベクトル復元画像は不適当な場合がある。そこで、ベクトルデータを印刷に用いる場合は、合成部１１１１において、ベクトル復元画像と差分画像とを合成して、プリントアウト用のビットマップ（プリントアウトビットマップ）を構成して、画像処理部１１１２に送出する。
【００２３】
プリントアウトビットマップは、ステップＳ１２０５で画像処理部１１１２によって様々な画像処理が施され、ステップＳ１２０６で、印字エンジンに出力される。
【００２４】
一般的に、ラベリング部１３０１が行う処理は、前述したように、同一色領域の判定とその情報の格納、オブジェクトの判別から成るため、処理量が非常に大きく、システム全体に求められる処理スピードの低下を招くことがある。そのため、ベクトル処理のスピードを向上させる方式の確立が大きな課題となっている。
【００２５】
本発明は以上の問題に鑑みてなされたものであり、ベクトル化処理をより高速に行うための技術を提供することを目的とする。
【課題を解決するための手段】
【００２６】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００２７】
即ち、受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段と、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段と、を備える画像処理装置であって、
前記ラベリング手段は、前記ラベリング処理の時間が閾値以上かかると判断した場合、前記画像の減色画像あるいは前記画像の低解像度化画像に対して前記ラベリング処理を実行することを特徴とする。
【００２８】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００２９】
即ち、受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段と、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段と、を備える画像処理装置であって、
前記ベクトル化手段により生成されたベクトルデータの量が多い場合、前記画像の減色画像あるいは前記画像の低解像度化画像を用いて、前記ラベリング手段によるラベリング処理と前記ベクトル化手段によるベクトルデータ生成処理とを、実行させるように制御することを特徴とする。
【００３０】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００３１】
即ち、ラベリング手段が、受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング工程と、
ベクトル化手段が、前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化工程と、を備える画像処理方法であって、
前記ラベリング工程では、前記ラベリング処理の時間が閾値以上かかると判断した場合、前記画像の減色画像あるいは前記画像の低解像度化画像に対して前記ラベリング処理を実行することを特徴とする。
【００３２】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００３３】
即ち、ラベリング手段が、受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング工程と、
ベクトル化手段が、前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化工程と、を備える画像処理方法であって、
前記ベクトル化工程で生成されたベクトルデータの量が多い場合、前記画像の減色画像あるいは前記画像の低解像度化画像を用いて、前記ラベリング手段によるラベリング処理と前記ベクトル化手段によるベクトルデータ生成処理とを、実行させるように制御することを特徴とする。
【００３４】
本発明の目的を達成するために、例えば、本発明のコンピュータプログラムは以下の構成を備える。
【００３５】
即ち、コンピュータを、
受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段、として機能させるためのコンピュータプログラムであって、
前記ラベリング手段では、前記ラベリング処理の時間が閾値以上かかると判断した場合、前記画像の減色画像あるいは前記画像の低解像度化画像に対して前記ラベリング処理を実行させることを特徴とする。
【００３６】
本発明の目的を達成するために、例えば、本発明のコンピュータプログラムは以下の構成を備える。
【００３７】
即ち、コンピュータを、
受信した画像内に含まれている１以上のオブジェクト領域を特定するためのラベリング処理を実行するラベリング手段、
前記ラベリング手段によるラベリング結果に基づいてベクトルデータを生成するベクトル化手段、として機能させるためのコンピュータプログラムであって、
前記ベクトル化手段により生成されたベクトルデータの量が多い場合、前記画像の減色画像あるいは前記画像の低解像度化画像を用いて、前記ラベリング手段によるラベリング処理と前記ベクトル化手段によるベクトルデータ生成処理とを、実行させるように制御することを特徴とする。
【発明の効果】
【００３８】
本発明の構成によれば、ベクトル化処理をより高速に行うことができる。
【発明を実施するための最良の形態】
【００３９】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００４０】
［第１の実施形態］
上記ラベリング処理の処理量を軽減させる方法として、矩形画像を低解像度化させる方法と、図５に示す如く、矩形画像内に含まれている画素値の種類を減らす方法（減色）と、が考えられ、それぞれには長所と短所がある。
【００４１】
減色については、図６に示したように元の画像の概形を比較的維持できるのでベクトル化を容易に実現することができる。しかし、矩形画像内に含まれている元々の色数が少ないとこの減色処理を行っても色数があまり変わらず、その結果、ベクトル化処理の実行速度の向上は実現できない。
【００４２】
一方、低解像度化については、減色とは異なり、必ず処理スピードは向上するが、図７に示したようにエッジがぼけてしまい、ベクトル化の精度が低下する問題がある。このため、減色と低解像度化のそれぞれを単独で用いると、これらの問題が顕著になりやすい。そこで、本実施形態ではこれらを上手く組み合わせることで処理スピードを効率的に向上させることができる。
【００４３】
本実施形態では、ラベリング処理にかかる時間が所定時間以上になると判断した場合、ラベリング対象の矩形内に含まれている色数が多いときにはこの矩形に対して減色を行い、色数が少ないときには低解像度化を行う。これにより、処理全体のスピードの向上を実現する。
【００４４】
図１は、本実施形態に係る画像処理装置（複写機，複合機等）が有するコントローラ部の機能構成を示すブロック図である。コントローラ部１００は、インタプリタ１０１、レンダラ１０２、判定部１０３、ビットマップ圧縮部１０６、ビットマップ伸張部１１３、判定部１０４、ＰＤＬライク画像生成部１０５、差分画像生成部１１０、ベクトル処理部１０８、ベクトルレンダラ１０９、合成部１１１、画像処理部１１２により構成されている。本実施形態ではこれらは全てハードウェアでもって構成されているものとして説明するが、１以上をソフトウェアでもって実現しても良い。
【００４５】
同図に示す如く、本実施形態に係るコントローラ部１００は、ＰＣ（パーソナルコンピュータ）やスキャン部、印字エンジン、ＨＤＤ１０７に接続されている。
【００４６】
先ず、このコントローラ部１００が行う処理について説明する。コントローラ部１００が行う処理は上記図１２に示したフローチャートに従ったものであるが、いくつかのステップにおける処理が上記説明とは異なる。以下では、コントローラ部１００が図１２のフローチャートに従った処理を実行する場合について説明する。
【００４７】
スキャン部（外部）から出力された画像データは判定部１０４に入力される。判定部１１０４は、受けた画像を複数の矩形に分割する。本実施例では、該画像は、一定サイズの矩形で格子状に分割されるものとする。分割する矩形のサイズ（閾値サイズ）は、画像処理装置の処理能力に適したサイズであればよく、例えば、３２×３２画素サイズや、６４×６４画素サイズなどである。なお、本実施形態では、一定サイズの矩形で分割したが、これに限るものではなく、画像に応じて可変サイズの矩形であっても構わない。上述の通り、図１２は、分割された矩形毎に行われる処理のフローチャートを示しているので、以下の説明では、注目矩形についての処理を説明するが、他の矩形についても、同様の処理が行われる。
【００４８】
ステップＳ１２０１では、判定部１０４は、注目矩形が文字／線画の画像であるのか、自然画像であるのかを判定する。この判定において、注目矩形に文字／線画の画像と自然画像とが混在している場合には、自然画像と判定する。この判定処理については周知の技術であるので、これに関する説明は省略する。
【００４９】
この判定の結果、注目矩形が自然画像であると判定された場合には処理をステップＳ１２０２に進め、ビットマップ圧縮部１０６は、この注目矩形に対して圧縮処理を行う。圧縮形式は特に限定しない。そしてビットマップ圧縮部１０６は、圧縮した注目矩形をステップＳ１２０３においてＨＤＤ１０７に格納する。
【００５０】
この格納された圧縮注目矩形は、ステップＳ１２０４において、印字エンジン（印刷部）による印刷のタイミングに合わせてビットマップ伸張部１１３によってＨＤＤ１０７から読み出され、伸張される。この伸張処理は、上記圧縮処理に対応したものである。
【００５１】
伸張された注目矩形は、ステップＳ１２０５で画像処理部１１２によって様々な画像処理が施され、ステップＳ１２０６で、印字エンジンに出力される。
【００５２】
一方、上記ステップＳ１２０１で、注目矩形が文字／線画の画像であると判定された場合には、処理をステップＳ１２０７に進める。ステップＳ１２０７では、判定部１０４は、注目矩形の画像をコピーしたものを差分画像生成部１１０に送信する。またステップＳ１２０８では、判定部１０４は、オリジナルの注目矩形をＰＤＬライク画像生成部１０５に送信する。ＰＤＬライク画像生成部１１０５では、受信した注目矩形の画像に対してノイズ除去を行う。
【００５３】
続いて、ステップＳ１２０９では、ベクトル処理部１０８は、ＰＤＬライク画像生成部１１０５から送信されてきた画像に対してベクトル化処理（ベクトルデータへの変換処理）を行う。そして、ステップＳ１２１０では、このベクトル化に関する処理（ベクトルデータ生成処理）の結果を、ＨＤＤ１０７に格納する。
【００５４】
図２は、本実施形態のベクトル処理部１０８の機能構成を示す図である。同図に示す如く、ベクトル処理部１０８は、ラベリング部２０１とベクトル化部２０２と処理時間予測部２０３とで構成されている。
【００５５】
図３は、ベクトル処理部１０８が行う処理のフローチャートである。即ち上記ステップＳ１２０９，Ｓ１２１０における処理の詳細を示すフローチャートである。
【００５６】
ステップＳ３０１でラベリング部２０１はＰＤＬライク画像生成部１０５からノイズ除去された注目矩形を受けると、ステップＳ３０２で、この注目矩形に対して１ラインずつラベリング処理を行う。このラベリング処理は、注目矩形内に含まれている１以上のオブジェクト領域を特定する為の処理であり、その詳細は、上述したラベリング部１３０１で説明した処理と同じである。すなわち、ほぼ同じ画素値であれば同一色と判断してラベリングしていき、同一色区間の座標とその画素値を決定する。
【００５７】
また、ステップＳ３０２で処理時間予測部２０３は、ラベリング部２０１が当該注目矩形に対するラベリング処理を開始すると共に計時処理を開始する。即ち、処理時間予測部２０３は、ラベリング部２０１がラベリング処理を行っている時間を計時している。
【００５８】
ステップＳ３０２で注目矩形の１ラインのラベリングが終わるごとに、ステップＳ３０３で、この計時した経過時間が閾値Ｔｈを超えたか否か判断する。経過時間が閾値Ｔｈを越えていない場合には、ステップＳ３０４で注目矩形のラベリングしていないデータがあるか判断する。そして、注目矩形においてラベリング処理がなされていない領域（データ）が存在する場合にはステップＳ３０２に戻り、ラベリング部２０１は未だラベリング処理を行っていない領域についてラベリング処理を行う。
【００５９】
一方、注目矩形においてラベリング処理がなされていない（未実行）領域（データ）が存在しない場合、即ち注目矩形についてラベリング処理が完了した場合には処理をステップＳ３０５に進める。ステップＳ３０５では、ラベリング部２０１は、隣接するライン間で接している同一色区間を連結させて同一色領域を生成し、当該同一色領域をオブジェクトとして、それぞれのオブジェクトのデータ（輪郭座標データと色データ）をラベリング結果としてベクトル化部２０２に送出する。そしてステップＳ３０６では、ベクトル化部２０２は、それぞれのオブジェクトの輪郭座標データについてベクトル化処理を行い、ステップＳ３０７では、その結果をＨＤＤ１０７に格納する。
【００６０】
一方、ステップＳ３０３で、処理時間予測部２０３が計時した時間が閾値Ｔｈを越えていると判断した場合には、ステップＳ３０８に処理を進める。ステップＳ３０８では、ラベリング部２０１は、注目矩形においてラベリング処理がなされていない領域（データ）をＰＤＬライク画像生成部１０５に再送要求する。つまり、当該注目矩形内の画像について、ラベリング処理にかかる時間が少なくて済むように所定の処理が為された画像（ラベリング容易画像）を再送するように要求する。そしてステップＳ３０９では、ラベリング部２０１は、この領域のデータをラベリング容易画像としてＰＤＬライク画像生成部１０５から受信する。ラベリング容易画像については後述する。そして、処理をステップＳ３０２に戻し、このラベリング容易画像に対してラベリング処理を行う。
【００６１】
図１２に戻って、次にステップＳ１２１１では、ベクトル処理部１０８（ベクトル化部２０２）は、ステップＳ１２１０でＨＤＤ１１０７に格納されたベクトル化データをコピーし、コピーしたベクトル化データをベクトルレンダラ１０９に出力する。ベクトルレンダラ１０９は、ベクトル化データに基づいて注目矩形内の画像を復元する。このベクトルデータから復元された注目矩形をベクトル復元画像と呼称する。ベクトル復元画像は、差分画像生成部１１０に送出される。
【００６２】
ステップＳ１２１２では、差分画像生成部１１０は、オリジナルの注目矩形を判定部１０４から受信し、このオリジナルの注目矩形の画像と、ベクトル復元画像との差分を求めることで差分画像を生成する。この差分画像を構成する各画素は、オリジナルの注目矩形における対応する画素と、ベクトル復元画像における対応する画素との差分画素値を有するものである。
【００６３】
ステップＳ１２１３では、ビットマップ圧縮部１０６が、この差分画像を圧縮し、ステップＳ１２１４で、この圧縮した差分画像をＨＤＤ１０７に格納する。
【００６４】
ステップＳ１２１５では先ず、ベクトルレンダラ１０９は、ステップＳ１２１０でＨＤＤ１０７に格納されたベクトル化データに基づいてベクトル復元画像を生成し、合成部１１１に送出する。更に、ビットマップ伸長部１１３は、ステップＳ１２１４でＨＤＤ１０７に格納された圧縮差分画像を伸長する。合成部１１１は、伸張した差分画像と、ベクトルレンダラ１０９で復元したベクトル復元画像とを合成して、プリントアウト用のビットマップ（プリントアウトビットマップ）を構成し、画像処理部１１２に送出する。画像の合成とは、合成する画像同士で位置的に対応する画素の画素値を加算することで行われる。
【００６５】
プリントアウトビットマップ（印刷対象画像）は、ステップＳ１２０５で画像処理部１１２によって様々な画像処理が施され、ステップＳ１２０６で、印字エンジンに出力され、印刷出力（印刷処理）される。
【００６６】
なお、上述したフローチャートでは、印刷出力する場合について例示したが、このベクトル化データは印刷出力に用いるだけでなく、他の用途に用いてもよい。例えば、ＨＤＤ１０７に格納されたベクトル化データをＰＣに送信し、該ＰＣにおいて該ベクトル化データを再利用してもよい。このＨＤＤ１０７に格納されたベクトル化データは、拡大縮小しても滑らかな画像として再現できるので、編集などの再利用用途にも適している。また、ベクトル化データを印刷に用いることで、ジャギーのない滑らかな曲線で画像を再現して印刷できる。
【００６７】
次に、上記ラベリング容易画像について説明する。ラベリング容易画像はＰＤＬライク画像生成部１０５によって生成され、ラベリング部２０１に送出されるものである。このラベリング容易画像は、ラベリング処理にかかる時間が少なくて済むように、下記の処理が行われた画像である。図４は、ＰＤＬライク画像生成部１０５がラベリング容易画像の生成要求を受け、この要求に応じてラベリング容易画像を生成し、要求元であるラベリング部２０１に返信する処理のフローチャートである。
【００６８】
ＰＤＬライク画像生成部１０５は、ラベリング容易画像の生成要求をラベリング部２０１から受けると、ステップＳ４０１における処理を行う。即ち、ステップＳ４０１では、注目矩形においてラベリング処理が未だ行われていない領域（未処理の領域）に含まれている色の数をカウントする（解析処理）。そして、ステップＳ４０２で、このカウントした色数（カウント数）が閾値Ｔｈ１を越えていると判断した場合には、ステップＳ４０３に進む。ステップＳ４０３では、例えば以下の式（１）に従って、この未処理領域に対する減色処理を行い、ラベリング容易画像を生成する。
【００６９】
Ｑ（Ｘｉ）＝ｑ＊ｆｌｏｏｒ｛（Ｘｉ／ｑ）｝    （１）
Ｘｉは未処理領域におけるｉ番目の画素値
ｑは整数（例えば、画素値が０〜２５５の値のいずれか（最大２５６色）であるとき、ｑ＝８にすれば、最大３２色に減色される）
Ｑ（Ｘｉ）は減色後の画素値
もちろん、減色処理の手法については他の手法を用いても良い。
【００７０】
一方、ステップＳ４０２で、カウントした色数が閾値Ｔｈ１を越えていないと判断した場合には、ステップＳ４０４に進み、未処理領域に対して低解像度化処理を行う。例えば、未処理領域の縦横方向それぞれについて１画素おきに画素をサンプリングすることで生成される画像（単純間引き画像）をラベリング容易画像として生成する。なお、低解像度化画像は、他の手法を用いて生成されるようにしてもよい。
【００７１】
そしてステップＳ４０５では、ステップＳ４０３，Ｓ４０４の何れかで生成されたラベリング容易画像をラベリング部２０１に送出する。
【００７２】
以上の説明により、本実施形態によれば、ラベリング容易画像を生成する上で、色数に基づいて減色と低解像度化とを切り換えるので、効率的にラベリング処理のスピードを向上させることができる。
【００７３】
［第２の実施形態］
第１の実施形態では、未処理領域における色の数をカウントし、そのカウント値に応じて、減色、低解像度化の何れかを未処理領域に対して施していた。本実施形態では、色の数をカウントする方法として次のような方法を採用する。例えば、画像が図８に示すようなＣＧ画像である場合には、所定の大きさ以上のエッジを検出し、検出したエッジの数をカウントすることで、そのカウント値をそのまま色数とみなすことにする。つまり、第２の実施形態では、色数の代わりにエッジ数に基づいて判断を行う。
【００７４】
図９は、本実施形態に係る画像処理装置のコントローラ部９００の機能構成を示すブロック図である。同図に示したコントローラ部９００が、図１に示したコントローラ部１００と異なる点は、ＰＤＬライク画像生成部１０５をＰＤＬライク画像生成部９０１に置き換えた点にある。即ち、コントローラ部９００が行う処理は、ＰＤＬライク画像生成部９０１の動作以外については、第１の実施形態と同じである。
【００７５】
図１０は、ＰＤＬライク画像生成部９０１が行う処理のフローチャートである。
【００７６】
ＰＤＬライク画像生成部９０１は、ラベリング容易画像の生成要求をラベリング部２０１から受けると、ステップＳ１００１では、注目矩形においてラベリング処理が未だ行われていない領域（未処理領域）内を参照する。そして、所定値以上のエッジ強度を有するエッジを検出する。このエッジ検出には、ソーベルフィルタ等のエッジ検出フィルタを用いる。そして、ステップＳ１００２では、この検出したエッジの数をカウントする。
【００７７】
そしてカウントした数、即ち、未処理領域内でエッジ強度が閾値以上のエッジの数が閾値Ｔｈ２を越えている場合には、処理をステップＳ１００３を介してステップＳ１００４に進める。ステップＳ１００４では、上記ステップＳ４０３における処理と同様にして、この未処理領域に対する減色処理を行い、ラベリング容易画像を生成する。
【００７８】
一方、カウントした数が閾値Ｔｈ２を越えていない場合には、処理をステップＳ１００３を介してステップＳ１００５に進め、ステップＳ４０４における処理と同様にして、未処理領域に対する低解像度化処理を行う。
【００７９】
そしてステップＳ１００６では、ステップＳ１００４，Ｓ１００５の何れかで生成されたラベリング容易画像をラベリング部２０１に送出する。
【００８０】
以上の説明により、本実施形態によれば、ラベリング容易画像を生成する上で、エッジの数に基づいて減色と低解像度化とを切り換えるので、効率的にラベリング処理のスピード向上を達成できる。
【００８１】
［第３の実施形態］
上記第１の実施形態のステップＳ３０２〜Ｓ３０３で、ラベリング処理時間の経過時間を計測して全てのラベリングが終わる時間を予測する代わりに、予め、画像の特性（エッジの数等）からラベリング処理時間を予測し、その予測した時間に基づいてラベリング容易画像を使用するか否か判断してもよい。
【００８２】
このように、ラベリング容易画像を利用するかどうかの指標や、減色処理、低解像度化処理の何れを行うのかを決定するための指標については様々なものが用いられるし、その際に用いる閾値についても様々なものを用いることができる。
【００８３】
また、図１，９に示したコントローラ部を構成する各処理部をプログラムによって実現する場合、コントローラ部にＣＰＵとメモリを設け、コンピュータを当該各処理部として機能させるためのプログラムをこのメモリに格納する。なお、このプログラムを格納するメモリは、コンピュータ読取可能な記憶媒体であればよい。そして、コンピュータ（ＣＰＵ）がこのプログラムを実行することにより、コンピュータは各処理部として機能することになる。この場合、このプログラムは、このＣＰＵに図３，４，１０、１２に示したフローチャートに従った処理を実行させるためのものとなる。また、その処理を実行するに際し、データを一時的に記憶したりする場合には、このメモリが用いられることになる。
【００８４】
［第４の実施形態］
第１〜３の実施形態では、処理速度の観点で、縮小画像／減色画像のいずれかを再送するシステムの説明をした。本実施形態では、ベクトル化されたオブジェクトの符号量の観点で、再送を行うシステムの説明を行う。
【００８５】
図１５は、本実施形態に係る画像処理装置が有するコントローラ部の機能構成を示すブロック図である。なお、図１５において、図１に示したものと同じものについては同じ番号を付けており、その説明は省略する。図１５に示した構成は、図１に示したベクトル処理部１０８をベクトル処理部１５０１に置き換えた構成を有する。以下では、係るベクトル処理部１５０１について説明する。
【００８６】
ベクトル処理部１５０１はベクトル化対象の文字、クリップアート、線画のいずれかのオブジェクト（文字／線画／クリップアート）を含む矩形を受信した際、受信した矩形中のオブジェクトに対してベクトル化処理を行う。そしてベクトル化処理の過程で図１６に示す如くアンカーポイント（図１６において１６０１で示す丸）が多いと判定した場合（算出した符号量が閾値よりも大きい場合）、ＰＤＬライク画像生成部１０５に対してベクトル化容易画像の再送要求を出す。図１６は、アンカーポイントが多いオブジェクトの例を示す図である。
【００８７】
そしてＰＤＬライク画像生成部１０５は係る再送要求を受け取ると、該当する矩形の画素数を縦横方向半分の低解像度画像を再送する。そして再度、ベクトル処理部１５０１はこの再送された低解像度画像に対してベクトル化処理を行う。なお、このベクトル化容易画像に対するベクトル化処理においても、ベクトル化アンカーポイントの数をカウントする。そしてカウントした結果が予め設定された数より多いことが判明した場合には更にベクトル化が容易な画像の再送要求を出し、同様のことを繰り返す。このようにして、ベクトル処理部１５０１による処理を再度行うように制御する。
【００８８】
なお、再送要求を出すか否かの判断基準には、符号量（ベクトル処理部に関連する量）だけでなく、ベクトル処理部１５０１（ラベリング処理とベクトル化処理）における処理時間も一緒に用いても良い。即ち、ベクトル処理部１５０１が１つの矩形に対して行う処理に要している時間（処理時間）が閾値よりも大きくなった場合には、上記再送指示をＰＤＬライク画像生成部１０５に対して出す。
【００８９】
［第５の実施形態］
第４の実施形態では、アンカーポイントの数が予め設定された数よりも多い場合には再送要求を出しているので、品位が重要となる文字の劣化が目立つこともありえる。本実施形態では、文字領域については再送要求を出さず、ビットマップの形態でそのまま出力する。以下の説明では文字に対する処理に限定する。
【００９０】
図１７は、本実施形態に係る画像処理装置が有するコントローラ部の機能構成を示すブロック図である。なお、図１７において、図１に示したものと同じものについては同じ番号を付けており、その説明は省略する。図１７に示した構成は、図１に示したベクトル処理部１０８をベクトル処理部１７０１に置き換えた構成を有する。以下では、係るベクトル処理部１７０１について説明する。
【００９１】
ベクトル処理部１７０１は、ベクトル化対象の文字を受信すると、受信した文字について第４の実施形態と同様に符号量が多いか判断する。ベクトル化処理の途中、符号量が多いと判断すれば（例えば、予め設定された符号量以上であれば）、ベクトル化対象のビットマップデータをそのまま出力する。
【００９２】
［第６の実施形態］
色が沢山あるクリップアートでは、クラスタリング後、多くの領域ができ、結果的にベクトルデータが多くなる傾向にある。減色処理は色領域を減らす方向に働くため領域が少なくなり、結果的にベクトル化後の符号量削減を期待できる。本実施形態では、クリップアートの符号量が多くなった場合、減色した画像を再送要求するシステムについて説明する。
【００９３】
図１８は、本実施形態に係る画像処理装置が有するコントローラ部の機能構成を示すブロック図である。なお、図１８において、図１に示したものと同じものについては同じ番号を付けており、その説明は省略する。図１８に示した構成は、図１に示したベクトル処理部１０８をベクトル処理部１８０１に置き換えた構成を有する。以下では、係るベクトル処理部１８０１について説明する。
【００９４】
ベクトル処理部１８０１はクリップアートを受信すると、これに対してベクトル化を行う。そして符号量が予め設定された量より小さい場合には、そのままベクトル化データを出力し、予め設定された量より大きい場合には、ＰＤＬライク画像生成部１０５へ再送要求を出す。
【００９５】
ＰＤＬライク画像生成部１０５は減色処理を行って再送する。ベクトル処理部１８０１はベクトル化を行い、符号量が少なければ結果を出力し、多ければ再送要求を出す、というように、同様のことを繰り返す。
【００９６】
ここで、第４の実施形態以降の各実施形態において、注目矩形についてベクトル処理部が処理を行っている最中に上記再送要求を出したとする。この場合、ベクトル処理部はこの注目矩形についてどの程度処理を進めていたのかについては何等関係なく、この再送要求に応じて再度得られる矩形について始めからベクトル化に係る処理を行っていた。しかし、これに限定するものではなく、再送要求を出した時点（再送要求を出すと判断した時点）で未だベクトル処理部が処理していない部分についてのみ、この再送要求に応じて再度得られる矩形に対してベクトル化に係る処理を行っても良い。
【００９７】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコード（コンピュータプログラム）を記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体（コンピュータ読み取り可能な記録媒体）は本発明を構成することになる。
【００９８】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００９９】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１００】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１０１】
【図１】本発明の第１の実施形態に係る画像処理装置（複写機，複合機等）が有するコントローラ部の機能構成を示すブロック図である。
【図２】ベクトル処理部１０８の機能構成を示す図である。
【図３】ベクトル処理部１０８が行う処理のフローチャートである。
【図４】ＰＤＬライク画像生成部１０５がラベリング容易画像の生成要求を受け、この要求に応じてラベリング容易画像を生成し、要求元であるラベリング部２０１に返信する処理のフローチャートである。
【図５】減色処理を説明する図である。
【図６】減色処理を説明する図である。
【図７】低解像度化処理を説明する図である。
【図８】ＣＧ画像を説明する図である。
【図９】本発明の第２の実施形態に係る画像処理装置のコントローラ部９００の機能構成を示すブロック図である。
【図１０】ＰＤＬライク画像生成部９０１が行う処理のフローチャートである。
【図１１】従来提案されている画像処理装置（複写機や複合機等）が有するコントローラ部の機能構成を示すブロック図である。
【図１２】画像処理装置のコントローラ部が行う処理のフローチャートである。
【図１３】ベクトル処理部１１０８の構成を示すブロック図である。
【図１４】ラベリング部１３０１が行う処理を説明する図である。
【図１５】本発明の第４の実施形態に係る画像処理装置が有するコントローラ部の機能構成を示すブロック図である。
【図１６】アンカーポイントが多いオブジェクトの例を示す図である。
【図１７】本発明の第５の実施形態に係る画像処理装置が有するコントローラ部の機能構成を示すブロック図である。
【図１８】本発明の第６の実施形態に係る画像処理装置が有するコントローラ部の機能構成を示すブロック図である。
【図１】
2008022529.tif 000003
【図２】
2008022529.tif 000004
【図３】
2008022529.tif 000005
【図４】
2008022529.tif 000006
【図５】
2008022529.tif 000007
【図６】
2008022529.tif 000008
【図７】
2008022529.tif 000009
【図８】
2008022529.tif 000010
【図９】
2008022529.tif 000011
【図１０】
2008022529.tif 000012
【図１１】
2008022529.tif 000013
【図１２】
2008022529.tif 000014
【図１３】
2008022529.tif 000015
【図１４】
2008022529.tif 000016
【図１５】
2008022529.tif 000017
【図１６】
2008022529.tif 000018
【図１７】
2008022529.tif 000019
【図１８】
2008022529.tif 000020