Извлеките координаты XYZ от данных об облаке точек
xyz = readXYZ(pcloud) извлекает координаты xyz = readXYZ(pcloud)[x y z] от всех точек в объекте PointCloud2, pcloud, и возвращает их как n-by-3 матрица n 3-D координаты точки. Если облако точек не содержит x, y и поля z, эта функция возвращает ошибку. Точки, которые содержат NaN, сохраняются в выводе. Чтобы сохранить структуру данных об облаке точек, смотрите Структуру Облака точек Сохранения.
Данные об облаке точек могут быть организованы или в 1D списках или в 2D стилях изображений. 2D стили изображений обычно прибывают из датчиков глубины или стереофотоаппаратов. Объект входа PointCloud2 содержит свойство PreserveStructureOnRead, которое является или true или false (значение по умолчанию). Предположим, что вы устанавливаете свойство на true.
pcloud.PreserveStructureOnRead = true;
Теперь вызывание любых функций чтения (readXYZ, readRGB или readField) сохраняет организационную структуру облака точек. Когда вы сохраняете структуру, выходные матрицы имеют размер m-by-n-by-d, где m является высотой, n является шириной, и d является количеством возвращаемых значений для каждой точки. В противном случае все точки возвращены как x-by-d список. Эта структура может только быть сохранена, если облако точек организовано.