【基于深度学习方法的激光雷达点云配准系列之GeoTransformer】——粗配准

【GeoTransformer系列】——粗配准

  • 1.coarse_matching
    • 1.1 概要
    • 1.2 功能
    • 1.3 超参
    • 1.4 input
    • 1.5 output
  • 2 coarse_target
    • 2.1 概要
    • 2.2 功能
    • 2.3 input
    • 2.4 output

在模型部分有了初步了解之后, 接下来我们对后续的粗配准、精配准等部分依次进行解读. 本篇主要来看粗配准部分, 代码是在GeoTransformer/experiments/geotransformer.kitti.stage5.gse.k3.max.oacl.stage2.sinkhorn/下面的model.py. 这里再次结合个人理解以及model.py中类GeoTransformer的forward函数, 大概梳理了一下前向传播的WorkFlow, 大家可以参考理解. 每个步骤以单独的颜色表示, 箭头代表输入输出.
在这里插入图片描述

1.coarse_matching

1.1 概要

类GeoTransformer中的coarse_matching实际上是一个SuperPointMatching类的实例(参见下文摘出的代码), 它的超参主要是cfg中的coarse_matching.num_correspondences和coarse_matching.dual_normalization.
这个类中是没有可学习的网络参数的.

        self.coarse_matching = SuperPointMatching(
            cfg.coarse_matching.num_correspondences, cfg.coarse_matching.dual_normalization
        )

在论文中提到, dual_normalization操作, 是特意设计来抑制掉一些不准确匹配,以提高配准性能的, 因此默认是True.
在这里插入图片描述

1.2 功能

对transformer模块提取的ref 特征和 src特征,首先应用mask、移除掉一些空的patch, 然后对计算pair_wise距离, 将该距离转化为matching_scores得分, 输出topk——即前num_correspondences个对应的src点和ref点的索引。

1.3 超参

num_correspondences

1.4 input

        ref_feats:  参考点云中superpoints的特征.
        src_feats:  待配准点云中superpoints的特征.
        ref_masks:  参考点云中superpoints的mask.
        src_masks:  待配准点云中superpoints的mask.

