Está en la página 1de 97

INSTITUTO TECNOLGICO SUPERIOR DE

HUAUCHINANGO

Mejoramiento en el proceso de decapado y


electropulido

INGENIERA MECATRNICA

P R E S E N T A :

J U A N R I C A R D O G O M E Z H E R N A N D E Z

E14312022

HUAUCHINANGO, PUE. A 20 FEBRERO DE 2017


Resumen

Disear un sistema para mejorar los procesos de decapado y electropulido de tubera


inoxidable, manufacturando e integrando un dispositivo de calentamiento para liquidos
agresivos asi como la realizacin de una celda de electropulido y manuales para el
optimizar el proceso.

Este proyecto consta en atacar 2 problematicas detectadas en dichos procesos las cuales son
la primera es la necesidad de calentar las soluciones acidas utilizadas y que debido al alto
grado de corrocion de estas mismas se vuelve imposible utilizar mtodos de calentamiento
convencionales, la segunda es definir relaciones de voltaje/amperaje para los distintos
volmenes y tipos de material de las piezas a electropulir

Esta metodologa consta en obtener las diferentes propiedades y caractersticas


fundamentales en los procesos antes mencionados como lo son: tipo de solucin, ph, tipo
de material, volumen de material, voltaje, amperaje y tiempo necesario para cada proceso.
Conocer estas caractersticas nos ayudara a realizar de forma profesional el decapado y
electropulido de tubera.
Abstrac

Design a system to improve the pickling and electropolishing processes of stainless pipe,
manufacturing and integrating a heating device for aggressive liquids as well as the
realization of an electropolishing cell and manuals to optimize the process.

This project consists in attacking 2 problems detected in these processes which are the first
is the need to heat acid solutions used and because of the high degree of corrocion of these
same becomes impossible to use conventional heating methods, the second is to define
relations Of voltage / amperage for the different volumes and types of material of the parts
to be electropolished

This methodology consists of obtaining the different properties and fundamental


characteristics in the aforementioned processes such as: solution type, pH, material type,
material volume, voltage, amperage and time required for each process. Knowing these
characteristics will help us perform professional pickling and electropolishing of pipes.
Dedicatoria

El presente trabajo quiero dedicrselo a mis padres quienes me han apoyado y motivado en
mi formacin acadmica, su gua y sus consejor han hecho de ellos un gran ejemplo a
seguir y que gracias a ellos he podido conseguir llegar hasta punto de mi formacion, gracias
por todo su apoyo.

A el Instituto Tecnologico Superior de Huauchinango por darme la oportunidad de estudiar


en sus aulas y forjarme como profesional.

A mis profesores los cuales durante toda mi carrera han aportado con su conocimiento y sus
consejos a mi formacin academica.

Y por ltimo quiero agradecer a Conexiones Inoxidables de Puebla S.A por haberme
permitido realizar mi proyecto de residencia en sus instalaciones y por facilitarme todo el
material necesario para la realizacin del mismo durante el periodo de residencia
profecional.
ndice de contenido

Pgina

Antecedentes viii

Captulo I. Introduccin 1

1.1 Problema a resolver 2

1.2 Justificacin 3

1.3 Hiptesis 4
1.4 Objetivo general 5

1.5 Objetivos especficos 5

1.6 Informacin sobre la empresa, institucin u organizacin 5


1.7 Aportaciones del trabajo 6

1.7.1 Limitaciones 6

1.6 Estructura del proyecto 6

Captulo II. Marco Terico 8

2.1 Textura 8

2.1.1 Caractersticas 8

2.2 Tipos de textura 9

2.2.1Natural 9

2.2.2 Artificial 10

2.2.3 Visual 10

2.2.4 Tctil 10

2.2.5 Geomtrica 11

i
2.2.6 Orgnica 11

2.3.7 Fotogrfica 12

2.3 Imgenes brodatz. 12

2.4 Mtodos para el anlisis de textura 14

2.4.1 Mtodos estadsticos 14

2.4.1.1 Anlisis estadstico de segundo orden 16

2.4.1.2 Relacin entre dos pixeles 17

2.4.1.3 Distancia entre dos puntos 18

2.4.1.4 Normalizacin de la matriz 18

2.4.1.5 Propiedades de la matriz de co-ocurrencia 20

2.4.1.6 Descriptores de textura haralick 20

2.4.2 Anlisis de textura mediante el mtodo geomtrico 23

2.4.3 Mtodos basados en modelos 23

2.4.4 Mtodo de procesado de seal 23

2.4.5 Mtodo basado en la suma y diferencia de histogramas para 24


la clasificacin de texturas

2.4.5.1 Media de la suma y diferencia de histogramas 25

2.4.5.2 Otras caractersticas de los histogramas 26

Captulo III. Adquisicin y procesamiento de imgenes en Matlab 27

3.1 Conceptos bsicos de imgenes 27

ii
3.2 Procesamiento de imgenes 28

3.3 Tipos de imgenes en Matlab 34

3.4 Representacin (matriz) de una imagen en escala de gris. 36

3.5 Histograma de una imagen. 40

3.6 Operaciones bsicas (aritmticas) con imgenes. 42

Captulo IV Implementacin del proyecto 47

4.1 Algoritmo para la suma y diferencia de histogramas. 49

4.2 Propiedades del histograma de una textura. 51

4.3 Entrenamiento del algoritmo. 56

4.4 rbol de decisin (tree). 62

4.5 Margen de error del rbol de decisin. 69

Captulo V Implementacin del algoritmo final. 71

5.1 Aplicaciones del algoritmo en la industria 73

Conclusiones. 75

Recomendaciones. 76

Experiencia personal 77
Bibliografas. 78

Anexos. 80

iii
ndice de figuras
Figura 1: Control de calidad en el envasado de una viii
botella
Figura 2: Reconocimiento de patrones de color ix
aplicando la visin artificia
Figura 3: Proceso a seguir para la clasificacin de 3
materiales mediante visin artificial
Figura 4: Texturas naturales 9

Figura 5: Texturas artificiales 10

Figura 6: Texturas visuales 10

Figura 7: Texturas tctiles 10

Figura 8: Texturas geomtricas 11


Figura 9: Texturas orgnicas 11

Figura 10: Texturas fotogrficas 12

Figura 11: Texturas de D1-D30 del lbum de 13


brodatz.

Figura 12: Texturas de D31-D70 del lbum de 13


brodatz
Figura 13: Texturas de D71-D110 del lbum de 13
brodatz.

Figura 14: Texturas de D111 y D112 del lbum de 13


brodatz.

Figura 15: Histograma de escala de gris de una 15


imagen
Figura 16: Resultados obtenidos de procesamiento 16
de texturas con el mtodo de primer orden
Figura 17: Vecindad de pixeles. 18

Figura 18: Representacin en escala de grises de 19


una imagen
Figura 19: Posibles combinaciones de los 4 niveles 19
de gris de la imagen anterior
Figura 20: Matriz simtrica para para una relacin 19
horizontal
Figura 21: Representacin de una imagen a escala 28
de grises
Figura 22: Representacin de una imagen a color 28
iv
RGB
Figura 23: Formatos y extensiones soportadas por 29
Matlab.

Figura 24: Lectura de una imagen 30


Figura 25: Rango de calidad de una imagen en el 31
entorno de Matlab
Figura 26: Visualizacin y escritura de una imagen 32
Figura 27: Tipos de datos de una imagen en Matlab 33

Figura 28: Funciones para la conversin de datos 34


de una imagen
Figura 29: Funciones para la conversin de una 35
imagen
Figura 30: Funciones para determinar el formato de 36
una imagen
Figura 31: Representacin matricial de una imagen 37

Figura 32: Pixel p y sus vecinos 37


Figura 33: Algoritmo para extraer un plano de la 38
imagen original
Figura 34: Obtencin de un plano de la imagen 39
original
Figura 35: Matriz del plano anterior 39
Figura 36: Acceso al valor de un pixel de la matriz 40
Figura 37: histograma de un imagen en escala de 40
gris
Figura 38: Escala de tonos de gris 40
Figura 39: Histograma normalizado 41
Figura 40: Histograma de una imagen 41

Figura 41: Histograma normalizado de una imagen 42


Figura 42: Suma de 2 imgenes 44
Figura 43: Resultado de la suma de imgenes 44
Figura 44: Multiplicacin de imgenes 45
Figura 45: Resultado de la multiplicacin de 46
imgenes
Figura 46: Algoritmo en Matlab de la suma y 49
diferencia de histogramas
Figura 47: Textura de prueba para el algoritmo de 50
la suma y diferencia de histogramas
Figura 48: Histograma de la textura de prueba de la 50
suma y diferencia de histogramas
Figura 49: Imagen de la suma de histograma 51
Figura 50: Imagen de la resta de histograma 51
v
Figura 51: Media de la suma. 52

Figura 52: Resultado de la suma de la media. 53


Figura 53: Media de la resta. 53

Figura 54: Resultado de la resta de la media. 53


Figura 55: Algoritmo para el clculo de las 56
caractersticas.

Figura 56: Complemento del algoritmo para el 56


clculo de las caractersticas

Figura 57: Variacin de la distancia para el 57


histograma en un rango de 1-5.

Figuras 58, 59 y 60: Caractersticas de las texturas 58


almacenadas en Excel.

Figura 61: Entrenamiento del algoritmo para 60


clasificacin de texturas.

Figura 62: Graficas del proceso de entrenamiento. 61

Figura 63: Separacin de las texturas (D9 y D84). 62

Figura 64: Arbol de decisin binario. 63

Figura 65: Arbol de juego. 63

Figura 66: Arbol de decisin de tipo binario en 65


Matlab.

Figura 67: Archivos .mat de las caractersticas de 66


las texturas.

Figura 68: Variables de la textura D9. 67

Figura 69: Variables de la textura D84. 67

Figura 70: Algoritmo para la generacin del rbol 68


de decisin.

vi
Figura 71: Predicciones del rbol de decisin. 68
Figura 72: Arbol de decisin. 68

Figura 73: Reconocimiento de la textura D9. 69

Figura 74: Reconocimiento de la textura D84. 70

Figura 75: Imagen combinada con las 2 texturas de 71


prueba.
Figura 76: Parte extrada de la imagen combinada 71
de acuerdo a la condicin a la condicin de la
textura D84.
Figura 77: Parte extrada de la imagen combinada 72
de acuerdo a la condicin a la condicin de la
textura D9.

Figura 78: Separacin de gajos de mandarina. 73

Figura 79: Imagen de la piel sin defectos con la 74


caracterstica de contraste.

Figura 80: Imagen de la piel con defectos con la 74


caracterstica de contraste.

vii
ANTECEDENTES
El procedimiento de pulido electroqumico o electropulido sirve para preparar superficies
metlicas de alta pureza, alisar y desbarbar las superficies metlicas. Por medio de un
alisamiento en el mbito micromtrico se puede provocar tambin un brillo de las
superficies as tratadas. Adems de esto, por el electropulido se pueden eliminar eventuales
tensiones de las capas externas del material.
Existe un gran nmero de diferentes procedimientos para el electropulido que se pueden
emplear para la mecanizacin de distintos metales, respectivamente de aleaciones
metlicas. Por regla general, estos procedimientos se basan en el empleo de electrolitos que
comprenden un cido mineral concentrado como por ejemplo cido fosfrico o cido
sulfrico, respectivamente una mezcla de cidos minerales concentrados a los que con
frecuencia se mezclan aditivos para continuar mejorando la accin de los electrolitos y
obtener as superficies metlicas ms lisas y mas brillantes. Ejemplos de tales aditivos son,
cido crmico, cido fluorhdrico, aminofluoruros o aditivos orgnicos como, por ejemplo,
alcoholes, aminas, glicerina, etc.

Figura 2: Esquema bsico de electropulido

viii
CAPTULO I. INTRODUCCION

El electropulido, es ampliamente utilizado en la metalografa por ejemplo. aceros


inoxidables, aleaciones de combre, aleaciones de aluminio, magnesio, zirconio y otros
metales que son difciles de pulir por metodos mecnicos convencionales. El pulido
electroltico puede eliminar completamente todos los restos de metal trabajado que queda
de la molienda mecnica y operaciones de pulido utilizadas en la preparacin de muestras.

El procedimiento de electropulido, se puede emplear con buenos resultados para una amplia
paleta de metales y aleaciones metlicas y en este caso es ampliamente inofensivo en
cuanto a seguridad en el trabajo y proteccin del medio ambiente. El proceso tiene como
resultado una superficie limpia e intacta.

Previene posibles efectos no deseados en el tratamiento mecnico de la superficie tales


como:

tensiones mecnica y trmica, inclusiones de partculas y superficies rugosas.

En este caso se aprovecha la resistencia a la corrosin inherente de el acero inoxidable. Por


