inteligencia artificial un enfoque moderno

47
Inteligencia Artificial

Upload: jeremy-woods

Post on 05-Aug-2015

379 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial

Page 2: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Introducción----------------------------------------------------------------------------------------------------- 3Objetivos

• Objetivo General------------------------------------------------------------------------------------- 4• Objetivos Específicos-------------------------------------------------------------------------------- 5

Capitulo 1• 1 Introducción--------------------------------------------------------------------------------------- 6 • 1.1 Visión Computacional-------------------------------------------------------------------------- 6• 1.2 Visión Computacional aplicada al Sistema Visual Humano--------------------------- 7• 1.3 Aplicaciones de la Visión Computacional------------------------------------------------- 8• 1.4 Planteamiento Teórico de Marr------------------------------------------------------------- 9• 1.5 Técnicas de Procesamiento de Imágenes y Video------------------------------------- 10• 1.6 Últimos Avances------------------------------------------------------------------------------- 13

Capitulo 2• 2 Introducción------------------------------------------------------------------------------------- 15• 2.1 Aplicaciones Militares de la Inteligencia Artificial------------------------------------- 15

o Aplicaciones de la Vida Real----------------------------------------------------------- 18Capitulo 3

• 3 Introducción------------------------------------------------------------------------------------- 19 • 3.1 Inteligencia Artificial Distribuida----------------------------------------------------------- 19 • 3.2 Colaboración entre Agentes---------------------------------------------------------------- 21• 3.3 Arquitectura para Agentes Inteligentes-------------------------------------------------- 22• 3.4 Teoría de los Juegos-------------------------------------------------------------------------- 22

Capitulo 4• 4 Introducción------------------------------------------------------------------------------------- 27• 4.1 Sintetizado de Voz por medio de un Agente Inteligente----------------------------- 27

o Tecnología de Síntesis------------------------------------------------------------------- 28Capitulo 5

• 5 Introducción------------------------------------------------------------------------------------- 34• 5.1 Reconocimiento Facial y Digital------------------------------------------------------------ 34• 5.2 Técnicas de Reconocimiento--------------------------------------------------------------- 37

Conclusiones-------------------------------------------------------------------------------------------------- 41Bibliografía----------------------------------------------------------------------------------------------------- 42Apéndices

• Apéndice A: Glosario y Abreviaturas---------------------------------------------------------- 44• Apéndice C: Ilustraciones------------------------------------------------------------------------- 46

Ing. Erick Nehring Página 2

Contenido

Page 3: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

El siguiente trabajo de investigación, tiene como propósito mostrar información básica sobre lo que es la inteligencia artificial en sus diferentes campos como ser: Visión Computacional, Inteligencia Artificial Distribuida, Sintetizado de Voz, etc. La inteligencia artificial es una ciencia que intenta crear programas para máquinas que imiten el comportamiento y la comprensión humana. La inteligencia Artificial, es una campo que ha tomado gran interés en los últimos tiempos debido a su capacidad de poder resolver soluciones imitando el razonamiento lógico de las personas y hasta el mecanismo de cómo ellas la resuelven.En los últimos años la IA ha ido evolucionando, quizás con mayor celeridad que otras disciplinas, motivada probablemente por su propia inmadurez. Todo esto ha llevado a que la IA actualmente abarque una gran cantidad de áreas, desde algunas muy generales como razonamiento, búsqueda, etc. a otras más específicas como los sistemas expertos, sistemas de diagnóstico, etc. De momento, se puede asegurar que, hoy en día, existe una idea generalizada dentro de la IA de que nos encontramos ante el nacimiento de una nueva tecnología, la de agentes inteligentes, que permite abordar de una manera más apropiada la construcción de sistemas inteligentes más complejos aplicados a muy diversos campos.

Ing. Erick Nehring Página 3

Introducción

Page 4: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Por medio de esta investigación obtener más conocimientos sobre Inteligencia Artificial, sus campos de aplicación, sus ramas a fines, y la responsabilidad que conlleva esta nueva ciencia al ser aplica.

Ing. Erick Nehring Página 4

Objetivo General

Page 5: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

• Presentar los conceptos básicos de Visión Computacional.• Identificar las líneas de investigación de la visión computacional.• Conocer las diversas técnicas del procesado de imágenes.• Aprender sobre la nueva tecnología y en que nos beneficia.• Conocer sobre las aplicaciones de la Inteligencia Artificial y sus consecuencias.• Comprender lo relacionado con el reconocimiento facial y digital, ventajas y

desventajas.

Ing. Erick Nehring Página 5

Objetivos Especificos

Page 6: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Es una rama que es reciente y que está siendo explorada cada vez por más profesionistas, estudiantes, maestros e incluso por la industria. Para aquéllos que tienen poco o ningún conocimiento sobre lo que realmente es Visión Computacional, aquí les dejo algunos conceptos:

• ¿Qué significa ver? Mirar y saber qué es lo que está ahí y dónde” (Aristóteles). • La Visión Computacional es una disciplina que intenta emular la capacidad que

tienen algunos seres vivos para ver una escena y entenderla“

I.1.- Visión Computacional ¿Qué se entiende por visión computacional?Visión es un proceso que produce, a partir de imágenes (información) del mundo externo, una descripción que es útil para el observador y que está libre de información irrelevante.La visión computacional llamada también visión artificial o visión por computador (del ingles Computer Visión) es parte de la inteligencia artificial.Es el conjunto de técnica y modelos que permiten procesar, analizar y explicar aquella información espacial (3-D) obtenida a través de una imagen digital (2-D), de esta manera decimos que es el conjunto de todas aquellas técnicas y modelos que nos permitan el procesamiento, análisis y explicación de cualquier tipo de información espacial obtenida a través de imágenes digitales.Las técnicas de visión computacional o visión artificial por computadora presenta una multitud de aplicaciones, entre ellas pueden citarse la identificación de huellas dactilares, reconocimiento de caras, crecimiento y detección de enfermedades de las plantas en la agricultura, control de tráfico vehicular, monitorización del sistemade vigilancia y por supuesto, las aplicaciones industriales para el control de calidad. Hasta ahora los agentes usaban formas sensoriales demasiado limitadas. La Visión por Computador, es uno de los campos más extensos de la I.A ya que influyen muchos aspectos. La Visión para los humanos no es ningún problema, pero para las máquinas es un campo muy complicado. Influyen Texturas, Luminosidad, Sombras, Objetos Complejos, etc. El primer paso es captar la imagen mediante una cámara de TV. Las imágenes a color

Ing. Erick Nehring Página 6

I.- Introducción

Page 7: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

tienen una matriz I(x,y,t); donde x y y nos indican la ubicación de un punto en la matriz de colores y t, nos indica el tiempo.En la actualidad, algunos Robots emiten una señal y la reciben generando bajo esto una especie de espacio, esta forma de “ver” es muy rústica, pero se sigue usando ya que desafortunadamente es imposible lograr una reconstrucción de la imagen capturada. Y aunque así fuera, las computadoras no podrían distinguir un objeto de juguete y uno real. Lo peor es que los modelos que existen tratan de resolver esto de forma muy complicada. Al proceso de captar imágenes podemos dividirlo en: Bajo Nivel, Nivel Medio y Alto Nivel. El primero se encarga de suavizar y quitar ruido a la imagen y de extraer características de la imagen bidimensional, en particular de las aristas, el segundo se encarga de agrupar estas aristas para formar imágenes bidimensionales y la tercera de usar estas imágenes para reconocer objetos del mundo real. Generalmente las imágenes captadas por los robots son suficientes para sus propósitos. ¿Para que estudiamos visión por computadora?El objetivo de la visión por computadora (VC) es tomar decisiones útiles acerca de los objetos físicos reales del mundo (de escenas) en base a imágenes adquiridas digitalmente.Por lo tanto, la tarea de la visión computacional es la construcción de descriptores de la escena en base a características relevantes contenidas en una imagen.El propósito de la visión computacional es programar un computador para que "entienda" una escena o las características de una imagen.

Los objetivos típicos de la visión artificial incluyen:

• La detección, segmentación, localización y reconocimiento de ciertos objetos en imágenes (por ejemplo, caras humanas).

• La evaluación de los resultados (ej.: segmentación, registro).

• Registro de diferentes imágenes de una misma escena u objeto, hacer concordar un mismo objeto en diversas imágenes.

• Seguimiento de un objeto en una secuencia de imágenes.

• Mapeo de una escena para generar un modelo tridimensional de la escena; tal modelo podría ser usado por un robot para navegar por la escena.

• Estimación de las posturas tridimensionales de humanos.

• Búsqueda de imágenes digitales por su contenido.

Estos objetivos se consiguen por medio de reconocimiento de patrones, aprendizaje estadístico, geometría de proyección, procesado de imágenes, teoría de gráficos y otros campos. La visión artificial cognitiva está muy relacionada con la psicología cognitiva y la computación biológica.

I.2.- Visión Computacional Aplicada al Sistema Visual Humano

Ing. Erick Nehring Página 7

Page 8: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

La visión humana es una tarea de procesamiento de información, es el proceso de describir con las imágenes lo que está presente en el mundo real y donde se encuentra.Cuando la retina está dañada o no funciona bien, los fotorreceptores dejan de funcionar, pero eso no quiere decir que toda la estructura del Sistema Visual Humano no pueda seguir funcionando. Por ello hay una parte de científicos que están desarrollando microchips de silicio que puedan dotar de visión artificial a aquellas personas a las que no les funcionan los fotorreceptores.

Como ya sabemos, la información captada por los fotorreceptores se transmite a las células ganglionares, donde se interpreta y se manda al cerebro a través del nervio óptico. Existen enfermedades que afectan a estas células como la tetignosis pigmentaria o la DMAE, que dejan inoperativos los fotorreceptores pero no dañan las células ganglionares o el nervio óptico, con lo cual el problema no es que la información no puede llegar al cerebro, sino que no se puede captar. En estos casos se pueden desarrollar unos conos y bastonesartificiales. Los requisitos de los microchips para que cumpla la función de los fotorreceptores son:

• Que sean lo suficientemente pequeños como para implantarlos en el ojo.• Que tengan una fuente de abastecimiento de energía continua.• Que no causen rechazo, es decir, que sean biocompatibles con los tejidos del ojo.

Uno de los micros que se ha desarrollado con éxito por el momento es un dispositivo de 2mm de diámetro y fino como un pelo humano. Contiene 3500 células solares microscópicas que imitan a los bastones y los conos y convierten la luz en pulsos eléctricos. Se abastece de energía solar, con lo que se vitan cables y baterías. I.3.- Aplicaciones de la Visión Computacional Como ya sabemos entonces, la Visión Computacional trata de acercarse lo más posible a la representación de la realidad para crear Sistemas de Visión Artificial.Nos podemos preguntar para que nos sirven estos sistemas, a continuación veremos algunas de las aplicaciones de la visión computacional:

• Industrial: Líneas de producción para la supervisión y control de calidad de los productos.

• Medicina: Detección de enfermedades mediante análisis de las imágenes, biométrica.

• Robótica móvil ó Vehicular: Creación de vehículos autónomos. • Visión 3D: Proporcionar una visión generalizada de cualquier objeto en el espacio,

Depth sensors. Otras aplicaciones:

• Interpretación de escritura y dibujos• Reconocimiento de personas (sus gestos y partes del cuerpo) (Figura 1.2)• Reconocimiento de objetos y seguimiento de los mismos

Ing. Erick Nehring Página 8

Page 9: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

