FI116348B - Menetelmä ja laite virheiden peittämiseksi ja rajoittamiseksi makrolohkoihin perustuvassa videokoodekissa - Google Patents

Menetelmä ja laite virheiden peittämiseksi ja rajoittamiseksi makrolohkoihin perustuvassa videokoodekissa Download PDF

Info

Publication number
FI116348B
FI116348B FI972750A FI972750A FI116348B FI 116348 B FI116348 B FI 116348B FI 972750 A FI972750 A FI 972750A FI 972750 A FI972750 A FI 972750A FI 116348 B FI116348 B FI 116348B
Authority
FI
Finland
Prior art keywords
macroblock
macroblocks
frame
video
error
Prior art date
Application number
FI972750A
Other languages
English (en)
Swedish (sv)
Other versions
FI972750A (fi
FI972750A0 (fi
Inventor
Stephen N Levine
James C Brailean
Mark R Banham
Kevin J O'connell
Original Assignee
Motorola Inc
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 Motorola Inc filed Critical Motorola Inc
Publication of FI972750A publication Critical patent/FI972750A/fi
Publication of FI972750A0 publication Critical patent/FI972750A0/fi
Application granted granted Critical
Publication of FI116348B publication Critical patent/FI116348B/fi

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/507Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction using conditional replenishment
    • 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
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment

Landscapes

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

Description

1 1 6348
Menetelmä ja laite virheiden peittämiseksi ja rajoittamiseksi makrolohkoihin perustuvassa videokoodekissa
Esillä oleva keksintö liittyy yleisesti kuvan ja videon 5 koodaukseen ja erityisesti virheiden peittämiseen ja rajoittamiseen makrolohkoihin perustuvassa videokoodekissa.
Digitaalisen videoneuvottelu- ja multimediainformaation laajalle levinnyt käyttö, jota nykyisin tavataan rajoite-10 tun taajuuskaistan omaavilla kanavilla, on seurausta vi-deopakkausstandardien kuten M.261, H.263, MPEG1 ja MPEG2 käyttöönotosta. Näiden standardien määrittelemiä videokoo-dekkeja käytettäessä sellaiset sovellukset kuten videoneuvottelu ja etäläsnäolo ovat tulossa liikemaailmassa 15 yleisiksi. Lisäksi multimedian tuottajat pystyvät pakkaamaan digitaalisen videonsa sellaisille datanopeuksille, jotka mahdollistavat tämän aineiston siirtämisen useiden erilaisten tietoliikenneverkkojen välityksellä tai tallentamisen elektroniselle tietovälineelle kuten laserlevylle 20 (compact disc; CD-levy). Näiden standardien käyttämät pakkaustekniikat pyrkivät poistamaan kaiken videoinformaatiossa olevan redundanssin. Tämä suoritetaan supistamalla video sen olennaisimmiksi informaatiokomponenteiksi. Näis- :··’ : tä komponenteista videodekooderi konstruoi dekoodatun : " 25 videon edellä mainituissa sovelluksissa käytettäväksi.
• Standardien määrittelemät videokoodekit suorittavat digi-taalisen videosekvenssin pakkaamisen käyttämällä hyväksi lohkon liikekompensoitua diskreettiä kosinimuunnosta (DCT, ; 30 Discrete Cosine Transform) soveltavaa ratkaisua. Tämä - I » · .·*>, videokoodaustekniikka poistaa videosekvenssissä olevan ·' redundanssin kaksivaiheista prosessia hyväksikäyttäen.
* * : ·' Ensimmäisessä vaiheessa lohkosovitus- (BM, block-match- ing) , liikkeen estimointi- ja kompensointialgoritmi esti-35 moi kahden ajallisesti vierekkäisen kehyksen välillä ta- * » » · » 116348 2 pahtuvan liikkeen. Sen jälkeen kehykset kompensoidaan estimoidun liikkeen suhteen ja niitä verrataan erotuskuvan muodostamiseksi. Muodostamalla kahden ajallisesti vierekkäisen kehyksen erotus saadaan poistetuksi kaikki olemassa 5 oleva ajallinen redundanssi. Jäljelle jäänyt informaatio on uutta informaatiota, jota ei pystyttäisi kompensoimaan liikkeen estimointi- ja kompensointialgoritmissa.
Toisessa vaiheessa tämä uusi informaatio muunnetaan taa-10 juusalueeseen DCT:tä käyttäen. DCT:llä on se ominaisuus, että se tiivistää tämän uuden informaation energian muutamiin pientaajuisiin komponentteihin. Videosekvenssin lisä-pakkaus saadaan aikaan rajoittamalla koodattavan suurtaa-juusinformaation määrää.
15
Suurin osa tämän menetelmän videokoodaukselle aikaansaaman pakkauksen määrästä saavutetaan liikkeen estimointi- ja kompensointialgoritmilla. Toisin sanoen on paljon tehokkaampaa siirtää videosekvenssissä olevaa liikettä koskeva 20 informaatio kuin intensiteettiä ja väriä koskeva informaatio. Liikeinformaatio esitetään käyttäen vektoreita, jotka osoittavat tietystä kohdasta kulloisessakin intensiteetti-... kehyksessä siihen, missä sama kohta alun perin oli edel- *··; lisessä intensiteettikehyksessä. BM:n tapauksessa nämä •·ϊ 25 kohdat ovat ennalta määrättyjä limittymättömiä yhtä suuria ; ‘ makrolohkoja (MB, macroblocks). Kaikilla MBthen sisälty- ·.'· villä kuva-alkioilla oletetaan olevan sama liike. Tiettyyn j '· videosekvenssin kulloisessakin kehyksessä olevaan MBthen :Y liittyvä liikevektori löydetään etsimällä ennalta määrä- 30 tyltä etsintäalueelta edellisestä ajallisesti viereisestä kehyksestä parhaan yhtäpitävyyden löytämiseksi. Tämä paras yhtäpitävyys määritetään yleensä käyttämällä keskineliö-:>t virhettä (MSE, mean-squared error) tai keskimääräistä absoluuttista erotusta (MAD, mean-absolute-difference) . 35 lohkojen välillä. Liikevektori osoittaa kulloisessakin 116348 3 kehyksessä olevan MB:n keskikohdasta sen lohkon keskikohtaan, joka antaa parhaan yhtäpitävyyden edellisessä kehyksessä.
5 Estimoituja liikevektoreita käyttäen edellisen kehyksen kopiota muutetaan kunkin vektorin verran kulloisenkin kehyksen ennusteen muodostamiseksi. Tätä operaatiota kutsutaan liikkeen kompensoinniksi. Kuten edellä on selitetty, kukin ennustettu MB vähennetään kulloisestakin MB:stä 10 erotus-MB:n muodostamiseksi, joka muunnetaan DCT:n avulla taajuusalueeseen. Saadut taajuuskertoimet kvantisoidaan ja entropiakoodataan, mikä suorittaa alkuperäisen videosekvenssin lisäpakkauksen. Liikevektorit pakataan differentiaalista pulssikoodimodulointia (DPCM, differential pulse 15 code modulation) ja entropiakoodausta käyttäen. Sekä liikevektorit että DCT-kertoimet lähetetään dekooderille, jossa suoritetaan käänteisoperaatiot dekoodatun videosekvenssin tuottamiseksi.
20 Tätä menetelmää käytettäessä standardien määrittelemät videokoodekit ovat hyvin tehokkaita poistaessaan digitaalisesta videosekvenssistä kaiken muun paitsi hyvin olennaisen informaation. Valitettavasti tällainen tehokas c k pakkaaminen pienentää siirrettävän datan virhesietoisuut-';· 25 ta. Toisin sanoen, koska kukin informaatiokomponentti eli • i ’ ’ bitti on olennainen siinä suhteessa, mikä on dekooderin •. * kyky rekonstruoida video, niin virhe missä tahansa bitissä 1 ’· aiheuttaisi videon jonkin osan virheellisen rekonstruoin- nin. Edellä mainitut standardit saavat aikaan mekanismit 30 vastaanotetussa videobittivirrassa olevien virheiden ilmaisemiseksi ja korjaamiseksi, mutta ne eivät kuitenkaan ota huomioon sellaista tilannetta, jossa virheet ilmais-taan mutta niitä ei korjata, tai mikä pahinta, sellaista ,·:· tapausta, jossa virheitä ei ilmaista eikä korjata. Kuten . 35 edellä on mainittu, pakatun videon jokaisen databitin » * * » ♦ 4 » • * • · 4 116348 tärkeyden vuoksi virhe aiheuttaisi sen, että dekoodatun videon suuret osat tulisivat virheellisesti rekonstruoiduiksi. Siksi on ratkaisevaa, että videodekooderilla on kyky peittää nämä videon osat katsojalta. On myös tär-5 keätä, että videokooderi saa aikaan mekanismin, joka takaa, että nämä virheet rajataan vaikutuksen alaisena olevalle alueelle ja ettei niiden sallita edetä videosekvenssin välityksellä.
10 Ennestään tunnettu virheiden peittäminen (error concealment) on rajoittunut menetelmään, joka pyrkii peittämään virheellisenä vastaanotetun makrolohkon (MB, macroblock) yksinkertaisesti ennustamalla sen käyttäen välittömästi sen yläpuolisessa vaakarivissä olevan MB:n liikevektoria 15 (sikäli kuin tämä MB on virheetön). Tällä menetelmällä on useita ongelmia. Ensiksikään ei kohdisteta mitään huomiota siihen, onko yläpuolella olevan MB:n liikevektori todellisen menetetyn liikevektorin hyvä ennuste. Lisäksi se, ettei oteta huomioon, mikä on ennustetun MB:n ja naapurina 20 olevien virheettömien MB:iden keskinäisvaikutus, aiheuttaa suuria jaksotusvääristymiä (blocking artifacts). Lopuksi vielä vain virheettömien MB:iden ottaminen huomioon liike-,,, vektoreita uudistettaessa todennäköisesti aiheuttaa keino- ’·" tekoisia rajoja virheellisten MB:iden välillä purskevir- 25 heympäristössä toimittaessa johtuen siitä, että purske : ’ vaikuttaa useisiin MB:iden riveihin. Tämä ehdotettu mene- ·.' telmä virheiden peittämiseksi käsittelee näitä rivejä • ’* kuitenkin eri tavalla aiheuttamatta näitä keinotekoisia :Y rajoja.
30
Kuvio 1 on bittivirrassa esiintyvien virheiden rajoitus-ja peittomenetelmän vaiheiden parhaana pidetyn suoritus-muodon vuokaavio, joka menetelmä käyttää esillä olevan ... keksinnön mukaisen, makrolohkoihin perustuvan videokoode- 35 kin ohjausinformaatiota.
i » * » > 1 » 116348 5
Kuvio 2 on esillä olevan keksinnön mukaisen, makrolohkoi-hin perustuvan videokoodekin bittivirrassa esiintyvien virheiden peittomenetelmän vaiheiden parhaana pidetyn suoritusmuodon vuokaavio.
5
Kuvio 3 on sellaisen makrolohkoihin perustuvan videopak-kausjärjestelmän lohkokaavio, joka käyttää esillä olevan keksinnön mukaista laitetta virheiden rajoittamiseksi ja peittämiseksi.
10
Kuvio 4 on sellaisen laitteen lohkokaavio, joka peittää dekoodatussa videosekvenssissä olevia virheitä esillä olevan keksinnön mukaisen, makrolohkoihin perustuvan videokoodekin uudelleentahdistuksen avulla.
15
Kuvio 5 on kaavio, joka kuvaa useita läpikäyntitarkistuksia videosekvenssin kehyksessä.
Kuvio 6 on sellaisen laitteen lohkokaavio, joka peittää 20 virheitä dekoodatussa videosekvenssissä esillä olevan keksinnön mukaan.
Esillä oleva keksintö saa aikaan menetelmän ja laitteen j | siirrettävässä videobittivirrassa esiintyvien virheiden 25 rajoittamiseksi ja peittämiseksi. Useita ennalta määrätty-jä tarkistuskaavoja käyttäen valitaan kehyksittäin erityi-r. set makrolohkot, joiden intensiteetti-informaatio kooda- taan ja siirretään. Tämä ratkaisu saa aikaan tehokkaan menetelmän pitkähkön virhepurskeen vääristämästä bittivir-30 rasta dekoodatun videosekvenssin visuaalisen laadun huononemisen rajoittamiseksi. Lyhyiden virhepurskeiden ja/tai satunnaisvirheiden vaikutuksen alaisten videosekvenssin • ” alueiden peittäminen suoritetaan estimoimalla vastaava menetetty makrolohkoinformaatio jäljelle jääneistä vääris-; 35 tymättömistä makrolohkoista. Toisin sanoen kutakin mene- 116348 6 tettyä makrolohkoa kohti kehitetään intensiteetti-informaation ennuste vääristymättömästä naapurimakrolohkosta saatua liikevektoria käyttäen.
5 Esillä oleva keksintö on lähemmin selitetty viitaten kuvioihin 1-6. Kuvio 1, viitenumero 100, on bittivirrassa esiintyvien virheiden rajoitus- ja peittomenetelmän vaiheiden parhaana pidetyn suoritusmuodon vuokaavio, joka menetelmä käyttää esillä olevan keksinnön mukaisen, makro-10 lohkoihin perustuvan videokoodekin ohjausinformaatiota. Ensimmäisessä vaiheessa käytetään useita kehyksessä kulkevia tarkistuspolkuja sellaisten erityisten makrolohkojen määrittämiseksi, jotka koodataan sisäisinä makrolohkoina (intra-macroblocks) (102). Sisäinen makrolohko eli I-mak-15 rolohko on sellainen makrolohKo, joka ei ole ennustettu edellisestä kehyksestä. Siksi I-makrolohkoon ei liity liikevektoreita ja vain intensiteetti-informaatio koodataan.
20 Vastaanotettua bittivirtaa tarkkaillaan seuraavassa vaiheessa jatkuvasti varmistusinformaatiota (error control information) hyväksikäyttäen virheiden varalta. Jos virhe ·...· on ilmaistu, virhetilalippu (error status flag) asetetaan i arvoon yksi (104). Virhetilalippua käytetään ilmaisemaan, : 25 milloin virheenpeittämistä tarvitaan (106). Lisäksi sen jälkeen kun virhetilalippu on asetettu ykköseksi, määrite-I'·,. tään tietyn virhepurskeen vuoksi menetettyjen bittien lu-
.·.·. kumäärä BE (106). BE:n ja ennalta määrätyn kynnyksen TBE
perusteella virhepurske luokitellaan joko pitkähköksi tai 30 lyhyeksi virhepurskeeksi (108). Jos pitkähkö virhepurske on ilmaistu, toinen lippu ED asetetaan ykköseksi. Jos purske on luokiteltu lyhyeksi virhepurskeeksi, ED asete-: " taan nollaksi.
7 116348
Pitkähkön virhepurskeen tapauksessa, ED = 1 (120), lähtö-kehysmuistia ei päivitetä uudessa dekoodatussa kehyksessä, ennenkuin ennalta määrätty määrä FN1 kehyksiä on dekoodattu. Tämä virheenpeittomenetelmä takaa, että mainitut useat 5 I-makrolohkojen tarkistukset ovat päivittäneet kaikki mak-rolohkot tai merkittävän osan makrolohkoista ennen niiden näyttämistä (110). I-makrolohkojen tarkistusten päätyttyä lähtöpuskuri päivitetään kulloisellakin dekoodatulla kehyksellä. Lisäksi ED-lippu asetetaan nollaksi, mikä sallii 10 lähtökehysmuistin päivittämisen kullakin juuri dekoodatulla kehyksellä (114). Näiden vaiheiden suorittamisen jälkeen virheenpeittomenetelmä palaa tarkkailemaan vastaanotettua bittivirtaa (130).
15 Lyhyen virhepurskeen tapauksessa, ED = 0 (122), lähtöke-hysmuisti on kiinteä sisältäen viimeisen virheettömän videokehyksen (112). Lyhyen virhepurskeen peittäminen suoritetaan vaikutuksen alaisella alueella (112). Lyhyen virhepurskeen peittämisen jälkeen virhelippu EF palautetaan 20 nollaksi (114). Lisäksi ennalta määrätäyn kehysten lukumäärän FN2 jälkeen lähtökehysmuisti päivitetään kulloisellakin dekoodatulla kehyksellä (120). Kuten edellä on selitetty, näiden vaiheiden suorittamisen jälkeen virheenpeit-: : tomenetelmä palaa tarkkailemaan vastaanotettua bittivirtaa 25 (130).
Kuvio 2, viitenumero 200, on esillä olevan keksinnön mu-kaisen lyhyiden purskevirheiden peittomenetelmän parhaana pidetyn suoritusmuodon vuokaavio. Ensimmäisessä vaiheessa 30 kehitetään kartta, joka ilmaisee, mitkä makrolohkot vastaanotettiin virheellisinä (202). Tämän kartan perusteella dekoodattu kuvakehys käydään läpi viivatutkausta (raster • " scan) käyttäen, kunnes ensimmäinen virheellinen makrolohko (204) tulee vastaan. Seuraavaksi kehitetään mahdollisten ; ;’· 35 liikevektoreiden valikoima käyttäen naapurimakrolohkoja, 8 116348 jotka on vastaanotettu ja dekoodattu virheettä (206). Tähän valikoimaan kuuluu myös nollaliikevektori. Kutakin liikevektoria käytetään kulloisenkin virheellisen makro-lohkon ennusteen määrittämiseksi (208). Se liikevektori, 5 joka antaa virheellisen makrolohkon sellaisen ennusteen, joka on parhaiten yhtäpitävä (virheellisenä vastaanotettujen) naapuri-MB:iden rajojen kanssa, valitaan uudistetuksi liikevektoriksi (210). Virheettömien vapaiden naapurima-krolohkojen rajoilla olevien kuva-elementtien välistä 10 keskineliövirhettä ja ennustettua makrolohkoa käytetään kriteerinä tämän parhaan yhtäpitävyyden määrittämiseksi.
Kuvio 3, viitenumero 300, on sellaisen videosiirtojärjes- telmän lohkokaavio, joka käyttää esillä olevan keksinnön 15 mukaista virheenpeittolaitetta. Videosiirtojärjestelmä (300) käsittää videopakkaimen (video compressor) (302), siirtokanavan (304) ja videopurkaimen (video decompressor) (306). Videopakkain (302) on muodostunut videokooderin rajoitusyksiköstä (video encoder containment unit) (310), 20 makrolohkojen rajoitustarkistusohjaimesta (macroblock containment scan controller) (308) ja varmistusyksiköstä (error control unit) (320). Videopurkain (306) käsittää ·..,· virheilmaisimen (314), virheenpeittoyksikön (error con- ·.· · cealment unit) (316), videodekooderin (312) ja lähtökehys- ♦ » : 25 muistin (output frame memory) (344).
9 116248 maation videokooderin rajoitusyksikkö (310) koodaa. Kuten edellä on selitetty, tämän tyyppistä makrolohkoa kutsutaan I-makrolohkoksi. Toisin sanoen useiden ennalta määrättyjen tarkistusten perusteella valitaan ainakin yksi makrolohko 5 tarkistusta kohti vain intensiteetti-informaatiolla päivitettäväksi. Videokooderin normaali toiminta tapahtuu tähän verrattuna toisin. Makrolohkoon liittyy tyypillisesti lii-kevektori (340), joita käytetään sen intensiteetti-informaation ennusteen kehittämiseksi edellisestä kehyksestä. 10 Tämä ennuste, kuten edellä on selitetty, vähennetään alkuperäisestä makrolohkosta, mikä poistaa suurimman osan videosekvenssissä olevasta ajallisesta redundanssista. Tiettyjen makrolohkojen päivitys vain intensiteetti-informaation perusteella muodostaa tehokkaan menetelmän sel-15 laisten virheiden rajoittamiseksi, jotka ovat voineet vääristää aikaisemmin koodattuja kehyksiä. Näin on erityisesti siksi että I-makrolohkot eivät ole aikaisemmin koodatusta informaatiosta riippuvaisia. I-makrolohkona koodattavan makrolohkon sijaintia inkrementoidaan ajallisen 20 referenssin ja nimenomaisten käytettyjen tarkistusten perusteella.
Vastaanotettu bittivirta (328) syötetään videopurkaimelle | : (306). Lähtevään bittivirtaan (324) aiheutuu kuitenkin 25 virheitä siirtokanavan (304) epäluotettavan luonteen vuok-si. Nämä virheet aiheuttavat sen, että tietyt vastaanote-;·. tun bittivirran (328) bitit eroavat vastaavista lähtevässä bittivirrassa (324) olevista biteistä. Jos videodekooderi yrittäisi sokeasti dekoodata vastaanotetun bittivirran 30 (328), näillä virheillä olisi tuhoisa vaikutus tuloksena olevan videon visuaaliseen laatuun. Virheellisen bittivirran sokean dekoodauksen välttämiseksi käytetään virheil-• ‘ maisinta (314) määrittämään, milloin vastaanotetussa bit tivirrassa (328) on virheitä.
: 35 116348 ίο
Virheilmaisin (314) käyttää hyväksi varmistusyksikön (320) lähtevään bittivirtaan asettamaa varmistusinformaatiota. Jos vastaanotetussa bittivirrassa (328) havaitaan virheitä, virheellinen informaatio korvataan tunnetulla infor-5 maatiolla. Tämä tunnettu informaatio on tyypillisesti liikevektori, jonka arvo on nolla ja ennustevirhe on nolla kullakin korvatussa makrolohkossa olevalla kuva-elementillä. Lisäksi jos virhe ilmaistaan, virheilmaisuyksikkö (314) antaa virheenpeittoyksikölle (314) signaalin (330) 10 sen aktivoimiseksi.
Virheenpeittoyksikkö (316) suorittaa kaksi toimintoa. Ensimmäinen toiminto on bittivirtaan aiheutuneiden virheiden vakavuuden määrittäminen. Tämä tehdään estimoimalla virhe-15 purskeen kestoaika. Virhepurskeen kestoaika määritetään laskemalla virheen ensimmäisen ilmaisun ja dekooderin uudelleentahdistumisen, ts. sen hetken, jolloin se dekoo-daa oikein seuraavan varmistusinformaatioerän, välillä vastaanotettujen bittien lukumäärä. Lasketun bittien luku-20 määrän perusteella virhepurske luokitellaan joko pitkähköksi purskeeksi tai lyhyeksi purskeeksi. Jos lyhyt purske on ilmaistu, virheenpeittoyksikkö (316) käyttää sekä vir-:...· heettömistä naapurimakrolohkoista (332) saatuja liikevek- || toreita että edellisestä kehyksestä saatua intensiteetti- :*·. 25 informaatiota (350) vääristyneen makrolohkon (342) uudis- tamiseksi. Jos pitkähkö purske on ilmaistu, lähtöpuskuria ;·. (344) ei päivitetä ennenkuin I-makrolohkojen tarkistusten .·.· sallitaan päivittää koko videokehys. I-makrolohkojen tar kistusten suorittamisen jälkeen virhe on rajoitettu ja 30 lähtöpuskurin (344) normaali päivitys (346) sallitaan.
Kuvio 4, viitenumero 400, on sellaisen videopakkaimen • ‘ (302) lohkokaavio, joka muodostaa intensiteetti-informaa tion virheiden peittämistä varten esillä olevan keksinnön ; 35 mukaan. Kuten edellä on esitetty, makrolohkojen rajoitus- 116348 11 tarkistusohjain (308) määrittää ajallisen referenssin (334) ja makrolohkon sijainnin perusteella tietyn tarkistuksen tapauksessa, mitkä makrolohkot tulisi päivittää I-makrolohkoina. Useita tarkistuksia, jotka saavan aikaan 5 varsin hyvän virhepeiton, on esitetty kuviossa 5, viitenumero 500. Tässä esimerkissä videokehyksen erottelu-tarkkuus on vaakasuunnassa 175 kuva-elementtiä (pixel) ja pystysuunnassa 144 kuva-elementtiä. Makrolohkojen, joita lohkot edustavat, oletetaan käsittävän 16 kertaa 16 kuva-10 elementtiä. Tämä oletus johtaa 99 makrolohkoon kehystä kohti, kuten kuviossa 5 on esitetty. Huomattakoon että tämä on vain eräs esimerkki näiden tarkistusten erityisestä toteutuksesta ja että esillä oleva keksintö voidaan toteuttaa millä tahansa makrolohkojen koolla tai tarkis-15 tusjoukolla. Tämän erityisen tarkistusjoukon hienoutena on, että kuvan keskikohtaa, jossa kiinnostavan kohteen oletetaan sijaitsevan, päivitetään paljon suuremmalla nopeudella kuin rajoilla olevia makrolohkoja. Tätä tarkistus joukkoa käytettäessä videopurkaimessa olevaa lähtöpus-20 kuria (344) päivitetään paljon nopeammin kuin tavanomaista viivatutkausta käytettäessä. Tällä on etuna, että se pienentää aikaa, joka tarvitaan virhepeiton aikaansaamiseen ·... pitkähkön virhepurskeen tapauksessa.
: 25 Jos makrolohkojen rajoitustarkistusohjain (308) valitsee syötetyn makrolohkon (338) koodattavaksi I-makrolohkona, niin kytkin 1 (404) ja kytkin 2 (406) asetetaan siten, että intensiteetti-informaatio siirretään (420) suoraan (432) makrolohkokooderille (408). Koodauksen jälkeen (318) 30 varmistusyksikkö (320) lisää varmistusinformaation bittivirtaan. Tämä varmistusinformaatio merkitsee tyypillisesti uuden kuvakehyksen alkua ja/tai uuden makrolohkoryhmän • " alkamista. Yleisesti ottaen makrolohkoryhmän määritellään käsittävän ne makrolohkot, jotka sisältyvät kuvakehyksen ; 35 yhteen vaakariviin. Koodattu bittivirta siirretään (434) t * f 1 1 6 5 4 8 12 myös makrolohkodekooderille (410), jossa se dekoodataan ja tallennetaan (430) kooderin kehysmuistiin (412) seuraavak-si koodattavan kehyksen ennustamisessa käytettäväksi.
5 Jos syötettyä makrolohkoa (338) ei ole valittu koodattavaksi I-makrolohkona, niin kytkin 1 (404) ja kytkin 2 (406) asetetaan siten, että ennustemakrolohko (428) vähennetään (440) kulloisestakin makrolohkosta (424) ja erotus-signaali (426) siirretään (432) makrolohkokooderiin (408). 10 Kuten edellä I-makrolohkon tapauksen osalta on selitetty, varmistusyksikkö (320) lisää varmistusinformaation koodattuun bittivirtaan (318) ennen siirtämistä (324) siirtokanavalla (304). Makrolohkodekooderi (410) dekoodaa koodatun bittivirran (434) ja se tallennetaan (430) kooderin 15 kehysmuistiin (412) seuraavaksi koodattavan kehyksen ennustamisessa käytettäväksi.
Kuvio 6, viitenumero 600, on sellaisen videopurkaimen (306) lohkokaavio, joka suorittaa virhepurskeen peittämi-20 sen esillä olevan keksinnön mukaan. Kuten edellä on esitetty, virheilmaisin (314) määrittää bittivirtaan (324) sulautetun varmistusinformaation perusteella, milloin vastaanotetussa bittivirrassa (328) on virheitä. On ole-·,· massa useita ratkaisuja virheiden ilmaisemiseksi ohjausin- : 25 formaatiota hyväksikäyttäen. Virhe ilmaistaan esimerkiksi, jos: uusi kuvan alku -koodi vastaanotetaan ennenkuin kaik-ki kulloisenkin kehyksen makrolohkot on dekoodattu tai jos entropiakoodisanat johtavat sellaisiin arvoihin, joita videokooderi mahdollisesti ei pysty saavuttamaan — näitä 30 kutsutaan laittomiksi koodisanoiksi — tai jos dekoodattu ajallinen referenssi ei ole sopusoinnussa edellisen ajallisen referenssin kanssa. Sen jälkeen kun virhe on ilmais-> * tu, virhelippu EF asetetaan arvoon 1 arvosta 0. Virhebit- ·.· tien laskuri (602) tarkkailee (352) jatkuvasti virhelippua ·_ 35 EF. Kun EF = 1, virhebittien laskuri alkaa kunkin vastaan- 13 1 1 6 2 4 8 otetun bitin (330) laskemisen. Tämä laskentaprosessi päättyy, kun EF palaa arvoon nolla. Virhelippu EF palautetaan nollaksi, kun virheilmaisin (314) on vastaanottanut oikein seuraavan ohjausinformaatioerän. Ykköseksi asetettu virhe-5 lippu EF aktivoi (618) virheenpeittoyksikön (316).
Sen määrittämiseksi, onko virhepurske pitkähkö vai ei, virhebittien laskurin laskema bittien kokonaismäärä BE lähetetään (640) pitkähkön virhepurskeen ilmaisimelle 10 (604). Tämän lukumäärän vertaaminen ennalta määrättyyn kynnykseen TBE ratkaisee, onko virhepurske pitkähkö vai lyhyt virhepurske. Tämä kynnystesti on selitetty seuraa-vassa yhtälössä r < TBE ED = 0 15 BE = <j (1) I > TBE ED = 1 TBE asetetaan tyypillisesti yhden sekunnin jakson aikana lähetettyjen bittien lukumäärän suuruiseksi.
20 Kuten edellä on selitetty, ED = 1 ilmaisee, että pitkähkö virhepurske on vääristänyt vastaanotettua bittivirtaa (328). Tällaisen purskevirheen vaikutusten dekoodatun videon visuaaliseen laatuun peittämiseksi lähtökehysmuis-·,· tia (344) ei päivitetä (650) ennenkuin ennalta määrätty : ·. 25 määrä kehyksiä, FN1, on dekoodattu ilman virheitä. Makro- :*·. lohkojen rajoitustarkistusohjaimessa (308) käytettävät I- makrolohkojen tarkistukset määrittävät tämän ennalta mää-,\* rätyn kehysten lukumäärän FN1. Kuviossa 5 esitettyjen tarkistusten tapauksessa FN = 17 takaisi, että useimpien 30 makrolohkojen keskikohta päivitettäisiin, kun taas FN1 = 36 takaisi, että kaikki makrolohkot päivitettäisiin.
'· ' Kuten edellä myös on selitetty, kun EF = 1 ja ED = 0, puut tuvan informaation uudistamiseksi käytetään lyhyen virhe-; 35 purskeen peittämismenetelmää (316). Peittäminen on erityi- 116348 14 sen tärkeä tässä tapauksessa, koska ellei tämä lyhyt vir-hepurske ole asianmukaisesti peitetty ja rajattu, se voi aiheuttaa huomattavaa haittaa pitkähkön ajan. Tämän dekoodattua videota huonontavan lähteen supistamiseksi virheen-5 peittoyksikkö (316) uudistaa vääristyneiden makrolohkojen liikevektorit. Liikeinformaation uudistamisen avulla vältetään suuret intensiteettierot makrolohkojen rajoilla. Lisäksi puuttuvan informaation asemesta käytetään makro-lohkoa, joka on paljon enemmän korreloitunut kulloisessa-10 kin kehyksessä olevaa vääristynyttä makrolohkoa ympäröivän alueen kanssa.
Liikevektorit uudistetaan muodostamalla useita ehdolla olevia liikevektoreita. Peitto-ohjain (620), joka on kyt-15 ketty (632) liikevektorimuistiin (610), määrittää nämä useat ehdolla olevat liikevektorit (620). Peitto-ohjaimen (620) määrittämät useat liikevektorit käsittävät ne naapu-rimakrolohkoista saadut liikevektorit, jotka on vastaanotettu virheettöminä. Naapurimakrolohko on määritelty 20 makrolohkoksi, jonka etäisyys tarkasteltavana olevaan makrolohkoon on mahdollisimman pieni. Tapauksessa, jossa .···, yksi ainoa makrolohko on vastaanotettu virheellisenä, . * ‘! mainitut useat ehdolla olevat liikevektorit saataisiin tulokseksi seuraavista makrolohkoista: suoraan tarkastel- * 25 tavan makrolohkon yläpuolella, suoraan alapuolella, vasem- maila puolella ja oikealla puolella olevasta vaakarivistä saadut makrolohkot. Mukaan luetaan myös edellisestä kehyk- * sestä samassa kohdassa olevasta makrolohkosta saatu liike-vektori ja nollaliikevektori.
; 30 ; Liikkeenkompensointiyksikkö (608) käyttää kutakin peitto- ohjaimen (620) määrittämää ehdolla olevaa liikevektoria ennustemakrolohkon määrittämiseksi (654) aikaisemmin de-’ * ’ koodatusta kehyksestä, joka on säilytetty dekooderin ke- Γ* : 35 hysmuistissa (616) . Liikkeenkompensointiyksikkö (608) 116348 15 määrittää ennustemakrolohkon lukemalla dekooderin kehys-muistia kulloinkin kysymyksessä olevan makrolohkon sijainnin ja liikevektorin perusteella. Makrolohkojen rajaver-tain (606) testaa kunkin makrolohkon ennusteen sen ja 5 naapurimakrolohkojen rajoja myöten yhden ainoan yhtäpitävyyden laatua ilmaisevan luvun määrittämiseksi. Makrolohkojen rajavertaimen (606) käyttämä vertausluku tämän luvun kehittämiseksi on keskineliövirhe (MSE, mean squared error). Makrolohkojen rajoilla olevilla kuva-elementeillä 10 käytettävä MSE-vertausluku saadaan yhtälöstä Λ MSE(i) = Σ (Y(B) - P(B))2 (2) fl=0 jossa MSE(i) on ehdolla olevalle liikevektorille i lasket-15 tu MSE-arvo, B on tiettyyn rajalla olevaan kuva-elementtiin osoittava indeksi, Δ on suurin rajalla olevan kuva-elementin indeksi, Y(B) on luminanssiarvo naapurimakroloh-kosta rajakohdasta B ja P(B) on luminanssiarvo ennustetusta makrolohkosta rajakohdasta B.
20 MSE:n perusteella se liikevektori, joka saa aikaan parhaan yhtäpitävyyden rajoja myöten, palautetaan (644) liikevek-torimuistiin (610) kulloistakin makrolohkoa varten. Lisäk- • * ;,· si kulloisellakin makrolohkolla ennustettu intensiteetti
| '· 25 sijoitetaan dekooderin kehysmuistiin (616). Virhelippu EF
: palautetaan nollaksi ja virheilmaisuyksikkö (314) jatkaa I'·, bittivirran tarkkailua virhepurskeen varalta.
I • I
Lyhyen virhepurskeen vaikutusten dekoodatun videon visuaa-30 liseen laatuun peittämiseksi entistä paremmin lähtökehys-muistia (344) ei myöskään päivitetä (650) tässä tapaukses-,, sa ennenkuin ennalta määrätty määrä kehyksiä, FN2, on ‘ koodattu virheettöminä. Tämä ennalta määrätty kehysten lukumäärä FN2 asetetaan tyypillisesti 3:ksi.
116348 16
Vaikka edellä on selitetty esimerkkisuoritusmuotoja, niin alan asiantuntijoille on ilmeistä, että tästä keksinnöstä poikkeamatta on mahdollista tehdä monia vaihdoksia, muutoksia ja muunnoksia. Näin ollen tarkoituksena on, että 5 kaikki tällaiset vaihdokset, muutokset ja muunnokset kuuluvat tämän keksinnön henkeen ja sen oheisissa patenttivaatimuksissa määriteltyyn suojapiiriin.
* · » * *
» t I
• · t
» » t I
* t · * · i » l t

Claims (10)

116348 17
1. Menetelmä bittivirrassa esiintyvien virheiden peit tämiseksi makrolohkoihin perustuvan videokoodekin ohjaus-5 informaatiota hyväksikäyttäen, missä tallennetaan ainakin yksi aikaisempi makrolohkojen videokehys, tunnettu siitä, että menetelmä käsittää seuraavat vaiheet: IA) lasketaan vastaanotetun lähetteen bitit useiden 10 ohjausinformaation omaavien bittien välillä sen määrittämiseksi, onko kulloinenkin kehys/kulloisenkin kehyksen osa vääristynyt; IB) mikäli ainakin kulloinenkin kehys on vääristynyt, 15 1B1) puskuroidaan välittömästi edellinen kehys; 1B2) määritetään tahdistusbitin paikka bittivirrassa; 20 1B3) näytetään välittömästi edellinen makrolohkojen videokehys tahdistusbitin määräämässä kohdassa ennalta i i » *·,,, määrätyllä määrällä kehyksiä; • t » 25 1B4) palataan vaiheeseen IA; t • » y. 1C) mikäli kulloisenkin kehyksen jokin osa on vääristy- t ,*,* nyt, uudistetaan useita kehyksen vääristyneitä makroloh- koja seuraavien vaiheiden avulla: 30 1C1) määritetään liikevektorien yhdistelmä mainittujen useiden vääristyneiden makrolohkojen ensimmäistä * makrolohkoa varten; t I » I » f » • t » I > » * I » » I I » > > I * i 1 116348 18 1C2) määritetään yhdistelmästä sellainen liikevek-tori, joka antaa välittömästi edellisestä tallennetusta kehyksestä sen makrolohkon, jolla on suurin intensiteet-tiarvojen korrelaatio kulloisessakin kehyksessä olevan 5 makrolohkon rajoja myöten laskettuna; 1C3) toistetaan vaiheet 1C1-1C2 ennalta valituilla vääristyneillä makrolohkoilla useiden uudistettujen makro-lohkojen muodostamiseksi; 10 1C4) näytetään kulloisessakin kehyksessä olevat uudistetut makrolohkot ja palataan vaiheeseen IA.
2. Patenttivaatimuksen 1 mukainen menetelmä, t u n - 15. e t t u siitä, että mainittu ennalta määrätty kehysten lukumäärä perustuu ennalta määrättyyn intensiteetin päivi-tyskaavaan, ja mikäli on valittu, tämä ennalta määrätty intensiteetin päivityskaava käsittää; 20 2A) käytetään useita sisäisten makrolohkojen tarkistuk sia kehyksen makrolohkojen intensiteettien määrittämisek-.···. si; 2B) käytetään makrolohkojen intensiteettejä välittömäs- . 25 ti edellisen kehyksen korvaamiseksi; : ja mikäli lisäksi on valittu, 2C) mainitut useat sisäisten makrolohkojen tarkistukset 30 käsittävät neljä tarkistusta, joista kaksi tarkistusta on perifeerisiä ja kaksi tarkistusta on kehyksen keskialueel-la suoritettavia. 116348 19
3. Patenttivaatimuksen 1 mukainen menetelmä, tun nettu siitä, että liikevektorien yhdistelmä käsittää kulloisenkin kehyksen naapurimakrolohkojen liikevektorit.
4. Patenttivaatimuksen 1 mukainen menetelmä, tun nettu siitä, että intensiteettiarvojen suurin korrelaatio on intensiteettiarvojen kulloisenkin makrolohkon ainakin yhtä rajaa myöten laskettu keskineliövirhe.
5. Laite makrolohkoihin perustuvan videosisäänmenon bittivirrassa esiintyvien virheiden rajoittamiseksi, joka laite käsittää ainakin yhden kooderin ja dekooderin, tunnettu siitä, että kooderi käsittää videopak-15 kaimen (302), joka käsittää: 5A) makrolohkojen rajoitustarkistusohjaimen (308), joka on kytketty vastaanottamaan ajallinen referenssi ja makrolohkon tunniste I-makrolohkojen määräämiseksi sellaisiksi 20 makrolohkoiksi, joille suoritetaan intensiteettikoodaus; 5B) videokooderin peittoyksikön (310), joka on kytketty I » t » makrolohkojen rajoitustarkistusohjaimeen, kehysmuistiin ja :\ liikekehysmuistiin adaptiivisesti koodatun makrolohkon » « t ; 25 muodostamiseksi jotakin ajallisesti ennustavista koodaus- .! ’ menetelmistä ja sisäistä koodausmenetelmää käyttäen sen i i · mukaan, onko makrolohkot tunnistettu I-makrolohkoiksi/en- • > · * nustemakrolohkoiksi; ja : 30 5C) varmistusyksikön (320), joka on kytketty videokoo- derin rajoitusyksikköön varmistusinformaation lisäämiseksi adaptiivisesti koodattuun makrolohkoon; • · • · • » t s · 1 · iti 20 1 1 6348 ja että dekooderi käsittää videopurkaimen (306), joka käsittää : 5D) virheilmaisimen (302), joka on kytketty kohinalli-5 seen kanavaan (304) ja joka käyttää vastaanotetussa bittivirrassa olevaa informaatiota sen määrittämiseksi, milloin vastaanotetussa bittivirrassa on virheitä, ja aktivoin-tisignaalin lähettämiseksi virheenpeittoyksikölle (316), jos virheitä on olemassa; 10 5E) videodekooderin (312), joka on kytketty virheen-peittoyksikköön ja vastaanottamaan virheilmaisimelta ajallinen referenssi ja joka, mikäli lyhyt purske on ilmaistu, muodostaa virheenpeittoyksikölle liikevektorit virheet-15 tömistä naapurimakrolohkoista ja intensiteetti-informaation edellisestä kehyksestä, ja mikäli pitkähkö purske on ilmaistu, odottaa lähtöpuskurin päivittämiseksi, kunnes I-makrolohkojen tarkistukset ovat päivittäneet koko videokehyksen; 20 5F) virheenpeittoyksikön (316), joka on kytketty vir-heilmaisimeen ja videodekooderiin ja joka vastauksena • t I : aktivointisignaaliin korvaa vastaanotetussa bittivirrassa » » ♦ » ;·, olevan vääristyneen informaation tunnetulla informaatiolla . 25 ennalta määrätyn kaavan mukaan; ja • ♦ t • ” 5G) lähtökehysmuistin (344), joka on kytketty videode- • « · V ’ kooderiin lähtöpuskurin päivittämiseksi mainitun virheen- peittoyksikössä käytettävän ennalta määrätyn kaavan mu-·.· j 30 kaan. tt|>;
6. Patenttivaatimuksen 5 mukainen laite, tun nettu siitä, että videokooderin rajoitusyksikkö (310) » · ·;1 käsittää: 35 • · > · » 116348 21 6A) vaihtokytkentäpiirin, joka on kytketty makrolohko-jen rajoitustarkistusohjaimeen, kehysmuistiin ja makroloh-kokooderiin ja joka suorittaa valinnan kahden riippumattoman makrolohkodatalähteen välillä; 5 6B) makrolohkokooderin (408), joka on kytketty vaihto-kytkentäpiiriin koodatun makrolohkodatalähteen aikaansaamiseksi ; 10 6C) makrolohkodekooderin (410), joka on kytketty mak- rolohkokooderiin koodatun makrolohkodatalähteen dekoodaa-miseksi; 6D) kehysmuistin (412), joka on kytketty liikevektori-15 muistiin ja makrolohkodekooderiin ennustetun makrolohkon muodostamiseksi; ja mikäli on valittu, 20 6E) vaihtokytkentäpiiri käsittää ensimmäisen yksi- napaisen vaihtokytkimen (404), joka on kytketty toiseen yksinapaiseen vaihtokytkimeen (406) valinnan suori ttami-j .·. seksi kahden riippumattoman makrolohkodatalähteen välillä summaimeen (440) syötettäväksi. . 25
» » ♦ * · · ,! 7. Laite bittivirrassa esiintyvien virheiden peittä- *,,, miseksi makrolohkoihin perustuvan videokoodekin ohjausin- ·’ * formaatiota hyväksikäyttäen, missä tallennetaan ainakin yksi aikaisempi makrolohkojen videokehys, tunnettu ·.: : 30 siitä, että laitetta ohjaa tietokoneohjelma, joka on to- teutettu ainakin yhdessä seuraavassa luetelluista: » * » * I ,*··. 7A) muisti; • » l ** 35 7B) integroitu sovelluspiiri; 116348 22 7C) digitaalinen signaaliprosessori; ja 7D) ohjelmoitava porttimatriisi, 5 ja että tietokoneohjelma käsittää seuraavat vaiheet: 7E) lasketaan vastaanotetun lähetteen bitit ohjausinformaatiota omaavien bittien välillä sen määrittämiseksi, 10 onko kulloinenkin kehys/kulloisenkin kehyksen osa vääristynyt ; 7F) mikäli ainakin kulloinenkin kehys on vääristynyt, 15 7F1) puskuroidaan välittömästi edellinen kehys; 7F2) määritetään tahdistusbitin paikka bittivir rassa; 20 7F3) näytetään välittömästi edellinen makrolohko- jen videokehys tahdistusbitin määräämässä kohdassa ennalta määrätyllä määrällä kehyksiä; j/ 7F4) palataan vaiheeseen 7E; : 25 * 7G) mikäli kulloisenkin kehyksen jokin osa on vääris- * t * ” tynyt, useita kehyksen vääristyneitä makrolohkoja uudiste- V * taan seuraavien vaiheiden avulla: - 30 7G1) määritetään liikevektorien yhdistelmä mai- : _ : nittujen useiden vääristyneiden makrolohkojen ensimmäistä makrolohkoa varten; * · » · 7G2) määritetään yhdistelmästä sellainen liike- • t • *·· 35 vektori, joka antaa välittömästi edellisestä tallennetusta » t • · · 116348 23 kehyksestä sen makrolohkon, jolla on suurin intensiteet-tiarvojen korrelaatio kulloisessakin kehyksessä olevan makrolohkon rajoja myöten laskettuna, ja muodostetaan uudistettu makrolohko; 5 7G3) toistetaan vaiheet 7G1-7G2 ennalta valituilla vääristyneillä makrolohkoilla useiden uudistettujen makrolohkojen muodostamiseksi; 10 7G4) näytetään kulloisessakin kehyksessä olevat uudistetut makrolohkot ja palataan vaiheeseen 7E.
8. Patenttivaatimuksen 7 mukainen laite, tun nettu siitä, että mainittu ennalta määrätty kehysten 15 lukumäärä perustuu ennalta määrättyyn intensiteetin päivi-tyskaavaan, ja mikäli on valittu, tämä ennalta määrätty intensiteetin päivityskaava käsittää: 8A) käytetään useita sisäisten makroiohkojen tarkis-20 tuksia kehyksen makrolohkojen intensiteettien määrittämiseksi; • · · • · • i • 8B) käytetään mainittuja makrolohkojen intensiteettejä • · » * :·. välittömästi edellisen kehyksen korvaamiseksi; . 25 • * · • · · ,! * ja mikäli lisäksi on valittu; » | « • » · ’·* ’ 8C) mainitut useat sisäisten makrolohkojen tarkistuk set käsittävät neljä tarkistusta, joista kaksi tarkistusta • · ;,i * 30 on perifeerisiä ja kaksi tarkistusta on kehyksen keskialu- * : eella suoritettavia.
« · « ... 9. Patenttivaatimuksen 7 mukainen laite, t u n - • · * · n e t t u siitä, että liikevektorien yhdistelmä käsittää • > •’·· 35 kulloisenkin kehyksen naapurimakrolohkojen liikevektorit. • * * » • · » 116348 24
10. Patenttivaatimuksen 7 mukainen laite, tunnettu siitä, että intensiteettiarvojen suurin korrelaatio on intensiteettiarvojen kulloisenkin makrolohkon 5 ainakin yhtä rajaa myöten laskettu keskineliövirhe. • · 1 • · • · t i · f I t * f # · • 1 • · · t I • i i » » 1 t t I < 1 1 1 ♦ » t * » 1 · * I t f * · 25 1 1 634 8
FI972750A 1995-10-26 1997-06-25 Menetelmä ja laite virheiden peittämiseksi ja rajoittamiseksi makrolohkoihin perustuvassa videokoodekissa FI116348B (fi)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08/548,772 US5724369A (en) 1995-10-26 1995-10-26 Method and device for concealment and containment of errors in a macroblock-based video codec
US54877295 1995-10-26
US9614122 1996-08-27
PCT/US1996/014122 WO1997016016A1 (en) 1995-10-26 1996-08-27 Method and device for concealment and containment of errors in a macroblock-based video codec

Publications (3)

Publication Number Publication Date
FI972750A FI972750A (fi) 1997-06-25
FI972750A0 FI972750A0 (fi) 1997-06-25
FI116348B true FI116348B (fi) 2005-10-31

Family

ID=24190342

Family Applications (1)

Application Number Title Priority Date Filing Date
FI972750A FI116348B (fi) 1995-10-26 1997-06-25 Menetelmä ja laite virheiden peittämiseksi ja rajoittamiseksi makrolohkoihin perustuvassa videokoodekissa

Country Status (6)

Country Link
US (1) US5724369A (fi)
EP (1) EP0800743A4 (fi)
CN (1) CN1166255A (fi)
FI (1) FI116348B (fi)
SE (1) SE518157C2 (fi)
WO (1) WO1997016016A1 (fi)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965644B2 (en) * 1992-02-19 2005-11-15 8×8, Inc. Programmable architecture and methods for motion estimation
JPH10136353A (ja) * 1996-10-30 1998-05-22 Sharp Corp 無線通信動画端末装置
KR100535632B1 (ko) * 1997-10-17 2006-04-12 주식회사 팬택앤큐리텔 적응적으로 보더링하는 모양정보 부호화/복호화 장치 및 방법
JP4558193B2 (ja) * 1997-10-23 2010-10-06 ソニー エレクトロニクス インク データ受信方法及び装置、その受信データの回復処理装置並びに記録媒体
US6282684B1 (en) 1997-10-23 2001-08-28 Sony Corporation Apparatus and method for recovery of data in a lossy transmission environment
EP1025538B1 (en) * 1997-10-23 2012-07-11 Sony Electronics, Inc. Apparatus and method for recovery of data in a lossy transmission environment
US6581170B1 (en) 1997-10-23 2003-06-17 Sony Corporation Source coding to provide for robust error recovery during transmission losses
US6332042B1 (en) 1997-10-23 2001-12-18 Sony Corporation Apparatus and method for encoding and decoding data in a lossy transmission environment
EP1027651B1 (en) * 1997-10-23 2013-08-07 Sony Electronics, Inc. Apparatus and method for providing robust error recovery for errors that occur in a lossy transmission environment
US6404817B1 (en) * 1997-11-20 2002-06-11 Lsi Logic Corporation MPEG video decoder having robust error detection and concealment
CN1117480C (zh) 1997-12-01 2003-08-06 三星电子株式会社 运动向量预测方法
US6489995B1 (en) * 1998-10-22 2002-12-03 Sony Corporation Method and apparatus for motion vector concealment
US6356661B1 (en) * 1999-01-07 2002-03-12 M4 Labs, Inc Method and device for robust decoding of header information in macroblock-based compressed video data
KR100587280B1 (ko) * 1999-01-12 2006-06-08 엘지전자 주식회사 오류 은폐방법
US6363118B1 (en) 1999-02-12 2002-03-26 Sony Corporation Apparatus and method for the recovery of compression constants in the encoded domain
US7010737B2 (en) * 1999-02-12 2006-03-07 Sony Corporation Method and apparatus for error data recovery
US6307979B1 (en) 1999-02-12 2001-10-23 Sony Corporation Classified adaptive error recovery method and apparatus
US6307560B1 (en) 1999-02-12 2001-10-23 Sony Corporation Classified adaptive spatio-temporal format conversion method and apparatus
US6535148B1 (en) 1999-02-12 2003-03-18 Sony Corporation Method and apparatus for truncated decoding
US6621936B1 (en) 1999-02-12 2003-09-16 Sony Corporation Method and apparatus for spatial class reduction
US6591398B1 (en) 1999-02-12 2003-07-08 Sony Corporation Multiple processing system
US6170074B1 (en) 1999-02-12 2001-01-02 Sony Corporation Source coding to provide for robust error recovery
US6519369B1 (en) 1999-02-12 2003-02-11 Sony Corporation Method and apparatus for filter tap expansion
US6418548B1 (en) 1999-02-12 2002-07-09 Sony Corporation Method and apparatus for preprocessing for peripheral erroneous data
US6724819B1 (en) * 1999-04-02 2004-04-20 Matsushitas Electric Industrial Co., Ltd. Moving picture transmission apparatus, moving picture reception apparatus, and moving picture data record medium
US6493842B1 (en) 1999-06-29 2002-12-10 Sony Corporation Time-varying randomization for data synchronization and implicit information transmission
US6549672B1 (en) 1999-06-29 2003-04-15 Sony Corporation Method and apparatus for recovery of encoded data using central value
US6389562B1 (en) 1999-06-29 2002-05-14 Sony Corporation Source code shuffling to provide for robust error recovery
US6473876B1 (en) 1999-06-29 2002-10-29 Sony Corporation Method and apparatus for encoding of bitstreams using rotation
US6351494B1 (en) 1999-09-24 2002-02-26 Sony Corporation Classified adaptive error recovery method and apparatus
US6539517B1 (en) 1999-11-09 2003-03-25 Sony Corporation Data transformation for explicit transmission of control information
JP2001186521A (ja) * 1999-12-22 2001-07-06 Nec Corp 画像復号化装置及び方法
JP2004532540A (ja) * 2001-03-05 2004-10-21 インタービデオインコーポレイテッド 誤り耐性のある符号化のためのシステム及び方法
KR100322485B1 (ko) * 2001-07-05 2002-02-07 이동욱 다중채널 영상신호 부호화 장치 및 그 방법
US6842484B2 (en) * 2001-07-10 2005-01-11 Motorola, Inc. Method and apparatus for random forced intra-refresh in digital image and video coding
US7039117B2 (en) * 2001-08-16 2006-05-02 Sony Corporation Error concealment of video data using texture data recovery
CA2457882C (en) * 2001-08-23 2009-06-02 Polycom, Inc. System and method for video error concealment
US6910175B2 (en) * 2001-09-14 2005-06-21 Koninklijke Philips Electronics N.V. Encoder redundancy selection system and method
EP1659802B1 (en) * 2001-10-05 2008-07-23 Mitsubishi Electric Information Technology Centre Europe B.V. Method and apparatus for compensating for motion vector errors in image data
JP2003259369A (ja) * 2002-02-28 2003-09-12 Techno Mathematical Co Ltd 動画像の電子透かしを用いたエラー隠蔽方法
US7277587B2 (en) * 2002-04-26 2007-10-02 Sharp Laboratories Of America, Inc. System and method for lossless video coding
EP1395061A1 (en) * 2002-08-27 2004-03-03 Mitsubishi Electric Information Technology Centre Europe B.V. Method and apparatus for compensation of erroneous motion vectors in video data
US8705613B2 (en) * 2003-06-26 2014-04-22 Sony Corporation Adaptive joint source channel coding
US8582640B2 (en) * 2003-12-16 2013-11-12 Sony Corporation Adaptive joint source channel coding
WO2005071971A1 (en) * 2004-01-21 2005-08-04 Koninklijke Philips Electronics N.V. Embedded compression
US20050259735A1 (en) * 2004-05-21 2005-11-24 Qin-Fan Zhu System and method for video error masking using standard prediction
US7496736B2 (en) * 2004-08-27 2009-02-24 Siamack Haghighi Method of efficient digital processing of multi-dimensional data
JP4531058B2 (ja) * 2004-10-29 2010-08-25 シャープ株式会社 動画像復号装置
US20060262860A1 (en) * 2005-02-23 2006-11-23 Chou Jim C Macroblock adaptive frame/field coding architecture for scalable coding
US7660354B2 (en) * 2005-05-11 2010-02-09 Fang Shi Temporal error concealment for bi-directionally predicted frames
EP1908300B1 (en) * 2005-07-25 2018-05-16 Thomson Licensing DTV Method and apparatus for the concealment of missing video frames
US7802167B1 (en) * 2006-02-08 2010-09-21 Pmc-Sierra Us, Inc. Apparatus and method for detecting extended error bursts
US9300956B2 (en) * 2006-04-20 2016-03-29 Thomson Licensing Method and apparatus for redundant video encoding
DE102007035204A1 (de) * 2006-07-28 2008-02-07 Mediatek Inc. Videoverarbeitungs- und - betriebsvorrichtung
WO2009047697A2 (en) * 2007-10-08 2009-04-16 Nxp B.V. System and method for error concealment
TWI442777B (zh) * 2009-06-23 2014-06-21 Acer Inc 空間性錯誤隱藏方法
US9369724B2 (en) * 2014-03-31 2016-06-14 Microsoft Technology Licensing, Llc Decoding and synthesizing frames for incomplete video data
CN109982093B (zh) * 2017-12-28 2021-05-18 展讯通信(上海)有限公司 视频解码错误补偿方法及装置、存储介质、终端

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5243428A (en) * 1991-01-29 1993-09-07 North American Philips Corporation Method and apparatus for concealing errors in a digital television
US5212549A (en) * 1991-04-29 1993-05-18 Rca Thomson Licensing Corporation Error concealment apparatus for a compressed video signal processing system
GB2263373B (en) * 1992-01-09 1995-05-24 Sony Broadcast & Communication Data error concealment
US5247363A (en) * 1992-03-02 1993-09-21 Rca Thomson Licensing Corporation Error concealment apparatus for hdtv receivers
JPH0620050A (ja) * 1992-07-03 1994-01-28 Matsushita Electric Ind Co Ltd 動画像信号の復号化装置と推定動きベクトル算出方法
FR2696026B1 (fr) * 1992-09-18 1994-12-30 Sgs Thomson Microelectronics Procédé de masquage d'erreurs de transmission d'image compressée en MPEG.
JP3519441B2 (ja) * 1993-02-26 2004-04-12 株式会社東芝 動画像伝送装置
US5737022A (en) * 1993-02-26 1998-04-07 Kabushiki Kaisha Toshiba Motion picture error concealment using simplified motion compensation
KR100261072B1 (ko) * 1993-04-30 2000-07-01 윤종용 디지털 신호처리시스템
KR0166725B1 (ko) * 1993-06-30 1999-03-20 김광호 강제인트라-프레임부호화방법
US5493513A (en) * 1993-11-24 1996-02-20 Intel Corporation Process, apparatus and system for encoding video signals using motion estimation

