Merombilderogvideo. Fra bilder til video. Fra Edison til moderne kino. Luminans-variasjon

Like dokumenter
Fra bilder til video. INF 1040 Digital video digital bildeanalyse. Fra Lumiere og Edison til moderne kino. Luminans-variasjon

INF 1040 Digital video digital bildeanalyse

INF 1040 Digital video digital bildeanalyse. Fra bilder til video. Fra Lumiere og Edison til moderne kino. Digital Light Processing og DMD

Fra bilder til video. INF 1040 Digital video digital bildeanalyse. Fra Lumiere og Edison til moderne kino. Luminans-integrasjon

INF 1040 Digital video digital bildeanalyse

Fra bilder til video. INF 1040 Digital video digital bildeanalyse. Fra Lumiere og Edison til moderne kino. Digital Light Processing og DMD

INF 1040 Digital video digital bildeanalyse

UNIVERSITETET I OSLO

Ut i rommet. Læringsmål. Punkter i endimensjonalt rom Skalarer. Punkt i todimensjonalt rom. Geometrier, tid, kart, bilder, animasjoner, CAD/CAM,

UNIVERSITETET I OSLO

INF1040 Digital representasjon

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Løsning av øvingsoppgaver, INF2310, 2005, kompresjon og koding

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Lokale operasjoner. Omgivelser/naboskap/vindu. Bruksområder - filtrering. INF 2310 Digital bildebehandling FILTRERING I BILDE-DOMÈNET I

UNIVERSITETET I OSLO

Gråtonehistogrammer. Histogrammer. Hvordan endre kontrasten i et bilde? INF Hovedsakelig fra kap. 6.3 til 6.6

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Midtveiseksamen Løsningsforslag

INF1040-Video-2. Institutt for informatikk Martin Giese 28. oktober INF1040-Video-1. Institutt for informatikk Martin Giese 28.

Midtveiseksamen. INF Digital Bildebehandling

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO. Dette er et løsningsforslag

Utkast med løsningshint inkludert UNIVERSITETET I OSLO

Løsningsforslag, Ukeoppgaver 10 INF2310, våren 2011 kompresjon og koding del II

INF 1040 Løsningsforslag til kapittel

Motivasjon. Litt sett-teori. Eksempel. INF Mesteparten av kap i DIP Morfologiske operasjoner på binære bilder.

Løsningsforslag, Ukeoppgaver 9 INF2310, våren kompresjon og koding del I

Inf109 Programmering for realister Uke 5. I denne leksjonen skal vi se på hvordan vi kan lage våre egne vinduer og hvordan vi bruker disse.

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Motivasjon. INF 2310 Morfologi. Eksempel. Gjenkjenning av objekter intro (mer i INF 4300) Problem: gjenkjenn alle tall i bildet automatisk.

UNIVERSITETET I OSLO

Temaer i dag. Repetisjon av histogrammer II. Repetisjon av histogrammer I. INF 2310 Digital bildebehandling FORELESNING 5.

UNIVERSITETET I OSLO

"Dette skjer når jeg trykker på denne knappen" "Når jeg skriver i dette feltet, ser jeg at det andre forandrer seg"

Logo med FXML. Introduksjon. Skrevet av: Hallvard Trætteberg

d. Utviklingssteg for å utforme animasjonssekvenser:

Morfologiske operasjoner på binære bilder

INF 1040 løsningsforslag til kapittel 17

Lokale operasjoner. Omgivelser/naboskap/vindu. Bruksområder - filtrering. INF 2310 Digital bildebehandling FORELESNING 6 FILTRERING I BILDE-DOMÈNET I

UNIVERSITETET I OSLO

Morfologiske operasjoner på binære bilder

Repetisjon av histogrammer

Multimediapresentasjon for amatørmurere

Om plotting. Knut Mørken. 31. oktober 2003

TDT4105/TDT4110 Informasjonsteknologi grunnkurs:

2) Redegjør for de mest brukte filformater for digitale fotografier. Diskuter fordeler, ulemper og bruksområder for de ulike formatene.

UNIVERSITETET I OSLO

Motivasjon. Litt sett-teori. Eksempel. INF Kap. 11 i Efford Morfologiske operasjoner. Basis-begreper

INF1040 Digital representasjon Oppsummering 2008 del II

Oppgave 1A. Kapittel 1 >> OPPGAVER. Oppgave 1B

