IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キリンテクノシステム株式会社の特許一覧

特開2024-142395画像補正方法、画像補正装置及びコンピュータプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024142395
(43)【公開日】2024-10-11
(54)【発明の名称】画像補正方法、画像補正装置及びコンピュータプログラム
(51)【国際特許分類】
   G06T 7/80 20170101AFI20241003BHJP
   G06T 7/00 20170101ALI20241003BHJP
   G06T 7/62 20170101ALI20241003BHJP
   G06T 7/60 20170101ALI20241003BHJP
   G01B 11/26 20060101ALN20241003BHJP
【FI】
G06T7/80
G06T7/00 610C
G06T7/62
G06T7/60 150S
G01B11/26 H
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2023054519
(22)【出願日】2023-03-30
(71)【出願人】
【識別番号】390014661
【氏名又は名称】オムロン キリンテクノシステム株式会社
(74)【代理人】
【識別番号】100099645
【弁理士】
【氏名又は名称】山本 晃司
(74)【代理人】
【識別番号】100104499
【弁理士】
【氏名又は名称】岸本 達人
(72)【発明者】
【氏名】田渕 博康
(72)【発明者】
【氏名】大沼 敏也
(72)【発明者】
【氏名】岡本 庄平
(72)【発明者】
【氏名】酒井 智宏
【テーマコード(参考)】
2F065
5L096
【Fターム(参考)】
2F065AA27
2F065AA33
2F065AA48
2F065FF04
2F065QQ31
5L096BA03
5L096EA18
5L096FA04
5L096FA69
(57)【要約】
【課題】検査領域の画像を用いて幾何学的な特性値を測定する場合の検査精度を高めることが可能な画像補正方法を提供する。
【解決手段】検査対象のボトル2の天面2bを検査領域としてカメラ30で撮像し、撮像された画像に基づいて天面2bの幾何学的な特性値を測定する場合において、相互の位置関係が既知である3以上の基準点をボトル2外に設定し、天面2bを各基準点が含まれるようにして撮像し、撮像方向及び撮像距離に関して所定の基準状態を設定したときの当該基準状態における基準点間の距離と、撮像された画像中における基準点間の距離とに基づいて、天面2bの撮像時に生じた基準状態からの誤差を検出し、検出された誤差を天面2bの画像から除去するための補正値を演算し、演算された補正値に基づいて天面2bの画像を誤差が除去されるように補正する。
【選択図】図4
【特許請求の範囲】
【請求項1】
検査対象の物品の検査領域をカメラにて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査方法に適用され、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正方法であって、
相互の位置関係が既知である3以上の基準点を、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定する手順と、
前記検査領域を各基準点が含まれるようにして前記カメラに撮像させる手順と、
前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手順と、
演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手順と、
を含んだ画像補正方法。
【請求項2】
前記補正値を演算する手順は、
検出された前記基準点間の距離と、前記基準状態における前記基準点間の距離との比較に基づいて、前記基準状態に対する前記カメラの誤差を検出する手順と、
検出された誤差に基づいて、前記カメラの誤差を除去するためのカメラ誤差補正値を演算する手順と、を含んでいる請求項1に記載の画像補正方法。
【請求項3】
前記補正値を演算する手順は、
前記カメラの誤差として、前記基準状態における前記撮像方向に対し、前記検査領域の画像の撮像時にて前記撮像方向に生じた傾きの誤差である傾き誤差を検出する手順と、
検出された傾き誤差に基づいて、前記カメラの前記傾き誤差を除去するための傾き補正値を前記カメラ誤差補正値として演算する手順と、を含んでいる請求項2に記載の画像補正方法。
【請求項4】
前記補正値を演算する手順は、
前記傾き補正値に基づいて、前記検出された前記基準点間の距離を前記傾き誤差が除去されるように補正する手順と、
補正後の前記基準点間の距離に基づいて、前記基準状態における前記撮像距離に対し、前記検査領域の画像の撮像時にて生じた撮像距離の誤差である位置誤差を前記カメラの誤差としてさらに検出する手順と、
検出された位置誤差に基づいて、前記位置誤差を除去するための位置補正値を前記カメラ誤差補正値としてさらに演算する手順と、を含んでいる請求項3に記載の画像補正方法。
【請求項5】
前記物品がボトルであって、前記ボトルの口部の天面が前記検査領域として設定され、前記基準状態は、前記カメラの撮像光軸と前記口部におけるボトル軸線とが互いに平行でかつ前記検査領域が所定の撮像距離で撮像される状態として設定されている請求項1~4のいずれか一項に記載の画像補正方法。
【請求項6】
前記ボトルを所定の回転軸線の回りに回転させながら複数の回転角ごとに前記口部を半径方向から撮像した側面視の画像を前記カメラに撮像させる手順と、
回転角ごとに撮像された画像にて、前記基準状態における前記撮像光軸と平行な測定線を設定したときの当該測定線上における前記天面の位置を検出する手順と、
回転角ごとの画像間における前記天面の位置の変化に基づいて、前記基準状態における前記撮像光軸に対する前記ボトル軸線の傾きの誤差、及び当該撮像光軸の方向における前記天面の位置の誤差の少なくともいずれか一方をボトル誤差として検出し、検出されたボトル誤差を前記検査領域の画像から除去するためのボトル誤差補正値を演算する手順と、をさらに含み、
前記検査領域の画像を補正する手順では、前記ボトル誤差補正値に基づいて、前記ボトル誤差が除去されるようにして前記検査領域の画像を補正する請求項5に記載の画像補正方法。
【請求項7】
前記基準点を第1基準点としたときに、相互の位置関係が既知であって前記第1基準点とは異なる3以上の第2基準点を、前記物品外でかつ前記口部を前記半径方向から撮像するときの前記カメラの視野内に設定する手順をさらに含み、
前記天面の位置を検出する手順は、
前記側面視の画像の撮像時における前記撮像方向及び前記撮像距離が、前記検査領域の画像の撮像に関する前記基準状態とは区別して設定された他の基準状態にあるときの前記第2基準点間の距離と、各回転角の画像中における前記第2基準点間の距離とに基づいて、各回転角における画像の撮像時に生じた前記他の基準状態からの誤差を、前記側面視の画像に関する誤差として検出し、検出された前記側面視の画像に関する誤差を各回転角における画像から除去するための補正値を、前記側面視の画像に関する補正値として演算する手順と、
演算された前記側面視の画像に関する補正値に基づいて、各回転角における前記側面視の画像を前記他の基準状態からの誤差が除去されるように補正する手順と、
補正された側面視の画像にて前記天面の位置を検出する手順と、を含んでいる請求項6に記載の画像補正方法。
【請求項8】
前記側面視の画像に関する補正値を演算する手順は、
前記他の基準状態にあるときの前記第2基準点間の距離と、各回転角の画像中における前記第2基準点間の距離との比較に基づいて、前記他の基準状態に対する前記カメラの誤差を、前記側面視の画像に関するカメラの誤差として検出する手順と、
検出された前記側面視の画像に関するカメラの誤差に基づいて、前記側面視の画像から当該カメラの誤差を除去するための補正値を、前記側面視の画像に関するカメラ誤差補正値として演算する手順と、を含んでいる請求項7に記載の画像補正方法。
【請求項9】
前記側面視の画像に関する補正値を演算する手順は、
前記側面視の画像に関するカメラの誤差として、前記他の基準状態における前記撮像方向に対し、各回転角の画像の撮像時にて前記撮像方向に生じた傾きの誤差である傾き誤差を、前記側面視の画像に関する傾き誤差として検出する手順と、
検出された前記側面視の画像に関する傾き誤差に基づいて、前記側面視の画像に関する前記カメラの前記傾き誤差を除去するための傾き補正値を、前記側面視の画像に関する前記カメラ誤差補正値として演算する手順と、を含んでいる請求項8に記載の画像補正方法。
【請求項10】
前記側面視の画像に関する補正値を演算する手順は、
前記側面視の画像に関する傾き補正値に基づいて、前記検出された前記第2基準点間の距離を、前記側面視の画像に関する前記カメラの前記傾き誤差が除去されるように補正する手順と、
補正後の前記第2基準点間の距離に基づいて、前記他の基準状態における前記撮像距離に対し、各回転角における撮像時にて生じた撮像距離の誤差である位置誤差を、前記側面視の画像に関する前記カメラの誤差としてさらに検出する手順と、
検出された前記側面視の画像に関する位置誤差に基づいて、前記側面視の画像に関する位置誤差を除去するための位置補正値を、前記側面視の画像に関する前記カメラ誤差補正値としてさらに演算する手順と、を含んでいる請求項9に記載の画像補正方法。
【請求項11】
検査対象の物品の検査領域をカメラにて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査装置に適用され、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正装置であって、
相互の位置関係が既知であって、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定された3以上の基準点を含むようにして前記検査領域を前記カメラに撮像させる手段と、
前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手段と、
演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手段と、
を含んだ画像補正装置。
【請求項12】
検査対象の物品の検査領域をカメラにて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査装置に含まれたコンピュータを、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正装置として機能させるためのコンピュータプログラムであって、
前記コンピュータを、
相互の位置関係が既知であって、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定された3以上の基準点を含むようにして前記検査領域を前記カメラに撮像させる手段、
前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手段、及び
演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手段、
として機能させるように構成されたコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検査対象の物品における検査領域の画像を撮像し、得られた画像から検査領域の幾何学的な特性値を測定する場合に適用可能な画像補正方法等に関する。
【背景技術】
【0002】
画像処理技術を用いて物品を検査する手法が種々の分野で活用されている。例えば、被写体までの距離情報を取得可能な3Dカメラにて電子部品を撮像し、得られた画像に基づいて電子部品の平坦度を測定するための基準となる仮想平面を設定し、その仮想平面と電子部品の各部とのずれに基づいて電子部品の平坦度を測定する技術が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第7135418号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
樹脂製容器、例えばPET樹脂(ポリエチレンテレフタレート樹脂の略。)を素材とする樹脂製ボトルの製造現場では、製品が所定の品質基準を満たしているか否かを確認するために各種の検査が実施されている。例えば、飲料用のボトルにおいては、ボトルの密閉性を確保し、あるいはユーザの口が接したときの良好な感触を確保する必要から、口部に関して精緻な製造基準が定められている。製造現場では、その製造基準を満たすか否かを確認するために、口部の内径等の寸法、あるいは真円度等の形状特性といった幾何学的な特性値が検査される。この種の検査を画像処理にて実施する場合、カメラとボトルとの位置関係が変化すると、その変化に応じて画像に歪が生じて特性値を正しく測定することが困難となる。上述した特許文献1に記載の技術のように、ボトル上に複数の基準点を設定し、それらの基準点の画像中における位置を手掛かりとしてカメラとボトルとの位置関係のずれを判別することも考え得る。しかしながら、ボトルに製造誤差があれば、基準点それ自身の信頼性が確保できず、検査精度が低下する可能性がある。
【0005】
そこで、本発明は検査領域の画像を用いて幾何学的な特性値を測定する場合の検査精度を高めることが可能な画像補正方法等を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る画像補正方法は、検査対象の物品の検査領域をカメラにて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査方法に適用され、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正方法であって、相互の位置関係が既知である3以上の基準点を、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定する手順と、前記検査領域を各基準点が含まれるようにして前記カメラに撮像させる手順と、前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手順と、演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手順と、を含んだものである。
【0007】
本発明の一態様に係る画像補正装置は、検査対象の物品の検査領域をカメラにて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査装置に適用され、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正装置であって、相互の位置関係が既知であって、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定された3以上の基準点を含むようにして前記検査領域を前記カメラに撮像させる手段と、前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手段と、演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手段と、を含んだものである。
【0008】
本発明の一態様に係るコンピュータプログラムは、検査対象の物品の検査領域をカメラにて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査装置に含まれたコンピュータを、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正装置として機能させるためのコンピュータプログラムであって、前記コンピュータを、相互の位置関係が既知であって、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定された3以上の基準点を含むようにして前記検査領域を前記カメラに撮像させる手段、前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手段、及び、演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手段、として機能させるように構成されたものである。
【図面の簡単な説明】
【0009】
図1】本発明の一形態に係る画像補正方法が適用される検査装置の一例を示す図。
図2】一形態に係る標識部材の平面図。
図3】一形態に係る標識部材の正面図。
図4】ボトルの天面を軸線方向上方から撮像する場合に生じる誤差の一例を示す図。
図5】ボトル軸線に生じる傾きの例を示す図。
図6】画像補正方法で実施される各処理の一例を示す図。
図7】キャリブレーション処理時の撮像状態の一例を示す図。
図8】キャリブレーションプレートの一例を示す図。
図9】壜台誤差検出処理にて撮像される基準ゲージの側面視の画像の一例を示す図。
図10】壜台誤差検出処理にて撮像される基準ゲージの天面の画像の一例を示す図。
図11】画像中の第1基準点に位置のずれが生じた状態の一例を示す図。
図12】画像中の第2基準点に位置のずれが生じた状態の一例を示す図。
図13】ボトルの天面を撮像した画像の一例を示す図。
図14】ボトルの口部を撮像した側面視の画像の一例を示す図。
図15】ボトルの天面の画像を補正する様子の一例を示す図。
図16】制御装置が実行する基準点誤差検出処理の手順の一例を示すフローチャート。
図17】制御装置が実行する壜台誤差検出処理の手順の一例を示すフローチャート。
図18図17に続くフローチャート。
図19】制御装置が実行するカメラ誤差検出処理の手順の一例を示すフローチャート。
図20】制御装置が実行する実測時の誤差検出処理の手順の一例を示すフローチャート。
図21】制御装置が実行する測定処理の手順の一例を示すフローチャート。
図22】一形態に係る標識部材の平面図。
図23】一形態に係る標識部材の正面図。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して本発明の一形態に係る画像補正方法が適用される検査装置を説明する。本形態は、検査対象の物品が樹脂製ボトルであり、その口部の天面が検査領域として設定され、その天面における内径、真円度といった幾何学的な特性値が検査される場合を例とする。図1に示すように、本形態に係る検査装置1は、ボトル2を支持するボトル支持台10と、ロボットアーム20と、ロボットアーム20に支持されたカメラ30とを含んでいる。ボトル支持台10は検査対象の物品を支持するための支持構造の一例に相当し、カメラ30は検査対象の物品を撮像するための撮像手段の一例に相当する。ロボットアーム20は、撮像手段を検査対象の物品に対して相対変位させてその物品とカメラ30とを所望の位置関係に配置するための送り機構の一例に相当する。
【0011】
ボトル支持台10は、平板状のベース11と、ベース11上に取り付けられた回転壜台12と、回転壜台12の側方にてベース11に固定されたフレーム13とを備えている。ベース11は所定の据付面上にて概ね水平に設置される。ベース11は、さらなる構造体に固定されてもよい。回転壜台12は、ベース11の上面に固定される受台14と、その受台14に対して所定の壜台軸線AX1の回りに回転自在に取り付けられるステージ15とを含んでいる。回転壜台12はボトル2を回転可能な状態で支持するための回転支持装置の一例である。
【0012】
ボトル2はその口部2aを上方に向けた正立状態でステージ15上に設置される。壜台軸線AX1は、ベース11の上面と直交する方向、すなわち垂直方向と一致するように設定されている。フレーム13は、回転壜台12上のボトル2よりも上方に突出する一対の縦部材13aと、それらの縦部材13a間に掛け渡される横部材13bとを含んでいる。横部材13bには標識部材40が取付部材16を介して取り付けられている。標識部材40とフレーム13との位置関係は一定となるように定められている。ここでいう位置関係は、ボトル支持台10が置かれた3次元空間における位置及び距離によって定まる関係である。フレーム13と回転壜台12の壜台軸線AX1との位置関係は一定であり、従って、標識部材40と壜台軸線AX1との位置関係もまた一定である。標識部材40は、カメラ30にてボトル2の検査領域を撮像する際のカメラ30の撮像方向及び撮像距離の誤差を補正するために利用される。標識部材40の詳細は後述する。
【0013】
ロボットアーム20は、カメラ30を所定の撮像位置に移動させ、その撮像位置にてカメラ30を支持する手段として設けられている。ロボットアーム20は、ベース部21と、ベース部21に対して軸線R1を中心に旋回駆動される第1スイベル部22と、第1スイベル部22に対して軸線R2を中心に旋回駆動される第1アーム部23と、第1アーム部23に対して軸線R3を中心に旋回駆動される第2スイベル部24と、第2スイベル部24に対して軸線R4を中心に旋回駆動される第2アーム部25と、第2アーム部25に対して軸線R5を中心に旋回駆動される第3スイベル部26と、第3スイベル部26に対して軸線R6を中心に旋回駆動される第4スイベル部27とを含んでいる。すなわち、ロボットアーム20は可動軸数を6軸とした多関節ロボットの一種として構成されている。ベース部21は適宜の構造体に据え付けられる。その構造体は、ボトル支持台10のベース11を据え付け、あるいは固定するための構造体と共通であってもよいし、別体であってもよい。なお、ロボットアーム20の構成は、カメラ30をボトル2に対して目的とする位置に移動させることが可能であれば適宜に変更されてよい。さらに、送り機構はロボットアーム20に限らず、例えば直交する3軸方向に動作可能な3軸ステージに旋回テーブル等の旋回機構を組み合わせた構成であってもよい。
【0014】
カメラ30は、CCD、CMOS等の固体撮像素子を用いたイメージセンサを内蔵し、レンズが捉えた光学像を電子画像に置き換え、その電子画像に対応する画像信号を出力する。カメラ30は、ロボットアーム20の第4スイベル部27に対してブラケット28を介して取り付けられている。第1スイベル部22から第4スイベル部27までの各要素を軸線R1~R6の回りに適宜に旋回させることにより、カメラ30をボトル支持台10上の3次元空間内にて移動させて所定の撮像位置に配置することが可能である。本形態では、一例として、ロボットアーム20により、カメラ30を、ステージ15上のボトル2の口部2aを上方から撮像する第1撮像位置P1と、ステージ15上のボトル2の口部2aを半径方向から撮像する第2撮像位置P2とに選択的に移動させることができる。第1撮像位置P1ではボトル2の天面2bの画像が撮像され、第2撮像位置P2ではボトル2の口部2aを半径方向から撮像した側面視の画像が撮像される。天面2bは口部2aの上端面である。第1撮像位置P1、及び第2撮像位置P2に代えて、又は加えて他の撮像位置が設定されてもよい。
【0015】
ブラケット28には、ボトル2の口部2aを照明する一対の照明器29がさらに取り付けられている。ただし、照明器29の個数及び構成は適宜に変更されてよい。ロボットアーム20とは異なる構造、例えばボトル支持台10のフレーム13等に照明器29が取り付けられてもよい。
【0016】
検査装置1には、検査に必要な各種の演算処理及び動作制御を実行する制御装置50が設けられる。制御装置50は、マイクロプロセッサ及びその動作に必要な各種の記憶装置を含んだコンピュータユニットとして構成される。制御装置50には、コンピュータハードウエアとコンピュータソフトウエアとしてのコンピュータプログラムの一例である検査プログラムPGとの協働によって実現される論理的装置として、ロボットアーム20の動作を制御するためのアーム制御部51と、カメラ30の動作を制御するための撮像制御部52と、撮像制御部52に取り込まれた画像に所定の処理を施す画像処理部53と、画像処理部53によって処理された画像を用いて口部2aの幾何学的な特性値を検査する検査部54とがさらに設けられる。それらの論理的装置が構成されることにより、制御装置50は検査装置1における画像補正装置の一例として機能することが可能である。アーム制御部51は、カメラ30が予め設定された撮像位置P1、P2に選択的に位置決めされるようにロボットアーム20の動作を制御する。撮像制御部52は、撮像装置P1、P2のいずれかに位置決めされたカメラ30に撮像指示を与え、カメラ30から出力される画像信号を取得することによりカメラ30が撮像した電子的な画像を取得する。画像処理部53及び検査部54の処理は後述する。
【0017】
図2及び図3は標識部材40の一例を示している。標識部材40は、概ね直方体形状のベース41と、そのベース41から同一方向に突出する一対のアーム42とを備えている。アーム42間には空隙部43が設けられている。図2の下側及び上側を標識部材40の先端側及び後端側とし、図3の上下方向を標識部材40の厚さ方向としたとき、空隙部43は、ボトル2の口部2aを取り込むことができるように、標識部材40を厚さ方向に貫くとともに、標識部材40の先端側にて開口し、さらに標識部材40の後端側では半円弧状の輪郭を描きつつ延びるように形成されている。
【0018】
図2に示すように、ベース41及びアーム42の上面41a、42aには、3つの第1標識部45が設けられている。第1標識部45は、上面41a、42aを部分的に矩形状に突出させた凸部として形成されている。第1標識部45は厚さ方向において互いに等しい位置にある。ただし、第1標識部45は、上面41a、42aを部分的に陥没させた凹部として設けられてもよい。上面41a、42aに凹凸を付す手法に代えて、又は加えて、刻印、印字、その他の各種の手法で第1標識部45が設けられてもよい。第1標識部45の形状は矩形状に限らず、三角形状、円状、その他各種の形状であってよい。各第1標識部45の中心点は第1基準点PR1として設定される。第1基準点PR1の相互の位置関係は既知である。つまり、第1基準点PR1は、同一平面上にて既知の距離だけ隔てた位置に置かれた関係にある。ただし、第1基準点PR1間の距離は互いに等しく設定されることは要しない。第1基準点PR1間の距離は互いに異なっていてもよい。
【0019】
第1標識部45は、第1基準点PR1を結んで仮想的な三角形TRを形成したときに、その三角形TRが、空隙部43に取り込まれるボトルの口部2aとボトルの軸線方向に重なり合うように設定される。換言すれば、第1標識部45は、ボトルの口部2aを軸線方向の上側から観察したときに、口部2aをその周囲から取り囲むように配置される。さらに、第1標識部45は、第1撮像位置P1にあるときのカメラ30の視野内に収まるように配置されている。なお、第1基準点PR1は説明のために図示したものである。第1標識部45上に第1基準点PR1が刻印等によって表示されてもよいし、表示が省略されてもよい。
【0020】
図3に示すように、各アーム42の先端面42bには、標識部材40の厚さ方向に間隔をあけて2つの第2標識部46が設けられている。左右のアーム42のそれぞれに2つずつ第2標識部46が設けられることにより、標識部材40の全体では4つの第2標識部46が存在する。一対のアーム42のそれぞれの上側に位置する第2標識部46は標識部材40の厚さ方向において同一の高さにあり、下側に位置する第2標識部46は標識部材40の厚さ方向において同一の高さにある。
【0021】
第2標識部46は、先端面42bを部分的に矩形状に突出させた凸部として形成されている。ただし、第2標識部46は、先端面42bを部分的に陥没させた凹部として設けられてもよい。先端面42bに凹凸を付す手法に代えて、又は加えて、刻印、印字、その他の各種の手法で第2標識部46が設けられてよい。第2標識部46の形状は矩形状に限らず、三角形状、円状、その他各種の形状であってよい。各第2標識部46の中心点が第2基準点PR2として設定される。第2基準点PR2の相互の位置関係は一定である。つまり、第2基準点PR2は、同一平面上にて既知の距離だけ隔てた位置に置かれた関係にある。ただし、第2基準点PR2間の距離は互いに等しく設定されることは要しない。第2基準点PR2間の距離は互いに異なっていてもよい。第2標識部46の第2基準点PR2は、第1標識部45の第1基準点PR1を含む平面に対して直交する同一平面上に位置している。つまり、第2基準点PR2を結ぶ仮想的な四形RCを形成したとき、その四角形RCは図2の三角形TRに対して直交する関係にある。
【0022】
第2標識部46は、上記の四角形RCが空隙部43に取り込まれるボトルの口部2aと半径方向に重なり合うように設定される。換言すれば、第2標識部46は、ボトルの口部2aを半径方向から観察したときに、口部2aを両側から取り囲むように配置される。さらに、第2標識部46は、第2撮像位置P2にあるときのカメラ30の視野内に収まるように配置されている。なお、第2基準点PR2についても説明のために図示したものである。第2標識部46上に第2基準点PR2が刻印等によって表示されてもよいし、表示が省略されてもよい。
【0023】
標識部材40がボトル支持台10に取り付けられることにより、検査対象である物品外、つまりボトル2とは別の位置に第1基準点PR1、第2基準点PR2が設定される。第1基準点PR1、第2基準点PR2が検査対象の物品外に設定されることにより、ボトル2のように製造誤差を伴う物品、あるいは基準点を設定するスペースが不足する物品といったように、基準点の設定を妨げる事情がある物品を検査する場合でも、第1基準点PR1、第2基準点PR2を無理なく設定して、画像の補正のために利用することが可能である。
【0024】
次に、標識部材40を利用した画像の補正方法について説明する。まず、説明の便宜のため、ボトル2、回転壜台12、カメラ30及び標識部材40の位置関係に関し、以下のように基準状態を想定する。ここでいう位置関係の基準状態とは、要するに、カメラ30の撮像方向、すなわち撮像光軸AX3の方向と、カメラ30からの撮像距離に関して基準となる状態である。
【0025】
図1に示すように、カメラ30が第1撮像位置P1に誤差なく位置決めされているときのカメラ30の撮像光軸AX3を基準軸線CXと仮定する。その基準軸線CXに対して回転壜台12の設計上の壜台軸線AX1が平行で、かつボトル軸線AX2も平行であって、かつカメラ30からボトル2の天面2bまでの撮像距離が所定の撮像距離と一致する状態を第1撮像位置P1における仮の基準状態として暫定的に想定する。撮像距離は、撮像光軸AX3の方向におけるカメラ30の結像面から被写体までの距離である。図1では、壜台軸線AX1、ボトル軸線AX2が撮像光軸AX3と同軸である状態を示しているが、仮の基準状態において、壜台軸線AX1、及びボトル軸線AX2は基準軸線CXと平行であればよい。回転壜台12の設計上の軸線AX1とは、回転壜台12に製造誤差や取付誤差といった物理的な誤差がない場合の回転壜台12の回転軸線であって、回転壜台12の理想的な回転軸線である。ボトル軸線AX2は少なくとも口部2aにおける軸線である。撮像光軸AX3はカメラ30のレンズ光学系の光軸である。
【0026】
一方、ボトル2、回転壜台12、カメラ30及び標識部材40の実際の位置関係には誤差が発生する。図4は、カメラ30にてボトル2の口部2aをその軸線方向上方から撮像する場合に想定される誤差の一例を示している。図4では、図1のように誤差がないときのボトル2、回転壜台12、第1撮像位置P2のカメラ30及び標識部材40を実線で示し、誤差が生じたときのボトル2及び第1撮像位置P1のカメラ30を仮想線で示している。ただし、図4の誤差は誇張して描かれている。図5以下でも同様に誤差が誇張して描かれており、図示の誤差の状態は、現実に発生する誤差等を正確に示すものではない。図4の例では、基準軸線CXに対してボトル軸線AX2が角度θbで傾き、撮像光軸AX3が角度θcで傾いている。回転壜台12の壜台軸線AX1にも基準軸線CXに対する傾きの誤差が生じるが、図4では誤差の図示を省略した。
【0027】
さらに、標識部材40に関しても誤差が生じることがある。例えば、第1撮像位置P1のカメラ30に誤差がないとしたとき、図2に示す全ての第1標識部45の第1基準点PR1を結ぶ三角形TRが撮像光軸AX3と直交し、かつカメラ30の結像面から三角形TRまでの距離が上述した仮の基準状態における撮像距離L1と一致する状態を仮定する。この状態は、カメラ30の結像面から撮像距離L1だけ離れた同一平面上に全ての第1基準点PR1が位置している状態である。その状態に対して、例えば、基準点PR1を結ぶ三角形TRが撮像光軸AX3に対して斜めに傾くような傾きの誤差、あるいは三角形TRまでの撮像距離が撮像距離L1と一致しない距離の誤差が標識部材40に生じることがある。
【0028】
回転壜台12は、基準軸線CXの方向に関してボトル2の天面2bにボトル軸線AX2の方向に関する位置の誤差がないときに、その天面2bが図2に想像線で示したように第1基準点PR1と同一の高さに位置するように調整される。したがって、天面2bに位置の誤差がなければ、カメラ30と天面2bとの間の撮像距離は第1撮像位置P1の基準状態における撮像距離L1に等しくなる。よって、上述した第1の撮像位置P2における仮の基準状態においては、ボトル2のボトル軸線AX2が撮像光軸AX3と平行で、かつカメラ30と天面2b及び第1基準点PRのそれぞれとの間の撮像距離が所定の撮像距離L1に一致することになる。
【0029】
カメラ30を第2撮像位置P2に配置して撮像する場合にも、撮像方向及び撮像距離に関して基準状態を設定することができる。一例として、図3に示す全ての第2標識部46の第2基準点PR2を結ぶ四角形RCが、カメラ30の結像面から第2撮像位置P2における撮像光軸AX3の方向に所定の撮像距離L2だけ離れた同一の平面上に位置する状態を第2撮像位置P2における仮の基準状態として暫定的に想定する。この場合、ボトル2は、図2に示したように、上述した四角形RCが口部2aのカメラ30に近い側の端部の概ね中心位置を横切るような位置関係に置かれるものとする。つまり、第2撮像位置P2に関する仮の基準状態では、第2撮像位置P2のカメラ30から口部2aまでの撮像距離と、第2基準点PR2までの撮像距離とが、図4に示した所定の撮像距離L2と一致するものとされる。以下の説明では、図4に示すように、基準軸線CXの方向にZ軸を取り、そのZ軸と直交する面内で第2撮像位置P2における撮像光軸AX3の方向にY軸を取り、Y軸及びZ軸の両者と直交する方向にX軸を取って検査装置1における3次元空間の方向を表現することがある。
【0030】
カメラ30が撮像した画像から口部2aの内径や真円度等の幾何学的な特性値を正確に測定するためには、第1撮像位置P1におけるカメラ30と口部2aとの位置関係を上述した仮の基準状態となるように設定する必要がある。しかしながら、以下に挙げる誤差要因により、天面2bの内径や真円度等の幾何学的な特性値の測定結果に誤差が生じる可能性がある。
【0031】
1 カメラ側の誤差要因
(1)カメラ30のレンズ歪
カメラ30が撮像した画像にはレンズ歪の影響が現れる。したがって、カメラ30とボトル2とがどのような位置関係にあっても、天面2bの画像にはレンズ歪に対応した変形が生じる。その変形の影響で内径や真円度等の特性値に測定誤差が生じる。
(2)撮像光軸AX3のZ軸方向に対する傾きの誤差
図4に示したように、第1撮像位置P1に置かれたカメラ30の撮像光軸AX3に、Z軸方向に対する傾きθcが生じていると、仮にボトル軸線AX2が基準軸線CXと平行であっても、天面2bがボトル軸線AX2に対して斜めに傾いた方向から撮像される。それにより、撮像光軸AX3の傾きθcに応じた歪が天面2bの画像に生じる。その歪の影響で、天面2bの内径や真円度等の特性値に測定誤差が生じる。なお、撮像光軸AX3の傾きは、その傾きが生じている基準軸線CXの回りの方位とその方位における傾きの角度θcとによって特定される。ここでいう「方位」は、基準軸線CXの回りにおける撮像光軸AX3の位置を、所定の基準方向からの基準軸線CXの回りの角度で表す概念である。
(3)カメラ30のZ軸方向における位置の誤差
カメラ30のZ軸方向の位置に誤差が生じると、撮像距離が本来想定していた撮像距離L1から変化する。その変化量に応じて天面2bの画像に拡大又は縮小が生じ、その影響で内径や真円度等の特性値に測定誤差が生じる。
【0032】
以上のカメラ30側の誤差要因のうち、Z軸方向に対する傾きθcの誤差、及びZ軸方向の位置の誤差は、ロボットアーム20によるカメラ30の位置決め誤差、ロボットアーム20に対するカメラ30の取付誤差、カメラ30の振動等によって発生するものである。レンズ歪はカメラ30に固有の誤差要因であって、ロボットアーム20の位置決め誤差等の有無に拘わりなく発生する。ただし、検査で必要な精度からみてレンズ歪の影響が無視し得るほど小さい場合には、レンズ歪を誤差要因として考慮することを要しない。
【0033】
2 ボトル側の誤差要因
(1)ボトル軸線AX2のZ軸方向に対する傾きの誤差
回転壜台12に置かれたボトル2のボトル軸線AX2に、Z軸方向に対する傾きθbが生じていると、仮にカメラ30の撮像光軸AX3が基準軸線CXと一致していても、天面2bがボトル軸線AX2に対して斜めに傾いた方向から撮像される。それにより、傾きθbに応じた歪が天面2bの画像に生じ、その影響で内径や真円度等の特性値に誤差が生じる。
(2)ボトル2のZ軸方向における位置の誤差
ボトル2の天面2bのZ軸方向における位置に誤差が生じると、その誤差量に応じて天面2bの画像に拡大又は縮小が生じ、その影響で内径や真円度等の特性値に誤差が生じる。
【0034】
上述したボトル2側の誤差要因のうち、ボトル軸線AX2の傾きθbは、回転壜台12が原因で発生する壜台固有の傾きと、ボトル2が原因で発生するボトル固有の傾きとが複合して生じる。壜台固有の傾きは、回転壜台12の製造誤差、組立誤差といった機械的な誤差に起因して発生する。ただし、壜台固有の傾きは、回転軸線としての壜台軸線AX1それ自身が傾く誤差と、その壜台軸線AX1に対してボトル軸線AX2が回転壜台12自身の誤差でさらに傾く誤差とが複合して生じる。この点を図5によって説明する。
【0035】
図5に示したように、基準軸線CX、換言すれば設計上の壜台軸線AX1に対して実際の壜台軸線AX1に傾きθb1が生じることがある。回転壜台12に支持されたボトル2は傾きθb1をもつ実際の壜台軸線AX1を中心として回転することになる。以下、傾きθb1を壜台固有の第1の傾きと呼ぶ。これに対して、回転壜台12には、壜台固有のさらなる誤差として、ステージ15上に置かれるボトル2が、実際の壜台軸線AX1から傾きθb2をもって支持される誤差が生じることがある。この場合のボトル2の軸線をここでは支持軸線AXsと呼ぶ。図5では、ボトル2に固有の傾き誤差がない状態を想定して壜台固有の傾きが例示されている。したがって、支持軸線AXsの傾きθb2は、ボトル2自身の誤差に影響されない回転壜台12それ自身が持つ固有の誤差である。以下、傾きθb2を壜台固有の第2の傾きと呼ぶ。第1の傾きθb1は、壜台軸線AX1が基準軸線CXの回りの特定の方位に角度θb1で傾く誤差である。一方、第2の傾きθb2は、支持軸線Axsに、実際の壜台軸線AX1を中心とした振れ回り運動Wを生じさせる誤差である。したがって、仮にボトル軸線AX2に関してボトル固有の傾き誤差がないとしても、第1撮像位置P1のカメラ30から天面2bを撮像したとき、得られる天面2bの画像には、壜台固有の第1の傾きθb1と第2の傾きθb2とを複合した傾きの影響が現れる。
【0036】
一方、ボトル2のZ軸方向における位置の誤差は、回転壜台12に固有のZ軸方向における位置の誤差、及びボトル2自身が持つ天面2bのZ軸方向における位置の誤差が複合して発生する。回転壜台12の固有の誤差はステージ15の高さ調整機構が持つ誤差等に起因して発生する。ただし、検査で必要な精度からみてステージ15の高さの誤差の影響が無視し得るほど小さい場合、例えばステージ15の高さ調整が十分な精度で行われる場合には、回転壜台12のZ軸方向における位置は誤差要因として考慮することを要しない。
【0037】
3 標識部材の誤差要因
本形態では、上述したカメラ側及びボトル側のそれぞれの誤差要因によって画像中に生じる誤差を、カメラ30が撮像した標識部材40の第1基準点PR1、及び第2基準点PR2を利用して除去する。しかしながら、標識部材40それ自身にも、撮像方向及び撮像距離に誤差が生じる。例えば、第1撮像位置P1からの撮像時にはZ軸方向に対する標識部材40の傾きに起因する傾き誤差、及びZ軸方向における標識部材40の位置の誤差、第2撮像位置P2からの撮像時にはY軸方向に対する傾き誤差及び位置の誤差が同様に生じ得る。それらの誤差は、ボトル支持台10に対する標識部材40の取付誤差に起因して生じる。標識部材40の製造誤差も傾きの誤差要因となり得るが、標識部材40が機械加工や精密鋳造のように高精度が得られる製造法にて製造されることに鑑みれば、標識部材40それ自身の製造誤差は無視し得るほど小さいと考えてよい。
【0038】
次に、上述した要因で生じる誤差を除去するために行われる補正手順の一例を説明する。ここでいう「除去」は、誤差を完全に消去する場合のみならず、検査に必要な精度が確保される程度に誤差を減少させる場合も含む概念である。図6は補正手順の概略を示している。図6の例では、キャリブレーション処理F1、実測時の誤差検出処理F2、画像補正処理F3が順次実施される。そして、画像補正処理F3を経た画像を利用して、ボトル2の天面2bの内径等の特性値の測定処理F4が実施される。
【0039】
キャリブレーション処理F1は、検査装置1に固有に存在する誤差を検出し、その誤差を除去するための補正値を求める処理である。キャリブレーション処理F1は、基準点誤差検出処理F11と壜台誤差検出処理F12とを含む。基準点誤差検出処理F11は、上述した誤差要因のうち、カメラ30のレンズ歪による誤差、及び標識部材40の第1基準点PR1又は第2基準点PR2の傾き及び位置の誤差を検出し、その誤差を除去するために必要な補正値を取得する処理である。壜台誤差検出処理F12は、回転壜台12の傾き誤差を検出し、その誤差を除去するために必要な補正値を取得する処理である。キャリブレーション処理F1における各処理F11、F12は、要するに検査装置1に固有に存在する誤差、換言すれば、検査装置1の構成に由来して発生する機械的な誤差を検出し、それらの誤差を除去するための補正値を取得する処理として実施される。
【0040】
実測時の誤差検出処理F2は、検査対象のボトル2を実際に撮像する時点で生じるカメラ誤差を検出してその誤差の補正値を取得するカメラ誤差検出処理F21と、その撮像時に生じるボトル2に固有の誤差を検出してその誤差の補正値を取得するボトル誤差検出処理F22とを含む。これらの処理F21、F22は、キャリブレーション処理F1にて得られた補正値を用いても除去できない誤差を検出し、その補正値を取得する処理として実施される。例えば、実測時におけるカメラ誤差は、キャリブレーション処理F1の実施時におけるカメラ30の位置及び向きと、検査対象のボトル2を撮像するときのカメラ30の位置及び向きとのずれに起因して発生する。そのカメラ誤差は、ボトル2を撮像するごとに個別に発生する誤差である。実測時におけるボトル2に固有の誤差は、撮像時の撮像光軸AX3に対する検査対象のボトル2のボトル軸線AX2の傾き、ボトル2の天面2bのZ軸方向における位置のずれに起因して発生する。そのボトル2に固有の誤差は、検査対象のボトル2ごとに個別に発生する誤差である。画像補正処理F3は、キャリブレーション処理F1及び検出処理F2にて得られた補正値を利用して画像を補正する処理である。以下、各処理F1~F4を説明する。なお、画像の補正は、例えば誤差を含む画像中の各画素の位置を補正値に従って誤差が除去されるように変化させることにより実現されてよい。
【0041】
[キャリブレーション処理F1]
・基準点誤差検出処理F11
まず、キャリブレーション処理F1における基準点誤差検出処理F11を説明する。基準点誤差検出処理F11では、図7に示すように、標識部材40の第1標識部45上にキャリブレーションプレート100を置き、これを第1撮像位置P1に配置されたカメラ30で撮像する処理と、標識部材40の第2標識部46上にキャリブレーションプレート100を置き、これを第2撮像位置P2に配置されたカメラ30で撮像する処理とが実施される。なお、第1撮像位置P1におけるカメラ30の撮像方向や撮像距離には、仮の基準状態に対する誤差があってもよい。第2撮像位置P2における撮像時についても同様に仮の基準状態に対する誤差があってもよい。
【0042】
キャリブレーションプレート100は、一例として、図8に示すように位置関係が既知の複数の標点101が設けられたプレートである。標点101はカメラ30が撮像する画像中において識別可能な態様で設けられ、図示の例ではドット状である。各標点101の相互の距離は一定に設定されている。標点101は、第1撮像位置P1にあるときのカメラ30の視野のほぼ全域に存在するように設けられている。ただし、図8は標点101の一部の図示が省略されている。実際には、キャリブレーションプレート100の縦横に多数の標点101が一定間隔で並べて設けられる。キャリブレーションプレート100の厚さは、必要とされる検査精度からみて無視し得るほど小さいものとされる。あるいは、後述する処理においてキャリブレーションプレート100の厚みが撮像距離に与える影響を考慮した演算を行うことにより、キャリブレーションプレート100の厚みが特性値の測定に与える影響が除去されてもよい。
【0043】
第1撮像位置P1からキャリブレーションプレート100を撮像した場合、得られる画像中における標点101の相互の距離は、レンズ歪、及び標識部材40の3つの第1基準点PR1を含む平面、すなわち図2の三角形TRを含む平面の撮像光軸AX3に対する傾きに応じて変化する。その影響は標点101間の距離のばらつきとして出現する。したがって、標点101間の距離を画像から検出し、標点101間の距離が均一となるように画像を補正するための補正値を画像中の位置ごとに演算することができる。例えば、画像の中心部、すなわち撮像光軸AX3及びその近傍はレンズ歪やキャリブレーションプレート100の傾きの影響が最も小さいため、中心部の標点101間の距離を基準値として、画像中の各標点101間の距離がその基準値と一致するように画像中の各位置の補正値を求めることができる。ここで得られる補正値が第1撮像位置P1に関する基準点補正値となる。基準点補正値は、所定数の画素を単位として画像を複数の領域に分割し、領域ごとに位置を補正する値として求められてよい。そして、得られた基準点補正値を用いて画像中の各位置を補正すれば、標点101間の距離が一定に補正された画像を得ることができる。ここで得られる基準点補正値は、第1撮像位置P1のカメラ30が撮像した画像からレンズ歪、及び標識部材40の傾きの誤差を除去し、第1基準点PR1を結ぶ三角形TRが撮像光軸AX3と直交する方向から第1標識部45を撮像した画像を得るための補正値となる。
【0044】
また、基準点誤差検出処理F11では、補正後の画像、すなわち標点101間の距離が均一化された画像において、標点101間の画像中の距離とキャリブレーションプレート100の標点101間の実際の距離とを対比することにより、画像中の距離を実際の距離に換算するための換算係数を求めることができる。上記の基準点補正値を求めることにより、カメラ30や標識部材40の位置や向きに関し、上述した仮の基準状態に対する誤差が生じていても、その位置の誤差を除去して、画像中における第1基準点PR1間の距離等を求めることが可能である。これにより、カメラ30及び標識部材40のZ軸方向に関する位置の誤差も除去することができる。さらに、上記の換算係数を利用すれば、画像中の距離を実際の距離に換算することができる。
【0045】
第1撮像位置P1からキャリブレーションプレート100を撮像した画像に基づいて上記の基準点補正値及び換算係数が算出されることにより、以降の処理では、その撮像時におけるカメラ30の撮像光軸AX3を基準軸線CXと見做し、その撮像光軸AX3に対してボトル軸線AX2が平行な状態を第1撮像位置P1における撮像方向に関する基準状態とし、その撮像時における撮像距離を第1撮像位置P1の基準状態における撮像距離として見做すことができる。その基準状態は、ボトル2の天面2bをボトル軸線AX2と平行な方向から所定の撮像距離で撮像することにより、天面2bの内径等の特性値を正確に測定することが可能となる状態である。以下の説明では、この基準状態における撮像光軸AX3の方向が図4のZ軸方向に相当し、回転壜台12の設計上の壜台軸線AX1がZ軸方向と平行であるとする。なお、基準状態において、設計上の壜台軸線AX1は撮像光軸AX3と平行であれば足り、両者が同軸であることまでは不要である。
【0046】
基準点誤差検出処理F11において、第2撮像位置P2からキャリブレーションプレート100を撮像した場合も上記と同様である。すなわち、第2撮像位置P2のカメラ30が撮像した画像中における標点101の相互の距離は、レンズ歪、及び4つの第2標識部46を含む平面、すなわち図3の四角形RCを含む平面の撮像光軸AX3に対する傾きに応じて変化し、それらの影響は、標点101間の距離のばらつきとして出現する。したがって、標点101間の距離を画像から検出し、標点101間の距離が均一となるように画像を補正するための補正値を画像中の位置ごとに演算することができる。ここで得られる補正値が第2撮像位置P2に関する基準点補正値となる。その基準点補正値を用いて画像中の各位置を補正すれば、標点101間の距離が一定に補正された画像を得ることができる。この場合の基準点補正値も、所定数の画素を単位として画像を複数の領域に分割し、領域ごとに位置を補正する値として求められてよい。ここで得られる基準点補正値は、第2撮像位置P2のカメラ30が撮像した画像を、レンズ歪、及び標識部材40の傾きの誤差を除去して第2標識部46をそれらと直交する方向から撮像した画像に補正する値となる。
【0047】
また、第2撮像位置P2から撮像された画像を補正して得られた画像、すなわち標点101間の距離が均一化された画像において、標点101間の像の画像中の距離とキャリブレーションプレート100の標点101間の実際の距離とを対比することにより、画像中の距離を実際の距離に換算するための換算係数を求めることができる。上記の基準点補正値を求めることにより、標識部材40の位置や向きに誤差が生じていても、それらの誤差を除去して、画像中における第2基準点PR2間の距離等を求めることが可能である。これにより、第2撮像位置P2からの撮像時に関しても、標識部材40のY軸方向の位置の誤差を除去することができる。さらに、上記の換算係数を利用すれば、第2撮像位置P2からの撮像時においても、画像上の距離を実際の距離に換算することができる。
【0048】
第2撮像位置P2からキャリブレーションプレート100を撮像した画像に基づいて上記の基準点補正値及び換算係数が算出されることにより、以降の処理では、その撮像時におけるカメラ30の撮像光軸AX3を第2撮像位置P2の基準状態における撮像光軸AX3と見做し、かつその撮像時における撮像距離を第2撮像位置P2の基準状態における撮像距離L2と見做すことができる。なお、その基準状態において、設計上の壜台軸線AX1は第2撮像位置P2における撮像光軸AX3と直交する方向に延びていれば足り、両者が互いに交わる関係にあることまでは不要である。
【0049】
・壜台誤差検出処理F12
次に、壜台誤差検出処理F12を説明する。壜台誤差検出処理F12では、図4に示した基準ゲージ110が利用される。基準ゲージ110は、検査対象のボトル2の口部2aを製造誤差のない正しい形状及び寸法となるように再現した口部110aを有するものである。口部110aの軸線AXgの方向における天面110bの高さ、内径、真円度等の幾何学的な特性値は、製造誤差がないときのボトル2の口部2aにおける各種の特性値と一致する。
【0050】
壜台誤差検出処理F12では、基準ゲージ110を、その軸線AXgが、図5に示した回転壜台12の支持軸線AXsに対して平行となるようにして回転壜台12に置く。次いで、回転壜台12を所定の基準位置から一定角度、例えば22.5°ずつ一方向に回転させ、基準位置からの回転角ごとに基準ゲージ110の口部110aを第2撮像位置P2のカメラ30にて撮像する処理と、回転壜台12を回転させることなく静止させた状態で、第1撮像位置P1のカメラ30により基準ゲージ110の天面110bを撮像する処理とが実施される。第2撮像位置P2からの撮像で得られる画像の一例を図9に、第1撮像位置P1からの撮像で得られる画像の一例を図10にそれぞれ示す。
【0051】
図9に示す画像200は、上述した基準点誤差検出処理F11における第2撮像位置P2に関しての基準点補正値、すなわち、レンズ歪、及び標識部材40の第2基準点PR2の誤差を除去する補正値と、基準ゲージ110の撮像時におけるカメラ誤差を除去するカメラ誤差補正値とを利用して補正した画像である。また、図10に示す画像210は、基準点誤差検出処理F11における第1撮像位置P1に関しての基準点補正値、すなわち、レンズ歪、及び標識部材40の第1基準点PR1の誤差を除去する補正値と、基準ゲージ110の撮像時におけるカメラ誤差を除去するカメラ誤差補正値とを利用して補正した画像である。ここでいうカメラ誤差は、ロボットアーム20による位置決め誤差、あるいはカメラ30の振動の影響で、壜台誤差検出処理F12の撮像時におけるカメラ30のZ軸方向の位置、及びZ軸方向に対する傾きが、基準点誤差検出処理F11にて設定される基準状態からずれることによって生じるものである。カメラ誤差補正値は、第1撮像位置P1からの撮像時には、画像中に含まれている第1基準点PR1を利用して求められ、第2撮像位置P2からの撮像時には画像中に含まれている第2基準点PR2を利用して求められる。以下では、図11及び図12を参照して、カメラ誤差を検出してカメラ誤差補正値を求める手順を説明する。
【0052】
(カメラ誤差の検出)
図11は、第1撮像位置P1から基準ゲージ110の天面110bを撮像したときの第1基準点PR1の位置関係の一例を示したものである。ただし、図11では、基準点誤差検出処理F11で得られた第1撮像位置P1に関する基準点補正値を利用して、レンズ歪、及び標識部材40の第1基準点PR1に関する誤差が除去された状態にあると仮定する。基準ゲージ110の天面110bを第1撮像位置P1のカメラ30にて撮像する場合、そのカメラ30の撮像方向及び撮像距離は、基準点誤差検出処理F11における撮像時のカメラ30の撮像方向及び撮像距離とは必ずしも一致しない。例えば、ロボットアーム20によるカメラ30の位置決め誤差、あるいはカメラ30の振動により、撮像光軸AX3が基準軸線CX、すなわち基準点誤差検出処理F11における第1撮像位置P1のカメラ30の撮像光軸AX3に対して傾くように誤差が生じることがある。そのような傾きの誤差が生じると、第1基準点PR1を結ぶ三角形TRが本来の向き、すなわちZ軸方向と直交する向きから斜めに傾き、第1基準点PR1が図中に仮想線で示す本来の位置からずれて撮像される。
【0053】
そこで、第1撮像位置P1からの撮像時のカメラ誤差を検出するためには、図11の第1基準点PR1間の距離D11~D13が測定される。距離D11~D13は、撮像光軸AX3の傾き、換言すれば三角形TRの傾きと相関し、傾きの方向及び大きさに応じて距離D11~D13のそれぞれが個別に増加又は減少する。したがって、画像から得られる距離D11~D13をカメラ誤差がないと仮定したときの第1基準点PR1間の距離、すなわち基準状態における距離と比較すれば、カメラ30の撮像光軸AX3がどのような方向にどの程度傾いているかを傾き誤差として検出することができる。傾き誤差の検出結果に基づいて、カメラ30の傾き誤差を除去して、第1基準点PR1の位置を撮像光軸AX3の傾きがないと仮定したときの本来の位置に戻すために必要な傾き補正値を求めることができる。補正値は、基準点誤差検出処理F11で求めた基準点補正値と同様に、画像を複数領域に分割し、領域ごとに位置を補正する値として求めればよい。
【0054】
また、カメラ誤差には、上述した撮像光軸AX3の傾き誤差のみならず、カメラ30のZ軸方向における位置の誤差が含まれることがある。その誤差は基準点誤差検出処理F11にて設定される基準状態の撮像距離L1に対する誤差となる。そのような誤差が生じている場合、上述した距離D11~D13を撮像光軸AX3の傾き補正値で補正しても、補正後の距離D11~D13は、Z軸方向の位置のずれがないときに検出されるべき値に対し、撮像距離L1に対する誤差に応じて一律に拡大又は縮小する。したがって、傾き補正値で補正した距離D11~D13を本来検出されるべき距離と対比して距離の変化率、すなわち増加率又は減少率を求めれば、その変化率をカメラ30の位置の誤差を除去するための位置補正値として利用することができる。
【0055】
図12は、第2撮像位置P2から基準ゲージ110の口部110aを撮像したときの第2基準点PR2の位置関係の一例を示したものである。ただし、図12でも、基準点誤差検出処理F11で得られた第2撮像位置P2に関する基準点補正値を利用して、レンズ歪、及び標識部材40の第2基準点PR2に関する誤差が除去された状態にあると仮定する。基準ゲージ110の口部110aを第2撮像位置P2のカメラ30にて撮像する場合にも、カメラ30の撮像方向及び撮像距離は、基準点誤差検出処理F11にて実施した撮像時のカメラ30の撮像方向及び撮像距離とは必ずしも一致しない。例えば、上記と同様に、カメラ30の位置決め誤差や振動により、撮像光軸AX3が基準点誤差検出処理F11における第2撮像位置P2のカメラ30の撮像光軸AX3に対して傾くように誤差が生じることがある。そのような誤差が生じると、第2基準点PR2を結ぶ四角形RCが本来の向き、すなわちY軸方向と直交する向きから斜めに傾き、第2基準点PR2が図中に仮想線で示す本来の位置からずれて撮像される。
【0056】
そこで、第2撮像位置P2からの撮像時のカメラ誤差を検出する場合にも、図12の第2基準点PR2間の距離D21~D24が測定される。それらの距離D21~D24は、撮像光軸AX3の傾き、換言すれば四角形RCの傾きと相関し、傾きの方向及び大きさに応じて距離D21~D24のそれぞれが個別に増加又は減少する。したがって、画像から得られる距離D21~D24を、カメラ誤差がないと仮定したときの第2基準点PR2間の本来の距離と比較すれば、第2撮像位置P2に関する基準状態からカメラ30の撮像光軸AX3がどのような方向にどの程度傾いているかを検出することができる。その検出結果に基づいて、第2撮像位置P2からの撮像にも、カメラ30の傾き誤差を除去して、第2基準点PR2の位置を、撮像光軸AX3の傾きがないと仮定したときの本来の位置に戻すために必要な傾き補正値を求めることができる。傾き補正値は、基準点誤差検出処理F11で求めた基準点補正値と同様に、画像を複数領域に分割し、領域ごとに位置を補正する値として求められてよい。
【0057】
また、第2撮像位置P2からの撮像時においても、カメラ誤差は、上述した撮像光軸AX3の傾きによる誤差のみならず、撮像光軸AX3の方向におけるカメラ30の位置のずれによる誤差を含むことがある。その誤差は基準点誤差検出処理F11にて設定される撮像距離L2に対する誤差である。そのような誤差が生じている場合、上述した距離D21~D24を撮像光軸AX3の傾き補正値で補正しても、補正後の距離D21~D24は、位置のずれがないときに検出されるべき値に対し、撮像距離L2に対する誤差に応じて一律に拡大又は縮小する。したがって、傾き補正値で補正した距離D21~D24を本来検出されるべき距離と対比して距離の変化率、すなわち増加率又は減少率を求めれば、その変化率を撮像距離L2の誤差を除去するための位置補正値として利用することができる。なお、第2撮像装置P2におけるカメラ誤差の検出では、4つの第2基準点PR2に代えて、いずれか3つの第2基準点PR2を対象として、第1撮像装置P1におけるカメラ誤差の検出と同様に傾き補正値及び位置補正値を求めてもよい。
【0058】
以上のようにして求めた傾き補正値及び位置補正値と、基準点誤差検出処理F11で求めた基準点補正値とを用いれば、図9及び図10に示したように、検査装置1に固有に存在する誤差のうち、レンズ歪、及び標識部材40の誤差に加えて、撮像位置P1、P2におけるカメラ誤差も除去した画像が得られる。なお、これらの処理は、第2撮像位置P2から口部110aを撮像するごとに行われる。つまり、回転壜台12の回転角を変えて口部110aを撮像するたびに、カメラ誤差の検出、補正値の演算及び画像の補正を実施する必要がある。
【0059】
(壜台誤差の検出)
次に、壜台誤差の検出について図9及び図10を参照して説明する。図9から明らかなように、第2撮像位置P2のカメラ30から基準ゲージ110の口部110aを撮像した場合、得られる画像200において、口部110aに対応する画像201は、その軸線AXgが画像中の上下方向に対して傾いた状態で出現する。画像200における上下方向は、設計上の壜台軸線AX1の方向に対応する。基準ゲージ110には誤差がないため、基準ゲージ110が回転壜台12の支持軸線AXsに対して正確に平行に置かれていれば、画像201における軸線AXgの傾きは、図5に示した支持軸線AXsの傾きθbに対応する。
【0060】
図5に示した傾きθbには、上述したように振れ回り運動Wを生じさせる第2の傾きθb2が含まれている。そのため、回転壜台12を一定角度ずつ回転させたときに各回転角で得られる画像201上のゲージ軸線AXgの傾きは、第1の傾きθb1と第2の傾きθb2の両者を含んだものとなる。そこで、天面201bにおける所定位置、例えば、画像200中の左右の第2基準点PR2間を二等分する位置に配置された上下方向の測定線CL1と天面201bとの交点に測定点Pt1を設定すれば、その測定点Pt1は第2の傾きθb2に応じて上下方向に変位する。つまり、第2の傾きθb2と測定点Pt1との間には相関関係がある。ただし、測定点Pt1は、振れ回り運動Wに応じた変位を検出することが可能な位置に設定する必要がある。ここでは、測定線CL1と天面201bとの交点を測定点Pt1として設定しているが、測定線CL1は、壜台軸線AX1に傾きがないと仮定したときの設計上の壜台軸線AX1と平行であって、第1撮像位置P1における基準状態の撮像光軸AX3と平行である。そのような測定線CL1を設定すれば、測定点Pt1の高さh1に振れ回り運動Wと相関する変位を生じさせることができる。
【0061】
壜台誤差検出処理F12では、画像200に測定基準を設定し、その測定基準に対する測定点Pt1の位置の変化を検出する。そして、測定点Pt1の高さ位置の変化を手掛かりとして第2の傾きθb2を検出する。一例として、画像200において上側の第2基準点PR2を結ぶ水平線が、測定線である測定線CL1と直交する測定基準線HL1として設定される。そして、測定基準線HL1に対する測定点Pt1の上下方向における高さh1が測定される。その高さh1の変化量から、回転壜台12の支持軸線AXsの第2の傾きθb2を回転壜台12の回転角、すなわち図5の壜台軸線AX1の回りにおける回転角と対応付けて検出することができる。また、高さh1の変化から壜台軸線AX1の第1の傾きθb1が生じている方位も検出することが可能である。
【0062】
一方、高さh1の変化からは第1の傾きθb1の大きさを検出することができない。そこで、壜台誤差検出処理F12では、カメラ30を第1撮像位置P1に配置し、基準ゲージ110の天面110bを上方から撮像する処理も実施される。このとき、回転壜台12を回転させることは不要であり、回転壜台12は適宜の角度で固定される。第1撮像位置P1に配置したカメラ30にて基準ゲージ110の天面110bを撮像した画像の一例を図10に示す。図10の画像210は、上述したように、基準点誤差検出処理F11にて第1撮像位置P1から撮像した画像に基づいて得られる基準点補正値と、上述したカメラ誤差に関する傾き補正値及び位置補正値とを利用して、レンズ歪、標識部材40の第1基準点PR1の誤差、及びカメラ誤差を除去した画像である。
【0063】
図10に示した画像210においては、基準ゲージ110の天面110bに対応する画像211が、図5の傾きθb、すなわち第1の傾きθb1と第2の傾きθb2とを合計した支持軸線AXsの傾きθbに応じて楕円状に歪んだ状態で出現する。画像211の長軸方向は、共通軸線CXの回りにおける支持軸線AXsの方位と一致する。図10では、現実の画像211の例を実線で示している。一方、仮に、第1の傾きθb1がないとすれば、天面110bに対応する画像211は第2の傾きθb2のみを反映した楕円状に現れるはずである。その場合の画像211の例を図10では仮想線で示している。したがって、図10における実線の画像211と仮想線の画像211との差は、第1の傾きθb1に対応する画像211の歪と相関する。よって、実際の画像211における歪の程度を表す物理量として、例えば画像211の長径LD及び短径SDを測定し、その一方、図9の画像200から判別される第2の傾きθb2に基づいて、第1の傾きθb1がないと仮定したときの画像211の長径及び短径を比較値として演算する。そして、測定値と比較値とを対比することにより第1の傾きθb1の大きさを求めることができる。
【0064】
第1の傾きθb1の方位及び大きさ、並びに第2の傾きθb2を求めることにより、壜台軸線AX1の傾きθb1、及びその傾きθb1が生じている方位を検出し、かつ支持軸線AXsの壜台軸線AX1に対する傾きθb2の大きさを回転壜台12の方位に対応付けて検出することができる。そして、検出結果に基づいて、壜台軸線AX1の傾きθb1及び支持軸線AXsの傾きθb2を除去するための壜台補正値を求めることが可能である。それにより、検査装置1に固有に存在する誤差のうち、回転壜台12に固有の誤差を除去した画像を得ることができる。
【0065】
キャリブレーション処理F1にて基準点誤差検出処理F11及び壜台誤差検出処理F12が実施されることにより、上述した誤差要因のうち、検査装置1に固有の誤差、すなわち、カメラ30のレンズ歪、回転壜台12に固有の誤差、及び標識部材40の誤差のそれぞれを除去するための各種の補正値を取得することができる。それらの補正値を利用して、検査装置1に固有の誤差が除去されるように画像を補正することが可能である。
【0066】
キャリブレーション処理F1は、検査装置1に固有の誤差を検出するための処理である。したがって、検査装置1の回転壜台12、カメラ30、標識部材40といった機械的な構成に変更がない限り、キャリブレーション処理F1は検査装置1の構成後に一回実施すれば足りる。ただし、経時変化等を考慮して適宜の時期にキャリブレーション処理F1が実施されることは妨げられない。一方、検査装置1の少なくとも一部の構成が変更された場合には、変更後の検査装置1に対してキャリブレーション処理F1を実施すればよい。いずれにしても、検査対象の物品としての個々のボトル2を検査するたびにキャリブレーション処理F1を実施することは不要である。
【0067】
キャリブレーション処理F1の少なくとも一部は、検査精度に与える影響の程度に応じて適宜に省略することも可能である。例えば、レンズ歪の影響が無視できるほど小さく、かつ設計上の壜台軸線AX1に対する標識部材40の取付精度が十分に確保されている場合には、基準点誤差検出処理F11を省略することが可能である。回転壜台12が設計上の壜台軸線AX1に対して十分な精度で取り付けられている場合には、壜台誤差検出処理F12を省略することも可能である。また、回転壜台12に固有の誤差は、カメラ30の画像を利用する壜台誤差検出処理F12に代えて、ダイヤルゲージ等の測定機器を用いた機械的な測定方法によって検出されてもよい。
【0068】
[実測時の誤差検出F2]
次に、図6に示した実測時の誤差検出処理F2を説明する。誤差検出処理F2の段階では、キャリブレーション処理F1によって、検査装置1に固有の誤差を除去するための各種の補正値が既に得られている。一方、実際のボトル2を測定する場合には、誤差要因として、基準点誤差検出処理F11における撮像時と、ボトル2の撮像時との間におけるカメラ30のずれに起因するカメラ誤差、及びボトル2に固有の誤差とが新たに発生することがある。そこで、実測時の誤差検出処理F2では、ボトル2の撮像時におけるカメラ誤差を検出して当該誤差を除去するための補正値を取得するカメラ誤差検出処理F21と、ボトル2に固有の誤差を検出して当該誤差を除去するための補正値を取得するボトル誤差検出処理F22とが実施される。
【0069】
・カメラ誤差検出処理F21
カメラ誤差検出処理F21では、第1撮像位置P1のカメラ30からボトル2の天面2bを撮像し、得られた画像中に含まれている第1基準点PR1を利用してカメラ誤差を検出する。次いで、カメラ誤差の検出結果に基づいて、カメラ誤差を除去するための補正値を求める。この撮像時において回転壜台12を回転させることは不要であり、回転壜台12は適宜の角度で固定される。図13は、第1撮像位置P1からボトル2の天面2bを撮像したときの画像の一例を示すものである。ただし、図13の画像220は、キャリブレーション処理F1にて得られた各種の補正値を利用して、検査装置1に固有の誤差を除去するように補正された画像であると仮定する。
【0070】
ボトル2の天面2bを撮像する場合、壜台誤差検出処理F12における第1撮像位置P1からの撮像時と同様に、ロボットアーム20の位置決め誤差やカメラ30の振動により、撮像光軸AX3の傾き誤差、及びカメラ30の撮像距離L1の誤差が発生することがある。したがって、キャリブレーション処理F1で得られた補正値を利用して画像を補正しても、補正後の画像にはカメラ誤差の影響が生じることがある。それに伴って、画像220中の第1基準点PR1のそれぞれの位置が本来の位置からずれる。そのようなずれは、図11に例示した第1基準点PR1の位置のずれ、つまりは壜台誤差検出処理F12における第1撮像位置P1からの撮像時と同様の理由で生じるものである。したがって、カメラ誤差検出処理F21では、第1撮像位置P1のカメラ30が撮像した画像220中の第1基準点PR1の相互の距離が検出され、その検出結果に基づいて、カメラ誤差を除去するための傾き補正値及び位置補正値が求められる。それらの処理の手順は、壜台誤差検出処理F12におけるカメラ誤差の検出に関して図11を参照して説明した手順と同様である。その処理により、第1撮像位置P1からの撮像時における撮像光軸AX3の傾き誤差を除去するための傾き補正値と、撮影距離L1の誤差を除去するための位置補正値とが求められる。
【0071】
・ボトル誤差検出処理F22
ボトル誤差検出処理F22では、ボトル2が置かれた回転壜台12を所定の基準位置から一定角度、例えば22.5°ずつ一方向に回転させ、基準位置からの回転角、すなわち方位ごとにボトル2の口部2aを第2撮像位置P2のカメラ30にて撮像する処理が行われる。その処理は、壜台誤差検出処理F12における第2撮像位置P2からの撮像時と同様である。そして、得られた各回転角の画像に基づいてボトル軸線AX2の基準軸線CXに対する傾き誤差、及びボトル2の天面2bのZ軸方向の位置の誤差が検出される。それらの検出結果に基づいて、ボトル軸線AX2の傾き誤差を除去するためのボトル誤差補正値として、傾き誤差を補正するための傾き補正値と、ボトル2の天面2bのZ軸方向における位置の誤差を除去するための高さ補正値とが求められる。
【0072】
図14は、第2撮像位置P2からボトル2の口部2aを撮像したときに得られる画像の一例を示している。ただし、図14の画像230は、キャリブレーション処理F1で得られた補正値を利用して検査装置1に固有の誤差が除去され、かつ第2撮像位置P2からのボトル2の撮像時に発生するカメラ誤差が除去された状態にあるものと仮定する。この場合のカメラ誤差は、キャリブレーション処理F1で設定された第2撮像位置P2に関しての基準状態に対する撮像光軸AX3の傾き誤差、及び撮像距離L2の誤差として現れるものである。それらの誤差は、壜台誤差検出処理F12にて基準ゲージ110の口部110aを第2撮像位置P2から撮像する場合のカメラ誤差と同様の理由で生じる。したがって、ボトル誤差検出処理F22では、第2撮像位置P2のカメラ30が撮像した画像中の第2基準点PR2の相互の距離が検出され、その検出結果に基づいてカメラ誤差を除去するための傾き補正値及び位置補正値が求められる。それらの処理の手順は、壜台誤差検出処理F12のカメラ誤差の検出に関して図12を参照して説明した手順と同様である。その処理により、第2撮像位置P2からの撮像時における撮像光軸AX3の傾き誤差を除去するための傾き補正値と、撮影距離L2の誤差を除去するための位置補正値とが求められる。それらの補正値を用いれば、第2撮像位置P2からボトル2を撮像する場合にも、カメラ誤差を除去した画像が得られる。これらの処理は、第2撮像位置P2から口部2aを撮像するごとに行われる。つまり、回転壜台12の回転角を変えて口部2aを撮像するたびに、カメラ誤差の検出、補正値の演算及び画像の補正が実施される。
【0073】
カメラ誤差の補正値が求められ、その補正値を利用して図14の画像230が得られた後、ボトル誤差検出処理F22では、各回転角で得られた口部2aに対応する画像231上の天面231bにおける所定位置、例えば、画像230中の左右の第2基準点PR2間を二等分する位置に配置された上下方向の測定線CL2と天面231bとの交点に測定点Pt2が設定される。そして、画像230上の所定の測定基準、例えば上側の第2基準点PR2を結ぶ水平線である測定基準線HL2に対する測定点Pt2の上下方向における高さh2が測定される。この場合の中心線CL2は、傾き誤差がないと仮定したときのボトル軸線AX2と平行であって、第1撮像位置P1の基準状態における撮像方向、すなわち撮像光軸AX3と平行な測定線の一例に相当する。測定点Pt2はその測定性上における天面2bの位置に相当する。測定基準線HL2はその測定線と直交する測定基準線の一例に相当する。
【0074】
高さh2の変化量から、ボトル軸線AX2のZ軸方向に対する傾き誤差を、回転壜台12の回転角と対応付けて検出することができる。また、高さh2の平均値を、ボトル2の天面2bの位置に関してZ軸方向の誤差がないと仮定したときに検出されるべき高さ、例えば天面2bを第1標識部45の上面と一致させたときの測定点Pt2の高さと比較することにより、ボトル2の天面2bのZ軸方向における高さの誤差も検出することができる。そして、それらの傾き誤差と高さ誤差とを画像から除去するための傾き補正値、及び高さ補正値をボトル誤差の補正値として演算することができる。
【0075】
上述した壜台誤差検出処理F12では、壜台誤差を検出するために第1撮像位置P1から撮像した画像も利用したが、ボトル誤差検出処理F22ではそのような処理は不要である。壜台誤差検出処理F12によって回転壜台12に固有の壜台軸線AX1の傾き誤差、及び支持軸線AXsの傾き誤差を除去するための壜台補正値が得られており、その補正値を利用すれば回転壜台12に固有の傾き誤差が除去された画像を得ることができる。したがって、ボトル誤差検出処理F22では、キャリブレーション処理F1で設定される基準軸線CXに対するボトル軸線AX2の傾き誤差を検出すれば足りる。そして、高さh2の変化からその傾き誤差は回転壜台12の回転角と対応付けて検出することが可能である。
【0076】
以上のように、実測時の誤差検出処理F2のカメラ誤差検出処理F21及びボトル誤差検出処理F22が実施されることにより、上述した誤差要因のうち、検査装置1に固有の誤差が除去されるように画像を補正してもなお残存する誤差であるカメラ誤差及びボトル2に固有の誤差のそれぞれを除去するための補正値を取得することができる。したがって、キャリブレーション処理F1で得られる補正値と、実測時の誤差検出処理F2で得られる補正値とを利用すれば、上述した誤差要因の全てを除去し、基準点誤差検出処理F11にて設定される基準状態に従って天面2bを撮像した正確な画像、すなわちボトル2の天面2bをボトル軸線AX2と平行な方向から所定の撮像距離で撮像した画像を得ることが可能である。
【0077】
[画像補正処理F3及び特性値測定処理F4]
画像補正処理F3は、上記のキャリブレーション処理F1及び実測時の誤差検出処理F2で得られた補正値を利用して、カメラ誤差検出処理F21で撮像した画像を、全ての誤差要因が除去されるように補正する処理である。補正された画像の一例を図15に示す。画像240の補正前の状態では、天面2bの画像241が各種の誤差の影響によって仮想線で示すように歪んだ画像として出現するところ、補正後は各種の誤差による歪が除去されて実線で示すように画像241が補正される。特性値測定処理F4では、補正後の画像241を用いて天面2bの内径や真円度といった特性値が測定される。その測定は、一例として、天面2bの内周のエッジを検出し、そのエッジの内径等の特性値をキャリブレーション処理F1で求めた画像上の距離の補正値、すなわち、画像上の距離を実際の距離に換算する係数を利用して測定する。さらに、その測定値が所定の精度を満たすか否かが特性値測定処理F4で判別されてもよい。
【0078】
次に、図1の制御装置50を利用して上記の各処理を実行するための処理手順の一例を説明する。図16は、図6の基準点誤差検出処理F11を実行するための処理手順の一例を示している。図16の処理が行われる場合には、予め、キャリブレーションプレート100が標識部材40の第1標識部45、又は第2標識部46に重なるように配置される。図16の基準点誤差検出処理が開始されると、まず制御装置50のアーム制御部51は、ステップS101にてカメラ30を所定の撮像位置に移動させる。第1標識部45に重ねてキャリブレーションプレート100が配置される場合はカメラ30が第1撮像位置P1に、第2標識部46に重ねてキャリブレーションプレート100が配置される場合はカメラ30が第2撮像位置P2にそれぞれ配置される。
【0079】
次に、ステップS102にて撮像制御部52はカメラ30に撮像を指示し、得られた画像を画像処理部53に引き渡す。画像が取得されると、画像処理部53はステップS103にてキャリブレーションプレート100の標点101間の距離を検出する。続くステップS104にて、画像処理部53は、標点101間の距離の検出値を実際の標点101間の距離と対比して基準点補正値を演算する。上述したように、基準点補正値は、第1撮像位置P1又は第2撮像位置P2のカメラ30が撮像した画像を、レンズ歪、及び標識部材40の傾きの誤差を除去するための補正値である。
【0080】
基準点補正値が演算されると、画像処理部53は、その基準点補正値を用いてステップS102で取得した画像を補正する。続くステップS106にて、画像処理部53は、補正後の画像における標点101間の画像中の距離を、キャリブレーションプレート100の実際の標点101間の距離に換算するための換算係数を演算する。その後、画像処理部53は今回演算された基準点補正値及び換算係数を、ステップS101で配置したカメラ30の撮像位置、すなわち第1撮像位置P1又は第2撮像位置P2に関する基準点補正値及び換算係数として制御装置50の記憶装置に記憶させ、その後に図16の処理を終える。
【0081】
図16の基準点誤差検出処理は、ステップS101におけるカメラ30の位置を、第1撮像位置P1と第2撮像位置P2との間で切り替えるようにして、少なくとも2回に亘って実行される。それにより、第1撮像位置P1及び第2撮像位置P2のそれぞれに関する基準点補正値及び換算係数を求めることができる。なお、同一の撮像位置において、撮像光軸AX3の回りにキャリブレーションプレート100の向きを変えながら複数回に亘って図16の処理を繰り返し、各回の撮像に対応して得られた基準点補正値や換算係数の平均を求めるといった手法により、基準点補正値及び換算係数を確定させてもよい。
【0082】
図17及び図18は、図6の壜台誤差検出処理F12を実行するための処理手順の一例を示している。図17及び図18の壜台誤差検出処理は、回転壜台12に図4の基準ゲージ110が配置された状態で行われる。基準点誤差検出処理が開始されると、まず制御装置50のアーム制御部51は、図17のステップS111にてカメラ30を第2撮像位置P2に移動させる。次のステップS112において、制御装置50の画像処理部53は、回転壜台12がその回転方向における所定の初期位置にあることを確認する。この場合、回転壜台12がステージ15を任意の回転角に駆動する機能を有していれば、制御装置50によって回転壜台12の回転を制御して初期位置に停止させればよい。検査装置1のオペレータに手作業による初期位置への回転を指示し、オペレータの確認操作によって初期位置を確認してもよい。
【0083】
回転壜台12の初期位置が確認されると、ステップS113に処理が進められる。ステップS113において、制御装置50の撮像制御部52はカメラ2に撮像を指示し、得られた画像を画像処理部53に引き渡す。画像が取得されると、画像処理部53はステップS114にてカメラ誤差検出処理を実行する。カメラ誤差検出処理は、ステップS113の撮像時におけるカメラ誤差を検出するための処理である。その処理は、図11及び図12を参照して説明したように、第1撮像位置P1からの撮像時には第1基準点PR1間の距離、第2撮像位置P2からの撮像時には、第2基準点PR2間の距離に基づいてカメラ30の傾きの誤差及び位置の誤差を検出し、検出結果からカメラ誤差を補正するための傾き補正値及び位置補正値を求める処理である。ステップS114では、第2撮像位置P2に関する傾き補正値及び位置補正値が求められる。カメラ誤差検出処理の手順は、サブルーチン処理として後述する。
【0084】
次のステップS115において、画像処理部53は、図16の基準点誤差検出処理で得られた第2撮像位置P2における基準点補正値と、図17のステップS114におけるカメラ誤差検出処理で得られた傾き補正値及び位置補正値とを利用して、ステップS113で取得した画像を補正する。これにより、図9に例示した画像200のように、レンズ歪、標識部材の誤差及びステップS113の撮像時におけるカメラ誤差を除去した口部110aの側面視の画像201が得られる。
【0085】
続くステップS116において、画像処理部53は、ステップS115で補正された画像を用いて図9の測定点Pt1の高さh1を検出し、その検出値を記憶する。次のステップS117にて、画像処理部53は、ステップS113~ステップS116の処理が基準ゲージ110の全周に関して完了したか否かを判別する。完了していない場合、画像処理部53は、ステップS118にて、回転壜台12の回転角に関して次の角度を指示し、次の回転角への回転が完了したことを確認してステップS113の処理に戻る。この場合の回転壜台12の回転は、ステップS112の場合と同様に回転壜台12の回転駆動によって実現されてもよいし、オペレータによる手作業で実現されてもよい。
【0086】
ステップS117が肯定判断されるまでステップS113~S118の処理が繰り返されることにより、基準ゲージ110の口部110aを一定角度ずつ回転させたときの側面視の画像が取得されて測定点Pt1の高さh1が回転角ごとに取得される。ステップS117が肯定判断されると、画像処理部53はステップS119に進み、これまでの処理で得られた回転角ごとの高さh1の値に基づいて回転壜台12に固有の傾き誤差を検出する。この場合に検出される傾き誤差は、図5に例示した支持軸線AXsの第2の傾きθbの大きさと、壜台軸線AX1がもつ第1の傾きθb1が生じている方位である。
【0087】
ステップS119にて傾きが検出されると、画像処理部53はその検出結果をステップS120で記憶し、その後に図18のステップS121へと進む。ステップS121では、アーム制御部51がカメラ30を第1撮像位置P1に移動させる。この処理は、一例として、画像処理部53にて図17のステップS120の処理が完了したことをアーム制御部51の通知し、その通知に対応してアーム制御部51がカメラ30を移動させるものとしてもよい。ステップS121以下の処理において、回転壜台12の回転角はステップS117が肯定判断された時点における角度であってもよいし、他の角度であってもよい。いずれにしても回転壜台12は一定位置で停止していればよい。
【0088】
ステップS121にてカメラ30が第1撮像位置P1に配置されると、ステップS122にて制御装置50の撮像制御部52はカメラ2に撮像を指示し、得られた画像を画像処理部53に引き渡す。画像が取得されると、画像処理部53はステップS123にてカメラ誤差検出処理を実行する。このカメラ誤差検出処理は、第1撮像位置P1から撮像した画像に含まれる第1基準点PR1の位置関係を利用する点を除いて、図17のステップS114と同様である。ステップS123の処理により、第1撮像位置P1に関する傾き補正値及び位置補正値が求められる。
【0089】
次のステップS124において、画像処理部53は、図16の基準点誤差検出処理で得られた第1撮像位置P1における基準点補正値と、ステップS123で得られる傾き補正値及び位置補正値とを利用して、ステップS122で取得した画像を補正する。これにより、図10に例示したように、レンズ歪、標識部材の誤差及びステップS113の撮像時におけるカメラ誤差を除去した基準ゲージ110の天面110bの画像211、ここでは図10に実線で示した画像211が得られる。
【0090】
続くステップS125において、画像処理部53は、ステップS124で補正した画像に基づいて、画像211の歪の程度を表す長径や短径等の物理量を測定する。その後、画像処理部53はステップS126に進み、ステップS125で得られた測定値と、ステップS119で検出した傾きの大きさを示す値とを利用して、図5の第1の傾きθb1に相当する壜台軸線AX1の傾き誤差を検出する。以上により、壜台軸線AX1の傾きθb1、壜台軸線AX1に対する支持軸線AXsの傾きθb2が検出されるため、次のステップS127にて、画像処理部53は、傾きθb1、θb2の検出結果を利用して、それらの傾きθb1、θb2を除去するための壜台補正値を演算する。続くステップS128にて、画像処理部53は演算された壜台補正値を記憶し、その後に壜台誤差検出処理を終える。
【0091】
図19は、画像処理部53が実行するカメラ誤差検出処理の手順の一例を示している。そのカメラ誤差検出処理は、処理対象となる画像が異なる点を除いて、図17のステップS114又は図18のステップS123のいずれかのサブルーチン処理として実行されるかを問わず手順は共通である。また、図19のカメラ誤差検出処理は、さらに後述する図20の実測時の誤差検出処理でもサブルーチン処理として実行されるものである。
【0092】
画像処理部53は、図19のカメラ誤差検出処理を開始すると、まずステップS201にて処理対象の画像中の基準点を検出する。図17のステップS114のサブルーチン処理の場合は第2標識部46の第2基準点PR2が、図18のステップS123のサブルーチン処理の場合は第1標識部45の第1基準点PR1が検出される。第1基準点PR1、PR2の検出は、一例として、第1標識部45又は第2標識部46の外周の輪郭を識別し、それらの標識部45、46の中心点を幾何学的に求めることによって検出することができる。
【0093】
次のステップS202において、画像処理部53はステップS201で検出した基準点間の距離を検出する。続くステップS203にて、画像処理部53は、基準点間の距離の検出結果に基づいて、撮像光軸AX3の基準状態に対する傾き誤差を検出する。傾き誤差が検出されると、画像処理部53はステップS204に進み、傾き誤差の検出結果に基づいて撮像光軸AX3の傾き誤差を除去するために必要な傾き補正値を演算する。傾き誤差の検出、及び傾き補正値の演算は、図11及び図12を参照して説明した通りに行えばよい。傾き補正値が演算されると、画像処理部53は、得られた傾き補正値を利用して、ステップS202で検出した基準点間の距離を補正する。続くステップS206にて、画像処理部53は補正後の基準点間の距離を、カメラ誤差がない場合に検出されるべき本来の距離と対比し、基準状態における撮像距離L1又はL2に対する誤差である位置誤差を除去するための位置補正値を演算する。
【0094】
位置補正値が演算されると、画像処理部53はステップS204で演算した傾き補正値、及びステップS207で演算した位置補正値をステップS208にて記憶し、その後に図19のカメラ誤差検出処理を終える。図19の処理は、第1撮像位置P1又は第2撮像位置P2のいずれかで画像が撮像されるごとに、その時点で得られた画像を処理対象として実行される。例えば、図17のステップS114のサブルーチン処理として実行される場合には、その前のステップS113で撮像された第2撮像位置P2からの画像が処理対象となり、図18のステップS123のサブルーチン処理として実行される場合にはその前のステップS122で撮像された第1撮像位置1からの画像が処理対象となる。したがって、図19のステップS204、S207で演算される補正値は、第1撮像位置P1又は第2撮像位置P2にて画像を撮像した時点で発生していたカメラ誤差に対応するものとなる。
【0095】
図20は、図6の実測時の誤差検出処理F2を実行するための処理手順の一例を示している。図20の処理は、検査対象のボトル2が回転壜台12上に設置されるごとに行われる処理である。図20の誤差検出処理が開始されると、まず制御装置50のアーム制御部51は、ステップS141にてカメラ30を第1撮像位置P1に移動させる。カメラ30が第1撮像位置P1に配置されると、ステップS142にて制御装置50の撮像制御部52はカメラ2に撮像を指示し、得られた画像を画像処理部53に引き渡す。画像が取得されると、画像処理部53はステップS143にてカメラ誤差検出処理を実行する。この処理は、ステップS142で取得した第1撮像位置P1からの画像を処理対象として、図19に示したカメラ誤差検出処理をサブルーチン処理として実行するものであって、ステップS142の画像を撮像した際のカメラ誤差に対応する傾き補正値及び位置補正値を求めるものである。ステップS143にて実行されるカメラ誤差検出は、図6のカメラ誤差検出処理F21に対応する。
【0096】
ステップS143のカメラ誤差検出処理が終わると、次のステップS144において、制御装置50のアーム制御部51はカメラ30を第2撮像位置P2に移動させる。カメラ30が第2撮像位置P2に配置されると、次のステップS145において、制御装置50の画像処理部53は、回転壜台12がその回転方向における所定の初期位置にあることを確認する。この処理は、図17のステップS112と同様に実行されてよい。回転壜台12の初期位置が確認されると、ステップS146に処理が進められる。
【0097】
ステップS146において、制御装置50の撮像制御部52はカメラ2に撮像を指示し、得られた画像を画像処理部53に引き渡す。画像が取得されると、画像処理部53はステップS147にてカメラ誤差検出処理を実行する。この処理は、ステップS146で取得した第2撮像位置P2における画像を処理対象として、図19に示したカメラ誤差検出処理をサブルーチン処理として実行するものであって、ステップS146の画像を撮像した際のカメラ誤差に対応する傾き補正値及び位置補正値を求めるものである。
【0098】
次のステップS148において、画像処理部53は、図16の基準点誤差検出処理で得られた第2撮像位置P2における基準点補正値と、図17及び図18の壜台誤差検出処理で得られた壜台補正値とを利用して検査装置1に固有の誤差を除去し、かつステップS147のカメラ誤差検出処理で得られた傾き補正値及び位置補正値とを利用して、ステップS146で取得した画像の撮像時におけるカメラ誤差を除去するように画像を補正する。これにより、図14に例示した画像230のように、検査装置1に固有の誤差、及び、画像230の撮像時に生じたカメラ誤差を除去した口部2aの側面視の画像231が得られる。
【0099】
続くステップS149において、画像処理部53は、ステップS148で補正された画像を用いて図14の測定点Pt2の高さh2を検出し、その検出値を記憶する。次のステップS150にて、画像処理部53は、ステップS146~ステップS149の処理がボトル2の全周に関して完了したか否かを判別する。完了していない場合、画像処理部53は、ステップS151にて、回転壜台12の回転角に関して次の角度を指示し、次の回転角への回転が完了したことを確認してステップS146の処理に戻る。この場合の回転壜台12の回転は、ステップS142の場合と同様に回転壜台12の回転駆動によって実現されてもよいし、オペレータによる手作業で実現されてもよい。
【0100】
ステップS150が肯定判断されるまでステップS146~S151の処理が繰り返されることにより、ボトル2の口部2aを一定角度ずつ回転させたときの側面視の画像が取得されて測定点Pt2の高さh2が回転角ごとに取得される。ステップS150が肯定判断されると、画像処理部53はステップS152に進み、これまでの処理で得られた回転角ごとの高さh2の値に基づいてボトル誤差を検出する。ここで検出されるボトル誤差は、図14を参照して説明したように、ボトル2に固有に発生するボトル軸線AX2のZ軸方向に対する傾き誤差と、ボトル2の天面2bのZ軸方向における位置の誤差の両者を含む。
【0101】
ボトル誤差が検出されると、画像処理部53はステップS153にて、ボトル誤差を除去するための補正値を演算する。ここで演算される補正値は、ボトル軸線AX2の傾き誤差を除去するための傾き補正値、及びボトル2の天面2bの高さ誤差を除去するための高さ補正値である。ステップS153で補正値が演算されると、画像処理部53はステップS154にて演算結果を記憶し、その後に図20の処理を終える。図20のステップS144~S153は、図6のボトル誤差検出処理F22に対応する。
【0102】
図21は、図6の画像補正処理F3及び検査処理F4を実行するための測定処理の手順の一例を示している。図21の測定処理は、同一の画像を対象として、図20の誤差検出処理と対応付けて実行される。すなわち、図20のステップS142にて取得される画像、つまり検査対象のボトルの天面2bを第1撮像位置P1のカメラ30にて撮像した画像を処理対象として図21の処理が実行される。図21の測定処理が開始されると、まず画像処理部53は、図16の基準点誤差検出処理、図17及び図18の壜台誤差検出処理のそれぞれで得られた補正値、すなわち検査装置1に固有の誤差を除去するための補正値と、図20の誤差検出処理で得られた補正値、すなわちステップS142の撮像時におけるカメラ誤差を補正するための傾き補正値及び位置補正値、並びにボトル誤差補正値とを記憶装置から読み出す。続くステップS162にて、画像処理部53は、図17のステップS142で撮像された画像を処理対象として取得する。
【0103】
次のステップS163にて、画像処理部53は、ステップS162で取得した画像を、ステップS161で読み出した各種の補正値を利用して補正する。その補正は、検査装置1に固有の誤差、及び処理対象のボトル2を撮像したときのカメラ誤差、及びボトル2に固有の傾き誤差及び高さ誤差の全てが除去されるように画像を補正するものである。図15の例であれば、天面2bに対応する画像241を仮想線の状態から実線の状態へと補正する処理となる。補正が完了すると、画像処理部53は、補正後の画像を検査部54に引き渡す。
【0104】
続くステップS164にて、検査部54は、補正後の画像における天面2bの内径や真円度等の特性値を検出する。その後、検査部54はステップS165に進み、図16のステップS106で求められた換算係数を記憶装置から読み出し、その換算係数を利用して、ステップS164で検出した特性値を内径等の特性値の測定値に換算する。さらに、検査部54は、ステップS166において、特性値の測定値が所定の精度基準を満たしているか否かを判別することによって特性値の適否を検査し、続くステップS167にて検査結果を記憶装置に記憶し、モニタ等の所定の出力先に検査結果を出力する。その後、制御装置50は図21の処理を終える。
【0105】
以上の処理において、図21のステップS163で補正された画像は、天面2bを第1撮像位置P1から撮像した際に生じる誤差、すなわち、カメラ30のZ軸方向に対する傾き誤差やZ軸方向における位置誤差、ボトル軸線AX2のZ軸方向に対する傾き誤差、天面2bのZ軸方向における位置の誤差が除去されたものである。加えて、検査装置1に固有の誤差である、レンズ歪、回転壜台12の壜台軸線AX1や支持軸線AXsの傾き誤差、さらには標識部材40の誤差も図16図18の処理を通じて画像から除去される。したがって、ステップS164の処理では、天面2bの内径、真円度といった特性値を正確に測定することが可能である。
【0106】
以上の形態において、図20のステップS141、S142の処理は、検査領域としての天面2bを第1基準点PR1が含まれるようにカメラ30に撮像させる手順の一例に相当し、アーム制御部51及び撮像制御部52は、その手順を実行する手段の一例として機能する。図20のステップS144~S146、S150、S151の処理は、ボトル2の口部2aの側面視の画像をカメラ30に撮像させる手順の一例に相当し、アーム制御部51及び撮像制御部52は、その手順を実行する手段の一例として機能する。
【0107】
第1撮像位置P1からの天面2bの撮像に関連付けて行われる各種の処理のうち、図20のステップS143のサブルーチン処理として実行されるときの図19のS201~S207の処理は、第1基準点PR1間の距離に基づいて、誤差を天面2bの画像から除去するための補正値を演算する手順の一例に相当する。その場合、図19のステップS203、S206の処理は、天面2bの撮像時におけるカメラ30の誤差を検出する手順の一例に相当し、そのステップS203の処理は傾き誤差を検出する手順の一例に相当し、ステップS206の処理は、位置誤差を検出する手順の一例に相当する。また、ステップS143のサブルーチン処理として実行されるステップS204、S207の処理はカメラ誤差補正値を演算する手順の一例に相当し、そのステップS204の処理は傾き補正値を演算する手順の一例に相当し、ステップS207の処理は位置補正値を演算する手順の一例に相当し、ステップS205の処理は傾き補正値に基づいて第1基準点PR1間の距離を傾き誤差が除去されるように補正する手順の一例に相当する。さらに、図21のステップS163の処理は、天面2bの画像を誤差が除去されるように補正する手順の一例に相当する。画像処理部53は、第1撮像位置P1からの画像に関連する上記手順を実現するための手段の一例として機能する。
【0108】
第2撮像位置P1からの口部2aの撮像に関連して行われる各種の処理のうち、図20のステップS147~S149の処理は、天面2bの位置を検出する手順の一例に相当し、図21のステップS152、S153の処理は、ボトル誤差を天面2bの画像から除去するためのボトル誤差補正値を演算する手順の一例に相当する。その場合、図20のステップS147のサブルーチン処理として実行されるときの図19のS201~S207の処理は、第1基準点PR2間の距離に基づいて、側面視の画像に関する補正値を演算する手順の一例に相当し、そのステップS203、S206の処理は側面視の画像に関するカメラ30の誤差を検出する手順の一例に相当し、ステップS204、S207の処理は、側面視の画像に関するカメラ誤差補正値を演算する手順の一例に相当し、ステップS203の処理は側面視の画像に関する傾き誤差を検出する手順の一例に相当し、ステップS206の処理は側面視の画像に関する位置誤差を検出する手順の一例に相当する。また、ステップS147のサブルーチン処理として実行されるステップS204、S207の処理は側面視の画像に関するカメラ誤差補正値を演算する手順の一例に相当し、そのステップS204の処理は側面視の画像に関する傾き誤差を除去するための傾き補正値を演算する手順の一例に相当し、ステップS207の処理は側面視の画像に関する位置誤差を除去するための位置補正値を演算する手順の一例に相当し、ステップS205の処理は、側面視の画像に関する傾き誤差が除去されるように第2基準点PR2間の距離を補正する手順の一例に相当する。画像処理部53は、第2撮像位置P2からの画像に関連する上記手順を実現するための手段の一例として機能する。
【0109】
本発明は、上述した形態に限定されず、各種の変形が施された形態にて実施されてよい。以下、幾つかの変形例について説明する。図22及び図23は標識部材の変形例を示している。図22及び図23の標識部材40Aは、ベース41及びアーム42のそれぞれの上面41a、42aに多数の第1基準点PR1が配置され、かつアーム42の先端面42bにも多数の第2基準点PR2が配置されている。第1基準点PR1間の相互の距離は既知であり、第2基準点PR1間の相互の距離も既知である。全ての第1基準点PR1は同一平面上にあり、その平面と直交する同一平面上に全ての第2基準点PR2が置かれている。
【0110】
標識部材40Aを用いる場合には、第1基準点PR1、第2基準点PR2はカメラ30で撮像した画像中で明確に識別できる限りにおいて、刻印、印刷その他の適宜の手法で形成されてよい。標識部材40Aを用いた各種の処理では、ベース41の上面41aの第1基準点PR1の群、及び左右のアーム42のそれぞれの上面42aの第1基準点PR1の群から少なくとも1つずつ第1基準点PR1を選択することによって3つ以上の第1基準点PR1を確保し、左右のアーム42の先端面42bのそれぞれにおける第2基準点PR2の群の一方で少なくとも2つの第2基準点PR2を、他方で少なくとも1つの第2基準点PR2を選択することによって3つ以上の第2基準点PR2を確保することが可能である。
【0111】
上記の形態では、図16図18の処理によって図6のキャリブレーション処理F1を実現して検査装置1に固有に生じる誤差も画像から除去している。しかしながら、キャリブレーション処理F1は、検査に必要な精度が確保できる限りにおいて適宜に省略されてもよい。例えば、標識部材40の取付誤差、回転壜台12の製造誤差や組立誤差が十分に小さい場合はキャリブレーション処理F1を省略可能である。あるいは、測定機器を用いて検査装置1に固有の誤差を予め検出できる場合には、検出された誤差に対応する補正値を予め演算し、演算された補正値を制御装置50に与えれば、図16図18の処理は省略可能である。
【0112】
実測時の誤差検出処理F2に関しても、図21の手順で実施されることを必ずしも要しない。例えば、図20の処理では、第1撮像位置P1からの撮像に関連するステップS141~S143を先に実行し、次いで第2撮像位置P2からの撮像に関連するステップS144~S154を実行し、その後にステップS161以下の処理を実行して第1撮像位置からの画像の補正等を実行しているが、ステップS144~S154の処理を先行して実行し、その後にステップS141~S143の処理、及びステップS161以下の処理を実行するように処理の順序を変更してもよい。
【0113】
上記の形態では、ボトル2の天面2bにおける特性値の測定に影響を与えるボトル固有の誤差として、ボトル軸線AX2の傾き誤差及び天面2bの位置誤差を検出し、それらの誤差を除去するための補正値を演算して画像の補正で利用したが、ボトル2に固有の誤差を考慮する必要がない場合、あるいはその誤差が検査精度に与える影響が無視し得るほど小さい場合等には、ボトル2に固有の誤差に関連するステップS144~S154の処理を省略してもよい。その場合、ステップS141~S143の処理、及びステップS161以下の処理を実行して、第1撮像位置P1からの撮像時におけるカメラ誤差が除去されるように画像を補正すればよい。キャリブレーション処理F1も省略可能な場合には、最低限の処理として、第1基準点PR1を含んだ画像を第1撮像位置P1のカメラ30にて撮像し、得られた画像に対して図19のカメラ誤差検出処理を実行してカメラ誤差を除去するための補正値を演算し、演算された補正値に基づいてカメラ誤差を除去すればよい。
【0114】
上記の形態では、ロボットアーム20にてカメラ30を移動させている。したがって、カメラ誤差として、カメラ30それ自身の位置決め誤差、振動等に起因して生じるカメラ30の撮像方向や撮像距離のずれを例示した。しかしながら、カメラ誤差は、被写体である天面2b等に対するカメラ30の相対的な位置や向きの誤差であって、カメラ30それ自身の位置ずれ等を原因とする例に限られない。ボトル2側の振動、位置決め誤差によりボトル2から見たカメラ30の位置や向きに誤差が生じる場合も、それらの誤差をカメラ誤差の一種に含めてよい。例えば、ロボットアーム20にてカメラ30を移動させる構成に代えて、又は加えて、ボトル2及び標識部材40を一体的に移動させる送り機構を設け、その送り機構を用いてカメラ30をボトル2に対する第1撮像位置P1、あるいは第2撮像位置P2に相対移動させる場合には、送り機構の位置決め誤差や振動等によってボトル2側の位置等の誤差が生じるときであっても、ボトル2側から見ればカメラ30の位置や向きがずれることに変わりない。そのような誤差はカメラ誤差として扱うことが可能である。要するに、カメラ誤差は、カメラ30と検査対象の物品であるボトル2との間における位置関係のずれに起因して生じる撮像方向や撮像距離の誤差である。
【0115】
上記の形態では、画像の補正に関して、画像中の各画素の位置を補正値に従って変化させる処理を例示した。しかしながら、画像の補正は、検査領域の幾何学的な特性値を正確に測定できるように、カメラにて撮像された画像に含まれている検査領域を誤差が除去されるように変形させる処理であればよい。例えば、上記の形態において、カメラ30が撮像した画像から天面2bの内周の誤差を含む輪郭形状を検出し、その輪郭形状に対応する天面内周のオブジェクトを仮想的な3次元空間に配置し、各種の補正値を利用して3次元空間におけるオブジェクト上の各位置における3次元座標値を補正してオブジェクトの形状を誤差が除去された形状に修正し、修正後のオブジェクトを利用して特性値を測定するといった処理も可能である。その場合、オブジェクトの座標値を補正する処理は、検査領域の画像を補正する処理と実質的に等価である。画像の補正はそのような実質的に等価となる補正も含む概念である。
【0116】
上記の形態では、検査対象の物品としてボトル2を例示し、その天面2bを検査領域として内径や真円度を幾何学的な特性値として測定するものとした。しかしながら、検査対象の物品はボトルに限らず、検査領域もボトルの天面に限らない。画像から幾何学的な特性値を測定することが可能である限り、各種の物品が対象とされてよく、検査領域も適宜に設定可能である。測定対象の特性値も内径及び真円度に限らず、寸法誤差、形状誤差が生じ得る各種の特性値が測定対象とされてよい。
【0117】
上述した実施の形態及び変形例のそれぞれから導き出される本発明の各種の態様を以下に記載する。なお、以下の説明では、本発明の各態様の理解を容易にするために添付図面に図示された対応する構成要素を括弧書きにて付記するが、それにより本発明が図示の形態に限定されるものではない。
【0118】
本発明の一態様に係る画像補正方法は、検査対象の物品(2)の検査領域(2b)をカメラ(30)にて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査方法に適用され、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正方法であって、相互の位置関係が既知である3以上の基準点(PR1)を、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定する手順と、前記検査領域を各基準点が含まれるようにして前記カメラに撮像させる手順(S141、S142)と、前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離(D11~D13)とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手順(S143、S201~S207)と、演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手順(S163)と、を含んだものである。
【0119】
本発明の一態様に係る画像補正装置は、検査対象の物品(2)の検査領域をカメラ(30)にて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査装置(1)に適用され、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正装置(50)であって、相互の位置関係が既知であって、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定された3以上の基準点(PR1)を含むようにして前記検査領域を前記カメラに撮像させる手段(51、52、S141、S142)と、前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離(D11~D13)とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手段(53、S143、S201~S207)と、演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手段(53、S163)と、を含んだものである。
【0120】
本発明の一態様に係るコンピュータプログラムは、検査対象の物品(2)の検査領域をカメラ(30)にて撮像し、撮像された画像に基づいて前記検査領域の幾何学的な特性値を測定する検査装置(1)に含まれたコンピュータを、前記検査領域に対する前記カメラの撮像方向及び撮像距離に関して所定の基準状態を設定したときに、前記画像の撮像時に生じる前記基準状態からの誤差が除去されるように前記検査領域の画像を補正するための画像補正装置(50)として機能させるためのコンピュータプログラム(PG)であって、前記コンピュータを、相互の位置関係が既知であって、前記物品外でかつ前記検査領域の撮像時における前記カメラの視野内に設定された3以上の基準点(PR1)を含むようにして前記検査領域を前記カメラに撮像させる手段(52、S142)、前記基準状態にあるときの前記基準点間の距離と、撮像された画像中における前記基準点間の距離(D11~D13)とに基づいて、前記検査領域の画像の撮像時に生じた前記基準状態からの誤差を検出し、検出された誤差を前記検査領域の画像から除去するための補正値を演算する手段(53、S143、S201~S207)、及び演算された補正値に基づいて、前記検査領域の画像を前記誤差が除去されるように補正する手段(53、S163)、として機能させるように構成されたものである。
【0121】
上記の態様においては、検査領域をカメラにて撮像した時点における撮像方向や撮像距離に、基準状態における撮像方向や撮像距離に対して誤差が生じていると、その誤差に応じて基準点間の距離が、基準状態にあるときの基準点間の距離に対して変化する。例えば、撮像方向に誤差があれば、その誤差に応じて各基準点の位置がずれて基準点間の距離が基準状態における距離に対して個別に増加又は減少する。撮像距離に誤差があれば、その誤差に応じて基準点間の距離が基準状態における距離に対して一律に増加又は減少する。このように、基準点間の距離の変化は誤差と相関関係を有する。基準状態における基準点間の距離は、既知の位置関係と、基準状態における撮像方向及び撮像距離から一義的に定まるため、実際に撮像された画像における基準点間の距離と、基準状態における基準点間の距離とから、撮像方向及び撮像距離にどのような誤差が生じていたかを判別することができる。その判別結果に従って誤差を除去するための補正値を演算し、演算された補正値を利用して画像を補正すれば、撮像方向や撮像距離の誤差を除去した検査領域の画像を得ることができる。得られた画像を利用して検査領域の特性値を精度よく測定することが可能である。また、基準点が検査対象の物品外に設定されることにより、製造誤差を伴う物品、あるいは基準点を設定するスペースが不足する物品といったように、基準点の設定を妨げる事情がある物品を検査する場合でも、基準点を無理なく設定して、画像の補正のために利用することが可能である。
【0122】
上記態様の画像補正方法において、前記補正値を演算する手順は、検出された前記基準点間の距離と、前記基準状態における基準点間の距離との比較に基づいて、前記基準状態に対する前記カメラの誤差を検出する手順(S143、S203、S206)と、検出された誤差に基づいて、前記カメラの誤差を除去するためのカメラ誤差補正値を演算する手順(S143、S204、S207)とを含んでもよい。これによれば、検査領域の画像中における基準点間の距離を、基準状態における距離と比較して距離の変化を判別し、その変化を手掛かりとしてカメラの撮像方向及び撮像距離に生じたカメラの誤差を検出し、検出結果に応じた補正値を演算することができる。
【0123】
前記補正値を演算する手順は、前記カメラの誤差として、前記基準状態における前記撮像方向に対し、前記検査領域の画像の撮像時にて前記撮像方向に生じた傾きの誤差である傾き誤差(θc)を検出する手順(S143、S203)と、検出された傾き誤差に基づいて、前記カメラの前記傾き誤差を除去するための傾き補正値を前記カメラ誤差補正値として演算する手順(S143、S204)とを含んでもよい。これによれば、撮像方向に生じた誤差を傾き誤差として検出し、その傾き誤差を除去するための傾き補正値を演算することができる。傾き補正値を利用して画像を補正すれば、傾き誤差が除去された画像を得ることが可能である。
【0124】
前記補正値を演算する手順は、前記傾き補正値に基づいて、前記検出された前記基準点間の距離を前記傾き誤差が除去されるように補正する手順(S143、S205)と、補正後の前記基準点間の距離に基づいて、前記基準状態における前記撮像距離に対し、前記検査領域の画像の撮像時にて生じた撮像距離の誤差である位置誤差を前記カメラの誤差としてさらに検出する手順(S143、S206)と、検出された位置誤差に基づいて、前記位置誤差を除去するための位置補正値を前記カメラ誤差補正値としてさらに演算する手順(S143、S207)とを含んでもよい。撮像距離に誤差が生じている場合には、傾き誤差を用いて基準点間の距離を補正しても、補正後の距離は、基準状態における基準点間の距離に対して、撮像距離の誤差に応じて増加又は減少する。したがって、傾き誤差に基づく補正後の基準点間の距離から撮像距離の誤差を位置誤差として検出し、その位置誤差を除去するための位置補正値を演算することができる。位置補正値を用いて画像を補正すれば、撮像距離の誤差が除去された画像を得ることが可能である。
【0125】
上記態様の画像補正方法においては、前記物品がボトル(2)であって、前記ボトルの口部(2a)の天面(2b)が前記検査領域として設定され、前記基準状態は、前記撮像光軸と前記口部におけるボトル軸線とが互いに平行でかつ前記検査領域が所定の撮像距離で撮像される状態として設定されてもよい。これによれば、基準状態に対して撮像方向や撮像距離に誤差が生じても、その誤差が除去されるように画像を補正して、ボトルの天面の特性値を精度よく測定することができる。
【0126】
ボトルの天面を検査対象の物品の検査領域とする場合において、画像補正方法は、前記ボトルを所定の回転軸線(AX1)の回りに回転させながら複数の回転角ごとに前記口部を半径方向から撮像した側面視の画像を前記カメラに撮像させる手順(S144~S146、S150、S151)と、回転角ごとに撮像された画像にて、前記基準状態における前記撮像光軸と平行な測定線(CL2)を設定したときの当該測定線上における前記天面の位置(Pt2)を検出する手順(S147~S149)と、回転角ごとの画像間における前記天面の位置の変化に基づいて、前記基準状態における前記撮像光軸に対する前記ボトル軸線の傾きの誤差、及び当該撮像光軸の方向における前記天面の位置の誤差の少なくともいずれか一方をボトル誤差として検出し、検出されたボトル誤差を前記検査領域の画像から除去するためのボトル誤差補正値を演算する手順(S152、S153)と、をさらに含み、前記検査領域の画像を補正する手順(S163)では、前記ボトル誤差補正値に基づいて、前記ボトル誤差が除去されるようにして前記検査領域の画像を補正してもよい。
【0127】
ボトルの天面を検査領域とする場合には、ボトル軸線が傾く誤差、あるいはボトルの天面の位置が撮像方向にずれる位置の誤差が生じることがある。それらの誤差は、基準状態からの撮像方向及び撮像距離の誤差となる。そのような誤差は、口部を回転させながら、所定の回転角ごとにボトルの口部を半径方向から撮像した側面視の画像を利用すれば検出することができる。すなわち、各回転角における側面視の画像において基準状態におけるカメラの撮像光軸の方向に測定線を設定し、その測定線上における天面の位置はボトル軸線の傾きに応じて各回転角の画像間で変化する。また、天面の位置に誤差があれば、測定線上における天面の位置には、誤差がない場合の位置に対して測定線上の一方向に偏るような変化が生じる。これらの変化を手掛かりとすれば、ボトル軸線の傾きの誤差や天面の位置の誤差をボトル誤差として検出し、そのボトル誤差を除去するためのボトル誤差補正値を演算することができる。演算されたボトル誤差補正値を利用して、検査領域の画像を補正すれば、ボトル誤差が除去された画像を得ることが可能である。
【0128】
画像補正方法は、前記基準点を第1基準点(PR1)としたときに、相互の位置関係が既知であって前記第1基準点とは異なる3以上の第2基準点(PR2)を、前記物品外でかつ前記口部を前記半径方向から撮像するときの前記カメラの視野内に設定する手順をさらに含んでもよい。その場合、前記天面の位置を検出する手順は、前記側面視の画像の撮像時における前記撮像方向及び前記撮像距離が、前記検査領域の画像の撮像に関する前記基準状態とは区別して設定された他の基準状態にあるときの前記第2基準点間の距離と、各回転角の画像中における前記第2基準点間の距離(D24~D24)とに基づいて、各回転角における画像の撮像時に生じた前記他の基準状態からの誤差を、前記側面視の画像に関する誤差として検出し、検出された前記側面視の画像に関する誤差を各回転角における画像から除去するための補正値を、前記側面視の画像に関する補正値として演算する手順(S147、S201~S207)と、演算された前記側面視の画像に関する補正値に基づいて、各回転角における前記側面視の画像を前記他の基準状態からの誤差が除去されるように補正する手順(S148)と、補正された側面視の画像にて前記天面の位置を検出する手順(S149)と、を含んでもよい。
【0129】
上述した側面視の画像を各回転角にて撮像する場合には、各回転角の撮像時間で撮像方向や撮像距離にずれが生じて天面の位置を正しく検出できない可能性がある。そこで、側面視の画像の撮像に関しても、撮像方向及び撮像距離に関して、別途に基準状態を設定するとともに第1基準点と同様の第2基準点を設定し、各回転角の画像の撮像時にて、基準状態からの撮像方向及び撮像距離の誤差を、第1基準点を利用した誤差の検出と同様にして検出する。これによれば、各回転角の画像の撮像時に生じた撮像方向や撮像距離の誤差を検出し、検出結果から演算される補正値を用いて側面視の画像を補正することにより、撮像方向や撮像距離に応じた誤差を除去した側面視の画像を得ることができる。補正後の側面視の画像を用いてボトルの天面の位置の変化を正確に検出することが可能である。
【0130】
前記側面視の画像に関する補正値を演算する手順は、前記他の基準状態にあるときの前記第2基準点間の距離と、各回転角の画像中における前記第2基準点間の距離との比較に基づいて、前記他の基準状態に対する前記カメラの誤差を、前記側面視の画像に関するカメラの誤差として検出する手順(S147、S203、S206)と、検出された前記側面視の画像に関するカメラの誤差に基づいて、前記側面視の画像から当該カメラの誤差を除去するための補正値を、前記側面視の画像に関するカメラ誤差補正値として演算する手順(S147、S204、S207)と、を含んでもよい。これによれば、側面視の画像中における第2基準点間の距離を、側面視の画像に関する基準状態における第2基準点間の距離と比較して各回転角からの撮像時におけるカメラの誤差を検出し、検出結果から演算されたカメラ誤差補正値を用いて各回転角の画像をカメラの誤差が除去されるように補正することができる。
【0131】
前記側面視の画像に関する補正値を演算する手順は、前記側面視の画像に関するカメラの誤差として、前記他の基準状態における前記撮像方向に対し、各回転角の画像の撮像時にて前記撮像方向に生じた傾きの誤差である傾き誤差を、前記側面視の画像に関する傾き誤差として検出する手順(S147、S203)と、検出された前記側面視の画像に関する傾き誤差に基づいて、前記側面視の画像に関する前記カメラの前記傾き誤差を除去するための傾き補正値を、前記側面視の画像に関する前記カメラ誤差補正値として演算する手順(S147、S204)と、を含んでもよい。これによれば、各回転角の画像の撮像時において、撮像方向に生じた誤差を傾き誤差として検出し、その傾き誤差を除去するための傾き補正値を演算することができる。傾き補正値を利用して側面視の画像を補正すれば、撮像方向の誤差が除去された側面視の画像を得ることが可能である。
【0132】
前記側面視の画像に関する補正値を演算する手順は、前記側面視の画像に関する傾き補正値に基づいて、前記検出された前記第2基準点間の距離(D21~D24)を、前記側面視の画像に関する前記カメラの前記傾き誤差が除去されるように補正する手順(S147、S205)と、補正後の前記第2基準点間の距離に基づいて、前記他の基準状態における前記撮像距離に対し、各回転角における撮像時にて生じた撮像距離の誤差である位置誤差を、前記側面視の画像に関する前記カメラの誤差としてさらに検出する手順(S147、S206)と、検出された前記側面視の画像に関する位置誤差に基づいて、前記側面視の画像に関する位置誤差を除去するための位置補正値を、前記側面視の画像に関する前記カメラ誤差補正値としてさらに演算する手順(S147、S207)と、を含んでもよい。これによれば、傾き誤差に基づく補正後の第2基準点間の距離から、各回転角の撮像時における撮像距離の誤差を位置誤差として検出し、その位置誤差を除去するための位置補正値を演算することができる。位置補正値を用いて側面視の画像を補正すれば、撮像距離の誤差が除去された側面視の画像を得ることが可能である。
【符号の説明】
【0133】
1 検査装置
2 ボトル
2a 口部
2b 天面
10 ボトル支持台
12 回転壜台
30 カメラ
40、40A 標識部材
45 第1標識部
46 第2標識部
50 制御装置
51 アーム制御部
52 撮像制御部
53 画像処理部
53 画像処理部
54 検査部
100 キャリブレーションプレート
110 基準ゲージ
AX1 壜台軸線
AX2 ボトル軸線
AX3 撮像光軸
AXs 支持軸線
CL2 測定線
L1、L2 撮像距離
P1 第1撮像位置
P2 第2撮像位置
PR1 第1基準点
PR2 第2基準点
Pt2 測定点
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23