基于机器视觉的车道偏离预警系统的实现
时间:01-31
来源:作者:国防科技大学 陈清阳 李健 安向京 贺汉根
点击:
首先,前端的采集模块输出的图像数据是 8 位的,而对于我们采用的SDRAM 存储芯片和DSP 处理芯片,数据总线都是64 位的。为了不造成资源的浪费,在FPGA 对图像进行预处理的过程中,我们同时将8 位的图像数据拼接成64 的数据输出,这样可充分利用系统的资源。
其次,在 FPGA 中经过一系列并行预处理的图像数据,存储于FPGA 内部开辟的FIFO中。FPGA 给出握手信号,通知DSP 可以开始由FIFO 向SDRAM 传输数据,数据的传输过程则完全由DSP 通过EDMA 传输方式来控制完成。当核心处理器DSP 完成当前操作的情况下,再从SDRAM 中读入最新的数据进行处理,这可充分利用DSP 芯片丰富的外设资源。
同时,由图 3 的数据流图我们发现数据在由FPGA 向SDRAM 传输的过程中,相对于DSP 来说,FPGA 中开辟的用来存储数据的FIFO 模块和外部主存储器SDRAM 模块是挂接于DSP 上的相同的地址总线和数据总线上的,在这种源设备和目的设备挂接于相同外部总线上的传输形式下,我们采用的DSP 芯片支持一种优化的EDMA 传输模式-PDT 传输,它优化了数据的传输过程,使得DSP 的EDMA 传输模式可在数据不经过DSP 内的缓存区的情况下,直接由源设备FIFO 传输到目的设备SDRAM 中,从而可在一个周期内完成数据的传输。相比于传统的传输模式,先由FPGA 传输到DSP 内部的缓存区,再由DSP 写入到SDRAM 中,PDT 传输模式基本上可缩短一半的数据传输时间,对于像图像这样的大容量数据传输来说,是具有非常大的意义的。
完成了前端预处理模块到主存储器 SDRAM 的数据搬移过程,接下来主要是后端的高速数据传输过程。DSP 与SDRAM 之间的数据传输可达到100MHz 以上的高速速率,尤其是DSP 支持的EDMA 传输方式,更是允许不在CPU 干涉的情况下,就可完成外部数据与DSP 内部的Cache 之间的传输,这样可提高CPU 工作的效率。另外,DSP 芯片内部有两级的缓存,第二级缓存L2 更是可达到1MB,因此我们考虑采用现在流行的ping-pong 传输方式,当CPU 在处理缓存中的ping 或pong 内部的数据时,在可以预测剩余处理时间的前提下,我们可预先将接下来要处理的数据通过EDMA 方式传输到对应的pong 或ping 存储区中,这样便将数据传输的时间蕴含在了处理过程中,节省了相应的传输时间,提高了效率。
综合了上面对整个数据传输流程的分析,我们可以得出如图4 所示的数据搬移过程。由图中可以看出,从Sensor 出来的数据到FPGA 中的预处理,与DSP 内部的数据处理过程,在SDRAM 的缓存处理下,是可以以流水线的方式传输处理的,FPGA 作为前端预处理模块,完成大容量数据的处理过程,对于系统效率的提高具有非常大的作用。
3、系统软件算法
关于前端图像预处理方法及车道偏离决策算法的介绍性文章比较多[2][3][4],在本文中就不做过多的描述,主要的实现流程如图5所示。通过 [2]中的一些典型算法,我们验证了本文所设计的汽车主动安全系统是完全满足汽车驾驶这种应用条件下的实时性要求的,而且该系统是具有较强的扩展性的。
4、结论
本文详细介绍了一套基于 DSP 计算和FPGA 逻辑计算的车道偏离预警系统的实现方案,主要解决了大容量图像数据在系统中的高速传输和存储、处理等。在设计的过程中,本文充分运用了FPGA 的逻辑资源对底层视觉算法的适应性及DSP 芯片的高速处理能力来满足高层的串行度高的视觉算法。通过一系列的实验,验证了该系统满足汽车安全这种应用背景下的高实时性要求。
本文创新点:
(1) 结合驾驶员、汽车与道路环境的关系,模拟人的驾驶行为来设计汽车主动安全系统,在系统设计的原理上更有现实意义;
(2) 针对计算机视觉系统设计中对多个层次算法的适应性,采用DSP 计算和FPGA 逻辑计算相结合的方式,满足系统算法各个层次的要求;
(3) 对计算机视觉系统中数据传输、存储和处理的流程进行了详细的分析,采用优化的EDMA 传输方式-PDT 来满足系统实时性的要求;
参考文献
[1] 李健.可重构并行中低层视觉计算结构研究[D].湖南:国防科学技术大学工学硕士学位论文,2006
[2] 吴沫.基于计算机视觉的车辆跑偏告警系统方法研究[D].湖南:国防科学技术大学工学硕士学位论文,2005
[3] 张洪涛,地面机器人结构光道路识别方法的研究[J],微计算机信息,2005,21-4,15-17
[4] 裘伟. 高速公路车道偏离告警系统的研究[D]. 湖南:国防科学技术大学工学硕士学位论文,2006
(发布者:chiying)
其次,在 FPGA 中经过一系列并行预处理的图像数据,存储于FPGA 内部开辟的FIFO中。FPGA 给出握手信号,通知DSP 可以开始由FIFO 向SDRAM 传输数据,数据的传输过程则完全由DSP 通过EDMA 传输方式来控制完成。当核心处理器DSP 完成当前操作的情况下,再从SDRAM 中读入最新的数据进行处理,这可充分利用DSP 芯片丰富的外设资源。
同时,由图 3 的数据流图我们发现数据在由FPGA 向SDRAM 传输的过程中,相对于DSP 来说,FPGA 中开辟的用来存储数据的FIFO 模块和外部主存储器SDRAM 模块是挂接于DSP 上的相同的地址总线和数据总线上的,在这种源设备和目的设备挂接于相同外部总线上的传输形式下,我们采用的DSP 芯片支持一种优化的EDMA 传输模式-PDT 传输,它优化了数据的传输过程,使得DSP 的EDMA 传输模式可在数据不经过DSP 内的缓存区的情况下,直接由源设备FIFO 传输到目的设备SDRAM 中,从而可在一个周期内完成数据的传输。相比于传统的传输模式,先由FPGA 传输到DSP 内部的缓存区,再由DSP 写入到SDRAM 中,PDT 传输模式基本上可缩短一半的数据传输时间,对于像图像这样的大容量数据传输来说,是具有非常大的意义的。
完成了前端预处理模块到主存储器 SDRAM 的数据搬移过程,接下来主要是后端的高速数据传输过程。DSP 与SDRAM 之间的数据传输可达到100MHz 以上的高速速率,尤其是DSP 支持的EDMA 传输方式,更是允许不在CPU 干涉的情况下,就可完成外部数据与DSP 内部的Cache 之间的传输,这样可提高CPU 工作的效率。另外,DSP 芯片内部有两级的缓存,第二级缓存L2 更是可达到1MB,因此我们考虑采用现在流行的ping-pong 传输方式,当CPU 在处理缓存中的ping 或pong 内部的数据时,在可以预测剩余处理时间的前提下,我们可预先将接下来要处理的数据通过EDMA 方式传输到对应的pong 或ping 存储区中,这样便将数据传输的时间蕴含在了处理过程中,节省了相应的传输时间,提高了效率。
综合了上面对整个数据传输流程的分析,我们可以得出如图4 所示的数据搬移过程。由图中可以看出,从Sensor 出来的数据到FPGA 中的预处理,与DSP 内部的数据处理过程,在SDRAM 的缓存处理下,是可以以流水线的方式传输处理的,FPGA 作为前端预处理模块,完成大容量数据的处理过程,对于系统效率的提高具有非常大的作用。
3、系统软件算法
关于前端图像预处理方法及车道偏离决策算法的介绍性文章比较多[2][3][4],在本文中就不做过多的描述,主要的实现流程如图5所示。通过 [2]中的一些典型算法,我们验证了本文所设计的汽车主动安全系统是完全满足汽车驾驶这种应用条件下的实时性要求的,而且该系统是具有较强的扩展性的。
4、结论
本文详细介绍了一套基于 DSP 计算和FPGA 逻辑计算的车道偏离预警系统的实现方案,主要解决了大容量图像数据在系统中的高速传输和存储、处理等。在设计的过程中,本文充分运用了FPGA 的逻辑资源对底层视觉算法的适应性及DSP 芯片的高速处理能力来满足高层的串行度高的视觉算法。通过一系列的实验,验证了该系统满足汽车安全这种应用背景下的高实时性要求。
本文创新点:
(1) 结合驾驶员、汽车与道路环境的关系,模拟人的驾驶行为来设计汽车主动安全系统,在系统设计的原理上更有现实意义;
(2) 针对计算机视觉系统设计中对多个层次算法的适应性,采用DSP 计算和FPGA 逻辑计算相结合的方式,满足系统算法各个层次的要求;
(3) 对计算机视觉系统中数据传输、存储和处理的流程进行了详细的分析,采用优化的EDMA 传输方式-PDT 来满足系统实时性的要求;
参考文献
[1] 李健.可重构并行中低层视觉计算结构研究[D].湖南:国防科学技术大学工学硕士学位论文,2006
[2] 吴沫.基于计算机视觉的车辆跑偏告警系统方法研究[D].湖南:国防科学技术大学工学硕士学位论文,2005
[3] 张洪涛,地面机器人结构光道路识别方法的研究[J],微计算机信息,2005,21-4,15-17
[4] 裘伟. 高速公路车道偏离告警系统的研究[D]. 湖南:国防科学技术大学工学硕士学位论文,2006
(发布者:chiying)
- 车道偏离报警(ldw)系统技术(10-03)
- 另类传感器观念:汽车传感器(11-30)
- 汽车内部噪声智能控制系统的设计(11-28)
- 电源分配结构的三大转变为电源管理技术开创新局面(01-10)
- 基于MCU和DSP的步进电机控制技术(01-10)
- 采用DSP免提开发平台的车载信号处理与音频系统(01-24)