Visión Computacional en Robótica
Visión Computacional en Robótica
Monterrey
1
Otoño 2022
• Procesamiento de imágenes.
• Aplicaciones en robótica.
Criterios de Evaluación
• Exámenes
50%
• Tareas
25%
• Presentaciones 25%
100%
Bibliografía
LIBROS DE TEXTO:
* Corke, P. , Robotics, vision and control: fundamental algorithms in Matlab, 2a, Germany :
Springer
Verlag., 2017, Inglés, 9783319544120
LIBROS DE CONSULTA:
* Spong, M.; Hutchinson, S. ;& Vydiasagar, M., Robot modelling and control, Ilustrada, USA :
John Wiley and
Sons., 2005, Inglés, 0471649902
* Gonzalez, R. C.;& Woods, R. E., Digital image processing., Ilustrada, USA : Pearson Prentice
Hall, 2008, Inglés, 9780131687288
Introducción a los sistemas de visión.
• Luz y color
• Espectro de la luz visible
• Absorción de la luz
• Reflectancia
• Luminancia
• Teoría del color
• Detección de color por el ojo humano
• Temperatura del color
• Formación de la imagen
• Pixel
Procesamiento de imágenes.
• Obtención de imágenes
• Filtros
Segmentación y reconocimiento de imágenes.
•Pick & place: gracias a su orientación en 2D y 3D los sistemas de visión pueden ayudar al cobot a realizar a
la perfección sin la ayuda humana las tareas de recogida y colocación de productos de una manera rápida y
eficaz.
•Empaquetado y paletizado: sus herramientas de posicionamiento y de orientación permiten que los brazos
robóticos calculen y empaqueten con la máxima precisión conforme a los estándares más estrictos.
•Control de calidad: esta es sin duda una de las aplicaciones más importantes de visión artificial en robots.
Y es son capaces de asegurar la trazabilidad de los productos y detectar fallos. Además, gracias a
los software específicos de visión artificial, los cobots podrán tomar decisiones como expulsar un objeto de
la línea de producción si por ejemplo no cumple los estándares de calidad.
•Montaje: para incrementar la precisión y repetibilidad en las líneas de montaje los sistemas de visión
artificia en robots son una de las herramientas más eficaces.
Visión computacional.
Para que entendamos mejor, vamos a imaginar la siguiente escena: estás jugando futbol y
pateas a la portería. El portero defiende. Un contexto sencillo para los humanos pero
extremadamente complejo para las computadoras.
Sabemos que la visión humana trabaja con base en un análisis de la imagen que llega
a la retina y es enviada a la corteza visual. Este tomará la imagen con otras imágenes
ya clasificadas en el cerebro para definir el objeto, la dimensión aproximada y qué
hacer con relación a él. Detalle importante: todo esto ocurre en una pequeña fracción
de segundo.
Los vehículos autónomos también utilizan en gran medida esta nueva tecnología. En
caso de la autonomía total, la navegación usa la visión computacional para obtener la
localización, para producir mapas contextuales y para detectar obstáculos. En tanto,
esta tecnología todavía no ha alcanzado la madurez suficiente para estar en el
mercado.
Tareas típicas de la visión computacional
•Reconocimiento
•Identificación
•Detección
•Movimiento
•Reconstrucción de escena
•Restauración de imágenes
Introducción a los sistemas de visión.
• Luz y color
El color es, en primer lugar, un atributo o una cualidad de la luz. Luz y color son por tanto
dos conceptos inseparables. Cuando decimos que un objeto “es” de un determinado color,
nos referimos al modo en que es capaz de modificar esa cualidad cuando refleja o cuando
transmite luz.
Luz y color
Llamamos luz a una clase de energía que es capaz de estimular el sentido de la visión
humana.
De un modo análogo, llamamos sonido a las vibraciones materiales que son capaces de
estimular nuestro sistema auditivo.
El “factor humano” es por tanto fundamental en ambos casos. Las unidades que miden la
intensidad u otras características de la luz (o del sonido) no representan magnitudes físicas
fundamentales, sino que están adaptadas para coincidir en lo posible con nuestras
sensaciones. A pesar de este empeño, las diferencias fisiológicas, psicológicas,
circunstanciales y culturales de los seres humanos son inevitables y afectan a nuestra
percepción tanto de la luz como del sonido.
Esto sucede porque, además de como ondas, se comportan también como partículas viajeras capaces
de transportar energía de un lugar a otro.
Las moléculas en movimiento, con sus cargas eléctricas asimétricas, emiten radiación
electromagnética. Cuando su energía es relativamente baja, decimos que irradian calor. Si aportamos
más calor, la temperatura aumentará.
Esto significa que se incrementará la velocidad de las moléculas, la frecuencia de la radiación será
mayor y los fotones emitidos tendrán mayor energía. A partir de la temperatura de incandescencia, las
radiaciones se volverán visibles. Después, para energías mucho mayores, dejarán de serlo.
Luz y color
Existen, además del calor, otras fuentes de fotones visibles: tubos fluorescentes, quimioluminiscencia
(provocada por determinadas reacciones químicas) o bioluminiscencia (producida por organismos
vivos: peces, bacterias o luciérnagas).
la mayor parte de los fenómenos ópticos (reflexión, transmisión, difracción, refracción, polarización,
interferencia) se estudian considerando el comportamiento ondular de la luz y dejando al margen su
vertiente discontinua como partícula o corpúsculo (fotón). Esto también es cierto cuando nos referimos
al color.
En el caso de la luz, nos encontramos con ondas electromagnéticas que poseen asimismo intensidad y
frecuencia. Esta frecuencia (a menudo expresada por su unidad equivalente “longitud de onda”) es la
responsable de que exista esa cualidad o “tono” que llamamos “color”.
Con respecto a los colores, el tono “más grave” (el de menor frecuencia) sería el rojo, mientras que el
tono “más agudo” (el de mayor frecuencia) sería el violeta.
Luz y color
Cuando la luz se encuentra con la materia, se produce uno o varios de los siguientes
fenómenos: reflexión, transmisión o absorción.
La luz incidente es parcialmente absorbida por el cuerpo (de ahí su cambio de color), así como
parcialmente reflejada y parcialmente transmitida. Si viésemos con más detalle lo que ocurre
en realidad con la luz reflejada (algo similar ocurriría para la luz transmitida en un objeto
translúcido),
La reflexión especular o “brillo” (con la excepción de algunas superficies metálicas o de efectos
nacarados) no modifica el color de la fuente. Es la porción de luz que “rebota” en la capa
externa y retorna al medio de origen (con ángulo simétrico a la normal a la superficie). Como
su nombre sugiere, la reflexión especular es propia de los espejos, donde idealmente toda la
reflexión es de este tipo.
Presentación 1
• Reflexión (Lorena)
• Transmisión (Alberto)
• Difracción (Andrés)
• Refracción (Roger)
• Polarización (polarización)
• Interferencia (Hillel)
• Luminancia (samantha)
Criterios a calificar
• Presentación
• Exposición
• Manejo del tema
Ley de Snell
La ley de Snell es muy simple, establece una relación entre el índice de refracción de
cada medio con el ángulo de corrimiento respecto de la normal. No esta de mas decir
que se denomina Índice de refracción a la relación existente entre la velocidad de la luz
en el vacío con la velocidad de la luz en el medio cuyo índice se calcula.
Ley de Snell
Como dijimos antes, la ley de Snell establece la relación entre el índice de refracción
y el ángulo de entrada y salida de cada medio, respecto de la normal. La formula
matemática de la ley de snell es la siguiente.
Los rayos gamma tienen las longitudes de onda más cortas y las frecuencias más
altas conocidas. Son ondas de alta energía capaces de viajar a larga distancia a
través del aire y son las más penetrantes.
Los rayos X tienen longitudes de onda más largas que los rayos gamma, pero
menores que la radiación ultravioleta y por lo tanto su energía es mayor que la de
estos últimos. Se utilizan en diversas aplicaciones científicas e industriales, pero
principalmente utilizan en la medicina como la radiografía. Consisten en una forma
de radiación ionizante y como tal pueden ser peligrosos. Los rayos X son emitidos
por electrones del exterior del núcleo, mientras que los rayos gamma son emitidos
por el núcleo.
Espectro de la
luz
La radiación ultravioleta (UV) se define como la porción del espectro
electromagnético que se encuentra entre los rayos X y la luz visible.
Thomas Young propuso que el ojo detecta diferentes colores porque contiene tres tipos de receptores, cada
uno de ellos sensible a una única tonalidad del color. Su teoría fue denominada teoría tricromática y fue
sugerida por el hecho de que para los observadores humanos cualquier color puede ser reproducido
mezclando tres colores, en cantidades variables, acertadamente seleccionadas de distintos puntos del
espectro.
Las alteraciones genéticas de la visión del color se deben a anomalías en uno o más de los tres tipos de
conos. La pérdida completa de un tipo de conos se conoce como dicromatismo y es el caso más común de
deficiencia al color. Los tres tipos principales de dicromatismo son protanopía, deuteranopía y tritanopía.
Teoría del color
Teoría del color
¿Qué es RGB?
El modo de color RGB está basado en la suma de los colores lumínicos primarios. A esto se le
conoce como síntesis aditiva, donde los colores deben sumarse para conseguir uno
nuevo. Esos colores son el Rojo (Red), el Verde (Green) y el Azul (Blue).
El color se consigue por espectros de luz y no tinta. Los colores se forman mediante la suma de
diferentes luces en sus diferentes longitudes de onda. El color blanco se consigue mediante
la suma de los tres colores a partes iguales con la máxima saturación posible. Por otro lado,
la ausencia de colores primarios nos origina el color negro. El negro es la ausencia de luz. Sin
luz el ojo no puede percibir color alguno.
Este modo de color se utiliza mayormente para imágenes y elementos gráficos que
necesiten reproducirse en canales digitales. No debe usarse para sistemas de impresión.
Las imágenes RGB contienen un total de 24 bits por pixel y usan 3 canales de información, uno
por cada color. El valor de los canales oscila entre 1 y 255.
Temperatura del color
Las temperaturas de color más bajas (2000-3000 K) indican colores más cálidos de
naranja y amarillo, y las temperaturas de color más altas (4000-6000K)
indican colores más fríos como el azul y el blanco.
Temperatura del color
Pixeles
El píxel -o px, para abreviar- es el elemento más pequeño de una imagen reproducida
digitalmente. En un monitor o en la pantalla de un teléfono móvil se suelen alinear varios píxeles
en una trama. La combinación de varios píxeles constituye una imagen rasterizada.
Pixeles
La rasterización es el proceso por el cual una imagen descrita en un formato gráfico
vectorial se convierte en un conjunto de píxeles o puntos para ser desplegados en un medio de
salida digital, como una pantalla de computadora, una impresora electrónica o una Imagen de
mapa de bits (bitmap). Este procedimiento se suele usar en momentos muy concretos:
•Cuando se trabaja con imágenes de una gran complejidad (con muchos objetos
independientes, muchos rellenos degradados, muchas capas, etc.)
•Cuando se van a aplicar filtros a la imagen resultante, cosa que no se efectúa con los objetos
iniciales.
Pixeles
¿De qué están hechos los píxeles?
Para que un píxel represente un color específico, se compone de subpíxeles en los colores rojo, verde
y azul (RGB). Estos subpíxeles pueden tener diferentes formas para crear una disposición con buena
definición de imagen y pocos espacios entre los elementos de los píxeles.
Un vistazo a la pantalla de un iPhone 11 Pro, por ejemplo, te muestra lo que es técnicamente posible.
Tiene un tamaño de pantalla de 2436 x 1125 píxeles con una resolución de 458 ppi (píxeles por
pulgada). Esto resulta en un tamaño de píxel de 0,05 milímetros con subpíxeles de 0,018 milímetros
(valores redondeados).
Pixeles
Tamaño de los píxeles y calidad de la imagen
La imagen de la abeja y su recorte ya han ilustrado cómo el tamaño de los píxeles afecta a
la percepción óptica.
En los primeros tiempos del PC, los monitores eran todavía dispositivos con tubos de imagen
clásicos y resoluciones de 640 x 480 (VGA), a los que siguieron 800 x 600 (SVGA).
No hace mucho, el llamado PC “HD-ready” con 1280 x 720 píxeles tuvo su momento. La
verdadera HD ofrece 1920 x 1080 píxeles, y los últimos sistemas de formato completo 8K
presentan 8192 x 4320 píxeles. Pero la competencia por el número de píxeles despegó de verdad
con el desarrollo de los monitores LED. Permitieron densidades de píxeles muy altas en muy poco
tiempo. Esta tecnología forma parte ahora de las pantallas de los smartphones modernos.
Como medida de la resolución de las imágenes para su visualización en monitores, 72 dpi (puntos
por pulgada) han demostrado ser un valor suficiente para el ojo humano. Cuanto más pequeños
sean estos píxeles, más podrán caber en la superficie de un monitor, aumentando la resolución
global de los dispositivos. Para los materiales impresos profesionalmente, el valor más utilizado
es el de 300 dpi.
Pixeles
¿Qué son los megapíxeles?
Desde hace tiempo se sabe que un simple agujero de alfiler es capaz de crear una imagen
invertida perfecta en la pared de una habitación a oscuras. Algunos moluscos marinos, por
ejemplo el Nautilus, tienen ojos de cámara estenopeica. Todos los vertebrados tienen un
cristalino que forma una imagen invertida en la retina donde están dispuestas las células de cono
y bastón de las células sensibles a la luz.
Una cámara digital es similar en principio: una lente de vidrio o plástico forma una imagen en la
superficie de un chip semiconductor con una serie de dispositivos sensibles a la luz para
convertir la luz en una imagen digital.
Formación de la imagen
Un pequeño agujero en la pared de una habitación a oscuras proyectará una imagen tenue invertida del
mundo exterior en la pared opuesta: la llamada cámara estenopeica. La cámara estenopeica produce una
imagen muy tenue ya que su potencia radiante es la luminancia de la escena en unidades de W m−2
multiplicada por el área del orificio estenopeico. Una cámara estenopeica no tiene ajustes de enfoque:
todos los objetos están enfocados independientemente de la distancia.
Formación de la imagen
La clave para obtener imágenes más brillantes es usar una lente objetivo, como se muestra en la
figura anterior, que recoge la luz del objeto en un área más grande y la dirige hacia la imagen. Una
lente convexa puede formar una imagen como un agujero de alfiler y la geometría fundamental de la
formación de imágenes para una lente delgada se muestra en la figura. El eje z positivo es el eje
óptico de la cámara. La coordenada z del objeto y su imagen, con respecto al centro de la lente, están
relacionadas por la ecuación de la lente delgada
Formación de la imagen
En la visión por computadora, es común usar el modelo de imágenes en perspectiva central que se muestra
en la figura. Los rayos convergen en el origen del marco de la cámara {C} y se proyecta una imagen no
invertida sobre el plano de la imagen ubicado en z = f. El eje z intersecta el plano de la imagen en el punto
principal que es el origen del marco de coordenadas de la imagen 2D. Usando triángulos similares
podemos mostrar que un punto en las coordenadas mundiales P = (X, Y, Z) se proyecta al punto de la
imagen p = (x, y) por
Formación de la imagen
Más formalmente podemos decir que la transformación, del mundo al plano de la imagen, tiene las
siguientes características:
1. Realiza un mapeo del espacio tridimensional al plano de la imagen bidimensional: P:R3 R2.
2. Las líneas rectas del mundo se proyectan en líneas rectas en el plano de la imagen.
3. Las líneas paralelas del mundo se proyectan en líneas que se intersecan en un punto de fuga. La
excepción son las líneas frontoparalelas, líneas que se encuentran en un plano paralelo al plano de la
imagen, que siempre permanecen paralelas.
4. Las cónicas del mundo se proyectan a las cónicas del plano de la imagen. Por ejemplo, un círculo se
proyecta como un círculo o una elipse.
5. El tamaño (área) de una forma no se conserva y depende de la distancia.
6. El mapeo no es uno a uno y no existe un inverso único. Es decir, dado (x, y) no podemos determinar
de forma única (X, Y, Z).
7. La transformación no es conforme: no conserva la forma ya que no se conservan los ángulos
internos. La traducción, la rotación y el escalado son ejemplos de transformaciones conformes.
Formación de la imagen
Podemos escribir las coordenadas del punto del plano de la imagen en forma homogénea
Estos a menudo se denominan coordenadas del plano de la imagen de la retina. Para el caso en que f =
1, las coordenadas se denominan coordenadas del plano de la imagen normalizadas, retinales o
canónicas.
Plano de imagen discreta
Formación de la imagen
En una cámara digital, el plano de la imagen es una cuadrícula de ancho x alto de elementos sensibles a la luz
llamados fotositos que corresponden directamente a los elementos de imagen (o píxeles) de la imagen, como se
muestra en la figura. Las coordenadas de píxeles son un vector de 2 (u, v) de números enteros no negativos y, por
convención, el origen está en la esquina superior izquierda del plano de la imagen. En MATLAB®, el píxel superior
izquierdo es (1, 1). Los píxeles tienen un tamaño uniforme y están centrados en una cuadrícula regular, por lo que la
coordenada del píxel está relacionada con la coordenada del plano de la imagen por
Formación de la imagen
Distorsión de lente
Ninguna lente es perfecta y las lentes de bajo costo que se usan en muchas cámaras web están lejos de ser perfectas.
Las imperfecciones de la lente dan como resultado una variedad de distorsiones que incluyen aberración cromática
(flecos de color), aberración esférica o astigmatismo (variación en el enfoque a lo largo de la escena) y distorsiones
geométricas donde los puntos en el plano de la imagen se desplazan de donde deberían estar. La distorsión geométrica es
generalmente el efecto más problemático que encontramos en las aplicaciones robóticas y consta de dos componentes:
radial y tangencial.
La distorsión radial hace que los puntos de la imagen se trasladen a lo largo de líneas radiales desde el punto principal.
El error radial está bien aproximado por un polinomio
donde r es la distancia del punto imagen al punto principal.
La distorsión de barril ocurre cuando el aumento disminuye con la distancia desde el punto principal, lo que
hace que las líneas rectas cerca del borde de la imagen se curven hacia afuera.
La distorsión de cojín ocurre cuando la ampliación aumenta con la distancia desde el punto principal y hace
que las líneas rectas cerca del borde de la imagen se curven hacia adentro.
La distorsión tangencial, o distorsión de descentramiento, ocurre en ángulo recto con los radios, pero
generalmente es menos significativa que la distorsión radial. Los ejemplos de una imagen distorsionada y no
distorsionada se muestran en la Fig.
Imágenes de amplio campo de visión
Hemos discutido la imagen en perspectiva con bastante detalle ya que es el modelo de nuestros propios ojos
y casi todas las cámaras que encontramos. Sin embargo, las imágenes en perspectiva nos restringen a un
campo de visión fundamentalmente limitado. La ecuación de la lente delgada es singular para puntos con Z =
f, lo que limita el campo de visión a un hemisferio como máximo; las lentes reales logran mucho menos. A
medida que la distancia focal disminuye, la distorsión radial es cada vez más difícil de eliminar y finalmente
se alcanza un límite más allá del cual prácticamente no se pueden construir lentes.
La única forma de avanzar es eliminar la restricción de la imagen en perspectiva. Una alternativa a la óptica
refractiva es utilizar una superficie reflectante para formar la imagen.
Los telescopios newtonianos se basan en la reflexión de espejos cóncavos en lugar de la refracción de lentes.
Los espejos no tienen franjas de color y son más fáciles de escalar a tamaños más grandes que una lente. La
naturaleza también ha desarrollado ópticas reflectantes: el pez fantasma y algunas vieiras tienen ojos basados
en reflectores formados por cristales de guanina.
El costo de las cámaras está disminuyendo, por lo que un enfoque alternativo es combinar la salida de
múltiples cámaras en una sola imagen.
Cámara Ojo de pez
Los primeros tipos de lentes de ojo de pez que se desarrollaron fueron los "ojo de pez circular",
lentes que tomaban un hemisferio de 180 ° y lo proyectaban como un círculo dentro del marco de
la película. Algunos ojos de pez circulares estaban disponibles en modelos de proyección
ortográfica para aplicaciones científicas. Estos tienen un ángulo de visión vertical de 180 ° y
el ángulo de visión horizontal y diagonal también son de 180 °. Por diseño, la mayoría de los lentes
de ojo de pez circulares cubren un círculo de imagen más pequeño que los lentes rectilíneos, por
lo que las esquinas del marco estarán completamente oscuras.
Sigma fabrica actualmente una lente ojo de pez de 4,5 mm que captura un campo de visión de 180
grados en un sensor de menos de 35mm de cuerpo de película. Sunex también fabrica una lente
ojo de pez de 5,6 mm que captura un campo de visión circular de 185 grados en una cámara Nikon
de 1,5x y una cámara DSLR de Canon de 1,6x.
A medida que los lentes de ojo de pez ganaban popularidad en la fotografía general, las empresas
de cámaras comenzaron a fabricar lentes de ojo de pez que agrandaban el círculo de la imagen
para cubrir todo el marco rectangular, lo que se denomina "ojo de pez de fotograma completo "El
ángulo de imagen producido por estos lentes solo mide 180 grados cuando se mide de esquina a
esquina: estos tienen un ángulo de visión diagonal de 180 °, mientras que los ángulos de
visión horizontal y vertical serán más pequeños; para un ojo de pez de fotograma completo de 15
mm con ángulo equisólido, el ángulo de visión horizontal será de 147 ° y el ángulo de visión vertical
será de 94 °.
Lentes de ojo de pez en miniatura
Las cámaras digitales en miniatura, especialmente cuando se utilizan como cámaras de seguridad, suelen
tener lentes de ojo de pez para maximizar la cobertura. Las lentes de ojo de pez en miniatura están
diseñadas para lectores de imágenes CCD / CMOS de formato pequeño que se utilizan comúnmente en
cámaras de seguridad y de consumo. Los tamaños de formato de sensor de imagen más populares
utilizados incluyen 1⁄4 ", 1⁄3" y 1⁄2 ". Dependiendo del área activa del sensor de imagen, la misma lente
puede formar una imagen circular en un sensor de imagen más grande ( por ejemplo, 1⁄2 ") y un
fotograma completo en uno más pequeño (por ejemplo, 1⁄4").
•Muchos planetarios ahora usan lentes de proyección de ojo de pez para proyectar el cielo nocturno u otro
contenido digital en el interior de una cúpula.
•Los simuladores de vuelo y los simuladores de combate visual utilizan lentes de proyección de ojo de pez
para crear un entorno inmersivo para que los pilotos, los controladores de tráfico aéreo o el personal
militar se entrenen.
•De manera similar, el formato de imagen en movimiento IMAX Dome (anteriormente 'OMNIMAX') implica
la fotografía a través de una lente de ojo de pez circular y la proyección a través de la misma en una
pantalla hemisférica.
•Los científicos y los administradores de recursos (por ejemplo, biólogos, forestales y meteorólogos)
utilizan lentes de ojo de pez para fotografías hemisféricas para calcular los índices del dosel de las
plantas y la radiación solar cercana al suelo. Las aplicaciones incluyen la evaluación de la salud de los
bosques, la caracterización de los sitios de descanso de las mariposas monarca en invierno y el manejo
de los viñedos.
•Los fotógrafos y videógrafos usan lentes de ojo de pez para poder acercar la cámara lo más posible a las
tomas de acción y al mismo tiempo capturar el contexto, por ejemplo, en el monopatinaje para enfocar la
tabla y aun así retener la imagen del patinador.
•El "ojo" de la computadora HAL 9000 de 2001: A Space Odyssey se construyó utilizando una lente Fisheye-
Nikkor de 8 mm f / 8. El punto de vista de HAL se filmó utilizando una lente de "ojo de insecto" de Fairchild-
Curtis diseñada originalmente para películas en el formato de domo Cinerama 360.
•El primer video musical que se filmó completamente con lentes de ojo de pez fue para la canción
de Beastie Boys"Hold It Now, Hit It" en 1987.
•En Computación Gráfica, las imágenes circulares de ojo de pez se pueden utilizar para crear mapas de
entorno a partir del mundo físico. Una imagen completa de ojo de pez gran angular de 180 grados se
ajustará a la mitad del espacio de mapeo cúbico utilizando el algoritmo adecuado. Los mapas de entorno se
pueden utilizar para renderizar objetos 3D y escenas panorámicas virtuales.
•Muchas cámaras en línea de estaciones meteorológicas de todo el mundo utilizan imágenes de ojo de pez
de las condiciones actuales del cielo local, así como una secuencia de cámara rápida del día anterior con
condiciones climáticas como temperatura, humedad, viento y cantidades de lluvia.
•Los astrónomos utilizan lentes de ojo de pez para capturar datos sobre la cobertura de nubes y
la contaminación lumínica.
Un sistema óptico catadióptrico
Hoy en día, las imágenes digitales son omnipresentes, ya que las cámaras están integradas en nuestros
dispositivos digitales y las imágenes no cuestan casi nada para crearlas y compartirlas. Cada uno de
nosotros tiene colecciones personales cada vez mayores y acceso a colecciones masivas en línea de
imágenes digitales como Google Images, Picasa o Flickr. También tenemos acceso a transmisiones de
imágenes en vivo de las cámaras de otras personas: hay decenas de miles de cámaras web en todo el mundo
que capturan imágenes y las transmiten en Internet, así como imágenes de la Tierra desde el espacio, la
Luna y Marte.
• De archivos
• De un archivo de película
Obtención de imágenes
En su forma nativa, una imagen con formato de archivo gráfico no se almacena como una matriz de
MATLAB ni como una matriz necesariamente. La mayoría de los archivos gráficos comienzan con un
®
encabezado que contiene etiquetas de información específicas del formato y continúan con los datos del mapa
de bits que se pueden leer como un flujo constante. Por este motivo, no puede utilizar los comandos de E/S
estándar de MATLAB load y save para leer y escribir una imagen con formato de archivo gráfico.
Llame a las funciones especiales de MATLAB para leer y escribir los datos de imagen de los formatos de
archivo gráfico:
•Para leer una imagen con formato de archivo gráfico, utilice imread.
•Para escribir una imagen con formato de archivo gráfico, utilice imwrite.
•Para obtener información sobre la naturaleza de una imagen con formato de archivo gráfico, utilice imfinfo.
Pix
Histograma de una
imagen
•Un histograma sin información en la zona de sombras ni en la zona media, que aglutina toda la
información en la zona derecha de la imagen (luces), es muy probable que esté sobreexpuesta. Suele
reflejar no sólo la información en la parte derecha, sino también una cantidad de píxeles (picos)
elevados en la zona más derecha de la imagen, pareciendo que estos fueran a salirse de la gráfica.
•Un histograma que acumule la información en la zona de sombras (izquierda), con poca o ninguna
información en la zona media y la zona de luces, es muy probable que sea demasiado
oscura; subexpuesta. Igual que en los histogramas sobreexpuestos, la información suele acumularse en
forma de picos en la zona izquierda, pareciendo que estos fueran a “salirse” de la gráfica.
Presentación 2
Filtros
• Bordes (hector)
• Suavizado (lorena)
Pretende obtener para una imagen un histograma con una distribución uniforme. Es decir, que exista el
mismo número de píxeles para cada nivel de gris del histograma de una imagen monocroma.
Ecualización del Histograma
En Matlab la funcion que se utiliza es: histeq
Ecualización del Histograma
clc
clear all
e = imread(‘[Link]');
x= histogram (e);
y=histeq(e, 255);
Similitud. Se divide la imagen basándose en la búsqueda de zonas que tengan valores similares,
conforme a unos criterios prefijados:
•Crecimiento de región
•Umbralización
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
La idea que subyace en la mayor parte de las técnicas de detección de bordes es el cálculo de un
operador local de derivación ya que un píxel pertenece a un borde si se produce un cambio
brusco entre niveles de grises con sus vecinos.
Un problema a tener en cuenta es que en la búsqueda de los cambios bruscos para detectar los
bordes, también se detectará, colateralmente, el ruido.
En general, podemos decir que los pasos fundamentales en la detección de bordes son:
1. Realizar un suavizado de la imagen para reducir el ruido;
2. Detectar los posibles candidatos a ser puntos del borde;
3. Seleccionar, de entre los candidatos, aquéllos que pertenecen realmente al borde.
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
Segmentación de imágenes
El operador Sobel calcula el gradiente de la intensidad de una imagen en cada punto (píxel). Así,
para cada punto, este operador da la magnitud del mayor cambio posible, la dirección de este y el
sentido desde oscuro a claro. El resultado muestra cómo de abruptamente o suavemente cambia
una imagen en cada punto analizado y, en consecuencia, cuán probable es que este represente un
borde en la imagen y, también, la orientación a la que tiende ese borde. En la práctica, el cálculo
de la magnitud -probabilidad de un borde- es más fiable y sencillo de interpretar que el cálculo de
la dirección y sentido.
Matemáticamente, el gradiente de una función de dos variables (en este caso, la función de
intensidad de la imagen) para cada punto es un vector bidimensional cuyos componentes están
dados por las primeras derivadas de las direcciones verticales y horizontales. Para cada punto de
la imagen, el vector gradiente apunta en dirección del incremento máximo posible de la intensidad,
y la magnitud del vector gradiente corresponde a la cantidad de cambio de la intensidad en esa
dirección.
Lo dicho en los párrafos anteriores implica que el resultado de aplicar el operador Sobel sobre una
región con intensidad de imagen constante es un vector cero, y el resultado de aplicarlo en un
punto sobre un borde es un vector que cruza el borde (perpendicular) cuyo sentido es de los
puntos más oscuros a los más claros.
Segmentación de imágenes
En resumen:
(1) La detección de bordes usando operadores de aproximación del gradiente tiende a funcionar
bien en los casos en que se involucran imágenes con transiciones de intensidad claramente
definidas y ruidos relativamente bajos.
(2) Los pasos por cero ofrecen una alternativa en los casos en que los bordes están
emborronados o cuando está presente un alto contenido de ruido. El paso por cero ofrece
fiabilidad en las localizaciones de bordes y la propiedad de suavizado de la convolución
gaussiana reduce los efectos del ruido. El precio a pagar por estas ventajas es el incremento
de complejidad de cálculo y tiempo.
(3) El algoritmo de Canny es el que ofrece mejores resultados para bordes de imágenes con
ruido gaussiano.
Segmentación de imágenes
Un método básico para diferenciar un objeto del fondo de la imagen es mediante una simple binarización.
A través del histograma obtenemos una gráfica donde se muestran el número de píxeles por cada nivel de gris
que aparece en la imagen. Para binarizar la imagen, se deberá elegir un valor adecuado (umbral) dentro de los
niveles de grises, de tal forma que el histograma forme un valle en ese nivel. Todos los niveles de grises
menores al umbral calculado se convertirán en negro y todos los mayores en blanco.
Segmentación de imágenes
Aplicación de Visión en Robótica
[Link]
[Link]
[Link]
Código
clc
clear all
e = imread('[Link]');
newImg=rgb2gray(e);
%B = imgaussfilt(newImg);
B = imgaussfilt(newImg,1);
montage({newImg,B})
title('Original Image (Left) Vs. Gaussian Filtered Image
(Right)')
Código
clc
clear all
e = imread('[Link]');
newImg=rgb2gray(e);
x= histogram (newImg);
y=histeq(newImg, 128);
clc
clear all
e = imread('[Link]');
newImg=rgb2gray(e);
C=edge(newImg,'prewitt');
montage({newImg,C})
title('Original Image (Left) Vs. Filtered Image (Right)')
Código
clear all
clc
Im = imread('[Link]');
newImg=rgb2gray(Im);
size=[3 3];
%X = imnoise(newImg,'salt & pepper',0.02);
J = medfilt2(newImg,size);
%imshowpair(X,J,'montage')
subplot(1,2,1),subimage(newImg),title('Imagen
Original');
subplot(1,2,2),subimage(J),title('Imagen Filtro');
Código
clear all
clc
Im = imread('[Link]');
newImg=rgb2gray(Im);
fn=imnoise(newImg,'salt & pepper',0.05);
h1=fspecial('average');
h2=fspecial('average',[9,9]);
media1=imfilter(fn,h1);
media2=imfilter(fn,h2);
%Representaciones de las imágenes
subplot(2,2,1),subimage(newImg),title('Imagen original');
subplot(2,2,2),subimage(fn),title('Imagen con ruido');
subplot(2,2,3),subimage(media1),title('Filtro de media 3X3');
subplot(2,2,4),subimage(media2),title('Filtro de media 9X9');
Código
e = imread('[Link]');
newImg=rgb2gray(e);
S= im2double(newImg);
[M,N]=size(S);
TF=fft2(S);
TFC=fftshift(TF);
H=lpfilter('gaussian', M, N, 60);
G=H.*TF;
I1=real(ifft2(G));
J= hpfilter('gaussian', M, N,10);
L=J.*TF;
I3=real(ifft2(L));
M=H+J;
N=M.*TF;
I5=real(ifft2(N));
K= fspecial('laplacian');
blurred = imfilter(newImg,K);
I2= imfilter (I1, K);
I4=imfilter(I3,K);
sigma = 0.4;
alpha = 0.5;
B = locallapfilt(newImg, sigma, alpha);
subplot(2,3,5),subimage(I3),title('Filtro Pasa Altas');
subplot(2,3,2),subimage(I4),title('Filtro Pasa Altas con Laplaciano');
subplot(2,3,4),subimage(I5),title('Filtro PasaBanda');
subplot(2,3,3),subimage(I1),title('Filtro Pasa Bajas Gaussiano');
subplot(2,3,6),subimage(I2),title('Filtro Pasa bajas con Laplaciano');
subplot(2,3,1),subimage(newImg),title('Imagen escala de grises');
Código