- •Оборудование
- •Ход работы получение лицензии
- •Подготовка оборудования подготовка пк
- •Подготовка камеры
- •Сборка камеры
- •Подключение оборудования к плате xilinx zynq zc702
- •Аппаратная платформа
- •Процессорная система
- •Конфигурация видео системы
- •Детальное описание потока обработки видео изображения
- •Генератор тестовых сценариев (гтс)
- •Шины axi
- •Коррекция битых пикселей (кбп)
- •Фильтр канала цветности (фкц)
- •Движок сбора статистики (дсс)
- •Матрица коррекции цвета (мкц)
- •Коррекция гаммы (кг)
- •Преобразование пространства цветов (ппц)
- •Улучшение изображения (уи)
- •Процесс main
- •Процесс обработки видео
- •Процесс управления веб-сессией
- •Загрузка платы
- •Создание битового потока для аппаратной платформы
- •Создание приложения из исходного кода
- •Удаленное подключение к плате
- •Отладка приложения
- •Установка точек остановки
- •Программное обеспечение для обработки изображения
- •Программное обеспечение для обработки изображения (командная строка)
- •Программное обеспечение для обработки изображения (веб интерфейс)
- •Встроенные методы фильтрации, улучшения изображения настройки коэффициента усиления и экспозиции изображения
- •Настройка коррекции битых пикселей
- •Настройка улучшения изображения
- •Настройки матрицы коррекции цвета
- •Настройка коррекции гаммы
- •Статистика изображения
- •Захват изображения
- •Фильтрация изображения
- •Приложение 1 исходное изображение приложение 2 обработанное изображение
Улучшение изображения (уи)
Рис. 23. Поток обработки видео
IP-ядро улучшения изображения используется для уменьшения шумов на изображении, выделения контуров изображения, подавления ореола, а также строит карту контуров, которая необходима для корректной работы шумоподавления. С помощью карты контуров контролируется сила и направление шумоподавления.
После выполнения выделения контуров по карте и шумоподавления, запускается опциональный модуль подавления ореола.
ПРОГРАММНАЯ ПЛАТФОРМА
Программная платформа написана для ОС Linux с ядром версии 3.x. Платформа представляет собой многопоточное приложение для обработки видео. Приложение также отвечает за соединение с ПК через USB или веб - интерфейс.
На
блок схеме изображена архитектура
приложения:
Рис. 24. Архитектура приложения
Программа состоит из трех основных процессов:
Процесса Main (main.c)
Процесса обработки видео(vipp_stats_handler)
Процесса управления веб-сессией
Следующая блок схема показывает файлы исходного кода для работы с видео камерой:
Рис. 25. Файлы исходного кода для работы с видео камерой
Файл fmc_imageon_demo.c включает в себя практически весь высокоуровневый код для инициализации камеры. Файлы avnet_console_* отвечают за работу с текстовым командным интерфейсом. Они используются для предоставления пользователю контроля через стандартные потоки ввода/вывода (STDIN, STDOUT). Этот интерфейс также используется для общения веб-интерфейса с приложением.
Процесс main
Главный метод модуля Main – main(), который инициализирует основные компоненты программы. Он также инициализирует графический сенсор VITA, потоковую обработку изображения и графический буфер, а также запускает процессы управления веб-сессией и обработки видео.
Как только инициализация завершена, пользователю становится доступна работа с программой через стандартные потоки ввода-вывода(STDIN, STDOUT).
Исходный код файла main.c выглядит следующим образом:
Рис. 26. Исходный код файла main.c
Процесс обработки видео
Процесс обработки видео запускается сразу же после инициализации потока обработки видео. Данный процесс периодически считывает статистику изображения с сенсора и производит следующие операции:
Автоматическую коррекцию коэффициента усиления
Автоматическую коррекцию экспозиции
Автоматический выбор настроек баланса-белого
Автоматические настройки контраста
Блок - схема, показывающая как обработчик видео изображения взаимодействует с потоком обработки видеоизображения приведена ниже:
Рис. 27. Взаимодействие обработчика видео изображения с потоком обработки
Поток обработки видеоизображения состоит из следующих частей (IP-ядер):
Коррекции битых пикселей
Цветовой фильтрации
Сбора статистики по изображению
Цветовой коррекции
Коррекции гаммы
Улучшения изображения
IP-ядро сбора статистики напрямую связывается с программой Linux Image Statistics Handler. Оно собирает статистические данные об изображении, поступающие с камеры, включая гистограммы интенсивности уровня цветности сигнала, использующиеся для автоматической подгонки изображения для улучшения качества.
Процесс обработки видео изображения предоставляет несколько примеров для обработки изображения, основанных на работе с IP-ядрами, а именно:
Автокоррекцию баланса белого
Автоматическую коррекцию коэффициента усиления
Автоматическую коррекцию экспозиции
Автоматическую настройку контраста
