ProyectoNo3_ Ecualizacion de Distancia de Histograma

May 11, 2018 | Author: Laura Pamela Alvarez | Category: Histogram, Scientific Modeling, Image Processing, Multidimensional Signal Processing, Scientific Method
Share Embed Donate


Short Description

Descripción: Ceualizacion y Distancia de Histogramas...

Description

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO PROGRAMA DE MAESTRÍA Y DOCTORADO EN INGENIERÍA MAESTRÍA EN INGENIERÍA ELÉCTRICA – PROCESAMIENTO DIGITAL DE SEÑALES

Practica No. 3

Procesamiento Digital de imágenes

PRESENTA: Laura Pamela Álvarez Hernández

PROFESOR DE ASIGNATURA M.C. Jimena Olveres

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación Especificación y Distancia de Histograma

1.

INTRODUCCIÓN  .....................................................................................................................................................1 1.1 OBJETIVOS Y ALCANCE  ...................................................................................................................................1 1.2 PREPARACIÓN DEL REPORTE  ............................................................................................................................1 2. MARCO TEÓRICO  ..................................................................................................................................................2 2.1 ECUALIZACIÓN DEL HISTOGRAMA : ....................................................................................................................2 2.2 ESPECIFICACIÓN DEL HISTOGRAMA : ..................................................................................................................2 2.3 DISTANCIA DE HISTOGRAMA CHI-SQUARE: ........................................................................................................3 3. Procedimiento Procedim iento .................................... .................. .................................... ................................... ................................... .................................... ................................... ................................... ......................3 ....3 3.1 PARTE 1 ......................................................................................................................................................3 3.2 PARTE 2 ......................................................................................................................................................3 3.3 PARTE 3 ......................................................................................................................................................4 4. RESULTADOS RESULTAD OS................................. ................ ................................... .................................... ................................... ................................... .................................... .................................... ...........................4 .........4 4.1 PARTE 1. .....................................................................................................................................................4 4.2 PARTE 2. .....................................................................................................................................................8 4.3 PARTE 3. .................................................................................................................................................. 15 5. CONCLUSIONES.................. CONCLUSIO NES................................... ................................... .................................... ................................... ................................... .................................... ................................... ................... 18 6. REFERENCIAS REFERENCIA S ................................... .................. ................................... .................................... ................................... ................................... .................................... ................................... ..................... .... 18 APÉNDICE A.- CÓDIGO FUENTE EN MATLAB .............................................................................................................I

 APÉNDICES APÉNDICE A.- CÓDIGO CÓDIGO FUENTE EN MATLAB ............................................... .............................................. ..... I A.1.

CÓDIGO FUETE. PARTE 1 ........................................................................................................................ II

A.2.

CÓDIGO FUETE. PARTE 2 .......................................... .............................................. ............................... IV

A.3.

CÓDIGO FUETE. PARTE 3 .......................................... .............................................. ............................. VIII

i

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación Especificación y Distancia de Histograma

1.

INTRODUCCIÓN  .....................................................................................................................................................1 1.1 OBJETIVOS Y ALCANCE  ...................................................................................................................................1 1.2 PREPARACIÓN DEL REPORTE  ............................................................................................................................1 2. MARCO TEÓRICO  ..................................................................................................................................................2 2.1 ECUALIZACIÓN DEL HISTOGRAMA : ....................................................................................................................2 2.2 ESPECIFICACIÓN DEL HISTOGRAMA : ..................................................................................................................2 2.3 DISTANCIA DE HISTOGRAMA CHI-SQUARE: ........................................................................................................3 3. Procedimiento Procedim iento .................................... .................. .................................... ................................... ................................... .................................... ................................... ................................... ......................3 ....3 3.1 PARTE 1 ......................................................................................................................................................3 3.2 PARTE 2 ......................................................................................................................................................3 3.3 PARTE 3 ......................................................................................................................................................4 4. RESULTADOS RESULTAD OS................................. ................ ................................... .................................... ................................... ................................... .................................... .................................... ...........................4 .........4 4.1 PARTE 1. .....................................................................................................................................................4 4.2 PARTE 2. .....................................................................................................................................................8 4.3 PARTE 3. .................................................................................................................................................. 15 5. CONCLUSIONES.................. CONCLUSIO NES................................... ................................... .................................... ................................... ................................... .................................... ................................... ................... 18 6. REFERENCIAS REFERENCIA S ................................... .................. ................................... .................................... ................................... ................................... .................................... ................................... ..................... .... 18 APÉNDICE A.- CÓDIGO FUENTE EN MATLAB .............................................................................................................I

 APÉNDICES APÉNDICE A.- CÓDIGO CÓDIGO FUENTE EN MATLAB ............................................... .............................................. ..... I A.1.

CÓDIGO FUETE. PARTE 1 ........................................................................................................................ II

A.2.

CÓDIGO FUETE. PARTE 2 .......................................... .............................................. ............................... IV

A.3.

CÓDIGO FUETE. PARTE 3 .......................................... .............................................. ............................. VIII

i

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación Especificación y Distancia de Histograma LISTA DE FIGURAS

