AI視覺感測器#
介紹#
AI視覺感測器能夠偵測並追蹤物體、顏色以及AprilTag ID。這使得機器人能夠分析周圍環境、追蹤物體,並根據檢測到的視覺數據做出反應。
以下是可用模組列表:
操作 – 從 AI 視覺感測器擷取所選簽章的資料。
拍攝快照 – 擷取特定簽署的數據,例如配置的顏色、預訓練物件或 AprilTag ID。
設定 – 選擇要與之互動的物件。
設定 AI 視覺物件項目 – 從偵測到的物件清單中選擇特定物件。
價值-存取和使用已收集的資料。
AI Vision 物件存在 – 報告是否偵測到物件。
AI Vision object is – 檢查偵測到的物件是否與特定分類相符。
AI Vision object is AprilTag – 檢查偵測到的物件是否為與特定 ID 相符的 AprilTag。
AI Vision 物件是 AprilTag ID – 檢查偵測到的 AprilTag ID 是否與特定 ID 相符。
AI 視覺物件計數 – 報告偵測到的物件數量。
AI 視覺對象屬性 – 報告詳細信息,例如:
行動#
拍照#
拍攝快照堆疊塊將來自 AI 視覺感測器幀的資料過濾為單一簽名——感測器可以識別的事物的保存描述,例如預訓練物件、AprilTag ID 或配置的顏色或顏色代碼。
必須先在 AI Vision Utility 中配置顏色和顏色代碼,然後才能將此模組使用它們。
資料集按寬度從大到小的順序儲存對象,索引從 0 開始。可以使用 AI Vision 物件屬性 程式碼區塊存取每個物件的屬性。如果未偵測到匹配的對象,則報告資料集為空。
拍攝 [AIVision1 v] 的 [SELECT_A_SIG v] 快照
範圍 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
簽名 |
篩選資料集,僅包含給定簽署的資料。可用簽章包括:
|
注意:要顯示 AprilTag ID 或 AI 分類選項,必須在 AI 視覺實用程式中啟用其偵測功能。
例子
當開始時
[Drive forward if an AprilTag ID is detected.]
永遠
拍攝 [AIVision1 v] 的 [AprilTag IDs v] 快照
如果 <[AIVIsion1 v] 物件存在?> 則
行駛 [前方 v] [10] [mm v] ▶
人工智慧分類#
AI視覺感測器可以根據特定的AI分類檢測不同的物體。根據在「設備」視窗中配置AI視覺感測器時選擇的AI分類模型,可以偵測到不同的物體。目前可用的模型有:
教室物品
藍球
綠球
紅球
藍環
綠環
紅環
藍立方
綠立方
紅立方
VEX V5 機器人競賽延期
BlueBlock
紅塊
VEX V5 機器人大賽 高風險賽
移動目標
紅環
藍環
VEX V5 機器人競賽規則變更
紅藍針
藍黃針
紅黃針
黃針
杯子
顏色特徵#
顏色特徵碼是人工智慧視覺感測器可以識別的獨特顏色。這些特徵碼使感測器能夠根據物體的顏色來偵測和追蹤物體。配置好顏色特徵碼後,感應器就能辨識視野範圍內具有該特定顏色的物體。
顏色特徵碼用於 拍攝快照 模組中,以即時處理和偵測彩色物體。一次最多可以配置 7 個顏色特徵碼。

例子
當開始時
[Display if any objects matching the RED_BOX signature is detected.]
永遠
將游標設定到螢幕第 [1] 列第 [1] 欄
清除螢幕第 [1] 列
[Change the signature to any configured Color Signature.]
拍攝 [AIVision1 v] 的 [RED_BOX v] 快照
如果 <[AIVision1 v] 物件存在?> 則
在螢幕上列印 [Color detected!] ▶
顏色代碼#
顏色代碼是一種結構化的圖案,由 2 到 4 個按特定順序排列的顏色特徵組成。這些代碼使 AI 視覺感測器能夠識別預先定義的顏色模式。
顏色代碼對於識別複雜物體、與遊戲元素對齊或創建用於自主導航的獨特標記尤其有用。一次最多可配置 8 個顏色代碼。

