Como instalar o OpenCV no Raspberry Pi?

Precisamos realizar diferentes operações em uma imagem para extrair informações úteis dela. Portanto, este processo de aplicação de diferentes algoritmos em uma imagem para obter a saída desejada é chamado Processamento de imagem . Às vezes, a imagem na entrada está borrada e queremos adquirir dados dela. Por exemplo. Quando os ladrões vêm para roubar a bicicleta ou o carro, eles vêm principalmente com a bicicleta e câmeras aéreas são instaladas nas estradas que capturam a filmagem do incidente. Precisamos saber a matrícula daquele veículo em que vêm os ladrões e isso pode ser feito facilmente usando alguns algoritmos de processamento de imagem. Para realizar o processamento de imagens em certas imagens, precisamos instalar algumas bibliotecas no hardware que estamos usando. Entre essas bibliotecas, o mais importante é OpenCV. OpenCV pode ser instalado em PCs e microprocessadores também. O Raspberry Pi é um microprocessador utilizado em diversos projetos eletrônicos. Depois de instalar o sistema operacional no Raspberry Pi, podemos realizar várias tarefas de processamento de imagem nele. Instalar o OpenCV no Raspberry Pi é uma tarefa longa e agitada. Neste artigo, aprenderemos como instalar o OpenCV no Raspberry Pi para realizar diferentes operações de processamento de imagem nele.



Detecção de rosto com OpenCV instalado no Raspberry Pi

Como configurar o Raspberry Pi e configurar o OpenCV nele?

Agora, vamos começar a configurar Pi e fazer as operações mencionadas como passo a passo para instalar o OpenCV nele. A instalação do OpenCV no Pi é um processo demorado e leva cerca de 4 horas para ser concluído, portanto, se você tiver pouco tempo, não inicie a instalação, consulte este tutorial quando estiver livre. Junto com este Pi é aquecido quando é girado EM por muito tempo e tempo, as operações que levam são realizadas nele, portanto, mantenha-o em um local fresco quando estiver trabalhando nele.



Etapa 1: Componentes usados

  • Raspberry Pi 3B + Kit
  • Televisão com porta HDMI
  • Cabo HDMI
  • Mouse de computador com fio

Etapa 2: Seleção do modelo Raspberry Pi

Vários modelos de framboesa pi estão disponíveis no mercado. Exceto para framboesa pi zero, qualquer modelo pode ser preferido. Isso ocorre porque no Pi zero configurar uma rede é um trabalho muito cansativo. Os modelos mais recentes como 3A +, 3B + ou 4 podem ser adquiridos. O novo Raspberry Pi 3 é o gadget mais rápido e dominante que a Raspberry Pi Foundation lançou até agora. Portanto, neste projeto, usaremos o Raspberry Pi 3B +.



Raspberry Pi 3B +



Etapa 3: Conectando os periféricos

Depois de escolher o Raspberry Pi, conectaremos o teclado e o mouse ao Raspberry Pi. Depois de conectá-los, use o cabo HDMI para conectar Pi à televisão. Depois de fazer essas conexões, estamos prontos para prosseguir.

Etapa 4: Escolha do sistema operacional

Em primeiro lugar, precisaremos de um cartão SD com um sistema operacional adequado. Ao escolher o SO, hoje em dia existem várias alternativas, do Raspbian “convencional” a frameworks dedicados de trabalho de mídia, e até mesmo o Windows 10 IoT. Não há necessidade de muitos aplicativos, portanto, devemos deixar a Unidade de Processamento Central (CPU) e a Memória de Acesso Aleatório (RAM) o máximo que pudermos para o aplicativo de streaming de mídia. Um problema é que o Arch Linux é recomendado para pessoas que têm bastante conhecimento em Linux. Eles estão na linha de frente e devemos continuar enfrentando problemas ao apresentar aplicativos e bibliotecas de terceiros. Portanto, se este for seu primeiro estabelecimento de home theater, sugerimos escolher Raspbian Lite . É orientado por linha de comando e pode sem muito esforço, projetado para continuar funcionando no modo 'sem cabeça', ou seja, acessado totalmente remotamente pelo sistema, sem necessidade de um console ou tela.

Raspbian Lite



