He trabajado en el Kinect y su hardware y he escrito un código para recuperar la profundidad 3D utilizando técnicas similares.
El Kinect utiliza un proyector láser infrarrojo para proyectar un patrón denso de puntos en toda la escena que son infrarrojos y, por lo tanto, invisibles para el ojo. El Kinect tiene una cámara que puede captar el patrón IR. El hardware puede recuperar la profundidad 3D porque existe una distancia entre el centro de proyección del patrón de moteado y el centro óptico de la cámara. Esto significa que la ubicación de los puntos cambia en la imagen de la cámara a medida que el objeto se aleja. De hecho, el patrón de puntos es algo conocido en el hardware. La cámara es sensible al desplazamiento de los puntos desde la ubicación conocida que serían para los aviones en el infinito cuando se toma una imagen de un objeto cercano.
También hay una cámara de color RGB que permite extraer imágenes en color.
Uno puede usar un proyector de motas y dos cámaras de infrarrojos para reconstruir la información de profundidad en una configuración ad hoc sin usar un kinect. Las cámaras deben ser sensibles al IR, pero también necesitan un filtro IR cuyo propósito es simplemente dejar pasar la luz IR y no la luz visible. Esto aumenta el contraste de los puntos y elimina la iluminación general de la escena. Mediante el uso de algoritmos estéreo, es posible detectar las ubicaciones de los puntos en las dos imágenes de la cámara y hacerlas coincidir. A partir de estas coincidencias de puntos y la geometría conocida de la cámara, es posible inferir la profundidad de estos puntos y obtener una nube de puntos 3D. He implementado personalmente esta configuración hace unos años.