YCoCg
Model kolorów YCoCg , znany również jako model kolorów YCgCo , to przestrzeń kolorów utworzona z prostej transformacji powiązanej przestrzeni kolorów RGB na wartość luminancji (oznaczoną jako Y) i dwie wartości nasycenia zwane chrominancją zieleni (Cg) i chrominancji pomarańczy (Współ). Jest obsługiwany w projektach kompresji wideo i obrazów, takich jak H.264/MPEG-4 AVC , HEVC , VVC , JPEG XR i Dirac . Jest prosty w obliczeniach, ma dobre wzmocnienie kodowania transformacji i może być bezstratnie konwertowany do iz RGB przy mniejszej liczbie bitów niż jest to potrzebne w przypadku innych modeli kolorów. Odwracalna skalowana wersja z jeszcze niższą głębią bitową , YCoCg-R , jest również obsługiwana w większości tych projektów i jest również używana w kompresji strumienia wyświetlania . Bardziej kompletna definicja ze zmienną głębią bitową Y i wartościami chrominancji jest podana w ITU-T H.273 .
Historia i nazewnictwo
Najwcześniejsze dokumenty (około 2003 r.) określały ten model kolorów jako YCoCg. Został po raz pierwszy przyjęty w międzynarodowym standardzie w H.264/AVC (w drugim wydaniu projektu profesjonalnych rozszerzeń), który został pierwotnie zaprojektowany do korzystania z modelu kolorów YCbCr . Kiedy to zostało przyjęte, zauważono, że składowa Co przenosiła odchylenie w kierunku czerwieni, a zatem była bardziej podobna do Cr niż Cb, więc przypisanie sygnału i nazewnictwo zostało zmienione w standardzie, w wyniku czego powstała alternatywna nazwa YCgCo (YCgCo jest używany w ITU-T H.273).
Nieruchomości
Zalety modelu kolorów YCoCg w porównaniu z modelem kolorów YCbCr to prostsze i szybsze obliczenia, lepsza dekorelacja płaszczyzn kolorów w celu poprawy wydajności kompresji oraz dokładnie bezstratna odwracalność.
Konwersja z modelem kolorów RGB
Trzy wartości modelu kolorów YCoCg są obliczane w następujący sposób na podstawie trzech wartości kolorów modelu kolorów RGB:
Wartości Y mieszczą się w zakresie od 0 do 1, podczas gdy Co i Cg mieszczą się w zakresie od -0,5 do 0,5, co jest typowe dla modeli kolorów „YCC”, takich jak YCbCr . Na przykład czysta czerwień jest wyrażana w systemie RGB jako (1, 0, 0), aw systemie YCoCg jako ( 1 / 4 , 1 / 2 , − 1 / 4 ). Jednakże, ponieważ współczynniki macierzy transformacji są prostymi ułamkami binarnymi, jest ona łatwiejsza do obliczenia niż inne transformacje YCC. Dla sygnałów RGB o głębi bitowej n , albo otrzymane sygnały byłyby wtedy zaokrąglane do n bitów, albo zwykle miałyby n + 2 bity podczas przetwarzania danych w tej postaci (chociaż n + 1 bitów byłoby wystarczające dla Co).
Odwrotna macierz konwertuje z modelu kolorów YCoCg z powrotem do modelu kolorów RGB:
Aby wykonać konwersję odwrotną, potrzebne są tylko dwa dodania i dwa odjęcia ze współczynnikami o wartościach całkowitych, poprzez zaimplementowanie jej jako:
tmp = Y - Cg ; R = tmp + Co ; G = Y + Cg ; B = tmp - Co ;
Odmiana YCoCg-R oparta na liftingu
Skalowana wersja transformacji, czasami nazywana YCoCg-R (gdzie „-R” odnosi się do odwracalności), może być skutecznie zaimplementowana przy zmniejszonej głębi bitowej. Skalowana wersja wykorzystuje schemat podnoszenia , aby uczynić go dokładnie odwracalnym, jednocześnie minimalizując głębię bitową trzech składowych koloru. W przypadku sygnałów RGB o głębi bitowej n , głębia bitowa sygnału Y przy użyciu YCoCg-R będzie wynosić n , a głębia bitowa Co i Cg będzie wynosić n +1, w przeciwieństwie do zwykłego YCoCg, który wymagałby n +2 bitów dla Y i Cg oraz n +1 bity dla Co.
Tutaj możliwe wartości dla Y są nadal w [0, 1], podczas gdy możliwe wartości dla Co i Cg są teraz w [-1, 1].
Konwersja z RGB na YCoCg-R to:
Co = R - B ; tmp = B + Co / 2 ; Cg = G - tmp ; Y = tmp + Cg / 2 ;
Konwersja z YCoCg-R na RGB wynosi wtedy:
tmp = Y - Cg / 2 ; G = Cg + tmp ; B = tmp - Co / 2 ; R = B + Co ;
(Wszystkie podziały są obcinane, jak w C. Transformacja do przodu może być dostosowana do stworzenia podobnej implementacji YCoCg.)
Wzrost wydajności
Rozszerzenia kodowania zawartości ekranu standardu HEVC i standardu VVC obejmują adaptacyjną transformację kolorów w ramach procesu kodowania szczątkowego, co odpowiada przełączeniu kodowania wideo RGB na domenę YCoCg-R.
Wykorzystanie przestrzeni kolorów YCoCg do kodowania wideo RGB w kodowaniu zawartości ekranu HEVC przyniosło duże zyski w przypadku stratnego wideo, ale minimalne zyski przy użyciu YCoCg-R do bezstratnego kodowania wideo.
Literatura
- Henrique Malvar i Gary Sullivan , „ Wpływ profesjonalnych rozszerzeń na transformację, skalowanie i przestrzeń kolorów ”. Dokument grupy ekspertów ds. ruchomego obrazu i grupy ekspertów ds. kodowania wideo JVT-H031, 8. spotkanie JVT , Genewa, maj 2003 r.
- Henrique Malvar i Gary Sullivan , „ YCoCg-R: Przestrzeń barw z odwracalnością RGB i niskim zakresem dynamicznym ”. Dokument Grupy ekspertów ds. Moving Picture Experts Group i Video Coding Experts Group JVT-I014, JVT PExt Ad Hoc Group Meeting: Trondheim, Norwegia, lipiec 2003 r.
- Shijun Sun, „ Resztkowa transformacja koloru za pomocą YCoCg-R ”. Dokument grupy ekspertów ds. ruchomego obrazu i grupy ekspertów ds. kodowania wideo JVT-L014, 12. spotkanie JVT: Redmond, Waszyngton, Stany Zjednoczone, lipiec 2004 r.
- Woo-Shik Kim, Dmitry Birinov i Dae-Sung Cho, Hyun Mun Kim (Multimedia Lab, Samsung AIT), „ Ulepszenia kodowania RGB w H.264/MPEG-4 AVC FRExt ”. Dokument grupy ekspertów ds. kodowania wideo VCEG-Z16, 26. spotkanie VCEG : Pusan, Korea, kwiecień 2005 r.
- Henrique S. Malvar, Gary J. Sullivan i Sridhar Srinivasan, „ Odwracalne transformacje kolorów oparte na liftingu w celu kompresji obrazu ”, SPIE Applications of Digital Image Processing XXXI, Proc. SPIE , San Diego, Kalifornia, tom. 7073, papier 7073-07, sierpień 2008.
- P. Agawane i KR Rao (Multimedia Processing Lab, University of Texas at Arlington ), „ Implementacja i ocena transformacji koloru szczątkowego dla bezstratnego kodowania RGB 4:4:4 ”. Międzynarodowa konferencja na temat ostatnich postępów w inżynierii komunikacji, Hyderabad, Indie, grudzień 2008 r.
- Tilo Strutz, „ Odwracalne transformacje kolorów bez mnożników i ich automatyczny wybór do kompresji danych obrazu ”. Transakcje IEEE dotyczące obwodów i systemów dla technologii wideo , tom. 23, nr 7, s. 1249–1259, lipiec 2013 r.
- Tilo Strutz i Alexander Leipnitz, „ Odwracalne przestrzenie kolorów bez zwiększonej głębi bitowej i ich adaptacyjny wybór ”. Listy przetwarzania sygnału IEEE , tom. 22, nr 9, s. 1269–1273, wrzesień 2015 r.
- ^ „Specyfikacja Diraca” (PDF) . BBC . P. 136. Zarchiwizowane od oryginału (pdf) w dniu 2015-05-03 . Źródło 2010-05-04 .
- ^ a b „YCoCg: przestrzeń kolorów z odwracalnością RGB” (ppt) . University of Texas w Arlington . Źródło 2010-05-02 .
- ^ ab Jair Mosze. „Poprawka H.264: Rozszerzenia zakresu wierności” (PDF) . Laboratorium przetwarzania sygnału i obrazu (SIPL), Technion Izraelski Instytut Technologii . P. 15. Zarchiwizowane od oryginału (pdf) w dniu 2014-10-06 . Źródło 2010-05-02 .
- Bibliografia _ Xiaozhong Xu; Shawmin Lei; Kevin Jou (wrzesień 2015). „Przegląd rozszerzeń HEVC dotyczących kodowania zawartości ekranu” . P. 8.