2015年11月16日月曜日

第50回 ImageJのバージョンアップと確認方法で学ぶ!

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

今回は、ImgaeJの基本に立ち返って、バージョンアッップの確認方法について触れていきます。lmageJの新バージョンがリリースされるサイクルは短いです。リリースノートは数日の単位で何らかの追加項目が報告されています。以前は使い難かった機能でも、オープンソースコミュニティに参加するプログラマーによって、いつの間にか改良されて使いやすくなっていることもしばしばです

今回は、バージョンアップの中で改良された機能などの一部をダイジェストとして紹介します。

ImageJ Newsとバージョンアップの方法


ImageJの最新の情報は、“lmageJ News”サイト(http://imagej.nih.gov/ij/notes.htmlに掲載されています。このサイトには、いろいろな開発支援ツールや機能が追加されたことをその開発者への謝辞とともに説明がなされています。また、デバッグ情報(プログラムの不具合の修正)なども記載されています。このサイトへは、上記のURLをWebブラウザから検索するか、ImageJメニューのHelp>ImageJ News...からも見れます。ただし、活発に更新されているので、サーバーサイドで編集中のときはアクセスできない場合もありますので、このあたりは理解してあげてください。


ユーザーが、現在使用している古いバージョンのlmageJを上記のような機能追加やプログラム修正がなされた最新バージョンのlmageJに置き換えたい場合は、ImageJのメニューの機能から選択できます。インターネットが利用可能な環境下で、ImageJメニューの〈Help/Update ImageJ...を選択すれば、次のようなダイアログが表示されます。

(2015/11/15時点)

このダイアログのドロップダウンメニューで使用したいバージョンを選択し、OKボタンを押すと、自動的に新規のImageJがリスタートされます。この際オリジナルで作成したプラグインプログラムやマクロのプログラムは保持されるので、バージョンアップによってプログラム群が消えることはありません。

ImageJ Newsの内容について


ImageJNewsについてどのような内容が書かれているか。以下にImageJサイトを紹介します。

1.50a 21 July 2015
  • Thanks to Gerald Torgersen, added the Plugins>Shortcuts>Add Shortcut by Name command and removed the obsoletePlugins>Shortcuts>Install Plugin command.
  • Thanks to SyntonicC, add a "Rotate around image center" option to the Edit>Selection>Rotate command.
  • Thanks to Thomas Julou, cursor coordinates are displayed in pixels in the status bar if either the alt or shift keys are down.
  • Thanks to Radoslaw Ejsmont, the ChannelSplitter.getChannel() method works with RGB images and stacks and it throws an illegal argument exception if the channel argument is out of range.
  • Added the setThreshold(lower,upper,"raw") macro function and the IJ.setRawThreshold(imp,lower,upper,mode) method.
  • Fixed a bug that caused JavaScripts to sometimes unexpectadly display values in the Log window on Java 8.
  • Fixed a bug that caused the eval("js",code) macro function to fail on Java 8.
  • Fixed a bug that sometimes caused the setThreshold() macro function to throw an exception with 16-bit images.
  • Thanks to Megan Hagenauer, fixed a bug that caused incorrect line selection measurements on density calibrated (global) images.
  • Thanks to Jerome Mutterer, fixed bugs that caused a new dialog to be opened each time you pressed shift-ctrl-f in an editor window to open the macro function finder and caused focus to be lost when you closed the dialog.
  • Thanks to Michael Schmid, fixed a bug that caused the particle analyzer to ignore selections on RGB images.
  • Worked around a Java 8 bug on Macs that caused ImageJ to freeze when changing the display mode in the "Channels" dialog.
  • Thanks to Takashi Abe, worked around a Java 8 bug that caused mirrored cursors in synched windows to not be visible.
  • Thanks to Thorsten Wagner, fixed a bug that caused the "Use names as labels" setting in the ROI Manager's More>>Labels dialog to not be persistent.
  • Thanks to Jerome Mutterer, fixed a 1.49o regression that caused live profile plots of wide lines to flicker.

上記のような、新たに追加された機能やマクロ、プラグイン、ImageJのバグ修正のレポートなどが、毎日のようにWeb上で報告されています。ユーザはこの情報をもとに自らもチェックし、さらに改良を追加していくこともできますね。

追加機能によるImageJを用いた検証例


上記の機能追加やバグFixによって何が効率化されたか、青字部分で示した項目だけ見ていきましょう。

  • Thanks to SyntonicC, add a "Rotate around image center" option to the Edit>Selection>Rotate command.
Rotateコマンドで、ROIを画像の中心を軸に回転させることができるようになったそうです。試してみましょう。

(これまでの方法)

(ROIがROI中心で回転)

(追加された機能:画像中心から回転)

(ROIが画像の中心から回転している)

  • Thanks to Takashi Abe(日本の方!!), worked around a Java 8 bug that caused mirrored cursors in synched windows to not be visible.

(マウスカーソルのミラーリングもバグがFixされている。)
Analyze>Tools>Synchronize Windows 
(利用前に、複数の画像を開いておく)

  • Thanks to Thorsten Wagner, fixed a bug that caused the "Use names as labels" setting in the ROI Manager's More>>Labels dialog to not be persistent.
"Use names as labels"設定下で、ラベル名をRenameしても、画面に反映されなかったバグが修正されている。)
Analyze>Tools>ROI Manager

"Use names as labels"設定は、More>>から、Labels...で設定できる。

以上、今回は、ImageJのバージョンアップその内容の確認方法について説明を行いました。ImageJは、日々、バグの修正および機能追加がされており、優れた画像処理や解析機能を開発した場合、のプラグインは、バージョンアップごとにImageJ本体のデフォルトの機能として新たに組み込まれるようになっています。
世界の科学者が利用するImageJ、あなたの手で作ったプラグインを公開してみてはいかがでしょう。多少コード記述方法のセンスがなくたって、有用な新しい処理ができるとなれば、きっとコミュニティが助けてくれるのではないでしょうか。

参考記事:「ImageJで学ぶ実践医用・バイオ画像処理.INNERVISION(24・8) 2009, p100-101」

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

0 件のコメント:

コメントを投稿