[Paper Intensive Reading 3] Explicación detallada de la serie MVSNet Papers-P-MVSNet

El nombre completo de P-MVSNet es "P-MVSNet: aprendizaje de la agregación de confianza de coincidencia de parches para estéreo multivista". El nombre de ICCV2019 (CCF A) refleja el módulo central del documento, que es la agregación de confianza de coincidencia
de bloques módulo basado en el método de aprendizaje A primera vista, es un poco difícil de entender, pero debe quedar claro después de leer este artículo.


Este artículo es el tercero de la serie MVSNet. Se recomienda leer [Paper Intensive Reading 1] Explicación detallada de los documentos de la serie MVSNet-MVSNet para una fácil comprensión.

1. La pregunta lleva

1. Hay un problema con el método de la varianza para construir el cuerpo de costos

El documento cree que el uso del método de la varianza al construir el cuerpo de costo, es decir, el método de hacer la varianza entre las características de los puntos de píxel correspondientes no conduce a una coincidencia densa píxel por píxel, por ejemplo:

cuando las características de un píxel en imágenes adyacentes que no son de referencia son muy similares pero no coinciden con la característica correspondiente en la imagen de referencia, se generará un bajo costo de coincidencia para este píxel, lo que potencialmente tiende a darle una estimación incorrecta en profundidad mapa.
Es decir, la inferencia final del mapa de profundidad se basa en la imagen de referencia, pero puede haber casos en los que las características de un píxel en la imagen que no es de referencia son muy similares, pero no coinciden con las características del píxel en la imagen de referencia. imagen Dado que las características de cada vista son iguales en el cálculo de varianza , la referencia final Puede haber un problema con el valor de profundidad en ese punto en el mapa de profundidad de la imagen .

Por lo tanto, al construir el volumen de costo (llamado volumen de confianza coincidente MCV en este documento), se debe enfatizar la importancia de las características de los píxeles en la imagen de referencia. En la sección 2.1 a continuación se proporciona un método de cálculo similar a la varianza .

2. El argumento suave directo del cuerpo de costos carece de robustez al ruido.

el volumen de barrido plano construido contenido en el tronco correspondiente es esencialmente anisotrópico : podemos inferir el mapa de profundidad correspondiente a lo largo de la dirección de profundidad del volumen de costo coincidente, pero no podemos obtener la misma información a lo largo de otras direcciones . la Regularización del volumen de confianza coincidente.Es
decir, el cuerpo de costo actual puede inferir información de profundidad a lo largo de la dirección de profundidad, pero no puede mezclar y comunicarse con la información de profundidad de las entidades vecinas a la misma profundidad.

Por lo tanto, el documento propone un módulo de agregación de creencias de coincidencia de bloques basado en el aprendizaje ( consulte la sección 2.2 a continuación para obtener más detalles ), que es simplemente cambiar el píxel de la unidad básica original (en píxel) en un bloque de 3x3 píxeles (en parche), y Permitir el intercambio de información y la agregación entre tres bloques de parches de vecindario con diferentes profundidades y diferentes profundidades.

2. Modelo de red

1. Red de extracción de características

Esta parte es consistente con la idea de MVSNet, que es una red neuronal convolucional con parámetros compartidos para extraer características visuales profundas, pero la cantidad de canales del mapa de características de salida final es 16 en lugar de 32.

inserte la descripción de la imagen aquí

2. Aprendiendo la confianza de emparejamiento por parches

El volumen de costos obtenido por MVSNet tradicional basado en el método Plane Sweeping se denomina volumen de confianza de coincidencia de píxeles en este documento.
Este documento utiliza una fórmula ligeramente diferente del método de la varianza para calcular el volumen de confianza de coincidencia por píxel (MCV por píxel) y señala que para mejorar la solidez y la precisión de la coincidencia , se agrega en un bloque de confianza de coincidencia. volumen utilizando un método de aprendizaje (MCV por parches).

2.1 Calcular MCV en píxeles

El cuerpo de costo original (MCV en píxeles) se expresa como M = M (d, p , c), que refleja la confianza de un cierto punto p en un cierto cuerpo de costo sobre la profundidad d y el canal de características c, suponiendo p es una característica Un cierto píxel en la c-ésima capa de la figura tiene la posibilidad de que su profundidad real sea d, por lo que el cuerpo de costo M es un tensor con una forma de [Z, H/4, W/4, C] , Z representa el número de muestras de profundidad y C representa el número de canales del mapa de características. El método de cálculo de confianza es el siguiente: proyecte el punto p en
Fórmula de cálculo de confianza de MCV por píxeles
el mapa de características de referencia F 0 al punto p' correspondiente en el mapa de características de campo F j , y calcule el cuadrado de la diferencia entre los dos (para los mapas de características de todos imágenes fuente del vecindario), después de sumar, tome el promedio como el exponente negativo de e.
La diferencia entre este método y el método de varianza de MVSNet es que en el método de varianza, los puntos característicos correspondientes en cada vista juegan un papel igual , y este método es para marcar la diferencia entre los puntos correspondientes de cada imagen de origen y los puntos característicos. de la imagen de referencia, por lo que se enfatiza la referencia El papel de las características en el gráfico .

