Wyniki 1-7 spośród 7 dla zapytania: authorDesc:"Grzegorz Pastuszak"

Implementacje FPGA modułów kwantyzacji i dekwantyzacji w sprzętowych koderach wideo


  Standard H.264/AVC [1] jest powszechnie używany w różnych aplikacjach komunikacyjnych oraz w rejestracji wideo. W stosunku do poprzednich standardów pozwala on na redukcję budżetu bitowego do 50% przy zachowaniu podobnej jakości zdekodowanego materiału wideo. Ostatnie prace w dziedzinie kompresji wizyjnej doprowadziły do opracowania kolejnego standardu nazwanego H.265/HEVC [2]. Efektywność kompresji uzyskiwana przy zastosowaniu nowych technik jest zwiększona nawet dwukrotnie w stosunku do standardu H.264/AVC. Ulepszenia algorytmu dotyczyły wielu modułów i sposobu organizacji danych. Jednakże moduły kwantyzacji i dekwantyzacji są w obu standardach podobne. Stąd techniki projektowania opracowane dla standardu H.264/ AVC mogą być z powodzeniem przeniesione do H.265/HEVC.Rysunek 1 przedstawia diagram blokowy kodera wideo z wyróżnionymi modułami kwantyzacji i dekwantyzacji. Współczynniki transformaty są kwantowane, aby usunąć mniej istotne informacje przed zakodowaniem entropijnym. Dekwantyzacja jest konieczna do rekonstrukcji treści wideo dla kolejnych bloków, makrobloków i obrazów kodowanych zarówno w trybie predykcji wewnątrzobrazowej (INTRA) i międzyobrazowej (INTER). Analiza kosztu bitowego i zniekształceń (RD) używana do wyboru trybu umożliwia uzyskanie dużej efektywności kompresji. Z drugiej strony koszt obliczeniowy zwiększa się, ponieważ wiele trybów musi być przetworzonych w pętli rekonstrukcji zawierającej kwantyzację i dekwantyzację. By uzyskać wydajność czasu rzeczywistego koder sprzętowy powinien wykorzystać pętlę rekonstrukcji o dużej przepustowości. W szczególności liczba modułów kwantyzacji i dekwantyzacji musi być zwiększona celem przetwarzania równoległego. W konsekwencji ich udział w potrzebnych zasobach sprzętowych staje się znaczący. W literaturze opisano wiele architektur kwantyzacji i dekwantyzacji [3-17]. Większość z nich stosuje bezpośrednie mapowanie kolejnych operacji na kaskadę złożoną z układu mnożące[...]