Kodetime for Nordstrand barneskole

UNIVERSITETET I OSLO

INF1040 Digital representasjon Oppsummering 2008 del II

UNIVERSITETET I OSLO

Kantsegmentering NTNU

Morfologi i Gråskala-Bilder II

PLASS og TID IN 106, V-2001 KOMPRESJON OG KODING 30/ Fritz Albregtsen METODER ANVENDELSER

Løsningsforslag, Ukeoppgaver 9 INF2310, våren kompresjon og koding del I

INF Kap og i DIP

CSS: Animasjon Nybegynner

Filtrering. Konvolusjon. Konvolusjon. INF2310 Digital bildebehandling FORELESNING 6 FILTRERING I BILDEDOMENET I

Grunnleggende om Digitale Bilder (ITD33515)

Temaer i dag. Mer om romlig oppløsning. Optisk avbildning. INF 2310 Digital bildebehandling

UNIVERSITETET I OSLO

Kanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen

Øyet og synssystemet vårt. INF 1040 Syn, avbildning og digitale bilder. Øyets linsesystem. Iris og pupillen. Motivasjon for å kunne noe om dette:

INF 1040 Syn, avbildning og digitale bilder

Løpende strekmann Erfaren Videregående Python PDF

Steg 1: Hente grafikk fra nettet

UNIVERSITETET I OSLO

INF2310 Digital bildebehandling

Øyet og synssystemet vårt. INF 1040 Syn, avbildning og digitale bilder. Øyets linsesystem. Iris og pupillen. Motivasjon for å kunne noe om dette:

INF Stikkord over pensum til midtveis 2017 Kristine Baluka Hein

Steg 1: Animasjons-attributtet

King Kong Erfaren Scratch PDF

Kanter, kanter, mange mangekanter

INF februar 2017 Ukens temaer (Hovedsakelig fra kap. 3.1 og 3.2 i DIP) (Histogrammer omtales i kap. 3.3)

Mer om Histogramprosessering og Convolution/Correlation

Histogramprosessering

Snake Expert Scratch PDF

( x+ π 2) Bakgrunn: Sinus og cosinus. Bakgrunn: Samplet sinus i 1D. Bakgrunn: Samplet sinus i 2D. Bakgrunn: Sinus i 2D. sin( x)=cos.

Introduksjon. Litt mengdeteori. Eksempel: Lenke sammen objekter. Morfologiske operasjoner på binære bilder. INF2310 Digital bildebehandling

Om du allerede kjenner Scratch og har en Scratchbruker kan du gå videre til Steg 1.

UNIVERSITETET I OSLO

Filter-egenskaper INF Fritz Albregtsen

INF2310 Digital bildebehandling

HØGSKOLEN I BERGEN Avdeling for ingeniørutdanning

dg = ( g P0 u)ds = ( ) = 0

Steg 1: Opprette app-pakke, app-klasse og FXML-fil

Introduksjon. «Diskret» sinus/cosinus i 1D. Funksjonen sin(θ) INF april 2010 Fourier -- En annen vinkling på stoffet i kapittel 4

For J kvantiseringsnivåer er mean square feilen:

Transkript:

Merombilderogvideo Fra bilder til video Når vi lukker øynene, tar det litt tid før etter - bildet forsvinner, spesielt hvis intensiteten er høy (i deler av) bildet. Bildet forsvinner gradvis (eksponensielt) fra retina. Video - mer kommer i neste forelesning 17.11 (kompresjon) Litt om objektgjenkjenning i bilder Litt om vektor-grafikk Etter pausen: Kort repetisjon om lyd og bilder Det er en kort periode da vi ikke kan ta inn ny informasjon -- selv om øynene er åpne. Dette kan vi teste med periodiske lysblink. Det viser seg at critical flicker fusion frequency øker logaritmisk med økende luminans. Den er så lav som 4 s -1 for lave lysstyrker, der bare stavene er virksomme. Den er ca 60 s -1 for kraftig lysstyrke, der bare tappene er virksomme, og konvergerer mot 80 s -1 INF1040-Bilde 3-1 INF1040-Bilde 3-2 Luminans-variasjon Fra Edison til moderne kino Når lysblinkene kommer tett nok etter hverandre i tid, vil de oppfattes som et jevnt lys, uten flicker. Den effektive oppfattede luminans vil være gjennomsnittet over belysnings-sykelen, som jo egentlig består av en lys og en mørk del. Dette betyr at vi kan variere den effektive luminans ved å holde den fysiske intensiteten til lyskilden konstant, og bare variere lengden av den mørke delen mellom lysblinkene. Thomas Alva Edison laget filmfremvisere med 10 bilder/sekund. Dette var (nesten) tilstrekkelig til å gi en illusjon om kontinuerlig bevegelse. Problemet med at tilskuerne ble slitne av luminance flicker (se foil 2) ble løst ved å vise fram hvert bilde 3 ganger, altså en 30 flash-per-second presentasjon. Filmindustrien videreutviklet dette til 24 bilder/sekund, som gir en mye bedre illusjon om kontinuerlig bevegelse. For å fjerne opplevelsen av flimmer blir bildene vist 2 ganger, noe som gir en illusjon om 48 bilder/sekund. INF1040-Bilde 3-3 INF1040-Bilde 3-4

