画像処理装置およびプログラム
【課題】画像中の互いに種類の異なる領域を特定する精度を向上する。
【解決手段】複数の画素のそれぞれのエッジ強度を表すエッジ画像における複数の判定領域のそれぞれに対してエッジ強度の程度を表す特徴値を算出する。そして、特徴値によって表されるエッジ強度の程度が所定の基準以上である場合に、判定領域を不均一な画像を表す第1種領域として特定し、判定領域の特徴値によって表されるエッジ強度の程度が所定の基準よりも小さい場合に、判定領域を均一な画像を表す第2種領域として特定する。
【解決手段】複数の画素のそれぞれのエッジ強度を表すエッジ画像における複数の判定領域のそれぞれに対してエッジ強度の程度を表す特徴値を算出する。そして、特徴値によって表されるエッジ強度の程度が所定の基準以上である場合に、判定領域を不均一な画像を表す第1種領域として特定し、判定領域の特徴値によって表されるエッジ強度の程度が所定の基準よりも小さい場合に、判定領域を均一な画像を表す第2種領域として特定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像中の互いに種類の異なる領域を特定する画像処理に関する。
【背景技術】
【0002】
従来から、画像中の種々のオブジェクト(例えば、テキスト)のレイアウトを特定する処理が行われている。例えば、画像を2値化し、2値画像から白矩形系列を抽出し、抽出された白矩形系列をセパレータとしてページ全体をいくつかの領域に分離する方法が提案されている(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−085665号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところが、画像の中の互いに表示内容が異なる2つの領域(例えば、テキストを表す領域と背景を表す領域)の間の色の差が小さい場合に、その画像を2値化すると、上記した表示内容が異なる2つの領域を分離することができない場合があった。
【0005】
本発明の主な利点は、画像中の互いに種類の異なる領域を特定する精度を向上することである。
【課題を解決するための手段】
【0006】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0007】
対象画像を表す対象画像データを用いて、前記対象画像に含まれる複数の画素のそれぞれのエッジ強度を表すエッジ画像データを生成する生成部と、前記エッジ画像データによって表される画像であるエッジ画像の一部を表すとともに複数の画素を含む判定領域であって、互いに異なる複数の判定領域のそれぞれに対して、前記判定領域における前記エッジ強度の程度を表す特徴値を算出する特徴値算出部と、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が所定の基準以上である場合に、前記判定領域を不均一な画像を表す第1種領域として特定し、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が前記所定の基準よりも小さい場合に、前記判定領域を均一な画像を表す第2種領域として特定する、特定部と、を備える、画像処理装置。
この構成によれば、不均一な画像を表す第1種領域(主にオブジェクトを表す)と、均一な画像を表す第2種領域(主に背景を表す)と、の間の区別が、エッジ強度の程度を表す特徴値を利用して行われるので、種類の異なる各領域を特定する精度を向上することができる。
【0008】
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像処理方法および装置(システム)、それらの方法または装置(システム)の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【0009】
【図1】本発明の一実施例としての複合機200を示す説明図である。
【図2】画像処理部M100(図1)によって実行される画像解析処理のフローチャートである。
【図3】原画像データによって表される原画像OIとエッジ画像データによって表されるエッジ画像EIとの例を示す概略図である。
【図4】本実施例におけるエッジ強度の算出式を示している。
【図5】均一領域判定のフローチャートである。
【図6】判定画像BIと、判定画素BIpと、判定ブロックBLと、エッジ画素EIpと、の関係を示す概略図である。
【図7】ステップS240、S250の概略図である。
【図8】判定画像BI(エッジ画像EI)における判定ブロックBLの配置を示す概略図である。
【図9】共通の判定画素BIpで重なる4つの判定ブロックBL_UL、BL_UR、BL_LL、BL_LRを示す概略図である。
【図10】小さい領域の種類特定を説明する概略図である。
【図11】ステップS120の処理の例を示す概略図である。
【図12】属性判定の条件を示すテーブルである。
【図13】分布幅Wと色数Cとの説明図である。
【発明を実施するための形態】
【0010】
A.第1実施例:
次に、本発明の実施の形態を実施例に基づき説明する。図1は、本発明の一実施例としての複合機200を示す説明図である。この複合機200は、CPU210と、内部記憶装置220(例えば、RAM等の揮発性メモリ)と、外部記憶装置290(例えば、ハードディスクドライブやソリッドステートドライブ等の不揮発性メモリ)と、プリンタ部250と、スキャナ部260と、操作部270と、通信部280と、を有している。
【0011】
プリンタ部250は、画像データを用いることによって、印刷媒体に画像を印刷する。スキャナ部260は、光学的スキャンによって画像データを生成する。操作部270は、タッチパネルやボタン等のユーザによって操作される操作部材を含む。通信部280は、他の電子機器(例えば、コンピュータ100やデジタルカメラ)と通信するためにインタフェースである(例えば、いわゆるUSBインタフェース、または、IEEE802.3のインタフェース)。
【0012】
CPU210は、外部記憶装置290に格納されたプログラム291を実行することによって、複合機200の全体の動作を制御する。また、本実施例の複合機200では、CPU210は、画像処理部M100と、印刷処理部M200と、として動作する。画像処理部M100は、エッジ画像生成部M110と、均一領域判定部M120と、属性判定部M130と、を含んでいる。均一領域判定部M120は、特徴値算出部M121と、領域特定部M122と、連結部M123と、を含んでいる。これらの処理部の詳細については、後述する。以下、CPU210が特定の処理部として処理を実行することを、処理部が処理を実行する、とも表現する。
【0013】
図2は、画像処理部M100(図1)によって実行される画像解析処理のフローチャートである。本実施例では、画像処理部M100は、画像の印刷時に、この画像解析処理を実行する。画像の印刷は、ユーザの指示に応じて行われる。例えば、複合機200は、ユーザが操作部270のコピーボタン(図示せず)を操作したことに応じて、スキャナ部260の原稿台(図示せず)に載置された原稿を光学的に読み取って、読み取った画像を印刷する。具体的には、スキャナ部260は、原稿を表す画像データを生成する。画像処理部M100は、スキャナ部260によって生成された画像データ(以下「原画像データ」とも呼ぶ)を解析することによって、オブジェクト(例えば、テキストや写真)を表す領域を特定し、オブジェクトの種類を判定する。印刷処理部M200は、画像処理部M100によって特定されたオブジェクトの領域と種類とを利用して、オブジェクト毎に種類に応じた画質調整を行い、画質調整済みの画像をプリンタ部250に印刷させる。
【0014】
最初のステップS100では、エッジ画像生成部M110は、原画像データを解析することによって、エッジ画像データを生成する。図3は、原画像データによって表される原画像OIと、エッジ画像データによって表されるエッジ画像EIと、のそれぞれの例を示す概略図である。図3の例では、原画像OIは、写真PHと、描画画像DRと、複数の文字TXと、を表している。写真PHは、撮影によって得られた撮影画像である。描画画像DRは、イラストやベクトルグラフィックス等の描画によって表された画像である。文字TXは、文字を表す画像である。なお、原画像OIでは、複数の画素が、第一方向hと、第一方向hと直交する第二方向vと、に沿って、マトリクス状に配置されている。第一方向画素数OIxは、原画像OIの第一方向hの画素数を表し、第二方向画素数OIyは、原画像OIの第二方向vの画素数を表している。
【0015】
エッジ画像EIは、原画像OI内の各画素位置におけるエッジ強度を表す。エッジ画像EIの第一方向画素数EIxは、原画像OIの第一方向画素数OIxと同じであり、エッジ画像EIの第二方向画素数EIyは、原画像OIの第二方向画素数OIyと同じである。エッジ強度は、画素値の変化の大きさを表している。図4は、本実施例における、エッジ強度の算出式を示している。本実施例では、エッジ画像生成部M110は、いわゆるソーベルオペレータ(Sobel operator)を用いて、エッジ強度を算出する。図4中の画素値P(x,y)は、原画像の画素値を表している。第一方向位置xは、第一方向hの画素位置を示し、第二方向位置yは、第二方向vの画素位置を示している。図4に示すように、特定の画素位置(x,y)におけるエッジ強度Sed(x,y)は、その画素位置(x,y)を中心とする3行3列の画素ブロックの画素値Pmと、オペレータGx、Gyとを用いて算出される。第一方向オペレータGxは、第一方向hの画素値の変化の大きさを算出するためのオペレータであり、第二方向オペレータGyは、第二方向vの画素値の変化の大きさを算出するためのオペレータである。エッジ強度Sed(x,y)は、画素ブロックの画素値Pmに第一方向オペレータGxを乗じて得られる値(第一方向成分Sx)の絶対値と、画素ブロックの画素値Pmに第二方向オペレータGyを乗じて得られる値(第二方向成分Sy)の絶対値と、の和である。本実施例では、原画像OIの各画素の色は、赤(R)、緑(G)、青(B)のそれぞれの階調値で表されている。従って、エッジ画像生成部M110は、赤、緑、青のそれぞれのエッジ強度を算出する。
【0016】
図3(B)には、エッジ画像EIの概略が示されている。図3(B)では、濃い色は、エッジ強度が大きいことを示している。図3(B)で表現されたエッジ強度は、赤緑青のそれぞれのエッジ強度の重み付き平均値である。各色成分の重みは、赤緑青の各色成分から輝度値(YCbCr色空間のY成分)を算出する式で用いられる重みと同じである。図示するように、文字TXを表す領域では、文字の輪郭において、エッジ強度が大きい。描画画像DRを表す領域では、描画画像DRの構成要素の輪郭において、エッジ強度が大きい。写真PHを表す領域では、写真PH中の色の変化が大きい部分において、エッジ強度が大きい。色の変化が小さい部分(均一な画像を表す部分。例えば、背景を表す部分)においては、エッジ強度が小さい。
【0017】
図2の次のステップS110では、均一領域判定部M120(図1)は、エッジ画像EIを用いて、均一領域判定を行う。この均一領域判定では、均一領域判定部M120は、原画像OI中の、均一な画像を表す領域と、不均一な画像を表す領域とを、特定する。均一な画像は、例えば、背景である。不均一な画像は、例えば、文字、写真、イラスト等のオブジェクトである。
【0018】
図5は、均一領域判定のフローチャートである。最初のステップS200では、領域特定部M122は、判定画像BIのサイズ(第一方向画素数BIxと第二方向画素数BIy)を算出する。判定画像BIは、均一領域判定の結果を表す画像である。判定結果は、「1(均一画像を表す)」と「ゼロ(不均一画像を表す)」とのいずれかである。判定画像BIの各画素の画素値(フラグ)は、最終的に、この判定結果である「1」又は「ゼロ」を表す。
【0019】
図6は、判定画像BIと、判定画像BIの画素BIp(「判定画素BIp」と呼ぶ)と、判定ブロックBLと、エッジ画像EIの画素EIp(「エッジ画素EIp」と呼ぶ)と、の関係を示す概略図である。本実施例では、判定ブロックBL毎に判定が行われる。1つの判定ブロックBLの形状とサイズとは、2行2列の4つの判定画素BIpのブロックの形状とサイズと、同じである。最終的な均一領域判定の結果は、この判定画素BIp毎に、決定される(詳細は後述)。1つの判定画素BIpの形状とサイズとは、16行16列のエッジ画素EIpのブロックの形状とサイズと同じである。すなわち、1つの判定ブロックBLの形状とサイズとは、32行32列のエッジ画素EIpのブロックの形状とサイズと、同じである。図中のブロックサイズBLsizeは、1つの判定ブロックBLの第一方向hと第二方向vとのそれぞれの画素数(エッジ画素EIpの画素数。本実施例では、32)を示している。また、判定画素数BLnは、1つの判定ブロックBL内の第一方向hと第二方向vとのそれぞれの画素数(判定画素BIpの画素数。本実施例では、2)を示している。
【0020】
図5のステップS200では、領域特定部M122は、複数の判定画素BIpをマトリクス状に配置することによってエッジ画像EIの全体を覆うために要する判定画素BIpの数(第一方向hの数と第二方向vの数)を算出する。領域特定部M122は、算出された第一方向hの数を、第一方向画素数BIxとして採用し、算出された第二方向vの数を、第二方向画素数BIyとして採用する。図5のステップS200には、第一方向画素数BIxと第二方向画素数BIyの算出式が示されている。この算出式では、各数BIx、BIyは、小数部分が切り捨てられて、整数に丸められる。また、エッジ画像EIの第一方向画素数EIxが、1つの判定画素BIpの第一方向hの画素数(BLsize/BLn)の倍数とは異なる場合がある。この場合、図5の算出式によれば、エッジ画像EIの第一方向画素数EIxを判定画素BIpの第一方向hの画素数で割った余りの画素をカバーするために、判定画素BIpのラインが1つ追加される(第二方向vも同様である)。
【0021】
次のステップS210では、領域特定部M122は、判定画像BIの全画素の画素値(フラグ)をゼロに初期化する。
【0022】
次のステップS220では、特徴値算出部M121は、1つの判定ブロックBLを選択する。本実施例では、判定画像BIの全体を覆うように、複数の判定ブロックBLが配置されている(詳細は後述)。特徴値算出部M121は、それら複数の判定ブロックBLの中から、未処理の判定ブロックBLを選択する。
【0023】
次のステップS230では、特徴値算出部M121は、ステップS220で選択した判定ブロックBL内の平均画素値を算出する。この平均画素値は、判定ブロックBL内のエッジ画素EIpの画素値(エッジ強度)の平均値であり、赤、緑、青の各色成分毎に算出される。図3(B)にも示されるように、判定ブロックBLが均一な画像を表す場合には、エッジ強度が小さいので、平均画素値は小さい。判定ブロックBLが不均一な画像を表す場合には、エッジ強度が大きいので、平均画素値は大きい。
【0024】
次のステップS240では、領域特定部M122が、ステップS230で算出された平均画素値を用いて、判定ブロックBLが均一画像を表しているか否かを判定する。判定ブロックBLが均一画像を表していると判定された場合には(S240でYes)、次のステップS250で、領域特定部M122は、判定ブロックBL内の判定画素BIpの画素値(フラグ)を1に設定する。
【0025】
図7は、ステップS240、S250の概略図である。図7には、判定画像BIの一部(複数の判定画素BIp)と1つの判定ブロックBLとが示されている(判定ブロックBLにハッチングが付されている)。各判定画素BIpに示された括弧内の数値は、判定画素BIpの画素値(フラグ)を示している。本実施例では、判定ブロックBLが均一な画像を表していると判定されるための条件は、赤の平均画素値AveRと、緑の平均画素値AveGと、青の平均画素値AveBと、の全てが、所定の閾値Th_BGよりも小さいことである(以下、「均一条件」と呼ぶ)。図3、図4で説明したように、均一な画像を表している領域では、エッジ強度が小さいので、平均画素値が小さくなる。一方、不均一な画像を表している領域では、エッジ強度が大きいので、平均画素値が大きくなる。従って、赤緑青の平均画素値AveR、AveG、AveBが均一条件を満たす場合には、判定ブロックBLが均一な画像を表している可能性が高い。赤緑青の平均画素値AveR、AveG、AveBが均一条件を満たさない場合には、判定ブロックBLが不均一な画像を表している可能性が高い。なお、本実施例では、閾値Th_BGは、正値である。閾値Th_BGは、判定の精度が高くなるように実験的に決定されてよい。
【0026】
判定ブロックBLが均一条件を満たす場合には(S240でYes)、次のステップS250で、領域特定部M122は、判定ブロックBL内の全ての判定画素BIpの画素値(フラグ)を、1に設定する。図6、図7に示すように、本実施例では、1つの判定ブロックBLは、4つの判定画素BIpを含んでいる。従って、領域特定部M122は、4つの判定画素BIpの画素値(フラグ)を1に設定する。なお、判定ブロックBLが均一条件を満たさない場合には(S240でNo)、ステップ250を省略して、ステップ260に移行する。
【0027】
このように、複数のエッジ画素EIpを含む判定ブロックBLの平均画素値を用いて1回の判定を行う理由は、原画像OI、または、エッジ画像EIにノイズが含まれる場合であっても、平均値の算出に利用される画素の数が多いほどノイズ(例えば、ノイズを表す1つの画素)の影響を低減させることができることを利用して、判定結果に対するノイズの影響を緩和するためである。このようなノイズは、種々の原因(例えば、光学的なスキャン、または、種々の画像処理)によって、引き起こされる。
【0028】
図5の次のステップS260では、領域特定部M122は、全ての判定ブロックBLの判定が完了したか否かを判定する。未判定の判定ブロックBLが残っている場合には(S260でNo)、均一領域判定部M120は、ステップS220〜S260の処理を繰り返すことによって、全ての判定ブロックBLの判定を完了する。一方、全ての判定ブロックBLの判定が完了している場合には(S260でYes)、均一領域判定を終了する。
【0029】
図8は、判定画像BI(エッジ画像EI)における判定ブロックBLの配置を示す概略図である。図中には、判定画像BI(エッジ画像EI)と、図5のステップS220で選択された判定ブロックBLと、が示されている。ステップS220〜S260の処理が繰り返されることによって、選択される判定ブロックBLの位置は、図8(A)〜図8(E)の順に移動する。
【0030】
本実施例では、特徴値算出部M121(図1)は、判定画像BIの左上隅から右下隅まで、判定ブロックBLを1画素分の距離ずつ移動させる(ここで、1画素=1判定画素BIp)。具体的には、判定画像BIの左上の隅から、第一方向hに1画素分の距離ずつ、判定ブロックBLが移動する(図8(A)、図8(B)、図8(C))。そして、判定ブロックBLが判定画像BIの右端に到達したら、判定ブロックBLは、第二方向vに1画素分だけシフトした第一方向ライン上を、判定画像BIの左端から右端に向かって1画素分の距離ずつ移動する(図8(D)、図8(E))。このような移動を繰り返すことによって、判定ブロックBLは、判定画像BI上の全ての領域をカバーする。すなわち、互いに異なる位置に配置された複数の判定ブロックBLが、判定画像BIの全体を覆っている、ということができる。
【0031】
図6で説明したように、本実施例では、1つの判定ブロックBLの形状とサイズとは、2行2列の判定画素BIpのブロックの形状とサイズと、同じである。従って、判定ブロックBLは、少なくとも1つの他の判定ブロックBLと互いに一部の領域が重なる。例えば、図8(A)の判定ブロックBLの右半分は、図8(B)の判定ブロックBLの左半分と、重なる。また、図8(A)の判定ブロックBLの下半分は、図8(D)の判定ブロックBLの上半分と重なる。図8(A)の判定ブロックBLの右下部分は、図8(E)の判定ブロックBLの左上部分と重なる。このように、1つの判定ブロックBL中の、1つの判定画素BIp、または、2つの判定画素BIpが、他の判定ブロックBLと重なる。本実施例では、複数の判定ブロックBLは、第一方向hと第二方向vとのそれぞれの方向に、判定ブロックBLの長さよりも短い間隔で、並べて配置される(本実施例では、間隔=1つの判定画素BIpの大きさ)。換言すれば、複数の判定ブロックBLは、少なくとも1つの他の判定ブロックBLと互いに一部の領域が重なるように、配置される。
【0032】
具体的には、判定画像BIの判定画素BIpのうちの縁(ふち)の画素を除いた残りの判定画素BIp(例えば、図8の第1画素BIp1)は、4つの判定ブロックBLと重なる。また、判定画像BIの縁の判定画素BIpのうちの4隅の判定画素BIp(例えば、第2画素BIp2)は、1つの判定ブロックBLと重なる。さらに、4隅を除いた縁の画素(例えば、第3画素BIp3)は、2つの判定ブロックBLと重なる。
【0033】
図9は、共通の判定画素BIpで重なる4つの判定ブロックBL_UL、BL_UR、BL_LL、BL_LRを示す概略図である。図中では、共通の判定画素BIpにハッチングが付されている。図示するように、各判定ブロックBL_UL、BL_UR、BL_LL、BL_LRは、共通の判定画素BIpから見て、左上、右上、左下、右下に、それぞれ拡がっている。
【0034】
図5で説明したように、本実施例では、判定ブロックBL毎に、ステップS240の判定が行われる。従って、4つの判定ブロックBL_UL、BL_UR、BL_LL、BL_LRのそれぞれの4つの判定結果R_UL、R_UR、R_LL、R_LRが、共通の判定画素BIpに適用される。本実施例では、「均一画像を表す(フラグ=1)」という判定結果が優先される(図5に示すように、「1」に設定されたフラグは「ゼロ」に戻らない)。すなわち、4つの判定結果R_UL、R_UR、R_LL、R_LRのうちの少なくとも1つの判定結果が「ステップS240でYes」である場合には、判定画素BIpの画素値(フラグ)は、1(均一画像を表す)に設定される。全ての判定結果R_UL、R_UR、R_LL、R_LRが「ステップS240でNo」である場合には、判定画素BIpの画素値(フラグ)は、ゼロ(不均一画像を表す)に維持される。1つの判定画素BIpと重なる判定ブロックBLの総数が2、または、1である場合も、同様である。
【0035】
このように、互いに異なる複数の判定ブロックBLのそれぞれの判定結果を用いて、判定ブロックBLよりも小さい判定画素BIpの最終的な判定結果を決定する理由は、小さい領域の種類特定を適切に行うためである。
【0036】
図10は、小さい領域の種類特定を説明する概略図である。図10(A)、図10(B)は、エッジ画像EIの同じ部分を示している。図示された部分は、第一方向hに延びる2つの文字列ST1、ST2を表している。また、図10(A)は、第二方向vに並んだ4つの判定ブロックBL11〜BL14を示し、図10(B)は、第二方向に並んだ3つの判定ブロックBL21〜BL23を示している。図10(B)の判定ブロックBL21〜BL23は、図10(A)の判定ブロックBL11〜BL13を、第二方向(v方向)に1画素分(1画素=1判定画素BIp)だけシフトして得られる判定ブロックである。各判定ブロックBL11〜BL14、BL21〜BL23の中に示された「Yes」または「No」は、各判定ブロックの判定結果(図5、図6のステップS240の結果)を示している。
【0037】
図示するように、2本の文字列ST1、ST2の間には、小さい隙間S1があいている(この隙間S1は、背景を表している。以下、隙間S1を「背景S1」とも呼ぶ)。図10(A)では、第2判定ブロックBL12が、第1文字列ST1の一部と背景S1の一部とをカバーしている。また、第3判定ブロックBL13は、第2文字列ST2の一部と背景S1の一部とをカバーしている。これらの判定ブロックBL12、BL13の判定結果は、文字列ST1、ST2の一部を表しているが故に、背景S1を表すにも拘わらず、「No(不均一画像を表す)」である。
【0038】
図10(B)では、第1判定ブロックBL21と第3判定ブロックBL23は、文字列ST1、ST2を、それぞれカバーしている。また、第2判定ブロックBL22は、文字列ST1、ST2をカバーせずに、背景S1のみをカバーしている。この結果、第2判定ブロックBL22の判定結果は、「Yes(均一画像を表す)」である。
【0039】
ここで、背景S1を表す判定画素BIpa(以下「着目判定画素BIpa」と呼ぶ)について検討する。着目判定画素BIpaを含む判定ブロックBL12(図10(A))は、背景S1に加えて、第1文字列ST1を表している。従って、この判定ブロックBL12の判定結果は「No(不均一画像を表す)」である。一方、着目判定画素BIpaを含む別の判定ブロックBL22(図10(B))は、文字列ST1、ST2を表さずに、背景S1のみを表している。従って、この判定ブロックBL22の判定結果は「Yes(均一画像を表す)」である。
【0040】
図9に示すように、互いに異なる複数の判定ブロックBLが共通の判定画素BIpで重なる場合には、その判定画素BIpから見て、それら複数の判定ブロックBLは、互いに異なる方向に拡がる。換言すれば、それら複数の判定ブロックBLの間で、共通の判定画素BIpを除いた残りの部分を比較すると、複数の判定ブロックBLは、それぞれ、互いに異なる領域を含んでいる(例えば、左上の判定ブロックBL_ULは、判定画素BIpの左上の部分PULを含むが、他の判定ブロックBL_UR、BL_LL、BL_LRは、その部分PULを含まない)。従って、図10に示すように、判定画素BIpaの近傍に、その判定画素BIpaとは異なる種類の画像(文字列ST1)を表す領域が配置されている場合であっても、その判定画素BIpaと重なる複数の判定ブロックBL12、BL22のうちの一部(判定ブロックBL22)は、その判定画素BIpaと同じ種類の画像(背景S1)のみを表すことが可能である。そして、そのような判定ブロックの判定結果を他の判定ブロックの判定結果よりも優先することによって(この場合、判定画素BIpaのフラグを優先的に「1」に設定することができる)、その判定画素BIpの種類を適切に特定することができる。なお、特定の種類の画像を表す領域の大きさが、1つの判定ブロックBLと同程度であれば、このような適切な特定が可能である。また、本実施例では、図8に示すように複数の判定ブロックBLと重なる複数の判定画素BIpが、エッジ画像EI(原画像OI)のほぼ全体を隙間なく覆っている。従って、原画像OI内の任意の位置において、上記のような適切な特定が可能となる。また、1つの種類の画像の輪郭が微細なパターンを示す場合に、その微細なパターンを適切に特定することができる。
【0041】
以上のように、全ての判定ブロックBLの判定が進行する。全ての判定ブロックBLの判定が完了したら(すなわち、全ての判定画素BIpの画素値(フラグ)が確定したら)、図5の均一領域判定(図2:ステップS110)が終了する。
【0042】
図2の次のステップS120では、連結部M123(図1)が、画素値(フラグ)が同じ判定画素BIpの連結と、判定画素BIpの連結によって得られた領域(以下、「連結領域」と呼ぶ)のラベリングとを、行う。図11は、ステップS120の処理の例を示す概略図である。図11(A)は、均一領域判定(S110)が施された判定画像BIを示している。斜めのハッチングが付された判定画素BIpは、均一画像を表すと判定された画素を示し、斜めのハッチングの無い判定画素BIpは、不均一画像を表すと判定された画素を示している。
【0043】
連結部M123は、画素値(フラグ)が同じで、かつ、互いに接する2つの判定画素BIpを連結する処理を繰り返すことによって、連続な領域を形成する。2つの判定画素BIpが互いに接するとは、2つの判定画素BIpが分離していないことを意味している。本実施例では、2つの判定画素BIpが接していると判定されるための条件(以下「連結条件」とも呼ぶ)は、2つの判定画素BIpの間の距離が1.5画素以下であることである。この場合、1つの判定画素は、その判定画素を囲む8つの判定画素のいずれとも接している、ということである。この代わりに、連結条件は、2つの判定画素BIpの間の距離が1画素以下であることであってもよい。この場合には、1つの判定画素は、その判定画素の上下左右に位置する4つの判定画素のいずれとも接している、ということである。
【0044】
図11(B)は、連結処理が施された判定画像BIを示している。ハッチングが付された領域は、均一画像を表すと判定された領域を示し、ハッチングの無い領域は、不均一画像を表すと判定された領域を示している。図11(B)の例では、不均一画像を表すと判定された複数の画素が、8つの連結領域A1a〜A1hを形成し、均一画像を表すと判定された複数の画素が、1つの連結領域A2aを形成している。8つの連結領域A1a〜A1hは、原画像OI(図3(A))のオブジェクト(文字TXと写真PHと描画画像DR)に対応しており、連結領域A2aは、原画像OIの背景に対応している。
【0045】
次に、連結部M123は、ラベリングを行う。ラベリングは、連結処理によって形成された各連結領域に識別子(ラベル)を付与する処理である。図11(C)は、ラベリングが施された判定画像BIを示している。図示するように、連結処理によって形成された9つの連結領域に、1〜9のラベル(識別子)が、それぞれ付与されている。
【0046】
図2の次のステップS130では、属性判定部M130(図1)が、不均一画像を表すと判定された連結領域の詳細な属性を判定する。本実施例では、属性は、「文字画像」と、「撮影画像」と、「描画画像」と、の中から選択される。この属性判定は、ステップS120で形成された連結領域毎に行われる。
【0047】
図12は、属性判定の条件を示すテーブルである。本実施例では、属性判定部M130は、色の分布幅Wと、色数Cと、画素密度Sと、に応じて属性を決定する。
【0048】
図13は、分布幅Wと色数Cとの説明図である。図中には、輝度のヒストグラムが示されている。この輝度ヒストグラムは、原画像OIにおける1つの連結領域内の画素値から算出される輝度のヒストグラムである(本実施例では、輝度が0〜255の整数で表される)。判定画像BIの画素と、エッジ画像EI(すなわち、原画像OI)の画素と、の対応関係は、図6で説明したように、予め決められている。この対応関係に従って、原画像OIにおける連結領域が特定される。すなわち、原画像OIにおける連結領域は、原画像OIに判定画像BIを重ねた場合に、判定画像BI上の連結領域と重なる領域である。また、このヒストグラムでは、背景とほぼ同じ色を表す画素が除かれている。本実施例では、背景の色は、均一画像を表すと判定された領域の色である(例えば、そのような領域における平均画素値によって表される色を、背景の色として採用可能である)。そして、背景の色との差が所定値以下である色を表す画素(例えば、各色成分の画素値の差が所定の閾値以下)を、ヒストグラムから除くこととしている。
【0049】
色数Cは、度数(画素数)が所定の閾値Th以上である輝度の累積幅である。このような色数Cは、度数が閾値Th以上である階級(binとも呼ばれる)の総数に、1つの階級の幅を乗じることによって、算出可能である。例えば、図13のヒストグラムは、閾値Thを越える3つのピークP1、P2、P3を示している。色数Cは、第1ピークP1の閾値Thを越える部分の幅C1と、第2ピークP2の閾値Thを越える部分の幅C2と、第3ピークP3の閾値Thを越える部分の幅C3と、の和である。一般的に、文字は少ない色で表現されることが多いので、連結領域が文字を表す場合には、色数Cは少なくなる。撮影画像は、撮影された被写体の種々の色を表すので、連結領域が撮影画像を表す場合には、色数Cが多くなる。描画画像は、文字と比べて多くの色で表現されることが多いが、撮影画像と比べると、利用される色の数は少ないことが多い。従って、連結領域が描画画像を表す場合には、色数Cは、文字画像の色数Cよりも多く、撮影画像の色数Cよりも少ない傾向がある。
【0050】
分布幅Wは、度数(画素数)が所定の閾値Th以上である輝度(階級)の最低値と最高値との間の差(幅)である。色数Cの説明と同じ理由により、連結領域が文字を表す場合には、分布幅Wは小さくなり、連結領域が撮影画像を表す場合には、分布幅Wが大きくなる。そして、連結領域が描画画像を表す場合には、分布幅Wは、文字画像の分布幅Wよりも大きく、撮影画像の分布幅Wよりも小さい傾向がある。
【0051】
画素密度Sは、連結領域において、背景とほぼ同じ色を表す画素を除いた残りの画素の密度(単位面積当たりの画素数)である。背景とほぼ同じ色を表す画素は、ヒストグラムから除かれた画素と同じである。一般的に、文字は、背景上に、背景とは異なる色の細線で、書かれている。従って、連結領域が文字を表す場合には、画素密度Sが小さくなる。撮影画像では、ほとんどの部分が、背景とは異なる色で表されている。従って、連結領域が撮影画像を表す場合には、画素密度Sが大きくなる。描画画像は、文字と同様に、背景上に、背景とは異なる色で表現されている。ただし、文字とは異なり、描画画像は、細線に限らず、太線または塗りつぶされた領域を含み得る。従って、連結領域が描画画像を表す場合には、画素密度Sは、文字画像の画素密度Sよりも大きく、撮影画像の画素密度Sよりも小さい傾向がある。
【0052】
図12の判定条件は、以上の特徴を考慮して、構成されている。具体的には、属性判定部M130は、以下の3つの判定結果の組み合わせに対応付けられた属性を選択する。
判定1)分布幅Wが、所定の分布幅閾値Wth以上であるか否か
判定2)色数Cが、所定の色数閾値Cth以上であるか否か
判定3)画素密度Sが、所定の画素密度閾値Sth以上であるか否か
例えば、分布幅Wが分布幅閾値Wth未満であり、色数Cが色数閾値Cth未満であり、画素密度Sが画素密度閾値Sth未満である場合には、属性判定部M130は、連結領域の属性が「文字画像」であると判定する。
【0053】
属性判定部M130(図1)は、図13のようなヒストグラムを生成し、ヒストグラムを解析することによって、分布幅Wと色数Cとを算出し、また、原画像OIの連結領域を解析することによって、画素密度Sを算出する。そして、属性判定部M130は、算出された分布幅Wと色数Cと画素密度Sとを用いて、属性を判定する。属性判定部M130は、不均一画像を表すと判定された全ての連結領域の属性を判定する。この判定が完了したことに応じて、図2の画像解析処理は終了する。印刷処理部M200は、原画像OIの各連結領域に対して、属性に応じた画質調整を行う。例えば、印刷処理部M200は、文字画像を表す連結領域に対しては、シャープネスを強くする処理を行う。また、印刷処理部M200は、撮影画像を表す連結領域に対しては、撮影画像が好ましい色で印刷されるように予め設定された色調整を行う。印刷処理部M200は、画質調整済みの画像を表す画像データをプリンタ部250に供給することによって、画像の印刷を行う。
【0054】
以上のように、本実施例では、特徴値算出部M121は、エッジ画像EI上に配置された互いに異なる複数の判定ブロックBLのそれぞれに対して、平均画素値AveR、AveG、AveBを算出する(図5:S230)。これらの平均画素値AveR、AveG、AveBは、図4に示すエッジ強度Sedの平均値であるので、エッジ強度の程度を表している。そして、図5、図7のステップS240で説明したように、領域特定部M122は、平均画素値AveR、AveG、AveBが均一条件を満たしている場合には、判定ブロックBLが均一画像を表していると特定し、平均画素値AveR、AveG、AveBが均一条件を満たしていない場合には、判定ブロックBLが不均一画像を表していると特定する。均一条件は、赤緑青の全ての色成分の平均画素値(エッジ強度)が閾値Th_BGよりも小さい場合に満たされ、少なくとも1つの色成分の平均画素値が閾値Th_BG以上である場合に満たされない。従って、均一条件は、平均画素値によって表されるエッジ強度の程度が所定の基準以上であるか否かを判定する条件である。このように、不均一画像を表す領域と、均一画像を表す領域との間の区別が、エッジ強度の程度を表す平均画素値を利用して行われるので、種類の異なる各領域を特定する精度を向上することができる。例えば、テキストの色が背景の色に近い場合であっても、テキストを表す領域では、背景を表す領域と比べて、エッジ強度が強くなるので、それらの領域を適切に分離することができる。
【0055】
また、均一領域判定には、判定ブロックBLにおける複数のエッジ画素EIpの画素値(エッジ強度)の平均値が利用される。この結果、原画像OI、または、エッジ画像EIがノイズを含む場合であっても、ノイズの影響を緩和することができるので、種類の異なる各領域を特定する精度を向上することができる。例えば、原画像OI、または、エッジ画像EIの背景を表す領域に、光学的スキャン又は画像処理に起因するノイズが生じる場合がある。このような場合であっても、背景を表す領域が不均一画像を表す領域として誤って特定される可能性を低減できる。
【0056】
また、図8で説明したように、複数の判定ブロックBLは、少なくとも1つの他の判定ブロックBLと互いに一部の共通領域(判定画素BIp)が重なるように構成されている。そして、図9で説明したように、複数の判定ブロックBLが重なる共通領域(判定画素BIp)では、それら複数の判定ブロックBLのそれぞれの判定結果を総合して、その共通領域(判定画素BIp)の種類が特定される。この結果、判定ブロックBLと同程度の大きさの小領域の種類を適切に特定することができる。特に、本実施例では、図9、図10で説明したように、「均一画像を表す」という判定結果が優先される。この結果、均一画像を表す領域が、誤って、不均一画像を表す領域であると特定される可能性を低減できる。
【0057】
さらに、本実施例では、図8で説明したように、複数の判定ブロックBLが重なる共通領域(判定画素BIp)が、判定画像BI(すなわち、原画像OI)のほぼ全体(4隅の判定画素BIpを除いた残りの領域)を隙間無く覆うように、配置されている。この結果、判定ブロックBLと同程度の大きさの小領域の種類の適切な特定を、原画像OIのほぼ全体に亘って、行うことができる。
【0058】
また、本実施例では、図2のステップS120、図11で説明したように、連結部M123は、互いに接している2つの領域(判定画素BIp)が同じ種類の領域であると特定された場合に、2つの領域を1つの領域として連結する。この結果、1つのオブジェクト(例えば、テキスト)を表す複数の判定画素BIpを1つの領域として連結することが可能となる。すなわち、1つのオブジェクトを表す大きな領域を、1つの領域として特定することが可能になる。この結果、種類の異なる各領域を特定する精度を向上することができる。
【0059】
なお、本実施例では、判定ブロックBLは、本発明における「判定領域」の例であり、判定ブロックBLから算出される平均画素値AveR、AveG、AveBは、「エッジ強度の程度を表す特徴値」の例である。また、平均画素値AveR、AveG、AveBが均一条件を満たすことは、「特徴値によって表されるエッジ強度の程度が所定の基準よりも小さい」ことの例である。また、複数の判定ブロックBLが重なる共通の判定画素BIpは、「共通領域」の例であり、1つの共通な判定画素BIpで重なる複数の判定ブロックBLのそれぞれは、「重畳判定領域」の例である。本実施例では、1つの重畳判定領域(判定ブロックBL)は、互いに異なる複数の共通領域(判定画素BIp)を有している。
【0060】
B.変形例:
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【0061】
変形例1:
エッジ強度の算出式は、図4の算出式に限らず、画素値の変化の大きさを表す値を算出可能な他の任意の算出式であってよい。例えば、エッジ強度は、第一方向成分Sxの2乗と第二方向成分Syの2乗との合計値の平方根であってもよく、また、いわゆるプレウィットオペレータ(Prewitt operator)を用いて算出されてもよい。また、エッジ強度は、赤緑青の各色成分に限らず、他の色成分(例えば、輝度)の画素値を用いて算出されてもよい。
【0062】
変形例2:
判定ブロックBL毎に算出される特徴値(エッジ強度の程度を表す特徴値)は、エッジ強度の平均値(平均画素値AveR、AveG、AveB)に限らず、エッジ強度の程度を表す任意の値であってよい。例えば、特徴値は、エッジ強度の最頻値であってもよい。この場合も、ノイズの影響を適切に緩和することができる。また、平均値と最頻値との両方を、特徴値として採用してもよい。また、特徴値は、エッジ強度の分布の特徴を表す他の種々の値(例えば、最大値や中央値(メディアン))であってもよい。また、複数の色成分(例えば、赤緑青)のそれぞれの特徴値の平均値を、最終的な特徴値として採用してもよい(例えば、特徴値=(AveR+AveG+AveB)/3)。
【0063】
また、図5、図7のステップS240で判定される条件(均一条件)は、図7に示す条件に限らず、特徴値によって表されるエッジ強度の程度が所定の基準以上であるか否かを判定する任意の条件であってよい。例えば、色成分毎に閾値が異なっていても良い。また、複数の色成分(例えば、赤緑青)のそれぞれの特徴値の平均値を、1つの閾値と比較してもよい。一般に、特徴値が複数種類の値(例えば、平均値と最頻値)を含む場合には、種類毎に予め決定された閾値を用いて、それらの値の大きさを判定してよい。そして、それらの判定結果に基づいて、エッジ強度の程度が所定の基準以上であるか否かを決定してよい。例えば、図7の実施例と同様に、全ての種類の値がそれぞれの閾値よりも小さいことを、均一条件として採用してもよい。
【0064】
変形例3:
ブロックサイズBLsize(図6)は、32に限らず、任意の複数の値であってよい(例えば、64、128等)。ここで、ブロックサイズBLsizeが大きいほど、均一領域判定は、ノイズから影響を受けにくくなる。一方、均一と不均一との区別が可能な領域の最小サイズは、1つの判定ブロックBLと同じである。従って、ブロックサイズBLsizeが小さいほど、より小さい領域の種類の適切な特定が可能となる。従って、これらのバランスを考慮して、ブロックサイズBLsizeを決定することが好ましい。
【0065】
また、判定画素数BLn(図6)は、2に限らず、任意の複数の値であってよい(例えば、3、4、5等)。判定画素数BLnが大きいほど、エッジ画像EI上での判定ブロックBLの位置の変位が小さくなるので(判定ブロックBLの密度が高くなるので)、小さい領域の種類を適切に特定することができる。一方、判定画素数BLnが大きいほど、処理に要する時間が長くなる。従って、これらのバランスを考慮して、判定画素数BLnを決定することが好ましい。
【0066】
なお、判定ブロックBLの縦横比は、1:1に限らず、他の比率であってもよい。同様に、判定画素BIpの縦横比も、1:1に限らず、他の比率であってもよい。また、1つの判定画素BIpに重なる判定ブロックBLの総数は、4に限らず、他の任意の数であってよい。
【0067】
変形例4:
複数の判定ブロックBLが重なる共通領域(判定画素BIp)の種類を特定する際に、図9に示すように「均一画像」を優先する代わりに、「不均一画像」を優先してもよい。こうすれば、不均一画像を表す領域が、誤って、均一画像を表すと特定される可能性を低減できる。一般に、複数の判定ブロックBLが重なる共通領域(判定画素BIp)の種類を特定する方法は、その共通領域と重なる複数の判定ブロックBLのそれぞれの判定結果を用いて1つの判定結果を導く任意の方法であってよい。例えば、共通領域の種類を多数決で決定してもよい。
【0068】
判定ブロックBLを用いた均一領域判定が行われる画像(「対象画像」と呼ぶ)は、原画像OIの全体の代わりに、原画像OIの一部分の画像であってもよい。この場合には、画像処理部M100(図1)は、原画像OIを表す画像データのうちの対象画像を表す部分を用いて、画像解析処理を行えばよい。いずれの場合も、複数の判定ブロックBLが重なる共通領域(判定画素BIp)であって、互いに異なる複数の共通領域が、対象画像の少なくとも一部の連続な特定の領域を隙間無く覆うように、複数の判定ブロックBLが配置されていることが好ましい。こうすれば、特定領域においては、共通領域(判定画素BIp)の種類の特定を、複数の判定ブロックBLを用いて行うことができる。この結果、1つの種類の画像(例えば、テキストや背景)を表す領域が小さい場合であっても、その領域を正確に特定することが可能となる。そして、そのような正確な特定は、特定領域内の任意の位置において可能である。また、特定領域内において、1つの種類の画像の輪郭が微細なパターンを示す場合に、その微細なパターンを適切に特定することができる。これらの結果、種類の異なる領域を特定する精度を向上することができる。なお、対象画像のうちの特定領域を除いた残りの領域では、複数の判定ブロックBLが、互いに重ならないように、配置されてよい。また、特定領域は、図8に示す実施例のように、対象画像(判定画像BI、すなわち、原画像OI)のほぼ全体をカバーしていることが好ましい。なお、対象画像は、ユーザによって設定されてもよい。特定領域も、ユーザによって設定されてよい。また、対象画像の全体に亘って、複数の判定ブロックBLが互いに重ならないように配置されていてもよい。
【0069】
変形例5:
図2の画像解析処理において、ステップS130を省略してもよい(すなわち、図1の属性判定部M130を省略してもよい)。この場合には、印刷処理部M200は、均一画像を表すと判定された領域と、不均一画像を表すと判定された領域との間で、画質調整を変えてもよい。また、図2の画像解析処理において、ステップS120を省略してもよい(すなわち、図1の連結部M123を省略してもよい)。
【0070】
また、均一領域判定の結果は、画質調整に限らず、他の任意の処理に利用されてよい。例えば、いわゆるOCR(optical character reader)処理によって、文字画像から、デジタルテキストデータを生成する場合に、不均一画像を表すと判定された領域を、OCR処理の対象として選択してもよい。また、画像をディスプレイに表示する場合に、不均一画像を表すと判定された領域を、拡大して表示してもよい。また、画像解析処理(均一領域判定)の対象は、他の装置(例えば、コンピュータ100)によって供給された画像データであってもよい。
【0071】
上記各実施例の画像処理を実現する画像処理装置は、複合機200に限らず、種々の装置であってよい。例えば、プリンタ、デジタルカメラ、スキャナなどの画像関連機器の内部のコンピュータ、汎用のパーソナルコンピュータ、ネットワークに接続されたサーバ等を採用可能である。また、ネットワークを介して互いに通信可能な複数のコンピュータが、画像処理に要する機能を一部ずつ分担して、全体として、画像処理の機能を提供してもよい(このようなコンピュータシステムを利用する技術は、クラウドコンピューティングとも呼ばれる)。この場合、コンピュータシステムの全体が、特許請求の範囲における画像処理装置に対応する。
【0072】
変形例6:
図2のステップS130において特定される属性の候補は、図12に示す3つ(文字画像と撮影画像と描画画像)に限らず、任意の数の任意の属性であってよい。ただし、少なくとも、文字画像であるか否かが特定されることが好ましい。文字画像は、他の種類の画像と比べて、特別な処理の対象となることが多い。例えば、いわゆるOCR(optical character reader)処理によって、文字画像から、デジタルテキストデータが生成される。従って、不均一画像を表すと判定された領域が、文字画像を表しているか否かを特定できれば、文字画像を表す領域を特別な処理(例えば、OCR処理)の対象とすればよいので、処理に要する時間を短縮することができる。
【0073】
また、属性を特定する方法は、図12、図13で説明した方法に限らず、他の任意の方法であってよい。例えば、予め準備された文字画像とのパターンマッチングによって、属性が文字画像であるか否かを判定してもよい。
【0074】
変形例7:
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、図1の均一領域判定部M120の機能を、論理回路を有するハードウェア回路によって実現してもよい。
【0075】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア(コンピュータプログラム)は、コンピュータ読み取り可能な記録媒体に格納された形で提供することができる。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD−ROMのような携帯型の記録媒体に限らず、各種のRAMやROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含んでいる。
【符号の説明】
【0076】
100...コンピュータ、200...複合機、210...CPU、220...内部記憶装置、250...プリンタ部、260...スキャナ部、270...操作部、280...通信部、290...外部記憶装置、291...プログラム、M100...画像処理部、M110...エッジ画像生成部、M120...均一領域判定部、M130...属性判定部、M121...特徴値算出部、M122...領域特定部、M123...連結部、M200...印刷処理部、OI...原画像、PH...写真、DR...描画画像、TX...文字、EI...エッジ画像、EIp...エッジ画素、BI...判定画像、BIp...判定画素、BL...判定ブロック
【技術分野】
【0001】
本発明は、画像中の互いに種類の異なる領域を特定する画像処理に関する。
【背景技術】
【0002】
従来から、画像中の種々のオブジェクト(例えば、テキスト)のレイアウトを特定する処理が行われている。例えば、画像を2値化し、2値画像から白矩形系列を抽出し、抽出された白矩形系列をセパレータとしてページ全体をいくつかの領域に分離する方法が提案されている(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−085665号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところが、画像の中の互いに表示内容が異なる2つの領域(例えば、テキストを表す領域と背景を表す領域)の間の色の差が小さい場合に、その画像を2値化すると、上記した表示内容が異なる2つの領域を分離することができない場合があった。
【0005】
本発明の主な利点は、画像中の互いに種類の異なる領域を特定する精度を向上することである。
【課題を解決するための手段】
【0006】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0007】
対象画像を表す対象画像データを用いて、前記対象画像に含まれる複数の画素のそれぞれのエッジ強度を表すエッジ画像データを生成する生成部と、前記エッジ画像データによって表される画像であるエッジ画像の一部を表すとともに複数の画素を含む判定領域であって、互いに異なる複数の判定領域のそれぞれに対して、前記判定領域における前記エッジ強度の程度を表す特徴値を算出する特徴値算出部と、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が所定の基準以上である場合に、前記判定領域を不均一な画像を表す第1種領域として特定し、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が前記所定の基準よりも小さい場合に、前記判定領域を均一な画像を表す第2種領域として特定する、特定部と、を備える、画像処理装置。
この構成によれば、不均一な画像を表す第1種領域(主にオブジェクトを表す)と、均一な画像を表す第2種領域(主に背景を表す)と、の間の区別が、エッジ強度の程度を表す特徴値を利用して行われるので、種類の異なる各領域を特定する精度を向上することができる。
【0008】
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像処理方法および装置(システム)、それらの方法または装置(システム)の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【0009】
【図1】本発明の一実施例としての複合機200を示す説明図である。
【図2】画像処理部M100(図1)によって実行される画像解析処理のフローチャートである。
【図3】原画像データによって表される原画像OIとエッジ画像データによって表されるエッジ画像EIとの例を示す概略図である。
【図4】本実施例におけるエッジ強度の算出式を示している。
【図5】均一領域判定のフローチャートである。
【図6】判定画像BIと、判定画素BIpと、判定ブロックBLと、エッジ画素EIpと、の関係を示す概略図である。
【図7】ステップS240、S250の概略図である。
【図8】判定画像BI(エッジ画像EI)における判定ブロックBLの配置を示す概略図である。
【図9】共通の判定画素BIpで重なる4つの判定ブロックBL_UL、BL_UR、BL_LL、BL_LRを示す概略図である。
【図10】小さい領域の種類特定を説明する概略図である。
【図11】ステップS120の処理の例を示す概略図である。
【図12】属性判定の条件を示すテーブルである。
【図13】分布幅Wと色数Cとの説明図である。
【発明を実施するための形態】
【0010】
A.第1実施例:
次に、本発明の実施の形態を実施例に基づき説明する。図1は、本発明の一実施例としての複合機200を示す説明図である。この複合機200は、CPU210と、内部記憶装置220(例えば、RAM等の揮発性メモリ)と、外部記憶装置290(例えば、ハードディスクドライブやソリッドステートドライブ等の不揮発性メモリ)と、プリンタ部250と、スキャナ部260と、操作部270と、通信部280と、を有している。
【0011】
プリンタ部250は、画像データを用いることによって、印刷媒体に画像を印刷する。スキャナ部260は、光学的スキャンによって画像データを生成する。操作部270は、タッチパネルやボタン等のユーザによって操作される操作部材を含む。通信部280は、他の電子機器(例えば、コンピュータ100やデジタルカメラ)と通信するためにインタフェースである(例えば、いわゆるUSBインタフェース、または、IEEE802.3のインタフェース)。
【0012】
CPU210は、外部記憶装置290に格納されたプログラム291を実行することによって、複合機200の全体の動作を制御する。また、本実施例の複合機200では、CPU210は、画像処理部M100と、印刷処理部M200と、として動作する。画像処理部M100は、エッジ画像生成部M110と、均一領域判定部M120と、属性判定部M130と、を含んでいる。均一領域判定部M120は、特徴値算出部M121と、領域特定部M122と、連結部M123と、を含んでいる。これらの処理部の詳細については、後述する。以下、CPU210が特定の処理部として処理を実行することを、処理部が処理を実行する、とも表現する。
【0013】
図2は、画像処理部M100(図1)によって実行される画像解析処理のフローチャートである。本実施例では、画像処理部M100は、画像の印刷時に、この画像解析処理を実行する。画像の印刷は、ユーザの指示に応じて行われる。例えば、複合機200は、ユーザが操作部270のコピーボタン(図示せず)を操作したことに応じて、スキャナ部260の原稿台(図示せず)に載置された原稿を光学的に読み取って、読み取った画像を印刷する。具体的には、スキャナ部260は、原稿を表す画像データを生成する。画像処理部M100は、スキャナ部260によって生成された画像データ(以下「原画像データ」とも呼ぶ)を解析することによって、オブジェクト(例えば、テキストや写真)を表す領域を特定し、オブジェクトの種類を判定する。印刷処理部M200は、画像処理部M100によって特定されたオブジェクトの領域と種類とを利用して、オブジェクト毎に種類に応じた画質調整を行い、画質調整済みの画像をプリンタ部250に印刷させる。
【0014】
最初のステップS100では、エッジ画像生成部M110は、原画像データを解析することによって、エッジ画像データを生成する。図3は、原画像データによって表される原画像OIと、エッジ画像データによって表されるエッジ画像EIと、のそれぞれの例を示す概略図である。図3の例では、原画像OIは、写真PHと、描画画像DRと、複数の文字TXと、を表している。写真PHは、撮影によって得られた撮影画像である。描画画像DRは、イラストやベクトルグラフィックス等の描画によって表された画像である。文字TXは、文字を表す画像である。なお、原画像OIでは、複数の画素が、第一方向hと、第一方向hと直交する第二方向vと、に沿って、マトリクス状に配置されている。第一方向画素数OIxは、原画像OIの第一方向hの画素数を表し、第二方向画素数OIyは、原画像OIの第二方向vの画素数を表している。
【0015】
エッジ画像EIは、原画像OI内の各画素位置におけるエッジ強度を表す。エッジ画像EIの第一方向画素数EIxは、原画像OIの第一方向画素数OIxと同じであり、エッジ画像EIの第二方向画素数EIyは、原画像OIの第二方向画素数OIyと同じである。エッジ強度は、画素値の変化の大きさを表している。図4は、本実施例における、エッジ強度の算出式を示している。本実施例では、エッジ画像生成部M110は、いわゆるソーベルオペレータ(Sobel operator)を用いて、エッジ強度を算出する。図4中の画素値P(x,y)は、原画像の画素値を表している。第一方向位置xは、第一方向hの画素位置を示し、第二方向位置yは、第二方向vの画素位置を示している。図4に示すように、特定の画素位置(x,y)におけるエッジ強度Sed(x,y)は、その画素位置(x,y)を中心とする3行3列の画素ブロックの画素値Pmと、オペレータGx、Gyとを用いて算出される。第一方向オペレータGxは、第一方向hの画素値の変化の大きさを算出するためのオペレータであり、第二方向オペレータGyは、第二方向vの画素値の変化の大きさを算出するためのオペレータである。エッジ強度Sed(x,y)は、画素ブロックの画素値Pmに第一方向オペレータGxを乗じて得られる値(第一方向成分Sx)の絶対値と、画素ブロックの画素値Pmに第二方向オペレータGyを乗じて得られる値(第二方向成分Sy)の絶対値と、の和である。本実施例では、原画像OIの各画素の色は、赤(R)、緑(G)、青(B)のそれぞれの階調値で表されている。従って、エッジ画像生成部M110は、赤、緑、青のそれぞれのエッジ強度を算出する。
【0016】
図3(B)には、エッジ画像EIの概略が示されている。図3(B)では、濃い色は、エッジ強度が大きいことを示している。図3(B)で表現されたエッジ強度は、赤緑青のそれぞれのエッジ強度の重み付き平均値である。各色成分の重みは、赤緑青の各色成分から輝度値(YCbCr色空間のY成分)を算出する式で用いられる重みと同じである。図示するように、文字TXを表す領域では、文字の輪郭において、エッジ強度が大きい。描画画像DRを表す領域では、描画画像DRの構成要素の輪郭において、エッジ強度が大きい。写真PHを表す領域では、写真PH中の色の変化が大きい部分において、エッジ強度が大きい。色の変化が小さい部分(均一な画像を表す部分。例えば、背景を表す部分)においては、エッジ強度が小さい。
【0017】
図2の次のステップS110では、均一領域判定部M120(図1)は、エッジ画像EIを用いて、均一領域判定を行う。この均一領域判定では、均一領域判定部M120は、原画像OI中の、均一な画像を表す領域と、不均一な画像を表す領域とを、特定する。均一な画像は、例えば、背景である。不均一な画像は、例えば、文字、写真、イラスト等のオブジェクトである。
【0018】
図5は、均一領域判定のフローチャートである。最初のステップS200では、領域特定部M122は、判定画像BIのサイズ(第一方向画素数BIxと第二方向画素数BIy)を算出する。判定画像BIは、均一領域判定の結果を表す画像である。判定結果は、「1(均一画像を表す)」と「ゼロ(不均一画像を表す)」とのいずれかである。判定画像BIの各画素の画素値(フラグ)は、最終的に、この判定結果である「1」又は「ゼロ」を表す。
【0019】
図6は、判定画像BIと、判定画像BIの画素BIp(「判定画素BIp」と呼ぶ)と、判定ブロックBLと、エッジ画像EIの画素EIp(「エッジ画素EIp」と呼ぶ)と、の関係を示す概略図である。本実施例では、判定ブロックBL毎に判定が行われる。1つの判定ブロックBLの形状とサイズとは、2行2列の4つの判定画素BIpのブロックの形状とサイズと、同じである。最終的な均一領域判定の結果は、この判定画素BIp毎に、決定される(詳細は後述)。1つの判定画素BIpの形状とサイズとは、16行16列のエッジ画素EIpのブロックの形状とサイズと同じである。すなわち、1つの判定ブロックBLの形状とサイズとは、32行32列のエッジ画素EIpのブロックの形状とサイズと、同じである。図中のブロックサイズBLsizeは、1つの判定ブロックBLの第一方向hと第二方向vとのそれぞれの画素数(エッジ画素EIpの画素数。本実施例では、32)を示している。また、判定画素数BLnは、1つの判定ブロックBL内の第一方向hと第二方向vとのそれぞれの画素数(判定画素BIpの画素数。本実施例では、2)を示している。
【0020】
図5のステップS200では、領域特定部M122は、複数の判定画素BIpをマトリクス状に配置することによってエッジ画像EIの全体を覆うために要する判定画素BIpの数(第一方向hの数と第二方向vの数)を算出する。領域特定部M122は、算出された第一方向hの数を、第一方向画素数BIxとして採用し、算出された第二方向vの数を、第二方向画素数BIyとして採用する。図5のステップS200には、第一方向画素数BIxと第二方向画素数BIyの算出式が示されている。この算出式では、各数BIx、BIyは、小数部分が切り捨てられて、整数に丸められる。また、エッジ画像EIの第一方向画素数EIxが、1つの判定画素BIpの第一方向hの画素数(BLsize/BLn)の倍数とは異なる場合がある。この場合、図5の算出式によれば、エッジ画像EIの第一方向画素数EIxを判定画素BIpの第一方向hの画素数で割った余りの画素をカバーするために、判定画素BIpのラインが1つ追加される(第二方向vも同様である)。
【0021】
次のステップS210では、領域特定部M122は、判定画像BIの全画素の画素値(フラグ)をゼロに初期化する。
【0022】
次のステップS220では、特徴値算出部M121は、1つの判定ブロックBLを選択する。本実施例では、判定画像BIの全体を覆うように、複数の判定ブロックBLが配置されている(詳細は後述)。特徴値算出部M121は、それら複数の判定ブロックBLの中から、未処理の判定ブロックBLを選択する。
【0023】
次のステップS230では、特徴値算出部M121は、ステップS220で選択した判定ブロックBL内の平均画素値を算出する。この平均画素値は、判定ブロックBL内のエッジ画素EIpの画素値(エッジ強度)の平均値であり、赤、緑、青の各色成分毎に算出される。図3(B)にも示されるように、判定ブロックBLが均一な画像を表す場合には、エッジ強度が小さいので、平均画素値は小さい。判定ブロックBLが不均一な画像を表す場合には、エッジ強度が大きいので、平均画素値は大きい。
【0024】
次のステップS240では、領域特定部M122が、ステップS230で算出された平均画素値を用いて、判定ブロックBLが均一画像を表しているか否かを判定する。判定ブロックBLが均一画像を表していると判定された場合には(S240でYes)、次のステップS250で、領域特定部M122は、判定ブロックBL内の判定画素BIpの画素値(フラグ)を1に設定する。
【0025】
図7は、ステップS240、S250の概略図である。図7には、判定画像BIの一部(複数の判定画素BIp)と1つの判定ブロックBLとが示されている(判定ブロックBLにハッチングが付されている)。各判定画素BIpに示された括弧内の数値は、判定画素BIpの画素値(フラグ)を示している。本実施例では、判定ブロックBLが均一な画像を表していると判定されるための条件は、赤の平均画素値AveRと、緑の平均画素値AveGと、青の平均画素値AveBと、の全てが、所定の閾値Th_BGよりも小さいことである(以下、「均一条件」と呼ぶ)。図3、図4で説明したように、均一な画像を表している領域では、エッジ強度が小さいので、平均画素値が小さくなる。一方、不均一な画像を表している領域では、エッジ強度が大きいので、平均画素値が大きくなる。従って、赤緑青の平均画素値AveR、AveG、AveBが均一条件を満たす場合には、判定ブロックBLが均一な画像を表している可能性が高い。赤緑青の平均画素値AveR、AveG、AveBが均一条件を満たさない場合には、判定ブロックBLが不均一な画像を表している可能性が高い。なお、本実施例では、閾値Th_BGは、正値である。閾値Th_BGは、判定の精度が高くなるように実験的に決定されてよい。
【0026】
判定ブロックBLが均一条件を満たす場合には(S240でYes)、次のステップS250で、領域特定部M122は、判定ブロックBL内の全ての判定画素BIpの画素値(フラグ)を、1に設定する。図6、図7に示すように、本実施例では、1つの判定ブロックBLは、4つの判定画素BIpを含んでいる。従って、領域特定部M122は、4つの判定画素BIpの画素値(フラグ)を1に設定する。なお、判定ブロックBLが均一条件を満たさない場合には(S240でNo)、ステップ250を省略して、ステップ260に移行する。
【0027】
このように、複数のエッジ画素EIpを含む判定ブロックBLの平均画素値を用いて1回の判定を行う理由は、原画像OI、または、エッジ画像EIにノイズが含まれる場合であっても、平均値の算出に利用される画素の数が多いほどノイズ(例えば、ノイズを表す1つの画素)の影響を低減させることができることを利用して、判定結果に対するノイズの影響を緩和するためである。このようなノイズは、種々の原因(例えば、光学的なスキャン、または、種々の画像処理)によって、引き起こされる。
【0028】
図5の次のステップS260では、領域特定部M122は、全ての判定ブロックBLの判定が完了したか否かを判定する。未判定の判定ブロックBLが残っている場合には(S260でNo)、均一領域判定部M120は、ステップS220〜S260の処理を繰り返すことによって、全ての判定ブロックBLの判定を完了する。一方、全ての判定ブロックBLの判定が完了している場合には(S260でYes)、均一領域判定を終了する。
【0029】
図8は、判定画像BI(エッジ画像EI)における判定ブロックBLの配置を示す概略図である。図中には、判定画像BI(エッジ画像EI)と、図5のステップS220で選択された判定ブロックBLと、が示されている。ステップS220〜S260の処理が繰り返されることによって、選択される判定ブロックBLの位置は、図8(A)〜図8(E)の順に移動する。
【0030】
本実施例では、特徴値算出部M121(図1)は、判定画像BIの左上隅から右下隅まで、判定ブロックBLを1画素分の距離ずつ移動させる(ここで、1画素=1判定画素BIp)。具体的には、判定画像BIの左上の隅から、第一方向hに1画素分の距離ずつ、判定ブロックBLが移動する(図8(A)、図8(B)、図8(C))。そして、判定ブロックBLが判定画像BIの右端に到達したら、判定ブロックBLは、第二方向vに1画素分だけシフトした第一方向ライン上を、判定画像BIの左端から右端に向かって1画素分の距離ずつ移動する(図8(D)、図8(E))。このような移動を繰り返すことによって、判定ブロックBLは、判定画像BI上の全ての領域をカバーする。すなわち、互いに異なる位置に配置された複数の判定ブロックBLが、判定画像BIの全体を覆っている、ということができる。
【0031】
図6で説明したように、本実施例では、1つの判定ブロックBLの形状とサイズとは、2行2列の判定画素BIpのブロックの形状とサイズと、同じである。従って、判定ブロックBLは、少なくとも1つの他の判定ブロックBLと互いに一部の領域が重なる。例えば、図8(A)の判定ブロックBLの右半分は、図8(B)の判定ブロックBLの左半分と、重なる。また、図8(A)の判定ブロックBLの下半分は、図8(D)の判定ブロックBLの上半分と重なる。図8(A)の判定ブロックBLの右下部分は、図8(E)の判定ブロックBLの左上部分と重なる。このように、1つの判定ブロックBL中の、1つの判定画素BIp、または、2つの判定画素BIpが、他の判定ブロックBLと重なる。本実施例では、複数の判定ブロックBLは、第一方向hと第二方向vとのそれぞれの方向に、判定ブロックBLの長さよりも短い間隔で、並べて配置される(本実施例では、間隔=1つの判定画素BIpの大きさ)。換言すれば、複数の判定ブロックBLは、少なくとも1つの他の判定ブロックBLと互いに一部の領域が重なるように、配置される。
【0032】
具体的には、判定画像BIの判定画素BIpのうちの縁(ふち)の画素を除いた残りの判定画素BIp(例えば、図8の第1画素BIp1)は、4つの判定ブロックBLと重なる。また、判定画像BIの縁の判定画素BIpのうちの4隅の判定画素BIp(例えば、第2画素BIp2)は、1つの判定ブロックBLと重なる。さらに、4隅を除いた縁の画素(例えば、第3画素BIp3)は、2つの判定ブロックBLと重なる。
【0033】
図9は、共通の判定画素BIpで重なる4つの判定ブロックBL_UL、BL_UR、BL_LL、BL_LRを示す概略図である。図中では、共通の判定画素BIpにハッチングが付されている。図示するように、各判定ブロックBL_UL、BL_UR、BL_LL、BL_LRは、共通の判定画素BIpから見て、左上、右上、左下、右下に、それぞれ拡がっている。
【0034】
図5で説明したように、本実施例では、判定ブロックBL毎に、ステップS240の判定が行われる。従って、4つの判定ブロックBL_UL、BL_UR、BL_LL、BL_LRのそれぞれの4つの判定結果R_UL、R_UR、R_LL、R_LRが、共通の判定画素BIpに適用される。本実施例では、「均一画像を表す(フラグ=1)」という判定結果が優先される(図5に示すように、「1」に設定されたフラグは「ゼロ」に戻らない)。すなわち、4つの判定結果R_UL、R_UR、R_LL、R_LRのうちの少なくとも1つの判定結果が「ステップS240でYes」である場合には、判定画素BIpの画素値(フラグ)は、1(均一画像を表す)に設定される。全ての判定結果R_UL、R_UR、R_LL、R_LRが「ステップS240でNo」である場合には、判定画素BIpの画素値(フラグ)は、ゼロ(不均一画像を表す)に維持される。1つの判定画素BIpと重なる判定ブロックBLの総数が2、または、1である場合も、同様である。
【0035】
このように、互いに異なる複数の判定ブロックBLのそれぞれの判定結果を用いて、判定ブロックBLよりも小さい判定画素BIpの最終的な判定結果を決定する理由は、小さい領域の種類特定を適切に行うためである。
【0036】
図10は、小さい領域の種類特定を説明する概略図である。図10(A)、図10(B)は、エッジ画像EIの同じ部分を示している。図示された部分は、第一方向hに延びる2つの文字列ST1、ST2を表している。また、図10(A)は、第二方向vに並んだ4つの判定ブロックBL11〜BL14を示し、図10(B)は、第二方向に並んだ3つの判定ブロックBL21〜BL23を示している。図10(B)の判定ブロックBL21〜BL23は、図10(A)の判定ブロックBL11〜BL13を、第二方向(v方向)に1画素分(1画素=1判定画素BIp)だけシフトして得られる判定ブロックである。各判定ブロックBL11〜BL14、BL21〜BL23の中に示された「Yes」または「No」は、各判定ブロックの判定結果(図5、図6のステップS240の結果)を示している。
【0037】
図示するように、2本の文字列ST1、ST2の間には、小さい隙間S1があいている(この隙間S1は、背景を表している。以下、隙間S1を「背景S1」とも呼ぶ)。図10(A)では、第2判定ブロックBL12が、第1文字列ST1の一部と背景S1の一部とをカバーしている。また、第3判定ブロックBL13は、第2文字列ST2の一部と背景S1の一部とをカバーしている。これらの判定ブロックBL12、BL13の判定結果は、文字列ST1、ST2の一部を表しているが故に、背景S1を表すにも拘わらず、「No(不均一画像を表す)」である。
【0038】
図10(B)では、第1判定ブロックBL21と第3判定ブロックBL23は、文字列ST1、ST2を、それぞれカバーしている。また、第2判定ブロックBL22は、文字列ST1、ST2をカバーせずに、背景S1のみをカバーしている。この結果、第2判定ブロックBL22の判定結果は、「Yes(均一画像を表す)」である。
【0039】
ここで、背景S1を表す判定画素BIpa(以下「着目判定画素BIpa」と呼ぶ)について検討する。着目判定画素BIpaを含む判定ブロックBL12(図10(A))は、背景S1に加えて、第1文字列ST1を表している。従って、この判定ブロックBL12の判定結果は「No(不均一画像を表す)」である。一方、着目判定画素BIpaを含む別の判定ブロックBL22(図10(B))は、文字列ST1、ST2を表さずに、背景S1のみを表している。従って、この判定ブロックBL22の判定結果は「Yes(均一画像を表す)」である。
【0040】
図9に示すように、互いに異なる複数の判定ブロックBLが共通の判定画素BIpで重なる場合には、その判定画素BIpから見て、それら複数の判定ブロックBLは、互いに異なる方向に拡がる。換言すれば、それら複数の判定ブロックBLの間で、共通の判定画素BIpを除いた残りの部分を比較すると、複数の判定ブロックBLは、それぞれ、互いに異なる領域を含んでいる(例えば、左上の判定ブロックBL_ULは、判定画素BIpの左上の部分PULを含むが、他の判定ブロックBL_UR、BL_LL、BL_LRは、その部分PULを含まない)。従って、図10に示すように、判定画素BIpaの近傍に、その判定画素BIpaとは異なる種類の画像(文字列ST1)を表す領域が配置されている場合であっても、その判定画素BIpaと重なる複数の判定ブロックBL12、BL22のうちの一部(判定ブロックBL22)は、その判定画素BIpaと同じ種類の画像(背景S1)のみを表すことが可能である。そして、そのような判定ブロックの判定結果を他の判定ブロックの判定結果よりも優先することによって(この場合、判定画素BIpaのフラグを優先的に「1」に設定することができる)、その判定画素BIpの種類を適切に特定することができる。なお、特定の種類の画像を表す領域の大きさが、1つの判定ブロックBLと同程度であれば、このような適切な特定が可能である。また、本実施例では、図8に示すように複数の判定ブロックBLと重なる複数の判定画素BIpが、エッジ画像EI(原画像OI)のほぼ全体を隙間なく覆っている。従って、原画像OI内の任意の位置において、上記のような適切な特定が可能となる。また、1つの種類の画像の輪郭が微細なパターンを示す場合に、その微細なパターンを適切に特定することができる。
【0041】
以上のように、全ての判定ブロックBLの判定が進行する。全ての判定ブロックBLの判定が完了したら(すなわち、全ての判定画素BIpの画素値(フラグ)が確定したら)、図5の均一領域判定(図2:ステップS110)が終了する。
【0042】
図2の次のステップS120では、連結部M123(図1)が、画素値(フラグ)が同じ判定画素BIpの連結と、判定画素BIpの連結によって得られた領域(以下、「連結領域」と呼ぶ)のラベリングとを、行う。図11は、ステップS120の処理の例を示す概略図である。図11(A)は、均一領域判定(S110)が施された判定画像BIを示している。斜めのハッチングが付された判定画素BIpは、均一画像を表すと判定された画素を示し、斜めのハッチングの無い判定画素BIpは、不均一画像を表すと判定された画素を示している。
【0043】
連結部M123は、画素値(フラグ)が同じで、かつ、互いに接する2つの判定画素BIpを連結する処理を繰り返すことによって、連続な領域を形成する。2つの判定画素BIpが互いに接するとは、2つの判定画素BIpが分離していないことを意味している。本実施例では、2つの判定画素BIpが接していると判定されるための条件(以下「連結条件」とも呼ぶ)は、2つの判定画素BIpの間の距離が1.5画素以下であることである。この場合、1つの判定画素は、その判定画素を囲む8つの判定画素のいずれとも接している、ということである。この代わりに、連結条件は、2つの判定画素BIpの間の距離が1画素以下であることであってもよい。この場合には、1つの判定画素は、その判定画素の上下左右に位置する4つの判定画素のいずれとも接している、ということである。
【0044】
図11(B)は、連結処理が施された判定画像BIを示している。ハッチングが付された領域は、均一画像を表すと判定された領域を示し、ハッチングの無い領域は、不均一画像を表すと判定された領域を示している。図11(B)の例では、不均一画像を表すと判定された複数の画素が、8つの連結領域A1a〜A1hを形成し、均一画像を表すと判定された複数の画素が、1つの連結領域A2aを形成している。8つの連結領域A1a〜A1hは、原画像OI(図3(A))のオブジェクト(文字TXと写真PHと描画画像DR)に対応しており、連結領域A2aは、原画像OIの背景に対応している。
【0045】
次に、連結部M123は、ラベリングを行う。ラベリングは、連結処理によって形成された各連結領域に識別子(ラベル)を付与する処理である。図11(C)は、ラベリングが施された判定画像BIを示している。図示するように、連結処理によって形成された9つの連結領域に、1〜9のラベル(識別子)が、それぞれ付与されている。
【0046】
図2の次のステップS130では、属性判定部M130(図1)が、不均一画像を表すと判定された連結領域の詳細な属性を判定する。本実施例では、属性は、「文字画像」と、「撮影画像」と、「描画画像」と、の中から選択される。この属性判定は、ステップS120で形成された連結領域毎に行われる。
【0047】
図12は、属性判定の条件を示すテーブルである。本実施例では、属性判定部M130は、色の分布幅Wと、色数Cと、画素密度Sと、に応じて属性を決定する。
【0048】
図13は、分布幅Wと色数Cとの説明図である。図中には、輝度のヒストグラムが示されている。この輝度ヒストグラムは、原画像OIにおける1つの連結領域内の画素値から算出される輝度のヒストグラムである(本実施例では、輝度が0〜255の整数で表される)。判定画像BIの画素と、エッジ画像EI(すなわち、原画像OI)の画素と、の対応関係は、図6で説明したように、予め決められている。この対応関係に従って、原画像OIにおける連結領域が特定される。すなわち、原画像OIにおける連結領域は、原画像OIに判定画像BIを重ねた場合に、判定画像BI上の連結領域と重なる領域である。また、このヒストグラムでは、背景とほぼ同じ色を表す画素が除かれている。本実施例では、背景の色は、均一画像を表すと判定された領域の色である(例えば、そのような領域における平均画素値によって表される色を、背景の色として採用可能である)。そして、背景の色との差が所定値以下である色を表す画素(例えば、各色成分の画素値の差が所定の閾値以下)を、ヒストグラムから除くこととしている。
【0049】
色数Cは、度数(画素数)が所定の閾値Th以上である輝度の累積幅である。このような色数Cは、度数が閾値Th以上である階級(binとも呼ばれる)の総数に、1つの階級の幅を乗じることによって、算出可能である。例えば、図13のヒストグラムは、閾値Thを越える3つのピークP1、P2、P3を示している。色数Cは、第1ピークP1の閾値Thを越える部分の幅C1と、第2ピークP2の閾値Thを越える部分の幅C2と、第3ピークP3の閾値Thを越える部分の幅C3と、の和である。一般的に、文字は少ない色で表現されることが多いので、連結領域が文字を表す場合には、色数Cは少なくなる。撮影画像は、撮影された被写体の種々の色を表すので、連結領域が撮影画像を表す場合には、色数Cが多くなる。描画画像は、文字と比べて多くの色で表現されることが多いが、撮影画像と比べると、利用される色の数は少ないことが多い。従って、連結領域が描画画像を表す場合には、色数Cは、文字画像の色数Cよりも多く、撮影画像の色数Cよりも少ない傾向がある。
【0050】
分布幅Wは、度数(画素数)が所定の閾値Th以上である輝度(階級)の最低値と最高値との間の差(幅)である。色数Cの説明と同じ理由により、連結領域が文字を表す場合には、分布幅Wは小さくなり、連結領域が撮影画像を表す場合には、分布幅Wが大きくなる。そして、連結領域が描画画像を表す場合には、分布幅Wは、文字画像の分布幅Wよりも大きく、撮影画像の分布幅Wよりも小さい傾向がある。
【0051】
画素密度Sは、連結領域において、背景とほぼ同じ色を表す画素を除いた残りの画素の密度(単位面積当たりの画素数)である。背景とほぼ同じ色を表す画素は、ヒストグラムから除かれた画素と同じである。一般的に、文字は、背景上に、背景とは異なる色の細線で、書かれている。従って、連結領域が文字を表す場合には、画素密度Sが小さくなる。撮影画像では、ほとんどの部分が、背景とは異なる色で表されている。従って、連結領域が撮影画像を表す場合には、画素密度Sが大きくなる。描画画像は、文字と同様に、背景上に、背景とは異なる色で表現されている。ただし、文字とは異なり、描画画像は、細線に限らず、太線または塗りつぶされた領域を含み得る。従って、連結領域が描画画像を表す場合には、画素密度Sは、文字画像の画素密度Sよりも大きく、撮影画像の画素密度Sよりも小さい傾向がある。
【0052】
図12の判定条件は、以上の特徴を考慮して、構成されている。具体的には、属性判定部M130は、以下の3つの判定結果の組み合わせに対応付けられた属性を選択する。
判定1)分布幅Wが、所定の分布幅閾値Wth以上であるか否か
判定2)色数Cが、所定の色数閾値Cth以上であるか否か
判定3)画素密度Sが、所定の画素密度閾値Sth以上であるか否か
例えば、分布幅Wが分布幅閾値Wth未満であり、色数Cが色数閾値Cth未満であり、画素密度Sが画素密度閾値Sth未満である場合には、属性判定部M130は、連結領域の属性が「文字画像」であると判定する。
【0053】
属性判定部M130(図1)は、図13のようなヒストグラムを生成し、ヒストグラムを解析することによって、分布幅Wと色数Cとを算出し、また、原画像OIの連結領域を解析することによって、画素密度Sを算出する。そして、属性判定部M130は、算出された分布幅Wと色数Cと画素密度Sとを用いて、属性を判定する。属性判定部M130は、不均一画像を表すと判定された全ての連結領域の属性を判定する。この判定が完了したことに応じて、図2の画像解析処理は終了する。印刷処理部M200は、原画像OIの各連結領域に対して、属性に応じた画質調整を行う。例えば、印刷処理部M200は、文字画像を表す連結領域に対しては、シャープネスを強くする処理を行う。また、印刷処理部M200は、撮影画像を表す連結領域に対しては、撮影画像が好ましい色で印刷されるように予め設定された色調整を行う。印刷処理部M200は、画質調整済みの画像を表す画像データをプリンタ部250に供給することによって、画像の印刷を行う。
【0054】
以上のように、本実施例では、特徴値算出部M121は、エッジ画像EI上に配置された互いに異なる複数の判定ブロックBLのそれぞれに対して、平均画素値AveR、AveG、AveBを算出する(図5:S230)。これらの平均画素値AveR、AveG、AveBは、図4に示すエッジ強度Sedの平均値であるので、エッジ強度の程度を表している。そして、図5、図7のステップS240で説明したように、領域特定部M122は、平均画素値AveR、AveG、AveBが均一条件を満たしている場合には、判定ブロックBLが均一画像を表していると特定し、平均画素値AveR、AveG、AveBが均一条件を満たしていない場合には、判定ブロックBLが不均一画像を表していると特定する。均一条件は、赤緑青の全ての色成分の平均画素値(エッジ強度)が閾値Th_BGよりも小さい場合に満たされ、少なくとも1つの色成分の平均画素値が閾値Th_BG以上である場合に満たされない。従って、均一条件は、平均画素値によって表されるエッジ強度の程度が所定の基準以上であるか否かを判定する条件である。このように、不均一画像を表す領域と、均一画像を表す領域との間の区別が、エッジ強度の程度を表す平均画素値を利用して行われるので、種類の異なる各領域を特定する精度を向上することができる。例えば、テキストの色が背景の色に近い場合であっても、テキストを表す領域では、背景を表す領域と比べて、エッジ強度が強くなるので、それらの領域を適切に分離することができる。
【0055】
また、均一領域判定には、判定ブロックBLにおける複数のエッジ画素EIpの画素値(エッジ強度)の平均値が利用される。この結果、原画像OI、または、エッジ画像EIがノイズを含む場合であっても、ノイズの影響を緩和することができるので、種類の異なる各領域を特定する精度を向上することができる。例えば、原画像OI、または、エッジ画像EIの背景を表す領域に、光学的スキャン又は画像処理に起因するノイズが生じる場合がある。このような場合であっても、背景を表す領域が不均一画像を表す領域として誤って特定される可能性を低減できる。
【0056】
また、図8で説明したように、複数の判定ブロックBLは、少なくとも1つの他の判定ブロックBLと互いに一部の共通領域(判定画素BIp)が重なるように構成されている。そして、図9で説明したように、複数の判定ブロックBLが重なる共通領域(判定画素BIp)では、それら複数の判定ブロックBLのそれぞれの判定結果を総合して、その共通領域(判定画素BIp)の種類が特定される。この結果、判定ブロックBLと同程度の大きさの小領域の種類を適切に特定することができる。特に、本実施例では、図9、図10で説明したように、「均一画像を表す」という判定結果が優先される。この結果、均一画像を表す領域が、誤って、不均一画像を表す領域であると特定される可能性を低減できる。
【0057】
さらに、本実施例では、図8で説明したように、複数の判定ブロックBLが重なる共通領域(判定画素BIp)が、判定画像BI(すなわち、原画像OI)のほぼ全体(4隅の判定画素BIpを除いた残りの領域)を隙間無く覆うように、配置されている。この結果、判定ブロックBLと同程度の大きさの小領域の種類の適切な特定を、原画像OIのほぼ全体に亘って、行うことができる。
【0058】
また、本実施例では、図2のステップS120、図11で説明したように、連結部M123は、互いに接している2つの領域(判定画素BIp)が同じ種類の領域であると特定された場合に、2つの領域を1つの領域として連結する。この結果、1つのオブジェクト(例えば、テキスト)を表す複数の判定画素BIpを1つの領域として連結することが可能となる。すなわち、1つのオブジェクトを表す大きな領域を、1つの領域として特定することが可能になる。この結果、種類の異なる各領域を特定する精度を向上することができる。
【0059】
なお、本実施例では、判定ブロックBLは、本発明における「判定領域」の例であり、判定ブロックBLから算出される平均画素値AveR、AveG、AveBは、「エッジ強度の程度を表す特徴値」の例である。また、平均画素値AveR、AveG、AveBが均一条件を満たすことは、「特徴値によって表されるエッジ強度の程度が所定の基準よりも小さい」ことの例である。また、複数の判定ブロックBLが重なる共通の判定画素BIpは、「共通領域」の例であり、1つの共通な判定画素BIpで重なる複数の判定ブロックBLのそれぞれは、「重畳判定領域」の例である。本実施例では、1つの重畳判定領域(判定ブロックBL)は、互いに異なる複数の共通領域(判定画素BIp)を有している。
【0060】
B.変形例:
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【0061】
変形例1:
エッジ強度の算出式は、図4の算出式に限らず、画素値の変化の大きさを表す値を算出可能な他の任意の算出式であってよい。例えば、エッジ強度は、第一方向成分Sxの2乗と第二方向成分Syの2乗との合計値の平方根であってもよく、また、いわゆるプレウィットオペレータ(Prewitt operator)を用いて算出されてもよい。また、エッジ強度は、赤緑青の各色成分に限らず、他の色成分(例えば、輝度)の画素値を用いて算出されてもよい。
【0062】
変形例2:
判定ブロックBL毎に算出される特徴値(エッジ強度の程度を表す特徴値)は、エッジ強度の平均値(平均画素値AveR、AveG、AveB)に限らず、エッジ強度の程度を表す任意の値であってよい。例えば、特徴値は、エッジ強度の最頻値であってもよい。この場合も、ノイズの影響を適切に緩和することができる。また、平均値と最頻値との両方を、特徴値として採用してもよい。また、特徴値は、エッジ強度の分布の特徴を表す他の種々の値(例えば、最大値や中央値(メディアン))であってもよい。また、複数の色成分(例えば、赤緑青)のそれぞれの特徴値の平均値を、最終的な特徴値として採用してもよい(例えば、特徴値=(AveR+AveG+AveB)/3)。
【0063】
また、図5、図7のステップS240で判定される条件(均一条件)は、図7に示す条件に限らず、特徴値によって表されるエッジ強度の程度が所定の基準以上であるか否かを判定する任意の条件であってよい。例えば、色成分毎に閾値が異なっていても良い。また、複数の色成分(例えば、赤緑青)のそれぞれの特徴値の平均値を、1つの閾値と比較してもよい。一般に、特徴値が複数種類の値(例えば、平均値と最頻値)を含む場合には、種類毎に予め決定された閾値を用いて、それらの値の大きさを判定してよい。そして、それらの判定結果に基づいて、エッジ強度の程度が所定の基準以上であるか否かを決定してよい。例えば、図7の実施例と同様に、全ての種類の値がそれぞれの閾値よりも小さいことを、均一条件として採用してもよい。
【0064】
変形例3:
ブロックサイズBLsize(図6)は、32に限らず、任意の複数の値であってよい(例えば、64、128等)。ここで、ブロックサイズBLsizeが大きいほど、均一領域判定は、ノイズから影響を受けにくくなる。一方、均一と不均一との区別が可能な領域の最小サイズは、1つの判定ブロックBLと同じである。従って、ブロックサイズBLsizeが小さいほど、より小さい領域の種類の適切な特定が可能となる。従って、これらのバランスを考慮して、ブロックサイズBLsizeを決定することが好ましい。
【0065】
また、判定画素数BLn(図6)は、2に限らず、任意の複数の値であってよい(例えば、3、4、5等)。判定画素数BLnが大きいほど、エッジ画像EI上での判定ブロックBLの位置の変位が小さくなるので(判定ブロックBLの密度が高くなるので)、小さい領域の種類を適切に特定することができる。一方、判定画素数BLnが大きいほど、処理に要する時間が長くなる。従って、これらのバランスを考慮して、判定画素数BLnを決定することが好ましい。
【0066】
なお、判定ブロックBLの縦横比は、1:1に限らず、他の比率であってもよい。同様に、判定画素BIpの縦横比も、1:1に限らず、他の比率であってもよい。また、1つの判定画素BIpに重なる判定ブロックBLの総数は、4に限らず、他の任意の数であってよい。
【0067】
変形例4:
複数の判定ブロックBLが重なる共通領域(判定画素BIp)の種類を特定する際に、図9に示すように「均一画像」を優先する代わりに、「不均一画像」を優先してもよい。こうすれば、不均一画像を表す領域が、誤って、均一画像を表すと特定される可能性を低減できる。一般に、複数の判定ブロックBLが重なる共通領域(判定画素BIp)の種類を特定する方法は、その共通領域と重なる複数の判定ブロックBLのそれぞれの判定結果を用いて1つの判定結果を導く任意の方法であってよい。例えば、共通領域の種類を多数決で決定してもよい。
【0068】
判定ブロックBLを用いた均一領域判定が行われる画像(「対象画像」と呼ぶ)は、原画像OIの全体の代わりに、原画像OIの一部分の画像であってもよい。この場合には、画像処理部M100(図1)は、原画像OIを表す画像データのうちの対象画像を表す部分を用いて、画像解析処理を行えばよい。いずれの場合も、複数の判定ブロックBLが重なる共通領域(判定画素BIp)であって、互いに異なる複数の共通領域が、対象画像の少なくとも一部の連続な特定の領域を隙間無く覆うように、複数の判定ブロックBLが配置されていることが好ましい。こうすれば、特定領域においては、共通領域(判定画素BIp)の種類の特定を、複数の判定ブロックBLを用いて行うことができる。この結果、1つの種類の画像(例えば、テキストや背景)を表す領域が小さい場合であっても、その領域を正確に特定することが可能となる。そして、そのような正確な特定は、特定領域内の任意の位置において可能である。また、特定領域内において、1つの種類の画像の輪郭が微細なパターンを示す場合に、その微細なパターンを適切に特定することができる。これらの結果、種類の異なる領域を特定する精度を向上することができる。なお、対象画像のうちの特定領域を除いた残りの領域では、複数の判定ブロックBLが、互いに重ならないように、配置されてよい。また、特定領域は、図8に示す実施例のように、対象画像(判定画像BI、すなわち、原画像OI)のほぼ全体をカバーしていることが好ましい。なお、対象画像は、ユーザによって設定されてもよい。特定領域も、ユーザによって設定されてよい。また、対象画像の全体に亘って、複数の判定ブロックBLが互いに重ならないように配置されていてもよい。
【0069】
変形例5:
図2の画像解析処理において、ステップS130を省略してもよい(すなわち、図1の属性判定部M130を省略してもよい)。この場合には、印刷処理部M200は、均一画像を表すと判定された領域と、不均一画像を表すと判定された領域との間で、画質調整を変えてもよい。また、図2の画像解析処理において、ステップS120を省略してもよい(すなわち、図1の連結部M123を省略してもよい)。
【0070】
また、均一領域判定の結果は、画質調整に限らず、他の任意の処理に利用されてよい。例えば、いわゆるOCR(optical character reader)処理によって、文字画像から、デジタルテキストデータを生成する場合に、不均一画像を表すと判定された領域を、OCR処理の対象として選択してもよい。また、画像をディスプレイに表示する場合に、不均一画像を表すと判定された領域を、拡大して表示してもよい。また、画像解析処理(均一領域判定)の対象は、他の装置(例えば、コンピュータ100)によって供給された画像データであってもよい。
【0071】
上記各実施例の画像処理を実現する画像処理装置は、複合機200に限らず、種々の装置であってよい。例えば、プリンタ、デジタルカメラ、スキャナなどの画像関連機器の内部のコンピュータ、汎用のパーソナルコンピュータ、ネットワークに接続されたサーバ等を採用可能である。また、ネットワークを介して互いに通信可能な複数のコンピュータが、画像処理に要する機能を一部ずつ分担して、全体として、画像処理の機能を提供してもよい(このようなコンピュータシステムを利用する技術は、クラウドコンピューティングとも呼ばれる)。この場合、コンピュータシステムの全体が、特許請求の範囲における画像処理装置に対応する。
【0072】
変形例6:
図2のステップS130において特定される属性の候補は、図12に示す3つ(文字画像と撮影画像と描画画像)に限らず、任意の数の任意の属性であってよい。ただし、少なくとも、文字画像であるか否かが特定されることが好ましい。文字画像は、他の種類の画像と比べて、特別な処理の対象となることが多い。例えば、いわゆるOCR(optical character reader)処理によって、文字画像から、デジタルテキストデータが生成される。従って、不均一画像を表すと判定された領域が、文字画像を表しているか否かを特定できれば、文字画像を表す領域を特別な処理(例えば、OCR処理)の対象とすればよいので、処理に要する時間を短縮することができる。
【0073】
また、属性を特定する方法は、図12、図13で説明した方法に限らず、他の任意の方法であってよい。例えば、予め準備された文字画像とのパターンマッチングによって、属性が文字画像であるか否かを判定してもよい。
【0074】
変形例7:
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、図1の均一領域判定部M120の機能を、論理回路を有するハードウェア回路によって実現してもよい。
【0075】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア(コンピュータプログラム)は、コンピュータ読み取り可能な記録媒体に格納された形で提供することができる。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD−ROMのような携帯型の記録媒体に限らず、各種のRAMやROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含んでいる。
【符号の説明】
【0076】
100...コンピュータ、200...複合機、210...CPU、220...内部記憶装置、250...プリンタ部、260...スキャナ部、270...操作部、280...通信部、290...外部記憶装置、291...プログラム、M100...画像処理部、M110...エッジ画像生成部、M120...均一領域判定部、M130...属性判定部、M121...特徴値算出部、M122...領域特定部、M123...連結部、M200...印刷処理部、OI...原画像、PH...写真、DR...描画画像、TX...文字、EI...エッジ画像、EIp...エッジ画素、BI...判定画像、BIp...判定画素、BL...判定ブロック
【特許請求の範囲】
【請求項1】
対象画像を表す対象画像データを用いて、前記対象画像に含まれる複数の画素のそれぞれのエッジ強度を表すエッジ画像データを生成する生成部と、
前記エッジ画像データによって表される画像であるエッジ画像の一部を表すとともに複数の画素を含む判定領域であって、互いに異なる複数の判定領域のそれぞれに対して、前記判定領域における前記エッジ強度の程度を表す特徴値を算出する特徴値算出部と、
前記判定領域の前記特徴値によって表される前記エッジ強度の程度が所定の基準以上である場合に、前記判定領域を不均一な画像を表す第1種領域として特定し、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が前記所定の基準よりも小さい場合に、前記判定領域を均一な画像を表す第2種領域として特定する、特定部と、
を備える、画像処理装置。
【請求項2】
請求項1に記載の画像処理装置であって、
前記特徴値は、前記エッジ画像中の前記判定領域における画素値の平均値及び最頻値の少なくとも一方である、
画像処理装置。
【請求項3】
請求項1または請求項2に記載の画像処理装置であって、
前記複数の判定領域は、少なくとも1つの他の判定領域と互いに一部の共通領域が重なるように構成された判定領域である複数の重畳判定領域を含み、
前記特定部は、前記複数の重畳判定領域のうちの、一部の重畳判定領域を前記第1種領域と特定し、残りの重畳判定領域を前記第2種領域と特定した場合に、前記共通領域を、前記第1種領域と前記第2種領域とのうちの所定の一方の種類の領域として特定する、
画像処理装置。
【請求項4】
請求項3に記載の画像処理装置であって、
前記特定部は、前記共通領域で重なる前記複数の重畳判定領域のうちの、一部の重畳判定領域を前記第1種領域と特定し、残りの重畳判定領域を前記第2種領域と特定した場合に、前記共通領域を前記第2種領域として特定する、
画像処理装置。
【請求項5】
請求項3または請求項4に記載の画像処理装置であって、
前記複数の判定領域は、複数の共通領域を形成する複数の重畳判定領域を含み、
前記複数の重畳判定領域は、前記複数の共通領域が前記対象画像の少なくとも一部の連続な特定領域を隙間無く覆うように、構成されている、
画像処理装置。
【請求項6】
請求項1ないし請求項5のいずれかに記載の画像処理装置であって、さらに、
互いに接している2つの領域が、前記特定部によって同じ種類の領域と特定された場合に、前記2つの領域を1つの領域として連結する連結部を含む、
画像処理装置。
【請求項7】
請求項6に記載の画像処理装置であって、さらに、
前記特定部によって第1種領域と特定された領域が、文字を表す文字領域であるか否かを判定する判定部を含む、
画像処理装置。
【請求項8】
対象画像を表す対象画像データを用いて、前記対象画像に含まれる複数の画素のそれぞれのエッジ強度を表すエッジ画像データを生成する機能と、
前記エッジ画像データによって表される画像であるエッジ画像の一部を表すとともに複数の画素を含む判定領域であって、互いに異なる複数の判定領域のそれぞれに対して、前記判定領域における前記エッジ強度の程度を表す特徴値を算出する機能と、
前記判定領域の前記特徴値によって表される前記エッジ強度の程度が所定の基準以上である場合に、前記判定領域を不均一な画像を表す第1種領域として特定し、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が前記所定の基準よりも小さい場合に、前記判定領域を均一な画像を表す第2種領域として特定する機能と、
をコンピュータに実現させるためのプログラム。
【請求項1】
対象画像を表す対象画像データを用いて、前記対象画像に含まれる複数の画素のそれぞれのエッジ強度を表すエッジ画像データを生成する生成部と、
前記エッジ画像データによって表される画像であるエッジ画像の一部を表すとともに複数の画素を含む判定領域であって、互いに異なる複数の判定領域のそれぞれに対して、前記判定領域における前記エッジ強度の程度を表す特徴値を算出する特徴値算出部と、
前記判定領域の前記特徴値によって表される前記エッジ強度の程度が所定の基準以上である場合に、前記判定領域を不均一な画像を表す第1種領域として特定し、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が前記所定の基準よりも小さい場合に、前記判定領域を均一な画像を表す第2種領域として特定する、特定部と、
を備える、画像処理装置。
【請求項2】
請求項1に記載の画像処理装置であって、
前記特徴値は、前記エッジ画像中の前記判定領域における画素値の平均値及び最頻値の少なくとも一方である、
画像処理装置。
【請求項3】
請求項1または請求項2に記載の画像処理装置であって、
前記複数の判定領域は、少なくとも1つの他の判定領域と互いに一部の共通領域が重なるように構成された判定領域である複数の重畳判定領域を含み、
前記特定部は、前記複数の重畳判定領域のうちの、一部の重畳判定領域を前記第1種領域と特定し、残りの重畳判定領域を前記第2種領域と特定した場合に、前記共通領域を、前記第1種領域と前記第2種領域とのうちの所定の一方の種類の領域として特定する、
画像処理装置。
【請求項4】
請求項3に記載の画像処理装置であって、
前記特定部は、前記共通領域で重なる前記複数の重畳判定領域のうちの、一部の重畳判定領域を前記第1種領域と特定し、残りの重畳判定領域を前記第2種領域と特定した場合に、前記共通領域を前記第2種領域として特定する、
画像処理装置。
【請求項5】
請求項3または請求項4に記載の画像処理装置であって、
前記複数の判定領域は、複数の共通領域を形成する複数の重畳判定領域を含み、
前記複数の重畳判定領域は、前記複数の共通領域が前記対象画像の少なくとも一部の連続な特定領域を隙間無く覆うように、構成されている、
画像処理装置。
【請求項6】
請求項1ないし請求項5のいずれかに記載の画像処理装置であって、さらに、
互いに接している2つの領域が、前記特定部によって同じ種類の領域と特定された場合に、前記2つの領域を1つの領域として連結する連結部を含む、
画像処理装置。
【請求項7】
請求項6に記載の画像処理装置であって、さらに、
前記特定部によって第1種領域と特定された領域が、文字を表す文字領域であるか否かを判定する判定部を含む、
画像処理装置。
【請求項8】
対象画像を表す対象画像データを用いて、前記対象画像に含まれる複数の画素のそれぞれのエッジ強度を表すエッジ画像データを生成する機能と、
前記エッジ画像データによって表される画像であるエッジ画像の一部を表すとともに複数の画素を含む判定領域であって、互いに異なる複数の判定領域のそれぞれに対して、前記判定領域における前記エッジ強度の程度を表す特徴値を算出する機能と、
前記判定領域の前記特徴値によって表される前記エッジ強度の程度が所定の基準以上である場合に、前記判定領域を不均一な画像を表す第1種領域として特定し、前記判定領域の前記特徴値によって表される前記エッジ強度の程度が前記所定の基準よりも小さい場合に、前記判定領域を均一な画像を表す第2種領域として特定する機能と、
をコンピュータに実現させるためのプログラム。
【図1】
【図2】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図3】
【図2】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図3】
【公開番号】特開2013−31104(P2013−31104A)
【公開日】平成25年2月7日(2013.2.7)
【国際特許分類】
【出願番号】特願2011−167175(P2011−167175)
【出願日】平成23年7月29日(2011.7.29)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
【公開日】平成25年2月7日(2013.2.7)
【国際特許分類】
【出願日】平成23年7月29日(2011.7.29)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】
[ Back to top ]