JP3284768B2 - 円、円弧の認識方法 - Google Patents

円、円弧の認識方法

Info

Publication number
JP3284768B2
JP3284768B2 JP15399394A JP15399394A JP3284768B2 JP 3284768 B2 JP3284768 B2 JP 3284768B2 JP 15399394 A JP15399394 A JP 15399394A JP 15399394 A JP15399394 A JP 15399394A JP 3284768 B2 JP3284768 B2 JP 3284768B2
Authority
JP
Japan
Prior art keywords
circle
arc
center
vector
histogram
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.)
Expired - Fee Related
Application number
JP15399394A
Other languages
English (en)
Other versions
JPH0822540A (ja
Inventor
なぎさ 荻山
仁 古郡
小林  実
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.)
Meidensha Corp
Original Assignee
Meidensha Corp
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 Meidensha Corp filed Critical Meidensha Corp
Priority to JP15399394A priority Critical patent/JP3284768B2/ja
Publication of JPH0822540A publication Critical patent/JPH0822540A/ja
Application granted granted Critical
Publication of JP3284768B2 publication Critical patent/JP3284768B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、図面入力装置の図面
認識部における円、円弧の認識方法に関する。
【0002】
【従来の技術】一般に図面や文書をコンピュータに自動
入力する場合は、図形を折線近似して表現している。し
かし、折線近似のままでは、曲線と見なせるような部分
でも、直線の集まりとして表現される(例えば、始終点
座標系列で示されるような線分ベクトルの集合)。その
ため、上記部分を拡大したとき、自然な曲線が矩形の角
張った図形となってしまう。そこで、折線近似データか
ら曲線部と見なせる部分を認識し、元の図形の曲線部を
より正確に表現する必要がある。従来、折線近似データ
系列が円弧上にあることを求めるには次のような手段が
ある。
【0003】図13は中線交点を用いる手段で、この手
段は隣り合うベクトルVi,Vi+1の各中点を通り、ベク
トルVi,Vi+1に垂直な2つの直線qi,qi+1の交点Δ
1を円弧中心とするものである。なお、図13中、Δ2
はベクトルVi,Vi+1に垂直な2つの直線qi+1,qi+2
の交点であり、Δ3は同様に直線qi+2,qi+3の交点で
ある。
【0004】このように、図13に示す中線交点を用い
る手段では、円弧中心を2つのベクトルにより求めるこ
とができるけれども、ベクトルのバラツキを吸収できな
い問題があるとともに、2つ以上のベクトルを同一円弧
上のベクトルとして図のような交点Δ1、Δ2、Δ3…
…と拡張する場合、円弧中心候補点が不安定になる問題
がある。
【0005】また、図14のように法線交点を用いる手
段では、隣り合うベクトルViとVi+1で挟まれる座標点
を通り、ベクトルViとVi+1のなす角を2等分する直線
(法線)qiを求め、連続する2つの法線qi,qi-1
交点Δ1を円弧中心とするものである。この図14に示
す法線交点用いる手段は、図13に示す中線交点に比較
して円弧中心候補点が多少安定しているけれども、3つ
のベクトルが必要であるとともに、隣り合うベクトル長
がアンバランスの時、法線交点がΔ2、Δ3のように不
安定となる問題がある。上記2つの手段はいづれも、円
弧中心が不安定となって折線近似データから円弧部分を
精度よく認識できない問題がある。
【0006】このため、近年円弧中心を精度よく推定
し、誤差が最小となるようにして、円、円弧の中心を最
小2乗法を用いて求める手段が考えられるようなって来
た。この手段は次のようにして行われる。ここで、円の
中心(a,b)、半径rの円の方程式(x−a)2
(y−b)2=r2より、x2+y2+Ax+By+C=0
を得る。次に、あるベクトル座標群に対して最小2乗法
を用いて上記a,b,rを求める。次式はベクトル座標
群である。
【0007】
【数1】
【0008】とすると、上記式は次式のようになる。
【0009】
【数2】
【0010】ここで、A,B,Cを求め、a=−(1/
2)A,b=−(1/2)B,r=√(│a2+b2−C
│)によって、円の中心(a,b)と半径rが求まる。
【0011】
【発明が解決しようとする課題】次に、上記最小2乗法
を図面入力装置に適用して円あるいは円弧を認識する方
法について述べる。図面入力装置において、図形の輪郭
ベクトルや芯線ベクトルを用いて最小2乗法を行い、中
心/半径を求めた後に、これらのベクトル座標列が円で
あるか、円弧であれば、始角、終角が何度であるかを判
別計算する。このとき、図6のように、図示ST部分
で、ベクトル座標列の始点、終点が一致しているときに
は、円であると認識するのは簡単であるが、図7、図8
のようにベクトル座標列の始点、終点の位置関係にずれ
(図示丸で囲った部分)があったり、終点の一部が戻っ
たりしていると、ベクトル座標列だけでは、円と認識す
るのは難しい。このことは、図9の円弧の場合にも言え
ることで、中心と座標列の始点、終点が分かっていて
も、円弧の端が少し戻っていたり(図示丸で囲った部
分)すると、ベクトル座標列の始点、終点は不安定に成
り易い性質を持つことから、座標の始点、終点だけで
は、円の判別、円弧の始角、終角の算出をするには不充
分であり、結果的に円、円弧の認識率が低下してしま
う。
【0012】また、図10のような交差のある円は、ま
ず、90°の円弧を4つ検出した後、それらの円弧を、
合成して1つの円として認識する手段を取っている。ま
た、図11のような場合は、90°の円弧を3つ合成し
て270°の円弧として認識している。しかし、最初に
円弧を検出する際に、90°の円弧の始角、終角が正し
く算出されないと合成がしにくくなり、円、円弧の認識
率が低下する問題がある。
【0013】前記最小2乗法で中心、半径を求める式に
おいて、Σxi,Σyi,Σxi 2,Σyi 2,Σxi 2i
Σxii 2,Σxi 3,Σyi 3,Σxiiはコンピュータ
を用いて実行すると、演算がオーバーフローに至る可能
性がある。例えば、(xi,yi)=(0,0),(0,10),
(10,10),(10,0)の場合、Σxi=20,Σyi=20,Σ
i 2=200,Σyi 2=200,Σxi 2i=1000,Σxii 2
=1000,Σxi 3=2000,Σyi 3=2000,Σxii=100
となる。
【0014】一方、上記例と4点相互の関係が等しいサ
ンプル(xi,yi)=(100,100),(100,110),(110,
110),(110,100)の場合は、Σxi=420,Σyi=42
0,Σxi 2=44200,Σyi 2=44200,Σxi 2i=464100
0,Σxii 2=4641000,Σxi 3=4662000,Σyi 3=46
62000,Σxii=44100となり、積算結果が大きな値と
なってしまう。コンピュータの中で表現できる値の最大
値が4000000だったとすると、後の例では正常な演算結
果が得られないことになる。
【0015】このような演算ミスを発生しないようにす
るためには、通常は点の座標をそのまま用いず、点列の
重心や点列を完全に内包するような最小の四角形(外接
四角形)の中心などを原点とした座標に変換後、上記パ
ラメータを求める演算を行う。
【0016】前の例で(5,5)、後の例で(105,105)を
原点として見ると両者とも(xi,yi)=(-5,-5),
(-5,5),(5,5),(5,-5)となり、Σxi=0,Σyi
0,Σxi 2=100,Σyi 2=100,Σxi 2i=0,Σxi
i 2=0,Σxi 3=0,Σyi 3=0,Σxii=0というパラ
メータが計算される。これらの値は上記2つの例に比べ
て小さい値であり、最大値4,000,000という値も越えな
い。このパラメータを用いて前記A,B,Cを求めると
A=0,B=0,C=-50となり、a=0,b=0,r=5√2と
なる。座標を変換しているので、前の例ではa=5+0=
5、b=5+0=5、r=5√2、後の例ではa=105+0=105、
b=105+0=105、r=5√2となる。
【0017】図面に描かれた円、円弧を認識する場合、
通常ひとつの円や円弧は他の線に分断されて一連の座標
列を持つことは少ない。図12の様に、2つの直線X,
Yで4つの円弧A,B,C,Dに分断された円を例に考
えると、Aの部分に含まれる頂点(図示小さい丸印で示
した)を一連の座標列として考えることは容易(分枝や
端点間を結ぶ頂点列と考える)であるが、A,B,C,
Dがひとつの円を構成するように認識するためには、
A,B,C,Dそれぞれが円弧として妥当かどうかを調
べ、それぞれが円弧として妥当であるならば、A,B,
C,Dを結合したものが、円として妥当であるかどうか
を調べなければならない。
【0018】円、円弧の妥当性を調べるためには、前記
手段によって求めた円、円弧と座標列の誤差を調べ、妥
当性を判断する。しかし、Aの部分で求めたパラメータ
は(xA,yA)を原点として求めたパラメータ、Bの部
分で求めたパラメータは(xB,yB)を原点として求め
たパラメータであり、通常xA≠xB,yA≠yBである。
従って、AとBとを結合して求めたパラメータを原点
(xAB,yAB)としてパラメータを求めようとすると、
再び全てのパラメータに対して積算演算をしなければな
らないため、様々な組み合わせに対してパラメータを求
めようとすると、演算時間が膨大となる問題を生じる。
【0019】この発明は上記の事情に鑑みてなされたも
ので、円、円弧の認識性能を向上させるとともに、円、
円弧らしさの判定や中心/半径を同定する演算を高速に
できるようにした円、円弧の認識方法を提供することを
目的とする。
【0020】
【課題を解決するための手段および作用】この発明は、
上記の目的を達成するために、第1発明は、図面入力装
置の図面認識部において、円又は円弧と予想される図形
の輪郭ベクトルや芯線ベクトルの座標列を用いて、前記
円又は円弧の中心及び半径を最小2乗法により求めた
後、求めた円の中心からみた輪郭ベクトルや芯線ベクト
ルの座標列の方向のヒストグラムを作成し、そのヒスト
グラム内でフラグの立っていない部分を調べ、その部分
の始点と終点の方向の開き具合を計算し、その計算結果
から値が小さいときには円、値が大きいときには円弧と
判別したことを特徴とするものである。
【0021】第2発明は、図面入力装置の図面認識部に
おいて、円又は円弧と予想される図形の輪郭ベクトルや
芯線ベクトルの座標列を用いて、前記円又は円弧の中心
及び半径を最小2乗法により求めた後、求めた円の中心
からみた輪郭ベクトルや芯線ベクトルの座標列の方向の
ヒストグラムを作成し、そのヒストグラム内でフラグの
立っていない部分を調べ、その部分の始点と終点の方向
開き具合を計算し、その計算結果から円弧と判別した
ときには、円弧の始角、終角を算出して求めたことを特
徴とするものである。
【0022】
【0023】
【0024】
【実施例】以下この発明の実施例を図面に基づいて説明
する。第1実施例:図1において、ステップ1では図面
入力装置において、円又は円弧と予想される図形の輪郭
ベクトルや芯線ベクトルの座標列を用いて、前記円又は
円弧の中心及び半径を最小2乗法により求める。その
後、求めた円の中心からみた輪郭ベクトルや芯線ベクト
ルの座標列の方向のヒストグラムをステップ2で作成す
る。作成されたヒストグラム内でフラグの立っていない
部分をステップ3で調べ、フラグの立っていない部分か
ら始点と終点の方向の開き具合をステップ4で計算す
る。この計算結果から始点と終点の方向の開き角度が、
例えば「1o」から「3o」のように小さい角度の場合に
は、ステップ5で円と判別し、開き角度が「30o」の
ように大きい場合には、円弧と判別する。
【0025】第2実施例:上記のように円弧と判別され
たなら、図2の円弧の始角、終角を求める処理を行う。
この処理を行うために、360または360/n個のテ
ーブルを用意し、そのテーブルをrad[0]〜rad
[360/n]とする。図2において、ステップS1
で、まず一点目の中心角αを求めた後、ステップS2で
次の中心角βを求める。その後、rad[α]からra
d[β]までの全てに、ステップS3でフラグを立て
る。この処理が終了したなら、ステップS4でβをαに
代入し、ステップS5でベクトル座標列が終わりか、ど
うかを判断し、終わりなら処理を終了し、終わりでない
なら、再びステップS2から処理を行う。このような処
理を行うことにより円弧の始角と終角を求める。
【0026】ここで、ヒストグラムの作成および始終角
の算出方法を図15から図18により述べる。図15は
分割数nが16の場合におけるヒストグラムであり、図
16は芯線ベクトルを示すものである。図16におい
て、ベクトル座標列{P1,P2……P10,P11}が先に
最小2乗法により算出された円の中心から見てどの位置
(どの方向)にあるかを計算する。いま、Pn−Pn+1
かかる部分のフラグをオンにする。図17において、丸
印がある部分がフラグが立っている状態を表し、何も表
示されていない部分がフラグが立っていない状態を示し
ている。図17のフラグが立っている状態と芯線ベクト
ル(図16)とを当てはめると、P1−P2,すなわち
265°−280°となる。また、図18のヒストグラ
ムからフラグが立っていない部分(このヒストグラムで
は202.5°〜247.5°)が存在するので、このベク
トルは円ではなく、円弧であり、始角は247.5°、終
角は202.5°と判断される。
【0027】上記のように円、円弧を判別したので、か
すれ、にじみ等から生じた乱れた輪郭ベクトルや芯線ベ
クトルからでも、円、円弧が認識できるようになり、ま
た、円弧の始角、終角が正しく算出できるようになった
ため、円、円弧の合成も正確に行われるようになり、
円、円弧認識性能を飛躍的に向上させることができる。
【0028】第3実施例:図3において、ステップS1
ではベクトル座標列から円、円弧を認識する場合、ベク
トル座標列から円、円弧らしさの判定、あるいは円、円
弧の中心座標と半径を求めるのに最小2乗法を用いる。
この最小2乗法を用いて中心座標と半径の演算処理をス
テップS2で行う。ステップS2での演算処理におい
て、演算がオーバーフローしないように、ステップS3
で判断する。判断の結果、オーバーフローいていなかっ
たならベクトル座標列の原点をステップS4で平行移動
せる。
【0029】第4実施例:図4において、ステップS1
で、まず最小2乗法において、異なる原点を求める。異
なる原点によって求められた複数部分の最小2乗法のパ
ラメータを、ステップS2で同一原点に変換する。変換
した同一原点を、ステップS3で統合する。統合したも
のから、ステップS4で新たなパラメータを求める。そ
のパラメータにより1回だけの積算処理を、ステップS
5で行う。
【0030】次に、最小2乗法のパラメータを原点に変
更する手段を述べる。N個の点列(x1,y1),
(x2,y2)………(xN,yN)に対して、点(xt
t)を原点として求めた円の最小2乗法のパラメータ
は次式により求まる。
【0031】
【数3】
【0032】上記式で求めたパラメータを原点(xq,
yq)に変更したときのパラメータX’,Y’,D’,
E’,F’,G’,H’,J’,K’は次のようにして
求まる。 X’=X−N×dx Y’=Y−N×dy K’=K−dy×X−dx×Y’ D’=D−dx×(Y+Y’) E’=E−dy×(Y+Y’) F’=F−dy×D−dx×(2×K−dx×Y) G’=G−dx×E−dy×(2×K−dy×X) H’=H−dx×(2×D+D’−dx×X) J’=J−dy×(2×E+E’−dy×Y) (ただし、dx=xq−xt,dy=yq−yt) 上記のように点(xt,yt)を原点としたパラメータが
求まっていれば、同じ点列に対して点(xq,yq)を原
点としたパラメータは直接求めることが可能である。従
って、点(xt,yt)を原点として求めた円の最小2乗
法のパラメータから点(xt,yt)を原点とした最小2
乗法のパラメータへの変換は、再び積算演算を行わずに
可能である。
【0033】図12で、Aの部分に対して(xA,yA
を原点として求めたパラメータ、同様にB,C,Dの部
分に対して求めたパラメータを用いてA,B,C,D全
てに対して原点を同一にしたパラメータを求めることが
可能で、高速に、合成した円や円弧の最小2乗近似した
図5に破線の円で示す解を求めることができる。
【0034】上述した演算はコンピュータで行うが、コ
ンピュータの内部演算がオーバーフローしないように、
円の最小2乗法のパラメータを演算する際に座標の原点
をシフトして求めたパラメータに対し、異なる原点で求
められたパラメータを同一の原点に変換して複数合成す
ることにより、演算の中で最も時間がかかる積算演算を
1回だけ行えば、複数の組み合わせで円、円弧らしさの
判定あるいは円、円弧の中心/半径を同定する演算が高
速に行える。
【0035】
【発明の効果】以上述べたように、この発明によれば、
かすれ、にじみ等から生じた乱れた輪郭ベクトルや芯線
ベクトルからでも正確な円、円弧が認識できるととも
に、円弧の始角、終角が正確に算出できるので、円、円
弧の合成も正確に行なわれるようになり、円、円弧認識
性能を飛躍的に向上させることができる。
【図面の簡単な説明】
【図1】この発明の第1実施例を示すフローチャート。
【図2】この発明の第2実施例を示すフローチャート。
【図3】この発明の第3実施例を示すフローチャート。
【図4】この発明の第4実施例を示すフローチャート。
【図5】点列に対し最小2乗近似された円を示す説明
図。
【図6】始点、終点が一致しているときの説明図。
【図7】始点、終点が一致していないときの説明図。
【図8】始点、終点が一致していないときの説明図。
【図9】円弧の一部が戻っているときの説明図。
【図10】90°の円弧が4つで円を合成するときの説
明図。
【図11】90°の円弧が3つを合成して270°の円
弧としたときの説明図。
【図12】4つの円弧に分断された円の説明図。
【図13】従来例の説明図。
【図14】従来例の説明図
【図15】分割数16の場合のヒストグラムの説明図。
【図16】芯線ベクトルの説明図。
【図17】ヒストグラムにおけるフラグが立っている
か、いないかの状態説明図。
【図18】ヒストグラムにおけるフラグが立っていない
部分から円、円弧を判断する説明図。
【符号の説明】
S1…ベクトル座標列を求めるステップ S2…ヒストグラム作成ステップ S3…フラグがあるか、ないかを判断するステップ S4…始点、終点の開き具合を見るステップ S5…円、円弧を判別するステップ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭63−249279(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 7/00 - 7/60

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 図面入力装置の図面認識部において、
    又は円弧と予想される図形の輪郭ベクトルや芯線ベクト
    ルの座標列を用いて、前記円又は円弧の中心及び半径を
    最小2乗法により求めた後、求めた円の中心からみた輪
    郭ベクトルや芯線ベクトルの座標列の方向のヒストグラ
    ムを作成し、そのヒストグラム内でフラグの立っていな
    い部分を調べ、その部分の始点と終点の方向の開き具合
    を計算し、その計算結果から値が小さいときには円、値
    が大きいときには円弧と判別したことを特徴とする円、
    円弧の認識方法。
  2. 【請求項2】 図面入力装置の図面認識部において、
    又は円弧と予想される図形の輪郭ベクトルや芯線ベクト
    ルの座標列を用いて、前記円又は円弧の中心及び半径を
    最小2乗法により求めた後、求めた円の中心からみた輪
    郭ベクトルや芯線ベクトルの座標列の方向のヒストグラ
    ムを作成し、そのヒストグラム内でフラグの立っていな
    い部分を調べ、その部分の始点と終点の方向の開き具合
    を計算し、その計算結果から円弧と判別したときには、
    円弧の始角、終角を算出して求めたことを特徴とする円
    弧の認識方法。
JP15399394A 1994-07-06 1994-07-06 円、円弧の認識方法 Expired - Fee Related JP3284768B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15399394A JP3284768B2 (ja) 1994-07-06 1994-07-06 円、円弧の認識方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15399394A JP3284768B2 (ja) 1994-07-06 1994-07-06 円、円弧の認識方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001391353A Division JP2002230561A (ja) 2001-12-25 2001-12-25 円、円弧の認識方法

Publications (2)

Publication Number Publication Date
JPH0822540A JPH0822540A (ja) 1996-01-23
JP3284768B2 true JP3284768B2 (ja) 2002-05-20

Family

ID=15574577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15399394A Expired - Fee Related JP3284768B2 (ja) 1994-07-06 1994-07-06 円、円弧の認識方法

Country Status (1)

Country Link
JP (1) JP3284768B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4595957B2 (ja) * 2007-04-23 2010-12-08 株式会社明電舎 円特徴の三次元位置姿勢検出装置

Also Published As

Publication number Publication date
JPH0822540A (ja) 1996-01-23

Similar Documents

Publication Publication Date Title
US6876766B2 (en) Reshaping freehand drawn lines and shapes in an electronic document
US9092697B2 (en) Image recognition system and method for identifying similarities in different images
JPH10105655A (ja) 光学文字認識のための検証および訂正の方法およびシステム
CN110928894B (zh) 实体对齐的方法及装置
JPH0291778A (ja) パターン認識方法
JP3284768B2 (ja) 円、円弧の認識方法
JPH0962850A (ja) 線対称図形整形装置及び任意の数の対称軸の全てについて線対称な図形を生成する方法
US5809170A (en) Method for automatically recognizing line symmetry of a figure
JP2845269B2 (ja) 図形整形装置および図形整形方法
CN112988993B (zh) 一种问答方法和计算设备
JP2001022888A (ja) パターン切り出し装置及びパターン認識装置
US9224040B2 (en) Method for object recognition and describing structure of graphical objects
JP2002230561A (ja) 円、円弧の認識方法
JPH0757092A (ja) 指紋照合装置
US5790700A (en) Method for automatically recognizing line symmetry of a figure
JP3071745B2 (ja) 文字認識結果の後処理方法
CN113392811B (zh) 一种表格提取方法、装置、电子设备及存储介质
JP2755738B2 (ja) 文字認識装置
JPH08329266A (ja) 多角形図形整形装置
JPH07320060A (ja) 円および円弧の近似方法
JPH0830734A (ja) 文字列認識装置
JP2852044B2 (ja) 記号認識装置
CN114004029A (zh) 零件检测报告的生成方法、装置、电子设备及存储介质
JP2882327B2 (ja) 線図形整合装置
JPH1097620A (ja) 円又は円弧の近似方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees