es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Leyendo Pointcloud desde .csv a ROS PointCloud2

Tengo un archivo .csv que tiene datos de “/rawpoints rostopic” y estoy tratando de convertir ese archivo en datos de tipo PointCloud2 (http://docs.ros.org/en/api/sensor.msgs/html/msg/PointCloud2.html).

import csv
import sys

csv.field<em>size</em>limit(sys.maxsize)

file = open("points<em>raw.csv")
csvreader = csv.reader(file)
header = next(csvreader)
print(header)
<code>
Este es mi encabezado:
</code>
['Tiempo', 'header.seq', 'header.stamp.secs', 'header.stamp.nsecs', 'header.frame</em>id', 'height', 'width', 'fields', 'is<em>bigendian', 'point</em>step', 'row<em>step', 'data', 'is</em>dense']

Estos datos coinciden con el tipo CloudPoint2, pero no estoy seguro de cómo convertirlo a este tipo.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para convertir datos de puntos sin procesar de formato CSV a formato PointCloud2, puede seguir los siguientes pasos:

    1. Analice el archivo CSV y extraiga la información necesaria requerida para el formato PointCloud2. Esto incluye los valores individuales de X, Y, Z de cada punto y los valores de color RGB correspondientes, si están disponibles.
    2. Cree una nueva instancia de mensaje PointCloud2 y establezca los valores apropiados en sus campos de encabezado. Esto incluye establecer el ID de marco y la marca de tiempo, entre otros detalles.

    3. Establezca los campos necesarios para los datos PointCloud2 en la instancia de mensaje. Esto incluye el paso de punto (es decir, el tamaño de cada punto en bytes), el paso de fila (es decir, el tamaño de cada fila en bytes) y los propios datos de punto reales.

    4. Publique el mensaje PointCloud2 en el tema ROS correspondiente.

    Tenga en cuenta que los detalles exactos de implementación dependerán de la estructura específica de su archivo CSV y los requisitos de su aplicación. Es posible que deba modificar el código proporcionado anteriormente para adaptarlo a estos factores.

Comments are closed.