JP2000076465A - 画像処理装置及びその方法 - Google Patents

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

Info

Publication number
JP2000076465A
JP2000076465A JP10242125A JP24212598A JP2000076465A JP 2000076465 A JP2000076465 A JP 2000076465A JP 10242125 A JP10242125 A JP 10242125A JP 24212598 A JP24212598 A JP 24212598A JP 2000076465 A JP2000076465 A JP 2000076465A
Authority
JP
Japan
Prior art keywords
line
polygonal
code
declination
line segment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP10242125A
Other languages
English (en)
Inventor
Tomoyuki Noda
智之 野田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP10242125A priority Critical patent/JP2000076465A/ja
Publication of JP2000076465A publication Critical patent/JP2000076465A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Abstract

(57)【要約】 【課題】 折線からなる図形の内外判定を行なう際に、
逆sin変換を行なって偏角の総和を求める必要がある
ため、処理時間がかかってしまう。 【解決手段】 ステップS101で入力された折線図形
線分データの全てについて、ステップS103で横軸座
標が最大である所定端を抽出し、ステップS104で該
所定端における偏角の符号を計算し、ステップS105
で該符号に応じて内外領域を判定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は画像処理装置及びそ
の方法に関し、特に、折線からなる図形の内外判定を行
なう画像処理装置及びその方法に関する。
【0002】
【従来の技術】一般に、文字認識、図形認識などのパタ
ーン認識、或はCAD(Computer Aided Design)等の
技術分野においては、円、矩形、多角形等の線図形をデ
ータとして取り扱うことが多い。
【0003】以下、従来のパターン認識方法について、
特許番号2595361に記載されている技術を例として説明
する。
【0004】例えば、図7(a)に示すようなフローチ
ャートが描かれている画像を自動認識する場合について
考える。通常、フローチャート画像においては、処理を
示す矩形、或は判定を示す菱形等の閉図形内に、文字等
が記入される。従って、これら閉図形の形状を認識する
ことがまず要求される。そのためには、まず対象図形が
形成している閉ループを全て検出し、その中から、上述
したように文字等が記入される内側の閉図形、即ち図7
(b)に示す内側折線図形と、フローチャート図形の最
外郭をたどる閉図形、即ち図7(c)に示す最外郭折線
図形とを識別しなければならない。
【0005】そこで、閉図形を抽出する方法の一つとし
て、入力画像を図面入力装置などによって折線データに
変換した後、この折線データを追跡して折線図形を抽出
する方法がある。この方法においては、ある折線を出発
点として、これと連結している折線を一方向に順次探索
して追跡を行い、再び出発点に戻ったときに一つの折線
図形を抽出したことになる。
【0006】図8は、折線図形(ループ)抽出の概念を
説明する図であり、図8(a)に示した対象図形を、4
01で示した折線を出発点として追跡する例について説
明する。
【0007】図8(b)にループ1及びループ2として
示した軌跡は、図8(a)の対象図形を右回り即ち時計
方向に追跡するとともに、各分岐点では右寄りの経路を
たどって追跡した場合の軌跡である。またループ3とし
て示した軌跡は、同対象図形を左回り即ち反時計方向に
追跡するとともに、各分岐点では右寄りの経路をたどっ
て追跡した場合の軌跡である。
【0008】そして、一つの折線が必ず反対方向に合計
2回追跡される様にする。即ち、1回だけしか追跡され
ていない折線が残っていればその折線のいずれかの端部
を出発点として追跡を開始し、全ての折線が反対方向に
合計2回追跡されるようにする。このようにして得られ
た対象図形の折線データ列を図8(c)に示す。
【0009】以下、上記図8(b)に示したループ1及
びループ2のような閉図形、及び、ループ3のように直
線部と閉図形とを含む図形とを併せて折線図形と称す
る。
【0010】このように、分岐点で右側の線分を選ぶよ
うにしてループを追跡する場合、右回り(時計回り)に
追跡すると偏角の総和が−2πに、左回り(反時計回
り)に追跡すると偏角の総和が2πになる。
【0011】図9は、上記の偏角を算出する原理を説明
する図である。同図に基づいて、一端の座標が(xi,
yi)で、他端の座標が(xi+1,yi+1)である線分Vi
と、始端がこの線分Viの終端(xi+1,yi+1)と一致
し、他端の座標が(xi+2,yi+2)である線分Vi+1と
のなす偏角を求める方法について説明する。
【0012】図9において、点Oは閉図形内部の適宜の
位置に設定した仮想原点であり、同図において、 αi+βi+γi=π ・・・(1) θi+βi+γi+1=π ・・・(2) となることは明らかであり、これによって線分Viと線
分Vi+1の接続点(xi+1,yi+1)における偏角θiは次
式(3)で求められる。尚、特許番号2595361において
は、式(3)とは異なる式により偏角を求めているが、
該式によれば偏角が常に正として得られてしまうため、
式(3)の方がより正確である。
【0013】
【数1】
【0014】従って、頂点の数がnである多角形の偏角
の総和は、次式(4)のようになる。
【0015】
【数2】
【0016】以下、θiのi=1〜nまでの総和、即ち
偏角総和を単にΣθiと表記する。
【0017】式(4)において得られた偏角総和Σθi
の値が2πであった時には、V1,V2,...,Vnな
る閉図形は時計回りに追跡されたことを示しており、逆
に、偏角総和Σθiの値が−2πであった時には、閉図
形は反時計回りに追跡されたことを示す。従って、この
偏角総和Σθiの値を求めることによって、図形の最も
外側をたどる閉図形(反時計回り)と内側をたどる閉図
形(時計回り)とが識別できる。例えば、前述した図7
(b)に示したそれぞれ内側の閉図形と同図(c)に示
した最外郭の図形、あるいは後に説明する図2の(b)
の閉図形と(c),(d),(e)の閉図形とを区別す
ることができる。
【0018】なお、仮想原点が閉図形の外側領域に設定
された場合には閉図形の追跡方向に関係なく、偏角総和
Σθiの値は常に0となる。
【0019】ここで、上記の偏角総和Σθiの値を算出
するためには、偏角θiを多角形の各頂点ごとに求める
必要がある。しかしながら、式(3)から明らかなよう
に、偏角θiを求めるためには逆sin計算を必要とす
るものであり、これは閉図形の外側領域か内側領域かを
判定するために相当の処理時間を要することを意味して
いる。
【0020】特許番号2595361に記載された「折線から
なる図形の内外判定方法」においては、この偏角計算の
回数を減少させることによって、抽出された閉図形が対
象図形の内側閉図形か最外郭閉図形かの判定を高速化す
る方法が提案されている。この発明の概要を以下に示
す。
【0021】連結された折線閉図形からなる連結図形を
含む対象図形から全ての折線図形を抽出し、抽出された
それぞれの折線図形を構成する各線分の所定端の座標の
横軸と縦軸の最大値及び所定端の座標の横軸と縦軸の最
小値とにより定まる二点を対角とする外接長方形をそれ
ぞれの折線図形について求める。そして、同一連結図形
に属する他の外接長方形を全て包含する外接長方形に対
応する折線図形を当該連結図形の最外郭折線図形とし
て、その他の折線図形を当該連結図形の内側折線図形と
して識別する。
【0022】また、連結された折線閉図形を有する連結
図形を含む対象図形を全ての折点で左方向の直線を選択
して追跡する第一の追跡方向と全ての折点で右方向の直
線を選択して追跡する第二の追跡方向とによって追跡し
て全ての折線図形を抽出する。そして、他の外接長方形
を全て包含する外接長方形が一つの連結図形においてた
だ一つ存在する場合にはこの外接長方形に対応する折線
図形を当該連結図形の最外郭折線図形、その他の折線図
形を当該連結図形の内側折線図形と識別する。また、同
一の外接長方形が二つ存在する場合には、折線図形の上
記追跡方向を判定することにより、内側折線図形と最外
郭折線図形とを識別することができる。
【0023】
【発明が解決しようとする課題】ところが、上記特許番
号2595361に記載の「折線からなる図形の内外判定方
法」で示される発明には、以下に示す欠点があった。
【0024】即ち、上述したようにしてそれぞれの折線
図形について外接長方形を求め、同一連結図形に属する
他の外接長方形を全て包含する外接長方形に対応する折
線図形が大量にあった場合には、該折線図形のそれぞれ
について追跡方向を判定するために、それぞれの折線図
形毎に逆sin計算を行なって、偏角の総和を求める必
要があった。一般に、逆sin計算は処理時間がかかる
ため、上記従来の内外判定処理においても相当の処理時
間を要していた。
【0025】本発明は上記問題を解決するためになされ
たものであり、簡単な構成で、折線図形の内外判定を高
速に行なうことが可能な画像処理装置及びその方法を提
供することを目的とする。
【0026】
【課題を解決するための手段】上記目的を達成するため
の一手段として、本発明の画像処理装置は以下の構成を
備える。
【0027】即ち、連結された折線閉図形を有する連結
図形を含む対象図形を入力する入力手段と、前記対象図
形の全ての折点で所定方向の直線を選択することにより
追跡して全ての折線図形を抽出する折線抽出手段と、該
抽出された折線図形を構成する各線分において横軸座標
が最大となる所定端をそれぞれの折線図形について求め
る所定端抽出手段と、前記所定端において当該折線図形
を抽出した追跡方向から見た偏角の符号を算出する偏角
符号算出手段と、前記偏角の符号に応じて、当該折線図
形の当該連結図形に対する位置関係を判定する判定手段
と、を有することを特徴とする。
【0028】
【発明の実施の形態】以下、本発明に係る一実施形態に
ついて、図面を参照して詳細に説明する。 <第1実施形態> ●内外領域判定処理概要 図1は、本実施形態における内外領域判定処理の概要を
示すフローチャートである。尚、連続した線分によって
構成される全ての折線図形のぞれぞれについての線分の
データが、予め適宜の記憶装置に格納されているものと
する。
【0029】ステップS101では、この折線図形のそ
れぞれの線分データを読み出し、ステップS102で未
処理の折線図形がなければ終了するが、未処理の折線図
形があればステップS103に進む。そして、ステップ
S103において処理中の折線図形を構成する各線分の
所定端の座標の横軸の座標が最大となる所定端を求め、
ステップS104で該横軸の座標が最大となる所定端に
おいて折線図形を抽出した追跡方向から見た偏角の符号
を求める。そしてステップS105において、偏角符号
計算の結果に基づいて、当該折線図形が内側折線図形か
最外郭折線図形かの判定を行う。
【0030】図1に示した内外領域判定処理を、図2に
示した折線図形を参照して具体的に説明する。図2は、
本実施形態における内外領域判定処理の原理を説明する
ための図であり、図2(a)に示す折線図形において、
全ての折点で右方向の直線を選択する追跡方向によって
追跡し、各線分が互いに逆方向に一回ずつ追跡されるよ
うにすることによって、図2(b)〜(e)に示す4つ
の折線図形が抽出される。
【0031】そして、これら4つの折線図形のそれぞれ
について、横軸の座標が最大となる所定端で折線図形を
抽出した追跡方向から見た偏角の符号を計算する。但
し、横軸の座標が最大となる所定端が複数ある場合は、
その中の任意の一つの所定端で計算する。
【0032】ここで、偏角の符号の計算方法を以下に示
す。線分Viにおける一端の座標が(xi,yi)で他端
の座標が(xi+1,yi+1)であり、線分Vi+1の始端が
線分Viの終端(xi+1,yi+1)と一致し、その終端の
座標が(xi+2,yi+2)であり、上記横軸の座標が最大
となる所定端の座標が(xi+1,yi+1)であるとする。
この折線図形を、線分Vi、線分Vi+1の順に追跡した場
合の偏角θは、上述したように下式(5)で示される。
【0033】
【数3】
【0034】式(5)において、逆sin関数は原点回
りで単調増加関数かつ奇関数であり、│Vi││Vi+1│
は正であるので、偏角θの符号は(xi+1−xi)(yi+2
−yi+1)−(xi+2−xi+1)(yi+1−yi)の符号に一致
する。
【0035】ここで、図2において、横軸の座標が最大
となる所定端の偏角が正である(b)の折線図形は、
(a)の輪郭に相当する最外郭折線図形であって、その
内部には偏角が負である(c)〜(e)の3つの折線図
形を有している。処理対象の図形が例えばフローチャー
トであれば、処理内容の文字が記入される領域が、
(c)〜(e)に示す折線図形の内部領域に相当する。
【0036】従って、図2(b)の最外郭折線図形につ
いては、もはやその内部領域を処理する必要がないの
で、(a)の折線図形の処理を終了とし、次の折線図形
の処理に移ることができる。
【0037】本実施形態においては、上述した様に偏角
計算を省略することができるので、逆sin演算を用い
て偏角の総和を求めるといった、処理量の多い偏角計算
処理を行なわなくて済む。
【0038】●内外領域判定処理詳細 以下、本実施形態における内外領域判定処理について、
より具体的に説明する。
【0039】図3は、本実施形態の内外領域判定処理を
実行する機能的なブロック構成を示す図である。同図に
おいて、61は判定対象の画像データを折線データに変
換する図面入力部、62は折線データを保持する折線デ
ータファイル、63は折線データから点接続状況及び線
分接続状況を抽出する接続抽出部、64は接続状況に基
づいてループ状況を抽出するループ抽出部、65は横軸
の座標が最大となる所定端を抽出する所定端抽出部、6
6は抽出された所定端における偏角の符号を算出する偏
角符号計算部であり、また、67及び68はそれぞれ後
述するループデータ及び接続データの格納部である。
【0040】以下、図4を参照しながら、その動作につ
いて詳細に説明する。
【0041】図4(a)は、点701〜710、及び点
711〜714をそれぞれ連結した2つの連結図形から
なる処理対象図形を示す。図4(b),(c)は、図面
入力部61によって変換された、折線データファイル6
2のにおけるデータ例を示したものであり、即ち、折線
データファイル62は点データと線分データから構成さ
れる。図4(c)に示す線分データにおいては、点70
1〜714による線分データのそれぞれについて、その
始点に対応する点番号及び終点に対応する点番号が格納
されている。尚、線分の二つの端点のうちのいずれを始
点としても良いが、ここでは点番号の小さい方を始点と
する。また、図4(c)に示すように、各点を接続して
得られる線分のそれぞれについて、便宜上、始点の番号
の昇順に1〜14の番号を付す。
【0042】●接続抽出 まず、図3に示す接続抽出部63によって、図4(a)
の各点について、その点を始点とする辺の集合の中で先
頭となる辺の番号と、その点を終点とする辺の集合の中
で先頭となる辺の番号とを、図4(d)に示すように点
接続データとして格納する。なお、図3に示す接続デー
タ格納部68には、この点接続データと、後述する線分
接続データが接続データとして格納される。もし、そう
いった辺が存在しない場合は、存在しないことを表す番
号を格納する。図4(d)の例においては、表内の3つ
の列のうち、左列が点番号、中列が該点を始点とする辺
のうち先頭の辺番号、右列が該点を終点とする辺のうち
の先頭の辺番号であり、該当する辺が存在しないことを
表す番号は「0」である。但し、各々の点を始点又は終点
とする辺の集合の元の間の順序付けはどのようにしても
構わないが、本実施形態においては、辺の番号の小さい
順に順序付けがなされている。
【0043】また、接続抽出部63においては、更に、
各々の辺について、その辺の始点を始点とする辺の集合
のうち、その辺の次にくる辺の番号と、その辺の終点を
終点とする辺の集合のうち、その辺の次にくる辺の番号
とを、図4(e)に示すように線分接続データとして格
納する。なお、辺の集合のうち、次にくる辺が無い場
合、即ち、その辺が最後の辺である場合には、集合のう
ち先頭となる辺の番号を格納する。図4(e)の例にお
いては、表内の3つの列のうち、左列が各々の辺の番
号、中列が該辺の始点を始点とする辺の集合の中でその
辺の次にくる辺の番号、右列がその辺の終点を終点とす
る辺の集合の中でその辺の次にくる辺の番号である。但
し、各々の辺の始点を始点とする、又は各々の辺の終点
を終点とする辺の集合の元の間の順序付けは、図4
(d)に示す点接続データを生成した時に用いた順序付
けと同一でなければならない。
【0044】なお、点データ、線分データ、点接続デー
タ、線分接続データの4種類のデータからなるデータ構
造は、良く知られたグラフ表現の標準的データ構造(例
えば、計算幾何学と地理情報処理Bit別冊p19共立
出版東京(1986))を参考にした。線分接続データ
は、始点を共有する辺の集合を表す巡回リストと、終点
を共有する辺の集合を表す巡回リストを併せたものであ
り、点接続データは始点の番号から、その始点を共有す
る辺の集合に対応する巡回リストの先頭へのポインタ
と、終点の番号から、その終点を共有する辺の集合に対
応する巡回リストの先頭へのポインタからなる。尚、接
続抽出部63における抽出処理の詳細については、後に
詳述する。
【0045】●ループ抽出 次いで、図3に示すループ抽出部64において、接続抽
出部63において抽出された各データに基づいて、処理
対象図形に属する全てのループを追跡・抽出する。これ
により、ループ番号に対応して、ループを構成する線分
の列及び、どの連結図形に属しているかという上記連結
図形の番号が格納された、図4(g)に示すループデー
タが作成され、ループデータ格納部67に格納される。
尚、この時点では、この図4(g)のループデータには
内外ループを示すフラグ及び、横軸座標が最大となる所
定端(最大座標点)は未だ格納されていない。また、ル
ープ抽出部64における抽出処理の詳細については、後
に詳述する。
【0046】●所定端抽出 次に所定端抽出部65において、ループ抽出部64によ
って抽出された各々のループについて、横軸の座標が最
大となる所定端及びその前後の点を求める。
【0047】即ち、まず最初に初期化フラグを0にセッ
トする。そして、ループ番号1を構成する線分をループ
を構成する順に呼び出し、前の線分(以降、前線分と称
する)と今の線分(以降、現線分と称する)が共有する
端点を求める。
【0048】そして、初期化フラグが0であれば1にセ
ットして、前線分における、現線分と共有する端点でな
い端点及び、共有する端点の番号、即ち、前線分の両端
点の番号と、現線分における、前線分と共有する端点で
ない端点の番号と、の全部で3つの座標点番号を、最大
座標点としてループデータに格納する。
【0049】一方、初期化フラグが1であれば、前線分
と現線分が共有する端点の横軸座標(以降、現座標と称
する)と、図4(g)のループデータに最大座標点とし
て既に格納されている、共有する端点の横軸座標(以
降、前座標と称する)とを比較する。その結果、前座標
よりも現座標の方が大きければ、初期化フラグが0であ
った場合と同様に、前線分と現線分の3つの端点の座標
点番号を、最大座標点としてループデータに格納する。
【0050】これまでの処理により、線分1〜10によ
って構成されるループ1において、横軸座標が最大とな
る所定端、及びその前後の点をループデータに格納する
ことができる。
【0051】このループ1と同一の連結図形に属するル
ープ2及びループ3についても同様の処理を行い、更に
第2の連結図形に属するループ4およびループ5につい
てもやはり同様の処理を繰り返すことにより、全てのル
ープについて、横軸座標が最大となる所定端とその前後
の点がループデータに格納される。
【0052】●偏角符号計算 次いで、図3に示す偏角符号計算部66において、各々
のループの横軸座標が最大となる所定端における偏角の
符号を、上述したように下式(6)によって算出する。
但し、点(x1,y1)は横軸座標が最大となる所定端の
前の点であり、点(x2,y2)は横軸座標が最大となる
所定端であり、点(x3,y3)は横軸座標が最大となる
所定端の次の点である。
【0053】 (x2−x1)(y3−y2)−(x3−x2)(y2−y1) ・・・(6) この式(6)によって得られる符号が正であれば、該ル
ープは最外郭図形であると判定してループデータの内外
判定欄に「外」と記入し、そうでなければ該ループは最外
郭図形の内側にあると判定してループデータの内外判定
欄に「内」と記入する。これにより、本実施形態における
各ループからなる図形の内外判定が行われる。
【0054】●接続抽出処理詳細 以下、上述した接続抽出部63における接続抽出処理の
詳細について説明する。
【0055】まず、図4(d)に示す点接続データ及
び、図4(e)に示す線分接続データを初期化する。そ
して、点接続データの左列に点番号を昇順に格納する。
また、点接続データの中列及び右列には、対応する辺が
存在しないことを意味する特定の番号(本実施形態では
「0」)を格納する。一方、線分接続データの左列には、
線分番号を昇順に格納する。
【0056】次に、線分データの各行を始点の番号の小
さい順にソートして、その結果を図4(f)に示すソー
ト化線分データとして格納する。但し、同一の始点番号
を持つ行については、線分の番号でソートする。そし
て、ソート化線分データの各々の始点について、同一の
始点番号を持つ行のうち先頭に来る行の線分の番号を、
その始点の番号と同一の点番号が左列に格納された点接
続データの行の中列に格納する。
【0057】更に、ソート化線分データの各々の始点に
ついて、同一の始点番号を持つ行が一つしか無い場合、
その行の線分の番号と同一の番号が左列に格納された線
分接続データの行の中列にその線分の番号を格納する。
【0058】また、ソート化線分データの各々の始点に
ついて、同一の始点番号を持つ行が複数ある場合、同一
の始点番号を持つ行を次々に読み込んで、前の行の線分
番号と同一の番号が左列に格納された線分接続データの
行の中列に、今の行の線分番号を格納する。尚、同一の
始点番号を持つ行の最後を読み込んだら、その行の線分
番号と同一の番号が左列に格納された線分接続データの
行の中列に、同一の始点番号を持つ行のうち先頭に来る
行の線分番号を格納する。
【0059】同様に、線分データの各行を終点の番号の
小さい順にソートして、上述した始点の場合と同様の操
作を適宜行うことによって、図4(d)及び(e)に示
す点接続データ及び線接続データが完成する。
【0060】●ループ抽出処理詳細 以下、上述したループ抽出部64におけるループ抽出処
理の詳細について説明する。
【0061】図5は、本実施形態におけるループ抽出処
理を示すフローチャートである。同図において、まずス
テップS201で今の線分(現線分)と今の点(現点)
を決定する。この決定方法については任意とする。例え
ば、現線分と現点として、線分番号が1である線分とそ
の始点を選ぶ。即ち、現点とは現線分の端点のいずれか
である。
【0062】次にステップS202では、現在の連結図
形番号、及び現在のループ番号を1に初期化する。そし
てステップS203でループの先頭の線番号に現線分の
番号を格納し、ステップS204でデータを更新する。
詳しくは、向きデータ更新と連結データ更新、及びルー
プデータ更新を行うが、以下それぞれについて詳細に説
明する。
【0063】まず、向きデータ更新について説明する。
【0064】向きデータ更新とは即ち、図4(h)に示
す向きデータの各行において、現線分の番号と同じ線分
番号である行の「向き」列の値(向きフラグ)を更新す
る。図4(h)に示すように、向きデータは、各行の左
列に線分番号、右列に追跡した向きを示す向きフラグを
格納したものである。ここで向きフラグとは、以前にそ
の線分が追跡された向きを示すものであり、追跡された
ことがない場合、始点から終点方向に追跡されたことが
ある場合、終点から始点方向に追跡されたことがある場
合、及び両方向とも追跡されたことがある場合、の4状
態を区別するものであれば良い。本実施形態では、追跡
されたことがないことを示すフラグを「0」、始点から終
点方向に追跡されたことを示すフラグを「1」、終点方向
に追跡されたことを示すフラグを「2」、両方向とも追跡
されたことを示すフラグを「3」、としている。現点が現
線分の終点であるとき、現線分は始点から終点方向に追
跡されている。また、現点が現線分の始点であるとき、
現線分は終点から始点方向に追跡されている。従って、
既に格納されている向きフラグの値と、現点が始点であ
るか終点であるかによって、新たに格納すべき向きフラ
グを決定し、更新する。
【0065】次に、連結データ更新について説明する。
【0066】ここで連結データとは、同一連結図形に属
する線分の番号を順序付けして格納したものであり、そ
の例を図4(i)に示す。尚、順序付けの規則はどうい
ったものでも構わないので、本実施形態では、番号の小
さい順に順序付けをするとする。そして、連結データに
現線分の番号が含まれていなければ、現線分の番号を加
えることにより、連結データの更新が行われる。
【0067】次に、ループデータ更新について説明す
る。
【0068】ループデータ更新においては、ループデー
タの現ループ番号と同一のループ番号を持つ行の「ルー
プを構成する線分」の番号を格納する列に、現線分の番
号を加える。また、同じ行の連結図形番号を格納する列
に現在の連結図形番号を格納する。ループデータは、図
4(g)に示したように、ループ番号、ループを構成す
る各線分の番号、ループの属する連結図形番号、及び図
形の内外を示すフラグ、を格納する。
【0069】次にステップS205でループ追跡を行
う。ループ追跡では、現点を端点として共有する辺の中
で現線分から見て、最も右側にある線分と、該線分の現
点でない端点を求める。尚、ループ追跡方法の詳細につ
いては、後述する。
【0070】次にステップS206で、次の線が先頭線
であるか、即ち、ループデータの「ループを構成する線
分」列における先頭の線分であるか否かを判断する。先
頭線であればステップS207に移るが、そうでなけれ
ばステップS214に移り、現線分の番号として次の線
分番号を設定し、現点の番号として次の点番号を設定し
て、ステップS204に移る。
【0071】一方、ステップS207では、現ループ番
号を持つループデータの行の、連結図形番号の列に連結
図形番号を格納し、ステップS208では、現ループ番
号を1増加させる。そしてステップS209では、連結
データを走査し、連結図形に含まれていて、一方向にル
ープ追跡された線分の中で最も順序の低い線分番号を取
り出し、次の線分番号として設定する。
【0072】次にステップS210では、次の線分番号
があるか否かを判定し、なければステップS211に移
り、あればステップS215に移る。ステップS215
では、次の線分番号と向きデータから、次の線分番号が
以前に追跡された方向と逆の方向に追跡する場合の次の
点番号を求める。即ち、以前追跡された方向が始点から
終点方向であれば次の点は始点であり、以前追跡された
方向が終点から始点方向であれば次の点は終点である。
そしてステップS216では、現線分の番号として次の
線分番号を設定し、現点の番号として次の点番号を設定
する。
【0073】一方、ステップS211では、現在の連結
図形番号を1増加させる。次にステップS212では、
向きデータを走査し、まだ追跡されたことがないか、一
方向のみ追跡されたことがある線分の中で、最も順序が
低い線分番号を取りだし、次の線分番号として設定す
る。
【0074】次にステップS213では、次の線分番号
があるか否かを判定し、あればステップS217へ移る
が、なければループ抽出処理を終了する。ステップS2
17では、連結データを廃棄し、ステップS218で
は、現線分の番号として次の線分番号を設定し、現点の
番号として次の点番号を設定する。
【0075】以下、図5のステップS205で示したル
ープ追跡処理の詳細について、図6のフローチャートを
参照して説明する。
【0076】まずステップS301で、現在の偏角とし
てπをセットし、追跡フラグを「0」にセットする。ここ
で追跡フラグは、現在のループ追跡がどの段階であるか
を示し、現点を始点とする線分の集合に含まれる線分を
追跡している段階と、現点を終点とする線分の集合に含
まれる線分を追跡している段階と、を区別するためのも
のである。本実施形態においては、前者の段階はフラグ
を「0」とし、後者の段階はフラグを「1」とする。
【0077】次にステップS302で、追跡フラグが
「0」の時は現点の番号から点接続データを用いて現点を
始点とする線分の集合の中で先頭である線分の番号を取
り出し、一方、追跡フラグが「1」の時は現点の番号から
点接続データを用いて現点を終点とする線分の集合の中
で先頭である線分の番号を取り出す。
【0078】次にステップS303において、ステップ
S302で取り出した先頭線分番号を、先頭線分がない
ことを示す番号と比較して、先頭の線分があるか否かを
判定する。先頭の線分がなければステップS308に移
るが、あればステップS304に移る。
【0079】ステップS304では、次の線分候補の番
号として、先頭の線分番号をセットする。
【0080】次にステップS305で現線分番号と現点
番号、及び次の線分候補の番号から偏角を求める。そし
て、該偏角が現在の偏角よりも小さく、かつ次の線分候
補の番号が現線分番号に一致しなければ、次の線分候補
の番号を次の線分番号として確定し、前記求めた偏角を
現在の偏角として確定する。但し、ここで偏角の値の範
囲は、−π→πである。尚、偏角を算出する際に通常行
われる逆sin変換は処理時間がかかるため、偏角を実
際に計算せずに、その大小を判定する方法があるが、こ
こではその詳細な説明は行なわない。
【0081】次にステップS306において、追跡フラ
グが「0」の時は、次の線分候補番号と同一の番号を左列
に持つ線分接続データの、中列の番号を取り出す。また
は、追跡フラグが「1」の時は、次の線分候補番号と同一
の番号を左列に持つ線分接続データの右列の番号を取り
出し、次の線分候補の番号としてセットする。
【0082】次にステップS307で、次の線分候補の
番号が先頭の線分の番号でなければステップS305に
戻るが、次の線分候補の番号が先頭の線分の番号であれ
ばステップS308に移る。ステップS308では、フ
ラグを1増加させる。次にステップS309では、フラ
グが「1」の時は、ステップS304に戻り、フラグが
「2」の時はループ追跡処理を終了する。
【0083】以上説明したように本実施形態によれば、
一般の内外ループ判定処理を行なう構成に対して、横軸
座標が最大である所定端を求める構成と、偏角の符号を
計算する構成とを追加することにより、一部の偏角の符
号(正負)を計算して追跡方向が左回りであるか右回り
であるか判定することによって、抽出された閉図形が対
象図形の内側閉図形であるか最外郭閉図形であるかの判
定を行なう。これにより、処理時間のかかる逆sin計
算を用いた偏角総和演算を行なう必要がないため、極め
て安価な構成で、内外ループ判定処理を高速化すること
ができる。
【0084】従って、例えばパターン認識処理等におけ
る閉領域の検索を効率良く実行することができるという
格別の効果が達成される。
【0085】尚、本実施形態においては、判定対象とな
る図形データは連続した複数の線分データより折線図形
として構成され、それぞれの線分データとしては、図面
入力装置等により数値化された連続した線分データを用
いる例について説明したが、本発明はこの例に限定され
るものではなく、例えば、光学式読み取り装置等により
生成された対象図形の2値画像に基づく線分データを用
いることも可能である。
【0086】
【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ,インタフェイス機器,リーダ,プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機,ファクシミリ
装置など)に適用してもよい。
【0087】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることは言う
までもない。
【0088】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
【0089】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク,ハードディス
ク,光ディスク,光磁気ディスク,CD−ROM,CD
−R,磁気テープ,不揮発性のメモリカード,ROMな
どを用いることができる。
【0090】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
【0091】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
【0092】
【発明の効果】以上説明したように本発明によれば、簡
単な構成で、折線図形の内外判定を高速に行なうことが
できる。従って、画像内における閉領域の検索を効率良
く行なうことができる。
【0093】
【図面の簡単な説明】
【図1】本発明に係る一実施形態における内外領域判定
処理の概要を示すフローチャートである。
【図2】本実施形態における内外領域判定処理の原理を
説明するための図である。
【図3】本実施形態における内外領域判定処理を実現す
るための機能構成を示すブロック図である。
【図4】本実施形態におけるデータ例を示す図である。
【図5】本実施形態におけるループ抽出処理を示すフロ
ーチャートである。
【図6】本実施形態におけるループ追跡処理を示すフロ
ーチャートである。
【図7】従来の内外領域判定処理の処理対象となる折線
図形の例を示す図である。
【図8】従来のループ抽出の概念を示す図である。
【図9】従来の偏角計算を説明するための図である。
【符号の説明】
61 図面入力部 62 折線データファイル 63 接続抽出部 64 ループ抽出部 65 所定端抽出部 66 偏角符号計算部 67 ループデータ格納部 68 接続データ格納部

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 連結された折線閉図形を有する連結図形
    を含む対象図形を入力する入力手段と、 前記対象図形の全ての折点で所定方向の直線を選択する
    ことにより追跡して全ての折線図形を抽出する折線抽出
    手段と、 該抽出された折線図形を構成する各線分において横軸座
    標が最大となる所定端をそれぞれの折線図形について求
    める所定端抽出手段と、 前記所定端において当該折線図形を抽出した追跡方向か
    ら見た偏角の符号を算出する偏角符号算出手段と、 前記偏角の符号に応じて、当該折線図形の当該連結図形
    に対する位置関係を判定する判定手段と、を有すること
    を特徴とする画像処理装置。
  2. 【請求項2】 前記判定手段は、前記偏角の符号が所定
    符号である折線図形を当該折線図形が属する連結図形の
    最外郭折線図形であると判定し、その他の折線図形を当
    該連結図形の内側折線図形であると判定することを特徴
    とする請求項1記載の画像処理装置。
  3. 【請求項3】 前記折線抽出手段における所定方向は右
    方向であることを特徴とする請求項2記載の画像処理装
    置。
  4. 【請求項4】 前記判定手段における所定符号は正であ
    ることを特徴とする請求項3記載の画像処理装置。
  5. 【請求項5】 連結された折線閉図形を有する連結図形
    を含む対象図形を入力する入力工程と、 前記対象図形の全ての折点で所定方向の直線を選択する
    ことにより追跡して全ての折線図形を抽出する折線抽出
    工程と、 該抽出された折線図形を構成する各線分において横軸座
    標が最大となる所定端をそれぞれの折線図形について求
    める所定端抽出工程と、 前記所定端において当該折線図形を抽出した追跡方向か
    ら見た偏角の符号を算出する偏角符号算出工程と、 前記偏角の符号に応じて、当該折線図形の当該連結図形
    に対する位置関係を判定する判定工程と、を有すること
    を特徴とする画像処理方法。
  6. 【請求項6】 前記判定工程においては、前記偏角の符
    号が所定符号である折線図形を当該折線図形が属する連
    結図形の最外郭折線図形であると判定し、その他の折線
    図形を当該連結図形の内側折線図形であると判定するこ
    とを特徴とする請求項5記載の画像処理方法。
  7. 【請求項7】 前記折線抽出工程における所定方向は右
    方向であることを特徴とする請求項6記載の画像処理方
    法。
  8. 【請求項8】 前記判定工程における所定符号は正であ
    ることを特徴とする請求項7記載の画像処理方法。
  9. 【請求項9】 画像処理のプログラムコードが記録され
    た記録媒体であって、該プログラムコードは、 連結された折線閉図形を有する連結図形を含む対象図形
    を入力する入力工程のコードと、 前記対象図形の全ての折点で所定方向の直線を選択する
    ことにより追跡して全ての折線図形を抽出する折線抽出
    工程のコードと、 該抽出された折線図形を構成する各線分において横軸座
    標が最大となる所定端をそれぞれの折線図形について求
    める所定端抽出工程のコードと、 前記所定端において当該折線図形を抽出した追跡方向か
    ら見た偏角の符号を算出する偏角符号算出工程のコード
    と、 前記偏角の符号に応じて、当該折線図形の当該連結図形
    に対する位置関係を判定する判定工程のコードと、を含
    むことを特徴とする記録媒体。