2.2 MCV de agregación de métodos de aprendizaje por parches

En este paso, el documento convierte M (MCV en píxeles) a M * (MCV en parches) a través de un método de aprendizaje (es decir, red neuronal convolucional), es decir, la unidad básica es parche, y un parche se refiere a un punto p como el bloque central de 3x3 píxeles, la fórmula específica de la red neuronal se expresa de la siguiente manera:
Fórmulas de redes neuronales para la agregación de Pathch
primero mire la segunda fórmula, M a contiene dos bloques:

  • ρ 1 es un bloque de convolución 3D que utiliza 1x1x1 como kernel de convolución (seguido de BN y ReLU).La función de este bloque es agregar la información de confianza coincidente de cada punto en diferentes canales.
  • Ω 1 se refiere a un bloque de parche de 3x3 centrado en p, y ρ 2 es un bloque de convolución 3D que utiliza 1x3x3 como núcleo de convolución (seguido de BN y ReLU). Esta parte se usa para mezclar la información coincidente en cada parche.

La primera fórmula entrena el M * final (MCV en parches) a través de la red sobre la base de M a

  • Ω 2 es un conjunto (unión) de 3 bloques de parches adyacentes a lo largo de la dirección de profundidad, y ρ 3 es un bloque de convolución 3D (seguido de BN) que usa un núcleo de convolución de 3x3x3, que se usa para agregar múltiples bloques de parches en la dirección de profundidad Confianza información , y finalmente utilizar la activación de la función tanh para regularizar la confianza.

3. Inferencia del mapa de profundidad

  • El proceso se divide en tres pasos: Primero, coloque el MCV (M * ) por parche obtenido en la UNet 3D híbrida para obtener el volumen de probabilidad latente (Volumen de probabilidad latente, LPV), y luego use softmax en la dirección de profundidad del LPV para obtener el volumen de probabilidad Finalmente, el método soft argmin se usa para obtener el mapa de profundidad inferido esperado para LPV a lo largo de la dirección de profundidad.

  • Además, el documento no solo infiere el mapa de profundidad de [H/4,W/4], sino que también utiliza un muestreo ascendente y un conjunto de capas de red para obtener un MCV (M * ) de parche más grande, y utiliza los tres anteriores -Inferencia paso a paso para obtener un mapa de profundidad de alta resolución más preciso.

  • Los números 2 y 1 en este proceso representan el tamaño de la escala respectivamente, L2 se refiere a la escala normal de [H/4, W/4] y L1 se refiere a la escala [H/2, W/2].

3.1 Unet híbrido 3D obtiene cuerpo de probabilidad implícito

En comparación con el Unet 3D ordinario, el Unet 3D híbrido utilizado en el documento es diferente porque utiliza dos tamaños diferentes de núcleos de convolución, y la capa de red también se denomina bloque convolucional 3D anisotrópico (bloque convolucional 3D anisotrópico) y un bloque convolucional 3D isotrópico . ( bloque convolucional 3D isotrópico), un entendimiento simple es que el núcleo de convolución 3x3x3 con la misma escala en todas las direcciones es isotrópico, y el 1x3x3 es anisotrópico.

El diagrama de estructura de la red de Unet Híbrido 3D es el siguiente:
Diagrama de estructura de red híbrida 3D Unet

  • En la capa menos profunda, se utilizan dos núcleos de convolución anisotrópicos 1x3x3 y 7x1x1 para la convolución:

    • 1x3x3 es principalmente para fusionar información en el mismo plano de profundidad de muestreo
    • 7x1x1 puede expandir el campo receptivo en la dirección de profundidad y utilizar información global a un costo computacional más bajo
  • Los núcleos de convolución isotrópicos (normales) 3x3x3 se utilizan en las capas más profundas y de salida para incorporar más información contextual .

3.2 Cuerpo de probabilidad implícito V 2 -> cuerpo de probabilidad P 2

Para la salida de volumen de probabilidad implícita V 2 en el paso anterior , use softmax a lo largo de la profundidad para obtener el volumen de probabilidad P 2 con la suma de probabilidad de cada punto a lo largo de la dirección de profundidad siendo 1

3.3 Volumen de probabilidad P 2 -> Mapa de profundidad D L2

Use soft argmin para operar el cuerpo de probabilidad P 2 , es decir, calcule la expectativa de profundidad de cada punto a lo largo de la dirección de profundidad e infiera el mapa de profundidad D L2

