I converted a color image to gray using rgb2gray and denoised the image. Now i wanted to convert the denoised gray image to a color image... Is it possible.... Please can someone help me.... Please do reply....

 采纳的回答

Image Analyst
Image Analyst 2013-8-27

1 个投票

You can use ind2rgb() but you have to supply a colormap. It won't look like the original colors though - you lost those when you went to gray. Why don't you just denoise each channel one at a time? Or convert to hsv and denoise just the v channel. Either of those methods will not lose the color information like your method does.

3 个评论

MATLAB has a rgb2ycbcr function and ycbcr2rgb function - try that. ALso, why are your arrays 4D arrays? Inside the custom-written functinos they're 3D arrays but I don't even know why they're that. Why aren't they 2D arrays like normal?
i have this code that filters image,but when i use it with a colored image it turns grayscale. could you help me?
I = imread('phonebox2_noisy.bmp');
Im = rgb2gray(I);
noisy = imnoise(Im, 'salt & pepper',0.1);
[m,n] = size(noisy);
output = zeros(m,n);
output = uint8(output);
for i = 1:m
for j = 1:n
xmin = max(1,i-1);
xmax = min(m,i+1);
ymin = max(1,j-1);
ymax = min(n,j+1);
temp = noisy(xmin:xmax, ymin:ymax);
output(i,j) = median(temp(:));
end
end
figure(1);
set(gcf, 'Position', get(0,'ScreenSize'));
subplot(131),imshow(I),title('Original Image');
subplot(133),imshow(output),title('filtered image');
@kailas jobu, after you read this
attach 'phonebox2_noisy.bmp' in your own, new question.
Also attach the "noisy()" function. And you might want to consider medfilt2() instead of median.

请先登录,再进行评论。

更多回答(1 个)

类别

帮助中心File Exchange 中查找有关 Image Processing Toolbox 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by