(57)【要約】      （修正有）【課題】高速且つ的確にワークの形状の高さに関する情報を取得する形状検査装置及び形状検査方法を提供する。【解決手段】ワークの表面形状における高さ情報を含む距離画像S1に複数の且つ一方向に並んだセグメントを設定する。セグメントに含まれる各画素が有する高さ情報に関する代表値の種別を選択し、この選択された代表値を各セグメント毎に求めるS2。獲得したトレンドから特定の代表値の異常を検出して出力するS4。【選択図】図８
2015169473.tif 000002
【特許請求の範囲】
【請求項１】
ワークの表面形状における高さ情報を含む距離画像を取得する距離画像取得手段と、
取得した前記距離画像を表示する表示手段と、
該表示手段に表示されている前記距離画像に対して複数の且つ一方向に並んだセグメントを設定するセグメント設定手段と、
該複数のセグメントの各々のセグメントに含まれる各画素が有する高さ情報に関する代表値の種別を選択するための代表値選択手段とを有し、
該代表値選択手段により選択された前記代表値を各セグメント毎に求めることを特徴とする形状検査装置。
【請求項２】
前記表示手段に表示されている前記距離画像に対して計測領域を規定するウインドウを設定するウインドウ設定手段を更に有し、
該ウインドウ設定手段によって設定されたウインドウの中に前記セグメントが割り付けられる、請求項１に記載の形状検査装置。
【請求項３】
前記代表値が、各画素が有する高さ情報から抽出できる値である、請求項１又は２に記載の形状検査装置。
【請求項４】
前記代表値が、各セグメントに含まれる複数の画素の最大高さ又は最小高さである、請求項３に記載の形状検査装置。
【請求項５】
前記代表値が、前記セグメントに含まれる各画素が有する高さ情報に基づいて演算によって求められる値である、請求項１又は２に記載の形状検査装置。
【請求項６】
前記代表値が、前記セグメントに含まれる各画素が有する高さ情報の平均値である、請求項５に記載の形状検査装置。
【請求項７】
前記代表値が、各セグメントに含まれる全ての画素に対して、トレンド方向に配列している画素群の平均化処理によって高さに関する一次元データを取得し、一次元データ群をトレンド方向に対する垂直方向に走査して求めた最小高さ又は最大高さである、請求項５に記載の形状検査装置。
【請求項８】
前記ワークの前記一方向の表面形状の高さに関する公差との対比で各代表値が前記公差を超えているか否かによって欠陥判定を行う欠陥判定手段を更に有する、請求項１〜７のいずれか一項に記載の形状検査装置。
【請求項９】
各セグメントの代表値から前記ワークの前記一方向の表面形状の基準となる基準モデル線を求め、該基準モデル線と各代表値との差分がしきい値を超えているか否かによって欠陥判定を行う欠陥判定手段を更に有する、請求項１〜７のいずれか一項に記載の形状検査装置。
【請求項１０】
ユーザが指定する前記セグメントの幅及び隣接する２つのセグメント間の距離を受け付けて、該セグメントの幅及び隣接する２つのセグメント間の距離に基づいて前記複数のセグメントが前記ウインドウの中に割り付けられる、請求項２に記載の形状検査装置。
【請求項１１】
検査対象物の表面形状における高さ情報を含む距離画像を取得する距離画像取得工程と、
取得した前記距離画像を表示部に表示する表示工程と、
前記表示部に表示されている前記距離画像に対して複数の且つ一方向に並んだセグメントを設定するセグメント設定工程と、
該複数のセグメントの各々のセグメントに含まれる各画素が有する高さ情報に関する代表値の種別を選択するための代表値選択工程とを有し、
該代表値選択工程で選択された前記代表値を各セグメント毎に求める代表値抽出工程とを含む形状検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査対象物の高さに関する情報を取得可能な形状検査装置及び形状検査方法に関する。本発明は、典型的には、検査対象物の高さに関する欠陥の有無を検査するのに適用される。
【背景技術】
【０００２】
製品の検査つまり製品の欠陥の有無を検査するのに画像処理が多用されている。この種の画像処理では、大量に且つ流れ作業の中で検査するのに高速且つ的確な検査処理が求められる。
【０００３】
特許文献１は、検査対象物（以下、「ワーク」という。）のエッジ幅を計測し、その計測結果を使ってワークの欠陥判定を行う画像処理装置を開示している。この特許文献１の画像処理装置は表示部に表示した画像にウインドウを設定し、また、このウインドウの中に複数のウインドウエレメント（セグメント）を所定のピッチで配置する。そして、このウインドウエレメント（セグメント）毎にワークのエッジ幅を測定して各ウインドウエレメント（セグメント）の最大エッジ幅を求める。そして、その結果、規格外の最大エッジ幅があればＮＧ（「欠陥」有り）の判定を行う。
【０００４】
特許文献２は、上記特許文献１と同様に、ウインドウエレメント（セグメント）を使ってワークの輪郭線の欠陥の位置及び大きさを検出する画像処理装置を開示している。この画像処理装置は、ワークの輪郭線を示すエッジ点列に基づいて近似曲線を求める。この近似曲線の求め方として、代表的なエッジ点を複数算出し、そして、この代表エッジ点列を補間して擬似的な近似曲線（自由曲線）を求める。この擬似的な近似曲線を基準として、この近似曲線との差分により欠陥の有無や欠陥の大きさを検出することができる。
【０００５】
近時はコンピュータによる製造支援が定着し、三次元ＣＡＤデータに基づく物作りが広く行われている。特許文献３は、ＣＡＤデータと、このＣＡＤデータを基に製作された物体を三次元スキャナ、断層画像撮像装置などで計測した非接触計測点データとを位置合わせすることで、ＣＡＤデータ通りに製造されているかを検査する位置合わせ装置を開示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−１４５５０５号公報
【特許文献２】特開２００９−１８６３３８号公報
【特許文献３】特開２００１−８２９５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献３の位置合わせ装置を使うことでワークの高さの計測や高さの欠陥の検査を行うことができる。しかし、この位置合わせ装置は当然のことであるがＣＡＤデータの存在が必須である。これに加えて、ＣＡＤデータと非接触計測点データとを正確に位置合わせする処理は負荷の高い処理である。このことから、ベルトコンベアで搬送されるワークの形状欠陥検査のように、高速でＮＧ判定しなければならない場合には、ＣＡＤデータに基づく上記の位置合わせ装置は適していない。
【０００８】
本発明の目的は、高速且つ的確にワークの形状の高さに関する情報を取得可能な形状検査装置及び形状検査方法を提供することにある。
【０００９】
本発明の更なる目的は、高速且つ的確にワークの形状の高さに関する局所的な違いを特定することのできる形状検査装置及び形状検査方法を提供することにある。
【００１０】
本発明の他の目的は、表示部に表示されているワークの画像から局所的に異なる高さの箇所を特定することができ且つその特定が高速である形状検査装置及び形状検査方法を提供することにある。
【００１１】
本発明の更なる目的は、ワークの表面形状の高さに関する欠陥を高速且つ的確に検査することのできる形状検査装置及び形状検査方法を提供することにある。
【課題を解決するための手段】
【００１２】
表示部にワークを三次元的に表示する際に表示部の各画素には高さに関する情報が含まれている。すなわち、表示部に表示の画像は、各画素に含まれる高さ情報に基づいて色分けや輝度により三次元的に表示されている。本願発明者らは、この画素に含まれる高さ情報に着目して本発明を案出するに至ったものである。
【００１３】
上記の技術的課題は、本願発明の一つの観点によれば、
ワークの表面形状における高さ情報を含む距離画像を取得する距離画像取得手段と、
取得した前記距離画像を表示する表示手段と、
該表示手段に表示されている前記距離画像に対して複数の且つ一方向に並んだセグメントを設定するセグメント設定手段と、
該複数のセグメントの各々のセグメントに含まれる各画素が有する高さ情報に関する代表値の種別を選択するための代表値選択手段とを有し、
該代表値選択手段により選択された前記代表値を各セグメント毎に求めることを特徴とする形状検査装置を提供することにより達成される。
【００１４】
本発明の他の観点によれば、上記の技術的課題は、
検査対象物の表面形状における高さ情報を含む距離画像を取得する距離画像取得工程と、
取得した前記距離画像を表示部に表示する表示工程と、
前記表示部に表示されている前記距離画像に対して複数の且つ一方向に並んだセグメントを設定するセグメント設定工程と、
該複数のセグメントの各々のセグメントに含まれる各画素が有する高さ情報に関する代表値の種別を選択するための代表値選択工程とを有し、
該代表値選択工程で選択された前記代表値を各セグメント毎に求める代表値抽出工程とを含む形状検査方法を提供することにより達成される。
【００１５】
本発明によれば、前記一方向を「トレンド方向」と呼ぶと、一方向に並んだ複数のセグメントの各々のセグメントが有する代表値を求めることで、検査対象物（ワーク）の表面形状の傾向（トレンド）を素早く取得することができる（トレンド計測）。そして、ワークの表面形状のトレンドから特定の代表値が異なっていれば、この代表値はトレンドから異なっていると判定でき、そしてトレンドから所定以上異なっていれば、ワークの表面形状に欠陥があると判定することが可能となる。また、トレンドと各セグメントの代表値との差異の数値に基づいて、例えば所定部位の体積や寸法（高さの偏差）を求めることができる。この場合には、ワーク表面のトレンド方向において基準となる線つまり後述する基準モデル線を設定するのが好都合である。ワーク表面の部分的な計測領域を規定するのに、ユーザが予めウインドウを設定できるのがよい。
【００１６】
代表値は、ユーザが何を目的としているかによって、その目的に合致した代表値を選択すればよい。ワークの表面形状を把握できるのであれば任意の値を選択することができる。代表値の典型例として平均値、最大値、最小値を挙げることができる。ワーク表面の局部的な凹凸を検出したいときに効果的である最大値（又は最小値）を求めるのに、各セグメントに含まれる複数の画素において、上記一方向に沿った方向の画素群の高さ情報を投影処理つまり平均化処理して高さ情報の一次元データを取得し、この一次元データに対して、上記一方向の垂直方向に走査して最大値（又は最小値）を取得するのが良い。これにより各セグメント内で突出したノイズに左右され難い安定した最大値（又は最小値）の取得が可能となる。
【００１７】
トレンドを把握するのに基準線を求めてもよい。この基準線は複数のセグメントの代表値から推定することができる。基準線として直線、円、自由曲線を挙げることができる。基準線を求めることで、この基準線と各代表値を比較することでワークの表面形状の欠陥を判定することができる。すなわち、ワークの表面形状の高さに関する欠陥を高速且つ的確に検査することができる。また、基準線に基づいて当該基準線と各代表値との違いを数値化することができる。
【００１８】
上記セグメントを自動配置するのに、上記表示手段に表示されている距離画像に対して計測領域を規定するウインドウを設定するのが良い。このウインドウはユーザの手で設定するのがよい。ウインドウによって規定される計測領域に対して、複数のセグメントを所定のピッチで配置するのは容易であり、これを自動化することができる。セグメントの幅及びセグメントのピッチはユーザに指定させるのがよい。
【００１９】
本発明の他の目的及び本発明の作用効果は、後に説明する実施例の説明から明らかになろう。
【図面の簡単な説明】
【００２０】
【図１】実施例の形状検査装置の構成図である。
【図２】表示部に表示されている撮像画像に水平方向に延びるウインドウを設定し、このウインドウの中に複数のセグメントを割り付ける例を説明するための図である。
【図３】表示部に表示されている撮像画像に斜めに延びるウインドウを設定し、このウインドウの中に複数のセグメントを割り付ける例を説明するための図である。
【図４】表示部に表示されている撮像画像に円形リング状のウインドウを設定し、このウインドウの中に複数のセグメントを割り付ける例を説明するための図である。
【図５】表示部に表示されている撮像画像に円形リングの一部を切り欠いたＣ字状のウインドウを設定し、このウインドウの中に複数のセグメントを割り付ける例を説明するための図である。
【図６】平均化処理による最大高さ（代表値）の求め方を概念的に説明するための図である。
【図７】平均化処理により最小高さを取得する方法を概念的に説明するための図である。
【図８】各セグメントの代表値が共通の公差の範囲内にあるか否かによって欠陥判定を行う第１モードの処理手順を説明するためのフローチャートである。
【図９】第１モードでの欠陥判定の具体例を説明するための図であり、検査対象の電子部品が複数の端子を備え、高さレベルが相対的に低い端子の高さ異常を検出してＮＧ判定する例を説明するための図である。
【図１０】第１モードの機能を使って半径を求める半円状のワークを示す図である。
【図１１】図１０のワークの撮像画像である。
【図１２】図１１の撮像画像にセグメントを設定した状態を示す図である。
【図１３】図１２に図示のセグメントの「平均高さ」（代表値）をプロットしたグラフである。
【図１４】第１モードを使って凹所の体積を求める缶の底を示す図である。
【図１５】図１４の缶の底の撮像画像（高さ画像）である。
【図１６】溶接部位を示す図である。
【図１７】図１６の溶接部位の撮像画像（高さ画像）である。
【図１８】図１７の溶接部位の撮像画像にセグメントを設定した状態を示す図である。
【図１９】図１８の撮像画像の各セグメントの「最大高さ」（代表値）をプロットしたグラフである。
【図２０】図１９のグラフに公差を書き込んで、一部の最大高さが公差から逸脱していることを説明するための図である。
【図２１】第２モードの処理手順を説明するためのフローチャートである。
【図２２】第２モードを使って図９の電子部品の一つの端子が相対的に低い高さレベルであることを基準モデル線との差分データによって検出する例を説明するための図である。
【図２３】第２モードを使って図１０の断面円弧状のワークの欠陥を検出する例を説明するための図である。
【図２４】第２モードを使って図１５の缶の底の欠陥を検出する例を説明するための図である。
【図２５】第２モードを使って図１９の溶接部位の欠陥を検出する例を説明するための図である。
【図２６】ユーザが高さの基準を指定せずに、撮像系の基準面をゼロ面としたときの図１６の溶接部位の高さ画像である。
【図２７】ユーザが「平面基準」を指定したときの図１６の溶接部位の高さ画像である。
【図２８】「平面基準」を指定したときの図１６の溶接部位の計測結果を示す図である。
【図２９】図１６の溶接部位の各セグメント毎に第２の計測領域を設定したときの高さ画像である。
【図３０】図２９と同様に、図１６の溶接部位の各セグメント３０毎に第２の計測領域を設定したときの高さ画像である。
【図３１】変曲点のトレンドを計測する例を説明するための図である。
【図３２】所望の変曲点を計測する場合の一つの手法を例示的に説明するための図である。
【発明を実施するための形態】
【実施例】
【００２１】
以下、本発明の好ましい実施例を図面に基づいて説明する。ただし、以下に説明する実施例は、本発明の技術思想を具体化するための形状検査装置及び形状検査方法を例示するものである。ここに、本明細書において「距離画像」又は「高さ画像」という用語は高さ情報を含む画像の意味で使用する。
【００２２】
形状検査装置の構成：
実施例の形状検査装置１の構成を図１に示す。この形状検査装置１は、ヘッド部２と、コントローラ部４とを有する。ヘッド部２は、検査対象物（ワーク）ＷＰを照らす投光手段２０１と、ワークＷＰの多値画像を撮像する撮像手段２０２と、ヘッド部２をコントローラ部４に接続するためのヘッド側通信手段２０３を備える。
【００２３】
コントローラ部４は、撮像されたワークＷＰの表面形状の欠陥を判定する。すなわち、コントローラ部４は、各画素が含む高さ情報に基づいて例えば周囲とは異なる局所的な高さ違いを検出し、これによって決定できるワーク表面画像を表示部（典型的には液晶モニタ）６に表示すると共に撮像画像（ワーク）のエッジ検出、面積計算、表面形状の欠陥検出などの処理を実行する。また、コントローラ部４には、ユーザが表示部６上で各種操作するためのコンソール等の入力手段８、ＰＬＣ（Programmable Logic Controller）１０等を着脱自在に接続できる。
【００２４】
形状検査装置１はヘッド部２から多値画像を取得する。ワークＷＰが静止状態であることが必要とされる位相シフト法や空間コード化法などによって高さ情報を含む画像を生成してもよいし、移動するワークＷＰを前提とした光切断法によって高さ情報を含む画像を生成してもよい。
【００２５】
撮像手段２０２は、ＰＬＣ１０から入力される制御信号、例えば撮像手段２０２から画像データを取り込むタイミングを規定する撮像トリガ信号に基づいて、ワークの撮像を行い、この撮像データはコントローラ部４に供給される。
【００２６】
コントローラ部４は、コントローラ部４の制御プログラムを生成するためのパーソナルコンピュータＰＣを接続することもできる。またパーソナルコンピュータＰＣには、三次元画像処理に関する設定を行う三次元画像処理プログラムをインストールして、コントローラ部４で行う処理の各種設定を行うこともできる。あるいは、このパーソナルコンピュータＰＣ上で動作するソフトウェアによって、画像処理の処理順序を規定する処理順序プログラムを生成することができる。
【００２７】
コントローラ部４では、その処理順序に沿って各画像処理が順次実行される。パーソナルコンピュータＰＣとコントローラ部４とは、通信ネットワークを介して接続されており、パーソナルコンピュータＰＣ上で生成された処理順序プログラムは、例えば表示部６の表示態様を規定するレイアウト情報等と共に、コントローラ部４に転送される。また逆に、コントローラ部４から処理順序プログラムやレイアウト情報等を取り込んで、パーソナルコンピュータＰＣ上で編集することもできる。なお、この処理順序プログラムは、パーソナルコンピュータＰＣだけでなく、コントローラ部４においても生成できるようにしてもよい。
【００２８】
形状検査装置１は、三次元画像処理プログラムで画像処理等、必要な設定を行った上で、ヘッド部２から取得した多値画像に基づいて必要な処理及び検査並びに判定を行う。
【００２９】
図１に示す撮像手段２０２と投光手段２０１を利用することで得られる「距離画像（高さ画像）」とは、ワークＷＰを撮像する撮像手段２０２から、ワークＷＰまでの距離に応じて各画素の濃淡値が変化する画像をいう。換言すれば、撮像手段２０２からワークＷＰまでの距離に基づいて濃淡値が決定される画像ともいえるし、ワークＷＰまでの距離に応じた濃淡値を有する多値画像ともいえるし、或いはワークＷＰの高さに応じた濃淡値を有する多値画像ともいえる。さらに、輝度画像の画素ごとに、撮像手段２０２からの距離を濃淡値に変換した多値画像ともいえる。
【００３０】
実施例の形状検査装置１の処理は、（１）コントローラ部がワークＷＰの表面形状における高さ情報を含む距離画像を取得する距離画像取得工程と、（２）取得した前記距離画像を表示部６に表示する表示工程と、（３）該表示部６に表示されている距離画像に対して計測領域を規定するウインドウを設定するウインドウ設定工程と、（４）該ウインドウで規定される計測領域に複数の且つ一方向に並んだセグメントを設定するセグメント設定工程と、（５）該複数のセグメントの各々のセグメントに含まれる各画素の高さ情報に関する代表値の種別を選択するための代表値選択工程と、（６）該代表値選択工程で選択された前記代表値を各セグメント毎に求める代表値抽出工程とを含む。変形例として、上記（３）ウインドウ設定工程を省いてもよい。
【００３１】
上記のセグメントを設定する前にウインドウで計測領域を規定する手法は特許文献１（特開２００４−１４５５０５号公報）及び特許文献２（特開２００９−１８６３３８号公報）に記載されていることから、これらの特許文献１、２を本明細書に援用することで、その詳しい説明を省略する。
【００３２】
ウインドウを設定することで計測領域を絞り込むことができ、更に、このウインドウの中に一方向に並んだ複数のセグメントを設定して、このセグメントに含まれる複数の画素の高さ情報に基づく代表値に基づいて表面形状の欠陥を判定することで処理速度を高めることができる。また、一方向に並んだ複数のセグメントの代表値から、この一方向をトレンド方向と呼ぶと、トレンド方向に沿ったワークの表面形状のトレンドつまりワーク表面の全体的な形状の傾向つまりワーク表面がトレンド方向において円弧であるとか、直線であるとか、自由曲線であるとかを把握することができる。このトレンド方向はウインドウ２０の延び方向又はセグメント３０の配列方向と言い換えることができる。
【００３３】
セグメント３０の自動設定：
図２は水平方向に延びる長方形のウインドウ２０を設定した場合を示す。このウインドウ２０の中に、その長手方向つまり水平方向に複数のセグメント３０が設定される。各セグメント３０の幅Ｗ及び隣接する２つのセグメント３０間の距離（ピッチ）Ｐｔをユーザに指定又は設定させればよい。セグメント幅Ｗ及びピッチＰｔの指定は画素数の指定と等価である。
【００３４】
ユーザが指定又は設定したセグメント幅Ｗ及びピッチＰｔに基づいてウインドウ２０の左端から右端に向けて順に複数のセグメント３０が等間隔に割り付けられる。変形例として、ユーザがセグメント幅Ｗとセグメント３０の数を指定又は設定するようにしてもよい。この場合には、ウインドウ２０内に、ユーザが指定又は設定した数の且つ同じセグメント幅Ｗを備えたセグメント３０を等間隔に自動配列させればよい。
【００３５】
図３は、ウインドウ２０を斜めに設定した場合を示す。図３の例では、このウインドウ２０の中に、ウインドウ２０の上方から下方に向けて順に複数のセグメント３０が割り付けられている。
【００３６】
図４は、円形リング状にウインドウ２０が設定された例を示す。この場合には、３時のラインを起点に時計回りにセグメント３０が設定される。この場合、セグメント３０の幅Ｗ及びセグメント３０間のピッチＰｔは、リング状ウインドウ２０の中心Ｏを通る、この実施例では３時のラインからの角度が相当する。
【００３７】
図４には、円形リング状のウインドウ２０の外周円と内周円とが同心の例を図示してあるが、この図示例は典型例に過ぎず、外周円の中心と内周円の中心とが異なっていてもよい。
【００３８】
図５は、円形リングの一部を切り欠いたＣ字状のウインドウ２０が設定された例を示す。この場合にも時計回りにセグメント３０が設定される。時計回り方向の遅れ側端が起点となり、この開始角度からセグメント３０が時計回りに設定される。
【００３９】
図５には、Ｃ字状のウインドウ２０の外周円弧と内周円弧とが同心の例を図示してあるが、この図示例は典型例に過ぎず、外周円弧の中心と内周円弧の中心とが異なっていてもよい。
【００４０】
円形リング状又はその一部を切り欠いた形状のウインドウ２０が設定された場合、円周又は円弧状の領域をコントローラ部４の内部で極座標変換し、矩形形状に変換した状態で処理するのがよい。
【００４１】
矩形、円形リング状やその一部を切り欠いたＣ字状のウインドウ２０の大きさや傾斜角度を規定するのに、ハンドルＨｄ（図２〜図５）を表示部６に表示し、このハンドルＨｄをユーザが操作することで、所望の大きさの且つ所望の半径の且つ所望の傾斜角度のウインドウ２０を設定できるようにするのがよい。このウインドウ２０の延び方向によってトレンド方向が規定される。そして、ウインドウ２０で区画された計測領域に対して、ユーザが指定したセグメント幅Ｗ及びピッチＰｔで複数のセグメント３０がトレンド方向に配列されることになる。
【００４２】
以上はウインドウ２０の中にセグメント３０を自動設定する例を説明したが、このセグメント３０の自動設定の変形例として、ウインドウ２０を設定する工程を省いてもよい。この変形例を説明すると、先ず、ユーザがセグメント３０を設定する開始位置と終了位置とを表示部６で指定する。そして、この開始位置と終了位置との間に、ユーザが指定したセグメント幅Ｗ及びピッチＰｔに従って複数のセグメント３０を自動設定する。セグメント幅Ｗ及びピッチＰｔは画素数と等価である。複数のセグメント３０を直線上に配列させるか、円周上に配列させるかをユーザに指定させるのがよい。円周上に配列させる場合には、この円周を特定できる例えば３点をユーザに指定させればよい。
【００４３】
セグメント３０内の高さ算出：
ワークＷＰの形状欠陥を検出するのに都合の良い代表値をユーザが指定できる。例えば表示部６に代表値の種別をメニュー表示し、ユーザはその中から所望の代表値を選択できるようにするのがよい。実施例の形状検査装置１では、（１）平均高さ、（２）最大高さ、（３）最小高さの３種類の代表値から一つを選択できる。
【００４４】
（１）平均高さ：
ユーザが代表値として「平均高さ」を指定したときには、各セグメント３０に含まれる全ての画素の高さ情報の平均値を算出して、この平均値が各セグメント３０の代表値になる。演算の結果得られた代表値は、各代表値が各セグメントの位置情報を有している。この特性を有する代表値を選択することで、欠陥位置がどのセグメントに存在しているかを特定することができる。
【００４５】
（２）最大高さ：
最大高さに関しては２つの求め方がある。第１の求め方は、各セグメント３０に含まれる全ての画素の高さ情報から最大高さを抽出するやり方である。選択の結果得られたこの代表値によれば、各セグメント３０の最大高さと共に当該最大高さの情報を持つ画素を特定できる。各画素は、それ自体が位置情報を持っていることから、どの画素が最大高さの情報を持っているかを特定できる。つまり、各セグメント３０において、どの位置が最大高さを有しているかを特定できるという利点がある。高さ情報に加えて各画素は位置情報を実質的に有している。この特性を使うことのできる代表値を採用することで、欠陥位置を特定するのが容易となる。
【００４６】
第２の求め方は平均化処理により最大高さを取得する方法である。この第２の方法について図６を参照して説明する。この図６は、平均化処理による最大高さの求め方を概念的に説明するための図である。第２の方法は２つの工程で構成される。
【００４７】
第１の工程は、各セグメント３０に含まれる全ての画素に対して、トレンド方向に配列している画素群を上から順に、各列の画素群の高さの平均化処理(投影処理)を行って高さに関する一次元データを取得する。各画素列の高さに関する一次元データを図６の右に示してある。
【００４８】
第２の工程は、各画素列の一次元データ群をトレンド方向に対する垂直方向に走査する。この第２の工程により最大高さの一次元データＰH（図６）を取得する。この最大高さの一次元データＰHが代表値となる。この代表値は、どの列に最大高さが存在しているかの情報を実質的に有している。この特性を有する代表値を選択することで、欠陥位置がどのセグメントのどの列に存在しているかを特定することができる。
【００４９】
上記の平均化処理(投影処理)を行うことで、突出したノイズに左右され難い代表値の取得が可能になる。勿論、セグメント３０の幅Ｗを変更することで平均化の度合いを調整することができる。
【００５０】
最大値の求め方について、第１の方法、第２の方法をユーザが選択するようにしてもよいし、第１の方法又は第２の方法だけを採用するようにしてもよい。
【００５１】
（３）最小高さ：
最小高さに関しても、上記の最大高さと同様に、２つの求め方がある。第１の求め方は、各セグメント３０に含まれる全ての画素の高さ情報から最小高さを抽出するやり方である。これによれば、各セグメント３０の最小高さと共に当該最小高さの情報を持つ画素を特定できる。
【００５２】
第２の求め方は平均化処理により最小高さを取得する方法である。この第２の方法について図７を参照して説明する。
【００５３】
第１の工程は、各セグメント３０に含まれる全ての画素に対して、トレンド方向に配列している画素群を上から順に、各列の画素群の高さの平均化処理(投影処理)を行って高さに関する一次元データを取得する。各画素列の高さに関する一次元データを図７の右に示してある。
【００５４】
第２の工程は、各画素列の一次元データ群をトレンド方向に対する垂直方向に走査する。この第２の工程により最小高さの一次元データＰL（図７）を取得する。この最小高さの一次元データＰLが代表値となる。この代表値は、最小高さを持つ画素列の情報を有している。最小値の求め方について、第１の方法、第２の方法をユーザが選択するようにしてもよいし、第１の方法又は第２の方法だけを採用するようにしてもよい。
【００５５】
上述したように、セグメント３０はコントローラ部４の内部処理によって自動設定される。ユーザが設定するセグメント幅Ｗ及びピッチＰｔに関し、一般的にはセグメント幅Ｗよりも大きな値がピッチＰｔとして設定されるが、ピッチＰｔをセグメント幅Ｗよりも小さな値に設定してもよい。ピッチＰｔをセグメント幅Ｗよりも小さな値に設定したときには、互いに隣接する２つのセグメント３０が互いに重複した状態となる。この重複による平均化効果によってノイズに強い安定した計測や検出をより密な間隔で実施することが可能となる。
【００５６】
セグメント幅Ｗを大きな値に設定すれば、ワークＷＰの表面形状（トレンド方向）の概略的な傾向を獲得できる。言い換えれば、表面の細かい凹凸には左右されずに、大きな凹み等の傾向のみを獲得することができる。他方、セグメント幅Ｗを小さな値に設定すれば、ワークＷＰの表面形状（トレンド方向）の詳細な傾向を獲得できる。言い換えば、表面の細かい凹凸に追従した傾向を獲得することができる。
【００５７】
また、セグメント幅Ｗとの相対的な関係において、ピッチＰｔの値として大きな値を設定すれば、全体として荒いトレンドを求めることができる。他方、セグメント幅Ｗとの相対的な関係において、ピッチＰｔの値として小さな値（例えば隣接するセグメント３０を互いにオーバーラップさせる）を設定すれば、ワークＷＰのトレンド方向における詳細な表面形状を求めることができる。
【００５８】
実施例の形状検査装置１は形状欠陥の判定のやり方に関して２つのモードを有している。第１のモードは、全てのセグメント３０に対して共通の公差を用意し、いずれか一つのセグメント３０の代表値が公差を超えた場合に「欠陥有り」の判定を行う。
【００５９】
第２のモードは基準モデル線を求め、この基準モデル線と各セグメント３０の代表値との差分がしきい値を超えた場合に「欠陥有り」の判定を行う。
【００６０】
第１モード（図８〜図２０）：
第１モードは、各セグメント３０の代表値が共通の公差の範囲内にあるか否かによって欠陥判定を行う。
【００６１】
ゼロ面：
各セグメント３０の本来あるべき面（背景）を「ゼロ面」として設定し、このゼロ面に対して上記の代表値の値を調整するのがよい。例えばワークＷＰが傾いた状態で撮像された場合、その傾きを補正するのが「ゼロ面」という概念である。このゼロ面補正を行うことで、ゼロ面を基準にワークＷＰの表面高さを求めることができる。
【００６２】
ゼロ面の設定は、全てのセグメント３０に対して共通であっても良いし、各セグメント３０毎に異なるゼロ面を設定してもよい。例えばワークＷＰに反りがある場合、各セグメント３０毎に異なるゼロ面を設定するのが効果的である。
【００６３】
図８は第１モードの処理手順を説明するためのフローチャートである。図８を参照して、先ず、距離画像（高さ画像）を取得する（Ｓ１）。前述したように静止状態を前提とした位相シフト法や空間コード化法による三次元計測以外に、移動するワークＷＰを前提とした光切断法による三次元計測など、高さ画像の形式で出力される画像であればどのような方式で取得した画像であってもよい。
【００６４】
次のステップＳ２で、各セグメント３０の代表値を取得する。各セグメント３０の代表値は全てのセグメント３０の共通のゼロ面によって調整した代表値であってもよいし、個々のセグメント３０毎に設定されたゼロ面によって調整した代表値であってもよい。その選択はユーザの指定に委ねるのがよい。
【００６５】
次のステップＳ３は任意の工程であり、不要であれば次のステップＳ４に移行する。換言すれば、ステップＳ３はユーザの設定によって実行される。各セグメント３０の代表値に基づいてワークＷＰの表面のトレンドを表す近似円又は平面を次の式に基づいて求める。
【００６６】
（１）近似円：
各セグメント３０の代表値（高さデータ）の配列と、隣接する２つのセグメント間のピッチＰｔを使って、以下の式に基づいて最小二乗法により円の式に当てはめればよい。
【００６７】
（ｘ−Ａ）2＋（ｚ−Ｂ）2＝Ｒ2
ここに、ｘは各セグメント３０の移動量つまり開始位置のセグメントからの距離である。
ｚは各セグメント３０の代表値（高さデータ）である。
Ａ、Ｂ、Ｒは求める円の式の係数である。
【００６８】
上記の式によれば、三次元の形状データを、「ｘ方向：セグメント３０の移動量」と「ｚ方向」との二次元に落とし込んで処理することで、複雑な三次元の演算を行うことなく、比較的簡単な計算式に基づいて近似円を求めることができる。勿論、このことは処理速度を高めることができるメリットがある。
【００６９】
（２）平面：
各セグメント３０の代表値（高さデータ）の配列から、以下の式に基づいて最小二乗法により平面の式に当てはめればよい。
【００７０】
Ａ・ｘ＋Ｂ・ｙ＋Ｃ・ｚ＋１＝０
ここに、ｘ、ｙ、ｚは代表値の点の三次元座標値である。
Ａ、Ｂ、Ｃは求める平面の式の係数である。
【００７１】
ステップＳ４において、各代表値が公差の範囲から外れているときには「欠陥有り」と判定され、公差の範囲内であれば「欠陥無し」と判定される。そして、この判定結果が出力される。公差の範囲から外れている代表値が幾つあるかによって、その数によって「欠陥有り」の判定を行うようにしてもよい。変形例として、公差の範囲から外れている代表値が連続して複数ある場合に「欠陥有り」の判定を行うようにしてもよい。勿論、公差の範囲から外れている代表値が連続して幾つあるかによって「欠陥有り」の判定を行うようにしてもよい。ステップＳ３を経由した場合は、算出された近似円や平面自体が公差の範囲にあるかどうかを、判定結果に加えることができる。例えば、算出された近似円の半径が公差から外れていた場合や、算出された平面の傾き度合いが公差から外れていた場合に、「欠陥有り」の判定を行うようにしても良い。
【００７２】
上述した第１モードでの欠陥判定の具体例を次に説明する。図９は、等間隔に位置する複数の端子４０を備えた電子部品ＷＰの検査例である。この電子部品ＷＰは複数の端子４０が同じ高さ位置にあるのが正規の形状である。図９の（Ｉ）は、一つの端子４０aが正規の高さ位置よりも低い。この端子４０aの高さ異常を検出してＮＧ判定すべきである。図９の(II)はワークＷＰの高さ画像である。図９の(III)は各端子４０にセグメント３０を設定した状態を示す。ユーザが代表値として「平均高さ」を指定したときの各セグメント３０の平均高さをプロットしたのが図９の(IV)のグラフである。図９の(V)はユーザが設定した公差を示す。端子４０aの平均高さは公差の範囲から逸脱している。よって、このワークＷＰに対してＮＧ（「欠陥有り」）の判定が下される。勿論、どのセグメントに欠陥があるかを特定することができる。
【００７３】
図９を参照して、複数の端子４０は互いに離間しており、隣接する２つの端子４０の間にはワークＷＰの表面が存在していない。このような場合、各セグメント３０から得られた代表値を表示部６に表示する方法として、隣接するセグメント３０の間の間隔を狭める又は無くして代表値を表示するのがよい。つまり、端子４０が存在していない領域を無視した形式又は端子４０が存在していない領域を例えば直線でその存在を視覚的に明らかにした状態で各代表値を表示するのがよい。これによれば、端子４０の全体的なトレンドを視覚的に把握し易くなる。このことは、ユーザが互いに隣接するセグメント３０間を離間して設定した場合にも適用することができる。
【００７４】
第１モードの機能を使って半円状のワークＷＰの半径を求めることができる。具体例を図１０〜図１３を参照して説明する。図１０は断面円弧状のワークＷＰを示す。このワークＷＰの外表面の半径を求めたい場合、ワークＷＰの撮像画像（高さ画像）を取り込む（図１１）。図１２はワークＷＰにセグメント３０を設定した状態を示す。各セグメント３０の「平均高さ」をプロットしたのが図１３の(I)のグラフである。このグラフから分かるように、ワークＷＰの表面形状のトレンドを知ることができる。そして、この「平均高さ」に基づいて前述した計算式により求めた近似円４２を図１３の(II)の破線で示してある。この近似円からワークＷＰの半径を求めることができる。
【００７５】
図１４、図１５は、缶の底の凹所の体積を求める例を示す。図１４はワークＷＰである缶の底を示す。図１５はワーク（缶）ＷＰの撮像画像（高さ画像）を示す。図１５に示す缶の底の画像において缶の底の平面視円形リング状の凹所に円弧の枠が見えるが、この枠が前述したセグメント３０である。
【００７６】
各セグメント３０の代表値として「最大高さ」のデータから、上述した計算式に基づいて平面を算出する。そして、得た平面をゼロ面とし、このゼロ面に基づいて、リング状内の画素値（ゼロ面からの距離）を積算することで、凹所の体積を算出することができる。
【００７７】
図１６は溶接部位を示す。この溶接部位に異常があることを検出する例を図１７〜図２０を参照して説明する。図１７は溶接部位の撮像画像（高さ画像）を示し、図１８は溶接部位の撮像画像にセグメント３０を設定した状態を示す。図１８の横長の矩形の枠がセグメント３０である。各セグメント３０の最大高さをプロットしたグラフを図１９に示す。図２０はユーザが設定した公差を示す。また、図２０から分かるように、溶接部位において、一部のセグメント３０の最大高さが公差の範囲から逸脱している。よって、この溶接部位に対してＮＧ（「欠陥有り」）の判定が下される。勿論、公差から逸脱している箇所を特定することができる。
【００７８】
第２モード（図２１〜図２５）：
第２モードは、各セグメント３０の代表値に基づいてトレンドの基準モデル線を推定し、基準モデル線と各セグメント３０の代表値との差分が所定のしきい値よりも大きいか小さいかによって欠陥判定を行う。この第２モードにおいて、上述した第１モードと同様にウインドウ２０及びセグメント３０を使用する。このウインドウ２０及びセグメント３０は、上記第１モードと同じであることから、その説明を省略する。
【００７９】
図２１は第２モードの処理手順を説明するためのフローチャートである。図２１を参照して、距離画像（高さ画像）の取得（Ｓ２１）は第１モード（図８のＳ１）と同じである。次のステップＳ２２で各セグメント３０の代表値を取得する。次のステップＳ２３で基準モデル線の推定を行う。
【００８０】
ワークＷＰのトレンド方向における表面形状が直線、円など規定の形状であるときには、ユーザに選択させるのがよい。
【００８１】
直線の基準モデル線：
第１モードで説明した「平面」と同じ手法で求めればよい。
【００８２】
円の基準モデル線：
第１モードで説明した「近似円」と同じ手法で求めればよい。
【００８３】
自由曲線の基準モデル線：
ワークＷＰの表面形状が規定式に当て嵌めることのできる場合には、上記の直線や円と同様に、ｘ、ｚを用いた２変数の多項式を規定し、この式に基づいて最小二乗法を適用して自由曲線を求めればよい。その具体的な手法は、前記特許文献２（特開２００９−１８６３３８号公報）に詳しく説明されていることから、この特許文献２を、本明細書に援用することで、その説明を省略する。
【００８４】
なお、ワークＷＰの表面形状が規定式で表現できない場合には、各セグメント３０の代表値（高さデータ）を平準化したデータを生成し、この平準化したデータと元データとの差分によって周囲（トレンド）と異なる高さの箇所を検出すればよい。
【００８５】
図２１のフローチャートに戻って、次のステップＳ２４では、基準モデル線を基準にしたときに、各セグメント３０の代表値の差分値(差分データ)を求める。つまり基準モデル線をトレンド高さデータと言い直したときに、このトレンド高さデータと各代表値との差分を計算する。
【００８６】
次のステップＳ２５では、各差分データと、ユーザが予め設定したしきい値とを比較して、しきい値を超えた差分データの部位を欠陥として検出する。この欠陥部位が幾つあるか、つまりしきい値を超えた差分データが幾つあるかによって、その数が所定の数よりも多い場合に欠陥判定を行うようにしてもよい。また、欠陥部位が連続して幾つあるか、つまりしきい値を超えた差分データが連続して幾つあるかによって、その数が所定の数よりも多い場合に欠陥判定を行うようにしてもよい。
【００８７】
次のステップＳ２６では、上記ステップＳ２５で検出された欠陥情報に基づいて「欠陥有り」又は「欠陥無し」の判定を行い、この判定結果が出力される。
【００８８】
第２モードでの欠陥判定の具体例を次に説明する。図２２の(I)は、図９の(IV)に対応している。すなわち、図９の(I)のワークＷＰつまり電子部品の撮像画像の端子４０の各々にセグメント３０を設定し、各セグメント３０の代表値として平均高さを指定した場合の各セグメント３０の代表値をプロットしたグラフが図２２の(I)である。
【００８９】
図２１のステップＳ２３で直線の基準モデル線を推定して、上記代表値に基づいて基準モデル線を生成したのが図２２の(II)である。図２２の(II)の破線が基準モデル線５０である。図２２の(III)は、基準モデル線５０との各代表値の差分データを求めていることを説明するための図である（図２１のステップＳ２４参照）。そして、この差分データが所定のしきい値を超えているか否かによって欠陥の検出が行われる。
【００９０】
図２３の(I)は、図１３の(I)に対応している。すなわち、図１０に示す断面円弧状のワークＷＰの撮像画像（高さ画像）にセグメント３０を設定し(図１２)、各セグメント３０の代表値である「平均高さ」をプロットしたグラフが図２３の(I)である。次に、円の基準モデル線を推定して、上記代表値に基づいて生成した基準モデル線５０が図２３の(II)の破線である。図２３の(III)は、円弧の基準モデル線５０との各代表値の差分データを求めていることを説明するための図である。そして、この差分データが所定のしきい値を超えているか否かによって欠陥の検出が行われる。
【００９１】
図２４の(I)は図１５の缶の底の円形リング状の凹部にウインドウ２０を設定し、このウインドウ２０にセグメント３０を配列させた状態を説明するための図である。各セグメント３０の代表値である「平均高さ」をプロットしたグラフが図２４の(II)である。缶の底の凹部のトレンド方向の表面形状が自由曲線である場合、各セグメント３０の代表値（平均高さ）に基づいて生成した基準モデル線５０が図２４の(III) の破線である。図２４の(IV)は、円弧の基準モデル線５０との各代表値の差分データを求めていることを説明するための図である。そして、この差分データが所定のしきい値を超えているか否かによって欠陥の検出が行われる。図２４の(IV)からトレンド（全体の傾向）とは異なる局部的な変化だけを欠陥として検出できるのが分かるであろう。
【００９２】
図２５の(I)は図１９に対応している。すなわち、溶接部位（図１６）の撮像画像（高さ画像）に設定した各セグメント３０の代表値である最大高さをプロットしたグラフである。各セグメント３０の代表値（最大高さ）に基づいて生成した自由曲線の基準モデル線５０（破線）が図２５の(II)である。図２５の(III)は、この自由曲線の基準モデル線５０との各代表値の差分データを求めていることを説明するための図である。そして、この差分データが所定のしきい値を超えているか否かによって欠陥の検出が行われる。
【００９３】
溶接部位（図１６）のように形状が不定で且つ蛇行する場合でも各セグメント３０の最大高さの位置に追従して基準モデル線５０を推定するためのデータを取得することができる。そして、各セグメント３０の最大高さに対して、自由曲線の基準モデル線５０との対比で求めた差分データによって欠陥検出を行っているため、周囲との関係で穏やかな差分の増減を実質的に無視したなかで、急峻に変化する欠陥部位だけを検出することができる。
【００９４】
ゼロ面の設定について（図２６〜図３０）：
前述した具体的な適用例で説明すれば、図１６に図示の溶接部位が計測対象物である場合、この溶接部位の基礎となる金属板が完全な平面であれば問題はないが、金属板が、うねっていたり、反っていたり、丸みを帯びていたり様々である。このような場合、計測対象物の高さは、基礎となる金属板の反りなどの影響を受ける。換言すれば、計測対象物の高さが、計測対象物に関連した面の形状によって影響を受ける場合には、この影響を排除する必要がある。
【００９５】
計測対象物の高さに影響を及ぼす面の傾斜、反り、丸み、ウエーブなどの外乱を排除するためにゼロ面を計測対象物の高さに応じて設定することが可能である。ゼロ面は、例えば「平面基準」、「平均高さ基準」、「リアルタイム３点指定」が含まれる。この３つから任意の一つをユーザに指定させればよい。「平面基準」、「平均高さ基準」、「リアルタイム３点指定」のいずれかをユーザが指定したときに、又は「高さの基準に基づくモード」を選択することにより形状検査装置１は「高さの基準」に基づく計測モードに入る。
【００９６】
また、計測対象物の高さに影響を及ぼす面の高さ情報を取得するために、上述したセグメント３０とは別にゼロ面を求めるのに必要とされる情報を入手するための第２の計測領域を設定する。この第２の計測領域は、表示部６に表示されている撮像画像に対してユーザが領域指定することにより設定するのがよい。
【００９７】
複数のセグメント３０は表示部６の表示画像のうち、高さを計測したい部分に設定される。計測対象物の脇、例えばセグメント３０の脇に第２の計測領域を設定するのが一般的であろう。この第２の計測領域は、複数のセグメント３０の配列方向に連続して延びていてもよいし、各セグメント３０毎であってもよい。
【００９８】
平面基準：
第２の計測領域内における高さ画像（複数の画素）の三次元情報で計算した最小二乗平面をゼロ面とする。
【００９９】
平均高さ基準：
第２の計測領域内における高さ画像のＺ値の平均値をＺ切片とする且つ撮像系の基準面に平行な平面をゼロ面とする。
【０１００】
リアルタイム３点指定：
ユーザが指定した３点の画素の三次元情報で計算した平面の高さを基準とする。勿論、ユーザに３点よりも多い複数の点を指定させ、これらの点の画素の三次元情報で平面を求めるようにしてもよい。この場合は、その複数の点から最小二乗平面を算出し、ゼロ面とする。
【０１０１】
図２６は、ユーザが高さの基準を指定せずに、撮像系の基準面をゼロ面としたときの溶接部位（図１６）の高さ画像を示す。図２６の画像は実際はカラー画像である。溶接部分の回りの背景が、上から下に向けて、順に、赤、オレンジ、黄色、黄緑、緑、青緑、青、紺である。これらの色は高さの違いを意味している。撮像画像（溶接部分）の右方に見られる上下に延びるグラフは溶接部分の各所の高さを示す。左は「高い」、右は「低い」である。つまり、撮像画像は、上が相対的に高く、下方に向かうに従って相対的に低い。
【０１０２】
図２７は、ユーザが「平面基準」を指定したときの溶接部位（図１６）の高さ画像である。上下に配列した横長の枠がセグメント３０である。セグメント３０は上下方向に並んで数多く設定されているのが分かるであろう。高さ画像の左端部に上下(セグメント３０の配列方向)に延びる枠が見られる。この枠が上述した第２の計測領域である。この上下に延びる第２の計測領域内における高さ画像（複数の画素）の三次元情報で計算した最小二乗平面が「平面基準」である。この平面基準によって各セグメント３０の高さ情報が補正される。図２７の画像は実際はカラー画像である。全体的に、溶接部分の回りの背景は青色、緑であり、溶接部分に赤、黄色、オレンジなどの部位が見られる。
【０１０３】
図２８は「平面基準」のときの計測結果を示す。撮像画像（溶接部分）の右方に見られる上下に延びるグラフは溶接部分の各所の高さを示す。溶接部分で低い部分が明確になっているのが分かるであろう。
【０１０４】
上記図２７、図２８を参照した「高さ基準」に基づく計測では、セグメント３０の配列方向に大きく延びる第２の計測領域を設定した。これにより、検査対象物が載置された基準面（本実施例では溶接部位を含む鉄板）が斜めに傾いていても、その影響をキャンセルしてセグメント３０内の検査対象部位の高さ情報を正しく計測することができる。
【０１０５】
本実施例では第２の計測領域から「平面基準」を選択していることから、検査対象物の基準面にうねりや丸みが存在している場合は、実際の検査対象物の基準面を平面からなるゼロ面では近似することができないため正しく計測できないことがある。したがって、図２８の基準面を示す背景部分には高低差の違いを示すわずかな色の違いが存在してしまう。
【０１０６】
図２９、図３０は、各セグメント３０毎に第２の計測領域を設定した例を示す。この図２９、図３０は上記の溶接部位（図１６）の高さ画像である。図２９の上に見られる横長の枠がセグメント３０である。このセグメント３０の左に枠が見られるが、この左側に位置する枠が第２の計測領域である。比較的小さな第２の計測領域を指定したときには、主に、「平面基準」又は「平均高さ基準」が選択される。この図２９、図３０は「平面基準」が指定されたときの例を示す。
【０１０７】
図３０は「平面基準」のときの計測結果を示す。撮像画像（溶接部分）の右方に見られる上下に延びるグラフは溶接部分の各所の高さを示す。溶接部分で低い部分が明確になっているのが分かるであろう。
【０１０８】
実施例では、各セグメントに適用されるゼロ面が、各セグメントに対応する小領域内の三次元情報で計算した最小二乗平面から求められる。すなわち、各セグメントの近傍に設けられた小領域から求められた最小二乗平面をゼロ面として各セグメントの高さ情報を算出している。これにより、検査対象物の実際の面に追従したゼロ面設定が可能となり、図２８の実施例と比較すると検査対象物の実際の面にうねりや丸みが存在していた場合でも、これらの影響をキャンセルし、高さ情報を正しく計測することができる。
【０１０９】
本実施例では各セグメントに適用されるゼロ面を「平面基準」としたが「平均高さ基準」とすることも可能である。
【０１１０】
各セグメントに対応する小領域の形状、サイズ、位置は、各小領域で個別に設定することも可能である。これにより、例えば検査対象となる溶接部位の位置が２次元平面上で非直線的に変化している場合など、小領域の位置を直線的に配置することが困難である場合、実際の溶接部位の位置や形状に合わせて各小領域を配置することが可能になる。
【０１１１】
また、各小領域の位置は各セグメントの中心位置（セグメント並び方向に対して直交する方向の中心）に対してオフセット量を調整することにより設定できる。各小領域は検査対象部位の基準面を設定するものであるため、検査対象部位が小領域に含まれないようにユーザは実際の検査対象部位の幅に応じてオフセット量を調整する。なお、オフセット量を共通に設定することで、全ての小領域の位置を一括で設定できる。この際、各小領域の形状やサイズも一括で設定できることは言うまでもない。
【０１１２】
図２１のフローチャート（ステップＳ２５）で前述したように、欠陥部位が幾つあるか、つまり各セグメントの代表値がしきい値を超えたセグメント３０が幾つあるかによって、その数が所定の数（ＮＧセグメント数）よりも多い場合に欠陥判定を行うようにしてもよい。これにより、突発的なノイズにより異常出力することなく、全体としてしきい値を超えたセグメント数が多い場合に異常として出力することができる。ＮＧセグメント数はユーザにより設定することが可能である。
【０１１３】
また、欠陥部位（しきい値を超えた差分データのセグメント３０）が連続して幾つあるか、つまり代表値がしきい値を超えたセグメント３０が連続して幾つあるかによって、その数が所定の数よりも多い場合に欠陥判定を行うようにしてもよい。例えば、溶接部の盛り量の異常を検出したい場合、突発的に盛り量が大きくなった部分は異常として判定せずに、盛り量がある一定区間連続的に足りない場合に異常として判定したい場合がある。このような場合、各セグメントの代表値（例えば最大値）がしきい値を連続的に下回った回数をカウントし、カウントがある一定数以上（連続ＮＧセグメント数）に達した場合に異常を出力する。連続ＮＧセグメント数はユーザにより設定することが可能である。
【０１１４】
以上、本発明の実施例を説明したが、この実施例は本発明の具体例の例示に過ぎない。例えば、代表値として「平均値」「最大値」「最小値」を例示的に挙げたが、後に説明する変曲点を代表値として採用してもよい。画素はその画像情報として本来的に位置（座標）情報を持っている。変曲点、最大値、最小値を代表値として指定したときには、この変曲点、最大値又は最小値を持つ画素を特定できる。つまり、変曲点、最大値又は最小値を示す画素の位置情報を取得することができる。
【０１１５】
他方、平均値では特定の画素を特定できない。しかし、平均値を代表値として指定したときには、特定の平均値を示すセグメント３０を特定できる。そして、セグメント３０の座標によってワークＷＰの特定部位を特定できる。
【０１１６】
図３１は、変曲点のトレンドデータつまり変曲点の傾向を示す形状を計測する例を説明するための図である。すなわち、図３１は、ワークＷＰのプロファイルつまりトレンド方向を横断する表面形状に変曲点Ｉｐを有する場合、この変曲点Ｉｐのトレンド方向の傾向を示すトレンドデータを追跡して、このトレンドデータを取得する例を説明するための図である。図３１の左は各セグメント３０のトレンド方向を横断する表面形状を示す。
【０１１７】
変曲点には、山形の変曲点（上に向かって凸）、谷形の変曲点（下に向かって凸）がある。また、変曲点の折れ曲がり度合い、同じ例えば山形の変曲点でもワークＷＰのプロファイルに複数の山形の変曲点が存在することもある。これらのパラメータは全て代表値として採用することが可能である。例えば左から２番目の山形の変曲点を代表値として採用することも可能である。
【０１１８】
図３２は、所望の変曲点を計測する場合の一つの手法を例示的に説明するための図である。図３２の(I)は開始位置のセグメント３０のプロファイルを示し、その下の第２番目のセグメント３０のプロファイルを図３２の(II)に示す。
【０１１９】
表示部６に表示されている第１番目のセグメント３０において、どの変曲点を取得するか、その範囲又は範囲の中心を指定する（図３２の(I)）。次の第２番目のセグメント３０では、第１番目のセグメント３０の変曲点Ｉｐ(1)を中心として、先の第１番目のセグメント３０でユーザが指定した範囲の変曲点Ｉｐ(2)を取得する。以下、同じように一つ前のセグメント３０の変曲点Ｉｐ(n)を中心として、ユーザが指定した範囲の変曲点Ｉｐ(n)を取得する。この手法を採用することにより、所望の変曲点を取得するために必要とされるパラメータを設定することなく、ワークＷＰのプロファイルにおいて所望の変曲点を取得することができる。
【符号の説明】
【０１２０】
１  形状検査装置
４  コントローラ部
６  表示部（液晶モニタ）
８  入力手段
２０  ウインドウ
３０  セグメント
Ｗ  セグメントの幅
Ｐｔ  隣接するセグメント間の距離（ピッチ）
５０  基準モデル線
ＷＰ  ワーク（検査対象物）
【図１】
2015169473.tif 000003
【図２】
2015169473.tif 000004
【図３】
2015169473.tif 000005
【図４】
2015169473.tif 000006
【図５】
2015169473.tif 000007
【図６】
2015169473.tif 000008
【図７】
2015169473.tif 000009
【図８】
2015169473.tif 000010
【図９】
2015169473.tif 000011
【図１０】
2015169473.tif 000012
【図１３】
2015169473.tif 000013
【図１６】
2015169473.tif 000014
【図１９】
2015169473.tif 000015
【図２０】
2015169473.tif 000016
【図２１】
2015169473.tif 000017
【図２２】
2015169473.tif 000018
【図２３】
2015169473.tif 000019
【図２４】
2015169473.tif 000020
【図２５】
2015169473.tif 000021
【図３１】
2015169473.tif 000022
【図３２】
2015169473.tif 000023
【図１１】
2015169473.tif 000024
【図１２】
2015169473.tif 000025
【図１４】
2015169473.tif 000026
【図１５】
2015169473.tif 000027
【図１７】
2015169473.tif 000028
【図１８】
2015169473.tif 000029
【図２６】
2015169473.tif 000030
【図２７】
2015169473.tif 000031
【図２８】
2015169473.tif 000032
【図２９】
2015169473.tif 000033
【図３０】
2015169473.tif 000034