• Juegos • Interpretación de imágenes aéreas • Análisis de imágenes de microscopios y telescopios (Figura 1.3)• Compresión de imágenes para transmisión y almacenamiento.• Seguridad: monitoreo de un sistema de vigilancia • Identificación de huellas dactilares (Figura 1.4)

I.4.- Planteamiento Teórico de Marr El fenómeno de la visión lo podemos considerar como el producto de un sistema de procesamiento de información.Para entender un sistema de procesamiento de información completamente, Marr propone los siguientes tres niveles de construcción:

• Teoría Computacional: se definen las propiedades abstractas del mapeo y se demuestra que el mapeo es idóneo y adecuado para la tarea a realizar.

• Representación y algoritmos: se definen cuales son las representaciones de entrada y salida que se van a ocupar para implementar, y cuál es el algoritmo utilizado para realizar la transformación.

• Implementación física (Hardware): se define el tipo de arquitectura computacional utilizada para implementar el algoritmo.

Marco de Representación para Visión(Acorde a Marr)

Imagen de entrada: Representa los valores de intensidad en cada punto de la imagen. Reflectancia de superficies, iluminacion, puntos de vista. Sketch primario: Hace explicita la información de la imagen bidimensional, en forma de cruces con cero, formas, terminaciones y discontinuidades, segmentos de bordes, líneas virtuales, grupos, bordes (nivel bajo). 2 1/2–D sketch: Hace explicita la orientación y profundidad de las superficies visibles y el contorno de discontinuidades. Las primitivas de representación son:

• La orientación de la superficie local, • Distancia desde el observador, • Discontinuidades en profundidad • En orientación de la superficie (Nivel medio).

Modelo 3–D: Describe las formas y su organización espacial utilizando representaciones modulares jerárquicas. Volúmenes, superficies, ... (Nivel alto).

Ing. Erick Nehring Página 9

Page 10: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

I.5.- Técnicas de Procesamiento de Imágenes y Video La creación de una herramienta de procesamiento de imágenes debe entenderse como un proyecto software que, en consecuencia, hará uso de los principios ingenieriles de desarrollo de software: fases de análisis y diseño, uso de abstracciones, modularidad, ocultación de la implementación, separación interface/implementación. Estos aspectos no son el objetivo de la práctica, pero sí el medio para desarrollar buenos programas.Un sistema de reconocimiento típicamente está formado por las siguientes partes:Adquisición: se refiere al proceso de convertir un documento a una representación apta para ser procesada por la computadora. Tal adquisición y conversión puede ser realzada por un escáner, cámara fotográfica o de video, etc. y el resultado puede variar dependiendo del proceso de digitalización usado y el método de codificación.Binarizacion: convierte la imagen recibida en una imagen binaria separando así el fondo de los objetos a analizar.Análisis de Documento: trata de analizar la estructura de un documento y entender la información contenida en sus componentes.Segmentación: se refiere a delimitar las regiones que nos interesan. En el caso del reconocimiento de caracteres se refiere a las líneas y caracteres individuales.Normalización: trata de ajustar la forma, tamaño y posición del carácter esto con el objetivo de minimizar la variación entre imágenes de la misma clase.Extracción de Características: permite conocer las características como lo son el tamaño, perímetro, área, etc. así como características topográficas como lo es la orientación de segmentos.Reconocimiento: convierte la imagen binaria en una representación electrónica. Misma que permite realizar operaciones de validación y análisis.Pros proceso: refiere a mejorar el proceso de reconocimiento mediante el uso de información contextual como el análisis a nivel lingüístico. El procesamiento digital de imágenes es el conjunto de técnicas que se aplican a las imágenes digitales con el objetivo de mejorar la calidad o facilitar la búsqueda de información.Proceso de FiltradoEs el conjunto de técnicas englobadas dentro del pre procesamiento de imágenes cuyo objetivo fundamental es obtener, a partir de una imagen origen, otra final cuyo resultado sea más adecuado para una aplicación específica mejorando ciertas características de la misma que posibilite efectuar operaciones del procesado sobre ella.Los principales objetivos que se persiguen con la aplicación de filtros son:

• Suavizar la imagen: reducir la cantidad de variaciones de intensidad entre píxeles vecinos.

Ing. Erick Nehring Página 10

Page 11: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

• Eliminar ruido: eliminar aquellos píxeles cuyo nivel de intensidad es muy diferente

al de sus vecinos y cuyo origen puede estar tanto en el proceso de adquisición de la imagen como en el de transmisión.

• Realzar bordes: destacar los bordes que se localizan en una imagen. • Detectar bordes: detectar los píxeles donde se produce un cambio brusco en la

función intensidad. Por tanto, se consideran los filtros como operaciones que se aplican a los píxeles de una imagen digital para optimizarla, enfatizar cierta información o conseguir un efecto especial en ella.El proceso de filtrado puede llevarse a cabo sobre los dominios de frecuencia y/o espacio. Filtrado en el Dominio de la FrecuenciaLos filtros de frecuencia procesan una imagen trabajando sobre el dominio de la frecuencia en la Transformada de Fourier de la imagen. Para ello, ésta se modifica siguiendo el Teorema de la Convolución correspondiente:

1. se aplica la Transformada de Fourier, 2. se multiplica posteriormente por la función del filtro que ha sido escogido, 3. para concluir re-transformándola al dominio espacial empleando la Transformada

Inversa de Fourier.Teorema de la Convolución (frecuencia): G(u,v) = F(u,v) * H(u,v)F(u,v): transformada de Fourier de la imagen originalH(u,v): filtro atenuador de frecuencias Existen tres tipos de Filtros

• Filtro paso bajo: atenúa las frecuencias altas y mantiene sin variaciones las bajas. El resultado en el dominio espacial es equivalente al de un filtro de suavizado, donde las altas frecuencias que son filtradas se corresponden con los cambios fuertes de intensidad. Consigue reducir el ruido suavizando las transiciones existentes.

• Filtro paso alto: atenúa las frecuencias bajas manteniendo invariables las frecuencias altas. Puesto que las altas frecuencias corresponden en las imágenes a cambios bruscos de densidad, este tipo de filtros es usado, porque entre otras ventajas, ofrece mejoras en la detección de bordes en el dominio espacial, ya que estos contienen gran cantidad de dichas frecuencias. Refuerza los contrastes que se encuentran en la imagen.

Ing. Erick Nehring Página 11

Page 12: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

• Filtro paso banda: atenúa frecuencias muy altas o muy bajas manteniendo una

banda de rango medio. Filtrado en el dominio del espacioLas operaciones de filtrado se llevan a cabo directamente sobre los píxeles de la imagen. En este proceso se relaciona, para todos y cada uno de los puntos de la imagen, un conjunto de píxeles próximos al píxel objetivo con la finalidad de obtener una información útil, dependiente del tipo de filtro aplicado, que permita actuar sobre el píxel concreto en que se está llevando a cabo el proceso de filtrado para, de este modo, obtener mejoras sobre la imagen y/o datos que podrían ser utilizados en futuras acciones o procesos de trabajo sobre ella. Los filtros en el dominio del espacio pueden clasificarse en:

• Filtros lineales (filtros basados en kernels o máscaras de Convolución). • Filtros no lineales.

El concepto de kernel se entiende como una matriz de coeficientes donde el entorno del punto (x,y) que se considera en la imagen para obtener g(x,y) está determinado por el tamaño y forma del kernel seleccionado.Tipos

• Filtro paso bajo (suavizamiento): utilizados para eliminar ruido o detalles pequeños de poco interés puesto que sólo afecta a zonas con muchos cambios. La frecuencia de corte se determina por el tamaño del kernel y sus coeficientes. Se emplean diversos kernels:

• Promedio: promedio de píxeles vecinos (kernel de unos). • Paso bajo en frecuencia. • Media: reemplaza cada píxel por el valor medio de sus contiguos. • Mediana: sustituye por el valor de la mediana de los píxeles vecinos

(normalmente se comporta mejor que el de promedio). • Gaussiano: aproximación a la distribución gaussiana.

• Filtro paso alto (atenuamiento): intensifica los detalles, bordes y cambios de alta frecuencia, mientras que atenúa las zonas de tonalidad uniforme. Esto permite una mejor identificación posterior de los objetos que se encuentren en la imagen, puesto que el brillo se hace mayor en las zonas con frecuencias más altas, al mismo tiempo que se oscurecen las zonas de frecuencias bajas. Es común la aparición de ruido tras el proceso.

• Realce de bordes por desplazamiento y diferencia: sustrae de la imagen original una copia desplazada de la misma. Así, es posible localizar y hacer resaltar los bordes existentes y que se quieran obtener según el modelo de kernel aplicado:

• Horizontal. • Vertical. • Horizontal/Vertical (diagonal).

Ing. Erick Nehring Página 12

Page 13: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

• Realce de bordes mediante Laplace: este tipo de filtros realza los bordes en todas

direcciones (los resultados que se obtienen pueden considerarse como una “suma” de los obtenidos tras aplicar todos los modelos del tipo anterior). En esta ocasión se trabaja con la segunda derivada, que permite obtener unos mejores resultados, a pesar del aumento del ruido que se produce en la imagen.

• Resalte de bordes con gradiente direccional: empleado para destacar y resaltar con mayor precisión los bordes que se localizan en una dirección determinada. Trabaja con los cambios de intensidad existentes entre píxeles contiguos.

• Detección de bordes y filtros de contorno (Prewitt y Sobel): al igual que los anteriores, se centra en las diferencias de intensidad que se dan pixel a pixel. Son utilizados para obtener los contornos de objetos y de este modo clasificar las formas existentes dentro de una imagen. Este tipo de filtros requieren un menor coste computacional.

Imagen Original y Resulta tras filtros Laplaciano y Sobel

I.6.- Últimos Avances Olor por Internet Ya es posible el olor por Internet Las tecnologías que permiten la difusión de olor a través de Internet ya son algo real, aunque existen pocas empresas que las fabriquen, estas apuestan por ofrecer servicios tangibles, es decir, que el internauta Estos dispositivos son muy adecuados para el sector de la perfumería, aunque su desarrollo se ha extendido a las imágenes, el correo electrónico, y otros dispositivos que son tanto la computadora personal como el teléfono móvil.En los negocios que se están creando en torno a Internet, hay empresas que apuestan por ofrecer servicios tangibles, es decir, que el internauta reciba a través de su computadora una sensación real más allá de la vista.Un ejemplo de ello son las compañías que están desarrollando una tecnología que permitirá transmitir olor a través de la Red. Las empresas pioneras de la investigación son la californiana DigiScents, TriSenx, de Georgia, AromaJet, de Texas y SenseIt Technologies de Israel, y sus dispositivos ya pueden adquirirse. Su funcionamiento se basa en dos aparatos principales, un sintetizador de olor, que es capaz de recoger la fragancia y

Ing. Erick Nehring Página 13

Page 14: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

transformarla en una señal digital. Ésta es recogida por un receptor que, al igual que una impresora, reproduce el olor original. Las personas que deseen percibir los olores de los sitios visitados podrán hacerlo conectando el "sintetizador de olores" a su computadora. En vez de tinta, este dispositivo estará cargado con aceites o esencias primarias, capaces de reproducir millones de fragancias diferentes. Audio y Tinta DigitalImagina que estás en una reunión, tomando algunos apuntes de la conversación en una aplicación que captura tu letra manuscrita, bocetos, y garabatos, como un "digital ink" (o tinta digital) y adjunta dichas notas a tu asistente electrónico. Luego, mientras revisas tu agenda, con solo presionar un botón puedes llamar a las notas, y cliquear sobre cualquier parte del texto para oir una reproducción grabada de la charla. La tinta digital junto con las grabaciones de audio ya existen. Lo único por lo que hay que esperar es que alguien las incluya dentro de tu agenda electrónica para que puedan utilizarse. Métodos de Detección de ContornosPara el análisis de imágenes digitales la extracción de los bordes de dichas imágenes resulta de gran utilidad. Podemos considerar que existe un borde cuando en un conjunto de puntos de la imagen aparece un cambio significativo en la intensidad luminosa (Sanfeliu, 87). Existen básicamente dos formas de obtener los bordes de una imagen, estas son:

• Método basado en las primeras derivadas. En este método primero se miden los cambios de intensidad en todos los puntos de la imagen, haciendo uso de la primera derivada, después se seleccionan como puntos de bordes aquellos puntos en los que el cambio de intensidad rebasa algún umbral preestablecido.

Una imagen puede representarse matemáticamente por una función f cuyo valor en el punto (x, y) representa la iluminación existente en ese punto, el cambio de iluminación de un punto en la imagen está representado gráficamente por la pendiente que allí tiene la superficie que representa a f, y normalmente resulta diferente según sea la dirección considerada, la dirección en la que el cambio es más intenso está dada por el vector gradiente en ese punto.

Ing. Erick Nehring Página 14

Page 15: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Alarmados por los avances y sobre todo por las aplicaciones que podría tener la Inteligencia Artificial (IA), un grupo de reconocidos científicos para analizar los riesgos en las investigaciones en IA, las cuales podrían tener como consecuencia una pérdida del control humano sobre la maquina y conducir a la humanidad a una catástrofe.En el estado actual de la tecnología ya se puede construir desde robots militares autónomos, como los que están diseñando en DARPA

II.1.- Aplicaciones Militares de la Inteligencia Artificial Creación del primer robot capaz de inmovilizar personas con un gas letal Una compañía norteamericana ha dotado a un tanque robot de capacidad para inmovilizar enemigos con un gas letal. Aunque en principio estas máquinas no estarán armadas con dispositivos letales ni tendrán licencia para matar, en diez años, según sus creadores, se contará con la capacidad tecnológica necesaria para el desarrollo de robots exterminadores, que se usarán en misiones policiales y militares, así como en las cárceles y en la lucha antiterrorista. Estas máquinas irán armadas y serán autónomas, y responderán a instrucciones como la de matar a cualquiera que les apunte. Carentes de sentimientos y de remordimientos, estos robots serán infinitamente valientes e inconscientes. Armamento InteligenteLos robots militares cuentan con algunas ventajas importantes, como que resisten mejor las condiciones extremas y sobreviven más tiempo en un fuego cruzado. Además, cuando se rompen pueden arreglarse y ahorrarían a cualquier ejército bajas humanas, y a los Estados el dinero de las pensiones por invalidez o muerte.

Ing. Erick Nehring Página 15

II.- Introducción

Page 16: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Los robots Swords son el desarrollo del modelo Talón combinado con el sistema de teledirección de armamentos Trap y han sido fabricados por la empresa Foster-Miller, de Massachusetts.Los Swords, sin embargo, no tienen autonomía de decisión para disparar y dependen de un soldado humano para activar sus dispositivos de tiro. Liberaration ya anticipaba entonces, por boca de John Pike, director de Global Security, que estos robots autónomos para disparar estarían disponibles en una década, una estimación coincidente con la que adelanta ahora The Guardian, aunque otros expertos citados por el diario francés dudan de que estos robots puedan estar operativos para el combate a medio plazo. HULC: Prototipo MilitarHULC (Human Universal Load Carrier) es el típico desarrollo militar, seguramente con un precio exorbitante, pero que podría acabar calando en el público con el paso de los años si llega a ser verdaderamente útil.El HULC es un completo sin ataduras, exoesqueleto antropomorfas hidráulica potencia que proporciona a los usuarios la capacidad de llevar cargas de hasta 200 libras por largos períodos de tiempo y sobre todos los terrenos. Su diseño flexible permite sentadillas profundas, se arrastra y el levantamiento de parte superior del cuerpo. No hay palanca de mando o mecanismo de control. Los sentidos exoesqueleto lo que los usuarios quieren hacer y dónde quieren ir. Esto aumenta su capacidad, fuerza y resistencia. Un micro-ordenador de a bordo asegura que el exoesqueleto se mueve en conjunto con el individuo. Su modularidad permite que los componentes principales que se intercambian en el campo. Además, su diseño único de ahorro de energía permite al usuario operar con la batería para misiones de larga duración. capacidad de carga de la HULC funciona incluso cuando el poder no está disponible. Aplicaciones Militares de la DARPADARPA, la siempre sorprendente agencia de investigación del Pentágono ha puesto en marcha un proyecto destinado a producir cámaras de vídeo robóticas capaces de seguir y filmar un objetivo sin la intervención humana. Esto será posible gracias al sistema de Inteligencia Artificial que piensan poner abordo de las mismas, que las habilitará para

Ing. Erick Nehring Página 16

Page 17: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

tomar las decisiones que generalmente toma el camarógrafo. DARPA busca construir un dispositivo inmune a las emociones o la fatiga, capaz de documentar las misiones del ejercito de forma automática. La Agencia de Investigación de Proyectos Avanzados de Defensa (DARPA por sus siglas en inglés), responsable de algunos de los proyectos más locos de los últimos años, se encuentra embarcada en una nueva aventura. Se trata del proyecto Mind's Eye -algo así como “ojo de la mente”- que busca dotar a las máquinas de una capacidad que actualmente existe sólo en los animales: la inteligencia visual. En efecto, los animales (y los seres humanos en particular) podemos realizar con facilidad una amplia gama de tareas visuales que al mejor sistema de Inteligencia Artificial (IA) le resultan completamente imposibles. Los seres humanos tenemos una habilidad intrínseca que nos permite “imaginarnos” sin dificultades dentro del entorno que nos rodea y visualizar escenas, objetos y acciones en nuestra mente. Habitualmente utilizamos esta habilidad para resolver problemas, y en DARPA creen que una máquina que fuese capaz de imitar esta característica de nuestra mente podría ser muy útil en una amplia gama de situaciones.

Cámara inteligente, montada en uno de estos helicópteros, serial muy útil.

El proyecto Mind's Eye pretende dotar a las máquinas de la capacidad de “aprender” de las imágenes obtenidas a través de una cámara y extraer conclusiones sobre lo que está “viendo”. Una distinción clave entre este proyecto y cualquier investigación anterior en el campo de la visión artificial es que, aunque este último ha hecho progresos continuos en el reconocimiento de una amplia gama de objetos y sus propiedades, ignoran por completo lo que podrían considerarse como “sustantivos” en la descripción de una escena. El enfoque de Mind's Eye consiste en añadir las bases perceptivas y cognitivas para permitir a la IA razonar sobre los verbos en esas escenas, tal como lo hace un humano. ¿Que prende conseguir DARPA con todo esto? Obviamente, algo que le resulte útil en el campo militar.

DARPA: Prótesis MentalLas prótesis han evolucionado de forma radical con el paso del tiempo, desde los primeros intentos con garras y cables de metal, hasta diseños complejos y avanzados hechos en

Ing. Erick Nehring Página 17

Page 18: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

fibra de carbono. Sin embargo, por más que pueda tener una resistencia excelente, una prótesis se mide por la capacidad que le entrega a su usuario en materia de utilidad y movimiento. Hasta ahora, los resultados han sido más o menos limitados. Aún se está lejos de restaurar la funcionalidad completa de un brazo humano, principalmente por la gigantesca cantidad de datos provenientes del cerebro que generan algo tan aparentemente sencillo como tomar una taza de té o girar un picaporte. Una solución que se ha estado estudiando durante los últimos años es la posibilidad de implantar interfaces de forma directa sobre la corteza cerebral, para obtener las lecturas suficientes que hagan funcionar a la prótesis. Hemos visto algunos ejemplos en el pasado, pero ahora, es el turno de nada menos que DARPA.De hecho, la agencia parece estar lista para comenzar con las pruebas, lo que significa que algunos pacientes seleccionados será sometidos a complejas cirugías cerebrales para instalar interfaces neurales compatibles. Los investigadores probarán el Miembro Prostético Modular en un ser humano, luego de recibir más de 34 millones de dólares para avanzar con el proyecto. La prótesis tendrá movimiento independiente para cada uno de sus dedos, y un ángulo de 22 grados de desplazamiento. Su peso total es de poco más de cuatro kilogramos, un peso muy similar al de un brazo humano real. La prótesis recibirá los datos necesarios provenientes de las interfaces neurales instaladas en el cerebro, una transmisión directa y lo suficientemente rápida como para ofrecer una capacidad de movimiento bastante amplia. Entre algunos de los objetivos, se espera que con la prótesis sea posible sostener algo común como una taza de café. EART (robot táctico energéticamente autónomo) Un robot autónomo, capaz de mantenerse funcionando a base de gasolina, energía solar, gas propano y -también- de la energía que obtenga al “alimentarse” de materia orgánica, afirman que podría cortar trozos de madera o restos de animales (humanos incluidos) para alimentarse. En DARPA aseguran que EATR podrá “mantenerse funcionando por sí mismo por el tiempo que la situación lo amerite.” Robot VoladorConsiste en el desarrollo de un pequeño robot volador que se propulsa y mantiene en el aire imitando con gran precisión el batir de las alas que se puede ver en insectos o en pájaros pequeños como los colibríes. Para misiones de espionaje y similares, pero el concepto de robot volador en miniatura con su propia fuente de energía y capaz de cargar material adicional (como podría ser un micrófono en miniatura) es lo suficientemente prometedor como para que DARPA haya decidido invertir más de dos millones de dólares en él. Aplicaciones de la Inteligencia Artificial a la Vida RealAl IA es también aplicable en las actividades realizadas en la vida real, veamos unos ejemplos de lo antes mencionado:

• Percepción• Visión

Ing. Erick Nehring Página 18

Page 19: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

• Habla• Lenguaje Natural• Comprensión• Generación• Traducción• Sentido Común• Juegos• Ajedrez• Matemáticas• Geométrica• Lógica• Calculo Integral

La Inteligencia Artificial, campo de la informática, no ha sido impasible a este avance y a finales de los años setenta aparecen los primeros trabajos en Inteligencia Artificial Distribuida.Su objeto es el estudio de modelos y técnicas para resolución de problemas en los que la distribución, sea física o funcional, sea inherente.En general, los sistemas IAD se caracterizan por una arquitectura formada por componentes inteligentes y modulares que interactúan de forma coordinada.

III.1.- Inteligencia Artificial Distribuida La inteligencia artificial distribuida (IAD) aparece en la década de los 80's como una nueva rama de la inteligencia artificial (IA) que tiene el fin de estudiar sistemas inteligentes formados por un conjunto de varios agentes, estos intenta resolver problemas en donde una conducta colectiva es más eficiente que una conducta individual, como lo estudia la inteligencia artificial que hace el análisis de un único agente que se encuentra en un ambiente no cambiante y que intenta resolver todo el problema con solo esta entidad. La Inteligencia artificial distribuida es un campo dedicado al estudio de las técnicas y el conocimiento necesario para la coordinación y distribución del conocimiento y las acciones en un entorno con múltiples agentes. La dimensión y la complejidad de los nuevos sistemas de información son cada vez mayores, los planes para encontrar una solución global ante cierto problema necesitan integrar soluciones de problemas más pequeños. Lo anterior se asemeja a la idea de “divide y vencerás”, en la cual los planes para resolver subproblemas son más simples y precisos. Alonso particulariza las razones que influyeron en el paso de la IA a la IAD en dos,

