Эмуляция CMUcam2#

CMUcam2 обладает следующими возможностями:

  • Отслеживание определённых пользователем цветовых пятен со скоростью до 50 кадров в секунду (частота кадров зависит от настроек разрешения и размера окна)

  • Отслеживание движения с помощью покадрового вычитания со скоростью 26 кадров в секунду

  • Найти центроид любых данных отслеживания

  • Собрать данные о среднем цвете и дисперсии

  • Собрать 28-столбцовую гистограмму каждого цветового канала

  • Обработка изображений с горизонтальной фильтрацией краёв (не поддерживается)

  • Передача бинарного растрового изображения отслеживаемых пикселей на изображении в реальном времени

  • Произвольный оконный режим изображения

  • Понижение дискретизации изображения

  • Настройте свойства изображения камеры

  • Вывести необработанное изображение (один или несколько каналов)

  • Разрешение до 176 x 255

  • Поддерживает скорости передачи: 115 200 57 600 38 400 19 200 9 600 4 800 2 400 1 200 бит/с

  • Управление 5 выходами сервоприводов

  • Режим ведомой параллельной обработки изображений от единой шины камеры (не поддерживается)

  • Автоматически использовать сервоприводы для двухосевого отслеживания цвета

  • Ч/б аналоговый видеовыход (PAL или NTSC, в зависимости от используемого модуля камеры)

  • Гибкая настройка выходных пакетов

  • Режим пониженного энергопотребления

  • Многопроходная обработка буферизованного изображения

Предварительно скомпилированные образы эмуляции CMUcam2#

Compiled Firmware Image

Существует несколько различий между эмуляцией CMUcam2 и настоящим CMUcam2. Ниже приведён список всей функциональности CMUcam2 с зачёркнутыми неподдерживаемыми функциями. Многие зачёркнутые функции будут поддерживаться в ближайшем будущем.

BM Режим буфера
CR — регистр камеры
CP — питание камеры
DC — канал разности
DS — понижение дискретизации
FD — разность кадров
FS — потоковая передача кадров (добавлено в r553)
GB — получить состояние кнопки
GH — получить гистограмму
GI — получить входы Aux IO
GM — получить среднее
GS — получить положения сервоприводов
GT — получить параметры отслеживания
GV — получить версию
GW — получить окно
HC — настроить гистограмму
HD — разность высокого разрешения
HR — режим высокого разрешения
HT — установить отслеживание гистограммы (не поддерживается)
L0 — управление светодиодом
LF — загрузить кадр для вычисления разности
Построчный режим LM
MD — маскирование разности (не поддерживается)
NF Фильтр шума
OM Маска выходного пакета
PD Разность пикселей (не поддерживается)
PF Фильтр пакетов
PM Режим опроса
RF Чтение кадра в буфер
RM Необработанный режим
RS Сброс
SF Отправка кадра
SM Маска сервопривода
SO Выход сервопривода
SP Параметры сервопривода
ST Команда установки трека
SV Положение сервопривода
TC Отслеживание цвета
TI Инвертированное отслеживание
TW Отслеживание окна
UD Загрузка буфера различий (не поддерживается)
VW Виртуальное окно

Следующие команды не будут поддерживаться в ближайшем будущем:

CT — установить тип камеры
DM — режим задержки
L1 — управление светодиодом (вместо этого см. SO)
PS Пропуск пакетов
SD Глубокий сон
SL Команда сна

Различия эмуляции CMUcam2#

  • Диапазон входа сервопривода

    • Сервоприводы теперь принимают 8-битные значения 0-255

  • Перемычки

    • Из-за отсутствия перемычек на CMUcam3 изменения скорости передачи и направления сервоприводов необходимо выполнять на этапе компиляции — они управляются директивами #define в начале исходного кода cmucam.c

  • Команда Set Input (SI pin )

    • Устанавливает pin как вход

  • Команда Software Color Space (CS value )

    • CS 0 устанавливает цветовое пространство по умолчанию для аппаратуры (RGB или YCrCb)

    • CS 1 выполняет программное преобразование в цветовое пространство HSV

      • Преобразование предполагает, что аппаратура настроена на RGB для корректных результатов

      • Пространство HSV — это целочисленное пространство, где все значения масштабированы в диапазоне от 16 до 240

    • Примечание: это доступно только в r504 и выше

  • Set Output может управлять синим и оранжевым светодиодами

    • Сервоприводы 2 и 3 перестанут работать

    • SO 2 1 -> Синий вкл

    • SO 2 0 -> Синий выкл

    • SO 3 1 -> Оранжевый вкл

    • SO 3 0 -> Оранжевый выкл

  • Нет режима ведомого

    • Это возможно, но в настоящее время мы это не поддерживаем

  • Маска вывода (OM)

    • Поддерживает только пакеты T и S (тип 0 и 1)

  • Построчный режим (LM)

    • Поддерживает только режим отслеживания цвета (LM 0 1)

    • Статистика отслеживания цвета добавлена в r523 (LM 0 2)

  • Send JPEG (SJ)

    • Отправляет jpeg-сжатый кадр, заголовок и всё остальное

  • Демонстрационный режим

    • Поскольку удержание кнопки программирования переводит CMUcam3 в режим программирования, вам нужно нажать кнопку через полсекунды после запуска, чтобы войти в демонстрационный режим

  • Разность кадров высокого разрешения

    • Теперь это работает так же, как покадровое вычитание низкого разрешения, только при более высоком разрешении