TV og video Interlacing På en TV-skjerm benytter man seg av interlacing. TV og video er i virkeligheten en sekvens av stillbilder. Et nytt stillbilde sendes så ofte at øyet vårt oppfatter det som et kontinuerlig signal/kontinuerlig film i tid. Vi ser ikke skiftene mellom stillbildene. Hvis neste bilde viser et objekt som har flyttet seg litt, oppfatter øyet det som om vi ser bevegelse. Skal vi se TV-bilder med naturlig bevegelse, må de skifte med en frekvens på minst 50 Hz. Hvert bilde deles i to separate felter Det første består av linjene 1,3,5,7,9, (oddetalls linjer) Det andre består av linjene 2,4,6,8,10, (partalls linjer) 30 ganger i sekundet skifter linje 1,3,5,... og midt mellom hvert av disse skiftene skifter linje 2,4,6.... Tilsammen skiftes bildet 60 ganger i sekundet, men man trenger ikke å overføre mer enn 30 bilder pr sekund til TV-skjermen. Dette er en teknikk for flimmerfri framvisning med halv båndbredde. Hvert felt kan splittes I odde- og partalls kolonner ( double interlace ). Bruk ikke klær med fiskebeins-mønster på TV! INF1040-Bilde 3-5 INF1040-Bilde 3-6 Optimal digital video Digital video består av en tids-sekvens av digitale still-bilder. Hvert bilde er digitalisert i henhold til de regler som gjelder for digitale bilder. Geometrisk oppløsning: Husk Nyquist-teoremet og Rayleighkriteriet! Fargekamera: For hvert piksel måles lysintensitet i tre separate bånd i det elektromagnetiske spekteret. Husk at for hvert bånd (red, green, blue) skal vi : 1. beregne gjennomsnittsverdien i hver rute 2. skalere slik at den passer innenfor det tall-området vi skal bruke 3. kvantiserer verdiene til nærmeste heltalls verdi i tall-området Bilde-frekvensen må være høy nok (60 Hz) til å fange opp all den tids-informasjon som vi er i stand til å oppfatte. Et overslag over datamengder Anta vi har en skjerm med 512x512 piksler det er ikke stort, og 3 bit for hver av fargene R, G, B (tilsammen 9 bit pr. piksel det er ikke mye!). Vi skal ha 60 bilder i sekundet og lagre en film på 1 time: 512x512x9x60x3600 =509 607 936 000 bit Med 24 bits/pixel vil en 512x512 pixels film på 3 timer vil ta 512x512x24x60x3600x3/1024x1024x1024x8 = 475 GB Dette blir så store datamengder at vi må bruke kompresjon og koding for å lagre dem smart! INF1040-Bilde 3-7 INF1040-Bilde 3-8

