NO325859B1 - Kodek-preprosessering - Google Patents
Kodek-preprosessering Download PDFInfo
- Publication number
- NO325859B1 NO325859B1 NO20062485A NO20062485A NO325859B1 NO 325859 B1 NO325859 B1 NO 325859B1 NO 20062485 A NO20062485 A NO 20062485A NO 20062485 A NO20062485 A NO 20062485A NO 325859 B1 NO325859 B1 NO 325859B1
- Authority
- NO
- Norway
- Prior art keywords
- macroblock
- relevant
- video
- accordance
- corresponding reference
- Prior art date
Links
- 238000007781 pre-processing Methods 0.000 title claims description 6
- 238000000034 method Methods 0.000 claims description 32
- 239000000872 buffer Substances 0.000 claims description 17
- 230000005540 biological transmission Effects 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 241000023320 Luma <angiosperm> Species 0.000 description 2
- 101100371890 Mus musculus Unkl gene Proteins 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Nitrogen And Oxygen Or Sulfur-Condensed Heterocyclic Ring Systems (AREA)
Description
Område for oppfinnelsen
Oppfinnelsen vedrører preprosessering av videodata før koding og transmisjon.
Bakgrunn for oppfinnelsen
Transmisjon av bevegelige bilder i sanntid anvendes i flere applikasjoner slik som for eksempel videokonferanser, nettmøter, tv-kringkasting og videotelefoni.
Digital video beskrives typisk ved å representere hver piksel i et bilde med 8 bits (1 byte) eller mer. Slike ukomprimerte videodata resulterer i store bit-volumer, og kan ikke overføres ved konvensjonelle kommunikasjonsnettverk over transmisjonslinjer i sanntid på grunn av båndbreddebegrensninger.
Muliggjøring av sanntids videotransmisjon krever således en stor grad av datakompresjon. Datakompresjon kan imidlertid gå på bekostning av bildekvalitet. Derfor er det lagt et stort arbeid i utvikling av kompresjonsteknikker som tillater sanntidstransmisjon av høykvalitetsvideo over båndbreddebegrensede dataforbindelser.
I videokompresjonssystemer er hovedmålet å representere videoinformasjonen med så liten kapasitet som mulig. Kapasitet er definert med bits, enten som en fast verdi eller som bits/tidsenhet. I begge tilfeller er hovedmålet å redusere antall bits. Av hensyn til forsinkelse og prosessorressursbruk er det også viktig å holde prosesseringstiden og forbruket på et minimum.
De mest utbredte videokodingsmetodene er beskrevet i standardene MPEG<*> og H.26<*>. Videodataene gjennomgår fire hovedprosesser før transmisjon, nemlig prediksjon, transformasjon, kvantisering og entropikoding.
Prediksjonsprosessen reduserer signifikant mengden av bits som er nødvendig for at hvert bilde i en videosekvens skal overføres. Den drar fordel av likhetene av deler av sekvensen med andre deler av sekvensen. Siden prediktordelen er kjent både for koder og dekoder, behøver bare forskjellen å overføres. Denne forskjellen krever typisk mye mindre kapasitet for sin representasjon. Prediksjonen er i hovedsak basert på vektorer som representerer bevegelse. Prediksjonsprosessen utføres typisk på kvadratiske blokkstørrelser (for eksempel 16x16 piksler). Kodere basert på bevegelsessektorer blir ofte omtalt som bevegelsesbaserte kodere.
Bemerk at i enkelte tilfeller, slik som i H.264/AVC, anvendes prediksjoner av piksler basert på de tilstøtende piksler i det samme bildet i stedet for piksler i foregående bilder. Dette omtales som intraprediksjon, i motsetning til interprediksjon.
Residualet representert ved en datablokk (for eksempel 4x4 piksler) inneholder fortsatt intern korrelasjon. En velkjent metode for å dra nytte av dette er å utføre en todimensjonal blokktransform. I H.263 anvendes en 8x8 diskret cosinustransform (DCT), mens H.264 anvender en 4x4 heltallstype transform. Dette transformerer 4x4 piksler til 4x4 transformasjonskoeffisienter, og de kan vanligvis representeres med færre bits enn pikselrepresentasjonen. Transformasjon av en 4x4 gruppe av piksler med intern korrelasjon vil mest sannsynlig resultere i transformasjonskoeffisienter som er mye bedre egnet for ytterligere kompresjon enn den originale 4x4 pikselblokken.
En makroblokk er en del av bildet som består av flere subblokker for luminans (luma) så vel som for krominans (chroma).
Det finnes typisk to krominanskomponenter (Cr, Cb) med halvparten av oppløsningen både horisontalt og vertikalt, sammenlignet med luminans.
Dette formatet blir i noen sammenhenger betegnet som YUV 4:2:0. Forkortelsen er ikke spesielt selvforklarende. Den betyr at krominansen har halvparten av oppløsningen av luminansen horisontalt så vel som vertikalt. For det konvensjonelle videoformatet CIF betyr dette at en luminansramme har 358x288 sampler, mens hver av krominanskomponentene har 176x144 sampler.
Dette står i kontrast til for eksempel RGB (rød, grønn, blå) som typisk er representasjonen som anvendes i kamerasensoren og monitordisplayet. Figur 1 illustrerer en typisk angivelse og gruppering av piksler i en makroblokk for hhv. luminans og krominans. Makroblokken består av 16x16 luminanspiksler og to krominanskomponenter med 8x8 piksler hver. Hver av komponentene er her ytterligere brutt ned til 4x4-blokker, som er representert ved de små kvadratene. For kodingsformål grupperes både luma- og kroma- 4x4-blokker sammen i 8x8 subblokker, angitt ved Y0-Y3 og Cr, Cb.
I digitale videoapplikasjoner, slik som videokonferanser, vil store deler av bildet ofte ikke endre seg betraktelig mellom påfølgende rammer. Fra perspektivet for en bevegelsesbasert koder som beskrevet ovenfor, betyr dette at mange makroblokker ofte ikke skiller seg vesentlig fra deres referansemakroblokker, det vil si de foregående makroblokker. Således er bevegelsessektorene for disse blokkene 0. For at en slik koder skal konkludere at en makroblokk er uendret, eller at den faktisk har endret seg med et så lite beløp at residualen etter bevegelseskompensasjon faller under kvantiseringsgrensen, er det likevel nødvendig at den må lese alle data fra den nye makroblokken og sammenligne dem med en referansemakroblokk.
Figur 1 er et blokkdiagram for et typisk rammebufferarrangement i et kamera mellom kamerasensoren og koderen. Sensoren mater fortløpende en bildeprosesserende del med råpikseldata. Den siste rammen vil til enhver tid holdes i det nye rammebufferet, og den foregående rammen er lagret i referanserammebufferet.
Idet en koder typisk vil lagre både data for den aktuelle ramme og referanserammen i minnene utenfor brikken, vil det være fordelaktig om koderen visste på forhånd at en bestemt makroblokk ligner referansemakroblokken. I så fall måtte den ikke gjøre sammenligningen med referansemakroblokken, og viktigere, den behøvde ikke ha aksess til disse blokkene i den nye rammebufferet i kameraet. For hurtigbufferbaserte kodere ville det i tillegg opptre mindre hurtigbuffertømming (eng.: cache trashing).
For en sanntidskoder-implementasjon ville det videre være fordelaktig for koderen å kjenne til hvor mange av blokkene som har endret seg, sammenlignet med referanserammen, uten å måtte lese de virkelige data. Med denne informasjonen kan koderen enklere aktualisere kvalitet innenfor sine gitte
prosesseringsytelsesbegrensninger.
Sammenfatning av oppfinnelsen
Den foreliggende oppfinnelsen tilveiebringer en fremgangsmåte for preprosessering av påfølgende videorammer som skal kodes i en videokodek innhentet av en kamerasensor, idet videorammen omfatter makroblokker.
Fremgangsmåten er angitt i det etterfølgende selvstendige krav.
Ytterligere trekk i overensstemmelse med oppfinnelsen er angitt i de uselvstendige krav.
Kort beskrivelse av tegningene
For å gjøre oppfinnelsen lettere å forstå, vil den påfølgende diskusjon vise til de medfølgende tegninger.
Figur 1 illustrerer symbolsk differansen mellom krominans- og luminansangivelse i en makroblokk,
figur 2 illustrerer et rammebuffer i en kameraprosesseringsblokk,
figur 3 viser delmengdepartisjonen av en 16x16 luminansmakroblokk Y i samsvar med en utførelsesform av den foreliggende oppfinnelsen,
figur 4 viser delmengdepartisjonen av en 8x8 krominansmakroblokk for hhv. U og V, i samsvar med en utførelsesform av den foreliggende oppfinnelsen,
figur 5 er et skjematisk flytskjema som videre illustrerer en
preprosesseringsfremgangsmåte i samsvar med oppfinnelsen.
Detaljert beskrivelse av den foreliggende oppfinnelsen
Den foreliggende oppfinnelsen innbefatter en fremgangsmåte og et system for interaksjon mellom kamera og en kodek i et videokonferansearrangement. Hovedideen ved den foreliggende oppfinnelsen er å detektere endringer i makroblokker i etterfølgende bilderammer innhentet av kamerasensoren ved å gjøre sammenligninger mellom makroblokker i den aktuelle rammen og makroblokker fra korresponderende lokasjoner i en referanseramme, og tilveiebringe resultatet av sammenligningen til koderen sammen med et bildemateriale.
Sammenligningen mellom makroblokkene innbefatter terskelverdier for derved å hindre falske indikasjoner av endringer som skyldes kamerastøy.
Slik det er illustrert i figur 2, er referanserammen et buffer inne i kameraet som for hver ny ramme blir oppdatert på et per makroblokknivå, basert på resultatet av sammenligningen mellom den aktuelle ramme og referanserammen selv.
Koderen vil så ha valget mellom selektivt å aksessere blokker i bildet basert på resultatet av sammenligningen utført i kameraet, slik at blokkene og data som er angitt som å likne referansen, ikke nødvendigvis må leses av koderen.
I det følgende vil en eksempelutførelsesform av hvordan den foreliggende oppfinnelsen kan utføres, bli beskrevet. Det forklares i detalj hvordan en makroblokksammenligningsmetode kan utføres for å være effektiv både med hensyn til kvalitet og CPU-prosesseringsressurser.
Hensikten med fremgangsmåten i dette eksemplet er å generere flagg som angir endringer eller ikke, på en per-makroblokkbasis. Beslutningen for hver makroblokk gjøres ved hjelp av terskelsammenligningen som er beskrevet nedenfor.
Makroblokkene i eksempelet vil angis med matematiske uttrykk. La YNij, UNkl, og VNkl være luminans- og krominanssamplene som sammen omfatter en makroblokk i den aktuelle ramme N som er lagret i den nye rammebufferet i figur 2. For tilfellet YUV4:2:0 er i,j = 0..15og k,l =0..7.
La likeledes YRij, URkl og VRkl være samplene av den korresponderende makroblokk i referanserammebufferet R.
La Yij = YNij-YRij, Ukl = UNkl-URkl og Vkl = VNkl-VRkl være forskjellen, på en per-sampelbasis, mellom sampler i den aktuelle rammen og samplene i referanserammen. Mengden av alle Yij betegnes i korthet Y, og tilsvarende betegnes mengden av alle Ukl med U, og alle Vkl betegnes med V.
La s = sum(Y) og la w(s) være en vektfunksjon som er passende enkel å beregne, og som typisk vil ha den egenskap at dw(s)/ds <= 0
La videre Dn være delmengder av Y, U og V med korresponderende konstante terskelverdier Tn. Videre, for hver n, la
1, hvis Isum(Dn)I<*>w(s) > Tn
Qn = (1)
0, ellers
være en betingelse for hver Dn. Da vil, i samsvar med en utførelsesform av den foreliggende oppfinnelsen, makroblokken være markert som ny hvis og bare hvis i det minste en av betingelsene Qn er ikke-null.
Slik det er illustrert i figur 3 og 4, inndeles Y, U og V i Dn med 4x4 kvadratiske delmengder og 1x8 rand-delmengder. Rand-delmengdene anvendes til å detektere endringer i randsonene, for derved å unngå "skjærekanter" i bildet. Bemerk at ved å innbefatte w(s) i beslutningsuttrykket (1), blir terskelverdien effektivt endret slik at mindre endringer forårsaker at flagget settes i mørke makroblokker (der sum(Y) er liten) enn i lysere makroblokker (der sum (Y) er større). Dette har som formål å unngå ignorering av mindre totale, men virkelig endringer som ikke er assosiert med støy.
Etter å ha blitt markert som ny, blir R oppdatert med verdiene fra N. Det vil si at YRij erstattes med YNij, URkl erstattes med UNkl og VRkl erstattes med VNkl for alle i, j, k og m. I det tilfellet at makroblokken ikke var markert som ny, forblir R uendret ved den bestemte makroblokkposisjonen. Dette betyr at referansebufferet inneholder den sist flaggede makroblokken ved en hvilken som helst gitt posisjon. Bemerk at dette ikke er eksakt samme data som den foregående rammen, den er bare svært lik.
Samlet over en hel ramme vil denne markeringsinformasjonen utgjøre et bitmap eller en samling av flagg der hver bit angir hvorvidt en bestemt makroblokk var markert som ny, eller ikke. Dette bitmap kan enten settes fra kameraet til kodeken over en separat kanal, dersom dette er tilgjengelig, eller den kan innesluttes (eng.: be embedded) i bildebitstrømmen, det vil si i hver pikseldata, ved å tvinge den minst signifikante bit i for eksempel YNOO til 1, for å angi "ny", og til 0 ellers. Inneslutting av informasjonen i bildet på denne måten har den fordel at ingen separat kanal er nødvendig, og dessuten, siden dataene er selvinneholdt, kan bildebeskjæring enkelt utføres på mottakssiden uten tap av flaggdata.
Som eksempel, la De, e=0..15, angi 16 sett av 1x8 kantsampler slik det er vist i figurene i seksjon 4. La Db, b=16..39, angi 24 sett av 4x4 sampler, også vist i figurene. La Dp, p=40..423 angir de 384 individuelle samplene i Y, U og V.
La Te = Cl for alle e. Det vil si at Cl er en konstant verdi som er uavhengig av e. Tilsvarende, la Tb = C2 for alle b, og la Tp = C3 for alle p. Endelig velger vi w (s) =l/s.
Det vil si at makroblokken flagges som ny dersom størrelsen av en hvilken som helst lx8-kant-sum er større enn Cl<*>s, eller dersom størrelsen av en summasjon av hvilke som helst av 4x4-sampelblokkene er større enn C2<*>s, eller dersom minst en av Yij, Ukl og Vkl har en størrelse større enn C3<*>s. Resultatet er da inkorporert som 1 eller 0 i den minst signifikante bit i pikseldataene for YNOO.
Figur 5 er et skjematisk flytskjema som videre illustrerer en delprosesseringsmetode i overensstemmelse med prinsippene ved oppfinnelsen.
Fremgangsmåten er basert på påfølgende videorammer som inneholder makroblokker som inngang. Videorammene er innhentet av en kamerasensor. Fremgangsmåten tilveiebringer preprosessering av makroblokkene før etterfølgende koding i en videokoder.
Fremgangsmåten starter ved initialtrinnet 100.
I trinn 110 blir den aktuelle makroblokk i en aktuell ramme lagret i et aktuelt rammebuffer sammenlignet med den korresponderende referansemakroblokk i en referanseramme lagret i en referanserammebuffer.
Videre, i bestemmelsestrinnet 120, bestemmes hvorvidt sammenligningen angir at den aktuelle makroblokk og den korresponderende referansemakroblokk er vesentlig forskjellige. Dersom dette er tilfelle, utføres trinn 140, hvor en flaggverdi for nevnte aktuelle makroblokk settes, for eksempel ved å tilordne den verdien 1. Etter flaggsettingstrinnet 140 fortsetter fremgangsmåten ved trinn.130.
Dersom den aktuelle makroblokk og den korresponderende referanseblokk ikke er vesentlig forskjellige, fortsetter fremgangsmåten direkte ved trinn 130.
I bestemmelsestrinnet 120 bestemmes den aktuelle makroblokk og den korresponderende referansemakroblokk som vesentlig forskjellig dersom forskjellen mellom den aktuelle makroblokk og den korresponderende makroblokk er større enn forventede støyfluktasjoner mellom videorammer.
I trinn 130 oppdateres referanserammebufferet. Mer spesifikt blir aktuelle makroblokker som assosierte flaggverdier settes for, kopiert fra det aktuelle rammebufferet til referanserammebufferet.
I overensstemmelse med ytterligere prinsipper av oppfinnelsen, innbefatter sammenligningstrinnet 110 videre
• å opprette en residualmakroblokk ved å beregne en respektiv referanseverdi for alle piksler i en makroblokk, ved respektivt å subtrahere alle piksler i den aktuelle makroblokk fra alle korresponderende piksler i referansemakroblokken, • respektivt å dele residualmakroblokken i delmengder D„, der n angir en indeks for en delmengde, og • å eksekvere en subsammenligning for hver Dn ved å sammenligne en multiplikasjon av en sum av verdier i Dn og en veiefunksjon (w) med en terskelverdi Tn.
Deretter i bestemmelsestrinnet 120, blir den aktuelle makroblokk og den korresponderende referansemakroblokk bestemt som vesentlig forskjellige dersom multiplikasjonen er større enn T„ for en eller flere av delmengdene.
I en utførelsesform er veiefunksjonen w en funksjon av summen (s) av de respektive differanseverdier i residualmakroblokken. Videre er dw(s)/ds mindre enn eller lik 0. I en utførelsesform deles residualmakroblokken i Dn-er på 4x4 i tillegg til overlappende Dn-er på 1x8 og 8x1 anbrakt ved utkantene av makroblokken.
Videre i overensstemmelse med en utførelsesform omfatter flaggverdiene som er relatert til hver respektive makroblokk et bitmap. Hver bit i bitmap-et angir hvorvidt den aktuelle makroblokk og den korresponderende referansemakroblokk er vesentlig forskjellige.
I en utførelsesform transmitteres bitmap-et til kodeken i en separat kanal. Alternativt kan bitmap-et være innesluttet i en bildebitstrøm fra kameraet til koderen.
De respektive makroblokker kan representere luminans og/eller krominansverdier for de respektive videorammer.
Koderen og kameraet kan forbindes til en High Definition videokonferanseterminal.
For enkelhet ved forklaring er fremgangsmåten illustrert som å terminere ved termineringstrinnet 190 etter oppdateringstrinnet 130. Det skal imidlertid forstås at den illustrerte prosessen kan gjentas, ved bruk av en annen makroblokk i videorammen som skal kodes som den aktuelle makroblokk.
Claims (11)
1. Fremgangsmåte for preprosessering av påfølgende videorammer som skal kodes i en videokodek innhentet av en kamerasensor, idet videorammen omfatter makroblokker, hvilken fremgangsmåte omfatter
å sammenligne en aktuell makroblokk i en aktuell ramme lagret i et aktuelt rammebuffer med en korresponderende referansemakroblokk i en referanseramme lagret i et referanserammebuffer, og
å sette en flaggverdi for hver aktuelle makroblokk dersom sammenligningen angir at den aktuelle makroblokken og den korresponderende referansemakroblokken er vesentlig forskjellig,
karakterisert ved at fremgangsmåten videre omfatter
å oppdatere referanserammebuffere ved å kopiere, fra det aktuelle rammebufferet til referanserammebufferet, aktuelle makroblokker som assosierte flaggverdier er satt for.
2. Fremgangsmåte i henhold til krav 1, hvor den aktuelle makroblokken og den korresponderende referansemakroblokken er bestemt å være vesentlig forskjellig dersom forskjellen mellom den aktuelle makroblokk og den korresponderende referansemakroblokk er større enn forventede støyfluktasj oner mellom videorammene.
3. Fremgangsmåte i samsvar med ett av kravene 1-2, hvor sammenligningen videre omfatter: å opprette en residualmakroblokk ved å beregne en respektiv differanseverdi for alle piksler i en makroblokk ved respektivt å subtrahere alle piksler i den aktuelle makroblokk fra alle korresponderende piksler i referansemakroblokken, respektivt å inndele residualmakroblokken i delmengder Dn, der n angir en indeks for en delmengde, og å eksekvere en subsammenligning for hver Dn ved å sammenligne en multiplikasjon av en sum av verdier i Dn og en veiefunksjon (w) med en terskelverdi Tn,
og hvor den aktuelle makroblokk og den korresponderende referansemakroblokk bestemmes som vesentlig forskjellige dersom multiplikasjonen er større enn T„ for en eller flere av nevnte delmengder.
4. Fremgangsmåte i samsvar med krav 3, hvor veiefunksjonen w er en funksjon av summen (s) for de respektive differanseverdier i residualmakroblokken, idet dw(s)/ds er mindre enn eller lik 0.
5. Fremgangsmåte i samsvar med krav 3 eller 4, hvor residualmakroblokken er inndelt i Dn-er på 4x4 i tillegg til overlappende Dn-er på 1x8 og 8x1 lokalisert ved utkanten av makroblokken.
6. Fremgangsmåte i samsvar med et av de ovenstående krav, hvor trinnet med å sette flaggverdien impliserer å tilordne verdien 1.
7. Fremgangsmåte i samsvar med et av de ovenstående krav, hvor flaggverdiene relatert til hver respektive aktuelle makroblokk omfatter et bitmap, idet hver bit i bitmap-et angir hvorvidt den aktuelle makroblokk og den korresponderende referansemakroblokk er vesentlig forskjellige.
8. Fremgangsmåte i samsvar med krav 7, hvor bitmap-et transmitteres til kodeken i en separat kanal.
9. Fremgangsmåte i samsvar med krav 7, hvor bitmap-et er innesluttet i en bildebitstrøm fra kameraet til koderen.
10. Fremgangsmåte i samsvar med et av de ovenstående krav, hvor de respektive makroblokker representerer luminans- og/eller krominansverdier for de respektive videorammer.
11. Fremgangsmåte i samsvar med et av de ovenstående krav, hvor koderen og kameraet er forbundet til en High Definition videokonferanseterminal.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NO20062485A NO325859B1 (no) | 2006-05-31 | 2006-05-31 | Kodek-preprosessering |
US11/755,487 US8139101B2 (en) | 2006-05-31 | 2007-05-30 | Pre-processing of video data |
PCT/NO2007/000185 WO2007139391A1 (en) | 2006-05-31 | 2007-05-30 | Pre-processing of video data |
EP07747644.8A EP2030452B1 (en) | 2006-05-31 | 2007-05-30 | Pre-processing of video data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NO20062485A NO325859B1 (no) | 2006-05-31 | 2006-05-31 | Kodek-preprosessering |
Publications (2)
Publication Number | Publication Date |
---|---|
NO20062485L NO20062485L (no) | 2007-12-03 |
NO325859B1 true NO325859B1 (no) | 2008-08-04 |
Family
ID=38535630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
NO20062485A NO325859B1 (no) | 2006-05-31 | 2006-05-31 | Kodek-preprosessering |
Country Status (4)
Country | Link |
---|---|
US (1) | US8139101B2 (no) |
EP (1) | EP2030452B1 (no) |
NO (1) | NO325859B1 (no) |
WO (1) | WO2007139391A1 (no) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8406569B2 (en) * | 2009-01-19 | 2013-03-26 | Sharp Laboratories Of America, Inc. | Methods and systems for enhanced dynamic range images and video from multiple exposures |
US8774559B2 (en) | 2009-01-19 | 2014-07-08 | Sharp Laboratories Of America, Inc. | Stereoscopic dynamic range image sequence |
JP5234368B2 (ja) * | 2009-09-30 | 2013-07-10 | ソニー株式会社 | 画像処理装置および方法 |
US9883183B2 (en) | 2015-11-23 | 2018-01-30 | Qualcomm Incorporated | Determining neighborhood video attribute values for video data |
EP3832591B1 (en) * | 2019-12-03 | 2022-06-08 | Axis AB | Encoding of a video sequence |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0778707A2 (en) * | 1995-12-06 | 1997-06-11 | THOMSON multimedia S.A. | Apparatus for pre-processing of a digital video data stream |
US6064450A (en) * | 1995-12-06 | 2000-05-16 | Thomson Licensing S.A. | Digital video preprocessor horizontal and vertical filters |
WO2003107677A1 (en) * | 2002-06-12 | 2003-12-24 | British Telecommunications Public Limited Company | Video pre-processing |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6614845B1 (en) | 1996-12-24 | 2003-09-02 | Verizon Laboratories Inc. | Method and apparatus for differential macroblock coding for intra-frame data in video conferencing systems |
US6160848A (en) * | 1998-01-22 | 2000-12-12 | International Business Machines Corp. | Conditional replenishment device for a video encoder |
US6192148B1 (en) * | 1998-11-05 | 2001-02-20 | Winbond Electronics Corp. | Method for determining to skip macroblocks in encoding video |
TW484327B (en) | 2000-12-18 | 2002-04-21 | Inst Information Industry | Control method for video motion estimation with reduced computation and the device thereof |
FR2824988B1 (fr) * | 2001-05-21 | 2003-08-01 | Thomson Licensing Sa | Procede et dispositif de codage video utilisant la norme mpeg4 |
WO2003053066A1 (en) | 2001-12-17 | 2003-06-26 | Microsoft Corporation | Skip macroblock coding |
PT1486065E (pt) * | 2002-03-15 | 2016-03-30 | Nokia Technologies Oy | Método para codificação de movimento numa sequência de vídeo |
US6993078B2 (en) | 2002-03-28 | 2006-01-31 | International Business Machines Corporation | Macroblock coding technique with biasing towards skip macroblock coding |
GB0229354D0 (en) | 2002-12-18 | 2003-01-22 | Robert Gordon The University | Video encoding |
NO318318B1 (no) | 2003-06-27 | 2005-02-28 | Tandberg Telecom As | Fremgangsmate for forbedret koding av video |
US20050013496A1 (en) * | 2003-07-16 | 2005-01-20 | Bruls Wilhelmus Hendrikus Alfonsus | Video decoder locally uses motion-compensated interpolation to reconstruct macro-block skipped by encoder |
US8477173B2 (en) * | 2004-10-15 | 2013-07-02 | Lifesize Communications, Inc. | High definition videoconferencing system |
-
2006
- 2006-05-31 NO NO20062485A patent/NO325859B1/no not_active IP Right Cessation
-
2007
- 2007-05-30 WO PCT/NO2007/000185 patent/WO2007139391A1/en active Application Filing
- 2007-05-30 US US11/755,487 patent/US8139101B2/en active Active
- 2007-05-30 EP EP07747644.8A patent/EP2030452B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0778707A2 (en) * | 1995-12-06 | 1997-06-11 | THOMSON multimedia S.A. | Apparatus for pre-processing of a digital video data stream |
US6064450A (en) * | 1995-12-06 | 2000-05-16 | Thomson Licensing S.A. | Digital video preprocessor horizontal and vertical filters |
WO2003107677A1 (en) * | 2002-06-12 | 2003-12-24 | British Telecommunications Public Limited Company | Video pre-processing |
Also Published As
Publication number | Publication date |
---|---|
EP2030452A1 (en) | 2009-03-04 |
US20080056376A1 (en) | 2008-03-06 |
WO2007139391A1 (en) | 2007-12-06 |
EP2030452B1 (en) | 2016-11-09 |
US8139101B2 (en) | 2012-03-20 |
NO20062485L (no) | 2007-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2020292182B2 (en) | Method and apparatus for video coding | |
WO2022022297A1 (zh) | 视频解码方法、视频编码方法、装置、设备及存储介质 | |
AU2023203640A1 (en) | Method and Apparatus for Cross-Component Filtering | |
NO319007B1 (no) | Fremgangsmate og apparat for videokomprimering | |
CN113615187A (zh) | 用于改进的隐式变换选择的方法和装置 | |
AU2020245322B2 (en) | Method and apparatus for video coding | |
CN113892270A (zh) | 在变换跳过模式和多变换选择之间进行协调的方法和装置 | |
KR20200140344A (ko) | 멀티-라인 인트라 예측을 위한 mpm 리스트 생성 방법 및 디바이스 | |
US20230018357A1 (en) | Method, apparatus and medium for decoding or encoding | |
NO330107B1 (no) | Datamaskinimplementert tidlig dropping | |
EP3871413A1 (en) | Method and apparatus for video coding | |
NO325859B1 (no) | Kodek-preprosessering | |
US20240064335A1 (en) | Method, apparatus and medium for decoding or encoding | |
NO326065B1 (no) | Atte pixlers heltallstransform | |
EP3906682A1 (en) | Method and apparatus for improved zero out transform | |
EP3754983B1 (en) | Early intra coding decision | |
JP6256222B2 (ja) | 端末装置及びデータ管理装置 | |
JP2006173962A (ja) | 画像符号化装置 | |
WO2023173852A1 (zh) | 一种图像编码方法、装置及设备 | |
JP6300660B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM1K | Lapsed by not paying the annual fees |