视频实时采集显示程序
程序虽非原创,但是我做的改动超过了70%。最近看有版友问信号实时采集和显示的问题。程序框架可以完全相同,只是获得信号源的形式不一样,这里通过videoinput函数获得视频源,然后进行后续的操作(通过analoginput可以或者一个模拟信号输入源)。如果你的电脑没有摄像头则程序会报错,需要有摄像头和相应的驱动做支持。画面有些卡,和用qq视频聊天的效果差不多clear all;imaqmem(30000000);
hard=imaqhwinfo;
name=hard.InstalledAdaptors;
vid=videoinput(name{1});
start(vid);
h=figure('NumberTitle','off','Name','视频捕捉',...
'MenuBar','none','color','c',...
'Position', , 'Visible', 'on');
set(h,'doublebuffer','on','outerposition',get(0,'screensize'));
h1=axes('Position', ,'Parent',h);
axes(h1);hold on;axis off;%or set(h,'CurrentAxes',h1);
text(.1, .1,'.','color','w');title('视频源');
h2=axes('Position', ,'Parent',h);
axes(h2);hold on;axis off;%set(h,'CurrentAxes',h1);
text(.1, .1,'.','color',);title('梯度图');
while ishandle(h)
aa=getsnapshot(vid);% grabbing camera image.
flushdata(vid);
axes(h1);a=imshow(aa);
set(a,'EraseMode','none');
axes(h2);b=imshow(diff(double(aa(:,:,1)),[]));
set(b,'EraseMode','none');
drawnow;% this is important to view realtime.
end
delete(vid)
disp('您选择了关闭!')
------------------------------------------------------------------------------------------
如果你的电脑上有摄像头,而且视频聊天没有问题。那么这个程序
应该不会出什么问题,我用的是matlab7.0加蓝色妖姬。如果发现
问题,请贴出错误提示以便于完善程序!-----------花如月------------
------------------------------------------------------------------------------------------
[ 本帖最后由 花如月 于 2007-10-30 18:39 编辑 ] 不错不错,填补了论坛这方面的空白
回复 #2 eight 的帖子
原来的程序似乎是mathwork网站上的一个演示例子,用得是for循环。不能算是真正的实时,而且没有清除内存操作。多运行几次,就会提示内存超限,无法得到frame。需要重启matlab才可以,继续用[ 本帖最后由 花如月 于 2007-10-30 18:34 编辑 ] 强人啊~~ 学习ing.. 强悍 高手阿 %发现这个问题:
??? A timeout occurred during GETSNAPSHOT.
Error in ==> try2 at 19
aa=getsnapshot(vid);% grabbing camera image.
%我的matlab版本R2007b 原帖由 lzbones 于 2008-1-5 16:11 发表 http://www.chinavib.com/forum/images/common/back.gif
%发现这个问题:
??? A timeout occurred during GETSNAPSHOT.
Error in ==> try2 at 19
aa=getsnapshot(vid);% grabbing camera image.
%我的matlab版本R2007b
2007b 可能对这个函数作了改动,你 help 一下吧 原帖由 eight 于 2008-1-5 19:36 发表 http://www.chinavib.com/forum/images/common/back.gif
2007b 可能对这个函数作了改动,你 help 一下吧
谢谢,我回去help看看 :@) 确实有楼上所说的问题 视频怎么不能保存啊
回复 楼主 花如月 的帖子
这个程序非得用 蓝色妖姬吗?这是个什么软件?
回复 12楼 cc2005726 的帖子
不是的,蓝色妖姬只是一种摄像头的牌子。一般来说xp系统下,只要别的应用程序可以使用摄像头这个程序应该就可以。
如果matlab换了版本,对出错的函数可以help下,做些修改
回复 板凳 花如月 的帖子
你好,最近做一个实验,需用到MATLAB采集视频,请问 你这段程序可以实现所采集的图像的保存吗?因为实验需要每秒采集25张图片或者每秒25帧的视频 共2分钟,所以需要把采集好的视频或图片实时保存到硬盘 楼主啊,请问你的程序能实现毫秒级么?matlab读取显示一帧bmp图像都要零点几秒呢(用imread,imshow)
页:
[1]