Aprendizagem pessoal com IA
e orientação prática
Espelho de desenho CyberKnife

Vision Agent: uma inteligência visual para resolver várias tarefas de detecção visual de alvos

Introdução geral

O Vision Agent é um projeto de código aberto desenvolvido pela LandingAI (equipe de Enda Wu) e hospedado no GitHub, com o objetivo de ajudar os usuários a gerar rapidamente códigos para resolver tarefas de visão computacional. Ele usa uma estrutura de agente avançada e um modelo multimodal para gerar um código de IA de visão eficiente com instruções simples para uma variedade de cenários, como detecção de imagens, rastreamento de vídeo e contagem de objetos. A ferramenta não só oferece suporte à prototipagem rápida, mas também é facilmente implantada em ambientes de produção e é amplamente aplicável à manufatura, medicina, agricultura etc. O Vision Agent foi projetado para automatizar tarefas complexas de visão, e os desenvolvedores podem obter código executável simplesmente fornecendo uma descrição da tarefa, o que reduz bastante o limite de desenvolvimento de IA de visão. Atualmente, ele recebeu mais de 3.000 tags com estrelas, e a comunidade é altamente ativa e continuamente atualizada.

Vision Agent: uma inteligência visual para resolver várias tarefas de detecção visual de alvos-1


 

Exemplos de aplicação podem ser encontrados em Agentic Object Detection: uma ferramenta para detecção de objetos visuais sem anotação e treinamento

Agentic Object Detection: ferramenta avançada de detecção de alvos sem anotação e treinamento-1

 

Lista de funções

  • Geração automática de códigoGeração de código de IA visual para uma imagem ou vídeo com base em uma descrição de tarefa inserida pelo usuário.
  • Detecção e contagem de objetosSuporte para detectar objetos específicos em uma imagem ou vídeo e contá-los, por exemplo, contagem de cabeças.
  • Análise de quadros de vídeoExtração de quadros de vídeo e execução de rastreamento ou segmentação de objetos.
  • Ferramentas de visualizaçãoVisualização de imagem/vídeo de sobreposições de caixa delimitadora e máscaras divididas: fornece visualização de imagem/vídeo de sobreposições de caixa delimitadora e máscaras divididas.
  • Suporte a vários modelosIntegração de uma variedade de modelos visuais de código aberto que os usuários podem alternar de acordo com suas necessidades.
  • Extensões de ferramentas personalizadasPermite que os usuários adicionem novas ferramentas ou modelos para atender a requisitos específicos de tarefas.
  • Suporte à implantaçãoGeração de código para dar suporte à prototipagem rápida e à implementação em ambientes de produção.

 

Usando a Ajuda

Como instalar e usar

O Vision Agent é uma biblioteca baseada em Python, os usuários precisam obter o código-fonte via GitHub e instalá-lo em seu ambiente local. Aqui está o procedimento detalhado de instalação e uso:

Processo de instalação

  1. Preparação ambiental
    • Certifique-se de ter o Python 3.8 ou posterior instalado em seu computador.
    • Instale o Git para clonar repositórios do GitHub.
    • Opcional: recomenda-se um ambiente virtual (por exemplo venv talvez conda) para isolar as dependências.
  2. armazém de clones
    Abra um terminal e execute o seguinte comando para obter o código-fonte do Vision Agent:

    git clone https://github.com/landing-ai/vision-agent.git
    cd vision-agent
  1. Instalação de dependências
    No diretório do repositório, instale as dependências necessárias:

    pip install -r requirements.txt
    

    Se você precisar usar um modelo específico (por exemplo Antrópica ou OpenAI), é necessária uma configuração adicional da chave de API, veja mais adiante.

  2. Verificar a instalação
    Execute o seguinte comando para verificar se a instalação foi bem-sucedida:

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

    Se o número da versão for retornado (por exemplo, 0.2), a instalação estará concluída.

Uso das funções principais

A função principal do Vision Agent é gerar código e executar tarefas de visão a partir de prompts. Abaixo está um procedimento detalhado passo a passo para as principais funções:

1. gerar código visual de IA
  • procedimento::
    1. Importe o módulo Vision Agent:
      from vision_agent.agent import VisionAgentCoderV2
      agente = VisionAgentCoderV2(verbose=True)
      
    2. Prepare a descrição da tarefa e os arquivos de mídia. Por exemplo, contar o número de pessoas em uma imagem:
      code_context = agent.generate_code([
      {"role": "user", "content": "Count the number of people in this image", "media": ["people.png"]}
      ])
      
    3. Salve o código gerado:
      with open("count_people.py", "w") as f.
      f.write(code_context.code)
      
  • Descrição funcionalO Vision Agent gera automaticamente o código Python que contém a lógica de detecção e contagem de objetos depois de inserir um caminho de imagem e uma descrição de tarefa. O código gerado se baseia em ferramentas integradas, como countgd_object_detection.
2. detecção e visualização de objetos
  • procedimento::
    1. Carregue a imagem e execute a detecção:
      importar vision_agent.tools como T
      image = T.load_image("people.png")
      dets = T.countgd_object_detection("person", image)
      
    2. Sobreponha a caixa delimitadora e salve o resultado:
      viz = T.overlay_bounding_boxes(image, dets)
      T.save_image(viz, "people_detected.png")
      
    3. Visualização dos resultados (opcional):
      importar matplotlib.pyplot como plt
      plt.imshow(viz)
      plt.show()
      
  • Descrição funcionalFunção de limite: Esta função detecta um objeto especificado (por exemplo, "pessoa") em uma imagem e desenha uma caixa delimitadora na imagem, o que é adequado para verificação de qualidade, monitoramento e outros cenários.
3. análise e rastreamento de quadros de vídeo
  • procedimento::
    1. Extrair quadros de vídeo:
      frames_and_ts = T.extract_frames_and_timestamps("people.mp4")
      frames = [f["frame"] for f in frames_and_ts]
      
    2. Executar um rastreamento de objeto:
      faixas = T.countgd_sam2_video_tracking("person", frames)
      
    3. Salve o vídeo de visualização:
      viz = T.overlay_segmentation_masks(frames, tracks)
      T.save_video(viz, "people_tracked.mp4")
      
  • Descrição funcionalO software de análise de cena: extrai quadros do vídeo, detecta e rastreia objetos e, por fim, gera uma visualização do vídeo com uma máscara de segmentação, adequada para a análise dinâmica da cena.
4. configuração de outros modelos
  • procedimento::
    1. Modifique o arquivo de configuração para usar outros modelos (por exemplo, o Anthropic):
      cp vision_agent/configs/anthropic_config.py vision_agent/configs/config.py
      
    2. Defina a chave da API:
      Adicione a chave à variável de ambiente:

      export ANTHROPIC_API_KEY="sua_chave_aqui"
      
    3. Execute novamente a tarefa de geração de código.
  • Descrição funcionalO Vision Agent oferece suporte a vários modelos por padrão, e os usuários podem alterná-los de acordo com suas necessidades para aumentar a eficácia de suas tarefas.

Exemplo de um processo de operação: Cálculo da porcentagem de enchimento de grãos de café

Suponha que você tenha uma imagem de uma jarra com grãos de café e queira calcular a porcentagem de preenchimento:

  1. Escreva uma descrição de tarefa e execute-a:
    agente = VisionAgentCoderV2()
    code_context = agent.generate_code([
    {"role": "user", "content": "What percentage of the jar is filled with coffee beans?", "media": ["jar.jpg"]}
    ])
    
  2. Execute o código gerado:
    O código gerado pode 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)
    porcentagem = (beans_area / jar_area) * 100 if jar_area else 0
    print(f "Filled percentage: {percentage:.2f}%")
    
  3. Execute o código para obter o resultado.

advertência

  • Certifique-se de que a imagem ou o vídeo de entrada esteja no formato correto (por exemplo, PNG, MP4).
  • Se você encontrar problemas de dependência, tente atualizar o pip install --upgrade vision-agent.
  • Suporte da comunidade: para obter ajuda, entre na comunidade Discord da LandingAI e receba conselhos.
CDN1
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Vision Agent: uma inteligência visual para resolver várias tarefas de detecção visual de alvos

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil