文档库 最新最全的文档下载
当前位置:文档库 › 基于DM642的视频监控系统软件平台及运动目标检测算法研究

基于DM642的视频监控系统软件平台及运动目标检测算法研究

本文由神鹰Jimmy贡献
pdf文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。
电子科技大学 硕士学位论文 基于DM642的视频监控系统软件平台及运动目标检测算法研究 姓名:文锦松 申请学位级别:硕士 专业:信息与通信工程 指导教师:管庆 20090501
摘要
摘要
随着经济的发展和社会的进步,信号处理技术,电子技术和计算机技术等科 学技术的深入研究和发展,使得安防的科学化,信息化,智能化成为了可能.其 中,视频监控可以提供直观可靠的监控信息,所以被广泛使用.具有视频分析功 能的监控系统逐渐成为发展的主流.目前,国内外已经有很多智能视频监控系统 的研究,包括平台以及算法.这一领域正在迅速发展. 本论文设计了基于多媒体处理器DM642的视频智能监控平台,包括DSP端 和PC端的软件构架.DSP端基于RF5构架,负责视频监控算法的实现;PC端 用.NET构建,提供了人机交互界面.它们之间通过PCI链路通信,构成了一个完 善的平台,为视频智能监控算法的DSP实现与优化提供了条件.本平台至少可以 支持五张DM642PCI板卡,而一张DM642PCI板卡可以支持四路视频流的监控,
包括两路本地模拟摄像机的视频流,以及两路远程摄像机的网络视频流.
本论文的另一工作就是对视频监控算法的关键技术之一,运动目标检测,做
了相关研究.详述了三种算法:基于动态阈值的背景差分算法;基于梯度滤波的
帧间差分算法;基于高斯模型的算法.讲述了其原理以及实现步骤,提出了一定 的创新,通过仿真对三种算法做了评估.并在设计的平台上实现了基于动态阈值 的背景差分算法,较好的实现了DSP优化.DSP优化包括了物理级别的优化,代 码级别的优化以及算法级别的优化.优化后基本达到工程要求,适用于民用视频
智能监控系统. 所以,本论文将涉及到整个系统的硬件,软件和算法三个方面.其中,系统 平台的软件构架以及运动目标检测算法的研究是重点,算法的DSP实现与优化也
是很重要的一方面.因此本论文在介绍了视频监控系统平台及算法的发展及研究 现状之后,简要介绍了系统的硬件模块.然后开始详细介绍系统的软件设计,这 包括:1.系统平台的整体设计;2.DSP端,PC端软件构架.接着对三种改进的运 动目标检测的算法进行了研究,给出了仿真对比,分析各种算法的优劣,站在视 频监控系统的立场提出了算法分析结果.最后,在自己开发的平台上实现了基于 动态阈值的背景差分算法并进行DSP优化,给出了优化效果.
关键词:智能视频监控系统,DM642,软件平台,运动目标检测算法,DSP优化
Abstract
Abstract
The development of economy and society improves the liv

ing situations of people. And with the development of electrical techniques,computer techniques and signal processing techniques,it's techniques to the possible
to
apply
high-teeh,information-based
other things,video
and
intelligent
systems
society security.Among Can
surveillance
ar e
used widdy because it
provide intuitive
can
and
reliable
information.At
present,video surveillance systems which
intelligent video
provide digital,network-based and
surveillance
service
are
very popular.There are
many
researches about
the system too,including platform and algorithms. This paper introduces PC
a
digital
surveillance system including
software of DSP and
platform.Base
on
RF5 framework,the paper
design
the DSP software platform and
https://www.wendangku.net/doc/f52077226.html, to systern
Call
design
PC software platform.They eommucination via PCI.The whole
provide video
surveillance
service to at least five cards.Each card
Can
surveillance
two
local video input channel
and two
net IP
cameravideo
input.
The
based
other task of the paper is the research about moving target decect algorithm. algorithms we have researched:Dynamic threshold-difference algorithm
There are three
on
the
background;Inter-frame
on
difference filtering algorithm based
on
the
gradient;based
the Gaussian
model.We
describe these algorithms in detail.At last
DSP optimization is This
presented.
system which include hardware,
Paper
involves the three aspects of the
software and algorithms.And this
paper
will pay more
attentions
to the
software part
and algorithms.Thus,after
software
firstly introduces the hardware design of
DM642
card,
design
is introduced
detmled:1.the design
the DSP software platform and the
PC software platform.2.research about moving target decect algorithms.including
Matlab simulation.Finally,this
relization,do
a
paper
gives
a
moving target decect
algorithm'S
lot of things to DSP optimization.
Keywords:
Intelligent Video
Surveillance System,DM642,Software Flamework,
Motion
Detect Algorithms,DSP Optimization.
II
图目录
图目录
图1-1 ObjectVideo公司VEW产品的系统结构框图…………………………………3 图1-2 ObjectVideo公司OnBoard产品的系统结构框图…………………………….4
图2.1系统硬件原理图……………………………………………………………….10 图2.2智能视频监控系统结构框图…………………………………………………一13 图2.3 DSP程序流程………………………………………

………………………….14 图2.4线程通信框图…………………………………………………………………..1 5 图3—1 DSP/BIoS操作系统…………………………………………………………….1 9
图3.2 tskReceive伪代码框图………………………………………………………….25 图3.3 tskVideoProcess伪代码框图……………………………………………………27 图3_4 thrPCISend伪代码框图…………………………………………………………28 图3.5 PC端的解决方案………………………………………………………………29
图3-6客户端视频直通界面…………………………………………………………..32 图3.7客户端智能监控界面…………………………………………………………..32 图3.8客户端规则设置界面…………………………………………………………..33
图3-9 Forml Load流程图……………………………………………………………34 图3.10 VideoProcess0流程框图………………………………………………………36 图3-1 l SendlmageToDSP伪代码框图………………………………………………..38 图3—12 ImageShow流程框图…………………………………………………………39 图4_1算法流程图…………………………………………………………………….41
图4-2实时视频帧………………………………………………………………………42
图4-3背景模型…………………………………………………………………………42 图44算法运行效果………………………………………………………………….45 图4_5梯度滤波效果………………………………………………………………….46
图4.6差值运算取值分布图…………………………………………………………..48
图4.7 k为2时检测效果………………………………………………………………49 图4.8 k为4时检测效果……………………………………………………………………49 图4-9 k为6时检测效果………………………………………………………………50 图4.10 cr(x,y)处理前检测效果………………………………………………………5 l 图4—11盯(石,Y)处理后检测效果………………………………………………………5l 图4-12交通系统算法一检测效果……………………………………………………53 图4.13交通系统算法二检测效果……………………………………………………53 图4-14交通系统算法三检测效果……………………………………………………53
图4一15室内场景算法一检测效果……………………………………………………54
图4—16室内场景算法二检测效果…

