Xiao ESP32S3 SENSEを使ってAIカメラ
最近AIという言葉をよく耳にしますが、ChatGPTやGemini、Copilot等々様々な
AIが存在しますね。
画像生成AIや音声生成AI、文章生成AIなど、色々なものが人工知能で作成可能になりました。
今回はこの人工知能AIを使ったAIカメラの作り方を紹介します。
Xiao ESP32S3 SENSEのカメラを使って特定の物体検出するAIカメラを紹介します。
ESP32S3 SENSEにSSD1306 OLEDディスプレイを取り付けて何が検知された表示できるようにしました。
使用材料は、パソコンとXiao ESP32S3 SENSEそれとパソコンとESP32S3を繋げるUSBケーブル、SSD1306ディスプレイだけです。
AIカメラでは、学習させた物体を検知できるように、沢山の写真を使ってAIに学習させていきます。
では、AIカメラの作成手順を簡単に紹介します。
1.AIに学習させたい物体を準備
2.AI学習用の画像を準備(写真撮影)
3.AI学習用ツールにサインアップし画像をアップロード
4.AI学習用ツールで画像をタグ付けして特徴生成
5.AI学習用ツールで学習トレーニング
6.AI学習用ツールでArduinoIDE用ライブラリの生成
7.生成ライブラリをXiao ESP32S3 SENSEに搭載(AIカメラの完成)
【1.AIに学習させたい物体を準備】
今回は、家にあったカップと玉ねぎを準備しました
【2.AI学習用の画像を準備(写真撮影)】
画像は、スマホやカメラを使って写真を用意しますが、今回はパソコンにXiaoESP32S3 SENSEを接続して写真を撮っていきます。
ArduinoIDEの中にスケッチ例が入っているのでこちらを使用して、学習用の写真を撮ります。
(スケッチ例→esp32→Camera→cameraWebServer)
スケッチの中の#defineを少し変更します。
XiaoESP32S3用に変更して、1品目に数十枚(20~30枚)学習用の写真を撮ります。
【詳しくはこちら】
【3.AI学習用ツールにサインアップし画像をアップロード】
次にAI学習の協力な助っ人、無料で使用できるAI学習ツール Edge Impulseにサインアップします。
【Edge Impulse】
【サインアップ】
サインアップが完了したら、学習用画像をEdge Impulseにアップロードします。
【画像のアップロード】
【詳しくはこちら】
【4.AI学習用ツールで画像をラベル付けして特徴生成】
次にアップロードした画像にラベル名を付けていきます。
物体を四角で囲んでラベル名を入力します。すべての画像にラベル付けを行います。
【ラベル付け】
ラベル付けが完了したら、特徴生成を実施して画像認識が問題なくできるレベルにあるか確認します。
【特徴生成】
【5.AI学習用ツールで学習トレーニング】
次に特徴生成を行った画像でトレーニングを実施します。
トレーニングには、数分かかります。
トレーニングが完了すると、どの品目でとの程度の精度で検知できるかが表示されます。
【学習トレーニング】
【6.AI学習用ツールでArduinoIDE用ライブラリの生成】
次にライブラリ生成を行います。ArduinoIDE用に生成を実行するとパソコンのダウンロードフォルダーに生成されたライブラリがダウンロードされます。
ダウンロードされたライブラリをArduinoIDEにインストールします。
【ArduinoIDE用ライブラリ生成】
【7.生成ライブラリをXiao ESP32S3 SENSEに搭載(AIカメラの完成)】
ライブラリをインストールするとスケッチ例にEdge Impulseで設定したプロジェクト名が下に表示されるので、こちらからesp32_cameraを選択します。
例: [プロジェクト名]
(スケッチ例→Xiao_ESP32S3_SENSE_AI_inferencing → esp32 → esp32_camera)
このスケッチをxiao esp32s3 sense用に変更していきます。
画面上では、分かりにくいですが不要な部分を書き換えていきます。
今回作成されたライブラリ部分です。
#include <Xiao_ESP32S3_SENSE_AI_inferencing.h>
#include "edge-impulse-sdk/dsp/image/image.hpp"
スケッチ例のesp32_cameraのスケッチでは、ArduinoIDEのシリアルモニターに表示されるのみでしたので、ディスプレイに表示できるようSSD1306のOLEDを取り付けて若干プログラムを変更しました。
これでAIカメラの完成です。
学習させる写真枚数が多いほど検知精度があがりますので、余裕がある方は色々な角度から沢山写真を撮って精度を上げてみてはいかがでしょうか。
物体を見分けることができるAIカメラは、物品の仕分けや、検品など色々なシーンで活用できそうですね。
【詳しくはこちら】













