Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta página se explica cómo usar la cámara de profundidad en Azure Kinect DK. La cámara de profundidad es la segunda de las dos cámaras. Como se trata en las secciones anteriores, la otra cámara es la cámara RGB.
Principios operativos
La cámara de profundidad de Azure Kinect DK implementa el principio de tiempo de vuelo (ToF) de onda continua modulada en amplitud (AMCW). La cámara proyecta iluminación modulada en el espectro cercano al IR (NIR) sobre la escena. A continuación, registra una medición indirecta del tiempo que tarda la luz en viajar desde la cámara a la escena y hacia atrás.
Estas medidas se procesan para generar un mapa de profundidad. Un mapa de profundidad es un conjunto de valores de coordenada Z para cada píxel de la imagen, medido en unidades de milímetros.
Junto con un mapa de profundidad, también obtenemos una lectura limpia de infrarrojo. El valor de píxeles de la lectura de IR limpia es proporcional a la cantidad de luz devuelta desde la escena. La imagen es similar a una imagen de IR normal. En la ilustración siguiente se muestra un mapa de profundidad de ejemplo (izquierda) y una imagen de IR limpia correspondiente (derecha).
Características clave
Las características técnicas de la cámara de profundidad incluyen:
- Chip de imágenes ToF de 1 megapíxel con tecnología de píxeles avanzada que permite frecuencias de modulación más altas y precisión de profundidad.
- Dos diodos láser de infrarrojo cercano (NIR) que habilitan modos de profundidad de campo cercano y amplio campo de visión (FoV).
- El píxel ToF más pequeño del mundo, de 3,5μm por 3,5μm.
- Selección automática de ganancia por píxel que permite un amplio rango dinámico, lo que posibilita la captura limpia de objetos cercanos y lejanos.
- Obturador global que permite mejorar el rendimiento en la luz solar.
- Método de cálculo de profundidad de varias fases que permite una precisión sólida incluso en presencia de chip, láser y variación de fuente de alimentación.
- Errores sistemáticos y aleatorios bajos.
La cámara de profundidad transmite imágenes IR moduladas sin procesar al equipo host. En el PC, el software del motor de profundidad acelerado por GPU convierte la señal sin procesar en mapas de profundidad. La cámara de profundidad admite varios modos. Los modos de campo de vista estrechos (FoV) son ideales para escenas con extensiones más pequeñas en dimensiones X e Y, pero mayores extensiones en la dimensión Z. Si la escena tiene grandes extensiones X e Y, pero rangos Z más pequeños, los modos foV anchos son más adecuados.
La cámara de profundidad admite modos de discretización de 2x2 para ampliar el rango Z en comparación con los modos sin enlazar correspondientes. El binning se realiza a costa de reducir la resolución de la imagen. Todos los modos se pueden ejecutar hasta 30 fotogramas por segundo (fps) con excepción del modo de 1 megapíxel (MP) que se ejecuta a una velocidad máxima de fotogramas de 15 fps. La cámara de profundidad también proporciona un modo IR pasivo. En este modo, los iluminadores de la cámara no están activos y solo se observa iluminación ambiental.
Rendimiento de la cámara
El rendimiento de la cámara se mide como errores sistemáticos y aleatorios.
Error sistemático
El error sistemático se define como la diferencia entre la profundidad medida después de la eliminación del ruido y la profundidad correcta (verdad del suelo). Calculamos el promedio temporal en muchos fotogramas de una escena estática para eliminar el ruido de profundidad tanto como sea posible. Más precisamente, el error sistemático se define como:
Donde dt denota la profundidad medida en el momento t, N es el número de fotogramas utilizados en el procedimiento de promediado y dgt es la profundidad verdadera del terreno.
La especificación de error sistemática de la cámara de profundidad excluye la interferencia de múltiples rutas (MPI). El MPI ocurre cuando un píxel del sensor integra la luz reflejada por más de un objeto. MPI se mitiga parcialmente en nuestra cámara de profundidad mediante frecuencias de modulación más altas, junto con la invalidación de profundidad, que introduciremos más adelante.
Error aleatorio
Supongamos que tomamos 100 imágenes del mismo objeto sin mover la cámara. La profundidad del objeto será ligeramente diferente en cada una de las 100 imágenes. Esta diferencia se debe al ruido de disparos. El ruido de disparo es el número de fotones que inciden en el sensor; varía según un factor aleatorio a lo largo del tiempo. Definimos este error aleatorio en una escena estática como la desviación estándar de profundidad a lo largo del tiempo calculada como:
Donde N denota el número de medidas de profundidad, dt representa la medida de profundidad en el tiempo t y d denota el valor medio calculado en todas las medidas de profundidad dt.
Invalidación
En determinadas situaciones, es posible que la cámara de profundidad no proporcione valores correctos para algunos píxeles. En estas situaciones, los píxeles de profundidad se invalidan. Los píxeles no válidos se indican con el valor de profundidad igual a 0. Las razones para que el motor de profundidad no pueda generar valores correctos incluyen:
- Fuera de la máscara de iluminación infrarroja activa
- Señal de IR saturada
- Señal de IR baja
- Filtrar valores atípicos
- Interferencia de múltiples rutas
Máscara de iluminación
Los píxeles se invalidan cuando están fuera de la máscara de iluminación de IR activa. No se recomienda usar la señal de estos píxeles para calcular la profundidad. A continuación, se muestra un ejemplo de invalidación mediante una máscara de iluminación. Los píxeles invalidados son los píxeles de color negro fuera del círculo en los modos foV anchos (izquierda) y el hexágono en los modos foV estrechos (derecha).
Intensidad de la señal
Los píxeles se invalidan cuando contienen una señal IR saturada. Cuando los píxeles están saturados, se pierde la información de fase. En la imagen siguiente se muestra el ejemplo de invalidación por una señal IR saturada. Vea las flechas que apuntan a los píxeles de ejemplo en las imágenes de profundidad e IR.
La invalidación también puede producirse cuando la señal IR no es lo suficientemente fuerte como para generar profundidad. En la ilustración siguiente se muestra el ejemplo de invalidación por una señal de IR baja. Vea las flechas que señalan los píxeles de ejemplo en las imágenes de profundidad e infrarrojas.
Profundidad ambigua
Los píxeles también se pueden invalidar si recibieron señales de más de un objeto de la escena. Un caso común en el que se puede ver este tipo de invalidación está en las esquinas. Debido a la geometría de la escena, la luz IR de la cámara se refleja en una pared y en la otra. Esta luz reflejada provoca ambigüedad en la profundidad medida del píxel. Los filtros en el algoritmo de profundidad detectan estas señales ambiguas e invalidan los píxeles.
En las ilustraciones siguientes se muestran ejemplos de invalidación mediante la detección de varias rutas de acceso. También puede ver cómo la misma área de superficie que se invalidó desde una vista de cámara (fila superior) puede aparecer de nuevo desde otra vista de cámara (fila inferior). En esta imagen se muestra que las superficies invalidadas desde una perspectiva pueden ser visibles desde otra.
Los píxeles que contienen la señal combinada de primer plano y fondo (por ejemplo, alrededor de los bordes del objeto) son otro caso común de multipath. Durante el movimiento rápido, es posible que vea píxeles más inválidos alrededor de los bordes. Los píxeles invalidados adicionales se deben al intervalo de exposición de la captura de profundidad sin procesar.