title: Σχεδίαση και υλοποίηση συστήματος διεπαφής βιντεοκάμερας και επεξεργασίας βίντεο σε πλατφόρμα αναδιατασσόμενης λογικής
title: Design and implementation of a system to interface video camera and process video on a reconfigurable logic-based platform
Creators: name: Μανωλης Νικολαος
Publisher: name: Technical University of Crete
Year: 2020

description: Η επεξεργασία εικόνας θεωρείται ένας από τους πιο γρήγορα εξελισσόμενους τομείς στους κλάδους της επιστήμης των υπολογιστών και της μηχανικής. Οι εφαρμογές της αυξάνουν συνεχώς τις απαιτήσεις για υπολογιστική ισχύ, ειδικά αν ληφθεί υπόψη ο περιορισμός εξαγωγής αποτελεσμάτων σε πραγματικό χρόνο. Οι μοντέρνες FPGAs χρησιμοποιούνται συχνά ως πλατφόρμες για την υλοποίηση τέτοιου είδους εφαρμογών, επειδή η δομή τους είναι σε θέση να εκμεταλλευτεί τον χωρικό και χρονικό παραλληλισμό. Για τη διεπαφή με συσκευές FPGA, συνήθως γίνεται χρήση αισθητήρων εικόνας υψηλής ανάλυσης, που παρέχονται από εξειδικευμένες εταιρίες και κοστίζουν ακριβά. Το μεγάλο εύρος των ερευνών γύρω από τον τομέα επεξεργασίας εικόνας/βίντεο, που μπορούν να πραγματοποιηθούν σε μια FPGA, σε συνδυασμό με τους υπάρχοντες εξειδικευμένους και ακριβούς αισθητήρες εικόνας (κάμερες), δημιουργεί την ανάγκη για χρήση πολύ φθηνότερων καμερών σε περιπτώσεις όπου η υψηλή ανάλυση δεν είναι το μείζων ζήτημα.
Αυτή η εργασία παρουσιάζει τη σχεδίαση ενός συστήματος που πραγματοποιεί τη διεπαφή φθηνών USB καμερών με μια συσκευή SoC. Τα ιδιαίτερα χαρακτηριστικά που απορρέουν από την παράλληλη φύση της FPGA, οδηγούν σε καλύτερα αποτελέσματα επεξεργασίας εικόνας/βίντεο σε σχέση με έναν τυπικό επεξεργαστή. Παρουσιάζεται μια υλοποίηση αρχιτεκτονικής hardware, ικανή να πραγματοποιήσει επεξεργασία βίντεο και προβολή σε οθόνη HDMI. Μέσω λογισμικού Linux, ελέγχεται το σύστημα hardware και δημιουργούνται δύο εφαρμογές που επιδεικνύουν τις λειτουργίες της υλοποίησης. Για τις επιδόσεις του συστήματος, παρουσιάζονται και συγκρίνονται τα αποτελέσματα πραγματοποίησης επεξεργασίας βίντεο, στην FPGA και στον επεξεργαστή ARM της συσκευής SoC. Επιπλέον διαπιστώνονται οι συνθήκες υπό τις οποίες μπορεί να πραγματοποιηθεί ταυτόχρονη προβολή δύο USB καμερών, χρησιμοποιώντας τον ελεγκτή USB ενός SoC. Για την εφαρμογή του συστήματος σε πραγματικό hardware χρησιμοποιήθηκε το Zynq-7000 SoC ZedBoard.
description: Image processing is considered one of the fastest growing fields in computer science and engineering. Its applications have increased the requirements for computing power, especially due to the limitation of exporting results in real-time. Modern FPGAs are often used as platforms for implementing such applications, because their structure is able to take advantage of spatial and temporal parallelism. Interfacing FPGA devices with image sensors, is usually referred to the usage of high resolution sensors provided only by specialized companies and are usually highly costly. The wide range of image / video processing research that can be performed on FPGA, creates the need to use more affordable and accessible cameras in cases where high resolution is not a significant factor.
This thesis presents the design of a system that interfaces low-priced USB cameras with a SoC device. The special features resulting from the parallel nature of FPGA, lead to better image / video processing results than a standard processor. A hardware system capable of capturing and processing video data from USB webcam and displaying them through HDMI will be presented. The hardware system is controlled through Linux environment and two applications have been created to demonstrate the functionality of the implementation. The video processing results between the FPGA and ARM processor of the SoC device are compared for system performance evaluation. In addition, the conditions under which two USB cameras can function simultaneously using the USB controller of a SoC are determined. The Zynq-7000 SoC ZedBoard was used to implement the system on real hardware.