…………………………………………………54 图4.17室内场景算法三检测效果……………………………………………………55
图4.18小区场景算法一检测效果……………………………………………………56
VI
图目录
图4-19小区场景算法二检测效果……………………………………………………56 图4-20小区场景算法三检测效果……………………………………………………56 图5.1算法程序流程图……………………………………………………………….59
图5.2监控系统的CCS运行图………………………………………………………60 图5—3监控系统的PC端运行图……………………………………………………..60
图514 Cache机制…………………………………………………………………………………………….62 图5.5 Cache操作示意图………………………………………………………………..62 l羽5-6 PINGPONGbuf机制……………………………………………………………………………….63
图5.7网络通道的Buf池…………………………………………………………….64
图5.8代码级别的优化………………………………………………………………..65
图5-9.00优化……………………………………………………………………………………………….66 图5.10优化前后CPU使用率对比…………………………………………………..70
VII
表目录
表2.1 EMlF扩展空间使用情况………………………………………………………12 表3.1内存设计划分表………………………………………………………………·20
表3-2关键通信的SCOM,SEM,标志位…………………………………………24
表3.3函数名及功能描述………………………………………………………………30 表3.4函数名及功能描述续…………………………………………………………3 l 表5.1 CSL库函数以及其功能的描述……………………………………………….67
VIII
缩略词表
缩略词表
英文缩写
DSP 11 CCS PcI VCR DVR
NVR
英文全称
Digital Signal Processing/Processor
Texas Instruments
中文全称 数字信号处理器 德州仪器 代码创作室 外设组件互连标准 卡带式影像录放机 数字视频录像机 网络视频录像机 动态图像专家组 联合图像专家组 计算机视觉 人工智能 增强型直接存储器访问 快速直接存储器访问 外部存储器接口 通用输入/输出接口 硬件中断 输入/输出模型 参考框架5 同步通信模块 同步动态随机访问存储器 信号量 复杂可编程逻辑器件 通用异步接收发送器 联合测试行为组织
Interface
Code C

ompose Studio Peripheral
Component Interconnect
Video Cassette Recorder Digital Video Recorder Network
Video
Recorder
MPEG 】PEG
CV AI
Moving Picture Experts Group Joint Photographic
Experts Group
Computer Vision
Artifidal Intelligent Enhanced Direct Memory Access
EDMA
QDMA
EMIF GPIO HwI IO卜1 RF5 SCOM SDRAM SEM CPLD UAF盯. J1-AG API B10S
Quick Direct Memory Access
External Memory Interface General Purpose Input/Output Hardware Interrupt
Input/Output Model
Reference Framework 5
Synchronized Communication
Synchronous Dynamic Random Access Memory Semaphore
Complex
Programmable Logic Device
Universal Asynchronous Receiver/Transmitter
Joint Test Action Group
Application
Programming
程序应用开发包 基本输入输山系统
Basic input output system
IX
独创性声明
本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果.据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含
为获得电子科技大学或其它教育机构的学位或证书而使用过的材料.
与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意.
签名:鍪鲤塑
日期:z-,口7}年哕月岁f El
关于论文使用授权的说明
本学位论文作者完全了解电子科技大学有关保留,使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅.本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印,缩印或 扫描等复制手段保存,汇编学位论文. (保密的学位论文在解密后应遵守此规定)
繇墨鲎丝
-,- 9,f i-%名:扯
醐-7和川户
第一章绪论
第一章绪论
本章阐述了智能视频监控系统的背景和意义;叙述了视频监控领域的相关概 念,发展历史以及国内外研究现状;然后叙述了运动目标检测算法的研究现状;
最后介绍了所做工作以及论文的结构安排.
1.1研究背景及意义
随着社会的进步和经济的发展,人们的物质生活水平获得了很大的提高,同 时,人们的安全防范意识也上到了新的层面.在国防军事方面,随着国家分裂势
力,恐怖组织以及各种国家周边安全的威胁,中国不仅经济大力发展,而且也加 大了安全防御和国防军事方面的投入;在公共安全方面,偷盗抢劫等社会现象也
没有得到更好的控制,以至于人们的生命财产安全得不到足够的保障;在交通运 输方面,城市交通,基础设施不断进步,交通工具急剧增加,交通运输压力增大,
交通事故频发,如何加强

交通运输管理,降低交通事故率成为了群众和相关部门 关注的焦点.对于上述各个方面的问题,除了加大人力物力的投入外,还需要采 用高科技的方式和技术手段,加大安全防范力度和效率.随着信号处理技术,电
子技术,计算机技术等科学技术的深入研究和发展,使得安防的科学化,信息化,
智能化成为了可能.在政府的引导下,企业的投入下,大量基于信息技术的安防
产品被研发和投放到市场,包括以下种类:视频监控,智能交通,防盗报警,门 禁对讲,智能楼宇,消防安全,作业防护,生物识别等等【l】.
其中,以视频监控技术发展最快,应用最广.视频监控利用摄像设备采集视 频图像,为监控者提供实时,准确,直观的监控信息.目前,视频监控系统已经
广泛应用于军事,机场,银行,商场,地铁等公共场所的安全防范以及小区域安 全监控,火警监控,和流量控制.视频监控系统总共经历了四代:第一代模拟视
频监控系统,第二代的准数字视频监控系统,第三代的网络数字视频监控系统和 第四代的智能化的数字视频监控系统【2】【3】.显然,数字视频监控正在以其无可比拟
的优势逐渐取代模拟视频监控,为用户提供更安全,更智能化的视频监控服务.
视频监控系统向着数字化,网络化,智能化的方向发展【41.
自此可见,数字化,网络化的视频监控系统趋势成为主流,其具有高度的丌
电子科技大学硕士学位论文
放性,灵活性和集成性,为安防产业的发展提供了广阔的发展空间.本论文研究 的智能视频监控则是网络化视频监控领域最前沿的应用模式之一【51.
1.2视频监控的相关概念以及研究现状
视频监控是信号处理技术,电子技术以及计算机技术发展的产物.其特点是 利用摄像设备采集视频图像,为监控者提供实时,准确,直观的监控信息.随着 信号处理技术,电子技术以及计算机技术等技术的发展,视频监控在系统构架上 以及算法研究上都有着飞速的发展.
1.2.1视频监控系统的发展及研究现状
视频监控系统发展到现在主要经历了四个阶段: 第一代视频监控系统:以VCR(Video Cassette Recorder)为代表的传统CCT
(Closed Circuit
Television)监控系统,系统主要由模拟摄像机,模拟同轴电缆,
视频切换设备,模拟监视器,模拟记录设备和盒式录像带等构成【51.该系统的特点 是:视频信号以模拟方式传输,一般传输距离不能太远,所以主要应用于小范围
的监控.
第二代准数字视频监控系统:在20世纪90年代中期,出现了以DVR(Digital
Video
Recorder)为代表的第二代视频监控系统.DVR具有对图像/语音进行长时
间录像,录音,远程监视和控制的功能,是一套进行图像存

