Доброго времени суток)
После долгих мытарств мне удалось наконец удалось научиться общаться с модулями аппаратной обработки видео процессора DM365. , в частности, схема на 84 странице, вполне доступно объясняет, что можно сделать с изображением перед тем, как оно выйдет из видеовыхода. Конкретно для моей задачи мне необходим детектор границ. Одним из самых популярных программных решений является использование . Однако виртурилка, даже с помощью хорошо оптимизированной библиотеки OpenCV, просчитывала один кадр разрешением 320х180 за 2,5 секунды, что, естественно, для системы технического зрения чудовищно медленно. Поэтому для решения этой задачи был выбран модуль 2D Edge Enhancer (блок-схема его работы есть в том же документе на стр. 92), который вполне успешно с ней справился. Для моей работы трансляция видео на какой-либо хост не требуется, отладочные скриншоты снимаются на самой виртурилке и сохраняются на sd карточку в рабочем разрешении 320x180 и выглядят весьма неказисто, поэтому выкладывать их тут не буду) Однако после прекращения выполнения моей программы значения, записанные в регистры проца, сохраняются, поэтому в админке при включении, например, RTMP трансляции можно увидеть .
Как все это работает я сейчас рассказывать не буду - много буков, но если данная тема найдет достаточно заинтересованных слушателей, могу ответить на вопросы или даже попытаться написать отдельную подробную статью. Что делать с границами дальше - воля ваша. Я же собираюсь использовать эти данные для нахождения взлетно-посадочной полосы, на которую буду сажать свой беспилотник с помощью APM. Собственно, сам алгоритм обнаружения ВПП уже написан и работает, выдавая, правда, всего 1 FPS, осталось его оптимизировать и научиться общаться с APM. Дружбу с APM, кажется, здесь кто-то уже налаживал, поэтому, я надеюсь, мне кто-нибудь поможет)
Всем успехов и спасибо за внимание)