v2.5.0

v2.5.0 переробляє Model Editor у повноцінний Dataset Editor для машинного навчання, перемикає прошивку мікропрограми на кросплатформний інструмент dfu-util та додає підтримку камер OpenMV під брендом Arduino. Цей випуск залишається на базі Qt Creator 4.0.2 і не містить критичних змін для існуючих проектів.

Основні можливості

  • Dataset Editor замінює старий Model Editor, дозволяючи створювати набори даних зображень для машинного навчання безпосередньо з камери з іменованими папками класів та панеллю живого попереднього перегляду.

  • Export Dataset записує набір даних у вигляді .zip, сумісного з Edge Impulse.

  • Прошивка мікропрограми через dfu-util замінює шлях лише для Windows DfuSeCommand.exe / pydfu.py, усуваючи необхідність вручну встановлювати libusb/pyusb на macOS та Linux.

  • Підтримка Arduino Portenta H7 розпізнає камери OpenMV під брендом Arduino для виявлення серійного порту, підключення до завантажувача та завантаження мікропрограми через DFU.

  • Прогрес завантаження оновлень мікропрограми/пакетів тепер реальний та скасовуваний, з окремими фазами завантаження та встановлення.

Нові функції

  • Dataset Editor. Model Editor було переопрацьовано у повноцінний Dataset Editor для створення наборів даних зображень для машинного навчання. Меню Dataset Editor додає дії New Dataset, Open Dataset та Close Dataset; новий набір даних попередньо заповнюється шаблоном dataset_capture_script.py, а labels.txt генерується та синхронізується при додаванні папок класів. Зображення захоплюються на камеру в іменовані папки класів, відображаються у дереві на основі QFileSystemModel із подвійним кліком для відкриття та контекстним меню Delete/Rename, поряд із панеллю живого попереднього перегляду (aa0101189, 96cbcd97a, f1a39272b, 28cc1bfbd).

  • Export Dataset. Нова дія записує набір даних у вигляді .zip, вирівнюючи зображення у файли з іменами класів <class>.<snapshot>, сумісні з Edge Impulse, із скасовуваним діалоговим вікном прогресу. Папки класів змінено з пронумерованих (NNNNN.name.class) на прості name.class (f1e6b6a0d, 0297d4b9e, aa69ab62c).

  • Прошивка мікропрограми через dfu-util. Процес прошивки мікропрограми переписано для використання кросплатформного інструменту dfu-util замість старого шляху Windows DfuSeCommand.exe / pydfu.py. connectClicked() тепер викликає downloadFirmware(), а старі діалогові вікна з інструкцією «PyDFU requires libusb» видалено, що усуває вимогу вручну встановлювати libusb/pyusb на macOS та Linux (2bf0b71c7, 5396b7072, d64cb05b1).

  • Іконки для робочого столу та Linux-лаунчера. На Windows інсталятор тепер створює ярлик на робочому столі на додаток до запису в меню «Пуск», а збірка для Linux тепер встановлює іконку програми (openmv.png) через bin.pro. Посилання Icon у .desktop було додано, але пізніше видалено, тому Linux-лаунчер поставляється без запису Icon= (327fc2f69, ccca0859f, b1e2b0469).

  • Інспекція одного пікселя. Переглядач кадрового буфера та послідовний термінал тепер показують Point (x, y) у мітці роздільної здатності та малюють смугу виділення при кліку на одну точку, замість відображення лише ROI з кількох пікселів (86839b4c0).

  • Нові приклади скриптів. Включено великий набір нових прикладів: передача зображень на відстані через UART/USB (raw та JPEG, ролі контролера та пристрою), демо дистанційного керування «popular features», відстеження зчитування ІК-світлодіода зі швидкістю 100 fps, RTSP відеосервер, розширене малювання зображень із власними палітрами, математика у стилі numpy ulab, та корекція перспективи/обертання (c0a6ff6c8, 0cc0a7761, d77667c20).

Інші зміни та покращення

  • Прогрес завантаження оновлень. Завантаження оновлень мікропрограми/пакетів тепер відображає реальний прогрес і може бути скасоване, розділяючи фази завантаження та встановлення замість єдиного невизначеного індикатора встановлення (c36d151f3, f1a39272b).

  • Центрування кадрового буфера. Переглядач кадрового буфера тепер центрує зображення в межах вікна перегляду при оновленнях та зміні розміру (327fc2f69).

  • Посилання HTTPS. Зовнішні посилання довідки та генератора коду та URL-адреси для завантаження оновлень перемкнуто з http на https (генератори Google, форуми OpenMV, завантаження openmv.io та посилання на ліцензію GPL) (a0a104e63).

  • Оновлення комплектних прикладів. Старий приклад CMSIS CNN 09-Feature-Detection/cnn.py видалено, приклад 02-Board-Control/dac_control.py перейменовано на dac_write.py, а новий приклад 02-Board-Control/dac_write_timed.py додано; також додано комплектний файл міток mobilenet_labels.txt (330548305).

  • Оновлена комплектна мікропрограма. Перезібрано та оновлено комплектні образи мікропрограми (openmv/uvc/bootloader) для плат OPENMV2, OPENMV3, OPENMV4 та OPENMV4P у кількох комітах оновлення ресурсів. Версія комплектної мікропрограми (firmware.txt) змінювалась 3.5.2 -> 3.6.1 -> 3.6.2 -> 3.6.4 з фінальним значенням 3.6.4, а датчик HM01B0 (0xB0) додано до списку розпізнаних датчиків (sensors.txt) (0cc0a7761, c0a6ff6c8, a6df35010, 330548305).

  • Оновлені бінарні файли dfu-util. Оновлено комплектні бінарні файли prefix/suffix/util dfu-util для arm, linux32, linux64, osx та windows (dd8733632).

Виправлення помилок

  • Виправлено миготіння командного рядка/консолі на екрані під час завантаження мікропрограми через DFU та операцій відеоінструменту (ffmpeg/ffplay) у Windows (092fbad74).

  • Виправлено стандартний шрифт редактора на ARM Linux (наприклад, Raspberry Pi): тепер використовується DejaVu Sans Mono замість відсутнього/невідповідного сімейства Monospace (53a864787).

Підтримка платформ та інструментів

  • База Qt Creator: 4.0.2.

  • Arduino Portenta H7 / камери OpenMV під брендом Arduino тепер підтримуються: USB VID Arduino 0x2341 (з маскуванням PID 0x005B) розпізнається для виявлення серійного порту та підключення до завантажувача у всіх місцях сканування серійних портів (7f3e2b389, 3687643c6).

  • Завантаження мікропрограми через DFU тепер також орієнтується на пристрій DFU Arduino (2341:035b) на додаток до завантажувача STM 0483:df11, що дозволяє прошивати мікропрограму плат Arduino через dfu-util (2d47c6dac).

  • Новий датчик: датчик HM01B0 (0xB0) додано до списку розпізнаних датчиків (sensors.txt) (a6df35010).

  • Комплектні інструменти: інструменти прошивки dfu-util тепер поставляються для arm, linux32, linux64, osx та windows.

  • Комплектна мікропрограма: образи openmv/uvc/bootloader для OPENMV2, OPENMV3, OPENMV4 та OPENMV4P перезібрано, а версію комплектної мікропрограми оновлено до 3.6.4 (прогресія 3.5.2 -> 3.6.1 -> 3.6.2 -> 3.6.4) (a6df35010, c0a6ff6c8, 0cc0a7761).

Критичні зміни

Відсутні. Існуючі проекти та скрипти продовжують працювати без змін; переписаний процес прошивки мікропрограми прозорий для користувачів.