はじめに
心拍数のログを取りたいけど、いいアプリがない。
30分ぐらい記録したい。
心拍センサ動かない。
画像解析(頬の緑)にも失敗。
無料で。
ということがあったので、メモ。
「カイジごっこ」ができる。
環境
iPhone 12 mini(ライトとカメラが近ければ、なんでもよい)
Processing 4.2
Video Library GStreamer 1.20.3
エクセル
動画撮影
スマホのカメラの設定で、1280x720 30fpsなど、一番小さいフォーマットを選択。
HDRで撮影すると面倒なので、互換性優先のmp4フォーマットを選択。
スマホのライトを付けた状態で、指でカメラを塞いで、撮影。
動画からCSVへ
プログラム保存場所の下にdataフォルダを作って、動画ファイルをいれる。
import processing.video.*;
PrintWriter output;
Movie mov;
void setup() {
size(160, 90);
output = createWriter("out.csv");
mov = new Movie(this, "heartbeat.mov");//data folderにいれる
mov.play();
}
void movieEvent(Movie m) {
m.read();
}
void draw() {
image(mov, 0, 0, width, height);
float r = red(get(80,45));
output.println(millis()+","+r);
if(mov.isPlaying()==false){
output.flush();
output.close();
exit();
}
}
CSVからグラフ作成
CSVをエクセルで開き、挿入>グラフ>散布図をいれると、本投稿の頭にあるグラフが得られる。
ファイル容量
変化の少ない動画のせいか、30秒で2MBだったので、30分はいける気がする。