JPH02264375A - 鎖線抽出方法 - Google Patents
鎖線抽出方法Info
- Publication number
- JPH02264375A JPH02264375A JP8606589A JP8606589A JPH02264375A JP H02264375 A JPH02264375 A JP H02264375A JP 8606589 A JP8606589 A JP 8606589A JP 8606589 A JP8606589 A JP 8606589A JP H02264375 A JPH02264375 A JP H02264375A
- Authority
- JP
- Japan
- Prior art keywords
- line
- loop
- straight line
- lines
- candidates
- 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
Landscapes
- Image Analysis (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は1機械図面の認識処理等において1図面中の一
点鎖線等を抽出する方法に関する。
点鎖線等を抽出する方法に関する。
機械図面においては中心線等として一点鎖線が用いられ
ている。したがって、機械図面認識のためには、−点鎖
線の抽出が必要である。
ている。したがって、機械図面認識のためには、−点鎖
線の抽出が必要である。
従来1図面全体に対し細線化を行い、外接矩形のサイズ
によって線分候補と文字候補に分け、開放端を持つ線分
候補より点を捜し、線分の長さ。
によって線分候補と文字候補に分け、開放端を持つ線分
候補より点を捜し、線分の長さ。
点までの長さを求め、これを作図上の規格(例えばJI
S規格)と比較することによって、−点鎖線を抽出して
いる。
S規格)と比較することによって、−点鎖線を抽出して
いる。
なお、論文「図面自動入力のための破線・鎖線の認識ア
ルゴリズム」 (嶋田はか;電子通信学会論文誌’85
15.Vo1.J69−D、Na5.pp。
ルゴリズム」 (嶋田はか;電子通信学会論文誌’85
15.Vo1.J69−D、Na5.pp。
759−770)において述べられている鎖線抽出方法
も、基本的には前述の方法と同様である。
も、基本的には前述の方法と同様である。
しかし、線部分の長さ、線間の長が不正確であったり不
安定な一点鎖線の抽出を失敗しやすく、特に手書き図面
では一点鎖線の抽出精度が極端に悪化することがある。
安定な一点鎖線の抽出を失敗しやすく、特に手書き図面
では一点鎖線の抽出精度が極端に悪化することがある。
本発明の目的は、線部分の長さや線間の間隔などが不正
確あるいは不安定な一点鎖線等の鎖線も確実に抽出でき
、また高速処理が可能な鎖線抽出方法を提供することに
ある。
確あるいは不安定な一点鎖線等の鎖線も確実に抽出でき
、また高速処理が可能な鎖線抽出方法を提供することに
ある。
図面認識処理においては1図面の2値画像の黒画素追跡
による輪郭ベクトル化を行い、輪郭ベクトルの外接矩形
の与イズによる線分候補と文字候補の分類を行い、線分
候補の輪郭ベクトルのペアによる芯線抽出を行うことが
ある。
による輪郭ベクトル化を行い、輪郭ベクトルの外接矩形
の与イズによる線分候補と文字候補の分類を行い、線分
候補の輪郭ベクトルのペアによる芯線抽出を行うことが
ある。
なお、このような輪郭ベクトル化と芯線化については、
論文「多次元データ構造を用いた図面処理」 (大沢ほ
か;電子通信学会論文誌’85/4゜Vol、J 68
−D、 &4. pp、845−852)や論文「輪郭
線をベースにした芯線化方式の改良」(大沢ほか;情報
処理学会第37口金国大会e PP−1600−160
1)等に述べられている。
論文「多次元データ構造を用いた図面処理」 (大沢ほ
か;電子通信学会論文誌’85/4゜Vol、J 68
−D、 &4. pp、845−852)や論文「輪郭
線をベースにした芯線化方式の改良」(大沢ほか;情報
処理学会第37口金国大会e PP−1600−160
1)等に述べられている。
本発明は、そのような芯線化によって抽出された芯線よ
り確実な直線を抽出し、両端が開放端で。
り確実な直線を抽出し、両端が開放端で。
かつ相互間に文字候補としての輪郭ベクトルが存在する
、同一直線上にあると判定される確実な直線群を鎖線と
して抽出することを特徴とするものである。
、同一直線上にあると判定される確実な直線群を鎖線と
して抽出することを特徴とするものである。
このように本発明の鎖線抽出方法は、−点鎖線等の鎖線
の線部分の長さ、点部分との間隔等によらない方法であ
るため、線部分の長さ等が不正確あるいは不安定な一点
鎖線等も確実に抽出することができ、またベクトル処理
であるため高速処理が可能である。
の線部分の長さ、点部分との間隔等によらない方法であ
るため、線部分の長さ等が不正確あるいは不安定な一点
鎖線等も確実に抽出することができ、またベクトル処理
であるため高速処理が可能である。
以下、図面を用い1本発明の一実施例を説明する。
第1図は本発明を実施するためのハードウェア構成例を
示す、1は機械図面等の2値画像データを記憶するため
の画像メモリで、その2値画像データは外部のスキャナ
゛−等から入出力インタフェース回路2を介して入力す
る。3は図面認識のためのプログラム等を格納したプロ
グラムメモリである。このプログラムには1輪郭ベクト
ル化、芯線化等の各種プログラム、および本発明による
一点鎖線抽出処理のためのプログラムが含まれている。
示す、1は機械図面等の2値画像データを記憶するため
の画像メモリで、その2値画像データは外部のスキャナ
゛−等から入出力インタフェース回路2を介して入力す
る。3は図面認識のためのプログラム等を格納したプロ
グラムメモリである。このプログラムには1輪郭ベクト
ル化、芯線化等の各種プログラム、および本発明による
一点鎖線抽出処理のためのプログラムが含まれている。
4はこれらのプログラムを実行するCPUである。5は
処理によって得られたデータを一時的に記憶するデータ
メモリである。
処理によって得られたデータを一時的に記憶するデータ
メモリである。
本発明に直接関係する処理の流れを第2図に示す、この
フローチャートに沿って、各処理ステップの内容を順に
説明する。
フローチャートに沿って、各処理ステップの内容を順に
説明する。
ステップ■
図面の2値画像データを、入力し画像メモリ1に記憶す
る。
る。
ステップ■
入力された2値画像の黒画素を追跡することによって輪
郭ベクトルの抽出を行う、同時に輪郭ベクトルの塊の外
接矩形のサイズとある閾値とを比較し、閾値を越えると
きには、その輪郭ベクトルを線分候補として、閾値以下
のときには、その輪郭ベクトルを文字候補とする。
郭ベクトルの抽出を行う、同時に輪郭ベクトルの塊の外
接矩形のサイズとある閾値とを比較し、閾値を越えると
きには、その輪郭ベクトルを線分候補として、閾値以下
のときには、その輪郭ベクトルを文字候補とする。
ステップ■
線分候補としての輪郭ベクトルのデータより、ペアをな
す輪郭ベクトルを捜し、その中心線を芯線として抽出す
る。
す輪郭ベクトルを捜し、その中心線を芯線として抽出す
る。
以上の輪郭ベクトル化および芯線化は、前述の論文「多
次元データ構造を用いた図面処理」および「輪郭線をベ
ースにした芯線化方式の改良」に述べられた方法による
とするが、他の方法によってもよい。
次元データ構造を用いた図面処理」および「輪郭線をベ
ースにした芯線化方式の改良」に述べられた方法による
とするが、他の方法によってもよい。
例えば第3図に示す入力画面の場合Jその水平の一点鎖
線部分に対する輪郭ベクトル化および芯線化の処理結果
(部分)は第4図のようになる。
線部分に対する輪郭ベクトル化および芯線化の処理結果
(部分)は第4図のようになる。
以下の説明において、この処理結果を例に用いる。
なお、第4図において、細実線は輪郭ベクトル。
太実線は芯線のベクトル、点線は論文「輪郭線をベース
にした芯線化方式の改良」に述べられているglueベ
クトルである。
にした芯線化方式の改良」に述べられているglueベ
クトルである。
また、第5図は「芯線のループ」についての説明図であ
る。この図に示す例において、゛「芯線AOを含むルー
プ」とは、ベクトルAO,Al、A2により形成される
一つのセグメントを意味する。
る。この図に示す例において、゛「芯線AOを含むルー
プ」とは、ベクトルAO,Al、A2により形成される
一つのセグメントを意味する。
また、このループの端点とは、ベクトルAOの始点とベ
クトルA2の終点のことである。
クトルA2の終点のことである。
さて、ステップ■からステップ■は、芯線化処理によっ
て抽出された芯線の中から、確実な直線を抽出する処理
部分である。また、ステップ[相]からステップ@は、
−点鎖線を構成する確実な直線群を抽出する処理部分で
ある。以下、各ステップについて説明する。
て抽出された芯線の中から、確実な直線を抽出する処理
部分である。また、ステップ[相]からステップ@は、
−点鎖線を構成する確実な直線群を抽出する処理部分で
ある。以下、各ステップについて説明する。
ステップ■
本処理の(処理済みフラグが付加されていない)芯線A
を含むループLAを捜す、それが見つかったときは(第
4図ではAが未処理であり、ループLAが見つかったと
する)、ステップ■に進むが、見つからないときはステ
ップ0に進む。
を含むループLAを捜す、それが見つかったときは(第
4図ではAが未処理であり、ループLAが見つかったと
する)、ステップ■に進むが、見つからないときはステ
ップ0に進む。
ステップ■
前ステップで見つかったループLAの両端点間の長さと
1文字サイズとを比較し、両端点長さが1文字サイズを
越えるときにはステップ■に進むが、そうでないときは
ステップ■に進む。
1文字サイズとを比較し、両端点長さが1文字サイズを
越えるときにはステップ■に進むが、そうでないときは
ステップ■に進む。
ステップ■
ループLAを「確実な直線」とするとともに、ループL
Aに含まれる芯線に処理済みフラグを付加しステップ■
に戻る。すなわち、このステップに処理が進むようなル
ープLAは、他の線分との交差や屈曲による特徴点によ
って途中で短く区切られず長い直線であるので、この処
理段階で確実な直線として抽出する。他方、特徴点によ
って短い部分に区切られた線分については、ステップ■
以下の処理によって、1本であるべき線分を連結した確
実な直線としての条件を調べる。
Aに含まれる芯線に処理済みフラグを付加しステップ■
に戻る。すなわち、このステップに処理が進むようなル
ープLAは、他の線分との交差や屈曲による特徴点によ
って途中で短く区切られず長い直線であるので、この処
理段階で確実な直線として抽出する。他方、特徴点によ
って短い部分に区切られた線分については、ステップ■
以下の処理によって、1本であるべき線分を連結した確
実な直線としての条件を調べる。
ステップ■
ループLAに接する直進性の良いループを左右両方向に
ついて捜し、見つかったときはステップ■の処理に進む
が、見つからないときはループLAに含まれる芯線に処
理済みフラグを付加してステップ■に戻る。
ついて捜し、見つかったときはステップ■の処理に進む
が、見つからないときはループLAに含まれる芯線に処
理済みフラグを付加してステップ■に戻る。
ここで直進性が良いとは、例えば第6図に示すように、
ループLAの両端点を結ぶ直線と、それに接するループ
LBの両端点を結ぶ直線とのなすある閾値以下であると
いうことである。
ループLAの両端点を結ぶ直線と、それに接するループ
LBの両端点を結ぶ直線とのなすある閾値以下であると
いうことである。
直線性の良いループが二つ以上見つかったときには、最
も直線性が良い(角度、が最小の)ループを選ぶ、見つ
かった直線性の良いループの先についても、同様に直線
性の良いループを捜す、この探索は、直線性の良いルー
プが見つからなくなるまで続ける。
も直線性が良い(角度、が最小の)ループを選ぶ、見つ
かった直線性の良いループの先についても、同様に直線
性の良いループを捜す、この探索は、直線性の良いルー
プが見つからなくなるまで続ける。
第4図に示した例においては、ループLAの左側に接す
るループはないので、左方向の探索は終わる。他方、右
側にはLB、LC,LD、LE。
るループはないので、左方向の探索は終わる。他方、右
側にはLB、LC,LD、LE。
LF、LG、LHのループが接するが、その中で直線性
が最もよいループはLBである。また、このループLB
のさらに右側にも、直線性の良いループLIが見つかる
。その先には見つからないので、ループLIで右方向の
探索は終了し、ループLAからループLIまでの3個の
ループが直線候補となる。
が最もよいループはLBである。また、このループLB
のさらに右側にも、直線性の良いループLIが見つかる
。その先には見つからないので、ループLIで右方向の
探索は終了し、ループLAからループLIまでの3個の
ループが直線候補となる。
ステップ■
ステップ■で見つかった直線候補全体の両端点を結ぶ仮
想直線に、直線候補中の各ループ内の各芯線の端点より
垂線を下ろし、その足までの長さが所定の線幅を越えな
いかチエツクする。
想直線に、直線候補中の各ループ内の各芯線の端点より
垂線を下ろし、その足までの長さが所定の線幅を越えな
いかチエツクする。
第7図および第8図は、ループLA、LBについての判
定の説明図である。
定の説明図である。
このような仮想直線に下ろされた垂線の長さが一つでも
線幅を越えるときは、直線候補となった全芯線に処理済
みフラグを付加し、ステップ■に進む、全ての垂線の長
さが線幅以下のときは、ステップ■に進む。
線幅を越えるときは、直線候補となった全芯線に処理済
みフラグを付加し、ステップ■に進む、全ての垂線の長
さが線幅以下のときは、ステップ■に進む。
ステップ■
直線候補を確実な直線とし、それに含まれる全芯線に処
理済みフラグを付加してステップ■に進む、。
理済みフラグを付加してステップ■に進む、。
以上のようにして、芯線より確実な直線が順次抽出され
1図面上の全ての芯線が処理済みとなると、ステップ[
相]以下の処理に進む。
1図面上の全ての芯線が処理済みとなると、ステップ[
相]以下の処理に進む。
ステップ[相]
抽出された確実な直線の中で、ステップ■からステップ
■と同様の処理によって直線性の良いものを−つの直線
として抽出する。すなわち、さらに長い直線候補を抽出
する。ただし、両端点が開放端でない候補は排除する。
■と同様の処理によって直線性の良いものを−つの直線
として抽出する。すなわち、さらに長い直線候補を抽出
する。ただし、両端点が開放端でない候補は排除する。
ステップ■
ステップ[相]で抽出された直線候補の両端方向に、所
定の距離内にある直線候補を捜し、それぞれの角度差が
閾値以下のときは、その複数の直線候補を同一直線上に
あるものとする。これは同一直線上の直線候補が見つか
らなくなるまで、各方向に続ける。
定の距離内にある直線候補を捜し、それぞれの角度差が
閾値以下のときは、その複数の直線候補を同一直線上に
あるものとする。これは同一直線上の直線候補が見つか
らなくなるまで、各方向に続ける。
第4図に示した例では、ステップ[相]でループLA、
LB、LCと、ループLJ、LK、LL、LMがそれぞ
れ直線候補として抽出され、ステップ0でループLAか
らループLMまでが同一直線上にあると判定される。た
だし、第3図の入力図面から明らかなように、ループL
Mの右側にも実際には同様の直線候補がある。
LB、LCと、ループLJ、LK、LL、LMがそれぞ
れ直線候補として抽出され、ステップ0でループLAか
らループLMまでが同一直線上にあると判定される。た
だし、第3図の入力図面から明らかなように、ループL
Mの右側にも実際には同様の直線候補がある。
ステップ@
同一直線上にあると判定された直線候補の端点間に1輪
郭ベクトル化時に文字候補として分離された輪郭ベクト
ルの塊が一つあるか調べ、それがあるときは、同一直線
上の直線候補を一点鎖線とする。第4図の例では、ルー
プLAからLIまでの直線候補と、ループLJからLM
までの直線候補との間に文字候補の輪郭ベクトル塊があ
るので、−点鎖線となる。
郭ベクトル化時に文字候補として分離された輪郭ベクト
ルの塊が一つあるか調べ、それがあるときは、同一直線
上の直線候補を一点鎖線とする。第4図の例では、ルー
プLAからLIまでの直線候補と、ループLJからLM
までの直線候補との間に文字候補の輪郭ベクトル塊があ
るので、−点鎖線となる。
実際には、第4図の例の場合、第3図の入力図面から明
らかなように、−点鎖線はループLMの右側へも延びて
いるので、その右側部分も含めて一つの一点鎖線として
統合されて抽出されることになる。
らかなように、−点鎖線はループLMの右側へも延びて
いるので、その右側部分も含めて一つの一点鎖線として
統合されて抽出されることになる。
第3図の入力図面上の垂直の一点鎖線も、同様の処理に
よって抽出される。
よって抽出される。
なお、この実施例では一点鎖線の抽出を目的としたので
、ステップ@で直線候補の間に一つの文字候補をチエツ
クしたが、二点鎖線を抽出する場合には二つの文字候補
の存在をチエツクすることになる。また、直線候補の間
に存在する文字候補の個数を調べることによって、−点
鎖線と二点鎖線との識別抽出を行うことも可能である。
、ステップ@で直線候補の間に一つの文字候補をチエツ
クしたが、二点鎖線を抽出する場合には二つの文字候補
の存在をチエツクすることになる。また、直線候補の間
に存在する文字候補の個数を調べることによって、−点
鎖線と二点鎖線との識別抽出を行うことも可能である。
以上の説明から明らかなように、本発明によれば、鎖線
の線部分と点部分の長さや間隔の関係によらず鎖線を抽
出するため、手書きの鎖線のように線部分の長さや線部
分と点部分の間隔が不正確あるいは不安定な場合でも、
安定確実な鎖線抽出が可能となり、またベクトル処理で
あるので高速の鎖線抽出が可能となる。
の線部分と点部分の長さや間隔の関係によらず鎖線を抽
出するため、手書きの鎖線のように線部分の長さや線部
分と点部分の間隔が不正確あるいは不安定な場合でも、
安定確実な鎖線抽出が可能となり、またベクトル処理で
あるので高速の鎖線抽出が可能となる。
第1図は本発明を実施するためのハードウェア構成の一
例を示すブロック図、第2図は処理の概略フローチャー
ト、第3図は入力図面の一例を示す図、第4図は第3図
の入力図面の一部についての輪郭ベクトル化・芯線化処
理の結果を示す図。 第5図はループの説明図、第6図はループの直線性の説
明図、第7図および第8図は線幅による判定の説明図で
ある。 ■・・・画像メモリ、 3・・・プログラムメモリ。 4・・・CPU、 5・・・データメモリ。 第1図 t5図 −−−−−−−に竺5襞へ゛フトシ ーーーー31ueべ′フトIし
例を示すブロック図、第2図は処理の概略フローチャー
ト、第3図は入力図面の一例を示す図、第4図は第3図
の入力図面の一部についての輪郭ベクトル化・芯線化処
理の結果を示す図。 第5図はループの説明図、第6図はループの直線性の説
明図、第7図および第8図は線幅による判定の説明図で
ある。 ■・・・画像メモリ、 3・・・プログラムメモリ。 4・・・CPU、 5・・・データメモリ。 第1図 t5図 −−−−−−−に竺5襞へ゛フトシ ーーーー31ueべ′フトIし
Claims (1)
- (1)2値画像の黒画素追跡により抽出された輪郭ベク
トルのペアより求められた芯線より確実な直線を抽出し
、両端が開放端で、かつ相互間に文字候補としての輪郭
ベクトルが存在する、同一直線上にあると判定される確
実な直線群を鎖線として抽出することを特徴とする鎖線
抽出方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8606589A JPH02264375A (ja) | 1989-04-05 | 1989-04-05 | 鎖線抽出方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8606589A JPH02264375A (ja) | 1989-04-05 | 1989-04-05 | 鎖線抽出方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02264375A true JPH02264375A (ja) | 1990-10-29 |
Family
ID=13876298
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8606589A Pending JPH02264375A (ja) | 1989-04-05 | 1989-04-05 | 鎖線抽出方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH02264375A (ja) |
-
1989
- 1989-04-05 JP JP8606589A patent/JPH02264375A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5907631A (en) | Document image processing method and system having function of determining body text region reading order | |
| US4989258A (en) | Character recognition apparatus | |
| Chen et al. | Hybrid page segmentation with efficient whitespace rectangles extraction and grouping | |
| US5033104A (en) | Method for detecting character strings | |
| Song et al. | Line net global vectorization: an algorithm and its performance evaluation | |
| JP2823882B2 (ja) | 線画像ベクトル化方法 | |
| Xiao et al. | Knowledge-based English cursive script segmentation | |
| Sas et al. | Three-stage method of text region extraction from diagram raster images | |
| JPH02264375A (ja) | 鎖線抽出方法 | |
| JPH11134509A (ja) | 図面認識処理方法及び建築図面認識処理方法 | |
| JP2002063548A (ja) | 手書き文字認識方法 | |
| US20030123730A1 (en) | Document recognition system and method using vertical line adjacency graphs | |
| US6009194A (en) | Methods, systems and computer program products for analyzing information in forms using cell adjacency relationships | |
| Yu et al. | A form dropout system | |
| JPH02171977A (ja) | 線分と接触した文字の切出し方法 | |
| CN112183538A (zh) | 一种满文识别方法及系统 | |
| JP3344062B2 (ja) | カタカナ手書き文字切り出し回路 | |
| JPH02288978A (ja) | 図面処理方法 | |
| JPH08221506A (ja) | 帳票文書認識装置および帳票文書認識方法 | |
| JP2002063547A (ja) | 手書き文字認識方法 | |
| JPH0683890A (ja) | 図面自動入力装置における線種認識方法 | |
| JPH0746363B2 (ja) | 図面読取装置 | |
| JPH0256078A (ja) | 芯線の抽出方法 | |
| JPH07120361B2 (ja) | 機械図面の接触記号分離方式 | |
| JP3666903B2 (ja) | 画像処理方法および装置 |