Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike

Zavod za automatiku i računalno inženjerstvo Predavanja

Robotski vid
•Robotski su sustavi često
opremljeni vanjskim
osjetilima (senzorima), koji
svojim informacijama
omogućuju robotskom
upravljačkom uređaju da
obavi traženu zadaću kao
što bi je obavio čovjek
•Povezivanje kamere i
robota Æ robotski vid Æ
oblik umjetne inteligencije

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

PRIMJENE ROBOTSKOG VIDA

• Sustavi regulacije položaja primjenom vizualne


povratne veze
• Sustavi upravljanja kretanjem mobilnih robota
• Sustavi kontrole kakvoće i inspekcije
• Industrijski robotski sustavi
• Fleksibilni proizvodni sustavi

2
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Vizualno upravljanje gibanjem robota


Lokalizacija predmeta u slici i upravljanje na temelju karakteristika slike (npr. predmet
je uvijek u žarištu)
Primjena – praćenje lica, praćenje koordinata centra mete

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Vizualno upravljanje u realnom vremenu

4
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Upravljanje robotom pomoću vizualne povratne veze


Lokalizacija predmeta (položaja i orijentacije) u Euklidskom prostoru i manipulacija
Primjena: Prepoznavanje i sortiranje

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Osnovni sustav 2D robotskog vida sadrži:


• jednu nepomičnu kameru postavljenu na stalku iznad radnog
prostora,
• računalo s digitalizatorom video slike,
• podlošku s predmetima,
• robot (npr. RHINO XR3). 2-D slika radnog prostora
(treća dimenzija poznata)
video kamera

računalo s digitalizatorom
video slike

RHINO XR3 robot podloška s predmetima

6
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja
OSNOVNE OPERACIJE ROBOTSKOG VIDA
Kalibriranje kamere* ¤ Kalibrirana video kamera snima
radnu površinu s predmetima i šalje
Editiranje predmeta* sliku računalu
¤ Kalibracija je postupak koji
uspostavlja vezu između stvarnih
Digitalizacija slike
dimenzija i dimenzija u slici.
¤ Digitalizator pretvara analognu sliku
Segmentacija slike u digitalne podatke, koji se pohranjuju
u memoriju računala (mnoge kamere
su već digitalne)
Lociranje predmeta neuspješno
¤ Digitalnu sliku moguće je obrađivati u
uspješno
svrhu prepoznavanja željenih oblika
¤ Proces pronalaženja i pomicanja
Pomaci predmeta
željenih predmeta temelji se na točno
* dostatno izvesti jedanput utvrđenom slijedu operacija (slika).

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Optički senzori - kamere


CCD (engl. Charged Coupled Device) kamera
Količina naboja ovisi o intenzitetu svjetla
– svaki piksel ima svoj mjerljivi intenzitet Svjetlosne zrake

Zbog nesavršenosti optike javlja se efekt izobličenja prostora (piksel


nema istu dimenziju u svim dijelovima slike Æ pogreške pozicije)
8
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Prikaz slike
• Dvodimenzionalna slika
• Intenzitet svjetla koji odgovara točki u k-tom retku i j-tom stupcu je srednja
vrijednost intenziteta na tom djeliću slike
Δx Δy
∫ ∫ i[ ( k − 1) Δx + x, ( j − 1) Δy + y]dydx
I a ( k , j) = 0 0
ΔxΔy
• Diskretizacija slike po x i y Æ rezolucija m x n točaka
• Kvantizacija intenziteta na b bita (2b nijansi sivog)
• Rezolucija 1024 x 1024 uz 256 nijansi Æ 1Mb (rade se kompresije slike)
• Mjestimične nagle promjene intenziteta u nekom području slike ujednačenog
intenziteta najčešće predstavljaju šum u slici.
• Izvlačenje korisne informacije iz slike Æ potrebna je obrada slike
• U robotici se primjenjuju isti algoritmi kao i u računalnoj grafici Æ
glavni problem je uvijek brzina izvođenja algoritama za obradu slike

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Algoritmi za obradu slike


