我有一個我想用作色彩圖的三維圖像。我有實時數據流,並根據我當前的位置(s),我希望我的圖形根據我的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-by-N-3陣列,但首先,我不想這個...我想保留我的色彩地圖的z維度不止3個樣本......其次......它在我身上吐出了一堆錯誤。 所以總而言之,我只是希望在繪製具有x,y和z分量的數據時,使用此3D顏色映射工作。感謝您的幫助,讓我知道如果有什麼不清楚!
謝謝終於迴應了這個問題,儘管我已經想通了,但現在= p。我做了同樣的事情,你基本上描述過,我只是不得不重做我的數據的維度 – spaderdabomb
你...我懶得哈哈大笑 – spaderdabomb