基于SURF算法的图像特征点检测系统

Python on Everything 创意硬件项目挑战赛作品 | 嵌入式视觉

TMXK   项目发起人  08-17

软硬件协同设计的方案,在ZYNQ平台上实现了基于SURF硬件IP的系统硬件设计,并系统硬件上搭建嵌入式Linux系统,最后使用QT和opencv搭建了一个视频采集-图像处理-显示的平台,实现了一个基于SURF特征提取算法的实时的图像特征点检测系统。

项目详情

项目创意灵感
图像特征提取和描述一直是计算机视觉研究的热点,近年来FPGA因其硬件电路的可编程性在图像算法加速中被广泛应用。使用FPGA的优势在于可以实现算法并行计算,从而大幅度提高算法速度。
设计特色创新
1、 对SURF特征提取算法进行优化加速,对于分辨率为640*480的图像处理速度可达270fps;
2、 使用软硬件协同设计的方案,在基于SURF IP的硬件系统上搭建嵌入式Linux,实现实时性、低功耗、可移植性高和具有实际应用价值等特点的SURF图像特征点检测系统。
系统原理功能
在ZYNQ的PL端主要是SURF算法模块的实现,其包括图像积分模块、缓冲模块、Hessian矩阵计算模块和非极大值抑制模块。利用vivado将设计的SURF加速电路封装成SURF IP,然后在利用xilinx的 video DMA等其他IP组成基于SURF IP的图像处理硬件系统,在该硬件系统上搭建Linux,编写相应驱动,最后利用Qt和Open-cv搭建了一个视频采集-图像处理-显示的平台,该平台可是实现图像、视频特征点检测,图像匹配
完成情况概述
SURF IP:LUT消耗37952个,BRAM使用68个,寄存器消耗29165个,与其他相关文献对比,在相同硬件平台上实现的SURF算法,本设计在减少逻辑消耗方面有显著提高,且处理速度也有很大的提高:最高工作时钟可达100MHz,以270fps的速度处理。
多功能图像特征点检测平台共有三个功能,(a)实现了SURF图像特征点检测的功能。(b)实现了Brief描述和Hamming Distance的图像匹配,匹配精度高误配率小。(c)实现了视频流特征点的提取,达到了实时提取的效果。
项目采用平台:

我要评价

  • 搞这个的同学们,可不可以留个QQ交流一下

    时间:09-25 0
  • 我看你只是实现了检测。没有匹配和描述哎

    时间:08-18 0
  • 你好,你的surf整个的检测,提取,计算,都是用vhdl或者Verilog写的吗。我之前在Xilinx上做了ORB特征提取,先做fast检测,然后BRIEF提取。由于BRIEF提取,生成的算法,感觉比较难。用vhdl写非常麻烦, 就没有完整的实现ORB算法,只实现了一部分。请问能不能具体交流一下,我研究生方向也做这一块,你借助opencv这一块没有。

    时间:08-18 0