JPH04117579A - Hatching area extracting method - Google Patents
Hatching area extracting methodInfo
- Publication number
- JPH04117579A JPH04117579A JP2238464A JP23846490A JPH04117579A JP H04117579 A JPH04117579 A JP H04117579A JP 2238464 A JP2238464 A JP 2238464A JP 23846490 A JP23846490 A JP 23846490A JP H04117579 A JPH04117579 A JP H04117579A
- Authority
- JP
- Japan
- Prior art keywords
- hatching
- line
- area
- pattern
- vector
- 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.)
- Pending
Links
- 230000012447 hatching Effects 0.000 title claims abstract description 80
- 238000000034 method Methods 0.000 title claims abstract description 43
- 239000013598 vector Substances 0.000 claims abstract description 64
- 239000000470 constituent Substances 0.000 claims description 29
- 238000000605 extraction Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 abstract description 31
- 238000012790 confirmation Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 19
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
Description
本発明は、ベクトル画像から平行線あるいは点によって
構成されたハツチング領域を抽出するハツチング領域抽
出方法に関する。
1従来技術〕
画像処理技術の進展に伴い、コンピュータを用いた図形
処理技術が様々な分野に利用されているが、そのような
図形処理技術として、地図やイラスト画像等の線画をコ
ンピュータ処理するための研究開発が行われている。
例えば、[地図の構成要素の自動抽出の検討」、情報処
理学会節39口金国大会、[ハツチング領域抽出アルゴ
リズムとその地形図への応用」、昭和59年度電子通信
学会全国大会等が挙げられる。
【発明が解決しようとする課題]
上記した処理技術は、図形を線画としてではなく2値の
写真画像等と同じラスク画像データとして処理している
ため、画像の拡大、縮小等の処理が容易にできるものの
、画像中の部分的な修正、変更等を行うことは難しいと
いう問題があった。
これに対して、線画をベクトル化して処理することも考
えられている(例えば、[線分間の関係を用いた地形図
の自動認識J、電子情報通信学会PRU89−24P、
「会話的な認識による信頼性の向上を図った地図自動入
力システム」、電子情報通信学会論文誌、89/4 V
OL、J72−D−2No、4) 。
しかし、ハツチングパターンの如き線画の場合、その線
あるいは点それ自体よりも、ハツチングパターンによっ
て構成される多角形等の図形に意味があるが、上記した
従来の技術は、何れもこの点について考慮されていなか
った。
本発明の目的は、平行線あるいは点によるハツチング領
域を抽出し、該ハツチング領域を多角形のデータとして
処理するハツチング領域抽出方法を提供することにある
。
【課題を解決するための手段〕
前記目的を達成するために、請求項(1)では、2値化
された入力画像の輪郭をベクトル化してから芯線化し、
該入力画像を芯線ベクトルと該芯線ベクトルを結ぶつな
ぎベクトルに変換することにより線画データを出力する
方法において、図形中のハツチングによって表された領
域に矩形領域を指定し、該矩形領域内の輪郭ベクトルか
ら前記ハツチングのパターンを判定することを特徴とす
る請求項(2)では、前記輪郭ベクトルから構成される
閉ループが前記矩形よりも大きければ、前記ハツチング
パターンは平行線によって構成されていると判定し、該
閉ループが前記矩形よりも小さければ、点によるハツチ
ングパターンとして判定することを特徴とする
請求項(3)では、ハツチングパターンの傾きと該パタ
ーン間の間隔からハツチングパターンを構成する構成線
を探し、隣合う構成線間にリンクを張り、該リンクから
構成線の端点をたどって領域外部線を求めることにより
平行線ハツチング領域を抽出することを特徴とする
請求項(4)では、前記構成線の端点の座標を記録する
ことを特徴とする
請求項(5)では、図形を構成する外部線の内側の輪郭
ベクトルを探索し、該輪郭ベクトルの端点の列を求める
ことによって、点によるハツチング領域を抽出すること
を特徴とする。
【作 用】
請求項(1)、(2)では、図形中のハツチングによっ
て表された領域に矩形領域を指定することによって、該
矩形領域内の輪郭ベクトルから前記ハツチングのパター
ンが平行線であるか点であるかを判定し、線の傾き、線
の間隔情報を抽出することができる。
請求項(3)、(5)では、平行線、点によるハツチン
グ領域を多角形のデータとして抽出するので、該領域を
多角形として処理できる。また、領域内のハツチングパ
ターンの変更、更には領域そのものを変形することがで
きる。
請求項(4)では、ハツチングパターンの位置を検出す
ることができる。The present invention relates to a hatching area extraction method for extracting a hatching area composed of parallel lines or points from a vector image. 1 Prior Art] With the advancement of image processing technology, graphic processing technology using computers is being used in various fields. As such graphic processing technology, there is a method for computer processing of line drawings such as maps and illustration images. Research and development is underway. Examples include ``Study on Automatic Extraction of Map Components,'' Information Processing Society of Japan Section 39 National Conference, ``Hatching Area Extraction Algorithm and Its Application to Topographic Maps,'' and 1981 National Conference of the Institute of Electronics and Communication Engineers. [Problems to be Solved by the Invention] The processing technology described above processes figures not as line drawings but as rask image data, which is the same as binary photographic images, etc., so processing such as image enlargement and reduction is easy. Although it is possible to do so, there is a problem in that it is difficult to partially correct or change an image. On the other hand, it has been considered to process line drawings by vectorizing them (for example, [Automatic Recognition of Topographic Maps Using Relationships between Line Segments J, Institute of Electronics, Information and Communication Engineers PRU89-24P,
“Automatic map input system with improved reliability through conversational recognition”, Transactions of the Institute of Electronics, Information and Communication Engineers, 89/4 V
OL, J72-D-2No, 4). However, in the case of line drawings such as hatching patterns, the shapes such as polygons formed by the hatching pattern are more meaningful than the lines or points themselves, and the above-mentioned conventional techniques do not address this point. It wasn't taken into account. SUMMARY OF THE INVENTION An object of the present invention is to provide a hatching area extraction method for extracting a hatching area formed by parallel lines or points and processing the hatching area as polygonal data. [Means for Solving the Problem] In order to achieve the above object, in claim (1), the outline of a binarized input image is vectorized and then converted into a core line,
In a method of outputting line drawing data by converting the input image into a skeleton vector and a connecting vector connecting the skeleton vectors, a rectangular area is specified in the area represented by hatching in the figure, and a contour vector within the rectangular area is In claim (2), wherein the hatching pattern is determined from the contour vector, if the closed loop formed from the contour vector is larger than the rectangle, it is determined that the hatching pattern is formed of parallel lines. In claim (3), if the closed loop is smaller than the rectangle, it is determined as a hatching pattern of points. Claim (4) is characterized in that the parallel line hatching area is extracted by searching for a constituent line, creating a link between adjacent constituent lines, and tracing the end point of the constituent line from the link to obtain a line outside the area. , the coordinates of the end points of the constituent lines are recorded, by searching the contour vector inside the external line constituting the figure and finding a sequence of the end points of the contour vector, It is characterized by extracting a hatched area using points. [Function] According to claims (1) and (2), by specifying a rectangular area in the area represented by the hatching in the figure, the pattern of the hatching is a parallel line based on the contour vector in the rectangular area. It is possible to determine whether the line is a point or a point, and extract information about the slope of the line and the interval between the lines. In claims (3) and (5), since a hatched area formed by parallel lines and points is extracted as polygon data, the area can be processed as a polygon. Furthermore, it is possible to change the hatching pattern within the area, and furthermore, to transform the area itself. In claim (4), the position of the hatching pattern can be detected.
以下、本発明の一実施例を図面を用いて具体的に説明す
る。
第1図は、本発明の一実施例に係る機能ブロック図であ
り、lは、ハツチングパターンによって構成された図形
を読み取るスキャナ等からなる画像入力部、2は、入力
画像を2値化する2値化処理部、3は、2値化されたハ
ツチングパターンから輪郭ベクトルを生成する輪郭ベク
トル生成部、4は、該輪郭ベクトルから芯線化ベクトル
を生成する芯線化処理部である。この芯線化処理部4に
よって芯線化された線画データ7が出力される。
なお、輪郭ベクトルから芯線化ベクトルを生成する方法
は公知であるので、その詳細な説明は省略する。
5は、ベクトル化されたハツチング領域内に矩形領域を
指定する矩形領域指定部である。6は、ハツチング領域
抽出部で、ハツチング領域抽出データ8を出力する。
第2図に矩形領域指定部5の構成を示す、矩形領域指定
部5は、ベクトル化されたハツチング領域を表示するC
RT等の表示装置21と、マウス等のポインティングデ
バイス22と、マウス22によって指定された矩形内か
らハツチングパターン情報を抽出する矩形内パターン情
報抽出部23から構成されている。
矩形の指定処理;
輪郭ベクトル生成部3と芯線化処理部4によって生成さ
れた輪郭ベクトルと芯線化ベクトルを線画として表示装
置21に表示することにより、図形の確認を行う。そし
て、マウス22によって該図形内に矩形を指定する。こ
の矩形の指定は、表示画面上の左上の位置と右下の位置
の2点を指定することによって行う。ただし、平行線に
よるハツチングパターンの場合は、その線が必ずその矩
形内に1本人るように指定しなければならない。
また、ハツチングパターンではない領域を表す外部線2
4等が矩形内に入らないように指定しなければならない
。
ハツチングパターンの判定処理;
次いで、矩形内パターン情報抽出部23は、矩形内の輪
郭ベクトルを座標値から探索し、輪郭ベクトルが探し出
されたらその輪郭ベクトルの繋がりを追跡する。これに
より輪郭ベクトルからなる閉ループが構成される。この
閉ループが先の矩形よりも大きければ、平行線によるハ
ツチングパターンとして判定しく第3図a)、閉ループ
が先の矩形よりも小さければ、点によるハツチングパタ
ーンとして判定する(第3図b)。
平行線ハツチングパターンの抽出処理;■1ないし複数
の芯線によって構成される延長線を求める処理、
矩形内パターン情報抽出部23は、指定された矩形内に
ある1本の芯線を座標値から探しだす。
この時、原画像が1本のハツチング線であっても、その
輪郭がノイズ等によって乱されて、芯線が連続した1本
の線ではなく各部で切断された状態となっている場合が
ある。そこで、芯線の両端を調べることによって芯線を
延長していく。すなわち、第4図に示す如く、芯線ベク
トル41の端点42に次の芯線ベクトル43が接続して
いる場合、また第5図に示す如く、端点53と54の間
を結ぶつなぎベクトル(余りベクトルともいい、芯線化
できずに余った部分に形成されるベクトル)55.56
によって、2本の芯線ベクトル51.52が結ばれてい
る場合には芯線を延長していく、但し、第6図のように
、つなぎベクトル61に他の芯線ベクトル62が結ばれ
ている場合には芯線を延長しない。
また、延長線は、延長する途中で折れ曲がっていること
があるので、距離や角度から延長するか否かを判断する
。すなわち、第7図は距離による判断を説明するための
図であり、71は延長の基となる芯線ベクトル、72は
1番目の延長芯線、73はn番目の延長芯線、74は芯
線ベクトル71.73の端点間を結ぶ線、75.76は
線74と端点77.78との間の距離di、d2である
。
この距離di、d2がある閾値よりも大きい場合には、
芯線ベクトル71から芯線ベクトル72への延長を行わ
ない。
第8図(a)は、角度による判断を説明するための図で
あり、81は延長の基となるX軸上にある芯線ベクトル
、82はn番目の延長芯線で、その端点はX、Y軸の原
点にあり、83は延長を判断する場合の閾となる線であ
る。芯線ベクトル84のように閾線83を越えて右側に
でる場合には、延長を行わない。なお、閾線83が原点
からずれて設けられている理由は、第8図(b)に示す
ように延長芯線が微小な区間で、その方向を大きく変え
ることがあり、そのようなケースでも延長できるように
するためである。
以上の処理によって、ハツチングパターンの基準となる
延長線が求められ、その延長線の傾きがハツチングパタ
ーンの傾きとなる。
■平行線の間隔を求める処理
第9図(a)は、基準となるハツチングパターンの隣に
ある、ハツチングパターンを構成している延長線を探す
処理を説明するための図である。
91は、基準となるハツチングパターン構成線(延長線
の内、ハツチングパターンを構成しているものと判断さ
れたものを、パターン構成線という)、92は、探索開
始点、93は、探索方向、94は、芯線ベクトル、95
は、芯線の延長線である。
ハツチングパターン構成線91の端を探索開始点92と
して、その法線方向93に隣の芯線94を探す。この芯
線を結んで構成された延長線95の傾きが基準の傾きに
近ければ、その延長線95は第2のパターン構成線とな
る。そして、この2本のパターン構成線間の距離がハツ
チングパターンの間隔となる。
他方、延長線95の傾きが基準のものと大きく異なる場
合、別の延長線を探さなければならない。
第9図(b)は、別の延長線を探す処理を説明するため
の図で、傾きが大きく異なった延長線95の端点96を
ハツチングパターン構成線91に写像して(端点97)
、探索開始点を最初の開始点92から端点98側に移動
する。その点98から、鋳述したと同様にして芯線99
を探し、傾きが基準の傾きに近い延長線が見つかるまで
この処理を繰り返す。
点状ハツチングパターンの抽出処理;
点状のパターンの場合は、輪郭ベクトルの閉ループの大
きさから点の大きさが求められる。従って、矩形領域内
の閉ループの大きさを平均することによって、点状ハツ
チングパターンの大きさが求められる。
以上のようにして求めたハツチングパターンのデータ形
式を第10図に示す。パターンの種類は、平行線、点を
表し、パターンデータ1は、平行線のときはその傾きを
、点のときはその点の大きさを表し、パターンデータ2
は、平行線のときは間隔を表し、点のときは何も記入し
ない。
ハツチング領域の抽出処理;
上記ハツチングパターンデータから、ハツチング領域抽
出部6が領域を抽出する動作を以下に詳細に説明する。
■ハツチングパターンが平行線の場合
第11図は、平行線ハツチング領域の抽出処理手順を示
し、ステップ111では、パターンを構成する延長線を
探し、隣合う構成線間にリンクを張り、ステップ112
では、そのリンクから構成線の端点をたどって領域外部
線を求める。ステップ111の詳細な処理手順を第12
図に、ステップ112の詳細な処理手順を第13図に示
す。
第12図、第13図で使用される用語の定義を説明して
から、第12図、第13図の処理を詳細に説明する。
第14図(a)、第14図(b)は、延長線の始点、終
点を定義するための図で、延長線の端点が上側(142
)あるいは左側(144)にある点を始点とし、従って
、端点143.145は終点となり、終点から始点に向
かって右側をR側、左側をL側とする。なお、θはX軸
に対する角度である。
第12図に戻って、前述したハツチングパターンの抽出
処理によって求められた基準線の始点から処理を開始す
る(ステップ1201)。この始点から第9図(a)、
第9図(b)に示した処理手順に従って、R側の隣の構
成線を探す(ステップ1202.1203)。但し、こ
の時、1本の構成線が見つかっても処理を終了しない。
第9図(b)に示したように探索開始点を移動し、探索
開始点が終点に位置するまで処理を続ける。R側の処理
が終了したら、L側についても同様にして構成線を探す
(ステップ1204.1205)。
このように、1本の構成線のR側、L側にある隣の構成
線の列が求められ、第15図のようなデータ列のテーブ
ルを作成する。151の部分には構成線の本数が記入さ
れ、152の部分には探索によって見つかった順番に付
与された構成線の番号が記入されている。
次に、このテーブルのなかで、上記探索処理が終了して
いない構成線に対して同様にR側、L側の探索処理を行
う(ステップ1208.1209)。
また、新たに構成線が見つかったら、その構成線におい
ても同様の探索処理を行う(ステップ1206.120
?)。このようにして番号が付与された全ての構成線に
対して探索処理が行われ、処理が終了する。
探索処理が終了し、構成線間のリンクが確定したら、第
13図の処理手順に従って領域外部線の抽出が行われる
。第16図は、この領域外部線の抽出を説明するための
一例を図示したもので、N。
M、にはそれぞれ番号N、M、にの構成線である。
al、a2.a3は、それぞれ構成線N、M、にの始点
、bl、b2.b3はその終点、slから89は芯線ベ
クトルとつなぎベクトルを表している・また、第17図
は、構成線N、M、に間のリンクを示したテーブルで、
17]は構成線NのR側のリスト、172は構成線にの
L側のリストである。
以下、第16図及び第17図を参照しつつ領域外部線の
抽出処理を詳細に説明する。
まず、基準線の始点から処理を開始する(ステップ13
01)。次いで、基準線の始点からR側に、領域を表す
ポリゴン(多角形)を構成する次の点を探して行く。即
ち、現在の注目点の構成線(これを第16図のNとする
)のテーブル(第17図)を参照して、R側のリスト(
第17図の171)に構成線が存在するか否かを調べる
(ステップ1302)。構成線が存在する場合(構成線
K)、その構成線のL側のりスト(第17図の172)
において、構成線Nのリスト内での順番を調べる。この
とき、第17図のL側のりスト172に示すようにNが
リストの先頭でない場合、Nの一つ前の構成線Mを調べ
、NからMの終点へと処理し、これによって領域の輪郭
はalからb2に接続され(ステップ1303.130
4)、s2が外部線となる。そして、この終点からL側
のリストを調べていく(ステップ1308)。
構成線Mがないとき、構成線Kに処理を移しくステップ
1305)、更に、R側のリストを調べて(ステップ1
302)、i述したと同様の処理を繰り返す。この処理
によって、領域の輪郭はalから83へと結ばれる。
また、ステップ1302において、注目構成線のR側の
リストが空であった場合、つまり構成線Kがない場合に
は、注目構成線の始点a1から終点blへと処理を移し
くステップ1307)、続いて、L側のリストを調べて
いく(ステップ1308)。
L側に処理を進める場合は、前述したR側へ処理を進め
る場合と全く逆になる。つまり、L側のリストを調べて
いく場合は、構成線の終点をたどることになるので、注
目構成線のL側すストの最後尾の番号を調べ、また、L
側からR側へ処理が進行するか否かは(第16図のケー
スと反対)、次の構成線のR側のリストの中で(第17
図のリスト172に相当)、注目構成線よりも後に他の
構成線(第17図のNの下の位置に相当)があるか否か
を調べることによって行う(ステップ1308からステ
ップ13)。
このようにして、端点をたどる内に、処理を開始した点
に戻り、処理が終了する。上記処理によってたどった構
成線の端点を連結することにより、領域を表すポリゴン
が抽出される。第18図は、注目端点が移動する毎にそ
の座標を記録した点列のリストであり、181には点の
数が記入され、182には各点の座標が記入されている
。ただし、リストの先頭座標と最後の座標は同一である
。
■ハツチングパターンが点の場合
第19図は、点によるハツチング領域の抽出処理を説明
するための図である。先に述べた矩形191の原点19
2からX軸の負の方向に向かって、外部線193の内側
の輪郭ベクトル194を探索する。見つかった輪郭ベク
トル194の閉ループが先の矩形191より大きくて、
矩形191を包含する場合には探索を終了し、そうでな
い場合は更にX軸の負方向に探索を続ける。この矩形を
包含するような輪郭ベクトルの閉ループは、領域の外部
線の内側の輪郭となるので、この処理によって得られた
輪郭ベクトルの端点195の列を第18図のリストに記
録することによって、領域を表すポリゴンが抽出される
。Hereinafter, one embodiment of the present invention will be specifically described using the drawings. FIG. 1 is a functional block diagram according to an embodiment of the present invention, in which 1 is an image input unit consisting of a scanner etc. that reads a figure formed by a hatching pattern, and 2 is a unit that binarizes an input image. A binarization processing section 3 is a contour vector generation section that generates a contour vector from the binarized hatching pattern, and 4 is a skeletonization processing section that generates a skeletonized vector from the contour vector. The skeletonized line drawing data 7 is output by the skeletonized processing section 4. Note that since the method of generating a skeletonized vector from a contour vector is well known, a detailed explanation thereof will be omitted. Reference numeral 5 denotes a rectangular area specifying unit that specifies a rectangular area within the vectorized hatching area. 6 is a hatching area extracting unit which outputs hatching area extraction data 8; The configuration of the rectangular area specifying unit 5 is shown in FIG. 2. The rectangular area specifying unit 5 is a C
It is comprised of a display device 21 such as an RT, a pointing device 22 such as a mouse, and an in-rectangle pattern information extraction section 23 that extracts hatching pattern information from within a rectangle designated by the mouse 22. Rectangle designation processing: The contour vector and skeletonization vector generated by the contour vector generation section 3 and skeletonization processing section 4 are displayed as a line drawing on the display device 21 to confirm the figure. Then, a rectangle is designated within the graphic using the mouse 22. This rectangle is specified by specifying two points, the upper left position and the lower right position, on the display screen. However, in the case of a hatching pattern using parallel lines, the line must be specified so that one line falls within the rectangle. In addition, external line 2 representing an area that is not a hatching pattern
It must be specified so that the 4th grade does not fall within the rectangle. Hatching pattern determination process: Next, the rectangular pattern information extraction unit 23 searches for a contour vector within the rectangle from the coordinate values, and when a contour vector is found, traces the connection of the contour vectors. This creates a closed loop consisting of contour vectors. If this closed loop is larger than the previous rectangle, it is determined to be a hatching pattern using parallel lines (Figure 3a), and if the closed loop is smaller than the previous rectangle, it is determined to be a hatching pattern using points (Figure 3b). . Parallel line hatching pattern extraction processing: ■Processing for finding an extension line made up of one or more skeleton lines. Start. At this time, even if the original image is a single hatched line, its contour may be disturbed by noise or the like, so that the core line is not a continuous line but is cut at various parts. Therefore, the core wire is extended by examining both ends of the core wire. That is, as shown in FIG. 4, when the next core vector 43 is connected to the end point 42 of the core vector 41, and as shown in FIG. Okay, vector formed in the surplus part that could not be converted into a core line) 55.56
Accordingly, when two core vectors 51 and 52 are connected, the core line is extended.However, as shown in FIG. 6, when another core vector 62 is connected to the connecting vector 61, does not extend the core wire. Furthermore, since the extension line may be bent while being extended, whether or not to extend it is determined based on the distance and angle. That is, FIG. 7 is a diagram for explaining judgment based on distance, where 71 is a skeleton vector that is the basis of extension, 72 is the first extended skeleton, 73 is the nth extended skeleton, and 74 is the skeleton vector 71. A line 75.76 connecting the end points of 73 is the distance di, d2 between the line 74 and the end point 77.78. If this distance di, d2 is larger than a certain threshold,
The core vector 71 is not extended to the core vector 72. FIG. 8(a) is a diagram for explaining judgment based on angle, where 81 is a skeleton vector on the It is located at the origin of the axis, and 83 is a line that serves as a threshold when determining extension. If the core line vector 84 crosses the threshold line 83 and appears on the right side, no extension is performed. The reason why the threshold line 83 is provided offset from the origin is that the extension core line may change its direction significantly in a minute section as shown in FIG. 8(b), and even in such cases, the extension This is to make it possible. Through the above processing, an extension line serving as a reference for the hatching pattern is obtained, and the slope of the extension line becomes the slope of the hatching pattern. (2) Process for finding spacing between parallel lines FIG. 9(a) is a diagram for explaining the process for finding an extension line constituting a hatching pattern adjacent to a reference hatching pattern. Reference numeral 91 denotes a hatching pattern composition line that serves as a reference (out of extension lines, those determined to constitute a hatching pattern are referred to as pattern composition lines), 92 a search starting point, and 93 a search direction, 94 is core line vector, 95
is an extension of the core line. Using the end of the hatching pattern constituent line 91 as a search starting point 92, an adjacent core line 94 in the normal direction 93 is searched for. If the slope of the extension line 95 formed by connecting these core lines is close to the reference slope, the extension line 95 becomes the second pattern forming line. Then, the distance between these two pattern constituent lines becomes the interval between the hatching patterns. On the other hand, if the slope of the extension line 95 is significantly different from the standard, another extension line must be found. FIG. 9(b) is a diagram for explaining the process of searching for another extension line, in which an end point 96 of an extension line 95 with a greatly different slope is mapped onto the hatching pattern constituent line 91 (end point 97).
, moves the search starting point from the initial starting point 92 to the end point 98 side. From that point 98, the core wire 99 is cast in the same manner as described above.
This process is repeated until an extension line whose slope is close to the reference slope is found. Extraction process of dotted hatching pattern: In the case of a dotted pattern, the size of the dot is determined from the closed loop size of the contour vector. Therefore, the size of the dotted hatching pattern can be determined by averaging the sizes of the closed loops within the rectangular area. FIG. 10 shows the data format of the hatching pattern obtained as described above. The type of pattern represents a parallel line or a point, and pattern data 1 represents the slope of the parallel line, and the size of the point when it is a point.
represents the interval when it is a parallel line, and does not write anything when it is a point. Processing for Extracting Hatching Regions: The operation of the hatching region extracting section 6 to extract regions from the above-mentioned hatching pattern data will be described in detail below. ■When the hatching pattern is parallel lines Figure 11 shows the procedure for extracting a parallel line hatching area.In step 111, extension lines that make up the pattern are searched for, links are created between adjacent constituent lines, and in step 112
Now, trace the end points of the component line from that link to find the area external line. The detailed processing procedure of step 111 is explained in the 12th section.
FIG. 13 shows the detailed processing procedure of step 112. After explaining the definitions of terms used in FIGS. 12 and 13, the processing in FIGS. 12 and 13 will be explained in detail. 14(a) and 14(b) are diagrams for defining the starting point and ending point of the extended line, and the end point of the extended line is on the upper side (142
) or the point on the left side (144) is the starting point, therefore, the end points 143 and 145 are the ending points, and the right side from the ending point to the starting point is the R side and the left side is the L side. Note that θ is an angle with respect to the X axis. Returning to FIG. 12, the process starts from the starting point of the reference line obtained by the hatching pattern extraction process described above (step 1201). From this starting point, Fig. 9(a),
According to the processing procedure shown in FIG. 9(b), an adjacent component line on the R side is searched for (steps 1202 and 1203). However, at this time, even if one component line is found, the process does not end. The search start point is moved as shown in FIG. 9(b), and the process is continued until the search start point is located at the end point. When the processing on the R side is completed, the constituent lines are similarly searched on the L side (steps 1204 and 1205). In this way, the columns of adjacent constituent lines on the R side and L side of one constituent line are determined, and a table of data columns as shown in FIG. 15 is created. The number of constituent lines is written in the part 151, and the number of the constituent lines given in the order found by the search is written in the part 152. Next, in this table, search processing on the R side and L side is similarly performed for the constituent lines for which the above search processing has not been completed (steps 1208 and 1209). Furthermore, if a new constituent line is found, the same search process is performed for that constituent line (steps 1206 and 120).
? ). The search process is performed on all the constituent lines numbered in this way, and the process ends. When the search process is completed and the links between the component lines are determined, the area external lines are extracted according to the processing procedure shown in FIG. FIG. 16 shows an example for explaining the extraction of this area external line. M is the component line numbered N and M, respectively. al, a2. a3 is the starting point of the constituent lines N, M, and bl, b2 . b3 is the end point, and 89 from sl represents the core line vector and the connecting vector. Also, Fig. 17 is a table showing the links between the component lines N and M.
17] is a list on the R side of the configuration line N, and 172 is a list on the L side of the configuration line. Hereinafter, the area external line extraction process will be described in detail with reference to FIGS. 16 and 17. First, the process starts from the starting point of the reference line (step 13
01). Next, the next point constituting the polygon representing the area is searched for on the R side from the starting point of the reference line. That is, with reference to the table (Fig. 17) of the constituent line of the current point of interest (this is referred to as N in Fig. 16), the list on the R side (
It is checked whether a constituent line exists at 171) in FIG. 17 (step 1302). If a constituent line exists (constituent line K), list on the L side of the constituent line (172 in Fig. 17)
In , the order of component line N in the list is checked. At this time, if N is not the head of the list as shown in the L side list 172 in FIG. The contour is connected from al to b2 (steps 1303.130
4), s2 becomes the external line. Then, the list on the L side is examined from this end point (step 1308). When there is no component line M, the process is moved to component line K (step 1305), and the list on the R side is further examined (step 1).
302), repeat the same process as described above. Through this process, the outline of the area is connected from al to 83. Furthermore, in step 1302, if the list on the R side of the component line of interest is empty, that is, if there is no component line K, the process is moved from the starting point a1 of the component line of interest to the end point bl (step 1307), Next, the list on the L side is examined (step 1308). When proceeding to the L side, the process is completely opposite to the case where the process proceeds to the R side described above. In other words, when checking the list on the L side, you will trace the end point of the component line, so check the last number of the L side list of the component line of interest, and
Whether or not processing proceeds from side to R side (opposite to the case in Figure 16) is determined by checking in the list on the R side of the next component line (Figure 17).
(corresponding to the list 172 in FIG. 17), and by checking whether there is another component line (corresponding to the position below N in FIG. 17) after the component line of interest (steps 1308 to 13). In this way, while tracing the end points, the process returns to the point where the process started, and the process ends. By connecting the end points of the constituent lines traced through the above process, a polygon representing the area is extracted. FIG. 18 is a list of point sequences in which the coordinates of the end point of interest are recorded each time the end point moves. In 181, the number of points is entered, and in 182, the coordinates of each point are entered. However, the first and last coordinates of the list are the same. (2) When the hatching pattern is dots FIG. 19 is a diagram for explaining the process of extracting a hatching area using dots. Origin 19 of the rectangle 191 mentioned earlier
2 toward the negative direction of the X-axis, a contour vector 194 inside the external line 193 is searched. The closed loop of the found contour vector 194 is larger than the previous rectangle 191,
If the rectangle 191 is included, the search ends; otherwise, the search is continued in the negative direction of the X axis. A closed loop of contour vectors that encompasses this rectangle becomes the contour inside the external line of the area, so by recording the row of end points 195 of the contour vector obtained by this process in the list shown in FIG. A polygon representing the area is extracted.
以上、説明したように、本発明によれば、以下に記載さ
れるような効果を奏することができる。
■ハツチング領域内に矩形領域を指定することによって
、自動的に平行線によるハツチングパターンかあるいは
点によるハツチングパターンかを判別することができ、
また同時に線の傾き、間隔更にはその位置情報も検出す
ることができる。
■線データから平行線によるハツチング領域を多角形の
データとして抽出することができるので該ハツチング領
域を多角形として処理可能となり従って該領域に対する
変形処理を簡単に行うことができる。更に、領域内のハ
ツチングパターンの清書(手書きのハツチングパターン
を登録されたきれいなパターンに置き換える)、変更(
例えば、実線のパターンを破線のパターンに変更)も容
易に行うことができる。
■同様に、線データから点によるハツチング領域を多角
形のデータとして抽出することができるので、該ハツチ
ング領域を多角形として処理可能となり、従って該領域
に対する変形処理を簡単に行うことができる。As described above, according to the present invention, the following effects can be achieved. ■By specifying a rectangular area within the hatching area, it is possible to automatically determine whether the hatching pattern is based on parallel lines or points.
At the same time, the inclination and spacing of the lines as well as their position information can be detected. (2) Since the hatched area formed by parallel lines can be extracted from the line data as polygonal data, the hatched area can be processed as a polygon, and the area can therefore be easily transformed. In addition, you can clean up the hatching pattern in the area (replace the hand-drawn hatching pattern with a registered clean pattern), change it (
For example, changing a solid line pattern to a broken line pattern can be easily performed. (2) Similarly, since a hatched area formed by points can be extracted from line data as polygonal data, the hatched area can be processed as a polygon, and therefore the area can be easily transformed.
第1図は本発明の一実施例に係る機能ブロック図、第2
図は矩形領域指定部の構成を示す図、第3図(a)、第
3図(b)はそれぞれ平行線によるハツチングパターン
、点によるハツチングパターンとして判定する図、第4
図は芯線ベクトルの端点に次の芯線ベクトルが接続して
いる図、第5図は端点間を結ぶつなぎベクトルによって
、2本の芯線ベクトルが結ばれている図、第6図はつな
ぎベクトルに他の芯線ベクトルが結ばれている図、第7
図は距離による判断を説明するための図、第8図(a)
、第8111 (b)は角度による判断を説明するため
の図、第9図(a)は基準となるハツチングパターンの
隣にある、ハツチングパターンを構成している延長線を
探す処理を説明するための図、第9図(b)は別の延長
線を探す処理を説明するための図、第10図はハツチン
グパターンのデータ形式を示す図、第11図は平行線ハ
ツチング領域の抽出処理手順を示すフローチャート、第
12図、第13図は抽出処理手順の詳細なフローチャー
ト、第14図(a)、第14図(b)は延長線の始点、
終点を定義するための図、第15図はデータ列のテーブ
ルを示す図、第16図は領域外部線の抽出を説明するた
めの図、第17図は構成線N、M、に間のリンクを示し
たテーブル、第18図は注目端点が移動する毎にその座
標を記録した点列のリスト、第19図は点によるハツチ
ング領域の抽出処理を説明するための図である。
l・・・画像入力部、 2・・・2値化処理部、3・・
・輪郭ベクトル生成部、 4・・・芯層化処理部。
5・・・矩形領域指定部、
6・・・ハツチング領域抽出部、 21・・・表示装置
22・・・マウス、
23・・・矩形内パターン情報抽出部、24・・・外部
線。
第3図(0−)
第3図(ト)
第4図
蝙さ・・
第6図
第7図
第8図(良)
イ
第S図(b)
第9図(α)
第9図(す
971心汽・
第11図
第10図
第14図
(α)
(b)
第15図
第16図
第17図
第18図
第19図FIG. 1 is a functional block diagram according to an embodiment of the present invention, and FIG.
The figure shows the configuration of the rectangular area specifying section, Figures 3(a) and 3(b) are diagrams for determining a hatching pattern based on parallel lines and a hatching pattern based on points, respectively.
The figure shows an endpoint of a core vector connected to the next core vector, Figure 5 shows two core vectors connected by a connecting vector connecting the end points, and Figure 6 shows a connecting vector and other connections. Diagram where the core line vectors of are connected, 7th
The figure is a diagram for explaining judgment based on distance, Fig. 8 (a)
, 8111 (b) is a diagram for explaining the judgment based on angle, and FIG. 9 (a) is for explaining the process of searching for an extension line constituting the hatching pattern next to the reference hatching pattern. Figure 9(b) is a diagram for explaining the process of searching for another extension line, Figure 10 is a diagram showing the data format of a hatching pattern, and Figure 11 is a diagram for extracting a parallel line hatching area. A flowchart showing the processing procedure, FIGS. 12 and 13 are detailed flowcharts of the extraction processing procedure, and FIGS. 14(a) and 14(b) show the starting point of the extension line,
A diagram for defining the end point, Figure 15 is a diagram showing a table of data columns, Figure 16 is a diagram for explaining extraction of area external lines, and Figure 17 is a link between constituent lines N and M. FIG. 18 is a list of point sequences in which the coordinates of the end point of interest are recorded each time it moves, and FIG. 19 is a diagram for explaining the process of extracting a hatching area using points. l...Image input section, 2...Binarization processing section, 3...
- Contour vector generation unit, 4... Core layering processing unit. 5... Rectangular area designation section, 6... Hatching area extraction section, 21... Display device 22... Mouse, 23... Rectangular pattern information extraction section, 24... External line. Figure 3 (0-) Figure 3 (G) Figure 4 Flies... Figure 6 Figure 7 Figure 8 (Good) Figure S (b) Figure 9 (α) Figure 9 (S) 971 Shinki Figure 11 Figure 10 Figure 14 (α) (b) Figure 15 Figure 16 Figure 17 Figure 18 Figure 19
Claims (5)
ら芯線化し、該入力画像を芯線ベクトルと該芯線ベクト
ルを結ぶつなぎベクトルに変換することにより線画デー
タを出力する方法において、図形中のハッチングによっ
て表された領域に矩形領域を指定し、該矩形領域内の輪
郭ベクトルから前記ハッチングのパターンを判定するこ
とを特徴とするハッチング領域抽出方法。(1) In a method of outputting line drawing data by vectorizing the outline of a binarized input image, converting it into skeleton lines, and converting the input image into a connecting vector connecting the skeleton vectors, A hatching area extraction method comprising: specifying a rectangular area in the area represented by hatching, and determining the hatching pattern from a contour vector within the rectangular area.
矩形よりも大きければ、前記ハッチングパターンは平行
線によって構成されていると判定し、該閉ループが前記
矩形よりも小さければ、点によるハッチングパターンと
して判定することを特徴とする請求項(1)記載のハッ
チング領域抽出方法。(2) If the closed loop composed of the contour vector is larger than the rectangle, it is determined that the hatching pattern is composed of parallel lines; if the closed loop is smaller than the rectangle, it is determined that it is a hatching pattern of points. The hatching area extraction method according to claim 1, characterized in that:
からハッチングパターンを構成する構成線を探索し、隣
合う構成線間にリンクを張り、該リンクから構成線の端
点をたどって領域外部線を求めることにより平行線ハッ
チング領域を抽出することを特徴とするハッチング領域
抽出方法。(3) Search for the constituent lines that make up the hatching pattern from the slope of the hatching pattern and the spacing between the patterns, create links between adjacent constituent lines, and trace the end points of the constituent lines from the links to find the outside line of the area. A hatching area extraction method characterized by extracting a parallel line hatching area.
する請求項(3)記載のハッチング領域抽出方法。(4) The hatching area extraction method according to claim (3), further comprising recording coordinates of end points of the constituent lines.
索し、該輪郭ベクトルの端点の列を求めることによって
、点によるハッチング領域を抽出することを特徴とする
ハッチング領域抽出方法。(5) A hatching area extraction method characterized by extracting a hatching area by points by searching for a contour vector inside an external line constituting a figure and finding a sequence of end points of the contour vector.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2238464A JPH04117579A (en) | 1990-09-07 | 1990-09-07 | Hatching area extracting method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2238464A JPH04117579A (en) | 1990-09-07 | 1990-09-07 | Hatching area extracting method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04117579A true JPH04117579A (en) | 1992-04-17 |
Family
ID=17030624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2238464A Pending JPH04117579A (en) | 1990-09-07 | 1990-09-07 | Hatching area extracting method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04117579A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015125609A (en) * | 2013-12-26 | 2015-07-06 | 株式会社ケンシュー | Image processing method, image processing program, image processing device and industrial product |
-
1990
- 1990-09-07 JP JP2238464A patent/JPH04117579A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015125609A (en) * | 2013-12-26 | 2015-07-06 | 株式会社ケンシュー | Image processing method, image processing program, image processing device and industrial product |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wenyin et al. | From raster to vectors: extracting visual information from line drawings | |
Brown et al. | Handprinted symbol recognition system | |
JP2608571B2 (en) | Apparatus and method for vectorizing input scanned image data | |
US7336825B2 (en) | Segmenting a composite image via minimum areas | |
JPH04117579A (en) | Hatching area extracting method | |
JPH11134509A (en) | Method for drawing recognizing process and method for construction drawing recognizing process | |
JPH0981740A (en) | Diagram input device | |
Ramesh | A generalized character recognition algorithm: a graphical approach | |
Ablameyko et al. | A complete system for interpretation of color maps | |
JP2007213255A (en) | Table recognition device and computer program | |
EP1538547B1 (en) | Method and device for extracting skeletal data from image data | |
JPH04236678A (en) | Method for shaping area | |
JP2867650B2 (en) | Symbol candidate area detection method | |
JPH0357509B2 (en) | ||
JPH04117580A (en) | Hatching area extracting method | |
JPH05751B2 (en) | ||
JPH02146681A (en) | Contour line extracting system | |
JP2727755B2 (en) | Character string recognition method and apparatus | |
JP2595361B2 (en) | Inside / outside judgment method for figures consisting of broken lines | |
JPH0434653A (en) | Drawing processor | |
JP3358433B2 (en) | Interactive drawing recognition processing method | |
JPH0348379A (en) | Character recognizing system | |
JP2006107290A (en) | Image processor and method thereof | |
Ablameyko et al. | Recognition of thick closed polygons in engineering drawing images | |
JP2644812B2 (en) | Symbol recognition method |