我有一个想用作颜色图的 3D 图像。我有实时数据流入,根据我当前的位置,我希望我的图表根据我的 3D 图像显示某种颜色。
我之前1080x1920
使用以下代码成功使用大小图像(2D 图像)将其转换为图像。
Color=double(imresize(RGBparam.image,[81 144]))/255;
然后通过设置我的数据来绘制它(我之前已经创建了图......该代码应该无关紧要)其中size(myData(:,:1))
输出 81x144...... Ydata 和 Zdata 也具有相同的尺寸。
set(Fig.figim, 'CData', Color);
set(Fig.figim, 'XData', myData(:,:,1) + positionX)
set(Fig.figim, 'YData', myData(:,:,2) + positionY);
set(Fig.figim, 'ZData', myData(:,:,3) + positionZ);
所以效果很好!现在我有了一个新的 3D 图像。图像具有尺寸512x512x351
。我尝试执行相同的代码,但它不起作用。我试过这个:
Color=double(imresize(DICOMparam.Vd,[81 144]))/255;
然后我尝试像这样绘制
set(Fig.figim, 'CData', Color);
set(Fig.figim, 'XData', myData(:,:,1) + positionX)
set(Fig.figim, 'YData', myData(:,:,2) + positionY);
set(Fig.figim, 'ZData', myData(:,:,3) + positionZ);
但后来我得到错误:“颜色必须是 M×N 矩阵或 M×N×3 数组”
现在我尝试改变一些东西,所以它原来是一个 M×N×3 数组,但首先,我不想要这个......我想保留不止 3 个 z- 样本我的彩色地图的尺寸……其次……无论如何,它向我吐出了一堆错误。所以总而言之,当我绘制具有 x、y 和 z 分量的数据时,我只是希望这个 3D 颜色图能够工作。感谢您的帮助,如果有任何不清楚的地方,请告诉我!