NO330275B1 - Fremgangsmate i en videokodings-/-dekodingsprosess - Google Patents

Fremgangsmate i en videokodings-/-dekodingsprosess Download PDF

Info

Publication number
NO330275B1
NO330275B1 NO20085334A NO20085334A NO330275B1 NO 330275 B1 NO330275 B1 NO 330275B1 NO 20085334 A NO20085334 A NO 20085334A NO 20085334 A NO20085334 A NO 20085334A NO 330275 B1 NO330275 B1 NO 330275B1
Authority
NO
Norway
Prior art keywords
memory
pixel positions
pixel values
pixel
filter
Prior art date
Application number
NO20085334A
Other languages
English (en)
Other versions
NO20085334L (no
Inventor
Lars Petter Endresen
Original Assignee
Tandberg Telecom As
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 Tandberg Telecom As filed Critical Tandberg Telecom As
Priority to NO20085334A priority Critical patent/NO330275B1/no
Priority to CN2009801516522A priority patent/CN102257530B/zh
Priority to PCT/NO2009/000440 priority patent/WO2010071448A1/en
Priority to EP09833682A priority patent/EP2380130A4/en
Priority to US12/642,370 priority patent/US8891629B2/en
Publication of NO20085334L publication Critical patent/NO20085334L/no
Publication of NO330275B1 publication Critical patent/NO330275B1/no

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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with 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/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/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Abstract

Den foreliggende oppfinnelsen relaterer seg til implementering av en filterprosess i en komprimering/dekomprimering av digitale videosystemer i multiformålsprosessorer. Den tilveiebringer en metode som signifikant reduserer antall minnelastinger/lagringer og adresseberegninger. For å oppnå kjent minneoppførsel innenfor løkken, blir et filter implementert for hver oppløsning. Forut for filtrering blir det bestemt hvilket format videoinnholdet skal tilpasses til, og bredden og høyden til hver ramme er kjent før eksekvering av løkken, og følgelig også minneadressen til pikselverdiene som skal filtreres. For en gitt oppløsning er den eksakte minnelokasjonen til hver piksel i rammen kjent i kompileringstid og trenger ikke å bli beregnet på direkten, dvs. i hver løkke til filterfunksjonen. Dermed vil lasting og lagring bli svært effektivt. Dette vil spesielt forbedre i-rekkefølge eksekveringsmotorer som ikke kan omgruppere instruksjonene i den eksekverbare koden på direkten, men den kan også lede til dramatisk hastighetsøkning for ikke i-rekkefølge eksekveringsprosessorer som dermed kan finne mange flere uavhengige instruksjoner som kan bli eksekvert samtidig.

Description

Introduksjon
Oppfinnelsen omhandler videokompresjons/dekompresjonssystemer, og spesielt til en implementering av en filtreringsprosess i kompresjon/dekompresjon av digitale videosystemer i multiformålsprosessorer.
Bakgrunn for oppfinnelsen
Transmisjon av bevegelige bilder i sanntid blir benyttet i flere applikasjoner som f.eks. videokonferanser, nettmøter, TV-kringkasting og videotelefoni.
Imidlertid krever representering av bevegelige bilder mye informasjon ettersom digital video typisk er beskrevet ved å representere hvert piksel i et bilde med 8 bits (1 byte). Slike ukomprimerte videodata resulterer i store bitvolumer, og kan ikke bli overført over vanlig kommunikasjonsnettverk og transmisjonslinjer i sanntid grunnet begrenset båndbredde.
Derfor krever muliggjøring av sanntids video transmisjon utstrakt bruk av datakomprimering. Datakomprimering kan imidlertid kompromittere billedkvaliteten. Derfor er det lagt ned mye ressurser for å utvikle kompresjonsteknikker som tillater sanntidstransmisjon av høykvalitetsvideo over begrensede dataforbindelser.
I videokomprimeringssystemer er hovedmålet å representere videoinformasjon med så lite kapasitet som mulig. Kapasiteten er definert med bits, enten som en konstant verdi, eller som bit/tidsenhet. I begge tilfeller er hovedmålet å redusere antall bits.
Den mest vanlige videokodingsmetoden er beskrevet i MPEG<*>og H.26<*>standarder, hvor alle bruker blokkbasert prediksjon fra tidligere kodede og dekodede bilder.
Videodata undergår fire hovedprosesser før transmisjon, nærmere bestemt prediksjon, transformasjon, kvantisering og entropikoding.
Prediksjonsprosessen reduserer signifikant mengden av bits som er nødvendig på hvert bilde i en videosekvens som skal overføres. Den utnytter likheten i deler av sekvensen med andre deler av sekvensen, siden prediksjonsdelen er kjent for både koder og dekoder, må kun forskjellen bli overført. Denne forskjellen krever typisk mindre kapasitet for sin representasjon. Prediksjon blir hovedsakelig basert på billedinnhold fra tidligere rekonstruerte bilder hvor lokasjonen til innholdet blir definert ved bevegelsesvektorer (motion vectors).
I en typisk videosekvens, vil innholdet av en foreliggende blokk M være lik til en korresponderende blokk i et tidligere dekodet bilde. Dersom ingen forandring har opptrådt siden foregående dekodede bilde, vil innholdet til M være lik til en blokk med den samme lokasjonen i det tidligere dekodede bildet. I andre tilfeller, kan et objekt i et bilde ha blitt beveget slik at innholdet til M er mer lik til en blokk til en annen lokasjon i et tidligere dekodet bilde. Slike bevegelser blir representert ved bevegelsesvektorer (V). Som et eksempel betyr en bevegelsesvektor på (3;4) at innholdet til M har beveget seg 3 piksler til venstre og 4 piksler oppover siden det tidligere dekodede bildet.
En bevegelsesvektor assosiert med en blokk blir bestemt ved å eksekvere et bevegelsessøk. Søket blir utført ved konsekutiv sammenligning av innholdet med blokker i tidligere bilder med ulike romlige offsets. Offseten relativ til den foreliggende blokken assosiert med sammenligningsblokken som har den beste matchen sammenlignet med den foreliggende blokken blir bestemt å være den assosierte bevegelsesvektoren.
I nylige videokodingsstandarder, blir det samme konseptet utvidet slik at bevegelsesvektorer også kan ta V2 pikselverdier. En vektorkomponent på 5.5 betyr at bevegelsen er midtveis mellom 5 og 6 piksler. Mer spesifikt blir prediksjonen oppnådd ved å ta gjennomsnittet mellom pikselen som representerer en bevegelse av 5 og pikselen som representerer en bevegelse av 6. Dette blir kalt 2-tap filter på grunn av operasjonen på 2 piksler for å oppnå prediksjonen av en piksel imellom. Bevegelsesvektorer av denne typen blir ofte referert til som å ha fraksjonell pikseloppløsning eller fraksjonelle bevegelsesvektorer. Alle filteroperasjonene kan være definert ved en impulsrespons. Operasjonen med å midle 2 piksler kan bli uttrykt ved en impulsrespons på ( V2, lA). Likeledes impliserer midling over 4 piksler en impulsrespons på (%, %, Va, Va).
I H.264/AVC har kodingsmetoder blitt forbedret både med hensyn til bevegelsesoppløsning og antall piksler brukt for hver interpolasjon. Metodene bruker kompensert prediksjon med opptil Va og også 1/8 pikselnøyaktighet. Et eksempel på heltalls- og fraksjonelle pikselposisjoner er integrert under (for enkelhets skyld er kun interpolasjonene mellom A, E, U og Y vist):
Posisjonene A E U Y indikerer heltallspikselposisjoner, og A", E\ A' og E" indikerer tilleggsheltallsposisjoner på A-E-linjen. c k m o w indikerer halvpikselposisjoner. Interpolerte verdier av disse posisjonene kan oppnås ved f.eks. å bruke et 6-tap filter med impulsrespons (1/32, -5/32, 20/32, 20/32, -5/32, 1/32) som opererer på heltalls pikselverdier. Som et eksempel blir c så beregnet med det følgende uttrykket:
Filteret blir operert horisontalt eller vertikalt etter hva som er passende.
Når en ramme til en video blir kodet i en H.264/AVC-bitstrøm, er vanligvis ett av de siste trinnene halvpikselinterpoleringsfilter for å forberede for det ovenfor nevnte bevegelsesøket når en koder fremtidige rammer. Dette trinnet er én av de mest beregningsmessig krevende oppgaver i kodingsprosessen, og involverer filtrering av hele rammen. Ettersom billedoppløsningen øker, vil dette kreve en betydelig mengde av prosessorkapasitet, og vil også introdusere for stor forsinkelse, spesielt dersom kodingsprosessen blir implementert i generelle formålsdelte prosessorer, f.eks. på personlige datamaskiner.
US-2002/0101417A beskriver et grafikksystem som kan utføre filteroperasjoner på pikselverdier. Imidlertid angis det ikke at filterfunksjonen utføres på interpolerte piksler slik som i den foreliggende oppfinnelsen.
Kort beskrivelse av tegningene
For å gjøre oppfinnelsen lettere forståelig, vil den etterfølgende diskusjonen referere til den vedlagte tegningen,
Fig. 1 er et flytskjema som illustrerer én eksempelvis utførelse av den foreliggende oppfinnelsen.
Sammendrag av oppfinnelsen
Trekkene definert i det vedlagte selvstendige kravet karakteriserer metoden til den foreliggende oppfinnelsen.
Spesielt fremlegger den foreliggende oppfinnelsen en metode i videokoding eller dekodingsprosess i en datamaskininnretning for beregning av pikselverdier til interpolerte pikselposisjoner lokalisert mellom heltallspikselposisjoner i rammer til et videobilde ved en forhåndsdefinert filteroperasjon, hvor pikselverdiene til heltallspikselposisj onene blir lagret i et minne til en datamaskininnretning, hvor metoden innbefatter trinnene å bestemme til hvilket av tallene i forhåndsdefinerte oppløsningsformater som videobildet blir tilpasset, å definere en fast bredde (W) og fast høydeverdi (H) for rammene korresponderende til det bestemte oppløsningsformatet, å laste et første sett av minneadresser for minnet til datamaskininnretningen som korresponderer til et en flerhet av pikselverdier av heltallspikselposisjoner, hvor det første settet av minneadresser blir beregnet fra, eller som det refereres til, hvor den faste bredden (W) og faste høydeverdien (H), og eksekvere filteroperasjonen på en flerhet av pikselverdier til heltallspikselposisjoner for å beregne en flerhet av pikselverdier til interpolerte pikselposisjoner ved konsekutiv lasting av flertallet av pikselverdier av heltallspikselposisjoner fra minnet ved å bruke én eller flere adresser fra det første settet av minneadresser.
Detaljert beskrivelse av oppfinnelsen
I det etterfølgende vil den foreliggende oppfinnelsen bli beskrevet ved å beskrive en eksempelvis utførelse. En fagmann på området vil imidlertid innse andre anvendelser og modifikasjoner som er innenfor omfanget av oppfinnelsen slik denne er definert i det vedlagte selvstendige kravet.
Når en videoramme blir kodet til en H.264/AVC bitstrøm er vanligvis de to siste trinnene deblokkingsfilter og halvpikselinterpoleringsfilter. Disse to trinnene er sammen én av de mest beregningsmessig krevende oppgavene i kodingsprosessen og involverer filtrering av hele rammen. I høynivåsoftwarekode, er halvpikselinterpoleringsfilter i store trekk implementert på den følgende måten:
DO I = 1, H
DO J = 1, W
X(I,J) = F(Y(I,J))
ENDDO
ENDDO
Her betyr H høyden til rammen, W bredden til rammen, Y de ufiltrerte pikslene, X de filtrerte pikslene og F filterfunksjonen som innbefatter filtertaps beskrevet i bakgrunnsavsnittet. Det kan utledes fra softwarekoden at løkken vil starte beregningen av V2piksler i øvre linje til rammen, fra venstre til høyre, og deretter konsekutivt prosedere seg nedover med de andre linjene.
For hver interpolerte pikselverdi som skal beregnes, er det et sett med korresponderende piksler lagret i minnet som skal bli multiplisert med filtertaps. Disse pikslene må bli lest fra minnet, og for å gjøre dette må minneadressen være kjent.
Funksjonen over blir tilpasset til å håndtere alle former for billedoppløsninger, og H og W er derfor ukjente. Dermed er konsekvensen av å ha en oppløsningsuavhengig implementering, dvs. tilpasset til alle mulige former for oppløsning, at minneadressene til pikselverdiene brukt i filteroperasjonen må bli utledet fra hver V2pikselberegning.
Ettersom oppløsning øker fra VGA (640x440) til 720P (1280x720) og full oppløsning (aperture) 4K (4096 x 3112) vil beregningsmessig kostnad til den store minneøkningen dramatisk øke når en bruker den ovenfor nevnte løkken. F.eks. involverer full aperture 4K filtrering av 12,746,752 piksler, og derfor må spesielle hensyn bli tatt for å håndtere datastørrelser som er større enn cacheminnet (mellomlagringsminnet) i moderne prosessorer.
Alle kjente algoritmer bruker en enkel funksjon for å filtrere pikslene, og som allerede indikert betyr dette at både H og W gitt over er ukjente, og adressene som blir lastet og lagret fra minnet blir beregnet på direkten. De er ikke kjent i kompileringstid, og mange tilleggsberegninger og minneadresser er nødvendig. En adresseberegning forut for hver lasting og lagring kan stoppe opp prosessor pipeline, den kan også ødelegge hardware 'pre-fetching,' og den kan rote til instruksjonslayout og instruksjonscacheoppførsel og konflikt på eksekveringsporter og/eller eksekveringsenheter. Mange detaljer kan gå feil, selv om cache-effekter, slik som 'pre-fetch' problemer, kan være ansvarlig de fleste problemene for store datasett slik som full oppløsning 4K. I pseudokode kan høynivåsoftwarekode i henhold til tidligere kjent teknikk beskrevet over videre bli spesifisert som følger,
DO I = 1, H
DO J = 1, W
load memory address of Y
load Y
X(I,J) = F(Y(I,J))
load memory address of X
store X
ENDDO
ENDDO
Bemerk at X og Y kan betegne vektorer og at mange tilleggsadresseoperasjoner dermed kan være nødvendig for å laste og lagre pikslene nødvendig. F.eks. er det ikke uvanlig å laste 16 piksler på én gang fra minnet, og så gjøre en parallell beregning på alle interpolerte pikselverdier avhengig av de 16 lastede pikslene.
Den foreliggende oppfinnelsen tilveiebringer en metode som signifikant reduserer antall minnelastinger/lagringer og adresseberegninger. For å oppnå kjent minnehåndtering innenfor løkken, blir ett filter implementert for hver oppløsning, forut for filtrering blir det bestemt hvilket format videoinnholdet skal tilpasses til. En implementering i henhold til den foreliggende oppfinnelsen hvor f.eks. VGA-oppløsning med 640 piksler pr. linje (rammebredde) og 480 linjer (rammehøyde) har blitt bestemt kan være som følger:
load memory address of X
load memory address of Y
DO I = 1, 480
DO J = 1, 640
load Y
X(I,J) = F(Y(I,J))
store X
ENDDO
ENDDO
Som det kan ses blir minneadressene beregnet forut for filtreringsfunksjonen, for derved å unngå adresseberegning for hvert løkketrinn.
Siden oppløsning allerede er kjent, blir alle minnelastinger og lagringer direkte gitt kun av pikselindeksene I og J innenfor løkken, og alle ulempene involvert i beregning av minneadresser på direkten kan bli helt unngått. Imidlertid krever dette en implementering av et separat filter for hver oppløsning, men siden kun et begrenset antall oppløsninger er støttet, kan den økte størrelsen til det eksekverbare bli antatt som neglisjerbart sammenlignet med størrelsen til rammen som blir filtrert.
Dermed, i henhold til den foreliggende oppfinnelsen, er filtreringen av piksler for å beregne interpolerte pikselverdier f.eks. i henhold til H.264 spesifikt skreddersydd til oppløsningen som skal brukes.
Den foreliggende oppfinnelsen tilveiebringer kjent minneforbedringsfiltrering. For en gitt oppløsning er den eksakte minnelokasjonen til hvert piksel i rammen kjent i kompileringstid, og trengs ikke beregnes på direkten. Dermed kan lasting og lagring bli svært effektivt.
Dette tilveiebringer også effektiv planlegging av instruksjoner. Når lokasjoner til data brukt er kjent i kompileringstid, er det trivielt for en kompilerer å planlegge koden på den mest effektive rekkefølgen. Dette vil spesielt gi fremskritt i rekkefølgeeksekveringsmotorer som ikke kan endre rekkefølgen til instruksjonene til eksekverbar kode på direkten, men den kan også lede til dramatisk hastighetsøkning for ikke-rekkefølgeeksekveringsprosessorer som dermed kan finne mange flere uavhengige instruksjoner som kan bli eksekvert samtidig.
Sammenlignet med tidligere kjent teknikk bruker alle andre implementeringer av disse filtrene den samme kildekoden for å dekke alle oppløsninger. Dette er svært forskjellig fra tilnærmelsen til den foreliggende oppfinnelsen hvor kildekoden blir tilpasset til hver oppløsning, for dermed å oppnå alle fordeler med faset løkkeantall med kjent minneforbedring og effektiv instruksjonsplanlegging.

Claims (6)

1. Metode i en videokodings- eller dekodingsprosess i en datamaskininnretning for å beregne pikselverdier til interpolerte pikselposisjoner lokalisert mellom heltalls pikselposisjoner i rammer til et videobilde med en forhåndsdefinert filteroperasjon, hvor pikselverdiene til heltallspikselposisjoner blir lagret i minnet til en datamaskininnretning, karakterisert vedat de følgende trinnene utføres: å bestemme til hvilket av et antall forhåndsdefinerte oppløsningsformater som videobildet er tilpasset, å definere en fast bredde (W) og fast høyde (H) for rammene korresponderende til det bestemte oppløsningsformatet, å laste et første sett av minneadresser for minnet til datamaskininnretningen korresponderende til en flerhet av pikselverdier til heltalls pikselposisjoner, hvor det første settet av minneadresser blir beregnet fra eller refererer til, den faste bredden (W) og faste høydeverdien (H), å eksekvere filteroperasjonen på flertallet av pikselverdier til heltalls pikselposisjoner for beregning av en flerhet av pikselverdier til de interpolerte pikselposisjonene ved konsekutiv lasting av flertallet av pikselverdier til heltalls pikselposisjoner fra minnet ved å bruke én eller flere minneadresser fra det første settet av minneadresser.
2. Metode i henhold til krav 1, karakterisert ved å laste et andre sett av minneadresser fra minnet til datamaskininnretningen korresponderende til flertallet av pikselverdier til de interpolerte pikselposisjonene, hvor det andre settet av minneadresser blir beregnet fra, eller refererer til, den faste bredden (W) og faste høydeverdien (H), å konsekutivt lagre flertallet av pikselverdier til de interpolerte pikselposisjonene til minnet ved å bruke én eller flere adresser til det andre settet av minneadresser.
3. Metode i henhold til krav 1 eller 2, karakterisert vedat trinnet med eksekvering av filteroperasjonen videre innbefatter multiplisering av filtertaps med respektive lastede pikselverdier av heltalls pikselposisjoner i henhold til de respektive pikselverdiene til de interpolerte pikselposisjonene som skal beregnes.
4. Metode i henhold til krav 1, 2 eller 3, karakterisert vedat den forhåndsdefinerte filteroperasjonen korresponderer til et 6-tap filter med filterkoeffisienter (1/32, -5/32, 20/32, 20/32, -5/32, 1/32), og de interpolerte pikselposisjonene er Vz pikselposisjoner.
5. Metode i henhold til et av de foregående kravene, karakterisert vedat antall forhåndsdefinerte oppløsningsformater er SQCIF, QCIF, CIF, SIF, WCIF, 25CIF, VGA, 4CIF, 4SIF, SVGA, W4CIF, XGA 720P, 1080P, QUAD 1080P, full Aperture 4K.
6. Bruk av metode i henhold til et av de foregående kravene i pikselbevegelseskompensering i henhold til kodingsstandarden H.264/AVC.
NO20085334A 2008-12-19 2008-12-19 Fremgangsmate i en videokodings-/-dekodingsprosess NO330275B1 (no)

Priority Applications (5)

Application Number Priority Date Filing Date Title
NO20085334A NO330275B1 (no) 2008-12-19 2008-12-19 Fremgangsmate i en videokodings-/-dekodingsprosess
CN2009801516522A CN102257530B (zh) 2008-12-19 2009-12-17 视频压缩/解压缩系统
PCT/NO2009/000440 WO2010071448A1 (en) 2008-12-19 2009-12-17 Video compression/decompression systems
EP09833682A EP2380130A4 (en) 2008-12-19 2009-12-17 VIDEO COMPRESSION / DECOMPRESSION SYSTEMS
US12/642,370 US8891629B2 (en) 2008-12-19 2009-12-18 Filter process in compression/decompression of digital video systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
NO20085334A NO330275B1 (no) 2008-12-19 2008-12-19 Fremgangsmate i en videokodings-/-dekodingsprosess

Publications (2)

Publication Number Publication Date
NO20085334L NO20085334L (no) 2010-06-21
NO330275B1 true NO330275B1 (no) 2011-03-21

Family

ID=40822962

Family Applications (1)

Application Number Title Priority Date Filing Date
NO20085334A NO330275B1 (no) 2008-12-19 2008-12-19 Fremgangsmate i en videokodings-/-dekodingsprosess

Country Status (5)

Country Link
US (1) US8891629B2 (no)
EP (1) EP2380130A4 (no)
CN (1) CN102257530B (no)
NO (1) NO330275B1 (no)
WO (1) WO2010071448A1 (no)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6788347B1 (en) * 1997-03-12 2004-09-07 Matsushita Electric Industrial Co., Ltd. HDTV downconversion system
US6459428B1 (en) * 1998-02-17 2002-10-01 Sun Microsystems, Inc. Programmable sample filtering for image rendering
JP4016493B2 (ja) * 1998-08-05 2007-12-05 三菱電機株式会社 ディスプレイ装置及びその多階調化回路
US6778180B2 (en) * 2001-09-28 2004-08-17 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Video image tracking engine
US7278137B1 (en) * 2001-12-26 2007-10-02 Arc International Methods and apparatus for compiling instructions for a data processor
US6999087B2 (en) * 2002-03-12 2006-02-14 Sun Microsystems, Inc. Dynamically adjusting sample density in a graphics system
JP2007500392A (ja) * 2003-07-30 2007-01-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 内蔵コンポーネントのためのフレキシブルな電力削減
NO320114B1 (no) * 2003-12-05 2005-10-24 Tandberg Telecom As Forbedret utregning av interpolerte pixelverdier
KR100528876B1 (ko) * 2003-12-15 2005-11-16 삼성전자주식회사 멀티 비디오 포맷에 따라 적응적으로 동작하는 선명도향상장치 및 그 방법
US7589781B2 (en) * 2005-01-26 2009-09-15 Omnivision Technologies, Inc. Automatic focus for image sensors
JP2006215918A (ja) * 2005-02-04 2006-08-17 Canon Inc 画像処理装置および画像処理方法
JP2006238188A (ja) * 2005-02-25 2006-09-07 Matsushita Electric Ind Co Ltd 補間フィルタおよび映像信号処理装置
KR100842557B1 (ko) * 2006-10-20 2008-07-01 삼성전자주식회사 동영상 처리 장치에서 메모리 액세스 방법
US20090173846A1 (en) * 2008-01-09 2009-07-09 Allan Katz Medical boom
US8804831B2 (en) * 2008-04-10 2014-08-12 Qualcomm Incorporated Offsets at sub-pixel resolution

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LEUPERS R: "Compiler design issues for embedded processors", IEEE DESIGN & TEST OF COMPUTERS, IEEE SERVICE CENTER, NEW YORK, NY, US, vol. 19, no. 4, 1 July 2002 (2002-07-01), pages 51 - 58, XP011094591, ISSN: 0740-7475 *
WIEGAND T ET AL: "Overview of the H.264/AVC video coding standard", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 13, no. 7, 1 July 2003 (2003-07-01), pages 560 - 576, XP011099249, ISSN: 1051-8215 *

Also Published As

Publication number Publication date
EP2380130A1 (en) 2011-10-26
WO2010071448A1 (en) 2010-06-24
CN102257530B (zh) 2013-11-20
EP2380130A4 (en) 2012-05-30
CN102257530A (zh) 2011-11-23
US8891629B2 (en) 2014-11-18
NO20085334L (no) 2010-06-21
US20100158124A1 (en) 2010-06-24

Similar Documents

Publication Publication Date Title
US8644381B2 (en) Apparatus for reference picture resampling generation and method thereof and video decoding system using the same
US10735727B2 (en) Method of adaptive filtering for multiple reference line of intra prediction in video coding, video encoding apparatus and video decoding apparatus therewith
JP2006129436A (ja) ビデオ・エンコーディングのための非整数ピクセルの共用
JP2010507352A (ja) 下層のフィルタリングを備えたスケーラブルビデオ符号化
JP3968712B2 (ja) 動き予測補償装置及びその方法
JP5766815B2 (ja) 画像符号化方法、および画像符号化装置
US20090225844A1 (en) Flexible reduced bandwidth compressed video decoder
US20230045775A9 (en) Adaptive resolution change in video processing
JP2007512749A (ja) ビデオ復号化装置
US8036269B2 (en) Method for accessing memory in apparatus for processing moving pictures
NO319629B1 (no) Fremgangsmate for korrigering av interpolerte pikselverdier
JP2011135326A (ja) 画像処理装置および方法、並びにプログラム
NO320114B1 (no) Forbedret utregning av interpolerte pixelverdier
CN111052738B (zh) 用于在视频编码中延迟后处理的系统和方法
NO319660B1 (no) Fremgangsmåte for interpolering av pixelverdier
JP6253338B2 (ja) 映像処理装置、映像処理装置の制御方法
CN101233758A (zh) 使用分级缓存的运动估计及补偿
WO2020214564A1 (en) Method and apparatus for video encoding and decoding with optical flow based on boundary smoothed motion compensation
WO2020057664A1 (zh) 运动矢量的确定方法和装置
TWI486061B (zh) 視頻資料處理方法和系統
NO330275B1 (no) Fremgangsmate i en videokodings-/-dekodingsprosess
US20060291743A1 (en) Configurable motion compensation unit
JP2000175199A (ja) 画像処理装置及び方法、並びに提供媒体
US20110051815A1 (en) Method and apparatus for encoding data and method and apparatus for decoding data
US20070153909A1 (en) Apparatus for image encoding and method thereof

Legal Events

Date Code Title Description
MM1K Lapsed by not paying the annual fees