基于嵌入式Linux图像采集恢复和应用

出处:微计算机信息 发布于:2009-07-21 16:56:24

  摘要:本文首先介绍针对S3C2410芯片和Linux操作系统平台扩展的USB图像采集模块的软硬件和RGB图像数据流的采集;然后在嵌入式Linux平台上实现RGB流转换成BMP格式的图片;通过网络把图片传送到远程终端上运用Matlab7.1进行处理,实现对加工零件远程检测。

  1.引言

  随着后PC时代的到来和嵌入式的蓬勃发展,运用嵌入式系统实现远程数据采集已成为社会需求的趋势。本文采用嵌入式系统采集图像数据实现加工零件的远程测量,代替传统的人工检测。其特点有:网络化,准确性高,节约人力和物力。

  2.系统软硬件平台

  由于嵌入式设备资源有限,所以在开发嵌入式系统的软件部分需要在宿主机平台上实现,运用宿主机的资源编译目标机平台上可运行的软件。本文系统的宿主机平台:Redhat 9.0,交叉编译环境:ARM-Linux-Gcc;目标机平台:UBOOT 1.1,Linux 2.4.18 和YAFFS 根文件系统。

  系统硬件平台的处理器采用 Samsung 公司的集成有ARM920T 内核的处理器S3C2410,该处理器资源丰富,具有16KB 的指令Cache 和16KB 数据Cache、MMU 虚拟存储器管理器、LCD 控制器、支持NAND Flash 系统引导,RAM 控制器、3 通道UART、4 通道DMA、4通道带PWM 定时器、RTC、并行I/O 口、8 通道10 位ADC、触摸屏接口、IIC 接口、IIS接口、2 个USB 接口控制器、2 通道SPI 及内部PLL 时钟倍频器,主频可达203MHz。此外,在处理器丰富资源的基础上还进行了相关的配置和扩展,配置了64MB 的Flash 和64MB 的SDRAM,并引出了两个HOST USB 接口。在USB 接口上外接带USB 口的摄像头Webeye V 2000。嵌入式Linux 操作系统上建立图像采集和图像恢复两个软件模块。开发板拥有CS8900A-CQ3 芯片,具有10~100M 自适应的网络通信能力。通过它实现图像数据的远程传输。整个系统的硬件概图如图1 所示:

  图1 系统硬件结构图

  3.RGB数据流的采集

  Webeye V 2000摄像头内部拥有ov7620、ov511和一个存储芯片。由于Linux操作系统中嵌有ov511芯片的驱动,故在编译Linux操作系统时需要加载ov511驱动,主要步骤:

  ①(*)选择Multimedia device->下的Video for linux。加载video4linux模块,提供了编程接口;

  ②在usb support->目录下(*)选择support for usb和usb camera ov511 support。加入了对采用ov511接口芯片的USB数字摄像头的驱动支持。

  在嵌入式Linux操作系统平台上驱动摄像头,通过Video4Linux接口控制摄像头参数、图片的格式和窗口大小等等。Video4Linux是Linux中关于视频设备的内核驱动,它为针对视频设备的应用程序编程提供一系列接口函数。USB口摄像头驱动程序中需要提供基本的I/O操作接口函数open、read、write、close的实现。对中断的处理实现,内存映射功能以及对I/O通道的控制接口函数ioctl的实现等,并把它们定义在struct file_operations中。本系统采用内存映射法,即mmap()方式截取图像或视频数据。mmap()函数调用使得进程之间通过映射同一个普通文件实现共享内存。该映射内容区可读可写并且不同进程间可共享,不需要任何数据的拷贝。


  函数,它在用户程序中用来控制I/O通道,其中,fd代表设备文件描述符,cmd代表用户程序对设备的控制命令,省略号一般表示类型长度的参数, 也可没有。

  4. 图像的恢复

  上一节已经介绍了系统采集RGB图像数据流。为了满足用户观看采集的图像数据和相应测试,故需要将RGB流转换成在Linux系统和Windows系统下都可以浏览的BMP格式的图片。BMP格式的图片分为文件描述区和图像存储区两部分。头文件信息中又包含了信息区和调色板区两部分,信息区又可以细分为文件信息区和图像信息区两部分。恢复BMP图片的关键是首先手动生成BMP文件的头文件,然后将采集到的RGB数据流填充到BMP文件的数据区。拍摄的物体为加工好的环行零件,检验其加工是否合格,中心点位置等等。以下将介绍BMP文件的数据结构和头文件,图片恢复如图2所示:

  5. 图像的传输和处理

  系统采用网络(FTP)方式读取BMP 文件。远程终端建立FTP 服务器,实现系统和FTP 服务器的连接建立,将BMP 文件放置到服务器上,具体命令:FTP open 服务器的IP 地址Put 命令将bmp 文件放到FTP 服务器上终端可以通过网络获得FTP 服务器上的BMP 文件,终端上安装Matlab7.1 应用程序,运用Matlab7.1 做图像处理,从而得到对加工零件的中值滤波,边缘检测,二值化和中心点的坐标,查看零件合格。具体命令和结果如下:

  下面是中心点坐标的提取命令:


  6.结束语

  本文基于嵌入式平台的实现了图像采集软硬件,RGB 图像数据流向BMP 文件的转换和图像的处理(中值滤波,边缘检测,二值化和中心点的坐标)。实验结果证明:网络化检测加工零件准确性高,节约人力和物力。为今后完成机械手定位打下一定基础。

  本文作者创新点: 嵌入式Linux平台集成图像采集软硬件,RGB流和BMP转换,远程终端处理零件图像,实现远程检测系统具有微型化,图形化,方便和经济等特点。


  

参考文献:

[1]. ARM920T  datasheet https://www.dzsc.com/datasheet/ARM920T+_139814.html.
[2]. CS8900A-CQ3  datasheet https://www.dzsc.com/datasheet/CS8900A-CQ3+_593569.html.
[3]. 100M  datasheet https://www.dzsc.com/datasheet/100M+_2509927.html.
[4]. ov7620 datasheet https://www.dzsc.com/datasheet/ov7620_525855.html.


关键词:基于嵌入式Linux图像采集恢复和应用CS8900A-CQ3OV7620S3C2410ARM920T嵌入式Linux图像采集

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

广告
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站技术支持

13606545031

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!