基于NiosII软核的运动目标检测系统设计

黄粉虫筛选机  中图分类号:T N911.73  文献标识码:A  文章编号:1009-2552(2008)02-0127-03
基于Nios II软核的运动目标检测系统设计
闫 飞,胡宝霞,王彦田,赵 威
(哈尔滨理工大学计算机科学与技术学院,哈尔滨150080)
耐腐蚀泵技术摘 要:介绍了一种基于Nios II的运动视频检测片上系统,该系统通过采用软Π硬件协同设计的方法,使用Altera EP2C35FPG A芯片与H V7131R视频摄像头配合实现了高速的数字视频处理,选用S DRAM和F LASH作为视频数据的外部存储器,满足了运动检测和保存运动现场的需要。并且采用Verilog H D L和Nios II定制指令使用硬件实现了系统的大部分功能,提高系统的处理速度,同时具有良好的灵活性和适应性。
关键词:Nios II;H V7131R;S OPC;运动检测
Design of the motion detection on chip system based on Nios II
Y AN Fei,HU Bao2xia,WANG Y an2tian,ZHAO Wei
(College of Computer Science and T echnology,H arbin U niversity of Science and T echnology,H arbin150080,China) Abstract:This article describes a m otion detection on chip system based on Nios II core and hardware2s oft2 ware co2design method.In view of the requirements of m otion detection,this system im plements high speed digital video processing by using H V7131R video processing chips and Altera EP2C35FPG A with S DRAM and
F LASH as the outer mem ory to store video data.By using Verilog H D L and Nios II custom instruction,the
system design im proves the processing speed,and the system als o has g ood flexibility and adaptability.
K ey w ords:Nios II;H V7131R;S OPC;m otion detection
0 引言
由监控中心网络服务器和多台视频主机组成的监控终端与摄像头视频服务器进行网络互联所组成的基于Internet技术的ClientΠServer体系结构的传统数字监控系统软、硬件要求较高,且使用专业化,局
限了视频监控在孤立、分散以及对成本要求较苛刻的场合的应用。随着现场可编程逻辑门阵列(FP2 G A)的应用越来越广泛,基于FPG A的各种控制器也越来越丰富,特别是S OPC、Nios II技术[1]越来越成熟,合理有效地将各种模块无缝地连接到一起进行应用已成为一种趋势。本文就是在这样的背景下集成智能运动目标识别系统为一个片上系统,使得运动检测灵活应用成为可能。
1 系统设计原理
S OPC(S ystem On Program m able Chip,可编程的片上系统)是Altera公司提出来的一种灵活、高效的S OC解决方案。本运动检测系统的硬件框图如图1所示。
系统选用的FPG A芯片是美国Altera公司最新推出的Cyclone II系列的EP2C35。该芯片具有35000个逻辑单元、672个引脚、475个用户自定义IΠO接口、35个嵌入式乘法器和4个锁相环,是一个集成度极高和功能强大的FPG A芯片。在FPG A中设计有Nios II软核CPU和挂接在该Nios II系统的Avalon总线上的图像预处理模块、运动检测模块、Avalon三态桥、UART、LC D和通用并行接口等模块[2]。S DRAM则采用了MICRON公司的MT46V 16M16TG芯片,F LASH则采用了AM D公司的AM29LV128M芯片,并使用了NEC公司的N L2432DR22222B液晶显示屏,图像传感器是H V7131R图像传感器,系统工作过程:当开发板开始Π复位键按下,系统上电后,由Nios II通过Avalon 总线对I2C[3]配置的H V7131R图像传感器进行初始化,将H V7131R捕捉到的实时视频流传递给图像预处理模块;图像预处理模块将视频数据分两路进行处理:一路通过Avalon T ri2State Bridge传递给S DRAM
收稿日期:2007-09-21
作者简介:闫飞(1983-),男,哈尔滨理工大学硕士研究生,研究方向为E DA,嵌入式系统设计。
7
2
1
图1 运动检测系统的硬件框图
用于暂存供LC D 实时显示;另一路通过RG B ΠY UV
格式变换提取Y 分量,送入运动检测模块进行运动检测。运动检测模块根据运动检测算法判断所截取图像中是否有运动物体出现,若有则触发蜂鸣器报警,同时Nios II 通过控制总线将S DRAM 中的信息写入片外F LASH ,以保存现场图像;或通过UART 将数据传输给G PRS 终端,便于网络接收和自动报警。
2 系统的硬件设计
Nios II 软核、图像预处理、运动检测模块是系统
的核心模块。
为了满足系统实时性的要求,对于图像预处理模块中RG B ΠY UV Verilog 硬件描述语言设计,由硬件完成相应的功能,在Quartus II 平台上完成了系统的仿真、综合、映射、布局布线。在仿真结果正确后,通过器件编程(即通过编程器将设计下载到实际芯片中)进行系统调试,极大提高了系统的运行速度,充分利用了Cyclone II EP2C35的逻辑资源。2.1 图像预处理模块
本设计的图像预处理模块主要完成Nios II 对H V7131R 图像传感器的配置、图像高速采集、视频流中图像帧的截取、RG B ΠY UV 彩空间转换的功能。
H V7131R 是韩国现代公司采用0.3μm 工艺生
产的C M OS 传感器,其有效像素大于30万个,功率损耗低于90mW 。H V7131R 配置方便,可通过标准
的I 2
C 接口设置芯片内部的控制寄存器,控制图像的曝光时间、分辨率、帧率、RG B 增益、水平Π垂直镜像等。H V7131R 输出的是10位的RG B 原始数据,我们只使用其高8位。
为了完成实时图像的高速采集,在采集端加入一个自行设计的输入FIFO 控制接口IP 核,并且在NiosII 系统中加入Avalon DM A 控制器,形成以DM A 方式直接控制的FIFO 和S DRAM 之间的高速数据传输模式。该接口实现的功能是:当开始键按下时,根
据I 2
C 控制FIFO 开始、并连续保存T
动物胶配方整个过程D DAST A 端口的8位图像数据。当FIFO 存储的数据达到设定的容量阈值(本设计采用每秒钟所采集的视频容量作为阈值)时,FIFO 控制接口的dataavaible 有效信号经由Avalon 总线向DM A 控制器提出传送请求。DM A 控制器接受请求后,就直接控制数据从FIFO 控制接口的Readdata 端口写入S DRAM 。FIFO 控制接口设计完成后通过Quartus II 连接在Nios II 系统Avalon 总线上。
本设计采用每秒1帧的频率截取视频图像,每间隔一秒钟,DM A 控制器在将数据从FIFO 控制接口的Readdata 端口写入S DRAM 的同时将FIFO 中的第一帧图像送入RG B ΠY UV 彩空间变换模块,并保存入片内SRAM 以完成后续工作。
在运动检测算法中,由于视频数据中Y 分量是运动检测时最为敏感的分量,而做比较的两场抽样数据必须取自相同的场次,因此最多只需要存储一场有效行中的Y 分量数据,这样需要的实际存储容量为:720×288=207360Byte ,需要的SRAM 容量为256kByte 。所以图像帧在进入运动检测模块之前还需要进行RG B ΠY UV 彩空间变换,提取其中的Y 分量。根据如下RG B ΠY UV 彩空间变换公式:Y =0.299R +0.587G+0.114B ,利用Verilog 硬件描述语言设计变换模块,采用硬件实现提升系统速度。2.2 运动检测模块
近年来出现了许多新的运动检测算法,但可以
归结为以下四大类[4]
:光流场分析算法、主动轮廓算法、统计模型算法以及帧差法。前三种方法与第四种方法相比,具有精度高定位准的优点。但算法的复杂性较高,目前难以在硬件平台上实现实时处理,因此,本系统采用了帧差法。帧差法是基于视频帧
8
21—
玻尿酸蚕丝面膜图像的变化分析,在连续的视频流中,图像若没有运动,连续帧之间变化很小,反之则会引起帧差。
本系统实现运动检测算法的具体流程如图2所示。系统一方面接收新的一帧FIFO 控制器中的图像送入RG B ΠY UV 变换模块进行Y 分量的提取,另一方面读取SRAM 中上一帧Y 分量数据,并将两者作绝对差值运算,当绝对差值大于某个阈值时,表明此时视频流帧间发生了变化,系统触发报警使能信号,打开蜂鸣器发出警报;同时Nios II 通过Avalon 总线控制S DRAM 将S DRAM 中的现场视频流数据保存入片外F LASH 中,记录现场
图2 算法的具体实现流程
本模块采用Verilog 硬件描述语言编写Nios II
的定制指令,可以将一个复杂的标准指令序列简化为一个用硬件实现的单一指令,从而简化系统软件设计并加快系统运行速度。在运动目标检测跟踪算法中,对运动图像的处理数据运算量大,循环数目多,使用定制指令完成许多循环内的数据处理,从而加速数据处理的速度。定制指令逻辑和Nios II 的连接在S OPC Builder 中完成。Nios II CPU 配置向导提供了一个可添加256条定制指令的图形用户界面,在该界面中导入设计文件,设置定制指令名,并分配定制指令所需的CPU 时钟周期数目。系统生成时,Nios II I DE 为每条用户指令产生一个在系统头文件中定义的宏,在C 应用程序代码中直接调用这个宏。2.3 Nios II 软核
NiosII 处理器系列是一个用户可配置的通用32位RISC 嵌入式软核处理器系列,根据系统实时性的要求选择快速型(Nios II Πf )Nios II 处理器。这是一种高性能软核,它的处理能力超过200MIPS ,需要占用1800个逻辑单元,完全与二进制代码兼容。在S OPC Builder 中对Nios II 进行定制同时在系统中集
成F LASH 、S DRAM 、自定义指令等[5]
,并生成本设计定制的Nios II 系统。
木纹扣板
3 系统软件设计
本设计的大部分模块都是由Verilog 硬件描述语言来设计,由硬件来完成实际功能的。整个系统软件所要作的工作就是协调各个模块统一工作,并且处理系统各模块所产生的中断,使系统统一高效的工作。系统的软件设计是以C 语言形式利用Al 2tera 公司的软件集成开发工具Nios II I DE 所提供的硬件抽象层(H A L )的函数的支持来完成编写的。系统启动后,进行初始化工作,初始化程序主要完成H V7131R 图像传感器的寄存器配置、初始化DM A 通道、清FIFO 控制接口的FIFO 缓冲器、检查系统外围组建等。随后系统进入实时图像采集和显示状态,DM A 控制器检测FIFO 状态,当检测到FIFO 可用时启动一次DM A 传输,通过LC D 控制模块进行LC D 实时显示。当开发板上检测键按下,系统启动运动检测模块的自定义指令进行运动检测。根据检测结果作出相应响应,启动蜂鸣器报警并保存现场视频图像,或者进行新一轮的运动检测直到取消检测。
4 结束语
本文的运动目标检测跟踪系统利用32位Nios Ⅱ软核处理器在CycloneII 系列的EP2C35芯片为核心的实验板上进行了软、硬件调试,大大减小了系统的体积,而且在PC 机上开发的程序可移植到Nios Ⅱ处理器上来实现片上系统。从而方便地把用户需要的接口和自定义逻辑加入到系统中去。而且利用Altera 公司提供的HardC opy 技术实现了FPG A 到ASIC 的无缝转化,有效缩短了开发周期,同时能够延长产品的生命周期,还可以不断地在原有产品的基础上进行升级设计。实验结果表明,该运动检测系统具有较强的稳健性和实时性,能够快速有效地检测出运动目标。此外本系统可以通过G PRS 接
口连接个人手机ΠPDA 作为智能家居安保系统,或者作为一个大型网络监控系统的终端使用,对于不同的需求只需在S OPC Builder 中进行定制即可。参考文献:
[1] 李兰英.NiosII 嵌入式软核S OPC 设计原理及应用[M].北京航
空航天大学出版社,2006.
[2] 周立功.S OPC 嵌入式系统基础教程[M].北京航空航天大学出
版社,2006.
[3] 汪方协,陈德为.I 2C 总线及其在电器、仪器控制方面的应用现
状[J ].自动化技术与应用,2005,24(7):56-60.
[4] 王长军.基于视频的目标检测与跟踪技术研究[D].博士论文,
浙江大学,2006.
[5] 李秀娟,刘宪伟.基于Nios II 的S OPC 系统开发与应用[J ].电子
技术,2007(3):57-58.
责任编辑:么丽苹地埋式消防栓
9
21—

本文发布于:2024-09-22 22:35:11,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/248551.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:系统   检测   运动   图像   模块   设计   硬件
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议