FC2ブログ

頭と尻尾はくれてやる!

パソコンおやじのiPhoneアプリ・サイト作成・運営日記


CreateMLで2種類の画像を見分けられなかった話

ポケモンGOでエクセレントスローの瞬間って気持ちいいよね?



↑こういうの。カーブスローでエクセレントって気持ちいい!
なので、その部分ばかりを集めた動画を作成しようと数ヶ月かけてたくさんの動画を溜めてる。
そろそろ編集しようと思ったんだけど、結構大量にあるので大変。

そこで、こういう動画の中でExcellent!と表示された瞬間を含む数秒を探し切り取る、というのを自動化しようと思った。

CreateMLを使い、動画内の画像にExcellent!と表示されてるか否かを判断するするよう学習させたい。

そのためにはまず学習用の画像が必要、ということでサイズが300x300の画像をそれぞれ651枚ずつの計1,302枚を用意した(※1)。

Excellentがない場合のサンプル画像

↑一つはExcellent!という文字がない画像。

Excellentがない場合のサンプル画像概要
↑動画内にはいろんな場面が含まれる。

Excellentがある場合のサンプル画像

↑もう一つはExcellent!という文字を明らかに(人間の目で見て)含む画像。

Excellentがある場合のサンプル画像概要
↑先ほどのほどいろいろあるわけではないが、時間帯やタイミングなどでいろんな画像になる。

この二つを判別させたいわけだ。


Create MLで学習させmlmodelファイルを得る
↑これと同様にして学習させる。今回の場合はCrop, Expose, Noiseにチェックを入れた↓

CreateMLでの初期設定スクショ

学習開始から2時間28分で学習完了。

CreateMLでの学習結果

↑その結果がこれ。

Training 72%
Validation 68%
別途用意したテストデータ(40枚)に対して55%て、、、
全然ダメじゃないか、、、😩


データ数不足?いや、動物を見分けるのにもっと少ないサンプルでできてる例(※2)がある。
CropやExposeを有効にしてるからもっと学習したらよくなるんじゃないの?などと考えたりしていたのだが、、、

Create MLでMNISTの分類器を作ってみた - Galapagos Blog
↑こちらを読んでると、今回の課題自体がCreateMLに向いていないのか?という気がする。CreateMLは転移学習らしいので、形状を見分けるような課題に対してはいい結果がでるが、今回のような文字の有無を見分けるという課題にはそぐわないのかもしれない。



※1 機械学習用の画像作成のために、動画のある場所からある場所までで画像を作成するmacOSアプリを自作した。

機械学習用画像の作成ツールスクショ

↑こんな感じで1がExcellent!が出ているところで、0は出ていないところ(画像は撮影用なのでずれてるけど)。動画の全体の中でExcellent!が表示されている時間は短いので、0に相当する部分は間引いて両方の枚数が同じになるようにしている。


※2 参考サイト
Create MLで簡単に機械学習を体験する - Qiita
CreateMLを使ってさらっと画像認識させてみた - Qiita





<< フォレストアドベンチャー祖谷へ行った  TopPage  休暇村讃岐五色台のキャンプ場へ行ってきた >>

コメント


管理者にだけ表示を許可する
 

トラックバック

トラックバックURL
http://ringsbell.blog117.fc2.com/tb.php/1255-61c3aa8e




Copyright ©頭と尻尾はくれてやる!. Powered by FC2 Blog. Template by eriraha.

FC2Ad