筆者環境
環境 | バージョン |
---|---|
MacOSX | 10.11.5 |
Processing | 3.1.1 |
プログラムの流れ
- 画像をファイル名で指定する
- 画像のピクセル毎の輝度を取得する
- 輝度は0~255の範囲で整数値で表す
- それぞれの輝度がどれくらいあるか数える
- それぞれの輝度の数をCSVで書き出す
コード
BrightnessCSV.pde
void setup() {
createImageBrightnessCSV();
exit();
}
void createImageBrightnessCSV() {
PImage pimage = loadImage("sample.jpeg");
int[] nums = new int[256];
pimage.loadPixels();
/* 輝度の数をそれぞれ数える */
for (color c : pimage.pixels) {
nums[int(brightness(c))]++;
}
/* 輝度の数の表示(確認用) */
for (int i = 0; i < nums.length; i++) {
println("nums[" + i + "]:" + nums[i]);
}
/* 書き出し用のファイル作成 */
PrintWriter output = createWriter("sample.csv");
/* ファイルにデータを書き込み */
for (int i = 0; i < nums.length; i++) {
output.println(i + ",\t" + nums[i]);
}
output.flush();
output.close();
}