Analiza și Prelucrarea Digitală a Semnalelor Video
Conf. dr. ing. Radu Ovidiu [email protected]
Ș.l. dr. ing. Cristina [email protected]
Site disciplină:www.comm.pub.ro/preda/apdsv
Analiza și Prelucrarea Digitală a Semnalelor Video
• Cap. 1 – Noţiuni de bază în prelucrarea numerica a imaginilor și semnalelor video
• Cap. 2 – Transformate pentru semnale multidimensionale• Cap. 3 – Semnale 3D analogice și numerice• Cap. 4 – Estimarea calității perceptuale a imaginilor și
semnalelor video• Cap. 5 – Analiza și estimarea mișcării în secvențele video• Cap. 6 – Segmentarea spaţială a imaginilor și cadrelor
video• Cap. 7 – Standardele de compresie video H.264 și H.265
Structura cursului
Noţiuni de bază în prelucrarea numerică a imaginilor şi
semnalelor video
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Semnal = funcție de una sau mai multe variabile independente– Exemple: s(t), s(x, y), s(x, y, t)
• Semnal 1D de regulă funcție de t• t - continuu sau discret• Semnal continuu în timp (CT) sc(t)• semnal analogic = semnal CT
Semnale 1D
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Semnal în timp discret (DT) sd(t)⇒ sd(t) secvență de eș.
• Amplitudine semnal: continuă sau discretă• Semnale digitale: t și amplitudinea lui s(t) discrete• Eșantionare semnal CT ⇒ semnal DT• Eșantionare semnal CT + cuantizare amplitudine
semnal ⇒ semnal digital
Semnale 1D
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Imagine = reprezentare vizuală sub forma unei funcții 2D I(X,Y)
• I(X, Y) = amplitudinea imaginii la poziția (X, Y)• Amplitude = intensitatea luminii sau culoare• Continuitate în amplitudine și spațiu
– I, X, Y – număr infinit de valori posibile• Pentru stocare eșantionare și cuantizare
Semnale 2D - Imagini
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Imagine digitală = eșantionare spațială + cuantizare• Eșantionarea spațială = discretizarea domeniului:
– intervalele de eșantionare pe direcțiile x și y– de regulă – mic rezoluție mare– Exempu: și
• Cuantizarea amplitudinii lui eșantioane discrete
Semnale 2D - Imagini
= ∆ = ∆ = ∆ ∆ = ∈,( , ) ( , ) [ , ], ,x yX x Y y x yI X Y I x y I x y x y
∆ ∆,x y
∆ = ∆ = ∆x y
∆
[ , ]I x y= 1, ,x M = 1, ,y N
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• O imagine digitală I– funcție de 2 variabile independente discrete– rețea ortogonală de puncte (matrice)– cel mai mic element al imaginii = pixel sau pel
(picture element)
Semnale 2D - Imagini
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• I poate fi:– O funcție cu o singură valoare
• Imagine de intensitate sau cu nuanțe de gri I[x,y]• Imagine binară I[x,y]
– O funcție cu mai multe valori: • imagine color cu 3 componente⇒ R[x, y], G[x, y], B[x, y]
• imagine color indexată ⇒ M[x, y] și map de dim. nr_culori x 3
Reprezentarea imaginilor
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Imagini digitale de intensitate = matrici 2D• I[x, y]: x, y și I au valori finite discrete
Reprezentarea imaginilor
• I[x, y] reprezentată pe b biți 8biți ⇒ 256 niveluri de gri 0 = negru, 128=gri, 255=alb
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Reprezentarea imaginilor512x512 128x128
64x64 32x32
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Imagini digitale de intensitate • Matlab:
– “grayscale image”– de regulă reprezentate în
format uint8 (nr. întregi fără semn pe 8 biți)
– Atenție la operații în uint8– conversie: ind2gray,
rgb2gray
Reprezentarea imaginilor
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Imagini binare• caz particular de imagine
de intensitate• b = 2• I[x,y] are doar două
valori: 0 – negru; 1 - alb• Matlab:
– “binary image”– în format logical
(1 bit/pixel)– conversie: im2bw
Reprezentarea imaginilor
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Imagini color RGB• Matrice 3D de dimensiune
M x N x 3• Matlab:
– “truecolor image”– în format uint8– conversie: ind2rgb
Reprezentarea imaginilor
RG
B
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Imagini color indexate• reprezentare RGB este
redundantă• 2 x matrici 2D:
– Matrice I de rezoluțiaimaginii M x N
– Paletă de culori (colormap) de dim. nr_culori x 3
• Matlab: – “indexed image”– I în format uint8– colormap în format double– conversie: rgb2ind
Reprezentarea imaginilor
R G B
0,26 0,02 0,200,59 0,34 0,280,89 0,61 0,380,51 0,11 0,230,66 0,46 0,33
… … …0,71 0,32 0,33
3
colormap
nr_culori
1
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Reprezentarea imaginilor8 biți/pixel 4 biți/pixel
2 biți/pixel 1 bit/pixel
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Spectrul electromagneticfrenvența
(Hz)Lungimea de undă
380–750 nm
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Culoare Frecvență Lungime de undă
violet 668–789 THz 380–450 nm
albastru 631–668 THz 450–475 nm
cian 606–630 THz 476–495 nm
verde 526–606 THz 495–570 nm
galben 508–526 THz 570–590 nm
portocaliu 484–508 THz 590–620 nm
roșu 400–484 THz 620–750 nm
Spectrul vizibil
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Anatomia ochiului uman
http://www.stlukeseye.com/Anatomy.asp
iris
pupilă
sclerotică
sclerotică
iriscornee
pupilă
cristalin
conjunctivă
nerv optic
retină
coroidă
umoare vitroasă
fovee
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Formarea imaginii
http://www.stlukeseye.com/Anatomy.asp
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Ochi vs. cameră
Echivalență cameră – ochi uman
Componente cameră Componente ochi
lentilă cristalin, cornee
diafragmă Iris, pupilă
Film, senzor optic retină
cablu de transfer nerv optic
sclerotică
iriscornee
pupilă
cristalin
conjunctivă
nerv optic
retină
coroidă
umoare vitroasă
fovee
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• retina conține foto-receptori• 2 tipuri:
– conuri: • vedere pe timp de zi• Percep culoarea• 3 tipuri: R,G,B
– bastonașe: • vedere pe timp de noapte• Percep doar luminozitatea
(luminanța)
• senzația de culoare caracterizată prin– Luminanță– Crominanță
• Tonul culorii• Saturație (puritatea culorii)
Percepția umană a culorii
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Răspunsul în frecvență al conurilor și bastonașelor
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Funcția de eficiență luminoasă
albastru x20luminanță
roșuverde
Sens
ibili
tate
rela
tivă
Lungime de undă (nm)
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Specificarea valorilor celor trei stimuli asociați celor 3 culori primare– RGB– CMY
• Specificarea luminanței și crominanței– HSI (Hue, saturation, intensity – nuanță, saturație, int.)– YIQ (folosit la standardul TV color NTSC)– YCbCr (folosit la televiziunea color digitală)
• Specificarea amplitudinii:– 8 biți/componentă sau 24 biți/pixel– total de 16 milioane culori– imagine RGB truecolor de 1024x768 2.25 MB
Modele de reprezentare a culorilor
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
RGB vs. CMY
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
RGB vs. YIQ
• RGB YIQY = 0.299 R + 0.587 G + 0.114 B
I = 0.596 R -0.275 G -0.321 BQ = 0.212 R -0.523 G + 0.311 B
• YIQ RGBR =1.0 Y + 0.956 I + 0.620 QG = 1.0 Y - 0.272 I -0.647 QB =1.0 Y -1.108 I + 1.700 Q
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Planul IQ la luminanță constantă Y=0.5
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
RGB vs. YIQ
RGB
Y I Q
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
RGB vs. YCbCr
• RGB YCbCr
Y = 0.257 R + 0.504 G + 0.098 B + 16,Cb = -0.148 R - 0.291 G + 0.439 B + 128Cr = 0.439 R - 0.368 G - 0.071 B + 128
• YCbCr RGBR = 1.164 Y + 0.0 Cb+ 1.596 Cr
G = 1.164 Y - 0.392 Cb - 0.813 Cr
B = 1.164 Y + 2.017 Cb + 0.0 Cr
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Planul CbCr la luminanță constantă Y=0.5
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
RGB vs. YCbCr
RGB
Y Cb Cr
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• I = imaginea originală• Izg = imaginea afectată de zgomot• Iproc = imaginea cu zgomot după diferite operații de
procesare de imagini
• Dorim să evaluăm calitatea imaginii Iproc față de I– Nu există metode standard
• Măsurători obiective (MSE, SNR, PSNR)• Măsurători subiective (prin vizualizare + scor)• Măsurători perceptuale (au în vedere HVS)
Calitatea imaginilor
( )proc zgI procesare I=
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Eroarea pătratică medie (MSE)
• MSE mai mică ⇒ calitate mai bună
Calitatea imaginilor: MSE
2
1 1
1 [ ( , ) ( , )]= =
= −∑∑M N
procx y
MSE I x y I x yMN
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Zgomotul din imagine măsurat în dB• Raportul semnal – zgomot (SNR)
• SNR mai mare ⇒ calitate mai bună
Calitatea imaginilor: SNR
2 2
10 10 102_ _10log 10log 10log_ _
I I
zg
putere medie semnalSNRputere medie zgomot MSE
σ σσ
= = =
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
• Raportul semnal – zgomot de vârf (PSNR)
• pentru I(x,y) pe 8 biți
• PSNR mai mare ⇒ calitate mai bună
Calitatea imaginilor: PSNR
2max
10 10_ _10log 10log
_ _
= =
Iputere max semnalPSNRputere medie zgomot MSE
2
1025510log
=
PSNR
MSE
Noţiuni de bază în prelucrarea numerică a imaginilor şi semnalelor video
Exemplu: PSNR pentru imagini codate JPEG
Calitatea imaginilor: PSNR
Imagine originală
JPEG Q=90PSNR=40dB
JPEG Q=2PSNR=20dB
JPEG Q=20PSNR=30dB