画像処理を行うための方法とツール metamorph matlab mathematica stellaimage lumina...

30
第185回 農林交流センターワークショップ 植物・作物育種におけるフェノーム解析 ~はじめて画像処理を行う研究者のための入門実習~ 画像処理を行うための方法とツール 東京大学 / エルピクセル (株) 湖城

Upload: phungtruc

Post on 19-May-2018

247 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

第185回 農林交流センターワークショップ植物・作物育種におけるフェノーム解析

~はじめて画像処理を行う研究者のための入門実習~

画像処理を行うための方法とツール

東京大学 / エルピクセル (株) 湖城 恵

Page 2: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

研究データにおける画像の説得力百聞は一見にしかず | Seeing is Believing

100のデータを示すよりも1枚の画像から伝わることが多い場合もある

わかりやすい画像は、良くも悪くも「説得力」がある

Page 3: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

研究データにおける画像の説得力百聞は一見にしかず | Seeing is Believing

科学者は安易に信じない

画像の説得力に頼りすぎない騙されない という意識が重要

画像を客観的・定量的に評価する必要がある

目の錯覚が楽しい!驚きの“トリックアート”40選http://fundo.jp/8923 より引用

Page 4: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

��'�222RMF���

LSU�222��X.�XQKN�

�"��

��-%�

����'�

"�*�EX�38 ��I;BDA9I4�"�57GX ��'D�0F�#<@6C61�D�0J/6@69X �#=I( �,F +>:J�H<X 4PWO5B<@( =I-%Y

"��!: 1

"��!: 2

"��!: n

*��+�

PWO�

*�-%�

$��

��-%B*�-%2(�?D)�)

(��F3��TPV&)�

実験データと画像の関係 | 画像 ≠ データ

Page 5: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

画像処理を行うための方法とツール

Contents・画像処理・解析 | アナログとデジタル

・画像処理ソフトウェア | Photoshop, R, ImageJ...etc

・画像処理手順の見える化 |履歴表示と記録

・自動処理

・拡張性 | pluginの使用と開発

・まとめ | 機能一覧

(時間があれば) ImageJの基本的な操作方法

Page 6: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

アナログな方法とデジタルな方法

株式会社 中村製作所http://www.bestool-kanon.co.jp/3_2.htm より引用

以前は,画像を紙に印刷しノイズや定規などの測定装置を用いて定量評価が行なわれていた

しかし,計算機の速度や画像処理技術の高まりとともに画像処理ソフトウェアを用いた定量評価が求められている

(ノギスを操作する手の誤差,測定者による誤差など客観性は劣る)

Page 7: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

画像処理・解析ソフトウェア画像を扱うソフトウェアは多い

Photoshop

R / RStudio

ImageJ

Fiji

GIMP

MetaMorph

Matlab

Mathematica

StellaImage

Lumina Vision

Velocity

WinROOF

Real INTEGE

Illustrator

...etc

※ Photoshopといえば主に画像編集 (フォトレタッチ) を想像するが,画像処理や計測もサポートする

Page 8: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

画像処理ソフトウェアのお値段

無償ソフトウェア

Photoshop

R / RStudio

ImageJ

Fiji

GIMP

MetaMorph

Matlab

Mathematica

StellaImage

Lumina Vision

Velocity

WinROOF

Real INTEGE

Illustrator

...etc

4,980 円/月 400万 円 540万 円

150万 円 (単体販売)

350万 円 (開発販売)

Page 9: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

画像処理ソフトウェアの汎用性?@owN3(-6bz^}451�p.�

Y_]��AB�FI�x=#��

;":879!{U�

?OK!XaQWi3V,�

