説明

画像処理装置及び画像処理方法

【課題】精度良く線分を抽出することができる画像処理装置を提供する。
【解決手段】画像に含まれる線分を抽出する画像処理装置であって、画像の所定数の画素からなる処理単位ごとに、濃度が変化する方向である濃度変化方向を決定する濃度変化方向決定部と、濃度変化方向が反対向きの一対の処理単位を処理単位対とし、濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する線分抽出部とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に含まれる線分を抽出する画像処理装置及び画像処理方法に関する。
【背景技術】
【0002】
近年、省スペース化を指向して、コピー機能、ファクシミリ通信機能、及びネットワーク通信機能を一台で兼ね備えたネットワーク複合機の普及が進んでいる。
【0003】
ネットワーク複合機のいくつかの機種では、画像読取装置等で入力される画像データに対して、光学文字認識(OCR:Optical Character Recognition)または像域分離等の画像認識を行う際に、認識対象の文字等が、罫線、枠線、下線等の線分と重なった場合、正しく認識されない、または処理に時間を要する場合がある。
【0004】
そこで、従来、文字認識の妨げとなる線分を抽出し、消去する技術が提案されている(例えば、特許文献1参照)。この従来の技術では、画像データから罫線を推定し、その罫線の推定位置付近で罫線と垂直な方向の黒ランを抽出し、ランデータの中心を通る回帰直線を求めて、回帰直線と距離が大きいランを残し、回帰直線付近のランデータを消去する。この技術により、罫線に文字が重なっていても誤って文字を消すことなく精度良く罫線を消去することが可能である。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2002−74264号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記従来の技術では、精度良く線分を抽出することができない場合があるという問題がある。
【0007】
つまり、上記従来の技術では、未記入の同一フォーマットの帳票画像との位置あわせを行い、この画像上の位置座標値で定義された文字記入欄から処理対象の画像上の文字記入欄の位置を推定し、その周囲を罫線の存在する範囲とする方法を例に示している。この方法では、画像データの入力のたびに、未記入のフォーマットとの位置合わせが必要になる。従って、帳票画像のような定型のフォーマットではない印刷物に記入された原稿の場合、または未記入のフォーマットが予め存在しない場合などは、罫線位置の推定が困難になる。
【0008】
また、複数の罫線が平行線ではなく、枠または表の場合のように互いに交差する場合は、交差する一方の罫線の罫線と垂直な方向の黒ランが、他方の罫線に該当する可能性があり、罫線と残すべき文字を判断するのが困難になるという問題がある。
【0009】
そこで、本発明は、このような問題に鑑みてなされたものであり、精度良く線分を抽出することができる画像処理装置及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するために、本発明の一態様に係る画像処理装置は、画像に含まれる線分を抽出する画像処理装置であって、画像の所定数の画素からなる処理単位ごとに、濃度が変化する方向である濃度変化方向を決定する濃度変化方向決定部と、前記濃度変化方向が反対向きの一対の処理単位を処理単位対とし、前記濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する線分抽出部とを備える。
【0011】
これによれば、処理単位ごとに濃度変化方向を決定し、濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する。つまり、処理単位ごとの濃度変化方向の並びから、線分を抽出する。このため、定型のフォーマットではない印刷物に記入された原稿の場合、または当該フォーマットが予め存在しない場合でも、線分を抽出することができる。また、2つの罫線が交差している場合でも、当該2つの罫線を線分として抽出することができる。これらにより、精度良く線分を抽出することができる。
【0012】
また、好ましくは、前記濃度変化方向決定部は、前記画像の前記処理単位ごとに、テンプレート型1次微分フィルタを適用して、前記濃度変化方向を決定する。
【0013】
これによれば、テンプレート型1次微分フィルタを適用して、濃度変化方向を決定する。ここで、このテンプレート型1次微分フィルタを適用することで、大きな容量のメモリを必要とせず、また、多くの演算を必要とせずに、濃度変化方向を精度良く算出することができる。このため、メモリの容量を低減し、かつ、演算量を低減しつつ、精度良く線分を抽出することができる。
【0014】
また、好ましくは、前記線分抽出部は、前記処理単位対に含まれる一対の処理単位の前記濃度変化方向が同じ向きの処理単位対が第一閾値以上連続して前記濃度変化方向と垂直な方向に配置されているか否かを判断し、当該処理単位対が前記第一閾値以上配置されていると判断した場合に、前記処理単位群を線分として抽出する。
【0015】
これによれば、濃度変化方向が同じ向きの処理単位対が第一閾値以上連続して濃度変化方向と垂直な方向に配置されている場合に、処理単位群を線分として抽出する。つまり、処理単位対が所定の数連続して配置されていなければ、当該処理単位対からなる処理単位対群は、線分を構成する要素として認められないため、除外する。このように、線分を構成する要素として扱うか否かを判別することで、精度良く線分を抽出することができる。
【0016】
また、好ましくは、前記線分抽出部は、前記一対の処理単位間の距離である処理単位間距離が第二閾値以下であるか否かを判断し、前記処理単位間距離が前記第二閾値以下であると判断した場合に、前記処理単位群を線分として抽出する。
【0017】
これによれば、一対の処理単位間の距離が第二閾値以下である場合に、処理単位群を線分として抽出する。つまり、処理単位間の距離が所定の長さよりも大きければ、当該処理単位から構成される処理単位対群は線分として扱う線幅を超えているため、線分からは除外する。このように、線分として扱うか否かを判別することで、精度良く線分を抽出することができる。
【0018】
また、好ましくは、前記線分抽出部は、前記処理単位群の前記濃度変化方向と垂直な方向の長さが第三閾値以上か否かを判断し、前記長さが前記第三閾値以上であると判断した場合に、前記処理単位群を線分として抽出する。
【0019】
これによれば、処理単位群の長さが第三閾値以上である場合に、処理単位群を線分として抽出する。つまり、処理単位群が所定の長さ以上でなければ、当該処理単位群は線分として扱う長さを有していないため、線分からは除外する。このように、線分として扱うか否かを判別することで、精度良く線分を抽出することができる。
【0020】
また、好ましくは、前記線分抽出部は、前記濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を処理単位対群とし、互いの端点の距離が第四閾値以内に配置され、かつ前記濃度変化方向と垂直な方向の傾きの不一致度合いが第五閾値以内の2つの処理単位対群をグループ化して前記処理単位群を生成する。
【0021】
これによれば、端点の距離が第四閾値以内に配置され、かつ傾きの不一致度合いが第五閾値以内の2つの処理単位対群をグループ化して処理単位群を生成する。つまり、傾きが同等で近傍に配置された2つの線分要素を結合して、線分として扱うことができる処理単位群を生成する。これにより、線分が点線である、または文字によって途中で切れている場合であっても、精度良く線分を抽出することができる。
【0022】
また、好ましくは、前記線分抽出部は、前記処理単位対群の両端に配置される一対の処理単位間の距離が最大の処理単位対のうち、一方の処理単位対に含まれる2つの処理単位の中間位置と、他方の処理単位対に含まれる2つの処理単位の中間位置とを前記処理単位対群の両端点とし、一の処理単位対群の端点と他の処理単位対群の端点との距離が前記第四閾値以内に配置され、かつ前記一の処理単位対群の両端点を結ぶ線分の傾きと前記第四閾値以内の距離に配置されていない前記一の処理単位対群の端点と前記他の処理単位対群の端点とを結ぶ線分の傾きとの差が前記第五閾値以内の場合に、前記一の処理単位対群と前記他の処理単位対群とを含む前記処理単位群を生成する。
【0023】
これによれば、2つの処理単位対群の端点を決定し、当該端点の配置から、一方の処理単位対群の端点と他方の処理単位対群の端点との距離と、2つの処理単位対群の傾きの不一致度合いとを算出し、2つ処理単位対群をグループ化して処理単位群を生成する。これにより、容易に、2つ処理単位対群をグループ化して処理単位群を生成することができる。
【0024】
また、好ましくは、前記線分抽出部は、前記処理単位対群の両端点の中間位置から前記濃度変化方向に配置される一対の処理単位間の距離が最大の処理単位対の当該処理単位間の距離を前記処理単位対群の線幅として前記処理単位群に関連付けて、前記処理単位群を生成する。
【0025】
これによれば、処理単位対群の線幅を算出して、処理単位群に関連付けて、処理単位群を生成する。つまり、線分として抽出される処理単位群を示す情報には、線幅の情報が含まれる。このため、例えば当該処理単位群で示される線分を削除する場合に、線幅の情報を参照して、削除の幅を定めることができる。このように、以降の画像処理に必要な情報が関連付けられた処理単位群を生成することができる。
【0026】
また、好ましくは、前記線分抽出部は、前記第四閾値以内に配置される前記一の処理単位対群の端点と前記他の処理単位対群の端点とを結ぶ区間を非線分区間として前記処理単位群に関連付けて、前記処理単位群を生成する。
【0027】
これによれば、非線分区間を処理単位群に関連付けて、処理単位群を生成する。つまり、線分として抽出される処理単位群を示す情報には、非線分区間の情報が含まれる。このため、例えば当該処理単位群で示される線分を削除する場合であって、当該線分と文字とが交差している場合には、交差している文字部分を非線分区間として、当該文字部分が削除されるのを防ぐことができる。このように、以降の画像処理に必要な情報が関連付けられた処理単位群を生成することができる。
【0028】
また、本発明は、このような画像処理装置として実現できるだけでなく、画像処理装置が備える特徴的な処理部のそれぞれの動作をステップとする方法として実現することもでき、また、本発明は、各処理部の処理を行う集積回路として実現することもできる。さらに、本発明は、コンピュータに上記各ステップを実行させるためのプログラムとして実現することもできる。そのようなプログラムは、CD−ROM等の記録媒体又はインターネット等の伝送媒体を介して配信することもできる。また、本発明は、このような画像処理装置を内蔵するネットワーク複合機として実現することもできる。
【発明の効果】
【0029】
本発明に係る画像処理装置によれば、精度良く線分を抽出することができる。
【図面の簡単な説明】
【0030】
【図1】本実施の形態におけるネットワーク複合機を含む通信システムの構成の一例を示す図である。
【図2】本実施の形態におけるネットワーク複合機のハードウェア構成を示すブロック図である。
【図3】本実施の形態における画像処理装置の機能構成を示すブロック図である。
【図4】本実施の形態における濃度変化方向データの一例を示す図である。
【図5】本実施の形態における線分データの一例を示す図である。
【図6】本実施の形態における画像処理装置の動作の一例を示すフローチャートである。
【図7】本実施の形態における濃度変化方向決定部が濃度変化方向を決定する処理の一例を示すフローチャートである。
【図8】本実施の形態における濃度変化方向決定部が、各画素の濃度変化方向と出力値とを算出することを説明する図である。
【図9】本実施の形態における線分抽出部が線分を抽出する処理の一例を示すフローチャートである。
【図10】本実施の形態における線分抽出部が、処理単位対が第一閾値以上連続して配置されているか否かを判断する処理を説明する図である。
【図11A】本実施の形態における線分抽出部が、処理単位対が第一閾値以上連続して配置されているか否かを判断する処理を説明する図である。
【図11B】本実施の形態における線分抽出部が、処理単位対が第一閾値以上連続して配置されているか否かを判断する処理を説明する図である。
【図11C】本実施の形態における線分抽出部が、処理単位対が第一閾値以上連続して配置されているか否かを判断する処理を説明する図である。
【図12A】本実施の形態における線分抽出部がベクタデータ化を行う処理を説明する図である。
【図12B】本実施の形態における線分抽出部がベクタデータ化を行う処理を説明する図である。
【図13A】本実施の形態における線分抽出部が線分要素をグループ化する処理を説明する図である。
【図13B】本実施の形態における線分抽出部が線分要素をグループ化する処理を説明する図である。
【発明を実施するための形態】
【0031】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0032】
まず、図1及び図2を用いて、本発明の実施の形態における画像処理装置を備えるネットワーク複合機の構成の概要について説明する。
【0033】
図1は、本実施の形態におけるネットワーク複合機を含む通信システムの構成の一例を示す図である。
【0034】
同図に示すように、この通信システムは、ネットワーク複合機1及び2、端末装置3及び4、PSTN(Public Switched Telephone Networks:公衆電話交換回線網)5、並びにLAN(Local Area Network)6を備えている。
【0035】
ここで、ネットワーク複合機1は、本実施の形態の画像処理装置を備えるネットワーク複合機の一例である。ネットワーク複合機1は、PSTN5を介してネットワーク複合機2と接続され、またLAN6を介して端末装置3及び4と接続される。
【0036】
ネットワーク複合機1は、スキャナで読み取った原稿を、例えば、PSTN5を介してネットワーク複合機2へファクシミリ送信すること、及び、LAN6を介して端末装置3及び4へ送信することができる。また、内蔵されるプリンタでプリントアウトすることができる。
【0037】
図2は、本実施の形態におけるネットワーク複合機1のハードウェア構成を示すブロック図である。
【0038】
同図に示すように、ネットワーク複合機1は、CPU(Central Processing Unit)10、ROM(Read Only Memory)11、RAM(Random Access Memory)12、モデム13、NCU(Network Control Unit)14、操作パネル15、ディスプレイ16、スキャナ17、プリンタ18、及びLANI/F(LAN インターフェース)19を備えている。
【0039】
CPU10は、ROM11に格納された制御プログラム20を実行することにより、ネットワーク複合機1の全体を制御する。
【0040】
CPU10は、特徴的な処理として、スキャナ17に読み取られた原稿の画像に含まれる線分を抽出する。この線分の抽出についての具体的な処理内容は、後述する。
【0041】
ROM11は、CPU10が実行する制御プログラム20を保持する読み出し専用メモリである。
【0042】
RAM12は、CPU10が制御プログラム20を実行する際に用いられるワークデータ、及びスキャナ17から得られた画像データ等を保持する読み書き可能なメモリである。
【0043】
モデム13は、RAM12に保持された画像データ等をファクシミリ信号に変調して送信し、また外部から受信されたファクシミリ信号をラインデータに復調する。モデム13は、例えばG3規格に準拠したファックスモデムである。
【0044】
NCU14は、モデム13とPSTN5との接続を制御する網制御装置である。
【0045】
操作パネル15は、利用者からの操作を受け付けるタッチパネルである。
【0046】
ディスプレイ16は、利用者への操作ガイド、又はネットワーク複合機1の動作状態を表示する表示装置であり、例えばLCD(Liquit Crystal Display:液晶表示装置)である。
【0047】
スキャナ17は、画像読み取り装置であり、CPU10の制御下で、CCDを用いて原稿を光学的に読み取ることによって画像データを生成する。
【0048】
プリンタ18は、印刷装置であり、CPU10の制御下で、例えばRAM12に保持された画像データによって表される画像イメージを印刷出力する。
【0049】
LANI/F19は、ネットワーク複合機1とLAN6とを接続する通信アダプタであり、CPU10の制御下で、例えばRAM12に保持された画像データを端末装置3等へ送信する。
【0050】
次に、本実施の形態におけるネットワーク複合機1が備える画像処理装置について、説明する。
【0051】
図3は、本実施の形態における画像処理装置100の機能構成を示すブロック図である。つまり、同図は、図2に示されたハードウェア構成によって発揮されるネットワーク複合機1の機能のうち、主に本実施の形態の画像処理装置100に関わる機能の構成を示すブロック図である。
【0052】
同図に示すように、画像処理装置100は、原稿記憶部110、濃度変化方向決定部120、線分抽出部130、画像処理部140及びデータ記憶部150を備えている。なお、原稿記憶部110及びデータ記憶部150は、図2に示されたRAM12により実現され、濃度変化方向決定部120、線分抽出部130及び画像処理部140は、図2に示された制御プログラム20を実行するCPU10等によって実現される。
【0053】
原稿記憶部110は、画像データ111を記憶する記憶手段である。この画像データ111は、スキャナ17が原稿を読み取ることで生成した画像データである。
【0054】
濃度変化方向決定部120は、画像の所定数の画素からなる処理単位ごとに、濃度が変化する方向である濃度変化方向を決定する。具体的には、濃度変化方向決定部120は、画像の処理単位ごとに、テンプレート型1次微分フィルタを適用して、当該濃度変化方向を決定する。ここで、濃度変化方向とは、処理単位の画素の画素特性値(濃淡)が変化する方向である。
【0055】
線分抽出部130は、濃度変化方向が反対向きの一対の処理単位を処理単位対とし、濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する。
【0056】
画像処理部140は、線分抽出部130の抽出結果に基づいて、画像データ111に修正を加える。例えば、画像処理部140は、線分抽出部130が抽出した線分を文字と異なるように表示する、または当該線分を消去する。また、画像処理部140は、不要な線分を消去することで、入力画像の文字認識を精度良く行うことができる。
【0057】
データ記憶部150は、線分を抽出するためのデータを記憶する記憶手段である。同図に示すように、データ記憶部150は、濃度変化方向データ151及び線分データ152を記憶している。
【0058】
図4は、本実施の形態における濃度変化方向データ151の一例を示す図である。
【0059】
同図に示すように、濃度変化方向データ151は、濃度変化方向決定部120が決定した処理単位ごとの濃度変化方向を示すデータの集まりである。
【0060】
つまり、濃度変化方向決定部120は、処理単位ごとの濃度変化方向を算出して決定し、決定した濃度変化方向をデータ記憶部150に記憶させることで、濃度変化方向データ151を更新する。
【0061】
図5は、本実施の形態における線分データ152の一例を示す図である。
【0062】
同図に示すように、線分データ152は、線分抽出部130が抽出した線分要素(ベクタデータ)ごとの情報を示すデータの集まりである。
【0063】
具体的には、線分データ152は、線分要素を示す名称である「ベクタデータ」、線分要素の両端点の座標である「端点座標」、線分要素に含まれる非線分区間である「非線分区間」及び線分要素の線幅である「線幅」を含むデータの集まりである。
【0064】
つまり、線分抽出部130は、濃度変化方向決定部120が決定した濃度変化方向を用いて線分要素を抽出し、抽出した線分要素をデータ記憶部150に記憶させることで、線分データ152を更新する。
【0065】
次に、画像処理装置100の動作について、説明する。
【0066】
図6は、本実施の形態における画像処理装置100の動作の一例を示すフローチャートである。
【0067】
同図に示すように、まず、濃度変化方向決定部120は、処理単位ごとに濃度変化方向を決定する(S102)。ここでは、処理単位は1画素とし、濃度変化方向決定部120は、画素ごとに、濃度変化方向の決定を行う。なお、この濃度変化方向決定部120が濃度変化方向の決定を行う処理の詳細は、後述する。
【0068】
そして、線分抽出部130は、濃度変化方向決定部120が決定した濃度変化方向を用いて、線分を抽出する(S104)。この線分抽出部130が線分を抽出する処理の詳細は、後述する。
【0069】
そして、画像処理部140は、線分抽出部130の抽出結果に基づいて、画像データ111に修正を加える(S106)。
【0070】
次に、濃度変化方向決定部120が濃度変化方向の決定を行う処理(図6のS102)の詳細について、説明する。
【0071】
図7は、本実施の形態における濃度変化方向決定部120が濃度変化方向を決定する処理の一例を示すフローチャートである。
【0072】
同図に示すように、まず、濃度変化方向決定部120に、原稿記憶部110に記憶されている画像データ111が入力される(S202)。ここでは、カラーの画像を有する画像データ111が入力されることとする。
【0073】
そして、濃度変化方向決定部120は、画像データ111をグレースケールの画像データ(多値画像データ)に変換する(S204)。
【0074】
次に、濃度変化方向決定部120は、変換された画像データ111の全ての画素について、以下の処理(S208〜S214)を、繰り返し行う(ループ1:S206〜S216)。
【0075】
まず、濃度変化方向決定部120は、テンプレート型1次微分フィルタを適用して、濃度変化方向及び出力値を算出する(S208)。ここで、出力値とは、処理単位の画素の画素特性値の変化(濃淡変化)の大きさである。
【0076】
図8は、本実施の形態における濃度変化方向決定部120が、各画素の濃度変化方向と出力値とを算出することを説明する図である。
【0077】
具体的には、同図は、濃度変化方向と出力値とを算出する対象の画素である注目画素Aに対する、Prewittオペレータのテンプレート型1次微分フィルタ適用結果を示している。
【0078】
同図に示すように、濃度変化方向決定部120は、各方向の出力を算出し、そのうち最も出力の大きい方向を濃度変化方向として算出する。また、濃度変化方向決定部120は、当該濃度変化方向での出力値を算出する。
【0079】
具体的には、濃度変化方向決定部120は、注目画素Aとその周辺画素の画素値に、同図に示す係数を乗じ累積して得られた数値である出力を算出する。そして、濃度変化方向決定部120は、当該出力が最大になる方向を濃度変化方向として算出する。
【0080】
同図では、濃度変化方向決定部120は、出力が「+400」で最大になる「右下」方向を濃度変化方向として算出し、「+400」を出力値として算出する。なお、同図では、各画素の画素値は、0〜255の値をとるとして、算出している。
【0081】
このように、濃度変化方向は、8方向の各方向のうち、注目画素の濃淡の変化が最も大きい方向が示される。なお、テンプレート型1次微分フィルタの出力値は正負の値が出力されるが、濃度変化方向を濃淡値の大きい側から小さい側への方向に統一するため、正の方向に出力値が最大となる方向を採用する。
【0082】
なお、テンプレート型1次微分フィルタには、Prewittの他に、Roberts、Robinson、Kirsch等のオペレータがあり、濃度変化方向決定部120は、演算量と精度を考慮して、最適なオペレータを選択し、出力値は最適に正規化することとする。
【0083】
図7に戻り、濃度変化方向決定部120は、算出した出力値が所定の閾値未満か否かを判断する(S210)。
【0084】
濃度変化方向決定部120は、算出した出力値が所定の閾値未満と判断した場合は(S210でYES)、注目画素については、濃度変化方向が明確に定義できないノイズの可能性が高いので、濃度変化方向を持たない画素と決定する(S212)。例えば、濃度変化方向決定部120は、出力値の絶対値が50未満であれば、当該画素の濃度変化方向をなしと決定する。
【0085】
そして、濃度変化方向決定部120は、濃度変化方向なしとデータ記憶部150に記憶させることで、濃度変化方向データ151を更新する(S214)。
【0086】
また、濃度変化方向決定部120は、算出した出力値が所定の閾値未満でないと判断した場合は(S210でNO)、算出した濃度変化方向をデータ記憶部150に記憶させることで、濃度変化方向データ151を更新する(S214)。
【0087】
以上の処理(S208〜S214)を、画像データ111の全ての画素について繰り返し行う(ループ1:S206〜S216)ことで、濃度変化方向決定部120が濃度変化方向を決定する処理(図6のS102)は終了する。
【0088】
次に、線分抽出部130が線分を抽出する処理(図6のS104)の詳細について、説明する。
【0089】
図9は、本実施の形態における線分抽出部130が線分を抽出する処理の一例を示すフローチャートである。
【0090】
同図に示すように、線分抽出部130は、全ての処理単位対について、以下の処理(S302〜S306)を、繰り返し行う(ループ2:S301〜S307)。
【0091】
まず、線分抽出部130は、処理単位対に含まれる一対の処理単位の濃度変化方向が同じ向きの処理単位対が第一閾値以上連続して濃度変化方向と垂直な方向に配置されているか否かを判断する(S302)。ここで、処理単位対とは、濃度変化方向が反対向きの一対の処理単位である。この線分抽出部130が、処理単位対が第一閾値以上連続して配置されているか否かを判断する処理について、以下に詳述する。
【0092】
図10〜図11Cは、本実施の形態における線分抽出部130が、処理単位対が第一閾値以上連続して配置されているか否かを判断する処理を説明する図である。
【0093】
図10に示すように、注目画素の濃度変化方向と、その濃度変化方向に垂直方向に隣接する両側2画素の濃度変化方向との角度差に基づいて、周辺画素との濃度変化方向の揃い度合いを示す局所連結性の解析が行われる。
【0094】
ここでは、注目画素の濃度変化方向に対して隣接する両側2画素の濃度変化方向との角度差がともに0度であるかどうか、つまり注目画素の濃度変化方向に対して隣接する両側2画素の濃度変化方向が、いずれも一致しているかどうかが判断される。なお、注目画素、または注目画素に隣接する両側2画素が、濃度変化方向を持たない画素として定義された画素であった場合、これらは無関心な空白領域と見なせるため、局所連結性の解析を行わず対象外とする。
【0095】
その結果、注目画素と隣接する両側2画素との濃度変化方向の角度差がともに0度であれば、注目画素と隣接する両側2画素の計3画素が同じ濃度変化方向に連続しているため、注目画素は局所的な直線性画素であると判断できる。ただし、この局所連結性の解析は、あくまでも局所的に直線性を判断した結果であり、実際に罫線、枠線、下線等の線分でなくても、例えば、文字であっても局所的には直線性を持っている部分は多く存在する。従って、局所的な直線性画素が、第一閾値の画素数に達するまで、途切れることなく連続しているかどうかで線分要素かどうかを判断する。
【0096】
図11Aは、画像データ111で示される読み取り画像の多値画像データにおける線分のイメージである。つまり、同図は、読み取り画像に表示された、右肩上がりの横方向の線分を示している。なお、読み取り画像のため、実際には各画素間で細かい濃淡の違いはあるが、図11Aでは、大まかな濃淡の違いを表現している。
【0097】
なお、原稿上では縦、横方向に対して傾きのない線分であっても、スキャナが原稿を読み取る際に、原稿が傾いて置かれることにより、生成した画像データの線分に傾きが生じ、同図のように、横方向の線分が右肩上がりになることも想定される。また、同図では、表現の都合上、罫線、枠線、下線等の実際の線分と比べて、横方向に短い線分を示しているが、実際に検出すべき線分は、同図よりも横方向に長い線分であると想定される。
【0098】
図11Bは、図11Aに示された線分に対して濃度変化方向を算出した結果である。図11Cは、図11Bに対して局所連結性の解析を行った結果、同じ濃度変化方向が連続し、局所的な直線性があると判断された画素である。
【0099】
図11Bに示す通り、図11Aに示された線分は、線分の芯の部分(同図の濃い部分)に対して両側に、線分方向(同図の横方向)に対して垂直な方向(同図の縦方向)の濃度変化方向を持つ。これらの濃度変化方向を持つ画素は、線分方向に対の関係で連続して分布する。
【0100】
同様に局所的な直線性画素も、図11Cに示す通り、線分方向に対の関係で連続して抽出されることになる。従って、局所的な直線性画素群が、線分方向に対の関係で第一閾値の画素数以上連結して存在していれば、それらの画素群を線分要素と判断することができる。ここで、第一閾値の値は特に限定されないが、例えば5画素である。
【0101】
つまり、図11Cの場合、局所的な直線性画素群が、線分方向に対の関係で5画素以上連結しているので、線分要素と判断できる。このようにして、読み取り画像の多値画像データの局所連結性の結果を基に、線分要素を全て抽出する。
【0102】
そして、図9に戻り、線分抽出部130は、処理単位対が第一閾値以上連続して配置されていないと判断した場合は(S302でNO)、当該処理単位対についての処理は行わず、別の未参照の処理単位対を参照して、全ての処理単位対が判断されるまで、同様の処理が繰り返される。
【0103】
また、線分抽出部130は、処理単位対が第一閾値以上連続して配置されていると判断した場合は(S302でYES)、処理単位対に含まれる一対の処理単位間の距離である処理単位間距離が第二閾値以下であるか否かを判断する(S304)。
【0104】
そして、線分抽出部130は、当該処理単位間距離が第二閾値よりも大きいと判断した場合は(S304でNO)、当該処理単位対についての処理は行わず、別の未参照の処理単位対を参照して、全ての処理単位対が判断されるまで、同様の処理が繰り返される。
【0105】
つまり、処理単位対の幅である処理単位間距離が所定の第二閾値よりも大きければ、線分ではなく図形の可能性が高いため、線分要素から除外する。ここで、第二閾値の値は特に限定されないが、例えば10画素など、抽出したい線分の線幅に対応した画素数によって決定されるのが好ましい。
【0106】
そして、線分抽出部130は、当該処理単位間距離が第二閾値以下であると判断した場合は(S304でYES)、抽出した線分要素のベクタデータ化を行う(S306)。また、線分抽出部130は、このベクタデータ化の結果を、データ記憶部150に記憶させることで、線分データ152を更新する。
【0107】
具体的には、線分抽出部130は、処理単位対群の両端に配置される一対の処理単位間の距離が最大の処理単位対のうち、一方の処理単位対に含まれる2つの処理単位の中間位置と、他方の処理単位対に含まれる2つの処理単位の中間位置とを処理単位対群の両端点と算出する。また、線分抽出部130は、処理単位対群の両端点の中間位置から濃度変化方向に配置される一対の処理単位間の距離が最大の処理単位対の当該処理単位間の距離を、処理単位対群の線幅と算出する。この線分抽出部130がベクタデータ化を行う処理について、以下にさらに具体的に説明する。
【0108】
図12A及び図12Bは、本実施の形態における線分抽出部130がベクタデータ化を行う処理を説明する図である。
【0109】
線分抽出部130は、抽出した線分要素に対して、罫線、枠線、下線等の線分に該当するかどうかを判断するために、線分要素と判断された画素群の情報をベクタデータ化する。ベクタデータ化される情報は、線分要素の2つの端点座標と線幅である。
【0110】
ベクタデータとして扱う2つの端点座標の算出方法を図12Aを用いて説明する。画像データ111で示される読み取り画像の多値画像データのXY座標平面において、同図に示すように、右方向をX軸の正の方向、左方向をX軸の負の方向、下方向をY軸の正の方向、上方向をY軸の負の方向とする。そして、同図はX軸方向の線分要素であるので、Y軸の正の方向と負の方向の濃度変化方向を持つ画素群が対の関係でX軸方向に分布している。
【0111】
まず、線分抽出部130は、Y軸負方向の濃度変化方向を持つ連結画素群内で最小のX座標X1minとそのX座標上での連結画素群の最小のY座標Ymin(X1min)を算出し、これを座標A1(X1min、Ymin(X1min))とする。
【0112】
また、線分抽出部130は、Y軸正方向の濃度変化方向を持つ連結画素群内の最小X座標X2minとそのX座標上での連結画素群内の最大Y座標Ymax(X2min)を算出し、これを座標A2(X2min、Ymax(X2min))とする。
【0113】
また、線分抽出部130は、Y軸負方向の濃度変化方向を持つ連結画素群内の最大X座標X1maxとそのX座標上での連結画素群内の最小Y座標Ymin(X1max)を算出し、座標B1(X1max、Ymin(X1max))とする。
【0114】
また、線分抽出部130は、Y軸正方向の濃度変化方向を持つ連結画素群内の最大X座標X2maxとそのX座標上での連結画素群内の最大Y座標Ymax(X2max)を算出し、座標B2(X2max、Ymax(X2max))とする。
【0115】
そして、線分抽出部130は、座標A1と座標A2との中点を端点Aと算出し、座標B1と座標B2との中点を端点Bと算出することで、同図に示された線分要素の2つの端点A、Bの座標を近似的に算出する。
【0116】
次に、線分抽出部130がベクタデータとして扱う線幅を算出する方法を、図12Bを用いて説明する。
【0117】
同図に示す通り、線分抽出部130は、算出した2つの端点A、Bの中点AB(XAB、YAB))を算出する。そして、線分抽出部130は、中点ABのX軸座標上において、Y軸負方向の濃度変化方向を持つ連結画素群内の最小Y座標Ymin(XAB)を算出し、座標P(XAB、Ymin(XAB))とする。また、線分抽出部130は、中点ABのX軸座標上において、Y軸正方向の濃度変化方向を持つ連結画素群内の最大Y座標Ymax(XAB)を算出し、座標Q(XAB、Ymax(XAB))とする。
【0118】
そして、線分抽出部130は、算出した2点PQ間の距離として、Ymax(XAB)−Ymin(XAB)を算出することによって、同図に示された線分要素の線幅を近似的に算出する。なお、端点ではなく2つの端点の中点において線幅を算出するのは、端点付近は線幅が細くなっていることが多いためである。
【0119】
なお、上記では、X軸方向(横方向)の線分要素について説明を行ったが、Y軸方向(縦方向)の線分要素の場合は、線分抽出部130は、以上の処理でX軸方向とY軸方向とを逆にして実施する。
【0120】
このように、以上の処理(S302〜S306)が、全ての処理単位対について繰り返し行われる(ループ2:S301〜S307)ことで、読み取り画像の多値画像データに含まれる各線分要素に対応して、ベクタデータが算出される。
【0121】
次に、図9に戻り、線分抽出部130は、算出した全てのベクタデータについて、以下の処理(S310〜S320)を、繰り返し行う(ループ3:S308〜S322)。
【0122】
まず、線分抽出部130は、濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を処理単位対群とし、互いの端点の距離が第四閾値以内に配置されている2つの処理単位対群があるか否かを判断する(S310)。
【0123】
そして、線分抽出部130は、端点の距離が第四閾値以内に配置されている2つの処理単位対群があると判断した場合は(S310でYES)、当該2つの処理単位対群は、濃度変化方向と垂直な方向の傾きの不一致度合いが第五閾値以内であるか否かを判断する(S312)。
【0124】
そして、線分抽出部130は、当該2つの処理単位対群の傾きの不一致度合いが第五閾値以内であると判断した場合(S312でYES)、当該2つの処理単位対群をグループ化して、線分データ152を更新する(S314)。そして、線分抽出部130は、グループ化された2つの処理単位対群を新たな1つの処理単位対群として、再度、グループ化の処理(S310〜S314)を行う。
【0125】
具体的には、線分抽出部130は、一の処理単位対群の端点と他の処理単位対群の端点との距離が第四閾値以内に配置され、かつ一の処理単位対群の両端点を結ぶ線分の傾きと第四閾値以内の距離に配置されていない一の処理単位対群の端点と他の処理単位対群の端点とを結ぶ線分の傾きとの差が第五閾値以内の場合に、一の処理単位対群と他の処理単位対群とを含む処理単位群を生成する。
【0126】
この線分抽出部130が線分要素をグループ化するさらに具体的な処理について、以下に説明する。
【0127】
図13A及び図13Bは、本実施の形態における線分抽出部130が線分要素をグループ化する処理を説明する図である。
【0128】
線分抽出部130は、線分要素のベクタデータ化が完了すれば、線分データ152を参照し、ベクタデータ同士をグループ化できるか否かを判断する。まず、線分抽出部130は、参照中のベクタデータの2つの端点それぞれについて、端点から第四閾値の距離範囲内に端点を持つ別の未参照のベクタデータの有無を判断する。その結果、第四閾値の距離範囲内に端点を持つ別のベクタデータが存在する場合は、線分抽出部130は、参照中のベクタデータと別のベクタデータに関して、同一直線上に存在するか否かを判断する。線分抽出部130は、その判断結果によって、ベクタデータ同士をグループ化する。
【0129】
まず、図13Aに示すように、端点A(X1、Y1)とB(X2、Y2)とを持つベクタデータAB、端点C(X3、Y3)とD(X4、Y4)とを持つベクタデータCD、及び端点E(X5、Y5)とF(X6、Y6)とを持つベクタデータEFの3つのベクタデータが存在することとする。
【0130】
ここで、線分抽出部130が参照中のベクタデータをABとする。この場合、線分抽出部130は、端点A、Bそれぞれについて、当該端点から第四閾値の距離範囲内に端点を持つ別の未参照のベクタデータの有無を判断する。なお、第四閾値については特に限定されないが、線分要素は文字によって途切れていることが考えられるため、第四閾値は、文字の線幅相当の距離であることが好ましい。
【0131】
そして、線分抽出部130は、端点Aについては該当するベクタデータが存在しないと判断する。また、線分抽出部130は、端点Bについては端点Bから第四閾値の距離範囲内に端点Cを持つベクタデータCDと、端点Eを持つベクタデータEFとの2つの該当するベクタデータが存在すると判断する。
【0132】
そして、次に、線分抽出部130は、ベクタデータABとベクタデータCDとが同一直線上に存在するか否か、及びベクタデータABとベクタデータEFとが同一直線上に存在するか否かを判断する。
【0133】
具体的には、線分抽出部130は、ベクタデータABとベクタデータCDについて、参照中のベクタデータABの傾きと、ベクタデータ間で第四閾値の距離範囲内で近接しない側の端点同士である端点Aと端点Dとを結ぶ仮想直線の傾きとを比較し、当該傾きの差が第五閾値以内であるか否かを判断する。これらの傾きは、2つの端点のX座標間の距離とY座標間の距離の比率を求めることで、近似的に算出できる。
【0134】
その結果、線分抽出部130は、ベクタデータABとベクタデータCDの両者の傾きの差は、第五閾値以内であると判断し、ベクタデータABとベクタデータCDは同一直線上に存在すると判断する。なお、第五閾値の値は特に限定されず、2つのベクタデータが同一直線上に存在すると判断できる数値であればよい。
【0135】
次に、線分抽出部130は、ベクタデータABとベクタデータEFについて、参照中のベクタデータABの傾きと、ベクタデータ間で第四閾値の距離範囲内で近接しない側の端点同士である端点Aと端点Fとを結ぶ仮想直線の傾きとを比較し、当該傾きの差が第五閾値以内であるか否かを判断する。その結果、線分抽出部130は、ベクタデータABとベクタデータEFの両者の傾きの差は、第五閾値よりも大きいと判断し、ベクタデータABとベクタデータEFは同一直線上に存在しないと判断する。ただし、これらの傾きの不一致度合いの判断には、量子化または誤差を考慮した範囲で値に幅を持たせるのが好ましい。
【0136】
線分抽出部130は、このような方法で、参照中のベクタデータと他方のベクタデータに関して、同一直線上に存在するか否かを判断し、ベクタデータ同士を同一直線と見なしてグループ化して、ベクタデータを更新する。
【0137】
従って、互いの端点間の距離が第四閾値以内に配置されている2つの処理単位対群であり、当該2つの処理単位対群において、濃度変化方向と垂直な方向の傾きがほぼ一致していても、当該2つの処理単位対群が、罫線のように互いに平行な線分の場合は、ベクタデータ同士がグループ化されないことになる。
【0138】
図13Bに示す通り、線分抽出部130は、ベクタデータABとベクタデータCDとをグループ化して、端点A(X1、Y1)と端点D(X4、Y4)とを持つ新しいベクタデータADとして更新する。そして、線分抽出部130は、更新したベクタデータをデータ記憶部150に記憶させることで、線分データ152を更新する。
【0139】
ここで、線分抽出部130は、第四閾値以内に配置される一の処理単位対群の端点と他の処理単位対群の端点とを結ぶ区間を非線分区間として定義し、線分データ152に書き込む。つまり、線分抽出部130は、新しいベクタデータADについて、ベクタデータABの端点Bと、ベクタデータCDの端点Cとの間は、線分が存在しないので、非線分区間BCとして、線分データ152の「非線分区間」に、「(X2、Y2)−(X3、Y3)」を書き込む。
【0140】
また、ベクタデータABとベクタデータCDの線幅はともに「5」であったので、ベクタデータADの線幅も「5」として、線分データ152の「線幅」に書き込む。なお、ベクタデータABの線幅とベクタデータCDの線幅とが異なる場合は、それぞれの値をベクタデータADの線幅として線分データ152に書き込んでもよいし、ベクタデータABの線幅とベクタデータCDの線幅との平均値をベクタデータADの線幅として線分データ152に書き込んでもよい。
【0141】
以上のように、参照中のベクタデータが別のベクタデータとグループ化され、ベクタデータが更新されれば、新しいベクタデータとして、再度、2つの端点それぞれについて、端点から第四閾値の距離範囲内に端点を持つ別の未参照のベクタデータの有無が判断される。以降は、同様に処理を繰り返す。
【0142】
そして、図9に戻り、線分抽出部130は、端点の距離が第四閾値以内に配置されている2つの処理単位対群がないと判断した場合(S310でNO)、または、当該2つの処理単位対群の傾きの不一致度合いが第五閾値よりも大きいと判断した場合(S312でNO)、処理単位群の濃度変化方向と垂直な方向の長さが第三閾値以上か否かを判断する(S316)。
【0143】
つまり、グループ化された処理単位対群を処理単位群とし、当該処理単位群のベクタデータ長が第三閾値以上か否かが判断される。ここで、線分抽出部130は、当該処理単位群のベクタデータの2つの端点間の距離を求めることで、ベクタデータ長を近似的に算出する。なお、第三閾値は特に限定されないが、線分として有効であると判断することができる長さを示す値であるのが好ましい。
【0144】
そして、線分抽出部130は、当該ベクタデータ長が第三閾値以上であると判断した場合(S316でYES)、端点座標と非線分区間と線幅とを処理単位群に関連付けて処理単位群を生成し、当該処理単位群を線分として抽出する(S318)。つまり、ベクタデータ長が第三閾値以上であった場合、線分抽出部130は、ベクタデータが罫線、枠線、下線等に相当するだけの長さを持っていると見なせるため、線分として有効であると判断して、ベクタデータを線分情報として確定する。
【0145】
読み取り画像の多値画像データには、罫線、枠線、下線等に相当するだけの長さを持つ線分であったとしても、文字または別の線分が重なることにより、途切れて十分な長さを持たない線分のベクタデータが存在している場合がある。しかし、このような線分であっても、前段の処理で別の線分に対して、同一直線上にあると見なせる場合は、同じ線分としてグループ化されているために、この段階ではベクタデータ長が所定値以上になっており、線分として有効であると判断される。
【0146】
また、線分抽出部130は、当該ベクタデータ長が第三閾値未満であると判断した場合(S316でNO)、当該ベクタデータを線分データ152から消去する(S320)。つまり、線分抽出部130は、ベクタデータが罫線、枠線、下線等に相当するだけの長さを持っていない場合は、線分として無効であると判断して、ベクタデータを消去する。
【0147】
このように、以上の処理(S310〜S320)が、全てのベクタデータについて繰り返し行われる(ループ3:S308〜S322)ことで、全てのベクタデータについてグループ化処理が行われ、線分が抽出される。
【0148】
そして、全てのベクタデータについての処理が完了すれば、確定した線分情報が得られる。線分情報は、ベクタデータの形式で線分データ152に保存されており、端点座標、非線分区間の両端の座標、線幅の情報が含まれる。なお、非線分区間は複数含まれる可能性がある。
【0149】
以上により、線分抽出部130が線分を抽出する処理(図6のS104)は、終了する。
【0150】
また、線分抽出部130が抽出した線分情報を画像認識に利用する際は、必要に応じて、ベクタデータをラスタデータ化して用いる。つまり、画像処理部140は、端点座標を結ぶ線幅1の線分のうち、非線分区間を除いた部分について、線幅の画素数だけ膨張させて、近似的に、読み取り画像における罫線、枠線、下線等の線分部分に相当する情報を生成することができる。
【0151】
従って、光学文字認識(OCR)または像域分離等の画像認識を行う際に、認識対象の文字等が、罫線、枠線、下線等の線分と重なった場合でも、当該重なった部分は非線分区間となるため文字の一部を消去することなく、文字認識の妨げとなる線分のみを消去することができる。また、罫線、枠線、下線等の線分に対して、垂直または水平方向に別の罫線、枠線、下線等の線分が重なった場合は、文字の場合とは異なり、いずれの線分も消去することができる。本発明により、線分検出の精度が向上し、結果的に文字認識の精度を向上させることができる。
【0152】
以上のように、本発明に係る画像処理装置によれば、処理単位ごとに濃度変化方向を決定し、濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する。つまり、処理単位ごとの濃度変化方向の並びから、線分を抽出する。このため、定型のフォーマットではない印刷物に記入された原稿の場合、または当該フォーマットが予め存在しない場合でも、線分を抽出することができる。また、2つの罫線が交差している場合でも、当該2つの罫線を線分として抽出することができる。これらにより、精度良く線分を抽出することができる。
【0153】
また、テンプレート型1次微分フィルタを適用して、濃度変化方向を決定する。ここで、このテンプレート型1次微分フィルタを適用することで、大きな容量のメモリを必要とせず、また、多くの演算を必要とせずに、濃度変化方向を精度良く算出することができる。このため、メモリの容量を低減し、かつ、演算量を低減しつつ、精度良く線分を抽出することができる。
【0154】
また、濃度変化方向が同じ向きの処理単位対が第一閾値以上連続して濃度変化方向と垂直な方向に配置されている場合に、処理単位群を線分として抽出する。つまり、処理単位対が所定の数連続して配置されていなければ、当該処理単位対からなる処理単位対群は、線分を構成する要素として認められないため、除外する。このように、線分を構成する要素として扱うか否かを判別することで、精度良く線分を抽出することができる。
【0155】
また、一対の処理単位間の距離が第二閾値以下である場合に、処理単位群を線分として抽出する。つまり、処理単位間の距離が所定の長さよりも大きければ、当該処理単位から構成される処理単位対群は線分として扱う線幅を超えているため、線分からは除外する。このように、線分として扱うか否かを判別することで、精度良く線分を抽出することができる。
【0156】
また、処理単位群の長さが第三閾値以上である場合に、処理単位群を線分として抽出する。つまり、処理単位群が所定の長さ以上でなければ、当該処理単位群は線分として扱う長さを有していないため、線分からは除外する。このように、線分として扱うか否かを判別することで、精度良く線分を抽出することができる。
【0157】
また、端点の距離が第四閾値以内に配置され、かつ傾きの不一致度合いが第五閾値以内の2つの処理単位対群をグループ化して処理単位群を生成する。つまり、傾きが同等で近傍に配置された2つの線分要素を結合して、線分として扱うことができる処理単位群を生成する。これにより、線分が点線である、または文字によって途中で切れている場合であっても、精度良く線分を抽出することができる。
【0158】
また、2つの処理単位対群の端点を決定し、当該端点の配置から、一方の処理単位対群の端点と他方の処理単位対群の端点との距離と、2つの処理単位対群の傾きの不一致度合いとを算出し、2つ処理単位対群をグループ化して処理単位群を生成する。これにより、容易に、2つ処理単位対群をグループ化して処理単位群を生成することができる。
【0159】
また、処理単位対群の線幅を算出して、処理単位群に関連付けて、処理単位群を生成する。つまり、線分として抽出される処理単位群を示す情報には、線幅の情報が含まれる。このため、例えば当該処理単位群で示される線分を削除する場合に、線幅の情報を参照して、削除の幅を定めることができる。このように、以降の画像処理に必要な情報が関連付けられた処理単位群を生成することができる。
【0160】
また、非線分区間を処理単位群に関連付けて、処理単位群を生成する。つまり、線分として抽出される処理単位群を示す情報には、非線分区間の情報が含まれる。このため、例えば当該処理単位群で示される線分を削除する場合であって、当該線分と文字とが交差している場合には、交差している文字部分を非線分区間として、当該文字部分が削除されるのを防ぐことができる。このように、以降の画像処理に必要な情報が関連付けられた処理単位群を生成することができる。
【0161】
また、本発明は、このような画像処理装置として実現できるだけでなく、画像処理装置が備える特徴的な処理部のそれぞれの動作をステップとする方法として実現することもでき、また、本発明は、各処理部の処理を行う集積回路として実現することもできる。さらに、本発明は、コンピュータに上記各ステップを実行させるためのプログラムとして実現することもできる。そのようなプログラムは、CD−ROM等の記録媒体又はインターネット等の伝送媒体を介して配信することもできる。また、本発明は、このような画像処理装置を内蔵するネットワーク複合機として実現することもできる。
【0162】
以上、本発明に係る画像処理装置について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。
【0163】
つまり、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【0164】
例えば、本実施の形態では、画像処理装置100は、原稿記憶部110、濃度変化方向決定部120、線分抽出部130、画像処理部140及びデータ記憶部150を備えていることとした。しかし、画像処理装置100は、濃度変化方向決定部120と線分抽出部130とを備えていればよく、この構成により精度良く線分を抽出することができる。
【0165】
また、本実施の形態では、画像処理装置100は、ネットワーク複合機に内蔵された装置であることとした。しかし、画像処理装置100は、コピー機またはファクシミリ通信機などに内蔵されていてもよく、また、単独の装置として構成されていてもよい。
【0166】
また、本実施の形態では、線分抽出部130は、第一閾値〜第五閾値の閾値を用いて、抽出する線分として扱うか否かを判別することとした。しかし、線分抽出部130は、いずれかの閾値を用いないこととしてもよく、また閾値による判断を行わないことにしてもよい。
【産業上の利用可能性】
【0167】
本発明は、精度良く線分を抽出することができる画像処理装置または当該画像処理装置を内蔵したネットワーク複合機等として利用することができる。
【符号の説明】
【0168】
1、2 ネットワーク複合機
3、4 端末装置
5 PSTN
6 LAN
10 CPU
11 ROM
12 RAM
13 モデム
14 NCU
15 操作パネル
16 ディスプレイ
17 スキャナ
18 プリンタ
19 LANI/F
20 制御プログラム
100 画像処理装置
110 原稿記憶部
111 画像データ
120 濃度変化方向決定部
130 線分抽出部
140 画像処理部
150 データ記憶部
151 濃度変化方向データ
152 線分データ

