***********************************************************
拡張機能の紹介① AkariCamera
***********************************************************

| ここでは、AKARIのカメラの制御が可能な拡張機能であるAkariCameraの各ブロックを紹介します。

カメラ制御
-----------------------------------------------------------

[モード]の映像をONにする
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_function_01.jpg
    :height: 60px

  |
  Block type:
    COMMAND
  Ref:
    | [モード]の機能を立ち上げ、カメラ映像をScratch右上のウィンドウにストリーミングします。
    | 認識機能を使う場合は、必ずこのブロックで使いたい機能と同じモードを立ち上げる必要があります。

カメラ映像をOFFにする
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_function_02.jpg
    :height: 60px

  |
  Block type:
    COMMAND
  Ref:
    | カメラのストリーミングをOFFにします。
    | 認識機能も停止します。
    
顔認識
-----------------------------------------------------------

【顔】結果を取得する
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_face_01.jpg
    :height: 60px

  |
  Block type:
    COMMAND
  Ref:
    | 顔認識の最新の結果を取得します。
    | 必ずあらかじめ顔認識の映像をONにしている必要があります。
    | ここで結果が取得できていないと、以降の顔認識結果のブロックの結果が更新されません。

【顔】顔が認識された
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_face_02.jpg
    :height: 60px

  |  Block type:
    BOOLEAN
  Ref:
    | 取得した結果のうち、顔が認識されていたらTrue、認識されていなければFalseを返します。


【顔】顔の[座標軸]位置
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_face_03.jpg
    :height: 60px

  |
  Block type:
    REPORTER
  Ref:
    | 画像内での顔の[座標軸]方向の中心位置を返します。
    | 画像中心を0とし、X方向であれば左端-0.5~右端0.5、Y方向であれば上端0.5〜下端-0.5です。

【顔】顔の[座標軸]方向のサイズ
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_face_04.jpg
    :height: 60px

  |
  Block type:
    REPORTER
  Ref:
    | 画像内での顔の[座標軸]方向のサイズを返します。
    | X方向であれば左右幅、Y方向であれば上下幅の最大を1としています。

物体認識
-----------------------------------------------------------

【物体】結果を取得する
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_object_01.jpg
    :height: 60px

  |
  Block type:
    COMMAND
  Ref:
    | 物体認識の最新の結果を取得します。
    | 必ずあらかじめ物体認識の映像をONにしている必要があります。
    | ここで結果が取得できていないと、以降の物体認識結果のブロックの結果が更新されません。

【物体】[名前]が認識された
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_object_02.jpg
    :height: 60px

  |
  Block type:
    BOOLEAN
  Ref:
    | 取得した結果のうち、[名前]の物体が認識されていたらTrue、認識されていなければFalseを返します。

【物体】認識した[名前]の数
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_object_03.jpg
    :height: 60px

  |
  Block type:
    REPORTER
  Ref:
    | 画像内で認識した物体のうち[名前]と一致するものの数を返します。

【物体】認識した数
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_object_04.jpg
    :height: 60px

  |
  Block type:
    REPORTER
  Ref:
    | 画像内で認識した物体の数を返します。

【物体】[ID]番目の名前
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_object_05.jpg
    :height: 60px

  |
  Block type:
    REPORTER
  Ref:
    | 画像内で認識した物体には番号が振られます。
    | この番号が[ID]番目のものの名前を返します。

【物体】[ID]番目の[座標軸]位置
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_object_06.jpg
    :height: 60px

  |
  Block type:
    REPORTER
  Ref:
    | 画像内で認識した物体のうち[ID]番目のものの[座標軸]方向の中心位置を返します。
    | 画像中心を0とし、X方向であれば左端-0.5~右端0.5、Y方向であれば上端0.5〜下端-0.5です。

【物体】[ID]番目の[座標軸]方向のサイズ
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  .. image:: ../images/scratch/camera_object_07.jpg
    :height: 60px

  |
  Block type:
    REPORTER
  Ref:
    | 画像内で認識した物体のうち[ID]番目のものの[座標軸]方向のサイズを返します。
    | X方向であれば左右幅、Y方向であれば上下幅の最大を1としています

:doc:`main` へ戻る

:doc:`ref_akari_blocks` へ戻る