Willian Herrera Díaz - DSpace@UCLV

Anuncio
Universidad Central “Marta Abreu” de Las Villas
Facultad de Ingeniería Eléctrica
Centro de Estudios de Electrónica y Tecnologías de la Información
Evaluación objetiva de métodos para la reducción de ruidos en imágenes de microscopía óptica
médica.
Autor: Willian Herrera Díaz
Tutor: Dr. Rubén Orozco Morales
Santa Clara
2013
"Año 55 del Triunfo de la Revolución"
Universidad Central “Marta Abreu” de Las Villas
Facultad de Ingeniería Eléctrica
Departamento de Automática y Sistemas Computacionales
Evaluación objetiva de métodos para la reducción de ruidos en imágenes de microscopías.
Autor: Willian Herrera Díaz
Tutor: Dr. Rubén Orozco Morales
Santa Clara
2013
"Año 55 del Triunfo de la Revolución"
Hago constar que el presente trabajo de diploma fue realizado en la Universidad Central “Marta
Abreu” de Las Villas como parte de la culminación de estudios de la especialidad de Ingeniería
en Automática, autorizando a que el mismo sea utilizado por la Institución, para los fines que
estime conveniente, tanto de forma parcial como total y que además no podrá ser presentado en
eventos, ni publicados sin autorización de la Universidad.
Firma del Autor
Los abajo firmantes certificamos que el presente trabajo ha sido realizado según acuerdo de la
dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de
esta envergadura referido a la temática señalada.
Firma del Autor
Firma del Jefe de Departamento
donde se defiende el trabajo
Firma del Responsable de
Información Científico-Técnica
i
La inteligencia consiste no sólo en el conocimiento, sino también en la destreza de aplicar los
conocimientos en la práctica.”
Aristóteles.
ii
A mi familia, por creer siempre en mí y apoyarme
aun cuando era difícil.
iii
AGRADECIMIENTOS.
Quiero agradecer a mis padres, hermana, abuelos y a todo el resto de la familia, por todo el apoyo
y dedicación que me han brindado en este tiempo y en general en toda mi carrera. Especialmente
a mi mamá por toda la paciencia y dedicación que ha tenido para conmigo en mi vida.
Quiero agradecer también a todos mis maestros, entrenadores tutores y profesores, desde Imer
Riverón, en los lejanos tiempos del Círculo Infantil, donde me enseñó mis primeros pasos, hasta
el profesor Dr. Rubén Orozco Morales tutor de esta tesis, y en general a todos los profesores del
CEETI que de una forma u otra me han asistido y apoyado, en especial al profesor Julián
Cárdenas gracias por sus concejos, igualmente, al profesor Lázaro Valdés que tan gentilmente me
ha apoyado en la realización de este trabajo.
Mi agradecimiento lo hago extensivo a todos mis compañeros de aula, así como a todos mis
amigos, que igualmente me han apoyado y ayudado en todos mis estudios y en mi vida en
general. A Roger, Katerina y Eddy que me acogieron en su cuarto y han sabido ser mis amigos en
este corto periodo en que nos conocimos, a los Ing. Alexis R. Ramos y Frank A. Pérez que desde
el pre universitario me vienen empujando hasta sacar la universidad, a Julio Cesar mi cuñado que
sin su ayuda hubiera pasado el doble del trabajo que pase con la programación de la tesis.
En resumen quiero agradecer a todos aquellos que de una forma u otra han estado al tanto de mi
vida, brindándome siempre su apoyo, dedicación y preocupación por mi.
iv
TAREA TÉCNICA.
1.
Revisión bibliográfica del estado de las funcionalidades existentes relacionadas a la
gestión y el control del proceso de análisis de la calidad de las imágenes de microscopía óptica
celular.
2.
Caracterización y selección de las herramientas y tecnologías de desarrollo que se usarán
en la realización del sistema.
3.
Identificar y definir los requerimientos del software para la gestión del proceso de análisis
de la calidad de las imágenes de microscopía óptica celular.
4.
Realización de diagramas y demás documentación relacionada con el desarrollo del
sistema.
5.
Realización del diseño del software para la gestión del proceso de análisis de la calidad de
las imágenes de microscopía óptica celular.
6.
Diseño de la propuesta de solución.
7.
Implementación del sistema de gestión y control del proceso de análisis de la calidad de
las imágenes de microscopía óptica celular.
8.
Realización de pruebas al sistema de gestión y control del proceso de análisis de la
calidad de las imágenes de microscopía óptica celular.
Firma del Autor
Firma del Tutor
v
RESUMEN.
El acondicionamiento de las imágenes de microscopía óptica médica es una tarea fundamental en
el estudio de las patologías y procedimientos de diagnóstico bajo investigación. Para la
simulación de imágenes reales, sin embargo, estos procedimientos de acondicionamiento pueden
introducir pérdidas sustanciales en la calidad de las imágenes, con lo que se dificultaría el
diagnóstico o estudio a realizar. Con los resultados obtenidos en este trabajo se determinan
valores máximos de varianza y escalado, para los cuales las imágenes de interés no sufren
pérdidas significativas de información, al ser sometidas a procesos de filtrado con vista a la
reducción de los diversos ruidos, lo cual se cuantifica objetivamente mediante medidas de
calidad. Para ello se desarrollan métodos y algoritmos programados en MATLAB.
vi
TABLA DE CONTENIDOS.
La inteligencia consiste no sólo en el conocimiento, sino también en la destreza de aplicar los
conocimientos en la práctica.” .........................................................................................................i
AGRADECIMIENTOS. .............................................................................................................. iii
TAREA TÉCNICA. ......................................................................................................................iv
RESUMEN. ..................................................................................................................................... v
TABLA DE CONTENIDOS. ........................................................................................................vi
INTRODUCCIÓN. ......................................................................................................................... 1
Objetivos: ......................................................................................................................................... 3
Objetivo General: ............................................................................................................................. 3
Objetivos específicos: ...................................................................................................................... 4
Organización del informe. ................................................................................................................ 5
CAPÍTULO 1. ................................................................................................................................. 6
Definiciones y Objetivos................................................................................................................. 6
1.1
Introducción. ...................................................................................................................... 7
1.2
Conceptos básicos.............................................................................................................. 7
1.3
Las imágenes médicas en formato digital. ......................................................................... 8
1.4
Procesamiento de Imágenes de Microscopía Óptica Médica. ........................................... 9
1.5
Factores que limitan la calidad de una micrografía ......................................................... 11
1.5.1
Fuentes de ruido ....................................................................................................... 12
1.5.2
Otras fuentes auxiliares de ruido: ............................................................................. 12
1.6
Procesos de filtrados. ....................................................................................................... 12
1.7
Medidas de calidad en imágenes. .................................................................................... 14
1.7.1
Medidas objetivas para estimar calidad en las imágenes. ........................................ 14
1.7.2
Medidas de calidad subjetivas. ................................................................................. 15
vii
1.8
Programas precursores en el campo del estudio de las imágenes medicas ..................... 16
1.9
Soluciones existentes y propuesta sobre la reducción de ruido en las imágenes de
microscopía óptica.......................................................................................................................... 16
1.9.1
Soluciones existentes................................................................................................ 16
1.10
Soluciones propuestas. ................................................................................................. 17
CAPÍTULO 2. ............................................................................................................................... 18
Materiales y Métodos. .................................................................................................................. 18
2.1
Introducción. .................................................................................................................... 19
2.2
Métodos y preparación de las imágenes de prueba. ........................................................ 19
2.2.1
2.3
2.3.1
Caracterización de los ruidos. ...................................................................................... 20
Imágenes utilizadas.......................................................................................................... 20
Contaminación de las imágenes. .................................................................................. 20
2.3.1.1
Contaminación con ruido Gaussian y Speckle. ........................................................ 21
2.3.1.2
Contaminación con ruido Poisson. ........................................................................... 21
2.4
Medidas objetivas de calidad. .......................................................................................... 22
2.5
Trazado de los resultados. ............................................................................................... 23
2.6
Salvado. ........................................................................................................................... 24
2.7
Resultados parciales. ....................................................................................................... 25
2.8
Filtrado de las imágenes contaminadas. .......................................................................... 26
2.8.1
Filtrado Gaussiano. ...................................................................................................... 26
2.8.2
Filtrado por Wavelet Pack. .......................................................................................... 26
2.9
Análisis. ........................................................................................................................... 28
2.10
Trazado y salvado. ....................................................................................................... 28
2.11
Conclusiones parciales. ................................................................................................ 28
CAPÍTULO 3. ............................................................................................................................... 29
viii
Resultados y Discusión. ................................................................................................................ 29
3.1
Introducción. .................................................................................................................... 30
3.2
El grupo de imágenes de prueba. ..................................................................................... 30
3.5
Resultados de las medidas objetivas de calidad. ............................................................. 30
3.3.1
Análisis de graficos de contaminación de imágenes. ............................................... 31
3.3.2
Análisis de graficos de filtrado de imágenes. ........................................................... 33
3.4
Análisis de los resultados de las tablas. ........................................................................... 34
3.5
Herramientas construidas. ............................................................................................... 37
3.6
Análisis económico.......................................................................................................... 37
3.7
Conclusiones del capítulo. ............................................................................................... 37
CONCLUSIONES Y .................................................................................................................... 39
RECOMENDACIONES. ............................................................................................................. 39
Conclusiones. ................................................................................................................................. 40
Recomendaciones. .......................................................................................................................... 40
REFERENCIAS BIBLIOGRÁFICAS. ...................................................................................... 41
ANEXOS. ...................................................................................................................................... 44
Anexo I
Anexo II
Códigos programados en Matlab.............................................................................. 45
Imágenes. .............................................................................................................. 92
INTRODUCCIÓN.
1
INTRODUCCIÓN.
INTRODUCCIÓN.
2
La salud ha sido preocupación constante en la vida del hombre como una forma de evitar
padecimientos y enfermedades que conlleven al deterioro de la calidad de vida, por lo que se han
desarrollado técnicas y herramientas con el fin de llegar a develar la raíz de dichas enfermedades.
Nace así la medicina como la principal rama investigativa que profundiza los conocimientos del
cuerpo humano y sus misterios.
Para este fin se ha nutrido de numerosas y alternas fuentes investigativas y de desarrollo como
son la química, la biología, la física, etc… que han aportado sus conocimientos y avances en este
sentido, citándose así los rayos x, el mapa genético, la microscopía, etc… Con el nacimiento de
las TIC (Tecnologías de las Informáticas y las Comunicaciones) se abre un campo de diversas
posibilidades de investigación y control del funcionamiento del organismo humano, lanzando al
mundo a una carrera vertiginosa en el perfeccionamiento de novedosas aplicaciones, técnicas y
herramientas para facilitar el trabajo del hombre en este sentido. Con este fin se crean diversos
equipamientos tecnológicos que permiten la recolección y procesamiento (entre otras
aplicaciones) de datos biológicos que, en conjunción con el software médico, presentan una
importante vía de obtención, procesamiento y optimización de la información requerida.
Un ejemplo de dicho equipamiento tecnológico es el microscopio óptico posibilita la recolección
de imágenes digitales de células, utilizadas para visualizar patologías, estructuras, defectos,
organismos vivos, complementando una amplia gama de aplicaciones del campo microbiológico.
Las imágenes digitales de fotomicrografía se han establecido por décadas como una poderosa
herramienta de diagnóstico que produce imágenes 2-D y 3-D, permitiendo establecer las
propiedades del objeto en cuestión.
Cuba, como potencia médica, se ha empeñado en el desarrollo de diversos software médicos que
la inserten en el mundo informatizado del género. Para esto ha otorgado la responsabilidad de
desarrollar dichos software a diversas instituciones como son la Universidad de Ciencias
Informáticas, Instituto de Investigaciones Digitales, Centro de Estudio y Enseñanza de la
Tecnología de la Investigación (CEETI) de la Universidad Central de Las Villas “Marta Abreu”
(UCLV).
El CEETI es un departamento de la Facultad de Ingeniería Eléctrica que cuenta con varios
departamentos encaminados a los estudios de la tecnología y la investigación. Dicho local cuenta
con un excelente conjunto de profesionales investigadores que además de dedicarse a la
INTRODUCCIÓN.
3
investigación, ejercen la noble tarea de educar y formar ingenieros especializados en el tema de la
información, la tecnología y en especial en el campo médico.
El alto centro de estudios ha venido efectuando numerosas investigaciones sobre enfermedades
como la malaria y el cáncer de útero, dichas imágenes de microscopía deben ser evaluadas luego
de realizarles algún procesamiento digital. Esta evaluación requiere de la implementación de
varios métodos que cuantifiquen la calidad, lo cual suele ser un trabajo altamente engorroso,
tedioso y demorado, por lo que los especialistas pueden incurrir en errores por cansancio del
personal. Además la máxima resolución que puede obtenerse con un microscopio óptico es de
2000 aumentos, por ello hay algunos elementos estructurales que son tan finos que no pueden
visualizarse a través del microscopio óptico, por lo que los ajustes de brillo y contraste son
necesarios para ajustar la visualización e impresión de la imagen, teniendo en cuenta que el valor
de los pixeles de la imagen resultante no debe ser cambiado. [2]. También se tiene en cuenta que
estas imágenes tienen la característica de no ser referenciadas a la hora de estimar su calidad, por
lo que se plantea la siguiente interrogante científica: ¿Cómo lograr estimar la calidad objetiva de
las imágenes dentro de los límites aceptables para que continúe siendo óptima para el
diagnóstico?
Para la guía de esta investigación se plantea, como idea a defender, que con el análisis
automatizado de la calidad de las imágenes se podrá procesar gran número de objetos en cortos
períodos de tiempo y no dependiendo de los operadores, garantizando así una mayor eficiencia en
el manejo de la información, definiéndose como objeto de estudio la gestión de la información
en el proceso generado durante el análisis de calidad de las imágenes, enmarcado en el campo de
acción el desarrollo de un sistema para el análisis del ruido de imágenes de microscopía óptica
médica.
Objetivos:
Objetivo General:
Contribuir al desarrollo de un sistema automatizado para la supresión de ruido y la valoración
objetiva de la calidad de las imágenes de microscopía óptica médica.
INTRODUCCIÓN.
4
Objetivos específicos:
1.
Realizar un estudio de las bibliografías referidas al proceso de análisis de la calidad de las
imágenes de microscopía óptica celular.
2.
Estudiar los tipos de ruidos que afectan a las imágenes de microscopía óptica.
3.
Caracterizar los tipos de ruidos y calcular los parámetros de calidad de las imágenes
afectadas por estos ruidos.
4.
Evaluar métodos de supresión de ruidos.
5.
Realizar las pruebas necesarias para garantizar la operatividad del experimento.
Para dar cumplimiento a los objetivos específicos determinados se definen las siguientes tareas de
investigación:
1.
Revisión bibliográfica del estado de las funcionalidades existentes relacionadas con la
gestión y el control del proceso de análisis de la calidad de las imágenes de microscopía óptica
celular.
2.
Caracterización y selección de las herramientas y tecnologías de desarrollo que se usarán
en la realización del sistema.
3.
Identificación y definición los requerimientos del software para la gestión del proceso de
análisis de la calidad de las imágenes de microscopía óptica celular.
4.
Realización de diagramas y demás documentación relacionada con el desarrollo del
sistema.
6.
Realización del diseño del software para la gestión del proceso de análisis de la calidad de
las imágenes de microscopía óptica celular.
7.
Diseño de la propuesta de solución.
5.
Implementación del sistema de gestión y control del proceso de análisis de la calidad de
las imágenes de microscopía óptica celular.
6.
Realización de pruebas al sistema de gestión y control del proceso de análisis de la
calidad de las imágenes de microscopía óptica celular.
INTRODUCCIÓN.
5
Organización del informe.
El presente trabajo estará compuesto por introducción, tres capítulos, conclusiones,
recomendaciones, bibliografías, anexos y glosario de términos.
En el Capítulo 1. “Definiciones y Objetivos”: Se realizará un estudio del arte del proceso de
gestión de la información resultante de la recopilación de imágenes médicas. Además se abordará
el tema del lenguaje de programación, la metodología de desarrollo, patrones de casos de uso y
las principales herramientas a utilizar. Se definen los tipos de que contaminan comúnmente a las
imágenes de microscopía celular y las métricas de calidad que se utilizan para cuantificar la
degradación de las imágenes.
En el Capítulo 2. ” Materiales y Métodos”: Se reflejará una detallada descripción del
experimento realizado. Se abordaran temas como los mecanismos y métodos de contaminación
de las imágenes y filtrado de las mismas.
En el Capítulo 3. ¨Resultados y Discusión”: Se mostraran los resultados obtenidos en cada uno de
los experimentos. Estos resultados compuestos por imágenes, datos y exclusiones serán
analizados en este capítulo.
Para finalizar el trabajo serán expuestos las conclusiones, las recomendaciones, las referencias
bibliográficas y el conjunto de anexos para un mejor entendimiento de lo presentado a lo largo de
la investigación.
CAPÍTULO 1. Definiciones y Objetivos.
6
CAPÍTULO 1.
Definiciones y Objetivos.
CAPÍTULO 1. Definiciones y Objetivos.
1.1
7
Introducción.
La microscopía es la técnica de producir imágenes visibles de estructuras o detalles demasiado
pequeños para ser vistos a simple vista. En la microscopia se evidencian los grandes aportes que
la física ha hecho a la biología.
Exceptuando técnicas como la microscopía de fuerza atómica, de iones de campo y de efecto de
túnel, la microscopía generalmente implica fenómenos como la difracción, refracción o reflexión
de radiación en el sujeto de estudio. Específicamente, este trabajo se centra en los principales
tipos de ruidos que comúnmente contaminan a las imágenes de microscopía óptica médica, cuya
producción está asociada a la física geométrica, así como la captación mediante dispositivos de
censado electrónico a base de silicio, en los cuales la imagen responde a la producción de cargas
eléctricas como consecuencia de la acumulación de fotones sobre ellos; esto es la
fotomicrografía.
Para tener una imagen detallada y fiel en cuanto a calidad, de los microorganismos y sus
fenómenos, se debe tener correspondiente a la parte óptica: la luz, la cantidad de esta y su
intensidad en la muestra, además de que proviene de forma directa por medio de un bombillo
incorporado (electricidad) o un espejo a través del cual se dé la reflexión de la luz. Están los
lentes, con poderes de aumento y resolución y en tercer lugar está el índice de refracción con las
distintas muestras en estudio, en cuanto a la parte mecánica tenemos tornillos y engranajes.
También hay una forma de microscopía que se basa en una sonda muy pequeña que reconoce las
perturbaciones ocurridas en el extremo de la sonda debidas a efectos eléctricos. [20]
El presente capítulo está destinado a abarcar los principales conceptos que se asocian a los ruidos
que contaminan a las imágenes de microscopía óptica celular permitiendo una mejor
comprensión de la misma en sentido general. Se realiza un análisis de las soluciones existentes en
relación a la gestión de la información en el proceso de análisis de la calidad de las imágenes de
microscopía óptica celular.
1.2
Conceptos básicos.
Para una mejor comprensión durante el transcurso de la investigación es necesario esclarecer
algunos términos y conceptos que se utilizaron en el desarrollo de la misma.[9]
CAPÍTULO 1. Definiciones y Objetivos.

