基于DSP的图像型火灾探测技术研究
DM642具有64个独立通道的EDMA(扩展的直接存储器访问)控制器,负责片内L2与其他外设之间的数据传输。容量较大的两级缓存和EDMA通道是DM642高性能的体现之一,若能合理使用和管理,将能大幅度提高程序的运行性能。它带有3个可配置的视频端口,提供与视频输入、视频输出以及码流输入的无缝接口。这些视频端口支持许多格式的视频输入/输出,包括BT.656,HDTVY/C,RGB以及MPEG-2码流的输入。DM642的其他外设包括:10/100Mb/s的以太网口(EMAC)、多通道音频串口(McASP)、外部存储器接口(EMIF)、主机接口(HPI)、多通道缓冲串口(McBSP)以及PCI接口等。
2.2 DSP视频处理开发平台
本文用于DSP开发的平台SSD-DM642Ver2.0(见图1)是索思达公司出品的基于TM320DM642一款可用于多路视频监控、视频服务器、数字视频录像机等场合的嵌入式平台。
2.3 集成开发环境CCS
采用由TI公司推出的用于开发DSP芯片的集成开发环境CCS(CodeComposerStudio)。它采用Windows风格界面,集编辑、编译、链接、软件仿真、硬件调试以及实时跟踪等功能于一体,极大地方便了DSP芯片的开发与设计,是目前使用最为广泛的DSP开发环境之一。CCS有两种工作模式,即软件仿真器和硬件在线编程。软件仿真器工作模式可以脱离DSP芯片,在PC上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。硬件在线编程可以实时运行在DSP芯片上,与硬件开发板相结合进行在线编程和调试应用程序。利用CCS集成开发软件,用户可以在一个开发环境下完成工程项目创建、程序编辑、编译、链接、调试和数据分析等工作环节。使用CCS开发应用程序的步骤为:
(1)打开或创建一个工程项目文件(project),包括源程序(C或汇编)、目标文件、库文件、链接命令文件和包含文件。
(2)编辑各类文件。可以使用CCS提供的集成编辑环境,对头文件(*.h文件)、链接命令文件(*.cmd文件)和源程序(*.c,*.asm)进行编辑。
(3)对工程项目进行编译。如出现语法错误,将在构建(Build)窗口中显示错误信息。用户可以根据显示的信息定位错误位置,更改错误。
(4)对结果和数据进行分析和算法评估。用户可以利用CCS提供的探测点、图形显示、性能评价等工具,对运行结果、输出数据进行分析,评估算法性能。主程序流程如图2所示。
3 基于DM642的嵌入式图像型火灾探测系统实现
根据防火规范和系统的功能要求,相应的火灾探测报警和灭火系统软件也应具有如下特点:
实时性火灾报警系统是一个实时控制系统,对于系统响应时间要求较高,所以对应用软件的执行速度有一定的要求,即能够在采集现场数据后,在允许的时间间隔内,及时对数据进行计算、处理、并做出正确判断,对系统进行控制。
灵活性和通用性为了节省内存和具有较高的适应能力,软件采用模块化结构,在编写程序的时候,采用自顶向下的分析方法,将整个软件系统划分为若干个软件功能模块,然后针对每一个功能模块编写子程序。以后如果需要添加功能或修改现有功能,只需要添加或修改子程序即可。
本文利用SSD-DM642Ver2.O评估板卡为开发研究平台,对图像型火灾系统做进一步的软件开发的研究。
软件系统的总体框架如图3所示。
各个系统的子模块是在主系统控制模块的控制和管理监督下协调工作的。系统的工作流程图如图4所示。
(1)系统加电开始运行,运行系统初始化模块,设定寄存器初始值,进行存储器的映射,建立系统工作的环境。
(2)运行图像采集模块,采集连续帧图像,寻找背景图像,存储背景图像,并进行图像动态比。
(3)运行图像处理火灾识别模块,对可疑目标进行图像处理、特征提取,并把提取的特征与预设的阈值DT比较,若小于门限阈值DT,则可以认为是其他干扰信号,从而跳转到第二步,继续监视。
(4)若提取的特征值超过预设门限,就确认为火灾发生。
4 实验结果
在充分了解系统运行方式和对算法的Matlab仿真无误的情况下,进行图像型火灾识别算法的DSP实现。由试验的结果(见图5)来看,取得了较为理想的运行结果,为算法的进一步实际应用打下了良好的基础。
5 结语
研究了基于DSP的图像型火灾探测技术开发的基本流程,并结合自适应图像型火灾探测算法,利用开发板对算法进行了验证,下一步将经过编译的代码利用代码优化器进行优化,提高代码效率,并且开始研究DSP硬件设计问题。
- 基于DSP/BIOS大空间网络型火灾探测系统设计(07-29)
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)