Captura de imagem em Beaglebone Black usando OpenCV (Parte 12/15)

Captura de imagem em Beaglebone Black usando OpenCV (Parte 12/15)

Como já expliquei como fazer a interface da web cam com o BBB aqui falarei sobre a captura de imagem usando programação de script python. É um tutorial simples onde você também pode adicionar efeitos na forma de imagem em preto e branco, detecção de movimento, imagem nítida, etc. Usei a biblioteca opencv que programa funções de computador em tempo real e aprendizado de máquina.

Ferramentas necessárias:

  • Beaglebone Preto
  • Webcam

Configuração do ambiente

Antes de prosseguir, crie uma configuração conforme explicado em como fazer a interface da web cam com o BBB. Conecte a webcam ao BBB através da porta USB. Conecte-se à internet e ligue o BBB. Você tem acesso remoto do BBB no desktop.

Protótipo de câmera de segurança baseada em Beaglebone Black

Fig. 1: Protótipo de câmera de segurança baseada em Beaglebone Black

Primeiro de tudo, atualize a versão do seu kernel. (Ignore se já tiver feito).

Instale o Opencv

Instale o opencv no BBB do repositório debian ou site oficial. Aqui eu instalei do repositório debian. Execute os seguintes comandos no prompt de comando:

sudo apt-get install python-opencv
sudo apt-get install libopencv-dev

Instale as dependências

Você precisa instalar algumas dependências como build, imagem, vídeo, GUI etc. no BBB.

Passo 1: Instale a dependência de compilação executando as seguintes instruções:

sudo apt-get install build-essential cmake

Passo 2: Instale a biblioteca de E/S de mídia executando as seguintes instruções:

sudo apt-get install zlib1g-dev libwebp-dev libpng-dev libjasper-dev libtiff5-dev libopenexr-dev libgdal-dev libjpeg-dev

Passo 3: Instale a biblioteca GUI executando as seguintes instruções:

sudo apt-get install qt5-default libvtk6-dev

Passo 4: Instale a biblioteca de E/S de vídeo executando as seguintes instruções:

sudo apt-get instalar libavcodec-dev libavformat-dev libdc1394-22-dev libswscale-dev libtheora-dev libxvidcore-dev libx264-dev libvorbis-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libv4l-dev libxine2-dev – desenvolvedor

Introdução ao programa

Abra o terminal de comando e crie um novo arquivo usando o comando touch com extensão .py (ou seja, image.py). Abra o arquivo com qualquer editor de texto (ou seja, nano, vim etc.) e escreva um código em linguagem python.

Opencv é uma ótima biblioteca de aprendizado de máquina e ciência da computação escrita em C, C++, java e python. Ele suporta excelente funcionalidade de processamento de imagem e vídeo e funciona bem na plataforma Linux embarcada. Você precisa ler a imagem do dispositivo web cam que está conectado ao BBB. Será zero se uma única webcam estiver conectada. Então, basta passar zero da função da seguinte forma:

câmera = cv2.VideoCapture(0)

Imagem da webcam conectada ao Beaglebone Black

Fig. 2: Imagem da webcam conectada ao Beaglebone Black

Criei um tamanho de quadro de 1280 x 720 que funciona bem com BBB. Você pode ajustar o tamanho do quadro conforme desejar, compatível com a biblioteca. Defina o tamanho do quadro da imagem através das seguintes funções:

cam.set (cv2.cv.CV_CAP_PROP_FRAME_WIDTH, 1280)
cam.set (cv2.cv.CV_CAP_PROP_FRAME_HEIGHT, 720)

Agora, capture a imagem do dispositivo (ou seja, web cam) seguindo a função:

cam.read( )

Forneça um atraso de pelo menos 10 ms após a captura da imagem seguindo a função:

cv2.waitKey(10)

Se você deseja mostrar a imagem na tela, execute a seguinte função:

cv2.imshow (“Imagem de teste”, img)

Salve o arquivo de imagem com um nome específico seguindo a função:

cv2.imwrite (“demopic.bmp”, img)

Diagramas de circuito

Circuito-Diagrama-Beaglebone-Black-Security-Camera

Conteúdo Relacionado

Uma rede de sensores é incorporada em todos os...
O controlador do motor é um dos componentes mais...
ESP32-CAM é um módulo de câmera compacto que combina...
A evolução dos padrões USB foi fundamental para moldar...
A SCHURTER anuncia um aprimoramento para sua conhecida série...
A Sealevel Systems anuncia o lançamento da Interface Serial...
A STMicroelectronics introduziu Diodos retificadores Schottky de trincheira de...
Determinar uma localização precisa é necessário em várias indústrias...
O novo VIPerGaN50 da STMicroelectronics simplifica a construção de...
A Samsung Electronics, fornecedora de tecnologia de memória avançada,...
O mercado embarcado tem uma necessidade de soluções de...
Você provavelmente já se deparou com o termo 'arrastar'...
Você provavelmente tem um Isolador de suporte Se você...
Você provavelmente já viu permanecer um isolante sente-se em...
Você provavelmente já viu Isoladores de manilha entronizados em...
Você provavelmente já passou por situações em que o...
Torna al blog

Lascia un commento

Si prega di notare che, prima di essere pubblicati, i commenti devono essere approvati.