Loop through 3D bins to count numbers of points of each color within each separate bin
2 次查看(过去 30 天)
显示 更早的评论
Hi all,
I apologize if this is a trivial question; I have mostly only worked with 2D data sets before. I have a large data set consisting of xyz coordinates (locations of electrode readings on a heart), each of which has a 4th-dimensional value assigned to it (representing an activation time reading). I have assigned different time intervals to different colors, resulting in the creation of a color map of activation time. I now want to divide the xyz coordinates in space into a 3D grid, and then analyze each grid section/cube separately to determine how many different colors it contains. I have written some code that uses the 'discretize' function to create bins out of the separate x,y, and z vectors. I am now attempting to analyze through each interval/cube using for loops. For some reason, however, my code is not working the way that I want. Does anyone have any idea how I can define each cube/voxel created by the discretize functions separately, as well as how I can determine the numbers of colors (rgb_time contains the values of the colors assigned to each xyz coordinate) within each cube? Thank you very much!
0 个评论
采纳的回答
Matt J
2023-4-11
编辑:Matt J
2023-4-11
If you have followed the advice in your previous thread,
then you should now have a list of voxel IDs for every rgb time. So, you could now do,
counts = splitapply(@(z) height(unique(z,'rows')), RGB, ID(:))
Here, I assume RGB is an Nx3 array of color data.
7 个评论
Matt J
2023-4-11
You are quite welcome, but if your problem is now resolved please Accept-click the answer.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Lighting, Transparency, and Shading 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!