OpenMV Cam:guia técnico sobre a câmera Smart Vision
As câmeras de visão inteligentes são sistemas de visão com sensores de imagem integrados que capturam imagens e obtêm informações elétricas precisas. Depois, as câmeras geram uma descrição do evento e tomam decisões com base nos filtros de imagem digital. O OpenMV Cam é um exemplo de câmera de visão inteligente. Ele se qualifica como um por causa de suas interfaces de comunicação, linhas de E/S e baixo custo.
Fique por aqui enquanto aprendemos mais sobre o sistema de câmeras.
O que é openmv?
Um projeto de cam OpenMV torna a visão de máquinas acessível aos alunos por meio de uma plataforma de baixo custo, código aberto e fácil de usar.
Câmera OpenMV
Muitas vezes, você pode programar o OpenMV Cam em Python3. Além disso, a câmera possui extensas funções de processamento de imagem e aprendizado de máquina. As funções incluem;
- Gravação de vídeo GIF e MJPEG,
- AprilTags,
- Decodificação QR e código de barras,
(QR e código de barras)
- Rastreamento de cores,
- Descritores de pontos-chave e
- Detecção de rosto.
Além disso, com base nos criadores do Qt, uma câmera OpenMV possui IDE (cross-platform), reforçando as câmeras programáveis. Um IDE OpenMV funciona por;
- Primeiro, permitindo que o usuário visualize o buffer de quadros da câmera,
- Em seguida, acesse seus controles de sensor,
- Finalmente, use um BLE/Wi-Fi/serial via USB para carregar scripts de progresso para a câmera.
Também possui ferramentas que processam imagens que ajudam a produzir pontos-chave, limites, tags, etc.
OpenMV Cam descreve
Lente grande angular OpenMV
Definição
OpenMV Camera é uma placa microcontroladora potente com uma câmera programável via MicroPython.
Função OpenMV CAM
- Executar algoritmos de visão de máquina na câmera ajuda a detectar rostos, rastrear cores etc.
- Além disso, possui uma funcionalidade incorporada, facilitando o direcionamento dos pinos de E/S no mundo real. O controle dos pinos de E/S pode exigir que você acione a captura de vídeos e fotos da execução de algoritmos de visão de máquina ou eventos externos.
- Além disso, em vez de programar o OpenMV Camera em C/C++, você pode fazê-lo em scripts MicroPython de alto nível. Dessa forma, você trabalhará facilmente com estruturas de dados de alto nível e saídas sofisticadas geradas a partir de algoritmos de visão de máquina.
Descrição do OpenMV Cam m7
Definição
O OpenMV Cam M7 também é uma placa microcontroladora compacta e de baixo consumo de energia que ajuda na implementação do uso de aplicativos de visão de máquina no mundo real.
Função Openmv cam m7
A câmera OpenMV Intelligent M7 Cam Vision funciona de forma semelhante ao OpenMV Cam, ou seja, detectando cores, rastreando rostos, etc.
Recursos da câmera OpenMV
Alguns recursos e especificações do processador OpenMV Cam Cortex M7 incluem;
- Primeiro, ele tem um modo DAC de 12 bits e ADC de 12 bits.
- Em seguida, ele é composto por dois LEDs IR de 850nm de alta potência e um LED RGB.
- Em terceiro lugar, tem dez pinos de E/S. Dos dez pinos, há PWM e interrupções e três pinos de E/S para controle de servo. O barramento SPI pode operar até 54Mbs, permitindo fácil transmissão de dados de imagem.
- A saída do pino de E/S é de 3,3 V, mas eles não podem tolerar 5 V.
- Além disso, ele roda a 216 MHz com 2 Mb de flash externo e 512 Kb de RAM.
- O sensor de imagem (OV7725) pode gerar imagens em tons de cinza de 320 × 240 de 16 bits ou 640 × 480 de 8 bits a 30 FPS.
- Além disso, ele pode interagir com outros sensores e microcontroladores usando um barramento serial assíncrono (TX/RX), barramento CAN e barramento I2C.
- Tem uma montagem de lente padrão M12 com lente de 2,8 mm e um soquete de cartão microSD de 100 Mbs de gravação/leitura. Você também pode comprar lentes especializadas e vinculá-las à OpenMV Cam.
- Por último, possui um USB de velocidade total (a 12Mbs) que faz interface com um computador. Assim, quando você conectar sua câmera, parecerá uma unidade flash USB e uma porta COM virtual.
Biblioteca de interface
O OpenMV possui uma biblioteca Remote Python/Procedure Call (RPC) integrada que permite a conexão do Cam aos dispositivos. Os dispositivos eletrônicos podem variar de um microcontrolador, por exemplo, Arduino, Raspberry Pi, um computador de placa Singe (SBC) ou um computador.
Biblioteca de interface (Remote Python/Chamada de procedimento) Operação
Funciona sobre:
- Wi-Fi através de um escudo Wi-Fi de até 12 Mbs,
- Porta COM virtual USB (VCP) até 12Mbs,
- Pode barrar até 1Mbs,
- Barramento SPI de até 54Mbs (você também pode ter 40Mb/s ou 80Mb/s com fios curtos),
- Barramento I2C =1Mbs (ao usar resistores pull up) e
- UART (serial assíncrona) =7,5 MB.
Você também pode transmitir facilmente dados de imagem JPG ou RAW e obter resultados de processamento de imagem usando a biblioteca RPC. Além disso, ao controlar hardware de nível inferior, por exemplo, acionamento de motor, você pode usar o OpenMV para controlar um microcontrolador diferente.
Por fim, você pode escolher uma das bibliotecas abaixo do OpenMV para habilitar a interface com outros sistemas.
Biblioteca de interface do Arduino para comunicações I2C, UART, SPI e CAN
Recursos
- Suporte CAN via periférico CAN no ESP32 ou MCP2515 sobre SPI.
- Funciona em todas as variantes do Arduino.
Usando a interface Python genérica em comunicações SPI/I2C, Kvarser CAN, UART, Ethernet/Wi-Fi e USB VCP
Ele fornece o código Python que conecta uma câmera OpenMV ao seu computador Linux (ou Beaglebone/RaspberryPi), Mac ou Windows.
BeagleBone
Outros recursos
Ele suporta o seguinte;
- SPI/I2C em SBCs Linux, por exemplo, Beaglebone/Raspberry Pi.
- Kvarser PODE trabalhar em Linux e Windows.
- Wi-Fi/Ethernet em todos os sistemas.
- VCP USB em todos os sistemas, pois os USBs se conectam diretamente às câmeras OpenMV.
- TTL/RS485/RS422/RS232 UARTs em todos os sistemas.
Precauções para portas seriais
Você pode abrir o OpenMV Cam VCP e ler as linhas de texto da porta serial usando o código abaixo.
Felizmente, o código funciona em Linux, Mac ou Windows. Basta alterar o nome da porta para corresponder ao nome da porta USB VCP. A tela da câmera aparecerá como /dev/ no Linux ou Mac.
Observação;
Certifique-se de definir a linha DTR como false ao abrir a porta do USB VCP com um idioma/biblioteca serial diferente. Não fazer isso pode fazer com que o OpenMV Cam sobrecarregue a saída impressa.
Aplicativos
OpenMV tem as seguintes aplicações;
- Detecção de linha ou borda,
- Diferença de quadro,
- Gravação de vídeo,
- Acompanhamento de tags de abril,
- Rastreamento de cores multiblob (na criação de criadores de cores de diferentes faixas de cores),
- Captura de imagem,
- Correspondência de modelos,
- Detecção de forma, por exemplo, retângulo,
- Detecção de círculo,
- Decodificação de código de barras linear,
- Detecção/decodificação de matriz de dados,
- Detecção/decodificação de código QR,
- Fluxo óptico,
- Modelos do TensorFlow Lite para suporte a microcontroladores,
- Rastreamento ocular,
- Detecção de rosto e
(detecção e reconhecimento de rosto)
- Acompanhamento de marcadores.
Conclusão
O OpenMV ajuda a obter funções de visão de máquina, como detecção de rosto, gravação de vídeo RAW ou detecção de códigos de cores. Sua ampla gama de aplicações decorre de ter recursos excelentes.
Se você deseja saber mais sobre câmeras de visão inteligentes, principalmente OpenMV Cam, não hesite em nos contatar.
Tecnologia industrial
- Guia passo a passo para construir uma fábrica inteligente
- Câmera inteligente oferece visão de máquina de ponta turnkey AI
- Framboesa com came na gaiola
- B&R apresenta câmeras totalmente integradas para automação
- Como Brasar Alumínio - Um Guia Técnico
- Como soldar cobre - um guia técnico
- Como configurar um soldador MIG - Um guia técnico
- Guia de Seleção de Material PCB
- Guia para endurecedores de PCB
- Guia para PCBs e IoT