8
Imagen: es una función de dos variables, f(x, y), donde x e y son coordenadas espaciales
y el valor de f en un punto dado es la intensidad o nivel de gris de la imagen en dicho punto.

Imagen Digital: dado un número finito de elementos, f(x, y), cada uno de los cuales tiene
una localización y magnitud determinadas: estos elementos reciben el nombre de píxeles (especie
de contracción del inglés picture element). [9]

Imagen Médica: es una imagen del cuerpo humano con fines médicos.

Ruido: referente a la distorsión en imágenes.

Distorsión: es la deformación que sufre una señal tras su paso por un sistema.

Calidad de Imagen: es el cumplimiento de los requisitos, explícitos o implícitos, para la
satisfacción de un usuario.
1.3
Las imágenes médicas en formato digital.
Una imagen médica es la representación de un órgano, tejido, o proceso fisiológico que se
obtiene través de procesos físicos ordenados para este fin. Estas representaciones se utilizan para
emitir diagnósticos o evaluar cambios que ocurren en el paciente con el transcurso de un
tratamiento [4]. En la Figura 1 podemos ver ejemplos de imágenes médicas obtenidas por
diversas modalidades de obtención.
Figura 1. Ejemplos de imágenes obtenidas por diversas modalidades de obtención, a) radiografía
digital, b) resonancia magnética, c) tomografía por Emisión Positrones, d) tomografía axial
computarizada.
Las imágenes pueden considerarse como una función bidimensional:
I = f (x, y)
CAPÍTULO 1. Definiciones y Objetivos.
9
Don de I es el valor de intensidad en la coordenada x, y de la matriz que representa la imagen.
Una imagen digital es la representación de un objeto real como un conjunto finito de valores
discretos que se obtienen cuando se cuantifican las coordenadas espaciales y la intensidad. Estos
valores discretos se denominan píxeles y es el menor elemento en que se descompone una
imagen. La cantidad de memoria utilizada para almacenar un valor de intensidad se conoce como
profundidad de bits y se expresa en bits-por-píxel (bpp).
Las imágenes médicas digitales y sus aplicaciones en la medicina, en general en el campo de los
estudios biotecnológicos, han ayudado al desarrollo de sistemas de diagnóstico por imágenes
dado su fácil acceso mediante un ordenador, por ser transferibles a cualquier lugar en muy poco
tiempo a través de las redes de comunicación digital y no deteriorarse físicamente con el tiempo.
Una de las cualidades más favorables de las imágenes digitales es que admiten una serie de
procedimientos posterior a su adquisición en función de mejorar sus cualidades con fines de
diagnóstico o de investigación, a la vez que se pueden realizar procedimientos para la extracción
o identificación de parámetros de importancia clínica [4].
1.4
Procesamiento de Imágenes de Microscopía Óptica Médica.
El aseguramiento de la calidad y rendimiento de los métodos que implican procesamiento de
imágenes de Microscopia Óptica Médica, es una preocupación constante, ya que se ve obstruido
por la gran dificultad para ver a simple vista las irregularidades en las mismas, debido al ruido
implícito en la obtención de las mismas, y es que esto se debe a que la máxima resolución que
puede obtenerse con un microscopio óptico es de 2000 aumentos, obteniéndose como resultado
que algunos elementos estructurales, sean tan finos que no se pueden visualizar a través del
microscopio óptico Figura 2.
Los ajustes de brillo y contraste son necesarios para ajustar la visualización e impresión de la
imagen poniendo en directo peligro la objetividad y efectividad del diagnóstico ya que el valor
de los píxeles de la imagen resultante no debe ser modificado.
CAPÍTULO 1. Definiciones y Objetivos.
10
Figura 2. Muestra de tejido fino.
Actualmente se pretende agilizar el proceso de diagnóstico de calidad derivado del procesamiento
de las imágenes de microscopía óptica médica, contribuyendo a la capacidad de respuesta a través
de la optimización de dicho proceso, por lo que se generan datos que respalden de manera
confiable y segura la calidad de la imagen; esto que posibilita alcanzar las normas y estándares
establecidos, contribuyendo con el desarrollo social, económico, endógeno y sustentable del país
y del campo en estudio.
Entre las principales tareas para alcanzar lo anteriormente expuesto en este estudio se deben
puntualizar:

Identificación y estudio de los tipos de ruidos presentes en la imagen.

Ajuste de la imagen.

Análisis de calidad de la imagen contaminada obtenida.

Trazado de los resultados obtenidos en la parte de condicionamiento de las imágenes.

Filtrado de las imágenes contaminadas teniendo en cuenta las características de las
utilizadas en el filtrado.

Análisis de calidad de las imágenes obtenidas a través de los procesos de filtrado.

Trazado de los resultados obtenidos en el proceso de filtrado de las imágenes.

Arribo de conclusiones a partir de los resultados obtenidos teniendo en cuenta los
parámetros utilizados en los procesos mencionados.
CAPÍTULO 1. Definiciones y Objetivos.
11
Para la realización de las tareas planteadas con anterioridad es necesario el desempeño de los
siguientes pasos:

Seleccionar las imágenes.

Identificar los ajustes necesarios a la imagen para la correcta realización de las pruebas.

Establecer los parámetros operacionales acerca de la ejecución de las pruebas, así como
protocolos y demás procedimientos para la identificación del ruido implícito en las imágenes.

Establecer determinaciones analíticas para la ejecución de las pruebas.

Programar las actividades en cuanto a la ejecución de las pruebas.

Ejecutar las pruebas.

Analizar el comportamiento de las imágenes en cuestión.

Almacenar los datos emitidos por las pruebas.

Reportar la información arrojada por las pruebas realizadas de manera digital.
Es importante tener en cuenta que cada una de las implementaciones depende de factores que se
relacionan directamente con la fotomicrografía por lo que cada examen resulta diferente en cada
caso, para esto se realiza una catalogación del ruido, diferenciándolo de acuerdo al tipo y grado
de afectación.
La presente investigación está sustentada sobre la idea de garantizar un pleno aprovechamiento
de los recursos que se poseen para el análisis de la calidad de las imágenes de microscopía óptica
celular, así como una mayor productividad, eficacia y eficiencia, asegurando una imagen
acreditada con alta confiabilidad y calidad, que esté sustentada por tecnología actualizada que sea
referente a nivel nacional e internacional, bajo la certificación de la calidad en los procesos y
análisis de imágenes, garantizando tiempos de respuestas adecuadas a las necesidades de los
investigadores.
1.5
Factores que limitan la calidad de una micrografía
Dos fuentes que actúan como los principales limites en las imágenes obtenidas a partir de un
microscopio son: 1) la instrumentación con su inherente límite de resolución, que introduce
ruidos medibles, y 2)la muestra misma, las propiedades ópticas y las características de emisión de
cada una, son no ideales. También el proceso de formación de la imagen en el sensor mediante la
acumulación o cuantons sobre el mismo, siendo esta la principal causa de ruido poisson
(conocido también como ruido cuántico).
CAPÍTULO 1. Definiciones y Objetivos.
12
1.5.1 Fuentes de ruido

Ruido de disparo del fotón:
La limitación fundamental de cualquier foto detector, reside en la naturaleza aleatoria del fotón
emitido. El arribo de los fotones al detector es bien descrito por un proceso poisson donde la
intensidad (estática) es proporcional a la intensidad (física) de la señal fluorescente

Ruido de fondo:
La radiación del ambiente, especialmente en el dominio infrarojo, puede ser una fuente
significativa de ruido; esto también requiere del uso de filtros adicionales en el estado de
detección.

Corrientes oscuras:
Una de las fuentes de ruido internas del detector la más relevante e importante es la agitación
térmica. Los altos niveles de temperatura, los altos niveles de energía cinética de los electrones.
Para detectores de semiconductores, esto resulta en término nombrado corriente oscuro, esta
depende del ascenso de la intensidad de la luz. Cada carga de foto capacitores, cuando la
integración tiempo/temperatura es muy alta.
1.5.2 Otras fuentes auxiliares de ruido:
Para dispositivos de semiconductores el ruido aditivo es generado en el tiempo de lectura/salida.
En particular, la carga transferida en los sensores CMOS es menos eficiente que en los acoples de
carga dispositivo (CCD). [24].
Todos los sistemas que producen imágenes médicas incorporan algún tipo de ruido. Ya sea a
través de hardware mediante la obtención de la imagen o durante un proceso digital de posobtención. Tanto los ruidos como los artefactos, que se puedan encontrar en una imagen,
dificultan el análisis de la misma, ya sea de forma visual o automatizada. Por lo general el ruido
contiene alta densidad de potencia en las altas frecuencias, al igual que los detalles y rasgos finos
de la imagen. [8]
1.6
Procesos de filtrados.
Algunas de las técnicas más utilizadas en los procesos de filtrado de las imágenes son:
Filtrado lineal e invariante FIR o IIR.
Filtrado Kalman o Wiener.
Transformada Wavelet.
Redes neuronales artificiales.
CAPÍTULO 1. Definiciones y Objetivos.
Filtrado de mediana.
13
Análisis espectral de alto orden (HOSA).
Por lo general los métodos más exitosos para la reducción de ruido se basan en transformaciones
no lineales.
Los procesos de filtrado contemplan como premisa:

