RS64675B1 - Postupak i uređaj za enkodiranje i dekodiranje sekvence slika - Google Patents

Postupak i uređaj za enkodiranje i dekodiranje sekvence slika

Info

Publication number
RS64675B1
RS64675B1 RS20230919A RSP20230919A RS64675B1 RS 64675 B1 RS64675 B1 RS 64675B1 RS 20230919 A RS20230919 A RS 20230919A RS P20230919 A RSP20230919 A RS P20230919A RS 64675 B1 RS64675 B1 RS 64675B1
Authority
RS
Serbia
Prior art keywords
motion information
predictors
predictor
information predictors
motion vector
Prior art date
Application number
RS20230919A
Other languages
English (en)
Inventor
Guillaume Laroche
Original Assignee
Canon Kk
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Kk filed Critical Canon Kk
Publication of RS64675B1 publication Critical patent/RS64675B1/sr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/436Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Opis
[0001] Pronalazak se odnosi na postupak i uređaj za izvođenje informacija o pokretu, koji uključuju najmanje jedan prediktor informacija o pokretu za prediktovanje dela slike, slike prediktovane kompenzacijom pokreta u odnosu na najmanje jedan deo referentne slike.
[0002] Pronalazak može da se primenjuje u oblasti digitalne obrade signala, a posebno u oblasti video kompresije korišćenjem kompenzacije pokreta za smanjenje prostornih i vremenskih redundansi u video tokovima.
[0003] Brojni formati video kompresije, kao što su na primer H.263, H.264, MPEG-1, MPEG-2, MPEG-4, SVC, koriste diskretnu kosinusnu transformaciju na bazi blokova (DCT) i kompenzaciju pokreta, za uklanjanje prostornih i vremenskih redundansi. Oni mogu da se označavaju i kao prediktivni video formati. Svaki frejm, ili slika, video signala podeljen je na isečke koji su enkodirani i mogu se nezavisno dekodirati. Isečak je obično pravougaoni deo frejma, ili uopštenije, deo frejma ili ceo frejm. Dalje, svaki isečak je podeljen na makroblokove (MB blokove), a svaki makroblok je dalje podeljen na blokove, tipično na blokove od 8x8 piksela. Kodirani frejmovi spadaju u dva tipa: vremenski prediktovani frejmovi (bilo prediktovani iz jednog referentnog frejma, označeni kao P-frejmovi ili prediktovani iz dva referentna frejma, označeni kao B-frejmovi) i ne-vremenski prediktovani frejmovi (koji se nazivaju Intra frejmovi ili I-frejmovi).
[0004] Vremenska predikcija se sastoji u pronalaženju u referentnom frejmu, bilo prethodnog, bilo budućeg frejma video sekvence, dela slike ili referentne oblasti, koja je najbliža bloku koji se enkodira. Ovaj korak je obično poznat kao procena pokreta. Zatim se blok prediktuje korišćenjem referentne oblasti u koraku koji se obično naziva kompenzacija pokreta - enkodira se razlika između bloka koji se enkodira i referentnog dela, zajedno sa stavkom informacija o pokretu u odnosu na vektor pokreta koji ukazuje na referentnu oblast koju treba koristiti za kompenzaciju pokreta. U INTRA predikciji je enkodiran pravac predikcije.
[0005] Da bi se dodatno smanjili troškovi enkodiranja informacija o pokretu, vektor pokreta može da bude enkodiran u smislu razlike između vektora pokreta i prediktora vektora pokreta, obično izračunatih iz jednog ili više vektora pokreta blokova koji okružuju blok koji se enkodira.
[0006] U H.264, vektori pokreta su enkodirani u odnosu na srednji prediktor izračunat iz vektora pokreta koji se nalaze u uzročnoj okolini bloka koji se enkodira, na primer iz blokova koji se nalaze iznad i levo od bloka za kodiranje. Kako bi se smanjio trošak enkodiranja, enkodira se razlika između srednjeg prediktora i vektora pokreta trenutnog bloka, koja se takođe označava i kao rezidualni vektor pokreta.
[0007] Enkodiranje korišćenjem rezidualnih vektora pokreta štedi donekle frekvenciju bitova, ali zahteva da dekoder izvrši isto izračunavanje prediktora vektora pokreta kako bi dekodirao vrednost vektora pokreta bloka koji se dekodira.
[0008] Nedavno su predložena dalja poboljšanja u efikasnosti kodiranja, kao što je korišćenje većeg broja mogućih prediktora vektora pokreta. Ovaj postupak, koji se često označava kao kompeticija vektora pokreta (MVCOMP), sastoji se u tome što se utvrdi koji vektor pokreta, od nekoliko prediktora vektora pokreta ili kandidata, najviše smanjuje cenu enkodiranja, tipično cenu distorzije frekvencije, rezidualnih informacija o pokretu. Rezidualne informacije o pokretu sadrže rezidualni vektor pokreta, tj. razliku između stvarnog vektora pokreta bloka koji se enkodira i izabranog prediktora vektora pokreta, i stavku informacije koja ukazuje na izabrani prediktor vektora pokreta, kao što je na primer ekodirana vrednost indeksa izabranog prediktora vektora pokreta. Indeks izabranog prediktora vektora pokreta je kodiran u toku bitova sa unarnim maksimalnim kodom na osnovu fiksne veličine liste.
[0009] Kod visokoefikasnog video kodiranja (HEVC), predložena je nova implementacija istog koncepta da bi mogao da se izabere najbolji prediktor iz datog skupa prediktora sastavljenog od prostornih vektora pokreta i vremenskih vektora pokreta. Ova tehnika se označava kao napredna predikcija vektora pokreta (AMVP). Ako su neki prediktori od ovih prediktora datog skupa duplikati drugih prediktora u skupu, duplikati se mogu ukloniti i dodatni prediktori se mogu dodati skupu da bi se kreirao novi drugi skup prediktora. Dodati prediktori mogu da budu kombinacija prostornih i vremenskih prediktora koji su već u skupu, drugi prediktori izvedeni iz ovih prostornih i vremenskih prediktora, ili prediktori sa fiksnim vrednostima. Na kraju, duplirani prediktori drugog skupa prediktora se uklanjaju da bi se dobili ne-redundantni kandidati u drugom skupu prediktora.
[0010] Generisani drugi skup prediktora značajno povećava složenost izračunavanja u procesu izvođenja. Povećana složenost izračunavanja je rezultat generisanja kaskadnih prediktora.
[0011] Aktuelna implementacija HEVC koristi skup prediktora vektora pokreta koji sadrži najviše 2 prediktora za Inter režim i najviše 5 prediktora za Merge Skip režim i Merge režim.
[0012] HEVC test model 3 (JCTVC-E602) obezbeđuje pregled HEVC dizajna. U aktuelnom HEVC dizajnu, Inter predikcija može da bude jednosmerna ili dvosmerna. Jednosmerna se odnosi na jedan blok prediktora koji se koristi za predikciju trenutnog bloka. Jedan blok prediktora je definisan indeksom liste, indeksom referentnog frejma i vektorom pokreta. Indeks liste odgovara listi referentnih frejmova. Može se smatrati, na primer, da se koriste dve liste: L0 i L1. Jedna lista sadrži najmanje jedan referentni frejm i referentni frejm može da bude uključen u obe liste. Vektor pokreta ima dve komponente: horizontalnu i vertikalnu. Vektor pokreta odgovara prostornom pomeranju u pikselima između trenutnog bloka i bloka vremenskog prediktora u referentnom frejmu. Dakle, prediktor bloka za jednosmerno predikcija je blok iz referentnog frejma (ref indeks) liste, na koji je usmeren vektor pokreta.
[0013] Za dvosmernu Inter predikciju se uzimaju u obzir dva bloka prediktora. Po jedan za svaku listu (L0 i L1). Shodno tome, takođe se uzimaju u obzir i 2 indeksa referentnog frejma kao i 2 vektora pokreta. Inter blok prediktor za dvosmernu predikciju je prosek, piksel po piksel, dva bloka na koje su usmerena ova dva vektora pokreta.
[0014] Informacije o pokretu opredeljene za prediktor inter bloka mogu da budu definisane sledećim parametrima:
• Tip smera: jedan ili dva
• Jedna lista (jednosmerno) ili dve liste (dvosmerno): L0, L1, L0 i L1.
• Jedan (jednosmerno) ili dva indeksa (dvosmerno) referentnog frejma: RefL0, RefL1, (RefL0, RefL1).
• Jedan (jednosmerno) ili dva (dvosmerno) vektora pokreta: svaki vektor pokreta ima dve komponente (horizontalnu mvx i vertikalnu mvy).
[0015] Može se primetiti da dvosmerni Inter prediktor može da se koristi samo za isečke B tipa. Inter predikcija u B isečcima može da bude jednosmerna ili dvosmerna. U P isečcima, Inter predikcija je samo jednosmerna.
[0016] Aktuelni dizajn HEVC kodiranja koristi 3 različita Inter režima: Inter režim. Merge režim i Merge Skip režim. Glavna razlika između ovih režima je signalizacija podataka u protoku bitova.
[0017] U Inter režimu svi podaci su eksplicitno signalizirani. To znači da je rezidua teksture kodirana i umetnuta u tok bitova (rezidua teksture je razlika između trenutnog bloka i bloka Inter predikcije). Za informacije o pokretu, svi podaci su kodirani. Dakle, tip pravca je kodiran (jedno ili dvosmerni). Indeks liste, ako je potrebno, takođe se kodira i ubacuje u tok bitova. Povezani indeksi referentnog frejma su eksplicitno kodirani i umetnuti u tok bitova. Vrednost vektora pokreta je predviđena izabranim prediktorom vektora pokreta. Rezidualni vektor pokreta za svaku komponentu se zatim kodira i ubacuje u tok bitova praćen indeksom prediktora.
[0018] U Merge režimu, rezidual teksture i indeks prediktora se kodiraju i ubacuju u tok bitova. Rezidual vektora pokreta, tip smera, lista ili indeks referentnog frejma nisu kodirani. Ovi parametri pokreta su izvedeni iz indeksa prediktora. Dakle, prediktor je prediktor svih podataka iz informacija o pokretu.
[0019] U režimu Merge Skip nikakva informacija se ne prenosi na stranu dekodera osim "režima" i indeksa prediktora. U ovom režimu obrada je slična Merge režimu, osim što se ne kodira ili prenosi nijedan rezidual teksture. Vrednosti piksela Merge Skip bloka su vrednosti piksela prediktora bloka.
[0020] U skupu prediktora informacija o pokretu predstavljenih na slici 1, dva prostorna vektora pokreta u Inter režimu se biraju od blokova, u frejmu N, koji se nalaze gore i levo od bloka koji se enkodira, uključujući gornje ugaone blokova i levi ugaoni blok.
[0021] Levi prediktor je odabran od blokova "Dole levo" i "Levo". Sledeći uslovi se procenjuju navedenim redosledom dok se ne pronađe vrednost vektora pokreta:
1. Vektor pokreta sa iste referentne liste i iste referentne slike
2. Vektor pokreta sa druge referentne liste i iste referentne slike
3. Skalirani vektor pokreta sa iste referentne liste i druge referentne slike
4. Skalirani vektor pokreta sa druge referentne liste i druge referentne slike
[0022] Ako vrednost nije pronađena, levi prediktor se smatra nedostupnim. U ovom slučaju, to ukazuje da su povezani blokovi bili Intra kodirani ili da ti blokovi ne postoje. Prethodno navedeni prediktor je odabran od „Gore desno“, „Gore“ i „Gore levo“ ovim specifičnim redosledom, sa istim uslovima kao što je prethodno opisano.
[0023] Vremenski prediktor pokreta dolazi iz najbližeg referentnog frejma u konfiguraciji sa malim kašnjenjem. U slučaju B frejmova, 2 vektora pokreta se uzimaju u obzir za kolocirani blok u frejmu N-1. Jedan je na prvoj listi „L0“, a jedan na drugoj listi „L1“. Ako postoje oba vektora pokreta, bira se vektor pokreta koji ima najkraće vremensko rastojanje. Ako oba prediktora vektora pokreta imaju isto vremensko rastojanje, bira se kretanje sa prve liste „L0“. Odabrani kolocirani vektor pokreta se zatim skalira, ako je potrebno, prema svom vremenskom rastojanju i vremenskom rastojanju enkodiranog vektora pokreta. Ako ne postoji kolocirani prediktor, prediktor se smatra nedostupnim.
[0024] Za hijerarhijsko kodiranje B frejmova mogu se uzeti u obzir 2 kolocirana vektora pokreta. Oba dolaze iz budućeg referentnog frejma. Odabira se vektor pokreta koji prelazi trenutni frejm. Ako oba prediktora prelaze trenutni frejm, bira se vektor pokreta koji ima najkraće vremensko rastojanje. Ako oba prediktora imaju isto vremensko rastojanje, tada se bira kretanje sa prve liste „L0“. Odabrani kolocirani vektor pokreta se zatim skalira, ako je potrebno, prema svom vremenskom rastojanju i vremenskom rastojanju enkodiranog vektora pokreta. Ako ne postoji kolocirani prediktor, prediktor se smatra nedostupnim.
[0025] Za slučaj sa malim kašnjenjem i hijerarhijski slučaj, kada je kolocirani blok podeljen na više particija (potencijalno, kolocirani blok sadrži brojne vektore pokreta), odabrana particija je gornja leva centralna particija. Štaviše, vremenski prediktor je vektor pokreta bloka na donjoj desnoj poziciji od kolociranog bloka (pozicija H na slici 1). Ako ovaj blok ne postoji ili ako je Intra kodiran, blok na centralnoj poziciji od kolociranog bloka se bira kao vektor pokreta koji će biti izveden.
[0026] Vrednost prediktora pokreta se zatim dodaje skupu prediktora.
[0027] Na kraju, primenjuje se proces supresije. On se sastoji u uklanjanju dupliciranih prediktora iz skupa odabranih prediktora vektora pokreta. Na kraju ovog procesa, skup sadrži prediktore vektora pokreta bez duplikata. Ovaj skup može da sadrži 1, 2, 3 ili 4 prediktora. U aktuelnom dizajnu, lista prediktora je fiksirana kako bi se veličina liste ograničila na 2. Shodno tome, odabrani prediktor je kodiran jednim bitom. Dakle, ako je broj prediktora na listi 3 ili 4, poslednji prediktor, odnosno 2 poslednja prediktora se uklanjaju.
[0028] Prediktor Merge režima („klasični“ ili Skip) predstavlja sve informacije o pokretu: pravac, listu, indeks referentnih frejmova i vektore pokreta. Indeks prediktora je kodiran unarnim maksimalnim kodom kao što je prikazano u tabeli 1.
Tabela 1
[0029] Veličina liste je fiksirana na 5 za sve Merge blokove ili Merge Skip blokove u aktuelnom HEVC dizajnu.
[0030] Slika 2 je dijagram toka za primer procesa izvođenja vektora pokreta za Merge režime interpredikcije (Merge Skip i Merge imaju isti proces izvođenja prediktora vektora pokreta). Postupak se primenjuje da bi se dobio skup potencijalnih prediktora informacija o pokretu za enkodiranje slikovnog dela slike u odnosu na referentni deo slike. U prvom koraku izvođenja uzima se u obzir 7 pozicija bloka (601 do 607). Ove pozicije su prostorne i vremenske pozicije prikazane na slici 1 (svaka pozicija je obeležena isto na obe slike). Modul 608 proverava dostupnost ovih vektora pokreta i bira najviše 5 vektora pokreta. Ovaj korak 608 implementacije modulom utvrđuje da je prediktor dostupan ako postoji i ako blok nije Intra kodiran. Izbor i verifikacija 5 izabranih vektora pokreta se sprovodi u skladu sa sledećim uslovima:
• Ako je vektor (601) pokreta „Levo“ dostupan (tj. ako postoji i ako ovaj blok nije Intra kodiran), vektor pokreta bloka „Levo“ se bira i koristi kao prediktor 1 (610).
• Ako je vektor (602) pokreta „Gore“ dostupan, vektor pokreta bloka „Gore“ se bira i koristi kao prediktor 2 (611).
• Ako je vektor (603) pokreta „Gore desno“ dostupan, vektor pokreta bloka „Gore desno“ se bira i koristi kao prediktor 3 (612).
• Ako je vektor pokreta (604) „Dole levo“ dostupan, vektor pokreta bloka „Dole levo“ se bira i koristi kao prediktor 4 (613).
• Ako jedan (ili više) od prethodnih prediktora nije dostupan i ako je dostupan vektor (605) pokreta „Gore levo“, vektor pokreta bloka „Gore levo“ se dodaje skupu prediktora vektora pokreta nakon što se doda prostorni prediktor.
• Ako je vektor pokreta „H“ dostupan, vektor pokreta bloka „H“ se bira i koristi kao prediktor 5 (614).
• Ako blok „H“ nije dostupan, proverava se dostupnost „kolociranog“ vektora pokreta (tj.
vektora pokreta bloka na istoj poziciji u referentnom frejmu kao i trenutni blok u trenutnom frejmu) i, ako postoji, koristi se kao vremenski prediktor. Provera dostupnosti koju obavlja modul 608 zahteva 1 ciklus.
[0031] Vremenski prediktor treba skalirati ako je potrebno. Zaista, za vektor temporalnog pokreta, pravac i indeks referentnog frejma ne zavise od H ili kolociranog bloka, već od podataka trenutnog preseka. Ako je trenutni blok u B preseku, vremenski prediktor je uvek dvosmeran i uvek jednosmeran za P preseke. Indeksi referentnog frejma za svaku listu referentnih frejma (L0, L1) su izvedeni iz levog i gornjeg prediktora. Ako za listu, i levi i gornji blok nemaju indeks referentnog frejma, indeks referentnog frejma za vremenski prediktor se postavlja na nulu.
[0032] Pošto indeks referentnog frejma za vremenski prediktor ne zavisi od indeksa referentnog frejma bloka „H“ ili „kolociranog“ već od referentnog frejma levog i iznad prediktora, njegovu vrednost vektora pokreta treba skalirati. To znači da ako je vremenska udaljenost pokrivena vremenskim vektorom pokreta različita od razlike između trenutnog frejma i referentnog frejma prediktora, vremenski vektor pokreta se skalira da pokrije ispravnu vremensku udaljenost.
[0033] Na kraju modula 608 i 609, skup prediktora sadrži najviše 5 prediktora (610 do 614). Zatim se primenjuje proces supresije 615 da bi se uklonili duplirani kandidati iz skupa prediktora. Ovaj proces se sastoji u poređenju svakog prediktora skupa sa svim ostalim prediktorima u istom skupu i u uklanjanju onih prediktora koji su jednaki drugom prediktoru u skupu (a zadržavajući drugi prediktor čiji je duplikat kandidat duplikat u skupu ) tako da među prediktorima u skupu nema duplikata. Proces supresije za P preseke uzima u obzir vrednosti vektora pokreta i njihove indekse referentnog frejma. Shodno tome, dve komponente vektora pokreta i njegov referentni indeks se upoređuju sa svim ostalima i samo ako su ove tri vrednosti jednake, prediktor se uklanja iz skupa. Za B frejm, ovaj kriterijum se proširuje na pravac i liste. Dakle, prediktor se smatra dupliranim prediktorom ako koristi isti pravac, iste liste (L0, L1 ili L0 i L1), indekse referentnog frejma i istu vrednost vektora pokreta (MV_L0 i MV_L1 za bi predikcija ). Proces supresije traje 1 ciklus kada je potrebno uporediti najviše 5 prediktora. Zaista, može se smatrati da se 12 poređenja može izračunati u jednom ciklusu. Broj poređenja za proces supresije u najsloženijem slučaju jednak je zbiru od 0 do N-1. Prema tome, za 5 prediktora je potrebno 10 poređenja (tj.4+3+2+1=10).
[0034] Na kraju ovog procesa 615 supresije, generiše se redukovani skup 616 prediktora.
[0035] Zatim modul 617 za generisanje vektora pokreta generiše nove kandidate na osnovu redukovanog skupa prediktora vektora pokreta. Ova obrada obično može da traje najmanje jedan ciklus. Može se primetiti da kod aktuelnog HEVC dizajna, šema koja se koristi može da proizvede najviše 20 prediktora u najsloženijem slučaju. Ovaj modul 617 proizvodi drugi set prediktora 618.
[0036] Drugi skup prediktora 618 se dodaje redukovanom skupu prediktora 616 i proces supresije se primenjuje da bi se uklonili duplirani kandidati ovog drugog skupa prediktora u poređenju i sa redukovanim i sa drugim skupom. Ovaj proces supresije je sličan procesu supresije modula 615. Ipak, na kraju, ako lista sadrži više od 5 prediktora, lista prediktora se skraćuje na 5 što je aktuelna veličina liste definisana u HEVC dizajnu. Može se primetiti da ovaj proces može da traje najmanje 1 ciklus. Međutim, trajanje ciklusa zavisi od broja prediktora generisanih u drugom skupu prediktora 618. U aktuelnoj implementaciji HEVC kodiranja, ovaj proces traje 3 ciklusa zbog količine generisanih prediktora (najsloženiji slučaj: 32 poređenja za aktuelni dizajn).
[0037] Na kraju, proces 619 supresije proizvodi finalnu listu prediktora 620 odakle će se izdvojiti prediktor za trenutni blok.
[0038] Nedostatak procesa je to što izvođenje prediktora trenutnog vektora pokreta za Merge režim može da dostigne 11 ciklusa u najsloženijem slučaju, dok je najmanje 5 ciklusa potrebno u najmanje složenom slučaju. Izvođenje vektora pokreta stoga ima značajan uticaj na složenost enkodiranja i dekodiranja.
[0039] Predmetni pronalazak je osmišljen da odgovori na jedan ili više prethodnih problema.
[0040] Može se obezbediti, nezavisno, u prvom aspektu pronalaska, postupak za izvođenje najmanje jednog prediktora informacija o pokretu za enkodiranje ili dekodiranje slikovnog dela slike kompenzacijom pokreta u odnosu na najmanje jedan referentni deo slike, pri čemu, da bi navedeni deo slike bio enkodiran ili dekodiran, postupak obuhvata obezbeđivanje, za obradu, najmanje dva različita prva i druga podskupa prediktora informacija o pokretu prvog skupa prediktora (801-807) informacija o pokretu, prvog podskupa koji sadrži najmanje jedan vremenski prediktor informacija o pokretu, i drugog podskupa koji sadrži najmanje jedan prostorni prediktor informacija o pokretu i isključujući bilo koji vremenski prediktor informacija o pokretu; obradu (808, 809) prvog podskupa prediktora informacija o pokretu; i obradu (808, 815, 817) drugog podskupa prediktora informacija o pokretu; i dobijanje (819), na osnovu prediktora (818, 814) informacija o pokretu koji su rezultat obrade prvog podskupa prediktora informacija o pokretu i obrade drugog podskupa prediktora informacija o pokretu, finalnog skupa (820) prediktora informacija o pokretu koji je upotrebljiv za predikcija pomenutog dela slike iz referentnog dela slike; pri čemu obrada drugog podskupa obuhvata uklanjanje duplikata iz prediktora informacija o pokretu samo navedenog drugog podskupa, u slučaju kada drugi podskup sadrži jedan ili više prediktora informacija o pokretu koji su isti, da bi se obezbedio redukovani podskup prediktora (816) informacija o pokretu.
[0041] Pošto su vremenski prediktori isključeni iz odabira za drugi podskup, podrazumeva se da proces uklanjanja ili supresije duplikata među odabranim prediktorima drugog podskupa može da se primeni samo na prostorne prediktore, i na ovaj način ne uključuje obradu vremenskih prediktora informacija o pokretu.
[0042] Isključivanjem vremenskih prediktora iz procesa supresije na ovaj način, ukupan broj poređenja se smanjuje, čime se smanjuje složenost izračunavanja.
[0043] Nasuprot tome, u određenim primerima izvođenja prostorni prediktori su isključeni iz odabira za prvi podskup. Obrada prvog skupa (tj. vremenskih prediktora pokreta) možda ne uključuje uklanjanje duplikata u nekim primerima izvođenja, iako, kao što je detaljnije objašnjeno u nastavku teksta, primeri izvođenja mogu povoljno da kombinuju obrađeni prvi i drugi podskup tako da isključe duplikate u fazi dobijanja finalnog skupa. Drugačije rečeno, obrada prvog skupa može da ne uključuje uklanjanje duplikata pre dobijanja finalnog skupa.
[0044] U jednom primeru izvođenja, skaliranje vremenskih prediktora informacija o pokretu prvog podskupa se izvodi istovremeno sa koracima uklanjanja duplikata i generisanja daljih prediktora informacija o pokretu drugog podskupa.
[0045] U jednom primeru izvođenja, postupak uključuje: uklanjanje duplikata iz redova prediktora informacija o pokretu koji su rezultat obrade prvog podskupa prediktora informacija o pokretu i obrade drugog podskupa prediktora informacija o pokretu, u slučaju kada su jedan ili više prediktora informacija o pokretu koji su rezultat obrade prvog podskupa prediktora informacija o pokretu i obrade drugog podskupa informacija o pokretu isti, da bi se obezbedio finalni skup prediktora informacija o pokretu koje se mogu koristiti za enkodiranje navedenog dela slike tako da u finalnom setu prediktora informacija o pokretu nema duplikata.
[0046] U jednom primeru izvođenja, obrada drugog podskupa prediktora informacija o pokretu dalje obuhvata uklanjanje duplikata iz prediktora informacija o pokretu daljeg drugog podskupa prediktora informacija o pokretu u slučaju kada dalji drugi podskup sadrži jedan ili više prediktora informacija o pokretu koji su isto, da obezbedi drugi redukovani podskup prediktora informacija o pokretu.
[0047] U jednom primeru izvođenja, korak uklanjanja duplikata iz prediktora informacija o pokretu daljeg drugog podskupa se izvodi istovremeno sa skaliranjem vremenskog prediktora informacija o pokretu prvog podskupa.
[0048] U jednom primeru izvođenja, postupak uključuje dodavanje, drugom redukovanom podskupu prediktora informacija o pokretu, prediktora informacija o pokretu, koji je rezultat obrade prvog podskupa prediktora informacija o pokretu, koji nije duplikat nijedne informacije o pokretu prediktori drugog redukovanog podskupa prediktora informacija o pokretu da bi se dobio finalni skup prediktora informacija o pokretu.
[0049] U jednom primeru izvođenja, postupak uključuje dodavanje, redukovanom podskupu prediktora informacija o pokretu, prediktora informacija o pokretu koji je rezultat obrade prvog podskupa prediktora informacija o pokretu i koji nije duplikat nijednog od prediktora informacija o pokretu redukovanog podskupa prediktora informacija o pokretu; i pri čemu finalni skup prediktora informacija o pokretu sadrži neduplicirane vektore pokreta iz redova prediktora vektora pokreta redukovanog podskupa prediktora informacija o pokretu i dodatnog drugog podskupa prediktora informacija o pokretu.
[0050] U jednom primeru izvođenja, obrada drugog podskupa koja se izvodi istovremeno sa obradom prvog podskupa zasniva se na proceni trajanja obrade prvog podskupa.
[0051] U jednom primeru izvođenja, prediktori informacija o pokretu koji su rezultat obrade drugog podskupa koji se dodaju prediktorima informacija o pokretu koji su rezultat obrade prvog
1
podskupa da bi se dobio finalni skup prediktora informacija o pokretu, zasnovani su na trajanju obrada prvog podskupa.
[0052] U jednom primeru izvođenja, postupak uključuje korak određivanja, na osnovu vremenske razlike između slike dela slike i slike referentnog dela slike, da li će se ili ne proces vremenskog skaliranja primeniti na prvi podskup prediktora informacija o pokretu; i pri čemu se u slučaju kada je utvrđeno da treba primeniti proces vremenskog skaliranja, obrada prvog podskupa prediktora informacija o pokretu obuhvata korak vremenskog skaliranja prediktora informacija o pokretu prvog podskupa prediktora informacija o pokretu na osnovu vremenskih razlika između slikovnog dela slike i dela referentne slike; u suprotnom, u slučaju kada se utvrdi da se proces vremenskog skaliranja ne primenjuje, obrada prvog podskupa prediktora informacija o pokretu obuhvata korak uklanjanja duplikata između prediktora informacija o pokretu prvog podskupa prediktora informacija o pokretu kao što je da se redukovani podskup koji se sastoji od neduplikovanih prediktora informacija o pokretu između prediktora informacija o pokretu prvog podskupa prediktora informacija o pokretu i drugog podskupa prediktora informacija o pokretu obezbeđen obradom prvog podskupa prediktora informacija o pokretu i obradom drugog podskup prediktora informacija o pokretu.
[0053] U jednom primeru izvođenja, u slučaju kada je utvrđeno da treba primeniti proces vremenskog skaliranja, finalni skup prediktora se dobija uklanjanjem duplikata iz prediktora informacija o pokretu koji su rezultat istovremene obrade prvog podskupa prediktora informacija o pokretu. i drugi podskup prediktora informacija o pokretu; inače u slučaju kada se utvrdi da se proces vremenskog skaliranja ne primenjuje, finalni skup prediktora se dobija generisanjem daljih prediktora informacija o pokretu, na osnovu redukovanog podskupa da bi se obezbedio dalji drugi podskup prediktora informacija o pokretu i uklanjanjem duplikati iz daljeg drugog podskupa prediktora informacija o pokretu.
[0054] U jednom primeru izvođenja, postupak uključuje određivanje složenosti procesa vremenskog skaliranja prvog podskupa prediktora informacija o pokretu i pri čemu, u slučaju kada je utvrđeno da će proces vremenskog skaliranja trajati duže od unapred određenog prag trajanja, finalni skup prediktora informacija o pokretu se dobija uklanjanjem duplikata iz prediktora informacija o pokretu koji su rezultat obrade prvog podskupa prediktora informacija o pokretu i obrade drugog podskupa prediktora informacija o pokretu; inače, u slučaju kada se utvrdi da će proces vremenskog skaliranja trajati kraće od unapred određenog praga trajanja, finalni skup prediktora se dobija dodavanjem redukovanog podskupa prediktora informacija o pokretu dobijenih iz drugog podskupa prediktori vektora pokreta, prediktor informacija o pokretu koji je rezultat obrade prvog podskupa prediktora informacija o pokretu koji nije duplikat nijednog od prediktora informacija o pokretu redukovanog podskupa prediktora informacija o pokretu; pri čemu finalni skup prediktora informacija o pokretu sadrži prediktore informacija o pokretu bez duplikata između prediktora informacija o pokretu redukovanog podskupa prediktora informacija o pokretu i daljeg drugog podskupa prediktora informacija o pokretu.
[0055] U jednom primeru izvođenja, obrada drugog podskupa prvog skupa prediktora informacija o pokretu obuhvata uklanjanje duplikata između prediktora informacija o pokretu pomenutog drugog podskupa da bi se obezbedio redukovani podskup prediktora informacija o pokretu; i generisanje daljeg skupa prediktora informacija o pokretu na osnovu jednog od prediktora informacija o pokretu navedenog drugog podskupa i uključujući pomenuti jedan od prediktora informacija o pokretu navedenog drugog podskupa, pri čemu nema duplikata među daljim skupom prediktora informacija o pokretu, postupak koji dalje obuhvata uklanjanje duplikata iz redukovanog podskupa prediktora informacija o pokretu i daljeg skupa prediktora informacija o pokretu da bi se obezbedio skup prediktora informacija o pokretu koji nije duplikat.
[0056] U jednom primeru izvođenja, obrada drugog podskupa prvog skupa prediktora informacija o pokretu dalje obuhvata: generisanje daljih prediktora informacija o pokretu na osnovu redukovanog podskupa prediktora informacija o pokretu da bi se obezbedio dalji drugi podskup prediktora informacija o pokretu; i uklanjanje duplikata između prediktora informacija o pokretu daljeg drugog podskupa prediktora informacija o pokretu i nedupliranog skupa prediktora informacija o pokretu da bi se obezbedio drugi ne-dupliran skup prediktora informacija o pokretu.
[0057] U jednom primeru izvođenja, postupak uključuje dodavanje, drugom nedupliranom skupu prediktora informacija o pokretu, prediktora informacija o pokretu koji je rezultat obrade prvog podskupa prediktora informacija o pokretu koji nije duplikat nijednog od prediktora informacija o pokretu. prediktori informacija drugog nedupliranog skupa prediktora informacija o pokretu za dobijanje finalnog skupa prediktora informacija o pokretu.
[0058] U drugom aspektu pronalaska za koji se traži zaštita, može se nezavisno obezbediti uređaj za izvođenje najmanje jednog prediktora informacija o pokretu za kodiranje ili dekodiranje dela slike slike kompenzacijom pokreta u odnosu na najmanje jedan deo referentne slike, uređaj koji sadrži: sredstva za dobijanje, najmanje dva različita prva i druga podskupa prediktora informacija o pokretu prvog skupa prediktora informacija o pokretu (801-807), pri čemu prvi podskup sadrži najmanje jedan vremenski prediktor informacija o pokretu i drugi podskup koji sadrži najmanje jedan prediktor informacija o prostornom pokretu i isključujući bilo koji vremenski prediktor informacija o pokretu; prvo sredstvo za obradu (808, 809) za obradu prvog podskupa prediktora informacija o pokretu; i drugo sredstvo za obradu (808, 815, 817) za obradu drugog podskupa prediktora informacija o pokretu; i sredstva za dobijanje (819), na osnovu prediktora informacija o pokretu (818, 814) koji su rezultat obrade prvog podskupa prediktora informacija o pokretu i obrade drugog podskupa prediktora informacija o pokretu, finalnog skupa (820) pokreta informacioni prediktori koji se mogu koristiti za predikcija pomenutog dela slike iz referentnog dela slike; pri čemu je druga obrada operativna da ukloni duplikate iz prediktora informacija o pokretu samo navedenog drugog podskupa, u slučaju kada drugi podskup sadrži jedan ili više prediktora informacija o pokretu koji su isti, da bi se obezbedio redukovani podskup prediktora informacija o pokretu ( 816).
[0059] U jednom primeru izvođenja, prvo sredstvo za obradu je sposobno da izvrši skaliranje prediktora privremenih informacija o pokretu prvog podskupa istovremeno sa operacijama uklanjanja duplikata i generisanja daljih prediktora informacija o pokretu drugog podskupa koje obavlja drugo sredstvo za obradu.
[0060] U jednom primeru izvođenja, uređaj uključuje sredstva za supresiju za uklanjanje duplikata iz redova prediktora informacija o pokretu koji su rezultat obrade prvog podskupa prediktora informacija o pokretu i obrade drugog podskupa prediktora informacija o pokretu, u slučaju kada je jedan ili više prediktora informacija o pokretu koji su rezultat obrade prvog podskupa prediktora informacija o pokretu i obrade drugog podskupa prediktora informacija o pokretu su isti, da bi se obezbedio finalni skup prediktora informacija o pokretu koji se može koristiti za kodiranje pomenutog dela slike tako da su nema duplikata u finalnom skupu prediktora informacija o pokretu.
[0061] U jednom primeru izvođenja, drugo sredstvo za obradu je funkcionalno za uklanjanje duplikata iz redova prediktora informacija o pokretu dodatnog drugog podskupa prediktora informacija o pokretu u slučaju kada dodatni drugi podskup sadrži jedan ili više prediktora informacija o pokretu koji su isti, da bi obezbedilo drugi redukovani podskup prediktora informacija o pokretu.
[0062] U jednom primeru izvođenja, drugo sredstvo za obradu je funkcionalno za uklanjanje duplikata iz redova prediktora informacija o pokretu dodatnog drugog podskupa istovremeno sa skaliranjem vremenskog prediktora informacija o pokretu prvog podskupa, izvršenog prvim sredstvom za obradu.
[0063] U jednom primeru izvođenja, uređaj uključuje sredstva koja mogu da rade za dodavanje, drugom redukovanom podskupu prediktora informacija o pokretu, prediktora informacija o pokretu, koji je rezultat obrade prvog podskupa prediktora informacija o pokretu, koji nije
1
duplikat nijednog prediktora informacija o pokretu drugog redukovanog podskupa prediktora informacija o pokretu da bi se dobio finalni skup prediktora informacija o pokretu.
[0064] U jednom primeru izvođenja, uređaj uključuje sredstva za dodavanje, redukovanom podskupu prediktora informacija o pokretu, prediktora informacija o pokretu koji je rezultat obrade prvog podskupa prediktora informacija o pokretu koji nije duplikat nijedne informacije o pokretu prediktori redukovanog podskupa prediktora informacija o pokretu; i pri čemu finalni skup prediktora informacija o pokretu sadrži vektore pokreta bez duplikata između prediktora vektora pokreta redukovanog podskupa prediktora informacija o pokretu i daljeg drugog podskupa prediktora informacija o pokretu.
[0065] U jednom primeru izvođenja, uređaj uključuje sredstva za procenu trajanja obrade prvog podskupa pri čemu je obrada drugog podskupa izvedena drugim sredstvom za obradu istovremeno sa obradom prvog podskupa izvedenom od strane prvog sredstva za obradu zasnovana na procena trajanja obrade prvog podskupa.
[0066] U jednom primeru izvođenja, uređaj uključuje sredstva za procenu trajanja obrade prvog podskupa pri čemu prediktori informacija o pokretu koji su rezultat obrade drugog podskupa koji se dodaju prediktorima informacija o pokretu koji su rezultat obrade prvog podskup za dobijanje finalnog skupa prediktora informacija o pokretu zasniva se na trajanju obrade prvog podskupa.
[0067] U jednom primeru izvođenja, uređaj uključuje sredstva za određivanje, na osnovu vremenske razlike između slike dela slike i slike referentnog dela slike, da li će se ili ne proces vremenskog skaliranja primeniti na prvi podskup prediktora informacija o pokretu; i pri čemu je u slučaju kada je utvrđeno da treba primeniti proces vremenskog skaliranja, prvo sredstvo za obradu je operativno da izvrši vremensko skaliranje prediktora informacija o pokretu prvog podskupa prediktora informacija o pokretu na osnovu vremenske razlike između slike deo slike i slika referentnog dela slike; u suprotnom, u slučaju kada se utvrdi da se proces vremenskog skaliranja ne primenjuje, prvo sredstvo za obradu može da ukloni duplikate iz prediktora informacija o pokretu prvog podskupa prediktora informacija o pokretu tako da redukovani podskup koji sadrži ne -duplikat prediktora informacija o pokretu između prediktora informacija o pokretu prvog podskupa prediktora informacija o pokretu i drugog podskupa prediktora informacija o pokretu se obezbeđuje obradom koju obavljaju prvo sredstvo za obradu i drugo sredstvo za obradu.
[0068] U jednom primeru izvođenja, uređaj uključuje sredstva za supresiju za dobijanje finalnog skupa prediktora informacija o pokretu, pri čemu u slučaju kada je utvrđeno da treba primeniti proces vremenskog skaliranja, sredstvo za supresiju može da funkcioniše da bi se dobio finalni skup prediktori uklanjanjem duplikata iz prediktora informacija o pokretu koji su rezultat istovremene obrade prvog podskupa prediktora informacija o pokretu i drugog podskupa prediktora informacija o pokretu; u suprotnom, u slučaju kada se utvrdi da se proces vremenskog skaliranja ne primenjuje, prvo ili drugo sredstvo za obradu može da radi da dobije dalje prediktore informacija o pokretu, na osnovu redukovanog podskupa da obezbedi dalji drugi podskup prediktora informacija o pokretu i sredstvo za supresiju je operativno da ukloni duplikate iz drugog drugog podskupa prediktora informacija o pokretu.
[0069] U jednom primeru izvođenja, uređaj uključuje sredstva za određivanje složenosti procesa vremenskog skaliranja prvog podskupa prediktora informacija o pokretu i sredstva za supresiju, za dobijanje finalnog skupa prediktora informacija o pokretu koji nisu duplikati; pri čemu, u slučaju kada je utvrđeno da će proces vremenskog skaliranja trajati duže od unapred određenog praga trajanja, sredstvo za supresiju je operativno da ukloni duplikate iz prediktora informacija o pokretu koji su rezultat obrade prvog podskupa pokreta prediktori informacija i obrada drugog podskupa prediktora informacija o pokretu; u suprotnom, u slučaju kada je utvrđeno da će proces vremenskog skaliranja trajati kraće od unapred određenog praga trajanja, sredstvo za supresiju je operativno za dodavanje redukovanom podskupu prediktora informacija o pokretu dobijenih iz drugog podskupa prediktora vektora pokreta , prediktor informacija o pokretu koji je rezultat obrade prvog podskupa prediktora informacija o pokretu koji nije duplikat nijednog od prediktora informacija o pokretu redukovanog podskupa prediktora informacija o pokretu; pri čemu finalni skup prediktora informacija o pokretu sadrži prediktore informacija o pokretu bez duplikata između prediktora informacija o pokretu redukovanog podskupa prediktora informacija o pokretu i daljeg drugog podskupa prediktora informacija o pokretu.
[0070] U jednom primeru izvođenja, drugo sredstvo za obradu sadrži sredstva za uklanjanje duplikata iz prediktora informacija o pokretu pomenutog drugog podskupa da bi se obezbedio redukovani podskup prediktora informacija o pokretu; i sredstvo za generisanje daljeg skupa prediktora informacija o pokretu na osnovu jednog od prediktora informacija o pokretu navedenog drugog podskupa i uključujući pomenuti jedan od prediktora informacija o pokretu navedenog drugog podskupa, pri čemu nema duplikata među daljim skupom prediktora informacija o pokretu , uređaj koji dalje sadrži sredstva za supresiju za uklanjanje duplikata iz redukovanog podskupa prediktora informacija o pokretu i daljeg skupa prediktora informacija o pokretu da bi se obezbedio nedupliran skup prediktora informacija o pokretu.
[0071] U jednom primeru izvođenja, drugo sredstvo za obradu dalje sadrži sredstva za generisanje daljih prediktora informacija o pokretu na osnovu redukovanog podskupa prediktora informacija o pokretu da bi se obezbedio dalji drugi podskup prediktora informacija o pokretu; i sredstvo za uklanjanje duplikata iz prediktora informacija o pokretu daljeg drugog podskupa
1
prediktora informacija o pokretu i nedupliranog skupa prediktora informacija o pokretu da bi se obezbedio drugi ne-dupliran skup prediktora informacija o pokretu.
[0072] U jednom primeru izvođenja, sredstva za supresiju mogu da rade da dodaju, drugom nedupliciranom skupu prediktora informacija o pokretu, prediktor informacija o pokretu koji je rezultat obrade prvog podskupa prediktora informacija o pokretu koji nije duplikat nijednog od prediktore informacija o pokretu drugog nedupliranog skupa prediktora informacija o pokretu da bi se dobio finalni skup prediktora informacija o pokretu.
[0073] Treći aspekt obezbeđuje postupak kodiranja niza digitalnih slika u tok bitova, pri čemu se najmanje jedan deo slike kodira kompenzacijom pokreta u odnosu na deo referentne slike, pri čemu, za najmanje jedan deo slike za kodiranje , postupak obuhvata: dobijanje pri skupu prediktora informacija o pokretu koji se mogu koristiti za predikcija pokreta dela slike u odnosu na najmanje jedan deo referentne slike u skladu sa metodom bilo koje od primer izvođenja prvog aspekta pronalaska; biranje najmanje jednog prediktora informacija o pokretu iz skupa prediktora informacija za kodiranje dela slike; i kodiranje dela slike korišćenjem izabranog najmanje jednog prediktora informacija o pokretu.
[0074] Postupak može uključivati kodiranje informativne stavke koja identifikuje izabrani prediktor informacija o pokretu.
[0075] Četvrti aspekt obezbeđuje uređaj za kodiranje za kodiranje niza slika u tok bitova, pri čemu se najmanje jedan deo slike kodira kompenzacijom pokreta u odnosu na deo referentne slike, pri čemu uređaj za kodiranje sadrži: uređaj za izvođenje na najmanje jedan prediktor informacija o pokretu u skladu sa bilo kojom od primer izvođenja drugog aspekta pronalaska; izbor znači izbor najmanje jednog prediktora informacija o pokretu iz skupa prediktora informacija za kodiranje dela slike; i sredstvo za kodiranje za kodiranje dela slike korišćenjem izabranog najmanje jednog prediktora informacija o pokretu.
[0076] Peti aspekt obezbeđuje postupak dekodiranja toka bitova koji sadrži kodiranu sekvencu slika, pri čemu je najmanje jedan deo slike kodiran kompenzacijom pokreta u odnosu na deo referentne slike, pri čemu postupak obuhvata najmanje jedan deo slike koje treba dekodirati: dobijanje skupa prediktora informacija o pokretu koji se mogu koristiti za predikcija pokreta dela slike u odnosu na najmanje jedan deo referentne slike u skladu sa metodom bilo koje od primer izvođenja prvog aspekta pronalaska; biranje najmanje jednog prediktora informacija o pokretu iz skupa prediktora informacija za dekodiranje dela slike; i dekodiranje dela slike korišćenjem izabranog najmanje jednog prediktora informacija o pokretu.
[0077] Šesti aspekt obezbeđuje uređaj za dekodiranje za dekodiranje bitova koji sadrži kodiranu sekvencu slika, pri čemu je najmanje jedan deo slike kodiran kompenzacijom pokreta u odnosu
1
na deo referentne slike, pri čemu uređaj za dekodiranje sadrži: uređaj za izvođenje najmanje jedan prediktor informacija o pokretu u skladu sa uređajem bilo koje od primer izvođenja drugog aspekta pronalaska; sredstvo za izbor za izbor najmanje jednog prediktora informacija o pokretu iz skupa prediktora informacija za dekodiranje dela slike; i sredstvo za dekodiranje za dekodiranje dela slike koristeći izabrani najmanje jedan prediktor informacija o pokretu.
[0078] Biće jasno da primeri izvođenja prema različitim aspektima pronalaska mogu da se koriste za P i B isečke i za, kako jednosmerne, tako i dvosmerne Inter predikcije.
[0079] Najmanje delovi postupka prema pronalasku mogu biti kompjuterski implementirani. Shodno tome, predmetni pronalazak može da ima oblik u potpunosti hardverskog primera izvođenja, potpuno softverskog primera izvođenja (uključujući firmver, rezidentni softver, mikro-kod, itd.) ili primera izvođenja koji kombinuje softverske i hardverske aspekte koji se svi generalno mogu ovde označiti kao "kolo", "modul" ili "sistem". Štaviše, ovaj pronalazak može da bude u obliku proizvoda kompjuterskog programa oličenog u bilo kom opipljivom medijumu izražavanja koji ima kompjuterski upotrebljiv programski kod otelotvoren u medijumu.
[0080] Pošto predmetni pronalazak može da se primenjuje u softveru, predmetni pronalazak može da se izvede i kao kompjuterski čitljiv kod za obezbeđivanje programabilnog aparata na bilo kom pogodnom nosaču. Opipljivi nosački medijum može da sadrži medijum za skladištenje kao što je disketa, CD-ROM, hard disk, uređaj sa magnetnom trakom ili čvrsti memorijski uređaj i slično. Privremeni nosački medijum može da uključuje signal kao što je električni signal, elektronski signal, optički signal, akustični signal, magnetni signal ili elektromagnetni signal, npr. mikrotalasni ili RF signal.
[0081] Sada će biti opisani primeri izvođenja prema pronalasku, samo kao primer, i uz pozivanje se na sledeće crteže na kojima:-
Slika 1 je šematski dijagram skupa prediktora vektora pokreta koji se koriste u procesu prediktovanja vektora pokreta u kontekstu primera izvođenja prema predmetnom pronalasku;
Slika 2 je dijagram toka koji ilustruje korake postupka iz prethodnog stanja tehnike za izvođenje skupa prediktora vektora pokreta;
Slika 3 je blok dijagram koji ilustruje komponente uređaja za obradu u kojme se mogu implementirati primeri izvođenja prema pronalasku;
Slika 4 je blok dijagram koji ilustruje komponente uređaja za enkodiranje u skladu sa primerima izvođenja prema pronalasku;
1
Slika 5 je blok dijagram koji ilustruje komponente uređaja za dekodiranje u skladu sa primerima izvođenja prema pronalasku;
Slika 6 je dijagram toka koji ilustruje korake postupka za dobijanje skupa prediktora informacija o pokretu u skladu sa prvim primerom izvođenja prema pronalasku;
Slika 7 je dijagram toka koji ilustruje korake postupka za dobijanje skupa prediktora informacija o pokretu u skladu sa drugim primerom izvođenja prema pronalasku;
Slika 8 je dijagram toka koji ilustruje korake postupka za dobijanje skupa prediktora informacija o pokretu u skladu sa trećim primerom izvođenja prema pronalasku;
Slika 9 je dijagram toka koji ilustruje korake postupka za dobijanje skupa prediktora informacija o pokretu u skladu sa petim primerom izvođenja prema pronalasku;
Slike 10(a) - 10(c) ilustruju šeme za generisanje prediktora vektora pokreta u skladu sa jednim ili više primera izvođenja prema pronalasku; i
Slika 11 je šematski dijagram koji ilustruje proces vremenskog skaliranja prediktora koji se koristi u primerima izvođenja prema pronalasku.
[0082] Slika 3 šematski ilustruje uređaj 200 za obradu konfigurisan da implementira najmanje jedan primer izvođenja prema predmetnom pronalasku. Uređaj 200 za obradu može biti uređaj kao što je mikro-računar, radna stanica ili laki prenosivi uređaj. Uređaj 200 sadrži komunikacionu magistralu 213 sa kojom su poželjno povezani:
- centralna procesorska jedinica 211, kao što je mikroprocesor, označena kao CPU;
- memoriju 207 samo za čitanje, označenu kao ROM, za čuvanje kompjuterskih programa za implementaciju pronalaska;
- memoriju 212 sa slučajnim pristupom, označenu kao RAM, za skladištenje izvršnog koda postupaka prema primerima izvođenja pronalaska kao i registara prilagođenih za snimanje promenljivih i parametara neophodnih za implementaciju postupka za enkodiranje sekvence digitalnih slika i/ili postupka dekodiranja toka bitova prema primerima izvođenja pronalaska; i
- komunikacijski interfejs 202 povezan sa komunikacijskom mrežom 203 preko koje se prenose digitalni podaci koji se obrađuju.
[0083] Opciono, aparat 200 može takođe da uključuje sledeće komponente:
1
- sredstvo 204 za skladištenje podataka, kao što je hard disk, za čuvanje kompjuterskih programa za implementaciju postupka u skladu sa jednim ili više primera izvođenja prema pronalasku i podataka koji se koriste ili proizvode tokom implementacije jednog ili više primera izvođenja prema pronalasku;
- jedinica 205 diska za disk 206, pri čemu je jedinica diska prilagođena da čita podatke sa diska 206 ili da upisuje podatke na navedeni disk;
- ekran 209 koji prikazuje podatke i/ili služi kao grafički interfejs sa korisnikom, pomoću tastature 210 ili bilo kog drugog sredstva za prikazivanje.
[0084] Aparat 200 može da bude povezan sa različitim perifernim uređajima, kao što je na primer digitalna kamera 200 ili mikrofon 208, pri čemu je svaki povezan sa ulazno/izlaznom karticom (nije prikazano) kako bi se dostavili multimedijalni podaci u aparat 200.
[0085] Komunikaciona magistrala obezbeđuje komunikaciju i interoperabilnost između različitih elemenata uključenih u aparat 200 ili povezanih sa njim. Manifestacija magistrale nije ograničavajuće, a naročito je centralna procesorska jedinica u stanju da prenosi uputstva bilo kom elementu aparata 200 direktno ili posredstvom drugog elementa aparata 200.
[0086] Disk 206 može biti zamenjen bilo kojim informacionim medijumom kao što je na primer kompakt disk (CD-ROM), koji se može ponovo upisivati ili ne, ZIP disk ili memorijska kartica i, uopšteno govoreći, sredstvom za skladištenje informacija koje može da se čita mikrokompjuterom ili mikroprocesorom, integrisanim ili ne u aparat, eventualno uklonjivim i prilagođenim za skladištenje jednog ili više programa čije izvršavanje omogućava postupak enkodiranja sekvence digitalnih slika i/ili postupak dekodiranja toka bitova u skladu sa pronalaskom koji se implementira.
[0087] Izvršni kod može biti uskladišten ili u memoriji 207 samo za čitanje, na hard disku 204 ili na prenosivom digitalnom medijumu kao što je na primer disk 206 kao što je prethodno opisan. Prema jednoj varijanti, izvršni kod programa može se primiti pomoću komunikacione mreže 203, preko interfejsa 202, kako bi se uskladištio u jednom od sredstava za skladištenje aparata 200 pre nego što se izvrši, kao što je hard disk 204.
[0088] Centralna procesorska jedinica 211 je prilagođena da kontroliše i usmerava izvršenje instrukcija ili delova softverskog koda programa ili programâ prema pronalasku, instrukcije koje su uskladištene u jednom od gore navedenih sredstava za skladištenje. Prilikom uključivanja, program ili programi koji su uskladišteni u nepromenljivoj memoriji, na primer na hard disku 204 ili u memoriji 207 samo za čitanje, prenose se u memoriju 212 sa slučajnim pristupom, koja zatim sadrži izvršni kod programa ili programâ, kao i registre za čuvanje promenljivih i parametara neophodnih za implementaciju pronalaska.
1
[0089] U ovom primeru izvođenja, aparat je programabilni aparat koji koristi softver za implementaciju pronalaska. Međutim, alternativno, predmetni pronalazak može da se implementira u hardveru (na primer, u obliku integrisanog kola specifičnog za aplikaciju ili ASIC).
[0090] Slika 4 ilustruje blok dijagram enkodera prema najmanje jednom primeru izvođenja prema pronalasku. Enkoder je predstavljen povezanim modulima, pri čemu je svaki modul prilagođen da implementira, na primer, u obliku instrukcija za programiranje koje treba da izvrši CPU 211 uređaja 200, najmanje jedan odgovarajući korak postupka koji implementira najmanje jedan primer izvođenja enkodiranja slika sekvence slika u skladu sa jednim ili više primera izvođenja prema pronalasku.
[0091] Originalna sekvenca digitalnih slika i0 do u 301 se prima kao ulaz od strane enkodera 30. Svaka digitalna slika je predstavljena skupom uzoraka, poznatih kao pikseli.
[0092] Tok 310 bitova izlazi iz enkodera 30 nakon implementacije procesa enkodiranja.
[0093] Tok 310 bitova sadrži mnoštvo jedinica za kodiranje ili isečaka, pri čemu svaki isečak sadrži zaglavlje isečaka za prenos vrednosti enkodiranja parametara enkodiranja koji se koriste za enkodiranje isečaka i telo isečaka, koje sadrži enkodirane video podatke.
[0094] Ulazne digitalne slike i0 do u 301 su podeljene na blokove piksela od strane modula 302. Blokovi odgovaraju delovima slike i mogu biti promenljive veličine (npr. 4x4, 8x8, 16x16, 32x32 piksela). Za svaki ulazni blok se bira režim kodiranja. Obezbeđene su dve porodice režima kodiranja: režimi kodiranja zasnovani na kodiranju prostorne predikcije (Intra predikcija) i režimi kodiranja zasnovani na vremenskoj predikciji (Inter coding, Bidir, SKIP). Testirani su mogući režimi kodiranja.
[0095] Modul 303 implementira Intra predikciju, u kojoj se dati blok koji se enkodira prediktuje pomoću prediktora izračunatog iz piksela iz okoline navedenog bloka koji se enkodira. Indikacija izabranog Intra prediktora i razlika između datog bloka i njegovog prediktora se enkodira kako bi bio obezbeđen rezidual ukoliko je izabrano Intra kodiranje.
[0096] Vremenska predikcija se implementira pomoću modula 304 za procenu pokreta i modula 305 za kompenzaciju pokreta. Prvo se od strane modula 304 za procenu pokreta bira referentna slika iz skupa referentnih slika 316, i deo referentne slike, koji se takođe naziva referentna oblast ili deo slike, koji je najbliža oblast datom bloku koji se enkodira. Modul 305 za kompenzaciju pokreta zatim prediktuje blok koji se enkodira, tako što koristi izabranu oblast. Razliku između izabrane referentne oblasti i datog bloka, koja se takođe naziva i rezidualni blok, izračunava modul 305 za kompenzaciju pokreta. Izabrana referentna oblast je označena vektorom pokreta.
2
[0097] Dakle, u oba slučaja (prostorna i vremenska predikcija), rezidual se izračunava tako što se predikcija oduzima od originalnog prediktovanog bloka.
[0098] U INTRA predikciji koju implementira modul 303, enkodiran je pravac predikcije. U vremenskoj predikciji, enkodiran je najmanje jedan vektor pokreta.
[0099] Informacije koje se odnose na vektor pokreta i rezidualni blok su ekodirane ako se izabere Inter predikcija. Da bi se dalje smanjila frekvencija bitova, vektor pokreta je kodiran razlikom u odnosu na prediktor vektora pokreta. Prediktori vektora pokreta skupa prediktora informacija o pokretu se dobijaju iz polja 318 vektora pokreta pomoću modula 317 za predikciju i kodiranje vektora pokreta.
[0100] Skup prediktora vektora pokreta iz kojih se bira prediktor vektora pokreta za enkodiranje trenutnog vektora pokreta generiše se na način koji će biti detaljnije objašnjen u nastavku teksta u vezi sa bilo kojom od slika 7 do 10. Za dati trenutni blok koji se enkodira, u nekim primerima izvođenja prema pronalasku, broj N prediktora vektora pokreta je određen, i shodno tome, indeks izabranog prediktora vektora pokreta, koji je stavka informacije koja predstavlja izabrani prediktor vektora pokreta, može sa se enkodira korišćenjem unapred određenog broja bitova u skladu sa brojem N prediktora vektora pokreta. Ovaj unapred određeni broj bitova takođe može da se povrati od strane dekodera čak i u slučaju gubitaka, tako da može da se obezbedi da dekoder bude u stanju da analizira tok bitova čak i u slučaju grešaka ili gubitaka. N prediktora vektora pokreta se bira u skladu sa različitim primerima izvođenja prema pronalasku tako da oni svi budu međusobno različiti, kako bi se poboljšala efikasnost kompresije.
[0101] Enkoder 30 dalje sadrži selekcioni modul 306 za izbor režima kodiranja. Selekcioni modul 306 primenjuje kriterijum cene enkodiranja, kao što je kriterijum distorzije brzine, da bi odredio koji je najbolji režim između režima prostorne predikcije i režima vremenske predikcije. Da bi se dodatno smanjile redundanse, transformacioni modul 307 primenjuje transformaciju na rezidualni blok, dobijeni transformisani podaci se zatim kvantuju od strane modula kvantizacije 308 i entropijski enkodiraju od strane modula 309 za entropijsko enkodiranje. Na kraju, enkodirani rezidualni blok trenutnog bloka koji se enkodira, ubacuje se u tok 310 bitova, zajedno sa informacijama koje se odnose na upotrebljeni prediktor, kao što je indeks izabranog prediktora vektora pokreta. Za blokove enkodirane u režimu 'SKIP', samo referenca na prediktor je enkodirana u toku bitova, bez ikakvog rezidualnog bloka.
[0102] Enkoder 30 takođe vrši dekodiranje enkodirane slike da bi proizveo referentnu sliku za procenu pokreta narednih slika. Ovo omogućava da enkoder i dekoder koji primaju tok bitova imaju iste referentne frejmove. Modul 311 inverzne kvantizacije vrši inverznu kvantizaciju kvantovanih podataka, nakon čega sledi inverzna transformacija modulom 312 inverzne transformacije. Modul 313 reverzne intra predikcije koristi informacije predikcije kako bi odredio koji prediktor da koristi za dati blok i modul 314 reverzne kompenzacije pokreta zapravo dodaje rezidual dobijen od modula 312 u referentnu oblast dobijenu iz skupa referentnih slika 316. Opciono, filter 315 za deblokiranje se primenjuje kako bi uklonio efekte blokiranja i poboljšao vizuelni kvalitet dekodirane slike. Na dekoderu se primenjuje isti filter za deblokiranje, tako da, ako nema gubitka prilikom transmisije, enkoder i dekoder primenjuju istu obradu.
[0103] Slika 5 ilustruje blok dijagram dekodera 40 prema najmanje jednom primeru izvođenja pronalaska. Dekoder je predstavljen povezanim modulima, pri čemu je svaki modul prilagođen da implementira, na primer, u obliku instrukcija za programiranje koje treba da izvrši CPU 211 uređaja 200, odgovarajući korak metode kojom se implementira ostvarenje pronalaska.
[0104] Dekoder 40 prima tok bitova 401 koji sadrži jedinice za kodiranje, od kojih je svaka sastavljena od zaglavlja koje sadrži informacije o parametrima kodiranja i tela koje sadrži kodirane video podatke. Kao što je objašnjeno na slici 4, kodirani video podaci su entropijski kodirani, a indeksi prediktora vektora pokreta su kodirani, za dati blok, na unapred određenom broju bitova. Primljeni kodirani video podaci se entropijski dekodiraju od strane modula 402. Preostale podatke zatim dekvantuje modul 403, a zatim modul 404 primenjuje reverznu transformaciju da bi se dobile vrednosti piksela.
[0105] Podaci o režimu su takođe entropijski dekodirani i na osnovu režima se vrši dekodiranje tipa INTRA ili dekodiranje tipa INTER.
[0106] U slučaju INTRA režima, INTRA prediktor se određuje od strane modula 405 intra reverznog predviđanja na osnovu intra režima predviđanja specificiranog u toku bitova.
[0107] Ako je režim INTER, informacije o predikciji pokreta se izdvajaju iz toka bitova kako bi se pronašla referentna oblast koju koristi enkoder. Informacija predviđanja pokreta se sastoji od indeksa referentnog frejma i ostatka vektora pokreta. Prediktor vektora pokreta se dodaje reziduu vektora pokreta da bi se dobio vektor pokreta pomoću modula 410 za dekodiranje vektora pokreta.
[0108] Modul za dekodiranje vektora pokreta 410 primenjuje dekodiranje vektora pokreta za svaki trenutni blok kodiran predviđanjem pokreta. Jednom kada se dobije indeks prediktora vektora pokreta za trenutni blok, stvarna vrednost vektora pokreta povezanog sa trenutnim blokom se može dekodirati i koristiti za primenu kompenzacije pokreta unazad od strane modula 406. Referentna oblast naznačena dekodiranim vektorom pokreta se ekstrahuje iz referentne slike 408 da primeni kompenzaciju pokreta unazad 406. Podaci o polju vektora pokreta 411 se ažuriraju sa dekodiranim vektorom pokreta da bi se koristili za inverzno predikcija sledećih dekodiranih vektora pokreta.
[0109] Na kraju se dobija dekodirani blok. Primenjen je filter 407 za deblokiranje; slično filteru 315 za deblokiranje primenjenom na enkoderu. Dekodirani video signal 409 konačno je obezbeđen od strane dekodera 40.
[0110] Slika 6 je dijagram toka koji ilustruje korake postupka u skladu sa prvim primerom izvođenja prema pronalasku, za izvođenje skupa potencijalnih prediktora informacija o pokretu pogodnih za kodiranje slikovnog dela slike u odnosu na referentni deo slike. U prvom koraku postupka razmatra se 7 pozicija bloka (701 do 707). Ove pozicije odgovaraju prostornim i vremenskim pozicijama prikazanim na slici 1. Modul 708 verifikuje dostupnost vektora pokreta za 7 pozicija bloka i bira 4 vektora pokreta kao prediktore vektora pokreta. U ovom modulu, vektor pokreta je dostupan kao prediktor ako postoji i ako blok vektora pokreta nije Intra kodiran. Izbor i verifikacija 4 prediktora vektora pokreta opisani su pod sledećim uslovima:
• Ako je vektor pokreta (701) dostupan (ako postoji i ako ovaj blok nije intra kodiran), bira se vektor pokreta bloka „Levo“ i koristi kao prediktor 1 (610).
• Ako je vektor pokreta „Gore“ (702) dostupan, bira se vektor pokreta bloka „Gore“ i koristi kao prediktor 2 (711).
• Ako je vektor pokreta "Gore desno" (703) dostupan, bira se vektor pokreta bloka „Gore desno“ i koristi kao prediktor 3 (712).
• Ako je vektor pokreta „Dole levo“ (704) dostupan, bira se vektor pokreta bloka „Dole levo“ i koristi kao prediktor 4 (713).
• Ako jedan (ili više) od ovih prediktora nije dostupan i ako je dostupan vektor pokreta „Gore levo“ (705), vektor pokreta bloka „Gore levo“ se dodaje skupu izabranih prediktora vektora pokreta nakon dodatog prostornog prediktora.
• Ako je vektor pokreta "H" dostupan, bira se vektor pokreta bloka "H" i koristi kao prediktor 5 (714). Ako "H" blok nije dostupan, proverava se dostupnost "kolociranog" vektora pokreta (vektora pokreta bloka na istoj poziciji u trenutnom bloku) i, ako je kolocirani vektor pokreta dostupan, on se koristi kao vremenski prediktor. Provera dostupnosti modula 708 zahteva 1 ciklus.
[0111] Pošto skup prediktora vektora pokreta izabranih na početku procesa sadrži samo prostorne prediktore 1, 2, 3, 4, složenost procesa selekcije 715 je smanjena u poređenju sa procesom selekcije iz prethodnog stanja tehnike na slici 2, koji obuhvata 4 prostorna i 1 vremenski prediktor.
2
[0112] Postupak supresije se sastoji u poređenju svakog izabranog prediktora sa svim drugim izabranim prediktorima i u uklanjanju onih izabranih prediktora koji su jednaki drugom izabranom prediktoru (dok se zadržava drugi izabrani prediktor čiji je uklonjeni prediktor duplikat) da bi se obezbedio skup prediktora u kome nijedan od prediktora nije duplikat nekog drugog. Proces supresije za P isečke uzima u obzir vrednosti vektora pokreta i njihove indekse referentnog frejma. Shodno tome, dve komponente vektora pokreta i njegov indeks referentnog frejma se upoređuju sa svim odgovarajućim komponentama drugih vektora pokreta i samo ako su ove tri vrednosti jednake, prediktor se uklanja iz (ili se ne dodaje) skupu. Za B frejm, ovaj kriterijum se može proširiti na pravac i liste. Dakle, prediktor se smatra dupliranim prediktorom ako koristi isti pravac, iste liste (L0, L1 ili L0 i L1), iste indekse referentnog frejma i istu vrednost vektora pokreta (MV_L0 i MV_L1 za bi predikcija) u skupu odabranih vektora pokreta. Proces supresije traje 1 ciklus kada je potrebno uporediti najviše 5 prediktora. Zaista, može se smatrati da 12 poređenja može da se izračuna u jednom ciklusu. Maksimalan broj poređenja za proces supresije u najsloženijem slučaju jednak je zbiru od 0 do N-1. Pošto je maksimalan broj prediktora na početku procesa supresije 4 umesto 5, maksimalan broj poređenja koja treba izvesti je 6 (tj. 3+2+1 =6) u poređenju sa 10 kao što je slučaj za 5 odabranih prediktora prema prethodnom stanju tehnike na slici 2. Na kraju ovog procesa 715 supresije, generiše se redukovani skup prediktora 716. Redukovani skup 716 prediktora vektora pokreta sadrži najviše 4 prediktora u poređenju sa 5 u prethodnom stanju tehnike.
[0113] Modul 717 za generisanje prediktora vektora pokreta generiše nove kandidate za prediktore na osnovu prediktora redukovanog skupa prediktora vektora pokreta. Može se koristiti nekoliko šema za kreiranje takvih prediktora, a jedna takva šema će biti opisana kasnije sa referencom na Sliku 10(a) do (c). Može se smatrati da proces koji izvodi modul za generisanje prediktora vektora pokreta traje najmanje 1 ciklus i proizvodi drugi skup prediktora 718. Pošto skup redukovanih prediktora 716 generalno sadrži manje prediktora od redukovanog skupa prediktora 616 preka prethodnom stanju tehnike koje je ilustrovano na slici 2, u proseku se u redukovanom skupu 717 prediktora vektora pokreta generiše manje kombinovanih prediktora i skaliranih prediktora u poređenju sa prethodnim stanjem tehnike i složenost procesa je smanjena.
[0114] Zatim, modul 721 za obradu supresijom koji radi na sličan način kao i modul 715 procesa supresije, uklanja duplikate kandidata iz drugog skupa 718 prediktora i redukovanog skupa 716 prediktora upoređivanjem odgovarajućih komponenti vektora pokreta i povezanih parametara informacija o pokretu. U prethodnom stanju tehnike ilustrovanom na slici 2, trajanje ovog konkretnog procesa može da dostigne 3 ciklusa u zavisnosti od broja prediktora generisanih u drugom skupu 718 prediktora, posebno u slučaju kada se primenjuje generisanje prediktora vektora pokreta trenutnog HEVC dizajna. Proces 721 supresije proizvodi drugi redukovani skup prediktora 722 vektora pokreta.
[0115] Na kraju, vremenski prediktor 714 se upoređuje sa drugim redukovanim skupom prediktora 722 vektora pokreta u modulu 719. U obradi supresije i promene redosleda koju izvodi modul 719, vremenski prediktor se poredi sa najviše 5 prediktora da bi se odredilo da li je vremenski prediktor dvostruki prediktor. Ako prediktor nije duplikat prediktora, vremenski prediktor se ubacuje u listu prediktora neposredno pre poslednjeg prostornog prediktora koji nije duplikat prediktora. Vremenska pozicija je određena supresionim modulom 715 za obradu i preneta je modulu 719 za obradu, i odgovara broju prediktora u 715. Lista prediktora je skraćena ako sadrži više od 5 prediktora kako bi se proizveo finalni skup prediktora 720. Može se primetiti da je maksimalni broj poređenja izvedenih od strane modula 7195 u najkompleksnijem slučaju što je smanjenje u poređenju sa supresionim modulom 619 iz prethodnog stanja tehnike koji je ilustrovan na slici 2.
[0116] U alternativnom primeru izvođenja, supresioni modul 719 za obradu može da radi na isti način kao i supresioni modul 619 za obradu iz prethodnog stanja tehnike. U tom slučaju, vremenski prediktor se dodaje skupu prediktora samo ako redukovani skup prediktora 722 sadrži najviše 4 prediktora. U suprotnom se dodaje na kraj liste prediktora.
[0117] Slika 7 ilustruje drugi primer izvođenja prema pronalasku. Glavna razlika u odnosu na primer izvođenja sa slike 6 je u tome što trajanje procesa generisanja prediktora vektora pokreta koji izvodi modul 817 iznosi 2 ciklusa umesto 1 ciklusa kao u slučaju modula 717 sa slike 6. U slučaju slike 7, proces supresije za uklanjanje dvostrukih prediktora skupa 818 drugih prediktora se ne izvršava paralelno sa procesom vremenskog skaliranja 809. Shodno tome, na slici 7, u supresionom modulu 819, vremenski prediktor 814 se poredi i sa redukovanim skupom prediktora 816 vektora pokreta i sa prediktorima skupa 818 drugih prediktora. U ovom procesu, ako vremenski prediktor 814 nije duplirani prediktor prediktora vektora pokreta iz redukovanog skupa 816 prediktora vektora pokreta, vremenski prediktor 814 se dodaje u redukovani skup prediktora vektora pokreta posle prostornih prediktora. Zatim se prediktori drugod skupa 818 prediktora upoređuju sa prediktorima redukovanog skupa 816 prediktora vektora pokreta, sa temporalnim prediktorom 814 ako je dodat, i sa ostalim prediktorima drugog skupa 818 prediktora.
[0118] Prednost obrade prema primerima izvođenaj sa slike 6 ili slike 7 proizilazi iz potpunog izvršavanja procesa 709 skaliranja paralelno sa prvim supresionim procesom 715 ili 815 i procesom 717 ili 817 generisanja prediktora vektora pokreta. Prema složenost svakog procesa, dodatni supresioni procesi 721 mogu da budu uključeni u postupak kojim se unapred određuje
2
skup koji nije skup duplikata, kako bi se smanjila složenost finalnog procesa 719 supresije. Prema tome, u prvom primeru izvođenja prema pronalasku može se smatrati da ukupan proces supresije je podeljen na dva procesa supresije koje implementiraju moduli 721 i 719.
[0119] Proces paralelnog skaliranja ima povoljan uticaj na efikasnost kodiranja. Zapravo, pošto se vremenski prediktor 714 ili 814 ne koriste za generisanje drugog skupa prediktora 718 ili 818, to ima uticaj na generisanje prediktora vektora pokreta.
[0120] Koraci postupka generisanja skupa prediktora vektora pokreta u skladu sa trećim primerom izvođenja prema pronalasku ilustrovani su u dijagramu toka na slici 8. Postupak prema trećem aspektu pronalaska dodatno smanjuje uticaj na efikasnost kodiranja.
[0121] Selekcioni modul 908 radi na sličan način kao odgovarajući selekcioni moduli 708 i 808 iz prvog i drugog primera izvođenja prema pronalasku, kako bi izabrao 4 vektora pokreta 910 do 913, na osnovu njihove dostupnosti, od prostornih i vremenskih blok pozicija 901 do 907.
[0122] Glavna razlika je upotreba modula odluke o skaliranju 923. U modulu odluke o skaliranju 923 se poredi vremensko rastojanje vektora vremenskog pokreta i vremensko rastojanje vremenskog prediktora (prediktor broj 5). Za jednosmerni tip inter predviđanja, ovo znači da je razlika u broju redosleda slika (POC) između vremenskog frejma (frejm H i raspoređenih blokova) i referentnog frejma na koji ukazuje vektor temporalnog pokreta (H ili kolociran) je u poređenju sa vremenskim rastojanjem između trenutnog frejma i referentnog frejma vremenskog prediktora. Ako su ove vremenske udaljenosti jednake, modul odluke o skaliranju 923 vraća vrednost "Ne". U suprotnom, to znači da je potreban proces skaliranja, a modul odluke o skaliranju 923 vraća vrednost "Da". Za tip dvosmernog predviđanja, modul odlučivanja 923 upoređuje vremenske udaljenosti za svaku listu i vraćena odluka zavisi od odluka za obe liste. Dakle, ako za obe liste nije potrebno skaliranje, modul 923 odluke o skaliranju vraća vrednost "Ne" i ako je potreban najmanje jedan proces skaliranja za jednu listu, modul odluke o skaliranju 923 vraća vrednost "Da".
[0123] Ako modul odluke o skaliranju 923 vrati vrednost "Ne", vremenski prediktor 5 (924) se koristi u procesu 915 supresije. Shodno tome, generisanje prediktora vektora pokreta 917 koristi vrednost vremenskog prediktora 5 za generisanje drugi skup prediktora 918. Zatim se proces 921 supresije primenjuje na redukovani skup 916 prediktora i drugi skup 918 prediktora. Zatim, modul odlučivanja 925 donosi odluku o obezbeđivanju finalnog skupa prediktora vektora pokreta na osnovu odluke modula odluke o skaliranju 923 - tj. odluka doneta modulom odluke o skaliranju 923 se koristi za određivanje da li je redukovani skup prediktora proizveden procesom 921 supresije finalni skup prediktora - kada se vrati "Ne" modulom odlučivanja 923 se utvrđuje da je redukovani skup prediktora proizveden procesom 921 supresije finalni skup prediktora.
2
Prema tome, kada modul 923 odluke o skaliranju vrati "Ne" što ukazuje da skaliranje nije potrebno, izvođenje skupa prediktora radi na sličan način kao i izvođenje skupa prediktora kao što je ilustrovano na slici 2.
[0124] U suprotnom, ako modul odluke 923 o skaliranju vrati vrednost "Da", što ukazuje da je vremenski prediktor skaliran u modulu 909 da bi proizveo vremenski prediktor broj 5 (914), utvrđuje se da je redukovani skup prediktora proizveden procesom 921 supresije nije finalni skup prediktora. U ovom slučaju, modul 915 procesa supredije nije koristio vremenski prediktor za proces supresije i modul 917 za generisanje prediktora vektora pokreta nije koristio vremenski prediktor za kreiranje novih prediktora. Shodno tome, na sličan način kao što je proces ilustrovan na dijagramu toka sa slike 6, proces skaliranja 909 vremenskog prediktora 5 se izvršava paralelno sa generisanjem prediktora 917 vektora pokreta. Modul 925 odluke o skaliranju, nakon drugog procesa supresije, vraća vrednost „Da“. Tako se skalirani vremenski prediktor 914 upoređuje sa prediktorima drugog redukovanog skupa prediktora 922 u procesu 919 supresije. Kao i u slučaju modula 719 procesa supresije sa slike 6, ako vremenski prediktor 914 nije neduplicirani prediktor prediktora u drugom redukovanom skupu prediktora, modul 919 za supresiju i preuređivanje umeće vremenski prediktor u skup prediktora nakon prvog redukovanog skupa 916 prediktora da obezbedi finalni skup 920 prediktora.
[0125] Da rezimiramo ovaj primer izvođenja, proces 909 skaliranja se izvršava paralelno sa procesom 917 generisanja drugog skupa 918 samo ako je potrebno da se vremenski prediktor skalira.
[0126] Ako uzmemo u obzir da generisanje prediktora 917 vektora pokreta traje 1 ciklus, i ako vremenskom prediktoru nije potreban proces skaliranja, potrebna su 4 ciklusa da bi se proizveo Merge skup prediktora, u suprotnom je potrebno 5 ciklusa. Shodno tome, proces se redukuje za 2 ciklusa u najsloženijem slučaju kao u prvom primeru izvođenja. Glavne prednosti ovog primera izvođenja u poređenju sa prethodnim su upotreba vremenskog prediktora za generisanje drugog skupa prediktora samo kada vremenskom prediktoru nije potrebno skaliranje. Shodno tome, efikasnost kodiranja može da se poboljša u odnosu na prvi primer izvođenja.
[0127] U dodatnom primeru izvođenja, moguće je razmotriti složenost procesa skaliranja. Na primer, možda je moguće znati da li proces skaliranja zahteva samo jedan ciklus. Jedan ciklus je potreban samo ako je potrebno da se promeni znak prediktora vektora pokreta. U tom slučaju, vremenski prediktor je dostupan u isto vreme kada i redukovani skup 916 prediktora. Dakle, vremenski prediktor se može koristiti za proces 921 supresije. U tom slučaju, modul 925 odluke o skaliranju vraća vrednost "Da" i moduli 922 i 919 nisu potrebni da bi se obezbedio finalni skup
2
prediktora. Shodno tome, trajanje procesa derivacije se smanjuje za jedan ciklus jer proces 919 supresije traje 1 ciklus.
[0128] Slika 9 je dijagram toka koji ilustruje metodu izvođenja skupa prediktora vektora pokreta u skladu sa četvrtim primerom izvođenja prema pronalasku. Dijagram toka na slici 9 je zasnovan na dijagramu sa slike 6. Kao posledica toga, moduli 1001 do 1020 i 1022 sa slike 9 su redom isti kao moduli 701 do 720 i 720 sa slike 6. Razlike su u paralelnoj upotrebi nedupliranih prediktora dodavanjem pomaka kao što će biti opisano za generisanje prediktora vektora pokreta u vezi sa slikama 10(a)-(c). Kada je prvi prediktor 11010 definisan, modul 1023 generiše listu prediktora bez duplikata. Kao što je objašnjeno u vezi sa slikom 10(c), ovaj proces se sastoji u dodavanju pomaka na jednu ili obe komponente vektora pokreta prvog prediktora 1010. Skup prediktora 1024 bez duplikata sadrži 4 prediktora koji su svi međusobno različiti i različiti od prvog prediktora 1010 dostupnog nakon provere dostupnosti implementirane od strane modula 1008 za obradu odabirom. Kao posledica toga, u ovom primeru izvođenja, skup prediktora koji nisu duplirani 1024, kada se dodaju prvom prediktoru 1010, sadrži 5 nedupliranih prediktora kao što je fiksno za Merge režim. Generisanje prediktora koji nisu duplikati se izvršava paralelno sa procesom 1015 supresije. Modul 1025 za obradu supresijom upoređuje skup prediktora koji se ne dupliraju 1024 sa redukovanim skupom prediktora 1016 da bi dobio samo 5 prediktora. Skup prediktora bez duplikata 1026 sadrži redukovani skup prediktora 1016 praćen nedupliranim skupom prediktora generisanim u 1024. Može se primetiti da proces supresije 1025 generalno zahteva najviše 6 poređenja. Najsloženiji slučaj se dešava kada skup prediktora redukovanog vektora pokreta 1016 sadrži 4 prediktora. Skup prediktora 1024 bez duplikata sadrži 4 prediktora. Teoretski, proces supresije zahteva 16 poređenja u najkompleksnijem slučaju (4 prediktora prediktora redukovanog vektora pokreta postavljena su 1016 sa 4 prediktora neduplikovanih prediktora skupa 1024). Međutim, prediktori vektora pokreta u skupu prediktora koji nisu duplikati 1024 se razlikuju od prvog prediktora, tako da samo drugi, treći i četvrti prediktori skupa prediktora redukovanog vektora pokreta 1016 treba da se uporede sa skupom prediktora vektora pokreta bez duplikata 1024. Kao posledica toga, potrebno je 12 (4 sa 3) poređenja. Prediktori su svi različiti jedan od drugog u skupu prediktora bez duplikata 1024, tako da u najkompleksnijem slučaju, ako su 3 prva prediktora neduplikatnih prediktora 1024 jednaka 3 poslednja prediktora skupa prediktora redukovanog vektora pokreta 1016, može se pretpostaviti da se poslednji prediktor u 1024 razlikuje od prediktora prediktora redukovanog vektora pokreta skupa 1016. Dakle, potrebno je samo 9 (3 sa 3) poređenja.
[0129] Zatim se skup drugih prediktora1018 vektora pokreta generiše od strane modula 1017 za generisanje prediktora vektora pokreta. Proces 1021 supresije i promene redosleda proverava da
2
li su prediktori vektora pokreta drugog skupa prediktora 1018 neduplikati u poređenju sa skupom koji nije 1026 duplikat. koji već sadrži 5 prediktora. Ako se prediktor drugog prediktorskog skupa 1018 razlikuje od svih ostalih, on se ubacuje na poziciju broja prediktora u redukovanom skupu prediktora 1016 (nakon prediktora redukovanog prediktorskog skupa 1016 na listi). Sledeći koraci 1022, 1019 i 1020 rade na isti način kao i obrada modula 722, 719 i 720 na slici 6.
[0130] Može se primetiti da se generisanje ne-dupliranih prediktora 1023 može dodati na kraju procesa derivacije, nakon procesa supresije 1019. Ovo bi zahtevalo dodatni proces supresije koji treba još jedan ciklus i ne bi rezultirao isti prediktori postavljaju redosled.
[0131] Četvrti primer izvođenja ima nekoliko prednosti. Prvo, u ovom primeru izvođenja, svaka pozicija prediktora ima vrednost. Shodno tome, postupak obezbeđuje robusniji proces od trenutnog dizajna HEVC kodiranja. Uistinu, enkoder može da koristi indeks prediktora bez vrednosti u dekoderu što može da dovede do pada dekodera. Ovo može da se desi, na primer, kada dođe do mrežnih grešaka.
[0132] Ovaj primer izvođenja kompenzuje gubitak efikasnosti kodiranja kod paralelnog skaliranja. Štaviše, ova modifikacija takođe kompenzuje gubitak efikasnosti kodiranja zbog smanjenja broja kandidata generisanih prilikom generisanja prediktora vektora pokreta u modulu 1017. Sa ovim nedupliranim prediktorima, samo 2 prediktora treba da se generišu u 1021. Kao posledica toga, u procesu 1021 supresije potrebno je samo 10 poređenja u najsloženijem slučaju. Dakle, potreban je samo jedan ciklus umesto 3 potrebna u najsloženijem slučaju aktuelnog HEVC dizajna koji je predstavljen na slici 2. Sa ovim pojednostavljenjem, potrebno je samo 5 ciklusa u najsloženijem slučaju da bi se izveo skup prediktora spajanja umesto 11 potrebnih za aktuelni HEVC dizajn.
[0133] Biće jasno da se četvrti primer izvođenja sa slike 9 može lako da se kombinuje sa trećim primerom izvođenja prikazanim na slici 8.
[0134] Primeri procesa za generisanje daljih vektora pokreta kao prediktora implementiranih od strane modula 717, 817, 917 i 1017 za generisanje prediktora vektora pokreta sa slika 6, 7, 8 i 9, redom, sada će biti opisani pozivajući se na slike 10(a)-(c). Aktuelni HEVC dizajn koristi 3 šeme za dodavanje novih prediktora na osnovu generisanja trenutnog skupa. Prva šema se koristi za B isečke. Generisanje prediktora vektora pokreta uključuje kombinovanje prediktora iz redukovanog skupa 716, 816, 916, 1016 prediktora na slikama 6, 7, 8 i 9, redom. Kombinovani prediktor se generiše odabirom vektora pokreta sa liste L0 prvog prediktora i izborom vektora pokreta sa liste L1 drugog prediktora. Na primer, prvi mogući kombinovani prediktor ima vektor pokreta (i ref indeks) od L0 prvog prediktora iz 716 i vektor pokreta (i ref indeks) iz L1 drugog
2
prediktora iz 716. U aktuelnom HEVC dizajnu, može da se generiše 12 mogućih kombinovanih prediktora. Slika 10(a) prikazuje primer ovog procesa.
[0135] Druga šema može da se koristi samo za B isečke. Skalirani prediktor obuhvata zamenu jednosmernih prediktora dvosmernim prediktorima. Ako je prediktor od 716 jednosmeran, vektor pokreta se kreira u suprotnoj listi na osnovu inicijalnog vektora pokreta. Na primer, ako je prvi prediktor iz 716 jednosmeran i ako je usmeren na L0 sa ref indeksom 0, vrednost njegovog vektora pokreta se skalira tako da je usmerena na ref indeks 0 sa L1. Izgrađeni prediktor sadrži ref indeks 0 i vrednost vektora pokreta za L0 i ref indeks 0 i skalirani vektor za listu L1. Ovaj novi dvosmerni prediktor se dodaje drugom skupu (718) prediktora. Ova vrsta generisanja prediktora je veoma složena jer je neophodno skaliranje vektora pokreta, pa se time povećava broj ciklusa za modul 717 (3 ciklusa). Stoga se proces skaliranja može ograničiti na inverziju predznaka komponente vrednosti vektora pokreta koja može da se izvrši u jednom ciklusu, umesto u 3 za klasični proces skaliranja. Slika 10(b) prikazuje primer ovog generisanja.
[0136] Drugi postupak za generisanje novih prediktora vektora pokreta je promenom dvosmernih prediktora u jednosmerne prediktore. U tom slučaju, kada je prediktor dvosmeran, mogu da se generišu 2 nova prediktora (po jedan za svaku listu). Ovo je proces niske složenosti u poređenju sa skaliranim procesom vektora pokreta sa slike 10(a).
[0137] Kod aktuelnog HEVC dizajna, na kraju liste je dodata vrednost „nulti vektor pokreta“. Za Merge, nulta vrednost je postavljena za oba vektora pokreta, i sa L0 i sa L1. I ako je moguće, indeks referentnog frejma svake liste se povećava da bi se kreirali drugi nulti prediktori. Tako se menja samo ref indeks. Ako se u obe liste koristi N ref indeksa, N nultih vektora može da se doda skupu prediktora. Slika 10(c) ilustruje primer takvog procesa generisanja prediktora vektora pokreta.
[0138] Štaviše, moguće je koristiti neduplicirane prediktore dodavanjem jednog ili više odstupanja komponentama ili nekolikim komponentama jednog dostupnog prediktora početnog skupa prediktora. Na primer, ukoliko je u početnom supu prediktora samo jedan prediktor, moguće je generisati 4 prediktora koji su svi različiti. Na primer, ako smatramo da je prediktor na listi jednosmeran, prvi prediktor se generiše dodavanjem vrednosti odstupanja na jednu komponentu prvog vektora pokreta. Drugi prediktor se generiše dodavanjem inverznog pomaka na prvu komponentu. Treći se dobija dodavanjem pomaka drugoj komponenti, a četvrti dodavanjem inverznog pomaka drugoj komponenti. Može se primetiti da se ovaj proces može primeniti na prvog kandidata, tako da prediktor može da se izvede pre procesa 715 supresije.
[0139] Slika 11 prikazuje primer skaliranja za vremenski prediktor koji je primenjen u modulima 709, 809, 909 i 1009 za skaliranje, na slikama 6, 7, 8 i 9, redom. Na ovoj slici, kolocirani vektor pokreta MVcol u referentnom frejmu Ref0 je usmeren ka Ref2 sa POC (broj redosleda slike) jednako N-3. Referentni frejm vremenskog prediktora MVt je određen i jednak je Ref0 (POC broj jednak N-1). Vremenska udaljenost iDiffPocD kolociranog vektora pokreta jednaka je POC za Ref2 minus POC za Ref0. Dakle, njegova vremenska udaljenost je jednaka:
[0140] Na isti način, vremenska udaljenost iDiffPocB koju treba da pokrije vremenski prediktor jednaka je POC trenutnog frejma N minus POC za Ref0:
[0141] Teoretski, skalirani vektor pokreta za vremenski prediktor je jednak:
[0142] Tako je u primeru svaka komponenta (horizontalna i vertikalna) podeljena sa 2. Međutim, u aktuelnom HEVC dizajnu, skaliranje vektora pokreta je dato sledećim postupkom:
- Skalirani faktor se određuje sledećom formulom:
- sa iX
- MVt je zatim dat sa:
[0143] U ovim formulama:
">>" predstavlja operator pomeranja
"abs" predstavlja funkciju koja daje apsolutnu vrednost
„0x4000“ predstavlja vrednost 16384
1
[0144] Primeri izvođenja prema pronalasku na ovaj način obezbeđuju proces paralelnog izvođenja koji ima za cilj smanjenje broja ciklusa potrebnih za izvođenje skupa prediktora vektora pokreta sa minimalnim uticajem na efikasnost kodiranja.
[0145] Iako je prethodni pronalazak prethodno u tekstu opisan u vezi sa specifičnim primerima izvođenjama, predmetni pronalazak nije ograničen na specifične primere izvođenja, i stručnjaku u oblasti će biti očigledne modifikacije koje se nalaze unutar obima predmetnog pronalaska kako je definisan patentnim zahtevima. Brojne dodatne modifikacije i varijacije će se nametnuti stručnjacima u oblasti koji se budu upoznali sa prethodno izloženim ilustrativnim primerima izvođenja, koji su dati samo kao primer i koji nemaju za cilj da ograniče obim pronalaska, koji je određen isključivo priloženim patentnim zahtevima. Posebnom različite karakteristike iz različitih izvođenja mogu međusobno da se zamene, kada je to prikladno.
[0146] U patentnim zahtevima, reč "sadrži" ne isključuje druge elemente ili korake, a jednina imenica ne isključuje množinu. Sama činjenica da su različite karakteristike navedene u međusobno različitim zavisnim patentnim zahtevima ne ukazuje na to da kombinacija ovih karakteristika ne može korisno da se upotrebi.
2

