Marcela Carvalho
👤 SpeakerAppearances Over Time
Podcast Appearances
Olá, bem-vindas e bem-vindos à edição de quarta-feira, edição de entrevista do IA Sob Controle, o seu podcast com overfitting de informações sobre o mundo da inteligência artificial. Eu sou o Marcos Mendes e tenho, claro, assim como toda semana por aqui, o Fabrício Carraro, viajante poliglota, host do podcast Carreiras Sem Fronteiras e Program Manager da Alura. Fabrício, tudo bem?
Exatamente. Então, Marcela Carvalho, Machine Learning Engineer, PhD também, também faz Computer Vision na SEMP. Bem-vinda de volta à Hipsters Network e bem-vinda pela segunda vez também à OEA Sob Controle.
Muito obrigada, muito obrigada, galera. Prazer em estar aqui com vocês. Super honrada de ter recebido esse convite. Muito obrigada. Boa. E a voz da Marcela, as pessoas vão reconhecer não só do Carreira Sem Fronteiras, mas recentemente também tivemos uma gravação dela de uma palestra que ela foi assistir do Yann LeCun, que agora é assim que a gente tem que se acostumar. Foi ela que me corrigiu, inclusive. Falei que os franceses são chatos com isso e eu ia ser também.
Vou acostumar, né? E você, no Carreira Sem Fronteiras, quando era Deve Sem Fronteiras, enfim, né? Detalhou sua trajetória e começou com filmes de ficção científica e te levou pra França, pra divisão computacional, incluindo trabalho por um tempo com drones militares. Mas pra quem não ouviu o episódio, que o link tá na descrição aqui, quer contar a versão resumida de como você chegou até Paris e o que você faz hoje em dia? É.
Com certeza. Da ficção, veio a paixão pela robótica. E da robótica, eu entrei na parte de visão computacional. A visão computacional são os olhos do robô. E vindo do Brasil, que é um ambiente muito difícil de trabalhar com hardware. Hardware em si é muito difícil de trabalhar. Software é muito mais fácil de você tentar de novo, né? Ou tentar ativar o erro. E eu fiz o Mecatron com a Renault RB. Participei de equipe de robótica. Depois vim fazer o mestrado aqui na França.
e finalmente comecei meu doutorado com visão computacional e machine learning, que era uma área que lá em 2016 estava crescendo mais e mais, e eu queria muito participar desse crescimento, e eu achei que com o doutorado eu ia ter muita chance de trabalhar com isso na indústria. Uma vantagem de trabalhar com isso aqui na França, no doutorado, é que eles fazem um doutorado mais rápido, um doutorado de três anos,
que a ideia é você ter uma abertura mais rápida para trabalhar depois, trabalhar na indústria, não necessariamente ser pesquisador. Então esse foi o interesse também de vir para a França. E aí depois eu comecei a trabalhar numa startup para desenvolvimento de solução para Smart City, para detecção de pessoas e veículos, para contagem, detecção de lixo, essas coisas. Eu mexi muito com detecção de objetos e tracking. E agora eu estou trabalhando na Samp já há sete meses, aí eu pulei do 2D para 3D.
Eu vou usar o exemplo do que eu faço hoje. Então, eu trabalho com a ponte entre o 3D e o 2D. O que a gente trabalha, na minha empresa, para explicar um pouquinho, na SEMP, o que a gente trabalha é com a construção de gêmeos digitais. Então, a ideia é você ter uma planta industrial e ter a equivalente dessa planta de forma digital, que você possa entrar ali naquela planta, mostrar só no computador, mostrar que esse é o container X, que tem tais informações, a válvula tem que ser modificada para esse e aquilo.
E quando você observa essa nuvem de pontos no computador, você tem uma informação de cor. Essa informação RGB vem de uma câmera. E a informação 3D, aquela informação daquele... Quando você vai mexendo o seu mouse ali, o seu ponteiro, vai girando e vendo as coisas em 3D, essa informação vem normalmente de um líder. O líder é um atuador sensor que vai emitir luz, vai emitir pulsos de luz e vai capturar a distância para esses objetos.
Meio que um laser, assim. É, um laser, isso. Então, a gente vai ter o RGB, a cor, é uma câmera que tem esse equipamento que pega essa informação, ao mesmo tempo que a gente tem o líder. Então, a gente tem a distância e a cor para cada ponto. E para cada um desses pontos, a gente vai descrever como X, Y, Z, que é o ponto no espaço, RGB, a cor. E o que você vai ver na tela é uma projeção...
desse ambiente em 2D. E aí é nisso que eu trabalho. Então, a gente recebe, na nossa empresa, a gente não faz o scan, o escaneamento da plataforma, do site industrial. A gente trabalha em cima da nuvem de pontos que vem com essa informação de cor e de distância. E o que a gente faz é a gente vai colocar a parte semântica. Então, a gente vai anotar tudo que é um container como um container. A gente vai anotar tudo que são válvulas como válvulas, chão,
um muro, essas coisas, então a gente vai dar essa noção semântica. Para fazer isso, a gente trabalha em 3D, a gente alimenta uma, no caso aqui a gente está falando sobre ar, então vamos falar sobre ar, um modelo com essa nuvem de pontos e aí a gente pode depois falar um pouquinho como a gente alimenta esse modelo, porque é super interessante também.
Porque a nuvem de pontos é um dado não estruturado. E é bem interessante quais são as técnicas para fazer um modelo e entender isso de forma mais estruturada. Mas, para o que eu faço, ou a gente faz isso, né? A gente coloca essa nuvem de pontos inteira no modelo e ele vai sair, em vez de sair só X, Y, Z, R, G, B para cada ponto, vai sair também uma classe para cada ponto. Então, para cada pontinho ali vai sair uma classe, ah, container, ah, válvula, ah,
Muro. Ah. Chão. E aí o que eu faço na empresa. Para mudar para a parte 2D mesmo. Eu pego essa nuvem de pontos. E o que você. Digamos. O que você veria na sua tela. Que já é a projeção 2D. Eu pego isso. E salvo na planta inteira. Com várias e várias imagens. Passo por um modelo 2D. E depois eu faço a projeção de retorno. Que a gente fala de Unprojection. Para você. Do 2D. Você voltar essa informação para o 3D. Parece muito simples. Quando a gente fala assim. É.
Mas é bem complexo por trás, porque você tem toda a física da lente que tirou aquela foto primeira, que fez a projeção para a posição do laser, que não tem o mesmo centro da câmera. E também como você representou aquela nuvem de pontos, a representação da nuvem de pontos, ela é em coordenadas da Terra, ou são coordenadas Lambertianas, né?
Então acaba complexificando um pouquinho mais. Mas para entender assim, uma imagem que eu vejo, aquela que a gente vê na tela, são normalmente uma matriz 2D com a informação RGB. Existem outras formas de salvar uma imagem, mas eu vou imaginar assim. Então é com isso que eu trabalho. E depois com a unprojection, né? Voltar para o 3D. Você falou sobre a anotação, essa anotação de container, de muro, o que é uma válvula e tal. Isso é feito manualmente por vocês?
Sim, a gente tem um engenheiro especialista nisso para fazer na casa, porque esse tipo de anotação, ele demanda uma expertise maior. Quando eu trabalhava na empresa antiga, a gente só trabalhava com 2D para detecção de objetos, era um bounding box.
E a gente fazia por fora, uma outra empresa, porque era uma expertise mais fácil de conseguir carro, pessoas e tudo. Agora não, a gente tem um software próprio, o software de 3D é todo feito em casa. E a anotação desses dados é feita por um engenheiro mesmo, de 5 anos.
Tadinho, ele faz toda a anotação 3D daquilo usando o código da gente, que também é bem complicado. Porque, veja só, o que a gente vê na tela é o 2D. Não interessa. A gente vai ver na tela a projeção 2D. Então, imagina você selecionar um container.
Quando você seleciona em 2D um container, um você está anotando, como é que você vai saber que você não está selecionando todos aqueles pixels lá atrás? Então, todos aqueles containers que estão escondidos lá atrás, sabe? Então, a gente tem o nosso software de anotação, ele leva em conta já a parte geométrica.