Loop through 3D bins to count numbers of points of each color within each separate bin
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaires
Réponse acceptée
Matt J
le 11 Avr 2023
Modifié(e) : Matt J
le 11 Avr 2023
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 commentaires
Matt J
le 11 Avr 2023
You are quite welcome, but if your problem is now resolved please Accept-click the answer.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Lighting, Transparency, and Shading 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!