LabVIEW用Grab连续采集图像的完整过程

来源:互联网 发布:南京域名备案中心 编辑:程序博客网 时间:2024/04/29 17:08

SIT项目的基本思路是用摄像头采集图像,处理后获得参数通过RS485与PMC通信,控制电机使四轴运动,构成一个控制的回路。

这次用LabVIEW搭建一个程序完成Grab的连续图像采集,为图像处理做准备。

(1)IMAQ Create一个数据缓存区并给它创建一个字符串常量。

(2)IMAQdx Open摄像头并为他创建一个IMAQdx的会话句柄。

(3)调用IMAQdx Configure Grab.VI完成Grab的初始化,再调用IMAQdx Grab,并为它创建一个图像显示。

如下:


(4)调用IMAQdx Close Camera.VI关闭摄像头。

(5)调用IMAQ Dispose.VI释放图像缓存。

如下:


(6)为了程序的能连续循环运行,调用一个while循环,讲Grab和图像显示框进去,将自动产生的移位寄存器替换为隧道。(移位寄存器即将前一次的输出当做下一次的输入。)

如下:


(7)为了计算循环时间,在循环内添加个定时-时间计数器。创建一个移位寄存器,并调用相减运算。创建一个输出显示时间。

如下:


(8)设置错误处理。现将控件的error in和error out相连。将Close和Dispose的error out合并,在 对话框与用户界面中选择合并错误和通用错误处理。

(9)创建一个系统布尔类型取消按钮用于停止循环,将Grab的error out簇调用解除捆绑,分离出status,和停止按钮相或,连接到循环停止上去。

如下:


效果图如下:


0 0