Ilustración 1: Transformación de un histograma .....................................................................................................2 Ilustración 2. Imagen a tratar. Lado derecho Región Parche ...................................................................................4 Ilustración 3: Imagen "pinos.bmp" y su histograma. ...............................................................................................4 Ilustración 4: Imagen "pinos.bmp" ecualizada y su histograma. .............................................................................5 Ilustración 5: Imagen ecualizada a 128 niveles de grises y su histograma................... ........................... .................. .................. .................. .................5 ........5 Ilustración 6: Imagen ecualizada a 64 niveles de grises y su histograma................... ........................... .................. .................. .................. .................. ..........6 .6 Ilustración 7: Imagen ecualizada a 32 niveles de grises y su histograma................... ........................... .................. .................. .................. .................. ..........6 .6 Ilustración 8: Imagen ecualizada a 16 niveles de grises y su histograma................... ........................... .................. .................. .................. .................. ..........7 .7 Ilustración 9: Imagen ecualizada a 8 niveles de grises y su histograma................... ........................... .................. .................. .................. .................. ............7 ...7 Ilustración 10: Imagen ecualizada a 2 niveles de grises y su histograma.................. .......................... ................... ................... .................. .................. ..........8 .8 Ilustración 11: Zona Ay B cortadas con sus respectivos Histogramas. ............ ..................... .................. .................. .................. .................. .................. ............8 ...8 Ilustración 12: Mosaico Robusto e Histograma. .......................................................................................................9 Ilustración 13: Zona de Traslape............................................................................................................................ 10 Ilustración 14: Mosaico Especificado Especificado con respecto a la zona de Traslape.  ........................................................... 10 Ilustración 15: Zona A Especificada con respecto a la zona B.   .............................................................................. 11 Ilustración 16: Zona A Especificada con respecto a la zona B.   .............................................................................. 11 Ilustración 17: Imagen ecualizada a 128 niveles de grises y su histograma. .................. ........................... .................. .................. .................. ............ ... 12 Ilustración 18: Imagen ecualizada a 64 niveles de grises y su histograma. .................. ........................... .................. ................... ................... ............. .... 12 Ilustración 19: Imagen ecualizada a 32 niveles de grises y su histograma. .................. ........................... .................. ................... ................... ............. .... 13 Ilustración 20: Imagen ecualizada a 16 niveles de grises y su histograma. .................. ........................... .................. ................... ................... ............. .... 13 Ilustración 21: Imagen ecualizada a 8 niveles de grises y su histograma.................. .......................... .................. .................. .................. ................. ........ 14 Ilustración 22: Imagen ecualizada a 2niveles de grises y su histograma................... ........................... .................. .................. .................. ................. ........ 14 Ilustración 23: Imagen e histograma. .................................................................................................................... 15 Ilustración 24: Ubicación de los Vectores escogidos. ............................................................................................ 15 Ilustración 25: Vector 1. ........................................................................................................................................ 16 Ilustración 26: Vector 2. ........................................................................................................................................ 16 Ilustración 27: Vector 3. ........................................................................................................................................ 16 Ilustración 28: Imagen Resultante con una ventana de 15 x 15. .......................................................................... 17 Ilustración 29: Imagen Resultante con una ventana de 5 x 5................................................................................ 17

ii

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma 1.

INTRODUCCIÓN

Uno de los realces más sencillos que puede aplicarse a una imagen es el que se refiere a la modificación de su histograma o función de densidad. El principal efecto de esta transformación es el cambio del contraste de la imagen; debido a esto es necesario revisar primero qué se entiende por contraste en una imagen digital. En cualquier caso el contraste se refiere siempre a la relación de brillantez de un objeto con su entorno, es decir, que a través de un modelo se relaciona el valor de un pixel o una clase de pixels con los vecinos próximos. En una apreciación cualitativa por medios visuales, el contraste puede depender de las condiciones específicas de iluminación y de factores particulares en la respuesta del sistema opto-neuronal del ser humano. La ecualización del histograma es un método que consiste en la variación del histograma de una zona de una imagen (o de la imagen entera) a otra de otra forma. Es una transformación que pretende obtener para una imagen un histograma con una distribución uniforme Es decir, que exista el mismo número de  pixeles para cada nivel de gris de una imagen. La aplicación de esta operación debería transformar el histograma en otro con una forma perfectamente uniforme sobre todos los niveles de gris. El análisis estadístico derivado del histograma puede servir para comparar contrastes e intensidades entre imágenes. El histograma podría ser alterado para producir cambios en la imagen. Cuando el rango de niveles de gris que toma la imagen se encuentra concentrado en una zona del intervalo, la imagen posee poco contraste. Para aumentar el contraste, podemos expandir el histograma o bien realizar una ecualización del mismo. 1.1

OBJETIVOS Y ALCANCE • •

• •

1.2

Realizar la ecualización del histograma de una imagen usando distintos niveles de Cuantización A partir de dos imágenes satelitales contiguas, generar un mosaico procurado que la unión sea imperceptible, mediante el uso de la técnica de especificación del histograma. Aprenderá a calcular el histograma global y local de la imagen. Se entenderá como calcular la distancia de error entre dos histogramas. PREPARACIÓN DEL REPORTE

El análisis, procesamiento de datos, y escritura del presente reporte fue realizado por Ing. Laura Pamela Álvarez Hernández. El proyecto se llevó a cabo para fines educativos; el código de programación es presentado en el Anexo.

1

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma 2. 2.1

M ARCO TEÓRICO ECUALIZACIÓN DEL HISTOGRAMA :

Dada una imagen MxN, con n k píxeles para cada nivel r k, la ecualización del histograma consiste en realizar la siguiente transformación sobre los niveles de intensidad de la imagen:



 1  −  = ( ) = ( − 1)  �  =   =0 =0

Lo que resulta en una dispersión del histograma en un rango mayor dentro del intervalo [0,L-1]. La principal v entaja de este método es que es completamente “automático”. Donde la Idea es obtener una distribución de probabilidades “uniforme” de los niveles de gris en la imagen.

Ilustración 1: Transformación de un histograma

2.2

ESPECIFICACIÓN DEL HISTOGRAMA

Hasta ahora las modificaciones al histograma se han planteado como preconcebidas, es decir se presupone el tipo de transformación T que deseamos aplicar al histograma original. Esto, si bien es conveniente en casos específicos, complica un poco la tarea de modificar el histograma; es adecuado, por tanto, desarrollar una expresión que permita la inclusión de cualquier transformación, desde luego dentro de las limitaciones planteadas hasta ahora. A esta modificación de tipo general se le conoce como especificación del histograma. El resultado de la especificación se despliega en la pantalla y se analiza visualmente; de ser necesario puede repetirse el proceso de especificación. Para expresar matemáticamente la especificación del histograma, suponemos que el histograma original y especificado se representan por medio de las funciones de densidad po(o) y pr(r) respectivamente. De aquí que a partir de estas funciones sea posible producir sendos histogramas normalizados, uno a partir del histograma original.

En versiones digitales:

Claramente, las funciones de densidad pu(u) y pv(v) son idénticas pues representan ambos histogramas normalizados a densidad uniforme, ya que el resultado de u es independiente del integrando. Por tanto, la relación inversa r = G-1(v) daría los niveles buscados, aunque esto no es posible, puesto que la imagen buscada no se conoce. Sin embargo, recordemos que pu(u) = pv(v), de tal forma que en lugar de emplear los niveles uniformes v empleamos los u, por lo que la relación r = G-1(v) proporciona los niveles correspondientes a la f unción de densidad especificada.

2

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma 2.3

DISTANCIA DE HISTOGRAMA CHI-SQUARE

La prueba χ² de  Pearson se considera una prueba no paramétrica que mide la discrepancia entre una distribución observada y otra teórica (bondad de ajuste), indicando en qué medida las diferencias existentes entre ambas, de haberlas, se deben al azar en el  contraste de hipótesis. También se utiliza para probar la independencia de dos variables entre sí, mediante la presentación de los datos en  tablas de contingencia. La fórmula que da el estadístico es la siguiente:

3.

PROCEDIMIENTO

3.1

1.

P ARTE 1

Ecualización del histograma de una imagen de bajo contraste (puede ser la imagen de pinos): a) Desplegar la imagen original y su histograma (comando MATLAB imhist). b) Ecualizar el histograma de la imagen (comando MATLAB histeq). Desplegar la imagen resultante y el histograma ecualizado. c) Ecualizar el histograma usando 128, 64, 32, 16, 8 y 2 niveles de cuantización. Desplegar las imágenes e histogramas resultantes.

3.2

2.

P ARTE 2

Generar un mosaico a partir de dos imágenes satelitales utilizando la técnica de especificación de histograma procurando que la unión entre las dos imágenes satelitales sea imperceptible. El histograma de referencia se toma como el histograma correspondiente a una zona de traslape, que es común para ambas imágenes, de una de las imágenes. a) Desplegar las imágenes satelitales cortando o eliminando las zonas donde la información es nula. Desplegar además el histograma correspondiente a cada una de ellas. b) Desplegar el mosaico que resulta de unir las dos imágenes satelitales sin el uso de la técnica de especificación del histograma. c) Desplegar la zona de traslape y su histograma. d) Desplegar las imágenes satelitales recortadas, cuyos histogramas han sido especificados con el histograma del inciso anterior. Desplegar además el histograma correspondiente a cada una de ellas. e) Desplegar el mosaico que resulta de unir las dos imágenes satelitales después de la especificación del histograma. Desplegar también el histograma del mosaico. f) Especificar el histograma del mosaico usando 128, 64, 32, 16, 8 y 2 niveles de cuantización.

3

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma NOTA: Recordando que la función imhist puede tener los argumentos (im, MAP) y el resultado puede ser asignado a una variable. MAP es el mapa de colores o niveles de cuantización. Ejemplo: J=imhist(im,128) significa que el histograma de im es guardado en J con 128 niveles de cuantización. Este último histograma puede ser usado para especificar el histograma de otra imagen; usado como segundo parámetro en la función histeq. Ejemplo: imEspec = histeq (im2,J). 3.3

P ARTE 3

3.

Generar un reconocimiento mediante el análisis del histograma, de la imagen proporcionada, se reconocerá una región específica. Se obtendrá un promedio de la región parche de la imagen, realizando lo siguiente: a)

Se comparará de manera local contra una ventana de barrido la cual será determina con el tamaño de las ventanas de la región parche. b) Se generará una nueva imagen, en la cual el error de distancia se irá graficando.

Ilustración 2. Imagen a tratar. Lado derecho Región Parche

4. 4.1

RESULTADOS P ARTE 1.

a)

La imagen original con la cual se trabajó esta primera parte es: “pinos.bmp” cuyo histograma es:

Ilustración 3: Imagen "pinos.bmp" y su histograma.

4

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

b) Ecualizando la Imagen a 256 niveles de gris.

Ilustración 4: Imagen "pinos.bmp" ecualizada y su histograma.

c)

Ecualización de histograma a: a. 128 niveles de gris.

Ilustración 5: Imagen ecualizada a 128 niveles de grises y su histograma.

5

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

b.

64 niveles de gris.

Ilustración 6: Imagen ecualizada a 64 niveles de grises y su histograma.

c.

32 niveles de gris.

Ilustración 7: Imagen ecualizada a 32 niveles de grises y su histograma.

6

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

d.

16 niveles de gris.

Ilustración 8: Imagen ecualizada a 16 niveles de grises y su histograma.

e.

8 niveles de gris.

Ilustración 9: Imagen ecualizada a 8 niveles de grises y su histograma.

7

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

f.

2 niveles de gris (binarizada)

Ilustración 10: Imagen ecualizada a 2 niveles de grises y su histograma.

4.2

P ARTE 2.

d) Imágenes satelitales, cuyos histogramas son:

Ilustración 11: Zona Ay B cortadas con sus respectivos Histogramas.

8

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

e) Ambas imágenes fueron unidas dejando la  Ilustración 12, la cual se muestra como un “Mosaico Robusto”.

Ilustración 12: Mosaico Robusto e Histograma.

f)

A dicha Ilustración 12 se seleccionó la zona de traslape con un ancho de ventana de ventana de pixeles (75 pixeles por lado a partir de la línea de unión de ambas zonas). Resultando la  Ilustración 13.

9

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma Ilustración 13: Zona de Traslape.

g)

Al aplicar la Especificación de histograma a la  Ilustración 12 con respecto al histograma de la  Ilustración 13. Se obtiene:

Ilustración 14: Mosaico Especificado con respecto a la zona de Traslape.

Como se observa en la Ilustración 14 la línea que une a ambas imágenes aún es notoria, es por ello que se optó por especificar la imagen A con respecto a la zona B , al igual que la zona de traslape.

h)

Al aplicar la Especificación de histograma a la Zona A (Ilustración 15) con respecto a la zona B, y la Zona B con respecto a la zona A; se calcula una zona de traslape de ambas especificaciones y nuevamente se especifica la anterior zona de traslape con respecto al histograma de la zona de traslape de la anterior imagen (Ilustración 13) y realizando nuevamente el mosaico (Véase IV), cuyo fragmento se muestra en el siguiente párrafo. Realizando lo anterior descrito se obtiene la  Ilustración 16 : l i neT=zeros( [ 1500 4] ) ; l i neT( 1: 1500, 1: 2) =Ai mEsp( 1: 1500, 1687: 1688) ; l i neT( 1: 1500, 3: 4) =Bi mEspt ( 1: 1500, 1: 2) ; Li neTesp=hi st eq( l i neT, Ht r asl ) ; Li neTesp=hi st eq( Li neTesp, Ht r asl ) ; Bt r as=Bi mEspt ( 1: 1500, 3: 812) ; Bt r asl =hi st eq( Bt r as, Ht r asl ) ; I mage4=zer os( [ 1500, 2500] ) ; I mage4( 1: 1500, 1: 1686) =Ai mEsp( 1: 1500, 1: 1686) ; I mage4( 1: 1500, 1687: 1690) 10 =Li neTesp; I mage4( 1: 1500, 1691: 2500) =Bi mEsp( 1: 1500, 3: 812) ;

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

Ilustración 15: Zona A Especificada con respecto a la zona B.

Ilustración 16: Zona A Especificada con respecto a la zona B.

11

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma Cuyo resultado se muestra satisfactorio. Ahora bien, en la siguiente sección se muestra la especificación del siguiente mosaico a: a.

128 niveles de gris.

Ilustración 17: Imagen ecualizada a 128 niveles de grises y su histograma.

b.

64 niveles de gris.

Ilustración 18: Imagen ecualizada a 64 niveles de grises y su histograma.

12

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma c.

32 niveles de gris.

Ilustración 19: Imagen ecualizada a 32 niveles de grises y su histograma.

d.

16 niveles de gris.

Ilustración 20: Imagen ecualizada a 16 niveles de grises y su histograma.

13

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma e.

8 niveles de gris.

Ilustración 21: Imagen ecualizada a 8 niveles de grises y su histograma.

f.

