8

基于3D边界特征的视觉定位技术

 3 years ago
source link: https://mp.weixin.qq.com/s/RVb6fRtDW_ShNe4agtt0UA
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

基于3D边界特征的视觉定位技术

Original PCB_Segmen 计算机视觉工坊 1 week ago
计算机视觉工坊
计算机视觉工坊
专注于计算机视觉、VSLAM、目标检测、语义分割、自动驾驶、深度学习、AI芯片、产品落地等技术干货及前沿paper分享。这是一个由多个大厂算法研究人员和知名高校博士创立的平台,我们坚持工坊精神,做最有价值的事~
129篇原创内容
Official Account
最近因为有些重要工作需要处理,系列文章因此搁置,月底时间稍微充裕,我们继续上一次的主题,聊一聊3D几何语义中的边界属性,感兴趣的同学可以回顾一下上一篇分享。
3D空间中的边界特征线是机器视觉感知中的一种重要的特征,在形状分析、视觉定位、网格简化、栅格创建、非照片级的渲染和表面平滑等方面具有广泛的应用。根据特征线是否与视点相关联,可以将特征线分为两类:与视点相关的特征线和与视点无关的特征线。一般情况下,与视图无关的特征线的计算与3D模型的拓扑结构有关。3D模型可以是连续的(例如参数化曲面),也可以是离散的(例如网格和点云)。与视点无关的特征线仅反映了3D对象的几何属性,而与视点有关的特征线则描述了表面几何形状和位置的属性,即我们通常所理解的“轮廓”。
640?wx_fmt=png
图1 典型的3D模型的轮廓特征线简单介绍完视觉上的边界特征线,接下来我以一个具体问题为例,介绍一个3D边缘特征在视觉定位问题上的应用。应用的背景
近年来,重工业领域已经开始研究如何使用自动化的移动设备来解决生产力和人员安全问题,尤其是工作在室外环境下的大型作业车辆,因此迫切需要一种基于视觉的车辆定位方法。车辆在动态且非均匀的室外照明条件下运行时,周围环境恶劣,尽管这个问题可以通过使用场景先验知识调整相机曝光并改善图像信息的质量来解决,但完全基于2D图像的感知有时候可能还是不太靠谱(PS:这里可以吐槽一下特斯拉)。随着3D技术的普及,机器人车辆在户外工业环境中运行需要定位,而定位器可以使用环境中的3D边界图来估计车辆的姿态。在上述应用背景的前提下,一种解决策略是将利用摄像机采集的输入边缘与环境中预定义3D边界映射进行比较,从而完成定位,因此三维空间中的几何特征轮廓就派上了用场,为了不偏离本文的核心,只阐述涉及3D边界的核心流程(PS:关于其他环节的实现,感兴趣的同学可以自行学习)。A.鱼眼相机的标定在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。相机标定实际上就是计算相机外参和内参的过程,完成标定后,我们便可以从2D图像中恢复3D图像。·外参
640?wx_fmt=png
·内参
640?wx_fmt=png
完成上述标定过程后,采集到的实际结果如图1所示。紧接着利用图像处理提取出相应目标区域内的2D边界,如图2所示。
640?wx_fmt=png
图1 鱼眼相机视野
640?wx_fmt=png
图2 图像边界的提取B.遮挡问题的处理动态场景中的高效遮挡剔除可以加速渲染进程,这项技术本来是游戏和实时图形处理领域的一个方向。如果建筑物的可见部分比被遮挡的部分多,则粒子滤波器对由未知物体引起的遮挡问题更具有鲁棒性。(这一结论可以参考J.Hasselgren的论文)因此针对可能遇到的自遮挡问题,可以采用欠采样深度缓冲区技术处理,该技术是一种的实时技术。通过这种方法可以将建筑物的表面渲染到深度缓冲区,然后只有位于前面的边缘会通过滤波器。但这种方法也有局限性,比如深度缓冲器的分辨率会受到限制,导致表面与其自身边缘无法区分的问题。为避免此问题,可以将表面和边缘之间的偏移距离设置为大于该深度处缓冲区的分辨率。C.3D线的提取在完成上述两个基础问题后,为了更好的提取出建筑物的边界,在这个环节我们采用3D Hough变换与三维点云邻域信息分析相结合的方法。Hough变换是一种众所周知的有效方法,用于找到匹配一组2D点的线。每条线由两个参数ρ和θ表示,这两个参数表示从法线的起点到该线的长度和角度。而3D数据中边界点本身就是一种局部信息的表达,因此二者结合可以产生一定的效果。具体结果如图3所示。(PS:关于这一部分的边界提取,实际上涉及很多分割的知识,比如在这个环节实际上需要预分割出平面,只有具有足够数量的点的平面簇类才会被考虑用于线提取)
640?wx_fmt=jpeg
图3 3D边界在场景中的映射D.似然估计这一环节我们需要用到粒子滤波器(particle filter)。粒子滤波器是一种使用蒙特卡罗方法(Monte Carlo method)的递归滤波器,透过一组具有权重的随机样本(称为粒子)来表示随机事件的后验概率,从含有噪声或不完整的观测序列,估计出动力系统的状态,粒子滤波器可以运用在任何状态空间的模型上。通过与边缘图像和3D边界图进行比较来生成每个粒子的似然度度量。根据每个粒子的姿势将3D边界投影到图像平面上,因此可以进行直接比较。
640?wx_fmt=png
其中,Px是对齐边缘像素数a与可见边缘像素总数v之间的比率,k是一个加权似然度量常数。
640?wx_fmt=png
图2 图像边界与3D映射边界的匹配走完上述流程,基本就完成了视图定位的很大一部分。以上就是3D边缘的一个应用实例,为了更加贴合这次分享的主题,所以只给出了简化流程,实际上每个环节都值得探究,包括后续的评价环节,感兴趣的小伙伴可以探索一下。备注:作者也是我们「3D视觉从入门到精通」特邀嘉宾:一个超干货的3D视觉学习社区本文仅做学术分享,如有侵权,请联系删文。下载1在「计算机视觉工坊」公众号后台回复:深度学习,即可下载深度学习算法、3D深度学习、深度学习框架、目标检测、GAN等相关内容近30本pdf书籍。下载2在「计算机视觉工坊」公众号后台回复:计算机视觉,即可下载计算机视觉相关17本pdf书籍,包含计算机视觉算法、Python视觉实战、Opencv3.0学习等。下载3在「计算机视觉工坊」公众号后台回复:SLAM,即可下载独家SLAM相关视频课程,包含视觉SLAM、激光SLAM精品课程。

重磅!计算机视觉工坊-学习交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

640?wx_fmt=png▲长按加微信群或投稿

640?wx_fmt=jpeg

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定orb-slam3等视频课程)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

640?wx_fmt=jpeg 圈里有高质量教程资料、可答疑解惑、助你高效解决问题觉得有用,麻烦给个赞和在看~640?wx_fmt=gif


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK