FBVP

< Projeler Sayfası

Proje Adı
FPGA tabanlı video işleme (HDMI in/out)

Şirket Adı
ARÇELİK

Şirket Mentoru
İlker Kaya

Akademik Mentor
Asst. Prof. Erdinç Tatar

Asistan
Can Soygür
Takım Üyeleri
Berk Demirkan, Mert Edgü, İrem Ekin, Gökcan Kahraman, Erkin Özlan, Damla Yıldız

Özet
Projemiz; FPGA tabanlı, VIVADO ve Vitis HLS kullanılarak yazılmış, HDMI giriş/çıkış üzerinden bir video işleme projesidir. Bu projede, input olarak Zynq Ultrascale+ MPSoC ZCU104 FPGA kartının HDMI-giriş portuna gönderilen 4K/FHD videoya bölme işlemi uygulanır. Kullanılması hedeflenen Video wall sistemindeki ekran sayısı kadar, alınan input bölünür ve her bir bölünen parça bir ekranda yansıtılır. Böylece tüm ekranlara bir arada bakıldığında, videonun tamamı tek bir ekranda izleniyormuş gibi görünür. Input video bölündükten sonra boyut olarak küçüldüğü için öncelikle ölçeği, mevcut ekrana sığacak şekilde büyütülür. Daha sonra da mevcut bozulmaları en aza indirmek ve istenilen görüntüyü elde etmek için sırasıyla gürültü azaltma ve sınır keskinleştirme filtreleri uygulanır. Daha sonra ise gamma doğrulama uygulanarak aydınlığı ayarlanan video ekranda yansıtılmak üzere FPGA kartının HDMI-çıkış portuna yönlendirilir. Gerekli operasyonların VIVADO Blok Diyagram ve Vitis HLS üzerinden IP core tasarımları aşamasına geçilmeden önce, geliştirilen algoritmalar MATLAB ve Simulink kullanılarak simüle edildi. Sonrasında, elde edilen simulasyon sonuçları ve FPGA kartından alınan çıkış sonuçları karşılaştırıldı.



Abstract
The project is FPGA-based video processing through HDMI in/out. In this project, a 4K/FHD video is taken as input from the HDMI-in port of the Zynq Ultrascale+ MPSoC ZCU104 FPGA board. Firstly, the desired part of the video is cropped and scaled to the monitor in the related IP core of the board. The number of cropped parts depends on the number of screens on the video wall system and the scaling is done accordingly. Then, the desired filters are applied to the video, pixel by pixel. Before starting to apply the filters on the FPGA board via VIVADO, the logic behind the filters was tested by using MATLAB and Simulink. Algorithms that are written were practiced via these simulation tools. After observing that the filters are working as planned, the same algorithm was written in Vitis HLS environment to create the IP cores. An appropriate VIVADO Block Diagram was designed and the IP cores were tested with this block diagram. The filtering steps are noise reduction and sharp enhancement which were applied to get more quality video vision on the monitor. These filters are applied to the cropped part of the video. Since there is one HDMI-out port on the acquired FPGA board, one monitor is used during the project. After the filtering process, gamma correction operation is applied to the video to have more accurate and better quality colors. The final version of the cropped video is sent to the HDMI-out port to display on the monitor.