- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于USB摄像头的高速 像采集技术
摘要:在图像采集系统中,最核心的技术是实时图像的采集和处理。图像采集是进行图像处理、图像压缩、图像识别的基础,图像的采集速度与质量直接影响到系统的整体性能。因此对图像采集系统的研究具有重要的现实意义和广泛的应用前景。本课题通过USB摄像头实现了对高速图像的采集与处理,运用清晰度对比函数与直方图均衡化函数对图像进行处理与储存,进行了一系列相应的理论实验验证与分析,并给出了最终的实验结果。
关键词:USB摄像头;离散余弦变换;DCT;直方图均衡化
0 引言
图像采集系统,现代计算机系统广泛应用的是总线Bus结构。随着GUI(Graphical User Interface)、多媒体等技术在PC机上的应用,传统的PC总线己不能满足系统工作的要求。USB通用串行总线的出现使图像采集技术得到了质的飞跃。更快的传输与相应速度,便捷的图像采集系统安装过程以及更低的能耗,使得图像采集技术广泛应用到了生活中。USB摄像头充当了机器之眼的角色。不仅如此,计算机的发展又赋予了图像采集技术新的活力一图像的采集处理识别功能。这一功能使得很多机械化的产品更加全自动化。图像系统技术的逐渐成熟,使得我们可以更轻易地获取外部信息并添加到其他智能化程序控制系统中。但价格低廉,可进行高效图像处理传输的USB简易便携的图像处理程序依然值得研究与探讨。
1 研究方向与目标
USB2.0以其使用方便、易于扩展、速度快等优点而越来越多地应用于数据采集系统中。在视频信号采集过程中,信号数据量比较庞大,且对实时性要求也比较高。本课题设计了一种基于USB2.0总线的视频数据采集系统,采用Logitech公司的快看高手版5000摄像头与MATLAB程序的GUI进行通信,并在PC机上编写代码指令,以便较好地控制图像的采集与处理。本课题研究了基于USB摄像头的高速图像采集系统,详细分析该采集系统的设计思路:以图像高速采集与优化处理并高速传输为主要方向,配置MATLAB程序,获得最佳的图像采集处理效果,并辅助电脑进行后续的图像处理工作。
本课题围绕上述诸方面主要做了如下的研究工作:
(1)图像的高速采集。利用MATLAB中GUI的编程方法,实现网络摄像头对高速视频数据的图像采集。
(2)图像的存储。实现了PC上的存储USB总线数据的功能,将数据以二进制文件的形式存储在PC的硬盘上。
2 高速图像采集系统的构建
本系统共分为图像采集预处理和图像直方图均衡化两大模块,目标是选取合适的图像进行处理分析,过滤分辨率不达标的图像并将图像进行初步优化。其实质是运用数字图像处理的方法,在MATLAB进行离散余弦变换的评价函数并进行直方图均衡化的图像优化。本文的图像处理流程为:
3 具体应用特性
3.1 USB的特性
USB与老式的PC机接口相比,有以下特点:
(1)成本低廉。USB的设计功能十分强大,但是组件却十分便宜,适用于小型设备图像采集处理使用。
(2)即插即用。在需要连接的设备上装载好驱动,即可在几秒内初始化完成并开始工作,并且支持热插拔。
(3)体积小巧。USB接口的设计占用更少的空间,并且只需要一根USB数据线,就可以担当数据双向传输和供电的需求。更加缩小的产品体积。
3.2 基于离散余弦变换(DCT)的评价函数
DCT变换对高频分量有较好的分离能力,在清晰度评价函数中,分离并保留高频分量作为图像清晰度的评价尺度。由于直流分量在一定程度上反映了图像的整体亮度和总体信息,因而用高频分量和直流分量的比作为图像相对高频分量进行判别,得到的G的最大值所对应的图像即为样本图像中最清晰的。采用清晰的图片进行保存与处理,可以提高后续程序对图像处理的效率与准确度。
如图1和图2分别为使用MATLAB进行DCT评价函数的效果图。
3.3 图像对比与增强
直方图均衡化的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态范围,从而可达到增强图像整体对比度的效果。使用MATLAB来实现直方图均衡化,设原始图像在(x,y)处的灰度为f,而改变后的图像为g,则对图像增强的方法可表述为将在(x,y)处的灰度f映射为g。在灰度直方图均衡化处理中对图像的映射函数可定义为:g=EQ(f),这个映射函数EQ(f)必须满足两个条件(其中L为图像的灰度级数):
(1)EQ(f)在0≤f≤L-1范围内是一个单值单增函数。这是为了保证增强处理没有打乱原始图像的灰度排列次序,原图各灰度级在变换后仍保持从黑到白(或从白到黑)的排列。
(2)对于0≤f≤L-1有0≤g≤L-1,这个条件保证了变换前后灰度值动态范围的一致性。
一幅RGB图像是一个M×N×3的数组,其每一个像素点都对应特定位置的彩色图像的红、绿、蓝三个分量,令一幅彩色图像为Zrgb,可表示为:
其中,Zr、Zg、Zb分别表示红分量图像、绿分量图像、蓝分量图像,其实每一个分量图像就可以看成一个灰度图像。
程序:
图3和图4分别为使用MATLAB实现直方图均衡化前后的效果图。
4 结束语
MATLAB是较好的图像实时采集处理的编程工具,矩阵运算功能强大且入门简单。利用MATLAB的图像处理工具箱在运算与算法验证上的优势,与USB串口的快速传输速度相结合,可以达到USB高速图像采集与处理的要求。对图像的预处理可以显著提高其他图像系统对实时图像采集的要求。不同的USB图像采集摄像头有着不同的数据调节参数以及不同功能的驱动优化,在选择摄像头时,应该详细了解摄像头的各项基本参数以及可根据环境自动调节的函数功能。根据整体图像采集系统的后续处理需要,挑选最适宜的摄像头设备。在MATLAB中充分利用各种函数进行调节,并可配合GUI用户界面设计界面友好的参数管理和可视化图像高速采集监视系统。对图像采集进行最优化的处理。