why this code is not working?
1 回表示 (過去 30 日間)
古いコメントを表示
i have code which is perfectly working fine with cameraman.tif but with other images its not ..what is wrong in the code?
[X,Y,Z] = peaks(200);
I = double(imread('cameraman.tif'));
figure;
mesh(X, Y, Z, I);
colormap jet;
above one is working fine
but this one not .i have to generate surf and mesh images kindly suggest what is wrong
clc
close all
clear all
% a=VideoReader('C:\Users\tce21\Downloads\test.mp4'); % Read a video
% b = read(a,1); % Read 1st frame
% c=rgb2gray(b);
% [X,Y,Z] = peaks(200); % surface
I = double(c);
figure;
mesh(X, Y, Z, I); % overlay image as texture
colormap jet;
image s attached
i want same output as cameraman but with mesh grid lines with the figure attached
as 1st images.
help is really appreciated
4 件のコメント
Image Analyst
2018 年 4 月 19 日
This:
[X,Y,Z] = peaks(200);
I = double(imread('cameraman.tif'));
figure;
mesh(X, Y, Z, I);
colormap jet;
does not work fine. It generates error
Warning: Error creating or updating Surface
Error in value of property CData
Array is wrong shape or size
At that point, I quit working on this question.
KSSV
2018 年 4 月 19 日
Yes....true Image Analyst. There were two or three questions on how to mesh a image by the user which were not closed by the user so far.
採用された回答
Image Analyst
2018 年 4 月 19 日
Try this:
rgbImage = imread('1st images.bmp'); subplot(1, 2, 1); imshow(rgbImage); % Get the dimensions of the image. % numberOfColorChannels should be = 1 for a gray scale image, and 3 for an RGB color image. [rows, columns, numberOfColorChannels] = size(rgbImage); if numberOfColorChannels > 1 % It's not really gray scale like we expected - it's color. % Use weighted sum of ALL channels to create a gray scale image. rgbImage = rgb2gray(rgbImage); % ALTERNATE METHOD: Convert it to gray scale by taking only the green channel, % which in a typical snapshot will be the least noisy channel. % grayImage = grayImage(:, :, 2); % Take green channel. end % Make white surround black. rgbImage(rgbImage == 255) = 0; [X, Y] = meshgrid(1:columns, 1:rows); dblImage = double(rgbImage); Z = dblImage; subplot(1, 2, 2); mesh(X, Y, Z, dblImage); % overlay image as texture colormap jet; fontSize = 20; xlabel('X, column', 'FontSize', fontSize); ylabel('Y, Row', 'FontSize', fontSize); zlabel('Intensity', 'FontSize', fontSize);
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Red についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!