2015年9月21日月曜日

第21回 画像の幾何学変換処理(実践活用編)ImageJによるPET-CTフュージョンで学ぶ!

この記事は参考記事を援用して、筆者の考えも交えつつ、記述しています。


1920回では、画像の幾何学的変換の押さえておきたい基礎事項を説明してきました。
今回はその実践的活用法としてPET CTのフュージョンの方法に利用される処理の例を説明します。

先に書きますが、PET-CTビューワについては、第59回で登場します。そのときに、具体的なフュージョンの方法などもご紹介いたします(FijiのPET-CT viewerプラグインを使います)。

しかし今回はこれは紹介いたしません。

今回はその元になるフュージョンの方法に利用される処理の例として、剛体レジストレーションをの初歩を紹介します。

これは、簡単に説明すれば2つの画像(画像セット)を用意して、画像の移動、回転、拡大縮小、閾値処理、その後の複数の領域抽出処理を利用して、お互いの画像の空間位置が最もフィットするように計算し、2つの画像を重ね合わせて表示する画像処理法です。

この画像処理過程で行われるレジストレーション(位置合わせ処理)は、PET-CTフュージョンだけではなく、顕微鏡によるスライス画像群のレジストレーションなどにも活用できます。

画像工学的には、コンベンショナルな手法の組み合わせであるので、ここまでの本ブログを読んできたlmageJのユーザであれば、独自のPET-CTフュージョン用プラグインやマクロが作成可能かもしれません。
また、PET-CTフュージョンの表示だけなく、ImageJの本来の強力で豊富な画像解析機能を使用すれば、FDG集積(standardized uptake value:SUV)などの統計計算やカラー画像解析が簡単にできます。

レジストレーションの一般的なアルゴリズム


レジストレーションのアルゴリズムは、①剛体レジストレーション②非剛体レジストレーションの2つに大別されます。
一般的なPET-CTフュージョンは、対象物が変形しない剛体レジストレーションを施す場合が多いです。
このシンプルに見える方法にもいくつかのやり方があります。

2つの画像の間でランドマークを設定して局所相互相関による多項式アルゴリズムを適用する方法
http://link.springer.com/chapter/10.1007%2F978-94-009-4261-5_20

フーリエ変換を用いて高速相互相関を計算してレジストレーションする方法
http://elib.uni-stuttgart.de/opus/volltexte/2010/5192/pdf/nag10.pdf

ランドマークを用いない自動の相互相関によるintensity remapping argorithm
http://proceedings.spiedigitallibrary.org/proceeding.aspx?articleid=982994

など、さまざまです。

今回は一般的な線形のレジストレーションと剛体の変換法について説明します。
http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=650848&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel4%2F83%2F14206%2F00650848.pdf%3Farnumber%3D650848

まず、PET画像などのノイズの多い画像を対象としたレジストレーションの場合、はじめに画像ノイズおよび画像のバックグラウンドノイズの除去が行われます。
例えば、画像Aと画像Bの和集合の画像をf(x,y)とすると、次のように表すことができます。


もっとも単純なバックグラウンドノイズ除去は閾値Tを超えるかどうかでA画像かB画像に分けられます。


次に、これらの画像群のクラスタリングを行なって、2つのクラスタ同士のコスト関数と呼ばれる定義式が最小化されるようにレジストレーションを行います。
このクラスタリングにもさまざまな方法がありますが、解剖学的に細かい組織に分類してレジストレーションを施行する場合は、画像ヒストグラムから、K-means法を使って臓器分けする方法が一般的に使用されます。
K-meansクラスタリングによるコスト関数の最小化は、例えば、画像の位置jにおける画素値を次のように考えると、


画像全体をIとした場合、コスト関数Jは次の式で表されます。


ここで、mkは次の式で表されます。


ここでは、このJが最小になるのは画素値Xj=mk(差分で0になる)のときですが、最小になるまでK個のクラスの中央値を変更していきます。これがフュージョンの対象となる2画像で行われ、最適なレジストレーションが行われます。
最小値を探すためにレジストレーションを行なっている最中は、剛体変換が行われていますが、この変換が前回から説明している線形の幾何学変換処理です。
3次元空間における剛体レジストレーションの数学的な表現から、さらに想像を現実に近づけていくと、3次元の変換行列演算式は、変換前画像をf(x,y,z)として、変換後の画像をf’(x’,y’,z’)とすると、次のように表されます。


ここで各要素は以下の通りです。


この変換を三次元空間図で表すと、次の図のようになります。


最終的に、このレジストレーションされた画像同士を重ね合わせることを、それらがPETとCTの画像の場合には、PET-CTフュージョンと称しています。
ImageJによる剛体レジストレーションについては、研究用のプラグインが紹介されています。

Philippeらの論文をもとに、http://bigwww.epfl.ch/thevenaz/stackreg/で、StackRegというプラグインが配布されています。このプラグインを例に、簡単な操作例を示します。

まず、このURLで公開されているデータをダウンロードしました。元データはTiffフォーマットのスタック画像になっています。


ここで、テストとして、わざと元画像の一枚目のスライスを15°ローテートさせました。


もうやりたいことはお分かりだと思いますが、剛体レジストレーションを行うことで、先述の画像を基準にして、ローテートした画像の輪郭に合わせて修正され、画像が表示されるはずです。

(実行結果:輪郭のレジストレーションにより、画像が回転して表示されたことがわかる)

操作方法は、先にImageJで元画像スタックとローテートさせた画像を含むスタックを表示しておき、リジットマッチングしたい画像を表示してから、実行します。

今回は、剛体レジストレーションにちょっぴり触れましたが、同じような技術にtemplate matchingというものがあります。例えば、Tseng氏が開発したこのプラグインは非常に有効に利用できます。



是非お試しください。

次回はこのような輪郭抽出に必要となる2値化について解説していきます!

参考記事:「山本修司:ImageJで学ぶ実践医用・バイオ画像処理.INNERVISION(21・9) 2006, p100-102

0 件のコメント:

コメントを投稿