Oi! Bem-vindo ao 'Inside the Lab', o blog de pesquisa e engenharia da artlabs . O tópico desta semana é como o conteúdo 3D é representado e tratado por metodologias de IA, como a IA utiliza essas representações para a criação de conteúdo 3D, bem como os prós e contras dessas técnicas.
Os modelos de aprendizado de máquina são treinados usando várias representações de conteúdo 3D, como voxels, nuvens de pontos, campos de distância assinados, campos de radiância neural (NeRF), malhas poligonais… Falaremos sobre representações de voxels, nuvens de pontos, NeRF e polígonos neste post. Vamos examinar estes, um por um.
Você conhece elementos de imagem (também conhecidos como pixels), mas já ouviu falar sobre elementos de volume (também conhecidos como voxels)? Agora você fez! Os pixels são representados como valores de intensidade de cor vermelha, verde e azul com um valor de opacidade adicional entre 0 e 255 em uma grade 2D representada pelas coordenadas x e y. Os voxels também consistem em valores de vermelho, verde, azul e opacidade em uma grade 3D. Os modelos de IA visam aprender esses 4 valores para cada voxel para representar a cena com eficiência.
Modelos de aprendizado de máquina como 3D-R2N2 (2016), Pix2Vox / ++ (2019/2020) e EVoIT (2021) aproveitam a simplicidade da representação de voxel e utilizam imagens multivisualização de um objeto para reconstruir esse objeto como um voxel grade.
Voxels são muito bons se você quiser representar formas cúbicas. Assim como existe pixel art, também existe arte 3D baseada em voxels. Além disso, quem não quer gerar mundos tipo Minecraft ?! Metaversos como o Sandbox também utilizam representações de voxels, e a criação de voxels baseada em IA também pode ajudar a melhorá-los.
Bem, você adivinhou: nuvens de pontos são nuvens formadas por pontos coloridos no espaço 3D. Ao contrário dos voxels, eles não estão contidos em uma grade, então você pode representar melhor uma gama mais ampla de objetos com nuvens de pontos. No entanto, como não há grade, você também precisa considerar a posição de cada ponto no espaço 3D. Isso significa que você precisa manter mais dados em comparação com voxels para cada ponto de dados.
Modelos como o Point-E (2022) da OpenAI demonstraram sucesso na criação de conteúdo 3D baseado em nuvem de pontos. No entanto, como tudo de bom no mundo, as nuvens de pontos têm suas vantagens e desvantagens.
Na verdade, as nuvens de pontos são amplamente utilizadas em vários setores. Eles podem ser adquiridos por LiDARs instalados em drones ou carros inteligentes. Pode-se criar objetos e ambientes de nuvem de pontos com IA para serem utilizados em simulações para melhorar os algoritmos que estão sendo executados para melhores veículos sem motorista. Além disso, eles também são usados em imagens médicas. A criação baseada em IA de nuvens de pontos médicos também pode melhorar a detecção de doenças e traumas físicos em pacientes.
Dado um conjunto de imagens e informações de pose de câmera correspondentes, um NeRF pode reconstruir uma cena 3D descobrindo onde cada pixel em uma imagem corresponde no espaço 3D. Depois que a cena é reconstruída, um NeRF pode fornecer uma visão 3D completa de uma cena, mesmo de ângulos invisíveis. Além disso, a própria representação é AI! Basicamente, é uma rede neural que contém todas as informações necessárias para renderizar uma cena 3D. A cena é representada na rede neural e, quando consultada com uma nova pose de câmera, a rede neural pode responder com uma nova renderização dessa visualização. Enquanto a rede NeRF original teve que ser treinada por horas (dias em algumas ocasiões), várias novas variantes de NeRF podem reconstruir uma cena 3D de alta qualidade em poucos segundos.
Os campos de radiação neural podem renderizar cenas de qualquer ângulo e podem ser usados amplamente pelas artes cinematográficas. É amplamente conhecido que o ângulo e o movimento da câmera são muito importantes na cinematografia, e os NeRFs podem criar renderizações a partir de ângulos com os quais um operador de câmera pode ter problemas.
As malhas poligonais consistem em pontos (ou seja, vértices), linhas que conectam esses pontos entre si (ou seja, arestas) e polígonos que são construídos entre essas arestas. Os vértices são representados por suas coordenadas; arestas são representadas por quais vértices estão se conectando, e polígonos são representados por quais arestas estão sendo construídas. Além disso, existem várias maneiras de representar cores em malhas, desde simplesmente colorir cada vértice com valores de intensidade de vermelho, verde e azul até decidir como essa cor irá interagir com qualquer luz, fornecendo propriedades de materiais como difusão, especularidade, opacidade, refração índices, normais de superfície, etc.
Métodos como o NVDiffrec-MC (2022) podem inferir uma trinca de malha, luz e material utilizando conjuntos de imagens. Ultimamente, muitos outros métodos foram desenvolvidos para reconstruir malhas e texturas a partir de entradas de texto ou imagem: GET3D , DreamFusion , Score Jacobian Chaining , Magic3D …
As malhas poligonais já são utilizadas em jogos, artes cinematográficas, Web3 e XR. Muitos setores, como o comércio eletrônico, se beneficiam muito das malhas poligonais ao visualizar seus produtos em 3D. Ao criar conteúdo com IA, todos esses setores podem gerar conteúdo em escala e impressionar seu público.
No artlabs , utilizamos todas essas representações e IA em diferentes seções de nosso pipeline. Veja mais sobre como o artlabs utiliza IA para criar conteúdo em escala aqui .
Obrigado por ler! Nos vemos no próximo post de “Dentro do Laboratório” 👋🏻
Autor: Doğancan Kebude , líder de P&D da artlabs