Ing. Erick Nehring Página 19

III.- Introducción

Page 20: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

las primeras son razones epistemológicas y las segundas razones son técnicas.Podemos distinguir dos áreas principales de desarrollo:

• Solución cooperativa de problemas distribuidos (SCPD): Estudia como unos conjuntos de módulos (o nodos) cooperan para dividir y compartir el conocimiento de un problema y en el desarrollo de la solución.

• Sistemas multiagentes (SMA): Estudia la coordinación de la conducta inteligente entre un conjunto de agentes inteligentes autónomos.

La principal diferencia entre ambas áreas estriba en la flexibilidad de la coordinación entre los agentes. En la SCPD, las interacciones y tareas que cada agente realiza, están prefijadas de antemano: hay un plan centralizado de resolución de problemas. Suele haber un miembro que ejerce un control global que centraliza los resultados parciales y datos entre el resto de los componentes del sistema. En contraposición en los SMA, los agentes tienen un grado de autonomía mayor y pueden decidir dinámicamente que interacciones son adecuadas, que tareas deben realizar, quien realiza cada tarea y, además, es posible mantener conocimiento que no es globalmente consistente, incluso los agentes pueden mantener objetivos globales diferentes. Esta definición permite distinguir entre sistemas que se centran en el comportamiento global, con una conducta fija de los agentes (SCPD) y sistemas que se centran en la conducta de los individuos que como resultado, obtenían una conducta del sistema (SMA). Vista como una sociedad, seria escoger entre un estado que planifica y regula las conductas de los individuos (que serán predecibles) o dejar que el sistema se resuelva por la libre iniciativa de los individuos. Los problemas básicos que estudia la IAD y que son comunes a todos los sistemas son:

• Como formular, describir, descomponer y asignar problemas y sintentetizar los resultados entre un grupo de agentes inteligentes.

• Como capacitar a los agentes para que se comuniquen e interactúen: que lenguajes de comunicación o protocolos deben utilizarse, que y cuando deben comunicarse, etc.

• Como asegurar que los agentes actúen coherentemente al tomar decisiones o realizar acciones, como acomodar los efectos globales de las decisiones locales y prevenir interacciones no deseadas.

• Como capacitar a los agentes para representar y razonar sobre acciones, planes y conocimientos de otros agentes para coordinarse; como razonar sobre el estado de su proceso de coordinación (inicio o terminación).

• Como reconocer y reconciliar puntos de vista e intenciones conflictivas entre un conjunto de agentes para coordinar sus acciones; como sintetizar los puntos de vista y los resultados.

• Como utilizar técnicas ingenieriles y desarrollar sistemas con IAD. Como desarrollar plataformas de SMA y metodologías de desarrollo con tenias de IAD.

Ing. Erick Nehring Página 20

Page 21: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Los anteriores problemas básicos que intenta atacar la IAD se solucionan mediante diferentes teorías que se ven reflejadas en distintas áreas de trabajo, las cuales se pueden descomponer en cuatro perspectivas.

Áreas de trabajo de la Inteligencia Artificial Distribuida.

III.2.- Colaboración entre AgentesDe forma inicial definimos que un agente inteligente es un componente de software o hardware que es capaz de actuar de forma autónoma para completar tareas de parte del usuario.Un agente inteligente es un agente que debe tener un comportamiento autónomo y flexible, donde flexible quiere decir que el agente debe ser reactivo, pro-activo y que tenga habilidades sociales.Existe una variedad de agentes, los cuales se pueden agrupar en las siguientes categorías:

• Agentes de Colaboración• Agentes de Interfaz• Agentes Móviles• Agentes de Información o Internet• Agentes Reactivos• Agentes Híbridos• Agentes Inteligentes

Por otra parte, un agente puede tener los siguientes atributos:

• Autonomía: puede operar sin la intervención directa de un humano o alguna especie de control sobre sus acciones y estado interno.

• Movilidad: capacidad de una entidad de software de poder migrar de ambiente en caso de ser necesario.

• Inteligencia: con esta habilidad deben ser capaces de reconocer eventos, determinar su significado y de ahí lleva a cabo acciones.

• BDI(belief, desire, intentions): creencias, deseos e intenciones del agente.• Reactividad: los agentes perciben su entorno.• Pro actividad: no solo deben responder hacia un estimulo del ambiente sino

también ser capaces de demostrar iniciativa.• Sociabilidad: puede tener una comunicación con otro agente o un ser humano.

Ing. Erick Nehring Página 21

Page 22: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

No existe un consenso sobre el grado de importancia de cada una de estas propiedades para un agente. Sin embargo, se puede afirmar que estas propiedades son las que distinguen a los agentes de meros programas. Los agentes inteligentes, se tienden a interpretar como agentes aislados basados en diferentes tipos de arquitecturas: arquitectura de subsunción, arquitectura de pizarra, arquitectura BDI y arquitecturas para la resolución genérica de problemas.Debido al carácter distribuido de los entornos y a la necesidad de cooperación entre los agentes sobre todo en la solución de problemas complejos, han ido surgiendo métodos que permiten la colaboración de varios agentes para lograr objetivos comunes. Para estos casos surgen los Sistemas Multi-Agentes (SMA),

Existen dos formas de abordar el problema por medio de:1. Agentes aislados.2. Sistemas Multi-Agentes (SMA)

La filosofía de trabajo de los Sistemas Multi-Agentes implica no sólo la comunicación entre agente sino también lograr una actuación coordinada sobre el entorno. Este hecho aumenta la complejidad del desarrollo de los SMA, ya que obliga a realizar un estudio en todos sus detalles del entorno para detectar que acciones realizadas por un agente pueden afectar a otro agente y por supuesto al entorno en sí. III.3.- Arquitecturas para agentes inteligentes Una arquitectura permite descomponer un sistema computacional en componentes más pequeños y determinar cómo es la relación entres estos. Una arquitectura para agentes en particular permite descomponer un sistema de agentes, y determinar cómo deben interactuar entre ellos y con el ambiente.Se distinguen tres arquitecturas diferentes que se clasifican según el modelo de razonamiento que utilizan:

• Arquitecturas deliberativas: Una arquitectura deliberativa es aquella en la que el comportamiento y conocimiento de los agentes están explícitamente representados mediante un modelo simbólico. El modelo simbólico consta generalmente de un conjunto de símbolos físicos, es decir un conjunto físicamente realizable de entidades y estructuras. Además de esto en la arquitectura deliberativa las decisiones de los agentes son hechas mediante razonamiento lógico o seudo lógico.

• Arquitecturas reactivas: Una arquitectura reactiva es aquella que no incluye alguna clase central de modelo simbólico del mundo y no usa un razonamiento simbólico complejo. Las acciones que toman sus entidades se basan en una asignación de lectura del medio ambiente con una operación a efectuar. Esta clase de arquitectura también es llamada alternativa, ya que surgió como una opción a las arquitecturas deliberativas que presentan problemas que en ocasiones no

Ing. Erick Nehring Página 22

Page 23: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

se pueden solucionar y además se aleja de la representación del conocimiento mediante un modelo simbólico.

• Arquitecturas Híbridas: Los investigadores sugieren que ninguna de las dos arquitecturas vistas anteriormente es del todo apropiada para la construcción de agentes, por eso se plantean soluciones de arquitecturas híbridas en la cual se integran los dos métodos (deliberativa y reactiva).

III.4.- Teoría de los Juegos Un juego se considera la competencia entre dos sistemas.La teoría de los juegos se aplica sólo a algunos tipos de conflictos (llamados juegos) que implican la disputa de intereses entre dos o más participantes, y en los que cada parte, en determinados momentos, puede emprender diversas acciones posibles, delimitadas por las reglas del juego. El número de estrategias posibles es finito y, por tanto, enumerable. Cada una de ellas describe lo que se hará en cualquier situación. Conocidas las estrategias posibles de los jugadores, pueden estimarse todos los resultados factibles.La Teoría de los juegos sólo es posible aplicarla cuando:

• El número de participantes es finito.• Cada participante dispone de un número finito de cursos posibles de acción. • Cada participante conoce todos los cursos de acción a su alcance.• Cada participante conoce todos los cursos de acción al alcance del adversario aunque

desconozca cuál curso de acción escogerá éste. • Dos partes intervienen cada vez y el juego es “Suma-cero”, es decir, puramente

competitivo: Los beneficios de un jugador son las pérdidas del otro y viceversa.

La teoría de juegos es un área de la matemática aplicada que utiliza modelos para estudiar interacciones en estructuras formalizadas de incentivos (los llamados juegos). Sus investigadores estudian las estrategias óptimas así como el comportamiento previsto y observado de individuos en juegos. Tipos de interacción aparentemente distintos pueden, en realidad, presentar estructuras de incentivos similares y, por lo tanto, representar conjuntamente un mismo juego.Desarrollada en sus comienzos como una herramienta para entender el comportamiento de la economía, la teoría de juegos se usa actualmente en muchos campos, desde la biología a la filosofía. Experimentó un crecimiento sustancial y se formalizó por primera vez a partir de los trabajos de John von Neumann y Oskar Morgenstern, antes y durante la Guerra Fría, debido sobre todo a su aplicación a la estrategia militar en particular a causa del concepto de destrucción mutua garantizada. Desde los setentas, la teoría de juegos se ha aplicado a la conducta animal, incluyendo el desarrollo de las especies por la selección natural. A raíz de juegos como el dilema del prisionero, en los que el egoísmo generalizado perjudica a los jugadores, la teoría de juegos se ha usado en ciencia política, ética y filosofía. Finalmente, ha atraído también la atención de los investigadores en informática, usándose en inteligencia artificial y cibernética.

Ing. Erick Nehring Página 23

Page 24: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Los juegos han sido estudiados a lo largo de la historia formulándose incluso modelos matemáticos que permitiesen desarrollarlos.En un principio, estos juegos fueron estudiados por una rama de la ciencia denominada Investigación Operativa (IO), la cual proporcionaba técnicas que solopodrían ser aplicables si existía un procedimiento finito. Con el surgimiento de la Inteligencia Artificial se crean nuevos algoritmos de búsquedas que permiten desarrollar soluciones dentro de procedimientos no finitos. Uno de estos algoritmos es el algoritmo de Poda Alpha-Beta que es muy usado en la teoría de Juegos y que permite encontrar soluciones dentro de un campo de búsquedas infinito. Sin embargo para poder entender mejor esta técnica, es necesario y conveniente primero entender la técnica de búsqueda Minimax, que es una técnica que se centra en la resolución de problemas de búsquedas, basadas en la alternación de dos entes o agentes a los cuales se les denominan Min y Max. Estrategia Mini MaxLa estrategia minimax es una estrategia de búsqueda exhaustiva mediante un árbol de búsqueda. Este algoritmo considera el caso de 2 participantes a los que se les denomina Max y Min.El que inicia el juego es Max y existe una alternancia en la participación del juego. Por lo tanto lo que tiene que hacer Max, es determinar la secuencia de jugadas que conduzca a un estado Terminal ganador o favorecedor.

Figura que muestra el árbol generado por el proceso de búsqueda minimax, por profundidad, en el juego de tres en raya.

Ing. Erick Nehring Página 24

Page 25: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Figura que muestra el desarrollo general e la secuencia de la técnica de minimax.

