概要

Amazon 社から出た 深層学習カメラ DeepLnes(ディープレンズ) を購入しました! https://aws.amazon.com/jp/deeplens/

width: 600px

そこで今回はサンプルモデルで備わっている"ホットドッグかホットドッグでないか"の学習モデル 「 Hot-dog-recognition 」でコンビニで売っているホットドックに近しい食材でどこまでがホットドックとして検知されるのか!?を試したのでご紹介します。

参考

Deeplens でざっくりと、できること(使用できるデフォルトの学習モデル)を公式サイトから抜き出すと以下7つ。

  • オブジェクトの検出:オブジェクトを正確に検出して認識します。
  • ホットドッグかホットドッグでないか:食べ物がホットドッグかそうでないかを分類します。
  • 猫と犬: DeepLens を使用して猫か犬かを検出します。
  • 芸術的なスタイルの転送:絵などの 1 つの画像から DeepLens によってリアルタイムで撮影された動画のシーケンス全体にスタイルを転送します。
  • 行動認識:歯を磨く、口紅を塗る、ギターを弾くなどの 30 種類を超える動作を認識します。
  • 顔認識:人の顔を検出します。
  • ヘッドポーズ検出:ヘッドポーズの異なる 9 つの角度を検出します。

ちなみに… Google 社の VisionKit(ビジョンキット)にもホットドックの学習モデルが入っているようで、 Kaggle(カグル)でホットドックを検知する学習モデルが提供されているようです。 ※ Kaggle :データサイエンティスト/機械学習エンジニアを繋げるプラットフォーム

カメラという認識システムと相性がよいのでピックアップされているのかもしれません。

準備

学習モデルの Deploy

AWS 側の設定としてまず初期設定を完了させて、学習モデルを DeepLens 本体 に Deploy していきます。

左カラムに Project があるのでクリック。 Project の中に、 DeepLens に Deploy できる学習モデル一覧が表示されます。

今回はホットドック検知用の "Hot-dog-recognition" を選択し、右上の "Deploy to device" をクリックします。 ※ DeepLens と同じ Wi-Fi に接続されていることを確認してください。

width: 600px

学習モデルを Deploy するデバイス一覧が表示されるので、該当のものを選択し、"Review" をクリックします。

width: 600px

既存の Project を Deploy している場合は「消して上書きするけどいい?」と聞かれます。

There is an existing project on this device. Do you want to replace it?
If you Deploy, AWS DeepLens will remove the current project before deploying the new project.

そして、コストのことも確認が入ります。 重量課金制のようですので、利用はご注意ください。

Deployment will incur costs
AWS DeepLens uses various services to help deploy a project to your device. Costs will be aggregated and itemized for review in AWS Billing.

width: 600px

Deploy が開始されると、ロード進行中のテキストが表示されます。 学習モデルの読込みはだいたい4~7分程度。

width: 600px

ホットドック候補たち

今回選んだ検知用パン。

人間の目を通すと右下のパンが「ホットドック」に見えますね。

width: 600px

判定の見え方

Deeplens で映している映像を web でライブプレビューしながら、検知度合を確認することができます。 下の画像のようにストリーミングされた画面の左上にメータ表示で、一致具合が低ければ「 Not hotdog 」(赤)に傾き一致具合が大きければ「 Hotdog 」(緑)に傾く形で判断することができます。

width: 600px

では実際に候補たちを映していきます。

結果

コッペパン

まずは一番遠そうなコッペパンから。

width: 600px

「 Not hotdog 」に100%傾きました。まっ想定通りですね。

バケットサンド

width: 600px

これも「 Not hotdog 」100%。そうだよね~。

アメリカンドッグ

この辺からどうなの?って感じで。

width: 600px

アメリカンドッグは DeepLens から見ても "Not hotdog" みたいですね。

フランクフルト

次にフランクフルト。

width: 600px

色合い的にホットドックに近いこともあり、左上のバーを見る限り "ややホットドック" みたいです。 フランクフルトをくるっと回して、背中側(ケチャップとマスタードが無い側)にした場合、 "Not hotdog" の割合が100%になったので、"ケチャップ" "マスタード" "ソーセージ" の色・カタチが一つの条件のようです。

width: 600px

荒引チョリソー

買ってきた候補たちの中ではこれが一番ホットドックに近そうかなと思いつつちょっと期待!

width: 600px

カメラの確度によって多少誤差があったものの左上のバーはバッチリ「 Hotdog 」に100%振れて "ホットドック" であると認識されました。

まとめ

  • Deeplens 本体への学習モデルの Deploy は4~7分程度
  • ホットドックであるかどうかの検知度合は web ストリーミングでリアルタイムに確認可能
  • 2時間程起動してホットドックの検知を行ってみたものの、それほど本体は熱くならず処理落ちは起こらなかった
  • 起動している間は AWS の利用料としてお金がかかってしまうのでご利用は計画的に
  • "ケチャップ" "マスタード" "ソーセージ" の色・カタチが一つの条件