estos motivos, el electropulido se ha convertido en un tratamiento habitual para este acero,
en las industrias en las que los requisitos de resistencia a la corrosin y limpieza son
especialmente elevados. Las aplicaciones tpicas se encuentran en la industria farmacutica,
bioqumica y alimentaria. Dado que el electropulido no implica un impacto mecnico,
trmico o qumico, se pueden someter al mismo elementos pequeos y mecnicamente
frgiles. El electropulido se puede aplicar a piezas de casi cualquier forma o tamao.

Durante el desarrollo del presente trabajo se incluyen el marco terico sobre el


electropulido, descripcin general de la celda, el diseo y seleccin de los elementos, la
construccin, pruebas y resultados donde se describen los procedimientos experimentales
que se ejecutaron en la planta de tuberia con el fin de obtener los resultados apropiados y
definir las condiciones de operacin en el pulido y ataque electroltico.

1
1.1 Problema a resolver

Existen diferentes problemas en los procesos de decapado y electropulido, los cuales son la
falta de un sistema de calentamiento para las soluciones y la falta de manuales de operacin
para el proceso de electropulido en los cuales se debe expresar la relacin voltaje/corriente
para las distintas piezas a electropulir en las cuales se debe considerar tambin el tipo de
material del cual estn fabricadas.

Figura 3: Representacion grafica del proceso de electropulido.

En el caso del acero inoxidable, la eliminacin de los componentes de la aleacin vara


segn los mismos, y eso crea un efecto importante. Los tomos de hierro y nquel se
extraen ms fcilmente de la celda del cristal que los tomos de cromo. El proceso de
electropulido se dirige preferentemente al hierro y al nquel, dejando una superficie rica en
cromo.

2
1.2 Justificacin

Hoy en dia las demandas dentro de las diferentes industrias tanto medicas como
alimentarias exigen a los fabricantes de diferentes conexiones y maquinarias, productos de
mayor calidad en este caso se exige tubera de acero inoxidable con un acabado final
optimo para el uso alimentario, por dicho motivo se implementara el uso de electropulido
para lograr un mejor acabado final obteniendo un producto de grado alimenticio optimo ya
que el electropulido proporciona superficies lisas, de facil limpieza y esteticamente
agradables exigidas por esta industria, adems de su ventaja higienica y de no tener
contaminacion. Este acabado reduce la oxidacin y la contaminacion de los componentes
de acero inoxidable usados en cocinas, industria lactea y de procesos automatizados para la
produccion alimentaria. Gracias al electropulido se consigue una superficie perfectamente
limpia, lo que ofreceuna resistencia maxima a la formacion de bacterias y depositos de
residuos.

Al Igual que las empresas alimentarias, las empresas farmacuticas insisten en unas
superficies metlicas muy limpias. Hoy en da, los elementos internos de las mezcladoras
farmacuticas, los sistemas de suministro de productos secos, los filtros, los coladores, las
vasijas, las secadoras, sistemas de corte, las espirales de enfriamiento, diferentes tipos de
lminas, los intercambiadores de calor y otros importantes elementos metlicos que se
encuentran electropulidos. Por motivos microbiolgicos y de cualquier otro tipo de
contaminacin, el electropulido ofrece la solucin ptima para los componentes
farmacuticos de acero inoxidable.

Es por eso que el electropulido es necesario siempre que se necesiten superficies sin
contaminantes, sin particulas y sin abrasiones. Ademas, las tuberas se benefician de la
friccion minima y del aspecto de maxima pureza del electropulido y sus ventajas, las hacen
estar presentes en la industria farmaceutica y alimentaria.

3
1.3 Hipotesis

La elaboracin de una celda de elctropulido utilizando los parmetros adecuados de


acuerdo el tipo de acero inoxidable nos brindara un producto final con la calidad que el
mercado demanda, esto beneficiara a la empresa de forma monetaria ya que se agregara un
nuevo producto tiene cada vez mas demanda en la industria.

1.4 Objetivo General

Disear manufacturar e integrar un sistema para mejorar el proceso de elctropulido


localizado en la planta, para asi ofrecer un producto de mayor calidad a las diferentes
empresas que demandan este tipo de acabado.

1.5 Objetivos Especficos

Realizar manuales de operacin para facilitar el uso de la celda de electropulido

Obtener un producto con un optimo acabado final

1.6 Informacin sobre la empresa, institucin u organizacin

Nombre: CONEXIONES INOXIDABLES DE PUEBLA S.A de C.V

Giro: INDUSTRIAL

Direccin: General Vicente Guerrero No. 211, Col. Centro

C.P: 73080

Xicotepec de Jurez, Puebla

Responsable Legal: Lic. Alejandro Fonseca Marn

Cargo: GERENTE GENERAL

Telfono: 01 764 764 50 00

Correo Electrnico: rd@grupocipsa.com

4
1.7 Aportaciones del trabajo

El desarrollo de este proyecto tiene la finalidad de:

Implementar los conocimientos adquiridos en la carrera para resolver un problema real en


la industria.

Mejorar un proceso realizado de forma artesanal, para lograr un acabado profesional en el


mismo

Disear manuales de operacin para facilitar el uso de dicho proceso.

1.7.1 Limitaciones

El diseo y manufactura de la celda de electropulido se vio limitado en tiempo, debido a


que la solicitud los materiales a utilizar para su fabricacin, paso por un periodo de
evaluacin para su autorizacin.

1.8 Estructura del proyecto

Captulo 1: Introduccin

En este capitulo se hace una descripcin del proyecto denominado Mejoramiento en


los procesos de decapado y electropulido de tubera inoxidable en el cual se menciona el
importancia del desarrollo de este tema especificando una justificacin del por qu se
debe de llevar a cabo expresando las demandas tecnolgicas de las nuevas industrias
planeando un objetivo general y un especifico.

Captulo 2: Marco terico


En el apartado de marco terico se describe los bases mediante las cuales se
fundamento el proceso de electropulido hasta las tcnicas utilizadas en la actualidad, asi
mismo se encuentran las variables utilizadas en los diferentes tipos de materiales que son
aptos para ser sometidas al proceso de electropulido.

5
Captulo 3: Determinacion de relaciones Voltaje/Amperaje

En el captulo 3 se Determinaran las diferentes relaciones de Voltaje/Amperaje utilizadas


para procesar los diferentes tipos de acero y tamaos de las piezas, asi como el tiempo que
deben ser sometidas las piezas para lograr el acabado deseado.

Captulo 4: implementacin del proyecto

El captulo 4 consiste en el diseo final del rea de trabajo en la cual quedara establecida
la celda de electropulido para su implementacin y uso dentro de la empresa.

Captulo 5; implementacin del algoritmo final.

En este Captulo 5 se describe los resultados obtenidos y verificacin del algoritmo


atravez de dos texturas de prueba asi mismo el margen de error de dicho algoritmo.

6
Captulo II Marco terico
2.1 Textura

Textura es un trmino usado para caracterizar la rugosidad de la superficie (conjunto de


irregularidades que posee una superficie) de un objeto o fenmeno y es uno de los
descriptores usados en el procesamiento de imgenes y reconocimiento de patrones, ya que
est relacionado con la composicin de una sustancia cualquiera a travs de variaciones en
la superficie de los materiales, sta es principalmente una propiedad que estudia las
vecindades. La textura de una imagen es una cuantificacin de la variacin espacial de
valores de tono que es imposible definirlo precisamente por su carcter sensorial. El uso de
la textura de una imagen proviene de la habilidad innata de los humanos de reconocer
diferencias texturales.

El nivel de gris de un pixel en una imagen monocromtica representa un tono, mientras


que un nivel de textura es la variabilidad del tono en una vecindad, es el patrn de
relaciones espaciales entre los niveles de gris de los pixeles de un vecindario y puede ser
descrito como suave o rugoso. El estudio de la textura depende de dos factores, la escala de
variaciones, que puede ser local o regional, y la escala de observacin. [1]

2.1.1 Caractersticas

Contienen variaciones de las intensidades que forman patrones repetidos.


Los patrones dependen de las superficies fsica:
Aspereza
Filamentos orientados que tienen a menudo una calidad tctil
Reflexin de la luz sobre el material
Uniformidad
Densidad
Tosquedad
Aspereza
Regularidad
Linealidad

7
Direccin
Frecuencia
Fase[2]

2.2 Tipos de textura

La textura puede ser:

Natural
Artificial
Visual
Tctil
Geomtrica
Orgnica
Fotogrfica

2.2.1 Texturas naturales

Son las texturas propias de la naturaleza, la corteza de un rbol, la piel de los animales, la
piel de la fruta, la rugosidad de una roca entre otros,en la (Figura 4) se muestra algn
ejemplo de esta textura.

Figura 4: Texturas naturales.

8
2.2.2 Texturas artificiales

Son las creadas por el hombre por esttica o funcionalidad como se muestra en la (Figura
5). El aspecto de un objeto puede cambiar si cambia su textura. El metal, el plstico o
cualquier tipo de material pueden ser alterados para darle una utilidad o un aspecto
determinado.

Figura 5: Texturas artificiales.

2.2.3 Texturas visuales

Son bidimensionales, se perciben con la vista aunque tienen reproducir la sensacin de


tridimensionalidad, un ejemplo de estas texturas se muestran el la (Figura 6). Cualquier
tcnica de dibujo o pintura puede producir texturas visuales.

Figura 6: Texturas visuales.

2.2.4 Texturas tctiles

Son tridimensionales, evidentemente son visuales, pero se caracterizan por el relieve que
puede tener mayor o menor importancia. Se puede percibir a travs del tacto. Las hay
creadas por la mano del hombre pero tambin se encuentran en la naturaleza,en la (Figura
7) se muestra un ejemplo de estas texturas.

Figura 7: Texturas tctiles.

9
2.2.5 Texturas geomtricas

Son consecuencia de la asociacin de signos grficos de formada organizada o arbitraria,


con elementos grficos (bidimensionales) o tctiles (tridimensionales) como se muestra en
la (Figura 8).

Figura 8: Texturas geomtricas.

2.2.6 Texturas orgnicas.

Deriva de la composicin de la materia, es aleatoria y los elementos que la configuran son


variables aunque a veces los patrones se repiten con regularidad, en la (Figura 9) se muestra
un ejemplo de dicha textura.

Figura 9: Texturas orgnicas.

10
2.2.7 Texturas fotogrficas

Al fotografiar cualquier superficie fotografiamos tambin su textura que adquiere un nuevo


significado. Permite percibir las sensaciones tctiles con gran realismo aunque no deja de
ser una ilusin ptica, como se muestra en la (Figura 10) [3].

Figura 10: Texturas fotogrficas.

2.3 Imgenes BRODATZ

