お久しぶりです。SFCで初めて画像認識をやってみたので、皆さんに紹介しようと思います!
AzureのCusutomVisionって?
画像認識とは、ディープラーニング技術を用いて画像に写ってるものを判別できるシステムのことです。
そして、AzureとはMicroSoftが提供しているクラウドコンピューティングシステムのことです。
ちなみに、Azureはアジュールって読みますw
その、Azureのサービスの中で画像認識に特化したサービスがCustomVisionといい、非常に便利なサービスになっています。
画像認識ってどういう仕組みなの?
今回は画像認識をやってみたのですが、実際にどのように動いているかというと裏でディープラーニングの技術が走っているのです。
たくさんの画像をCustomVisionに読み込ませてその画像に含まれる要素をタグ付けをすることで、そのタグの特徴を見つけてくれるのです。
そして、そのタグの特徴と検証する画像の特徴がどれだけ合致するかということを調べることで画像に含まれる要素を認識します。
つまり、コンピューターが勝手にたくさんの画像から学びを得ることで画像を判別できるようになるのです。
実際にどうやってやるの?
CustomVisionで検索して、このサイトにアクセス!
ここにサインアップして、新しいプロジェクトを作ります。ちなみに、このプロジェクトは最初はうまくいかない場合がありますので一回作ったら消して再度作り直して下さい!
また、プロジェクトを作る際に色々な設定項目がありますが、基本的には変更しないで大丈夫です。
ただ、ドメインは目的に沿って変更をしてもいいかもしれないです!
- General: 一般向け
- Food: 料理の分類向け(食材ではない)
- Landmark: 人工でも自然でもランドマークの見分けに最適化します。人が映ってても完璧に分けます
- Retail: ショッピング向けです。例えば、シャツやドレスを見分けるのに最適化することができます。
- Adult: アダルト要素を含んでいるかどうかを
新しいプロジェクトを作ったらそこに5枚以上の画像を読み込みます。しかし、500枚くらい読み込まないとちょっと正確性には欠けます汗
そして、その読み込んだ画像にタグをつけていきます。
写真を読み込もうとするとダイアログボックスが出てくるのでタグを記入して読み込みます。
画像の読み込みが終わったら右上の緑色のTrainをクリックします。するとディープラーニングシステムが走って共通点をコンピュータが学び出します。
完了したら、上にある『Performance』を確認します。ここで、どちらも95%くらいだったらOK!
ちなみに、右側の確率は正しく分類されるはずの写真を正しく分類できた割合。
左は、現状どれだけ正しく分類できるかの割合です。
これを確認したら、『Prediction』でテスト画像などを読み込ませて実際に正しく分類されるかを確認できます。
確認したら、答え合せをしてパソコンにその画像が何なのかを教えてあげましょう。
まとめ
この結果を利用する際には『Performance』の左上にある、『PredictionURL』からAPIキーをコピーして利用したいプログラムで利用すれば返り値をゲットできます。
めちゃくちゃ、便利に簡単に画像解析を利用できるので皆さん、ちょっと挑戦してみては?
コメントを書く