Turn a X Y Z matrix into a point cloud
25 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a matrix as follows for example where the first column is X coordinate, second column is the Y coordinate and third column is the Z coordinate. How can i turn this matrix into a point cloud with pcwrite and pcshow? It has to be in a point cloud format.
[1 8 9; 2 3 4; 9 8 6]
1 commentaire
Adam Danz
le 12 Jan 2021
xyz = [1 8 9; 2 3 4; 9 8 6];
ptCloud = pointCloud(xyz)
pcshow(ptCloud,'MarkerSize',1000)
Réponses (3)
Image Analyst
le 21 Fév 2020
Try
plot3(x, y, z);
or
scatter3(x, y, z);
or, if you have a surface rather than a cloud
surf(x, y, z);
2 commentaires
Image Analyst
le 22 Fév 2020
I never heard of it but I guess Hiroki has and it seems there is a function to put it into that class. Then you can export it somehow, like using save() to put it into a .mat file. What program are you exporting it for? What program will use this data that you exported? Does that program know how to read in .mat files? If not, what formats does that program know about?
the cyclist
le 21 Fév 2020
xyzPoints = [1 8 9; 2 3 4; 9 8 6];
ptCloud = pointCloud(xyzPoints);
3 commentaires
Hiroki Okawa
le 21 Fév 2020
Modifié(e) : Hiroki Okawa
le 21 Fév 2020
I think that pcshow function will woks
pcshow([1 8 9; 2 3 4; 9 8 6])
By the way, you can convert xyz matrix into point cloud format by pointCloud function
ptCloud = pointCloud(xyzPoints)
in this case,
ptCloud = pointCloud([1 8 9; 2 3 4; 9 8 6])
Voir également
Catégories
En savoir plus sur Point Cloud Processing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!