LoginSignup
2

More than 3 years have passed since last update.

posted at

updated at

Organization

CreateMLで、はなさんとみるくさんを後ろ姿で判別できるか

qnoteアドベントカレンダー2018の10日目です。

はじめに

当社には、猫社員が7名在籍しております。
うち5名は兄弟姉妹であるため、判別に少し観察が必要です。
今回はその内の2名を機械学習によって、判別できるかを試してみます。

CreateMLとは

CreateMLとは、たった3行のコードでお手軽に機械学習(画像認識など)をさせることができるツールです。
Create ML | Apple Developer
WWDC 2018のムービー

CreateMLの使い方は、多くの方が書かれているので紹介は省きます。

対象の2名の紹介

では、今回の主役の2名を紹介します。
IMG_3494.png

奥がはなさんで手前がみるくさんです。
どうでしょう?見分けが難しいですよね。

見分けのポイント

それでは、簡単に見分けるポイントをご紹介します。

鼻の線と口周りの色 

みるくはな
(1枚目)みるくさん、(2枚目)はなさん
弊社HPより引用

はなさんには、鼻に縦線があります。
あと少し分かりヅラいですが、みるくさんの方がはなさんより口周りが白っぽいのです。

しっぽ

IMG_3422.jpg IMG_3386.jpg
(1枚目)みるくさん、(2枚目)はなさん

尻尾が、みるくさんは丸っこく、はなさんはシュッとしています。

全体のシルエット

IMG_3367.jpg hana_側面.jpg

(1枚目)みるくさん、(2枚目)はなさん

みるくさんは、全体的にはなさんより大きいです。
愛くるしいので私は好きです。

こんなところです。

画像収集

機械学習でもっとも重要となる作業です。
なるべく、バラエティを持たせる必要があります。

今回は両者共に50枚ずつ用意しました。
MILK

HANA

テストデータ

テスト用として、一応正面・側面・後ろ姿と3種類のデータを用意しました。
難易度も簡単に付けてみたので、みなさんもチャレンジしてみてください。
(答えは最後に記載しています。)

初級(正面)

IMG_3475.jpg IMG_3474.jpg

中級(側面)

IMG_3478.jpg IMG_3476.jpg

上級?(後ろ姿)

IMG_2966のコピー.png IMG_3479.jpg

答え

左側 右側
初級(正面) はなさん みるくさん
中級(側面) みるくさん はなさん
上級?(後ろ姿) みるくさん はなさん

結果

Maxiterations:20、オプションなし

結果、みるくさんの後ろ姿以外がはなさんと認定されてしまいました。
スクリーンショット 2018-12-09 11.37.10.png
スクリーンショット 2018-12-09 11.37.31.png
スクリーンショット 2018-12-09 11.37.47.png

Maxiterations:20、オプション:Rotate/Blur/Expose/Noise

結果はやはりみるくさんの後ろ姿のみが、はなさんに判定されてしまった。
さらにはなさんの割合が96%に上がってしまった。
スクリーンショット 2018-12-09 12.25.11.png

Maxiterations:20、オプションフルチェック

今回は、結果はやはりみるくさんの後ろ姿のみが、正しく判定されました。
スクリーンショット 2018-12-09 13.22.01.png

しかし、今度は逆に、全てみるくさんに判定されてしまった。。。
スクリーンショット 2018-12-09 13.17.22.png
スクリーンショット 2018-12-09 13.17.32.png

まとめ

結局、弊社のみるくさんとはなさんの紹介になってしまいました。

画像認識って、敷居が高い気がしてましたが50枚ずつ画像を集めるだけで、これだけの精度の作れるなんて素晴らしい。
今回はまだ素材が足りないのか、使い方が良くないのか一歩及ばない結果になってしまいました。

次は、CreateMLで作ったCoreMLを使って、iPhoneでカメラを向けたら判定してくれるアプリを作りたいなと思っています。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
2