AI 비전#
소개#
VEX AIM 코딩 로봇의 AI 비전 센서는 사물, 색상 및 AprilTag ID를 감지하고 추적합니다. 이를 통해 로봇은 주변 환경을 분석하고, 물체를 추적하며, 감지된 시각 데이터를 기반으로 반응할 수 있습니다.
AI 비전 센서의 해상도는 320×240픽셀입니다. 원점(0, 0)은 좌측 상단 모서리에 위치하며, 센서의 중심은 아래 그림과 같이 (160, 120)에 있습니다.

아래는 모든 블록 목록입니다.
작업 — AI 비전 피드를 제어하고 객체 데이터를 캡처합니다.
화면의 AI 비전 뷰어 — 로봇 화면에 실시간 AI 비전 피드를 활성화 또는 비활성화합니다.
객체 데이터 가져오기 — 구성된 색상, 사전 학습된 객체 또는 AprilTag ID와 같은 특정 서명에 대한 데이터를 캡처합니다.
설정 — 감지된 객체 중 접근 가능한 객체를 조정합니다.
AI 비전 객체 항목 설정 — 감지된 객체 목록에서 특정 객체를 선택합니다.
값 — 객체의 존재 여부, 분류 및 속성을 반환합니다.
객체를 가지고 있음 — 로봇이 감지된 물체를 들고 있는지 확인합니다.
AI Vision 객체가 존재함 — 객체가 감지되었는지 여부를 보고합니다.
AI 비전 객체는 — 감지된 객체가 특정 분류와 일치하는지 확인합니다.
AI Vision 객체는 AprilTag ID입니다 — 감지된 AprilTag ID가 특정 ID와 일치하는지 확인합니다.
AI 비전 객체 개수 — 감지된 객체의 수를 보고합니다.
AI Vision 객체 속성 — 다음과 같은 보고서 세부 정보:
행위#
화면에 AI 비전 뷰어가 표시됩니다.#
화면의 AI 비전 뷰어 스택 블록은 로봇 화면에 실시간 AI 비전 피드를 표시하거나 숨깁니다. 이 블록이 활성화되면 화면에 실시간 센서 데이터가 표시되어 다른 이미지나 텍스트가 나타나지 않습니다. 다른 콘텐츠를 표시하려면 이 블록을 사용하여 피드를 숨기세요.
화면에서 AI Vision 뷰어 [표시 v]
매개변수 |
설명 |
|---|---|
상태 |
로봇 화면에 데이터 피드를 표시할지 여부를 제어합니다. show는 데이터 피드를 표시하고, hide는 화면에서 데이터 피드를 제거합니다. |
예
시작 시
[View the AI Vision Sensor's feed for five seconds.]
화면에서 AI Vision 뷰어 [표시 v]
[5]초 기다리기
화면에서 AI Vision 뷰어 [숨김 v]
객체 데이터를 가져옵니다.#
객체 데이터 가져오기 스택 블록은 AI 비전 센서 프레임의 데이터를 필터링하여 단일 시그니처(센서가 인식할 수 있는 대상에 대한 저장된 설명으로, 사전 학습된 객체, AprilTag ID 또는 구성된 색상이나 색상 코드 등)로 추출합니다.
이 블록에서 색상과 색상 코드를 사용하려면 먼저 AI Vision 유틸리티에서 색상 및 색상 코드를 구성해야 합니다.
데이터셋은 인덱스 0부터 시작하여 너비가 큰 순서부터 작은 순서로 정렬된 객체를 저장합니다. 각 객체의 속성은 AI Vision 객체 속성 블록을 사용하여 접근할 수 있습니다. 일치하는 객체가 감지되지 않으면 빈 데이터셋이 보고됩니다.
AI Vision에서 [스포츠 공 v] 데이터 가져오기
매개변수 |
설명 |
|---|---|
서명 |
지정된 서명에 해당하는 데이터만 포함하도록 데이터 세트를 필터링합니다. 사용 가능한 서명은 다음과 같습니다.
|
예
시작 시
[Move forward if a sports ball is detected.]
무한 반복
AI Vision에서 [스포츠 공 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
[앞으로 v] 방향으로 [10] [mm v] 이동 ▶
색상 특징#
컬러 시그니처는 AI 비전 센서가 인식할 수 있는 고유한 색상입니다. 이 시그니처를 통해 센서는 색상을 기반으로 객체를 감지하고 추적할 수 있습니다. AI 비전 유틸리티에서 컬러 시그니처를 구성하면 센서는 시야 내에서 해당 특정 색상의 객체를 식별할 수 있습니다.
색상 서명은 객체 데이터 가져오기 블록에서 색상이 있는 객체를 실시간으로 처리하고 감지하는 데 사용됩니다.

예
시작 시
[Display if any objects matching the Red_Box signature is detected.]
무한 반복
화면에서 커서를 [1]행 [1]열로 이동
화면에서 [1]행 지우기
[Change the signature to any configured Color Signature.]
AI Vision에서 [Red_Box v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
화면에 [Color signature detected!] 출력 ▶
색상 코드#
컬러 코드는 특정 순서로 배열된 2~4개의 컬러 시그니처로 구성된 구조화된 패턴입니다. AI 비전 유틸리티에 컬러 코드를 구성하면 센서가 미리 정의된 색상 패턴을 인식할 수 있습니다.
색상 코드는 복잡한 객체를 식별하거나, 게임 요소와 연계하거나, 자율 주행을 위한 고유한 표시를 만드는 데 특히 유용합니다.

예
시작 시
[Display if any objects matching the BlueRed code is detected.]
무한 반복
화면에서 커서를 [1]행 [1]열로 이동
화면에서 [1]행 지우기
[Change the signature to any configured Color Code.]
AI Vision에서 [BlueRed v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
화면에 [Color code detected!] 출력 ▶
설정#
AI 비전 객체 항목 설정#
AI 비전 객체 항목 설정 스택 블록은 데이터 세트에서 사용할 항목을 설정합니다.
AI Vision 객체 항목을 (1)으로 설정
매개변수 |
설명 |
|---|---|
목 |
사용할 데이터 세트 내 항목 번호입니다. |
예
시작 시
[Display the width of the smallest detected object.]
무한 반복
AI Vision에서 [모든 화물 v] 데이터 가져오기
화면에서 [1]행 지우기
화면에서 커서를 [1]행 [1]열로 이동
<AI Vision 객체가 있나요?>이면
AI Vision 객체 항목을 (AI Vision 객체 수)으로 설정
화면에 (AI Vision 객체 [너비 v]) 출력 ▶
값#
객체가 있습니다#
has object 부울 블록은 로봇이 현재 Kicker에 대해 감지된 객체를 가지고 있는지 여부를 보고합니다.
참 — 로봇이 해당 물체를 가지고 있습니다.
거짓 — 로봇은 해당 물체를 가지고 있지 않습니다.
<[스포츠 공 v] 있나요? :: custom-ai-vision>
매개변수 |
설명 |
|---|---|
물체 |
로봇의 킥커에 대해 감지할 물체:
|
예
시작 시
[Kick when the robot has a sports ball.]
무한 반복
<[스포츠 공 v] 있나요? :: custom-ai-vision>이면
물체를 [보통 v]으로 차기
AI 비전 객체가 존재합니다#
AI 비전 객체 존재 여부 부울 블록은 데이터 세트에서 객체가 감지되었는지 여부를 보고합니다.
참 — 데이터 세트에 감지된 객체가 포함되어 있습니다.
거짓 — 객체가 감지되지 않았습니다.
<AI Vision 객체가 있나요?>
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Move forward if a sports ball is detected.]
무한 반복
AI Vision에서 [스포츠 공 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
[앞으로 v] 방향으로 [10] [mm v] 이동 ▶
AI 비전 객체는#
AI 비전 객체 여부 부울 블록은 감지된 객체가 특정 분류와 일치하는지 여부를 나타냅니다.
참 — 데이터 세트의 항목은 특정 객체입니다.
거짓 — 데이터 세트의 항목은 특정 객체가 아닙니다.
<AI Vision 객체가 [스포츠 공 v]인가요?>
매개변수 |
설명 |
|---|---|
물체 |
어떤 물체와 비교할 것인가:
|
예
시작 시
[Display if a sports ball is detected.]
무한 반복
AI Vision에서 [모든 화물 v] 데이터 가져오기
화면에서 [1]행 지우기
화면에서 커서를 [1]행 [1]열로 이동
<AI Vision 객체가 있나요?>이면
<AI Vision 객체가 [스포츠 공 v]인가요?>이면
화면에 [Sports ball detected!] 출력 ▶
[0.5]초 기다리기
AI 비전 객체는 AprilTag ID입니다.#
AI Vision 객체는 AprilTag ID입니다. 부울 블록은 감지된 AprilTag ID가 특정 ID와 일치하는지 여부를 보고합니다.
맞습니다 — AprilTag ID는 숫자입니다.
틀렸습니다 — AprilTag ID는 숫자가 아닙니다.
<AI Vision object is AprilTag ID [1] ?>
매개변수 |
설명 |
|---|---|
AprilTag ID |
감지된 AprilTag ID 번호와 비교할 번호입니다. |
AI 비전 객체 개수#
AI 비전 객체 개수 리포터 블록은 데이터 세트에서 감지된 객체 수를 정수로 보고합니다.
AI Vision 객체 수
매개변수 |
설명 |
|---|---|
이 블록에는 매개변수가 없습니다. |
예
시작 시
[Display the amount of sports balls and barrels.]
무한 반복
화면에서 [1]행 지우기
화면에서 커서를 [1]행 [1]열로 이동
AI Vision에서 [모든 화물 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
화면에 (AI Vision 객체 수) 출력 ▶
끝
[0.5]초 기다리기
AI 비전 객체 속성#
객체 데이터 가져오기 블록을 사용한 후 저장되는 각 객체에는 9개의 속성이 포함됩니다(아래 참조).
AI Vision 객체 [너비 v]
tagID를 제외한 모든 속성 값은 객체 데이터 가져오기 블록이 사용된 시점의 감지된 객체의 위치, 크기, 방향 또는 방위각을 나타냅니다. 이러한 값은 센서의 320x240 픽셀 해상도를 기준으로 픽셀 또는 각도로 측정됩니다.

매개변수 |
설명 |
|---|---|
재산 |
감지된 객체의 어떤 속성을 사용할 것인가: |
너비#
width 속성은 감지된 객체의 너비를 픽셀 단위로 1부터 320까지의 정수로 나타냅니다.
참고: 픽셀 값은 센서의 좌표계를 기준으로 합니다. 참조를 위해 소개의 다이어그램을 참조하세요.
AI Vision 객체 [너비 v]

예
시작 시
[Move towards a blue barrel until its width is larger than 100 pixels.]
무한 반복
AI Vision에서 [파란색 통 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<(AI Vision 객체 [너비 v]) [math_less_than v] [100]>이면
[앞으로 v] 방향으로 이동
끝
아니면
모든 동작 정지
키#
height 속성은 감지된 객체의 높이를 픽셀 단위로 1부터 240까지의 정수로 보고합니다.
참고: 픽셀 값은 센서의 좌표계를 기준으로 합니다. 참조를 위해 소개의 다이어그램을 참조하세요.
AI Vision 객체 [높이 v]

예
시작 시
[Move towards a blue barrel until its height is larger than 100 pixels.]
무한 반복
AI Vision에서 [파란색 통 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<(AI Vision 객체 [높이 v]) [math_less_than v] [100]>이면
[앞으로 v] 방향으로 이동
끝
아니면
모든 동작 정지
센터엑스#
centerX 속성은 감지된 객체의 중심의 x 좌표를 픽셀 단위로 0에서 320 사이의 정수로 나타냅니다.
참고: 픽셀 값은 센서의 좌표계를 기준으로 합니다. 참조를 위해 소개의 다이어그램을 참조하세요.
AI Vision 객체 [centerX v]

예
시작 시
[Turn slowly until a blue barrel is centered in front of the robot.]
회전 속도를 [30]%로 설정
[오른쪽 v] 방향으로 회전
무한 반복
AI Vision에서 [파란색 통 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<[140] [math_less_than v] (AI Vision 객체 [centerX v]) [math_less_than v] [180]>이면
모든 동작 정지
센터Y#
centerY 속성은 감지된 객체의 중심의 y 좌표를 픽셀 단위로 0에서 240 사이의 정수로 나타냅니다.
참고: 픽셀 값은 센서의 좌표계를 기준으로 합니다. 참조를 위해 소개의 다이어그램을 참조하세요.
AI Vision 객체 [centerY v]

예
시작 시
[Move towards a blue barrel until its center y-coordinate is more than 140 pixels.]
무한 반복
AI Vision에서 [파란색 통 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<(AI Vision 객체 [centerY v]) [math_less_than v] [140]>이면
[앞으로 v] 방향으로 이동
끝
아니면
모든 동작 정지
오리진엑스#
originX 속성은 감지된 객체의 경계 상자 왼쪽 상단 모서리의 x 좌표를 픽셀 단위로 0에서 320 사이의 정수로 나타냅니다.
참고: 픽셀 값은 센서의 좌표계를 기준으로 합니다. 참조를 위해 소개의 다이어그램을 참조하세요.
AI Vision 객체 [originX v]

예
시작 시
[Display if an orange barrel is to the left or the right.]
무한 반복
화면에서 [1]행 지우기
화면에서 커서를 [1]행 [1]열로 이동
AI Vision에서 [주황색 통 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<(AI Vision 객체 [originX v]) [math_less_than v] [160]>이면
화면에 [To the left!] 출력 ▶
아니면
화면에 [To the right!] 출력 ▶
끝
[0.5]초 기다리기
기원#
originY 속성은 감지된 객체의 경계 상자의 왼쪽 상단 모서리의 y 좌표를 픽셀 단위로 0에서 240 사이의 정수로 나타냅니다.
참고: 픽셀 값은 센서의 좌표계를 기준으로 합니다. 참조를 위해 소개의 다이어그램을 참조하세요.
AI Vision 객체 [originY v]

예
시작 시
[Display if an orange barrel is close or far from the robot.]
무한 반복
화면에서 [1]행 지우기
화면에서 커서를 [1]행 [1]열로 이동
AI Vision에서 [주황색 통 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<(AI Vision 객체 [originY v]) [math_less_than v] [80]>이면
화면에 [Far!] 출력 ▶
아니면
화면에 [Close!] 출력 ▶
끝
[0.5]초 기다리기
회전#
회전 속성은 감지된 AprilTag ID 또는 색상 코드의 방향을 0에서 359 사이의 정수(도)로 보고합니다.
AI Vision 객체 [회전 v]

예
시작 시
[Slide left or right depending on how the Color Code is rotated.]
무한 반복
AI Vision에서 [Red_Blue v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<[50] [math_less_than v] (AI Vision 객체 [회전 v]) [math_less_than v] [100]>이면
[오른쪽 v] 방향으로 이동
아니면 <[270] [math_less_than v] (AI Vision 객체 [회전 v]) [math_less_than v] [330]>이면
[왼쪽 v] 방향으로 이동
아니면
모든 동작 정지
끝
아니면
모든 동작 정지
베어링#
방향 속성은 AI 비전 센서의 시야 중심을 기준으로 객체가 왼쪽 또는 오른쪽으로 얼마나 떨어져 있는지를 각도로 나타냅니다. 값이 0이면 객체가 중앙에 있고, 양수 값은 오른쪽에, 음수 값은 왼쪽에 있음을 의미합니다.
시작 시
[Keep the blue barrel directly in front of the robot.]
회전 속도를 [40]%로 설정
무한 반복
AI Vision에서 [파란색 통 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
<(AI Vision 객체 [방위각 v]) [math_greater_than v] [5]>이면
[오른쪽 v] 방향으로 회전
아니면 <(AI Vision 객체 [방위각 v]) [math_less_than v] [-5]>이면
[왼쪽 v] 방향으로 회전
아니면
모든 동작 정지
태그ID#
tagID 속성은 감지된 AprilTag ID의 식별 번호를 정수로 보고합니다.
AI Vision 객체 [tagID v]
예
시작 시
[Move forward when AprilTag ID 0 is detected.]
무한 반복
AI Vision에서 [AprilTag ID 0 v] 데이터 가져오기
<AI Vision 객체가 있나요?>이면
[앞으로 v] 방향으로 이동
끝
모든 동작 정지