Skip to content

Clase 16 — Simulacro de Examen Completo (III) y Cierre de Curso

Resumen Ejecutivo

Última clase de la asignatura. Sesión íntegra de preparación de examen: se resuelve en directo un examen completo simulado (10 preguntas tipo test + 1 pregunta de desarrollo) cubriendo todo el temario de la parte de visión artificial / reconocimiento de formas (temas 8–12) y de agentes/JADE. El grupo responde con soltura todas las preguntas, así que el profesor sube el nivel. Cierre con despedida y agradecimientos.

Recordatorio de estructura: 10 preguntas test × 0,4 = 4 pts (no restan) + 1 desarrollo con 3 subpreguntas × 2 = 6 pts. En el examen no hay desarrollo de código, solo preguntas conceptuales (incluidas las de JADE). ⚠️ EXAMEN


Conceptos Clave

  • Agente vs. objeto: los agentes deciden por sí mismos cuándo ejecutar una acción (autonomía), tienen comportamiento flexible y cada uno posee su propio hilo de control. Un objeto solo actúa cuando lo invocan. ⚠️ EXAMEN
  • Inicialización en JADE → setup(), no el constructor: en el momento de la construcción el agente todavía no está enlazado con el runtime de JADE, por lo que métodos heredados pueden no funcionar. Recursos (conexiones a BD, etc.) se inicializan en setup(). ⚠️ EXAMEN
  • Planificación cooperativa (no preemptiva) en JADE: el desarrollador decide cuándo un comportamiento cede el control; action() se ejecuta hasta que retorna. Un bucle infinito dentro de action() bloquea al resto de comportamientos del agente. ⚠️ EXAMEN
  • Visión por computador vs. visión humana: si las imágenes las consume el propio ordenador para tomar decisiones automáticas → visión por computador. Si el resultado se muestra a un operario que decide → visión humana. ⚠️ EXAMEN
  • Sensores fuera del espectro visible: captar infrarrojo/ultravioleta (espectro electromagnético) permite detectar calor o detalles invisibles al ojo humano, de forma autónoma (sin un humano 24/7). ⚠️ EXAMEN
  • Segmentación: dividir la imagen en regiones que representan objetos o partes significativas. Imprescindible porque cualquier procesamiento por encima del nivel de píxel requiere esa división. Métodos: por regiones, por clustering, por bordes/umbralización. ⚠️ EXAMEN
  • Transformada de Fourier: trabajar sobre frecuencias en lugar de píxeles — más cómodo para filtrar.
  • Modelo oculto de Markov (HMM): base del reconocimiento de voz (tema 12, PLN) — a partir de un sonido estima la transcripción más probable, robusto al ritmo del habla.

Desarrollo del Temario — Examen Simulado

Preguntas tipo test resueltas

  1. Diferencia agente vs objeto → Los agentes deciden por sí mismos cuándo ejecutar una acción, tienen comportamiento flexible y cada uno su propio hilo de control.
  2. ¿Por qué es mala práctica usar el constructor para inicializar conexiones a BD en JADE? → Porque en el momento de la construcción el agente todavía no está enlazado con el runtime de JADE y algunos métodos heredados pueden no funcionar correctamente. (Se usa setup().)
  3. Planificación cooperativa de comportamientos JADE → El desarrollador decide cuándo un comportamiento cede el control, porque action() se ejecuta hasta retornar; un bucle infinito dentro bloquea al resto.
  4. Control de calidad en fabricación que analiza imágenes de piezas → Visión por computador, porque las imágenes son consumidas por el ordenador para tomar decisiones automáticas.
  5. Pinza robótica que identifica el contorno de un objeto → Reducción a escala de grises y luego a imagen binaria (umbralización), que contiene la información necesaria para distinguir contorno y objeto. No el filtrado por convolución (solo realza bordes, no separa objeto del fondo).
  6. Sensores que captan más allá de la luz visible → Ventaja: detectar infrarrojo/UV (calor) de forma autónoma, eliminando al humano de la vigilancia continua.
  7. ¿Por qué es imprescindible la segmentación previa para identificar coches antes de leer la matrícula? → Porque cualquier procesamiento a nivel más alto que el del píxel requiere dividir la imagen en regiones que representan objetos o partes significativas.

