webcam で視線認識
Webcam なんでもやろうシリーズの2つめ。視線認識(Eye tracking) です。探したらすごいのがあったのでシェア。
Gazerecorder です。
デモが楽しいです。「Start Eye Tracking」 を押すと、視線のキャリブレーション(ターゲットがでるのでそれを目で追う)をしたあと、いきなりCMっぽいビデオが流れるので、なにかと思っていたら、視線認識はすでに始まっていた! そしてCMが終わるとこんなような画像が。

ヒートマップですよ。視線の動きもプレイバックできる。精度がどれくらいかわからないけれど。。。
というわけでGazerecorder気に入ってしまったのだけれど、プライバシーとかどうなんだろうか。安心して学生さんに使わせられるのだろうか。会社の情報がwebサイトにないのである。
Crunchbaseで調べると、どうやらポーランドの会社で、Githubにある同名のコードのIDから検索すると、つくったのは大学の先生。一応、プライバシーポリシーで、「カメラからの情報はサーバには保存しない」と書いてある。
https://www.crunchbase.com/organization/gazerecorder
https://github.com/szydej/GazeRecorder
https://agh.academia.edu/SzymonDeja
https://app.gazerecorder.com/Study/Login/Privacy.html
こんなに面白そうなサービスが無料なのかしら、さすが大学の先生、と思ったら、そうでもなかった。無料でできるのは、デモと、自分の調査では5分ぶんの分析しかできない。それ以上やる場合は、「UPGRADE」(ログインしないと見えないメニュー)すると、400ドルで400分ぶん分析ができるようになるらしい(NonProfitとかeducationは150ドルで300分ぶん)。
でも、Windows版でよければオープンソース版?がダウンロードできそう。
https://gazerecorder.com/download-gazerecorder/
というわけで、使ってみようと思ったのと、
こういう、ソースは公開して、サービスは有料っていうのは、いいなと思った。
ユーザビリティ評価を表情分析で
Py-face など、表情を分析するライブラリがよくある。画像をもとに、表情を happy, fear, sad, surprise… など7カテゴリくらいに分類してくれる。これをつかって、ユーザビリティ評価につながるデータを取るアプリを考えていた。
ところが、アプリ化したところで、ゼミ生さんたちが自宅パソコンにインストールしてくれるとは思えない。もっと手軽な方法を、と思っていたら、javascript と webcam でリアルタイムに表情分析をしてくれるコードをネットで見つけた。これならwebページを開いてもらうだけで(なんらかの)データは取れそうだ。
ちょこちょこコードを改変させて頂いて、7カテゴリの推定度を csvで表示するページをつくった。
(コード見てもらうとわかるけど、webcam画像はサーバ側に送ったりしてないので、プライバシー的にも安全です。使ってみてください。)
https://senseofdigital.jp/FACE/3-emotioncam.html

これをつかって、さっそくyoutubeの動画をみつつ、自分の表情を記録。CSVを numbersでグラフにすると、こんな感じに。

なんだかいいじゃないですか。黄色の線がhappy度合いで、10秒前後と87秒前後で盛り上がっているのは、youtube中のジョークに反応しているからである。
そこで、さっそくゼミで試してみた。youtubeの笑える動画を見てもらいつつ、ログを取ってもらう。わたしが自分一人で試していた時には結構イケる感じがしていたのだが、「先生、これ前髪おろしてると全部fearになります」との報告が。おおお。そんな落とし穴が。
さらに今度はクソゲーをやっているときのログを取ってもらい、不愉快度が見て取れるかと思ったところ。。。「先生、クソゲーすぎて笑っちゃいます」とのこと。。。。確かに、あまりにダメで思わず笑っちゃうってあるよね。
というわけで、道は遠く険しい。というか、検出できるのは「表情」であって、内面の気持ちではない、というのを再確認したのであった。