【特許請求の範囲】
【請求項1】
画像に含まれる線分を抽出する画像処理装置であって、
画像の所定数の画素からなる処理単位ごとに、濃度が変化する方向である濃度変化方向を決定する濃度変化方向決定部と、
前記濃度変化方向が反対向きの一対の処理単位を処理単位対とし、前記濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する線分抽出部と
を備える画像処理装置。
【請求項2】
前記濃度変化方向決定部は、前記画像の前記処理単位ごとに、テンプレート型1次微分フィルタを適用して、前記濃度変化方向を決定する
請求項1に記載の画像処理装置。
【請求項3】
前記線分抽出部は、前記処理単位対に含まれる一対の処理単位の前記濃度変化方向が同じ向きの処理単位対が第一閾値以上連続して前記濃度変化方向と垂直な方向に配置されているか否かを判断し、当該処理単位対が前記第一閾値以上配置されていると判断した場合に、前記処理単位群を線分として抽出する
請求項1または2に記載の画像処理装置。
【請求項4】
前記線分抽出部は、前記一対の処理単位間の距離である処理単位間距離が第二閾値以下であるか否かを判断し、前記処理単位間距離が前記第二閾値以下であると判断した場合に、前記処理単位群を線分として抽出する
請求項1〜3のいずれか1項に記載の画像処理装置。
【請求項5】
前記線分抽出部は、前記処理単位群の前記濃度変化方向と垂直な方向の長さが第三閾値以上か否かを判断し、前記長さが前記第三閾値以上であると判断した場合に、前記処理単位群を線分として抽出する
請求項1〜4のいずれか1項に記載の画像処理装置。
【請求項6】
前記線分抽出部は、前記濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を処理単位対群とし、互いの端点の距離が第四閾値以内に配置され、かつ前記濃度変化方向と垂直な方向の傾きの不一致度合いが第五閾値以内の2つの処理単位対群をグループ化して前記処理単位群を生成する
請求項1〜5のいずれか1項に記載の画像処理装置。
【請求項7】
前記線分抽出部は、
前記処理単位対群の両端に配置される一対の処理単位間の距離が最大の処理単位対のうち、一方の処理単位対に含まれる2つの処理単位の中間位置と、他方の処理単位対に含まれる2つの処理単位の中間位置とを前記処理単位対群の両端点とし、
一の処理単位対群の端点と他の処理単位対群の端点との距離が前記第四閾値以内に配置され、かつ前記一の処理単位対群の両端点を結ぶ線分の傾きと前記第四閾値以内の距離に配置されていない前記一の処理単位対群の端点と前記他の処理単位対群の端点とを結ぶ線分の傾きとの差が前記第五閾値以内の場合に、前記一の処理単位対群と前記他の処理単位対群とを含む前記処理単位群を生成する
請求項6に記載の画像処理装置。
【請求項8】
前記線分抽出部は、前記処理単位対群の両端点の中間位置から前記濃度変化方向に配置される一対の処理単位間の距離が最大の処理単位対の当該処理単位間の距離を前記処理単位対群の線幅として前記処理単位群に関連付けて、前記処理単位群を生成する
請求項7に記載の画像処理装置。
【請求項9】
前記線分抽出部は、前記第四閾値以内に配置される前記一の処理単位対群の端点と前記他の処理単位対群の端点とを結ぶ区間を非線分区間として前記処理単位群に関連付けて、前記処理単位群を生成する
請求項7または8に記載の画像処理装置。
【請求項10】
画像に含まれる線分を抽出する画像処理方法であって、
画像の所定数の画素からなる処理単位ごとに、濃度が変化する方向である濃度変化方向を決定する濃度変化方向決定ステップと、
前記濃度変化方向が反対向きの一対の処理単位を処理単位対とし、前記濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する線分抽出ステップと
を含む画像処理方法。
【請求項11】
画像に含まれる線分を抽出するためのプログラムであって、
画像の所定数の画素からなる処理単位ごとに、濃度が変化する方向である濃度変化方向を決定する濃度変化方向決定ステップと、
前記濃度変化方向が反対向きの一対の処理単位を処理単位対とし、前記濃度変化方向と垂直な方向に連続して配置されている複数の処理単位対を含む処理単位群を線分として抽出する線分抽出ステップと
をコンピュータに実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11A】
image rotate

【図11B】
image rotate

【図11C】
image rotate

【図12A】
image rotate

【図12B】
image rotate

【図13A】
image rotate

【図13B】
image rotate


【公開番号】特開2012−178047(P2012−178047A)
【公開日】平成24年9月13日(2012.9.13)
【国際特許分類】
【出願番号】特願2011−40705(P2011−40705)
【出願日】平成23年2月25日(2011.2.25)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】