• Filtriranje slike (potrebno da se dobiju bolji rezultati obrade slike)
• Linearni i nelinearni filtri Æ Konvolucija u 2D
I a (k , j ) =ˆ ∑∑ h ( k − u, j − v )I a (u, v)
u v
• gdje je Ia(u,v) – ulazni signal, Ia(k,j) – izlazni signal, a h(u,v) je filter koji djeluje
na dijelu slike dimenzija u x v Æ h(u,v) je svuda 0 osim u danom području
slike
• Filter za zamućivanje slike (engl. blur) – kupi srednju vrijednost okolnih
piksela Æ dimenzija filtriranog područja slike ima neparan broj piksela
1
I a (k , j ) = {I a (u − 1, v − 1) + I a (u, v − 1) + I a (u + 1, v − 1) + ... + I a (u + 1, v + 1)}
9
• Može se zapisati kao funkcija i kao matrica:
⎧1 ⎡1 1 1⎤
ako − 1 ≤ u, v ≤ 1 1⎢
1⎪
h(u, v) = ⎨ 9 h(u, v) = ⎢1 1 1⎥⎥
9⎪ 9
• ⎩0 inače ⎢⎣1 1 1⎥⎦
10
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Algoritmi za obradu slike


• Filtriranje šuma u slici
• Linearni filtar za zamućivanje - usrednjavanje intenziteta (rezultat je
srednja vrijednost na filtriranom području slike)
• Nelinearni median filtar za usrednjavanje intenziteta (rezultat je
srednja u nizu vrijednosti na filtriranom području slike)
• yÆ Srednja vrijednost
⎡1 1 1⎤ ⎡15 18 21⎤
22 21 20 20 23 1
• x I sr = ⎢⎢1 1 1⎥⎥ ⎢⎢17 50 24 ⎥⎥ = 24
20 15 18 21 22 9
Æ

⎢⎣1 1 1⎥⎦ ⎢⎣ 22 23 26 ⎥⎦
• 20 17 50 24 25 Srednja u nizu vrijednosti
21 22 23 26 26 ⎧15,17,18, 21, 22, ⎫
I sr = median ⎨ ⎬ = 22
⎩ 23, 24, 26,50 ⎭
• Rezultat median filtriranja Æ robusnija srednja vrijednost i ova
operacija ne stvara nove vrijednosti intenziteta u slici
11

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Uspoređivanje uzoraka
• Zadatak: Utvrditi da li dani predmet pripada određenoj grupi
predmeta (ovi se predmeti stavljaju jedan po jedan pred kameru,
snimaju i pohranjuju u biblioteku predmeta):

LIB = {Ti(k,j):1 ≤ k ≤ m0, 1 ≤ j ≤ n0,1 ≤ i ≤ N}.


Ti(k,j) – i-ti reprezentativni uzorak

k 0 4 0
3 0 5
Æ

Uzorak romba 3x3 (malo svjetliji s desna)


0 4 0

12
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Postupak pretraživanja slike


• Pretraživanje slike s lijeva na desno od vrha prema dnu slike
• Translacija uzorka se kreće po koordinatama:
0 ≤ x ≤ m - m0 i 0 ≤ y ≤ n - n0, gdje su m0 i n0 dimenzije uzorka
• Za svaku translaciju računa se razlika između slike I (k,j) i
uzorka Ti(k,j) prema formuli:

m0 n 0
ρ i ( x, y) = ∑ ∑ I( k + x, j + y) − Ti ( k , j) ,1≤i≤N
k =1j=1
• Vidimo da je ρi(x,y) ≥ 0 te ako je uzorak Ti(k,j) nađen onda je
ρi(x,y) = 0. Pronalaskom uzorka utvrđena je i njegova pozicija.

13

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Algoritam usporedbe uzoraka


• Jednostavan algoritam usporedbe uzoraka glasi:

1. i = 0, x = 0, y = 0, ε > 0, nađen = istina.


