(57)【要約】【課題】カメラは一般的な市販のものをそのまま使用できるとともに、インラインでの検査・判定をも可能とし得るワークの変形・歪み検査方法を提供する。【解決手段】ステージＳ上にブロックＢを水平方向に移動可能に設置し、ブロックＢにフィクサＦを取り付け、フィクサＦにワークＷを載置し得るようになし、ブロックＢまたはフィクサＦにマークＭを付すか若しくは、ブロックＢまたはフィクサＦの一部をマークとするとともに、ブロックＢのワーク載置面から所定距離Ｋ隔てて該ブロックＢの上方で且つ、該ワーク載置面に対して垂直に１台のカメラＣを設置し、カメラＣまたはブロックＢをカメラＣの視野の対角線方向に水平移動させ、その移動前、移動中及び移動後においてカメラＣによりワークＷの姿を撮像することにより、移動前には見えなかったワークＷの稜線をもキャッチし、該稜線上の計測点の三次元座標値を求めるとともに、該三次元座標値を使ってワークＷの変形や歪みを検出する。【選択図】図５
2008203214.tif 000002
【特許請求の範囲】
【請求項１】
ステージＳ上にブロックＢを水平方向に移動可能に設置し、前記ブロックＢにフィクサＦを取り付け、前記フィクサＦにワークＷを載置し得るようになし、前記ブロックＢまたは前記フィクサＦにマークＭを付すか若しくは、前記ブロックＢまたは前記フィクサＦの一部をマークとするとともに、前記ブロックＢのワーク載置面から所定距離Ｋ隔てて該ブロックＢの上方で且つ、該ワーク載置面に対して垂直に１台のカメラＣを設置し、
前記カメラＣまたは前記ブロックＢを該カメラＣの視野の対角線方向に水平移動させ、その移動前、移動中及び移動後において前記カメラＣにより前記ワークＷの姿を撮像することにより、移動前には見えなかった前記ワークＷの稜線をもキャッチし、該稜線上の計測点の三次元座標値を求めるとともに、該三次元座標値を使って前記ワークＷの変形や歪みを検出することを特徴とするワークの変形・歪み検出方法。
【請求項２】
前記稜線内の複数の計測点の三次元座標値を求めるとともに、適度に離れた前記計測点の２つを仮想直線ａａでつなぎ、この仮想直線と他の前記各計測点との垂直距離を算出・比較し、もって前記ワークＷの変形や歪みの検出に用いることを特徴とする請求項１に記載のワークの変形・歪み検出方法。
【請求項３】
前記稜線内の複数の計測点の三次元座標値に基づいて、同一稜線内の隣り合う計測点同士を繋ぐ直線を生成するとともに、該直線の傾き量λkmnを算出し、
隣り合う直線の傾き量λkmn同士の比較、および直線の傾き量λkmnとワークＷの姿勢角度θ1との比較を行うことによって、前記稜線の変形を検出することを特徴とする請求項１に記載のワークの変形・歪み検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１台の一般的なカメラを用いた簡単なシステムにて、被検査物体の変形や歪みを検出するワークの変形・歪み検出方法に関するものである。
【背景技術】
【０００２】
パソコン、デジタルカメラ、携帯電話などの電子機器にあっては、軽薄短小化を追求する一方で、次から次へと高度な機能を追加し続けており、これら機器がユーザの元で所期の性能を発揮できるか否かはその品質管理に負う所が極めて大である。
【０００３】
換言すれば、上記電子機器の性能を確保するためには、そのシャシーや筐体、或いは操作部、表示部と言った個々の構成部品の品質と、それらの組立・接続状態での品質管理が重要であり、同様にそこに用いられるコネクタの如き小さな電子部品の品質管理も決して疎かにはできない。
【０００４】
従来、斯様な電子部品の品質管理においては、主に、熟練した検査員が目視チェックする事でその合否判定が行なわれていたが、上記電子機器の進化に伴って上記電子部品も一層小型化され、同時に高密度化（例えばコネクタ端子の本数増加と狭ピッチ化）が益々進む昨今、もはや目視チェックで合否判定ができる状況にはないため、画像処理を用いた検査方法の導入が進められている。
【０００５】
図１（ａ）は、上記電子部品の一つであるコネクタの斜視図で、そのハウジングにａ方向から複数の端子が各々組み込まれる。各端子が組み込まれたコネクタは、図１（ｂ）に示すように、プリント基板上に取り付けられる。
【０００６】
上記コネクタのハウジングは樹脂で形成されており、その製造過程において生ずる温度不均衡等の原因で、例えば図１（ｃ）に示すように、ハウジングの中央部が水平方向に凸状に変形したり、また、図１（ｄ）に示すように、ハウジングの中央部が上方向に凸状に変形したり、或いはこれらが組み合わさって生じることがある。なお、これらの図示例は理解を助けるため、変形の状態を誇張表示している。
【０００７】
このようにハウジングに変形が生じると、図１（ｃ）の如き場合はこれに嵌合されるべきプラグの挿入が出来なくなり、また図１（ｄ）の様なときは同プラグの端子がこのコネクタの端子に旨く接触できないような事になる。
【０００８】
よって、斯様な変形を持ったコネクタは除外する必要があり、同コネクタのハウジングの三次元形状を認識し、その合否を判定する検査法が創案されている。そして、この三次元形状の認識には、カメラを介して得られた撮像データをコンピュータで処理する画像処理技術が活用されている。
【０００９】
例えば、この画像処理技術として特許文献１があり、これは被写体の上方にカメラを設置し、そのカメラの撮影部を回動させることによって複数の角度から被写体を撮像し、同被写体の立体的画像を得るようにしたものである。
【特許文献１】特開２０００−１３６９１３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記従来の技術では、カメラの撮影部を回動させるための駆動部を特別に付加する必要があるが、一般に市販されているカメラにこのような駆動部を備えたものは存在しないので、斯様なカメラを特別に注文して作るか、もしくは市販されているカメラを改造するしかない。
【００１１】
ところが、前者の対応策は極めて高額なカメラとならざるを得ず、後者にあっては改造に必要な高度の専門的な知識が不可欠であり、いずれにしてもカメラのカスタマイズ化への対応がこの技術の汎用化への大きな障害となっていた。
【００１２】
本発明はこれらの点に鑑み成されたもので、カメラは一般的なものをそのまま使用できるとともに、インラインでの検査・判定をも可能とし得るワークの変形・歪み検出方法を提供することにある。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、請求項１に記載の発明は、ステージＳ上にブロックＢを水平方向に移動可能に設置し、前記ブロックＢにフィクサＦを取り付け、前記フィクサＦにワークＷを載置し得るようになし、前記ブロックＢまたは前記フィクサＦにマークＭを付すか若しくは、前記ブロックＢまたは前記フィクサＦの一部をマークとするとともに、前記ブロックＢのワーク載置面から所定距離Ｋ隔てて該ブロックＢの上方で且つ、該ワーク載置面に対して垂直に１台のカメラＣを設置し、前記カメラＣまたは前記ブロックＢを該カメラＣの視野の対角線方向に水平移動させ、その移動前、移動中及び移動後において前記カメラＣにより前記ワークＷの姿を撮像することにより、移動前には見えなかった前記ワークＷの稜線をもキャッチし、該稜線上の計測点の三次元座標値を求めるとともに、該三次元座標値を使って前記ワークＷの変形や歪みを検出することを特徴としている。
【００１４】
請求項２に記載の発明は、請求項１において、前記稜線内の複数の計測点の三次元座標値を求めるとともに、適度に離れた前記計測点の２つを仮想直線ａａでつなぎ、この仮想直線と他の前記各計測点との垂直距離を算出・比較し、もって前記ワークＷの変形や歪みの検出に用いることを特徴としている。
【００１５】
請求項３に記載の発明は、請求項１において、前記稜線内の複数の計測点の三次元座標値に基づいて、同一稜線内の隣り合う計測点同士を繋ぐ直線を生成するとともに、該直線の傾き量λkmnを算出し、隣り合う直線の傾き量λkmn同士の比較、および直線の傾き量λkmnとワークＷの姿勢角度θ1との比較を行うことによって、前記稜線の変形を検出することを特徴としている。
【発明の効果】
【００１６】
本発明によれば、カメラは一般的なものをそのまま１台だけ使用するとともに、極めて簡単な撮像システムで、微細な変形も検出することができ、且つインラインでの検査・判定をも可能とし得るワークの変形・歪み検出方法を実現できる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例】
【００１８】
本発明は、被検査体、即ちコネクタであるワークＷが図２に示すように、回路基板ＰＢに実装されたような状況をその上方に配置されたカメラＣにて撮像し、その三次元形状を捉えんとするもので、図２に示したワークＷの計測点ｐkmn（ｋｍｎの意味については後述する）とカメラＣ間の垂直距離Ｈｎ（n=1,2,3・・・：計測点数）を測定してその三次元形状を認識する訳であるが、上記カメラＣにて撮像した画像において、輪郭線Ｅｄ4，Ｅｄ3は、それぞれ輪郭線Ｅｄ1，Ｅｄ2に隠されて認識が困難となる所、該ワーク（またはカメラ）を移動させることにより、これら輪郭線Ｅｄ1，Ｅｄ2，Ｅｄ3，Ｅｄ4を識別し得るようになし、三次元形状の認識を達成するものである。なお、ワークは、図２のようなコネクタに限定するものではない。また、図２中、輪郭線Ｅｄ1〜Ｅｄ4を極太線で示したが、これは単に理解を助けるためだけのものである。
【００１９】
ここで、本発明方法におけるワーク撮像環境の概要を図３によって説明するに、Ｓはほぼ水平に据え付けられたステージで、前記回路基板ＰＢに相当し、Ｂはその上を水平に移動可能に設置されたブロック、Ｗは被検査体であるコネクタ、即ちワーク、Ｆは該ワークをブロック上にセットするためのフィクサ、Ｃは上記ステージＳの上方に固定された１台のカメラであり、Ｑはその結像面、またＬはカメラＣの中心線であって、この中心線ＬはステージＳに対して垂直となっている。なお、ステージＳを水平に設置するには、これを定盤の上にセットすることが望ましいが、これに限定されるものではない。また、フィクサＦはポケットの如きもので、ワークＷがそこにセットされたとき、ワークＷに歪みが生じないように、無負荷状態で載置し得るものであることが好ましい。
【００２０】
なお、ワークＷを設置したブロックＢは、ステージＳ上をカメラＣに対し、水平に移動させるが、図４及び図５の如くカメラＣの視野に対し、対角線方向（図４のγ＝±４５°方向）に移動させることとし、移動中の任意の位置での撮像を可能とするために、例えば光電センサＳｅを配し、光電センサＳｅによってブロックＢの移動を検出して、撮像のトリガの役割をさせると良い。
【００２１】
また、ワークＷはブロックＢと共に上記対角線方向に移動させられ、移動前には隠されていたその側面を撮像できるようにしてその形状の計測に供されるものであるから、ワークＷの主要な側面が、この移動方向(対角線)と直角または平行にならないようにワークＷを設置すると良い。
【００２２】
そして、図３中の記号ｐkmn（k=1,2：kは複数回撮像した画像の中から、処理のために採用する２枚の画像を区別する記号で、採用する２枚の画像において先に撮像した画像を１、後から撮像した画像を２とする。m=1,2,3・・・：mは計測点を含む小領域を抽出したときに領域を区別する記号である。n=1,2,3・・・：nは計測対象の輪郭線に存在する任意の計測位置を示す記号である。）で示す点がワークＷの計測点である。但し、該計測点は後述のステップでその座標が特定されるものであり、本来、この図３には現れないが、本発明の理解を助けるため、便宜的にこの記号を表記した。図２１に抽出した計測点を示す。）。Ｈｎ（n=1,2,3・・・）はカメラＣから該計測点までの垂直距離である。
【００２３】
また、記号Ｍで示す部位は、上記ブロックＢに貼付したマークで、同ブロックＢの移動前後の撮像画像から後述する移動距離Ｄ，Ｄｘ，Ｄｙを算出したり、もしくは上記計測点ｐkmnを含む小領域を取り込む際の基準に用いるものであるが、これも実際にはこの図３には現れないものであるも、説明の便宜から表示した。勿論、ワークＷにこのマークＭを貼付することを妨げるものではないが、そうすると、被検査体であるワークＷを交換するたびにマークＭの貼り替え作業が必要となってしまうので、上記ブロックＢに貼付する方が良い。同理由から、前記フィクサＦにマークＭを貼付することを妨げない。
【００２４】
このようなワーク撮像環境を用意し、ブロックＢ上にワークＷをセットして、その上方または下方から照明を当ててこの初期状態をカメラＣで撮像し、続いてブロックＢを動かしてワークＷを任意の距離、前記対角線方向に移動させるとともに、その状態をカメラＣで複数回撮像し、前記距離Ｈｎを測定する。すなわち、本発明は、所謂三角測量の原理を用いた単眼ステレオ計測法を基礎としており、ワークＷの移動前および移動後並びに移動途中での各位置と、上記カメラＣとの間でベースとなる三角形を描くための環境である。なお、このワークＷの移動を円滑に行わせるため、それが載置されたブロックＢを移動させるようにしたが、直接ワークＷのみを移動させるようにしても良い。また、ブロックＢを的確に移動し得るようにするため、例えば図６に示す如く公知のプッシュロッドなどをそこに組み込むことは有効である。また、ブロックＢの移動速度を均一とするために公知の電動もしくは空気圧アクチュエータ等を利用することも有効である。
【００２５】
前記マークＭは、図７に示す如く、黒い台紙（紙である必要は無い）に複数のかまぼこ状の白抜き目印部を形成してなり、図８から明らかなように、上記ワークＷの長手方向に対してほぼ平行となるように、前記ブロックＢに貼付してある。なお、図４および図８では、マークＭについては輪郭のみ示してある。
【００２６】
より具体的には、図７に示す如く、このマークＭは幅ｓｓが１.０ｍｍの切り欠きであり、撮像照明光の照射条件等によって該マークＭの画像の鮮明度が低下する場合に備えて、同一形状のマークが所定の間隔をおいて複数個設けられている。
【００２７】
但し、このマークＭは座標抽出のためものであるから、上記大きさで無くとも、或いは複数で無く１個だけであっても良く、更にはブロックＢやフィクサＦの一部であって他と明確に識別可能な目印になるものであればそれでも構わない。
【００２８】
そして、このマークＭを含むワークＷの初期状態、即ちワーク載置状態を、カメラＣによって撮像し、その画像データをコンピュータに読み込む（ステップ１：第１撮像（図９参照））。なお、図９は、ワークＷの形状の明確化のため、フィクサＦを取り外した状態の撮像画像で、マークＭを含むコネクタの左側半分が写っており、このマークＭを拡大表示したものが図１０である。勿論、図１４（ｂ）の(16)の如く、ワーク全容を撮像することも可能であるが、移動の様子を分かりやすくするために、図９は左側半分を示している。この拡大画像におけるマークの輪郭は、画素の濃い部分と薄い部分とが混在していて必ずしも明確ではない。本来、このマークＭのｘ軸方向とｙ軸方向の２本の輪郭線からその交点を求め、この交点をマークの第１の特徴となる点、即ちブロック移動前の始点座標ＯＰ1として見出したいところ、このままでは不可能である（図１２参照）。
【００２９】
そこで、先ず、上記図１０の画像の中からマークＭの輪郭を抽出するため、エッジ生成処理によって図１１中に極太線をもって示す如き非直線状の輪郭（横方向(ｘ軸方向)の輪郭線及び縦方向(ｙ軸方向））の輪郭線を得るべく、例えば下記（１）式及び（２）式のガウシアンフィルタによる平滑化処理の後、例えば下記（３）式によるラブラシアン処理を行なう（ステップ２：非直線輪郭の生成）。
【００３０】
なお、ここで求めたいのは基準となる前記始点座標ＯＰ1（図１２参照）であり、そのために本実施例ではかまぼこ状のマーク画像から縦・横２本の輪郭線を抽出し、その交点を求めんとする訳で、マークＭがかまぼこ状故にその輪郭線は各々ｘ軸とｙ軸に略沿ったものが得られるものとして説明したが、該輪郭線は上記交点が得られるものであれば如何なるものであっても良い。即ち、マークは本実施例の形に限られない。また、ｙ軸に略沿った輪郭をかまぼこ状の左辺に求めたが、これは右辺であっても良い。
【００３１】
【数１】
2008203214.tif 000003
【００３２】
【数２】
2008203214.tif 000004
【００３３】
【数３】
2008203214.tif 000005
【００３４】
ここで、Ｇ(ｘ，ｙ)はガウシアンフィルタの設定値、σは標準偏差値(ガウシアンフィルタのパラメータ)、Ｆ(ｘ，ｙ)はガウシアン処理後の平滑化画像、ｆ(ｘ，ｙ)処理前の入力画像、▽2Ｆ(ｘ，ｙ)はエッジ画像である。
【００３５】
なお、前記ステップ１でコンピュータに取り込まれた画像は広範なもので、この画像全体の中からマークＭを探し出し、更に上記演算などを行うとなると、その処理時間は長くなり、前記インライン方式の検査には不適であることから、予めマークＭが撮像されているであろう領域を想定しておき、少なくとも１つの前記切り欠きを含む周辺の小領域に限定して上記処理をすることは、有効である。
【００３６】
続いて、上述のようにして得られた上記非直線状の輪郭から、図１２に示すような各々の近似直線（ｘ軸方向の近似直線ｙ＝ａｘ＋ｂ、ｙ軸方向の近似直線ｙ＝ａｘ＋ｂ）を生成するべく、下記（４）式〜（６）式により最小２乗近似法の演算を行なう（ステップ３：近似直線の生成）。
【００３７】
【数４】
2008203214.tif 000006
【００３８】
【数５】
2008203214.tif 000007
【００３９】
【数６】
2008203214.tif 000008
【００４０】
ここで、ａは近似直線の傾き、ｂは切片、ｍは近似直線生成のための対象となる特徴点の個数(ｍ個)、ｉは特徴点をカウントするための変数(ｉ＝１〜ｍ)である。
【００４１】
さらに、上記（４）式〜（６）式から求めたｘ軸方向の近似直線ｙ＝ａｘ＋ｂとｙ軸方向の近似直線ｙ＝ａｘ＋ｂの連立方程式を解いてその交点を求め、これを前記ワーク載置初期状態、つまりブロックＢの移動前の状態の基準点（即ち始点座標ＯＰ1）とする（ステップ４：始点座標ＯＰ1の算出）。
【００４２】
次に、前記ステージＳ上でブロックＢを、前記対角線方向に任意の距離、移動させる。何となれば、その移動距離Ｄ，Ｄｘ，Ｄｙを実測するのだから、移動量は何ら制限されない。但し、前述のプッシュロッドの如きものをもって所定の距離、移動させることは有効である。
【００４３】
その結果、ブロックＢと共にフィクサＦにセットされたワークＷも移動するから、この移動の途中および移動後の同ワークＷなどを、複数回カメラＣで撮像、その撮像データ（例えば図１３）をコンピュータに取り込む（ステップ５：第２，３・・・撮像）。
【００４４】
前記ステップ１並びに上記ステップ５にて、ワークＷの移動前・移動途中・移動後の姿を複数回撮像したが、これら撮像画像によってワークＷの計測対象とする面（ワークが立方体と仮定すると、頂面と４つの側面）が認識できるか否かを確認しておくことが肝要となる。
【００４５】
例えば、図１４（ｂ）の(1)〜(16)は、ワークを約２ｍｍ移動ごとに撮像した画像であり、図１５の(1)，(4)，(9)，(16)は図１４（ｂ）の(1)，(4)，(9)，(16)画像を拡大表示したものである。図１４（ｂ）に示すワークＷのａ面（頂面）は全ての画像にて認識できるが、ｄ面（図１４（ａ）で左側に位置する側面）は図１４（ｂ）の(1)〜(4)の画像中でのみ認識が可能となっている。また、ｅ面（図１４（ａ）で右側に位置する側面）は図１４（ｂ）の(9)〜(16)の画像のみ認識が可能である。よって、ａ面を構成する輪郭線内の計測点の計測を行う場合には(1)と(16)の画像を選択し、ｄ面の輪郭線内の計測点の計測を行う場合には(1)と(4)の画像、同様にｅ面の輪郭線内の計測点の計測は(9)と(16)の画像を選択することとする（ステップ６：撮像画像の選択）。これは視差を大きくすることによって計測精度を向上させることを狙っており、移動距離ができるだけ離れた２点の画像を選択することが肝要である。
【００４６】
なお、選択する画像の位置が明確になったら、前記光電センサＳｅをその画像を撮像し得る位置に設定する、即ち、上記の場合には、(1)，(4)，(9)，(16)番の位置で撮像ができるように設定することになる。但し、この例は図１（ｃ）に示した如き変形を想定したものである。
【００４７】
このブロック移動途中もしくは移動後の撮像画像からも、マークＭの画像を取り込んでその終点座標ＯＰ2（本来、移動後の座標を終点座標と呼称すると同じ様に、移動途中の座標も途中座標とでも呼称するべきであるが、移動前後の画像を比較する点で同じ演算をすることから、これを説明上、略している）を抽出する訳であるが、前述の通り、マークＭの輪郭を直接的に抽出することは叶わない故、前記エッジ生成処理を行って縦横２方向の非直線状の輪郭を求め（ステップ７：非直線輪郭の生成。なお、このステップ７における処理は前記ステップ２と同じである）、続いて、最小２乗近似法を使って近似直線を生成し（ステップ８：近似直線の生成。なお、このステップ８における処理は前記ステップ３と同じである。）、さらに、連立方程式を解いて２つの近似直線の交点を算出し、上記終点座標ＯＰ2を求める（ステップ９：終点座標ＯＰ2の算出。なお、このステップ９における処理は前記ステップ４と同じである。）。
【００４８】
勿論、上記ステップ７に先立ち、前述の如く、全体の画像からマークＭを含む周辺の小領域に限定して上記演算処理をすることは、演算時間短縮に有効である。
【００４９】
以上のようにしてブロックＢの移動前、移動途中、移動後における基準点、即ちマークＭの始点ＯＰ1と終点ＯＰ2の座標が判明したことから（図１６参照）、下記（７）式〜（９）式から両点の座標差を計算することによって、ブロックＢの移動距離Ｄ，Ｄｘ，Ｄｙを求める（ステップ１０：移動距離Ｄ，Ｄｘ，Ｄｙの算出）。ここで、Ｄは実（対角線方向）移動距離、Ｄｘはｘ軸方向の移動距離、Ｄｙはｙ軸方向の移動距離である。
【００５０】
【数７】
2008203214.tif 000009
【００５１】
【数８】
2008203214.tif 000010
【００５２】
【数９】
2008203214.tif 000011
【００５３】
ワークＷは前述の通りカメラ視野の対角線方向、つまりγ＝±４５°（図４参照）方向に移動させる訳であるが、移動中のガタツキ等の影響により、実際の移動方向（角度）は定かでない故、下記（１０）式によって図１６に示す移動前後の点とｘ軸とのなす角度（ブロックの姿勢変化角度）βを求めておく。
【００５４】
【数１０】
2008203214.tif 000012
【００５５】
上述のブロックＢの移動距離Ｄ，Ｄｘ，Ｄｙの実測のため、前記ステップ１及びステップ５で取り込んだ画像を利用した訳であるが、ワークＷのハウジング輪郭線上の任意の前記計測点ｐkmnの抽出にも同じ画像が用いられる。但し、ブロックＢの移動前後でそこに載置されたワークＷの姿勢が変化していないとは限らない。何故なら、前述のインライン方式の品質検査システムを前提に、ワークＷの交換の利便性を考慮し、或いはワークＷを固定することによってそこに生ずる歪みを嫌って、このワークＷは無負荷状態でフィクサＦにセットされていることから、ワークＷとフィクサＦとの間には０.１ｍｍ程度のクリアランスが存在し、ブロックＢの移動の際の慣性、振動などによって僅かにワークＷが動き、その姿勢を変える可能性がある。本実施例では、それを想定して同姿勢変化に対する補正を加えることによって、更に高精度の計測が可能となっている。
【００５６】
そこで、ブロックＢの移動の前後における画像から、ワークＷの姿勢の変化（角度）θを捉える（ステップ１１：移動前後のワーク姿勢角度θの算出）。
【００５７】
そのために、前記ステップ１で取り込んだブロック移動前の画像において、ワーク中の任意の直線成分、例えば、図１７（ａ）に示す如く、ハウジングとブロックＢの境界点ＳＰ1とＳＰ2の２点をつなぐ仮想線ｇｇとｘ軸とがなす角度θ1（移動前のワーク姿勢角度）を求める。
【００５８】
より具体的には、先に抽出したマークＭの始点座標ＯＰ1から、上記仮想線ｇｇが生成できるであろう所定の距離だけ離れた小領域を前記ステップ１で得た画像から抽出し、その中からハウジングとその背景の画素の濃淡差に基づき、第１境界点ＳＰ1を見出し、さらに同様にしてこれから適度に離れた第２境界点ＳＰ2を見出し、これら２点を結ぶことによって上記仮想線ｇｇが得られるので、仮想線ｇｇとｘ軸線とから下記（１１）式をもってブロックＢの移動の前におけるワークＷの姿勢角度θ1を求める（ステップ１１−ａ：移動前のワーク姿勢角度θ1の算出）。
【００５９】
そして、同じ様にしてマークＭの終点座標ＯＰ2を基準点としてブロックＢ移動の後におけるワークＷの姿勢角度θ2も求める（ステップ１１−ｂ：移動後のワーク姿勢角度θ2の算出）。
【００６０】
【数１１】
2008203214.tif 000013
【００６１】
そして、この両ワーク姿勢角度θ1，θ2の差から、ワークＷの姿勢の変化（角度）θを求める（θ＝θ1−θ2）。
【００６２】
ここで、図１７（ｂ）から明らかなように、Ｍｌ1，Ｍｌ2は第１境界点ＳＰ1と第２境界点ＳＰ2間のｘ軸方向の距離、Ｍｈ1，Ｍｈ2は同点ＳＰ1と点ＳＰ2間のｙ軸方向の距離である。また、ワークの中の任意の直線成分として仮想線ｇｇを抽出したが、これに限られず、さらに様々な部位からこれに類似した基準の抽出が可能である。
【００６３】
続いて、ブロックＢ移動前（もしくは移動途中の選択）画像から各々の計測点ｐ1mn（図２参照）を各々抽出する訳であるが、それは次のようにして求められる。ここで、ブロックＢ移動前（もしくは移動中の選択）画像の計測点（計測始点座標）ｐ1mnの抽出工程をステップ１２と、ブロックＢ移動途中（もしくは移動後の選択）画像の計測点（計測終点座標）ｐ2mnの抽出工程をステップ１３とする。
【００６４】
先ず初めに、前記ステップ１で取り込んだブロック移動前（もしくは移動途中の選択）画像から、計測点ｐ1mnを含むと想定されるハウジングの小領域Ｒ1，Ｒ2の画像を抽出する（図１８参照）（ステップ１２-ａ：小領域Ｒ1，Ｒ2の抽出）。
【００６５】
このとき、ステップ１０で述べたように、先に抽出したマークＭの始点座標ＯＰ1を基準として、上記計測点ｐ1mnが存在するであろう所定の距離だけ離れた小領域Ｒ1，Ｒ2を抽出するのが、コンピュータ処理時間短縮上望ましい。
【００６６】
このようにして抽出された小領域Ｒ1，Ｒ2の画像は、図１９Ａ及び図１９Ｂに拡大せる如く、前記マークＭの画像（図１０参照）と同様に、その輪郭がはっきりしないものであるから、前記エッジ処理を行なって非直線状の輪郭を求め（ステップ１２-ｂ：非直線輪郭の生成。このステップ１２-ｂの処理は、前記ステップ２，７と同じである。）、続いて最小２乗近似法を使って近似直線（ｘ軸方向の近似直線：ｙ＝ａｘ＋ｂ、ｙ軸方向の近似直線：ｙ＝ａｘ＋ｂ）を生成する（ステップ１２-ｃ：近似直線の生成。このステップ１２-ｃの処理は、前記ステップ３，７と同じである。）。
【００６７】
そして、図１９Ｂに示す様に、該近似直線の交点（領域始点）座標ｑkmn（k=1,2：kは複数回撮像した画像の中から、処理のために採用する２枚の画像を区別する記号で、採用する２枚の画像において先に撮像した画像を１、後から撮像した画像を２とする。m=1,2,3・・・：mは計測点を含む小領域を抽出したときに領域を区別する記号、また、n=1,2,3・・・：nは小領域から抽出した測定個所を示す記号）を求める（ステップ１２-ｄ：領域始点座標ｑ1mnの算出）。このステップ１２-ｄの処理は、前記ステップ４，８と同じである。
【００６８】
上記ステップ１２-ａ〜１２-ｄが前記ステップ２，３，４やステップ７，８，９と相違する点は、ワークＷの稜線上に前記計測点ｐkmnがある（図２、図２０及び図２１参照）ことから、同稜線上に複数の領域始点座標ｑ1mnを求めることである（図１９Ａ及び図１９Ｂ参照）。
【００６９】
次に、上記領域始点座標ｑ1mnを中心として所定の距離ｒ1n（n=1,2,3・・・）を半径とする円を設定し、該円が前記ステップ１２-ｂで求めたｘ軸さらにはｙ軸方向の非直線状の輪郭と交差するポイントを求め、これを計測点（計測始点座標）ｐ1mnとする（ステップ１２-ｅ：計測始点座標ｐ1mnの抽出、図２０及び図２１参照）。
【００７０】
なお、微小な外形の変化を知るためには、各稜線に対して３点以上の計測点を求める必要がある。
【００７１】
また、上記距離ｒ1nは、例えば図２１において求める前記計測始点座標ｐ1mnと前記領域始点座標ｑ1mnまでの距離であって、前記ハウジングの変形を検出するに都合の良い距離ｒ1n及びその点数を、予め設定しておくものである。
【００７２】
同様にして、ステップ５で取り込んだ画像から、ワークＷの移動途中もしくは移動後の選択画像内の計測点ｐ2mnの座標を求める（ステップ１３：計測終点座標ｐ2mnの抽出）。
【００７３】
即ち、前記ステップ１２-ａと同様なステップ１３-ａ（小領域Ｒの抽出）、ステップ１２-ｂと同様なステップ１３-ｂ（非直線輪郭の生成）、ステップ１２-ｃと同様なステップ１３-ｃ（近似直線の生成）、さらにはステップ１２-ｄと同様なステップ１３-ｄ（領域終点座標ｑ2mnの算出）により、領域終点座標ｑ2mnを求める（図２２Ａ及び図２２Ｂ参照）。
【００７４】
次に、ステップ１２-ｅ同様に、上記領域始点座標ｑ2mnを中心として、ステップ１２-ｅにて用いた所定の距離ｒ1n（n=1,2,3・・・）を半径とする円を描き、該円が前記ステップ１３-ｂで求めたｘ軸ならびにｙ軸方向の非直線状の輪郭と交差するポイントを求め、これを計測点（計測終点座標）ｐ2mnとする（ステップ１３-ｅ：計測終点座標ｐ2mnの抽出（図２３参照））。
【００７５】
続いて、前記ステップ１１で求めたワークＷの移動前後の姿勢の変化角度θ分、前記計測終点座標ｐ2mnを補正する（ステップ１３-ｇ：計測終点座標ｐ2mnの補正）。なお、補正後の領域終点座標をｐ2mn’とする。
【００７６】
具体的には、このワークの姿勢の変化は、ポケット状の前記フィクサＦの中でワークが回動することによって生ずるものと仮定することができ、従って、この姿勢の変化の中心はワークの全長ＷＬ、全幅ＨＬの２等分線の交点Ｏ上にあるとみなすことができる（図２４参照）。
【００７７】
そこで、ワークＷの全長ＷＬを算出すべく、先に抽出したマークＭの始点座標ＯＰ1又は終点座標ＯＰ2から、該ワークＷのｘ軸方向の左右両外端が認識できる所定の距離だけ離れた小領域を各々抽出し、その画像の中から同ワークの第１境界点ＷＰ1(座標：ｘ1，ｙ1)、第２境界点ＷＰ2(座標：ｘ2，ｙ2)を見出し、続いて同様にして各々より離れた小領域から第３境界点ＷＰ3(座標：ｘ3，ｙ3)及び第４境界点ＷＰ4(座標：ｘ4，ｙ4)を見出し、且つ点ＷＰ1と点ＷＰ2との間のｘ軸方向の距離、点ＷＰ3と点ＷＰ4との間のｘ軸方向の距離を求め、両者を平均することでこの全長ＷＬを求めることができる。前記全幅ＨＬも、同様に第１境界点ＨＰ1(座標：ｘ5，ｙ5)、第２境界点ＨＰ2(座標：ｘ6，ｙ6)、第３境界点ＨＰ3(座標：ｘ7，ｙ7)及び第４境界点ＨＰ4(座標：ｘ8，ｙ8)を見出し、求めることができる（図２４参照）（ステップ１３-ｆ：計測終点座標ｐ2mnの補正のための全長ＷＬと全幅ＨＬの算出）。
【００７８】
但し、この全長ＷＬ及び全幅ＨＬの求め方は、上記手法に限られず、図面値をそのまま用いることを含め、種々の手法が応用できる。
【００７９】
前記ステップ１３-ｆで得た、全長ＷＬの２等分線ＫＫと全幅ＨＬの２等分線ＨＫとの交点Ｏを回転中心とし、この中心Ｏと前記のワークの計測点ｐ2mnとの間の距離ＷＲmn（ｍ=1,2,3・・・：mは計測点を含む小領域を抽出したときに領域を区別する記号である。また、n=1,2,3・・・：nは小領域から抽出した測定個所を示す記号）を半径とする円弧を描き、さらに該円弧に沿って上記計測終点座標ｐ2mnを前記ワークＷの姿勢の変化角度θ分、回転させた補正後の計測点（領域終点座標）ｐ2mn’（n=1,2,3・・・）の座標（ｘ’，ｙ’）を、下記（１２）式〜（１５）式から算出する（図２５及び図２６参照）。
【００８０】
具体的には、この演算に先立ち、上記全幅ＨＬの２等分線ＨＫがｘ軸とのなす角度φを、下記（１２）式から求めておき（図２５及び図２６参照）、この角度φと前記ワークＷの姿勢の変化角度θとから、計測点ｐ2mn’を算出することになる（ステップ１３-ｇ：計測終点座標ｐ2mnの補正）。
【００８１】
【数１２】
2008203214.tif 000014
【００８２】
【数１３】
2008203214.tif 000015
【００８３】
【数１４】
2008203214.tif 000016
【００８４】
【数１５】
2008203214.tif 000017
【００８５】
但し、△ｃは計測終点座標ｐ2mnと上記補正領域終点座標ｐ2mn’との間のｘ軸方向変位量、△ｋは同ｙ軸方向変位量である。
【００８６】
ステップ１２で抽出したワークの計測点ｐ1mnを、ブロックＢの表面、即ちワーク載置面まで垂直に移動させた計測点ｐ1mn’の座標(ｘ1mn，ｙ1mn)値、並びに上記ステップ１３によって得られたワークの補正後の計測点ｐ2mn’を、同ワーク載置面まで垂直に下ろした計測点ｐ2mn”の座標値(ｘ2mn，ｙ2mn)を各々抽出する（図２７参照）。
【００８７】
次に、（１０）式にて算出したブロックＢの移動前後の姿勢変化角度βと、垂直降下した上記計測点ｐ1mn’と同計測点ｐ2mn”の座標（ｘ1mn，ｙ1mn及びｘ2mn，ｙ2mn）とに基づき、下記（１６）式〜（１８）式にて該計測点ｐ1mn’と計測点ｐ2mn”間の距離ＤＤｘ（ワークのｘ軸方向距離）、ＤＤｙ（ワークのｙ軸方向距離）、ＤＤ（ワークの実移動距離）を算出する（図２７参照）（ステップ１４-ａ：計測点間の距離ＤＤｘ，ＤＤｙ，ＤＤの算出）。
【００８８】
【数１６】
2008203214.tif 000018
【００８９】
【数１７】
2008203214.tif 000019
【００９０】
【数１８】
2008203214.tif 000020
【００９１】
ステップ１４-ａにて３種の計測点間の距離ＤＤｘ，ＤＤｙ，ＤＤを算出したが、抽出した計測点ｐ1mn’と計測点ｐ2mn”の座標が存在する前記稜線の傾きに応じて、例えば図２８に示す如く、前記近似直線とｘ軸との成す角度δに応じて、次のステップ１４-ｃで用いる該距離ＤＤｘ，ＤＤｙ，ＤＤを、下記判別式（１９）にて選択する（ステップ１４-ｂ：計測点間の距離の選択）。また、ステップ１０にて算出したマークＭの移動距離（Ｄｘ，Ｄｙ，Ｄ）から（３３）式を用いて前記距離Ｈｎを求める際にも同様に選択する。これは、計測対象となる稜線の傾きに、ほぼ平行となる基線長および視差を採用するものである。すなわち、ｘ軸にほぼ平行である稜線を対象とする場合には、基線長および視差は、ｙ座標値の移動量Ｄｙ，ＤＤｙを、ｙ軸にほぼ平行である稜線を対象とする場合には、ｘ座標値の移動量Ｄｘ，ＤＤｘを採用することの意味である。この距離の選択は、計測精度を向上させる効果がある。
【００９２】
【数１９】
2008203214.tif 000021
【００９３】
ちなみに、図２８の例は、近似直線(イ)の中に計測点がある場合（δ≒９０°）については上記距離Ｄｘ，ＤＤｘを、近似直線(ロ)の中に計測点がある場合（δ≒０°）については上記距離Ｄｙ，ＤＤｙを各々選択することになる。なお、図２８には存在しない角度δ≒０，δ≒９０°以外の角度δの場合は、同距離Ｄ，ＤＤを選択する。
【００９４】
また、図２９に示すように、予めハイトゲージ等の計測器を使用して計測したカメラＣからブロックＢのワーク載置面までの垂直距離Ｋと、前記移動距離のうち例えば計測点間距離ＤＤから、下記（２０）式及び（２１）式を用い、カメラＣ−計測点ｐ1mn’−ワーク載置面のなす角度α１、並びにカメラＣ−計測点ｐ2mn”−ワーク載置面のなす角度α２を算出する（ステップ１４-ｃ（角度α１，α２算出））。
【００９５】
但し、図２９の記号ｘｐは、カメラＣの中心線Ｌがブロックのワーク載置面と交わる点ｐｐと、ワークＷの移動距離ＤＤの２等分線が同ワーク載置面と交わる点ｄｄとの間の距離である。
【００９６】
そして、計測点間の距離がＤＤｘ，ＤＤｙの場合についても、上記角度α１，α２を算出する。この場合、（２０）式及び（２１）式において、ＤＤをＤＤｘもしくはＤＤｙとして算出する。
【００９７】
【数２０】
2008203214.tif 000022
【００９８】
【数２１】
2008203214.tif 000023
【００９９】
なお、計測するハウジングの輪郭は複数あり、カメラＣと計測点ｐ1mn’，ｐ2mn”の位置関係は、図２９以外にも図３０Ａ〜図３０Ｆのような関係がある。つまり、上記（２０）式及び（２１）式を変形し、図３１のパターンにも追従させるために、各々の条件に当てはめた（２２）式〜（３２）式を用いて前記角度α１，α２を算出する。また、（２２）式〜（３２）式中の距離ＤＤは距離ＤＤｘ又はＤＤｙに置き換え可能である。
[1]．条件１：α１＞α２  且つ  α１＞９０°（図３０Ａ参照）
【０１００】
【数２２】
2008203214.tif 000024
【０１０１】
【数２３】
2008203214.tif 000025
【０１０２】
[2]．条件２：α１＝９０°（図３０Ｂ参照）
【０１０３】
【数２４】
2008203214.tif 000026
【０１０４】
【数２５】
2008203214.tif 000027
【０１０５】
[3]．条件３：α１＞α２  且つ  α１＜９０°（図２９参照）
（２０）式及び（２１）式にて算出する。
【０１０６】
[4]．条件４：α１＝α２（図３０Ｃ参照）
【０１０７】
【数２６】
2008203214.tif 000028
【０１０８】
[5]．条件５：α２＞α１  且つ  α２＜９０°（図３０Ｄ参照）
【０１０９】
【数２７】
2008203214.tif 000029
【０１１０】
【数２８】
2008203214.tif 000030
【０１１１】
[6]．条件６：α２＝９０°（図３０Ｅ参照）
【０１１２】
【数２９】
2008203214.tif 000031
【０１１３】
【数３０】
2008203214.tif 000032
【０１１４】
[7]．条件７：α２＞α１  且つ  α２＞９０°（図３０Ｆ参照）
【０１１５】
【数３１】
2008203214.tif 000033
【０１１６】
【数３２】
2008203214.tif 000034
【０１１７】
三角形の１辺とそれを挟む２つの角度、すなわち前記ステップ１０で求めたブロックＢの移動距離Ｄｘ，Ｄｙ，Ｄと、ステップ１４-ｃにて算出した前記角度α１，α２が判明したことより、図３１に示す如く三点ＯＰ1，ＯＰ2，Ｃ’で形成される三角形が特定でき(３辺の長さや各頂点の角度などが計算できる)、従って、下記（３３）式を用いて該三角形の高さ（線分Ｃ’−ｐn’の長さ）を算出することができる。この場合、ハウジングの計測点ｐ1mn，ｐ2mn’をワーク載置面まで垂直に下ろして点ｐ1mn’，ｐ2mn”を得ていることから、上記線分Ｃ’−ｐn’の長さは前記距離Ｈｎに等しく、ここに距離Ｈｎが算出できる（ステップ１４-ｄ：距離Ｈｎの算出）。
【０１１８】
【数３３】
2008203214.tif 000035
【０１１９】
なお、（３３）式中のブロックの実移動距離Ｄは、本来ＤｘもしくはＤｙまたはＤと表記するべきところであるが、簡略化して、該距離Ｄを代表として記載したものである。当然、ステップ１４-ｂの通り、計測点が存在する稜線の傾きによって採用するブロック移動距離を選択する必要があるため、式中の距離Ｄを同ＤｘもしくはＤｙに置き換えて使用する。
【０１２０】
このステップ１４-ｄの要領にて、図３２に示すようにワーク全体から抽出した各計測点ｐkmnとカメラＣ間の垂直距離Ｈｎを算出し、各々の計測点ｐkmnの三次元座標（ｘkmn，ｙkmn，Ｈn）を決定する。
【０１２１】
上記のように各計測点ｐkmnの座標を明確にすることにより、その座標値から図３３のようなハウジング形状の変形検出を行うことができる。ここで一例として示す変形は図３３に示す５種であるが、計測点ｐkmnの座標値および座標値による距離算出の手順にて検出できるものは、これらに限定するものではない。
【０１２２】
以下に図３３に示す変形現象の認識と、その合否判定法について説明する。
【０１２３】
図３３（１）の如き水平方向の変形の場合、図３４（ａ）に示すように、計測点ｐk11とｐk14を繋ぐ仮想線ａａ、計測点ｐk15とｐk18を繋ぐ仮想線ｂｂを生成し、仮想線ａａとｘ軸間の角度εW1（図３５参照）を（３４）式にて算出しておき、計測点ｐk11とｐk14の間に位置する計測点ｐk12並びにｐk13と上記仮想線ａａからの垂直距離Ｗ12及びＷ13を、それぞれ（３５）式および（３６）式にて算出し、該距離Ｗ12とＷ13を（３７）式に従い比較し、大きい方の値を距離Ｗ1として採用する（図３５に距離Ｗ12，Ｗ13を示す。ここで計測点ｐk12とｐk13から、ｘ軸へ垂線を仮想し、垂線と仮想線ａａとの交点をそれぞれｔW12（ｘW12，ｙW12），ｔW13（ｘW13，ｙW13）としている）。ここで、ｔW12およびｔW13の座標値は、仮想線ａａの直線の方程式（２つの計測点座標が既知であるので算出可能）と計測点ｐk12並びにｐk13を通る、各々の垂線の直線の方程式（既知の計測点は１点のみであるが、ｙ軸に平行であることから算出可能）を導き、仮想線ａａの直線の方程式と垂線の直線の方程式の連立方程式の解とする。
【０１２４】
同様に、仮想線ｂｂとｘ軸間の角度εW2（図３６参照）を（３８）式にて算出しておき、仮想線ｂｂから計測点ｐk15とｐk18の間に存在する計測点ｐk16とｐk17間の垂直距離Ｗ26とＷ27を、それぞれ（３９）式および（４０）式にて算出し、該距離Ｗ26とＷ27を（４１）式に従い比較し、大きい方の値を距離Ｗ2として採用する（図３６に該距離Ｗ26，Ｗ27を示す。また、ｔW26（ｘW26，ｙW26），ｔW27（ｘW27，ｙW27）は前記と同様、計測点ｐk16とｐk17から、ｘ軸へ垂線を仮想し、垂線と仮想線ｂｂとの交点である。そして、（４２）式にて水平方向の変形の有無を判定する（ステップ１５-ａ：ハウジング水平方向の変形量の算出と判定）。但し、２つの距離Ｗ1，Ｗ2を求めたが、いずれか一方でも良い場合もある。ここで、ｔW26およびｔW27の座標値は、仮想線ｂｂの直線の方程式（２つの計測点座標が既知であるので算出可能）と計測点ｐk16並びにｐk17を通る、各々の垂線の直線の方程式（既知の計測点は１点のみであるが、ｙ軸に平行であることから算出可能）を導き、仮想線ｂｂの直線の方程式と垂線の直線の方程式の連立方程式の解とする。
【０１２５】
ここで、距離Ｗ1および距離Ｗ2を選択するために、今回検査対象とするハウジング水平方向の変形は、両端に比べ中央付近が変形の最大となるために、ハウジング中央付近から抽出した、２つの計測点を用いて算出した距離を比較しているが、ハウジングが微細に変形している場合には、抽出する計測点ｐkmnの数量を増加させて対応する必要がある。しかし、極端に多くの計測点を設定することにより、検査処理時間が増加することになるため、検査処理時間の設定値を事前に確保しておくことが肝要である。
【０１２６】
【数３４】
2008203214.tif 000036
【０１２７】
【数３５】
2008203214.tif 000037
【０１２８】
【数３６】
2008203214.tif 000038
【０１２９】
【数３７】
2008203214.tif 000039
【０１３０】
この（３７）式は、Ｗ12，Ｗ13のうち、大きい方をＷ1とする式である。
【０１３１】
【数３８】
2008203214.tif 000040
【０１３２】
【数３９】
2008203214.tif 000041
【０１３３】
【数４０】
2008203214.tif 000042
【０１３４】
【数４１】
2008203214.tif 000043
【０１３５】
この（４１）式は、Ｗ26，Ｗ27のうち、大きい方をＷ2とする式である。
【０１３６】
【数４２】
2008203214.tif 000044
【０１３７】
また、図３４（ｂ）に示す如く、計測点ｐk19と計測点ｐk1cを繋ぐ仮想線ｃｃとｘ軸間の角度εh1（図３７参照）を（４３）式にて算出するとともに、計測点ｐk19，ｐk1c間に存在する計測点ｐk1a，ｐk1bの各々のｚ座標値Ｈa，Ｈbを求める。そして、ｚ座標値Ｈa，Ｈbのうち小さい方の計測点を（４４）式によって選択する（但し、ｚ座標値は、カメラ結像面を０（ゼロ）として、ブロックＢに向かって大きくなるものとする）。また、その選択した計測点を計測点ｐh1に名称を変更し、その計測点ｐh1の座標値を（ｘh1，ｙh1，Ｈh1）とする。
【０１３８】
次に、計測点ｐh1からｘ軸に垂線を引き、その垂線が仮想線ｃｃと交わった点をｔh1（ｘth1，Ｈth1）とする。そして、交点ｔh1から仮想線ｃｃまでの距離をｈ1とし、この距離ｈ1は（４５）式にて算出する。また、（４６）式にて上下方向の変形の有無を判定する（ステップ１５-ｂ：ハウジング上下方向の変形量の算出と判定）。
【０１３９】
ここで、計測点ｐh1を選択するために、今回検査対象とするハウジング上下方向の変形は、両端に比べ中央付近が変形最大となるために、ハウジング中央付近から抽出した、２つの計測点を用いて算出した距離を比較しているが、ハウジングが微細に変形している場合には、抽出する計測点ｐkmnの数量を増加させて対応する必要がある。しかし、極端に多くの計測点を設定することにより、検査処理時間が増加することになるため、検査処理時間の設定値を事前に確保しておくことが肝要である。
【０１４０】
【数４３】
2008203214.tif 000045
【０１４１】
【数４４】
2008203214.tif 000046
【０１４２】
【数４５】
2008203214.tif 000047
【０１４３】
【数４６】
2008203214.tif 000048
【０１４４】
図３３（３）の如き平行四辺形型の変形の場合には、図３４（ｃ）および図３８に示すとおり、計測点ｐk15およびｐk18から計測点ｐk19とｐk1cを繋ぐ仮想線ｃｃに対する垂直距離Ｗk（k=3,4 ｋ：計測箇所を示す）を（４７）式および（４８）式にて算出する。但しここで、計測点ｐk15およびｐk18から、ｘ軸へ垂線を仮想し、垂線と仮想線ｃｃとの交点をそれぞれｔW3（ｘW3，ｙW3），ｔW4（ｘW4，ｙW4）としている。また、計測点ｐk15とｐk18を繋ぐ仮想線ｂｂとｘ軸間の角度εW2は、前記（３８）式にて算出する。こうして算出した距離Ｗ3，Ｗ4より、（４９）式にて平行四辺形型変形の有無を判定する（ステップ１５-ｃ：ハウジング平行四辺形型の変形量算出と判定）。
【０１４５】
【数４７】
2008203214.tif 000049
【０１４６】
【数４８】
2008203214.tif 000050
【０１４７】
【数４９】
2008203214.tif 000051
【０１４８】
図３３（４）の如き台形の変形の場合には、図３４（ｄ）および図３９に示すとおり、計測点ｐk15およびｐk18から計測点ｐk11とｐk14を繋ぐ仮想線ａａに対する垂直距離Ｗk（k=5,6 ｋ：計測箇所を示す）を（５０）式および（５１）式にて算出する。但しここで、計測点ｐk15およびｐk18から、ｘ軸へ垂線を仮想し、該垂線と仮想線ａａとの交点をそれぞれｔW5（ｘW5，ｙW5），ｔW6（ｘW6，ｙW6）とし、距離Ｗkの設計値を閾値ｔｈとしている。また、計測点ｐk15とｐk18を繋ぐ仮想線ｂｂとｘ軸間の角度εW2は、前記（３８）式にて算出する。こうして算出した距離Ｗ5，Ｗ6とステップ１５-ｃにて算出した距離Ｗ3，Ｗ4より、（５２）式にて台形型変形の有無を判定する（ステップ１５-ｄ：ハウジング台形型の変形量算出と判定）。
【０１４９】
【数５０】
2008203214.tif 000052
【０１５０】
【数５１】
2008203214.tif 000053
【０１５１】
【数５２】
2008203214.tif 000054
【０１５２】
図３３（５）の如き尖端部の欠損の如きものの場合には、図３４（ｅ）に示すように計測点ｐk11，ｐk14，ｐk15，ｐk18の前記距離（ｚ軸座標値）Ｈ1，Ｈ4，Ｈ5，Ｈ8をそれぞれ、閾値ｔｈcと比較することにより、（５３）式にて該欠損の有無を判定する（ステップ１５-ｅ：ハウジング尖端部の一部欠損の判定）。この閾値ｔｈcは、正規のワークＷと同一の高さを持つゲージを予め製作しておき、そのゲージからカメラ間の距離を計測した値を閾値とするが、この決定方法に限定するものではない。
【０１５３】
【数５３】
2008203214.tif 000055
【０１５４】
ステップ１５-ａからステップ１５-ｅにてハウジング変形状態が判定できたことにより、その変形量に対する合否判定を（５４）式にて行う（ステップ１５-ｆ：ハウジング変形の合否判定）。ここで、ｔｈ1〜ｔｈ5はそれぞれ、ハウジング水平方向の変形閾値、ハウジング上下方向の変形閾値、ハウジング平行四辺形型変形の閾値、ハウジング台形型変形の閾値、ハウジング尖端部欠損の閾値としている。
【０１５５】
【数５４】
2008203214.tif 000056
【０１５６】
ステップ１２〜ステップ１３のとおり、計測点ｐkmnの抽出手段は、ハウジングの外形にエッジを生成し、そのエッジの中から抽出するものであるが、エッジを構成する多数の点群の座標を全て抽出すれば、ハウジングの輪郭線そのものの三次元座標を得ることができる。しかし、エッジを構成する全ての点群の座標を抽出するためには、非常に多くの処理時間を要し現実的ではないため、任意の複数の計測点を選択し、エッジ内における隣り合う計測点ｐkmnを仮想線で繋ぐことにより、外観形状を推定する（ステップ１６：三次元形状推定）。なお、計測点ｐkmnを繋ぐための条件であるが、図４０に示すように生成したエッジにおいて、連結している成分ごとにラベル付けを行い、そのエッジ内から対象となる計測点ｐkmnを決定した場合、その近傍にある計測点ｐkmnを隣り合う計測点と定義し、繋ぎこみの対象とする。
【０１５７】
なお、ここでのラベル付けは、次に説明するような画像処理におけるラベリングアルゴリズムのことである。画像内に生成したエッジの中から、任意に注目する画素を決定し、その注目した画素に任意の番号（例えば“１”とする）を付け、隣り合う上下左右（計４画素）、斜め方向（計４画素）の合計８画素の内に注目画素と同一の濃度（ここでエッジには同一の濃度値を持つような前処理を施しておく）を持つ場合に、注目画素とその画素は連結していることとして、その連結している全ての画素にも“１”の番号をつける。次に、注目画素を隣の画素に移行し、同様に上下左右の近傍８画素が連結しているかどうか検査する。このとき移行した注目画素が前の注目画素と連結している場合には、既に“１”の番号を持つため、この画素に対する連結対象の画素が存在すれば、さらに“１”をつけることとし、前の注目画素と連結していない場合には、新たな番号“２”をつける。そしてこの“２”の番号を持つ画素に対する連結対象の画素が存在すれば“２”をつけることとする。このような処理を任意の領域内で繰り返すことにより、エッジが連結している範囲と連結しているエッジごとに番号（ラベル）がつけられることになる。
【０１５８】
さらに、図３２に示す計測点ｐkmnを、図４１に示すハウジングの外形のエッジに展開し、外形全体の三次元形状を推定することにて、図４２のとおりハウジングの輪郭が再現できるため、大小の直方体を組み合わせたような外形であることを、認識することが可能となる。
【０１５９】
ここで、ステップ１５-ａ〜１５-ｅの変形判定方法とは別の変形判定方法、つまりステップ１５-ａ〜１５-ｅとパラレルな位置付けとなる手順について説明する。
【０１６０】
まず、ハウジングの変形有無を判定したい箇所を任意に決定し、決定したハウジングの輪郭に非直線輪郭を生成する。そして、図４３に示すように生成した各非直線輪郭の中から３点以上の計測点ｐkmn（座標：ｘkmn，ｙkmn，Ｈmn）を、ステップ１からステップ１４-ｄと同様の手順にて抽出する（ステップ１７-ａ：複数の計測点抽出）。なお、図４３はハウジングの斜視図を示しており、同図において、各非直線輪郭には、１，２，３，４，５，６，７，８，９，ａ，ｂ，ｃ，ｄ，ｅ，ｆの番号を付し、また、それら非直線輪郭より抽出した計測点にも番号を付した。例えば、ｐk64は、非直線輪郭６の４番目の計測点を表す。
【０１６１】
図４４はハウジングを示しており、同図（ａ）はその平面図、同図（ｂ）は正面図である。各非直線輪郭上から複数の計測点を抽出しているが、抽出する計測点は、以下のステップ１７-ｂ、ステップ１７-ｃに示すように、隣り合う計測点を繋ぐ直線を同一稜線内で比較するため、各非直線輪郭から３点以上必要になる。なお、同一稜線内の計測点は多いほど、微細な変形を検出できることになる。
【０１６２】
次に、ある稜線内で隣り合う２点の計測点（例えば、非直線輪郭１内のｐk11とｐk12）を直線で繋ぎ、この直線の傾き量（λkmn＝λk11）を、（５５）式で算出する（ステップ１７-ｂ：直線の傾き算出）。具体的には、図４５に示すように、λk11＝Ｔａｎ-1（ｙk11−ｙk12）／｜（ｘk11−ｘk12）｜を求める。そして、傾き量λkmnの算出を、上記稜線内で相隣接する計測点同士を結ぶ全ての直線に対し行う。
【０１６３】
【数５５】
2008203214.tif 000057
【０１６４】
ステップ１７-ｂにて求めた直線の傾き量（λkmn＝λk11）を、前記ステップ１１-ａで求めた移動前のワークの姿勢角度θ1と比較するために、マイナス側の閾値ｔｈ6およびプラス側の閾値ｔｈ7をそれぞれ設定し、同姿勢角度θ1から大きく変化した傾きであるか否かを（５６）式にて判定する。これは、稜線全体の変形有無を判定するために行うものである。この判定法により、同一稜線中から抽出した複数の直線の傾き量λkmnが全て同じ傾き量であった場合において、ワークの姿勢角度θ1も同等の角度であれば当然変形無しとするが、ワークの姿勢角度θ1と大きな差がある場合には、対象の稜線全体に変形があると判定できるのである。図４６に、本判定法にて検出可能なハウジングの変形例を示す。
【０１６５】
【数５６】
2008203214.tif 000058
【０１６６】
ここで、
ｔｈ6：ワーク姿勢角度θ1に対する傾き量λkmnのマイナス側の閾値
ｔｈ7：ワーク姿勢角度θ1に対する傾き量λkmnのプラス側の閾値
である。
【０１６７】
また判定対象とする直線の傾き量（λkmn＝λk11）を、隣りの直線の傾き量（λkmn+1＝λk12及びλkmn-1＝λk10）と比較する、即ち両者の差を算出し、さらにマイナス側の閾値ｔｈ8とプラス側の閾値ｔｈ9とを（５７）式及び（５８）式にて比べる。
【０１６８】
ここで、
ｔｈ8：傾き量λkmnの変化量に対するマイナス側の閾値
ｔｈ9：傾き量λkmnの変化量に対するプラス側の閾値
である。
【０１６９】
【数５７】
2008203214.tif 000059
【０１７０】
【数５８】
2008203214.tif 000060
【０１７１】
勿論、両傾き量λkmnの差がゼロなら、これら傾き量λkmnは同じで、計測点ｐk10とｐk11とｐk12が一直線に並んでいることになる。また、この両者の差がゼロでなくとも、同差がマイナス方向の傾き量の閾値ｔｈ8より大きく、プラス方向の傾き量の閾値ｔｈ9より小さければ、計測点ｐk10とｐk11、ｐk11とｐk12の直線がｐk11で僅かに屈曲しているが、略一直線に並んでいるとみなし得るすことになる。
【０１７２】
また、次の（５９）式を満足した場合には、”変形なし”、それ以外は”変形あり”と判定する（ステップ１７-ｃ：変形判定）。尚、同一非直線輪郭内の最初の計測点ｐkm1に注目した場合には、λkmn-1は存在しないため、（５９）式中（II）の判定は省略する。さらに、同一非直線輪郭内の最終の計測点ｐkmn（ｎ：対象とする非直線輪郭における最終計測点の番号）に注目した場合には、λkmn+1は存在しないため、（５９）式中（III）の判定は省略する。
【０１７３】
【数５９】
2008203214.tif 000061
【０１７４】
以上のように、本実施例によれば、図３１に示したようなコネクタ等における計測点の高さ計測が可能となり、画像の二次元計測の結果と併せて立体形状を推定できる。その結果、コネクタが変形しているときは、それを容易に認識することができる。
【０１７５】
そして、この計測方法のベースは単眼ステレオ計測方法であって、使用するカメラは市販品をただ１台用意すれば済み、複眼ステレオ計測方法のようにカメラのキャリブレーションも不要で、廉価な取扱い易い計測システムとすることができ、さらにインライン検査さえも可能な方法とすることができる。
【０１７６】
殊に、マークＭ或いは計測点ｐkmn近傍の領域を取り出し、その非直線輪郭、さらに近似直線から交点座標を求めるようにしたので、ブロックＢの移動前後において全く同一の位置を基準点をして精密に移動距離を捕らえることができ、該基準点のずれによる測定誤差の発生を殆ど無視できる。
【０１７７】
また、上記ステレオ計測法の根幹をなすブロックＢの移動距離Ｄｘ，Ｄｙ，Ｄの測定を、画像処理によって極めて精密に、その都度、実測するようにしたので、ブロック移動距離の変化に柔軟な、高精度単眼ステレオ計測を実現することができる。この手法の採用により、ワーク移動端での機械的または電気的な高精度位置決め機能を付加する必要がなくなり、カメラ、照明等の撮像機器の購入コストと合わせて、設備の開発コストも低減できる。
【０１７８】
さらに、ブロックＢの移動前後における該ブロックの姿勢変化角度β並びにワークＷの姿勢変化θを捉え、計測終点座標ｐ2mnを補正するようにしたので、この計測精度をより高くすることができる。
【０１７９】
加えてさらに、コンピュータに取り込んだ画像に対し、各種演算・処理を施すに先立ち、その対象領域を小さく切り取るようにしたので、該演算・処理時間を大幅に短縮することができ、もってインライン検査をも可能にすることができる。
【０１８０】
なお、マークＭとして、黒色の台紙にかまぼこ形の切り込みを設けたものをブロックに貼付した例を示したが、ブロックそのものの一部、或いはフィクサそのものの一部をこれに代用することができ、またその形状も交点を求め得る２本の近似直線の生成が可能であれば良く、その形状は如何なるものでも良く、また鮮明な画像として捉えられるものであればその色も問わない。
【０１８１】
ワークＷは、インラインでの交換の便宜上、或いはそれに歪みを与えないように、無負荷状態でブロックＢ上にセットする様にしたが、これを殆ど歪みが生じない程度に固定し、ブロックＢの移動前後でその姿勢の変化が起きないように工夫することを妨げるものではない。この場合、ワークの姿勢変化θに基づく計測終点座標ｐ2mnの補正を省くことができる。
【０１８２】
ワークＷの移動に代えてカメラＣを移動させても、同様の計測システムを構築することができる。また、ワークであるコネクタなどの製造装置内に同システムを組込む際には設置環境を考慮し、カスタマイズすればよい。
【図面の簡単な説明】
【０１８３】
【図１】（ａ）はコネクタの斜視図、（ｂ）はコネクタをプリント基板上に取り付けたときの斜視図、（ｃ）はコネクタのハウジングが水平方向に変形した様子を示す斜視図、（ｄ）はコネクタのハウジングが上方向に変形した様子を示す斜視図である。
【図２】ハウジングが上方向に変形したコネクタの形状を計測する様子を示す図である。
【図３】ワーク撮影環境の概要を説明する図である。
【図４】ワークを対角線方向へ移動させる様子を示す概念図である。
【図５】図４の側面図である。
【図６】ワークを移動させるためのプッシュロッドの概略図である。
【図７】複数のマークを撮影したときの画像を示す図である。
【図８】ワークを移動させるためのプッシュロッドを示しており、（ａ）はその要部拡大平面図、（ｂ）は平面図、（ｃ）は側面図である。
【図９】ワーク移動前の撮影画像を示す図である。
【図１０】マークの撮影画像を示す図である。
【図１１】非直線輪郭を生成する様子を示す図である。
【図１２】近似直線輪郭を生成する様子を示す図である。
【図１３】ワーク移動後の撮影画像を示す図である。
【図１４】ワークを移動させる様子を説明するための図であり、（ａ）はワーク全体の斜視図、（ｂ）はワークを対角線方向へ移動させる際に順次撮影した画像を示す図である。
【図１５】図１４（ｂ）中の(1)，(4)，(9)，(16)の要部拡大図である。
【図１６】ワーク移動距離の算出について説明する図である。
【図１７】（ａ）はワーク移動時にワークに姿勢変化が生じたときの撮影画像を示す図、（ｂ）はワーク移動前後におけるワークの姿勢角度の算出方法について説明する図である。
【図１８】ワーク撮影画像から小領域を設定する様子を示す図である。
【図１９Ａ】小領域に非直線輪郭を生成する様子を示す図である。
【図１９Ｂ】小領域に近似直線輪郭を生成する様子を示す図である。
【図２０】（ａ）はワークの上部稜線上の計測点を示す図、（ｂ）はワークの下部稜線上の計測点を示す図、（ｃ）は（ａ）をｖ方向から見た図である。
【図２１】領域始点座標に所定の半径を有する円を設定した様子を示す図である。
【図２２Ａ】領域終点座標を求める様子を示す図である。
【図２２Ｂ】図２２Ａに引き続いて、領域終点座標を求める様子を示す図である。
【図２３】領域終点座標に所定の半径を有する円を設定した様子を示す図である。
【図２４】ワークの外形全長を算出する様子を示す図である。
【図２５】ワーク移動後の原点補正を説明する図である。
【図２６】図２５と共に、ワーク移動後の原点補正を説明する図である。
【図２７】ワークの計測点の座標を算出する原理を説明する図である。
【図２８】ｘ軸に対するエッジの角度を算出する様子を示す図である。
【図２９】図２７に引き続き、ワークの計測点の座標を算出する原理を説明する図である。
【図３０Ａ】ワークとカメラの位置が相対的に変化したとき、ワークの計測点の座標を算出する原理を説明する図である。
【図３０Ｂ】ワークとカメラの位置が相対的に変化したとき、ワークの計測点の座標を算出する原理を説明する図である。
【図３０Ｃ】ワークとカメラの位置が相対的に変化したとき、ワークの計測点の座標を算出する原理を説明する図である。
【図３０Ｄ】ワークとカメラの位置が相対的に変化したとき、ワークの計測点の座標を算出する原理を説明する図である。
【図３０Ｅ】ワークとカメラの位置が相対的に変化したとき、ワークの計測点の座標を算出する原理を説明する図である。
【図３０Ｆ】ワークとカメラの位置が相対的に変化したとき、ワークの計測点の座標を算出する原理を説明する図である。
【図３１】図２９に引き続き、ワークの計測点の座標を算出する原理を説明する図である。
【図３２】計測点を増加させたときのワークの外観斜視図である。
【図３３】ハウジングが種々の形状に変形することを示す図である。
【図３４】ハウジングが種々の形状に変形する様子を示しており、（ａ）は水平方向に変形した場合を、（ｂ）は上下方向に変形した場合を、（ｃ）は平行四辺形に変形した場合を、（ｄ）は台形に変形した場合を、（ｅ）は一部に欠損が生じた場合をそれぞれ説明する図である。
【図３５】ハウジングの水平方向への変形量を算出する原理を説明する図である。
【図３６】図３５と同様、ハウジングの水平方向への変形量を算出する原理を説明する図である。
【図３７】ハウジングの上下方向への変形量を算出する原理を説明する図である。
【図３８】ハウジング平行四辺形型の変形量を算出する原理を説明する図である。
【図３９】ハウジング台形型の変形量を算出する原理を説明する図である。
【図４０】エッジ内における隣り合う計測点を仮想線で繋げる様子を示す図である。
【図４１】計測点をハウジング外形のエッジに展開し、外形全体の三次元形状を推定する様子を示す図である。
【図４２】ハウジングの輪郭を再現した図である。
【図４３】非直線輪郭上の計測点を示すハウジングの斜視図である。
【図４４】ハウジングを示しており、（ａ）はその平面図、（ｂ）は正面図である。
【図４５】直線の傾きを算出する原理を説明した図である。
【図４６】ハウジングの変形を検出する一例を示す図である。
【符号の説明】
【０１８４】
Ｂ  ブロック
Ｃ  カメラ
Ｆ  フィクサ
Ｍ  マーク
Ｓ  ステージ
Ｗ  ワーク
【図１】
2008203214.tif 000062
【図２】
2008203214.tif 000063
【図３】
2008203214.tif 000064
【図４】
2008203214.tif 000065
【図５】
2008203214.tif 000066
【図８】
2008203214.tif 000067
【図２０】
2008203214.tif 000068
【図２４】
2008203214.tif 000069
【図２５】
2008203214.tif 000070
【図２６】
2008203214.tif 000071
【図２７】
2008203214.tif 000072
【図２９】
2008203214.tif 000073
【図３０Ａ】
2008203214.tif 000074
【図３０Ｂ】
2008203214.tif 000075
【図３０Ｃ】
2008203214.tif 000076
【図３０Ｄ】
2008203214.tif 000077
【図３０Ｅ】
2008203214.tif 000078
【図３０Ｆ】
2008203214.tif 000079
【図３１】
2008203214.tif 000080
【図３２】
2008203214.tif 000081
【図３３】
2008203214.tif 000082
【図３４】
2008203214.tif 000083
【図３５】
2008203214.tif 000084
【図３６】
2008203214.tif 000085
【図３７】
2008203214.tif 000086
【図３８】
2008203214.tif 000087
【図３９】
2008203214.tif 000088
【図４０】
2008203214.tif 000089
【図４１】
2008203214.tif 000090
【図４２】
2008203214.tif 000091
【図４３】
2008203214.tif 000092
【図４４】
2008203214.tif 000093
【図４５】
2008203214.tif 000094
【図４６】
2008203214.tif 000095
【図６】
2008203214.tif 000096
【図７】
2008203214.tif 000097
【図９】
2008203214.tif 000098
【図１０】
2008203214.tif 000099
【図１１】
2008203214.tif 000100
【図１２】
2008203214.tif 000101
【図１３】
2008203214.tif 000102
【図１４】
2008203214.tif 000103
【図１５】
2008203214.tif 000104
【図１６】
2008203214.tif 000105
【図１７】
2008203214.tif 000106
【図１８】
2008203214.tif 000107
【図１９Ａ】
2008203214.tif 000108
【図１９Ｂ】
2008203214.tif 000109
【図２１】
2008203214.tif 000110
【図２２Ａ】
2008203214.tif 000111
【図２２Ｂ】
2008203214.tif 000112
【図２３】
2008203214.tif 000113
【図２８】
2008203214.tif 000114