SempreUPdate
Notícias sobre Ubuntu, Debian, Fedora, Linux, Android, Tecnologia, LibreOffice e muito mais!

Instalando OpenCV no Ubuntu e seus Derivados

Biblioteca de Visão Computacional Multiplataforma

OpenCV (Open Source Computer Vision Library) ou simplesmente, Biblioteca de Visão Computacional de Código Aberto, foi lançada sob licença BSD e, portanto, é gratuita. Ela atualmente está na versão 3.3 e possui interfaces C++, C, Python, Java. Também possui vantagem de ser multiplataforma (Linux, Windows, Mac OS, iOS e Android).

O OpenCV foi projetado para eficiência computacional e com foco forte em aplicações em tempo real. Escrita em C/C++ otimizado, a biblioteca pode aproveitar o processamento multi-core. Assim, quando ativada com o OpenCL, ela pode aproveitar a aceleração de hardware da plataforma de computação heterogênea subjacente.

Visão computacional é a ciência e a tecnologia das máquinas que enxergam. Essa área da computação desenvolve teoria e tecnologia para a construção de sistemas artificiais ou Inteligência Artificial que obtém informação de imagens ou quaisquer dados multidimensionais.

Como já citado anteriormente, a biblioteca é multiplataforma, porém, estaremos mostrando como fazer o processo de download e compilação. Baseada na documentação da própria biblioteca e em alguns fóruns das próprias comunidades do OpenCV, eu elaborei um Script que instala todas as dependências necessárias para seu funcionamento. Além disso, o script também baixa a versão estável mais atual do OpenCV.

Resumindo, o script automatiza todas as tarefas, exatamente isso que você acabou de ler. O Script faz TUDO por você. E depois de rodar o script seu computador estará pronto para usar a biblioteca em Python, java, C, C++ e Android.  Os testes foram feitos na Distro Ubuntu. No entanto, o Script funciona em sistemas baseados em RedHatArch Linux.

 

Vamos aos passos

1 – Instalar o Git: Abra o terminal do Linux ou vá no atalho Ctrl+alt+T e digite o seguinte comando:

sudo apt-get install git -y

 

2 – Baixando os scripts necessários: Vá até o diretório onde deseja baixar os scripts (Por exemplo com o comando: “cd ~” para ir no diretório pessoal) e digite:

git clone https://github.com/bishoppython/Install_OpenCV_Script

 

Download OpenCV via GitHub                    Acesso ao Site Oficial do OpenCV

 

Isso fará com que seja criado um novo diretório com o nome “Install-OpenCV“.

3 – Execute o script para instalar o OpenCV: Para isso, você precisa entrar no diretório criado ao fazer o “git clone” e depois entrar no diretório da distro que você utiliza. Agora basta executar o script opencv_latest.sh, utilizando super usuário ou root (como a maioria conhece) e aguardar ele finalizar a instalação. No meu caso ficou assim:

bishop-elliot~# cd /home/bishop/Install-OpenCV/Ubuntu/
bishop-elliot/Ubuntu# ./opencv_latest.sh

Processamento do Script do OpenCV

O script vai realizar as seguintes tarefas:

  • Baixar a versão estável e mais atual do OpenCV;
  • Instalar as dependências necessárias, descompactar, compilar (utilizando 4 núcleos do processador);
  • Instalar o OpenCV.

Não se preocupe se o seu processador não for quad-core, uma vez que todo esse processo foi testado em um hardware de configurações bem humildes e rodou tranquilamente. Outrora é importante saber que esse processo demora bastante tempo e consome bastante processamento. Por isso, o ideal é deixar apenas essa atividade na máquina para que ocorra sem erros, principalmente a parte de compilação. Então não se assuste. É normal demorar.

Quando encerrar você verá uma mensagem com algo similar a “OpenCV 3.x ready to be used” ou “OpenCV 3.x This is Done!”.

Agora que instalamos a biblioteca e todas as suas dependências e já foi tudo compilado, é hora de testar.

Lembrando que: Estaremos fazendo os testes com a linguagem Python versão 2.7. Porém, ela pode ser compilada para suas outras versões.

 

Verificando e Testando a Biblioteca OpenCV

Existem algumas formas básicas para verificar. Vou mostrar duas delas: A primeira forma é através do terminal do linux, a outra é da própria Idle do python:

Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.3.0'
>>> 

 

A segunda forma é executando os programas exemplos que vem junto com a biblioteca. O programa abaixo que executamos ativa a webcam do dispositivo e serve para detectar faces. O resultado deve ser parecido com o seguinte (não notem o modelo rsrsrsrsr):

 

OpenCV
Figura 1 – Captura de face pela biblioteca OpenCV.

 

Localização do Arquivo é PATH = /home/bishop/Documentos/

bishop-elliot~# python /home/bishop/Documentos/webcam.py

O procedimento acima ativa a câmera do computador e faz a busca por uma face na tela. É normal acontecer de aparecer “falsos positivos” (que seria a identificação de falsas faces). Abaixo segue o código utilizado acima.

 

webcam.py

 

Também podemos fazer a identificação de pessoa ou objetos, no exemplo abaixo vemos que a biblioteca identifica uma pessoa parada na imagem.

Executando o seguinte código:

bishop-elliot~# python face_detect.py sozinho.jpg /usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_default.xml

(Lembrando que pode variar o PATH, dependendo de onde você instalou e compilou a biblioteca.)

Temos o seguinte resultado:

OpenCV
Figura 2 – People Detection (Detecção de Pessoa), pela biblioteca OpenCV.

Curiosidade

Como vimos essa biblioteca tem um grande potencial no âmbito da Inteligência artificial ou Learning Machine (Aprendizado de Maquina). Abaixo segue um video que segue a mesma base de visão computacional.

Esse video foi disponibilizado pelo The Wall Street Journal e suas redes sociais, além de ser postado nas redes sociais privada de jornalistas chineses. Isso nos dá uma dimensão do poder computacional que pode ser alcançado com essas bibliotecas de visão computacional.

Você Gostou? Deixe nos comentários se você conseguiu executar todo o tutorial. E se encontrou alguma dificuldade. O que você acha da visão computacional?

Para aprender um pouco mais consulte as fontes abaixo.

http://opencv.org/

http://docs.opencv.org/

https://www.wsj.com/

Comentários