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
    +关注

    关注

    1602

    文章

    21309

    浏览量

    593130
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10437

    浏览量

    206527
  • 图像识别
    +关注

    关注

    8

    文章

    447

    浏览量

    37907
  • orb
    orb
    +关注

    关注

    0

    文章

    21

    浏览量

    9852
收藏 人收藏

    评论

    相关推荐

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

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

    OpenCV4图像分析之BLOB特征分析

    BLOB是图像中灰度块的一种专业称呼,更加变通一点的可以说它跟我们前面二值图像分析的联通组件类似,通过特征提取实现常见的各种灰度BLOB对象组件检测与分离。使用该检测器的时候,可以根据
    的头像 发表于 12-28 12:28 384次阅读
    OpenCV4<b class='flag-5'>图像</b><b class='flag-5'>分析</b>之BLOB<b class='flag-5'>特征</b><b class='flag-5'>分析</b>

    LabVIEW开发自动驾驶的双目测距系统

    基于LabVIEW的双目测距系统。LabVIEW是NI公司的可视化编程软件,它具有强大的数据处理和图像分析能力,能够实现高效的图像处理和匹配算法。 该系统通过灰度值金字塔算法进行
    发表于 12-19 18:02

    机器视觉的图像特征提取技术分析

    区域和轮廓只包含对分割结果的原始描述,在实际应用中我们还需要从区域或轮廓中确定一个或多个特征量。这些确定的特征量被称为特征
    发表于 11-03 11:28 230次阅读
    机器视觉的<b class='flag-5'>图像</b><b class='flag-5'>特征提取</b>技术<b class='flag-5'>分析</b>

    预训练扩散大模型取得点云-图像配准SoTA!

    现有方法往往是:用一个2D特征提取网络提取图像特征;用一个3D特征提取网络提取点云
    的头像 发表于 10-29 17:14 344次阅读
    预训练扩散大模型取得点云-<b class='flag-5'>图像</b>配准SoTA!

    DIY自制基于51单片机的LED金字塔

    电子发烧友网站提供《DIY自制基于51单片机的LED金字塔.pdf》资料免费下载
    发表于 10-25 10:27 0次下载
    DIY自制基于51单片机的LED<b class='flag-5'>金字塔</b>

    机器视觉之图像增强和图像处理

    对原始获取图像进行一系列的运算处理,称为图像处理。图像处理是机器视觉技术的方法基础,包括图像增强、边缘提取
    发表于 10-23 10:43 227次阅读
    机器视觉之<b class='flag-5'>图像</b>增强和<b class='flag-5'>图像</b>处理

    机器视觉:图像处理技术、图像增强技术

    对原始获取图像进行一系列的运算处理,称为图像处理。图像处理是机器视觉技术的方法基础,包括图像增强、边缘提取
    发表于 10-20 10:17 371次阅读
    机器视觉:<b class='flag-5'>图像</b>处理技术、<b class='flag-5'>图像</b>增强技术

    基于卷积神经网络的双重特征提取方法

    机器学习技术已被广泛接受,并且很适合此类分类问题。基于卷积神经网络的双重特征提取方法。提出的模型使用Radon拉冬变换进行第一次特征提取,然后将此特征输入卷积层进行第二次特征提取
    发表于 10-16 11:30 434次阅读
    基于卷积神经网络的双重<b class='flag-5'>特征提取</b>方法

    基于英特尔开发套件使用ORB-SLAM3实现无人机实时定位

    工业建模对于精度有着高要求,这意味着无人机的 SLAM 算法要提供可靠的实时位姿估计。ORB-SLAM3 是目前融合双目视觉与 IMU 的优秀算法,其前端是针对实时性优化的 ORB 描述子与关键帧
    的头像 发表于 09-18 10:12 529次阅读
    基于英特尔开发套件使用<b class='flag-5'>ORB</b>-SLAM3实现无人机实时定位

    电路块ANB指令与ORB指令操作

    一、ANB.ORB指令 在梯形图中,可能会出现电路块与电路块串联或者电路块与电路块并联的情况,这时就要使用ANB指令或ORB指令。ANB指令称为“电路块与指令”,其功能是使电路块与电路块串联。ORB
    的头像 发表于 09-18 09:59 2891次阅读

    ORB-SLAM3整体流程详解

    ORB-SLAM2相比,ORB-SLAM3在处理大视差和长时间未观测到的场景时效果更好。它还提供了更准确的帧间运动估计和更快的处理速度。
    的头像 发表于 06-19 09:28 2135次阅读
    <b class='flag-5'>ORB</b>-SLAM3整体流程详解

    人体分割识别图像技术的原理及应用

    、行为分析等功能。 人体分割识别图像技术的原理主要包括三个步骤:图像预处理、人体分割和特征提取。首先,通过图像预处理算法对人体
    的头像 发表于 06-15 17:44 680次阅读

    为什么目前落地的主流SLAM技术很少用神经网络进行特征提取

    深度学习提取特征就一定好?显然不是的。因为数据集的原因,利用深度学习训练出的特征子适用性并不一定好。貌似网上有一篇论文,利用orbslam框架,对比了orb和superpoint的效
    的头像 发表于 05-19 10:25 898次阅读
    为什么目前落地的主流SLAM技术很少用神经网络进行<b class='flag-5'>特征提取</b>?

    持续在榜的RAFT-Stereo,你确定不来了解吗?

    给定一对矫正后的图像(IL, IR),目标是估计一个视差场d,使每个IL中的像素都有水平的位移。与RAFT类似,RAFT-Stereo的方法由三个主要组件组成:特征提取器、相关金字塔和基于GRU的更新运算符,如图1所示。更新运算
    的头像 发表于 05-19 09:24 452次阅读
    持续在榜的RAFT-Stereo,你确定不来了解吗?