Översikt signaler, information & faltningskärnor bilder, föreläsning … · 2016-03-01 ·...

11
1 Signaler, information & bilder, föreläsning 14 Michael Felsberg Computer Vision Laboratory Department of Electrical Engineering [email protected] Översikt 2D signalbehandling (bildbehandling) forts. Faltningskärnor Deriverande Högpassfiltrerade Omsampling Generell / translation Förstoring (uppsampling) Förminskning (nedsampling) Rotation Teori: Kap. 3.7, 3.8, 3.9, 3.10, 4 Bygger på Maria Magnussons föreläsningar Faltningskärna Filterkärna Filter Operator Kärna Synonymer * Lågpassfiltrering 24 16 16 24 24 24 16 16 36 /256 4 6 4 4 6 4 6 4 4 6 4 4 1 1 1 1 Jämför med Fig. 3.13 Lågpassfiltrering i Fourierdomänen Jmf Fig. 3.13

Upload: others

Post on 11-Feb-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

1

Signaler, information & bilder, föreläsning 14Michael Felsberg

Computer Vision LaboratoryDepartment of Electrical [email protected]

Översikt

• 2D signalbehandling (bildbehandling) forts.

– Faltningskärnor

• Deriverande

• Högpassfiltrerade

– Omsampling

• Generell / translation

• Förstoring (uppsampling)

• Förminskning (nedsampling)

• Rotation

• Teori: Kap. 3.7, 3.8, 3.9, 3.10, 4

• Bygger på Maria Magnussons föreläsningar

Faltningskärna

Filterkärna

Filter

Operator

Kärna

Synonymer

*

Lågpassfiltrering

24

16

16

24

24

24

16

16

36

/256

464

464

6

4

4

6

4

4

1 1

11

Jämför med Fig. 3.13

Lågpassfiltrering i Fourierdomänen

Jmf Fig. 3.13

2

Filtrering via multiplikation i DFT-domänen ger cirkulär faltning

Fig. 3.9

Sker via multipli-kation i fourier-domänen. Ut-bilden blir likastor som inbilden.

kan för-beräknas

1D cirkulär faltning

convolve()signal.fft :Python

de.intressera den för kompendiet i finns Bevis:gäller Det

. cirkulär eller upprepad periodiskt som uppfattas kan dvs operation, modulo

betecknar och faltning cirkulär noterar där

kHkGmhgDFT

nNhnhhN

nmhngmhg

DDDND

DD

D

NN

N

n

NDDDND

59.21

0

Alltså: För att cirkulär faltning ska ge samma resultatsom vanlig linjär faltning kan zero-padding behövas.

*

=

*

=

1D cirkulär faltning Motivering i spatialdomänen attär en deriveringsoperator

2

111

xfxfxf

samma!

1 -1/2

0

22

111

xfxfxg

Från gymnasiet: Faltning, g=d*f:

3

Derivering kan ses som faltningmed en deriveringsoperator

ujx

uFujxfx

uFujx

xf

uFxf

uFxf

2

2

2

dvs ,är avnsformen fouriertraatt Antag

Fouriertransformen av en

deriveringsoperator är en rät linje!

En

faltningskärna

vars fouriertransform

liknar en rät linje i

fourierdomänen kan

användas som

deriverings-

operator!

Motivering i fourierdomänen attär en deriveringsoperator

• Sätta dirac-impulser på varje element i faltningskärnanmed sampelavstånd

• Tag kontinuerlig Fouriertransform

0då2/2sin

2/111 22

uujuj

veeuH ujuj

2/11 yxxxh

Den liknar en rät linje för låga frekvenser. Den beräknar deri-vatan bra för låga frekvenser och dämpar höga frekvenser.

1 -1/2

0

Deriverande (och lågpassfiltrerande) faltningskärna i x-led (u-led)

Fig. 3.17

här1

,/2sin

uj

1 -1/2

0 x

y

uv

centralax-differenser

Deriverande (och lågpassfiltrerande) faltningskärna i y-led (v-led)

Fig. 3.17

här1

,/2sin

vj

uv

centralay-differenser

-1

1

/2

0 x

y

4

