v1.0.0

v1.0.0 — это первый публичный выпуск OpenMV IDE, настроенной сборки Qt Creator (Qt Creator 4.0.2), адаптированной для разработки на OpenMV Cam. Он добавляет обнаружение и подключение через USB-serial, выполнение скриптов на камере, живой буфер кадра и гистограмму, а также навигацию по трассировке стека Python. Несовместимых изменений нет, так как это первоначальный выпуск.

Основные моменты

  • Qt Creator с брендингом OpenMV с собственным экраном-заставкой, меню Examples и редактором Python, который открывает новые безымянные файлы .py, предварительно заполненные шаблоном снимка с датчика для OpenMV Cam.

  • Connect перечисляет последовательные порты, соответствующие VID/PID OpenMV Cam, и считывает версию прошивки платы, отображаемую в строке состояния.

  • Запуск на камере с элементами управления панели инструментов Connect/Disconnect/Start/Stop: Start (Ctrl+R) отправляет текущий скрипт на камеру, а Stop останавливает его.

  • Просмотрщик живого буфера кадра с масштабированием по размеру, опциональным сжатием JPEG, переключателем отключения для максимальной производительности и живым отображением FPS.

  • Панель живой гистограммы с переключением между цветовыми пространствами RGB, Grayscale, LAB и YUV (Grayscale/LAB рекомендуются для отслеживания цвета).

  • Навигация по трассировке стека разбирает ошибки Python с камеры и переводит редактор к проблемному файлу и строке.

Новые возможности

  • Оболочка OpenMV IDE. Приложение запускается с отображаемым именем OpenMV IDE и экраном-заставкой OpenMV, добавляет подменю Examples, формируемое путём сканирования каталога встроенных примеров, и переопределяет действие New, так что безымянные файлы .py открываются предварительно заполненными шаблоном снимка import sensor с обычной подсветкой синтаксиса Python.

  • Connect / версия прошивки. Connect перечисляет доступные последовательные порты, фильтруя по USB VID/PID OpenMV Cam (0x1209/0xABD1), показывает диалог выбора порта, когда совпадает более одного, открывает порт, считывает версию прошивки платы и отображает её в строке состояния.

  • Элементы управления выполнением скрипта. Действия Connect, Disconnect, Start и Stop управляют камерой. Start (Ctrl+R) отправляет скрипт текущего редактора на камеру для выполнения, Stop останавливает работающий скрипт, а IDE отслеживает состояние выполнения для включения или отключения кнопки Stop.

  • Просмотрщик буфера кадра. Панель Frame Buffer отображает кадры, передаваемые с камеры, с масштабированием по размеру, опциональным переключателем сжатия JPEG для повышения частоты кадров, переключателем отключения для максимальной производительности и живой меткой FPS.

  • Сохранение изображения и шаблонов. Действия контекстного меню (по правому клику) на буфере кадра позволяют сохранить изображение на диск (BMP/JPG/PNG/PPM), сохранить шаблонное изображение (BMP/JPG/PGM/PPM) или сохранить дескриптор ключевых точек/признаков (.lbp/.ff) прямо на накопитель камеры. Когда поверх кадра растягивается резиновая рамка выделения, все три действия работают с обрезанным выделением, а их пункты меню соответственно меняют названия (например, Save Image selection to PC); в противном случае они используют весь отображаемый кадр.

  • Панель гистограммы. Панель Histogram строит распределение каналов текущего кадра и может переключаться между цветовыми пространствами RGB, Grayscale, LAB и YUV.

  • Навигация по трассировке стека. Трассировки стека Python, выводимые камерой, разбираются на лету; IDE открывает или активирует проблемный файл (при необходимости находя файлы на накопителе камеры), переходит к указанной строке и выводит сообщение об ошибке. Вывод последовательного порта также перенаправляется в терминал Message Manager.

  • Привязка накопителя камеры. IDE связывает съёмный накопитель FAT/msdos с подключённой камерой через кнопку Drive: в строке состояния, что позволяет сохранять файлы на камеру и находить файлы по трассировке стека.

  • Меню справки и сохранённое состояние. Меню Help добавляет ссылки на документацию OpenMV, форумы, ссылку «About OpenMV Cam» с распиновкой и диалог «About OpenMV IDE». Состояние окна, включая положения разделителей, масштаб, сжатие JPG, переключатель отключения буфера кадра, цветовое пространство гистограммы и последний последовательный порт, сохраняется между сеансами.

Прочие изменения и улучшения

  • В Linux при ошибке подключения из-за отказа в доступе выводится диалог с предложением исправления через добавление в группу dialout командой sudo usermod -a -G dialout.

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

  • Базовая версия Qt Creator: 4.0.2.

  • Плагин обменивается данными с камерой по специальному протоколу USB-debug serial. Несколько возможностей на уровне протокола присутствуют в слое ввода-вывода, но не выведены в интерфейс в этом выпуске: загрузчик флеш-памяти (запуск, сброс, стирание, запись), управление атрибутами камеры (контрастность, яркость, насыщенность, потолок усиления), команда системного сброса и путь обновления кадра. Ни одна из них пока не привязана к меню, кнопке или виджету для пользователей.

Несовместимые изменения

Отсутствуют. Это первоначальный выпуск OpenMV IDE.