2 niveles de gris (binarizada)

Ilustración 22: Imagen ecualizada a 2niveles de grises y su histograma.

14

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma 4.3

P ARTE 3.

La Imagen e histograma a tratar en la presente sección será:

Ilustración 23: Imagen e histograma.

En donde se eligieron las siguientes ventanas de 15 x15.

Ilustración 24: Ubicación de los Vectores escogidos.

Y cuyos histogramas se muestran en las ilustraciones:

15

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

Ilustración 25: Vector 1.

Ilustración 26: Vector 2.

Ilustración 27: Vector 3.

16

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma A dicha imagen se le calculo un histograma local, cuya ventana corresponde a una ventana promedio de 15 x 15. Este histograma se aplicará a la imagen inicial y a través del método de Chi-cuadrada (véase  Distancia de Histograma Chi-Square), con el cual se obtuvo la siguiente imagen (Ilustración 28):

Ilustración 28: Imagen Resultante con una ventana de 15 x 15.

Donde claramente resalta la zona de interés. Si repetimos el mismo procedimiento pero ahora con una ventana de 5x5, se obtiene:

Ilustración 29: Imagen Resultante con una ventana de 5 x 5.

Donde claramente resalta la zona de interés.

17

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma 5.

CONCLUSIONES

Para muchas tareas de Procesamiento Digital de Imágenes es necesario el uso del Histograma, éste método es bastante eficiente para que las imágenes que posean bajo contraste, se realice una imagen la ecualización del histograma lo que permitirá un aumento en el contraste de tal forma que se puedan ver los detalles que no están a nuestro alcance. Analizando la chaqueta se observa cómo se obtienen los detalles en la imagen. La técnica de Especificación de Histograma  es una herramienta muy eficiente para homogeneizar diferentes imágenes y con ello construir un mosaico, sin embargo sal aplicar especificaciones de dicha imagen a diferentes números de cuantificación la línea de empalme es evidente como se muestra en las (ilustraciones 17 a 22). Ahora bien, las herramientas de medición de distancia de histogramas son muy útiles, en el ejercicio empleado en ésta práctica se usó la fórmula de Distancia de Histograma Chi-Square,  con el cual se obtuvo una imagen pre segmentada (Ilustración 28, Ilustración 29.): 6.

REFERENCIAS

[1] González and Woods, Digital Image Processing, 3rd. Ed.. [2] Levine, M.D., Vision in man and machine, McGraw-Hill, 1985.

18

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma

 APÉNDICE A.- CÓDIGO FUENTE EN MATLAB

I

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma  A.1. CÓDIGO FUETE. P ARTE 1

cl c cl ear al l ; cl ear var s; A=i mr ead( ' pi nos512. bmp' ) ; A=i m2doubl e( A) ; A=A/ ( max( max( A) ) ) ; I mage0=hi st eq( A, 256) ; I mage1=hi st eq( A, 128) ; I mage2=hi st eq( A, 64) ; I mage3=hi st eq( A, 32) ; I mage4=hi st eq( A, 16) ; I mage5=hi st eq( A, 8) ; I mage6=hi st eq( A, 2) ; p=1; f i gur e( p) ; subpl ot ( 2, 1, 1) ; i mshow( A) ; t i t l e( ' I magen Or i gi nal ' ) ; subpl ot ( 2, 1, 2) ; i mhi st ( A) ; t i t l e( ' Hi st ogr ama' ) ; p=p+1; I mg=i mr ead( ' pi nos512. bmp' ) ; A=i m2doubl e( A) ; [ f i l , col ] = si z e( I mg) ; t ot al _ pi xel s = f i l * col ; I mgeq = zer os( f i l , col ) ; hi st = i mhi st ( I mg) ; I mg = doubl e ( I mg) ; pr obabi l i dad = zer os ( 1, 256) ; acumul ada = zer os( 1, 256) ; ecual i zador = zeros( 1, 256) ; f or k=1: 256 pr o babi l i dad( k) =hi s t ( k) / t ot al _ pi xel s ; end acumul ada( 1) = pr obabi l i dad( 1) ; f or k = 2: 256 acumul ada( k) = acumul ada( k- 1) + pr obabi l i dad( k) ; end f or k=1: 256 ecual i zador ( k) = acumul ada( k) *256; end f or i =1: f i l f or j =1: col k = I mg( i , j ) ; I mgeq( i , j ) =ecual i zador ( k+1) ; end end I mg = ui nt 8( I mg) ; I mgeq = ui nt 8( I mgeq) ; f i gur e( p) ; subpl ot ( 2, 2, 1) ; i mshow( I mg, [ 0, 255] ) ; t i t l e( ' I magen Or i gi nal ' ) ; s ubpl ot ( 2, 2, 2) ; i mhi s t ( I mg) ; t i t l e( ' Hi s t o. I m. Or i g' ) ; subpl ot ( 2, 2, 3) ; i mshow( I mgeq, [ 0, 255] ) ; t i t l e( ' I magen Ecual i z. ' ) ; II

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma subpl ot ( 2, 2, 4) ; i mhi st ( I mgeq) ; t i t l e( ' Hi st o. I m. Ecual i z. ' ) ; p=p+1; i mgOut =I mage0; f i gur e( p) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i f i gur e( p) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i f i gur e( p) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i f i gur e( p) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i f i gur e( p) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i f i gur e( p) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i