Deriverande faltningskärna i x-led (u-led) med lågpass-effekt i båda ledder

Fig. 3.17

här1

,/cos2sin 22

vuj

-11

-2

0 *

=

-1

-1

0

0

2

1

1

0

1

1/4

/2

/82

2

Sobel-x

Deriverande faltningskärna i y-led (v-led) med lågpass-effekt i båda ledder

Fig. 3.17

här1

,/cos2sin 22

uvj

11

0

2 *

=

1

-1

2

-2

0

1

-1

0

1

-1/2

/4

/82

0

Sobel-y

Deriverande faltning

-1/8

-2 -1

0 0 0

1 2 1

x

yxf

,

y

yxf

,

x

y

vit255grå127svart0

:färgtabell-gråskale

röd127vit0blå128-

:färgtabellbipolär

yxf ,

falta med

1

2

1 0

0

0

-1

-2

-1/8

Beloppet av gradienten tar fram kanter i bilden

yxf ,

22

,,

,

y

yxf

x

yxf

yxf

Beloppet av gradientenInbild

y

x

f

f

y

yxfx

yxf

yxf,

,

,

5

Derivering och kantdetekteringoriginal :f 22

yx ff

xfyf

-128=

svart

127=

vitt

0=

svart

255=

vitt

Jmf Fig. 3.18

yxf ,

Färg-tabell:Vit = 0Svart = positivt

värde

Rotationsinvarians

• Det är önskvärt att ett derivata-filter-par är rotationsinvariant. Då kommer “kantstyrkan”, absolutbeloppet av gradienten, inte bero av kantens rotationsläge.

yxf , yxf ,

MedSobel-paret

Medcentraladifferenser

Olika derivata-filter

-11 0 /2

-66 0 /8-1 1

-11 /Ett filtermed centrum mellan pixlarna

Fig. 3.15

Linjär diskret faltning då centrum är mellan pixlarna

1* =-11 1 -11 0

1* =

-11 1

-1

10

/2

/2

/2/

/2/

basfilter (Haar wavelets)

6

Ett idealt Laplace-filter beräknar 2:a-derivatan i x- och y-led

2

2

2

22 ,

yxyx

2222 4, vuyx

led-yoch - xiter högpassfilkraftigt ett är

4, 2222 vuyx

Laplaceoperatorn:

Fouriertransform:

,/sin4/222cos

/2:/1,2,1

222

2222

uv

ee ujuj

Faltningskärna som approximerar det ideala Laplace-filtret

1 =

0

0

1

1

1

0

0

-4

/2

11 -2

/2

1

1

-2

/2

+

222 sinsin4 vu Fig. 3.19

-1 multiplicerat på det approximativa Laplace-filtret ger ett högpassfilter

-1 =

0

0

-1

-1

-1

0

0

4

/2

-1-1 2

/2

-1

-1

2

/2

+

Fig. 3.19

Spatialdomän Fourierdomän

Laplace, negativ

Ex) användning av Laplace, negativ: Erhåll en bild med tydligare detaljer

Fig. 3.20

7

Generell omsampling, princip

Fig. 4.1

Sådana här distorsioner har t ex

– Satellitbilder

– Vissa mikroskop

– Vissa röntgenbildförstärkare

– Vidvinkelkamerabilder

Omsampling består av ...

1) Faltning med en interpolations-funktion på den samplade signalen ger en kontinuerlig signal.

2) Sampling av den kontinuerliga signalen.

I verkligheten beräknas den kontinuerliga funktionen

endast i den omsamplade signalens samplingspunkter.

Fig. 4.2

Ideal uppsamplingBildstorlek: N x N

np.fft.fftshift(

np.fft.fft2(

np.fft.ifftshift(f)))

Bild

sto

rle

k: 2

N x

2N

Nollpadda

np

.fft

.fftsh

ift(

np

.fft

.ifft2

(

np

.fft

.iffts

hift(

f)))

Vilken interpolations-

funktion motsvarar

denna metod?

Up

psa

mp

ling,

id

eal

Fig

. 4.6

8

Fourier transformen av linjära och närmsta

granne interpolationsfunktionerna

Fourier-

transformen

av sinc

Ger

lågpass-

filtering

x u 2sinc

x usinc

Kan ge viknings-

distorsion

efter omsampling

Fourier-

transformen

av sinc

Fig

. 4.7

Interpolationsfunktioner

• Närmsta granne interpolation

• Linjär interpolation

• Trunkerad sinc interpolation

• Sinc interpolation

Men cubic spline interpolation kan vara både

snabbare och bättre än ”trunkerad sinc interpolation”!

snabbare

bättre

(Linjär) Interpolation

• Sätt =1.

• Flytta interpolationsfunktionen till den intressanta positionen.

• Interpolationsfunktioner är jämna => betrakta bara avstånd

875.15.125.0275.0

5.175.0225.0värde

Fig. 4.5

eeffeeff

eeffeeff

yxyxfyxyxf

yxyxfyxyxf

yxf

1,111,

1,111,

,

ff yxf ,

1, ff yxf 1,1 ff yxf

yxyx ,

yxf ,

ff yxf ,1

yx

yx, på Basyta

2D bilinjär interpolation

ey

ex

9

2D

uppsam

plin

gen fakto

r 4

Ori-

ginal

Närm-

sta

granne

interpo-

lation

Bi-

linjär

inter-

po-

lation

Bicubic

16

spline

interpo-

lation

Fig.

4.8

Ned

sam

plin

g, i

dea

l

Fig. 4.13

Ne

dsa

mp

ling

+

inte

rpo

latio

nsf.

Fig. 4.14

original

Bicubic interpolation Bilinjär interpolationSnabb

radiell

sinus +

långsam

radiell

sinus

Fig. 4.14-

4.15

original Efter

slarvig ned-

sampling

Nedsam

plin

g m

. olik

a

inte

rpola

tionsfk

n.

10

Nedsampling, k=2, närmsta granne

Bildstorlek: 566x402 Bildstorlek: 283x201

Effekter

av viknings-

distorsion

ekviv

ale

nt m

ed

att

ka

sta

bo

rt v

ara

nn

an

pix

el

4/1214/

1

2

1

16/

121

242

121

Detta är ekvivalent med:

dvs lågpassfiltrering, följt av att

kasta bort varannan pixel

2/1

bredd = 2·k = 4 pixlar

Viknings-

distorsionen

nästan

borta

Bildstorlek: 283x201

Nedsampling, k=2, bilinjär interpolation

Rotation av en bild

xf

xRf

cossin

sincosR

y

xx

Inbild

Utbild

x

y

Fig. 4.10

2 metoder att rotera: Här bara no 2

xfxRf

fxR

fx

:

utbilden i Beräkna

inbilden i allaFör

1.

xRfxf

fxR

fx

1

1

:

inbilden i Beräkna

utbilden i allaFör

2.

inbilden i fram asinterpoler måste värdet xRf 1

utbilden i ut sprids inbilden i värdet xf

Inversemapping

Forwardmapping

11

Rotation enligt metod 2

Fig. 4.11

Observera! Inbildenochutbildenär överlagrade.

yx

Ryx 1

''

Rotation i närbild

xRfxf 1

inbilden i fram asinterpoler

måste värdet 1xRf

Inbild f före rotation Utbild f efter rotation

Rotation med bilinjär

interpolation

Varför blir apan suddi-

gare efter rotationerna?

Rotation

30o

Rotation

-30o

Slutsatser för omsampling samt rotation• Den ideala interpolationsfunktionen är en sinc som motsvarar

en rektangelfunktion i Fourierdomänen.

• Vid uppsampling och rotation ska rektangelfunktionengå till 0 vid bandgränsen.

• Vid nedsampling med k ska rektangel-funktionen gå till 0 vid bandgränsen/k. Den korresponderade interpolations-funktionen blir k gånger bredare.

– Interpolations-funktionen utför lågpassfiltrering annars får man vikningsdistorsion.

• Triangelfunktionen (linjär interpolation): Dess bredd = bredden på sincens huvudlob.

– Uppsampling: bredden på triangelfunktionen 2 pixlar

– Nedsampling: bredden på triangelfunktionen 2·k pixlar