AI: カメラで顔を探してみよう

obnizのブロックプログラムではカメラを使って「人が写っている!」などの画像解析と言われるブロックも使えます。
今回はそれを使ってみましょう。

カメラを使う

AIという種類のブロックがあります。
この中で人が写っているかどうかなどのブロックが利用できます。

もちろんカメラを利用しますが、このブロックプログラムを動かしているスマホまたはパソコンについているカメラを利用します。もしカメラが付いていなければ利用することはできません。

まずはブロックプログラムをすべて消して何もない状態から始めます。

AIブロックの中にある「カメラを準備」を置きます。
カメラを使う場合はこれを一度実行することで準備する必要があります。

そして、カメラに顔が映っていたら「だれ?」とコンソールに表示するようにしてみましょう。
そのために、ループを使います。
ループで繰り返し「もしも」ブロックでチェックするようにします。
チェックするのはAIにある「カメラに顔が映っている」です。これをもしもの条件に入れます。

そして、UIにあるコンソールをもしもの中に入れて「だれ?」と表示するようにします。

このようなブロックになります。
obnizブロックを使っていないので、obnizがなくてもすぐに使えます。

<!-- Block Program Example -->
<xml xmlns="http://www.w3.org/1999/xhtml">
  <variables>
    <variable type="obniz" id="X2:3=S(hsdv0mk{aavHW">obniz</variable>
    <variable type="UIButton" id="80uQ37Yg!_RM@zbm[`cF">button</variable>
    <variable type="UIButton" id="#7$4fAkr(P%;.%JaKIy`">backbutton</variable>
    <variable type="UIButton" id="akidXEU*0XQ}VT^!o6Sp">rightbutton</variable>
    <variable type="UIButton" id="KBvD*sLV+fD7(ieEkq5x">leftbutton</variable>
    <variable type="" id="hpvY$6K[tgY$$/L_8%xc">count</variable>
    <variable type="dcmotor" id="V?6USN(jVhQ,P{82]/*M">dcmotor</variable>
    <variable type="airobotkit" id="Jk=/mw~HxfZs@VDVmFYY">airobotkit</variable>
    <variable type="led" id="!MAt1@Dsy)#f.p,K@;=%">led</variable>
  </variables>
  <block type="obniz_ai_camera_start" id="et:NYb_x4jo-MeSjb;P?" x="99" y="153">
    <next>
      <block type="obniz_util_repeat" id="(~5j/lhm/]dIH[20H`D9">
        <statement name="DO">
          <block type="controls_if" id="/X}ba1{+Oi_`wVmUu~|X">
            <value name="IF0">
              <shadow type="logic_boolean" id="5m0M4WR4:2BPfC|_hGkd">
                <field name="BOOL">TRUE</field>
              </shadow>
              <block type="obniz_ai_face" id="}H(y^%#phZkMBH0m*k33"></block>
            </value>
            <statement name="DO0">
              <block type="obniz_debug_text" id="lp:5Hy=;FF}^X05}uD-v">
                <value name="text">
                  <shadow type="text" id=".bg`dE!mXps4-Xu1#Gf=">
                    <field name="TEXT">だれ?</field>
                  </shadow>
                </value>
              </block>
            </statement>
          </block>
        </statement>
      </block>
    </next>
  </block>
</xml>

では、これを実行してみます。
しばらく待つとこのような「サイトがカメラを使おうとしていますけどいいですか?」という許可画面が出てきます。
画面のデザインはPCかスマホかなど、使っている機械ごとに違います。
許可を押すことでカメラが動いて、画面にあなたの顔が映ると思います。

顔が映っている限り「だれ?」というのがコンソールにで続けると思います。どうでしょうか。
カメラを手で隠して、顔が映らないようにすれば出なくなると思います。

うまく認識させるにははっきり顔を写す必要があります。例えば以下のようなときはこのようにしてみましょう。

・明るさが足りない -> 部屋を明るくする
・逆光(太陽や蛍光灯などが写っている) -> カメラの向きや角度を変える

などです。



Next : AI: Let it talk!

You will Get in Few Days

Circuit for Starter “obniz Board” is available on Amazon and other online stores.
You can get it at below

Our products and resellers

Forum

Visit our developer’s forum to discuss and discover technologies.

Forum

Contact

Feel free to contact out support and technical team.

Contact us