JPH0528268A - 画像処理装置 - Google Patents
画像処理装置Info
- Publication number
- JPH0528268A JPH0528268A JP3182306A JP18230691A JPH0528268A JP H0528268 A JPH0528268 A JP H0528268A JP 3182306 A JP3182306 A JP 3182306A JP 18230691 A JP18230691 A JP 18230691A JP H0528268 A JPH0528268 A JP H0528268A
- Authority
- JP
- Japan
- Prior art keywords
- image
- work
- quadrangle
- pixel
- pixels
- 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 Processing (AREA)
- Image Analysis (AREA)
Abstract
(57)【要約】
【目的】 CCDカメラの視野に収まらない大形の四角
形ワークや、高精度を要する四角形ワークの位置及び傾
きの検出ができる画像処理装置とする。 【構成】 第一及び第二の2台のCCDカメラと、四角
形ワークの位置及び傾きを検出する位置・傾き検出手段
とを備え、2台のCCDカメラで四角形ワークの2頂点
の画像を各々取込み、この2頂点の画像データを基にし
て、2値化処理、ランレングスアドレス作成処理、外接
四角形抽出処理、及び頂点算出処理により2頂点の座標
を求め、この2つの頂点座標から前記四角形ワークの位
置及び傾きを検出する。
形ワークや、高精度を要する四角形ワークの位置及び傾
きの検出ができる画像処理装置とする。 【構成】 第一及び第二の2台のCCDカメラと、四角
形ワークの位置及び傾きを検出する位置・傾き検出手段
とを備え、2台のCCDカメラで四角形ワークの2頂点
の画像を各々取込み、この2頂点の画像データを基にし
て、2値化処理、ランレングスアドレス作成処理、外接
四角形抽出処理、及び頂点算出処理により2頂点の座標
を求め、この2つの頂点座標から前記四角形ワークの位
置及び傾きを検出する。
Description
【0001】
【産業上の利用分野】本発明は、画像処理装置に関する
ものであり、特に、光学的手法によって得られた四角形
ワークの画像データにディジタル処理を施して四角形ワ
ークの位置及び傾きを検出する画像処理装置に関するも
のである。
ものであり、特に、光学的手法によって得られた四角形
ワークの画像データにディジタル処理を施して四角形ワ
ークの位置及び傾きを検出する画像処理装置に関するも
のである。
【0002】
【従来の技術】従来の画像処理装置では、1台のCCD
カメラ等で四角形ワークの全体像を撮像し、得られた画
像データを取込んで画像メモリに保存し、それをソフト
ウェア或いはハードウェアにより2値化処理を施し、2
値化された四角形の各画素から重心座標及びX,Y座標
軸方向の二次モーメントを算出することにより、四角形
ワークの位置や傾きを求めている。
カメラ等で四角形ワークの全体像を撮像し、得られた画
像データを取込んで画像メモリに保存し、それをソフト
ウェア或いはハードウェアにより2値化処理を施し、2
値化された四角形の各画素から重心座標及びX,Y座標
軸方向の二次モーメントを算出することにより、四角形
ワークの位置や傾きを求めている。
【0003】この従来の技術について、図を用いて説明
する。まず、位置検出について述べる。従来の位置検出
は、1台のCCDカメラ等で画像を読込み、2値化処理
後に、画像データから演算を行ない、重心座標を求めて
いる。図9を参照に従来の技術について説明する。図9
は従来の画像処理装置による2値画像を示す説明図であ
る。
する。まず、位置検出について述べる。従来の位置検出
は、1台のCCDカメラ等で画像を読込み、2値化処理
後に、画像データから演算を行ない、重心座標を求めて
いる。図9を参照に従来の技術について説明する。図9
は従来の画像処理装置による2値画像を示す説明図であ
る。
【0004】図において、斜線部は存在している画素を
示し、この画素の塊である斜線部全体が画像である。そ
して、この画像から位置検出を行なうには、重心座標を
求めるのが一般的である。この重心を求める方法を図1
0及び図11のフローチャートを用いて説明する。図1
0は従来の画像処理装置による重心のX座標を求める処
理を示すフローチャートであり、図11は従来の画像処
理装置による重心のY座標を求める処理を示すフローチ
ャートである。図9のような座標画面上の画素の塊の全
画素について、図10及び図11のような処理を行なう
ことにより、画素の塊である画像の重心座標が求まる。
示し、この画素の塊である斜線部全体が画像である。そ
して、この画像から位置検出を行なうには、重心座標を
求めるのが一般的である。この重心を求める方法を図1
0及び図11のフローチャートを用いて説明する。図1
0は従来の画像処理装置による重心のX座標を求める処
理を示すフローチャートであり、図11は従来の画像処
理装置による重心のY座標を求める処理を示すフローチ
ャートである。図9のような座標画面上の画素の塊の全
画素について、図10及び図11のような処理を行なう
ことにより、画素の塊である画像の重心座標が求まる。
【0005】まず、X座標を算出する方法について述べ
る。図10において、ステップS1001でX方向のラ
イン番号nの初期設定をする。そして、ステップS10
02で該X方向のnラインの開始座標及び終了座標(X
s ,Xe)を求め、ステップS1003で該X方向のn
ラインの画素数(pixel)を求め、ステップS10
04で前記nラインの画素数(pixel)をnライン
よりも前迄の画素数に加算し、総画素数(area)を
求め、ステップS1005でgrvを次の(1)式によ
り演算する。 grv=grv+{pixel*(Xs +Xe )}/2 ・・(1)式 なお、このgrvは画素によるY軸に関する面積モーメ
ント(一次モーメント)として把握できる。
る。図10において、ステップS1001でX方向のラ
イン番号nの初期設定をする。そして、ステップS10
02で該X方向のnラインの開始座標及び終了座標(X
s ,Xe)を求め、ステップS1003で該X方向のn
ラインの画素数(pixel)を求め、ステップS10
04で前記nラインの画素数(pixel)をnライン
よりも前迄の画素数に加算し、総画素数(area)を
求め、ステップS1005でgrvを次の(1)式によ
り演算する。 grv=grv+{pixel*(Xs +Xe )}/2 ・・(1)式 なお、このgrvは画素によるY軸に関する面積モーメ
ント(一次モーメント)として把握できる。
【0006】この後、ステップS1006で最後のライ
ンのgrvの演算が終了したか否かを判断し、未だ最後
のラインのgrvの演算が終了していない場合は、ステ
ップS1007でX方向のラインのライン番号nをイン
クリメントして、ステップS1002に戻り、次の未処
理のラインについて上記の処理を繰返す。そして、最後
のラインのgrvの演算が終了した後に、ステップS1
008に進み、重心のX座標を次の(2)式により求め
る。 gravX=grv/area ・・・(2)式
ンのgrvの演算が終了したか否かを判断し、未だ最後
のラインのgrvの演算が終了していない場合は、ステ
ップS1007でX方向のラインのライン番号nをイン
クリメントして、ステップS1002に戻り、次の未処
理のラインについて上記の処理を繰返す。そして、最後
のラインのgrvの演算が終了した後に、ステップS1
008に進み、重心のX座標を次の(2)式により求め
る。 gravX=grv/area ・・・(2)式
【0007】ここで、図9の2値画像の重心のX座標を
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=2であるから、grv=0+{2*
(1+2)}/2=3となる。 3ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=4であるから、grv=3+{2*
(1+2)}/2=6となる。 4ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=8であるから、grv=6+{4*
(1+4)}/2=16となる。 5ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=12であるから、grv=16+
{4*(1+4)}/2=26となる。 これで、全てのラインについての処理が終わり、この結
果を利用して重心のX座標gravXを求める処理を行
なう。即ち、gravX=26/12=2.166…と
なり、図9の2値画像の重心のX座標gravX2.
2となる。
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=2であるから、grv=0+{2*
(1+2)}/2=3となる。 3ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=4であるから、grv=3+{2*
(1+2)}/2=6となる。 4ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=8であるから、grv=6+{4*
(1+4)}/2=16となる。 5ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=12であるから、grv=16+
{4*(1+4)}/2=26となる。 これで、全てのラインについての処理が終わり、この結
果を利用して重心のX座標gravXを求める処理を行
なう。即ち、gravX=26/12=2.166…と
なり、図9の2値画像の重心のX座標gravX2.
2となる。
【0008】次に、Y座標を算出する方法について述べ
る。図11において、ステップS1101でX方向のラ
イン番号nの初期設定をする。そして、ステップS11
02で該X方向のnラインの開始座標、終了座標(Xs
,Xe )及びY座標(Y)を求め、ステップS110
3で該X方向のnラインの画素数(pixel)を求
め、ステップS1104で前記nラインの画素数(pi
xel)をnラインよりも前迄の画素数に加算し、総画
素数(area)を求め、ステップS1105でgrv
を次の(3)式により演算する。 grv=grv+(pixel*Y) ・・・(3)式 なお、このgrvは画素によるX軸に関する面積モーメ
ント(一次モーメント)として把握できる。
る。図11において、ステップS1101でX方向のラ
イン番号nの初期設定をする。そして、ステップS11
02で該X方向のnラインの開始座標、終了座標(Xs
,Xe )及びY座標(Y)を求め、ステップS110
3で該X方向のnラインの画素数(pixel)を求
め、ステップS1104で前記nラインの画素数(pi
xel)をnラインよりも前迄の画素数に加算し、総画
素数(area)を求め、ステップS1105でgrv
を次の(3)式により演算する。 grv=grv+(pixel*Y) ・・・(3)式 なお、このgrvは画素によるX軸に関する面積モーメ
ント(一次モーメント)として把握できる。
【0009】この後、ステップS1106で最後のライ
ンのgrvの演算が終了したか否かを判断し、未だ最後
のラインのgrvの演算が終了していない場合は、ステ
ップS1107でX方向のラインのライン番号nをイン
クリメントして、ステップS1102に戻り、次の未処
理のラインについて上記の処理を繰返す。そして、最後
のラインのgrvの演算が終了した後に、ステップS1
108に進み、重心のY座標を次の(4)式により求め
る。 gravY=grv/area ・・・(4)式
ンのgrvの演算が終了したか否かを判断し、未だ最後
のラインのgrvの演算が終了していない場合は、ステ
ップS1107でX方向のラインのライン番号nをイン
クリメントして、ステップS1102に戻り、次の未処
理のラインについて上記の処理を繰返す。そして、最後
のラインのgrvの演算が終了した後に、ステップS1
108に進み、重心のY座標を次の(4)式により求め
る。 gravY=grv/area ・・・(4)式
【0010】ここで、図9の2値画像の重心のY座標を
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、Y=1、
pixel=2、area=2であるから、grv=0
+2*1=2となる。 3ライン目の処理では、Xs =1,Xe =2、Y=2、
pixel=2、area=4であるから、grv=2
+2*2=6となる。 4ライン目の処理では、Xs =1,Xe =4、Y=3、
pixel=4、area=8であるから、grv=6
+4*3=18となる。 5ライン目の処理では、Xs =1,Xe =4、Y=4、
pixel=4、area=12であるから、grv=
18+4*4=34となる。
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、Y=1、
pixel=2、area=2であるから、grv=0
+2*1=2となる。 3ライン目の処理では、Xs =1,Xe =2、Y=2、
pixel=2、area=4であるから、grv=2
+2*2=6となる。 4ライン目の処理では、Xs =1,Xe =4、Y=3、
pixel=4、area=8であるから、grv=6
+4*3=18となる。 5ライン目の処理では、Xs =1,Xe =4、Y=4、
pixel=4、area=12であるから、grv=
18+4*4=34となる。
【0011】これで、全てのラインについての処理が終
わり、この結果を利用して重心のY座標gravYを求
める処理を行なう。即ち、gravY=34/12=
2.833…となり、図9の2値画像の重心のY座標g
ravY2.8となる。したがって、図9の2値画像
の重心座標(gravX,gravY)は(2.2,
2.8)となる。
わり、この結果を利用して重心のY座標gravYを求
める処理を行なう。即ち、gravY=34/12=
2.833…となり、図9の2値画像の重心のY座標g
ravY2.8となる。したがって、図9の2値画像
の重心座標(gravX,gravY)は(2.2,
2.8)となる。
【0012】続いて、傾きを算出する方法について述べ
る。図12は従来の画像処理装置による傾きを求める処
理を示すフローチャートである。
る。図12は従来の画像処理装置による傾きを求める処
理を示すフローチャートである。
【0013】図12において、ステップS1201でX
方向のライン番号nの初期設定をする。そして、ステッ
プS1202で該X方向のnラインの画素の断面相乗モ
ーメント(KnXY )を求め、ステップS1203で該X
方向のnラインの画素のX軸に対する断面二次モーメン
ト(InX)を求め、ステップS1204で該X方向のn
ラインの画素のY軸に対する断面二次モーメント(In
Y)を求める。この後、ステップS1205で最後のラ
インについて演算が終了したか否かを判断し、未だ最後
のラインの演算が終了していない場合は、ステップS1
206でX方向のラインのライン番号nをインクリメン
トして、ステップS1202に戻り、次の未処理のライ
ンについて上記の処理を繰返す。そして、最後のライン
の演算が終了した後に、ステップS1207に進み、重
心座標(gravX,gravY)を算出する。なお、
この重心座標の算出は、上記の図10及び図11の処理
によって求まる。ステップS1208では、全画素数を
加算して総画素面積(area)を求め、ステップS1
209では全画素の断面相乗モーメント(KXY)を、ス
テップS1210で全画素のX軸に対する断面二次モー
メント(IX )を、ステップS1211で全画素のY軸
に対する断面二次モーメント(IY )を各々求め、ステ
ップS1212で傾き(θ)を算出する。この傾き
(θ)は次の既知の(5)式により演算する。 θ=(1/2)tan-1{2KXY/(IY −IX )} ・・・(5)式 なお、(5)式において、KXYは全画素の断面相乗モー
メント、IX は全画素のX軸に対する断面二次モーメン
ト、IY は全画素のY軸に対する断面二次モーメントで
ある。
方向のライン番号nの初期設定をする。そして、ステッ
プS1202で該X方向のnラインの画素の断面相乗モ
ーメント(KnXY )を求め、ステップS1203で該X
方向のnラインの画素のX軸に対する断面二次モーメン
ト(InX)を求め、ステップS1204で該X方向のn
ラインの画素のY軸に対する断面二次モーメント(In
Y)を求める。この後、ステップS1205で最後のラ
インについて演算が終了したか否かを判断し、未だ最後
のラインの演算が終了していない場合は、ステップS1
206でX方向のラインのライン番号nをインクリメン
トして、ステップS1202に戻り、次の未処理のライ
ンについて上記の処理を繰返す。そして、最後のライン
の演算が終了した後に、ステップS1207に進み、重
心座標(gravX,gravY)を算出する。なお、
この重心座標の算出は、上記の図10及び図11の処理
によって求まる。ステップS1208では、全画素数を
加算して総画素面積(area)を求め、ステップS1
209では全画素の断面相乗モーメント(KXY)を、ス
テップS1210で全画素のX軸に対する断面二次モー
メント(IX )を、ステップS1211で全画素のY軸
に対する断面二次モーメント(IY )を各々求め、ステ
ップS1212で傾き(θ)を算出する。この傾き
(θ)は次の既知の(5)式により演算する。 θ=(1/2)tan-1{2KXY/(IY −IX )} ・・・(5)式 なお、(5)式において、KXYは全画素の断面相乗モー
メント、IX は全画素のX軸に対する断面二次モーメン
ト、IY は全画素のY軸に対する断面二次モーメントで
ある。
【0014】ここで、図9の2値画像の各ラインについ
て上記方法によりKnXY 、InX、InYを求め、これを利
用して傾きθを算出する。まず、1ライン目の処理で
は、画素が無く、K1XY 、I1X、I1Yは共に0である。 2ライン目の処理では、K2XY =1×1+1×2=3、
I2X=12 +12 =2、I2Y=12 +22 =5となる。 3ライン目の処理では、K3XY =2×1+2×2=6、
I3X=22 +22 =8、I3Y=12 +22 =5となる。 4ライン目の処理では、K4XY =3×1+3×2+3×
3+3×4=30、I4X=32 +32 +32 +32 =3
6、I4Y=12 +22 +32 +42 =30となる。 5ライン目の処理では、K5XY =4×1+4×2+4×
3+4×4=40、I5X=42 +42 +42 +42 =6
4、I5Y=12 +22 +32 +42 =30となる。
て上記方法によりKnXY 、InX、InYを求め、これを利
用して傾きθを算出する。まず、1ライン目の処理で
は、画素が無く、K1XY 、I1X、I1Yは共に0である。 2ライン目の処理では、K2XY =1×1+1×2=3、
I2X=12 +12 =2、I2Y=12 +22 =5となる。 3ライン目の処理では、K3XY =2×1+2×2=6、
I3X=22 +22 =8、I3Y=12 +22 =5となる。 4ライン目の処理では、K4XY =3×1+3×2+3×
3+3×4=30、I4X=32 +32 +32 +32 =3
6、I4Y=12 +22 +32 +42 =30となる。 5ライン目の処理では、K5XY =4×1+4×2+4×
3+4×4=40、I5X=42 +42 +42 +42 =6
4、I5Y=12 +22 +32 +42 =30となる。
【0015】また、面積(area)=12、 重心座標(gravX,gravY)=(2.2,2.
8) であるから、全画素の断面相乗モーメント(KXY)、X
軸に対する断面二次モーメント(IX )、Y軸に対する
断面二次モーメント(IY )は次のようになる。 KXY=(K2XY +K3XY +K4XY +K5XY )−(area×gravX ×gravY) =(3+6+30+40)−(12×2.2×2.8)=5.08 IX =(I2X+I3X+I4X+I5X)−(area×gravX×gravX) =(2+8+36+64)−(12×2.2×2.2)=51.92 IY =(I2Y+I3Y+I4Y+I5Y)−(area×gravY×gravY) =(5+5+30+30)−(12×2.8×2.8)=−24.08
8) であるから、全画素の断面相乗モーメント(KXY)、X
軸に対する断面二次モーメント(IX )、Y軸に対する
断面二次モーメント(IY )は次のようになる。 KXY=(K2XY +K3XY +K4XY +K5XY )−(area×gravX ×gravY) =(3+6+30+40)−(12×2.2×2.8)=5.08 IX =(I2X+I3X+I4X+I5X)−(area×gravX×gravX) =(2+8+36+64)−(12×2.2×2.2)=51.92 IY =(I2Y+I3Y+I4Y+I5Y)−(area×gravY×gravY) =(5+5+30+30)−(12×2.8×2.8)=−24.08
【0016】したがって、傾き(θ)は、 θ=(1/2)tan-1{(2×5.08)/(−24.08−51.92)} −3.81(度)となる。こうして、図9の2値画像
の傾き(θ)が求まる。
の傾き(θ)が求まる。
【0017】なお、この他の従来の画像処理装置とし
て、特開平2−250181号公報に掲載の技術を挙げ
ることができる。これは、2値化処理によって得られた
四角形画像の各頂点の内角を求め、これらの角度のうち
直角に近い角度を有する2つの頂点の四角形における位
置関係から、所望の計算手順を選択して回転ズレ角度を
求めるものである。
て、特開平2−250181号公報に掲載の技術を挙げ
ることができる。これは、2値化処理によって得られた
四角形画像の各頂点の内角を求め、これらの角度のうち
直角に近い角度を有する2つの頂点の四角形における位
置関係から、所望の計算手順を選択して回転ズレ角度を
求めるものである。
【0018】
【発明が解決しようとする課題】上記のような従来の画
像処理装置では、1台のCCDカメラ等で四角形ワーク
の全体像を撮像し、得られた画像データを利用して図1
0から図12の処理手順を踏んで四角形ワークの位置及
び傾きを求めていた。したがって、CCDカメラの視野
に収まらない大形の四角形ワークの位置及び傾きの検出
はできなかった。
像処理装置では、1台のCCDカメラ等で四角形ワーク
の全体像を撮像し、得られた画像データを利用して図1
0から図12の処理手順を踏んで四角形ワークの位置及
び傾きを求めていた。したがって、CCDカメラの視野
に収まらない大形の四角形ワークの位置及び傾きの検出
はできなかった。
【0019】また、CCDカメラの視野に四角形ワーク
は収まるが、画像の分解能との関係で出力結果を精度良
く求めることができないことがあった。例えば、画像の
分解能は、256×256画素、512×512画素が
一般的であり、視野が固定されていれば、1画素が何ミ
リに相当するかが求まり、この単位画素当りのミリ数は
画像の分解能で決定されるため、これ以上の出力結果の
精度を望むことはできなかった。
は収まるが、画像の分解能との関係で出力結果を精度良
く求めることができないことがあった。例えば、画像の
分解能は、256×256画素、512×512画素が
一般的であり、視野が固定されていれば、1画素が何ミ
リに相当するかが求まり、この単位画素当りのミリ数は
画像の分解能で決定されるため、これ以上の出力結果の
精度を望むことはできなかった。
【0020】そこで、この発明は、CCDカメラの視野
に収まらない大形の四角形ワークや、高精度を要する四
角形ワークの位置及び傾きの検出ができる画像処理装置
の提供を課題とするものである。
に収まらない大形の四角形ワークや、高精度を要する四
角形ワークの位置及び傾きの検出ができる画像処理装置
の提供を課題とするものである。
【0021】
【課題を解決するための手段】本発明にかかる画像処理
装置は、四角形ワークの2頂点の画像を各々取込む画像
入力手段と、前記画像入力手段で取込んだ2頂点の画像
データを処理して前記四角形ワークの位置及び傾きを検
出する位置・傾き検出手段とを具備するものである。
装置は、四角形ワークの2頂点の画像を各々取込む画像
入力手段と、前記画像入力手段で取込んだ2頂点の画像
データを処理して前記四角形ワークの位置及び傾きを検
出する位置・傾き検出手段とを具備するものである。
【0022】
【作用】本発明の画像処理装置においては、画像入力手
段で四角形ワークの2頂点の画像を各々取込み、この2
頂点の位置座標を検出し、この位置座標から四角形ワー
クの位置及び傾きの検出を行なうものであるから、画像
入力手段の視野に収まらない大型の四角形ワークの位置
及び傾きを検出できるとともに、画像の分解能の影響を
受けることなく精度良く四角形ワークの位置及び傾きの
検出ができる。
段で四角形ワークの2頂点の画像を各々取込み、この2
頂点の位置座標を検出し、この位置座標から四角形ワー
クの位置及び傾きの検出を行なうものであるから、画像
入力手段の視野に収まらない大型の四角形ワークの位置
及び傾きを検出できるとともに、画像の分解能の影響を
受けることなく精度良く四角形ワークの位置及び傾きの
検出ができる。
【0023】
【実施例】以下、本発明の実施例について説明をする。
【0024】図1は本発明の一実施例である画像処理装
置の処理部及び動作の流を示すフローチャートである。
置の処理部及び動作の流を示すフローチャートである。
【0025】図において、ステップS101は画像入力
処理を行なう第1の画像入力部であり、CCDカメラ等
の撮像手段により四角形ワークの頂点を撮像し、その映
像信号を得て、更に、この映像信号をA/D変換して出
力する。ステップS102は2値化処理を行なう2値化
部であり、上記のステップS101でディジタル化され
たデータを2値化処理して、四角形ワークの2値画像を
得る。また、ステップS103のランレングスアドレス
データ作成部では、2値化された四角形ワークの画素の
塊をランレングスアドレスデータとしてとらえ、その開
始、終了アドレスを算出する。ステップS104の外接
四角形抽出部では、ランレングスアドレスデータに基づ
き2値画像の外接四角形の左上と右下の座標を得る。ス
テップS105は四角形ワークの頂点の座標を算出する
頂点算出部であり、前記のステップS104の外接四角
形抽出部で得られた外接四角形の2つの座標から四角形
ワークの頂点の座標を算出する。そして、ステップS1
06では、頂点を算出したのが1台目のCCDカメラ等
の撮像手段であるか、或いは2台目のCCDカメラ等の
撮像手段であるのかを判断し、1台目のCCDカメラ等
の撮像手段により頂点を算出した場合は、ステップS1
07に進み、1台目のCCDカメラ等の撮像手段で算出
した頂点の座標(X1 ,Y1 )をメモリに保存し、ステ
ップS108に進む。ステップS108はステップS1
01と同様の画像入力処理を行なう第2の画像入力部で
あり、2台目のCCDカメラ等の撮像手段により四角形
ワークの2つ目の頂点を撮像し、その映像信号を得て、
更に、この映像信号をA/D変換して出力する。この
後、再びステップS102に戻り、上記の1台目のCC
Dカメラ等の撮像手段と同様の処理手順を行なう。一
方、ステップS106で2台目のCCDカメラ等の撮像
手段により頂点を算出した場合は、ステップS109で
2台目のCCDカメラ等の撮像手段で算出した頂点の座
標(X2 ,Y2 )をメモリに保存する。ステップS11
0では、1台目と2台目の各々のCCDカメラ等の撮像
手段から算出された頂点の座標(X1 ,Y1 ),(X2
,Y2 )から、その中央の座標及び傾き角度を求め
る。但し、外接四角形は2頂点の座標、即ちP1(Xmi
n ,Ymin ),P2(Xmax ,Ymax )を出力するもの
とする。
処理を行なう第1の画像入力部であり、CCDカメラ等
の撮像手段により四角形ワークの頂点を撮像し、その映
像信号を得て、更に、この映像信号をA/D変換して出
力する。ステップS102は2値化処理を行なう2値化
部であり、上記のステップS101でディジタル化され
たデータを2値化処理して、四角形ワークの2値画像を
得る。また、ステップS103のランレングスアドレス
データ作成部では、2値化された四角形ワークの画素の
塊をランレングスアドレスデータとしてとらえ、その開
始、終了アドレスを算出する。ステップS104の外接
四角形抽出部では、ランレングスアドレスデータに基づ
き2値画像の外接四角形の左上と右下の座標を得る。ス
テップS105は四角形ワークの頂点の座標を算出する
頂点算出部であり、前記のステップS104の外接四角
形抽出部で得られた外接四角形の2つの座標から四角形
ワークの頂点の座標を算出する。そして、ステップS1
06では、頂点を算出したのが1台目のCCDカメラ等
の撮像手段であるか、或いは2台目のCCDカメラ等の
撮像手段であるのかを判断し、1台目のCCDカメラ等
の撮像手段により頂点を算出した場合は、ステップS1
07に進み、1台目のCCDカメラ等の撮像手段で算出
した頂点の座標(X1 ,Y1 )をメモリに保存し、ステ
ップS108に進む。ステップS108はステップS1
01と同様の画像入力処理を行なう第2の画像入力部で
あり、2台目のCCDカメラ等の撮像手段により四角形
ワークの2つ目の頂点を撮像し、その映像信号を得て、
更に、この映像信号をA/D変換して出力する。この
後、再びステップS102に戻り、上記の1台目のCC
Dカメラ等の撮像手段と同様の処理手順を行なう。一
方、ステップS106で2台目のCCDカメラ等の撮像
手段により頂点を算出した場合は、ステップS109で
2台目のCCDカメラ等の撮像手段で算出した頂点の座
標(X2 ,Y2 )をメモリに保存する。ステップS11
0では、1台目と2台目の各々のCCDカメラ等の撮像
手段から算出された頂点の座標(X1 ,Y1 ),(X2
,Y2 )から、その中央の座標及び傾き角度を求め
る。但し、外接四角形は2頂点の座標、即ちP1(Xmi
n ,Ymin ),P2(Xmax ,Ymax )を出力するもの
とする。
【0026】本実施例を構成する上記の図1中の各要素
のうち、ステップS101の第1の画像入力部、ステッ
プS102の2値化部、ステップS103のランレング
スアドレスデータ作成部、ステップS104の外接四角
形抽出部、及びステップS108の第2の画像入力部に
ついては、既にその詳細は提案されており、公知であっ
たり、或いはディジタル処理から容易に類推できるの
で、これらの説明は省略する。ここでは、本実施例の最
大の特徴部である頂点算出部(ステップS105)、2
つの頂点座標から四角形ワークの位置及び傾きを検出す
る処理(ステップS110)について具体的に説明す
る。
のうち、ステップS101の第1の画像入力部、ステッ
プS102の2値化部、ステップS103のランレング
スアドレスデータ作成部、ステップS104の外接四角
形抽出部、及びステップS108の第2の画像入力部に
ついては、既にその詳細は提案されており、公知であっ
たり、或いはディジタル処理から容易に類推できるの
で、これらの説明は省略する。ここでは、本実施例の最
大の特徴部である頂点算出部(ステップS105)、2
つの頂点座標から四角形ワークの位置及び傾きを検出す
る処理(ステップS110)について具体的に説明す
る。
【0027】まず、図2で四角形ワークの画像入力の概
要について説明する。図2は本発明の一実施例である画
像処理装置による四角ワークの画像入力の概要を示す説
明図である。
要について説明する。図2は本発明の一実施例である画
像処理装置による四角ワークの画像入力の概要を示す説
明図である。
【0028】図において、1は四角形ワーク、2は第一
のCCDカメラの視野、3は第二のCCDカメラの視野
であり、4は第一のCCDカメラによる四角形ワーク1
の1つの頂点に外接する外接四角形、5は同じく第二の
CCDカメラによる四角形ワーク1の他の頂点に外接す
る外接四角形である。図2のように、若干傾いた四角形
ワーク1の2頂点が各々第一及び第二のCCDカメラの
視野2,3に入るように設定し、この2台のCCDカメ
ラから画像を入力し、2値化処理を施す。
のCCDカメラの視野、3は第二のCCDカメラの視野
であり、4は第一のCCDカメラによる四角形ワーク1
の1つの頂点に外接する外接四角形、5は同じく第二の
CCDカメラによる四角形ワーク1の他の頂点に外接す
る外接四角形である。図2のように、若干傾いた四角形
ワーク1の2頂点が各々第一及び第二のCCDカメラの
視野2,3に入るように設定し、この2台のCCDカメ
ラから画像を入力し、2値化処理を施す。
【0029】図3は本発明の一実施例である画像処理装
置のCCDカメラによる画像入力後に2値化処理をし、
外接四角形を求めた状態を示す説明図である。この図で
は、求める頂点は、(0,5)或いは(0,6)に相当
すると仮定できる。
置のCCDカメラによる画像入力後に2値化処理をし、
外接四角形を求めた状態を示す説明図である。この図で
は、求める頂点は、(0,5)或いは(0,6)に相当
すると仮定できる。
【0030】次に、上記の頂点の検出方法について図4
から図8を用いて説明する。図4は本発明の一実施例で
ある画像処理装置による四角ワークの画像入力状態を示
す説明図である。
から図8を用いて説明する。図4は本発明の一実施例で
ある画像処理装置による四角ワークの画像入力状態を示
す説明図である。
【0031】図において、状態(a)は図2の第一のC
CDカメラの視野2の画像を示し、斜線部が四角形ワー
ク1の2値画像を示す。この状態(a)の画像は、四角
形ワーク1が時計回りに傾斜していることを示してい
る。また、点線は2値画像の外接四角形を表す。そし
て、点1が四角形ワーク1の求めたい頂点に相当する。
このとき、注目するのは、コーナー1とコーナー2に存
在する画素である。状態(a)のコーナー1、即ち、図
3の座標値(0,0)を頂点とする周囲3画素(0,
1),(1,0),(1,1)のいずれにも画素は存在
していない。また、コーナー2、即ち、図3の座標値
(8,8)を頂点とする周囲3画素(8,7),(7,
8),(7,7)のいずれかに画素は存在している(図
3では、全てに画素が存在している)。このような条件
が成立しているときを状態(a)と定義する。
CDカメラの視野2の画像を示し、斜線部が四角形ワー
ク1の2値画像を示す。この状態(a)の画像は、四角
形ワーク1が時計回りに傾斜していることを示してい
る。また、点線は2値画像の外接四角形を表す。そし
て、点1が四角形ワーク1の求めたい頂点に相当する。
このとき、注目するのは、コーナー1とコーナー2に存
在する画素である。状態(a)のコーナー1、即ち、図
3の座標値(0,0)を頂点とする周囲3画素(0,
1),(1,0),(1,1)のいずれにも画素は存在
していない。また、コーナー2、即ち、図3の座標値
(8,8)を頂点とする周囲3画素(8,7),(7,
8),(7,7)のいずれかに画素は存在している(図
3では、全てに画素が存在している)。このような条件
が成立しているときを状態(a)と定義する。
【0032】また、状態(b)も状態(a)と同様に、
図2の第一のCCDカメラの視野2の画像を示し、この
状態(b)の画像は、四角形ワーク1が反時計回りに傾
斜していることを示している。コーナー1とコーナー2
に存在する画素に注目すると、コーナー1の4画素中の
いずれかには画素が存在し、コーナー2の4画素中のい
ずれにも画素は存在していない。このような条件が成立
しているときを状態(b)と定義する。
図2の第一のCCDカメラの視野2の画像を示し、この
状態(b)の画像は、四角形ワーク1が反時計回りに傾
斜していることを示している。コーナー1とコーナー2
に存在する画素に注目すると、コーナー1の4画素中の
いずれかには画素が存在し、コーナー2の4画素中のい
ずれにも画素は存在していない。このような条件が成立
しているときを状態(b)と定義する。
【0033】また、状態(c)も状態(a)及び状態
(b)と同様に、図2の第一のCCDカメラの視野2の
画像を示す。コーナー1とコーナー2に存在する画素に
注目すると、コーナー1及びコーナー2の4画素中のい
ずれかに画素が存在している。このような条件が成立し
ているときを状態(c)と定義する。
(b)と同様に、図2の第一のCCDカメラの視野2の
画像を示す。コーナー1とコーナー2に存在する画素に
注目すると、コーナー1及びコーナー2の4画素中のい
ずれかに画素が存在している。このような条件が成立し
ているときを状態(c)と定義する。
【0034】上記のように、CCDカメラの視野の画像
のパターンは大きく三種類の状態に分かれ、各々の状態
に対応した処理が行なわれる。この三種類の状態に分け
る処理の流れが図5である。図5は本発明の一実施例で
ある画像処理装置による画像入力を三種類の状態に振分
ける動作を示すフローチャートである。なお、この図で
は、既に、画像入力後、2値化処理、ランレングスアド
レスデータ作成処理、外接四角形抽出処理は完了してお
り、この図5の処理を行なうプログラムは画像処理のメ
インプログラム実行中にコールされる。
のパターンは大きく三種類の状態に分かれ、各々の状態
に対応した処理が行なわれる。この三種類の状態に分け
る処理の流れが図5である。図5は本発明の一実施例で
ある画像処理装置による画像入力を三種類の状態に振分
ける動作を示すフローチャートである。なお、この図で
は、既に、画像入力後、2値化処理、ランレングスアド
レスデータ作成処理、外接四角形抽出処理は完了してお
り、この図5の処理を行なうプログラムは画像処理のメ
インプログラム実行中にコールされる。
【0035】図において、まず、ステップS501でコ
ーナー1に画素が存在しているか否かの判断を行ない、
コーナー1に画素が存在する場合は、ステップS502
でコーナー2に画素が存在するか否かの判断を行なう。
コーナー2に画素が存在する場合は、コーナー1及びコ
ーナー2のいずれにも画素が存在するので、ステップS
503に進み、状態(c)の処理を行なう。また、ステ
ップS502でコーナー2に画素が存在しない場合は、
ステップS504で状態(b)の処理を行う。一方、ス
テップS501でコーナー1に画素が存在しない場合
は、ステップS505でコーナー2に画素が存在するか
否かの判断を行なう。コーナー2に画素が存在する場合
は、ステップS506で状態(a)の処理を行ない、ス
テップS505でコーナー2に画素が存在しない場合
は、コーナー1及びコーナー2のいずれにも画素が存在
しないので、ステップS507に進み、エラー処理を行
なう。こうして、外接四角形のコーナー1及びコーナー
2の画素の状態を判断し、その状態に応じて状態(a)
から状態(c)の三種類の状態に振分け、この三種類の
各状態に応じた頂点算出処理動作を行なう。
ーナー1に画素が存在しているか否かの判断を行ない、
コーナー1に画素が存在する場合は、ステップS502
でコーナー2に画素が存在するか否かの判断を行なう。
コーナー2に画素が存在する場合は、コーナー1及びコ
ーナー2のいずれにも画素が存在するので、ステップS
503に進み、状態(c)の処理を行なう。また、ステ
ップS502でコーナー2に画素が存在しない場合は、
ステップS504で状態(b)の処理を行う。一方、ス
テップS501でコーナー1に画素が存在しない場合
は、ステップS505でコーナー2に画素が存在するか
否かの判断を行なう。コーナー2に画素が存在する場合
は、ステップS506で状態(a)の処理を行ない、ス
テップS505でコーナー2に画素が存在しない場合
は、コーナー1及びコーナー2のいずれにも画素が存在
しないので、ステップS507に進み、エラー処理を行
なう。こうして、外接四角形のコーナー1及びコーナー
2の画素の状態を判断し、その状態に応じて状態(a)
から状態(c)の三種類の状態に振分け、この三種類の
各状態に応じた頂点算出処理動作を行なう。
【0036】ここで、上記の三種類の各状態に応じた頂
点算出処理動作について述べる。図6から図8は図4及
び図5の状態(a)から状態(c)の各状態処理に対応
したフローチャートであり、図6は図4及び図5の状態
(a)の頂点算出処理動作を示し、図7は図4及び図5
の状態(b)の頂点算出処理動作を示し、図8は図4及
び図5の状態(c)の頂点算出処理動作を示す。
点算出処理動作について述べる。図6から図8は図4及
び図5の状態(a)から状態(c)の各状態処理に対応
したフローチャートであり、図6は図4及び図5の状態
(a)の頂点算出処理動作を示し、図7は図4及び図5
の状態(b)の頂点算出処理動作を示し、図8は図4及
び図5の状態(c)の頂点算出処理動作を示す。
【0037】まず、図6において、ステップS601で
外接四角形のXminを固定し、Y軸の1ライン上をY方
向にサーチをし、各画素の有無を調べ、ステップS60
2で存在する画素のY方向のアドレスを保存する。そし
て、ステップS603でY方向の画素が1画素のみか否
かを判断し、1画素のみの場合は、ステップS604で
該画素のアドレスを、即ち、(Xmin ,Y)を頂点の座
標とする。また、Y方向に複数の画素が存在している場
合には、ステップS605で最大Ymax と最小Ymin の
アドレス値の平均値を求め、ステップS606で該平均
値を採用し、(Xmin ,(Ymax +Ymin )/2)を頂
点の座標とする。こうして、図4の状態(a)における
四角形ワーク1の頂点が求まる。
外接四角形のXminを固定し、Y軸の1ライン上をY方
向にサーチをし、各画素の有無を調べ、ステップS60
2で存在する画素のY方向のアドレスを保存する。そし
て、ステップS603でY方向の画素が1画素のみか否
かを判断し、1画素のみの場合は、ステップS604で
該画素のアドレスを、即ち、(Xmin ,Y)を頂点の座
標とする。また、Y方向に複数の画素が存在している場
合には、ステップS605で最大Ymax と最小Ymin の
アドレス値の平均値を求め、ステップS606で該平均
値を採用し、(Xmin ,(Ymax +Ymin )/2)を頂
点の座標とする。こうして、図4の状態(a)における
四角形ワーク1の頂点が求まる。
【0038】また、図7において、ステップS701で
外接四角形のYmaxを固定し、X軸の1ライン上をX方
向にサーチをし、各画素の有無を調べ、ステップS70
2で存在する画素のX方向のアドレスを保存する。そし
て、ステップS703でX方向の画素が1画素のみか否
かを判断し、1画素のみの場合は、ステップS704で
該画素のアドレスを、即ち、(X,Ymax )を頂点の座
標とする。また、X方向に複数の画素が存在している場
合は、ステップS705で最大Xmax と最小Xmin の平
均値を求め、ステップS706で該平均値を採用し、
((Xmax +Xmin )/2,Ymax )を頂点の座標とす
る。こうして、図4の状態(b)における四角形ワーク
1の頂点が求まる。
外接四角形のYmaxを固定し、X軸の1ライン上をX方
向にサーチをし、各画素の有無を調べ、ステップS70
2で存在する画素のX方向のアドレスを保存する。そし
て、ステップS703でX方向の画素が1画素のみか否
かを判断し、1画素のみの場合は、ステップS704で
該画素のアドレスを、即ち、(X,Ymax )を頂点の座
標とする。また、X方向に複数の画素が存在している場
合は、ステップS705で最大Xmax と最小Xmin の平
均値を求め、ステップS706で該平均値を採用し、
((Xmax +Xmin )/2,Ymax )を頂点の座標とす
る。こうして、図4の状態(b)における四角形ワーク
1の頂点が求まる。
【0039】そして、図8において、ステップS801
では無条件で外接四角形(Xmin,Ymax )を頂点の座
標とする。こうして、図4の状態(c)における四角形
ワーク1の頂点が求まる。
では無条件で外接四角形(Xmin,Ymax )を頂点の座
標とする。こうして、図4の状態(c)における四角形
ワーク1の頂点が求まる。
【0040】上記のようにして、第一のCCDカメラに
よる画像入力の処理が終了した後に、同様にして第二の
CCDカメラによる画像入力の処理を行ない、四角形ワ
ーク1の2つの頂点の座標を各々求める。そして、この
2つの頂点座標から四角形ワーク1の中心座標及び傾き
を検出する。なお、この中心位置座標の検出及び傾きの
検出は、数学的手法により容易に求めることができるの
で、ここでは説明を省略する。
よる画像入力の処理が終了した後に、同様にして第二の
CCDカメラによる画像入力の処理を行ない、四角形ワ
ーク1の2つの頂点の座標を各々求める。そして、この
2つの頂点座標から四角形ワーク1の中心座標及び傾き
を検出する。なお、この中心位置座標の検出及び傾きの
検出は、数学的手法により容易に求めることができるの
で、ここでは説明を省略する。
【0041】このように、本実施例の画像処理装置は、
四角形ワーク1の2頂点の画像を各々取込む第一及び第
二の2台のCCDカメラからなる画像入力手段と、前記
2台のCCDカメラ(画像入力手段)で取込んだ2頂点
の画像データを基にして、2値化処理、ランレングスア
ドレス作成処理、外接四角形抽出処理、及び図5から図
8の頂点算出処理により2頂点の座標を求め、この2つ
の頂点座標から前記四角形ワーク1の位置及び傾きを検
出する位置・傾き検出手段とを備えている。
四角形ワーク1の2頂点の画像を各々取込む第一及び第
二の2台のCCDカメラからなる画像入力手段と、前記
2台のCCDカメラ(画像入力手段)で取込んだ2頂点
の画像データを基にして、2値化処理、ランレングスア
ドレス作成処理、外接四角形抽出処理、及び図5から図
8の頂点算出処理により2頂点の座標を求め、この2つ
の頂点座標から前記四角形ワーク1の位置及び傾きを検
出する位置・傾き検出手段とを備えている。
【0042】即ち、本実施例の画像処理装置は、2台の
CCDカメラで四角形ワーク1の2頂点の画像を各々取
込み、この2頂点の位置座標を検出し、この位置座標か
ら四角形ワーク1の位置及び傾きの検出を行なうもので
ある。
CCDカメラで四角形ワーク1の2頂点の画像を各々取
込み、この2頂点の位置座標を検出し、この位置座標か
ら四角形ワーク1の位置及び傾きの検出を行なうもので
ある。
【0043】したがって、従来のように1台のCCDカ
メラで四角形ワーク1の全体像を撮像し、得られた画像
データを利用して四角形ワークの位置、傾きを求めるも
のではないので、CCDカメラの視野に収まらない大形
の四角形ワーク1の位置及び傾きの検出ができる。ま
た、2台のCCDカメラを四角形ワーク1の2つの頂点
に適宜接近させることにより、CCDカメラの画像の分
解能に拘りなく、単位画素当りのミリ数の調整ができる
ので、出力結果の精度を上げることができる。このた
め、画像の分解能の影響を受けることなく精度良く四角
形ワーク1の位置及び傾きを検出できる。この結果、適
用範囲が拡大し、高精度を要する四角形ワーク1の位置
及び傾きの検出ができる。
メラで四角形ワーク1の全体像を撮像し、得られた画像
データを利用して四角形ワークの位置、傾きを求めるも
のではないので、CCDカメラの視野に収まらない大形
の四角形ワーク1の位置及び傾きの検出ができる。ま
た、2台のCCDカメラを四角形ワーク1の2つの頂点
に適宜接近させることにより、CCDカメラの画像の分
解能に拘りなく、単位画素当りのミリ数の調整ができる
ので、出力結果の精度を上げることができる。このた
め、画像の分解能の影響を受けることなく精度良く四角
形ワーク1の位置及び傾きを検出できる。この結果、適
用範囲が拡大し、高精度を要する四角形ワーク1の位置
及び傾きの検出ができる。
【0044】ところで、上記実施例では、四角形ワーク
の2頂点の画像入力を行なう2台のCCDカメラの1台
を固定にし、他の1台をXYテーブル等に取付け、画像
入力位置までCCDカメラを移動させて、2頂点の画像
入力を行ない、処理を行なうようにしても、同様の効果
を得ることができる。
の2頂点の画像入力を行なう2台のCCDカメラの1台
を固定にし、他の1台をXYテーブル等に取付け、画像
入力位置までCCDカメラを移動させて、2頂点の画像
入力を行ない、処理を行なうようにしても、同様の効果
を得ることができる。
【0045】また、上記実施例では、四角形ワークの2
頂点の画像入力を対角コーナーで行なったが、四角形ワ
ークの任意の2頂点を選択し、該頂点に対して画像入力
を行ない、処理を行なうようにしても、同様の効果を得
ることができる。
頂点の画像入力を対角コーナーで行なったが、四角形ワ
ークの任意の2頂点を選択し、該頂点に対して画像入力
を行ない、処理を行なうようにしても、同様の効果を得
ることができる。
【0046】さらに、四角形ワークの2頂点の座標を用
いて、位置及び傾きのみならず、面積や、周囲長等の多
くの特徴量を併せて算出することもできる。
いて、位置及び傾きのみならず、面積や、周囲長等の多
くの特徴量を併せて算出することもできる。
【0047】
【発明の効果】以上説明したように、本発明の画像処理
装置は、画像入力手段、位置・傾き検出手段とを備え、
画像入力手段で四角形ワークの2頂点の画像を各々取込
み、この2頂点の位置座標を検出し、この位置座標から
四角形ワークの位置及び傾きの検出を行なうことによ
り、画像入力手段の視野に収まらない大型の四角形ワー
クの位置及び傾きを検出できるとともに、画像の分解能
の影響を受けることなく精度良く四角形ワークの位置及
び傾きの検出ができるので、適用範囲が拡大し、高精度
を要する四角形ワークの位置及び傾きの検出ができる。
装置は、画像入力手段、位置・傾き検出手段とを備え、
画像入力手段で四角形ワークの2頂点の画像を各々取込
み、この2頂点の位置座標を検出し、この位置座標から
四角形ワークの位置及び傾きの検出を行なうことによ
り、画像入力手段の視野に収まらない大型の四角形ワー
クの位置及び傾きを検出できるとともに、画像の分解能
の影響を受けることなく精度良く四角形ワークの位置及
び傾きの検出ができるので、適用範囲が拡大し、高精度
を要する四角形ワークの位置及び傾きの検出ができる。
【図1】図1は本発明の一実施例である画像処理装置の
処理部及び動作の流を示すフローチャートである。
処理部及び動作の流を示すフローチャートである。
【図2】図2は本発明の一実施例である画像処理装置に
よる四角ワークの画像入力の概要を示す説明図である。
よる四角ワークの画像入力の概要を示す説明図である。
【図3】図3は本発明の一実施例である画像処理装置に
よる画像入力後に2値化処理をし外接四角形を求めた状
態を示す説明図である。
よる画像入力後に2値化処理をし外接四角形を求めた状
態を示す説明図である。
【図4】図4は本発明の一実施例である画像処理装置に
よる四角ワークの画像入力状態を示す説明図である。
よる四角ワークの画像入力状態を示す説明図である。
【図5】図5は本発明の一実施例である画像処理装置に
よる画像入力を三種類の状態に振分ける動作を示すフロ
ーチャートである。
よる画像入力を三種類の状態に振分ける動作を示すフロ
ーチャートである。
【図6】図6は図4及び図5の状態(a)の頂点算出処
理動作を示すフローチャートである。
理動作を示すフローチャートである。
【図7】図7は図4及び図5の状態(b)の頂点算出処
理動作を示すフローチャートである。
理動作を示すフローチャートである。
【図8】図8は図4及び図5の状態(c)の頂点算出処
理動作を示すフローチャートである。
理動作を示すフローチャートである。
【図9】図9は従来の画像処理装置による2値画像を示
す説明図である。
す説明図である。
【図10】図10は従来の画像処理装置による重心のX
座標を求める処理を示すフローチャートである。
座標を求める処理を示すフローチャートである。
【図11】図11は従来の画像処理装置による重心のY
座標を求める処理を示すフローチャートである。
座標を求める処理を示すフローチャートである。
【図12】図12は従来の画像処理装置による傾きを求
める処理を示すフローチャートである。
める処理を示すフローチャートである。
1 四角形ワーク 2 第一のCCDカメラの視野 3 第二のCCDカメラの視野 4 外接四角形 5 外接四角形
【手続補正書】
【提出日】平成3年12月11日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0005
【補正方法】変更
【補正内容】
【0005】まず、X座標を算出する方法について述べ
る。図10において、ステップS1001でX方向のラ
イン番号nの初期設定をする。そして、ステップS10
02で該X方向のnラインの開始座標及び終了座標(X
s ,Xe)を求め、ステップS1003で該X方向のn
ラインの画素数(pixel)を求め、ステップS10
04で前記nラインの画素数(pixel)をnライン
よりも前迄の画素数に加算し、総画素数(area)を
求め、ステップS1005でgrvを次の(1)式によ
り演算する。 grv=grv+{pixel×(Xs +Xe )}/2 ・・(1)式 なお、このgrvは画素によるY軸に関する面積モーメ
ント(一次モーメント)として把握できる。
る。図10において、ステップS1001でX方向のラ
イン番号nの初期設定をする。そして、ステップS10
02で該X方向のnラインの開始座標及び終了座標(X
s ,Xe)を求め、ステップS1003で該X方向のn
ラインの画素数(pixel)を求め、ステップS10
04で前記nラインの画素数(pixel)をnライン
よりも前迄の画素数に加算し、総画素数(area)を
求め、ステップS1005でgrvを次の(1)式によ
り演算する。 grv=grv+{pixel×(Xs +Xe )}/2 ・・(1)式 なお、このgrvは画素によるY軸に関する面積モーメ
ント(一次モーメント)として把握できる。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正内容】
【0007】ここで、図9の2値画像の重心のX座標を
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=2であるから、grv=0+{2×
(1+2)}/2=3となる。 3ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=4であるから、grv=3+{2×
(1+2)}/2=6となる。 4ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=8であるから、grv=6+{4×
(1+4)}/2=16となる。 5ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=12であるから、grv=16+
{4×(1+4)}/2=26となる。 これで、全てのラインについての処理が終わり、この結
果を利用して重心のX座標gravXを求める処理を行
なう。即ち、gravX=26/12=2.166…と
なり、図9の2値画像の重心のX座標gravX=2.
2となる。
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=2であるから、grv=0+{2×
(1+2)}/2=3となる。 3ライン目の処理では、Xs =1,Xe =2、pixe
l=2、area=4であるから、grv=3+{2×
(1+2)}/2=6となる。 4ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=8であるから、grv=6+{4×
(1+4)}/2=16となる。 5ライン目の処理では、Xs =1,Xe =4、pixe
l=4、area=12であるから、grv=16+
{4×(1+4)}/2=26となる。 これで、全てのラインについての処理が終わり、この結
果を利用して重心のX座標gravXを求める処理を行
なう。即ち、gravX=26/12=2.166…と
なり、図9の2値画像の重心のX座標gravX=2.
2となる。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0008
【補正方法】変更
【補正内容】
【0008】次に、Y座標を算出する方法について述べ
る。図11において、ステップS1101でX方向のラ
イン番号nの初期設定をする。そして、ステップS11
02で該X方向のnラインの開始座標、終了座標(Xs
,Xe )及びY座標(Y)を求め、ステップS110
3で該X方向のnラインの画素数(pixel)を求
め、ステップS1104で前記nラインの画素数(pi
xel)をnラインよりも前迄の画素数に加算し、総画
素数(area)を求め、ステップS1105でgrv
を次の(3)式により演算する。 grv=grv+(pixel×Y) ・・・(3)式 なお、このgrvは画素によるX軸に関する面積モーメ
ント(一次モーメント)として把握できる。
る。図11において、ステップS1101でX方向のラ
イン番号nの初期設定をする。そして、ステップS11
02で該X方向のnラインの開始座標、終了座標(Xs
,Xe )及びY座標(Y)を求め、ステップS110
3で該X方向のnラインの画素数(pixel)を求
め、ステップS1104で前記nラインの画素数(pi
xel)をnラインよりも前迄の画素数に加算し、総画
素数(area)を求め、ステップS1105でgrv
を次の(3)式により演算する。 grv=grv+(pixel×Y) ・・・(3)式 なお、このgrvは画素によるX軸に関する面積モーメ
ント(一次モーメント)として把握できる。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0010
【補正方法】変更
【補正内容】
【0010】ここで、図9の2値画像の重心のY座標を
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、Y=1、
pixel=2、area=2であるから、grv=0
+2×1=2となる。 3ライン目の処理では、Xs =1,Xe =2、Y=2、
pixel=2、area=4であるから、grv=2
+2×2=6となる。 4ライン目の処理では、Xs =1,Xe =4、Y=3、
pixel=4、area=8であるから、grv=6
+4×3=18となる。 5ライン目の処理では、Xs =1,Xe =4、Y=4、
pixel=4、area=12であるから、grv=
18+4×4=34となる。
上記方法により算出する。まず、1ライン目の処理で
は、画素が無く、画素数も0であるので、grvも0で
ある。 2ライン目の処理では、Xs =1,Xe =2、Y=1、
pixel=2、area=2であるから、grv=0
+2×1=2となる。 3ライン目の処理では、Xs =1,Xe =2、Y=2、
pixel=2、area=4であるから、grv=2
+2×2=6となる。 4ライン目の処理では、Xs =1,Xe =4、Y=3、
pixel=4、area=8であるから、grv=6
+4×3=18となる。 5ライン目の処理では、Xs =1,Xe =4、Y=4、
pixel=4、area=12であるから、grv=
18+4×4=34となる。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0011
【補正方法】変更
【補正内容】
【0011】これで、全てのラインについての処理が終
わり、この結果を利用して重心のY座標gravYを求
める処理を行なう。即ち、gravY=34/12=
2.833…となり、図9の2値画像の重心のY座標g
ravY=2.8となる。したがって、図9の2値画像
の重心座標(gravX,gravY)は(2.2,
2.8)となる。
わり、この結果を利用して重心のY座標gravYを求
める処理を行なう。即ち、gravY=34/12=
2.833…となり、図9の2値画像の重心のY座標g
ravY=2.8となる。したがって、図9の2値画像
の重心座標(gravX,gravY)は(2.2,
2.8)となる。
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】0016
【補正方法】変更
【補正内容】
【0016】したがって、傾き(θ)は、 θ=(1/2)tan-1{(2×5.08)/(−2
4.08−51.92)}≒−3.81(度)となる。
こうして、図9の2値画像の傾き(θ)が求まる。
4.08−51.92)}≒−3.81(度)となる。
こうして、図9の2値画像の傾き(θ)が求まる。
【手続補正7】
【補正対象書類名】図面
【補正対象項目名】図9
【補正方法】変更
【補正内容】
【図9】
【手続補正8】
【補正対象書類名】図面
【補正対象項目名】図10
【補正方法】変更
【補正内容】
【図10】
【手続補正9】
【補正対象書類名】図面
【補正対象項目名】図11
【補正方法】変更
【補正内容】
【図11】
Claims (1)
- 【特許請求の範囲】 【請求項1】 四角形ワークの2頂点の画像を各々取込
む画像入力手段と、前記画像入力手段で取込んだ2頂点
の画像データを処理して前記四角形ワークの位置及び傾
きを検出する位置・傾き検出手段とを具備することを特
徴とする画像処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3182306A JP2822700B2 (ja) | 1991-07-23 | 1991-07-23 | 画像処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3182306A JP2822700B2 (ja) | 1991-07-23 | 1991-07-23 | 画像処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0528268A true JPH0528268A (ja) | 1993-02-05 |
| JP2822700B2 JP2822700B2 (ja) | 1998-11-11 |
Family
ID=16115988
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3182306A Expired - Lifetime JP2822700B2 (ja) | 1991-07-23 | 1991-07-23 | 画像処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2822700B2 (ja) |
-
1991
- 1991-07-23 JP JP3182306A patent/JP2822700B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2822700B2 (ja) | 1998-11-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6031941A (en) | Three-dimensional model data forming apparatus | |
| JPH0895551A (ja) | 画像表示装置 | |
| US20030117516A1 (en) | Monitoring system apparatus and processing method | |
| CN115205284B (zh) | 目标对象的检测方法及装置、介质及电子设备 | |
| JPH0810132B2 (ja) | 対象パタ−ンの回転角検出方式 | |
| JPH01134573A (ja) | 画像処理方法 | |
| JPH0528268A (ja) | 画像処理装置 | |
| JP2667885B2 (ja) | 移動物体の自動追尾装置 | |
| JP2985380B2 (ja) | 電子部品の位置検出方法 | |
| US5471536A (en) | Figure digitizing system | |
| JPH05149716A (ja) | コーナ検出方法 | |
| JPH06259557A (ja) | 画像入力装置 | |
| JPS6322241B2 (ja) | ||
| JPH11112966A (ja) | 動体検出装置、動体検出方法及びコンピュータ読み取り可能な記憶媒体 | |
| JPH10340337A (ja) | 図枠線図形のある図面のイメージデータの傾き及び伸縮の補正方法 | |
| JP2000121337A (ja) | 画像補正方法および画像補正装置 | |
| JPS60233503A (ja) | 位置検出方法 | |
| JPH04275783A (ja) | 画像情報処理装置 | |
| JPH1069536A (ja) | 画像合成装置 | |
| JP2681087B2 (ja) | 水平線検出装置 | |
| JPH1123241A (ja) | 物体傾斜角計測方法及び装置並びに記憶媒体 | |
| JPH0721383A (ja) | 画像処理装置 | |
| JPS62239279A (ja) | ラスタ走査における走査方向切替方式 | |
| JPS63254855A (ja) | 走査歪補正方式 | |
| JPS6348001B2 (ja) |