OpenMV固件源码
Go to file
Kwabena W. Agyeman 27f5110ab7 Add extra frame buffer.
You can now allocate an extra frame buffer for storing images. However,
this takes memory from the main frame buffer. In particular this reduces
the RAM for many methods that do image processing making memory errors
more likely to happen. Note that you may allocate as many extra fb's as
you like. Dealloc happens in reverse order.

Anyway, you can use this method to now storage things like difference
images in RAM allowing for MUCH faster frame difference image
processing.

Moving on, to keep memory management sane... the second fb looks just
like an image and you can use all the image methods to load and update
it, etc. That said, if users deallocate the second FB they need to *NOT*
use the image pointer anymore. There's no way for me to delete the image
pointer in python right now so this is just something that has to be
manually managed (even if I did setup a deconstructor the second FB is
on a stack... so, things wouldn't work so easily with that).
2017-12-24 22:40:26 -05:00
.github Update issue template 2017-10-16 15:58:54 +02:00
eagle Add Servo shield. 2017-07-29 21:34:55 +02:00
firmware Update firmware images. 2017-11-04 17:57:52 +02:00
src Add extra frame buffer. 2017-12-24 22:40:26 -05:00
udev Fix udev rules 2017-01-17 20:34:27 -08:00
usr SSIM Code 2017-12-23 15:01:13 -05:00
util Add a LUT for illuminvar() 2017-12-23 21:16:55 -05:00
.gitignore Update gitignore 2015-07-28 20:35:51 +02:00
.gitmodules Update gitmodules. 2016-05-05 17:28:33 +02:00
CHANGELOG.md Update CHANGELOG. 2017-11-04 18:11:06 +02:00
LICENSE Update license 2014-09-20 05:09:52 +02:00
README.md Update README.md 2017-09-15 17:18:59 +02:00

OpenMV (Open-Source Machine Vision)

The OpenMV project aims at making machine vision more accessible to beginners by developing a user-friendly, open-source, low-cost machine vision platform.

OpenMV cameras are programmable in Python3 and come with an extensive set of image processing functions such as face detection, keypoints descriptors, color tracking, QR and Bar codes decoding, AprilTags, GIF and MJPEG recording and more. Additionally, OpenMV includes a cross-platform IDE (based on Qt Creator) designed specifically to support programmable cameras. The IDE allows viewing the camera's frame buffer, accessing sensor controls, uploading scripts to the camera via serial over USB (or WiFi/BLE if available) and includes a set of image processing tools to generate tags, thresholds, keypoints etc...

The first generation of OpenMV cameras is based on STM32F ARM Cortex-M Digital Signal Controllers (DSCs) and Omnivision sensors. The board has built-in RGB and IR LEDs, USB FS for programming and video streaming, uSD socket and I/O headers breaking out PWM, UARTs, SPI and I2C. Additionally, OpenMV supports extension modules (shields) using the I/O headers such as WiFi, BLE, Thermal (FIR) and LCD shields.

The OpenMV project was successfully funded via Kickstarter back in 2015 and has come a long way since then. For more information, please visit https://openmv.io