O Facebook disponibilizou hoje os códigos de três softwares que utiliza em seus servidores para identificar objetos em imagens. Chamados de DeepMask, SharpMask e MultiPathNet, os programas conseguem analisar uma iamgem e separar os elementos (pessoas, prédios, carros, animais) contidos nela.

Como pode-se imaginar, a tecnologia tem uma série de utilidades. Ela pode, por exemplo, ser usada para ajudar pessoas cegas a navegar pela internet, ou ainda para criar tags automaticamente para imagens que sejam enviadas aos servidores. Isso permitiria uma classificação mais adequada das imagens sem a necessidade de intervenção humana. 

No entanto, os objetivos de longo prazo da empresa são permitir que os softwares gerem informações complexas a partir das imagens. Por exemplo, ao ver a foto de um prato, eles poderiam oferecer informações nutricionais sobre os ingredientes contidos nele, ou um aplicativo de câmera poderia ser usado em uma loja para que o usuário conseguisse ver o preço dos itens expostos.

Além disso, a empresa também pretende, no futuro, estender a capacidade desses softwares para que eles também consigam identificar objetos em vídeos. Com isso, eles poderiam classificar automaticamente os vídeos enviados à plataforma, e até mesmo filtrar em tempo real os vídeos ao vivo que forem transmitidos por meio do Facebook. 

Como funciona?

Redes neurais são responsáveis pelos três programas que a rede social usa para identificar os objetos nas imagens. As imagens são primeiramente enviadas ao DeepMask, que encontra padrões nos píxels das imagens e, com base nesses padrões, segmenta as áreas correspondentes aos objetos. A imagem abaixo mostra esse processo em escala de cinza, em uma resolução baixa; em geral, as imagens do facebook têm resolução maior e são coloridas, o que aumenta a complexidade do processo.

Reprodução

Para isso, ele precisa usar os dados de cor de cada píxel da imagem para determinar onde os objetos começam e terminam – o que não é um processo tão preciso. Por esse motivo, as imagens são em seguida enviadas ao SharpMask, que consegue identificar com maior precisão a silhueta de cada objeto. Uma demonstração do SharpMask pode ser vista por meio deste link.

Reprodução

Finalmente, a imagem, já com as marcações do SharpMask, são enviadas à MultiPathNet. Esse último programa é especializado em associar as formas encontradas nas imagens aos objetos. Por exemplo: ao ver a silhueta de uma banana, ele marca aquele objeto como uma banana. Com esses três processos, a rede social consegue identificar objetos em imagens sem que nenhuma pessoa precise olhá-las.

Reprodução