AIチームで10日間インターンに参加した三澤です。PETなどの画像撮影装置)の違う画像の変換に関する手法」に関する論文について、Surveyと実装をしました。Laerningの手法です。医療画像診断においては、「MRI画像とCT画像」といった、モダリティの異なる画像の変換にCycleGANが使えるのではないかと研究されています。本記事では、CycleGANに応用ができるMINDと呼ばれる特徴量(正確には記述子)が非常に興味深かったので、紹介して実装していこうと思います。[1]が提案されました。これは組織などに依らず画像の構造を抽出しようというものです。このMINDがCycleGANにも使えるという話が最近報告されています。そのようなデータを大量に用意するのは工数もかかり大変な作業です。教師データがペアでは無い場合、同じ輪郭を持った画像が生成されるとは限らないという点が課題でした。今回注目する論文[2]は、ペアではない医療画像のモダリティの変換において、「CycleGANにMINDという特徴量に基づく損失(Loss)を加える」と教師データがペアである場合にヒケを取らない結果が出た、と主張するものです。ここで、もし構造を抽出するMINDが機能すれば、教師データをペアになるようにデータを集めたりレジストレーションしたりする工程が省かれるということが考えられます。加えてCycleGANでモダリティの変換ができれば画像診断におけるデータ拡張でも今後使えますし、またMINDそれ自身を特徴量として用いることができます。今回はMINDの計算方法が結構複雑なのでそれを解説した後、Keras(Python)で実装をしていこうと思います。MINDの計算方法を画像を表す二次元配列とします。ピクセルの位置を表す順序対のようなものとします。位置の値を表すとします。regionと呼びます)を考えます。regionを表すとします。regionの一辺のピクセル数は奇数を用います。これはMINDのパラメータです。regionと同じshapeの二次元配列になっています。あとで説明するように、MINDは平行移動させたときの相関のようなものを表しています。以下に定義を書きます。値の二乗誤差をpatch上で足しています。regionと同様MINDのパラメータです。勘のいい方はお気づきかと思いますが、二次元の添字をぐりぐり動かして足し合わせているのでこれは二次元畳み込みで表現されます。二次元畳み込みについて詳しくは実装パートで触れます。隣接する上下左右の4ピクセルの集合を表します。以上でMINDが定義されました。それなりに複雑に思う人もいるかもしれないので画像を使って定性的に説明しようと思います。3.7.4requirements(抜粋)tensorflow==1.14.0Keras==2.2.5まず必要なライブラリをインポートします。バージョンによってはTensorFlowのwarningが出る#KerasはバックエンドとしてTensorFlowを指定してください。いう画像と畳み込めば良いです(返す二次元配列はshapeが変わらないようにpaddingします)。平行移動させた画像です。画像を平行移動させる。Transformだと遅いので二次元畳み込みで計算する。Transformをやるより早く処理ができそうです。channel)という順序であることを想定しています。計算できるようになったのでMINDを計算する関数を実装します。nl_region_size)になっている。2(0-indexed)にxの位置を指定するとその点でのMINDを表す。Dataset)[3]で配布されている頭部MRI画像を用いました。MINDを求めてみましょう。MINDうまく構造が抽出できているように見えます!最後に、画像のモダリティが違った状況で、構造が同じなのにMINDが全く違う場合本末転倒なのでそこは検証する必要があります。その検証にあたって、本来ならMRIとCTなどのペアの画像を使って検証できれば良いのですが、残念なことにそのような画像でパブリックなものが見あたりませんでした。そこで今回は、先ほどの画像を適当な非線形フィルタに通したあと強い白色ノイズを加算した画像を使って比較することにします。MIND図のように双方で同じような画像ができているのが見て取れます。今回は強めにノイズをかけて組織がわかりづらいように調整したのですがそれでも構造が見えているので良いと思います。CycleGANで使うにはCycleGANで使う場合、2つのドメインでのGeneratorの生成画像と元の画像のMINDの平均二乗誤差(MSE)などをLossに加えると良いでしょう。最後に今回は画像の構造を抽出するMINDを実装しました。自分はまだ学部3年で自分から論文を読んで実装する機会がなかったため、インターンではそのような機会を与えていただき、さらにアウトプットまでさせていただけることになり非常に良い経験となりました。エムスリーでは随時インターンを募集しているのでこの記事を読んで興味を持っていただいた方は下記リンクを是非チェックしてください。AI・機械学習チームでソフ...2023-09-25エムスリー、まだまだインターンやってます(というか常にやってますw)。こんにちは、エムスリー人事の我如古(がねこ)です。9注目記事はてなブログをはじめよう!m3techさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。