JP3930098B2 - Optical member inspection device - Google Patents

Optical member inspection device Download PDF

Info

Publication number
JP3930098B2
JP3930098B2 JP07228897A JP7228897A JP3930098B2 JP 3930098 B2 JP3930098 B2 JP 3930098B2 JP 07228897 A JP07228897 A JP 07228897A JP 7228897 A JP7228897 A JP 7228897A JP 3930098 B2 JP3930098 B2 JP 3930098B2
Authority
JP
Japan
Prior art keywords
optical member
pixel
image
value
orthogonal coordinate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP07228897A
Other languages
Japanese (ja)
Other versions
JPH10267856A (en
Inventor
太一 中西
正之 杉浦
山本  清
信一 鈴木
Original Assignee
ペンタックス株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ペンタックス株式会社 filed Critical ペンタックス株式会社
Priority to JP07228897A priority Critical patent/JP3930098B2/en
Publication of JPH10267856A publication Critical patent/JPH10267856A/en
Application granted granted Critical
Publication of JP3930098B2 publication Critical patent/JP3930098B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Testing Of Optical Devices Or Fibers (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)

Description

【0001】
【発明が属する技術分野】
本発明は、レンズ等の光学部材の形状異常等の光学的欠陥を検出するための光学部材検査装置に関する。
【0002】
【従来の技術】
レンズ,プリズム等の光学部材は、入射した光束が規則正しく屈折したり、平行に進行したり、一点又は線状に収束したり発散するように設計されている。しかしながら、光学部材の形成時において糸くず等が光学部材内に混入してしまっていたり(いわゆる「ケバ」)、成形後の人的取り扱いによって光学部材の表面上にキズ等が生じていたりゴミが付着していると、入射した光束が乱れてしまうので、所望の性能を得ることができなくなる。
【0003】
そのため、本出願人は、先に特願平9−50760号において、検査対象光学部材をその光軸を中心に回転させる回転機構及びラインセンサを用いて検査対象光学部材全体を撮像する光学部材検査装置を、提案した。図31は、この光学部材検査装置の主要部を示す概略図である。図31(a)に示す光学部材検査装置のラインセンサ100は、検査対象光学部材102が所定角度回転する毎に、撮像レンズ101によって形成された検査対象光学部材102の像を、その直径方向に沿ってライン状に撮像する。このようにラインセンサ100を採用したのは、検査対象光学部材102を照明する照明光がラインセンサ100に直接入射しないようにするためである。
【0004】
そして、撮像の都度ラインセンサ100から出力される画像データは、画像メモリ103の先頭行から順に、行単位に書き込まれる。従って、この画像メモリ103内における画像データの座標系は、横軸(行)を直径方向とし且つ縦軸を初期位置からの回転角度とした極座標系となる。そのため、図31(b)に示すように、画像メモリ103内の画像データ上においては、検査対象光学部材102の回転中心近傍に形成された光学的欠陥は見かけ上面積が大きく写り込み、回転中心から離れる程面積が小さく写り込む。
【0005】
このように、画像メモリ103内の画像データ上の光学的欠陥を示す領域の面積は、光学的欠陥の実際の面積とは正比例関係にないので、画像データ上の光学的欠陥を示す領域の面積が一定の閾値を超えたか否かに基づいては、この検査対象光学部材102が不良品であるか良品であるかの判定はできない。
【0006】
そのため、特願平9−50760号においては、直交座標系による画像データを格納するための第2の画像メモリを用意するとともに、極座標系による画像データを構成する全ての輝度値について、順番に所定の座標変換演算を実行し、第2の画像メモリにおける算出された直交座標値に最も近い位置にあるピクセルに、その輝度値を書き込むようにしていた。そして、全ての輝度値についてこのような座標変換処理を実行した後において、第2の画像メモリ中の画像データに含まれる光学的欠陥を示す領域の面積が一定の閾値を超えたか否かに基づいて、この検査対象光学部材102が不良品であるか良品であるかを判定していた。
【0007】
【発明が解決しようとする課題】
しかしながら、このような座標変換法によると、以下の問題があった。即ち、図32に示すように、検査対象光学部材102の中心近傍においては、極座標系による画像データにおける複数個の輝度値が直交座標系による画像データにおける同一の輝度値(画像メモリにおける同一のピクセル)に対応するケースが、頻繁に生じる。このようなケースにおいても、上述した座標変換法によると、極座標系による画像データにおける各輝度値毎に逐一座標変換演算が実行され、第2の画像メモリ中の同一ピクセルに各輝度値が次々と上書きされることとなる。
【0008】
このように、上述の座標変換法によると、直交座標系による画像データにおける各ピクセルに対応する輝度値を得るために、複数回の演算実行及び書き込みが必要になっていた。これが、従来における第1の問題点である。
【0009】
また、ラインセンサ100と検査対象光学部材102との相対回転速度に比較してラインセンサ100の撮像周期が長すぎると、図33に示すように、ラインセンサ100による個々の撮像毎に撮像される検査対象光学部材102の面積が広くなって、極座標系による画像データの行数が少なくなってしまう。その結果、図34に示すように、座標変換後における直交座標系による画像データ中に輝度値の欠落が生じ得る。このような輝度値の欠落が生じると、その後の良否判定が不正確になってしまう。これが従来における第2の問題点である。
【0010】
さらに、上述の座標変換法によると、画像メモリ中の同一のピクセルに複数個の輝度値が上書きされる場合、最後に上書きされた輝度値がそのピクセルの輝度値として確定してしまう。その結果、それ以前に書き込まれた輝度値に関して算出された直交座標値の方が最後に書き込まれた輝度値に関して算出された直交座標値よりも当該ピクセルの中心に近い場合であっても、たまたま処理順が先であったという理由のみに依りその輝度値が消去されてしまうという不合理が生じていた。このようにして当該ピクセルの周辺に対応する輝度値が当該ピクセルに書き込まれてしまうと、その後の良否判定が不正確になってしまう。これが従来における第3の問題点である。
【0011】
本発明の第1の課題は、上記第1の問題点に鑑み、少ない処理ステップ数と処理時間で座標変換を行うことができるできる光学部材検査装置を、提供することである。
【0012】
本発明の第2の課題は、上記第2の問題点に鑑み、座標変換後の画像データに輝度値の欠落を生じることなく座標変換を行うことができる光学部材検査装置を、提供することである。
【0013】
本発明の第3の課題は、上記第3の問題点に鑑み、座標変換演算によって算出される直交座標値が画像メモリ中のピクセルの中心に最も近くなる輝度値を当該ピクセルに書き込むことができる光学部材検査装置を、提供することである。
【0014】
【課題を解決するための手段】
請求項1記載の発明は、上記第1の課題を解決するためになされたものであり、検査対象光学部材の光学的欠陥を検出する光学部材検査装置であって、撮像レンズと、この撮像レンズによって形成された検査対象光学部材の像を繰り返し撮像するために複数の画素を一方向に並べてなるラインセンサと、前記検査対象光学部材の像と前記ラインセンサとを相対回転させる回転手段と、前記ラインセンサから出力された前記各画素に対応する輝度値からなる画像データを入力する入力手段と、直交座標によってその位置が特定される複数のピクセルをマトリックス状に並べてなる画像メモリと、前記入力手段によって入力された各輝度値を出力した時における前記検査対象光学部材の像前記ラインセンサの相対角度を特定する角度特定手段と、前記入力手段によって入力された各輝度値に対応する画素の位置を特定する画素位置特定手段と、前記相対角度と前記画素の位置との組み合わせからなる全ての極座標値に対して所定の極座標−直交座標変換演算を夫々施したときに、前記画像メモリの各ピクセルを特定する個々の直交座標値に最も近い計算結果になる各極座標値を、夫々当該直交座標値に対応させているとともに、当該所定の極座標−直交座標変換演算を行ったときに何れの極座標値にも対応していない直交座標値が生じた場合には、前記極座標−直交座標変換演算の計算結果が当該直交座標値に最も近くなる極座標値を当該何れの極座標値にも対応していない直交座標値に対応させている変換テーブルと、前記角度特定手段によって特定された相対角度及び前記画素位置特定手段によって特定された画素の位置に基づいて前記変換テーブルを検索して、対応する直交座標値を読み出す検索手段と、前記入力手段によって入力された各輝度値を、前記検索手段によって読み出された直交座標値に対応する前記画像メモリ中のピクセルへ書き込む書込手段とを備えたことを特徴とする。
【0015】
このように構成されると、回転手段によって検査対象光学部材の像とラインセンサとが相対回転している間に、ラインセンサは、繰り返しこの検査対象光学部材の像を撮像する。入力手段は、ラインセンサが検査対象光学部材を撮像することによってこのラインセンサから出力された画像データ(ラインセンサの各画素に対応する輝度値からなる画像データ)を入力する。この入力手段が画像データを構成する各輝度値を入力すると、角度特定手段は、その輝度値がラインセンサから出力された際における検査対象光学部材の像及びラインセンサの相対角度を特定し、画素位置特定手段は、その輝度値に対応する画素のラインセンサ内における位置を特定する。このようにして相対角度及び画素位置の特定がなされると、検索手段は、これら相対角度及び画素位置に基づいて変換テーブルを検索して、対応する直交座標値を読み出す。書込手段は、直交座標値が読み出されると、入力手段によって入力された各輝度値を、読み出された直交座標値に対応する画像メモリ中のピクセルへ書き込む。ここで、変換テーブルは、画像メモリの各ピクセルを特定する個々の直交座標値に対して、前記検査対象光学部材の像及び前記ラインセンサの相対角度と画素の位置との組み合わせを一つのみ対応させている。従って、相対角度と画素の位置との複数個の組み合わせに基づいて、同一の直交座標値が読み出されることはない。その結果、画像メモリ中の同一のピクセルに対して複数個の輝度値が上書きされる事が防止されるので、処理ステップ数及び処理時間の短縮が図られる。
【0016】
請求項2記載の発明は、上記第1の課題を解決するためになされたものであり、検査対象光学部材の光学的欠陥を検出する光学部材検査装置であって、撮像レンズと、この撮像レンズによって形成された検査対象光学部材の像を繰り返し撮像するために複数の画素を一方向に並べてなるラインセンサと、前記検査対象光学部材の像と前記ラインセンサとを相対回転させる回転手段と、前記ラインセンサから出力された前記各画素に対応する輝度値からなる画像データを入力する入力手段と、直交座標によってその位置が特定される複数のピクセルをマトリックス状に並べてなる画像メモリと、前記検査対象光学部材の像と前記ラインセンサとの相対角度と前記画素の位置との組み合わせからなる全ての極座標値に対して所定の極座標−直交座標変換演算を夫々施したときに、前記画像メモリの各ピクセルを特定する個々の直交座標値に最も近い計算結果になる各極座標値を、夫々当該直交座標値に対応させるとともに、当該所定の極座標−直交座標変換演算を行ったときに何れの極座標値にも対応していない直交座標値が生じた場合には、前記極座標−直交座標変換演算の計算結果が当該直交座標値に最も近くなる極座標値を当該何れの極座標値にも対応していない直交座標値に対応させている変換テーブルと、この変換テーブルから、相対角度と前記画素の位置との組み合せ,及びこの組み合わせに対応する前記直交座標値を、夫々一つ取り出す取出手段と、前記入力手段から入力された画像データから、前記取出手段によって取り出された相対角度と前記画素の位置との組み合せに対応する輝度値を読み出す読出手段と、この読出手段によって読み出された輝度値を前記取出手段によって取り出された前記直交座標値に対応する前記画像メモリ中のピクセルへ書き込む書込手段とを備えたことを特徴とする。
【0017】
このように構成されると、回転手段によって検査対象光学部材の像とラインセンサとが相対回転している間に、ラインセンサは、繰り返しこの検査対象光学部材の像を撮像する。入力手段は、ラインセンサが検査対象光学部材を撮像することによってこのラインセンサから出力された画像データ(ラインセンサの各画素に対応する輝度値からなる画像データ)を入力する。一方、取出手段は、変換テーブルから相対角度と前記画素の位置との組み合せ,及びこの組み合わせに対応する直交座標値を夫々一つ取り出す。そして、読出手段は、入力手段から入力された画像データから取出手段によって取り出された相対角度と画素の位置との組み合せに対応する輝度値を読み出し、書込手段は、この読出手段によって読み出された輝度値を、取出手段によって取り出された直交座標値に対応する画像メモリ中のピクセルへ書き込む。ここで、変換テーブルは、画像メモリの各ピクセルを特定する個々の直交座標値に対して、前記検査対象光学部材の像及び前記ラインセンサの相対角度と画素の位置との組み合わせを一つのみ対応させている。従って、相対角度と画像の位置との複数個の組み合わせに基づいて、同一の直交座標値が読み出されることはない。その結果、画像メモリ中の同一のピクセルに対して複数個の輝度値が上書きされる事が防止されるので、処理ステップ数及び処理時間の短縮が図られる。
【0018】
請求項3記載の発明は、請求項1又は2において、画像メモリに書き込まれた前記検査対象光学部材全体に対応する画像データの図形的特徴量を測定する図形的特徴量測定手段と、この図形的特徴量が所定の判定基準値を超えたか否かを判定する判定手段とを更に備えたことで、特定したものである。
【0019】
請求項4記載の発明は、請求項2の入力手段が、前記ラインセンサが前記検査対象光学部材の像を繰り返し撮像することによってこのラインセンサから出力された画像データを各撮像毎に行単位で順番に格納する一時格納メモリを有するとともに、前記読出手段が、前記取出手段によって取り出された相対角度に対応する行,及び前記取出手段によって取り出された前記画素の位置に対応する列によって特定されるピクセルから前記輝度値を読み出すことで、特定したものである。
【0020】
請求項5記載の発明は、請求項4の書込手段が、前記検査対象光学部材全体に対応する画像データの前記一時格納メモリへの格納が完了した後に、この一時格納メモリに格納された画像データを構成する各輝度値を、前記画像メモリに書き込むことで、特定したものである。
【0021】
請求項6記載の発明は、請求項1のラインセンサが、その画素の列を前記撮像レンズの光軸と直交させた状態で固定されており、前記回転手段が、前記検査対象光学部材を前記撮像レンズの光軸を中心に回転させ、前記角度特定手段が、前記回転手段によって回転された検査対象光学部材の回転角を検知するエンコーダを有することで、特定したものである。
【0022】
請求項7記載の発明は、請求項1の画素位置特定手段が、前記ラインセンサから順番に出力される各輝度値をカウントするカウンタを有することで、特定したものである。
【0026】
請求項11記載の発明は、請求項8乃至10の何れかにおける変換テーブルが、前記相対角度と前記画素の位置との組み合わせのうち、前記画像メモリの各ピクセルを特定する個々の直交座標値に対応しないものについては、無効を示す値を対応させていることで、特定したものである。
【0027】
請求項記載の発明は、請求項1又は2の変換テーブルは、前記相対角度と前記画素の位置との全ての組み合わせを何れかの前記直交座標値に対応させるとともに、各直交座標値に対応する前記相対角度と前記画素の位置との組み合わせが複数ある場合には、一つの有効な組み合わせ以外の全ての組み合わせに対して無効を示すフラグを付しており、前記書込手段が、前記角度特定手段によって特定された相対角度及び前記画素位置特定手段によって特定された画素の位置の組み合わせについて、前記変換テーブル内において無効を示すフラグが付されていない場合に限り、前記検索手段によって読み出された直交座標値に対応する前記画像メモリ中のピクセルへ、前記入力手段によって入力された輝度値を書き込むことで、特定したものである。
【0030】
請求項10記載の発明は、請求項2のラインセンサが、その画素の列を前記撮像レンズの光軸と直交させた状態で固定されており、前記回転手段が、前記検査対象光学部材を前記撮像レンズの光軸を中心に回転させることで、特定したものである。
【0031】
請求項11記載の発明は、請求項1又は2の変換テーブルが、前記入力手段によって入力された各輝度値を出力した時における前記検査対象光学部材の像及び前記ラインセンサの相対角度以外の角度については、当該角度と前記画素の位置との組み合わせに対して前記所定の極座標−直交座標変換演算を施し、その演算の結果得られた値に最も近い直交座標値を、当該角度よりも大きく且つ最も近い前記相対角度に対応させたことで、特定したものである。
【0032】
【発明の実施の形態】
以下、図面に基づいて、本発明の実施の形態を説明する。
【0033】
【実施形態1】
<光学部材検査装置の構成>
本第1実施形態による光学部材検査装置の概略構成を、図1の側面断面図に示す。この図1に示すように、光学部材検査装置を構成する照明ランプ1,拡散板2,及び撮像装置3は、同一の光軸l上に配置されている。
【0034】
この撮像装置3は、正レンズ系である撮像レンズ4と、この撮像レンズ4によって収束された光による像を撮像する撮像素子(複数の画素を一方向に並べてなるCCDラインセンサ)5とから、構成されている。図1において、撮像素子5は、左右にその画素列を向かせるように設置されている。また、撮像素子5の画素列は、その中央において、撮像レンズ4の光軸lと垂直に交わっている。なお、撮像レンズ4は、撮像装置3内において撮像素子5に対して進退自在(ピント調節可能)であり、撮像装置3自体も、光軸l方向に進退調整し得る様に光学部材検査装置の図示せぬフレームに取り付けられている。
【0035】
撮像素子5は、所定時間(各画素に電荷が適度に蓄積する程度の時間)毎にライン状に画像を繰り返し撮像し、画素の並び順に各画素を自己走査して、各画素に蓄積した電荷を出力する。このようにして撮像素子5から出力された一連の電荷は、所定の増幅処理やA/D変換処理によって輝度値情報に変換される。そして、1ライン分の画素に対する輝度値情報からなる画像データとして、制御装置6に入力される。
【0036】
検査対象光学部材14は、撮像装置3側から見た平面図である図2に示す様に円形のレンズ(負レンズ)であり、光学部材検査装置の図示せぬフレームに取り付けられたホルダ15によって、撮像レンズ4に関してその表面(撮像レンズ4に対向する面)が撮像素子5の撮像面と共役となるように、保持されている。このホルダ15は、撮像レンズ4の光軸lを中心とした環状の形状を有しており、検査対象光学部材14の周縁をその全周に亘って保持する。従って、検査対象光学部材14の周縁の中心と光軸とが一致している限り、検査対象光学部材14の光軸は、撮像レンズ4の光軸lに対して同軸となる。
【0037】
また、ホルダ15は、撮像レンズ4の光軸lを中心として、光軸lに直交する面内で回転可能となっている。そして、このホルダ15の周縁には、環状ギア16が形成されている。この環状ギア16は、駆動モータ8の駆動軸に取り付けられたピニオンギア7に噛合している。従って、駆動モータ8がその駆動軸を回転させると、両ギア7,16を介してホルダ15が回転駆動を受け、ホルダ15に保持されている検査対象光学部材14が、光軸lに直交する面内において撮像装置3側から見て反時計方向へ回転駆動される。従って、これらホルダ15,両ギア16,7,及び駆動モータ8は、検査対象光学部材14の像と撮像素子5とを相対回転させる回転手段を構成する。
【0038】
このホルダ15の下面(拡散板2側の面)には、光軸lを中心とした放射状の白黒縞からなるコードパターンが印刷されており、光学部材検査装置の図示せぬフレームには、このコードパターンを読むための反射型光センサを有する読取装置10が固定されている。これらコードパターン及び読取装置10は、インクリメンタル方式のエンコーダを構成し、制御装置6に対して、検査対象光学部材14の回転量に対応した数のパルスを入力する。
【0039】
なお、撮像レンズ4の倍率(即ち、撮像装置3自体の位置,及び撮像レンズ4の撮像素子5に対する位置)は、検査対象光学部材14の直径方向における全幅を撮像素子5の撮像面に結像し得るように、調整されている。従って、撮像素子5は、検査対象光学部材14の表面の画像(直径方向の全域にわたる1ライン分の画像)を撮像することができるのである。図2においては、撮像素子5によって撮像され得る一ライン分の撮像対象領域が、二点鎖線によって示されている。
【0040】
照明ランプ1は、照明光(白色光)を発光する白熱ランプであり、光学部材検査装置の図示せぬフレームに固定されている。
この照明ランプ1と検査対象光学部材14との間に配置されている拡散板2は、図2に示すように、検査対象光学部材14よりも大径な円盤形状を有しており、その表面は粗面として加工されている。従って、この拡散板2は、照明ランプ1から出射された照明光をその裏面全面で受けて、検査対象光学部材14に向けて拡散することができる。なお、この拡散板2は、その中心において撮像レンズ4の光軸lと直交する様に、光学部材検査装置の図示せぬフレームに固定されている。
【0041】
この拡散板2の表面上(検査対象光学部材14側)には、帯状の形状を有する遮光板9が、その長手方向を撮像素子5の画素列の方向と平行な方向に向けて、貼り付けられている。この遮光板9の中心は撮像レンズ4の光軸lと一致している。また、遮光板9の長手方向における全長は検査対象光学部材14の直径よりも長い。そして、図2に示すように、撮像装置3の位置から見ると、遮光板9の両端は、検査対象光学部材14の外縁よりも外側にはみ出している。また、遮光板9の幅は、撮像素子5の画素列の方向に直交する方向における光学部材検査装置の断面図である図4に示すように、撮像素子5の各画素に入射する光の周縁光線m,mの間隔よりも広い。
【0042】
制御装置6は、撮像装置3から入力された画像データに基づいて検査対象光学部材14が良品であるか不良品であるかの判定を行う装置である。
図3は、この制御装置6の内部回路構成を示すブロック図である。図3に示す様に、制御装置6は、バスBを介して相互に接続されたCPU60,フレームメモリ61,ホストメモリ62,及び回転角検出回路63から、構成されている。
【0043】
入力手段の一部をなすフレームメモリ61は、撮像装置3から入力された一ライン分の画像データが書き込まれるバッファである。
ホストメモリ62は、全極座標データ格納領域62a,直交座標データ格納領域62b及び変換テーブル格納領域62cを含んでいる。この全極座標データ格納領域62aは、入力手段の一部として、フレームメモリ61に書き込まれた各一ライン分の画像データが先頭行から行単位で書き込まれる一時格納メモリ(撮像素子5から出力された画像データを各撮像毎に行単位で順番に格納する一時格納メモリ)としての領域である。この全極座標データ格納領域62aに書き込まれた画像データを、以下、「極座標データ」という。直交座標データ格納領域62bは、極座標データを座標変換(極座標−直交座標変換)して得られた直交座標系による画像データ(以下、「直交座標データ」という)が書き込まれる画像メモリ(直交座標によってその位置が特定される複数のピクセルをマトリックス状に並べてなる画像メモリ)としての領域である。変換テーブル格納領域62cは、全極座標データ格納領域62a内の各画素の座標位置(m,k)を直交座標データ格納領域62b内の画素の座標位置(x,y)に対応付けた変換テーブル(直交座標値に対して検査対象光学部材14の像及び撮像素子5との相対角度と画素の位置との組み合わせを一つのみ対応させた変換テーブル)を格納する領域であり、上述の座標変換の際にCPU60によって参照される。これら極座標データ,直交座標データ,及び変換テーブルについては、後で詳しく説明する。
【0044】
回転角検出回路63は、読取装置10から入力されてくるパルスに基づいて検査対象光学部材14の回転量(初期状態からの回転量)及び角度位置を検出してCPU60に通知する回路である。
【0045】
CPU60は、制御装置6全体の制御を行うプロセッサであり、入力手段の一部,取出手段,読出手段,書込手段,図形的特徴量測定手段,及び判定手段に、相当する。即ち、CPU60は、回転角検出回路63からの通知によって検査対象光学部材14の位置を常時認識しつつ、フレームメモリ61に書き込まれた画像データを定期的にホストメモリ62の全極座標データ格納領域62aに書き写すとともに、変換テーブル格納領域62c内の変換テーブルを参照して、全極座標データ格納領域62aに格納された極座標データの各ピクセルの輝度値情報を直交座標データ格納領域62b内の対応するピクセルに書き込む。そして、この書き込み完了後において直交座標データ格納領域62bに格納されている直交座標データ中の光学的欠陥に相当する領域の図形的特徴量を測定するとともに、この図形的特徴量を一定の判定基準値(許容値)と比較し、この数値が判定基準値内に収まっているか超えているかの判定を行う。
<光学的欠陥検出の原理>
以上のように構成される光学部材検査装置において、図4の面内では、撮像レンズ4に入射して撮像素子5の各画素に入射し得る光は、撮像レンズ4の光軸lに沿った光線を主光線とする光束であり且つ図4に示される周縁光線m,m間を通る光のみである。この周縁光線m,mを逆方向に辿ると、検査対象光学部材14の表面において交差した後に、拡散板2に向かって拡がっている。そして、拡散板2上において、この周縁光線m,mの間が遮光板9によって遮られている。従って、図4に示すように、検査対象光学部材14における撮像素子5による撮像対象領域(撮像レンズ4に関して撮像素子5の画素列の受光面と共役な部位及び光軸方向におけるその近傍)に光学的欠陥がないとすると、撮像素子5の各画素に入射する光はない。即ち、拡散板2の表面における遮光板9の側方箇所から拡散した光nは、検査対象光学部材14における撮像対象領域を透過するが、周縁光線m,mの外側を通るので、撮像レンズ4には入射しない。また、拡散板2の表面における遮光板9の側方箇所から拡散して検査対象光学部材14における撮像対象領域以外の箇所を透過した光は、撮像レンズ4に入射し得るが、撮像素子5の各画素上には収束されない。そのため、撮像装置3から出力される画像データは、検査対象光学部材14の外縁に対応する明部(側面での拡散光に因る)を除き、全域において暗くなっている。
【0046】
これに対して、図2に示すように、検査対象光学部材14表面における撮像対象領域内にキズC及びゴミDがある場合、図5に示すように、拡散板2の表面における遮光板9の側方箇所から拡散した光nがこれらキズC及びゴミDに当たると、この光がこれらキズC及びゴミDによって拡散される。この拡散光n’は、周縁光線m,mの交点を中心として発散するので、その一部は、撮像レンズ4を介して撮像素子5の画素上に入射する。従って、キズC及びゴミDの像(周囲よりも明るい像)が撮像素子5の撮像面に形成される。なお、検査対象光学部材14の外周A,Bにおいても、同様な拡散が生じるので、これら外周A,Bの像が(周囲よりも明るい像)が撮像素子5の撮像面に形成される。図6は、図2に示す位置にて撮像が行われた時に撮像装置3から出力される画像データを構成する各輝度値の分布を示すグラフである。なお、図6においては、一回の撮像によって各画素に蓄積された電荷を、一走査分の周期内で順次自己走査によって読み出している様子が示されている。
<光学的欠陥判定の方式>
撮像素子5による撮像(電荷蓄積及び走査)は、駆動モータ8による検査対象光学部材14の回転と同期して、この検査対象光学部材14が所定角度だけ回転する毎に行われる。そして、撮像素子5による撮像(電荷蓄積及び走査)がなされる毎に、図6に示すような画像データが、制御装置6のフレームメモリ61に書き込まれて、ホストメモリ62の全極座標データ格納領域62aに取り込まれる。図7乃至図11は、遮光板9,撮像素子5による撮像対象領域(二点鎖線にて表示),及び検査対象光学部材14の相対位置と全極座標データ格納領域62aに取り込まれた画像データとの関係を示す。具体的には、図7は、初期状態を示し(この時点で撮像される検査対象光学部材14の外縁上の点を、夫々“A”,“B”とする)、図8は、初期状態から検査対象光学部材14が反時計方向に45度回転した状態を示し、図9は、検査対象光学部材14が初期状態から反時計方向に90度回転した状態を示し、図10は、検査対象光学部材14が初期状態から反時計方向に135度回転した状態を示し、図11は、検査対象光学部材14が初期状態から反時計方向に180度回転した終了状態を示す。これら各図に示すように、検査対象光学部材14が回転するにつれて、全極座標データ格納領域62aの各行には、撮像装置3によって撮像された各一ライン分の画像データが、先頭行から順に書き込まれる。
【0047】
図11に示す時点でホストメモリ62の全極座標データ格納領域62aに格納されている画像データ(極座標データ)の横軸は、検査対象光学部材14の中心(光軸)Oから直径方向への距離を示し、縦軸は、点A,B間を結ぶ直径を基準とした検査対象光学部材14の回転角を示す。制御装置6のCPU60は、上述したように、この極座標データを、直交座標系による画像データ(直交座標データ)へ変換する。
図12は、このような極座標データから直交座標データへの座標変換方法を示す図であり、検査対象光学部材14の表面上に定義されたローカル座標系と撮像素子5の画素列の方向を基準(縦軸)とした絶対座標系との関係を示すものである。図12において、検査対象光学部材14の表面上に定義されたローカル座標系は、検査対象光学部材14の光軸Oを原点0とし、検査対象光学部材14外縁上における点Aと点Bとを結ぶ線をY軸とする。また、原点0を通ってY軸と直交する線をX軸とする。また、絶対座標系の縦軸上の各点の値は、撮像素子5の各画素の走査の順番に対応するので、撮像素子5の解像度(座標数)をnとすると0〜n−1の値をとる。そして、n/2の点において、絶対座標系の縦軸はローカル座標の原点0と交差することとなる。
【0048】
検査対象光学部材14が回転すると、ローカル座標系は、原点0を中心として絶対座標系の縦軸に対して反時計方向に回転する。このとき、撮像開始時からの撮像の回数(走査回数)をkとし、撮像の一周期(一走査)の間に検査対象光学部材14が回転する角度をθとすると、撮像素子5中m(但し、0≦m≦n/2)番目の座標Pのローカル座標系における極座標はP(n/2−m,kθ)となり、m’(但し、n/2<m’≦n−1)番目の座標P’のローカル座標系における極座標はP’(m’−n/2,180+kθ)となる。これら極座標P,P’を直交座標によって表すと、P(Xp,Yp),P’(Xp’,Yp’)となる。ここで、
Xp=(n/2−m)sin kθ …(1)
Yp=(n/2−m)cos kθ …(2)
Xp'=(m'−n/2)sin(180+kθ) …(3)
Yp'=(m'−n/2)cos(180+kθ) …(4)
と表される。従って、これら式(1)〜(4)を用いることにより、極座標系を直交座標系に変換することができるのである。
【0049】
いま、図13(a)に示すように、撮像素子5の画素数(解像度)nが2048個であり、検査対象光学部材14が半回転(180度)する間に3600回の撮像がなされるとする(即ち、θ=180/3600=0.05)。この場合、極座標データ中の0〜1024列目の座標に対しては上記式(1),(2)が適用され、1025〜2047列目の座標に対しては上記式(3),(4)が適用される。但し、図13(b)に示すように、直交座標データの原点(0,0)は、中心ではなくて左下に位置するので、原点位置をずらすための補正がなされねばならない。具体的には、この直交座標データの座標数が2048×2048個であることから、上記各式(1)〜(4)によって求められた値に、一律に1024が加算されなければならない。即ち、極座標データ中のm=0〜1024列目の座標に対しては下記記式(1'),(2')が適用され、m’=1025〜2047列目の座標に対しては下記記式(3'),(4')が適用される。
Xp=(1024−m)sin kθ+1024 …(1')
Yp=(1024−m)cos kθ+1024 …(2')
Xp'=(m'−1024)sin (180+kθ)+1024 …(3')
Yp'=(m'−1024)cos (180+kθ)+1024 …(4')
しかしながら、これら各式(1')〜(4')を極座標データ中の全ての点に対して実行したとしても、極座標データ中の何れの座標にも対応しない座標が直交座標データ中に生じる可能性がある。そのために、本実施形態においては、図14(a)及び(b)に示すように、極座標データを構成する各一ライン分の画像データ(輝度値情報列)を擬似的にp倍して、極座標データ中の一ライン分の画像データの総数を(180/θ)×p本とする。そして、本来のθの値をp分割した値θ’(=θ/p),及び、増加された極座標データの各行(一ライン分の画像データ)の行番号を示すk'を用いて、上述の式(1')〜(4')(即ち、所定の極座標−直交座標変換演算)を実行する。即ち、下記式(1")〜(4")を用いることにより、極座標系を直交座標系に変換するのである。
Xp=(n/2−m)sin k'θ'+n/2
=(1024−m)sin k'θ'+1024 …(1")
Yp=(n/2−m)cos k'θ'+n/2
=(1024−m)cos k'θ'+1024 …(2")
Xp'=(m'−n/2)sin(180+ k'θ')+n/2
=(m'−1024)sin(180+ k'θ')+1024 …(3")
Yp'=(m'−n/2)cos(180+k'θ')+n/2
=(m'−1024)cos(180+k'θ')+1024 …(4")
但し、これら各式(1")〜(4")によって規定される極座標データ中の全画素の座標に対する直交座標系における座標の関係は、予め計算され、変換テーブルとしてまとめられる。図15は、このようにしてまとめられた変換テーブルの構造を部分的に示した表である。図15に示すように、この変換テーブルは、上記式(1")〜(4")によって規定された関係にある極座標値(m,k')及び直交座標値(Xm,Yk')の組み合わせを極座標データ中における並び順通りに列挙した形式を、有している。但し、ここに書き込まれる直交座標値(Xm,Yk')の値は、小数点以下を四捨五入した値となっている。この四捨五入により、m及びkの組み合わせに対して極座標−直交座標変換演算を施して算出された値に最も近い直交座標値(X,Y)が、当該m及びkの組み合わせに対応される。
【0050】
この変換テーブルは、全ての項目(極座標値,直交座標値)が書き込まれた後で、先頭行から順に、各行毎に図15の左から右へスキャンされる。そして、同じ直交座標が重複して表れた場合には、最初に表れたもの以外には、スタック値が上書きされる。このスタック値とは、図13(b)に示す直交座標データの原点(0,0)を示す直交座標値である。
【0051】
そして、各極座標値(m,k')のk'座標の値が、pによって除算され、その商(小数点以下切り捨て)が、本来のk座標の値として、元のk'座標の値に上書きされる。その結果、図16に示すように、変換テーブル中に、同じ極座標値(m,k)が重複して存在し得ることとなる。このように同一の極座標値(m,k)に複数の直交座標値(Xm,Yk')を対応付けられるのは、図33に示すように、βの時点でラインセンサから出力される画像データは、θの角度範囲内の全域における輝度情報を反映しているからである。
【0052】
即ち、変換テーブルは、入力手段によって入力された各輝度値を出力した時における検査対象光学部材の像及びラインセンサの相対角度以外の角度については、当該角度と画素の位置との組み合わせに対して所定の極座標−直交座標変換演算を施し、その演算の結果得られた値に最も近い直交座標値を、当該角度よりも大きく且つ最も近い相対角度に対応させている。
【0053】
以上のようにして作成された変換テーブルが、ホストメモリ62の変換テーブル格納領域62cに格納されるのである。
<制御処理>
次に、上述した光学的欠陥判定方式に従った良否判定を行うために制御装置6(CPU60)が実行する制御処理の内容を、図17及び図18のフローチャートを用いて説明する。
【0054】
図17の制御処理は、制御装置6に接続された図示せぬ検査開始ボタンが押下されることによりスタートする。スタート後最初のS01では、CPU60は、撮像工程を実行する。この撮像工程では、CPU60は、回転角検出回路63からの通知に基づいて検査対象光学部材14の回転量を検知し、この検査対象光学部材14が半回転する間に撮像装置3からフレームメモリ61に書き込まれた全ての画像データを、順次、ホストメモリ62の全極座標データ格納領域62aへ格納する(撮像素子5から出力された各画素に対応する輝度値からなる画像データを入力する入力手段に相当)。
【0055】
次のS02では、CPU60は、座標変換工程を実行する。図18は、S02にて実行される座標変換工程サブルーチンを示すフローチャートである。
このサブルーチンに入って最初のS11では、CPU60は、変換テーブル格納領域62cに格納されている変換テーブルから、極座標値(m,k)及び直交座標値(Xm,Yk')の組み合わせを一組取り出す(変換テーブルから相対角度と画素の位置との組み合わせ,及びこの組み合わせに対応する直交座標値を、夫々一つ取り出す取出手段に相当)。
【0056】
次のS12では、CPU60は、全極座標データ格納領域62a中のS11にて読み出した極座標(m,k)によって示される位置から、輝度値情報を読み出す(画像データから、取出手段によって取り出された相対角度と画素の位置との組み合わせに対応する輝度値を読み出す読出手段に相当)。
【0057】
次のS13では、CPU60は、S12にて読み出した輝度値情報を、直交座標データ格納領域62b中のS11にて読み出した直交座標値(Xm,Yk')によって示される位置に、書き込む(入力手段によって入力された各輝度値を、検索手段によって読み出された直交座標値に対応する画像メモリ中のピクセルへ書き込む書込手段に相当)。
【0058】
次のS14では、CPU60は、変換テーブルから極座標値(m,k)及び直交座標値(Xm,Yk')の全ての組み合わせを参照したかどうかをチェックする。そして、未だ全ての組み合わせを参照していなければ、処理をS11に戻して、次の組み合わせを読み出す。
【0059】
これに対して、全ての組み合わせを参照し終えている場合には、このサブルーチンを終了して、処理を図17のメインルーチンに戻す。
処理が戻された図17のメインルーチンでは、CPU60は、S02の後に実行されるS03において、ラベリング工程を実行する。即ち、CPU60は、直交座標データ格納領域62b内に格納されている直交座標データから所定閾値以上の輝度値を有する画素の集合からなる領域を抽出し、抽出した各領域に対して夫々一意の番号(ラベル)i(i=1,2,3,……)を付与する。
【0060】
次のS04では、CPU60は、S03にてラベルnを付与した各領域に対して、ラベルnの順番に、特徴量抽出処理を実行する。具体的には、各領域毎に、その領域の面積,フィレ径,最大輝度又は平均輝度等を算出する(図形的特徴量測定手段に相当)。
【0061】
次のS05では、CPU60は、S04にて測定した図形的特徴量に基づいた良否判定工程を実行する。具体的には、判断基準値を超える面積又はフィレ径を有する領域が一つでも有るか否か,最大輝度が判断基準値を超えるか否か,等に基づいて、検査対象光学部材14が良品であるか不良品であるかの判定を実行する(判定手段に相当)。以上の後に、CPU60は、この制御処理を終了する。<実施形態の作用>
以上のように構成された本実施形態によると、検査対象光学部材14を透過して撮像レンズ4に入射するとともに撮像素子5の各画素に入射し得る様な光は、遮光板9によって、予め拡散板2上にて遮られている。従って、撮像素子5による撮像対象領域内において検査対象光学部材14に光学欠陥が生じていなければ、撮像素子5によって撮像される画像データ中の各画素の輝度値は、全て黒の値(8ビットグレースケールにおける“0”)となっている。
【0062】
これに対して、撮像素子5によって撮像され得る範囲において検査対象光学部材14に光学欠陥が生じている場合には、遮光板9の側方からこの領域内に入射した光が光学的欠陥によって拡散され、その拡散光の一部が撮像レンズ4に入射する。この結果、遮光板9の暗い陰を背景とした光学的欠陥の明るい像が、撮像素子5の撮像面に形成される。このとき、画像データ中の光学的欠陥の明るい像を撮像して得られた画素の輝度値は、その像の明るさ(及び、像と撮像素子5の画素との重なり具合)に応じた値(8ビットグレースケールにおける“1〜255”)となっている。
【0063】
そして、検査対象光学部材14が半回転する間に、撮像素子5による撮像が一定周期(検査対象光学部材14が0.05°回転する毎)でなされ、各撮像によって得られたライン状の画像データが全極座標データ格納領域62aに蓄積される(S01)。
【0064】
制御装置6のCPU60は、図19に示すように、変換テーブルから一つづつ極座標値(m,k)及び直交座標値(Xm,Yk')の組み合わせ読み出し(S11)、全極座標データ格納領域62a内における当該極座標値(m,k)によって示されるピクセルに書き込まれている輝度値情報を、直交座標データ格納領域62b内における当該直交座標値(Xm,Yk')によって示されるピクセルに書き込む(S12,S13)。このような書き込みを、変換テーブル中の極座標値(m,k)及び直交座標値(Xm,Yk')の全組み合わせに関して実行すると、直交座標データ格納領域62b内に、直交座標系による画像データ(直交座標データ)が再現される。このとき、変換テーブル内には、同一の直交座標値(Xm,Yk')は、重複して記載されていないので、直交座標データ格納領域62b内の同一ピクセルに輝度値情報が複数回に亘って上書きされることはない。また、直交座標データ格納領域62b(における検査対象光学部材14の周縁)内に対応する全ての直交座標値(Xm,Yk')が、予め、何れかの極座標値(m,k)に対応付けられているので、直交座標データにおける輝度値抜けは、生じない。
【0065】
CPU60は、このようにして得られた直交座標系による画像データ(直交座標データ)に基づいて図形的特徴量を算出し(S04)、算出した図形的特徴量を一定の判断基準値と比較することによって、検査対象光学部材14の良否判定を行う(S05)。
【0066】
このように、本実施形態においては、極座標データ中の全輝度値情報に対して座標変換処理を行う場合に比して、処理ステップ数及び処理時間を大幅に減少させることができるとともに、直交座標データ中の輝度値抜けを防止できる。
【0067】
【実施形態2】
本発明の第2の実施形態は、上記第1実施形態に比して、フレームメモリ61から1ライン分の画像データをホストメモリ62に書き写す毎に座標変換処理を実行する事を、特徴とする。
【0068】
図20は、本第2実施形態による光学部材検査装置に用いられる制御装置6の構成を示すブロック図である。この図20に示すように、制御装置6のホストメモリ62には、第1実施形態における全極座標データ格納領域62aの代わりに、1ライン分の極座標格納領域62dが設けられている。本第2実施形態による光学部材検査装置におけるその他の構成は、第1実施形態のものと同じなので、その説明を省略する。
<制御処理>
次に、上述した光学的欠陥判定方式に従った良否判定を行うために制御装置6(CPU60)が実行する制御処理の内容を、図21及び図22のフローチャートを用いて説明する。
【0069】
図21の制御処理は、制御装置6に接続された図示せぬ検査開始ボタンが押下されることによりスタートする。スタート後最初のS21では、CPU60は、座標変換工程を実行する。図22は、S21にて実行される座標変換工程サブルーチンを示すフローチャートである。
【0070】
このサブルーチンに入って最初のS31では、CPU60は、処理対象の画像データを特定するための変数yを初期化(y=0)する。
次のS32では、CPU60は、変換テーブル格納領域62cに格納されている変換テーブルの先頭位置(図16における左上)から、極座標値(m,k)及び直交座標値(Xm,Yk')の組み合わせを、一組取り出す(変換テーブルから相対角度と画素の位置との組み合わせ,及びこの組み合わせに対応する直交座標値を、夫々一つ取り出す取出手段に相当)。
【0071】
次のS33では、CPU60は、撮像工程を実行する。この撮像工程では、CPU60は、回転角検出回路63からの通知された検査対象光学部材14の回転角に基づき、(前回の撮像からの)回転角が単位角(θ=0.05)に達するのを待って、撮像装置5に対して撮像指示を通知する。そして、撮像によって撮像装置5から出力された1ライン分の画像データを、フレームメモリ61に書き込ませる。
【0072】
次のS34では、CPU60は、S33の結果フレームメモリ61に書き込まれた1ライン分の画像データを、ホストメモリ62の極座標データ格納領域62dへ書き写す(撮像素子5から出力された各画素に対応する輝度値からなる画像データを入力する入力手段に相当)。
【0073】
次のS35では、CPU60は、極座標データ格納領域62d中のS32又はS38にて読み出した極座標(m)によって示されるピクセルから、輝度値情報を読み出す(画像データから、取出手段によって取り出された相対角度と画素の位置との組み合わせに対応する輝度値を読み出す読出手段に相当)。
【0074】
次のS36では、CPU60は、S35にて読み出した輝度値情報を、直交座標データ格納領域62b中のS32又はS38にて読み出した直交座標値(Xm,Yk')によって示されるピクセルに、書き込む(入力手段によって入力された各輝度値を、検索手段によって読み出された直交座標値に対応する画像メモリ中のピクセルへ書き込む書込手段に相当)。
【0075】
次のS37では、CPU60は、変換テーブルから極座標値(m,k)及び直交座標値(Xm,Yk')の全ての組み合わせを参照したかどうかをチェックする。そして、未だ全ての組み合わせを参照していなければ、処理をS38へ進める。
【0076】
S38では、CPU60は、変換テーブル格納領域62cに格納されている変換テーブルにおける次の位置から、極座標値(m,k)及び直交座標値(Xm,Yk')の組み合わせを、一組取り出す(変換テーブルから相対角度と画素の位置との組み合わせ,及びこの組み合わせに対応する直交座標値を、夫々一つ取り出す取出手段に相当)。
【0077】
ここに、「変換テーブルにおける次の位置」とは、前回読み出した極座標値(m,k)よりも極座標値のmの値が一つだけ大きい位置(図16における右隣の位置),若しくは、前回読み出した極座標値(m,k)のmの値が最大値n(=2047)である場合には、極座標値のmの値が0である次の未読み出しの位置(図16における次の行の最左側の位置)である。
【0078】
次のS39では、CPU60は、S38にて読み出した極座標値(m,k)のkの値を前回読み出したkの値と比較し、kの値が変化したか否かをチェックする。そして、kの値が変化していない場合には、処理をS35に戻す。
【0079】
これに対して、kの値が変化している場合には、S40にて処理対象の画像データを特定するための変数yをインクリメントした後に、処理をS33に戻す。以上説明したS33乃至S40のループ処理を繰り返した結果、変換テーブルにおける極座標値(m,k)及び直交座標値(Xm,Yk')の全ての組み合わせを参照し終えたとS37にて判定した場合には、CPU60は、このサブルーチンを終了して、処理を図21のメインルーチンに戻す。
【0080】
処理が戻された図21のメインルーチンでは、CPU60は、S21の後に実行されるS22において、ラベリング工程を実行する。即ち、CPU60は、直交座標データ格納領域62b内に格納されている直交座標データから所定閾値以上の輝度値を有する画素の集合からなる領域を抽出し、抽出した各領域に対して夫々一意の番号(ラベル)i(i=1,2,3,……)を付与する。
【0081】
次のS23では、CPU60は、S22にてラベルnを付与した各領域に対して、ラベルnの順番に、特徴量抽出処理を実行する。具体的には、各領域毎に、その領域の面積,フィレ径,最大輝度又は平均輝度等を算出する(図形的特徴量測定手段に相当)。
【0082】
次のS24では、CPU60は、S23にて測定した図形的特徴量に基づいた良否判定工程を実行する。具体的には、判断基準値を超える面積又はフィレ径を有する領域が一つでも有るか否か,最大輝度が判断基準値を超えるか否か,等に基づいて、検査対象光学部材14が良品であるか不良品であるかの判定を実行する(判定手段に相当)。以上の後に、CPU60は、この制御処理を終了する。<実施形態の作用>
以上のように構成された本第2実施形態によると、検査対象光学部材14が半回転する間に、撮像素子5による撮像が一定周期(検査対象光学部材14が0.05°回転する毎)でなされ、各撮像によって得られた一ライン分の画像データが極座標データ格納領域62dに格納される(S34)。
【0083】
制御装置6のCPU60は、極座標データ格納領域62dに一ライン分の画像データが格納されると、変換テーブルから順番に一つづつ極座標値(m,k)及び直交座標値(Xm,Yk')の組み合わせ読み出し(S32,S38)、極座標データ格納領域62d内における当該極座標値(m)によって示されるピクセルに書き込まれている輝度値情報を、直交座標データ格納領域62b内における当該直交座標値(Xm,Yk')によって示されるピクセルに書き込む(S35,S36)。このような書き込みを繰り返した結果、変換テーブルから読み出した極座標値(m,k)のk座標の値が大きくなると、CPU60は、次の一ライン分の画像データをフレームメモリ61から極座標データ格納領域62dに書き写す(S40,S33,S34)。
【0084】
そして、変換テーブルから極座標値(m,k)及び直交座標値(Xm,Yk')の全ての組み合せを読み出され、これらに従った書き込みがなされると、直交座標データ格納領域62b内に、直交座標系による画像データ(直交座標データ)が再現される。
【0085】
本第2実施形態におけるその他の作用は、第1実施形態とものと同じであるので、その説明を省略する。
【0086】
【実施形態3】
本発明の第3の実施形態は、上述の第1実施形態と比較して、制御装置6内において、プログラム処理によって座標変換を行うのではなく、ハードウェアによって座標変換を行うことを特徴としている。
<光学部材検査装置の構成>
図23は、本第3実施形態による制御装置6の構成を示すブロック図である。
【0087】
図23における極座標データメモリ65は、検査対象光学部材14が半回転する間に撮像装置3から出力された全ての一ライン分の画像データが先頭行から行単位に書き込まれて検査対象光学部材14全体に相当する極座標データが合成されるメモリであり、第1実施形態におけるホストメモリ62の全極座標データ格納領域62aに相当する。なお、本第3実施形態においては、撮像装置3による撮像は、検査対象光学部材が0.05度回転する毎に行われるので、極座標データの行数は3600行となっている。
【0088】
この極座標データメモリ65は、検査対象光学全部材14の全体に対応する極座標データが合成された後においては、読み出しパルスが入力される毎に、その時点で入力されているアドレス(極座標データのk座標を指定するための0〜3599[実際には2進数]の値をとる上位アドレス,及び、極座標データのm座標を指定するための0〜2047[実際には2進数]の値をとる下位アドレス)によって指定されたピクセルに記載されている輝度値情報を、出力する。
【0089】
直交座標データメモリ66は、座標変換の結果としての直交座標データが合成される画像メモリ(直交座標によってその位置が特定される複数のピクセルをマトリックス状に並べてなる画像メモリ)であり、第1実施形態における直交座標データ格納領域62bに相当する。
【0090】
この直交座標データメモリ66は、書き込みパルスが入力される毎に、その時点で入力されているアドレス(直交座標データのX座標を指定するための0〜2047[実際には2進数]の値をとる上位アドレス,及び直交座標データのY座標を指定するための0〜2047[実際には2進数]の値をとる下位アドレス)によって指定された位置(ピクセル)に、極座標データメモリ65から出力された輝度値情報を、格納する。
【0091】
制御回路64は、制御装置6全体の制御を司る回路であり、所定周期のクロックパルスを生成する。そして、このクロックパルスのタイミングに同期して、極座標データメモリ65に読み出しパルス,直交座標データメモリ66に書き込みパルスを各々入力するとともに、画素カウンタ68にインクリメントパルスを入力する。なお、制御回路64は、これら読み出しパルス,書き込みパルス,及びインクリメントパルスを各々2048×3600個出力した時点で、画像処理部70に対して画像変換完了通知を行う。
【0092】
画素カウンタ68は、入力されたインクリメントパルスの数を0〜2047のサイクルで計数するカウンタ(撮像素子から順番に出力される各輝度値をカウントするカウンタ)であり、計数結果としての画素アドレス(極座標データメモリの下位アドレスm)を出力するとともに、2048個のインクリメントパルスを計数する毎に、計数結果をリセットして0とするとともに、回転角カウンタ67に対してカウントパルスを入力する。即ち、この画素カウンタ68が、入力手段によって入力された各輝度値に対応する画素の位置を特定する画素位置特定手段に、相当する。
【0093】
回転角カウンタ67は、入力されたカウントパルスの数を0〜3599のサイクルで計数するカウンタであり、計数結果としての回転角アドレス(極座標データメモリの上位アドレスk)を出力する。即ち、回転角カウンタ67は、入力手段によって入力された各輝度値を出力した時における検査対象光学部材の像及びラインセンサの相対角度を特定する角度特定手段に、相当する。
【0094】
画素カウンタ68から出力された画素アドレス及び回転角カウンタ67から出力された回転角アドレスは、夫々下位アドレスm及び上位アドレスkとして、変換テーブル69にも入力される。即ち、これら画素カウンタ68及び回転角カウンタ67が、角度特定手段によって特定された相対角度及び画素位置特定手段によって特定された画素の位置に基づいて変換テーブルを検索して対応する直交座標値を読み出す検索手段に、相当する。
【0095】
変換テーブル69は、ROM上に構築されたテーブル(画像メモリの各ピクセルを特定する個々の直交座標値に対して、検査対象光学部材の像及びラインセンサの相対角度と前記画素の位置との組み合わせを一つのみ対応させた変換テーブル)であり、入力されたアドレスによって指定されるエントリに、当該入力アドレス(回転角アドレス及び画素アドレス)に対応するデータ(直交座標データメモリ66に対する上位アドレスであるX座標アドレス,及び、下位アドレスであるY座標アドレス)が書き込まれている形式を有する。以下、この変換テーブルの作成手順を説明する。
【0096】
いま、上記式(1')〜(4')においてθ=0.05を代入して、m(0〜1024)及びk(0〜3599)の全ての組合せについて上記式(1'),(2')(即ち、所定の極座標−直交座標変換演算)を実行するとともに、m'(1025〜2047)及びk(0〜3599)の全ての組合せについて上記式(3'),(4')(即ち、所定の極座標−直交座標変換演算)を実行する。すると、計算結果は、図24の表にその一部を示す通りになる。
【0097】
この図24に示したように、上記各式(1')〜(4')に夫々任意のm,k(整数)を代入した計算結果は、必ずしも整数とはならない。即ち、直交座標データの各ピクセルの中心点とは一致しない。従って、X,Yの計算結果の小数点以下第1位を四捨五入して、実際の計算結果に最も近い直交座標(X,Y)を、極座標データ中の極座標(m,k)に対応する座標として特定する。この四捨五入により、m及びkの組み合わせに対して極座標−直交座標変換演算を施して算出された値に最も近い直交座標値(X,Y)が、当該m及びkの組み合わせに対応される。図25は、このようにして得られた極座標値(m,k)及び直交座標値(X,Y)の関係をまとめたテーブルである。
【0098】
但し、この図25に示すX及びYの各組合せは、必ずしもユニークではなく、同一のX及びYの組合せがm及びkの複数の組合せに対応している場合がある。そのため、同一のX及びYの組合せが複数位置にあった場合には、それらX及びYの組合せに対応する四捨五入前の数値(図24)を調べる。そして、四捨五入前の数値との差(Xについての差及びYについての差の合計)が最も小さくなる位置にあるものを、有効なものと特定し、それ以外の位置にあるものについてはスタック値(X=0,Y=0)に書き換える。このスタック値への書換により、極座標−直交座標変換演算の結果が直交座標値(X,Y)に最も近くなるm及びkの組み合わせのみに対して、当該直交座標(X,Y)が対応するようになる。図26は、このスタック値への書換がなされたテーブルを示す(但し、スタック値は横線によって示されている)。
【0099】
この図26によると、直交座標値(X=1536,Y=1908),(X=1538,Y=1908),(X=1532,Y=1901),(X=1534,Y=1901)が、欠落している。即ち、これら直交座標値(X,Y)は、m及びkの何れの組み合わせにも対応していない。この場合には、スタック値への書換がなされた各直交座標値(X,Y)の四捨五入前の数値(図24)が調べられる。そして、それらのうち、欠落している各直交座標値(X,Y)との差(Xについての差及びYについての差の合計)が最も小さくなるものが特定され、その位置にその欠落している直交座標値(X,Y)が書き込まれる。この書き込みにより、m及びkの何れの組み合わせにも対応していない直交座標値(X,Y)が、何れの直交座標値にも対応していないm及びkの組み合わせのうち、極座標−直交座標変換演算の結果が当該直交座標値(X,Y)に最も近くなる組み合わせに、対応することになる。図27は、この書き込みがなされたテーブルを示す。この図27に示す状態にまで加工されたテーブルが、変換テーブル69としてROMに書き込まれるのである。
【0100】
以上の構成を有する変換テーブル69は、入力されたアドレスに対応するY座標アドレス,及び、X座標アドレスを出力して、直交座標データメモリ66に入力する。従って、上位アドレス(回転角アドレス)k=0,下位アドレス(画素アドレス)m=0から順番に、上位アドレス(回転角アドレス)k=3599,下位アドレス(画素アドレス)m=2047までの全てのアドレスの組合せがこの変換テーブル69に入力され、夫々に対応するデータ(Y座標アドレス,X座標アドレス)がこの変換テーブル69から出力されると、直交座標データメモリ66内において検査対象光学部材14全体に相似した画像データ(直交座標データ)が合成されることになる。
【0101】
このように直交座標データが直交座標データメモリ66内に合成されると、画像処理部70には、制御回路64から画像変換完了通知が入力される。この画像変換完了通知を受けた画像処理部70は、直交座標データメモリ66から直交座標データ全体を読み出し、直交座標データ中の各ピクセルの輝度値を所定の閾値と比較し、所定の閾値よりも明るいピクセルの値を“1”とするとともにそれ以外のピクセルの値を“0”とする二値化処理を行う。そして、二値化処理後において“1”の値を有する領域のピクセルの総数(面積)が所定の判定基準値を超えている場合や“1”の値を有するピクセルの集合からなる領域のフィレ径が所定の判定基準値を超えている場合等に、検査対象光学部材14が不良品であると判断するのである。即ち、この画像処理部70は、画像メモリに書き込まれた検査対象光学部材全体に対応する画像データの図形的特徴量を測定する図形的特徴量測定手段,及び、図形的特徴量が所定の判定基準値を超えたか否かを判定する判定手段に、相当する。
【0102】
本第3実施形態におけるその他の構成は、第1実施形態のものと全く同じであるので、その説明を省略する。
<実施形態の作用>
以上のように構成された本第3実施形態によると、検査対象光学部材14が半回転する間に、検査対象光学部材14が0.05°回転する毎に撮像装置3による撮像がなされ、各撮像によって得られたライン状の画像データが制御装置6の極座標データメモリ65に蓄積される。
【0103】
そして、この極座標データメモリ65中において極座標データが合成されると、制御回路64は、所定の周期でインクリメントパルス,読み出しパルス,及び書き込みパルスを出力する。
【0104】
このインクリメントパルスを受信した画素カウンタ68は、このインクリメントパルスの数を計数し、計数結果を画素アドレスmとして、極座標データメモリ65及び変換テーブル69に入力する。この時、画素カウンタ68の計数結果が2047以下である場合には、回転角カウンタ67は、初期値0を回転角アドレスkとして、極座標データメモリ65及び変換テーブル69に入力する。そして、画素カウンタ68は、2048個のインクリメントパルスが入力される毎に計数結果をリセットするとともに、カウントパルスを回転角カウンタ67に入力する。回転角カウンタ67は、このカウントパルスの数を計数し、計数結果を回転角アドレスkとして、極座標データメモリ65及び変換テーブル69に入力する。
【0105】
極座標データメモリ65は、読み出しパルスが入力されると、その時点で入力されているアドレス(上位アドレスとしての回転角アドレスk,下位アドレスとしての画素アドレスm)によって指定されるピクセルに書き込まれている輝度値を、直交座標データメモリ66に対して出力する。
【0106】
一方、変換テーブル69は、入力されたアドレス(上位アドレスとしての回転角アドレスk,下位アドレスとしての画素アドレスm)に対応するデータ(X座標アドレス,Y座標アドレス)を出力して、直交座標データメモリ66に入力する。
【0107】
直交座標データメモリ66は、書き込みパルスが入力されると、その時点で入力されているアドレス(上位アドレスとしてのX座標アドレス,下位アドレスとしてのY座標アドレス)によって指定されるピクセルに、極座標データメモリ65から入力された輝度値情報を書き込む。
【0108】
このとき、変換テーブル69内には、同一の直交座標値(X,Y)は、重複して記載されていないので、直交座標データメモリ66内の同一ピクセルに輝度値情報が複数回に亘って上書きされることはない。しかも、直交座標データメモリ66の各ピクセルに書き込まれる輝度値情報は、極座標データにおける座標値(m,k)に対する極座標−直交座標変換演算結果が最も当該ピクセルの中心に近くなるものの輝度値である。従って、実際の検査対象光学部材14の像に近似した直交座標データを得ることができる。また、直交座標データメモリ66(における検査対象光学部材14の周縁)内に対応する全ての直交座標値(X,Y)が、予め、何れかの極座標(m,k)に対応付けられているので、直交座標データにおける輝度値抜けは、生じない。
【0109】
極座標データメモリ65から出力された全ての輝度値情報が直交座標データメモリ66に書き込まれると、画像処理部70は、このようにして得られた直交座標系による画像データ(直交座標データ)に基づいて図形的特徴量を算出し、算出した図形的特徴量を一定の判断基準値と比較することによって、検査対象光学部材14の良否判定を行う。
【0110】
本第3実施形態におけるその他の作用は、第1実施形態のものと同じなので、その説明を省略する。
【0111】
【実施形態4】
本発明の第4の実施形態は、上記第3実施形態に比して、制御装置6内に極座標データメモリ65を有さず、撮像装置3によって1ラインの撮像がなされる毎に順次一画素づつ座標変換を行い、その画素を直交座標データメモリ66に書き写すことを、特徴とする。
<光学部材検査装置の構成>
図28は、本第4実施形態による制御装置6及び撮像装置3の回路構成を示すブロック図である。
【0112】
図28における直交座標データメモリ66,変換テーブル69,及び画像処理部70は、上述の第3実施形態のものと全く同じなので、その説明を省略する。制御装置6の回転角検出器71は、読取装置10から入力されたパルスを計数し、入力されたパルスの数が検査対象光学部材14の回転角0.05°に対応した数に達する毎に、その旨を示す角度検出信号を画像入力制御部72に通知するとともに、リセット信号を出力画素カウンタ73に入力する。また、回転角検出器71は、角度検出信号を出力した回数を0〜3599のサイクルで計数し、計数結果としての回転角アドレスを上位アドレスkとして変換テーブル69に入力する。即ち、この回転角検出器71が、入力手段によって入力された各輝度値を出力した時における検査対象光学部材の像及びラインセンサの相対角度を特定する角度特定手段に相当する。
【0113】
制御装置6の画像入力制御部72は、入力手段として、制御装置6全体にわたる画像データの流れを司る回路であり、所定周期のクロックパルスを生成する。そして、このクロックパルスを所定の周期で分周することにより、バッファメモリ32に対する駆動パルス及びA/D変換器31に対する変換パルスを生成する。また、画像入力制御部72は、回転角検出器71から角度検出信号が入力される毎に、撮像装置3の撮像素子5に対して撮像開始信号を入力するとともに、所定時間後に読み出し開始信号を入力する。また、画像入力制御部72は、読み出し開始信号を出力すると、駆動パルス及び変換パルスと同じタイミングで、書き込みパルスを直交座標データメモリ66に入力する。そして、書き込みパルスを計2048×3600個出力した時点で、画像処理部70に対して画像変換完了通知を行う。
【0114】
撮像装置3の撮像素子5は、画像入力制御部72から撮像開始信号が入力されると、撮像(電荷の蓄積)を開始する。そして、読み出し信号が入力されると、各画素に蓄積された電荷を、パラレルにバッファメモリ32に転送する。
バッファメモリ32は、一ライン分(2048個)の電荷を保持するメモリであり、撮像素子5によって転送された電荷を、駆動パルスのタイミングに従って一つづつA/D変換器31に入力する。また、バッファメモリ32は、A/D変換器31に一つの画素の電荷を入力する毎に、制御装置6の出力画素カウンタ73にカウントパルスを入力する。
【0115】
撮像装置3のA/D変換器31は、画像入力制御部72から入力される変換パルスに従って、撮像素子5から出力される電荷(アナログ信号)をデジタル信号である輝度値情報に変換し、直交座標データメモリ66に入力する。
【0116】
制御装置6の出力画素カウンタ73は、回転角検出器71からリセット信号が入力される毎にリセットされるとともに、バッファメモリ32から入力されたカウントパルスを計数し、計数結果としての画素アドレスを下位アドレスmとして変換テーブル69に入力する。即ち、出力画素カウンタ73が、入力手段によって入力された各輝度値に対応する画素の位置を特定する画素位置特定手段に相当する。
【0117】
本第4実施形態におけるその他の構成は、第1実施形態のものと全く同じであるので、その説明を省略する。
<実施形態の作用>
以上のように構成された本第4実施形態によると、検査対象光学部材14が0.05°回転する毎に、回転角検出器71は、回転角アドレス(変換テーブル69の上位アドレス)kをインクリメントするとともに、出力画素カウンタ73をリセットし、画像入力制御部72に角度検出信号を入力する。角度検出信号を受信した画像入力制御部72は、撮像装置3の撮像素子5に対して撮像を行わせる。
【0118】
撮像素子5は、画像入力制御部72から読出開始信号を受信すると、各画素に蓄積されていた電荷をバッファメモリ32へパラレルに出力する。バッファメモリ32は、このように転送された各画素の電荷を順番に出力する。A/D変換器31は、このようにしてバッファメモリ32から画素毎に出力された電荷を、デジタル信号である輝度値情報に変換し、直交座標データメモリ66に入力する。
【0119】
このとき同時に、出力画素カウンタ73は、バッファメモリ32から電荷が出力された回数を計数し、計数結果(即ち、直交座標データメモリ66に入力されている輝度値情報に対応する画素の番号)を、画素アドレス(下位アドレス)mとして変換テーブル69に入力する。すると、変換テーブル69は、その時点で入力されているアドレス(上位アドレスとしての回転角アドレスk,下位アドレスとしての画素アドレスm)に対応するデータ(X座標アドレス,Y座標アドレス)を出力して、直交座標データメモリ66に入力する。
【0120】
直交座標データメモリ66は、書き込みパルスが入力された時に入力されているアドレス(上位アドレスとしてのX座標アドレス,下位アドレスとしてのY座標アドレス)によって指定されるピクセルに、撮像装置3から入力された輝度値情報を書き込む。
【0121】
このとき、変換テーブル69内には、同一の直交座標値(X,Y)は、重複して記載されていないので、直交座標データメモリ66内の同一ピクセルに輝度値情報が複数回に亘って上書きされることはない。しかも、直交座標データメモリ66の各ピクセルに書き込まれる輝度値情報は、極座標データにおける極座標値(m,k)に対する極座標−直交座標変換演算結果が最も当該ピクセルの中心に近くなるものの輝度値である。従って、実際の検査対象光学部材14の像に近似した直交座標データを得ることができる。また、直交座標データメモリ66(における検査対象光学部材14の周縁)内に対応する全ての直交座標値(X,Y)が、予め、何れかの極座標値(m,k)に対応付けられているので、直交座標データにおける輝度値抜けは、生じない。
【0122】
回転角検出器71から出力される回転角アドレスが最大値k=3599となり、且つ、出力画素カウンタ73から出力される画素アドレスが最大値m=2047となった時点で画像変換完了通知が画像入力制御部72から出力されると、画像処理部70は、直交座標データメモリ66内にて合成された直交座標データに基づいて図形的特徴量を算出し、算出した図形的特徴量を一定の判断基準値と比較することによって、検査対象光学部材14の良否判定を行う。
【0123】
本第4実施形態におけるその他の作用は、第1実施形態のものと同じなので、その説明を省略する。
【0124】
【実施形態5】
本発明の第5の実施形態は、上述の第4実施形態と比較して、変換テーブル中の各直交座標値について、それが有効であるか無効であるかのフラグを設定し、有効である事を示すフラグが設定されている直交座標値に関してのみ座標変換を行うことを、特徴としている。
<光学部材検査装置の構成>
図29は、本第5実施形態による制御装置6の構成を示すブロック図である。
【0125】
図29に示すように、本第5実施形態による制御装置6は、変換テーブル74の構成及び機能,並びに、画像入力制御部72から直交座標データメモリ66に入力される書き込みパルスの信号路にゲート回路75が設けられている点のみ、図28に示す第4実施形態の制御装置6と異なる。
【0126】
変換テーブル74は、ROM上に構築されており、入力されたアドレス(上位アドレスとしての回転角アドレスk,及び、下位アドレスとしての画素アドレスm)によって指定されるエントリに、当該入力アドレスに対応するデータ(直交座標データメモリ66に対する上位アドレスであるX座標アドレス,下位アドレスであるY座標アドレス,及び、これら両アドレスが有効であるか(=1)無効であるか(=0)を示すデータ有効フラグビットF)が書き込まれている形式を有する。以下、この変換テーブルの作成手順を説明する。
【0127】
いま、上述の第3実施形態において説明した手順により図25と同じ表を生成し、生成した表中に書き込まれているX及びYの組合せをチェックする。そして、表中に一箇所のみ記載されているX及びYの組合せについては、全て有効であると判定し、同じ欄内にデータ有効フラグビットF=1をセットする。また、同一のX及びYの組合せが複数箇所に記載されている場合には、それらX及びYの組合せに対応する四捨五入前の数値(図24)を調べる。そして、四捨五入前の数値との差(Xについての差及びYについての差の合計)が最も小さくなる位置に記載されているものを、有効な組合せと特定し、それが記載されている欄内にデータ有効フラグビットF=1を設定する。一方、それ以外の欄には、データ有効フラグビットF=0(即ち、無効を示すフラグ)を設定する。図30は、このようなデータ有効フラグビットFの設定がなされたテーブルを示す。この図30に示す状態にまで加工されたテーブルが、変換テーブル74としてROMに書き込まれるのである。
【0128】
以上の構成を有する変換テーブル74は、入力されたアドレスに対応するY座標アドレス,及び、X座標アドレスを直交座標データメモリ66に入力するとともに、入力されたアドレスに対応するデータ有効フラグビットFをゲート回路75の制御端子に入力する。
【0129】
ゲート回路75は、変換テーブル74からデータ有効フラグビットF=1が出力されている時,即ち、有効なX座標アドレス及びY座標アドレスがこの変換テーブル74から出力されている時にのみ、画像入力制御部72から出力された書き込みパルスを通過させる。一方、ゲート回路75は、変換テーブル74からデータ有効フラグビットF=0が出力されている時,即ち、無効なX座標アドレス及びY座標アドレスがこの変換テーブル74から出力されている時には、画像入力制御部72から出力された書き込みパルスを阻止する。
【0130】
本第5実施形態のその他の構成は、第4実施形態のものと同じなので、その説明を省略する。
<実施形態の作用>
以上のように構成された本第5実施形態によると、検査対象光学部材14が0.05°回転する毎に、回転角検出器71は、回転角アドレス(変換テーブル69の上位アドレス)kをインクリメントするとともに、出力画素カウンタ73をリセットし、画像入力制御部72に角度検出信号を入力する。角度検出信号を受信した画像入力制御部72は、撮像装置3の撮像素子5に対して撮像を行わせる。
【0131】
撮像素子5は、画像入力制御部72から読出開始信号を受信すると、各画素に蓄積されていた電荷をバッファメモリ32へパラレルに出力する。バッファメモリ32は、このように転送された各画素の電荷を順番に出力する。A/D変換器31は、このようにしてバッファメモリ32から各画素毎に出力された電荷を、デジタル信号である輝度値情報に変換し、直交座標データメモリ66に入力する。
【0132】
このとき同時に、出力画素カウンタ73は、バッファメモリ32から電荷が出力された回数を計数し、計数結果(即ち、直交座標データメモリ66に入力されている輝度値情報に対応する画素の番号)を、画素アドレス(下位アドレス)mとして変換テーブル69に入力する。すると、変換テーブル74は、その時点で入力されているアドレス(上位アドレスとしての回転角アドレスk,下位アドレスとしての画素アドレスm)に対応するX座標アドレス及びY座標アドレスを直交座標データメモリ66に入力するとともに、対応するデータ有効フラグビットFをゲート回路75に入力する。
【0133】
ゲート回路75は、入力されたデータ有効フラグビットFが“0”であれば画像入力制御部72からの書き込みパルスを阻止し、入力されたデータ有効フラグビットFが“1”であれば書き込みパルスを通過させる。
【0134】
その結果、直交座標データメモリ66は、書き込みパルスがゲート回路75を介して入力された時にのみ、入力されているアドレス(上位アドレスとしてのX座標アドレス,下位アドレスとしてのY座標アドレス)によって指定されるピクセルに、撮像装置3から入力された輝度値情報を書き込む。一方、書き込みパルスがゲート回路75によって阻止されている時には、撮像装置3のA/D変換器31から入力された輝度値情報は、直交座標データメモリ66には書き込まれずに破棄される。
【0135】
ところで、変換テーブル74内においては、同一のX座標アドレス及びY座標アドレスの組合せに関して、それが有効であることを示すデータ有効フラグビットF=1は、一箇所にしか設定されていない。従って、直交座標データメモリ66内の同一ピクセルに輝度値情報が複数回に亘って上書きされることはない。しかも、データ有効フラグビットF=1が設定された直交座標値(X,Y)に対応する極座標値(m,k)は、それに基づく極座標−直交座標変換演算結果が、最も当該直交座標値(X,Y)に近くなるものである。従って、実際の検査対象光学部材14の像に近似した直交座標データを得ることができる。
【0136】
回転角検出器71から出力される回転角アドレスが最大値k=3599となり、且つ、出力画素カウンタ73から出力される画素アドレスが最大値m=2047となった時点で画像変換完了通知が画像入力制御部72から出力されると、画像処理部70は、直交座標データメモリ66内にて合成された直交座標データに基づいて図形的特徴量を算出し、算出した図形的特徴量を一定の判断基準値と比較することによって、検査対象光学部材14の良否判定を行う。
【0137】
本第5実施形態におけるその他の作用は、第1実施形態のものと同じなので、その説明を省略する。
【0138】
【発明の効果】
以上のように構成された本発明の光学部材検査装置によれば、少ない処理ステップ数と処理時間で座標変換を行うことができる。
【0139】
また、請求項13,14,又は16の光学部材検査装置によれば、座標変換後の画像データに輝度値の欠落を生じることなく座標変換を行うことができる。
また、請求項10,13,又は14の光学部材検査装置によれば、座標変換演算によって算出される直交座標値が画像メモリ中のピクセルの中心に最も近くなる輝度値を当該ピクセルに書き込むことができる。
【図面の簡単な説明】
【図1】 本発明の第1の実施の形態による光学部材検査装置の概略構成を示す側面断面図
【図2】 図1の検査対象光学部材等を撮像装置の位置から見た平面図
【図3】 図1の制御装置の内部回路構成を示すブロック図
【図4】 検査対象光学部材に光学的欠陥がない場合における光の進行状態を示す図
【図5】 検査対象光学部材に光学的欠陥がある場合における光の進行状態を示す図
【図6】 検査対象光学部材に光学的欠陥がある場合に撮像装置から出力される画像データの輝度分布を示すグラフ
【図7】 遮光板,撮像対象領域及び検査対象光学部材の相対位置と極座標データ格納領域に格納された極座標データとの関係を示す図
【図8】 遮光板,撮像対象領域及び検査対象光学部材の相対位置と極座標データ格納領域に格納された極座標データとの関係を示す図
【図9】 遮光板,撮像対象領域及び検査対象光学部材の相対位置と極座標データ格納領域に格納された極座標データとの関係を示す図
【図10】 遮光板,撮像対象領域及び検査対象光学部材の相対位置と極座標データ格納領域に格納された極座標データとの関係を示す図
【図11】 遮光板,撮像対象領域及び検査対象光学部材の相対位置と極座標データ格納領域に格納された極座標データとの関係を示す図
【図12】 極座標系から直交座標系への座標変換方法を示す図
【図13】 図3の極座標データ格納領域及び直交座標データ格納領域に格納されている画像データを示すメモリマップ
【図14】 擬似的な画像データの増加による輝度値情報の穴埋めを示す説明図
【図15】 変換テーブルの作成手順を示す図
【図16】 図3の変換テーブルの構造を示す図
【図17】 図3のCPUにて実行される制御処理を示すフローチャート
【図18】 図17のS02にて実行される座標変換行程処理サブルーチンを示すフローチャート
【図19】 本発明の第1実施形態による作用の説明図
【図20】 本発明の第2の実施の形態における制御装置の内部回路構成を示すブロック図
【図21】 図20のCPUにて実行される制御処理を示すフローチャート
【図22】 図21のS21にて実行される座標変換行程処理サブルーチンを示すフローチャート
【図23】 本発明の第3の実施の形態における制御装置の内部回路構成を示すブロック図
【図24】 変換テーブルの作成手順を示す図
【図25】 変換テーブルの作成手順を示す図
【図26】 変換テーブルの作成手順を示す図
【図27】 図23の変換テーブルの構造を示す図
【図28】 本発明の第4の実施の形態における制御装置の内部回路構成を示すブロック図
【図29】 本発明の第5の実施の形態における制御装置の内部回路構成を示すブロック図
【図30】 図29の変換テーブルの構造を示す図
【図31】 先願の光学部材検査装置の概略図
【図32】 先願における座標変換の説明図
【図33】 ラインセンサの撮像周期の説明図
【図34】 直交座標データにおける輝度値抜け状態を示す図
【符号の説明】
3 撮像装置
4 撮像レンズ
5 撮像素子
6 制御装置
8 駆動モータ
10 読取装置
14 検査対象光学部材
15 ホルダ
60 CPU
62 ホストメモリ
62a 全極座標データ格納領域
62b 直交座標データ格納領域
62c 変換テーブル格納領域
62d 極座標データ格納領域
63 回転角検出回路
65 極座標データメモリ
66 直交座標データメモリ
67 回転角カウンタ
68 画素カウンタ
69 変換テーブル
71 回転角検出器
73 出力画素カウンタ
74 変換テーブル
[0001]
[Technical field to which the invention belongs]
The present invention relates to an optical member inspection apparatus for detecting an optical defect such as a shape abnormality of an optical member such as a lens.
[0002]
[Prior art]
Optical members such as lenses and prisms are designed such that an incident light beam is regularly refracted, travels in parallel, converges or diverges in one point or a line. However, lint or the like is mixed in the optical member during the formation of the optical member (so-called “blemish”), scratches or the like are generated on the surface of the optical member due to human handling after molding, or dust is generated. If they are attached, the incident light flux is disturbed, so that desired performance cannot be obtained.
[0003]
Therefore, the applicant of the present application previously disclosed in Japanese Patent Application No. 9-50760 an optical member inspection in which the entire inspection target optical member is imaged using a rotation mechanism and a line sensor that rotate the inspection target optical member around its optical axis. A device was proposed. FIG. 31 is a schematic view showing a main part of the optical member inspection apparatus. The line sensor 100 of the optical member inspection apparatus shown in FIG. 31A displays an image of the inspection target optical member 102 formed by the imaging lens 101 in the diameter direction every time the inspection target optical member 102 rotates by a predetermined angle. Take an image along the line. The reason why the line sensor 100 is used in this way is to prevent the illumination light that illuminates the inspection target optical member 102 from directly entering the line sensor 100.
[0004]
The image data output from the line sensor 100 each time an image is taken is written in units of rows in order from the first row of the image memory 103. Therefore, the coordinate system of the image data in the image memory 103 is a polar coordinate system in which the horizontal axis (row) is the diameter direction and the vertical axis is the rotation angle from the initial position. Therefore, as shown in FIG. 31B, on the image data in the image memory 103, the optical defect formed near the rotation center of the optical member 102 to be inspected appears to have a large area, and the rotation center. The smaller the area, the smaller the area.
[0005]
Thus, the area of the optical defect on the image data in the image memory 103 is not directly proportional to the actual area of the optical defect, so the area of the optical defect on the image data Whether the inspection target optical member 102 is a defective product or a non-defective product cannot be determined based on whether or not the value exceeds a certain threshold value.
[0006]
Therefore, in Japanese Patent Application No. 9-50760, a second image memory for storing image data in an orthogonal coordinate system is prepared, and all the luminance values constituting the image data in a polar coordinate system are predetermined in order. The luminance value is written to the pixel closest to the calculated orthogonal coordinate value in the second image memory. Then, after executing such coordinate conversion processing for all the luminance values, based on whether or not the area of the region indicating the optical defect included in the image data in the second image memory exceeds a certain threshold value. Thus, it is determined whether the inspection target optical member 102 is a defective product or a non-defective product.
[0007]
[Problems to be solved by the invention]
However, such a coordinate conversion method has the following problems. That is, as shown in FIG. 32, in the vicinity of the center of the optical member 102 to be inspected, a plurality of luminance values in the image data based on the polar coordinate system are the same luminance values (the same pixel in the image memory) in the image data based on the orthogonal coordinate system. ) Frequently occurs. Even in such a case, according to the coordinate conversion method described above, a coordinate conversion operation is performed for each luminance value in the image data in the polar coordinate system, and each luminance value is sequentially applied to the same pixel in the second image memory. It will be overwritten.
[0008]
As described above, according to the coordinate transformation method described above, it is necessary to execute and write a plurality of times in order to obtain a luminance value corresponding to each pixel in the image data based on the orthogonal coordinate system. This is the first problem in the prior art.
[0009]
If the imaging cycle of the line sensor 100 is too long compared to the relative rotational speed between the line sensor 100 and the inspection target optical member 102, an image is captured for each individual imaging by the line sensor 100 as shown in FIG. The area of the optical member 102 to be inspected is increased, and the number of lines of image data in the polar coordinate system is reduced. As a result, as shown in FIG. 34, the luminance value may be lost in the image data in the orthogonal coordinate system after the coordinate conversion. If such a missing luminance value occurs, the subsequent pass / fail judgment becomes inaccurate. This is the second problem in the prior art.
[0010]
Further, according to the coordinate conversion method described above, when a plurality of luminance values are overwritten on the same pixel in the image memory, the luminance value overwritten last is determined as the luminance value of the pixel. As a result, even if the Cartesian coordinate value calculated for the previously written luminance value is closer to the center of the pixel than the Cartesian coordinate value calculated for the last written luminance value, it happens. There was an unreasonable reason that the luminance value was erased only because the processing order was first. Thus, if the brightness value corresponding to the periphery of the pixel is written in the pixel, the subsequent pass / fail judgment becomes inaccurate. This is the third problem in the prior art.
[0011]
In view of the first problem, the first problem of the present invention is to provide an optical member inspection apparatus capable of performing coordinate conversion with a small number of processing steps and processing time.
[0012]
In view of the second problem, the second problem of the present invention is to provide an optical member inspection apparatus capable of performing coordinate conversion without causing loss of luminance values in image data after coordinate conversion. is there.
[0013]
In view of the third problem, the third problem of the present invention is that a luminance value at which the orthogonal coordinate value calculated by the coordinate transformation calculation is closest to the center of the pixel in the image memory can be written to the pixel. An optical member inspection apparatus is provided.
[0014]
[Means for Solving the Problems]
The invention described in claim 1 is an optical member inspection apparatus for detecting an optical defect of an optical member to be inspected, which is made in order to solve the first problem. A line sensor in which a plurality of pixels are arranged in one direction in order to repeatedly capture an image of the inspection target optical member formed by the rotation unit, a rotation unit that relatively rotates the image of the inspection target optical member and the line sensor, Input means for inputting image data composed of luminance values corresponding to the respective pixels output from a line sensor, an image memory in which a plurality of pixels whose positions are specified by orthogonal coordinates are arranged in a matrix, and the input means An image of the optical member to be inspected when each luminance value input by the is output When Line sensor When Angle specifying means for specifying the relative angle, and pixel position specifying means for specifying the position of the pixel corresponding to each luminance value input by the input means, When a predetermined polar coordinate-orthogonal coordinate conversion operation is performed on all polar coordinate values composed of combinations of the relative angle and the pixel position, individual orthogonal coordinate values that specify each pixel of the image memory are obtained. Each polar coordinate value that results in the closest calculation is associated with the orthogonal coordinate value, and the orthogonal coordinate value that does not correspond to any polar coordinate value when the predetermined polar coordinate-orthogonal coordinate conversion calculation is performed. Is generated, the polar coordinate value whose calculation result of the polar coordinate-orthogonal coordinate conversion calculation is closest to the orthogonal coordinate value is associated with an orthogonal coordinate value that does not correspond to any polar coordinate value. When, The conversion table is searched based on the relative angle specified by the angle specifying means and the pixel position specified by the pixel position specifying means, and a corresponding orthogonal coordinate value is read, and input by the input means And writing means for writing each luminance value thus written into the pixel in the image memory corresponding to the orthogonal coordinate value read by the search means.
[0015]
With such a configuration, the line sensor repeatedly captures an image of the inspection target optical member while the image of the inspection target optical member and the line sensor are relatively rotated by the rotating unit. The input means inputs image data (image data composed of luminance values corresponding to each pixel of the line sensor) output from the line sensor when the line sensor images the optical member to be inspected. When the input means inputs each brightness value constituting the image data, the angle specifying means specifies the image of the inspection target optical member and the relative angle of the line sensor when the brightness value is output from the line sensor, and the pixel The position specifying means specifies the position in the line sensor of the pixel corresponding to the luminance value. When the relative angle and the pixel position are specified in this way, the search unit searches the conversion table based on the relative angle and the pixel position, and reads the corresponding orthogonal coordinate value. When the orthogonal coordinate value is read, the writing unit writes each luminance value input by the input unit to the pixel in the image memory corresponding to the read orthogonal coordinate value. Here, the conversion table corresponds to only one combination of the image of the optical member to be inspected, the relative angle of the line sensor, and the position of the pixel for each orthogonal coordinate value that specifies each pixel of the image memory. I am letting. Therefore, the same orthogonal coordinate value is not read based on a plurality of combinations of the relative angle and the pixel position. As a result, it is possible to prevent a plurality of luminance values from being overwritten on the same pixel in the image memory, thereby reducing the number of processing steps and the processing time.
[0016]
The invention described in claim 2 is an optical member inspection apparatus for detecting an optical defect of an optical member to be inspected, which is made to solve the first problem. An imaging lens and the imaging lens A line sensor in which a plurality of pixels are arranged in one direction in order to repeatedly capture an image of the inspection target optical member formed by the rotation unit, a rotation unit that relatively rotates the image of the inspection target optical member and the line sensor, Input means for inputting image data composed of luminance values corresponding to the respective pixels output from the line sensor, an image memory in which a plurality of pixels whose positions are specified by orthogonal coordinates are arranged in a matrix, When a predetermined polar coordinate-orthogonal coordinate conversion operation is performed on all polar coordinate values composed of a combination of a relative angle between the image of the optical member to be inspected and the line sensor and the position of the pixel, the image memory Each polar coordinate value that is the closest calculation result to each orthogonal coordinate value that specifies each pixel of the pixel is associated with the orthogonal coordinate value, and any polar coordinate when the predetermined polar coordinate-orthogonal coordinate conversion operation is performed. When an orthogonal coordinate value that does not correspond to a value is generated, the polar coordinate value that is closest to the orthogonal coordinate value is not associated with any of the polar coordinate values. Conversion table corresponding to Cartesian coordinate values And from this conversion table, a combination of a relative angle and the position of the pixel, and the orthogonal coordinate value corresponding to this combination, respectively, an extraction means for extracting one from the image data input from the input means, Reading means for reading out the luminance value corresponding to the combination of the relative angle extracted by the extracting means and the position of the pixel, and the luminance value read out by the reading means as the orthogonal coordinate value extracted by the extracting means. And writing means for writing into corresponding pixels in the image memory.
[0017]
With such a configuration, the line sensor repeatedly captures an image of the inspection target optical member while the image of the inspection target optical member and the line sensor are relatively rotated by the rotating unit. The input means inputs image data (image data composed of luminance values corresponding to each pixel of the line sensor) output from the line sensor when the line sensor images the optical member to be inspected. On the other hand, the extracting means extracts one combination of the relative angle and the position of the pixel from the conversion table and one orthogonal coordinate value corresponding to this combination. Then, the reading means reads the luminance value corresponding to the combination of the relative angle and the pixel position extracted by the extracting means from the image data input from the input means, and the writing means is read by this reading means. The obtained luminance value is written to the pixel in the image memory corresponding to the orthogonal coordinate value extracted by the extracting means. Here, the conversion table corresponds to only one combination of the image of the optical member to be inspected, the relative angle of the line sensor, and the position of the pixel for each orthogonal coordinate value that specifies each pixel of the image memory. I am letting. Therefore, the same orthogonal coordinate value is not read based on a plurality of combinations of the relative angle and the position of the image. As a result, it is possible to prevent a plurality of luminance values from being overwritten on the same pixel in the image memory, thereby reducing the number of processing steps and the processing time.
[0018]
According to a third aspect of the present invention, in the first or second aspect, the graphical feature quantity measuring means for measuring the graphical feature quantity of the image data corresponding to the entire inspection target optical member written in the image memory, and the figure It is specified by further comprising determination means for determining whether or not the target feature amount exceeds a predetermined determination reference value.
[0019]
According to a fourth aspect of the present invention, the input means of the second aspect is configured such that the line sensor repeatedly captures an image of the optical member to be inspected, and the image data output from the line sensor is line by line for each imaging. The read-out means is specified by a row corresponding to the relative angle extracted by the extraction means and a column corresponding to the position of the pixel extracted by the extraction means. It is specified by reading the luminance value from the pixel.
[0020]
According to a fifth aspect of the present invention, the image stored in the temporary storage memory after the writing means of the fourth aspect completes the storage of the image data corresponding to the entire inspection target optical member in the temporary storage memory. Each luminance value constituting the data is specified by writing to the image memory.
[0021]
According to a sixth aspect of the present invention, the line sensor according to the first aspect is fixed in a state where the column of pixels is orthogonal to the optical axis of the imaging lens, and the rotating means moves the optical member to be inspected to the This is specified by rotating the imaging lens around the optical axis, and the angle specifying means includes an encoder for detecting the rotation angle of the optical member to be inspected rotated by the rotating means.
[0022]
According to a seventh aspect of the invention, the pixel position specifying means of the first aspect is specified by having a counter that counts each luminance value output in order from the line sensor.
[0026]
According to an eleventh aspect of the present invention, the conversion table according to any one of the eighth to tenth aspects includes an individual orthogonal coordinate value that identifies each pixel of the image memory among combinations of the relative angle and the pixel position. For those that do not correspond, Invalid value It is specified by making it correspond.
[0027]
Claim 9 The described invention is claimed. 1 or 2 In the conversion table, all combinations of the relative angle and the pixel position are associated with any of the orthogonal coordinate values, and the combination of the relative angle and the pixel position corresponding to each orthogonal coordinate value is When there are a plurality of flags, flags indicating invalidity are attached to all combinations other than one effective combination, and the writing unit specifies the relative angle and the pixel position specified by the angle specifying unit. The pixel in the image memory corresponding to the orthogonal coordinate value read out by the search means only when the invalid flag is not added in the conversion table for the combination of the pixel positions specified by the means Is specified by writing the luminance value input by the input means.
[0030]
Claim 10 In the described invention, the line sensor according to claim 2 is fixed in a state in which the column of pixels is orthogonal to the optical axis of the imaging lens, and the rotating means attaches the optical member to be inspected to the imaging lens. It is specified by rotating around the optical axis.
[0031]
Claim 11 The described invention is claimed. 1 or 2 For the angle other than the image of the optical member to be inspected and the relative angle of the line sensor when the conversion table in FIG. 6 outputs each luminance value input by the input means, a combination of the angle and the pixel position The predetermined polar coordinate-orthogonal coordinate conversion calculation is performed on the image, and the orthogonal coordinate value closest to the value obtained as a result of the calculation is made to correspond to the relative angle that is larger and closest to the angle. It is a thing.
[0032]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0033]
Embodiment 1
<Configuration of optical member inspection device>
A schematic configuration of the optical member inspection apparatus according to the first embodiment is shown in a side sectional view of FIG. As shown in FIG. 1, the illumination lamp 1, the diffusing plate 2, and the imaging device 3 constituting the optical member inspection device are disposed on the same optical axis l.
[0034]
The imaging apparatus 3 includes an imaging lens 4 that is a positive lens system, and an imaging element (CCD line sensor in which a plurality of pixels are arranged in one direction) 5 that captures an image of light converged by the imaging lens 4. It is configured. In FIG. 1, the image sensor 5 is installed so that its pixel row is directed to the left and right. Further, the pixel row of the image sensor 5 intersects the optical axis l of the image pickup lens 4 perpendicularly at the center thereof. Note that the imaging lens 4 can move forward and backward (adjustable in focus) with respect to the imaging element 5 in the imaging device 3, and the imaging device 3 itself can also be adjusted to advance and retract in the direction of the optical axis l. It is attached to a frame (not shown).
[0035]
The image pickup device 5 repeatedly captures an image in a line shape every predetermined time (a time during which charge is appropriately accumulated in each pixel), and self-scans each pixel in the pixel arrangement order, and charges accumulated in each pixel. Is output. The series of charges output from the image sensor 5 in this way is converted into luminance value information by a predetermined amplification process or A / D conversion process. Then, it is input to the control device 6 as image data composed of luminance value information for pixels for one line.
[0036]
The inspection target optical member 14 is a circular lens (negative lens) as shown in FIG. 2 which is a plan view seen from the imaging device 3 side, and is attached by a holder 15 attached to a frame (not shown) of the optical member inspection device. The surface of the imaging lens 4 (the surface facing the imaging lens 4) is held so as to be conjugate with the imaging surface of the imaging device 5. The holder 15 has an annular shape centered on the optical axis l of the imaging lens 4 and holds the periphery of the optical member 14 to be inspected over the entire periphery. Therefore, as long as the center of the periphery of the inspection target optical member 14 and the optical axis coincide with each other, the optical axis of the inspection target optical member 14 is coaxial with the optical axis l of the imaging lens 4.
[0037]
In addition, the holder 15 can rotate in a plane perpendicular to the optical axis 1 around the optical axis 1 of the imaging lens 4. An annular gear 16 is formed on the periphery of the holder 15. The annular gear 16 meshes with the pinion gear 7 attached to the drive shaft of the drive motor 8. Therefore, when the drive motor 8 rotates its drive shaft, the holder 15 is rotationally driven via both gears 7 and 16, and the optical member 14 to be inspected held by the holder 15 is orthogonal to the optical axis l. It is rotationally driven in the counterclockwise direction when viewed from the imaging device 3 side in the plane. Accordingly, the holder 15, both gears 16 and 7, and the drive motor 8 constitute a rotating unit that relatively rotates the image of the optical member 14 to be inspected and the image sensor 5.
[0038]
On the lower surface of the holder 15 (the surface on the diffusion plate 2 side), a code pattern composed of radial black and white stripes centered on the optical axis l is printed, and this is shown on a frame (not shown) of the optical member inspection apparatus. A reader 10 having a reflective photosensor for reading a code pattern is fixed. These code patterns and the reading device 10 constitute an incremental encoder, and input the number of pulses corresponding to the rotation amount of the optical member 14 to be inspected to the control device 6.
[0039]
Note that the magnification of the imaging lens 4 (that is, the position of the imaging device 3 itself and the position of the imaging lens 4 with respect to the imaging device 5) forms an image on the imaging surface of the imaging device 5 over the entire width in the diameter direction of the inspection target optical member 14. It has been adjusted so that it can. Therefore, the imaging element 5 can capture an image of the surface of the optical member 14 to be inspected (image for one line over the entire area in the diameter direction). In FIG. 2, an imaging target area for one line that can be imaged by the imaging element 5 is indicated by a two-dot chain line.
[0040]
The illumination lamp 1 is an incandescent lamp that emits illumination light (white light), and is fixed to a frame (not shown) of the optical member inspection apparatus.
As shown in FIG. 2, the diffuser plate 2 disposed between the illumination lamp 1 and the inspection target optical member 14 has a disk shape larger in diameter than the inspection target optical member 14, and the surface thereof. Is processed as a rough surface. Therefore, the diffusing plate 2 can receive the illumination light emitted from the illumination lamp 1 on the entire back surface thereof and diffuse it toward the optical member 14 to be inspected. The diffusion plate 2 is fixed to a frame (not shown) of the optical member inspection device so that the center thereof is orthogonal to the optical axis l of the imaging lens 4.
[0041]
On the surface of the diffusing plate 2 (on the inspection target optical member 14 side), a light shielding plate 9 having a strip shape is attached with its longitudinal direction oriented in a direction parallel to the direction of the pixel columns of the image sensor 5. It has been. The center of the light shielding plate 9 coincides with the optical axis l of the imaging lens 4. The total length of the light shielding plate 9 in the longitudinal direction is longer than the diameter of the inspection target optical member 14. As shown in FIG. 2, when viewed from the position of the imaging device 3, both ends of the light shielding plate 9 protrude beyond the outer edge of the inspection target optical member 14. In addition, the width of the light-shielding plate 9 is a peripheral edge of light incident on each pixel of the image sensor 5 as shown in FIG. It is wider than the interval between the rays m and m.
[0042]
The control device 6 is a device that determines whether the inspection target optical member 14 is a good product or a defective product based on the image data input from the imaging device 3.
FIG. 3 is a block diagram showing an internal circuit configuration of the control device 6. As illustrated in FIG. 3, the control device 6 includes a CPU 60, a frame memory 61, a host memory 62, and a rotation angle detection circuit 63 that are connected to each other via a bus B.
[0043]
The frame memory 61 that forms part of the input means is a buffer into which image data for one line input from the imaging device 3 is written.
The host memory 62 includes an all polar coordinate data storage area 62a, an orthogonal coordinate data storage area 62b, and a conversion table storage area 62c. This all polar coordinate data storage area 62a is a temporary storage memory (output from the image sensor 5) in which image data for each line written in the frame memory 61 is written in units of lines from the first row as a part of the input means. This is an area as a temporary storage memory that stores image data in order in units of rows for each imaging. The image data written in the all polar coordinate data storage area 62a is hereinafter referred to as “polar coordinate data”. The orthogonal coordinate data storage area 62b is an image memory in which image data (hereinafter referred to as "orthogonal coordinate data") in an orthogonal coordinate system obtained by coordinate conversion (polar coordinate-orthogonal coordinate conversion) of polar coordinate data is written (depending on the orthogonal coordinates). This is an area as an image memory in which a plurality of pixels whose positions are specified are arranged in a matrix. The conversion table storage area 62c is a conversion table (corresponding to the coordinate position (m, k) of each pixel in the all polar coordinate data storage area 62a and the coordinate position (x, y) of the pixel in the orthogonal coordinate data storage area 62b). This is an area for storing a conversion table in which only one combination of the image of the optical member 14 to be inspected and the relative angle with the image sensor 5 and the position of the pixel is associated with the orthogonal coordinate value. At this time, it is referred to by the CPU 60. The polar coordinate data, the orthogonal coordinate data, and the conversion table will be described in detail later.
[0044]
The rotation angle detection circuit 63 is a circuit that detects the rotation amount (rotation amount from the initial state) and the angular position of the optical member 14 to be inspected and the angular position based on the pulse input from the reading device 10 and notifies the CPU 60 of the rotation amount.
[0045]
The CPU 60 is a processor that controls the entire control device 6, and corresponds to a part of input means, extraction means, reading means, writing means, graphical feature amount measuring means, and determination means. That is, the CPU 60 regularly recognizes the position of the optical member 14 to be inspected by the notification from the rotation angle detection circuit 63, and periodically reads the image data written in the frame memory 61 in the all polar coordinate data storage area 62a of the host memory 62. The luminance value information of each pixel of the polar coordinate data stored in the all polar coordinate data storage area 62a is referred to the corresponding pixel in the orthogonal coordinate data storage area 62b by referring to the conversion table in the conversion table storage area 62c. Write. Then, after the writing is completed, the graphic feature amount of the region corresponding to the optical defect in the orthogonal coordinate data stored in the orthogonal coordinate data storage region 62b is measured, and this graphic feature amount is determined as a certain criterion. Compared with a value (allowable value), it is determined whether this numerical value is within the determination reference value or exceeded.
<Principle of optical defect detection>
In the optical member inspection apparatus configured as described above, within the plane of FIG. 4, light that can enter the imaging lens 4 and enter each pixel of the imaging element 5 is along the optical axis l of the imaging lens 4. It is only a light beam having a light beam as a principal ray and passing between the peripheral rays m and m shown in FIG. When the peripheral rays m and m are traced in the opposite direction, the light beams spread toward the diffusion plate 2 after intersecting on the surface of the optical member 14 to be inspected. On the diffuser plate 2, the light beams m are blocked by the light shielding plate 9. Therefore, as shown in FIG. 4, an optical image is picked up in a region to be imaged by the image sensor 5 in the optical member 14 to be inspected (a part conjugate to the light receiving surface of the pixel row of the image sensor 5 and its vicinity in the optical axis direction with respect to the image pickup lens 4) If there is no mechanical defect, there is no light incident on each pixel of the image sensor 5. That is, the light n diffused from the side portion of the light shielding plate 9 on the surface of the diffusing plate 2 passes through the imaging target region in the inspection target optical member 14 but passes outside the peripheral rays m and m. It does not enter. Further, the light diffused from the side portion of the light shielding plate 9 on the surface of the diffusion plate 2 and transmitted through the portion other than the imaging target region in the inspection target optical member 14 can enter the imaging lens 4. There is no convergence on each pixel. Therefore, the image data output from the imaging device 3 is dark in the entire area except for the bright portion (due to diffused light on the side surface) corresponding to the outer edge of the inspection target optical member 14.
[0046]
On the other hand, as shown in FIG. 2, when there is a scratch C and dust D in the imaging target area on the surface of the optical member 14 to be inspected, the light shielding plate 9 on the surface of the diffusion plate 2 is shown in FIG. When the light n diffused from the side portion hits the scratch C and the dust D, the light is diffused by the scratch C and the dust D. Since this diffused light n ′ diverges around the intersection of the peripheral rays m and m, a part of the diffused light n ′ is incident on the pixels of the image sensor 5 via the imaging lens 4. Therefore, images of scratches C and dust D (images brighter than the surroundings) are formed on the imaging surface of the image sensor 5. Note that similar diffusion occurs in the outer peripheries A and B of the optical member 14 to be inspected, so that images of the outer peripheries A and B (images brighter than the surroundings) are formed on the imaging surface of the image sensor 5. FIG. 6 is a graph showing the distribution of each luminance value constituting the image data output from the imaging device 3 when imaging is performed at the position shown in FIG. FIG. 6 shows a state in which charges accumulated in each pixel by one imaging are sequentially read out by self-scanning within a period of one scanning.
<Optical defect determination method>
Imaging (charge accumulation and scanning) by the imaging device 5 is performed every time the inspection target optical member 14 rotates by a predetermined angle in synchronization with the rotation of the inspection target optical member 14 by the drive motor 8. Each time imaging (charge accumulation and scanning) is performed by the imaging device 5, image data as shown in FIG. 6 is written in the frame memory 61 of the control device 6, and the all-polar coordinate data storage area of the host memory 62 is stored. 62a. 7 to 11 show the image capturing target area (displayed by a two-dot chain line) by the light shielding plate 9, the image sensor 5, and the relative position of the inspection target optical member 14 and the image data taken into the all polar coordinate data storage area 62a. The relationship is shown. Specifically, FIG. 7 shows an initial state (points on the outer edge of the optical member 14 to be inspected to be imaged at this time are “A” and “B”, respectively), and FIG. 8 shows an initial state. 9 shows a state in which the optical member 14 to be inspected is rotated 45 degrees counterclockwise, FIG. 9 shows a state in which the optical member 14 to be inspected is rotated 90 degrees counterclockwise from the initial state, and FIG. FIG. 11 shows a state in which the optical member 14 has rotated 135 degrees counterclockwise from the initial state, and FIG. 11 shows an end state in which the optical member 14 to be inspected has rotated 180 degrees counterclockwise from the initial state. As shown in these figures, as the inspection target optical member 14 rotates, image data for each line imaged by the imaging device 3 is written in order from the first row in each row of the all polar coordinate data storage area 62a. It is.
[0047]
The horizontal axis of the image data (polar coordinate data) stored in the all polar coordinate data storage area 62a of the host memory 62 at the time shown in FIG. 11 is the distance from the center (optical axis) O of the inspection target optical member 14 in the diameter direction. The vertical axis represents the rotation angle of the optical member 14 to be inspected with reference to the diameter connecting the points A and B. As described above, the CPU 60 of the control device 6 converts this polar coordinate data into image data (orthogonal coordinate data) based on an orthogonal coordinate system.
FIG. 12 is a diagram showing such a coordinate conversion method from polar coordinate data to orthogonal coordinate data. The local coordinate system defined on the surface of the inspection target optical member 14 and the direction of the pixel column of the image sensor 5 are used as a reference. It shows the relationship with the absolute coordinate system (vertical axis). In FIG. 12, the local coordinate system defined on the surface of the inspection target optical member 14 has an optical axis O of the inspection target optical member 14 as the origin 0, and points A and B on the outer edge of the inspection target optical member 14. The connecting line is the Y axis. A line passing through the origin 0 and orthogonal to the Y axis is taken as the X axis. Further, the value of each point on the vertical axis of the absolute coordinate system corresponds to the scanning order of each pixel of the image sensor 5, so that the resolution (number of coordinates) of the image sensor 5 is 0 to n−1. Takes a value. At the point n / 2, the vertical axis of the absolute coordinate system intersects the origin 0 of the local coordinates.
[0048]
When the optical member 14 to be inspected rotates, the local coordinate system rotates counterclockwise around the origin 0 with respect to the vertical axis of the absolute coordinate system. At this time, assuming that the number of times of imaging (number of scans) from the start of imaging is k and the angle at which the optical member 14 to be inspected rotates during one period of imaging (one scan) is θ, m in the image sensor 5 ( However, the polar coordinates in the local coordinate system of the 0 ≦ m ≦ n / 2) th coordinate P are P (n / 2−m, kθ), and m ′ (where n / 2 <m ′ ≦ n−1) th. The polar coordinate of the coordinate P ′ in the local coordinate system is P ′ (m′−n / 2, 180 + kθ). When these polar coordinates P and P ′ are expressed by orthogonal coordinates, they become P (Xp, Yp) and P ′ (Xp ′, Yp ′). here,
Xp = (n / 2−m) sin kθ (1)
Yp = (n / 2−m) cos kθ (2)
Xp ′ = (m′−n / 2) sin (180 + kθ) (3)
Yp ′ = (m′−n / 2) cos (180 + kθ) (4)
It is expressed. Therefore, the polar coordinate system can be converted into an orthogonal coordinate system by using these equations (1) to (4).
[0049]
Now, as shown in FIG. 13A, the number of pixels (resolution) n of the image sensor 5 is 2048, and 3600 times of imaging are performed while the optical member 14 to be inspected is half rotated (180 degrees). (That is, θ = 180/3600 = 0.05). In this case, the above equations (1) and (2) are applied to the coordinates of the 0th to 1024th columns in the polar coordinate data, and the above equations (3) and (4) are applied to the coordinates of the 1025 to 2047th columns. ) Applies. However, as shown in FIG. 13B, the origin (0, 0) of the Cartesian coordinate data is located not at the center but at the lower left, so correction for shifting the origin position must be performed. Specifically, since the number of coordinates of the orthogonal coordinate data is 2048 × 2048, 1024 must be uniformly added to the values obtained by the above formulas (1) to (4). That is, the following expressions (1 ′) and (2 ′) are applied to the coordinates of m = 0 to 1024 columns in the polar coordinate data, and the following are applied to the coordinates of m ′ = 1025 to 2047 columns. The expressions (3 ′) and (4 ′) are applied.
Xp = (1024−m) sin kθ + 1024 (1 ′)
Yp = (1024−m) cos kθ + 1024 (2 ′)
Xp ′ = (m′−1024) sin (180 + kθ) +1024 (3 ′)
Yp ′ = (m′−1024) cos (180 + kθ) +1024 (4 ′)
However, even if these formulas (1 ′) to (4 ′) are executed for all points in the polar coordinate data, coordinates that do not correspond to any coordinate in the polar coordinate data may occur in the orthogonal coordinate data. There is sex. Therefore, in this embodiment, as shown in FIGS. 14A and 14B, the image data (luminance value information sequence) for each one line constituting the polar coordinate data is pseudo-p times, The total number of image data for one line in the polar coordinate data is (180 / θ) × p. Then, using the value θ ′ (= θ / p) obtained by dividing the original θ value by p, and k ′ indicating the row number of each row (image data for one line) of the increased polar coordinate data, Equations (1 ′) to (4 ′) (that is, predetermined polar coordinate-orthogonal coordinate conversion calculation) are executed. That is, the polar coordinate system is converted into the orthogonal coordinate system by using the following formulas (1 ") to (4").
Xp = (n / 2−m) sin k′θ ′ + n / 2
= (1024-m) sin k'θ '+ 1024 (1 ")
Yp = (n / 2−m) cos k′θ ′ + n / 2
= (1024-m) cos k'θ '+ 1024 (2 ")
Xp ′ = (m′−n / 2) sin (180 + k′θ ′) + n / 2
= (M′−1024) sin (180 + k′θ ′) + 1024 (3 ″)
Yp ′ = (m′−n / 2) cos (180 + k′θ ′) + n / 2
= (M′−1024) cos (180 + k′θ ′) + 1024 (4 ″)
However, the relationship of coordinates in the Cartesian coordinate system with respect to the coordinates of all the pixels in the polar coordinate data defined by these equations (1 ") to (4") is calculated in advance and collected as a conversion table. FIG. 15 is a table partially showing the structure of the conversion table compiled in this way. As shown in FIG. 15, this conversion table includes polar coordinate values (m, k ′) and orthogonal coordinate values (X) having the relationships defined by the above formulas (1 ″) to (4 ″). m , Y k ' ) Are listed in the order of arrangement in the polar coordinate data. However, the Cartesian coordinate value (X m , Y k ' ) Value is rounded off to the nearest whole number. By this rounding, the orthogonal coordinate value (X, Y) closest to the value calculated by performing the polar coordinate-orthogonal coordinate conversion operation on the combination of m and k corresponds to the combination of m and k.
[0050]
This conversion table is scanned from left to right in FIG. 15 for each row in order from the first row after all items (polar coordinate values, orthogonal coordinate values) are written. If the same Cartesian coordinates appear repeatedly, the stack value is overwritten except for the one that appears first. This stack value is an orthogonal coordinate value indicating the origin (0, 0) of the orthogonal coordinate data shown in FIG.
[0051]
Then, the k ′ coordinate value of each polar coordinate value (m, k ′) is divided by p, and the quotient (truncated after the decimal point) is overwritten on the original k ′ coordinate value as the original k coordinate value. Is done. As a result, as shown in FIG. 16, the same polar coordinate value (m, k) can exist in the conversion table in an overlapping manner. In this way, a plurality of orthogonal coordinate values (X m , Y k ' ) Is associated with each other, as shown in FIG. 33, the image data output from the line sensor at the time of β reflects the luminance information in the entire range within the angle range of θ.
[0052]
That is, for the angle other than the relative angle of the image of the optical member to be inspected and the line sensor when the luminance values input by the input means are output, the conversion table is for the combination of the angle and the pixel position. A predetermined polar coordinate-orthogonal coordinate conversion calculation is performed, and the orthogonal coordinate value closest to the value obtained as a result of the calculation is made to correspond to the closest relative angle larger than the angle.
[0053]
The conversion table created as described above is stored in the conversion table storage area 62 c of the host memory 62.
<Control processing>
Next, the contents of the control process executed by the control device 6 (CPU 60) to perform pass / fail determination according to the optical defect determination method described above will be described with reference to the flowcharts of FIGS.
[0054]
The control process of FIG. 17 starts when an unillustrated inspection start button connected to the control device 6 is pressed. In the first S01 after the start, the CPU 60 executes an imaging process. In this imaging step, the CPU 60 detects the amount of rotation of the inspection target optical member 14 based on the notification from the rotation angle detection circuit 63, and from the imaging device 3 to the frame memory 61 while the inspection target optical member 14 rotates halfway. Are sequentially stored in the all polar coordinate data storage area 62a of the host memory 62 (to input means for inputting image data consisting of luminance values corresponding to the respective pixels output from the image sensor 5). Equivalent).
[0055]
In next S02, the CPU 60 executes a coordinate conversion process. FIG. 18 is a flowchart showing the coordinate conversion process subroutine executed in S02.
In the first step S11 after entering this subroutine, the CPU 60 calculates the polar coordinate value (m, k) and the orthogonal coordinate value (X) from the conversion table stored in the conversion table storage area 62c. m , Y k ' ) Is taken out (corresponding to a take-out means for taking out one combination of the relative angle and the position of the pixel and the orthogonal coordinate value corresponding to this combination from the conversion table).
[0056]
In the next S12, the CPU 60 reads out the luminance value information from the position indicated by the polar coordinates (m, k) read out in S11 in the all polar coordinate data storage area 62a (the relative value extracted from the image data by the extracting means). This corresponds to a reading means for reading out a luminance value corresponding to a combination of an angle and a pixel position).
[0057]
In next S13, the CPU 60 uses the luminance value information read in S12 as the orthogonal coordinate value (X) read in S11 in the orthogonal coordinate data storage area 62b. m , Y k ' ) Is written at a position indicated by (corresponding to writing means for writing each luminance value input by the input means to a pixel in the image memory corresponding to the orthogonal coordinate value read by the search means).
[0058]
In the next S14, the CPU 60 reads the polar coordinate value (m, k) and the orthogonal coordinate value (X m , Y k ' Check if all combinations of) have been referenced. If all the combinations have not been referred to yet, the process returns to S11 to read the next combination.
[0059]
On the other hand, if all the combinations have been referred to, this subroutine is terminated and the process returns to the main routine of FIG.
In the main routine of FIG. 17 in which the process is returned, the CPU 60 executes a labeling process in S03 executed after S02. That is, the CPU 60 extracts an area composed of a set of pixels having a luminance value equal to or greater than a predetermined threshold from the orthogonal coordinate data stored in the orthogonal coordinate data storage area 62b, and each extracted area has a unique number. (Label) i (i = 1, 2, 3,...) Is assigned.
[0060]
In the next S04, the CPU 60 executes the feature amount extraction process in the order of the label n for each region to which the label n is given in S03. Specifically, for each region, the area, fillet diameter, maximum luminance, average luminance, or the like of the region is calculated (corresponding to the graphical feature amount measuring means).
[0061]
In the next S05, the CPU 60 executes a quality determination step based on the graphical feature measured in S04. Specifically, the optical member 14 to be inspected is a non-defective product based on whether there is at least one area having an area or fillet diameter exceeding the criterion value, whether the maximum luminance exceeds the criterion value, or the like. Or whether it is a defective product (corresponding to a determination means). After the above, the CPU 60 ends this control process. <Operation of Embodiment>
According to the present embodiment configured as described above, light that passes through the inspection target optical member 14 and enters the imaging lens 4 and can enter each pixel of the imaging device 5 is preliminarily transmitted by the light shielding plate 9. It is blocked on the diffusion plate 2. Therefore, if there is no optical defect in the inspection target optical member 14 in the imaging target region by the imaging device 5, the luminance values of the pixels in the image data captured by the imaging device 5 are all black values (8 bits). “0” in gray scale).
[0062]
On the other hand, when an optical defect has occurred in the inspection target optical member 14 in a range that can be imaged by the imaging element 5, light incident in this region from the side of the light shielding plate 9 is diffused by the optical defect. Then, a part of the diffused light enters the imaging lens 4. As a result, a bright image of optical defects against the dark shade of the light shielding plate 9 is formed on the imaging surface of the imaging device 5. At this time, the luminance value of the pixel obtained by capturing a bright image of the optical defect in the image data is a value corresponding to the brightness of the image (and the degree of overlap between the image and the pixel of the image sensor 5). (“1 to 255” in 8-bit gray scale).
[0063]
Then, while the inspection target optical member 14 is rotated halfway, the imaging by the imaging device 5 is performed at a constant period (every time the inspection target optical member 14 rotates 0.05 °), and the line-shaped image obtained by each imaging Data is accumulated in the all polar coordinate data storage area 62a (S01).
[0064]
As shown in FIG. 19, the CPU 60 of the control device 6 performs polar coordinate values (m, k) and orthogonal coordinate values (X m , Y k ' ) Combination readout (S11), luminance value information written in the pixel indicated by the polar coordinate value (m, k) in the all polar coordinate data storage area 62a is used as the orthogonal coordinate value in the orthogonal coordinate data storage area 62b. (X m , Y k ' (S12, S13). Such writing is performed by using polar coordinate values (m, k) and orthogonal coordinate values (X m , Y k ' ), The image data (orthogonal coordinate data) in the orthogonal coordinate system is reproduced in the orthogonal coordinate data storage area 62b. At this time, the same orthogonal coordinate value (X m , Y k ' ) Is not redundantly described, the luminance value information is not overwritten multiple times on the same pixel in the orthogonal coordinate data storage area 62b. Further, all the orthogonal coordinate values (X in the orthogonal coordinate data storage area 62b (the periphery of the optical member 14 to be inspected) m , Y k ' ) Is associated with one of the polar coordinate values (m, k) in advance, so that luminance value omission in the orthogonal coordinate data does not occur.
[0065]
The CPU 60 calculates a graphical feature value based on the image data (orthogonal coordinate data) obtained in the orthogonal coordinate system (S04), and compares the calculated graphical feature value with a certain criterion value. As a result, the quality of the inspection target optical member 14 is determined (S05).
[0066]
As described above, in the present embodiment, the number of processing steps and the processing time can be greatly reduced as compared with the case where the coordinate conversion processing is performed on all luminance value information in the polar coordinate data, and the orthogonal coordinates are used. Luminance value omission in data can be prevented.
[0067]
Embodiment 2
The second embodiment of the present invention is characterized in that a coordinate conversion process is executed each time image data for one line is copied from the frame memory 61 to the host memory 62, as compared with the first embodiment. .
[0068]
FIG. 20 is a block diagram showing the configuration of the control device 6 used in the optical member inspection device according to the second embodiment. As shown in FIG. 20, the host memory 62 of the control device 6 is provided with a polar coordinate storage area 62d for one line instead of the all polar coordinate data storage area 62a in the first embodiment. Since the other structure in the optical member inspection apparatus according to the second embodiment is the same as that of the first embodiment, the description thereof is omitted.
<Control processing>
Next, the contents of the control process executed by the control device 6 (CPU 60) in order to perform pass / fail determination according to the above-described optical defect determination method will be described with reference to the flowcharts of FIGS.
[0069]
The control process in FIG. 21 starts when an unillustrated inspection start button connected to the control device 6 is pressed. In the first S21 after the start, the CPU 60 executes a coordinate conversion process. FIG. 22 is a flowchart showing the coordinate conversion process subroutine executed in S21.
[0070]
In the first step S31 after entering this subroutine, the CPU 60 initializes a variable y for specifying image data to be processed (y = 0).
In next S32, the CPU 60 starts from the top position (upper left in FIG. 16) of the conversion table stored in the conversion table storage area 62c from the polar coordinate value (m, k) and the orthogonal coordinate value (X m , Y k ' ) Is taken out (corresponding to a take-out means for taking out one combination of the relative angle and the position of the pixel and the orthogonal coordinate value corresponding to this combination from the conversion table).
[0071]
In the next S33, the CPU 60 executes an imaging process. In this imaging process, the CPU 60 reaches the unit angle (θ = 0.05) based on the rotation angle of the inspection target optical member 14 notified from the rotation angle detection circuit 63 (from the previous imaging). After that, an imaging instruction is notified to the imaging device 5. Then, the image data for one line output from the imaging device 5 by imaging is written in the frame memory 61.
[0072]
In the next S34, the CPU 60 writes the image data for one line written in the frame memory 61 as a result of S33 to the polar coordinate data storage area 62d of the host memory 62 (corresponding to each pixel output from the image sensor 5). Equivalent to input means for inputting image data consisting of luminance values).
[0073]
In the next S35, the CPU 60 reads the luminance value information from the pixel indicated by the polar coordinate (m) read in S32 or S38 in the polar coordinate data storage area 62d (the relative angle extracted from the image data by the extracting means). And a reading means for reading out a luminance value corresponding to a combination of the pixel position).
[0074]
In next S36, the CPU 60 uses the luminance value information read in S35 as the orthogonal coordinate value (X) read in S32 or S38 in the orthogonal coordinate data storage area 62b. m , Y k ' ) Is written to the pixel indicated by (corresponding to writing means for writing each luminance value input by the input means to the pixel in the image memory corresponding to the orthogonal coordinate value read by the search means).
[0075]
In the next S37, the CPU 60 reads the polar coordinate value (m, k) and the orthogonal coordinate value (X m , Y k ' Check if all combinations of) have been referenced. If all the combinations have not been referred to, the process proceeds to S38.
[0076]
In S38, the CPU 60 determines the polar coordinate value (m, k) and the orthogonal coordinate value (X) from the next position in the conversion table stored in the conversion table storage area 62c. m , Y k ' ) Is taken out (corresponding to a take-out means for taking out one combination of the relative angle and the position of the pixel and the orthogonal coordinate value corresponding to this combination from the conversion table).
[0077]
Here, the “next position in the conversion table” refers to a position where the value of m of the polar coordinate value is one larger than the previously read polar coordinate value (m, k) (the right adjacent position in FIG. 16), or When the value of m of the polar coordinate value (m, k) read out last time is the maximum value n (= 2047), the next unread position where the value of m of the polar coordinate value is 0 (the next value in FIG. The leftmost position of the line).
[0078]
In next S39, the CPU 60 compares the value of k of the polar coordinate value (m, k) read out in S38 with the value of k read out last time, and checks whether or not the value of k has changed. If the value of k has not changed, the process returns to S35.
[0079]
On the other hand, if the value of k has changed, the process returns to S33 after incrementing the variable y for specifying the image data to be processed in S40. As a result of repeating the loop processing of S33 to S40 described above, polar coordinate values (m, k) and orthogonal coordinate values (X m , Y k ' When the CPU 60 determines in S37 that all the combinations are completed, the CPU 60 ends this subroutine and returns the process to the main routine of FIG.
[0080]
In the main routine of FIG. 21 to which the process has been returned, the CPU 60 executes a labeling step in S22 executed after S21. That is, the CPU 60 extracts an area composed of a set of pixels having a luminance value equal to or greater than a predetermined threshold from the orthogonal coordinate data stored in the orthogonal coordinate data storage area 62b, and each extracted area has a unique number. (Label) i (i = 1, 2, 3,...) Is assigned.
[0081]
In the next S23, the CPU 60 executes a feature amount extraction process in the order of the label n for each region to which the label n is assigned in S22. Specifically, for each region, the area, fillet diameter, maximum luminance, average luminance, or the like of the region is calculated (corresponding to the graphical feature amount measuring means).
[0082]
In next S24, the CPU 60 executes a pass / fail judgment step based on the graphical feature measured in S23. Specifically, the optical member 14 to be inspected is a non-defective product based on whether there is at least one area having an area or fillet diameter exceeding the criterion value, whether the maximum luminance exceeds the criterion value, or the like. Or whether it is a defective product (corresponding to a determination means). After the above, the CPU 60 ends this control process. <Operation of Embodiment>
According to the second embodiment configured as described above, imaging by the imaging device 5 is performed at a constant period (every time the inspection target optical member 14 rotates 0.05 °) while the inspection target optical member 14 rotates halfway. The image data for one line obtained by each imaging is stored in the polar coordinate data storage area 62d (S34).
[0083]
When the image data for one line is stored in the polar coordinate data storage area 62d, the CPU 60 of the control device 6 sequentially acquires polar coordinate values (m, k) and orthogonal coordinate values (X m , Y k ' ) Combination readout (S32, S38), the luminance value information written in the pixel indicated by the polar coordinate value (m) in the polar coordinate data storage area 62d is converted into the orthogonal coordinate value ( X m , Y k ' ) Is written into the pixel indicated by (S35, S36). As a result of repeating such writing, when the value of the k coordinate of the polar coordinate value (m, k) read from the conversion table increases, the CPU 60 transfers the image data for the next line from the frame memory 61 to the polar coordinate data storage area. Copy to 62d (S40, S33, S34).
[0084]
Then, polar coordinate values (m, k) and orthogonal coordinate values (X m , Y k ' ) Are read out and written according to these, image data (orthogonal coordinate data) in an orthogonal coordinate system is reproduced in the orthogonal coordinate data storage area 62b.
[0085]
Since other operations in the second embodiment are the same as those in the first embodiment, description thereof is omitted.
[0086]
Embodiment 3
The third embodiment of the present invention is characterized in that, in the control device 6, coordinate conversion is not performed by program processing, but is performed by hardware, as compared with the first embodiment described above. .
<Configuration of optical member inspection device>
FIG. 23 is a block diagram showing a configuration of the control device 6 according to the third embodiment.
[0087]
In the polar coordinate data memory 65 in FIG. 23, the image data for all one line output from the imaging device 3 is written in units of lines from the first row while the inspection target optical member 14 is rotated halfway. This is a memory in which polar coordinate data corresponding to the whole is synthesized, and corresponds to the all polar coordinate data storage area 62a of the host memory 62 in the first embodiment. In the third embodiment, since the imaging by the imaging device 3 is performed every time the optical member to be inspected is rotated by 0.05 degrees, the number of rows of polar coordinate data is 3600.
[0088]
After the polar coordinate data corresponding to the entire inspection target optical member 14 is synthesized, the polar coordinate data memory 65 stores the address (k of polar coordinate data) at that time each time a read pulse is input. A high-order address that takes a value of 0 to 3599 [actually a binary number] for specifying coordinates, and a low-order address that takes a value of 0 to 2047 [actually a binary number] for specifying m coordinates of polar coordinate data. The luminance value information described in the pixel designated by (address) is output.
[0089]
The orthogonal coordinate data memory 66 is an image memory (image memory in which a plurality of pixels whose positions are specified by the orthogonal coordinates are arranged in a matrix) in which the orthogonal coordinate data as a result of the coordinate transformation is synthesized. This corresponds to the orthogonal coordinate data storage area 62b in the embodiment.
[0090]
Each time the writing pulse is input, the orthogonal coordinate data memory 66 stores the address (0-2047 [actual binary number] for designating the X coordinate of the orthogonal coordinate data) input at that time. Output from the polar coordinate data memory 65 at the position (pixel) designated by the upper address to be taken and the lower address taking the value of 0-2047 [actually a binary number] for designating the Y coordinate of the orthogonal coordinate data. Stored brightness value information.
[0091]
The control circuit 64 is a circuit that controls the entire control device 6 and generates clock pulses having a predetermined period. In synchronization with the timing of the clock pulse, a read pulse is input to the polar coordinate data memory 65 and a write pulse is input to the orthogonal coordinate data memory 66, and an increment pulse is input to the pixel counter 68. The control circuit 64 notifies the image processing unit 70 of image conversion completion when 2048 × 3600 output pulses, write pulses, and increment pulses are output.
[0092]
The pixel counter 68 is a counter that counts the number of input increment pulses in a cycle of 0 to 2047 (counter that counts each luminance value output in order from the image sensor), and a pixel address (polar coordinate) as a count result The lower address m) of the data memory is output, and every time 2048 increment pulses are counted, the count result is reset to 0 and a count pulse is input to the rotation angle counter 67. That is, the pixel counter 68 corresponds to pixel position specifying means for specifying the position of the pixel corresponding to each luminance value input by the input means.
[0093]
The rotation angle counter 67 is a counter that counts the number of input count pulses in a cycle of 0 to 3599, and outputs a rotation angle address (upper address k in the polar coordinate data memory) as a counting result. That is, the rotation angle counter 67 corresponds to an angle specifying unit that specifies the relative angle of the image of the inspection target optical member and the line sensor when the luminance values input by the input unit are output.
[0094]
The pixel address output from the pixel counter 68 and the rotation angle address output from the rotation angle counter 67 are also input to the conversion table 69 as a lower address m and an upper address k, respectively. That is, the pixel counter 68 and the rotation angle counter 67 search the conversion table based on the relative angle specified by the angle specifying means and the pixel position specified by the pixel position specifying means, and read out the corresponding orthogonal coordinate values. It corresponds to a search means.
[0095]
The conversion table 69 is a table constructed on the ROM (the combination of the image of the optical member to be inspected and the relative angle of the line sensor and the position of the pixel with respect to the individual orthogonal coordinate values specifying each pixel of the image memory. Is a conversion table in which only one is associated, and the entry specified by the input address is data corresponding to the input address (rotation angle address and pixel address) (higher address with respect to the orthogonal coordinate data memory 66) X coordinate address and lower coordinate Y coordinate address) are written. The procedure for creating this conversion table will be described below.
[0096]
Now, substituting θ = 0.05 in the above formulas (1 ′) to (4 ′), the above formulas (1 ′), (for all combinations of m (0-1024) and k (0-3599) 2 ′) (that is, a predetermined polar coordinate-orthogonal coordinate conversion operation) and the above formulas (3 ′) and (4 ′) for all combinations of m ′ (1025 to 2047) and k (0 to 3599). (In other words, a predetermined polar coordinate-orthogonal coordinate conversion operation) is executed. Then, the calculation results are as shown in part in the table of FIG.
[0097]
As shown in FIG. 24, the calculation results obtained by substituting arbitrary m and k (integer) into the above formulas (1 ′) to (4 ′) are not necessarily integers. That is, it does not coincide with the center point of each pixel of the orthogonal coordinate data. Accordingly, the X and Y calculation results are rounded to the first decimal place, and the orthogonal coordinate (X, Y) closest to the actual calculation result is taken as the coordinate corresponding to the polar coordinate (m, k) in the polar coordinate data. Identify. By this rounding, the orthogonal coordinate value (X, Y) closest to the value calculated by performing the polar coordinate-orthogonal coordinate conversion operation on the combination of m and k corresponds to the combination of m and k. FIG. 25 is a table summarizing the relationship between the polar coordinate values (m, k) and the orthogonal coordinate values (X, Y) thus obtained.
[0098]
However, each combination of X and Y shown in FIG. 25 is not necessarily unique, and the same combination of X and Y may correspond to a plurality of combinations of m and k. Therefore, when the same combination of X and Y is present at a plurality of positions, the numerical value before rounding (FIG. 24) corresponding to the combination of X and Y is examined. And, the thing which is in the position where the difference (the sum of the difference about X and the difference about Y) with the numerical value before rounding becomes the smallest is specified as the effective one, and the stack value for the other positions Rewrite to (X = 0, Y = 0). By this rewriting to the stack value, the orthogonal coordinate (X, Y) corresponds only to the combination of m and k whose polar coordinate-orthogonal coordinate conversion calculation result is closest to the orthogonal coordinate value (X, Y). It becomes like this. FIG. 26 shows a table in which the stack value is rewritten (however, the stack value is indicated by a horizontal line).
[0099]
According to FIG. 26, orthogonal coordinate values (X = 1536, Y = 1908), (X = 1538, Y = 1908), (X = 1532, Y = 1901), (X = 1534, Y = 1901) are Missing. That is, these orthogonal coordinate values (X, Y) do not correspond to any combination of m and k. In this case, the numerical value (FIG. 24) before rounding off of each orthogonal coordinate value (X, Y) rewritten to the stack value is examined. Among them, the one with the smallest difference from each of the missing orthogonal coordinate values (X, Y) (the sum of the difference with respect to X and the difference with respect to Y) is specified, and the missing is located at that position. The orthogonal coordinate value (X, Y) is written. By this writing, the orthogonal coordinate value (X, Y) that does not correspond to any combination of m and k is the polar coordinate-orthogonal coordinate among the combinations of m and k that do not correspond to any orthogonal coordinate value. It corresponds to the combination whose conversion calculation result is closest to the orthogonal coordinate value (X, Y). FIG. 27 shows a table in which this writing has been performed. The table processed to the state shown in FIG. 27 is written as a conversion table 69 in the ROM.
[0100]
The conversion table 69 having the above configuration outputs a Y coordinate address and an X coordinate address corresponding to the input address, and inputs them to the orthogonal coordinate data memory 66. Therefore, in order from the higher address (rotation angle address) k = 0 and the lower address (pixel address) m = 0, all addresses from the upper address (rotation angle address) k = 3599 to the lower address (pixel address) m = 2047 When a combination of addresses is input to the conversion table 69 and corresponding data (Y coordinate address, X coordinate address) is output from the conversion table 69, the entire inspection target optical member 14 is stored in the orthogonal coordinate data memory 66. The image data (orthogonal coordinate data) similar to is synthesized.
[0101]
When the orthogonal coordinate data is combined in the orthogonal coordinate data memory 66 as described above, an image conversion completion notification is input from the control circuit 64 to the image processing unit 70. Receiving this image conversion completion notification, the image processing unit 70 reads the entire Cartesian coordinate data from the Cartesian coordinate data memory 66, compares the luminance value of each pixel in the Cartesian coordinate data with a predetermined threshold, and exceeds the predetermined threshold. A binarization process is performed in which the value of a bright pixel is set to “1” and the values of other pixels are set to “0”. Then, after the binarization processing, when the total number (area) of pixels in a region having a value of “1” exceeds a predetermined determination reference value, or in a region consisting of a set of pixels having a value of “1”. For example, when the diameter exceeds a predetermined determination reference value, it is determined that the inspection target optical member 14 is defective. That is, the image processing unit 70 includes a graphical feature amount measuring unit that measures the graphical feature amount of the image data corresponding to the entire inspection target optical member written in the image memory, and the graphical feature amount is determined to be a predetermined value. This corresponds to determination means for determining whether or not the reference value has been exceeded.
[0102]
Other configurations in the third embodiment are exactly the same as those in the first embodiment, and thus description thereof is omitted.
<Operation of Embodiment>
According to the third embodiment configured as described above, imaging by the imaging device 3 is performed every time the inspection target optical member 14 rotates 0.05 ° while the inspection target optical member 14 rotates halfway. The line-shaped image data obtained by imaging is accumulated in the polar coordinate data memory 65 of the control device 6.
[0103]
When the polar coordinate data is synthesized in the polar coordinate data memory 65, the control circuit 64 outputs an increment pulse, a read pulse, and a write pulse at a predetermined cycle.
[0104]
The pixel counter 68 that has received the increment pulse counts the number of the increment pulse, and inputs the count result to the polar coordinate data memory 65 and the conversion table 69 as the pixel address m. At this time, if the count result of the pixel counter 68 is 2047 or less, the rotation angle counter 67 inputs the initial value 0 to the polar coordinate data memory 65 and the conversion table 69 as the rotation angle address k. The pixel counter 68 resets the count result every time 2048 increment pulses are input, and inputs the count pulse to the rotation angle counter 67. The rotation angle counter 67 counts the number of count pulses, and inputs the count result to the polar coordinate data memory 65 and the conversion table 69 as the rotation angle address k.
[0105]
When a read pulse is input, the polar coordinate data memory 65 is written in a pixel specified by an address (rotation angle address k as a high-order address, pixel address m as a low-order address) input at that time. The luminance value is output to the orthogonal coordinate data memory 66.
[0106]
On the other hand, the conversion table 69 outputs data (X coordinate address, Y coordinate address) corresponding to the input address (rotation angle address k as the upper address, pixel address m as the lower address), and Cartesian coordinate data. Input to the memory 66.
[0107]
When a write pulse is input, the Cartesian coordinate data memory 66 stores a polar coordinate data memory in a pixel specified by an address (X coordinate address as an upper address and Y coordinate address as a lower address) input at that time. The luminance value information input from 65 is written.
[0108]
At this time, since the same orthogonal coordinate value (X, Y) is not duplicated in the conversion table 69, the luminance value information is applied to the same pixel in the orthogonal coordinate data memory 66 a plurality of times. It will not be overwritten. Moreover, the luminance value information written in each pixel of the orthogonal coordinate data memory 66 is the luminance value of the polar coordinate-orthogonal coordinate conversion calculation result for the coordinate value (m, k) in the polar coordinate data that is closest to the center of the pixel. . Therefore, Cartesian coordinate data that approximates the actual image of the optical member 14 to be inspected can be obtained. In addition, all the orthogonal coordinate values (X, Y) corresponding to the orthogonal coordinate data memory 66 (periphery of the optical member 14 to be inspected) are associated with one of the polar coordinates (m, k) in advance. Therefore, no luminance value loss occurs in the orthogonal coordinate data.
[0109]
When all the luminance value information output from the polar coordinate data memory 65 is written in the orthogonal coordinate data memory 66, the image processing unit 70 is based on the image data (orthogonal coordinate data) obtained in the orthogonal coordinate system. Then, the quality of the inspection target optical member 14 is determined by calculating the graphical feature amount and comparing the calculated graphical feature amount with a certain criterion value.
[0110]
The other operations in the third embodiment are the same as those in the first embodiment, and thus the description thereof is omitted.
[0111]
Embodiment 4
Compared with the third embodiment, the fourth embodiment of the present invention does not have the polar coordinate data memory 65 in the control device 6 and sequentially captures one pixel each time one line is imaged by the imaging device 3. A feature is that coordinate conversion is performed one by one and the pixel is copied to the orthogonal coordinate data memory 66.
<Configuration of optical member inspection device>
FIG. 28 is a block diagram illustrating circuit configurations of the control device 6 and the imaging device 3 according to the fourth embodiment.
[0112]
Since the orthogonal coordinate data memory 66, the conversion table 69, and the image processing unit 70 in FIG. 28 are exactly the same as those in the third embodiment described above, description thereof is omitted. The rotation angle detector 71 of the control device 6 counts the pulses input from the reading device 10 and every time the number of input pulses reaches a number corresponding to the rotation angle of 0.05 ° of the optical member 14 to be inspected. An angle detection signal indicating that is sent to the image input control unit 72 and a reset signal is input to the output pixel counter 73. Further, the rotation angle detector 71 counts the number of times the angle detection signal is output in a cycle of 0 to 3599, and inputs the rotation angle address as the counting result to the conversion table 69 as the upper address k. That is, the rotation angle detector 71 corresponds to an angle specifying means for specifying the image of the optical member to be inspected and the relative angle of the line sensor when each luminance value input by the input means is output.
[0113]
The image input control unit 72 of the control device 6 is a circuit that controls the flow of image data throughout the control device 6 as input means, and generates clock pulses with a predetermined period. Then, by dividing the clock pulse at a predetermined cycle, a drive pulse for the buffer memory 32 and a conversion pulse for the A / D converter 31 are generated. Further, every time an angle detection signal is input from the rotation angle detector 71, the image input control unit 72 inputs an imaging start signal to the imaging device 5 of the imaging device 3, and outputs a readout start signal after a predetermined time. input. Further, when outputting the read start signal, the image input control unit 72 inputs the write pulse to the orthogonal coordinate data memory 66 at the same timing as the drive pulse and the conversion pulse. When a total of 2048 × 3600 write pulses are output, an image conversion completion notification is sent to the image processing unit 70.
[0114]
When the imaging start signal is input from the image input control unit 72, the imaging device 5 of the imaging device 3 starts imaging (charge accumulation). When a readout signal is input, the charges accumulated in each pixel are transferred to the buffer memory 32 in parallel.
The buffer memory 32 is a memory that holds charges for one line (2048), and inputs the charges transferred by the image sensor 5 to the A / D converter 31 one by one according to the timing of the drive pulse. The buffer memory 32 inputs a count pulse to the output pixel counter 73 of the control device 6 every time the charge of one pixel is input to the A / D converter 31.
[0115]
The A / D converter 31 of the image pickup apparatus 3 converts the charge (analog signal) output from the image pickup device 5 into luminance value information that is a digital signal according to the conversion pulse input from the image input control unit 72, and is orthogonal. Input to the coordinate data memory 66.
[0116]
The output pixel counter 73 of the control device 6 is reset every time a reset signal is input from the rotation angle detector 71, counts the count pulse input from the buffer memory 32, and lowers the pixel address as the count result. The address m is input to the conversion table 69. That is, the output pixel counter 73 corresponds to a pixel position specifying unit that specifies the position of the pixel corresponding to each luminance value input by the input unit.
[0117]
Other configurations in the fourth embodiment are exactly the same as those in the first embodiment, and thus description thereof is omitted.
<Operation of Embodiment>
According to the fourth embodiment configured as described above, every time the inspection target optical member 14 rotates 0.05 °, the rotation angle detector 71 sets the rotation angle address (upper address of the conversion table 69) k. At the same time, the output pixel counter 73 is reset and an angle detection signal is input to the image input control unit 72. The image input control unit 72 that has received the angle detection signal causes the imaging device 5 of the imaging device 3 to perform imaging.
[0118]
When the image sensor 5 receives the readout start signal from the image input controller 72, the image sensor 5 outputs the charges accumulated in each pixel to the buffer memory 32 in parallel. The buffer memory 32 sequentially outputs the charges of the respective pixels thus transferred. The A / D converter 31 converts the charge output from the buffer memory 32 for each pixel in this way into luminance value information that is a digital signal, and inputs the luminance value information to the orthogonal coordinate data memory 66.
[0119]
At the same time, the output pixel counter 73 counts the number of times the charge is output from the buffer memory 32, and displays the counting result (that is, the pixel number corresponding to the luminance value information input to the orthogonal coordinate data memory 66). , The pixel address (lower address) m is input to the conversion table 69. Then, the conversion table 69 outputs data (X coordinate address, Y coordinate address) corresponding to the address (rotation angle address k as the high-order address, pixel address m as the low-order address) input at that time. , Input to the orthogonal coordinate data memory 66.
[0120]
The orthogonal coordinate data memory 66 is input from the imaging device 3 to a pixel specified by an address (X coordinate address as a higher address, Y coordinate address as a lower address) that is input when a write pulse is input. Write brightness value information.
[0121]
At this time, since the same orthogonal coordinate value (X, Y) is not duplicated in the conversion table 69, the luminance value information is applied to the same pixel in the orthogonal coordinate data memory 66 a plurality of times. It will not be overwritten. Moreover, the luminance value information written in each pixel of the orthogonal coordinate data memory 66 is the luminance value of the polar coordinate-orthogonal coordinate conversion calculation result for the polar coordinate value (m, k) in the polar coordinate data that is closest to the center of the pixel. . Therefore, Cartesian coordinate data that approximates the actual image of the optical member 14 to be inspected can be obtained. In addition, all the orthogonal coordinate values (X, Y) corresponding in the orthogonal coordinate data memory 66 (in the periphery of the optical member 14 to be inspected) are associated with any polar coordinate value (m, k) in advance. Therefore, no luminance value loss occurs in the orthogonal coordinate data.
[0122]
When the rotation angle address output from the rotation angle detector 71 reaches the maximum value k = 3599 and the pixel address output from the output pixel counter 73 reaches the maximum value m = 2047, an image conversion completion notification is input to the image. When output from the control unit 72, the image processing unit 70 calculates a graphical feature amount based on the orthogonal coordinate data synthesized in the orthogonal coordinate data memory 66, and determines the calculated graphical feature amount to a certain level. The quality of the inspection target optical member 14 is determined by comparing with the reference value.
[0123]
Since the other operations in the fourth embodiment are the same as those in the first embodiment, the description thereof is omitted.
[0124]
Embodiment 5
The fifth embodiment of the present invention is effective by setting a flag indicating whether each orthogonal coordinate value in the conversion table is valid or invalid as compared to the fourth embodiment described above. It is characterized in that coordinate transformation is performed only for the orthogonal coordinate values for which a flag indicating this is set.
<Configuration of optical member inspection device>
FIG. 29 is a block diagram showing the configuration of the control device 6 according to the fifth embodiment.
[0125]
As shown in FIG. 29, the control device 6 according to the fifth embodiment gates the configuration and function of the conversion table 74 and the signal path of the write pulse input from the image input control unit 72 to the orthogonal coordinate data memory 66. Only the point where the circuit 75 is provided is different from the control device 6 of the fourth embodiment shown in FIG.
[0126]
The conversion table 74 is constructed on the ROM, and corresponds to the input address specified by the input address (the rotation angle address k as the upper address and the pixel address m as the lower address). Data (X coordinate address, which is the upper address for the Cartesian coordinate data memory 66, Y coordinate address, which is the lower address, and data valid indicating whether these addresses are valid (= 1) or invalid (= 0) The flag bit F) is written. The procedure for creating this conversion table will be described below.
[0127]
Now, the same table as FIG. 25 is generated by the procedure described in the third embodiment, and the combination of X and Y written in the generated table is checked. Then, it is determined that all combinations of X and Y described in only one place in the table are valid, and the data valid flag bit F = 1 is set in the same column. In addition, when the same combination of X and Y is described in a plurality of places, the numerical value before rounding (FIG. 24) corresponding to the combination of X and Y is examined. And, what is written in the position where the difference from the numerical value before rounding (the difference between X and Y) is the smallest is identified as an effective combination, and in the column where it is written Is set to data valid flag bit F = 1. On the other hand, the data valid flag bit F = 0 (that is, a flag indicating invalidity) is set in the other columns. FIG. 30 shows a table in which such a data valid flag bit F is set. The table processed to the state shown in FIG. 30 is written in the ROM as the conversion table 74.
[0128]
The conversion table 74 having the above configuration inputs the Y coordinate address and X coordinate address corresponding to the input address to the orthogonal coordinate data memory 66, and sets the data valid flag bit F corresponding to the input address. Input to the control terminal of the gate circuit 75.
[0129]
The gate circuit 75 controls image input only when the data valid flag bit F = 1 is output from the conversion table 74, that is, when a valid X coordinate address and Y coordinate address are output from the conversion table 74. The write pulse output from the unit 72 is passed. On the other hand, when the data valid flag bit F = 0 is output from the conversion table 74, that is, when an invalid X coordinate address and Y coordinate address are output from the conversion table 74, the gate circuit 75 performs image input. The write pulse output from the control unit 72 is blocked.
[0130]
Since the other configuration of the fifth embodiment is the same as that of the fourth embodiment, the description thereof is omitted.
<Operation of Embodiment>
According to the fifth embodiment configured as described above, every time the inspection target optical member 14 rotates 0.05 °, the rotation angle detector 71 sets the rotation angle address (upper address of the conversion table 69) k. At the same time, the output pixel counter 73 is reset and an angle detection signal is input to the image input control unit 72. The image input control unit 72 that has received the angle detection signal causes the imaging device 5 of the imaging device 3 to perform imaging.
[0131]
When the image sensor 5 receives the readout start signal from the image input controller 72, the image sensor 5 outputs the charges accumulated in each pixel to the buffer memory 32 in parallel. The buffer memory 32 sequentially outputs the charges of the respective pixels thus transferred. The A / D converter 31 converts the electric charge output from the buffer memory 32 for each pixel in this way into luminance value information that is a digital signal, and inputs the luminance value information to the orthogonal coordinate data memory 66.
[0132]
At the same time, the output pixel counter 73 counts the number of times the charge is output from the buffer memory 32, and displays the counting result (that is, the pixel number corresponding to the luminance value information input to the orthogonal coordinate data memory 66). , The pixel address (lower address) m is input to the conversion table 69. Then, the conversion table 74 stores the X coordinate address and Y coordinate address corresponding to the address (rotation angle address k as the upper address, pixel address m as the lower address) input at that time in the orthogonal coordinate data memory 66. At the same time, the corresponding data valid flag bit F is input to the gate circuit 75.
[0133]
The gate circuit 75 blocks the write pulse from the image input control unit 72 if the input data valid flag bit F is “0”, and writes the write pulse if the input data valid flag bit F is “1”. Pass through.
[0134]
As a result, the orthogonal coordinate data memory 66 is designated by the input address (X coordinate address as the upper address, Y coordinate address as the lower address) only when the write pulse is input via the gate circuit 75. The luminance value information input from the imaging device 3 is written into the pixel. On the other hand, when the writing pulse is blocked by the gate circuit 75, the luminance value information input from the A / D converter 31 of the imaging device 3 is discarded without being written in the orthogonal coordinate data memory 66.
[0135]
Incidentally, in the conversion table 74, the data valid flag bit F = 1 indicating that the combination of the same X coordinate address and Y coordinate address is valid is set only in one place. Accordingly, the luminance value information is not overwritten over the same pixel in the orthogonal coordinate data memory 66 a plurality of times. In addition, the polar coordinate value (m, k) corresponding to the orthogonal coordinate value (X, Y) for which the data valid flag bit F = 1 is set has the polar coordinate-orthogonal coordinate conversion calculation result based on the polar coordinate value (m, k) being the most relevant orthogonal coordinate value ( X, Y). Therefore, Cartesian coordinate data that approximates the actual image of the optical member 14 to be inspected can be obtained.
[0136]
When the rotation angle address output from the rotation angle detector 71 reaches the maximum value k = 3599 and the pixel address output from the output pixel counter 73 reaches the maximum value m = 2047, an image conversion completion notification is input to the image. When output from the control unit 72, the image processing unit 70 calculates a graphical feature amount based on the orthogonal coordinate data synthesized in the orthogonal coordinate data memory 66, and determines the calculated graphical feature amount to a certain level. The quality of the inspection target optical member 14 is determined by comparing with the reference value.
[0137]
Since the other operations in the fifth embodiment are the same as those in the first embodiment, the description thereof is omitted.
[0138]
【The invention's effect】
According to the optical member inspection apparatus of the present invention configured as described above, coordinate conversion can be performed with a small number of processing steps and processing time.
[0139]
According to the optical member inspection apparatus of the thirteenth, fourteenth, or sixteenth aspect, coordinate conversion can be performed without causing loss of luminance values in the image data after coordinate conversion.
According to the optical member inspection apparatus of claim 10, 13, or 14, the luminance value at which the orthogonal coordinate value calculated by the coordinate transformation calculation is closest to the center of the pixel in the image memory is written to the pixel. it can.
[Brief description of the drawings]
FIG. 1 is a side sectional view showing a schematic configuration of an optical member inspection apparatus according to a first embodiment of the present invention.
2 is a plan view of the optical member to be inspected in FIG. 1 as viewed from the position of the imaging device.
3 is a block diagram showing an internal circuit configuration of the control device of FIG. 1;
FIG. 4 is a view showing a light traveling state when the optical member to be inspected has no optical defect.
FIG. 5 is a view showing a light traveling state when the optical member to be inspected has an optical defect.
FIG. 6 is a graph showing the luminance distribution of image data output from the imaging device when the optical member to be inspected has an optical defect.
FIG. 7 is a diagram showing a relationship between a relative position of a light shielding plate, an imaging target region, and an inspection target optical member and polar coordinate data stored in the polar coordinate data storage region;
FIG. 8 is a diagram showing a relationship between a relative position of a light shielding plate, an imaging target region, and an inspection target optical member and polar coordinate data stored in the polar coordinate data storage region;
FIG. 9 is a diagram showing a relationship between a relative position of a light shielding plate, an imaging target region, and an inspection target optical member and polar coordinate data stored in the polar coordinate data storage region;
FIG. 10 is a diagram showing a relationship between a relative position of a light shielding plate, an imaging target region, and an inspection target optical member and polar coordinate data stored in a polar coordinate data storage region;
FIG. 11 is a diagram showing a relationship between a relative position of a light shielding plate, an imaging target region, and an inspection target optical member and polar coordinate data stored in the polar coordinate data storage region;
FIG. 12 is a diagram showing a coordinate conversion method from a polar coordinate system to an orthogonal coordinate system.
13 is a memory map showing image data stored in the polar coordinate data storage area and the orthogonal coordinate data storage area of FIG. 3;
FIG. 14 is an explanatory diagram illustrating filling of luminance value information due to an increase in pseudo image data.
FIG. 15 is a diagram showing a procedure for creating a conversion table
16 is a view showing the structure of the conversion table in FIG. 3;
FIG. 17 is a flowchart showing control processing executed by the CPU of FIG. 3;
FIG. 18 is a flowchart showing a coordinate conversion process processing subroutine executed in S02 of FIG.
FIG. 19 is an explanatory diagram of an operation according to the first embodiment of the present invention.
FIG. 20 is a block diagram showing an internal circuit configuration of a control device according to the second embodiment of the present invention.
FIG. 21 is a flowchart showing a control process executed by the CPU of FIG.
FIG. 22 is a flowchart showing a coordinate conversion process subroutine executed in S21 of FIG.
FIG. 23 is a block diagram showing an internal circuit configuration of a control device according to a third embodiment of the present invention.
FIG. 24 is a diagram showing a procedure for creating a conversion table
FIG. 25 is a diagram showing a procedure for creating a conversion table
FIG. 26 is a diagram showing a procedure for creating a conversion table
27 is a diagram showing the structure of the conversion table in FIG.
FIG. 28 is a block diagram showing an internal circuit configuration of a control device according to a fourth embodiment of the present invention.
FIG. 29 is a block diagram showing an internal circuit configuration of a control device according to a fifth embodiment of the present invention.
30 is a diagram showing the structure of the conversion table in FIG. 29. FIG.
FIG. 31 is a schematic diagram of an optical member inspection apparatus of a prior application.
FIG. 32 is an explanatory diagram of coordinate conversion in the prior application.
FIG. 33 is an explanatory diagram of the imaging cycle of the line sensor.
FIG. 34 is a diagram showing a state where luminance values are missing in the Cartesian coordinate data.
[Explanation of symbols]
3 Imaging device
4 Imaging lens
5 Image sensor
6 Control device
8 Drive motor
10 Reader
14 Optical member to be inspected
15 Holder
60 CPU
62 Host memory
62a All polar coordinate data storage area
62b Cartesian coordinate data storage area
62c Conversion table storage area
62d Polar coordinate data storage area
63 Rotation angle detection circuit
65 Polar coordinate data memory
66 Cartesian coordinate data memory
67 Rotation angle counter
68 pixel counter
69 Conversion table
71 Rotation angle detector
73 Output pixel counter
74 Conversion table

Claims (11)

検査対象光学部材の光学的欠陥を検出する光学部材検査装置であって、
撮像レンズと、
この撮像レンズによって形成された検査対象光学部材の像を繰り返し撮像するために複数の画素を一方向に並べてなるラインセンサと、
前記検査対象光学部材の像と前記ラインセンサとを相対回転させる回転手段と、
前記ラインセンサから出力された前記各画素に対応する輝度値からなる画像データを入力する入力手段と、
直交座標によってその位置が特定される複数のピクセルをマトリックス状に並べてなる画像メモリと、
前記入力手段によって入力された各輝度値を出力した時における前記検査対象光学部材の像前記ラインセンサの相対角度を特定する角度特定手段と、
前記入力手段によって入力された各輝度値に対応する画素の位置を特定する画素位置特定手段と、
前記相対角度と前記画素の位置との組み合わせからなる全ての極座標値に対して所定の極座標−直交座標変換演算を夫々施したときに、前記画像メモリの各ピクセルを特定する個々の直交座標値に最も近い計算結果になる各極座標値を、夫々当該直交座標値に対応させているとともに、当該所定の極座標−直交座標変換演算を行ったときに何れの極座標値にも対応していない直交座標値が生じた場合には、前記極座標−直交座標変換演算の計算結果が当該直交座標値に最も近くなる極座標値を当該何れの極座標値にも対応していない直交座標値に対応させている変換テーブルと、
前記角度特定手段によって特定された相対角度及び前記画素位置特定手段によって特定された画素の位置に基づいて前記変換テーブルを検索して、対応する直交座標値を読み出す検索手段と、
前記入力手段によって入力された各輝度値を、前記検索手段によって読み出された直交座標値に対応する前記画像メモリ中のピクセルへ書き込む書込手段と
を備えたことを特徴とする光学部材検査装置。
An optical member inspection apparatus for detecting an optical defect of an optical member to be inspected,
An imaging lens;
A line sensor in which a plurality of pixels are arranged in one direction in order to repeatedly capture an image of the inspection target optical member formed by the imaging lens;
Rotating means for relatively rotating the image of the inspection target optical member and the line sensor;
Input means for inputting image data composed of luminance values corresponding to the respective pixels output from the line sensor;
An image memory in which a plurality of pixels whose positions are specified by orthogonal coordinates are arranged in a matrix;
An angle specifying means for specifying a relative angle between the image of the optical member to be inspected and the line sensor when each luminance value input by the input means is output;
Pixel position specifying means for specifying the position of a pixel corresponding to each luminance value input by the input means;
When a predetermined polar coordinate-orthogonal coordinate conversion operation is performed on all polar coordinate values composed of combinations of the relative angle and the pixel position, individual orthogonal coordinate values that specify each pixel of the image memory are obtained. Each polar coordinate value that results in the closest calculation is associated with the orthogonal coordinate value, and the orthogonal coordinate value that does not correspond to any polar coordinate value when the predetermined polar coordinate-orthogonal coordinate conversion calculation is performed. Is generated, the polar coordinate value whose calculation result of the polar coordinate-orthogonal coordinate conversion calculation is closest to the orthogonal coordinate value is associated with an orthogonal coordinate value that does not correspond to any polar coordinate value. When,
Search means for searching the conversion table based on the relative angle specified by the angle specifying means and the position of the pixel specified by the pixel position specifying means and reading out the corresponding orthogonal coordinate value;
An optical member inspection apparatus comprising: writing means for writing each luminance value input by the input means to a pixel in the image memory corresponding to the orthogonal coordinate value read by the search means .
検査対象光学部材の光学的欠陥を検出する光学部材検査装置であって、
撮像レンズと、
この撮像レンズによって形成された検査対象光学部材の像を繰り返し撮像するために複数の画素を一方向に並べてなるラインセンサと、
前記検査対象光学部材の像と前記ラインセンサとを相対回転させる回転手段と、
前記ラインセンサから出力された前記各画素に対応する輝度値からなる画像データを入力する入力手段と、
直交座標によってその位置が特定される複数のピクセルをマトリックス状に並べてなる画像メモリと、
前記検査対象光学部材の像と前記ラインセンサとの相対角度と前記画素の位置との組み合わせからなる全ての極座標値に対して所定の極座標−直交座標変換演算を夫々施したときに、前記画像メモリの各ピクセルを特定する個々の直交座標値に最も近い計算結果になる各極座標値を、夫々当該直交座標値に対応させるとともに、当該所定の極座標−直交座標変換演算を行ったときに何れの極座標値にも対応していない直交座標値が生じた場合には、前記極座標−直交座標変換演算の計算結果が当該直交座標値に最も近くなる極座標値を当該何れの極座標値にも対応していない直交座標値に対応させている変換テーブルと、
この変換テーブルから、相対角度と前記画素の位置との組み合せ,及びこの組み合わせに対応する前記直交座標値を、夫々一つ取り出す取出手段と、
前記入力手段から入力された画像データから、前記取出手段によって取り出された相対角度と前記画素の位置との組み合せに対応する輝度値を読み出す読出手段と、
この読出手段によって読み出された輝度値を前記取出手段によって取り出された前記直交座標値に対応する前記画像メモリ中のピクセルへ書き込む書込手段と
を備えたことを特徴とする光学部材検査装置。
An optical member inspection apparatus for detecting an optical defect of an optical member to be inspected,
An imaging lens;
A line sensor in which a plurality of pixels are arranged in one direction in order to repeatedly capture an image of the inspection target optical member formed by the imaging lens;
Rotating means for relatively rotating the image of the inspection target optical member and the line sensor;
Input means for inputting image data composed of luminance values corresponding to the respective pixels output from the line sensor;
An image memory in which a plurality of pixels whose positions are specified by orthogonal coordinates are arranged in a matrix;
When a predetermined polar coordinate-orthogonal coordinate conversion operation is performed on all polar coordinate values composed of a combination of a relative angle between the image of the optical member to be inspected and the line sensor and the position of the pixel, the image memory Each polar coordinate value that is the closest calculation result to each orthogonal coordinate value that specifies each pixel of the pixel is associated with the orthogonal coordinate value, and any polar coordinate when the predetermined polar coordinate-orthogonal coordinate conversion operation is performed. When an orthogonal coordinate value that does not correspond to a value is generated, the polar coordinate value that is closest to the orthogonal coordinate value is not associated with any of the polar coordinate values. A conversion table corresponding to the Cartesian coordinate value ;
Extraction means for extracting one combination of the relative angle and the position of the pixel from the conversion table, and one of the orthogonal coordinate values corresponding to the combination,
Reading means for reading out a luminance value corresponding to a combination of the relative angle extracted by the extraction means and the position of the pixel from the image data input from the input means;
An optical member inspection apparatus comprising: writing means for writing the luminance value read by the reading means to the pixels in the image memory corresponding to the orthogonal coordinate values extracted by the extracting means.
前記画像メモリに書き込まれた前記検査対象光学部材全体に対応する画像データの図形的特徴量を測定する図形的特徴量測定手段と、
前記図形的特徴量が所定の判定基準値を超えたか否かを判定する判定手段と
を更に備えたことを特徴とする請求項1又は2記載の光学部材検査装置。
Graphic feature quantity measuring means for measuring a graphic feature quantity of image data corresponding to the entire inspection target optical member written in the image memory;
3. The optical member inspection apparatus according to claim 1, further comprising a determination unit that determines whether or not the graphical feature amount exceeds a predetermined determination reference value.
前記入力手段は、前記ラインセンサが前記検査対象光学部材の像を繰り返し撮像することによってこのラインセンサから出力された画像データを各撮像毎に行単位で順番に格納する一時格納メモリを有するとともに、
前記読出手段は、前記取出手段によって取り出された相対角度に対応する行,及び前記取出手段によって取り出された前記画素の位置に対応する列によって特定されるピクセルから前記輝度値を読み出す
ことを特徴とする請求項2記載の光学部材検査装置。
The input means includes a temporary storage memory that stores the image data output from the line sensor in order in units of rows for each imaging by the line sensor repeatedly capturing an image of the optical member to be inspected.
The reading means reads the luminance value from a pixel specified by a row corresponding to the relative angle extracted by the extracting means and a column corresponding to the position of the pixel extracted by the extracting means. The optical member inspection apparatus according to claim 2.
前記書込手段は、前記検査対象光学部材全体に対応する画像データの前記一時格納メモリへの格納が完了した後に、この一時格納メモリに格納された画像データを構成する各輝度値を、前記画像メモリに書き込む
ことを特徴とする請求項4記載の光学部材検査装置。
The writing means, after the image data corresponding to the entire optical member to be inspected is completely stored in the temporary storage memory, the luminance values constituting the image data stored in the temporary storage memory The optical member inspection apparatus according to claim 4, wherein the optical member inspection apparatus writes in a memory.
前記ラインセンサは、その画素の列を前記撮像レンズの光軸と直交させた状態で固定されており、
前記回転手段は、前記検査対象光学部材を前記撮像レンズの光軸を中心に回転させ、
前記角度特定手段は、前記回転手段によって回転された検査対象光学部材の回転角を検知するエンコーダを有する
ことを特徴とする請求項1記載の光学部材検査装置。
The line sensor is fixed in a state where the column of pixels is orthogonal to the optical axis of the imaging lens,
The rotating means rotates the optical member to be inspected around the optical axis of the imaging lens,
The optical member inspection apparatus according to claim 1, wherein the angle specifying unit includes an encoder that detects a rotation angle of the inspection target optical member rotated by the rotation unit.
前記画素位置特定手段は、前記ラインセンサから順番に出力される各輝度値をカウントするカウンタを有する
ことを特徴とする請求項1記載の光学部材検査装置。
The optical member inspection apparatus according to claim 1, wherein the pixel position specifying unit includes a counter that counts each luminance value output in order from the line sensor.
前記変換テーブルは、前記相対角度と前記画素の位置との組み合わせのうち、前記画像メモリの各ピクセルを特定する個々の直交座標値に対応しないものについては、無効を示す値を対応させている
ことを特徴とする請求項1又は2に記載の光学部材検査装置。
The conversion table associates a value indicating invalidity with respect to a combination of the relative angle and the position of the pixel that does not correspond to an individual orthogonal coordinate value that specifies each pixel of the image memory. The optical member inspection apparatus according to claim 1 or 2 .
前記変換テーブルは、前記相対角度と前記画素の位置との全ての組み合わせを何れかの前記直交座標値に対応させるとともに、各直交座標値に対応する前記相対角度と前記画素の位置との組み合わせが複数ある場合には、一つの有効な組み合わせ以外の全ての組み合わせに対して無効を示すフラグを付しており、
前記書込手段は、前記角度特定手段によって特定された相対角度及び前記画素位置特定手段によって特定された画素の位置の組み合わせについて、前記変換テーブル内において無効を示すフラグが付されていない場合に限り、前記検索手段によって読み出された直交座標値に対応する前記画像メモリ中のピクセルへ、前記入力手段によって入力された輝度値を書き込む
ことを特徴とする請求項1乃至8のいずれかに記載の光学部材検査装置。
In the conversion table, all the combinations of the relative angle and the pixel position correspond to any of the orthogonal coordinate values, and the combination of the relative angle and the pixel position corresponding to each orthogonal coordinate value is If there is more than one, a flag indicating invalidity is attached to all combinations other than one valid combination,
The writing means only when a flag indicating invalidity is not attached in the conversion table for the combination of the relative angle specified by the angle specifying means and the position of the pixel specified by the pixel position specifying means. , the pixels in the image memory corresponding to the rectangular coordinate values read by the retrieval means, according to any one of claims 1 to 8, wherein the writing the luminance value inputted by said input means Optical member inspection device.
前記ラインセンサは、その画素の列を前記撮像レンズの光軸と直交させた状態で固定されており、前記回転手段は、前記検査対象光学部材を前記撮像レンズの光軸を中心に回転させる
ことを特徴とする請求項2記載の光学部材検査装置。
The line sensor is fixed in a state where the pixel row is orthogonal to the optical axis of the imaging lens, and the rotating means rotates the optical member to be inspected around the optical axis of the imaging lens. The optical member inspection apparatus according to claim 2.
前記変換テーブルは、前記入力手段によって入力された各輝度値を出力した時における前記検査対象光学部材の像及び前記ラインセンサの相対角度以外の角度については、当該角度と前記画素の位置との組み合わせに対して前記所定の極座標−直交座標変換演算を施し、その演算の結果得られた値に最も近い直交座標値を、当該角度よりも大きく且つ最も近い前記相対角度に対応させた
ことを特徴とする請求項1又は2に記載の光学部材検査装置。
For the angle other than the image of the optical member to be inspected and the relative angle of the line sensor when the luminance values input by the input unit are output, the conversion table is a combination of the angle and the pixel position. The predetermined polar coordinate-orthogonal coordinate conversion operation is performed on the image, and the orthogonal coordinate value closest to the value obtained as a result of the operation is made to correspond to the relative angle that is larger and closest to the angle. The optical member inspection apparatus according to claim 1 or 2 .
JP07228897A 1997-03-25 1997-03-25 Optical member inspection device Expired - Fee Related JP3930098B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP07228897A JP3930098B2 (en) 1997-03-25 1997-03-25 Optical member inspection device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07228897A JP3930098B2 (en) 1997-03-25 1997-03-25 Optical member inspection device

Publications (2)

Publication Number Publication Date
JPH10267856A JPH10267856A (en) 1998-10-09
JP3930098B2 true JP3930098B2 (en) 2007-06-13

Family

ID=13484950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07228897A Expired - Fee Related JP3930098B2 (en) 1997-03-25 1997-03-25 Optical member inspection device

Country Status (1)

Country Link
JP (1) JP3930098B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3544463B2 (en) * 1997-10-28 2004-07-21 ペンタックス株式会社 Patent application title: Focusing device and image reading device provided with the focusing device
JP2017003412A (en) * 2015-06-10 2017-01-05 富士通株式会社 Lens inspection apparatus and lens inspection method

Also Published As

Publication number Publication date
JPH10267856A (en) 1998-10-09

Similar Documents

Publication Publication Date Title
US5305391A (en) Method of and apparatus for inspecting bottle or the like
US5216481A (en) Method of and apparatus for inspecting transparent object for defect
JPH0869534A (en) Method and equipment for detection of image quality
JP2000055829A (en) Single-region array sensor, device for inspecting container using alternate strobe light source, and its method
JP3930098B2 (en) Optical member inspection device
JPH11211442A (en) Method and device for detecting defect of object surface
JP3332208B2 (en) Defect detection method and apparatus for netted glass
JP4581424B2 (en) Appearance inspection method and image processing apparatus
JP3406795B2 (en) Optical member inspection device
JP2846052B2 (en) Cylindrical inspection equipment
JPH10311776A (en) Optical member tester
JP3360795B2 (en) Optical member inspection device
JP3039704B2 (en) Printing evaluation method and printing evaluation device
JP3202330B2 (en) Defect inspection equipment
JPS61107144A (en) Method for inspecting container
JP2000292307A (en) Appearance inspection device for light transmission body
JP2000105166A (en) Optical member inspection device, image-processing device and method, and computer-readable medium
JPS5821107A (en) Inspecting device for pattern
JPH11132966A (en) Meandering following apparatus for flaw inspection apparatus
JP3350244B2 (en) Method and apparatus for measuring transmission strain
JP3119376B2 (en) Printing evaluation method and printing evaluation device
JPH10253549A (en) Optical member inspecting device
JP3887084B2 (en) Optical member inspection device
JP2683246B2 (en) Defect detection method
JP3435326B2 (en) Optical member inspection device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050530

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060829

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061027

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070306

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070308

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees