Immagini

109
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
Lettere e numeri non costituiscono le uniche informazioni
utilizzate dagli elaboratori ma si stanno diffondendo sempre
di più applicazioni che utilizzano ed elaborano anche altri tipi
di informazione: diagrammi, immagini, suoni, filmati. Spesso
in questi casi si parla di applicazioni di tipo
multimediale multimediale
110
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Vediamo dapprima il caso delle immagini
• Esistono numerose tecniche che vengono utilizzate per la
memorizzazione digitale e l’elaborazione di un’immagine
• Consideriamo un’immagine in bianco e nero, senza
ombreggiature o livelli di chiaroscuro
111
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
Suddividiamo l’immagine mediante una griglia formata da
righe orizzontali e verticali a distanza costante
112
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Ogni quadratino derivante da tale suddivisione prende il nome
di pixel (picture element) e può essere codificato in binario
secondo la seguente convenzione:
– Il simbolo “0” viene utilizzato per la codifica di un pixel
corrispondente ad un quadratino bianco (in cui il bianco è
predominante)
– Il simbolo “1” viene utilizzato per la codifica di un pixel
corrispondente ad un quadratino nero (in cui il nero è
predominante)
113
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Poiché una sequenza di bit è lineare, è necessario definire delle
convenzioni per ordinare la griglia dei pixel in una sequenza. Assumiamo che i pixel siano ordinati dal basso verso l’alto e da
sinistra verso destra
1 1
1 111
0 1
0
0
0
0 00 0 0
0 0
0
0 0
0 0
0 0
0
0 0 1 234567
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
Con questa convenzione la rappresentazione della figura sarà data dalla stringa binaria
0000000 0111100 0110000 0100000
114
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta

La codifica delle immagini
• Non sempre il contorno della figura coincide con le linee della
griglia. Quella che si ottiene nella codifica è
un’approssimazione della figura originaria
• Se riconvertiamo la stringa 0000000011110001100000100000
in immagine otteniamo
115
Informatica di Base Informatica di Base — R.Gaeta R.GaetaLa codifica delle immagini
• La rappresentazione sarà più fedele all’aumentare del numero
di pixel, ossia al diminuire delle dimensioni dei quadratini della
griglia in cui è suddivisa l’immagine
zz
116
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Assegnando un bit ad ogni pixel è possibile codificare solo
immagini senza livelli di chiaroscuro
• Le immagini in bianco e nero hanno delle sfumature (diversi
livelli di intensità di grigio
• Per codificare le immagini con diversi livelli di grigio si usa la
stessa tecnica: per ogni pixel si stabilisce il livello medio di
grigio cui viene assegnata convenzionalmente una
rappresentazione binaria
• Per memorizzare un pixel non è più sufficiente un solo bit. Ad
esempio, se utilizziamo quattro bit possiamo rappresentare
24=16 livelli di grigio, mentre con otto bit ne possiamo
distinguere 28=256, ecc.
117
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Analogamente possiamo codificare le immagini a colori. In
questo caso si tratta di individuare un certo numero di
sfumature di colore differenti e di codificare ogni sfumatura
mediante un’opportuna sequenza di bit
• Ad esempio, i monitor utilizzano risoluzioni di 640X480,
1024X768, oppure 1280X1024 ed un numero di colori per
pixel che va da 256 fino a sedici milioni di colori
• La rappresentazione di un’immagine mediante la codifica dei
pixel, viene chiamata codifica bitmap
• Il numero di byte richiesti dipende dalla risoluzione e dal
numero di colori che ogni pixel può assumere
118
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Per distinguere 256 colori sono necessari otto bit per la
codifica di ciascun pixel: la codifica di un’immagine formata
da 640X480 pixel richiederà 2.457.600 bit (307200 byte)
• Esistono delle tecniche di compressione delle informazione
che consentono di ridurre drasticamente lo spazio occupato
dalle immagini
119
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Rappresentazione con grafica vettoriale
• crea le immagini manipolando linee e curve
• i dati dell’immagine vengono tradotti in formule
matematiche che contengono tutte le istruzioni
necessarie per tracciarla, e.g., una retta, una
circonferenza
• la colorazione avviene attraverso la colorazione delle
linee e delle aree chiuse
120
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• la grafica vettoriale è più definita e di qualità
maggiore, soprattutto per rappresentare disegni
semplici
• la grafica bitmap o raster, invece, riesce a rendere con
qualità maggiore immagini con un numero elevato di
colori
• è facile rasterizzare le immagini vettoriali, cioè
trasformarle in bitmap, mentre molto complesso è il
procedimento inverso
121
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• la grafica bitmap si presta meglio alla visualizzazione su
video in quanto lo stesso monitor è formato da una
griglia, mentre la grafica vettoriale per essere
visualizzata deve passare necessariamente attraverso
un processo di rasterizzazione
• Altre caratteristiche…………
122
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica delle immagini
• Immagini complesse od irregolari: codifica raster o
bitmap
– Codifiche standard: GIF, JPEG, BMP
• Immagini regolari: codifica vettoriale
– Codifiche standard (proprietarie): CGM, DWG, DXF
• Codifiche ibride (raster/vettoriale):
– Codifiche standard (proprietarie): Postscript, PDF (Portable
Document Format)
123
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica di immagini in movimento
• Immagini in movimento: memorizzazione mediante
sequenze di fotogrammi (sono necessarie delle tecniche
per ottimizzare tale memorizzazione)
• 30 immagini ad alta risoluzione al secondo
• 30 immagini/sec x 2457600 bit/immagine=73728000 bit/sec
• Un minuto di filmato richiederebbe 60 sec x 73728000 bit/sec =
4423680000 bit
124
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica di immagini in movimento
• MPEG (Moving Picture Experts Group):
– Standard molto diffuso
– Molto efficiente ma complesso
• QuickTime:
– Proposto da Apple
– Meno efficiente ma più semplice
• Indeo – AVI:
– Proposto da Intel, usato da MicroSoft
– Poco efficiente
125
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni
• I suoni costituiscono un tipo di informazione con cui siamo
costantemente a contatto (linguaggio parlato, musica, rumori)
• Anche i suoni possono essere rappresentati in forma digitale
• Dal punto di vista fisico un suono è un’alterazione della pressione dell’aria che, quando rilevata, ad esempio dall’orecchio umano, viene trasformata in un particolare
stimolo elettrico
• Mediante un microfono queste alterazioni vengono
trasformate in un particolare stimolo elettrico
• La durata, l’intensità e la variazione nel tempo della pressione dell’aria sono le quantità fisiche che rendono un
suono diverso da ogni altro
126
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni
• Fisicamente un suono è rappresentato come un’onda (onda sonora)
che descrive la variazione della pressione dell’aria nel tempo
t
Sull’asse delle ascisse viene rappresentato il tempo e sull’asse
delle ordinate viene rappresentata la variazione di pressione
corrispondente al suono stesso
127
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni
• La rappresentazione precedente viene detta analogica, in quanto
descrive esattamente l’analogo della quantità fisica in esame, e
fornisce una descrizione continua dell’onda sonora
• Le rappresentazioni di tipo analogico non sono adatte al mondo
dell’informatica, data l’impossibilità di poter trattare con
informazioni di tipo continuo
• È necessario trovare un modo di per rappresentare in forma digitale
(numerica) un’onda sonora
128
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni
• Si effettuano dei campionamenti sull’onda (cioè si misura il
valore dell’onda a intervalli costanti di tempo) e si codificano
in forma digitale le informazioni estratte da tali
campionamenti
t
• Quanto più frequentemente il valore di intensità dell’onda
viene campionato, tanto più precisa sarà la sua
rappresentazione
129
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni
• La sequenza dei valori numerici ottenuta dai campioni può essere
facilmente digitalizzata
t
130
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni: la voce
• Se volessimo codificare la voce umana dovremmo:
– Campionare il segnale vocale ogni 125 milionesimi di secondo
(producendo 8000 campioni al secondo) per segnale con
frequenze inferiori a 4kHz (frequenze della voce umana)
– Per ogni campione (che è un numero) si usano 8 bit
– Per cui, il numero di bit che sarebbero necessari per codificare
ogni secondo è pari a
8000 campioni x 8 bit/campione=64000 bit
131
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni: la musica su CD
• Se volessimo codificare la musica di qualità CD
dovremmo:
– Usare due registrazioni corrispondenti a due microfoni distinti
– Campionare il segnale musicale producendo 44100 campioni al
secondo
– Per ogni campione (che è un numero) si usano 16 bit
– Per cui, il numero di bit che sarebbero necessari per codificare
ogni secondo è pari a
2 x 44100 campioni x 16 bit/campione=1414200 bit
132
Informatica di Base Informatica di Base — R.Gaeta R.Gaeta
La codifica dei suoni
• Codifiche standard:
– formato WAV (MS-Windows),
– formati AU e AIFF (rispettivamente SUN ed Apple)
– MIDI
– MP3
• MIDI:
– codifica le note e gli strumenti che devono eseguirle
– solo musica, non voce
– richiede un sintetizzatore o “campioni” per la riproduzione (non utilizzabile
“direttamente”)
– molto efficiente
• MP3:
– MPEG-3: variante MPEG per suoni
– Grande diffusione
– molto efficiente