基于S3C2440的嵌入式视频网络监控系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上海交通大学
硕士学位论文
基于S3C2440的嵌入式视频网络监控系统
姓名:柳亚东
申请学位级别:硕士
专业:控制理论与控制工程
指导教师:路林吉
20090101
基于S3C2440的嵌入式视频网络监控系统
摘要
IT技术特别是集成电路和IT技术的发展,使视频监控系统正由传统的基于模拟监控的模式向全数字模式发展,并越来越和网络和图像处理技术相结合。
本课题基于嵌入式系统设计了一种监控系统。本系统由视频服务器和后台客户监控端两部分组成。本系统采用ARM9系列处理器S3C2440作为MCU,并在其上移植嵌入式Linux做为软件开发平台。
由于当前监控系统的发展方向是以视频服务器为核心的第三代全数字化远程视频集中监控模式,而本系统顺应上述趋势采用网络和后台客户端连接。
本系统视频采集部分用CCD摄像头获取模拟视频信号,然后经由SAA7111进行AD转换,将其转换为YUV信号,并由ZR36060进行视频的压缩。
本系统有两种工作模式,无人抓拍模式和视频监控模式。两种模式都是采用Video4Linux API抓取图像。无人抓拍模式每隔0.5s抓取一帧原始bmp格式图像,打上时间标签并压缩为jpeg格式后将其存储至U盘;连续视频监控模式将连续抓取到的jpeg格式图像帧数据通过网络传送至后台PC进行显示和视频文件的生成。这样一来,前端部分(摄像头和开发板)构成视频服务器,后台PC构成客户显示端,负责视频图像的显示和视频文件的生成。
后台PC端采用跨平台的用户界面开发工具Qt进行显示界面的编写,同时与音视频解决方案ffmpeg相结合,完成了视频图像的显示和视频文件的生成。由于所采用的工具都是跨平台的,所以后台程序
具有很好的移植性。
这套智能监控系统与专业设备比较,价格低廉、安装简单、即插即用、一键操作,并且体积小巧。
关键词:嵌入式系统,ARM9,Linux,视频采集,视频编码,ffmpeg,网络编程,TCP/IP,Qt
Embedded video monitoring network system based on S3C2440
ABSTRACT
With the development of IT and the technology of integrate circuit, the video monitoring system is going from traditional anolog monitoring mode to full-digitalized mode, it is combining the network and image processing technology more and more. However, some professional video monitoring system is always very expensive.
This paper introduces a video monitoring system based on embedded system, wich consists of two parts: the video server and the back PC client. We use S3C2440 which is an ARM9 processor as the controller, and make use of embedded Linux.
Nowadays, the trend of the monitoring system is that third generation of completely digitalized centralized monitoring mode whose core is visual server. So our system connects the server at the front end with the client at the back PC via net.
The video capturing interface in our system uses a camera to capture the analog video sigal. The analog signal will be converted into YUV digital signal by SAA7111, then it will be compressed by ZR36060.
There are two work modes in our system: unmanned-capturing mode and continual-video-monitoring mode. Both of the two modes use Video4Linux API to capture the images. The unmanned-capturing mode would capture one frame every half a second, then it will print the time stamp in the image and compress the image into Jpeg format. The continual-video-monitoring mode would send the continual frames to the back PC via net. The program in the back PC would display the continual frames and compress them into a video file. Thus, the devices in the front end (the camera and the ARM board) works as a video server while the program in the back PC works as the client which would display the continual frames and produce a video file.
We use Qt to code the user interface program. Qt is a popular development kit which is portable between in different platforms. And we