以下、添付図面に従って本発明に係る実施形態の一例について説明する。以下では、説明の便宜上、3次元状の被検査対象物がX線CT(Computerized Tomography)により既に撮影されていることを前提として説明する。3次元状の被検査対象物は、X線CTの被写体であり、撮影されて得られた画像に基づく各種検査の対象とされる物体である。各種検査には、例えば、3次元状の被検査対象物における特性の異なる領域の態様の調査が含まれる。ここで言う「特性」とは、例えば、空隙の体積、3次元状の被検査対象物における空隙の占める割合、及び/又は、空隙の形状等を指す。なお、以下では、説明の便宜上、3次元状の被検査対象物を、単に「被検査対象物」とも称する。
被検査対象物がX線CTにより撮影されると、一例として図13に示すように、複数の2次元断層画像TIが得られる。そこで、以下では、説明の便宜上、被検査対象物がX線CTによって撮影されて得られた複数の2次元断層画像TIが電子データとしてPC又はサーバ装置のメモリ(図示省略)に記憶されていることを前提として説明する。なお、PCとは、パーソナル・コンピュータ(Personal Computer)の略称を指す。
ここで、2次元断層画像TIとは、被検査対象物の断層面を示す2次元画像を指す。以下では、説明の便宜上、2次元断層画像TIとして、グレイスケール化された2次元断層画像を例に挙げて説明するが、これに限らず、グレイスケールとは異なる多値化された2次元断層画像であってもよい。
また、以下では、説明の便宜上、一例として図14及び図15に示すように、被検査対象物として、はんだS及び研磨パッドPを例に挙げて説明する。例えば、はんだSは、電子回路基板(図示省略)に対して付着され、研磨パッドPは、半導体ウェハ(図示省略)の研磨に用いられる。
また、以下では、説明の便宜上、はんだSは、特性の異なる領域で区分けされていることを前提として説明する。また、研磨パッドPも、特性の異なる領域で区分けされていることを前提として説明する。また、以下では、説明の便宜上、「特性の異なる領域」として、空隙の領域である空隙領域と空隙でない領域である非空隙領域とを例に挙げて説明する。
図14に示す例では、断面視でのはんだSの態様の一例が示されており、はんだSは、空隙領域S1と非空隙領域S2とに大別される。また、図15に示す例では、断面視での研磨パッドPの態様の一例が示されており、研磨パッドPは、空隙領域P1と非空隙領域P2とに大別される。空隙領域P1は、本発明に係る球状空隙の一例である。なお、以下では、説明の便宜上、空隙領域P1として、球状の気泡を例に挙げて説明する。
また、以下では、説明の便宜上、空隙領域S1,P1を区別して説明する必要がない場合、符号を付さずに「空隙領域」と称し、非空隙領域S2,P2を区別して説明する必要がない場合、符号を付さずに「非空隙領域」と称する。また、以下では、説明の便宜上、はんだS及び研磨パッドPを区別して説明する必要がない場合、「被検査対象物」と称する。また、
一例として図16に示すように、研磨パッドPに含まれる空隙領域P1は、本発明に係る独立球状空隙の一例である独立空隙領域P1Aと、本発明に係る連続球状空隙の一例である連続空隙領域P1Bとに大別される。ここで、独立空隙領域P1Aとは、他の空隙領域P1と連続した位置関係にない空隙領域P1を指す。また、連続空隙領域P1Bとは、他の空隙領域P1と連続した位置関係にない空隙領域P1を指す。
一例として図1に示すように、本実施形態に係る情報処理装置10は、コンピュータ12を備えている。コンピュータ12は、CPU14、一次記憶部16、及び二次記憶部18を有する。
CPU14は、情報処理装置10の全体を制御する。一次記憶部16は、各種プログラムの実行時のワークエリア等として用いられる揮発性メモリである。一次記憶部16の一例としてRAM(Random Access Memory)が挙げられる。二次記憶部18は、情報処理装置10の基本的な動作を制御する制御プログラム(図示省略)、空隙特性導出プログラム20、気泡特性導出プログラム22、及び各種パラメータ等を予め記憶した不揮発性のメモリである。二次記憶部18の一例としては、EEPROM(Electrically Erasable Programmable Read Only Memory)又はフラッシュメモリ等が挙げられる。CPU14、一次記憶部16、及び二次記憶部18は、バスライン24を介して相互に接続されている。
なお、以下では、説明の便宜上、空隙特性導出プログラム20及び気泡特性導出プログラム22を区別して説明する必要がない場合、符号を付さずに単に「プログラム」と称する。
情報処理装置10は、インプット・アウトプット・インタフェース(I/O)26を備えている。I/O26は、CPU14と各種の入出力デバイスとを電気的に接続してCPU14と各種の入出力デバイスとの間の各種情報の送受信を司る。
情報処理装置10は、I/O26に接続されることで、バスライン24を介してCPU14と電気的に接続される入出力デバイスとして、受付部28、表示部30、外部I/F32、及び通信I/F34を備えている。なお、ここで、「I/F」とは、インタフェース(Interface)の略称を指す。
受付部28は、ユーザからの指示を含む各種情報を受け付ける。受付部28の一例としては、キーボード、マウス、及びタッチパネルなどの入力デバイスが挙げられる。
表示部30は、受付部28によって受け付けられた各種情報に応じてCPU14によって実行された処理の結果や警報等を表示する。表示部30の一例としては、液晶ディスプレイ又は有機エレクトロルミネッセンスディスプレイが挙げられる。
外部I/F32は、外部装置(例えば、USBメモリ)に接続され、外部装置とCPU14との間の各種情報の送受信を司る。従って、外部装置に複数の2次元断層画像TIが格納されている場合、CPU14は、受付部28で受け付けられた指示に応じて、外部装置から複数の2次元断層画像TIを取得することができる。
通信I/F34は、例えば、専用線又はインターネット回線等の通信回線(図示省略)に接続されている。通信回線には、PC及び/又はサーバ装置等が接続されており、通信I/F34は、PC及び/又はサーバ装置等とCPU14との間の各種情報の送受信を司る。従って、PC及び/又はサーバ装置等に複数の2次元断層画像TIが格納されている場合、CPU14は、受付部28で受け付けられた指示に応じて、PC及び/又はサーバ装置等から複数の2次元断層画像TIを取得することができる。
CPU14は、二次記憶部18から空隙特性導出プログラム20を読み出して一次記憶部16に展開する。そして、CPU14は、一次記憶部16に展開した空隙特性導出プログラム20に従って動作する。CPU14は、空隙特性導出プログラム20に従うことで、一例として図2に示すように、取得部40、2値化行列生成部42、連続性規定行列生成部44、ラベル行列生成部46、集約ラベル行列生成部48、展開ラベル行列生成部50、及び導出部52として動作する。
取得部40は、複数の2次元断層画像TIを取得する。2値化行列生成部42は、取得部40により取得された複数の2次元断層画像TIの各々について、2値化行列を生成する。ここで、2値化行列とは、2次元断層画像TIを、画素毎に、空隙領域を示す第1ビットと、非空隙領域を示す第2ビットとで表現した行列を指す。
連続性規定行列生成部44は、2値化行列生成部42により生成された2値化行列の行毎に列の位置を示す列番号を用いて、連続性規定行列を2次元断層画像TI毎に生成する。ここで、連続性規定行列とは、第1ビットのみを対象とした連続性を規定する行列であり、第1ビットの開始位置と第1ビットの終了位置とで第1ビットの連続性を規定した行列を指す。なお、第1ビットが独立して存在する場合(例えば、単一の第1ビットが第2ビットで囲まれて存在している場合)、第1ビットの開始位置及び終了位置は同じになる。すなわち、第1ビットが独立して存在していても、「連続性あり」として扱われる。
ラベル行列生成部46は、2次元断層画像TI毎に、連続性規定行列生成部44により生成された連続性規定行列を対象として、ラベル行列を生成する。ここで、ラベル行列とは、セル番号で第1ビットの開始位置の列番号を置き換えることにより第1ビットの開始位置をセル番号でラベリングした行列を指す。セル番号とは、2値化行列のセルを特定可能とし、且つ、2値化行列の各セルに対して行内の特定方向に沿って昇順に付与された番号を指す。
集約ラベル行列生成部48は、集約ラベル行列を生成する。集約ラベル行列とは、複数の2次元断層画像TIに対応する連続性規定行列間の同一の行内において、且つ、同一の連続性規定行列内の行間において、ラベル行列に含まれるセル番号を最小セル番号に置き換えることでラベル行列のセル番号を集約した行列を指す。最小セル番号とは、連続性規定行列で第1ビットが連続している区間として規定されている区間に対応する区間(ラベル行列の区間)に含まれるセル番号のうちの最小値のセル番号を指す。
展開ラベル行列生成部50は、展開ラベル行列を生成する。展開ラベル行列とは、集約ラベル行列生成部48により生成された集約ラベル行列に含まれるセル番号を連続性規定行列に従って、2次元断層画像TI毎に2値化行列のセルの規格で行列状に展開した行列を指す。なお、本実施形態では、2値化行列のセルの規格の一例として、8×8の規格が採用されている。
導出部52は、展開ラベル行列生成部50によって生成された展開ラベル行列に含まれるセル番号の位置及び個数の少なくとも一方に基づいて空隙領域及び非空隙領域の少なくとも一方の特性に関する物理量を導出する。
また、CPU14は、二次記憶部18から気泡特性導出プログラム22を読み出して一次記憶部16に展開する。そして、CPU14は、一次記憶部16に展開した気泡特性導出プログラム22に従って動作する。CPU14は、気泡特性導出プログラム22に従うことで、一例として図10に示すように、取得部60、検出部62、及び特定部64として動作する。
取得部60は、複数の2次元断層画像TIを取得する。検出部62は、取得部60により取得された複数の2次元断層画像TIの各々から円状の領域である円状領域を検出する。特定部64は、検出部62により検出された円状領域を対象として選択された特定の円状領域に基づいて空隙領域P1を特定する。
ここで、特定の円状領域とは、複数の2次元断層画像TIの断層方向である深さ方向における既定間隔毎の2次元断層画像TI内での円状領域の中心を示す中心座標の一致度が所定の一致度以上であり、且つ、特定の半径の個数が所定個数以上であるとの条件を有する円状領域を指す。特定の半径とは、複数の2次元断層画像TIの深さ方向における既定間隔毎の2次元断層画像TI内での円状領域の半径であって、複数の2次元断層画像TIのうちの隣接する2次元断層画像TI間で所定の変位度で変位する半径を指す。
次に、情報処理装置10の本発明に係る部分の作用について説明する。
先ず、空隙特性導出処理の実行を開始する指示が受付部28によって受け付けられた場合にCPU14が空隙特性導出プログラム20に従うことでCPU14によって実行される空隙特性導出処理について図3を参照して説明する。なお、以下、説明の便宜上、空隙特性導出処理の説明では、はんだSに対するX線CTによる撮影で得られた2次元断層画像TIを例に挙げて説明する。
図3に示す空隙特性導出処理では、先ず、ステップ100で、取得部40は、複数の2次元断層画像TIを取得し、その後、ステップ102へ移行する。本ステップ100では、取得部40によってはんだSに関する全ての2次元断層画像TIが時系列で取得される。ここで言う「時系列」とは、はんだSに対するX線CTによる撮影時刻順(例えば、図13に示す深さ方向の浅い方から深い方への順)を意味する。
ステップ102で、2値化行列生成部42は、複数の2値化行列70を生成し、その後、ステップ104へ移行する。すなわち、本ステップ102では、ステップ100の処理で取得された複数の2次元断層画像TIの各々が、一例として図6に示すように、2値化行列70に変換され、これにより、複数の2値化行列70が得られる。図6に示す例では、2値化行列70は、空隙領域S1を示す第1ビットの一例である“1”と非空隙領域S2を示す第2ビットの一例である“0”とで表現された8×8の行列である。つまり、2値化行列70は、0行目〜7行目及び0列目〜7列目の規格で規定された64個のセルを有しており、2値化行列70におけるセルの位置は、0〜7の行番号及び0〜7の列番号で特定される。
なお、ここでは、説明の便宜上、2値化行列70として8×8の行列を例示しているが、本発明はこれに限定されるものではなく、例えば、n及びmを2以上の自然数とした場合、n×mの行列であってもよい。また、本実施形態では、説明の便宜上、第1ビットの一例として“1”を採用し、第2ビットの一例として“0”を採用しているが、本発明はこれに限定されるものではなく、第1ビットを“0”とし、第2ビットを“1”としてもよい。
ステップ104で、2値化行列生成部42は、一例として図13に示すように、ステップ102の処理で得た複数の2値化行列70を深さ方向に沿ってN個の層(以下、「分割層」と称する)に分割し、その後、ステップ106へ移行する。
一例として図13に示すように、複数の2値化行列70は、第1層から第N層までの分割層に分割されていることを前提として説明する。各分割層は、互いに異なる複数の2値化行列70を有している。また、複数の2値化行列70は、第1層から第N層にかけて、はんだSの断層面が徐々に深くなる位置関係で配置されている。
ステップ106で、連続性規定行列生成部44は、分割層番号変数dとして“0”を設定し、その後、ステップ108へ移行する。ここで、分割層番号変数dとは、分割層の個数を意味し、最大個数dmaxはN個である。
ステップ108で、連続性規定行列生成部44は、着目分割層における複数の2値化行列70を取得し、その後、ステップ110へ移行する。ここで、着目分割層とは、ステップ106又はステップ114の処理で設定された分割層番号変数dにより特定される分割層を指す。
ステップ110で、連続性規定行列生成部44は、一例として図4に示す各種行列生成処理を実行し、その後、ステップ112へ移行する。ここで言う「各種行列」とは、一例として図6に示すように、連続性規定行列72及びラベル行列74を指す。なお、連続性規定行列72は、いわゆる“SPAN MATRIX”と呼ばれる行列に相当する行列である。
ここで、各種行列生成処理について図4を参照して説明する。なお、各種行列生成処理は、2値化行列70の複数の行(ここでは一例として8行)を対象として並列処理が実行される。つまり、各種行列生成処理は、2値化行列70の行毎に並列に行われる。そこで、説明の便宜上、図4では、2値化行列70の1行に対する各種行列生成処理の流れの一例が表現されている。
図4に示す各種行列生成処理では、先ず、ステップ110Aで、連続性規定行列生成部44は、現時点で設定されている分割層番号変数dにより特定される分割層における未処理の2値化行列70を取得し、その後、ステップ110Bへ移行する。ここで言う「未処理」とは、ステップ110B以降の処理が実行されていないことを意味する。
ステップ110Bで、連続性規定行列生成部44は、着目すべき列番号を示す列番号変数c1として“0”を設定し、その後、ステップ110Cへ移行する。
ステップ110Cで、連続性規定行列生成部44は、ステップ110Aの処理で取得した2値化行列70において、着目セルのビット数が“0”であるか否かを判定する。ここで、着目セルとは、現時点で着目している行であり、且つ、ステップ110Bの処理で設定した列番号変数c1により特定される列により特定されるセルを指す。
ステップ110Cにおいて、ステップ110Aの処理で取得した2値化行列70において、着目セルのビット数が“1”の場合は、判定が否定されて、ステップ110Dへ移行する。ステップ110Cにおいて、ステップ110Aの処理で取得した2値化行列70において、着目セルのビット数が“0”の場合は、判定が肯定されて、ステップ110Gへ移行する。
ステップ110Dで、連続性規定行列生成部44は、空隙連続フラグがオフか否かを判定する。ここで、空隙連続フラグとは、ビット数の“1”が連続中であることを示すフラグ、換言すると、現時点で着目している行において空隙領域S1の個数のカウントが未だに継続している最中であることを示すフラグを指す。
本ステップ110Dにおいて、例えば、2値化行列70の前列のセル(前列の画素)のビット数が“0”の場合は空隙連続フラグが「オフ」であり、2値化行列70の前列のセルが“1”の場合は空隙フラグ「オン」である。
ステップ110Dにおいて、空隙連続フラグがオフの場合は、判定が肯定されて、ステップ110Eへ移行する。ステップ110Dにおいて、空隙連続フラグがオンの場合は、判定が否定されて、ステップ110Jへ移行する。
ステップ110Eで、連続性規定行列生成部44は、空隙連続フラグをオンし、その後、ステップ110Fへ移行する。
ステップ110Fで、連続性規定行列生成部44は、現時点で着目している行でビット数が“1”の開始位置の列番号を、一次記憶部16の連続性規定行列用記憶領域に格納し、その後、ステップ110Jへ移行する。なお、連続性規定行列用記憶領域とは、連続性規定行列72の規定用の記憶領域を指す。一例として図6に示すように、連続性規定行列72は、連続性規定行列用記憶領域に2値化行列70の列番号が格納されることによって生成される。
ここで、例えば、2値化行列70の列番号変数“0”により特定される0行目を対象として本各種行列生成処理が実行されている場合、本ステップ110Fの処理が実行されると、図6に示す例では、連続性規定行列用記憶領域において、0行0列目に「0」が格納され、0行2列目に「2」が格納され、これにより、連続性規定行列72の1行目の開始位置の値(列番号)が確定する。
ステップ110Gで、連続性規定行列生成部44は、空隙連続フラグがオンか否かを判定する。
本ステップ110Gにおいて、例えば、2値化行列70の前列のセルのビット数が“1”であり、且つ、未だに空隙領域S1の個数のカウントが継続中である場合は、空隙連続フラグは「オン」である。また、本ステップ110Gにおいて、例えば、2値化行列70の前列のセルのビット数が“1”であり、且つ、空隙領域S1の個数のカウントが終了している場合は、空隙連続フラグは「オフ」である。
ステップ110Gにおいて、空隙連続フラグがオンの場合は、判定が肯定されて、ステップ110Hへ移行する。ステップ110Gにおいて、空隙連続フラグがオフの場合は、判定が否定されて、ステップ110Jへ移行する。
ステップ110Hで、連続性規定行列生成部44は、空隙連続フラグをオフし、その後、ステップ110Iへ移行する。
ステップ110Iで、連続性規定行列生成部44は、ビット数が“1”の終了位置の列番号を、一次記憶部16の連続性規定行列用記憶領域に格納し、その後、ステップ110Jへ移行する。
ここで、例えば、2値化行列70の列番号変数“0”により特定される0行目を対象として本各種行列生成処理が実行されている場合、本ステップ110Fの処理が実行されると、図6に示す例では、連続性規定行列用記憶領域において、0行1列目に「0」が格納され、0行3列目に「4」が格納され、これにより、連続性規定行列72の0行目の終了位置の値(列番号)が確定する。ステップ110F及びステップ110Iの処理が実行されることにより、連続性規定行列72の0行目の開始位置及び終了位置の値が確定することで、連続性規定行列72の0行目が完成する。
図6に示す例において、連続性規定行列72の0行目の0列目の“0”及び1列目の“0”は、2値化行列70の0行目の列番号変数“0”により特定される列(=0列目)から列番号変数“0”により特定される列(=0列目)にかけてビット数の“1”が連続していることを示している。また、図6に示す例において、連続性規定行列72の0行目の2列目の“2”及び3列目の“4”は、2値化行列70の0行目の列番号変数“2”により特定される列(=2列目)から列番号変数“4”により特定される列(=4列目)にかけてビット数の“1”が連続していることを示している。
ステップ110Jで、ラベル行列生成部46は、列番号変数c1が2値化行列70の列数の最大値cmax(ここでは、“7”)に達したか否かを判定する。
ステップ110Jにおいて、列番号変数c1が2値化行列70の列数の最大値cmaxに達していない場合は、判定が否定されて、ステップ110Kへ移行する。ステップ110Jにおいて、列番号変数c1が2値化行列70の列数の最大値cmaxに達した場合は、判定が肯定されて、ステップ110Lへ移行する。
ステップ110Kで、連続性規定行列生成部44は、列番号変数c1を1インクリメントし、その後、ステップ110Cへ移行する。
ステップ110Lで、ラベル行列生成部46は、一例として図6に示すように、ラベル行列74を生成し、その後、ステップ110Mへ移行する。
ラベル行列74は、現時点で着目している行において、連続性規定行列72の開始位置の列番号を、一例として図7に示すセル番号行列76で位置が対応するセルのセル番号に置き換えて連続性規定行列72の開始位置をセル番号行列76のセル番号でラベリングすることによって生成される。
セル番号行列76とは、2値化行列70のセルを特定可能な行列、すなわち、2値化行列70のセルに対してセル番号が付与されて得られた行列を指す。図7に示す例では、セル番号行列76は、2値化行列70と同規格の8×8の行列である。セル番号行列76は、行毎に0列目から7列目に対して昇順にセル番号が付与されており、行を跨いでセル番号が連続した行列とされている。なお、0列目から7列目の方向は、本発明に係る特定方向の一例であるが、本発明に係る特定方向はこれに限定されるものではなく、例えば、7列目から0列目の方向を採用してもよい。
ここで、連続性規定行列72の開始位置をセル番号行列76のセル番号でラベリングする方法について連続性規定行列72の0行目〜2行目を例に挙げて説明する。
例えば、連続性規定行列72の0行0列目の“0”(=2値化行列70の0行目の0列目を示す列番号)の位置は、セル番号行列76における0行0列目のセルの位置に対応しているので、連続性規定行列72の0行0列目の“0”はセル番号“0”でラベリングされる。
また、例えば、連続性規定行列72の0行2列目の“2”(=2値化行列70の0行目の2列目を示す列番号)の位置は、セル番号行列76における0行2列目のセルの位置に対応しているので、連続性規定行列72の0行2列目の“2”はセル番号“2”でラベリングされる。
また、例えば、連続性規定行列72の1行0列目の“1”(=2値化行列70の1行目の1列目を示す列番号)の位置は、セル番号行列76における1行1列目のセルの位置に対応しているので、連続性規定行列72の1行0列目の“1”はセル番号“9”でラベリングされる。
また、例えば、連続性規定行列72の1行3列目の“4”(=2値化行列70の1行目の4列目を示す列番号)の位置は、セル番号行列76における1行4列目のセルの位置に対応しているので、連続性規定行列72の1行3列目の“4”はセル番号“12”でラベリングされる。
また、例えば、連続性規定行列72の2行1列目の“4”(=2値化行列70の2行目の4列目を示す列番号)の位置は、セル番号行列76の2行4列目のセルの位置に対応しているので、連続性規定行列72の2行1列目の“4”はセル番号“20”でラベリングされる。
ステップ110Mで、2値化行列生成部42は、現時点で設定されている分割層番号変数dにより特定される分割層における全ての2値化行列70に対してステップ110A〜110Lの処理が終了したか否かを判定する。
ステップ110Mにおいて、現時点で設定されている分割層番号変数dにより特定される分割層における全ての2値化行列70に対してステップ110A〜110Lの処理が終了していない場合は、判定が否定されて、ステップ110Aへ移行する。ステップ110Mにおいて、現時点で設定されている分割層番号変数dにより特定される分割層における全ての2値化行列70に対してステップ110A〜110Lの処理が終了した場合は、判定が肯定されて、本各種行列生成処理を終了する。
一方、図3に示すステップ112で、集約ラベル行列生成部48は、現時点で設定されている分割層番号変数dがdmax未満か否かを判定する。
ステップ112において、現時点で設定されている分割層番号変数dがdmaxに達している場合は、判定が否定されて、ステップ116へ移行する。ステップ112において、現時点で設定されている分割層番号変数dがdmax未満の場合は、判定が肯定されて、ステップ116へ移行する。
ステップ114で、2値化行列生成部42は、分割層番号変数dを1インクリメントし、その後、ステップ108へ移行する。
ステップ116で、集約ラベル行列生成部48は、一例として図5に示す集約ラベル行列生成処理を実行し、その後、ステップ118へ移行する。
ここで、集約ラベル行列生成処理について図5を参照して説明する。なお、集約ラベル行列生成処理は、ラベル行列の複数の行(ここでは一例として8行)を対象として並列処理が実行される。つまり、集約ラベル行列生成処理は、ラベル行列74の行毎に並列に行われる。そこで、説明の便宜上、図5では、ラベル行列74の1行に対するラベル行列生成処理の流れの一例が表現されている。
図5に示すラベル行列生成処理では、先ず、ステップ116Aで、集約ラベル行列生成部48は、図4に示すステップ110F及びステップ110Iの処理が実行されることで得られた全ての連続性規定行列72を取得し、その後、ステップ110Bへ移行する。
ステップ110Bで、集約ラベル行列生成部48は、図4に示すステップ110Lの処理が実行されることで生成されたラベル行列74のうち、注目すべきラベル行列74(以下、「注目ラベル行列」と称する)を設定し、その後、ステップ116Cへ移行する。
ステップ116Cで、集約ラベル行列生成部48は、注目すべき列番号を示す列番号変数c2として“0”を設定し、その後、ステップ116Dへ移行する。
ステップ116Dで、集約ラベル行列生成部48は、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が2値化行列70内で1つ上の行と列方向(=同列)で連続しているか否かを、連続性規定行列72を参照して判定する。ここで、注目セル番号とは、注目ラベル行列の現時点で着目している行内の現時点で設定されている列番号変数c2により特定される列のセル番号を指す。
ステップ116Dにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が2値化行列70内で1つ上の行と列方向で連続している場合は、判定が肯定されて、ステップ116Eへ移行する。ステップ116Dにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が2値化行列70内で1つ上の行と列方向で連続していない場合は、判定が否定されて、ステップ116Fへ移行する。
ステップ116Eで、集約ラベル行列生成部48は、注目セル番号と1行上セル番号とを比較し、これらを小さい方のセル番号に統一し、その後、ステップ116Fへ移行する。ここで、1行上セル番号とは、注目ラベル行列のうちの注目セル番号の1つ上の行のセル番号であって、注目セル番号により特定されるセル内のビット数“1”が2値化行列70において1つ上の行と列方向(=同列)で連続しているセル番号を指す。
本ステップ116Eの処理が実行されると、図8に示す例では、第1の状態の注目ラベル行列において、図中の破線で囲まれたセル番号“30”は、1つ上の行の二点鎖線で囲まれたセル番号“20”に置き換えられる(図8に示す「第2の状態」参照)。
ステップ116Fで、集約ラベル行列生成部48は、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が2値化行列70内で1つ下の行と列方向(=同列)で連続しているか否かを、連続性規定行列72を参照して判定する。
ステップ116Fにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が2値化行列70内で1つ下の行と列方向で連続している場合は、判定が肯定されて、ステップ116Gへ移行する。ステップ116Fにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が2値化行列70内で1つ下の行と列方向で連続していない場合は、判定が否定されて、ステップ116Hへ移行する。
ステップ116Gで、集約ラベル行列生成部48は、注目セル番号と1行下セル番号とを比較し、これらを小さい方のセル番号に統一し、その後、ステップ116Hへ移行する。
ここで、1行下セル番号とは、注目ラベル行列のうちの注目セル番号の1つ下の行のセル番号であって、注目セル番号により特定されるセル内のビット数“1”が2値化行列70において1つ下の行と列方向(=同列)で連続しているセル番号を指す。
本ステップ116Gの処理が実行されると、図8に示す例では、第1の状態の注目ラベル行列において、図中の破線で囲まれたセル番号“30”の1つ下の行の二点鎖線で囲まれたセル番号“37”は、破線で囲まれたセル番号“30”に置き換えられる(図8に示す「第2の状態」参照)。
このように、注目ラベル行列を対象として、ステップ116D〜116Gの処理が行毎に行われると、一例として図8に示すように、注目ラベル行列は、第1の状態から第2の状態に遷移する。
ステップ116Hで、集約ラベル行列生成部48は、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が1つ前の2値化行列70内での同行と深さ方向で連続しているか否かを、連続性規定行列72を参照して判定する。
ここで、1つ前の2値化行列70とは、注目ラベル行列に対応する2値化行列70よりも1つ浅い位置の2値化行列70を指す。1つ前の2値化行列70での同行とは、1つ前の2値化行列70に含まれる行のうち、注目ラベル行列おける現時点で着目している行に対応する2値化行列70の行と同一の行を指す。
ステップ116Hにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が1つ前の2値化行列70内での同行と深さ方向で連続している場合は、判定が肯定されて、ステップ116Iへ移行する。ステップ116Hにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が1つ前の2値化行列70内での同行と深さ方向で連続していない場合は、判定が否定されて、ステップ116Jへ移行する。
ステップ116Iで、集約ラベル行列生成部48は、注目セル番号と1行前セル番号とを比較し、これらを小さい方のセル番号に統一し、その後、ステップ116Iへ移行する。
ここで、1行前セル番号とは、1つ前のラベル行列74における同行のセル番号のうち、注目セル番号により特定されるセル内のビット数“1”が1つ前の2値化行列70での同行と深さ方向で連続しているセル番号を指す。1つ前のラベル行列74とは、注目ラベル行列よりも1つ浅い位置のラベル行列74を指す。1つ前のラベル行列74における同行とは、1つ前のラベル行列74に含まれる行のうち、注目ラベル行列において現時点で着目している行と同一の行を指す。
ステップ116Jで、集約ラベル行列生成部48は、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が1つ後の2値化行列70内での同行と深さ方向で連続しているか否かを、連続性規定行列72を参照して判定する。
ここで、1つ後の2値化行列70とは、注目ラベル行列に対応する2値化行列70よりも1つ深い位置の2値化行列70を指す。1つ後の2値化行列70での同行とは、1つ後の2値化行列70に含まれる行のうち、注目ラベル行列おける現時点で着目している行に対応する2値化行列70の行と同一の行を指す。
ステップ116Jにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が1つ後の2値化行列70内での同行と深さ方向で連続している場合は、判定が肯定されて、ステップ116Kへ移行する。ステップ116Jにおいて、注目セル番号により特定される2値化行列70でのセル内のビット数“1”が1つ後の2値化行列70内での同行と深さ方向で連続していない場合は、判定が否定されて、ステップ116Lへ移行する。
ステップ116Kで、集約ラベル行列生成部48は、注目セル番号と1行後セル番号とを比較し、これらを小さい方のセル番号に統一し、その後、ステップ116Lへ移行する。
ここで、1行後セル番号とは、1つ後のラベル行列74における同行のセル番号のうち、注目セル番号により特定されるセル内のビット数“1”が1つ後の2値化行列70での同行と深さ方向で連続しているセル番号を指す。1つ後のラベル行列74とは、注目ラベル行列よりも1つ深い位置のラベル行列74を指す。1つ後のラベル行列74における同行とは、1つ後のラベル行列74に含まれる行のうち、注目ラベル行列において現時点で着目している行と同一の行を指す。
ステップ116Lで、集約ラベル行列生成部48は、列番号変数c2が注目ラベル行列の最後の列を示す列番号変数に達しているか否かを判定する。
ステップ116Lにおいて、列番号変数c2が注目ラベル行列の最後の列を示す列番号変数に達している場合は、判定が肯定されて、ステップ116Nへ移行する。ステップ116Lにおいて、列番号変数c2が注目ラベル行列の最後の列を示す列番号変数に達していない場合は、判定が否定されて、ステップ116Mへ移行する。
ステップ116Mで、集約ラベル行列生成部48は、列番号変数c2を1インクリメントし、その後、ステップ116Dへ移行する。
ステップ116Nで、集約ラベル行列生成部48は、注目ラベル行列として未設定のラベル行列74がないか否かを判定する。
ステップ116Nにおいて、注目ラベル行列として未設定のラベル行列74がある場合は、判定が否定されて、ステップ116Bへ移行する。ステップ116Nにおいて、注目ラベル行列として未設定のラベル行列74がない場合は、判定が肯定されて、ステップ116Pへ移行する。
ステップ116Pで、集約ラベル行列生成部48は、探索処理を複数回繰り返して実行し、その後、本集約ラベル行列生成処理を終了する。
ここで、探索処理とは、連続性規定行列72と注目ラベル行列との関係性に従って、連続性規定行列72でビット数“1”が連続している区間に対応する区間に含まれるセル番号のうちの最小値である最小セル番号を探索する処理を指す。なお、ここで言う「探索処理」は、いわゆる“Find Root処理”と呼ばれる処理に相当する処理である。また、連続性規定行列72でビット数“1”が連続している区間に対応する区間とは、注目ラベル行列内のうち、連続性規定行列72でビット数“1”が連続している区間に対応する区間を指す。
本ステップ116Pの処理が実行されると、一例として図8に示すように、注目ラベル行列は、第2の状態から第3の状態に遷移し、最終的に、集約ラベル行列78が生成される。
ここで、集約ラベル行列78とは、複数の2次元断層画像TIに対応する連続性規定行列72間の同一の行内において、且つ、連続性規定行列72内の行間において、注目ラベル行列に含まれるセル番号を、最小セル番号に置き換えることで注目ラベル行列のセル番号を集約した行列を指す。従って、図8に示す例において、集約ラベル行列78とは、第3の状態の注目ラベル行列を指す。
ここで、集約ラベル行列78の生成方法について説明する。
図8に示す例では、連続性規定行列72内の行間を対象として、ステップ116D〜ステップ116Kの処理が実行されることで、注目ラベル行列が第1の状態から第2の状態に遷移した場合に、第2の状態の注目ラベル行列のセル番号の“20”に着目すると、本ステップ116Pが実行されることにより、セル番号の“20”が最小値のセル番号である“2”に集約(統一)される。
この場合、例えば、第1の状態の注目ラベル行列のセル番号の“30”の位置をpとし、第2の状態の注目ラベル行列の対応する位置をL(p)とすると、p=30≠L(p)=20となる。この場合、p=30からp=20に変更する。
次に、第1の状態の注目ラベル行列のセル番号の“20”の位置をpとし、第2の状態の注目ラベル行列の対応する位置をL(p)とすると、p=20≠L(p)=12となる。この場合、p=20からp=12に変更する。
次に、第1の状態の注目ラベル行列のセル番号の“12”の位置をpとし、第2の状態の注目ラベル行列の対応する位置をL(p)とすると、P=12≠L(p)=2となる。この場合、p=12からp=2に変更する。
そして、第1の状態の注目ラベル行列のセル番号の“2”の位置をpとし、第2の状態の注目ラベル行列の対応する位置をL(p)とすると、p=2=L(p)=2となる。これにより、最小セル番号の探索が完了し、最小セル番号は“2”に確定し、p=30をp=2に置き換える。
このように、連続性規定行列72内の行間を対象として、注目ラベル行列の各セル番号に着目し、同様の処理を行うことで、一例として図8に示すように、最終的に、注目ラベル行列は、第2の状態から第3の状態に遷移し、第3の状態の注目ラベル行列が集約ラベル行列78として確定する。なお、連続性規定行列72間(深さ方向の隣接する連続性規定行列72間)の同一の行内に対しても、同様の処理が行われる。
一方、図3に示すステップ118で、展開ラベル行列生成部50は、一例として図9に示すように、ステップ116の処理が実行されることで生成された集約ラベル行列78のセル番号を、連続性規定行列72に従って8×8の行列に展開することにより、展開ラベル行列80を生成し、その後、ステップ120へ移行する。
ステップ120で、導出部52は、空隙領域S1の占有率を導出し、その後、本空隙特性導出処理を終了する。
ここで、空隙領域S1の占有率とは、はんだSにおける空隙領域S1の占める割合を指す。空隙領域S1の占有率は、図13に示す第1層〜第N層までの全ての2値化行列70に対応する全ての展開ラベル行列80に含まれる全セルの個数に対するセル番号が付与されたセルの個数の割合である。
また、本ステップ120では、空隙領域S1の占有率が導出されるが、本発明はこれに限定されるものではない。例えば、空隙領域S1の体積が導出されるようにしてもよい。この場合、展開ラベル行列80の各セルに対して、はんだSの単位体積を予め付与しておき、セル番号が付与されたセルの個数に対して、はんだSの単位体積を乗じることによって、空隙領域S1の体積が導出される。
また、セル番号が付与されたセルの位置に基づいて空隙領域S1の外輪郭を特定する数式が導出部52によって導出されるようにしてもよい。
このように、本ステップ120では、導出部52により、展開ラベル行列80に含まれるセル番号の位置及び個数の少なくとも一方に基づいて、空隙領域S1の特性に関する物理量が導出されるようにすればよい。
また、導出部52により、非空隙領域S2の占有率が導出されるようにしてもよい。この場合、非空隙領域S2の占有率は、図13に示す第1層〜第N層までの全ての2値化行列70に対応する全ての展開ラベル行列80に含まれる全セルの個数に対するセル番号が付与されていないセルの個数の割合である。
また、導出部52により、非空隙領域S2の体積が導出されるようにしてもよい。この場合、セル番号が付与されていないセルの個数に対して、はんだSの単位体積を乗じることによって、空隙領域S1の体積が導出される。
また、セル番号が付与されていないセルの位置に基づいて非空隙領域S2の外輪郭を特定する数式が導出部52によって導出されるようにしてもよい。
このように、導出部52により、展開ラベル行列80に含まれるセル番号の位置及び個数の少なくとも一方に基づいて、非空隙領域S2の特性に関する物理量が導出されるようにしてもよい。
ところで、研磨パッドPに含まれる空隙領域P1が球状であることを前提とすると、空隙領域P1の断面は円状であり、円状の領域である円状領域の半径は、2次元断層画像TIの1枚間隔に相当する距離毎に、深さ方向に沿って所定の変位度で変位する。
研磨パッドPの断面層には、一例として図17A〜図17Kに示すように、空隙領域P1の一部である円状領域CRが含まれる。なお、図17A〜図17Kは、所定の間隔(例えば、所定の複数枚)毎の2次元断層画像TIの一部領域の一例であり、図17Aから図17Kにかけて徐々に深い層の2次元断層画像TIの一部領域の一例が示されている。
図17A〜図17Kに示す例では、円状領域CR1の半径が研磨パッドPの深さ方向に沿って、ある一定の変位度で変位している。また、図17B〜図17Iに示す例では、円状領域CR2,CR3の半径が研磨パッドPの深さ方向に沿って、ある一定の変位度で変位している。また、図17C〜図17Gに示す例では、円状領域CR4の半径が研磨パッドPの深さ方向に沿って、ある一定の変位度で変位している。また、図17C〜図17Iに示す例では、円状領域CR5の半径が研磨パッドPの深さ方向に沿って、ある一定の変位度で変位している。
そこで、情報処理装置10では、円状領域CRの半径が所定の変位度で変位するという空隙領域P1の特性に着目して、CPU14により気泡特性導出処理が実行される。
以下では、気泡特性導出処理の実行を開始する指示が受付部28によって受け付けられた場合にCPU14が気泡特性導出プログラム22に従うことでCPU14によって実行される気泡特性導出処理について図11を参照して説明する。なお、以下、説明の便宜上、気泡特性導出処理の説明では、研磨パッドPに対するX線CTによる撮影で得られた2次元断層画像TIを例に挙げて説明する。
図11に示す気泡特性導出処理では、先ず、ステップ200で、取得部60は、複数の2次元断層画像TIを取得し、その後、ステップ202へ移行する。本ステップ200では、取得部60によって研磨パッドPに関する全ての2次元断層画像TIが時系列で取得される。ここで言う「時系列」とは、研磨パッドPに対するX線CTによる撮影時刻順(例えば、図13に示す深さ方向の浅い方から深い方への順)を意味する。
ステップ202で、検出部62は、ステップ202の処理が実行されることで取得された複数の2次元断層画像TIを、一例として図13に示すように、深さ方向に沿ってN個の分割層に分割し、その後、ステップ204へ移行する。
ステップ204で、検出部62は、分割層番号変数dとして“0”を設定し、その後、ステップ206へ移行する。
ステップ206で、検出部62は、着目分割層における複数の2次元断層画像TIを取得し、その後、ステップ208へ移行する。ここで、着目分割層とは、ステップ204又はステップ216の処理で設定された分割層番号変数dにより特定される分割層を指す。
ステップ208で、検出部62は、現時点で設定されている分割層番号変数dがdmax未満か否かを判定する。
ステップ208において、現時点で設定されている分割層番号変数dがdmax未満の場合は、判定が肯定されて、ステップ210へ移行する。ステップ208において、現時点で設定されている分割層番号変数dがdmaxに達している場合は、判定が否定されて、ステップ218へ移行する。
ステップ210で、検出部62は、LBP(Local Binary Pattern)特徴量等を用いて、現時点で設定されている分割層番号変数dにより特定される分割層に含まれる全ての2次元断層画像TIの各々から円状領域CRを検出し、その後、ステップ212へ移行する。
なお、本実施形態では、処理速度の高速化の観点から、検出部62は、LBP特徴量を適用したカスケード識別器(図示省略)を利用して円状領域CRを検出しているが、本発明はこれに限定されるものではない。例えば、LBP特徴量以外の画像検出に利用される特徴量としては、Haar−Like特徴量又はHOG(Histograms of Oriented Gradients)特徴量等が挙げられる。また、2次元テンプレートマッチングを利用することも可能である。
ステップ212で、検出部62は、ステップ210の処理で検出した円状領域CRに対して、一意に識別可能なID(Identification)である円状領域IDを付与し、その後、ステップ214へ移行する。
ステップ214で、検出部62は、ステップ210の処理で検出した円状領域CRの半径及び中心座標を円状領域ID毎に一次記憶部16に記憶し、その後、ステップ216へ移行する。ここで、中心座標とは、2次元断層画像TI内での円状領域CRの中心を示す座標を指す。
ステップ216で、検出部62は、分割層番号変数dを1インクリメントし、その後、ステップ206へ移行する。
ステップ218で、特定部64は、円状領域フラグがオフの円状領域IDにより特定される円状領域CRを選択し、その後、ステップ219へ移行する。ここで、円状領域フラグとは、後述のステップ220の処理で取得済みの円状領域CRであることを示すフラグを指す。
ステップ219で、特定部64は、ステップ218の処理で選択した円状領域CRに、深さ方向で中心座標が同一の複数の円状領域CRが存在するか否かを判定する。ここで、同一とは、完全な同一のみならず、許容される所定の誤差内での同一も意味する。
ステップ219において、ステップ218の処理で選択した円状領域CRに、深さ方向で中心座標が同一の複数の円状領域CRが存在する場合は、判定が肯定されて、ステップ220へ移行する。ステップ219において、ステップ218の処理で選択した円状領域CRに、深さ方向で中心座標が同一の複数の円状領域CRが存在しない場合は、判定が否定されて、ステップ230へ移行する。
ステップ220で、特定部64は、ステップ218の処理で選択した円状領域CRであって、深さ方向で中心座標が同一の全ての円状領域CRを取得し、その後、ステップ222へ移行する。なお、本ステップ220の処理が実行されることによって取得される円状領域CRは、1つの中心座標に関する円状領域CRである。
ステップ222で、特定部64は、該当する円状領域IDに対して円状領域フラグをオンし、その後、ステップ224へ移行する。ここで、「該当する円状領域ID」とは、ステップ220の処理で取得した円状領域CRの各々についての円状領域IDを指す。
ステップ224で、特定部64は、正常変位の円状領域CRの個数が閾値Th以上であるか否かを判定する。ここで、正常変位の円状領域CRとは、2次元断層画像TIの1枚毎に所定の変位度で半径r1(図12参照)が変位する円状領域CRを指す。
なお、所定の変位度は、ステップ220の処理で取得した円状領域CRのうちの最大半径を有する円状領域CRである最大円状領域の半径r(図12参照)に応じて一意に定められる。半径の変位度は、球体の体積によって異なるからである。所定の変位度は、例えば、最大円状領域の半径rを独立変数とし、円状領域CRの半径r1の変位度を従属変数とする演算式、又は、最大円状領域の半径rと円状領域CRの半径r1の変位度とが対応付けられたテーブルによって導出される。
例えば、閾値Thの決め方の一例としては、最大円状領域の半径r1に応じて一意に定めるという方法が挙げられる。最大円状領域の半径が大きい程、大きな値となる。なぜならば、球体の体積が大きくなるほど、円状領域CRが多くなるからである。なお、閾値Thは一定値であってもよい。また、閾値Thは、受付部28によって受け付けられた指示に応じて変更可能な可変値であってもよい。
ステップ224において、正常変位の円状領域CRの個数が閾値Th以上の場合は、判定が肯定されて、ステップ226へ移行する。ステップ224において、正常変位の円状領域CRの個数が閾値Th未満の場合は、判定が否定されて、ステップ228へ移行する。
ステップ226で、特定部64は、最大円状領域の半径r及び中心座標を気泡IDに対応付けて一次記憶部16に記憶し、その後、ステップ228へ移行する。気泡IDとは、ステップ220の処理で取得した円状領域CRによって形成される気泡である空隙領域P1を一意に特定可能なIDを指す。
ステップ228で、特定部64は、円状領域フラグがオフとされた円状領域IDがないか否かを判定する。
ステップ228において、円状領域フラグがオフとされた円状領域IDがある場合は、判定が否定されて、ステップ218へ移行する。ステップ228において、円状領域フラグがオフとされた円状領域IDがない場合は、判定が肯定されて、ステップ230へ移行する。
ステップ230で、特定部64は、気泡IDが一次記憶部16に記憶されているか否かを判定する。気泡IDが一次記憶部16に記憶されているということは、研磨パッドPに気泡が含まれていることを意味し、気泡IDが一次記憶部16に記憶されていないということは、研磨パッドPに気泡が含まれていないことを意味する。
よって、ステップ230において、気泡IDが一次記憶部16に記憶されていない場合は、判定が否定されて、本気泡特性導出処理を終了する。ステップ230において、気泡IDが一次記憶部16に記憶されている場合は、判定が肯定されて、ステップ232へ移行する。
ステップ232で、特定部64は、ステップ220の処理で取得した円状領域CRで形成される空隙領域P1である気泡であって、後述の気泡フラグがオンされていない着目した気泡IDにより特定される気泡(以下、「着目気泡」と称する)が他の気泡(他の気泡IDにより特定される気泡)と連続しているか否かを判定する。他の気泡と連続しているとは、換言すると、他の気泡と接触している、ということを意味する。なお、他の気泡と連続しているか否かは、気泡ID毎に一次記憶部16に記憶されている最大円状領域の半径及び中心座標に基づいて判定される。
ステップ232において、着目気泡が他の気泡と連続している場合は、判定が肯定されて、ステップ234へ移行する。ステップ232において、着目気泡が他の気泡と連続していない場合は、判定が否定されて、ステップ236へ移行する。
ステップ234で、特定部64は、着目気泡の気泡IDに対して連続気泡フラグをオンし、その後、ステップ238へ移行する。ここで、連続気泡フラグとは、着目気泡が他の気泡と連続していることを示すフラグを指す。また、連続気泡とは、一例として図16に示す連続空隙領域P1Bに相当する気泡であって、他の気泡と連続している気泡を指す。
ステップ236で、特定部64は、着目気泡の気泡IDに対して独立気泡フラグをオンし、その後、ステップ238へ移行する。ここで、独立気泡フラグとは、着目気泡が独立気泡であることを示すフラグを指す。また、独立気泡とは、一例として図16に示す独立空隙領域P1Aに相当する気泡であって、他の気泡と連続していない気泡を指す。なお、以下では、説明の便宜上、連続気泡フラグ及び独立気泡フラグを区別して説明する必要がない場合、「気泡フラグ」と称する。
ステップ238で、特定部64は、気泡フラグがオフの気泡IDがないか否かを判定する。
ステップ238において、気泡フラグがオフの気泡IDがある場合は、判定が否定されて、ステップ232へ移行する。ステップ238において、気泡フラグがオフの気泡IDがない場合は、判定が肯定されて、本気泡特性導出処理を終了する。
以上説明したように、情報処理装置10では、集約ラベル行列生成部48により生成された集約ラベル行列78に含まれるセル番号を連続性規定行列72に従って、2次元断層画像TI毎に2値化行列70のセルの規格で行列状に展開した展開ラベル行列80が生成される。従って、本構成を有する情報処理装置10によれば、はんだSに含まれる空隙領域S1及び非空隙領域S2の迅速な特定に寄与することができる。
また、情報処理装置10では、ラベル行列74に含まれるセル番号が、集約ラベル行列生成処理に含まれる探索処理(ステップ116Pの処理)が実行されることにより探索された最小セル番号に置き換えることよって集約ラベル行列78が生成される。従って、本構成を有する情報処理装置10によれば、探索処理を実行しない場合に比べ、集約ラベル行列78を迅速に生成することができる。
また、情報処理装置10では、2値化行列に含まれる複数の行を対象として並列処理が実行されることによって連続性規定行列72が生成される。また、連続性規定行列72に含まれる複数の行を対象として並列処理が実行されることによって連続性規定行列72に対応するラベル行列74が生成される。また、ラベル行列74に含まれる複数の行を対象として並列処理を実行することでラベル行列74に含まれるセル番号を最小セル番号に置き換えられる。従って、本構成を有する情報処理装置10によれば、並列処理を実行しない場合に比べ、連続性規定行列72の生成、ラベル行列74の生成、及び、ラベル行列74に含まれるセル番号の最小セル番号への置き換えを迅速に行うことができる。
また、情報処理装置10では、展開ラベル行列80に含まれるセル番号の位置及び個数の少なくとも一方に基づいて空隙領域S1及び非空隙領域S2の少なくともの一方の特性に関する物理量(例えば、体積又は占有率など)が導出される。従って、本構成を有する情報処理装置によれば、展開ラベル行列80を用いない場合に比べ、空隙領域S1及び非空隙領域S2の少なくともの一方の特性に関する物理量を迅速に導出することができる。
また、情報処理装置10では、第1の条件及び第2の条件の双方を満足する円状領域CRに基づいて空隙領域P1が特定される。ここで、第1の条件とは、検出部62により検出された円状領域CRを対象として、複数の2次元断層画像TIの深さ方向における既定間隔毎の2次元断層画像TI内での円状領域CRの中心座標の一致度が所定の一致度以上である、との条件を指す。第2の条件とは、既定間隔毎の2次元断層画像TI内での円状領域CRの半径であって、複数の2次元断層画像TIのうちの隣接する2次元断層画像間で所定の変位度で変位する半径の個数が所定個数以上であるとの条件を指す。「既定間隔」の一例としては、隣接する2次元断層画像TI間に対応する実空間上の距離が挙げられる。また、「所定の一致度以上」の一例としては、完全一致(完全同一)が挙げられる。
従って、本構成を有する情報処理装置10によれば、研磨パッドPに含まれる空隙領域P1及び非空隙領域P2の迅速な特定に寄与することができる。
また、情報処理装置10では、最大円状領域の半径及び中心が特定部64により特定された空隙領域P1である気泡の半径及び中心とされている。従って、本構成を有する情報処理装置10によれば、空隙領域P1である気泡の半径及び中心を迅速に特定することができる。
また、情報処理装置10では、閾値Th及び所定の変位度が最大円状領域の半径rに応じて定められている。従って、本構成を有する情報処理装置10によれば、閾値Th及び所定の変位度をその都度人為的な判断で決める場合に比べ、高精度な閾値Th及び所定の変位度を得ることができる。
また、情報処理装置10では、特定部64により、空隙領域P1の半径及び中心座標に基づいて独立気泡が特定される。従って、本構成を有する情報処理装置10によれば、空隙領域P1の半径及び中心座標を用いずに独立気泡を特定する場合に比べ、独立気泡を迅速に特定することができる。
更に、情報処理装置10では、特定部64により、空隙領域P1の半径及び中心座標に基づいて連続気泡が特定される。従って、本構成を有する情報処理装置10によれば、空隙領域P1の半径及び中心座標を用いずに連続気泡を特定する場合に比べ、連続気泡を迅速に特定することができる。
なお、上記実施形態では、LBP特徴量等を用いて円状領域CRが検出されることで円状領域CRの半径が特定されたが(ステップ210,214参照)、本発明はこれに限定されるものではない。例えば、図12に示すように、2次元断層画像TI間に対応する実空間上の距離Dと最大円状領域の半径rとに基づいて、最大円状領域と異なる円状領域CR(本発明に係る非最大円状領域の一例)の半径r1が導出されるようにしてもよい。これにより、最大円状領域以外の円状領域CRの半径r1を迅速に導出することが可能となる。
また、着目する2次元断層画像TIから最大円状領域を有する2次元断層画像TIまでの2次元断層画像TIの枚数と、隣接する2次元断層画像TI間に対応する実空間上の距離Dと、最大円状領域の半径rとが判明すれば、これらに基づいて、着目する2次元断層画像TIに含まれる円状領域CRの半径r1が導出される。
また、上記実施形態では、2値化行列70に含まれる複数の行を対象とした並列処理、連続性規定行列72に含まれる複数の行を対象とした並列処理、及び、ラベル行列74に含まれる複数の行を対象とした並列処理が実行される場合を例示したが、本発明はこれに限定されるものではない。すなわち、2値化行列70に含まれる複数の行を対象とした並列処理、連続性規定行列72に含まれる複数の行を対象とした並列処理、及び、ラベル行列74に含まれる複数の行を対象とした並列処理のうちの少なくとも1つが実行されるようにしてもよい。
また、上記実施形態では、閾値Th及び所定の変位度の双方が最大円状領域の大きさ(一例として、半径、直径、又は面積)に応じて定められる場合を例示したが、本発明はこれに限定されるものではなく、閾値Th又は所定の変位度が最大円状領域の大きさに応じて定められるようにしてもよい。
また、上記実施形態では、2次元断層画像TIが被検査対象物に対するX線CTによる撮影によって得られる場合を例に挙げて説明したが、本発明はこれに限定されるものではない。例えば、2次元断層画像TIは、超音波CT、オプティカルCT、又は磁気共鳴CT等による撮影によって得られてもよい。
また、上記実施形態では、説明の便宜上、コンピュータ12を例に挙げて説明したが、本発明はこれに限定されるものではない。例えば、コンピュータ12に代えてGPU(Grahics Processing Unit)又はGPGPU(General−purpose computing on Graphics Processing Units)を適用してもよい。
また、上記実施形態では、プログラムを二次記憶部18から読み出す場合を例示したが、これはあくまでも一例である。例えば、図18に示すように、SSD(Solid State Drive)又はUSBメモリなどの任意の可搬型の記憶媒体500にプログラムを記憶させておいてもよい。この場合、記憶媒体500のプログラムが情報処理装置10にインストールされ、インストールされたプログラムが情報処理装置10のCPU14によって読み出される。
また、通信I/F34を介してコンピュータ12に接続される他のコンピュータ又はサーバ装置等の記憶部にプログラムを記憶させておき、プログラムがCPU14の要求に応じてダウンロードされるようにしてもよい。この場合、ダウンロードされたプログラムがCPU14によって実行される。
また、上記実施形態で説明した空隙特性導出処理及び気泡特性導出処理はあくまでも一例である。従って、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよいことは言うまでもない。また、空隙特性導出処理及び気泡特性導出処理の各々に含まれる各処理は、ASIC(Application Specific Integrated Circuit)又はFPGA(Field−Programmable Gate Array)等のハードウェア構成のみで実現されてもよい。また、空隙特性導出処理及び気泡特性導出処理の各々に含まれる各処理は、コンピュータを利用したソフトウェア構成とハードウェア構成との組み合わせで実現されてもよい。
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
3次元状の被検査対象物に対する複数の2次元断層画像を取得する取得部と、
前記取得部により取得された複数の2次元断層画像の各々について、前記2次元断層画像を、画素毎に、空隙領域を示す第1ビットと、非空隙領域を示す第2ビットとで表現した2値化行列に生成する2値化行列生成部と、
前記2値化行列生成部により生成された前記2値化行列の行毎に列の位置を示す列番号を用いて、前記第1ビットの開始位置と前記第1ビットの終了位置とで前記第1ビットの連続性を規定した連続性規定行列を前記2次元断層画像毎に生成する連続性規定行列生成部と、
前記2次元断層画像毎に、前記連続性規定行列生成部により生成された前記連続性規定行列を対象として、前記2値化行列のセルを特定可能であり、且つ、前記2値化行列の各セルに対して行内の特定方向に沿って昇順に付与されたセル番号で前記開始位置の前記列番号を置き換えることより前記開始位置を前記セル番号でラベリングしたラベル行列に生成するラベル行列生成部と、
前記複数の2次元断層画像に対応する前記連続性規定行列間の同一の行内において、且つ、前記連続性規定行列内の行間において、前記ラベル行列に含まれる前記セル番号を、前記連続性規定行列で前記第1ビットが連続している区間に対応する区間に含まれる前記セル番号のうちの最小値である最小セル番号に置き換えることで前記ラベル行列の前記セル番号を集約した集約ラベル行列を生成する集約ラベル行列生成部と、
前記集約ラベル行列生成部により生成された前記集約ラベル行列に含まれる前記セル番号を前記連続性規定行列に従って、前記2次元断層画像毎に前記2値化行列のセルの規格で行列状に展開した展開ラベル行列を生成する展開ラベル行列生成部と、
を含む情報処理装置。
(付記2)
前記集約ラベル行列生成部は、前記連続性規定行列と前記ラベル行列との関係性に従って、前記連続性規定行列で前記第1ビットが連続している区間に対応する区間に含まれる前記最小セル番号を探索する探索処理を実行し、前記ラベル行列に含まれる前記セル番号を、前記探索処理を実行することで探索した前記最小セル番号に置き換えることで前記集約ラベル行列を生成する付記1に記載の情報処理装置。
(付記3)
前記連続性規定行列生成部が、前記2値化行列に含まれる複数の行を対象として並列処理を実行することで前記連続性規定行列を生成する処理、前記ラベル行列生成部が、前記連続性規定行列に含まれる複数の行を対象として並列処理を実行することで前記連続性規定行列に対応する前記ラベル行列を生成する処理、及び、前記集約ラベル行列生成部が、前記ラベル行列に含まれる複数の行を対象として並列処理を実行することで前記ラベル行列に含まれる前記セル番号を前記最小セル番号に置き換える処理の少なくとも1つが行われる付記1又は付記2に記載の情報処理装置。
(付記4)
前記展開ラベル行列生成部によって生成された展開ラベル行列に含まれる前記セル番号の位置及び個数の少なくとも一方に基づいて前記空隙及び前記非空隙の少なくとも一方の特性に関する物理量を導出する導出部を更に含む付記1から付記3の何れか1つに記載の情報処理装置。
(付記5)
3次元状の被検査対象物に対する複数の2次元断層画像を取得し、
取得した複数の2次元断層画像の各々について、前記2次元断層画像を、画素毎に、空隙領域を示す第1ビットと、非空隙領域を示す第2ビットとで表現した2値化行列に生成し、
生成した前記2値化行列の行毎に列の位置を示す列番号を用いて、前記第1ビットの開始位置と前記第1ビットの終了位置とで前記第1ビットの連続性を規定した連続性規定行列を前記2次元断層画像毎に生成し、
前記2次元断層画像毎に、生成した前記連続性規定行列を対象として、前記2値化行列のセルを特定可能であり、且つ、前記2値化行列の各セルに対して行内の特定方向に沿って昇順に付与されたセル番号で前記開始位置の前記列番号を置き換えることより前記開始位置を前記セル番号でラベリングしたラベル行列に生成し、
前記複数の2次元断層画像に対応する前記連続性規定行列間の同一の行内において、且つ、前記連続性規定行列内の行間において、前記ラベル行列に含まれる前記セル番号を、前記連続性規定行列で前記第1ビットが連続している区間に対応する区間に含まれる前記セル番号のうちの最小値である最小セル番号に置き換えることで前記ラベル行列の前記セル番号を集約した集約ラベル行列を生成し、
生成した前記集約ラベル行列に含まれる前記セル番号を前記連続性規定行列に従って、前記2次元断層画像毎に前記2値化行列のセルの規格で行列状に展開した展開ラベル行列を生成することを含む情報処理方法。
(付記6)
コンピュータに、
3次元状の被検査対象物に対する複数の2次元断層画像を取得し、
取得した複数の2次元断層画像の各々について、前記2次元断層画像を、画素毎に、空隙領域を示す第1ビットと、非空隙領域を示す第2ビットとで表現した2値化行列に生成し、
生成した前記2値化行列の行毎に列の位置を示す列番号を用いて、前記第1ビットの開始位置と前記第1ビットの終了位置とで前記第1ビットの連続性を規定した連続性規定行列を前記2次元断層画像毎に生成し、
前記2次元断層画像毎に、生成した前記連続性規定行列を対象として、前記2値化行列のセルを特定可能であり、且つ、前記2値化行列の各セルに対して行内の特定方向に沿って昇順に付与されたセル番号で前記開始位置の前記列番号を置き換えることより前記開始位置を前記セル番号でラベリングしたラベル行列に生成し、
前記複数の2次元断層画像に対応する前記連続性規定行列間の同一の行内において、且つ、前記連続性規定行列内の行間において、前記ラベル行列に含まれる前記セル番号を、前記連続性規定行列で前記第1ビットが連続している区間に対応する区間に含まれる前記セル番号のうちの最小値である最小セル番号に置き換えることで前記ラベル行列の前記セル番号を集約した集約ラベル行列を生成し、
生成した前記集約ラベル行列に含まれる前記セル番号を前記連続性規定行列に従って、前記2次元断層画像毎に前記2値化行列のセルの規格で行列状に展開した展開ラベル行列を生成することを含む処理を実行させるためのプログラム。