LoginSignup
4
0

More than 3 years have passed since last update.

在宅勤務の生産性を可視化したい!! -準備編-

Last updated at Posted at 2020-09-02

概要

在宅ワークが標準的な勤務形態になりますが、プライベート空間の中で最大限のパフォーマンスを発揮することはできているのでしょうか?
そんな疑問を抱いたので、男一人暮らしの部屋に定点カメラを設置して、日々の活動をログし続けることにしました。
取得された画像から行動推定アルゴリズムを用いて行動を分類し、時系列で何をやっていたのかを分析することで、日々の行動パターンの最適化ができるのではないか?と思い立ったわけです。
今回はその準備編として、カメラの構築と設置の記録を残したので、お付き合いください。

部材の購入

今回購入したものは以下になります.

あとは電源ケーブルやケーブル固定のためのモールなどを諸々. 1台につき合計2万弱. 2台作ったので10万円給付金の3分の1くらいを使ったことになります.
ただ、ラズパイは4GBもいらないしカメラも無駄にハイスペックなものを選んでしまったので、もっと原価は抑えることはできますね.
余談ですが特に買って良かったのは UTEBIT カメラマウント です.
IMG_4593.jpg
どこへでも簡単に装着できるカメラマウントで、とても使いやすい. 休日には外干しの布団を固定するのにも利用できるため、正直買いです.

カメラの組み立て

ラズパイとカメラはフラットケーブルで接続します.
IMG_4591.jpg

完成形はこんな感じです.

クランプ -> ブラケット
               -> ラズパイ
               -> マウント -> カメラ

IMG_4589.jpg

ラズパイの設定

定点カメラでやりたいことは非常にシンプルです.

  • 10時から22時の間、1分に1回写真を撮影.
  • 撮影時刻の文字列をファイル名にして保存.
  • 週に2~3回たまった画像をローカルPCにダウンロード.

ラズパイの初期設定(OSインストールなど)は済んでいるとして、以下の設定を行いました.

ssh接続

ipを固定してssh接続します. 無線LANに接続しているので, dhcpcd.conf の wlan0を編集します.
DHCPで被らないであろうIPを適当に当てておきます.

/etc/dhcpcd.conf
interface wlan0
static ip_address=xxxx.xxxx.xxxx.122/24
static routers=xxxx.xxxx.xxxx.1
sudo reboot

これで指定したIPへssh接続できるようになります.

画像取得コマンド

Piカメラを利用して画像を取得する際には, raspistill を利用します.
基本的には -o <file_name> オプションをつけて実行すれば簡単に撮影できますが、回転や画像サイズの指定などの色々なオプションが用意されています.
https://www.raspberrypi.org/documentation/raspbian/applications/camera.md

今回はカメラを逆向きにして吊るすため180度回転の設定と、ストレージの圧迫を避けるためVGAサイズの設定を行いました. ちなみにこの設定で得られる画像サイズは 250kBくらいです.
実行スクリプトはこんな感じになりました.

camera.sh
fn=$(date +%Y%m%d%H%M%S)
now=$(date +%H%M%S)
sup=$(date --date "21:59:59" +%H%M%S)
inf=$(date --date "10:00:00" +%H%M%S)
if [ $now -lt $sup ] && [ $now -gt $inf ]; then
        raspistill --rotation 180 --width 640 --height 480 -o /home/xxx/Pictures/surveillance/${fn}.png
else
        echo " "
fi

cronの設定

定期実行のためにcronを利用します.

crontab -e

で開かれるエディタにおいて、以下を追記します.

*/1 * * * * /home/xxx/Pictures/camera.sh

これでラズパイ側の設定は終了です.

ピントの調節

Piカメラのピント調節に苦労したので、その記録も残しておきます.

RTSP配信

raspistill で撮影した画像を確認しながらピントを調節するのは無理なので、RTSPで動画をローカルPCに配信することにしました.
以下の記事を参考にさせていただきました.
https://dev.classmethod.jp/articles/raspberry-pi-rtsp-server/

RTSP配信する際には -U オプションでユーザ名とパスワードを設定しておくといいです.

v4l2rtspserver -U <user_name>:<password>

レンズについて

説明書に従ってカメラを組み立てて、RTSP配信してみたところ、全くピントがあっていない...。
公式のドキュメントを参照して、NEAR の限界までくるくる回したけど一向にピントが合わなかったのですが、解決法はあまりに単純でした.
https://static.raspberrypi.org/files/product-guides/Typical_CS-Mount_Lens_Guide.pdf
test.png

以下画像の黄色で囲った部分はHQカメラモジュールを購入すると最初から接続されているのですが、これが取れます. この部品のおかげで焦点距離が長くなっていて、いくらやってもピントが合わなかったのですね.

test2.png

この部品を外してピントを調節して、カメラの準備は完了です.

所感

意図した通りに動作することが確認できたので、試運転として3日間弱撮影し続けてみました. 本日停止してストレージを確認したところ、私の部屋と私の画像が 1742枚 保存されていました.(ちなみにほとんどPCの前に座っていました笑)

まず、この3日間のストレスは半端じゃなかったです. 最終的にこの画像を見るのは自分以外いないのにもかかわらず、見られているという感覚が常に付き纏います。最も安全なプライベート空間であるはずの自宅がこの監視カメラによって侵食されてしまい、1つ1つの動作にストレスを感じてしまうようになりました.
おそらく継続的に運用すれば慣れていくのでしょうが、このようなカメラの導入には心理的ストレスが伴うということを身を以て体験できました.

巷ではワーカーの生産性の管理のために監視ソフトを導入しているケースも多々あるようですが(目蓋の動きを監視して眠気覚ましの冷風を出させるソリューションも一時話題になりましたね笑)、生産性の向上とワーカーの心理的安全性の担保のトレードオフはかなり重要な問題になるのではないかと思いました。そもそもカメラを使わないとか、使ったとしても情報の削減を行うとか、何らかの工夫は必須です。それでも解決できるのかな。。。

とはいえ実験としては非常に興味深く、例えば自分が1日の時間の何%を座って過ごしているのか、とか、基本的な生活習慣を記録するだけでも面白そうな解析はできそうな気がしています. 継続的にデータは取ってみようと思います.

今後

取得された画像のアノテーションとか行動推定のモデル設計とかなかなか骨が折れそうですが、進捗があり次第また記事を書きたいと思います. 「こんな解析してみたら?」というアイデアあれば、ぜひコメントに残していただけると幸いです.
お付き合いいただきありがとうございました.

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0