2012-01-01 3 views
3

Какие видеоформаты мы можем использовать в OpenCV? Может ли быть использовано в дополнение к AVI и нагрузке от камеры? Если это единственные поддерживаемые форматы, это видео конвертер, необходимый для использования других видеоформатов.Загрузка изображений в OpenCV

ответ

1

Я не уверен, насколько это актуально, но this OpenCV wiki page дает хороший обзор того, какие кодеки поддерживаются. Если выглядит как AVI, это единственный формат с достойной кросс-платформенной поддержкой. Ваши варианты - либо выполнить преобразование с помощью внешнего конвертера (например, вы предлагаете), либо написать код, который использует видеотека для загрузки изображения и создания соответствующего заголовка cv::Mat или IplImage * для данных.

Если вы не обрабатываете огромное количество видео, я предлагаю пройти путь наименьшего сопротивления и просто конвертировать видео в AVI (см. Ссылку выше для получения информации о том, что поддерживает OpenCV). Просто будьте осторожны, чтобы избежать сжатия с потерями: это разрушит хаос с большим количеством алгоритмов обработки изображений.

+1

Связанная страница wiki исчезла, но архив [здесь] (https://web.archive.org/web/20130524095153/http://opencv.willowgarage.com/wiki/VideoCodecs). – chappjc

0

OpenCV «выводит» видеокодирование и декодирование в другие библиотеки (например, ffmpeg и VFW). Кроме того, посмотрите на источник highguidirectory, чтобы просмотреть все обертки VideoCapture (в частности обратите внимание на реализации cap_*). AVI - это просто контейнер, и на самом деле это не так важно для видеокодеков, которые может читать OpenCV. AVI может содержать несколько различных комбинаций видео, аудио и даже потоков субтитров. См. Мой другой answer об этом. Here также является быстрой статьей, объясняющей различия между контейнерами и кодеками.

Итак, если вы работаете в Linux, убедитесь, что ffmpeg поддерживает декодирование видеокодека, который вас интересует. Вы можете проверить, какие кодеки вашей версии FFmpeg поддерживает с помощью следующей команды:

ffmpeg -formats 

В Windows, вы хотите, чтобы убедиться, что у вас есть много доступных кодеки для декодирования различных типов видео, как в K-Lite Codec Pack.