2016年9月14日 更新

【Python講座7】Pythonで画像処理

画像のより詳細な情報を取得します。前回は縦横の大きさ、ファイルの名前だけでしたが、項目をより細かく分類して、タイトル、長さ、幅、(スタック画像なら)スライスの有無、そして、何bitの画像であるのかまでを調べることが出来ます。

1,987 view お気に入り 0
まずは、事例を見てみましょう。
 (690)

実行すると、以下のようになります。(下のウィンドウをご覧下さい。)
 (692)

前回と同様に、getImageによって、画像情報を取得し、impに代入しています。
しかし、今回は、impに含まれている項目についてより詳細な情報を取り出しています。
全部で8項目ありますね。
 (694)

ここで、{}という記号に、何やら沢山の情報が書かれていて見慣れないと思いますので、簡単に紹介します。

{}とは、辞書リストというもので、ちょうど辞書のようにページ番号に対して紐づいた内容を
表示するもので、{要素:中身}という順番で記述し、中身の情報を出力する時は[要素:中身]と記述します。

ここでは、print "image type:",types[imp.type]とありますので、typesという辞書リストの中で、対応する画像の種類を表示します。今回の場合は、カラー画像だったので、ImagePlus.COLOR_RGBに対応しており、image type: RGBと表示されます。

ところで、試しにどんな画像でもよいので、画像ファイルのプロパティを見てみましょう。

ほぼ同じような情報が表示されていることが分かると思います。

次に、チュートリアルのObtaining pixel statistics of an image (and your first function)をご覧下さい。

次に紹介するのは、幅とか画像の種類とか、簡単に分かる情報だけでなく、最も高い値、平均の値、中央値などの統計情報について取得する方法です。以下のコードをご覧下さい。
 (696)

こちらのコードを実行すると、以下のような情報を得ることが出来ます。
 (698)

まず、冒頭の宣言の中で、from ij.process import ImageStatistics as IS という項目があります。

このImageStatisticsは、扱う画像の統計情報に関するClassを示しています。ijというImageJの機能をまとめた
モジュールを扱う過程で、統計情報を使いますよということを言っています。as ISというのは、ISという形で書くと
いう意味です。

具体的には、例えば、画像の一部を関心領域(ROI)とした時に、その中のヒストグラム等の統計量を調べています。

ここでは、options = IS.MEAN | IS.MEDIAN | IS.MIN_MAX とあるように、MEAN(平均値)、MEDIAN(中央値)、MIN_MAX(最小値・最大値)という3つの項目について情報を取得するよと言っています。

それから、stats = IS.getStatistics(ip, options, imp.getCalibration())という形で統計情報を取得し、

return ~で情報を出力しているのですが、ここでよく見ると、ipというまた見慣れない表記があります。

ここで、皆さん、ipとは一体何だと思いますか?もしimpに近いもの?と思われた方はほぼ正解です!

ipとは、image processorの略で、ここでは2次元の画像を指しています。画像1スライスに対応しています。

impと違うのは、impの場合は奥行きや時間軸など3次元や4次元の情報を持っていることです。
impの場合は、z軸方向のスライスを持つ画像データのこともあります。

さて、これまでの画像解析処理は、画像全体から主な情報を取り出していました。

次回以降は、ピクセル単位で編集を行うような画像解析処理を行います。

以下のコードを見て予習してみて下さい!
 (700)

また、参考までにFijiのドキュメント(http://javadoc.imagej.net/Fiji/)と、FijiのAPI(http://imagej.nih.gov/ij/developer/api/index.html)について紹介しておきます。

どんな関数やクラスがあるのか見てみると面白いと思います。
13 件

関連する記事 こんな記事も人気です♪

LP-tech2周年記念#人気記事のまとめ#第5位〜第1位

LP-tech2周年記念#人気記事のまとめ#第5位〜第1位

LP-techが始まってから2周年を迎えました。ここまでLP-techを続けることができたのも読者の皆様のおかげだと思っています。そこで、LP-techの感謝祭ということで、人気の記事を第20位から第1位までをご紹介します。今回は第5位〜第1位までです。
LP-tech2周年記念#人気記事のまとめ#第10位〜第6位

LP-tech2周年記念#人気記事のまとめ#第10位〜第6位

LP-techが始まってから2周年を迎えました。ここまでLP-techを続けることができたのも読者の皆様のおかげだと思っています。そこで、LP-techの感謝祭ということで、人気の記事を第20位から第1位までをご紹介します。今回は第10位〜第6位までです。
LP-tech2周年記念#人気記事のまとめ#第15位〜第11位

LP-tech2周年記念#人気記事のまとめ#第15位〜第11位

LP-techが始まってから2周年を迎えました。ここまでLP-techを続けることができたのも読者の皆様のおかげだと思っています。そこで、LP-techの感謝祭ということで、人気の記事を第20位から第1位までをご紹介します。今回は第15位〜第11位までです。
医用画像位置合わせの基礎⑥ 〜アフィン変換とは?〜

医用画像位置合わせの基礎⑥ 〜アフィン変換とは?〜

今回は、画像位置合わせに用いられるアフィン変換をご紹介します。
木田智士 | 18,367 view
画像の再構成理論〜概要、まとめ〜

画像の再構成理論〜概要、まとめ〜

今回は、以前4回にわたって記事として投稿した画像の再構成理論の概要について述べ、それのまとめをしたいと思います。

この記事のキーワード

この記事のキュレーター

エルピクセル編集部 エルピクセル編集部