物理測定実験 2018/04/17

分光放射計MS720を使って芝生の分光を計る


 レーザーを除けば, 光は異なる波長の電磁波の重ね合わせである. そして, 光をそれぞれの波長域に分けることを分光という. また, 日本語のスペクトルは分けられた光を指す. 今回の測定実験では, MS720という機種の分光放射計を用いて, 芝生(というより雑草かも)の分光を計る例を紹介する.


[物理のお話 - ややこしい話なので, すっ飛ばしても大丈夫です.]
 本実験の内容を理解するために, 熱放射を理解する必要がある. すべての物体はその物体の温度に応じて電磁波(光)を放射している. ここで, じゃあ人間とか地球からも光出てるの? という疑問が浮かんでくる... 答えはYesである. ただし, 人間や地球の表面温度は40°C 程度であり, 可視域の電磁波はほとんど出さない. そのため人の目には人間や地球から熱放射される電磁波は見えないのだ. サーモメーターとか特殊な機械を使えば, 見ることも可能.
 考えたことない人はピンとこないかもしれないが, 目が見えるというのは, 光を感じるということにほかならない. 太陽や蛍光灯が電磁波を発し, それぞれの物体はその一部を吸収しそれ以外を反射する. それぞれの物体の特性によって, 吸収する波長域は異なるため, それぞれの物体の色の見え方は異なる. 今回の分光測定実験では, 芝生がどのように光を反射するかを求める.

 今回求めるのは, 芝生の反射率です. 太陽の入射光を測定し, 芝生から跳ね返ってきた反射光を測定します. そして, 以下の式で反射率を計算します.

R (反射率) =      Φr (反射光) 
 Φ (入射光) 

入射光, 反射光の単位は今回「nm」です.


 そんなこんなで, 芝生の反射率を求めていきます

[測定手順]
 1. 入射光を計る. (分光放射計を太陽に向けて計る.)
 2. 反射光を計る. (分光放射計を芝生に向けて計る.)
 3. 再び, 入射光を計る.
  * 入射光を2回計る理由: 入射光と反射光を同時に計ることができないため, 入射光を2回計り平均を取るため.


測定されたデータを用意したので, 反射率を計算してみよう!
データ1 / データ2 / データ3


[Python実装例]

#! /usr/bin/python3
import pandas as pd
import matplotlib.pyplot as plt  

header_num = 13 # headerの行数を入力する。
data_1 = pd.read_csv("./2018_0417_data1.csv",
                   header=None,
                   skiprows=header_num)

data_2 = pd.read_csv("./2018_0417_data2.csv",
                   header=None,
                   skiprows=header_num)

data_3 = pd.read_csv("./2018_0417_data3.csv",
                   header=None,
                   skiprows=header_num)


iter_num = len(data_1)
result = []
for i in range(0, iter_num):
    value = data_2[1][i]/((data_1[1][i]+data_3[1][i])/2)
    result.append(value)

x = []
for j in range(350, 1051):
    x.append(j)

plt.plot(x,result) 
plt.show()
    

 csvファイルの読み込みにpandasライブラリを, 反射率の計算にはnumpyライブラリを, 画像の出力にはmatplotlibを使いました. 多分お決まりパターンなはず! 笑. pandasで読み込んだデータのデータ型はpandas.core.series.Seriesで, そのデータの要素である数値のデータ型はnumpy.float64という... Python不思議発見!

 結果は以下のようになりました. 横軸が波長(nm), 縦軸が反射率です. 軸名加えるの忘れてました...

 このグラフを見ると波長550 nm付近の反射率が高いことがわかります. 芝生は緑色なので, 整合性が取れていますね. 赤色の波長域(波長帯700 ~ 750 nm)あたりも値が高くなっているのは, 密集していない芝生だったため, 土からの反射が反映されたからだと考えられます. 通常の芝生の赤色波長域の反射率は低いはずなのだ.


分光を測定した芝生

 また, 人間の目には見えませんが, 近赤外波長域(波長域750 nm ~ 2.5 μm)の反射率が高いのも, 植生の反射率の特徴です. 衛星リモートセンシングでは赤色の波長域(波長帯700 ~ 750 nm)で低い値を示し, 近赤外波長域(波長域750 nm ~ 2.5 μm)で高い値を示す植生の反射率特性を利用して, 赤バンドと近赤外バンドのデータからNDVIと呼ばれる植生指数を計算することができます.

 今回は以上です. 本記事を読んでくれてありがとうございました!