DSP+FPGA+ASIC设计的实时红外图像处理系统

DSP+FPGA+ASIC设计的实时红外图像处理系统,第1张

1.引言

本文针对红外图像处理系统的实时性要求,提出了基于DSP+FPGA+ASIC的图像处理架构。

随着红外焦平面阵列技术的快速发展,红外成像系统实现了高帧频、高分辨率、高可靠性及微型化,在目标跟踪、智能交通监控中得到了越来越多的应用,并向更加广泛的军事及民用领域扩展。实时红外图像处理系统一般会包括非均匀校正、图像增强、图像分割、区域特征提取、目标检测及跟踪等不同层次的实时图像处理算法,由于图像处理的数据量大,数据处理相关性高,因此实时红外图像处理系统必须具有强大的运算能力。目前有些红外图像处理系统使用FPGA实现可重构计算系统[1],运算速度快,但对于复杂算法的实现难度比较高,且灵活性差。大多数红外图像处理系统则采用DSP+FPGA的硬件架构[2],其中DSP负责实现图像处理算法,FPGA负责实现各种接口电路,但诸如图像多级滤波等处理算法复杂度高,只使用DSP处理会耗费大量时间,一般采用并行多DSP系统以满足实时性要求[3],但系统比较复杂,体积和功耗也不好控制,实现成本高。因此需要在硬件结构上合理分配处理任务,比如FPGA可以完成输入图像的预处理工作,减轻DSP的负担,本实验室自主研制的ASIC芯片可以对输入红外图像进行多级滤波处理,进一步解放DSP。

2.实时红外图像处理系统

   由于实时红外小目标检测算法的前端处理数据量大、实时性强且算法复杂度高,我们的系统结构需要保证灵活性,能够适应各种复杂的算法,同时又要保证高速处理能力,因此实时红外图像处理系统采用DSP+ FPGA+ASIC的架构来满足设计的要求。其中,DSP具有高度的可编程性,可以完成比较复杂的任务。FPGA的处理速度稍逊于ASIC,但具有一定的灵活性,它可以实时接收红外小目标检测算法前端的数据,完成输入图像的一些预处理工作。ASIC芯片处理速度快、性能强且可靠性好,可以完成图像滤波等特定的任务。

  FPGA采用ALTERA公司的StraTIx系列的EP1S10芯片。该芯片提供多达10,570个逻辑单元(LEs),存储器容量为920,448016 bits,同时提供了高速DSP模块以及乘法器,专用乘法器适合于作协处理器,可以分担DSP复杂和耗时的算术运算,提升系统的性能。

   DSP选用TI公司的TMS320C6414芯片[4]。该芯片主频为600MHz,数据处理能力峰值可达4800MIPS(每秒48亿条指令)。由8个相互独立的功能单元构成。包含两组通用寄存器组,每组含有32个32位寄存器。片内采用2级存储器结构。

   ASIC使用本实验室自主研制的多级滤波芯片[5]。该芯片采用SMIC 0.35?m工艺,芯片内部工作频率可达50MHz。有三个数据通道,分别级连不同数量的1*3基本滤波模板,每路数据通道采用流水线结构。采用定点运算,计算精度为8位二进制小数,可处理位宽为8-16位的数据,吞吐量为5M-10M像素/秒,支持128*128,256*256,320*240三种帧格式的图像滤波。

