激光SLAM面试合集

先把问题简单记一下,最近两天慢慢填回答

某机器人公司:
先自我介绍
1、轮式里程计标变方法,标定的参数,为什么标定
内参标定:基于模型法标定,假设激光位于车体的正中心,将里程计积分值与激光雷达的匹配值构建线性方程;轮子半径,两轮间距;虽然出厂会给出参数,但也不是十分标准,类似相机一样需要标定一下;

里程计的内参标定

航迹推演(Odometry)

里程计与lidar外参标定

2、图优化流程、图优化的前提、什么场景下不能使用
基本思想是将机器人不同时刻的位姿抽象为点(pose),机器人在不同位置上的观测所产生的约束被抽象为点之间的边,或者叫约束(constraint);为了让解唯一,必须加入一个约束条件让某一个位姿固定,
一般选择第一个位姿(取零);
3、介绍最小二乘、相关的求解方法、求解前提(满秩)
   x=(ATA)-1*(ATB)

最小二乘的本质
4、slam流程

        流程详解

5、介绍icp

6、分支定界流程(伪代码)

 7、分治

某机器人公司:
1、carto的线程
   4个线程,线程池
2、submap node landmark

3、图优化思想

        图优化理论详解

4、分支定界算法

5、list vector hashmap arry

        详解

某三维公司:
1、矩阵的求解 满不满秩
行列式不等于0,特征值全不为0,行、列向量组线性无关
2、里程计/imu内外惨的标定  标定什么
imu内参标定:一般标定的参数有刻度系数矩阵和零偏。刻度系数是指imu的输出物理量(可能是电压)与输入角速率的比值,零偏是指当输入角速率为零时,imu的输出值。对加速度计进行标定可以直接使用重力场作为参考。三轴加速度计的标定模型与三轴陀螺标定模型类似。对加速计进行标定是求解加速度计的刻度系数矩阵和加速度计的零偏。常采用六面法标定加速度计,即依次让三个加速度计朝天和朝地放置,并采集静止状态下三个加速度计的输出,参考基准值为重力加速度。同样,在计算的过程中可以计算各个位置采集数据的均值以降低噪声的干扰。将不同位置时三个加速度计的输出值和相应的重力加速度向量带入三轴加速度计的标定模型,使用最小二乘法即可计算加速度计的刻度系数矩阵和零偏,完成加速度计标定。
3、slam整体的流程

4、激光数据存储方式

5、图优化  怎么优化  具体优化什么  两个值是怎么计算出来的

6、线性拟合的方式

7、虚函数

8、vector 数组等

9、如何求解方程组  存在哪些问题//

10、G-N,L-M

(1) GN:线搜索
将 f(x)进行一阶泰勒展开,最后求解
线性方程 H △ x = b ;
用 J J^T近似 H 矩阵,省略 H复杂的计算过程;
J J^T具有病态,此时增量的稳定性差,可能不收敛;
(2) LM:信赖区域;
求解线性方程 ( H + λ I ) △ x = b (H+λI)△x=b (H+λI)△x=b;
提供更稳定,更准确的增量
(3)
当λ= 0时,L-M等于G-N;
当λ= ∞时,L-M等于一阶梯度下降

11、为什么slam中常用L-M

G-N中的H矩阵可能为奇异矩阵或者病态矩阵,导致算法不收敛。而且当步长较大时,也无法保证收敛性,所以采用L-M求解增量方程,但是它的收敛速度可能较慢。

12、为什么要引入李群李代数

旋转矩阵自身是带有约束的,正交且行列式为1,他们作为优化变量时,会引入额外的约束,时优化变的困难,通过李群李代数的转换关系,把位姿估计变成无约束的优化问题。

1、里程计、imu为什么要标定、怎么标定、标定哪些参数

imu标定方法

2、激光雷达数据的保存形式

数据格式链接

3、虚函数与纯虚函数

虚函数详解

4、list, vector, map, set ,hashmap, deque区别

详解

电力巡检公司:

1、自我介绍

2、ICP 原理(怎样迭代的△ x),具体步骤

3、李群李代数

        李群的定义是指连续光滑的群,比如我们前面说的旋转矩阵群SO(3)。
        李代数对应李群的正切空间,它描述了李群局部的导数。

        详解1

        详解2

4、雅克比矩阵的求解

5、暴力匹配具体步骤

 6、图优化,回环检测

7、数据结构 hashmap


8、封装、继承、多态

        1)封装:封装就是将抽象得到的数据和行为相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成类,其中数据和函数都是类的成员,目的在于将对象的使用者和设计者分开,以提高软件的可维护性和可修改性。

        2)继承:继承就是新类从已有类那里得到已有的特性。 类的派生指的是从已有类产生新类的过程。原有的类成为基类或父类,产生的新类称为派生类或子类,子类继承基类后,可以创建子类对象来调用基类函数,变量等。

        3)多态:可以简单概括为“一个接口,多种方法”,即用的是同一个接口,但是效果各不相同,多态有两种形式的多态,一种是静态多态,一种是动态多态。

        详解

9、智能指针

  C++里面的四个智能指针: auto_ptr, unique_ptr,shared_ptr, weak_ptr 其中后三个是C++11支持,并且第一个已经被C++11弃用。

        智能指针介绍:智能指针主要用于管理在堆上分配的内存,它将普通的指针封装为一个栈对象。当栈对象的生存周期结束后,会在析构函数中释放掉申请的内存,从而防止内存泄漏。                 为什么使用智能指针:智能指针的作用是管理一个指针,因为存在以下这种情况:申请的空间在函数结束时忘记释放,造成内存泄漏。使用智能指针可以很大程度上的避免这个问题,因为智能指针是一个类,当超出了类的实例对象的作用域时,会自动调用对象的析构函数,析构函数会自动释放资源。所以智能指针的作用原理就是在函数结束时自动释放内存空间,不需要手动释放内存空间。

unique_ptr对象共享一段内存,可以自定义delete函数,从而支持delete [] 。

share_ptr:通过计数方式多个share_ptr可以共享一段内存,当计数为0的时候,所管理内存会被删除,可以自定义delete函数,从而支持delete[] 。

        参考链接

10、图优化和滤波方法的关联

图优化中使用了高斯分布去刻画激光点的分布,这其实就属于贝叶斯滤波的范畴。

  • 10
    点赞
  • 69
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值