0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ORB_FPGA单层图像金字塔的ORB特征提取方案分析

454398 来源:PYNQ开源社区 作者:PYNQ开源社区 2020-09-26 11:43 次阅读

ORB特征是一种图像识别、追踪和匹配中常用的特征,大名鼎鼎的ORB-SLAM就是使用的这一特征。它提取FAST特征点,并通过特征点附近的窗口矩计算特征点的方向,含方向的FAST特征也被称为oFAST特征。对提取到的oFAST特征,进一步计算BRIEF描述子。ORB特征包含了两部分,一是特征点位置,二是它的BRIEF 256位描述子。

ORB特征计算的流程

本项目实现了ORB_FPGA单层图像金字塔的ORB特征提取,利用FPGA的并行计算能力,使这一过程比起纯CPU执行加速了5.6倍。

加速器结构,输入输出都是AXI-Stream接口

上图为图像加速部分的工程示意图。这里同样使用了HLS编写的加速IP采用AXI-Stream数据接口,数据接口与DMA首尾相连,只要控制DMA就可以驱动它。

总体工程

本项目的例子输入是SD卡中保存好的图片,当然也可以自己从摄像头读取图片。

快速开始

运行下面这条命令即可快速安装:

sudo pip3 install git+https://github.com/Siudya/ORB_FPGA.git

项目演示

安装好以后打开ORB_FPGA/ORB_FPGA..ipynb

首先是初始化软硬件,并且读取图片。注意读取进来的图片要拷贝到xlnk分配的内存才可以使用DMA传输。

将图片从两个输入DMA写到加速器中再从输出DMA读回。统计收到的字节数可以得知1914个特征点被检测到了。

这里可以打印前两个特征点的内容。可以看到前8个32位数是描述子,后两个是坐标。

把特征点画在原来的图像上,可以看到检测出的特征点大部分是角点和边缘点。这实际上和FAST特征是一致的,但是FAST特征不包含描述子。

接下来读取更多图片来看看吞吐量如何。这里读取了20张图片,统统送入加速器加速,可以看到帧数可以达到56帧。

项目中也提供了纯软件测试的可执行程序,可以直接运行。

可以看到在O2优化的条件下,PS端运行相同算法仅仅只有10.2帧,使用硬件加速器加速达到了5.6倍之多。

编辑:hfy


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1635

    文章

    21834

    浏览量

    608189
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10944

    浏览量

    213849
  • 图像识别
    +关注

    关注

    9

    文章

    524

    浏览量

    38534
  • orb
    orb
    +关注

    关注

    0

    文章

    21

    浏览量

    9947