El lbum de imgenes brodatz (P. Brodatz, "Texturas: Un lbum fotogrfico para artistas y
diseadores", Dover Publications, Nueva York, 1966). Es la coleccin de texturas que
existen en la actualidad segn los artistas ms famosos del mundo, mediante el cual
representa el conjunto de datos de una textura, especialmente para el procesamiento de
texturas a travs de visin artificial algunos ejemplo de estas texturas se muestran en las
(Figuras 11,12,13 y 14).

Para las imgenes de textura Brodatz, el nmero entre parntesis (es decir, D12) es el
nmero de pgina de la textura correspondiente en el libro Brodatz. Las imgenes son
exploraciones de un conjunto de impresiones en blanco y negro brillante que fueron
comprados por parte del autor. Si bien estas impresiones son fotografas de las mismas
texturas como en el libro, en la mayora de los casos no son la misma imagen que el que
est en el libro [4].

Las 112 imgenes de textura del lbum tienen diferentes intensidades de fondo.

A continuacin se muestran las texturas del lbum de brodatz.

11
Figura 11: Texturas de D1-D30 del lbum de brodatz.

Figura 12: Texturas de D31-D70 del lbum de brodatz.

Figura 13: Texturas de D71-D110 del lbum de brodatz.

Figura 14: Texturas de D111 y D112 del lbum de brodatz.

12
Algunos ejemplos del lbum de brodatz.

Hierba (D9)
Corteza (D12)
Paja (D15)
Armadura espiga (D15)
De lana tela (D19)
Piel de becerro Presionado (D24)
Playa de arena (D29)
Agua (D38)
Grano de madera (D68)
Rafia (D84)
Piel de cerdo (D92)
Pared de ladrillo (D94)
Burbujas de plstico (D112) [4]

2.4 Mtodos para el anlisis de textura.

2.4.1 Mtodos Estadsticos:


Estos mtodos tienen en cuenta la distribucin espacial de los niveles de grises y entre los
ms conocidos cabe citar: las matrices de co-ocurrencia y la funcin de autocorrelacion
denotemos mediante:

(, ): 0 1,0 1

Una imagen NXM con G niveles de gris. [6]

Anlisis estadstico de primer orden:

Se define sobre el histograma de primer orden:

h (i)=nmero de pixeles con intensidad i.

En la (Figura 15) se mustra un ejemplo del histograma de los niveles de intensidad en tono
de grises de una imagen en un rango de 0 255.

13
Figura 15: Histograma de escala de gris de una imagen.


() =

Medidas estadsticas de primer orden:

En la (Ecuacin) 1 se representa el momento de orden k:

255

= ( ) = ()

1=0

Ecuacin 1

Nivel medio de intensidad (Ecuacin 2) :


1 = ()
Ecuacin 2

Momento central de orden k (Ecuacin 3) :


255

= (( 1) ) = ( 1) ()

1=0
Ecuacin 3

Varianza de la intensidad (Ecuacin 4 ) :


2 = () = 2
Ecuacin 4

14
Coeficientes de asimetra (Ecuacin 5) :
3 3
3, 1 = 3 =
2 2 3
Ecuacin 5

Coeficientes de kutosis (Ecuacion 6):


3 4
4, 2 = 2
= 4
2
Ecuacin 6

Ejemplo:
Caracterizacin de texturas de primer orden mostrado en la (Figura 16) [6]:

Figura 16: Resultados obtenidos de procesamiento de texturas.

2.4.1.1 Anlisis estadstico de segundo orden.

Se define sobre las matrices de co-ocurrencias (conocidas como, matrices de dependencia


espacial o GLCM, gray-level cooccurrence; matrix; haralick 1973).algunas caractersticas
de este mtodo son:

incorporan informacin espacial en forma de posicin relativa entre niveles de


intensidad dentro de una textura; son de hecho histogramas bidimensionales.
Dada la imagen T de una textura, una matriz de co-ocurrencia se define en base a
dos parmetros: distancia (d) y orientacin () [6].

15
Los pasos para obtener la matriz de co-ocurrencia son:

1. Reducir el nmero de niveles de gris de la imagen original.


2. Definir el tamao de la ventana de anlisis
3. Calcular las matrices de co-ocurrencia utilizando un cierto desplazamiento [7].

Ejemplo:

4 niveles de gris, textura de 5 x 5 pixeles [6].

2.4.1.2 Relacin espacial entre dos pixeles

La Matriz de co-ocurrencia considera la relacin espacial entre dos pixeles, llamados pixel
de referencia y pixel vecino. Por ejemplo, si se escoge el pixel vecino que est situado un
pixel a la derecha de cada pixel de referencia, esto se expresa como (1,0): 1 pixel en la
direccin x, 0 pixel en la direccin y.
Cada pixel en la ventana se va convirtiendo sucesivamente en el pixel de referencia,
empezando por el ubicado arriba a la izquierda y finalizando abajo a la derecha. Los pixeles
ubicados en el margen derecho de la imagen original, no tienen vecino a la derecha por lo
tanto no son usados en el cmputo.

16
Se pueden utilizar diferentes relaciones entre pixeles como se observa en la (Figura 17), por
ejemplo:
(-1,0) un pixel a la izquierda del pixel de referencia
(1,1) un pixel a la derecha y un pixel abajo (en diagonal) [7].

Figura 17: Vecindad de pixeles.

2.4.1.3 Distancia entre pixeles

Para este mtodo se utiliza un pixel de separacin (un pixel de referencia y su inmediato
vecino). Cuando la ventana es suficientemente grande, se puede usar una separacin mayor,
sin que haya diferencias en la metodologa de su clculo [7].

2.4.1.4 Normalizacin de la matriz

En la matriz precedente, se cuentan cada pixel de referencia con su vecino a la derecha. Si


el clculo se realiza solo de este modo usando solo una direccin, entonces el nmero de
veces que aparece la combinacin ejemplo: 2,3, no es el mismo que la combinacin 3,2
(por ejemplo el 3 est a la derecha del 2 tres veces, pero a la izquierda solo una)
Por lo tanto la matriz no es simtrica respecto de la diagonal.
Sin embargo, la simetra es necesaria para el clculo, esto se logra si cada par de pixeles se
cuentan dos veces: una vez a la derecha y otra vez a la izquierda (se intercambian los
pixeles de referencia y vecino en el segundo clculo).
Para obtener una matriz simtrica, la forma ms sencilla en vez de contar dos veces, es
sumarle a esta matriz su matriz transpuesta. La matriz transpuesta se logra intercambiando
las filas y columnas de la matriz original [7].

17
Ejemplo:

Dada la siguiente imagen de la (Figura 18), se obtiene: distancia entre dos pixeles y a su
vez se normaliza la matriz, con los resultados obtenidos de la (Figura 19).

Figura 18: Representacin en escala de grises de una imagen.

Distancia entre pixeles:

Figura 19: Posibles combinaciones de los 4 niveles de gris de la imagen anterior .

Normalizacin de la matriz:

Sumando cada elemento de la matriz original y su transpuesta, se llega a la matriz


simtrica, como se muestra en la (Figura 20):

Figura 20: Matriz simtrica para para una relacin horizontal.

Una vez obtenida la matriz simtrica, el paso siguiente es expresar esta matriz como
probabilidad. La definicin ms simple de la probabilidad es: "el nmero de veces que un
evento ocurre, dividido por el nmero total de posibles eventos" y la ecuacin para su
clculo (Ecuacin 7)[7].

18
(, )
(. ) =
1
,=0 (, )

Ecuacin 7

Dnde:
i es el nmero de fila y j el nmero de columnas
V es el valor de la celda i,j en la ventana
Pi,j es la probabilidad en la celda i,j
N es el nmero de filas o columnas.

Considerando la imagen de prueba de 4 x 4 pixeles, y la relacin (1,0) el nmero total de


posibles pares es de 12, como muestra la figura 4.2, y para una relacin horizontal (derecha
ms izquierda) ese nmero se duplica (24).

2.4.1.5 Propiedades de la matriz de co-ocurrencia

Cuadrada: El rango de los valores de los pixeles de referencia y el de los vecinos


es el mismo, por lo tanto las filas y las columnas tienen idntico nmero.
Es simtrica con respecto a la diagonal: Una matriz simtrica significa que los
mismos valores ocurren en las celdas opuestas a la diagonal. Por ejemplo, el valor
en la celda 3,2 debera ser el mismo que el valor en la celda 2,3 para que la matriz
sea simtrica [7].

2.4.1.6 Descriptores de textura HARALICK

Al tener la matriz de co-ocurrencia, se utilizan los siguientes descriptores de textura.


Energa: Este descriptor est dado por (Ecuacin 8):

= (, )2

Ecuacin 8

19
De esta ecuacin se puede definir que cuando todos los valores de P (i,j) son semejante, el
valor de la energa ser menor, por el contrario si ocurre que en la diagonal principal se dan
mayores picos de intensidad el descriptor se maximizar. Este descriptor da una idea de la
suavidad de la textura, y esto se refleja en la ubicacin de sus probabilidades en la matriz de
co-ocurrencia.

Contraste: El contraste de una textura proporciona informacin acerca de las


variaciones bruscas de color en la imagen. La extraccin de este descriptor est dada
por la siguiente expresin matemtica (Ecuacin 9).

= ( )2 (, )

Ecuacin 9

Como se puede observar en esta expresin, el valor del contraste aumentar si existen ms
elementos de la matriz de co-ocurrencia alejados de la diagonal principal. El efecto de los
componentes de la diagonal es totalmente despreciado. Puesto que este se debe a los puntos
cuyos pixeles son de colores iguales y como se busca una informacin acerca del contraste
de la textura estos elementos no representan relevancia.

Correlacin: Es la medida de la probabilidad que mide la relacin entre las


diferentes intensidades de los colores (Ecuacin 10).

= ( ) ( )

Ecuacin 10

Debido al carcter estadstico que posee este descriptor, su valor est ligado al valor de sus
medias estadsticas. El concepto de media y varianza se aplica al histograma de segundo
orden, y la combinacin en la media en i y en j, es referida a la diagonal principal de la
matriz de co-ocurrencia.
El descriptor de correlacin se ver aumentado cuando la distancia de los elementos a la
media sea mayor.

20
Homogeneidad: Este descriptor proporciona informacin sobre la regularidad local
de la textura. La expresin matemtica para calcular este descriptor sobre la matriz
de co-ocurrencia(Ecuacin 11):
1
= (, )
1 + (1 )2

Ecuacin 11

Este descriptor aumentar su valor cuando la distancia i-j sea mnima. Lo que indica que
mientras los elementos de la matriz de co-ocurrencia estn ms prximos a la diagonal
principal mayor ser el valor de la homogeneidad.

Varianza:Representada por (Ecuacin 12)

= ( )2 (, )

Ecuacin 12

Entropa: Este descriptor es una medida de la aleatoriedad contenida en la matriz


de co-ocurrencia. La obtencin de ste descriptor est dada por (Ecuacin 13).

= (, )(, )
=1 =1

Ecuacion 13

Donde P (i,j) es cada elemento de la matriz, e i,j varan desde 0 hasta el nmero de niveles
de gris. A medida que todos los elementos de la matriz son similares, este descriptor
aumenta su valor, siendo mximo en el caso que todos los elementos de la matriz fueran
iguales [7].

Autocorrelacin :Como se muestra en la (Ecuacin 14).

= ( )(, )

Ecuacin 14

21
2.4.2 Anlisis de textura mediante el mtodo geomtrico.

Los mtodos contemplados en este mtodo consideran la textura compuesta de elementos o


primitivas. Tras identificar estos elementos, la textura puede analizarse bajo dos
perspectivas: computar propiedades estadsticas de los elementos extrados o bien extraerla
regla de colocacin que describa la textura, esta ultima aproximacin puede conllevar
mtodos geomtricos o sintcticos. Dentro de la primera aproximacin, podra mencionarse
donde se propone la extraccin de tokens usando las propiedades de la particin de Voronoi
de una imagen. En cuanto a la segunda aproximacin, por ejemplo, se repasan algunos
mtodos estructurales. No nos extenderemos ms en esta clase de mtodos, puesto que no
los utilizaremos en este trabajo [8].

2.4.3 Mtodos basados en modelos

Se basan en la construccin de un modelo que describe la textura.


Se puede utilizar para conocer texturas o para sintetizarlas [2].

Estos mtodos se basan en la construccin de un modelo, cuyos parmetros estimados


describiran las cualidades de la textura. En esta seccin consideraremos los campos
aleatorios de Markov as como los fractales [8].

2.4.4 Mtodos de procesado de seal

Las tcnicas anteriores operan sobre la seal definida en el dominio espacial. Sin embargo,
puede resultar ms conveniente representar la imagen en otro dominio, de forma que en
este nuevo dominio se facilite la extraccin de determinadas caractersticas. Muchas de las
tcnicas de este apartado consisten en calcular ciertas caractersticas de las imgenes tras

22
haber sido filtradas, adems algunas se apoyan en el hecho de que en una primera etapa, el
cerebro humano lleva a cabo un anlisis frecuencia de la imagen [8].
Filtros en el dominio espacial
Dentro de esta categora podemos incluir desde mtodos que miden la densidad de bordes a
travs de la magnitud de las respuestas de mscaras de Robert y laplaciana, hasta mtodos
basados en momentos espaciales y otros obtenidos mediante filtros espaciales y operadores
no lineales [8].
la imagen se trata como si fuera una seal.
Se aplican filtros a la imagen extrayendo caractersticas.
Se suelen trabajar en el dominio de la frecuencia mediante la transformada de
Fourier [2].

2.4.5 Mtodo basado en la suma y diferencia de histogramas para la clasificacin de


texturas

Con la suma y diferencia de histogramas se establece una relacin numrica entre dos
puntos distintos en una imagen utilizando sus intensidades de luz, separados por una
distancia d. Esta relacin se describe a continuacin.
La textura de imagen es definida de manera discreta como una malla rectangular de K x L,
donde cada elemento de esta es y (k,l) (k y l definen la posicin del elemento en la malla) con
k = 0,.,K - 1 y l = 0,.,L-1. En una imagen se define el valor de cada pixel como G = 1;
2,,Ng, y el histograma es representado como:
h=h (1), h (2),..., h (Ng).
La suma y diferencia de histogramas(Ecuacin 15) consiste en obtener dos histogramas hs
=hs (i) y hd=hd(j) con i = Sk;l y j = dk;l.
(, ) = (, ) + () + 1 , + 2
(, ) = (, ) () + 1 , + 2
Ecuacion15

Donde d1 y d2 son desplazamientos. Los dominios de hs y hd son Gs=2,,2 Ng y Gd=-


Ng+1,., Ng -1 respectivamente.
Los histogramas hs (i) y hd (j) normalizados(Ecuacion 16 Y 17).

23
()
() =
()
() =
Ecuacin 16
Cuando
= () = ()

Ecuacin 17
Ambos tienen la misma cantidad de puntos.
La suma total de puntos (Ecuacin 18) de los histogramas normalizados es igual a 1:

() = () = 1

Ecuacin 18

Con este mtodo los histogramas no solo representan la cantidad de tonos en una imagen en
un dominio con el doble de tamao, sino que tambin establecen una co-ocurrencia, entre
dos puntos de la imagen. Esto proporciona una mayor cantidad de informacin de la
textura.

2.4.5.1 Media de la suma y diferencia de histogramas

La media es una caracterstica de textura. Esta proporciona valores ms distintivos


(heterogneos) para este problema en relacin a otras caractersticas de una textura.
La media est definida (Ecuacin 19):
1
= ()
2

1
= ()
2

Ecuacin 19

Donde i es un elemento del histograma, s (i) es el histograma normalizado resultante de la


suma de los histogramas .con 0 < 256.

2.4.5.2 Otras caractersticas de los histogramas

24
Entropa E (Ecuacin 20) de la suma y diferencia de histogramas.

= () + ()

Ecuacin 20

Varianza (Ecuacin 21) de la suma y diferencia de histogramas.


1
2 = [( 2)2 () + 2 ()]
2

Ecuacin 21

Correlacin r (Ecuacin 22) de la suma y diferencia de histogramas


1
2 = [( 2)2 () 2 ()] [9]
2
Ecuacin 22

25
Captulo III. Adquisicin y procesamiento de imgenes en Matlab.

MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un software


matemtico que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de
programacin propio (lenguaje M). Est disponible para las plataformas de Unix, Windows
y Apple. Entre sus prestaciones bsicas se hallan: la manipulacin de matrices, la
representacin de datos y funciones, la implementacin de algoritmos, la creacin de
interfaces de usuario (GUI) y la comunicacin con programas en otros lenguajes. Adems,
se pueden ampliar las capacidades de MATLAB con las cajas de herramientas (toolboxes).
Para el caso de manipulacin de imgenes se emplea el toolbox Image Processing [10].

3.1 Conceptos bsicos de las imgenes.

En Matlab una imagen a escala de grises es representada por medio de una matriz
bidimensional de m x n elementos en donde n representa el nmero de pxeles de ancho y
m el nmero de pxeles de largo. Donde cada elemento de la matriz de la imagen tiene un
valor de 0 (negro) a 255 (blanco) como se puede observar en la (Figura 21).
Por otro lado una imagen de color RGB, que se muestra en la (Figura 22) (la ms usada
para la visin computacional, adems de ser para Matlab la opcin default) es representada
por una matriz tridimensional m x n x p, donde m y n tienen la misma significacin que
para el caso de las imgenes de escala de grises mientras p representa el plano, que para
RGB que puede ser 1 para el rojo, 2 para el verde y 3 para el azul [11].

26
Figura 21: Representacin de una imagen a escala de grises.

Figura 22: Representacin de una imagen a color RGB.

3.2 Procesamiento de imgenes en Matlab.

Leer una imagen a travs de Matlab

En primer lugar, limpiaremos el rea de trabajo de Matlab de las variables y cerrar las
ventanas abiertas usando los comandos: close all o claer all.
Para leer una imagen, utilice el comando imread, cuya sintaxis es la siguiente:
Imread (nombre del archivo.ext) [11].
Donde nombre del archivo es una cadena de caracteres conteniendo el nombre completo de
la imagen ext su extensin.
Al ejecutar el comando se irn desplazndose CW el contenido de la imagen. Los formatos
de imgenes que soporta Matlab, dichos formatos se muestran en la (Figura 23).

27
Figura 23: Formatos y extensiones soportadas por Matlab.

Para manipular una imagen solo tiene que usarse la funcin ya antes menciona y asignar su
resultado a una variable que representara a la imagen (de acuerdo a la estructura, para
representar escala de grises y para RGB) [12].
Una vez que la imagen est contenida en una variable de Matlab es posible utilizar las
funciones para procesar la imagen. Por ejemplo, una funcin que permite encontrar el
tamao de la imagen es size (variable):
[m,n]=size (variable)
En donde m y n contendrn los valores de las dimensiones de la imagen [13].
m: nmero de filas, n: nmero de columnas.
Y mediante la funcin whos podemos ver varias de sus caractersticas, como sus
dimensiones, bytes ocupados y clase del archivo:
Whos (variable)
Para tener acceso a todos los campos de informacin de una imagen se debe recoger la
estructura de informacin devuelta por la funcin iminfo de la siguiente manera:
E=iminfo (variable).
Y posteriormente acceder a los diferentes campos de la estructura como sea comentado con
anterioridad [14]:
Tamao=E.Filesize.

28
En la (Figura 24) se muestra un ejemplo de la lectura de una imagen ejecutado en Matlab:

Figura 24: Lectura de una imagen.

Visualizacin de imgenes
La caja de herramienta incluye la funcin imshow para la visualizacin de la imagen.Al
ejecutar la funcin se abrir la imagen especificada en una nueva ventana, sin producir una
salida de datos en la lnea de comandos. Si se ejecuta de nuevo la funcin sin haber cerrado
la ventana o si especificar una nueva figura utilizando el comando figure antes de llamar a
la funcin (figure,imshow(variable)) la nueva imagen reemplazara la anterior en la ventana
abierta las sintaxis de la funcin son la siguientes:
imshow(variable,G): donde variable es la imagen a mostrar y G es el nmero de niveles
de intensidad utilizados para mostrarla.
figure,imshow(variable): se abrir la imagen en una nueva ventana.
imshow(variable, [low high]):donde se mostraran como negro todos los valores menores
o iguales que el valor low y como blanco todos los valores mayores o iguales que valor
high, con los valores intermedios mostrados por intensidad segn el nmero de niveles
por defecto.
Imshow (variable, [ ]): donde el mnimo valor del array se usara como low y el mximo
high para mostrar el mnimo valor como negro y mximo como blanco [ 14].
Imshow: es la funcin fundamental de la caja de herramienta de visualizacin de imgenes. Este
permite una imagen de tipo unit 8 doubl.

29
Escritura de imgenes.
Para grabar el contenido de una imagen en un archivo se utiliza la funcin imwrite
(variable, nombre del archivo), en donde variable representa la variable que contiene a la
imagen y nombre del archivo el nombre del archivo con su respectiva extensin de acuerdo
a la ya antes mencionada. Suponiendo que la variable (variable) contiene la imagen que nos
interesa grabar en el archivo dato2.ext tendramos que escribir [11]:
Imwrite (variable,data2.ext)

Para determinar los tipos de archivo existen opciones adicionales, como en el caso de los
archivos tipo JPG, donde se pueden especificar la calidad del archivo final mediante la
variable q que debe valer entre 0 y 100 (Figura 25).

Figura 25: Rango de calidad de una imagen en el entorno de Matlab.

Imwrite(f,nombre del archivo.jpg,quality,q)

Para guardar grficos generados en Matlab debemos hacerlo a travs del men contextual
de la ventana, seleccionando file-save As o bien mediante la funcin print desde la lnea
de comandos con la siguiente sintaxis:
Print-fnumfig-dformato-rresolucion nombre_archivo
Por ejemplo, para guardar la figura nmero 1 en el archivo prueba en formato tiff y con
resolucin de 300 puntos por pulgada deberemos escribir [14]:
Print fl-dtiff r300 prueba

30
En la ( figura 26) se muestra la visualizacin y escritura de imgenes:

Figura 26: Visualizacin y escritura de una imagen.

Funciones para la conversin de imgenes.

Par las conversiones a los diferentes tipos de imgenes, se han utilizado herramientas
pertenecientes al toolbox de procesado de imgenes de Matlab. Los formatos para las
diferentes funciones son las siguientes:
Escala de grises: La funcin rgb2gray convierte imgenes RGB o colormap escala de
grises.
Binaria: Esta funcin im2bw convierte imgenes de tipo RGB, en escala de grises o
indexadas a imgenes binarias tomando un valor de umbral.
Ima=im2bw (variable.LEVEL)

La imagen es convertida a blanco y negro, utilizando un valor de umbral (LEVEL)


automtico.
Adems de las funciones que se acaban de mencionar, tambin se tiene la funcin rgb2ind
que permite convertir una imagen de tipo RGB a una imagen de tipo indexada y la funcin
mat2gray, que permite pasar de una matriz bidimensional a una imagen de intensidad [13].

Tipos de datos de una imagen.


Existen diferentes tipos o clases de datos en Matlab, divididos en tres categoras
(numricos, de caracteres y lgicos).

31
En la (Figura 27) se describen los diferentes tipos de datos [14].

Figura 27: Tipos de datos de una imagen en Matlab.

Conversin entre tipos de datos.


Los elementos que constituyen una imagen en Matlab son de tipo entero unit8, que es un
tipo de dato que puede variar de 0 a 255, en este formato no se admite decimales y valores
que sobre pasa el rango ya antes mencionado. Lo anterior resulta una desventaja
principalmente en aquellos casos donde se implementan algoritmos que trabajan con este
tipo de datos para realizar operaciones de divisin o multiplicacin por tipo de dato
flotante. En estos casos es necesario transformar la imagen de tipo unit8 a doubl.

Es importante tener en cuenta que si se utiliza la funcin imshow, esta funcin no tiene la
capacidad de poder mostrar imgenes de tipo doubl por lo que una vez realizado las
operaciones de punto flotante, es necesario convertir dichas imgenes a tipo unit8 [13].

32
Para la conversin de datos se utilizan las siguientes funciones que se muestran en la tabla
de la (Figura 28):

Figura 28: Funciones para la conversin de datos de una imagen.

3.3 Tipos de imgenes en Matlab.


Matlab soporta 4 tipos bsicos de imgenes:
Imgenes indexadas.
Imgenes de intensidad
Imgenes binarias
Imgenes RGB

Imgenes indexadas.
Una imagen indexada consiste en una matriz de datos, X, y una matriz de mapa de color,
map. La matriz de datos puede ser de clase uint8, uint16 o doubl. La matriz del mapa de
colores es un array de clase doubl de mx3 que contiene valores de punto flotante en el
rango [0,1]. Cada fila del mapa especifica la componente de rojo, verde y azul de un nico
color. l color de cada pxel de la imagen es determinado mediante el uso del
correspondiente valor de X como ndice para el mapa.

Imgenes de intensidad
Una imagen de intensidad es una matriz de datos, cuyos valores representan intensidades
dentro de algn rango. MATLAB guarda la imagen de intensidad como una nica matriz,
cuyos elementos son los pxeles de la imagen. La matriz puede ser de clase doubl, uint8 o
uint16. Los elementos de la matriz de intensidad representan varias intensidades, o niveles
de gris, donde la intensidad 0 usualmente representa negro (ausencia de color) y la
intensidad 1, 255 o 65535 representa intensidad total o blanco.

33
Imgenes binarias
En una imagen binaria, cada pxel asume uno de slo dos valores discretos. Esencialmente,
estos dos valores corresponden a activado o desactivado. Una imagen binaria es guardada
como una matriz bidimensional de 0 (pxeles desactivados) y 1 (pxeles activados).
Una imagen binaria puede ser guardada en un array de clase doubl o uint8.
Imgenes de tipo RGB
Una imagen RGB, es guardada en MATLAB como un array de datos de mxnx3 que define
las componentes rojo, verde y azul de cada pxel individual. Una imagen RGB no necesita
paleta de colores ya que la combinacin de las tres componentes bsicas de color guardadas
en cada plano define el propio color a representar en el pxel correspondiente. Los formatos
de ficheros grficos guardan imgenes RGB de 24 bpp, donde cada componente de color es
de 8 bits. Esto da una gama de hasta 16 millones de colores.
La precisin con la que una imagen de la vida real puede ser replicada ha dado el nombre al
trmino comnmente utilizado como color verdadero.
Una imagen RGB en MATLAB puede ser de clase doubl, uint8 o uint16 [15].

Conversin de imgenes
Para ciertas operaciones es necesario cambiar el formato de la imagen para facilitar su
procesamiento.
Algunas funciones para facilitar la conversin se muestran en la (Figura 29):

Figura 29: Funciones para la conversin de una imagen.

34
En la (Figura 30) se muestran algunos comandos para determinar el tipo de imagen en la
que se est trabajando [10]:

Figura 30: Funciones para determinar el formato de una imagen.

3.4 Representacin (matriz) de una imagen en escala de gris.

Una imagen la denotaremos como f(x; y), donde x e y son las coordenadas espaciales y el
valor de f en cada punto (x; y) es proporcional a la intensidad de nivel de gris de ese punto.
Podemos decir que una imagen f(x; y) est formada por dos componentes: una es la
cantidad de luz incidente en la escena y la otra es la cantidad de luz reflejada por los
objetos.
Una imagen digital es una imagen que ha sido discretizada en el espacio y en los valores de
intensidad que puede tomar. Podemos considerar una imagen digital como una matriz en la
que la fila y la columna representan un punto en la imagen y el valor del elemento de la
matriz corresponde al nivel de gris de ese punto. Los elementos de la matriz se llaman
puntos o pixeles.
A la discretizacion de las coordenadas espaciales le llamaremos muestreo de la imagen, y a
la discretizacion de la amplitud le llamaremos cubanizacin del nivel de gris.

Supongamos que la imagen es muestreada espacialmente en las dos direcciones x e y de


manera que tenemos una matriz NxN donde los elementos toman valores discretos, como se
observa en la (Figura 31).

35
Figura 31: Representacin matricial de una imagen.

Vecindad, distancias y conectividad de un pixel.

Una imagen la denotaremos como f(x; y), los puntos los denotaremos por letras minsculas
p o q y denotaremos por S un conjunto de puntos de la imagen f(x; y).
Vecinos de un pixel.
Un punto p de coordenadas (x; y) tiene 4 vecinos verticales y horizontales cuyas
coordenadas (Ecuacin 23):
( + 1, ), ( 1, ), (, + 1), (, 1)
Ecuacin 23.

A este conjunto se le llama los 4 vecinos de p y se denota como 4 ().


Los 4 vecinos diagonales p tienen como coordenadas(Ecuacin 24).
( + 1, + 1), ( + 1, 1), ( 1, + 1), ( 1, 1)
Ecuacin 24.

Y se denota como (). A estos 4 vecinos diagonales junto con 4 () se llaman 8-


vecinos de p, denotado como 8 ().

Sus coordenadas se muestran en la (Figura 32):

Figura 32: Pixel p y sus vecinos.

36
conectividad.
Para establecer si dos puntos estn conectados debemos determinar si son adyacentes en
algn sentido (por ejemplo 4-vecinos) y si su nivel de gris satisface algn criterio de
similitud.

Distancia entre pixeles.


Dados los puntos p; q, con coordenadas (x; y); (s; t), respectivamente:
Distancia Euclidea
Se define la distancia Euclidea entre dos puntos p y q (Ecuacin 25):
(, ) = ( )2 + ( )2
Ecuacion 25.

Acceso a un pixel y planos de una imagen.


Acceso a un pixel

El acceso de un pixel de una imagen es una de las operaciones ms comunes en visin


artificial y en Matlab. Esto se lleva a cabo a travs de indexar el pixel de inters en la
estructura de la imagen.

Funcin para acceder a un pixel de una imagen:

Impixel(f,x,y)

Acceder al pixel de coordenadas (x,y) de la imagen f.


Acceso a un plano de una imagen
Para mayor eficaz en el procesamiento de una imagen se debe extraer la parte de inters que
se desea analizar es se lleva a cabo a travs de un plano de la imagen original, utilizando la
siguiente funcin [10]:
Variable=imagen_original(x:ancho,y:alto)

Dnde:
(x,y)=ubicacin de inicio del plano
(Ancho, alto)=tamao del plano.

37
En las (Figuras 33,34,35) se muestra la manipulacin de una matriz y planos de una
imagen:

Figura 33: Algoritmo para extraer un plano de la imagen original.

Figura 34: Obtencin de un plano de la imagen original.

Figura 35: Matriz del plano anterior.

38
En la( Figura 36 ) se muestra la funcin del Matlab que permite acceder al valor de un
pixel.

Figura 36: Acceso al valor de un pixel de la matriz.

3.5 Histograma de una imagen


El histograma de una imagen es una grfica que representa los niveles de intensidad del
color de dicha imagen con respecto al nmero de pixeles presentes en la imagen con cada
intensidad de color, un ejemplo de lo anterior se muestra en la (Figura 37).

Figura 37: Histograma de un imagen en escala de gris.

En la (Figura 35) se presenta la escala de gris de una imagen en un rango de 0-255:

Figura 38: Escala de tonos de gris.

39
Histograma normalizado (Figura 39).
Para evitar que los valore de un histograma sean muy dispares, se puede normalizar dicho
histograma.

Figura 39: Histograma normalizado.

Dnde:
n=NxM
=histograma normalizado.
Para visualizar el histograma de una imagen, se usa:
Variable=imread(imagen)
[nk,rk]=imhist(variable);
bar(rk,nk,1);
En la (Figura 40) se muestra un ejemplo en Matlab para mostrar el histograma de una
imagen.

Figura 40: Histograma de una imagen

40
A continuacin se muestra el algoritmo para visualizacin de un histograma normalizado
[16]:
Variable=imread(imagen)
[nk,rk]=imhist(variable);
Size=sum(nk1(:,1));
nk1=nk/size:
bar(rk,nk1,1);

Histograma normalizado de la imagen anterior se observa (Figura 41):

Figura 41: Histograma normalizado de una imagen.

3.6 Operaciones bsicas (aritmticas) con imgenes


Suma y resta
La suma y resta (Ecuacin 26) toman como entrada dos imgenes de tamao idntico y
produce como salida una tercera imagen del mismo tamao de las primeras dos, en la cual
cada valor de pxel es la suma de los valores de los pxel correspondientes de cada una de
las dos imgenes de entrada.

41
(, ) = 1 (, ) + 2 (, )
(, ) = 1 (, ) 2 (, )
Ecuacin 26.

A continuacin se presenta la frmula (Ecuacin 27) para la suma y resta de una imagen
con una constante:
(, ) = 1 (, ) +
(, ) = 1 (, )
Ecuacin 27.

Si los valores de los pxel en las imgenes de entrada son realmente vectores en lugar de
valores escalares (por ejemplo, imgenes a color) entonces los componentes individuales
(componentes rojo, azul y verde) se adicionan separadamente para producir el valor de
salida.

En el siguiente algoritmo se puede observar la suma y resta de 2 imgenes:

a=doubl(a);//imagen 1
b=doubl(b);//imagen 2
n = min([size(a,1) size(b,1)]);
m = min([size(a,2) size(b,2)]);
for i=1:n
for j=1:m
c(i,j)=a(i,j)+b(i,j);
c2(i,j)=a(i,j)-b(i,j);
end
end

c=uint8(c);
c2=uint8 (c2);

42
An las (Figuras 42 y 43) se muestra el algoritmo para la suma de 2 imgenes a color:

Figura 42: Suma de 2 imgenes.

Figura 43: Resultado de la suma.

Multiplicacin y divisin

La multiplicacin y la divisin (Ecuacin 28) presentan dos formas principales. La primera


forma toma dos imgenes de entrada y produce una imagen de salida en la cual los valores
de los pxeles son solo aquellos de la primera imagen multiplicados o divididos por los
valores correspondientes en la segunda imagen. La segunda forma toma una nica imagen
de entrada y produce un resultado en el cual cada valor de pxel es multiplicado por una
constante, la cual debe ser especificada
(, ) = 1 (, ) 2 (, )
(, ) = 1 (, )/2 (, )
(Ecuacin 28).

43
Las siguientes frmulas (Ecuacin 29) pertenecen a la multiplicacin y divisin de una
imagen con una constante [17]:
(, ) = 1 (, )
(, ) = 1 (, )/
(Ecuacin 29)

Algoritmo para la multiplicacin y divisin de 2 imgenes:

a=doubl(a);//imagen 1
b=doubl(b);//imagen 2
n = min([size(a,1) size(b,1)]);
m = min([size(a,2) size(b,2)]);
for i=1:n
for j=1:m
c(i,j)=a(i,j)*b(i,j);
c2(i,j)=a(i,j)/b(i,j);
end
end

c=uint8(c);
c2=uint8 (c2);
En la ( Figura 44 Y 45) se puede observar la divisin de dos imgenes:

Figura 44: Division de imgenes.

44
Figura 45: Resultado de la operacin anterior.

45
Captulo IV Implementacin del proyecto

Algoritmo de suma y
diferencia de
histogramas.

Propidades del histograma de


Entrenamiento del algoritmo. texturas

Margen de error del rbol de


rbol de decisin (Tree). decisin

Implementacin del algoritmo final

47
Existen varios mtodos que nos permiten procesar una imagen y a travs de ellos obtener
informacin de las caractersticas una textura, que nos permitira elaborar un algoritmo
para la clasificacin de dicha textura. En este proyecto se implement el mtodo de suma y
diferencia de histogramas para la clasificacin de texturas ya que es un mtodo que permite
procesar a una textura pixel por pixel para posteriormente obtener caractersticas que nos
ayudaran al reconocimiento de texturas, de igual forma se opt por este mtodo ya que en
la elaboracin del algoritmo ocupa menos memoria a comparacin de otros mtodos, el
resultado sera casi el mismo pero con la diferencia que el procesamiento de la imagen de la
textura sera ms rpida y ms exacto ya que este mtodo hace el procesamiento de la
imagen pixel por pixel.

Este mtodo consiste en establecer una relacin numrica entre dos puntos distintos en una
imagen utilizando sus intensidades de luz, separados por una distancia d, para
posteriormente obtener 2 histogramas hs =hs (i) y hd=hd(j) con i = Sk;l y j = dk;l. con las
siguientes formulas (Ecuacin 30) :

(, ) = (, ) + () + 1 , + 2
(, ) = (, ) () + 1 , + 2
Ecuacin 30.
Donde d1 y d2 son desplazamientos. Los dominios de hs y hd son Gs=2,,2 Ng y Gd=-
Ng+1,., Ng -1 respectivamente [9].

El proyecto se basa en las siguientes etapas:


1. Elaboracin del algoritmo para el mtodo de suma y diferencia de histogramas.
2. Obtencin de las propiedades del histograma (media, energa, varianza, correlacin,
entropa, contraste, homogeneidad, clster shade y clster prominence).
3. Elaboracin de un rbol de decisin que permitir clasificar a alas texturas de una
imagen.
4. Entrenamiento del algoritmo.
5. Implementacin del algoritmo final.

48
4.1 Algoritmo para la suma y diferencia de histogramas.

A travs de las formulas de la suma y diferencia de histogramas se implement un


algoritmo en Matlab que nos permite calcular dichas operaciones dando como resultado 2
imgenes con la informacin correspondiente a las formulas ya antes mencionadas, este
procesamiento se hizo pixel por pixel, es decir que la formula fue aplicada a cada valor del
pixel de la imagen en escala de grises.
El proceso fue aplicado a una de las texturas del lbum de las brodatz, que se desea
clasificar.
A continuacin en la (Figura 46) se presenta el algoritmo para la suma y diferencia de
histogramas basados a sus correspondientes formulas:

Figura 46: Algoritmo en Matlab.

Sumar al histograma: es incrementa el brillo y desplazar el histograma ala derecha.

Restar al histograma: es decrementar el brillo y desplazar el histograma a la izquierda.

La distancias ( 1 , 2 ) aptas para este mtodo se encuentra en el rango de 1-5, ya que si


sobrepasa este rango el margen de error del algoritmo para la clasificacin de texturas es
mayor y no se tendr un resultado adecuado para nuestro objetivo principal ( clasificacin
de materiales a travs de visin artificial).

49
La distancia que se opt para este proceso fue d=2 para ambas frmulas, esto no quiere
decir que esta distancia se la correcta para nuestro algoritmo final ya que posteriormente se
har la etapa de entrenamiento del algoritmo final del proyecto y en esta etapa se
seleccionara la distancia adecuada para llegar al resultado esperado, la distancia aplicada
en esta etapa es solo para hacer pruebas del funcionamiento de las frmulas de suma y
diferencia de histogramas del mtodo utilizado en el proyecto.

En la siguientes (Figura 47,48,49 Y 50) se visualiza el resultado del algoritmo de esta


etapa:

Figura 47: Textura de prueba para el algoritmo.

Figura 48: Histograma de la textura de prueba.

50
Figura 49: Imagen de la suma de histograma.

Figura 50: Imagen de la resta de histograma.

4.2 Propiedades del histograma de una textura.


Para el procesamiento y clasificacin de una textura es necesario obtener las propiedades
del histograma de dicha textura, esto se hace con el fin de obtener informacin y
caractersticas de la textura y a su vez mejorar la calidad de la imagen a travs de la tcnica
de realzado, que trata de eliminar efectos no deseados tales como sombras y reflejos a la
vez que aumenta el contraste.

51
Con las propiedades y caractersticas del histograma proporcionan una mayor cantidad de
informacin de la textura, que a su vez facilitara en la clasificacin de dichas texturas, las
propiedades utilizadas en este mtodo se presentan a continuacin:
Media, energa, varianza, correlacin, entropa, contraste, homogeneidad, clster shade y
clster prominence [9].
Media: Representada por la( Ecuacin 30)
1
= ()
2

1
= ()
2

Ecuacin 30.

Es valor medio de los niveles de gris, nos informa sobre el brillo general de la imagen, una
imagen brillante tendr una media alta mientras que, por el contrario una imagen obscura.
En el mtodo de suma y diferencia de histograma se obtuvieron la media de la suma y la
media de la resta del histograma (Figura 49 y 50) esto con el fin obtener mayor
informacin de las texturas que se desean clasificar.

En la (figura 51 y 53) se presenta el algoritmo para el clculo de la media de la suma y


resta, ntese que en el algoritmo se normalizo el histograma (Ecuacion 31) esto con el fin
de evitar que los valores sean muy dispersos.
()
() =

Ecuacin 31.

Figura 51: Media de la suma.

52
Figura 52: Resultado del algoritmo anterior.

Figura 53: Media de la resta.

Figura 54: Resultado obtenido del algoritmo.

53
Varianza: Se muestra la formula para calcular a la propiedad de varianza en una
imagen (Ecuacin 32).
1
2 = [( 2)2 () + 2 ()]
2

Ecuacin 32.

Mide la dispersin de los alrededores de la media, una varianza alta corresponde a una imagen con
contraste alto, y viceversa.

Entropa: (Ecuacion 33)


= () + ()

Ecuacin 33

Informa sobre la distribucin de los niveles de gris, a mayor entropa ms desorden en la


imagen, esto es, ms niveles de grises participan en la imagen. La entropa ser mxima
cuando todos los niveles de grises sean equiprobables (cuando tienen la misma probabilidad
de suceder).

Contraste: (Ecuacin 34)


()

Ecuacin 34.

Indica la dispersin de los niveles de gris en la imagen, una imagen con poco contraste
indica que ay poca variabilidad de los niveles de gris en la imagen.

Correlacin :( Ecuacin 35)


1
2 = [( 2)2 () 2 ()]
2

Ecuacin 35.

Es una operacin parecida a la convulsin, en la cual el valor de un pixel de salida se


calcula como la suma ponderada de lo pixeles vecinos. La diferencia est en que la matriz
de mscaras, no se rota durante el clculo.

54
La correlacin se utiliza para encontrar el parecido entre pixeles de una imagen. Si los
pixeles son iguales o parecidos, se dice que estn altamente correlacionados entre s. La
correlacin se utiliza en el reconocimiento de patrones y en la compresin de imgenes.

Energa: Formula para calcular dicha propiedad (Ecuacin 36).

()2 ()2

Ecuacin 36.

Esta indica el grado de dispersin de grises en la imagen. Si hubiese un nico nivel de gris
la energa seria mxima y de valor uno. A medida de que aumente el nmero de niveles de
grises existentes en la imagen disminuira la energa.

Homogeneidad: Calculada mediante la formula (Ecuacin 37).

1/(1 + ()2 ) ()1


Ecuacin 37.

Este descriptor proporciona informacin sobre la regularidad local de la textura.

Clster shade: (Ecuacin 38)


( 2)3 ()1

Ecuacin 38.

Mide el grado en que los pixeles se inclinan a favor de un lado u otro de la media
estadstica.

Las caractersticas y propiedades que se mencionaron anteriormente son informacin muy


til para la clasificacin de texturas ya que por medio de estas caractersticas se podr
diferenciar con mayor presin entre una textura y otra de acuerdo al comportamiento de sus
pixeles.

El las (Figuras 55 y 56) se presenta el algoritmo en Matlab para el clculo de estas


propiedades y caractersticas del histograma de una textura, este algoritmo se elabor de
acuerdo a las formulas ya antes mencionadas:

55
Figura 55: Parte del algoritmo para el clculo de las caractersticas.

Figura 56: Complemento de la figura anterior.

4.3 Entrenamiento del algoritmo.

Una vez realizado el algoritmo de procesamiento y obtencin de las caractersticas y


propiedades del histograma de la imagen de la textura de prueba, se prosigue con la etapa
de entrenamiento del algoritmo, este proceso consiste en procesar a la textura variando la
distancia de la suma y resta de histograma, dicha distancia se vari en un rango de 1-5 que
este es el rango de mayor eficacia para el procesamiento y anlisis del histograma de una
imagen.

56
En la( Figura 57) se muestra algunos ejemplos de la variacin de distancia de la suma y
resta del histograma:

Figura 57: Variacin de la distancia en un rango de 1-5.

Este proceso se realizado para 5 texturas aleatorias del lbum de brodatz, a cada una de las
texturas se vari la distancia en el rango que ya sea mencionado, para posteriormente
almacenar y guardar en un archivo de Excel 20 pixeles aleatorios con los valores de cada
una de las caractersticas de las 5 texturas, esto con el fin de analizar el comportamiento de
las caractersticas y propiedades del histograma en el rango de distancia de 1-5.

Para guardar las variables en Excel se hace mediante el comando Xlswrite, cuya sintaxis es
la siguiente:

Xlswrite (nombre_del_fichero, nombre_de_la_variable)

nombre_del_fichero: introducido como cadena, es el nombre del fichero Excel al cual


se quieren exportar los datos. El fichero debe estar en el directorio actual. Si el fichero
no existe se creara con el nombre especificado por parmetro.
nombre_de_la_variable: es el nombre de la variable de Matlab que contiene los datos
que sern exportados [18].

57
A continuacin se muestran en las (Figuras 58,59 y 60) las variables almacenadas en Excel:

Figura 58: Variables almacenadas en Excel.

Figura 59: Complemento del archivo de Excel.

Figura 60: Parte final.

58
Nota: las 2 ltimas caractersticas (clust y clust_prom) no fueron almacenadas ya
que los valores son muy inexactos.

Una vez almacenadas las variables en Excel se prosigue con el proceso ms importante de
la etapa de entrenamiento de algoritmo, que consiste en identificar 3 caractersticas que
sean capaces de separar los 20 pixeles de 2 texturas (csped y rafia), estas 3 caractersticas
pueden ser de las 6 distancias. Esto se hace graficando en Matlab las caractersticas en una
grfica en 3D, pero recordando que las 2 texturas deben estar en una sola grafica para poder
verificar que efectivamente las caractersticas seleccionadas son capaces de separar los
pixeles de las 2 texturas.

Nota: las 3 caractersticas deben ser de la misma distancia y de ambas texturas. Pero
se puede jugar con la posicin de las caractersticas en los 3 ejes de la grfica la
finalidad es separar los pixeles de las 2 texturas.

El comando que nos permite extraer las variables de Excel hacia Matlab, para poder
graficar es xlsread, este comando importa los datos de una hoja de clculo Excel a una
variable de tipo array. La forma ms simple de utilizar este comando es:

Nombre_variable= xlsread(nombre_fichero)

nombre_fichero: introducido como cadena, es el nombre del fichero Excel. La


ubicacin de este fichero debe ser el directorio de trabajo actual o bien estar en la
ruta de bsqueda.
Si es el fichero Excel importado tiene ms de una hoja de clculo solo se importaran
los datos de la primera de las hojas.

Si un fichero Excel contiene ms de una hoja, se puede utilizar otra versin del comando
xlsread para decidir cul de ellas importar:

Nombre_variable= xlsread(nombre_fichero,nombre_hoja)

El nombre de la hoja debe introducirse como cadena

59
Otra opcin del mismo comando que permite importar solo una regin (grupo de filas y
columnas) de una hoja de clculo determinada a partir de un fichero Excel:

Nombre_variable= xlsread(nombre_fichero,nombre_hoja,rango)

El rango, introducido como cadena, es una regin rectangular de la hoja definida


por la direccin (en notacin Excel) de las celdas con respecto a las esquinas
opuestas (superior izquierda, inferior derecha).

A continuacin se presenta en la (Figura 61) el algoritmo en Matlab que permite graficar


las variables de las caractersticas y propiedades de la imagen almacenadas en Excel, para
poder realizar el proceso de entrenamiento del algoritmo, que como ya se mencion
anteriormente que consiste encontrar 3 caractersticas que permitan se parar los pixeles de
prueba de las 2 texturas de prueba.

Figura 61: Entrenamiento del algoritmo para clasificacin de texturas.

En esta etapa se hicieron varias pruebas para poder encontrar las 3 variables que permiten
se parar los pixeles de las 2 texturas, la separacin de los pixeles debe ser lo ms posible ya
que entre mayor sea la separacin entre los pixeles mayor ser la eficacia de nuestro
algoritmo para la clasificacin de materiales.

60
En la (Figura 62) se presenta algunas de las grficas de prueba de nuestro algoritmo:

Figura 62: Graficas del proceso de entrenamiento.

Como se puede observar en la graficas anteriores, las combinaciones de las variables no son
tiles para nuestro objetivo final, ya que como se observa los pixeles de ambas texturas a
un estn combinados entre ellos, es decir que las texturas a un no estn clasificadas
adecuadamente, por otra parte aun si cambiramos de posicin las variables el resultado no
cambiara en mucho, ya que se observa que los pixeles estn estrechamente unidos entre s,
es decir que las 2 texturas coinciden en la mayora de sus pixeles.

Considerando que las pruebas que se hicieron anteriormente no son aptas para la
clasificacin de texturas, se prosigue con la bsqueda de las 3 variables que nos permitan
separar ambas texturas y que el margen de error de nuestro algoritmo sea menor.

En la grfica de la (Figura 63) se puede observar ampliamente una separacin de los


pixeles, por lo cual la separacin de las 2 texturas ya es notable, por lo cual estas 3

61
caractersticas seran las adecuadas para el buen funcionamiento de nuestro algoritmo final
y tener un margen de error mnimo.

Figura 63: Separacin de las texturas.

Las variables que permiten se parar adecuadamente a las 2 texturas de prueba son:

Eje x: varianza.
Eje y: correlacin.
Eje z: entropa.

Las variables fueron tomadas cuando la distancia de desplazamiento es de un pixel para


ambas texturas, estas variables servirn para formular las condiciones que permitirn una
clasificacin exitosa, las condiciones se formularan a travs de un rbol de decisin que es
la siguiente etapa de nuestro proyecto.

4.4 rbol de decisin (tree).

Las variables que fueron identificadas anteriormente sern procesadas a travs de un rbol
de decisin que este a su vez nos formulara las condiciones que permitirn clasificar a las 2
texturas de prueba, esto nos dar un algoritmo ms eficaz.

El rbol decisin es una tcnica que permite analizar decisiones secuenciales basada en el
uso de resultados y probabilidades asociadas. Es una forma grfica y analtica de

62
representar todos los eventos (sucesos) que puedan surgir a partir de una decisin asumida
en cierto momento, nos ayuda a tomar la decisin ms acertada, desde un punto de vista
probabilstico, ante un abanico de posibles decisiones, este mtodo permite desplegar
visualmente un problema y organizar el trabajo de clculos que deben realizarse.

Tipos de rboles de decisin:

rbol de decisin binario (Figura 64).

Los arboles decisin generalmente son binarios, es decir que cuenta con 2 opciones, aunque
esto no significa que no pueda existir arboles de tres o ms opciones.

Figura 64: rbol de decisin binario.

Arboles de juego (Figura 65)

Se genera el rbol de acuerdo al nivel de previsin y cada jugador va decidiendo que jugada
le conviene ms de acuerdo a la evaluacin de una determinada posicin. [19]

Figura 65: rbol de juego.

63
Terminologa de un rbol de decisin

Nodo de decisin: indica que una decisin necesita tomarse en ese punto de
proceso. Est representado por un cuadrado.

Nodo de probabilidad: indica que en ese punto del proceso ocurre un


evento aleatorio. Est representado por un crculo.

Rama: nos muestra los distintos caminos que se puede emprender cuando
tomamos una decisin o bien ocurre algn evento aleatorio.

Ventajas de los rboles de decisin


La regla de asignacin son simple y legibles, por lo tanto la interpretacin de
los resultados es directa.
Es una tcnica no paramtrica que tiene en cuenta las interacciones que
pueden existir entre los datos.
Es computacionalmente rpido.

Desventajas de los rboles de decisin


Las reglas de asignacin son bastantes sensibles a pequeas perturbaciones
en los datos.
Ausencia de una funcin global de las variables y como consecuencia
perdida de la representacin
Los rboles de decisin requieren de un gran nmero de datos para a
asegurarse que la cantidad de las observaciones de los nodos (hoja) es
significativa [20].

64
A continuacinen la (Figura 66) se presenta un rbol de decisin de tipo binario en Matlab,
el ejemplo presentado es de la medicin de los ptalos de la flor iris para una muestra de
150 iris donde PW (ancho de ptalo), PL (longitud de ptalo), SW (ancho spalo) y SL
(longitud spalo).Donde los resultados pueden ser: iris tipo setosa, tipo verginica y tipo
versicolor.

Figura 66: rbol de decisin de tipo binario en Matlab.

El comando de Matlab que permite generar el rbol de decisin de tipo binario es:

Classregtree: crea un rbol de decisin de tipo binario para predecir las probables
respuestas en base a las muestras adquiridas.

Su sintaxis es:

T= Classregtree (X, Y);

Dnde:

X son los valores de prediccin de acuerdo a la muestra obtenida.


Y es el vector de valores de respuesta n.

65
Para generar el rbol de decisin es recomendable guardar el vector de los valores de
prediccin y el vector de los valores de respuesta en un archivo de tipo .mat, que son
archivos de formato binario de Matlab, que almacenan las variables en el rea de trabajo de
Matlab. Para importar y guardar todas las variables desde un archivo .mat se usan los
siguientes comandos:

save arch.mat p q: con este comando se guarda las variables p y q en un archivo


.mat
load arch: importa el archivo .mat

De acuerdo a las variables identificadas en la etapa de entrenamiento del algoritmo se


prosigue en la elaboracin de un rbol de decisin que permitir formular las posibles
condiciones que sean capaces de clasificar a las texturas de prueba.

Las variables de ambas texturas se guardan por separado generando una matriz de 3 x 20 y
un vector como a continuacin se muestra en la (Figura 67, 68 Y 69):

Figura 67: Archivos .mat de las variables.

Como se observa en la figura anterior en la matriz de 3 x 20 se guarda las tres variables


(varianza, correlacin y entropa) de ambas texturas, de igual manera se genera un vector de
20 elementos de los valores de respuesta del rbol de decisin.

66
Figura 68: Variables de la textura D9.

Figura 69: Variables de la textura D84.

En el siguiente algoritmo de la (Figura 70 y 71) se genera el rbol de decisin, que a su vez


mostrara las condiciones para la clasificacin de ambas texturas.

67
Figura 70: Algoritmo.

Figura 71: Predicciones del rbol de decisin.

Figura 72: rbol de decisin.

El resultado que muestra el rbol de decisin de la (Figura 72) para la clasificacin de las
texturas de prueba plantea las siguientes predicciones:

68
si los valores de los pixeles de la varianza son menores que .242308 la textura a
reconocer es D84 (RAFFIA).
Si los valores de los pixeles de la varianza son mayores o igual .242308 la textura a
reconocer es D9 (Csped).

Para confirmar si las 2 condiciones anteriores son las adecuadas para el algoritmo que
permitir procesar y clasificar a las texturas de prueba y obtener un resultado favorable, es
necesario calcular el margen de error que podra presentar las predicciones del rbol de
decisin, esto con el fin de visualizar el porcentaje de reconocimiento del algoritmo a cada
textura.

4.5 Margen de error del rbol de decisin.

Para calcular el margen de error de las predicciones ya antes mencionadas es necesario


saber el porcentaje de reconocimiento de ambas texturas, a partir de las condiciones
establecidas.

En las (Figuras 73 y 74) se visualiza la parte de la textura reconocida por el algoritmo


segn a la condicin que le corresponde a cada textura:

Textura D9 (csped)
Cuando la varianza es mayor o igual .242308

Figura 73: Reconocimiento de la textura D9.

De acuerdo al algoritmo de Matlab la parte sombreada de color blanco pertenece a la


textura D9 y la parte sombreada de color negro son los pixeles que no pertenecen al rango
establecido por el rbol.

69
El porcentaje de reconocimiento del algoritmo es de 97.59% esto quiere decir que:

Los pixeles pertenecientes a la condicin de esta textura son 156150 de


262144 que es el nmero total de pixeles de la imagen.
Los pixeles que no pertenecen a la condicin son 3850.
Textura D84 (rafia)
Cuando la varianza es menor que .242308 (Figura 74).

Figura 74: Reconocimiento de la textura D84.

El porcentaje de reconocimiento del algoritmo es de 9 8.92125%esto quiere decir que:

Los pixeles pertenecientes a la condicin de esta textura son 158274 de


262144 que es el nmero total de pixeles de la imagen.
Los pixeles que no pertenecen a la condicin son 1726.

Con estos clculos realizados podemos concluir que el margen de error de las predicciones
del rbol de decisin es de 1.744375%, esto indica que el algoritmo de Matlab para la
clasificacin de texturas tiene muy buena eficiencia.

70
Captulo V Implementacin del algoritmo final.
Consiste en procesar a una imagen en la cual contiene ambas texturas de prueba , esto con
el fin de comprobar que el algoritmo final es capaz de clasificar y separar ambas texturas,
para posteriormente calcular el grado de error de la clasificacin.

En la (Figura 75 ) se muestra la imagen a procesar, ntese que la imagen est dividida en 2


partes iguales en la cual que cada mitad pertenece a una de las texturas de prueba.

Figura 75: Imagen a clasificar.

De acuerdo a alas a las condiciones establecidas para extraer a la textura D84 (rafia)
tendremos que indicarle a Matlab la siguiente instruccin:

>> f=varianza<.242308;%condicin para extraer ala la textura D84


figure,imshow(f)

Lo cual el resultado de Matlab de la (Figura 76).

Figura 76: Parte extrada de acuerdo a la condicin var<.242308.

71
La mayor parte de lo extrado pertenece a la textura D84, de igual forma se visualiza que
una de la parte extrada no pertenece a esta textura, lo cual indica que el algoritmo tiene un
margen de error.

De lo contrario si se aplica la siguiente instruccin:

>> s=varianza>=.242308;%condicin para la textura D9


figure,imshow(s)

Se obtiene el siguiente resultado de la (Figura 77).

Figura 77: Parte extrada de acuerdo a la condicin var>=.242308.

Con esta condicin extrae a la textura D9 (csped), pero de igual manera se obtiene un
margen de error ya que no se extrajo el 100% de la textura y una parte de lo extrado no
pertenece a esta textura.

Margen de error del algoritmo.

De acuerdo al proceso anterior se concluye con lo siguiente:

De la textura D9 se obtuvo un 97.48% de la textura total en la imagen combinada.


De la textura D84 se obtuvo el 80.89% de la textura total dentro de la imagen
combinada.

Lo cual indica que el margen de error de la clasificacin del algoritmo es de: 10.8% lo cual
se puede decir que el algoritmo es eficiente para la clasificacin de texturas.

72
5.1 Aplicaciones del algoritmo en la industria.

Reconocimiento y clasificacin de patrones para la inspeccin de la materia


prima dentro de un proceso de fabricacin.

El algoritmo para la calcificacin de materiales desarrollado en este trabajo puede


contribuir como un clasificador de patrones de la materia prima que llega a una fbrica.
Estos patrones sern imgenes extradas de una cinta transportadora industrial de la materia
prima, el objetivo primario del algoritmo es hacer una distincin entre la materia defectuosa
y de la que es efectiva para el proceso de fabricacin de algn producto, de igual manera
dicho algoritmo podra contribuir en la seleccin y clasificacin de los materiales que
llegan a la industria.

En la (Figura 78) se muestra un ejemplo prctico de la aplicacin del algoritmo como


clasificador de patrones.

Figura 78: Separacin de gajos de mandarina.

Deteccin de defectos en los materiales mediante sus caractersticas de las


texturas de dichos materiales.

En la industria de manufactura la inspeccin de la materia prima y del producto terminado


es de suma importancia en la produccin de algn producto dentro de la industria, ya que la
apariencia del material en un producto, son aspectos importantes en la preferencia del
consumidor de dichos productos.

Un ejemplo prctico del proceso es la inspeccin de defectos de superficies que presenta


una textura no uniforme, es el que se realiza en la textura de la piel de bovino utilizada
como materia prima en la manufactura de zapatos. La piel de bovino es un material natural
que presenta defectos que dependen del crecimiento y del ambiente donde se desarroll el
animal.

73
La aplicacin del algoritmo desarrollado en este trabajo en este ejemplo consiste en extraer
algunas de las caractersticas de la textura de la piel como son: la media, la correlacin, la
entropa, el contraste y la varianza, adems de los bordes que presentan las imgenes de la
textura, para posteriormente hacer el anlisis de estas caractersticas obtenidas de la
muestra de la textura de la piel, para poder establecer un estndar de calidad a travs de
esta informacin y posteriormente realizar nuestro rbol de decisin que ayudara para
establecer las condiciones de calidad de la piel de bovino.

En la figura 79 se puede apreciar la textura y el histograma de la caracteriza de contraste de


una muestra de la piel de bovino sin defectos:

Figura 79: Imagen de la piel sin defectos con la caracterstica de contraste.

En la figura 80 se muestra una imagen de prueba de la textura de la misma caracterstica


pero ahora se trata de una muestra de la piel con defecto:

Figura 80: Imagen de la piel sin defectos con la caracterstica de contraste

74
Conclusiones

El histograma es una tcnica utilizada para la descripcin o caracterizacin dentro del


procesamiento de imgenes, este es muy eficaz, lo que hacen de esta una de las mejores
tcnicas para la representacin de una imagen numricamente. Esta tcnica especifica la
frecuencia con la que se presentan las intensidades de color y escala de gris en una imagen.
Tambin establece una co-ocurrencia entre dos pixeles de la imagen, por lo que
proporciona una mayor cantidad de informacin de la textura.

Las caractersticas que no son tiles dentro de la clasificacin de texturas son: clster shade
y clster prominence ya que el intervalo de los valores entre estas es difcil de definir ya
que los valores son grandes y a veces muy pequeos y con mucha variacin entre ellos, es
decir, que los valores pueden ser de un valor demasiado grande y a veces demasiado
pequeo, informacin que no se puede predecir. Este par de caractersticas comnmente se
utilizan para eliminar el ruido de alguna imagen, un ejemplo de ello es cuando la imagen a
procesar es demasiado borrosa.

La varianza, la correlacin y la entropa son las tres caractersticas de cada uno de los
pixeles, estas forman parte del rbol de decisiones y la eficiencia de este depende del
tamao de la muestra a procesar, es decir entre mayor sea el nmero de pixeles a procesar
menor ser el margen de error de las predicciones a travs del rbol de decisiones,
describiendo esto de una manera ms entendible, podramos decir que al tomar solo una
parte del total de nuestros pixeles y procesarlos, los valores obtenidos despus del proceso
pueden ser igual a los de alguna otra textura, por eso que la muestra a implementar dentro
del rbol debe ser con el mayor nmero de pixeles posible ya que podemos encontrar
valores de cada una de las caractersticas muy propias de la textura con la que se est
trabajando y que no coincidan con los valores de las caractersticas de alguna otra textura.

75
Recomendaciones
Eliminar el ruido de las imgenes con las ecuaciones de clster shade y clster prominence
este proceso se realiza para obtener una imagen ms clara y precisa al momento de ser
procesada por el algoritmo que con lleva al a clasificacin de materiales.

Ampliar el tamao de muestra de las caractersticas, es decir sobre pasar la muestra de 20


pixeles que es el tamao bsico para la implementacin de un rbol de decisin, eso se hace
para obtener una mayor eficiencia en dicho proceso, con el fin de reducir el margen de error
de las predicciones del rbol de decisin y obtener un reconocimiento de las de las texturas
casi al 100 por ciento.

Respecto al el algoritmo es necesario ampliar el nmero de texturas a clasificar para que


sea ms eficiente por lo cual en este momento solo clasifica y separa a 2 texturas.

Por lo cual en la etapa de entrenamiento el algoritmo se volver ms complicado porque


de acuerdo al dicho proceso se buscara 3 variables que sean capaces de separar ms
textura por consiguiente el rbol de decisin se volver ms extenso y correcto.

76
Experiencia personal en la residencia
Realizar este proyecto de residencia ha sido un gran reto profesional y acadmico ya que
era un tema desconocido para m donde no contaba con las herramientas y conocimientos
suficientes en el rea de la visin artificial, pero en el trayecto del proyecto fui adquiriendo
los conocimientos necesarios sobre el tema y a la vez aplique lo adquirido al proyecto. Pero
gracias al apoyo y a las clases de mi asesor pude comprender algunos temas de la visin
artificial.

Al final del proyecto de residencia tuve un gran cambio profesional, acadmico y sobre
todo me abri un mayor panorama en el rea de la visin artificial, inteligencia artificial y
en el procesamiento de imgenes en tiempo real.

77
Bibliografas
[1] IV anlisis textural 4.1.pdf, recuperado el 17 de septiembre de 2015, de:
https://www.google.com.mx/?gfe_rd=cr&ei=gq8EVrX4KJHygASh-
7bgDA#q=Textura+es+un+t%C3%A9rmino+usado+para+caracterizar+la+rugosidad+de+l
a+superficie

[2]Flavio Banterla, Maite Garca ,Miguel A. veganzones, texturas:descripcion y


aplicaciones, grupo inteligencia computacional, consultado 20 de agosto 2015 de:
https://www.google.com.mx/?gfe_rd=cr&ei=gq8EVrX4KJHygASh-
7bgDA#q=metodos+de++clasificacion+de+la+textura/

[3] Texturas clasificacin-SlideShare, Recuperado el 8 de septiembre de 2015, de:


https://www.google.com.mx/?gfe_rd=cr&ei=gq8EVrX4KJHygASh-
7bgDA#q=clasificacion+de+la+textura

[4] Textures - SIPI Image Database, consultado 10 septiembre 2015, de:


https://www.google.com.mx/?gfe_rd=cr&ei=gq8EVrX4KJHygASh-7bgDA#q=+brodatz

[6] Alberto Ortiz Rodrguez (2008), tema9: texturas y descriptores de regiones,


recuperado el 25 de agosto de 2015, de:
https://www.google.com.mx/?gfe_rd=cr&ei=gq8EVrX4KJHygASh-
7bgDA#q=Se+define+sobre+el+histograma+de+primer+orden

[7] IV anlisis textural 4.1.pdf, recuperado el 23 de septiembre de 2015, de:


https://www.google.com.mx/?gfe_rd=cr&ei=gq8EVrX4KJHygASh-
7bgDA#q=Textura+es+un+t%C3%A9rmino+usado+para+caracterizar+la+rugosidad+de+l
a+superficie

[8] Irene Epifanio Lpez (abril 2002), descripcin de texturas. Aplicacin a su


comprensin y clasificacin, universidad de valencia recuperado el 25 de agosto de 2015,
de: http://www.uv.es/vista/vistavalencia/papers/tesis/tesis_irene.pdf

[9] Sum and Difference Histograms for Texture Classification M. Unser


IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 8, no. 1, pp. 118-
125, January 1986.
[10] Procesamiento de imgenes con Matlab. Consultado el 13 de septiembre de 2015
en:https://www.google.com.mx/?gfe_rd=cr&ei=gq8EVrX4KJHygASh-
7bgDA#q=procesamiento+de+imagenes+en+matlab

[11] Erik Valdemar cuevas Jimnez, Daniel Zaldvar navarro, visin por computador
utilizando Matlab y el toolbox de procesamiento digital de imgenes, recuperado el 25 de

78
octubre de 2015, de: http:// http://es.slideshare.net/lisbethanaly/140j9t1zwvw7elgr8qo1-
090527055423phpapp01

[12] Ing. Jos C. Bentez P universidad tecnolgica de Per, facultad de ingeniera


electrnica y mecatrnica, procesamiento de imgenes y visin artificial (PS02),
recuperada el 3 de septiembre de 2015, de:
http://es.slideshare.net/daveteslandaz/utpvasl2procesamientodeimagenesconmatlabi-
111202161818phpapp01

[13] Mauricio duran Gmez, universidad pontificia bolivariana, reconocimiento de


caracteres pticos OCR por medio de correlacin y redes neuronales, consultado el 28 de
septiembre de 2015, de:
https://www.google.com.mx/#q=reconocimiento+de+caracteres+%C3%B3pticos+OCR+po
r+medio+de+correlaci%C3%B3n+y+redes+neuronales

[14] Eduardo la orden fiter, escuela universidad politcnica de Madrid, septiembre 2012,
descripcin, comparacin y ejemplos de uso de las funciones de la volvox de procesado
digital de imgenes de Matlab, consultado el 30 de septiembre de 2015, de:
https://www.google.com.mx/#q=descripci%C3%B3n%2C+comparaci%C3%B3n+y+ejemp
los+de+uso+de+las+funciones+de+la+toolbox+de+procesado+digital+de+im%C3%A1gen
es+de+Matlab

[15] Ingeniera superior de informtica, visin artificial, curso2007-2008, practica no 1:


fundamentos de la image processing toolbox, consultado el 3 de octubre del 2015, de:
https://www.google.com.mx/#q=%2C+practica+no+1:+fundamentos+de+la+%E2%80%9C
image+processing+toolbox%E2%80%9D+ingenieria+superior+de+informatica

[16] Procesamiento de imgenes (histograma). Consultado el 25de octubre de 2015 en:


https:// www.cs.buap.mx/~iolmos/pdi/Sesion3_Histograma.pdf

[17] Ingeniera biomdica, asignatura imgenes mdicas, operaciones bsicas con


imgenes, consultado el 17de octubre del 2015, de:
www.udb.edu.sv/udb/archivo/guia/biomedica.../imagenes.../guia-2.pdf

[18] Matlab, una introduccin con ejemplos prcticos, segunda edicin. De Amos Gilat,
importacin y exportacin de Excel, pgina 92-94.

[19]Yanet Liz, Febrero 20 del 2012, rbol de decisiones, consultado 20 de noviembre 2015
de: http://www.pucmmsti.edu.do/websise/estudiante/materias/201120122/ST-ADM-445-T-
001/ARBOL%20DE%20DECISIONES%202-29-2012.pdf

[20] Conferencista Alexander Mrquez Vega, rbol de decisin, consultado 25 de


noviembre 2015 de: http://es.slideshare.net/alexandermarquez/arbol-de-decision

79
Anexos

Anexo A: Algoritmo del procesamiento de las texturas a clasificar(rafia y csped) .


clear all
a=imread('C:\Users\horlando\Downloads\textures\textures\D84.tiff');
b3=imread('C:\Users\horlando\Downloads\textures\textures\D9.tiff');
b01=b3(1:150,1:300);
a1=a(1:150,1:300);
b= cat(1,a1,b01);
figure,imshow(b)
whos a

figure,imhist(b)
whos b
%figure,imshow(b)
[M,N]=size(b)
ps=zeros(N,M);
for x=1:M-1
for y=1:N-1
ps(x,y)=b(x,y)+b(x+1,y+1);
end
end
figure,imshow(single(ps),[0,510])
ms=zeros(N,M);
for x=1:M-1
for y=1:N-1

b1=ps(1:1+x,1:1+y);
%imshow(b1);
[k,l]=size(b1);
[nk, rk] = imhist(b1);
tam= k*l;
nk1 = nk / tam;
ms(x,y)=(sum(rk.*nk1))*.5;
end
end

pd=zeros(N,M);
for x=1:M-1
for y=1:N-1
pd(x,y)=b(x,y)-b(x+1,y+1);
end
end
figure,imshow(single(pd),[-255,255])
%figure, bar(rk3, nk2, 1);
md=zeros(N,M);
for x=1:M-1
for y=1:N-1
b2=pd(1:1+x,1:1+y);
%imshow(b2);
[k,l]=size(b2);
[nk3, rk3] = imhist(b2);
nk2 = nk3 /tam;
md(x,y)=(sum(rk3.*nk2))*.5;

80
end
end
energ=zeros(N,M);
var=zeros(N,M);
entro=zeros(N,M);
corre=zeros(N,M);
contra=zeros(N,M);
homog=zeros(N,M);
clust=zeros(N,M);
clust_prom=zeros(N,M);
for x=1:M-1
for y=1:N-1
b11=ps(1:1+x,1:1+y);
[k1,l1]=size(b11);
[nk0, rk0] = imhist(b11);
tam= k1*l1;
nk11 = nk0 / tam;
b22=pd(1:1+x,1:1+y);
[k11,l11]=size(b22);
[nk31, rk31] = imhist(b22);
nk21 = nk31 /tam;
%energia
energ(x,y)=(sum(nk11.^2))*(sum(nk21.^2));
%varianza
u3=sum((rk31.^2).*nk21);
u6=sum(((rk0-2*ms(x,y)).^2).*nk11);
var(x,y)=(u6+u3)*.5;
%correlacin
corre(x,y)=(u6-u3)*.5;
%entropa
e1=sum((nk21).*(log(nk21+eps)));
e2=sum((nk11).*(log(nk11+eps)));
entro(x,y)=-e1-e2;
%contraste
contra(x,y)=sum((rk31.^2).*nk21);
%homogeneidad
homog(x,y)=sum((1/(1+(rk31.^2)))*nk21);
%clster shade
c=(rk0-2*ms(x,y)).^3;
clusa(x,y)=sum(c.*nk11);
%cluster prominence
c1=(rk0-2*ms(x,y)).^4;
clust_prom(x,y)=sum(c1.*nk11);
end
end
Anexo B: Algoritmo a utilizar en la etapa de entrenamiento.
clear all;
clc;
%hold on
D84= xlsread('C:\Users\horlando\Documents\residencia\D084.xlsx');
D9= xlsread('C:\Users\horlando\Documents\residencia\D09.xlsx');
%grafica para el entrenamiento del algoritmo,utlizando como prueva las
%texturas D9 Y D84
%ms=1 md=2 energ=3 var=4 corre=5 entro=6 contra=7 homog=8

81
x=D9(:, 4);%variable que se desea extraer de Excel que estar ubicada en
el eje de las x
y=D9(:, 5);
z=D9(:, 6);

x1=D84(:, 4);
y1=D84(:, 5);
z1=D84(:, 6);

figure (1)
plot3(x, y, z,'xr',x1, y1, z1,'ob')%comando que permite graficar en 3D
title('cuando l=1 de la texturas D9 Y D84 (azul=D84,rojo=D9)')
xlabel('var')
ylabel('corre')
zlabel('entro')
grid on

Anexo C: Algoritmo para la implementacin del rbol de decisin del proyecto.


clear all
%save arch.mat p q
load D9
%load D84
load D084
caracte8=[caracte1;caracte3];
text4=[text1;text3];
t = classregtree(caracte8,text4,...
'names',{'X' 'Y' 'Z' })
view(t)
Anexo D: Algoritmo final del proyecto de residencia.
clear all
a=imread('C:\Users\horlando\Downloads\textures\textures\D84.tiff');
b3=imread('C:\Users\horlando\Downloads\textures\textures\D9.tiff');
b01=b3(1:150,1:300);
a1=a(1:150,1:300);
b= cat(1,a1,b01);
figure,imshow(b)
whos a

figure,imhist(b)
whos b
%figure,imshow(b)
[M,N]=size(b)
ps=zeros(N,M);
for x=1:M-1
for y=1:N-1
ps(x,y)=b(x,y)+b(x+1,y+1);
end
end
figure,imshow(single(ps),[0,510])
ms=zeros(N,M);
for x=1:M-1
for y=1:N-1

b1=ps(1:1+x,1:1+y);
%imshow(b1);

82
[k,l]=size(b1);
[nk, rk] = imhist(b1);
tam= k*l;
nk1 = nk / tam;
ms(x,y)=(sum(rk.*nk1))*.5;
end
end

pd=zeros(N,M);
for x=1:M-1
for y=1:N-1
pd(x,y)=b(x,y)-b(x+1,y+1);
end
end
figure,imshow(single(pd),[-255,255])
%figure,bar(rk3, nk2, 1);
md=zeros(N,M);
for x=1:M-1
for y=1:N-1
b2=pd(1:1+x,1:1+y);
%imshow(b2);
[k,l]=size(b2);
[nk3, rk3] = imhist(b2);
nk2 = nk3 /tam;
md(x,y)=(sum(rk3.*nk2))*.5;

end
end
energ=zeros(N,M);
var=zeros(N,M);
entro=zeros(N,M);
corre=zeros(N,M);
contra=zeros(N,M);
homog=zeros(N,M);
clust=zeros(N,M);
clust_prom=zeros(N,M);
for x=1:M-1
for y=1:N-1
b11=ps(1:1+x,1:1+y);
[k1,l1]=size(b11);
[nk0, rk0] = imhist(b11);
tam= k1*l1;
nk11 = nk0 / tam;
b22=pd(1:1+x,1:1+y);
[k11,l11]=size(b22);
[nk31, rk31] = imhist(b22);
nk21 = nk31 /tam;
%energia
%d=sum(nk1.^2);
%d2=sum(nk2.^2);
energ(x,y)=(sum(nk11.^2))*(sum(nk21.^2));
%varianza
%u2=(rk3.^2).*nk2;
u3=sum((rk31.^2).*nk21);
%u4=(rk-2*ms).^2;
%u5=((rk-2*ms).^2).*nk1;

83
u6=sum(((rk0-2*ms(x,y)).^2).*nk11);
var(x,y)=(u6+u3)*.5;
%correlacin
corre(x,y)=(u6-u3)*.5;
%entropa
e1=sum((nk21).*(log(nk21+eps)));
e2=sum((nk11).*(log(nk11+eps)));
entro(x,y)=-e1-e2;
%contraste
contra(x,y)=sum((rk31.^2).*nk21);
%homogeneidad
%h=1/(1+(rk3.^2));
homog(x,y)=sum((1/(1+(rk31.^2)))*nk21);
%clster shade
c=(rk0-2*ms(x,y)).^3;
clust(x,y)=sum(c.*nk11);
%clster prominence
c1=(rk0-2*ms(x,y)).^4;
clust_prom(x,y)=sum(c1.*nk11);
end
end
s=var>=.242308;%condicin para la textura D9
figure,imshow(s)
f=var<.242308;%condicin para extraer ala la textura D84
figure,imshow(f)

Anexo E: Imagen a clasificar.

84
Anexo F : Separacin de la textura D9 (csped).

Anexo G : Separacin de la textura D84 (rafia).

85

También podría gustarte