Pregunta de desarrollo — Pipeline de inspección de paquetes dañados

Enunciado: cinta transportadora con cámara; detectar automáticamente paquetes dañados. Tres subpreguntas:

a) Etapas de preprocesamiento y por qué:

Orden Etapa Por qué
1 Escala de grises Se trabaja sobre un solo canal en lugar de los tres (R, G, B)
2 Ecualización del histograma Mejora el contraste para realzar la información útil
3 Desenfoque / filtrado Elimina ruido y "manchitas" que generan falsos bordes
(4) Transformada de Fourier (si procede) Eliminar frecuencias de ruido concretas

Matiz: la ecualización va después de pasar a grises (si no, habría que ecualizar los tres canales). Una normalización previa a un filtro sí podría ir antes.

b) Técnica de segmentación y condición: - Umbralización para separar el paquete del fondo de la cinta. - Condición: debe haber suficiente contraste entre objeto y fondo para que el umbral los separe bien.

c) Detección de daños: - Detección de bordes mediante un operador tipo Sobel (operador espacial / derivada). - Principio matemático: un daño es una zona donde la intensidad cambia rápidamente (discontinuidad → alta frecuencia). Basta con justificar que se buscan los lugares de cambio brusco de intensidad; no es necesario escribir la derivada.

Pipeline completo de visión artificial: preprocesamiento (escala de grises → ecualización → filtrado) → segmentación (umbralización → detección de bordes → agrupación/regiones) → reconocimiento.


Consejos del Profesor para el Examen

  • Redactar de forma completa, no a base de enumeraciones de tres palabras: "solo puedo calificar lo que veo". "No nos cobran por palabra." ⚠️ EXAMEN
  • Aun así, valorar la síntesis: claro y directo.
  • Para la subpregunta de detección de daños, basta con nombrar el operador y justificar que detecta cambios bruscos de intensidad; no hace falta desarrollar las matemáticas.
  • Las preguntas que se repiten en los simulacros suelen ser las que caen seguro. ⚠️ EXAMEN

Cierre de Curso

Última sesión de la asignatura (primera edición que imparte el profesor). Despedida y agradecimiento al grupo; ofrecimiento de seguir resolviendo dudas por el foro y de una clase adicional si hace falta antes del examen. Compromiso de renovar el temario de cara al próximo curso (p. ej. evolucionar de JADE hacia herramientas actuales de orquestación de agentes con IA).


Preguntas de Autoevaluación

  1. Enuncia tres diferencias entre un agente y un objeto en POO.
  2. ¿Por qué no debes inicializar una conexión a base de datos en el constructor de un agente JADE? ¿Dónde hacerlo?
  3. ¿Qué significa que la planificación de comportamientos en JADE sea cooperativa? ¿Qué pasa si metes un bucle infinito en action()?
  4. Distingue visión por computador de visión humana con un ejemplo de cada una.
  5. ¿Qué aporta un sensor que capta fuera del espectro visible? Pon un caso de uso.
  6. ¿Por qué es imprescindible segmentar antes de procesar a nivel de objeto? Enumera métodos de segmentación.
  7. Describe el pipeline de preprocesamiento para inspeccionar paquetes y justifica el orden de las etapas.
  8. ¿Qué técnica de segmentación separa un objeto del fondo y qué condición debe cumplir la imagen?
  9. ¿Cómo detectarías daños superficiales una vez segmentado el objeto? ¿Qué operador y qué principio lo justifica?
  10. ¿Para qué se usa el modelo oculto de Markov en procesamiento del lenguaje natural?