异步采集方式下,采集工作和计算机对图像的处理工作可以同时进行,即当CPU处理当前帧的图像时,CCD摄像机可以进行下一帧的图像采集。因此,在程序编制时,需要一个缓存机制用来缓存当前已采集完成的图像和缓存CCD摄像机将要采集或正在采集的图像,从而实现图像采集与处理的并行工作。显然,利用这种双缓存采集方法既可以降低对硬件系统的要求,还可以大大提高系统的处理速度,满足实时处理的要求。
3.3 图像采集代码实现
3.4用GDI+实现图像拼接
4、 图像采集实例
图7是同步采集系统采集的PCB图像,图像宽为7 300,高为1 000,用时1.3 s,并且存在掉帧现象。图8是双缓存异步采集系统采集的PCB图像,用时1.0 s,采集的图像效果良好。
结果表明,双缓存异步采集系统的图像采集速度显著提高,并且由于利用ActiveX组件缩短了开发周期,降低了开发的人力成本。且提高了图像采集的质量。采集一幅7300x10000的图像并实时拼接仅需1.3 s,不存在掉帧现象,无损拼接拼接。计算图像缓存区大小的公式为MemSize=ImageWidthxlmageHeightxFrames,实验还表明,采用同步采集方式采集7 300x1 000,每像素8 bits的1帧图像大致需要6Gb的缓存空间;采用异步双缓存采集方式采集相同分辨率的图像只需要不到32 mb的缓存就可以连续不问断地保存图像。由此可见,使用异步双缓存采集方式不仅可以节约系统资源,而且可以获得更高效更好的采集效果。