個性を大事に！青物御三家を画像判別！？～みんな違ってみんな良い～

# 新たな領域へ
みなさん、こんにちは！きんたです！
現在、社会人10年目、小売りの会社で採用の仕事に携わっています！

前回の記事では、「Power Automate Desktop」を使って、
フォルダの作成とファイルの振り分けを自動で行うツールを、
初心者ながらにつくってみたので、よろしければご覧ください！

https://qiita.com/kinta5960/items/f55b089268cb6298fe4e

現在私は、デジタルについて学ぶ旅の途中なのですが、
今回は旅の中で、新たな出会いがありました。

それは、「TeachableMachine」との出会いです！
※TeachableMachineは、Google謹製の
「機械学習の独自モデルが作成できるWebアプリケーション」です。

今回は、この「TeachableMachine」を使って、画像判別をしてみたいと思います！

# “青物御三家”とは

いやいや、そもそも青物御三家ってなに？
え、急にどうした！？って話ですよね(笑)

青物御三家とは、一般的に「ぶり・ひらまさ・かんぱち」の3魚種のことを言いまして、

名前は聞いたことあったり、食べたこともあるけど、
見た目はどんなんかわからない！という方も多いと思います。
（実は見た目めちゃめちゃ似てるんです！！）

■ぶり↓
![ぶり.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/56edb857-5a90-4bd9-9682-7ba0faaaf02c.jpeg)


■ひらまさ↓
![ヒラマサ.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/2326300d-1f81-4152-8588-ae906e2132b1.jpeg)

■かんぱち↓
![かんぱち.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/46a07860-e85f-4031-a264-9954007e94bb.jpeg)

上から見たかんぱち
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/701624c7-8a63-4a38-b476-8eefc5321e58.png)


ね？似てるでしょ？(笑)
特に魚になじみがあまりない方にとっては、判別が難しいと思います！

今回はこの子たちをTeachableMachineを使って、画像判別してみようって魂胆です！！

:::note info
「特徴」
◆ぶり
出世魚。大きさによって名前が変わる。
関東ではワカシ→イナダ→ワラサ→ブリ、関西ではツバス→ハマチ→メジロ→ブリ
魚体は厚みがあって丸みを帯びている。胸ビレは魚体中央の黄色いラインに重ならず、口角の形状が角張っている。

◆ひらまさ
全体のフォルムがやや平たくて、ブリよりもスリム。
口角の形状はやや丸みを帯び、胸ビレは体側の黄色いラインに重なっている。

◆かんぱち
上から見たときの「八の字」の模様が特徴的。
名前の由来ともなった目と目の間、人間でいう額から眉間の部分に走る八に見える模様が特徴的。
:::


# LINEbotとTeachableMachineを使って、青物御三家を画像判別させてみた！
#### 背景
今回、TeachableMachineを使って、
何かしら画像判別してみたいな～って思ったときに、
フっと自分の中に舞い降りてきたのが、まさかの青物御三家判別だったわけですが(笑)

これには訳がありまして。

私は現在、会社で採用の仕事に携わっていますが、
今の部署に来る前は、なにを隠そう！水産の仕事をやっていたので、
青物御三家とはそこそこの関係値でした。(笑)
（5年間魚をバリバリ捌いてました！）

※noteで簡単に自己紹介してますのでよろしければこちらもご覧ください↓

https://note.com/kinta5960/n/n748af0d0823b

あと、何より、名前を間違えられるのは魚にとっても悲しいはず。
みなさんも自分の名前を間違えられたら悲しいですよね、、？

魚もきっと同じです😢
いくら見た目は似ていても、人にも魚にもそれぞれ個性があります。

間違えられて悲しい思いをする人（今回は魚）を減らすためにもやってみます！