Also Published As

Publication number Publication date
EP0800743A1 (en) 1997-10-15
FI972750A (fi) 1997-06-25
SE9702422D0 (sv) 1997-06-25
FI972750A0 (fi) 1997-06-25
SE518157C2 (sv) 2002-09-03
US5724369A (en) 1998-03-03
EP0800743A4 (en) 1999-04-07
WO1997016016A1 (en) 1997-05-01
CN1166255A (zh) 1997-11-26
SE9702422L (sv) 1997-08-26

Similar Documents

Publication Publication Date Title
FI116348B (fi) Menetelmä ja laite virheiden peittämiseksi ja rajoittamiseksi makrolohkoihin perustuvassa videokoodekissa
KR100931873B1 (ko) 비디오 신호 부호화/복호화 방법 및 비디오 신호 부호기/복호기
USRE42500E1 (en) Moving-picture signal coding and/or decoding system resistant to transmission error
KR101289603B1 (ko) 참조 및 비참조 비디오 프레임을 검출하고 은닉하는 방법및 장치
US20030012286A1 (en) Method and device for suspecting errors and recovering macroblock data in video coding
US20050089102A1 (en) Video processing
Lee et al. Residual motion coding method for error resilient transcoding system
KR20050099080A (ko) 동영상 복호화 시 영상 품질 향상 방법
KR20050089454A (ko) 동영상 복호화 시 에러 은닉 방법
KR20050099079A (ko) 동영상 복호화 시 에러 은닉 방법

Legal Events

Date Code Title Description
FG Patent granted

Ref document number: 116348

Country of ref document: FI

PC Transfer of assignment of patent

Owner name: MOTOROLA SOLUTIONS, INC.

Free format text: MOTOROLA SOLUTIONS, INC.

MM Patent lapsed