2016年2月21日日曜日

第6回 OsiriXのパワーを引き出すプラグイン総説(簡単にご紹介)

本ブログを第1回からご覧いただいている方は、OsiriXの簡単な使い方や、あ〜、こういうこともできるのかなど、いろいろとお気づきになられていると思います。

今回は、この使い方の一つとして、非常に重要な概念となる「プラグイン」についてご紹介いたします。

プラグインとは、ソフトに機能を追加するための小さなプログラムのことです。

OsiriXは基本機能が充実していますが、ユーザーによっては、

  • あのワークステーションにはついてる機能がついてないなあ
  • もっとここで別の処理ができたらいいのに
  • こういう機能があったらもっと便利なのに
  • このソフトで自分の考えたアルゴリズムが試せたらいいのになあ

など、思うところがあるかと思います。

こういったユーザの希望に応えるのがプラグインによる機能の拡張です。

今回は、OsiriXプラグインについて、これまでに公開されているプラグインの紹介や、その使い方、およびプラグインを利用する際の注意事項と対策などをご紹介していきます。

OsiriXプラグインとは


オザイリクスはプラグインのアーキテクチャがあります。プラグインはオザイリクスに一度インストールするといつでも使えるようになります。プラグインは特定のプラグインフォルダ(/Library/Application Support/OsiriX/Plugins)にインストールまたはOsiriX自体にバンドルされ、その拡張子は、.osirixpluginや.plugin拡張子となります。

プラグインはOsiriXのメニューから選択して使います。

(プラグインメニュー選択画面)

見てわかる通り、プラグインは4つのグループに分かれています。
  • Image Filters:画像を操作するプラグインです。
  • ROI Tools:新しいROI追加または既存ROIを使うプラグインです。
  • Database:DICOMファイルの参照とデータベースへの保存などを行うプラグインです。
  • Report:構造化レポートプラグインです。//2016/4月から新規追加
  • Others:他のグループに属さないプラグインです。

この分類はとても重要です。使うときも、作るときも、このグループに沿って使っていきます。

公開済みの公式のプラグインは、プラグインメニュー下のプラグインマネージャから行っていきます。このプラグインマネージャから、インストール済みのプラグインの参照や削除、新規プラグインのインストールが可能です。

(プラグインマネージャ:インストールされたプラグイン参照)

(プラグインマネージャ:新規にダウンロードを選択する画面)

仮に、ダウンロード&インストールを実行すると、OsiriX再起動のポップアップメッセージが表示されます。一旦、OsiriXを終了して、再起動すると、プラグインメニューに追加されます。


OsiriXプラグイン一覧とその機能概要


公式のプラグイン一覧は以下の通りです(2016/2/21時点)。
各詳細は、プラグインマネージャの内容説明メージで詳述されていたり、別にWikiページが作られているので、参考にされてください。

  • ADC map
  • B1_Map
  • BulsEye
  • CalciumScore
  • Coronary Angiography Report
  • Cranial Nerves
  • Dashboards and Analytics
  • Dental3DPlugin
  • DMGS
  • DTI Map
  • Ejection Fraction
  • EP(Edge-Preserving smoothing filter)
  • Export ROIs
  • Fusion Tool Plugin
  • grid
  • Hip Arthroplasty Templating
  • inTag(Cardiac MR tagging analysis toolbox)
  • Invert Data
  • JPEG(JPEG2000 Tester plugin)
  • JPEG to DICOM
  • MRHeart
  • Orthopaedic Studio
  • OrthView(Orthopaedic Pre-operative Planning and Templating)
  • PDF to DICOM
  • Quicktime2DICOM
  • Reporter
  • Resample Data
  • ROI Enhancement
  • Series Same Orientation
  • SNR Calculation
  • T2 Fit Map
  • TAVI Planning
  • Totoku
  • UMMPerfusion
  • VetHP(有償)
  • Volume Calculator

(インストールできるプラグイン一覧:最下段は"Volume Calculator")

この一覧に加えて、BIRAD, PIRAD Liver, TAVI などの構造化ReportプラグインがOsiriXにデフォルトで付随しています。

OsiriXプラグインの使い方ープラグインのインストール、起動方法、使い方・調べ方ー


ここから、プラグインの利用例として、簡単に操作できる"ROI Enhancement"を使って、インストールから機能の実行までを試してみます。例えば、こんなことができます。

(脳腫瘍領域と正常組織領域との信号値の比較)


まず、プラグインマネージャのダウンロードタブから、利用可能なプラグインドロップダウンリストのROI Enhancementを選択して、ダウンロードをします。ユーザ権限確認のためのOSXからのパスワードの要求がありますので、そのまま入力します。


ダウンロードが完了すると、プラグインマネージャのインストールされたプラグインに、追加されます。

ROI Enhancementが追加された

プラグインをインストールしたら、一度OsiriXを再起動します。
そして、初期起動画面で、OsiriXのプラグインメニューを確認してみましょう。
ROIツールに"ROI Enhancement"が追加されていることがわかります。しかし、まだこのままでは使えません。これは、プラグインのグループによって、起動する方法があるからです。例えば、イメージフィルタタイプのプラグインは、2Dビューアを起動してからでないとアイコンがアクティブになりません。ROIツールも同様です。

(起動直後(何も画像を開いていない時)の状態)

ROIツールをアクティブにするために、任意の画像を開きます。すると、ROIツールの"ROI Enhancement"がアクティブに変わります。(ここではOsiriXサンプル画像のBrainxを表示してからの操作を示しています。)