Etapa 5: verifique se o Raspberry Pi está atualizado

Mantenha as fontes do seu Pi atualizadas, caso contrário, o software desatualizado causará alguns problemas. Habilite o visualizador de Virtual Network Computing (VNC) em seu Pi e conecte seu Raspberry Pi ao visualizador de VNC. O link é fornecido abaixo para baixar o VNC e conectá-lo com Pi.

Visualizador VNC

Agora, abra o terminal e execute o seguinte comando:

sudo apt-get update

Então,

sudo apt-get upgrade

Vários pacotes serão instalados e se solicitado, pressione E e depois Entrar para instalá-los corretamente.

Etapa 6: faça login no Raspberry Pi

O nome de usuário padrão do Raspberry Pi é pi, e a senha padrão é framboesa. Estes são os detalhes de login padrão e em seu primeiro login, use-os para fazer login no pi. Você também pode alterar esses detalhes sempre que quiser.

Faça login no Raspberry Pi

Etapa 7: Criação de espaço suficiente no Raspbian para OpenCV

O OpenCV adquire grande quantidade de memória, portanto, precisamos expandir o sistema de arquivos e alocar todo o espaço para o cartão de memória. Iremos ao prompt de comando do raspberry e digitaremos o seguinte comando:

sudo raspi-config

Uma janela aparecerá e terá a seguinte aparência:

Ferramenta de Configuração

Agora, clicaremos em Opções avançadas e aí encontraremos a opção “Expandir sistema de arquivos”. Selecione essa opção.

Expandir sistema de arquivos

Vamos pressionar o Entrar botão e, em seguida, clique no Terminar botão. Nesse estágio, nosso Raspberry Pi precisa ser reiniciado para que as alterações tenham efeito. Digite o seguinte comando para reiniciá-lo:

sudo reboot

Após a reinicialização, verificaremos se nosso sistema de arquivos se expandiu e se todo o espaço está incluído no cartão SD ou não. Executando df -h comando podemos verificar se nosso disco se expandiu:

Quem está usando um cartão micro SD de 8GB pode estar usando 50% do espaço disponível, portanto, excluindo Wolfram Engine e LibreOffice pode liberar cerca de 1 GB de espaço. (Lembre-se de que esta etapa é opcional).

sudoapto-pegue purgavolfrâmio-motor sudoapto-pegue purgalibreoffice* sudoapto-pegue limpar  limpo sudoapto-pegue autoremove

Etapa 8: Instalando Dependências

Antes de prosseguir e dependências, precisamos atualizar e atualizar os pacotes existentes que estão instalados no Pi:

sudo apt-get update

Então,

sudo apt-get upgrade

Agora, vamos instalar algumas ferramentas de desenvolvimento que nos ajudarão a configurar o OpenCV build:

sudoapto-pegue instalarConstruir-essencialcmakepacote-config

Para realizar as diferentes operações nas imagens, precisamos carregar os diversos formatos de imagem do disco rígido. Esses formatos incluem JPEG, PNG, etc. Para carregar esses formatos de imagem, instalaremos alguns pacotes de E / S:

sudoapto-pegueinstalarlibjpeg-devlibtiff5-devlibjasper-devlibpng12-dev

Junto com esses pacotes de E / S de imagens, também instalaremos pacotes de E / S de vídeo. Depois de instalar esses pacotes de vídeo, poderemos carregar vários formatos de arquivo de vídeo.

sudoapto-pegue instalarlibavcodec-devlibavformat-devlibswscale-devlibv4l-dev sudoapto-pegue instalarlibxvidcore-devlibx264-dev

A biblioteca OpenCV acompanha um submódulo denominado highgui que é utilizado para mostrar imagens em nossa tela e fabricar GUIs essenciais. Antes de compilar esse submódulo, precisamos instalar a biblioteca de desenvolvimento GTK:

sudoapto-pegue instalarlibgtk2.0-devlibgtk-3-dev

Diversas operações de matriz podem ser realizadas em uma imagem verificando o tamanho da imagem e, em seguida, lendo os valores de pixel. Também podemos converter esses valores de pixel em forma binária e, em seguida, modificar esses dígitos binários para regenerar uma imagem. No raspberry pi, temos algumas limitações ao fornecer informações, portanto, essas bibliotecas são importantes e precisam ser instaladas. Portanto, esses resultados podem ser melhorados com a instalação de algumas dependências extras:

