RS65827B1 - Postupak za kodiranje i postupak za dekodiranje lut-a i odgovarajući uređaji - Google Patents

Postupak za kodiranje i postupak za dekodiranje lut-a i odgovarajući uređaji

Info

Publication number
RS65827B1
RS65827B1 RS20240783A RSP20240783A RS65827B1 RS 65827 B1 RS65827 B1 RS 65827B1 RS 20240783 A RS20240783 A RS 20240783A RS P20240783 A RSP20240783 A RS P20240783A RS 65827 B1 RS65827 B1 RS 65827B1
Authority
RS
Serbia
Prior art keywords
node
color
octant
lut
decoding
Prior art date
Application number
RS20240783A
Other languages
English (en)
Inventor
Philippe Bordes
Pierre Andrivon
Emmanuel Jolly
Original Assignee
Dolby Int Ab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dolby Int Ab filed Critical Dolby Int Ab
Publication of RS65827B1 publication Critical patent/RS65827B1/sr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6016Conversion to subtractive colour signals
    • H04N1/6019Conversion to subtractive colour signals using look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Color Image Communication Systems (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Television Systems (AREA)
  • Image Analysis (AREA)

Description

Opis
1. OBLAST PRONALASKA
[0001] Otkriven je postupak za kodiranje tabele za pretraživanje boja definisan kao rešetka čvorova, pri čemu je najmanje jedna vrednost povezana sa svakim čvorom rešetke. Na primer, ta vrednost može biti vrednost boje. Takođe je otkriven odgovarajući postupak dekodiranja, uređaj za kodiranje i uređaj za dekodiranje.
2. POZADINA PRONALASKA
[0002] Kao što je prikazano na Fig.1, dekodiranje skalabilnog videa se sastoji od dekodiranja (odnosno kodiranja) protoka bitova osnovnog sloja (BL) i barem jednog protoka bitova sloja za poboljšanje (EL). Obično se slike EL-a predviđaju iz (eventualno uvećanih) dekodiranih slika BL-a. Međutim, kada slike EL-a i slike BL-a koriste različite prostorne boje i/ili su različito kalibrisane po boji, predikcija postaje manje efikasna. Kako bi se poboljšala predikcija, poznata je primena transformacije boje na dekodirane slike BL-a. Preciznije, transformacija boje mapira boje BL prostora boja (prvi prostor boja) na boje EL prostora boja (drugi prostor boja) koristeći informacije o boji.
[0003] Kao što je prikazano na Fig.2, u distribuciji video sadržaja, transformacija boje se obično primenjuje na dekodirane slike kako bi transformisane dekodirane slike bile prilagođene sposobnostima dobijanja krajnjeg uređaja.
[0004] Ova transformacija boje je takođe poznata kao funkcija mapiranja boje (CMF). CMF se na primer približava pomoću 3x3 matrice pojačanja plus ofset (model pojačanja ofseta). U ovom slučaju, CMF je definisan sa 12 parametara. Međutim, takvo približavanje CMF nije vrlo precizno jer podrazumeva linearni transformacioni model. Shodno tome, koristi se 3D tabela za pretraživanje (poznata i kao 3D LUT) kako bi se opisala takva CMF, bez pretpostavke o modelu CMF.3D LUT je mnogo preciznija jer se njegova veličina može povećati u zavisnosti od tražene tačnosti. Međutim, 3D LUT može predstavljati ogroman skup podataka. Prenos 3D LU do prijemnika samim tim zahteva kodiranje LUT-a.
[0005] LUT koja se približava CMF povezuje najmanje jednu vrednost boje u prvom prostoru boje sa drugom vrednošću boje u drugom prostoru boje. LUT omogućava podelu prvog prostora boja u skup regiona koji su ograničeni čvorovima LUT-a. Na primer, 3D LUT povezuje triplet vrednosti boje u prvom prostoru boja sa skupom vrednosti boje. Skup vrednosti boje može biti trostruka vrednost boje u drugom prostoru boja ili skup vrednosti boje koje predstavljaju parametre transformacije boje (na primer, lokalno definisani parametri CMF-a) koji se koriste za transformaciju vrednosti boje iz prvog prostora boja u vrednosti boje u drugom prostoru boja. Na Fig.3, kvadratni 3D LUT je predstavljen kao rešetka NxNxN čvorova. Za svaki čvor V(c1,c2,c3) 3D LUT-a, potrebno je da se čuvaju trostruke vrednosti boja (Vc1, Vc2, Vc3). Količina podataka povezana sa 3D LUT je NxNxNxK, pri čemu K predstavlja količinu bitova koji se koriste za čuvanje jedne trostruke vrednosti LUT-a. Trostruka vrednost je na primer (R, G, B) triplet, (Y, U, V) triplet ili (Y, Cb,Cr) triplet, itd. Kodiranje svih vrednosti čvorova nije efikasno budući da predstavlja ogromnu količinu podataka.
[0006] EP 2051529, EP 0822708, JP 2004208128, JP 2010251940 otkrivaju tabele za pretraživanje za transformaciju boje. EP 1574996, US 6281903 i YAN HUANG ET AL: "A Generic Scheme for Progressive Point Cloud Coding", IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, IEEE SERVICE CENTER, LOS ALAMITOS, CA, US, vol.14, no.2, 1 March 2008 (2008-03-01), strane 440-453, otkrivaju upotrebu strukture oktalnog stabla kako bi se prikazali 3D podaci.
3. KRATAK SADRŽAJ PRONALASKA
[0007] Svrha pronalaska je prevazilaženje barem jednog od nedostataka iz stanja tehnike. Otkriven je postupak kodiranja LUT-a, postupak dekodiranja, koder, dekoder i protok bitova dobijen postupkom kodiranja, prema priloženim patentnim zahtevima i detaljnom opisu u nastavku. Ovaj pronalazak je definisan nezavisnim patentnim zahtevima. Zavisni patentni zahtevi se odnose na opciona svojstva nekih načina ostvarivanja.
4. KRATAK OPIS CRTEŽA
[0008] Druge karakteristike i prednosti ovog pronalaska će se pojaviti sa sledećim opisom nekih načina ostvarivanja, pri čemu je ovaj opis sastavljen tako da je povezan sa crtežima na kojima:
- Fig.1 ilustruje arhitekturu dekodera skalabilnog videa koja koristi skalabilnost opsega boja prema stanju tehnike;
- Fig.2 ilustruje arhitekturu video dekodera koji obuhvata transformaciju boje kako bi se podesilo dobijanje karakteristika ekrana prema stanju tehnike;
- Fig.3 predstavlja dijagram na kojem je prikazana kvadratna 3D LUT koja je predstavljena kao rešetka NxNxN čvorova prema stanju tehnike;
- Fig.4 prikazuje dijagram toka postupka kodiranja 3D LUT prema primeru koji je koristan za razumevanje ovog pronalaska;
- Fig.5 je dijagram koji prikazuje 2D LUT;
- Fig.6 prikazuje dijagram toka postupka kodiranja prema drugom primeru načina ostvarivanja ovog pronalaska;
- Fig.7 dijagramski prikazuje sa leve strane rekruzivnu podelu kocke na oktanate, a sa desne strane odgovarajuće oktalno stablo;
- Fig.8 ilustruje interpolaciju vrednosti boja čvora prema ovom pronalasku;
- Fig.9 dijagramski prikazuje 3D LUT koja je predstavljena kao neuniformna rešetka;
- Fig.10 prikazuje dijagram toka postupka dekodiranja 3D LUT prema primeru koji je koristan za razumevanje ovog pronalaska;
- Fig.11 predstavlja dijagram toka postupka dekodiranja prema drugom primeru načina ostvarivanja pronalaska;
- Fig.12 dijagramski prikazuje koder za kodiranje LUT prema ovom pronalasku;
- Fig.13 dijagramski prikazuje dekoder za dekodiranje LUT prema ovom pronalasku; i
- Fig.14 prikazuje položaj 8 čvorova oktanta.
5. DETALJAN OPIS PRONALASKA
[0009] Fig.4 prikazuje dijagram toka kodiranja postupka 3D LUT prema primeru koji je koristan za razumevanje pronalaska. Postupak kodiranja LUT-a definisan je kao rešetka čvorova, gde je svakom čvoru rešetke barem jedna vrednost, na primer vrednost boje, dodeljena. U vezi sa dekodiranjem, pojmovi "rekonstrukcija" i "dekodiranje" se veoma često koriste kao sinonimi. U nastavku, pojam vrednost boje obuhvata vrednosti boje u određenom prostoru boja kao što su RGB, YUV ili Y,Cb,Cr vrednosti, kao i vrednosti koje predstavljaju parametre transformacije boje, kao što su CMF parametri, odnosno parametri matrice i vrednosti ofseta.
[0010] U fazi 40, barem jedna vrednost boje trenutnog čvora se predviđa na osnovu rekonstruisanih vrednosti boje koje su povezane sa susednim čvorovima.
[0011] Primera radi, 2D LUT koja se povezuje sa čvorom V0(c10, c20) odgovarajući par vrednosti (V0c1, V0c2), npr. vrednosti boja, je prikazana na Fig.5. Vrednosti povezane sa čvorom V0 su predviđene na primer iz prostorno susednih čvorova V1(c11,c21), V2(c12,c22), V3(c13,c23) i V4(c14,c24) sa odgovarajućim parom vrednosti (Vic1, Vic2)i=1,..4. Predikcija (Pc1, Pc2) se na primer izračunava pomoću interpolacije na sledeći način:
[0012] Prema nekoj varijanti, 2D LUT se povezuje sa čvorom V0(c10,c20) skup parametara (m11, m12, m21, m22, o1, o2) umesto para vrednosti (V0c1, V0c2). Ovaj skup parametara može da se koristi za rekonstrukciju vrednosti (V0c1, V0c2) od vrednosti (c10,c20) V0 na sledeći način:
[0013] Parametri povezani sa čvorom V0 su predviđeni na primer od prostorno susednih čvorova V1(c11,c21), V2(c12,c22), V3(c13,c23) i V4(c14,c24) sa odgovarajućim parom parametara (Vic1, Vic2)i=1,..4.
Predikcija P(Pc1, Pc2) se na primer računa pomoću interpolacija na sledeći način:
[0014] U fazi 42, određuje se najmanje jedan ostatak između jedne vrednosti boje trenutnog čvora i njene predikcije, a zatim se dodatno kodira u protoku F bitova. Ostatak se određuje oduzimanjem predikcije od najmanje jedne vrednosti boje trenutnog čvora. Obično kodiranje uključuje entropijsko kodiranje. Prema jednoj varijanti, kodiranje uključuje kvantizaciju ostataka pomoću kvantizatora q i entropijsko kodiranje kvantizovanog ostataka.
[0015] Primera radi, u slučaju 2D LUT, prvi i drugi ostatak se izračunavaju za čvor V0. Prvi ostatak je jednak (V0c1- Pc1), a drugi ostatak je jednak (V0c2- Pc2). Zatim se ti ostaci, odnosno kvantizovani ostaci ((V0c1- Pc1) / q i (V0c2- Pc2) / q), kodiraju entropijski u protoku F bitova. Entropijsko kodiranje koristi tradicionalne binarne tehnike kao što je Exponential-Golomb, Huffman, CABAC (engleski akronim za "Context Adaptive Binary Arithmetic Coding").
[0016] Faze 40 i 42 se ponavljaju do ispunjenja cilja kako bi se kodirao dodatni čvor LUT dok se svi čvorovi LUT ne kodiraju.
[0017] Opciono, postupak kodiranja obuhvata kodiranje vrednosti kvantizatora q u protoku F bitova. Najmanje jedna vrednost boje trenutnog čvora se dodatno rekonstruiše kako bi se koristila za predikciju drugih čvorova. Svaka rekonstruisana najmanje jedna vrednost boje jednaka je odgovarajućoj originalnoj vrednosti boje ako se ne koristi kvantizator, tj. q = 1. U suprotnom, najmanje jedna rekonstruisana vrednost boje određuje se dekvantizacijom ostataka i dodavanjem dekvantizovanog ostataka predikciji.
[0018] Prema nekoj varijanti, postupak kodiranja dodatno uključuje kodiranje u protoku F bitova vrstu interpolacije koja se koristi za predviđanje barem jedne boje čvora. Preciznije, dekodira se indeks iz protoka bitova koji identifikuje vrstu interpolacije. Na primer, indeks 0 identifikuje bilinearnu interpolaciju, indeks 1 identifikuje interpolaciju najbližeg suseda, a indeks 2 identifikuje linearnu interpolaciju sa 2 najbliža suseda.
[0019] Prema nekoj varijanti, nisu svi čvorovi LUT-a kodirani u protoku F bitova. Na primer, ako je apsolutna vrednost svih ostataka ili svih kvantizovanih ostataka čvora ispod praga vrednosti TH, tada se za taj čvor ne kodira nijedan ostatak, na primer, TH = 0 ili TH = 1. Binarna zastavica se kodira u protoku bitova za svaki čvor čime se pokazuje da li je kodiran najmanje jedan ostatak za taj čvor ili nijedan od ostataka nije kodiran i samim tim se pretpostavlja da su nula.
[0020] Prema nekoj varijanti, za svaku vrednost boje svakog čvora kodira se binarna zastavica koja pokazuje da li je kodiran ostatak za tu vrednost boje ili se ostatak ne kodira i pretpostavlja se da je nula.
[0021] Veličina LUT-a se takođe opciono kodira u protoku bitova.
[0022] Fig.6 predstavlja dijagram toka postupka kodiranja prema drugom primernom načinu ostvarivanja pronalaska. Postupak za kodiranje 3D LUT-a definisan kao rešetka čvorova pomoću oktalnog stabla, pri čemu je skup od n vrednosti boje, kao što je triplet vrednosti boje, povezan sa svakim čvorom rešetke, pri čemu je n celobrojna vrednost ≥ 1. Oktalno stablo se koristi za razdvajanje 3D prostora boja tako što se rekurzivno deli na osam oktanata, kao što je prikazano na Fig.7. Oktant nivoa N ima svog oktanta pretka na nivou N-1. Oktalna stabla su 3D analozi strukture kvadratnih stabala. Postupak kodiranja je otkriven za kodiranje trenutnog čvora V rešetke koji pripada trenutnom oktantu. U nastavku je n = 3.
[0023] U fazi 50, svaka od tri vrednosti boje (Vr, Vg, Vb) povezana sa trenutnim čvorom V na koordinatama (r, g, b) predviđa se iz rekonstruisanih vrednosti boje koje su povezane sa susednim čvorovima, tj. čvorovima koji pripadaju oktantu pretka trenutnog oktanta. (r, g, b) se koriste umesto (c1, c2, c3) radi pojednostavljenja, ali ovaj pronalazak nije ograničen na prostor boja (R, G, B). Može se primeniti na predstavljanja prostora boja kao što su (Y, U, V), (Y, Cb, Cr), i slično.
[0024] Tako se za svaku vrednost boje određuje predikcija, na primer, pomoću trolinearne interpolacije kao što je prikazano na Fig.8:
u kojoj: (ri, gj, bk) sa i=0, 1, j=0, 1 i k=0, 1 su koordinate čvorova oktanta pretka u 3D prostoru boja;
(r, g, b) su koordinate trenutnog čvora;
LUT[ri][gj][bk]. r je vrednost prve boje povezana sa čvorom (ri, gj, bk);
s0(t) = t1-t, i s1(t) = t-t0sa t= r, g ili b.
[0025] Iste jednačine se koriste za g i b. Može se koristiti i druga vrsta interpolacije kao što su prizmatična, piramidalna ili tetraedarska.
[0026] Rešetka nije nužno uniformna kao što je prikazano na Fig.9.
[0027] U fazi 52, tri ostatak se izračunavaju za trenutni čvor, jedan za svaku komponentu boje: resr=(Vr-Vr), resg=(Vg-Vg) i resb=(Vb-Vb).
[0028] Ostaci se zatim kodiraju entropijski u protoku bitova ili se kvantizuju pre nego što se kodiraju entropijski. Entropijsko kodiranje koristi tradicionalne binarne tehnike kodiranja kao što su Exponential-Golomb, Huffman, CABAC (engleski akronim za "Context Adaptive Binary Arithmetic Coding").
[0029] Oktant nivoa 0 nema oktant pretka. Na isti način, prvi oktant u listi kodiranja oktanta nema prethodnog oktanta. Stoga, svaka od tri vrednosti boje (Vr, Vg, Vb) povezana sa trenutnim čvorom V ovog oktanta se predviđa iz poznate vrednosti boje, na primer, vrednosti 128. Prema jednoj varijanti, različite poznate vrednosti koriste se za različite čvorove oktanta nivoa 0. Prema drugoj varijanti, predikcija iz poznatih vrednosti boje takođe se vrši i za druge oktante osim oktanta nivoa 0. Prema još jednoj varijanti, svaka od tri vrednosti boje (Vr, Vg, Vb) povezana sa trenutnim čvorom V ovog oktanta predviđa se iz već rekonstruisanih vrednosti boje povezanih sa susednim čvorovima koji pripadaju istom oktantu.
[0030] Opciono, postupak kodiranja uključuje kodiranje vrednosti kvantizatora q u protoku bitova. Tri vrednosti boje trenutnog čvora se dodatno rekonstruišu i mogu se koristiti za predikciju drugih čvorova. Svaka rekonstruisana vrednost boje jednaka je originalnoj vrednosti boje ako se ne koristi kvantizator (q = 1). U suprotnom, svaka rekonstruisana vrednost boje određena je dekvantizacijom odgovarajućeg ostataka i dodavanjem dekvantizovanog ostataka odgovarajućoj predikciji.
[0031] Prema jednoj varijanti, postupak kodiranja dodatno uključuje kodiranje u protoku bitova vrste interpolacije korišćene za predikciju najmanje jedne vrednosti boje čvora. Tačnije, kodira se indeks koji identifikuje vrstu interpolacije. Na primer, indeks 0 identifikuje trolinearnu interpolaciju, indeks 1 identifikuje prizmatičnu interpolacije, indeks 2 identifikuje piramidalnu interpolaciju, a indeks 3 identifikuje tetraedarsku interpolaciju.
[0032] Prema jednoj varijanti, nije svaki čvor LUT-a kodiran u protoku bitova. Na primer, ako su apsolutne vrednosti svih ostataka ili svih kvantizovanih ostataka čvora ispod vrednosti praga TH, tada se za taj čvor ne kodira nijedan ostatak, na primer, TH = 0 ili TH = 1. Binarna zastavica se kodira u protoku bitova za svaki čvor, što ukazuje da li je kodiran najmanje jedan ostatak za taj čvor ili ne. Prema drugoj varijanti, binarna zastavica se kodira za svaku vrednost boje svakog čvora, ukazujući da li je kodiran ostatak za tu vrednost boje ili se ostatak ne kodira i pretpostavlja se da je nula. LUT obično može da se kodira u protoku bitova kako bi se koristio za transformaciju slika videa u aplikacijama kao što su prilagođavanje boja prikaza ili skalabilnost opsega boja. LUT se može kodirati i prenositi zajedno sa video sadržajem. Ako postupak kodiranja zna da neki delovi 3D LUT-a neće biti korišćeni od strane aplikacije, tada čvorovi koji pripadaju tom delu 3D LUT-a neće biti kodirani. Na isti način, ako postupak kodiranja zna da neki delovi 3D LUT-a imaju mali uticaj na konačni prikaz videa, tada čvorovi koji pripadaju tom delu 3D LUT-a takođe neće biti kodirani.
[0033] Postupak se primenjuje rekurzivno za kodiranje celog 3D LUT-a. U ovom slučaju, svi oktanti oktalnog stabla se kodiraju. Kada su svi čvorovi trenutnog oktanta kodirani, zatim se kodiraju čvorovi potomaka oktanta trenutnog oktanta.
[0034] U jednoj varijanti, 3D LUT se prethodno obrađuje pre nego što bude kodiran. U ovom slučaju, za svaki oktant u oktalnom stablu vezana je podeljena zastavica koja je inicijalno postavljena na "netačno". Tokom prethodne obrade, vrednosti podeljene zastavice se određuju za svaki oktant. Ako najmanje jedan čvor koji treba da bude kodiran u trenutnom oktantu ima najmanje jedan ostatak, možda kvantizovan, veći od TH, tada se podeljena zastavica njegovog oktanta predaka postavlja na "tačno". Podeljena zastavica trenutnog oktanta nivoa N tako označava da li se njegovi neposredni potomci (tj. potomci nivoa N+1) rekurzivno kodiraju ili se svi ostaci čvorova svih njegovih nekodiranih potomaka (potomci nivoa N+k sa k>0) pretpostavljaju kao nula.
[0035] Tokom koraka kodiranja, podeljene zastavice i ostaci se kodiraju u protoku bitova. Kada su svi čvorovi trenutnog oktanta kodirani, čvorovi potomaka oktanta trenutnog oktanta se kodiraju ako je podeljena zastavica trenutnog oktanta postavljena na "tačno". Čvorovi koji pripadaju dva oktanta se poželjno kodiraju samo jednom.
[0036] 3D LUT se, na primer, kodira u VPS (skup parametara videa), SPS (skupa parametara sekvence), PPS (skup parametara slike) ili u jednoj SEI poruci (dodatne informacije o poboljšanju) kako je definisano u AVC, HEVC, SVC ili SHVC standardima za kodiranje videa.3D LUT se može kodirati, na primer, u SEI poruci kao što je ona definisana u nastavku. Veličina S LUT-a se takođe opciono kodira u protoku bitova. S predstavlja broj čvorova u jednom pravcu.
[0037] Prema nekoj varijanti, n 3D LUT-ovi sastavljeni od čvorova sa 1 vrednošću boje su kodirani umesto kodiranja jedne 3D LUT koju čine čvorovi sa n povezanim vrednostima boja, npr. n=3, kao što je prethodno otkriveno.
[0038] Prema nekoj varijanti, kada je veličina 3D LUT S=2, zastavica se kodira čime se signalizira dekoderu da izračuna matricu pojačanja 3x3 plus ofset iz dekodirane 3D LUT i da je koristi kao CMF umesto 3D LUT.
[0039] Prema drugoj varijanti, jedan 3D LUT sastavljen od čvorova sa n povezanih vrednosti boje koristi se za kodiranje parametara transformacije boje koji su lokalno definisani. Na primer, svaki čvor 3D LUT-a povezan je sa 12 vrednosti boje koje predstavljaju transformaciju boje. Umesto povezivanja 3 vrednosti boje (Vr, Vg, Vb) sa trenutnim čvorom V, čvor V(r, g, b) povezan je sa 12 vrednosti boje koje predstavljaju transformaciju boje, gde su 12 vrednosti [ai, bi, ci, oi] sa i=0, 1 ili 2 definisane tako da se verifikuje sledeća jednačina:
[0040] Prema nekoj varijanti, samo parametri [ai, bi,ci] sa i=0,1 ili 2 su povezani sa čvorovima.
[0041] U stvari, u slučaju 3D LUT veličine 2 (jedan jedini oktant sa 8 čvorova), mogu se izabrati tri vrednosti boje čvorova tako da je 3D LUT ekvivalentan modelu pojačanja ofseta definisanom sledećom jednačinom:
[0042] Kako bi se to izvelo, moraju se podesiti 3 vrednosti boja (yX,uX,vX)X=A,...H8 čvorova A do H na sledeće vrednosti:
[0043] K je konstanta koja zavisi od broja bitova korišćenih za predstavljanje svake vrednosti boje. Na primer, K = 255 ako se vrednosti boje predstavljaju sa 8 bitova po kanalu, K = 1023 ako se predstavljaju sa 10 bitova po kanalu, i tako dalje. Tada je trolinearna interpolacija ekvivalentna modelu pojačanjeofset.
[0044] Fig.10 predstavlja dijagram toka postupka dekodiranja 3D LUT prema primeru koji je koristan za razumevanje ovog pronalaska.
[0045] U fazi 140, najmanje jedan ostatak se dekodira iz protoka F bitova. Dekodiranje obično uključuje entropijsko dekodiranje. Prema jednoj varijanti, dekodiranje uključuje entropijsko dekodiranje kvantizovanog ostatka i inverznu kvantizaciju kvantizovanog ostatka sa kvantizatorom q. Entropijsko dekodiranje koristi tradicionalne tehnike binarnog dekodiranja kao što je Exponential-Golomb, Huffman, CABAC (engleski akronim za "Context Adaptive Binary Arithmetic Coding").
[0046] Opciono, postupak dekodiranja obuhvata dekodiranje vrednosti kvantizatora q iz bitnog toka F.
[0047] Prema nekoj varijanti, nisu svi čvorovi LUT-a kodirani u protoku F bitova. Opciono, za svaki čvor se dekodira binarna zastavica iz protoka bitova, koja ukazuje da li je kodiran najmanje jedan ostatak za taj čvor ili ne. Ako nijedan ostatak nije kodiran, pretpostavlja se da je ostatak ili su ostaci jednaki nuli za taj čvor.
[0048] U fazi 142, najmanje jedna vrednost boje trenutnog čvora se predviđa na osnovu rekonstruisanih vrednosti boje koje su povezane sa susednim čvorovima. Na primeru 2D LUT-a koja povezuje čvor V0(c1, c2) sa odgovarajućim parom vrednosti boje (V0c1, V0c2), prikazanom na Fig.5. Vrednosti boje povezane sa čvorom V0 se predviđaju na osnovu prostorno susednih čvorova V1, V2, V3 i V4. Na primer, prediktor P(Pc1, Pc2) se računa korišćenjem interpolacije na sledeći način:
[0049] U fazi 144, čvor je rekonstruisan. Preciznije, najmanje jedna vrednost boje trenutnog čvora se rekonstruiše iz njegove predikcije i dekodiranog najmanje jednog ostataka. Na primeru 2D LUT-a, dekodiraju se dva ostatka RC1i RC2za trenutni čvor V0. Trenutni čvor se zatim rekonstruiše računanjem njegovih dve vrednosti boje na sledeći način: (RC1+Pc1) i (Rc2+ Pc2).
[0050] Prema nekoj varijanti, postupak dekodiranja dodatno obuhvata dekodiranje iz protoka bitova F vrste interpolacije koja se koristi za predikciju najmanje jedne vrednosti boje čvora. Tačnije, dekodira se indeks iz protoka bitova koji identifikuje vrstu interpolacije. Na primer, indeks 0 identifikuje bilinearnu interpolaciju, dok indeks 1 identifikuje interpolaciju vrednosti najbližeg čvora.
[0051] Veličina LUT je takođe opciono dekodirana iz protoka bitova.
[0052] Fig.11 predstavlja dijagram toka postupka dekodiranja prema drugom primernom načinu ostvarivanja pronalaska. Postupak dekodiranja 3D LUT-a je definisan kao rešetka čvorova pomoću oktalnog stabla, pri čemu je sa svakim čvorom rešetke povezan triplet vrednosti boje. Postupak dekodiranja je opisan za dekodiranje trenutnog čvora V rešetke koji pripada trenutnom oktantu.
[0053] U fazi 150, tri ostatka resr, resg, resbdekodiraju se iz protoka F bitova. Dekodiranje obično uključuje entropijsko dekodiranje. Prema jednoj varijanti, dekodiranje takođe može da obuhvata entropijsko dekodiranje kvantizovanog ostatka i inverznu kvantizaciju tog kvantizovanog ostatka pomoću kvantizatora q. Entropijsko dekodiranje koristi tradicionalne tehnike binarnog dekodiranja kao što je Exponential-Golomb, Huffman, CABAC (engleski akronim za "Context Adaptive Binary Arithmetic Coding").
[0054] Opciono, postupak dekodiranja obuhvata dekodiranje vrednosti kvantizatora q iz protoka F bitova.
[0055] Prema nekoj varijanti, nisu svi čvorovi LUT-a kodirani u protoku F bitova. Opciono, za svaki čvor se dekodira binarna zastavica iz protoka bitova, koja ukazuje da li je kodiran najmanje jedan ostatak za taj čvor ili ne. Ako nijedan ostatak nije kodiran, pretpostavlja se da je ostatak(ci) jednak(i) nuli za taj čvor.
[0056] U fazi 152, svaka od tri vrednosti boje (Vr, Vg, Vb) povezana sa trenutnim čvorom V koordinata (r, g, b) je predviđena iz rekonstruisanih vrednosti boja sa susednim čvorovima, tj. čvorovima koji pripadaju oktantu pretka trenutnog oktanta. (r, g, b) se koristi umesto (c1, c2, c3) za pojednostavljivanje oznaka. Ali pronalazak nije ograničen na (R, G, B) prostor boje. Može da se primenjuje na (Y,U,V), (Y,Cb,Cr), ... predstavljanja prostora boja.
[0057] Predikcija se samim tim određuje za svaku vrednost boje.
[0058] Predikcija se samim tim određuje za svaku vrednost boje pomoću na primer trolinearne interpolacije kao što je prikazano na Fig.8:
1
u kojoj je: (ri, gj, bk) sa i=0, 1, j=0, 1 i k=0, 1 su koordinate čvorova pretka oktanta u 3D prostoru boje;
(r, g, b) su koordinate trenutnog čvora;
LUT[ri][gj][bk].r je prva vrednost boje povezana sa čvorom (ri, gj, bk);
s0(t) = t1-t, i s1(t) = t-t0sa t= r, g ili b.
[0059] Iste jednačine se koriste za g i b. Može se koristiti i druga vrsta interpolacije kao što su prizmatična, piramidalna ili tetraedralna. Rešetka nije nužno uniformna kao što je prikazano na Fig.9.
[0060] U fazi 154, tri vrednosti boje se računaju, odnosno rekonstruišu za trenutni čvor na osnovu njihove predikcije i odgovarajućih dekodiranih ostataka (resr, resg, resb). Trenutni čvor je samim tim rekonstruisan izračunavanjem sve tri vrednosti boje na sledeći način:
[0061] Oktant nivoa 0 nema oktant pretka. Na isti način, prvi oktant u listi kodiranja oktanta nema prethodnika. Stoga, svaka od tri vrednosti boje (Vr, Vg, Vb) povezane sa trenutnim čvorom V ovog oktanta se predviđa na osnovu poznate vrednosti boje, na primer, vrednosti 128. Prema jednoj varijanti, svaka od tri vrednosti boje (Vr, Vg, Vb) povezane sa trenutnim čvorom V ovog oktanta se predviđa na osnovu već rekonstruisanih vrednosti boje povezanih sa susednim čvorovima koji pripadaju istom oktantu.
[0062] Postupak se primenjuje rekurzivno za dekodiranje celog 3D LUT-a. Čvorovi koji pripadaju dva oktanta se poželjno dekodiraju samo jednom.
[0063] Nakon što su dekodirani svi čvorovi trenutnog oktanta (nivo N), čvorovi potomaka (nivo N+1) oktanata trenutnog oktanta se dekodiraju.
[0064] Prema jednoj varijanti, dekodira se podeljena zastavica za trenutni oktant nivoa N, koja ukazuje da li su njegovi neposredni potomci (tj. potomci nivoa N+1) rekurzivno dekodirani ili se pretpostavlja da su svi ostaci čvorova svih potomaka (potomci nivoa N+k sa k>0) koji još nisu dekodirani jednaki nuli.
[0065] Prema nekoj varijanti, postupak dekodiranja dodatno obuhvata dekodiranje vrste interpolacije korišćene za predikciju najmanje jedne vrednosti boje čvora iz protoka F bitova. Preciznije, dekodira se indeks iz protoka bitova koji identifikuje vrstu interpolacije. Na primer, indeks 0 identifikuje trolinearnu interpolaciju, indeks 1 identifikuje prizmatičnu interpolaciju, indeks 2 identifikuje piramidealnu interpolaciju, a indeks 3 identifikuje tetraedarsku interpolaciju.
[0066] 3D LUT se na primer dekodira iz VPS, SPS, PPS ili u jednoj SEI poruci kako je definisano u AVC, HEVC, SVC ili SHVC standardima za video kodiranje. Veličina LUT-a se takođe opciono dekodira iz protoka bitova. Na primer, 3D LUT se može dekodirati u SEI poruci kao što je ona definisana u nastavku.
[0067] Prema nekoj varijanti, n 3D LUT-ovi koje čine čvorovi sa 1 vrednošću boje su dekodirani umesto dekodiranja jednog 3D LUT koju čine čvorovi sa n vrednostima boja, npr. n=3. Prema jednoj varijanti, kada je veličina 3D LUT-a S=2, dekodira se zastavica koja signalizira dekoderu da izračuna 3x3 matricu pojačanja zajedno sa ofsetom iz dekodiranog 3D LUT-a i da je koristi kao CMF umesto 3D LUT-a.
[0068] Iste varijante otkrivene u smislu kodiranog postupka prema crtežima 4 i 6 mogu da se primenjuju na stranu dekodera.
[0069] Na crtežima 4, 6, 10 i 11, prikazana polja su čisto funkcionalne jedinice, koje ne moraju nužno odgovarati fizički odvojenim entitetima. Kao što će stručnjak iz oblasti razumeti, aspekti ovih aktuelnih principa mogu biti ostvareni kao sistem, postupak ili medijum čitljiv na računaru. Prema tome, aspekti ovih aktuelnih principa mogu zauzeti oblik potpuno hardverskog ostvarenja, potpuno softverskog ostvarenja (uključujući firmver, rezidentni softver, mikrokod, i tako dalje), ili ostvarenja koje kombinuju softverske i hardverske aspekte koji se uopšteno mogu nazivati "kola", "modul", ili "sistem" u ovom kontekstu. Nadalje, aspekti ovih aktuelnih principa mogu zauzeti oblik medijuma za skladištenje čitljivog na računaru. Može se koristiti bilo koja kombinacija jednog ili više medijuma čitljivih na računaru.
[0070] Dijagrami toka i/ili blok šeme na crtežima ilustruju konfiguraciju, rad i funkcionalnost mogućih primena sistema, postupaka i računarskih programa prema različitim načinima ostvarivanja ovog pronalaska. U tom smislu, svaki blok u dijagramu toka ili blok šemi može predstavljati modul, segment ili deo koda koji obuhvata jedno ili više uputstava koje mogu da se izvrše za primenu određene logičke funkcije. Treba takođe napomenuti da, u nekim alternativnim primenama, funkcije navedene u bloku mogu da se dešavaju van redosleda prikazanog na crtežima. Na primer, dva bloka prikazana jedan za drugim mogu zapravo da se izvršavaju suštinski istovremeno, ili se ti blokovi ponekad mogu izvršavati u obrnutom redosledu, ili u alternativnom redosledu, u zavisnosti od uključene funkcionalnosti. Takođe se može primetiti da svaki blok u blok šemama i/ili dijagramu toka, kao i kombinacije blokova u blok šemama i/ili dijagramu toka, mogu biti primenjeni pomoću sistema na bazi hardvera koji obavljaju navedene funkcije ili radnje, ili kombinacijom specijalizovanog hardvera i računarskih instrukcija. Iako nije eksplicitno opisano, trenutni načini ostvarivanja mogu da se primene u bilo kojoj kombinaciji ili podkombinaciji.
[0071] Protok bitova takođe otkriva kodiranje LUT-a, kao što je 3D LUT. Protok bitova proizveden postupkom kodiranja na crtežu kodira barem jedan LUT definisan kao mreža čvorova, gde je svakom čvoru mreže povezana barem jedna vrednost boje, pri čemu pomenuti protok bitova uključuje kodiran najmanje jedan ostatak izračunat između barem jedne vrednosti boje trenutnog čvora i njegove predikcije.
[0072] Predložen je primer načina ostvarivanja unutar okvira HEVC standarda kodiranja definisanog u dokumentu JCTVC-L1003 of Joint Collaborative Team on Video Coding (JCT-VC) iz ITU-T SG16 WP3 i ISO/IEC JTC1/SC29/WG11 ili SHVC standarda kodiranja koji predstavlja skalabilno proširenje HEVC standarda kodiranja definisanog u dokumentu JCTVC-L1008 of Joint Collaborative Team on Video Coding (JCT-VC) iz ITU-T SG16 WP3 i ISO/IEC JTC1/SC29/WG11. Standard definiše sintaksu sa kojom svaki protok kodiranih podataka mora da bude u saglasnosti kako bi bio kompatibilan sa ovim standardom. Sintaksa posebno definiše kako se kodiraju različite informacije (na primer, podaci koji se odnose na slike uključene u sekvencu, vektori kretanja, itd). U kontekstu SHVC standarda za kodiranje, LUT može biti kodiran u PPS ili VPS. Sintaksni element, use_color_prediction, se koristi da označi korišćenje predikcije boje u trenutnoj slici, kao što je prikazano u tabeli 1.
Tabela 1: Signaliziranje parametara predikcije
[0073] Ako je use_color_prediction zastavica jednaka '1', 3D_LUT_color_data funkcija se poziva da signalizira 3D LUT podatke kao što je prikazano u tabeli 2.
Tabela 2: Kodiranje podataka o bojama 3D LUT-a
[0074] nbpCode označava veličinu 3D LUT kako je navedeno u tabeli 4 za datu vrednost nbpCode. Vrednost kvantizatora može biti kodirana funkcijom 3D_LUT_color_data().
[0075] Prema nekoj varijanti, 3D_ LUT_ color_data ( ) je definisana u tabeli 3 u nastavku.
Tabela 3: kodiranje podataka o bojama 3D LUT-a
[0076] nbpCode označava veličinu 3D LUT kao što je navedeno u tabeli 4 za datu vrednost nbpCode. Vrednost kvantizatora može da se kodira funkcijom 3D_ LUT_ color_data(). NbitsPerSample označava neki broj bitova koji se koristi za predstavljanje vrednosti boja.
Tabela 4: Tumačenje nbpCode
[0077] Dekodiranje oktanta (sloj, y, u, v) je rekurzivna funkcija prikazana u tabeli 5. Svaki oktant se sastoji od 8 čvorova povezanih sa zastavicom (encoded_flag[i]) koja označava da li su vrednosti boja ostatka kodirane ili je za sve pretpostavka da su nula. Vrednosti boja se rekonstruišu dodavanjem ostataka predikciji vrednosti boja. Predikcija vrednosti boja se računa na primer trolinearnom interpolacijom 8 susednih čvorova layer_id-1.
Tabela 5: Elementi sintakse za coding_octant()
[0078] Prema drugom poželjnom načinu ostvarivanja, LUT je kodirana u SEI poruci (SEI označava "dodatne informacije o poboljšanju"). Standard HEVC definiše u svom dodatku D način na koji se dodatne informacije pod nazivom SEI kodiraju. Ove dodatne informacije se u sintaksi pozivaju na polje pod nazivom payloadType. SEI poruke pomažu, na primer, u procesima koji se odnose na prikaz. Treba napomenuti da ukoliko uređaj za dekodiranje ne poseduje funkcionalnosti neophodne za korišćenje ovih informacija, ove informacije se ignorišu. Prema konkretnom načinu ostvarivanja pronalaska, novi tip SEI poruke je definisan kako bi se kodirale dodatne informacije koje se odnose na 3D LUT. U tu svrhu, novu vrednost za polje payloadType definišemo među vrednostima koje do sada nisu korišćene (na primer, payloadType je jednak 24).
[0079] Sintaksa SEI podataka (tj. sei_payload) je proširena na sledeći način:
Tabela 6: SEI poruka mapiranja boja
1
[0080] Prema nekoj varijanti, SEI poruka dalje obuhvata pokazatelj color_interpolator_id, npr. nakon color_description_present_flag, čije vrednosti označavaju vrstu interpolacije kako je naznačeno u tabeli 7.
Tabela 7 : tip interpolacije
[0081] Ova SEI poruka pruža informacije koje omogućavaju ponovno mapiranje uzoraka boje izlaznih dekodiranih slika radi prilagođavanja određenim okruženjima prikaza. Postupak ponovnog mapiranja mapira kodirane vrednosti uzoraka u RGB prostoru boja na ciljne vrednosti uzoraka. Mapiranja se izražavaju ili u domenu lume ili RGB prostora boja, i trebalo bi ih primeniti na komponentu lume ili na svaku RGB komponentu koja se proizvodi konverzijom prostora boja dekodirane slike prema potrebi.
[0082] 3D_ LUT_ color_data ( ) je definisan u tabeli 2 ili 3.
[0083] Dekodirana 3D LUT se primenjuje na dekodirane slike koje pripadaju sloju identifikovanom na primer indeksom nuh_layer_id iz NAL Unit Header (videti odeljak 7.3.1.2 dokumenta HEVC standard kodiranja definisan u dokumentu JCTVC-L1003 iz Joint Collaborative Team on Video Coding (JCT-VC) iz ITU-T SG16 WP3 i ISO/IEC JTC1/SC29/WG11 SEI poruke.
color_map_id sadrži identifikacioni broj koji se može koristiti za identifikaciju svrhe modela mapiranja boja. Vrednosti color_map_id mogu se koristiti kako primena određuje. Color_map_id može se koristiti za podršku operaciji mapiranja boja koje su pogodne za različite scenarije prikaza. Na primer, različite vrednosti color_map_id mogu odgovarati različitim dubinama bitova prikaza. color_map_cancel_flag jednako 1 ukazuje da SEI poruka o informacijama o mapiranju boja poništava trajnost bilo koje prethodne SEI poruke o informacijama o mapiranju boja po izlaznom redosledu. Kada je color_map_cancel_flag jednako 0, to znači da će informacije o mapiranju boja biti navedene nakon toga..
color_map_repetition_period naznačava trajnost SEI poruke o informacijama o mapiranju boja i može odrediti interval brojanja redosleda slika u kojem treba da postoji još jedna SEI poruka o informacijama o mapiranju boja sa istom vrednošću color_map_id ili kraj kodiranog videa. color_map_repetition_period jednak 0 označava da informacije o mapiranju boja važe samo za trenutno dekodiranu sliku. color_map_repetition_period jednak 1 označava da informacije o mapiranju boja trajno važe u redosledu izlaza dok ne bude ispunjen neki od sledećih uslova:
1
- Počinje nova kodirana video sekvenca.
- Slika u pristupnoj jedinici koja sadrži SEI poruku sa informacijama o mapiranju boja sa istom vrednošću color_map_id je izlaz sa redosledom brojanja slika (POC) većim od POC trenutno dekodirane slike, što je označeno PicOrderCnt( CurrPic ).
color_map_repetition_period jednako 0 ili jednako 1 ukazuje da druga SEI poruka sa informacijama o mapiranju boja sa istom vrednošću color_map_id može ili ne mora biti prisutna. color_map_repetition_period veće od 1 označava da informacije o mapiranju boja traju dok ne bude ispunjen bilo koji od sledećih uslova:
- Počinje nova kodirana sekvenca.
- Slika u pristupnoj jedinici koja sadrži SEI poruku sa informacijama o mapiranju boja sa istom vrednošću color_map_id izlazi sa POC-om većim od PicOrderCnt(CurrPic) i manjim ili jednakim PicOrderCnt(CurrPic) color_map_repetition_period.
color_map_repetition_period veće od 1 označava da za sliku u pristupnoj jedinici koja je izlaz sa POC-om većim od PicOrderCnt(CurrPic) i manjim ili jednakim PicOrderCnt(CurrPic) color_map_repetition_period, treba da postoji još jedna SEI poruka sa informacijama o mapiranju boja sa istom vrednošću color_map_id; osim ako se protok bitova završi ili počne nova kodirana sekvenca bez izlaska takve slike
color_description_present_flag jednako 1 označava da su colour_primaries_input_id i colour_primaries_output_id prisutni. colour_description_present_flag jednako 0 označava da colour_primaries_input_id i colour_primaries_output_id nisu prisutni.
color_primaries_input_id označava hromatske koordinate izvornih primarnih boja kako je navedeno u tabeli 8, izražene u terminima CIE 1931 definicije x i y kako je naznačeno u ISO 11664-1.
color_primaries_output_id označava hromatične koordinate preslikanih primarnih boja kako je navedeno u tabeli 8, izražene u terminima CIE 1931 definicije x i y kako je naznačeno u ISO 11664-1, nakon primene 3D LUT (tabela za pretragu) za boje.
color_output_rgb jednako 1 označava da su izlazni uzorci boja luminozni i hromatski signali. color_output_rgb jednako 0 označava da su izlazni uzorci boja vrednosti zelene, crvene i plave boje. lut_bit_depth_minus8 označava dubinu bita 3D LUT uzoraka.
nbp_code označava veličinu 3D LUT nbp kao što je navedeno u tabeli 4 za datu vrednost nbp_code.
[0084] Izlaz dekodiranja 3D LUT-a je trodimenzionalni niz LUT veličine nbp x nbp x nbp. Svaki element niza LUT naziva se čvor i povezan je sa 3 rekonstruisane vrednosti uzoraka (recSamplesY, recSamplesU, recSamplesV) sa dubinom bitova jednako (lut_bit_depth_minus8+8). Za čvor lut[i][j][k] se kaže da pripada sloju layer_id ako su vrednosti i%(nbp>>layer_id), j%(nbp>>layer_id), k%(nbp>>layer_id) jednake nuli. Jedan čvor može pripadati više slojeva. Oktant sloja layer_id sastoji se od 8 susednih čvorova koji pripadaju layer_id (Fig.14).
1
[0085] Dekodiranje oktanta (layer_id, y, u, v) je rekurzivna funkcija. Svaki oktant se sastoji od 8 čvorova (i=0,...7), povezanih sa zastavicom (encoded_flag[i]) koja ukazuje da li su vrednosti komponenti ostataka (resY[i], resU[i], resV[i]) kodirane ili se za sve pretpostavlja nula. Vrednosti komponenti se rekonstruišu dodavanjem ostataka predikciji vrednosti komponenti. Predikcija vrednosti komponenti se računa korišćenjem trolinearne interpolacije 8 susednih čvorova sloja layer_id-1. Jednom kada je čvor rekonstruisan, označava se kao rekonstruisan.
[0086] Gde su (y+dy[i]), (u+du[i]) i (v+dv[i]) koordinate 8 oktanata potomaka (koordinate prvog 3D čvora boje) trenutnog oktanta (sa (y,u,v) kao koordinate prvog čvora (i=0)). Vrednosti dy[i], du[i] i dv[i] za dati sloj su prikazani u tabeli 9.
Tabela 8 : Primarne boje (color_primaries_input_id and color_primaries_output_id)
1
1 Tabela 9: vrednosti dy[i],du[i] i dv[i] u funkciji indeksa i, za čvorove koji pripadaju sloju = layer_id.
[0087] Rekonstruisani uzorci 3D boje LUT-a (recSamplesY[i], recSamplesU[i], recSamplesV[i]) za čvor ((y+dy[i]), (u+du[i]), (v+dv[i])) koji pripadaju oktantu sloja layer_id su dati sa:
pri čemu je vrednost predSampleY[i] izvedena pomoću trolinearne interpolacije sa čvorovima oktanta sloja = layer_id-1 koji sadrži trenutni oktant.
[0088] Fig.12 predstavlja primer arhitekture kodera 1. Koder je konfigurisan da izvršava faze postupka kodiranja. Koder 1 obuhvata sledeće elemente koji su povezani putem magistrale 6 podataka i adrese:
- mikroprocesor 61 (ili CPU), koji je, na primer, DSP (ili digitalni signalni procesor);
- ROM (ili memorija samo za čitanje) 62;
- RAM (ili radna memorija) 63;
- jedan ili nekoliko I/O (ulaz/izlaz) uređaja 65 kao što su na primer, tastatura, miš, veb kamera; i - izvor 66 napajanja.
[0089] Prema jednoj varijanti, izvor 66 napajanja je sa spoljašnje strane kodera. Svaki od ovih elemenata sa Fig.12 je dobro poznat stručnjacima iz oblasti i neće biti dalje objašnjen. U svakoj od pomenutih memorija, reč « registar » korišćena u specifikaciji označava u svakoj od pomenutih memorija i memoriju niske kapaciteta (nekim binarnim podacima) kao i memoriju velikog kapaciteta (koja omogućava da se cela programa skladišti ili svi ili deo podataka koji predstavljaju podatke izračunati ili koje treba prikazati). ROM 62 obuhvata program i parametre kodiranja (kao što su prag TH). Algoritam postupka kodiranja prema ovom pronalasku je smešten u ROM 62. Kada se uključi, CPU 61 prenosi program 620 u RAM i izvršava odgovarajuće instrukcije.
2
[0090] RAM 63 obuhvata, u registru, program koji izvršava CPU 61 i koji se učitava nakon uključivanja kodera 1, ulazni podaci u registru, kodirani podaci u različitim stanjima postupka kodiranja u registru i druge promenljive koje se koriste za kodiranje u registru.
[0091] Fig.13 predstavlja primer arhitekture dekodera 2. Dekoder je konfigurisan da izvršava faze postupka dekodiranja. Dekoder 2 obuhvata sledeće elemente koji su povezani zajedno preko magistrale 74 podataka i adrese:
- mikroprocesor 71 (ili CPU), koji je, na primer, DSP (ili digitalni signalni procesor);
- ROM (ili memorija samo za čitanje) 72;
- RAM (ili radna memorija) 73;
- I/O interfejs 75 za prijem podataka radi prenosa, iz aplikacije; i
- baterija 76.
[0092] Prema jednoj varijanti, baterija 76 je spoljašnji izvor napajanja za koder. Svaki od elemenata sa Fig.13 je dobro poznat stručnjacima iz ove oblasti i neće biti dalje otkrivan. U svakoj od pomenutih memorija, reč « registar » korišćena u specifikaciji može da se odnosi na oblast malog kapaciteta (neki bitovi) ili na veoma veliku oblast (na primer, ceo program ili veliku količinu primljenih ili dekodiranih podataka). ROM 72 sadrži barem jedan program i parametre dekodera. Algoritam postupka dekodiranja prema ovom pronalasku je smešten u ROM 72. Kada se uključi, CPU 71 učitava program 720 u RAM i izvršava odgovarajuće instrukcije.
[0093] RAM 73 obuhvata, u registru, program koji izvršava CPU 71 i koji se učitava nakon uključivanja dekodera 2, ulazne podatke u registru, dekodirane podatke u različitim stanjima postupka dekodiranja u registru, kao i druge promenljive koje se koriste za dekodiranje u registru.
[0094] Ovde opisane primene mogu da se primenjuju u, na primer, postupku ili procesu, aparatu, softverskom programu, protoku podataka, ili signalu. Čak i ako se razmatraju samo u kontekstu jednog oblika primene (na primer, razmatrajući ih samo kao postupak ili uređaj), primena funkcionalnosti koje se razmatraju može biti realizovana i u drugim oblicima (na primer, kao program). Uređaj može biti primenjen, na primer, u odgovarajućem hardveru, softveru i firmveru. Postupci se mogu primenjivati, na primer, u uređaju kao što je, na primer, procesor, što se odnosi na procesne uređaje uopšte, uključujući računare, mikroprocesore, integrisane kola ili programabilne logičke uređaje. Procesori takođe obuhvataju komunikacione uređaje, kao što su, na primer, računari, mobilni telefoni, prenosivi/džepni digitalni asistenti ("PDA") i drugi uređaji koji olakšavaju komunikaciju informacija između krajnjih korisnika.
[0095] Primene različitih procesa i funkcionalnosti opisanih ovde mogu biti realizovane u različitim uređajima ili aplikacijama, posebno uključujući, na primer, uređaje ili aplikacije. Primeri takvih uređaja uključuju koder, dekoder, post-procesor koji obrađuje izlaz iz dekodera, pre-procesor koji pruža ulaz koderu, video koder, video dekoder, video kodek, veb server, set-top boks, prenosni računar, lični računar, mobilni telefon, PDA i druge komunikacione uređaje. Kao što je jasno, uređaji mogu biti prenosivi i čak instalirani u pokretnom vozilu.
[0096] Dodatno, postupci mogu da se primene putem instrukcija koje izvršava procesor, a takve instrukcije (i/ili vrednosti podataka proizvedene primenom) mogu da se čuvaju na mediju koji može da očitava procesor kao što je, na primer, integrisano kolo, nosilac softvera ili drugi uređaj za čuvanje kao što su tvrdi disk, disketa ("CD"), optički disk (kao što je DVD, često nazvan digitalni univerzalni disk ili digitalni video disk), radna memorija (RAM) ili memorija samo za čitanje (ROM). Uputstva mogu činiti aplikacioni program koji je opipljivo realizovan na medijumu čitljivom na restoranu. Uputstva mog uda se primenjuju u hardveru, firmveru, softveru ili njihovoj kombinaciji. Uputstva se mogu naći, na primer, u operativnom sistemu, zasebnoj aplikaciji ili njihovoj kombinaciji. Procesor se može opisati kao uređaj konfigurisan za obavljanje procesa i kao uređaj koji uključuje medijum čitljiv na procesoru (kao što je uređaj za čuvanje) sa instrukcijama za obavljanje procesa. Dodatno, medijum čitljiv na procesoru može da čuva, pored ili umesto uputstava, vrednosti podataka proizvedenih implementacijom.
[0097] Kako će biti očigledno osobi stručnoj u ovoj oblasti, primene mogu proizvesti različite signale formatirane za prenos informacija koje se mogu, na primer, čuvati ili prenositi. Informacije mogu uključivati, na primer, uputstva za izvođenje postupka, ili podatke koji nastaju jednom od opisanih primena. Na primer, signal može biti formatiran da kao podatke nosi pravila za pisanje ili čitanje sintakse opisanog načina ostvarivanja, ili da kao podatke nosi stvarne vrednosti sintakse napisane od strane opisanog načina ostvarivanja. Takav signal može biti formatiran, na primer, kao elektromagnetni talas (koristeći deo radio-frekvencijskog spektra) ili kao signal baznog opsega. Formatiranje može uključivati, na primer, kodiranje protoka podataka i modulaciju nosača sa kodiranim protokom podataka.
Informacije koje signal nosi mogu biti, na primer, analogne ili digitalne informacije. Signal se može prenositi preko različitih žičanih ili bežičnih veza, kao što je poznato. Signal se takođe može čuvati na medijumu koji procesor može da očitava.
[0098] Opisano je nekoliko primena. Ipak važno je napomenuti da se mogu napraviti različite modifikacije. Na primer, elementi različitih primena mogu biti kombinovani, prilagođeni ili uklonjeni kako bi se stvorile alternativne primene. Pored toga, stručnjak će razumeti da se druge strukture i procesi mogu koristiti umesto onih koji su opisani, pri čemu će se postići približno iste funkcije, postupci i rezultati kao u otkrivenim primenama. Shodno tome su očekivane ove i druge varijante unutar opsega ove prijave. Konkretno, postupak za kodiranje LUT prema ovom pronalasku može se koristiti za kodiranje bilo koje vrste LUT, bez obzira na vrstu vrednosti koje su povezane sa svakim čvorom.

Claims (9)

Patentni zahtevi
1. Postupak za kodiranje 3-dimenzionalne tabele za pretraživanje boja definisane kao rešetka čvorova koja koristi oktalno stablo, pri čemu je svaki čvor povezan sa nekom vrednošću koja predstavlja transformaciju boje, koji obuhvata:
kodiranje podeljene zastavice za trenutni oktant pomenutog oktalnog stabla, koja pokazuje da li najmanje jedan od njegovih neposrednih oktanata potomaka treba da se rekurzivno kodira; predikciju najmanje jedne vrednosti čvora u pomenutom trenutnom oktantu iz rekonstrukcije najmanje jedne vrednosti najmanje jednog čvora u oktantu pretku, da bi se dobila predikcija; određivanje ostatka izračunatog između najmanje jedne vrednosti čvora i predikcije; kodiranje pomenutog ostatka; i
kodiranje neposrednih oktanata potomaka pomenutog trenutnog oktanta ako pomenuta podeljena zastavica pokazuje da najmanje jedan od njegovih neposrednih oktanata potomaka treba da se rekurzivno kodira;
pri čemu je pomenuta podeljena zastavica za trenutni oktant postavljena da ukaže da najmanje jedan od neposrednih oktanata potomaka treba da se rekurzivno kodira ako najmanje jedan čvor nekog neposrednog oktanta potomka, koji treba da se kodira, ima najmanje jedan ostatak koji je veći od praga.
2. Postupak prema zahtevu 1, pri čemu kodiranje pomenutog ostatka obuhvata:
kvantizaciju ostatka da bi se dobio kvantizovan ostatak; i
entropijsko kodiranje kvantizovanog ostatka.
3. Postupak prema zahtevu 1, koji dalje obuhvata kodiranje zastavice za pomenuti čvor koja pokazuje da li je ili nije najmanje jedan ostatak kodiran za pomenuti čvor.
4. Postupak za dekodiranje 3-dimenzionalne tabele za pretraživanje boja definisane kao rešetka čvorova koja koristi oktalno stablo, pri čemu je svaki čvor povezan sa nekom vrednošću koja predstavlja transformaciju boje, koji obuhvata:
dekodiranje podeljene zastavice za trenutni oktant pomenutog oktalnog stabla, koja pokazuje da li najmanje jedan od njegovih neposrednih oktanata potomaka treba da se rekurzivno dekodira;
predikciju najmanje jedne vrednosti čvora u pomenutom trenutnom oktantu iz rekonstrukcije najmanje jedne vrednosti najmanje jednog čvora u oktantu pretku, da bi se dobila predikcija; dekodiranje ostatka;
2
rekonstrukciju najmanje jedne vrednosti čvora u pomenutom trenutnom oktantu iz predikcije i ostatka; i
dekodiranje neposrednih oktanata potomaka pomenutog trenutnog oktanta ako pomenuta podeljena zastavica pokazuje da najmanje jedan od njegovih neposrednih oktanata potomaka treba da se rekurzivno dekodira;
pri čemu pomenuta podeljena zastavica za trenutni oktant pokazuje da najmanje jedan od neposrednih oktanata potomaka treba da se rekurzivno dekodira ako najmanje jedan čvor nekog neposrednog oktanta potomka, koji treba da se dekodira, ima najmanje jedan ostatak koji je veći od praga.
5. Postupak prema zahtevu 4, pri čemu dekodiranje pomenutog ostatka obuhvata:
entropijsko dekodiranje entropijski kodiranog kvantizovanog ostatka da bi se dobio kvantizovani ostatak; i
inverznu kvantizaciju kvantizovanog ostatka da bi se dobio ostatak.
6. Postupak prema zahtevu 4, koji dalje obuhvata dekodiranje zastavice za pomenuti čvor koja pokazuje da li je ili nije najmanje jedan ostatak dekodiran za pomenuti čvor.
7. Enkoder za kodiranje 3-dimenzionalne tabele za pretraživanje boja definisane kao rešetka čvorova koja koristi oktalno stablo, pri čemu je svaki čvor povezan sa nekom vrednošću koja predstavlja transformaciju boje, pri čemu pomenuti enkoder obuhvata interfejs za pristup pomenutoj 3-dimenzionalnoj tabeli za pretraživanje boja i najmanje jedan procesor konfigurisan za izvođenje postupka prema bilo kom od zahteva 1-3.
8. Dekoder za dekodiranje 3-dimenzionalne tabele za pretraživanje boja definisane kao rešetka čvorova koja koristi oktalno stablo, pri čemu pomenuti dekoder obuhvata interfejs za pristup protoku bitova i najmanje jedan procesor konfigurisan za izvođenje postupka prema bilo kom od zahteva 4-6.
9. Protok bitova dobijen postupkom prema bilo kom od zahteva 1-3.
RS20240783A 2013-04-08 2014-03-17 Postupak za kodiranje i postupak za dekodiranje lut-a i odgovarajući uređaji RS65827B1 (sr)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP13305453 2013-04-08
EP13306010 2013-07-15
EP14305109 2014-01-27
EP14712249.3A EP2984836B1 (en) 2013-04-08 2014-03-17 Method for encoding and method for decoding a lut and corresponding devices
PCT/EP2014/055333 WO2014166705A1 (en) 2013-04-08 2014-03-17 Method for encoding and method for decoding a lut and corresponding devices

Publications (1)

Publication Number Publication Date
RS65827B1 true RS65827B1 (sr) 2024-09-30

Family

ID=50349595

Family Applications (1)

Application Number Title Priority Date Filing Date
RS20240783A RS65827B1 (sr) 2013-04-08 2014-03-17 Postupak za kodiranje i postupak za dekodiranje lut-a i odgovarajući uređaji

Country Status (26)

Country Link
US (4) US10097857B2 (sr)
EP (2) EP2984836B1 (sr)
JP (4) JP6353896B2 (sr)
KR (5) KR102729537B1 (sr)
CN (4) CN109951714B (sr)
AU (4) AU2014253414B2 (sr)
BR (2) BR112015025623B1 (sr)
CA (1) CA2909006C (sr)
DK (1) DK2984836T3 (sr)
ES (1) ES2983458T3 (sr)
FI (1) FI2984836T3 (sr)
HR (1) HRP20240953T1 (sr)
HU (1) HUE067556T2 (sr)
IL (3) IL272813B (sr)
LT (1) LT2984836T (sr)
MX (2) MX359650B (sr)
MY (1) MY206027A (sr)
PH (2) PH12022550407A1 (sr)
PL (1) PL2984836T3 (sr)
RS (1) RS65827B1 (sr)
RU (1) RU2667723C2 (sr)
SG (2) SG10201803221XA (sr)
SI (1) SI2984836T1 (sr)
SM (1) SMT202400282T1 (sr)
WO (1) WO2014166705A1 (sr)
ZA (4) ZA201507365B (sr)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109951714B (zh) 2013-04-08 2022-11-11 杜比国际公司 对lut进行编码的方法和进行解码的方法以及对应的设备
TWI676389B (zh) 2013-07-15 2019-11-01 美商內數位Vc專利控股股份有限公司 至少一種色彩轉換之編碼方法和編碼器、解碼器、顯示裝置、編碼視訊訊號、電腦程式製品及處理器可讀式媒體
CN110033494A (zh) 2013-09-20 2019-07-19 Vid拓展公司 视频解码器设备和方法
US9912925B2 (en) 2013-12-13 2018-03-06 Vid Scale, Inc. Providing 3D look-up table (LUT) estimation for color gamut scalability
KR102024982B1 (ko) 2014-03-19 2019-09-24 애리스 엔터프라이지즈 엘엘씨 톤 맵핑 및 상이한 컬러 전역을 이용하는 비디오 시퀀스의 확장 가능 코딩
US10104385B2 (en) * 2014-04-17 2018-10-16 Qualcomm Incorporated Signaling reference layers for 3D color prediction for color gamut scalability
KR102284995B1 (ko) * 2014-06-19 2021-08-04 브이아이디 스케일, 인크. 3차원 기반 컬러 매핑에서의 모델 파라미터 최적화를 위한 시스템 및 방법
EP3010231A1 (en) 2014-10-17 2016-04-20 Thomson Licensing Method for color mapping a video signal based on color mapping data and method of encoding a video signal and color mapping data and corresponding devices
EP3131296A1 (en) * 2015-08-13 2017-02-15 Thomson Licensing Color remapping information payload size compression
WO2017059415A1 (en) * 2015-10-02 2017-04-06 Vid Scale, Inc. Color correction with a lookup table
US10424269B2 (en) 2016-12-22 2019-09-24 Ati Technologies Ulc Flexible addressing for a three dimensional (3-D) look up table (LUT) used for gamut mapping
US10395423B2 (en) * 2016-12-29 2019-08-27 Intel Corporation Apparatus and method for rendering adaptive mesh refinement (AMR) data
US10242647B2 (en) * 2017-02-24 2019-03-26 Ati Technologies Ulc Three dimensional (3-D) look up table (LUT) used for gamut mapping in floating point format
US10453171B2 (en) 2017-03-24 2019-10-22 Ati Technologies Ulc Multiple stage memory loading for a three-dimensional look up table used for gamut mapping
US11252401B2 (en) 2017-08-07 2022-02-15 Dolby Laboratories Licensing Corporation Optically communicating display metadata
WO2020123686A1 (en) * 2018-12-14 2020-06-18 Pcms Holdings, Inc. System and method for procedurally colorizing spatial data
CN111373758B (zh) * 2019-01-15 2023-05-12 深圳市大疆创新科技有限公司 三维数据点的编解码方法和装置
WO2020248144A1 (zh) * 2019-06-11 2020-12-17 深圳市大疆创新科技有限公司 三维数据点的编解码方法和装置
JP7546677B2 (ja) * 2020-01-06 2024-09-06 オッポ広東移動通信有限公司 イントラ予測方法、装置、エンコーダ、デコーダ及び記憶媒体
KR20230123984A (ko) 2020-12-23 2023-08-24 인터디지털 브이씨 홀딩스 프랑스 에스에이에스 교차 성분 스케일링을 갖는 루마 맵핑을 위한 방법 및 디바이스

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58160082A (ja) 1982-03-17 1983-09-22 アイダエンジニアリング株式会社 プレス加工素材の搬送装置
US4694404A (en) 1984-01-12 1987-09-15 Key Bank N.A. High-speed image generation of complex solid objects using octree encoding
JPH0326069Y2 (sr) 1986-09-29 1991-06-05
JPH087553B2 (ja) * 1988-10-27 1996-01-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 色画像量子化方法及び装置
US5031050A (en) 1990-02-26 1991-07-09 Hewlett-Packard Company Method and system for reproducing monochromatic and color images using ordered dither and error diffusion
JP2582999B2 (ja) 1992-07-22 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション カラーパレット発生方法、装置及びデータ処理システム並びにルックアップテーブル入力発生方法
US6002795A (en) * 1993-10-14 1999-12-14 Electronics For Imaging, Inc. Method and apparatus for transforming a source image to an output image
US5748176A (en) * 1995-07-20 1998-05-05 Hewlett-Packard Company Multi-variable colorimetric data access by iterative interpolation and subdivision
US5717507A (en) 1996-08-02 1998-02-10 Hewlett-Packard Company Apparatus for generating interpolator input data
US5953506A (en) * 1996-12-17 1999-09-14 Adaptive Media Technologies Method and apparatus that provides a scalable media delivery system
US6281903B1 (en) * 1998-12-04 2001-08-28 International Business Machines Corporation Methods and apparatus for embedding 2D image content into 3D models
US6483518B1 (en) * 1999-08-06 2002-11-19 Mitsubishi Electric Research Laboratories, Inc. Representing a color gamut with a hierarchical distance field
US6567081B1 (en) 2000-01-21 2003-05-20 Microsoft Corporation Methods and arrangements for compressing image-based rendering (IBR) data using alignment and 3D wavelet transform techniques
JP2003018602A (ja) 2001-04-24 2003-01-17 Monolith Co Ltd 画像データ符号化および復号のための方法および装置
US7265870B2 (en) 2001-11-26 2007-09-04 Agfa Graphics Nv Colour separation method
CA2413056C (en) * 2001-11-27 2009-02-10 Samsung Electronics Co., Ltd. Apparatus and method for depth image-based representation of 3-dimensional object
KR100446635B1 (ko) * 2001-11-27 2004-09-04 삼성전자주식회사 깊이 이미지 기반 3차원 객체 표현 장치 및 방법
EP1321893B1 (en) 2001-11-27 2011-11-09 Samsung Electronics Co., Ltd. Node structure for representing 3-dimensional objects using depth image
US7002571B2 (en) 2002-06-04 2006-02-21 Intel Corporation Grid-based loose octree for spatial partitioning
EP1431919B1 (en) 2002-12-05 2010-03-03 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding three-dimensional object data by using octrees
JP2004208128A (ja) 2002-12-26 2004-07-22 Fuji Xerox Co Ltd データ変換方法およびデータ変換装置
US7719563B2 (en) * 2003-12-11 2010-05-18 Angus Richards VTV system
EP1574996A3 (en) * 2004-03-08 2007-03-21 Samsung Electronics Co., Ltd. Adaptive 2n-ary tree generating method, and method and apparatus for encoding and decoding 3D volume data using it
KR100695142B1 (ko) 2004-03-08 2007-03-14 삼성전자주식회사 적응적 2의 n 제곱 진트리 생성방법 및 이를 이용한 3차원 체적 데이터 부호화/복호화 방법 및 장치
ATE484040T1 (de) * 2004-04-21 2010-10-15 Slipstream Data Inc Verfahren, system und softwareprodukt zur farbbildcodierung
US20060017720A1 (en) * 2004-07-15 2006-01-26 Li You F System and method for 3D measurement and surface reconstruction
DE102004049156B4 (de) * 2004-10-08 2006-07-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codierschema für einen ein zeitlich veränderliches Graphikmodell darstellenden Datenstrom
US20060268297A1 (en) * 2005-05-25 2006-11-30 Lexmark International, Inc. Method for constructing a lookup table for converting data from a first color space to a second color space
US7599439B2 (en) * 2005-06-24 2009-10-06 Silicon Image, Inc. Method and system for transmitting N-bit video data over a serial link
KR100763196B1 (ko) 2005-10-19 2007-10-04 삼성전자주식회사 어떤 계층의 플래그를 계층간의 연관성을 이용하여부호화하는 방법, 상기 부호화된 플래그를 복호화하는방법, 및 장치
US8405323B2 (en) * 2006-03-01 2013-03-26 Lancaster University Business Enterprises Limited Method and apparatus for signal presentation
WO2007116551A1 (ja) 2006-03-30 2007-10-18 Kabushiki Kaisha Toshiba 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法
US20070247647A1 (en) * 2006-04-21 2007-10-25 Daniel Pettigrew 3D lut techniques for color correcting images
DE102006061325B4 (de) 2006-12-22 2008-11-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren zur computergestützten Identifikation der von einem Richtstrahl durchschnittenen Kinderoktanten eines Elternoktants in einer Octree-Datenstruktur mittels Look-up-Tabellen
JP4996501B2 (ja) 2007-04-06 2012-08-08 キヤノン株式会社 多次元データの符号化装置及び復号装置並びにその制御方法
KR100927601B1 (ko) * 2007-04-19 2009-11-23 한국전자통신연구원 3차원 메쉬 정보의 부호화/복호화 방법 및 장치
EP2051527A1 (en) * 2007-10-15 2009-04-22 Thomson Licensing Enhancement layer residual prediction for bit depth scalability using hierarchical LUTs
KR100940283B1 (ko) 2008-01-31 2010-02-05 성균관대학교산학협력단 동일해상도의 옥트리 구조에서의 인접한 이웃셀의 주소검색방법
US8169434B2 (en) * 2008-09-29 2012-05-01 Microsoft Corporation Octree construction on graphics processing units
RU2502214C2 (ru) * 2008-09-30 2013-12-20 Панасоник Корпорэйшн Носитель записи, устройство воспроизведения, системная бис, способ воспроизведения, очки и устройство отображения для трехмерных изображений
US8233705B2 (en) * 2008-10-03 2012-07-31 Eastman Kodak Company Potential field-based gamut mapping
GB0823701D0 (en) * 2008-12-31 2009-02-04 Symbian Software Ltd Fast data entry
JP2010251940A (ja) 2009-04-14 2010-11-04 Seiko Epson Corp 画像処理装置、画像処理方法、およびプログラム
RU2447607C1 (ru) 2009-10-19 2012-04-10 Кэнон Кабусики Кайся Устройство обработки изображения, способ регулировки и машиночитаемый носитель
CN102823248B (zh) * 2010-04-08 2015-06-24 株式会社东芝 图像编码方法以及图像编码装置
JP5505154B2 (ja) * 2010-07-16 2014-05-28 ソニー株式会社 画像処理装置と画像処理方法
US9131033B2 (en) * 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
BR112013001354B1 (pt) * 2010-07-21 2022-03-29 Velos Media International Limited Método e dispositivo para codificação de imagem
US8467629B2 (en) * 2010-08-12 2013-06-18 High Technology Video, Inc. Methods and systems for automatic coloring of digital images
JP6081360B2 (ja) 2010-09-16 2017-02-15 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. 改善された画像の符号化及び/又は復号のための装置、方法並びに画像データ記憶媒体
US9008175B2 (en) 2010-10-01 2015-04-14 Qualcomm Incorporated Intra smoothing filter for video coding
CN102592293A (zh) 2011-01-07 2012-07-18 北京四维图新科技股份有限公司 一种真彩色图像的降色方法及装置
US9154799B2 (en) * 2011-04-07 2015-10-06 Google Inc. Encoding and decoding motion via image segmentation
JP5955378B2 (ja) * 2011-04-12 2016-07-20 トムソン ライセンシングThomson Licensing エンコード方法及びデコード方法
US8804816B2 (en) * 2011-08-30 2014-08-12 Microsoft Corporation Video encoding enhancements
EP3614670B1 (en) * 2011-12-15 2021-02-03 Tagivan Ii Llc Signaling of luminance-chrominance coded block flags (cbf) in video coding
CN109951714B (zh) * 2013-04-08 2022-11-11 杜比国际公司 对lut进行编码的方法和进行解码的方法以及对应的设备
US9367807B2 (en) * 2013-04-29 2016-06-14 Vulcan, Inc. Method and system that provides efficient index-based retrieval of rules
KR102233965B1 (ko) * 2013-07-01 2021-03-30 삼성전자주식회사 필터링을 수반한 비디오 부호화 및 복호화 방법 및 그 장치
CN110033494A (zh) * 2013-09-20 2019-07-19 Vid拓展公司 视频解码器设备和方法

Also Published As

Publication number Publication date
EP4254954A3 (en) 2023-10-18
SG11201507826TA (en) 2015-10-29
KR20150139586A (ko) 2015-12-11
PH12015502212A1 (en) 2016-02-01
WO2014166705A1 (en) 2014-10-16
CA2909006C (en) 2022-07-26
MY206027A (en) 2024-11-26
BR112015025623B1 (pt) 2023-02-07
MX2018012138A (es) 2020-11-06
CA2909006A1 (en) 2014-10-16
KR20220027279A (ko) 2022-03-07
ES2983458T3 (es) 2024-10-23
US20160057454A1 (en) 2016-02-25
CN105230019A (zh) 2016-01-06
ZA202109771B (en) 2024-06-26
AU2023201060B2 (en) 2025-02-20
EP4254954A2 (en) 2023-10-04
HK1220840A1 (en) 2017-05-12
JP2018157595A (ja) 2018-10-04
IL272813B (en) 2022-07-01
RU2015147556A (ru) 2017-05-16
AU2014253414A1 (en) 2015-11-26
KR102257783B1 (ko) 2021-05-28
KR102729537B1 (ko) 2024-11-14
CN109922345B (zh) 2022-11-01
JP7233501B2 (ja) 2023-03-06
PL2984836T3 (pl) 2024-08-19
FI2984836T3 (fi) 2024-07-30
BR112015025623A2 (pt) 2017-07-18
CN109951712B (zh) 2022-11-11
BR122020017670B1 (pt) 2023-01-24
US20200177917A1 (en) 2020-06-04
MX359650B (es) 2018-10-05
AU2021200241A1 (en) 2021-03-18
ZA201806464B (en) 2020-12-23
AU2021200241B2 (en) 2022-11-24
EP2984836B1 (en) 2024-06-12
KR102607327B1 (ko) 2023-11-29
US10694209B2 (en) 2020-06-23
IL241789B (en) 2019-07-31
IL267963A (en) 2019-09-26
CN109951714B (zh) 2022-11-11
CN109922345A (zh) 2019-06-21
JP6353896B2 (ja) 2018-07-04
SG10201803221XA (en) 2018-06-28
PH12015502212B1 (en) 2022-07-15
SI2984836T1 (sl) 2024-10-30
JP2016519512A (ja) 2016-06-30
HUE067556T2 (hu) 2024-10-28
AU2018247264A1 (en) 2018-11-01
JP6957664B2 (ja) 2021-11-02
RU2018131947A (ru) 2018-10-02
HRP20240953T1 (hr) 2024-10-25
KR20230006598A (ko) 2023-01-10
AU2018247264B2 (en) 2020-10-15
RU2667723C2 (ru) 2018-09-24
PH12022550407A1 (en) 2024-01-22
EP4254954C0 (en) 2026-02-18
KR20230165873A (ko) 2023-12-05
US20190007703A1 (en) 2019-01-03
ZA201507365B (en) 2018-12-19
SMT202400282T1 (it) 2024-09-16
HK1219826A1 (zh) 2017-04-13
JP2022003824A (ja) 2022-01-11
US12034971B2 (en) 2024-07-09
EP4254954B1 (en) 2026-02-18
LT2984836T (lt) 2024-09-25
ZA202106976B (en) 2024-01-31
RU2018131947A3 (sr) 2022-01-18
CN109951712A (zh) 2019-06-28
JP2020092455A (ja) 2020-06-11
AU2014253414B2 (en) 2018-07-19
EP2984836A1 (en) 2016-02-17
IL272813A (en) 2020-04-30
KR20210064395A (ko) 2021-06-02
US11153605B2 (en) 2021-10-19
CN109951714A (zh) 2019-06-28
DK2984836T3 (da) 2024-07-22
KR102481406B1 (ko) 2022-12-27
KR102366842B1 (ko) 2022-02-24
CN105230019B (zh) 2019-04-09
US10097857B2 (en) 2018-10-09
IL267963B (en) 2020-03-31
AU2023201060A1 (en) 2023-03-23
MX2015014074A (es) 2015-12-11
US20220007054A1 (en) 2022-01-06

Similar Documents

Publication Publication Date Title
RS65827B1 (sr) Postupak za kodiranje i postupak za dekodiranje lut-a i odgovarajući uređaji
RU2850325C2 (ru) Способ кодирования и способ декодирования lut и соответствующие устройства
RU2772897C2 (ru) Способ кодирования и способ декодирования lut и соответствующие устройства
HK1219826B (zh) 对lut进行编码的方法和进行解码的方法以及对应的设备
HK40006219A (en) Method for encoding and method for decoding a lut and corresponding devices
HK40006219B (en) Method for encoding and method for decoding a lut and corresponding devices
HK1220840B (en) Method for encoding and method for decoding a lut and corresponding devices
HK40008681B (en) Method for encoding and method for decoding a lut and corresponding devices
HK40008681A (en) Method for encoding and method for decoding a lut and corresponding devices
HK40004085B (en) Method for encoding and method for decoding a lut and corresponding devices
HK40004085A (en) Method for encoding and method for decoding a lut and corresponding devices