(57)【要約】【課題】文字、図形、表等の画像データのアウトラインデータを生成する場合に、直線ベクトルを曲線に置き換える処理を実行するものでありながら、処理時間を短縮できる画像処理装置等を提供する。【解決手段】スキャナ手段１１により得られた画像データの輪郭画素を抽出する手段１４、抽出された輪郭画素を結んで直線ベクトルを生成する手段１４、生成された連続する３つの直線ベクトルのうち中間の直線ベクトルが設定値より小かどうか、両端の直線ベクトルのなす角度が設定値より大かどうかを判断する手段１４、中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きい場合には、両端の直線ベクトルと両端の直線ベクトルの延長線上の交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定し、各制御点を結んで、曲線ベクトルを生成する。【選択図】図２
2010113431.tif 000002
【特許請求の範囲】
【請求項１】
原稿をスキャナ手段により読み取ることにより得られた画像データに対して、輪郭画素を抽出する輪郭画素抽出手段と、
前記輪郭画素抽出手段により抽出された輪郭画素を結んで直線ベクトルを生成する直線ベクトル生成手段と、
前記直線ベクトル生成手段により生成された連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さいかどうかを判断するとともに、両端の直線ベクトルのなす角度が設定値より大きいかどうかを判断する判断手段と、
前記判断手段により、中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルとそれらの延長線上の交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定する制御点設定手段と、
前記制御点設定手段により設定された各制御点を結んで、曲線ベクトルを生成する曲線ベクトル生成手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記判断手段は、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する請求項１に記載の画像処理装置。
【請求項３】
前記判断手段は、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する請求項１に記載の画像処理装置。
【請求項４】
画像処理装置が実行する画像処理方法であって、
原稿をスキャナ手段により読み取ることにより得られた画像データに対して、輪郭画素を抽出するステップと、
前記抽出された輪郭画素を結んで直線ベクトルを生成するステップと、
前記生成された連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さいかどうかを判断するとともに、両端の直線ベクトルのなす角度が設定値より大きいかどうかを判断する判断ステップと、
中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルとそれらの延長線上の交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定するステップと、
前記設定された各制御点を結んで、曲線ベクトルを生成するステップと、
を備えたことを特徴とする画像処理方法。
【請求項５】
前記判断ステップでは、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する請求項４に記載の画像処理方法。
【請求項６】
前記判断ステップでは、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する請求項４に記載の画像処理方法。
【請求項７】
原稿をスキャナ手段により読み取ることにより得られた画像データに対して、輪郭画素を抽出するステップと、
前記抽出された輪郭画素を結んで直線ベクトルを生成するステップと、
前記生成された連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さいかどうかを判断するとともに、両端の直線ベクトルのなす角度が設定値より大きいかどうかを判断する判断ステップと、
中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルとそれらの延長線上の交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定するステップと、
前記設定された各制御点を結んで、曲線ベクトルを生成するステップと、
を画像処理装置のコンピュータに実行させるための画像処理プログラム。
【請求項８】
前記判断ステップでは、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものとコンピュータに判断させる請求項７に記載の画像処理プログラム。
【請求項９】
前記判断ステップでは、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものとコンピュータに判断させる請求項７に記載の画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、原稿をスキャナ手段により読み取ることにより得られた画像データに対して画像処理を行う、画像形成装置等の画像処理装置、同装置で実行される画像処理方法、及び該方法を画像処理装置のコンピュータに実行させるための画像処理プログラムに関する。
【背景技術】
【０００２】
原稿をスキャナ手段により読み取ることにより得られた文字、図形、表等の画像データのアウトラインデータを生成（ベクトル化）する方法として、輪郭画素から特徴点を抽出し、直線やベジェ曲線で結ぶことにより、滑らかなベクトルデータを得る画像処理方法がある。
【０００３】
この画像処理方法では、曲径の異なるベジェ近似の接続部分において、形状の滑らかさが失われる場合があり、その問題を解決する近似手法として、隣接する直線ベクトルをベジェ曲線でつなぎ、生成された複数のベジェ曲線をさらに１つのベジェ曲線に置き換える方法が提案されている（例えば非特許文献１参照）。
【０００４】
これを図８を参照して説明する。
【０００５】
図８（ａ）は、文字「５」の文字輪郭を複数のベジェ曲線で近似した場合の、文字輪郭の拡大図を示すものであるが、滑らかでない箇所（丸印で囲った部分）が発生している。
【０００６】
このような滑らかでない箇所は、図８（ｂ）に示すように、白丸で示す直線近似の制御点を結ぶ直線ベクトルを、２つのベジェ曲線で近似させたときの各ベジェ曲線の曲径が異なることに起因して発生する。なお、図８（ｂ）において、黒丸はベジェ曲線の制御点を示す。
【０００７】
そこで、一度生成されたベジェ曲線（図８（ｂ））を、図８（ｃ）に示すように、さらに大きな１つのベジェ曲線に置き換えることにより、滑らかな輪郭形状を実現している。
【０００８】
また、特許文献１には、複数の輪郭画素からベジェ変換を行う方法が提案されている。
【非特許文献１】Potrace: a polygon-based tracing algorithm（http://potrace.sourceforge.net/）
【特許文献１】特開２００６−１９７５５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、上記のように、隣接する直線ベクトルをベジェ曲線でつなぎ、生成された複数のベジェ曲線をさらに１つのベジェ曲線に置き換える方法では、一旦生成されたベジェ曲線をさらに大きなベジェ曲線へ置き換えるという、繰り返し処理が実行されることから、処理時間が非常に長くなるという問題があった。
【００１０】
このような問題は、前記特許文献１によっても解決できなかった。
【００１１】
この発明は、上記実情に鑑みてなされたものであり、文字、図形、表等の画像データのアウトラインデータを生成する場合に、直線ベクトルを曲線に置き換える処理方法を実行するものでありながら、処理時間を従来よりも短縮することができる画像処理装置を提供し、さらには同装置で実行される画像処理方法、及び該方法を画像処理装置のコンピュータに実行させるための画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題は、以下の手段によって解決される。
（１）原稿をスキャナ手段により読み取ることにより得られた画像データに対して、輪郭画素を抽出する輪郭画素抽出手段と、前記輪郭画素抽出手段により抽出された輪郭画素を結んで直線ベクトルを生成する直線ベクトル生成手段と、前記直線ベクトル生成手段により生成された連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さいかどうかを判断するとともに、両端の直線ベクトルのなす角度が設定値より大きいかどうかを判断する判断手段と、前記判断手段により、中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルとそれらの延長線上の交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定する制御点設定手段と、前記制御点設定手段により設定された各制御点を結んで、曲線ベクトルを生成する曲線ベクトル生成手段と、を備えたことを特徴とする画像処理装置。
（２）前記判断手段は、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する前項１に記載の画像処理装置。
（３）前記判断手段は、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する前項１に記載の画像処理装置。
（４）画像処理装置が実行する画像処理方法であって、原稿をスキャナ手段により読み取ることにより得られた画像データに対して、輪郭画素を抽出するステップと、前記抽出された輪郭画素を結んで直線ベクトルを生成するステップと、前記生成された連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さいかどうかを判断するとともに、両端の直線ベクトルのなす角度が設定値より大きいかどうかを判断する判断ステップと、中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルとそれらの延長線上の交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定するステップと、前記設定された各制御点を結んで、曲線ベクトルを生成するステップと、を備えたことを特徴とする画像処理方法。
（５）前記判断ステップでは、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する前項４に記載の画像処理方法。
（６）前記判断ステップでは、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する前項４に記載の画像処理方法。
（７）原稿をスキャナ手段により読み取ることにより得られた画像データに対して、輪郭画素を抽出するステップと、前記抽出された輪郭画素を結んで直線ベクトルを生成するステップと、前記生成された連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さいかどうかを判断するとともに、両端の直線ベクトルのなす角度が設定値より大きいかどうかを判断する判断ステップと、中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルとそれらの延長線上の交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定するステップと、前記設定された各制御点を結んで、曲線ベクトルを生成するステップと、を画像処理装置のコンピュータに実行させるための画像処理プログラム。
（８）前記判断ステップでは、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものとコンピュータに判断させる請求項７に記載の画像処理プログラム。
（９）前記判断ステップでは、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものとコンピュータに判断させる前項７に記載の画像処理プログラム。
【発明の効果】
【００１３】
前項（１）に記載の発明によれば、連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルとそれらの交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定し、設定された各制御点を結んで、曲線ベクトルを生成するから、曲線への変換操作を繰り返すことなく１回の変換処理で、連続する３つの直線ベクトルを曲線ベクトルに変換することができ、文字等の輪郭形状の品質を保持したまま、処理時間を短縮することができる。
【００１４】
前項（２）に記載の発明によれば、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断されるから、中間の直線ベクトルが設定値より小さいかどうかの判断を確実に行うことができる。
【００１５】
前項（３）に記載の発明によれば、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断されるから、中間の直線ベクトルが設定値より小さいかどうかの判断を確実に行うことができる。
【００１６】
前項（４）に記載の発明によれば、曲線への変換操作を繰り返すことなく１回の変換処理で、連続する３つの直線ベクトルを曲線ベクトルに変換することができ、文字等の輪郭形状の品質を保持したまま、処理時間を短縮することができる。
【００１７】
前項（５）に記載の発明によれば、中間の直線ベクトルが設定値より小さいかどうかの判断を確実に行うことができる。
【００１８】
前項（６）に記載の発明によれば、中間の直線ベクトルが設定値より小さいかどうかの判断を確実に行うことができる。
【００１９】
前項（７）に記載の発明によれば、連続する３つの直線ベクトルにおいて、中間の直線ベクトルが設定値より小さく、かつ両端の直線ベクトルのなす角度が設定値より大きいと判断された場合には、両端の直線ベクトルの延長線上の交点を設定し、直線ベクトルと前記交点設定手段により設定された交点とを結んでできる２つの直線ベクトルのそれぞれ中点を、制御点として設定し、設定された各制御点を結んで、曲線ベクトルを生成する処理を、画像処理装置のコンピュータに実行させることができる。
【００２０】
前項（８）に記載の発明によれば、中間の直線ベクトルと両端の直線ベクトルの大きさを比較し、両端の直線ベクトルに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する処理を、画像処理装置のコンピュータに実行させることができる。
【００２１】
前項（９）に記載の発明によれば、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさを比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する処理を、画像処理装置のコンピュータに実行させることができる。
【発明を実施するための最良の形態】
【００２２】
以下、この発明の一実施形態を図面に基づいて説明する。
【００２３】
図１は、この発明の一実施形態に係る前記画像処理装置１の概略構成を示すブロック図である。この実施形態では、画像処理装置１として多機能デジタル画像形成装置であるＭＦＰ（Multi Function Peripherals）が用いられている。
【００２４】
画像処理装置１は、スキャナ部１１と、入力画像処理部１２と、記憶部１３と、ＣＰＵ１４と、ネットワークインターフェース（Ｉ／Ｆ）部１５と、出力画像処理部１６と、エンジン部１７と、ファクシミリ（ＦＡＸ）コントローラ１８と、操作パネル部１９等を備えている。
【００２５】
スキャナ部１１は、原稿台（図示せず）に置かれた原稿の画像を読み取り、画像データ（イメージデータ）を出力する読み取り手段である。
【００２６】
入力画像処理部１２は、前記スキャナ部１１で得られた画像データに対して、色変換、色補正、解像度変換、領域判別等の画像処理を実施する。
【００２７】
記憶部１３は、ＤＲＡＭ等の電子メモリと、ハードディスク等の磁気メモリ等で構成され、スキャナ部１１で読み取られた原稿の画像データや、他の画像形成装置あるいはユーザ端末等から送信されてきたデータ、その他のデータ等を記憶する。
【００２８】
ＣＰＵ１４は、図示しないＲＯＭ等の記録媒体に記録された動作プログラムに従って動作することにより、画像処理装置１の全体を統括制御するものであり、前述したコピー機能、プリンタ機能、ファクシミリ機能等を実現すると共に、操作パネル部１９における操作キーの検出、表示部の表示、入力されたデータの画像ファイル（ＪＰＥＧ、ＰＤＦ、ＴＩＦＦ等）への変更、電子メールの作成等を行う。さらにこの実施形態では、スキャナ部１４で読み込んだ原稿の画像データに対して、アウトラインデータの変換（生成）等の処理を実行するが、この処理については後述する。
【００２９】
ネットワークインターフェース部１５は、ネットワーク上の他の画像形成装置や、その他の外部機器例えばユーザ端末等との間での通信を制御するものである。
【００３０】
出力画像処理部は、画像データのスクリーン制御、スムージング処理、ＰＷＭ制御等を行う。
【００３１】
エンジン部１７は、出力画像処理部１６で生成されたデータを用紙に印字するものである。カラー印字可能な画像処理装置の場合は、イエロー、マゼンタ、シアン、ブラックの４色のトナーを用い、画像を形成する。
【００３２】
ＦＡＸコントローラ１８は、モデム、ＮＣＵ等からなり、ファクシミリの送受信の変復調、通信プロトコルの制御、電話回線との接続等を行う。
【００３３】
操作パネル部１９は、各種入力操作等のために使用されるものであり、テンキー、スタートキー等の操作キー部と液晶等からなる表示部を備えている。この操作パネル部１９により、送信宛先の入力、スキャン条件の選択、画像ファイルフォーマットの選択、処理の開始／中断等、ユーザへのインターフェース処理を実行する。
【００３４】
図２は、スキャナ部１１で読み取られた原稿の画像データが、エンジン部１７から出力（この例ではＰＤＦ出力）されるまでに、画像データに対して実施される画像処理の概要を説明するためのフローチャートである。
【００３５】
画像データ（イメージデータ）には、ステップＳ１で、解像度変換・下地除去処理等の前処理が施されたのち、ステップＳ２で、領域判別処理が実施される。
【００３６】
領域判別処理は写真・背景領域の判別処理Ｓ２１と、文字領域の判別処理Ｓ２２に分けられ、写真・背景領域の判別処理Ｓ２１では、明度算出、スムージング、写真・背景領域検出の各処理が行われる。明度算出処理は、入力されたフルカラー２４ｂｉｔの画像から、８ｂｉｔの明度画像を生成する処理である。スムージング処理は、前記明度画像に実施され、これによりノイズを除去する。写真・背景領域検出処理は、スムージング処理された画像をラベリング処理することにより、イメージ画像中に含まれる複数の写真・背景領域の位置を検出する処理である。
【００３７】
一方、文字領域の判別処理Ｓ２２では、明度算出、スムージング、文字領域検出、２値化の各処理が行われる。明度算出、スムージング、文字領域検出の各処理は、ステップＳ２の写真・背景領域の判別処理で実施される明度算出、スムージング、写真・背景領域検出の各処理と同様である。また、２値化処理は、文字領域検出処理により検出された文字領域に対し２値化処理を行い、文字と背景を分離する処理である。
【００３８】
次に、ステップＳ０３で、アウトラインデータ変換処理が行われる。このアウトラインデータ変換処理では、前記領域判別された文字領域に対し、文字輪郭のベクトル化処理を行うものであり、輪郭画素の抽出、直線ベクトル近似、曲線ベクトル近似の各処理が実行されるが、処理の具体的内容については後述する。
【００３９】
次いで、ステップＳ４において、前記ステップＳ３でアウトライン変換された文字領域と、文字以外の写真・背景領域に対して、最適な圧縮処理を行う。例えば、文字領域はベクトルデータ（位置情報）になっているため、ＦＬＡＴＥ圧縮方式のような可逆性の圧縮を行う。写真・背景領域は、画質よりも、ファイルサイズが小さくなることを優先し、低い解像度で、ＪＰＥＧ圧縮方式のような非可逆性の圧縮を行う。
【００４０】
前記ステップＳ３のアウトラインデータ変換処理について、詳細に説明する。
【００４１】
まず、２値化された文字画像に対して、輪郭画素の抽出処理を行う。具体的には、図３（ｂ）に示すような輪郭画素抽出パターン３１ａ〜３１ｄを予め用意しておき、文字画像を走査して前記輪郭画素抽出パターン３１ａ〜３１ｄに合致するパターンがあるかどうかを、パターンマッチングにより判定する。合致するパターンがあれば、明度の低いＯＮ画素の位置を、図３（ａ）に太線四角で示す輪郭画素として抽出する。
【００４２】
次に、抽出された輪郭画素を直線で結んで直線ベクトルを生成する直線ベクトル近似処理を行う。なお、近隣の輪郭画素は１つのベクトルとし、制御点の削減もこの時に行う。
【００４３】
次いで、曲線近似処理を実行する。この処理は、生成された直線ベクトルのうち、連続する３つの直線ベクトルに着目して行う。
【００４４】
図４（ａ）に、連続した３つの直線ベクトルＡＢ、ＢＣ、ＣＤを示す。これらの３個の直線ベクトルについて、中間の直線ベクトルＢＣが設定値より小さいかどうかを判断する。
【００４５】
中間の直線ベクトルＢＣが設定値より小さいかどうかの判断は、直線ベクトルＢＣの長さが一定数値よりも小さいか否かを比較することにより行われても良いが、この実施形態では次のようにして行われる。
【００４６】
即ち、中間の直線ベクトルＢＣと両端の直線ベクトルＡＢとＣＤの大きさを比較し、両端の直線ベクトルＡＢとＣＤに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断する。具体的には、この実施形態では、ＢＣ／ＡＢ＜１／５、ＢＣ／ＣＤ＜１／５のときに、中間の直線ベクトルＢＣが設定値より小さいものと判断される。
【００４７】
中間の直線ベクトルＢＣが設定値より小さいものと判断されると、図４（ｂ）に示すように、両端の直線ベクトルＡＢ及びＣＤの延長線上に交点Ｅを設定したのち、図４（ｃ）のように、両端の直線ベクトルＡＢとＣＤのなす角度、換言すれば直線ベクトルＡＥとＥＤのなす角度θを求め、θが設定値よりも大きいか否かを判断する。設定値はこの実施形態では１３０度に設定されている。
【００４８】
つまり、両端の直線ベクトルＡＢとＣＤに対する中間の直線ベクトル長さの比率が、ＢＣ／ＡＢ＜１／５、ＢＣ／ＣＤ＜１／５であり、かつ両端の直線ベクトルＡＢとＣＤのなす角度θがθ＞１３０度の場合には、３つの直線ベクトルＡＢ、ＢＣ、ＣＤは１つの曲線部分であると判定される。
【００４９】
そして、１つの曲線部分であると判定されると、図４（ｄ）に示すように、２つの直線ベクトルＡＥ、ＤＥのそれぞれ中点Ｆ、Ｇを、制御点としてそれぞれ設定し、図４（ｅ）に示すように、設定された２つの制御点Ｆ、Ｇを結んで、曲線ベクトルを生成する。つまりベジェ曲線への近似処理を行う。こうして、図５（ａ）のような滑らかさの欠ける文字等の輪郭形状が、図５（ｂ）に示すように滑らかな輪郭形状になる。
【００５０】
上記の説明から理解されるように、本実施形態ではベジェ曲線への近似処理は１回実施されるのみであり、従来のように複数回繰り返されることはない。このため、高速処理を行うことができ処理時間を短縮することができる。勿論、ベジェ曲線への近似により、文字等の輪郭形状の品質はそのまま保持される。
【００５１】
なお、両端の直線ベクトルＡＢとＣＤに対する中間の直線ベクトル長さの比率が、ＢＣ／ＡＢ＜１／５、ＢＣ／ＣＤ＜１／５のいずれかを満たさない場合、または両端の直線ベクトルＡＢとＣＤのなす角度θがθ＞１３０度を満たさない場合は、直線ベクトルＡＢ、ＢＣ、ＣＤの中点を制御点Ｈ、Ｉ、Ｊとして設定し、制御点ＨとＩ、制御点ＩとＪをそれぞれ２つの曲線で結んで近似する。
【００５２】
図６は、アウトラインデータ変換処理を示すフローチャートである。この処理は、画像処理装置１のＣＰＵ１４が、図示しないＲＯＭ等の記録媒体に記録された動作プログラムに従って動作することにより実行される。
【００５３】
前段の処理である文字領域判別処理におけるラベリング処理により、１文字単位に分離された全ての文字について、ステップＳ３１で、アウトラインデータ変換処理が終了したかどうかを判断し、終了していなければ（ステップＳ３１でＮＯ）、ステップＳ３２で、パターンマッチングによる輪郭画素の抽出処理を行う。そして、ステップＳ３３で、全ての画素について抽出処理が終了したかどうかを判断し、全ての画素について抽出処理が終了していなければ（ステップＳ３３でＮＯ）、ステップＳ３２に戻り、抽出処理を続行する。
【００５４】
全ての画素について抽出処理が終了していれば（ステップＳ３３でＹＥＳ）、ステップＳ３４で、抽出された輪郭画素を結ぶ直線ベクトル近似処理を行う。
【００５５】
次いで、ステップＳ３５では、抽出された全ての輪郭画素について直線ベクトル近似処理が終了したかどうかを判断し、終了していなければ（ステップＳ３５でＮＯ）、ステップＳ３４に戻って、直線ベクトル近似処理を続行する。
【００５６】
抽出された全ての輪郭画素について直線ベクトル近似処理が終了すれば（ステップＳ３５でＹＥＳ）、ステップＳ３６で曲線ベクトル近似処理を実行する。曲線ベクトル近似処理の内容については後述する。
【００５７】
次に、ステップＳ３７で、全ての直線ベクトルについて、曲線ベクトル近似処理が終了したかどうかを判断し、終了していなければ（ステップＳ３７でＮＯ）、ステップＳ３６に戻る。終了していれば（ステップＳ３７でＹＥＳ）、ステップＳ３１に戻る。
【００５８】
ステップＳ３１で、全ての文字についてアウトラインデータ処理が終了していれば（ステップＳ３１でＹＥＳ）、処理を終了する。
【００５９】
図７は、前記ステップＳ３６の曲線ベクトル近似処理のサブルーチンを示すフローチャートである。
【００６０】
ステップＳ３６１で、判定対象の直線ベクトルとその両側の直線ベクトルで構成される連続する３つの直線ベクトルＡＢ、ＢＣ、ＣＤに注目したのち、ステップＳ３６２で、各直線ベクトルの長さを抽出する。
【００６１】
次いで、ステップＳ３６３で、中間の直線ベクトルＢＣの長さと両端の直線ベクトルＡＢ、ＣＤとの長さの割合が、ＢＣ／ＡＢ＜１／５かつＢＣ／ＣＤ＜１／５であるかどうかを調べる。
【００６２】
ＢＣ／ＡＢ＜１／５かつＢＣ／ＣＤ＜１／５であれば（ステップＳ３６３でＹＥＳ）、ステップＳ３６４で、両端の直線ベクトルＡＢ及びＣＤの延長線上に交点Ｅを設定する。
【００６３】
次に、ステップＳ３６５で、２つの直線ベクトルＡＥとＥＤのなす角度θを求め、ステップＳ３６６で、θ＞１３０度かどうかを判断する。
【００６４】
θ＞１３０度であれば（ステップＳ３６６でＹＥＳ）、直線ベクトルＡＢ、ＢＣ、ＣＤは曲線部分であると判断し、ステップＳ３６７で、直線ベクトルＡＥ、ＥＤの各中点にそれぞれ制御点Ｆ、Ｇを設定する。
【００６５】
そして、ステップＳ３６８で、設定された制御点Ｆ、Ｇを結ぶ１つの曲線ベクトルを生成して、輪郭形状を該曲線で近似したのち、リターンする。
【００６６】
ステップＳ３６３において、ＢＣ／ＡＢ＜１／５、ＢＣ／ＣＤ＜１／５のいずれかを満たさない場合（ステップＳ３６３でＮＯ）や、ステップＳ３６６においてθ＞１３０度を満たさない場合（ステップＳ３６６でＮＯ）は、ステップＳ３６９に進む。
【００６７】
ステップＳ３６９では、直線ベクトルＡＢ、ＢＣ、ＣＤの各中点に制御点ＨＩＪをそれぞれ設定し、ステップＳ３７０で、制御点ＨとＩ、制御点ＩとＪをそれぞれ２つの曲線で結んで近似したのち、リターンする。
【００６８】
なお、図６のメインフローにリターンし、ステップＳ３７において、全ての直線ベクトルについて、曲線ベクトル近似処理が終了していなければ（ステップＳ３７でＮＯ）、図７のステップＳ３６１で、文字の輪郭に沿って次の連続した直線ベクトルに注目し、上記と同様の処理を処理を実行する。
【００６９】
以上、本実施形態を説明したが、本実施形態は上記実施形態に限定されることはない。
【００７０】
例えば、中間の直線ベクトルＢＣが設定値より小さいかどうかの判断を、中間の直線ベクトルＢＣと両端の直線ベクトルＡＢとＣＤの大きさを比較し、両端の直線ベクトルＡＢとＣＤに対する中間の直線ベクトル長さの比率が設定値より小さいときに、中間の直線ベクトルが設定値より小さいものと判断した。しかし、中間の直線ベクトルの大きさとベクトル変換対象の文字の大きさ（文字の縦及び／または横の長さ）を比較し、文字の大きさに対する中間の直線ベクトルの長さの比率が設定値より小さいとき、例えば、中間の直線ベクトルの長さ／文字の縦及び横の長さ＜１／１０のときに、中間の直線ベクトルが設定値より小さいものと判断するものとしても良い。
【００７１】
なお、文字の縦及び横の長さは公知の方法により検出すればよい。
【図面の簡単な説明】
【００７２】
【図１】この発明の一実施形態に係る画像処理装置の概略構成を示すブロック図である。
【図２】図１の画像処理装置において、スキャナ部により読み取られた画像データに実施される画像処理の一例を示すフローチャートである。
【図３】輪郭画素抽出処理を説明するための図である。
【図４】アウトラインデータ変換処理を説明するための図である。
【図５】アウトラインデータ変換処理の前後の輪郭形状を示す図である。
【図６】アウトラインデータ変換処理を示すフローチャートである。
【図７】図６のアウトラインデータ変換処理におけるステップＳ３６の曲線ベクトル近似処理のサブルーチンを示すフローチャートである。
【図８】従来のアウトラインデータ変換処理を説明するための図である。
【符号の説明】
【００７３】
１    画像処理装置
１１  スキャナ部
１２  入力画像処理部
１３  記憶部
１４  ＣＰＵ
１５  ネットワークインターフェース部
１６  出力画像処理部
１７  エンジン部
１８  ＡＸコントローラ
１９  操作パネル部
【図１】
2010113431.tif 000003
【図２】
2010113431.tif 000004
【図３】
2010113431.tif 000005
【図４】
2010113431.tif 000006
【図５】
2010113431.tif 000007
【図６】
2010113431.tif 000008
【図７】
2010113431.tif 000009
【図８】
2010113431.tif 000010