AIでリモートワーク中の疲れを検知してストレッチ提案をしてくれるWEBアプリを作成してみた


##はじめに
みなさま、こんにちは。
とある企業で社内のデジタル化を推進する部署に所属しているかきもとです。

最近また感染拡大が起こったことにより、当社では在社率30％以下にするという通達が出ました。それに伴い、リモートワークが増えてパソコンの画面と向き合う時間も増えてきました。
長時間パソコンで同じ姿勢で作業をしていると、終業時には肩は重く、目はしばしばになっちゃいますよね！疲労が蓄積すると、作業効率も落ちて、さらに業務時間も伸びるという悪循環に‥。
ベストなタイミングで、休憩をして業務の効率を上げることが出来たらいいなという思いで、疲れを検知していいタイミングで休憩を取るように言ってくれるWEBアプリを作ってみました。

##使用ツール
・Teachable Machine
・CodePen

##完成品
<iframe width="560" height="315" src="https://www.youtube.com/embed/8Vcm-khnwvY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>



##作成手順
####1.Teachable Machineで画像プロジェクトを選択
![①.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/4bb618dd-02d5-1e2a-9df5-27509305605b.jpeg)
他にも音声やポーズを学習させることもできます。今回は、画像を使用します。
![ティーチャブルマシン.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/9f973108-1ff6-160f-2df6-bca48f1d5b55.jpeg)
サンプルを複数登録していきます。出力が正しくできていたら完成です。

####2.CodePenを編集します
WEBアプリを作成するために、CodePenを使用してきます。

▼使用したコード
<p class="codepen" data-height="300" data-default-tab="html,result" data-slug-hash="jOabqYv" data-user="natsumi644" style="height: 300px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;">
  <span>See the Pen <a href="https://codepen.io/natsumi644/pen/jOabqYv">
  Untitled</a> by natsumi644 (<a href="https://codepen.io/natsumi644">@natsumi644</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async src="https://cpwebassets.codepen.io/assets/embed/ei.js"></script>

Teachable Machineで登録した動きにあわせて、コメントを出力します。
今回は業務中（顔が正面を向いている状態）は『この調子で頑張りましょう！』
腕を上に伸ばしている状態では『ストレッチしましょう！』とコメントが出るように設定しました。

##作成を終えて
テレワークで1人で作業をしているといつの間にか時間が過ぎて、2～3時間同じ体制でパソコン作業をしていることがあり、肩も首もコリがひどくなってきたのでこのWEBアプリを作成しました。
『疲れている状態』を示すのに、あくびや瞬きの速度、首の角度や姿勢など色々試してみましたが、うまく識別出来なかったため、今回は『伸びをする』というポーズに限定して作成しました。

今回、動作にあわせてコメントを表示する仕組みにとどまりましたが、実際はLINEbotでおすすめのストレッチをランダムで送信してくれる仕組みを作成したかったです。今回はここで区切りをつけます。
現在制作中のフローを下記に付けます。今後、作成次第追記をしていきたいです。

##作成中‥
####1.作成したWEBアプリをNode-RED上に置く####
まず、CodePenのソースコードを取り出します。
![7.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/657cc7b4-98fd-e857-9e51-6f55abafb631.jpeg)

右下のExportを押して、Download.zipをクリックします。
ダウンロードしたファイルを開いてdistをクリックします。
![8.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/2d41d141-46b2-32cd-90fa-713b6e09046a.jpeg)
その中にindex.htmlが入っているので、これをテキストで開いて全文をコピーします。

####2.Node-REDのフローを作成####
![2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/bdd73560-6ddc-eab7-7ab3-61f9ea620044.jpeg)
図のようにノードを並べます。先ほどコピーしたソースコードはテンプレートへ貼り付けします。
![3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/d4e8c3b9-1eca-30a9-1ca3-4391a8aec16e.png)
Node-REDのURLの末尾に**webapp**をつけて開いてみて自分の作成したWEBアプリにアクセスできるか確認します。
![5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/496a0c0e-bbfc-4206-fe0c-006f74c7a034.png)

##追記##
LINEbotにメッセージ送るフローを作成。
![LINE①.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2487483/96d5e9b9-dcbe-c1c2-ba1d-e64e51979d87.png)

Node-RED側のコードが出来ていないのか、未完成です。。
日々学習を続けます！！


一旦ここまで進めてみました。ここからLINEbotへ繋げていくために、勉強をしようと思います。

読んでいただきありがとうございました😊