real time image processing (while loop)

1 vue (au cours des 30 derniers jours)
naim
naim le 15 Fév 2014
Réponse apportée : naim le 15 Fév 2014
hello im tring to write a real time motion detection matlab code but i have a weird problem with the while loop this is a part of the code
im=getsnapshot(vid);
while(i<m)
flag=0;
pause(.1)
im2=getsnapshot(vid);
im=imcrop(im,[mesh(i,1) mesh(i,2) (mesh(i,3)-mesh(i,1)) (mesh(i,4)-mesh(i,2))]);
im2=imcrop(im2,[mesh(i,1) mesh(i,2) (mesh(i,3)-mesh(i,1)) (mesh(i,4)-mesh(i,2))]);
im=rgb2gray(im);
im2=rgb2gray(im2);
fr_diff = abs(double(im) - double(im2));
but i get this error
Error using rgb2gray>parse_inputs (line 81) MAP must be a m x 3 array.
Error in rgb2gray (line 35) X = parse_inputs(varargin{:});
Error in testing (line 27) im=rgb2gray(im);
when the line im=getsnapshot(vid); is inside the loop it doesn't give an error!!!!

Réponse acceptée

Image Analyst
Image Analyst le 15 Fév 2014
What does
whos im
size(im)
say? It might be more robust to do this
[rows, columns, numberOfColorChannels] = size(im);
if numberOfColorChannels > 1
im = rgb2gray(im); % Convert color to gray scale.
end

Plus de réponses (2)

naim
naim le 15 Fév 2014
it is an rgb image when i change the code to
while(i<1)
im=getsnapshot(vid);
.
.
.
the code works with no errors O_o

naim
naim le 15 Fév 2014
ok i got it now i save the gray croped image in the same matrex (im) -.- XD ok thanks man :D

Catégories

En savoir plus sur Image Processing Toolbox dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by