目次

3D-XAFS/CT-XAFS (2dXafsView と ctTr2 の連携)

主にあいちSR(中でもBL11S2)で行った 2D-XAFS 測定、3D-XAFS測定(CT-XAFS) のデータを解析するため、 当サイトには 2dXafsView (2D-XAFS解析)、ctTr2 (CT再構成、CT-XAFSデータ再構成) という2つのプログラムを公開しています。

両者は連携して動作することができ、3次元空間内の各点での解析を行うことができます。 ここではその連携した解析の手順について簡単に解説します。

1. 連携の概要

ctTr2 と 2dXafsView を使った CT-XAFS 解析の概要は次のようになります。

  1. CT-XAFS 測定を行う。
    具体的には、以下の様な測定を行うことになる。
    1. XAFS測定の各エネルギー点 $E_i \in \{{\rm XAFS}\}$ において、CT再構成のため各 $\theta_j \in \{{\rm CT}\}$ にて 対象試料の2次元の透過像 $I_1(E_i, \theta_j)$を撮影する。
    2. 試料なしで撮影した 2次元像のセット $I_0(E_i)$ を準備する
      (試料がないので、$\theta_j$ を変えて撮影する意味はない)。
    3. 撮像デバイス固有のバックグラウンドを知るために光が入射していない状態の像 $I_{\rm BG}$ を準備する
      (光を入射しないので$E_i$を変える意味もない)
    4. カメラのような2次元の撮像デバイスで撮影を行うと$I_0$や$I_1$は2次元の像になる。画像内で回転軸に平行な方向を$z$、垂直な方向を$y$とし、 2次元像であることを強調すると、$I_0 = I_0(E_i,y,z)$、$I_1 = I_1(E_i,\theta_j,y,z)$と書ける(画像の奥行き方向が$x$ということになる)。
  2. CT再構成を行う。
    1. CT再構成の手続きは、投影像が「投影経路上の対象物質の物理量の積分値」の像である場合に適用可能で、 $0\sim180^\circ$の範囲の様々な方向からの投影像があると体積中の各点での「対象物質の物理量」が求まる。
    2. $I_1$, $I_0$ から計算できる $M(E_i, \theta_j) = \log\{ I_0(E_i) / I_1(E_i, \theta_j) \}$ は、 試料の「吸光度」の投影像であるが、この像はまさに「投影経路上の対象物質の物理量$\equiv$吸光度の積分値」となるのでこの条件を 満たす1)
      $M$も2次元の画像だということを強調すると$M=M(E_i,\theta_j,y,z)$と書ける。
    3. 一つの決まったエネルギー $E_i$ の吸光度像$M(E_i,\theta_j)$の中で$z=z_k$軸となる$z$軸に垂直な一つのライン$M(E_i,\theta_j\in\{CT\},y,z_k)$のセット($\theta_j$違い)に対して CT再構成を行うと、$z$ に垂直な断面($xy$平面)内の吸光度像が得られる。すなわち $M(E_i,\theta_j\in\{CT\},y,z_k) \overset{CT}{\Longrightarrow} M(E_i, x, y, z_k)$。
      (改まって書くとCT再構成は$(\theta,y)$座標から$(x,y)$座標への変換だということになる)
    4. これを$z_k$を変えながら繰り返すと体積内の任意の点$(x,y,z)$の吸光度$M(E_i, x, y, z)$が求まる。
    5. さらに $E_i$ を変えながら CT再構成を繰り返すことでエネルギーの違いも含めた完全な吸光度のデータセット $M(E,x,y,z)$ が得られる。これが CT-XAFS データセット $M=\mu t(E;x,y,z)$ になる。
  3. CT-XAFS の解析を行う。
    1. 任意の点$(x,y,z)$の吸光度スペクトル$M(E)$を解析すると、XANES の範囲でスペクトルのエネルギーシフト($\Delta E_0$) や対象元素の価数($V$)、EXAFS の範囲まで解析できて結合距離($R$)や配位数($N$)、デバイワラ因子($\sigma$)が求まる。
    2. $z$ を一つ決めたデータセット $M(E;x,y,z=z_i)$ についてこれを行うことは 2次元の XAFS 解析と等価になる。
    3. 全ての $z=z_i$についてこの解析を行えば、3次元の任意の点$(x,y,z)$のXAFS解析が行えたことになり、様々な量の3次元分布$\Delta E_0(x,y,z), V(x,y,z), \cdots$が求まる。
    4. この結果を適切に表示すること、3次元の価数分布等を示すことができる。

この様な流れの中で、ctTr2 が担当するのは 2-c,d,e の部分で、2dXafsView は 3-a,b の部分です。 さらに、ctTr2 から 2dXafsView を操作して $z$ 違いの解析を進めることができ 3-c が実現できます。 以下に説明するように、ctTr2 と 2dXafsView を使用し、両者を連携させることでこの様な 3D-XAFS 解析を少ない労力と簡単な操作で進められます。

最後に結果を視覚化する必要がありますが(3-d)、現時点ではこれは何か適切な外部プログラム(例えば 3D Slicer)を用いて行います。

