(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-04
(45)【発行日】2022-10-13
(54)【発明の名称】検査条件作成支援装置、検査条件作成支援方法、検査条件作成支援プログラムおよび記録媒体
(51)【国際特許分類】
G01N 21/88 20060101AFI20221005BHJP
G01B 11/25 20060101ALI20221005BHJP
G06T 1/00 20060101ALI20221005BHJP
G06T 5/30 20060101ALI20221005BHJP
【FI】
G01N21/88 J
G01B11/25 H
G06T1/00 315
G06T5/30
(21)【出願番号】P 2019047028
(22)【出願日】2019-03-14
【審査請求日】2021-12-23
(73)【特許権者】
【識別番号】000207551
【氏名又は名称】株式会社SCREENホールディングス
(74)【代理人】
【識別番号】100105935
【氏名又は名称】振角 正一
(74)【代理人】
【識別番号】100136836
【氏名又は名称】大西 一正
(72)【発明者】
【氏名】谷口 和隆
【審査官】井上 徹
(56)【参考文献】
【文献】特開2012-132754(JP,A)
【文献】特開2018-28476(JP,A)
【文献】特開2002-228592(JP,A)
【文献】特開2013-29350(JP,A)
【文献】国際公開第2018/021210(WO,A1)
【文献】国際公開第2016/117104(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G01N 21/84-21/958
G01B 11/00-11/30
G06T 1/00-1/40、3/00-5/50、7/00
G06T 19/00-19/20
JSTPlus/JMEDPlus/JST7580(JDreamIII)
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
検査対象ワークの凹凸度の異なる領域に応じた、当該検査対象ワークに対する検査条件の作成を支援する検査条件作成支援装置であって、
良品ワークを撮像した距離画像に含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与した凹凸度マップのうちから、前記凹凸度の違いに基づき区分けされる第1検査対象領域と第2検査対象領域とをユーザが識別可能に表示するディスプレイと、
前記第1検査対象領域における欠陥の有無を検査するための第1検査閾値と、前記第2検査対象領域における欠陥の有無を検査するための前記第1検査閾値と異なる第2検査閾値とを個別にユーザが設定可能な入力操作部と
を備える検査条件作成支援装置。
【請求項2】
前記ディスプレイが前記凹凸度マップのうちから前記第1検査対象領域と前記第1検査対象領域以外の領域とをユーザにより識別可能に表示した状態で、ユーザが所定の設定操作を前記入力操作部に対して行うと、前記第1検査閾値が設定され、
前記第1検査閾値の設定後に、前記ディスプレイが前記凹凸度マップのうちから、前記第2検査対象領域と、前記第2検査対象領域以外の領域とをユーザにより識別可能に表示した状態で、ユーザが前記設定操作を前記入力操作部に対して行うと、前記第2検査閾値が設定される請求項1に記載の検査条件作成支援装置。
【請求項3】
前記ディスプレイが前記第1検査対象領域と前記第2検査対象領域とを表示した状態で、
ユーザが前記入力操作部に対する選択操作により前記第1検査対象領域を選択しつつ、ユーザが所定の設定操作を前記入力操作部に対して行うと、前記第1検査閾値が設定され、
ユーザが前記入力操作部に対する選択操作により前記第2検査対象領域を選択しつつ、ユーザが前記設定操作を前記入力操作部に対して行うと、前記第2検査閾値が設定される請求項1に記載の検査条件作成支援装置。
【請求項4】
前記入力操作部は、基準凹凸度の入力操作を受け付け、
前記ディスプレイは、前記第1検査対象領域および前記第2検査対象領域のうち一方の検査対象領域を対象とした状態で前記基準凹凸度が変更されると、前記基準凹凸度未満の凹凸度を有する前記画素で構成される低凹凸領域を前記凹凸度マップから抽出した結果に応じて前記一方の検査対象領域を表示することで、前記一方の検査対象領域の表示を変更する請求項1ないし3のいずれか一項に記載の検査条件作成支援装置。
【請求項5】
前記距離画像に基づき前記凹凸度マップを作成する演算部をさらに備える請求項1ないし4のいずれか一項に記載の検査条件作成支援装置。
【請求項6】
前記演算部は、前記複数の画素から選択した対象画素を中心として前記所定範囲を設定し、前記複数の画素のうち前記所定範囲内において前記対象画素の周囲に存在する複数の周囲画素のそれぞれと前記対象画素との距離の差の絶対値の中央値を前記凹凸度として前記対象画素に付与する演算を、前記複数の画素のうちで前記対象画素を変更しつつ実行することで前記凹凸度マップを作成する請求項5に記載の検査条件作成支援装置。
【請求項7】
検査対象ワークの凹凸度の異なる領域に応じた、当該検査対象ワークに対する検査条件の作成を支援する検査条件作成支援方法であって、
良品ワークを撮像した距離画像に含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与した凹凸度マップのうちから、前記凹凸度の違いに基づき区分けされる第1検査対象領域と第2検査対象領域とをユーザが識別可能にディスプレイに表示する工程と、
前記第1検査対象領域における欠陥の有無を検査するための第1検査閾値と、前記第2検査対象領域における欠陥の有無を検査するための前記第1検査閾値と異なる第2検査閾値とが個別にユーザにより設定される工程と
を備える検査条件作成支援方法。
【請求項8】
検査対象ワークの凹凸度の異なる領域に応じた、当該検査対象ワークに対する検査条件の作成を支援する検査条件作成支援プログラムであって、
良品ワークを撮像した距離画像に含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与した凹凸度マップのうちから、前記凹凸度の違いに基づき区分けされる第1検査対象領域と第2検査対象領域とをユーザが識別可能にディスプレイに表示する工程と、
前記第1検査対象領域における欠陥の有無を検査するための第1検査閾値と、前記第2検査対象領域における欠陥の有無を検査するための前記第1検査閾値と異なる第2検査閾値とが個別にユーザにより設定される工程と
を、コンピューターに実行させる検査条件作成支援プログラム。
【請求項9】
請求項8に記載の検査条件作成支援プログラムをコンピューターにより読み出し可能に記録する記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、対象領域を外観検査するにあたり、外観検査に用いる閾値を対象領域の凹凸度に応じて設定する技術に関する。
【背景技術】
【0002】
特許文献1には、対象物の外観を検査する外観検査装置が記載されている。かかる外観検査装置は、良品の画像と対象物の画像との差分と、検査閾値とを比較することで、対象物における打痕等の形状欠陥を検出する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、外観検査の対象物としては種々のものが想定でき、鍛造等によって加工され、さらにその一部が切削等によって加工された対象物に対して外観検査を行う場合がある。このような場合、鍛造等による凹凸がそのまま表れた領域と、切削等により平滑に仕上げられた領域とを含む。このような対象物に対しては、各領域の凹凸度が違うために、各領域の凹凸度に応じた適切な検査閾値を設定できず、外観検査を的確に実行することが難しかった。
【0005】
この発明は上記課題に鑑みなされたものであり、外観検査の対象とする各領域の凹凸度の違いに応じて適切な検査閾値を設定することを可能とする技術の提供を目的とする。
【課題を解決するための手段】
【0006】
本発明に係る検査条件作成支援装置は、良品ワークを撮像した距離画像に含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与した凹凸度マップのうちから、凹凸度の違いに基づき区分けされる第1検査対象領域と第2検査対象領域とをユーザが識別可能に表示するディスプレイと、第1検査対象領域における欠陥の有無を検査するための第1検査閾値と、第2検査対象領域における欠陥の有無を検査するための第1検査閾値と異なる第2検査閾値とを個別にユーザが設定可能な入力操作部とを備える。
【0007】
本発明に係る検査条件作成支援方法は、良品ワークを撮像した距離画像に含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与した凹凸度マップのうちから、凹凸度の違いに基づき区分けされる第1検査対象領域と第2検査対象領域とをユーザが識別可能にディスプレイに表示する工程と、第1検査対象領域における欠陥の有無を検査するための第1検査閾値と、第2検査対象領域における欠陥の有無を検査するための第1検査閾値と異なる第2検査閾値とが個別にユーザにより設定される工程とを備える。
【0008】
本発明に係る検査条件作成支援プログラムは、良品ワークを撮像した距離画像に含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与した凹凸度マップのうちから、凹凸度の違いに基づき区分けされる第1検査対象領域と第2検査対象領域とをユーザが識別可能にディスプレイに表示する工程と、第1検査対象領域における欠陥の有無を検査するための第1検査閾値と、第2検査対象領域における欠陥の有無を検査するための第1検査閾値と異なる第2検査閾値とが個別にユーザにより設定される工程とを、コンピューターに実行させる。
【0009】
本発明に係る記録媒体は、上記の検査条件作成支援プログラムをコンピューターにより読み出し可能に記録する。
【0010】
このように構成された本発明(検査条件作成支援装置、検査条件作成支援方法、検査条件作成支援プログラムおよび記録媒体)では、良品ワークを撮像した距離画像に含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与した凹凸度マップが用いられる。つまり、凹凸度マップのうちから、凹凸度の違いに基づき区分けされる第1検査対象領域と第2検査対象領域とがユーザにより識別可能にディスプレイに表示される。そして、ユーザは、第1検査対象領域における欠陥の有無を検査するための第1検査閾値と、第2検査対象領域における欠陥の有無を検査するための第1検査閾値と異なる第2検査閾値とを個別に設定可能である。したがって、ユーザは、第1検査対象領域をディスプレイで確認しながら、第1検査対象領域の凹凸度に応じた第1検査閾値を設定できるとともに、第2検査対象領域をディスプレイで確認しながら、第2検査対象領域の凹凸度に応じた第2検査閾値を設定できる。こうして、外観検査の対象とする各領域の凹凸度の違いに応じて適切な検査閾値を設定することが可能となっている。
【0011】
また、ディスプレイが凹凸度マップのうちから第1検査対象領域と第1検査対象領域以外の領域とをユーザにより識別可能に表示した状態で、ユーザが所定の設定操作を入力操作部に対して行うと、第1検査閾値が設定され、第1検査閾値の設定後に、ディスプレイが凹凸度マップのうちから、第2検査対象領域と、第2検査対象領域以外の領域とをユーザにより識別可能に表示した状態で、ユーザが設定操作を入力操作部に対して行うと、第2検査閾値が設定されるように、検査条件作成支援装置を構成しても良い。かかる構成では、第1検査閾値の設定と第2検査閾値の設定とを同様の設定操作により実行でき、ユーザは簡単な操作によってこれらを設定できる。
【0012】
また、ディスプレイが第1検査対象領域と第2検査対象領域とを表示した状態で、ユーザが入力操作部に対する選択操作により第1検査対象領域を選択しつつ、ユーザが所定の設定操作を入力操作部に対して行うと、第1検査閾値が設定され、ユーザが入力操作部に対する選択操作により第2検査対象領域を選択しつつ、ユーザが設定操作を入力操作部に対して行うと、第2検査閾値が設定されるように、検査条件作成支援装置を構成しても良い。かかる構成では、第1検査閾値の設定と第2検査閾値の設定とを同様の設定操作により実行でき、ユーザは簡単な操作によってこれらを設定できる。
【0013】
入力操作部は、基準凹凸度の入力操作を受け付け、ディスプレイは、第1検査対象領域および第2検査対象領域のうち一方の検査対象領域を対象とした状態で基準凹凸度が変更されると、基準凹凸度未満の凹凸度を有する画素で構成される低凹凸領域を凹凸度マップから抽出した結果に応じて一方の検査対象領域を表示することで、一方の検査対象領域の表示を変更するように、検査条件作成支援装置を構成しても良い。かかる構成では、ユーザは、基準凹凸度を変更することで、これに伴って変化する検査対象領域をディスプレイで確認しつつ、この検査対象領域を最適化する操作を、第1検査対象領域および第2検査対象領域のそれぞれに実行できる。その結果、それぞれ最適化された第1検査対象領域および第2検査対象領域に対して、第1検査閾値および第2検査閾値を設定することができる。
【0014】
また、距離画像に基づき凹凸度マップを作成する演算部をさらに備えるように、検査条件作成支援装置を構成してもよい。かかる構成では、距離画像を検査条件作成支援装置に入力することで、凹凸度マップを演算部により自動作成することができる。
【0015】
また、演算部は、複数の画素から選択した対象画素を中心として所定範囲を設定し、複数の画素のうち所定範囲内において対象画素の周囲に存在する複数の周囲画素のそれぞれと対象画素との距離の差の絶対値の中央値を凹凸度として対象画素に付与する演算を、複数の画素のうちで対象画素を変更しつつ実行することで凹凸度マップを作成するように、検査条件作成支援装置を構成してもよい。このような演算により凹凸度マップを作成することで、距離画像に含まれる凹凸を適切に表す凹凸度マップを得ることができる。
【発明の効果】
【0016】
以上のように、本発明によれば、外観検査の対象とする各領域の凹凸度の違いに応じて適切な検査閾値を設定することが可能となる。
【図面の簡単な説明】
【0017】
【
図1】本発明に係る検査条件作成支援装置として機能するコンピューターを備えた外観検査システムの一例を示すブロック図。
【
図2】
図1の検査システムが備える外観検査装置を模式的に示す図。
【
図3】凹凸度マップの作成手順の一例を示すフローチャート。
【
図4】
図3のフローチャートに従って実行される演算処理の内容を模式的に示す図。
【
図5】検査条件の設定手順の一例を示すフローチャート。
【
図6】検査条件の設定のためにディスプレイに表示される画面の一例を示す図。
【
図7】
図5のフローチャートに従って実行される演算処理の内容を模式的に示す図。
【
図8】
図5のフローチャートに従って実行される演算処理の内容を模式的に示す図。
【
図9】外観検査装置で実行される外観検査の一例を示すフローチャート。
【
図10】検査条件の設定手順の変形例を示すフローチャート。
【
図11】
図10のフローチャートで実行される検査閾値の設定手順を示すフローチャート。
【
図12】検査条件の設定のためにディスプレイに表示される画面の変形例を示す図。
【発明を実施するための形態】
【0018】
図1は本発明に係る検査条件作成支援装置として機能するコンピューターを備えた外観検査システムの一例を示すブロック図であり、
図2は
図1の検査システムが備える外観検査装置を模式的に示す図である。
図2および以下の図では、Z軸方向を鉛直方向とし、X軸方向およびY軸方向をそれぞれ水平方向とするXYZ直交座標系を適宜示す。
図1に示すように、検査システム1は、検査対象ワークW(
図2)の外観を検査する外観検査装置2と、外観検査装置2における外観検査の検査条件の作成を支援するコンピューター3とを備える。
【0019】
外観検査装置2は、外観検査に必要な制御を実行するコントローラ21を備える。このコントローラ21は、演算部211、記憶部212および通信部213を有する。演算部211は、CPU(Central Processing Unit)およびRAM(Random Access Memory)で構成されたプロセッサであり、外観検査に必要となる演算機能を担う。記憶部212はHDD(Hard Disk Drive)であり、外観検査の結果等を記憶する。通信部213は、コンピューター3等の外部装置との通信機能を担う。
【0020】
図2に示すように、外観検査装置2は、検査対象ワークWを支持するテーブル22を備える。検査対象ワークWが鉄等を含んで磁力により保持できる場合には、テーブル22として電磁石テーブルを用いることができる。また、検査対象ワークWが樹脂等の磁力により保持できないものである場合には、エアー吸着あるいはチャック機構によって検査対象ワークWを支持するテーブルを支持テーブル2として用いることができる。
【0021】
さらに、外観検査装置2は、テーブル22上の検査対象ワークWの三次元形状を計測して距離画像Iを取得する撮像ユニット23を備える。撮像ユニット23は、カメラ24とプロジェクタ25とを有する。カメラ24は、撮像範囲F(換言すれば、視野)内からそのレンズ241に入射した光を固体撮像素子に結像することで、撮像範囲Fの画像を撮像する。プロジェクタ25は、光源からの光をDMD(Digital Mirror Device)等で変調することで、撮像範囲Fに対して光のパターンを射出する。
【0022】
そして、コントローラ21は、撮像ユニット23を用いて、検査対象ワークWの表面の三次元形状を計測する。具体的には、コントローラ21の演算部211は、プロジェクタ25からテーブル22上の検査対象ワークWへ向けてパターンを照射しつつ撮像範囲F内の検査対象ワークWをカメラ24により撮像することで、パターンが照射された検査対象ワークWを撮像してパターン画像を取得する。かかるパターン画像には、検査対象ワークWの表面の三次元形状に応じて変形したパターンが含まれる。
【0023】
演算部211はパターン画像Mに基づき、検査対象ワークWの三次元形状を示す距離画像Iを生成し、記憶部212に保存する。なお、パターンを照射しつつ検査対象ワークWを撮像した画像に基づき検査対象ワークWの三次元形状を計測する具体的手法は、位相シフト法および空間コード化法等の種々の方法を用いることができる。
【0024】
この距離画像Iは、カメラ24から検査対象ワークWの表面までのZ軸方向における距離を、X軸方向およびY軸方向に(すなわち、XY平面で)マトリックス状に並ぶ複数の画素のそれぞれについて示す点群データであり、各画素に付与された画素値は、当該画素におけるカメラ24から検査対象ワークWまでのZ軸方向における距離を示す。換言すれば、距離画像Iは、複数の画素それぞれにおける検査対象ワークWの表面のZ軸方向における位置(ここの例では、高さに相当)を示す。
【0025】
また、記憶部212は、検査対象ワークWと同種の良品ワークG(すなわち、検査対象ワークWの良品)の三次元形状を撮像ユニット23により計測することで予め取得した距離画像Iを記憶する。演算部211は、検査対象ワークWの距離画像Iと、良品ワークGの距離画像Iとの位置を重ね合わせて、これらの距離画像Iの差分(すなわち、位置ずれ)を取る。そして、演算部211は、所定の検査閾値以上の差分を有する箇所が無い場合には、検査対象ワークWを良品と判定し、検査閾値以上の差分を有する箇所が在る場合には、検査対象ワークWが不良品であると判定する。
【0026】
図1に示すように、コンピューター3は、演算部31、記憶部32、ディスプレイ33、入力機器34および通信部35を備え、検査対象ワークWの表面をその凹凸度に応じた領域毎に区別して、各領域に適した検査条件を作成する作業を支援する。演算部31は、CPUおよびRAMで構成されたプロセッサであり、検査条件作成支援に必要となる演算機能を担う。記憶部32はHDDであり、検査条件作成支援に伴って生成されたデータ等を記憶する。ディスプレイ33は、画像をユーザに対して表示する。入力機器34はキーボードやマウスで構成される。なお、タッチパネルディスプレイ等により、ディスプレイ33と入力機器34とを一体的に構成してもよい。通信部35は、外観検査装置2等の外部装置との通信機能を担い、例えば外観検査装置2で取得された距離画像Iを、外観検査装置2の通信部213を介して受信する。
【0027】
演算部31は、記憶部32、ディスプレイ33、入力機器34および通信部35を検査条件作成支援プログラム4に基づき制御することで、検査条件の作成支援を実行する。検査条件作成支援プログラム4は、例えばUSB(Universal Serial Bus)メモリ等の記録媒体5に、コンピューター3により読み出し可能に記録された状態で提供され、記憶部32にインストールされる。続いては、検査条件作成支援について詳述する。
【0028】
コンピューター3の演算部31は、検査条件作成支援を実行するにあたり、通信部35を介して外観検査装置2から取得した距離画像Iに基づき、凹凸度マップMを作成して記憶部32に保存する。特に、ここで利用される距離画像Iは、良品ワークGの外観を外観検査装置2により計測して取得されたものであり、凹凸度マップMは、良品ワークGを撮像した距離画像Iに含まれる複数の画素のそれぞれに対して、当該画素を含む所定範囲の凹凸度を付与したものである。
【0029】
図3は凹凸度マップの作成手順の一例を示すフローチャートであり、
図4は
図3のフローチャートに従って実行される演算処理の内容を模式的に示す図である。
図3のフローチャートは、演算部31による演算によって実行される。
図4に示されるように、距離画像Iは、X軸方向およびY軸方向にマトリックス状に並ぶ複数の画素Pのそれぞれについて、当該画素Pの画素値(すなわち、高さ)を示す。
【0030】
ステップS101では、距離画像Iを構成する複数の画素Pのうちから、一の対象画素Poが選択される。ステップS102では、対象画素Poを中心とする所定範囲Aが距離画像Iに対して設定される。つまり、所定範囲Aの幾何中心は対象画素Poに一致する。なお、
図4の例では、所定範囲Aは、X軸方向に平行な2辺と、Y軸方向に平行な2辺で構成される正方形であるが、所定範囲Aの形状はこれに限られず、長方形、平行四辺形、菱形あるいは円形であってもよい。
【0031】
ステップS103では、所定範囲A内において対象画素Poの周囲に存在する複数の周囲画素Ppそれぞれにおける高さ(距離)と、対象画素Poにおける高さ(距離)との差分が算出される。なお、所定範囲Aに含まれる対象画素Po以外の全ての画素Pが周囲画素Ppとして選択されるのではなく、その一部が周囲画素Ppとして選択される。つまり、X軸方向およびY軸方向のそれぞれに2画素P以上(ここの例では2画素P)の格子間隔を空けて対象画素Poの周囲で格子状に並ぶ画素Pが周囲画素Ppに選択される。その結果、24個の周囲画素Ppが選択される。そして、周囲画素Ppの高さZpと対象画素Poの高さZoとの差分(=Zp-Zo)が、これら周囲画素Ppのそれぞれについて算出される。
【0032】
ステップS104では、こうして得られた24個の差分の絶対値の中央値が算出され、ステップS105では、この中央値が対象画素Poに関連付けられる。ステップS106では、距離画像Iを構成する全ての画素Pに対してステップS102~S105が実行されたかを確認することで、
図3のフローチャートを終了するかが判断される。なお、ステップS106での判断基準はこれに限られず、距離画像Iの周縁の画素Pを対象画素Poの対象から外してもよいし、ユーザに指定された範囲以外の画素Pを対象画素Poの対象から外してもよい。そして、ステップS106で終了する(YES)と判断するまで、対象画素Poを変更しながら(ステップS107)、ステップS102~S105が実行される。その結果、良品ワークGを撮像した距離画像Iに含まれる複数の画素Pのそれぞれに対して、当該画素Pを含む所定範囲Aの凹凸度(すなわち、ステップS104の中央値)を付与した凹凸度マップMが作成されて、記憶部32に保存される。
【0033】
そして、コンピューター3は、良品ワークGの表面をその凹凸度に応じた領域毎に区別して各領域に適した検査条件、具体的には上述の検査閾値を作成する作業を、凹凸度マップMを利用して支援する。つまり、鍛造等による凹凸がそのまま表れた領域と、切削等によって平滑に仕上げられた領域とを含む検査対象ワークWに対して外観検査を行う場合、各領域の凹凸度に応じて検査閾値を設定できることが好適となる。コンピューター3は、このような検査閾値の設定を可能とする。
【0034】
図5は検査条件の設定手順の一例を示すフローチャートであり、
図6は検査条件の設定のためにディスプレイに表示される画面の一例を示す図であり、
図7および
図8は
図5のフローチャートに従って実行される演算処理の内容を模式的に示す図である。
図5のフローチャートは、演算部31による演算によって実行される。
図6に示すように、ユーザはディスプレイ33に表示された操作画面6を入力機器34により操作することで、操作画面6に示された各パラメータを調整できる。
図7の欄7A等に示すように、良品ワークGは、それぞれ凹凸度が異なる3つの領域G1、G2、G3をその表面に少なくとも含む。領域G1は切削によって平滑に仕上げられた加工面領域であり、領域G2、G3は鍛造による凹凸がそのまま表れた鍛造面領域である。ここでは、加工面領域G1および鍛造面領域G2に対してそれぞれに適切な検査閾値を設定する例について説明する。
【0035】
ステップS201では、凹凸度マップMのうちから、基準凹凸度61未満の低凹凸領域Lが抽出される。
図6に示すように、ユーザは操作画面6を操作することで基準凹凸度61を入力することができ、ステップS201では、ユーザにより入力された基準凹凸度61に基づき低凹凸領域Lが抽出される。その結果、
図7の欄7Bに示すように、加工面領域G1のほとんどと、鍛造面領域G2の一部に低凹凸領域L(ドットハッチングが付された領域)が現れる。
【0036】
ステップS202では、ステップS201で抽出された低凹凸領域Lに対して、モルフォロジー変換のクロージング処理が実行される。
図6に示すように、ユーザは操作画面6を操作することでクロージングサイズ62、すなわちクロージング処理における膨張および収縮の回数を入力することができ、ステップS202のクロージング処理では、ユーザにより入力された回数(クロージングサイズ62)の膨張および収縮がそれぞれ実行される。その結果、
図7の欄7B、7Cの比較から分かるように、加工面領域G1において低凹凸領域Lから外れていた一部がそれを囲む低凹凸領域Lに取り込まれて、加工面領域G1の全体が低凹凸領域Lとして扱われることとなる。
【0037】
ステップS203では、基準面積63未満の低凹凸領域Lが除去される。
図6に示すように、ユーザは操作画面6を操作することで基準面積63を入力することができ、ステップS203ではユーザにより入力された基準面積63に基づき低凹凸領域Lが除去される。その結果、
図7の欄7C、7Dの比較から分かるように、鍛造面領域G2の一部に現れていた低凹凸領域Lが鍛造面領域G2から除去される。
【0038】
こうして、
図7の欄7Dに示すように、ステップS201~S203を実行した後に残った低凹凸領域L(換言すれば、ステップS201~S203の実行により選択された領域)が第1検査対象領域R1としてディスプレイ33に表示される(ステップS204)。この際、ディスプレイ33は、このように凹凸度の違いに応じて区分けされる第1検査対象領域R1とそれ以外の領域とをユーザが区別して識別できるように、第1検査対象領域R1とそれ以外の領域とを異なる態様(例えば、異なる色あるいは輝度)で表示する。
【0039】
ステップS205では、操作画面6に対するユーザの操作によって、基準凹凸度61が変更されたか否かが判断される。基準凹凸度61の変更があった場合(ステップS205で「YES」の場合)には、変更後の基準凹凸度61に基づきステップS201~S204が実行される。つまり、ユーザは、基準凹凸度61を変更することで第1検査対象領域R1を変化させることができる。これにより、ユーザは、ディスプレイ33で第1検査対象領域R1を確認しながら入力機器34により基準凹凸度61を変更することで、加工面領域G1に対して第1検査対象領域R1を的確に調整することができる。
【0040】
ステップS206では、ユーザが操作画面6の保存ボタン64を操作したかが確認される。保存ボタン64の操作が確認されない場合(ステップS206で「NO」の場合)には、保存指令がないと判断して、ステップS205に戻る。保存ボタン64の操作が確認された場合(ステップS206で「YES」の場合)には、保存指令が入力されたと判断して、ディスプレイ33に表示されている第1検査対象領域R1が記憶部32に設定・保存される(ステップS207)。
【0041】
なお、
図6に示すように、ユーザは操作画面6を操作することで検査閾値65を入力することができ、第1検査対象領域R1の検査に適した値に検査閾値65を調整してから保存ボタンを操作することができる。ステップS207では、保存指令が入力された際の検査閾値65が、第1検査対象領域R1に関連付けられて、第1検査閾値651(
図1)として記憶部32に保存される。こうして、ステップS207で加工面領域G1に対して設定された第1検査対象領域R1に対する第1検査閾値651の設定が完了する。
【0042】
ステップS208では、
図5のフローチャートを終了するかが判断される。ここでは、鍛造面領域G2に対する検査閾値65の設定が完了していないため、ステップS208で「NO」と判断される。したがって、ステップS209に進んで、ステップS201~S207を実行する対象範囲が変更される。具体的には、凹凸度マップMのうちから、第1検査対象領域R1を除いた鍛造面領域G2、G3が対象範囲に選択される。
【0043】
ここの例では、鍛造面領域G2と比較して鍛造面領域G3の方が大きい凹凸度を有する。そして、ユーザは、加工面領域G1に対する第1検査対象領域R1および第1検査閾値651の設定と同じ要領でステップS201~S207を実行して、鍛造面領域G2に対する第2検査対象領域R2および第2検査閾値652(
図1)を設定する。
【0044】
つまり、ステップS201では、凹凸度マップMのうち、第1検査対象領域R1以外の鍛造面領域G2、G3から、基準凹凸度61未満の低凹凸領域Lが抽出される。この際、ユーザは、適当な低凹凸領域Lが抽出されるように、操作画面6によって基準凹凸度61を調整する。その結果、
図8の欄8Bに示すように、鍛造面領域G2のほとんどと、鍛造面領域G3の一部に低凹凸領域L(ドットハッチングが付された領域)が現れる。
【0045】
ステップS202では、ステップS201で抽出された低凹凸領域Lに対して、ユーザに入力されたサイズでクロージング処理が実行される。その結果、
図8の欄8B、8Cの比較から分かるように、鍛造面領域G2において低凹凸領域Lから外れていた一部がそれを囲む低凹凸領域Lに取り込まれて、鍛造面領域G2の全体が低凹凸領域Lとなる。
【0046】
ステップS203では、ユーザに入力された基準面積63未満の低凹凸領域Lが除去される。その結果、
図8の欄8C、8Dの比較から分かるように、鍛造面領域G3の一部に現れていた低凹凸領域Lが鍛造面領域G3から除去される。
【0047】
こうして、
図8の欄8Dに示すように、ステップS201~S203を実行した後に残った低凹凸領域L(換言すれば、ステップS201~S203の実行により選択された領域)が第2検査対象領域R2としてディスプレイ33に表示される(ステップS204)。この際、ディスプレイ33は、このように凹凸度の違いに応じて区分けされる第1検査対象領域R1と、第2検査対象領域R2と、当該領域R1、R2以外の領域とを、ユーザが区別して識別できるように、これらの領域を異なる態様(例えば、異なる色あるいは輝度)で表示する。
【0048】
上述と同様に、基準凹凸度61が変更されると(ステップS205で「YES」)、ステップS201~S204が再実行される一方、保存指令が入力されると(ステップS206で「YES」)、第2検査対象領域R2が記憶部32に設定・保存されるとともに、保存指令の入力時の検査閾値65が第2検査閾値652として、第2検査対象領域R2と関連付けられて、記憶部32に保存される(ステップS207)。こうして、ステップS207で鍛造面領域G2に対して設定された第2検査対象領域R2に対する第2検査閾値652の設定が完了する。なお、このように設定された第2検査閾値652は、第1検査閾値651よりも大きい。
【0049】
こうして、第1検査対象領域R1に対する第1検査閾値651の設定と、第2検査対象領域R2に対する第2検査閾値652の設定とが完了すると、ステップS208でフローチャートを終了する(YES)と判断される。そして、これらを用いて検査対象ワークWに対する外観検査が実行される。
【0050】
図9は外観検査装置で実行される外観検査の一例を示すフローチャートである。ステップS301では、上述の要領で、検査対象ワークWの距離画像Iが取得される、そして、予め取得されていた良品ワークGの距離画像Iと、検査対象ワークWの距離画像Iとの位置合わせが実行される(ステップS302)。
【0051】
ステップS303では、良品ワークGおよび検査対象ワークWそれぞれの距離画像Iの差分が第1検査閾値651以上となる箇所が第1検査対象領域R1に存在するかが検査される。そして、該当箇所が存在しない場合には、ステップS304で欠陥が存在しないと判断されて(すなわち、「NO」と判断されて)、ステップS305に進む。
【0052】
ステップS305では、良品ワークGおよび検査対象ワークWそれぞれの距離画像Iの差分が第2検査閾値651以上となる箇所が第2検査対象領域R2に存在するかが検査される。そして、該当箇所が存在しない場合には、ステップS306で欠陥が存在しないと判断されて(すなわち、「NO」と判断されて)、検査対象ワークWは良品であると判定される(ステップS307)。
【0053】
一方、ステップS304あるいはステップS306で、該当箇所が存在し、欠陥が存在すると判断されると、検査対象ワークWは不良品であると判定される(ステップS308)。
【0054】
以上に説明した実施形態では、良品ワークGを撮像することで取得された良品ワークGの距離画像Iに含まれる複数の画素Pのそれぞれに対して、当該画素Pを含む所定範囲Aの凹凸度を付与した凹凸度マップMが用いられる。つまり、凹凸度マップMのうちから、凹凸度の違いに基づき区分けされる第1検査対象領域R1と第2検査対象領域R2とがユーザにより識別可能にディスプレイ33に表示される(ステップS204)。そして、ユーザは、第1検査対象領域R1における欠陥の有無を検査するための第1検査閾値651と、第2検査対象領域R2における欠陥の有無を検査するための第1検査閾値651と異なる第2検査閾値652とを個別に設定可能である(ステップS207)。したがって、ユーザは、第1検査対象領域R1をディスプレイ33で確認しながら、第1検査対象領域R1の凹凸度に応じた第1検査閾値651を設定できるとともに、第2検査対象領域R2をディスプレイ33で確認しながら、第2検査対象領域R2の凹凸度に応じた第2検査閾値652を設定できる。こうして、外観検査の対象とする各領域R1、R2の凹凸度の違いに応じて適切な検査閾値651、652を設定することが可能となっている。
【0055】
また、ディスプレイ33が凹凸度マップのうちから第1検査対象領域R1と第1検査対象領域以外の領域とをユーザにより識別可能に表示した状態で(ステップS204)、ユーザが保存ボタン64を操作する設定操作を入力機器34に対して行うと(ステップS206)、第1検査閾値651が設定される(ステップS207)。また、第1検査閾値の設定後に、ディスプレイ33が凹凸度マップMのうちから、第2検査対象領域R2と、第2検査対象領域R2以外の領域とをユーザにより識別可能に表示した状態で(ステップS204)、ユーザが保存ボタン64を操作する設定操作を入力機器34に対して行うと(ステップS206)、第2検査閾値652が設定される。かかる構成では、第1検査閾値651の設定と第2検査閾値652の設定とを、保存ボタン64の操作という同様の設定操作により実行でき、ユーザは簡単な操作によってこれらを設定できる。
【0056】
また、入力機器34は、基準凹凸度61の入力操作を受け付け、演算部31は、第1検査対象領域R1および第2検査対象領域R2のうち第1検査対象領域R1を対象とした状態で基準凹凸度61が変更されると(ステップS205)、基準凹凸度61未満の凹凸度を有する画素Pで構成される低凹凸領域Lを凹凸度マップMから抽出する(ステップS201)。そして、演算部31は、この低凹凸領域Lに応じた第1検査対象領域R1をディスプレイ33に表示することで、第1検査対象領域R1の表示を変更する(ステップS204)。かかる構成では、ユーザは、基準凹凸度61を変更することで、これに伴って変化する第1検査対象領域R1をディスプレイ33で確認しつつ、第1検査対象領域R1を最適化する操作を実行できる。また、第2検査対象領域R2についても最適化する操作を同様に実行できる。
【0057】
また、距離画像Iに基づき凹凸度マップMを作成する演算部31が具備されている。かかる構成では、距離画像Iをコンピューター3に入力することで、凹凸度マップMを演算部31により自動作成することができる。
【0058】
また、複数の画素Pから選択した対象画素Poを中心として所定範囲Aが設定される(ステップS101、S102)。そして、複数の画素Pのうち所定範囲A内において対象画素Poの周囲に存在する複数の周囲画素Ppのそれぞれにおける距離と対象画素Poにおける距離との差(=Zp-Zo)の絶対値の中央値が凹凸度として対象画素Poに付与される(ステップS103~S105)。演算部31は、ステップS101~S105の当該演算を、複数の画素Pのうちで対象画素Poを変更しつつ(ステップS107)、実行することで凹凸度マップMを作成する。このような演算により凹凸度マップMを作成することで、距離画像Iに含まれる凹凸を適切に表す凹凸度マップMを得ることができる。
【0059】
以上に説明した実施形態では、コンピューター3が本発明の「検査条件作成支援装置」の一例に相当し、演算部31が本発明の「演算部」の一例に相当し、ディスプレイ33が本発明の「ディスプレイ」の一例に相当し、入力機器34が本発明の「入力操作部」の一例に相当し、所定範囲Aが本発明の「所定範囲」の一例に相当し、良品ワークGが本発明の「良品ワーク」の一例に相当し、距離画像Iが本発明の「距離画像」の一例に相当し、
低凹凸領域Lが本発明の「低凹凸領域」の一例に相当し、凹凸度マップMが本発明の「凹凸度マップ」の一例に相当し、画素Pが本発明の「画素」の一例に相当し、対象画素Poが本発明の「対象画素」の一例に相当し、周囲画素Ppが本発明の「周囲画素」の一例に相当し、第1検査対象領域R1が本発明の「第1検査対象領域」および「検査対象領域」の一例に相当し、第2検査対象領域R2が本発明の「第2検査対象領域」および「検査対象領域」の一例に相当する。また、コンピューター3が本発明の「コンピューター」の一例に相当し、検査条件作成支援プログラム4が本発明の「検査条件作成支援プログラム」の一例に相当し、記録媒体5が本発明の「記録媒体」の一例に相当する。
【0060】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、
図5に示す検査条件の設定手順を変形しても良い。
図10は検査条件の設定手順の変形例を示すフローチャートであり、
図11は
図10のフローチャートで実行される検査閾値の設定手順を示すフローチャートであり、
図12は検査条件の設定のためにディスプレイに表示される画面の変形例を示す図である。
図10および
図11のフローチャートは、演算部31による演算によって実行される。以下では、上記の実施例との差異を中心に説明する。ただし、上記の実施例と共通する構成を具備することで同様の効果が奏されることは言うまでもない。
【0061】
図10の変形例では、
図5の例と同様に、ステップS201~S206が実行される。ただし、
図10の変形例では、ステップS207に代えてステップS210が実行される。このステップS210では、ディスプレイ33に表示されている検査対象領域R1、R2の記憶部32への保存のみが実行され、検査閾値651、652の記憶部32への保存は実行されない。かかる
図10の変形例では、第1検査対象領域R1の設定・保存を行って、さらに第2検査対象領域R2の設定・保存を行ってから、ステップS211の検査閾値設定が実行される。
【0062】
図11に示すように、検査閾値設定では、第1検査対象領域R1および第2検査対象領域R2がユーザにより区別して識別可能な態様でディスプレイ33に表示される(ステップS401)。そして、ユーザが操作画面6の設定ボタン66を操作したかが確認される(ステップS402)。設定ボタン66の操作が確認されると(ステップS402で「YES」)、ユーザにより選択されている領域が第1検査対象領域R1であるかが確認される(ステップS403)。つまり、検査閾値設定では、設定済みの第1検査対象領域R1および第2検査対象領域R2がディスプレイ33に表示されており、ユーザは入力機器34の例えばマウスを操作(選択操作)することで、これらの領域R1、R2を選択できる。
【0063】
第1検査対象領域R1が選択されている場合(ステップS403で「YES」の場合)には、ユーザにより入力されてディスプレイ33に表示中の検査閾値65が第1検査閾値651として設定され、記憶部32に保存される(ステップS404)。一方、第2検査対象領域R2が選択されている場合(ステップS403で「NO」の場合)には、ユーザにより入力されてディスプレイ33に表示中の検査閾値65が第2検査閾値652として設定され、記憶部32に保存される(ステップS405)。
【0064】
ステップS406では、第1検査閾値651および第2検査閾値652の両方が設定済みであるかを確認することで、
図11のフローチャートを終了するかを判断する。つまり、いずれか一方が未設定であれば(ステップS406で「NO」)、ステップS402に戻り、両方が設定済みであれば(ステップS406で「YES」)、
図11のフローチャートを終了する。
【0065】
かかる変形例では、ディスプレイ33が第1検査対象領域R1と第2検査対象領域R2とを表示した状態で(ステップS401)、ユーザが入力機器34に対する選択操作(マウスの操作)により第1検査対象領域R1を選択しつつ、ユーザが設定ボタン66を操作する設定操作を入力機器34に対して行うと(ステップS402)、第1検査閾値651が設定される(ステップS404)。また、ユーザが入力機器34に対する選択操作(マウスの操作)により第2検査対象領域R2を選択しつつ、ユーザが設定ボタン66を操作する設定操作を入力機器34に対して行うと(ステップS402)、第2検査閾値652が設定される(ステップS405)。かかる構成では、第1検査閾値651の設定と第2検査閾値652の設定とを設定ボタン66の操作という同様の設定操作により実行でき、ユーザは簡単な操作によってこれらを設定できる。
【0066】
また、
図5のフローチャートによれば、第1検査対象領域R1に対する第1検査閾値の設定が完了してから、第2検査対象領域R2が表示されて、第2検査対象領域R2に対する第2検査閾値の設定が実行される。しかしながら、第1検査閾値の設定の前に、第1検査対象領域R1および第2検査対象領域R2の両方を、それぞれを識別可能な状態でディスプレイ33に表示してから、ユーザが第1検査閾値の設定と第2検査閾値の設定とを、入力機器34の操作によりディスプレイ33に対して個別に実行できるように構成してもよい。
【0067】
また、検査条件を設定するにあたり、
図5あるいは
図10のフローチャートに示す一部のステップ、例えばステップS202、S203等を省略してもよい。
【0068】
また、外観検査装置2とコンピューター3とを別体に構成する必要は必ずしもなく、外観検査装置2にコンピューター3を内蔵してもよい。
【0069】
また、凹凸度マップMの作成にあたり、所定範囲Aに含まれる対象画素Po以外の全画素Pの一部を周囲画素Ppとして選択する必要は必ずしもなく、当該全画素Pを周囲画素Ppとして選択してもよい。
【0070】
また、凹凸度として採用する値は、対象画素Poでの距離と周囲画素Ppでの距離との差分の絶対値の中央値に限られない。例えば、対象画素Poでの距離に対する周囲画素Ppでの距離の標準偏差を凹凸度として採用してもよい。
【0071】
また、良品ワークG(検査対象ワークW)の表面の形状は平面である必要は無く、円筒形、楕円形あるいは波打った形状等の種々の形状を有する良品ワークG(検査対象ワークW)に対して、上述の技術を適用可能である。
【産業上の利用可能性】
【0072】
本発明は、外観検査技術の全般に適用可能である。
【符号の説明】
【0073】
3…コンピューター(検査条件作成支援装置)
31…演算部
33…ディスプレイ
34…入力機器(入力操作部)
4…検査条件作成支援プログラム
5…記録媒体
64…保存ボタン
66…設定ボタン
A…所定範囲
G…良品ワーク
I…距離画像
L…低凹凸領域
M…凹凸度マップ
P…画素
Po…対象画素
Pp…周囲画素
R1…第1検査対象領域(検査対象領域)
R2…第2検査対象領域(検査対象領域)