Home / News

Blog - News

OpenMV Update

Hi folks,

Happy New Year! Here's what's going on with OpenMV:

Performance Optimization

We've hired a performance optimization specialist to speed things up on the STM32 architecture. We met Larry Bank at the ARM AI IoT conference in December. In just a few weeks Larry has been able to improve the performance of a few key algorithms on the OpenMV Cam by leaps and bounds:

JPEG Compression (image transfer to the IDE):

  • RGB565 VGA was 174ms per frame, now 45ms (3.9x speed-up)
  • RGB565 QVGA was 16ms per frame, now 8.4ms (1.9x speed-up)
  • RGB565 QQVGA was 4ms per frame, now 2ms (2x speed-up)

He's also managed to speed up AprilTags on the OpenMV Cam H7 Plus (which will be on sale in a few months) by 2x and Line Segment Detection by 4x-6x!!! Checkout the difference in the video below:

We're excited about all the code Larry will be able optimize to make it go faster. We've already got him working on improving QR Code Detection performance, Barcode Detection performance, and Data Matrix Detection performance next (we will also improve color detection performance too). We expect he'll be able to deliver 2x performance or more on these algorithms.

That said, if you are interested in other algorithms on the OpenMV Cam receiving his touch let us know at openmv@openmv.io!

Larry is also generally available for hire as an optimization specialist. Let him know if your company needs something to go way faster. Hiring him is like getting a new processor architecture!

Amazon and Google Shopping

Moving on, we've setup our Amazon Store and Google Shopping Ads. You can now buy all of our stuff directly on Amazon in the USA. Better yet, now that the USA and China have signed a trade deal agreement we will be able to move key products back to the USA for Fulfillment by Amazon. We plan to keep our warehouse in Hong Kong for global shipments but we hope to cut shipping time to customers in the USA dramatically.

Switching shipping providers from ShipBob to fulfillment by our Contract Manufacturer EtonTech (Etonnet) last year while fulfilling our OpenMV Cam H7 Kickstarter was complex and stressful but we finally have a shipping solution that's able to deliver packages internationally reliably. Moving forward, we hope we can continue to grow things without shipping being a massive nightmare.

Interface Library Development

We're starting development on a general purpose interface library for the OpenMV Cam this year. If you've got thoughts about how this should be developed let us know on the forums. As the OpenMV Cam has gotten more popular we've noticed an uptick of requests for connecting it other systems as companion processor.

OpenMV Cam H7 Plus Release Date

Finally, we're on track to start production of the OpenMV Cam H7 Plus after the Chinese New Year! We've got all the components and PCBs ordered and ready for assembly. We hope to finish production and testing by the end of February and start shipping in March.

And... I'd like to say a special thank you to everyone who pre-ordered and OpenMV Cam H7 Plus. This was our first production run without having to launch a Kickstarter to fund it. That said, the preorders really help. Thank you for your support of OpenMV!

OpenMV Cam H7 Plus Pre-order Available!

Hi everyone,

The OpenMV Cam H7 Plus is now available for pre-order!

The new camera model works just like an OpenMV Cam H7 but without any resolutions limits! Feel free to run color tracking and more on 5 mega-pixel images.

The new system features 32 MB of external SDRAM and 32 MB of external FLASH along with the OV5640 5 Mega Pixel Camera Sensor. We've set everything up such that 16 MB of the flash appears as the uPy drive now for your OpenMV Cam when you plug it into a computer without an SD card. This lets you store TensorFlow models on the camera directly without having to use an SD card. As for the SDRAM, our firmware seamlessly uses that as the frame buffer for all our algorithms. Additionally, our frame buffer allocation code will try to use the internal SRAM on the STM32H743 chip when possible instead of the SDRAM frame buffer for caching data structures thus improving performance when things fit inside internal SRAM.

Anyway, feel-free to pre-order the system now! We expect to deliver the unit in late February or early March. We've already paid for the production run for 1K units and we are just waiting on parts. If you do pre-order the system please avoid buying anything else with your order at the same time so as to not lock our inventory up.

DepthAI

Finally, I just wanted to send out an update that our partner Luxonis is still running their DepthAI Crowd Supply Campaign. If you're interested in running high powered neural networks on a Raspberry Pi combined with a Intel Movidius Myriad X check them out!

TensorFlow Lite and Person Detection

Hi everyone,

Firmware version v3.5.0 is finally available! Launch OpenMV IDE to automatically download and install it. Firmware v3.5.0 fixes a large number of bugs and improves your OpenMV Cam functionality:

  • Update CMSIS to v5.4.0
  • Update H7 HAL to v1.5
  • Update MicroPython to 1.11.
  • Update WINC1500 firmware to v19.6.1.
  • Update WINC1500 host driver to v19.3.0.
  • Add STM32Cube.AI support.
  • Add TensorFlow Lite for microcontrollers.
  • Add built-in person detector with TF Lite.
  • Add ulab and openrv libraries.
  • Add support for 32-bit SDRAM @100 MHz.
  • Add Arduino UART example.
  • Add new ADC example for internal channels.
  • Add new HTTPs client examples.
  • Fix fb_alloc bug introduced in v3.5.0-beta.2.
  • Fix ADC driver to work with new H7 HAL.
  • Fix BMP bug when reading 24-bit images.
  • Fix Lepton Hardfault when setting VGA/RGB565.
  • Fix SPI WFI bug on F7.
  • Fix cpufreq H7 frequencies.
  • Fix Makefile order dependency issues.
  • Fix VSCALE0 low-power mode.
  • Enable mod USSL with MBEDTLS.
  • Enable QSPI internal storage for OpenMV-4R2.
  • Enable VSCALE0 for rev V devices.
  • All the modules in scripts/libraries are now frozen.

In particular, we've updated to the latest version of MicroPython, enabled USSL support, and added TensorFlow Lite for Microcontrollers support! With TensorFlow Lite support on your OpenMV Cam M7/H7 you can now run 8-bit quantized TensorFlow Lite flat buffer models! Included with this new functionality is a person detector model built-in to the flash on your OpenMV Cam M7/H7 that is capable of detecting if there's a person or no person within your OpenMV Cam's fields of view!

We decided to include the person detector model into your OpenMV Cam's flash to make using this feature really easy. That said, after adding the person detector model, USSL, and TensorFlow we're out of free flash space. New features added to the OpenMV Cam firmware now will require us to remove other things and optimize code to make space for them.

TensorFlow Lite for Microcontroller Details

You can read all about the new TensorFlow module here. For our initial release we support image classification and segmentation. Once Google releases a micro object detection model we can add support for object detection too. Anyway, out of the box we support the following TensorFlow layers such as depth wise convolution layers, convolution layers, max pool layers, fully connected layers, and more.

Moving on, your OpenMV Cam M7 and H7 are now running official TensorFlow code so you now leverage Google's desktop TensorFlow library (along with Keras) to train models. To get started you can follow Google's in-depth guide here.

Also, if you are interested in adding TensorFlow Lite for Microcontroller support to any other Cortex-M4 or Cortex-M7 Microcontroller we have pre-compiled TensorFlow Lite for Microcontroller libraries here. The way Google ships TensorFlow Lite for Microcontrollers very much requires you to use their build system versus you integrating their code into your build system. Our library allows you to more easily integrate TensorFlow support into your firmware without having to deal with complex build system issues. Additionally, we've wrapped up all the C++ code running under hood with a simple C interface for easy integration.

So, launch OpenMV IDE, download the latest firmware update, and enjoy TensorFlow on your OpenMV Cam!