3.处理任务的合理分配

   红外探测器输出图像数据到信号处理板,先进入FPGA进行预处理,预处理包括非均匀性校正和图像增强等。ASIC对输入图像数据进行多级滤波处理。FPGA在后续算法中也能协同DSP工作,算法中对运行速度要求很高,而算法结构不太复杂的处理均可在FPGA 中实现,从而使得该FPGA 成为DSP 的协处理器。经过预处理后的红外图像数据输出到DSP中进行后续算法处理,DSP的处理包括红外潜在小目标检测算法。DSP 处理后的潜在小目标和图像数据通过FPGA传输到DPRAM中存储。

   该实时红外图像处理系统主要由三部分组成:FPGA模块,DSP模块和ASIC模块。在满足红外图像数据处理的实时性和高速可靠性要求的前提下,各处理模块所处理的任务要尽量达到平衡。

   从资源角度看,算法用硬件处理速度快,占内存空间小,但灵活性差;用软件刚好相反,处理速度慢,但灵活性好。由于设计要满足实时性要求,希望硬件承担的任务越多越好。PGA作为一种可编程的硬件资源,虽然它有相当强的设计灵活性,但是考虑到设计、实现调试的难度,不适合做全局、复杂的 *** 作。ASIC芯片处理速度快,但灵活性差,只适合处理一些特定的占用大量处理器资源的运算。DSP作为软件资源,特点是灵活性好,适合复杂的算法,但速度慢。

   从算法角度考虑,一个完整的算法在处理上是有层次的,算法对原始数据的 *** 作是简单的、规则的,对后续数据的处理往往比较复杂,同时算法在实现前会被预先分成几个相互独立的功能模块。因此低层的、简单的 *** 作可以由FPGA中的逻辑单元模块或ASIC芯片硬件来完成,高层的、复杂的 *** 作则由DSP软件来完成。

   根据上述分析,本设计中FPGA主要完成与各个外部设备的接口控制逻辑,同时完成一些数据量大、运算结构简单、速度要求高的算法;DSP完成后续结构复杂的目标检测算法;ASIC芯片对输入图像进行多级滤波处理。此方案保证了系统有足够的处理速度,能够达到红外图像处理系统的实时性要求。

  3.1 FPGA模块

   FPGA内部逻辑结构框图如图2所示。 图2 FPGA内部逻辑结构框图

   FPGA主要完成以下几方面的工作:图像数据接收逻辑,图像数据预处理模块,输入缓存FIFO,DSP接口控制逻辑,ASIC接口控制逻辑,DPRAM接口控制逻辑,算法处理模块。

   (1) 图像数据接收逻辑:根据探测器输出的数字视频信号的场同步,行同步以及时钟信号,发送控制信号接收图像数据。

   (2) 图像数据预处理模块:对接收的图像数据进行非均匀性校正和图像增强等预处理。

   (3) 输入缓存FIFO:由FPGA内部配置输入缓冲存储器FIFO。预处理后的图像数据可以连续不间断地写入FIFO中,以供DSP读取进行后续的图像处理。

   (4) DSP接口控制逻辑:DSP 接口时序控制逻辑必须严格按照TMS320C6414的EMIFA可编程同步接口的时序来编写,并且满足相应的建立保持时间要求。DSP启动EDMA通道读取红外图像数据,通过FPGA的内部FIFO进行连续的图像传输。

   (5) ASIC接口控制逻辑:按照ASIC芯片的时序编写其控制逻辑,将图像数据导入ASIC芯片进行图像多级滤波处理。

   (6) DPRAM接口控制逻辑:编写DPRAM的控制逻辑,将DSP 处理后的数据通过FPGA传输到DPRAM中存储。  

   (7) 算法处理模块:根据具体算法的需要,协同DSP完成算法中速度要求高,结构不太复杂的运算。

  3.2 DSP模块

  DSP主要完成红外小目标的检测和跟踪算法,功能如下:

   (1) 启动EDMA通道不断读取FPGA输出的红外图像数据。

   (2) 对输入的红外图像数据,运行目标检测和跟踪算法,检测运动目标,并确定其方位。

   (3) 与FPGA建立连接,将算法中比较规则的运算交给FPGA处理。

   (4) DSP将处理后的运算结果通过FPGA传输至DPRAM中存储。

  3.3 ASIC模块

   ASIC芯片从FPGA中接收预处理后的图像数据进行处理,处理后的三路数据同步写入内部三个同步FIFO,DSP可以根据需要选择输出多级滤波处理后的结果,进行后续算法的处理。

4.实验结果与分析

  实时红外图像处理板已成功应用于多个红外探测系统中,效果良好。图3为实验时采用   高德IR108D探测器获得的原始红外图像,图4为经过多级滤波处理后标识的图像,图5为经过目标检测算法处理后输出的跟踪图像。可以看到,该系统能够实时检测并跟踪红外图像中的运动小目标。 图3 原始红外图像 图4 多级滤波处理后标识的图像 图5 目标跟踪图像

5.结语

  本文使用高性能的DSP(TMS320C6414),可编程逻辑器件FPGA(StraTIx系列的EP1S10) 和专用ASIC多级滤波芯片,提出了DSP + FPGA + ASIC的图像处理平台架构,设计了处理能力强、接口可靠稳定的红外图像处理系统,并在系统中实现了非均匀性校正、小目标检测等算法。实验测试表明,该实时红外图像处理系统对每场320×240有效像素,每个像素14bit,场频50Hz的输出数字视频信号能够进行实时处理,对视场中的运动小目标完成检测和跟踪功能,满足系统主要性能指标要求,成功应用于红外探测系统中。

   本文作者创新点:采用自主研制的ASIC芯片对红外图像进行多级滤波处理,速度快,可靠性好,为DSP后续的目标检测跟踪算法节约时间。

  参考文献:

   [1] L.Kessal, N.Abel, D.Demigny. Real-TIme image processing with dynamically reconfigurable architecture[J]. Real-Time Imaging, 2003,9:297-313.

  [2] 应家驹,何永强. 基于DSP和FPGA的超大视场红外目标检测图像处理系统设计[J]. 微计算机信息,2006,22(3-2):161-165.

  [3] 颜露新,张天序,邹胜,钟胜. 用FPGA实现互联的多DSP并行系统结构[J]. 系统工程与电子技术, 2005,27(10):1757-1759.

  [4] TMS320C6414, TMS320C6415, TMS320C6416Fixed-point Digital Signal Processors[R]. Texas Instruments Inc., 2003.

  [5] 陈朝阳,孙剑伟,郑兆青,张天序. 多级滤波算法的ASIC实现[J]. 华中科技大学学报, 2006, 34(2):4-7.

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2438908.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-03
下一篇 2022-08-03

发表评论

登录后才能评论

评论列表(0条)

保存