OpenCV против OpenVX для встроенной системы

Я хочу сделать программу распознавания изображений для Rasberry Pi. Я начал в OpenCV, однако только что обнаружил OpenVX, аппаратный ускоритель для OpenCV. Поскольку скорость и эффективность важны для встраиваемой системы, мне интересно, как воспользоваться этой новой технологией. Нужно ли переносить мой код на OpenVX или это программа, которая работает вместе с моей программой OpenCV?

5

Решение

Из проекта собственный сайт:

OpenVX может использоваться непосредственно приложениями или для ускорения промежуточного программного обеспечения более высокого уровня, такого как популярная библиотека OpenCV с открытым исходным кодом […]

введите описание изображения здесь

… что мне кажется довольно понятным — вы можете использовать OpenVX напрямую или в качестве поддержки OpenCV.

Однако также ясно, что OpenVX в настоящее время vapourware — он существует только как спецификация и набор заголовочных файлов (без реальной библиотеки).

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

Приведенная выше цитата взята из недооцененной страницы, но изначально была в пресс-релиз от 19 ноября 2013 года. Так что теперь это может быть близится к завершению как спецификация, но, возможно, далеко от завершения кода.

Также для использования должна быть поддержка OpenVX для GPU RPi, которая может быть большим барьером для использования на RPi, пока какая-либо третья сторона не реализует его.

7

Другие решения

Просто чтобы обновить этот вопрос чуть более актуальной информацией год спустя, к 2015 году. OpenVX, безусловно, определенно не Теперь vapourware 🙂 Существует пример реализации, и производители выпускают драйверы для других чипсетов.

И, хотя он еще не полностью ускорен, вы действительно можете получить OpenVX на Raspberry Pi — согласно инструкциям здесь (который включает в себя обсуждение / ссылки на возможность сделать это быстрее). Суть Pi в том, что обработка изображений интенсивна независимо от используемых библиотек и в конечном итоге определяется тем, насколько «доступным» является чип Broadcom GPU …

7

Как уже упоминалось на Главная страница OpenVX, У OpenVX появилась новая роль. (сравнить с ответ Клиффорда в 2014 году)

Теперь OpenVX нацелен на маломощные приложения реального времени, и мы не можем найти картину, которая подразумевает, что OpenVX больше не является базовым компонентом Opencv.

Сравнительная таблица указывает на их разный охват в настоящее время:

  • OpenCV: очень широкие функции визуализации и визуализации
    API / интерфейс камеры
  • OpenVX: Тесная ориентация на основное оборудование
    ускоренные функции для мобильного зрения — но расширяемое использование
    API внешней / собственной камеры
0
По вопросам рекламы [email protected]