Teachable Machineを使って店舗の売場が今月の売場になっているか判定しよう

こんにちは。
小売業で在庫管理の担当をしています。
アナログな作業を多く抱える部署に変革をもらたらすべく、様々なシステムについて勉強をしています。
今回は、TeachablMachineを使って店舗の担当者が自身が作った売場がその月の基準通り出来てないいるかをチェックするするツールを作ろうと考えました。
## 作成の経緯

小売業の現場＝店舗では様々な方が働いています。
パートさんやアルバイト、外国人留学生など年齢や国籍も様です。
社員の指示で売場を定期的に変更したりしますが、それが正しいかどうか現場でセルフチェック出来たら良いなと考えたのがきっかけです


#### 実際の動作がこちらですが。。。

https://twitter.com/wi80L3bJzscufZJ/status/1696441025148154053

<font color="OrangeRed">**・・・残念ながら今のところうまく行っていません(返事が来ない！）・・・**</font>

反省・確認も含めてこれまでの実施をまとめました。

## 使用したツールは以下のものを使用しました

1. Teachable Machine
    URL https://teachablemachine.withgoogle.com/
2. flowforge
    URL https://flowforge.com/

### Teachable Machine
TeachabileMachineは、画像認識や音声認識、動作認識ができるGoogleが提供しているAIのツールです。
プログラミングの知識ゼロの私でも使うことが出来ました。

#### Teachable Machineの始め方
上記URLへアクセスして 【使ってみる】をクリックします。
![TM-1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/c3c6c3ee-34f7-fa36-ac08-17cd9c87592c.png)

#### プロジェクトを選択
今回は画像認識機能を使うので一番左の画像プロジェクトをクリックします。
![TM-2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/ddb66a90-35ef-7430-8af1-aab147fe5e0e.png)

#### 新しいイメージプロジェクトの選択
標準の画像モデルをクリックします。
![TM-3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/51103213-4451-1511-8aa2-52195bb374bc.png)

#### 画像の登録
ウェブカメラまたはアップロードを押して学習させる画像を登録します。
今回はお店の人が売場画像をアップロードする想定なので、アップロードを使用して予め売場で撮った画像を
アップロードしました。
サンプルは多い方がよく（100枚）角度を変えたりしながら撮影しています。
3個種類以上登録する場合は、＋クラスを追加を押すと新しくサンプルを登録することが出来ます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/29fee2e5-ffad-fe1a-cd81-632dad648f41.png)

#### 登録した画像のトレーニング（学習）
サンプルの登録が終わったらモデルをトレーニングするを押します。

トレーニングが終わると【トレーニング済のモデル】と文字が変わります。
右のプレビューで学習の結果を確認してみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/88992bf1-b00e-7e91-f6c8-1ff974fce65d.png)　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/6004157f-321b-d08d-811d-7a50e93964bf.png)



通常はウェブカメラになっていますが、ファイルに変更すると画像を登録出来るようになるので、そこへチェックしたい画像をドラッグ＆ドロップします。
すると登録した画像が表示されて、結果が判定されます（出力に表示）
正しく8月と判定されました。

#### 他のツールで使用できるようにする

他のツールで使用できるようにするため、モデルをエクスポートします。
プレビューの一番上、【モデルをエクスポートする】を押し、モデルのアップロードを押します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/b11dad68-98f3-741f-94f9-1966a38e4399.png)

アップロードが終わると、【共有可能なリンク】のところいコピーの文字とマークが出ますのでコピーボタンを押します。（後ほど使いますが、わからなくなっちゃう場合はメモ帳などに貼っておくと良いと思います。）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/b3a55f35-9799-8ed4-b8d3-9c7389066527.png)

とここまではたどり着いたのですが、まだ道半ばの状況です。

### この先やりたかったこと

この後ですが、下記の記事を参考にさせて頂きましたが、どうしても上手く出来ず、悪戦苦闘中です。

https://qiita.com/kuma_ssss/items/098715c74c087a19aa65

### 起きている現象
起きている現象はNode-REDの画面で下記のように<font color="Red">__【不明なノードが存在するためフローを停止しました。】__</font>というエラーメッセージが出て、LINEやTeachable Machineのノードが使えなくなってしまいました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/15783524-1b48-3e2b-bf92-19bb4e83e388.png)

パレットから<font color="Red">__【分析】__</font>の項目が消えてしまい、現状手詰まり状態です。**

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/9d2a6fa1-4019-fdad-de2f-434bfe19a8da.png)


Teachable Machineは1.3.1のバージョンをインストールしているはずで、色々と検索中です。




この後のステップとしては下記のようなことが出来るようになりたいと考えていました。
**<font color="blue">【LINEで撮影した売場画像を送信⇒Node-REDとTeachableMachineを繋いで画像を判定⇒LINEで返す】</font>**

諦めてず調べながら完成したら記事を更新したいと思います。

やりたかったイメージ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3485813/29b5978a-96fc-3137-a3db-ea966dd829bb.png)

### さらにこの先したいこと

実際のゴールは完成した売場の良い例、悪い例をTeachableMachine で判定して、良い例なら
 - <font color="GoldenRod">**【よく出来ています！この調子で販売も頑張りましょう！】</font>**
- <font color="GoldenRod">**【完成まで後一歩。もう一度指示書を確認してみましょう。】</font>**
- **<font color="GoldenRod">【今月の売場画像ではないようです。今月の指示書かどうか確認しましょう。】</font>**

という複数の返事が来るような設定をイメージを目指しています。真ん中の返事は画像の撮り方やお店の環境（棚の種類、照明の具合）などに左右されてしまうかもしれないと考えています。
まずはステップ①完成を目指します。