JP10242125A 1998-08-27 1998-08-27 画像処理装置及びその方法 Withdrawn JP2000076465A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10242125A JP2000076465A (ja) 1998-08-27 1998-08-27 画像処理装置及びその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10242125A JP2000076465A (ja) 1998-08-27 1998-08-27 画像処理装置及びその方法

Publications (1)

Publication Number Publication Date
JP2000076465A true JP2000076465A (ja) 2000-03-14

Family

ID=17084681

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10242125A Withdrawn JP2000076465A (ja) 1998-08-27 1998-08-27 画像処理装置及びその方法

Country Status (1)

Country Link
JP (1) JP2000076465A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048763A (ja) * 2005-09-20 2012-03-08 Fukui Computer Kk 閉領域識別方法
CN103065319A (zh) * 2012-12-31 2013-04-24 上海同岩土木工程科技有限公司 一种空间多连通域的封闭面自动搜索方法
JP2015060441A (ja) * 2013-09-19 2015-03-30 コニカミノルタ株式会社 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048763A (ja) * 2005-09-20 2012-03-08 Fukui Computer Kk 閉領域識別方法
CN103065319A (zh) * 2012-12-31 2013-04-24 上海同岩土木工程科技有限公司 一种空间多连通域的封闭面自动搜索方法
JP2015060441A (ja) * 2013-09-19 2015-03-30 コニカミノルタ株式会社 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム

Similar Documents

Publication Publication Date Title
JP2008158774A (ja) 画像処理方法、画像処理装置、プログラム、及び記憶媒体
JP4704601B2 (ja) 文字認識方法,プログラム及び記録媒体
JP2718401B2 (ja) 線対称図形整形装置及び任意の数の対称軸の全てについて線対称な図形を生成する方法
US5920324A (en) Character pattern producing apparatus capable of producing character pattern having connected character elements
JP2000076465A (ja) 画像処理装置及びその方法
JP2006227824A (ja) 図面認識方法および装置
CN113867371B (zh) 路径规划方法和电子设备
JPH11134509A (ja) 図面認識処理方法及び建築図面認識処理方法
JP5712859B2 (ja) 画像認識装置および画像認識方法
JP4143320B2 (ja) 図面変換方法、図面変換装置、図面変換プログラム及び記録媒体
JP2735197B2 (ja) 図形入力装置
JP2000305933A (ja) 情報検索装置、情報検索方法、及び記憶媒体
JP4648084B2 (ja) 記号認識方法及び装置
JP2001084357A (ja) 道路幅員データの抽出方法
JP2595361B2 (ja) 折線からなる図形の内外判定方法
JPH1069520A (ja) 文字認識方法及びプログラムを記録した記録媒体
JP5361315B2 (ja) 情報処理装置及び情報処理方法
JP2001052174A (ja) 手書き図形処理装置および方法、ならびに手書き図形処理プログラムを記録したコンピュータで読取可能な記録媒体
JP4878057B2 (ja) 文字認識方法,プログラム及び記録媒体
Chiang et al. Generating named road vector data from raster maps
JPS61221968A (ja) 図面読取装置
JP3077929B2 (ja) 文字切出し方式
JP2009193170A (ja) 文字認識装置及び文字認識方法
JP2002351451A (ja) アウトラインフォント情報に基づく文字処理方法及びその方法をコンピュータシステムに実行させるためのコンピュータソフトウエアプログラム製品
KR100871825B1 (ko) 아웃라인 폰트 정보에 의거한 문자 처리 방법 및 그방법을 컴퓨터 시스템에 실행시키기 위한 컴퓨터소프트 웨어 프로그램 제품

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20051101