Claims (3)

Patentni zahtevi
1. Računarski primenjen postupak izvođenja najmanje jednog prediktora informacije o pokretu, za enkodiranje i dekodiranje slikovnog dela slike kompenzacijom pokreta u odnosu na najmanje jedan referentni deo slike, naznačen time što, za navedeni deo slike koji se enkodira ili dekodira, postupak obuhvata: obezbeđivanje za obradu:
jednog ili više prvih kandidata za prediktore informacija o pokretu koji sadrže najmanje jednog kandidata za vremenske prediktore informacija o pokretu; i
drugih kandidata za prediktore informacija o pokretu koji sadrže najmanje jednog kandidata za prostorne prediktore informacija o pokretu i isključuju bilo kog kandidata za vremenske prediktore informacija o pokretu, pri čemu najmanje jedan od navedenih drugih kandidata za prediktore informacija o pokretu sadrži informaciju o pokretu levog bloka u odnosu na deo slike koji se enkodira ili dekodira, u slučaju da su dostupne informacije o pokretu levog bloka;
obradu (808, 809) jednog ili više prvih kandidata za prediktore informacija o pokretu, pri čemu navedena obrada obuhvata skaliranje navedenog jednog ili više prvih kandidata za prediktore informacija o pokretu;
obradu (808, 815, 817) drugih kandidata za prediktore informacija o pokretu; i
dobijanje (819), na osnovu kandidata (818, 814) za prediktore informacija o pokretu koji su rezultat obrade jednog ili više prvih kandidata za prediktore informacija o pokretu i obrade drugih kandidata za prediktore informacija o pokretu, skupa (820) kandidata za prediktore informacija o pokretu koji mogu da se koriste za predikciju navedenog dela slike iz referentnog dela slike, pri čemu navedeno dobijanje obuhvata supresiju duplikata kandidata za prediktore informacija o pokretu;
pri čemu obrada drugih kandidata za prediktore informacija o pokretu obuhvata isključivanje jednog ili više duplikata iz redova drugih kandidata za prediktore informacija o pokretu, u slučaju kada su jedan ili više drugih kandidata za prediktore informacija o pokretu isti (816), i generisanje (717, 817) jednog ili više dodatnih kandidata za prediktore informacija o pokretu na osnovu jednog ili više drugih kandidata za prediktore informacija o pokretu iz kojih je isključen jedan ili više duplikata.
2. Uređaj za izvođenje najmanje jednog kandidata za prediktore informacija o pokretu, za enkodiranje ili dekodiranje slikovnog dela slike kompenzacijom pokreta u odnosu na najmanje jedan referentni deo slike, pri čemu uređaj sadrži:
sredstva za dobijanje, konfigurisana za dobijanje:
jednog ili više prvih kandidata za prediktore informacija o pokretu koji sadrže najmanje jednog kandidata za vremenske prediktore informacija o pokretu; i
drugih kandidata za prediktore informacija o pokretu koji sadrže najmanje jednog kandidata za prostorne prediktore informacija o pokretu i isključuju bilo kog kandidata za vremenske prediktore informacija o pokretu, pri čemu najmanje jedan od navedenih drugih kandidata za prediktore informacija o pokretu sadrži informaciju o pokretu levog bloka u odnosu na deo slike koji se enkodira ili dekodira, u slučaju da su dostupne informacije o pokretu levog bloka;
prvo sredstvo (808, 809) za obradu konfigurisano za obradu jednog ili više prvih kandidata za prediktore informacija o pokretu, pri čemu navedena obrada obuhvata skaliranje navedenog jednog ili više prvih kandidata za prediktore informacija o pokretu;
i
drugo sredstvo (808, 815, 817) za obradu, konfigurisano za obradu drugih kandidata za prediktore informacija o pokretu; i
sredstvo (819) za dobijanje skupa, konfigurisano za dobijanje, na osnovu kandidata (818, 814) za prediktore informacija o pokretu koji su rezultat obrade jednog ili više prvih kandidata za prediktore informacija o pokretu i obrade drugih kandidata za prediktore informacija o pokretu, skupa (820) kandidata za prediktore informacija o pokretu koji mogu da se koriste za predikciju navedenog dela slike iz referentnog dela slike, pri čemu navedeno dobijanje skupa obuhvata supresiju duplikata kandidata za prediktore informacija o pokretu;
pri čemu je drugo sredstvo za obradu funkcionalno za isključivanje jednog ili više duplikata iz redova drugih kandidata za prediktore informacija o pokretu, u slučaju kada su jedan ili više drugih kandidata za prediktore informacija o pokretu isti, i generisanje jednog ili više dodatnih kandidata za prediktore informacija o pokretu na osnovu jednog ili više drugih kandidata za prediktore informacija o pokretu iz kojih je isključen jedan ili više duplikata.
3. Računarski program koji sadrži instrukcije koje, kada se program izvodi od strane računara, dovode do toga da računar izvodi postupak prema patentnom zahtevu 1.
4
RS20230919A 2011-08-17 2012-08-16 Postupak i uređaj za enkodiranje i dekodiranje sekvence slika RS64675B1 (sr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1114184.3A GB2493755B (en) 2011-08-17 2011-08-17 Method and device for encoding a sequence of images and method and device for decoding a sequence of images
EP20205749.3A EP3806468B1 (en) 2011-08-17 2012-08-16 Method and device for encoding a sequence of images and method and device for decoding a sequence of images

Publications (1)

Publication Number Publication Date
RS64675B1 true RS64675B1 (sr) 2023-11-30

Family

ID=44800466

Family Applications (3)

Application Number Title Priority Date Filing Date
RS20240016A RS65035B1 (sr) 2011-08-17 2012-08-16 Postupak i uređaj za kodiranje sekvence slika i postupak i uređaj za dekodiranje sekvence slika
RS20231242A RS64982B1 (sr) 2011-08-17 2012-08-16 Postupak i uređaj za kodiranje sekvence slika i postupak i uređaj za dekodiranje sekvence slika
RS20230919A RS64675B1 (sr) 2011-08-17 2012-08-16 Postupak i uređaj za enkodiranje i dekodiranje sekvence slika

Family Applications Before (2)

Application Number Title Priority Date Filing Date
RS20240016A RS65035B1 (sr) 2011-08-17 2012-08-16 Postupak i uređaj za kodiranje sekvence slika i postupak i uređaj za dekodiranje sekvence slika
RS20231242A RS64982B1 (sr) 2011-08-17 2012-08-16 Postupak i uređaj za kodiranje sekvence slika i postupak i uređaj za dekodiranje sekvence slika

Country Status (16)

Country Link
US (7) US10306256B2 (sr)
EP (5) EP3806470B1 (sr)
JP (5) JP6109170B2 (sr)
KR (6) KR102042374B1 (sr)
CN (7) CN107277546B (sr)
BR (2) BR122020002131B8 (sr)
ES (5) ES2875926T3 (sr)
GB (1) GB2493755B (sr)
HR (3) HRP20231726T1 (sr)
HU (5) HUE043598T2 (sr)
PL (5) PL3806469T3 (sr)
PT (3) PT3806470T (sr)
RS (3) RS65035B1 (sr)
RU (5) RU2643450C1 (sr)
TR (1) TR201908328T4 (sr)
WO (1) WO2013023785A2 (sr)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2487197B (en) * 2011-01-11 2015-06-17 Canon Kk Video encoding and decoding with improved error resilience
GB2493755B (en) 2011-08-17 2016-10-19 Canon Kk Method and device for encoding a sequence of images and method and device for decoding a sequence of images
US9571833B2 (en) 2011-11-04 2017-02-14 Nokia Technologies Oy Method for coding and an apparatus
TWI511530B (zh) * 2014-12-09 2015-12-01 Univ Nat Kaohsiung 1St Univ Sc Distributed video coding system and decoder for distributed video coding system
US10368083B2 (en) * 2016-02-15 2019-07-30 Qualcomm Incorporated Picture order count based motion vector pruning
US11172203B2 (en) * 2017-08-08 2021-11-09 Mediatek Inc. Intra merge prediction
CN117336504A (zh) 2017-12-31 2024-01-02 华为技术有限公司 图像预测方法、装置以及编解码器
CN118509586A (zh) 2018-06-21 2024-08-16 瑞典爱立信有限公司 视频编码中具有子图块的图块分区
WO2019243534A1 (en) 2018-06-21 2019-12-26 Telefonaktiebolaget Lm Ericsson (Publ) Tile shuffling for 360 degree video decoding
CN118590646A (zh) 2018-06-21 2024-09-03 瑞典爱立信有限公司 灵活图块分区
WO2020003282A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Managing motion vector predictors for video coding
KR20240005240A (ko) 2018-06-29 2024-01-11 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut에서의 모션 후보들의 검사 순서
TWI752331B (zh) 2018-06-29 2022-01-11 大陸商北京字節跳動網絡技術有限公司 當向Merge/AMVP添加HMVP候選時的部分/完全修剪
EP4325861A3 (en) 2018-06-29 2024-03-06 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
WO2020003278A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: fifo, constrained fifo
WO2020003261A1 (en) * 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Selection from multiple luts
EP3794824A1 (en) 2018-06-29 2021-03-24 Beijing Bytedance Network Technology Co. Ltd. Conditions for updating luts
KR102840294B1 (ko) 2018-06-29 2025-07-30 두인 비전 컴퍼니 리미티드 하나 또는 다수의 룩업 테이블들을 사용하여 이전에 코딩된 모션 정보를 순서대로 저장하고 이를 사용하여 후속 블록들을 코딩하는 개념
EP3815376A1 (en) 2018-07-02 2021-05-05 Beijing Bytedance Network Technology Co. Ltd. Luts with intra prediction modes and intra mode prediction from non-adjacent blocks
CN111064961B (zh) 2018-09-12 2023-06-09 北京字节跳动网络技术有限公司 视频处理方法和装置
US10958932B2 (en) 2018-09-12 2021-03-23 Qualcomm Incorporated Inter-prediction coding of video data using generated motion vector predictor list including non-adjacent blocks
CN109274966A (zh) * 2018-09-21 2019-01-25 华中科技大学 一种基于运动矢量的监控视频内容去重方法和系统
TWI829386B (zh) 2018-12-28 2024-01-11 日商Jvc建伍股份有限公司 影像編碼裝置、影像編碼方法、影像編碼程式、影像解碼裝置、影像解碼方法及影像解碼程式
JP7275286B2 (ja) 2019-01-10 2023-05-17 北京字節跳動網絡技術有限公司 Lut更新の起動
WO2020143824A1 (en) 2019-01-13 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and shared merge list
WO2020147772A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Motion candidates derivation
WO2020192611A1 (en) 2019-03-22 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
EP3967039B1 (en) 2019-06-07 2024-10-30 Beijing Dajia Internet Information Technology Co., Ltd. Sub-block temporal motion vector prediction for video coding
WO2021058498A1 (en) * 2019-09-26 2021-04-01 Interdigital Vc Holdings France, Sas Extended motion information comparison
US12526443B2 (en) * 2022-01-13 2026-01-13 Qualcomm Incorporated Coding video data using out-of-boundary motion vectors

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08129646A (ja) * 1994-11-02 1996-05-21 Matsushita Electric Ind Co Ltd 画像符号化方法、画像復号化方法、画像処理方法及びその装置
JPH1079949A (ja) 1996-09-04 1998-03-24 Oki Electric Ind Co Ltd 画像符号化装置、画像復号化装置及び画像伝送システム
EP0919099B1 (en) * 1997-03-14 2001-11-21 CSELT Centro Studi e Laboratori Telecomunicazioni S.p.A. Circuit for motion estimation in digitised video sequence encoders
KR100571687B1 (ko) 1999-02-09 2006-04-18 소니 가부시끼 가이샤 코딩 시스템 및 방법, 부호화 장치 및 방법, 복호화 장치및 방법, 기록 장치 및 방법, 및 재생 장치 및 방법
US7206448B2 (en) 2002-02-28 2007-04-17 At&T Corp. System and method for using pattern vectors for video and image coding and decoding
EP1418762A1 (en) * 2002-05-22 2004-05-12 Matsushita Electric Industrial Co., Ltd. Moving image encoding method, moving image decoding method, and data recording medium
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
JP2004023458A (ja) 2002-06-17 2004-01-22 Toshiba Corp 動画像符号化/復号化方法及び装置
JP4724351B2 (ja) * 2002-07-15 2011-07-13 三菱電機株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置
BRPI0306684B1 (pt) * 2002-11-01 2018-03-13 Godo Kaisha Ip Bridge 1 “Método e aparelho de codificação de um sinal de imagem e método e aparelho de decodificação de um sinal de imagem”
US7450642B2 (en) 2002-11-13 2008-11-11 Sony Corporation Fast motion vector prediction method
US20060098886A1 (en) * 2003-01-10 2006-05-11 Koninklijke Philips Electronics N.V. Efficient predictive image parameter estimation
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US8000392B1 (en) * 2004-02-27 2011-08-16 Vbrick Systems, Inc. Phase correlation based motion estimation in hybrid video compression
KR100587561B1 (ko) * 2004-04-08 2006-06-08 삼성전자주식회사 모션 스케일러빌리티를 구현하는 방법 및 장치
KR100631768B1 (ko) * 2004-04-14 2006-10-09 삼성전자주식회사 비디오 코딩에서 프레임간 예측방법 및 비디오 인코더와,비디오 디코딩방법 및 비디오 디코더
CA2553434C (en) 2004-04-23 2012-08-07 Sumitomo Electric Industries, Ltd. Coding method for motion-image data, decoding method, terminal equipment executing these, and two-way interactive system
CN101005620B (zh) * 2004-09-03 2011-08-10 微软公司 为隔行扫描和逐行扫描视频编码和解码宏块和运动信息中的革新
DE102004061906A1 (de) * 2004-12-22 2006-07-13 Siemens Ag Bildencodierverfahren, sowie dazugehöriges Bilddecodierverfahren, Encodiervorrichtung und Decodiervorrichtung
JP2008538433A (ja) * 2005-04-12 2008-10-23 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 領域ベース複数パス動き推定及び時間的動きベクトル候補の更新を用いたビデオ処理
BRPI0619193A2 (pt) 2005-11-30 2011-09-20 Toshiba Kk Toshiba Corp método de codificação de imagem / decodificação de imagem, aparelho de codificação de imagem / decodificação de imagem
WO2007119198A1 (en) * 2006-04-14 2007-10-25 Nxp B.V. Motion estimation at image borders
CA2674438C (en) * 2007-01-08 2013-07-09 Nokia Corporation Improved inter-layer prediction for extended spatial scalability in video coding
KR101835342B1 (ko) * 2007-10-16 2018-03-07 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
US8908765B2 (en) * 2007-11-15 2014-12-09 General Instrument Corporation Method and apparatus for performing motion estimation
ES2812473T3 (es) * 2008-03-19 2021-03-17 Nokia Technologies Oy Vector de movimiento combinado y predicción de índice de referencia para la codificación de vídeo
JP4697275B2 (ja) * 2008-07-30 2011-06-08 ソニー株式会社 動きベクトル検出装置、動きベクトル検出方法及びプログラム
US8675736B2 (en) * 2009-05-14 2014-03-18 Qualcomm Incorporated Motion vector processing
CN102450016A (zh) * 2009-05-26 2012-05-09 松下电器产业株式会社 运动图像处理装置和运动图像处理方法
CN102883160B (zh) * 2009-06-26 2016-06-29 华为技术有限公司 视频图像运动信息获取方法、装置及设备、模板构造方法
CN101605262B (zh) 2009-07-09 2011-11-09 杭州士兰微电子股份有限公司 可变块尺寸运动预测方法和装置
US9060176B2 (en) * 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
CN102577392A (zh) * 2009-10-20 2012-07-11 夏普株式会社 运动图像编码装置、运动图像解码装置以及数据结构
TWI566586B (zh) * 2009-10-20 2017-01-11 湯姆生特許公司 一序列形象的現時區塊之寫碼方法和重建方法
CN105898311A (zh) * 2009-12-01 2016-08-24 数码士有限公司 用于解码高分辨率图像的设备
CN101860754B (zh) * 2009-12-16 2013-11-13 香港应用科技研究院有限公司 运动矢量编码和解码的方法和装置
KR101327636B1 (ko) 2010-02-03 2013-11-12 주식회사 팬택 무선통신 시스템에서 시스템 프레임 번호를 관리하는 장치 및 방법
US8824558B2 (en) * 2010-11-23 2014-09-02 Mediatek Inc. Method and apparatus of spatial motion vector prediction
GB2487200A (en) * 2011-01-12 2012-07-18 Canon Kk Video encoding and decoding with improved error resilience
US8737480B2 (en) * 2011-01-14 2014-05-27 Motorola Mobility Llc Joint spatial and temporal block merge mode for HEVC
US9319716B2 (en) * 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
US9131239B2 (en) * 2011-06-20 2015-09-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
GB2493755B (en) 2011-08-17 2016-10-19 Canon Kk Method and device for encoding a sequence of images and method and device for decoding a sequence of images

Also Published As

Publication number Publication date
TR201908328T4 (tr) 2019-06-21
EP3806469A2 (en) 2021-04-14
US20190215529A1 (en) 2019-07-11
EP3806470B1 (en) 2023-10-11
JP2019134455A (ja) 2019-08-08
HUE063247T2 (hu) 2024-01-28
CN107277545B (zh) 2020-03-17
PL2745515T3 (pl) 2019-09-30
RU2684753C1 (ru) 2019-04-12
ES2727629T3 (es) 2019-10-17
ES2962876T3 (es) 2024-03-21
WO2013023785A2 (en) 2013-02-21
EP3806468A3 (en) 2021-04-21
EP3806468A2 (en) 2021-04-14
EP3806470A2 (en) 2021-04-14
US20200366926A1 (en) 2020-11-19
EP2745515B1 (en) 2019-04-17
CN107277544B (zh) 2020-10-27
KR20190126463A (ko) 2019-11-11
RU2014110037A (ru) 2015-09-27
HUE064679T2 (hu) 2024-04-28
GB201114184D0 (en) 2011-10-05
CN107197306A (zh) 2017-09-22
EP3474552A1 (en) 2019-04-24
KR20180108924A (ko) 2018-10-04
CN107197306B (zh) 2020-06-23
ES2875926T3 (es) 2021-11-11
HUE054992T2 (hu) 2021-10-28
KR102038791B1 (ko) 2019-10-30
BR122020002131B1 (pt) 2023-08-15
US20200366927A1 (en) 2020-11-19
RU2643450C1 (ru) 2018-02-01
PT3806468T (pt) 2023-09-12
JP6821730B2 (ja) 2021-01-27
GB2493755B (en) 2016-10-19
BR122020002131B8 (pt) 2023-10-10
CN107277546A (zh) 2017-10-20
RS64982B1 (sr) 2024-01-31
US10306256B2 (en) 2019-05-28
JP6679782B2 (ja) 2020-04-15
CN107277543A (zh) 2017-10-20
KR102042374B1 (ko) 2019-11-07
JP2014527362A (ja) 2014-10-09
HUE064678T2 (hu) 2024-04-28
JP6679781B2 (ja) 2020-04-15
US20230089360A1 (en) 2023-03-23
RU2589402C2 (ru) 2016-07-10
RU2708440C1 (ru) 2019-12-06
CN103748880B (zh) 2017-06-09
PT3806470T (pt) 2023-11-16
KR101617740B1 (ko) 2016-05-18
PL3806469T3 (pl) 2024-03-18
EP3806469B1 (en) 2023-10-11
CN103748880A (zh) 2014-04-23
KR20140047157A (ko) 2014-04-21
PL3806468T3 (pl) 2024-01-15
US10771806B2 (en) 2020-09-08
CN107181960A (zh) 2017-09-19
KR102085498B1 (ko) 2020-03-05
BR112014002932A2 (pt) 2017-03-28
KR20180108925A (ko) 2018-10-04
EP3806469A3 (en) 2021-04-21
JP2017143529A (ja) 2017-08-17
HRP20240008T1 (hr) 2024-03-29
RS65035B1 (sr) 2024-02-29
US20210392368A1 (en) 2021-12-16
KR20160054027A (ko) 2016-05-13
US11968390B2 (en) 2024-04-23
CN107277544A (zh) 2017-10-20
EP3474552B1 (en) 2021-05-05
EP3806468B1 (en) 2023-07-19
PT3806469T (pt) 2023-11-03
KR102027721B1 (ko) 2019-10-01
US11134264B2 (en) 2021-09-28
EP3806470A3 (en) 2021-04-21
GB2493755A (en) 2013-02-20
US20200366925A1 (en) 2020-11-19
JP2019115060A (ja) 2019-07-11
HRP20231726T1 (hr) 2024-03-15
JP6494675B2 (ja) 2019-04-03
ES2954263T3 (es) 2023-11-21
BR112014002932B1 (pt) 2022-06-07
ES2964571T3 (es) 2024-04-08
EP2745515A2 (en) 2014-06-25
PL3806470T3 (pl) 2024-03-18
CN107277545A (zh) 2017-10-20
HRP20231270T1 (hr) 2024-02-02
RU2720560C1 (ru) 2020-05-12
CN107181960B (zh) 2020-10-30
US20140321544A1 (en) 2014-10-30
KR20180110205A (ko) 2018-10-08
JP6109170B2 (ja) 2017-04-05
US11134266B2 (en) 2021-09-28
CN107277546B (zh) 2020-03-17
HUE043598T2 (hu) 2019-08-28
KR101904404B1 (ko) 2018-10-05
CN107277543B (zh) 2020-03-17
PL3474552T3 (pl) 2021-10-25
US11729415B2 (en) 2023-08-15
WO2013023785A3 (en) 2013-05-23
US11134265B2 (en) 2021-09-28
JP2019115061A (ja) 2019-07-11

Similar Documents

Publication Publication Date Title
RS64675B1 (sr) Postupak i uređaj za enkodiranje i dekodiranje sekvence slika
EP2664142B1 (en) Video encoding and decoding with improved error resilience
EP2684362B9 (en) Video encoding and decoding
WO2012168242A2 (en) Method and device for encoding a sequence of images and method and device for decoding a sequence of image