ブロックで使用できるように、AI ビジョン センサーで カラー シグネチャ と カラー コード が設定されていることを確認してください。 構成方法の詳細については、以下の記事をご覧ください。
AI ビジョン センサーは、AI 分類と AprilTags も検出できます。 これらの検出モードを有効にする方法については、こちらをご覧ください:
これらの個々のブロックの詳細と、VEXcode での使用方法については、API サイトをご覧ください。
スナップショットを撮る
スナップショット取得 ブロックは、AI ビジョン センサーが現在見ているものを写真に撮り、そのスナップショットからプロジェクトで使用できるデータを取得します。 スナップショットを撮るときは、AI ビジョン センサーがどのタイプのオブジェクトのデータを収集するかを指定する必要があります。
- カラーシグネチャー
- カラーコード
- AI分類
- 4月のタグ
スナップショットを撮ると、指定した検出されたすべてのオブジェクトの配列が作成されます。 たとえば、「赤」のカラー シグネチャを検出する場合、AI ビジョン センサーが 3 つの異なる赤いオブジェクトを検出すると、3 つすべてのデータが配列に格納されます。
異なるオブジェクトを指定する方法の詳細については、この記事の「オブジェクト項目の設定」セクションを参照してください。
この例では、設定された「青」 カラー シグネチャ に一致するオブジェクトのみを検出し、それ以外のオブジェクトは検出しません。
スナップショットから取得したデータ
AI ビジョン センサーは、その後に続くブロックに対して最後に撮影したスナップショットを使用することに注意してください。 AI ビジョン センサーから常に最新の情報を取得できるようにするには、データを取得するたびにスナップショットを再撮影してください。
幅と高さ
これは、検出されたオブジェクトのピクセル単位の幅または高さです。
幅と高さの測定値は、さまざまなオブジェクトを識別するのに役立ちます。 たとえば、バッキーボールはリングよりも高さが高くなります。
幅と高さは、AI ビジョン センサーからのオブジェクトの距離も示します。 通常、測定値が小さいほどオブジェクトが遠くにあることを意味し、測定値が大きいほどオブジェクトが近いことを示唆します。
この例では、オブジェクトの幅がナビゲーションに使用されます。 ロボットは、幅が特定のサイズに達するまでオブジェクトに近づき、停止します。
センターXとセンターY
これは、検出されたオブジェクトの中心座標(ピクセル単位)です。
CenterX と CenterY 座標は、ナビゲーションと配置に役立ちます。 AI ビジョン センサーの解像度は 320 x 240 ピクセルです。
AI ビジョン センサーに近いオブジェクトは、遠いオブジェクトよりも CenterY 座標が低くなることがわかります。
この例では、AI ビジョン センサーのビューの中心が (160, 120) であるため、検出されたオブジェクトの centerX 座標が 150 ピクセルより大きく 170 ピクセル未満になるまでロボットは右に曲がります。
角度
角度は、カラー コード およびAprilTagsでのみ使用可能なプロパティです。 これは、検出されたカラー コードまたは AprilTag の方向が異なるかどうかを表します。
ロボットがカラー コード またはAprilTag に対して異なる方向を向いているかどうかを確認し、それに応じてナビゲーションの決定を行うことができます。
たとえば、カラーコード が適切な角度で検出されない場合、それが表すオブジェクトをロボットが適切に拾うことができない可能性があります。
OriginX と OriginY
OriginX と OriginY は、検出されたオブジェクトの左上隅の座標 (ピクセル単位) です。
OriginX と OriginY 座標は、ナビゲーションと配置に役立ちます。 この座標をオブジェクトの幅と高さと組み合わせることで、オブジェクトの境界ボックスのサイズを決定できます。 これは、移動するオブジェクトを追跡したり、オブジェクト間を移動したりするのに役立ちます。
この例では、原点、幅、高さの正確な座標を使用して、Brain 上に四角形が描画されます。
タグID
tagID はAprilTagsでのみ使用できます。 これは指定されたAprilTagの ID 番号です。
特定の AprilTags を識別すると、選択的なナビゲーションが可能になります。 ロボットを特定のタグに向かって移動し、他のタグを無視するようにプログラムして、タグを自動ナビゲーションの道標として効果的に使用できます。
スコア
スコア プロパティは、AI ビジョン センサーでAI 分類 を検出するときに使用されます。
信頼スコアは、AI ビジョン センサーの検出の確実性を示します。 この画像では、これら 4 つのオブジェクトの AI 分類を 99% の信頼度で識別しています。 このスコアを使用すると、ロボットが信頼性の高い検出のみに集中できるようになります。
オブジェクト項目の設定
AI ビジョン センサーによってオブジェクトが検出されると、配列に格納されます。 デフォルトでは、AI ビジョン センサーは配列内の最初のオブジェクト、つまりインデックスが 1 のオブジェクトからデータを取得します。 AI ビジョン センサーが 1 つのオブジェクトのみを検出した場合
そのオブジェクトがデフォルトで選択されます。
、AI ビジョン センサーが一度に複数のオブジェクトを検出した場合は、オブジェクト項目の設定 ブロックを使用して、データを取得するオブジェクトを指定する必要があります。
AI ビジョンセンサーによって複数のオブジェクトが検出されると、それらは最大から最小の順に配列されます。 つまり、検出された最大のオブジェクトは常にオブジェクト インデックス 1 に設定され、最小のオブジェクトは常に最大の番号に設定されます。
この例では、カラー シグネチャ 「青」で 2 つのオブジェクトが検出されました。 Take Snapshot ブロックが使用されると、両方とも配列に配置されます。
ここでは、最前面のオブジェクトが最大のオブジェクトであるため、オブジェクト インデックス 1 になり、最小のオブジェクトがオブジェクト インデックス 2 になります。
オブジェクトが存在します
スナップショットからデータを取得する前に、まず AI ビジョン センサーがそのスナップショットからオブジェクトを検出したかどうかを することが重要です。 ここで、Object Exists ブロックが機能します。
このブロックは、最後に取得したスナップショットにオブジェクトが検出されたかどうかに応じて、True またはFalse を返します。4
このブロックは
潜在的に空のスナップショットからデータを取得しようとしていないことを確認するために常に使用するがあります。
たとえば、ここではロボットが AI ビジョン センサーを使用して継続的にスナップショットを撮影します。 「青」のカラーシグネチャ を持つ特定すると、前進します。
どのスナップショットにも「青」 カラー シグネチャがない場合、ロボットは動きを停止します。
オブジェクト数
Object count ブロックを使用すると、AI ビジョン センサーが最後のスナップショットで認識できる特定の Color Signature のオブジェクトの数を確認できます。
ここでは、AI ビジョン センサーに カラー シグネチャ 「青」が設定されており、2 つのオブジェクトを検出していることがわかります。
このコードでは、AI ビジョン センサーはスナップショットを取得し、VEXcode コンソールに「2」を出力します。これは、「青」 カラー シグネチャを 2 つだけ検出するためです。
物体
オブジェクト ブロックを使用すると、指定したオブジェクトのプロパティを報告できます。 これにより、最後に取得したスナップショットから取得された利用可能なデータのいずれかを使用できるようになります。
取得したスナップショットから取得できるオブジェクト プロパティは次のとおりです。
- 幅
- 身長
- 中心X
- 中心Y
- 角度
- オリジンX
- 起源Y
- タグID
- スコア
これらのプロパティの詳細については、この記事の「スナップショットから取得されたデータ」セクションをお読みください。
検出されたAprilTagは
検出された AprilTag は ブロックは、AprilTag 検出モード がオンになっている場合にのみ使用できます。4
このブロックは
指定されたオブジェクトが特定の AprilTag であるかどうかに応じて True または False を報告します。
1 つのスナップショットで複数の AprilTag が検出された場合、それらはサイズではなく識別された ID に基づいて配列に配置されます。
このイメージでは、ID 0、3、9 の 3 つの AprilTag が検出されています。 配列内の ID の昇順に整理されます。 インデックス 1 のオブジェクトは ID 0 の AprilTag に対応し、インデックス 2 は ID 3 の AprilTag に対応し、インデックス 3 は ID 9 の AprilTag に対応します。
AprilTags とは何か、また AI ビジョン センサーで AprilTags の検出を有効にする方法の詳細については、この記事をお読みください。
AI分類は
AI 分類 ブロックは、AI 分類検出モード がオンになっている場合にのみ使用できます。
このブロックは、指定されたオブジェクトが特定の AI 分類であるかどうかに応じて True または False を報告します。
AI ビジョン センサーで検出できる AI 分類は、使用しているモデルによって異なります。 利用可能な AI 分類と、AI ビジョン センサーでそれらの検出を有効にする方法の詳細については、この記事をお読みください