sudoapto-pegue instalarlibatlas-base-devgfortran

Algumas pessoas trabalharão no Python 2.7 e outras no Python 3. Os arquivos de cabeçalho do Python 2.7 e Python 3 precisam ser instalados para compilar o OpenCV junto com as ligações do Python:

sudoapto-pegue instalarpython2.7-devpython3-dev

Na nova versão do Raspbian Python 3 já está instalado e uma mensagem pode aparecer no Terminal Lx informando que “Python 3 já é a versão mais recente” . Esta etapa é importante porque podemos enfrentar erros em relação ao arquivo de cabeçalho denominado como Python.h enquanto executa o comando faço para compilar o OpenCV.

Etapa 9: Baixando o código-fonte OpenCV

Quando terminarmos de instalar as dependências, procuraremos a pasta de arquivo do OpenCV versão 3.3.0 no diretório oficial do OpenCV.

CD ~ wget -OU opencv.fecho eclair https://github.com/Itseez/opencv/arquivo/3.3.0.zip descompactaropencv.fecho eclair

Estamos instalando todo o pacote do OpenCV, então precisamos incluir opencv_contrib também. Baixe-o do site oficial e descompacte-o.

wget -OU opencv_contrib.fecho eclair https://github.com/Itseez/opencv_contrib/arquivo/3.3.0.zip descompactaropencv_contrib.fecho eclair

Ao baixar esses diretórios, tenha em mente que a versão do OpenCV e opencv_contrib devem ser iguais, ou seja, devem ser 3.3.0, caso contrário, haverá erros de compilação durante a instalação.

Etapa 10: Python 2.7 ou Python 3?

Em termos de desempenho, o python 2.7 é melhor do que o python 3, mas no OpenCV não há muita diferença. Precisamos instalar pip no Raspberry antes de compilar o OpenCV. É um sistema de gerenciamento de pacotes usado para instalar os pacotes de software usados ​​em Python. Esses pacotes podem estar presentes no último raspbian por padrão, mas é melhor verificá-lo usando os seguintes comandos.

wgethttps://bootstrap.pypa.EU/pegue-pip.py sudoPitãopegue-pip.py sudopython3pegue-pip.py

Depois de instalar o pip, dois pacotes são altamente recomendados e precisam ser instalados enquanto se trabalha no OpenCV. O primeiro é virtualenv e o segundo virtualenvwrapper. Não podemos importar OpenCV diretamente em Python, então vamos criar um ambiente virtual e, em seguida, trabalhar nesse ambiente. Um ambiente virtual é uma ferramenta excepcional usada para manter as condições exigidas por vários projetos em locais distintos, criando ambientes Python separados para cada um deles.

sudopipinstalarvirtualenvvirtualenvwrapper sudorm -rf ~/.cache/pip

Depois de instalar esses pacotes, precisamos atualizar nosso ~/.perfil arquivo que é o arquivo oculto em nosso diretório inicial para incluir as seguintes linhas no final dele. Digite o seguinte comando para entrar no diretório:

nano~/.perfil

Quando o diretório for aberto, role para baixo e inclui as seguintes linhas:

# virtualenv e virtualenvwrapper exportarWORKON_HOME=$ HOME/.virtualenvs exportarVIRTUALENVWRAPPER_PYTHON=/usr/sou/python3 fonte /usr/local/sou/virtualenvwrapper.sh

Após incluir essas linhas, pressione ctrl + x, salve pressionando E e saia.

Home Directory

Sempre que lançarmos o terminal e entrarmos em nosso Pi, esse arquivo dot será carregado automaticamente para nós. Como já estamos logados, digitaríamos manualmente fonte ~ / .profile para carregar o conteúdo do arquivo.

Criação de ambiente virtual Python: Precisamos criar um ambiente virtual usando python 2.7 e python 3.

mkvirtualenvcv -p python2

Isso criará um ambiente chamado cv no Python 2.7. Quem quiser criar um ambiente em Python 3 deve digitar o comando mencionado abaixo:

mkvirtualenvcv -p python3

