(57)【要約】【課題】  輪郭の細かな形状を維持しつつ長い直線を抽出すること。【解決手段】  ＭＦＰは、画像データから画像の輪郭を形成する複数の第１輪郭画素を抽出する輪郭画素抽出手段と、抽出された複数の第１輪郭画素を第１のしきい値で直線近似することによって、複数の第２の輪郭直線それぞれの両端となる複数の第２輪郭画素を抽出する第１直線近似手段（Ｓ０１）と、抽出された複数の第２輪郭画素を第１のしきい値より大きな第２のしきい値で直線近似することによって、複数の第３の輪郭直線それぞれの両端となる複数の第３輪郭画素を抽出する第２直線近似手段（Ｓ０３〜Ｓ１５）と、を備える。【選択図】        図５
2010218349.tif 000002
【特許請求の範囲】
【請求項１】
二次元に配列された複数の画素それぞれの位置と画素値とを定義する画像データを取得する画像データ取得手段と、
前記取得された画像データから画像の輪郭を形成する第１輪郭画素を抽出する第１輪郭抽出手段と、
前記抽出された第１輪郭画素を第１のしきい値で直線近似することによって算出される第２輪郭直線と、その両端となる第２輪郭画素を抽出する第２輪郭抽出手段と、
前記第２輪郭抽出手段により抽出された第２輪郭画素を前記第１のしきい値より大きな第２のしきい値で直線近似することによって算出される第３輪郭直線と、その両端となる第３輪郭画素を抽出する第３輪郭抽出手段と、を備えた画像処理装置。
【請求項２】
前記第３輪郭抽出手段は、前記第２輪郭直線が複数の場合、長いものから順に選択する選択手段を含み、
選択された前記第２輪郭直線および該第２輪郭直線と繋がる別の第２輪郭直線それぞれの両端となる前記第２輪郭画素を直線近似の対象とする、請求項１に記載の画像処理装置。
【請求項３】
前記第３輪郭抽出手段は、前記第３輪郭抽出手段において算出された前記第３輪郭直線が所定の長さより短い場合、前記第３輪郭画素を抽出しない、請求項１または２に記載の画像処理装置。
【請求項４】
前記第３輪郭抽出手段において算出された前記第３輪郭直線の両端の画素である第１端部画素および第２端部画素と、前記第１端部画素に隣接し、かつ前記第２端部画素側に位置する前記第２輪郭画素である第３端部画素とを使用して、前記第１端部画素と前記第３端部画素とを結んだ第１直線と、前記第３端部画素と前記第２端部画素とを結んだ第２直線とを決定し、前記第１直線と前記第２直線とのなす角が所定の値以下の場合は、前記第３端部画素を前記第３輪郭画素として抽出する分割手段をさらに備えた、請求項１〜３のいずれかに記載の画像処理装置。
【請求項５】
前記分割手段は、前記第３輪郭抽出手段において算出された前記第３輪郭直線が所定の長さ以上であることをさらに条件として、前記第３端部画素を前記第３輪郭画素として抽出する、請求項４に記載の画像処理装置。
【請求項６】
二次元に配列された複数の画素の位置と画素値とを定義する画像データを取得するステップと、
前記取得された画像データから画像の輪郭を構成する第１輪郭画素を抽出するステップと、
前記抽出された第１輪郭画素を第１のしきい値で直線近似することによって算出される第２輪郭直線と、その両端となる第２輪郭画素を抽出するステップと、
前記抽出された第２輪郭画素を前記第１のしきい値より大きな第２のしきい値で直線近似することによって算出される第３輪郭直線と、その両端となる第３輪郭画素を抽出するステップと、を含む直線近似方法。
【請求項７】
二次元に配列された複数の画素の位置と画素値とを定義する画像データを取得するステップと、
前記取得された画像データから画像の輪郭を構成する第１輪郭画素を抽出するステップと、
前記抽出された第１輪郭画素を第１のしきい値で直線近似することによって算出される第２輪郭直線と、その両端となる第２輪郭画素を抽出するステップと、
前記抽出された第２輪郭画素を前記第１のしきい値より大きな第２のしきい値で直線近似することによって算出される第３輪郭直線と、その両端となる第３輪郭画素を抽出するステップと、をコンピュータに実行させる直線近似プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理装置、直線近似方法および直線近似プログラムに関し、特に画像の輪郭を抽出するアウトライン化処理を実行する画像処理装置、アウトライン化処理に適用される直線近似方法および直線近似プログラムに関する。
【背景技術】
【０００２】
近年、スキャナ等で原稿を読み取って、得られる画像データから画像の輪郭を抽出するアウトライン化処理が知られている。画像には、文字や線画が含まれる場合があり、文字は曲線を多く含み、線画は比較的長い直線を含む場合が多い。また、表などの文字と線画とが組み合わされた画像がある。文字の輪郭を抽出するためには、輪郭の直線部分を短くするのが好ましく、線画の輪郭を抽出するためには、輪郭の直線部分を長くするのが好ましい。このため、画像中で文字を含む領域と線画を含む領域とを予め判別し、それぞれの領域に対して処理を実行することにより文字の輪郭と、線画の輪郭とを別々に抽出する技術が知られている（例えば、特許文献１）。
【０００３】
しかしながら、画像中から画像中で文字を含む領域と線画を含む領域とを判別する処理に時間を要すること、また、正確に判別することが困難であるといった問題がある。さらに、文字と線画とが組み合わされた画像に対して、いずれの処理を実行するかによって、抽出される輪郭が異なってくる。文字を優先すれば線画のギザギザが目立ってしまい、線画を優先すれば文字の細部の形状が崩れてしまうといった問題がある。
【０００４】
また、特開平８−３０７７８号公報には、ベクトルの変化から直線成分を切り出し、直線成分の連続する数点からなるベクトルの角度と距離とからノイズか否かを判定して除去し、直線の起点と終点の距離が規定値より長くなった場合、緩やかに変化する角であると認識して直線化しない技術が記載されている。
【０００５】
しかしながら、特開平８−３０７７８号公報に記載の技術は、直線が規定値以上にならないといった問題がある。
【特許文献１】特開２００７−１２９５５７号公報
【特許文献２】特開平８−３０７７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の一つは、輪郭の細かな形状を維持しつつ長い直線を抽出することが可能な画像処理装置、直線近似方法および直線近似プログラムを提供することである。
【０００７】
この発明の他の目的は、処理を高速化することが可能な画像処理装置、直線近似方法および直線近似プログラムを提供することである。
【課題を解決するための手段】
【０００８】
上述した目的を達成するためにこの発明のある局面によれば、画像処理装置は、二次元に配列された複数の画素それぞれの位置と画素値とを定義する画像データを取得する画像データ取得手段と、取得された画像データから画像の輪郭を形成する第１輪郭画素を抽出する第１輪郭抽出手段と、抽出された第１輪郭画素を第１のしきい値で直線近似することによって算出される第２輪郭直線と、その両端となる第２輪郭画素を抽出する第２輪郭抽出手段と、第２輪郭抽出手段により抽出された第２輪郭画素を第１のしきい値より大きな第２のしきい値で直線近似することによって算出される第３輪郭直線と、その両端となる第３輪郭画素を抽出する第３輪郭抽出手段と、を備える。
【０００９】
この局面に従えば、画像データから画像の輪郭を形成する第１輪郭画素が抽出され、第１輪郭画素を第１のしきい値で直線近似することによって、第２輪郭直線とその両端となる第２輪郭画素が抽出され、第２輪郭画素を第２のしきい値で直線近似することによって、第３輪郭直線とその両端となる第３輪郭画素が抽出される。第１のしきい値で直線近似した後に、第１のしきい値より大きな第２のしきい値で直線近似するので、輪郭の細かな形状を維持しつつ長い直線を抽出することが可能な画像処理装置を提供することができる。
【００１０】
また、短い直線を含む文字と長い直線を含む線画とを含む領域から文字と線画それぞれの輪郭を直線近似するので、文字の領域と線画の領域とを区別する必要がなく、処理を高速化することが可能な画像処理装置を提供することができる。
【００１１】
好ましくは、第３輪郭抽出手段は、第２輪郭直線が複数の場合、長いものから順に選択する選択手段を含み、選択された愛２輪郭直線および該第２輪郭直線と繋がる別の第２輪郭直線それぞれの両端となる第２輪郭画素を直線近似の対象とする。
【００１２】
この局面に従えば、長いものから順に直線近似の対象とするので、効率的に処理することができ、処理時間を短くすることができる。
【００１３】
好ましくは、第３輪郭抽出手段は、第３輪郭抽出手段において算出された第３輪郭直線が所定の長さより短い場合、第３輪郭画素を抽出しない。
【００１４】
この局面に従えば、第３輪郭直線が所定の長さより短い場合、第３輪郭画素を抽出しないので、文字等の輪郭に対して第２のしきい値で直線近似をしないようにして、文字の輪郭の形状を維持することができる。
【００１５】
好ましくは、第３輪郭抽出手段において算出された第３輪郭直線の両端の画素である第１端部画素および第２端部画素と、第１端部画素に隣接し、かつ第２端部画素側に位置する第２輪郭画素である第３端部画素とを使用して、前記第１端部画素と前記第３端部画素とを結んだ第１直線と、前記第３端部画素と前記第２端部画素とを結んだ第２直線とを決定し、前記第１直線と前記第２直線とのなす角が所定の値以下の場合は、第３端部画素を第３輪郭画素として抽出する分割手段をさらに備える。
【００１６】
この局面に従えば、第２のしきい値を用いて直線近似して抽出された第３輪郭直線の端部における曲線形状を維持することができる。
【００１７】
好ましくは、分割手段は、第３輪郭抽出手段において算出された第３輪郭直線が所定の長さ以上であることをさらに条件として、第３端部画素を第３輪郭画素として抽出する。
【００１８】
この発明の他の局面によれば、直線近似方法は、二次元に配列された複数の画素の位置と画素値とを定義する画像データを取得するステップと、取得された画像データから画像の輪郭を構成する第１輪郭画素を抽出するステップと、抽出された第１輪郭画素を第１のしきい値で直線近似することによって算出される第２輪郭直線と、その両端となる第２輪郭画素を抽出するステップと、抽出された第２輪郭画素を第１のしきい値より大きな第２のしきい値で直線近似することによって算出される第３輪郭直線と、その両端となる第３輪郭画素を抽出するステップと、を含む。
【００１９】
この局面に従えば、輪郭の細かな形状を維持しつつ長い直線を抽出することが可能な直線近似方法を提供することができる。
【００２０】
また、文字の領域と線画の領域とを区別する必要がなく、処理を高速化することが可能な直線近似方法を提供することができる。
【００２１】
この発明のさらに他の局面に従えば、直線近似プログラムは、二次元に配列された複数の画素の位置と画素値とを定義する画像データを取得するステップと、取得された画像データから画像の輪郭を構成する第１輪郭画素を抽出するステップと、抽出された第１輪郭画素を第１のしきい値で直線近似することによって、算出される第２輪郭直線と、その両端となる第２輪郭画素を抽出するステップと、抽出された第２輪郭画素を第１のしきい値より大きな第２のしきい値で直線近似することによって算出される第３輪郭直線と、その両端となる複数の第３輪郭画素を抽出するステップと、をコンピュータに実行させる。
【００２２】
この局面に従えば、輪郭の細かな形状を維持しつつ長い直線を抽出することが可能な直線近似プログラムを提供することができる。
【００２３】
また、文字の領域と線画の領域とを区別する必要がなく、処理を高速化することが可能な直線近似プログラムを提供することができる。
【発明を実施するための形態】
【００２４】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００２５】
図１は、本発明の実施の形態の一つにおける画像形成システムの全体概要を示す図である。図１を参照して、画像形成システム１は、ネットワーク２にそれぞれ接続された画像処理装置としてのＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１００と、コンピュータ３，３Ａ，３Ｂ，３Ｃと、それぞれがＭＦＰ１００に接続されるデジタルカメラ４と、デジタルビデオカメラ５と、携帯情報端末６とを含む。
【００２６】
ＭＦＰ１００は、原稿を読取るためのスキャナ、画像データに基づいて紙などの記録媒体に画像を形成するための画像形成部、ファクシミリを含み、画像読取機能、複写機能、ファクシミリ送受信機能を備えている。
【００２７】
コンピュータ３，３Ａ，３Ｂ，３Ｃは、一般的なパーソナルコンピュータであり、ＭＦＰ１００を制御するためのプリンタドライバプログラムがインストールされている。コンピュータ３，３Ａ，３Ｂ，３Ｃは、それらがアプリケーションプログラムを実行することにより、生成されるプリントデータまたは画像データを、ＭＦＰ１００に出力する。ＭＦＰ１００は、携帯情報端末６から入力されるプリントデータまたは画像データを画像処理する、または、そのプリントデータまたは画像データに基づいて、記録媒体に画像を形成する。さらに、コンピュータ３，３Ａ，３Ｂ，３Ｃは、画像処理装置としても機能する。
【００２８】
デジタルカメラ４およびデジタルビデオカメラ５は、撮像した静止画像または動画像を記憶し、それらが接続されたＭＦＰ１００に静止画像または動画像の画像データを出力する。ＭＦＰ１００は、入力される静止画像の画像データを画像処理する、また、静止画像の画像データに基づき用紙等の記録媒体に静止画像を形成する。また、動画像の画像データが入力される場合、１フレームの画像の画像データを画像処理する、また、１フレームの画像の画像データに基づき記録媒体に画像を形成する。携帯情報端末６は、コンピュータ３，３Ａ，３Ｂ，３Ｃと同様に、それがアプリケーションプログラムを実行することにより生成されるデータまたは画像データを、ＭＦＰ１００に出力する。ＭＦＰ１００は、携帯情報端末６から入力されるデータまたは画像データを画像処理する、また、その画像データに基づいて、用紙等の記録媒体に画像を形成する。
【００２９】
ネットワーク２は、ローカルエリアネットワーク（ＬＡＮ）であり、接続形態は有線または無線を問わない。またネットワーク２は、ＬＡＮに限らず、ワイドエリアネットワーク（ＷＡＮ）、インターネット等であってもよい。
【００３０】
図２は、ＭＦＰの外観を示す斜視図である。図２を参照して、ＭＦＰ１００は、自動原稿搬送装置（ＡＤＦ）１０と、画像読取部２０と、画像形成部４０と、給紙部５０と、を含む。ＡＤＦ１０は、原稿台に搭載された複数枚の原稿をさばいて１枚ずつ順に、画像読取部２０に搬送する。画像読取部２０は、写真、文字、絵等の画像情報を原稿から光学的に読み取って画像データを取得する。画像形成部４０は、画像データが入力されると、画像データに基づいて用紙上に画像を形成する。画像形成部４０は、シアン、マゼンタ、イエロー、ブラックの４色のトナーを用いて画像を形成する。給紙部５０は、用紙を格納しており、格納した用紙を１枚ずつ画像形成部４０に供給する。ＭＦＰ１００は、その上面に操作パネル９を備える。
【００３１】
図３は、ＭＦＰのハードウェア構成の一例を示すブロック図である。図３を参照して、ＭＦＰ１００は、メイン回路１０１と、ファクシミリ部６０と、通信制御部６１と、ＡＤＦ１０と、画像読取部２０と、画像処理部３０と、画像形成部４０と、給紙部５０とを含む。メイン回路１０１は、中央演算装置（ＣＰＵ）１１１と、ＣＰＵ１１１の作業領域として使用されるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１２と、ＣＰＵ１１１が実行するプログラム等を記憶するためのＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１３と、表示部１１４と、操作部１１５と、大容量記憶装置としてのハードディスクドライブ（ＨＤＤ）１１６と、データ通信制御部１１７と、を含む。ＣＰＵ１１１は、表示部１１４、操作部１１５、ＨＤＤ１１６およびデータ通信制御部１１７とそれぞれ接続され、メイン回路１０１の全体を制御する。また、ＣＰＵ１１１は、ファクシミリ部６０、通信制御部６１、ＡＤＦ１０、画像読取部２０、画像処理部３０、画像形成部４０および給紙部５０と接続され、ＭＦＰ１００の全体を制御する。
【００３２】
表示部１１４は、液晶表示装置（ＬＣＤ）、有機ＥＬＤ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ  Ｄｉｓｐｌａｙ）等の表示装置であり、ユーザに対する指示メニューや取得した画像データに関する情報等を表示する。操作部１１５は、複数のキーを備え、キーに対応するユーザの操作による各種の指示、文字、数字などのデータの入力を受付ける。操作部１１５は、表示部１１４上に設けられたタッチパネルを含む。表示部１１４と操作部１１５とで、操作パネル９が構成される。
【００３３】
データ通信制御部１１７は、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）またはＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等の通信プロトコルで通信するためのインターフェースであるＬＡＮ端子１１８と、シリアル通信インターフェース端子１１９とを有する。データ通信制御部１１７は、ＣＰＵ１１１からの指示に従って、ＬＡＮ端子１１８またはシリアル通信インターフェース端子１１９に接続された外部の機器との間でデータを送受信する。
【００３４】
ＬＡＮ端子１１８に、ネットワーク２に接続するためのＬＡＮケーブルが接続される場合、データ通信制御部１１７は、ＬＡＮ端子１１８を介して接続された他のＭＦＰ、スキャナ、プリンタ、またはコンピュータ３，３Ａ，３Ｂ，３Ｃと通信する。シリアル通信インターフェース端子１１９に機器が接続された場合、データ通信制御部１１７は、シリアル通信インターフェース端子１１９に接続された機器、例えば、デジタルカメラ４、デジタルビデオカメラ５または携帯情報端末６との間で通信して画像データを入出力する。また、シリアル通信インターフェース端子１１９には、フラッシュメモリを内蔵したメモリカード１１９Ａが接続可能である。ＣＰＵ１１１は、データ通信制御部１１７を制御して、メモリカード１１９ＡからＣＰＵ１１１または画像処理部３０が実行するためのプログラムを読出し、読み出したプログラムをＲＡＭ１１２に記憶し、実行する。
【００３５】
なお、ＣＰＵ１１１または画像処理部３０が実行するためのプログラムを記憶する記録媒体としては、メモリカード１１９Ａに限られず、フレキシブルディスク、カセットテープ、光ディスク（ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）／ＭＯ（Ｍａｇｎｅｔｉｃ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ／ＭＤ（Ｍｉｎｉ  Ｄｉｓｃ）／ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ））、ＩＣカード（メモリカードを含む）、光カード、マスクＲＯＭ、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｏｎｉｃａｌｌｙ  ＥＰＲＯＭ）などの半導体メモリ等の媒体でもよい。さらに、ＣＰＵ１１１がインターネットに接続されたコンピュータからプログラムをダウンロードしてＨＤＤ１１６に記憶する、または、インターネットに接続されたコンピュータが画像データ記憶プログラムをＨＤＤ１１６に書込みするようにして、ＨＤＤ１１６に記憶されたプログラムをＲＡＭ１１２にロードしてＣＰＵ１１１または画像処理部３０で実行するようにしてもよい。ここでいうプログラムは、ＣＰＵ１１１または画像処理部３０により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【００３６】
通信制御部６１は、ＣＰＵ１１１をＰＳＴＮ７に接続するためのモデムである。ＭＦＰ１００には、ＰＳＴＮ７における電話番号が予め割り当てられており、ＰＳＴＮ７に接続されたファクシミリ装置からＭＦＰ１００に割り当てられた電話番号に発呼があると、通信制御部６１がその発呼を検出する。通信制御部６１は、発呼を検出すると通話を確立し、ファクシミリ部６０に通信させる。
【００３７】
ファクシミリ部６０は、ＰＳＴＮ７に接続され、ＰＳＴＮ７にファクシミリデータを送信する、またはＰＳＴＮ７からファクシミリデータを受信する。ファクシミリ部６０は、受信したファクシミリデータを、ＲＡＭ１１２に一時記憶する。また、ファクシミリ部６０は、受信したファクシミリデータを画像形成部４０でプリント可能なプリントデータに変換して、画像形成部４０に出力する。これにより、画像形成部４０は、ファクシミリ部６０により受信されたファクシミリデータを記録シートにプリントする。また、ファクシミリ部６０は、ＨＤＤ１１６に記憶された画像データをファクシミリデータに変換して、ＰＳＴＮ７に接続されたファクシミリ装置または他のＭＦＰに出力する。これにより、ＨＤＤ１１６に記憶されたデータをファクシミリ装置または他のＭＦＰに出力することができる。なお、ファクシミリデータは画像データに含まれる。このように、ＭＦＰ１００は、ファクシミリ送受信機能を有する。
【００３８】
ＭＦＰ１００は、スキャナ機能を有し、画像読取部２０が原稿を読み取って出力する画像データが、ＲＡＭ１１２に一時的に記憶される。また、画像形成部４０は、画像読取部２０が原稿を読み取って出力する画像データに基づいて、用紙等の記録シート上に画像を形成する。このため、ＭＦＰ１００は、コピー機能を有する。さらに、データ通信制御部１１７は、ネットワーク２に接続された他のＰＣ３、３Ａ，３Ｂ，３Ｃのいずれかから受信した画像データ、または、シリアル通信インターフェース端子１１９に接続されたデジタルカメラ４、デジタルビデオカメラ５および携帯情報端末６のいずれかから受信された画像データをＲＡＭ１１２に一時的に記憶する。そして、ＲＡＭ１１２に一時的に記憶された画像データに基づいて、用紙等の記録シート上に画像を形成する。このため、ＭＦＰ１００は、プリント機能を有する。
【００３９】
画像処理部３０は、ＲＡＭ１１２に記憶された画像データを画像処理する。画像処理部３０は、ＭＦＰ１００がスキャナ機能またはコピー機能を能動化する場合には、画像読取部２０が原稿を読み取って出力する画像データを画像処理する。また、画像処理部３０は、ＭＦＰ１００がファクシミリ機能を能動化する場合には、ファクシミリ部６０が受信するファクシミリデータ（画像データ）を画像処理する。さらに、画像処理部３０は、データ通信制御部１１７が、ネットワーク２に接続された他のＰＣ３、３Ａ，３Ｂ，３Ｃ、スキャナ、ＭＦＰのいずれかから受信した画像データ、またはシリアル通信インターフェース端子１１９に接続されたデジタルカメラ４、デジタルビデオカメラ５および携帯情報端末６のいずれかから受信された画像データを画像処理する。
【００４０】
図４は、画像処理部の機能の一例を示す機能ブロック図である。図４を参照して、画像処理部３０は、画像データを文字領域と背景領域とに分離する文字／背景分離部３０１と、背景領域の画像データを処理し、背景領域データを出力する背景処理部３０３と、文字領域の画像データを処理し、文字領域データを出力するアウトライン変換部３０５と、背景領域データと文字領域データとを合成した出力データを生成する合成部３０７と、出力データを出力する出力部３０９と、を含む。
【００４１】
文字／背景分離部３０１は、ＣＰＵ１１１から画像データが入力され、画像データを文字領域と、背景領域とに分離する。画像データは、二次元に配列された複数の画素それぞれの位置と画素値とを定義する。画像データは、カラーであってもよいし、モノクロであってもよい。カラーの場合は、例えば、赤（Ｒ）、緑（Ｇ）およびＢ（青）の３つのプレーン画像を含む。画素値は、多値であってもよいし、２値であってもよい。文字領域は、文字、線画が表された領域である。背景領域は、写真等の画像が現された領域である。文字領域は、階調の変化が激しい特性を有し、写真領域は階調の変化がなだらかな特性を有する。この特性の違いを利用して、画像データを、文字領域と背景領域とに分離する。文字／背景分離部３０１は、背景領域の画像データを背景処理部３０３に出力し、文字領域の画像データをアウトライン変換部３０５に出力する。なお、画像データを文字領域と背景領域とに分離する方法は、画像データの別の特性を利用して分離するようにしてもよい。
【００４２】
背景処理部３０３は、背景領域の画像データを、スムージング処理等の画像処理をして、画像処理後の画像データを圧縮し、背景領域データを合成部３０７に出力する。圧縮方式は、特に限定するものではないが、写真などの画像の圧縮に適したＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）フォーマットに圧縮するのが好ましい。
【００４３】
アウトライン変換部３０５は、アウトライン処理部３１１と、後処理部３１３と、を備える。アウトライン処理部３１１は、頂点検出部３１５と、直線近似部３１７と、ベジエ近似部３１９と、を含む。頂点検出部３１５は、文字領域の画像データ中で、所定の値以上の画素値の集まりの周辺の複数の画素を順に走査し、周辺の複数の画素のうち、画素の配列する方向が変化する位置の画素を、頂点として検出し、検出した画素を抽出する。頂点検出部３１５により頂点として抽出される画素を、ここでは第１輪郭画素という。
【００４４】
アウトライン処理部３１１には、画像データのうち文字領域の部分が入力されるので、所定の値以上の画素値の集まりは、文字または線画を構成する部分を示す。頂点検出部３１５は、頂点として検出した第１輪郭画素それぞれが検出された順番と、その第１輪郭画素の画像データ中における位置と、を含む第１輪郭画素情報を直線近似部３１７に出力する。頂点検出部３１５は、所定の値以上の画素値の集まり、換言すれば、文字または線を構成する部分の周辺の複数の画素を順に走査するので、検出された順番が前後の２つの第１輪郭画素を結ぶ直線が、文字または線を構成する部分の輪郭の一部を構成する。
【００４５】
直線近似部３１７は、第１輪郭画素情報に基づいて、第１の直線近似処理と、第２の直線近似処理と、を実行する。第１の直線近似処理は、複数の第１輪郭画素を第１しきい値Ｔ１で直線近似することによって、第２輪郭直線を抽出する処理である。第２輪郭直線は、複数の第１輪郭画素からの距離が第１しきい値Ｔ１以内となる直線である。第１しきい値Ｔ１は、文字の輪郭に含まれる直線部分を直線にするのに適した値に設定される。第１しきい値Ｔ１は、予め定めてあってもよいし、画像データから文字を抽出し、文字のサイズを測定することにより定めるようにしてもよい。
【００４６】
ここでは、直線近似部３１７は、第１の直線近似処理を実行する場合、基準となる第１輪郭画素を始点に設定し、その始点から順番が２つ後の第１輪郭画素を終点に設定し、始点と終点との間の順番の第１輪郭画素のすべてが始点と終点とを結ぶ直線から第１しきい値Ｔ１以下であれば、始点と終点とを結ぶ直線を第２輪郭直線に仮に決定する。次に、始点から順番が１つ前の第１輪郭画素を始点に設定し、始点と終点との間の順番の第１輪郭画素のすべてが始点と終点とを結ぶ直線から第１しきい値Ｔ１以下であれば、始点と終点とを結ぶ直線を第２輪郭直線に仮に決定する。
【００４７】
始点と終点との間の順番の第１輪郭画素の少なくとも１つが始点と終点とを結ぶ直線から第１しきい値Ｔ１より大きくなるまで終点と始点とを移動させ、始点と終点との間の順番の第１輪郭画素のすべてが始点と終点とを結ぶ直線から第１しきい値Ｔ１以下となる最後の始点と終点とを結ぶ直線を第２輪郭直線に決定する。ここでは、決定された第２輪郭直線の両端の始点と終点の第１輪郭画素を、特に第２輪郭画素という。なお、第２輪郭直線を決定する方法は、別の方法を用いてもよい。
【００４８】
第２の直線近似処理は、複数の第２輪郭画素を第２しきい値Ｔ２で直線近似することによって、第３輪郭直線を抽出する処理である。第３輪郭直線は、複数の第２輪郭画素からの距離が第２しきい値Ｔ２以内となる直線である。第２しきい値Ｔ２は、第１しきい値Ｔ１よりも大きい。このため第２の直線近似処理においては、第１の直線近似処理に比較して、より長い直線に近似することができる。第２しきい値Ｔ２は、予め定めてあってもよいし、画像データに基づいて定まる第１しきい値Ｔ１に応じて定められるようにしてもよい。
【００４９】
ここでは、直線近似部３１７は、第２の直線近似処理を実行する場合、基準となる第２輪郭画素を始点に設定し、その始点から順番が２つ後の第２輪郭画素を終点に設定し、始点と終点との間の順番の第２輪郭画素のすべてが始点と終点とを結ぶ直線から第２しきい値Ｔ２以下であれば、始点と終点とを結ぶ直線を第３輪郭直線に仮に決定する。次に、始点から順番が１つ前の第２輪郭画素を始点に設定し、始点と終点との間の順番の第２輪郭画素のすべてが始点と終点とを結ぶ直線から第２しきい値Ｔ２以下であれば、始点と終点とを結ぶ直線を第３輪郭直線に仮に決定する。
【００５０】
始点と終点との間の順番の第２輪郭画素の少なくとも１つが始点と終点とを結ぶ直線から第２しきい値Ｔ２より大きくなるまで終点と始点とを移動させ、始点と終点との間の順番の第２輪郭画素のすべてが始点と終点とを結ぶ直線から第２しきい値Ｔ２以下となる最後の始点と終点とを結ぶ直線を第３輪郭直線に決定する。ここでは、決定された第３輪郭直線の両端の始点と終点の第２輪郭画素を、特に第３輪郭画素という。
【００５１】
直線近似部３１７は、第２の直線近似処理を実行し、抽出した複数の第２輪郭画素の両端の複数の第３輪郭画素の位置と順番とをベジエ近似部３１９に出力する。
【００５２】
ベジエ近似部３１９は、複数の第３輪郭画素の位置と順番とから複数の第３輪郭画素の位置をベジエ近似し、ベジエ近似した複数の第３輪郭画素と順番とからアウトラインデータを生成し、アウトラインデータを後処理部３１３に出力する。
【００５３】
後処理部３１３は、アウトラインデータを圧縮した文字領域データを生成し、それを合成部３０７に出力する。圧縮方法は、例えば、ＦＬＡＴＥ圧縮を用いる。
【００５４】
合成部３０７は、背景処理部３０３が出力する背景領域データと、アウトライン変換部３０５が出力する文字領域データとを合成し、合成した合成データを出力部３０９に出力する。ここでは、合成データは、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａt）である。出力部３０９は、出力データをＣＰＵ１１１に出力する。
【００５５】
図５は、直線近似処理の流れの一例を示すフローチャートである。この直線近似処理は、画像処理部３０がＲＯＭ１１３に記憶された直線近似プログラムを実行することにより、画像処理部３０により実行される処理である。図５を参照して、画像処理部３０は、複数の第１輪郭画素に対して、第１しきい値Ｔ１で第１の直線近似し、複数の第２輪郭直線を抽出する（ステップＳ０１）。そして、抽出された複数の第２輪郭直線の両端の画素を第２輪郭画素に設定する（ステップＳ０２）。この段階で、文字に対して最適な直線化が行われ、文字の直線部分の輪郭が直線に補正される。一方、第１しきい値Ｔ１は、文字に対して直線化処理を実行するのに適した値なので、表など線画の直線部分は、完全には直線にならない部分が存在する場合がある。そこで、ステップＳ０３以降の処理によって、文字を除く線画の直線部分の輪郭を直線に変換する。
【００５６】
次のステップＳ０３においては、複数の第２輪郭画素のうち処理済でない２つが両端となる直線のうちから最長の第２輪郭直線を処理対象直線として選択する。第２輪郭画素のうちこの段階で処理済のものについては、後述するステップＳ１４において処理済に設定されたものである。そして、処理対象直線が選択されたか否かを判断する（ステップＳ０４）。処理対象直線として最長の第２輪郭直線が選択されたならば処理をステップＳ０５に進め、そうでなければ処理を終了する。
【００５７】
ステップＳ０５においては、処理対象直線を第１候補直線に設定する。第１候補直線は、第１の直線近似後の新たな直線となる候補を示す。そして、変数Ｌに第１候補直線の長さを設定する。変数Ｌは、ステップＳ０７以降の処理が実行される前の段階における第１候補直線の長さを一時的に記憶しておくための変数である。
【００５８】
ステップＳ０７においては、第１候補直線の始点と、終点の次の順番の第２輪郭画素とを結んだ直線を第２候補直線に設定する。第１候補直線の始点および終点は、第１候補直線の両端の第２輪郭画素を示し、始点は終点よりも順番が前である。第２候補直線は、第１の直線近似後に第１候補直線に代わる新たな直線の候補を示す。第２候補直線は、その始点が第１候補直線と同じ第２輪郭画素であり、その終点は第１候補直線の終点よりも順番が１つ後の第２輪郭画素である。
【００５９】
次のステップＳ０８においては、第２候補直線の始点と終点との間の順番の第２輪郭画素のすべてが、第２候補直線からの距離が第２しきい値Ｔ２以内か否かを判断する。第２候補直線の始点と終点との間の順番の第２輪郭画素のすべてが、第２候補直線からの距離が第２しきい値Ｔ２以内ならば処理をステップＳ０９に進め、第２候補直線の始点と終点との間の順番の第２輪郭画素の少なくとも１つでも第２候補直線からの距離が第２しきい値Ｔ２より大きければステップＳ０９をスキップして、処理をステップＳ１０に進める。
【００６０】
ステップＳ０９においては、第２候補直線を第１候補直線に設定し、処理をステップＳ１０に進める。
【００６１】
ここで、ステップＳ０７〜ステップＳ０９の処理について図６を用いて説明する。図６は、第１候補直線および第２候補直線の一例を示す第１の図である。図６においては、３つの第２輪郭画素Ｐ１，Ｐ２，Ｐ２を示し、第２輪郭画素Ｐ１は第２輪郭画素Ｐ２より順番が１つ前であり、第２輪郭画素Ｐ２は第２輪郭画素Ｐ３より順番が１つ前である。ここでは、第２輪郭画素Ｐ１と第２輪郭画素Ｐ２とを結ぶ直線が第１候補直線であり、第２輪郭画素Ｐ１が始点であり、第２輪郭画素Ｐ２が終点である。第２輪郭画素Ｐ１と第２輪郭画素Ｐ３とを結ぶ直線が第２候補直線であり、第２輪郭画素Ｐ１が始点であり、第２輪郭画素Ｐ３が終点である。第２輪郭画素Ｐ２は、第２候補直線の始点Ｐ１と終点Ｐ３との間の順番である。したがって、第２輪郭画素Ｐ１と第２輪郭画素Ｐ３とを結ぶ第２候補直線と第２輪郭画素Ｐ２との間の距離Ｌ１が、第２しきい値Ｔ２と比較される。距離Ｌ１が第２しきい値Ｔ２以内であれば、第２候補直線が第１候補直線に設定されるが、距離Ｌ１が第２しきい値Ｔ２より大きければ、第２候補直線が第１候補直線に設定されず、第１候補直線は変化しない。
【００６２】
図５に戻って、ステップＳ１０においては、第１候補直線の終点と、始点の１つ前の順番の第２輪郭画素とを結んだ直線を第２候補直線に設定する。ここでの第１候補直線は、ステップＳ０９において第１候補直線に設定された第２候補直線を含む。第２候補直線は、その終点が第１候補直線と同じ第２輪郭画素であり、始点は第１候補直線の始点よりも順番が１つ前の第２輪郭画素である。
【００６３】
次のステップＳ１１においては、第２候補直線の始点と終点との間の順番の第２輪郭画素のすべてが、第２候補直線からの距離が第２しきい値Ｔ２以内か否かを判断する。第２候補直線の始点と終点との間の順番の第２輪郭画素のすべてが、第２候補直線からの距離が第２しきい値Ｔ２以内ならば処理をステップＳ１２に進め、第２候補直線の始点と終点との間の順番の第２輪郭画素の少なくとも１つでも第２候補直線からの距離が第２しきい値Ｔ２より大きければステップＳ１２をスキップして、処理をステップＳ１３に進める。ステップＳ１２においては、第２候補直線を第１候補直線に設定し、処理をステップＳ１３に進める。
【００６４】
ここで、ステップＳ１０〜ステップＳ１２の処理について図７を用いて説明する。図７は、第１候補直線および第２候補直線の一例を示す第２の図である。図７においては、図６に示した第２候補直線が第１候補直線に設定された場合の状態を示している。図７を参照して、図６に示した３つの第２輪郭画素Ｐ１，Ｐ２，Ｐ２に加えて、第２輪郭画素Ｐ１よりも順番が１つ前の第２輪郭画素Ｐ４を示している。第２輪郭画素Ｐ１と第２輪郭画素Ｐ３とを結ぶ直線が第１候補直線であり、第２輪郭画素Ｐ１が始点であり、第２輪郭画素Ｐ３が終点である。第２輪郭画素Ｐ１より順番が１つ前の第２輪郭画素Ｐ４と第２輪郭画素Ｐ３とを結ぶ直線が第２候補直線であり、第２輪郭画素Ｐ４が始点であり、第２輪郭画素Ｐ３が終点である。第２輪郭画素Ｐ１および第２輪郭画素Ｐ２は、第２候補直線の始点Ｐ４と終点Ｐ３との間の順番である。したがって、第２輪郭画素Ｐ４と第２輪郭画素Ｐ３とを結ぶ第２候補直線と第２輪郭画素Ｐ１との間が距離Ｌ２となり、第２輪郭画素Ｐ４と第２輪郭画素Ｐ３とを結ぶ第２候補直線と第２輪郭画素Ｐ２との間が距離Ｌ３となる。距離Ｌ２および距離Ｌ３とが、第２しきい値Ｔ２と比較される。距離Ｌ２および距離Ｌ３とがともに第２しきい値Ｔ２以内であれば、第２候補直線が第１候補直線に設定されるが、距離Ｌ２および距離Ｌ３の少なくとも１つが第２しきい値Ｔ２より大きければ、第２候補直線が第１候補直線に設定されず、第１候補直線は変化しない。
【００６５】
図５に戻って、ステップＳ１３においては、第１候補直線の長さが変数Ｌより大きいか否かを判断する。第１候補直線の長さが変数Ｌより大きければ処理をステップＳ０６に戻すが、そうでなければ処理をステップＳ１４に進める。ステップＳ０７〜ステップＳ１２が実行される前後で第１候補直線の長さが変化したか否かを判断する。第１候補直線が延長されなくなるまでステップＳ０７〜ステップＳ１２の処理が繰り返される。
【００６６】
ステップＳ１４においては、第１候補直線の始点と終点との間の第２輪郭画素を処理済に設定する。図６に示した例において、第２候補直線が第１候補直線に設定されたならば、第２輪郭画素Ｐ２が処理済に設定される。一方、図６に示した例において、第２候補直線が第１候補直線に設定されなければ、第２輪郭画素Ｐ２は処理済に設定されない。また、図７に示した例において、第２候補直線が第１候補直線に設定されたならば、第２輪郭画素Ｐ１および第２輪郭画素Ｐ２とが処理済に設定される。一方、図７に示した例において、第２候補直線が第１候補直線に設定されなければ、第２輪郭画素Ｐ２のみが処理済に設定される。
【００６７】
ステップＳ１５においては、第１候補直線を輪郭を構成する第３輪郭直線に設定し、第１候補直線の始点の第２輪郭画素および終点の第２輪郭画素それぞれを第３輪郭画素に設定する。第３輪郭画素は、第２しきい値Ｔ２を用いて直線近似した後に抽出される第３輪郭直線の両端の第３輪郭画素である。
【００６８】
図８は、第１輪郭画素の一例を示す図である。図８において、第１輪郭画素をハッチングで示す。図９は、図８に示す第１輪郭画素に対して第１しきい値Ｔ１を用いて第１の直線近似処理を実行した結果を示す図である。図９において、第２輪郭画素をハッチングで示し、第２輪郭直線を実線で示す。図中の番号は、第２輪郭直線が抽出される順番を示す。
【００６９】
図１０は、図９に示す第２輪郭画素に対して第２しきい値Ｔ２を用いて第２の直線近似処理を実行した結果を示す図である。図１０を参照して、第３輪郭画素をハッチングで示し、第３輪郭直線を実線で示す。図中の番号は、第３輪郭直線が抽出される順番を示す。
【００７０】
図１１は、図８に示す第１輪郭画素に対して第２しきい値Ｔ２を用いて直線近似処理を実行した結果を示す図である。図中の実線は、輪郭として抽出される直線を示し、図中の番号は、輪郭としての直線が抽出される順番を示す。
【００７１】
図１０および図１１を参照して、図１０に示す第３輪郭直線が５本抽出されているのに対して、図１１に示す第２しきい値Ｔ２を用いて直線近似処理を実行した結果においては輪郭として４本の直線しか抽出されない。このため、図中の輪郭で囲まれる形状が、右上、左下の部分で、図１１に示す形状は鋭角に尖った輪郭となるのに対し、図１０に示す第３輪郭直線で囲まれる形状は、より大きな角で滑らかな輪郭となる。このため、第２しきい値Ｔ２よりも小さな第１しきい値Ｔ１で直線近似することにより、文字の直線部分を補正することができ、その後に第２しきい値Ｔ２を用いて直線近似することにより、文字の細部の形状を維持することができる。さらに、線画部分については、第２しきい値Ｔ２を用いて直線近似することにより、長い直線を補正することができる。
【００７２】
＜変形例＞
変形例におけるＭＦＰ１００においては、上述した第２の直線近似処理に、第２輪郭直線しきい値Ｓより長い第３輪郭直線について、端部の形状を見直して必要があれば補正する処理を追加したものである。
【００７３】
図１２および図１３は、変形例における直線近似処理の流れの一例を示すフローチャートである。図５に示した直線近似処理と比較して、ステップＳ１４の後にステップＳ１４Ａを追加した点、ステップＳ１５を削除した点、およびステップＳ２１〜ステップＳ３１を追加した点が異なる。以下、異なる点を主に説明する。
【００７４】
図１２を参照して、ステップＳ１４Ａにおいて第１候補直線第２輪郭直線の長さがしきい値Ｓ以上か否かを判断する。第１候補直線の長さがしきい値Ｓ以上ならば処理をステップＳ２１に進めるが、そうでなければ処理をステップＳ０３に戻す。しきい値Ｓは、文字のサイズにより定まり、文字に含まれる直線部分の最大の値とするのが好ましい。しきい値Ｓは、予め定めておいてもよいし、文字サイズを検出する場合には、検出された文字のサイズに基づいて定めるようにしてもよい。第１候補直線の長さがしきい値Ｓより小さければ、第１候補直線が、文字の輪郭の一部である可能性がある。このため、第１候補直線がしきい値Ｓ以上でなければステップＳ２１以降の処理を実行しないようにして、第３輪郭画素を抽出しない。これにより、文字の輪郭に対して第２しきい値Ｔ２を用いた第２の直線化処理を実行しないようにして、文字の細部の形状を維持することができる。
【００７５】
図１３を参照して、ステップＳ２１においては、第１候補直線の始点よりも順番が後の第１輪郭画素を補正用画素に設定する。
【００７６】
そして、第１候補直線の始点と補正用画素とを結ぶ第３候補直線と、補正用画素と終点とを結ぶ第４候補直線とのなす角がしきい値Ｒ以下か否かを判断する。第３候補直線と第４候補直線とのなす角がしきい値Ｒ以下ならば処理をステップＳ２３に進め、そうでなければ処理をステップＳ２９に進める。ステップＳ２３においては、第３候補直線を第３輪郭直線に決定し、第１候補直線の始点と補正用画素とを第２輪郭画素に設定する。これにより、第１候補直線の始点側の端部における曲線形状を維持することができる。このため、直線と文字が重なる部分において、文字の輪郭の曲線形状が維持される。したがって、文字の細部の輪郭を抽出することができる。
【００７７】
次のステップＳ２４においては、第１候補直線の始点を補正用画素に変更する。換言すれば、第４候補直線を第１候補直線に設定する。そして、第１候補直線の終点よりも順番が１つ前の第１輪郭画素を補正用画素に設定する（ステップＳ２５）。
【００７８】
そして、ステップＳ２６において、第１候補直線の始点と補正用画素とを結ぶ第３候補直線と、補正用画素と終点とを結ぶ第４候補直線とのなす角がしきい値Ｒ以下か否かを判断する。第３候補直線と第４候補直線とのなす角がしきい値Ｒ以下ならば処理をステップＳ２７に進め、そうでなければステップＳ２８に進める。ステップＳ２７においては、第３候補直線と第４候補直線とを第３輪郭直線に決定し、補正用画素と第１候補直線の終点とを第２輪郭画素に設定し、処理をステップＳ０３に戻す。これにより、第１候補直線の終点側の端部における曲線形状を維持することができる。
【００７９】
ステップＳ２８においては、第１候補直線を第３輪郭直線に決定し、始点と終点とを第２輪郭画素に設定し、処理をＳ０３に戻す。第１候補直線の終点側の端部に曲線形状が存在しない場合には、補正することなく直線とすることができる。
【００８０】
一方、ステップＳ２９においては、第１候補直線の終点よりも順番が１つ前の第１輪郭画素を補正用画素に設定する。そして、第１候補直線の始点と補正用画素とを結ぶ第３候補直線と、補正用画素と終点とを結ぶ第４候補直線とのなす角がしきい値Ｒ以下か否かを判断する（ステップＳ３０）。第３候補直線と第４候補直線とのなす角がしきい値Ｒ以下ならば処理をステップＳ３１に進め、そうでなければステップＳ３２に進める。ステップＳ３１においては、第３候補直線と第４候補直線とを第３輪郭直線に決定し、補正用画素と第１候補直線の終点とを第２輪郭画素に設定し、処理をステップＳ０３に戻す。これにより、第１候補直線の終点側の端部における曲線形状を維持することができる。
【００８１】
ステップＳ３２においては、第１候補直線を第３輪郭直線に決定し、始点と終点とを第２輪郭画素に設定し、処理をＳ０３に戻す。第１候補直線の始点側および終点側の端部における曲線形状が存在しない場合には、補正することなく直線とすることができる。
【００８２】
ステップＳ２１〜ステップＳ３２の処理を図１４および図１５を用いて説明する。
【００８３】
図１４は、第１候補直線、第３候補直線および第４候補直線の一例を示す第１の図である。図１４においては、５つの第２輪郭画素Ｐ１１，Ｐ１２，Ｐ１３，Ｐ１４，Ｐ１５を示し、第２輪郭画素Ｐ１１，Ｐ１２，Ｐ１３，Ｐ１４，Ｐ１５の順に順番が付されている。そして、第２輪郭画素Ｐ１１と第２輪郭画素Ｐ１５とを結ぶ直線が第１候補直線として抽出された場合を例に示している。第２輪郭画素Ｐ１１が始点であり、第２輪郭画素Ｐ１５が終点である。第２輪郭画素Ｐ１１より順番が１つ後の第２輪郭画素Ｐ１２が補正用画素である。第３候補直線は、第１候補直線の始点である第２輪郭画素Ｐ１１と補正用画素Ｐ１２とを結ぶ直線であり、第４候補直線は、第１候補直線の終点である第２輪郭画素Ｐ１２と第２輪郭画素Ｐ１５とを結ぶ直線である。
【００８４】
図１４に示す例においては、第３輪郭直線と、第４輪郭直線とのなす角Ｒ１がしきい値Ｒ第３輪郭直線以下でないので、第３輪郭画素は決定されず、第１候補直線は変更されない。
【００８５】
図１５は、第１候補直線、第３候補直線および第４候補直線の一例を示す第２の図である。図１５においては、図１４に示した第４候補直線が第１候補直線に設定されなかった場合の状態を示している。第２輪郭画素Ｐ１１と第２輪郭画素Ｐ１５とを結ぶ直線が第１候補直線であり、第２輪郭画素Ｐ１１が始点であり、第２輪郭画素Ｐ１５が終点である。第１候補直線の終点である第２輪郭画素Ｐ１５より順番が１つ前の第２輪郭画素Ｐ１４が補正用画素である。第３候補直線は、第１候補直線の始点である第２輪郭画素Ｐ１１と補正用画素Ｐ１４とを結ぶ直線であり、第４候補直線は、第１候補直線の終点である第２輪郭画素Ｐ１５と補正用画素Ｐ１５とを結ぶ直線である。
【００８６】
図１５に示す例においては、第３候補直線と、第４候補直線とのなす角Ｒ２がしきい値Ｒ以下なので、第３候補直線および第４候補直線が第３輪郭直線に決定され、第１候補直線の始点である第２輪郭画素Ｐ１１と、補正用画素である第２輪郭画素Ｐ１４と、第１候補直線の終点である第２輪郭画素Ｐ１５とが第３輪郭画素に設定される。
【００８７】
以上説明したように、本実施の形態におけるＭＦＰ１００は、画像処理装置として機能し、画像データから画像の輪郭を形成する複数の第１輪郭画素を抽出し、複数の第１輪郭画素を第１のしきい値で第１の直線近似することによって、複数の第２輪郭直線それぞれの両端となる複数の第２輪郭画素を抽出し、複数の第２輪郭画素を第２のしきい値で第２の直線近似することによって、複数の第３輪郭直線それぞれの両端となる複数の第３輪郭画素を抽出する。第１のしきい値で第１の直線近似した後に、第１のしきい値より大きな第２のしきい値で第２の直線近似するので、文字等の輪郭の細かな形状を維持しつつ、線画等の輪悪に含まれる長い直線を抽出することができる。
【００８８】
また、短い直線を含む文字と長い直線を含む線画とを含む領域から文字と線画それぞれの輪郭を直線近似するので、文字を含む文字領域と線画を含む線画領域とを区別する必要がない。このため、画像データ中で文字領域と線画領域とを判別する処理を実行しなくてよいので、処理を高速化することができる。
【００８９】
また、直線近似部３１７は、第２の直線近似処理を実行する場合、複数の第２輪郭直線のうち長いものから順に直線近似の処理対象となる処理対象直線を選択し、選択された処理対象直線および該処理対象直線と繋がる第２輪郭直線それぞれの両端となる第２輪郭画素を直線近似の対象とする。このため、長いものから順に第２の直線近似の対象とするので、効率的に処理することができ、処理時間を短くすることができる。
【００９０】
また、変形例におけるＭＦＰ１００においては、直線近似部３１７は、第２の直線近似処理を実行する場合、複数の第２輪郭直線のうちしきい値Ｓ以上の処理対象直線と、その処理対象直線と繋がる第２輪郭直線それぞれの両端となる第２輪郭画素を第２の直線近似の対象とするので、文字に含まれる直線に対しては、第１の直線近似のみを実行し、第２の直線近似の対象としない。このため、文字に含まれる直線の細部を維持することができる。
【００９１】
また、直線近似部３１７は、第２の直線近似処理を実行する場合、複数の第３輪郭画素のうち複数の第１候補直線（第３輪郭直線）のうちから選ばれた１の第１候補直線の両端の始点（第１端部画素）および終点（第２端部画素）それぞれと、始点（終点）より終点（始点）側に位置する第２輪郭画素である補正用画素（第３端部画素）とを結んだ第３候補直線（第１直線）および第４候補直線（第２直線）とのなす角がしきい値Ｒ以下の場合、第１候補直線を第３候補直線（第１直線）と第４候補直線（第２直線）とに分割する。このため、第２のしきい値を用いて第２の直線近似して抽出された第１候補直線の端部における曲線形状を維持することができる。
【００９２】
なお、上述した実施の形態においては画像処理装置の一例としてＭＦＰ１００について説明したが、図５、または図１２および図１３に示した処理をＭＦＰ１００に実行させるための直線近似方法、およびその直線近似方法をコンピュータ３に実行させるための直線近似プログラムとして発明を捉えることができるのは言うまでもない。
【００９３】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００９４】
【図１】本発明の実施の形態の一つにおける画像形成システムの全体概要を示す図である。
【図２】ＭＦＰの外観を示す斜視図である。
【図３】ＭＦＰのハードウェア構成の一例を示すブロック図である。
【図４】画像処理部の機能の一例を示す機能ブロック図である。
【図５】直線近似処理の流れの一例を示すフローチャートである。
【図６】第１候補直線および第２候補直線の一例を示す第１の図である。
【図７】第１候補直線および第２候補直線の一例を示す第２の図である。
【図８】第１輪郭画素の一例を示す図である。
【図９】第１輪郭画素に対して第１しきい値を用いて第１の直線近似処理を実行した結果を示す図である。
【図１０】第２輪郭画素に対して第２しきい値を用いて第２の直線近似処理を実行した結果を示す図である。
【図１１】第１輪郭画素に対して第２しきい値を用いて直線近似処理を実行した結果を示す図である。
【図１２】変形例における直線近似処理の流れの一例を示す第１のフローチャートである。
【図１３】変形例における直線近似処理の流れの一例を示す第２のフローチャートである。
【図１４】第１候補直線、第３候補直線および第４候補直線の一例を示す第１の図である。
【図１５】第１候補直線、第３候補直線および第４候補直線の一例を示す第２の図である。
【符号の説明】
【００９５】
１  画像形成システム、２  ネットワーク、３，３Ａ，３Ｂ，３Ｃ  コンピュータ、４  デジタルカメラ、５  デジタルビデオカメラ、６  携帯情報端末、９  操作パネル、２０  画像読取部、２０  画像読取部、３０  画像処理部、４０  画像形成部、５０  給紙部、６０  ファクシミリ部、６１  通信制御部、１００  ＭＦＰ、１０１  メイン回路、１１１  ＣＰＵ、１１２  ＲＡＭ、１１３  ＲＯＭ、１１４  表示部、１１５  操作部、１１６  ＨＤＤ、１１７  データ通信制御部、１１８  ＬＡＮ端子、１１９  シリアル通信インターフェース端子、１１９Ａ  メモリカード、３０１  背景分離部、３０３  背景処理部、３０５  アウトライン変換部、３０７  合成部、３０９  出力部、３１１  アウトライン処理部、３１３  後処理部、３１３  ベジエ近似部、３１３  後処理部、３１５  頂点検出部、３１７  直線近似部、３１９  ベジエ近似部。
【図１】
2010218349.tif 000003
【図２】
2010218349.tif 000004
【図３】
2010218349.tif 000005
【図４】
2010218349.tif 000006
【図５】
2010218349.tif 000007
【図６】
2010218349.tif 000008
【図７】
2010218349.tif 000009
【図８】
2010218349.tif 000010
【図９】
2010218349.tif 000011
【図１０】
2010218349.tif 000012
【図１１】
2010218349.tif 000013
【図１２】
2010218349.tif 000014
【図１３】
2010218349.tif 000015
【図１４】
2010218349.tif 000016
【図１５】
2010218349.tif 000017