例子
當開始時
[Display if any objects matching the RED_BLUE code is detected.]
永遠
將游標設定到螢幕第 [1] 列第 [1] 欄
清除螢幕第 [1] 列
[Change the signature to any configured Color Code.]
拍攝 [AIVision1 v] 的 [RED_BLUE v] 快照
如果 <[AIVision1 v] 物件存在?> 則
在螢幕上列印 [Code detected!] ▶
設定#
設定 AI Vision 對象項#
設定 AI Vision 物件項目 堆疊區塊設定要使用資料集中的哪個項目。
設定 [AIVision1 v] 物件項目為 (1)
參數 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
物品 |
要使用的資料集中的項目編號。 |
例子
當開始時
[Display the largest detected AprilTag ID.]
永遠
拍攝 [AIVision1 v] 的 [AprilTag IDs v] 快照
清除螢幕第 [1] 列
將游標設定到螢幕第 [1] 列第 [1] 欄
如果 <[AIVision1 v] 物件存在?> 則
設定 [AIVision1 v] 物件項目為 ([AIVision1 v] 物件數量)
在螢幕上列印 ([AIVision1 v] 物件 [tagID v]) ▶
價值觀#
AI視覺物件是否存在?#
AI Vision 物件存在 布林區塊報表資料集中是否偵測到任何物件。
正確 – 資料集中包含偵測到的物件。
錯誤 – 此資料集不包含任何偵測到的物件。
<[AIVision1 v] 物件存在?>
參數 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
例子
當開始時
[Drive forward if an object is detected.]
永遠
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
行駛 [前方 v] [10] [mm v] ▶
AI視覺物件是#
AI Vision 物件是布林區塊,用於報告偵測到的物件是否與特定分類相符。
正確 – 資料集中的項目是特定物件。
錯誤 – 資料集中的項目不是特定物件。
<[AIVision1 v] 物件為 [BlueBall v]?>
範圍 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
目的 |
將該物品與哪一個AI分類進行比較。 |
例子
當開始時
[Display if a Blue Cube is detected.]
永遠
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
清除螢幕第 [1] 列
將游標設定到螢幕第 [1] 列第 [1] 欄
如果 <[AIVision1 v] 物件存在?> 則
如果 <[AIVision1 v] 物件為 [BlueCube v]?> 則
在螢幕上列印 [Cube detected!] ▶
等待 [0.5] 秒
AI Vision 物件是 AprilTag#
AI Vision 物件是 AprilTag 布爾塊報告偵測到的物件是否是與特定 ID 相符的 AprilTag。
正確 – 偵測到的物件是具有給定 ID 的 AprilTag。
錯誤 – 偵測到的物件不是具有給定 ID 的 AprilTag。
<[AIVision1 v] 物件為 AprilTag [0]?>
範圍 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
AprilTag ID |
要與偵測到的 AprilTag 進行比較的 ID 號碼。 |
例子
當開始時
[Report if AprilTag 3 is detected.]
永遠
清除螢幕
將游標設定到螢幕第 [1] 列第 [1] 欄
拍攝 [AIVision1 v] 的 [AprilTag IDs v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <[AIVision1 v] 物件為 AprilTag [3]?> 則
在螢幕上列印 [That is 3!] ▶
否則
在螢幕上列印 [That isn't 3!] ▶
結束
結束
等待 [0.1] 秒
AI Vision 物件是 AprilTag ID#
AI Vision 物件是 AprilTag ID 布爾塊報告偵測到的 AprilTag ID 是否與特定 ID 相符。
正確 – AprilTag ID 就是這個數字。
錯誤 – AprilTag ID 不是數字。
<[AIVision1 v] object is AprilTag ID [1] ?>
參數 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
AprilTag ID 號碼 |
要與偵測到的 AprilTag ID 號碼進行比較的數字。 |
範例:
當開始時
[Report if AprilTag ID 3 is detected.]
永遠
清除螢幕
將游標設定到螢幕第 [1] 列第 [1] 欄
拍攝 [AIVision1 v] 的 [AprilTag IDs v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <[AIVision1 v] object is AprilTag ID [3] ?> 則
在螢幕上列印 [That is 3!] ▶
否則
在螢幕上列印 [That isn't 3!] ▶
結束
結束
等待 [0.1] 秒
AI視覺物件計數#
AI Vision 物件計數 報告模組會將資料集中偵測到的物件數量以整數形式報告。
([AIVision1 v] 物件數量)
參數 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
例子
當開始時
[Display the total amount of cubes, rings, and balls.]
永遠
清除螢幕第 [1] 列
將游標設定到螢幕第 [1] 列第 [1] 欄
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
在螢幕上列印 ([AIVision1 v] 物件數量) ▶
結束
等待 [0.5] 秒
AI Vision 物件屬性#
使用 take snapshot 區塊後,儲存的每個物件都包含九個屬性(如下所示)。
([AIVision1 v] 物件 [寬度 v])
除 tagID 和 score 之外的所有屬性值均描述了在執行 take snapshot 程式碼區塊時,AI 視覺感測器視野中偵測到的物件的位置和大小。這些值以像素為單位,基於感測器的 320 x 240 像素解析度。
範圍 |
描述 |
|---|---|
裝置 |
在「設備」視窗中配置要使用的AI視覺感測器。 |
財產 |
要使用检测到的对象的哪个属性: |
寬度#
width 屬性以像素為單位報告偵測到的物件寬度,數值為 1 到 320 之間的整數。
([AIVision1 v] 物件 [寬度 v])
例子
當開始時
[Drive towards an object until its width is larger than 100 pixels.]
永遠
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <([AIVision1 v] 物件 [寬度 v]) [math_less_than v] [100]> 則
行駛 [前方 v]
否則
停止行駛
結束
高度#
height 屬性以像素為單位報告偵測到的物件的高度,數值為 1 到 240 之間的整數。
([AIVision1 v] 物件 [高度 v])
例子
當開始時
[Drive towards an object until its height is larger than 100 pixels.]
永遠
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <([AIVision1 v] 物件 [高度 v]) [math_less_than v] [100]> 則
行駛 [前方 v]
否則
停止行駛
結束
centerX#
centerX 屬性以像素為單位報告偵測到的物件中心的 x 座標,數值為 0 到 320 之間的整數。
([AIVision1 v] 物件 [centerX v])
例子
當開始時
[Turn slowly until an object is centered in front of the robot.]
設定轉向速度為 [30] [% v]
向 [右 v] 轉
永遠
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <[140] [math_less_than v] ([AIVision1 v] 物件 [centerX v]) [math_less_than v] [180]> 則
停止行駛
中心Y#
centerY 屬性以像素為單位報告偵測到的物件中心的 y 座標,數值為 0 到 240 之間的整數。
([AIVision1 v] 物件 [centerY v])
例子
當開始時
[Drive towards an object until its center y-coordinate is more than 140 pixels.]
永遠
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <([AIVision1 v] 物件 [centerY v]) [math_less_than v] [140]> 則
行駛 [前方 v]
否則
停止行駛
結束
角度#
angle 屬性以 0 到 359 度的整數表示偵測到的顏色代碼或 AprilTag ID 的方向。
([AIVision1 v] 物件 [角度 v])
例子
當開始時
[Slide left or right depending on how the Color Code is rotated.]
永遠
拍攝 [AIVision1 v] 的 [RED_BLUE v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <[50] [math_less_than v] ([AIVision1 v] 物件 [角度 v]) [math_less_than v] [100]> 則
行駛 [右 v]
否則如果 <[270] [math_less_than v] ([AIVision1 v] 物件 [角度 v]) [math_less_than v] [330]> 則
行駛 [左 v]
否則
停止行駛
結束
否則
停止行駛
originX#
originX 屬性以像素為單位報告偵測到的物件邊界框左上角的 x 座標,數值為 0 到 320 之間的整數。
([AIVision1 v] 物件 [originX v])
例子
當開始時
[Display if an object is to the left or the right.]
永遠
清除螢幕第 [1] 列
將游標設定到螢幕第 [1] 列第 [1] 欄
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <([AIVision1 v] 物件 [originX v]) [math_less_than v] [160]> 則
在螢幕上列印 [To the left!] ▶
否則
在螢幕上列印 [To the right!] ▶
結束
等待 [0.5] 秒
originY#
originY 屬性以像素為單位報告偵測到的物件邊界框左上角的 y 座標,數值為 0 到 240 之間的整數。
([AIVision1 v] 物件 [originY v])
例子
當開始時
[Display if an object is close or far from the robot.]
永遠
清除螢幕第 [1] 列
將游標設定到螢幕第 [1] 列第 [1] 欄
拍攝 [AIVision1 v] 的 [AI Classifications v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <([AIVision1 v] 物件 [originY v]) [math_less_than v] [80]> 則
在螢幕上列印 [Far!] ▶
否則
在螢幕上列印 [Close!] ▶
結束
等待 [0.5] 秒
標籤ID#
tagID 屬性以整數形式報告偵測到的 AprilTag ID 的識別號碼。
([AIVision1 v] 物件 [tagID v])
例子
當開始時
[Drive forward when AprilTag ID 0 is detected.]
永遠
拍攝 [AIVision1 v] 的 [AprilTag IDs v] 快照
如果 <[AIVision1 v] 物件存在?> 則
如果 <([AIVision1 v] 物件 [tagID v]) [math_equal v] [0]> 則
行駛 [前方 v]
否則
停止行駛
結束
等待 [0.5] 秒
分數#
score 屬性以百分比形式報告模型對偵測到的 AI 分類的置信度,範圍從 70% 到 100%。
分數越低,表示感測器對偵測到的物體信心越低;分數越高,表示感測器對偵測到的物體信心越高。
([AIVision1 v] 物件 [分數 v])