how to create a surface from a gray level image?
显示 更早的评论
Let I be a gray level image and (x,y) be the standard coordinate. I multiplied this image 'I' with a constant value μ for μ=[0,1] and called it as scaled version of the image. Then i want to plot this scaled version image in a surface 'S' which is parameterised by ψ:(x,y)-->(x,y,μI(x,y)).How can i solve this?
14 个评论
KSSV
2017-2-15
Once you have a matrix, surf works to plot the surface. Did you try surf ?
Naseeba PP
2017-2-15
KSSV
2017-2-15
z will be your image values, x,y if you provide it will take or else the indices according to the size of image.
Naseeba PP
2017-2-15
KSSV
2017-2-15
I=imread('lena.jpg');
[m,n,p] = size(I) ;
x=[1:n]; y=[1:m];
z=I(:,:,1);
surf(x,y,z);
Naseeba PP
2017-2-15
KSSV
2017-2-15
Read about imread. When you read a image you will get RGB values, your z will be 3D matrix. 1,2,3 corresponds to R (Red),G (green),B (blue) respectively.
Naseeba PP
2017-2-15
KSSV
2017-2-15
[m,n,p] = size(I) ;
x=[1:n]; y=[1:m];
surf(x,y,z); % z will be a 1D matrix
Naseeba PP
2017-2-15
KSSV
2017-2-15
What for you want to use?
Naseeba PP
2017-2-15
KSSV
2017-2-15
For tangent and normals why you need z? x, y are needed isn't it?
Naseeba PP
2017-2-15
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Lighting, Transparency, and Shading 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!