基于ARM的图像采集处理系统设计
- 格式:doc
- 大小:597.50 KB
- 文档页数:27
基于ARM Cortex-A53的图像处理系统研究摘要:随着科技的不断进步,数字图像处理的应用已经普及到千家万户,使人们的生活变得越来越便捷。
早期实现的图像处理系统均是基于桌面PC机,而其图像处理系统存在较多约束,主要依赖于软件操作,且便携性较差。
本文采用基于Cortex-A53架构的S5P6818处理器以及Linux实时操作系统,构建实时图像处理系统,该系统能够进行实时图像采集、图像处理以及运动目标检测与跟踪等功能,同时可以实现联网,易于携带。
论文在图像处理系统及图像处理算法方面的研究工作如下:(1)根据系统功能以及开发成本的需求,对各硬件模块选型。
系统以X6818bv3开发板为核心连接外围硬件模块,构建系统硬件平台。
(2)图像处理系统移植了uboot、Linux操作系统、根文件系统以及视频服务器等软件,建立了系统运行软件平台,保证系统应用程序的正常执行,实现图像采集和图像处理的功能。
(3)图像处理系统的应用程序可分为图像采集和图像处理两部分。
在Qt Creator 集成开发环境中编写图形界面程序,实现视频图像显示、jpeg图像保存、图像增强以及边缘检测等功能,并且增添了远程监控功能。
(4)本文针对传统的ViBe算法在前景检测过程中存在光照变化敏感以及检测率较低等问题,提出了基于ViBe算法的改进算法,并选取样本进行对比,算法在视频图像运动目标的检测过程中能够有效解决检测率低的问题,且对不同的光照强度具有较好的抑制性。
图像处理系统包括软硬件平台的搭建以及应用程序的设计。
论文的研究内容为基于ARM图像处理系统平台的搭建及其应用奠定了坚实的理论和技术基础。
图41幅,表1个,参考文献64篇。
关键词:数字图像处理;Cortex-A53;Linux;Qt中图分类号:TP391Research on Image Processing SystemBased on ARM Cortex-A53Abstract:With the constant progress of science and technology, the application of digital image processing has been widely used in thousands of households, making people's life more and more convenient. The early implementation of image processing system is based on desktop PC, but there are many constraints in PC-based processing system, which mainly depend on software operation, and the portability is poor.This paper uses S5P6818 processor based on Cortex-A53 architecture and Linux real-time operating system to construct a real-time image processing system. The system can perform real-time image acquisition, image processing, moving object detection and tracking, and so on. At the same time, network processing can be realized and it is easy to carry. The research work on image processing system and image processing algorithm is as follows:(1)According to the requirement of system function and development cost, each hardware module is selected. The system takes the X6818bv3 development board as the core to connect the peripheral hardware module, and constructs the system hardware platform.(2)The image processing system transplants software such as uboot, Linux operating system, root file system and video server, and establishes a system running software platform to ensure the normal execution of the system application and realize the functions of image acquisition and image processing.(3)The application program of image processing system is divided into two parts: image acquisition and image processing. The graphic interface program is written in Qt Creator integrated development environment to realize video image display, image saving in jpeg format, image enhancement and edge detection, etc. and the remote monitoring function is added.(4)Aiming at the problems of traditional ViBe algorithm in foreground detection, such as sensitivity to illumination change and low detection rate, an improved algorithm based on ViBe algorithm is proposed in this paper, and samples are selected for comparison. The algorithm can effectively solve the problem of low detection rate in the process of moving object detection in video images. The algorithm has high real-time performance and has better inhibition to different illumination intensity.The image processing system includes the construction of software and hardware platform and the design of application program. The research content of this paper lays a solid theoretical and technical foundation for the establishment and application of ARM-based image processing system platform. There are 41 graphs, 1 table and 64 references.Meng-long Huang (Electrical Engineering)Directed by Yun-hong Li Key words: Digital image processing, Cortex-A53, Linux, QtClassification: TP391目次1绪论 (1)1.1研究背景及意义 (1)1.2国内外研究现状及发展趋势 (1)1.3论文章节结构 (3)2系统总体设计 (5)2.1系统功能分析 (5)2.2系统整体开发流程 (5)2.3系统硬件选型 (6)2.4系统软件选型 (7)2.4.1嵌入式操作系统的选择 (7)2.4.2引导加载程序的选择 (8)2.5本章小结 (8)3系统硬件平台搭建 (9)3.1 X6818bv3开发板简介 (9)3.2 X6818bv3开发板硬件资源 (10)3.3系统外围电路 (11)3.3.1电源管理模块 (11)3.3.2串口电路 (11)3.3.3 SD卡模块 (11)3.3.4 USB接口电路 (12)3.3.5 LCD液晶屏与触摸屏接口 (13)3.4摄像头选型 (13)3.5本章小结 (14)4运动目标的检测与跟踪 (15)4.1预处理 (15)4.2运动检测 (15)4.2.1 ViBe背景建模方法 (15)4.2.2 ViBe算法的改进 (17)4.2.3前景检测后处理 (18)4.3运动目标跟踪 (19)4.4运动动态模型 (19)4.5卡尔曼滤波跟踪 (20)4.6本章小结 (22)5系统软件平台搭建与应用程序设计 (23)5.1系统软件平台搭建流程 (23)5.2 tftp及ckermit安装配置 (23)5.3构建交叉编译环境 (24)5.4 uboot移植 (25)5.5 Linux内核配置与移植 (26)5.6根文件系统制作与nfs服务器搭建 (27)5.7 Qt的安装与移植 (29)5.7.1宿主机Qt的安装 (29)5.7.2 ARM版本Qt的编译与移植 (29)5.8 OpenCV函数库移植 (31)5.9 mjpg-streamer视频服务器移植 (32)5.9.1 mjpg-streamer简介 (32)5.9.2视频服务器与客户端的通信 (33)5.9.3 mjpg-streamer移植 (34)5.10系统应用程序设计 (35)5.10.1应用程序总体框架设计 (35)5.10.2主窗口设计 (35)5.10.3 Qt多线程编程 (37)5.10.4视频图像显示 (39)5.10.5视频图像的保存 (41)5.11图像处理的实现 (42)5.11.1图像灰度化 (43)5.11.2图像二值化处理 (43)5.11.3图像平滑 (43)5.11.4图像增强 (44)5.11.5图像的边缘检测 (45)5.12宿主机应用程序测试 (46)5.13本章小结 (47)6系统测试 (49)6.1系统自启动 (49)6.2视频图像采集测试 (50)6.3图像处理算法测试 (50)6.4本章小结 (52)7总结与展望 (53)7.1总结 (53)7.2展望 (53)参考文献 (55)作者攻读学位期间发表学术论文清单 (59)致谢 (61)1 绪论1绪论1.1研究背景及意义数字图像处理技术经历了百年的发展,其理论和方法已经形成了完整的体系,数字图像处理系统包括图像信号的采集、数字图像处理、图像压缩等部分,并且在科学研究及社会生活等众多领域得到了越来越广泛的应用[1],因此对数字图像处理系统的研究有着重要的现实意义以及很高的应用价值。
学校代号***** 学号********** 分类号TP18 密级公开硕士学位论文基于ARM9的图像采集系统的研究学位申请人姓名刘白皓培养单位长沙理工大学导师姓名及职称黄敏副教授学科专业通信与信息系统研究方向嵌入式系统论文提交日期2011年3月学校代号:10536学号:0810801515密级:公开长沙理工大学硕士学位论文基于ARM9的图像采集系统的研究学位申请人姓名刘白皓导师姓名及职称黄敏副教授培养单位长沙理工大学专业名称通信与信息系统论文提交日期2011年3月论文答辩日期2011年5月答辩委员会主席车生兵教授The Design of Image Acquisition System Based on ARM9ByLIU BaihaoB.E.( Anhui University of Architecture) 2008A thesis submitted in partial satisfaction of theRequirements for the degree ofMaster of EngineeringinCommunication and Information SysteminChangsha University of Science & TechnologySupervisorProfessor Huang MinMarch, 2011长沙理工大学学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
基于嵌入式系统的图像跟踪技术的设计与实现的开题报告一、选题的背景和意义随着计算机技术的快速发展和数字图像处理技术的不断成熟,图像跟踪技术逐渐被广泛应用于各个领域,如智能视频监控、自动驾驶、机器人视觉等。
图像跟踪技术的目的是在给定的图像序列中,找到感兴趣目标的位置,并跟随目标实现对其的实时跟踪。
目前,图像跟踪技术已经成为了机器视觉和计算机视觉领域中的热门研究课题。
本课题旨在基于嵌入式系统设计并实现一种高效的图像跟踪技术。
我们将基于ARM Cortex-M系列单片机和OpenCV等开源软件平台,采用目标检测和运动估计等算法,完成图像跟踪系统的设计和实现。
该系统将具有实时性强、性能卓越、可靠稳定等特点,在智能监控、自动驾驶及其他领域中有广泛的应用前景。
二、研究的内容和方案本研究主要内容为设计一种高效的嵌入式图像跟踪系统,方案如下:1. 系统硬件选型本系统将采用ARM Cortex-M系列单片机作为核心控制器,通过集成的DSP和片上存储器来提高计算效率和系统响应速度。
同时,还需要选用高像素、高速度的图像传感器和低功耗的图像处理器,以保证系统的实时性和能耗效率。
2. 图像信号采集与处理本系统将采用图像传感器采集输入图像,经过硬件预处理后输入后端算法进行处理。
首先需要进行图像预处理,如去噪、增强、滤波等操作,以提高图像质量和减少干扰。
随后将采用目标检测算法和运动估计算法,对目标区域进行提取和分析,并实时跟踪目标的位置和运动轨迹。
3. 系统算法设计与优化本系统将采用基于OpenCV等开源软件平台的目标检测和运动估计算法,并对算法进行优化和改进,以提高算法的准确性和计算效率。
具体而言,我们将采用Haar特征分类器、卡尔曼滤波器、神经网络等算法,来对目标进行检测、跟踪和预测。
4. 系统结构设计本系统将采用分布式结构,将前端图像预处理模块、中间算法处理模块和后端图像显示和控制模块分别实现,并通过串行或并行的方式进行通信和数据交换。
基于STM32的图像动态采集系统摘要随着科技水平的提高,ARM的应用越来越广泛。
本论文旨在对ARM的深入学习,论文对 STM32驱动OV7670图像传感器、以及图像在SSD1289驱动控制芯片的显示、以及图片在SD卡上以文件形式的存储和读取进行了初步的探索和研究。
设计过程中多亏了前辈们的刻苦、钻研留下了宝贵的资料。
对OV7670的驱动程序的开发,主要是引脚的学习和寄存器的配置,对SD卡图片存储的开发采用的是文件的方式存储,简单地说,就是存储的到SD卡上图片能在电脑上直接打开。
期间牵扯到移植文件系统FATFS到STM32上,以前没有这方面的开发经验,主要参考前人的经验。
SSD1289驱动程序主要也是一些引脚和寄存器的配置。
开发过程中牵扯到STM32的中断向量表的配置等很多基础知识,在图片存储过程中则牵扯到很多存储格式的问题,使问题变得复杂化,最后通过查阅相关资料都一一解决。
经过对STM32开发板和OV7670等芯片的学习,最后实现了图像的动态显示、图片的实时采集、存储和读取。
设计过程中碰到了很多问题、一些与课题相关的问题基本都解决了,还有些不属于本论文研究范围的,比如图片的优化显示、清晰度,虽然可以通过驱动程序让清晰度更高,但更多的与芯片本身性能有关,没去做深入的探索和研究。
关键词:STM32,OV7670,SD卡,SSD1289,驱动Based on the dynamic STM32 image acquisition systemABSTRACTWith the improvement of science and technology level, ARM used more widely. This paper aims to further study of the ARM, paper STM32 drive to OV7670 image sensor, and image in the SSD1289 drive control chip of the display, and images on the SD card to file form of storage and read a preliminary exploration and research.The design process of thanks to predecessor, studied hard left invaluable material. To OV7670 driver development, mainly is the pin learning and register configuration, SD card to the development of the storage of the picture is the way file storage, say simply, it is stored to SD card pictures can open direct on the computer. Involved in transplantation during the file system FATFS to STM32, before the development experience, main reference previous experience. SSD1289 driver is primarily some pin and registers configuration. The development process STM32 involved in the interruption of the configuration and many to scale basic knowledge, in the photo storage process is involved in a lot of storage formats, become more complicated, and finally by consulting relevant material all 11 to solve.After the STM32 development board and OV7670 etc chip learning, and finally realize image, the dynamic display of the picture of the real-time data acquisition, storage and read. In the process of design met with many problems, some of the problems and issues related to the basic are solved, and some do not belong to this research scope of, such as pictures of the optimization of the display, definition, although can through the driver let more clear, but more about performance and chip itself, not to do in-depth exploration and research.Key words: STM32, OV7670, SD card, SSD1289, drive目录前言 0第1章STM32处理器概述 (2)STM32简介 (2)Cortex-M3内核简介 (2)STM32开发板资源介绍 (12)STM32中断 (12)第2章×××××× (13)×××××× (13)×××××× (13)×××××× (13)×××××× (14)×××××× (14)第3章×××××× (15)×××××× (15)×××××× (15)×××××× (15)×××××× (15)第4章×××××× (16)×××××× (16)×××××× (16)×××××× (16)×××××× (16)第5章×××××× (17)×××××× (17)×××××× (17)×××××× (17)×××××× (17)×××××× (17)×××××× (17)结论 (18)谢辞 (19)参考文献 (20)附录 (22)外文资料翻译 (23)前言随着社会智能化程度的提高,特别是近年来物联网的发展,图像动态采集越来越多地应用到社会的各个领域。
-42-20078产品设计与实现一、前言二、数字视频监控系统的组成三、视频服务器的硬件实现监控系统作为现代企业不可缺少的重要组成部分,已广泛应用于交通、医院、银行、家居、视频会议和视频点播、证券、远程教育等诸多领域,可以有效地避免安全隐患的发生,保障员工人身安全和企业资产不受损失,实现无人值守。
早期的模拟监控系统不能联网,只能与监控中心进行点对点通信,随着图像与视频处理技术、网络技术和自动控制技术的发展,视频监控系统已过渡到数字化的网络监控。
它以数字视频的压缩、传输、存储和播放为核心,采用先进的数字图像压缩编/解码技术和传输技术,将智能图像处理与识别技术用于图像显示、调整、跟踪,根据现场环境智能调节摄像机的位置及清晰度,对物体进行跟踪识别,对图像进行分析和处理。
数字视频监控系统主要由监控中心、通信链路和多个监控站点组成。
通讯链路在企业内部使用企业已经铺设好的局域网线路,将其连人企业内部网,然后可以将其接人Internet,以便将信号传输给远端分控计算机或授权用户。
传输的数据包括视频、报警等录像数据和控制信号。
监控中心具有电视墙、磁盘阵列、服务器、交换机和路由器等网络设备,还可以通过多级级联构成多级监控系统。
监控站点主要由视频服务器和摄像机组成,整个系统组网灵活;可以突破地域限制,进行大规模、远距离的实时图像监控和报警处理。
如图1所示。
监控系统的软件包括客户端、服务器端软件两部分以及相互之间的通信。
在实际工作中,根据实际情况,在需要的地方安装相应的前端监控设备(彩色或黑白摄像机、固定或活动云台、定焦或变焦和相应的软件系统。
图I中的每个监控站点主要由摄像头、云台控制器、网络视频服务器组成,可配置可变镜头、麦克风、扬声器等外设,如图2所示。
其中网络视频服务器以嵌人式微处理器为核心,由视频采集编码模块、网络功能模块、实时时钟模块、摄像头云台控制模块等组成。
嵌人式微处理器是硬件部分的核心 , 采用 SAMSUNG的微处理器S3C4510B。
(二 〇 一 二 年 六 月本科毕业设计说明书 学校代码: 10128 学 号:题 目:基于单片机的图像处理采集系统设计与实现 学生姓名: 学 院: 系 别: 专 业: 班 级: 指导教师:摘要传统的工业级图像处理采集系统大多是由CCD摄像头、图像采集卡和PC机组成,虽已得到了广泛的应用,但是它具有结构复杂,成本高,体积大,功耗大等缺点。
随着单片机的迅速发展,开发一种智能控制及智能处理功能的微型图像处理采集系统成为可能,并且也克服了传统图像处理采集系统的诸多缺点。
本设计提出了基于单片机的图像采集系统,该系统主要由四大模块组成:第一个是单片机控制模块,对摄像头进行控制;第二个是摄像头模块,即进行图像拍摄和取图;第三个是Zigbee无线传输模块,功能是将图像传送到上位机;最后是上位机,实现图像显示功能。
其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高,使用环境广泛及成本低等。
利用Proteus和Keil进行仿真调试,可以看到设计内容的运行结果,验证系统运的行正确及稳定性,并且实现了图像处理采集功能,所以具有一定的实用和参考价值。
关键词:单片机;Proteus;图像采集AbstractThe traditional industrial image processing collection system by CCD camera, mostly image collection card and PC unit into, although already a wide range of applications, but it has the structure is complex, high cost, big volume and shortcomings, such as big power consumption. With the rapid development of the single chip microcomputer, the development of a kind of intelligent control and intelligent processing function of micro image processing collection system possible, and also overcome traditional image processing collection system of many of the faults.This design is put forward based on SCM image acquisition system, the system consists of four modules: the first one is the single chip microcomputer control module, the camera to control; The second is a camera module, the image shoot and take diagram; The third is Zigbee wireless transmission module, the function is will images to PC; Finally the PC, realize image display function. Its advantage is hardware circuit is simple, software perfect function, control system and reliable, high cost performance, use extensive and environment cost low status. Use Proteus and Keil simulation commissioning, can see the operation of the design content, as demonstrated the correct and do the system stability, and realize the image processing collection function, so has certain practical and reference value.Keywords:Single-Chip Microcomputer;Proteus; Image Capture目录第一章绪论 (1)1.1 课题研究现状 (1)1.2 课题研究目的意义 (1)1.3 本课题研究的主要内容 (1)第二章硬件设计 (2)2.1 系统设计方案 (2)2.2 硬件简介 (2)2.2.1 80C51简介 (2)2.2.2 I/O端口 (4)2.2.3 控制引脚 (5)2.3 摄像头 (6)2.3.1 波特率 (6)2.3.2 数据包 (6)2.3.3 摄像头控制指令 (6)2.4 Zigbee无线传输模块 (9)2.4.1 Zigbee简介 (9)2.4.2 Zigbee技术应用领域 (10)2.4.3 Zigbee 技术特点 (10)第三章软件设计及调试 (12)3.1 Keil调试 (12)3.1.1 Keil简介 (12)3.1.2 Keil调试过程 (12)3.2 程序设计 (19)3.3 电路图设计 (20)3.3.1 Proteus简介 (20)3.3.2 电路图设计过程 (23)3.4 Keil与Proteus联机调试 (27)结论 (30)参考文献 (31)附录 (32)程序清单 (32)谢辞 (34)第一章绪论1.1 课题研究现状随着现代电子信息技术的迅速发展,使得信息处理技术越来越重要,而图像处理采集技术在信息处理技术当中有着异常重要的位置。
基于ARM和Linux的网络视频采集传输方案的设计和实现刘宇;车进【摘要】针对现有的视频采集设备占用较多空间,而且需要使用专用资源的情况,设计了一个基于嵌入式的网络视频采集传输方案.该方案采用ARM11为核心处理器,嵌入式Linux为软件平台,搭建嵌入式平台.将视频服务器MJPG-streamer移植到该嵌入式平台,实现图像的采集、压缩和传输,使用者可在Web浏览器中观察到远端的实时视频画面.实验结果表明,该方法能够很好地采集、处理和发送视频,实现远程观察实时的视频画面,且设备占用空间较小.【期刊名称】《宁夏工程技术》【年(卷),期】2014(013)001【总页数】4页(P30-32,36)【关键词】嵌入式系统;Linux;MJPG-streamer;视频图像采集【作者】刘宇;车进【作者单位】宁夏大学物理电气信息学院,宁夏银川 750021;宁夏大学物理电气信息学院,宁夏银川 750021【正文语种】中文【中图分类】TN919.8;TP368.1在日常生活中,视频采集的应用场合很多,诸如门禁、安防、远程视频会议等.现有的视频采集设备,模块较多,在使用中要占用很多空间.因此,本文提出了一种基于B/S结构的嵌入式Linux的网络视频采集传输方案,该方案取代了以前占用空间较多的视频采集设备,而将图像采集、图像的压缩和编码以及网络传输集成到一个体积小、占用资源少的嵌入式系统中,通过远端的浏览器观察视频画面.1 总体设计本方案采用飞凌嵌入式公司出品的ARM11开发板TE6410作为硬件平台,Linux 操作系统作为软件平台,通过USB摄像头采集图像,然后利用MJPG-streamer 视频流服务器及其相关插件获取、处理图像[1],并通过网络发送到用户平台,用户可以通过浏览器查看视频.方案整体结构见图1.图1 方案整体结构图2 方案硬件设计本方案主要采用ARM11开发板TE6410、USB摄像头和一台计算机.TE6410开发板搭载了三星公司出品的s3c6410核心板,主频高达533MHz,配有256 MB的DDR内存和4GB的NAND FLASH.TE6410开发板有3个串口,一个LCD扩展口,一个100 M网口.它标配的USB Host插口和USB Slave插口均为2.0标准,采用8位拨码开关选择不同的启动方式.外部扩展端口包括一个SD卡槽,一个Wi-Fi扩展接口,以及摄像头接口和J-TAG接口等.USB摄像头采用罗技公司的C270网络摄像头.采用一台运行Ubuntu12.10操作系统的计算机作为用户平台.方案硬件结构见图2.图2 方案硬件结构图3 方案软件设计本方案软件设计主要包括U-Boot,Linux内核,rootfs.yaffs2,MJPG-streamer 软件的修改和移植[2].方案软件框图见图3.U-Boot是在操作系统运行之前运行的一段小程序,用来完成硬件设备的初始化,从而将系统软硬件环境带到合适状态,为最终调用操作系统做好准备.编译好的U-Boot可以在TE6410开发板附带的光盘里找到.Linux内核采用3.0.1版本,该版本的内核包含USB摄像头的驱动和V4L2驱动框架[3].当内核烧写到开发板中,插上USB摄像头便自动识别.本方案采用rootfs.yaffs2作为TE6410的文件系统.rootfs.yaffs2是一个专门为NAND FLASH存储器设计的嵌入式文件系统,适用于大容量的存储设备,而且它是开源软件,所以采用rootfs.yaffs2作为文件系统[4].MJPG-streamer是一个开源项目,通过支持Linux-UVC的网络摄像头采集JPEG 图像,并且将采集到的图像流式传输成为M-JPEG视频流,通过网络传输给浏览器.它是一个可移植的Linux-UVC流媒体应用.之前,国外的嵌入式爱好者将MJPG-streamer项目移植到了Mini2440平台,并设立了一个名为mjpg-streamer-mini2440的开源项目.基于TE6410开发板,笔者在mjpg-streamer-mini2440开源项目的基础上进行拓展,使之能够移植到TE6410开发板上正常使用.图3 方案软件框图3.1 交叉开发环境的搭建TE6410开发板采用U-Boot作为引导程序、嵌入式Linux系统镜像(版本号为3.0.1)和rootfs.yaffs2文件系统.将这3个文件从开发板附带的光盘里复制到SD 卡中,SD卡插入开发板的SD卡槽,开发板设置为SD卡启动模式,启动开发板一键安装嵌入式Linux系统.交叉开发环境需要Linux桌面系统,选用Ubuntu12.10.首先在计算机安装VMware8.0虚拟机,在虚拟机中安装Ubuntu12.10;再在Uubuntu12.10中安装交叉编译工具链Arm-Linux-Gcc-4.3.2;之后使用VMware8.0自带的VMware-Tools实现虚拟机和主机的文件共享;最后将虚拟机设置为桥接方式使之能够上网,并将虚拟机和开发板设为同一网段后使用ping命令将虚拟机和开发板连通.3.2 MJPG-streamer移植过程将MJPG-streamer视频流服务器移植到TE6410开发板上运行,从而实现图像采集和网络传输,具体移植过程如下:(1)下载mjpg-streamer-mini2440项目源代码:mjpg-streamer-mini2440-read only,并放在ubuntu的一个文件夹中(比如/mnt/webcamera文件夹). (2)进入 webcamera文件夹中,用 VI编辑start_uvc_yuv.sh 的内容[5]:执行以下命令进行编译链接并打包[6]:在当前目录下会生成mjpg-streamermini2440-bin.tar.gz.经过以上步骤,已将参数配置成适合TE6410开发板和USB摄像头的环境,将它复制到SD卡中.(4)在TE6410开发板上安装MJPG-streamer.将SD卡插入开发板的SD卡槽里,在开发板的终端输入以下命令安装MJPG-streamer:3.3 M-JPEG压缩算法研究与实现M-JPEG视频编码格式,把运动的视频序列当作连续的静止图像来处理,该压缩方式单独完整地压缩每一帧,在编辑的过程中可随机存储每一帧,可进行精确到帧的编辑.其主要特点是基本不考虑视频流中不同帧之间的变化,只单独对某一帧进行压缩.M-JPEG单帧压缩算法为JPEG算法,即把一幅图像分成8×8的方阵之后进行离散余弦变换(DCT).离散余弦变换是将光强数据转换成频率数据,从而得知强度变化情况.因为人类视觉系统对图像的低频成分比对高频成分有更高的敏感度,因此如果对图像的高频成分进行量化,再还原成光强数据,尽管与原图像有些差异,但人眼难以分辨[7].JPEG压缩是有损压缩,损失的部分是人类视觉不容易觉察到的高频成分,节省大量需要处理的数据信息.以下就是JPEG所使用的二维DCT公式式中:f(i,j)为像素值,F(u,v)为变换系数,u,v为系数下标.在压缩时,将原始图像分成很多个8×8像素的图像数据块.之后,通过零均值化,将每个字节的值从0~255转为-128~+127,并以此作为离散余弦正变换FDCT(Forward DCT)的输入.FDCT将每个数据块的值换为64个DCT系数,第1个系数称为直流系数,而其余63个系数则称为交流系数.在解压缩时,经逆向IDCT(Inverse DCT)将64个DCT系数还原为8×8像素的数据块,然后组成完整图像[8].4 方案测试USB摄像头插入开发板的USB Host端口,开发板上电.首先,在超级终端下进入TE6410开发板,使用ping命令将虚拟机和开发板连通.之后,启动开发板上的服务器端.此时,MJPG-streamer启动,并且其输入组件通过USB摄像头采集JPEG 格式的图像,保存到内存中;网络服务器输出组件能够从内存中获取JPEG格式的图像,并将图像流式传输成为M-JPEG视频流,通过网络服务器发送给计算机.在虚拟机的Web浏览器中输入开发板IP地址发出访问请求,服务器收到访问请求后与客户端建立连接并将视频数据发送到客户端监听端口,用户可以在虚拟机的Web浏览器中观察到实时的视频画面.测试在Ubuntu12.10操作系统下完成,采集原始图像的格式为YUYV,分辨率为640×480,转换成JPEG格式图片的压缩率为0.8∶1.在此测试环境中,视频画面清晰、流畅,实时性好.本方案的测试对照结果见图4,图4a是开发板的液晶屏上显示的YUYV格式图像,图4b是用户平台的Web浏览器中显示的JPEG格式图像.图4 方案的测试对照结果5 结语本方案使用支持Linux-UVC的USB摄像头采集图像,采用飞凌公司出品的ARM11开发板TE6410和嵌入式Linux操作系统处理图像,通过移植MJPG-streamer视频流服务器,实现基于网络的视频采集传输.本方案是一种结构紧凑、占用空间很小的网络视频采集传输方案,不仅USB摄像头非常容易获得,而且充分利用现有的网络资源,不必使用额外的设备或资源.本嵌入式视频采集传输方案将在视频会议、交通监控等方面有很好的应用前景.参考文献:【相关文献】[1]杨宏,张志文.基于Web的嵌入式远程监控系统的研究与实现[J].计算机与数字工程,2012(10):70-72.[2]冯兴乐,王建建,张哲,等.基于嵌入式Linux的无线图像传输在车联网的应用[J].电视技术,2012(21):156-159.[3]于艳萍,朱晓智,王中训.基于ARM9和USB摄像头的网络视频采集系统设计[J].现代电子技术,2011(24):49-51.[4]陈毅辉,王存堂,钱帅杰,等.模糊智能控制在卷绕系统中的应用[J].机械设计与制造,2006(7):146-148.[5]庄严,王骁,汤建敏.嵌入式C/C++系统工程师实训教程[M].北京:清华大学出版社,2011.[6]韦东山.嵌入式Linux应用开发完全手册[M].北京:人民邮电出版社,2009.[7]祝宁,叶念渝.JPEG图像文件格式的分析及应用[J].电脑与信息技术,1999(3):21-24.[8]许刚,廖斌,李承毅.JPEG图像文件格式分析[J].计算机系统应用,1998(10):37-39.。
基于ARM11的视频采集与编码系统的设计摘要:基于嵌入式技术的无线视频监控以其灵活性、高集成性、便捷性等诸多优点必将取代传统的有线视频监控。
针对目前视频监控的实际需求,结合嵌入式技术、图像处理技术,设计并实现了一种可靠性高、成本低的嵌入式视频采集及编码系统。
它是视频监控的前端,是无线视频监控系统的一个子系统。
系统选用S3C6410微处理器作为核心板的控制器,采用USB接口的摄像头进行采集,利用S3C6410的硬件编解码模块进行H.264编码。
根据系统的功能要求,开发了zc301摄像头和MFC的设备驱动程序,并采用内存映射方式和双缓冲思想编写了基于V4L的视频采集程序。
探讨了H.264的编码特性和码流结构,利用MFC驱动中的API函数,开发了基于H.264算法的视频编码程序。
测试表明,设计的系统视频采集效率高、图像连续性好、运行稳定。
关键词:嵌入式系统;ARM11;S3C6410;视频采集;视频编码;H.264ABSTRACT:In the future, Wireless video monitoring system based on embedded technology, with many advantages such as flexibility, integration, convenience and so on, will replace existing wired video monitoring system inevitably. Aiming at actual demand of present video monitoring, this paper designs and realizes a reliable and cheap embedded video capturing and compression system, with the combination of embedded technology and image processing technology. This system is the front end of video monitoring and a subsystem of wireless video monitoring system. This system chooses S3C6410 as the kernel board's controller uses the camera with USB interface to capture pictures and encodes the video data using the codec of S3C6410. According to functional requirements of the system, device drivers of MFC and zc301 camera are developed, and video capturing application based on V4L using Memory Mapping and the idea of the double buffer are also developed. After a brief study on the feature and stream structure of H.264, video encoding application based on H.264 with the MFC driver’s API is completed. The test shows that this system has a high efficiency to capture video data, has good continuity for pictures and can run stably.KEY WORD:Embedded system; ARM11; S3C6410; Video capturing; Video encoding; H.264引言视频具有表达客观事物直观、生动、形象,信息丰富等优点,它在各行各业的应用日益受到人们的关注。
基于ARM的图像采集处理系统设计摘要随着现代制造工业中微细加工技术的不断发展,对微细零件表面形貌测量的要求越来越高,具有较高横向及纵向分辨率的激光并行共焦显微系统可以突破光学衍射的极限要求,对物体表面进行无损检测及三维形貌重构。
为了进一步实现光学系统的便携化、智能化需求,具有体积小、成本低、专用性强等一系列独特优点的嵌入式系统,无疑有着极好的应用前景。
本文主要研制了一种基于ARM的便携式图像采集处理系统。
论文主要以硬件设计和软件设计两大部分完成对系统的论述:硬件设计中,通过分析实际图像采集需求后总结设计的主要性能指标,确定了采集系统的主要控制平台和图像传感芯片,给出了总体的硬件设计方案,并在此基础上完成了SCCB控制模块、图像数据捕获模块、串口调试模块等硬件接口模块的设计;软件设计中,完成了CMOS 的驱动程序、图像数据采集的驱动程序、Bayer图像数据转换算法等软件设计工作,最后论述了静态图像采集系统相关调试、实验工作,结果表明此嵌入式图像采集系统基本达到预期目标,证明了设计的合理性和正确性。
本系统一定程度上提高了低功耗微控制器图像采集的效率,将图像采集系统对硬件的依赖转化为设计人员的软件设计工作,相对于传统PC机+CCD的方案,不仅在体积、成本上具有明显优势,更体现出良好的柔性,便于今后的维护、优化。
关键词:ARM,LPC2478,图像采集,便携式第一章绪论1.1 嵌入式系统概述1.1.1 嵌入式系统嵌入式系统被IEEE(国际电气和电子工程师协会)定义为“是一种用来控制、监视或者辅助仪器、机械操作的装置”。
无论嵌入式计算机技术如何发展,都改变不了其“内含计算机”、“嵌入到对象体系中”、“满足对象智能化控制要求”的技术本质,因此可以将嵌入式系统定义为:“嵌入到对象体系中的专用计算机应用系统”。
嵌入式系统具有3个基本特点,即“计算机性”、“嵌入性”及“专用性”:●“计算机性”是目标系统智能化、自动化控制的根本保证,内含微处理器的现代电子系统,方才能实现目标系统的计算机智能化控制能力;●“嵌入性”则是专指起源于微型机、嵌入到目标对象系统进而实现对象体系智能控制的特性;●“专用性”是指为了贴合对象控制需求或特定环境要求下的软硬件的裁剪性。
嵌入式系统在很多产业中都得到了广泛的应用,包括消费电子、国防军事、工业控制等领域应用的越来越广泛,从军用的导弹系统到民用的消费电子、智能家电、汽车,嵌入式系统无处不在。
1.1.2 嵌入式处理器通用计算机处理器的系统拥有大量的应用编程资源、外设接口总线及先进的高速缓存逻辑,但也具有能源消耗大、产生热量高、成本尺寸大等不可回避的问题,因此诞生了为各种专用应用而设计的特殊目的处理器——嵌入式处理器,主要分为以下四类:●嵌入式微处理器:在应用中将微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的母板功能而换来系统体积和功耗的大幅减小,在功能上保留和标准微处理器一致的同时更在工作温度、抗电磁干扰、可靠性等方面得到增强。
●嵌入式微控制器:即单片机,就是将整个计算机系统集成到一块芯片中,一般以某一微处理器内核为核心,芯片内部集成ROM、RAM、总线等必要功能和外设,是目前嵌入式系统工业的主流。
●嵌入式DSP处理器:对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度快,在数字滤波、FFT、谱分析等方面DSP算法大量进入嵌入式领域。
●嵌入式片上系统:将通用处理器内核作为SOC设计公司的标准库,用标准的VHDL等语言描述存储在器件库中,在定义出其整个应用系统并仿真通过后即可制作样品,大大优化了系统电路板体积、功耗和可靠性。
1.2 图像采集技术的研究现状1.2.1 图像采集系统简介图像采集是将图像信息光电转化成便于计算机传输、存储的数字信号的过程。
图像采集术在现今应用最广泛的方向是视频应用,早在上世纪无声电影的出现便开启了视频应用的时代,近年来随着计算机技术、网络技术及图像处理、视频压缩等技术的不断发展很大程度上扩展了图像采集术在各种产业领域使用,并且面对多样化的应用方面出现了基于多种处理平台的图像采集系统。
总的来说图像采集系统由光电转换和信号处理两大模块组成:●光电转换模块:用来完成对成像光信号到电信号的转换,其中的主要转换器件从最早的光电二极管到现在的CCD、CMOS传感器的时代;CCD(电荷耦合器件)图像传感器,具有较高的信噪比和敏感度,功耗相对CMOS较大(3个以上电源电压),主要应用于消费级数码产品;CMOS(互补金属氧化物半导体)图像传感器,原本是计算机系统内一种重要芯片,用来保存系统引导最基本的资料,后来被人们应用于影像传感器领域。
前期无论在信噪比、动态范围等方面均不如CCD,主要应用于消费电子产业及高端图像传感领域。
●信号处理模块:根据系统应用级别、领域的不同而呈现多样化的趋势,如在工业检测方面多用AVR单片机,在民用级生产生活中多用图像采集卡和PC机,介于近年来嵌入式技术的快速发展,在工业领域、民生生活方面都有了广泛应用:DSP:高工作频率(500Mhz以上)、内含乘法器、在系统结构及指令进行特殊设计的DSP处理器在视频系统的应用尤其深入,不足之处则是相对较高的成本投入及较少的外设接口;FPGA:在ASIC(特定用途集成电路)领域现今发展最为充分的平台,用标准VHDL硬件设计语言便可实现对任何芯片的仿真制造,特别善于对数字信号的逻辑处理;ARM:近年来随着工作频率和功能模块嵌入种类的不断提升,及特有的小体积、低功耗、接口丰富的特点在图像采集乃至视频监控领域崭露头角。
1.2.2 嵌入式图像采集系统CMOS图像传感器内部集成了A/D,且随着近几年的不断发展,分辨率也不断提高,集成化程度高、功耗低、体积小的特点更使得CMOS模块在消费电子产业中的手机、数码相机等大放异彩。
结合了图像采集系统及嵌入式系统的利弊特点,人们逐渐将嵌入式技术应用于图像采集领域,充分将嵌入式技术的专用性、便携性等特征在图像采集方面得到体现,也带来了图像采集技术在工业计量、生物医学、多媒体等多领域上的飞速发展。
现今较为常用的嵌入式图像采集方案主要有以下3种:1、图像传感器+ FPGA + SRAM2、图像传感器+ DSP + SRAM3、图像传感器+ ARM + SRAM方案1利用FPGA(现场可编程门阵列)可以较为方便的实现图像采集中多种同步信号的逻辑处理;方案2中的DSP(数字信号微处理器)所具有的高运行速度、强大数据处理能力使之在图像采集领域最先得到发展;而相对于前面两个方案,ARM开始在图像采集领域并未得到很好的运用,但近几年尤其在工业检测、便携图像采集等方向越来越得到人们的重视,随着嵌入式制造工艺的飞速发展,ARM的工作频率、数据处理能力也得到大幅提高,加上其含有丰富的接口模块,非常适合用于在工业监控、检测方面。
第二章 系统硬件电路设计2.1 图像采集系统硬件总体架构图2- 1 系统工作流程图图2-1为本图像采集系统的工作流程图。
并行共焦光学系统为系统光学成像源,图像捕获模块选用CMOS 图像传感器OV7620,控制、处理显示模块选用ARM7开发板SMART2400,软件开发、实验调试平台用PC 机完成。
由图可以初步了解嵌入式图像采集处理系统的整个流程:当光学系统成像完成,用CMOS 图像传感器完成对图样的获取,图像数据经过缓冲后进入ARM 开发板进行差值处理,进而直接在内部存储、显示。
期间可通过串口连接到PC 机进行调试、处理。
系统总体结构框图如图2-2。
图2- 2 系统总体结构框图2.2 系统核心器件概述2.2.1 LPC2400结构特性1. LPC2400系列ARM 概述LPC2400系列ARM 为多种类型的通信应用提供了一个理想的解决方案。
它包括1个10/100以太网媒体访问控制器(MAC )、1个带4KB 终端RAM 的USB 全速设备/主机/OTG 控制器、4个UART 、2路CAN 通道、1个SPI 接口、2个同步串行端口(SSP )、3个IIC 接口和1个IIS 接口。
同时还带有1个4MHz 的片内振荡器、98KB RAM (包括64KB 局部SRAM、光学系统CMOS ARM 开发板16KB以太网SRAM、16KB GPDMA SRAM和2KB电池供电SRAM)以及1个外部存储器控制器(EMC)来支持上述的各种串行通信接口。
这些特性使得本设备非常适用于通信网关和协议转换器。
除此以外,还有许多串行通信控制器、多用途的时钟功能和存储器特性,包括有不同的32位定时器、增强型告诉GPIO。
LPC2400系列ARM链接64个GPIO管脚到基于硬件的向量中断控制器(VIC),这表示了这些外部输入可产生边沿触发终端。
所有的这些特性使LPC2400系列ARM特别适用于工业控制和医疗系统。
LPC2400系列的主要特性有:●ARM7TDMI-S处理器,运行频率高达72MHZ。
●512KB片上Flash程序存储器,具有在系统编程(ISP)和在应用编程(IAP)功能。
Flash程序存储器位于ARM局部总线,可用于高性能的CPU访问。
●有双AHB总线系统(Dual AHB System)。
这使得某一外设资源的存取操作、程序执行操作可以和另一外设资源的存取操作和程序执行操作并行不悖,从而使得各高频外设能同时运转而不引起总线堵塞。
●EMC支持诸如RAM、ROM和Flash的异步静态存储器设备以及动态存储器设备(例如SDRAM)。
●先进的向量中断控制器(VIC),支持多达32个向量中断。
●仅LPC2470/78:LCD控制器,支持STN和TFT显示屏的显示有专用的DMA控制器可选择显示分辨率(最高可达1024×768像素)。
支持高达24位的真彩色模式●串行接口:Ethernet MAC带有MII/RMII接口和相关的DMA控制器,这些功能位于独立的AHB总线上USB2.0全速双端口设备/主机/OTG控制器,带有片内PHY 和相关的DMA控制器4个带小数波特率发生功能的UART。
其中1个带有Modem 控制I/O,还有一个带有IrDA。
除此之外,全部UART都带有FIFO3个I2C总线接口(1个开漏管脚,另外2个为标准输出管脚)CAN控制器,带有两个通道●其他外设,包括10位AD、2个PWM模块、RTC等。
2.LPC2400系列ARM体系架构LPC2400系列ARM是由支持仿真的ARM7TDMI-S CPU、用于紧密耦合并高速访问片内主要存储器的ARM7局部总线、连接到高速片内外设和外部存储器的AMBA(Advanced Microcontroller Bus Architecture) AHB[4]以及连接到其他片内外设功能的AMBA APB[5]构成的.LPC2400系列ARM始终按照小端字节顺序进行配置。