收藏 人收藏

    相关推荐

    VirtualLab:基于衍射的计量和表征技术

    金字塔波前传感器的仿真 本用例展示了使用VirtualLab Fusion的场追迹技术对反射金字塔波前传感器进行建模的过程。针对不同类型的一阶像差计算得到的特征图案。 傅科刀口检验的建模 福柯刀口试验是一项著名的历史试验,用
    发表于 02-20 08:53

    VirtualLab案例:基于衍射的计量和表征技术

    金字塔波前传感器的仿真 本用例展示了使用VirtualLab Fusion的场追迹技术对反射金字塔波前传感器进行建模的过程。针对不同类型的一阶像差计算得到的特征图案。 傅科刀口检验的建模 福柯刀口试验是一项著名的历史试验,用
    发表于 01-20 10:19

    VirtualLab Fusion案例:反射式金字塔波前传感器的仿真

    摘要 与传统的夏克-哈特曼传感器相比,使用金字塔形棱镜或反射器的波前传感器(PyWFS,用于金字塔波前传感器)具有高对比度和更好的波前灵敏度,例如用于天文学中太阳系外行星的搜索。因此,这种类型的波前
    发表于 01-17 09:51

    反射式金字塔波前传感器的仿真

    摘要 与传统的夏克-哈特曼传感器相比,使用金字塔形棱镜或反射器的波前传感器(PyWFS,用于金字塔波前传感器)具有高对比度和更好的波前灵敏度,例如用于天文学中太阳系外行星的搜索。因此,这种类型的波前
    发表于 01-07 08:54

    使用机器学习改善库特征提取的质量和运行时间

    基于静态时序分析(STA)的现代设计流程非常依赖标准单元、IO、存储器和定制模块的特征化Liberty模型。高效、准确的库特征提取是全芯片或模块级设计流程的关键步骤之一,因为它能确保所有库单元在所
    的头像 发表于 12-26 11:15 260次阅读
    使用机器学习改善库<b class='flag-5'>特征提取</b>的质量和运行时间

    谈谈PCB工程师金字塔分级标准

    印刷电路板(PCB)工程师是电子行业中至关重要的角色,他们的工作直接关系到电子产品的质量和性能。为了明确不同PCB工程师的技能水平和职责范围,行业内形成了金字塔分级标准。下面将谈谈这个金字塔的分级标准。
    的头像 发表于 12-25 10:02 375次阅读

    FPGA图像处理领域的优势有哪些?

    单元和可编程互联线,可以实现高度并行的数据处理。在图像处理任务中,如图像预处理、特征提取图像识别等,需要大量的计算任务。FPGA可以通过并
    发表于 10-09 14:36

    图像识别算法的核心技术是什么

    图像识别算法是计算机视觉领域的一个重要研究方向,其目标是使计算机能够像人类一样理解和识别图像中的内容。图像识别算法的核心技术包括以下几个方面: 特征提取
    的头像 发表于 07-16 11:02 842次阅读

    图像识别技术的原理是什么

    值化、滤波、边缘检测等操作。这些操作可以提高图像的质量,减少噪声,突出图像特征,为后续的特征提取和分类器设计提供基础。 1.1 去噪 去噪是去除
    的头像 发表于 07-16 10:46 1649次阅读

    opencv的主要功能有哪些

    :OpenCV提供了丰富的图像处理功能,包括图像的读取、显示、保存、转换等。此外,OpenCV还支持图像的滤波、边缘检测、形态学操作、图像金字塔
    的头像 发表于 07-16 10:35 2012次阅读

    ESP8266是否能实现金字塔式的Wifi级联?

    最近项目多个节点连网,想请教一下ESP8266是否能实现金字塔式的Wifi级联。 具体构想如下: 1. 第一层 工作节点层。工作节点都设置成STA模式,以最多32个节点(是不是最多32个?)为一组
    发表于 07-10 06:04

    基于深度学习的鸟类声音识别系统

    ,并在该结构中加入了金字塔分割注意力(PSA)模块,以提高网络对空间信息和通道信息的尺度提取的适应性。为了提高模型对全局信息的细化能力,在Bneck模块中引入了通道注意机制和普通卷积,使Bneck模型
    发表于 05-30 20:30

    基于FPGA的实时边缘检测系统设计,Sobel图像边缘检测,FPGA图像处理

    的主要特征提取手段 。由于实时视频图像的边缘检测需要处理的数据量非常大,所以采用一般的软件方法实现起来处理速度慢,无法满足实时性的要求。 随着可编程逻辑器件(FPGA)的高速发展,使用 FPG
    发表于 05-24 07:45

    如何提取、匹配图像特征

    我们习惯从图像中选取比较有代表性的点,然后,在此基础上,讨论相机位姿估计问题,以及这些点的定位问题。 在经典 SLAM 模型中,把它们称为路标,而在视觉 SLAM 中,路标则是指图像特征(Features)。
    的头像 发表于 04-19 11:41 776次阅读

    工程实践中VINS与ORB-SLAM的优劣分析

    ORB-SLAM是一种基于特征的单目视觉SLAM系统,广泛用于实时三维地图构建和机器人定位。该系统使用ORB特征进行高效的视觉识别和地图重建,支持关键帧技术和回环检测来优化地图的准确性
    的头像 发表于 04-08 10:17 3360次阅读
    工程实践中VINS与<b class='flag-5'>ORB</b>-SLAM的优劣<b class='flag-5'>分析</b>