储处理的计算机系统. DVR用一台设备就能取代模拟监控系统一大堆设备的功能,集合了录像机,画面 分割器,云台镜头控制,报警控制,网络传输等五种功能于一身,而且在价格上
也逐渐占有优势.其主要原理是:将模拟视频信号转化为数字信号,并存储在计 算机硬盘而不是盒式录像带上【5l.
第三代网络数字视频监控系统:第三代系统指的是21世纪蓬勃发展起来的网
络化视频监视系统,又称为IP监视系纠51.其原理如下:采用嵌入式实时多任务
操作系统,视频服务器内置一个嵌入式Web服务器.摄像机,网络传送来的视频 图像信息通过嵌入式视频编码器直接转换成数字信号,并通过内部总线传送到内
置的Web服务器.其中的数字视频信号采用各种视频或者图像压缩算法进行压缩, 如: MPEG系列,H.263,H.264或者Motion JPEG,以便于进行网络传输.网络
上用户可以直接用浏览器观看web服务器上的视频图像,授权用户还可以控制传
感器的图像获取方式.
2
*t绪论
第叫代智能数字视频监榨系统:随着目像处理,模式U{别,L}臂机科学,机
器砚觉,人I智能等多学科的发胜,智能的数字监控系统应运而7E_lI.它甚于并种
背能视频监控算法,能识3jJd;同的物体,发现监控丽J面中的异常情况以及日标物,
并能够以最陕和最伟的万式发出警报,提供信息,从而能够有效地协助监控人员 处理安全隐患,最大限度地降低误报和漏报现象.就好像把摄像机看作人的眼睛, 那么智能视频系统或设备|』!I|u『以看作人的人脑.智能视频技术借助于计算机强大 的信息处理能力,对视频嘶而中的海量数据进行高速分析,过滤用广不关心的信
息,lnJ仪仪提供几],t关心的关键信息.因此,智能视频监控系统彻底改变了以往
完争山二『=作人员对监棒【【!!|血进行雌视和分析的模式,通过钾能税频模块的智能算 法对所监视的画面进行分析,并与用户定义的安全规则进行比较, 旦发现安争
威胁就立刻向监控巾心手}i警,从l叮将替代或部分替代人类监控者,实现全天候可
靠的视频蝻拧%把视频峪挖带到了一个新时代.
I J√.——,,
,曛"1囊■
,j一.嚼_!lI◆
口酊.幽内外对智能视频监控的研究与应用非常广泛.IEEE_办会从1998年起 资助了固际视觉监控系列会议,至今己经分别在爱尔兰,印度,美凼等【崮家召开 多届会泌.国内也].2002年以后,分别召开了第一届和第一届全田智能视觉监控 学术会议,列日标定位,识别和跟踪,图像序列分析,高层语义理解,系统构建
与集成,网络环境下的视频监控等内容进行了多方面探讨….,另外,在#术t也响
一系列的定破,崮际权成学术{lfI刊International Journal ofCo

mputerVision和
IEEETrans On PatternAnalysis
andMachineIntelligence都…版了有关税频监榨的
专题,论文.i,耍研究成果有:}内基梅隆大学,戴维SARNOFF研究中心等几
家著名研究机构合作,研制的视频监视与雌控系统VSAM[".Maryland大学的实 时视觉监控系统W4F1不仅能够定位人椰分割出人的身体部分,而且通过建立外观 模型来实现多人的心踪,可以检测和跟踪室外环境中的人并列他们之u】简单的交 兄进{亍监控.而以色列的ioimagc和美目的ObjectVideo【71足智能视频领域很有代表
陡的婀个公司,他们开发的产品,都能在一定觑则设置F自动进行事件探测,目 标跟踪和异常提醒….
我们着重介绍nIk界领先的ObjectVideo公司的相关产品I".
美国0blectVidco公司是世界智能视频行业的领先企业,其智能视频监控尊法 恩有IFg"强大的功能.图1—1给m了该公-≈的vEw产品的系统结构框图. l扣舟1.1可以看到,该产品t要有以下部分组成:摄像机模块,服务器模块(0"4 Server),智能分析模块(OVISE),客户端模块(OVClient).其I一作机制如r: 前端摄像机采集视频信息,通过多路复用或者交换器将视频信息传递到智能分析 模块模块进行智能分析,一口有异常事什产生,将警报传递到服务器模块模块. 服务器模块是整个系统的中枢,负责路由系统中各个模块之问的信息传递;小仪 如此,服务器摸蜓内岔个数据库,记录系统状态等信息,儿外由智能分析模块 模块产牛的警报也存放在该数据库中,以便监控者查询.客户端模块足客户端模 块,用户c4以通过一系列的客J1端软件来设置报警规则,查霸系统信息和违J=9l事
件的搬管信息. 可以看到,在VEW产品中,智能分折模块这台计芥机负责对削像进行智能分
析,电就是说,智能分析算法是在Pc甲台r实现的.而ObjectVideo的另款产
品OnBoard{_!|J有所不同,其采用了基于TI(TexasInstruments,德¨l仪器)DSP平
台的智能分析技术,即在DSP卜实现智能桃频监{亭算法.图1 2为系统结构框图:
"——吵一

第一章绪论
由图1.2可以看到,OnBoard产品通过使用视频分析设备(Video
Analysis
Devices)来实现智能视频监控算法.智能分析模块模块只是起到桥梁的作用,将 数据在嵌入式设备与服务器模块之间进行传递,从而保持了结构的一致性. OnBoard的特殊之处在于:摄像机直接与视频分析设备相连,在视频分析设备上进 行模拟视频信号的数字化,智能分析和警报的产生.因此智能分析模块与智能分
析模块之间的连接方式从PC的内部总线转换成了TCP/IP网络.这就要求在对各
类数据进行压缩,特别是违规警报和直通视频图像,都采用了JPEG的压缩编码方
式.
1.2.2运动目标检测算法的研究现状

智能数字视频监控系统的核心是视频监控算法.其可以分为如下关键技术:运 动目标的检测,运动目标的特征提取,运动目标的识别,运动目标的跟踪,运动 目标行为分析.本论文只涉及关键技术之一,运动目标的检测. 目前运动目标检测的算法很多,有很多相关的论文.目前,大多数的运动目标 检测的方法要么是基于图像序列中时间信息的,要么是基于图像序列中空间信息
的.总得来说,可以归纳为如下3种: (1)背景差分法【9】
将实时视频流中的图像像素点的灰度值与事先训练好的背景模型中的相应点 的灰度值比较,按一定算法来判断像素点是前景点还是背景点.所谓前景点,就
是场景中运动目标的像素点;背景点就是场景中静止的,固有的画面的像素点; 而噪声点就是不属于前景点或者背景点,但是受各因素影响可能会被误判为的其 中之一的像素点.
此算法的关键是背景模型的建立.其算法优点在于能比较好的提取运动目标, 但对光照和长时间内环境的变化过于敏感,尤其是环境剧烈变化的时候,检测效
果很不理想.由于时间流逝,实际场景等多种因素都会发生变化,比如停留物的
出现,光线的变化,运动目标对背景的遮挡等等,迫使背景需要实时地更新,这 增加了计算的复杂度.但是不可否认,在背景模型按合适算法更新的情况下,这 是一种比较适用与视频监控系统的运动目标检测算法.
(2)帧间差分法【10】
5
电子科技大学硕士学位论文
在输入的视频流中,不断的对相邻的几帧图像进行差分(通常为2帧或3帧),
若某一像素点的灰度值的变化超过了某一阈值,就认为此点是前景点,否则是背 景点.
这种算法的关键在于阈值的选取.它的优点在于对场景中的光线渐变不敏感, 适于动态变化的环境,且运算量相对较小.但缺点同样很多:1)不能完整的提取 运动目标,2)对于突然停在场景中的物体会"失明",这点对于滞留物体的判断很 不利.3)在运动目标内易产生空洞现象,不利于下一步的分析和处理. (2_)光流法【11】【12】 这种算法首先在视频流中构建一个光流场.根据光流场计算出像素点运动的大 小和方向,从而转化为运动场来区分背景和运动目标. 其主要优点在于不需预知场景的任何信息就能检测出独立的运动目标,对变化 的复杂背景情况有较好的适应.但其有一个致命的缺点,由于要依赖光流估计的 准确程度,大多数计算方法相当复杂并且计算量特别大,所以除非有特殊的硬件
支持,否则很难实现实时检测.不太适合于民用视频监控系统.
1.3论文主要工作及结构安排
在这样的背景下,本论文设计和开发了数字视频监控系统的软件平台并对视 频监控