Entrada:- Nodo N.Salida- Valor de utilidad de NSi N es nodo HojaValorUtilidad ← función de utilidadDe lo contrarioPara cada nodoHijo Hi de N hacervalorUtilidadi ← MiniMaxR(Hi)Fin paraSi N es maxvalorUtilidad ← max(H1,H2,…Hn)De lo contrariovalorUtilidad ← min(H1,H2,…Hn)Devolver (valorUtilidad)Algoritmo 1. Algoritmo recursivo de la técnica Minimax Estrategia de PODA ALPHA – BETAEste algoritmo es el más utilizado en las aplicaciones referidas a juegos, dada su excepcional utilidad en el aumento de la velocidad de la búsqueda sin producir pérdida de la información. Es una extensión en particular del algoritmo de Búsqueda Minimax en juegos de dos contrincantes.Cada vez que se evalúa un nodo u hoja, el algoritmo determina s los nuevos hijos generados pueden generar una mejor utilidad de la que ya posee el nodo estudiado y si afecta al nodo padre. De no ser así, eso significa que seguir analizando esa rama es desperdiciara recursos como tiempo y espacio, por lo cual no se sigue generando y simplemente se le poda, de allí el nombre. El algoritmo muestra como es el desarrollo para una búsqueda por medio de la Poda Alpha –Beta, se detalla las entradas. Para ingresar al algoritmo, se necesita ingresar el nodo a ser evaluado, del que se obtendrá su utilidad, así como la utilidad del padre para evaluar si es que la nueva utilidad afecta o no al nodo padre. De no ser así, se procederá a podar la rama.Una vez podada la rama, la nueva utilidad será la última en ser registrada o actualizada. Esto se da mediante la variable fNodo, que contiene la función de utilidad del nodo ingresado. Algoritmo Poda Alpha

Ing. Erick Nehring Página 25

Page 26: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Entrada:- Nodo, fNodoPSalida:- fNodoSi nodo es MAXfNodo ← -infDe lo contrariofNodo ← inffin siSi nodo es hojafNodo ← utilidadNodo(nodo)de lo contrariopara cada ficha fi que se pueda moverpara cada accion aj de finodoH ← crear nodo con ainodoH ← PodaAB(nodoH,fNodo)si nodo es MAXsi fHijo > fNodofNodo ← fHijosi fNodo >=fNodoPeliminar fNodoretornar null;fin sifin sifin sisi nodo es MINsi fHijo < fNodofNodo ← fHijosi fNodo =<fNodoPeliminar fNodoretornar null;fin sifin sifin sifin parafin pararetornar nodo;fin si Juego de Ajedrez

Ing. Erick Nehring Página 26

Page 27: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

El juego del ajedrez es un juego adecuado para tratarlo mediante técnicas de IA debido a que tiene claramente definidos el objetivo que se quiere alcanzar (meta) y los medios para llegar (movimientos permitidos).En este juego, el programa en todo momento debe conocer la configuración del tablero para la maquina poder tomar la decisión adecuada (jugada), que le permita ganar. Para ello necesita de gran capacidad de almacenamiento de información, utilizando estructuras que le permitan llegar a conclusiones coherentes.

Ing. Erick Nehring Página 27

Page 28: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

El concepto de síntesis de voz ha existido durante siglos, pero sólo en las últimas décadas ha convertido el proceso en disponible al público en general.Los primeros sintetizadores de voz sonaban muy robóticos y eran a menudo inteligibles a duras penas. Sin embargo, la calidad del habla sintetizada ha mejorado en gran medida, y el resultado de los sistemas de síntesis contemporáneos es, en ocasiones, indistinguible del habla humana real.

IV.1.- Sintetizado de Voz por medio de un agente inteligente ¿Que es un sintetizador de voz?El sintetizador de voz es el dispositivo que se utiliza para convertir caracteres de texto en sonidos que aproximan el sonido de la voz humana. Dependiendo del nivel de sofisticación del dispositivo individual, los sonidos producidos pueden ser algo tiesa y suena artificial, o un sonido muy mucho como la voz de una persona real. Síntesis de hablaLa voz sintética es una voz artificial (no pregrabada), generada mediante un proceso de sintetización del habla.La síntesis de habla es la producción artificial de habla humana. Un sistema usado con este propósito recibe el nombre de sintetizador de habla y puede llevarse a cabo en software o en hardware. La síntesis de voz se llama a menudo en inglés text-to-speech (TTS), en referencia a su capacidad de convertir texto en habla. Sin embargo, hay sistemas que en lugar de producir voz a partir de texto lo hacen a partir de representación lingüística simbólica en habla.La calidad de una voz sintética vendrá dada por:

• Su inteligibilidad: ¿con qué facilidad/dificultad es entendida?• Su naturalidad: ¿en qué medida se asemeja a la voz real de un humano?

Visión general de la tecnología de síntesis de vozUn sistema texto a voz se compone de dos partes: un front-end y un back-end. A grandes rasgos, el front-end toma como entrada texto y produce una representación lingüística fonética. El back-end toma como entrada la representación lingüística simbólica y produce una forma de onda sintetizada.El front-end desempeña dos tareas principales. Primero, toma el texto y convierte partes problemáticas como números y abreviaturas en palabras equivalentes. Este proceso se llama a menudo normalización de texto o pre procesado. Entonces asigna una transcripción fonética a cada palabra, y divide y marca el texto en varias unidades prosódicas, como frases y oraciones. El proceso de asignar transcripciones fonéticas a las palabras recibe el nombre de conversión texto a fonema (TTP en inglés) o grafema

Ing. Erick Nehring Página 28

IV.- Introducción

Page 29: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

a fonema (GTP en inglés). La combinación de transcripciones fonéticas e información prosódica constituye la representación lingüística fonética.La otra parte, el back-end, toma la representación lingüística simbólica y la convierte en sonido. El back-end se llama a menudo sintetizador. HistoriaMucho antes del desarrollo del procesado de señal moderno, los investigadores de la voz intentaron crear máquinas que produjesen habla humana. El Papa Silvestre II (1003), Alberto Magno (1198-1280) y Roger Bacon (1214-1294) crearon ejemplos tempranos de 'cabezas parlantes'.En 1779, el científico danés Christian Gottlieb Kratzenstein, que trabajaba en esa época en la Academia Rusa de las Ciencias, construyó modelos del tracto vocal que podría producir las cinco vocales largas (a, e, i, o, u). Wolfgang von Kempelen de Viena, Austria, describió en su obra Mechanismus der menschlichen Sprache nebst der Beschreibung seiner sprechenden Maschine ("mecanismo del habla humana con descripción de su máquina parlante", J.B. Degen, Wien) una máquina accionada con un fuelle. Esta máquina tenía, además, modelos de la lengua y los labios, para producir consonantes, así como vocales. En 1837 Charles Wheatstone produjo una 'máquina parlante' basada en el diseño de von Kempelen, y en 1857 M. Faber construyó la máquina 'Euphonia'. El diseño de Wheatstone fue resucitado en 1923 por Paget.En los años 30, los laboratorios Bell Labs desarrollaron el VOCODER, un analizador y sintetizador del habla operado por teclado que era claramente inteligible. Homer Dudley refinó este dispositivo y creo VODER, que exhibió en la Exposición Universal de Nueva York de 1939.A pesar del éxito de los sintetizadores puramente electrónicos, sigue investigándose en sintetizadores mecánicos para su uso en robots humanoides. Incluso el mejor sintetizador electrónico está limitado por la calidad del transductor que produce el sonido, así que en un robot un sintetizador mecánico podría ser capaz de producir un sonido más natural que un altavoz pequeño.El primer sistema de síntesis computarizado fue creado a final de la década de 1950 y el primer sistema completo texto a voz se finalizó en 1968. Desde entonces se han producido muchos avances en las tecnologías usadas para sintetizar voz.

Tecnologías de síntesisLas dos características utilizadas para describir la calidad de un sintetizador de voz son la naturalidad e inteligibilidad. La naturalidad de un sintetizador de voz se refiere a hasta qué punto suena como la voz de una persona real. La inteligibilidad de un sintetizador se refiere a la facilidad de la salida de poder ser entendida. El sintetizador ideal debe de ser a la vez natural e inteligible, y cada tecnología intenta conseguir el máximo de ambas. Algunas de las tecnologías son mejores en naturalidad o en inteligibilidad y las metas de la síntesis determinan a menudo qué aproximación debe seguirse. Hay dos tecnologías principales usadas para generar habla sintética: síntesis concatenativa y síntesis de

Ing. Erick Nehring Página 29

Page 30: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

formantes.Síntesis concatenativa: se basa en la concatenación de segmentos de voz grabados. Generalmente, la síntesis concatenativa produce los resultados más naturales. Sin embargo, las diferencias entre la variación natural del habla y las técnicas automatizadas de segmentación de formas de onda resultan en defectos audibles, que conllevan una pérdida de naturalidad.Hay tres tipos básicos de síntesis concatenativa:

1. Síntesis por selección de unidades: utiliza una base de datos de voz grabada (más de una hora de habla grabada). Durante la creación de la base de datos, el habla se segmenta en algunas o todas de las siguientes unidades: fonemas, sílabas, palabras, frases y oraciones. Normalmente, la división en segmentos se realiza usando un reconocedor de voz modificado para forzar su alineamiento con un texto conocido. Después se corrige manualmente, usando representaciones como la forma de onda y el espectrograma. Se crea un índice de las unidades en la base de datos basada en parámetros acústicos de la segmentación como la frecuencia fundamental, el pitch, la duración, la posición en la sílaba y los fonemas vecinos. En tiempo de ejecución, el objetivo deseado se crea determinando la mejor cadena de candidatos de la base de datos (selección de unidades). Este proceso se logra típicamente usando un árbol de decisión especialmente ponderado.La selección de unidades da la máxima naturalidad debido al hecho de que no aplica mucho procesamiento digital de señales al habla grabada, lo que a menudo hace que el sonido grabado suene menos natural, aunque algunos sistemas usan un poco de procesado de señal en la concatenación para suavizar las formas de onda. De hecho, la salida de la mejor selección de unidades es a menudo indistinguible de la voz humana real, especialmente en contextos en los que el sistema ha sido adaptado. Por ejemplo, un sistema de síntesis de voz para dar informaciones de vuelos puede ganar en naturalidad si la base de datos fue construida a base grabaciones de informaciones de vuelos, pues será más probable que aparezcan unidades apropiadas e incluso cadenas enteras en la base de datos. Sin embargo, la máxima naturalidad a menudo requiere que la base de datos sea muy amplia, llegando en algunos sistemas a los gigabytes de datos grabados.

2. Síntesis de difonos: usa una base de datos mínima conteniendo todos los difonos que pueden aparecer en un lenguaje dado. El número de difonos depende de la fonotáctica del lenguaje: el español tiene unos 800 difonos, el alemán unos 2500. En la síntesis de difonos, la base de datos contiene un sólo ejemplo de cada difono. En tiempo de ejecución, la prosodia de una oración se sobreimpone a estas unidades mínimas mediante procesamiento digital de señales, como codificación lineal predictiva, PSOLA o MBROLA.La calidad del habla resultante es generalmente peor que la obtenida acción de unidades pero más natural que la obtenida mediante sintetización de formantes. La síntesis difonos adolece de los defectos de la síntesis concatenativa y suena robótica como la síntesis de formantes, y tiene pocas ventajas respecto a estas técnicas aparte del pequeño tamaño de la base de datos, así que su uso en

Ing. Erick Nehring Página 30

