Geral

GUI para OpenCV com preview?

GUI para OpenCV

Raramente escrevo sobre visão computacional e redes neurais, apesar de já ter trabalho exclusivamente com isso. E faço isso raramente porque pra ser realmente bom em OpenCV tem que ter uma dedicação absurda; não tanto quanto o Leonardo Lontra, claro. Guarde esse nome, porque em algum momento você vai utilizar recursos do OpenCV desenvolvidos por ele; a GUI para OpenCV é apenas uma ‘amostra grátis’ de sua expertise.

Especialista em OpenCV





Leonardo Lontra é um carioca  especialista em OpenCV que já desenvolveu trabalhos inclusive com universidades nos EUA. Desenvolveu patches e funcionalidades para o OpenCV tanto para X86 como para ARM – mais especificamente, Raspberry. Já fez modificações em drivers de câmeras para tirar melhor proveito e, não satisfeito, criou um front-end para OpenCV, com preview em tempo-real. Você consegue imaginar o que seria um front-end para OpenCV? Bem, meus caros leitores, é difícil imaginar isso, por essa razão terei claramente que mostrar em video o que significa, o quão representativo é isso para quem trabalha com visão computacional. Tão representativo que você não precisa digitar 1 linha de código sequer para testar seus filtros, que nesse front-end podem ser combinados, mudada sua ordem e aplicados ajustes individuais. Tudo em uma janela. E o melhor de tudo; o Leonardo é meu amigo pessoal.

GUI para OpenCV

A ferramenta surgiu de uma necessidade pessoal do desenvolvedor, que foi gradativamente implementando recursos. Eu já usufruí de versões anteriores desse magnífico programa e me surpreendo a cada nova versão. Não estou certo de que possa mostrar metade dos recursos em apenas 1 artigo, mas conforme for, vou escrevendo outros. Inclusive, tenho um outro artigo que estou quase finalizando também e nele será utilizado OpenCV, então logo você verá esse software em operação novamente.

Preparação do ambiente

Antes de poder utilizá-lo, alguns procedimentos são necessários, iniciando pela instalação do próprio OpenCV. Eu utilizo uma versão disponibilizada pelo próprio Leonardo Lontra. Se quiser experimentá-la também, pegue-a aqui. Mas certamente você terá que suprir dependências. Você saberá quais são ao instalar (ou tentar instalar) o pacote. Basicamente:

Instalado o OpenCV, pegue o arquivo de alias para o virtualenv nesse link. Agora será necessário incluí-lo na última linha do seu arquivo ~/.bashrc. Edite o arquivo .bashrc com seu editor preferido e na última linha adicione:

Salve o arquivo, saia dele e então carregue novamente o .bashrc:

Virtualenv

Escrevi um artigo exclusivo relacionado ao virtualenv. Se quiser ler um pouco a respeito para ter mais intimidade, clique nesse link.

Instalar o virtualenv

Será necessário instalar o pacote virtualenv. Para tal:

Lembre-se que utilizaremos Python3.

Criar o diretório de trabalho

Basicamente, precisamos criar um diretório onde será alocado o virtualenv. Você precisa ter Python3 instalado e, se não tiver, instale-o previamente.

Essa variável $WORKON_HOME está dentro do arquivo virtualenv_alias. Esse comando simplesmente criará o diretório de trabalho em seu home.

Criar o virtualenv para o cv-gui

Agora é hora de criar o virtualenv para trabalhar com o cv-gui (esse é o nome do front-end). Vale lembrar que essa versão disponibilizada do OpenCV foi compilada para utilizar com a versão 3 do Python. Desse modo, você precisa especificar a versão ao criar o virtualenv. Para tal, basta digitar:

 Acessar o virtualenv

Aquele script lá em cima que você incluiu em seu .bashrc te disponibiliza alguns comandos, como o mkenv, do tópico anterior. Do mesmo modo, para acessar o virtualenv criado anteriormente, vocẽ deverá acessar um menu com outro desses comandos, então selecionar o virtualenv a utilizar. Apenas digite venvmenu. como só terá um virtualenv nesse momento, você deve ver algo como:

virtualenv | GUI para OpenCV
virtualenv | GUI para OpenCV

 

Apenas digite 1 e pressione Enter. seu prompt deve ficar parecido com isso (dependendo da distribuição Linux utilizada):

cv-gui no virtualev | GUI para OpenCV
cv-gui no virtualenv | GUI para OpenCV

 

Agora é a parte mais triste. Hoje, apenas o criador e eu temos o programa. Não sei se o Leonardo Lontra vai  vender ou distribuir como  opensource, mas cabe a vocês deixarem seus comentários no artigo fazendo sua solicitação. Vamos convencê-lo disso?

O programa esstá dentro de um arquivo de compressão tgz. Tendo-o em mãos, le é o próximo  passo desse tutorial todo. Eu costumo proceder da seguinte maneira:

  • Crio um diretório chamado  opencv em meu home.
  • Sempre copio o pacote pra dentro deste diretório  recém criado.
  • Descomprimo o pacote.
  • Acesso o diretório e então, um passo importantíssimo nesse momento:
requirements | GUI para OpenCV
requirements | GUI para OpenCV

Se você não tem o gerenciador de pacote pip instalado, sem problemas, proceda com sua instalação prévia:

Executar o programa cv-gui

E finalmente, vamos invocar a lâmpada do gênio (porque o gênio é o Lontra);

E a primeira coisa que você deve ver é uma janela vazia, pronta para ser explorada. O resto eu mostro no video.

Inscreva-se no nosso newsletter, alí em cima à direita e receba novos posts por email.

Siga-nos no Do bit Ao Byte no Facebook.

Prefere twitter? @DobitAoByte.

Inscreva-se no nosso canal Do bit Ao Byte Brasil no YouTube.

Nossos grupos:

Arduino BR – https://www.facebook.com/groups/microcontroladorarduinobr/
Raspberry Pi BR – https://www.facebook.com/groups/raspberrybr/
Orange Pi BR – https://www.facebook.com/groups/OrangePiBR/
Odroid BR – https://www.facebook.com/groups/odroidBR/
Sistemas Embarcados BR – https://www.facebook.com/groups/SistemasEmbarcadosBR/
MIPS BR – https://www.facebook.com/groups/MIPSBR/
Do Bit ao Byte – https://www.facebook.com/groups/dobitaobyte/

Próximo post a caminho!