系统的关键技术之一,运动目标检测,做了深入研究.该软件平台基于 DM642的系统硬件构架,由DSP端的DM642PCI板卡以及PC端服务器主机组成.
其中,DM642PCI板卡是以DSP(Digital Signal Processor,数字信号处理器)为核心 处理器的数字视频处理板卡.DM642PCI板卡对监控场景进行智能分析,将分析结
果通过PCI总线传输到服务器主机端;服务器主机端则基于微软.NET平台用
VC++.NET构建,该系统平台可以支持5张板卡的视频监控服务,而每张板卡又
可以支持4路的视频流,其中包括两路的模拟摄像机的视频流和两路网络摄像机 的网络视频流.该系统既可以使用普通模拟摄像机作为视频源进行本地实时智能 监控,也可以使用网络摄像机(IPCamera)作为视频源进行远程实时智能监控. 运动目标检测算法的深入研究上主要在背景差分和帧间差分上.详细的说,
研究了三种算法:一,基于动态阈值的背景差分算法;二,为基于梯度滤波的帧
间差分算法;三,基于高斯模型的算法. 因此本论文涉及到整个系统的硬件,软件和算法三个方面.其中,软件设计
和算法研究是重点.具体工作包括:
6
第一章绪论
1.参与DM642pci板卡的硬件的设计和实现. 2.独立完成基于dm642pci板卡的DSP,PC软件构架的设计.
3.独立完成运动目标检测技术的算法的MATLAB仿真.并比较了不同种运 动目标检测技术的算法,指出优势,劣势.
4.独立完成运动目标检测算法的DSP实现和优化. 因此,本论文共分为六章,并将着重介绍软件平台的设计和运动目标检测算 法的研究与实现:
1.第一章:绪论.本章阐述了论文选题(智能视频监控系统)的背景和意义;
叙述了视频监控领域的相关概念,发展历史以及国内外研究现状;最后介
绍了所做工作以及论文的结构安排. 2.第二章:系统的总体设计.本章首先归纳总结了智能视频监控系统的关键
技术.在此基础上,本论文提出了一个结构新颖,扩展性良好的智能视频 监控系统,简要地介绍系统硬件之后,介绍了其系统框架图. 3.第三章:DSP端和PC端框架设计.本章分四小节,第一小节大概的介绍
了DSP程序开发,NET语言开发的相关知识,涉及内容包括:DSP/BIOS, RF5参考框架,线程,
CSL,VC抖.NET等技术.然后用大量篇幅来介
绍本系统的DSP程序设计,包括三大模块:视频捕获模块,线程同步和
通信模块的设计.最后,详细介绍了PC端的设计,包括客户端模块,网 络模块,后端服务模块.
4.第四章:运动目标检测算法.本章详述了本论文所研究过的几种算法:1) 基于动态阈值的背景差分算法;2)为基于梯度滤波的帧间差分算法;3) 基于高斯模型的算法.对于各个算法都介绍了原理和步骤.结合Matlab 仿真结