2. izračunaj ρi(x,y) prema formuli (3).
3. ako je ρi(x,y) ≤ ε, stop.
4. x = x + 1. Ako je x ≤ m - m0, idi na 2. korak.
5. x = 0, y = y + 1. Ako je y ≤ n - n0, idi na 2. korak.
6. x = 0, y = 0, i = i + 1. Ako je i ≤ N, idi na 2. korak.
7. nađen = laž.

14
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Primjer 1. Uspoređivanje uzoraka


• Zadatak: U donjoj slici dimenzije 4 × 5 potrebno je pronaći romb
sa str. 7. yÆ jÆ
x 2 1 0 0 3 0 4 0
k
0 0 5 0 0
Æ

3 0 5

Æ
0 4 0 6 0
0 4 0
1 0 5 0 0

• U ovom primjeru moguće translacije su: 0 ≤ x ≤ 1 i 0 ≤ y ≤ 2.


Računamo jednadžbu (3):
• ρ(0,0) = 8, ρ(0,1) = 32, ρ(0,2) = 16,
• ρ(1,0) = 30, ρ(1,1) = 4, ρ(1,2) = 32.
• Vidimo da je najbolje preklapanje ρ(1,1) = 4, ali pošto je ρ(1,1) > 0
onda nije idealno.
15

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Primjer 1. Uspoređivanje uzoraka


• Preklapanje Æ slike koje se uspoređuju moraju imati jednake srednje
intenzitete: 1/ 2 1/ 2
⎡ m0 n 0 2 ⎤ ⎡ m0 n 0 2 ⎤
Ti = ⎢ ∑ ∑ Ti ( k , j) ⎥ I x ,y = ⎢ ∑ ∑ I ( k + x, j + y) ⎥
⎢⎣ k =1j=1 ⎥⎦ ⎢⎣ k =1j=1 ⎥⎦
• Osjetljivost na promjene pozadinskog svijetla može se ukloniti
normiranom međukorelacijskom funkcijom:
m0 n0

∑∑ I (k + x, j + y)T (k , j )
k =1 j =1
i

σ i ( x, y ) =ˆ
I x , y ⋅ Ti
• Računamo li vrijednosti normirane međukorelacijske funkcije za
primjer 1. dobit ćemo slijedeće vrijednosti:
• σ(0,0) = 0.817, σ(0,1) = 0.000, σ(0,2) = 0.557, σ(1,0) = 0.000, σ(1,1) =
0.999, σ(1,2) = 0.000 Æ σ(1,1) – najbolje poklapanje
• Mane: osjetljivost na rotacije, skaliranja, promjene perspektive i
varijacije uzoraka
16
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Detekcija rubova
• Ako su stranice objekta u slici glatke, homogene i neprozirne, te ako je
svjetlo uniformno i bez sjena, intenzitet svjetla se naglo mijenja samo
na rubovima Æ gradijent ∇i(x,y) je na tim mjestima vrlo velik.
• Gradijent ∇i(x,y) jednostavna je 1×2 Jacobian matrica parcijalnih
derivacija od i(x, y) po x-u i y-u (uvažiti odnos ρ xy =ˆ Δx / Δy ).
⎡ ∂I (k , j ) ∂I (k , j ) ⎤ yÆ
∇I ( k , j ) = ⎢
⎣ ∂x ∂y ⎥⎦ x I(k-1, j-1) I(k-1, j) I(k-1, j+1)

Æ
∇I ( k , j ) = ∇ I ( k , j ) + ∇ I ( k , j )
1
2 2
2
I(k, j-1) I(k, j) I(k, j+1)
∂I (k , j ) ∂I (k , j )
Približna vrijednost: ∇I (k , j ) ≈ + I(k+1, j-1) I(k+1, j) I(k+1, j+1)
∂x ∂y
Približna vrijednost parcijalne derivacije:
∂I (k , j )
≈ I (k + 1, j ) − I (k − 1, j )
∂x
17

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Algoritam detekcije rubova