早速、ROI Enhancementを起動しましょう。

(ROI Enhancement起動画面)

今は何もありません。ここから、任意のROIを使ってここにROIを認識させていきます。
2DビューアのメニューのROI選択の中から、楕円ROIを選択し、任意の場所にROIを作成してみましょう。すると、自動的にROI EnhancementがROIを認識して、グラフを描画してくれます。このグラフには、ピクセルのmean, max, minを表示することができます。Filというチェックをアクティブにすれば、meanのグラフの上下に、maxとminを帯状に表示します。

(ROIを一つ作成:縦軸:信号値、横軸:スライス)
※スライスは0からカウントされるので、DICOMタグ上のスライスNoから一つだけずれます。


ここまでできたでしょうか?

ここまでできたら、次は、もう一つROIを増やしてみてください。すると、同じ色のグラフで、ROIが認識されて追加表示されるはずです。

(ROIを2つ作成)

ROI Enhancementの機能の基本的な使い方はこれで終わりです。もう少し使いこなしたい方は、OsiriXメニューのROI>ROIマネージャによって、ROIに名前を付けたり、ROI情報によってROIの色を変えたりすることで、ROI Enhancementにもその情報が反映されて、より快適な解析ができます。解析結果の出力もできます。


ここまでの操作で、最初にお見せしたような解析ができます。試してみてください。

実は誰でも作れるプラグイン


OsiriXプラグインは誰にでも作れます。OsiriXプラグインプログラムの作成はとても楽しく、そしてなんと無料です。(もちろん、ハードウェアを購入する必要はありますが、、。)

ユーザは、オザイリクスのプラグインアーキテクチャに則って、任意の機能追加ができます。よくある例としては、DICOMデータ、ヘッダーデータへのアクセスや処理、特定のシステムとの統合のためのインターフェースなどです。

実際に開発を始めるには、Mac OSX搭載のPCを使います。
プログラミング言語は「Objective-C」です。このObjective-Cはダイナミックかつオブジェクト指向で、JavaやC++などのプログラミング言語に似ています。シンタックスは同じと思っていても差し支えないと思います。もし、JavaやC++を書ける方は、Objective-Cを2日程度学べば、すぐに使えるようになりますよ。

おすすめの書籍は以下のものです。日本語訳も出ているので、興味がある方は調べてみてください。
  • Cocoa Programming for Mac OS X by Aaron Hillegass
  • Learning Cocoa with Objective-C by James Duncan Davidson & Apple,Inc.
  • Programming in Objective-C by Stephen Kochan

開発に利用する統合開発環境は「Xcode」です。
Xcodeは非常に優れた開発環境で、オープンソースのGCCコンパイラに基づいています。

プラグインを作る簡単な方法は、OsiriX Plugins source codeに同梱されている”Plugin Generator”を使うことです。これはAppleScriptで動きます。ウィザードに沿って作るだけで、プロジェクトが自動的に作られていきます。OsiriX Plugins source codeはGitHubから入手できます。

安心してください。作り方については、次回詳述いたします。楽しみにしていてください。

今まで、メーカー開発に頼っていませんでしたか?これからは、自分でつくりましょう!
みなさんの頭の中にある素晴らしいアイディアを形にして、研究に生かすことで、よりよいソリューションの開発・普及が進むと信じています。

こういった活動のスパイラルの原点は、医用画像を作り出す技術者の方々です。

そして、自分が作ったプラグインが素晴らしいものであるならば、ぜひ公開しましょう。
公開する方法には、2つの方法があります。

  1. 教育や普及を目的にオープンソースとして公開する
  2. 実用化を目指して有料で公開する

前者で公開される場合には、Pixmeo社に問い合わせて見てください(下図参照)。

後者でお考えの方は、製造販売ベンダーとの契約などもできるかもしれませんので、前向きに取り組んでみてください(国外の取り組み例:osirix plugins.com:http://www.osirixplugins.com/plug-ins/clinical.html)

最後に


ここまでお読みいただいて、自由度の高いプラグインプログラムを活用したい、作りたくなった方はいらっしゃると思います。

一方で、注意事項もお伝えしなければなりません。プラグインの中には、悪意を持って作られたものもあるかもしれません。オザイリクスはこのようなものも起動できてしまいます。この点については十分に注意して利用する必要があります。

本家から公式リリースされていないものについては、しっかりとソースコードレベルで検証したもののみを、自分のOsiriXで使ったほうが、安心して使えます。

また、自作したプラグインを研究や教育および画像の参照に利用するときにも、しっかりと機能の検証を第三者に依頼をされることをおすすめします。例えば、プログラミングができる知人などでもいいでしょう。こういった検証を行って管理することを、コンピュータ化・システム・バリデーションといいます。

今回は、OsiriXのプラグインについてご紹介いたしました。次回は実際に簡単なプラグインを作っていきたいと思います。

最後までお読みいただき、ありがとうございました。

備考


このようなコンピュータ化・システム・バリデーションを含む、オザイリクスプラグインサポートをご希望の方は、下記までご相談ください。

ビジョナリーイメージングサービスは、日本(特に神奈川の)ユーザーのニーズにいち早く応えるために、GRAPHYを開発しています。オープンソースです。

Visionary Imaging Services, Inc.は、イメージング技術サポートを通じて、創薬研究や医療機器開発など、臨床研究(臨床試験)サポートサービスを展開しております。OsiriXシリーズも販売中です!よろしくお願い致します!

0 件のコメント:

コメントを投稿