Page 31: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

aplicaciones comerciales experimenta un declive, aunque continúa usándose en investigación porque hay unas cuantas implementaciones libres.

3. Síntesis específica para un dominio: concatena palabras y frases grabadas para crear salidas completas. Se usa en aplicaciones donde la variedad de textos que el sistema puede producir está limitada a un particular dominio, como anuncios de salidas de trenes o información meteorológica.Esta tecnología es muy sencilla de implementar, y se ha usado comercialmente durante largo tiempo: es la tecnología usada por aparatos como relojes y calculadoras parlantes. La naturalidad de estos sistemas puede ser muy grande, porque la variedad de oraciones está limitada y corresponde a la entonación y la prosodia de las grabaciones originales. Sin embargo, al estar limitados a unas ciertas frases y palabras de la base de datos, no son de propósito general y sólo pueden sintetizar la combinación de palabras y frases para los que fueron diseñados.

Síntesis de formantes: no usa muestras de habla humana en tiempo de ejecución. En lugar de eso, la salida se crea usando un modelo acústico. Parámetros como la frecuencia fundamental y los niveles de ruido se varían durante el tiempo para crear una forma de onda o habla artificial. Este método se conoce también como síntesis basada en reglas pero algunos aducen que muchos sistemas concatenativos usan componentes basados en reglas para algunas partes de sus sistemas, como el front-end, así que el término no es suficientemente específico.Muchos sistemas basados en síntesis de formantes generan habla robótica y de apariencia artificial, y la salida nunca se podría confundir con la voz humana. Sin embargo, la naturalidad máxima no es siempre la meta de un sintetizador de voz, y estos sistemas tienen algunas ventajas sobre los sistemas concatenativos.La síntesis de formantes puede ser muy inteligible, incluso a altas velocidades, evitando los defectos acústicos que pueden aparecer con frecuencia en los sistemas concatenativos. La síntesis de voz de alta velocidad es a menudo usada por los discapacitados visuales para utilizar computadores con fluidez. Por otra parte, los sintetizadores de formantes son a menudo programas más pequeños que los sistemas concatenativos porque no necesitan una base de datos de muestras de voz grabada. De esta forma, pueden usarse en sistemas embebidos, donde la memoria y la capacidad de proceso son a menudo exiguas. Por último, dado que los sistemas basados en formantes tienen un control total sobre todos los aspectos del habla producida, pueden incorporar una amplia variedad de tipos de entonaciones, que no sólo comprendan preguntas y enunciaciones.Otros métodos de síntesis

• La síntesis articulatoria ha sido un método de interés puramente académico hasta hace poco. Se basa en modelos computacionales del tracto vocal y el proceso de articulación. Pocos de los modelos son suficientemente avanzados o eficientes computacionalmente para ser usados en sistemas comerciales de síntesis de voz. Una excepción notable es el sistema basado en NeXT, originalmente desarrollado

Ing. Erick Nehring Página 31

Page 32: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

y comercializado por Trillium Sound Research Inc, que pasó más tarde a tener una licencia GPL y se continuó como gnuspeech, siendo un proyecto GNU. El software original de NeXT y versiones del software para Mac OS/X y Linux GNUstep están disponibles e junto a manuales y documentos relevantes a los fundamentos teóricos del trabajo. El sistema, que fue comercializado por primera vez en 1994, proporciona una conversión texto a voz articulatoria completa mediante una analogía de guía de onda o línea de transmisión de los tractos vocal y nasal humanos, controlados por el Modelos de Región Distintiva de Carré que está basado en el trabajo de Gunnar Fant y otros del laboratorio Stockholm Specch Technology Lab del Royal Institute of Technology sobre el análisis de la sensibilidad de formantes. Este trabajo mostró que los formantes en un tubo resonante pueden ser controlados por sólo ocho parámetros que corresponden a los articuladores disponibles en el tracto vocal humano natural.

• La Síntesis híbrida aúna aspectos de las síntesis concatenativa y de formantes para minimizar los defectos acústicos cuando se concatenan segmentos.

• La Síntesis basada en HMM es un método de síntesis basado en Modelos ocultos de Márkov (HMM en inglés). En este sistema, el habla espectro de frecuencias (tracto vocal), frecuencia fundamental (fuente vocal), y la duración (prosodia) se modelan simultáneamente por modelos ocultos de Márkov. Las formas de onda se generan desde estos modelos ocultos de Márkov mediante el criterio de máxima verosimilitud.

Desafíos del front-end

• Desafíos de la normalización de textoEl proceso de normalizar texto es pocas veces simple. Los textos están llenos de homógrafos, números y abreviaturas que tienen que ser transformados en una representación fonética.Por supuesto, en lenguas donde la correspondencia entre el texto escrito y su equivalente fonético es poca (inglés) o ninguna (mandarín), la creación de estos sistemas se complica.Muchos sistemas de texto a voz no generan representaciones semánticas de los textos de entradas, pues los sistemas para hacerlo no son fiables o computacionalmente efectivos. Como resultado, se usan varias técnicas heurísticas para estimar la manera correcta de desambiguar homógrafos, como buscar palabras vecinas y usar estadísticas sobre la frecuencia de aparición de las palabras.Decidir cómo convertir números en palabras es otro problema que tienen que solucionar los sintetizadores de voz. Es un desafío bastante simple programar un sistema que convierta números en palabras, como por ejemplo transformar 1325 en "mil trescientos veinticinco". Sin embargo, los números aparecen en diferentes contextos, y 1325 puede ser un ordinal, "uno tres dos cinco" si son los últimos dígitos de un DNI o "trece veinticinco" si es un número de teléfono. A menudo un sistema de síntesis de voz puede inferir cómo expandir un número en función de las palabras o números vecinos y la puntuación, y algunos sistemas proporcionan un sistema para especificar el tipo de

Ing. Erick Nehring Página 32

Page 33: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

contexto si es ambiguo.De la misma forma, abreviaturas como "etc." se pueden transformar fácilmente en "et cétera", pero a menudo las abreviaturas puede ser ambiguas. Por ejemplo la abreviatura "am" puede ser "ante meridiam" en el ejemplo: "El vuelo aterrizará a las 11 am" o puede ser "modulación de amplitud" o simplemente "a eme" en el ejemplo "Nos puede encontrar en la sintonía 1425 am". Los sistemas con front end inteligentes pueden hacer estimaciones adecuadas acerca de cómo tratar abreviaturas ambiguas, mientras que otros pueden hacer lo mismo en todos los casos, dando resultados en ocasiones cómicos.

• Desafíos de los sistemas Texto a fonemaLos sintetizadores de voz usan dos aproximaciones básicas al problema de determinar la pronunciación de una palabra basándose en su pronunciación, un proceso que a menudo recibe el nombre de conversión texto a fonema o grafema a fonema, dado que fonema es el término usado por los lingüistas para describir sonidos distintivos en una lengua.La aproximación más simple a este problema es la basada en diccionario, donde se almacena en el programa un gran diccionario que contiene todas las palabras de la lengua y su correcta pronunciación. Determinar la pronunciación correcta de cada palabra consiste en buscar cada palabra en el diccionario y reemplazar el texto con la pronunciación especificada en el diccionario.La otra aproximación para convertir texto en fonemas es la aproximación basada en reglas, donde dichas reglas para la pronunciación de las palabras se aplican a palabras para extraer sus pronunciaciones basadas en su forma escrita.Cada aproximación tiene ventajas y desventajas. La técnica basada en diccionarios tiene como ventajas ser rápida y precisa, pero falla completamente si una palabra dada no aparece en el diccionario, y a medida que crece el diccionario crecen los requerimientos de memoria del sistema de síntesis. Por otra parte, la técnica basada en reglas funciona con cualquier entrada, pero la complejidad de las reglas crece sustancialmente a medida que se van teniendo en cuenta ortografías y pronunciaciones irregulares. Como resultado, casi cualquier sintetizador de voz usa una combinación de las dos técnicas.Algunos idiomas, como el español, tienen un sistema de escritura muy regular y la predicción de la pronunciación de palabras basada en deletreos es casi siempre correcta. Los sistemas de síntesis de voz para este tipo de lenguajes generalmente usan un enfoque basado en reglas como el enfoque central para la conversión texto-fonema y auxiliándose de diccionarios pequeños para algunas palabras de origen extranjero cuya pronunciación no se deduce de la escritura. En otros como el inglés, dado que se trata de sistemas muy irregulares en su escritura, el enfoque se basa principalmente en diccionarios y sólo para palabras no usuales se basa en reglas. Problemas de la voz sintética

• Rechazo por parte de los usuarios que no le perdonan su falta de naturalidad y su timbre robótico.

Ing. Erick Nehring Página 33

Page 34: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

• Los CTV (Conversores de Texto-Voz) producen voz, generalmente, voz de hombre.

Hay varias razones que pueden explicar este hecho:• Una explicación sociológica obvia es que, hasta hace relativamente poco, las

personas que trabajaban en los laboratorios eran hombres y éstos empleaban su propia voz durante los experimentos.

• La voz masculina ofrece mejor calidad sonora que la femenina. Esto se debe a que la frecuencia fundamental (primer armónico) de la mujer es bastante más alta que la de hombre.

• La forma de onda en la voz de mujer tiene un componente de oscilación no periódica, que viene dado por una mayor frecuencia en la aspiración, que resulta más notable que la del hombre. Este componente de la excitación glotal es difícil de modelar adecuadamente.

En los últimos tiempos han aparecido sintetizadores que utilizan voz de mujer de calidad aceptable, sin embargo, siguen sin alcanzar la calidad ofrecida por un sintetizador de similares características que emplee voz masculina. Lenguajes de etiquetas para síntesis de vozHay un cierto número de lenguaje de etiquetas para la interpretación de texto como voz de acuerdo con XML. El más reciente es SSML, propuesto por el W3C, que tiene actualmente categoría de borrador. Otros lenguajes de etiquetas de aparición anterior son SABLE y JSML. Aunque cada uno fue propuesto como un nuevo estándar, ninguno ha sido ampliamente adoptado.Los lenguajes de etiquetas para síntesis de voz no son lenguajes de etiquetas para diálogo como VoiceXML, que incluye, además de etiquetas de conversión texto a voz, etiquetas relativas a reconocimiento de voz y control de diálogo.

Ing. Erick Nehring Página 34

Page 35: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

El reconocimiento facial se ha convertido en los últimos años en una área de investigación activa que abarca diversas disciplinas, como procesado de imágenes, reconocimiento de patrones, visión por ordenador y redes neuronales. Involucra tanto a investigadores del área de informática como a neurocientíficos y psicólogos.Se podría considerar también dentro del campo de reconocimiento de objetos, donde la cara es un objeto tridimensional sujeto a variaciones de iluminación, pose, etc., y ha de ser identificada basada en su proyección 2D (excepto cuando se utilizan técnicas 3D).

V.1.- Reconocimiento Facial El sistema de reconocimiento facial es una aplicación dirigida por ordenador que identifica automáticamente a una persona en una imagen digital. Esto es posible mediante un análisis de las características faciales del sujeto extraídas de la imagen o de un fotograma clave de una fuente de video, y comparándolas con una base de datos.El objetivo de un sistema de reconocimiento facial es, generalmente, el siguiente: dada una imagen de una cara "desconocida", o imagen de test, encontrar una imagen de la misma cara en un conjunto de imágenes "conocidas", o imágenes de entrenamiento. La gran dificultad añadida es la de conseguir que este proceso se pueda realizar en tiempo real. El sistema identificará las caras presentes en imágenes o videos automáticamente. Puede operar en dos modos:

