完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本文介绍了基于LEON3开源软核处理器的动态图像边缘检测SoC设计。
实验结果表明该SoC系统工作正常,可以实现每秒22~25帧,最佳分辨率为400×240和640×480的动态图像边缘检测功能,平均数据延时在70~80个系统时钟。系统具有很好的可移植性与可配置性,占用资源少,速度快,具有广泛的应用前景。 |
|
相关推荐
5个回答
|
|
边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中亮度变化明显的点。边缘检测是图像处理和计算机视觉中,尤其是特征提取中的一个研究领域。
本文采用局部熵边缘检测算法,将图像采集,边缘检测和图像显示三个部分封装设计为IP(Intellectual Property)核,通过AMBA APB总线嵌入到LEON3的经典SoC架构中。实现了多路数据并行处理和DSP模块加速处理,配合CPU软核的协调参数配置功能,可以充分发挥硬件设计的高速性和灵活性。此外,由于动态图像边缘检测是图像处理应用中必不可少的一部分,因此文中设计的动态图像边缘检测SoC可以方便的移植到其他图像处理应用中,具有广泛的应用前景。 |
|
|
|
SoC和LEON3开源软核处理器
SoC是系统级芯片的简称,系统不仅包含了处理器内核、存储器等硬件系统,同时还含有相应的嵌入式软件,是一个真正的软、硬件均具备的完整体系。利用SoC设计方法,可以将一个复杂的系统集成到单一芯片中,并具有低功耗,低成本及高速性的特点。与利用ASIC实现的SoC相比,利用FPGA实现的SoC具有可配置性的特点,因此具有更好的可扩展性和可移植性。 LEON3开源软核处理器是Gaisler Research公司提出的一款32位、符合SPARC V8结构的开源软核处理器。它具有高性能,低复杂性和低功耗的优点。另外,所有属于GRLIB的IP核及LEON3处理器的源代码在GNU GPL(GNU General Public License,GNU通用公共许可证)授权协议下,可以免费地应用于研究和教学目的,因此,LEON3开源软核处理器特别适合于SoC的开发设计。 |
|
|
|
SoC系统架构设计
通过分析系统的功能与要求,结合LEON3自身架构的特点,设计基于APB总线的动态图像边缘检测Soc系统架构如图1所示。自定义IP核为本设计的重点。在LEON3的SoC架构中,APB外围低速总线为一些低速模块提供了接口。若想要在APB总线实现动态图像的实时采集、处理和显示,就要想办法使采集到的数据不参与到总线传输中去。 图1基于APB总线的SoC架构实现框图 在本设计中,通过采用片上存储资源做FIFO的办法,使得摄像头采集到的数据得以缓存,最终在显示器上显示。在数据输出显示之前,可以选择是否经过图像边缘检测算法模块处理。若经过模块,则显示图像经过边缘检测后的结果;若不经过,则显示原始图像。 通过这种方法,避免大量图像数据参与AHB与APB总线之间的数据传输,以减少不必要的中间过程,提高数据的实时性。这样就避免了APB总线低速、低带宽与动态图像边缘检测系统高速、高带宽的矛盾。使得整个图像的数据流都在白定义IP核内部得到处理,这样既满足了APB总线的约束也实现了系统的功能需求。 |
|
|
|
动态图像边缘检测SoC的实现
本设计提出了一种集图像采集、存储、处理和显示于一个IP核的设计方法,也是动态图像边缘检测SoC设计的核心部分。 3.1局部熵算法的硬件实现 局部熵边缘检测算法的基本思想是:选择待处理像素点的8邻域,即以待处理像素点为中心的3×3窗口;再由局部熵的定义式(公式1)计算出图像3×3窗口的局部熵; 然后通过与给定的阈值进行比较,得到二值化图像,即可得出图像的边缘。硬件实现的处理过程为流水线方式,处理的对象为3×3大小的图像窗口。具体步骤如下: ①3×3窗口的产生。3×3窗口主要通过片上缓存和延时单元实现。图2是以经过3个时钟为例说明了同步产生3×3窗口中一行数据的过程。 图2同步数据的产生 ②熵值的计算。将步骤1中得到的3×3窗口的9个并行数据途经两路进行处理。对于3×3窗口,式(1)化简为式(2): 3×3窗口的9路并行数据,一边送去做并行相加求和,再求平方,作为除法运算的分母;同时把9个数据分别求平方,再求合,作为除法运算的分子。在做除法运算前,为确保其计算精度,要先将分子与分母转换成IEEE-745浮点数后再进行浮点除法运算。最后还要把除法运算的结算转换成整数,考虑到除法运算的结果可能小于1,于是在转换整数前放大1000倍,即保留3位有小数有效位,最后将转换后的整数输出,至此实现了局部熵值的计算过程。局部熵值计算的硬件处理流程如图3所示: 图3局部熵值计算流程示意图 ③阈值比较及二值化处理。②中已经得到了放大1000倍后的熵值,在这里只需通过一个比较电路,当熵值大于阈值时,输出0;当熵值小于阈值时,输出1.这样就得到一幅二值化后的边缘图像。至此,完成了整个局部熵边缘检测算法的硬件实现。 3.2自定义IP接口设计 自定义IP核包含以下几个主要部分:图像采集(D5M摄像头接口);图像制式转换;图像存储;图像显示(LTM显示接口);图像边缘检测模块;自定义寄存器。 图4给出了基于APB外围低速总线所设计的图像边缘检测IP核的外部接口信号图。由图中可知,此IP核的接口信号可分为: 图4用户定义图像边缘检测IP核接口 ①系统时钟与复位信号:是整个LEON3架构所共用的时钟信号和复位信号,而iCLK_50是由外部直接引入的频率为50MHz的时钟,未经过PLL处理。 ②IP核控制信号:主要实现IP核的触发功能和结束功能。 ③APB总线的输入信号和输出信号:此信号主要用于APB总线控制、IP核选择、IP核使能等,其中包括对IP核内部寄存器的设置都是通过APB总线信号来完成的。 ④D5M摄像头输入信号和输出信号:此信号主要完成对D5M摄像头的配置以及数据采集。 ⑤LTM显示器输入信号和输出信号:此信号用于对LTM显示器的配置。由于基于APB总线的IP核集成D5M摄像头、LTM显示器和边缘检测算法于一体,所以外部接口信号相对较多。但就APB总线本身而言,其信号并不多,这也是基于APB总线的设计方法相对简单的原因。 3.3自定义IP核的结构设计 有关“基于APB外围低速总线图像检测IP核的实现基本思想部分”略——编者注。 基于APB总线的IP核框架结构如图5所示。 图5用户定义图像边缘检测lP核结构 |
|
|
|
实验结果
4.1动态图像边缘检测算法硬件实现仿真与分析 文中首先利用Matlab验证局域熵边缘检测算法设计的正确性,然后采用Verilog HDL硬件描述语言编写图像边缘检测算法,在算法实现过程中,为提高算法的性能,采用了Quartus II中自带的DSP加速宏模块。同时,为验证仿真算法的正确性,编写Testbench系统测试文件,对其进行仿真验证,图6为局域熵边缘检测算法的硬件仿真时序图。 图6局域熵边缘检测算法硬件实现仿真时序图 从图6中,可以看到3×3窗口产生的过程,L1~L3为采用片上缓存的方法实现的三行数据的同步。X1~X9对应3×3窗口中的9个像素点。图中最终的数据输出是有一定时延的,这是由于算法中存在大量的乘加运算和浮点数运算造成的。 在实现算法的同时,考虑到所选芯片提供了可用于加速算术运算的DSP模块,于是为了加速算法的处理速度,在算法实现过程中,加入了大量的DSP加速处理模块,如乘加器,浮点除法器等。表1给出了用硬件语言实现上述算法所使用的芯片资源情况。表2给出了该算法对DSP加速模块的使用情况。 4.2动态图像边缘检测SoC系统性能测试 测试采用的硬件开发平台为FPGA CycloneIIEP2C70F896C6N,Quartus II版本为10.0(32位),LEON3开发包版本为grlib-gp1-1.0.22-b4095.zip.D5M摄像头工作在25MHz频率,所采集的图像分辨率为400×240,R、G、B每种色彩以10-bit二进制数据表示,D5M摄像头每秒采集22~25帧图像。LTM显示屏的显示分辨率为400×240,工作在33MHz频率。 表3为测试得到的片上资源使用情况。从其结果可以分析得到,文中设计的动态图像边缘检测SoC占据的片上资源在可以接受的范围内。 且由实际测试可知,在外界环境适中的条件下,系统可以得到很好的图像边缘检测效果。但由于图像的分辨率较大,而边缘检测算法中所采用的窗口为3×3,相对于图像来说较小,所以图像上的一些小的阴影区域也会被检测出来,形成阴影区域干扰,影响图像的边缘检测效果。但总体来说,实现了动态图像边缘提取的最终目的。 |
|
|
|
只有小组成员才能发言,加入小组>>
639 浏览 0 评论
1076 浏览 1 评论
2446 浏览 5 评论
2773 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2604 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
628浏览 9评论
624浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
751浏览 6评论
600浏览 5评论
647浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-2 21:24 , Processed in 1.089514 second(s), Total 87, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号