



.jpg)

Features
The OpenMV Cam is a small, low power, microcontroller board which allows you to easily implement applications using machine vision in the real-world. You program the OpenMV Cam in high level Python scripts (courtesy of the MicroPython Operating System) instead of C/C++. This makes it easier to deal with the complex outputs of machine vision algorithms and working with high level data structures. But, you still have total control over your OpenMV Cam and its I/O pins in Python. You can easily trigger taking pictures and video on external events or execute machine vision algorithms to figure out how to control your I/O pins.
The OpenMV Cam features:
- RT1062 ARM Cortex M7 processor running at 600 MHz with 32MBs SDRAM + 1MB of SRAM and 16 MB of program/storage flash. All I/O pins output 3.3V and are 3.3V tolerant. The processor has the following I/O interfaces:
- A high speed USB-C (480Mbs) interface to your computer. Your OpenMV Cam will appear as a Virtual COM Port and a USB Flash Drive when plugged in.
- 1.5A current limit.
- With EMI filtering and TVS protection.
- A μSD Card socket capable of 25MB/s reads/writes which allows your OpenMV Cam to take pictures and easily pull machine vision assets off of the μSD card.
- With EMI filtering and TVS protection.
- A SPI bus that can run up to 60Mb/s allowing you to easily stream image data off the system to either the LCD Shield or another microcontroller.
- An I2C Bus (up to 1Mb/s), CAN Bus (up to 1Mb/s), and an Asynchronous Serial Bus (TX/RX, up to 20Mb/s) for interfacing with other microcontrollers and sensors.
- A 12-bit ADC (3.3V tolerant).
- Three I/O pins for servo control.
- One I/O pin for frame sync/triggering (or servo control).
- One I/O pin for low power wakeup.
- There is also a pin for device power button ON/OFF support.
- Interrupts on all I/O pins (there are 14 I/O pins on the board).
- An onboard RTC which keeps running when the system is in low-power mode (the system draws less than 30uA in low-power mode).
- A user controllable/dimmable RGB LED.
- Another RGB LED for Charging, USB Power, VIN Power indication.
- 32 MB of external 16-bit SDRAM clocked at 160 MHz for 320 MB/s of bandwidth.
- 16 MB of program/storage quadspi flash clocked at 133 MHz in 4-bit SDR mode for 66 MB/s of bandwidth (read speed).
- A 12-bit X/Y/Z accelerometer (2/4/8g) centered underneath the camera module.
- Onboard WiFi (a/b/g/n - 11/54/65 Mb/s) and Bluetooth (v5.1 - BR/EDR/BLE) module with a chip antenna.
- Option to use a U.FL antenna instead.
- Onboard 10/100 Mb/s Ethernet.
- Ethernet Jack with PoE support via an external shield.
- Strong Cryptographic Authentication Secure Element support via the SE050C1HQ1.
- A removable camera module system allowing the OpenMV Cam RT1062 to interface with different sensors:
- 3.7V lithium-ion battery interface, supporting battery charging via USB. You can purchase our 3.7V-1000MAH lithium-ion battery.
- 100 mA Fast Charge Current
- With TVS Protection.
- An ARM 10-pin JTAG Header Compatible with SEGGER J-Link Devices for debugging and programming.
- With EMI Filtering and TVS Protection.
- External 5V VIN with reverse supply protection.
For more information, please visit: https://singtown.com/openmv/
Applications
Currently, the OpenMV camera can be used for the following tasks (more in the future):
- Neural Network Object Detection
- You can use OpenMV to train neural networks for object detection, training any target you want to detect. For example, different numbers, different fruits, different markers, different parts, or any specific irregular targets can be trained to identify the number, coordinates, and object type name of specific targets.
- You can detect traffic signs in our actual roads based on our video tutorials, such as no honking, no parking, speed limit 80, etc. /learn/50918
- Neural Network Classification
- You can use OpenMV to train neural networks for object detection, training any target you want to detect. For example, different numbers, different fruits, different markers, different parts, or any specific irregular targets can be trained to identify the number, coordinates, and object type name of specific targets.
- It can classify whether a person is wearing a mask based on our video tutorial./learn/50872
- TensorFlow Lite for Microcontrollers
- TensorFlow Lite support allows you to run custom image classification and segmentation models on the OpenMV Cam. With TensorFlow Lite, you can easily classify complex areas in the picture and control the 1/0 pins based on what you see.

