Vision Agent: una inteligencia visual para resolver múltiples tareas de detección visual de objetivos

Introducción general

Vision Agent es un proyecto de código abierto desarrollado por LandingAI (el equipo de Enda Wu) y alojado en GitHub, cuyo objetivo es ayudar a los usuarios a generar rápidamente código para resolver tareas de visión por ordenador. Utiliza un marco de agente avanzado y un modelo multimodal para generar código de IA de visión eficiente con instrucciones sencillas para una variedad de escenarios como la detección de imágenes, el seguimiento de vídeo y el recuento de objetos. La herramienta no sólo permite la creación rápida de prototipos, sino que también se despliega sin problemas en entornos de producción y es ampliamente aplicable a la fabricación, la medicina, la agricultura, etc. Vision Agent está diseñado para automatizar tareas de visión complejas, y los desarrolladores pueden obtener código ejecutable simplemente proporcionando una descripción de la tarea, lo que reduce en gran medida el umbral de desarrollo de la IA de visión. Actualmente, ha recibido más de 3.000 etiquetas de estrella, y la comunidad es muy activa y se actualiza continuamente.

Vision Agent:解决多种视觉目标检测任务的视觉智能体

 

Encontrará ejemplos de aplicación en Agentic Object Detection: una herramienta para la detección visual de objetos sin anotación ni entrenamiento

Vision Agent:解决多种视觉目标检测任务的视觉智能体

 

Lista de funciones

  • Generación automática de códigoGeneración de código de IA visual para una imagen o un vídeo a partir de una descripción de tarea introducida por el usuario.
  • Detección y recuento de objetos: Soporte para detectar objetos específicos en una imagen o vídeo y contarlos, por ejemplo, recuento de cabezas.
  • análisis de fotogramas de vídeoExtraer fotogramas de vídeo y realizar el seguimiento o la segmentación de objetos.
  • Herramientas de visualización: Proporciona visualización de imagen/vídeo de superposiciones de cuadros delimitadores y máscaras de división.
  • Compatibilidad con varios modelosIntegración de diversos modelos visuales de código abierto que los usuarios pueden alternar en función de sus necesidades.
  • Extensiones de herramientas personalizadasPermite a los usuarios añadir nuevas herramientas o modelos para satisfacer los requisitos de tareas específicas.
  • Apoyo a la implantaciónGeneración de código para la creación rápida de prototipos y su despliegue en entornos de producción.

 

Utilizar la ayuda

Cómo instalar y utilizar

Vision Agent es una librería basada en Python, los usuarios necesitan obtener el código fuente a través de GitHub e instalarlo en su entorno local. Aquí está el procedimiento detallado de instalación y uso:

Proceso de instalación

  1. Preparación medioambiental
    • Asegúrese de que tiene Python 3.8 o posterior instalado en su ordenador.
    • Instala Git para clonar repositorios desde GitHub.
    • Opcional: se recomienda un entorno virtual (p. ej. venv tal vez conda) para aislar las dependencias.
  2. almacén de clones
    Abra un terminal y ejecute el siguiente comando para obtener el código fuente de Vision Agent:

    git clone https://github.com/landing-ai/vision-agent.git
    cd vision-agent
  1. Instalación de dependencias
    En el directorio del repositorio, instale las dependencias necesarias:

    pip install -r requirements.txt
    

    Si necesita utilizar un modelo específico (por ejemplo Antrópico u OpenAI), se requiere una configuración adicional de la clave API, véase más adelante.

  2. Verificar la instalación
    Ejecute el siguiente comando para comprobar si la instalación se ha realizado correctamente:

    python -c "import vision_agent; print(vision_agent.__version__)"
    

    Si se devuelve el número de versión (por ejemplo, 0.2), la instalación se ha completado.

Utilización de las funciones principales

La función principal del Agente de Visión es generar código y realizar tareas de visión a partir de prompts. A continuación se detalla el procedimiento paso a paso de las funciones principales:

1. Generar código visual de IA
  • procedimiento::
    1. Importe el módulo Vision Agent:
      from vision_agent.agent import VisionAgentCoderV2
      agent = VisionAgentCoderV2(verbose=True)
      
    2. Prepare la descripción de la tarea y los archivos multimedia. Por ejemplo, contar el número de personas en una imagen:
      code_context = agent.generate_code([
      {"role": "user", "content": "Count the number of people in this image", "media": ["people.png"]}
      ])
      
    3. Guarde el código generado:
      with open("count_people.py", "w") as f:
      f.write(code_context.code)
      
  • Descripción funcionalEl agente de visión genera automáticamente el código Python que contiene la lógica de detección y recuento de objetos tras introducir la ruta de la imagen y la descripción de la tarea. El código generado se basa en herramientas integradas como countgd_object_detection.
2. Detección y visualización de objetos
  • procedimiento::
    1. Cargue la imagen y ejecute la detección:
      import vision_agent.tools as T
      image = T.load_image("people.png")
      dets = T.countgd_object_detection("person", image)
      
    2. Superponga el cuadro delimitador y guarde el resultado:
      viz = T.overlay_bounding_boxes(image, dets)
      T.save_image(viz, "people_detected.png")
      
    3. Visualización de resultados (opcional):
      import matplotlib.pyplot as plt
      plt.imshow(viz)
      plt.show()
      
  • Descripción funcionalEsta función detecta un objeto especificado (por ejemplo, "persona") en una imagen y dibuja un cuadro delimitador en la imagen, lo que resulta adecuado para la comprobación de la calidad, la supervisión y otros escenarios.
3. Análisis y seguimiento de fotogramas de vídeo
  • procedimiento::
    1. Extraer fotogramas de vídeo:
      frames_and_ts = T.extract_frames_and_timestamps("people.mp4")
      frames = [f["frame"] for f in frames_and_ts]
      
    2. Ejecutar un rastreo de objetos:
      tracks = T.countgd_sam2_video_tracking("person", frames)
      
    3. Guarda el vídeo de visualización:
      viz = T.overlay_segmentation_masks(frames, tracks)
      T.save_video(viz, "people_tracked.mp4")
      
  • Descripción funcional: extrae fotogramas del vídeo, detecta y rastrea objetos y, por último, genera una visualización del vídeo con una máscara de segmentación, adecuada para el análisis dinámico de escenas.
4. Configuración de otros modelos
  • procedimiento::
    1. Modifique el archivo de configuración para utilizar otros modelos (por ejemplo, Antrópico):
      cp vision_agent/configs/anthropic_config.py vision_agent/configs/config.py
      
    2. Establezca la clave API:
      Añade la clave a la variable de entorno:

      export ANTHROPIC_API_KEY="your_key_here"
      
    3. Vuelva a ejecutar la tarea de generación de código.
  • Descripción funcional: Vision Agent admite varios modelos por defecto, y los usuarios pueden cambiarlos según sus necesidades para mejorar la eficacia de sus tareas.

Ejemplo de un proceso de operación: Cálculo del porcentaje de llenado del grano de café

Supongamos que tiene una imagen de un tarro con granos de café y quiere calcular el porcentaje de relleno:

  1. Escriba una descripción de la tarea y ejecútela:
    agent = VisionAgentCoderV2()
    code_context = agent.generate_code([
    {"role": "user", "content": "What percentage of the jar is filled with coffee beans?", "media": ["jar.jpg"]}
    ])
    
  2. Ejecute el código generado:
    El código generado puede ser:

    from vision_agent.tools import load_image, florence2_sam2_image
    image = load_image("jar.jpg")
    jar_segments = florence2_sam2_image("jar", image)
    beans_segments = florence2_sam2_image("coffee beans", image)
    jar_area = sum(segment["mask"].sum() for segment in jar_segments)
    beans_area = sum(segment["mask"].sum() for segment in beans_segments)
    percentage = (beans_area / jar_area) * 100 if jar_area else 0
    print(f"Filled percentage: {percentage:.2f}%")
    
  3. Ejecute el código para obtener el resultado.

advertencia

  • Asegúrese de que la imagen o el vídeo de entrada está en el formato correcto (por ejemplo, PNG, MP4).
  • Si tiene problemas de dependencia, intente actualizar el archivo pip install --upgrade vision-agent.
  • Apoyo de la comunidad: Si necesitas ayuda, únete a la comunidad Discord de LandingAI para recibir asesoramiento.
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...