节点文献

嵌入式运动物体自动跟踪视频监控器的设计实现

Design and Implementation of Video Monitor with Tracking Moving Objective Based on Embedded System

【作者】 张科

【导师】 杨斌;

【作者基本信息】 西南交通大学 , 计算机系统结构, 2010, 硕士

【摘要】 随着中国经济的快速发展和人民生活水平的提高,国内外的一些恐怖事件和工厂矿井等突发事件促使了人民的安防和自我保护意识的提高。同时,近几年来计算机硬件和软件技术遵循着摩尔定律高速发展,使得安防产业的科学化、信息化和智能化成为了可能。本文设计了基于Linux操作系统、PXA270嵌入式微处理器硬件平台、采用高清IP摄像机和云台实现的嵌入式运动物体自动跟踪监控器系统。该设计能够驱动云台旋转来监控和跟踪运动目标,使得被跟踪的目标一直出现在监控画面中,直到目标丢失。该论文主要从两个方面进行阐述:1、算法的分析与设计:这一部分主要完成了高效的MJPEG图像分离算法,在帧差法和背景差法的基础上提出了新的帧差法提取背景的算法。通过详细分析和研究了OpenCV库中提供的最小特征值的角点提取算法,采用定位在运动目标上的离散角点来描述运动目标,最后详细分析和研究了LK的金字塔算法,采用了OpenCV库提供的LK金字塔光流算法在当前帧中查找运动目标,计算出运动目标的中心在当前画面中的位置,然后驱动云台运动,使得目标物体逐渐向画面的中央进行逼近,直到目标运动物体丢失(反应在程序处理中是描述运动物体的所有离散角点的完全丢失),最后停止云台的运动,重新进行以上的背景提取和目标计算的过程循环。2、程序的移植和优化:由于设计最终的运行平台是在武耀博德公司的PXA270实验平台上,设计中采用了大量的复杂算法,必须采用PXA270的Wireless MMX技术来优化程序,使得处理器的性能发挥到最大。该实验平台给出的交叉编译器不支持Wireless MMX指令集,运行的Linux操作系统为Linux2.4内核,均不能发挥出处理器的最大性能。该部分主要完成了两个内容:1)、PXA270平台的搭建:首先采用了GUN提供的cross-tool为PXA270定制并编译生成了一个支持WirelessMMX和EABI(The Embedded Application Binary Interface)的编译器,然后针对PXA270的硬件平台移植了Linux2.6.28内核,开启了操作系统的浮点模拟器、WMMX技术、FrameBuffer和网络端口的支持,最后采用BusyBox制作了自己的文件系统,使得运行在PXA270上的操作系统得到最大的优化。2)、OpenCV库和程序的优化Intel提出的Wireless MMX技术采用了SIMD指令集,可以同时对64位、最大8个单元的字节数据同时运算。在程序中没有加入WMMX指令集的时候,编译器是无法智能的为代码自动产生WMMX技术支持的汇编指令。程序中,背景提取、特征点的计算、LK光流算法均含有消耗CPU时间的大量矩阵浮点计算,在详细研究了Intel给出的WMMX指令集后,完成了对程序中使用到的OpenCV库函数的优化和程序本身的优化。由于PXA270处理器本身并不支持浮点运算指令,采用的是Linux内核中提供的浮点模拟器,所以程序的运行效果并不能同使用PC平台下支持浮点运算的x86处理器的效果相比。在降低了程序内部处理的图像尺寸后,实现了在PXA270平台下采集640*480图像,以FPS在5帧左右的处理性能完成了该设计。

【Abstract】 With the rapid development of China’s economy and the improvement of people’s life, terrorist attacks at home and abroad and the sudden mines incidents prompted the people’s security and self-protection awareness. Meanwhile, in recent years,computer hardware and software technology, following the rapid development of Moore’s Law, brings about the possibility for the scientificalization, informationization, intelligencilization of the security industry.This article designed a objective tracking system which is based on the Linux operating system and PXA270 embedded microprocessor hardware platform, adopts high-definition IP cameras and cradle head. Through driving the rotation of the cradle head, this design can track and monitor moving objective in complicated conditions and keep objective in the controlling pictures until objective is lost.The paper described this from two aspects:1. Algorithm Analysis and Design:This section mainly completes an efficient separation algorithm for MJPEG images and gives a new background extraction algorithm based on the frame difference algorithm. It adopts separation corner positioned on moving objective to describe moving objective through detailed analysis and study of minimum values of the corner detection algorithm provided by the OpenCV library. Finally the article analyses and studies the LK’s pyramid algorithm in detail, adopts the LK pyramid sparse optical flow algorithm provided by OpenCV library to find the current frame moving target, calculates the location in the current screen of the moving target’center. Then drives the cradle head movement, and makes the target object gradually approximate to the central screen, until the goal of moving objects is lost, and finally stops the movement of the cradle head. The above process of background extraction and objectives calculation will be cycled.2. Porting and Optimizing Existing CodeAs the final execution platform is the PXA270 board developed by 51 Board company and this design takes use of a large number of complex algorithms, which entails the optimization of the code by Wireless MMX technology in order to maximize the performance of the processor. The cross compiler this company provided does not support Wireless MMX instruction set and the operating system is kernel Linux2.4, neither are able to play the best performance.The main part of the completion of two elements1)、Establishing PXA270 platform First I adopt the cross-tool provided by GUN and generate a compiler which is specified for the PXA270 and support Wireless MMX and EABI (The Embedded Application Binary Interface), then I port Linux2.6.28 kernel to the PXA270 board, enable the support of operating system’s floating-point simulator, WMMX technology, FrameBuffer and network. At last, I use the BusyBox to complete my file system, achieving the maximum optimization for the running system on the PXA270.2)、Optimizing OpenCV libraries and codeWireless WMMX technology proposed by Intel uses SIMD instruction set, it can computer at the same time 64-bit, up to 8 units of bytes data. Without WMMX instruction in code, the compiler is not smart to generate automatically assembly instructions supported by WMMX technology. In the code, background extraction, feature point calculation, LK’s optical flow algorithm are consuming a large number of CPU time by matrix, floating-point calculations. I completed the optimization of the OpenCV library and my code after the detailed study of the WMMX Intel instruction set.As the PXA270 processor does not support floating-point instructions, I uses floating-point emulator provided by the Linux kernel. The efficient of process executed in PXA270 can not compare with in x86 processor with support for floating-point instruction. With collecting 640*480 images in the PXA270 platform I complete the design at about 5 FPS in the processing performance after decrease of the image size in the internal processing procedures.

【关键词】 视频跟踪背景提取MJPEG角点光流WMMX
【Key words】 Video trackingbackground extractionMJPEGcorneroptical flowWMMX
节点文献中: 

本文链接的文献网络图示:

本文的引文网络