• Verificación o autentificación de caras: compara una imagen de la cara con otra imagen con la cara de la que queremos saber la identidad. El sistema confirmará o rechazará la identidad de la cara.

• Identificación o reconocimiento de caras: compara la imagen de una cara desconocida con todas las imágenes de caras conocidas que se encuentran en la base de datos para determinar su identidad.

Por su naturaleza amigable, este tipo de sistemas siguen siendo atractivos a pesar de la existencia de otros métodos muy fiables de idenficiación personal biométricos, como el análisis de huellas dactilares y el reconocimiento del iris. Aplicaciones ActualesSe utiliza principalmente en sistemas de seguridad para el reconocimiento de usuarios. En estos sistemas se utiliza un lector que define las características del rostro, y cuando este solicita el acceso, se verifica comparando los datos obtenidos con la base de datos. Sin embargo, estos sistemas no son útiles a largo plazo ya que, a medida que pasan los años, los rasgos faciales varían y al solicitar el acceso ya no coinciden con la imagen en la base de datos. Para solucionar este problema se puede utilizar un algoritmo que interprete el paso de los años, aunque igualmente sigue sin ser del todo fiable), o bien, renovar frecuentemente la base de datos.

Ing. Erick Nehring Página 35

V.- Introducción

Page 36: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

También se utiliza en aplicaciones de interacción persona-ordenador, en gestión multimedia, y en software como Google's Picasa, Apple iPhoto, Sony's Picture Motion Browser (PMB), Facebook y Asus Smart Logon. Posibles Aplicaciones FuturasUna aplicación de reconocimiento facial futura se basa en establecer esta técnica a nivel de usuario. Por ejemplo, en un supermercado o en un establecimiento pequeño se podría llevar a cabo un control sobre quien abre la caja registradora mediante un reconocimiento facial previo, de esta manera también se pueden evitar intentos de robo ya que, al no reconocer el rostro, la caja permanecería cerrada. Un caso más extremo sería en los cajeros automáticos donde, para poder operar, fuese necesario un reconocimiento facial en vez del actual PIN. FuncionamientoEl proceso consta de cuatro módulos principales:

• Detección de la cara: detecta que hay una cara en la imagen, sin identificarla. Si se trata de un video, también podemos hacer un seguimiento de la cara. Proporciona la localización y la escala a la que encontramos la cara.

• Alineación de la cara: localiza las componentes de la cara y, mediante transformaciones geométricas, la normaliza respecto propiedades geométricas, como el tamaño y la pose, y fotométricas, como la iluminación. Para normalizar las imágenes de caras, se pueden seguir diferentes reglas, como la distancia entre las pupilas, la posición de la nariz, o la distancia entre las comisuras de los labios. También se debe definir el tamaño de las imágenes y la gama de colores. Normalmente, para disminuir la carga computacional del sistema, se acostumbra a utilizar imágenes pequeñas en escala de grises. A veces también se realiza una ecualización del histograma.

• Extracción de características: proporciona información para distinguir entre las caras de diferentes personas según variaciones geométricas o fotométricas.

• Reconocimiento: el vector de características extraído se compara con los vectores de características extraídos de las caras de la base de datos. Si encuentra uno con un

Ing. Erick Nehring Página 36

Page 37: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

porcentaje elevado de similitud, nos devuelve la identidad de la cara; si no, nos indica que es una cara desconocida.

Los resultados obtenidos dependen de las características extraídas para representar el patrón de la cara y de los métodos de clasificación utilizados para distinguir los rostros, pero para extraer estas características apropiadamente, hace falta localizar y normalizar la cara adecuadamente. TécnicasLos métodos de reconocimiento facial tradicional se pueden dividir en dos grandes grupos:

