how to plot rgb image in 3D dimension?
13 次查看(过去 30 天)
显示 更早的评论
Hi, i want to plot a rgb image in 3D dimension. Z axes is for the color data. Currently, i have something like this
but i don't want the z-line to be plotted, ijust want to see how the surface looks. Maybe something like this
How can i make it? Thanks a lot. Here is my code for now:
img= imread([imdir,filename]);
if size(img,3)>1
img = rgb2gray(img);
end
[x,y]= meshgrid(1:size(img,2),1:size(img,1));
z = double(img);
min_x = min(min(x));
min_y = min(min(y));
max_x = max(max(x));
max_y = max(max(y));
figure; hold on;
surface(x,y,z,'edgecolor','none');
imgzposition = -100;
surf([min_x max_x],[min_y max_y],repmat(imgzposition, [2 2]),...
img,'facecolor','texture','edgecolor','none')
view(45,30);
xlabel('x');
ylabel('y');
zlabel('z');
0 个评论
回答(2 个)
Image Analyst
2014-6-20
Try sc: http://www.mathworks.com/matlabcentral/fileexchange/16233-sc-powerful-image-rendering from the same guy (Oliver) who brought us export_fig.
You might also check out Sean's meshcanopy: http://www.mathworks.com/matlabcentral/fileexchange/29485-meshcanopy
0 个评论
Ronnie Reyes
2018-11-9
I know its too long of time. But do you still have the code for your initial work?
1 个评论
Image Analyst
2018-11-9
This doesn't seem like an answer to the original question, so who are you asking this of? I see code and links to code so I don't know what you're really asking.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!