1.5 output

        ref_node_corr_indices:  参考点云中,被选中为corresponding superpoints的 indices.
        src_node_corr_indices:  待配准点云中,被选中为corresponding superpoints的 indices.
        node_corr_scores: corresponding superpoints的score . 对应点的匹配得分
    def forward(self, ref_feats, src_feats, ref_masks=None, src_masks=None):
        r"""Extract superpoint correspondences.

        Args:
            ref_feats (Tensor): features of the superpoints in reference point cloud.
            src_feats (Tensor): features of the superpoints in source point cloud.
            ref_masks (BoolTensor=None): masks of the superpoints in reference point cloud (False if empty).
            src_masks (BoolTensor=None): masks of the superpoints in source point cloud (False if empty).

        Returns:
            ref_corr_indices (LongTensor): indices of the corresponding superpoints in reference point cloud.
            src_corr_indices (LongTensor): indices of the corresponding superpoints in so

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/788596.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器人三定律及伦理分析

全世界的机器人定律并没有一个统一的标准或体系,但是在科学文献中,最广为人知的是由科幻小说家阿西莫夫提出的“机器人三定律”。本文将以这些定律为基础,分析现有的机器人伦理和实际应用中的问题,给出若干实例,并对相…

贴脸细看Mixtral 8x7B- 稀疏混合专家模型(MoE)的创新与推动

贴脸细看Mixtral 8x7B- 稀疏混合专家模型(MoE)的创新与推动 原创 一路到底孟子敬 上堵吟 2024年01月15日 20:05 美国 I. 引言 A. Mixtral 8x7B的背景和目的 • 背景:随着大型语言模型在自然语言处理(NLP)领域的广泛…

类型“RouteRecordName”上不存在属性“includes”。 类型“symbol”上不存在属性“includes”

确定 route.name 运行时是 字符串,强制转换 为字符串。 removeRoute(id: string) { this.dynamRoute this.dynamRoute.filter(route > !(route.name as string).includes(id)) localStorage.setItem(dynamRoute, JSON.stringify(this.dynamRoute)) delete this.t…

Linux驱动开发-03字符设备驱动框架搭建

一、字符设备驱动开发步骤 驱动模块的加载和卸载(将驱动编译模块,insmod加载驱动运行)字符设备注册与注销(我们的驱动实际上是去操作底层的硬件,所以需要向系统注册一个设备,告诉Linux系统,我有…

寂静孤独的404页面源码

寂静孤独的404页面源码,灯光闪烁动态效果,源码由HTMLCSSJS组成,记事本打开源码文件可以进行内容文字之类的修改,双击html文件可以本地运行效果,也可以上传到服务器里面,重定向这个界面 寂静孤独的404页面源…

普中51单片机:中断系统与寄存器解析(六)

文章目录 引言中断流程图中断优先级下降沿中断结构图中断相关寄存器IE中断允许寄存器(可位寻址)XICON辅助中断控制寄存器(可位寻址)TCON标志控制寄存器SCON串行口控制寄存器 中断号中断响应条件中断函数代码模板电路图开发板IO连接…

Spin Image(旋转图像)

Spin Image特征描述子原理 Spin Image是Johnson于1999年提出,Lazebnik于2005年完善的基于点云空间分布的特征描述方法,其思想是将一定区域的点云分布转换成二维的Spin Image,然后对场景和模型的Spin Image进行相似性度量。Spin Image方法与通…

OJhelper一款帮助你获取各大oj信息的软件

项目地址 应用功能 目前应用支持:查询、自定义、收藏各大oj比赛信息,跳转比赛界面。查询各大oj的Rating分以及题量,查看题量饼状图。 应用环境 windows和安卓端 应用预览: 维护概况 后期会提供持续更新,具体可以…

无法访问。你可能没有权限使用网络资源。请与这台服务器的管理员联系以查明你是否有访问权限。【解决办法】

问题描述 新建好一台windows虚拟机,两台设备网络是互通的,但是物理机在访问虚拟机的网络共享文件资源时,出现图下所示的报错:XXX无法访问。你可能没有权限使用网络资源。请与这台服务器的管理员联系以查明你是否有访问权限。用户…

在FPGA程序中Handshake(握手)和Register(寄存器)区别

在FPGA程序中,Handshake(握手)和Register(寄存器)是两种不同的通信和数据传输机制。它们各有特点和适用场景。以下是它们的区别和应用场景的详细解释: Register(寄存器) 特点&#…

RFID智能锁控系统在物流安全运输中的应用与效益分析

一、物流锁控系统现状与挑战 1.1 传统锁控系统的局限性 安全性不足:机械锁容易被撬开或钥匙被复制,导致货物在运输过程中面临被盗风险。 无法实时追踪:一旦货物离开发货点,物流公司无法实时监控货物状态,增加了货物…

全终端自动化测试框架wyTest

突然有一些觉悟,程序猿不能只会吭哧吭哧的低头做事,应该学会怎么去展示自己,怎么去宣传自己,怎么把自己想做的事表述清楚。 于是,这两天一直在整理自己的作品,也为接下来的找工作多做点准备。接下来…

初始化线程的4种方式

1. 继承Thread 缺点:无法获取线程的运算结果。 public class ThreadTest{public static void main(String[] args){Thread01 thread new Thread01();thread.start();}public static class Thread01 extends Thread{public void run(){System.out.println("当前…

基于蓝牙iBeacon定位技术的商场3D楼层导视软件功能详解与实施效益

在现代商场的繁华与复杂中,寻找目的地往往令人头疼。维小帮3D楼层导视软件以其创新技术,为顾客带来无缝、直观的跨楼层导航体验,让每一次商场消费都成为享受。 商场3D楼层导视软件功能服务 3D多楼层导视地图,商场布局一览无遗 …

数字经济时代,你有数商吗?

引言:随着科技的飞速发展,我们正步入一个全新的数字经济时代。在这个时代里,数据成为了新的石油,是推动经济增长和社会进步的关键要素。而在这个数据洪流中,一个新兴的概念——“数商”,正逐渐进入公众的视…

C#创建windows服务程序

步骤 1: 创建Windows服务项目 打开Visual Studio。选择“创建新项目”。在项目类型中搜索“Windows Service”并选择一个C#模板(如“Windows Service (.NET Framework)”),点击下一步。输入项目名称、位置和其他选项,然后点击“创…

C#中简单Socket编程

C#中简单Socket编程 Socket分为面向连接的套接字(TCP套接字)和面向消息的套接字(UDP 套接字)。我们平时的网络编程是对Socket进行操作。 接下来,我用C#语言来进行简单的TCP通信和UDP通信。 一、TCP通信 新建项目SocketTest,首先添加TCP通信的客户端代…

6.MkDocs附录

安装插件 在 MkDocs 中,插件通常是通过 pip​ 工具安装的。你可以使用以下步骤来安装和配置 MkDocs 插件。 1.使用 pip​ 命令安装你需要的插件。例如 pip install pymdown-extensions‍ 2.更新 mkdocs.yml​ 文件。 ‍ 3.使用 mkdocs serve​ 命令本地预览你…

H265码率解析

概述 H.265技术的应用 编码技术主要运用于视频播放设备、软件应用以及拍摄、录制视频的设备。人们最熟悉的莫过于PPS网络视频播放器。在PC屏客户端产品上面,PPS已经于2013年初推出了基于H.265标准的高清视频,并命名“臻高清”为自己的高清品牌。同时 P…

mirthConnect 常用示例和语法整理

mirthConnect 常用示例和语法整理 1、jolt json常用语法 https://please.blog.csdn.net/article/details/140137463 2、常用方法 2.1 WinningDateUtils 所有的时间工具在WinningDateUtils里面 获取当前时间:var nowStrWinningDateUtils.getStandardNowStr()获取…