Verificando se estamos no ambiente virtual denominado “cv”: Quando reinicializarmos o pi, não permaneceremos em um ambiente virtual e precisamos digitar dois comandos mencionados abaixo para entrar no modo de ambiente virtual.

fonte ~/.perfil trabalho emcv

A imagem abaixo indica que não estamos no modo de ambiente virtual:

LxTerminal

Assim, digitando os dois comandos mencionados acima, poderemos acessar nosso ambiente virtual. Se quisermos sair do ambiente virtual, digitaremos desativar:

Trabalho em ambiente virtual

Instalando NumPy no Raspbian: A única dependência de que precisamos para instalar o OpenCV no Raspberry é o Numpy. Digite o comando mencionado abaixo para instalar o Numpy no Raspberry Pi. A instalação levará aproximadamente 10 minutos:

pipinstalarentorpecido

Etapa 11: Compilando e instalando o OpenCV

Vamos compilar e instalar o OpenCV no ambiente virtual, portanto, certifique-se de que está trabalhando no ambiente virtual do CV. Se não estivermos no ambiente virtual, o OpenCV não conseguirá compilar. Agora, mude o diretório para o diretório inicial, subdiretório abrir cv 3.3 e então crie o diretório de construção. Depois de fazer o diretório de compilação, cole as últimas cinco linhas no CMake diretório. Ele verificará se há certos caminhos de conjuntos de bibliotecas, versões de Python, etc.

CD ~/opencv-3.3.0/ mkdir Construir CD Construir cmake -D CMAKE_BUILD_TYPE=LANÇAMENTO  -D CMAKE_INSTALL_PREFIX=/usr/local  -D INSTALL_PYTHON_EXAMPLES=EM  -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.3.0/módulos  -D BUILD_EXAMPLES=EM ..

Para aqueles que estão usando o Python 2.7, eles terão que rolar para a saída do CMake e procurarão a seção Python 2.7 e ver se o Numpy e os caminhos dos pacotes estão configurados corretamente. Para quem está usando Python 3, verifique a seção python 3 logo abaixo da seção Python 2:

Verificando a seção Python 2.7

Agora, estamos finalmente prontos para compilar o OpenCV. Digite o comando make e ele iniciará o processo de compilação. A compilação levará aproximadamente quatro horas, portanto, é preferível iniciar a compilação antes de dormir à noite, para que quando você acordar de manhã o OpenCV seja compilado. Digitar um comando “make” irá compilar usando apenas um núcleo. Embora seja um processo demorado, mas tem menos probabilidade de erros. Usar o comando make -j4 e make -j2 pode resultar no superaquecimento do Raspberry Pi e também em erros de compilação:

faço

Compilação Completa

Vamos instalar o OpenCV 3 no Raspberry Pi usando o seguinte comando. Executar este comando copiará os respectivos arquivos em seus locais:

sudo make install

Nossa instalação será concluída executando este comando final:

sudoldconfig

Algumas etapas são deixadas agora quando estamos usando Python 2.7 ou Python 3.

Etapa 12: Concluindo a instalação

Retorne ao diretório inicial digitando cd ~.

Python 3: Faremos um link simbólico dos vínculos OpenCV em nosso cv no diretório python 3 porque compilamos os vínculos OpenCV e python para o python 3.

CD ~/.virtualenvs/cv/lib/python3.5/local-pacotes/ em -s /usr/local/lib/python3.5/local-pacotes/cv2.então cv2.então

É isso aí!. Agora, instalamos o OpenCV no Raspberry Pi. Vamos agora verificar isso no ambiente virtual.

Etapa 13: Testando OpenCV

Abra o LxTerminal e escreva o fonte comando seguido pelo trabalho em comando. Como entramos no modo de ambiente virtual, importaremos ligações OpenCV digitando python e, em seguida, importaremos cv2. Se não houver mensagem de erro, significa que foi importada com sucesso.

fonte ~/.perfil trabalho emcv Pitão >>importarcv2

Depois disso, vamos verificar nossa versão do OpenCV digitando o seguinte comando:

cv2.__versão__

Testando]

Instalamos o OpenCV no Raspberry 3B +. Agora podemos realizar várias operações de processamento de imagem em Python, como detecção de dígitos, reconhecimento de rosto, etc.