(57)【要約】【課題】タクトタイムを大幅に向上させて正確な高さを測定することが可能な高さデータ処理方法を提供する。【解決手段】ライン光によって切断される突出物を撮像して光切断法により得られる突出物の高さデータを処理する。まず、突出物の像を画素ごとに階調データとして取り出し、各画素ごとにその周辺の画素の階調の平坦度を調べ、平坦でない場合には対象画素にフィルタ処理を行うような階調処理を行ない、前記階調処理の行なわれた階調データに対して二値化を行ない突出物の像を二値化データに変換する（ステップＳ１７、Ｓ２７）。このような構成では、撮像された画素の階調データに対して平坦化処理がなされたあと二値化されるので、安定した高さデータが得られる。【選択図】図５
2007101565.tif 000002
【特許請求の範囲】
【請求項１】
ライン光によって切断される突出物を撮像して光切断法により得られる突出物の高さデータを処理する高さデータ処理方法において、
突出物の像を画素ごとに階調データとして取り出し、
各画素ごとにその周辺の画素の階調の平坦度を調べ、
平坦でない場合には対象画素にフィルタ処理を行うような階調処理を行ない、
前記階調処理の行なわれた階調データに対して二値化を行ない突出物の像を二値化データに変換することを特徴とする高さデータ処理方法。
【請求項２】
各行ごとにフィルタ処理の行なわれた階調データの平均値と標準偏差を求め、行ごとに前記平均値と標準偏差から決まるしきい値とその行にある各画素の階調データを比較して各画素の二値化を行なうことを特徴とする請求項１に記載の高さデータ処理方法。
【請求項３】
ライン光によって切断される突出物を撮像して光切断法により得られる突出物の高さデータを処理する高さデータ処理方法において、
突出物の像を行と列に配置された画素の二値化データとして取り出し、
二値化データに対してフィルタ処理を行ない、
フィルタ処理の結果空白行となった場合には、前後の行の二値化データの配列に応じて空白行にデータの埋め込みを行なうことを特徴とする高さデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高さデータ処理方法、更に詳細には、表面実装システムに用いられるクリーム半田印刷機によって印刷されたクリーム半田など微細な高さを測定するときの高さデータ処理方法に関する。
【背景技術】
【０００２】
従来から三次元形状を認識して高さを測定する装置として光切断法を用いた三次元認識装置が知られている。この光切断法による三次元認識装置を図１４に示す。光源であるライン光発生器１２１からのライン光１２２が被測定物１２３の斜め上方から所定の角度で投光され、被測定物１２３の表面に形成された面形状に沿ってできた像が垂直上方よりＣＣＤカメラ１２４で撮影される。ＣＣＤカメラ１２４で撮影した画像はＣＣＤカメラ制御器１２５でＡ／Ｄ変換され、画像取込み器１２６で取込まれる。そして、その取込まれたデータは座標演算器１２７によって被測定物１２３の三次元座標に変換される。
【０００３】
クリーム半田印刷機に組込んで使用するようなクリーム半田高さ測定装置においては、図１４で点線で囲まれた部分（測定ユニット）１２８が、ＸＹ移動ガントリー（ＸＹ移動機構）に組み込まれて使用される。まずクリーム半田印刷機に印刷用の配線基板が搬入されると、配線基板とステンシルの位置決め完了後に、ＸＹ移動ガントリーによって、初期待避位置から目的とする測定位置まで測定ユニット１２８が移動される。そして、測定ユニットは被測定物である配線基板上のパッド面（レジスト面）に形成されるライン光の像を、ＣＣＤカメラ１２４によって撮像してから初期待避位置に再び移動待避する。次に配線基板のパッド面にクリーム半田が印刷される。配線基板のパッド面への印刷が完了した後に、再びＸＹ移動ガントリーによって測定ユニット１２８が目的とする測定位置まで移動されて、クリーム半田の形状に沿ってできたライン光の像を、ＣＣＤカメラ１２４によって撮像してから、初期待避位置に再び移動待避する。
【０００４】
以上の撮像データから、配線基板のパッド面の高さ方向の重心位置座標と、クリーム半田部の高さ方向の重心位置座標を計算する。そして、配線基板のパッド面の高さ方向の重心位置座標とクリーム半田部の高さ方向の重心位置座標の差し引きから、配線基板のパッド面を基準として、印刷後のクリーム半田部の高さを算出する。そして各パッド面にわたるクリーム半田部の平均高さを算出する。
【０００５】
三次元形状を得るためには、光切断位置を変えた複数のデータが必要となる。例えば長さが２ｍｍのパッドに印刷されたクリーム半田の三次元形状を得るために、５０μｍのピッチで光切断を行うとする。この場合は、クリーム半田の印刷前に、配線基板のパッド面に形成されるライン光の像をＣＣＤカメラによって、光切断の位置を変えながら４０回撮像する。さらに、クリーム半田の印刷後に、クリーム半田の形状に沿って形成されたライン光の像を、ＣＣＤカメラで光切断の位置を変えながら４０回撮像する必要がある。従って、ＣＣＤカメラによる撮像回数の合計は８０回となる。同じく、測定ユニットの微小移動回数の合計も８０回となる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来のクリーム半田印刷機に組込んで使用するようなクリーム半田の高さ測定装置においては、印刷前のライン光の像と印刷後のライン光の像をＣＣＤカメラで撮像してクリーム半田の高さを算出しなければならない。このためにタクトタイムが長くなり、半導体の表面実装システム全体の性能を下げてしまうという問題点があった。
【０００７】
さらに、光切断の位置を微小に変えるにもＣＣＤカメラが搭載された重い測定ユニットを移動しなければならず、ＸＹ移動ガントリーに対しては、目的とする測定位置までのスキップ機能と、測定目的位置での微小移動という二つの機能を持たせねばならず、ＸＹ移動ガントリー駆動用のサーボ系が複雑になるという問題点があった。
【０００８】
従って、本発明は、このような問題を解決するためになされたもので、タクトタイムを大幅に向上させて正確な高さを測定することが可能な高さデータ処理方法を提供することをその課題とする。
【課題を解決するための手段】
【０００９】
本発明は、
ライン光によって切断される突出物を撮像して光切断法により得られる突出物の高さデータを処理する高さデータ処理方法において、
突出物の像を画素ごとに階調データとして取り出し、
各画素ごとにその周辺の画素の階調の平坦度を調べ、
平坦でない場合には対象画素にフィルタ処理を行うような階調処理を行ない、
前記階調処理の行なわれた階調データに対して二値化を行ない突出物の像を二値化データに変換することを特徴とする。
【００１０】
また、本発明は
ライン光によって切断される突出物を撮像して光切断法により得られる突出物の高さデータを処理する高さデータ処理方法において、
突出物の像を行と列に配置された画素の二値化データとして取り出し、
二値化データに対してフィルタ処理を行ない、
フィルタ処理の結果空白行となった場合には、前後の行の二値化データの配列に応じて空白行にデータの埋め込みを行なうことを特徴とする。
【発明の効果】
【００１１】
本発明の高さデータ処理では、撮像された画素の階調データに対して平坦化処理がなされたあと二値化されるので、安定した高さデータが得られる。また二値化データに対してフィルタ処理を行なって、その結果空白行が発生した場合、その前後の行の二値化データの配列に応じて空白行にデータの埋め込みが行なわれるので、信頼性のある高さデータが求められる。
【発明を実施するための最良の形態】
【００１２】
以下、図面に示す実施の形態に基づいて本発明を詳細に説明する。
【実施例１】
【００１３】
［基本構成］
図１は本発明の１実施形態を示した３次元測定装置の主要光学部品の基本構成図であり、図２はその側面図である。各図において、符号１で示すものは、レーザ光源としてのレーザダイオードで、このレーザダイオード１から発光されたレーザ光は、コリメートレンズ２で光学中心軸に平行な平行光束１ａにされる。このレーザ平行光束１ａは、フォーカスレンズ３と投光ミラー４とラインジェネレータレンズ５が組み込まれている投光ユニット７に入射する。レーザ光束は、投光ユニット７内のフォーカスレンズ３によりスポット光となるように絞り込まれ、投光ミラー４によって垂直軸（Ｚ方向）に対して４５度の角度に反射され、ラインジェネレータレンズ５によって幅１４〜２０μｍ、長さ１０ｍｍのライン光９となり、被測定物（クリーム半田ないしそれが印刷される配線基板）１１上にＸ方向にライン光９を形成する。
【００１４】
被測定物１１からの散乱反射光は、光軸６ａが垂直軸となるように配置された６．４ｍｍ×４．８ｍｍ視野のノンインターレース式ＣＣＤカメラ６により撮像される。また、この投光ユニット７は、リニアモータ８のシャフト８ａに取り付けられており、リニアモータ８がＹ方向に約１０ｍｍのストロークで直線運動を行なうことにより、２重矢印で示したように、平行光束１ａに平行に往復移動する。この投光ユニット７の移動によりライン光９はライン光の伸びるＸ方向と垂直方向に移動することになる。
【００１５】
［回路構成（データ取得）］
図３は、３次元測定装置において被測定物の画像データを取得する回路構成を示したブロック図である。同図において、リニアモータ駆動指令器３１は、ＣＰＵ４４からのスタート信号を受けて、リニアモータドライバ３２にリニアモータ駆動用の指令パルス列を出力し、リニアモータ８を１パルス当たり０．２５μｍ移動させる。リニアモータ駆動指令器３１は、同時にＬＤ（レーザダイオード）オン／ＣＣＤトリガタイミングデコーダ（以下タイミングデコーダという）３５に正／逆方向信号を送り、リニアモータ８が正方向か逆方向のどちらに移動しているかを知らせる。
【００１６】
リニアモータドライバ３２は、指令パルス列を受けてリニアモータを駆動するとともに、リニアモータ８内蔵の位置エンコーダ８ｂからの実際位置を示す信号を受けてリニアモータ８への供給電圧を調整し、リニアモータの位置をフィードバック制御する。
【００１７】
位置カウンタ３４は、リニアモータ８の位置エンコーダ８ｂにより９０度位相の異なるＡ相信号、Ｂ相信号を受け、リニアモータ８の位置を示す位置信号をデジタルデータで出力する。なお、位置カウンタ３４のリセットは、位置エンコーダ８ｂの原点リセット信号により行なう。
【００１８】
タイミングデコーダ３５は、位置カウンタ３４からの位置データを受けてＬＤオンのタイミング信号（１６０μｍピッチ）を出力する。この信号の立ち上がりを受けて、ワンショットマルチバイブレータ（ＭＳ）４６は、２ｍｓ幅のＬＤオンパルスをレーザダイオードドライバ３６に出力し、レーザダイオード１をパルス点灯する。レーザダイオード１には、光量モニタフォトダイオード（不図示）が内蔵されており、これによりレーザダイオード１の光量が一定に制御される。
【００１９】
なお、ＬＤオンの最中にも、リニアモータ８が動いているために、移動方向によりライン光位置がずれるための補正と、正方向と逆方向で半ピッチ分（実施例では８０μｍ）ズラすために、上述したようにリニアモータ駆動指令器３１から正／逆方向信号が入力される。
【００２０】
位置ラッチ３７は、位置カウンタ３４から出力される位置データをＬＤオンのタイミングの立ち上がりでラッチし、そのときのライン光のＹ方向の位置をＭＳ４６からのＬＤオンパルスの立ち下がりタイミングに同期してＣＰＵ４４に伝えている。ＬＤオン中にもライン光が移動して、実際のライン光位置とずれを生じるが、これについては、ライン光移動速度とＬＤオン時間と正／逆方向信号により、ＣＰＵ４４内で補正を行なっている。
【００２１】
一方、同期信号タイミング発生器３９は、タイミングデコーダ３５からＯＲ回路３５’を介してＣＣＤカメラ同期タイミング信号を受け、ＨＤ水平同期信号とタイミングを合わせたＶＤ垂直同期信号を出力する。このＶＤ垂直同期信号に関連して、前フレームの各画素の光量データ読み出しが開始される。同時に、各画素での光量蓄積が始まり、ライン光９による画像がＣＣＤカメラ６のＣＣＤエリアイメージセンサ３８上に取得される。
【００２２】
ＣＣＤエリアイメージセンサ３８上の像は、同期信号タイミング発生器３９からの垂直レジスタ転送クロック、水平レジスタ転送クロック等により、ドライバ３３を介して各画素の光量値（アナログ値）として読み出される。これが、アンプ４７を介して、Ａ／Ｄ変換器４８に入力され、デジタルデータとして、Ｖ−ＲＡＭ画像メモリ４０に入力される。
【００２３】
水平アドレスカウンタ４２は、同期信号タイミング発生器３９からの水平同期信号の立ち下がりより所定の水平クロック数後にリセットされ、その後水平クロックをカウントすることにより有効画面内の現在の画素の水平方向の位置（水平アドレス）を出力する。この水平アドレス値は、マルチプレクサ４１を介してＶ−ＲＡＭ画像メモリ４０の水平アドレスに入力される。
【００２４】
一方、垂直アドレスカウンタ４３は、同期信号タイミング発生器３９からの垂直同期信号の立ち下がりより所定の水平同期信号のパルス数後にリセットされ、その後水平同期信号のパルスをカウントすることにより有効画面内の現在の画素の垂直方向の位置（垂直アドレス）を出力する。この垂直アドレス値は、マルチプレクサ４５を介してＶ−ＲＡＭ画像メモリ４０の垂直アドレスに入力される。
【００２５】
書込タイミング発生器４９は、水平アドレスカウンタ４２よりの有効水平走査区間信号と、垂直アドレスカウンタ４３よりの有効垂直走査区間信号の間、水平クロックに同期してＶ−ＲＡＭ画像メモリ４０に書き込み信号を出力する。これによりＶ−ＲＡＭ画像メモリ４０は有効水平走査区間信号と有効垂直走査区間信号で定まる有効画面内の各画素データを格納する。
【００２６】
水平／垂直アドレス発生器５０は、水平アドレス信号をマルチプレクサ４１に、垂直アドレス信号をマルチプレクサ４５に、また読出し信号をＶ−ＲＡＭ画像メモリ４０に出力する。マルチプレクサ４１、４５はＣＰＵ４４からの切替信号に応じて読み出し側に切り替えられ、読出し信号に同期して水平アドレス信号及び垂直アドレス信号で定まるアドレスのＶ−ＲＡＭ画像メモリ４０の画像データが順次読み出される。なお、この画像データの読み出しは、Ｖ−ＲＡＭ画像メモリ４０に画像データの書き込みが完了した後に行なわれる。これは、ＣＰＵ４４からの切替信号によりマルチプレクサ４１、４５が書き込みから読み出しモードに切り替えられることにより保証される。
【００２７】
［回路構成（データ処理）］
図４には、Ｖ−ＲＡＭ画像メモリ４０に格納された画像データを処理するための回路構成が図示されており、Ｖ−ＲＡＭ画像メモリ４０を中心とした回路構成は、図３に図示したものと同じものが図示されている。
【００２８】
切替信号によりマルチプレクサ４１、４５が読出しに切り替えられることにより読出し信号に同期してＶ−ＲＡＭ画像メモリ４０から読み出される画像データは、階調データフィルタ処理ブロック６０に入力され、ノイズ分が除去される。階調データフィルタ処理ブロック６０には、２つの１ラインバッファ６１、６２が設けられ、これにより３ライン分の画像データが同時に得られる。これらの３ライン分の画像データは演算回路６３に入力され、画像データの平坦度Ｆが演算され、また演算回路６４にも入力されて、階調の最大値ＭＡＸと階調の最小値ＭＩＮの差ΔＢが演算される。また、３ライン分の画像データは帯域除去フィルタ６８にも入力され、帯域除去フィルタがかけられる。また１ラインバッファ６１の出力は遅延回路６９に入力され、演算処理時間分に相当する遅延がかけられる。なお、演算回路６３、６４及び帯域除去フィルタ６８の処理はそれぞれ３×３の各画素ブロック単位で処理が行なわれる。
【００２９】
演算回路６５は画像データの平坦度Ｆの差ΔＢに対する比を演算し、比較器６６はその演算結果をしきい値６６’と比較する。しきい値以下であればマルチプレクサ６８は、帯域除去フィルタ６８で帯域除去フィルタ処理された画像データを選択し、またしきい値以上であれば遅延回路６９で各演算時間分に相当する遅延のかけられた画像データを選択して二値化処理ブロック７０に出力する。
【００３０】
二値化処理ブロック７０では、階調データフィルタ処理ブロック６０からの画像データに対して平均値演算回路７１で１ライン毎に平均値ｘ（上にバー付き）が演算され、また標準偏差演算回路７２で１ライン毎に標準偏差ρが演算され、しきい値演算回路７４でしきい値（ｘ＋１．５ρ）が演算される。比較器７５は、このしきい値と１ラインバッファ７３で保持していた１ライン分の画像データを比較し、画像データの二値化を行なう。
【００３１】
二値化処理ブロック７０から二値化された画像データは、二値化データフィルタ処理ブロック８０のノイズ除去処理回路８３と２つの１ラインバッファ８１、８２に入力される。ノイズ除去フィルタ処理回路８３は、入力側の２つの１ラインバッファ８１、８２と直接の画像データから同時に３ライン分の画像データを受け、３×３の各画像ブロック毎に小突起、孤立データがあるかを調べ、あればそのデータを除去する処理を行なう。ノイズ除去処理回路８３の出力は判定回路８７と１ラインバッファ８５に入力される。判定回路８７は、１ラインの全てが０かを判定し、１ライン全てが０の場合はマルチプレクサ８９でオア回路８８の出力を、またそうでない場合は１ラインバッファ８５の出力を選択し、それを１ラインバッファ８６に入力する。１ラインバッファ８５の画像データは、現在の画像データに、またノイズ除去処理回路８３の出力と１ラインバッファ８６の画像データはその前後の画像データに相当するので、１ライン全てが０の場合は、前後のラインの同じ水平位置のデータのオア処理により穴埋めされた画像データが出力される。
【００３２】
二値化データフィルタ処理ブロック８０からの二値化された画像データは、重心位置演算処理ブロック９０に入力され重心位置が各ライン毎に演算される。重心位置演算処理ブロック９０の立上り検出回路９１は、二値化画像データが「０」から「１」に変化するのを検出して、そのときの水平アドレスカウンタ９３の水平アドレス値をラッチ回路９４にラッチする。また、立下り検出回路９２は、二値化画像データが「１」から「０」に変化するのを検出して、そのときの水平アドレスカウンタ９３の水平アドレス値をラッチ回路９５にラッチする。重心位置演算回路９６は、この立上り及び立下り時の水平アドレス値を平均して重心位置を演算し、その値を重心位置演算結果メモリ１００に格納する。なお、水平アドレスカウンタ９３は水平アドレス値を求めるために、Ｖ−ＲＡＭ画像メモリからの読み出し用の水平クロックをカウントしている。また、水平アドレスカウンタ９３のリセットは画像データ１ラインの切り替わり時期に行なわれる。
【００３３】
［高さデータの測定］
次にこのような構成において、被測定物を配線基板に印刷されたクリーム半田を例にとり配線基板ないしクリーム半田の高さデータを求める処理を図５、図６の流れを参照して説明する。
【００３４】
一般に、クリーム半田の高さを測定する場合、クリーム半田部の像の輝度に比べて、クリーム半田間のレジスト面の像の画像の輝度が極端に低く、レジスト面のライン光の像を認識できないためにクリーム半田の印刷基準を求めることができなくなるという問題がある。光強度を高めたり、露光時間を長くするとレジスト面の像は認識できるようになるが、今度はクリーム半田部の像がハレーションを起こして、重心計算を正確に処理できなくなってしまう。そこで、以下で説明するように２つの基準線を用いて高さ測定が行なわれる。
【００３５】
まず、ＣＰＵ４４はリニアモータ駆動指令器３１に位置指令信号とスタート信号を発生し、リニアモータ８を第１基準位置（配線基板のレジスト位置）に移動させる（ステップＳ１１）。第１基準位置にくると、ＣＰＵ４４よりオア回路３５’を介してＣＣＤカメラ同期タイミングパルスを送出するとともに（ステップＳ１２）、ＬＤオン信号を発生してレーザダイオード１を例えば３０ｍｓ点灯させる（ステップＳ１３）。
【００３６】
レーザダイオード１から発光されたレーザ光は、コリメートレンズ２で集光されて、光学中心軸に対して平行な平行光束１ａとなり、フォーカスレンズ３によりスポット光となるように絞り込まれる。このレーザスポット光は、投光ミラー４によって入射角に対して４５度の方向に反射され、ラインジェネレータレンズ５に入射する。このレンズ５によりレーザスポット光は、プリズム効果によって一方向（Ｘ方向）に引き伸ばされて、被測定物１１上で幅１４μｍ、長さ１０ｍｍのライン光９となる。このライン光は、視野６．４ｍｍ×４．８ｍｍでノンインターレース式のＣＣＤカメラ６によって撮像される。
【００３７】
ステップＳ１４でＴ1の時間待機した後、ステップＳ１５でＣＣＤカメラ同期タイミングパルスを送り、同期信号タイミング発生器３９を駆動してＣＣＤカメラ６のイメージセンサ３８の画像データを書込タイミング発生器４９の出力に同期してＶ−ＲＡＭ画像メモリ４０に読み込む（ステップＳ１６）。このようにして、取得される画像データが第１基準線１１０として図７に図示されている。
【００３８】
この画像データはステップＳ１７において各画像処理を受ける。まず、ＣＰＵ４４の切替信号によりマルチプレクサ４１、４５が読み出しモードに切り替わり、水平／垂直アドレス発生器５０からの読み出し信号に従って水平アドレス及び垂直アドレスに同期してＶ−ＲＡＭ画像メモリ４０から画像データが読み出される。
【００３９】
読み出された画像データは階調データフィルタ処理ブロック６０で階調データフィルタ処理が行なわれる。演算回路６３は、各３×３の画素ブロックの中心の画素を注目画素として、その周りの階調の平坦度Ｆを演算する。この平坦度Ｆは、注目画素周囲の画素間差の絶対値の平均値として求められ、画素列をＡ、Ｂ、Ｃ・・・・、画素行を１、２、３・・・・として、例えば、注目画素をＢ２とすると、
【００４０】
【数１】
2007101565.tif 000003
を算出することにより平坦度Ｆが演算される。演算回路６４は、各３×３の画素ブロックの画素の最大値と階調の最小値の差ΔＢを求め、演算回路６５はＦ／ΔＢを演算する。比較器６６はＦ／ΔＢがしきい値６６’より小さいときには、画像データが平坦でないので、マルチプレクサ６７を切り替える。これにより帯域除去フィルタ回路６８で注目画素に対して
【００４１】
【数２】
2007101565.tif 000004
の帯域除去フィルタ処理のかけられたデータが出力され、一方ΔＢ＝０の時またはＦ／ΔＢがしきい値より大きい時は遅延回路６９からのデータが選択され、帯域除去フィルタ処理されないデータが出力される。
【００４２】
このように階調データのフィルタ処理が行なわれた画像データは、二値化処理ブロック７０で二値化処理される。そのために、演算回路７１、７２は各ラインの階調の平均値ｘと標準偏差ρを計算する。比較器７５は、１ラインバッファ７３の各画素毎にその画素の階調データがそのラインの階調の平均値ｘ＋ρ×１．５より大きい時は現在の画素の値を１に、以下の時は現在の画素の値を０にして二値化する。
【００４３】
この各二値化された画像データは、二値化データフィルタ処理ブロック８０に送られ、ノイズ除去処理回路８３は各３×３画素ブロック毎に小突起データ並びに孤立データをノイズとして除去する。このノイズ除去は、図８に示したようなａ〜ｆのフィルタ処理を行うことに対応している。３×３の中心の画素を注目画素として、図８のパターンが現れた時、その注目画素の値を０にする。ｆ以外の５種類のフィルタは、９０度づつ回転させて実行する。このようにノイズ処理された二値化画像データは、１ラインバッファ８５、８６に送られる。判定回路８７は、１ラインの全ての画素が０の場合には、前後のラインを参照して穴埋めを行なう。例えば、第２ラインの画素が全て０であった場合、その前後のライン（第１と第３ライン）に１の画素がある場合には、その１の画素のあるところを１にする。
【００４４】
このように処理された画像データは重心位置演算処理ブロック９０に送られ、演算回路９６で重心位置（平均値）が演算される。この重心位置は、図１３に示すように、画素列Ａ、Ｂ、Ｃ・・・に対して１、２、３・・・のような連番を付けることにより行なわれる。この例では１、２行目に関してはＩ列、Ｊ列の画素の値が１であり、Ｉ列の番号は９、Ｊ列の番号は１０なので、１、２行目の重心値は９．５となる。また３、４、５行目に関してはＩ列、Ｈ列、Ｇ列の画素が１であり、各行の重心値は各列に付された番号と同じ値の９、８、７となる。以下同様にして各行の重心値を求める。
【００４５】
このようにして縦軸を重心値、横軸をライン番号としてグラフを描くと図９（ａ）のようになる。この結果がステップＳ１８で第１基準位置（レジスト位置）の高さデータとしてメモリ１００に格納される。
【００４６】
このように第１基準位置の高さデータが求められたので、次にこれからクリーム半田が印刷されようとする第２基準位置にライン光を投光して、その面の高さデータを測定する。そこで、ステップＳ２１で、リニアモータ８は、制御信号に従って一定速度４．８ｍｍ／ｓｅｃでＹ方向に第２基準位置に直線移動され（２．７２ｍｍ移動）、それに従ってリニアモータ８のシャフトに結合された投光ユニット７もＹ方向に平行光束１ａに平行に直線運動する。投光ユニット７は、平行光線に向かって前後方向に移動するが、フォーカスレンズ３は常に平行光束１ａを受光することになるので、フォーカスレンズ３の結像作用には影響を及ぼすことはない。
【００４７】
次のステップＳ２２〜Ｓ２７は、ステップＳ１２〜Ｓ１７と同じであり、撮像された画像データが図７の１１１で示され、また演算された高さデータが図９（ｂ）に図示されている。この結果は、ステップＳ２８で第２基準位置の高さデータとしてメモリ１００に格納される。次に、ステップＳ２９で第１基準線と第２基準線での平均高さデータの差Δｘが演算される。図９の例では、Δｘ＝１７１μｍ−１２７μｍ＝４４μｍとなる。
【００４８】
以上で、配線基板上に２本のライン光を投光して、測定面の平行度が測定されたので、次に、配線基板にクリーム半田を印刷する。図６のステップＳ３０でクリーム半田が印刷されていることが確認された場合には、ステップＳ３１でリニアモータ８を第１基準位置（図７の１１０の位置）、すなわちレジスト位置に移動する。ステップＳ３１からＳ３８は、ステップＳ１１〜Ｓ１８と同様である。第１基準位置に投光されたライン光の像が図１０で１１２で図示されている。
【００４９】
続いて、ステップＳ４１でリニアモータ８を２．７２ｍｍ移動してクリーム半田が印刷された部分（第２基準位置）に移動させる。続くステップＳ４２〜Ｓ４７は、ステップＳ３２〜Ｓ３７と同様であるが、ステップＳ４３でレーザダイオードは、クリーム半田に適した露光量（２ｍｓ間露光）点灯されるところが相違している。このライン光の像は、図１０で１１３ａ、１１３ｂに示したような像になる。この場合、右側に突出した輝度の高い像がクリーム半田部１１３ａであり、その間の輝度の低い直線部分が配線基板のレジスト面ないしパッド面１１３ｂである。
【００５０】
ステップＳ４７で演算される重心位置、すなわちクリーム半田の高さデータは図１１に示したごとくになり、この高さデータがステップＳ４８でメモリ１００に格納される。この高さデータは第１の基準位置の高さが「０」として処理されている。しかし、実際には、上記「０」としたレジスト面の高さはクリーム半田の印刷されたレジスト面ではない。従って、両レジスト面の高さの差に相当するステップＳ２９で求めた第１基準線と第２基準線での高さデータの差Δｘ（４４μｍ）で両レジスト面の高さの差に応じてクリーム半田部の高さを補正する（ステップＳ４９）。これが図１２に図示されており、クリーム半田の平均高さが１０３μｍとなっている。
【００５１】
予め別の計測器にて測定したクリーム半田の平均高さが１０２μｍであったので、上記方法によってクリーム半田部の高さが正確であることが確認できた。平行度の取得と、クリーム半田部の高さ取得時に、各ライン光の間隔を２．７２ｍｍと一致させたが、これは説明の便宜上であり、平行度は直線近似を行うことにより、投光の位置と間隔が既知であれば、任意の位置と間隔で投光し、計算することができる。
【００５２】
このように、上記方法では、クリーム半田の印刷されるレジスト面と別のレジスト面を基準にクリーム半田の高さを測定するようにし、両レジスト面の高さに差がある場合には、それを補正してクリーム半田の高さを測定している。この場合、それぞれレジスト面並びにクリーム半田に適した露光量でライン光を投光することができ、鮮明なレジスト面並びにクリーム半田の光切断像が得られるので、精度のよいクリーム半田の高さ測定が可能になる。
【００５３】
なお、上述した例では、レジスト面及びクリーム半田部は、ライン光の投光時間を変えてそれぞれに適した露光量で撮像されたが、ライン光の強さ、あるいはＣＣＤカメラの撮像感度を変化させることによりそれぞれ適した露光量で撮像するようにしてもよい。
【００５４】
［表計算ソフトを用いた高さデータの測定］
また、上述した実施形態では、Ｖ−ＲＡＭ画像メモリ４０の画像データは、図４に示す回路構成で画像処理されたが、Ｖ−ＲＡＭ画像メモリ４０の画像データを表計算ソフトに取り込んで行なうこともできる。Ｖ−ＲＡＭ画像メモリ４０の画像データは、横６４０画素×縦４８０画素のビットマップ画像であるので、これを各画素を２５６階調の階調データに変換した後、６４０列×４８０行のセルの表計算ソフトに取り込む。画素間の分解能は１０μｍであるので、表計算ソフトに読み込んだ場合は前記画素がセルに相当することから、セル間のピッチは１０μｍとなる。ただし、実際の表計算ソフトは最大列数が２５６列という機能上の制約が有るので、２００列×４８０行の階調データを取り込んで処理を行う。
【００５５】
まず、取込んだ階調データは３×３のセル毎に取り出されて、階調の平坦度を調べてフィルタ処理が行なわれる。３×３のセルの中心のセルを注目セルとし、その周りの階調の平坦度を計算する。注目セル周囲のセル間差の絶対値の平均値を求める。列をＡ、Ｂ、Ｃ・・・・、行を１、２、３・・・・として、例えば、注目セルをＢ２として、数１に従い平坦度Ｆを算出する（図４の演算回路６３による演算に対応）。次に３×３のセルの中の階調の最大値と階調の最小値の差ΔＢに対する比を求め（演算回路６５に対応）、Ｆ／ΔＢがしきい値より小さい時（比較器６６に対応）に注目セルに対して、数２の帯域除去フィルタ（フィルタ回路６８に対応）をかける。もしΔＢ＝０の時またはＦ／ΔＢがしきい値より大きい時は何もしない。次に注目セルをＢ３に移し以上の処理を実行し、Ｂ４、Ｂ５・・・・と処理をする。そして次の行に移行してＣ２、Ｃ３・・・のように順次処理を行う。
【００５６】
以上のように階調データのフィルタ処理が終わると、次の二値化処理に移る。各行の階調の平均値と標準偏差を計算する（演算回路７１、７２に対応）。そして各セル毎にそのセルの階調データがその行の階調の平均値＋１．５×標準偏差より大きい時（比較器７５に対応）は現在のセルの値を１に書換え、以下の時は現在のセルの値を消去する。セルＡ１、Ｂ１、Ｃ１・・・に対しては１行目の平均値と標準偏差を用い、セルＡ２、Ｂ２、Ｃ２・・・に対しては２行目の平均値と標準偏差を用いる。各セルは１か空白の状態になる。
【００５７】
このように各セルの値が二値化されたあと、小突起データ並びに孤立データはノイズと考えられるので、ノイズ除去のためにこれらのデータの消去処理を行う。すなわち、図８に示す様なａ〜ｆのフィルタ処理を行う。３×３の中心のセルを注目セルとして、図８のパターンが現れた時、その注目セルの値を消去する。ｆ以外の５種類のフィルタは、９０度づつ回転させて実行する（ノイズ除去処理回路８３に対応）。
【００５８】
次は各行を参照して、全て空白の場合は上下の行の数値１のセルの配列を参照して、穴埋めを行う（判定回路８７に対応）。次に、各行の数値１のセルに対して重心値を計算する。これは、図１３に示すように、列Ａ、Ｂ、Ｃ・・・に対しては、１、２、３・・・と連番を付けるとこの数値が重心の値となる（重心位置演算回路９６に対応）。この例では１、２行目に関してはＩ列、Ｊ列のセルの値が１であり、Ｉ列の番号は９、Ｊ列の番号は１０なので、１、２行目の重心値は９．５となる。また３、４、５行目に関してはＩ列、Ｈ列、Ｇ列のセルが１であり、各行の重心値は各列に付された番号と同じ値の９、８、７となる。以下同様にして各行の重心値を求める。
【００５９】
このように、図４の各処理ブロック６０、７０、８０、９０をソフトウェアで処理することもできる。
【図面の簡単な説明】
【００６０】
【図１】本発明に用いられる高さ測定装置の構成を示す斜視図である。
【図２】図１の高さ測定装置の側面図である。
【図３】ライン光を投光して得られる像から画像データを取得する回路構成を示した回路図である。
【図４】取得された画像データを処理する回路構成を示した回路図である。
【図５】クリーム半田を印刷する前に２つのライン光を投光した場合に得られる画像の処理の流れを示したフローチャート図である。
【図６】クリーム半田を印刷した後に２つのライン光を投光した場合に得られる画像の処理の流れを示したフローチャート図である。
【図７】クリーム半田を印刷する前に２つのライン光を投光した場合に得られる画像を示した説明図である。
【図８】画像データのフィルタ処理に用いられるフィルタデータを示す説明図である。
【図９】クリーム半田を印刷する前に２つのライン光を投光した場合に得られる画像データから求めた平坦部の高さを示す線図である。
【図１０】クリーム半田を印刷した後に２つのライン光を投光した場合に得られる画像を示した説明図である。
【図１１】クリーム半田部分の画像データから求めたクリーム半田の高さを示す線図である。
【図１２】補正したクリーム半田の高さデータを示す線図である。
【図１３】画素あるいはセルの情報から重心値を求めるための例を示した説明図である。
【図１４】従来の三次元測定装置の構成を示した斜視図である。
【符号の説明】
【００６１】
１  レーザ光源
５  ラインジェネレータ
６  ＣＣＤカメラ
９  ライン光
【図１】
2007101565.tif 000005
【図２】
2007101565.tif 000006
【図３】
2007101565.tif 000007
【図４】
2007101565.tif 000008
【図５】
2007101565.tif 000009
【図６】
2007101565.tif 000010
【図７】
2007101565.tif 000011
【図８】
2007101565.tif 000012
【図９】
2007101565.tif 000013
【図１０】
2007101565.tif 000014
【図１１】
2007101565.tif 000015
【図１２】
2007101565.tif 000016
【図１３】
2007101565.tif 000017
【図１４】
2007101565.tif 000018