Litt om digitale kart Digitale kart ligger lagret på vektorform: Regioner ligger som flater Objektgjenkjenning i bilder Motivasjon: det vi egentlig trenger å lagre fra et bilde, er ofte informasjon om akkurat hva det inneholder. Veier ligger som linjer Bygninger o.l. ligger som punkter med en viss størrelse. Stedsnavn ligger som tekst Høydekurver ligger som linjer Vann ligger som konturer Kartene ligger med mange lag, f.eks. for M711-serien: Stedsnavn, bygg og anlegg, høydepunkt, bygg og anlegg, veier, markslagsgrenser, samferdsel, høydedata, kommunegrenser, fylkesgrenser, vannkontur, elver, etc. Steg i et enkelt system for objektgjenkjenning: Filtering for å fjerne støy Segmentering av objekter og bakgrunn Kantdeteksjon Terskling Beregne egenskaper fra objektene Klassifisere objektene som ulike typer INF1040-Bilde 3-9 INF1040-Bilde 3-10 Filtrering av bilder To enkle metoder for å filtrere et bilde: Middelverdifilter: erstatt pikselverdien i et punkt med gjennomsnittet av pikselverdiene til nabopikslene. Medianfilter: erstatt pikselverdien i et punkt med medianen av pikselverdiene til nabopikslene. Original Terskling for å finne objektene i bildet Terskling: sett alle piksler med pikselverdi<t til 0, og alle >=T til 255. Utfordring: bestemme den beste verdien av T automatisk Globale metoder bruker samme terskel for hele bildet. Lokale metoder bruker en terskel som varierer etter kontrasten lokalt i bildet. I begge tilfeller brukes histogrammet til å finne terskelen T. Bevarer kanter i bildet bedre enn middelverdifilteret. Medianfiltrert med vindu på 5x5 piksler Terskelen T settes gjerne i lokale minimumspunkter i histogrammet INF1040-Bilde 3-11 INF1040-Bilde 3-12

Terskling med og uten støyfjerning Terskling uten filtering Kantdeteksjon i bilder Vi vet at vårt (og mange andre dyrs) syns-system er basert på deteksjon av kanter og linjer i bilder. Kanter i bildet gir oss ofte overganger mellom objekter. Kanter beregnes ved operatorer som ser på den deriverte i x- og y-retningen. Terskling etter medianfiltering Den deriverte approksimeres ved differanser, f.eks. f(x-1,y) - f(x+1,y) i x-retningen og f(x,y-1) - f(x,y+1) i y-retningen. Slike enkle operatorer er følsomme for tilfeldig støy i bildet. De vil medføre at vi finner falske kanter som ikke har noe med objektene å gjøre. INF1040-Bilde 3-13 INF1040-Bilde 3-14 Kantdeteksjon Fra segmentert bilde til objekter Lag et objekt for hver region i bildet. Kantdeteksjon uten støyfjerning først Vi lager oss en datastruktur som inneholder en liste over objekter. Kantdeteksjon etter medianfiltrering For hvert objekt har vi en liste over alle piksler dette inneholder. Hvis vi vet noe om størrelsen på objektene, kan vi fjerne små objekter som vi regner med er støy. INF1040-Bilde 3-15 INF1040-Bilde 3-16

Egenskapsuttrekking for objekter For hvert objekt, må vi beregne egenskaper som skiller det fra andre objekter, og som er felles for alle objekter av samme type. Stikkordet er er: hvordan beskriver vi formen til et objekt? F.eks. Hva skiller en B fra en D, eller E fra F? Enkle form-egenskaper er areal, omkrets, krumning, bounding-box (minste rektangel som inneholder objektet). Andre eksempler er tyngdepunkt og høyere ordens momenter. Vi kan også beskrive kanten f.eks. med splines eller Fourierkoeffisienter. Klassifikasjon av objekter Fra et sett kjente objekter, bygger vi en database med beskrivelse for hver objekttype (en beskrivelse for hver bokstav). Typisk må databasen inneholde tusenvis av objekter av hver klasse. Basert på egenskapene for hvert objekt, matcher vi mot databasen og finner den objektklassen (bokstaven) det ligner mest på. Enkle metoder for å finne den klassen det ligner mest på: Finn de 5 objektene den ligner mest på, velg objektklassen som forekommer oftest blant disse 5. Regn ut korrelasjonen mellom objektet og alle objektene i databasen (lite robust) Tilpass en statistisk sannsynlighetsfordeling (f.eks. normalfordeling) til hver klasse. Velg klassen med størst sannsynlighet. INF1040-Bilde 3-17 INF1040-Bilde 3-18 Tekstgjenkjenning Tekstgjenkjenning - ulike fonter La oss si at vi skal kjenne igjen bokstaver i et bilde. En bokstav kan jo se helt ulik ut i ulike fonter: Vi har segmentert bildet i objekter vha. terskling. Små og store bokstaver er forskjellige, vi må bruke en av delene eller trene systemet på begge deler. A a B b C c Hvordan matcher vi bokstaver med ulik fontstørrelse? A A A A Ulik stil, samme font A A AAA A A A A A A A A A A A A Ulike fonter Matcher vi piksel for piksel, vil vi få dårlig gjenkjenningsrate. Håndskrevne symboler gjør det enda vanskeligere Vi kan trene systemet på bokstaver i alle størrelser. Vi kan skalere objektet slik at objektet har en viss størrelse Skalering av objektet slik at det passer i en boks på 32x32 piksler INF1040-Bilde 3-19 INF1040-Bilde 3-20