果比较了各种算法的优劣.并选取了基于动态阈值的背景差分算法
来进行DSP实现.
5.第五章:算法的DSP实现与优化.本章分两大部分:运动目标算法的DSP 实现,以及在前面设计的软件构架上的DSP优化.在论述了优化的必要 性后,介绍了DSP实现,详述了算法如何融入系统并给出了运行结果. 最后讲述了DSP优化,包括三个方面:物理级别的优化,代码层级别的
优化,算法级别的优化.
6.第六章:总结.本章对论文所设计的工作给出了总结和展望.
7
电子科技大学硕士学位论文
第二章系统总体设计
本章首先,归纳总结了智能视频监控系统的关键技术.在此基础上,本论文 提出了自己设计的智能视频监控系统的软件平台,介绍了其系统的总体设计,包 括系统硬件和软件设计.
2.1基于视频监控系统关键技术的设计
2.1.1视频监控系统关键技术
虽然市面上的智能视频监控系统很多,但是都包含了一些关键技术,所谓关 键技术就是指设计视频监控系统所必须考虑的技术.总结如下: 1.视频监控系统的平台:任何算法要真正应用到实际,需要使用具体的软硬 件技术来实现.而软硬件技术又需要软件平台来体现,另一方面,由于智 能分析算法比较复杂,计算量大,能否达到算法的实时实现是一个难点, 因此需要一个好的平台构架. 2.系统构成:一般由三大模块组成,智能分析模块,主机服务器和客户端. 智能分析模块负责算法的实现,一般采用嵌入式设备;主机服务器负责统 一管理各个智能分析模块,路由和存储系统中的各类信息;客户端负责接 收实时的视频图像和报警信息. 3.智能视频监控算法:是整个产品的核心,是实现智能监控的关键.智能视 频监控算法对输入的视频流进行处理,分析图像中的物体行为,对违规事 件进行报警,从而达到智能监控的目的.智能视频监控算法可以细化为五 大关键技术:目标检测,目标特征提取,目标的识别,目标跟踪,目标行 为分析. 4.视频源类型:可以分为两种,模拟摄像机和网络摄像机(IP Cal"ncra).模 拟摄像机需要在前端的嵌入式设备上进行数字化,由于模拟同轴电缆的传 输限制,这就使得模拟摄像机与对其进行数字化的设备之间不能太远.而 网络摄像机内部直接将模拟视频信息转换成数字图像,然后通过网络传输 到智能分析模块进行分析,从而可以大大增加监视范围.只要网络的传输
第二章
系统总体设计
速率能够得到保证,智能视频监控系统可以对网络中的任何地点进行监视. 5.传输方式:视频监控向网络化发展,那么使用什么方式来实现最快,最准 确的传输就成为了关键技术之一.目前的智能视频监控系统都使用了网络 作为各个模块间的信

息传递通道.
2.1.2本论文基于关键技术的设计
在系统监控平台以及系统构成上,采用的是DSP的嵌入式系统.以
TMS320DM642多媒体数字信号处理器为核心的嵌入式板卡,通过PCI[14】总线与
PC端通信.鉴于DSP处理器具有强大的实时计算能力,特别是适合完成图像处理 运算.因此本设计将采用嵌入式的DSP平台来实现算法.剩余的辅助工作将由PC
负责完成.
本论文的算法致力于运动目标的检测,详细研究了三种运动目标检测的算法. 后续的目标识别,跟踪和行为理解等算法的研究,将作为本论文的后续工作. 在现有大多数产品中,视频源要么是模拟摄像机要么是网络摄像机(IP Camera),两者没有共存在一个产品中.基于上述原因,我们提出将模拟摄像机和 网络摄像机都作为系统的视频源,同时对本地的模拟摄像机和远端的网络摄像机 所拍摄的场景都进行智能监控.因此传输方式由单一的网络传输方式转变成了网 络和PCI总线的方式.
2.2系统简介
2.2.1系统硬件
本系统的硬件,由多块DM642PCI板卡组成.主要提供对本地和远程视频监 控的硬件支持.每块DM642PCI板卡由以下模块组成:DM642核心处理模块,外 设存储器模块,视频输入模块,总线控制模块,PCI模块. 本地的模拟视频首先通过视频输入模块进行A/D转换,DM642核心处理模块 接收模拟视频输入模块输出的数字图像信号,并存储在外设存储器模块 (SDRAM),同时DM642核心处理模块实时的对存储在外设存储器模块
(SDR
AM)中的数字图像信号进行运算.当产生报警信号,DM642核心处理模块
便通过PCI模块把报警信息以及违规场景传送给主机服务器.远程的网络视频数 据,首先由服务器主机通过PCI模块传送到外设存储器模块,其它步骤与处理模
9
电子科技大学硕士学位论文
拟视频流一样.整个系统的数据,地址,控制总线将由总线控制模块控制.系统
硬件原理图如图2.1.
图2.1系统硬件原理图
2.2.1.1.DM642核心处理模块
TMS320DM642(简称DM642)是TI公司推出的一款高性能的定点多媒体数
字信号处理裂13】【141.C64
DSP内核采用流水线结构,执行指令的功能单元在编译
时便可分配好,程序运行时通过专门的指令分配模块,可以将每个256位的指令 包同时放到8个并行单元中进行处理.同时,其内部的C64 DSP内核采用了先进
的VelociTI增强型超长指令字(Advanced Very.Long-Instruction-Word)结构,集成 了8个独立的功能单元(6个32位的算术逻辑单元和2个32位的乘法单元)和
64个32位的通用寄存器.这种超长指令字结构可以在一个周期内,取回一个长指 令包,其中包括8条32位的指令,总字长达到256位.另外,一个功能单元不仅
可以完成

一个32位的乘累加运算,还可以将其转换成4个16位的乘累加运算或
者8个8位的乘累加运算.目前,设计中采用的DM642主频已高达720MHz,对 于8个并行的功能单元,则具有5760MIPS的计算能力.优化的内核结构,强大的 计算能力和专门的指令集使得DM642特别适合于数字图像处理应用.除了DSP 内核外,DM642片上还集成了大量使用的外设和接口,方便与片外的各种设备实 现无缝连接,本设计用到的外设接口包括:
·三个可配置的视频端口(VPO,VPl和VP2),可用作视频输入端口,视
频输出端口或传输流接口捕捉端口.支持多种视频标准,比如BT.656.每 个视频端口由A和B双通道组成.5120字节的输入/显示缓冲器可以在两
lO
第二章
系统总体设计
个通道之间进行分配. ●一个64位的外部存储器接口(EMIF)支持与各种外部器件的无缝链接,
比如SDRAM,FLASH和CPLD;

一个32位33/66MHz,3.3V PCI主/从模式接口,符合PCI 协议;
Specification 2.2

一个12C接口,可以使主机很方便的与外设通信,符合飞利浦半导体公司
的12CV2.1总线协议;
·除此之外,DM642还有一些其它片上外设,比如说JTAG接口,计时器
(T珊ER),锁相环(PLL)等.
2.2.1.2.视频输入模块 视频输入模块涉及到模拟视频信号的数字化,能否在前端就提供质量较好的 数字视频图像非常关键.在本系统中,前端用n型滤波电路进行模拟滤波,并选
用了TI公司的视频解码芯片TVP5150Atl6】,这是一款支持NTsC/PAL/sEC』蝴制
式的超低功耗视频解码芯片.TVP5150A支持两路混合视频信号或者一路S.Video
视频信号,具有9位高速的ADC.它可以将NTSC/PAL/SECAM制式的视频信号 转换成8bits的ⅡU.R.656格式,也可以按照YCbCr格式以4:2:2的比例转化成数
字信号.TVP5150A与DM642的VP端口以及12C总线控制器相连.12C总线则
用来配置,而TVP5150A的寄存器VP端口负责接收来自TVP5150A的数字图像.
VP接口是TI刚s320DM64X系列DSP中特有的一类专用于视频采集的模块,
支持视频捕获,视频输出和码流传输三大类工作方式.DM642具有3个VP接口, 每个VP接口由20根数据传输线,3根同步控制线和2根同步时钟线组成;在视 频捕获方式下,每个VP接口支持两路独立的8/10位的4:2:2标准YCrCb信号或 原始数据输入,或一路16/20位的Y/C信号或原始数据输入. 本系统的视频输入模块具体流程如下:模拟摄像头输入的模拟信号在
TVP5150A中进行A/D转换,得到ITU.R的BT.656格式的视频流,数据格式为 YUV4:2:2.VP接口的5120字节的缓冲区划分为两个2560字节大小的A和B两
个通道.每个通道的缓冲区进一步分为3段:1280字节用于存储Y分量,cr和
Cb分量各占640字节.视频解码芯片不断将数字视频信号填充到Y,Cr,

Cb三个
分量缓冲区中.当填充到一定阈值后,会自动触发DMA事件,将视频数据保存在 视频接口模块驱动程序的缓冲区中.根据需要,DSP上层程序会调用相应的驱动
程序函数将图像搬移到SDRAM中,以便对其进行智能分析.
电子科技大学硕士学位论文 2.2.1.3.EMI
F模块
在DM642片上集成了一个64位的外部存储器接口(EMIF),通过四根使能 引脚CE[03]扩展了四个外部访问空间(CEO,CEl,CE2和CE2),每个空间的 寻址范围达到了256M[15】.通过这个外部存储器接口,以及一块CPLD,本系统将
SDRAM,FLASH,RS232/485,RTC和四个状态灯LEDs分别译码在CE0,CEl 和CE2空间.具体的使用情况见表2.1.
表2.1 EMIF扩展空间使用情况
CE空间
CEO CEl
地址范围
0X8000 0000—83FF FFFF OX 9000 0000—907F FFFF OXA008 0000
外部设备
64MBytes SDRAM
8MBytes
LEDs
FLASH
CE2
OX A008 3000一A008 300F
I盯C UARTA(RS232)
UARTB(R¥485)
0X A008 4000一A008 4007
OX A008 6000一A008 6007 CE3 0X B000 0000一BFFF FFFF
保留
2.2.1.4.PCI模块
PCI[17】模块用于传感器与PCI主机之间的通信.在本系统中,PCI传输的任务 主要由DM642中的PCI端口进行实现.在DM642中集成了一个主/从控模式的PCI 模块,该模块实现了PCI物理层协议,因此在本系统中,无需单独的PCI接口芯
片.该PCI模块支持以下四种类型的数据交换:1)主模式写:DSP主设备通过
PCI总线写数据到外部PCI从设备;2)主模式读:DSP主设备通过PCI总线由外
部PCI从设备读数据.3)从模式写:外部PCI主设备通过PCI总线写数据到DSP 从设备;4)从模式读:外部PCI主设备通过PCI总线由DSP从设备读数据;
对DM642中的PCI模块来说,从模式写适于对数目少的数据搬移,而主模式 写,更适于大数据量的搬移.区分PCI总线处于主模式还是从模式情况的依据为是
否使用了内存映射寄存器组中的相关寄存器,而对内存映射寄存器组的操作既可
以通过DSP核完成,又可以直接通过PCI主机完成.鉴于系统底层驱动只能PC 到DSP单方向的发起中断,设计中采用的模式是从模式读写.
12
第二章
系统总体设计
2.2.2软件框架总体设计
根据以上论述,本论文设计的智能视频监控系统具有以下结构,如图2-2所示.
图2-2智能视频监控系统结构框图
由图2.2可见,基于DM642智能视频监控系统是一个支持多板卡,多通道, 并支持网络视频监控的智能视频监控系统.整个系统设计包括DSP端设计和PC
端设计. 在DSP端,作为服务器的PC机,通过PCI插槽最多可嵌入五张DM642板卡,
每张DM642板卡运行实时视频监控算法,并智能地实时检测安全事件,产生警报.
且每张DM642板卡可以同时运行两路模拟摄像机和两路网络

