Обробка відео потоку: накладання мультиплікаційного фільтру

Тема: Обробка відео-потоку у реальному часі шляхом накладання фільтру, що імітує мультиплікаційну графіку

На сьогоднішній день обробка відео потоку у реальному часі є дуже актуальною. Зокрема обробка потоку, що видає відео камера. Головною проблемою такої обробки є мала кількість часу на перетворення, тому виникає необхідність в спеціалізованих швидкодіючих приладах.

Метою даної розрахунково-графічної роботи є створення приладу на базі ПЛІС Cyclone II фірми Altera, що виконує функції обробки вхідного потоку з відеокамери з подальшим відображенням його на моніторі.

В якості ефекту обробки обрано перетворення нормального зображення на таке, що нагадує намальоване, як у коміксах або мультфільмах. Даний ефект може бути корисним для швидкого створення шаблонів для мультфільмів або коміксів без використання великої кількості художників.

Проект реалізовано на базі налагоджувальної плати Altera DE II, яка містить в якості основного елементу FPGA Cyclone II. Відео-презентація отриманих результатів:

Теоретична частина

Зображення у мультфільмах або коміксах відрізняється від нормального двома ознаками: використовується значно менша кількість відтінків (тобто усі частини зображення більш монотонні), усі об’єкти на зображенні обведені чорним контуром.

В основному в сучасній апаратурі передається в форматі RGB. Простір кольору RGB є лінійним. Кожен колір представляється червоним (R), зеленим (G) та синім (B) – основними первинними компонентами.


Рис. 1 – Складові формату RGB

В основі моделі лежить декартова система координат, тому кольоровий простір має вигляд куба.


Рис. 2 – Простір RGB

Кількість бітів, що використовується для представлення пікселя в просторі RGB, називають глибиною кольору і відповідає за кількість відтінків. Для зменшення кількості відтінків необхідно зменшити розрядність кольорів або використовувати лише старші біти.

Для того, щоб обвести чорним контуром об’єкти необхідно виділити їх границі і накласти їх на зображення. Виділити границі на зображенні можна за допомогою фільтра Собеля.

Фільтр Собеля – це один з варіантів просторової обробки зображення. Процес просторової обробки описується рівнянням


де – вхідне зображення, – оброблене зображення, а Т – оператор над , визначений в деякому околі (х,у).


Рис. 3 – просторова обробка зображення.

У фільтрі Собеля використовується градієнтне перетворення.


Для фільтру Собеля з розміром маски 3х3 використовуються наступні матриці:


Опис структурної схеми системи обробки відео-потоку


Рис. 4 – структурна схема приладу обробки відео потоку

 

Після отримання фрейму з камери для кожного пікселя зменшується розрядність представлення кольору. Після цього знаходяться границі об’єктів на зеленій складовій, оскільки вона являється найбільш інформативною серед усіх, а також такий підхід дозволяє отримати дещо зміщені границі відносно повно кольорового зображення, що характерно для мультфільмів та коміксів.

Отримані границі використовуються у вигляді маски для вихідного зображення, тобто якщо на зображенні, що містять границі чорний пік сель, на вихідному зображенні пік сель буде чорним, а якщо білий – то пік сель, який є на зображенні зі зменшеною розрядністю кольорів.

Автор: Кирпач Д.І., студент кафедри КЕОА, ФЕЛ, НТУУ «КПІ».