3d-hevc test model
TRANSCRIPT
![Page 1: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/1.jpg)
3D-HEVC Test Model
Krzysztof Wegner
![Page 2: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/2.jpg)
Cel i obszar użycia
• Zastosowania– wydajne przesłyłanie obrazu ruchomego na
potrzeby monitorów autostereoskopowych– przesyłanie obrazu stereoskopowego
• Kodowanie obrazu 3D w formacie MVD– sekwencje wizyjne– mapy głębi
![Page 3: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/3.jpg)
Nomenklatura
• Tekstura• Mapa głębi• Wektor rozbieżności• Widok• CTC• disparity-compensated prediction (DCP), • motion-compensated prediction (MCP). • Access Unit – jednostka dostepu swobodnego
![Page 4: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/4.jpg)
![Page 5: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/5.jpg)
• Tekstura przez Głębią
![Page 6: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/6.jpg)
Schemat kodera
![Page 7: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/7.jpg)
![Page 8: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/8.jpg)
Kodowanie widoku bazowego
• Widok bazowy kodowany zgodnie ze specyfikacją HEVC
• Strumień zgodny z HEVC
![Page 9: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/9.jpg)
Kodowanie dodatkowych widoków
• Predykcja z kompensacją rozbieżności• Międzywidokowa predykcja wektorów ruchu• Międzywidokowa predykcja wektorów
rozbieżności• Międzywidokowa predykcja sygnału
resztkowego
• Nie zależy od kodowanej głębi
![Page 10: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/10.jpg)
Predykcja z kompensacją rozbieżności
![Page 11: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/11.jpg)
Predykcja z kompensacją rozbieżności
• Ograniczone tylko do bieżącej chwili czasowej (ta sama jednostka dostępu swobodnego)
• Obrazy z sąsiednich widoków wstawiane na koniec listy referencyjnej
![Page 12: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/12.jpg)
Predykcja z kompensacją rozbieżności
• Możliwość zmiany kolejności obrazów na listach referencyjnych
• Wykorzystanie odpowiedniej składni HEVC(reference picture list modification )
![Page 13: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/13.jpg)
Predykcja wektorów
• Wektory rozbieżności przewidywane tylko z bloków kodowanych z wykorzystaniem kompensacji rozbieżności
• Wektory ruchu przewidywane są tylko z bloków kodowanych z wykorzystaniem kompensacji ruchu
![Page 14: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/14.jpg)
Predykcja wektorów
• Wykorzystanie istniejących mechanizmów– Zawansowany mechanizm predykcji wektorów
ruchu (AMVP)– Mechanizm dziedziczenia ruchu z sąsiednich
bloków (Merge Candidate)
![Page 15: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/15.jpg)
Między-widokowa predykcjawektorów ruchu
![Page 16: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/16.jpg)
Między-widokowa predykcjawektorów rozbieżności
• Cztery metody predykcji– Predykcja na podstawie zakodowanej mapy głębi– Predykcja na podstawie zgrubnej mapy głębi
estymowanej na podstawie zakodowanych wektorów ruchu i rozbieżności (depth map generator)
– Predykcja z sąsiadujących bloków
![Page 17: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/17.jpg)
Predykcja na podstawiezakodowanej mapy głębi
• Mapa głębi wcześniej zakodowanych widoków jest przerzutowana (syntezowana) do bieżącego widoku
• Odsłonięcia uzupełniane informacją z tła – algorytmem wypełniania dziur / odsłonięć
• Maksymalna wartość głębi w danym bloku przeliczana jest na rozbieżność
![Page 18: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/18.jpg)
Predykcja na podstawie zgrubnej mapy głębi
• Koder i dekoder tworzą mapę głębi na podstawie przesłanych wcześniej wektorów ruchu i rozbieżności.
• Zgrubna mapa głębi jest 4 razy mniejsza niż obraz (blokowa natura pola ruchu/rozbieżności)
• Zgrubna mapa głębi wykorzystywana jest następnie do predykcji wektora rozbieżnościw aktualnie kodowanym obrazie głębi
![Page 19: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/19.jpg)
Predykcja na podstawie zgrubnej mapy głębi
![Page 20: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/20.jpg)
Predykcja na podstawie zgrubnej mapy głębi
![Page 21: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/21.jpg)
Predykcja na podstawie zgrubnej mapy głębi
![Page 22: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/22.jpg)
Predykcja z sąsiadujących bloków
• Predykcja przestrzenna• Predykcja czasowa
![Page 23: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/23.jpg)
Predykcja z sąsiadujących bloków
• Predykcja przestrzenna– Sąsiadujące bloki zgodnie z specyfikacją HEVC
![Page 24: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/24.jpg)
Predykcja z sąsiadujących bloków
• Predykcja czasowa– Bloki co-located zgodnie z specyfikacją HEVC– Zarówno z obrazów z innych chwil czasowych, jak i
innych widoków
![Page 25: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/25.jpg)
Predykcja z sąsiadujących bloków
• Predykcja wektorów ruchu z bloków kodowanych z kompensacją rozbieżności.(nested prediction)
V0 (independent view) V1 (dependent view)
![Page 26: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/26.jpg)
Predykcja z sąsiadujących bloków
• Predykcja wektorów rozbieżności z bloków kodowanych z kompensacją ruchu.
• ????????????????????
![Page 27: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/27.jpg)
Między-widokowa predykcjasygnału resztkowego
• Błąd predykcji jest przewidywany na podstawie błędu predykcji widoku bazowego
• Kompensację rozbieżności dokonuje się na podstawie mapy głębi (kodowanej lub przewidywanej)
![Page 28: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/28.jpg)
Kodowanie map głębi
• Kompensacja ruchu z dokładnością punktową• Brak filtru usuwającego efekt blokowy
(deblokującego)• Brak filtru wienera (ALF)• Brak filtru SAO• Dodatkowe trybu kodowana oparte
o modelowanie bloku• Dziedziczenie wektorów ruchu i rozbieżności
z obrazu
![Page 29: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/29.jpg)
Kodowanie map głębi
• Pomiar zniekształcenia mapy głębi na podstawie zniekształcenia syntezowanej mapy głębi (VSO)
• Ograniczenie podziału bloku na podstawie podziału obrazu (QuadTree limitation)
• Optional Encoder Control for Renderable Regions in Dependent Views
![Page 30: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/30.jpg)
Tryby modelowania bloku głębi
• Głębia posiada ostre krawędzie i płaskie obszary które powinny zostać zachowane
• Podział bloku na 2 obszary o stałej wartości głębi• Różne sposoby sygnalizowania podziału bloku
– Wedgelet– Contourlet– Łańcuchowe kodowanie krawędzi
• Predykcja intra
![Page 31: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/31.jpg)
Wedgelet
• Podział pliku na 2 części prostą linią• 8 trybów odpowiadających 8 możliwością
podziału bloku
![Page 32: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/32.jpg)
Wedgelet
• Bezpośrednie sygnalizowanie trybu i położenia linii xs ye d
• Predykcja linii podziału z otaczających bloków
![Page 33: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/33.jpg)
Wedgelet
• Predykcja trybu za pomocą segmentacji obrazu
![Page 34: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/34.jpg)
Contourlet
• Predykcja podziału na podstawie segmentacji obrazu (progiem jest wartość średnia)
![Page 35: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/35.jpg)
Łańcuchowe kodowanie krawędzi
• W bloku wykrywane są krawędzie które są większe niż próg, jeśli blok posiada tylko 1 taką krawędź tryb jest stosowany
: previous traverse : current traverse : reconstructed edge
0 ̊ 45 ̊ -45 ̊
135 ̊-90 ̊90 ̊ -135 ̊
![Page 36: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/36.jpg)
Wartość głębi w segmentach
• Wartość głębi w segmentach Wedgelet’u i Contourlet’u jest kodowana predykcyjnie
• Liniowa kwantyzacja (krok uzależniony od QP)
![Page 37: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/37.jpg)
Dziedziczenie wektorów ruchu i rozbieżności z obrazu
• Predykcja wektorów ruchu z odpowiadającego bloku obrazu.
• Dziedziczenie także podziałów jednostek kodowania• Wykorzystanie mechanizmu Merge
![Page 38: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/38.jpg)
Pomiar zniekształcenia
• Zniekształcenie mapy głębi mierzone jest jako wartość SAD obrazu zsyntezowanego
![Page 39: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/39.jpg)
Pomiar zniekształcenia
• Zamiast syntezować obraz dla każdego bloku• Zastosowanie przybliżenia w postaci
sD – oryginalny blok głębis᷉D – zrekonstruowany blok głębisT – zrekonstruowany blok obrazu
![Page 40: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/40.jpg)
Pomiar zniekształcenia
• Ważona suma zniekształcenia mierzonego klasycznie i zniekształcenia obrazu syntezowanego
• Proporcje 10:1
![Page 41: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/41.jpg)
Ograniczenie podziału drzewa
• Obraz zawiera więcej szczegółów niż odpowiadająca mu mapa głębi.
• Blok głębi nie powinien być podzielony bardziej niż odpowiadający mu blok obrazu
![Page 42: 3D-HEVC Test Model](https://reader036.vdocuments.mx/reader036/viewer/2022062503/58d0fbab1a28abc00b8b627f/html5/thumbnails/42.jpg)
• Dziękuje za uwagę