The AI Vision Utility is what allows you to connect and configure your AI Vision Sensor. To read about how to do so, you can read these articles here:
- Connect the AI Vision Sensor in App-based VEXcode EXP
- Connect the AI Vision Sensor in Web-based VEXcode EXP
- Configure Color Signatures with the AI Vision Sensor in VEXcode EXP
- Configure Color Codes with the AI Vision Sensor in VEXcode EXP
Understanding how the AI Vision Sensor detects and measures objects can help you better use these measurements in your coding projects. With this knowledge, you can improve your coding skills and create more precise solutions for tasks like object recognition and spatial analysis.
Understanding Hue and Saturation
When configuring a color signature, options appear for both Hue and Saturation Ranges. These allow you to tune the color signature to be more resilient. A color signature is considered resilient when the object can be moved around and still be tracked by the AI Vision Utility.
The first slider is the Hue Range. Hue is the color perceived, as defined by its position on the color wheel. This color wheel has a range of 0 to 359.9 degrees and each color on the wheel has a defined degree value.
The Hue Range allows you to choose the degrees above and below the configured color that will report as that color. For example, a dark blue may have the hue value of 240 degrees. With a Hue Range of 20 degrees, anything from 220 degrees to 260 degrees will report as that dark blue configured color.
The second slider is the Saturation Range. Saturation is the intensity or purity of the color. The brighter the color, the more saturated it is. Saturation is a relative scale measured with percentages from 0%, being a muted grey tone, and 100% being a intense version of that hue.
The Saturation Range allows you to choose the percent of saturation above and below the configured color that will report as that color. For example, a red ball in dimmer lighting may appear as 50% saturation. With a Saturation Range of .25 (the decimal equivalent of 25%), anything from 25% to 75% saturation will report as that red configured color.
Understanding Pixels and Resolution
Imagine you're drawing a picture on a piece of grid paper. Each tiny square on the paper is like a pixel. When you color in these squares, you're making your picture.
Low Resolution | High Resolution |
Now, let's talk about resolution. Resolution is the number of pixels in an image. If you have lots of tiny squares (pixels) in your grid paper, your picture will look sharp and detailed. But if you only have a few pixels, your picture might look blurry and not very clear.
The AI Vision Sensor has a resolution of 320 pixels horizontally by 240 pixels vertically. This means that the precise center of detection aligns with coordinates 160 on the X-axis and 120 on the Y-axis.
How Does the AI Vision Sensor Measure Objects
Data Reported by the Sensor
The AI Vision Sensor collects data on configured colors, AprilTags, and AI Classifications. Some of this data is shown in the AI Vision Utility and can help when planning and creating a VEXcode project.
Width and Height
This is the width or height of the detected object in pixels.
The width and height measurements help identify different objects. For example, a Buckyball will have a larger height than a Ring.
CenterX and CenterY
This is the center coordinates of the detected object in pixels.
CenterX and CenterY coordinates help with navigation and positioning. The AI Vision Sensor has a resolution of 320 x 240 pixels.
Angle
Angle is a property only available for Color Codes and AprilTags. This represents if the detected Color Code or AprilTag is orientated differently.
OriginX and OriginY
OriginX and OriginY is the coordinate at the top-left corner of the detected object in pixels.
OriginX and OriginY coordinates help with navigation and positioning. By combining this coordinate with the object's Width and Height, you can determine the size of the object's bounding box. This can help with tracking moving objects or navigating between objects.
Tag ID
The tag ID is only available for AprilTags. This is the ID number for the specified AprilTag.
Identifying specific AprilTags allows for selective navigation. You can program your robot to move towards certain tags while ignoring others, effectively using them as signposts for automated navigation.
Score
The score property is used when detecting AI Classifications with the AI Vision Sensor.
The confidence score indicates how certain the AI Vision Sensor is about its detection. In this image, it's 99% confident in identifying these four objects' AI Classifications. You can use this score to ensure your robot only focuses on highly confident detections.