FI94306C - Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi - Google Patents

Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi Download PDF

Info

Publication number
FI94306C
FI94306C FI933216A FI933216A FI94306C FI 94306 C FI94306 C FI 94306C FI 933216 A FI933216 A FI 933216A FI 933216 A FI933216 A FI 933216A FI 94306 C FI94306 C FI 94306C
Authority
FI
Finland
Prior art keywords
block
motion vector
segments
segment
motion
Prior art date
Application number
FI933216A
Other languages
English (en)
Swedish (sv)
Other versions
FI933216A (fi
FI933216A0 (fi
FI94306B (fi
Inventor
Tero Koivunen
Original Assignee
Nokia Technology Gmbh
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 Nokia Technology Gmbh filed Critical Nokia Technology Gmbh
Priority to FI933216A priority Critical patent/FI94306C/fi
Publication of FI933216A0 publication Critical patent/FI933216A0/fi
Priority to DE1994613148 priority patent/DE69413148T2/de
Priority to EP19940109935 priority patent/EP0634873B1/en
Publication of FI933216A publication Critical patent/FI933216A/fi
Application granted granted Critical
Publication of FI94306B publication Critical patent/FI94306B/fi
Publication of FI94306C publication Critical patent/FI94306C/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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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/527Global motion vector estimation
    • 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/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • 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

Landscapes

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

Description

. 94306
Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi - Förfarande för fastställandet av rörelsevektorer av smä TV-bildsegment
Keksintö koskee menetelmää, jolla voidaan määrittää liikevektorit televisiokuvassa lohkoja pienemmissä segmenteissä, kun lohkojen liikevektorit ovat tiedossa.
Jotta televisiovastaanottimessa voitaisiin suorittaa vastaanotetun videosignaalin prosessointia jollakin liikekompensoidulla menetelmällä, televisiokuvan juovaluvun kasvattamista (LRU, Line Rate Upconversion) tai kenttätaajuuden kasvattamista (FRU, Field Rate Upconversion), lisätään lähetettävään signaaliin tiedot kuvan liikesisällöstä. Teräväpiirtotelevisiojäijestelmissä (HDTV) kuva jaetaan pieniin lohkoihin, esim. 16* 16 pikseliä, ja lohkoille määritetään jollakin liikkeenilmaisumenetelmällä lohkon liikkeen suunnan ja laajuuden ilmoittava liikevektori. Liikevektorit lähetetään videosignaalista erillisenä datasignaalina. Lähetyspäässä eri liikesisällön omaavat lohkot prosessoidaan eri tavoin, jolloin kuhunkin lähetettyyn lohkoon liittyy aina määrätty liikevektori. Näin vastaanotin pystyy vastaaottamansa liiketiedon perusteella valitsemaan lohkon liikesisällön mukaisesti oikean signaalinkäsittelymenetelmän, kun se muodostaa alkuperäistä kuvaa.
Tunnetaan useita liikkeenilmaisumenetelmiä liikevektoreiden laskemiseksi. Ne pohjautuvat useimmiten kahden kuvan väliltä laskettuihin erosignaaleihin ja niistä tehtyihin päätelmiin siitä, onko kuva liikkuva vai liikkumaton. Liike-estimointime-: netelmät voidaan jakaa kahteen pääluokkaan: menetelmiin, joissa erotetaan liikepa- rametreja, ja menetelmiin, joissa mitataan pikselin nopeutta. Pikselin nopeutta mit-taavat menetelmät voidaan edelleen jakaa menetelmiin, jotka perustuvat spatiaalis-temporaalisiin differentiaaleihin, sovitukseen (matching), jossa tutkitaan lohkojen vastaavuuksia eri ajanhetkenä, sekä Fourier-tekniikkoihin.
Kuvalle asetettavien rajoitusten ja menetelmän vuoksi liikeparametrien erotusmenetelmät eivät sovellu erikoisen hyvin liike-estimointiin televisiossa. Pikselin nopeutta mittaaviin menetelmiin kuuluvat spatiaalis-temporaalisiin differentiaaleihin pohjautuvat tekniikat perustuvat pelkästään etenemismalleihin. Niissä oletetaan, että intensiteettivaihtelu on kauttaaltaan television kuvakentässä siirtymän lineaarinen funktio. Temporaalisessa suunnassa (peräkkäisten kenttien välillä) sekä spatiaalisessa suunnassa (vaaka- ja pystysuunnassa) lasketaan useita differentiaaleja. Nämä differentiaaliset suhteet antavat spatiaalisen siirtymän, yksikkönä pikseli 2 94306 kuvaa kohti. Fourier-tekniikoissa käytetään kahden kuvan korrelointia siten; että ensiksi tehdään kaksidimensionaalinen Fourier-muunnos jokaiselle kuvalle, kerrotaan vastaavat taajuuskomponentit ja suoritetaan käänteismuunnos. Tulokseksi saadaan korrelaatiopinta, jonka huippu on niiden koordinaattien kohdalla, jotka vastaavat siirrosta kahden kuvan välillä. Fourier-menetelmä sopii hyvin globaalisen liikkeen mittaamiseen ja käyttäen jotain lisäprosessointia, kuten korrelaatiopinnan interpoloimista ja jälkiprosessointia, tarkkuutta voidaan edelleen parantaa.
Pikselin nopeutta mittaaviin menetelmiin kuuluva usein käytetty muunnos on loh-kosovitus (block matching), jossa estimoidaan alue alueelta sen sijaan, että estimoitaisiin pikseli pikseliltä. Jäljempänä tekstissä sana "kenttä" tarkoittaa sekä lomitellun kuvan kenttää että progressiivisen kuvan kenttää, joka on tällöin sama kuin kuva. Lohkosovituksessa kentät on jaettu lohkoihin, joiden koko on n*m, ja oletetaan, että jokaisen pikselin siirtymävektori on sama lohkon sisällä. Esimerkki valaisee lohkosovitusta: oletetaan, että yhdessä kentässä t on n*m pikseliä käsittävän lohkon (= tietyn kokoisen kuvan osa-alueen) sisällä objekti, esim. auton kuva. Tätä lohkoa voidaan nimittää vertailulohkoksi. Auto liikkuu ja seuraavassa kentässä t+1 se on siirtynyt johonkin uuteen paikkaan. Tämä uusi paikka on nyt etsittävä. Se tehdään niin, että uudessa kentässä t+1 määritetään etsintäalue, jossa liikutellaan lohkoa, jonka koko on sama kuin vertailulohkolla eli n*m pikseliä. Tämä lohko voidaan ajatella ikkunaksi, jonka läpi näkyy kentän pikselijoukko ikkunan kokoiselta alueelta. Jokaisessa asemassa lohkon (ikkunan) sisältöä verrataan kentän t vertailulohkon sisältöön. Vertailussa verrataan ikkunan pikseleitä vastaaviin kentän t vertailulohkon pikseleihin. Kun lohkoa (ikkunaa) liikutellaan pitkin kenttää : t+1, niin jossain kohdassa kenttä t+1 määrätty vertailukriteeriehto täyttyy, mikä tulkitaan siten, että lohkojen sisällöt ovat samat. Lohkot "sopivat" nyt toisiinsa, koska niiden sisältö on sama. Tällöin tiedetään, että auto on siirtynyt tähän kohtaan kentässä t+1. Näin saadaan selville siirtymän suuruus ja suunta.
Lohkosovitus (block matching) on hyvin usein käytetty liikevektorin määritysmene-• telmä sen selväpiirteisyyden ja havainnollisuuden vuoksi. Siinä samoin kuin muis sakin edellä mainituissa menetelmissä tietylle lohkolle määritetyn liikevektorin oletetaan edustavan lohkon jokaisen pikselin liikkeen suuntaa, ja kuvan prosessointi tapahtuu tämän olettamuksen mukaan. Liikevektorit siten vain estimoivat lohkon pikseleiden enemmistön liikettä tai, joissain tapauksissa, pelkästään minimoivat tietyn virhekriteerm. Todellinen liike lohkon sisällä ei siis useinkaan seuraa lohkon rajoja vaan ylittää ne mielivaltaisesti. Tämä tapa määrätä lohkon liikevektorin suunta samaksi kaikkialla lohkossa aiheuttaa näin ollen tietyissä tapauksissa selvästi havaittavia kuvavirheitä.
3 94306
Kuvassa 1 on esitetty havainnollisesti syy, minkä takia kuvavirheitä syntyy käytettäessä tekniikan tason mukaista liikevektorin määritystä. Kuvassa on esitetty neljä säännöllistä neliönmuotoista lohkoa A, B, C ja D, joissa kussakin lohkossa on loh-kosovitusmenetelmällä määritetty ao. lohkon liikevektori . Liikevektoreita on esitetty lohkon sisällä olevalla nuolella ja niiden mukaan lohkojen A, B ja C jokaisen pikselin liikesuunta on vasemmalle, kun taas lohkon D pikseleiden liikesuunta on oikealle ylös. Tekniikan tason mukaisestihan lohkon kaikkien pikseleiden liikesuunnaksi otetaan lohkon liikevektorin suunta. Kuten kuvasta voidaan nähdä, porrasviivan liikesuunta on mitä todennäköisimmin oikealle ylös, sillä se on lohkon D pikseleiden enemmistön suunta. Porrasviivan erottamien segmenttien liikesuunta ei siten noudata lohkojen rajoja (ei ole sama kuin lohkon liikevektorin suunta) vaan ylittää ne. Vaaleiden segmenttien liikesuunta lohkoissa A, B ja C on oikea. Samoin lohkon D tummennetun segmentin liikesuunta on oikea. Sen sijaan lohkojen C ja D vinoviivoitettujen segmenttien oikea liikesuunta on oikealle ylös eikä vasemmalle. Lohkon D vinoviivoitetun segmentin oikea liikesuunta on vasemmalle eikä oikealle ylös. Voidaan siis havaita, että tekniikan tason mukaisen ratkaisun liikesuuntapäätös on väärä suuren määrän pikseleitä kohdalla eli pikseleiden kohdalla, jotka kuuluvat vinoviivoitettuihin alueisiin. Tästä johtuu, että prosessoitaessa vastaanottimessa kuvaa lohkopohjaisesti niiden päävektoreiden mukaan syntyy silmin havaittavia virheitä.
: Tämän keksinnön tavoitteena on poistaa tunnettujen liikevektoreiden määritysmene- * telmien puutteet ja siten aikaansaada menetelmä, jolla liikevektorit voidaan määri tellä oikein myös liikkuvien kohteiden reunoihin rajoittuville pienille epäsäännöllisille segmenteille.
Tämä tavoite saavutetaan patenttivaatimuksen 1 tunnusmerkkiosassa kuvatuin toimenpitein.
Menetelmä on esitetty lohkokaaviomuodossa kuvassa 7.
Keksinnön mukaisesti kuva, jolle on jo tunnetulla esim. lohkosovituksella määritetty liikevektorit, aluksi esiprosessoidaan. Tämän tarkoituksena on lisätä kuvan kontrastia ja saada pintojen muodot ja ääriviivat selvästi esiin. Tavoitteena on siten pelkästään spatiaaliseen informaatioon perustuen irrottaa kohteet „ 94306 4 taustastaan ja saada kuvasta eri alueet selkeästi esiin. Alueet erottuvat toisistaan harmaasävyltään.
Sitten kuvan harmaasävyjen lukumäärää vähennetään kynnystämällä kuvan näytteet esim. 8-bittisestä 3-bittiseksi, jolloin harmaatasojen lukumäärä vähenee 256 kpl.sta 8:aan. Kynnystys voi olla tasavälinen ja harmaatasojen lukumäärä voi olla pienempikin, esim. 4-tasoinen (2-bittinen) on hyvin sopiva. Kynnystämisen jälkeen kuva näyttää muodostuvan erikokoisista ja erimuotoisista tasasävyisistä alueista, jotka erottuvat toisistaan harmaatasoltaan. Näitä alueita nimitetään segmenteiksi. Mitä suurempi on tasojen lukumäärä kynnystyksen jälkeen, sitä enemmän kuvassa on pieniä erottuvia alueita, jotka edustavat kuvan yksityiskohtia. Kynnystyksen tarkoitus on toisaalta päästä eroon hyvin pienistä segmenteistä ja näin ollen matala, kuten 4-tasoinen, kynnystys on edullinen. Kynnystyksen jälkeen suoritetaan vielä jälkiprosessointi, jolla kuvaa pehmennetään lisää eliminoimalla siitä muutaman pikselin kokoiset ympäristöstään suuresti eroavat saarekkeet. Tuloksena luetelluista toimenpiteistä kuva on pelkistynyt erikokoisiksi tasasävyisiksi (tasavälisiksi) alueiksi, segmenteiksi ja kuvan harmaatasojen (värien) lukumäärä on mahdollisimman vähäinen. Segmentti on siis yhtenäinen toisiinsa rajoittuvien pikselien joukko, jolla on esiprosessoinnin, kvantisoinnin ja jälkiprosessoinnin jälkeen sama harmaa-sävy arvo.
Sitten määritetään kullekin segmentille siihen liittyvä liikevektori. Taustana on tieto, että sama kuva on lähettimessä tai kooderissa jaettu lohkoihin (samansuuruisiin toisiinsa rajoittuviin kuva-alueisiiin), joille on kullekin määritetty tunnetulla menetelmällä, kuten lohkosovituksella, lohkon liikevektori. Kukin lohko ikäänkuin peittää alleen osan segmentoidusta kuvasta. Jos lohkonraja leikkaa segmentin, ajatellaan segmentin jakautuvan kahtia, jolloin toinen osa kuuluu toiseen lohkoon ja toinen osa toiseen lohkoon. Näin segmentit eivät voi ulottua naapurilohkon alueelle. Kussakin lohkossa haetaan aluksi suurin sen alueella oleva segmentti ja nimetään se pääsegmentiksi. Näin ollen lohkon alueella voi olla neljänlaisia segmenttejä: 1) Yksi pääsegmentti 2) Yksi tai useampi segmentti, joka ei ole pääsegmentti eikä rajoitu naapurilohkon segmenttiin.
3) Yksi tai useampi segmentti, joka ei ole pääsegmentti ja rajoittuu naapurilohkon pääsegmenttiin.
4) Yksi tai useampi segmentti, joka ei ole pääsegmentti ja rajoittuu naapurilohkon segmenttiin, joka ei ole pääsegmentti.
5 94306 Pääsegmentin liikevektoriehdokkaaksi asetetaan sama vektori, joka on saatu ao. "oman" lohkon liikevektoriksi tunnetun tekniikan mukaisella menetelmällä.
Lohkon alueella olevien muiden segmenttien, jotka eivät rajoitu mihinkään naapuri-lohkon alueella olevaan segmenttiin, ts. eivät rajoitu "oman" lohkon rajaan vaan ovat kokonaan oman lohkon sisällä, liikevektoriksi asetetaan liikevektori, joka on tunnetulla tavalla saatu oman lohkon liikevektori.
Lohkon alueella olevien muiden segmenttien, jotka rajoittuvat johonkin naapuriloh-kon segmenttiin, joka ei kuitenkaan ole naapurilohkon pääsegmentti, liikevektoriksi asetetaan myös liikevektori, joka on tunnetulla tavalla saatu oman lohkon liikevektori.
Lohkon alueella olevien muiden segmenttien, jotka rajoittuvat johonkin naapuri-lohkon pääsegmenttiin, liikevektoriksi asetetaan tämän naapurilohkon pääsegmentin liikevektoriarvo. Se on siis sama kuin tunnetun tekniikan mukaisella menetelmällä naapurilohkon liikevektoriksi laskettu arvo.
Pääsegmenttiä lukuun ottamatta segmentti voi saada siten liikevektorikseen oman lohkon tai naapurilohkon liikevektorin.
Jokaisen lohkon pääsegmentillä on nyt liikevektoriehdokas. Lopullinen liikevektori asetetaan siten, että tutkitaan, jatkuuko pääsegmentti vähintään kahden naapurilohkon puolelle ja onko naapurin alueella oleva osa pääsegmentti. Mikäli näin on, muodostavat segmentit saman objektin, joten niiden liikevektorien tulisi olla konsis-tentit. Siksi jos liikevektoriehdokas poikkeaa naapurilohkojen po. segmenttien liike-vektoreista, sitä ei hyväksytä, vaan liikevektoriksi asetetaan naapurilohkojen pää-seggmenttien liikevektorien arvo.
Edullisen suoritusmuodon mukaan esiprosessointi on histogrammiekvalisaatio eli jakauman tasoittaminen. Se tarkoittaa sitä, että käytetyssä ikkunassa näytteet järjestetään harmaasävyarvoltaan suuruusjärjestykseen esim 0—256. Tulos voidaan ajatella histogrammiksi, jonka pylväikkö on hyvin epätasainen. Pylväikköä tasataan sitten siten, että se on mahdollisimman tasainen, jolloin tuloksena on kasvanut kuvan kontrasti ja pintojen ääriviivat ovat tulleet selkeästi esiin.
* Edullisen suoritusmuodon mukaan jälkiprosessointina käytetään mediaani suodatusta.
, 94306
Keksintöä havainnollistetaan oheisten esimerkkikuvien avulla, joissa kuva 1 esittää neljää lohkoa, joiden liikevektorit on saatu jollakin tunnetulla tavalla, kuva 2 esittää alkuperäistä kuvasekvenssiä, kuva 3 on suurennettu kohta kuvan 1 sekvenssistä, kuva 4 on kuva 3 histogrammiekvalisoinnin jälkeen, kuva 5 on kuva 4 kvantisoinnin jälkeen, ja kuva 6 esittää kuvaa 5 jälkiprosessoinnin jälkeen.
kuva 7 esittää lohkokaavion muodossa menetelmän vaiheita,
Kuvan 2 kuvasekvenssi esittää aseman ohi kulkevaa junaa. Valkoisilla reunuksilla on rajattu alue, jonka koko on 48*48 pikseliä. Tämä peittää alleen neljä 16* 16 pik-selin lohkoa, ja kullakin lohkolla on oma liikevektori, joka on määritety jollakin lohkosovitusmenetelmällä. Keksinnön mukaisesti haetaan liikevektorit huomattavasti pienemmille alueille kuin mainituille 16*16-kokoisille lohkoille. Kuvan 2 valkoisilla reunuksilla rajattu alue on esitetty suurennettuna ja mustavalkoisena kuvassa 3. Seuraavien kuvien avulla tarkastellaan, kuinka eri menetelmä-vaiheet vaikuttavat tähän kuvaan.
Ensimmäisen menetelmävaiheen (vaihe 21 kuvassa 7) mukaan koko kuvalle 2 tehdään esiprosessointi. Siinä koko kuvalle suoritetaan ensin histogrammiekvalisointi. Kuvan näytteet järjestetäään harmaasävyarvoltaan suuruusjärjestykseen, esim. 8-bittisillä näytteillä jäijestys on 0—256. Tulos voidaan ajatella histogrammiksi, jonka pylväikön kunkin pylvään korkeus on verrannollinen sen arvoisten näytteiden : lukumäärään kuvassa. Pylväikkö on siten hyvin epätasainen. Pylväikköä tasataan sitten siten, että se on mahdollisimman tasainen, jolloin tiettyjen näytteiden har-maasävyarvoa suurennetaan ja toisien taas pienennetään. Tuloksena on kasvanut kuvan kontrasti ja pintojen ääriviivat ovat tulleet selkeästi esiin.Tulos on esitetty kuvassa 4. Tämä kuva esittää, millaiseksi kuvan 3 alue on muuttunut histogrammiekvalisoinnin jälkeen. Kontrasti on lisääntynyt ja eri alueiden ääriviivat ovat tulleet selkeämmin esiin.
Ekvalisoinnin jälkeen suoritetaan koko kuvalle tasavälinen kvantisointi (vaihe 22 kuvassa 2), jossa 256-harmaatasoinen (8-bittinen) kuva kvantisoidaan 4-tasoiseksi (2-bittiseksi). Tulos tutkittavan neljän lohkon kohdalla on nähtävissä kuvassa 5. Harmaasävyjen vähennys tuo segmentit jo selvästi näkyviin. Eri segmenteissä on kuitenkin selvästi nähtävissä muutamien pikselien muodostamia pieniä alueita, joiden harmaasävy hieman poikkeaa ympäristöstään. Kuvan edelleen pelkistämiseksi i 94306 ja segmenttien tasoittamiseksi suoritetaan vielä jälkiprosessointi (vaihe 23 kuvassa 7) näiden pikseleiden arvon korvaamiseksi ympäristöpikseleiden arvolla. Jälkipro-sessoinniksi sopii hyvin mikä tahansa mediaanioperaatio. Tässä esimerkissä on käytetty 9 pisteen mediaanisuodatinta. 3*3-ikkunassa olevat pikselit johdetaan suodattuneen, jonka ulostuloarvolla (= pikseleiden mediaani) korvataan ikkunan keskimmäisen pikselin arvo. Saatua tulosta esittää kuva 6. Verrattaessa sitä alkuperäiseen käsittelemättömään kuvaan 3 on selvästi nähtävissä, että kuva on muuttunut selvärajaisten toisiinsa rajoittuvien segmenttien joukoksi. Kukin segmentti muodostaa siten toisiinsa rajoittuvien saman harmaasävy arvon omaavien pikselien joukon.
Jokaiselle näistä segmenteistä määritetään oma liikevektori (vaihe 25 kuvassa 7). Kuvaan 6 piirretty ruudukko kuvaa lohkorajoja, joihin kuva alunperin on jaettu, ja kullakin lohkolla on siis sille jollakin lohkosovitusmenetelmällä määritetty liikevektori. Tarkastellaan segmentoitua kuvaa lohkojen läpi. Kun segmentti ulottuu loh-korajan yli toiseen lohkoon, se katkaistaan lohkorajan kohdalta. Esimerkiksi vasemmalla ylhäällä on laaja vaalea segmentti, joka on lohkojen A ja B sisällä. Lohkojen välinen reunaviiva L[ jakaa kyseisen segmentin kahdeksi itsenäiseksi segmentiksi 1 lohkossa A ja 2 lohkossa B.
Lohkon alueella voi olla neljänlaisia segmenttejä: 1) Yksi pääsegmentti, joka on lohkon alueella oleva pikselimäärältään suurin segmentti. Näitä ovat lohkossa A segmentti 1 ja lohkossa B segmentti 2.
2) Yksi tai useampi segmentti, joka ei ole pääsegmentti eikä rajoitu naapurilohkon segmenttiin. Tällainen on lohkossa A segmentti 3.
3) Yksi tai useampi segmentti, joka ei ole pääsegmentti ja rajoittuu naapurilohkon pääsegmenttiin. Tällaisia ovat lohkossa A segmentit 5 ja 6 sekä lohkossa B segmentit 4, 7 ja 8.
4) Yksi tai useampi segmentti, joka ei ole pääsegmentti ja rajoittuu naapurilohkon segmenttiin., joka ei ole pääsegmentti. Lohkon B segmentti 4 on tällainen.
Liikevektorit jokaiselle vektorille asetetaan seuraavan säännön mukaisesti: Pääsegmentin liikevektoriehdokkaaksi asetetaan sama vektori, joka on saatu ao. "oman" lohkon liike vektoriksi tunnetun tekniikan mukaisella menetelmällä. Vektoriehdokkaita on merkitty nuolella pääsegmenteissä 1 ja 2. Jokaisen lohkon : · pääsegmentillä on nyt liikevektoriehdokas. Lohkojen liikevektoriehdokkaiden asettamisen jälkeen suoritetaan niiden oikeellisuuden tarkistus (vaihe 24, kuva 7).
8 94306
Lopullinen liikevektori asetetaan siten, että tutkitaan, jatkuuko pääsegmentti vähintään kahden naapurilohkon puolelle ja onko naapurin alueella oleva osa pääsegmentti. Mikäli näin on, muodostavat segmentit saman objektin, joten niiden liikevektorien tulisi olla konsistentit. Siksi jos liikevektoriehdokas poikkeaa naapurilohkojen po. segmenttien liikevektoreista, sitä ei hyväksytä, vaan liike-vektoriksi asetetaan naapurilohkojen pääsegmenttien liikevektorien arvo.
Esimerkiksi lohkon A pääsegmentti 1 ulottuu sekä lohkoon B että (oletamme niin) lohkoon D ja sen näissä lohkoissa oleva osa on myös lohkon pääsegmentti. Mikäli lohkon B pääsegmentin vektoriehdokkaan suunta olisi vaikkapa "ylös", lopulliseksi vektoriksi koijataan kuitenkin suunnaksi "vasemmalle", jolloin pääsegmenttien vektorit ovat konsistentit ja niiden muodostaman objektin kaikilla pikselellä on sama liikesuunta.
Lohkon alueella olevien muiden segmenttien, jotka eivät rajoitu mihinkään naapuri-lohkon alueella olevaan segmenttiin, ts. eivät rajoitu "oman" lohkon rajaan vaan ovat kokonaan oman lohkon sisällä, liikevektoriksi asetetaan liikevektori, joka on tunnetulla tavalla saatu oman lohkon liikevektori. Segmentin 3 liikevektoriksi asetetaan siten sama kuin segmentin 1 liikevektori.
Lohkon alueella olevien muiden segmenttien, jotka rajoittuvat johonkin naapurilohkon segmenttiin, joka ei kuitenkaan ole naapurilohkon pääsegmentti, liikevektoriksi asetetaan myös liikevektori, joka tunnetulla tavalla saatu oman lohkon liikevektori. Lohkon B segmentin 4 liikevektoriksi tulee siten lohkon B ( ja samalla tämän lohkon pääsegmentin 2) liikevektori.
Lohkon alueella olevien muiden segmenttien, jotka rajoittuvat johonkin naapuri-lohkon pääsegmenttiin, liikevektoriksi asetetaan tämän naapurilohkon pääsegmentin liikevektoriarvo. Siten lohkon B segmenttien 7 ja 8 liikevektoriksi tulee naapurilohkon C liikevektoriksi laskettu arvo (esim. oikealle ylös).
Tunnetun tekniikan mukaisesti osoittaisi lohkon B segmenttien 7 ja 8 pikseleiden liikevektori vasemmalle, mutta keksintöä käytettäessä liikevektori osoittaakin 2 "oikealle ylös". Koska segmentit 7 ja 8 selvästi kuuluvat lohkon C pääsegmenttiin ja siten sen liikkeeseen, aiheuttaisi tunnetun tekniikan käyttö kuvaa prosessoitaessa selviä virheitä objektin reunoilla. Koska ne keksinnön menetelmän mukaan prosessoidaan oikein, ei virheitä synny.
• ·
II
9 94306
Edellä esitettyjen periaatteiden mukaisesti asetetaan jokaiselle kuvan segmentille liikevektori.
Menetelmä sopii erityisesti käytettäväksi televisiojärjestelmissä, joissa kuva koodataan lähetysketjun alkupäässä eri tavoin riippuen kuvan liikesisällöstä.Koodatun kuvan ohella lähetetään myös segmenttien liikevektorit, jolloin vastaanotin pystyy prosessoimaan videosignaalia eri tavoin riippuen sen liikesisällöstä.
Keksinnön menetelmä perustuu oivallukseen muokata kuvaa siten, että saadaan selkeästi toisistaan erottuvia segmenttejä, jolloin kohde ja tausta on irrotettu toisistaan ja ne muodostavat tasasävyisen pinnan ilman yksityiskohtia. Tällöin niitä voidaan käsitellä erillisinä ja asettaa niille liikevektorit. Keksintö ei siten mitenkään rajoita menetelmiä, joilla kukin yksittäinen menetelmävaihe toteutetaan. Mainitut histogrammiekvalisointi ja mediaanisuodatus ovat vain eräitä edullisia suoritusmuotoja mutta eivät mitenkään rajoita keksintöä.
• ·

Claims (7)

1. Menetelmä digitaalisen televisiokuvan liikevektoreiden määrittämiseksi, kun kuva on ensin jaettu samankokoisiin ja samanmuotoisiin lohkoillin ja kutakin lohkoa kohti on laskettu lohkoliikevektori, joka edustaa lohkon kaikkien pikseleiden liike-sisällön suuruutta ja suuntaa, tunnettu siitä, että - televisiokuvalle suoritetaan esiprosessointi, joka muuttaa pikseleiden harmaata-soarvoja niiden jakautuman tasoittamiseksi, - kvantisoidaan esiprosessoitu kuva sen harmaatasojen määrän pienentämiseksi, jolloin tuloksena on kuva, joka koostuu erikokoisista ja erimuotoisista tasasävyisistä segmenteistä, - asetetaan kunkin lohkon alueella olevan suurimman segmentin ensimmäisen pääsegmentin liikevektoriehdokkaaksi ko. lohkon lohkoliikevektoriarvo, - jos pääsegmentti jatkuu vähintään kahden naapurilohkon puolelle ja niiden alueella oleva osa on myös ko. naapurilohkon pääsegmentti ja liikevektoriehdokas poikkeaa naapurilohkojen lohkoliikevektoreista, liikevektoriehdokas hylätään ja pääsegmentin liikevektoriksi asetetaan naapurilohkon lohkoliikevektori, muussa tapauksessa liikevektoriehdokas hyväksytään pääsegmentin liikevektoriksi, - lohkon alueella olevien muiden sellaisten segmenttien, jotka rajoittuvan naapuri-lohkon pääsegmenttiin, liikevektoriksi asetetaan tämän naapurilohkon liikevektori-arvo.
2. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että - lohkon alueella olevien muiden segmenttien, jotka eivät rajoitu mihinkään naapurilohkon alueella olevaan segmenttiin, liikevektoriksi asetetaan po. lohkon lohkoliikevektoriarvo, ja - lohkon alueella olevien muiden segmenttien, jotka rajoittuvat johonkin naapurilohkon segmenttiin, joka ei ole naapurilohkon pääsegmentti, liikevektoriksi asetetaan po. lohkon lohkoliikevektoriarvo.
3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu siitä, että esiproses- . sointi on histogrammiekvalisaatio.
4. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu siitä, että kvantisointi on tasavälinen ja 8-bittiset pikselit kvantisoidaan 2-bittisiksi.
5. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu siitä, kvantisoitu kuva lisäksi suodatetaan. 94306 11
6. Patenttivaatimuksen 5 mukainen menetelmä, tunnettu siitä suodatus on mediaani suodatus.
7. Patenttivaatimuksen 6 mukainen menetelmä, tunnettu siitä, että käytettävä suodatin on 9 pisteen mediaanisuodatin.
FI933216A 1993-07-15 1993-07-15 Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi FI94306C (fi)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FI933216A FI94306C (fi) 1993-07-15 1993-07-15 Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi
DE1994613148 DE69413148T2 (de) 1993-07-15 1994-06-28 Verfahren zur Bestimmung von Bewegungsvektoren in kleinen Bildsegmenten in Fernsehbildern
EP19940109935 EP0634873B1 (en) 1993-07-15 1994-06-28 Method to determine the motion vectors in small picture segments of a television picture

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI933216 1993-07-15
FI933216A FI94306C (fi) 1993-07-15 1993-07-15 Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi

Publications (4)

Publication Number Publication Date
FI933216A0 FI933216A0 (fi) 1993-07-15
FI933216A FI933216A (fi) 1995-01-16
FI94306B FI94306B (fi) 1995-04-28
FI94306C true FI94306C (fi) 1995-08-10

Family

ID=8538319

Family Applications (1)

Application Number Title Priority Date Filing Date
FI933216A FI94306C (fi) 1993-07-15 1993-07-15 Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi

Country Status (3)

Country Link
EP (1) EP0634873B1 (fi)
DE (1) DE69413148T2 (fi)
FI (1) FI94306C (fi)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026182A (en) * 1995-10-05 2000-02-15 Microsoft Corporation Feature segmentation
US8824553B2 (en) 2003-05-12 2014-09-02 Google Inc. Video compression method
EP1733562A1 (en) * 2004-03-31 2006-12-20 Koninklijke Philips Electronics N.V. Motion estimation and segmentation for video data
US8494052B2 (en) 2006-04-07 2013-07-23 Microsoft Corporation Dynamic selection of motion estimation search ranges and extended motion vector ranges
US8155195B2 (en) 2006-04-07 2012-04-10 Microsoft Corporation Switching distortion metrics during motion estimation
US8385404B2 (en) 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
US8326075B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video encoding using adaptive loop filter
US9532059B2 (en) 2010-10-05 2016-12-27 Google Technology Holdings LLC Method and apparatus for spatial scalability for video coding
US8953688B2 (en) * 2010-11-08 2015-02-10 Sony Corporation In loop contrast enhancement for improved motion estimation
US8611415B1 (en) 2010-11-15 2013-12-17 Google Inc. System and method for coding using improved motion estimation
US8891626B1 (en) 2011-04-05 2014-11-18 Google Inc. Center of motion for encoding motion fields
US8693547B2 (en) 2011-04-06 2014-04-08 Google Inc. Apparatus and method for coding using motion vector segmentation
US8780971B1 (en) 2011-04-07 2014-07-15 Google, Inc. System and method of encoding using selectable loop filters
US8781004B1 (en) 2011-04-07 2014-07-15 Google Inc. System and method for encoding video using variable loop filter
US9154799B2 (en) 2011-04-07 2015-10-06 Google Inc. Encoding and decoding motion via image segmentation
US8780996B2 (en) 2011-04-07 2014-07-15 Google, Inc. System and method for encoding and decoding video data
US8638854B1 (en) 2011-04-07 2014-01-28 Google Inc. Apparatus and method for creating an alternate reference frame for video compression using maximal differences
US8804819B1 (en) 2011-04-19 2014-08-12 Google Inc. Method and apparatus for encoding video using data frequency
US8705620B1 (en) 2011-04-28 2014-04-22 Google Inc. Method and apparatus for encoding anchor frame by encoding features using layers
US8989256B2 (en) 2011-05-25 2015-03-24 Google Inc. Method and apparatus for using segmentation-based coding of prediction information
JP2014523708A (ja) 2011-07-01 2014-09-11 モトローラ モビリティ エルエルシー 動きベクトル予測設計の簡易化
US8885706B2 (en) 2011-09-16 2014-11-11 Google Inc. Apparatus and methodology for a video codec system with noise reduction capability
WO2013067440A1 (en) 2011-11-04 2013-05-10 General Instrument Corporation Motion vector scaling for non-uniform motion vector grid
US9247257B1 (en) 2011-11-30 2016-01-26 Google Inc. Segmentation based entropy encoding and decoding
US9014265B1 (en) 2011-12-29 2015-04-21 Google Inc. Video coding using edge detection and block partitioning for intra prediction
US8908767B1 (en) 2012-02-09 2014-12-09 Google Inc. Temporal motion vector prediction
US9094681B1 (en) 2012-02-28 2015-07-28 Google Inc. Adaptive segmentation
US9131073B1 (en) 2012-03-02 2015-09-08 Google Inc. Motion estimation aided noise reduction
US9609341B1 (en) 2012-04-23 2017-03-28 Google Inc. Video data encoding and decoding using reference picture lists
WO2013162980A2 (en) 2012-04-23 2013-10-31 Google Inc. Managing multi-reference picture buffers for video data coding
US9172970B1 (en) 2012-05-29 2015-10-27 Google Inc. Inter frame candidate selection for a video encoder
US9014266B1 (en) 2012-06-05 2015-04-21 Google Inc. Decimated sliding windows for multi-reference prediction in video coding
US11317101B2 (en) 2012-06-12 2022-04-26 Google Inc. Inter frame candidate selection for a video encoder
US9344729B1 (en) 2012-07-11 2016-05-17 Google Inc. Selective prediction signal filtering
US9332276B1 (en) 2012-08-09 2016-05-03 Google Inc. Variable-sized super block based direct prediction mode
US9380298B1 (en) 2012-08-10 2016-06-28 Google Inc. Object-based intra-prediction
US9288484B1 (en) 2012-08-30 2016-03-15 Google Inc. Sparse coding dictionary priming
US9210432B2 (en) 2012-10-08 2015-12-08 Google Inc. Lossless inter-frame video coding
US9756346B2 (en) 2012-10-08 2017-09-05 Google Inc. Edge-selective intra coding
US9407915B2 (en) 2012-10-08 2016-08-02 Google Inc. Lossless video coding with sub-frame level optimal quantization values
US9369732B2 (en) 2012-10-08 2016-06-14 Google Inc. Lossless intra-prediction video coding
US9485515B2 (en) 2013-08-23 2016-11-01 Google Inc. Video coding using reference motion vectors
US9503746B2 (en) 2012-10-08 2016-11-22 Google Inc. Determine reference motion vectors
US9225979B1 (en) 2013-01-30 2015-12-29 Google Inc. Remote access encoding
US9210424B1 (en) 2013-02-28 2015-12-08 Google Inc. Adaptive prediction block size in video coding
US9300906B2 (en) 2013-03-29 2016-03-29 Google Inc. Pull frame interpolation
US9756331B1 (en) 2013-06-17 2017-09-05 Google Inc. Advance coded reference prediction
US9313493B1 (en) 2013-06-27 2016-04-12 Google Inc. Advanced motion estimation
US9286653B2 (en) 2014-08-06 2016-03-15 Google Inc. System and method for increasing the bit depth of images
US9153017B1 (en) 2014-08-15 2015-10-06 Google Inc. System and method for optimized chroma subsampling
US10554965B2 (en) 2014-08-18 2020-02-04 Google Llc Motion-compensated partitioning
US10102613B2 (en) 2014-09-25 2018-10-16 Google Llc Frequency-domain denoising
US9807416B2 (en) 2015-09-21 2017-10-31 Google Inc. Low-latency two-pass video coding
US10462457B2 (en) 2016-01-29 2019-10-29 Google Llc Dynamic reference motion vector coding mode
US10397600B1 (en) 2016-01-29 2019-08-27 Google Llc Dynamic reference motion vector coding mode

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3983320A (en) * 1975-08-25 1976-09-28 Hughes Aircraft Company Raster display histogram equalization
JPS5757088A (en) * 1980-08-13 1982-04-06 Nec Corp Adaptive quantization circuit
FR2599577B1 (fr) * 1986-05-29 1988-08-05 Guichard Jacques Procede de codage par transformation pour la transmission de signaux d'image.
FR2648979B1 (fr) * 1989-06-27 1996-09-06 Thomson Consumer Electronics Procede de segmentation du champ de mouvement d'une image et son application au codage d'images video
US5351083A (en) * 1991-10-17 1994-09-27 Sony Corporation Picture encoding and/or decoding system

Also Published As

Publication number Publication date
FI933216A (fi) 1995-01-16
FI933216A0 (fi) 1993-07-15
FI94306B (fi) 1995-04-28
DE69413148D1 (de) 1998-10-15
DE69413148T2 (de) 1999-04-15
EP0634873A2 (en) 1995-01-18
EP0634873B1 (en) 1998-09-09
EP0634873A3 (en) 1995-05-17

Similar Documents

Publication Publication Date Title
FI94306C (fi) Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi
CN108197582B (zh) 基于深度学习的海事雷达图像处理方法
CN112036254B (zh) 基于视频图像的运动车辆前景检测方法
US8014596B2 (en) Methods and systems for background color extrapolation
US9183617B2 (en) Methods, devices, and computer readable mediums for processing a digital picture
CN117094914B (zh) 基于计算机视觉的智慧城市道路监控系统
CN101551900B (zh) 一种视频马赛克图像检测方法
CN111583324B (zh) 单目图像深度估测装载率识别方法和装置
CN105069801A (zh) 基于图像质量诊断的视频图像预处理方法
CN101120594B (zh) 全局运动估计
CN110324617A (zh) 图像处理方法及装置
CN112580447B (zh) 一种基于边缘二阶统计与融合的电力线检测方法
US20060104535A1 (en) Method and apparatus for removing false edges from a segmented image
CN110428450A (zh) 应用于矿井巷道移动巡检图像的尺度自适应目标跟踪方法
US20220210459A1 (en) Coding management method and apparatus based on high efficiency video coding
CN101853500A (zh) 一种彩色多聚焦图像融合方法
CN110807406B (zh) 一种雾天检测方法及装置
CN106686383A (zh) 一种保留深度图边缘的深度图帧内编码方法
CN113205494A (zh) 基于自适应尺度图像块加权差测量的红外小目标检测方法和系统
US7940996B2 (en) Image noise detection
US9414067B2 (en) Methods and systems for detection of block based video dropouts
CN110519597B (zh) 一种基于hevc的编码方法、装置、计算设备和介质
CN113079374B (zh) 图像编码方法和装置
CN108830867A (zh) 基于直线边缘特征的稳像方法、系统
CN112381736B (zh) 一种基于场景分块的图像增强方法

Legal Events

Date Code Title Description
BB Publication of examined application