- Frame Differencing Algorithm
- You can use the frame differencing algorithm on the OpenMV Cam to see the movement in the scene. The frame differencing algorithm can be used for security applications.
- Color Tracking
- You can use OpenMV to detect up to 16 colors in the image simultaneously (you will never want to find more than 4 colors), and each color can have any number of different color blocks. OpenMV will tell you the position, size, center, and direction of each color block. With color tracking, your OpenMV Cam can be programmed to track the sun, line tracking, target tracking, and more. Video demonstration: /learn/49993
- Marker Tracking
- You can use the OpenMV Cam to detect groups of colors instead of individual colors. This allows you to place color tags (tags with 2 or more colors) on objects, and OpenMV will get the content of the tag object.

- Face Detection
- You can use the OpenMV Cam (or any general object) to detect faces. Your OpenMV camera can process Haar templates for general object detection and comes with built-in Frontal Face templates and Eye Haar templates to detect faces and eyes. /learn/50013

- Eye Tracking
- You can use eye tracking to detect someone's gaze direction. You can use it to control robots. Eye tracking detects the position of the pupil while detecting whether there are eyes in the image.
- Person Detection
- You can use the built-in person detector (TensorFlow Lite model) to detect whether there are people in the field of view.

- Optical Flow
- You can use optical flow to detect the scene in front of your OpenMV camera. For example, you can use optical flow on a quadcopter to control stability in the air.

- QR Code Detection/Decoding
- You can use the OpenMV Cam to read QR codes in its field of view. With QR code detection/decoding, you can enable smart robots to read tags in the environment.

- Data Matrix Detection/Decoding
- The OpenMV Cam can also detect and decode Data Matrix (2D barcodes). You can watch our video here.
- Linear Barcode Decoding
- The OpenMV Cam can also handle 1D barcodes. It can decode EAN2, EAN5, EAN8, UPCE, ISBN10, UPCA, EAN13, ISBN13, I25, DATABAR, DATABAR_EXP, CODABAR, CODE39, CODE93, and CODE128. Watch our video here: /learn/50017

- AprilTag Tracking
- Even better than the QR code above, the OpenMV Cam can also track AprilTags. AprilTags are state-of-the-art fiducial markers that are rotation-invariant, scale-invariant, shear-invariant, and illumination-invariant. Watch our video here: /learn/49590

- Line Detection
- The OpenMV Cam can quickly complete infinite-length line detection at almost full frame rate. It can also find non-infinite-length line segments. Watch our video here: /learn/50009
- Circle Detection
- You can easily detect circles in the image using OpenMV.

- Rectangle Detection
- OpenMV can also detect rectangles, using the square detection code from the AprilTag library.
- Template Matching
- You can use OpenMV template matching to detect whether there are template-like images in the field of view. For example, template matching can be used to find marks on PCBs or read known numbers on displays.

- Image Capture
- You can use OpenMV to capture RGB565/grayscale BMP/JPG/PPM/PGM images. You can directly control how to capture images in Python scripts. Most importantly, using machine vision algorithms, you can draw lines, draw characters, and then save them.

- Video Recording
- You can use the OpenMV camera to record RGB565/grayscale MJPEG videos or GIF images (or RAW videos). You can directly control how each video frame is recorded in Python scripts and have full control over the start and end of video recording. Moreover, like capturing images, you can use machine vision algorithms to draw lines, draw characters, and then save them.
Finally, all the above functions can be mixed with IO pin control to match your custom applications and interact with the real world.