3.4 Inferencia de mapas de profundidad de mayor resolución

  • (1) Utilice el mapa de características F' 0 [H/2, W/2, C] obtenido mediante la decodificación en el paso de extracción de características, y el cuerpo de probabilidad implícita V 2 ' [ H/2, W/2, Z] son en cascada a lo largo de la dirección del canal para obtener una entrada de red de tamaño [H/2, W/2, C+Z]
  • (2) La entrada pasa a través de una red que contiene tres capas convolucionales 2D, y el número de canales de salida es respectivamente C+Z, Z y Z. Las dos primeras capas se agregan con operaciones BN y ReLU, y finalmente el cuerpo de probabilidad implícito Se emite V 1
  • (3) Repita las operaciones 3.2 y 3.3 para el volumen de probabilidad implícita V 1 para obtener un mapa de profundidad D L1 con mayor resolución

4. Función de pérdida de pérdida

Para el problema de regresión de profundidad, utilice la diferencia entre el mapa de profundidad real y el mapa de profundidad pronosticado (resolución L1 y L2) para diseñar la función de pérdida, es decir,
inserte la descripción de la imagen aquí
encuentre el valor medio de la diferencia de profundidad para los puntos ɸ con etiquetas de profundidad en los mapas de profundidad L1 y L2, y use α para controlar la importancia de los dos términos.

5. Reconstrucción de la nube de puntos (operación de posprocesamiento)

Dado que los resultados de la reconstrucción contienen múltiples mapas de profundidad, el documento señala que "una preocupación es que no concuerden bien entre sí en regiones comunes debido a errores en las profundidades estimadas".
profundidad estimada. Es posible que no sean consistentes en el área común" . fusionado y reconstruir la nube de puntos.

  • El criterio de profundidad de confianza elimina las predicciones obviamente poco confiables.
  • El criterio de consistencia de profundidad descarta valores de profundidad inconsistentes entre imágenes adyacentes

Parte del documento sobre el criterio de confianza de profundidad establece claramente que el valor máximo de probabilidad en la dirección de profundidad del cuerpo de probabilidad (para la confianza L1, es la confianza después del muestreo L2) se usa como el valor de un cierto punto p en la confianza mapa, y el experimento Si el tiempo es inferior a 0,5, descartar el punto (poco fiable).

El criterio de consistencia de profundidad es hacer una reproyección como MVSNet y hacer que cumpla con la consistencia de 2 vistas (MVSNet requiere consistencia de 3 vistas). Lo especial es que cuando se da el primer punto de proyección p, se selecciona el punto correspondiente bajo otra perspectiva Diferentes esquemas de p' (punto utilizado para la reproyección), como se muestra en la siguiente figura
inserte la descripción de la imagen aquí

  • (a) Profundidad del vecino más cercano: seleccione el punto a más cercano al punto real correspondiente p', la parte roja del papel debería tener un problema
  • (b) Profundidad bilineal estándar: use directamente la interpolación bilineal para obtener y usar el punto p' (seleccionado cuando los parámetros reales de la cámara están disponibles)
  • (c) Profundidad de prioridad constante de profundidad: use el punto q más cercano a la profundidad real del punto P 3D correspondiente al punto p (el documento propone usarlo en parámetros de cámara reales)

3. Resumen

  • Este documento explica claramente los pasos de operación de algunos modelos y explica muchos detalles que MVSNet no explicó en detalle. Se recomienda que los amigos con poca base lean el texto original para profundizar su comprensión de la serie MVS.
  • Se han utilizado muchos nombres nuevos, y el "costo" costo casi ha sido reemplazado por "confianza" confianza, MCV, LPV, etc., así como isotrópico y antrópico. De hecho, todos son conceptos existentes o muy simples. Ponle un nombre que llame la atención... es un poco fanfarrón a primera vista.
  • Las dos secciones centrales del documento esencialmente están haciendo un escándalo sobre el tamaño del núcleo de convolución.
    • Basado en la agregación de costos de creencias de bloque basada en el aprendizaje, la información de confianza entre canales, parches y profundidades se mezcla y agrega mediante el diseño de una red convolucional específica, y se realiza a través de núcleos de convolución 1x1x1, 1x3x3, 3x3x3
    • El módulo híbrido 3DUnet convierte el cuerpo de creencias en un cuerpo de probabilidad.Al cambiar el núcleo de convolución poco profundo del 3DUnet ordinario, se propone un 1x3x3 anisotrópico para fusionar la misma información de canal de característica de profundidad, y 7x1x1 para expandir el campo receptivo de profundidad.Fusión homogénea 3x3x3 información de contexto
    • A juzgar por los resultados del experimento de ablación, los dos son bastante útiles y nos brindan una buena idea experimental para operar el kernel de convolución.

Supongo que te gusta

Origin blog.csdn.net/qq_41794040/article/details/127866077
Recomendado
Clasificación