• Koraci u algoritmu detekcije rubova:
1. k = 1, j = 1, ε > 0.
2. Izračunaj ∇I( k , j) .
3. Ako je ∇I( k , j) ≥ ε, L(k,j) = 1; inače L(k, j) = 0;
4. j = j + 1, ako je j < n idi na korak 2.
5. L(k,n) = 0. rub slike
6. j = 1, k = k + 1, ako je k < m idi na korak 2.
7. For j = 1 to n, L(m, j) = 0. rub slike

Slika s nijansama sive boje I(k, j) Æ binarna slika L(k, j) gdje su s 1


označene rubne točke – ključni parametar ε
18
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Funkcija raspodjele rubnih točaka


Rub se nalazi na točki (k, j) ako je veličina veća od ε > 0 (određuje se
empirijski) - ε mora biti dovoljno mali da pokupi sve rubove, ali i dovoljno
velik da se izbjegnu lažni rubovi
m−1 n −1
N(ε)
N ( ε ) = ∑ ∑ L( k , j)
k = j j=1
• Rubne točke možemo
nadopuniti ravnim linijama,
njihova sjecišta daju skup od M
pravi rubovi
vrhova
• Ako je objekt poliedar, tada je
on u potpunosti određen svojim
lažni rubovi isprekidani rubovi vrhovima
• Originalna informacija od m x n
ε1 ε2
točaka reducira se na 2M
0 ε cjelobrojnih koordinata
19

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Sobelov filter za detekciju rubova


• Detektor ruba s neznatnim izglađivanjem slike
• Filter predstavlja približnu vrijednost parcijalne derivacije
intenziteta u smjeru x i smjeru y
• Vertikalni rubovi Horizontalni rubovi Bolja rot. svojstva
⎡ −1 0 1 ⎤ ⎡1 2 1⎤ ⎡ +3 +10 +3⎤
∂ ⎢ ∂ ⎢ ∂ ⎢
≈ ⎢ −2 0 2 ⎥⎥ , ≈ ⎢ 0 0 0 ⎥⎥ ≈⎢0 0 0 ⎥⎥
∂x ∂y ∂y
⎢⎣ −1 0 1 ⎥⎦ ⎢⎣ −1 −2 −1⎥⎦ ⎢⎣ −3 −10 −3⎥⎦

• Nelinearan filter
– ako se koriste kvadrati i korijen (točniji proračun)
– ako se koriste apsolutne vrijednosti (brži proračun)
• Smjer gradijenta: Θ = arctan ∂I (k , j ) / ∂y Θ=0 za okomiti rub koji
∂I (k , j ) / ∂x je tamniji s lijeve strane
20
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Detekcija oblika pomoću Houghove


transformacije (detekcija rubova)
• Metoda za obradu binarne slike koja u slici pronalazi
matematički opisive oblike (pravce, kružnice, elipse i dr.)
• Detekcija pravaca (rubova)
y = ax + b
– Zamišljamo da se svaka točka u slici može nalaziti na nekom
pravcu, a i da beskonačno pravaca može prolaziti kroz tu
točku
– Također se više točaka može nalaziti na istom pravcu Æ
zamišljamo da svaka točka čije koordinate zadovoljavaju
jednadžbu pravca predstavlja jedan glas za taj pravac – tada
je taj pravac zastupljeniji u slici što je više njegovih glasova

21

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Parametarski oblik pravca


– Problem nastaje kad je pravac okomit jer tada su a i b u
jednadžbi pravca beskonačnog iznosa – potreban je drugačiji
zapis pravca s parametrima koji su ograničeni:
cos θ ρ
y=− x+
sin θ sin θ
– ρ predstavlja udaljenost od ishodišta do pravca duž okomice
na pravac, a θ predstavlja kut koji vektor ρ zatvara s x osi.
– Svaki pravac je predstavljen s jedinstvenim parom (ρ, θ) –
točkom u parametarskom prostoru (tzv. Houghovom prostoru)
ρ = x cos θ + y sin θ
D – dijagonala slike
θ ∈ [ 0, π ] , ρ ∈ [ − D, D ]
Svaka točka ima svoju sinusoidalnu krivulju, i
ako točke leže na istom pravcu, njihove
krivulje se sijeku u istoj točki (ρ, θ)

