Как эффективно построить воксельную сетку с цветовым кодированием меток?
Мне нужно визуализировать сетку вокселей, где каждому вокселю назначено некоторое значение метки (0:11), которое должно отражать его цвет.
Я нашел этот ответ, но он действительно медленный для моего входного объема размером [60x36x60] (возможно, из-за циклов Matlab).
Есть ли более эффективное решение?
Мне нужно, чтобы изображение выглядело хорошо с настоящим 3D-эффектом, поэтому я не могу использовать 2D-проекции, как это делалось до сих пор:
[X,Y,Z] = meshgrid(1:size(A,1),1:size(A,2),1:size(A,3));
xyz=[X(:) Y(:) Z(:)];
idx = A~=0;
pcshow(xyz(idx,:),A(idx),'MarkerSize',100)
xlabel('X')
ylabel('Y')
zlabel('Z')
az = -16.3701;
el = 51.2305;
view(az,el);
A представляет собой целочисленный массив размером [60x60x36] с метками 0:11, метка "0" игнорируется: