Histograms from point cloud

9 views (last 30 days)
Théodore Keller
Théodore Keller on 9 Jul 2019
Commented: Théodore Keller on 15 Jul 2019
Hello,
Basically, I have 3D coordinates points (xyzPoints) and I want to display 3 histograms of x, y and z coordinates values in order to visualize the density of data cloud.
xyzPoints = reconstructScene(disparityMap, stereoParamsTEST);
xyzPoints = xyzPoints./1000;
ptCloud = pointCloud(xyzPoints);
figure(4);
pcshow(ptCloud);
title('Point cloud');
How do I create variables for x, y and z coordinates values to do this :
subplot(2,2,1);
hist(x);
subplot(2,2,2);
hist(y);
subplot(2,2,3);
hist(z);
Thanks

Accepted Answer

Rik
Rik on 9 Jul 2019
It looks like you can use the columns from xyzPoints, because they seem to store the coordinates. Otherwise you could also use the location property of your point cloud object.
  3 Comments
Rik
Rik on 9 Jul 2019
You need to save the data to that variable first. The property I was referring to can be found in the documentation for the pointCloud function.
But as Steven points out: you can simply do something like this.
xyzPoints = reconstructScene(disparityMap, stereoParamsTEST);
xyzPoints = xyzPoints./1000;
figure(1),clf(1)%create a clean window (bring to focus and clear if it already exists)
for dim=1:3
subplot(2,2,dim);
temp=xyzPoints(:,:,dim);
hist(temp(:));
title(char('x'-1+dim))%use a trick to map {1 2 3} to {'x' 'y' 'z'}
end

Sign in to comment.

More Answers (1)

Steven Lord
Steven Lord on 9 Jul 2019
You said in your comment to Rik's answer that xyzPoints is size [2019 4063 3]. I assume therefore that the x data is the first page of that data xyzPoints(:, :, 1), the y data is the second page xyzPoints(:, :, 2), and the z data is the third page xyzPoints(:, :, 3)? If so, call histogram on each of those pages of data.
Alternately you could plot them using scatter3 or perhaps make a trio of heatmap plots: one for x versus y, one for x versus z, and one for y versus z.

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!