#### 使用したツール
■[TeachableMachine](https://teachablemachine.withgoogle.com/)
■[enebular](https://www.enebular.com/ja/)
■[LINE Developers](https://developers.line.biz/ja/)

#### 完成したもの

https://x.com/kinta5960/status/1894376710331928736

#### まずはLINE Botの設定
今回は、LINE Botで画像を送るとTeachableMachineで学習した内容をもとにリプライされる仕組みを作ります。

私が初めてプロトタイプを作った際に、
すでにLINE Developersにてチャンネルを作成していたので今回はそちらを使用しました。

https://qiita.com/kinta5960/items/986659fdae591ccb92a0

#### TeachableMachineで御三家の学習
TeachableMachineで、青物御三家「ぶり・ひらまさ・かんぱち」の3種類を学習させます。

本当は、魚体丸ごと一匹をウェブカメラで読み取り学習させる方が精度は上がると思うのですが、状況的に厳しいので画像で学習させました。
（画像もできるだけ多く、色々な角度の写りで学習させるとよさそうです）

![スクリーンショット (172).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/4b76f297-a871-4556-9cc6-468f9aaa5e4d.png)

:::note info
■手順
①画像をアップロード（ぶり・ひらまさ・かんぱち）
②アップした画像をトレーニングで学習させる
③モデルをエクスポート
:::

![スクリーンショット (171)_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/5ef66963-80df-4dd4-bcbc-b67df8d34e40.jpeg)

:::note info
※アップロードしたリンクは後のenebularの設定で使用します
:::

#### enebularの設定
以下の仕組みを構築するため、enebularでノードの設定を行います。

～～～～～～～～～～～
●LINEで青物御三家の画像を送る
　　↓
●TeachableMachineで学習した魚種を画像判別
　　↓
●LINEでリプライ
～～～～～～～～～～～

ノードの設定において、
はじめは、相棒であるChatGPTとセッションしながら進めていたのですが、

今回私がやりたかったことをほぼほぼ網羅しているような記事があったので、
こちらの記事を参考にさせていただきました。

https://atlabo-handson-08.netlify.app/#2

★最終的なフローはこんな感じ！


![スクリーンショット (168).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/a75cccd4-a1a4-436d-accc-b3368acc22b0.png)

:::note info
①http in ノードを設定
②function ノードを設定
③http request ノードを設定
④Teachable Machine ノードを設定
※TeachableMachineでアップロードしたリンクはここで使用
⑤function ノードを設定（画像の判別）
⑥ReplayMessage ノードを設定（LINEに返す）
:::

#### フロー完成後は保存し実行

早速ノードのフロー完成後に、LINEで画像を送ってリプライを待ってみました。

が、既読無視、、
返答が返ってきません。

ひとつひとつノードの設定を確認してみると、
LINEとの連携がうまくいっていない様子でした。

LINEのアクセストークンやチャンネルシークレットの設定ミスはなかったのですが、
webhook URLの設定にミスがありました。
（enebular URLをwebhook URLに設定するはずが、違うURLで設定していたようです）

![スクリーンショット (175).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/715c19fd-a4a6-42cb-8fd9-5283440d891e.png)

![スクリーンショット (167).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3959920/27c62709-4393-4e4a-8ddc-3c543e7e3be8.png)

:::note warn
webhook URLの末尾に「/linebot」を追記するのを忘れず
:::

修正後は無事リプライが返ってきました！

# プロトタイプを作ってみて
今回は御三家のみでしたが、多くの情報を機械学習させることで、
色々なことに活用できそうだなと思いました。

例えば、食材においては、
季節に応じたおいしい食べ方や料理提案、おいしい食材の見分け方など、
欲しい情報が欲しい時に手軽に入手できる世界線も想像できます。

想像できることは創造できる！ワクワクしますね！

今回のプロトタイプは、
現在の業務で、直接役に立つようなものではありませんが、
いろいろな可能性を秘めていそうな気がします。

例えば、採用業務においては、いくつかの可能性が想像できました。

:::note warn
■表情・感情分析による面接支援ができるかも？
　✓面接動画の表情や声色から候補者の緊張やリラックス度を分析
　✓採用担当者が候補者の心理状態を客観的に把握し、評価を補完する材料に
 
■採用担当者トレーニングへの応用ができるかも？
　✓採用担当者自身の面接やコミュニケーションスタイルを録画し、
 　　評価者としての態度や無意識の癖を分析し改善につなげる
   
■内定辞退予測への活用ができるかも？
　✓面接時の表情や回答パターンなどから内定辞退の兆候を予測し対策をうつ
:::

今回のように、身近なことに対して取り組んでみることで、
次につながりそうな様々な可能性を見出せることもあると思います。

まずはやってみる！！
このことを大事にして、クリエイティブな思考を持ち続けたいと思いました。

私の中にフっと舞い降りてきた御三家に感謝です(笑)