immagini binarie - binarie.pdf · 1 Immagini binarie Binarizzazione di immagini a livelli di grigio…

Download immagini binarie - binarie.pdf · 1 Immagini binarie Binarizzazione di immagini a livelli di grigio…

Post on 08-Aug-2018

212 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

<ul><li><p>1</p><p>Immagini binarie</p><p>Binarizzazione di immagini a livelli di grigio</p><p>Immagini binarie</p><p>In molti casi gli le scene di interesse conducono ad immagini che possono essere considerate binarie, cio contenenti nel caso ideale solo due livelli di grigio (bianco, nero)Esempi:</p><p>testo stampato, manoscritto, graficaparti meccaniche piatte, sagome </p></li><li><p>2</p><p>Immagini binarie</p><p>In altri casi, le immagini in analisi sono intrinsecamente a pi livelli di grigio, ma lunico contenuto rilevante dato dalla forma degli oggetti, delle regioni o delle linee.Anche in queste circostanze il modello ideale unimmagine a due livelli.</p><p>Il problema della binarizzazione</p><p>Dopo lacquisizione di una scena da parte di un sensore (telecamera o scanner), limmagine che si ottiene comunque formata da numerosi livelli di grigio (tipicamente 256).Le ragioni sono riconducibili a:</p><p>illuminazione non omogenea della scenabanda limitata del sistema che limita la ripidezza dei fronti in corrispondenza dei bordidistorsioni impresse dal sistema ottico </p></li><li><p>3</p><p>Il problema della binarizzazione</p><p>Sono quindi necessari degli algoritmi per la trasformazione di unimmagine a livelli di grigio in immagine binaria (binarizzazione), in modo da conservare quanto pi possibile il contenuto rilevante.In letteratura sono stati proposti numerosi algoritmi di binarizzazione. Ci giustificato dallintrinseca difficolt del problema e dalla diversit delle caratteristiche delle immagini da trattare </p><p>Binarizzazione a soglia fissa</p><p>La soluzione pi semplice quella di fare uso di una soglia fissa S per cui la binarizzazione si realizza tramite la trasformazione:</p><p>0 se x=S</p></li><li><p>4</p><p>Esempio</p><p>Soglia troppo bassa</p></li><li><p>5</p><p>Soglia troppo alta</p><p>Valutazione della soglia</p><p>La difficolt in questo caso data dallindividuazione del valore della soglia S che renda efficace loperazione di binarizzazione.Esistono diversi metodi per valutare la soglia automaticamente a partire dallistogramma dei livelli di grigio dellimmagine originale.</p></li><li><p>6</p><p>Valutazione della soglia su istogramma bimodale </p><p>In alcuni casi favorevoli, listogramma dellimmagine da binarizzare presenta un andamento nettamente bimodaleSono cio presenti due picchi (modes) che rappresentano distintamente lo sfondo e gli oggetti presenti nella scenaIn questo caso, la soglia viene fissata in corrispondenza del punto di minimo tra i due picchi</p><p>Valutazione della soglia su istogramma bimodale</p></li><li><p>7</p><p>Valutazione della soglia su istogramma bimodale</p><p>0 50 100 150 200 2500</p><p>2000</p><p>4000</p><p>6000</p><p>8000</p><p>10000</p><p>12000</p><p>Valutazione della soglia su istogramma bimodale</p><p>Soglia S=135</p></li><li><p>8</p><p>Valutazione della soglia su istogramma bimodale</p><p>La determinazione della soglia richiede quindi la preventiva individuazione dei due picchi nellistogramma.Mentre lindividuazione del primo dei due picchi semplice (coincide con il livello di grigio a massimo valore nellistogramma), trovare il secondo picco pu essere pi difficile, in quanto non detto che coincida con il secondo valore pi grande nellistogramma.</p><p>Valutazione della soglia su istogramma bimodale</p><p>0 50 100 150 200 2500</p><p>2000</p><p>4000</p><p>6000</p><p>8000</p><p>10000</p><p>12000</p><p>picco 1(massimo assoluto)</p><p>picco 2</p><p>secondo massimo</p></li><li><p>9</p><p>Valutazione della soglia su istogramma bimodale</p><p>Un espediente piuttosto efficace quello di cercare il secondo picco dopo aver moltiplicato i valori dellistogramma per il quadrato della distanza dal primo picco</p><p>max2 = max[ (k-j)2 h(k) ] 0</p></li><li><p>10</p><p>Valutazione della soglia su istogramma modificato</p><p>In questi casi, pu essere utile distinguere il contributo dellistogramma che viene dai pixel di bordo da quello che viene dai pixel delloggetto e dello sfondo.Coma gi visto, le due classi di pixel si possono individuare in base al valore del gradiente dellimmagine:</p><p>alto valore del gradiente pixel di bordobasso valore del gradiente pixel non di bordo</p><p>Valutazione della soglia su istogramma modificato</p><p>Si pu quindi considerare, in luogo dellistogramma dellintera immagine, listogramma generato da una delle due classi di pixel e cercare il valore di sogliaPassi della binarizzazione:</p><p>1. si valuta il gradiente dellimmagine2. si calcola listogramma considerando solo i pixel </p><p>ad alto (o basso) gradiente3. si determina la soglia </p></li><li><p>11</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>0 50 100 150 200 2500</p><p>0.5</p><p>1</p><p>1.5</p><p>2</p><p>2.5x 104</p></li><li><p>12</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>0 50 100 150 200 250 300 350 400 450 5000</p><p>1000</p><p>2000</p><p>3000</p><p>4000</p><p>5000</p><p>6000</p><p>7000</p><p>soglia per selezionare i punti su cui valutare listogramma</p></li><li><p>13</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>0 50 100 150 200 2500</p><p>1000</p><p>2000</p><p>3000</p><p>4000</p><p>5000</p><p>6000</p><p>7000</p><p>8000</p><p>Istogramma dei punti con gradiente 50</p></li><li><p>14</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>immagine originale binarizzata con soglia = 50</p><p>IS(50)</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>immagine originale binarizzata con soglia = 100</p><p>IS(100)</p></li><li><p>15</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>immagine originale binarizzata con soglia = 200</p><p>IS(200)</p><p>Esempio di uso del gradiente per la binarizzazione</p><p>regioni dellimmagine originale con valori &gt;100 e &lt; 200</p><p>IS(200)IS(100)</p></li><li><p>16</p><p>Valutazione della soglia basata sulla separabilit delle classi</p><p>Questo algoritmo (dovuto ad Otsu) valuta la soglia S analizzando la qualit della distribuzione dei livelli di grigio tra la due classi (oggetto e sfondo) che la scelta della soglia induce.Si consideri listogramma normalizzato dellimmagine:</p><p>dove p(k) stima la probabilit di comparsa del livello di grigio k.</p><p>=</p><p>= 255</p><p>0kh(k)</p><p>h(k)p(k)</p><p>Valutazione della soglia basata sulla separabilit delle classi</p><p>Per un fissato valore della soglia S, si determina una ripartizione dei livelli di grigio in due classi K0 e K1.</p><p>Le probabilit che un pixel appartenga ad una delle due classi sono:</p><p>=</p><p>=S</p><p>0k0 p(k)P 0</p><p>255</p><p>1Sk1 P1p(k)P == </p><p>+=</p></li><li><p>17</p><p>Valutazione della soglia basata sulla separabilit delle classi</p><p>I livelli di grigio medi nelle due classi sono:</p><p>per cui il livello di grigio medio nellintera immagine m = P0m0+P1m1.Si calcolano poi le varianze nelle due classi:</p><p>=</p><p>=S</p><p>0k0 p(k)km </p><p>+=</p><p>=255</p><p>1Sk1 p(k)km</p><p>( )=</p><p>=S</p><p>0k</p><p>20</p><p>20 p(k)mk ( )</p><p>+=</p><p>=255</p><p>1Sk</p><p>21</p><p>21 p(k)mk</p><p>Valutazione della soglia basata sulla separabilit delle classi</p><p>A questo punto possibile valutare la varianza tra le classi B2 e la varianza interna alle classi W2 :</p><p>Mentre la prima misura la separazione tra le due classi di livelli di grigio, la seconda ne misura la compattezza.</p><p>( ) ( )2112002B mmPmmP +=211</p><p>200</p><p>2w PP +=</p></li><li><p>18</p><p>Valutazione della soglia basata sulla separabilit delle classi</p><p>Lobiettivo del metodo quello di individuare il valore della soglia S per cui si massimizza la separazione tra le classi e la compattezza di ciascuna.</p><p>Ci equivale a massimizzare il rapporto</p><p>(S)(S)(S) 2</p><p>W</p><p>2B=</p><p>Valutazione della soglia basata sulla separabilit delle classi</p><p>Algoritmo:calcola (0); max=(0); S=0;for k=1 to 255</p><p>calcola (k);if ((k) &gt; max)</p><p>max=(k); S=kend if</p><p>end for</p></li><li><p>19</p><p>Algoritmo di OtsuEsempio</p><p>0 50 100 150 200 2500</p><p>100</p><p>200</p><p>300</p><p>400</p><p>500</p><p>600</p><p>700</p><p>Algoritmo di OtsuEsempio</p><p>0 50 100 150 200 250 3000.0 </p><p>0.2</p><p>0.4</p><p>0.6</p><p>0.8</p><p>1.0 </p><p>1.2</p><p>1.4</p><p>1.6</p><p>1.8</p><p>2 .0 </p><p>t = 96</p><p>max = 1.7995</p></li><li><p>20</p><p>Algoritmo di OtsuEsempio</p><p>0 50 100 150 200 2500</p><p>100</p><p>200</p><p>300</p><p>400</p><p>500</p><p>600</p><p>700</p><p>Algoritmo di OtsuEsempio</p></li><li><p>21</p><p>Compensazione dello sfondo</p><p>Al segnale dimmagine pu spesso sovrapporsi un segnale spurio di fondo che si produce nel corso dellacquisizione dellimmagine e dovuto allilluminazione della scena o alla disomogeneit del fondo.E opportuno rimuovere tale segnale spurio (compensazione dello sfondo) prima della binarizzazione in quanto potrebbe causare degli artefatti nellimmagine binarizzata.</p><p>Compensazione dello sfondoLa compensazione dello sfondo pu essere semplicemente realizzata sottraendo dallimmagine da trattare limmagine dello sfondo ripreso in assenza di oggetti e mantenendo le stesse condizioni di illuminazione e di configurazione del sensore.Se limmagine dello sfondo vuoto non disponibile, si pu utilizzare in sua vece il risultato di un filtraggio dellimmagine ottenuto con un filtro di media molto ampio.</p></li><li><p>22</p><p>Esempio</p><p>Compensazione</p></li></ul>