22
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Implementacija Houghove transformacije


• Rezultati Houghove transformacije za svaki piksel u slici spremaju
se u matricu koja se naziva akumulator – dimenzije akumulatora su
ρ i θ, a vrijednosti zapisane u matricu odgovaraju broju točaka s
istim (ρ, θ), tj. broju glasova za isti pravac na slici

Najzastupljenije su horizontalne linije (θ=90o)


23

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Algoritam Houghove transformacije


• Koraci u algoritmu:
1. Učitaj sliku i nađi rubove u slici.
2. Za svaku točku (x,y) na slici
3. ako točka leži na rubu
4. za sve vrijednosti kuta θ
5. izračunaj ρ za točku (x,y) i θ za točku (x,y)
6. povećaj za jedan vrijednost u akumulatoru
7. Pronađi najveće vrijednosti u akumulatoru
8. Nacrtaj pravce s najvećim vrijednostima u akumulatoru
Detekcija kružnica: Isti postupak samo što se za savku točku na
kružnici pojavljuje polumjer kružnice kao dodatni parametar (x,y,r).
Rezultat se sprema u Houghov prostor Æ trodimenzionalan akumulator

24
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Analiza likova
• Ako predmeti koje treba ispitati nisu poliedričkog oblika tada
treba drugačiji pristup – rubovi mogu biti neke krivulje
• Opis linija
– Umjesto da pamtimo niz koordinata koje čine liniju, možemo
upamtiti prvu koordinatu i inkrementalne promjene potrebne za
generiranje uzastopnih točaka na krivulji. Ova metoda naziva se
lančano kodiranje

3 2 1
4 p 0 Lančani kod susjednih točaka točke p
5 6 7

25

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Primjer: Lančano kodiranje

0000000000000000000
0000000000000000000 Početna točka
0000000001111000000
0000000010000110000
0001111100000001000
0010000001100000100
0001111110011111000
0000000000000000000
0000000000000000000

Počnemo li graditi lančani kôd od najviše desne točke prema susjednim


točkama u obrnutom smjeru od kazaljke na satu tada lančani kôd glasi:
a = [3, 3, 4, 3, 4, 4, 4, 5, 5, 4, 4, 4, 4, 5, 7, 0, 0, 0, 0, 0, 1, 0, 7, 0, 0, 0, 0, 1]T.

26
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Kodiranje slike brojanjem istovrsnih točaka


Binarna slika dimenzije m x n
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 x 18 točaka = 216 točaka
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (bitova) = 27 x 8 bitova = 27
0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0
bajtova
0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0
Princip kodiranja: Spremamo
0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 0 0 0
0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 prvu točku i broj koliko se puta za
0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 0 0 redom pojavila te ponavljamo
0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 postupak
0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 Kod za sliku lijevo:
0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 Γ= [0, 44, 6, 10, 9, 7, 4, 3, 4, 5, 5,
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5, 3, 7, 5, 1, 5, 8, 9, 12, 3, 16, 1,
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
44]T
Kodirana slika ima 24 bajta (da
nema rupe bilo bi znatno manje)

27

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Opis ograđenih područja pomoću



momenata
x 0000000000000000000000 •Binarna slika
0000000000000000000000 •Područje R (može
Æ

0000000011111100000000 sadržavati rupe)


0000001111111110000000 •Jedinice Æ objekt
0000111100011110000000 •Nule Æ pozadina
0011111000001110000000
0000111110111111110000 R se može opisati
0000011111111111111000 nizom brojeva {mkj}
0000000000000001111000 koji karakterizaju oblik
područja, a nazivamo
0000000000000000000000
ih momentima od R
0000000000000000000000

28
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Definicija momenta područja R

• Neka (x, y) predstavlja redak i stupac točke s težinom 1 u


području R. Tada se momenti od R definiraju na sljedeći način:

m kj = ∑ xky j k ≥ 0, j ≥ 0.
( x ,y )∈R

• Neka su {mkj} momenti od R, neka se R sastoji od A točaka i


neka je {xc, yc} središte od R. Tada vrijedi:

A = moo
xc = m10 / m00
yc = m01 / m00

29

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Primjer: Određivanje momenata


• Zadatak: Izračunati momente za ovaj predmet
yÆ Prema definiciji možemo izračunati
1 10 momente:
1 0000000000 m00 = 9,
0000000000 m01 = 45, m10 = 36,
m02 = 255, m11 = 192, m20 = 150.
x 0111000000
0001110000 Sada možemo izračunati:
Æ

0000011100 A = moo = 9
xc = m10 / m00 = 4
6 0000000000 yc = m01 / m00 = 5

Dobiveni momenti ovise o (xc, yc)


30
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Određivanje centralnog momenta


• Definicija centralnog momenta. Neka (xc, yc) predstavlja centar
područja R, i neka (x, y) predstavlja redak i stupac točke u
području R. Tada se centralni momenti definiraju na slijedeći
način:
μ kj = ∑ ( x − x c ) k ( y − y c ) j k ≥ 0, j ≥ 0.
( x ,y )∈R

• Pokazuje se da se translacijom R-a ne mijenja centralni moment


R-a. Odnosno, za svaki R biti će μ10 = 0 i μ01 = 0.
• Za dani primjer R-a izračunati su centralni momenti:
μ00 = 9, μ01 = 0, μ10 = 0, μ02 = 30, μ11 = 12, μ20 = 6.
• Momenti μ02 i μ20 predstavljaju momente inercije, a μ11 je
moment produkta

31

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Invarijantni centralni momenti


• Hu (1962) je pronašao kombinacje centralnih
momenata koji su invarijantni s obzirom na rotacije:

M 1 = μ20 + μ02
M 2 = ( μ20 − μ02 ) + 4 μ112
2

M 3 = ( μ30 − 3μ12 ) + ( 3μ21 − μ03 )


2 2

M 4 = ( μ30 + μ12 ) + ( μ21 + μ03 )


2 2

32
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Određivanje normiranog centralnog


momenta

• Neka je {μkj} centralni moment od R. Tada se normirani centralni


moment definira na sljedeći način:
μ kj
ν kj = k ≥ 0, j ≥ 0.
μ (00k + j+ 2)/2
• Pokazuje se da se normirani centralni moment ne mijenja
skaliranjem područja R.

33

Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike


Zavod za automatiku i računalno inženjerstvo Predavanja

Kut otklona (orijentacije) predmeta


• Kutom otklona može se postići neovisnost
područja R na rotacije. yc y
0
• Definicija kuta otklona: Neka je {μkj}
centralni moment od R. Tada se kut otklona
definira na sljedeći način: 111
1 β 11111
φ = a tan 2(2μ 11 , μ 20 − μ 02 ) 1111111
2 xc 1111111 R
• Fizička interpretacija načelnog kuta vezana 111111
je uz os L(β) prikazanu na slici 12. Moment 11111
111
inercije područja R oko osi L(β) ovisiti će o
kutu β. Kut kod kojeg je moment inercije x
najmanji je kut otklona i iznosi β = φ. Slijedi
da je kut otklona dobro definiran za
izdužene objekte, a neodređen za kružne
oblike.

34
Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva Praktikum robotike
Zavod za automatiku i računalno inženjerstvo Predavanja

Primjer: Određivanje kuta otklona

• Zadatak: Treba izračunati kut otklona za zadani predmet.

1 yÆ 10 μ02 = 30, μ11 = 12, μ20 = 6.


1 0000000000
a tan 2(24,−24) 3π
0000000000 φ= = = 67.5°
2 8
x 0111000000
0001110000 Za kut otklona φ, možemo prvo
translatirati R za (-xc, -yc), a zatim
0000011100 rotirati R za kut -φ. Tada će normirani
0000000000 momenti biti neovisni o translacijama,
6 rotacijama i skaliranjima.

35

You might also like