• HolísticosLos primeros 10 a) Eigenfaces, b) Fisherfaces, y c) Laplacianfaces calculados a partir de imágenes de caras de la base de datos de YALEReconocen según toda la imagen facial. Son métodos basados en correlación. El esquema de clasificación más simple, donde se utilizan modelos de comparación para el reconocimiento, es el template matching. El problema del template matching es que ha de comparar muchas características (para él, un pixel es una característica), y si tenemos en cuenta que en la base de datos encontramos M personas, con N imágenes por persona, observamos que este método no se puede implementar en tiempo real. Por lo tanto, se trabaja con otros métodos que decorrelacionan las características entre sí para conseguir reducir el espacio facial en un número menor de coeficientes, que tengan un alto poder discriminatorio entre las personas. Es lo que se denomina subespacio facial. Ejemplos de métodos que trabajan a partir de subespacios son el Análisis de Componentes Principales (PCA - Principal Component Analysis) a partir de eigenfaces, el Análisis Linear Discriminant (LDA - Linear Discriminant Analysis) o el Discriminante Linear de Fisher(FLD – Fisher Linear Discriminant a partir de fisherfaces.La técnica PCA se considera una de las que proporciona un mayor rendimiento. Funciona proyectando las imágenes faciales sobre un espacio de facciones que engloba las variaciones significativas entre las imágenes faciales conocidas. Las facciones significativas se llaman eigenfaces, ya que son los eigenvectors, o componentes principales, del conjunto de caras. La proyección caracteriza la imagen facial de un individuo como la suma de los diferentes pesos de todas las facciones y, de la misma manera, para reconocer una imagen facial determinada sólo hará falta comparar estos pesos con aquellos de los individuos conocidos previamente. No tiene en cuenta la información de qué imágenes pertenecen a un mismo individuo. Es muy sensible a cambios en las condiciones de iluminación en diferentes imágenes de una misma persona.El método LDA permite utilizar la información entre miembros de la misma clase (imágenes de la misma persona) para desarrollar un conjunto de vectores de características donde las variaciones entre las diferentes caras se enfatizan mientras que los cambios debidos a la iluminación, expresión facial y orientación de la cara no. Es decir, maximiza la variancia de las muestras entre clases, y la minimiza entre muestras de la misma clase.

Ing. Erick Nehring Página 37

Page 38: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

La técnica FLD es equivalente al LDA. Los resultados obtenidos con FLD son bastante mejores que los que podemos obtener con PCA, sobre todo cuando las condiciones lumínicas varían entre el conjunto de imágenes de entrenamiento y de test, y también con cambios de expresión facial, dando más peso a zonas como los ojos, la nariz o las mejillas que a la boca, porque son zonas más invariables en las diferentes expresiones que puede tener una persona.Otros métodos, en vez de utilizar subespacios faciales, siguen una clasificación por redes neuronales y plantillas deformables, como EGM - Elastic graph matching. • Locales o geométricos

Se comparan diferentes características geométricas de las caras. Existen dos divisiones, la basada en los vectores característicos extraidos del perfil, y la basada en los extraidos a partir de una vista frontal. Se utilizaba mucho anteriormente pero sus resultados no son óptimos. Técnicas 3DÚltimamente ha incrementado la tendencia del reconocimiento facial tridimensional, donde se utilizan imágenes 3D tanto en el entrenamiento como en el reconocimiento. Esta técnica utiliza sensores en 3D para captar información sobre la forma de la cara. Esta información se utiliza posteriormente para identificar rasgos característicos del rostro como por ejemplo la barbilla, el contorno de los ojos, la nariz o los pómulos, y reteniendo información espacial, a parte de la textura y la profundidad. Una ventaja del reconocimiento facial en 3D es que no les afectan los cambios de iluminación, como pasa en el caso de otras técnicas. Además, otro punto a favor es que pueden reconocer una cara en diferentes ángulos, incluso de perfil. El problema es que es difícil obtener imágenes 3D fidedignas en la fase de reconocimiento, ya que los sensores 3D tienen que estar muy bien calibrados y sincronizados para adquirir la información correctamente. Es por eso que se utiliza el método de Análisis de Components Principals Parcial (PCA - Partial Principal Component Analysis), derivado del PCA, donde se utilizan imágenes en 3D en la fase de entrenamiento y en la base de datos, pero en la fase de test puede utilizar tanto imágenes en 2D como en 3D. La técnica intenta reconstruir modelos faciales en 3D a partir de múltiples imágenes de la misma persona adquiridas mediante un sistema multicámara o a partir de aparatos 3D. Las imágenes 3D son imágenes de 180º en coordenadas cilíndricas. Otros ejemplos de técnicas 3D son 3-D Morphable Model i 3-D Face Recognition. Técnicas de análisis de la textura de la pielEsta tendencia utiliza los detalles visuales de la piel. Analiza las líneas únicas, patrones y detalles evidentes como manchas y/o cicatrices del rostro del sujeto. Al utilizar este algoritmo nos ahorramos tener que recorrer toda la base de datos ya que podemos descartar imágenes fácilmente. Hay estudios que demuestran que utilizando esta técnica, juntamente con el reconocimiento facial, el rendimiento puede aumentar hasta un 25 por ciento.

Ing. Erick Nehring Página 38

Page 39: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Reconocimiento basado en videoSe han desarrollado algunos sistemas de reconocimiento facial basados en video, por ejemplo, salas inteligentes que pueden reconocer a las personas y iniciar automáticamente las acciones apropiadas. Otro ejemplo son los sistemas que detectan la fatiga de un conductor, monitorizando las expresiones de la cara y los movimientos de cabeza. Pero en aplicaciones de video vigilancia, el reconocimiento y la identificación facial todavía es una tarea difícil debido a:

• Baja calidad de video: normalmente la grabación se hace en la calle, con una iluminación inadecuada y, además, las personas no son colaborativas, en el sentido de que no ayudan a ser reconocidas. Para solucionarlo, se pueden aplicar técnicas de superresolución.

Imagen pequeña de la cara: debido a las condiciones de adquisición de la imagen, el tamaño de la cara suele ser más pequeño que los que hay en la base de datos. Eso no sólo hace que la tarea sea más difícil, si no que también afecta a la exactitud del proceso de segmentación, así como a la detección de los puntos más importantes utilizados en el reconocimiento.Hay aplicaciones en las que da buenos resultados, como en sistemas de control de acceso y en cajeros, donde el video se adquiere en un ambiente relativamente controlado y el tamaño de la cara es aceptable. En estos casos, el reconocimiento basado en video ofrece algunas ventajas respecto el basado en imágenes:

• El video proporciona más información, ya que tenemos más frames para elegir en cual realizar la clasificación.

• El video proporciona continuidad temporal, permitiendo reutilizar la información de clasificación obtenida de los frames de alta cualidad para procesar los frames de baja calidad.

• El video permite hacer un seguimiento de las caras, así los cambios de pose y las expresiones faciales se pueden compensar.

Aspectos técnicosDebilidadesEl sistema de reconocimiento facial no es perfecto y a veces difícil de implementar en ciertas condiciones. Una de las principales debilidades de este sistema es debida a el ángulo en el que se encuentra el rostro que queremos reconocer. Estudios han confirmado que el reconocimiento actúa correctamente hasta los 20º, una vez superado este ángulo comienzan a surgir problemas. Es por este motivo que se está investigando el reconocimiento en 3D con el cual este inconveniente desaparecería. Otro inconveniente es el mal funcionamiento en situaciones de poca luz, además, llevar el pelo largo, gafas de sol o otros objetos que cubran parte del rostro dificulta mucho la tarea. El algoritmo no siempre es capaz de distinguir los rostros si la expresión de este es diferente a la almacenada en la base de datos.

Ing. Erick Nehring Página 39

Page 40: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Para solucionar algunos de estos problemas, aparte de hacer el reconocimiento sobre video, también se pueden utilizar técnicas multimodales donde, a parte de la imagen de la persona, se incorpora también información de voz y audio, si esta se encuentra dentro del contenido.Principalmente, podemos distinguir dos problemas que causan una seria degradación del rendimiento en la mayoría de los sistemas existentes: Problema de iluminaciónLos cambios provocados por la iluminación son normalmente más grandes que las diferencias entre personas, causando a los sistemas basados en comparación a equivocarse al clasificar las imágenes de entrada. Se han propuesto algunas soluciones basadas en el conocimiento, en particular teniendo en cuenta que todas las caras pertenecen a una misma clase. Estas técnicas están divididas en 4 tipos:

• Métodos heurísticos: por ejemplo, cuando utilizamos los subespacios de eigenfaces, descartando las componentes principales.

• Métodos de comparación de imágenes: se utilizan representaciones apropiadas de la imagen y medidas de distancia.

• Métodos basados en la clase: utilizan múltiples imágenes de la misma cara en una pose fija pero bajo diferentes condiciones lumínicas.

• Métodos basados en el modelo: utilizan modelos 3D. Problema del cambio de poseEl rendimiento de un sistema de reconocimiento facial también baja significativamente cuando hay presentes cambios en la pose. Hay diferentes métodos propuestos para solucionarlo:

• Métodos donde la base de datos incluye imágenes de una persona en diferentes poses.

• Métodos híbridos, donde hay disponibles diferentes imágenes por persona durante el entrenamiento, pero sólo una por persona en el reconocimiento. Es la más utilizada.

• Métodos basados en una única imagen, donde no hay entrenamiento. No es popular.

EfectividadSegún un estudio reciente el reconocimiento facial automático da mejores resultados que en los humanos, pero todavía no hay una técnica que proporcione una solución robusta para todo tipo de situaciones y para las diferentes aplicaciones que lo puedan necesitar. Según la revista 'Science', utilizar imágenes compuestas por varias fotografías adquiridas en diferentes ángulos de una misma persona permite que el rendimiento del algoritmo llegue hasta un 100% en el mejor de los casos. Este es el resultado de estudios de psicólogos de la Universidad de Glasgow, donde se está tratando el tema y se ha llegado a la conclusión de que este nuevo sistema emula una de las claves de la capacidad humana para reconocer rostros. Aun así continúa sin poder distinguir entre diferentes expresiones

Ing. Erick Nehring Página 40

Page 41: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

faciales. PrivacidadAunque esta tecnología nos aporta grandes beneficios, se cuestiona moralmente la privacidad del sujeto. Lo que a simple vista se considera como un avance tecnológico se puede convertir en un arma. Dependiendo de su uso se puede controlar toda una sociedad entera sabiendo en todo momento donde se encuentran y qué están haciendo.EjemploFacebook añade reconocimiento facial en fotos. Cada día se agregan más de 100 millones de etiquetas a las imágenes, según la red social. La titánica labor de etiquetar las fotos que son publicadas en Facebook pronto será más fácil, pues la red social dio a conocer en su blog que estrenarán una herramienta de reconocimiento facial que ayudará a mejorar esta experiencia.Aunque un mecanismo similar ya se había implementado, la idea ahora automatizar más la función. Así, cuando el usuario esté subiendo imágenes de un mismo evento, se sugerirán los nombres de quienes aparecen en todas las imágenes. “Si subes fotos de una boda, vamos a agrupar las fotos de la novia y sugerir su nombre. En lugar de escribir su nombre 64 veces, todo lo que tienes que hacer es clic en ‘guardar’”, señala Justin Mitchell, ingeniero del sitio en el blog.Además, y para resguardar la seguridad, si el usuario no quiere que su nombre sea propuesto, se podrá desactivar esta función en “configuración de privacidad”.La herramienta -que se ha estado trabajando desde octubre-, primero estará disponible en Estados Unidos, y luego será implementada en el resto de los países.

Ing. Erick Nehring Página 41

Page 42: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Al finalizar nuestro trabajo de investigación nos hemos llevado la gran satisfacción de haber adquirido más conocimientos sobre esta nueva rama de la informática como lo es la inteligencia artificial y los campos donde esta se presenta, como grupo concluimos:

• La IA tiene muchas aplicaciones en la vida real.• La IA no es como se ve, sino que aún queda mucho mas por hacer.• La visión computación necesita de muchos conocimientos y comprensión visual.• La IA es muy utilizada en las aplicaciones militares, pero se debe tener mucho

cuidado en la puesta en marcha de estas.• Son muchos los campos que son beneficiados por las aplicaciones de la IA.• Gracias a la inteligencia artificial se ha logrado que una maquina sea capaz de

desarrollar áreas de conocimiento muy especificas y complicadas, haciendo que la maquina pueda simular procesos que el hombre realiza. Pero cabe destacar que aún no se ha logrado que una máquina piense como un humano, esto se deber a que el hombre es irremplazable ya que los humanos contamos con características propias y una de ellas es el sentido común.

• Es importante tener en cuenta que el uso que se le dé a los nuevos avances o proyectos sean a favor de una actividad positiva, para bien y no destrucción de la misma humanidad.

Ing. Erick Nehring Página 42

Conclusiones

Page 43: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Vision Computacional:http://es.wikipedia.org/wiki/Visi%C3%B3n_artificialhttp://robvis.mty.itesm.mx/~gordillo/Cursos/Sist-Vision-Compu-Prof/Vision-Compu-General.pdfhttp://atmsp.wordpress.com/category/vision-computacional/http://www.google.com/search?q=vision+computacional&hl=es&prmd=ivns&ei=P3lITceyDYH78AbfuvTZBg&start=10&sa=Nhttp://www.escet.urjc.es/~visionc/http://industrial.unmsm.edu.pe/cema/archivos/VISION_COMPUTACIONAL.pdf Técnicas de Procesamiento de Imágenes y Video:http://es.wikipedia.org/wiki/Procesamiento_digital_de_im%C3%A1geneshttp://revistas.ucm.es/fis/02144557/articulos/FITE9595110105A.PDFhttp://www.elai.upm.es/spain/Asignaturas/Robotica/PracticasROVA/pr3ROVAProcesado.pdfhttp://www.itc.nl/external/unesco-rapca/Casos%20de%20estudios%20SIG/02%20Sensores%20remotos/sensores%20remotos.pdfhttp://catarina.udlap.mx/u_dl_a/tales/documentos/lis/nieto_b_d/capitulo2.pdfhttp://www.cs.cinvestav.mx/Posgrado/Cursos/ProcsImages.htmlhttp://www.mappinginteractivo.com/plantilla-ante.asp?id_articulo=671http://bdigital.eafit.edu.co/bdigital/PROYECTO/P658.562I76/conclusiones.pdfhttp://www.tuslibrospdf.com/131951/procesamiento-de-imagenes/http://www.tuslibrospdf.com/buscar.phphttp://140.148.10.34/u_dl_a/tales/documentos/mel/gonzalez_g_ra/capitulo2.pdfhttp://www.hab2001.sld.cu/arrepdf/00365.pdfhttp://www.revistas.unal.edu.co/index.php/arh/article/viewFile/9313/9962http://triton.javeriana.edu.co/carrera/tgrado/2000-2/videoemb.PDFhttp://newton.azc.uam.mx/mcc/02_ingles/11_tesis/tesis/terminada/050301_coronilla_contreras_ukranio.pdf Aplicaciones Militares:http://www.lockheedmartin.com/products/hulc/index.htmlhttp://www.tendencias21.net/Crean-el-primer-robot-capaz-de-inmovilizar-personas-con-un-gas-letal_a1679.htmlhttp://www.uv.mx/cienciahombre/revistae/vol17num3/articulos/inteligencia/index.htmhttp://es.wikipedia.org/wiki/Robothttp://proyectoa1.com/tag/inteligencia-artificial/http://html.rincondelvago.com/aplicaciones-de-la-inteligencia-artificial_1.html

Ing. Erick Nehring Página 43

Bibliografia

Page 44: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

http://www.elpais.com/articulo/tecnologia/EE/UU/introduce/inteligencia/artificial/infraestructuras/defensa/militar/elpcibtec/20011018elpcibtec_3/Teshttp://www.webxistence.com/2011/01/sobre-computadoras-e-inteligencia.htmlhttp://lacibernetica.blogspot.com/2009/08/cientificos-estan-preocupados-por-las.htmlhttp://scalab.uc3m.es/~dborrajo/pfcs/freeciv/pfc-freeciv.pdfhttp://www.ejercito.mil.co/?idcategoria=193451 IADhttp://www.virtual.unal.edu.co/cursos/ingenieria/2001394/docs_curso/capitulo1/leccion1.1.htmhttp://users.dsic.upv.es/grupos/ia/sma/publications/articulos/Dai-tr-final.pdfhttp://www.dia.fi.upm.es/~phernan/AgentesInteligentes/referencias/garcia98.pdfhttp://webdelprofesor.ula.ve/ingenieria/jacinto/ia/capitulo01.pdfhttp://cibernetica.wordpress.com/2007/05/31/inteligencia-artificial-distribuida-1/ Teoría de los Juegoshttp://www.seccperu.org/?q=node/507http://www.seccperu.org/files/APLICACI%C3%93N%20DEL%20ALGORITMO%20PODA%20ALPHA.pdfhttp://es.wikipedia.org/wiki/Teor%C3%ADa_de_juegoshttp://www.wikiteka.com/apuntes/inteligencia-artificial/http://www.mitecnologico.com/Main/TeoriaDeJuegosIntroduccionhttp://mate.dm.uba.ar/~jpinasco/t6.pdfhttp://www.info-ab.uclm.es/asignaturas/42542/IA-tema1-print.pdf Sintetizador de Voz y Reconocimiento Facial y Digitalbgustavo.googlepages.com/IA-Agentes.pdfhttp://es.wikipedia.org/wiki/Sistema_de_reconocimiento_facialhttp://www.paisdigital.org/?p=4665http://pagerankstudio.com/nuestrosalud/blog/?p=47059http://es.wikipedia.org/wiki/S%C3%ADntesis_de_hablahttp://www.cavsi.com/preguntasrespuestas/que-un-sintetizador-de-voz/

Ing. Erick Nehring Página 44

Page 45: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Glosario y Abreviaturas

VC: Visión ComputacionalTV: TelevisiónDARPA: Agencia de Investigación de Proyectos Avanzados de DefensaIA: Inteligencia ArtificialEART: Robot Táctico Energéticamente AutónomoIAD: Inteligencia Artificial DistribuidaSCPD: Solución cooperativa de problemas distribuidos SMA: Sistemas multiagentes BDI:Belief, Desire, IntentionsIO: Investigacion OperativaTTS: text-to-speech CTV: Conversores de Texto-VozPCA: Partial Principal Component Analysis (Analisis de Componentes Principales Parcial )FLD: Fisher Linear DiscriminantLDA: LDA - Linear Discriminant Analysis ( Análisis Linear Discriminante) EGM: Elastic graph matching

Ing. Erick Nehring Página 45

Apendice A

Page 46: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Ilustraciones de Visión Computacional y Aplicaciones

Detección de Rostros

Reconocimiento de Actividad Humana y Objetos

Interpretación de imágenes aéreas Monitoreo de Seguridad

Ing. Erick Nehring Página 46

Apendice B

Page 47: Inteligencia Artificial Un Enfoque Moderno

Inteligencia Artificial 2011/Vision Computacional

Aplicaciones de Inteligencia Artificial

Ing. Erick Nehring Página 47