Métodos comunes de representación 3D

Introducción

  La representación tridimensional es una tecnología clave de la visión artificial. Puede reflejar intuitivamente la forma de los objetos. En comparación con la representación bidimensional con la que estamos familiarizados, la representación tridimensional tiene información de profundidad. Por lo tanto, la representación tridimensional efectiva es realizar la reconstrucción del modelo tridimensional, objetivo tridimensional Es una clave importante para las tareas de visión artificial, como la detección y la segmentación semántica de la escena, y tiene amplias perspectivas de aplicación en los campos de la robótica, AR / VR, interacción humano-computadora y control remoto mapeo de sensores.

  Las comunidades de visión por computadora y gráficos por computadora han desarrollado varias representaciones 3D, que se pueden dividir aproximadamente en dos tipos: representación explícita y representación implícita.Los principales métodos de representación explícita incluyen vóxeles, cuadrículas y nubes de puntos. Las representaciones implícitas incluyen métodos basados ​​en funciones de ocupación, funciones de distancia con signo y campos de radiación neural.

representación de tres dígitos

vóxel

  Los vóxeles son datos de estructura euclidiana, que se pueden comparar con imágenes bidimensionales. Una imagen generalmente se compone de píxeles que contienen información como posiciones RGB, y un objeto tridimensional generado por representación de vóxel generalmente se compone de varios cubos regulares. en un espacio tridimensional, y para representar la forma de un objeto tridimensional, la información como la ocupación geométrica, el volumen, la densidad y la distancia simbólica se pueden almacenar en un vóxel para facilitar la representación. con un píxel, un vóxel en sí mismo no contiene una información de posición La información de posición se puede deducir por medio de posiciones relativas entre vóxeles.

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

  Debido a la regularidad de las representaciones de vóxeles, funcionan bien con redes neuronales convolucionales estándar y se utilizan ampliamente en el aprendizaje geométrico profundo. Como pionero, 3D ShapeNets es el primero en introducir la representación de vóxeles en las tareas de comprensión de escenas 3D. Propone representar objetos geométricos tridimensionales como distribuciones de probabilidad de variables binarias en vóxeles. En la red, el mapa de profundidad de vista única de entrada está representado por la distribución de probabilidad de variables binarias en vóxeles 3D a través de la red de creencia de profundidad convolucional (de hecho, es para juzgar si un punto en el espacio está ocupado por un objeto 3D a través de la red). red de creencias profundas, si la ocupación se representa mediante un vóxel cúbico), mientras que las redes de creencias profundas son una clase poderosa de modelos probabilísticos que a menudo se usan para modelar la distribución de probabilidad conjunta de píxeles y etiquetas en imágenes 2D. Luego, el modelo de vóxel generado se modela y clasifica desde otras perspectivas a través de la red de predicción y la red de clasificación.

inserte la descripción de la imagen aquí

  Se utiliza una red convolucional 2D en la red 3D-R2N2 para codificar una o más imágenes de un objeto desde un punto de vista arbitrario en un vector latente, que luego se alimenta a una red 3DLSTM para utilizar la capacidad de la red LSTM para preservar observaciones previas. y Múltiples observaciones disponibles se refinan progresivamente y, finalmente, una red deconvolucional 3D decodifica los estados ocultos de las celdas LSTM y aprovecha el conocimiento previo de la red para generar reconstrucciones de vóxeles probabilísticos en 3D.

inserte la descripción de la imagen aquí

Aunque las cuadrículas de vóxeles son muy adecuadas para las redes convolucionales 3D , el uso   de redes neuronales para procesar vóxeles suele ser ineficiente para la memoria . 128 128 128, pero solo es adecuado para arquitectura superficial y tamaño de lote pequeño, y el entrenamiento es lento. Para superar este problema, se introduce una estructura de datos octárbol para el modelado de formas, pero es complicada de implementar y requiere varias pasadas de entrada para generar el modelo 3D final. Los algoritmos adaptativos de datos existentes todavía están limitados a una resolución relativamente pequeña de 256 256 256 .

inserte la descripción de la imagen aquí

punto de nube

  La nube de puntos es una colección desordenada de puntos en un espacio tridimensional, que se puede considerar como una muestra discretizada de una superficie de forma 3D, por lo que la nube de puntos tiene desorden, interacción entre puntos e invariancia de transformación.

trastorno puntual

  No existe un orden estricto entre los puntos, como intercambiar dos puntos y seguir representando la misma nube de puntos.

interacción entre puntos

  Aunque los puntos de la nube de puntos son discretos, juntos pueden formar el contorno de un objeto o entorno. Esto significa que los puntos no están aislados entre sí y los puntos adyacentes forman un subconjunto significativo. Por lo tanto, el modelo necesita capturar estructuras locales desde puntos cercanos, así como las interacciones entre estructuras locales.

Transformar la invariancia

  Después de que la nube de puntos experimenta una transformación rígida (rotación y traslación), se ingresa nuevamente y los resultados de clasificación o segmentación de salida permanecen sin cambios.

  Las nubes de puntos contienen una gran cantidad de información, incluidas las coordenadas tridimensionales X, Y, Z, RGB, valores de clasificación, valores de intensidad, tiempo y más. Las nubes de puntos pueden generarse directamente mediante sensores de profundidad y, por lo tanto, son muy populares en las tareas de comprensión de escenas 3D. Aunque están fácilmente disponibles, la irregularidad de las nubes de puntos hace que sean difíciles de procesar con las redes neuronales existentes para datos de malla regular. Además, debido a las variaciones de muestreo, la forma 3D subyacente se puede representar mediante muchas nubes de puntos diferentes.

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

  Muchos métodos intentan analizar eficientemente las nubes de puntos 3D. PointNet utiliza la red MLP para extraer vectores de características de conjuntos de puntos y resume las características de todos los puntos a través de la agrupación máxima para lograr la invariancia a nivel de punto, y luego pasa las características extraídas a redes posteriores para completar las tareas de clasificación y segmentación semántica.

inserte la descripción de la imagen aquí

  También existen enfoques que redefinen las nubes de puntos como otros tipos de estructuras de datos e intentan aprovechar las redes neuronales en otros dominios. DGCNN trata las nubes de puntos como gráficos y tiene como objetivo modelar la relación entre puntos adyacentes utilizando redes convolucionales de gráficos. Convierta nubes de puntos en vóxeles dispersos y procéselos con redes convolucionales dispersas 3D.

red

  Las mallas poligonales son datos no euclidianos que representan superficies con formas con conjuntos de vértices, aristas y caras. En comparación con los vóxeles, las mallas solo modelan la superficie de la escena y, por lo tanto, son más compactas y consumen menos memoria. A diferencia de las nubes de puntos, las mallas proporcionan la conectividad de los puntos de superficie simulando relaciones de puntos. Parametrice la superficie de la forma 3D en una imagen geométrica 2D y use CNN 2D para procesar la imagen geométrica, evitando el procesamiento de la topología 3D. Debido a estas ventajas, las mallas poligonales se utilizan ampliamente en las aplicaciones tradicionales de gráficos por computadora, como el procesamiento de geometría, la animación y la representación. Sin embargo, la aplicación de redes neuronales profundas a las mallas es más desafiante que las nubes de puntos porque se deben considerar los bordes de la malla además de los vértices.

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

  El modelo Pixel2mesh utiliza una red neuronal convolucional gráfica para ver la estructura topológica de la conexión entre los puntos y los bordes de la cuadrícula. El modelo de red neuronal convolucional gráfica se puede utilizar para entrenar la topología. Las características basadas en la forma se pueden extraer de la imagen en color a través del modelo VGG-16 y, finalmente, el elipsoide se actualiza gradualmente utilizando las características perceptivas extraídas de la imagen de entrada para generar una malla triangular 3D de superficie correcta. No solo genera cualitativamente modelos de malla con mejores detalles, sino que también logra una mayor precisión de reconstrucción 3D.

inserte la descripción de la imagen aquí

neuronal implícito

  La representación implícita es una nueva forma de parametrizar varias señales. Las representaciones de señales tradicionales suelen ser discretas, mientras que las representaciones implícitas parametrizan la señal como una función continua que asigna el dominio de la señal al valor de un atributo en esa coordenada, y estas funciones generalmente no son analíticas, es decir, funciones imposibles de "escribir" que parametrizar imágenes naturales en fórmulas matemáticas. La representación implícita aproxima la función de la señal por una red neuronal. Es decir, la representación implícita no puede mostrar intuitivamente objetos geométricos tridimensionales como la representación explícita, sino que representa objetos con una relación de mapeo de función continua basada en redes neuronales. Las ventajas de esta representación son:

La representación implícita ya no está acoplada a la resolución espacial

  Por ejemplo, la forma en que se acoplan las imágenes al número de píxeles. La representación neuronal implícita es una función continua, por lo que la memoria necesaria para parametrizar la señal es independiente de la resolución espacial, solo de la complejidad de la señal subyacente. Otro corolario es que las representaciones implícitas tienen una "resolución infinita": se pueden muestrear con una resolución espacial arbitraria. Entonces, la representación implícita resuelve la limitación de memoria en la representación de visualización, haciendo posible la superresolución.

Mayor capacidad para representar

  La generalización a través de representaciones implícitas neuronales es equivalente a aprender una previa sobre el espacio de funciones, lograda mediante el aprendizaje de una previa sobre los pesos de la red neuronal. Las representaciones implícitas aprendidas se pueden asignar a valores de atributos arbitrarios a través de diferentes entradas de coordenadas.

Alta generalización

  La representación neuronal implícita aprende el previo en el espacio de funciones y luego, de acuerdo con el previo extraído y las características de entrada, se pueden obtener diferentes señales de destino.

fácil de aprender

  La representación neuronal implícita basada en la red neuronal es fácil de combinar con varias estructuras de red y puede aprender rápidamente los antecedentes y adaptarse a los objetos de aprendizaje. En comparación con las representaciones tradicionales como cuadrículas, nubes de puntos o vóxeles, las representaciones neuronales implícitas se pueden incorporar de manera flexible en canalizaciones diferenciables basadas en el aprendizaje.

debilidad es:

necesita procesamiento posterior

  Si desea que las personas vean intuitivamente los objetos geométricos 3D reconstruidos, aún debe volver a la representación de visualización.

Difícil de en tiempo real

  La representación neuronal implícita necesita calcular el valor de la función de los vóxeles de todo el objeto geométrico tridimensional, lo cual es computacionalmente intensivo y consume mucho tiempo.

Función de ocupación

  Expresa el píxel en el espacio con una función de ocupación, y juzga si el píxel está ocupado por el objeto, es decir, expresa la relación de mapeo entre las coordenadas del píxel en el espacio y si el píxel está ocupado por los tres -objeto geométrico dimensional. , ingrese las coordenadas de un píxel a la red, y la red generará un resultado binario que indica si el píxel está ocupado. La clave de esta función es que esta función 3D se puede aproximar mediante una red neuronal que asigna a cada posición p una probabilidad de ocupación entre 0 y 1. Esta red es equivalente a una red neuronal para la clasificación binaria y nos enfocamos en el límite de decisión de la superficie del objeto.

Redes de trabajo de ocupación

  Redes de ocupación es un nuevo método de reconstrucción 3D basado en el aprendizaje que representa implícitamente superficies 3D como límites de decisión continuos para clasificadores de redes neuronales profundas (denominados funciones de ocupación basadas en redes neuronales). Esta representación codifica la salida 3D de alta resolución sin un uso excesivo de la memoria. Al mismo tiempo, el método puede codificar de manera eficiente la estructura 3D y puede inferir modelos a partir de diferentes tipos de entradas. La red convierte las nubes de puntos de entrada, los vóxeles y las cuadrículas en funciones de ocupación y las completa de manera predictiva, y luego genera representaciones de cuadrículas de alta resolución a través de la extracción de isosuperficies de múltiples resoluciones. La extracción de isosuperficie de resolución múltiple en el último paso es una forma de convertir la representación implícita en una representación de visualización.Como dije antes, si desea que las personas vean intuitivamente el modelo 3D reconstruido, aún debe devolver la representación implícita. una representación explícita, mientras que la extracción de isosuperficies de resolución múltiple primero marca todos los píxeles que se han evaluado como ocupados o desocupados en una resolución dada, y luego divide el espacio en múltiples vóxeles para determinar que todos los vértices están ocupados y para los vóxeles que no están ocupados por vértices, los vóxeles ocupados se subdividen en 8 subvóxeles para seguir juzgando y determinando. Iterar repetidamente hasta lograr la resolución de salida deseada. Finalmente, la malla se extrae utilizando un algoritmo de cubo de marcha y la malla de salida se simplifica y refina utilizando información de gradiente de primer y segundo orden.

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

Función de distancia con signo (SDF)

  La definición de la función de distancia con signo es determinar la distancia desde un punto hasta el límite de la región en una región limitada en el espacio y definir el signo de la distancia al mismo tiempo: el punto es positivo dentro del límite de la región, negativo afuera, y 0 cuando está en el límite. Aquí lo podemos entender simplemente como la distancia más cercana desde un punto de píxel en el aire hasta la superficie del objeto, si el punto está fuera del objeto, la distancia es positiva, y si está dentro del objeto, la distancia es negativa. Cuando la distancia es 0, significa que el punto de píxel está dentro de la superficie del objeto. En la red, ingresamos las coordenadas de un punto de píxel y la red ingresa una distancia con signo.

Función de distancia continua con signo (DeepSDF)

  En la tecnología tradicional de reconstrucción de superficies, la función de distancia simbólica es una expresión de la superficie del objeto o escena a partir de vóxeles discretizados, pero la superficie es continua en la realidad, es decir, solemos utilizar la nube de puntos explícita o vóxel La red de entrada se expresa mediante una función de distancia simbólica implícita, pero dado que los datos tridimensionales, como los vóxeles de la nube de puntos, son discretos, la red no puede generar una función de distancia simbólica continua Para resolver este problema, DeepSDF puede aprender de la parte de entrada Forma de alta calidad representación, interpolación y finalización en datos 3D ruidosos y ruidosos. En pocas palabras, DeepSDF completa la función de distancia discreta con signo en una función de distancia continua con signo a través de la interpolación para facilitar la representación posterior de superficies de objetos continuos. En comparación con SDF, DeepSDF puede generar un tipo de forma de objeto, y un SDF solo puede generar un modelo de objeto fijo. Para producir el mismo tipo de modelo de forma, la red debe volver a entrenarse. DeepSDF ingresa las coordenadas y códigos de diferentes formas en la red entrenada a través del módulo de forma codificada para generar objetos del mismo tipo con diferentes formas. Finalmente, DeepSDF genera una forma de objeto explícita completa basada en el conocimiento previo del decodificador. .

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

Campo de radiación neural (NeRF)

  NeRF ha llevado la expresión implícita a un nuevo nivel. Su artículo del mismo nombre se publicó en ECCV2020 y ganó el Mejor artículo del año por su impactante efecto de síntesis de perspectiva. En los próximos dos años, NeRF ha sido citado hasta 937 veces y hay cientos de artículos relacionados solo en 2021, muchos de los cuales son artículos de alta calidad y sorprendentes efectos de síntesis. Todo esto demuestra la popularidad de NeRF y la representación implícita en los últimos años. Por primera vez, NeRF utiliza una representación implícita para lograr la síntesis de ángulos de visión a nivel de fotografía y, en comparación con otras representaciones 3D, NeRF no genera un objeto geométrico 3D completo, sino que utiliza una imagen 2D de cualquier ángulo de visión para representarlo, lo que se basa en en la red NeRF Un amplio entrenamiento con imágenes 2D desde diferentes puntos de vista de los objetos puede predecir la generación de imágenes 2D desde puntos de vista desconocidos. La expresión implícita propuesta por NeRf toma como entrada las coordenadas del punto espacial y el ángulo de visión y la posición del observador, y la salida es la información RGB y la densidad de ocupación del punto. La densidad de ocupación es similar a la función de ocupación, pero en lugar de usar 0 y 1 para indicar si un punto está ocupado o no, usa un número entre 0 y 1 para indicar el grado de ocupación del punto, lo que puede reducir una gran cantidad de cálculo. .

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

trazado de rayos

  En términos de representación de imágenes, NeRF adopta el método de trazado de rayos para convertir la representación implícita en una imagen bidimensional. El método de trazado de rayos consiste en emitir luz a lo largo de los ojos del observador y muestrear la luz para obtener la información de densidad y RGB. de cada punto de muestreo Estos valores se componen en una imagen utilizando técnicas de representación de volumen. (La técnica de representación de volumen es probablemente integrar la densidad RGB de cada punto y luego fusionar los resultados integrales de todos los puntos).

Resumir

inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/I_m_Gagaga/article/details/128274742
Recomendado
Clasificación