OpenMV Cam: Guia Técnico Completo para Câmeras de Visão Inteligente
Câmeras de visão inteligente são sistemas de visão com sensores de imagem embutidos que capturam imagens e obtêm informações elétricas precisas. Depois, as câmeras geram descrição de eventos e tomam decisões baseadas em filtros de imagem digital. OpenMV Cam é exemplo de câmera de visão inteligente. Qualifica-se por suas interfaces de comunicação, linhas I/O e baixo custo.
Acompanhe enquanto aprendemos mais sobre o sistema de câmera.
O que é OpenMV?
Um projeto OpenMV cam torna a visão de máquinas acessível a aprendizes via plataforma de baixo custo, open-source e amigável.
[Imagem: OpenMV Cam]
Geralmente, você pode programar OpenMV Cam em Python3 (MicroPython). A câmera possui extensas funções de processamento de imagem e machine learning:
- Gravação de vídeo GIF e MJPEG
- AprilTags
- Decodificação de QR code e código de barras
- Rastreamento de cor
- Descritores de keypoints
- Detecção facial
[Imagem: QR e Código de Barras]
Além disso, baseado em Qt Creator, uma câmera OpenMV possui IDE (multiplataforma), reforçando câmeras programáveis. Uma OpenMV IDE funciona:
- Permitindo visualizar frame buffer da câmera
- Acessar controles do sensor
- Usar BLE/Wi-Fi/serial sobre USB para carregar scripts de progresso na câmera
Também possui ferramentas de processamento de imagem que ajudam produzir keypoints, thresholds, tags, etc.
Descrição do OpenMV Cam
[Imagem: Lente ultra grande angular OpenMV]
Definição
OpenMV Camera é uma potente placa microcontroladora com câmera programável via MicroPython.
Função do OpenMV CAM
- Executar algoritmos de visão de máquina na câmera ajuda detectar faces, rastrear cores, etc.
- Possui funcionalidade embutida, facilitando direcionar pinos I/O no mundo real. Controlar pinos I/O pode requerer disparar captura de vídeo/foto ao executar algoritmos de visão ou eventos externos.
- Em vez de programar em C/C++, pode usar scripts MicroPython de alto nível. Assim, trabalha facilmente com estruturas de dados de alto nível e saídas sofisticadas de algoritmos de visão.
Descrição do OpenMV Cam M7
Definição
OpenMV Cam M7 é também uma placa microcontroladora compacta e de baixo consumo ajudando implementar aplicações de visão de máquina no mundo real.
Função do OpenMV Cam M7
A câmera de visão inteligente M7 funciona similar ao OpenMV Cam: detectar cores, rastrear faces, etc.
Características do OpenMV Cam
Especificações do processador Cortex M7 do OpenMV Cam:
- Modo DAC 12-bit e ADC 12-bit
- Dois LEDs IR 850nm de alta potência e um LED RGB
- Dez pinos I/O: PWM, interrupções e 3 pinos para controle de servo. Barramento SPI até 54Mbps para streaming fácil de dados de imagem
- Saída dos pinos I/O: 3,3V, não toleram 5V
- Rodam a 216MHz com 2MB flash externo e 512KB RAM
- Sensor de imagem (OV7725): 320×240 16-bit ou 640×480 8-bit grayscale a 30 FPS
- Interface com outros sensores/microcontroladores via serial assíncrono (TX/RX), barramento CAN e I2C
- Montagem de lente M12 padrão com lente 2.8mm e soquete microSD 100Mbps leitura/escrita. Lentes especializadas podem ser compradas e conectadas
- USB full-speed (12Mbps) para interface com computador. Ao conectar, aparece como drive USB flash e porta COM virtual
Biblioteca de Interface
OpenMV possui biblioteca RPC (Remote Python/Procedure Call) embutida que permite conectar a Cam a dispositivos: microcontrolador (ex: Arduino, Raspberry Pi), single board computer (SBC) ou computador.
Operação da Biblioteca RPC
Funciona sobre:
- Wi-Fi via shield Wi-Fi até 12Mbps
- USB Virtual COM Port (VCP) até 12Mbps
- Barramento CAN até 1Mbps
- Barramento SPI até 54Mbps (40Mb/s ou 80Mb/s com fios curtos)
- Barramento I2C = 1Mbps (com pull-up resistors)
- UART (Serial Assíncrono) = 7,5Mbps
Pode transmitir facilmente dados de imagem JPG ou RAW e obter resultados de processamento via biblioteca RPC. Ao controlar hardware de nível inferior (ex: acionamento de motor), pode usar OpenMV para controlar outro microcontrolador.
Pode escolher uma das bibliotecas abaixo do OpenMV para habilitar interface com outros sistemas:
Biblioteca de Interface Arduino para I2C, UART, SPI e CAN
Características:
- Suporte CAN via periférico CAN no ESP32 ou MCP2515 sobre SPI
- Funciona em todas as variantes de Arduino
Interface Python Genérica em SPI/I2C, Kvaser CAN, UART, Ethernet/Wi-Fi, USB VCP
Fornece código Python que conecta OpenMV Camera ao seu Linux (ou BeagleBone/Raspberry Pi), Mac ou Windows.
[Imagem: BeagleBone]
Outras características: Suporta SPI/I2C em SBCs Linux (ex: BeagleBone/Raspberry Pi); Kvaser CAN no Linux e Windows; Wi-Fi/Ethernet em todos sistemas; USB VCP em todos sistemas; UARTs TTL/RS485/RS422/RS232 em todos sistemas.
Precauções para Portas Seriais
Pode abrir VCP do OpenMV Cam e ler linhas de texto da porta serial usando código abaixo. Funciona em Linux, Mac ou Windows. Apenas altere nome da porta para corresponder ao nome da porta USB VCP. A cam exibirá como /dev/ no Linux ou Mac.
[Imagem: Código de exemplo]
Nota: Certifique-se de definir linha DTR como false ao abrir porta USB VCP com biblioteca/linguagem serial diferente. Falha nisso pode fazer OpenMV Cam sobrecarregar saída impressa.
Aplicações
OpenMV possui as seguintes aplicações:
- Detecção de linha ou borda
- Diferença de frames
- Gravação de vídeo
- Rastreamento AprilTag
- Rastreamento multi-blob de cores (criar marcadores de cores em diferentes faixas)
- Captura de imagem
- Template matching
- Detecção de formas (ex: retângulo)
- Detecção de círculos
- Decodificação de código de barras linear
- Detecção/decodificação Data Matrix
- Detecção/decodificação QR code
- Fluxo óptico
- Modelos TensorFlow Lite para suporte a microcontroladores
- Rastreamento ocular
- Detecção facial
- Rastreamento de marcadores
[Imagem: Detecção e reconhecimento facial]
Conclusão
OpenMV ajuda alcançar funções de visão de máquina como detecção facial, gravação de vídeo RAW ou detecção de códigos de cor. Sua ampla gama de aplicações decorre de características excepcionais.
Se deseja saber mais sobre câmeras de visão inteligente, particularmente OpenMV Cam, não hesite em nos contatar.
Tecnologia industrial
- Construindo uma Fábrica Inteligente: Um Blueprint Prático Passo a Passo
- ADLINK Lança NEON-1000-MDX: Câmera Inteligente Edge AI Turnkey para Implantação Rápida de Visão Industrial
- Instalando uma Câmera Raspberry Pi em uma Casinha de Pássaros – Guia Passo a Passo
- B&R Lança Câmeras Inteligentes Totalmente Integradas para Automação Precisa
- Dominando a Brasagem de Alumínio: Técnicas de Especialistas e Guia Prático
- Guia Especialista para Soldagem de Cobre: Técnicas, Dicas e Melhores Práticas
- Guia de Configuração da Soldadora MIG: Otimize Performance e Obtenha Cordões Perfeitos
- Escolhendo o Material de PCI Certo: Um Guia Abrangente
- Dominando Reforços de PCI: Guia Completo para PCIs Flexíveis
- Dominando o Design de PCB para a Internet das Coisas: Um Guia Abrangente