見出し画像

TechPark AI blockで画像認識!じゃんけんを学習させる手順

こんにちは、K研究員です。

今回はTechPark AI blockのほうでじゃんけんを学習させてみます。

ML2Scratchは動かないけどこちらは動くという場合もあるので、ご自身の環境に合わせて選んでもらえたらと思います。

使い方の例はここから見ることができます。

まずは、training ツールでじゃんけんの画像を学習させます。

こんな画面が出ると思います。zoomやML2Scratchなど他のアプリでカメラを使用していると画像が出てこないので、それらを消してからやりましょう。

覚えさせるときに、なるべく背景がない壁の前などで、一人だけでできる場所を探すといいでしょう。画像認識は背景に弱く、背景を単純にすることで性能が上がります。

画像1

下にスクロールすると、カメラのマークがかかれた箱が出てきます。


画像2

グーを出しながら、左の箱の赤いカメラマークを押します。


画像3

いろいろなグーを出しながら、箱の右上の数字が50になるぐらいまでグーを出し続けます。50ぐらいまで行ったら、左下のカメラボタンが四角に変わっているのでそれをクリックします。そうすると動画が止まってグーは終了です。

同じようにチョキもやります。チョキを出しながら、今度は右の箱のカメラマークを押します。

画像4

チョキもグーの時と同じようにいろいろなチョキを出しながら50になるまでやります。100でもいいですがグーと同じぐらいの数やるといいでしょう。

最後にパーをやります。右の+のボタンを押すともう一つ箱が出てきます。

画像5

箱が出てきたら、同じようにパーを出しながら、カメラボタンを押します。

画像6

こちらもグーチョキと同じくらいいろいろなパーをだしながらやります。

ここまで終わったら、下にあるトレーニングのボタンを押します。

画像7

すると下にバーが出てくるので、いっぱいになるまで待ちます。

終わると、箱の周りに点線が出るようになっていると思います。この点線で今の画像がどれに判断されているかがわかります。

画像8

今、チョキの箱に点線が出ているので、チョキと判断されているようです。チョキを出してみてチョキになるか、グーを出したらグーになるかを確認します。

もしうまく判定されないのがあったら、追加することもできます。

例えば、グーを出しているはずなのにパーになってしまうとしたら、グーを出した状態で、一番左の箱のカメラボタンをクリックして、もう10枚ぐらいうまくできていないグーを登録します。

画像を増やしたら、もう一度トレーニングボタンを押すと反映されるようになります。


画像9

トレーニングすると下にアップロードボタンができています。うまくできたらアップロードを押します。

画像10

そうするとカギをゲットしたという言葉と数字ができます。数字は後で使うので、このままページを閉じずに開いておきましょう。

これで学習は完了です。


学習結果を使う


この状態で上の、カギが使えるtechparkのscratchにアクセスします。

そして、左下の拡張機能から、

画像11

画像12

画像認識をクリック。じゃんけんもありますが、こちらは事前に学習されたじゃんけんが使えるようで、今回は自分でじゃんけんを学習させるので真ん中の画像認識を使います。

緑のブロックが出てくるので、

画像13

ビデオをonにするブロックを持ってきて一度クリックすると右にビデオが出ます。これでOK。ビデオが出ないときなどは、zoomや他のアプリを消してみましょう。

次に「カギを入力=🔑」というブロックに🔑の絵文字を消して先ほどの、カギをゲットしたに続く数字を入れます。

画像14

画像15

これで準備完了です。

プログラムを書いていく

画像16

ML2Scratchは画像が認識されたときイベントとしてスタートしますが、TechPark AI blockでは、「もし」のブロックの中に「1を1.0秒以上見た」などのブロックを入れることでどれを認識したかを判断します。

まず、ずっとを入れて、その中に三つ「もし」を入れます。それぞれの「もし」のひし形の中に「1を1.0秒以上見た」、「2を1.0秒以上見た」、「3を1.0秒以上見た」を入れます。それぞれの「もし」の中に、「こんにちは!と2秒言う」のブロックを入れ、こんにちはのところを、ぐー、ちょき、ぱーに変えます。


画像17

実際にカメラに向けてグーチョキパーを出して実験してみます。

うまくできるでしょうか。グーもチョキもパーも言ってくれない場合は設定が失敗しているのかもしれません。リロードしてやり直してみましょう。

あまりうまく認識されない場合はもう一度画像を登録するところに戻ってみましょう。


無料のプログラミングクラブCoderDojoを運営するにあたり寄付を受け付けています。お金は会場費・Wifiの費用・教科書に使用します。