2026-08-15
Обработка видео всегда была классической областью применения ПЛИС (программируемых логических интегральных схем). От ранних преобразований видеоформатов до современной многоканальной видеосшивки в реальном времени и анализа с помощью искусственного интеллекта, ПЛИС играют все более важную роль в обработке видео. В этой статье будет рассмотрена технологическая эволюция решений на основе ПЛИС для обработки видео и представлен опыт проектирования из реальных проектов.
Зачем нужна FPGA для обработки видео?
Обработка видео — типичный сценарий применения, характеризующийся «высокой пропускной способностью и низкой задержкой». В качестве примера возьмем видео 1080p 60fps:
Размер данных одного кадра: 1920×1080×3 байта ≈ 6 МБ
Пропускная способность данных в секунду: 6 МБ × 60 = 360 МБ/с
При склейке 4-канального видео в разрешении 1080p требуемая пропускная способность достигает 1,44 ГБ/с.
Такая высокая пропускная способность данных, если бы она обрабатывалась программным обеспечением ЦП, потребовала бы не только мощного процессора, но и привела бы к неприемлемой задержке. Однако FPGA может обеспечить истинную обработку в реальном времени с помощью аппаратных конвейеров: данные поступают через входной порт, проходят через различные модули обработки и выводятся через выходной порт, при этом задержка всего процесса контролируется с точностью до нескольких строк или даже нескольких пикселей.
Типичные приложения для обработки видео на ПЛИС (FPGA).
1. Преобразование видеоформата
Самые основные и распространенные потребности. К ним относятся:
Преобразование разрешения : 1080p ↔ 4K, масштабирование, обрезка
Преобразование интерфейсов : HDMI ↔ SDI, DVI ↔ HDMI, MIPI ↔ LVDS
Преобразование частоты кадров : 60 кадров в секунду ↔ 30 кадров в секунду, множитель частоты кадров
Преобразование цветового пространства : RGB ↔ YUV422/YUV420
Главное преимущество преобразования формата на основе FPGA — «нулевая задержка»: на вход подается один кадр изображения, а на выход — один кадр, без буферизации целых кадров данных между ними (требуется только построчная или оконная буферизация). Это особенно важно для сценариев с высокими требованиями к низкой задержке, таких как мониторинг в реальном времени и медицинская визуализация.
2. Многоканальная сшивка видео
В последние годы, в связи с развитием таких приложений, как автономное вождение и системы видеонаблюдения, все большую популярность приобретает технология объединения изображений с нескольких камер в единое панорамное изображение. Типичная архитектура решения для объединения изображений на ПЛИС выглядит следующим образом:
CAM1 → Получение изображения → Коррекция искажений ─┐
CAM2 → Получение изображения → Коррекция искажений ─┤
CAM3 → Получение изображения → Коррекция искажений ─┼ → Сшивание изображений → Сглаживание краев → Вывод
CAM4 → Получение изображения → Коррекция искажений ─┘
Ключевые технические моменты:
Калибровка камеры и коррекция искажений : параметры камеры необходимо откалибровать заранее, а ПЛИС выполняет отображение координат пикселей в реальном времени на основе этих параметров.
Регистрация изображений : необходимо точно выровнять перекрывающиеся области соседних изображений.
Сглаживание краев : Для устранения швов необходимо сгладить перекрывающиеся участки.
Согласованность баланса белого : необходимо обеспечить унифицированную цветопередачу нескольких камер.
Компания Qiyun Zhixun выпустила несколько плат обработки видеосигнала, поддерживающих соединение от 2 до 8 каналов видеовхода и широко используемых в системах кругового обзора транспортных средств, промышленной инспекции и системах видеонаблюдения.
3. Кодирование и потоковая передача видео
В таких сценариях, как прямая трансляция, дистанционное обучение и видеоконференции, видео необходимо кодировать в реальном времени и передавать по сети. FPGA-микросхемы могут выполнять предварительную обработку перед кодированием и обеспечивать некоторое ускорение кодирования.
Предварительная обработка : шумоподавление, повышение резкости, наложение экранного меню.
Помощь в программировании : Некоторые алгоритмы (например, оценка движения) могут быть ускорены с помощью FPGA.
Обработка потоковых протоколов : аппаратная разгрузка стека протоколов RTMP/SRT/RTSP.
В практических решениях обычно используется гетерогенная архитектура, состоящая из "предварительной обработки на FPGA + кодирования на SoC", чтобы в полной мере использовать преимущества обоих подходов.
4. Интеллектуальная видеоаналитика
С развитием технологий искусственного интеллекта обработка видео эволюционирует от «обработки сигналов» к «пониманию контента». Роль FPGA в этой области заключается в следующем:
Предварительная обработка данных на этапе фронтенда : подготовка высококачественных изображений для вывода результатов ИИ.
Извлечение области интереса (ROI) : На основе результатов обнаружения с помощью ИИ область интереса обрабатывается с высоким разрешением.
Постобработка : визуализация и наложение результатов обнаружения, полученных с помощью ИИ.
Обмен опытом в области дизайна
Бюджетирование временных рядов — это основа.
Планирование временных параметров является ключевым аспектом проектирования FPGA для обработки видео. Задержка каждого модуля обработки накапливается, поэтому ее необходимо тщательно планировать с самого начала проектирования.
Определите общий бюджет задержки (максимально допустимую задержку от входа до выхода).
Выделите квоты на задержку каждому модулю обработки.
Оставьте место для корректировок, чтобы избежать временных ограничений, связанных с последующими изменениями.
Управление пропускной способностью хранилища требует тщательного подхода.
Буферизация кадров, таблицы поиска и промежуточные результаты в обработке видео требуют использования внешней памяти (DDR). При одновременной обработке нескольких видеопотоков пропускная способность хранилища может стать узким местом.
Рационально планируйте распределение полосы пропускания хранилища и отдавайте приоритет каналам с высокими требованиями к работе в режиме реального времени.
Используйте мониторинг пропускной способности DDR для оперативного выявления проблем, связанных с нехваткой пропускной способности.
По возможности используйте построчные буферы вместо кадровых буферов, чтобы уменьшить объем используемой памяти.
Методов отладки должно быть достаточно.
Отладка обработки видео сложнее, чем просто цифровая логика, поскольку конечный результат «визуализируется»:
Зарезервированные точки наблюдения для сравнения до и после обработки изображений.
Поддерживает пошаговую отладку и функцию стоп-кадра.
Предоставляет онлайн-интерфейс для настройки параметров, что обеспечивает удобную отладку на месте.
Возможности обработки видео Циюнь Чжисюнь
Циюнь Чжисюнь накопила богатый опыт реализации проектов в области ПЛИС для обработки видео, и ее продукция включает в себя:
Процессор для видеомонтажа : поддерживает несколько входов HDMI/SDI и вывод видео в реальном времени, подходит для систем кругового обзора транспортных средств и промышленной инспекции.
Конвертер видеоформатов : Поддерживает преобразование видео в реальном времени для различных видеоинтерфейсов и разрешений.
Кодировщик для потоковой передачи в реальном времени : объединяет функции аппаратного кодирования и потоковой передачи мультимедиа.
Цифровой аудиопроцессор : микширование, эквализация и маршрутизация многоканального цифрового звука в реальном времени.
Если у вас есть какие-либо потребности в обработке видео, пожалуйста, свяжитесь с нами. Циюнь Чжисюнь может предоставить вам комплексное обслуживание, от разработки решения до поставки платы.