本書を一部お読みいただけます
第Ⅱ部 画像解析
第1章 画像解析・ImageJの基礎と概念
小山宏史
(自然科学研究機構 基礎生物学研究所 初期発生研究部門)
たくさんの画像をもっているのですが,何か計測できませんか? 例えば,野生型と変異体から取得した画像があるのですが,何かの差を定量的に評価できませんか?
「何か計測…」という質問には,「できません」と答えざるを得ません.解析の目的をはっきりさせて,「何か」を具体化する必要があります.
例えば,以下の2枚の画像①と②を見てください(図A).円や正方形などさまざまな構造物が散在しています.2枚の画像間の相違ははっきり言えば無限にあります.その中から,構造物の数の相違,構造物の形態の相違,あるいは,空間的な分布の偏りの相違,など,「知りたいこと」を言語化します.次に,画像処理・解析において実現しやすい数学的な言 葉に置き換えます.特に,画像工学に特有の定量法や統計量があるので,その枠組みに近似できると解析しやすくなります.具体的な例を挙げていきましょう.
ケース1:構造物の数を比較する
方法1
最も原始的な方法は,1個1個手動で数えることです.これも立派な画像解析です(身近に10万個の構造物を数えた強者もいます…).
方法2
閾値法(thresholding)を用います.輝度の閾値を設定して構造物だけが認識される値を選びます(図B).8bit画像の場合,認識された領域とされなかった領域のピクセルの輝度はそれぞれ255と0という,2値化画像に変換されます(e.g. Q32-図2D).Analyze > Analyze Particles...(Particle analyzer)を実行すると,認識されたピクセルの集団のどれが1つの塊(構造物)なのかを自動で判別してくれて,塊の数が提示されます(図C).ただし,この方法では2つの構造物が重なっているものを1つとして計算してしまいます.これを2つに分離する方法を検討するか(Process > Binary > Watershedなどが有効な場合あり.あるいは,手動で修正する:Q76 参照),計測の誤差として扱うか,その研究で必要な精度を考慮しながら決めましょう.
方法3
画像①では,各構造物の間でその面積(=ピクセル数)やピクセルの輝度は,ある程度そろっているように見えます.さらに,2つの構造物が重なった場合には輝度は2倍になっています.そうであるなら,構造物1個当たりの平均的な面積と平均的な輝度がわかれば,それと画像全体での輝度の情報から,構造物の数を概算できそうです.例えば,まず4個くらいの構造物について手動で面積と輝度を計測します.1個の構造物の平均の面積は675.75ピクセル ,輝度の平均は125でした.一方で,画像全体の面積と輝度の平均を計測すると(Analyze > Measure:コラム1),65,536ピクセルと輝度14.856でした.構造物が存在しない領域(背景)の輝度は0でしたので,すべての構造物の輝度の総和は65,536 × 14.856となります.1個の構造物からの平均的な輝度の総和は675.75 × 125なので,この値で割ると構造物の数は11.5個と概算され,ほぼ正解となりました.
多数の構造物を真面目に全部数え上げようとすると,多大な労力がかかったり(方法1),Watershedなどさまざまな工夫を凝らした自動認識法を作ってもそれほど精度があがらない(方法2),ということもしばしばあります(Q76 参照).逆に,方法3のような数学的な枠組みに落とし込んだ方がよい場合があります.実際に上記の例では方法2より3の方が高い精度が出ました.求める精度にもよりますので目的に応じて柔軟に対応することが大切です.
ケース2:構造物の形態を計測する
画像①と②とで構造物の形態が異なるように見えます.まずはどういった形態に相違がありそうか言語化してみましょう.面積,円形か四角形,細長さ,などが異なるかもしれません.円形か四角形かという問題には円形度(Circularity:コラム1)という指標が使えそ うです.細長さについては,1)原始的には手動で長軸と短軸の長さを計測する,ImageJに実装された機能を使うとすると,2)楕円近似して楕円の長軸と短軸の長さを計測する,3)(ノギス)を使ってフェレ径によって計測する,などの方法があります(Feret:コラム1).ImageJの機能を使った計測結果と,手動での計測結果を比較することで,前者が期待する精度を実現できているかを評価することも大事です(Q34,Q51).さらに発展させると,画像1にあるような重なっている構造物を事前に,あるいは,事後に自動で計測から除外することもできるかもしれません.例えば,面積や円形度による選別(フィルタ)を事前にかける〔Analyze > Analyze Particles...(Particle analyzer)の項目で指定できる〕といった処理が可能です(Q61).
以上のように,形態といってもさまざまな指標が存在します.ImageJに実装された指標 に落とし込められれば解析は楽です.適当な指標が実装されていなければ,自分で作らな ければなりません.それがImageJの機能を少し応用すれば実現できることもあります(ケース1の方法3のように).例えば,線の長さを計測(Q64),網目状の構造物の交差点や端点を認識・計数(Q65)させることはちょっとした応用で実現できます.それが無理そうならマクロやプラグインを使って自分で開発する必要が出てくるでしょう.
(小山宏史)
ImageJで計測できる統計量について
ImageJ では構造物のさまざまな属性(輝度,面積,形態情報など)を計測できる機能が実装されています.Analyze > Set Measurements... を選ぶと,面積(Area),平均輝度(Mean gray value),形態情報(Shape descriptors,Feret’s diameterなど)などを計測できる項目が表示されます(図D).必要な項目に チェックを入れた上で,Analyze > Measure or Analyze Particles... や,ROI Manager(コラム2)上でMeasureを押すとこれらの計測値が表示されます.また,共焦点顕微鏡などで得られた複数のZ-スライスからなる三次元の画像については,BioVoxxel や MorpholibJ などのプラグインにいくつかの形態の計測方法が提供されています(プラグインのインストール法はQ88).
ROI Manager
ROI Manager は構造物の属性を計測するときなどに便利です.2値化画像に対して Analyze > Analyze Particles...を使って構造物の認識とその形態情報を抽出できることを本稿で述べました.しかし,輝度の情報は得られません.2値化画像の輝度はわかりますが,元画像の輝度の情報がこのままでは得られないのです.そこで,上記の操作の際にAdd to ROI Managerにチェックを入れておきます.ROI Managerが起動して,各構造物の選択範囲(region of interest:ROI)を記録します(図E).このROIを元画像に適用することで輝度情報を得ることができます.