見出し画像

Radiomics超入門 Appendix:テクスチャ解析におけるディスタンスとディスタンスによる重み付け

特にテクスチャ特徴の計算に必要になる「distance」パラメータについての補足です。

Grid distance

テクスチャ特徴の計算時は、注目しているボクセルとあるボクセルとの関係を、アルゴリズムに合わせてパターンマッチしていくことになります。ここで、あるボクセルを探索する際に利用されるのが「distance」です。

例えば、隣りにあるボクセルのみを探索するという場合には、$${distance=1}$$を指定して計算することと同意です。このように、グリッド座標系の単位で距離を指定し、テクスチャパターンを調べます。

ただし、距離の考え方には注意が必要です。ここで、幾何学的な距離について、代表的な3つの考え方(図1)を紹介します。

図1 マンハッタン距離、ユークリッド距離、チェビシェフ距離によるdistance=3までのグリッド近傍

図 1 では、注目しているボクセルは常に中央のオレンジボクセルであることにします。青色ボクセルは中央に近いほど濃く、遠いほど淡い色になっています。distance=3まで描画されています。

注目ボクセルからどれだけ離れているかは、ベクトルを用いて計算します。

まず、注目ボクセル(この例では図1オレンジボクセル位置)は、次のように表すことができます。

$${\bold{k} = (k_x, k_y, k_z)}$$

この注目ボクセルからみた近傍ボクセルまでの距離ベクトルは次のように表せます。

$${\bold{m} = (m_x, m_y, m_z)}$$

よって、$${\bold{k} + \bold{m}}$$が、近傍ボクセルのベクトルです。

これで、注目ボクセルと近傍ボクセルをベクトルを用いて表すことができるようになりました。

改めて図1を見ると、基準によって距離という概念の捉え方が異なることがわかります。例えば、distance=1のとき、マンハッタン距離とユークリッド距離では、上下左右の濃い青色のボクセル(4つ)のみが対象となっているのに対して、チェビシェフ基準では 8 近傍すべてになっています。この理由は、それぞれの距離の定義を確かめることで理解できます。

マンハッタン距離

距離ベクトル$${(x,y,z)}$$のそれぞれの絶対値の和で計算されます。

$${\bold{\text{\textbardbl}m\text{\textbardbl}_1}=\text{\textbar}m_x\text{\textbar}+\text{\textbar}m_y\text{\textbar}+\text{\textbar}m_z\text{\textbar}}$$

図1の濃い青ボクセル(distance=1)の例で言えば、向かって左の青ボクセルを注目ボクセルを基準にベクトルで表すと、$${(-1, 0, 0)}$$ですから、これを式に当てはめると、次のようになります。

$${\bold{\text{\textbardbl}m\text{\textbardbl}_1}=\text{\textbar}-1\text{\textbar}+\text{\textbar}0\text{\textbar}+\text{\textbar}0\text{\textbar}}$$

よって、distance=1であることがわかります。

では、向かって左上ではどうでしょうか。こちらの場合、少し薄い青色になっています。これは、distanceが1よりも大きいためです。実際に確かめてみましょう。

$${\bold{\text{\textbardbl}m\text{\textbardbl}_1}=\text{\textbar}-1\text{\textbar}+\text{\textbar}-1\text{\textbar}+\text{\textbar}0\text{\textbar}}$$

よって、distance=2ですから、たとえ見た目上ではすぐ左上であっても、濃い青色ボクセルにはならないということです。

ユークリッド距離

ピタゴラスの定理で計算します。

$${\bold{\text{\textbardbl}m\text{\textbardbl}_2}=\sqrt{m_x^2+m_y^2+m_z^2}}$$

図1ではユークリッド基準はマンハッタン基準と似ていますが、異なる部分もあります。四隅の膨らみの部分です。向かって左上のボクセル(注目ボクセルからのベクトルは$${(-2,-2,0)}$$)を例に、違いについて確認しておきます。

まずは、マンハッタン基準で計算してみます。

$${\bold{\text{\textbardbl}m\text{\textbardbl}_1}=\text{\textbar}-2\text{\textbar}+\text{\textbar}-2\text{\textbar}+\text{\textbar}0\text{\textbar}}$$

distance=4となりました。

ユークリッド基準で計算します。

$${\bold{\text{\textbardbl}m\text{\textbardbl}_2}=\sqrt{(-2)^2+(-2)^2+(0)^2}}$$

distance=2.828となり、切り上げて、distance=3となることがわります。

チェビシェフ距離

テクスチャ特徴計算において一般的に広く用いられている距離です。ベクトルの最大値をdistanceとして捉える方法になります。

$${\bold{\text{\textbardbl}m\text{\textbardbl}_\infty}=max(\text{\textbar}m_x\text{\textbar},\text{\textbar}m_y\text{\textbar},\text{\textbar}m_z\text{\textbar})}$$

最大値をdistanceとして捉えるため、例えば、distance=1の場合、注目ボクセルの 8 近傍すべてがdistance=1として認識されます。

画像特徴の計算時にはデフォルトの距離アルゴリズムで計算が行われると考えられますが、テクスチャ計算時、distanceは重要なパラメータになりますので、ここで示したような距離の計算の基準が変わると、得られる特徴量の結果も変わります。

余談ですが、||…||という数学記号は、ベクトル空間における「長さ」を表現する概念であるノルム(norm)を意味します。マンハッタン距離は別名L1ノルム、ユークリッド距離はL2ノルム、チェビシェフ距離は最大値を使うので、L∞ノルム(無限大ノルム)とも呼ばれています。

距離を用いたテクスチャマトリクスへの重み付け

距離を用いた重み付けは、IBSIでは、テクスチャファミリーのデフォルト操作として位置づけていません。つまり、操作そのものが非推奨です。ただし、PyRadiomics [VanGriethuysen2017]などのソフトウェアでは実際に実装されています。具体的には、テクスチャマトリクスを取得後に、距離を重みに換算し、マトリクスへ重み付けした後に、各種特徴を算出します。これは例えば、局所的な信号強度をより強調するためなどのモチベーションで使用されることがあります。


RadiomicsJの引用はこちら

Kobayashi, T. RadiomicsJ: a library to compute radiomic features. Radiol Phys Technol 15, 255–263 (2022). https://doi.org/10.1007/s12194-022-00664-4

RadiomicsJのリンク

https://github.com/tatsunidas/RadiomicsJ


Stay visionary

この記事が気に入ったらサポートをしてみませんか?