Help with using SURF to analyze an image?
12 ビュー (過去 30 日間)
古いコメントを表示
So I am trying to analyze and image using "surf" to make a 3D plot whose z value is the gray scale, where darker image will have lower z (Black is 0, White is 255). How would I use surf to analyze an image like that?
0 件のコメント
採用された回答
Rik
2018 年 7 月 13 日
What your goal is, is not really clear to me, but you can use the code below to view an image as a surf. I used an example image packaged with the IPT, so if you don't have that toolbox, you'll have to use your actual image.
figure(1),clf(1)
peppers = double(imread('peppers.png'));
IM=peppers(:,:,1)*.3+peppers(:,:,1)*.6+peppers(:,:,1)*.1;
[X,Y]= meshgrid(1:size(IM,2),size(IM,1):-1:1);
surf(X,Y,IM,'EdgeColor','none')
colormap('gray')
view(10,90)
6 件のコメント
Rik
2018 年 7 月 14 日
Just to clarify: you can still 3D rotate this. The line with view just sets the camera to a point where you can easily recognize the image.
その他の回答 (2 件)
Image Analyst
2018 年 7 月 14 日
Perhaps you'd like meshcanopy: https://www.mathworks.com/matlabcentral/fileexchange/29485-meshcanopy
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/191936/image.jpeg)
0 件のコメント
Image Analyst
2018 年 7 月 13 日
You wouldn't. The surf() function in base MATLAB just for visualization of smooth images, as opposed to SURF from the Computer Vision System Toolbox. The surf() function is not very good for visualizing rough images, and no good at all for analysis. See my Image Segmentation Tutorial in my File Exchange for an intro to image analysis.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!