Velar porque no se generen nuevos detalles en la imagen que puedan ser confundidos con
afecciones o padecimientos.

Evaluar subjetivamente el resultado de cada nuevo método utilizando expertos en
medicina.
Los procesos de filtrado tiene como propósito modificar la relación entre píxeles de acuerdo a la
información espectral, espacial, morfológica, etc., por lo que se utiliza en:

Reducir ruido, mejorar y restaurar.

Detectar bordes y morfologías.

Analizar texturas.

Segmentar.

Determinar gradientes o derivadas direccionales.
Algunos tipos de filtrado para mejorar la calidad de una imagen son:

Frecuencial vs. Espacial.

Lineal vs. No lineal.

Suavizador vs. Endurecedor.

Adaptativo vs. Invariante.

Derivador vs. Integrador.

Isotrópico vs. Anisotrópico.

Homomórfico vs. Polinomial.

Morfológico, Orientables, Wavelet, Bilateral, etc.
CAPÍTULO 1. Definiciones y Objetivos.
14
Figura 3. Reducción de ruido y mejoramiento del contraste en imagen de resonancia magnética
utilizando transformada de wavelet discreta.
1.7
Medidas de calidad en imágenes.
La calidad de las imágenes es un tema que se encuentra bajo discusión desde hace varias décadas
debido a la importancia que tiene este tema en diversas ramas, siendo imprescindible en la
medicina debido a que resulta primordial mantener una calidad óptima de las imágenes para el
correcto diagnóstico y detección de enfermedades, las medidas de calidad en las imágenes
pueden se objetivas o subjetivas.
1.7.1 Medidas objetivas para estimar calidad en las imágenes.
La calidad de las imágenes está influenciada por parámetros objetivos como nivel y tipo de ruido,
el contraste y la presencia de distorsiones, entre otros. Por lo que la calidad pudiera cuantificarse
por la magnitud de la presencia de cada uno de ellos calculados a partir de los valores de
intensidad de los píxeles de la imagen [4], [21].
Para cuantificar estos parámetros se han creado una serie de medidas las cuales teniendo en
cuenta la imagen original ayudan a obtener un estimado de la calidad de la imagen después de
pasar por determinado procesamiento. Dentro de estas se encuentran las de distancia, las de
relación de intensidades de los pixeles y la de similitud estructural.
Se tienen las siguientes medidas de calidad bi-variadas (full reference) teniendo en cuenta que
K es la dimensión del espacio de color que se utiliza para la imagen multiespectral, xk[n1,n2],
con k = 0, 1, ..., K, son las k-ésimas matrices correspondientes a cada uno de los colores (k = 1
para rojo, k = 2 para verde y k = 3 para azul) de la imagen original, x̂ k [n1,n2] son las
correspondientes a la imagen distorsionada, N1 y N2 son las cantidades de filas y columnas
respectivamente de la imagen original o sus versiones distorsionadas, y B es la profundidad de
bits que codifica cada color. [22], [4], [23].
Error Cuadrático Medio:
MSE =
1
K
 1 N11

NN
k 1 
 1 2 n10
K


N2 1

n2 0


 x k [n1 , n2 ]  x̂ k [n1 ,n2 ]2  .
CAPÍTULO 1. Definiciones y Objetivos.
1
SNR = 
K

Relación señal a ruido:
Relación señal a ruido pico:

 1

NN
k 1 
 1 2
K

 2 
1 K B
PSNR =   2
 K k 1
1
SC =
K
Contenido estructural:

 
n10
MSE .
n110 n220 x k [n1 , n2 ]2  .
 N11 N2 1 x̂ [n , n ]2 
n10 n2 0 k 1 2 



k 1 

K
N 1
Error Absoluto Medio:
Error Cuadrático Medio:
Error de Multi-Resolución:
K
1
NN
k 1 1 2

N 1
  x k [n1 , n2 ]  x̂ k [n1 , n2 ] .
n10 n2 0

K
N 1
N11 N2 1
N 1
1 K  1 1
MSE =

K k1 N1N2 n 0

1
1
MRE =
K
N 1
n110 n220 x k [n1 , n2 ]x̂ k [n1 , n2 ] 
.

N11
N2 1
2
x
[
n
,
n
]
n10 n2 0 k 1 2 

1

NCC =

K k 1 

1
MAE =
K

2
x k [n1 , n 2 ]   MSE .


n2 0

N11 N2 1
K
Correlación Cruzada Normalizada:
15

N2 1

n2 0


 x k [n1,n2 ]  x̂ k [n1,n2 ]2  .
R
 dkr .
k 1 r 1
En esta tesis no se utilizan todas las medidas de calidad objetivas mencionadas.
1.7.2
Medidas de calidad subjetivas.
Las medidas de tipo subjetivas (o cualitativas) involucran por lo general a un grupo de
observadores humanos (expertos o no), los que dan su opinión sobre determinados aspectos de la
imagen como por ejemplo su calidad. Esta valoración queda referida a una escala de valores que
se conoce como Escala Promedio de Opinión (de inglés: Mean Opinion Score, MOS) la que
asocia valores subjetivos de apreciación a valores numéricos.
Debido a la complejidad de estos experimentos, el individuo se convierte en parte del sistema, se
requieren una serie de condiciones ambientales y del experimento, enfocadas a minimizar los
posibles errores introducidos durante su realización [4] y no serán abordados en esta tesis.
CAPÍTULO 1. Definiciones y Objetivos.
1.8
16
Programas precursores en el campo del estudio de las imágenes medicas
A partir del surgimiento de las TIC la ingeniería biomédica se ha beneficiado de múltiples
herramientas y software para crear productos que beneficien el campo de la especialidad. Una de
las áreas favorecidas ha sido la de imágenes médicas logrando desarrollar programas que
posibilitan la optimización en la obtención y procesamiento de las mismas.
Lenguajes de programación como FORTRAN y C++, lograron mantener la iniciativa con
programas multipropósito como lo fue el programa de análisis de imágenes Subroutine Package
for Image Data Enhancement and Recognition (SPIDER), que cuenta con variadas herramientas
para analizar texturas, distancias y ruidos, todas ellas encaminadas al análisis de imágenes
médicas.
En la actualidad con la evolución progresiva de estos programas llega el software Matlab,
desarrollado por The MathWork, que es compatible con una amplia gama de bibliotecas digitales
perteneciente al software previamente implementado y además se orienta al trabajo con matrices
por lo que resulta el muy apropiado para el trabajo con imágenes de microscopia óptica médica.
1.9
Soluciones existentes y propuesta sobre la reducción de ruido en las imágenes de
microscopía óptica.
En la actualidad se pueden encontrar múltiples tipos de estudios realizados con el objetivo de
analizar las imágenes de microscopía óptica, en los que cada autor realiza un proceso de
acondicionamiento y filtrado previo de dichas imágenes, tarea que ha tenido que ser realizada
manual y personalmente por cada investigador. [1], [3], [15], [11].
1.9.1 Soluciones existentes.
En el artículo, Automatic noise quantification for confocal fluorescence microscopy images, de
Perrine Pau, Heiko Duessmann, Tytus Bernas, Heinrich Huber y Dimitrios Kalamatianos se
analiza la reducción de ruido gaussiano y poisson en las imágenes de microscopía óptica. Los
autores se basan en la estimación de la varianza del ruido.[11].
Otra publicación referente y sugerente fue, Patch-Based Nonlocal Functional for Denoising
Fluorescence Microscopy Image Sequences,[3].donde se proponen métodos para la
simplificación del ruido en imágenes de microscopia en 3D. Sugieren la eliminación de la
dependencia entre la media y la varianza de los valores de intensidad con enventanado de kernel
CAPÍTULO 1. Definiciones y Objetivos.
17
de 3x3 pixeles.
También G. Selvaggio, F. Ceroni, E. Giordano and J. V. Lorenzo-Ginori proponen hacen
referencia sobra la reducción de ruido de tipo poisson usando Wavelet Pack. En este caso
sugieren la utilización de la familia Haar con tres niveles de descomposición y el umbral
dependiente del nivel calculado utilizando el criterio de Birgé-Massard.[15]
1.10 Soluciones propuestas.
Con el objetivo de brindar una referencia sobre el hecho de la aceptabilidad de las imágenes
filtradas; si del todo aceptables o cuales son los valores entre los que están acoplados. Por lo tanto
la presente investigación está encaminada a la búsqueda de estos valores y consideraciones.
Teniendo en cuenta
que, a pesar de que existen referencias convergentes, ninguna es tan
abarcadora en este proceso de análisis que se propone, por lo que no se adecuan a
las
necesidades actuales.
Por tanto se estimula a la elaboración de un sistema de contaminación y filtrado de imágenes de
microscopia óptica que sea capaz de analizar un gran número de imágenes. Se propone tener en
cuenta la utilización de; ruidos gaussiano, speckle y poisson además de la realización de filtrados
usando filtros gaussiano y a través de Wavelet Pack, donde se tengan en tenga en primer plano la
evaluación
de
las
familias
wavelet
principalmente
con
ruido
poisson.
CAPÍTULO 2. Materiales y Métodos.
18
CAPÍTULO 2.
Materiales y Métodos.
CAPÍTULO 2. Materiales y Métodos.
2.1
19
Introducción.
Después de haber realizado en el capítulo 1 un esbozo de los elementos fundamentales para la
presente investigación, se puede hacer un estudio de las posibles herramientas y tecnologías a
emplear para el desarrollo de este trabajo. Además se puntualiza un análisis de los materiales y
métodos a utilizar para la implementación de la aplicación.
Para la realización del experimento se trabajó sobre el
cálculo de funciones y trabajos matriciales con imágenes
médicas. Teniendo en cuenta que Matlab es un poderoso
software de programación orientado al trabajo con matrices,
que cuenta con un amplio grupo de herramientas y
procedimientos especializados en el tema, se decide utilizarlo
para la implementación de la aplicación, con vistas a facilitar
el trabajo consistente en la creación de funciones que
permitan, de una forma más rápida y cómoda, realizar todos los procedimientos sobre las
imágenes. Además de que otro punto fuerte en la elección de dicho software es que la amplia
gama de contenidos almacenados en la ayuda del mismo ha permitido crear un programa para
arrojar datos a través de la contaminación de las imágenes a utilizar en el proceso de filtrado,
siendo éste un puntal relevante en el desarrollo de la presente tesis.
Se realizó la implementación de cinco programas; Contaminado, filtrado gaussiano, filtrado
poisson, filtrado speckle y trazado de medias filtradas, con el objetivo de disminuir el trabajo
computacional y humano ya que en estos procesos se requiere de la lectura de un gran números
de datos salvados en hojas de cálculos de Excel e imágenes (más de 3000) en varias carpetas lo
que constituye un trabajo excesivamente largo y engorroso.
2.2
Métodos y preparación de las imágenes de prueba.
Haciendo un análisis de las referencias bibliográficas arrojadas por los investigadores enfrascados
en el tema, se concluye; que muchos han sido los métodos utilizados para reducir el ruido en las
imágenes de microscopía óptica, resaltando entre ellos los filtrados para suprimir ruidos de tipo
gaussiano, speckle y poisson, sobre los que se amplía brevemente a continuación.
CAPÍTULO 2. Materiales y Métodos.
20
2.2.1 Caracterización de los ruidos.
Tanto el ruido gaussiano como el ruido poisson, son de tipo aleatorio aditivo los cuales se
adicionan por toda la imagen modificando ligeramente el color de los píxeles con una misma
Función de Densidad Probabilística (Probability Density Function (PDF)) y Densidad Espectral
de Potencia (Power Spectral Density (PSD)) los que por lo general son generados por las
siguientes vías:

Gaussiana: Contribución de diversas fuentes de ruido independientes.

Poisson: Acumulación de fotones sobre un detector.
En tanto el ruido speckle (moteado) se caracteriza por tener un efecto fuertemente degradante
sobre la imagen por ser, en general, más difícil de remover que el ruido aditivo. [6].
2.3
Para
Imágenes utilizadas.
el
propósito
planteado
se
utilizó
la
base
de
datos
conocida
como
``Images_Cervical_Herlev´´ el que cuenta con imágenes de carcinoma in situ, light dysplastic,
moderated dysplastic, severeal dysplastic entre otras categorías de lesiones y es un estándar de
estudio para métodos de clasificación de patologías.
La base de datos consta de 917 muestras distribuidas desigualmente en siete diferentes clases.
Cada ejemplo es descrito por 20 rasgos extraídos de imágenes de células simples. Los datos
fueron obtenidos en el hospital universitario de Herlev a través de cámaras y microscopios
digitales. Las muestras fueron tomadas de diversas áreas de la cerviz. [8]. Figura 4.
Para la validación del experimento se le realizó el análisis a un total de 50 imágenes de varios
tipos de lesiones.
2.3.1 Contaminación de las imágenes.
Cada una de las imágenes fue contaminada con los tipos de ruidos referenciados teniendo en
cuenta las características de los mismos.
CAPÍTULO 2. Materiales y Métodos.
21
Figura 4. Imagen de la cerviz donde se obtienen las imágenes de las células.
2.3.1.1
Contaminación con ruido Gaussian y Speckle.
Para la contaminación se usan las funciones ``gaussian´´ y ``speckle´´. Estas son funciones que se
usan para, sobre la base de la contaminación generada por las mismas en la imagen, analizar su
calidad. Estas funciones utilizan internamente la función de Matlab, imnoise, la cual se ejecuta
para una media m=0 y diferentes varianzas (0.01-0.52, +0.02) como se puede observar en los
anexos.
2.3.1.2
Contaminación con ruido Poisson.
Para este fin se utiliza, la función ``poisson´´. Esta es una función que se usa, para sobre la base
de la contaminación generada por la misma en la imagen, al igual que en la contaminación con
las funciones ``gaussian´´ y ``speckle´´, analizar su calidad. Esta función utiliza internamente la
función de Matlab imnoise, Para este tipo de ruido es recurrente el uso de un re-escalado donde la
imagen disminuye su intensidad exponencialmente, e^ (-n), donde n es el factor de re-escalado,
seguido de la función imnoise y luego de otro re-escalado e^ (n) donde la imagen ya contaminada
retoma su valor de intensidad original. Siendo ``n´´ un entero que varía su valor entre 1 y 26.
En cada caso, la imagen que se contaminó con los tres sistemas, fue sometida a un proceso de
CAPÍTULO 2. Materiales y Métodos.
22
Figura 5. Muestra de imágenes contaminadas con diferentes tipos de ruido
determinación de la calidad de la misma respecto a la imagen original. Para lograr este objetivo
se utilizó la función creada ``calidad´´ que en su interior lleva a cabo el cálculo del número de
elementos de la imagen original como un requisito para los posteriores cálculos de calidad.
2.4
Medidas objetivas de calidad.
Las medias objetivas de calidad son más ágiles que las medidas subjetivas de calidad. [1], [3],
[4], [5], [8], [12].Las seis simples medidas objetivas de calidad que se presentan son
seleccionadas y usadas para el estudio de esta investigación.