mshow( I mage1) ; t i t l e( ' I magen Ecual i zada a 128' ) ; mhi st ( I mage1) ; t i t l e( ' Hi st ogr ama' ) ; p=p+1; mshow( I mage2) ; t i t l e( ' I magen Ecual i zada a 64' ) ; mhi st ( I mage2) ; t i t l e( ' Hi st ogr ama' ) ; p=p+1; mshow( I mage3) ; t i t l e( ' I magen Ecual i zada a mhi st ( I mage3) ; t i t l e( ' Hi st ogr ama' ) ; p=p+1;

32' ) ;

mshow( I mage4) ; t i t l e( ' I magen Ecual i zada a mhi st ( I mage4) ; t i t l e( ' Hi st ogr ama' ) ; p=p+1;

16' ) ;

mshow( I mage5) ; t i t l e( ' I magen Ecual i zada a mhi st ( I mage5) ; t i t l e( ' Hi st ogr ama' ) ; p=p+1;

8' ) ;

mshow( I mage6) ; t i t l e( ' I magen Ecual i zada a mhi st ( I mage6) ; t i t l e( ' Hi st ogr ama' ) ; p=p+1;

2' ) ;

III

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma  A.2. CÓDIGO FUETE. P ARTE 2

cl ose al l ; cl c cl ear al l ; cl ear var s; pat h( pat h, ' C: \ User s\ Pamel a\ Deskt op\ Maest r i a\ PDI \ Pr act i cas\ Pr ac3- Of i ci al ' ) ; i =1; A=i mr ead( ' zonaA_b5. t i f ' ) ; A=i m2doubl e( A) ; A=A/ ( max( max( A) ) ) ; l ar goA = 1500; anchoA= 1688; Acr op=zer os( [ 1500, 1688] ) ; Acr op=A( 1: 1500, 1: 1688) ; hi st A=i mhi st ( Acr op) ; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( Acrop) ; t i t l e( ' Zona A cor t ada' ) ; s ubpl ot ( 2, 1, 2) ; i mhi s t ( Acr op) ; t i t l e( ' Hi s t ogr ama' ) ; i =i +1; B=i mr ead( ' zonaB_b5. t i f ' ) ; B=i m2doubl e( B) ; B=B/ ( max( max( B) ) ) ; l ar goB= 1500; anchoB= 1688; Bcr op=zer os( [ 1500, 812] ) ; Bcr op=B( 1: 1500, 1689: 2500) ; hi st B=i mhi st ( Bcr op) ; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( Bcrop) ; t i t l e( ' Zona B cor t ada' ) ; s ubpl ot ( 2, 1, 2) ; i mhi s t ( Bcr op) ; t i t l e( ' Hi s t ogr ama' ) ; I mage1=zer os( [ 1500, 2500] ) ; I mage1( 1: 1500, 1: 1688) =Acr op; I mage1( 1: 1500, 1689: 2500) =Bcr op; i =i +1; i mwr i t e( I mage1, ' Mosai co1. t i f ' ) ; i mwr i t e( Acr op, ' Acr op. t i f ' ) ; i mwr i t e( Bcr op, ' Bcr op. t i f ' ) ; f i gur e( i ) ; subpl ot ( 2, 2, 1) ; i subpl ot ( 2, 2, 2) ; i subpl ot ( 2, 2, 3) ; i subpl ot ( 2, 2, 4) ; i

mshow( Acrop) ; t i mhi st ( Acrop) ; t i mshow( Bcrop) ; t i mhi st ( Bcrop) ; t i

t l e( ' t l e( ' t l e( ' t l e( '

Zona A Cor t ada' ) ; Hi st ogr ama Zona A' ) ; Zona B Cor t ada' ) ; Hi st ogr ama Zona B' ) ; i =i +1;

i =i +1; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage1) ; t i t l e( ' Mosai co Robust o' ) ; subpl ot ( 2, 1, 2) ; i mhi st ( I mage1) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; IV

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma f i gur e( i ) ; i mshow( I mage1) ; t i t l e( ' Mosai co Robust o' ) ; i =i +1; %Apl i cando l a Especi f i caci on con r espect o a A. HA=i mhi st ( Acr op) ; Bi mEsp=hi st eq( Bcr op, HA) ; f i gur e( i ) ; subpl ot ( 2, 2, 1) ; i mshow( Bcrop) ; t i t l e( ' I magen Or i gi nal ' ) ; subpl ot ( 2, 2, 2) ; i mhi st ( Bcrop) ; t i t l e( ' Hi st ogr ama I magen Or i gi nal ' ) ; subpl ot ( 2, 2, 3) ; i mshow( Bi mEsp) ; t i t l e( ' Zona B Especi f i cada con r espect o a zona A' ) ; subpl ot ( 2, 2, 4) ; i mhi st ( Bi mEsp) ; t i t l e( ' Hi st ogr ama I magen Especi f i cada' ) ; i =i +1; f i gur e( i ) ; i mshow( Bi mEsp) ; t i t l e( ' I magen Especi f i cada' ) ; i =i +1; I mage2=zer os( [ 1500, 2500] ) ; I mage2( 1: 1500, 1: 1688) =Acr op; I mage2( 1: 1500, 1689: 2500) =Bi mEsp; i mwr i t e( I mage2, ' Mosai co2. t i f ' ) ; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage2) ; t i t l e( ' Mosai co: Zona B especi f i cado con r espect o a Zona A' ) ; subpl ot ( 2, 1, 2) ; i mhi st ( I mage2) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; f i gur e( i ) ; i mshow( I mage2) ; t i t l e( ' Mosai co: Zona B especi f i cado con r espect o a Zona A' ) ; i =i +1; %Apl i cando l a Especi f i caci on con r espect o a A. HB=i mhi st ( Bcr op) ; Ai mEsp=hi st eq( Acr op, HB) ; f i gur e( i ) ; subpl ot ( 2, 2, 1) ; i mshow( Acrop) ; t i t l e( ' I magen Or i gi nal ' ) ; subpl ot ( 2, 2, 2) ; i mhi st ( Acrop) ; t i t l e( ' Hi st ogr ama I magen Or i gi nal ' ) ; subpl ot ( 2, 2, 3) ; i mshow( Ai mEsp) ; t i t l e( ' Zona A Especi f i cada con r espect o a zona B' ) ; subpl ot ( 2, 2, 4) ; i mhi st ( Ai mEsp) ; t i t l e( ' Hi st ogr ama I magen Especi f i cada' ) ; i =i +1; f i gur e( i ) ; i mshow( Ai mEsp) ; t i t l e( ' I magen Especi f i cada' ) ; i =i +1; I mage3=zer os( [ 1500, 2500] ) ; I mage3( 1: 1500, 1: 1688) =Ai mEsp; I mage3( 1: 1500, 1689: 2500) =Bcr op; i mwr i t e( I mage3, ' Mosai co3. t i f ' ) ; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage3) ; t i t l e( ' Mosai co: Zona A especi f i cado con r espect o a Zona B' ) ; subpl ot ( 2, 1, 2) ; i mhi st ( I mage3) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; f i gur e( i ) ; V

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma i mshow( I mage3) ; t i t l e( ' Mosai co: Zona A especi f i cado con r espect o a Zona B' ) ; i =i +1; %zona de Tr asl ape At r asl ap=zer os( [ 1500, 150] ) ; Bt r asl ap=zer os( [ 1500, 150] ) ; At r asl ap=Acr op( 1: 1500, 1539: 1688) ; Bt r asl ap=Bcr op( 1: 1500, 1: 150) ; I mage0( 1: 1500, 1: 150) =At r asl ap; I mage0( 1: 1500, 151: 300) =Bt r asl ap; f i gur e( i ) ; pos1 = [ 0. 1 0. 15 0. 4 0. 7] ; subpl ot ( ' Posi t i on' , pos1) ; i mshow( I mage0) ; t i t l e( ' Zona de Tr asl ape' ) ; pos2 = [ 0. 5 0. 15 0. 4 0. 7] ; subpl ot ( ' Posi t i on' , pos2) ; i mhi st ( I mage0) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; %Apl i cando l a Especi f i caci on con r espect o a Zona de Tr asl ape. Ht r asl =i mhi st ( I mage0) ; Ai mEspt =hi st eq( Acr op, Ht r asl ) ; Bi mEspt =hi st eq( Bcr op, Ht r asl ) ; I mage3=zer os( [ 1500, 2500] ) ; I mage3( 1: 1500, 1: 1688) =Ai mEspt ; I mage3( 1: 1500, 1689: 2500) =Bi mEspt ; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage3) ; t i t l e( ' Mosai co: Zona A especi f i cado con r espect o a Zona de Tr asl ape' ) ; subpl ot ( 2, 1, 2) ; i mhi st ( I mage3) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; f i gur e( i ) ; i mshow( I mage3) ; t i t l e( ' Mosai co: Zona A especi f i cado con r espect o a Zona de  Tr asl ape' ) ; i =i +1; %Apl i cando l a Especi f i caci on con r espect o a Zona de Tr asl ape. l i neT=zer os( [ 1500 4] ) ; l i neT( 1: 1500, 1: 2) =Ai mEsp( 1: 1500, 1687: 1688) ; l i neT( 1: 1500, 3: 4) =Bi mEspt ( 1: 1500, 1: 2) ; Li neTesp=hi st eq( l i neT, Ht r asl ) ; Li neTesp=hi st eq( Li neTesp, Ht r asl ) ; Bt r as=Bi mEspt ( 1: 1500, 3: 812) ; Bt r asl =hi st eq( Bt r as, Ht r asl ) ; I mage4=zer os( [ 1500, 2500] ) ; I mage4( 1: 1500, 1: 1686) =Ai mEsp( 1: 1500, 1: 1686) ; I mage4( 1: 1500, 1687: 1690) =Li neTesp; I mage4( 1: 1500, 1691: 2500) =Bi mEsp( 1: 1500, 3: 812) ; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage4) ; t i t l e( ' Mosai co Mej or ado' ) ; subpl ot ( 2, 1, 2) ; i mhi st ( I mage4) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; f i gur e( i ) ; VI

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma i mshow( I mage4) ; t i t l e( ' Mosai co Semi f i nal ' ) ; i =i +1; I mage5=hi st eq( I mage4, HB) ; f i gur e( i ) ; i mshow( I mage4) ; t i t l e( ' Mosai co Mej or ado' ) ; i =i +1; i mwr i t e( I mage3, ' Mosai coFi nal . png' ) ; cl c c l ear al l ; cl ear var s; A=i mr ead( ' Mosai coFi nal . png' ) ; A=i m2doubl e( A) ; A=A/ ( max( max( A) ) ) ; I mage1=hi st eq( A, 128) ; I mage2=hi st eq( A, 64) ; I mage3=hi st eq( A, 32) ; I mage4=hi st eq( A, 16) ; I mage5=hi st eq( A, 8) ; I mage6=hi st eq( A, 2) ; i =1; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage1) ; t i subpl ot ( 2, 1, 2) ; i mhi st ( I mage1) ; t i f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage2) ; t i subpl ot ( 2, 1, 2) ; i mhi st ( I mage2) ; t i f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage3) ; t i subpl ot ( 2, 1, 2) ; i mhi st ( I mage3) ; t i f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage4) ; t i subpl ot ( 2, 1, 2) ; i mhi st ( I mage4) ; t i f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage5) ; t i subpl ot ( 2, 1, 2) ; i mhi st ( I mage5) ; t i f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( I mage6) ; t i subpl ot ( 2, 1, 2) ; i mhi st ( I mage6) ; t i

