B-Spline探秘

B-Spline(=Basic Spline)

需求

  • 需要利用样条函数拟合时相连续的数据,e.g. IMU data。
  • 利用样条函数拟合散点,做表面拟合,e.g. 构建mesh或者其他光滑的表面。
  • 路径规划中使用样条线对A*算法进行优化,得到更加平滑的路径。
  • 多传感器融合任务中,e.g.多传感器标定时,为了内插任意时刻的状态,实现多传感器的时间对齐,使用B-spline做内插。

IMU

IMU主要由加速度计和陀螺仪构成,因此IMU中包含的原始数据是角速度和线加速度,包含timestamp ang_vel_x ang_vel_y ang_vel_z lin_acc_x lin_acc_y lin_acc_z,然后通过积分的方式得到__orientation__,position,__velocity__信息。

  • 3轴IMU即只有3轴陀螺仪的IMU,其因为只有一个3轴陀螺仪,所以只能感知载体roll、pitch、yawl共3个自由度的姿态信息。
  • 6轴IMU在3轴IMU的基础上加装了3轴加速度计,因此在感知载体姿态的基础上,还能感知载体3个自由度上的加速度信息。
  • 9轴IMU在6轴IMu的基础上加装了3轴磁强计,由于3轴陀螺仪只能估计载体自身的相对位姿变化(通过加速度计也可获得载体的绝对roll和pitch),单凭3轴陀螺仪无法获取载体的全部姿态信息,而通过3轴磁强计就可以,本质上磁强计的感知原理类似于指南针。

激光雷达传感器

记录几种常见的激光雷达类型

单线激光雷达、机械式、固态式、半固态

loss functions

一些常见的损失函数调包就行,复杂的得自己写。损失函数中没有可训练的参数,因此通常直接使用torch.nn.functional中的函数即可。例如一些简单的损失函数:

1
2
3
4
import torch.nn as nn
cls_criterion = nn.CrossEntropyLoss()
dist_criterion = nn.MSELoss() # Use L2 loss function
hinge_criterion = nn.HingeEmbeddingLoss()

还可以参照pytorch-metric-learning这个库

MLS position inconsistency correction

Supplementary video of paper "MuCoGraph: A Multi-scale Constraint Enhanced Pose Graph Framework for MLS Point Cloud Inconsistency Correction", Accepted by Journal of Photogrammetry and Remote Sensing SCI1-TOP, IF=12.7.

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×