��M`06Tj �������/2'# ���$RE4bzeLgl%*S64)���

YrT�@\t�D[�vuG#��

YJCT��n3kJ06)��

ms>�<B�4~�T*Pfy�

U!q!=.���������������������������������������&��������� �����

O+�|H��Z[�

��������

[c!hd�

生物画像は多様,多目的.同じ画像でも目的によって処理手法が異なる

特定機能に限定しない限り,汎用性を担保しづらく,研究者自身によるチューニングを必要とする場合が多い

Page 10: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

代表的な画像処理ソフトウェア Photoshop, R, ImageJ

Photoshop

R / RStudio

ImageJ

Page 11: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

代表的な画像処理ソフトウェア Photoshop, R, ImageJ

Photoshop

R / RStudio

ImageJ

高機能な画像編集 (フォトリタッチ) ソフトウェア.基本的な画像処理・解析もサポートされている.最新のバージョンで無くとも機能的には十分だが,自動位置合せなど新たにサポートされた処理もある.

洗練されたユーザーインターフェイスを持つが,高機能すぎて使いづらい面もある.

Page 12: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

代表的な画像処理ソフトウェア Photoshop, R, ImageJ

Photoshop

R / RStudio

ImageJ

フリーソフト.統計処理用ソフトウェアという印象が強いが,画像処理用パッケージを持つ.パッケージ同士の依存関係が少し厄介.画像データの入力から画像処理・解析,作図まで一貫して行なえる.

インターフェイスがCUI.ゲノム科学用ライブラリ “BioConductor” を使用する研究者向け

Page 13: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

代表的な画像処理ソフトウェア Photoshop, R, ImageJ

Photoshop

R / RStudio

ImageJ

フリーソフト.現時点で,最もオススメするソフトウェア.32 bit画像 (輝度が負の数や小数点) を扱える.とっつきにくいUIであり,メニューは英語.マクロやpluginによる拡張性が高い.しかし,和文による参考文献が少なく,ググラビティが低い一面もある.

Page 14: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

Photoshop CS5 のインターフェイス

ツールパネル

解像度やビット震度 の表示

メニューバー

レイヤー

ヒストリー

Page 15: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

Photoshop CS5 のインターフェイス

ツールパネル

解像度やビット震度 の表示

メニューバー

レイヤー

ヒストリー

画像手順はログとして保存可能

Page 16: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

ImageJと比較すると,項目が多い(基本的・必要な処理かわかりづらい)

直感的だが,欲しい情報が欠けている場合も.

Photoshop

ImageJ

Page 17: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

RStudio のインターフェイスエディタ画面

コンソール画面 (作図領域) 画像は別ウィンドウ

Page 18: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

RStudio のインターフェイス

ソースコードをR言語で書く必要がある. (R言語の関数を使用できる)

画像処理用のパッケージが公開されている (EBImage, biOps, RImageBook)

ゲノム科学分野でBioConductorを使用しているユーザー向け?

Page 19: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

パッケージ "biOps" と "EBImage" に,多くの画像処理・解析が既に組み込まれている

関数が多い 扱えるファイル形式が豊富

Page 20: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

•画像データ入力 → 画像処理·解析 → 画像の定量化(数値化) → 統計処理 → plot まで一貫して行なえる

imgThreshold()

Image-­‐Adjust-­‐Threshold

readImage()

File-­‐Open

getFeatures()

Analyze-­‐Measure

hclust()

plot()

Page 21: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

ImageJ のインターフェイスメニュー

ツール

英語で表示されるとっつきにくいがGUI

画像処理・解析に必要な情報が表示されている

機能と操作性の両方に優れている

Page 22: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

画像処理手順の見える化 | 履歴表示と記録記入者 : Kei Kojo 確認者 : Yuki Shimahara 日付 : 1. July. 2014

ߤߌߊߦ߃ߡߊ⭯

ࠆ߇࠻࠶ࡐࠬ ᧦ઙ ��������PO2)(������ࠩ� శ

㔺శᤨ㑆�����OUGE����ኻ‛ �� ᳓ᶐ࠭ࡦ�

↹ಣℂ �ේ↹ψ㑣୯ ��� ߢ � ୯ൻψᄬᢌ

ේ↹ψ㜞ၞㅢㆊಣℂ ���RKZGNU�

ψ� ୯ൻ VTKCPING ᴺ �ψENQUKPI ಣℂ

客観性を担保するために,施した全ての処理を記録しておく必要がある.しかし,1作業ずつ実験ノートに記すのは煩雑.

画像処理・解析ソフトウェアは施した処理を自動で記録・保存

Page 23: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

Photoshop R / RStudio ImageJ

画像処理手順の見える化 | 履歴表示と記録

ヒストリー

画像手順はヒストリーで一覧でき,ログとして保存可能

Page 24: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

Photoshop R / RStudio ImageJ

画像処理手順の見える化 | 履歴表示と記録

R言語でソースコードを書く

Page 25: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

Photoshop R / RStudio ImageJ

画像処理手順の見える化 | 履歴表示と記録

plugin - Macros - Record...で処理手順が記録され,”Create” でマクロが作成される

Page 26: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

自動処理 | アクションとマクロマウスで操作するPhotoshop,IamgeJでも自動処理が行なえる.

Photoshop ImageJ

アクションで施す処理を組み合わせることで,自動処理が出来る

Photoshop CC HELP / アクションの作成および再生方法http://helpx.adobe.com/jp/photoshop/kb/39.html より引用

Page 27: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

自動処理 | アクションとマクロマウスで操作するPhotoshop,IamgeJでも自動処理が行なえる.

Photoshop ImageJ

ImageJ 日本語情報http://helpx.adobe.com/jp/photoshop/kb/39.html より引用

サンプルのマクロ

ImageJのマクロサンプル集http://rsb.info.nih.gov/ij/macros/より引用独自言語であるImageJマクロ言語でコードを書く

Page 28: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

拡張性 | Pluginの使用と開発

Photoshop ImageJ

個人でPhotoshopプラグインを開発しているwebサイトhttp://reddog.s35.xrea.com/wiki/CategoryPhotoshopPlugin.html より引用

例: ノイズ軽減処理に重要なフーリエ変換

※Photoshopは内部で実行しているが,画像を出力しない

Pluginの導入あるいはC言語によるPlugin開発により,機能が拡張される.

多くのpluginが公開されている

Page 29: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

拡張性 | Pluginの使用と開発拡張性 | Pluginの使用と開発

Photoshop ImageJ

多くのpluginが公開されている

本家webサイトhttp://rsb.info.nih.gov/ij/plugins/より引用

Fiji多数のpluginを集めてパッケージ化

Pluginの利用が容易.高機能のpluginが多く公開されている.Plugin開発はJava言語やScala言語

Page 30: 画像処理を行うための方法とツール MetaMorph Matlab Mathematica StellaImage Lumina Vision Velocity WinROOF Real INTEGE Illustrator...etc ※ Photoshopといえば主に画像編集

まとめ | 機能一覧

Photoshop

R / RStudio

ImageJ

インターフェイス

自動処理値段 特徴 OS

4,980 円/月

Free

Free

操作性が良い

統計処理・作図まで一貫して処理

WinMac

WinMacLinux

WinMacLinux

GUI

CUI

GUI

アクション

拡張性

R言語

マクロ言語

Plugin

Plugin

パッケージ開発

操作性と機能の両方に優れている