Inteligencia Artificial

Como compilar Dlib e TensorFlow

Apesar de falar da Dlib e TensorFlow nesse artigo, o ponto mais importante aqui é realmente a dlib, que será utilizada em diversos outros artigo. Nesse artigo o TensorFlow só é citado porque faz parte dos repositórios do Lontra, para compilação cruzada.

Compilar Dlib e TensorFlow

Vamos começar as compilações pela dlib. Ela é bastante utilizada também para face detection, assim como o haarcascades do OpenCV. Uma das partes do OpenFace utiliza ela em um script lua para fazer ajustes de tamanho, é bem interessante.

Clonar repositório

O primeiro passo é clonar o repositório do Lontra, relacionado à dlib. Não importa se é no sistema nativo ou no container docker, o procedimento é o mesmo.

Eu copio direto como root pra evitar os problemas de transição de usuário. Mas antes de iniciar o processo, permita-me explicar alguns detalhes; teremos que instalar o pacote python-dev, pois o header é requerido durante a compilação. Mas o arquivo de configuração está apontando para a versão 3.6 do python e a instalação nativa da versão 3 do python que está no Ubuntu é a 3.5, por isso precisamos inicialmente editar o arquivo build_dlib/config/default.conf e na linha 25 devemos trocar pela versão 3.5. Depois disso, iniciamos o processo de instalação e compilação:

Confirme as questões que forem feitas no prompt, sempre com y ou s, conforme a regionalidade configurada. Em pouco tempo, a compilação será iniciada e dependendo do hardware, pode ser um processo bastante rápido. Quando terminar a compilação, será exibido o caminho do pacote gerador, que inclusive pode ser compartilhado com outros computadores.

Dlib e TensorFlow

No meu caso, o caminho está no home do meu usuário, que foi a partir de onde iniciei a compilação. Daí para instalar:

Com isso, finalizamos a dlib.

Compilar TensorFlow

Para compilar o TensorFlow, adivinha o repositório de quem vamos clonar? O repositório é para compilação cruzada, contamplando as boards Beagle Black, Odroid C1, Odroid C2, RPi, RPi One e RPi One Openblas.

Dependências

Para compilação cruzada, diversas dependências deverão ser supridas:

E a arquitetura deverá ser especificada:

E suporte a Python:

Então, procede-se com a compilação:

Lembrando que esse repositório é apenas para arquiteturas ARM. Espero que tenha gostado dessa singela introdução à configuração do Dlib e TensorFlow, e tenha paciência que chegaremos às brincadeiras logo mais!

Artigo curtinho, hum? Tem mais um em seguida, não esquenta.

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/

Sistemas Eletrônicos

https://www.facebook.com/groups/544679592355388/

Projetos Arduino | Eletrônica

https://www.facebook.com/groups/projetosarduinoeletronica/

ESP8266 e ESP32

https://www.facebook.com/groups/ESP8266BR/

ARM Brasil

https://www.facebook.com/groups/508153815944410/

MIPS BR

https://www.facebook.com/groups/MIPSBR/
Do Bit ao Byte

https://www.facebook.com/groups/dobitaobyte/

Próximo post a caminho!