i am using red object detection program,but the prb is i am unable to stop/interrupt the program when its running,plz help me
Mostrar comentarios más antiguos
if true
% codevid = videoinput('winvideo', 1, 'YUY2_640x480');
set(vid, 'FramesPerTrigger', Inf);
set(vid, 'ReturnedColorspace', 'rgb')
vid.FrameGrabInterval = 1;
start(vid)
while(vid.FramesAcquired<=50)
data = getsnapshot(vid);
diff_im = imsubtract(data(:,:,1), rgb2gray(data));
diff_im = medfilt2(diff_im, [3 3]);
diff_im = im2bw(diff_im,0.18);
diff_im = bwareaopen(diff_im,300);
bw = bwlabel(diff_im, 8);
stats = regionprops(bw, 'BoundingBox', 'Centroid');
imshow(data)
hold on
for object = 1:length(stats)
bb = stats(object).BoundingBox;
bc = stats(object).Centroid;
rectangle('Position',bb,'EdgeColor','r','LineWidth',2)
plot(bc(1),bc(2), '-m+')
a=text(bc(1)+15,bc(2), strcat('X: ', num2str(round(bc(1))), ' Y: ', num2str(round(bc(2)))));
set(a, 'FontName', 'Arial', 'FontWeight', 'bold', 'FontSize', 12, 'Color', 'yellow');
end
hold off
end
stop(vid);
delete(vid);
end
the program only stops after 50 frames are captured,i dont want to change it, but i should be able to force stop it at between, what is the code for it??
Respuesta aceptada
Más respuestas (2)
Walter Roberson
el 17 de Abr. de 2013
0 votos
The closest you might be able to get without changing that code, would be an arrangement to error out of the program. MATLAB is not designed to be able to force a loop to quit without the cooperation of the loop.
1 comentario
vishnu andavar
el 18 de Abr. de 2013
tairman singh
el 18 de Abr. de 2013
Add this into your while loop
k=get(gcf,'currentkey');
if (k=='s')
disp('program stopped')
break
end
and when you press 's' in keyboard you'll be able to get out off the loop and also place these before end flushdata(vid) delete(vid) imaqreset close all clear all
Hope it'll help i'm having the same problem
2 comentarios
vishnu andavar
el 22 de Abr. de 2013
tairman singh
el 3 de Mayo de 2013
keep pressing it until it breaks out of loop or put pause(0.2) before these commands.
Categorías
Más información sobre National Instruments Frame Grabbers en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!