Primjena vali au robotskom vidubrod.pfst.hr/~ivujovic/stare_stranice/pdf_zip_word/dki...UVOD Vali ć...
Transcript of Primjena vali au robotskom vidubrod.pfst.hr/~ivujovic/stare_stranice/pdf_zip_word/dki...UVOD Vali ć...
Primjena valića u
robotskom vidu
Igor Vujović
Sadržaj
•
Uvod•
Temelji
valića
•
Primjene
valića-
u otkrivanju rubova
-
u otkrivanju sjena-
u otkrivanju kretnji
•
Zaključak
UVOD
UVODValići
se mogu u robotskom vidu koristiti kao:
pomoćne operacije i kao glavni postupak.
Češće korištene pomoćne operacije su:-
otklanjanje šuma,
-
sažimanje,
-
promjena razlučivosti (na manju ili veću),
-
rastavljanje signala, itd.
UVODKao glavni postupak češće se primjenjuje za:
-
otkirvanje rubova,
-
kompenzacija kretnji kamere,
-
estimacija kretnji,
-
predikcija kretnji,
-
prepoznavanje (objekata, otisaka prstiju ili mrežnice, itd),
- praćenje objekata,
-
identifikacija parametara, nelinearno upravljanje, itd.
UVOD
Područje kretnje(potrebni detalji)
Model ljudskog vidnog osjeta
Statički dio slike Pozadina Područjeinteresa
Manje podatakaViše podataka
Temelji valića
–
što su valićiValić
(engl. wavelet)
dolazi od francuske riječi ondelette
što
znači mali val.Općenito, valić
je
funkcija valnog oblika ograničenog trajanja srednje
vrijednosti
0.
Tipični
valići:•
Tzv. “meksički
šešir”
valić•
Haarov
valić
•
Morletov
valić
Valićna
transformacija•
Prevladava ugrađene rezolucijske probleme STFT-a upotrebom promjenjivog prozora
•
Prozori za analizu različitih duljina koriste se za različite frekvencije:–
Analiza visokih frekvencija Koriste se uži prozori zbog bolje vremenske razlučivosti
–
Analiza niskih frekvencija Koriste se širi prozori zbog bolje frekvencijske razlučivosti
•
Heisenbergovo načelo je očuvano.•
Kernelska funkcija
naziva
se valićem.
Valićna
transformacija i načelo neodređenosti
Shema podjele f-t ravnine (engl. tiling): a)
STFT –
isti prozori za sva vremena i frekvencije,
b)
MRA –
prozori istih površina, ali različitih duljina stranica
a) b)
Valićna
transformacija
( )∫ ⎟⎠⎞
⎜⎝⎛ −
=Ψ= ∗
txx dt
sttx
sssCWT τψττ ψψ 1),(),(
Kontinuirana WT
signala
x(t) upotrebom analizirajućeg valića
ψ
Translacijski parametar, mjera vremena
Parametar skale, mjera frekvencije
“Mother wavelet” (osnovni valić). Svi kerneli se dobijaju translatiranjem (pomakom, shift) i/ili skaliranjem (scaling) ovog valića
Normalizacijska konstanta Signal za
analizu
Skala = 1/frekvencija
Osnovna valićna
funkcija (engl. mother wavelet)
•
Kernelske
funkcije
koje se koriste u WT se dobivaju iz prototipne funkcije s pomoću skaliranja
i translatiranja
te funkcije.
)(1)(, st
sts
τψψτ−
=
Parametar skale
Translacijskiparametar
Normalizacijski faktor kakobi se osiguralo da svi valići
imaju istu energiju
WT kao korelacija
Među-korelacija:
tada je:
W(s, τ) je među-korelacija signala
x(t) i osnovnog valića
na skali
s, i pomaku
τ. Ako je
x(t) slična
osnovnom valiću,
tada je W(s, τ) velik.
∫ ∗>=< dttgtftgtf )()()(),( >=< )(),(),( , ttxsW s τψτ
>−=<
−⋅= ∫ ∗
)(),(
)()()(
τ
ττ
tytx
dttytxRxy
)()(),(),(
,,
0,
bRttxsW
osx
s
ψ
τψτ=
>−=<
DWT –
filtarska izvedba
G
H
2
2 G
H
2
2
2
2
G
H
+
2
2
G
H
+
x[n]x[n]
Rastav (dekopomozicija) Obnavljanje (rekonstrukcija)
~
~ ~
~
∑ +−=n
vp kngnxky ]2[][][~
∑ +−=n
np knhnxky ]2[][][~
∑ +−⋅k
vp kngky ]2[][
∑ +−⋅k
np kngky ]2[][
G
H
VP za pola pojasa
NP za pola pojasa
2
2
Poduzorkovanje
Naduzorkovanje
2-D DWT
•
2D funkcije slike f(x,y) I[m,n] funkcija intenziteta
•
Što znači napraviti
2D-DWT slike? Kako se interpretira?–
Opis
slike
funkcijom
–
“Prolazak”
slike kroz NF i VF•
Što
se postiže
2D-DWT slike?
–
Sažimanje–
Uklanjanje šuma
–
Izlučivanje karakteristika
2D-DWT
SLIKE
•
Jedna razina
2D DWT rekonstrukcije:
(
))()(),()()(),()()(),(
)()(),(),(1
nxnxpndnxnxpncnxnxpnb
nxnxpnayxf
o
o
o
n po
−⋅−⋅+−⋅−⋅+−⋅−⋅+
−⋅−⋅= ∑ ∑∞
−∞=
∞
−∞=−
ψψφψψφ
φφAproksimacijski koeficijenti
Detaljni koeficijenti u vodoravnom smjeru
Detaljni koeficijenti uokomitom smjeruDetaljni koeficijenti uSmjeru dijagonala
Valićna funkcija Funkcija skaliranja
Implementacija
2D-DWT
ULAZNASLIKA…
…
……
RE
DO
VI
STUPCIH~ 2 1
G~ 2 1
H~ 1 2
G~ 1 2
H~ 1 2
G~ 1 2
REDOVI
REDOVI
STUPCI
STUPCI
STUPCI
LL
LH
HL
HH
)(1
hkD +
)(1
vkD +
)(1
dkD +
1+kA
ULAZNASLIKA
LL LH
HL HH
LLLH
HL HH
LHH
LLH
LHL
LLLLH
HL HH
LHH
LLH
LHL
Implementacija
2D-DWTValićni rastav slike
REDOVI i
STU
PCIj
50 100 150 200 250 300 350
50
100
150
200
250
50 100 150 200 250 300 350
50
100
150
200
250
50 100 150 200 250 300 350
50
100
150
200
250
50 100 150 200 250 300 350
50
100
150
200
250
LLAproksimacija
LHVodoravni detalji
HLOkomiti detalji
HHDijagonalni detalji
288x360*4slike=414720
(3x manje od gornje razine)
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
Izvor: 576x720x3=1244160
podataka
NF VF
200 400 600 800 1000 1200 1400
100
200
300
400
500
600
700
800
900
1000
1100
Superrezolucija:Izvor = aproksimacijaDetalji =0 ili šum (model)Ili apriorno znanje (model)
1150x1438x3
podataka
VALIĆNA ANALIZA NA PRIMJERU SLIKA (DWT2)
Preko 90% energije signala
Primjeri upotrebe WT
Primjena WT bit će ilustrirana na primjerima:
-
otkrivanja rubova u slici,
-
uklanjanja sjena iz slika i
-
otkrivanja kretnji.
PRIMJENA VALIĆA U OTKRIVANJU RUBOVA: Što
su rubovi?
•
Rub u slici je kontura uzduž
koje se osvjetljenje naglo mijenja.
•
Otkrivanje
rubova uobičajeni je postupak niske razine obradbe slike, koji se rijetko može preskočiti.
•
Dobro otkrivanje rubova je uvjet za visokokvalitetnu segmentaciju i praćenje.
•
Kod sive slike, rub se može definirati kao relativno malo područje unutar kojeg dolazi do velike promjene intenziteta. Većina algoritama za otkrivanje rubova je izvedena prozorski i
uobičajeno se poboljšavaju rubovi, a tada se primjeni tzv. postupak
praga. Razne su grane istraživanja rubova –
odabir praga, odabir veličine prozora, šum, povezivanje rubova te otkrivanje rubova kod pokretnih objekata.
Klasični detektori rubova•
Detektori prvog reda
•
Roberts, •
Prewitt, •
Sobel,•
Canny.
•
Detektori drugog reda•
Laplacian, •
Postupak prelaska nule, •
Marr-Hildreth,•
Laplacian
Gaussiana.
•
Ostali detektori•
Različiti modeli rubova,•
Različiti modeli šumova i•
Koji ne mogu raditi odvojeno od nekog drugog postupka (npr. segmentacije).
Detektori ruba prvog reda
Canny Sobel
PrewittRoberts
Razlika detektora prvog i drugog reda
Prag
Prolazak kroz 0
Valićni
postupci otkrivanja rubova•
Iskorištavanje valićne
maksime.
•
Višeskalni
valićni
model temeljen na MRA.
•
Više-valićni
pristup.
•
Kad se s WT kroz više razina rastavlja slika, dolazi do degradacije u smislu da ne ostaje ništa osim rubova.
•
Valićni
postupci mogu biti prvog, drugog ili viših redova.
•
Valićni
postupci omogućuju uvođenje različitih vrsta modela i mreža (npr. valićni
opis karakteristika ili valićne
neuronske mreže, modeli ljudske percepcije,...)
u detektore ruba.
OTKRIVANJE RUBOVA VALIĆIMAIzvorna slikaZbroj detalja 1.stupnja Zbroj detalja 2.stupnja
LL1
LL2 LH2 HL2 HH2
LH1
HL1
HH1
Prostorno polje kretnji za detekciju ruba iz valićne
aproksimacije
Prostorna
aktivnost računa se drugom usmjerenom derivacijom, što u diskretnom području odgovara:
Ako se te jednadžbe primjene (zbroje)
na valićnu aproksimaciju, rezultat je isticanje rubova, jer se rub može
otkriti s pomoću gradijenta.
[ ] [ ] [ ][ ] [ ] [ ]
[ ] [ ] [ ][ ] [ ] [ ]1,15,0,1,15,0
1,15,0,1,15,0
1,,21,
,1,2,1
21)(
21)(
21)()(
2
21)(
21)(
21)()(
1
21)(
21)(
21)()(
21)(
21)(
21)()(
+++−−−=∂
+−+−−+=∂
++−−=∂
++−−=∂
nnfnnfnnff
nnfnnfnnff
nnfnnfnnff
nnfnnfnnff
kkkkD
kkkkD
kkkkH
kkkkV
Usporedba nekih detektora rubova
Izvorna slika Sobel Prewit
Više-valićni pristup Gradijent aproksimacije
Canny
Usporedba nekih detektora rubova
Şendur and Guleryuzrubovi kretnje
Gradijent aproksimacije
Izvorna slika
Utjcaj praga na otkrivanje rubova
50 100 150 200 250 300 350
50
100
150
200
250
Prag=200
50 100 150 200 250 300 350
50
100
150
200
250
Gradijent aproksimacije Prag=50
Canny Laplacian
Gaussiana Valićni detalji bez praga
Uzroci sjena:-
Produkt neke operacije ili operacija na slici (autokorelacijom
se rješava, jer se dobiva ako se dvije i/ili više slika dobro ne filtriraju –
razmazivanje. Autokorelacijom se odredi pomak
između 2 slike,tj.koliko slika “sudjeluje”
u sjeni)
-
Slika je mutna (ovdje se isto radi o 2 ili više slika,
koje
su blizu jedna drugoj pa se isto treba raditi autokorelacija. Osim ako je uzrok blur
filter, jer se tada primjenjuje prag).
-
Ako je slika snimljena sa sjenom zbog nezgodno postavljenog izvora svjetla, sjena je fizički dio slike i teorijski je nije moguće odvojiti od stvarnog objekta. Međutim, može se tražiti u kojem dijelu spektra se sjena nalazi i tada se primjenom tzv. metode
praga odstrani taj dio spektra. Naravno, tu postoji opasnost od gubitka korisnih informacija.
TIPOVI SJENAPosebice problematična sjena je ona snimljena sa slikom
(npr. izvor svjetlosti je u takvom položaju da se stvara sjena).
Tipovi
takvih sjena su:
-
Statička (od nepokretnih predmeta), koje se mogu ukloniti s primjenom tzv. metode
oduzimanjem pozadine.
-
Dinamička (od pokretnog objekta) → Problematične!!
Pomiče
se s objektom pa se ne može ukloniti s oduzimanjem pozadine.
Parametri
koji je potrebno odrediti mogu biti
osvijetljenost, kontrast i sl. pravih objekata i sjena te se može
pokušati
matematički formulirati zakonitosti, ili prijeći
u NTSC (YIQ) područje boja i koristiti samo prvu komponentu, što uz prag
često uklanja sjene.
TIPOVI SJENA
•
Meke •
Tvrde
Tvrda Meka
PRIMJER UKLANJANJA RUBOVA KOJI PRIPADAJU SJENAMA
Canny
Otkrivanjeruba primjenom valićas prostornom aktivnošću u aproksimaciji
Izvorna slika
PRIMJER OTKRIVANJA SJENAIzvorna slika
Dinamičke sjene zamjenjene crnom bojom
Dinamičke sjene zamjenjene bijelom bojom
Vodoravni detalji Aproksimacija
Vodoravni detalji
Dinamičke sjene zamjenjene bijelom bojom sjajnost valićne aproksimacije
Čovjek
Dinamičkasjena = bijelo
Čovjek
Primjer gubitaka kod prevelikog pragaPrimjer prevelikog praga
50 100 150 200 250 300 350 400
50
100
150
200
250
300
Otkrivanje kretnjiNačini otkrivanja kretnji:
•
vremensko
razlikovanje,•
tehnike
optičkog toka i
•
oduzimanja
pozadine
Vrlo važnu ulogu o otkrivanju kretnji igraju modeli pozadine, a neki od načina modeliranja pozadine su:
•
oduzimanje
slika,•
usrednjeno
filtriranje,
•
kalmanovo filtriranje.
OTKRIVANJE KRETNJE RAZLIKOM SLIKA:
a) Oduzimanje trenutne i referentne slike
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
b-aa-b
OTKRIVANJE KRETNJE RAZLIKOM SLIKA:
b) Oduzimanje susjednih slika
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
OTKRIVANJE KRETNJI
OTKRIVANJE KRETNJIRad algoritma za otkrivanje kretnji i odvajanje prvog plana.
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
100 200 300 400 500 600 700
50
100
150
200
250
300
350
400
450
500
550
OTKRIVANJE KRETNJI
Slika očišćena morfološki
Primjer potpuno valićnog postupka otkrivanja kretnji
Canny razlika trenutne i referentne slike
Razlika kvadrata valićne aproksimacijetrenutne i referentne slike
Primjer potpuno valićnog postupka otkrivanja kretnji
50 100 150 200 250 300 350
50
100
150
200
250
50 100 150 200 250 300 350
50
100
150
200
250
Otkrivanje kretnji s uklanjanjem sjena, primjer
Izvorna slika Prvi plan, vidi se kretnja, šum i dinamička sjena
Segmentirana kretnja,očišćen šum i uklonjenasjena.
ZAKLJUČAK•
U radu su ilustrirane neke moguće primjene valića u
robotskom vidu na tri primjera: otkrivanju rubova, uklanjanju sjena i otkrivanju kretnji.
•
Postoje i druge mogućnosti primjene, koje su mogući predmet budućeg istraživanja.
•
Valići
se mogu koristiti za praćenje i predviđanje kretnji, a istraživanja u tom smislu se u svijetu već
provode. To
je od iznimne važnosti u međudjelovanju čovjeka i stroja.
Stvarni izgled valićnih koeficijenata (naredba image daje nama razumljiv
prikaz, a ovo je plot)
0 50 100 150 200 250 3000
100
200
300
400
500
600
700�Prikaz vali nih aproksimacijakih koeficijenata
Otkrivanje rubaLazy wavelet-aproksimacija
50 100 150 200 250 300 350
50
100
150
200
250
Stol prekidavidokrug kamere
Multirezolucijski algoritam za otkrivanje kretnji
Goli algoritam
20 40 60 80
10
20
30
40
50
60
70
Kretnja superponirana na izvornu sliku
100 200 300 400 500 600 700
100
200
300
400
500
Istaknuti rubovi kretnje
100 200 300 400 500 600 700
100
200
300
400
500
100 200 300 400 500 600 700
100
200
300
400
500
3.razina MRA
Osnovna valićna
funkcija (engl. mother wavelet)
•
Kernelske
funkcije
koje se koriste u WT se dobivaju iz prototipne funkcije s pomoću skaliranja
i translatiranja
te funkcije.
)(1)(, abt
atba
−= ψψ
Parametar skale
Translacijskiparametar
)()(0,1 tt ψψ =
Normalizacijski faktor kako bi se osiguraloda svi valići imaju istu energiju
∫∫∫∞
∞−
∞
∞−
∞
∞−
== dttdttdttba22
)0,1(
2
),( )()()( ψψψ
Filtarska
interpretacija DWTUzorkuju se CWT koeficijenti u diadičkoj mreži, a vrijednosti
skale, odnosno pomaka, dobijaju se po formulama: (1) (2)
gdje su k i j iz skupa cijelih brojeva.
Valićna funkcija u diskretnom vremenu, s obzirom na (1) i (2), može se pisati:
js 2= jkt 2*=
( ) ( )ktktssskat
st jjjj
j
j
jkj −=−=⎟⎟⎠
⎞⎜⎜⎝
⎛ −= −−−− 221)( 2/
002/
00
00
0
, ψτψτψψ
kjkj ddtttxsW ,, )()(),( =⋅≅ ∫ ∗ψτ (4)-DWT
∑ ∑∞
−∞=
∞
−∞=
⋅=j k
kjkj tdc
tx )(1)( ,, ψ (5)-IDWT
∑∑==
−⋅=−⋅===N
k
N
kknxkhknhkxnxnhnhnxny
11][][][][][*][][*][][
(3)
(6)
2D valićna
i funkcija skaliranja•
Definicija 2D funkcije skaliranja i valićne
funkcije:
•
Ako
je φ(t) ortogonalna
onda je i Sφφ
ortogonalna. Ako je
fo (x,y) projekcija f(x,y) na
prostor
Vo dobivena sa
sφφ
(x,y) :
)()(),( yxyxs φφφφ ⋅=
{ }Zlklykxs ∈−− ,:),(φφ
>−−=<
−−⋅= ∑ ∑∞
−∞=
∞
−∞=
),(),,(),(
),(),(),(
jyixsyxfjia
jyixsjiayxf
o
i joo
φφ
φφ
)()(),( yxyxs ψψψψ ⋅=
SPATIAL MF DETECTOR PRINCIPLE
Original
Wavelet approximation
Movement in x-direction
Movement in y-direction
SPATIAL MF DETECTOR PRINCIPLE
Wavelet approximation
x+y-direction movement
Main diagonal movement
Minor diagonal movement
SPATIAL MF DETECTOR PRINCIPLE
Wavelet approximation
2-diagnals movement
x,y, and 2 diag. movement
x+y movement