Pythonでお絵かき(続・カフェウォール錯視編)
前回の記事でPILというライブラリを使ってカフェウォール錯視を描く方法について書き、結果次のような画像が出来上がった。
今回はより実験刺激っぽく、明度を系統的に変化させながら刺激を作る場合について書こう。
例えば、真ん中の線の明度を系統的に変化させたいとする。
ここでは完全な黒から白まで5段階くらいで試してみよう。まず、明度情報についてのリストを用意する。
#線の明るさのリスト value = [0,64,128,192,255]
そして、このリストを用いて繰り返しの処理を行うのだが、繰り返しのたびに保存するファイルの名前を変えたい。そこで、filenameという変数を作り、繰り返し処理の最初に明度情報を含んだ「cafe64.png」のようなを文字列をその中にいれるようにする。注意するべき点として、明度情報は整数で与えてあるのでそれを文字列型に変換しないとうまくいかない(str関数を使う)。
画像ファイルの出力は、前回と違って繰り返し処理の内部に埋め込む。
for k in value: filename = "cafe" + str(k) +".png" draw.line([(0,61),(620,61)], width = 2, fill = (k,k,k)) #真ん中の灰色の線 image.save(filename)
あとは、前回のコードと同様である。
完成したカフェウォール群がこちら。明度が順番に0,64,128,192,255と増えている。
灰色の場合は明るくなるにつれて錯視量が大きくなっている気がするが、完全な黒と白の場合においては錯視は起きていないように思える。みなさまの目にはどう映りますでしょうか。