v1.0.0-beta¶
v1.0.0-beta — це перший (бета) випуск мікропрограми OpenMV — перша публічна збірка OpenMV Cam. Вона закладає фундамент, на якому побудовано все подальше: середовище виконання скриптів MicroPython на STM32F4 OpenMV Cam, API датчика камери sensor, бібліотека технічного зору image та OpenMV IDE для живої розробки. Оскільки це перший випуск, мігрувати нема з чого — тут наведено перелік усього, що увійшло до початкової мікропрограми.
Основне¶
MicroPython на OpenMV Cam — виконання скриптів Python на камері через USB з інтерактивним REPL та інтерфейсом налагодження IDE.
Захоплення зображень з камери — модуль
sensor: налаштування формату пікселів / роздільної здатності / частоти кадрів і захоплення кадрів за допомогоюsnapshot().Технічний зір — бібліотека
image: виявлення кольорових плям, малювання, фільтри, порівняння шаблонів, виявлення облич через каскади Хаара та ключові точки.OpenMV IDE — настільне IDE з переглядачем кадрового буфера в реальному часі, редактором коду та оновленням мікропрограми прямо з IDE.
Апаратне забезпечення — оригінальна OpenMV Cam (STM32F4) з камерами OmniVision OV9650 / OV2640, підтримка SD-карти та WiFi-модуля.
Нові функції¶
Скрипти та модулі:
Середовище виконання MicroPython як основа мікропрограми, з виконанням скриптів на камері через інтерфейс налагодження USB та інтерактивний REPL.
Модуль
sensor—set_pixformat()/set_framesize()/set_framerate(), керування стелею підсилення / яскравістю / контрастністю / підсиленням,reset(),snapshot(), горизонтальне дзеркалення та вертикальне перевертання — а також константи датчика та роздільної здатності.Модуль технічного зору
image(imlib), що надає об’єкти зображень (з протоколом буфера Python) та інструменти обробки зображень.Модуль
time/clockдля відліку часу та вимірювання FPS.Ранні модулі периферійних пристроїв —
led(RGB LED),spi,gpio(введення/виведення виводів з реєстрацією зовнішніх переривань),uart, апаратнийrng, системний таймер, а такожfile/selectдля файлової системи.Мережа через
socket/wlan(CC3000 WiFi), драйвер дисплеяlcd, модуль теплового датчикаmlx90620та запис відео AVI/MJPEG.
Обробка зображень:
Кадри камери захоплюються у динамічно виділений кадровий буфер.
Виявлення кольорових плям (заповнення областей) та порогова обробка у просторі кольорів LAB/XYZ (з таблицями перетворення RGB↔LAB).
Примітиви малювання (лінія, рядок/шрифт, коло), фільтри (ерозія / дилатація / медіана / інверсія / бінаризація / порогування), масштабування зображень (білінійне), виділення підзображень, blit та альфа-змішування.
Порівняння шаблонів (зі збереженням/завантаженням шаблонів), виявлення облич/об’єктів каскадом Віола-Джонса Хаара (завантажувані каскади + конвертер каскадів OpenCV), каскад LBP та детектор очей, виявлення та опис ключових точок FAST / SURF / FREAK з їх зіставленням, інтегральні зображення та виявлення руху.
JPEG-кодування (з контролем якості), збереження зображень PPM / PGM / PNG / raw та кодування відео AVI/MJPEG.
IDE та інструменти:
Настільний застосунок OpenMV IDE — переглядач кадрового буфера в реальному часі з FPS, редактор коду (відкрити / новий / зберегти / зберегти як, останні файли, меню вбудованих прикладів), підключення / скидання / автопідключення та збереження/завантаження конфігурації.
Оновлення мікропрограми через DFU прямо з IDE, утиліта
pydfuна чистому Python та USB-команда для примусового переходу в завантажувач; хост-бібліотека/протоколopenmv.py; окремий переглядач кадрового буфера та інструмент для роботи з каскадами; правила udev для Linux.
Інші зміни та покращення¶
Вбудовані приклади скриптів: виявлення плям, виявлення/відстеження облич, SURF / ключові точки, порівняння шаблонів, LCD, переглядач кадрового буфера, blit, MJPEG-стрімер, запис AVI, сервер echo, FPS та демонстрація запису JPEG / зображень.
Апаратне забезпечення та підтримка плат¶
OpenMV Cam — STM32F4xx (STM32F407 / F429) для ранніх апаратних ревізій із CMSIS + HAL периферійних пристроїв/Cube STM32 та CMSIS-DSP.
Камери — OmniVision OV9650 та OV2640 (SCCB/I2C, керування регулятором напруги) через HAL датчика, а також тепловий ІЧ-датчик MLX90620; роздільна здатність від QQCIF/QCIF до SVGA/UXGA при до 30 FPS.
Зберігання / підключення — SD-карта (SPI та SDIO) з FatFS, внутрішня флеш-файлова система, SDRAM (кадровий буфер у SDRAM), USB OTG FS (налагодження + DFU), CC3000 WiFi (WiFi / BLE модулі), ІЧ LED, програмний/апаратний I2C та SPI з DMA.
Несумісні зміни API¶
Відсутні. v1.0.0-beta — це перший (бета) випуск мікропрограми OpenMV — попередніх випусків, з якими можна було б порушити сумісність, немає. Наступні випуски документують свої несумісні зміни відносно попередніх; дивіться решту журналу змін.