ImageJ: 色相 hue の解析

informatics/image_analysis/imagej_hue
8-29-2017 updated

  1. 概要: 色相 hue とは
  2. ImageJ を用いた解析

広告

概要: 色相 hue とは

コンピューターに興味がある人なら,赤・青・緑の 3 つの原色の合成で色を表すRGB モデルを知っているだろう (図 1)。

この場合,色は R, G, B の 3 要素の 3 次元行列として数値化することができ (図 2),それぞれの色は一般に 0 から 255 までの値をとる。たとえば (0, 0, 0) ならば黒,(0, 0, 255) ならば青である。

図1. RGB モデルの例 (3)。

立体で表現した RGB 空間 (4)。


RGB ほどよく知られていないが,赤・緑・青の代わりに以下の 3 つの要素で色を表現するモデルがある。

  1. 色相 Hue
  2. 彩度 Saturation
  3. 明度 Value

この方法は,3 つの要素の頭文字をとって HSV 方式と呼ばれる (図 3)。ただし,人間の認識では value 低いと全ての色が黒に近づいていくので (円柱の底面),このモデルは図 4 のように円錐で表す方が妥当であるとする意見もある。

円錐モデルでも Saturation という言葉が使われることがあるが,本来は Chroma という言葉を使い HCV モデルとするのが正しいようである。

図 3. HSV 色空間の円柱モデル。

図 4. HSC 色空間の円錐モデル。


図からわかるように,Hue は 0 から 360 の値をとり,0 と 360 はいずれも赤である (5)。Saturation および Value は 0 - 100% で定義されることが多い。


広告

ImageJ を用いた解析

この方法のメリットは 色の違いを数値で表せる ことにある。

対象サンプルの色が変わるような実験を考えてみよう。溶液ならば吸光度を測定して数値化するところだが,スライドなどで画像のデータしか得られなかった場合はどうするか?


実例:赤と青

下の写真で実際に試してみよう。

画像を ImageJ で開き,Image - Type - HSB stack とする。これで画像が Hue, Saturation, Value の 3 枚に分解される。切り替えは横スクロール。

Hue の画像で,まずは右上の一様に青黒い部分を 30 x 30 ピクセルの範囲で選択し,Analyze - Histogram とする。選択範囲のピクセルの画像がもつ値がヒストグラムで表示される。

まず 30 x 30 で選択したので,Count は 900 である。つまり,900 個の点が 0 から 360 の hue という値をもって選択範囲に存在しているということになる。ただし,ImageJ では 0 から 255 の値に変換されているようである。ここはあとで確認してみたい。

選択範囲の色はほぼ一様であり,予想された通り値は 160 -166 の範囲内に分布する。平均値は 163.069 で 標準偏差も 1.095 と小さい。

次に,同じ 30 x 30 を雲と空が混在する部分に置いてヒストグラムを作ってみる。できれば,青の色も残っているあたりがよい。下のヒストグラムは,空の画像の右下コーナーの少し上,青とオレンジが混在するあたりのものである。

青の 160 付近と思われるピークはまだ残っているが,そこからマゼンタと赤にかけてブロードなピークが認められる。ほぼ目による認識と一致する数値が得られている。

以上のような解析により,「色の変化」を数値で表現することが可能になる。必要な場合に試してみてほしい。ただし,以下のような問題が残されている。

  • 目で見て色が違っていても,実際に上記の解析をすると Hue ではなく明るさの変化だったりする。
  • ヒストグラムが複数あるとき,その分布パターンが異なることを統計的に示すのは難しい。ピークが一つなら平均と標準偏差で良いが。

コメント欄

一言コメントをどうぞ! (基本500字まで - 100字のページもあるかも)


このコメント欄は各ページにあるので、いつ管理人がコメントを見ることになるのか分かりません。内容について質問がある場合は、下のリンク先のフォームから質問頂ければ、早めに返信するようにします。


References

  1. By HSV_color_solid_cylinder.png: SharkDderivative work: SharkD  Talk  - HSV_color_solid_cylinder.png, CC BY-SA 3.0, Link
  2. By Hcl-hcv_models.svg: Jacob RusHSV_color_solid_cone.png: SharkDderivative work: SharkD  Talk  - Hcl-hcv_models.svgHSV_color_solid_cone.png, CC BY-SA 3.0, Link
  3. By Quark67(Modified color by Monami) - Image:Synthese+.svg, CC 表示-継承 3.0, Link
  4. By 英語版ウィキペディアSharkDさん - en.wikipedia からコモンズに移動されました。 Transfer was stated to be made by User:nopira., GFDL, Link
  5. By w:ru:User:Kalan - Own work, Public Domain, Link
  6. ImageJ で特定の色域の面積を測る方法. Link: Last access 8/29/2017.
  7. Pixabay free image. Link: Last access 8/31/2017.