Tekstgjenkjenning - flere utfordringer Ofte vil en bokstav ikke være helt sammenhengende etter segmentering, men fragmentert i flere delobjekter. To bokstaver kan også henge sammen. Noen bokstaver består av flere objekter, f.eks. å og i Tekstgjenkjenning i praksis Moralen er: robust tekstgjenkjenning er vanskelig å programmere. Maskinen kan ikke konkurrere med øyet. Men mennesket gjør også feil når vi blir trøtte. Dette er et veldig viktig anvendelsesområde. Tekst som skal maskinavleses kan erstattes av strek-koder, men må da ofte gis som kombinert strekkode og tekst. Automatisk mønstergjenkjenning er vanskelig, men gøy: For de som vil gå i dybden: INF 2310 Digital bildebehandling, INF 3300 Digital bildeanalyse INF1040-Bilde 3-21 INF1040-Bilde 3-22 To representasjoner for bilder Det er to fundamentalt forskjellige måter å representere et bilde på: 1. Lagre alle pikselverdiene (gråtoneverdi, eller fargekomponenter) 2. Lagre en parametrisert beskrivelse av bildets innhold Den siste metoden krever at bildet deles opp i objekter, og at hvert objekt beskrives ved en rekke parametre. Dette forutsetter 1. Enten at bildet er forholdsvis enkelt (skisser, tegninger, CAD, kart, ) 2. Eller at det brukes veldig mange parametre for å generere noe som ligner på et naturlig bilde ( virtual reality ). I det siste tilfellet er det naturlig å la objekter ha overflate-egenskaper (varierende farge, refleksjonsegenskaper, tekstur, etc.). INF1040-Bilde 3-23 Scalable Vector Graphics (SVG) XML vektorgrafikk Hva produseres som output av filen example.svg? <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/tr/2001/rec-svg-20010904/dtd/svg10.dtd"> <svg width="20cm" height="15cm" xmlns="http://www.w3.org/2000/svg"> <title>example - simple use of SVG</title> <text x="20" y="20" font-family="verdana" font-size="15" fill="blue" > Example - simple use of SVG </text> <line x1="100" y1="300" x2="300" y2="100 stroke = "black" stroke-width="10" /> <line x1="100" y1="100" x2="300" y2="300 stroke = "red" stroke-width="10" /> <circle cx="100" cy="300" r="50" fill = "none"stroke = "black" stroke-width="10" /> <rect x="320" y="100" width="130" height="200" fill="green" stroke="blue" strokewidth="1" /> </svg> INF1040-Bilde 3-24

SVG resultat SVG SVG er et språk for å beskrive 2-D grafikk i XML. SVG tillater tre typer grafiske objekter : Vektor-grafikk Bilder Tekst Grafiske objekter kan grupperes og transformeres. Transformasjoner kan nestes, man kan ha delvis transparente masker, filtre og templater. INF1040-Bilde 3-25 INF1040-Bilde 3-26 Animasjon Når objektene er beskrevet som vektor-grafikk, kan man flytte på øye-punktet, og få fram et nytt bilde av objektene. Hvis øyet beveger seg langs en parametrisert bane, vil man få en sekvens av resultat-bilder. Man kan legge på fade-in og fade-out effekter. Objekter kan endre størrelse, form og farge underveis. Objekter kan bevege seg i forhold til hverandre, og rotere. Netto-effekten er en animasjon. Er animasjonen tilstrekkelig kompleks, kan bilde - sekvensen se ganske virkelighetsnær ut, uten at det er lagret noen bilder. SVG vær oppmerksom på For at en nettleser skal kunne vise fram en svg-fil, må den ha en plug-in for dette Koordinatsystemet har origo øverst til venstre y-aksen peker nedover Koordinater kan regnes i piksler, typografiske punkter og centimeter For detaljer, se http://www.ifi.uio.no/~inf1040/tekster2003/svg.pdf INF1040-Bilde 3-27 INF1040-Bilde 3-28