The New OpenMV Cam H7 Plus with OV5640 Image Sensor now released – With better resolutions
OpenMV Cam, a small, low-powered microcontroller board made for easy machine vision applications has just released a new OpenMV Cam, the H7 Plus.
Before we talk about the H7 Plus, for those who do not know about OpenMV,
About OpenMV
The OpenMV project is about creating low-cost, extensible, Python powered, machine vision modules. OpenMV aims at becoming the “Arduino of Machine Vision”. OpenMV goal is to bring machine vision algorithms closer to makers and hobbyists. The difficult and time-consuming algorithms are all already done for you!
Unlike Arduino or other microcontrollers, MicroPython OS is used instead of C/C+. This makes dealing with complex outputs of machine algorithms and working with high-level data structures simple!
What can OpenMV Cameras do?
Low Power
Firstly, OpenMV Cams uses very low power (200 mA) to process images! Imagining using and powering your camera like you are using a microcontroller, you can just that with the OpenMV Cam. Just attach your OpenMV Cam to a USB port and you are good to go.
Face and Eye Detection
With OpenMV Cam built-in Haar Cascade feature, it is able to detect faces and eyes! Not to mention, this feature can track pupils as well.
Snapshots and Video Recording
The OpenMV Cam is able to save Grayscale or RGB565 BMP / JPG / PPM / PGM and even time-lapsed photos to your attached SD card!
As for video recording-wise, You can save Grayscale or RGB565 MJPEG videos and Grayscale or RGB565 GIF images to your SD card. Want to add and overlay graphics and text on your video? You can do that as well!
Blob/Marker Tracking
The OpenMV Cam can track color blobs in Grayscale or RGB565 images. It can do multi-color / multi-blob tracking. Additionally, the OpenMV Cam can detect color codes too.
Detect up to 16 colors at a time with the OpenMV Cam! Each color can have any number of distinct blobs, telling you the position, size, centroid, and orientation of each blob afterward.
Color tracking can be programmed, enabling way more applications!
QR Code Detection/Decoding
OpenMV Cam can also read QR code! This allows for more of your smart robot projects!
I/O Control
Being able to control I/O pins in the real world using machine vision is also one of OpenMV key features. The OpenMV Cam has a SPI bus, I2C bus, Async Serial bus (RX / TX), ADC, DAC, for you project needs and many more.
Expandable
Lastly, you can extend your OpenMV Cam functionality with shields just like an Arduino as they have a standard I/O pin layout! You can add a LCD shield where you can be able to see what your OpenMV Cam is seeing, a prototype shield, Wifi Shield to add connectivity or even a CAN shield and allow microcontrollers and devices to communicate with each other within a vehicle without a host computer.
Check out all the Shields here on OpenMV site!
Introducing the OpenMV Cam H7 Plus
Featuring an STM32H743II Arm® Cortex® M7 processor running at 480MHz, the OpenMV Cam H7 Plus allows you to easily implement applications using machine vision in the real world.
As for storage, it is equipped with 32MB of SDRAM, 1MB of RAM and 2MB of flash. For programming-wise, you will 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 while still having total control over your OpenMV Cam and I/O pins in Python.
All this programming can be done on the OpenMV IDE which makes it easy to program your OpenMV Cam. OpenMV IDE features a modern Python multi-file text editor, a slick serial terminal, and a frame buffer to visualize what your OpenMV Cam sees in real-time.
The differentiating factor between the OpenMV Cam H7 Plus and other OpenMV Cam is that this Cam comes with an OV5640 image sensor is capable of taking 2592×1944 (5MP) images. Most simple algorithms will run at above 30 FPS on QVGA (320×240) resolutions and below. Your image sensor also comes with a 2.8mm lens on a standard M12 lens mount.
Furthermore, it has a removable camera module system allowing it to interface with different sensors. Different camera modules such as FLIR Lepton Adapter Module and Global Shutter Camera Module can be used for more advanced projects. Also, if you want to use more specialized lenses with your image sensor you can easily attach them yourself.
Want to venture into professional machine vision applications? You can consider getting a Global Shutter Camera Module by OpenMV to capture high quality grayscale images not affected by motion blur.
For thermal machine vision applications wise, you can get a FLIR Lepton Adapter Module by OpenMV as well to allow your OpenMV Cam to interface with the FLIR® Lepton® 1/2/3 Thermal Imaging sensors.
Difference between past OpenMV Cam Products
A table is shown below which illustrates the differences between 2 of OpenMV recent products along with the newly released OpenMV Cam H7 Plus. Improvements are bolded!
OpenMV Cam M7 | OpenMV Cam H7 | OpenMV Cam H7 Plus | |
Processor | ARM® 32-bit Cortex®-M7 CPU 216 MHz (462 DMIPS) Core Mark Score: 1082 | ARM® 32-bit Cortex®-M7 CPU 480 MHz (1027 DMIPS) Core Mark Score: 2400 | ARM® 32-bit Cortex®-M7 CPU 480 MHz (1027 DMIPS) Core Mark Score: 2400 |
RAM Layout | 128KB .DATA/.BSS/Heap/Stack 384KB Frame Buffer/Stack | 256KB .DATA/.BSS/Heap/Stack 512KB Frame Buffer/Stack 256KB DMA Buffers | 256KB .DATA/.BSS/Heap/Stack 32MB Frame Buffer/Stack 256KB DMA Buffers |
Flash Layout | 32KB Bootloader 96KB Embedded Flash Drive 1920KB Firmware | 128KB Bootloader 128KB Embedded Flash Drive 1792KB Firmware | 128KB Bootloader 16MB Embedded Flash Drive 1792KB Firmware |
Maximum Supported Resolutions | Grayscale: 640×480 and under RGB565: 320×240 and under Grayscale JPEG: 640×480 and under RGB565 JPEG: 640×480 and under | Grayscale: 640×480 and under RGB565: 320×240 and under Grayscale JPEG: 640×480 and under RGB565 JPEG: 640×480 and under | Grayscale: 2952×1944 (5MP) and under RGB565: 2952×1944 (5MP) and under Grayscale JPEG: 2952×1944 (5MP) and under RGB565 JPEG: 2952×1944 (5MP) and under |
As you guys can see, the OpenMV Cam H7 Plus features a much superior max supported resolutions for you to capture clearer photos and videos! It also comes with additional RAM and Flash storage.
For more information about the OpenMV Cam H7 Plus, you can check out the documentation.
Applications of the H7 Plus
Other than the applications stated above, the H7 Plus is also able to do much more like:
- Frame Differencing
- Person Detection
- Optical Flow
- Data Matrix Detection/Decoding
- Linear Barcode Decoding
- AprilTage Tracking
- Line Detection
- Circle Detection
- Rectangle Detection
- Template Matching
- TensorFlow Lite for Microcontrollers Support
Conclusion
Want to get started with your machine vision journey? Get yourself an OpenMV Cam H7 Plus now!
Want to know more about the OpenMV H7 Plus? You can refer to the following resources:
- OpenMV Cam Base Schematic (.pdf)
- OpenMV Cam OV5640 Schematic (.pdf)
- Processor Datasheet: STM32H743II (.pdf)
- Camera Datasheet: OV5640 (.pdf)
- Regulator Datasheet: PAM2305AAB330 (.pdf)
- SDRAM Datasheet: IS42S32800G (.pdf)
- FLASH Datasheet: W25Q256JV (.pdf)