Captura imaginilor este necesară o sursă de lumină (λ: lungimea de undă a sursei) E(x, y, z, λ): lumina incidentă într-un punct (x, y, z coordonatele spațiale) fiecare punct din scenă are o funcție de reflexie r(x, y, z, λ): funcția de reflexie lumina se reflectă dintr-un punct c(x, y, z, λ) = E(x, y, z, λ) r(x, y, z, λ): lumina reflectată
Proiecție din 3D în 2D Proiecția în perspectivă obiectele aflate mai aproape de disp. de captare apar mai mari valabilă în majoritatea cazurilor (cameră, ochi uman) Proiecția ortografică obiectele au aceeași mărime independent de poziția lor față de dispozitivul de captare mai simplu După proiecție: Lumina reflectată pe planul 2D: c p (x, y, λ)
Proiecție din 3D în 2D Proiecția în perspectivă
Captura imaginilor fiecare dispozitiv de captură are o funcție de sensibilitate S(λ) S(λ) ne spune cât de sensibilă e la lungimile de undă din proiecția 2D Lumină capturată de cameră funcție imagine c cap (x, y, λ) = S(λ) c p (x, y, λ)
Captura imaginilor imagini de intensitate captate de un singur senzor (ca la bastonașe) camera color are 3 senzori cu S R (λ), S G (λ), S B (λ) sau un singur senzor cu 3 filtre de culoare (ca la conuri) 3 funcții imagine corespunzătoare componentelor R, G, B fiecare senzor/filtru propriul răspuns în f
Captura imaginilor Funcția imagine depinde de: 1. Lumina incidentă în punctul (x,y,z) din scena 3D 2. Funcția de reflexie în acel punct 3. Proiecția luminii reflectate din planul 3D în planul 2D al camerei 4. Funcția (funcțiile) de sensibilitate ale camerei
Captura color sezor unic cu diferite filtre de culoare senzori: CCD (Charge-Coupled Devices), CMOS (Complementary Metal-Oxide-Semiconductor) CFA de tip Bayer Lumină incidentă filtru senzor matrici de culoare http://en.wikipedia.org/wiki/bayer_filter
Captura color Imagine originală Ieșirea unui sezor de 120 x 80 cu filtru Bayer Ieșire cu culori corespunzătoare filtrului Bayer Imagine reconstruită prin interpolare http://en.wikipedia.org/wiki/bayer_filter
Câte niveluri de gri sunt necesare? 32 64 128 256 Imaginile de intensitate sunt de regulă cuantizate la 256 de niveluri de gri
Diferența de luminanță abia perceptibilă JND = valoarea minimă cu care trebuie schimbată luminanța pentru ca această variație să fie observabilă de către ochiul uman Legea lui Weber JND (ΔI) depinde de amplitudinea stimulului (luminanță) I = KW = constant I Pentru ochiul uman 1 2% K W
Diferența de luminanță abia perceptibilă Legea lui Fechner Percepția umană a luminanței este uniformă în domeniul log(i) 2 surse de lumină pot fi deosebite dacă răspunsul pe care îl generează diferă printr-o valoare constantă ΔR Legea lui Fechner Legea lui Weber? klog( I+ I) klog( I) = R= const. I = I const. R= klog( I)
Rata de contrast I = KW I Imax = (1 + KW ) I min Pentru KW=0,1 0,2, N=256: max min Rate de contrast uzuale: LCD cameră întunecată 1000:1 CRT 100:1 Tipăr pe hârtie 10:1 I I N 1 = 13...156
Experiment prag de vizibilitate I 1 = 100 I 2 = 101 ΔI/I1 = 1%
Experiment prag de vizibilitate I 1 = 100 I 2 = 102 ΔI/I1 = 2%
Experiment prag de vizibilitate I 1 = 200 I 2 = 201 ΔI/I1 = 0,5%
Experiment prag de vizibilitate I 1 = 200 I 2 = 202 ΔI/I1 = 1%
Experiment prag de vizibilitate I 1 = 200 I 2 = 203 ΔI/I1 = 1,5%
Experiment prag de vizibilitate I 1 = 200 I 2 = 203 ΔI/I1 = 1,5%
Caracteristica de gama Pentru majoritatea display-urilor: Iout = I γ in Pentru compensare: 1/ ( I ) γ out = Iin Exemplu: Pentru CRT: γ = 2,2 Imaginile ar trebui predistordionate Corecție 1/2,2 CRT gama=2,2
Caracteristica de gama Ixy [, ] 2,2 ([ Ixy, ]) Ixy [, ] [0,1]
Caracteristica de gama Creștere liniară a intensității fără corecție de gama Creștere liniară a intensității cu corecție de gama
Histograma imaginii Histograma = reprezentare a distribuției de culori/nuanțe de gri dintr-o imagine digitală Axa orizontală nuanțe de culoare / intensitate Axa verticală număr de pixeli cu acele nuanțe Matlab: imhist(i)
Histograma imaginii Histogramă 800 700 600 500 nr. pixeli 400 300 200 100 0 0 50 100 150 200 250 nivel de gri
Histograma imaginii Calcul histograma % varianta 1 (3x for + 1x if) h = zeros(256,1); for k = 0:255 for i = 1:N, for j = 1:M, if im(i,j) == k, h(k + 1) = h(k + 1) + 1; end end end end figure; bar(h); % varianta 2 (2x for) im = double(im); h = zeros(256,1); for i=1:m, for j=1:n, x = im(i,j); h(x+1) = h(x+1) + 1; end end % varianta 3 (1x for) h = zeros(256,1); for k = 0 : 255, h(k + 1)=sum(sum(im == k)); end
Histograma imaginii Imagine întunecată 3000 2500 nr. pixeli 2000 1500 1000 500 0 0 50 100 150 200 250 nivel de gri
Histograma imaginii Imagine de luminozitate crescută 2500 2000 nr. pixeli 1500 1000 500 0 nivel de gri 0 50 100 150 200 250
Histograma imaginii Imagine de contrast mic 1400 1200 1000 nr. pixeli 800 600 400 200 0 0 50 100 150 200 250 nivel de gri
Histograma imaginii Imagine de contrast mare (egalizare de histogramă) 900 800 700 nr. pixeli 600 500 400 300 200 100 0 nivel de gri 0 50 100 150 200 250
Idee: Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video Egalizarea de histogramă Găsirea unei transformări g= T( f) care aplicată fiecărui pixel al imaginii originale f[x,y] să producă o imagine g[x,y] cu o distribuție uniformă a nivelurilor de gri
Egalizarea de histogramă Imagine originală După egalizarea de histogramă
Egalizarea de histogramă 16000 14000 12000 10000 8000 6000 4000 2000 0 0 50 100 150 200 250 16000 14000 12000 10000 8000 6000 4000 2000 0 0 50 100 150 200 250
Egalizarea de histogramă Nivel gri ieșire Nivel gri intrare Transformare liniară pe porțiuni