JPS6319087A - 円および円弧の中心点検出方法 - Google Patents
円および円弧の中心点検出方法Info
- Publication number
- JPS6319087A JPS6319087A JP61162040A JP16204086A JPS6319087A JP S6319087 A JPS6319087 A JP S6319087A JP 61162040 A JP61162040 A JP 61162040A JP 16204086 A JP16204086 A JP 16204086A JP S6319087 A JPS6319087 A JP S6319087A
- Authority
- JP
- Japan
- Prior art keywords
- image
- center
- point
- contour
- pixel
- 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.)
- Granted
Links
Landscapes
- Image Analysis (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野〉
本発明は円および円弧の中心点を検出する方法に関し、
特に、産業用ロボット等に設りられたカメラから、少な
くとも1以上の円形又は円弧形の輪郭を持つ被加工物の
画像を入力し、その画像を処理し、それらの円又は円弧
の中心点を検出する方法に関する。
特に、産業用ロボット等に設りられたカメラから、少な
くとも1以上の円形又は円弧形の輪郭を持つ被加工物の
画像を入力し、その画像を処理し、それらの円又は円弧
の中心点を検出する方法に関する。
(従来の技術)
近年、コンピュータの驚異的な発展に伴って、産業用ロ
ボットにカメラを接続し、人間と同様の視覚を与えるこ
とによって、被加工物の形状や位置等を計測させ、柔軟
性のめる加工作業を可能とした、いわゆる人工知能を有
する産業用ロボットの開発が盛んに行なわれている。
ボットにカメラを接続し、人間と同様の視覚を与えるこ
とによって、被加工物の形状や位置等を計測させ、柔軟
性のめる加工作業を可能とした、いわゆる人工知能を有
する産業用ロボットの開発が盛んに行なわれている。
ところで、産業用ロボットに接続されたカメラから入力
した視覚画像の情報処理方法としては、現在では、2値
画像処理が実用的な視覚システムで最も広く用いられて
いる。
した視覚画像の情報処理方法としては、現在では、2値
画像処理が実用的な視覚システムで最も広く用いられて
いる。
前記した2値画像処理とは、以下に記すような処理を示
す。
す。
第9図(a)のようにカメラ1によって被加工物2を写
し、この画像をコンピュータに入力し、この画像をMX
N個の画素に分解して前記画像の濃度値と、その8度1
面に対する画素3の数のヒストグラムを求める。
し、この画像をコンピュータに入力し、この画像をMX
N個の画素に分解して前記画像の濃度値と、その8度1
面に対する画素3の数のヒストグラムを求める。
前記コンピュータで計算したヒストグラムの結果は、第
9図(d)に示すようになり、背景に相当する山と被加
工物2に相当する山とが現われる。
9図(d)に示すようになり、背景に相当する山と被加
工物2に相当する山とが現われる。
この2つの山の間の谷の所の濃度値を閾値tとし、画像
処理の基準濃度とする。
処理の基準濃度とする。
そして、各画素毎に閾値tよりも濃度か大きいか小さい
かを判別し、大きければ、画素3に対応するメモリを1
に小さければメモリをOにセットする。
かを判別し、大きければ、画素3に対応するメモリを1
に小さければメモリをOにセットする。
すなわち、2値画像処理とは、被加工物の各画素毎の濃
度値が閾1a tよりも大きいか小さいかによって、各
画素に対応したメモリを1かOにセットする画像処理方
法である。
度値が閾1a tよりも大きいか小さいかによって、各
画素に対応したメモリを1かOにセットする画像処理方
法である。
以上に説明したような21a画像処理を用いて、被加工
物2の円の中心点を検出するには、次のような方法によ
って行なっていた。
物2の円の中心点を検出するには、次のような方法によ
って行なっていた。
第9図(a)に示すように、カメラ1によって被加工物
2を写し、その画像を、大きさMXN画素のデジタル画
像を有するコンビコータに入力する。このようにして入
力された画像は、同図(b)のように示される。
2を写し、その画像を、大きさMXN画素のデジタル画
像を有するコンビコータに入力する。このようにして入
力された画像は、同図(b)のように示される。
次に、前記デジタル画像の画素3毎の濃度値と前記閾値
tを比較し、デジタル画像を作成する。
tを比較し、デジタル画像を作成する。
その計算結果は同図(C)のように表わされる。
そして同図(C)で示される図形の断面−次モーメント
S(x、y)、前記図形の面積(斜線部分の画素数)A
、さらに前記図形の周囲長等を求め、指定された半径を
持つ円と思われる被加工物を判別し、S (X、V)/
Aを計算することにより、前記図形の重心、つまり被加
工物2の円の中心点に相当する画素の座標を求めるよう
になっている。
S(x、y)、前記図形の面積(斜線部分の画素数)A
、さらに前記図形の周囲長等を求め、指定された半径を
持つ円と思われる被加工物を判別し、S (X、V)/
Aを計算することにより、前記図形の重心、つまり被加
工物2の円の中心点に相当する画素の座標を求めるよう
になっている。
(発明が解決しようとする問題点)
しかしなから、このような従来の円の中心点検出方法に
あっては、被加工物とその背景のコントラストを利用し
た2値画像処理によって行なっていたために、正確な円
の中心点を検出するには、被加工物とその背景のコント
ラストが良好であること、かつ、この被加工物をカメラ
で写し出す場合における照明条件ができるだけ一定であ
ること等厳しい必要限定条件かあった。
あっては、被加工物とその背景のコントラストを利用し
た2値画像処理によって行なっていたために、正確な円
の中心点を検出するには、被加工物とその背景のコント
ラストが良好であること、かつ、この被加工物をカメラ
で写し出す場合における照明条件ができるだけ一定であ
ること等厳しい必要限定条件かあった。
例えば、第10図(a)に示すような面取り加工のされ
た中空円筒形状の被加工物4の円の中心点を検出する場
合を考える。
た中空円筒形状の被加工物4の円の中心点を検出する場
合を考える。
被加工物4をカメラ1て写すと、同図(b)のような画
像がコンピュータに入力される。そしてこのような画像
では、被加工物4の中空部分の濃度値が大きいために、
比較的コントラストが悪く、その濃度値と画素数とのヒ
ストグラムは、第10図(d)に示すようになり、はっ
きりとした闇値−シ′ か設定しにくくなる。また、同
時に複数の被加工物4をコンピュータに入力した場合に
は、さらに、この閾値t′の設定か困難になる。
像がコンピュータに入力される。そしてこのような画像
では、被加工物4の中空部分の濃度値が大きいために、
比較的コントラストが悪く、その濃度値と画素数とのヒ
ストグラムは、第10図(d)に示すようになり、はっ
きりとした闇値−シ′ か設定しにくくなる。また、同
時に複数の被加工物4をコンピュータに入力した場合に
は、さらに、この閾値t′の設定か困難になる。
このように、コン[〜ラス1〜の悪い被加工物4を2値
画像処理すると、照明条件の影響を受は易いために、コ
ンピュータは、照明条件の変化等により、第10図(C
)に示すような画像を計算結果として出力してしまうこ
とも考えられ、このような場合には、被加工物4の円の
中心点を誤って検出することになる。そして、同時に複
数の被加工物4をコンピュータに入力した場合には、前
記したような中心点の誤検出の可能性はざらに大きくな
る。
画像処理すると、照明条件の影響を受は易いために、コ
ンピュータは、照明条件の変化等により、第10図(C
)に示すような画像を計算結果として出力してしまうこ
とも考えられ、このような場合には、被加工物4の円の
中心点を誤って検出することになる。そして、同時に複
数の被加工物4をコンピュータに入力した場合には、前
記したような中心点の誤検出の可能性はざらに大きくな
る。
従って、円形の輪郭を持つ部分の内部の明るさか均一で
ない被加工物を、画像としてコンピュータに入力したり
、この被加工物の周囲の照明条件が変化したりすると、
コンピュータで間違った処理がされる可能性があり、そ
の被加工物の中心点の検出に誤差を生じるという問題点
があった。
ない被加工物を、画像としてコンピュータに入力したり
、この被加工物の周囲の照明条件が変化したりすると、
コンピュータで間違った処理がされる可能性があり、そ
の被加工物の中心点の検出に誤差を生じるという問題点
があった。
本発明は上記のような問題点に鑑みてなされたものであ
り、被加工物の濃淡画像又は輪郭線画像を算出すること
により、被加工物のコントラストの良否及びコンピュー
タに同時に入力する被加工物の数量にかかわらず、被加
工物に存在する被検出体の指定された半径の円又は円弧
の中心点を、誤差を生ずることなく検出しうるようにす
ることを目的とする。
り、被加工物の濃淡画像又は輪郭線画像を算出すること
により、被加工物のコントラストの良否及びコンピュー
タに同時に入力する被加工物の数量にかかわらず、被加
工物に存在する被検出体の指定された半径の円又は円弧
の中心点を、誤差を生ずることなく検出しうるようにす
ることを目的とする。
〈問題点を解決するための手段)
上記目的を達成するために、本発明では、背景に対して
異なる明るさとなる円形輪郭線を有する被検出体を画像
メモリに記憶し、当該画像メモリに記憶されている当該
被検出体における輪郭線上の一点を通る接線を算出し、
当該接線と直交し、かつ当該一点を通る直線を算出し、
当該直線上の当該背景に比して明方向又は暗方向のどち
らか一方向に当該一点から指定半径だけ離れた中心候補
点を算出し、前記中心候補点の算出を、当該輪郭線上の
全周について行うことによって得られた点の集合領域を
記憶して中心候補点領域とし、当該中心候補点領域にお
ける点の最密集点を指定半径の円中心とすることを特徴
とする。
異なる明るさとなる円形輪郭線を有する被検出体を画像
メモリに記憶し、当該画像メモリに記憶されている当該
被検出体における輪郭線上の一点を通る接線を算出し、
当該接線と直交し、かつ当該一点を通る直線を算出し、
当該直線上の当該背景に比して明方向又は暗方向のどち
らか一方向に当該一点から指定半径だけ離れた中心候補
点を算出し、前記中心候補点の算出を、当該輪郭線上の
全周について行うことによって得られた点の集合領域を
記憶して中心候補点領域とし、当該中心候補点領域にお
ける点の最密集点を指定半径の円中心とすることを特徴
とする。
(作用)
以上のような方法によれば、被検出体における円および
円弧の中心点は、中心候補点の算出の結果得られた点の
集合領域内における最密集点に基づ′いて算出されるこ
とになるので、コン[〜ラストの良否に拘らず円および
円弧の中心点を検出することができ、また、前記中心候
補点は前記被検出体の円形輪郭線内部領域に必ず存在す
ることになる(当該円形輪郭線上の任意の接点における
法線上の一方向のみに中心候補点を算出するようにした
ため)ので、被加工物内に複数の円および円弧が存在す
る場合であっても、夫々の円および円弧の中心候補点は
干渉することなく、常に正確な円および円弧の中心点を
検出することかできる。
円弧の中心点は、中心候補点の算出の結果得られた点の
集合領域内における最密集点に基づ′いて算出されるこ
とになるので、コン[〜ラストの良否に拘らず円および
円弧の中心点を検出することができ、また、前記中心候
補点は前記被検出体の円形輪郭線内部領域に必ず存在す
ることになる(当該円形輪郭線上の任意の接点における
法線上の一方向のみに中心候補点を算出するようにした
ため)ので、被加工物内に複数の円および円弧が存在す
る場合であっても、夫々の円および円弧の中心候補点は
干渉することなく、常に正確な円および円弧の中心点を
検出することかできる。
(実施例)
以下に、本発明に係る実施例を、図面に基づいて詳細に
説明する。
説明する。
第1図は、本発明に係る円の中心点を検出する装置のブ
ロック図である。
ロック図である。
同図に示すように、この装置は、被加工物を写すテレビ
カメラ1から送られるアナログ画像を、A/l)lンバ
ータ7によってデジタル符号に変換し、このデジタル符
号を記憶する画像メモリ8と、画像メモリ8の記憶デー
タに基づいて、前記被7JO工物の輪郭を計算し、抽出
する輪郭抽出部9と、輪郭抽出部9の計算結果を記憶す
る画像メモリ1○と、画像メモリ1Qに記憶されている
前記被加工物の輪郭に関するデータから、その輪郭の線
上における接線の傾き及び明方向、暗方向を算出する傾
き算出部11と、画像メモリ8、半径入力部5及び明暗
データ6等の人力データにより、前記被加工物の仮の中
心点を算出する中心候補点算出部12と、中心候補点算
出部12で計算されたデータを記憶する画像メモリ13
と、画像メモリ13のデータにより、閾値を算出する閾
値算出部14と、画像メモリ13及び閾値算出部14の
データにより、前記加工物の中心点を確定する中心点抽
出部15と、中心点抽出部15で算出された結果を、C
RTやプリンタ又は機械の制御装置に出力する出力部1
6とて構成されている。
カメラ1から送られるアナログ画像を、A/l)lンバ
ータ7によってデジタル符号に変換し、このデジタル符
号を記憶する画像メモリ8と、画像メモリ8の記憶デー
タに基づいて、前記被7JO工物の輪郭を計算し、抽出
する輪郭抽出部9と、輪郭抽出部9の計算結果を記憶す
る画像メモリ1○と、画像メモリ1Qに記憶されている
前記被加工物の輪郭に関するデータから、その輪郭の線
上における接線の傾き及び明方向、暗方向を算出する傾
き算出部11と、画像メモリ8、半径入力部5及び明暗
データ6等の人力データにより、前記被加工物の仮の中
心点を算出する中心候補点算出部12と、中心候補点算
出部12で計算されたデータを記憶する画像メモリ13
と、画像メモリ13のデータにより、閾値を算出する閾
値算出部14と、画像メモリ13及び閾値算出部14の
データにより、前記加工物の中心点を確定する中心点抽
出部15と、中心点抽出部15で算出された結果を、C
RTやプリンタ又は機械の制御装置に出力する出力部1
6とて構成されている。
次に、このように構成された装置によって、円形輪郭線
を有する被加工物の中心点を算出する過程を、第3図及
び第4図並びに第6図乃至第8図を参照しつつ、第2図
と第5図のフローチャートに基づ゛いて詳細に説明する
。
を有する被加工物の中心点を算出する過程を、第3図及
び第4図並びに第6図乃至第8図を参照しつつ、第2図
と第5図のフローチャートに基づ゛いて詳細に説明する
。
ステップ1
まず、プログラムがスタートすると、テレビカメラ1か
ら円形輪郭線を含んだ被加工物の映像信号が、A/Dコ
ンバータ7に送られ、ここで前記映像信号か、各画素毎
にデジタル信号に変換され、その信号か画像メモリ8の
指定アドレスに順次送られる。
ら円形輪郭線を含んだ被加工物の映像信号が、A/Dコ
ンバータ7に送られ、ここで前記映像信号か、各画素毎
にデジタル信号に変換され、その信号か画像メモリ8の
指定アドレスに順次送られる。
例えば1画面が255X240画素で構成されている画
面に、テレビカメラ]から、第4図(a>に示すような
円柱形状を有する被加工物の映像信号が送られると、こ
の映像信号が、8ビツトの分解能(白から黒までの濃淡
度合をO〜255まて ′の256段階に分解してデジ
タル化できる能力。)を有するA/Dコンバータ6でデ
ジタル化される。
面に、テレビカメラ]から、第4図(a>に示すような
円柱形状を有する被加工物の映像信号が送られると、こ
の映像信号が、8ビツトの分解能(白から黒までの濃淡
度合をO〜255まて ′の256段階に分解してデジ
タル化できる能力。)を有するA/Dコンバータ6でデ
ジタル化される。
A/Dコンバータ6てデジタル化された各画素毎の濃度
値は、画像メモリ8の各画素に対応した番地に順次送ら
れる。
値は、画像メモリ8の各画素に対応した番地に順次送ら
れる。
ステップ2
ステップ1て説明したように、デジタル化された各画素
毎の濃度値は、RAMで構成されている画像メモリ8の
所定番地に夫々格納される。この−]〇 − 画像メモリ8に記憶されている画像は、8ビットで量子
化された濃淡画像である。
毎の濃度値は、RAMで構成されている画像メモリ8の
所定番地に夫々格納される。この−]〇 − 画像メモリ8に記憶されている画像は、8ビットで量子
化された濃淡画像である。
ステップ3
画像メモリ8からデータを取り出し、このデータを空間
微分法により2次微分して、被加工物の輪郭線のみを抽
出した輪郭線画像を作成する。ここで、2次微分つまり
、ラプラシアンは、エツジの方向に依存しない2次の微
分オペレータで、画像処理ではよく用いられる。ここで
は、ラプラシアンの詳細な説明は省略する。
微分法により2次微分して、被加工物の輪郭線のみを抽
出した輪郭線画像を作成する。ここで、2次微分つまり
、ラプラシアンは、エツジの方向に依存しない2次の微
分オペレータで、画像処理ではよく用いられる。ここで
は、ラプラシアンの詳細な説明は省略する。
このラプラシアンを用いて、画像エツジを求めると、シ
ャープなエツジの場合は、第3図(a)に示すようなラ
プラシアンの曲線が得られ、また、ぼけたエツジの場合
には、同図(b)に示すようなラプラシアンの曲線が得
られる。
ャープなエツジの場合は、第3図(a)に示すようなラ
プラシアンの曲線が得られ、また、ぼけたエツジの場合
には、同図(b)に示すようなラプラシアンの曲線が得
られる。
つまり、ラプラシアンの曲線は、エツジの下端と上端で
それぞれ正と負のピークを生じる。従ってエツジの位置
を求めるには、ラプラシアンの曲線の正負両ピーク間の
中央でラプラシアンか○になる場所を探せばよい。
それぞれ正と負のピークを生じる。従ってエツジの位置
を求めるには、ラプラシアンの曲線の正負両ピーク間の
中央でラプラシアンか○になる場所を探せばよい。
以上のように、画像メモリ8に記憶された濃淡画像のラ
プラシアンを計算すると、第4図(b)に示すような輪
郭線画像が得られる。
プラシアンを計算すると、第4図(b)に示すような輪
郭線画像が得られる。
ステップ4
ステップ3で処理したラプラシアンによる輪郭線の抽出
においては、雑音に弱く、エツジよりも、細い線や孤立
点に強く反応するという性質を有している。従って、正
確な被加工物の輪郭線を抽出するためには、画像のノイ
ズ除去が必要となってくる。
においては、雑音に弱く、エツジよりも、細い線や孤立
点に強く反応するという性質を有している。従って、正
確な被加工物の輪郭線を抽出するためには、画像のノイ
ズ除去が必要となってくる。
このノイズを除去するために、本発明では、局所領域の
濃度和の差分を計算するオペレータを用いて、X、Y方
向のノイズを除去している。
濃度和の差分を計算するオペレータを用いて、X、Y方
向のノイズを除去している。
ステップ5
ノイズか除去されて、より鮮明となった輪郭線画像の輪
郭線を、濃淡度の最高値255に、そして背景をOに2
値化する。
郭線を、濃淡度の最高値255に、そして背景をOに2
値化する。
つまり、ノイズ除去後の輪郭線画像を、2値画像処理に
よって2値化し、より鮮明な輪郭線画像を作成する。
よって2値化し、より鮮明な輪郭線画像を作成する。
以上、ステップ3からステップ5の処理は、輪郭抽出部
9で行なわれる。
9で行なわれる。
ステップ6
ステップ5てノイズレスの濃淡画像を2値画像に変換処
理した後の各画素毎の2値化データを、画像メモ1ノ1
0の所定番地に夫々格納する。
理した後の各画素毎の2値化データを、画像メモ1ノ1
0の所定番地に夫々格納する。
ステップ7
テレビカメラ1の被写体である円形輪郭線を有する被加
工物の有する被検出体の半径rが、半径入力部5、つま
り端末機であるキーボード等のようなデータ入力装置に
よって、中心候補点算出部12に入力される。
工物の有する被検出体の半径rが、半径入力部5、つま
り端末機であるキーボード等のようなデータ入力装置に
よって、中心候補点算出部12に入力される。
ステップ8
次のステップにおいて処理される前記被加工物の被検出
体における中心候補点の領域がその被検出体内部に必す
存在させるようにする明暗データか、明暗データ入力部
6、つまり端末機であるキーボード等のようなデータ入
力装置によって、中心候補点算出部]2に入力される。
体における中心候補点の領域がその被検出体内部に必す
存在させるようにする明暗データか、明暗データ入力部
6、つまり端末機であるキーボード等のようなデータ入
力装置によって、中心候補点算出部]2に入力される。
ステップ9
−13 =
8ビツトで量子化された濃淡画像が記憶されている画像
メモリ8と、画像メモリ10に記憶されている前記被加
工物の輪郭に関するデータから、傾き算出部11によっ
て算出されたその輪郭の線上における接線の傾き及び明
方向、暗方向に関するデータ、半径入力部5から入力さ
れた被加工物の半径rのデータ、かつ、明暗データ6か
ら入力された前記明暗データに基づいて、中心候補点算
出部12て、後述する中心点検出プログラムのサブルー
チンである中心候補点検出プログラムを処理することに
よって、前記被加工物の中心候補点・群の画像を作成す
る。
メモリ8と、画像メモリ10に記憶されている前記被加
工物の輪郭に関するデータから、傾き算出部11によっ
て算出されたその輪郭の線上における接線の傾き及び明
方向、暗方向に関するデータ、半径入力部5から入力さ
れた被加工物の半径rのデータ、かつ、明暗データ6か
ら入力された前記明暗データに基づいて、中心候補点算
出部12て、後述する中心点検出プログラムのサブルー
チンである中心候補点検出プログラムを処理することに
よって、前記被加工物の中心候補点・群の画像を作成す
る。
つまり、画像メモリ10に格納されている輪郭線画像の
輪郭線の画素毎に、中心候補点とみなされ る画素のX、Y座標を、明暗データ入力部6によって入
力された明暗データに基づいて輪郭線上の画素の全てに
ついて求めると、第7図に示すような画像が作成される
ことになる。
輪郭線の画素毎に、中心候補点とみなされ る画素のX、Y座標を、明暗データ入力部6によって入
力された明暗データに基づいて輪郭線上の画素の全てに
ついて求めると、第7図に示すような画像が作成される
ことになる。
そして、当該画像を作成する時には、中心候補点とみな
される画素の濃度値を1づつ増加して、中心候補点群の
画像とする。
される画素の濃度値を1づつ増加して、中心候補点群の
画像とする。
ステップ10
ステップ9で作成した中心候補点群を含む輪郭線画像の
画素毎のデータを画像メモリ13の所定番地に夫々格納
する。
画素毎のデータを画像メモリ13の所定番地に夫々格納
する。
ステップ11
閾値算出部14て、予め設定されている闇値t1を中心
点抽出部15に入力する。
点抽出部15に入力する。
ステップ12
第7図に示す画像を格納している画像メモリ13から、
画素毎のデータを取り出し、閾値算出部14から出力さ
れた閾値t1と、各画素毎のデータとが比較され、閾値
t1よりも小さい濃度値を有する画素を濃度値○に設定
する。
画素毎のデータを取り出し、閾値算出部14から出力さ
れた閾値t1と、各画素毎のデータとが比較され、閾値
t1よりも小さい濃度値を有する画素を濃度値○に設定
する。
つまり、閾値t1よりも小さい濃度値を有する画素は、
消去されることになる。
消去されることになる。
ステップ13
ステップ12で処理された画像は、再び、画像メモリ1
3の所定番地に更新記憶する。
3の所定番地に更新記憶する。
= 15−
ステップ14
閾値算出部14て、再び予め設定されている閾値t2を
中心点抽出部15に入力する。
中心点抽出部15に入力する。
ステップ15
ステップ12と同様に、ステップ13で画像メモリ13
に格納した画像のデータを取り出し、閾値算出部14か
ら出力された閾値t2と、各画素毎のデータとか比較さ
れ、閾値↑2よりも小ざい濃度値を有する画素を消去す
る。
に格納した画像のデータを取り出し、閾値算出部14か
ら出力された閾値t2と、各画素毎のデータとか比較さ
れ、閾値↑2よりも小ざい濃度値を有する画素を消去す
る。
ステップ16
ステップ15で処理された閾値t2よりも大きい濃度値
を有する画素の集合体の画像の中で、最も濃度値の大き
い画素の座標を求め、この座標を被加工物の中心とし、
出力部15にその座標を出力する。
を有する画素の集合体の画像の中で、最も濃度値の大き
い画素の座標を求め、この座標を被加工物の中心とし、
出力部15にその座標を出力する。
次にステップ9で処理されるサブルーチンのプログラム
について詳述する。
について詳述する。
ステップ20.ステップ21
ステップって画像メモリ8、傾き算出部11、半径入力
部5及び明暗データ入力部6からデータか入力されると
、画素のX、Y座標×1とYlかOに初期化される。
部5及び明暗データ入力部6からデータか入力されると
、画素のX、Y座標×1とYlかOに初期化される。
ステップ22
ステップ5で2値画像処理された輪郭線画像のデータが
格納されている画像メモリ10のX、 Y座標位置にお
ける濃度値か、Oであるかどうかか判断される。この濃
度値がOであれば、ステップ29が、Oでなければステ
ップ23が処理される。
格納されている画像メモリ10のX、 Y座標位置にお
ける濃度値か、Oであるかどうかか判断される。この濃
度値がOであれば、ステップ29が、Oでなければステ
ップ23が処理される。
ステップ23
ステップ22て、おる座標における画素の濃度値がOで
なければ、第5図(b)に示すように、この座標△(X
l、Yl)の画素は、輪郭線上にあり、画像メモリ7に
格納されているデータに基づいて、当該画素の周囲8画
素を、第4図(a)のように区分し、その各画素毎の濃
度値を下記のようにマトリックスとして取り出すと、一
般式として、 のように書くことかできる。
なければ、第5図(b)に示すように、この座標△(X
l、Yl)の画素は、輪郭線上にあり、画像メモリ7に
格納されているデータに基づいて、当該画素の周囲8画
素を、第4図(a)のように区分し、その各画素毎の濃
度値を下記のようにマトリックスとして取り出すと、一
般式として、 のように書くことかできる。
そして、8画素の濃度値のX、Y方向の変化分△X、△
Yを求めるために、前記マトリックスに、下記に示すX
方向変化分算出オペレータとY方向変化分オペレータを
掛は合せる。
Yを求めるために、前記マトリックスに、下記に示すX
方向変化分算出オペレータとY方向変化分オペレータを
掛は合せる。
X方向変化分算出オペレータは、
■1 0 11
Y方向変化分筒用オペレータは、
この計算を5obe lオペレータを用いて整理すると
濃度値のX方向変化分△Xは、 −−(a11+ 2 a21+a31)+(a 13+
2 a23+a33)・・・(1) ・・・(2) このようにして、輪郭線上のめる画素A(Xl。
濃度値のX方向変化分△Xは、 −−(a11+ 2 a21+a31)+(a 13+
2 a23+a33)・・・(1) ・・・(2) このようにして、輪郭線上のめる画素A(Xl。
Yl)についてその周辺の濃度値のX、Y方向変化分Δ
X、△Yか求められる。
X、△Yか求められる。
ステップ24
ステップ23で求められた輪郭線上の市る画素A(Xl
、Yl)におけるX、Y方向の濃度値の変化分△X、△
Yに基づいて、当該画素における接線(第6図中して示
される)に垂直な直線の傾きθを求める。
、Yl)におけるX、Y方向の濃度値の変化分△X、△
Yに基づいて、当該画素における接線(第6図中して示
される)に垂直な直線の傾きθを求める。
当該直線の傾きθは、(1)、(2)式で算出した数値
によって第6図に示すように、近似的にθ−1冊−1
△Y/△Xで求めることができる。
によって第6図に示すように、近似的にθ−1冊−1
△Y/△Xで求めることができる。
ステップ25
ステップ23で求められた輪郭線上のおる画素A (X
i、Y’l)におけるX、Y方向の濃度値の変化分△X
、△Yに基づいて、前記したステップ7で入力した指定
半径rのデータにより、被検出体にあ【ブる指定半径内
がその背景に比して明るいかどうかが判断される。この
判断の結果、指定半径内か明るければステップ26に、
逆に暗ければステップ27に夫々進む。
i、Y’l)におけるX、Y方向の濃度値の変化分△X
、△Yに基づいて、前記したステップ7で入力した指定
半径rのデータにより、被検出体にあ【ブる指定半径内
がその背景に比して明るいかどうかが判断される。この
判断の結果、指定半径内か明るければステップ26に、
逆に暗ければステップ27に夫々進む。
ステップ26
次に、ステップ7で入力された被加工物の半径rに基づ
いて、中心候補点のX座標を求める。
いて、中心候補点のX座標を求める。
第6図に示すように、輪郭線上のある画素へのX座標X
1を通り、ステップ24で求めた傾きθの直線上、Xl
よりrだけ離れた点、つまり中心候補点のX座標は、 X=X1+rcosθ で求めることかできる。
1を通り、ステップ24で求めた傾きθの直線上、Xl
よりrだけ離れた点、つまり中心候補点のX座標は、 X=X1+rcosθ で求めることかできる。
また、第6図に示すように、輪郭線上のある画素A(7
)X座標X1を通り、ステップ24て求めた傾きθの直
線上、Ylよりrだけ離れた点、つまり中心候補点のY
座標は、 Y = Y l 十r Si’nθ て求めることかできる。
)X座標X1を通り、ステップ24て求めた傾きθの直
線上、Ylよりrだけ離れた点、つまり中心候補点のY
座標は、 Y = Y l 十r Si’nθ て求めることかできる。
ステップ27
ステップ26と同様に、輪郭線上のある画素へのX座標
X1を通り、ステップ24で求めた1頃きθの直線上、
Xlよりrだけ離れた点、つまり中心候補点のX座標は
、 X=X1−rcosθ で求めることができる。
X1を通り、ステップ24で求めた1頃きθの直線上、
Xlよりrだけ離れた点、つまり中心候補点のX座標は
、 X=X1−rcosθ で求めることができる。
また、第6図に示すように、輪郭線上のある画素へのX
座標X1を通り、ステップ24で求めた傾きθの直線上
、Ylよりrだけ離れた点、つまり中心候補点のY座標
は、 Y=Y’1−rsaθ で求めることかできる。
座標X1を通り、ステップ24で求めた傾きθの直線上
、Ylよりrだけ離れた点、つまり中心候補点のY座標
は、 Y=Y’1−rsaθ で求めることかできる。
ステップ2B
ステップ26又はステップ27て算出された輪郭線上の
ある画素へに対する中心候補点の座標X。
ある画素へに対する中心候補点の座標X。
Yに相当する画素をプロットする。当該画素のプロット
時には、この画素の8度値を、輪郭線を形成する画素の
濃度値よりも、1ランク、インクリメント(増加)する
。
時には、この画素の8度値を、輪郭線を形成する画素の
濃度値よりも、1ランク、インクリメント(増加)する
。
ステップ29
ステップ22において、おる座標の画素の8度値がOで
おると判断された場合、又はステップ2Bの処理後に、
画素のX座標が255になったかどうか判断される。
おると判断された場合、又はステップ2Bの処理後に、
画素のX座標が255になったかどうか判断される。
X座標か255ならばステップ30に、255でなけれ
ばステップ31にそれぞれ進む。
ばステップ31にそれぞれ進む。
ステップ30
ステップ29で画素のX座標が255でおると判断され
ると、強制的に、画素のX座標をOに初期化する。
ると、強制的に、画素のX座標をOに初期化する。
ステップ3]
ステップ29で画素のX座標が255てないと判断され
ると、画素のX座標を1だけ増加する。
ると、画素のX座標を1だけ増加する。
この式は、X1=X1+’lて表わせる。
そして、ステップ31が実行されると、ステップ22に
戻り、前述した処理を、画素の座標(0゜O)から(2
55,O)まで行なうことになる。
戻り、前述した処理を、画素の座標(0゜O)から(2
55,O)まで行なうことになる。
ステップ32
ステップ30の処理後に、画素のY座標が240になっ
たかどうか判断される。
たかどうか判断される。
Y座標か240ならばメインルーチンのステップ10に
、240てな(プればステップ33に夫々進む。
、240てな(プればステップ33に夫々進む。
ステップ33
ステップ32で画素のY座標か240てないと判断され
ると、画素のY座標を1だけ増加する。
ると、画素のY座標を1だけ増加する。
これは、Y1=Y1+1という式で表わされる。
そして、ステップ33が実行されると、ステップ22に
戻り、前jホした処理を、画素の座! (0゜○)から
(0,240>まで行なうことになる。
戻り、前jホした処理を、画素の座! (0゜○)から
(0,240>まで行なうことになる。
以上説明したサブルーチンプログラムを要約すると、2
55x 240の画素で構成された画面の全画素につい
て、濃度値のOでない画素を抽出し、当該画素の座標に
基づいて指定方向における中心候補点とみなされた座標
の画素をプロットする。
55x 240の画素で構成された画面の全画素につい
て、濃度値のOでない画素を抽出し、当該画素の座標に
基づいて指定方向における中心候補点とみなされた座標
の画素をプロットする。
このプロット時には、画素の濃度値を輪郭線を−23=
形成する画素のa度値よりも1ランクインクリメントし
、中心候補点群の画像を作成する。
、中心候補点群の画像を作成する。
なお、ステップ22のV2 (Xi、Yl)は、画像
メモリ10の(Xl、Yl)の座標の画素を示し、ステ
ップ23のVl は画像メモリ8を、ステップ28の■
3は画像メモリ13をそれぞれ表わしている。
メモリ10の(Xl、Yl)の座標の画素を示し、ステ
ップ23のVl は画像メモリ8を、ステップ28の■
3は画像メモリ13をそれぞれ表わしている。
さらに、第8図には、本発明の円および円弧の中心点検
出方法を用いて、シリンダヘットのシリンダの中心を求
める過程が示されている。(a )に示される画像は、
テレビカメラ1で写したシリンダヘッドをA/Dコンバ
ータ7でデジタル変換し、画像メモリ8に記憶した画像
である。そして、この画像は、輪郭線抽出部9によって
空間微分処理され、(b)に示すように、輪郭線だけが
抽出されて、この画像が画像メモリ10に記憶される。
出方法を用いて、シリンダヘットのシリンダの中心を求
める過程が示されている。(a )に示される画像は、
テレビカメラ1で写したシリンダヘッドをA/Dコンバ
ータ7でデジタル変換し、画像メモリ8に記憶した画像
である。そして、この画像は、輪郭線抽出部9によって
空間微分処理され、(b)に示すように、輪郭線だけが
抽出されて、この画像が画像メモリ10に記憶される。
次に(a>及び(b)の画像と、半径入力部5て入力さ
れたシリンダの半径r及び明暗データ入力部6て入力さ
れた明暗データに基づいて、中心候補点算出部12て算
出された中心候補点を含む(C)に示すような画像か作
成され、この画像が画像メモリ13に記憶される。そし
て、閾値算出部14で中心点抽出部15に入力した閾値
以下の濃度値を有する画素を消去して作成されたのか(
d)に示す画像である。さらに、再度間11fl算出部
14で中心点抽出部15に入力した閾値以下の濃度値を
有する画素を消去し、残った画素の中で最も濃度値の大
きい画素の座標を求める。この最終的な処理がなされた
画像が(e)に示す画像である。
れたシリンダの半径r及び明暗データ入力部6て入力さ
れた明暗データに基づいて、中心候補点算出部12て算
出された中心候補点を含む(C)に示すような画像か作
成され、この画像が画像メモリ13に記憶される。そし
て、閾値算出部14で中心点抽出部15に入力した閾値
以下の濃度値を有する画素を消去して作成されたのか(
d)に示す画像である。さらに、再度間11fl算出部
14で中心点抽出部15に入力した閾値以下の濃度値を
有する画素を消去し、残った画素の中で最も濃度値の大
きい画素の座標を求める。この最終的な処理がなされた
画像が(e)に示す画像である。
次に、他の実施例としては、輪郭線画像を抽出せずに、
画像メモリ8に記憶されている濃淡画像のみから被加工
物の中心点を検出する方法かある。
画像メモリ8に記憶されている濃淡画像のみから被加工
物の中心点を検出する方法かある。
この方法は、濃淡画像の全画素について、前)ホした実
施例に示すプログラムと同様の処理を行なうものであり
、画像メモリの容量が小さい場合に有効な方法である。
施例に示すプログラムと同様の処理を行なうものであり
、画像メモリの容量が小さい場合に有効な方法である。
また、その他の実施例としては、画像メモリ10に記憶
されている輪郭線画像のみから検出する方法がある。
されている輪郭線画像のみから検出する方法がある。
−25=
この方法は、円の接線を求める際に、輪郭線の傾きから
近似値的に接線の傾きを求め、その接線から中心点を求
める方法である。
近似値的に接線の傾きを求め、その接線から中心点を求
める方法である。
そして、上記した3つの実施例は、円の中心点算出につ
いてのみ説明したが、閾値算出部14から中心点抽出部
15に出力する閾値12を、円の中心点を算出する場合
の閾値よりも小さい値とすることにより、円弧形状を有
する円弧の中心も求めることが可能になる。
いてのみ説明したが、閾値算出部14から中心点抽出部
15に出力する閾値12を、円の中心点を算出する場合
の閾値よりも小さい値とすることにより、円弧形状を有
する円弧の中心も求めることが可能になる。
(発明の効果)
以上の説明より明らかなように、本発明では、濃淡画像
と輪郭線画像を算出し、入力された指定半径及び明暗デ
ータに基づいて、円形輪郭線を有する被検出体の円中心
を検出するようにしたので、前記被検出体の輪郭部とそ
の背景のコン[−ラストが良好でない画像、又は、同一
の画像に複数の被検出体が存在する場合、においでも、
照明条件等の変化に影響されることがなくなり、常に正
確な円又は円弧の中心点を検出することかできることに
なる。
と輪郭線画像を算出し、入力された指定半径及び明暗デ
ータに基づいて、円形輪郭線を有する被検出体の円中心
を検出するようにしたので、前記被検出体の輪郭部とそ
の背景のコン[−ラストが良好でない画像、又は、同一
の画像に複数の被検出体が存在する場合、においでも、
照明条件等の変化に影響されることがなくなり、常に正
確な円又は円弧の中心点を検出することかできることに
なる。
第1図は本発明に係る円および円弧の中心点を検出する
装置のブロック図、第2図は、第1図に示した装置に内
蔵されているコンピュータのプログラムのフローチャー
ト、第3図は第1図に示した装置の中心候補点算出部で
処理されるプログラムのフローチャート、第4図(a>
、(b)は、エツジ断面をラプラシアンで処理したとき
の曲線を示す図、第5図及び第6図は中心候補点を算出
する場合の説明図、第7図は中心候補点算出後の画像を
示す図、第8図は本発明の中心点検出方法によって、実
際の画像が処理される過程を示す説明図、第9図及び第
1Q図は従来の2値画像処理によって中心を算出する場
合の説明図である。 1・・・テレビカメラ、 2,4・・・被加工物、3・
・・画素。 第1図 第 8 図 (a ) (d )(b)
(e)(C) 第9図 (a) (b) 第10 (a) (c) 1図 (b) (d) 奥 友
装置のブロック図、第2図は、第1図に示した装置に内
蔵されているコンピュータのプログラムのフローチャー
ト、第3図は第1図に示した装置の中心候補点算出部で
処理されるプログラムのフローチャート、第4図(a>
、(b)は、エツジ断面をラプラシアンで処理したとき
の曲線を示す図、第5図及び第6図は中心候補点を算出
する場合の説明図、第7図は中心候補点算出後の画像を
示す図、第8図は本発明の中心点検出方法によって、実
際の画像が処理される過程を示す説明図、第9図及び第
1Q図は従来の2値画像処理によって中心を算出する場
合の説明図である。 1・・・テレビカメラ、 2,4・・・被加工物、3・
・・画素。 第1図 第 8 図 (a ) (d )(b)
(e)(C) 第9図 (a) (b) 第10 (a) (c) 1図 (b) (d) 奥 友
Claims (1)
- 背景に対して異なる明るさとなる円形輪郭線を有する被
検出体を画像メモリに記憶し、当該画像メモリに記憶さ
れている当該被検出体における輪郭線上の一点を通る接
線を算出し、当該接線と直交し、かつ当該一点を通る直
線を算出し、当該直線上の当該背景に比して明方向又は
暗方向のどちらか一方向に当該一点から指定半径だけ離
れた中心候補点を算出し、前記中心候補点の算出を、当
該輪郭線上の全周について行うことによつて得られた点
の集合領域を記憶して中心候補点領域とし、当該中心候
補点領域における点の最密集点を指定半径の円中心とす
る円および円弧の中心点検出方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61162040A JPH0664611B2 (ja) | 1986-07-11 | 1986-07-11 | 円および円弧の中心点検出方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61162040A JPH0664611B2 (ja) | 1986-07-11 | 1986-07-11 | 円および円弧の中心点検出方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6319087A true JPS6319087A (ja) | 1988-01-26 |
| JPH0664611B2 JPH0664611B2 (ja) | 1994-08-22 |
Family
ID=15746942
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61162040A Expired - Fee Related JPH0664611B2 (ja) | 1986-07-11 | 1986-07-11 | 円および円弧の中心点検出方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0664611B2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002197468A (ja) * | 2000-12-27 | 2002-07-12 | Toyo Commun Equip Co Ltd | 媒体位置検出方法、及び媒体認識装置 |
| US7239740B1 (en) | 1998-04-07 | 2007-07-03 | Omron Corporation | Image processing apparatus and method, medium storing program for image processing, and inspection apparatus |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6029878A (ja) * | 1983-07-28 | 1985-02-15 | Fuji Electric Co Ltd | 円形物体検出装置 |
-
1986
- 1986-07-11 JP JP61162040A patent/JPH0664611B2/ja not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6029878A (ja) * | 1983-07-28 | 1985-02-15 | Fuji Electric Co Ltd | 円形物体検出装置 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7239740B1 (en) | 1998-04-07 | 2007-07-03 | Omron Corporation | Image processing apparatus and method, medium storing program for image processing, and inspection apparatus |
| JP2002197468A (ja) * | 2000-12-27 | 2002-07-12 | Toyo Commun Equip Co Ltd | 媒体位置検出方法、及び媒体認識装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0664611B2 (ja) | 1994-08-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4969202A (en) | Image recognition edge detection method and system | |
| US6044165A (en) | Apparatus and method for tracking handwriting from visual input | |
| DE102015113434A1 (de) | Verfahren zur Objektlokalisierung und Posenschätzung für ein interessierendes Objekt | |
| CN113409271B (zh) | 一种镜头油污的检测方法、装置及设备 | |
| CN117745552A (zh) | 自适应图像增强方法、装置及电子设备 | |
| US5621825A (en) | Image processor, image processing method and apparatus applying same | |
| CN109102466A (zh) | 图像污点判定方法及装置 | |
| CN115272664A (zh) | 仪表盘示数展示方法、装置、电子设备和存储介质 | |
| JPS6319087A (ja) | 円および円弧の中心点検出方法 | |
| JP3627249B2 (ja) | 画像処理装置 | |
| JPS6234004A (ja) | 円および円弧の中心点検出方法 | |
| Yip et al. | Line segment patterns Hough transform for circles detection using a 2-dimensional array | |
| EP0447541B1 (en) | Image data processor system and method | |
| JPH0688789A (ja) | 画像中の濃度変動構成画素抽出方法および濃度変動塊判定方法 | |
| JP3745301B2 (ja) | 全方位撮像による環状画像の基準位置検出方法および装置 | |
| JPH05204459A (ja) | 位置計測装置及びコネクタの嵌合方法 | |
| JPH05225336A (ja) | 境界抽出方法および装置 | |
| JPH05113315A (ja) | 円形画像データの中心位置検出方法 | |
| JPH0549927B2 (ja) | ||
| JPH0431751A (ja) | 外観検査による欠陥検出方法 | |
| JPH1097634A (ja) | 物体の認識方法 | |
| JP2002039948A (ja) | 外観検査装置及び外観検査方法 | |
| CN114723771A (zh) | 基于光流和卷积神经网络的高速移动机器人实时监测方法 | |
| JPS6232583A (ja) | 濃淡画像の処理方法 | |
| JPH0624028B2 (ja) | パターン認識のための特徴点コーナーの位置計測方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |