v1.8.0¶
v1.8.0 — это крупный функциональный выпуск, сосредоточенный на сетевых возможностях и видео: он добавляет программирование OpenMV Cam по WiFi, видеорегистратор буфера кадра и меню Tools > Video Tools на основе встроенного ffmpeg/ffplay. Также добавлена поддержка новой платы OpenMV Cam H7 (OMV4) и расширена работа IDE на Raspberry Pi (Linux ARM). Этот выпуск остаётся на базе Qt Creator 4.0.2 и не содержит несовместимых изменений для существующих проектов.
Основные моменты¶
Программирование по WiFi. IDE теперь прослушивает широковещательные UDP-объявления от OpenMV Cam с установленным WiFi-щитом, перечисляет обнаруженные камеры (имя плюс
IP:port) в диалоге подключения и общается с ними по TCP в качестве альтернативы последовательному порту (69dc7dfbf).Видеорегистратор буфера кадра. Новые кнопки на панели инструментов Record/Stop записывают живой поток изображений в файл OpenMV
ImageWriter, одновременно показывая метку статуса с прошедшим временем/размером/FPS (39142ef70, 5aceab31a).Меню Video Tools.
Tools > Video Toolsдобавляет Convert Video File и Play Video File, использующие встроенный ffmpeg/ffplay для перекодирования и воспроизведения видео и прозрачно конвертирующие записиImageWriter.binсначала в MJPEG AVI; Play Video File доступен только в Windows и macOS, поскольку ffplay не входит в комплект для Linux/Raspberry Pi (d35f8d1ca, 8a99c994f).OpenMV Cam H7 (OMV4). Новая плата STM32H743 теперь распознаётся и поставляется с собственным встроенным загрузчиком и прошивкой (e14810382).
Поддержка Raspberry Pi. Теперь включены сборки IDE для Linux ARM, что приносит OpenMV IDE на Raspberry Pi (f551b5f97).
Новые возможности¶
Файл настроек OpenMV Cam.
Toolsдобавляет диалог для записи настроек загрузки/WiFi камеры вmain.ini, включая включение WiFi, выбор режима клиента или точки доступа, SSID/пароль/тип безопасности, имя платы и опцию Duplicate REPL on the UART on startup, хранящуюся в настройках загрузкиmain.ini(69dc7dfbf, 39142ef70).Параметры командной строки для сетевого терминала. Добавлены
-open_udp_client_terminal,-open_udp_server_terminal,-open_tcp_client_terminalи-open_tcp_server_terminalнаряду с существующей опцией последовательного терминала (6362066a8, d75209269).Дополнительные параметры командной строки. Открыты
-update_resources,-open_serial_terminal(port_name:baud_rate),-override_read_timeoutи-override_read_stall_timeout(061aacf15).Режим сервера терминала. Терминальные подключения UDP/TCP теперь могут работать в режиме сервера, привязываясь к локальному порту (порт
0выбирает любой) вместо подключения только к удалённому хосту (956e8a2f5).Новые примеры скриптов. Добавлены примеры коррекции линзы, коррекции 3D-поворота и низкого энергопотребления со сном датчика, а пример обнаружения отрезков линий переписан под новый API
find_line_segments(merge_distance, max_theta_diff)(061aacf15).
Прочие изменения и улучшения¶
Подсказки аргументов функций и подсветка синтаксиса теперь корректно охватывают несколько строк, поэтому многострочные вызовы функций сохраняют подсказки аргументов и подсветку (6535e9fdd, 4638bdd18).
Строка состояния терминала с разрешением/ROI теперь также сообщает количество пикселей в ROI (956e8a2f5).
Диалог регистрации OpenMV Cam теперь показывает плату/ID и адрес электронной почты поддержки, а диалог прогресса
Connecting...советует нажать Cancel через 5 секунд (4638bdd18, e14810382).Панель Search Results теперь переоформляет поле с номерами строк и текст результатов явными цветами тёмной темы, чтобы они были читаемы на тёмном интерфейсе (b2599f9ea).
Циклы записи терминалов Serial/UDP/TCP теперь кратко уступают управление между записями, чтобы интерфейс оставался отзывчивым и повышалась пропускная способность (c4700e2b0).
Поля значений статистики гистограммы теперь резервируют фиксированную минимальную ширину, поэтому панель больше не перекомпонуется при изменении чисел, а кнопки выдвижной панели переключения режимов растягиваются вместо использования фиксированной ширины 160px (5aceab31a).
Подавлено ложное предупреждение
JIT is disabled for QMLпри запуске с помощью пользовательского обработчика сообщений Qt (954220e39).
Исправления ошибок¶
Всплывающие подсказки документации и подсветка теперь распознают типы исключений Python (рассматриваются как данные), и несколько записей документации модулей/индексов были исправлены, чтобы они отображались корректно (4638bdd18, 3613a7867, 897b9b0e2, e3e41c56e).
Усилены проверки в средстве проверки обновлений пакетов и при разборе широковещательных объявлений/регистрации камер за счёт привязанных, обрезанных регулярных выражений и более строгого сопоставления HTML-ответов во избежание ложных совпадений (461af1148, 4638bdd18).
Исправлен идентификатор платы OpenMV Cam M4 (OpenMV2), используемый для определения API старой прошивки, с
OMV2наOPENMV2(449024fe8).Усилена защита ввода-вывода камеры и видеоперекодировщика от повреждённых/чрезмерно больших данных кадра за счёт более строгих проверок границ ширины/высоты/bpp/длительности, а также устранено деление на ноль при вычислении FPS видео (08248f208, d0cbc27e5).
Инструменты конвертации/воспроизведения видео теперь работают на macOS, 32-битных системах и Linux-ARM за счёт запуска ffmpeg/ffplay через сгенерированный shell-скрипт или обёртку
cmd.exeи включения в комплект бинарников ffmpeg для Linux (b9644e859, 9f0520bbe, 35eb69bce, c4700e2b0).
Поддержка платформ и инструментов¶
База Qt Creator: 4.0.2.
OpenMV Cam H7 (OMV4, STM32H743): новая плата распознаётся с собственным встроенным загрузчиком и прошивкой (e14810382).
Встроенная прошивка OpenMV: обновлена до 2.6.0 для OPENMV2/OPENMV3/OPENMV4 (e14810382).
Встроенный ffmpeg/ffplay: добавлены статические сборки ffmpeg 3.3.3 для Windows, macOS, Linux x86, Linux x86_64 и Linux ARM (Raspberry Pi); ffplay входит в комплект только для Windows и macOS (2193d7923, af92ad59e).
Raspberry Pi (Linux ARM): сборки включены за счёт отключения автономной справки
HelpManagerи перехода упаковки bindist на tar.gz (f551b5f97).
Несовместимые изменения¶
Отсутствуют. Этот выпуск остаётся на базе Qt Creator 4.0.2, и существующие проекты и рабочие процессы не затронуты.