NO310009B1 - Innretning for koding og dekoding av bilder - Google Patents

Innretning for koding og dekoding av bilder Download PDF

Info

Publication number
NO310009B1
NO310009B1 NO965100A NO965100A NO310009B1 NO 310009 B1 NO310009 B1 NO 310009B1 NO 965100 A NO965100 A NO 965100A NO 965100 A NO965100 A NO 965100A NO 310009 B1 NO310009 B1 NO 310009B1
Authority
NO
Norway
Prior art keywords
image
frame memory
prediction
motion
unit
Prior art date
Application number
NO965100A
Other languages
English (en)
Other versions
NO965100L (no
NO965100D0 (no
Inventor
Takahiro Fukuhara
Shunichi Sekiguchi
Kohtaro Asai
Tokumichi Murakami
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of NO965100D0 publication Critical patent/NO965100D0/no
Publication of NO965100L publication Critical patent/NO965100L/no
Publication of NO310009B1 publication Critical patent/NO310009B1/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/23Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
    • 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/423Methods 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 characterised by memory arrangements
    • 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/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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/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

Landscapes

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

Description

Foreliggende oppfinnelse angår et bildekodingsapparat og et bildedekodingsapparat for bruk med et system som utfører høy effektivitetskoding eller -dekoding av bevegelige bilder for å utføre effektiv overføring eller lagring av bilder, og mer spesielt et bildekodingsapparat og bildedekodingsapparat som kan anvendes til behandling av for eksempel et digitalt kringkastingssystem som utføres ved bruk av et satellittsystem eller et grunnbølge- eller kabelkommunikasjonsnett, en digital videodiskett, en mobil videotelefon, en PHS videotelefon eller en database for bilder.
Som en representant for et konvensjonelt høyeffektivitetskodingssystem, kjenner man systemet PMEG2 som er et internasjonalt standardsystem anbefalt av ISO/IEC/JTC1/SC29/WG11. For eksempel, "Image Information Engineering and Broadcasting Techniques", Journal of the Television Engineering Society of Japan, April 1995, forklarer MPEG som et emne for spesiell redigering. Et kodingssystem ifølge MPEG2 er beskrevet i "3-2 Video Compression" i det samme dokument, sidene 29-60.
Kodingssystemet ifølge MPEG2 er beskrevet nedenfor.
Figur 31 viser et blokkdiagram som viser en grunnkonstruksjon av en ordinær koder for MPEG2, og figur 32 er et blokkdiagram som viser en grunnkonstruksjon av en MPEG2 dekoder. Med henvisning til figur 31 og 32, betegner henvisningstallet 1 en ramme-omordningsenhet, 2 betegner en subtraksjonsenhet, referansetallene 3a og 3b betegner hver en inter(interramme)/intra(intraramme) svitsj ingsvelger, henvisningstallet 4 betegner en omformerenhet, 5 en kvantiseringsenhet, 6 en reverskvantiseringsenhet, 7 en revers omformerenhet, 8 en addisjonsenhet, 9 en første rammehukommelse, 10 en andre rammehukommelse, 11 en foroverrettet bevegelseskompensasjonsenhet, 12 en toretningsbevegelses-kompensasjonsenhet, 13 en bakutrettet bevegelseskompensasjonsenhet, 15 en bevegelsesestimeringsenhet, 16 en kodingsstyirngsenhet, 17 en variabel lengde kodingsenhet, og 18 en buffer.
Videre betegner henvisningstallet 100 inngangsbildedata i form av digitale data, 101 omarrangerte inngangsbildedata, 102 et forutsigelig feilbilde, 103 et opprinnelig inngangsbilde eller forutsigelig feilbilde, 104 en omformingskoeffisient, 105 en kvantiseringskoeffisient, 106 en revers kvantisert omformingskoeffisient, 107 reverserte omformede bildedata, 108 et lokalt dekodet bilde, 109 et referansebilde fra den første rammehukommelse, 110 et referansebilde fra den andre rammehukommelse, 111 et forutsett bilde for bevegelse fremover, 112 et forutsett bilde for bevegelse i to retninger, 113 et forutsett bilde for bevegelse bakover, 115 et bestemt forutsett bilde, 117 et styringssignal til velgeren, 118 et styringssignal til omformerenheten 4, 119 en adaptiv kvantiseringsverdi, 120 en variabel lengde koder, 121 en bitstrøm, 123 en bevegelsesvektor, 124 en referansebilde, og 125 et intra/inter-svitsjesignal.
Virkemåten for den konvensjonelle bildekoder er beskrevet nedenfor under henvisning til figur 31.
Først blir et inngangsbildesignal 100 i form av et digitalt signal påtrykt ramme-rearrangeringsenheten 1, ved hvilken bilderammer som skal kodes, blir rearrangert.
Figur 3 illustrerer et slik rearrangement. Det henvises til figur 33, hvor henvisningsbokstaven I betegner et intra(intraramme) kodet bilde, P et interramme kodet bilde, og B et todireksjonalt forutsigelig kodet bilde. Det skal bemerkes at henvisningstallene 1-10 representerer den rekkefølge i tid i hvilken de blir vist.
Den første ramme blir først kodet som I-bilde, og så blir den fjerde ramme kodet som et P-bilde, hvoretter det allerede kodede I-bilde blir brukt som en refe-ranseramme for forutsigelse.
Den andre ramme blir så kodet som et B-bilde. Deretter blir I-bildet fra den første ramme og P-bildet fra den fjerde ramme som allerede kodet brukt som referanserammer for forutsigelse. På figur 33, representerer hver pil en retning i hvilken forutsigelse blir utført.
Deretter blir kodingen utført i konstruksjonen av I, B, B, P, B, B, P, osv. ved liknende behandling. Følgelig er aksjonen av ramme-rearrangeringsenheten 1 å rearrangere inngangs-bildesignalet 100, i hvilket bilderammene anordnes i en tidsrekkefølge, slik at de viser i kodingsrekkefølgen for å tillate den behandling som er beskrevet ovenfor. Senere, siden forutsigelig koding ikke utføres for I-bildet som nevnt ovenfor, det rearrangerte bilde 101 blir ført inn som det er til velgeren 3a, fra hvilken det blir overført som en velgerutgang 103 til omformingsenheten 4. På den annen side, for forutsigelig koding for P-bildet eller B-bildet som nevnt ovenfor, blir det rearrangerte bilde 101 subtrahert fra et forutsagt bilde 115 ved subtraheringsenheten 2, og et forutsigelig feilbilde 102 blir overført til velgerutgangen 103 på omformerenheten 104.
Velgerutgangen 103 blir så ført til omformerenheten 4, og en omformingskoeffisient 104 blir ført ut av omformingsenheten 4. Omformingskoeffisienten 104 passerer kvantiseringsenheten 5, og en kvantiseringskoeffisient 105 blir oppnådd fra kvantiseringsenheten 5. Kvantiseringskoeffisienten 105 blir kodet til en variabel lengde kode ved variabel lengde kodeenheten 17, og et variabel lengde kodet ord 120 blir ført ut fra kodingsenheten 17.
Kvantiseringskoeffisienten 105 blir på den annen side ført inn til revers-kvantiseringsenheten 6, og en kvantiseringskoeffisient 106 blir tatt ut fra reverskvantise-ringsenheten 6.
Videre blir kvantiseringskoeffisienten 106 reversomformet tilbake til bildenivå ved reversomformerenheten 7, og bildedata 107 blir tatt ut fra reversomformerenheten 7. Bildedataene 107 blir, hvor det er data for et I-bilde, addert til et forutsagt bilde 111 valgt av adderingsenheten 8, og et lokalt dekodet bilde 108 blir tatt ut fra adderingsenheten 8.
Det skal bemerkes at det lokalt dekodede bilde 108 blir skrevet som det er i den første rammehukommelse 9 når det er et I-bilde, mens det blir skrevet i den andre rammehukommelse 10 når det er et P-bilde.
På den annen side blir det hverken skrevet i den første rammehukommelse 9 eller i den andre rammehukommelse 10 når det lokalt dekodede bilde 108 er et B-bilde.
Deretter, når det lokalt dekodede bilde 108 er et P-bilde, siden det blir brukt bare for fremmadrettet forutsigelse, blir et første referansebilde 124 i den første rammehukommelse 9 lest ut, og en bevegelsesforutsigelse blir utført for hver makroblokk (grunnenhet for behandling av 16 pixel x 16 linjer) ved estimeringsenheten 15 for bevegelse. Estimeringsenheten 15 for bevegelse velger således en av de makroblokker som har en verdi nærmest verdien av den aktuelle makroblokk som et forutsagt bilde, og gir samtidig ut en bevegelsesvektor 123 fra denne.
Bevegelsesvektoren 123 blir ført inn i kompcnseringsenhetene 11, 12 og 13 for bevegelse omgitt av en stiplet linje på figur 31, og bevegelsesforutsigelige bilder blir tatt ut fra kompenseringsenhetene 11, 12 og 13 for bevegelse.
I dette tilfelle vil kompenseringsenheten 11 for bevegelse fremover produsere en fremmadrettet bevegelses-forutsagt bilde 111 ved bruk av et referansebilde 109 fra den første rammehukommelse 9, og vil gi ut et således bestemt forutsagt bilde 115.
Videre, som beskrevet ovenfor, blir de lokalt dekodede bilder 108 av alle makroblokker i et P-bilde skrevet inn i den andre rammehukommelse. Imidlertid, selv med P-bildet som nevnt ovenfor, når makroblokkene i dette er intraramme(intra)-kodet, blir det rammerearrangerte bilde 101 gitt ut direkte som velgerutgang.
For et B-bilde, er fremgangsmåten for kodebehandling lik den for et P-bilde som beskrevet ovenfor, men i motsetning til behandlingen for et P-bilde, blir to referanserammer brukt for forutsigelse.
Estimeringsenheten 15 for bevegelse utfører foroverrettet forutsigelse ved bruk av referansebilde 109 fra den første rammehukommelse 9, bakoverrettet forutsigelse ved bruk av et referansebilde 110 fra den andre rammehukommelse 10, og toretnings forutsigelse ved bruk av begge referansebilder 109 og 110, for å velge en av de forutsigelsesmodi ved hvilke en verdi nærmest den i den aktuelle makroblokk blir oppnådd, og utgir så en bevegelsesvektor 123.
I henhold til den således bestemte forutsigelsesmodus, i kompenseringsenheten for bevegelse, vil en av kompenseringsenhetene 11, 12 og 13 for bevegelse som tilsvarer den bestemte forutsigelsesmodus, produsere og gi ut et forutsagt bilde.
For eksempel, når toretnings-bevegelsesforutsigelse er valgt, vil kompenseringsenheten 12 for bevegelse i to retninger produsere og utgi et forutsagt bilde 115, bestemt ved bruk av toretnings-forutsigelsesbilde 112.
Etter at koding av B-bildene fra andre og tredje rammer som vist på figur 33 er fullført, blir bildedata som er skrevet i den tredje rammehukommelse overført til den første rammehukommelse. Deretter blir P-bildene i den sjuende ramme kodet, og et dekodet bilde blir skrevet inn i den andre rammehukommelse.
Deretter blir B-bilder (femte og sjette rammer) kodet ved en liknende behandling som den som er beskrevet ovenfor.
Når makroblokkene er intraramme(intra)-kodet, blir bilde 101 etter ramme-rearrangering direkte uttatt som velgerutgang på liknende måte som i tilfellet med et P-bilde.
Figur 32 er et blokkdiagram av en konvensjonell dekoder. Med henvisning til figur 32, betegner henvisningstallet 22 en variabel lengde dekodingsenhet 107(a) et intra(intraramme)-kodet bilde, og 107(b) et forutsagt feilbilde.
I det følgende skal operasjonen av den konvensjonelle dekoder beskrives.
En bitstrøm 121 er lagret i en viss tidsperiode i mottakerbufferen 18, og et variabel lengde kodet ord 120 blir variabel lengde dekodet ved variabel lengde dekodingsenheten 22, og utgitt som en kvantiseringskoeffisient 105.
Behandlingsprosedyren etter dette er ganske lik den lokale dekodingsprosess for koderen som beskrevet ovenfor.
Når makroblokken er intradekodet, vil et reversomformet bilde 107 lage et bilde 107(a) uten å passere adderingsenheten 8, men når makroblokken er interdekodet, vil de reversomformede bildedata 107 lage et bilde 107(b). Bilde 107(b) adderes til et forutsagt bilde 115 ved arrangeringsenheten 8, og et dekodet bilde 108 blir tatt ut fra adderingsenheten 8. Det dekodede bilde 108 blir prosessert ved den viste rammerearrangeringsenhet 38 slik at slike dekodede bilder blir rearrangert slik at de kommer frem i en tidsrekkefølge, og endelig, et utgangsbilde 137 blir tatt ut av den viste ramme-rearrangeringsenhet 38.
Eksempler på en konvensjonell koder og dekoder for bilder som beskrevet ovenfor, er et representativt apparat av en type som utfører fremmadretnings-, og toretnings- og bakoverretnings-forutsigelseskoding i kombinasjon.
I eksemplet, for å kode et P-bilde, blir bare foroverrettet forutsigelse utført ved bruk av den første rammehukommelse, til å utføre forutsigelseskoding. På den annen side, for å kode et B-bilde, blir bare en av modiene for foroverrettet forutsigelse, bakoverrettet forutsigelse og toretningsforutsigelse ved hvilket en minimum forutsigelsesfeil blir frembrakt, valgt ved bruk av første og andre rammehukommelser.
Følgelig, når kodingsprosessen går fremover, blir dekodede bilder som er skrevet i rammehukommelsene slettet. Følgelig, for eksempel selv om et av de kodede bilder som er behandlet tidligere er likt et bilde av den ramme som blir kodet, siden de tidligere dekodede bilder allerede er slettet fra rammehukommelsen, kan ikke liknende kodede bilder brukes for referanse, hvilket resulterer i et subjekt som må løses idet effektiviteten i bildebehandling er lav.
Det er et mål for den foreliggende oppfinnelse å frembringe, for å løse problemet med den konvensjonelle bildekoder og bildedekoder som beskrevet ovenfor, et bildekodingsapparat og et bildedekodingsapparat hvor en dekodet bilde som er oppnådd tidligere kan benyttes effektivt som et referansebilde, og den totale forut-sigelseseffektiviteten er forbedret for å oppnå koding og dekoding av bevegelige bilder med høy effektivitet.
Ifølge et aspekt ved den foreliggende oppfinnelse, er det frembrakt et bildekodingsapparat, omfattende en lageranordning for å lagre et antall dekodede bilder, bevegelseskompenserende forutsigelsesanordning for å utføre bevegelseskompenserende forutsigelse som tilsvarer en inngangsbilde basert på antallet av dekodede bilder som er lagret i lageranordningen for å produsere en bevegelsesvektor og for å generere et forutsagt bilde basert på bevegelseskompenseringsforutsigelsen, en forutsigelses-feilberegningsanordning for å beregne en forskjell mellom det forutsagte bilde generert av bevegelseskompenserings-forutsigelsesanordningen og inngangsbildet for å beregne et forutsigelsesfeilbilde, en dekodingsanordning for å generere de dekodede bilder fra forutsigelsesfeilbildet som er beregnet av forutsigelsesfeil-beregningsanordningen og det forutsagte bilde, lagringskontrollanordning for bakgrunnsbilde for å velge en av de dekodede bilder som skal kontinuerlig lagres i lageranordningen som et bakgrunnsbilde og lagring av bakgrunnsbildet i lagringsanordningen, og bakgrunns-bevegelseskompenseringsanordning for å utføre bevegelseskompenseringsforutsigelse som tilsvarer inngangsbildet basert på bakgrunnsbildet for å generere en bevegelsesvektor og å generere et forutsagt bilde basert på bevegelseskompenseringsforutsigelsen.
Ifølge et annet aspekt ved den foreliggende oppfinnelse, er det frembrakt et bildedekodingsapparat, omfattende en lageranordning for å lagre et antall dekodede bilder, bevegelseskompenseringsanordning for å utføre bevegelseskompenseringsforut sigelse basert på de dekodede bilder lagret i lageranordningen for å generere et bevegelseskompensert bilde, dekodingsanordning for å generere de kodede bilder fra det bevegelseskompenserte bilde fra bevegelseskompenseringsanordningen og et forutsigelsesfeilbilde, lagerkontrollanordning for bakgrunnsbilde for å velge et av de dekodede bilder som skal kontinuerlig lagres i lageranordningen som et bakgrunnsbilde, og lagring av bakgrunnsbildet i lagringsanordningen, og genereringsanordning for et bakgrunns-forutsagt bilde for å generere et bakgrunnsforutsagt bilde basert på bakgrunnsbildet.
Bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse kan konstrueres slik at lageranordningen omfatter en rammehukommelse for å lagre et dekodet bilde, og en annen lagerhukommelse for å lagre bakgrunnsbildet.
Bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse kan eller være konstruert slik at omskriving av bildeinnholdet i lageranordningen ved lagerkontrollanordningen for bakgrunnsbilde blir utført i enheter av et bilde etter et forutbestemt tidsintervall eller som respons på et styringssignal utenfra.
Bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at omskriving av bildeinnholdet i lageranordningen ved lagerkontrollanordningen for bakgrunnsbilde blir utført i enheter av makroblokker etter et forutbestemt tidsintervall eller som respons på et styringssignal utenfra.
Bildekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at bakgrunnsbevegelseskompenseringsanordningen har et variabelt leteområde for en bevegelsesvektor fra bakgrunnsbildene.
Bildekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at det videre omfatter differensialvektorgenereringsanordning for å holde en bevegelsesvektor som er oppnådd fra bevegelseskompenseringsforutsigelsesanord-ningen eller bakgrunnsbevegelseskompenseringsanordningen, og beregning av en forskjellsvektor mellom den genererte bevegelsesvektor og bevegelsesvektoren fra tidligere, og hvor forskjellsvektoren er kodet med variabel lengde.
Bildedekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at en ytterligere bevegelsesvektor-adderingsenhet for å holde en bevegelsesvektor dekodet tidligere, og addering av bevegelsesvektoren som er dekodet tidligere til en forskjellsvektor for å regenerere en bevegelsesvektor.
Ifølge et videre aspekt ved den foreliggende oppfinnelse, er det frembrakt et bildedekodingsapparat som gir ut en kodet bitstrøm av bevegelige bilder, omfattende et antall rammehukommelsesgrupper for lagring, individuelt for et antall objekter som består av en skjerm, dekodede bilder av de tidligere objekter, en rammehukom-melsesvelgerenhet for å velge, som respons på et styringssignal, inn i en rammehukommelse i hvilken en av antallet av rammehukommelsesgrupper skal skrives, en bevegelseskompenserings-forutsigelsesenhet for å velge en av fremmadrettet forutsigelse, bakutrettet forutsigelse, toretnings forutsigelse og bakgrunnsforutsigelse i enheter av et objekt ved bruk av referansebilder som leses ut fra rammehukommelser av antallet av rammehukommelsesgrupper som er anordnet for de individuelle objekter for å utføre bevegelseskompenserings-forutsigelse, en subtraktorenhet for å beregne en forskjell mellom det forutsagte bilde og et aktuell bilde for å beregne et forutsigelsesfeilbilde, og en adderingsenhet for å addere det forutsagte bilde fra referansebildene og forutsigelsesfeilbildet for det aktuelle bilde, og en variabel lengde kodingsenhet for variabel lengde kodingsinformasjon.
Ifølge enda et videre aspekt ved den foreliggende oppfinnelse, er det frembrakt et bildedekodingsapparat som dekoder en kodet bitstrøm av bevegelige bilder, omfattende et antall rammehukommelser for lagring, individuelt for et antall objekter som konstruerer en skjerm, dekodede bilder av objektene, en rammehukommelse-velgerenhet for å velge, som respons på et styringssignal, inn i en rammehukommelse av antallet av de individuelle objekter av rammehukommelsesgruppen de kodede bilder skal skrives for de individuelle objekter, en variabel lengde dekodingsenhet for variabel lengde dekoding av den kodede bitstrøm, og en bevegelses-kompenseringsenhet for å velge en av fremmadrettet forutsigelse, bakutrettet forutsigelse, toretningsforutsigelse og bakgrunnsforutsigelse i enheter av et objekt, ved bruk av referansebilder som leses ut av rammehukommelsene for antallet rammehukommelsesgrupper for å generere et bevegelseskompensert bilde.
Bildekodingsapparatet eller bildedekodingsapparatet ifølge den foreliggende oppfinnelse kan konstrueres slik at antallet rammehukommelser omfatter tre rammehukommelsesgrupper.
Bildekodingsapparatet ifølge den foreliggende oppfinnelse kan eller være konstruert slik at omskriving av bildeinnholdet av et område i hvilket et objekt som er utsatt for koding er inkludert i antallet rammehukommelsesgrupper i hvilke kodede bilder av objektet fra tidligere er lagret, blir utført etter et visst tidsintervall eller som respons på et styringssignal utenfra.
Bildedekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at omskriving av bildeinnholdet i et område i hvilket et objekt som er utsatt for dekoding er inkludert i antallet rammehukommelsesgrupper i hvilke kodede bilder av objektet er tidligere lagret, blir utført etter et visst tidsintervall eller som respons på et styringssignal utenfra.
Bildekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at letingsområdet for en bevegelsesvektor fra referansebilder fra antallet rammehukommelsesgrupper for de individuelle objekter er variabelt for de individuelle objekter.
Bildekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at det videre omfatter en differensialvektor-genereringsenhet for å holde en bevegelsesvektor som tidligere oppnådd ved referanse til bilder fra antallet rammehukommelsesgrupper for de individuelle objekter, og beregning av forskjellsvektorer separat fra de individuelle objekter, og differansevektorene er variabel lengde kodet.
Bildedekodingsapparatet ifølge den foreliggende oppfinnelse kan ellers være konstruert slik at det videre omfatter en bevegelsesvektor-adderingsenhet for å holde dekodede bevegelsesvektorer oppnådd tidligere ved henvisning til bilder i antallet av rammehukommelsesgrupper for de individuelle objekter i en viss tidsperiode, og addering av bevegelsesvektorer som tidligere dekodet til de dekodede forskjellsvektorer for å regenerere bevegelsesvektorer for de individuelle objekter.
Oppfinnelsen skal i det følgende beskrives nærmere under henvisning til tegningene, hvor figur 1 er et blokkdiagram av et kodingsapparat for bevegelige bilder i henhold til en utførelse 1 av den foreliggende oppfinnelse, figur 2 er et blokkdiagram som viser en indre konstruksjon av en bevegelses-estimeringsenhet for kodingsapparatet ifølge utførelsen 1 av den foreliggende oppfinnelse, figur 3 er et blokkdiagram som viser en intern konstruksjon av en bevegelseskompensasjons-forutsigelsesenhet for kodingsapparatet i utførelse 1 ifølge den foreliggende oppfinnelse, figur 4 er et blokkdiagram som viser en annen konstruksjon av kodingsapparatet for bevegelige bilder ifølge utførelse 1 av den foreliggende oppfinnelse, figur 5a-5c er diagrammatiske riss som illustrerer et eksempel på forholdet mellom mønsteret av bilder og forutsigelsesmodi i utførelse 1 av den foreliggende oppfinnelse, figur 6 er et blokkdiagram som viser en videre konstruksjon av kodingsapparatet for bevegelige bilder ifølge ut-førelse 1 av den foreliggende oppfinnelse, figur 7 er et blokkdiagram av et dekodingsapparat for bevegelige bilder ifølge en utførelse 2 av den foreliggende oppfinnelse, figur 8 er et blokkdiagram av en bevegelseskompenseringsenhet i dekodingsapparatet ifølge utførelse 2 av den foreliggende oppfinnelse, figur 9 er et blokkdiagram av et kodingsapparat for bevegelige bilder ifølge utførelse 3 av den foreliggende oppfinnelse, figur 10 er et blokkdiagram av en bevegelses-estimeringsenhet for kodingsapparatet i utførelse 3 av den foreliggende oppfinnelse, figur 11 er et blokkdiagram av en bevegelses-kompenseringsenhet for kodingsapparatet i utførelse 3 av den foreliggende oppfinnelse, figur 12a, 12b og 12c er diagrammatiske riss som illustrerer et eksempel på forholdet mellom bildemønsteret og forutsigelsesmodi i ut-førelse 3 av den foreliggende oppfinnelse, figur 13 er et blokkdiagram et dekodingsapparat for bevegelige bilder ifølge en utførelse 4 av den foreliggende oppfinnelse, figur 14 er et blokkdiagram av en bevegelses-kompenseringsenhet for dekodingsapparatet i utførelse 4 av den foreliggende oppfinnelse, figur 5 er et diagrammatisk riss som illustrerer omskrivning av et bilde i en rammehukommelse i enheter av en makroblokk i et kodingsapparat ifølge en utførelse 5 av den foreliggende oppfinnelse, figur 16 er et blokkdiagram av et kodingsapparat ifølge en utførelse 8 av den foreliggende oppfinnelse, figur 17a og 17b er diagrammatiske riss som illustrerer en kodingsmetode av en bevegelsesvektor i utførelsen 8 av den foreliggende oppfinnelse, figur 18 er et blokkdiagram som viser en annen konstruksjons av kodingsapparatet ifølge utførelsen 8 av den foreliggende oppfinnelse, figur 19 er et blokkdiagram av et dekodingsapparat ifølge en utførelse 9 av den foreliggende oppfinnelse, figur 20 er et blokkdiagram som viser en annen konstruksjon av dekodingsapparatet ifølge utførelse 9 av den foreliggende oppfinnelse, figur 21 er et diagrammatisk riss som illustrerer forholdet mellom bilder og objekter, figur 22 er et blokkdiagram av et kodingsapparat ifølge utførelser 10 og 15 av den foreliggende oppfinnelse, figur 23 er et blokkdiagram av et dekodingsapparat ifølge en utførelse 11 av den foreliggende oppfinnelse, figur 24 er et blokkdiagram av et kodingsapparat ifølge utførelser 12 og 15 av den foreliggende oppfinnelse, figur 25 er et blokkdiagram av et dekodingsapparat ifølge en utførelse 13 av den foreliggende oppfinnelse, figur 26 er et diagrammatisk riss som illustrerer omskrivning av et bilde i et objektområde utført i et kodingsapparat ifølge en utførelse 14 av den foreliggende oppfinnelse, figur 27 er et diagrammatisk riss av et kodingsapparat ifølge en utførelse 16 av den foreliggende oppfinnelse, figur 28 er et diagrammatisk riss av et dekodingsapparat ifølge en utførelse 17 av den foreliggende oppfinnelse, figur 29 er et diagrammatisk riss av et kodingsapparat ifølge en utførelse 18 av den foreliggende oppfinnelse, figur 30 er et diagrammatisk riss av et dekodingsapparat ifølge en utførelse 19 av den foreliggende oppfinnelse, figur 31 er et blokkdiagram av en konvensjonell koder, figur 31 er et blokkdiagram av en konvensjonell dekoder, og figur 33 er et diagrammatisk riss som viser et eksempel på et system av bilder.
I det følgende skal et bildekodingsapparat og bildedekodingsapparat ifølge en foretrukken utførelse av oppfinnelsen beskrives under henvisning til tegningene.
Utførelse 1
Figur 1 er et blokkdiagram av et kodingsapparat for bevegelige bilder ifølge en utførelse 1 av den foreliggende oppfinnelse. Med henvisning til figur 1, betegner tallet 21 en bevegelseskompenserings-forutsigelsesenhet som en bevegelseskompenserings-forutsigelsesanordning, 35 betegner en rammehukommelse-velgerenhet som en styringsanordning for bakgrunnsbildelagring, og 45 betegner en multipleksenhet. Videre betegner henvisningstallet 126 en bestemt bevegelses-forutsigelsesmodus, henvisningstallene 134 og 135 betegner hver en valgt dekodet bilde, og henvisningstallet 139 betegner en multiplekset bitstrøm. Siden de øvrige komponenter er lik de som ble brukt i beskrivelsen av tidligere teknikk som vist på figur 31 og 33, er de betegnet med samme henvisningstall, og en gjentatt beskrivelse er utelatt her.
Virkemåten skal beskrives nedenfor.
Grunnleggende kodingsoperasjon er ekvivalent til bevegelseskompenserings-forutsigelse + omformingskoding som beskrevet ovenfor i forbindelse med det konvensjonelle eksempel. Følgelig skal bare forskjellene beskrives her.
Et lokalt dekodet bilde 108 blir ført inn i rammehukommelse-velgerenheten 35, ved hvilken det blir valgt inn i hvilken av den første rammehukommelse 9 og den andre rammehukommelse 10 den skal skrives. Bevegelsesestimeringsenheten 15 leser så ut referansebildene 109 og 110 fra rammehukommelsene 9 og 10, og gir ut en bestemt bevegelsesforutsigelsesmodus 126 og en bevegelsesvektor 123 ved hvilken forutsigelsesfeilen for det lokalt dekodede bilde 108 fra de omskrevne inngangsbildedata 110 blir minimalisert.
Bevegelseskompenserings-forutsigelsesenheten 21 leser ut referansebildene 109 og 110 og gir ut et bevegelses-forutsagt bilde 115 basert på den bestemte bevegelsesforutsigelsesmodus 126 og på bevegelsesvektoren 123.
Bitstrømmen 123 blir multiplekset sammen med forutsigelsesmodus 126 med multipleksingsenheten 45 og videresendt fra multipleksingsenheten 45.
Det ovenstående er grunnoperasjonen av bildekodingsapparatet ifølge ut-førelse 1.1 det følgende skal detaljer av de individuelle enheter beskrives.
Hver genereringsenhet for forutsagt bilde 27, 28, 29 og 30 genererer et forutsagt bilde i henhold til en forutbestemt forutsigelsesmodus.
For eksempel, genereringsenheten 27 for fremmadrettet forutsagt bilde leser ut referansebilder 109 fra den første rammehukommelse 9, og søker referansebildene 109 for et bilde som har en verdi nærmest verdien av inngangsbildedataene 101.
For dette kan for eksempel en blokk-tilpasningsmetode som også benyttes i det konvensjonelle eksempel som beskrevet i forbindelse med tidligere teknikk, brukes som den er. Spesielt blir tilpasningen utført for alle pixel i makroblokker som beskrevet ovenfor, og et bilde hvor totalsummen av feilverdier utviser en minimumsverdi blir ettersøkt. Som et resultat, vil genereringsenheten 27 for fremadrettet forutsagt bilde utgi et foroverrettet forutsagt bilde 127.
Genereringsenheten 29 for bakoverrettet forutsagt bilde utfører søkning av referansebilder 110 fra den andre rammehukommelse 10, og utfører så blokk-tilpasning på liknende måte. Genereringsenheten 29 for bakoverrettet forutsagt bilde gir så ut et bakoverrettet forutsagt bilde 129.
Genereringsenheten 28 for toretnings forutsagt bilde gir ut et toretnings forutsagt bilde 128 ved bruk av de to rammehukommelser 9 og 10. Genereringsenheten 28 for toretnings forutsagt bilde genererer et foroverrettet forutsagt bilde og et bakoverrettet forutsagt bilde separat fra hverandre, og genererer et toretnings forutsagt bilde basert på disse to bilder.
For eksempel, en teknikk hvor et gjennomsnittlig bilde av det forover-rettede forutsagte bilde og det bakoverrettede forutsagte bilde blir oppnådd og bestemt som et toretnings forutsagt bilde 128, kan brukes.
Samtidig vil genereringsenheten 30 for bakgrunnsforutsagt bilde lese ut et referansebilde 110 fra den andre rammehukommelse, og gi ut et bakgrunnsforutsagt bilde 130 ved blokktilpasning.
Den forutsigelsesmodus-bestemmende enhet 31 fører inn forutsagte bilder valgt i de forutsagte bilder 127, 128, 129 og 130, og velger en forutsigelsesmodus i hvilken forskjellene (forutsigelsesfeilen) fra inngangsbildet 101 blir minimalisert. I dette tilfelle, blir en forutsigelsesmodus 126 og en bevegelsesvektor 123 tatt ut fra den forutsigelsesmodus-bestemmende enhet 31.
Forutsigelsesmodus 126 kan for eksempel bestemmes slik at den har en verdi 0 for forradrettet forutsigelsesmodus, en annen verdi 1 for bakoverrettet forutsigelsesmodus, en ytterligere verdi 2 for toretnings forutsigelsesmodus, og enda en ytterligere verdi 3 for bakgrunns-forutsigelsesmodus.
Det skal bemerkes at behandlingsoperasjonen av bevegelsesvektoren 123 som generert og utsendt fra den forutsigelsesmodusbestemmende enhet 31 på figur 2 er som følger.
Spesielt, når søkning for referansebilder utføres innenfor et forutbestemt område av et forutsagt bilde som viser en minimum forutsigelsesfeil blir oppnådd ved hver genereringsenhet for det forutsagte bilde, blir bevegelsesvektorer 123(a), 123(b), 123(c) og 123(d) utgitt fra genereringsenhetene for forutsagt bilde 27-30, sammen med de forutsagte bilder. Utgangene blir alle ført til den forutsigelsesmodus-bestemmende enhet 31, ved hvilken en av de forutsagte bilder 127, 128, 129 og 130 som viser en minimum feil fra det gjeldende bilde 101, blir valgt. Bevegelsesvektoren (en av bevegelsesvektorene 123(a), 123(b), 123(c) og 123(d) som gir minimum verdi, blir til slutt utgitt som en bevegelsesvektor 123 fra den forutsigelsesmodus-bestemmende enhet 31.
Figur 3 er et blokkdiagram som viser en indre konstruksjon av bevegelseskompenserings-forutsigelsesenheten 21. Med henvisning til figur 1, betegner referansetallene 24 og 26 en velger (svitsj), og referansetallet 114 betegner et bakgrunns-forutsagt bilde. I det følgende skal virkemåten beskrives. I svitsjen 24, blir to svitsjer SW1 og SW2 åpnet eller sluttet i henhold til den bestemte bevegelses-forutsigelsesmodus 126.
For eksempel, når forutsigelsesmodus 126 som kommer fra den forutsigelsesmodus-bestemmende enhet 31 indikerer toretningsforutsigelsesbildemodus, vil svitsjen SW1 i velgeren 24 velge en node B, og svitsjen SW2 velger en annen node C. På den annen side, når bakgrunnsforutsigelsesmodus er valgt, er svitsjen SW1 av (gir ikke noe valg) og svitsjen SW2 velger en annen node E.
I det siste tilfelle, vil toretnings-bevegelseskompenseringsenheten 12 generere et toretnings forutsagt bilde 112 ved bruk av en bevegelsesvektor 123. Samtidig blir utgangsnoden fra toretningsbevegelseskompenseringsenheten 12 valgt ved svitsjen 26. Følgelig blir det toretnings forutsagte bilde 112 fra bevegelseskompenserings-forutsigelsesenheten 21 gitt ut som et bestemt forutsagt bilde 115.
Videre, mens utførelsen 1 som beskrevet ovenfor er konstruert slik at den omfatter en bevegelses-estimeringsenhet og en bevegelseskompenserings-forutsigelsesenhet separat fra hverandre, og en forutsigelsesmodus og en bevegelsesvektor oppnådd ved bevegelsesestimeringsenheten blir sendt til bevegelseskompenseringsforut-sigelsesenheten slik at et forutsagt bilde blir generert av bevegelseskompenserings-forutsigelsesenheten, kan en ekvivalent funksjon realiseres selv ved en slik konstruksjon at de to enheter blir erstattet av en bevegelsesestimerings/kompenserings-enhet 39 som vist på figur 4.
I utførelsen 1 som beskrevet ovenfor, i likhet med i det konvensjonelle eksempel, blir dessuten koding utført i enheter av en makroblokk som er en prosesseringsenhet for bilder.
Samtidig, i behandlingen av MPEG2 i det konvensjonelle eksempel beskrevet i forbindelse med tidligere teknikk, er tre typer av bilder, omfattende et I-bilde, et P-bilde og et B-bilde involvert, og en forutsagt modus er begrenset av disse bilder.
Spesielt, i et I-bilde, er alle makroblokker intrakodet, og ingen forutsigelsesmodus er involvert. I et P-bilde er bare fremmadrettet forutsigelse involvert, og i et B-bilde, er tre forutsigelsesmodi av fremmadrettet forutsigelse, bakutrettet forutsigelse og toretningsforutsigelse involvert.
Ifølge den foreliggende oppfinnelse, i tillegg til de bilder som er beskrevet ovenfor, er to andre bildetyper av et PG-bilde og et PBG-bilde, som skal beskrives nedenfor, involvert. I et PG-bilde, er to forutsigelsesmodi, omfattende fremadrettet forutsigelse og bakutrettet forutsigelse, involvert, og i et PBG-bilde, er fire forutsigelsesmodi av fremmadrettet forutsigelse, bakoverrettet forutsigelse, toretningsforutsigelse og bakgrunnsforutsigelse, involvert.
Figur 5A, 5B og 5C viser eksempler på mønstre av kodede bilder. For eksempel, det mønster som er vist på figur 5A likner det konvensjonelle eksempel, og liknende anordninger til den tidligere teknikk kan benyttes. For det mønster som er vist på figur 5B, er to forutsigelsesmodi, omfattende bakgrunnsforutsigelse fra et bakgrunnsbilde (indikert ved BG på figur 5B) skrevet i den andre rammehukommelse 10 og en fremmadrettet forutsigelse fra et umiddelbart foregående bilde, involvert, og en av de to forutsigelsesmodi som frembringer en mindre forutsigelsesfeil blir valgt.
Denne operasjon blir utført opp til det sjette bilde, og ved begynnelsen på det sjuende bilde, blir bildestrukturen endret til strukturen av P, B, B, P, osv. I dette tilfelle, opp til det sjette bilde, blir en bakgrunnsbilde registrert i den andre rammehukommelse 10. Deretter blir imidlertid det niende bilde først fremoverrettet forutsagt, med henvisning til det sjette bilde.
Deretter, i likhet med i det konvensjonelle eksempel, blir de sjuende og åttende bilder forutsagt med henvisning til dekodede bilder av det sjette bilde og det niende bilde.
På figur 5B, betyr den prikkede linje fra det andre bilde til "BG", for eksempel at innholdet av det kodede bilde av det andre bilde er skrevet som et bakgrunnsbilde inn i den andre rammehukommelse.
Som tidskontroll for skrivningen, kan skrivningen utføres etter hvert visst tidsintervall eller som respons på et styringssignal utenfra. Det mønster som er beskrevet ovenfor er imidlertid bare et eksempel, og andre mønstre kan være tilgjengelig.
Figur 5C viser et mønster hvor det første bilde er et I-bilde, og man kan se at et kodet bilde av I-bildet er skrevet som et bakgrunnsbilde i den andre rammehukommelse.
Deretter blir forutsigelsesmodiene for makroblokker av alle bilder fra og med det tredje bilde, valgt enten til bakgrunnsbildeforutsigelse eller fremadrettet forutsigelse. Dette er effektivt hvor bakgrunnsbildet er stasjonær, og er meget effektivt med en scene hvor noen personer snakker foran bakgrunnsbildet, siden det oppstår et fenomen kalt okklusjon hvor bakgrunnsbildet beveger seg inn og ut av synes ved en bevegelse av personen. Videre, hvor bakgrunnsbildet er et stille bilde og er kjent på forhånd, kan bakgrunnsbildet skrives inn i den andre ramme på forhånd, før kodingsprosessen starter.
Det skal bemerkes at mønsteret av kodede bilder kan ta hvilket som helst annet mønster enn de som er vist på figur 5A, 5B og 5C.
Operasjonen av rammehukommelsesvelgerenheten 35 som vist på figur 1 skal beskrives nedenfor.
I rammehukommelsesvelgerenheten 35, blir det bestemt i hvilken av den første rammehukommelse 9 og den andre rammehukommelse 10 den lokalt dekodede bilde 108 skal skrives. Som bestemmelsesmetode, kan det benyttes en teknikk hvor for eksempel, som sett fra en annen konstruksjon av kodingsapparatet av utførelse 1 som vist på figur 6, et styringssignal 140 fra ramme-rearrangeringsenheten 1 blir mottatt av rammehukommelses-velgerenheten 35, og svitsjing mellom den første rammeenhet 9 og den andre rammeenhet 10 utføres i henhold til det mottatte styringssignal 140 ved rammehukommelsesvelgerenheten 35.
I dette tilfelle, siden typene av bilder som blir kodet og andre bilder som skal kodes senere er kjent, blir for eksempel en dekodet bilde skrevet inn i den første rammeenhet 9 til enden "BG" som indikert på figur 5B, hvis ikke et signal utenfra blir mottatt, og siden bildestrukturen deretter endrer seg til strukturen P, B, B, P, osv, bør rammehukommelsen for et subjekt for skrivning velges og tilpasses som i den konvensjonelle eksempel.
Videre, som sett på figur 5B, som skrivning av bakgrunnsbilde fra et dekodet bilde i en viss posisjon inn i den andre rammehukommelse 10, for eksempel når en sceneendring er detektert, kan den dekodede bilde bli skrevet etter et forutbestemt tidsintervall.
For deteksjonsmetoden for en sceneendring, kan den konvensjonelle teknikk brukes. For eksempel, en fremgangsmåte hvor antallet av de makroblokker i en ramme ved hvilken forutsigelsesfeilen er høyere enn en terskelverdi er større enn en viss verdi, anses dette som en sceneendring.
Det er klart at forskjellige andre teknikker enn de som er beskrevet ovenfor er tilgjengelige.
Videre, mens det i bildekodingsapparatet ifølge den foreliggende utførelse 1, første andre rammehukommelser er anordnet som lageranordning for å realisere en konstruksjon for svitsjing av bevegelseskompensasjons-forutsigelse, kan det for implementering av maskinvaren, anordnes et antall rammehukommelser om gangen ved å kappe en hukommelse som har lagerkapasitet for antallet av rammehukommelser basert på interne adresser.
Som beskrevet ovenfor, med bildekodingsapparatet ifølge den foreliggende utførelse 1, siden en bakgrunnsbilde er lagret og bevegelseskompenserings-forutsigelse blir utført ved bruk av bakgrunns-forutsigelse basert på bakgrunnsbildet, kan koding utføres mens man holder en høy forutsigelseseffektivitet uten påvirkning av kodingssekvensen.
Det skal bemerkes, at mens lagerkontroll av en bakgrunnsbilde i rammehukommelsene som beskrevet i den foregående beskrivelse, er det klart at bak grunnsbildet her betyr en bilde som er lagret kontinuerlig, og betyr ikke selve innholdet i en bilde.
Spesielt, siden bilder som blir suksessivt oppdatert lik et konvensjonelt bildesystem omfatter noen bilder som er effektive for senere forutsigelse, blir denne bilde kontinuerlig lagret uavhengig av lagring av oppdateringsprosedyren, og her er denne bilde referert til som en bakgrunnsbilde.
Utførelse 2
Figur 7 viser et blokkdiagram av et dekodingsapparat for bevegelige bilder ifølge en utførelse 2 av den foreliggende oppfinnelse. Med henvisning til figur 7, betegner henvisningstallet 23 en bevegelseskompenseringsenhet, og 46 en demultipleksingsenhet. De øvrige komponenter er lik de som benyttes i utførelse 1, og følgelig skal en gjentatt beskrivelse utelates her.
Virkemåten skal beskrives i det følgende.
Dekodingsapparatet ifølge den foreliggende utførelse 2 tilsvarer kodingsapparatet som beskrevet i forbindelse med utførelse 1, og en grunnleggende be-handlingsprosedyre for dekoding av dette er lik prosessen i dekodingsapparatet som beskrevet i det konvensjonelle eksempel på tidligere teknikk. Beskrivelsen som skal gir her er derfor primært av forskjellene mellom dem.
En lokalt dekodet bilde 108 føres inn til rammehukommelses-velgerenheten 35. Rammehukommelsens velgerenhet 35 mottar den lokalt dekodede bilde 108, velger en rammehukommelse for et subjekt for skriving, og overfører en valgt dekodet bilde 134 eller 135 til den første rammehukommelse 9 og den andre rammehukommelse 10. En dekodet bilde blir så skrevet inn i den første rammehukommelse 9 og den andre rammehukommelse 10.
Samtidig vil bevegelseskompenseringsenheten 23 lese ut referansebilder 109 og 110 fra de to rammehukommelser, og generere en forutsagt bilde 115 i henhold til en forutbestemt bevegelsesforutsigelsesmodus 126 i en liknende prosedyre som den lokale dekoding av kodingsapparatet.
Figur 8 er et blokkdiagram som viser en indre konstruksjon av bevegelseskompenseringsenheten 23. Med henvisning til figur 8, betegner nummeret 32 en svitsj.
Virkemåten skal beskrives i det følgende.
En av genereringsenhetene 27-30 for forutsagt bilde, som tilsvarer en valgt forutsigelsesmodus 126, leser ut referansebilder 109 eller 110 for å generere en forutsagt bilde. Videre blir svitsjen 32 svitsjet som respons på den valgte forutsigelsesmodus slik at en endelig bestemt forutsagt bilde 115 blir gitt ut.
Utførelse 3
Figur 9 er et blokkdiagram av et bildekodingsapparat ifølge en utførelse 3 av den foreliggende oppfinnelse. Med henvisning til figur 9, betegner henvisningstallet 33 en bevegelseskompenserings-forutsigelsesenhet, 34 betegner en tredje rammehukommelse, 37 en rammehukommelse-velgerenhet, 41 en bevegelsesestimeringsenhet, 133 en referansebilde fra den tredje rammehukommelse, og 136 en valgt lokalt dekodet bilde. Andre komponenter enn de som er nevnt ovenfor er lik de som benyttes i utførelse 1, og en gjentatt beskrivelse av dem er utelatt her.
Bildekodingsapparatet ifølge den foreliggende utførelse 3 erkarakterisertved at det omfatter den tredje rammehukommelse i tillegg til konstruksjonen av bildekoderen ifølge utførelse 1 som vist på figur 1.
Virkemåten skal beskrives i det følgende.
Referansebilder 109, 110 og 133 blir lest ut fra de tre rammehukommelser 9, 10 og 34 i hvilke kodede bilder tidligere er lagret, og bevegelsesforutsigelse blir utført av bevegelsesestimeringsenheten 41. En bevegelsesvektor 123 og en forutsigelsesmodus 126 oppnådd ved bevegelsesforutsigelsen blir ført inn til bevegelseskompenserings-forutsigelsesenheten 33.
Bevegelseskompenserings-forutsigelsesenheten 33 velger en referansebilde som er nødvendig for generering av en forutbestemt bevegelses-forutsagt bilde fra referansebildete 109, 110 og 133 basert på den bestemte forutsigelsesmodus 126, og gir ut den bestemte forutsigelsesbilde 115.
Samtidig blir en lokalt dekodet bilde 108 skrevet, etter at den er bestemt av rammehukommelses-velgerenheten 37, i hvilken rammehukommelse den lokalt dekodede bilde 108 skal skrives, som en referansebilde 134, 135 eller 136 inn i den således bestemte rammehukommelse.
Figur 10 viser en intern konstruksjon av bevegelses-estimeringsenheten 41. Med henvisning til figur 10, betegner referansetallet 42 en bevegelsesenhet for en forutsigelsesmodus.
Bevegelses-estimeringsenheten 41 som vist på figur 2 har en konstruksjon som omfatter, i tillegg til bevegelses-estimeringsenheten 15 som vist på figur 2, en genereringsenhet 30 for en bakgrunns-forutsagt bilde, for å føre inn en referansebilde 133 fra den tredje rammehukommelse.
Genereringsenheten 27 for fremadrettet forutsagt bilde, fører inn en inngangsbilde 101 og en referansebilde 109 fra den første rammehukommelse, og gir ut en fremadrettet forutsagt bilde 127, og genereringsenheten 28 for toretnings forutsagt bilde fører inn en inngangsbilde 101, en referansebilde 109 fra den første rammehukommelse, og en referansebilde 110 fra den andre rammehukommelse, og gir ut en toretnings forutsagt bilde 128.
Genereringsenheten 29 for bakoverrettet forutsagt bilde fører inn inngangsbilde 101 og referansebilde 110 for den andre rammehukommelse, og gir ut en bakoverrettet forutsagt bilde 129, og genereringsenheten 30 for bakgrunnsforutsagt bilde fører inn inngangsbilde 101 og en referansebilde 133 for den tredje rammehukommelse, og gir ut en bakgrunnsforutsagt bilde 130.
Forutsigelsesmodus-bestemmelsesenheten 42 beregner forskjellene i absolutt verdi mellom de forutsagte bilder 27, 28, 29 og 30, som nevnt ovenfor, og fører inn bilde 101, bestemmer en forutsagt modus som utviser et minimum av absolutte verdiforskjeller, og gir ut den bestemte forutsagte modus som forutsagt modus 126. Samtidig gir den forutsagt modus bestemmende enhet 42 ut en bevegelsesvektor 123.
Figur 11 er et blokkdiagram av en intern konstruksjon av bevegelseskompenserings-forutsigelsesenheten 33. Med henvisning til figur 11, blir en svitsj 25 åpnet eller sluttet som respons på forutsigelsesmodus 126, slik at referansebilde 109 eller 110 blir ført inn til en valgt bevegelses-kompenseringsenhet. For eksempel, når den fremadrettede forutsigelsesmodus velges, blir en svitsj SW1 svitsjet til en node A, mens en annen svitsj SW2 blir svitsjet av. Imidlertid, når toretnings-forutsigelsesmodus er valgt, blir svitsjen SW1 svitsjet til en annen node B mens svitsjen SW2 blir svitsjet til en ytterligere node C.
Når bakgrunns-forutsigelsesmodus er valgt, blir en referansebilde 133 ført inn direkte og henvist til. Senere, i svitsjen 26, blir svitsjene SW1 og SW2 svitsjet til noder som tilsvarende forutsigelsesmodus 126, og en endelig bestemt forutsagt bilde 115 blir gitt ut fra svitsjen 26.
Videre, mens i den foreliggende utførelse 3 de første, andre og tredje rammehukommelser er anordnet for å realisere en konstruksjon for svitsjing av bevegelseskompenserings-forutsigelse, for implementering av maskinvaren, kan et flertall rammehukommelser anordnes om gangen ved å kappe en hukommelse som har lagringskapasitet for antallet av rammehukommelser basert på interne adresser. Figur 12A, 12B og 12C er diagrammatiske riss som illustrerer omskrivningsoperasjonen av rammehukommelsene i den foreliggende utførelse 3, og i det følgende skal omskrivningsoperasjonen beskrives, omfattende et forhold til operasjonen av rammehukommelses-velgerenheten 37 som beskrevet ovenfor under henvisning til figur 6A, 6B og 6C. Figur 12A, 12B og 12C viser tre forskjellige mønstre. På figur 12A, vises PG-bilder av bakgrunnsforutsigelse og foroverrettet beskrivelse, som begynner med det sjette bilde, og konstruksjonen fortsetter opp til det niende bilde. Deretter blir strukturen av IBBP gjenopprettet ved å begynne med det tiende bilde.
På figur 12B er svitsjing blant alle forutsigelsesmodi av foroverrettet forutsigelse, bakoverrettet forutsigelse, toretningsforutsigelse og bakgrunnsforutsigelse mulig med de første, andre, fjerde, femte, sjuende, åttende, tiende og ellevte bilder, og forut-sigelses-effektiviteten er høyest, videre, også i dette tilfelle, mens skriving som en bakgrunnsbilde i den tredje rammehukommelse er mulig på hvilket som helst tidspunkt, i eksemplet på figur 12B, er skrivning i den tredje rammehukommelse for en bakgrunnsbilde foretrukket fra femte og tiende bilde.
På figur 12C, vises PG-bilder av bakgrunnsforutsigelse og foroverrettet forutsigelse med tredje, sjette, niende og tolvte bilde.
I disse operasjoner, siden det allerede er kjent av hvilken bildetype et nylig dekodet bilde er, skal en rammehukommelse i hvilken den lokalt dekodede bilde 108 skal skrives, bestemmes ved seg selv og i henhold til bildetypen, med rammehukommelses-velgerenheten 37. Spesielt, hvor mønstret har strukturen IBBP, for I-bildet, blir den lokalt dekodede bilde 108 skrevet inn i den første rammehukommelse, men for P-bildet, blir den lokalt dekodede bilde 108 skrevet inn i den andre rammehukommelse. For B-bildete, blir ikke den lokalt dekodede bilde 108 skrevet inn i noen av rammehukommelsene.
Det skal bemerkes, at som allerede beskrevet, blir en viss dekodet bilde skrevet som en bakgrunnsbilde også inn i den tredje ramme etter et visst tidsintervall eller som følge av et kontrollsignal utenfra.
Utførelse 4
Figur 13 er et blokkdiagram av et dekodingsapparat for bevegelige bilder ifølge en utførelse 4 av den foreliggende oppfinnelse. Dekodingsapparatet tilsvarer kodingsapparatet ifølge utførelse 3, som vist på figur 9. Med henvisning til figur 13, betegner referansetallet 36 en bevegelseskompenserings-enhet. Av de øvrige komponenter enn den nevnte, er komponenter betegnet med de samme referansetall som brukt i utførelsene 1-3 liknende elementer, og følgelig er gjentatt beskrivelse av disse utelatt her.
Virkemåten skal beskrives i det følgende.
Bevegelseskompenseringsenheten 36 utfører bevegelseskompensering med henvisning til referansebildete 109, 110 og 133 som lest ut fra den første rammehukommelser 9, den andre rammehukommelse 10 og den tredje rammehukommelse 11, og gir ut en forutsagt bilde 115.
Dekodede bilder blir rearrangert av den viste ramme-rearrangeringsenhet 38 igjen, slik at de oppstår i tidsrekkefølge for visning, og en utgangsbilde 137 blir oppnådd som følge av rearrangementet.
Figur 14 er et blokkdiagram som viser en intern konstruksjon av bevegelseskompenseringsenheten 36. Med henvisning til figur 14, blir en av de forutsagte bilder generert ved de individuelle genereringsenheter for forutsagt bilde valgt som følge av en forutsigelsesmodus 126, ved svitsjen 32. Deretter blir den valgte forutsagte bilde 115 gitt ut til adderingsenheten 8.
Den fjerde utførelse gir liknende effekter som bildekodingsapparatet ifølge utførelse 3.
Utførelse 5
Mens bildedekodingsapparatet ifølge utførelse 4 som beskrevet ovenfor utfører omskrivning til en bakgrunnsbilde som illustrert på figur 5B og 5C i enheter av et bilde, er det enkelte ganger mulig å utføre forutsigelse effektivt hvis skrivningen til en bakgrunnsbilde er utformet i enheter av en makroblokk.
Som teknikk for omskrivning til bakgrunnsbilde, kan for eksempel brukes en teknikk hvor oppdatering blir utført etter hvert forutbestemt tidsintervall i kodingsprosessen, eller en annen teknikk hvor alle pixel i en makroblokk i en viss posisjon ikke blir referert til for forutsigelse for mer enn en viss tidsperiode, hvor et kontrollsignal blir generert for å omskrive bare makroblokken i en bakgrunnsbilde med en dekodet bilde.
Figur 15 illustrerer dette. Med henvisning til figur 15, ved en tidskontroll for skriving fra det andre bilde på figur 5B inn i bakgrunnsbilde"BG", blir bare en makroblokk i området av skrå linjer på figur 15 skrevet som den er inn i den andre rammehukommelse, og blir brukt som en del av en referansebilde for retningen av det tredje bilde.
På liknende måte, også hvor bildekodingsapparatet ifølge utførelse 5 som beskrevet ovenfor omfatter tre rammehukommelser, blir omskriving inn i en bakgrunnsbilde vist på figur 12B og 12C utført i enheter av en makroblokk. Som en teknikk for omskrivning, kan benyttes den samme operasjon som beskrevet ovenfor.
Som beskrevet ovenfor, siden omskrivning av innholdet i en bilde i hver rammehukommelse blir utført i enheter av en makroblokk etter et visst tidsintervall eller som respons på et styringssignal utenfra, kan innholdet av et bilde i rammehukommelsen alltid bli holdt, på et finere nivå, til innholdet fra hvilket en høyere forutsigelseseffektivitet for bakgrunnsforutsigelse kan oppnås.
Utførelse 6
Også et bildedekodingsapparat som tilsvarer det bildekodingsapparat som omfatter tre rammehukommelser beskrevet ovenfor i forbindelse med bildekodingsapparatet ifølge utførelse 5, kan utføre omskrivning til bakgrunnsbilde i enheter av en makroblokk.
For eksempel, i et bildedekodingsapparat som vist på figur 7, etter at et dekodet bilde 108 er valgt ved rammehukommelse-velgerenheten 35, blir en makroblokk av bakgrunnsbildet i samme posisjon som den makroblokk som er nevnt ovenfor omskrevet til en valgt dekodet bilde 135. Det skal bemerkes at oppdateringen i enheter av en makroblokk kan utføres etter et visst tidsintervall eller som respons på et styringssignal utenfra.
På liknende måte, også i dekodingsapparatet som vist på figur 13, blir omskrivning til en bakgrunnsbilde som illustrert på figur 12B og 12C utført i enheter av en makroblokk. Som teknikker for omskrivning, kan den samme operasjon som beskrevet ovenfor utføres.
Utførelse 7
Det er også effektivt å variere bevegelsessøkningsområdet etter bakgrunnsforutsigelse ved bevegelsesestimeringsenheten 15 av bildekodingsapparatet ifølge utførelse 1 som vist på figur 1 eller bevegelseskompenserings-forutsigelsesenheten 33 som vist på figur 3, til søkeområdet for foroverrettet forutsigelse eller bakoverrettet forutsigelse.
For dette formål er det å anbefale, ved bruk av det faktum av f.eks. bakgrunnsforutsigelse virker effektivt når bevegelsesvektoren fra bakgrunnen er 0, å sette søkningsområdet til et mindre område enn for enhver annen forutsigelse.
Bildekodingsapparatet ifølge den foreliggende utførelse 7 utviser en tilleggseffekt idet søketiden blir redusert, og idet, siden koder som oppnås ved variabel lengdekoding av bevegelsesvektorer kan settes forholdsvis kort, kan mengden av kodingsinformasjon for bevegelsesvektorene bli redusert.
Utførelse 8
Figur 16 er et blokkdiagram av et bildekodingsapparat ifølge en utførelse 8 av den foreliggende oppfinnelse. Med henvisning til figur 16, betegner henvisningstallet 47 en genereringsenhet for differensial vektorer, og 141 betegner en forskjellsvektor. Av andre komponenter enn de som er nevnt ovenfor, er de komponenter som er betegnet med det samme henvisningstall som brukt i utførelse 5 liknende elementer, og følgelig er gjentatt beskrivelse av disse utelatt her.
Differensialvektor-genereringsenheten 47 beregner en forskjellsvektor 141 mellom en løpende bevegelsesvektor 123 og en referansevektor. Differansevektoren 141 blir så variabel lengde kodet ved variabel lengde kodingsenheten 17.
Figur 17A og 17B illustrerer en kodingsmetode for en bevegelsesvektor, og spesielt figur 17A viser en referanse-bevegelsesvektor for den første rammehukommelse 9, og figur 17B viser en referanse-bevegelsesvektor for den andre rammehukommelse 10.
Virkemåten skal beskrives nedenfor.
Det henvises nå til figur 17A og 17B, hvor hver rektangelformet ramme betegner en makroblokk. Det er kjent at for en bevegelsesvektor MV(1) for en løpende makroblokk opptatt ved utlesning av en referansebilde i den første rammehukommelse og utførelse av bevegelseskompenserende forutsigelse av referansebilden, er det effektivt å variabel-lengde-kode, ved bruk av tre bevegelsesvektorer MV1(1), MV2(1) og MV3(1) av allerede kodede og dekodede makroblokker som kandidatvektorer, differanseverdier for bevegelsesvektor MV(1) fra disse.
For eksempel, hvis man forsøker å bruke en median av bevegelsesvektorene MV1(1), MV2(1) og MV3(1) som kandidatvektorer, kan forskjellsvektoren PMV(l) representeres ved det følgende uttrykk: PMV(l) = MV(1) - median (MV1(1), MV2(1), MV3(1)) hvor "median" er en operatør for beregning av en median.
På liknende måte, for den andre rammehukommelse,
Figur 18 er et blokkdiagram av et bildekodingsapparat som omfatter en differensialvektor-genereringsenhet 42 i tillegg til konstruksjonen av bildekodingsapparatet som vist på figur 9.
For beregning av en forskjellsvektor, i tillegg til den operasjon som er beskrevet ovenfor, kan en referanse-bevegelsesvektor PMV(3) for den tredje rammehukommelse beregnes og variabel-lengde-kodes.
Mengden av bevegelsesvektorer for informasjonsgenerering kan leveres på en slik måte som beskrevet ovenfor.
Utførelse 9
Figur 19 og 20 er blokkdiagrammer av et dekodingsapparat som tilsvarer kodingsapparatet ifølge utførelse 8 som beskrevet ovenfor under henvisning til figur 16 og 18, i hvilke en forskjellsvektor blir brukt. Med henvisning til figur 19 og 20, betegner referansetallet 48 en adderingsenhet for bevegelsesvektorer. De øvrige komponenter er lik komponentene i dekodingsapparat ifølge utførelse 2 som vist på figur 7, og gjentatt beskrivelse av dem er utelatt her.
I dekodingsapparatet ifølge den foreliggende utførelse 9, blir en forskjellsvektor 141 som er variabel lengde dekodet ved dekodingsenheten 22, addert til en referansevektor av variabel lengde dekodingsenheten 22 for å beregne en bevegelsesvektor 123.
Den etterfølgende prosess er den samme som operasjonen av dekodingsapparatet ifølge utførelsen 2 som vist på figur 7, og gjentatt beskrivelse er derfor utelatt her.
Utførelse 10
Mens det i kodingsapparatet på figur 1, en hel skjerm i et bilde blir brukt som subjekt for koding, er bildekodingsapparatet ifølge den foreliggende utførelse 10 konstruert slik at bildetypen av koding er variabel i enheter på en av et antall subjektbilder (objekter) som utgjør skjermen.
Med henvisning til figur 21, hvis for eksempel en skjerm består av et objekt 1 (fisk), et objekt 2 (vann: bakgrunnsbilder) og et objekt 3 (ball) og grensene mellom dem er kjent, kan disse objekter blir kodet ved bruk av teknikker som er forskjellige fra hverandre.
I bildekodingsapparatet ifølge den foreliggende utførelse 10, blir slike kodingsteknikker realisert ved bruk av bildetyper som er forskjellige fra hverandre. For eksempel, siden objekt 1 utviser en forholdsvis stor mengde bevegelse, vil konstruksjon av bildetyper på figur 5A brukt for objekt 1, tatt i betraktning at toretnings forutsigelse er høyere i forutsigelseseffektivitet enn bakgrunnsforutsigelse.
På den annen side, siden objekt 2 er en bilde som utviser lite bevegelse, er det effektivt å bruke bakgrunnsforutsigelse for dette. Følgelig, bør konstruksjonen på figur 5C brukes. Hvis det imidlertid oppstår en slik variasjon at scenen endres raskt med et visst midtre bilde, bør konstruksjonen som omfatter B-bilder som begynner med et midtre bilde, som ses på figur 5B benyttes.
Figur 22 er et blokkdiagram som viser et konkret eksempel på bildekodingsapparatet som blir frembrakt av den foreliggende utførelse 10. Med henvisning til figur 22, betegner henvisningstallet 42 en objekt-gjenkjenningsenhet, 43 en første rammehukommelsesgruppe, 44 en annen rammehukommelsesgruppe, og 138 et objekt-identiifseringssignal.
Virkemåten skal beskrives nedenfor.
En inngangsbilde 100 omfatter identifiseringssignaler som er påført individuelle objekter på forhånd, og identifiseringssignalene blir identifisert av objekt-gjenkjenningsenheten 42. Antallet av hver av slike identifiserte objekter blir tatt ut som et objekt-identifiseringssignal 138 fra objekt-gjenkjenningsenheten 42.
Bevegelsesestimeringsenheten velger, fra den første rammehukommelsesgruppe 43 og den andre rammehukommelsesgruppe 44, en rammehukommelse som tilsvarer objektet som skal kodes i henhold til objekt-identifiseringssignalet 138, leser ut en referansebilde fra den valgte rammehukommelse, og utfører bevegelsesforutsigelsen.
Samtidig vil bevegelses-kompenseringsforutsigelsesenheten 21 velge en rammehukommelse som tilsvarer et forutbestemt objekt i henhold til en bevegelsesforutsigelsesmodus 126 bestemt av bevegelsesestimeringsenheten 15, og genererer en forutsagt bilde 115.
På den annen side, skriver rammehukommelses-velgerenheten 35 en dekodet bilde 108 inn i en av rammehukommelsene i en valgt en av rammehukom melsesgruppene, som tilsvarer et forutbestemt objekt i henhold til objekt-identifiseringssignalet 138.
Videre blir objekt-identifiseringssignalet 138 multiplekset sammen med annen kodingsinformasjon ved multipleksingsenheten 45, og sendt ut som en multiplekset bitstrøm 139 til et eksternt apparat (ikke vist).
Mens det i bildekodingsapparatet ifølge den foreliggende utførelse 10 er anordnet første og andre hukommelsesgrupper for å realisere konstruksjonen for svitsjing av bevegelses-kompenseringsforutsigelse, kan det for implementering av maskinvare, anordnet et antall rammehukommelser om gangen ved å kappe en hukommelse som har lagerkapasitet for antallet av rammehukommelser basert på interne adresser. Som beskrevet ovenfor, med bildekodingsapparatet ifølge den foreliggende ut-førelse 10, siden en forutsigelsesstruktur som passer sammen med bevegelsen av et objekt kan tas, blir den totale forutsigelseseffektivitet forbedret.
Utførelse 11
Et blokkdiagram av et bildedekodingsapparat som tilsvarer bildekodingsapparatet ifølge utførelse 10 som vist på figur 2, er vist på figur 23. Med henvisning til figur 23, betegner henvisningstallet 46 en demultipleksingsenhet. De øvrige komponenter er lik komponentene i bildedekodingsapparatet i for eksempel utførelse 4, som vist på figur 13, og gjentatt beskrivelse av dem er derfor utelatt.
Virkemåten skal beskrives nedenfor.
Som respons på et objekt-identifiseringssignal 138, demultiplekset av demultipleksingsenheten 46, leser bevegelses-kompenseringsenheten 23 ut en referansebilde fra en av rammehukommelsene i en forutbestemt rammehukommelsesgruppe som tilsvarer et forutbestemt objekt, og utfører bevegelseskompensering som tilsvarer en forutsigelsesmodus for å generere en forutsagt bilde 115.
Samtidig skriver rammehukommelse-velgerenheten 35 en dekodet bilde 108 inn i en av rammehukommelsene i en forutbestemt rammehukommelsesgruppe, som tilsvarer et forutbestemt objekt i henhold til objekt-identifiseringssignalet 138. Den øvrige behandling er lik behandlingen av bildedekodingsapparatet ifølge utførelse 4, som vist på figur 13, og gjentatt beskrivelse er derfor utelatt her.
Utførelse 12
Figur 24 er et blokkdiagram av et bildekodingsapparat som omfatter en ytterligere rammehukommelsesgruppe i tillegg til konstruksjonen av utførelse 10, som beskrevet ovenfor under henvisning til figur 22, slik at den kan omfatte totalt tre rammehukommelsesgrupper. Med henvisning til figur 24, betegner henvisningstallet 49 en tredje rammehukommelsesgruppe. De øvrige komponenter er lik komponentene i bildekodingsapparatet ifølge utførelse 10, som vist på figur 22, og gjentatt beskrivelse av dem er derfor utelatt her.
Virkemåten skal beskrives nedenfor.
En inngangsbilde 100 omfatter identifiseringssignaler som er påført individuelle objekter på forhånd, og identifiseringssignalene blir identifisert ved objekt-gjenkjenningsenheten 42. Antallet av hver av de således identifiserte objekter blir gitt ut som et objekt-identifiseringssignal 138 fra objekt-gjenkjenningsenheten 42.
Bevegelses-estimeringsenheten 15 velger, fra den første rammehukommelsesgruppe 43, den andre rammehukommelsesgruppe 44 og den tredje rammehukommelsesgruppe 49, en rammehukommelse som tilsvarer det objekt som skal kodes i henhold til objekt-identifiseringssignalet 138, leser ut en referansebilde fra den valgte rammehukommelse, og utfører bevegelsesforutsigelse.
Samtidig velger bevegelses-kompenseringsforutsigelsesenheten 21 en rammehukommelse som tilsvarer et forutbestemt objekt i henhold til bevegelses-forutsigelsesmodus 126 som bestemt av bevegelsesestimeringsenheten 15, og genererer en forutsagt bilde 115.
På den annen side skriver rammehukommelses-velgerenheten 35 en dekodet bilde 108 inn i en av rammehukommelsene i en forutbestemt en av rammehukommelsesgruppene, som tilsvarer et forutbestemt objekt i henhold til objekt-identifiseringssignalet 138. Videre blir objekt-identifiseringssignalet 138 multiplekset sammen med annen kodingsinformasjon ved multipleksingsenheten 45, og sendt ut som en multiplekset bitstrøm 139.
Mens det i bildekodingsapparatet ifølge den foreliggende utførelse 12 er anordnet første, andre og tredje hukommelsesgrupper for å realisere konstruksjonen for svitsjing av bevegelses-kompenseringsforutsigelse, kan det for implementering av maskinvaren, anordnes et antall rammehukommelser om gangen ved å kappe en hukommelse som har en lagerkapasitet for antallet av rammehukommelser, basert på interne adresser.
Utførelse 13
Et blokkdiagram av et bildedekodingsapparat som tilsvarer bildekodingsapparatet ifølge utførelse 12 som vist på figur 24, er vist på figur 25. Med henvisning til figur 25, betegner henvisningstallet 49 en tredje rammehukommelsesgruppe. De øvrige komponenter er lik komponentene i bildedekodingsapparatet ifølge for eksempel ut-førelse 11, som vist på figur 23, og gjentatt beskrivelse av disse er derfor utelatt her.
Virkemåten skal beskrives nedenfor.
Som respons på et objekt-identifiseringssignal 138, som er demultiplekset av demultipleksingsenheten 46, vil bevegelses-kompenseringsenheten 23 lese ut en referansebilde fra en av rammehukommelsene i en forutbestemt rammehukommelsesgruppe som tilsvarer et forutbestemt objekt, og utføre bevegelseskompensering tilsvarende en forutsigelsesmodus for å generere en forutsagt bilde 115.
Samtidig vil rammehukommelses-velgerenheten 35 skrive en dekodet bilde 108 inn i en av rammehukommelsene i en forutbestemt rammehukommelsesgruppe, som tilsvarer et forutbestemt objekt i henhold til objekt-identifiseringssignalet 138.
Den øvrige behandling er den samme som i bildedekodingsapparatet ifølge utførelse 11, som vist på figur 23, og gjentatt beskrivelse er derfor utelatt her.
Utførelse 14
Bildekodingsapparatet ifølge utførelse 12 som vist på figur 24 kan modifiseres slik at omskrivning av bildeinnholdet av et område, i hvilket et objekt som skal kodes er inkludert, av en rammehukommelse som tilsvarer objektet i den andre rammehukommelse i hvilken en dekodet bilde av objektet fra tidligere er lagret, blir utført etter hvert visst tidsintervall eller som respons på et styringssignal utenfra.
Figur 26 er et diagrammatisk riss som illustrerer at, for eksempel med en dekodet bilde av alle makroblokker omfattende en region okkupert av et visst objekt, blir bildeinnholdet i en makroblokk eller makroblokker i samme posisjon av en rammehukommelse i den andre rammehukommelsesgruppe som tilsvarer objektet, omskrevet. Følgelig, i tilfellet med figur 26, blir innholdet av totalt fire makroblokker i to vertikale kolonner og to horisontale rekker oppdatert.
Videre, hvor omskrivning av bildeinnholdet i et område som omfatter et objekt som skal kodes, av en rammehukommelse som tilsvarer objektet i den tredje rammehukommelse i hvilken en dekodet bilde av objektet fra tidligere er lagret, blir utført etter hvert tidsintervall eller som respons på et styringssignal utenfra, bør skrivingsoperasjonen i rammehukommelsen i den andre rammehukommelsesgruppe i den foregående beskrivelse anvendes til skriveoperasjonen i en rammehukommelse i den tredje rammehukommelsesgruppe.
Også med et dekodingsapparat som tilsvarer bildekodingsapparatet ifølge utførelse 12 som vist på figur 24 som beskrevet ovenfor, kan omskrivning av bildeinnholdet i et område i hvilket et objekt er inkludert, eller en rammehukommelse som tilsvarer objekter i den andre rammehukommelsesgruppe i hvilken en dekodet bilde av objektet fra tidligere er lagret, bli styrbart utført etter et visst tidsintervall eller som respons på et styringssignal utenfra.
Utførelse 15
Bildekodingsapparatet ifølge utførelse 10 som vist på figur 22 kan modifiseres slik at leteområdet for bevegelsesvektor-søkningen for en referansebilde fra en rammehukommelse i den første rammehukommelsesgruppe som tilsvarer et objekt og en annen referansebilde fra en annen rammehukommelse i den andre rammehukommelsesgruppe som tilsvarer et annet objekt, blir variert for de individuelle objekter.
For eksempel, i bildekodingsapparatet ifølge utførelse 10 som vist på figur 22, hvis en bakgrunn som har forholdsvis lite bevegelse som et objekt blir lagret på forhånd i en rammehukommelse i den andre rammehukommelsesgruppe som tilsvarer objektet, mens en operasjon av suksessiv skriving av en dekodet bilde av et annet objekt som har en forholdsvis større mengde bevegelse på ethvert tidspunkt inn i en annen rammehukommelse i den første rammehukommelsesgruppe som tilsvarer objektet blir utført, kan en høy forutsigelseseffektivitet opprettholdes for begge objekter.
Videre, bildekodingsapparatet ifølge utførelse 12 som vist på figur 24 kan modifiseres slik at leteområdene for bevegelsesvektor-søkning for en referansebilde fra en rammehukommelse av den første rammehukommelsesgruppe som tilsvarer et objekt, blir en annen referansebilde fra en annen rammehukommelse av den andre rammehukommelsesgruppe som tilsvarer et annet objekt og en videre referansebilde fra en ytterligere rammehukommelse av den tredje rammehukommelsesgruppe som tilsvarer et ytterligere objekt, variert for de individuelle objekter.
For eksempel, i bildekodingsapparatet ifølge utførelse 12 som vist på figur 24, hvis en bakgrunn som har forholdsvis liten bevegelse som et objekt blir lagret på forhånd i en rammehukommelse av den tredje rammehukommelsesgruppe som tilsvarer objektet, mens operasjon av etterfølgende skriving av en dekodet bilde av et annet objekt som utviser en forholdsvis stor mengde bevegelse ved et gitt tidspunkt inn i en annen rammehukommelse av den første rammehukommelsesgruppe eller den andre rammehukommelsesgruppe som tilsvarer objektet blir utført, kan en høy forutsigelseseffektivitet opprettholdes for alle de tre objekter.
Som beskrevet ovenfor, siden søkeområdet for en bevegelsesvektor blir satt separat fra hverandre for et antall rammehukommelsesgrupper henvist til ved objekter, for eksempel for et objekt som har en forholdsvis liten mengde av bevegelse, kan mengden av informasjonsgenerering av bevegelsesvektoren reduseres ved å gjøre søkeområdet for en bevegelsesvektor smalt.
Utførelse 16
Figur 27 er et blokkdiagram som viser et bildekodingsapparat ifølge en ut-førelse 16 av den foreliggende oppfinnelse. Med henvisning til figur 27, betegner henvisningstallet 47 en differensialvektor-genereringsenhet. Differensialvektor-genereringsenheten 27 holder bevegelsesvektorer oppnådd tidligere ved å referere til bilder for individuelle objekter fra rammehukommelser av den første rammehukommelsesgruppe som tilsvarer objektene, og bevegelsesvektorer oppnådd tidligere ved å referere til bilder av de individuelle objekter fra rammehukommelser av den andre rammehukommelsesgruppe som tilsvarer objektene i bildekodingsapparatet ifølge ut-førelse 10 som vist på figur 22, separat for visse tidsperioder, og beregner for skjellsvektorer separat for de individuelle objekter. Den andre konstruksjon likner konstruksjonen av bildekodingsapparatet ifølge utførelse 10 som vist på figur 22, og følgelig gjentatt beskrivelse utelatt her.
Virkemåten skal beskrives nedenfor.
Bevegelses-estimeringsenheten utfører bevegelsesestimering av en aktuell bilde 101 av et objekt som skal kodes ved bruk av en bilde i en rammehukommelse som tilsvarer objektet i en av de første rammehukommelsesgrupper og den andre rammehukommelsesgruppen valgt ved bevegelses-estimering som en referansebilde, for å detektere en bevegelsesvektor 123.
Basert på bevegelsesvektoren 123, velger differensialvektor-genereringsenheten 47 en kandidatvektor (MV1, MV2 eller MV3 som nevnt ovenfor), blant bevegelsesvektorer av objektet som tidligere lagret i differensialvektor-genereringsenheten 47, og gir ut en differansevektor 141 av kandidatvektoren fra bevegelsesvektoren 123. Differansevektoren 141 blir kodet til et variabel lengde kodeord ved variabel lengde kodingsenheten 17. Følgelig har differensialvektor-genereringsenheten 47 en hukommelsesfunksjon ved å holde bevegelsesvektoren fra tidligere for visse tidsperioder, for de individuelle rammehukommelsesgrupper.
Utførelse 17
Et blokkdiagram av et dekodingsapparat som tilsvarer bildekodingsapparatet ifølge utførelse 16 vist på figur 27, er vist på figur 28. Med henvisning til figur 28, betegner henvisningstallet 48 en bevegelsesvektor-adderingsenhet som velger en kandidatvektor blant vektorer for et objekt som er lagret i den på forhånd, og adderer den valgte kandidatvektor til en differansevektor 141 som er variabel lengde dekodet ved dekodingsenheten 22. Den andre konstruksjon er lik konstruksjonen av bildekodingsapparatet ifølge utførelse 10 som vist på figur 22, og gjentatt beskrivelse er derfor utelatt her.
Virkemåten skal beskrives nedenfor.
I bildedekodingsapparatet ifølge den foreliggende utførelse 17, blir en differansevektor 141 som er variabel lengde kodet ved variabel lengde dekodingsenheten 22, ført til bevegelsesvektor-adderingsenheten 48, ved hvilken en kandidatvektor blir valgt blant vektorer av et objekt som er tidligere lagret i denne, og addert til forskjellsvektoren 141 for å regenerere en bevegelsesvektor 123.
Bevegelsesvektoren 123 blir sendt til bevegelses-kompenseringsenheten 23. Bevegelses-kompenseringsenheten 23 mottar bevegelsesvektoren 23, leser ut en bilde i hukommelsesgruppen 43 eller 44 som tilsvarer objektet i rammehukommelsesgruppen som er valgt av rammehukommelses-velgerenheten 35 som en referansebilde, og gir ut en forutsagt bilde 115. Resten av behandlingen er lik operasjonen av bildedekodingsapparatet ifølge utførelse 11, som vist på figur 23, og gjentatt beskrivelse er derfor utelatt her.
Utførelse 18
En konstruksjon av et bildekodingsapparat som omfatter en tredje rammehukommelsesgruppe 49 i tillegg til konstruksjonen av bildekodingsapparatet ifølge utførelse 16 som vist på figur 27, er vist på figur 29. Den øvrige konstruksjon er lik konstruksjonen av bildekodingsapparatet ifølge utførelse 16 som vist på figur 27, og gjentatt beskrivelse av den er derfor utelatt her.
Virkemåten skal beskrives nedenfor.
Bevegelses-estimeringsenheten 15 utfører bevegelsesestimering av en aktuell bilde 101 av et objekt som skal kodes ved bruk av en bilde i en rammehukommelse som tilsvarer objektet i den første rammehukommelsesgruppe, den andre rammehukommelsesgruppe eller den tredje rammehukommelsesgruppe som valgt ved bevegelses-estimering som en referansebilde for å detektere en bevegelsesvektor 123.
Basert på bevegelsesvektoren 123, velger differensialvektor-genereringsenheten 47 en kandidatvektor (MV1, MV2 eller MV3 som nevnt ovenfor), blant bevegelsesvektorer av objekter som tidligere lagret i differensialvektor-genereringsenheten 47, og gir ut en differansevektor 141 av kandidatvektoren fra bevegelsesvektoren 123. Differansevektoren 141 blir kodet til et variabel lengde kodeord ved variabel lengde kodingsenheten 17.
Også i dette tilfelle har differensialvektor-genereringsenheten 47 en hukommelsesfunksjon for å holde bevegelsesvektoren fra tidligere separat i en viss tidsperiode for de individuelle rammehukommelsesgrupper. Siden resten av behand lingen er lik operasjonen av bildedekodingsapparatet ifølge utførelse 11 som vist på figur 23, er gjentatt beskrivelse av den utelatt her.
Utførelse 19
En konstruksjon av et bildedekodingsapparat som tilsvarer bildekodingsapparatet ifølge utførelse 18, som vist på figur 29 er vist på figur 30. Med henvisning til figur 30, betegner henvisningstallet 49 en tredje rammehukommelsesgruppe. Siden den øvrige konstruksjon er lik konstruksjonen av bildedekodingsapparatet ifølge utførelse 17, som vist på figur 28, er gjentatt beskrivelse utelatt her.
Virkemåten skal beskrives nedenfor.
En differansevektor 141, variabel lengde kodet ved variabel lengde dekodingsenheten 22, blir ført til bevegelsesvektor-adderingsenheten 48, ved hvilken en kandidatvektor blir valgt blant bevegelsesvektorer for et objekt som er tidligere lagret i denne, og addert til differansevektoren 141 for å regenerere en bevegelsesvektor 123. Bevegelsesvektoren 123 blir sendt til bevegelses-kompenseringsenheten 23. Bevegelses-kompenseringsenheten 23 leser ut en referansebilde i en rammehukommelse som tilsvarer objektet i den valgte rammehukommelsesgruppe, og gir ut en forutsagt bilde 115.
Som beskrevet ovenfor, hvis det er anordnet en differensialvektor-genereringsenhet som har en hukommelsesfunksjon for å holde et antall bevegelsesvektorer som er lik antallet av rammehukommelsesgrupper, fra tidligere, separat for visse tidsperioder for individuelle rammegrupper, og beregner en differansevektor mellom en detektert bevegelsesvektor og en kandidatvektor, kan mengden av informasjonsgenerering av bevegelsesvektorene bli undertrykt.
Som beskrevet ovenfor, med bildekodingsapparatet ifølge den foreliggende oppfinnelse, siden en bakgrunnsbilde er lagret og en bevegelses-kompenseringsforutsigelse er utført ved bruk av bakgrunnsforutsigelse basert på den lagrede bakgrunnsbilde, er det en effekt at koding kan utføres mens man holder en høy forutsigelseseffektivitet uten å bli påvirket av en kodingssekvens.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden omskrivning av bildeinnholdet i de individuelle rammehukommelser blir utført i enheter av et bilde etter et visst tidsintervall eller som respons på et styringssignal utenfra, er det en annen effekt at bildeinnholdet av rammehukommelsene alltid kan holdes til innhold med hvilket en høy forutsigelseseffektivitet i bakgrunnsforutsigelse kan oppnås.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden omskrivning av bildeinnholdet i de individuelle rammehukommelser utføres i enheter av en makroblokk etter et visst tidsintervall eller i respons på et styringssignal utenfra, er det en videre effekt at bildeinnholdet i rammehukommelsene alltid kan holdes til innhold med hvilket en høy forutsigelseseffektivitet i bakgrunnsforutsigelsen kan oppnås med et finere nivå.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden søkeområdene for en bevegelsesvektor som skal brukes for bevegelsesestimering er variabelt innstilt for antallet rammehukommelser anordnet i kodingsapparatet, for eksempel når bevegelse skal søkes etter fra henvisning til en rammehukommelse i hvilken en skjerm som omfatter en forholdsvis liten mengde av bevegelse er skrevet, kan en forholdsvis kort kode bli gitt, og følgelig er det en ytterligere virkning at mengden av kodingsinformasjon i bevegelsesvektorene kan reduseres.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden differensialvektor-genereringsenheten som har en hukommelsesfunksjon for å holde et antall bevegelsesvektorer, som er lik antallet av rammehukommelser, fra tidligere separat i en viss tidsperiode, og beregner en forskjellsvektor mellom en detektert bevegelsesvektor og en kandidatvektor er anordnet, er det enda en ytterligere effekt at mengden av informasjonsgenerering av bevegelsesvektorene kan undertrykkes.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden bevegelseskompenserings-forutsigelse blir utført ved bruk av antallet rammehukommelser for de individuelle objekter som utgjør en skjerm, kan en forutsigelsesstruktur som er tilpasset bevegelsen av objektene bli tatt, og følgelig er det en ytterligere effekt at den totale forutsigelseseffektivitet blir forbedret.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden bare områder av rammehukommelsene i rammehukom melsesgruppene i hvilke et objekt som skal kodes er omfattet blir omskrevet etter et visst tidsintervall eller som respons på et eksternt styringssignal, er det enda en ytterligere effekt at høy effektivitet i bakgrunnsforutsigelse kan opprettholdes.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden søkeområdene for en bevegelsesvektor er satt separat for antallet rammehukommelsesgrupper som blir referert til av et objekt, er det en videre effekt, at for eksempel for et objekt som utviser en forholdsvis liten mengde bevegelse, kan mengden av informasjonsgenerering av bevegelsesvektorene reduseres ved å gjøre søkeområdet for en bevegelsesvektor smalt.
Videre, med bildekodingsapparatet og bildedekodingsapparatet ifølge den foreliggende oppfinnelse, siden differensialvektor-genereringsenheten som har en hukommelsesfunksjon for å holde et antall bevegelsesvektorer, som er lik antallet av rammehukommelsesgruppene, fra tidligere separat for visse tidsperioder for de individuelle rammegrupper, og beregner en forskjellsvektor mellom en detektert bevegelsesvektor og en kandidatvektor er anordnet, er det en videre effekt at mengden av informasjonsgenerering av bevegelsesvektorene kan undertrykkes.

Claims (20)

1. Bildekodingsapparat, KARAKTERISERT VED at det omfatter en lageranordning for å lagre et antall dekodede bilder, bevegelseskompenserings-forutsigelsesanordning for å utføre bevegelseskompenserings-forutsigelse som tilsvarer et inngangsbilde basert på antallet dekodede bilder lagret i lageranordningen for å produsere en bevegelsesvektor og for å generere et forutsagt bilde basert på bevegelseskompenseringsforutsigelsen, forutsigelsesfeil-beregningsanordning for å beregne en forskjell mellom det forutsagte bilde generert ved bevegelseskompenserings-forutsigelsesanordningen og inngangsbilde, for å beregne et forutsigelsesfeilbilde, dekodingsanordning for å generere de dekodede bilder fra forutsigelsesfeilbildet beregnet av forutsigelsesfeil-beregningsanordningen og det forutsagte bilde, bak-
grunnsbildelagerkontrollanordning for å velge et av de dekodede bilder som skal kontinuerlig lagres i lageranordningen som bakgrunnsbilde og lagring av bakgrunnsbilde i lageranordningen, og bakgrunns-bevegelseskompenseringsanordning for å utføre bevegelseskompenserings-forutsigelse tilsvarende inngangsbildet, basert på bakgrunnsbilde, for å generere en bevegelsesvektor og å generere et forutsagt bilde basert på bevegelseskompenseringsforutsigelse.
2. Bildedekodingsapparat, KARAKTERISERT VED at det omfatter lageranordning for å lagre et antall dekodede bilder, bevegelseskompenseringsanordning for å utføre bevegelseskompenserings-forutsigelse basert på de dekodede bilder lagret i lageranordningen for å generere et bevegelseskompensert bilde, dekodingsanordning for å generere de kodede bilder fra bevegelseskompenseringsbildet fra bevegelseskompenseringsanordningen og et forutsagt feilbilde, bakgrunnsbildelagerkontrollanordning for å velge en av de dekodede bilder som skal kontinuerlig lagres i lageranordningen som et bakgrunnsbilde, og lagring av bakgrunnsbildet i lagringsanordningen, og bakgrunns-forutsagt bildegenereirngsanordning for å generere et bakgrunns-forutsagt bilde basert på bakgrunnsbildet.
3. Bildekodingsapparat ifølge krav 1, KARAKTERISERT VED at lageranordningen omfatter en rammehukommelse for å lagre et dekodet bilde, og en annen rammehukommelse for å lagre bakgrunnsbildet.
4. Bildedekodingsapparat ifølge krav 2, KARAKTERISERT VED at lageranordningen omfatter en rammehukommelse for å lagre et dekodet bilde, og en annen rammehukommelse for å lagre bakgrunnsbildet.
5. Bildekodingsapparat ifølge krav 1, KARAKTERISERT VED at omskrivning av bildeinnholdet i lageranordningen ved kontrollanordningen for lagring av bakgrunnsbildet, blir utført i enheter av et bilde etter et forutbestemt tidsintervall eller som respons på et styringssignal utenfra.
6. Bildedekodingsapparat ifølge krav 2, KARAKTERISERT VED at omskrivning av bildeinnholdet i lageranordningen ved bakgrunnsbildelagerkontrollanord-ningen, blir utført i enheter av et bilde etter et forutbestemt tidsintervall eller som respons på et styringssignal utenfra.
7. Bildekodingsapparat ifølge krav 1, KARAKTERISERT VED at omskrivning av bildeinnholdet i lageranordningen ved bakgrunnsbildelagerkontrollanord-ningen, blir utført i enheter på en makroblokk etter et forutbestemt tidsintervall eller som respons på et styringssignal utenfra.
8. Bildedekodingsapparat ifølge krav 2, KARAKTERISERT VED at omskrivning av bildeinnholdet inn i lageranordningen ved bakgrunnsbildelagerkontrollan-ordningen, blir utført i enheter av en makroblokk etter et forutbestemt tidsintervall eller som respons på et styringssignal utenfra.
9. Bildekodingsapparat ifølge krav 1, KARAKTERISERT VED at bakgrunns-bevegelseskompenseringsanordningen har et variabelt søkeområde for en bevegelsesvektor fra bakgrunnsbildene.
10. Bildekodingsapparat ifølge krav 1, KARAKTERISERT VED at det videre omfatter differensialvektor-genereringsanordning for å holde en bevegelsesvektor oppnådd fra bevegelseskompenseringsenheten eller bakgrunnsbevegelseskompenseringsanordningen, og å beregne en differansevektor mellom den genererte bevegelsesvektor og bevegelsesvektoren fra tidligere, og hvor differensialvektoren blir variabel lengde kodet.
11. Bildedekodingsapparat ifølge krav 2, KARAKTERISERT VED at det videre omfatter en bevegelsesvektor-adderingsenhet for å holde en bevegelsesvektor dekodet fra tidligere og å addere bevegelsesvektoren som tidligere dekodet til en differansevektor for å regenerere en bevegelsesvektor.
12. Bildekodingsapparat som gir ut en kodet bitstrøm av bevegelige bilder, KARAKTERISERT VED at det omfatter et antall rammehukommelsesgrupper for å lagre, individuelt for et antall objekter som utgjør en skjerm, dekodede bilder av objektene fra tidligere, en rammehukommelse-velgerenhet for å velge, som respons på et styringssignal, inn i en rammehukommelse av hvilke en av rammehukommelsesgruppene et dekodet bilde skal skrives, en bevegelseskompenserings-forutsigelsesenhet for å velge en av en foroverrettet forutsigelse, en bakoverrettet forutsigelse, en toretnings forutsigelse og bakgrunnsforutsigelse i enheter av et objekt ved bruk av referansebilder lest ut fra rammehukommelser av antallet rammehukommelsesgrupper anordnet for de individuelle objekter for å utføre bevegelseskompenseringsforutsigelse, en subtraktorenhet for å beregne en forskjell mellom det forutsagte bilde og et løpende bilde for å beregne et forutsigelsesfeilbilde, en adderingsenhet for å addere det forutsagte bilde fra referansebildet og forutsigelsesfeilbildet i det løpende bilde, og en variabel lengde kodingsenhet for variabel lengde koding av informasjon.
13. Bildedekodingsapparat som dekoder en kodet bitstrøm av bevegelige bilder, KARAKTERISERT VED at det omfatter et antall rammehukommelsesgrupper for å lagre, individuelt for et antall objekter som utgjør en skjerm, dekodede bilder av objektene, en rammehukommelses-velgerenhet for å velge, som respons på et styringssignal, inn i en rammehukommelse av hvilken en av antallet rammehukommelsesgrupper kodede bilder skal skrives for de individuelle objekter, en variabel lengde dekodingsenhet for variabel lengde dekoding av den kodede bitstrøm, og en bevegelseskompenseringsenhet for å velge en av en foroverrettet forutsigelse, bakoverrettet forutsigelse, toretnings forutsigelse og bakgrunnsforutsigelse i enheter av et objekt, ved bruk av referansebilder lest ut fra rammehukommelser i antallet rammehukommelsesgrupper, for å generere et bevegelseskompensert bilde.
14. Bildekodingsapparat ifølge krav 12, KARAKTERISERT VED at antallet rammehukommelsesgrupper omfatter tre rammehukommelsesgrupper.
15. Bildedekodingsapparat ifølge krav 13, KARAKTERISERT VED at antallet rammehukommelsesgrupper omfatter tre rammehukommelsesgrupper.
16. Bildekodingsapparat ifølge krav 12, KARAKTERISERT VED at omskrivning av bildeinnholdet av et område i hvilket et objekt som skal kodes er inkludert i antallet rammehukommelsesgrupper i hvilke kodede bilder av objektet fra tidligere er lagret, blir utført etter et visst tidsintervall eller som respons på et styringssignal utenfra.
17. Bildedekodingsapparat ifølge krav 13, KARAKTERISERT VED at omskrivning av bildeinnholdet i et område i hvilket et objekt som skal dekodes er inkludert i antallet rammehukommelsesgrupper i hvilke kodede bilder av objektet tidligere er lagret, blir utført etter et visst tidsintervall eller som respons på et styringssignal utenfra.
18. Bildekodingsapparat ifølge krav 12, KARAKTERISERT VED at søkeområdene for en bevegelsesvektor fra referansebilder fra antallet rammehukommelsesgrupper for individuelle objekter er variable for de individuelle objekter.
19. Bildekodingsapparatet ifølge krav 12, KARAKTERISERT VED at det videre omfatter en differensialvektor-genereringsanordning for å holde en bevegelsesvektor oppnådd tidligere ved referering til bilder fra antallet hukommelsesgrupper for de individuelle objekter, og beregning av differansevektorer separat fra de individuelle objekter, og for differansevektorene er variabel lengde kodet.
20. Bildedekodingsapparat ifølge krav 13, KARAKTERISERT VED at det videre omfatter en bevegelsesvektor-adderingsenhet for å holde dekodede bevegelsesvektorer oppnådd tidligere ved henvisning til bilder i antallet rammehukommelsesgrupper for de individuelle objekter i en viss tidsperiode, og addering av bevegelsesvektorene dekodet tidligere til de dekodede differansevektorer, for å regenerere bevegelsesvektorer for de individuelle objekter.
NO965100A 1996-06-28 1996-11-29 Innretning for koding og dekoding av bilder NO310009B1 (no)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16948996A JP3628810B2 (ja) 1996-06-28 1996-06-28 画像符号化装置

Publications (3)

Publication Number Publication Date
NO965100D0 NO965100D0 (no) 1996-11-29
NO965100L NO965100L (no) 1997-12-29
NO310009B1 true NO310009B1 (no) 2001-04-30

Family

ID=15887484

Family Applications (1)

Application Number Title Priority Date Filing Date
NO965100A NO310009B1 (no) 1996-06-28 1996-11-29 Innretning for koding og dekoding av bilder

Country Status (7)

Country Link
US (3) US6381275B1 (no)
EP (5) EP1096800B1 (no)
JP (1) JP3628810B2 (no)
KR (1) KR100254070B1 (no)
DE (2) DE69620160T2 (no)
NO (1) NO310009B1 (no)
SG (1) SG67967A1 (no)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026762B (zh) 1997-02-13 2015-08-19 三菱电机株式会社 运动图像预测装置和方法
WO1999022525A1 (en) * 1997-10-23 1999-05-06 Mitsubishi Denki Kabushiki Kaisha Image encoding method, image encoder, image decoding method, and image decoder
EP0936813A1 (en) * 1998-02-16 1999-08-18 CANAL+ Société Anonyme Processing of digital picture data in a decoder
KR100308016B1 (ko) 1998-08-31 2001-10-19 구자홍 압축 부호화된 영상에 나타나는 블럭현상 및 링현상 제거방법및 영상 복호화기
KR100282147B1 (ko) 1998-11-13 2001-02-15 구자홍 압축 영상 복원 방법
US7277483B1 (en) * 2000-04-18 2007-10-02 Ati International Srl Method and apparatus for rate control for constant-bit-rate finite-buffer-size video encoder
WO2001086960A2 (en) * 2000-05-10 2001-11-15 Picturetel Corporation Video coding using multiple buffers
US7058130B2 (en) * 2000-12-11 2006-06-06 Sony Corporation Scene change detection
KR100525785B1 (ko) * 2001-06-15 2005-11-03 엘지전자 주식회사 이미지 화소 필터링 방법
US9894379B2 (en) * 2001-07-10 2018-02-13 The Directv Group, Inc. System and methodology for video compression
US20030058932A1 (en) * 2001-09-24 2003-03-27 Koninklijke Philips Electronics N.V. Viseme based video coding
CN1913634B (zh) * 2001-11-06 2011-08-24 松下电器产业株式会社 运动图像解码方法
AU2008203058B2 (en) * 2001-11-06 2009-07-02 Panasonic Intellectual Property Corporation Of America Moving picture coding method and moving picture decoding method
CN100505878C (zh) 2001-11-06 2009-06-24 松下电器产业株式会社 运动画面编码方法及运动画面解码方法
WO2003053066A1 (en) 2001-12-17 2003-06-26 Microsoft Corporation Skip macroblock coding
EP1765018B1 (en) 2002-02-01 2008-01-16 Matsushita Electric Industrial Co., Ltd. Moving picture decoding method and moving picture decoding apparatus
AU2008200669B2 (en) * 2002-02-01 2010-05-13 Godo Kaisha Ip Bridge 1 Moving picture coding method and moving picture decoding method
KR100491530B1 (ko) 2002-05-03 2005-05-27 엘지전자 주식회사 모션 벡터 결정 방법
EP1641269A4 (en) 2003-06-30 2011-04-27 Mitsubishi Electric Corp DEVICE AND METHOD FOR IMAGE CODING
US7609763B2 (en) * 2003-07-18 2009-10-27 Microsoft Corporation Advanced bi-directional predictive coding of video frames
US20050013498A1 (en) * 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7567617B2 (en) * 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
JP4591657B2 (ja) * 2003-12-22 2010-12-01 キヤノン株式会社 動画像符号化装置及びその制御方法、プログラム
US9532069B2 (en) 2004-07-30 2016-12-27 Euclid Discoveries, Llc Video compression repository and model reuse
US9743078B2 (en) 2004-07-30 2017-08-22 Euclid Discoveries, Llc Standards-compliant model-based video encoding and decoding
US7986733B2 (en) * 2004-07-30 2011-07-26 Broadcom Corporation Tertiary content addressable memory based motion estimator
US9578345B2 (en) * 2005-03-31 2017-02-21 Euclid Discoveries, Llc Model-based video encoding and decoding
JP4284265B2 (ja) * 2004-11-02 2009-06-24 株式会社東芝 動画像符号化装置、動画像符号化方法、動画像復号化装置および動画像復号化方法
KR100703770B1 (ko) * 2005-03-25 2007-04-06 삼성전자주식회사 가중 예측을 이용한 비디오 코딩 및 디코딩 방법, 이를위한 장치
JP4662171B2 (ja) * 2005-10-20 2011-03-30 ソニー株式会社 符号化装置および方法、復号化装置および方法、プログラム、並びに記録媒体
KR100834680B1 (ko) * 2006-09-18 2008-06-02 삼성전자주식회사 이동통신 단말기에서 출력되는 동영상 및 이미지의 화질을개선하기 위한 장치 및 방법
JP4999860B2 (ja) * 2006-10-30 2012-08-15 日本電信電話株式会社 動画像符号化方法及び復号方法、それらの装置、及びそれらのプログラム並びにプログラムを記録した記憶媒体
EP2076049A4 (en) * 2007-03-28 2011-09-14 Panasonic Corp DECODING CIRCUIT, DECODING PROCESS, CODING CIRCUIT, AND CODING METHOD
JP2009044537A (ja) * 2007-08-09 2009-02-26 Osaka Univ 映像ストリーム処理装置及びその制御方法、プログラム、記録媒体
JP4900602B2 (ja) * 2007-09-14 2012-03-21 富士フイルム株式会社 画像処理装置、画像処理方法、プログラム、および画像処理システム
CN101127912B (zh) * 2007-09-14 2010-11-17 浙江大学 利用动态背景帧的视频编码方法
KR100939917B1 (ko) 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 움직임 예측을 통한 부호화 시스템 및 움직임 예측을 통한부호화 방법
AU2009251048B2 (en) * 2009-12-18 2013-12-19 Canon Kabushiki Kaisha Background image and mask estimation for accurate shift-estimation for video object detection in presence of misalignment
RU2549512C2 (ru) * 2010-09-30 2015-04-27 Мицубиси Электрик Корпорейшн Устройство кодирования движущихся изображений, устройство декодирования движущихся изображений, способ кодирования движущихся изображений и способ декодирования движущихся изображений
US8842723B2 (en) 2011-01-03 2014-09-23 Apple Inc. Video coding system using implied reference frames
PL2805511T3 (pl) 2012-01-20 2019-09-30 Sun Patent Trust Sposoby i urządzenie do kodowania i dekodowania wideo przy użyciu predykcji wektora ruchu w czasie
MX2013008942A (es) 2012-02-03 2013-09-12 Panasonic Corp Metodo de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de codificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
EP2824920A4 (en) 2012-03-06 2016-02-17 Panasonic Ip Corp America VIDEO CODING METHOD, VIDEO CODING METHOD, VIDEO COORDING DEVICE, VIDEO CODING DEVICE AND VIDEO CODING / DECODING DEVICE
US9948915B2 (en) 2013-07-24 2018-04-17 Qualcomm Incorporated Sub-PU motion prediction for texture and depth coding
SG11201510554RA (en) * 2013-07-24 2016-02-26 Qualcomm Inc Simplified advanced motion prediction for 3d-hevc
US9693077B2 (en) 2013-12-13 2017-06-27 Qualcomm Incorporated Controlling sub prediction unit (sub-PU) motion parameter inheritance (MPI) in three dimensional (3D) HEVC or other 3D coding
US10567799B2 (en) 2014-03-07 2020-02-18 Qualcomm Incorporated Simplified sub-prediction unit (sub-PU) motion parameter inheritance (MPI)
US10091507B2 (en) 2014-03-10 2018-10-02 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US10097851B2 (en) 2014-03-10 2018-10-09 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US9621917B2 (en) 2014-03-10 2017-04-11 Euclid Discoveries, Llc Continuous block tracking for temporal prediction in video encoding
US9807411B2 (en) 2014-03-18 2017-10-31 Panasonic Intellectual Property Management Co., Ltd. Image coding apparatus, image decoding apparatus, image processing system, image coding method, and image decoding method
CN105578180B (zh) * 2014-10-16 2019-01-15 联想(北京)有限公司 一种编码方法及装置
JP6457248B2 (ja) 2014-11-17 2019-01-23 株式会社東芝 画像復号装置、画像符号化装置および画像復号方法
JP6649212B2 (ja) 2016-09-06 2020-02-19 株式会社東芝 符号化装置、復号装置、および画像処理システム
TWI748459B (zh) * 2020-05-18 2021-12-01 瑞昱半導體股份有限公司 影像處理方法
CN113726980A (zh) * 2020-05-25 2021-11-30 瑞昱半导体股份有限公司 图像处理方法
CN111711841B (zh) * 2020-07-27 2022-09-09 广州酷狗计算机科技有限公司 图像帧播放方法、装置、终端及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3462572D1 (en) * 1983-04-20 1987-04-09 Nippon Telegraph & Telephone Interframe coding method and apparatus therefor
CA1282490C (en) * 1985-06-27 1991-04-02 Nec Corporation Coding apparatus for moving object image
US4833535A (en) 1987-02-04 1989-05-23 Kabushiki Kaisha Toshiba Image transmission apparatus
US5367629A (en) * 1992-12-18 1994-11-22 Sharevision Technology, Inc. Digital video compression system utilizing vector adaptive transform
US5592228A (en) * 1993-03-04 1997-01-07 Kabushiki Kaisha Toshiba Video encoder using global motion estimation and polygonal patch motion estimation
US5436666A (en) 1993-05-21 1995-07-25 Intel Corporation Limited-domain motion estimation/compensation for video encoding/decoding
DE69420116T2 (de) 1993-06-28 2000-02-10 Sony Corp Einrichtung zum dekodieren eines sich zeitlich ändernden bildes

Also Published As

Publication number Publication date
KR100254070B1 (ko) 2000-04-15
JP3628810B2 (ja) 2005-03-16
EP2178302A2 (en) 2010-04-21
KR980007742A (ko) 1998-03-30
SG67967A1 (en) 1999-10-19
DE69620160D1 (de) 2002-05-02
DE69620160T2 (de) 2002-11-28
USRE44692E1 (en) 2014-01-07
DE69629137T2 (de) 2004-04-29
EP2178302A8 (en) 2010-07-14
EP2164264A1 (en) 2010-03-17
NO965100L (no) 1997-12-29
EP0817491B1 (en) 2002-03-27
US6381275B1 (en) 2002-04-30
NO965100D0 (no) 1996-11-29
EP1096800A3 (en) 2001-10-04
USRE44663E1 (en) 2013-12-24
EP1345448A2 (en) 2003-09-17
EP1096800A2 (en) 2001-05-02
EP1345448A3 (en) 2005-10-19
EP1096800B1 (en) 2003-07-16
EP2178302A3 (en) 2010-08-04
EP0817491A2 (en) 1998-01-07
JPH1023423A (ja) 1998-01-23
EP0817491A3 (en) 1998-06-10
DE69629137D1 (de) 2003-08-21

Similar Documents

Publication Publication Date Title
NO310009B1 (no) Innretning for koding og dekoding av bilder
JP3190529B2 (ja) 映像データ・ブロック変換システム
US5657087A (en) Motion compensation encoding method and apparatus adaptive to motion amount
US5701164A (en) Macroblock coding including difference between motion vectors
KR102036771B1 (ko) 동화상 예측 부호화 장치, 동화상 예측 부호화 방법, 동화상 예측 부호화 프로그램, 동화상 예측 복호 장치, 동화상 예측 복호 방법 및 동화상 예측 복호 프로그램
KR100239260B1 (ko) 화상 디코딩 장치
KR100505306B1 (ko) 동화상신호의부호화방법및장치와,동화상신호의복호화방법및장치
NO313440B1 (no) Bevegelseskompensasjon for digitale videosignaler med linjesprang
US7925120B2 (en) Methods of image processing with reduced memory requirements for video encoder and decoder
KR0129557B1 (ko) 움직임 보상을 이용한 동영상 신호처리기의 메모리 장치
CN102362499A (zh) 图像编码装置及图像编码方法
US5530481A (en) Video encoder/decoder for encoding/decoding motion compensated images
US5485214A (en) Dual bus dual bank architecture for motion compensation
JP4441182B2 (ja) 画像符号化装置および画像復号化装置
KR100272818B1 (ko) 동화상 데이타 복호화 장치
JPH1023415A (ja) 画像符号化復号方法および装置
JP3262464B2 (ja) 画像復号化装置
KR100504416B1 (ko) 화상부호화방법및장치
JPH08130741A (ja) 画像復号化装置
JP2007243974A (ja) 画像符号化装置および画像復号化装置
KR0128883B1 (ko) 영상 복호기에 있어서 개선된 구조의 메모리부를 갖는 반픽셀 움직임 보상회로
KR0174464B1 (ko) 움직임 추정 장치
JPH08130742A (ja) 画像復号化装置
KR970019648A (ko) 반화소 단위 움직임 추정방법
KR19990058285A (ko) 영상 부호화 및 복호화 시스템

Legal Events

Date Code Title Description
MK1K Patent expired