摄像机视频输入的实
时运算:对于模拟摄像机的视频输入,实时的解码视频流,根据PC端传来的算法 参数,实时算法分析,然后将结果传回PC端;对于网络摄像机,接收PC端传来 的网络视频流以及规则参数,根据参数进行实时算法分析,然后将结果传回PC端.
整个构架在DSP/BIOS[181下参照RF5[191构建. 在PC端,运行PC端软件,可以实时的解码网络摄像头的视频流,设置规则
参数,并通过PCI总线传输到DSP端DM642PCI板卡,待DSP对视频进行算法
13
电子科技大学硕士学位论文
分析后,再实时的显示DSP的分析结果,显示报警场景.PC端软件用VC++.NET 构建.
2.2.3系统各模块设计简介
从系统框图可以看到,我们的视频监控系统由两部分组成:DM642PCI板卡和 服务器主机.它们的功能如下: 2.2.3.1.DM642板卡
DM642PCI板卡是以DM642为处理核心,基于PCI总线的嵌入式实时视频处 理板卡.它运行多通道的智能监控算法.DSP端软件主要是基于DSP/BIOS构架 进行多线程调度和管理,在此基础上,使用一种基于RF5的同步通信模块SCOM[16】 通信,以便开发高密度的多通道,多算法应用软件.智能监控算法的集成遵循TI 算法标准【16】,增强了智能监控算法的可移植性,可扩展性.
匝丑{匦匝卜[亟赢日咂磊圃咂赢垂
DSP软件包括自启动,初始化,和线程创建.流程图如图2.3所示:
图2—3 DsP程序流程
图2.3最后一步动态创建1个算法处理线程(tskVideoProcess),2个PCI通 信线程(tskReceive,thrPCISend)以及一个中断服务子程序(PCI
ISR):
tskVideoProcess根据客户端为每个通道设定的监控规则,对通道中的图像进行算法 分析,若有物体违规,则记录违规场景,产生报警信息,否则送出直通图像. thrPCISend负责把tskVideoProcess产生的报警信息或者图像通过PCI传输到PC 端.tskReceive负责接收来自本地板卡的模拟摄像机和来自PC端的网络摄像机图 像,以及PC端来的信息.并传递给tskVideoProcess.tskVideoProcess负责对图像 进行算法的运算.PCI ISR负责监听来自PC端的请求,根据不同请求发送不同的 旗语,控制线程间的运行.
在线程同步上,使用了旗语以及RF5框架中的SCOM对象模块(Synchronized Communication).SCOM提供了队列(Queue)和旗语(Semaphore)[16】【20】的双重
功能,从而可以有效的实现线程通信.线程通信如图2.4所示.
14
第二章 图像数据,系统信息
系统总体设计
tskReceive卜·—蚪视频缓冲区
P
中断
刘匐 :[困i
READ OK,
I..…….……….1
图像数据,报警信息
thrPCISen d
图2_4线程通信框图
主机服务器准备传输控制命令或者图像的时候,向DSP发送中断请求.
PCI
ISR将响应这些请求,根据主机服务器的不同信息向其他

线程发送不同的控制
旗语:如果是PC端接收一帧图像完毕,则向thrPCISend发旗语PCI
表示可以接收下一帧图像;如果是PC端发送数据完毕,则向tskReceive发送旗语
PCI—WRITE OK,表示可以接收信息.tskReceive接收网络摄像机或者模拟摄像机 图像,和控制命令.如果收到图像,将其存储在SDRAM的一个缓冲区中,以待 进行算法分析;如果收到控制命令,将其存储在由PC,DSP共同维护的一个缓冲 区中.然后发起SCOM通信,把信息传送到tskVideoProcess维护的SCOM中.
tskVideoProcess收到信息后,会使用视频缓冲区和控制命令缓冲区中的数据作为算
法参数进行计算.tskVideoProcess计算完成后,会产生相应的结果,比如警报或者 处理信息.这些数据会保存在一个字节数组中,然后将其打包封装成一个Message 对象,将其发送到thrPCISend维护的SCOM中,thrPCISend接收到这个Message 包后,对其进行相应的处理,然后发送到PC主机.
2.2.3.2.服务器主机
服务器主机由后台服务模块,网络摄像机模块以及客户端模块组成.
后台服务模块是整个系统的中枢,管理主机与DM642PCI板卡之间的数据交 互.我们板卡的链路是PCI链路.设计中集成的是第三方的驱动.此驱动可以实 现对DM642的空间的自如读写.
网络摄像机模块接收来自网络摄像机的数字图像,通过后台服务模块传输到 DM642PCI板卡进行实时分析,从而提供了基于Internet网络的远程视频源输入, 极大的扩展了监视范围.此部分采用了ANXIS公司的网络摄像机.
客户端模块为用户提供实时监控和操作界面.支持以下功能:设定算法参数
15
电子科技大学硕士学位论文
以及报警规则,获取实时图像以及报警场景,获取系统信息.此部分主要有三个
GUI(Graphical User
Interface图形用户界面):客户端视频直通界面,此界面实时
显示视频的直通;客户端智能监控界面,此界面实时显示报警图像;客户端规则 设置界面,此界面用于用户对特定通道,特定规则的设置.
16
第三章DSP端和PC端框架设计
第三章DSP端和PC端框架设计
本章内容包括两大部分:DSP端框架设计以及PC端的框架设计.所以本章安 排如下:在简单介绍DSP软件,.NET语言开发的相关知识之后,详细介绍DSP 应用程序框架的设计.包括操作系统,内存分配,通信协议区,线程设计等.接
着,详细的介绍了PC端的框架设计.包括总体设计,客户端,网络模块,后端服 务模块的设计.
3.1相关知识概述
3.1.1
DSP应用程序开发概述
在DSP开发过程中,我们使用了TI公司提供的软件开发平台.这包括CCS
和DSP/BIOS实时操作系统内核. CCS是TI DSP的集成开发环境(IDE),为开发者提供了内嵌的编辑器,针
对各个DSP平台的C语言

编译器,连接器,汇编器,通用的图形用户界面,调试 器以及各种实用工具.开发者可以在CCS中完成DSP应用程序的编辑,编译,调
试等工作【211. 除了CCS,TI还提供了实时操作系统内核DSP/BIOS.该内核提供了抢占式
多线程,硬件抽象,实时分析和配置工具等服务,方便了DSP应用程序的开发,
也大大缩短了DSP产品的开发周期【18】.因此,我们将采用CCS中的DSP/BIOS的 开发模式.另一方面,由于CCS提供的C语言编译器经过特殊优化,而且编译效
率很高【221,因此我们在DSP框架设计时使用c语言进行开发.而针对实时性要求 很高的智能分析算法,我们将采用C语言和汇编的混合编程方式.关于智能分析 算法实现将放在第四章中阐述.
3.1.2
DSP/BIOS,CSL和RF5简介
传统的DSP程序开发都是基于主函数无限循环和中断处理这种框架来构建 的.这种框架难以实现多任务,多算法,复杂的DSP应用程序.另外,使用传统 框架开发的DSP程序,很难跟踪和获取DSP的实时执行情况,很多调试工具获得
17
电子科技大学硕士学位论文
的数据都是在非实时的情况进行收集的,这就使得开发者很难准确掌握DSP的实 时运行状态.
为了解决上述问题,需要一个操作系统,上层应用程序提供了一系列的底层 服务:中断处理,内存管理,时钟控制,线程创建,同步与通信等.TI公司推出 的DSP/BIOS实时多任务操作系统内核便是这样的一个系统.针对DSP的特殊情 况,DSP/BIOS还提供了各个DSP平台的硬件抽象,主机与DSP间的通信以及DSP 实时监测等服务.这些服务都是以API的形式提供给上层应用程序,并且针对不 同的DSP平台进行了优化,以最小化这些服务所占用的DSP开销和存储器需求. 开发者在DSP/BIOS上构建DSP应用程序时,只需要将必要的服务模块添加到应 用程序中,并且调用相应的API就可完成特定的功能.显然,DSP/BIOS使得开发 者不必过多的关心DSP程序的底层框架,将更多的时间和精力放在DSP的算法实 现等问题上,从而大大提高了开发效率【331.
CSL[231(Chip support
library,片级支持库)为配置和控制DSP的片上外设提
供了一个C语言接口.对于特定的DSP平台的每一个片上外设,CSL都提供一个 模块与之对应,主要有两方面的功能: ●把特定外设的寄存器抽象为一组数据结构,即用一组数据结构来表示外设
的寄存器,使得对寄存器的操作更易理解和操作.
·对特定外设的寄存器操作,急对上述的数据结构中字段的赋值来实现对外
设的配置与控制. 随着DSP程序越来越复杂,单独的DSP/BIOS显得凌乱,力不从心.于是TI 提出了RF(reference framework,参考框架)概念.RF实际上是一个参考DSP应
用程序框架,该程序建立在DSP/BIOS之上,集成简单的

符合xDAIS算法标准的 算法.开发者可以通过修改RF框架程序快速的实现DSP程序开发.一般情况下,
开发者只需修改与硬件平台相关的驱动程序,替换掉框架中简单的xDAIS算法等,
就可以实现一个新的复杂的DSP程序开发.其中RF5[23】是RF系列中的一个参考 框架,适合多媒体处理的,多任务多算法的应用场合.另外,RF5还提供了一些 额外的软件模块,加强了对多任务和多算法应用程序的支持.
https://www.wendangku.net/doc/f52077226.html,概述
https://www.wendangku.net/doc/f52077226.html,实际上是微软提出的新一代应用程序开发和运行平台.换句话 说,今后基于微软平台的应用程序的开发和运行,都会基于此平台https://www.wendangku.net/doc/f52077226.html,
第=乖DSP端ⅧPC端框槊设计
将逐渐取代r使刷Windows
API,vc¨,MFC和cOM++等技术』r发Windows
Language Runtime)
程序的lH,F台.只_[¥参见有关书籍口….
NET
Framework是NET平台的核心,而CLR(Common
则是NET Framework的核心,所有的NET艇用程序都是在CLR的基础L建立起
来,并月在CLR的控制F进行运行.作为一个运行时环境,CLR类似于JAV虚 拟机.vc++NET是NET平台为了兼顾vc+一语言的设计者『m设计的面向对象的 编程语言.本系统的PC端构架都是使用此语言编.;.
3 2
DSP软件框架设计
本DSP府用程序将构建在DSP/BIOS上,参考RF5框架来实现DSP程序.F
巾的小什将详细介鲥本DSP软件框架的设计.
3 2
1操作系统DSP/B10s设计
如刳3-1为video cdb文件的静态界州.可以在此界而L静态配置的方式配置
RIOS系缔.配晋州f内客匈括.椰师鲋劫.蚌程 4目…
内存官排.nMA
FMIF望
gE々……wz ●…BⅡff·7,Dl'…·7
s…s
E a…^…H.n…-"
5r¨·_5"|1"''
{s山"1nc A1qn,o嘶ut
-自i∞Hoi
4…Rtn+1_·D¨-!…·EⅢ1q' E…_l_…+r
}otD帅…q…d 日…c……"p"·,口u.p"…,"
o口'Pm Hu'''r
四一
o √coL
BIO chl
p
c1·t,Dr,v·7
s"".¨L,b'唧
5誉:?:::=.舞., #………-….,
B口…mtlo
R….n…"tt…'"
幽3—1
l熙
DSP/BIOS抹¨系目
电子科技大学硕士学位论文
3.2.2内存的划分
DM642PCI板卡硬件上支持CE0的64M(即SDRAM),CEl的8M(即FLASH)
空间,CE2只是支持零星的几个地址空间.根据本系统的特点我们设计如下:系 统本身是对视频的处理,所以需要划分一部分的内存空间来存储数据;另外系统
需要与PC端通信,也就需要专门划分一段内存;本系统是一个嵌入式系统,所以
需要一段内存区来存储程序,并需要空间来提供处理器的运行,所以需要一块内
表3.1 内存块
Backgrotmdlmage
BOOTLOADER CACHE——L2
内存设计划分表 起始地址
Ox8237ba00 Ox00000000 0x00020000
功能描述
存储背景图像的空间 系统自启动的空间 L2

级CACHE,对系 统提高速度非常重要
长度
Ox001 5e000 Oxooo00400 0x00020000
DSPMsg
通信协议区,此区存 有DSP的所有PC端 所需要的信息
0x00000580
0x00000180
ImageBuf
图像处理开辟的空间 DSP片上空间,用于 程序的运行
Ox82000300 Ox00000700
Ox00l 10700 0xOOOlf900
ISRAM
NE'1BufPool
网络图像的Buf池, 仿照vport口的Bur 池构建
0x821 10a00
Ox00208000
PCMsg
通信协议区,此区存 有PC端来的客户端 的所有信息
Ox00000400
0x000001 80
PingBuf
乒乓Buf机制,Ping
Buf
0x82318a00
Ox00031800
PongBuf
乒乓Buf机制,Pong
Buf
Ox8234a200
0x00031800
SDRAM
程序运行的空间,类 似与PC机的内存
Ox80000000
Ox02000000
20
第三章DSP端和PC端框架设计
存区;最后根据本身DSP的硬件特殊性,需要进行优化,而与此相关的是一段关 于优化的内存.所以,我们设计了四大内存块:数据区,通信协议区,程序区, 优化区.具体划分如表3.1.根据表3.1,我们简要的介绍上述四大内存区.
数据区:属于此区的内存块有Backgroundlmage,ImageBuf,NETBufPool.其
中,NETBu伊ool也属于优化区.具体见5.3.1小结. 通信协议区:属于此区的内存块有DSPMsg,PCMsg.这是整个嵌入式系统的
中枢.其中DSPMsg记录的是DSP处理后的信息,PCMsg是PC传过来的客户或
者网络图像信息. 程序区:属于此区的内存块有BOOTLOADER,ISRAM,SDRAM.其中 BOOTLOADER存储的是板卡自启动时DM642第一次搬移的代码.总大小1K. ISRAM为片上存储器,SDRAM为程序运行的片外空间. 优化区:CACHE L2,PingBuf,PongBuf块是属于此区的.具体参见5.3.1小
节.
3.2.3通信协议区的设计
在系统中,需要DSP与PC间无缝的合作,通信协议区也就是必须的,关键
的.总体上,设计中考虑了以下几点:1)协议区划分在片内的存储器.因为DSP 对通信协议区的访问非常频繁,安排在片内,有利于提高速度;2)DSP信息区与 PC信息区的相对物理地址分开开辟,这样有利于系统升级.以下两个小节将介绍
通信协议区两大部分:PC信息区,DSP信息区. 3.2.3.1.PC信息区 设计PC信息区的目的在于,存储PC端传来的的所有信息.DSP端会根据
这些信息来进行算法运算以及系统运行.PC端的信息包括用户设定的信息和与 DSP端通信的信息.因此PC信息区的设计包括用户信息区和通信区两大类. 用户信息包括用户选择了哪个通道,要对哪个通道进行算法运算,设定了什 么运算规则.根据这些需求我们以结构体字段的形式设计了一系列字段如下:
IschOpen[4],IsProcess[4],IsRuleSetting,Pix_laction[16],Rule_Type,
Is_Rule_Change. 而通信区的设计也是以字段的形式设计:因为系统采用的是从模式读写方式,
所以

必须有中断源字段Int Source来定义各种情况下的动作;另外PC需要知道
DSP是否读取完PC的信息,所以设计了字段Data flag,操作流程如下:PC先把
21
电子科技大学硕士学位论文
需要向DSP传递的信息写到约定的DSP内存中.写完后,查看Data_flag的值, 当Data_flag为0X99时,表示DSP准备好了,于是把Dataflag改为OX00,告诉
DSP处理,发起PC.>DSP的中断.DSP收到断后,备份相应信息,然后把Data_Flag 改为0X99,表示备份完成. 用户信息区和通信区的字段在工程中以typedef的形式定义如下:
typedef stmct
PCMsg{
QUE__Elem queElem;
Bool Bool Uint8 short Uint8 Bool
IschOpen[4];//是否开启直通;l:开启直通;0:关闭
IsProcess[4];//是否进行运算;1:开启运算;0:关闭 IsRuleSetting;//是否进行规则设置,l,一通道……4,四通道
Pix
laction[16];//PC端传送的规则坐标点
IntSource;
NetBuf
ChanNo;//岿J断网络图像通道
Uint8*NetCurBufAdd[2];//络图像指针,指向当前最新的Net图像
Uint8 Data
flag;//此为DSP,Pc都可以读写.0x99,通知PC,DSP数据读取完毕 规则是否改变: 0/;egnahC.则规新有:l,没
Uint8 Is Rule Uint8 Rule
Type;//规则种类,l:画线,2:画区域
)PCMsg;//此PCIMsg由PC写,DSP读取 3.2.3.2.DSP信息区 DSP信息区是为PC端读出DSP处理结果而设计的.所以首要需要思考的是 DSP处理结果有哪些信息.因为DSP处理完一帧图像后,是一定要送回给PC的,
所以图像的起始地址,长度是必须要的.因为DSP与PC间的图像格式约定为ⅥⅣ
格式.于是就有T--个字段:*pBufStart Y,宰pBufStart_U,奉pBufStart_V,分别指 向Y,U,V分量的存放地址;另外的附加信息也是必须要有的,比如通道号chanNo,
数据长度BufLength.在监控系统中,报警的图像与未产生报警的图像的处理是不 一样的.基于这点设计了字段IsWam,IsWam为1时,表示有违规事件发生,此
时PC读取相关信息,而不用每一次都读取. DSP信息区的还负责部分与PC的通信,于是就产生了字段Data
Data Data
galF.此.
Flag与PC信息区的Data Flag不一样.当DSP处理完毕是时候,将会把
g改为P.0X99 处以可,帧前当了DSP已 alF.端C 了帧一下理 ,表示 完理处经
第三章DSP端和PC端框架设计
每隔一毫秒会对Data
进行查询,如果是 0X99 ,表示 DSP galf.一上了完理处经已
帧图像,等待PC读取处理结果了.PC读取后,PC端把Data flag改为0X00.
在工程上DSP信息区也是以typedef的形式定义如下:
typedef struct Uint8
PCReadDSPMsg{
分量
*pBufStart
8tn*pBufStart u;//u分量 iUV/JY__
Uint8 Uint8 Uint8 Uint32 Uint8 Bool *pBufStart
IsRuleSetting;//是否进行规则设置,1,一通道……4,四通道 chanNo;N通道号
BufLength;//数据长度
Data
Flag;//0X99:通

相关文档
相关文档 最新文档