Módulo de visão computacional aberto

Recentemente tive contato com o projeto OpenMV (Open Machine Vision). Já existem diversos módulos comerciais que desempenham uma função similar e a grande vantagem é que podemos usar implementações avançadas sem precisar aprender visão computacional ou mesmo usar um sistema embarcado que suporte as demandas do OpenCV.

Um projeto que demonstra a utilização deste tipo de módulo, embora pouco técnico e mais artístico foi este. Note no vídeo que o módulo tem funções avançadas como reconhecimento de face e até mesmo reconhecer em que direção os olhos estão direcionados. Infelizmente não achei o nome exato do módulo, mas o usado neste projeto é comercial, tenho certeza.

Outro projeto um pouco mais técnico é este “robô atirador“. O módulo utilizado naquele projeto é também open source e menos avançado, o Pixy. Parece bem interessante também, mas li pouco sobre este, então vou focar no OpenMV. Pixy tem alguns parentes neste endereço.

Minha impressão final do OpenMV é que o projeto está ainda engatinhando mas tem bastante potencial para algumas aplicações específicas. Parece ter menos recursos de hardware que seus irmãos mais velhos mas por isso é também mais barato em termos de custo. Não consigo achar agora mas li que o Bill Of Materials flutuava em volta de 30 dólares. O preço corrente nas páginas oficias está em torno de $55.

Para dar uma idéia, os componentes principais e mais caros são o uC que flutua de $10 a $15 e o sensor óptico que vai por menos de $3 a unidade.

O OpenMV é baseado no MicroPython então como esperado, qualquer funcionalidade seria facilmente (talvez não trivialmente) portada.


Vale a pena destacar: por um bom tempo pensei que a implementação de CV nessa placa era alguma biblioteca que os criadores simplesmente costuraram com o resto da plataforma e fizeram algo mais “produto final”. De fat0 existe algo que poderia ser usado, o SimpleCV mas os criadores resolveram escrever sua própria implementação.

Existem várias possíveis consquências para isto. Acredito que a mais relevante seja – estamos limitados ao que os desenvolvedores resolveram suportar, e como ainda não é uma comunidade enorme este conjunto será limitado no início.

Por outro lado, acredito que o conjunto de funções já é ótimo para aplicações básicas de robótica e segurança. Aparentemente a Pixy que é um pouco mais velha tem reconhecimento de face.

Outra funcionalidade que achei fenomenal foi o shield com a câmera infra-vermelha, que projeta a informação de temperatura por cima da imagem :

Products

Achei uma discussão bem interessante sobre as capacidades de expansão da câmera e é bom saber dos limites.

O que aprendi ali é que como sempre, o melhor a se fazer é usar a câmera para o que foi projetada. Expansões como utilizar um sensor óptico em resolução maior vão gerar mais dor de cabeça. Para isto aparentemente existem outras soluções/plataformas que fazem este trabalho melhor.

Mas é de fato tentador usar uma resolução maior simplesmente olhando as opções disponíveis na mesma família da OmniVision.

É isso aí pessoal. Essas foram minhas impressões, se você conhece plataformas parecidas ou tem algo a acrescentar, deixe nos comentários!

 

This entry was posted in Notícias. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>