论文部分内容阅读
摘要 [目的]小麦面粉麸星含量是评价面粉等级的重要指标之一,为了快速准确地检测出面粉麸星含量,介绍一种基于ARM11处理器的面粉麸星检测系统。[方法]系统采用机器视觉和嵌入式Linux操作系统,在Qt框架中运用V4L2(Video for Linux 2)的驱动架构实现麸星图像数据采集、显示和保存,最后通过数字图像处理技术检测面粉中的麸星含量。[结果]采集到的麸星图像分辨率高,麸星检测结果精确。[结论]该系统具有高的稳定性和精确度,并且检测效率明显提高。
关键词 麸星检测;ARM11;Linux;V4L2;机器视觉
中图分类号 S512.1 文献标识码 A 文章编号 0517-6611(2014)17-05686-03
Abstract [Objective] Wheat bran specks content of flour is one of important index for flour grade evaluation, in order to accurately detect the bran specks content, a kind of bran specks detection system based on ARM11 processor was introduced. [Method] In the system, machine vision and embedded Linux operating system were used, V4L2(Video for Linux 2) driven architecture was adopted to implement bran specks image acquisition, display and save in the Qt framework, finally the content of the bran specks was detected through digital image processing techniques. [Result] The collected bran specks image had high resolution, and the result of bran specks detection was precise. [Conclusion] The result indicates the system has high stability and precision, and detection efficiency has improved significantly.
Key words Bran specks detection; ARM11; Linux; V4L2; Machine vision
小麦面粉中麸星含量是评价面粉等级的一项重要指标,同时它也反映了小麦品种的优劣和面粉生产工艺水平的高低。目前,大多数科研机构和生产厂家都是采用面粉打板检测和人工识别的方法来检测麸星含量,不仅费时费力而且检测精度不高。近年来,数字图像处理技术应用日益广泛,用图像处理技术检测面粉麸星的研究也取得很大发展,然而在小麦粉生产质量评价领域这些检测装置大都没能达到成本低、效果好的发展要求[1-2]。
该研究中小麦面粉麸星检测系统采用ARM11和嵌入式Linux操作系统作为开发平台,不仅成本低、体积小、功耗低、可靠性高、扩展性强,而且通过应用程序设计实现智能化采集;利用系统无线功能实现网络化通信。同时,此系统采用的CMOS图像传感器灵敏度高、动态范围宽、分辨率高、功耗低、系统集成优良,因此采集到的图像清晰、质量高,为数字图像处理工作提供很大方便。
1 系统硬件架构
该研究中的面粉麸星检测系统以ARM11和Linux为开发平台,采用集成高品质CMOS图像传感器的USB摄像头和V4L2(Video for Linux 2)驱动架构,在Qt框架中应用V4L2编程接口提供的数据结构及函数库实现图像数据采集,运用Qt画图机制中的QPixmap类实现图像显示,并且保存图像。采集结果显示麸星图像清晰,给图像处理提供了很大方便,工作效率显著提高。
该系统架构如图1所示。硬件平台采用三星S3C6410处理器,其CPU内部集成了强大的多媒体处理单元,支持Mpeg4、H.264/H.263等格式的視频文件硬件编解码,可同时输出至LCD和TV显示;另外,系统使用USB Host接口连接USB摄像头,基于Qt的图形界面编程,通过LCD显示,通过RS232接口和PC机通信实现图像传输以及使用其一线触摸功能对采集到的图像简单操作。该系统中USB摄像头采用高品质CMOS图像传感器,静态分辨率1280×960,高速USB2.0传输接口。此外,系统提供WiFi支持可以轻松实现图像数据无线传输,作为智能结点实现采集系统网络化。
2 系统软件设计
2.1 基于V4L2的图像采集方法
由于Linux2.6.38系统内核带有通用USB型摄像头驱动,无需加载USB摄像头驱动、配置系统内核,因此需要采集图像时可直接采用V4L2获取摄像头数据。V4L2是Linux内核中关于视频设备的内核驱动,它为Linux中视频设备访问提供了通用接口。首先,V4L2接口的使用具有结构化的方式,视频采集流程基本按照打开视频设备、设置采集参数、处理数据、关闭设备的模式进行[3],编程简单直观,便于理解。此外,V4L2接口只需通过ioctl()函数给驱动程序发送命令、传递不同的参数即可完成对设备的操作,简单方便。再者,由于使用直接读取设备文件方式,对于系统来说开销很大,因此采用内存映射(mmap)方式,在内核空间开辟内存,再把该内存区间映射到用户程序空间,实现用户对数据的直接操作,执行速度大大提高。
综上所述,依据V4L2接口的结构化模式,视频采集流程[4]如图2所示。
统能有效地进行图像采集且采集效果很好;麸星识别图像中红色区域
代表检测出的麸星。经过两幅图像对比可以看到,系统有效识别出麸星,通过计算麸星区域面积占比便可得知此粉板中的面粉麸星含量,约为8.79%。
5 结论
该研究中介绍的微型智能化面粉麸星检测系统充分利用了嵌入式Linux系统的优势,其中使用高版本应用系统中的V4L2驱动架构和无驱动USB摄像头,省略了繁琐的USB驱动移植和系统内核配置,模块化的编程接口大大降低了开发难度,缩短了开发周期,并且系统的网络化支持可以轻松实现与PC通信。另外,此系统软件部分稍加改动即可用于其他机器视觉系统,扩展性强。
参考文献
[1]霍权恭,杨红卫,周展明,等.小麦粉粉色与麸星检测方法研究[J].中国粮油学报,2006,21(3):27-31.
[2] 乔常明.基于图像处理技术的面粉麸星检测技术研究与实现[D].哈尔滨:黑龙江大学,2010.
[3] 李涛.基于ARM的视频采集系统研究[D].秦皇岛:燕山大学,2011.
[4] 廖慧明.基于嵌入式Linux的图像采集与无线传输的研究[D].成都:西华大学,2007.
[5] 成洁,卢紫毅.Linux窗口程序设计——Qt精彩实例分析[M].北京:清华大学出版社,2008.
[6] 于艳萍,朱晓智,王中训.基于ARM9和USB摄像头的网络视频采集系统设计[J].现代电子技术.2011,34(24): 49-51,55.
关键词 麸星检测;ARM11;Linux;V4L2;机器视觉
中图分类号 S512.1 文献标识码 A 文章编号 0517-6611(2014)17-05686-03
Abstract [Objective] Wheat bran specks content of flour is one of important index for flour grade evaluation, in order to accurately detect the bran specks content, a kind of bran specks detection system based on ARM11 processor was introduced. [Method] In the system, machine vision and embedded Linux operating system were used, V4L2(Video for Linux 2) driven architecture was adopted to implement bran specks image acquisition, display and save in the Qt framework, finally the content of the bran specks was detected through digital image processing techniques. [Result] The collected bran specks image had high resolution, and the result of bran specks detection was precise. [Conclusion] The result indicates the system has high stability and precision, and detection efficiency has improved significantly.
Key words Bran specks detection; ARM11; Linux; V4L2; Machine vision
小麦面粉中麸星含量是评价面粉等级的一项重要指标,同时它也反映了小麦品种的优劣和面粉生产工艺水平的高低。目前,大多数科研机构和生产厂家都是采用面粉打板检测和人工识别的方法来检测麸星含量,不仅费时费力而且检测精度不高。近年来,数字图像处理技术应用日益广泛,用图像处理技术检测面粉麸星的研究也取得很大发展,然而在小麦粉生产质量评价领域这些检测装置大都没能达到成本低、效果好的发展要求[1-2]。
该研究中小麦面粉麸星检测系统采用ARM11和嵌入式Linux操作系统作为开发平台,不仅成本低、体积小、功耗低、可靠性高、扩展性强,而且通过应用程序设计实现智能化采集;利用系统无线功能实现网络化通信。同时,此系统采用的CMOS图像传感器灵敏度高、动态范围宽、分辨率高、功耗低、系统集成优良,因此采集到的图像清晰、质量高,为数字图像处理工作提供很大方便。
1 系统硬件架构
该研究中的面粉麸星检测系统以ARM11和Linux为开发平台,采用集成高品质CMOS图像传感器的USB摄像头和V4L2(Video for Linux 2)驱动架构,在Qt框架中应用V4L2编程接口提供的数据结构及函数库实现图像数据采集,运用Qt画图机制中的QPixmap类实现图像显示,并且保存图像。采集结果显示麸星图像清晰,给图像处理提供了很大方便,工作效率显著提高。
该系统架构如图1所示。硬件平台采用三星S3C6410处理器,其CPU内部集成了强大的多媒体处理单元,支持Mpeg4、H.264/H.263等格式的視频文件硬件编解码,可同时输出至LCD和TV显示;另外,系统使用USB Host接口连接USB摄像头,基于Qt的图形界面编程,通过LCD显示,通过RS232接口和PC机通信实现图像传输以及使用其一线触摸功能对采集到的图像简单操作。该系统中USB摄像头采用高品质CMOS图像传感器,静态分辨率1280×960,高速USB2.0传输接口。此外,系统提供WiFi支持可以轻松实现图像数据无线传输,作为智能结点实现采集系统网络化。
2 系统软件设计
2.1 基于V4L2的图像采集方法
由于Linux2.6.38系统内核带有通用USB型摄像头驱动,无需加载USB摄像头驱动、配置系统内核,因此需要采集图像时可直接采用V4L2获取摄像头数据。V4L2是Linux内核中关于视频设备的内核驱动,它为Linux中视频设备访问提供了通用接口。首先,V4L2接口的使用具有结构化的方式,视频采集流程基本按照打开视频设备、设置采集参数、处理数据、关闭设备的模式进行[3],编程简单直观,便于理解。此外,V4L2接口只需通过ioctl()函数给驱动程序发送命令、传递不同的参数即可完成对设备的操作,简单方便。再者,由于使用直接读取设备文件方式,对于系统来说开销很大,因此采用内存映射(mmap)方式,在内核空间开辟内存,再把该内存区间映射到用户程序空间,实现用户对数据的直接操作,执行速度大大提高。
综上所述,依据V4L2接口的结构化模式,视频采集流程[4]如图2所示。
统能有效地进行图像采集且采集效果很好;麸星识别图像中红色区域
代表检测出的麸星。经过两幅图像对比可以看到,系统有效识别出麸星,通过计算麸星区域面积占比便可得知此粉板中的面粉麸星含量,约为8.79%。
5 结论
该研究中介绍的微型智能化面粉麸星检测系统充分利用了嵌入式Linux系统的优势,其中使用高版本应用系统中的V4L2驱动架构和无驱动USB摄像头,省略了繁琐的USB驱动移植和系统内核配置,模块化的编程接口大大降低了开发难度,缩短了开发周期,并且系统的网络化支持可以轻松实现与PC通信。另外,此系统软件部分稍加改动即可用于其他机器视觉系统,扩展性强。
参考文献
[1]霍权恭,杨红卫,周展明,等.小麦粉粉色与麸星检测方法研究[J].中国粮油学报,2006,21(3):27-31.
[2] 乔常明.基于图像处理技术的面粉麸星检测技术研究与实现[D].哈尔滨:黑龙江大学,2010.
[3] 李涛.基于ARM的视频采集系统研究[D].秦皇岛:燕山大学,2011.
[4] 廖慧明.基于嵌入式Linux的图像采集与无线传输的研究[D].成都:西华大学,2007.
[5] 成洁,卢紫毅.Linux窗口程序设计——Qt精彩实例分析[M].北京:清华大学出版社,2008.
[6] 于艳萍,朱晓智,王中训.基于ARM9和USB摄像头的网络视频采集系统设计[J].现代电子技术.2011,34(24): 49-51,55.