how to compare images in video processing?
2 次查看(过去 30 天)
显示 更早的评论
this is my code
imaqhwinfo
info=imaqhwinfo('winvideo')
vid=videoinput('winvideo');
%Open Figure
hFigure=figure(1);
%set parameters for video
%Acquire only one frame each time
triggerconfig(vid,'Manual');
set(vid,'framespertrigger',1);
%Go on forever untill stopped
set(vid,'triggerrepeat',Inf);
%Get a grayscale image
set(vid,'ReturnedColorSpace','grayscale');
start(vid);
preview(vid);
for i=1:5
trigger(vid);
im=getdata(vid);
figure,imshow(im(:,:,:,i));
end
stop(vid),delete(vid),clear(vid);
the problem is that i'm not getting multiple frames in a single figure,more over some times the program run and some times gives the error
?? Error using ==> imaqdevice.start at 19
Multiple VIDEOINPUT objects cannot access the same device simultaneously.
why it happens and how can i solve it plz help
also m not getting the 4 frames ,it dispplay 3 figure windows out of which 2 is blank only 1 frame is showing
0 个评论
采纳的回答
Walter Roberson
2013-1-22
You have
im=getdata(vid);
so you are writing over all of "im". But on the next line you have
imshow(im(:,:,:,i));
which attempts to extract data only from the "i" slice of "im".
You need to be consistent: either write the data to a slice of "im", or overwrite all of "im" and show all of "im".
3 个评论
Walter Roberson
2013-1-23
What result do you want? The images are shown in separate figure windows because you have the call to figure before your imshow()
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!