Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Strojni vid pri tehnoloških
meritvah
• kakšne vrste slik poznamo
• pomen in nekaj primerov
• EM spekter
• aplikacije v posameznih delih
spektra
• o matriki slike
nastanek slike
nastanek slike
refleksija emisija transmisija
VPRAŠANJE: način nastanka slike; skiciraj zgled in navedi tipični zgled
kdaj se svetloba sploh siplje
Dr/2
Slika je fizikalna količina, ki je izmerjena
kot funkcija pozicije (koordinat):
•intenziteta sevanja; žarki-x, UV, IR,
vidna svetloba
•akustično valovanje
•višina površine: radar, sonar,
triangulacija, tipalno vzorčenje
2-D slika f(x,y)
•projekcija 3D scene na 2D senzor
3-D slika: f(x,y,z)
•CT: Computerized tomography
•MRI: Magnetic Resonance Imaging
•optično vzorčenje v konfokalni
mikroskopiji
•seizmične slike po obdelavi
kristal germanija
EM spekter
The standard charge is £10 for each day. Enforcement is primarily based on automatic number plate recognition (ANPR). Transport for London (TfL) is responsible for the charge which has been operated by IBM since 1 November 2009.
Congestion charge CCTV cameras on Vauxhall Bridge Road
Aplikacije v vidnem delu spektra
meritev prstnih
odtisov
kontrola bankovcev
avtomatska kontrola
tablic
Röntgen
MRI emisijska slika
emisijske slike
IR spekter
gama kamera PET
Pozitronska Emisijska Tomografija
http://en.wikipedia.org/wiki/Positron_emission_tomography
CFRP integrity evaluation methods
Inspection by means of IR thermography
CFRP integrity evaluation methods
Inspection by means of IR thermography
A: a surface profile across the pierced hole
B: thermographic image of the same workpiece
konfokalna mikroskopija
geofizikalno slikanje
Napoved za rast tržišča aplikacij
strojnega gledanja v Evropi 2001-
2011
Source: MarketsandMarkets
100 200 300 400 500 600 700 800 900 1000
100
200
300
400
500
600
700
800
900
37
1 2
34
50 100 150 200 250 300
50
100
150
200
primeri
primeri iz LAT
primeri iz LAT
ločevanje med grčami in sivinami, ki so posledica
obdelave je v tem primeru narejeno z nevronsko mrežo
pogoji osvetlitve
napake leče
ločljivost
osvetlitev bistveno
vpliva na
zajem oblike
predmeta
vir: E4242-QuickImage_mitutoyo.pdf
http://www.edmundoptics.com/technical-resources-center/imaging/telecentricity-and-telecentric-lenses-in-machine-vision/
običajne leče
telecentrične
leče
digitalizacija
dimenzija matrike slike
dimenzija matrike slike
matrika slike
nadaljevanje
1. iskanje vzorcev
2. histogram slike
3. binarizacija slike
4. robovi
5. razpoznavanje objektov
zajem oblike
predmeta
splošno-posebno & posebno splošno
diagonalna črta
ali
vertikalna črta
Ena od rešitev problematike je
oponašanje človekovega vida
Podobno kot na fotografiji: resolucija slike na
mrežnici ni enakomerna.
Le centralni del mrežnice zagotavlja dobro
resolucijo, zato svet okrog sebe vidimo s
premikanjem oči.
ISKANI VZOREC
Zgled za iskanje vzorca na objektu
OBJEKT
50 100 150 200 250 300 350 400 450 500
50
100
150
200
250
300
Tudi za štetje kot najpreprostejšo obliko
meritev naša čutila niso vedno ustrezna.
Kaj pa strojni vid?
Postopek iskanja sl=imread('slon.tif','tif');
ob=imread('noga.tif','tif');
rezult = normxcorr2(sl,ob);
figure(1); imagesc(rezult);
[yn,xn]=find(rez>0.4);
figure(2);imagesc(sl);hold on;
colormap gray
plot(xn-35,yn-21,'r.')
50 100 150 200 250 300 350 400 450 500 550
50
100
150
200
250
300
350
-0.2
0
0.2
0.4
0.6
0.8
50 100 150 200 250 300 350 400 450 500
50
100
150
200
250
300
335x507 42x71
376x577
a=round(256*rand(7,7))
b=a(3:5,3:5)
b=b+0*rand(size(b))
rezult = normxcorr2(b,a)
imagesc(rezult)
1 2 3 4 5 6 7 8 9
1
2
3
4
5
6
7
8
9 -0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
a=round(256*rand(7,7))
b=a(3:5,3:5)
b=b+21*rand(size(b))
rezult = normxcorr2(b,a)
imagesc(rezult)
1 2 3 4 5 6 7 8 9
1
2
3
4
5
6
7
8
9
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
8 10 12 14 16 18 20 22145
150
155
160
165
170
175
180
185
100 200 300
50
100
150
200
250
300
350
-0.4
-0.2
0
0.2
0.4
0.6
0.8
50 100 150 200 250 300
50
100
150
200
10 20 30
20
40
60
80
100
120
50 100 150 200 250 300
50
100
150
200
-0.4
-0.2
0
0.2
0.4
0.6
0.8
sledenje pozicije glave pri awj rezanju:
8 10 12 14 16 18 20 22145
150
155
160
165
170
175
180
185
INDEX OF IMAGE SEQUENCE
PO
SIT
ION
OF
CU
TT
ING
HE
AD
[pix
els
]
10 20 30
20
40
60
80
100
120
50 100 150 200 250 300
50
100
150
200
295
300
305
310
315
320
325
330
335
340
345[oK] 10 20 30 40 50 60
5
10
15
20
25
30
*
10 15 20 25 30 35 40 45 50
5
10
15
20
25
30
križna korelacija
-2
-1
0
1
2
x 10-3
-0.1
-0.05
0
0.05
0.1
-1
0
1
2
3
4
5
koef3
koef1koef2
-1.5
-1
-0.5
0
0.5
1
1.5
2
x 10-3
-0.08-0.06-0.04-0.0200.020.040.06
-5
0
5
koef3
koef2
koef1
5 10 15 20 25 30 35 40 45 50
5
10
15
20
25
30
5 10 15 20 25 30 35 40 45 50
5
10
15
20
25
30
37
1 2
34
50 100 150 200 250 300
50
100
150
200
-0.015
-0.01
-0.005
0
0.005
0.01 -0.4
-0.2
0
0.2
0.40
20
40
60
koef3
koef1koef2
prilag2 = polyfit(z,x,2);
logpred2 = polyval(prilag2,z);
prilag2 = polyfit(z,log(x),2);
logpred2 = exp(polyval(prilag2,z));
-2
-1
0
1
2
x 10-3
-0.1
-0.05
0
0.05
0.1
-1
0
1
2
3
4
5
koef3
koef1koef2
bolje tako
-0.3 -0.25 -0.2 -0.15 -0.1 -0.05 0 0.05 0.10
10
20
30
40
50
60
koeficient - k
koeficie
nt
- n
prilag2 = polyfit(z,x,1);
logpred2 = polyval(prilag2,z);
0 0.5 1 1.5 2 2.5 3 3.5 4-0.4
-0.35
-0.3
-0.25
-0.2
-0.15
-0.1
-0.05
0
0.05
0.1
A
B
C
histogram slike
100 200 300 400 500 600
50
100
150
200
250
300
350
400
450
500
550
>> sl=imread('v1B.tif');
>> imagesc(sl)
0 50 100 150 200 250
0
1000
2000
3000
4000
5000
6000
7000
8000
>> imhist(sl(:,:,1))
128/256=0.5
binarizacija slike & robovi
>> sl2=im2bw(sl(:,:,1),0.5);
>> imagesc(sl2); colormap gray
100 200 300 400 500 600
50
100
150
200
250
300
350
400
450
500
550
>> slr=bwperim(sl2);
>> imagesc(slr)
100 200 300 400 500 600
50
100
150
200
250
300
350
400
450
500
550
razpoznavanje objektov
>> slob=bwlabel(sl2,4);
>> imagesc(slob);
>> slob(483:2:517, 539:2:570) ans =
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1
0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1
0 0 0 0 0 0 1 0 0 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
100 200 300 400 500 600
50
100
150
200
250
300
350
400
450
500
550
histogram slike
>> sl=imread('zrna.jpg','jpg');
>> [slI, sznm]=rgb2ind(sl);
>> slg=ind2gray(slI,sznm); imagesc(slg);
>> slE=histeq(slg); imagesc(slg);
binarizacija Et=graythresh(slE)
sl2E=im2bw(slE,Et);
imagesc(sl2E)
segmentacija slL=bwlabel(sl2G,4);
imagesc(slL); colormap jet
%% branje slike in prikaz
sl=imread('kv_orig.jpg');
figure(1); imagesc(sl);
colormap gray
%% odebelitev crt
se = strel('square',7);
sl1 = imerode(sl,se);
figure(2); imagesc(sl1);
colormap gray
sl1_bw=im2bw(sl1,0.5);
50 100 150 200 250
50
100
150
200
250
50 100 150 200 250
50
100
150
200
250
% abstrakcija na crte - drugic
sl3= bwmorph(sl1_bw,'thin',inf);
figure(4); imagesc(sl3); colormap
gray
% abstrakcija na crte - prvic
sl2= bwmorph(sl1_bw,'remove',inf);
figure(3); imagesc(sl2); colormap
gray
50 100 150 200 250
50
100
150
200
250
50 100 150 200 250
50
100
150
200
250
50 100 150 200 250
50
100
150
200
250
%% stanjsanje crt
se = strel('square',7);
sl11 = imdilate(sl,se);
figure(5); imagesc(sl11);
colormap gray
sl11_bw=im2bw(sl11,0.5);
%% branje slike in prikaz
sl=imread('kv_orig.jpg');
figure(1); imagesc(sl);
colormap gray
50 100 150 200 250
50
100
150
200
250
50 100 150 200 250
50
100
150
200
250
% abstrakcija na crte – 2/2
sl33= bwmorph(sl11_bw,'thin',5);
figure(7); imagesc(sl33);
colormap gray
50 100 150 200 250
50
100
150
200
250
% abstrakcija na crte – 2/1
sl22= bwmorph(sl11_bw,'remove',5);
figure(6); imagesc(sl22); colormap
gray
50 100 150 200 250
50
100
150
200
250
50 100 150 200 250
50
100
150
200
250
POVRŠINA
TEKSTURA
ODBOJ
texture is defined as an ensemble of repetitive sub-patterns, which
follow a set of well defined placement rules. These sub-patterns
themselves are made up of more fundamental units called primitives. A
primitive is a connected set of pixels, characterised by a set of attributes.
P. Brodatz. Textures: A Photographic Album for
Artists and Designers. Dover, New York, 1966.
macro texture
micro texture
significant
directionality
LBM TURNING EDM AWJ
PROCESS
SCHEME
MICRO – METER
SCALE
MILIMMETER
SCALE
ROUGHNESS
PROFILE 0 0.5 1 1.5 2 2.5 3 3.5 4
164
166
168
170
172
174
176
178
0 500 1000 1500 2000 2500 3000 3500-8
-6
-4
-2
0
2
4
6
8
10
0 500 1000 1500 2000 2500 3000 3500-40
-30
-20
-10
0
10
20
30
0 500 1000 1500 2000 2500 3000 3500-20
-15
-10
-5
0
5
10
15
20
va
B
C
c
(LBM)
E=h. n
m
(EDM)
m
U
t
+
e -
(AWJM)
m
computer controlled light emitting
diodes, illuminating the measured
surface with angle f selective from
12.8o to 77.4o in regular steps
EXPERIMENTAL SETUP
specimen
stepper
motor f = 38.6o
f = 64.3o
image histogram
Face turned tool steel, illuminated
by the LED light (a, b) and
corresponding grey level
histograms (c, d). Illumination with
an angle of incidence f: 25.7o (a)
and 64.3o (b).
Electrodischarge machined tool
steel, illuminated by the LED light
(a, b) and corresponding grey
level histograms (c, d).
Illumination with an angle of
incidence f: 25.7o (a) and 64.3o
(b).
100 200 300 400 500 600
50
100
150
200
250
300
350
50 100 150 200 250 300 350
50
100
150
200
250
300
350
100 200 300 400 500 600
50
100
150
200
250
300
350
50 100 150 200 250 300 350
50
100
150
200
250
300
350
100 200 300 400 500 600 700
100
200
300
400
500
600
700
100 200 300 400 500 600 700
100
200
300
400
500
600
700
obravnava v frekvenčnem prostoru
100 200 300 400 500 600
100
200
300
400
500
600
700
800
900
1000250 300 350 400 450
300
350
400
450
500
550
600
650
700
DSC02436
obravnava v frekvenčnem prostoru
100 200 300 400 500 600 700
100
200
300
400
500
600
700
250 300 350 400 450 500
250
300
350
400
450
obravnava v
frekvenčnem
prostoru
osnovna načina sipanja svetlobe na površinah
zrcalni odboj difuzni odboj
Michael Oren and Shree K. Nayar Generalization of the Lambertian model and Implications for Machine Vision
dAdaλ2
upoštevati je potrebno
hrapavost površine. Vsak
element je že morda
izotropni sevalec,
vendar se zadeva zaplete
kadar je v zornem polju
več elementov.
Taksonomija metod za
zajem 3D oblik
• pasivne metode
• aktivne metode:
• I.) zajem z dotikom
objekta (CCM)
• II.) brezkontaktne
optične - metode
(trigonometrija)
Triangulacija
Rasterski in vektorski
režim
selektiven izbor površine
Problemi pri triangulacijskem
postopku
• kalibracija in natančnost
merilne opreme,
• geometrijska dostopnost,
• okluzija oziroma
prekrivanje,
• večje število pogledov
(seštevanje napak),
• laserska pegavost ,
• difuzija svetlobe na
površini (potrebna uporaba
spreja)
• šum in pomakljivi podatki
(motnje iz okolice)
METODA 1
• oddelek LABOD
• dotikalna
metoda (CCM)
• referenčni
model
• deklarirana
točnost
znotraj 0.005
mm
• željena
točnost: +/-
0.5 mm
UGOTOVITVE
• trajanje
skeniranja 5ur
• 800 000 točk
• neobčutljiv na
motnje iz
okolice
• omejen volumen
zajema – metoda
ni primerna za
oklepe
• oddelek LAT
• Hajfajst x-
y osi
• nastavek z-
os
• uporaba
rdečega
filtra
METODA 2
• 40 ur za zajem
• 61 trakov
• površina iz 20
000 slik
• ZScanner 700
• podjetje IB-ProCad
• teža 1 kg
• cena 16 000 €
• stereokamera
• natančnost do 0,05
mm
• 20 minut dela
• srednje nastavitve
-
28 000 točk
METODA 3
• CCM – triangulacija
• odstopanje > 0,5 mm
• neomejen volumen
zajema
• enostavno rokovanje
in uporaba paketa
• DAVID laserscanner
• preprosta izvedba
• hitro do prvih
rezultatov
• šum površine
• hobi (3D animacije)
METODA 4
Strojni vid v industriji
Pogled na merilna mesta naprave za avtomatsko optično kontrolo
izdelkov, 6 merilnih mest, 6 kamer, pnevmatski transport, cikel
stroja manjši od 1.2 sek. (vključno z vsemi mehanskimi gibi).
Radiometric Definitions
direction viewingφ,θv ii
dA
φ,θdΦφ,θE ii
ii
direction sourcelight φ,θs ii
rr
iirrriirrr
dωθ cosdA
φ,θ;φ,θdΦφ,θ;φ,θL
ii
iirrriirrr
φ,θdE
φ,θ;φ,θdLφ,θ;φ,θf
Irradiance
Radiance
BDRF
Flowchart
Photographs
Geometric model
Forward
Rendering
Algorithm
Lighting
BRDF
Rendering
Flowchart
Photographs
Geometric model
Forward
Rendering
Algorithm BRDF
Novel lighting
Rendering
Reflectance modeling (diff
+specular texture)
Input Synthesized
Sato, Wheeler, Ikeuchi 97
a= 4 m=4
50 100 150
20
40
60
80
100
120 20
40
60
80
100
120
140
160
100 200 300 400 500 600
100
200
300
400
Dsc02439
200 400 600
100
200
300
400
500
600
700
800
900
1000
a= 4 m=4
50 100 150
50
100
150
200
250
20
40
60
80
100
120
140
160
0 50 100 150 2000
2000
4000
6000
8000
10000
50 100 150 200 250
20
25
30
35
Dsc02439
0 50 100 150 2000
500
1000
1500
2000
2500
3000
3500
4000
20 40 60 80 100 120 140 160 180 200
15
20
25
30
35
200 400 600
100
200
300
400
500
600
700
800
900
1000
a= 5 m=9
20 40 60 80 100 120 140
20
40
60
80
100
120
140
160
180
200
20
40
60
80
100
120
140
160
Measuring BRDFs
• A full BRDF is 4-dimensional
• Simpler measurements
(0D/1D/2D/3D) often useful
• Start with simplest, and get
more complex
Measuring Reflectance
0º/45º
Diffuse Measurement
45º/45º
Specular Measurement
Integrating Spheres
• Sphere with diffuse material
on inside
• Geometry ensures even
illumination
• More accurate measure of
diffuse reflectance
Gloss Measurements
• Standardized for applications
such as paint manufacturing
• Example: “contrast gloss” is
essentially ratio of specular
to diffuse
• “Sheen” is specular
measurement at 85°
Gloss Measuements
• “Haze” and “distinctness of
image” are measurements of
width of specular peak
BRDF Measurements
• Next step up in complexity:
measure BRDF in plane of
incidence (1- or 2-D)
Gonioreflectometers
Three degrees of freedom spread among
light source, detector, and/or sample
Gonioreflectometers
Three degrees of freedom spread among light source, detector, and/or sample
Image-Based BRDF
Measurement
• Reduce acquisition time by
obtaining larger (e.g. 2-D)
slices of BRDF at once
• Idea: Camera can acquire 2D
image
• Requires mapping of angles of
light to camera pixels
Marschner’s Image-Based BRDF
Measurement • For uniform BRDF, capture 2-D
slice corresponding to variations
in normals
Marschner’s Image-Based
BRDF Measurement
Any object with known geometry
vir: Advanced Machining Processes of Metallic Materials, STR.180
PRIMER UPORABE STROJNEGA VIDA ZA
SPREMLJANJE OBRABE ORODJA
slika: Postopek skeniranja objekta, ki temelji na principu optične triangulacije