(57)【要約】【課題】網点で表現される文字のエッジを従来よりも確実に検出する。【解決手段】画像形成装置１に次の手段を設ける。第一の方向に重みを偏在させた第一のフィルタで入力画像４に対してフィルタ処理を施すことによって第一のスムージング画像４１を算出する第一のスムージング処理部１０１。第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで入力画像４に対してフィルタ処理を施すことによって第二のスムージング画像４２を算出する第二のスムージング処理部１０２。第一のスムージング画像４１および第二のスムージング画像４２を合成した合成画像４３を算出する画像合成処理部１０３。合成画像４３からエッジ４Ｅを検出する文字エッジ検出部１０４。【選択図】図３
2014022893.tif 000002
【特許請求の範囲】
【請求項１】
第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対してフィルタ処理を施すことによって、第一の変換画像を算出する、第一のフィルタ処理手段と、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記フィルタ処理を施すことによって第二の変換画像を算出する第二のフィルタ処理手段と、
前記第一の変換画像および前記第二の変換画像を合成した合成画像を算出する合成手段と、
前記合成画像からエッジを検出するエッジ検出手段と、
を有することを特徴とするエッジ検出装置。
【請求項２】
前記フィルタ処理は、スムージング処理であり、
前記合成手段は、前記第一の変換画像および前記第二の変換画像それぞれの同一の位置にある画素のうちの明度の低い方を選ぶことによって、前記合成画像を算出する、
請求項１に記載のエッジ検出装置。
【請求項３】
前記フィルタ処理は、クロージング処理であり、
前記合成手段は、前記第一の変換画像および前記第二の変換画像それぞれの同一の位置にある画素のうちの明度の高い方を選ぶことによって、前記合成画像を算出する、
請求項１に記載のエッジ検出装置。
【請求項４】
前記フィルタ処理は、オープニング処理であり、
前記合成手段は、前記第一の変換画像および前記第二の変換画像それぞれの同一の位置にある画素のうちの明度の低い方を選ぶことによって、前記合成画像を算出する、
請求項１に記載のエッジ検出装置。
【請求項５】
第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対して第一のフィルタ処理を施すことによって、第一の変換画像を算出する、第一のフィルタ処理手段と、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出する第二のフィルタ処理手段と、
前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出する第一の合成手段と、
前記第一の合成画像から第一のエッジを検出する第一のエッジ検出手段と、
第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって、第三の変換画像を算出する、第三のフィルタ処理手段と、
前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出する、第四のフィルタ処理手段と、
前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出する第二の合成手段と、
前記第二の合成画像から第二のエッジを検出する第二のエッジ検出手段と、
前記第一のエッジのいずれかの画素および前記第二のエッジのいずれかの画素のうちの少なくとも１つと同じ位置にある画素からなる画素群を前記文字のエッジとして検出する文字エッジ検出手段と、
を有することを特徴とするエッジ検出装置。
【請求項６】
第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対して第一のフィルタ処理を施すことによって、第一の変換画像を算出する、第一のフィルタ処理手段と、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出する第二のフィルタ処理手段と、
前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出する第一の合成手段と、
第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって、第三の変換画像を算出する、第三のフィルタ処理手段と、
前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出する、第四のフィルタ処理手段と、
前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出する第二の合成手段と、
各画素の明度が、前記第一の合成画像および前記第二の合成画像それぞれの、当該画素と同一の位置にある画素の明度の平均である第三の合成画像を算出する、第三の合成手段と、
前記第三の合成画像からエッジを検出するエッジ検出手段と、
を有することを特徴とするエッジ検出装置。
【請求項７】
前記第一のフィルタ処理は、クロージング処理であり、
前記第一の合成手段は、前記第一の変換画像および前記第二の変換画像それぞれの同一の位置にある画素のうちの明度の高い方を選ぶことによって、前記第一の合成画像を算出し、
前記第二のフィルタ処理は、オープニング処理であり、
前記第二の合成手段は、前記第三の変換画像および前記第四の変換画像それぞれの同一の位置にある画素のうちの明度の低い方を選ぶことによって、前記第二の合成画像を算出する、
請求項５または請求項６に記載のエッジ検出装置。
【請求項８】
第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対してフィルタ処理を施すことによって、第一の変換画像を算出し、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記フィルタ処理を施すことによって第二の変換画像を算出し、
前記第一の変換画像および前記第二の変換画像を合成した合成画像を算出し、
前記合成画像からエッジを検出する、
ことを特徴とするエッジ検出方法。
【請求項９】
第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対して第一のフィルタ処理を施すことによって、第一の変換画像を算出し、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出し、
前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出し、
前記第一の合成画像から第一のエッジを検出し、
第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって、第三の変換画像を算出し、
前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出し、
前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出し、
前記第二の合成画像から第二のエッジを検出し、
前記第一のエッジのいずれかの画素および前記第二のエッジのいずれかの画素のうちの少なくとも１つと同じ位置にある画素からなる画素群を前記文字のエッジとして検出する、
ことを特徴とするエッジ検出方法。
【請求項１０】
第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対して第一のフィルタ処理を施すことによって、第一の変換画像を算出し、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出し、
前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出し、
第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって、第三の変換画像を算出し、
前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出し、
前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出し、
各画素の明度が、前記第一の合成画像および前記第二の合成画像それぞれの、当該画素と同一の位置にある画素の明度の平均である第三の合成画像を算出し、
前記第三の合成画像からエッジを検出する、
ことを特徴とするエッジ検出方法。
【請求項１１】
網点によって表わされる文字を含む画像から当該文字を検出するコンピュータに用いられるコンピュータプログラムであって、
前記コンピュータに、
第一の方向に重みを偏在させた第一のフィルタで前記画像に対してフィルタ処理を施すことによって第一の変換画像を算出する処理を実行させ、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記フィルタ処理を施すことによって第二の変換画像を算出する処理を実行させ、
前記第一の変換画像および前記第二の変換画像を合成した合成画像を算出する処理を実行させ、
前記合成画像からエッジを検出する処理を実行させる、
ことを特徴とするコンピュータプログラム。
【請求項１２】
網点によって表わされる文字を含む画像から当該文字を検出するコンピュータに用いられるコンピュータプログラムであって、
前記コンピュータに、
第一の方向に重みを偏在させた第一のフィルタで前記画像に対して第一のフィルタ処理を施すことによって第一の変換画像を算出する処理を実行させ、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出する処理を実行させ、
前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出する処理を実行させ、
前記第一の合成画像から第一のエッジを検出する処理を実行させ、
第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって第三の変換画像を算出する処理を実行させ、
前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出する処理を実行させ、
前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出する処理を実行させ、
前記第二の合成画像から第二のエッジを検出する処理を実行させ、
前記第一のエッジのいずれかの画素および前記第二のエッジのいずれかの画素のうちの少なくとも１つと同じ位置にある画素からなる画素群を前記文字のエッジとして検出する処理を実行させる、
ことを特徴とするコンピュータプログラム。
【請求項１３】
網点によって表わされる文字を含む画像から当該文字を検出するコンピュータに用いられるコンピュータプログラムであって、
第一の方向に重みを偏在させた第一のフィルタで前記画像に対して第一のフィルタ処理を施すことによって第一の変換画像を算出する処理を実行させ、
前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出する処理を実行させ、
前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出する処理を実行させ、
第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって第三の変換画像を算出する処理を実行させ、
前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出する処理を実行させ、
前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出する処理を実行させ、
各画素の明度が、前記第一の合成画像および前記第二の合成画像それぞれの、当該画素と同一の位置にある画素の明度の平均である第三の合成画像を算出する処理を実行させ、
前記第三の合成画像からエッジを検出する処理を実行させる、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像から文字のエッジを検出する装置および方法などに関する。
【背景技術】
【０００２】
従来、画像を印刷する際に、中間階調を表わすために網点が用いられる。網点は、小さな点（孤立点）が互いに離れて配置されてなるパターンである。
【０００３】
また、従来、用紙から読み取った画像に含まれる文字を検出する方法が、幾つか提案されている。
【０００４】
特許文献１に記載される方法によると、文字と網点とを区別するために次の処理を行う。画像信号を適応的スムージング部にて平滑化した後、エッジ強調部でエッジ強調する。そして、このエッジ強調後の信号に対して閾値判定部が閾値判定を行い、文字、網点の判定を行う。
【０００５】
特許文献２に記載される方法も、文字と網点とを区別するための方法である。特許文献２に記載される方法によると、読み取った原稿の画像データを入力し、画像データに基づき注目画素の濃度と周辺画素群の濃度差を所定の閾値と比較し、網点ドットの中央近傍の画素を検出し、検出結果を注目画素の近傍に再配置する。そして、再配置された検出結果に基づき網点領域を検出する。
【０００６】
特許文献３に記載される方法も、文字と網点とを区別するための方法である。特許文献３に記載される方法によると、注目画素が網点領域に含まれるか否かを判定する。各画素に対して低周波エッジの有無を判定し、注目画素とその近傍の画素とからなる領域の中に低周波エッジを有する画素が多い場合に、注目画素が低周波エッジを有していると最終的に判定する。更に、画素が網点領域に含まれておりしかも低周波エッジを有している場合に、この画素は網点上文字領域に含まれていると判定する。
【０００７】
ところで、網点は、文字にも用いられることがある。以下、網点によって表現される文字を「網点文字」と記載する。
【０００８】
特許文献１〜３に記載される方法では、網点文字が「文字」ではなく「網点」であると、判別されることがある。
【０００９】
そこで、網点文字であるか否かに関わらず文字を判別する方法が提案されている。特許文献４に記載される方法によると、入力画像データから文字エッジ領域を抽出する処理を、入力画像データに対して平滑化処理を行った後に、行う。
【特許文献１】特開２０１１−１９２８９号公報
【特許文献２】特開２００９−１３５７９６号公報
【特許文献３】特開２００６−５８０６号公報
【特許文献４】特開２００６−３４０２３０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、上記の従来の方法では、網点文字を上手く判別することができないことがある。特に、網点文字の周波数が低いほど、孤立点が完全になくなるように強く平滑化しなければならない。強く平滑化すると、網点文字の輪郭（エッジ）のボケが強くなる。複雑な文字であれば、形状が失われてしまうことがある。すると、輪郭の抽出の精度が落ちてしまう。
【００１１】
本願発明は、このような問題点に鑑み、網点で表現される文字のエッジを従来よりも確実に検出することができるようにすることを、目的とする。
【課題を解決するための手段】
【００１２】
本発明の一形態に係るエッジ検出装置は、第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対してフィルタ処理を施すことによって、第一の変換画像を算出する、第一のフィルタ処理手段と、前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記フィルタ処理を施すことによって第二の変換画像を算出する第二のフィルタ処理手段と、前記第一の変換画像および前記第二の変換画像を合成した合成画像を算出する合成手段と、前記合成画像からエッジを検出するエッジ検出手段と、を有する。
【００１３】
好ましくは、前記フィルタ処理は、スムージング処理であり、前記合成手段は、前記第一の変換画像および前記第二の変換画像それぞれの同一の位置にある画素のうちの明度の低い方を選ぶことによって、前記合成画像を算出する。
【００１４】
または、前記フィルタ処理は、クロージング処理であり、前記合成手段は、前記第一の変換画像および前記第二の変換画像それぞれの同一の位置にある画素のうちの明度の高い方を選ぶことによって、前記合成画像を算出する。
【００１５】
または、前記フィルタ処理は、オープニング処理であり、前記合成手段は、前記第一の変換画像および前記第二の変換画像それぞれの同一の位置にある画素のうちの明度の低い方を選ぶことによって、前記合成画像を算出する。
【００１６】
本発明の他の一形態に係るエッジ検出装置は、第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対して第一のフィルタ処理を施すことによって、第一の変換画像を算出する、第一のフィルタ処理手段と、前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出する第二のフィルタ処理手段と、前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出する第一の合成手段と、前記第一の合成画像から第一のエッジを検出する第一のエッジ検出手段と、第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって、第三の変換画像を算出する、第三のフィルタ処理手段と、前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出する、第四のフィルタ処理手段と、前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出する第二の合成手段と、前記第二の合成画像から第二のエッジを検出する第二のエッジ検出手段と、前記第一のエッジのいずれかの画素および前記第二のエッジのいずれかの画素のうちの少なくとも１つと同じ位置にある画素からなる画素群を前記文字のエッジとして検出する文字エッジ検出手段と、を有する。
【００１７】
本発明の他の一形態に係るエッジ検出装置は、第一の方向に重みを偏在させた第一のフィルタで、網点によって表わされる文字を含む画像に対して第一のフィルタ処理を施すことによって、第一の変換画像を算出する、第一のフィルタ処理手段と、前記第一の方向とは異なる第二の方向に重みを偏在させた第二のフィルタで前記画像に対して前記第一のフィルタ処理を施すことによって第二の変換画像を算出する第二のフィルタ処理手段と、前記第一の変換画像および前記第二の変換画像を合成した第一の合成画像を算出する第一の合成手段と、第三の方向に重みを偏在させた第三のフィルタで前記画像に対して第二のフィルタ処理を施すことによって、第三の変換画像を算出する、第三のフィルタ処理手段と、前記第三の方向とは異なる第四の方向に重みを偏在させた第四のフィルタで前記画像に対して前記第二のフィルタ処理を施すことによって第四の変換画像を算出する、第四のフィルタ処理手段と、前記第三の変換画像および前記第四の変換画像を合成した第二の合成画像を算出する第二の合成手段と、各画素の明度が、前記第一の合成画像および前記第二の合成画像それぞれの、当該画素と同一の位置にある画素の明度の平均である第三の合成画像を算出する、第三の合成手段と、前記第三の合成画像からエッジを検出するエッジ検出手段と、を有する。
【発明の効果】
【００１８】
本発明によると、網点で表現される文字を従来よりも確実に検出することができる。
【図面の簡単な説明】
【００１９】
【図１】画像形成装置を含むネットワークシステムの例を示す図である。
【図２】画像形成装置のハードウェア構成の例を示す図である。
【図３】第一の実施形態における画像形成装置の機能的構成の例を示す図である。
【図４】入力画像の例を示す図である。
【図５】入力画像の一部分を拡大した例を示す図である。
【図６】第一のフィルタおよび第二のフィルタの例を示す図である。
【図７】入力画像に対する処理の過程の例を示す図である。
【図８】画像形成装置の全体的な処理の流れの例を説明するフローチャートである。
【図９】第二の実施形態における画像形成装置の機能的構成の例を示す図である。
【図１０】入力画像の例を示す図である。
【図１１】第一のフィルタおよび第二のフィルタの例を示す図である。
【図１２】入力画像に対する処理の過程の例を示す図である。
【図１３】第三の実施形態における画像形成装置の機能的構成の例を示す図である。
【図１４】入力画像に対する処理の過程の例を示す図である。
【図１５】高さまたは幅の狭いフィルタによる不具合を説明するための図である。
【図１６】高さまたは幅が広いフィルタによるフィルタ処理の例を説明するための図である。
【図１７】クロージング処理の不具合の例を説明するための図である。
【図１８】オープニング処理の不具合の例を説明するための図である。
【図１９】第四の実施形態における画像形成装置の機能的構成の例を示す図である。
【図２０】入力画像に対する処理の過程の例を示す図である。
【図２１】入力画像に対する処理の過程の例を示す図である。
【図２２】画像形成装置の全体的な処理の流れの変形例を説明するフローチャートである。
【図２３】第五の実施形態における画像形成装置の機能的構成の例を示す図である。
【図２４】画像形成装置の全体的な処理の流れの変形例を説明するフローチャートである。
【図２５】フィルタの向きの変形例を示す図である。
【図２６】フィルタの形状の変形例を示す図である。
【図２７】正方形のフィルタの例を示す図である。
【図２８】３つ１組のフィルタの例を示す図である。
【発明を実施するための形態】
【００２０】
〔第一の実施形態〕
図１は、画像形成装置１を含むネットワークシステムの例を示す図である。図２は、画像形成装置１のハードウェア構成の例を示す図である。
【００２１】
図１に示す画像形成装置１は、一般に複合機またはＭＦＰ（Multi Function Peripherals）などと呼ばれる装置であって、コピー、ファックス、スキャナ、ＰＣプリント、およびボックスなどの機能を集約した装置である。
【００２２】
「ＰＣプリント機能」とは、パーソナルコンピュータまたはスマートフォンなどの端末装置から受信した画像データに基づいて画像を用紙に印刷する機能である。
【００２３】
「ボックス機能」とは、ユーザごとに「ボックス」または「パーソナルボックス」などと呼ばれる記憶領域を与えておき、各ユーザが自分の記憶領域によって画像データなどのデータを保存し管理するための機能である。ボックスは、パーソナルコンピュータにおける「フォルダ」または「ディレクトリ」に相当する。
【００２４】
画像形成装置１は、いわゆるＬＡＮ（Local Area Network）回線、公衆回線、またはインターネットなどの通信回線を介してパーソナルコンピュータまたはファックス端末などの装置と画像データのやり取りを行うことができる。
【００２５】
画像形成装置１は、図２に示すように、ＣＰＵ（Central Processing Unit）１０ａ、ＲＡＭ（Random Access Memory）１０ｂ、ＲＯＭ（Read Only Memory）１０ｃ、大容量記憶装置１０ｄ、スキャンユニット１０ｅ、プリントユニット１０ｆ、ＮＩＣ（Network Interface Card）１０ｇ、操作パネル１０ｈ、およびモデム１０ｉのほか、種々の制御回路などによって構成される。
【００２６】
スキャンユニット１０ｅは、用紙に記されている写真、文字、絵、図表などの画像を読み取って画像データを生成する装置である。
【００２７】
操作パネル１０ｈは、タッチパネルディスプレイおよびキー群などによって構成される。タッチパネルディスプレイは、ユーザに対するメッセージを与えるための画面、処理の結果を示す画面、またはユーザが画像形成装置１に対して指示を入力するための画面などを表示する。また、タッチパネルディスプレイは、タッチされた（押された）位置を検知し、ＣＰＵ１０ａにその位置を通知する。キー群は、テンキーおよびスタートキーのほか、ファックスおよびスキャンなどの各種の機能のモードに対応する画面に切り換えるための選択キーによって構成される。ユーザは、操作パネルを操作することによって、画像形成装置１に対してデータを入力しまたは指示を与えることができる。
【００２８】
ＮＩＣ１０ｇは、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）などのプロトコルに基づいて、パーソナルコンピュータなどの装置との間で通信を行う。
【００２９】
モデム１０ｉは、Ｇ３またはＧ４などのプロトコルに基づいて、ファックス端末などの装置との間で通信を行う。
【００３０】
プリントユニット１０ｆは、スキャンユニット１０ｅによって読み取られた画像を用紙に印刷する。また、パーソナルコンピュータまたはファックス端末から受信した画像データに基づいて画像を用紙に印刷する。ボックスに保存されている画像データに基づいて画像を用紙に印刷することもできる。
【００３１】
ＲＯＭ１０ｃおよび大容量記憶装置１０ｄには、上述の各機能を実現するためのプログラムがインストールされている。さらに、画像の中から文字を検出するための文字検出プログラム３がインターネットされている。これらのプログラムは、必要に応じてＲＡＭ１０ｂにロードされ、ＣＰＵ１０ａによって実行される。大容量記憶装置１０ｄとして、ハードディスクまたはフラッシュメモリなどが用いられる。
【００３２】
以下、文字検出プログラム３として、第一の文字検出プログラム３１が用いられる場合を例に説明する。
【００３３】
図３は、第一の実施形態における画像形成装置１の機能的構成の例を示す図である。図４は、入力画像４の例を示す図である。図５は、入力画像４の一部分を拡大した例を示す図である。図６は、第一のフィルタ６０Ａおよび第二のフィルタ６０Ｂの例を示す図である。図７は、入力画像４に対する処理の過程の例を示す図である。
【００３４】
第一の文字検出プログラム３１によると、図３に示す第一のスムージング処理部１０１、第二のスムージング処理部１０２、画像合成処理部１０３、文字エッジ検出部１０４、および文字領域検出部１０５などが実現される。
【００３５】
第一のスムージング処理部１０１ないし文字領域検出部１０５は、入力された画像データに基づいて処理を実行する。以下、図４に示すような、文字を表わす文字領域４Ａおよび下地を表わす下地領域４Ｂからなる入力画像４の画像データが入力された場合を例に説明する。文字領域４Ａおよび下地領域４Ｂは、図５に示すように、網点のパターンが用いられている。
【００３６】
入力画像４の画像データは、スキャンユニット１０ｅが用紙をスキャンすることによって取得されたものである。または、パーソナルコンピュータ、スマートフォン、またはファックス端末から受信したものであってもよい。ボックスに記憶されているものであってもよい。
【００３７】
第一のスムージング処理部１０１および第二のスムージング処理部１０２は、それぞれ独立して、相違するフィルタ（空間フィルタ）を用いて入力画像４に対してスムージング（平滑化）処理を施す。第一のスムージング処理部１０１は、図６（Ａ）に示すような、Ｍ×Ｎ個のセルからなる第一のフィルタ６０Ａを使用する。ただし、Ｍ＞Ｎ、である。したがって、第一のフィルタ６０Ａは、水平方向に重みを偏在させたフィルタである。一方、第二のスムージング処理部１０２は、図６（Ｂ）に示すような、Ｎ×Ｍ個のセルからなる第二のフィルタ６０Ｂを使用する。第二のフィルタ６０Ｂは、垂直方向に重みを偏在させたフィルタである。
【００３８】
さらに具体的には、第一のスムージング処理部１０１は、入力画像４の各画素を１つずつ注目し、注目した画素（以下、「注目画素」と記載する。）に対して次の処理を行う。注目画素に中心のセルが重なるように、第一のフィルタ６０Ａを入力画像４の上に重ねる。第一のフィルタ６０Ａが重なった部分の所定の要素の値（以下、「画素値」と記載する。）の平均値を算出する。つまり、注目画素を中心とするＭ×Ｎ個の一塊の画素群の画素値の平均値を算出する。第一の実施形態では、画素値の平均値として、明度の平均値を算出する。そして、算出した平均値を、注目画素のスムージング後の画素値に決定する。
【００３９】
第二のスムージング処理部１０２も、第一のスムージング処理部１０１と同様に処理を行う。ただし、第一のフィルタ６０Ａの代わりに第二のフィルタ６０Ｂを用いる。
【００４０】
第一のスムージング処理部１０１によって、スムージング処理がなされた図７（Ａ）のような入力画像４（以下、「第一のスムージング画像４１」と記載する。）の画像データが、得られる。また、第二のスムージング処理部１０２によって、図７（Ｂ）のような、スムージング処理がなされた入力画像４（以下、「第二のスムージング画像４２」と記載する。）の画像データが、得られる。第一のスムージング画像４１および第二のスムージング画像４２は、ともに、明度の分布を表わす画素であると、言える。
【００４１】
画像合成処理部１０３は、第一のスムージング画像４１および第二のスムージング画像４２それぞれの、位置が同じである画素同士を比較し、暗い方の画素を選択することによって、図７（Ｃ）のように第一のスムージング画像４１および第二のスムージング画像４２を合成する。第一の実施形態では、画素値が明度を表わすので、画素値が小さい方の画素を選択する。以下、合成された画像を「合成画像４３」と記載する。
【００４２】
すなわち、例えば入力画像４がＰ×Ｑ個の画素からなる場合は、第一のスムージング画像４１および第二のスムージング画像４２それぞれの（ｘ，ｙ）座標の画素同士を比較し、暗い方の画素を選択する。そして、この画素を、合成画像４３の（ｘ，ｙ）座標の画素として用いる。ただし、０≦ｘ＜Ｐ、０≦ｙ＜Ｑ、である。
【００４３】
文字エッジ検出部１０４は、合成画像４３に対してエッジの検出の処理を施す。この処理は、公知のエッジ検出方法を用いて行えばよい。これにより、図７（Ｄ）に示すようなエッジ４Ｅが検出される。
【００４４】
文字領域検出部１０５は、文字エッジ検出部１０４によって検出されたエッジ４Ｅで囲まれた領域の位置を特定し、入力画像４からこの位置の画像を抽出する。抽出した画像は、元の入力画像４の中の文字領域４Ａ（図４参照）と完全にまたはほぼ一致する。
【００４５】
なお、エッジ４Ｅを文字領域４Ａに含めてもよいし含めなくてもよい。後述する各実施形態においても、同様である。
【００４６】
図８は、画像形成装置１の全体的な処理の流れの例を説明するフローチャートである。次に、第一の実施形態における全体的な処理の流れを、図８のフローチャートを参照しながら説明する。
【００４７】
画像形成装置１は、第一のフィルタによって入力画像に対してフィルタ処理を施す（図８の＃７０１）。ステップ＃７０１とは独立して、第二のフィルタによって入力画像に対してフィルタ処理を施す（＃７０２）。第一の実施形態では、フィルタ処理としてスムージング処理（平滑化処理）を施す。
【００４８】
ステップ＃７０１および＃７０２のそれぞれの処理によって得られた画像（第一の実施形態では、第一のスムージング画像４１および第二のスムージング画像４２）を合成する（＃７０３）。そして、合成した画像からエッジを検出し（＃７０４）、エッジで囲まれた領域を文字の領域として検出する（＃７０５）。
【００４９】
第一の実施形態によると、入力画像から網点の文字を従来よりも確実に抽出することができる。
【００５０】
〔第二の実施形態〕
図９は、第二の実施形態における画像形成装置１の機能的構成の例を示す図である。図１０は、入力画像５１の例を示す図である。図１１は、第一のフィルタ６１Ａおよび第二のフィルタ６１Ｂの例を示す図である。図１２は、入力画像５１に対する処理の過程の例を示す図である。
【００５１】
第一の実施形態では、スムージング処理を施した２つの画像（第一のスムージング画像４１および第二のスムージング画像４２）を合成し、文字の位置を特定した。第二の実施形態では、クロージング処理を施した２つの画像を合成し、文字の位置を特定する。
【００５２】
以下、第一の実施形態との相違点を中心に、つまり、クロージング処理および合成の処理を中心に、説明する。第一の実施形態と重複する点は、説明を省略する。
【００５３】
第二の実施形態における画像形成装置１のハードウェア構成は、第一の実施形態の場合と同様であり、図２に示した通りである。ただし、第二の実施形態では、文字検出プログラム３として、第一の文字検出プログラム３１（図３参照）の代わりに、第二の文字検出プログラム３２が用いられる。第二の文字検出プログラム３２によると、図９に示す第一のクロージング処理部１２１、第二のクロージング処理部１２２、画像合成処理部１２３、文字エッジ検出部１２４、および文字領域検出部１２５などが実現される。
【００５４】
第一のクロージング処理部１２１ないし文字領域検出部１２５は、入力された画像データに基づいて処理を実行する。以下、図１０に示すような、文字を表わす文字領域５１Ａおよび下地を表わす下地領域５１Ｂからなる入力画像５１の画像データが入力された場合を例に説明する。文字領域５１Ａおよび下地領域５１Ｂは、第一の実施形態の文字領域４Ａおよび下地領域４Ｂと同様、図５に示したように、網点のパターンが用いられている。また、画像データは、第一の実施形態の場合と同様、種々の方法によって取得することができる。後述する各実施形態においても、同様である。
【００５５】
第一のクロージング処理部１２１および第二のクロージング処理部１２２は、それぞれ独立して、相違するフィルタを用いて入力画像５１に対してクロージング処理を施す。第一のクロージング処理部１２１は、図１１（Ａ）に示すような、Ｍ×Ｎ個のセルからなる第一のフィルタ６１Ａを使用する。一方、第二のクロージング処理部１２２は、図１１（Ｂ）に示すような、Ｎ×Ｍ個のセルからなる第二のフィルタ６１Ｂを使用する。
【００５６】
さらに具体的には、第一のクロージング処理部１２１は、入力画像５１の各画素を１つずつ注目し、次のように処理を行う。
【００５７】
第一のクロージング処理部１２１は、注目画素に中心のセルが重なるように、第一のフィルタ６１Ａを入力画像５１の上に重ねる。第一のフィルタ６１Ａが重なった部分の画素値（明度）の中から最小値を選出する。つまり、注目画素を中心とするＭ×Ｎ個の一塊の画素群の画素値の中から最小値を選出する。そして、選出した最小値を、注目画素の画素値に決定する。この処理は、一般に、「拡張処理」または「膨張処理」と呼ばれる。「ＭＩＮフィルタ処理」と呼ばれることもある。この処理により、入力画像５１において、全体的に、暗い画素が拡張（膨張）したように見える。
【００５８】
なお、入力画像５１が二値画像である場合は、第一のクロージング処理部１２１は、第一のフィルタ６１Ａが重なった部分の画素値に１つでも黒を表わす値（第二の実施形態では、「０」）が含まれていれば、その時点で「０」を選出すればよい。後述する各実施形態における拡張処理においても、同様である。
【００５９】
さらに、第一のクロージング処理部１２１は、拡張処理が施された入力画像５１に対して、次の処理を行う。この入力画像５１の各画素を１つずつ注目する。注目画素に中心のセルが重なるように、第一のフィルタ６１Ａを重ねる。第一のフィルタ６１Ａが重なった部分の画素値（明度）の中から最大値を選出する。つまり、注目画素を中心とするＭ×Ｎ個の一塊の画素群の画素値の中から最大値を選出する。そして、選出した最大値を、注目画素の画素値に決定する。この処理は、一般に、「縮小処理」または「収縮処理」と呼ばれる。「ＭＡＸフィルタ処理」と呼ばれることもある。この処理により、入力画像５１において、全体的に、暗い画素が縮小（収縮）したように見える。
【００６０】
なお、入力画像５１が二値画像である場合は、第二のクロージング処理部１２２は、第一のフィルタ６１Ａが重なった部分の画素値に１つでも白を表わす値（第二の実施形態では、「１」）が含まれていれば、その時点で「１」を選出すればよい。後述する各実施形態における収縮処理においても、同様である。
【００６１】
第二のクロージング処理部１２２も、第一のクロージング処理部１２１と同様に処理を行う。ただし、第一のフィルタ６１Ａの代わりに第二のフィルタ６１Ｂを用いる。
【００６２】
第一のクロージング処理部１２１によって、クロージング処理がなされた図１２（Ａ）のような入力画像５１（以下、「第一のクロージング画像５１１」と記載する。）の画像データが、得られる。また、第二のクロージング処理部１２２によって、クロージング処理がなされた図１２（Ｂ）のような入力画像５１（以下、「第二のクロージング画像５１２」と記載する。）の画像データが、得られる。第一のクロージング画像５１１および第二のクロージング画像５１２は、ともに、明度の分布を表わす画素であると、言える。
【００６３】
画像合成処理部１２３は、第一のクロージング画像５１１および第二のクロージング画像５１２それぞれの、位置が同じである画素同士を比較し、明るい方の画素を選択することによって、図１２（Ｃ）のように第一のクロージング画像５１１および第二のクロージング画像５１２を合成する。第二の実施形態では、画素値は明度を表わすので、画素値が大きい方の画素を選択する。以下、合成された画像を「合成画像５１３」と記載する。
【００６４】
文字エッジ検出部１２４は、第一の実施形態の文字エッジ検出部１０４と同様、合成画像５１３に対してエッジの検出の処理を施す。これにより、図１２（Ｄ）に示すようなエッジ５１Ｅが検出される。
【００６５】
文字領域検出部１２５は、第一の実施形態の文字領域検出部１０５と同様、文字エッジ検出部１２４によって検出されたエッジ５１Ｅで囲まれた領域の位置を特定し、入力画像５１からこの位置の画像を抽出する。抽出した画像は、元の入力画像５１の中の文字領域５１Ａ（図１０参照）と完全にまたはほぼ一致する。
【００６６】
第二の実施形態の全体的な処理の流れは、第一の実施形態と基本的に同様であり、前に図８で説明した通りである。ただし、ステップ＃７０１および＃７０２において、フィルタ処理として、クロージング処理を行う。また、ステップ＃７０１および＃７０２それぞれの処理によって得られた画像（第二の実施形態では、第一のクロージング画像５１１および第二のクロージング画像５１２）の合成の仕方が、第一の実施形態とは異なる。つまり、第一の実施形態では暗い方の画素を選択することによって合成したが、第二の実施形態では明るい方の画素を選択することによって合成する。
【００６７】
第二の実施形態によると、スムージング処理を用いた抽出が不調な場合であっても、入力画像から網点の文字を抽出することができる。
【００６８】
〔第三の実施形態〕
図１３は、第三の実施形態における画像形成装置１の機能的構成の例を示す図である。図１４は、入力画像５１に対する処理の過程の例を示す図である。
【００６９】
第二の実施形態では、クロージング処理を施した２つの画像を合成し、文字の位置を特定した。第三の実施形態では、オープニング処理を施した２つの画像を合成し、文字の位置を特定する。
【００７０】
以下、オープニング処理および合成の処理を中心に、説明する。第二の実施形態と重複する点は、説明を省略する。
【００７１】
第三の実施形態における画像形成装置１のハードウェア構成は、第一の実施形態の場合と同様であり、図２に示した通りである。ただし、第三の実施形態では、文字検出プログラム３として、第三の文字検出プログラム３３が用いられる。
【００７２】
第三の文字検出プログラム３３によると、図１３に示す第一のオープニング処理部１３１、第二のオープニング処理部１３２、画像合成処理部１３３、文字エッジ検出部１３４、および文字領域検出部１３５などが実現される。
【００７３】
第一のオープニング処理部１３１ないし文字領域検出部１３５は、入力された画像データに基づいて処理を実行する。以下、第三の実施形態と同様、入力画像５１（図１０参照）の画像データが入力された場合を例に説明する。
【００７４】
第一のオープニング処理部１３１および第二のオープニング処理部１３２は、それぞれ独立して、相違するフィルタを用いて入力画像５１に対してオープニング処理を施す。例えば、第二の実施形態と同様、第一のオープニング処理部１３１は第一のフィルタ６１Ａを用い、第二のオープニング処理部１３２は第二のフィルタ６１Ｂを用いればよい（図１１参照）。
【００７５】
すなわち、第一のオープニング処理部１３１および第二のオープニング処理部１３２は、それぞれ独立して、入力画像５１に対して縮小処理を施し、縮小処理が施された入力画像５１に対して拡張処理を行う。縮小処理および拡張処理の方法の例は、第二の実施形態で説明した通りである。
【００７６】
第一のオープニング処理部１３１によって、オープニング処理がなされた図１４（Ａ）のような入力画像５１（以下、「第一のオープニング画像５１５」と記載する。）の画像データが、得られる。また、第二のオープニング処理部１３２によって、オープニング処理がなされた図１４（Ｂ）のよう入力画像５１（以下、「第二のオープニング画像５１６」と記載する。）の画像データが、得られる。第一のオープニング画像５１５および第二のオープニング画像５１６は、ともに、明度の分布を表わす画素であると、言える。
【００７７】
画像合成処理部１３３は、第一のオープニング画像５１５および第二のオープニング画像５１６それぞれの、位置が同じである画素同士を比較し、暗い方の画素を選択することによって、図１４（Ｃ）のように第一のオープニング画像５１５および第二のオープニング画像５１６を合成する。第三の実施形態では、画素値は明度を表わすので、画素値が大きい方の画素を選択する。以下、合成された画像を「合成画像５１７」と記載する。
【００７８】
文字エッジ検出部１３４は、第二の実施形態の文字エッジ検出部１２４と同様、合成画像５１７に対してエッジの検出の処理を施す。これにより、図１４（Ｄ）に示すようなエッジ５１Ｅ’が検出される。
【００７９】
文字領域検出部１３５は、第二の実施形態の文字領域検出部１２５と同様、文字エッジ検出部１３４によって検出されたエッジ５１Ｅ’で囲まれた領域の位置を特定し、入力画像５１からこの位置の画像を抽出する。抽出した画像は、元の入力画像５１の中の文字領域５１Ａ（図１０参照）と完全にまたはほぼ一致する。
【００８０】
第三の実施形態の全体的な処理の流れは、第一の実施形態と基本的に同様であり、前に図８で説明した通りである。ただし、ステップ＃７０１および＃７０２において、フィルタ処理として、オープニング処理を行う。
【００８１】
第三の実施形態によると、スムージング処理を用いた抽出が不調な場合であっても、入力画像から網点の文字を抽出することができる。
【００８２】
〔第四の実施形態〕
図１５は、高さまたは幅の狭いフィルタによる不具合を説明するための図である。図１６は、高さまたは幅が広いフィルタによるフィルタ処理の例を説明するための図である。図１７は、クロージング処理の不具合の例を説明するための図である。図１８は、オープニング処理の不具合の例を説明するための図である。図１９は、第四の実施形態における画像形成装置１の機能的構成の例を示す図である。図２０は、入力画像５２に対する処理の過程の例を示す図である。図２１は、入力画像５３に対する処理の過程の例を示す図である。
【００８３】
ところで、文字の特性とフィルタの形状との関係によっては、次のような問題が生じ得る。
【００８４】
第一ないし第三の実施形態では、スムージング、クロージング、またはオープニングのいずれかの処理を、異なる２つのフィルタを用いて行うことによって、２つの結果を得た。そして、２つの結果のうちの少なくとも一方が理想的な結果であることを期待した上で、合成画像を生成した。フィルタの短辺は、どれだけ短くても構わない。つまり、Ｎは、１以上であればよい。
【００８５】
しかし、フィルタの短辺が短すぎると（Ｎの値が小さすぎると）、どちらのフィルタを用いても理想的な結果が得られないことがある。
【００８６】
ここで、ともに、Ｎ＝１、である横長のフィルタおよび縦長のフィルタを、それぞれ、第一のフィルタ６１Ａおよび第二のフィルタ６１Ｂとして用いて二値画像に対してクロージング処理における拡張処理を行う場合を例に、考える。
【００８７】
黒色の画素が十分に密集している領域は、どの画素を注目画素としても、２つのフィルタのうちの少なくとも一方によって黒色の画素が捕捉されることが多い。したがって、このような領域は、拡張処理によってほぼ黒一色になるはずである。
【００８８】
細長いフィルタを第一のフィルタ６１Ａおよび第二のフィルタ６１Ｂとして用いても、図１５（Ａ）および（Ｂ）のように、注目画素の位置によっては、黒色の画素を捕捉することができる場合がある。
【００８９】
ところが、注目画素が別の位置にある場合は、図１５（Ｃ）および（Ｄ）のように、どちらのフィルタによっても黒色の画素を１つも捕捉することができないことが、ある。このような位置の注目画素は、上手く黒色に変換されない。したがって、クロージング処理の結果、全体として、入力画像の中の文字が薄くなってしまう。他の処理においても、不具合が生じることがある。
【００９０】
一方、図１６（Ａ）および（Ｂ）にそれぞれ示すように、十分な長さの短辺のフィルタを第一のフィルタ６１Ａおよび第二のフィルタ６１Ｂとして用いれば、図１５に示す例においては、好適な結果が得られる。しかし、このようなフィルタを用いても、好適な結果が得られないことがある。それは、入力画像に複雑な文字が含まれているような場合である。
【００９１】
例えば、図１７（Ａ）に示す入力画像５２に対して、第二の実施形態の第一のクロージング処理部１２１および第二のクロージング処理部１２２のそれぞれがクロージング処理を実行すると、図１７（Ｂ）および（Ｃ）に示すように、隣り合う線（エッジ）同士がくっ付いてしまうことがある。このような不具合は、両者の間隔（間の画素数）が、フィルタの短辺の長さ（Ｎの値）よりも小さい場合に生じやすい。
【００９２】
これらの結果に基づいて合成画像を生成しても、図１７（Ｄ）に示すように好適な結果が得られず、エッジを的確に判別することができない。
【００９３】
入力画像に複雑な文字が含まれている場合は、第三の実施形態の方法を用いることつまりオープニング処理を行うが、考えられる。
【００９４】
しかし、オープニング処理において十分な長さの短辺のフィルタを用いても、好適な結果が得られないことがある。特に、入力画像に線の細い文字が含まれている場合である。
【００９５】
例えば、図１８（Ａ）に示す入力画像５３に対して、第三の実施形態の第一のオープニング処理部１３１および第二のオープニング処理部１３２のそれぞれがオープニング処理を実行すると、図１８（Ｂ）および（Ｃ）に示すように、文字の一部分が消えてしまう。このような不具合は、線の太さ（線の幅の画素数）が、フィルタの短辺の長さ（Ｎの値）よりも小さい場合に生じやすい。
【００９６】
これらの結果に基づいて合成画像を生成しても、図１８（Ｄ）に示すように好適な結果が得られず、エッジを的確に判別することができない。
【００９７】
以上の問題点に鑑みると、入力画像に含まれる文字の特定に応じてフィルタによる処理の方法を変える必要がある。しかし、どの方法を用いるのかを決めるのは、難しい。
【００９８】
第四の実施形態では、このような課題に鑑み、次の方法によって入力画像から文字を検出する。
【００９９】
第四の実施形態における画像形成装置１のハードウェア構成は、第一の実施形態の場合と同様であり、図２に示した通りである。ただし、第四の実施形態では、文字検出プログラム３として、第四の文字検出プログラム３４が用いられる。
【０１００】
第四の文字検出プログラム３４によると、図１９に示す第一のクロージング処理部１４１、第二のクロージング処理部１４２、最大明度画素選択部１４３、第一のオープニング処理部１４４、第二のオープニング処理部１４５、最小明度画素選択部１４６、画像合成処理部１４７、文字エッジ検出部１４８、および文字領域検出部１４９などが実現される。
【０１０１】
第一のクロージング処理部１４１ないし文字領域検出部１４９は、入力された画像データに基づいて処理を実行する。以下、図１７（Ａ）に示す入力画像５２の画像データが入力された場合を例に説明する。
【０１０２】
第一のクロージング処理部１４１および第二のクロージング処理部１４２は、それぞれ、第二の実施形態の第一のクロージング処理部１２１および第二のクロージング処理部１２２（図９参照）と同様、入力画像５２に対してクロージング処理を施す。
【０１０３】
すると、前に説明した通り、図１７（Ｂ）および（Ｃ）に示すような結果が得られる。以下、第一のクロージング処理部１４１によってクロージング処理が施された入力画像５２を「第一のクロージング画像５２１」と記載し、第二のクロージング処理部１４２によってクロージング処理が施された入力画像５２を「第二のクロージング画像５２２」と記載する。
【０１０４】
最大明度画素選択部１４３は、第二の実施形態の画像合成処理部１２３と同様、第一のクロージング画像５２１および第二のクロージング画像５２２それぞれの、位置が同じである画素同士を比較し、明るい方の画素を選択する。選択された画素からなる画像は、図１７（Ｄ）のような、第一のクロージング画像５２１および第二のクロージング画像５２２を合成した画像を表わす。そこで、以下、最大明度画素選択部１４３によって選択された画素群が表わす画像を「合成画像５２３」と記載する。
【０１０５】
第一のオープニング処理部１４４および第二のオープニング処理部１４５は、それぞれ、第三の実施形態の第一のオープニング処理部１３１および第二のオープニング処理部１３２（図１３参照）と同様、入力画像５２に対してオープニング処理を施す。
【０１０６】
すると、図２０（Ａ）および（Ｂ）に示すような結果が得られる。以下、第一のオープニング処理部１４４によってオープニング処理が施された入力画像５２を「第一のオープニング画像５２４」と記載し、第二のオープニング処理部１４５によってオープニング処理が施された入力画像５２を「第二のオープニング画像５２５」と記載する。
【０１０７】
最小明度画素選択部１４６は、第三の実施形態の画像合成処理部１３３と同様、第一のオープニング画像５２４および第二のオープニング画像５２５それぞれの、位置が同じである画素同士を比較し、暗い方の画素を選択する。選択された画素からなる画像は、図２０（Ｃ）のような、第一のオープニング画像５２４および第二のオープニング画像５２５を合成した画像を表わす。そこで、以下、最小明度画素選択部１４６によって選択された画素群が表わす画像を「合成画像５２６」と記載する。
【０１０８】
画像合成処理部１４７は、合成画像５２３および合成画像５２６それぞれの、位置が同じである画素の画素値（明度）同士の平均値を算出し、その平均値をその画素の画素値に決定することによって、合成画像５２３と合成画像５２６とを合成する。以下、合成された画像を「合成画像５２７」と記載する。
【０１０９】
文字エッジ検出部１４８は、第一の実施形態の文字エッジ検出部１０４（図３参照）などと同様、合成画像５２７に対してエッジの検出の処理を施す。これにより、エッジ５２Ｅが検出される。
【０１１０】
文字領域検出部１４９は、第一の実施形態の文字領域検出部１０５などと同様、文字エッジ検出部１４８によって検出されたエッジ５２Ｅで囲まれた領域の位置を特定し、入力画像５２からこの位置の画像を抽出する。抽出した画像は、文字と完全にまたはほぼ一致する。
【０１１１】
なお、図１８（Ａ）に示す入力画像５３の画像データが入力された場合は、第一のクロージング処理部１４１、第二のクロージング処理部１４２、および最大明度画素選択部１４３によって、それぞれ、図２１（Ａ）、（Ｂ）、および（Ｃ）に示す結果が得られる。また、第一のオープニング処理部１４４、第二のオープニング処理部１４５、および最小明度画素選択部１４６によって、それぞれ、図１８（Ｂ）、（Ｃ）、および（Ｄ）に示した結果が得られる。そして、画像合成処理部１４７は、図２１（Ｃ）および図１８（Ｄ）に示す画像を、明度の平均値を算出することによって合成し、文字エッジ検出部１４８は、合成された画像からエッジを検出し、文字領域検出部１４９は、エッジに基づいて入力画像５３から文字を検出する。
【０１１２】
図２２は、画像形成装置１の全体的な処理の流れの変形例を説明するフローチャートである。
【０１１３】
次に、第四の実施形態における全体的な処理の流れを、図２２のフローチャートを参照しながら説明する。
【０１１４】
画像形成装置１は、横長のフィルタによって入力画像に対して第一のフィルタ処理を施す（図２２の＃７４１）。ステップ＃７４１とは独立して、縦長のフィルタによって入力画像に対して第一のフィルタ処理を施す（＃７４２）。第四の実施形態では、第一のフィルタ処理としてクロージング処理を施す。そして、ステップ＃７４１および＃７４２のそれぞれの処理によって得られた画像を合成する（＃７４３）。
【０１１５】
ステップ＃７４１〜７４３の処理と前後してまたは並行して、画像形成装置１は、横長のフィルタによって入力画像に対して第二のフィルタ処理を施す（＃７４４）。ステップ＃７４４とは独立して、縦長のフィルタによって入力画像に対して第二のフィルタ処理を施す（＃７４５）。第四の実施形態では、第二のフィルタ処理としてオープニング処理を施す。そして、ステップ＃７４４および＃７４５のそれぞれの処理によって得られた画像を合成する（＃７４６）。
【０１１６】
さらに、画像形成装置１は、ステップ＃７４３で得られた画像およびステップ＃７４６で得られた画像を合成する（＃７４７）。そして、合成した画像からエッジを検出し（＃７４８）、エッジで囲まれた領域を文字の領域として検出する（＃７４９）。
【０１１７】
第四の実施形態によると、図１８および図１９に例示したような不調がある場合であっても、入力画像から網点の文字を抽出することができる。
【０１１８】
〔第五の実施形態〕
図２３は、第五の実施形態における画像形成装置１の機能的構成の例を示す図である。
【０１１９】
第四の実施形態では、クロージング処理の結果およびオープニング処理の結果の平均値を算出してからエッジを判別し文字を抽出した。第五の実施形態では、クロージング処理の結果およびオープニング処理の結果を別々に用いてエッジを判別する。そして、２つの判別結果に基づいて文字を抽出する。
【０１２０】
第五の実施形態における画像形成装置１のハードウェア構成は、第一の実施形態の場合と同様であり、図２に示した通りである。ただし、第五の実施形態では、文字検出プログラム３として、第五の文字検出プログラム３５が用いられる。
【０１２１】
第五の文字検出プログラム３４によると、図２３に示す第一のクロージング処理部１５１、第二のクロージング処理部１５２、第一の画像合成処理部１５３、第一の文字エッジ検出部１５４、第一のオープニング処理部１５５、第二のオープニング処理部１５６、第二の画像合成処理部１５７、第二の文字エッジ検出部１５８、エッジ合成部１５９、および文字領域検出部１５０などが実現される。
【０１２２】
以下、図１０に示した入力画像５１の画像データが入力された場合を例に、各部の処理を説明する。
【０１２３】
第一のクロージング処理部１５１ないし第一の文字エッジ検出部１５４は、第二の実施形態の第一のクロージング処理部１２１ないし文字エッジ検出部１２４（図９参照）と同様の処理を行う。よって、図１２（Ａ）〜（Ｃ）に示した結果と同様の結果が得られる。
【０１２４】
第一のオープニング処理部１５５ないし第二の文字エッジ検出部１５８は、第三の実施形態の第一のオープニング処理部１３１ないし文字エッジ検出部１３４（図１３参照）と同様の処理を行う。よって、図１４（Ａ）〜（Ｃ）に示した結果と同様の結果が得られる。
【０１２５】
エッジ合成部１５９は、第一の文字エッジ検出部１５４によって検出されたエッジ５１Ｅと第二の文字エッジ検出部１５８によって検出されたエッジ５１Ｅ’とを、重ね合わせることによって合成する。具体的には、入力画像５１の各画素がエッジの一部分であるか否かを、次のように判別する。その画素の位置と、エッジ５１Ｅの任意の画素の位置またはエッジ５１Ｅ’の任意の画素の位置とが一致するか否かをチェックする。そして、少なくとも一方と一致する場合は、その画素がエッジの一部分であると判別し、どちらとも一致しない場合は、その画素がエッジの一部分でないと判別する。
【０１２６】
文字領域検出部１５０は、第一の実施形態の文字領域検出部１０５などと同様、エッジ合成部１５９によって求められたエッジ５１Ｅ２で囲まれた領域の位置を特定し、入力画像５１からこの位置の画像を抽出する。抽出した画像は、文字領域５１Ａと完全にまたはほぼ一致する。
【０１２７】
図２４は、画像形成装置１の全体的な処理の流れの変形例を説明するフローチャートである。
【０１２８】
次に、第五の実施形態における全体的な処理の流れを、図２４のフローチャートを参照しながら説明する。
【０１２９】
画像形成装置１は、横長のフィルタによって入力画像に対して第一のフィルタ処理を施す（図２４の＃７５１）。ステップ＃７５１とは独立して、縦長のフィルタによって入力画像に対して第一のフィルタ処理を施す（＃７５２）。第五の実施形態では、第一のフィルタ処理としてクロージング処理を施す。そして、ステップ＃７５１および＃７５２のそれぞれの処理によって得られた画像を合成し（＃７５３）、合成した画像からエッジを検出する（＃７５４）。
【０１３０】
ステップ＃７５１〜７５４の処理と前後してまたは並行して、画像形成装置１は、横長のフィルタによって入力画像に対して第二のフィルタ処理を施す（＃７５５）。ステップ＃７５５とは独立して、縦長のフィルタによって入力画像に対して第二のフィルタ処理を施す（＃７５６）。第五の実施形態では、第二のフィルタ処理としてオープニング処理を施す。そして、ステップ＃７５５および＃７５６のそれぞれの処理によって得られた画像を合成し（＃７５７）、合成した画像からエッジを検出する（＃７５８）。
【０１３１】
さらに、画像形成装置１は、ステップ＃７５４で検出したエッジおよびステップ＃７５８で検出したエッジを合成し（＃７５９）、合成したエッジで囲まれた領域を文字の領域として検出する（＃７６０）。
【０１３２】
第五の実施形態によると、図１８および図１９に例示したような不調がある場合であっても、入力画像から網点の文字を抽出することができる。
【０１３３】
図２５は、フィルタの向きの変形例を示す図である。図２６は、フィルタの形状の変形例を示す図である。図２７は、正方形のフィルタの例を示す図である。図２８は、３つ１組のフィルタの例を示す図である。
【０１３４】
第一ないし第五の実施形態では、アルファベット、漢字、および平仮名などを入力画像から検出する場合を例に説明したが、数字および記号などを入力画像から検出することもできる。また、罫線を入力画像から検出することもできる。
【０１３５】
第一ないし第五の実施形態では、１組のフィルタとして、水平方向に重みを偏在させたフィルタおよび垂直方向に重みを偏在させたフィルタを用いたが、図２５（Ａ）のような、水平方向に対してα度の角度をなす方向に重みを偏在させたフィルタ、および、図２５（Ｂ）のような、垂直方向に対してα度の角度をなす方向に重みを偏在させたフィルタ、を用いてもよい。
【０１３６】
また、フィルタの形状は、長方形でなくても構わない。例えば、図２６（Ａ）および（Ｂ）に示すような楕円形のフィルタであってもよい。楕円形のフィルタは、図２６（Ｃ）および（Ｂ）に示すように傾いていても構わない。
【０１３７】
スムージング処理で用いるフィルタは、重みが一定の方向（角度）に偏在していれば、例えば図２７（Ａ）および（Ｂ）に示すように、正方形のフィルタであっても構わない。なお、各セルの数字は、相対的な重みを表わしている。
【０１３８】
３つ以上のフィルタを用いてもよい。例えば、図２８（Ａ）〜（Ｃ）に示す３つのフィルタを用いてスムージング処理を実行する。これにより、３つの画像が得られる。そして、位置が同じである３つの画素同士を比較し、明度が最も低い画素を選択することによって、３つの画像を１つの画像に合成する。クロージング処理およびオープニング処理も同様に３つ以上のフィルタを用いることができる。
【０１３９】
第四の実施形態および第五の実施形態では、第一のフィルタ処理としてクロージング処理を実行し、第二のフィルタ処理としてオープニング処理を実行したが、他の組合せであってもよい。例えば、第一のフィルタ処理の代わりにスムージング処理を行ってもよい。または、第二のフィルタ処理の代わりにスムージング処理を行ってもよい。スムージング処理を適用する場合の処理の詳細は、第一の実施形態で説明した通りである。
【０１４０】
図３、図９、図１３、図１９、および図２３にそれぞれ示した機能の全部または一部をＡＳＩＣ（Application Specific Integrated Circuit）またはＦＰＧＡ（Field Programmable Gate Array）などの回路によって実現してもよい。
【０１４１】
その他、画像形成装置１の全体または各部の構成、処理内容、処理順序などは、本発明の趣旨に沿って適宜変更することができる。
【符号の説明】
【０１４２】
１  画像形成装置（エッジ検出装置）
１０１  第一のスムージング処理部（第一のフィルタ処理手段）
１０２  第二のスムージング処理部（第二のフィルタ処理手段）
１０３  画像合成処理部（合成手段）
１０４  文字エッジ検出部（エッジ検出手段）
１２１  第一のクロージング処理部（第一のフィルタ処理手段）
１２２  第二のクロージング処理部（第二のフィルタ処理手段）
１２３  画像合成処理部（合成手段）
１２４  文字エッジ検出部（エッジ検出手段）
１３１  第一のオープニング処理部（第一のフィルタ処理手段）
１３２  第二のオープニング処理部（第二のフィルタ処理手段）
１３３  画像合成処理部（合成手段）
１３４  文字エッジ検出部（エッジ検出手段）
１４１  第一のクロージング処理部（第一のフィルタ処理手段）
１４２  第二のクロージング処理部（第二のフィルタ処理手段）
１４３  最大明度画素選択部（第一の合成手段）
１４４  第一のオープニング処理部（第三のフィルタ処理手段）
１４５  第二のオープニング処理部（第四のフィルタ処理手段）
１４６  最小明度画素選択部（第二の合成手段）
１４７  画像合成処理部（第三の合成手段）
１４８  文字エッジ検出部（エッジ検出手段）
１５１  第一のクロージング処理部（第一のフィルタ処理手段）
１５２  第二のクロージング処理部（第二のフィルタ処理手段）
１５３  第一の画像合成処理部（第一の合成手段）
１５４  第一の文字エッジ検出部（第一のエッジ検出手段）
１５５  第一のオープニング処理部（第三のフィルタ処理手段）
１５６  第二のオープニング処理部（第四のフィルタ処理手段）
１５７  第二の画像合成処理部（第二の合成手段）
１５８  第二の文字エッジ検出部（第二のエッジ検出手段）
１５９  エッジ合成部（文字エッジ検出手段）
４  入力画像（画像）
４１  第一のスムージング画像（第一の変換画像）
４２  第二のスムージング画像（第二の変換画像）
４３  合成画像
４Ａ  文字領域
４Ｅ  エッジ
５１  入力画像（画像）
５１Ａ  文字領域
５１Ｅ  エッジ
５１１  第一のクロージング画像（第一の変換画像）
５１２  第二のクロージング画像（第二の変換画像）
５１３  合成画像
５１５  第一のオープニング画像（第一の変換画像）
５１６  第二のオープニング画像（第二の変換画像）
５１７  合成画像
５２  入力画像（画像）
５２Ｅ  エッジ
５２Ｅ’  エッジ
５２１  第一のクロージング画像（第一の変換画像）
５２２  第二のクロージング画像（第二の変換画像）
５２３  合成画像（第一の合成画像）
５２４  第一のオープニング画像（第三の変換画像）
５２５  第二のオープニング画像（第四の変換画像）
５２６  合成画像（第二の合成画像）
５２７  合成画像（第三の合成画像）
６０Ａ  第一のフィルタ
６０Ｂ  第二のフィルタ
６１Ａ  第一のフィルタ
６１Ｂ  第二のフィルタ
【図１】
2014022893.tif 000003
【図２】
2014022893.tif 000004
【図３】
2014022893.tif 000005
【図４】
2014022893.tif 000006
【図５】
2014022893.tif 000007
【図６】
2014022893.tif 000008
【図７】
2014022893.tif 000009
【図８】
2014022893.tif 000010
【図９】
2014022893.tif 000011
【図１０】
2014022893.tif 000012
【図１１】
2014022893.tif 000013
【図１２】
2014022893.tif 000014
【図１３】
2014022893.tif 000015
【図１４】
2014022893.tif 000016
【図１５】
2014022893.tif 000017
【図１６】
2014022893.tif 000018
【図１７】
2014022893.tif 000019
【図１８】
2014022893.tif 000020
【図１９】
2014022893.tif 000021
【図２０】
2014022893.tif 000022
【図２１】
2014022893.tif 000023
【図２２】
2014022893.tif 000024
【図２３】
2014022893.tif 000025
【図２４】
2014022893.tif 000026
【図２５】
2014022893.tif 000027
【図２６】
2014022893.tif 000028
【図２７】
2014022893.tif 000029
【図２８】
2014022893.tif 000030