t l e( ' Mosai co Especi f i cado a 128' ) ; t l e( ' Hi st ogr ama' ) ; i =i +1; t l e( ' Mosai co Especi f i cado a 64' ) ; t l e( ' Hi st ogr ama' ) ; i =i +1; t l e( ' Mosai co Especi f i cado a 32' ) ; t l e( ' Hi st ogr ama' ) ; i =i +1; t l e( ' Mosai co Especi f i cado a 16' ) ; t l e( ' Hi st ogr ama' ) ; i =i +1; t l e( ' Mosai co Especi f i cado a 8' ) ; t l e( ' Hi st ogr ama' ) ; i =i +1; t l e( ' Mosai co Especi f i cado a 2' ) ; t l e( ' Hi st ogr ama' ) ; i =i +1;

VII

PROCESAMIENTO DIGITAL DE IMÁGENES Proyecto No.3 .- Ecualización, Especificación y Distancia de Histograma  A.3. CÓDIGO FUETE. P ARTE 3

cl ose al l ; cl c; cl ear al l ; cl ear var s; Fi l e=l oad( ' cor azon. mat ' ) ; I mage=Fi l e. I mgPat ch; mx=max( max( I mage) ) ; C=I mage/ mx; i =1; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i mshow( C) ; t i t l e( ' I magen Cor azon' ) ; s ubpl ot ( 2, 1, 2) ; i mhi s t ( C) ; t i t l e( ' Hi s t ogr a ma' ) ; i =i +1; %Def i ni endo el t amaño de l a vent ana y l os vect or es k=14; l =14; vec1=( C( 59: ( 59+k) , 59: ( 59+l ) ) ) ; vec2=( C( 100: ( 100+k) , 51: ( 51+l ) ) ) ; vec3=( C( 82: ( 82+k) , 101: ( 101+l ) ) ) ; hv1=i mhi st ( vec1) ; hv2=i mhi st ( vec2) ; hv3=i mhi st ( vec3) ; %Ubi caci on de l as vent anas muest r eadas Cw=zer os( [ 171, 155] ) ; Cw=C; Cw( 59: ( 59+k) , 59: ( 63+l ) ) =0; Cw( 100: ( 100+k) , 51: ( 51+l ) ) =0; Cw( 82: 96, 101: 116) =0; f i gur e( i ) ; i mshow( Cw) ; t i t l e( ' l ocal i zaci on de l os vectores' ) ; i =i +1; f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i f i gur e( i ) ; subpl ot ( 2, 1, 1) ; i subpl ot ( 2, 1, 2) ; i

mshow( vec1) ; t i t l e( ' Vector1' ) ; mhi st ( vec1) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; mshow( vec2) ; t i t l e( ' Vector2' ) ; mhi st ( vec2) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1; mshow( vec3) ; t i t l e( ' Vector3' ) ; mhi st ( vec3) ; t i t l e( ' Hi st ogr ama' ) ; i =i +1;

haver =( ( hv1) +( hv3) +( hv2) ) . / 3; [ x, y] =s i z e( C) ; i mer r or =zer os( [ x+k, y+l ] ) ; A=zer os( [ x+k, y+l ] ) ; A( 6: 176, 3: 153) =C( 1: 171, 1: 151) ; [ mf , nf ] =si ze( A) ; VIII

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF