Intel RealSense D435i: más información sobre la configuración y los parámetros de inicio relacionados con la interfaz ROS

enlace

  • 1.iniciar archivo
  • 2. Mensaje rápido al inicio
  • 3.Tema publicado

  • En el blog anterior , presentamos cómo configurar el entorno de inicio de D435i y realizamos una prueba simple. En este blog, tomaremos rs_cameranodo como ejemplo para analizar más a fondo los parámetros en su archivo de inicio para un mejor uso.

    1.iniciar archivo

    rs_cameraEl archivo de inicio predeterminado del nodo es el siguiente. Puede ver que hay muchos parámetros que se pueden configurar, la mayoría de los cuales se pueden entender según sus nombres. Aquí hay algunos parámetros importantes para la introducción.

    (1) habilitar_profundidad

    trueSe utiliza una variable booleana, cuyo valor predeterminado es , para especificar si el sensor publica temas relacionados con la profundidad. Afecta principalmente /camera/depth/a la publicación de temas relacionados, de la siguiente manera.

    /camera/depth/camera_info
    /camera/depth/color/points
    /camera/depth/image_rect_raw
    /camera/depth/image_rect_raw/compressed
    /camera/depth/image_rect_raw/compressed/parameter_descriptions
    /camera/depth/image_rect_raw/compressed/parameter_updates
    /camera/depth/image_rect_raw/compressedDepth
    /camera/depth/image_rect_raw/compressedDepth/parameter_descriptions
    /camera/depth/image_rect_raw/compressedDepth/parameter_updates
    /camera/depth/image_rect_raw/theora
    /camera/depth/image_rect_raw/theora/parameter_descriptions
    /camera/depth/image_rect_raw/theora/parameter_updates
    
    (2)enable_infra

    De hecho, incluye tres variables enable_infra, enable_infra1y enable_infra2, que se utilizan para controlar si se generan imágenes infrarrojas. enable_infra1, enable_infra2representan respectivamente las imágenes de las cámaras infrarrojas izquierda y derecha. Las tres variables por defecto son false. Su principal impacto /camera/infra1/y /camera/infra2/el lanzamiento de temas relacionados son los siguientes.

    /camera/infra1/camera_info
    /camera/infra1/image_rect_raw
    /camera/infra1/image_rect_raw/compressed
    /camera/infra1/image_rect_raw/compressed/parameter_descriptions
    /camera/infra1/image_rect_raw/compressed/parameter_updates
    /camera/infra1/image_rect_raw/compressedDepth
    /camera/infra1/image_rect_raw/compressedDepth/parameter_descriptions
    /camera/infra1/image_rect_raw/compressedDepth/parameter_updates
    /camera/infra1/image_rect_raw/theora
    /camera/infra1/image_rect_raw/theora/parameter_descriptions
    /camera/infra1/image_rect_raw/theora/parameter_updates
    

    /camera/infra2/camera_info
    /camera/infra2/image_rect_raw
    /camera/infra2
    /image_rect_raw/compressed /camera/infra2/image_rect_raw/compressed/parameter_descriptions
    /camera/infra2/image_rect_raw/compressed/parameter_updates
    /camera/infra2/image_rect_raw/compressedDepth
    /camera /infra2/image_rect_raw/compressedDepth/parameter_descriptions
    /camera/infra2/image_rect_raw/compressedDepth/parameter_updates
    /camera/infra2/image_rect_raw/theora
    /camera/infra2/image_rect_raw/theora/parameter_descriptions
    /camera/infra2/image_rect_raw/theora/parameter_updates

    Cabe señalar que enable_infraen realidad no afecta la emisión de imágenes infrarrojas, el cambio de imagen real es enable_infra1y enable_infra2. Aunque esto no se debe hacer generalmente, sólo podremos encender una cámara de infrarrojos y apagar la otra.

    (3) habilitar_color

    Variable booleana, la predeterminada es true, que se utiliza para especificar si la cámara RGB publica temas relacionados con imágenes RGB. Afecta principalmente /camera/color/a la publicación de temas relacionados, de la siguiente manera.

    /camera/color/camera_info
    /camera/color/image_raw
    /camera/color/image_raw/compressed
    /camera/color/image_raw/compressed/parameter_descriptions
    /camera/color/image_raw/compressed/parameter_updates
    /camera/color/image_raw/compressedDepth
    /camera/color/image_raw/compressedDepth/parameter_descriptions
    /camera/color/image_raw/compressedDepth/parameter_updates
    /camera/color/image_raw/theora
    /camera/color/image_raw/theora/parameter_descriptions
    /camera/color/image_raw/theora/parameter_updates
    
    (4)enable_gyro

    falseSe utiliza una variable booleana, cuyo valor predeterminado es , para especificar si el giroscopio publica temas relacionados. Afecta principalmente /camera/gyro/a la publicación de temas relacionados, de la siguiente manera.

    /camera/gyro/imu_info
    /camera/gyro/sample
    
    (5)enable_accel

    falseSe utiliza una variable booleana, cuyo valor predeterminado es , para especificar si el acelerómetro publica temas relacionados. Afecta principalmente /camera/accel/a la publicación de temas relacionados, de la siguiente manera.

    /camera/accel/imu_info
    /camera/accel/sample
    
    (6) habilitar_sincronización

    Variable booleana, la predeterminada es false, como su nombre indica, utilizada para sincronizar los datos entre sensores, de modo que la frecuencia de cada tema enviado por D435i sea la misma.

    (7)alinear_profundidad

    La variable booleana, cuyo valor predeterminado es false, como sugiere el nombre, se utiliza para alinear la imagen RGB con la imagen de profundidad. No modifica el tema publicado anteriormente, pero vuelve a emitir dos tipos de temas múltiples: /camera/aligned_depth_to_colory /camera/aligned_depth_to_infra1, de la siguiente manera.

    /camera/aligned_depth_to_color/camera_info
    /camera/aligned_depth_to_color/image_raw
    /camera/aligned_depth_to_color/image_raw/compressed
    /camera/aligned_depth_to_color/image_raw/compressed/parameter_descriptions
    /camera/aligned_depth_to_color/image_raw/compressed/parameter_updates
    /camera/aligned_depth_to_color/image_raw/compressedDepth
    /camera/aligned_depth_to_color/image_raw/compressedDepth/parameter_descriptions
    /camera/aligned_depth_to_color/image_raw/compressedDepth/parameter_updates
    /camera/aligned_depth_to_color/image_raw/theora
    /camera/aligned_depth_to_color/image_raw/theora/parameter_descriptions
    /camera/aligned_depth_to_color/image_raw/theora/parameter_updates
    

    /camera/aligned_ Depth_to_infra1/camera_info
    /camera/aligned_ Depth_to_infra1/image_raw
    /camera/aligned_ Depth_to_infra1/image_raw/compressed
    /camera/aligned_ Depth_to_infra1/image_raw/compressed/parameter_descriptions
    /camera/aligned_ Depth_to_infra1/image_raw/compressed/parameter_updates
    /camera/aligned_ Depth _to_infra1/image_raw/compressedDepth
    /camera /aligned_ Depth_to_infra1/image_raw/compressedDepth/parameter_descriptions
    /camera/aligned_ Depth_to_infra1/image_raw/compressedDepth/parameter_updates
    /camera/aligned_ Depth_to_infra1/image_raw/theora
    /camera/aligned_ Depth_to_infra1/image_raw/theora/parameter_descriptions
    /camera/aligned_ Depth_to_infra1 /image_raw/theora/parameter_updates

    Como sugiere el nombre y es obvio, uno es alinear la profundidad con la imagen en color RGB y el otro es alinear la profundidad con la imagen infrarroja izquierda. Las siguientes son imágenes RGB e imágenes de profundidad no alineadas: Se puede ver que el contorno del objeto en la imagen de profundidad es obviamente más pequeño que la imagen RGB, por lo que no está alineado. El efecto de alinear la profundidad con una imagen RGB es el siguiente. Como puede ver, el mapa de profundidad y el mapa RGB tienen básicamente el mismo contorno. De manera similar, a continuación se muestra el resultado de alinear el mapa de profundidad con la imagen infrarroja izquierda. Además, como puede verse en la imagen de arriba, la diferencia entre la imagen de la cámara infrarroja y la imagen RGB es bastante grande.

    Los anteriores son algunos de los parámetros de uso común en el archivo de inicio. Si hay cosas nuevas, se agregarán una tras otra.

    2. Mensaje rápido al inicio

    Aquí activamos la profundidad ( enable_depth), el infrarrojo binocular ( enable_infra), la cámara RGB ( enable_color), el giroscopio ( enable_gyro) y el acelerómetro ( enable_accel), y dejamos el resto por defecto. Luego ingrese roslaunch realsense2_camera rs_camera.launchal nodo de inicio. En circunstancias normales, se generará una larga serie de mensajes de información en el terminal, como se muestra en la siguiente figura, aquí simplemente analizaremos la información de estos datos. Primero, el nodo genera muchos parámetros relacionados (Parámetros) que acabamos de configurar. Entonces, si la operación es diferente de lo que esperábamos, también podríamos verificar aquí primero para ver si algún parámetro no está configurado correctamente. Luego hay una serie de resultados relacionados con ROS. [info]Como era de esperar, después de iniciar el nodo, se generará una gran cantidad de información que comienza con "". Esta información la genera el propio nodo. Toda la información anterior fue generada por ROS antes. Primero, se generará mucha información relacionada con la versión del dispositivo y el número de serie. Luego generará información del modo recién configurado, qué sensores están habilitados, como profundidad de alineación, modo de sincronización, etc. Dado que aquí hemos activado los sensores de profundidad, infrarrojos y RGB, los nodos generan los formatos de estos flujos de datos en secuencia, incluido el largo, el ancho, los FPS y el contenido del formato de datos. Luego, el nodo configurará el Publicador y la Transmisión de acuerdo con la configuración actual y, finalmente, el nodo generará RealSense Node Is Up!, lo que significa que el dispositivo está disponible y se pueden recibir datos suscribiéndose al tema correspondiente.

    3.Tema publicado
    (1) infoTema con

    Si desea obtener información relacionada con los sensores, simplemente suscríbase al infotema.

    /camera/depth/camera_info	# 深度相机信息
    /camera/infra1/camera_info	# 左红外相机信息
    /camera/infra2/camera_info	# 右红外相机信息
    /camera/color/camera_info	# RGB相机信息
    /camera/gyro/imu_info	# 陀螺仪信息
    /camera/accel/imu_info	# 加速度计信息
    /camera/aligned_depth_to_color/camera_info	# 对齐到RGB影像的深度图信息
    /camera/aligned_depth_to_infra1/camera_info	# 对齐到左红外影像的深度图信息
    

    Por ejemplo, el siguiente uso rostopic echo /camera/infra1/camera_infomuestra la información relevante de la imagen de la cámara infrarroja izquierda. Puede ver información relevante, incluidos algunos parámetros de ancho, alto y distorsión predeterminados de la imagen.

    (2) compressTema con

    Además, hay muchos compresstemas relacionados, que son muy simples como su nombre indica: son flujos de datos comprimidos de menor tamaño. Pero al mismo tiempo, la calidad de los datos puede disminuir hasta cierto punto.

    (3) rawTema con

    Correspondiente al flujo de datos comprimidos anterior, rawel tema es el flujo de datos original sin comprimir. Si el ancho de banda de transmisión de datos no es particularmente limitado, generalmente es rawmejor utilizar los datos originales (con tema).

    (4) theoraTema con

    Hemos visto los theoratemas incluidos muchas veces arriba. En términos de contenido, estos temas theorason los mismos que los temas sin ellos. La diferencia radica en el método de codificación. Theora es una tecnología de codificación de compresión de vídeo abierta y gratuita. Por tanto, si no tienes necesidades especiales a la hora de utilizarlo, simplemente utiliza el general.

    (5) rectTema con

    Además, rectel Tema representa los datos corregidos, la abreviatura de Rectificar.

    (6)Otros temas

    Si necesita obtener datos del acelerómetro o giroscopio, simplemente suscríbase /camera/gyro/samplea y /camera/accel/sample. A continuación se obtienen los contenidos del acelerómetro.

    Lo anterior es información más detallada sobre la interfaz D435i ROS. Más adelante, lo calibraremos según el Kalibr presentado anteriormente e intentaremos usar D435i para ejecutar ORB-SLAM3.

        </section>
    

Supongo que te gusta

Origin blog.csdn.net/luoganttcc/article/details/131711243
Recomendado
Clasificación