2. 3D-XAFS / CT-XAFS データの再構成

  1. ctTr2 を起動して下さい
  2. 画面中段にある「CT XAFSのための追加情報」のチェックボックスをチェックして下さい
  3. 「CT XAFSのための追加情報」ブロックの中で「データフォルダ選択」を押して CT-XAFS データがあるデータフォルダを選んで下さい
    • あいちSR BL11S2 で CT-XAFS 測定を行うと、全エネルギー全角度で撮影された画像が全て収められた一つのフォルダができます。
      この様なフォルダにあるデータを解析対象にする時は「ASR標準」チェックボックスにチェックを入れ、 全データが収められているフォルダを選択して下さい。
    • tidyUpCTXafs 等を使用してでデータファイルの整理を行った場合は (標準では) Energy という名前のフォルダの下に、 測定エネルギー別のフォルダができ、その下に各エネルギーで測定された角度違いのデータが収められます。 この様な構成のフォルダにあるデータを解析対象にする時は「ASR標準」のチェックを外し、 Energy のフォルダを選択して下さい。
  4. この時点で「CT XAFSのための追加情報」ブロックの中の「セット」ボタン(「データフォルダ選択」の行に有ります)を押すと 最低エネルギーで測定された(角度違いの)データセットが読み込まれます。 その像は、画面下部の画像表示部の中で「元画像」のタブを選択すると見ることができます。
  5. 「CT再構成設定」ブロックの中で、「回転軸」の方向を選んで下さい。BL11S2 の標準的なセットアップなら「水平」のはずです。
  6. 画像表示部の「元画像」の中で適当な場所を選び「左クリック」すると解析対象になる「スライス」を選べます。
  7. 画像表示部の「元画像」の中で適当な場所を選び「右クリック」すると回転中心の位置を選択できます。
  8. 適当に回転中心を選んだ後、画像表示部の「Sinogram」を選択すると、解析対象のスライスの Sinogram を見ることができます。
    Sinogram は横軸が解析対象の「スライス」内の「位置」縦軸が「角度」の画像です。通常 CT 測定は半周(180)で行いますが、これは その先の画像はX線の入射方向が裏表逆になるので左右反転するだけで $\theta-180$の画像と同一になるはずだからです。
    Sinogram の画像を生成する際にはこの様に考えて縦軸方向は 0 $\sim$ 360 の範囲に拡張して表示されます。
    この時、もし「回転中心」の推定が正しければ Sinogram 像は 180度の点を境に上下が連続に変化するはずです。
  9. Sinogram を適当に拡大し(画面内でマウスホイールを回すと拡大縮小できます) 180度の境界をよく確認して、 その点での画像が上下連続になるように「回転中心(CoR)」の数値を選んで下さい。数値は整数ではなく実数値を選べます。
  10. 「回転中心」を選べたら「CT再構成」ブロックで「計算実行」してみて下さい(この時「計算実行」ボタンの右の CT1/CT2 は CT1 を選んで下さい)。
  11. 画像表示部の「再構成画像」にその結果が表示されます。
  12. 必要なら「CT再構成設定」ブロックの中で「角度補正」を指示して「計算実行」を行うと、指示した角度だけ成画像が回転します。
  13. 「再構成画像」画面の中でマウスホイールを回して画像を拡大縮小し、解析したい部分が画面中心付近に収まるようにして下さい。
  14. 「再構成画像」画面の中で適切な位置とサイズを選んだ後で、「再構成画像」画面下部の「計算範囲に設定」ボタンを押して下さい。
  15. 「CT XAFSのための追加情報」ブロックの中で「I0 File Set」の「選択」を押し、I0 画像のセットを選んでください。
  16. 「元画像」ブロック(メインウインドウ最上部)で「BG画像」を選んで下さい。「BG画像」は1枚だけです。
  17. I0 画像が選ばれてないい場合「I0 は常に定数 1 だった」と解釈されます。BG画像が選ばれていない場合「BGは常に0だった」と解釈されます。
  18. 現時点では「I0画像」、「BG画像」のサイズは(測定範囲)は一致している必要が有ります。
  19. 画像表示部の「元画像」の中でマウスを動かして再構成を行いたい範囲(スライス)を決め、 その値を「CT再構成設定」ブロックの中の「From」「To」に指定して下さい。
  20. さらに「連続実行」にチェックを入れます。(この時点で CT1/CT2 は自動的に CT2 が選択されますがそれが正常です)
  21. 「CT再構成」ブロックで「画像自動保存」を選択すると、再構成結果を「画像」として保存できます。
    「選択」ボタンを押して画像を保存するフォルダを選び「ファイル名」を付けて「保存/Save」して下さい。 ここで選ぶ名前は、この後解析が進んだ時に実際に保存されるファイル名の「ベース名」になります。(拡張子は無視されます)
  22. 「CT再構成」ブロックで「データ自動保存」を選択すると、再構成結果を「データ」として保存できます。
    「選択」ボタンを押して画像を保存するフォルダを選び「ファイル名」を付けて「保存/Save」して下さい。 ここで選ぶ名前は、この後解析が進んだ時に実際に保存されるファイル名の「ベース名」になります。(拡張子は無視されます)
  23. 「CT再構成」ブロックで「サブフォルダに保存」を選ぶと、再構成して得たスライス像を全部同じ場所に置くのではなく、
    サブフォルダを作って整理しながら保存することができます。
    その際、スライス名のフォルダに収めるか、エネルギー名のフォルダーに収めるかを併せて選択して下さい。 (各スライスのエネルギー違いの像のセットは、2D-XAFS 測定結果と同じ扱いができますので、スライス単位で整理しておくがオススメです)
  24. ここまで準備ができたら「CT XAFSのための追加情報」ブロックの中で「連続実行」ボタンを押して下さい。
    エネルギー違いのデータセットを順に選びながら、それぞれのデータセットに対して「連続実行」で選択した範囲のスライスの最高性を行い、 その結果を「自動保存」で選択した場所に保存します。
1)
吸光度は通常 $\mu t$ と書かれるが、$\mu$ と $t$ を独立に議論できるわけではないので、ここでは $M \equiv \mu t$ という記号を使う