Sprzętowy koder wideo standardu H.264/AVC DOI:10.15199/59.2015.6.8


  W ramach prac związanych z projektami PROTEUS i Lider zaprojektowano oraz wykonano koder standardu H.264/AVC [1] realizujący cyfrową kompresję sygnałów wizyjnych. Koder może być elementem wchodzącym w skład większego systemu, np. łączności radiowej, przeznaczonego dla aplikacji zdalnej kontroli stosowanej w robotach [2]. Zapewnia on kompresję analogowych sygnałów wizyjnych do poziomu strumienia elementarnego. Opracowane rozwiązanie obsługuje kodowanie sekwencji wideo zgodnie ze standardem H.264/AVC za pomocą profilu Main lub High z użyciem dwóch ramek/pól referencyjnych. Obsługiwane są podpróbkowania chrominancji 4:2:2 oraz 4:2:0. Koder ma zdolność alokacji liczby cykli zegarowych do ramek i makrobloków. Regulacja stopnia kompresji gwarantuje, że wielkość strumienia nie przekroczy zdolności transmisyjnych toru radiowego i ewentualnych elementów sieciowych. Cechą wyróżniającą koder wśród różnych rozwiązań jest zaimplementowanie algorytmu wyboru trybu kodowania z użyciem optymalizacji RD analizującej koszt bitowy (R) i zniekształcenia (D) sprawdzanych trybów. Umożliwia to zwiększenie efektywności kompresji średnio o 0,3 dB do 0,5 dB. ARCHITEKTURA Schemat funkcjonalny kodera przedstawiono na rys 1. Kolejne ramki do kompresji (Video-In) są zapisywane najpierw linia po linii do pamięci zewnętrznej (DDR2 - double data rate) przez kontroler pamięci (MCTRL - Memory Controller). Wynik kompresji wystawiany jest na port wyjściowy w postaci strumienia elementarnego. Podstawowa jednostka przetwarzania przyjęta w koderze to jeden makroblok, choć poszczególne moduły mogą operować też na mniejszych blokach. Przetwarzanie podzielono na sześć etapów: (1) zgrubna estymacja ruchu, (2) interpolacja, (3) dokładna estymacja ruchu oraz predykcja wewnątrzramkowa (INTRA), (4) pętla rekonstrukcji, (5) wybór trybu, (6) koder binarny (entropijny). Etapy 3-5 stanowią jeden stopień potoku makroblokowego. Umożliwia to znajomość trybu (kierunek predykcji l[...]

Sprzętowy Moduł Predykcji INTRA dla Kodera Standardu H.264/AVC, z obsługą profilu High i przeszukiwaniem wszystkich trybów predykcji


  Standard H.264/AVC jest bez w.tpienia najnowocze.niejszy i najlepszy pod wzgl.dem oferowanych mo.liwo.ci w.rod dost.pnych standardow kompresji wideo. Pierwsza wersja standardu opublikowana zosta.a w roku 2003 i jej podstawowym celem by.o zapewnienie efektywnej metody kompresji wideo o standardowej i wysokiej rozdzielczo.ci. Ta cz... standardu stanowi cz... nazywan. profilem Main w po.niejszych wersjach standardu. Ma ona jednak pewne ograniczenia. Nie przewiduje bowiem tak potrzebnych w niektorych zastosowaniach opcji jak np. kodowanie ze zwi.kszon. ponad 8 bitow dok.adno.ci. probek, czy podprobkowaniami chrominancji innymi ni. 4:2:0. Te mo.liwo.ci zosta.y dodane do standardu dopiero w roku 2005 i s. cz..ci. profili okre.lanych w nim jako High. W tym samym roku, obok wcze.niej wymienionych mo.liwo.ci, profile High zosta.y wzbogacone wzgl.dem profilu Main o wiele dodatkowych opcji, pozwalaj.cych zmniejszy. efektywno.. oko.o dwukrotnie wzgl.dem standardu MPEG-2 [2], czy te. o oko.o 10% wzgl.dem profilu Main [3]. Postrzegana jako.. obrazu pozosta.a przy tym taka sama. Osi.gni.cie tych zyskow wymaga jednak znacznego zwi.kszenia z.o.ono.ci obliczeniowej zastosowanych algorytmow. Cz..ciami o szczegolnie du.ej z.o.ono.ci w koderze s. modu.y predykcji INTRA, czy te. predykcji INTER, g.ownie ze wzgl.du na du.. ilo.. mo.liwo.ci, ktora powinna zosta. rozpatrzona przez koder. Dlatego te. opracowanie wydajnych implementacji, tak.e sprz.towych, tych modu.ow jest niezwykle wa.ne, aby uzyska. mo.liwo.. kodowania materia.u wideo o wysokiej rozdzielczo.ci w czasie rzeczywistym. W artykule zaproponowana zosta.a wydajna architektura modu.u predykcji INTRA dla sprz.towego kodera standardu H.264/AVC. Modu. ten jest w stanie obliczy. jeden tryb predykcji dla ca.ego bloku 4~4 w jednym takcie zegara. Obs.ugiwane s. wszystkie tryby predykcji przewidziane przez profil High standardu H.264/AVC. Obs.ugiwane s. te. podprobkowania 4:2:0, 4:2:2 oraz[...]

Analiza wymagań pamięciowych dla podstawowej jednostki obliczeniowej w sprzętowej implementacji algorytmu dopasowania stereo typu "semiglobal"


  Algorytm dopasowania stereo działa na dwóch zrektyfikowanych obrazach przedstawiających jedną scenę. Rektyfikacja oznacza, że jeśli weźmie się pewien piksel na pierwszym obrazie, to odpowiadający mu piksel na drugim obrazie leży dokładnie w tej samej linii poziomej (o tej samej współrzędnej y). Bezwzględna wartość różnicy współrzędnych x odpowiadających sobie pikseli nazywana jest dysparycją i można wykazać że jest ona odwrotnie proporcjonalna do głębokości obiektu w scenie [1]. Celem algorytmu stereowizji jest przypisanie wartości dysparycji do każdego piksela i stworzenie tzw. mapy dysparycji. W literaturze znanych jest wiele algorytmów stereowizji. Generalnie można je podzielić na dwie grupy [2]: algorytmy decydujące jaka dysparycja powinna zostać przypisana do piksela tylko na podstawie jego najbliższego otoczenia (algorytmy lokalne), bądź na podstawie pewnej funkcji zdefiniowanej na całym obrazie (algorytmy globalne). Do pierwszej grupy należą np. algorytmy bazujące na dopasowaniu okna wokół piksela w jednym obrazie do pewnego okna w drugim obrazie za pomocą miar takich jak m.in. SAD [2], CENSUS [3]. Algorytmy te ze względu na swoją prostotę doczekały się wielu realizacji w układach FPGA. Ich implementacje są zazwyczaj szybkie, np. w [4] zaprezentowano system będący w stanie przetwarzać w sekundzie 230 ramek o rozdzielczości 640x480 i 64 poziomach dysparycji. Wadą algorytmów z tej grupy jest jednak zwykle gorsza jakość uzyskanej mapy dysparycji niż w przypadku algorytmów globalnych. W przypadku algorytmów globalnych najpopularniejsze bazują na "propagacji wierzeń" (belief-propagation) [5], bądź algorytmach" graph-cuts" [6]. Są to algorytmy bardzo wymagające pod względem obliczeniowym i przez to rzadko implementowane w sprzęcie. Istnieje jednak grupa algorytmów znajdująca się pomiędzy algorytmami globalnymi i lokalnymi. Są one oparte o programowanie dynamiczne na pewnym podzbiorze całego obrazu. Algorytmem z tej grupy da[...]

Estymacja przepływności bitowej ramek typu P w kodowaniu wideo


  Nowoczesne systemy kodowania wideo cechują się wysoką sprawnością działania. Dzięki zastosowaniu złożonych algorytmów, pozwalają uzyskać stosunkowo niską przepływność bitową wyjściowych strumieni wideo przy zachowaniu ich wysokich jakości. Jednocześnie nośniki danych jak i kanały transmisyjne cechują się coraz większą pojemnością i przepływnością. Istotnym problemem jest efektywne wykorzystanie dostępnego pasma transmisyjnego oraz pojemności pamięci a nie tylko minimalizacja rozmiaru czy przepływności materiału wideo. Dlatego też duży nacisk kładziony jest obecnie na sprawne algorytmy kontroli stopnia kompresji sekwencji wideo. Ich podstawowym zadaniem jest taki dobór parametrów kodowania, aby wyjściowy strumień danych efektywnie wykorzystywał dostępne zasoby transmisyjne. W najnowszych pozycjach literaturowych prezentowanych jest kilka bardzo dobrych algorytmów kontroli stopnia kompresji. Większość z nich nie nadają się jednak do zastosowania w koderach pracujących w czasie rzeczywistym. Publikacji opisujących rozwiązania umożliwiające efektywną kontrolę stopnia kompresji w systemach kodowania wideo pracujących z małym opóźnieniem jest niewiele. Jakość tych, które można znaleźć, pozostawia wiele do życzenia. Przykładowo w [1] przedstawiono sprzętowe rozwiązanie dość efektywne z punktu widzenia stabilności przepływności bitowej. Pominięto jednak jeden z czynników równania wyznaczania wartości parametru kwantyzacji QP (ang. quantization parameter), przez co nie jest możliwa implementacja opisanego algorytmu. Zagadnienie efektywnej kontroli stopnia kompresji w czasie rzeczywistym jest zatem wciąż otwarte na nowe rozwiązania. Ogólny schemat działania algorytmów kontroli stopnia kompresji Celem algorytmów kontroli stopnia kompresji jest dobór parametrów kodowania w taki sposób, aby sprostać narzuconym ograniczeniom. Te mogą dotyczyć określonej jakości bądź przepływności bitowej kodowanej sekwencji wideo. Pierwszym krokiem każd[...]

Architektura sprzętowego modułu predykcji wewnątrzramkowej Intra dla standardu H.265/HEVC


  Ostatnie lata charakteryzują się gwałtownym rozwojem technologii mobilnych, telewizji cyfrowej oraz szerokopasmowego Internetu. Postępy w tych dziedzinach wiążą się z dość znaczącym wzrostem ilości przesyłanych informacji wideo, co znacząco obciąża obecnie istniejące łącza telekomunikacyjne. W efekcie bardzo duża liczba firm oraz instytucji naukowych pracuje nad sposobami ograniczenia rozmiaru tego typu danych oraz wymaganej przez nie przepływności. Zarazem współcześni konsumenci są zainteresowani zdecydowanym wzrostem jakości oglądanych materiałów. Aby pogodzić te sprzeczne zapotrzebowania w 2010 r. grupa ekspertów Joint Collaborative Team on Video Coding rozpoczęła prace nad nowym standardem kompresji wideo pod kodową nazwą High Efficiency Video Coding (HEVC). Za cel postawiono sobie ograniczenie o połowę przepływności zakodowanej sekwencji wideo w porównaniu do H.264/AVC (Advanced Video Coding), przy jednoczesnym zachowaniu jakości ocenianej miarami subiektywnymi. Rozwój standardu trwał ponad trzy lata i zakończył się ostatecznym jego przyjęciem w 2013 r. przez ISO (International Organization for Standardization) i ITU Telecommunication Standardization Sector jako H.265/HEVC ([1]). Składnia standardu H.265/HEVC wykorzystuje regularne struktury drzewiaste, zapisywane w strumieniu wyjściowym. W porównaniu do jego poprzednika, H.264/AVC, istotnie rozbudowana została predykcja wewnątrzramkowa (Intra), predykcja międzyramkowa (Inter) oraz algorytmy transformacji. Wiąże się to ze zwiększoną złożonością obliczeniową, jednak wybrane rozwiązania powinny umożliwić zrównoleglenie znaczącej części operacji. W chwili obecnej opracowywane są dalsze rozszerzenia m. in. wersja skalowalna oraz dostosowana do kodowania sekwencji trójwymiarowych. Predykcja wewnątrzramkowa (Intra) Jedną z podstawowych technik w kodowaniu wideo jest predykcja wewnątrzramkowa. Wykorzystuje ona uprzednio zakodowane próbki z danej ramki do przewidywania poprze[...]

Systemy łączności radiowej i monitoringu telewizyjnego w projekcie PROTEUS


  Instytut Radioelektroniki Politechniki Warszawskiej uczestniczy w realizacji wielu projektów finansowanych ze środków Unii Europejskiej, przy czym są to zarówno projekty ramowe, jak i projekty w ramach Funduszy Strukturalnych. Jednym z większych projektów, w których istotną rolę odgrywają jednostki Politechniki Warszawskiej, jest projekt PROTEUS - "Zintegrowany Mobilny System Wspomagający Działania Antyterrorystyczne i Antykryzysowe". W projekcie tym Instytut Radioelektroniki odpowiedzialny jest za opracowanie i realizację systemów łączności między wszystkimi elementami systemu PROTEUS. Dlatego też celem niniejszego artykułu jest przedstawienie zarówno ogólnych informacji o samym projekcie i strukturze budowanego systemu, jak i zaprezentowanie prac rea[...]

 Strona 1