RS64353B1 - Signaliziranje identifikatora podslika kod video kodiranja - Google Patents
Signaliziranje identifikatora podslika kod video kodiranjaInfo
- Publication number
- RS64353B1 RS64353B1 RS20230522A RSP20230522A RS64353B1 RS 64353 B1 RS64353 B1 RS 64353B1 RS 20230522 A RS20230522 A RS 20230522A RS P20230522 A RSP20230522 A RS P20230522A RS 64353 B1 RS64353 B1 RS 64353B1
- Authority
- RS
- Serbia
- Prior art keywords
- image
- sub
- subimage
- identifier
- sps
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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 an image region, e.g. an object
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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 an image region, e.g. an object
- H04N19/174—Methods 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 an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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 an image region, e.g. an object
- H04N19/176—Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/184—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/188—Methods 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 video data packet, e.g. a network abstraction layer [NAL] unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/1883—Methods 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 relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/29—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding involving scalability at the object level, e.g. video object layer [VOL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/31—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
- Television Systems (AREA)
- Time-Division Multiplex Systems (AREA)
- Studio Circuits (AREA)
- Control Of El Displays (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
Opis
OBLAST TEHNIKE
[0001] Ovo otkrivanje se generalno odnosi na video kodiranje, a posebno se odnosi na upravljanje podslikom kod video kodiranja.
TEHNIČKI PROBLEM
[0002] Količina video podataka potrebnih za prikazivanje čak i relativno kratkog video zapisa može biti prilična, što može dovesti do poteškoća kada se podaci strimuju ili na drugi način prenose preko komunikacione mreže sa ograničenim kapacitetom propusnog opsega. Stoga se obično vrši kompresija video podataka pre nego što se prenose putem savremenih telekomunikacionih mreža. Veličina video zapisa takođe može biti problem kada se taj zapis skladišti na uređaju za skladištenje pošto memorijski resursi mogu biti ograničeni. Uređaji za kompresiju video zapisa često koriste softver i/ili hardver na izvoru da kodiraju video podatke pre prenosa ili skladištenja, čime smanjuju količinu podataka potrebnih za predstavljanje digitalnih video slika. Komprimovani podaci se zatim primaju na odredištu pomoću uređaja za dekompresiju video zapisa koji dekodira video podatke. Sa ograničenim mrežnim resursima i sve većim zahtevima za višim kvalitetom video zapisa, poboljšane tehnike kompresije i dekompresije koje poboljšavaju odnos kompresije uz malo ili nimalo žrtvovanja kvaliteta slike su poželjne.
[0003] ZHOU (TI) M: "AHG4: Enable parallel decoding with tiles", 9. JCT-VC MEETING; 100. MPEG MEETING; 27-4-2012 -7-5-2012; GENEVA; (JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/, (20120416), br. JCTVC-I0118, otkriva da je slika podeljena na više podslika jednake veličine; podslike su nezavisne, a identifikator podslike se signalizira u zaglavlju isečka za aplikacije sa malim kašnjenjem.
[0004] US 2014/003504 A1 otkriva poboljšani metod kodiranja/dekodiranja slika sloja za poboljšanje kako bi se omogućilo kodiranje područja unutar slike sloja za poboljšanje sa povećanim kvalitetom i sa visokom efikasnošću kodiranja, i uvodi se novi koncept podslike sloja za poboljšanje.
SUŠTINA PRONALASKA
[0005] Pronalazak je definisan u nezavisnim zahtevima. Dodatne karakteristike pronalaska su date u zavisnim patentnim zahtevima. U nastavku, delovi opisa i crteža koji se odnose na izvođenja koja nisu obuhvaćena patentnim zahtevima nisu predstavljeni kao izvođenja pronalaska, već kao primeri korisni za razumevanje pronalaska.
[0006] U jednom izvođenju, otkrivanje uključuje metod implementiran u dekoderu, gde metod obuhvata: prijem, putem prijemnika dekodera, toka bitova koji obuhvata skup parametara za sekvencu (SPS), jednu ili više podslika particionisanih iz slike, i jedno ili više zaglavlja isečka povezanih sa jednim ili više isečaka; analiziranje, putem procesora dekodera, skupa parametara za sekvencu da bi se dobili identifikatori podslike za jednu ili više podslika; analiziranje, putem procesora, zag lavlja isečaka da bi se dobio identifikator trenutne podslike povezan sa trenutnom podslikom, gde identifikator trenutne podslike ukazuje da su isečci uključeni u trenutnu podsliku iz jedne ili više podslika; dekodiranje, putem procesora, trenutne podslike na osnovu identifikatora trenutne podslike radi kreiranja video sekvence; i prosleđivanje, putem procesora, video sekvence za prikaz. Neki sistemi za video kodiranje signaliziraju pozicije podslike u odnosu na druge podslike. Ovo dovodi do problema ako se podslike izgube u tranzitu ili se prenose odvojeno u svrhu odvojene ekstrakcije. U ovom primeru, kompletan set identifikatora podslika se signalizira u skupu parametara za sekvencu. Nadalje, zaglavlja isečaka uključuju identifikator podslike koji ukazuje na podsliku koja sadrži isečke koji odgovaraju zaglavljima isečaka. Označavanjem svake podslike pomoću identifikatora, podslike se mogu pozicionirati i mogu im se odrediti veličine bez pozivanja na druge podslike. Ovo pak podržava ispravljanje grešaka, kao i aplikacije koje izdvajaju samo neke podslike i izbegavaju prenos drugih podslika. Kompletan spisak svih identifikatora podslike može se poslati u skupu parametara za sekvencu zajedno sa relevantnim informacijama o određivanju veličine. Svako zaglavlje isečka može da sadrži identifikator podslike koji ukazuje na podsliku koja sadrži odgovarajući isečak. Na taj način, podslike i odgovarajući isečci se mogu ekstrahovati i pozicionirati bez pozivanja na druge podslike. Stoga, identifikatori podslike podržavaju povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0007] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu skup parametara za sekvencu dalje obuhvata veličinu podslike za svaku podsliku koja je particionisana iz slike.
[0008] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu skup parametara za sekvencu dalje obuhvata lokaciju podslike za svaku podsliku koja je particionisana iz slike.
[0009] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu dekodiranje trenutne podslike uključuje: uparivanje isečaka sa trenutnom podslikom na osnovu identifikatora trenutne podslike; i pozicioniranje isečaka na osnovu veličine podslike i lokacije podslike za trenutnu podsliku.
[0010] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu lokacija podslike uključuje rastojanje pomeraja između gornjeg levog odbirka trenutne podslike i gornjeg levog odbirka slike.
[0011] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu veličina podslike uključuje visinu podslike u luma odbircima i širinu podslike u luma odbircima.
[0012] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu skup parametara za sekvencu dalje obuhvata indikaciju da su jedna ili više podslika podslike sa ograničenjem pokreta.
[0013] U jednom izvođenju, otkrivanje uključuje metod implementiran u koder, gde metod obuhvata: particionisanje, putem procesora kodera, slike na mnoštvo podslika; particionisanje, putem procesora, svake od mnoštva podslika na jedan ili više isečaka; kodiranje u tok bitova, putem procesora, skupa parametara za sekvencu koji obuhvata identifikatore podslika za mnoštvo podslika particionisanih iz slike; kodiranje u tok bitova, putem procesora, zaglavlja isečaka koja obuhvataju identifikatore podslika koji ukazuju da su isečci uključeni u naznačene podslike; kodiranje, putem procesora, jedne ili više od mnoštva podslika u tok bitova; i skladištenje, u memoriji kodera, toka bitova radi slanja prema dekoderu. Neki sistemi za video kodiranje signaliziraju pozicije podslike u odnosu na druge podslike. Ovo dovodi do problema ako se podslike izgube u tranzitu ili se prenose odvojeno u svrhu odvojene ekstrakcije. U ovom primeru, kompletan set identifikatora podslika se signalizira u skupu parametara za sekvencu. Nadalje, zaglavlja isečaka uključuju identifikator podslike koji ukazuje na podsliku koja sadrži isečke koji odgovaraju zaglavljima isečaka. Označavanjem svake podslike pomoću identifikatora, podslike se mogu pozicionirati i mogu im se odrediti veličine bez pozivanja na druge podslike. Ovo pak podržava ispravljanje grešaka, kao i aplikacije koje izdvajaju samo neke podslike i izbegavaju prenos drugih podslika. Kompletan spisak svih identifikatora podslike može se poslati u skupu parametara za sekvencu zajedno sa relevantnim informacijama o određivanju veličine. Svako zaglavlje isečka može da sadrži identifikator podslike koji ukazuje na podsliku koja sadrži odgovarajući isečak. Na taj način, podslike i odgovarajući isečci se mogu ekstrahovati i pozicionirati bez pozivanja na druge podslike. Stoga, identifikatori podslika podržavaju povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0014] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu skup parametara za sekvencu dalje obuhvata veličinu podslike za svaku od mnoštva podslika.
[0015] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu skup parametara za sekvencu dalje obuhvata lokaciju podslike za svaku od mnoštva podslika.
[0016] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu lokacija podslike uključuje rastojanje pomeraja između gornjeg levog odbirka odgovarajuće podslike i gornjeg levog odbirka slike.
[0017] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu veličina podslike uključuje visinu podslike u luma odbircima i širinu podslike u luma odbircima.
[0018] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu skup parametara za sekvencu dalje obuhvata indikaciju da su jedna ili više podslika podslike sa ograničenjem pokreta.
[0019] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu skup mnoštva podslika pokriva ukupnu površinu slike bez praznina i bez preklapanja.
[0020] U jednom izvođenju, otkrivanje uključuje uređaj za video kodiranje koji obuhvata: procesor, memoriju, prijemnik povezan sa procesorom i predajnik povezan sa procesorom, gde su procesor, memorija, prijemnik i predajnik konfigurisani da izvrši metod bilo kog od prethodnih aspekata.
[0021] U jednom izvođenju, otkrivanje uključuje ne-prolazni računarski čitljiv medijum koji obuhvata računarski programski proizvod za upotrebu od strane uređaja za video kodiranje, pri čemu računarski programski proizvod obuhvata računarski izvršne instrukcije uskladištene na ne-prolaznom računarski čitljivom medijumu takve da izvršene od strane procesora dovode do toga da uređaj za video kodiranje izvrši metod bilo kog od prethodnih aspekata.
[0022] U jednom izvođenju, otkrivanje uključuje dekoder koji obuhvata: prijemni element za prijem toka bitova koji obuhvata skup parametara za sekvencu (SPS), jednu ili više podslika particionisanih iz slike, i jedno ili više zaglavlja isečka povezanih sa jednim ili više isečaka; element za analiziranje, za: analiziranje skupa parametara za sekvencu da bi se dobili identifika tori podslike za jednu ili više podslika; i analiziranje zaglavlja isečaka da bi se dobio identifikator trenutne podslike povezan sa trenutnom podslikom, gde identifikator trenutne podslike ukazuje da su isečci uključeni u trenutnu podsliku iz jedne ili više podslika; element za dekodiranje, za dekodiranje trenutne podslike na osnovu identifikatora trenutne podslike radi kreiranja video sekvence; i element za prosleđivanje, za prosleđivanje video sekvence za prikaz.
[0023] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu je dekoder dalje konfigurisan da izvrši metod bilo kog od prethodnih aspekata.
[0024] U jednom izvođenju, otkrivanje uključuje koder koji obuhvata: element za particionisanje, za: particionisanje slike na mnoštvo podslika; i particionisanje svake od mnoštva podslika na jedan ili više isečaka; element za kodiranje, za: kodiranje u tok bitova skupa parametara za sekvencu koji obuhvata identifikatore podslika za mnoštvo podslika particionisanih iz slike; kodiranje u tok bitova zaglavlja isečaka koja obuhvataju identifikatore podslika koji ukazuju da su isečci uključeni u naznačene podslike; i kodiranje jedne ili više od mnoštva podslika u tok bitova; i element za skladištenje, za skladištenje toka bitova radi slanja prema dekoderu.
[0025] Opciono, u bilo kom od prethodnih aspekata, pruža se druga implementacija aspekta, pri čemu je koder dalje konfigurisan da izvrši metod bilo kog od prethodnih aspekata.
[0026] Jasnoće radi, bilo koje od prethodnih izvođenja može se kombinovati sa bilo kojim jednim ili više drugih prethodnih izvođenja da bi se stvorilo novo izvođenje unutar obuhvata ovog otkrivanja.
[0027] Ove i druge karakteristike će se jasnije razumeti iz sledećeg detaljnog opisa uzetog zajedno sa priloženim crtežima i zahtevima.
KRATAK OPIS CRTEŽA
[0028] Za potpunije razumevanje ovog otkrivanja, sada se upućuje na sledeći kratak opis, uzet zajedno sa priloženim crtežima i detaljnim opisom, gde isti referentni brojevi predstavljaju iste delove.
SLIKA 1 je dijagram toka primera metoda kodiranja video signala.
SLIKA 2 je šematski prikaz primera sistema za kodiranje i dekodiranje (kodek) za video kodiranje.
SLIKA 3 je šematski prikaz koji ilustruje primer video kodera.
SLIKA 4 je šematski prikaz koji ilustruje primer video dekodera.
SLIKA 5 je šematski prikaz koji ilustruje primer toka bitova i pod-toka bitova ekstrahovanog iz toka bitova.
SLIKA 6 je šematski prikaz koji ilustruje primer slike particionisane na podslike.
SLIKA 7 je šematski prikaz koji ilustruje primer mehanizma za povezivanje isečaka sa rasporedom podslika.
SLIKA 8 je šematski prikaz koji ilustruje drugi primer slike particionisane na podslike.
SLIKA 9 je šematski prikaz primera uređaja za video kodiranje.
SLIKA 10 je dijagram toka primera metoda kodiranja identifikatora podslika u toku bitova da bi se podržalo dekodiranje podslika.
SLIKA 11 je dijagram toka primera metoda dekodiranja toka bitova podslika na osnovu identifikatora podslika.
SLIKA 12 je šematski prikaz primera sistema za signaliziranje identifikatora podslika putem toka bitova.
DETALJAN OPIS
[0029] Treba razumeti na samom početku da iako je ilustrativna implementacija jednog ili više izvođenja data u nastavku, otkriveni sistemi i/ili metodi se mogu implementirati primenom brojnih tehnika, bilo da su trenutno poznate ili postojeće. Otkrivanje ni na koji način ne treba ograničiti na ilustrativne implementacije, crteže i tehnike prikazane u nastavku, uključujući primere dizajna i implementacija koji su ovde prikazani i opisani, već se može modifikovati u okviru obuhvata priloženih zahteva zajedno sa njihovim punim obimom ekvivalenata.
[0030] Ovde se koriste različiti akronimi, kao što su blok stabla kodiranja (CTB), jedinica stabla kodiranja (CTU), jedinica kodiranja (CU), kodirana video sekvenca (CVS), Zajednički tim eksperata za video (JVET), skup pločica sa ograničenjem pokreta (MCTS), maksimalna jedinica prenosa (MTU), sloj apstrakcije mreže (NAL), brojač redosleda slike (POC), sirova sekvenca bajtova (RBSP), skup parametara za sekvencu (SPS), svestrano video kodiranje (VVC) i radni nacrt (WD).
[0031] Mnoge tehnike video kompresije se mogu primeniti za smanjenje veličine video datoteka uz minimalan gubitak podataka. Na primer, tehnike video kompresije mogu uključivati vršenje prostorne odnosno intra predikcije (unutar slike) i/ili vremenske odnosno inter predikcije (između slika) da bi se redukovala ili ukinula redundantnost podataka u video sekvencama. Za video kodiranje zasnovano na blokovima, video isečak (npr. video slika ili deo video slike) može biti particionisan na video blokove, koji se mogu nazvati i blokovi stabla, blokovi stabla kodiranja (CTB), jedinice stabla kodiranja (CTU), jedinice kodiranja (CU) i/ili čvorove kodiranja. Video blokovi u intra kodiranom (I) isečku slike se kodiraju korišćenjem intra predikcije u odnosu na referentne odbirke u susednim blokovima u istoj slici. Video blokovi u inter kodiranom isečku slike sa unidirekcionom predikcijom (P) ili bidirekcionom predikcijom (B) mogu se kodirati korišćenjem intra predikcije u odnosu na referentne odbirke u susednim blokovima u istoj slici ili inter predikcije u odnosu na referentne odbirke u drugim referentnim slikama. Slike se mogu nazivati frejmovima i/ili slikama, a referentne slike se mogu nazvati referentnim frejmovima i/ili referentnim slikama. Intra ili inter predikcija za rezultat ima prediktovani blok koji predstavlja blok slike. Rezidualni podaci predstavljaju razliku u pikselima između originalnog bloka slike i prediktovanog bloka. Shodno tome, inter kodirani blok se kodira prema vektoru pokreta koji pokazuje na blok referentnih odbiraka koji formiraju prediktovani blok i rezidualnim informacijama koji ukazuju na razliku između kodiranog bloka i prediktovanog bloka. Intra kodirani blok se kodira prema režimu intra kodiranja i rezidualnim podacima. Za dalju kompresiju, rezidualni podaci se mogu transformisati iz domena piksela u domen transformacije. Ovo rezultira rezidualnim koeficijentima transformacije, koji se mogu kvantizovati. Kvantizovani koeficijenti transformacije mogu inicijalno biti raspoređeni u dvodimenzionalni niz. Kvantizovani koeficijenti transformacije mogu se skenirati da bi se proizveo jednodimenzionalni vektor koeficijenata transformacije. Entropijsko kodiranje se može primeniti da bi se postigla još veća kompresija. Takve tehnike video kompresije su detaljnije razmotrene u nastavku.
[0032] Da bi se osiguralo da se kodirani video može ispravno dekodirati, video se kodira i dekodira u skladu sa odgovarajućim standardima video kodiranja. Standardi video kodiranja obuhvataju standard H.261 Sektora za standardizaciju telekomunikacija Međunarodne unije za telekomunikacije (ITU-T), standard MPEG-1, Deo 2 Grupe stručnjaka za film Međunarodne organizacije za standardizaciju/Međunarodne elektrotehničke komisije (ISO/IEC), ITU-T H.262 ili ISO/IEC MPEG-2 Deo 2, ITU-T H.263, ISO/IEC MPEG-4 Deo 2, Napradno video kodiranje (AVC), takođe poznato i kao ITU-T H.264 ili ISO /IEC MPEG-4 Deo 10 i video kodiranje visoke efikasnosti (HEVC), takođe poznato i kao ITU-T H.265 ili MPEG-H Deo 2. AVC uključuje ekstenzije kao što su skalabilno video kodiranje (SVC), multiview video kodiranje (MVC) i multiview video kodiranje plus dubina (MVC+D), i trodimenzionalni (3D) AVC (3D-AVC). HEVC uključuje ekstenzije kao što su skalabilni HEVC (SHVC), multiview HEVC (MV-HEVC) i 3D HEVC (3D-HEVC). Zajednički tim eksperata za video (JVET) ITU-T-a i ISO/IEC-a započeo je razvoj standarda video kodiranja koji se naziva svestrano video kodiranje (VVC). VVC je uključeno u radni nacrt (WD), koji uključuje JVET-L1001-v9.
[0033] Da bi se kodirala video slika, slika se prvo particioniše, a particije se kodiraju u tok bitova. Dostupne su različite šeme za particionisanje slika. Na primer, slika se može particionisati na regularne isečke zavisne isečke, pločice i/ili u skladu sa tehnikom Wavefront Parallel Processing (WPP). Radi jednostavnosti, HEVC ograničava kodere tako da se samo regularni isečci, zavisni isečci, pločice, WPP i njihove kombinacije mogu koristiti prilikom particionisanja isečka na grupe CTB blokova za video kodiranje. Takvo particionisanje se može primeniti da podrži podudaranje veličine maksimalne jedinice prenosa (MTU), paralelnu obradu i redukovano kašnjenje s kraja na kraj. MTU označava maksimalnu količinu podataka koja se može preneti u jednom paketu. Ako je količina korisnih podataka u paketu veća od MTU, ta količina podataka se deli na dva paketa procesom koji se zove fragmentacija.
[0034] Regularni isečak, koji se takođe naziva jednostavno isečak, je particionisani deo slike koji se može rekonstruisati nezavisno od drugih regularnih isečaka unutar iste slike, bez obzira na neke međuzavisnosti usled operacija filtriranja u pet lji. Svaki regularni isečak je enkapsuliran u sopstvenu jedinicu sloja apstrakcije mreže (NAL jedinicu) za prenos. Dalje, predikcija unutar slike (predikcija unutar isečka, predviđanje podataka o pokretu, predviđanje režima kodiranja) i zavisnost entropijskog kodiranja preko granica isečaka mogu biti onemogućeni da bi se podržala nezavisna rekonstrukcija. Takva nezavisna rekonstrukcija podržava paralelizaciju. Na primer, paralelizacija zasnovana na regularnim isečcima koristi minimalnu međuprocesorsku ili međujezgarnu komunikaciju. Međutim, pošto je svaki regularni isečak nezavisan, svaki isečak je povezan sa posebnim zaglavljem isečka. Upotreba regularnih isečaka može izazvati priličan utrošak resursa kod kodiranja zbog cene po bitu za zaglavlja isečka za svaki isečak i zbog nedostatka predviđanja preko granica isečaka. Dalje, regularni isečci se mogu koristiti da podrže podudaranje za zahteve MTU u pogledu veličina. Konkretno, pošto je regularan isečak enkapsuliran u zasebnu NAL jedinicu i može se nezavisno kodirati, svaki regularni isečak treba da bude manji od MTU u šemama MTU kako bi se izbeglo razbijanje isečka na više paketa. Usled toga, cilj paralelizacije i cilj podudaranja veličine MTU mogu pos taviti kontradiktorne zahteve za raspored isečaka na slici.
[0035] Zavisni isečci su slični redovnim isečcima, ali imaju skraćena zaglavlja isečka i omogućavaju particionisanje granica bloka stabla slike bez narušavanja predviđanja unutar slike. Shodno tome, zavisni isečci dozvoljavaju da se regularni isečak fragmentira na više NAL jedinica, što obezbeđuje redukovano kašnjenje s kraja na kraj omogućavanjem da se deo regularnog isečka pošalje pre nego što se završi kodiranje celog regularnog isečka.
[0036] Pločica je particionisani deo slike kreiran horizontalnim i vertikalnim granicama koje stvaraju kolone i redove pločica. Pločice se mogu kodirati raster skenirajućim redosledom (s desna nalevo i odozgo nadole). Redosled skeniranja CTB blokova je lokalan unutar pločice. Shodno tome, CTB blokovi u prvoj pločici se kodiraju raster skenirajućim redosledom, pre nego što se pređe na CTB blokove u sledećoj pločici. Slično kao kod regularnih isečaka, pločice razbijaju zavisnosti predviđanja unutar slike, kao i zavisnosti entropijskog dekodiranja. Međutim, pločice možda neće biti uključene u pojedinačne NAL jedinice, pa se stoga pločice možda neće koristiti za podudaranje veličine MTU. Svaku pločicu može obraditi jedan procesor/jezgro, a međuprocesorska/međujezgarna komunikacija koja se koristi za predviđanje unutar slike između procesorskih jedinica koje dekodiraju susedne pločice može biti ograničena na prenošenje zajedničkog zaglavlja isečka (kada su susedne pločice u istom isečku) i vršenje deljenja rekonstruisanih odbiraka i metapodataka povezanih sa filtriranjem u petlji. Kada je više od jedne pločice uključeno u isečak, pomeraj bajtova ulazne tačke za svaku pločicu osim pomeraja prve ulazne tačke u isečku može se signalizirati u zaglavlju isečka. Za svaki isečak i pločicu treba da bude ispunjen najmanje jedan od sledećih uslova: 1) svi kodirani blokovi stabla u isečku pripadaju istoj pločici; i 2) svi kodirani blokovi stabla u pločici pripadaju istom isečku.
[0037] Kod WPP, slika se particioniše u pojedinačne redove CTB blokova. Entropijsko dekodiranje i mehanizmi predviđanja mogu koristiti podatke iz CTB blokova u drugim redovima. Paralelna obrada je omogućena kroz paralelno dekodiranje redova CTB blokova. Na primer, trenutni red se može dekodirati paralelno sa prethodnim redom. Međutim, dekodiranje trenutnog reda kasni u odnosu na proces dekodiranja prethodnih redova za dva CTB bloka. Ovo kašnjenje obezbeđuje da podaci koji se odnose na CTB blok iznad i CTB blok iznad i desno od trenutnog CTB bloka u trenutnom redu budu dostupni pre nego što se trenutni CTB blok kodira. Ovaj pristup izgleda kao talasni front (eng. „wavefront“) kada se prikaže grafički. Ovaj stepenasti start omogućava paralelizaciju sa do onoliko procesora/jezgara koliko slika sadrži redova CTB blokova. Pošto je predviđanje unutar slike između susednih redova blokova stabla unutar slike dozvoljeno, međuprocesorska/međujezgarna komunikacija koja omogućava predviđanje unutar slike može biti prilična. WPP particionisanje uzima u obzir veličine NAL jedinica. Stoga, WPP ne podržava podudaranje veličine MTU. Međutim, regularni isečci se mogu koristiti zajedno sa WPP, sa određenim utroškom resursa kod kodiranja, da bi se implementiralo podudaranje veličine MTU po želji.
[0038] Pločice mogu takođe uključivati skupove pločica sa ograničenjem pokreta. Skup pločica sa ograničenjem pokreta (MCTS) je skup pločica dizajniran tako da su povezani vektori pokreta ograničeni da ukazuju na lokacije punih odbiraka unutar MCTS skupa i na lokacije frakcionih odbiraka koje zahtevaju samo lokacije punih odbiraka unutar MCTS skupa za interpolaciju. Dalje, upotreba kandidata za vektor pokreta za inter predikciju vektora pokreta izvedenih iz blokova izvan MCTS skupa je zabranjena. Na ovaj način, svaki MCTS skup se može nezavisno dekodirati bez postojanja pločica koje nisu uključene u MCTS skup. Poruke sa dodatnim informacijama za unapredjenje (SEI poruke) o MCTS skupovima sa vremenskim ograničenjem pokreta mogu se koristiti da ukažu na postojanje MCTS skupova u toku bitova i da signaliziraju MCTS skupove. SEI poruka o MCTS skupovima pruža dodatne informacije koje se mogu koristiti u ekstrakciji podtoka bitova sa MCTS skupovima (navedenog kao deo semantike SEI poruke) radi generisanje usaglašenog (konformnog) toka bitova za MCTS skup. Informacije uključuju određeni broj skupova informacija za ekstrakciju, od kojih svaki definiše broj MCTS skupova i sadrži bajtove sirove sekvence bajtova (RBSP) zamenskih skupova parametara za video (VPS), skupova parametara za sekvencu (SPS) i skupova parametara za sliku (PPS) koji će se koristiti tokom procesa ekstrakcije podtoka bitova sa MCTS skupovima. Prilikom ekstrakcije podtoka bitova u skladu sa procesom ekstrakcije podtoka bitova sa MCTS skupovima, skupovi parametara (VPS, SPS i PPS) se mogu ponovo napisati ili zameniti, a zaglavlja isečaka se mogu ažurirati zato što jedan ili svi elementi sintakse koji se odnose na adresu isečka (uključujući first_slice_segment_in_pic_flag i slice_segment address) mogu koristiti različite vrednosti u ekstrahovanom podtoku bitova.
[0039] Slika takođe može biti particionisana na jednu ili više podslika. Podslika je pravougaoni skup grupa pločica/isečaka koji počinje grupom pločica čiji je element tile_group _address jednak nuli. Svaka podslika može da referencira zaseban skup parametara za sliku (PPS) i stoga može imati zasebno particionisanje pločica. Podslike se mogu tretirati kao slike u procesu dekodiranja. Referentne podslike za dekodiranje trenutne podslike se generišu ekstrahovanjem oblasti koja je kolocirana sa trenutnom podslikom iz referentnih slika u baferu za dekodirane slike. Ekstrahovana oblast se tretira kao dekodirana podslika. Inter predikcija se može vršiti između podslika iste veličine i na istoj lokaciji unutar slike. Grupa pločica, poznata i kao isečak, je niz povezanih pločica na slici ili podslici. Može se izvesti nekoliko stavki da bi se odredila lokac ija podslike na slici. Na primer, svaka trenutna podslika može biti pozicionirana na sledećoj nezauzetoj lokaciji u raster skenirajućem redosledu jedinice stabla kodiranja (CTU) unutar slike koja je dovoljno velika da sadrži trenutnu podsliku unutar granica slike.
[0040] Dalje, particionisanje slike može biti zasnovano na pločicama na nivou slike i pločicama na nivou sekvence. Pločice na nivou sekvence mogu uključivati funkcionalnost MCTS skupa i mogu se implementirati kao podslike. Na primer, pločica na nivou slike može biti definisana kao pravougaoni region blokova stabla kodiranja unutar određene kolone pločica i određenog reda pločica na slici. Pločica na nivou sekvence može se definisati kao skup pravougaonih regiona blokova stabla kodiranja uključenih u različite frejmove gde svaki pravougaoni region dalje obuhvata jednu ili više pločica na nivou slike i skup pravougaonih regiona blokova stabla kodiranja može se dekodirati nezavisno od bilo kojeg drugog skupa sličnih pravougaonih oblasti. Skup grupe pločica na nivou sekvence (STOPS) je grupa takvih pločica na nivou sekvence. STOPS može biti signaliziran u NAL jedinici koja ne pripada sloju kodiranja videa (ne-VCL NAL jedinica) sa pridruženim identifikatorom u zaglavlju NAL jedinice.
[0041] Prethodna šema particionisanja zasnovana na podslikama može biti povezana sa određenim problemima. Na primer, kada su podslike omogućene, particionisanje podslika na pločice može da se koristi za podržavanje paralelne obrade. Particionisanje podslike na pločice u svrhu paralelne obrade može da se menja od slike do slike (npr. za potrebe balansiranja opterećenja paralelne obrade), i stoga se može upravljati njime na nivou slike (npr. u skupu parametara za sliku). Međutim, particionisanje na podslike (podela slika na podslike) može da se koristi da za podržavanje regiona od interesa (ROI) i pristupa slici baziranog na podslikama. U tom slučaju, signaliziranje podslika ili MCTS u skupu parametara za sliku nije efikasno.
[0042] U drugom primeru, kada je bilo koja podslika unutar slike kodirana kao podslika sa vremenskim ograničenjem pokreta, sve podslike untar slike se mogu kodirati kao podslike sa vremenskim ograničenjem pokreta. Takvo particionisanje slika može biti ograničavajuće. Na primer, kodiranje podslike kao podslike sa vremenskim ograničenjem pokreta može smanjiti efikasnost kodiranja u zamenu za dodatnu funkcionalnost. Međutim, u aplikacijama zasnovanim na regionu od interesa, obično samo jedna ili nekoliko podslika koristi funkcionalnost zasnovanu na podslici sa vremenskim ograničenjem pokreta. Stoga, preostale podslike pate od smanjene efikasnosti kodiranja bez ikakve praktične koristi.
[0043] ] U drugom primeru, elementi sintakse za specificiranje veličine podslike mogu se specificirati u jedinicama veličine luma CTU. Shodno tome, i širina i visina podslike treba da budu celobrojni umnožak od CtbSizeY. Ovaj mehanizam specificiranja širine i visine podslike može dovesti do različitih problema. Na primer, particionisanje podslike je primenljivo samo na slike sa širinom i/ili visinom slike koje su celobrojni umnožak od CtbSizeY. Ovo čini particionisanje podslike nedostupnim za slike koje sadrže dimenzije koje nisu celobrojni umnošci od CTbSizeY. Kada bi se particionisanje podslike primenilo na širinu i/ili visinu slike gde ta dimenzija slike nije celobrojni umnožak od CtbSizeY, izvođenje širine podslike i/ili visine podslike u luma odbircima za krajnju desnu podsliku i krajnju donju podsliku bi bilo netačno. Takvo netačno izvođenje bi dovelo do pogrešnih rezultate u nekim alatima za kodiranje.
[0044] U drugom primeru, lokacija podslike na slici možda neće biti signalizirana. Umesto toga, lokacija se izvodi korišćenjem sledećeg pravila. Trenutna podslika je pozicionirana na sledećoj nezauzetoj lokaciji u raster skenirajućem redosledu jedinice stabla kodiranja (CTU) unutar slike koja je dovoljno velika da sadrži trenutnu podsliku unutar granica slike. Izvođenje lokac ija podslike na takav način može uzrokovati greške u nekim slučajevima. Na primer, ako se neka podslika izgubi u prenosu, tada se lokacije drugih podslika izvode pogrešno i dekodirani odbirci se postavljaju na pogrešne lokacije. Isti problem se javlja kada podslike stignu pogrešnim redosledom.
[0045] U drugom primeru, dekodiranje podslike može zahtevati ekstrakciju kolociranih podslika u referentnim slikama. Ovo može nametnuti dodatnu složenost i rezultirati opterećenjem u smislu korišćenja procesorskih i memorijskih resursa.
[0046] U drugom primeru, kada je podslika označena kao podslika sa vremenskim ograničenjem pokreta, filteri u petlji koji prelaze granicu podslike su onemogućeni. Ovo se dešava bez obzira na to da li su filteri u petlji koji prelaze granice pločica omogućeni. Takvo ograničenje može biti previše restriktivno i može dovesti do vizuelnih artefakata za video slike koje koriste više podslika.
[0047] U drugom primeru, odnos između SPS, STGPS, PPS i zaglavlja grupe pločica je sledeći. STGPS referencira SPS, PPS referencira STGPS, a zaglavlja grupe pločica/zaglavlja isečka referenciraju PPS. Međutim, STGPS i PPS bi trebalo da budu ortogonalni, a ne da PPS referencira STGPS. Prethodni aranžman takođe može da onemogući svim grupama pločica iste slike da referenciraju isti PPS.
[0048] U drugom primeru, svaki STOPS može da sadrži identifikatore za četiri strane podslike. Takvi identifikatori se koriste da identifikuju podslike koje dele istu granicu da bi se mogao definisati relativni prostorni odnos između njih. Međutim, takve informacije možda neće biti dovoljne za izvođenje informacija o poziciji i veličini za skup grupe pločica na nivou sekvence u nekim slučajevima. U drugim slučajevima, signaliziranje informacija o poziciji i veličini može biti redundantno.
[0049] U drugom primeru, identifikator STGPS može biti signaliziran u zaglavlju NAL jedinice VCL NAL jedinice koristeći osam bitova. Ovo može pomoći kod ekstrakcije podslika. Takvo signaliziranje može nepotrebno povećati dužinu zaglavlja NAL jedinice. Još jedan problem je da ako skupovi grupe pločica na nivou sekvence nisu ograničeni da bi se sprečila preklapanja, jedna grupa pločica može biti povezana sa više skupova grupe pločica na nivou sekvence.
[0050] Ovde su otkriveni različiti mehanizmi za rešavanje jednog ili više od gore navedenih problema. U prvom primeru, informacije o rasporedu za podslike su uključene u SPS umesto u PPS. Informacije o rasporedu za podslike uključuju lokaciju podslike i veličinu podslike. Lokacija podslike je pomeraj između gornjeg levog odbirka podslike i gornjeg levog odbirka slike. Veličina podslike je visina i širina podslike merene u luma odbircima. Kao što je gore navedeno, neki sistemi uključuju informacije o pločicama u PPS-u jer se pločice mogu menjati od slike do slike. Međutim, podslike se mogu koristiti za podržavanje ROI aplikacija i pristupu zasnovanog na podslikama. Ove funkcije se ne menjaju na bazi pojedinačne slike. Dalje, video sekvenca može uključivati jedan SPS (ili jedan po video segmentu) i može uključivati čak jedan PPS po slici. Postavljan je informacija o rasporedu za podslike u SPS osigurava da se raspored signalizira samo jednom za sekvencu/segment, umesto da se redundantno signalizira za svaki PPS. Shodno tome, signaliziranje rasporeda podslika u SPS skupu povećava efikasnost kodiranja i samim tim smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu. Takođe, kod nekih sistema informacije o podslikama izvodi dekoder. Signaliziranje informacija o podslikama smanjuje mogućnost greške u slučaju izgubljenih paketa i podržava dodatnu funkcionalnost u smislu ekstrakcije podslika. Shodno tome, signaliziranje rasporeda podslika u SPS skupu poboljšava funkcionalnost kodera i/ili dekodera.
[0051] U drugom primeru, širine podslika i visine podslika su ograničene da budu umnošci veličine CTU jedinice. Međutim, ova ograničenja se uklanjaju kada se podslika pozicionira na desnu ivicu slike odnosno na donju ivicu slike. Kao što je gore navedeno, neki video sistemi mogu ograničiti podslike tako da uključuju visine i širine koje su u umnošci veličine CTU jedinice. Ovo sprečava da podslike pravilno funkcionišu kod mnogih rasporeda slika. Dozvoljavanjem da donja i desna podslika uključuju visine odnosno širine koje nisu umnošci veličine CTU jedinice, podslike se mogu koristiti sa bilo kojom slikom bez izazivanja grešaka kod dekodiranja. Ovo rezultira povećanjem funkcionalnosti kodera i dekodera. Dalje, povećana funkcionalnost omogućava koderu da efikasnije kodira slike, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0052] U trećem primeru, podslike su ograničene da pokriju sliku bez praznina ili preklapanja. Kao što je gore navedeno, neki sistemi video kodiranja dozvoljavaju da podslike uključuju praznine i preklapanja. Ovo stvara potencijal da grupe pločica/isečci budu povezani sa više podslika. Ako je to dozvoljeno kod kodera, dekoderi moraju biti napravljeni da podržavaju takvu šemu kodiranja čak i kada se ta šema dekodiranja retko koristi. Onemogućavanjem praznina i preklapanja kod podslika, složenost dekodera se može smanjiti jer dekoder ne mora da uzima u obzir potencijalne praznine i preklapanja prilikom određivanja veličina i lokacija podslika. Dalje, onemogućavanje praznina i preklapanja kod podslika smanjuje složenost procesa ratedistortion optimizacije (RDO) kod kodera jer koder može da izostavi razmatranje slučajeva praznina i preklapanja kada bira kodiranje za video sekvencu. Shodno tome, izbegavanje praznina i preklapanja može smanjiti upotrebu memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0053] U četvrtom primeru, može se signalizirati zastavica u SPS skupu da ukaže kada je podslika podslika sa vremenskim ograničenjem pokreta. Kao što je gore navedeno, neki sistemi mogu kolektivno da postave sve podslike da budu podslika sa vremenskim ograničenjem pokreta ili da potpuno zabrane upotrebu podslika sa vremenskim ograničenjem pokreta. Takve podslika sa vremenskim ograničenjem pokreta obezbeđuju funkcionalnost nezavisne ekstrakcije po cenu smanjene efikasnosti kodiranja. Međutim, u aplikacijama zasnovanim na regionu od interesa, region od interesa treba da bude kodiran za nezavisnu ekstrakciju, dok regionima izvan regiona od interesa nije potrebna takva funkcionalnost. Stoga, preostale podslike pate od smanjene efikasnosti kodiranja bez ikakve praktične koristi. Shodno tome, zastavica dozvoljava mešavinu podslika sa vremenskim ograničenjem pokreta koje obezbeđuju funkcionalnost nezavisne ekstrakcije i podslike podslika bez vremenskog ograničenja pokreta radi povećane efikasnosti kodiranja kada nezavisna ekstrakcija nije poželjna. Stoga, zastavica omogućava povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu kod kodera i dekodera.
[0054] U petom primeru, kompletan skup identifikatora podslika se signalizira u SPS skupu, a zaglavlja isečaka uključuju identifikator podslike koji ukazuje na podsliku koja sadrži odgovarajuće isečke. Kao što je gore navedeno, neki sistemi signaliziraju pozicije podslike u odnosu na druge podslike. Ovo dovodi do problema ako se podslike izgube ili se odvojeno ekstrahuju. Označavanjem svake podslike pomoću identifikatora, podslike se mogu pozicionirati i mogu im se odrediti veličine bez pozivanja na druge podslike. Ovo pak podržava ispravljanje grešaka, kao i aplikacije koje izdvajaju samo neke podslike i izbegavaju prenos drugih podslika. Kompletan spisak svih identifikatora podslike može se poslati u skupu parametara za sekvencu zajedno sa relevantnim informacijama o određivanju veličine. Svako zaglavlje isečka može da sadrži identifikator podslike koji ukazuje na podsliku koja sadrži odgovarajući isečak. Na taj način, podslike i odgovarajući isečci se mogu ekstrahovati i pozicionirati bez pozivanja na druge podslike. Stoga, identifikatori podslika podržavaju povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0055] U šestom primeru, nivoi se signaliziraju za svaku podsliku. U nekim sistemima video kodiranja nivoi se signaliziraju za slike. Nivo označava hardverske resurse potrebne za dekodiranje slike. Kao što je gore navedeno, različite podslike mogu imati različite funkcionalnosti u nekim slučajevima i stoga se mogu različito tretirati tokom procesa kodiranja. U tom smislu , nivo zasnovan na slici možda neće biti koristan za dekodiranje nekih podslika. Stoga, ovo otkrivanje uključuje nivoe za svaku podsliku. Na taj način, svaka podslika se može kodirati nezavisno od drugih podslika bez nepotrebnog preopterećenja dekodera postavljanjem previsokih zahteva za dekodiranje za podslike koje su kodirane prema manje složenim mehanizmima. Signalizirane informacije na nivou podslike podržavaju povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0056] SLIKA 1 je dijagram toka primera operativnog metoda 100 kodiranja video signala. Konkretno, video signal se kodira u koderu. Proces kodiranja vrši kompresiju video signal upotrebom različitih mehanizama za smanjenje veličine video datoteke. Manja veličina datoteke omogućava da se komprimovana video datoteka prenese ka korisniku, uz smanjenje pridruženog utroška propusnog opsega. Dekoder zatim dekodira komprimovanu video datoteku da bi rekonstruisao originalni video signal za prikaz krajnjem korisniku. Proces dekodiranja generalno odražava proces kodiranja kao u ogledalu kako bi omogućio dekoderu da dosledno rekonstruiše video signal.
[0057] U koraku 101, video signal se unosi u koder. Na primer, video signal može biti nekomprimovana video datoteka sačuvana u memoriji. Kao drugi primer, video datoteka može biti snimljena uređajem za snimanje video zapisa, kao što je video kamera, i kodirana da podrži striming video zapisa uživo. Video datoteka može da sadrži i audio komponentu i video komponentu. Video komponenta sadrži niz frejmova slika koji, kada se gledaju u sekvenci, daju vizuelni utisak pokreta. Frejmovi sadrže piksele koji su izraženi kroz osvetljenje, koji se ovde nazivaju luma komponente (ili luma odbirci), i boju, koji se nazivaju hroma komponente (ili hroma odbirci). U nekim primerima, frejmovi mogu takođe da sadrže vrednosti za dubinu da bi podržali trodimenzionalno gledanje.
[0058] U koraku 103, video zapis se particioniše u blokove. Particionisanje uključu je podelu piksela u svakom frejmu na kvadratne i/ili pravougaone blokove radi kompresije. Na primer, kod visokoefikasnog video kodiranja (HEVC) (takođe poznatom kao H.265 i MPEG-H Deo 2) frejm se prvo može podeliti na jedinice stabla kodiranja (CTU), koje su blokovi unapred definisane veličine (npr.64 x 64 piksela). CTU jedinice sadrže i luma i hroma odbirke. Mogu se primeniti stabla kodiranja za podelu CTU jedinica na blokove, a zatim rekurzivnu dalju podelu blokova dok se ne postignu konfiguracije koje podržavaju dalje kodiranje. Na primer, luma komponente frejma se mogu deliti sve dok pojedinačni blokovi ne sadrže relativno homogene vrednosti osvetljenja. Dalje, hrom komponente frejma se mogu deliti sve dok pojedinačni blokovi ne sadrže relativno homogene vrednosti boje. Shodno tome, mehanizmi particionisanja variraju u zavisnosti od sadržaja video frejmova.
[0059] U koraku 105, koriste se različiti mehanizmi kompresije za komprimovanje blokova slika particionisanih u koraku 103. Na primer, može se koristiti inter predikcija i/ili intra predikcija. Inter predikcija je dizajnirana da iskoristi činjenicu da se predmeti u zajedničkoj sceni obično pojavljuju u uzastopnim frejmovima. Shodno tome, blok koji prikazuje neki predmet u referentnom frejmu ne mora ponovo da se opisuje u susednim frejmovima. Konkretno, predmet, kao što je sto, može ostati u konstantnom položaju kroz više frejmova. Stoga se sto opiše jednom i susedni frejmovi mogu da se pozovu nazad na referentni frejm. Mogu se koristiti mehanizmi za uparivanje obrazaca za uparivanje predmeta u više frejmova. Dalje, pokretni predmeti mogu biti prikazani u više frejmova, na primer zbog kretanja predmeta ili kretanja kamere. Kao konkretan primer, video može prikazivati automobil koji se kreće preko ekrana u više frejmova. Mogu se koristiti vektori pokreta za opisivanje takvog kretanja. Vektor pokreta je dvodimenzionalni vektor koji pokazuje pomeraj od koordinata objekta u frejmu do koordinata objekta u referentnom frejmu. U tom smislu, inter predikcija može da kodira blok slike u trenutnom frejmu kao skup vektora pokreta koji ukazuju na pomeraj od odgovarajućeg bloka u referentnom frejmu.
[0060] Intra predikcija kodira blokove u zajedničkom okviru. Intra predikcija koristi činjenicu da luma i hroma komponen te imaju tendenciju da se grupišu u frejmu. Na primer, komadić zelene boje jednom segmentu drveta ima tendenciju da bude pozicioniran pored sličnih komadića zelene boje. Intra predikcija koristi višestruke režime direkcione predikcije (npr. trideset tri u HEVC), planarni režim i režim jednosmerne struje (DC). Direkcioni režimi pokazuju da je trenutni blok sličan/isti kao odbirci susednog bloka u odgovarajućem pravcu. Planarni režim ukazuje da se niz blokova duž reda/kolone (npr. u ravni) može interpolirati na osnovu susednih blokova na ivicama reda. Planarni režim, u suštini, ukazuje na glatku tranziciju svetlosti/boje preko reda/kolone koristeći relativno konstantan nagib kod promene vrednosti. DC režim se koristi za izravnavanje granica i ukazuje da je blok sličan/isti kao prosečna vrednost povezana sa odbircima svih susednih blokova povezanih sa ugaonim pravcima režima direkcione predikcije. Shodno tome, blokovi intra predikcije mogu predstaviti blokove slika kao različite vrednosti režima relacionog predviđanja umesto stvarnih vrednosti. Dalje, blokovi inter predikcije mogu predstavljati blokove slika kao vrednosti vektora pokreta umesto stvarnih vrednosti. U oba slučaja, blokovi predikcije možda neće potpuno tačno predstavljati blokove slika u nekim slučajevima. Sve razlike se čuvaju u rezidualnim blokovima. Na rezidualne blokove se mogu primeniti transformacije radi daljeg komprimovanja datoteke.
[0061] U koraku 107, mogu se primeniti različite tehnike filtriranja. U HEVC, filteri se primenjuju prema šemi filtriranja u petlji. Gore razmotrena predikcija zasnovana na blokovima može rezultirati stvaranjem slika sa blokovskim ostacima u dekoderu. Dalje, šema predikcije zasnovane na blokovima može kodirati blok a zatim rekonstruisati kodirani blok da bi se kasnije koristio kao referentni blok. Šema filtriranja u petlji iterativno primenjuje filtere za suzbijanje šuma, filtere za uklanjanje blokovskih ostataka, filtere adaptivne petlje i filtere adaptivnog pomeranja odbiraka (SAO) na blokove/frejmove. Ovi filteri umanjuju takve artefakte blokovskih ostataka tako da se kodirana datoteka može ispravno rekonstruisati. Dalje, ovi filteri umanjuju artefakte u rekonstruisanim referentnim blokovima tako da je manja verovatnoća da će artefakti stvarati dodatne artefakte u narednim blokovima koji se kodiraju na osnovu rekonstruisanih referentnih blokova.
[0062] Jednom kada je video signal particionisan, komprimovan i filtriran, rezultujući podaci se kodiraju u tok bitova u koraku 109. Tok bitova uključuje gore razmotrene podatke kao i sve signalne podatke koji su poželjni da podrže ispravnu rekonstrukciju video signala u dekoderu. Na primer, takvi podaci mogu uključivati podatke o particijama, podatke o predikciji, rezidualne blokove i različite zastavice koje daju uputstva za kodiranje dekoderu. Tok bitova može biti sačuvan u memoriji za prenos ka dekoderu na zahtev. Tok bitova se takođe može emitovati i/ili usmeravati na više adresa prema mnoštvu dekodera. Kreiranje toka bitova je iterativni proces. Shodno tome, koraci 101, 103, 105, 107 i 109 se mogu odvijati kontinuirano i/ili istovremeno u mnogim frejmovima i blokovima. Redosled prikazan na slici 1 je prikazan radi jasnoće i lakše diskusije i nema za cilj da ograniči proces video kodiranja na jedan određeni redosled.
[0063] Dekoder prima tok bitova i počinje proces dekodiranja u koraku 111. Konkretno, dekoder koristi šemu entropijskog dekodiranja da konvertuje tok bitova u odgovarajuću sintaksu i video podatke. Dekoder koristi sintaksne podatke iz toka bitova da odredi particije za frejmove u koraku 111. Particionisanje treba da odgovara rezultatima particionisanja blokova u koraku 103. Sada se opisuje entropijsko kodiranje/dekodiranje kakvo se koristi u koraku 111. Koder pravi mnoge izbore tokom procesa kompresije, kao što je odabir šema za particionisanje blokova od nekoliko mogućih izbora na osnovu prostornog pozicioniranja vrednosti na ulaznoj slici/slikama. Signaliziranje tačnih izbora može koristiti veliki broj binova. Kako se ovde koristi, bin je binarna vrednost koja se tretira kao promenljiva (npr. vrednost bita koja može da varira u zavisnosti od konteksta). Entropijsko kodiranje omogućava koderu da odbaci sve opcije koje očigledno nisu održive za konkretan slučaj, ostavljajući skup dozvoljenih opcija. Svakoj dozvoljenoj opciji se tada dodeljuje kodna reč. Dužina kodnih reči je zasnovana na broju dozvoljenih opcija (npr, jedan bin za dve opcije, dva bina za tri do četiri opcije, itd.). Koder zatim kodira kodnu reč za odabranu opciju. Ova šema smanjuje veličinu kodnih reči pošto su kodne reči onoliko velike koliko se želi da bi jedinstveno označile odabrano iz malog podskupa dozvoljenih opcija za razliku od jedinstvenog označavanja odabranog iz potencijalno velikog skupa svih mogućih opcija. Dekoder zatim dekodira odabrano određivanjem skupa dozvoljenih opcija na sličan način kao koder. Određivanjem skupa dozvoljenih opcija, dekoder može pročitati kodnu reč i odrediti odabir koji je načinio koder.
[0064] U koraku 113, dekoder vrši dekodiranje blokova. Konkretno, dekoder primenjuje obrnute transformacije da generiše rezidualne blokove. Zatim dekoder primenjuje rezidualne blokove i odgovarajuće blokove predikcije da rekonstruiše blokove slika u skladu sa particionisanjem. Blokovi predikcije mogu uključivati i blokove intra predikcije i blokove inter predikcije generisane u koderu u koraku 105. Rekonstruisani blokovi slika se zatim pozicioniraju u frejmove rekonstruisanog video signala u skladu sa podacima o particionisanju utvrđenim u koraku 111. Sintaksa za korak 113 se takođe može signalizirati u toku bitova putem entropijskog kodiranja kako je gore razmotreno.
[0065] U koraku 115, vrši se filtriranje na frejmovima rekonstruisanog video signala na način sličan koraku 107 u koderu. Na primer, filteri za suzbijanje šuma, filteri za uklanjanje blokovskih ostataka, filteri adaptivne petlje i SAO filteri se mogu primeniti na frejmove da bi se uklonili artefakti blokovskih ostataka. Kada se frejmovi filtriraju, video signal se može emitovati na ekran u koraku 117 radi gledanja od strane krajnjeg korisnika.
[0066] SLIKA 2 je šematski prikaz primera sistema za kodiranje i dekodiranje (kodek) 200 za video kodiranje. Konkretno, kodek sistem 200 obezbeđuje funkcionalnost za podržavanje implementacije operativnog metoda 100. Kodek sistem 200 je generalizovan da prikazuje komponente koje se koriste i u koderu i u dekoderu. Kodek sistem 200 prima i particioniše video signal kao što je razmotreno u vezi sa koracima 101 i 103 u operativnom metodu 100, što za rezultat ima particionisani video signal 201. Kodek sistem 200 zatim vrši kompresiju particionisanog video signal 201 u kodirani tok bitova kada deluje kao koder kao što je razmotreno u vezi sa koracima 105, 107 i 109 u metodu 100. Kada deluje kao dekoder, kodek sistem 200 generiše izlazni video signal iz toka bitova kao što je razmotreno u vezi sa koracima 111, 113, 115 i 117 u operativnom metodu 100. Kodek sistem 200 uključuje opštu kontrolnu komponentu kodera 211, komponentu za transformaciju, skaliranje i kvantizaciju 213, komponentu za procenu unutar slike 215, komponentu za predviđanje unutar slike 217, komponentu za kompenzaciju pokreta 219, komponentu za procenu pokreta 221, komponentu za skaliranje i inverznu transformaciju 229, komponentu za analizu radi kontrole filtera 227, komponentu filtera u petlji 225, komponentu bafera za dekodirane slike 223 i komponentu za formatiranje zaglavlja i kontekstno adaptivno binarno aritmetičko kodiranje (CABAC) 231. Te komponente su povezane kao što je prikazano. Na slici 2, crne linije označavaju kretanje podataka koji treba da se kodiraju/dekodiraju, dok isprekidane linije označavaju kretanje kontrolnih podataka koji kontrolišu rad drugih komponenti. Sve komponente kodek sistema 200 mogu biti prisutne u koderu. Dekoder može uključivati podskup komponenti kodek sistema 200. Na primer, dekoder može uključivati komponentu za predviđanje unutar slike 217, komponentu za kompenzaciju pokreta 219, komponentu za skaliranje i inverznu transformaciju 229, komponentu filtera u petlji 225 i komponentu bafera za dekodirane slike 223. Sada se opisuju ove komponente.
[0067] Particionisani video signal 201 je snimljena video sekvenca koja je podeljena na blokove piksela pomoću stabla kodiranja. Stablo kodiranja koristi različite režime podele da bi podelilo blok piksela na manje blokove piksela. Ovi blokovi se zatim mogu dalje deliti na još manje blokove. Blokovi se mogu nazvati čvorovima na stablu kod iranja. Veći nadređeni čvorovi se dele na manje podređene čvorove. Broj puta koliko se čvor dalje deli naziva se dubinom čvora/stabla kodiranja. Podijeljeni blokovi mogu u nekim slučajevima biti uključeni u jedinice kodiranja (CU). Na primer, CU jedinica može biti pod-deo CTU jedinice koja sadrži luma blok, hroma blok/blokove razlike crvene boje (Cr) i hroma blok/blokove razlike plave boje (Cb) zajedno sa odgovarajućim sintaktičkim uputstvima za CU jedinicu. Režimi podele mogu uključivati binarno stablo (BT), trostruko stablo (TT) i četvorostruko stablo odnosno „quadtree“ (QT) koji se koriste za particionisanje čvora na dva, tri odnosno četiri podređena čvora, različitih oblika u zavisnosti od primenjenog režima podele. Particionisani video signal 201 se prosleđuje do opšte kontrolne komponente kodera 211, komponente za transformaciju, skaliranje i kvantizaciju 213, komponente za procenu unutar slike 215, komponente za analizu radi kontrole filtera 227 i komponente za procenu pokreta 221 radi kompresije.
[0068] Opšta kontrolna komponenta kodera 211 je konfigurisana da donosi odluke koje se odnose na kodiranje slika video sekvence u tok bitova u skladu sa ograničenjima aplikacije. Na primer, opšta kontrolna komponenta kodera 211 upravlja optimizacijom bitske brzine/veličine toka bitova u odnosu na kvalitet rekonstrukcije. Takve odluke se mogu doneti na osnovu dostupnosti prostora za skladištenje/propusnog opsega i zahteva u pogledu rezolucije slike. Opšta kontrolna komponenta kodera 211 takođe upravlja korišćenjem bafera u svetlu brzine prenosa radi ublažavanja probleme sa sporim punjenjem i prekoračenjem bafera. Da bi upravljala ovim problemima, opšta kontrolna komponenta kodera 211 upravlja particionisanjem, predikcijom i filtriranjem od strane drugih komponenti. Na primer, opšta kontrolna komponenta kodera 211 može dinamički da poveća složenost kompresije da bi povećala rezoluciju i povećala upotrebu propusnog opsega ili da smanji složenost kompresije da bi smanjila rezoluciju i korišćenje propusnog opsega. Dakle, opšta kontrolna komponenta kodera 211 kontroliše ostale komponente kodek sistema 200 da uravnoteži kvalitet rekonstrukcije video signala sa problemima kod bitske brzine. Opšta kontrolna komponenta kodera 211 kreira kontrolne podatke, koji kontrolišu rad ostalih komponenti. Kontrolni podaci se takođe prosleđuju komponenti za formatiranje zaglavlja i CABAC 231. da bi se kodirali u tok bitova da signaliziraju parametre za dekodiranje u dekoderu.
[0069] Particionisani video signal 201 se takođe šalje komponenti za procenu pokreta 221 i komponenti za kompenzaciju pokreta 219 radi inter predikcije. Frejm ili isečak particionisanog video signala 201 može biti podeljen na više video blokova. Komponenta za procenu pokreta 221 i komponenta za kompenzaciju pokreta 219 vrše inter-prediktivno kodiranje primljenog video bloka u odnosu na jedan ili više blokova u jednom ili više referentnih frejmnova radi obezbeđivanja inter predikcije.
Kodek sistem 200 može da vrši višestruke prolaze kodiranja, na primer da odabere odgovarajući režim kodiranja za svaki blok video podataka.
[0070] Komponenta za procenu pokreta 221 i komponenta za kompenzaciju pokreta 219 mogu biti visoko integrisane, ali su ilustrovane odvojeno u konceptualne svrhe. Procena pokreta, koju vrši komponenta za procenu pokreta 221, je proces generisanja vektora pokreta, koji procenjuju pokret za video blokove. Vektor pokreta, na primer, može ukazivati na pomerenost kodiranog objekta u odnosu na prediktovani blok. Prediktovani blok je blok za koji je utvrđeno da se blisko podudara sa blokom koji se kodira, u smislu razlike u pikselima. Prediktovani blok se takođe može nazvati i referentnim blokom. Takva razlika u pikselima se može odrediti pomoću zbira apsolutnih razlika (SAD), zbira kvadratnih razlika (SSD) ili drugih metrika za merenje razlike. HEVC koristi nekoliko kodiranih objekata uključujući CTU jedinicu, blokove stabla kodiranja (CTB blokove) i CU jedinice. Na primer, CTU se može podeliti na CTB blokove, koji se zatim mogu podeliti na blokove kodiranja (CB) radi uključivanja u CU jedinice. CU se može kodirati kao jedinica predviđanja (PU) koja sadrži podatke o predikciji i/ili jedinica transformacije (TU) koja sadrži transformisane rezidualne podatke za CU. Komponenta za procenu pokreta 221 generiše vektore pokreta, PU i TU korišćenjem rate-distortion analize u sastavu procesa rate-distortion optimizacije. Na primer, komponenta za procenu pokreta 221 može da odredi više referentnih blokova, više vektora pokreta, itd. za trenutni blok/frejm, i može da odabere referentne blokove, vektore pokreta, itd. koji imaju najbolje rate-distortion karakteristike. Najbolje ratedistortion karakeristike balansiraju i kvalitet video rekonstrukcije (npr. količinu gubitka podataka usled kompresije) i efikasnost kodiranja (npr. veličinu konačnog kodiranja).
[0071] U nekim primerima, kodek sistem 200 može da izračuna vrednosti za pozicije pod-celobrojnih piksela referentnih slika uskladištenih u komponenti bafera za dekodirane slike 223. Na primer, video kodek sistem 200 može da interpolira vrednosti pozicija četvrtine piksela, osmine piksela, ili pozicija drugih razlomaka piksela referentne slike. Prema tome, komponenta za procenu pokreta 221 može da izvrši pretragu pokreta u odnosu na pozicije celih piksela i pozicije razlomaka piksela i da prikaže vektor pokreta sa preciznošću razlomka piksela. Komponenta za procenu pokreta 221 izračunava vektor pokreta za PU jedinicu video bloka u inter kodiranom isečku upoređivanjem pozicije PU jedinice sa pozicijom prediktovanog bloka referentne slike. Komponenta za procenu pokreta 221 daje izračunati vektor pokreta kao podatke o pokretima komponenti za formatiranje zaglavlja i CABAC 231 za potrebe kodiranja i pokreta komponenti za kompenzaciju pokreta 219.
[0072] Kompenzacija pokreta, koju vrši komponenta za kompenzaciju pokreta 219, može uključivati preuzimanje ili generisanje prediktovanog bloka na osnovu vektora pokreta određenog komponentom za procenu pokreta 221. Opet, komponenta za procenu pokreta 221 i komponenta za kompenzaciju pokreta 219 mogu biti funkcionalno integrisane, u nekim primerima. Po prijemu vektora pokreta za PU jedinicu trenutnog video bloka, komponenta za kompenzaciju kretanja 219 može da locira prediktovani blok na koji vektor pokreta pokazuje. Rezidualni video blok se zatim formira oduzimanjem vrednosti piksela prediktovanog bloka od vrednosti piksela trenutnog video bloka koji se kodira, čime se formiraju vrednosti razlike u pikselima. Uopšteno, komponenta za procenu pokreta 221 vrši procenu pokreta u odnosu na luma komponente, a komponenta za kompenzaciju pokreta 219 koristi vektore pokreta izračunate na osnovu luma komponenti i za hroma komponente i za luma komponente. Prediktovani blok i rezidualni blok se prosleđuju komponenti za transformaciju, skaliran je i kvantizaciju 213.
[0073] Particionisani video signal 201 se takođe šalje komponenti 215 za procenu unutar slike i komponenti za predviđanje unutar slike 217. Kao i u slučaju komponente za procenu pokreta 221 i komponente za kompenzaciju pokreta 219, komponenta za procenu unutar slike 215 i komponenta za predviđanje unutar slike 217 mogu biti visoko integrisane, ali se ilustruju odvojeno u konceptualne svrhe. Komponenta za procenu unutar slike 215 i komponenta za predviđanje unutar slike 217 vrše intra predikciju trenutnog blok u odnosu na blokove u trenutnom frejmu, kao alternativu inter predikciji koju vrše komponenta za procenu pokreta 221 i komponenta za kompenzaciju pokreta 219 između frejmova, kao što je gore opisano. Konkretno, komponenta za procenu unutar slike 215 određuje režim intra predikcije koji će se koristiti za kodiranje trenutnog bloka. U nekim primerima, komponenta za procenu unutar slike 215 bira odgovarajući režim intra predikcije za kodiranje trenutnog bloka od više testiranih režima intra predikcije. Odabrani režimi intra predikcije se zatim prosleđuju komponenti za formatiranje zaglavlja i CABAC 231 radi kodiranja.
[0074] Na primer, komponenta za procenu unutar slike 215 izračunava rate-distortion vrednosti korišćenjem rate-distortion analize za različite testirane režime intra predikcije, i bira režim intra predikcije koji ima najbolje rate-distortion karakteristike među testiranim režimima. Rate-distortion analiza generalno utvrđuje količinu distorzije (ili greške) između kodiranog bloka i originalnog nekodiranog bloka koji je kodiran da bi se proizvedeo kodirani blok, kao i bitsku brzinu (npr. broj bitova) korišćenu da bi se proizveo kodirani blok. Komponenta za procenu unutar slike 215 izračunava odnose iz izobličenja i brzina za različite kodirane blokove da bi utvrdila koji režim intra predikcije pokazuje najbolju rate-distortion vrednost za blok. Pored toga, komponenta za procenu unutar slike 215 može biti konfigurisana da kodira blokove dubine mape dubine korišćenjem režima modeliranja dubine (DMM) zasnovanog na rate-distortion optimizaciji (RDO).
[0075] Komponenta za predviđanje unutar slike 217 može da generiše rezidualni blok iz prediktovanog bloka na osnovu odabranih režima intra predikcije koje je odredila komponenta za procenu unutar slike 215 kada se implementira na koderu ili da čita rezidualni blok iz toka bitova kada se implementira na dekoderu. Rezidualni blok uključuje razliku u vrednostima između prediktovanog bloka i originalnog bloka, predstavljenu u vidu matrice. Rezidualni blok se zatim prosleđuje komponenti za transformaciju, skaliranje i kvantizaciju 213. Komponenta za procenu unutar slike 215 i komponenta za predviđanje unutar slike 217 mogu da rade i na luma i na hroma komponentama.
[0076] Komponenta za transformaciju, skaliranje i kvantizaciju 213 je konfigurisana da dalje komprimuje rezidualni blok. Komponenta za transformaciju, skaliranje i kvantizaciju 213 primenjuje transformaci ju, kao što je diskretna kosinusna transformacija (DCT), diskretna sinusna transformacija (DST) ili konceptualno slična transformacija, na rezidualni blok, proizvodeći video blok koji obuhvata vrednosti rezidualnih koeficijenata transformacija. Talasne transformacije, celobrojne transformacije, podopsežne transformacije ili druge vrste transformacija se takođe mogu koristiti. Transformacija može da
1
konvertuje rezidualne informacije iz domena vrednosti piksela u domen transformacije, kao što je frekvencijsk i domen. Komponenta za transformaciju, skaliranje i kvantizaciju 213 je takođe konfigurisana da skalira transformisane rezidualne informacije, na primer na osnovu frekvencije. Takvo skaliranje uključuje primenu faktora skaliranja na rezidualne informacije tako da se različite informacije o frekvenciji kvantiziraju pri različitim granularnostima, što može uticati na konačni vizue lni kvalitet rekonstruisanog video zapisa. Komponenta za transformaciju, skaliranje i kvantizaciju 213 je takođe konfigurisana da kvantizuje koeficijente transformacije da bi se dodatno smanjila bitska brzina. Proces kvantizacije može smanjiti dubinu bita povezanu sa nekim ili svim koeficijentima. Stepen kvantizacije se može modifikovati podešavanjem parametra kvantizacije. U nekim primerima, komponenta za transformaciju, skaliranje i kvantizaciju 213 može zatim da izvrši skeniranje matrice koja uključuje kvantizovane koeficijente transformacije. Kvantizovani koeficijenti transformacije se prosleđuju komponenti za formatiranje zaglavlja i CABAC 231 radi kodiranja.u tok bitova.
[0077] Komponenta za skaliranje i inverznu transformaciju 229 primenjuje obrnutu operaciju u odnosu na komponentu za transformaciju, skaliranje i kvantizaciju 213 da podrži procenu pokreta. Komponenta za skaliran je i inverznu transformaciju 229 primenjuje inverzno skaliranje, transformaciju i/ili kvantizaciju da bi rekonstruisala rezidualni blok u domenu piksela, na primer, da bi se kasnije koristio kao referentni blok koji može postati prediktovani blok za drugi trenutni blok. Komponenta za procenu pokreta 221 i/ili komponenta za kompenzaciju pokreta 219 mogu da izračunaju referentni blok dodavanjem rezidualnog bloka natrag u odgovarajući prediktovani blok da bi se koristio u proceni pokreta za kasniji blok/frejm. Na rekonstruisane referentne blokove se primenjuju filteri da bi se umanjili artefakti stvoreni tokom skaliranja, kvantizacije i transformacije. Takvi artefakti bi inače mogli da uzrokuju netačno predviđanje (i stvore dodatne artefakte) kod predviđanja narednih blokova.
[0078] Komponenta za analizu radi kontrole filtera 227 i komponenta filtera u petlji 225 primenjuju filtere na rezidualne blokove i/ili na rekonstruisane blokove slike. Na primer, transformisani rezidualni blok iz komponente za skaliranje i inverznu transformaciju 229 može se kombinovati sa odgovarajućim blokom predviđanja iz komponente za predviđanje unutar slike 217 i/ili komponente za kompenzaciju pokreta 219 da bi se rekonstruisao originalni blok slike. Filteri se zatim mogu primenit i na rekonstruisani blok slike. U nekim primerima, filteri se umesto toga mogu primeniti na rezidualne blokove. Kao i kod drugih komponenti na slici 2, komponenta za analizu radi kontrole filtera 227 i komponenta filtera u petlji 225 su visoko integrisane i mogu se implementirati zajedno, ali su prikazane odvojeno u konceptualne svrhe. Filteri primenjeni na rekonstruisane referentne blokove primenjuju se na određene prostorne regione i uključuju više parametara za podešavanje načina na koji se takvi filteri primenjuju. Komponenta za analizu radi kontrole filtera 227 analizira rekonstruisane referentne blokove da bi odredila gde takvi filteri treba da se primenjuju i postavlja odgovarajuće parametre. Ti podaci se prosleđuju komponenti za formatiranje zaglavlja i CABAC 231 kao kontrolni podaci filtera za kodiranje. Komponenta filtera u petlji 225 primenjuje te filtere na osnovu kontrolnih podataka filtera. Filteri mogu uključivati filter za uklanjanje blokovskih ostataka, filter za suzbijanje šuma, SAO filter i filter adaptivne petlje. Ti filteri se mogu primeniti u prostornom/pikselskom domenu (npr. na rekonstruisanom bloku piksela) ili u frekvencijskom domenu, u zavisnosti od primera.
[0079] Kada radi kao koder, filtrirani rekonstruisani blok slike, rezidualni blok i/ili blok predviđanja se skladište u komponenti bafera za dekodirane slike 223 da bi se kasnije koristili kod procene pokreta kao što je gore razmotreno. Kada radi kao dekoder, komponenta bafera za dekodirane slike 223 skladišti i prosleđuje rekonstruisane i filtrirane blokove ka ekranu kao deo izlaznog video signala. Komponenta bafera za dekodirane slike 223 može biti bilo koji memorijski uređaj sposoban da skladišti blokove predviđanja, rezidualne blokove i/ili rekonstruisane blokove slike.
[0080] Komponenta za formatiranje zaglavlja i CABAC 231 prima podatke od različitih komponenti kodek sistema 200 i kodira te podatke u kodirani tok bitova za prenos ka dekoderu. Konkretno, komponenta za formatiranje zaglavlja i CABAC 231 generiše različita zaglavlja za kodiranje kontrolnih podataka, kao što su opšti kontrolni podaci i kontrolni podaci filtera. Dalje, podaci predviđanja, uključujući podatke o intra predikciji i podatke o pokretu, kao i rezidualni podaci u obliku podataka o kvantizovanim koeficijentima transformacije, se svi kodiraju u tok bitova. Konačni tok bitova uključuje sve informacije koje dekoder želi da bi rekonstruisao originalni particionisani video signal 201. Te informacije mogu takođe uključivati tabele indeksa režima intra predikcije (koji se takođe nazivaju tabele mapiranja kodnih reči), definicije konteksta kodiranja za različite blokove, indikacije najverovatnijih režima intra predikcije, indikaciju informacija o particionisanju, itd. Ti podaci se mogu kodirati primenom entropijskog kodiranja. Na primer, informacije se mogu kodirati primenom kontekstno adaptivog kodiranja varijabilne dužine (CAVLC), CABAC, kontekstno adaptivnog binarnog aritmetičkog kodiranja zasnovanog na sintaksi (SBAC), entropisko kodiranje sa particionisanjem na intervale verovatnoće (PIPE) ili druge tehnike entropijskog kodiranja. Nakon entropijskog kodiranja, kodirani tok bitova se može preneti na drugi uređaj (npr. video dekoder) ili arhivirati za kasniji prenos ili preuzimanje.
[0081] SLIKA 3 je blok dijagram koji ilustruje primer video kodera 300. Video koder 300 se može koristiti za implementiranje funkcija kodiranja kodek sistema 200 i/ili implementiranje koraka 101, 103, 105, 107 i/ili 109 operativnog metoda 100. Koder 300 particioniše ulazni video signal, što rezultira particionisanim video signalom 301, koji je suštinski sličan particionisanom video signalu 201. Particionisani video signal 301 se zatim komprimuje i kodira u tok bitova putem komponenti kodera 300.
[0082] Konkretno, particionisani video signal 301 se prosleđuje komponenti za predviđanje unutar slike 317 radi intra predikcije. Komponenta za predviđanje unutar slike 317 može biti suštinski slična komponenti za procenu unutar slike 215 i komponenti za predviđanje unutar slike 217. Particionisani video signal 301 se takođe prosleđuje komponenti za kompenzaciju pokreta 321 radi inter predikcije zasnovane na referentnim blokovima u komponenti bafera za dekodirane slike 323. Komponenta za kompenzaciju pokreta 321 može biti suštinski slična komponenti za procenu pokreta 221 i komponenti za kompenzaciju pokreta 219. Blokovi predviđanja i rezidualni blokovi iz komponente za predviđanje unutar slike 317 i komponente za kompenzaciju pokreta 321 se prosleđuju komponenti za transformaciju i kvantizaciju 313 radi transformacije i kvantizacije rezidualnih blokova. Komponenta za transformaciju i kvantizaciju 313 može biti suštinski slična komponenti za transformaciju, skaliranje i kvantizaciju 213. Transformisani i kvantizovani rezidualni blokovi i odgovarajući blokovi predviđanja (zajedno sa povezanim kontrolnim podacima) se prosleđuju komponenti za entropijsko kodiranje 331 radi kodiranja u tok bitova. Komponenta za entropijsko kodiranje 331 može biti suštinski slična komponenti za formatiranje zaglavlja i CABAC 231.
[0083] Transformisani i kvantizovani rezidualni blokovi i/ili odgovarajući blokovi predviđanja se takođe prosleđuju od komponente za transformaciju i kvantizaciju 313 do komponente za inverznu transformaciju i kvantizaciju 329 radi rekonstrukcije u referentne blokove koje će koristiti komponenta za kompenzaciju pokreta 321. Komponenta za inverznu transformaciju i kvantizaciju 329 može biti suštinski slična komponenti za skaliranje i inverznu transformaciju 229. Filteri u petlji u komponenti filtera u petlji 325 se takođe primenjuju na rezidualne blokove i/ili rekonstruisane referentne blokove, u zavisnosti od primera. Komponenta filtera u petlji 325 može biti suštinski slična komponenti za analizu radi kontrole filtera 227 i komponenti filtera u petlji 225. Komponenta filtera u petlji 325 može uključivati više filtera kao što je razmotreno u vezi sa komponentom filtera u petlji 225. Filtrirani blokovi se zatim skladište u komponenti bafera za dekodirane slike 323 da bi ih kao referentne blokove koristila komponenta za kompenzaciju pokreta 321. Komponenta bafera za dekodirane slike 323 može biti suštinski slična komponenti bafera za dekodirane slike 223.
[0084] SLIKA 4 je blok dijagram koji ilustruje primer video dekodera 400. Video dekoder 400 se može koristiti za implementiranje funkcija dekodiranja kodek sistema 200 i/ili implementiranje koraka 111, 113, 115 i/ili 117 operativnog metoda 100. Dekoder 400 prima tok bitova, na primer od kodera 300, i generiše rekonstruisani izlazni video signal na osnovu tog toka bitova za prikaz krajnjem korisniku.
[0085] Tok bitova prima komponenta za entropijsko dekodiranje 433. Komponenta za entropijsko dekodiranje 433 je konfigurisana da implementira šemu entropijskog dekodiranja, kao što je CAVLC, CABAC, SBAC, PIPE kodiranje, ili drugu tehniku entropijskog kodiranja. Na primer, komponenta za entropijsko dekodiranje 433 može da koristi informacije o zaglavlju da obezbedi kontekst za tumačenje dodatnih podataka kodiranih kao kodne reči u toku bitova. Dekodirane informacije uključuju bilo koju informaciju željenu za dekodiranje video signala, kao što su opšti kontrolni podaci, kontrolni podaci filtera, informacije o particionisanju, podaci o pokretu, podaci predviđanja i kvantizovani koeficijenti transformacije iz rezidualnih blokova. Kvantizovani koeficijenti transformacije se prosleđuju komponenti za inverznu transformaciju i kvantizaciju 429 radi rekonstrukcije u rezidualne blokove. Komponenta za inverznu transformaciju i kvantizaciju 429 može biti slična komponenti za inverznu transformaciju i kvantizaciju 329.
[0086] Rekonstruisani rezidualni blokovi i/ili blokovi predviđanja se prosleđuju komponenti za predviđanje unutar slike 417 radi rekonstrukcije u blokove slike na osnovu operacija intra predikcije. Komponenta za predviđanje unutar slike 417 može biti slična komponenti za procenu unutar slike 215 i komponenti za predviđanje unutar slike 217. Konkretno, komponenta za predviđanje unutar slike 417 koristi režime predviđanja da locira referentni blok u frejmu i primenjuje rezidualni blok na rezultat da rekonstruiše intra prediktovane blokove slike. Rekonstruisani intra prediktovani blokovi slike i/ili rezidualni blokovi i odgovarajući podaci inter predikcije se prosleđuju komponenti bafera za dekodirane slike 423 preko komponente filtera u petlji 425, koje mogu biti suštinski slične komponenti bafera za dekodirane slike 223 odnosno komponenti filtera u petlji 225. Komponenta filtera u petlji 425 filtrira rekonstruisane blokove slike, rezidualne blokove i/ili blokove predviđanja, i te informacije se skladište u komponenti bafera za dekodirane slike 423. Rekonstruisani blokovi slike iz komponente bafera za dekodirane slike 423 se prosleđuju komponenti za kompenzaciju pokreta 421 radi inter predikcije. Komponenta za kompenzaciju pokreta 421 može biti suštinski slična komponenti za procenu pokreta 221 i/ili komponenti za kompenzaciju pokreta 219. Konkretno, komponenta za kompenzaciju pokreta 421 koristi vektore pokreta iz referentnog bloka da generiše blok predviđanja i primenjuje rezidualni blok na rezultat da rekonstruiše blok slike. Rezultujući rekonstruisani blokovi se takođe mogu proslediti preko komponente filtera u petlji 425 do komponente bafera za dekodirane slike 423. Komponenta bafera za dekodirane slike 423 nastavlja da skladišti dodatne rekonstruisane blokove slike, koji se mogu rekonstruisati u frejmove preko informacija o particionisanju. Ti okviri se takođe mogu poređati u sekvencu. Sekvenca se šalje prema ekranu kao rekonstruisani izlazni video signal.
[0087] SLIKA 5 je šematski prikaz koji ilustruje primer toka bitova 500 i pod-toka bitova 501 ekstrahovanog iz toka bitova 500. Na primer, tok bitova 500 može da se generiše putem kodek sistema 200 i/ili kodera 300 radi dekodiranja putem kodek sistema 200 i/ ili dekodera 400. Kao drugi primer, tok bitova 500 može da se generiše putem kodera u koraku 109 metode 100 radi upotrebe od strane dekodera u koraku 111.
[0088] Tok bitova 500 uključuje skup parametara za sekvencu (SPS) 510, mnoštvo skupova parametara ha sliku (PPS) 512, mnoštvo zaglavlja isečaka 514, podatke o slici 520 i jednu ili više SEI poruka 515. SPS 510 sadrži podaci o sekvenci zajedničke za sve slike u video sekvenci sadržanoj u toku bitova 500. Ti podaci mogu uključivati informacije za određivanje veličine slike, o dubini bita, parametre alata za kodiranje, ograničenja po pitanju bitske brzine, itd. PPS 512 sadrži parametre koji su specifični za jednu ili više odgovarajućih slika. Dakle, svaka slika u video sekvenci može da referencira jedan PPS 512. PPS 512 može da ukaže na alate za kodiranje koji su dostupni za pločice u odgovarajućim slikama, parametre kvantizacije, pomeraje, parametre alata za kodiranje specifične za sliku (npr. kontrole filtera), itd. Zaglavlje isečka 514 sadrži parametre koji su specifični za jedan ili više odgovarajućih isečaka 524 na slici. Dakle, svaki isečak 524 u video sekvenci može da referencija zaglavlje isečka 514. Zaglavlje isečka 514 može da sadrži informacije o tipu isečka, brojač redosleda slike (POC), liste referentnih slika, predikcione pondere, ulazne tačke pločica, parametre za uklanjanje blokovskih ostataka itd. U nekim primerima, isečci 524 se mogu nazvati grupama pločica. U tom slučaju, zaglavlje isečka 514 može se nazvati zaglavljem grupe pločica. SEI poruke 515 su opcione poruke koje sadrže metapodatke koji nisu potrebni za dekodiranje bloka, ali se mogu koristiti u povezane svrhe kao što su ukazivanje na vreme izlaza slike, podešavanja prikaza, otkrivanje gubitka, prikrivanje gubitaka, itd.
[0089] Podaci o slici 520 sadrže video podatke kodirane u skladu sa inter predikcijom i/ili intra predikcijom kao i odgovarajuće transformisane i kvantizovane rezidualne podatke. Ti podaci o slici 520 se sortiraju prema particionisanju koje se koristi za particionisanje slike pre kodiranja. Na primer, video sekvenca je podeljena na slike 521. Slike 521 se mogu dalje podeliti na podslike 522, koje se dele na isečke 524. Isečci 524 se mogu dalje podeliti na pločice i/ili CTU jedinice. CTU jedinice se da lje dele na blokove kodiranja (CB) na osnovu stabala kodiranja. Blokovi kodiranja se tada mogu kodirati/dekodirati prema mehanizmima predviđanja. Na primer, slika 521 može da sadrži jednu ili više podslika 522. Podslika 522 može da sadrži jedan ili više isečaka 524. Slika 521 referencira PPS 512, a isečci 524 referenciraju zaglavlje isečka 514. Podslike 522 se mogu particionisati konzistentno preko cele video sekvence (takođe poznate kao segment), i stoga mogu da referenciraju SPS 510. Svaki isečak 524 može da sadrži jednu ili više pločica. Svaki isečak 524, a samim tim i slika 521 i podslika 522, takođe mogu da sadrže i mnoštvo CTU jedinica.
[0090] Svaka slika 521 može da sadrži ceo skup vizuelnih podataka povezanih sa video sekvencom za odgovarajući trenutak u vremenu. Međutim, neke aplikacije bi mogle želeti da prikažu samo deo slike 521 u nekim slučajevima. Na primer, sistem virtuelne realnosti (VR) može da prikaže region slike 521 koji je izabrao korisnik, što stvara osećaj prisustva u sceni prikazanoj na slici 521. Region koji će korisnik možda želeti da pogleda nije poznat kada se tok bitova 500 kodira. Shodno tome, slika 521 može da sadrži svaki mogući region koji korisnik može potencijalno pogledati kao podslike 522, koje se mogu dekodirati i prikazati odvojeno na osnovu informacija dobijenih od korisnika. Druge aplikacije mogu odvojeno da prikažu region od interesa. Na primer, televizor sa slikom u slici može želeti da prikaže određeni region, a time i podsliku 522, iz jedne video sekvence preko slike 521 iz nepovezane video sekvence. U još jednom primeru, sistemi za telekonferencije mogu da prikažu celu sliku 521 korisnika koji trenutno govori i podsliku 522 korisnika koji trenutno ne govori. Shodno tome, podslika 522 može sadržati definisani region slike 521. Podslika 522 koja privremeno ima ograničenje pokreta može da se dekodira odvojeno od ostatka slike 521. Konkretno, podslika sa vremenskim ograničenjem pokreta se kodirana bez pozivanja na odbirke izvan pod-slike sa vremenskim ograničenjem pokreta, i stoga sadrži dovoljno informacija za potpuno dekodiranje bez pozivanja na ostatak slike 521.
[0091] Svaki isečak 524 može biti pravougaonik definisan CTU jedinicom u gornjem levom uglu i CTU jedinicom u donjem desnom uglu. U nekim primerima, isečak 524 uključuje seriju pločica i/ili CTU jedinica u koji ide s leva na desno i odozgo prema dole. U drugim primerima, isečak 524 je pravougaoni isečak. Pravougaoni isečak možda neće preći celu širinu slike prema raster skenirajućem redosledu. Umesto toga, pravougaoni isečak može da sadrži pravougaoni i/ili kvadratni region slike 521 i/ili podslike 522 definisan u smislu CTU jedinice i/ili redova pločica i CTU jedinice i/ili kolona pločica. Isečak 524 je najmanja jedinica koju dekoder može odvojeno da prikaže. Stoga, isečci 524 iz slike 521 mogu biti dodeljeni različitim podslikama 522 da bi se odvojeno prikazali željeni regioni slike 521.
[0092] Dekoder može da prikaže jednu ili više podslika 523 slike 521. Podslike 523 su podgrupa podslika 522 koju je odabrao korisnik ili je unapred definisana. Na primer, slika 521 može biti podeljena na devet podslika 522, ali dekoder može da prikaže samo jednu podsliku 523 iz grupe podslika 522. Podslike 523 sadrže isečke 525, koji su odabrana ili unapred definisana podgrupa isečaka 524. Da bi se omogućio odvojeni prikaz podslika 523, pod-tok bitova 501 se može ekstrahovati 529 iz toka bitova 500. Ekstrakcija 529 se može desiti na strani kodera tako da dekoder prima samo pod-tok bitova 501. U drugim slučajevima, ceo tok bitova 500 se prenosi dekoderu i dekoder ekstrahuje 529 pod-tok bitova 501 radi odvojenog dekodiranja. Treba napomenuti da se pod-tok bitova 501 takođe može u nekim slučajevima uopšteno nazivati tok bitova. Pod-tok bitova 501 uključuje SPS 510, PPS 512, odabrane podslike 523, kao i zaglavlja isečka 514 i SEI poruke 515 koje su relevantne za podslike 523 i/ili isečke 525.
[0093] Ovo otkrivanje signalizira različite podatke koji podržavaju efikasno kodiranje podslika 522 za odabir i prikaz podslika 523 na strani dekodera. SPS 510 uključuje veličinu podslike 531, lokaciju podslike 532 i identifikator podslike 533 za kompletan skup podslika 522. Veličina podslike 531 uključuje visinu podslike u luma odbircima i širinu podslike u luma odbircima za odgovarajuću podsliku 522. Lokacija podslike 532 uključuje rastojanje pomeraja između gornjeg levog odbirka odgovarajuće podslike 522 i gornjeg levog odbirka slike 521. Lokacija podslike 532 i veličina podslike 531 definišu raspored odgovarajuće podslike 522. Identifikator podslike 533 sadrži podatke koji jedinstveno identifikuju odgovarajuću podsliku 522. Identifikator podslike 533 može biti indeks raster skeniranja podslike 522 ili druga definisana vrednost. Dakle, dekoder može da pročita SPS 510 i odredi veličinu, lokaciju i identifikator svake podslike 522. U nekim sistemima video kodiranja, podaci koji se odnose na podslike 522 mogu biti uključeni u PPS 512 jer je podslika 522 particionisana iz slike 521. Međutim, particije koje se kor iste za kreiranje podslika 522 mogu da koriste aplikacije, kao što su aplikacije zasnovane na ROI, VR aplikacije, itd., koje zavise od doslednih particija podslike 522 u video sekvenci/segmentu. Kao takve, particije podslike 522 se generalno ne menjaju na bazi pojedinačne slike. Postavljanje informacija o rasporedu za podslike 522 u SPS 510 osigurava da se raspored signalizira samo jednom za sekvencu/segment, umesto da se redundantno signalizira za svaki PPS 512 (koji se može signalizirati za svaku sliku 521 u nekim slučajevima). Takođe, signaliziranje informacija za podsliku 522, umesto oslanjanja na dekoder da izvede takve informacije, smanjuje mogućnost greške u slučaju izgubljenih paketa i podržava dodatnu funkcionalnost u pogledu ekstrakcije podslika 523. Shodno tome, signaliziranje rasporeda podslike 522 u SPS 510 poboljšava funkcionalnost kodera i/ili dekodera.
[0094] SPS 510 takođe sadrži zastavice 534 podslika sa ograničenjem pokreta koje se odnose na kompletan skup podslika 522. Zastavice 534 podslika sa ograničenjem pokreta pokazuju da li je svaka podslika 522 podslika sa vremenskim ograničenjem pokreta. Tako, dekoder može da pročita zastavice 534 podslika sa ograničenjem pokreta i odredi koja od podslika 522 se može odvojeno ekstrahovati i prikazati bez dekodiranja drugih podslika 522. To omogućava da se odabrane podslike 522 kodiraju kao podslike sa vremenskim ograničenjem pokreta a pritom dozvoljava da se druge podslike 522 kodiraju bez takvih ograničenja radi povećane efikasnosti kodiranja.
[0095] Identifikatori podslike 533 su takođe uključeni u zaglavlja isečka 514. Svako zaglavlje isečka 514 sadrži podatke relevantne za odgovarajući skup isečaka 524. Shodno tome, zaglavlje 514 isečka sadrži samo identifikatore podslike 533 koji odgovaraju isečcima 524 povezanim sa zaglavljem isečka 514. U tom smislu, dekoder može da primi isečak 524, pribavi identifikator podslike 533 iz zaglavlja isečka 514 i odredi koja podslika 522 sadrži isečak 524. Dekoder takođe može da koris ti
1
identifikator podslike 533 iz zaglavlja isečka 514 za koreliranje sa povezanim podacima u SPS 510. U tom smislu, dekoder može da odredi kako da pozicionira podslike 522/523 i isečke 524/525 čitanjem SPS 510 i relevantnih zaglavlja isečaka 514. Ovo omogućava da se podslike 523 i isečci 525 dekodiraju čak i ako se neke podslike 522 izgube u prenosu ili namerno izostave da bi se povećala efikasnost kodiranja.
[0096] SEI poruka 515 može takođe da sadrži nivo podslike 535. Nivo podslike 535 ukazuje na hardverske resurse koji su potrebni za dekodiranje odgovarajuće podslike 522. Na taj način, svaka podslika 522 se može kodirati nezavisno od drugih podslika 522. To osigurava da se svakoj podslici 522 može dodeliti ispravna količina hardverskih resursa u dekoderu. Bez tog nivoa podslike 535, svakoj podslici 522 bi bilo dodeljeno dovoljno resursa za dekodiranje najkompleksnije podslike 522. Dakle, nivo podslike 535 sprečava da dekoder dodeljuje prekomernu količinu hardverskih resursa ako se podslike 522 povezani sa različitim zahtevima u pogledu hardverskih resursa.
[0097] SLIKA 6 je šematski prikaz koji ilustruje primer slike 600 particionisane na podslike 622. Na primer, slika 600 može da se kodira u i dekodira iz toka bitova 500, na primer putem kodek sistema 200, kodera 300 i/ili dekodera 400. Dalje, slika 600 može da se particioniše i/ili uključi u pod-tok bitova 501 da bi se podržalo kodiranje i dekodiranje u skladu sa metodom 100.
[0098] Slika 600 može biti suštinski slična slici 521. Dalje, slika 600 se može particionisati u podslike 622, koje su suštinski slične podslikama 522. Svaka podslika 622 uključuje veličinu podslike 631, koja može biti uključena u tok bitova 500 kao veličina podslike 531. Veličina podslike 631 uključuje širinu podslike 631a i visinu podslike 631b. Širina podslike 631a je š irina odgovarajuće podslike 622 u jedinicama luma odbiraka. Visina podslike 631b je visina odgovarajuće podslike 622 u jedinicama luma odbiraka. Svaka podslika 622 uključuje identifikator podslike 633, koji može biti uključen u tok bitova 500 kao identifikator podslike 633. Identifikator podslike 633 može biti bilo koja vrednost koja jedinstveno identifikuje svaku podsliku 622. U prikazanom primeru, identifikator podslike 633 je indeks podslike 622. Svaka podslika 622 uključuje lokaciju 632, koja može biti uključena u tok bitova 500 kao lokacija podslike 532. Lokacija podslike 632 je iskazana kao pomeraj između gornjeg levog odbirka odgovarajuće podslike 622 i gornjeg levog odbirka 642 slike 600.
[0099] Takođe kao što je prikazano, neke podslike 622 mogu biti podslike sa vremenskim ograničenjem pokreta 634, a druge podslike 622 ne. U prikazanom primeru, podslika 622 sa identifikatorom podslike 633 označenim kao pet je podslika sa vremenskim ograničenjem pokreta 634. Ovo ukazuje da je podslika 622 označena kao pet kodirana bez pozivanja na bilo koju drugu podsliku 622 i stoga se može odvojeno ekstrahovati i dekodirati bez uzimanja u obzir podataka iz drugih podslika 622. Indikacija koje podslike 622 su podslike sa vremenskim ograničenjem pokreta 634 može se signalizirat i u toku bitova 500 u zastavicama 534 podslika sa ograničenjem pokreta.
[0100] Kao što je prikazano, podslike 622 mogu biti ograničene da pokriju sliku 600 bez praznine ili preklapanja. Praznina je region slike 600 koji nije uključen ni u jednu podsliku 622. Preklapanje je region slike 600 koji je uključen u više od jedne podslike 622. U primeru prikazanom na slici 6, podslike 622 su particionisane iz slike 600 tako da sprečavaju i praznine i preklapanja. Praznine dovode do toga da odbirci slike 600 budu izostavljeni iz podslika 622. Preklapanja dovode do toga da pridruženi isečci budu uključeni u više podslika 622. Stoga, praznine i preklapanja mogu prouzrokovati uticaj diferencijalnog tretmana na odbirke kada su podslike 622 drugačije kodirane. Ako je to dozvoljeno kod kodera, dekoder mora da podržava takvu šemu kodiranja čak i kada se ta šema dekodiranja retko koristi. Onemogućavanjem praznina i preklapanja kod podslika 622, složenost dekodera se može smanjiti jer dekoder ne mora da uzima u obzir potencijalne praznine i preklapanja prilikom određivanja veličina podslika 631 i lokacija podslika 632. Dalje, onemogućavanje praznina i preklapanja kod podslika 622 smanjuje složenost RDO procesa kod kodera. To je zbog toga što koder može da izostavi razmatranje slučajeva praznina i preklapanja kada bira kodiranje za video sekvencu. Shodno tome, izbegavanje praznina i preklapanja može smanjiti upotrebu memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0101] SLIKA 7 je šematski prikaz koji ilustruje primer mehanizma 700 za povezivanje isečaka 724 sa rasporedom podslika 722. Na primer, mehanizam 700 se može primeniti na sliku 600. Dalje, mehanizam 700 se može primeniti na osnovu podataka u toku bitova 500, na primer putem kodek sistema 200, kodera 300 i/ili dekodera 400. Dalje, mehanizam 700 se može koristiti da podrži kodiranje i dekodiranje prema metodu 100.
[0102] Mehanizam 700 se može primeniti na isečke 724 u podslici 722, poput isečaka 524/525 i podslika 522/523, respektivno. U prikazanom primeru, podslika 722 uključuje prvi isečak 724a, drugi isečak 724b i treći isečak 724c. Zaglavlja isečaka za svaki isečak 724 uključuju identifikator podslike 733 za podsliku 722. Dekoder može da upari identifikator pods like 733 iz zaglavlja isečka sa identifikatorom podslike 733 u SPS skupu. Dekoder tada može da odredi lokaciju podslike 732 i veličinu podslike 722 iz SPS skupa na osnovu identifikatora podslike 733. Koristeći lokaciju podslike 732, podslika 722 se može postaviti u odnosu na gornji levi odbirak na u gornjem levom uglu 742 slike. Veličina se može koristiti za postavljanje visine i širine podslike 722 u odnosu na lokaciju 732. Isečci 724 se zatim mogu uključiti u podsliku 722. Shodno tome, isečci 724 se mogu pozicionirati u ispravnu podsliku 722 na osnovu identifikatora podslike 733 bez pozivanja na druge podslike. Ovo podržava ispravljanje grešaka pošto druge izgubljene podslike ne menjaju dekodiranje podslike 722. Ovo takođe podržava aplikacije koje samo ekstrahuju podsliku 722 i izbegava prenos drugih podslika. Stoga, identifikatori podslika 733 podržavaju povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0103] SLIKA 8 je šematski prikaz koji ilustruje drugi primer slike 800 particionisane na podslike 822. Slika 800 može biti suštinski slična slici 600. Dodatno, slika 800 može da se kodira u i dekodira iz toka bitova 500, na primer putem kodek sistema 200, kodera 300 i/ili dekodera 400. Dalje, slika 800 može da se particioniše i/ili uključi u pod-tok bitova 501 da bi se podržalo kodiranje i dekodiranje u skladu sa metodom 100 i/ili mehanizmom 700.
[0104] Slika 800 uključuje podslike 822, koje mogu biti suštinski slične podslikama 522, 523, 622 i/ili 722. Podslike 822 su podeljene na mnoštvo CTU 825. CTU 825 je osnovna jedinica kodiranja u standardizovanim sistemima video kodiranja. CTU 825 je podeljen stablom kodiranja na blokove kodiranja, koji su kodirani u skladu sa inter predikcijom ili intra predikcijom. Kao što je prikazano, neke podslike 822a su ograničene da uključuju širine podslike i visine podslike koje su umnošci veličine CTU 825. U prikazanom primeru, podslike 822a imaju visinu od šest CTU 825 i širinu od pet CTU 825. Ovo ograničenje je uklonjeno za podslike 822b pozicionirane na desnoj ivici slike 801 i za podslike 822c pozicionirane na donjoj ivici slike 802. U prikazanom primeru, podslike 822b imaju širinu između pet i šest CTU 825. Međutim, podslike 822b koje nisu pozicionirane na donjoj ivici slike 802 su i dalje ograničene da održavaju visinu podslike koja je umnožak veličine CTU 825. U prikazanom primeru, podslike 822c imaju visinu između šest i sedam CTU 825. Međutim, podslike 822c koje nisu pozicionirane na desnoj ivici slike 801 su i dalje ograničene da održavaju širinu podslike koja je umnožak veličine CTU 825.
[0105] Kao što je gore navedeno, neki video sistemi mogu ograničiti podslike 822 tako da uključuju visine i širine koje su u umnošci veličine CTU 825. Ovo može sprečiti da podslike 822 pravilno funkcionišu sa mnogim rasporedima slika, na primer sa slikom 800 koja sadrži ukupnu širinu ili visinu koja nije umnožak veličine CTU 825. Dozvoljavanjem da donja podslika 822c i desna podslika 822b uključuju visine odnosno širine koje nisu umnošci veličine CTU 825, podslike 822 se mogu koristiti sa bilo kojom slikom 800 bez izazivanja grešaka kod dekodiranja. Ovo rezultira povećanjem funkcionalnosti kodera i dekodera. Dalje, povećana funkcionalnost omogućava koderu da efikasnije kodira slike, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0106] Kao što je ovde opisano, ovo otkrivanje opisuje dizajne za particionisanje s lika na osnovu podslika kod video kodiranja. Podslika je pravougaona oblast unutar slike koja se može nezavisno dekodirati korišćenjem sličnog procesa dekodiranja kao što se koristi za sliku. Ovo otkrivanje se odnosi na signaliziranje podslika u kodiranoj video sekvenci i/ili toku bitova, kao i na proces ekstrakcije podslika. Opisi tehnika su zasnovani na VVC JVET tima ITU-T-a i ISO/IEC-a. Međutim, ove tehnike su primenjive i na druge specifikacije video kodeka. Slede primeri izvođenja koja su ovde opisana. Ta izvođemka se mogu primeniti pojedinačno ili u kombinaciji.
[0107] Informacije koje se odnose na podslike koje mogu biti prisutne u kodiranoj video sekvenci (CVS) mogu biti signalizirane u skupu parametara nivoa sekvence, kao što je SPS. To signaliziranje može uključivati sledeće informacije. Broj podslika prisutnih na svakoj slici CVS sekvence može biti signaliziran u SPS. U kontekstu SPS ili CVS, kolocirane podslike za sve pristupne jedinice (AU) mogu se zajedno nazvati sekvencom podslika. Petlja za dalje specificiranje informacija koje opisuju svojstva svake podslike takođe može biti uključena u SPS. Ove informacije mogu obuhvatati identifikaciju podslike, lokaciju podslike (npr. rastojanje pomeranja između luma odbirka gornjeg levog ugla podslike i luma odbirka gornjeg levog ugla slike) i veličinu podslike. Pored toga, SPS može da signalizira da li je svaka podslika podslika sa ograničenjem pokreta (koja sadrži funkcionalnost MCTS). Informacije o profilu, sloju i nivou za svaku podsliku se takođe mogu signalizirati ili se mogu izvesti u dekoderu. Te informacije se mogu koristiti za određivanje informacija o profilu, sloju i nivou za tok bitova koji je kreiran ekstrakcijom podslika iz originalnog toka bitova. Profil i sloj svake podslike se mogu izvesti da su isti kao profil i sloj čitavog toka bitova. Nivo za svaku podsliku se može signalizirati eksplicitno. Takvo signaliziranje može biti prisutno u petlji sadržanoj u SPS. Parametri na nivou sekvence dekodera hipotetičke reference (HRD) se mogu signalizirati u sekciji sa informacijama o upotrebljivosti videa (VUI) u SPS za svaku podsliku (ili ekvivalentno, svaku sekvencu podslika).
[0108] Kada slika nije particionisana na dve ili više podslika, svojstva podslike (npr. lokacija, veličina, itd.), osim identifikatora podslike, možda neće biti prisutna/signalizirana u toku bitova. Kada se ekstrahuje podslika slika u CVS, svaka pristupna jedinica u novom toku bitova može da ne sadržiti nijednu podsliku. U tom slučaju, slika u svakoj AU u novom toku bitova nije particionisana na više podslika. Stoga nema potrebe da se signaliziraju svojstva podslike kao što su lokacija i veličina u SPS, jer se takve informacije mogu izvesti iz svojstava slike. Međutim, identifikacija podslike i dalje može biti signalizirana pošto taj identifikator mogu da referenciraju VCL NAL jedinice / grupe pločica koje su uključene u ekstrahovanu podsliku. To može omogućiti da identifikatori podslike ostanu isti prilikom ekstrakcije podslike.
[0109] Lokacija podslike na slici (x pomeraj i y pomeraj) se može signalizirati u jedinicama luma odbiraka. Lokacija predstavlja rastojanje između luma odbirka gornjeg levog ugla podslike i luma odbirka gornjeg levog ugla slike. Alternativno, lokacija podslike na slici se može signalizirati u jedinicama minimalne veličine luma bloka kodiranja (MinCbSizeY). Alternativno, jedinica pomeraja lokacije podslike može biti eksplicitno naznačena elementom sintakse u skupu parametara. Jedinica može biti CtbSizeY, MinCbSizeY, luma odbirak ili druge vrednosti.
[0110] Veličina podslike (širina podslike i visina podslike) se može signalizirati u jedinicama luma odbiraka. Alternativno, veličina podslike na slici se može signalizirati u jedinicama minimalne veličine luma bloka kodiranja (MinCbSizeY). Alternativno, jed inica vrednosti veličine podslike može biti eksplicitno naznačena elementom sintakse u skupu parametara. Jedinica može biti CtbSizeY, MinCbSizeY, luma odbirak ili druge vrednosti. Kada se desna ivica podslike ne podudara sa desnom ivicom slike, možda će širina podslike morati da bude celobrojni umnožak veličine luma CTU (CtbSizeY). Slično tome, kada se donja ivica podslike ne podudara sa donjom ivicom slike, možda će visina podslike morati da bude celobrojni umnožak veličine luma CTU (CtbSizeY). Ako širina podslike nije celobrojni umnožak veličine luma CTU, možda će podslika morati da se nalazi na krajnjoj desnoj poziciji na slici. Slično tome, ako visina podslike nije celobrojni umnožak veličine luma CTU, možda će podslika morati da se nalazi na krajnjoj donjoj poziciji na slici. U nekim slučajevima, širina podslike se može signalizirati u jedinicama veličine luma CTU, ali širina podslike nije celobrojni umnožak veličine luma CTU. U tom slučaju, stvarna širina u luma odbircima se može izvesti na osnovu lokacije pomeraja podslike. Širina podslike se može izvesti na osnovu veličine luma CTU, a visina slike se može izvesti na osnovu luma odbiraka. Slično tome, visina podslike se može signalizirati u jedinicama veličine luma CTU, ali visina podslike nije celobrojni umnožak veličine luma CTU. U tom slučaju, stvarna visina u luma odbircima se može izvesti na osnovu lokacije pomeraja podslike. Visina podslike se može izvesti na osnovu veličine luma CTU, a visina slike se može izvesti na osnovu luma odbiraka.
[0111] Za bilo koju podsliku, identifikator podslike može biti različit od indeksa podslike. Indeks podslike može biti indeks podslike kao što je signaliziran u petlji podslika u SPS. Identifikator podslike može biti indeks podslike u raster skenirajućem redosledu podslika na slici. Kada je vrednost identifikatora podslike za svaku podsliku ista kao indeks podslike, identifikator
1
podslike se može signalizirati ili izvesti. Kada je identifikator podslike za svaku podsliku različit od indeksa podslike, identifikator podslike se eksplicitno signalizira. Broj bitova za signaliziranje identifikatora podslika se može signalizirati u istom skupu parametara koji sadrži svojstva podslika (npr. u SPS). Neke vrednosti za identifikatore podslike mogu biti rezervisane za određene svrhe. Na primer, kada zaglavlja grupe pločica sadrže identifikatore podslike radi preciziranja koja podslika sadrži grupu pločica, vrednost nula može biti rezervisana i van upotrebe za podslike kako bi se osiguralo da prvih nekoliko bitova zaglavlja grupe pločica nisu sve nule da bi se izbeglo slučajno uključivanje koda za sprečavanje emulacije. U opcionim slučajevima kada podslike slike ne pokrivaju celu površinu slike bez praznina i bez preklapanja, neka vrednost (npr. vrednost jedan) može biti rezervisana za grupe pločica koje nisu deo nijedne podslike. Alternativno, identifikator podslike za preostalu oblast se eksplicitno signalizira. Broj bitova za signaliziranje identifikatora podslike može biti ograničen na sledeći način. Opseg vrednosti treba da bude dovoljan da jedinstveno identifikuje sve podslike na slici, uključujući rezervisane vrednosti identifikatora podslike. Na primer, minimalni broj bitova za identifikator podslike može biti vrednost Ceil( Log2( broj podslika na slici broj rezervisanih identifikatora podslike).
[0112] Može biti postavljeno ograničenje da skup podslika mora da pokriva celu sliku bez praznina i bez preklapanja. Kada se ovo ograničenje primeni, za svaku podsliku može biti prisutna zastavica koja precizira da li je podslika podslika sa ograničenjem pokreta, što ukazuje da se podslika može ekstrahovati. Alternativno, skup podslika možda neće pokrivati celu sliku, ali preklapanja možda neće biti dozvoljena.
[0113] Identifikatori podslike mogu biti prisutni odmah iza zaglavlja NAL jedinice da pomognu kod procesa ekstrakcije podslika bez potrebe da ekstraktor analizira preostale bite NAL jedinice. Za VCL NAL jedinice, identifikator podslike može biti prisutan u prvim bitovima zaglavlja grupe pločica. Za ne-VCL NAL jedinice, sledeće može biti primenjivo. Za SPS, identifikator podslike ne mora biti prisutan odmah iza zaglavlja NAL jedinice. Za PPS, ako su sve grupe pločica iste slike ograničene da referencira ju isti PPS, identifikator podslike ne mora biti prisutan odmah iza zaglavlja NAL jedinice. Ako je grupama pločica iste slike dozvoljeno da referenciraju različite PPS skupove, identifikator podslike može biti prisutan u prvim bitovima PPS skupa (npr. odmah iza zaglavlja NAL jedinice). U tom slučaju, svim grupama pločica jedne slike može biti dozvoljeno da dele isti PPS. Alternativno, kada je grupama pločica iste slike dozvoljeno da referenciraju različite PPS skupove, i različitim grupama ploč ica iste slike je takođe dozvoljeno da dele isti PPS skup, u sintaksi PPS skupa ne može biti prisutan nijedan identifikator podslike. Alternativno, kada je grupama pločica iste slike dozvoljeno da referenciraju različite PPS skupove, i različitim grupama ploč ica iste slike je takođe dozvoljeno da dele isti PPS skup, u sintaksi PPS skupa može biti prisutna lista identifikatora podslika. Lista ukazuje na podslike na koje se PPS odnosi. Za druge ne-VCL NAL jedinice, ako je ne-VCL jedinica primenjiva na nivo slike ili iznad (npr. graničnik pristupne jedinice, kraj sekvence, kraj toka bitova, itd.), onda identifikator podslike ne može biti prisutan odmah iza zaglavlja NAL jedinice. U suprotnom, identifikator podslike može biti prisutan odmah iza zaglavlja NAL jedinice.
[0114] Sa gornjim signaliziranjem u SPS skupu, particionisanje pločica unutar pojedinačnih podslika se može signalizirati u PPS skupu. Grupama pločica u okviru iste slike može biti dozvoljeno da referenciraju različite PPS skupove. U tom slučaju, grupisanje pločica može biti samo unutar svake podslike. Koncept grupisanja pločica je particionisanje podslike na pločice.
[0115] Alternativno, definiše se skup parametara za opisivanje particionisanja pločica unutar pojedinačnih podslika. Taj skup parametara se može nazvati skup parametara za podsliku (SPPS). SPPS referencira SPS. Element sintakse koji se odnosi na identifikator SPS je prisutan u SPPS. SPPS može da sadrži identifikator podslike. Za potrebe ekstrakcije podslike, element sintakse koji se odnosi na identifikator podslike je prvi element sintakse u SPPS. SPPS sadrži strukturu pločica (npr. broj kolona, broj redova, ravnomerni razmak pločica, itd.). SPPS može da sadrži zastavicu koja označava da li je filter u petlji omogućen preko povezanih granica podslike ili nije. Alternativno, svojstva podslike za svaku podsliku se mogu signalizirati u SPPS umesto u SPS. Particionisanje pločica unutar pojedinačnih podslika može i dalje da se signalizira u PPS. Grupama pločica u okviru is te slike je dozvoljeno da referenciraju različite PPS. Jednom kada se aktivira SPPS, SPPS traje za sekvencu uzastopnih AU u redosledu dekodiranja. Međutim, SPPS se može deaktivirati/aktivirati kod AU koja nije početak CVS. U svakom trenutku tokom procesa dekodiranja jednoslojnog toka bitova sa više podslika u nekim AU, više SPPS može biti aktivno. Različite podslike jedne AU mogu da dele isti SPPS. Alternativno, SPPS i PPS se mogu spojiti u jedan skup parametara. U tom slučaju, možda neće morati sve grupe pločica iste slike da referenciraju isti PPS. Može se primeniti ograničenje takvo da sve grupe pločica u istoj podslici mogu da referenciraju isti skup parametara koji je rezultat spajanja SPPS i PPS.
[0116] Broj bitova koji se koristi za signaliziranje identifikatora podslika se može signalizirati u zaglavlju NAL jedinice. Kada su prisutne u zaglavlju NAL jedinice, takve informacije mogu pomoći procesima ekstrakcije podslike u analiziranju vrednosti identifikatora podslike na početku korisnih podataka NAL jedinice (npr. prvih nekoliko bitova odmah iza zaglavlja NAL jedinice). Za takvo signaliziranje, mogu se koristiti neki od rezervisanih bitova (npr. sedam rezervisanih bitova) u zaglavlju NAL jedinice da bi se izbeglo povećanje dužine zaglavlja NAL jedinice. Broj bitova za to signaliziranje može da pokrije vrednost sub-picture-ID-bit-len. Na primer, četiri bita od sedam rezervisanih bitova zaglavlja VVC NAL jedinice se mogu koristiti za ovu svrhu.
[0117] Prilikom dekodiranja podslike, lokacija svakog bloka stabla kodiranja (npr. xCtb i yCtb) može da se podesi na lokaciju luma odbirka u slici umesto lokacije luma odbirka u podslici. Na taj način se može izbeći ekstrakcija kolocirane podslike iz svake referentne slike jer se blok stabla kodiranja dekodira sa pozivanjem na sliku umesto na podsliku. Za podešavanje lokacije bloka stabla kodiranja, promenljive SubpictureXOffset i SubpictureYOffset se mogu izvesti na osnovu pozicije podslike (subpic x offset i subpic_y_offset). Vrednosti promenljivih se mogu dodati vrednostima x odnosno y koordinata luma odbiraka svakog bloka stabla kodiranja u podslici.
[0118] Proces ekstrakcije podslike može se definisati na sledeći način. Ulaz u proces je ciljna podslika koja treba da se ekstrahuje. Ovo može biti u obliku identifikatora podslike ili lokacije podslike. Kada je ulaz lokacija podslike, pridruženi identifikator podslike se može rešiti analiziranjem informacija o podslici u SPS. Za ne-VCL NAL jedinice važi sledeće. Elementi sintakse u SPS koji se odnose na veličinu i nivo slike mogu se ažurirati informacijama o veličini i nivou podslike. Sledeće ne-VCL NAL jedinice se čuvaju bez promene: PPS, graničnik pristupne jedinice (AUD), kraj sekvence (EOS), kraj toka bitova
1
(EOB) i sve ostale ne-VCL NAL jedinice koje su primenljive na nivo slike ili iznad. Preostale ne-VCL NAL jedinice sa identifikatorom podslike koji nije jednak identifikatoru ciljne podslike se mogu ukloniti. VCL NAL jedinice sa identifikatorom podslike koji nije jednak identifikatoru ciljne podslike se takođe mogu ukloniti.
[0119] SEI poruka za ugnežđivanje za podslike na nivou sekvence može se koristiti za ugnežđivanje SEI poruka na nivou AU ili na nivou podslike za skup podslika. Ovo može uključivati period baferovanja, tajming slike i ne-HRD SEI poruke Sintaksa i semantika ove SEI poruka za ugnežđivanje za podslike može biti sledeća. Za sistemske operacije, kao što su okruženja omnidirekcionog medijskog formata (OMAF), OMAF plejer može da zatraži i dekodira skup sekvenci podslika koje pokrivaju oblast prikaza. Stoga se SEI poruka na nivou sekvence koristi za prenošenje informacija o skupu sekvenci podslika koje zajedno pokrivaju pravougaoni region slike. Te informacije mogu da koriste sistemi, i one ukazuju na potrebnu sposobnost dekodiranja, kao i na bitsku brzinu skupa sekvenci podslika. Te informacije naznačavaju nivo toka bitova koji uključuje samo skup sekvenci podslika. Ove informacije takođe naznačavaju bitsku brzinu toka bitova koji sadrži samo skup sekvenci podslika. Opciono, za skup sekvenci pod-slika se može specificirati proces ekstrakcije pod-toka bitova. Prednost toga je da tok bitova koji uključuje samo skup sekvenci podslika takođe može biti usaglašen (konforman). Nedostatak je što u razmatranju različitih mogućnosti po pitanju veličine oblasti prikaza može postojati mnogo takvih skupova pored već velikog mogućeg broja pojedinačnih sekvenci podslika.
[0120] U jednom primeru izvođenja, jedan ili više otkrivenih primera može biti imp lementiran na sledeći način. Podslika se može definisati kao pravougaoni region jedne ili više grupa pločica unutar slike. Dozvoljeni proces binarne podele može se definisati na sledeći način. Ulazi za ovaj proces su: režim binarne podele btSplit, širina bloka kodiranja cbWidth, visina bloka kodiranja cbHeight, lokacija (x0, y0) gornjeg levog luma odbirka razmatranog bloka kodiranja u odnosu na gornji levi luma odbirak slike, dubina više-tipnog stabla mttDepth, maksimalna dubina više-tipnog stabla sa pomerajem maxMttDepth, maksimalna veličina binarnog stabla maxBtSize i indeks particionisanja partIdx. Izlaz ovog procesa je promenljiva allowBtSpli t.
[0121] Promenljive parallelTtSplit i cbSize se izvode kako je gore precizirano. Promenljiva allowBtSplit se izvodi na sledeći način. Ako su jedan ili više sledećih uslova tačni, allowBtSplit se postavlja da bude FALSE: cbSize je manji od ili jednak MinBtSizeY, cbWidth je veći od maxBtSize, cbHeight je veći od maxBtSize, i mttDepth je veći od ili jednak maxMt tDepth. U protivnom, ako su svi sledeći uslovi tačni, allowBtSplit se postavlja da bude FALSE: btSplit je jednak SPLIT _BT_VER, i y0 cbHeight je veći od SubPicBottomBorderInPic. U protivnom, ako su svi sledeći uslovi tačni, allowBtSplit se postavlja da bude FALSE, btSplit je jednak SPLIT_BT_HOR, x0 cbWidth je veći od SubPicRightBorderInPic, i y0 cbHeight je manji od ili jednak SubPicBottomBorderInPic. U protivnom, ako su svi sledeći uslovi tačni, allowBtSplit se postavlja da bude FALSE: mttDepth je veći od nule, partIdx je jednak nuli, i MttSplitMode[ x0 ][ y0 ][ mttDepth - 1 ] je jednak parallelTtSplit. U protivnom, ako su svi sledeći uslovi tačni, allowBtSplit se postavlja da bude FALSE: btSplit je jednak SPLIT_BT_VER, cbWidth je manji od ili jednak MaxTbSizeY, i cbHeight je veći od MaxTbSizeY. U protivnom, ako su svi sledeći uslovi tačni, allowBtSplit se postavlja da bude FALSE: btSplit je jednak SPLIT_BT_HOR, cbWidth je veći od MaxTbSizeY, i cbHeight je manji od ili jednak MaxTbSizeY. U protivnom, allowBtSplit se postavlja da bude TRUE.
[0122] Dozvoljeni proces ternarne podele može se definisati na sledeći način. Ulazi za ovaj proces su: režim ternarne podele ttSplit, širina bloka kodiranja cbWidth, visina bloka kodiranja cbHeight, lokacija (x0, y0) gornjeg levog luma odbirka razmatranog bloka kodiranja u odnosu na gornji levi luma odbirak slike, dubina više-tipnog stabla mttDepth, maksimalna dubina više-tipnog stabla sa pomerajem maxMttDepth, i maksimalna veličina binarnog stabla maxTtSize. Izlaz ovog procesa je promenljiva allowTtSplit.
[0123] Promenljiva cbSize se izvodi kako je gore precizirano. Promenljiva allowTtSplit se izvodi na sledeći način. Ako su jedan ili više sledećih uslova tačni, allowTtSplit se postavlja da bude FALSE: cbSize je manji od ili jednak 2 * MinTtSizeY, cbWidth je veći od Min( MaxTbSizeY, maxTtSize ), cbHeight je veći od Min( MaxTbSizeY, maxTtSize ), mt- tDepth je veći od ili jednak maxMttDepth, x0 cbWidth je veći od SubPicRightBorderInPic, i y0 cbHeight je veći od SubPicBottomBorderInPic. U protivnom, allowTtSplit se postavlja da bude TRUE.
1
[0124] Sintaksa i semantika za RBSP skupa parametara za sekvencu su sledeće.
[0125] Element pic_width_in_luma_samples precizira širinu svake dekodirane slike u jedinicama luma odbiraka. pic_width_in_luma_samples ne može da bude jednak nuli i mora da bude celobrojni umnožak od MinCbSizeY. Element pic_height_in_luma_samples precizira visinu svake dekodirane slike u jedinicama luma odbiraka. pic_height_in_luma_samples ne može da bude jednak nuli i mora da bude celobrojni umnožak od MinCbSizeY. Element num_subpicture_minus1 plus 1 precizira broj podslika particionisanih u kodiranim slikama koji pripada kodiranoj video sekvenci. Element subpic_id_len_minus1 plus 1 precizira broj bitova upotrebljenih za predstavljanje elementa sintakse subpic_id[ i ] u SPS, spps_subpic_id u SPPS koji referencira SPS, i tile_group_subpic_id u zaglavljima grupa pločica koji referenciraju SPS. Vrednost subpic_id_len_minus1 je u rasponu Ceil( Log2( num_subpic_minus1 2) do osam, uključujući prvu i poslednju vrednost raspona. Element subpic_id[ i ] precizira identifikaciju podslike za i-tu podsliku slika koje referenciraju SPS. Dužina subpic_id[ i ] je subpic_id_len_minus1 1 bita. Vrednost subpic_id[i] mora biti veća od nule. Element subpic_level_idc[ i ] naznačava nivo do kojeg je CVS sekvenca koja je rezultirala iz ekstrakcije i-tih podslika usaglašena (konformna) sa preciziranim zahtevima u pogledu resursa. Tokovi bitova ne sadrže vrednosti za subpic_level_idc[ i ] osim onih preciziranih. Druge vrednosti za subpic_level_idc[ i ] su rezervisane. Kada nije prisutan, vrednost za subpic_level_idc[ i ] se zaključuje da je jednaka vrednosti general_level_idc.
[0126] Element subpic_x_offset[ i ] precizira horizontalni pomeraj gornjeg levog ugla i-te podslike u odnosu na gornji levi ugao slike. Kada nije prisutan, vrednost za subpic_x_offset[ i ] se zaključuje da je jednaka nuli. Vrednost x pomeraja pods like se izvodi na sledeći način: SubpictureXOffset[ i ] = subpic_x_offset[ i ]. Element subpic_y_offset[ i ] precizira vertikalni pomeraj gornjeg levog ugla i-te podslike u odnosu na gornji levi ugao slike. Kada nije prisutan, vrednost za subpic_y_offset[ i ] se zaključuje da je jednaka nuli. Vrednost y pomeraja podslike se izvodi na sledeći način: SubpictureYOffset[ i ] = subpic_y_offset[ i ]. Element subpic_width_in_luma_samples[ i ] precizira širinu i-te dekodirane podslike za koju je ovaj SPS skup aktivan SPS skup. Kada je zbir SubpictureXOffset[ i ] i subpic_width_in_luma_samples[ i ] manji od pic_width_in_luma_samples, vrednost subpic_width_in_luma_samples[ i ] je celobrojni umnožak od CtbSizeY. Kada nije prisutan, vrednost za subpic_width_in_luma_samples[ i ] se zaključuje da je jednaka vrednosti pic_width_in_luma_samples. Element subpic_height_in_luma_samples[ i ] precizira visinu i-te dekodirane podslike za koju je ovaj SPS skup aktivan SPS skup. Kada je zbir SubpictureYOffset[ i ] i subpic_height_in_luma_samples[ i ] manji od pic_height_in_luma_samples, vrednost subpic_height_in_luma_samples[ i ] je celobrojni umnožak od CtbSizeY. Kada nije prisutan, vrednost za subpic_height_in_luma_samples[ i ] se zaključuje da je jednaka vrednosti pic_height_ in_luma_samples.
[0127] Zahtev je usaglašenosti (konformiranja) toka bitova da skup podslika pokriva celu površinu slike bez praznina i preklapanja. Element subpic_motionconstrained_flag[ i ] jednak jedan precizira da je i-ta podslika podslika sa vremenskim ograničenjem pokreta. Element subpic_motionconstrained_flag[ i ] jednak nuli precizira da i-ta podslika može a ne mora biti podslika sa vremenskim ograničenjem pokreta. Kada nije prisutan, vrednost za subpic_motion_constrained flag se zaključuje da je jednaka nuli.
[0128] Promenljive SubpicWidthInCtbsY, SubpicHeightInCtbsY, SubpicSizeInCtbsY, SubpicWidthInMinCbsY, Sub-
1
picHeightInMinCbsY, SubpicSizeInMinCbsY, SubpicSizeInSamplesY, SubpicWidthInSamplesC, i SubpicHeightIn- SamplesC se izvode na sledeći način:
SubpicWidthInLumaSamples[ i ] = subpic_width_in_luma_samples[ i ]
SubpicHeightInLumaSamples[ i ] = subpic_height_in_luma_samples[ i ]
SubPicRightBorderInPic[ i ] = SubpictureXOffset[ i ] PicWidthInLumaSamples[ i ]
SubPicBottomBorderInPic[ i ] = SubpictureYOffset[ i ] PicHeightInLumaSamples[ i ]
SubpicWidthInCtbsY[ i ] = Ceil( SubpicWidthInLumaSamples[ i ] ÷ CtbSizeY)
SubpicHeightInCtbsY[ i ] = Ceil( SubpicHeightInLumaSamples[ i ] ÷ CtbSizeY )
SubpicSizeInCtbsY[ i ] = SubpicWidthInCtbsY[ i ] * SubpicHeightInCtbsY[ i ]
SubpicWidthInMinCbsY[ i ] = SubpicWidthInLumaSamples[ i ] / MinCbSizeY
SubpicHeightInMinCbsY[ i ] = SubpicHeightInLumaSamples[ i ] / MinCbSizeY
SubpicSizeInMinCbsY[ i ] = SubpicWidthInMinCbsY[ i ] * SubpicHeightInMinCbsY[ i ]
SubpicSizeInSamplesY[ i ] = SubpicWidthInLumaSamples[ i ] * SubpicHeightInLumaSamples[ i ] SubpicWidthInSamplesC[ i ] = SubpicWidthInLumaSamples[ i ] / SubWidthC
SubpicHeightInSamplesC[ i ] = SubpicHeightInLumaSamples[ i ] / SubHeightC
[0129] Sintaksa i semantika za RBSP skupa parametara o podslici su sledeće.
[0130] spps subpic id iidentifikuje podsliku kojoj SPPS pripada. Dužina spps_subpic_id je subpic_id_len_minus1 1 bita. Element spps_subpic_parameter_set _id identifikuje SPPS za referenciranje od strane drugih elemenata sintakse. Vrednost spps_subpic_parameter_set_id je u rasponu od nula do šezdeset tri, uključujući prvu i poslednju vrednost raspona. Element spps_seq_parameter_set_id precizira vrednost sps_seq_parameter_set_id za aktivni SPS. Vrednost spps_seq_parameter_set_id je u rasponu od nula do petnaest, uključujući prvu i poslednju vrednost raspona. Element single_tile_in_subpic_flag jednak jedan precizira da ima samo jedna pločica u svakoj podslici koja referencira SPPS. Element single_tile_in_subpic_flag jednak nuli precizira da ima više od jedne pločice u svakoj podslici koja referencira SPPS. Element num_tile_columns_minus1 plus 1 precizira broj kolona pločica koje particionišu podsliku. Element num_tile_columns_minus1 je u rasponu od nula do PicWidthInCtbsY[ spps_subpic_id ] - 1, uključujući prvu i poslednju vrednost raspona. Kada nije prisutan, vrednost za num_tile_columns_minus1 se zaključuje da je jednaka nuli. Element num tile rows minus1 plus 1 precizira broj redova pločica koji particionišu podsliku. Element num_tile_rows_minus1 je u rasponu od nula do
1
PicHeightInCtbsY[ spps_subpic id ] - 1, uključujući prvu i poslednju vrednost raspona. Kada nije prisutan, vrednost za num_tile_rows_minus1 se zaključuje da je jednaka nuli. Promenljiva NumTilesInPic se postavlja da bude jednaka (num_tile_columns_minus1 1) * ( num_tile_rows_minus1 1).
[0131] Kada je single_tile_in_subpic _flag jednak nuli, NumTilesInPic je veći od nule. Element uniform_tile_spacing_flag jednak jedan precizira da su granice kolona pločica i granice redova pločica ravnomerno distribuirane preko podslike. Element uniform_tile_spacing_flag jednak nuli precizira da granice kolona pločica i granice redova pločica nisu ravnomerno distribuirane preko podslike već se eksplicitno signaliziraju putem elemenata sintakse tile_column_width_minus1[ i ] i tile_row_height_minus1 [ i ]. Kada nije prisutan, vrednost za uniform_tile_spacing_flag se zaključuje da je jednaka jedan. Element tile_column_width_minus1[ i ] plus 1 precizira širinu i-te kolone pločica u jedinicama CTB blokova. Element tile_row_height_minus1[ i ] plus 1 precizira visinu i-tog reda pločica u jedinicama CTB blokova.
[0132] Sledeće promenljive se izvode pozivanjem procesa konverzije CTB raster skeniranja i skeniranja pločica: lista ColWidth[ i ] za i u rasponu od nula do num_tile_columns_minus1, uključujući prvu i poslednju vrednost raspona, koja precizira širinu i-te kolone pločica u jedinicama CTB blokova; lista RowHeight[j] za j u rasponu od nula do num_tile_rows_minus1, uključujući prvu i poslednju vrednost raspona, koja precizira visinu j-tog reda pločica u jedinicama CTB blokova; lista ColBd[ i ] za i u rasponu od nula do num_tile_columns_minus1 1, uključujući prvu i poslednju vrednost raspona, koja precizira lokaci ju granice i-te kolone pločica u jedinicama CTB blokova; lista RowBd[ j ] za j u rasponu od nula do num_tile_rows_minus1 1, uključujući prvu i poslednju vrednost raspona, koja precizira granicu j-tog reda pločica u jedinicama CTB blokova; lista CtbAddrRsToTs[ ctbAddrRs ] za ctbAddrRs u rasponu od nula do PicSizeInCtbsY - 1, uključujući prvu i poslednju vrednost raspona, koja precizira konverziju iz CTB adrese u CTB raster skenu slike u CTB adresu u skenu pločica; lista CtbAddrTsToRs[ ctbAddrTs ] za ctbAddrTs u rasponu od nule do PicSizeInCtbsY - 1, uključujući prvu i poslednju vrednost raspona, koja precizira konverziju iz CTB adrese u skenu pločica u CTB adresu u CTB raster skenu slike; lista TileId[ ctbAddrTs ] za ctbAddrTs u rasponu od nula do PicSizeInCtbsY - 1, uključujući prvu i poslednju vrednost raspona, koja precizira konverziju iz CTB adrese u skenu pločica u identifikator pločica; lista NumCtusInTile[ tileIdx ] za tileIdx u rasponu od nule do PicSizeInCtbsY - 1, uključujući prvu i poslednju vrednost raspona, koja precizira konverziju iz indeksa pločica u broj CTU jedinica u pločici; lista FirstCtbAddrTs[ tileIdx ] za tileIdx u rasponu od nula do NumTilesInPic - 1, uključujući prvu i poslednju vrednost raspona, koja precizira konverziju iz identifikatora pločica u CTB adresu u skenu pločica prvog CTB bloka u pločici; lista ColumnWidthInLumaSamples[ i ] za i u rasponu od nula do num_tile_columns_minus1, uključujući prvu i poslednju vrednost raspona, koja precizira širinu i-te kolone pločica u jedinicama luma odbiraka; i lista RowHeightInLumaSamples[ j ] za j u rasponu od nula do num_tile_rows_minus1, uključujući prvu i poslednju vrednost raspona, koja precizira visinu j-tog reda pločica u jedinicama luma odbiraka. Vrednosti za ColumnWidthInLumaSamples[ i ] za i u rasponu od nula do num_tile_columns_minus1, uključujući prvu i poslednju vrednost raspona, i RowHeightInLumaSamples[ j ] za j u rasponu od nula do num_tile_rows_minus1, uključujući prvu i poslednju vrednost raspona, su sve veće od nula.
[0133] Element loop_filter_across_tiles_enabled _flag jednak jedan precizira da operacije filtriranja u petlji mogu da se vrše preko granica pločica u podslikama koje referenciraju SPPS. Element loop_filter_across_tiles_enabled _flag jednak nuli precizira da se operacije filtriranja u petlji ne vrše preko granica pločica u podslikama koje referenciraju SPPS. Operacije filtriranja u petlji uključuju operacije filtera za uklanjanje blokovskih ostataka, SAO filtera i filtera adaptivne petlje. Kada nije prisutan, vrednost za loop_filter_across_tiles_enabled _flag se zaključuje da je jednaka jedan. Element loop_filter_across_subpic _enabled flag jednak jedan precizira da operacije filtriranja u petlji mogu da se vrše preko granica podslka u podslikama koje referenciraju SPPS. Element loop_filter_across_subpic _enabled flag jednak nuli precizira da se operacije filtriranja u petlji ne vrše preko granica podslka u podslikama koje referenciraju SPPS. Operacije filtriranja u pe tlji uključuju operacije filtera za uklanjanje blokovskih ostataka, SAO filtera i filtera adaptivne petlje. Kada nije prisutan, vrednost za loop_filter_across_subpic _enabled flag se zaključuje da je jednaka vrednosti loop_filter_across_tiles_enabled_flag.
[0134] Generalna sintaksa i semantika za zaglavlje grupe pločica su sledeće.
[0135] Vrednost elementa sintakse za zaglavlje grupe pločica tile group_pic_parameter set id i tile_group_pic_order_cnt_lsb biće isti u svim zaglavljima grupa pločica kodirane slike. Vrednost elementa sintakse za zaglavlje grupe pločica tile _group_subpic _id biće isti u svim zaglavljima grupa pločica kodirane podslike. Element tile_group_subpic_id identifikuje podsliku kojoj grupa pločica pripada. Dužina tile_group_subpic id je subpic_id_len_minus1 1 bita. Element tile_group_subpic_parameter_set_id precizira vrednost za spps_subpic_parameter_set_id za SPPS koji je u upotrebi. Vrednost tile group spps_parameter set id je u rasponu od nula do šezdeset tri, uključujući prvu i poslednju vrednost raspona.
[0136] Sledeće promenljive se izvode i zamenjuju odnosne promenljive izvedene iz aktivnog SPS skupa:
PicWidthInLumaSamples = SubpicWidthInLumaSamples[ tile_group_subpic_id]
PicHeightInLumaSamples = PicHeightInLumaSamples[ tile_group_subpic_id]
2
SubPicRightBorderInPic = SubPicRightBorderInPic[ tile_group_subpic id] SubPicBottomBorderInPic = SubPicBottomBorderInPic[ tile_group_subpic_id] PicWidthInCtbsY = SubPicWidthInCtbsY[ tile_group_subpic id] PicHeightInCtbsY = SubPicHeightInCtbsY[ tile_group_subpic_id] PicSizeInCtbsY = SubPicSizeInCtbsY[ tile_group_subpic_id] PicWidthInMinCbsY = SubPicWidthInMinCbsY[ tile_group_subpic_id] PicHeightInMinCbsY = SubPicHeightInMinCbsY[ tile_group subpic id] PicSizeInMinCbsY = SubPicSizeInMinCbsY[ tile_group subpic id] PicSizeInSamplesY = SubPicSizeInSamplesY[ tile_group_subpic_id] PicWidthInSamplesC = SubPicWidthInSamplesC[ tile_group_subpic_id] PicHeightInSamplesC = SubPicHeightInSamplesC[ tile_group_subpic_id]
[0137] Sintaksa za jedinicu stabla kodiranja je sledeća.
[0138] Sintaksa i semantika quadtree kodiranja su sledeće.
(nastavak)
[0139] Element qt_split_cu_flag[ x0 ][ y0 ] precizira da li je jedinica kodiranja podeljena u jedinice kodiranja polovine horizontalne i vertikalne veličine. Indeksi niza x0, y0 preciziraju lokaciju ( x0, y0 ) gornjeg levog luma odbirka razmatranog bloka kodiranja u odnosu na gornji levi luma odbirak slike. Kada qt_split_cu_flag[ x0 ][ y0 ] nije prisutan, primenjivo je sledeće: Ako su jedan ili više sledećih uslova tačni, vrednost za qt_split_cu_flag[ x0 ][ y0 ] se zaključuje da je jednaka
jedan. x0 ( 1 << log2CbSize) je veće od SubPicRightBorderInPic i (1 << log2CbSize ) je veće od MaxBtSizeC ako je treeType jednako DUAL_TREE_CHROMA ili veće od MaxBtSizeY u protivnom. y0 (1 << log2CbSize ) je veće od SubPicBottomBorderInPic i (1 << log2CbSize) je veće od MaxBtSizeC ako je treeType jednako DUAL_TREE_CHROMA ili veće od MaxBtSizeY u protivnom.
[0140] U protivnom, ako su svi sledeći uslovi tačni, vrednost za qt_split_cu_flag[ x0 ][ y0 ] se zaključuje da je jednaka 1: x0 ( 1 << log2CbSize ) je veće od SubPicRightBorderInPic, y0 ( 1 << log2CbSize ) je veće od SubPicBottomBorderInPic, i (1 << log2CbSize ) je veće od MinQtSizeC ako je treeType jednako DUAL_TREE_CHROMA ili veće od MinQtSizeY u protivnom. U protivnom, vrednost za qt_split_cu_flag[ x0 ] [ y0 ] se zaključuje da je jednaka nuli.
[0141] Sintaksa i semantika za više-tipno stablo su sledeće.
(nastavak)
2 (nastavak)
[0142] Element mtt split cu flag jednak nuli precizira da jedinica kodiranja nije podeljena. Element mtt split cu flag jednak jedan precizira da je jedinica kodiranja podeljena na dve jedinice kodiranja putem binarne podele ili na tri jedinice kodiranja putem ternarne podele kako je naznačeno elementom sintakse element mtt_split_cu_binary_flag. Binarna ili ternarna podela može biti vertikalna ili horizontalna kako je naznačeno elementom sintakse mtt_split_cu_vertical_flag. Kada mtt_split_cu _flag nije prisutan, vrednost za mtt split cu flag se zaključuje na sledeći način. Ako su jedan ili više sledećih uslova tačni, vrednost za mtt_split_cu_flag se zaključuje da je jednaka 1: x0 cbWidth je veće od SubPicRightBorderInPic, i y0 cbHeight je veće od SubPicBottomBorderInPic. U protivnom, vrednost za mtt split cu flag se zaključuje da je jednaka nuli.
[0143] Postupak izvođenja za inter predikciju vektora pokreta za luma komponentu je sledeći. Izlazi ovog postupka su: predikcija vektora pokreta mvLXCol sa tačnošću od frakcionog odbirka od 1/16, i zastavica za dostupnost availableFlagLXCol. Promenljiva currCb precizira trenutni luma blok kodiranja na lokaciji luma komponente ( xCb, yCb ). Promenljive mvLXCol i availableFlagLXCol se izvode na sledeći način. Ako je tile_group_temporal_mvp_enabled flag jednak nuli, ili je referentna slika trenutna slika, obe komponente mvLXCol se postavljaju da budu jednake nuli i availableFlagLXCol se postavlja da bude jednak nuli. U protivnom (tile_group_temporal_mvp_enabled flag je jednak jedan i referentna slika nije trenutna slika), primenjuju se sledeći koraci u datom redosledu. Donji desni kolocirani vektor pokreta se izvodi na sledeći način:
[0144] Ako je yCb >> CtbLog2SizeY jednako yColBr >> CtbLog2SizeY, yColBr je manje od SubPicBottomBorderInPic i xColBr je manje od SubPicRightBorderInPic, primenjivo je sledeće. Promenljiva colCb precizira luma blok kodiranja koji pokriva modifikovanu lokaciju koju daje ( ( xColBr >> 3) << 3, (yColBr >> 3) << 3 ) unutar kolocirane slike koju precizira ColPic. Lokacija luma komponente (xColCb, yColCb ) se postavlja da bude jednaka gornjem levom odbirku kolociranog luma bloka kodiranja koji precizira colCb u odnosu na gornji levi luma odbirak kolocirane slike koju precizira ColPic. Postupak izvođenja za koloc irane vektore pokreta se poziva pomoću currCb, colCb, (xColCb, yColCb), refldxLX i sbFlag postavljenih da budu jednaki nuli kao ulazima, a izlaz se dodeljuje u mvLXCol i availableFlagLXCol. U protivnom, obe komponente mvLXCol se postavljaju da budu jednake nuli i availableFlagLXCol se postavlja da bude jednak nuli.
[0145] Postupak izvođenja vremenskih kandidata za trougaono objedinjavanje je sledeći. Promenljive mvLXColC0, mvLXColC1, availableFlagLXColC0 i availableFlagLXColC1 se izvode na sledeći način. Ako je tile_group_temporal_mvp_enabled flag jednak nuli, obe komponente mvLXColC0 i mvLXColC1 se postavljaju da budu jednake nuli i availableFlagLXColC0 i availableFlagLXColC1se postavljaju da budu jednaki nuli. U protivnom (tile_group_temporal_mvp_enabled flag je jednak 1), primenjuju se sledeći korac i u datom redosledu. Donji desni kolocirani vektor pokreta mvLXColC0 se izvodi na sledeći način:
[0146] Ako je yCb >> CtbLog2SizeY jednako yColBr >> CtbLog2SizeY, yColBr je manje od SubPicBottomBorderInPic i xColBr je manje od SubPicRightBorderInPic, primenjivo je sledeće. Promenljiva colCb precizira luma blok kodiranja koji pokriva modifikovanu lokaciju koju daje
[0147] ( ( xColBr >> 3) << 3, (yColBr >> 3) << 3 ) unutar kolocirane slike koju precizira ColPic. Lokacija luma komponente (xColCb, yColCb ) se postavlja da bude jednaka gornjem levom odbirku kolociranog luma bloka kodiranja koji precizira colCb u odnosu na gornji levi luma odbirak kolocirane slike koju precizira ColPic. Postupak izvođenja za kolocirane vektore pokreta se poziva pomoću currCb, colCb, (xColCb, yColCb ), refIdxLXC0 i sbFlag postavljenih da budu jednaki nuli kao ulazima, a izlaz se dodeljuje u mvLXColC0 and availableFlagLXColC0. U protivnom, obe komponente mvLXColC0 se postavljaju da budu jednake nuli i availableFlagLXColC0 se postavlja da bude jednak nuli.
[0148] Postupak izvođenja za konstruisane CPMV kandidate za afino objedinjavanje je sledeći. Četvrti (kolocirani donji desni) CPMV vektor pokreta cpMvLXCorner[ 3 ], referentni indeks refIdxLXCorner[ 3 ], zastavica za korišćenje liste za predikciju predFlagLXCorner[ 3 ] i zastavica za dostupnost availableFlagCorner[ 3 ] gde je X jednako 0 i 1 se izvode na sledeći način. Referentni indeksi za vremenske kandidate za objedinjavanje, refIdxLXComer[ 3 ], gde je X jednako nula ili jedan, postavljaju se da budu jednaki nuli. Promenljive mvLXCol i availableFlagLXCol, gde je X jednako nula ili jedan, izvode se na sledeći način. Ako je tile_group temporal_mvp_enabled flag jednak nuli, obe komponente mvLXCol se postavljaju da budu jednake nuli i availableFlagLXCol se postavlja da bude jednak nuli. U protivnom (tile_group_temporal_mvp_enabled flag je jednak jedan), primenjivo je sledeće:
[0149] Ako je yCb >> CtbLog2SizeY jednako yColBr >> CtbLog2SizeY, yColBr je manje od SubPicBottomBorderInPic i xColBr je manje od SubPicRightBorderInPic, primenjivo je sledeće. Promenljiva colCb precizira luma blok kodiranja koji pokriva modifikovanu lokaciju koju daje ( ( xColBr >> 3) << 3, (yColBr >> 3) << 3 ) unutar kolocirane slike koju precizira ColPic. Lokacija luma komponente (xColCb, yColCb ) se postavlja da bude jednaka gornjem levom odbirku kolociranog luma bloka kodiranja koji precizira colCb u odnosu na gornji levi luma odbirak kolocirane slike koju precizira ColPic. Postupak izvođenja za kolocirane vektore pokreta se poziva pomoću currCb, colCb, (xColCb, yColCb), refldxLX i sbFlag postavljenih da budu jednaki nuli kao ulazima, a izlaz se dodeljuje u mvLXCol i availableFlagLXCol. U protivnom, obe komponente mvLXCol se postavljaju da budu jednake nuli i availableFlagLXCol se postavlja da bude jednak nuli. Zameniti sva pojavljivanja pic width in luma samples sa PicWidthInLumaSamples. Zameniti sva pojavljivanja pic_height_in_luma samples sa PicHeightInLuma-Samples.
[0150] U drugom primeru izvođenja, sintaksa i semantika za RBSP skupa parametara za sekvencu su sledeće.
2
(nastavak)
[0151] Element subpic id len minus1 plus 1 precizira broj bitova upotrebljenih za predstavljanje elementa sintakse subpic_id[ i ] u SPS, spps subpic id u SPPS koji referencira SPS, i tile_group_subpic_id u zaglavljima grupa pločica koji referenciraju SPS. Vrednost subpic_id_len_minus1 je u rasponu Ceil( Log2( num_subpic_minus1 3) do osam, uključujući prvu i poslednju vrednost raspona. Zahtev je usaglašenosti (konformiranja) toka bitova da nema preklapanja među sub-picture[i] za i od 0 do num subpic minus1, uključujući prvu i poslednju vrednost raspona. Svaka podslika može biti podslika sa vremenskim ograničenjem pokreta.
[0152] Generalna semantika za zaglavlje grupe pločica je sledeća. Element tile_group_subpic_id identifikuje podsliku kojoj grupa pločica pripada. Dužina tile_group_subpic_id je subpic_id_len_minus1 1 bita. Element tile_group_subpic id jednak jedan naznačava da grupa pločica ne pripada nijednoj podslici.
[0153] U trećem primeru izvođenja, sintaksa i semantika za zaglavlje NAL jedinice su sledeće.
[0154] Element nuh subpicture id len precizira broj bitova upotrebljenih za predstavljanje elementa sintakse koji precizira identifikatora podslike. Kada je vrednost nuh subpicture id len veća od nule, prvi nuh_subpicture_id_len-ti bitovi iza nuh_reserved_zero_4bits precizira identifikatora podslike kojoj korisni podaci NAL jedinice pripadaju. Kada je nuh subpicture _id len veći od nule, vrednost nuh subpicture _id len je jednaka vrednosti subpic id_len_minus1 u aktivnom SPS skupu. Vrednost nuh subpicture id len za ne-VCL NAL jediice je ograničena na sledeći način. Ako je nal_unit_type jednak SPS_NUT ili PPS_NUT, nuh_subpicture_id_len je jednak nuli. nuh_reserved_zero_3bits je jednak ’000’. Dekoderi će ignorisati (npr. ukloniti iz toka bitova i odbaciti) NAL jedinice čija vrednost za nuh_reserved_zero_3bits nije jednaka ’000’.
[0155] U četvrtom primeru izvođenja, sintaksa za ugnežđivanje podslika je sledeća.
2
(nastavak)
[0156] Element all sub_pictures flag jednak jedan precizira da se ugneždene SEI poruke primenjuju na sve podslike. all_sub_pictures_flag jednak jedan precizira da su podslike na koje se ugneždene SEI poruke primenjuju izričito signalizirane narednim elementima sintakse. Element nesting_num_sub_pictures_minus1 plus 1 precizira broj podslika na koje se ugneždene SEI poruke primenjuju. Element nesting_sub_picture_id[ i ] naznačava identifikator podslike za i-tu podsliku na koju se ugneždene SEI poruke primenjuju. Element sintakse nesting_sub_picture_id[ i ] se predstavlja pomoću Ceil( Log2( nesting_num_sub_pictures_minus1 1 )) bita. sub_picture_nesting_zero_bit je jednak nuli.
[0157] SLIKA 9 je šematski prikaz primera uređaja za video kodiranje 900. Uređaj za video kodiranje 900 je pogodan za implementiranje otkrivenih primera/izvođenja kako je ovde opisano. Uređaj za video kodiranje 900 obuhvata downstream portove 920, upstream portove 950 i/ili primopredajne jedinice (Tx/Rx) 910, uključujući predajnike i/ili prijemnike za slanje podataka upstream i/ili downstream preko mreže. Uređaj za video kodiranje 900 takođe uključuje procesor 930 koji uključuje logičku jedinicu i/ili centralnu procesorsku jedinicu (CPU) za obradu podataka i memoriju 932 za skladištenje podataka. Uređa j za video kodiranje 900 može takođe da obuhvata električne komponente, komponente za optičko-električnu konverziju (OE), komponente za električno-optičku konverziju (EO) i/ili komponente za bežičnu komunikaciju povezane sa upstream portovima 950 i/ili downstream portovima 920 za slanje podataka preko električnih, optičkih ili bežičnih komunikacionih mreža. Uređaj za video kodiranje 900 može takođe da uključuje ulazne i/ili izlazne (I/O) uređaje 960 za prenos podataka do i od korisnika. I/O uređaji 960 mogu da uključuju izlazne uređaje kao što su ekran za prikazivanje video podataka, zvučnici za izlaz audio podataka, itd. I/O uređaji 960 mogu takođe da uključuju ulazne uređaje, kao što su tastatura, miš, trackball miš itd, i/ili odgovarajući interfejsi za interakciju sa tim izlaznim uređajima.
[0158] Procesor 930 se implementira hardverom i softverom. Procesor 930 se može implementirati kao jedan ili više CPU čipova, jezgara (npr. kao višejezgarni procesor), programabilnih gejtovskih polja (FPGA), specifičnih integrisanih kola (ASIC) i procesora digitalnih signala (DSP). Procesor 930 je u komunikaciji sa downstream portovima 920, Tx/Rx 910, upstream portovima 950 i memorijom 932. Procesor 930 obuhvata modul za kodiranje 914. Modul za kodiranje 914 implementira gore opisana otkrivena izvođenja, kao što su metode 100, 1000, 1100 i/ili mehanizam 700, koji mogu da koristi tok bitova 500, sliku 600 i/ili sliku 800. Modul za kodiranje 914 takođe može da implementira bilo koji drugi metod/mehanizam koji je ovde opisan. Dalje, modul za kodiranje 914 može da implementira kodek sistem 200, koder 300 i/ili dekoder 400. Na primer, modul za kodiranje 914 može da se koristi za signaliziranje i/ili pribavljanje lokacija i veličina podslika u SPS skupu. U drugom primeru, modul za kodiranje 914 može da ograničava širine podslika i visine podslika da budu umnošci veličine CTU jedinice osim ako su te podslike pozicionirane na desnu ivicu slike odnosno donju ivicu slike. U drugom primeru, modul za kodiranje 914 može da ograničava podslike da pokrivaju sliku bez praznina ili preklapanja. U drugom primeru, modul za kodiranje 914 se može koristiti za signaliziranje i/ili pribavljanje podataka koji ukazuju na to da su neke podslike podslike sa vremenskim ograničenjem pokreta, a druge podslike nisu. U drugom primeru, modul za kodiranje 914 može da signalizira kompletan skup identifikatora podslika u SPS skupu i da uključi identifikator podslike u u svako zaglavlje isečka da bi ukazao na podsliku koja sadrži odgovarajuće isečke. U drugom primeru, modul za kodiranje 914 može da signalizira nivoe za svaku podsliku. U tom smislu, modul za kodiranje 914 dovodi do toga da uređaj za video kodiranje 900 obezbeđuje dodatnu funkcionalnost, izbegava određene obrade da bi se smanjio utrošak resursa za obradu i/ili povećava efikasnost kodiranja kod particionisanja i kodiranja video podataka. Shodno tome, modul za kodiranje 914 poboljšava funkcionalnost uređaja za video kodiranje 900, a takođe i rešava probleme koji su specifični za veštine video kodiranja. Dalje, modul za kodiranje 914 vrši transformaciju uređaja za v ideo kodiranje 900 u drugo stanje. Alternativno, modul za kodiranje 914 se može implementirati kao instrukcije koje se skladište u memoriji 932 i koje izvršava procesor 930 (npr. kao računarski programski proizvod koji se čuva na ne-prolaznom medijumu).
[0159] Memorija 932 obuhvata jedan ili više tipova memorije kao što je disk, tape drive, SSD uređaj, memorija samo za čitanje (ROM), memorija sa slučajnim pristupom (RAM), fleš memorija, ternarna memorija koja se adresira na sadržaj (TCAM), statička memorija sa slučajnim pristupom (SRAM), itd. Memorija 932 se može koristiti kao uređaj za skladištenje podataka prekomernog protoka, za skladištenje programa kada su ti programi izabrani za izvršenje, i za skladištenje instrukcija i podataka koji se čitaju tokom izvršavanja programa.
[0160] SLIKA 10 je dijagram toka primera metoda 1000 za kodiranje identifikatora podslike u toku bitova, kao što je tok bitova 500, da bi se podržalo dekodiranje podslika, kao što su podslike 522, 523, 622, 722 i/ili 822. Metod 1000 može da koristi koder, kao što je kodek sistem 200, koder 300 i/ili uređaj za video kodiranje 900 kada izvršava metod 100.
[0161] Metod 1000 može da počne kada koder primi video sekvencu koja uključuje mnoštvo slika i odluči da kodira tu video sekvencu u tok bitova, na primer na osnovu korisničkog unosa. Video sekvenca se particionira na slike/frejmove radi daljeg particionisanja pre kodiranja. U koraku 1001, slika se particioniše na mnoštvo podslika. Svaka od mnoštva podslika se dalje particioniše na jedan ili više isečaka. U nekim primerima, particionisanje je ograničeno tako da skup mnoštva podslika pokriva ukupnu površinu slike bez praznina i bez preklapanja.
[0162] U koraku 1003, SPS skup se kodira u tok bitova. SPS skup obuhvata identifikatore podslika za svaku podsliku particionisanu iz slike. SPS skup može dalje da obuhvata veličinu podslike za svaku od mnoštva podslika. Veličina podslike
2
može uključivati visinu podslike u luma odbircima i širinu podslike u luma odbircima. SPS skup može dalje da obuhvata lokaci ju podslike za svaku od mnoštva podslika. Lokacija podslike može uključivati rastojanje pomeraja između gornjeg levog odbirka odgovarajuće podslike i gornjeg levog odbirka slike. SPS skup može dalje da obuhvata indikaciju da su jedna ili više podslika podslike sa vremenskim ograničenjem pokreta.
[0163] U koraku 1005, zaglavlja isečaka se kodiraju u tok bitova. Zaglavlja isečaka obuhvataju identifikatore podslika koji ukazuju da su isečci povezani sa zaglavljima isečaka uključeni u naznačenu podsliku. U koraku 1007, jedna ili više od mnoštva podslika se takođe kodira u tok bitova. U koraku 1009, tok bitova se skladišti radi prenosa prema dekoderu. Tok bitova se tada može preneti ka dekoderu po želji. U nekim primerima, pod-tok bitova se može ekstrahovati iz kodiranog toka bitova. U tom slučaju, preneti tok bitova je pod-tok bitova. U drugim primerima, kodirani tok bitova se može preneti radi ekstrakcije podtoka bitova u dekoderu. U još drugih primera, kodirani tok bitova se može dekodirati i prikazati bez ekstrakcije pod-toka bitova. U bilo kom od ovih primera, kompletna lista svih identifikatora podslika se može se poslati u SPS skupu zajedno sa relevantnim informacijama za određivanje veličine. Svako zaglavlje isečka sadrži identifikator podslike koji ukazuje na podsliku koja sadrži odgovarajući isečak. Na taj način, podslike i odgovarajući isečci se mogu ekstrahovati i pozicionirati bez pozivanja na druge podslike. Stoga, identifikatori podslika podržavaju povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0164] SLIKA 11 je dijagram toka primera metoda 1100 za dekodiranje toka bitova, kao što su tok bitova 500 i/ili pod-tok bitova 501, podslika, kao što su podslike 522, 523, 622, 722 i/ili 822, na osnovu identifikatora podslika. Metod 1100 može da koristi dekoder, kao što je kodek sistem 200, dekoder 400 i/ili uređaj za video kodiranje 900 kada izvršava metod 100. Na primer, metod 1100 se može primeniti radi dekodiranja toka bitova kreiranog kao rezultat metoda 1000.
[0165] Metod 1100 može da počne kad dekoder počne da prima tok bitova koji sadrži podslike. Tok bitova može uključivati kompletnu video sekvencu ili tok bitova može biti pod-tok bitova koji sadrži smanjeni skup podslika za odvojenu ekstrakciju. U koraku 1101, prima se tok bitova. Tok bitova obuhvata SPS skup, jednu ili više podslika particionisanih iz slike i jedno ili više zaglavlja isečaka povezanih sa isečcima sadržanim u jednoj ili više podslika. [0166] U koraku 1103, SPS se analizira da bi se dobili identifikatori podslike za jednu ili više podslika. Dalje, zaglavlja isečaka se analiziraju da bi se dobio identifikator trenutne podslike koji ukazuje da su isečci povezani sa zaglavljima isečaka sadržani u trenutnoj podslici identifikovanoj identifikatorom trenutne podslike. SPS skup može dalje da obuhvata veličinu podslike za svaku podsliku particionisanu iz slike. Veličina podslike može uključivati visinu podslike u luma odbircima i širinu podslike u luma odbircima. SPS skup može dalje da obuhvata lokaciju podslike za svaku podsliku particionisanu iz slike. Lokacija podslike može uključivati rastojanje pomeraja između gornjeg levog odbirka odgovarajuće podslike i gornjeg levog odbirka slike. SPS skup može dalje da obuhvata indikaciju da su jedna ili više podslika podslike sa vremenskim ograničenjem pokreta. Dakle, SPS skup se takođe može analizirati da bi se dobila veličina podslike, lokacija podslike i/ili indikacije od podslikama sa vremenskim ograničenjem pokreta.
[0167] U koraku 1105, isečci se mogu upariti sa trenutnom podslikom iz jedne ili više podslika na osnovu identifikatora trenutne podslike u zaglavlju/zaglavljima isečka. Dalje, isečci se mogu pozicionirati na osnovu veličine podslike i lokacije podslike za trenutnu podsliku. Trenutna podslika se zatim može dekodirati na osnovu identifikatora podslike da bi se kreirala video sekvenca, na primer korišćenjem korelacije između identifikatora podslika između SPS skupa i zaglavlja isečaka zajedno sa pozicijom isečaka određenih na osnovu lokacije i veličine podslike. Video sekvenca se zatim može proslediti za prikaz u koraku 1107. Shodno tome, kompletan spisak svih identifikatora podslike može se poslati u SPS skupu zajedno sa relevantnim informacijama o određivanju veličine. Svako zaglavlje isečka sadrži identifikator podslike koji ukazuje na podsliku koja sadrži odgovarajući isečak. Na taj način, podslike i odgovarajući isečci se mogu ekstrahovati i pozicionirati bez pozivanja na druge podslike. Stoga, identifikatori podslika podržavaju povećanu funkcionalnost i/ili povećanu efikasnost kodiranja, što smanjuje upotrebu mrežnih resursa, memorijskih resursa i/ili resursa za obradu u koderu i dekoderu.
[0168] SLIKA 12 je šematski prikaz primera sistema 1200 za signaliziranje identifikatora podslika, kao što su identifikatori podslike za podslike 522, 523, 622, 722 i/ili 822, putem toka bitova, kao što je tok bitova 500 i/ili pod-tok bitova 501. Sistem 1200 se može implementirati putem kodera i dekodera kao što je kodek sistem 200, koder 300, dekoder 400 i/ili uređaj za video kodiranje 900. Dalje, sistem 1200 se može koristiti kod implementiranja metoda 100, 1000 i/ili 1100.
[0169] ] Sistem 1200 uključuje video koder 1202. Video koder 1202 obuhvata modul za particionisanje 1201 za particionisanje slike na mnoštvo podslika; particionisanje svake od mnoštva podslika na jedan ili više isečaka; i particionisanje svake od mnoštva podslika na jedan ili više isečaka. Video koder 1202 dalje obuhvata modul za kodiranje 1203 za kodiranje u tok bitova SPS skupa koji obuhvata identifikatore podslike za svaku podsliku particionisanu iz slike; kodiranje u tok bitova zaglavlja isečaka koja sadrže identifikatore podslike koji ukazuju na to da su ti isečci uključeni u naznačene podslike; i kodiranje jedne ili više od mnoštva podslika u tok bitova. Video koder 1202 dalje obuhvata modul za skladištenje 1205 za skladištenje toka bitova radi prenosa prema dekoderu. Video koder 1202 dalje obuhvata modul za prenos 1207 za prenos toka bitova koji uključuje podsliku/podslike i identifikatore podslike prema dekoderu. Video koder 1202 može dalje biti konfigurisan da izvrši bilo koji od koraka metoda 1000.
[0170] Sistem 1200 takođe uključuje video dekoder 1210. Video dekoder 1210 obuhvata prijemni modul 1211 za prijem toka bitova koji obuhvata skup parametara za sekvencu (SPS), jednu ili više podslika particionisanih iz slike, i jedno ili više zaglavlja isečka povezanih sa jednim ili više isečaka. Video dekoder 1210 dalje obuhvata modul za analiziranje 1213 za analiziranje SPS skupa da bi se dobili identifikatori podslike za jednu ili više podslika, i analiziranje zaglavlja isečaka da bi se dobio identifikator trenutne podslike koji ukazuje da su isečci uključeni u trenutnu podsliku iz jedne ili više podslika. Video dekoder 1210 dalje obuhvata modul za dekodiranje 1215 za dekodiranje trenutne podslike na osnovu identifikatora podslike radi kreiranja video sekvence. Video dekoder 1110 dalje obuhvata modul za prosleđivanje 1217 za prosleđivanje video sekvence za prikaz. Video dekoder 1210 može dalje biti konfigurisan da izvrši bilo koji od koraka metoda 1100.
[0171] Prva komponenta je direktno povezana sa drugom komponentom kada nema komponenti koje se nalaze između, osim
2
Claims (16)
- linije, voda ili drugog medijuma između prve komponente i druge komponente. Prva komponenta je indirektno povezana sa drugom komponentom kada između prve komponente i druge komponente postoje druge komponente osim linije, voda ili drugog medijuma. Termin „povezano“ i njegove varijante uključuju i direktno spojeno i indirektno spojeno. Upotreba izraza „oko“ označava opseg koji uključuje 610% broja koji sledi ako nije drugačije navedeno.[0172] Takođe treba razumeti da se koraci primera metoda koji su ovde izloženi ne moraju nužno izvoditi opisanim redosledom, i da redosled koraka tih metoda treba shvatiti samo kao primer. Slično, u te metode se mogu uključiti dodatni koraci, a određeni koraci se mogu izostaviti ili kombinovati, u postupcima koji su u skladu sa različitim izvođenjima ovog otkrivanja.[0173] Iako je u ovom otkrivanju dato nekoliko izvođenja, može se razumeti da otkriveni sistemi i metodi mogu biti oličeni u mnogim drugim specifičnim oblicima bez odstupanja od duha ili obima ovog otkrivanja. Ove primere treba smatrati ilustrativnim i neograničavajućim, i namera nije da se ograniči na detalje koji su ovde pruženi. Na primer, različiti elementi ili komponente se mogu kombinovati ili integrisati u drugi sistem ili se određene karakteristike mogu izostaviti, ili ne implementirati.[0174] Pored toga, tehnike, sistemi, podsistemi i metodi opisani i ilustrovani u različitim izvođenjima kao diskretni ili odvojeni se mogu kombinovati ili integrisati sa drugim sistemima, komponentama, tehnikama ili metodima bez odstupanja od obima ovog otkrivanja. Druge primere promena, supstitucija i izmena može utvrditi stručnjak u ovoj oblasti i one se mogu izvršiti bez odstupanja od obima ovog otkrivanja.Zahtevi1. Metod implementiran u dekoderu, gde metod obuhvata:prijem (1101), putem prijemnika dekodera, toka bitova koji obuhvata skup parametara za sekvencu (SPS), jednu ili više podslika particionisanih iz slike, i jedno ili više zaglavlja isečka povezanih sa jednim ili više isečaka; pri čemu SPS skup obuhvata kompletan skup svih identifikatora podslika, za tu jednu ili više podslika,pri čemu svaka podslika odgovara jednom identifikatoru podslike; i pri čemu zaglavlje isečka obuhvata identifikator trenutne podslike, a identifikator trenutne podslike ukazuje na podsliku koja sadrži isečak povezan sa zaglavljem isečka; pri čemu SPS skup dalje obuhvata veličinu podslike i lokaciju podslike za svaku podsliku particionisanu iz slike;dekodiranje (1103), putem procesora dekodera, SPS skupa da bi se dobili identifikatori podslike, veličina podslike i lokacija podslike za svaku od tih jedne ili više podslika; idekodiranje (1103), putem procesora, zaglavlja isečaka da bi se dobio identifikator trenutne podslike; generisanje (1105), putem procesora, trenutne podslike na osnovu identifikatora trenutne podslike radi kreiranja video sekvence.
- 2. Metod prema zahtevu 1, naznačen time što dekodiranje trenutne podslike uključuje:određivanje (1105) koji isečak pripada kojoj podslici u jednoj ili više podslika na osnovu identifikatora trenutne podslike; ipozicioniranje (1105) isečka na osnovu veličine podslike i lokacije podslike za trenutnu podsliku.
- 3. Metod prema bilo kom od zahteva 1-2, naznačen time što lokacija podslike uključuje rastojanje pomeraja između gornjeg levog odbirka trenutne podslike i gornjeg levog odbirka slike.
- 4. Metod prema bilo kom od zahteva 1-3, naznačen time što veličina podslike uključuje visinu podslike u luma odbircima i širinu podslike u luma odbircima.
- 5. Metod implementiran u koderu, gde metod obuhvata:particionisanje (1001), putem procesora kodera, slike na mnoštvo podslika;particionisanje (1001), putem procesora, svake od mnoštva podslika na jedan ili više isečaka;kodiranje (1003) u tok bitova, putem procesora, skupa parametara za sekvencu, SPS, koji obuhvata kompletan skup svih identifikatora podslika za mnoštvo podslika particionisanih iz slike, pri čemu svaka podslika odgovara jednom identifikatoru podslike, a SPS skup dalje obuhvata veličinu podslike i lokaciju podslike za svaku podsliku particionisanu iz slike;kodiranje (1005) u tok bitova, putem procesora, zaglavlja isečaka koja obuhvataju identifikatore podslika radi označavanja da su isečci uključeni u naznačene podslike;kodiranje (1007), putem procesora, jedne ili više od mnoštva podslika u tok bitova.
- 6. Metod prema zahtevu 5, gde metod dalje obuhvata:skladištenje (1009), u memoriji kodera, toka bitova radi slanja prema dekoderu.
- 7. Metod prema bilo kom od zahteva 5-6, naznačen time što lokacija podslike uključuje rastojanje pomeraja između gornjeg levog odbirka odgovarajuće podslike i gornjeg levog odbirka slike.2
- 8. Metod prema bilo kom od zahteva 5-7, naznačen time što veličina podslike uključuje visinu podslike u luma odbircima i širinu podslike u luma odbircima.
- 9. Metod prema bilo kom od zahteva 5-8, naznačen time što skup mnoštva podslika pokriva ukupnu površinu slike bez praznina i bez preklapanja.
- 10. Ne-prolazni računarski čitljiv medijum koji obuhvata računarski programski proizvod za upotrebu od strane uređaja za video kodiranje, pri čemu računarski programski proizvod obuhvata računarski izvršne instrukcije uskladištene na neprolaznom računarski čitljivom medijumu takve da izvršene od strane procesora dovode do toga da uređaj za video kodiranje izvršimetod prema bilo kojem od zahteva 1-9.
- 11. Dekoder koji obuhvata:prijemnu jedinicu (1211), konfigurisanu da prima tok bitova koji obuhvata skupa parametara za sekvence, SPS, jednu ili više podslika particionisanih iz slike, i jedno ili više zaglavlja isečka povezanih sa jednim ili više isečaka; pri čemu SPS skup sadrži kompletan skup svih identifikatora podslike za jednu ili više podslika, pri čemu svaka podslika odgovara jednom identifikatoru podslike; i zaglavlje isečka obuhvata identifikator trenutne podslike, pri čemu identifikator trenutne podslike ukazuje na podsliku koja sadrži isečak povezan sa zaglavljem isečka; pri čemu SPS skup dalje obuhvata veličinu podslike i lokaciju podslike za svaku podslikuparticionisanu iz slike;jedinicu za dekodiranje (1215), konfigurisanu da:dekodira SPS skup radi dobijanja identifikatora podslike, veličine podslike i lokacije podslike za svaku od one jedne ili više pod-slika; idekodira zaglavlja isečaka radi dobijanja identifikatora trenutne podslike;jedinicu za generisanje, konfigurisanu da generiše trenutnu podsliku na osnovu identifikatora trenutne podslike radi kreiranja video sekvence.
- 12. Dekoder prema zahtevu 11, naznačen time što je dekoder dalje konfigurisan da izvršava metod prema bilo kom od zahteva 1-4.
- 13. Koder koji obuhvata:jedinicu za particionisanje (1201), konfigurisanu da:particioniše sliku na mnoštvo podslika; iparticioniše svaku od mnoštva podslika na jedan ili više isečaka;jedinicu za kodiranje (1203), konfigurisanu da:kodira u tok bitova skup parametara za sekvencu, SPS, koji obuhvata kompletan skup svih identifikatora podslika za mnoštvo podslika particionisanih iz slike, pri čemu svaka podslika odgovara jednom identifikatoru podslike, a SPS skup dalje obuhvata veličinu podslike i lokaciju podslikeza svaku podsliku particionisanu iz slike;kodira u tok bitova zaglavlja isečaka koja obuhvataju identifikatore podslika koji označavaju da su isečci uključeni u naznačene podslike; ikodira jednu ili više od mnoštva podslika u tok bitova.
- 14. Koder prema zahtevu 13, gde koder dalje obuhvata:jedinicu za skladištenje (1205) za skladištenje toka bitova radi prenosa prema dekoderu.
- 15. Koder prema bilo kom od zahteva 13 -14, naznačen time što je dekoder dalje konfigurisan da izvršava metod prema bilo kom od zahteva 5-9.
- 16. Ne-prolazni medijum za skladištenje koji uključuje kodirani tok bitova, gde tok bitova obuhvata jednu ili više podslika particionisanih iz slike i koji obuhvata jedno ili više zaglavlja isečaka povezanih sa jednim ili više isečaka i skup parametara za sekvencu, SPS, pri čemu je tok bitova naznačen time:što SPS skup obuhvata kompletan skup svih identifikatora podslike za mnoštvo podslika particionisanih izslike, pri čemu svaka podslika odgovara jednom identifikatoru podslike, a SPS skup dalje obuhvata veličinu podslike i lokaciju podslike za svaku podsliku particionisanu iz slike.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962790207P | 2019-01-09 | 2019-01-09 | |
| EP20738357.1A EP3909244B1 (en) | 2019-01-09 | 2020-01-09 | Sub-picture identifier signaling in video coding |
| PCT/US2020/012970 WO2020146662A1 (en) | 2019-01-09 | 2020-01-09 | Sub-picture identifier signaling in video coding |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| RS64353B1 true RS64353B1 (sr) | 2023-08-31 |
Family
ID=71520341
Family Applications (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| RS20230521A RS64330B1 (sr) | 2019-01-09 | 2020-01-09 | Poziciona ograničenja podslika kod video kodiranja |
| RS20230572A RS64374B1 (sr) | 2019-01-09 | 2020-01-09 | Određivanje veličine podslike kod video kodiranja |
| RS20230522A RS64353B1 (sr) | 2019-01-09 | 2020-01-09 | Signaliziranje identifikatora podslika kod video kodiranja |
Family Applications Before (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| RS20230521A RS64330B1 (sr) | 2019-01-09 | 2020-01-09 | Poziciona ograničenja podslika kod video kodiranja |
| RS20230572A RS64374B1 (sr) | 2019-01-09 | 2020-01-09 | Određivanje veličine podslike kod video kodiranja |
Country Status (22)
| Country | Link |
|---|---|
| US (14) | US12477134B2 (sr) |
| EP (14) | EP4221214B1 (sr) |
| JP (14) | JP7223146B2 (sr) |
| KR (10) | KR20250078640A (sr) |
| CN (11) | CN113287313A (sr) |
| AU (2) | AU2020206246B2 (sr) |
| BR (2) | BR112021013499A2 (sr) |
| CY (3) | CY1126078T1 (sr) |
| DK (8) | DK3909245T3 (sr) |
| ES (9) | ES2951060T3 (sr) |
| FI (6) | FI3909245T3 (sr) |
| HR (3) | HRP20230702T1 (sr) |
| HU (9) | HUE070831T2 (sr) |
| LT (3) | LT3909244T (sr) |
| MX (10) | MX2021008348A (sr) |
| MY (1) | MY210467A (sr) |
| PL (9) | PL3909245T3 (sr) |
| PT (9) | PT3906684T (sr) |
| RS (3) | RS64330B1 (sr) |
| SG (5) | SG11202107545TA (sr) |
| SI (3) | SI3909246T1 (sr) |
| WO (6) | WO2020146623A1 (sr) |
Families Citing this family (51)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119676435A (zh) * | 2019-01-02 | 2025-03-21 | 苹果公司 | 用于对视频信号进行编码/解码的方法及其装置 |
| CN113287313A (zh) * | 2019-01-09 | 2021-08-20 | 华为技术有限公司 | 视频译码中的子图像布局指示 |
| CN120614449A (zh) * | 2019-02-11 | 2025-09-09 | 北京字节跳动网络技术有限公司 | 条件依赖的视频块分割 |
| CN113661714B (zh) | 2019-03-11 | 2024-10-01 | 交互数字Vc控股公司 | 子画面比特流提取和重新定位 |
| US20220182681A1 (en) * | 2019-03-24 | 2022-06-09 | Lg Electronics Inc. | Image or video coding based on sub-picture handling structure |
| JP7323641B2 (ja) | 2019-05-21 | 2023-08-08 | 北京字節跳動網絡技術有限公司 | アフィンモードのための適応動きベクトル差分分解 |
| WO2020249124A1 (en) | 2019-06-14 | 2020-12-17 | Beijing Bytedance Network Technology Co., Ltd. | Handling video unit boundaries and virtual boundaries based on color format |
| CN118138754A (zh) | 2019-06-14 | 2024-06-04 | 北京字节跳动网络技术有限公司 | 处理视频单元边界和虚拟边界 |
| WO2020256495A1 (ko) * | 2019-06-19 | 2020-12-24 | 한국전자통신연구원 | 참조 픽처를 사용하는 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체 |
| CN114175637B (zh) | 2019-07-15 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 自适应环路滤波中的分类 |
| WO2021029640A1 (ko) * | 2019-08-09 | 2021-02-18 | 현대자동차주식회사 | 서브픽처 파티셔닝을 이용한 비디오 부호화 및 복호화 방법 및 장치 |
| CN117336468A (zh) | 2019-08-10 | 2024-01-02 | 北京字节跳动网络技术有限公司 | 视频比特流中的子图片相关信令通知 |
| CN112970251B (zh) | 2019-08-20 | 2025-03-14 | 苹果公司 | 用于对图像信号进行编码/解码的方法及其装置 |
| CN114145020B (zh) * | 2019-08-29 | 2025-08-15 | 松下电器(美国)知识产权公司 | 编码装置、解码装置、编码方法、解码方法以及记录介质 |
| JP7774951B2 (ja) * | 2019-09-11 | 2025-11-25 | キヤノン株式会社 | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム |
| PL4018658T3 (pl) * | 2019-09-17 | 2023-06-05 | Huawei Technologies Co., Ltd. | Sygnalizacja identyfikatorów obrazu częściowego w kodowaniu wideo opartym na obrazach częściowych |
| CN114424529B (zh) | 2019-09-18 | 2025-09-19 | 北京字节跳动网络技术有限公司 | 视频编解码中自适应环路滤波器的两部分信令 |
| WO2021052508A1 (en) | 2019-09-22 | 2021-03-25 | Beijing Bytedance Network Technology Co., Ltd. | Padding process in adaptive loop filtering |
| US12225210B2 (en) * | 2019-09-23 | 2025-02-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Segment position signalling with subpicture slice position deriving |
| EP4022910A4 (en) | 2019-09-27 | 2022-11-16 | Beijing Bytedance Network Technology Co., Ltd. | ADAPTIVE LOOP FILTERING BETWEEN DIFFERENT VIDEO UNITS |
| CN114503577B (zh) * | 2019-10-02 | 2024-07-05 | 北京字节跳动网络技术有限公司 | 视频比特流中子图片信令通知的语法 |
| KR102762212B1 (ko) | 2019-10-10 | 2025-02-07 | 두인 비전 컴퍼니 리미티드 | 적응적 루프 필터링에서 이용 불가능한 샘플 위치들에서의 패딩 프로세스 |
| CN114631321B (zh) | 2019-10-18 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 子图片与环路滤波之间的相互影响 |
| EP4042684A4 (en) | 2019-10-29 | 2022-11-30 | Beijing Bytedance Network Technology Co., Ltd. | SIGNALING OF A CROSS-COMPONENT ADAPTIVE LOOP FILTER |
| US11509938B2 (en) * | 2019-11-05 | 2022-11-22 | Hfi Innovation Inc. | Method and apparatus of signaling subpicture information in video coding |
| WO2021104409A1 (en) | 2019-11-30 | 2021-06-03 | Beijing Bytedance Network Technology Co., Ltd. | Cross-component adaptive filtering and subblock coding |
| CN115280774B (zh) | 2019-12-02 | 2025-08-19 | 抖音视界有限公司 | 视觉媒体处理的方法、装置及非暂时性计算机可读存储介质 |
| US12143601B2 (en) * | 2019-12-05 | 2024-11-12 | Hfi Innovation Inc. | Specifying layout in video pictures |
| WO2021115362A1 (en) | 2019-12-11 | 2021-06-17 | Beijing Bytedance Network Technology Co., Ltd. | Sample padding for cross-component adaptive loop filtering |
| US12088848B2 (en) | 2019-12-11 | 2024-09-10 | Sharp Kabushiki Kaisha | Systems and methods for signaling output layer set information in video coding |
| GB2590632B (en) * | 2019-12-20 | 2023-07-26 | Canon Kk | Video coding and decoding |
| EP4062635A4 (en) | 2019-12-26 | 2022-12-28 | ByteDance Inc. | LIMITATIONS ON SIGNALING VIDEO LAYERS IN ENCODED BITSTREAM |
| WO2021134019A1 (en) | 2019-12-26 | 2021-07-01 | Bytedance Inc. | Constraints on coding of layered video |
| US11778169B2 (en) * | 2019-12-27 | 2023-10-03 | Electronics And Telecommunications Research Institute | Method, apparatus and storage medium for image encoding/decoding using reference picture |
| JP7422881B2 (ja) | 2019-12-27 | 2024-01-26 | バイトダンス インコーポレイテッド | パラメータセットにおけるサブピクチャシグナリング |
| CN114930830B (zh) | 2020-01-09 | 2025-08-29 | 字节跳动有限公司 | 波前并行处理的信令通知 |
| EP4124043A4 (en) * | 2020-03-19 | 2023-11-01 | Panasonic Intellectual Property Corporation of America | Image processing device, image processing method, bitstream transmission device, and non-temporary storage medium |
| CN115398892B (zh) | 2020-03-23 | 2025-02-28 | 抖音视界有限公司 | 仿射merge和仿射运动矢量预测模式的预测细化 |
| US12058357B2 (en) * | 2020-03-31 | 2024-08-06 | Tencent America LLC | Method for signaling subpicture partitioning in coded video stream |
| KR102846913B1 (ko) | 2020-06-30 | 2025-08-14 | 두인 비전 컴퍼니 리미티드 | 적응적 루프 필터링을 위한 경계 위치 |
| US11902552B2 (en) * | 2020-09-17 | 2024-02-13 | Lemon Inc. | Decoder configuration record in coded video |
| EP3972269A1 (en) | 2020-09-17 | 2022-03-23 | Lemon Inc. | Subpicture entity groups in video coding |
| EP3972279A1 (en) | 2020-09-17 | 2022-03-23 | Lemon Inc. | Subpicture track referencing and processing |
| US11615537B2 (en) * | 2020-11-02 | 2023-03-28 | Qualcomm Incorporated | Methods and apparatus for motion estimation based on region discontinuity |
| CN116941246A (zh) * | 2020-12-23 | 2023-10-24 | Lg电子株式会社 | 用信号通知子画面id信息的媒体文件生成/接收方法和装置以及存储媒体文件的计算机可读记录介质 |
| WO2022194197A1 (en) | 2021-03-17 | 2022-09-22 | Beijing Bytedance Network Technology Co., Ltd. | Separate Tree Coding Restrictions |
| US11997293B2 (en) | 2021-04-15 | 2024-05-28 | Lemon Inc. | Sub-picture track level indicator |
| US12439042B2 (en) * | 2022-01-05 | 2025-10-07 | Agora Lab, Inc. | Real-time wide-angle video communication system |
| JP2025519741A (ja) * | 2022-06-16 | 2025-06-26 | エルジー エレクトロニクス インコーポレイティド | スキャン順(scan order)情報に基づく画像符号化/復号化方法、装置、及びビットストリームを保存する記録媒体 |
| US20250119567A1 (en) * | 2023-10-05 | 2025-04-10 | Tencent America LLC | Sei message supporting decoder picture-based parallelization |
| KR102856435B1 (ko) * | 2024-04-09 | 2025-09-09 | 서울다이나믹스 주식회사 | 영상 데이터 전송을 위한 목적 기반 차량 및 그 동작 방법 |
Family Cites Families (107)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1135481C (zh) * | 1996-09-27 | 2004-01-21 | 松下电器产业株式会社 | 视频数据可择一重放的多媒体流生成方法和光盘创作系统 |
| GB2382940A (en) * | 2001-11-27 | 2003-06-11 | Nokia Corp | Encoding objects and background blocks |
| US20030112868A1 (en) * | 2001-12-17 | 2003-06-19 | Koninklijke Philips Electronics N.V. | Shape assisted padding for object-based coding |
| JP2004128761A (ja) * | 2002-10-01 | 2004-04-22 | Pioneer Electronic Corp | 情報記録媒体、情報記録装置及び方法、情報再生装置及び方法、情報記録再生装置及び方法、記録又は再生制御用のコンピュータプログラム、並びに制御信号を含むデータ構造 |
| KR100539886B1 (ko) | 2004-09-10 | 2005-12-28 | 삼성전자주식회사 | 디지털 방송 수신 장치 및 그 방법 |
| WO2006108917A1 (en) * | 2005-04-13 | 2006-10-19 | Nokia Corporation | Coding, storage and signalling of scalability information |
| CN101578628A (zh) * | 2006-09-26 | 2009-11-11 | 安布克斯英国有限公司 | 包含视频帧和辅助数据的位流的产生和处理 |
| US20140072058A1 (en) * | 2010-03-05 | 2014-03-13 | Thomson Licensing | Coding systems |
| JP2010041494A (ja) * | 2008-08-06 | 2010-02-18 | Sumitomo Electric Ind Ltd | ネットワーク端末 |
| US9602821B2 (en) * | 2008-10-01 | 2017-03-21 | Nvidia Corporation | Slice ordering for video encoding |
| RU2689191C2 (ru) * | 2009-01-26 | 2019-05-24 | Томсон Лайсенсинг | Упаковка кадров для кодирования видео |
| KR20110061468A (ko) * | 2009-12-01 | 2011-06-09 | (주)휴맥스 | 고해상도 영상의 부호화/복호화 방법 및 이를 수행하는 장치 |
| WO2011153194A1 (en) * | 2010-06-02 | 2011-12-08 | Onmobile Global Limited | Method and apparatus for adapting media |
| US10033997B2 (en) * | 2010-06-23 | 2018-07-24 | Panasonic Intellectual Property Management Co., Ltd. | Image decoding apparatus, image decoding method, integrated circuit, and program |
| US8780973B2 (en) * | 2010-08-13 | 2014-07-15 | Texas Instruments Incorporated | Limiting the maximum size of an encoded video picture using sub-picture based rate control |
| US8718389B2 (en) * | 2011-04-13 | 2014-05-06 | Huawei Technologies Co., Ltd. | Image encoding and decoding methods and related devices |
| US20130016769A1 (en) * | 2011-07-17 | 2013-01-17 | Qualcomm Incorporated | Signaling picture size in video coding |
| US9584819B2 (en) * | 2011-10-24 | 2017-02-28 | Qualcomm Incorporated | Grouping of tiles for video coding |
| US20130107973A1 (en) | 2011-10-28 | 2013-05-02 | Qualcomm Incorporated | Loop filtering control over tile boundaries |
| CN104126303B (zh) * | 2011-11-29 | 2018-03-06 | 华为技术有限公司 | 用于高效率视频译码的统一分割结构和信令方法 |
| US9819949B2 (en) * | 2011-12-16 | 2017-11-14 | Microsoft Technology Licensing, Llc | Hardware-accelerated decoding of scalable video bitstreams |
| US9288506B2 (en) * | 2012-01-05 | 2016-03-15 | Qualcomm Incorporated | Signaling view synthesis prediction support in 3D video coding |
| US9749661B2 (en) | 2012-01-18 | 2017-08-29 | Qualcomm Incorporated | Sub-streams for wavefront parallel processing in video coding |
| US10244246B2 (en) | 2012-02-02 | 2019-03-26 | Texas Instruments Incorporated | Sub-pictures for pixel rate balancing on multi-core platforms |
| US9756327B2 (en) * | 2012-04-03 | 2017-09-05 | Qualcomm Incorporated | Quantization matrix and deblocking filter adjustments for video coding |
| US9578326B2 (en) * | 2012-04-04 | 2017-02-21 | Qualcomm Incorporated | Low-delay video buffering in video coding |
| JP5888278B2 (ja) | 2012-04-06 | 2016-03-16 | 株式会社Jvcケンウッド | 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法及び受信プログラム |
| CN107920243B (zh) | 2012-04-06 | 2020-12-08 | 索尼公司 | 解码装置和编码装置 |
| CN108322752B (zh) | 2012-04-13 | 2021-04-09 | Ge视频压缩有限责任公司 | 译码器和编码器 |
| CN104221388B (zh) * | 2012-04-16 | 2018-01-23 | 瑞典爱立信有限公司 | 指示压缩视频序列的并行处理可能性的固定分片结构标志 |
| US20130287093A1 (en) * | 2012-04-25 | 2013-10-31 | Nokia Corporation | Method and apparatus for video coding |
| PH12018500333B1 (en) * | 2012-06-29 | 2024-04-12 | Ge Video Compression Llc | Video data stream concept |
| JP6376719B2 (ja) * | 2012-06-29 | 2018-08-22 | キヤノン株式会社 | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム |
| US20140003504A1 (en) * | 2012-07-02 | 2014-01-02 | Nokia Corporation | Apparatus, a Method and a Computer Program for Video Coding and Decoding |
| US9716892B2 (en) * | 2012-07-02 | 2017-07-25 | Qualcomm Incorporated | Video parameter set including session negotiation information |
| JP6050489B2 (ja) * | 2012-07-06 | 2016-12-21 | サムスン エレクトロニクス カンパニー リミテッド | 多階層ビデオ符号化方法及びその装置、並びに多階層ビデオ復号化方法及びその装置 |
| JP2014027371A (ja) * | 2012-07-24 | 2014-02-06 | Nippon Hoso Kyokai <Nhk> | イントラ予測処理装置及びプログラム |
| US8989508B2 (en) * | 2012-09-28 | 2015-03-24 | Sharp Kabushiki Kaisha | Electronic device for signaling a sub-picture buffer parameter |
| US9491457B2 (en) * | 2012-09-28 | 2016-11-08 | Qualcomm Incorporated | Signaling of regions of interest and gradual decoding refresh in video coding |
| CN108419076B (zh) | 2012-09-29 | 2022-04-29 | 华为技术有限公司 | 视频编码及解码方法、装置及系统 |
| US9357213B2 (en) * | 2012-12-12 | 2016-05-31 | Imagine Communications Corp. | High-density quality-adaptive multi-rate transcoder systems and methods |
| CN110062240B (zh) * | 2013-01-04 | 2023-04-07 | Ge视频压缩有限责任公司 | 高效可伸缩编码概念 |
| RS58715B1 (sr) * | 2013-01-04 | 2019-06-28 | Samsung Electronics Co Ltd | Uređaj za entropijsko dekodiranje segmenata preseka |
| US20160027246A1 (en) | 2013-03-14 | 2016-01-28 | Gamesys Ltd | Systems and methods for detection of gaming experience management implementations |
| GB2512829B (en) * | 2013-04-05 | 2015-05-27 | Canon Kk | Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme |
| US9749627B2 (en) | 2013-04-08 | 2017-08-29 | Microsoft Technology Licensing, Llc | Control data for motion-constrained tile set |
| US9635371B2 (en) * | 2013-05-31 | 2017-04-25 | Qualcomm Incorporated | Determining rounding offset using scaling factor in picture resampling |
| US8923640B1 (en) * | 2013-06-07 | 2014-12-30 | Apple Inc. | Coherence groups: region descriptors for low bit rate encoding |
| JP6505026B2 (ja) | 2013-07-10 | 2019-04-24 | シャープ株式会社 | 符号化方法 |
| US20150016547A1 (en) * | 2013-07-15 | 2015-01-15 | Sony Corporation | Layer based hrd buffer management for scalable hevc |
| WO2015009676A1 (en) * | 2013-07-15 | 2015-01-22 | Sony Corporation | Extensions of motion-constrained tile sets sei message for interactivity |
| GB2516824A (en) * | 2013-07-23 | 2015-02-11 | Nokia Corp | An apparatus, a method and a computer program for video coding and decoding |
| WO2015052979A1 (ja) * | 2013-10-11 | 2015-04-16 | ソニー株式会社 | 画像処理装置及び画像処理方法 |
| US10187662B2 (en) * | 2013-10-13 | 2019-01-22 | Sharp Kabushiki Kaisha | Signaling parameters in video parameter set extension and decoder picture buffer operation |
| CN106063271B (zh) | 2013-12-26 | 2019-09-03 | 三星电子株式会社 | 用于执行基于子块的预测的层间视频解码方法及其设备以及用于执行基于子块的预测的层间视频编码方法及其设备 |
| EP3090558A4 (en) * | 2014-01-03 | 2017-08-16 | Nokia Technologies OY | Parameter set coding |
| EP3092796B1 (en) | 2014-01-07 | 2020-06-17 | Canon Kabushiki Kaisha | Method, device, and computer program for encoding inter-layer dependencies |
| JP6224516B2 (ja) * | 2014-05-07 | 2017-11-01 | 日本電信電話株式会社 | エンコード方法およびエンコードプログラム |
| US9699480B2 (en) * | 2014-06-13 | 2017-07-04 | Sharp Laboratories Of America, Inc. | Level limits |
| MX2021015798A (es) * | 2014-06-20 | 2023-03-07 | Sony Corp | Dispositivo y metodo de codificacion de imagen, y dispositivo y metodo de decodificacion de imagen. |
| WO2015194187A1 (en) * | 2014-06-20 | 2015-12-23 | Sharp Kabushiki Kaisha | Harmonized palette coding |
| US10819990B2 (en) * | 2015-02-16 | 2020-10-27 | Hfi Innovation Inc. | Method and apparatus for palette predictor initialization for palette coding in video and image compression |
| GB2535990A (en) * | 2015-02-26 | 2016-09-07 | Univ Antwerpen | Computer program and method of determining a personalized head-related transfer function and interaural time difference function |
| EP3128485A1 (en) * | 2015-08-05 | 2017-02-08 | Thomson Licensing | Method and apparatus for hierarchical motion estimation using dfd-based image segmentation |
| WO2017088093A1 (en) | 2015-11-23 | 2017-06-01 | Mediatek Singapore Pte. Ltd. | On the smallest allowed block size in video coding |
| US20170180758A1 (en) * | 2015-12-22 | 2017-06-22 | Vallabhajosyula S. Somayazulu | Tiled Wireless Display |
| CN113347445B (zh) * | 2016-02-09 | 2023-01-20 | 弗劳恩霍夫应用研究促进协会 | 解码器、编码器及其方法和可读存储介质 |
| EP3249928A1 (en) * | 2016-05-23 | 2017-11-29 | Thomson Licensing | Method, apparatus and stream of formatting an immersive video for legacy and immersive rendering devices |
| US10812791B2 (en) * | 2016-09-16 | 2020-10-20 | Qualcomm Incorporated | Offset vector identification of temporal motion vector predictor |
| PT3975559T (pt) * | 2016-10-04 | 2024-09-25 | B1 Institute Image Technology Inc | Método e aparelho de codificação/descodificação de dados de imagem |
| US10250776B2 (en) * | 2016-10-04 | 2019-04-02 | International Business Machines Corporation | Enhancing graph visualization with supplemental data |
| CA3039815C (en) * | 2016-10-12 | 2021-10-19 | Arris Enterprises Llc | Coding schemes for virtual reality (vr) sequences |
| US11140417B2 (en) * | 2016-11-01 | 2021-10-05 | Nokia Technologies Oy | Apparatus, a method and a computer program for video coding and decoding |
| KR102821606B1 (ko) * | 2017-03-20 | 2025-06-16 | 지이 비디오 컴프레션, 엘엘씨 | 고급 비디오 데이터 스트림 추출 및 다중 해상도 비디오 송신 |
| GB2594615B (en) * | 2017-03-20 | 2022-11-30 | Canon Kk | Method and apparatus for encoding and transmitting at least a spatial part of a video sequence |
| US11062738B2 (en) * | 2017-03-23 | 2021-07-13 | Qualcomm Incorporated | Signalling of video content including sub-picture bitstreams for video coding |
| WO2018221368A1 (ja) * | 2017-05-31 | 2018-12-06 | シャープ株式会社 | 動画像復号装置、及び動画像符号化装置 |
| EP3422724B1 (en) * | 2017-06-26 | 2024-05-01 | Nokia Technologies Oy | An apparatus, a method and a computer program for omnidirectional video |
| US10645385B2 (en) * | 2017-06-28 | 2020-05-05 | Mediatek Inc. | Method and apparatus for performing fixed-size slice encoding with slice boundary prediction |
| SG11202100010SA (en) * | 2017-07-03 | 2021-02-25 | Univ Hanyang Ind Univ Coop Found | Method and device for decoding image by using partition unit including additional region |
| HUE065470T2 (hu) * | 2017-07-04 | 2024-05-28 | Huawei Tech Co Ltd | Fejlesztés határvonal által kikényszerített leválasztáson |
| TWI862000B (zh) * | 2017-07-13 | 2024-11-11 | 美商松下電器(美國)知識產權公司 | 編碼裝置、解碼裝置及記錄媒體 |
| CN117528071A (zh) * | 2017-08-21 | 2024-02-06 | 韩国电子通信研究院 | 编码/解码视频的方法和设备以及存储比特流的记录介质 |
| CN111527752B (zh) * | 2017-12-28 | 2024-04-12 | 韩国电子通信研究院 | 图像编码和解码的方法和装置以及存储比特流的记录介质 |
| CN118101936B (zh) | 2018-04-19 | 2025-12-26 | Oppo广东移动通信有限公司 | 用于处理图像的方法及其设备 |
| CA3100316A1 (en) * | 2018-05-15 | 2019-11-21 | Sharp Kabushiki Kaisha | Image encoding device, encoded stream extraction device, and image decoding device |
| CA3209197A1 (en) | 2018-05-30 | 2019-12-05 | Huawei Technologies Co., Ltd. | Multi-type tree depth extension for picture boundary handling |
| JP2021153213A (ja) * | 2018-06-29 | 2021-09-30 | シャープ株式会社 | 動画像符号化装置および動画像復号装置 |
| US12445641B2 (en) * | 2018-06-29 | 2025-10-14 | Electronics And Telecommunications Research Institute | Image encoding/decoding method and apparatus for throughput enhancement, and recording medium storing bitstream |
| KR102934333B1 (ko) * | 2018-07-02 | 2026-03-04 | 노키아 테크놀로지스 오와이 | 비디오 코딩에서 타일 관련 어드레싱을 위한 방법 및 장치 |
| CN112544077B (zh) * | 2018-07-16 | 2023-12-08 | Lg电子株式会社 | 用于子块单元中的时间运动信息预测的帧间预测方法及其装置 |
| WO2020050705A1 (ko) * | 2018-09-07 | 2020-03-12 | 가온미디어 주식회사 | 그룹 단위 양자화 파라미터를 처리하는 영상 복호화 및 부호화 방법 |
| EP3850841A1 (en) | 2018-09-14 | 2021-07-21 | Vid Scale, Inc. | Methods and apparatus for flexible grid regions |
| US11057636B2 (en) * | 2018-09-17 | 2021-07-06 | Qualcomm Incorporated | Affine motion prediction |
| CN112771862B (zh) * | 2018-09-19 | 2025-08-29 | 韩国电子通信研究院 | 通过使用边界处理对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质 |
| KR102660160B1 (ko) * | 2018-11-22 | 2024-04-24 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 서브 블록 기반 인터 예측을 위한 조정 방법 |
| WO2020117919A1 (en) * | 2018-12-04 | 2020-06-11 | Vid Scale, Inc. | Tile group partitioning |
| US11102513B2 (en) * | 2018-12-06 | 2021-08-24 | Tencent America LLC | One-level transform split and adaptive sub-block transform |
| ES3047387T3 (en) * | 2018-12-20 | 2025-12-03 | Ericsson Telefon Ab L M | Method and apparatus for video coding using uniform segment split in pictures |
| AU2019416633B2 (en) * | 2018-12-28 | 2025-05-08 | B1 Institute Of Image Technology, Inc. | Intra prediction-based video encoding/decoding method and device |
| WO2020135482A1 (en) * | 2018-12-29 | 2020-07-02 | Beijing Bytedance Network Technology Co., Ltd. | Construction method for default motion candidate in sub-block based inter prediction |
| CN113498606B (zh) * | 2019-01-02 | 2024-11-01 | 诺基亚技术有限公司 | 用于视频编码和解码的装置、方法和计算机程序 |
| CN113287313A (zh) * | 2019-01-09 | 2021-08-20 | 华为技术有限公司 | 视频译码中的子图像布局指示 |
| GB201902829D0 (en) * | 2019-03-01 | 2019-04-17 | Canon Kk | Method and apparatus for encoding and decoding a video bitsream for merging regions of interest |
| GB2584295A (en) | 2019-05-28 | 2020-12-02 | Canon Kk | Method and apparatus for encoding and decoding a video bitstream for merging regions of interest |
| CN114631321B (zh) * | 2019-10-18 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 子图片与环路滤波之间的相互影响 |
| CN119544971A (zh) * | 2019-12-12 | 2025-02-28 | Lg电子株式会社 | 图像编码/解码方法、传输图像的数据的方法和存储介质 |
-
2020
- 2020-01-09 CN CN202080008695.1A patent/CN113287313A/zh active Pending
- 2020-01-09 EP EP23166930.0A patent/EP4221214B1/en active Active
- 2020-01-09 ES ES20738357T patent/ES2951060T3/es active Active
- 2020-01-09 MX MX2021008348A patent/MX2021008348A/es unknown
- 2020-01-09 ES ES20738190T patent/ES2951004T3/es active Active
- 2020-01-09 DK DK20738269.8T patent/DK3909245T3/da active
- 2020-01-09 EP EP23165304.9A patent/EP4221213B1/en active Active
- 2020-01-09 KR KR1020257017407A patent/KR20250078640A/ko active Pending
- 2020-01-09 PT PT207385337T patent/PT3906684T/pt unknown
- 2020-01-09 DK DK23165304.9T patent/DK4221213T3/da active
- 2020-01-09 FI FIEP20738269.8T patent/FI3909245T3/fi active
- 2020-01-09 PT PT231653049T patent/PT4221213T/pt unknown
- 2020-01-09 HU HUE23166930A patent/HUE070831T2/hu unknown
- 2020-01-09 KR KR1020217024925A patent/KR102661006B1/ko active Active
- 2020-01-09 EP EP24193014.8A patent/EP4451673A3/en active Pending
- 2020-01-09 DK DK23169952.1T patent/DK4221215T3/da active
- 2020-01-09 HU HUE20739138A patent/HUE066684T2/hu unknown
- 2020-01-09 SG SG11202107545TA patent/SG11202107545TA/en unknown
- 2020-01-09 DK DK20738533.7T patent/DK3906684T3/da active
- 2020-01-09 SI SI202030212T patent/SI3909246T1/sl unknown
- 2020-01-09 PL PL20738269.8T patent/PL3909245T3/pl unknown
- 2020-01-09 JP JP2021540000A patent/JP7223146B2/ja active Active
- 2020-01-09 LT LTEPPCT/US2020/012970T patent/LT3909244T/lt unknown
- 2020-01-09 WO PCT/US2020/012921 patent/WO2020146623A1/en not_active Ceased
- 2020-01-09 LT LTEPPCT/US2020/012921T patent/LT3909246T/lt unknown
- 2020-01-09 ES ES23165304T patent/ES2994192T3/es active Active
- 2020-01-09 ES ES20738533T patent/ES2988146T3/es active Active
- 2020-01-09 HU HUE20738190A patent/HUE062613T2/hu unknown
- 2020-01-09 KR KR1020257016403A patent/KR20250073572A/ko active Pending
- 2020-01-09 HU HUE23169952A patent/HUE068136T2/hu unknown
- 2020-01-09 EP EP20738269.8A patent/EP3909245B1/en active Active
- 2020-01-09 EP EP20738971.9A patent/EP3906665B1/en active Active
- 2020-01-09 EP EP20739138.4A patent/EP3906687B1/en active Active
- 2020-01-09 FI FIEP23166930.0T patent/FI4221214T3/fi active
- 2020-01-09 MX MX2021008346A patent/MX2021008346A/es unknown
- 2020-01-09 ES ES20739138T patent/ES2981568T3/es active Active
- 2020-01-09 DK DK20738190.6T patent/DK3909246T3/da active
- 2020-01-09 CN CN202080008756.4A patent/CN113330451A/zh active Pending
- 2020-01-09 PT PT207383571T patent/PT3909244T/pt unknown
- 2020-01-09 RS RS20230521A patent/RS64330B1/sr unknown
- 2020-01-09 WO PCT/US2020/012907 patent/WO2020146614A1/en not_active Ceased
- 2020-01-09 HU HUE20738269A patent/HUE067951T2/hu unknown
- 2020-01-09 WO PCT/US2020/012974 patent/WO2020146665A1/en not_active Ceased
- 2020-01-09 EP EP20738190.6A patent/EP3909246B1/en active Active
- 2020-01-09 JP JP2021540004A patent/JP7467480B2/ja active Active
- 2020-01-09 CN CN202410210946.4A patent/CN118101934A/zh active Pending
- 2020-01-09 WO PCT/US2020/012970 patent/WO2020146662A1/en not_active Ceased
- 2020-01-09 KR KR1020217024938A patent/KR102811542B1/ko active Active
- 2020-01-09 PL PL20738971.9T patent/PL3906665T3/pl unknown
- 2020-01-09 SG SG11202107543SA patent/SG11202107543SA/en unknown
- 2020-01-09 EP EP24198365.9A patent/EP4468704A3/en active Pending
- 2020-01-09 PT PT207391384T patent/PT3906687T/pt unknown
- 2020-01-09 LT LTEPPCT/US2020/012910T patent/LT3906665T/lt unknown
- 2020-01-09 JP JP2021540003A patent/JP7404373B2/ja active Active
- 2020-01-09 PL PL23166930.0T patent/PL4221214T3/pl unknown
- 2020-01-09 ES ES20738971T patent/ES2952079T3/es active Active
- 2020-01-09 DK DK20738971.9T patent/DK3906665T3/da active
- 2020-01-09 EP EP20738357.1A patent/EP3909244B1/en active Active
- 2020-01-09 HU HUE23165304A patent/HUE068506T2/hu unknown
- 2020-01-09 DK DK23166930.0T patent/DK4221214T3/da active
- 2020-01-09 PL PL23169952.1T patent/PL4221215T3/pl unknown
- 2020-01-09 SI SI202030220T patent/SI3906665T1/sl unknown
- 2020-01-09 ES ES20738269T patent/ES2988213T3/es active Active
- 2020-01-09 CN CN202080008738.6A patent/CN113330745A/zh active Pending
- 2020-01-09 PL PL20739138.4T patent/PL3906687T3/pl unknown
- 2020-01-09 PT PT231699521T patent/PT4221215T/pt unknown
- 2020-01-09 MX MX2021008339A patent/MX2021008339A/es unknown
- 2020-01-09 MX MX2021008345A patent/MX2021008345A/es unknown
- 2020-01-09 KR KR1020217025036A patent/KR102648032B1/ko active Active
- 2020-01-09 JP JP2021540005A patent/JP7508462B2/ja active Active
- 2020-01-09 ES ES23166930T patent/ES3030534T3/es active Active
- 2020-01-09 SG SG11202107548WA patent/SG11202107548WA/en unknown
- 2020-01-09 FI FIEP20738533.7T patent/FI3906684T3/fi active
- 2020-01-09 PL PL20738533.7T patent/PL3906684T3/pl unknown
- 2020-01-09 ES ES23169952T patent/ES2993577T3/es active Active
- 2020-01-09 BR BR112021013499-9A patent/BR112021013499A2/pt unknown
- 2020-01-09 PT PT207381906T patent/PT3909246T/pt unknown
- 2020-01-09 BR BR112021013531-6A patent/BR112021013531A2/pt unknown
- 2020-01-09 EP EP25150959.2A patent/EP4546772A1/en active Pending
- 2020-01-09 CN CN202080008683.9A patent/CN113508591A/zh active Pending
- 2020-01-09 PL PL20738190.6T patent/PL3909246T3/pl unknown
- 2020-01-09 PL PL20738357.1T patent/PL3909244T3/pl unknown
- 2020-01-09 KR KR1020217025126A patent/KR102814837B1/ko active Active
- 2020-01-09 JP JP2021539999A patent/JP7516389B2/ja active Active
- 2020-01-09 WO PCT/US2020/012910 patent/WO2020146616A1/en not_active Ceased
- 2020-01-09 MX MX2021008347A patent/MX2021008347A/es unknown
- 2020-01-09 PT PT231669300T patent/PT4221214T/pt unknown
- 2020-01-09 SG SG11202107546UA patent/SG11202107546UA/en unknown
- 2020-01-09 RS RS20230572A patent/RS64374B1/sr unknown
- 2020-01-09 DK DK20738357.1T patent/DK3909244T3/da active
- 2020-01-09 RS RS20230522A patent/RS64353B1/sr unknown
- 2020-01-09 PT PT207389719T patent/PT3906665T/pt unknown
- 2020-01-09 CN CN202210114288.XA patent/CN114584770B/zh active Active
- 2020-01-09 HR HRP20230702TT patent/HRP20230702T1/hr unknown
- 2020-01-09 FI FIEP20738971.9T patent/FI3906665T3/fi active
- 2020-01-09 JP JP2021540001A patent/JP7556861B2/ja active Active
- 2020-01-09 CN CN202211021778.1A patent/CN115550647B/zh active Active
- 2020-01-09 CN CN202080008699.XA patent/CN113302933A/zh active Pending
- 2020-01-09 WO PCT/US2020/012862 patent/WO2020146582A1/en not_active Ceased
- 2020-01-09 EP EP24178662.3A patent/EP4478713A1/en active Pending
- 2020-01-09 SG SG11202107549XA patent/SG11202107549XA/en unknown
- 2020-01-09 KR KR1020217024917A patent/KR102650474B1/ko active Active
- 2020-01-09 CN CN202211022376.3A patent/CN115550648B/zh active Active
- 2020-01-09 MX MX2021008344A patent/MX2021008344A/es unknown
- 2020-01-09 FI FIEP20738357.1T patent/FI3909244T3/fi active
- 2020-01-09 CN CN202080008660.8A patent/CN113302930A/zh active Pending
- 2020-01-09 EP EP20738533.7A patent/EP3906684B9/en active Active
- 2020-01-09 KR KR1020217024921A patent/KR102821293B1/ko active Active
- 2020-01-09 FI FIEP20738190.6T patent/FI3909246T3/fi active
- 2020-01-09 PT PT207382698T patent/PT3909245T/pt unknown
- 2020-01-09 KR KR1020247013391A patent/KR20240056798A/ko active Pending
- 2020-01-09 KR KR1020257019352A patent/KR20250091318A/ko active Pending
- 2020-01-09 HU HUE20738971A patent/HUE062301T2/hu unknown
- 2020-01-09 CN CN202511044554.6A patent/CN121151564A/zh active Pending
- 2020-01-09 EP EP24181270.0A patent/EP4518314A1/en active Pending
- 2020-01-09 HU HUE20738533A patent/HUE067275T2/hu unknown
- 2020-01-09 MY MYPI2021003904A patent/MY210467A/en unknown
- 2020-01-09 HR HRP20230707TT patent/HRP20230707T1/hr unknown
- 2020-01-09 AU AU2020206246A patent/AU2020206246B2/en active Active
- 2020-01-09 PL PL23165304.9T patent/PL4221213T3/pl unknown
- 2020-01-09 SI SI202030210T patent/SI3909244T1/sl unknown
- 2020-01-09 HR HRP20230682TT patent/HRP20230682T1/hr unknown
- 2020-01-09 EP EP23169952.1A patent/EP4221215B1/en active Active
- 2020-01-09 HU HUE20738357A patent/HUE062631T2/hu unknown
-
2021
- 2021-07-08 US US17/370,904 patent/US12477134B2/en active Active
- 2021-07-08 US US17/370,879 patent/US11949893B2/en active Active
- 2021-07-08 US US17/370,911 patent/US12250389B2/en active Active
- 2021-07-08 MX MX2024010757A patent/MX2024010757A/es unknown
- 2021-07-08 MX MX2024013006A patent/MX2024013006A/es unknown
- 2021-07-08 US US17/370,918 patent/US12088835B2/en active Active
- 2021-07-08 US US17/370,887 patent/US12316865B2/en active Active
- 2021-07-08 MX MX2025000696A patent/MX2025000696A/es unknown
- 2021-07-08 US US17/370,913 patent/US11917173B2/en active Active
- 2021-07-08 MX MX2024012430A patent/MX2024012430A/es unknown
-
2023
- 2023-02-03 JP JP2023015475A patent/JP7467706B2/ja active Active
- 2023-05-02 JP JP2023076273A patent/JP7615210B2/ja active Active
- 2023-06-02 US US18/328,040 patent/US12470728B2/en active Active
- 2023-07-06 CY CY20231100318T patent/CY1126078T1/el unknown
- 2023-07-11 CY CY20231100326T patent/CY1126131T1/el unknown
- 2023-07-18 CY CY20231100338T patent/CY1126094T1/el unknown
- 2023-12-12 JP JP2023209280A patent/JP7674456B2/ja active Active
-
2024
- 2024-02-28 JP JP2024028639A patent/JP7769025B2/ja active Active
- 2024-02-28 US US18/590,822 patent/US12368871B2/en active Active
- 2024-03-21 JP JP2024045089A patent/JP2024086733A/ja active Pending
- 2024-04-03 AU AU2024202115A patent/AU2024202115B2/en active Active
- 2024-07-15 US US18/772,961 patent/US12563215B2/en active Active
- 2024-11-18 JP JP2024201024A patent/JP7778895B2/ja active Active
-
2025
- 2025-01-15 US US19/022,785 patent/US20250234023A1/en active Pending
- 2025-04-23 JP JP2025071560A patent/JP7813400B2/ja active Active
- 2025-05-14 US US19/207,958 patent/US20250274596A1/en active Pending
- 2025-07-21 US US19/275,662 patent/US20250350752A1/en active Pending
- 2025-10-14 US US19/358,237 patent/US20260039848A1/en active Pending
- 2025-10-23 US US19/367,347 patent/US20260052264A1/en active Pending
- 2025-10-30 JP JP2025183832A patent/JP2026031558A/ja active Pending
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12470728B2 (en) | Sub-picture sizing in video coding |