Relación Señal a Ruido (SNR), es definido como la diferencia entre el objeto y el fondo
CAPÍTULO 2. Materiales y Métodos.
23
dividido por la desviación estándar del objeto ruidoso. [17].

Picos de SNR (PSNR), estima la calidad de la reconstrucción de la imagen respecto a la
imagen original y es una vía estándar para medir la fidelidad de la misma. [16].

Error Cuadrático Medio (MSE), mide la diferencia entre dos imágenes comparadas. [14].

Contenido Estructural (SC), es una métrica basada en la degradación estructural, para
cuantificar fidelidad visual basada en la premisa de una imagen de alta calidad.[hamet]

Correlación Cruzada Normalizada (NCC), es una medida de la similitud entre dos señales,
frecuentemente usada para encontrar características relevantes en una señal desconocida por
medio de la comparación con otra que sí se conoce.[19]

Índice de Similitud Estructural (SSIM). Esta tiene en cuenta la luminancia, el contraste y
los cambios estructurales ente ambas imágenes. [19].

Matriz del Índice de Similitud Estructural (MSSIM) El valor de SSIM se promedia sobre
M bloques de la imagen centrados en la posición Xi y Yi para obtener los valores promedio de
la similitud estructural. [14]
Para facilitar el cálculo de las medidas, se construyó una herramienta la cual realiza el cálculo de
las medidas objetivas cargando el mapa de bits de la imagen original y la imagen contaminada en
cada caso.
Estos análisis de calidad fueron aplicados a cada imagen procesada en la contaminación y
filtrado, manteniendo las mismas características para ambos casos.
2.5
Trazado de los resultados.
Para tener una idea del trabajo realizado hasta el momento y arribar a conclusiones parciales los
valores obtenidos a partir de los análisis fueron trazados gráficamente como se muestra en la
Figura 6.
Obsérvese que, en las imágenes se muestran las medias de los resultados obtenidos de los
análisis de calidad objetiva para las imágenes contaminadas donde el aumento del MSE, en la
Figura 5, va caracterizado con el aumento de la varianza.
CAPÍTULO 2. Materiales y Métodos.
2.6
24
Salvado.
Los resultados numéricos obtenidos de las medidas de calidad aplicadas y las imágenes devueltas
por los algoritmos resultan ser una gran carga para el hardware en que se trabaja debido a que
cada uno de ellos(as) es guardado(a) de primera instancia en la memoria RAM del equipo
conllevando a la ralentización del proceso. Como medida para evitar la pérdida de información y
la agilización del proceso se recurre a salvar todas las imágenes obtenidas a partir de los análisis
así como los datos arrojados. Para ello se implementaron las funciones imwrite y xlswrite. Las
imágenes fueron salvadas en formato jpg y se guardaron en archivos diferenciados por el tipo de
contaminación a que habían sido sometidas, mientras que el salvado de los datos se realizó hacia
hojas de cálculos soportadas por la herramienta Excel de Microsoft Office.
Figura 5.
CAPÍTULO 2. Materiales y Métodos.
25
Figura 6.
2.7
Resultados parciales.
Como resultado de este proceso se obtienen un total de 26 imágenes contaminadas, a partir de
cada uno de los procesos de contaminación realizados por cada imagen original que se analice.
Esto sería; en total 50(originales) * 3(procesos de contaminación) * 26(contaminadas) =3900
(imágenes
contaminadas) las que se salvaron con formato JPG en tres ficheros diferentes
categorizados por el tipo de ruido contaminante. Luego todos los valores obtenidos de los análisis
de calidad fueron guardados en arreglos hechos por Matlab que fueron exportados a tablas de
Excel para utilizarlos en los análisis de conclusiones a partir de los resultados.
Estas contaminaciones se concibieron con una varianza hasta 0.52 debido que a partir de este
valor las imágenes no aportan información útil al diagnóstico.
. Para las contaminaciones con poisson las imágenes fueron escaladas hasta un nivel de n=26
aunque se demuestra que a partir de un escalado de n=20 la imagen ya no aporta información útil.
CAPÍTULO 2. Materiales y Métodos.
2.8
26
Filtrado de las imágenes contaminadas.
Cada una de las imágenes ya contaminadas, es cargada por los programas diseñados para el
filtrado de las imágenes, filtrado gaussiano, filtrado poisson, filtrado speckle. Estos programas,
como ya se mencionó al principio de este capítulo, contienen exactamente la misma información
en lo que a código de filtrado respecta, variando solo en el tipo de imagen que se carga ya que
cada uno de ellos filtra la imagen contaminada asociada a su nombre, facilitando de esta forma el
proceso de programación y disminuyendo la carga computacional del equipo con que se trabaja.
2.8.1 Filtrado Gaussiano.
En el caso del filtrado gaussiano se usan las funciones de Matlab fspecial e imfilter; fspecial para
la creación de un filtro bidimensional h de tipo gaussiano, devuelto como la correlación kernel
que es la forma apropiada para su aplicación en la función imfilter. A esta función se le pasan dos
parámetros para su utilización; el tamaño de la venta de filtrado, que se mantiene fijo en 3x3
pixeles por ser este el tamaño mínimo de ventana de filtrado, y el valor de la desviación estándar
sigma que es la raíz cuadrada de la varianza. Imfilter, por otro lado, filtra los arreglos
multidimensionales de la imagen con el filtro multidimensional h.
2.8.2 Filtrado por Wavelet Pack.

Para el filtrado usando el Paquete de Wavelet se utilizaron las funciones ddencmp y
wpdencmp. En ambos caso se especifica el uso de transformadas Wavelets a través de Wavelet
Pack.
La función ddencmp se utiliza para la extracción de información de la imagen como, el umbral,
tipo de umbral (duro o blando), entropía, etc., especificando el uso de la misma para el filtrado de
ruido (de-noising). Mientras tanto la otra función wpdencmp es utilizada para el filtrado,
auxiliada de los valores ofrecidos por ddencmp además del tipo de Wavelet que se desea emplear
y la cantidad de niveles aproximación deseados.
Esta función debe ser utilizada con sumo cuidado pues puede también ser usada para la
compresión de imágenes dependiendo de la especificación requerida en ddencmp. [19] En la
Figura 7 se muestran los tipos de familias wavelet existentes. En el experimento se utilizaron
CAPÍTULO 2. Materiales y Métodos.
27
solo algunas de estas variantes, escogidas de forma aleatoria, debido a la gran diversidad de las
mismas y teniendo en cuenta que no se usan todas en el mismo proceso, para este propósito
siendo las más comúnmente utilizadas las Daubechies, las Symlets, las Haar y las
Biorthogonal.[1], [3], [11], [15]. Por otra parte se encuentran los niveles de descomposición de
las imágenes, que para el caso de las utilizadas que son llevadas a escalas de gris, solo se les
dedican seis niveles. Para el caso de esta implementación solo se les aplicaron algunos niveles
específicos de descomposición, debido al costo computacional y al gran periodo de tiempo
necesario para el testeo de los mismos.
Figura 7. Familias Wavelet
CAPÍTULO 2. Materiales y Métodos.
2.9
28
Análisis.
Luego del filtrado de la imagen se le aplica nuevamente los procesos de calidad a cada una de
ellas se procede al guardado de los datos y las imágenes obtenidas para ser utilizadas en el
análisis de resultados para a partir de las mismas arribar a conclusiones.
2.10 Trazado y salvado.
De igual forma y por idénticos motivos que se explicaron en los epígrafes 2.5 y 2.6
respectivamente, los resultados son salvados y trazados luego de la implementación de cada
proceso de filtrado.
2.11 Conclusiones parciales.
La propuesta de estos métodos de contaminación y supresión de ruido en las imágenes de
microscopía óptica, puede resultar de gran importancia, ya que se contará con conocimiento
fiable y probado referente a las características de contaminación y comportamiento de las
imágenes frente a estos fenómenos. Acercar estos resultados a los usuarios menos cualificados es
una posibilidad a tener en cuenta para futuros trabajos relacionados con el tema tratado.
.
CAPÍTULO 3. Resultados y Discusión.
29
CAPÍTULO 3.
Resultados y Discusión.
CAPÍTULO 3. Resultados y Discusión.
3.1
30
Introducción.
Luego de haber descrito y puntualizado en el capítulo anterior, el tema referente a los materiales
y métodos utilizados con el objetivo de acondicionar y procesar las imágenes de microscopía
óptica, se realizarán análisis asociados al comportamiento de las imágenes, teniendo en cuenta los
tipos de contaminaciones a las que fueron sometidas, los tipos de filtrados y el comportamiento
de las mismas ante exámenes de medidas de calidad objetiva
Los resultados de los procesos de filtrado serán examinados haciendo énfasis en los que se
utiliza el Paquete Wavelet.
3.2
El grupo de imágenes de prueba.
A partir de la contaminación de las imágenes se obtienen un total de 3900 nuevas imágenes
contaminadas, logradas a partir del uso de la contaminación a través de tres ruidos diferentes:
gaussiano, speckle y poisson. Estas fueron el objetivo de estudio siendo utilizadas para el filtrado
de aquí que fueran salvadas en ficheros independientes teniendo en cuenta el tipo de ruido con
que se contaminaron.
De igual forma, como resultado de los procesos de filtrado se obtienen un total de 10492 nuevas
imágenes filtradas, que fueron obtenidas utilizando varios tipos y procesos de filtrado. Estas en
conjunto con las imágenes contaminadas, son utilizadas en la confección de conclusiones.
3.5
Resultados de las medidas objetivas de calidad.
Después de contaminar las imágenes se realizó el cálculo de las medidas objetivas bi-variadas
entre la imagen original y las compactadas en el intervalo en cuestión.
Con el fin de estudiar el comportamiento de las medidas en función de la de la microscopía óptica
y extraer las características de interés, se representan todas las curvas obtenidas en un mismo
gráfico después de ser normalizados sus valores. En el caso de las medidas que disminuyen su
valor excesivamente tales como, a las que se les aplicó la contaminación con ruido poisson, fue
necesaria, para su comparación, expresarlas en escala logarítmica, facilitando su representación
gráfica.
CAPÍTULO 3. Resultados y Discusión.
31
3.3.1 Análisis de graficos de contaminación de imágenes.
En base al análisis de las gráficas, que se obtuvieron a partir de la aplicación de las medidas de
calidad objetiva en el proceso de contaminación, se pueden obtener varios resultados referidos a
las dimensiones de los niveles de contaminación de las mismas. Entre ellos tenemos que la
varianza utilizada para la contaminación de imágenes de microscopía óptica debe estar
comprendida entre 0.01 y 0.5, ya que a partir de este valor la imagen no aporta información útil.
Además de que llevar el re-escalado de la imagen, para la contaminación con ruido poisson hasta
26 es del todo innecesario. Esto se debe a que la imagen, luego de un nivel de re-escalado mayor
que 10, comienza a perder información útil y su fidelidad es altamente afectada.
Figura 8. Trazado de los valores de MSE obtenidos tras la contaminación de las imágenes.
CAPÍTULO 3. Resultados y Discusión.
Figura 9. Trazado de los valores de SC obtenidos tras la contaminación de las imágenes.
Figura 10. Trazado de los valores de SNR obtenidos tras la contaminación de las imágenes.
32
CAPÍTULO 3. Resultados y Discusión.
33
3.3.2 Análisis de graficos de filtrado de imágenes.
A partir de la aplicación de los métodos de filtrado se obtuvieron valores de calidad objetiva de
las imágenes filtradas, valores que fueron graficados como se muestra en las figuras mostradas a
continuación.
En la Figura 11 los valores de las matrices de índice de similitud estructural están ubicados muy
cerca el uno del otro variando entre valores desde 0.9997 hasta 1, demostrando que existe
diferencia entre el las imágenes filtradas y sus originales en estudio.
Obsérvese en la gráfica que las imágenes que fueron filtradas con un filtro gaussiano (con subíndice 1) presentan menor índice de fidelidad que las imágenes filtradas con Wavelet Pack.
Consta además que las imágenes contaminadas que presentan mejor fidelidad son las que fueron
contaminadas con ruido poisson, seguidas de las imágenes contaminadas con speckle y luego las
contaminadas con ruido gaussiano.
Figura 11
CAPÍTULO 3. Resultados y Discusión.
34
En la Figura 12 se observan, a simple vista, solo tres trazados, cuando en realidad existen seis.
Lo que ocurre es que en el caso de una imagen se aplican dos procesos de filtrado diferentes que
devuelven idénticos valores de NCC. Esto sucede en los tres casos de igual forma devolviendo
una gráfica con solo tres curvas. Obsérvese que en el caso de las imágenes contaminadas con
ruido gaussiano y speckle existe un incremento notable de NCC entre los valores 0.1 y 0.3 de la
varianza, mientras que, este fenómeno, no ocurre de igual forma en el caso de las imágenes
contaminadas con ruido poisson sino que se encuentra situado entre los intervalos de varianza de
0.3 y 0.5.
Figura 12
3.4
Análisis de los resultados de las tablas.
De la aplicación de los algoritmos descritos en el capítulo 2 se obtienen resultados como los que
se muestran en la Tabla 3.1. Allí se puede observar el ejemplo de una imagen contaminada con
ruido poisson con varios niveles de re-escalado y que fue filtrada usando distintas familias de
Wavelet Pack y distintos niveles de aproximación. Se puede observar como varían los resultados
de SNR y MSE tan solo con variar el nivel de re-escalado de una imagen. De igual forma ocurre
para la Wavelet haar.
CAPÍTULO 3. Resultados y Discusión.
35
Tabla 3.1 Datos obtenidos del cálculo de las medidas de calidad para una imagen.
Poisson
Escalado
WAVELET
SNR(dB)
MSE
Tipo
NIVEL
CONTAM.
FILTRADA
CONTAM.
FILTRADA
8
sym4
3
39,3628
28,4247
0,0001
0,0011
8
db3
3
39,4619
28,3168
0,0001
0,0011
8
haar
3
39,4118
26,1730
0,0001
0,0018
12
haar
3
-0,6241
26,1730
0,8606
0,0018
12
db3
3
-0,6622
28,3168
0,8682
0,0011
10
db3
3
19,4152
28,3168
0,0085
0,0011
10
haar
3
19,4642
26,1730
0,0084
0,0018
10
sym4
3
20,1112
23,9621
0,0073
0,0030
10
db6
1
19,3877
41,0919
0,0086
0,0001
1e^
Del análisis de estos resultados, mostrados en esta tabla, se desprende que, en el re-escalado de
las imágenes de microscopía óptica para ser contaminadas con ruido poisson, aquellas que son
contaminadas con niveles mayores que diez son gravemente afectadas por el ruido respecto a la
calidad de la misma por lo que la información obtenida es incompleta. Se puede además referir
que el filtrado usando la familia db del paquete Wavelet asegura una mejora sustancial en la
imagen luego de ser filtrada.
CAPÍTULO 3. Resultados y Discusión.
36
En la Tabla 3.2 se muestran los resultados obtenidos de la aplicación de los métodos descritos
con anterioridad, de una imagen que ha sido contaminada con ruido gaussiano con diferentes
modalidades de varianza.
Obsérvese que, en casi todos los casos, el incremento de SNR es pobre siendo nulo para algunas
variantes de varianza incluso cuando ha sido filtrada la imagen con filtro gaussiano. De igual
forma en el caso del MSE resulta escasa su variación coincidiendo los mejores y peores
resultados con los de la SNR respectivamente.
Tabla 3.2 Datos obtenidos del cálculo de las medidas de calidad para una imagen contaminada
con ruido gaussiano.
Gaussiano
m=0
SNR(dB)
MSE
Gaussiano
m=0
Hsize
Var
sigma
CONTAM.
FILTRADA
CONTAM.
FILTRADA
3x3
0,01
10*Var
19,9850
19,9850
0,0075
0,0075
3x3
0,01
20*Var
19,9352
19,9353
0,0076
0,0076
3x3
0,01
40*Var
20,1388
21,4748
0,0072
0,0053
3x3
0,02
40*Var
20,1836
23,5703
0,0071
0,0033
3x3
0,02
30*Var
20,2224
24,0638
0,0071
0,0029
3x3
0,02
20*Var
20,2447
21,5885
0,0070
0,0052
5x5
0,02
20*Var
20,1852
21,5176
0,0071
0,0053
5x5
0,02
30*Var
20,3103
24,0698
0,0069
0,0029
5x5
0,02
40*Var
20,2360
23,4716
0,0071
0,0034
CAPÍTULO 3. Resultados y Discusión.
3.5
37
Herramientas construidas.
Se construyeron varias herramientas para facilitar el trabajo con las imágenes y el proceso de
ciclo para cada imagen donde se puede variar las características de los procesos de
contaminación, los filtrados y las formas de salvado de los resultados. Además se construyó un
proceso para la aplicación de las medidas de calidad objetivas que brinda la opción de cambiar y
estudiar dichas medidas sin necesidad de entrar a largos códigos. Estas herramientas pueden ser
aplicadas y modificadas por personas con conocimientos sobre el programa Matlab y que además
dominen el tema del procesamiento de imágenes de microscopía óptica. También puede ser
utilizado, por instructores, en la docencia.
3.6
Análisis económico.
Teniendo en consideración que la rama investigativa resulta ser un pilar fundamental en la
economía del país y de los elevados costos que se incurren en este proceso, el hecho de una
disminución sustancial en función del tiempo y costo computacional sobre el trabajo
investigativo convergen en una disminución sustancial en los costos de investigación para el
estado, permitiendo además que se realice un mejor trabajo con el menor consumo posible.
3.7
Conclusiones del capítulo.
Hasta el momento no se cuenta con el conocimiento de la realización de trabajos similares al
presentado en esta tesis de grado. No obstante existe una amplia variedad de estudios realizados
por múltiples autores referidas al tema en cuestión, consultados como referencia previa para este
trabajo.
La investigación referida al tipo de filtro que deberá ser utilizado para la reducción de ruidos en
imágenes de microscopía óptica, que se realiza actualmente de forma manual, con el fin de su
utilización en estudios, trae consigo un alto consumo de tiempo de análisis de la bibliografía y de
la aplicación de los procesos que sean diseñados con este fin, así como el gran consumo
computacional que este acarrea consigo.
Con la implementación de los estudios presentados en esta tesis se alcanza el desarrollo de un
sistema computarizado para la supresión del ruido y la determinación de la calidad de las
imágenes de microscopía óptica médica, obteniéndose como garante todos los beneficios
implícitos en los mismos referentes a la disminución del tiempo empleado, conllevando a que el
CAPÍTULO 3. Resultados y Discusión.
38
trabajo de los investigadores y especialistas se haga menos engorroso y demorado propiciando la
reducción de errores humanos por desgaste físico del personal garantizando mayor eficiencia en
el manejo de la información.
CONCLUSIONES Y RECOMENDACIONES
39
CONCLUSIONES Y
RECOMENDACIONES.
CONCLUSIONES Y RECOMENDACIONES
40
Conclusiones.
Con los resultados obtenidos en esta tesis, se pueden realizar estudios profundos de las imágenes
de microscopía óptica médica encaminados a un mejor manejo de la información y de la
implementación de un sistema automatizado para la supresión del ruido y la determinación de la
calidad de las imágenes tratadas.
Durante la implementación de los métodos utilizados se llegó a las siguientes conclusiones:

En las imágenes de microscopía óptica los ruidos mas frecuentemente observados y que
más afectan a la calidad de la imagen son: el ruido gaussiano, el ruido specle y el ruido poisson.

Para la contaminacion de las imágenes con ruidos gaussiano y speckle, la varianza debe
estar comprendida entre los valores 0.1 y 0.5.

Para la contaminación de las imágenes con ruido poisson, el nivel de re-escalado de la
intensidad de la imagen debe estar comprendido entre valores de e^1 y e^10

En la aplicación del filtrado usando Wavelet pack, los mejores resultados se obtienen con la
utilización de la familia db y en particular db6.

Los mejores resultados obtenidos del filtrado usando Wavelet pack corresponden a las
imágenes cntaminadas con ruido poisson y speckle, en el orden referido.
Recomendaciones.
1 Incorporar a los procedimientos implementados otros tipos de filtrados, como por ejemplo
morfológico, homomórfico, adaptativo, etc..
2 Desarrollar una aplicación complilada en un lenguaje de alto nivel con el objetivo de acercar
al usuario común a la utilización de las herramientas construidas.
3 Utilizar la base de datos de imágenes contaminadas, con las variantes de ruido que se
emplearon en este trabajo, como referencia para la evaluación de nuevos métodos de supresión de
ruido.
REFERENCIAS BIBLIOGRÁFICAS
41
REFERENCIAS BIBLIOGRÁFICAS.
REFERENCIAS BIBLIOGRÁFICAS
[1]
42
S. T. Acton and K. Ley, "TRACKING LEUKOCYTES FROM IN VZVO VIDEO
MICROSCOPY USING l\rlORPHOLOGICAL ANISOTROPIC DIFFUSION " 2009.
[2]
D. B.Murphy. (2001). FUNDAMENTALS OF LIGHT MICROSCOPY AND ELECTRONIC
IMAGING.
[3]
J. Boulanger, et al., "Patch-Based Nonlocal Functional for Denoising Fluorescence
Microscopy Image Sequences," IEEE TRANSACTIONS ON MEDICAL IMAGING, vol. 29,
Febrero 2010.
[4]
I. M. Castañeda, "Efectos de la compresion con pérdidas sobre mediciones de distancia en
imagenes de TAC," CEETI, UCLV, Santa Clara, 2009.
[5]
A. M. Eskicioglu. (2001, QUALITY MEASUREMENT FOR MONOCHROME
COMPRESSED IMAGES IN THE PAST 25 YEARS. 3.
[6]
D. J. V. L. Ginori, "PROCESAMIENTO DIGITAL DE IMÁGENES," presented at the
GENERALIDADES, 2011.
[7]
IhorSmal, et al., "Quantitative Comparison of Spot Detection Methods in Fluorescence
Microscopy," IEEE. Transactions on medical imagin, vol. 29, p. 9, Febrero 2010.
[8]
J. Jantzen, et al., "Pap-smear Benchmark Data For Pattern Classification," ed, 2009.
[9]
D. R. O. Morales, "Bases matemáticas del Procesamiento Digital de Imágenes. ," presented
at the Otras transformadas discretas 2D y ruido en imágenes., 2011.
[10] L. J. P., "Fast normalized cross-correlation," Image Processing and Pattern Recognition
Society, pp. 120-123, 1995.
[11] P. Paul, et al., "Automatic noise quantification for confocal fluorescence microscopy
images," Computerized Medical Imaging and Graphics, vol. 34, 2010.
[12] R. Sakuldee and S. Udomhunsakul, "Objective Performance of Compressed Image Quality
Assessments," PROCEDINGS OF WORLD ACADEMY OF SCIENCE AND TACNOLOGY, vol.
1307-6884, p. 2, December, 26 2007.
REFERENCIAS BIBLIOGRÁFICAS
43
[14] P. Sarder and A. Nehorai, "Deconvolution Methods for 3-D Fluorescence Microscopy
Images," IEEE SIGNAL PROCESSING MAGAZINE, vol. 45, p. 10, Mayo 2006.
[15] G. Selvaggio, et al. (2011, Evaluation of the Expression Level of a Fluorescent Protein in
Single Cells through Digital Image Processing 33.
[16] B. Shrestha, et al., "JPEG2000: IMAGE QUALITY METRICS " Starkville, p. 3, Marzo, 17
2006.
[17] I. Smal, et al., "PARTICLE FILTERING FOR MULTIPLE OBJECT TRACKING IN
MOLECULAR CELL BIOLOGY," p. 3, Junio,12 2009.
[18] Z. Wang, et al., "Image quality assessment: From error visibility to structural similarity,"
IEEE Transactios on Image Processing, vol. 13, pp. 600-612, Abril 2004.
[19] T. M. Works, "Ayuda del software Matlab," ed, 2009.
[20] Wales, J. and L. Sanger (2001). Microscopía. Wikipedia.
[21] Rao, D. V., N.Sudhakar, et al. (2006). An Image Quality Assessment Technique Based on
Visual Regions of Interest Weighted Structural Similarity. GVIP Journal 6(2)
[22] Burningham, N., Z. Pizlo, et al. (2002). Image Quality Metrics. Encyclopedia of Imaging
Science and Technology. 1.
[23] Farrell, J. E. (1999). Image Quality Evaluation. Colour. Imaging: Vision and Technology.
L. W. M. a. M. R. Luo.
[24] L.Soustelle, 2006 #20
ANEXOS
44
ANEXOS.
ANEXOS
Anexo I
Códigos programados en Matlab.
%% %% FILTRADO IMAGENES POISSON
%% inicializado valores
n=2; k=2; f=2; x=1; y=1; cont=1; nombre=0;name_P=0;name_G=1;name_S=1;
conteo=1; im_cont_G=1; z=2; varianza=0;
result_4_SNR_P_1=zeros(x,y);
result_5_MSE_P_1=zeros(x,y);
result_6_PSNR_P_1=zeros(x,y);
result_7_SC_P_1=zeros(x,y);
result_8_NCC_P_1=zeros(x,y);
result_9_MSSIM_P_1=zeros(x,y);
result_4_SNR_P_2=zeros(x,y);
result_5_MSE_P_2=zeros(x,y);
result_6_PSNR_P_2=zeros(x,y);
result_7_SC_P_2=zeros(x,y);
result_8_NCC_P_2=zeros(x,y);
result_9_MSSIM_P_2=zeros(x,y);
result=cell(x,y);
result_speckle=cell(x,y);
result_ssim_map_G=cell(x,y);
45
ANEXOS
result_ssim_map_P=cell(x,y);
result_ssim_map_S=cell(x,y);
filt=cell(x,y);
result(1,1)={str2mat('imagenes')};
%% FILTRADO IMAGENES POISSON
while conteo<=2
A=im2double(imread(strcat...
('C:\Users\Administrador\Desktop\will\contaminadas\poisson\',...
num2str(im_cont_G),'.bmp')));
ventana_G=3;
g=1;
tipo=1;
s=1;
filt(1,s)={str2mat(strcat('VAR=',num2str(im_cont_G)))};
p = 2;i=1;
result(1,p)={str2mat('imagen_poisson')};
while tipo<=26
p=p+1;
46
ANEXOS
result(1,p)={str2mat(strcat('EXP=',num2str(i)))};
result_ssim_map_P(1,g)={str2mat(strcat('e*10^',num2str(i)))};
result_4_SNR_P_1(1,g)=i;
result_4_SNR_P_2(1,g)=i;
result_5_MSE_P_1(1,g)=i;
result_5_MSE_P_2(1,g)=i;
result_6_PSNR_P_1(1,g)=i; result_6_PSNR_P_2(1,g)=i;
result_7_SC_P_1(1,g)=i;
result_7_SC_P_2(1,g)=i;
result_8_NCC_P_1(1,g)=i;
result_8_NCC_P_2(1,g)=i;
result_9_MSSIM_P_1(1,g)=i; result_9_MSSIM_P_2(1,g)=i;
%% FILTRADO POR GAUSSIAN
%sigma desviacion estandar
varianza=varianza+0.02;
sigma=varianza^(1/2);
H = fspecial('gaussian', ventana_G, sigma);
imf_G_stand = imfilter(A, H);
%llama a funcion calidad
[PSNR,SC,NCC,mse,snr]=calidad(A,imf_G_stand);
[mssim, ssim_map_G] = ssim_index(A,imf_G_stand);
result(n,p)={snr};
result_4_SNR_P_1(f,g)=snr;
result_5_MSE_P_1(f,g)=mse;
result_6_PSNR_P_1(f,g)=PSNR;
47
ANEXOS
result_7_SC_P_1(f,g)=SC;
result_8_NCC_P_1(f,g)=NCC;
result_9_MSSIM_P_1(f,g)=mssim;
%
%% FILTRADO POR WAVELET
[thr,sorh,keepapp,crit] = ddencmp('den','wp',A);
wavelet={'haar' 'dmey' 'db2' 'db3' 'db4' 'db5'...
'db6' 'db7' 'sym2' 'sym3' 'sym4'...
'sym5' 'sym6'};
t=1;
col=1;
fil=1;
while(t<=length(wavelet))
imf_WV_stand = wpdencmp(A,sorh,1,cell2mat(wavelet(t)),crit,thr,keepapp);
%llama a funcion calidad
[PSNR,SC,NCC,mse,snr]=calidad(A,imf_WV_stand);
[mssim, ssim_map_WV] = ssim_index(A,imf_WV_stand);
%
result(n,p)={snr};
result_4_SNR_P_2(fil,col)=snr;
result_5_MSE_P_2(fil,col)=mse;
result_6_PSNR_P_2(fil,col)=PSNR;
result_7_SC_P_2(fil,col)=SC;
48
ANEXOS
result_8_NCC_P_2(fil,col)=NCC;
result_9_MSSIM_P_2(fil,col)=mssim;
col=col+1;
end
t=t+1;
nivel=1;
col=1;
fil=fil+1;
end
i=i+1; name_P=name_P+1;
% IMWRITE
imwrite(imf_G_stand,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\poisson\GAUSS\',...
num2str(name_P),'.bmp'))
imwrite(imf_WV_stand,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\poisson\WAVELET\',...
num2str(name_P),'.bmp'))
imwrite(ssim_map_G,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\SSIM_MAP\GAUSSIAN\',...
num2str(name_P),'.bmp'))
imwrite(ssim_map_WV,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\SSIM_MAP\WAVELET\',...
49
ANEXOS
num2str(name_P),'.bmp'))
filt(z,s)= {imf_G_stand};s=s+1;
filt(z,s)= {imf_WV_stand};
im_cont_G=im_cont_G+1;
tipo=tipo+1;
z=z+1;
name_S=name_S+1;
ventana_G=ventana_G+1;
g=g+1;
end
f=f+1;
conteo=conteo+1
% EXPORTANDO A EXCEL
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_P_1',...
result_4_SNR_P_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_P_2',...
result_4_SNR_P_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_P_1',...
result_5_MSE_P_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_P_2',...
result_5_MSE_P_2)
50
ANEXOS
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_P_1',...
result_6_PSNR_P_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_P_2',...
result_6_PSNR_P_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_P_1',...
result_7_SC_P_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_P_2',...
result_7_SC_P_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_P_1',...
result_8_NCC_P_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_P_2',...
result_8_NCC_P_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_P_1',...
result_9_MSSIM_P_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_P_2',...
result_9_MSSIM_P_2)
%% %% FILTRADO IMAGENES SPECKLE
clear all;clc
%% inicializado valores
n=2; k=2; f=2; x=1; y=1; cont=1; name_S=1;
conteo=1;
result_4_SNR_S_1=zeros(x,y);
result_5_MSE_S_1=zeros(x,y);
result_6_PSNR_S_1=zeros(x,y);
51
ANEXOS
result_7_SC_S_1=zeros(x,y);
result_8_NCC_S_1=zeros(x,y);
result_9_MSSIM_S_1=zeros(x,y);
result_4_SNR_S_2=zeros(x,y);
result_5_MSE_S_2=zeros(x,y);
result_6_PSNR_S_2=zeros(x,y);
result_7_SC_S_2=zeros(x,y);
result_8_NCC_S_2=zeros(x,y);
result_9_MSSIM_S_2=zeros(x,y);
result=cell(x,y);
result_speckle=cell(x,y);
result_ssim_map_G=cell(x,y);
result_ssim_map_P=cell(x,y);
result_ssim_map_S=cell(x,y);
filt=cell(x,y);
result(1,1)={str2mat('imagenes')};
im_cont_S=1;
im_cont_P=1;
varianza=0;
z=2;
while conteo<=50
A=im2double(imread(strcat...
52
ANEXOS
('C:\Users\Administrador\Desktop\will\contaminadas\speckle\',...
num2str(im_cont_S),'.bmp')));
ventana_G=3;
g=1;
tipo=1;
s=1;
filt(1,s)={str2mat(strcat('VAR=',num2str(im_cont_S)))};
p = 2;i=1;
result(1,p)={str2mat('imagen_poisson')};
while tipo<=26
p=p+1;
result(1,p)={str2mat(strcat('EXP=',num2str(i)))};
result_ssim_map_P(1,g)={str2mat(strcat('e*10^',num2str(i)))};
result_4_SNR_S_1(1,g)=i;
result_4_SNR_S_2(1,g)=i;
result_5_MSE_S_1(1,g)=i;
result_5_MSE_S_2(1,g)=i;
result_6_PSNR_S_1(1,g)=i; result_6_PSNR_S_2(1,g)=i;
result_7_SC_S_1(1,g)=i;
result_8_NCC_S_1(1,g)=i;
result_7_SC_S_2(1,g)=i;
result_8_NCC_S_2(1,g)=i;
result_9_MSSIM_S_1(1,g)=i; result_9_MSSIM_S_2(1,g)=i;
%% FILTRADO POR GAUSSIAN
%sigma desviacion estandar
53
ANEXOS
varianza=varianza+0.02;
sigma=varianza^(1/2);
H = fspecial('gaussian', ventana_G, sigma);
imf_G_stand = imfilter(A, H);
%llama a funcion calidad
[PSNR,SC,NCC,mse,snr]=calidad(A,imf_G_stand);
[mssim, ssim_map_G] = ssim_index(A,imf_G_stand);
result_9_MSSIM_S_1(f,g)=mssim;
%
result(n,p)={snr};
result_4_SNR_S_1(f,g)=snr;
result_5_MSE_S_1(f,g)=mse;
result_6_PSNR_S_1(f,g)=PSNR;
result_7_SC_S_1(f,g)=SC;
result_8_NCC_S_1(f,g)=NCC;
%% FILTRADO POR WAVELET
[thr,sorh,keepapp,crit] = ddencmp('den','wp',A);
wavelet={'haar' 'dmey' 'db2' 'db3' 'db4' 'db5'...
'db6' 'db7' 'sym2' 'sym3' 'sym4'...
'sym5' 'sym6'};
54
ANEXOS
t=1;
col=1;
fil=1;
while(t<=length(wavelet))
% while(nivel<=2)
imf_WV_stand = wpdencmp(A,sorh,1,cell2mat(wavelet(t)),crit,thr,keepapp);
%llama a funcion calidad
[PSNR,SC,NCC,mse,snr]=calidad(A,imf_WV_stand);
[mssim, ssim_map_WV] = ssim_index(A,imf_WV_stand);
%
result(n,p)={snr};
result_4_SNR_P_2(fil,col)=snr;
result_5_MSE_P_2(fil,col)=mse;
result_6_PSNR_P_2(fil,col)=PSNR;
result_7_SC_P_2(fil,col)=SC;
result_8_NCC_P_2(fil,col)=NCC;
result_9_MSSIM_P_2(fil,col)=mssim;
col=col+1;
end
t=t+1;
nivel=1;
55
ANEXOS
col=1;
fil=fil+1;
i=i+1;
%% IMWRITE
imwrite(imf_G_stand,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\speckle\GAUSS\',...
num2str(name_S),'.bmp'))
imwrite(imf_WV_stand,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\speckle\WAVELET\',...
num2str(name_S),'.bmp'))
imwrite(ssim_map_G,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\SSIM_MAP\GAUSSIAN\',...
num2str(name_S),'.bmp'))
imwrite(ssim_map_WV,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\SSIM_MAP\WAVELET\',...
num2str(name_S),'.bmp'))
filt(z,s)= {imf_G_stand};s=s+1;
filt(z,s)= {imf_WV_stand};
im_cont_S=im_cont_S+1;
tipo=tipo+1;
z=z+1;
name_S=name_S+1;
%
ventana_G=ventana_G+1;
56
ANEXOS
g=g+1;
%
end
f=f+1;
conteo=conteo+1
end
%% EXPORTANDO A EXCEL
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_S_1',...
result_4_SNR_S_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_S_2',...
result_4_SNR_S_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_S_1',...
result_5_MSE_S_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_S_2',...
result_5_MSE_S_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_S_1',...
result_6_PSNR_S_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_S_2',...
result_6_PSNR_S_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_S_1',...
result_7_SC_S_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_S_2',...
result_7_SC_S_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_S_1',...
57
ANEXOS
result_8_NCC_S_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_S_2',...
result_8_NCC_S_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_S_1',...
result_9_MSSIM_S_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_S_2',...
result_9_MSSIM_S_2)
%% %% FILTRADO IMAGENES GAUSSIAN
clear all;clc
%% inicializado valores
n=2; k=2; f=2; x=1; y=1; cont=1; nombre=0;name_P=0;name_G=1;name_S=1;
conteo=1; varianza=0;
result_4_SNR_G_1=zeros(x,y);
result_5_MSE_G_1=zeros(x,y);
result_6_PSNR_G_1=zeros(x,y);
result_7_SC_G_1=zeros(x,y);
result_8_NCC_G_1=zeros(x,y);
result_9_MSSIM_G_1=zeros(x,y);
result_4_SNR_G_2=zeros(x,y);
result_5_MSE_G_2=zeros(x,y);
result_6_PSNR_G_2=zeros(x,y);
result_7_SC_G_2=zeros(x,y);
58
ANEXOS
result_8_NCC_G_2=zeros(x,y);
result_9_MSSIM_G_2=zeros(x,y);
result=cell(x,y);
result_speckle=cell(x,y);
result_ssim_map_G=cell(x,y);
result_ssim_map_P=cell(x,y);
result_ssim_map_S=cell(x,y);
filt=cell(x,y);
result(1,1)={str2mat('imagenes')};
im_cont_G=1;
z=2;
%%
while conteo<=50
A=im2double(imread(strcat...
('C:\Users\Administrador\Desktop\will\contaminadas\gauss\',...
num2str(im_cont_G),'.bmp')));
ventana_G=3;
g=1;
tipo=1;
s=1;
filt(1,s)={str2mat(strcat('VAR=',num2str(im_cont_G)))};
p = 2;%i=1;
result(1,p)={str2mat('imagen_poisson')};
59
ANEXOS
while tipo<=26
p=p+1;
result_4_SNR_G_1(1,g)=i;
result_4_SNR_G_2(1,g)=i;
result_5_MSE_G_1(1,g)=i;
result_5_MSE_G_2(1,g)=i;
result_6_PSNR_G_1(1,g)=i; result_6_PSNR_G_2(1,g)=i;
result_7_SC_G_1(1,g)=i;
result_7_SC_G_2(1,g)=i;
result_8_NCC_G_1(1,g)=i;
result_8_NCC_G_2(1,g)=i;
result_9_MSSIM_G_1(1,g)=i; result_9_MSSIM_G_2(1,g)=i;
%% FILTRADO POR GAUSSIAN
%varianza desviacion estandar
varianza=varianza+0.02;
sigma=varianza^(1/2);
H = fspecial('gaussian', ventana_G, sigma);
imf_G_stand = imfilter(A, H);
%llama a funcion calidad
[PSNR,SC,NCC,mse,snr]=calidad(A,imf_G_stand);
[mssim, ssim_map_G] = ssim_index(A,imf_G_stand);
result(n,p)={snr};
result_4_SNR_G_1(f,g)=snr;
result_5_MSE_G_1(f,g)=mse;
result_6_PSNR_G_1(f,g)=PSNR;
60
ANEXOS
result_7_SC_G_1(f,g)=SC;
result_8_NCC_G_1(f,g)=NCC;
result_9_MSSIM_G_1(f,g)=mssim;
%% FILTRADO POR WAVELET
[thr,sorh,keepapp,crit] = ddencmp('den','wp',A);
wavelet={'haar' 'dmey' 'db2' 'db3' 'db4' 'db5'...
'db6' 'db7' 'sym2' 'sym3' 'sym4'...
'sym5' 'sym6'};
t=1;
col=1;
fil=1;
while(t<=length(wavelet))
imf_WV_stand = wpdencmp(A,sorh,1,cell2mat(wavelet(t)),crit,thr,keepapp);
%llama a funcion calidad
[PSNR,SC,NCC,mse,snr]=calidad(A,imf_WV_stand);
[mssim, ssim_map_WV] = ssim_index(A,imf_WV_stand);
%
result(n,p)={snr};
result_4_SNR_P_2(fil,col)=snr;
result_5_MSE_P_2(fil,col)=mse;
result_6_PSNR_P_2(fil,col)=PSNR;
result_7_SC_P_2(fil,col)=SC;
result_8_NCC_P_2(fil,col)=NCC;
61
ANEXOS
result_9_MSSIM_P_2(fil,col)=mssim;
col=col+1;
end
t=t+1;
nivel=1;
col=1;
fil=fil+1;
i=i+1; name_P=name_P+1;
%% IMWRITE
imwrite(imf_G_stand,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\gauss\GAUSSIAN\',...
num2str(name_S),'.bmp'))
imwrite(imf_WV_stand,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\gauss\WAVELET\',...
num2str(name_S),'.bmp'))
imwrite(ssim_map_G,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\SSIM_MAP\GAUSSIAN\',...
num2str(name_S),'.bmp'))
imwrite(ssim_map_WV,strcat...
('C:\Users\Administrador\Desktop\will\filtradas\SSIM_MAP\WAVELET\',...
num2str(name_S),'.bmp'))
filt(z,s)= {imf_G_stand};s=s+1;
filt(z,s)= {imf_WV_stand};
62
ANEXOS
%%
im_cont_G=im_cont_G+1;
tipo=tipo+1;
z=z+1;
name_S=name_S+1;
g=g+1;
%
end
f=f+1;
conteo=conteo+1
end
%% EXPORTANDO A EXCEL
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_G_1',...
result_4_SNR_G_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_G_2',...
result_4_SNR_G_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_G_1',...
result_5_MSE_G_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_G_2',...
result_5_MSE_G_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_G_1',...
result_6_PSNR_G_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_G_2',...
result_6_PSNR_G_2)
63
ANEXOS
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_G_1',...
result_7_SC_G_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_G_2',...
result_7_SC_G_2)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_G_1',...
result_8_NCC_G_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_G_2',...
result_8_NCC_G_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_G_1',...
result_9_MSSIM_G_1)
xlswrite('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_G_2',...
result_9_MSSIM_G_2)

