A OpenMV Cam é uma pequena placa de microcontrolador de baixo consumo que permite implementar facilmente aplicações utilizando visão por computador no mundo real. Programa-se a OpenMV Cam em scripts Python de alto nível (cortesia do Sistema Operativo MicroPython) em vez de C/C++. Isto facilita o tratamento dos resultados complexos dos algoritmos de visão por computador e o trabalho com estruturas de dados de alto nível. No entanto, mantém-se o controlo total sobre a sua OpenMV Cam e os seus pinos de I/O em Python. Pode facilmente acionar a captura de imagens e vídeo em eventos externos ou executar algoritmos de visão por computador para determinar como controlar os seus pinos de I/O.
A câmara OpenMV apresenta:
- STM32H743VIProcessador ARM Cortex M7 a funcionar a 480 MHz com 1 MB de SRAM e 2 MB de flash. Todos os pinos de I/O emitem 3,3 V e são tolerantes a 5 V. O processador possui as seguintes interfaces de I/O:
- Uma interface USB de velocidade total (12Mbs) para o seu computador. A sua OpenMV Cam aparecerá como uma Porta COM Virtual e uma Unidade Flash USB quando ligada.
- Um soquete de cartão μSD capaz de leituras/escritas de 100Mbs que permite à sua câmara OpenMV tirar fotografias e retirar facilmente recursos de visão por computador do cartão μSD.
- Um barramento SPI que pode operar até 80 Mbps, permitindo-lhe transmitir facilmente dados de imagem do sistema para o LCD Shield, o WiFi Shield ou outro microcontrolador.
- Um barramento I2C (até 1 Mb/s), um barramento CAN (até 1 Mb/s) e um barramento serial assíncrono (TX/RX, até 7,5 Mb/s) para interface com outros microcontroladores e sensores.
- Um ADC de 12 bits e um DAC de 12 bits.
- Três pinos de I/O para controlo de servo.
- Interrupções e PWM em todos os pinos de I/O (existem 10 pinos de I/O na placa).
- E, um LED RGB e dois LEDs IR de alta potência de 850nm.
- Um sistema de módulo de câmara removível, com suporte para paralelo de 8 bits, permitindo que a OpenMV Cam H7 interfacie com diferentes sensores:
- A câmara OpenMV Cam H7 vem com umMT9M114O sensor de imagem é capaz de capturar imagens em tons de cinza de 8 bits 640x480 ou imagens BAYER de 8 bits 640x480 a 40 FPS quando a resolução está acima de 320x240 e a 80 FPS quando está abaixo. A maioria dos algoritmos simples funcionará entre 40-80 FPS em resoluções QVGA (320x240) e inferiores. O seu sensor de imagem vem com uma lente de 2,1mm numa montagem padrão de lente M12. Se desejar utilizar lentes mais especializadas com o seu sensor de imagem, pode facilmente comprá-las e instalá-las você mesmo.
- Para aplicações profissionais de visão por computador, pode comprar a nossa SingTown.módulo de câmara global shutter mt9V034SingTown.
- Para aplicações de visão por máquina com imagem térmica infravermelha, pode adquirir o nossoMódulo de imagem térmica FLIR LeptonSingTown.
- Interface de bateria de iões de lítio de 3.7V, pode adquirir a nossa SingTown.3.7V-1000MAH bateria de iões de lítio
Para mais informações sobre a OpenMV Cam, visite:https://singtown.com/openmv/
Aplicações
Atualmente, a câmara OpenMV pode ser utilizada para o seguinte (com mais a chegar):
- Detecção de Objetos por Rede Neural
- Pode utilizar o OpenMV para treinar redes neuronais para deteção de objetos, treinando qualquer alvo que deseje detetar. Por exemplo, diferentes números, diferentes frutas, diferentes marcadores, diferentes componentes, ou quaisquer alvos irregulares específicos podem ser treinados para identificar o número, as coordenadas e o nome do tipo de objeto dos alvos específicos.
- Pode detetar sinais de trânsito nas nossas estradas reais com base nos nossos tutoriais em vídeo, como proibição de buzinar, proibição de estacionar, limite de velocidade 80, etc./learn/50918
- Classificação por Rede Neural
- Pode utilizar o OpenMV para treinar redes neuronais para deteção de objetos, treinando qualquer alvo que deseje detetar. Por exemplo, diferentes números, diferentes frutas, diferentes marcadores, diferentes componentes, ou quaisquer alvos irregulares específicos podem ser treinados para identificar o número, as coordenadas e o nome do tipo de objeto dos alvos específicos.
- Pode classificar se uma pessoa está a usar uma máscara com base no nosso tutorial em vídeo./learn/50872
- TensorFlow Lite para Microcontroladores
- O suporte do TensorFlow Lite permite-lhe executar modelos personalizados de classificação e segmentação de imagem na OpenMV Cam. Com o TensorFlow Lite, pode facilmente classificar áreas complexas na imagem e controlar os pinos 1/0 com base no que vê.

