以下、本発明の好ましい実施形態について図面を参照して説明する。なお、ここではX線検査装置に基づいて説明するが、後述するように、AOI方式等、その他の方式の検査装置でも同様である。図1に示すように、本実施形態に係る検査装置1は、パーソナルコンピュータ(PC)等の処理装置で構成される制御部10、モニタ12、及び、撮像部32を有して構成されている。また、撮像部32は、更に、線質変更部14、放射線発生器駆動部16、基板保持部駆動部18、検出器駆動部20、放射線発生器22、基板保持部24、及び、検出器26を有している。
放射線発生器22は、X線等の放射線を発生させる装置(線源)であり、例えば加速させた電子をタングステンやダイアモンド等のターゲットに衝突させることで放射線を発生するものである。本実施形態における放射線は、X線の場合について説明するが、これに限定されるものではない。例えば、放射線は、アルファ線、ベータ線、ガンマ線、紫外線、可視光、赤外線でもよい。また、放射線は、マイクロ波やテラヘルツ波でもよい。この放射線発生器22は、被検査体に光(放射線)を照射する光源(線源)としての機能を有している。
基板保持部24は、被検査体である基板を保持する。基板保持部24に保持された基板に放射線発生器22で発生させた放射線を照射し、基板を透過した放射線を検出器26で画像として撮像する。以下、検出器26で撮像された基板の放射線透過画像を「透過画像」と呼ぶ。なお、後述するように、本実施形態においては、基板を保持した基板保持部24と検出器26とを放射線発生器22に対して相対移動させて複数の透過画像を取得して、再構成画像を生成する。
検出器26で撮像された透過画像は、制御部10に送られ、例えば、フィルター補正逆投影法(Filtered-Back Projection法(FBP法))等の既知の技術を用いて、接合部分のはんだの立体形状を含む画像に再構成される。そして、再構成された画像や透過画像は、制御部10内のストレージや、図示しない外部のストレージに記憶される。以下、透過画像に基づいて接合部分のはんだの立体形状を含む3次元画像に再構成された画像を「再構成画像」と呼ぶ。また、再構成画像から任意の断面を切り出した画像を「断面画像」と呼ぶ。このような再構成画像及び断面画像はモニタ12に出力される。なお、モニタ12には再構成画像や断面画像のみならず、後述するはんだの接合状態の検査結果等も表示される。また、本実施形態における再構成画像は、上述したように、検出器26で撮像された平面画像から再構成されるため「プラナーCT」とも呼ぶ。
線質変更部14は、放射線発生器22で発生される放射線の線質を変更する。放射線の線質は、ターゲットに衝突させる電子を加速するために印加する電圧(以下「管電圧」と呼ぶ)や、電子の数を決定する電流(以下「管電流」と呼ぶ)によって定まる。線質変更部14は、これら管電圧と管電流とを制御する装置である。この線質変更部14は変圧器や整流器等、既知の技術を用いて実現できる。
ここで、放射線の線質は、放射線の輝度と硬さ(放射線のスペクトル分布)とで定まる。管電流を大きくすればターゲットに衝突する電子の数が増え、発生する放射線の光子の数も増える。その結果、放射線の輝度が大きくなる。例えば、コンデンサ等の部品の中には他の部品と比較して厚みがあるものもあり、これらの部品の透過画像を撮像するには輝度の大きな放射線を照射する必要がある。このような場合に管電流を調整することで放射線の輝度を調整する。また、管電圧を高くすると、ターゲットに衝突する電子のエネルギーが大きくなり、発生する放射線のエネルギー(スペクトル)が大きくなる。一般に、放射線のエネルギーが大きいほど物質の貫通力が大きくなり、物質に吸収されにくくなる。そのような放射線を用いて撮像した透過画像はコントラストが低くなる。このため、管電圧は透過画像のコントラストを調整するのに利用できる。
放射線発生器駆動部16は、図示しないモータ等の駆動機構を有しており、放射線発生器22をその焦点を通る軸(この軸の方向を「Z軸方向」とする)に沿って上下に移動させることができる。これにより放射線発生器22と基板保持部24に保持される被検査体(基板)との距離を変えて照射野を変更し、検出器26で撮像される透過画像の拡大率を変更することが可能となる。なお、放射線発生器22のZ軸方向の位置は、発生器位置検出部23により検出され、制御部10に出力される。
検出器駆動部20も図示しないモータ等の駆動機構を有しており、検出器回転軌道30に沿って検出器26を回転移動させる。また、基板保持部駆動部18も図示しないモータ等の駆動機構を有しており、基板回転軌道28が設けられた平面上を、基板保持部24を平行移動させる。また、基板保持部24は、検出器26の回転移動と連動して、基板回転軌道28上を回転移動する構成となっている。これにより、基板保持部24が保持する基板と放射線発生器22との相対的な位置関係を変更させながら、投射方向及び投射角度が異なる複数の透過画像を撮像することが可能となる。
ここで、基板回転軌道28と検出器回転軌道30との回転半径は固定ではなく、自由に変更できる構成となっている。これにより、基板に配置される部品に照射する放射線の照射角度を任意に変更することが可能となる。なお、基板回転軌道28及び検出器回転軌道30の軌道面は、上述したZ軸方向と直交しており、この軌道面において直交する方向をX軸方向及びY軸方向とすると、基板保持部24のX軸方向及びY軸方向の位置は、基板位置検出部29で検出されて制御部10に出力され、検出器26のX軸方向及びY軸方向の位置は、検出器位置検出部31で検出されて制御部10に出力される。
制御部10は、上述した検査装置1の全動作を制御する。以下、制御部10の諸機能について図2を用いて説明する。なお、図示されていないが、制御部10には、上述したモニタ12に加えて、キーボードおよびマウスなどの入力装置が接続されており、これらのモニタやキーボード・マウス等は、検査装置1のユーザインタフェースを構成している。
制御部10は、記憶部34、撮像処理部35、断面画像生成部36、学習処理部37、基板検査面検出部38、疑似断面画像生成部40、及び検査部42を含む。なお、図示しないが制御部10は線質変更部14、放射線発生器駆動部16、基板保持部駆動部18、及び検出器駆動部20の作動を制御する撮像制御部も含む。また、これらの各機能ブロックは、各種演算処理を実行するCPU、データの格納やプログラム実行のためのワークエリアとして利用されるRAMなどのハードウェア、およびソフトウェアの連携によって実現される。したがって、これらの機能ブロックはハードウェアおよびソフトウェアの組み合わせによって様々な形で実現することができる。
記憶部34は、基板の透過画像を撮像するための撮像条件や、被検査体である基板の設計等の情報を記憶する。記憶部34はまた、基板の透過画像や再構成画像(断面画像、疑似断面画像)、及び後述する検査部42の検査結果等を記憶する。また、詳細は後述するが、記憶部34は、学習処理部37により作成または更新されたAIモデルを記憶する。記憶部34はさらに、放射線発生器駆動部16が放射線発生器22を駆動する速度、基板保持部駆動部18が基板保持部24を駆動する速度および検出器駆動部20が検出器26を駆動する速度も格納されている。
撮像処理部35は、放射線発生器駆動部16、基板保持部駆動部18及び検出器駆動部20により、放射線発生器22、基板保持部24及び検出器26を駆動させて、基板保持部24により保持された被検査体の透過画像を撮像し、透過画像から再構成画像を生成する。この撮像処理部35による透過画像の撮像及び再構成画像の生成方法については、後述する。
断面画像生成部36は、記憶部34から取得した複数の透過画像に基づいて、断面画像を生成する。これは、例えばFBP法や最尤推定法等、既知の技術を用いて実現できる。再構成アルゴリズムが異なると、得られる再構成画像の性質や再構成に要する時間も異なる。そこで、あらかじめ複数の再構成アルゴリズムやアルゴリズムに用いられるパラメータを用意しておき、ユーザに選択させる構成としてもよい。これにより、再構成に要する時間が短くなることを優先したり、時間はかかっても画質の良さを優先したりするなどの選択の自由度をユーザに提供することができる。生成した断面画像は記憶部34に出力し、この記憶部34に記録される。なお、上述した撮像処理部35は、記憶部34に記憶されているAIモデルを用いて透過画像又は断面画像を補正することも可能である。透過画像又は断面画像の補正方法については後述する。
基板検査面検出部38は、断面画像生成部36が生成した複数の断面画像の中から、基板上の検査の対象となる面(例えば、基板の表面)を映し出している位置(断面画像)を特定する。以後、基板の検査面を映し出している断面画像を「検査面画像」という。検査面画像の検出方法についての詳細は後述する。
疑似断面画像生成部40は、断面画像生成部36が生成した断面画像について、連続する所定枚数の断面画像を積み上げることにより、断面画像よりも厚い基板の領域を画像化する。積み上げる断面画像の枚数は、断面画像が映し出す基板の領域の厚さ(以後、「スライス厚」という。)と、疑似断面画像のスライス厚とによって定める。例えば、断面画像のスライス厚が50μmで、疑似断面画像としてBGAのはんだボール(以後単に「はんだ」という。)の高さ(例えば500μm)をスライス厚としようとするならば、500/50=10枚の断面画像を積み上げればよい。この際、はんだの位置を特定するために、基板検査面検出部38が特定した検査面画像が用いられる。
検査部42は、断面画像生成部36が生成した断面画像、基板検査面検出部38が特定した検査面画像、及び疑似断面画像生成部40が生成した疑似断面画像に基づいて、はんだの接合状態を検査する。基板と部品とを接合するはんだは基板検査面付近にあるので、検査面画像及び検査面画像に対して放射線発生器22側の領域を映し出している断面画像を検査することで、はんだが基板と部品とを適切に接合しているか否かが判断できる。
ここで、「はんだの接合状態」とは、基板と部品とがはんだにより接合し、適切な導電経路が生成されているか否かのことをいう。はんだの接合状態の検査には、ブリッジ検査、溶融状態検査、及びボイド検査が含まれる。「ブリッジ(bridge)」とは、はんだが接合することにより生じた導体間の好ましくない導電経路のことをいう。また、「溶融状態」とは、はんだの溶融不足により、基板と部品との間の接合が不足しているか否かの状態、いわゆる「浮き」か否かの状態をいう。「ボイド(void)」とは、はんだ接合部内の気泡によるはんだ接合の不具合のことをいう。したがって検査部42は、ブリッジ検査部44、溶融状態検査部46、及びボイド検査部48を含む。
ブリッジ検査部44、溶融状態検査部46、及びボイド検査部48の動作の詳細は後述するが、ブリッジ検査部44およびボイド検査部48は、疑似断面画像生成部40が生成した疑似断面画像に基づいてそれぞれブリッジおよびボイドの検査をし、溶融状態検査部46は基板検査面検出部38が特定した検査面画像に基づいてはんだの溶融状態を検査する。なお、ブリッジ検査部44、溶融状態検査部46、及びボイド検査部48における検査結果は記憶部34に記録される。
図3は透過画像の撮像及び再構成画像の生成、及び、検査面画像の特定から、はんだの接合状態を検査するまでの流れを示したフローチャートである。また、図4は透過画像の撮像及び再構成画像の生成の処理の部分の流れを示したフローチャートである。本フローチャートにおける処理は、例えば、制御部10が図示しない入力装置から検査開始の指示を受け付けたときに開始する。
制御部10は、図3に示すように、検査対象物(被検査体)が検査装置内に搬入されると(ステップS100)、放射線発生器駆動部16により放射線発生器22により放射される放射線の照射野を設定し、基板保持部駆動部18により基板保持部24を移動させるとともに、検出器駆動部20により検出器26を移動させて撮像位置を変更しながら、線質変更部14により放射線発生器22の線質を設定して放射線を基板に照射して透過画像を撮像し、さらに、このようにして撮像された複数枚の透過画像から、断面画像生成部36及び疑似断面画像生成部40により再構成画像(断面画像・疑似断面画像)を生成する(ステップS120)。なお、透過画像を撮像する際の、基板保持部駆動部18による基板保持部24の移動経路、及び、検出器駆動部20による検出器26の移動経路は、記憶部34に記憶させた情報を読み込む方法や、入力装置から入力する方法により、予め基板保持駆動部18及び検出器駆動部20に設定されているものとする。また、放射線発生器22のZ軸方向の位置も、同様の方法により予め設定されているものとする。
このステップS120の処理の詳細を図4及び図5を用いて説明する。図4に示すように、制御部10の撮像処理部35は、ステップS120が開始されると、基板保持部駆動部18及び検出器駆動部20に出力される作動信号をオンにする(ステップS1000)。図5(a)における時刻t0に相当する。この作動信号がオンとなると、基板保持部駆動18は、基板保持部24の移動を開始させ(ステップS1002)、検出器駆動部20は、検出器26の移動を開始させる(ステップS1004)。基板保持部24及び検出器26は、上述したように予め設定されている移動経路に沿って移動される。
撮像処理部35は、撮像タイミングか否かを判断し(ステップS1006)、撮像タイミングでないと判断した場合(ステップS1006の「N」)、所定の時間をおいて再度このステップを繰り返し、撮像タイミングであると判断した場合(ステップS1006の「Y」)、撮像開始信号(トリガー)を検出器26に送信する(ステップS1008)。例えば、図5(a)の例では時刻t1に検出器26に対するトリガーをオンにする。
撮像処理部35によりトリガーがオンされたことを検出した検出器26は、透過画像の撮像を開始するとともに、撮像を開始したことを示す応答信号を撮像処理部35に送信する(ステップS1010)。また、検出器26は、放射線発生器駆動部16に露光信号を送信する(ステップS1012)。例えば、図5(a)の例では時刻t2から時間Tの間、放射線発生器駆動部16に出力する露光信号をオンにする。このように、検出器26から放射線発生器駆動部16に露光信号を送信するように構成すると、撮像開始から露光開始までの遅延を限りなく小さくすることができる。
検出器26から露光信号を受信した放射線発生器駆動部16は、露光信号がオンの間、放射線発生器22から放射線を発生させ、この放射線が被検査体に照射される(ステップS1014)。ここで、検出器26がローリングシャッター方式を採用している場合、この検出器26の受光素子で検出されたX線の情報(強度等)は、所定の方向に並ぶ複数の走査ラインに沿って取得されるが、走査ライン毎に開始時刻がずれて取得される。例えば、図5(b)に示すように、検出器26が、左右方向に延びるn本の走査ラインで構成されている場合、上からL1、L2、L3、・・・、Ln-1、Lnの順で開始時刻がずれて検出された情報が取得される。そのため、全ての走査ラインがデータを取得している時間(図5(b)の場合時間Tの間)に、放射線発生器22からX線を発生させることにより、各走査ラインから得られる情報は、同じ時間に照射されたX線による情報となるため、取得された透過画像の歪みを防止することができる。
また、検出器26から送信された応答信号を受信した撮像処理部35は、基板位置検出部29から基板保持部24の位置情報を取得し、検出器位置検出部31から検出器26の位置を取得して記憶する(ステップS1016)。なお、基板保持駆動部18による基板保持部24の移動と、検出器駆動部20による検出器26の移動は、上述したように予め決められた移動経路に沿って制御されるため、基板保持部24の位置及び検出器26の位置のいずれか一方が分かれば他方の位置も分かるため、基板保持部24及び検出器26の両方の位置を記憶しても良いし、いずれか一方の位置を記憶してもよい。また、基板保持部24及び検出器26の位置は、上述したXY直交座標系(X軸方向及びY軸方向の位置(x,y)の形式)で記憶しても良いし、基板回転軌道28及び検出器回転軌道30の軌道面の中心を原点として極座標系(原点からの距離rと、角度θで特定する位置(r,θ)の形式)で記憶してもよい。
以上のようにして、透過画像の撮像が終了すると、検出器26は、撮像された透過画像を撮像処理部35に送信する(ステップS1018)。そして、この透過画像を取得した撮像処理部35は、ステップS1016で取得した基板保持部24の位置情報及び検出器26の位置情報と取得した透過画像とを対応付けて記憶部34に記憶する(ステップS1020)。
また、撮像処理部35は、次の撮像位置があるか否かを判断し(ステップS1022)、次の撮像位置があると判断した場合(ステップS1022の「Y」)、ステップS1006に戻って上述した処理(ステップS1006~S1020)を繰り返す。一方、撮像処理部35は、次の撮像位置がないと判断した場合(ステップS1022の「N」)、基板保持部駆動部18及び検出器駆動部20に出力される作動信号をオフにし(ステップS1024)、作動信号がオフになったことを検出した基板保持部駆動部18は基板保持部24の移動を停止させ(ステップS1026)、検出器駆動部20は検出器26の移動を停止させる(ステップS1028)。例えば、図5(a)の時刻t3に相当する。
最後に、撮像処理部35は、断面画像生成部36及び疑似断面画像生成部40により、記憶部34に記憶されている透過画像から再構成画像を生成する(ステップS1030)。生成された再構成画像は、記憶部34に記憶してもよい。
次に、図3に戻り、制御部10は、予め設定された情報に基づき、被検査体の自動検査を実施する(ステップS140)。具体的には、制御部10の基板検査面検出部38は、断面画像生成部36から透過画像または再構成画像(断面画像)を受け取り、その中から検査面画像を特定する(ステップS141)。ブリッジ検査部44は、疑似断面画像生成部40からはんだボールを映し出しているはんだボールと同程度のスライス厚の疑似断面画像を取得し、ブリッジの有無を検査する(ステップS142)。ブリッジを検出しない場合には(ステップS143の「N」)、溶融状態検査部46は基板検査面検出部38から検査面画像を取得し、はんだが溶融しているか否かを検査する(ステップS144)。はんだが溶融している場合には(ステップS145の「Y」)、ボイド検査部48は疑似断面画像生成部40からはんだボールを部分的に映し出している疑似断面画像を取得し、ボイドが存在するか否かを検査する(ステップS146)。ボイドが見つからない場合には(ステップS147の「N」)、ボイド検査部48は、はんだの接合状態は正常と判断し(ステップS148)、その旨を記憶部34に出力する。また、ブリッジを検出した場合(ステップS143の「Y」)、はんだが溶融していない場合(ステップS145の「N」)、またはボイドが存在する場合(ステップS147の「Y」)には、それぞれブリッジ検査部44、溶融状態検査部46、およびボイド検査部48ははんだの接合状態は異常と判断して(ステップS149)その旨を記憶部34に出力する。はんだの状態が記憶部34に出力されると、自動検査の処理を終了する。
最後に、制御部10は、検査結果をモニタ12等に出力し(ステップS160)、検査対象物(被検査体)を搬出して(ステップS180)、本フローチャートによる検査を終了する(若しくは、次の被検査体の上述した処理による検査を開始する)。
以上の方法によると、透過画像が撮像された位置は、撮像処理部35が検出器20にトリガーを送信した時刻の情報ではなく、検出器26が画像の取得の開始した時刻(検出器26から応答信号を受信した時刻)の情報となる。放射線発生器22と基板保持部24及び検出器26との相対位置を変化させている状態(基板保持部24及び検出器26が移動しつづけている状態)の場合、撮像処理部35がトリガーを送信してから検出器26が画像の取得を開始するまでは遅延が発生するため、トリガーが送信された時刻の基板保持部24及び検出器26の位置は、実際に透過画像が撮像される位置とずれている可能性がある。そのため、上述したように、検出器26が画像の取得を開始し、そのときに検出器26から送信される応答信号を撮像処理部35が受信したときに、基板保持部24及び検出器26の位置を取得することにより、正確な位置情報を取得することができ、これにより再構成画像の精度を向上させることができる。また、基板保持部駆動部18による基板保持部24の移動経路、及び、検出器駆動部20による検出器26の移動経路は、駆動部の特性等により、予め指定した位置からずれる場合があるが、上述したように、これらの位置は基板位置検出部29及び検出器位置検出部31により検出された位置であるため、正確な位置情報を取得することができ、再構成画像の精度をさらに構成させることができる。
なお、基板保持部24及び検出器26の位置情報及び透過画像は、制御部10の記憶領域(メモリやハードディスク等)のうち、所定の領域を循環的に使用して記憶する方式(所定の領域の先頭から順次情報を記憶し、所定の領域の最後に情報を記憶したときは、所定の領域の先頭に戻って記憶させる方式)を採用することより、記憶領域を効率よく利用することができる。
また、検出器26がローリングシャッター方式により透過画像を撮像している場合、放射線発生器22と基板保持部24及び検出器26との相対位置を変化させている状態で透過画像を取得すると画像が歪む場合があるが、上述したように、放射線発生器22から放射されるX線のオン/オフを(露光信号のオン/オフ)を検出器26のローリングシャッターの信号(応答信号)に同期させることにより、歪みのない透過画像を取得することができる。
既に説明したように、以上のような構成の検査装置1において、検査時間の短縮や被検査体に照射される放射線の量を少なくするためには、検査時の被検査体の撮像時間を短くする、若しくは、照射される放射線を弱くする必要がある。撮像時間を短くするためには、露光時間(放射線の照射時間)を短くする、FOVを広くする、或いは再構成画像の生成に用いる透過画像の枚数を減らす方法が考えられる。しかし、このような方法で撮像時間を短くしたり、照射される放射線を弱くしたりすると、透過画像や、透過画像から生成された再構成画像から切り出される断面画像のノイズが増加し、或いは、解像度が低くなり、結果として、これらの画像を用いた検査の精度が低下する可能性がある。
本実施形態に係る検査装置1は、透過画像または断面画像からノイズを除去するため、また、これらの画像を高解像度化するために、AIモデルを使って補正するように構成されている。すなわち、検査のために撮像した画像(透過画像又は断面画像)を入力画像とし、この入力画像に対してAIモデルを適用することで、AIで補正された画像が出力画像として得られる。以下に、AIモデルを使った補正の方法について説明する。
本実施形態に係る補正方法は、予め、検査装置1で撮像された被検査体の画像(透過画像又は断面画像)を教師用データ及び学習用データとして用いて深層学習(Deep learning)等の機械学習(以降の説明では「AI学習」と呼ぶ)を行ってAIモデルを生成し、検査では、生成されたAIモデルを使って透過画像又は断面画像を補正するように構成されている。まず、図6~図9を用いてAI学習(深層学習)の処理について説明する。なお、以降の説明において、「教師用画像」とは、十分な露光時間や放射線の線質(放射線の輝度と硬さ)で撮像されたノイズが少ない被検査体の画像、若しくは、十分な解像度(検査において所定の検査精度を得ることができる解像度)である被検査体の画像を示し、また、「学習用画像」とは、実際の検査において設定される露光時間や放射線の線質、又は解像度で撮像された、ノイズが含まれる、若しくは低い解像度の被検査体の画像を示すものとする。
また、本実施形態に係る検査装置1では、AIモデルを使った補正の対象が透過画像の場合と断面画像の場合がある。さらに、補正対象がノイズを減少させる場合と、解像度を高くする場合とがあるが、ここでは、ノイズを減少させる場合について説明する。
また、本実施形態に係る検査装置1では、透過画像若しくは断面画像の全体領域Ra(例えば、2000×2000ピクセル程度の領域)を複数の部分領域Rs(例えば、256×256ピクセルの領域)に分割し、各々の部分領域Rsに対して(教師用画像及び学習用画像の同じ位置の部分領域Rsを用いて)学習または補正を行うように構成されている。また、AI学習の処理では、図7に示すように、画像の全体領域Raのうち、3/4の領域を学習のために使用し、残りの1/4の領域を検証(性能評価)のために使用する。なお、図7に示す検証用の領域及び学習用の領域の配置は一例であり、任意の部分領域Rsを検証用又は学習用に割り当てることが可能である。また、1枚の画像における検証用の領域と学習用の領域の割合も、3/4及び1/4の組合せに限定されることはなく、適宜設定することができる。
また、既に説明したように、被検査体の検査においては、放射線発生器22と、被検査体が載置された基板保持部24及び検出器26との相対位置を変化させて複数の透過画像を撮像するため、1つのFOVに対して、数十枚から数百枚の透過画像(教師用画像及び学習用画像の組)が得られるため、透過画像を補正するためのAIモデルを生成する場合は、これら複数枚の透過画像を用いて学習が行われる。また、これらの透過画像から再構成画像が生成され(教師用画像の透過画像から教師用画像の再構成画像が生成され、学習用画像の透過画像から学習用画像の再構成画像が生成される)、この再構成画像から数百枚の断面画像(教師用画像及び学習用画像の組)が得られるため、断面画像を補正するためのAIモデルを生成する場合は、これら複数枚の断面画像を用いて学習が行われる。
学習を開始する前に、検査装置1の基板保持部24に学習対象の被検査体を載置する。また、入力装置等により、被検査体上のどの部分で学習するか、すなわち、学習の対象となるFOV(撮像エリア)を入力する。また、入力装置等により、教師用画像の撮像条件(線質・露光時間・倍率等)や学習用画像の撮像条件を入力する。さらに、出力されるAIモデルの対象として、透過画像と断面画像の何れかが入力される。
そして、入力装置等により学習処理の開始が指示されると、図6に示すように、制御部10の学習処理部37は、撮像処理部35を介してFOVを配置する、すなわち、被検査体上の撮像エリアを設定する(ステップS200)。
学習処理部37は、ステップS200でFOVが配置されると、撮像処理部35を介して、予め入力されている露光時間、放射線の線質、倍率等で教師用画像(透過画像)を撮像して記憶部34に記憶し(ステップS202)、同様に、予め入力されている露光時間、放射線の線質、倍率等で学習用画像(透過画像)を撮像して記憶部34に記憶する(ステップS204)。なお、上述したように、1つのFOVに対しては、放射線発生器22と、被検査体が載置された基板保持部24及び検出器26との相対位置を変化させて複数の透過画像が撮像されるため、基板保持部24及び検出器26を移動させ、複数の位置でステップS202及びS204が実行される。また、断面画像を補正するためのAI学習を行う場合は、ステップS202において、撮像された教師用画像(透過画像)から教師用の再構成画像を生成し、さらにその再構成画像から教師用の断面画像を生成して記憶部34に記憶する。同様に、ステップS204において、撮像された学習用画像(透過画像)から学習用の再構成画像を生成し、さらにその再構成画像から学習用の断面画像を生成して記憶部34に記憶する。
次に、学習処理部37は、AI学習の画像セット及び学習パラメータの指定を行う(ステップS206)。ここで、学習パラメータとは、学習の繰り返し回数やネットワーク構造に関連する情報である。この学習パラメータは、予め記憶部34に記憶させておいてもよいし、入力装置等から入力させてもよい。
ステップS206でAI学習の画像セット等が行われると、学習処理部37は、既存AIモデルを使用するか否かを判断する(ステップS208)。補正の際に用いるAIモデルは、FOV毎に、そのFOVに特化したAIモデルとしてもよいし、複数のFOVで同じAIモデルとしてもよい。
ここで、FOV内(画像内)の特定の対象物、例えば、BGA、チップ抵抗、ICのリード部などの部品毎に特化したAIモデルとしてもよいし、はんだ接合部だけに特化したAIモデルとしてもよい。はんだ接合だけに特化することにより、特化した高性能モデルにすることができ、また、上述した処理により検査面画像を特定し、検査面画像及び検査面画像に対して放射線発生器22側の領域を映し出している断面画像を検査することで、AIモデルによる補正を検査すべき領域だけに限定することで処理時間の短縮化を図ることができる。なお、図7に示したように、複数の部分領域Rsに分割しているため、分割された領域(部分領域Rs)毎に特化したAIモデルを作成するように構成してもよい。一方、複数のFOVで同じAIモデルとすることにより、FOVを跨いだ汎用的なAIモデルとすることができる。
したがって、FOVに特化したAIモデルを構築する場合は、既存のAIモデルを使用せずに新規のAIモデルを作成し、複数のFOVで共通のAIモデルを構築する場合は、既存のAIモデルを使用することとなる。また、被検査体の画像が複数の撮像領域(FOV)に分割されて撮像される場合に、一部のFOVにはそのFOVに特化したAIモデルを作成し、一部のFOVには共通したAIモデルを作成するように構成してもよい。なお、既存AIモデルの使用の可否についても、予め記憶部34に記憶させておいてもよいし、入力装置から入力させてもよい。既存のAIモデルを使用しない場合には(ステップS208の「N」)、学習処理部37は新規のAIモデルを作成し(ステップS210)、既存のAIモデルを使用する場合には(ステップS208の「Y」)、学習処理部37は記憶部34から既存のAIモデルを読み込む(ステップS212)。なお、AIモデルを記憶部34に記憶する際には、AIモデル毎に対応するFOVの情報も管理される。
さらに、学習処理部37は、教師用画像及び学習用画像を用いて上述したAI学習を行う(ステップS214)。図7を用いて説明したように、分割した部分領域Rsのうち、学習用の部分領域Rsのそれぞれに対してAI学習が行われる。AI学習は、深層学習等の手法により、学習用画像(透過画像の場合と断面画像の場合がある)を入力して、教師用画像(学習用画像と同様に、透過画像の場合と断面画像の場合がある)に近い画像になるようにAIモデルを訓練する。そして、学習処理部37は、AI学習の結果に基づいてAIモデルを更新する(ステップS216)。また、学習処理部37は、学習の進捗状況をモニタ12に表示するように構成してもよく、学習の進捗状況を表示している場合は、その表示を更新する(ステップS218)。進捗状況には、AIモデルの性能評価が含まれる。
AIモデルの性能評価は損失(Loss)を計算することで行う。AI学習により訓練したAIモデルを学習用と検証用のそれぞれの画像(入力画像)に適用し、補正された画像(高画質の出力画像)を生成する。この生成した出力画像と教師用画像との評価値の差(例えば、輝度値の平均二乗誤差)を取ることで損失が計算される。ここで損失は、教師用画像とAIモデルにより補正された画像との差が、失われた又は損なわれた質(或いは、復元できなかった質)である。したがって、損失の表現には、上述したように単純に輝度値を比べてもよいし、それ以外にも、エッジ部分を強調して比べたり、周波数成分で比べたりしてもよい。そのため、損失は、上記の方針にしたがって決定された損失関数を定義し、この損失関数に基づいて算出される。
図8は、学習用画像にAIモデルを適用した画像の損失(出力画像であって、図8においては「学習」として示す)と、性能評価を行った損失(図8においては「評価」として示す)とを、エポック数(学習の繰り返し回数)に対応させて示したグラフである。出力画像の損失が小さいにもかかわらず、性能評価の損失が大きくなると(図8の破線)、過学習(過剰に学習データに特化し、汎用性のないAIモデルが生成される状態)が起っているものと考えられる。一方、出力画像及び性能評価の損失が何れも小さくなってくると、学習が正常に進んでいると考えられる。図9において、(a)は入力画像(学習用画像)であり、(b)はこの入力画像にAIモデルを適用して補正した出力画像である。学習が正常に行われていると、出力画像は(c)の教師用画像に近い画像になるが、過学習の状態では、(d)のような異常な状態の画像となる。なお、異常な状態とは、輝度値が大きく異なる部分がある状態や、撮像物の形状が本来の形状から大きく異なる状態のことである。
以上より、ステップS218において、学習の進捗状況をモニタ12等に表示する際に、図8に示す損失のグラフや、図9に示す、入力画像、出力画像、教師用画像を並べて表示することにより、学習の状況を目視により確認することができる。上述したように、損失のグラフにおいて、出力画像の損失に対して性能評価の損失が大きくなっているときや、出力画像と教師用画像とが大きく異なるときは、異常な学習である(過学習である)と判断することができ、学習を中断することで異常な学習(無駄な時間)を少なくすることができる。また、損失が小さくなり、或いは出力画像が教師用画像に近くなったときに学習を終了させることで、学習時間を短縮することができる。なお、学習の進捗状況の表示には、学習を開始してからの経過時間や、学習を終了するまでの残り時間の見込みを表示してもよい。
図6に戻り、学習処理部37は、次の学習を行うか否かを判断する(ステップS220)。未だ学習していない透過画像又は断面画像がある場合、または所定の繰り返し数の学習を終えていない場合(ステップS220の「Y」)、学習処理部37は、ステップS216に戻って上述した処理を繰り返す。一方、未だ学習していない透過画像又は断面画像がない場合、あるいは、入力装置等から学習の終了指示がされた場合(ステップS220の「N」)、学習処理部37は、AIモデルを記憶部34に出力して(ステップS220の「Y」)、AI学習の処理を終了する。なお、上述したように、過学習と判断されて中断された場合(ステップS220の「中断」)、学習処理部37は、AIモデルを出力することなく、AI学習の処理を終了する。
以上の説明は、ノイズを除去する補正のためのAIモデルの学習について説明したが、高解像度化する補正のためのAIモデルの学習の場合には、教師用画像と学習用画像の解像度を変えて取得することが必要である。例えば、図6のステップS202において、教師用画像(透過画像)を取得する際に、実際の検査のときのFOVを四分割し、倍率(拡大率)を高くして撮像し、4枚の画像を1枚の画像にして教師用画像とし、ステップS204で撮像する学習用画像(透過画像)は、実際の検査のときのFOVで撮像する。これにより、高解像度の教師用画像と低解像度の学習用画像を取得することができる。
また、再構成画像を生成するための透過画像の枚数を少なくすることでも、撮像時間の短縮や被曝量の減少に効果がある。透過画像の枚数を少なくすると、再構成画像(断面画像)の解像度が低くなり、検査の精度に影響する可能性がある。そのため、撮像された透過画像から、疑似透過画像を生成して透過画像の枚数を増やすことにより、再構成画像(断面画像)を高解像度化することができる。ここで、疑似透過画像は、撮像された透過画像のうち、隣接する2枚の透過画像からその間の透過画像を生成することにより得ることができる。このような補間をサイノグラムの補間と呼ぶ。
上述したAI学習の処理は、サイノグラムの補間にも適用することができる。サイノグラムの補間のためのAIモデルを生成する場合、図6のステップS202において、教師用画像(透過画像)を取得する。この際、1つのFOVに対する透過画像の枚数は、それらの透過画像から生成される再構成画像(断面画像)の解像度が所定の検査精度を得られる解像度となる枚数とする。そして、ステップS204では、学習用画像(透過画像)を撮像する代わりに、ステップS202で取得した教師用画像から所定の枚数の透過画像を間引いたものを学習用画像とする。例えば、ステップS202で、教師用画像として150枚の透過画像を取得した場合、ステップS204ではその教師用画像(透過画像)から75枚を間引いて残りの75枚を学習用画像(透過画像)とする。
さらに、ステップS214~S220のAI学習の処理においては、学習用画像の隣接する任意の2枚の透過画像からその間の透過画像を生成するためのAIモデルを学習により構築する。例えば、N番目の透過画像を補間する場合、N-1番目の透過画像とN+1番目の透過画像を入力画像とし、この入力画像にAIモデルを適用してN番目の透過画像(疑似透過画像)を出力画像として得るための学習をする。
以上の説明において、AIモデルの補正対象を透過画像にするか断面画像にするか、透過画像又は断面画像からノイズ除去をするか高解像度化するか、サイノグラムの補間を行うか、被検査体の特定の領域(基板表面や特定の部品)の画像の学習を行うか否か、FOV毎のAIモデルを作成するかFOVに共通したAIモデルを作成するか、或いは、教師用画像及び学習用画像の画質や学習の終了条件というような学習の条件等は、モニタ12やキーボード・マウスからなるユーザインタフェースから制御部10に対して設定することができる。また、学習状況の確認や学習処理の終了もこのユーザインタフェースを介して行うことができる。
以上のようにして得られたAIモデルを、検査に適用するときは、図3に示すステップS120において、取得された透過画像又は再構成画像(断面画像)に上述したAIモデルを適用して補正を行う(ノイズを補正する、高解像度化する、サイノグラムの補間をする等)。以下、図10を用いてAIモデルによる透過画像又は再構成画像(断面画像)を補正する処理について説明する。
図10(a)は、AIモデルによる補正を透過画像に適用する場合の処理を示している。制御部10は、検査用の撮像条件で被検査体の透過画像を撮像し(ステップS121a)、撮像された透過画像に対してAIモデルを用いた補正を行う(ステップS122a)。そして、制御部10は、補正された透過画像により再構成画像(断面画像)を生成し(ステップS123a)、透過画像撮影・再構成画像生成処理S120を終了する。
また、図10(b)は、AIモデルによる補正を再構成画像(断面画像)に適用する場合の処理を示している。制御部10は、検査用の撮像条件で被検査体の透過画像を撮像し(ステップS121b)、撮像された透過画像により再構成画像(断面画像)を生成する(ステップS122b)。そして、制御部10は、生成された再構成画像(断面画像)に対してAIモデルを用いた補正を行い(ステップS123b)、透過画像撮影・再構成画像生成処理S120を終了する。
また、図10(c)は、再構成画像(断面画像)のうち、特定された領域の再構成画像(断面画像)のみにAIモデルを適用して補正する場合の処理を示している。制御部10は、検査用の撮像条件で被検査体の透過画像を撮像し(ステップS121c)、撮像された透過画像により再構成画像(断面画像)を生成する(ステップS122c)。そして、制御部10は、生成された再構成画像(断面画像)から、ステップS141で説明した方法等により基板表面(検査面画像)を特定し(ステップS123c)、特定された検査面画像及び検査面画像に対して放射線発生器22側の領域を映し出している断面画像に対してAIモデルを用いた補正を行い(ステップS124c)、透過画像撮影・再構成画像生成処理S120を終了する。
このとき、FOVに特化したAIモデルが作成されている場合は、FOV毎に、そのFOVに対応するAIモデルが適用されて補正が行われる。上述したように、複数のFOVのうち、一部のFOVにはそのFOVに特化したAIモデルを適用し、一部のFOVには共通のAIモデルを適用するように構成してもよい。
以上のように、検査時において、透過画像又は再構成画像(断面画像)に対してAIモデルを用いた補正を行うことにより、照射する放射線を弱くしたり、撮像時間を短くしたりしても、図3の以降の処理において、ノイズが除去された又は高解像度化された再構成画像(断面画像・疑似断面画像)による検査を行うことができ、検査精度を向上させることができる。
このように、本実施形態に係る検査装置においては、AIモデルを用いた補正により、ノイズの除去、高解像度化又はサイノグラムの補間を行っているため、照射する放射線量を弱くする、又は、撮像時間を短くしても、被検査体の良質な画像(透過画像又は断層画像)を取得することができるので、検査精度を向上させることができる。また、検査に係る時間を短くすることができるので、被検査体の全領域を検査しても、全体のスループットを低下させることがない。
ここで、AIモデルの学習は、このAIモデルが搭載される検査装置において、検査対象となる被検査体を撮像した画像を教師用画像及び学習用画像が用いられる。例えば、被検査体が電子基板の場合、様々なタイプのICパッケージが搭載されている(SOJ(Small Outline J-leaded)やBGA(Ball grid array)等)。したがって、上述した方法によると、検査対象となる被検査体そのものを撮像した画像を教師用画像及び学習用画像として用いた学習により、各々の被検査体に特化したAIモデルを構築することができ、検査時の画像(透過画像や断面画像)の画質が向上し、検査精度の向上が期待できる。このような学習のための画像(教師用画像及び学習用画像)は、AIモデルが適用され、このAIモデルを用いて検査時の画像の補正が行われる検査装置で撮像することにより、学習の効果がさらに向上することが期待できる。
なお、教師用画像や学習用画像は検査装置1で取得し、取得された画像を用いて制御部10とは異なる計算機で学習を行い、学習して得られた結果(AIモデル)を制御部10に実装して検査を行うように構成してもよいし、上述したように制御部10で学習を行い、その結果(AIモデル)を用いて検査を行うように構成してもよい。
また、上述したAIモデルの学習方法や、生成されたAIモデルによる画像の補正は、X線検査装置だけでなく、AOI方式の検査装置、具体的には、被検査体の上方に光源及び検出器としてのカメラを配置し、光源からの光(縞パターンを有する照明光等)を被検査体に照射してカメラにより画像を取得する方式の検査装置にも適用することが可能である。このような構成の検査装置の場合、カメラのズームレンズの倍率を変化させたり、画素ずらしの方法を用いたりすることにより解像度の異なる画像を教師用画像及び学習用画像として取得することができる。また、取得した複数の画像に対して平均化を行い1枚の画像を生成することにより、ノイズ量の異なる画像を教師用画像及び学習用画像とすることができる。