CONTAMINACIÓN DE LAS IMÁGENES
% function[]=kk()
% remite a una función creada para facilitar el trabajo con la
% contaminación de ruido poisson, gaussian y speckle. se obtienen %valores
% de calidad como la SNR, el MSE, PSNR, SC, NCC,MSSIM(respecto a
% la imagen original) además de la imagen contaminada. todos estos %valores
% obtenidos son guardados en las matrices RESULT para su posterior
% análisis. además son ploteados los valores de las medidas de calidad %de
% la imagen contaminada respecto a la original. se crearon, para %llevar a cabo lo
% anteriormente planteado, varias funciónes donde se programaron %fragmentos
% del programa con el objetivo de acomodar el trabajo.
clear all;close all;clc
64
ANEXOS
%inicializado valores
n=2; k=1; f=2; x=1; y=1; cont=0; z=2; nombre=0;name_P=0;name_G=0;name_S=0;
%matrices para almacenar velores obtenidos e imágenes
result_4_SNR_S=zeros(x,y);
result_4_SNR_G=zeros(x,y);
result_5_MSE_S=zeros(x,y);
result_5_MSE_G=zeros(x,y);
result_6_PSNR_S=zeros(x,y); result_6_PSNR_G=zeros(x,y);
result_7_SC_S=zeros(x,y);
result_7_SC_G=zeros(x,y);
result_8_NCC_S=zeros(x,y);
result_8_NCC_G=zeros(x,y);
result_9_MSSIM_S=zeros(x,y); result_9_MSSIM_G=zeros(x,y);
result_4_SNR_P=zeros(x,y);
result_5_MSE_P=zeros(x,y);
result_6_PSNR_P=zeros(x,y);
result_7_SC_P=zeros(x,y);
result_8_NCC_P=zeros(x,y);
result_9_MSSIM_P=zeros(x,y);
result=cell(x,y);
result_speckle=cell(x,y);
result_ssim_map_G=cell(x,y);
result_ssim_map_P=cell(x,y);
result_ssim_map_S=cell(x,y);
filt=cell(x,y);
result(1,1)={str2mat('imagenes')};
while k<=50
65
ANEXOS
cont=cont+1;
% leer la imagen en la dirección especificada
A=im2double(rgb2gray(imread(strcat...
('C:\Users\Administrador\Desktop\will\copia\',num2str(k),'.bmp'))));
% guardarla en la matriz
result(n,1)={A};
%% contaminado con ruido poisson
g = 0;p = 2;i=1;
result(1,p)={str2mat('imagen_poisson')};
while i<=26
g=g+1;p=p+1;
result(1,p)={str2mat(strcat('EXP=',num2str(i)))};
result_ssim_map_P(1,g)={str2mat(strcat('e*10^',num2str(i)))};
result_4_SNR_P(1,g)=i;
result_5_MSE_P(1,g)=i;
result_6_PSNR_P(1,g)=i;
result_7_SC_P(1,g)=i;
result_8_NCC_P(1,g)=i;
result_9_MSSIM_P(1,g)=i;
[Q_1]=poisson(A,i);
result(n,p)={Q_1};
p = p+1;
result(1,p)={str2mat('SNR')};
66
ANEXOS
67
%llama a función calidad
[PSNR,SC,NCC,mse,snr]=calidad(A,Q_1);
[mssim, ssim_map] = ssim_index(A,Q_1);
result_9_MSSIM_P(f,g)=mssim; result_ssim_map_P(f,g)={ssim_map};
result(n,p)={snr};
result_4_SNR_P(f,g)=snr;
result_5_MSE_P(f,g)=mse;
result_6_PSNR_P(f,g)=PSNR;
result_7_SC_P(f,g)=SC;
result_8_NCC_P(f,g)=NCC;
i=i+1; name_P=name_P+1;
imwrite(Q_1,strcat('C:\Users\Administrador\Desktop\will\contaminadas\poisson\',num2str(name
_P),'.bmp'))
end
%% contaminado con ruido gaussian
var = 0.01;
p = p+1;
result(1,p)={str2mat('imagen_gauss')};p = p+1;
h = 1; s = 1;
while var<=0.52
result(1,p)={str2mat(strcat('VAR=',num2str(var)))};
filt(1,s)={str2mat(strcat('VAR=',num2str(var)))};
ANEXOS
result_ssim_map_G(1,h)={str2mat(strcat('VAR=',num2str(var)))};
result_4_SNR_G(1,h)=var;
result_5_MSE_G(1,h)=var;
result_6_PSNR_G(1,h)=var;
result_7_SC_G(1,h)=var;
result_8_NCC_G(1,h)=var;
result_9_MSSIM_G(1,h)=var;
result(1,p+1)={str2mat('SNR')};
[W]=gaussian(A,var);
result(n,p)={W};
p = p+1;
[PSNR,SC,NCC,mse,snr]=calidad(A,W);%analisis de calidad a la imagen ruidosa
[mssim, ssim_map] = ssim_index(A,W);
%
guardando en las matrices asignadas a cada analisis
result_9_MSSIM_G(f,h)=mssim; result_ssim_map_G(f,h)={ssim_map};
result_4_SNR_G(f,h)=snr;
result_5_MSE_G(f,h)=mse;
result_6_PSNR_G(f,h)=PSNR;
result_7_SC_G(f,h)=SC;
result_8_NCC_G(f,h)=NCC;
result(n,p)={snr};
name_G=name_G+1;
imwrite(W,strcat...
('C:\Users\Administrador\Desktop\will\contaminadas\gauss\',num2str(name_G),'.bmp'))
68
ANEXOS
p=p+1;
h=h+1;
var = var+0.02;
end
%% contaminado con ruido SPECKLE
var = 0.01;
j = 1;
name=0;
result(1,p)={str2mat('imagen_speckle')};p = p+1;
while var<=0.52
result(1,p)={str2mat(strcat('VAR=',num2str(var)))};
result_ssim_map_S(1,j)={str2mat(strcat('VAR=',num2str(var)))};
result_speckle(1,j)={str2mat(strcat('VAR=',num2str(var)))};
result_4_SNR_S(1,j)=var;
result_5_MSE_S(1,j)=var;
result_6_PSNR_S(1,j)=var;
result_7_SC_S(1,j)=var;
result_8_NCC_S(1,j)=var;
result_9_MSSIM_S(1,j)=var;
result(1,p+1)={str2mat('SNR')};
[W]=speckle(A,var); result(n,p)={W}; %result_speckle(f,j)={XD};
%llama a función calidad
69
ANEXOS
[PSNR,SC,NCC,mse,snr]=calidad(A,W);
[mssim, ssim_map] = ssim_index(A,W);
result_9_MSSIM_S(f,j)=mssim; result_ssim_map_S(f,j)={ssim_map};
p = p+1;
result(n,p)={snr};
p= p+1;
result_4_SNR_S(f,j)=snr;
result_5_MSE_S(f,j)=mse;
result_6_PSNR_S(f,j)=PSNR;
result_7_SC_S(f,j)=SC;
result_8_NCC_S(f,j)=NCC;
name_S=name_S+1;
imwrite(W,strcat...
('C:\Users\Administrador\Desktop\will\contaminadas\speckle\',num2str(name_S),'.bmp'))
j=j+1;
var = var+0.02;
end
conteo=cont
z=z+1;
f=f+1;
k=k+1;
n=n+1;
end
70
ANEXOS
71
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_4_SNR_S',result_4_SNR_S)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_5_MSE_S',result_5_MSE_S)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_6_PSNR_S',result_6_PSNR_S)
xlswrite('C:\Users\Administrador\Desktop\will\xls contaminadas\result_7_SC_S',result_7_SC_S)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_8_NCC_S',result_8_NCC_S)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_9_MSSIM_S',result_9_MSSIM_S)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_4_SNR_G',result_4_SNR_G)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_5_MSE_G',result_5_MSE_G)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_6_PSNR_G',result_6_PSNR_G)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_7_SC_G',result_7_SC_G)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_8_NCC_G',result_8_NCC_G)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_9_MSSIM_G',result_9_MSSIM_G)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_4_SNR_P',result_4_SNR_P)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_5_MSE_P',result_5_MSE_P)
ANEXOS
72
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_6_PSNR_P',result_6_PSNR_P)
xlswrite('C:\Users\Administrador\Desktop\will\xls contaminadas\result_7_SC_P',result_7_SC_P)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_8_NCC_P',result_8_NCC_P)
xlswrite('C:\Users\Administrador\Desktop\will\xls
contaminadas\result_9_MSSIM_P',result_9_MSSIM_P)
%% cálculo de las medias de los resultados obtenidos de los análisis de
%% calidad
mean_SNR_speckle=mean(result_4_SNR_S(2:end,:));
mean_SNR_gaussian=mean(result_4_SNR_G(2:end,:));
mean_SNR_poisson=mean(result_4_SNR_P(2:end,:));
mean_MSE_speckle=mean(result_5_MSE_S(2:end,:));
mean_MSE_gaussian=mean(result_5_MSE_G(2:end,:));
mean_MSE_poisson=mean(result_5_MSE_P(2:end,:));
mean_PSNR_speckle=mean(result_6_PSNR_S(2:end,:));
mean_PSNR_gaussian=mean(result_6_PSNR_G(2:end,:));
mean_PSNR_poisson=mean(result_6_PSNR_P(2:end,:));
mean_SC_speckle=mean(result_7_SC_S(2:end,:));
mean_SC_gaussian=mean(result_7_SC_G(2:end,:));
mean_SC_poisson=mean(result_7_SC_P(2:end,:));
mean_NCC_speckle=mean(result_8_NCC_S(2:end,:));
mean_NCC_gaussian=mean(result_8_NCC_G(2:end,:));
ANEXOS
73
mean_NCC_poisson=mean(result_8_NCC_P(2:end,:));
mean_MSSIM_speckle=mean(result_9_MSSIM_S(2:end,:));
mean_MSSIM_gaussian=mean(result_9_MSSIM_G(2:end,:));
mean_MSSIM_poisson=mean(result_9_MSSIM_P(2:end,:));
x1 = result_5_MSE_G(1,:);
%% ploteo de las medias de calidad
figure(1);
subplot(321);plot(x1,mean_MSE_speckle,x1,mean_MSE_gaussian,x1,mean_MSE_poisson);grid
on
legend('media MSE speckle', 'media MSE gaussian',' media MSE poisson');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('MSE');title...
('Medias de los Resultados de Imagenes Contaminadas con Ruido Gaussano y Speckle');
subplot(322);
plot(x1,mean_SNR_speckle,x1,mean_SNR_gaussian,x1,mean_SNR_poisson);grid on
legend('media SNR speckle', 'media SNR gaussian','media SNR poisson');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('SNR')
subplot(323);
plot(x1,mean_PSNR_speckle,x1,mean_PSNR_gaussian,x1,log10(mean_PSNR_poisson));grid on
legend('media PSNR speckle', 'media PSNR gaussian','log10(media PSNR poisson)');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('PSNR(valor poisson log)')
subplot(324); plot(x1,mean_SC_speckle,x1,mean_SC_gaussian,x1,mean_SC_poisson);grid on
legend('media SC speckle', 'media SC gaussian','media SC poisson');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('SC')
subplot(325); plot(x1,mean_NCC_speckle,x1,mean_NCC_gaussian,x1,mean_NCC_poisson);grid
on
ANEXOS
74
legend('media NCC speckle', 'media NCC gaussian','media NCC poisson');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('NCC')
subplot(326);
plot(x1,mean_MSSIM_speckle,x1,mean_MSSIM_gaussian,x1,mean_MSSIM_poisson);grid on
legend('media MSSIM speckle', 'media MSSIM gaussian','media MSSIM poisson');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('MSSIM')
%% Ploteo de los valores obtenidos de las medidas de calidad(valor de
%%la medida v/s varianza)
% % SNR
figure(2);
subplot(311);plot(result_4_SNR_G(1,:),result_4_SNR_G(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('SNR gaussian');
title('Relacion Señal a Ruido para cada proceso');
subplot(312);plot(result_4_SNR_S(1,:),result_4_SNR_S(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('SNR speckle');
subplot(313);plot(result_4_SNR_P(1,:),log10(result_4_SNR_P(2:end,:)),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
ANEXOS
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('e*10');ylabel('log_1_0(SNR poisson)');
% % MSE
figure(3);
subplot(311);plot(result_5_MSE_G(1,:),result_5_MSE_G(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('MSE gaussian');
title('Error Cuadratico Medio para cada proceso');
subplot(312);plot(result_5_MSE_S(1,:),result_5_MSE_S(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('MSE speckle');
subplot(313);plot(result_5_MSE_P(1,:),log10(result_5_MSE_P(2:end,:)),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('e*10');ylabel('log_1_0(MSE poisson)');
% % PSNR
figure(4);
subplot(311);plot(result_6_PSNR_G(1,:),result_6_PSNR_G(2:end,:),'-s','LineWidth',1,...
75
ANEXOS
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('PSNR gaussian');
title('SNR de picos');
subplot(312);plot(result_6_PSNR_S(1,:),result_6_PSNR_S(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('PSNR speckle');
subplot(313);plot(result_6_PSNR_P(1,:),log10(result_6_PSNR_P(2:end,:)),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('e*10');ylabel('log_1_0(PSNR poisson)');
% % CONTENIDO ESTRUCTURAL
figure(5);
subplot(311);plot(result_7_SC_G(1,:),result_7_SC_G(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('SC gaussian');
title('contenido estructural');
subplot(312);plot(result_7_SC_S(1,:),result_7_SC_S(2:end,:),'-s','LineWidth',1,...
76
ANEXOS
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('SC speckle');
subplot(313);plot(result_7_SC_P(1,:),log10(result_7_SC_P(2:end,:)),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('e*10');ylabel('log_1_0(SC poisson)');
% % CORRELACION CRUZADA NORMALIZADA
figure(6);
subplot(311);plot(result_8_NCC_G(1,:),result_8_NCC_G(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('NCC gaussian');
title('CORRELACION CRUZADA NORMALIZADA');
subplot(312);plot(result_8_NCC_S(1,:),result_8_NCC_S(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('NCC speckle');
subplot(313);plot(result_8_NCC_P(1,:),log10(result_8_NCC_P(2:end,:)),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
77
ANEXOS
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('e*10');ylabel('log_1_0(NCC poisson)');
% % MEDIA DEL INDICE DE SIMILITUD ESTRUCTURAL
figure(7);
subplot(311);plot(result_9_MSSIM_G(1,:),result_9_MSSIM_G(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('mssim gaussian');
title('MEDIA DEL INDICE DE SIMILITUD ESTRUCTURAL');
subplot(312);plot(result_9_MSSIM_S(1,:),result_9_MSSIM_S(2:end,:),'-s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('VARIANZA');ylabel('mssim speckle');
subplot(313);plot(result_9_MSSIM_P(1,:),log10(result_9_MSSIM_P(2:end,:)),'s','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);grid on;xlabel('e*10');ylabel('log_1_0(mssim poisson)');

PLOTEO DE LAS MEDIAS CALCULADAS
%% Leer los resultados
78
ANEXOS
result_4_SNR_G_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_G_1.xls');
result_4_SNR_G_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_G_2.xls');
result_4_SNR_P_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_P_1.xls');
result_4_SNR_P_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_P_2.xls');
result_4_SNR_S_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_S_1.xls');
result_4_SNR_S_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_4_SNR_S_2.xls');
result_5_MSE_G_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_G_1.xls');
result_5_MSE_G_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_G_2.xls');
result_5_MSE_P_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_P_1.xls');
result_5_MSE_P_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_P_2.xls');
result_5_MSE_S_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_S_1.xls');
result_5_MSE_S_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_5_MSE_S_2.xls');
79
ANEXOS
result_6_PSNR_G_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_G_1.xls');
result_6_PSNR_G_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_G_2.xls');
result_6_PSNR_P_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_P_1.xls');
result_6_PSNR_P_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_P_2.xls');
result_6_PSNR_S_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_S_1.xls');
result_6_PSNR_S_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_6_PSNR_S_2.xls');
result_7_SC_G_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_G_1.xls');
result_7_SC_G_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_G_2.xls');
result_7_SC_P_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_P_1.xls');
result_7_SC_P_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_P_2.xls');
result_7_SC_S_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_S_1.xls');
result_7_SC_S_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_7_SC_S_2.xls');
80
ANEXOS
result_8_NCC_G_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_G_1.xls');
result_8_NCC_G_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_G_2.xls');
result_8_NCC_P_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_P_1.xls');
result_8_NCC_P_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_P_2.xls');
result_8_NCC_S_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_S_1.xls');
result_8_NCC_S_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_8_NCC_S_2.xls');
result_9_MSSIM_G_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_G_1.xls');
result_9_MSSIM_G_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_G_2.xls');
result_9_MSSIM_P_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_P_1.xls');
result_9_MSSIM_P_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_P_2.xls');
result_9_MSSIM_S_1=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_S_1.xls');
result_9_MSSIM_S_2=xlsread...
('C:\Users\Administrador\Desktop\will\xls filtradas\result_9_MSSI_S_2.xls');
81
ANEXOS
%% cálculo de media
mean_SNR_speckle_1=mean(result_4_SNR_S_1(2:end,:));
mean_SNR_speckle_2=mean(result_4_SNR_S_2(2:end,:));
mean_SNR_gaussian_1=mean(result_4_SNR_G_1(2:end,:));
mean_SNR_gaussian_2=mean(result_4_SNR_G_2(2:end,:));
mean_SNR_poisson_1=mean(result_4_SNR_P_1(2:end,:));
mean_SNR_poisson_2=mean(result_4_SNR_P_2(2:end,:));
mean_MSE_speckle_1=mean(result_5_MSE_S_1(2:end,:));
mean_MSE_speckle_2=mean(result_5_MSE_S_2(2:end,:));
mean_MSE_gaussian_1=mean(result_5_MSE_G_1(2:end,:));
mean_MSE_gaussian_2=mean(result_5_MSE_G_2(2:end,:));
mean_MSE_poisson_1=mean(result_5_MSE_P_1(2:end,:));
mean_MSE_poisson_2=mean(result_5_MSE_P_2(2:end,:));
mean_PSNR_speckle_1=mean(result_6_PSNR_S_1(2:end,:));
mean_PSNR_speckle_2=mean(result_6_PSNR_S_2(2:end,:));
mean_PSNR_gaussian_1=mean(result_6_PSNR_G_1(2:end,:));
mean_PSNR_gaussian_2=mean(result_6_PSNR_G_2(2:end,:));
mean_PSNR_poisson_1=mean(result_6_PSNR_P_1(2:end,:));
mean_PSNR_poisson_2=mean(result_6_PSNR_P_2(2:end,:));
mean_SC_speckle_1=mean(result_7_SC_S_1(2:end,:));
mean_SC_speckle_2=mean(result_7_SC_S_2(2:end,:));
mean_SC_gaussian_1=mean(result_7_SC_G_1(2:end,:));
mean_SC_gaussian_2=mean(result_7_SC_G_2(2:end,:));
82
ANEXOS
83
mean_SC_poisson_1=mean(result_7_SC_P_1(2:end,:));
mean_SC_poisson_2=mean(result_7_SC_P_2(2:end,:));
mean_NCC_speckle_1=mean(result_8_NCC_S_1(2:end,:));
mean_NCC_speckle_2=mean(result_8_NCC_S_2(2:end,:));
mean_NCC_gaussian_1=mean(result_8_NCC_G_1(2:end,:));
mean_NCC_gaussian_2=mean(result_8_NCC_G_2(2:end,:));
mean_NCC_poisson_1=mean(result_8_NCC_P_1(2:end,:));
mean_NCC_poisson_2=mean(result_8_NCC_P_2(2:end,:));
mean_MSSIM_speckle_1=mean(result_9_MSSIM_S_1(2:end,:));
mean_MSSIM_speckle_2=mean(result_9_MSSIM_S_2(2:end,:));
mean_MSSIM_gaussian_1=mean(result_9_MSSIM_G_1(2:end,:));
mean_MSSIM_gaussian_2=mean(result_9_MSSIM_G_2(2:end,:));
mean_MSSIM_poisson_1=mean(result_9_MSSIM_P_1(2:end,:));
mean_MSSIM_poisson_2=mean(result_9_MSSIM_P_2(2:end,:));
%% PLOTEO DE LAS MEDIAS CALCULADAS TRAS EL FILTRADO
l=0.01:0.02:0.53;
figure(8);
plot(l,mean_MSE_speckle_1,l,mean_MSE_speckle_2,l,mean_MSE_gaussian_1,l,mean_MSE_ga
ussian_2);grid on
legend('media MSE speckle_1','media MSE speckle_2', 'mean MSE gaussian_1','mean MSE
gaussian_2');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('MSE');title('Datos de imagenes filtradas');
figure(9);
ANEXOS
84
plot(l,mean_SNR_speckle_1,l,mean_SNR_speckle_2,l,mean_SNR_gaussian_1,l,mean_SNR_gau
ssian_2);grid on
legend('media SNR speckle_1','media SNR speckle_2', 'mean SNR gaussian_1','mean SNR
gaussian_2');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('SNR')
figure(10);
plot(l,mean_PSNR_speckle_1,l,mean_PSNR_speckle_2,l,mean_PSNR_gaussian_1,l,mean_PSN
R_gaussian_2);grid on
legend('media PSNR speckle_1','media PSNR speckle_2', 'mean PSNR gaussian_1','mean PSNR
gaussian_2');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('PSNR')
figure(11);
plot(l,mean_SC_speckle_1,l,mean_SC_speckle_2,l,mean_SC_gaussian_1,l,mean_SC_gaussian_
2);grid on
legend('media SC speckle_1','media SC speckle_2', 'mean SC gaussian_1','mean SC
gaussian_2');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('SC')
figure(12);
plot(l,mean_NCC_speckle_1,l,mean_NCC_speckle_2,l,mean_NCC_gaussian_1,l,mean_NCC_ga
ussian_2);grid on
legend('media NCC speckle_1','media NCC speckle_2', 'mean NCC gaussian_1','mean NCC
gaussian_2');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('NCC')
figure(13);
ANEXOS
85
plot(l,mean_MSSIM_speckle_1,l,mean_MSSIM_speckle_2,l,mean_MSSIM_gaussian_1,l,mean_
MSSIM_gaussian_2);grid on
legend('media MSSIM speckle_1','media MSSIM speckle_2', 'mean MSSIM gaussian_1','mean
MSSIM gaussian_2');
xlabel('VARIANZA 0~1 (+0.02)');ylabel('MSSIM')

ANÁLISIS OBJETIVO DE CALIDAD.
Medidas objetivas de calidad implementadas.
function[PSNR,SC,NCC,mse,snr]=calidad(A,XD)
%%%%análisis objetivo de calidad
Tam=numel(A);
% %SNR & MSE
[snr,mse]=snr2d(A,XD);
% PSNR (peak SNR)
PSNR = sum(sum(255^2))/(mse*Tam);
% SC (Structural Content).
SC = sum(sum(A.^2))/sum(sum(XD.^2));
% NCC (Normalized Cross-Correlation).
NCC = sum(sum(A.*XD))/sum(sum(XD.^2));

Relacion señal a ruido y error cuadrático medio
function [snr,mse]=residual2d(a,b)
% Function residual2d(a,b) calculates the signal to noise ratio in dB
ANEXOS
86
% and the mse between two images (matrices) a (noiseless) and b (noisy). The syntax is
% [snr,mse]=snr2d(a,b);
% Checking sizes for comparison.
sa=size(a);
sb=size(b);
sizedif=sa-sb;
if sizedif(1)~=0|sizedif(2)~=0 % Matrices of different sizes.
error('matrix:mismatch','Trying to compare matrices of different sizes');
end;
errmat=a-b;
errorenergy=(norm(errmat(:)))^2;
signalenergy=(norm(a(:)))^2;
mse=errorenergy/length(errmat(:));
snr=10*log10(signalenergy/errorenergy);

Indice de similitude estructural
function [mssim, ssim_map] = ssim_index(img1, img2, K, window, L)
%====================================================================
===
%SSIM Index, Version 1.0
ANEXOS
%Copyright(c) 2003 Zhou Wang
%All Rights Reserved.
%
%The author is with Howard Hughes Medical Institute, and Laboratory
%for Computational Vision at Center for Neural Science and Courant
%Institute of Mathematical Sciences, New York University.
%
if (nargin < 2 | nargin > 5)
ssim_index = -Inf;
ssim_map = -Inf;
return;
end
if (size(img1) ~= size(img2))
ssim_index = -Inf;
ssim_map = -Inf;
return;
end
[M N] = size(img1);
if (nargin == 2)
if ((M < 11) | (N < 11))
ssim_index = -Inf;
ssim_map = -Inf;
return
87
ANEXOS
end
window = fspecial('gaussian', 11, 1.5); %
K(1) = 0.01; % default settings
K(2) = 0.03; %
L = 255; %
end
if (nargin == 3)
if ((M < 11) | (N < 11))
ssim_index = -Inf;
ssim_map = -Inf;
return
end
window = fspecial('gaussian', 11, 1.5);
L = 255;
if (length(K) == 2)
if (K(1) < 0 | K(2) < 0)
ssim_index = -Inf;
ssim_map = -Inf;
return;
end
else
ssim_index = -Inf;
ssim_map = -Inf;
88
ANEXOS
return;
end
end
if (nargin == 4)
[H W] = size(window);
if ((H*W) < 4 | (H > M) | (W > N))
ssim_index = -Inf;
ssim_map = -Inf;
return
end
L = 255;
if (length(K) == 2)
if (K(1) < 0 | K(2) < 0)
ssim_index = -Inf;
ssim_map = -Inf;
return;
end
else
ssim_index = -Inf;
ssim_map = -Inf;
return;
end
end
89
ANEXOS
if (nargin == 5)
[H W] = size(window);
if ((H*W) < 4 | (H > M) | (W > N))
ssim_index = -Inf;
ssim_map = -Inf;
return
end
if (length(K) == 2)
if (K(1) < 0 | K(2) < 0)
ssim_index = -Inf;
ssim_map = -Inf;
return;
end
else
ssim_index = -Inf;
ssim_map = -Inf;
return;
end
end
C1 = (K(1)*L)^2;
C2 = (K(2)*L)^2;
window = window/sum(sum(window));
img1 = double(img1);
img2 = double(img2);
90
ANEXOS
91
mu1 = filter2(window, img1, 'valid');
mu2 = filter2(window, img2, 'valid');
mu1_sq = mu1.*mu1;
mu2_sq = mu2.*mu2;
mu1_mu2 = mu1.*mu2;
sigma1_sq = filter2(window, img1.*img1, 'valid') - mu1_sq;
sigma2_sq = filter2(window, img2.*img2, 'valid') - mu2_sq;
sigma12 = filter2(window, img1.*img2, 'valid') - mu1_mu2;
if (C1 > 0 & C2 > 0)
ssim_map
=
((2*mu1_mu2
+
C1).*(2*sigma12
+
C2))./((mu1_sq
+
mu2_sq
+
C1).*(sigma1_sq + sigma2_sq + C2));
else
numerator1 = 2*mu1_mu2 + C1;
numerator2 = 2*sigma12 + C2;
denominator1 = mu1_sq + mu2_sq + C1;
denominator2 = sigma1_sq + sigma2_sq + C2;
ssim_map = ones(size(mu1));
index = (denominator1.*denominator2 > 0);
ssim_map(index)
(numerator1(index).*numerator2(index))./(denominator1(index).*denominator2(index));
index = (denominator1 ~= 0) & (denominator2 == 0);
ssim_map(index) = numerator1(index)./denominator1(index);
end
mssim = mean2(ssim_map);
return
=
ANEXOS
Anexo II
Imágenes.
92
ANEXOS
93
ANEXOS
94
Descargar