Trabajo con la biblioteca RealSense2 en Python

Trabajo con la biblioteca RealSense2 en Python

La biblioteca RealSense2 es una API de código abierto que permite a los desarrolladores acceder a los sensores de profundidad y RGB de las cámaras Intel RealSense. Esta biblioteca está disponible para una variedad de lenguajes de programación, incluido Python.

En este tutorial, aprenderemos a trabajar con la biblioteca RealSense2 en Python. Comenzaremos instalando la biblioteca y luego veremos cómo usarla para capturar imágenes de profundidad y RGB.

Instalación

La biblioteca RealSense2 está disponible en el repositorio de Python Package Index (PyPI). Para instalarla, ejecute el siguiente comando en su terminal:

pip install pyrealsense2

Captura de imágenes

Una vez que la biblioteca esté instalada, podemos comenzar a capturar imágenes. Para hacer esto, primero necesitamos crear una instancia de la clase Pipeline. Esta clase representa el flujo de datos de la cámara.

Python
import pyrealsense2 as rs

pipeline = rs.pipeline()

Ahora podemos configurar la cámara. Por ejemplo, podemos configurar la resolución de las imágenes y el modo de captura.

Python
config = rs.config()
config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16, 30)
config.enable_stream(rs.stream.color, 640, 480, rs.format.bgr8, 30)

pipeline.start(config)

Una vez que la cámara esté configurada, podemos comenzar a capturar imágenes. Para hacer esto, usamos el método wait_for_frames() para esperar a que haya nuevos datos disponibles.

Python
for i in range(10):
    # Captura una imagen de profundidad
    depth_frame = pipeline.wait_for_frames().get_depth_frame()

    # Captura una imagen RGB
    color_frame = pipeline.wait_for_frames().get_color_frame()

    # Muestra las imágenes
    print(depth_frame)
    print(color_frame)

Este código capturará diez imágenes de profundidad y RGB. Las imágenes se mostrarán en la salida del terminal.

Ejemplo completo

El siguiente código es un ejemplo completo de cómo usar la biblioteca RealSense2 en Python. Este código capturará imágenes de profundidad y RGB y las mostrará en una ventana.

Python
import pyrealsense2 as rs
import cv2

def main():
    # Crea una instancia de la clase Pipeline
    pipeline = rs.pipeline()

    # Configura la cámara
    config = rs.config()
    config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16, 30)
    config.enable_stream(rs.stream.color, 640, 480, rs.format.bgr8, 30)

    # Inicia la cámara
    pipeline.start(config)

    # Bucle infinito para capturar imágenes
    while True:
        # Captura una imagen de profundidad
        depth_frame = pipeline.wait_for_frames().get_depth_frame()

        # Captura una imagen RGB
        color_frame = pipeline.wait_for_frames().get_color_frame()

        # Convierte las imágenes a formatos de NumPy
        depth_image = np.asanyarray(depth_frame.get_data())
        color_image = np.asanyarray(color_frame.get_data())

        # Muestra las imágenes
        cv2.imshow("Depth Image", depth_image)
        cv2.imshow("Color Image", color_image)

        # Espera a que se presione una tecla
        key = cv2.waitKey(1)

        # Termina el programa si se presiona la tecla ESC
        if key == 27:
            break

    # Detiene la cámara
    pipeline.stop()

if __name__ == "__main__":
    main()

Para ejecutar este código, primero debe instalar la biblioteca OpenCV. Luego, puede ejecutar el código con el siguiente comando:

python realsense2_example.py

Este código abrirá una ventana que mostrará imágenes de profundidad y RGB. Puede usar las teclas de flecha para mover la cámara.

**