本文经自动驾驶之心公众号授权转载,转载请联系出处。
本人从通信转行转业至计算机相关行业,目前准备读博,方向是3D 点云数据压缩。致力于开发一种更高效的图像、视频压缩算法。然而因转行转业不久,在图像、视频处理,数据压缩相关领域基础知识比较薄弱,在此希望得到各位大神的指导包括以下几个方面:
1.此领域内有哪些必读的书(我自己想到的:拓扑几何、图像压缩、视频压缩、计算机视觉、网络流相关)
2.商业应用:个人认为前景广阔,随着目前的人工智能、无人驾驶等技术的发展,将来在识别上必然会大量应用点云数据。
所以在软件上:压缩、识别、重构带动技术革新。硬件上:带动一大波摄像头,传感器的生产。
随着VR、AR、MR技术及头戴式设备的出现,我们可以设想将来可以不用出门享受实景购物(甚至试衣)、远程3D视频会议(注意是3D!)、游戏就更不用说了。。
期待和大家共同探讨,谢谢。
前言 3D视觉与3D图像
3D图像和3D视觉之间存在密切的联系,它们都涉及到三维空间的表现和感知。它们之间的联系在于:
1、3D图像的生成与3D视觉的感知:3D图像是由计算机生成的三维对象的表示,可以包括三维建模、计算机辅助设计、计算机图形学等。而3D视觉则是人类感知和理解三维世界的能力。3D图像的生成可以借助于3D视觉的原理和技术,以使得图像在观看时能够更自然地与真实世界的三维感知相吻合。
2、3D图像用于3D视觉应用:3D图像在许多3D视觉应用中发挥着重要作用。例如,在虚拟现实(VR)和增强现实(AR)应用中,3D图像可用于构建虚拟环境和虚拟物体,而用户则通过3D视觉感知这些虚拟元素的存在和交互。这种整合使得用户能够更深入地沉浸于虚拟世界中。
3、3D视觉的技术改进3D图像质量:3D视觉技术的不断改进也可以促进3D图像的质量和逼真度。例如,通过使用更先进的3D显示技术(如立体显示、自动立体视觉等),可以提高3D图像在观看时的真实感和深度感。
4、立体视觉和深度感:3D图像的创建和呈现通常涉及到立体视觉的原理。立体视觉允许我们同时从两只眼睛看到稍微不同的图像,从而产生深度感。3D图像的呈现也是通过类似的原理,使得每只眼睛看到不同的图像,从而在观看时形成立体效果。
5、3D图像处理和3D视觉的研究:在研究领域,3D图像处理和3D视觉的研究相互交织。3D图像处理涉及到对三维数据的处理和分析,而3D视觉研究探索人类如何感知和理解三维信息。这些领域的进展相互促进,推动了更广泛的3D技术应用。
总而言之,3D图像和3D视觉是相互关联的,它们在虚拟现实、计算机图形学、人机交互等领域的应用和研究中扮演着重要的角色,共同构建了三维空间的表现和感知。
描述3D图像可以采用多种方法,具体选择哪种方法取决于应用场景和需求。以下是几种常见的3D图像描述方法:
(1)3D模型参数描述:使用数学参数来表示3D模型的形状和结构。这些参数可以包括模型的大小、位置、旋转、缩放、角度等信息,也可以是更复杂的几何参数或曲面拟合参数。
(2)体素化描述:将3D模型转换成体素(三维像素)的形式,通过表示每个体素的状态(如实心、空心)来描述模型的形状。这种方法在计算机图形学和计算机辅助设计中比较常见,类似于我的世界的像素风。
图1 不同体素大小的效果
(3)点云描述:将3D模型表示为离散的点云数据,每个点包含其三维坐标和可能的其他属性(例如颜色、法向量等)。点云描述在激光扫描和三维重建中被广泛使用。
图2 玉米
(4)三角面片描述:使用一系列连接的三角形来描述3D模型的表面。这些三角形的顶点坐标表示了模型的形状,而顶点之间的连接表示模型的拓扑结构。
图3 三角面片描述
(5)深度图描述:将3D模型渲染为深度图像,其中每个像素值表示该像素对应的场景中物体距离相机的距离。深度图描述通常用于视觉SLAM(同时定位与地图构建)和三维重建。
图4 从深度图到点云的构建方式
(6)网格描述:将3D模型表示为网格数据结构,例如三角网格或四边形网格。网格描述在计算机图形学中常用于渲染、动画和模拟等领域。
图5 网格描述
(7)隐式函数描述:使用数学方程来表示3D模型的边界或表面,通常为隐式方程或函数。这种方法适用于一些特定的几何形状表示。
(8)深度学习描述:利用深度学习技术,例如卷积神经网络(CNN)或生成对抗网络(GAN),来学习并生成3D模型的描述。这种方法在3D模型生成和重建方面有很好的应用。
每种描述方法都有其优势和局限性,根据具体需求和应用场景的不同,可以选择合适的方法或将多种方法结合使用。
本文针对点云描述,来聊一聊3D点云的一些基础知识,介绍什么是3D点云、为什么研究3D点云、3D点云的发展历史以及3D点云技术能给我们带来什么、3D点云技术面临哪些机遇和挑战,通过初步认识点云,来逐渐了解点云、熟悉点云,掌握点云,一起学习、交流点云知识。
Part1什么是3D点云
很简单,3D点云,指的是一个包含了大量三维点的集合,如图6。每个点都有X、Y和Z坐标(有时候还有RGB信息和激光反射强度信息等,不同场景所需),分别表示它在三维空间中的位置。这些点通常是通过激光扫描技术(如激光雷达)或结构光扫描技术(如Kinect或其他深度传感器)从现实世界中获取的。
图6 渲染后的一个房间的点云集
3D点云通常用于在三维环境中表示和捕捉物体、场景或环境。它们可以是静态的,例如建筑物的三维模型或景观的三维重建,也可以是动态的,例如随着时间推移捕捉的运动物体的点云。
Part2为什么要研究3D点云
二维图像不能解决全部任务吗?为什么要研究三维的,为什么研究3D点云?
3D点云之所以发展起来并得到广泛应用,主要是因为它提供了一种直观、真实和全面的方式来表示和捕捉现实世界中的三维信息。与传统的2D图像相比,3D点云具有以下几个优势:
(1) 真实感和立体感:3D点云是由实际物体或环境中的真实三维坐标点构成的,因此能够准确地反映现实世界中物体的形状和位置。这使得3D点云在虚拟现实、增强现实和游戏等领域中能够提供更真实的体验。
图7 人体
(2) 丰富信息:2D图像只包含了物体在水平和垂直方向上的信息,而3D点云则能够提供物体在三个维度上的详细信息。这使得3D点云在许多领域中更有用,比如三维建模、环境感知、自动驾驶等。
图8 自动驾驶
(3) 不受光照和纹理影响:2D图像的质量受到光照和纹理的影响,当场景中的光照条件发生变化或物体表面没有明显纹理时,图像质量可能下降。而3D点云不受这些影响,因为它是通过距离传感器直接测量物体的位置,而不依赖于光照和纹理。
图9 运动场景建模
(4) 可扩展性:3D点云可以通过收集更多的点来增加精度和细节,而2D图像的质量通常受限于图像的分辨率。
(5) 应用广泛:3D点云在很多领域都有广泛的应用,如自动驾驶、机器人导航、三维建模、医学影像、虚拟现实、文物保护等。
图10 建筑建模
总之,3D点云包含的信息往往不是二维图像所能比拟的,在以后的自动驾驶、AR、VR等领域将起关键作用。
Part3 3D点云的发展历史
3D点云的发展历史可以追溯到几十年前,下面为3D点云发展的关键时间点:
1960年代 - 1970年代:激光雷达技术在军事和地理测绘领域得到广泛应用。最早的3D点云激光雷达系统由David H. Hough于1960年代开发,用于从地面上的飞机获取地形信息。
1980年代 - 1990年代:3D激光扫描技术开始应用于建筑测绘、城市规划和工程等领域。Velodyne Lidar公司成立于1983年,成为最早生产商用激光雷达传感器的公司之一。
1990年代:结构光扫描技术的出现,如Kinect深度传感器,使得3D点云获取变得更加普及。这些技术使消费级设备也能够以较低成本获取3D点云数据。
2000年代:随着计算机性能和算法的进步,点云处理变得更加高效和准确。从此,点云的应用领域不断扩展,包括机器人导航、虚拟现实、三维建模等。
2010年代:深度学习技术的兴起对3D点云的处理和分析产生了重大影响。一些创新的深度学习模型,如PointNet、PointNet++,开始应用于点云分类、分割和目标检测等任务,取得了显著的成果。
现在:3D点云在许多领域得到广泛应用。在自动驾驶领域,激光雷达被用于感知周围环境,实现环境感知和障碍物检测。在虚拟现实和增强现实中,3D点云技术用于重建真实环境或物体,增强用户的沉浸感。在建筑、工程和文物保护领域,点云用于快速准确地获取建筑物和文物的三维模型。
未来,随着传感器技术和算法的不断改进,3D点云的应用将继续扩展,并在更多领域发挥重要作用,促进人工智能、自动化和数字化技术的发展。
Part4 3D点云技术能给我们带来什么?有哪些机遇?
点云是分布在N维空间中的离散点集,主要以三维为主,它是对物体表面信息的离散采样。三维扫描技术的迅速发展使得点云数据的获取更加简单方便,而点云驱动的计算机图形学在逆向工程、数字城市、文物保护、智能机器人、无人驾驶和人机交互等领域日益彰显其广阔的应用前景。
点云处理技术包括点云获取、滤波、分割、配准、检索、特征提取、识别、追踪、曲面重建、可视化等方法技术,也包括结合图论、模式识别、机器学习、数据挖掘和深度学习等人工智能算法之后的解决实践应用中的同步定位与地图构建(SLAM)、三维模型检索、三维场景语义分析、广义点云等综合技术内容。
1 测绘领域
能够直接获取高精度三维地面点数据,是对传统测量技术在高程数据获取及自动化快速处理方面的重要技术补充。激光遥感测量系统在地形测绘、环境检测、三维城市建模、地球科学、行星科学等诸多领域具有广泛的发展前景,是目前最先进的能实时获取地形表面三维空间信息和影像的遥感系统。
2 无人驾驶领域
无人驾驶车辆是一种具有自主驾驶行为的车辆。它是在传统车辆基础上,加入环境感知、智能决策、路径规划、行为控制等人工智能模块,进而可以与周围环境交互并作出相应决策和动作的移动轮式机器人,用于解放驾驶员,辅助安全驾驶,得到了广泛的关注,并且拥有良好的前景。无人驾驶能够实现主要是依赖车载LiDAR点云系统,其可以快速提取地球表面物体三维坐标信息,实时定位于构建地图,有着其他方法无法比拟的优势:
(1)数据采集速度快,只需沿街一次便可收集所有信息;
(2)抗干扰能力强,全天候24小时都可进行数据采集;
(3)点云密度大,数据量丰富,精度可靠;
(4)可以得到实时车辆的位姿信息。
3 机器人领域
移动机器人对其工作环境的有效感知、辨识与认知,是其进行自主行为优化并可靠完成所承担任务的前提和基础。如何实现场景中物体的有效分类与识别是移动机器人场景认知的核心问题,目前基于视觉图像处理技术来进行场景的认知是该领域的重要方法。但移动机器人在线获取的视觉图像质量受光线变化影响较大,特别是在光线较暗的场景更难以应用,随着RGBD获取设备的大量推广,在机器人领域势必掀起一股深度信息结合2D信息的应用研究热潮,深度信息的引入能够使机器人更好地对环境进行认知、辨识,与图像信息在机器人领域的应用一样,需要强大的信息处理技术,因此3D点云处理技术得以应用发展。
工业4.0的内涵中,特别强调了智能制造、信息物理系统(Cyber-Physical System)等概念,智能意味着机器人要具备有效感知、辨识与认知能力,同时产生相应的决策,3D彩色点云数据相信是目前最接近人类本身视觉系统的一种模拟数据。
4 人机交互领域
虚拟现实技术(简称VR),又称灵境技术,是以沉浸性、交互性和构想性为基本特征的计算机高级人机界面。它综合利用了计算机图形学、仿真技术、多媒体技术、人工智能技术、计算机网络技术、并行处理技术和多传感器技术,模拟人的视觉、听觉、触觉等感觉器官功能,使人能够沉浸在计算机生成的虚拟境界中,并能够通过语言、手势等自然的方式与之进行实时交互,创建了一种适人化的多维信息空间,具有广阔的应用前景。
目前各种交互式体感应用的推出,让虚拟现实与人机交互发展非常迅速,以微软、华硕、三星等为例,目前诸多公司推出的RGBD解决方案,势必会让虚拟现实走出实验室,因为现有的RGBD设备已经开始大量推向市场,只是缺少其他应用的跟进,这正是在为虚拟现实和人机交互应用铸造生态链的底部,3D点云处理技术将是基于RGBD设备的虚拟现实和人机交互应用生态链中最重要的一个环节。
5 逆向工程与其它工业自动化领域
大部分工业产品是根据二维或三维CAD模型制造而成,但有时因为数据丢失、设计多次更改、实物引进等原因,产品的几何模型无法获得,因而常常需要根据现有产品实物生成物体几何模型。逆向工程技术能够对产品实物进行测绘,重构产品表面三维几何模型,生成产品制造所需的数字化文档。
在一些工业领域,如汽车制造业,许多零件的几何模型都通过逆向工程由油泥模型或实物零件获得,目前在CAD/CAM领域利用激光点云进行高精度测量与重建成为趋势,同时引来了新的问题,通过获取的海量点云数据,来提取重建模型的几何参数,或者形状模型,对模型进行智能检索,从点云数据获取模型的曲面模型等,诸如此类的问题解决方案在3D点云处理技术中都有涉及。例如kd-tree和 octree对海量点云进行高效压缩存储与管理,其中滤波、配准、特征描述与提前基础处理,可以应用于模型的智能检索,以及后期的曲面重建和可视化等技术。总之,三维点云数据的处理是逆向工程中比较重要的一环。
6 BIM
BIM ( Building Information modeling,建筑信息模型化),是用三维模型作为信息载体,以描述建筑物生命周期内的建设活动的一种理念。BIM工作的核心是建立一个可供建筑设计者、结构设计者、施工方、物业方乃至业主等参与者都能使用、修改的三维模型。这样的模型一般称为BIM模型,这种模型是现实地物的虚拟映射,大到整个项目的规三维激光扫描技术为BIM建立模型提供准确的几何信息,可以大面积、高效率、全面地采集地物的几何信息以及功能特性,快捷地建立起精确的地物模型。通过三维激光扫描得到的点云BIM模型能够非常真实地呈现地物的实际状态,作为一种基础数据类型,结合BIM工程主要有以下几方面的应用:
文物建筑保护
通过三维扫描技术,可以准确地采集和记录管理古建筑的几何信息和非建筑几何信息(位置及地物关系、构件尺寸、材料等),对文物建筑的墙面、门窗、梁柱等构件等做到数据化、标准化的建档管理,能够详尽地掌握文物的状态(变形、破裂、偏离等),方便日常的维护与修缮工作。
工程质量检测与管理
工程建设前,由三维数据构建施工现场BIM模型,为工程的设计提供精确、可靠的实地数据,保证设计的科学、合理性,并且能在进场施工之前就安排好工地布局,最大限度地减小对周围环境的影响,并且为后续的高效施工打下基础。工程建设中,使用BIM可以将土建、幕墙、机电、装饰、消防、暖通等分项进度和资源供应计划进行高效链接,指导工程建设过程,提高施工及资源的配置效率。工程建设完毕后,将完成后的三维建筑模型与设计的标准模型进行比对,实现对建筑物的精确验收,对整个工程做出客观评判。
建筑拆迁管理
通过三维扫描,能够建立起动态、可视化的建筑模型,并且获得准确的建筑物信息,将完整的建筑物信息导人BIM中,可以将建筑物的各种构建进行可重用性分级,根据不同的级别制定详细的建筑垃圾回收方案,对建筑废料进行回收再利用,尽可能减少对环境的污染,提高资源的利用率。
建筑物改造或装修
在建筑物改造和装修过程中,可以利用点云数据建立的BIM模型,进行可视化的设计,实时呈现改造或装修效果,方便制定相应的改造计划。小到一个建筑物中某一个楼层中某一个门的样式,都能详尽记录、管理。
Part53D点云技术目前的挑战
3D点云技术目前面临着一些挑战,这些挑战涉及到数据获取、处理、分析和应用等方面。目前一些主要挑战有:
1、数据获取处理:获取大规模、高质量的3D点云数据仍然是一个挑战。激光扫描和深度传感器等技术虽然在近年来有了显著进步,但依然存在成本昂贵、数据密度不足、采集速度较慢等问题。在某些场景下,数据的获取也可能受到环境条件的限制,例如室外的光线和天气状况。
2、数据噪声和不完整性:实际采集到的3D点云数据可能存在噪声、遮挡和不完整性。这些问题会对后续点云处理和应用产生影响,例如在物体识别和场景分析中可能导致误判或遗漏。
3、数据存储与计算:3D点云数据通常庞大且复杂,需要高效的存储和处理方法。在大规模场景下,数据的存储和计算成本是一个挑战。同时,对点云数据进行处理和分析所需的计算资源也是一个考虑因素。
4、点云的语义理解:对点云数据进行语义理解和分类是一个复杂的问题。点云中的点是无序的,如何准确地识别点云中的对象或场景部分,以及在点云中进行目标检测和语义分割,仍然是一个有待解决的挑战。
5、点云的高效表示和压缩:点云数据的高效表示和压缩是一个重要的研究方向。点云通常包含大量的数据点,如何用较少的存储空间和计算资源表示点云数据,以及在传输过程中进行高效压缩,是需要解决的问题。
6、数据标注与验证:对3D点云数据进行标注和验证是许多应用的基础,但这是一项耗时且需要专业知识的任务。点云数据的标注需要考虑到点云的几何形状、语义信息和物体姿态等,而这些信息的标注和验证通常需要借助特定的软件和设备。
7、实时性要求:在一些应用中,如自动驾驶和虚拟现实,需要实时处理和分析大规模的点云数据。实现实时性要求对算法和计算平台都提出了较高的要求。
克服这些挑战需要综合运用计算机视觉、深度学习、图像处理和几何处理等领域的技术。随着技术的不断发展和创新,相信这些挑战将逐渐得到解决,3D点云技术将会有更广阔的发展前景。
原文链接:https://www.zhihu.com/question/65566622/answer/3150925177