Re - ImageJで学ぶ!: 第1回 ImageJってどんなソフトウェア?で学ぶ!

2015年7月16日木曜日

第1回 ImageJってどんなソフトウェア?で学ぶ!

第1回は、 「第1回 ImageJってどんなソフトウェア?で学ぶ!」と題して、ImageJの概要や利用方法の一部を紹介させていただきます。

ImageJの概要


以下、参考記事(ページ下部参照)を援用してご紹介させていただきます。

ImageJ(http://imagej.nih.gov/ij/)は、Macintosh(Mac)で走るフリーウェアソフトの「NIHイメージ」と同様、JAVA画像処理プログラムで作成されたフリーウェアソフトです。NIHイメージは、医学界では知る人ぞ知る強力なMacOS用の画像処理ソフトウェアであり、アメリカ合衆国のNIH(National Institute of Health)で開発されました。
しかしながら、MacOSだけで動作するという条件ではユーザー数と汎用性に制限があるため、Unix、MacおよびWindowsすべてにおいて動作するJava言語によって、画像処理プログラムが再編集されました。
このプロジェクトリーダーはNIHのWayne Rasband氏です。
1997年ごろのバージョン0.X版から、またたく間に世界中のユーザーからのプラグインプログラムが実装され、現在では、NIHイメージの画像処理機能を遥かに凌ぐ勢いで、高機能化されています。
日本においてもImageJのユーザーは医療界を中心に急速に増加しています。

ImageJの初期の開発を担ったWayne Rasband氏は、現在もNIHでVolunteer software developerとしてご活躍されています。ユーモアが溢れる方ですね。

ImageJの特徴


ImageJは多種多様な画像処理に簡単に使えることに加えて、次のような特徴があります。
  1. Mac、Linux、WindowsなどのJAVAと互換性のあるOSにインストールできる。
  2. 読み込み可能なピクセル濃度レンジが広い
  3. 読み書き可能なファイルフォーマットが豊富
  4. マルチスレッドかつ高速処理(DICOM画像1枚0.1秒もかからずに表示)
  5. プラグインコードを書くことによって、オリジナルな画像処理、解析プログラムを実装できる
  6. 世界中の大学研究の中で生まれる最新のアルゴリズムがプラグインとして公開されている
  7. ImageJを用いた医用画像解析や顕微鏡画像処理などは、数限りないバリエーションがある(2D、3D、動画、複数画像読み込み、特徴量解析、統計解析、三次元解析、オリジナルGUI(Graphical User Interface)の作成など)

医用画像を用いたImageJの活用例


活用例として、乳房X線写真を利用してみます。

まずは、画像を表示します。

(ドラッグドロップやメニューファイルからオープンできます。)
(JPEG形式などの場合は、読み込んだ後にImage>Typeから16bitを選択して、グレースケール形式に変換しておきます。)
 
フーリエ変換して周波数空間を可視化します。

(マンモグラフィー画像を表示した状態でProcess>FFT>FFT)

 周波数空間をグラフで見てみます。

(上記FFTを実施した状態で、Analyse>Surface Plot ※表示設定はデフォルト)

へシアンフィルターで微小石灰化を強調表示します。
(へシアンフィルターはPluginです。こちらのURLから取得できます。http://www.imagescience.org/meijering/software/featurej/)

まず、スクエアROIで関心領域を選択

 (拡大機能で少し拡大して、四角い関心領域(ROI)を任意に設定)

関心領域を別ウィンドウに複製

(先ほどの関心領域だけの画像を複製[Image>Duplicate])

へシアンフィルターを使って微小石灰化のみを強調表示

(関心領域内の石灰化のみが小ウィンドウ内で強調表示されていることがわかります。)
(Plugin>FeatureJ>FeatureJ Hessian(largeパターン)で実施。)

おわりに


本稿では、断片的にではありますが、ImageJで簡単に医用画像解析を始められることを示すために、乳房X線画像の石灰化の解析例を示しました。ImageJは、CT、MRI、PET画像の解析や、多断面画像表示および3次元画像表示も可能です。DICOM形式(非圧縮)の画像であれば、DICOMタグという画像に付帯したメタデータも表示することができます。
医用画像を解析する研究者にとっては大変有用なソフトウェアです。

ImageJのインターフェースは英語ですが、馴染みやすい日本語GUIを提供するサービスもあり、ご興味のある方はご利用されてみてはいかがでしょうか。
(ImageJ日本語版で検索)

次回は、本格的にImageJを取扱っていくためのインストール方法を解説いたします。

References
  • 山本修司:ImageJで学ぶ実践医用・バイオ画像処理.INNERVISION(19・12) 2004, p88-89」


6 件のコメント:

  1. 初心者なんですが、自分の研究がImegejで定量的に解析できるのかどうか教えていただきたいです。

    Imagejだけを使って、二枚の超音波画像の類似度を定量的に解析できますか?初歩的な質問で申し訳ございません。もし解析できるのであれば、大体の骨組みだけでも教えていただければ幸いです。

    返信削除
  2. このコメントは投稿者によって削除されました。

    返信削除
  3. このコメントは投稿者によって削除されました。

    返信削除
  4. コメントありがとうございます。
    結論から申しますと、一般的な特徴量(画像から計測可能な計測値や変化率、テクスチャなどを利用する)を利用した類似度を使うのであれば技術的にはImageJのみ(プラグイン開発も含め)で可能と考えます。

    骨子は、そうですね、すでにある論文のメソッドを参考にしていただくのがベターと思います。例えば、超音波の画像はトランスデューサによっても画像が変わりますし、画像に被験者情報のメタデータが載っていたりするので、関心領域は決めないといけないと思います。関心領域が決まったら、特徴量を決めます。
    これで取得できるデータセットは決まったと仮定します。
    このデータセットを、ご自身で定義された類似度にあてはめたり、機械学習(trainable wekaを参照ください)させたり、SVM(まだプラグインはないかもしれません)を使ったりして、似ている、似ていないの2値に分類する分類器は作れるのではないでしょうか。
    視点を変えて、超音波画像データが豊富にあるのならば、深層学習で教師あり学習をさせて、類似度を算出できるようにするといいかもしれませんね(これはプラグイン開発が必要です)。

    ImageJのプラグインは比較的簡単に作れますから、お時間があればチャンレンジしてみて下さい。Javaを使います。

    ご参考になれば幸いです。

    返信削除
  5. 返答ありがとうございました。解らない言葉がたくさんあり難しそうですが、過去の論文を参考にして徐々に進めていこうと思います。教えていただいた骨子も参考にしていきます。どうもありがとうございました。

    返信削除
  6. 永田様

    非営利で勉強会もやらせていただいております。
    超音波を用いた画像解析にも大変興味があります。
    もしよろしければ個別にこちらにご連絡ください。

    customerservices@vis-ionary.com

    なにか一緒に研究をさせていただくなどもできるかもしれません。
    今、実際にOTの先生や放射線技師の方などともビジネス抜きで一緒に研究させていただいています。
    もしよろしけければ、よろしくお願い申し上げます。

    返信削除