概要
テレビで動物番組や動画番組、ニュースなどに取り上げられる癒される動物といったらカピバラですよね。
私はビーバーが好きなのですが、動物園でビーバーを見ていた際にとなりにいた家族が「カピバラだー!」と喜ばれていました。こいつはビーバーだぞとは思いましたがいいだせず...。
ビーバーとカピバラって似てるといわれると否定はできないので、少しは知ってもらいたいと思いカピバラとビーバーを機械学習で判別してみたいと思いました。
画像認識だけをお手軽にしたいので、何かないかと探していて見つけたのがTeachable Machie!
↓
↓
Googleが提供している、画像認識モデルをお手軽に作れるサービス、Teachable Machinを使ってみました!
Teachable Machineでは、画像認識、音声認識、人のポーズを認識することができるようです。今回は画像認識をしてみます。
できたもの
最終的には、ビーバーまたはカピバラの画像をアップロードすると、その割合を返してくれるものが作れます。
↓ビーバーの場合
実際にTeachable Machineで画像認識モデルを作成している様子はこちらです。
使ってみる
では、実際に使ってみましょう!必要な開発環境は次の通りです。
- Google chorme
- Webカメラ(PCにカメラが付いていない場合)
- マイク(PCにマイクが付いていない場合)
これだけです。
Teachable Machinのサイトにアクセス!
Google chormeでTeachable Machineのサイトにアクセスします。
https://teachablemachine.withgoogle.com/
アクセスすると次のようが画面が現れるので、「Get Started」をクリックします。
プロジェクト作成
Get Startedすると新規プロジェクト作成画面に移ります。↓
左の「Image Project」で画像認識プロジェクトを作ります。
学習用画像を入力する
まずは学習させるための画像を2種類以上用意します。画面左が学習させたい画像、学習開始、学習後のプレビュー、といった風になっています。
画像の入力にはカメラでキャプチャする方法と、画像ファイルを読み込む方法の2種類があります。今回は画像ファイルを読み込む方法で行きます。
Uploadボタンをクリックして画像ファイルを入力します。Classというのが画像の種類を表しています。分かりづらいので、名前をlass1がビーバー、Class2がカピバラとします。
学習開始!
それでは学習をさせてみましょう。画面中央の「Train Model」をクリックすると学習が開始されます。
学習時間は画像の枚数によって長くなります。
動きを確認!
学習が完了すると、画面右側のPreviewが使えるようになります。最初はWebカメラモードになっているので、Fileモードにします。
その後、てきとうな画像ファイルをPreview画面にアップロードすると、判別してくれます。試しにカピバラの画像をアップすると次のようになりました。
これでビーバーとカピバラの判別モデルを簡易的に作ることができました!!
おわりに
静的な画像であれば認識率は高いのではないかと思いますが、動物園で実際に動いている姿を撮って判別するにはまだまだ精度が足りないのではないかと思います。
また、Teachable Machineにはjs学習済みモデルをエクスポートする機能があるので、いろんなサービスに埋め込めそうですね。