(57)【要約】【課題】  画像の前景に相当する部分を適切に決定する技術を提供する。【解決手段】  画像を入力する入力手段と、  前記画像のエッジを検出するエッジ検出手段と、  前記画像の各ラインについて、同一種類の画像の連続を判定することにより、同一種類の画像の始点と終点と色を示すパケットデータを出力する出力手段と、  前記始点と終点の両方が前記エッジに相当するパケットデータを、前記前景に相当するデータであると決定する決定手段とを備える。【選択図】  図１
2008206073.tif 000002
【特許請求の範囲】
【請求項１】
画像を入力する入力手段と、
前記画像のエッジを検出するエッジ検出手段と、
前記画像の各ラインについて、同一種類の画像の連続を判定することにより、同一種類の画像の始点と終点と色を示すパケットデータを出力する出力手段と、
前記始点と終点の両方が前記エッジに相当するパケットデータを、前記前景に相当するデータであると決定する決定手段とを備えることを特徴とする画像処理装置。
【請求項２】
画像を入力する入力工程と、
前記画像のエッジを検出するエッジ検出工程と、
前記画像の各ラインについて、同一種類の画像の連続を判定することにより、同一種類の画像の始点と終点と色を示すパケットデータを出力する出力工程と、
前記始点と終点の両方が前記エッジに相当するパケットデータを、前記前景に相当するデータであると決定する決定工程とを備えることを特徴とする制御方法。
【請求項３】
画像処理装置に以下の実行を行わせるプログラムであって、
画像を入力する入力工程と、
前記画像のエッジを検出するエッジ検出工程と、
前記画像の各ラインについて、同一種類の画像の連続を判定することにより、同一種類の画像の始点と終点と色を示すパケットデータを出力する出力工程と、
前記始点と終点の両方が前記エッジに相当するパケットデータを、前記前景に相当するデータであると決定する決定工程とを含む、
前記コンピュータから読み取り可能なプログラム。
【請求項４】
前記請求項３に記載のプログラムをコンピュータから読み取り可能な状態で記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を圧縮符号化する技術に関するものである。
【背景技術】
【０００２】
近年、複写機とプリンターとを統合したデジタル複合機なるものが存在する。これは、紙原稿をスキャンして複写する機能や、パソコンから受信したデータを印刷出力する機能を搭載している。
【０００３】
このような機器においては、スキャンされた画像データとＰＤＬ（ページ記述言語）データを混在させて印刷する場合なども有る。その場合、スキャンされた画像データおよびＰＤＬデータを統一的に扱う必要が有る。
【０００４】
例えば、これら全てのデータを一旦ビットマップデータに展開して、ＪＰＥＧ圧縮を用いて圧縮する場合を考える。この場合、原稿の文字部やグラフィックス部には、ＪＰＥＧ圧縮による歪みが生じるであろう。
【０００５】
このような文字画像を高画質に表現する方式として、ベクトルデータによる表現方式が知られている。
【特許文献１】特開２００６−３４４０６９
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、例えば、文字やその他、異なる種類の部分画像が混在した画像を効率良く符号化するために、画像の前景に相当する部分を適切に決定する技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の画像処理装置は以下を備える。即ち、画像を入力する入力手段と、前記画像のエッジを検出するエッジ検出手段と、前記画像の各ラインについて、同一種類の画像の連続を判定することにより、同一種類の画像の始点と終点と色を示すパケットデータを出力する出力手段と、前記始点と終点の両方が前記エッジに相当するパケットデータを、前記前景に相当するデータであると決定する決定手段とを備える。
【発明の効果】
【０００８】
本発明によれば、画像の前景に相当する部分を適切に決定できる。
【発明を実施するための最良の形態】
【０００９】
以下、図面に従って本発明に係る実施例を詳細に説明する。
【００１０】
（第１実施例）
図１は、本発明の符号化部のブロック図である。１０はスキャナで読取られた画像（スキャン画像）であり、１１はＰＤＬデータを描画した画像（ＰＤＬ描画画像）である。このＰＤＬデータはディスプレリストに変換される。
【００１１】
１３は領域分割部であり、１４は前景圧縮部であり、１５は背景圧縮部であり、１２はメモリである。
【００１２】
上記スキャン画像とＰＤＬデータは、１３の領域分割部において、前景と背景に分離される。
【００１３】
前景は前景圧縮部１４において、画像のベクトル化を利用した圧縮処理（前景部圧縮処理）を行う。
【００１４】
背景は背景圧縮部１５においてビットマップデータの圧縮（背景部圧縮処理）を行う。
【００１５】
これら圧縮データはそれぞれメモリ１２に記録される。以下、詳細な説明を行う。
【００１６】
スキャン画像１０は、ノイズ除去部１０１でノイズ除去された後、ランパケット生成部１０２およびエッジ抽出部１０３に供給される。
【００１７】
ランパケット生成部１０２は、１行毎に、同一色の画素が何個連続しているかを判定する。そしてその判定の結果、始点と終点と色の組合せで構成されるパケットデータを生成する。このパケットデータをランパケットと呼ぶこととする。終点の代わりに、連続数（ラン）の長さを記録してもよい。
【００１８】
エッジ抽出部１０４では、画像のエッジ部を各種のフィルター演算を用いて求める。
【００１９】
始点・終点判定部１０３では、ベクトル化の対象となるランパケットの候補を抽出する。具体的には、ランパケット生成部１０２で生成したランパケットの始点と終点の両方が、エッジ抽出部１０４で抽出した画像のエッジ画素に一致しているかを判定する。そして、一致している場合にはそれが前景部であると判定する。これにより、背景と思われる部分で、単に同じ色の画素が並んでランパケットが作られた箇所と、前景と思われる部分のランパケットとを分けることができる。
【００２０】
前景・背景分離部１０５では、前景部以外の部分を背景とする。ここでは、原画像から前景部を抜き出し、背景の穴埋め部１０９でこの部分を周囲画素の平均色で埋める。
【００２１】
ラベリング部１０６は、前景部のラベリングを行う処理部である。ここでは、ライン単位に入ってきたパケットデータを、前ラインとの連続性を見ることにより、画素接続している領域を１つの領域として判別する。そして、それぞれの塊に独立した番号を与えていく“ラベリング処理”を行う。
【００２２】
１０７は、ラベル領域毎の輪郭抽出部であり、１０８は、抽出した輪郭データをベジエ曲線などを用いて近似する部分である。このベジエ曲線と内部の色とを連結して、画像のベクトルデータであるとする。
【００２３】
背景の穴埋め部１０９では、原画像から前景部を抜き出し、この部分を周囲画素の平均色で埋めた背景画像を生成する。
【００２４】
１１０は、背景画像をビットマップデータとして圧縮するビットマップ符号化部である。この処理部は、公知のＪＰＥＧやＪＰＥＧ２０００等を用いることが可能である。ここで得られた圧縮符号化データは、メモリ１２に記録される。
【００２５】
ＰＤＬ描画画像１１は、ＰＤＬデータをそれぞれに適した描画方法で、ビットマップデータ（ビットマップ画像）に展開したものである。なお、このＰＤＬ描画画像は、ランパケット生成部１０２およびエッジ抽出部１０４の処理の後は、スキャン画像１０と同様に扱われる。
【００２６】
図２は、本実施例における復号部を示す図である。
【００２７】
１２は図１と同様のメモリである。ここでは、ベクトルデータ（ベクトル化データ）とビットマップデータ（ビットマップデータを圧縮符号化したデータ）とを記録している。
【００２８】
前景復号部１６は、メモリ１２からベクトルデータを読み出し、復号（前景部復号処理）を行う。一方背景復号部１７は、メモリ１２から圧縮符号化されたビットマップデータを読み出し、復号（背景部復号処理）を行う。これら復号された画像データは、合成部１８において合成され、表示器１９で表示する。以下、各部の処理を詳細に説明する。
【００２９】
輪郭描画部２０１は、ベクトルデータをビットマップデータ（ビットマップ画像）の輪郭を表す輪郭データに変換する。このとき、所定の表示倍率に従って、ベクトル座標値を変換しておく。
【００３０】
中塗り部２０２では、指示された色で、上記輪郭の内部を塗りつぶす。この結果は前景描画部２０３で保持される。
【００３１】
一方、ビットマップ復号処理部２０４は、圧縮符号化されたビットマップデータを復号する。この結果は、背景描画部２０５で保持される。
【００３２】
ベクトルデータに基づいて描画された画像は、スムージング部２０６においてエッジをぼかす処理（スムージング）を行う。
【００３３】
一方、ビットマップデータは、解像度変換部２０７で、表示倍率のサイズに合わせて解像度変換される。
【００３４】
合成部２０８は、スムージング部２０６と解像度変換部２０７で得られた画像を合成する。表示部１９は、この合成された画像を表示する。
【００３５】
図３は、文字を含む領域（文字タイル）を前景と背景に分離する一例である。
３１は、入力画像であり、背景の上に文字“Ｈ”を含む画像である。
３２は、文字部のみ（Ｈの部分のみ）を表す画像であり、これを前景と呼ぶ。
３３は、前景部の輪郭（アウトライン）をベクトルデータに変換する（ベクトル化）する様子を示している。ここではラスタースキャンを行い、最初の有意画素を検出し、その部分から境界の追跡を行う。そして領域の境界を辿っていき、開始点に戻った時点で処理が完了する。
【００３６】
図３においては、角点の座標を記録しつつ、この間を直線で結べば、元の画像の輪郭が再現できる。また元の画像の内部色を抽出しておき、この色で塗り潰せば、原画像（“Ｈ”の色文字）が再現できることになる。図３では、直線のみで全てが構成されているが、曲線を含む場合は、公知のベジエ関数を用いた近似により表現することができる。これをアウトライン・ベクトルと呼ぶ。
【００３７】
一方、３４は、入力画像から、前景が抜き取られた画像である。この状態では、本来の背景部分（“Ｈ”以外の領域）と抜き取られた画像部分（“Ｈ”の領域）の境界に、強いエッジ成分が有るため、ＪＰＥＧ等の圧縮に不向きである。従って、後述の処理を行う。
【００３８】
３５は、抜き取られた画像部分（“Ｈ”の領域）を周囲画素の平均色で埋めた状態を示す。ここで得られた画像３５が後段でビットマップデータとして圧縮（ＪＰＥＧ圧縮）される。なお、ここで平均色を求めるための周囲画素は、予め基準を定めておけば良いが、例えば、“Ｈ”の領域に外接する周囲画素のみに基づいて平均色を求めれば良い。
【００３９】
図４は１ライン毎のランパケットを生成する処理を示す図である。
【００４０】
ここでは、入力された画像をライン単位に処理していく。４１が処理の対象となる処理ラインである。４２が処理ラインの１ライン前（上）のラインである。４３は処理済みライン（処理前ラインよりも更に前のライン）である。４４が処理ラインよりも後に処理される予定の処理待ちラインである。
【００４１】
まず、処理ラインに対して、ランの始点と終点である（始点４５ａ，終点４５ａ）（始点４５ｂ，終点４６ｂ）を検出する。
【００４２】
次に、前ラインでの検出結果（始点４５ｃ、終点４６ｃ）（始点４５ｄ、終点４６ｄ）との接続関係を見て、１つのラベル領域かどうかを判定していくことになる。
【００４３】
図５は、エッジ抽出部の処理を示す図である。
５１は横方向のエッジを除去する１次元フィルターであり、処理部５３においてこのフィルターの出力値を絶対値に変換する。
５２は縦方向のエッジを除去する１次元フィルターであり、処理部５４においてこのフィルターの出力値を絶対値に変換する。
この２つの絶対値を処理部５６で加算する。次に、比較器５５において、加算された値としきい値５７とを比較する。この比較の結果が注目画素のエッジの強度（エッジ抽出結果）となる。
【００４４】
図６にエッジ抽出結果を示す。この例では、文字の周囲の輪郭の画素のみに強いエッジ強度（エッジ抽出結果）が現れている。このエッジ抽出結果（エッジ画素）を使って、ランパケットの前景と背景の分離を行う。
【００４５】
図７に、領域を分割する際の判定の一例を示す。
【００４６】
同一色の画素のランの始点と終点の両方が一致した場合は、ラベリングの対象となるランパケットデータ（前景データ）であるとして判定し、始点と終点の両方がエッジ画素でない場合は、背景データであると判定する。
【００４７】
図８は、ライン単位にラベリングを行う方法を示す図である。
【００４８】
ラベリングの対象となるパケットデータの処理ライン８１と、その１つ前のライン８２の始点と終点の座標値の関係に基づいて、複数の接続関係で表せる。８３は始点が接続している場合であり、８４は終点が接続している場合である。これらは、同じラベル番号で処理できる。また８５、８６は、重なっている場合であり、これらも同一のラベル番号で処理できる。
【００４９】
８７は複雑なパターンの例であり、前ラインでは、３つの独立したパケットであったものが、処理ラインをみると全てが接続状態であるので、３つとも同じラベル番号で処理できる。これらは、接続関係を管理する接続関係管理テーブルを設けることにより、容易に処理できる。
【００５０】
図９に示すように、エッジリストからラベリング対象画素への変換は、始点と終点ともにエッジの画素であると判定して良いので、容易にラベリングの対象画素を生成することができる。
【００５１】
図１０に、輪郭の追跡方法の一例を示す。
【００５２】
注目している境界点を中心にして、前の境界点から反時計回りに次の境界点を探す。
【００５３】
すなわち、注目画素の近傍（周囲）８画素のうち、０から１の画素へ変わる画素を探す操作を行う。この処理を、処理を開始した地点に戻るまで継続して処理する。これにより、ループとして輪郭が抽出できる。
【００５４】
さらに、輪郭の端点を利用して直線や曲線で近似し、近似するベクトルデータを保持することにより、ベクトル化が行われる。
【００５５】
本実施例では、ランパケットの生成条件として同一色の画素の並びということで説明したが、これに限定されない。例えば、ある範囲の変動を許容して、同一色の画素と見なす方法や、クラスタリングなどの画像処理の結果で、同じクラスの画素と判定された画素の並びをランパケットとする方法を適用しても同様の結果が得られる。
【００５６】
本実施の形態は、画像の前景と背景を分離し、前景と背景を別々に圧縮符号化する画像処理装置において、画像を入力する入力手段（工程）と、上記画像のエッジを検出するエッジ検出手段（工程）と、上記画像の各ラインについて、同一種類の画像の連続を判定することにより、同一種類の画像の始点と終点と色を示すパケットデータを出力する出力手段（工程）と、上記始点と終点の両方が前記エッジに相当するパケットデータを、上記前景に相当するパケットデータであると決定する決定手段（工程）を備えることを特徴とする。なおこの前景は、文字部または図形部に相当する。
【００５７】
なお、上記画像処理装置を制御する制御方法や、上記制御を実行させるプログラム（コンピュータから読み取り可能な状態で記録された）、またはこのプログラムを記憶した記憶媒体なども、本発明の範疇に含まれる。
【図面の簡単な説明】
【００５８】
【図１】符号化処理を説明する図
【図２】復号処理を説明する図
【図３】前景と背景を分離する様子を示す図
【図４】１ライン毎のランパケットを生成する方法を説明する図
【図５】エッジ抽出を説明する図
【図６】エッジ抽出結果を示す図
【図７】領域を分割する判定を説明する図
【図８】ライン単位のラベリングを説明する図
【図９】エッジリストからビットマップに変更する様子を示す図
【図１０】輪郭の追跡方法の一例を示す図
【符号の説明】
【００５９】
１０  スキャン画像
１１  ＰＤＬ描画画像
１３  領域分割部
１４  前景圧縮処理部
１５  背景圧縮処理部
【図１】
2008206073.tif 000003
【図２】
2008206073.tif 000004
【図３】
2008206073.tif 000005
【図４】
2008206073.tif 000006
【図５】
2008206073.tif 000007
【図６】
2008206073.tif 000008
【図７】
2008206073.tif 000009
【図８】
2008206073.tif 000010
【図９】
2008206073.tif 000011
【図１０】
2008206073.tif 000012