- Diferenciação de Quadros
- Pode utilizar o algoritmo de diferença de quadros na OpenMV Cam para detetar movimento numa cena. A diferença de quadros pode ser aplicada em sistemas de segurança.
- Rastreamento de Cores
- Pode utilizar o OpenMV para detetar até 16 cores simultaneamente numa imagem (embora nunca queira encontrar mais de 4 cores), e cada cor pode ter qualquer número de manchas diferentes. O OpenMV irá informá-lo sobre a posição, tamanho, centro e orientação de cada mancha. Utilizando o rastreamento de cores, a sua OpenMV Cam pode ser programada para seguir o sol, seguir linhas, rastrear alvos e muito mais. Demonstração em vídeo:/learn/49993

- Rastreamento de Marcadores
- Pode utilizar a câmara OpenMV para detetar grupos de cores em vez de cores individuais. Isto permite-lhe colocar etiquetas de cores (rótulos com 2 ou mais cores) em objetos, e a OpenMV irá capturar o conteúdo dos objetos etiquetados.
- Detecção Facial
- Pode utilizar a câmara OpenMV para detetar rostos (ou quaisquer objetos genéricos). A sua câmara OpenMV pode processar modelos Haar para deteção genérica de objetos e inclui modelos Haar integrados para Rosto Frontal e Olhos, permitindo detetar rostos e olhos./learn/50013
- Rastreamento Ocular
- Pode utilizar o rastreamento ocular para detetar a direção do olhar de alguém. Pode usá-lo para controlar robôs. O rastreamento ocular deteta a posição da pupila enquanto verifica se os olhos estão presentes na imagem.
- Detecção de Pessoas
- Pode utilizar o detector de pessoas integrado (modelo TensorFlow Lite) para detetar se há pessoas no campo de visão.
- Fluxo Óptico
- Pode utilizar fluxo ótico para detetar movimento em frente da sua câmara OpenMV. Por exemplo, pode usar fluxo ótico num quadricóptero para controlar a estabilidade no ar.
- Detecção/Descodificação de Código QR
- Pode utilizar a câmara OpenMV para ler códigos QR no seu campo de visão. Com a deteção/descodificação de códigos QR, pode permitir que robôs inteligentes leiam etiquetas no seu ambiente.
- Detecção/Decodificação de Matriz de Dados
- A câmara OpenMV também pode detetar e descodificar códigos Data Matrix (códigos de barras 2D). Pode ver o nosso vídeo aqui.
- Descodificação de Código de Barras Linear
- A câmara OpenMV também pode processar códigos de barras 1D. É capaz de descodificar EAN2, EAN5, EAN8, UPCE, ISBN10, UPCA, EAN13, ISBN13, I25, DATABAR, DARABAR_EXP, CODABAR, CODE39, CODE93 e CODE128. Veja o nosso vídeo aqui:/learn/50017
- Rastreamento AprilTag
- Ainda melhor do que os códigos QR acima, a OpenMV Cam também pode rastrear AprilTags. Os AprilTags são marcadores fiduciais de última geração que são invariantes à rotação, invariantes à escala, invariantes ao cisalhamento e invariantes à iluminação. Veja o nosso vídeo aqui:/learn/49590
- Detecção de Linhas
- A câmara OpenMV pode completar rapidamente a deteção de linhas infinitas enquanto funciona a uma taxa de fotogramas quase total. Também pode encontrar segmentos de linha não infinitos. Pode ver o nosso vídeo aqui:/learn/50009
- Detecção de Círculos
- Pode facilmente utilizar o OpenMV para detetar círculos em imagens.
- Detecção de Retângulos
- O OpenMV também pode detetar retângulos, utilizando o código de deteção de quadrados da biblioteca AprilTag.
- Correspondência de Modelos
- Pode utilizar a correspondência de modelos OpenMV para detetar se existem imagens semelhantes ao modelo no campo de visão. Por exemplo, a correspondência de modelos pode ser usada para encontrar marcadores em PCBs ou ler números conhecidos em ecrãs.
- Captura de Imagem
- Pode utilizar o OpenMV para capturar imagens RGB565/escala de cinzento BMP/JPG/PPM/PGM. Pode controlar diretamente como capturar imagens em scripts Python. Mais importante ainda, pode utilizar algoritmos de visão computacional para desenhar linhas, caracteres e depois guardar.

- Gravação de Vídeo
- Pode utilizar a câmara OpenMV para gravar vídeos MJPEG em RGB565/escala de cinzentos ou imagens GIF (ou vídeos RAW). Pode controlar diretamente como cada fotograma do vídeo é gravado em scripts Python e ter controlo total sobre quando iniciar e parar a gravação de vídeo. Além disso, tal como ao tirar fotografias, pode utilizar algoritmos de visão computacional para desenhar linhas, caracteres e, em seguida, guardar.
Finalmente, todas as funcionalidades acima mencionadas podem ser combinadas com o controlo dos pinos de IO para funcionar com as suas próprias aplicações personalizadas, de modo a interagir com o mundo real.