how to convert a series of RGB images into grayscale and save them?
5 ビュー (過去 30 日間)
古いコメントを表示
I have taken snapshots using my webcam and have saved those snaps in rgb type. Now I need to convert those rgb images into gray. Please help.
I have used the following code to save: and it is better if the solution is also given using for loop.
for i=1:10
a=getsnapshot (cam);
imwrite (a,sprintf('%d.jpg',i);
end
Thank you.
2 件のコメント
Image Analyst
2014 年 11 月 26 日
Isn't this question totally contained in the question you already asked and I already answered: http://www.mathworks.com/matlabcentral/answers/163909#comment_251947? You asked the same thing plus how to subtract some image from the gray and RGB image, and I gave code for that there.
採用された回答
Mohammad Abouali
2014 年 11 月 25 日
編集済み: Mohammad Abouali
2014 年 11 月 25 日
Actually you are only saving the last snap shot as grayscale. Change your code to this:
for i=1:10
a=getsnapshot (cam);
a=rgb2gray(a);
imwrite (a,sprintf('%d.jpg',i));
end
if you want both rgb and gray scale to be stored you can do this:
for i=1:10
a=getsnapshot (cam);
imwrite (a,sprintf('%d.jpg',i));
imwrite (rgb2gray(a),sprintf(['grayImage' filesep '%d.jpg'],i));
end
14 件のコメント
rohit ranjan
2015 年 10 月 28 日
sir my code is
clear all; close all; clc;
path='E:\OLD_MYDOCUMENT\prabhu\matcodes\'; list=dir([path, '*.bmp']); for x=1:length(list) images{x}=imread([path, list(x).name]); figure(x), imshow(images{x}); end
after this i have to convert to gray image. how to do ?
Image Analyst
2015 年 10 月 28 日
I'm not sure why you're storing/saving all of them in a cell array - you're likely to run out of memory. If you don't need the images after the loop, don't save them. Just do this and then use it without saving:
grayImage = rgb2gray(images{x});
その他の回答 (1 件)
参考
カテゴリ
Help Center および File Exchange で Image Processing Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!