FEATURED · 精选文章

激光雷达技术解析:从原理到实战,掌握自动驾驶感知核心

发布时间 / 2026/8/20 10:12:09
来源 / 创域科博编辑部
栏目 / 资讯中心
激光雷达技术解析:从原理到实战,掌握自动驾驶感知核心 1. 从一则行业新闻看自动驾驶的“眼睛”之争前几天看到一则消息沃尔沃准备投资一家叫Luminar的激光雷达初创公司目的是“加速自动驾驶技术发展”。这新闻乍一看是车企的常规投资布局但如果你在自动驾驶圈子里待过一阵子就会明白这背后远不止“投钱”那么简单。它更像是一个信号揭示了当前高阶自动驾驶技术路线中一个核心且充满争议的部件——激光雷达正处在一个关键的十字路口。自动驾驶这辆车想真正“自己开”离不开感知、决策、控制这三大系统。而感知就是车的“眼睛”。目前主流的“眼睛”有三种摄像头、毫米波雷达和激光雷达。摄像头像人眼成本低、信息丰富但受光线天气影响大毫米波雷达测速测距准雨雾天也能工作但成像粗糙。而激光雷达则被许多人视为补齐前两者短板、实现高精度三维环境感知的“终极方案”。它通过发射激光束并接收反射来测量距离能生成周围环境的精确三维点云图识别物体的轮廓、大小甚至姿态这对于判断前方是塑料袋还是石头、是静止车辆还是路牌阴影至关重要。然而激光雷达的产业化之路一直伴随着高昂的成本、车规级可靠性的挑战以及来自特斯拉等“纯视觉派”的路线质疑。沃尔沃此次加码Luminar显然不是一时兴起。Luminar这家公司在业内以致力于开发高性能、低成本的车规级激光雷达而闻名。他们的技术路线比如采用1550纳米波长的光纤激光器相比传统的905纳米方案能在保证人眼安全的前提下实现更远的探测距离和更强的抗环境光干扰能力。这笔投资本质上是在为沃尔沃下一代高阶自动驾驶系统可能瞄准L3甚至L4级别购买一张关键的“门票”或者说是在为“安全冗余”这个沃尔沃的品牌核心价值寻找一个技术上的坚实支点。所以我们今天不聊枯燥的财经分析而是借着这个由头深入激光雷达的技术腹地。我想和你聊聊为什么车企像沃尔沃这样的“安全优等生”会对激光雷达如此执着一颗好的车规级激光雷达到底难在哪里从原理到装车它经历了怎样的蜕变以及作为开发者或爱好者我们如何利用开源的激光雷达数据和算法工具亲手触摸到这项前沿技术的脉搏无论你是想了解行业动态还是正在学习自动驾驶感知算法希望接下来的内容都能给你带来一些实在的收获。2. 激光雷达为什么它是高阶自动驾驶的“非充分但必要”条件谈论激光雷达总绕不开与特斯拉“纯视觉路线”的对比。马斯克曾称激光雷达为“拐杖”认为依赖它无法实现真正的自动驾驶。这个观点有其逻辑人类仅凭双眼就能驾驶理论上经过充分训练的AI也应该可以。但产业的现实选择往往更复杂。沃尔沃等传统车企选择激光雷达核心逻辑在于“可靠的安全冗余”而非单纯的感知能力替代。2.1 三维几何信息的不可替代性摄像头获取的是二维的RGB图像充满了纹理、颜色信息但缺乏直接的深度数据。虽然可以通过双目视觉或基于深度学习的单目深度估计来获取三维信息但这些都属于“间接测量”或“估计”其精度、稳定性和实时性在极端场景下如高速、强光逆光、纹理缺失区域面临挑战。激光雷达则提供了直接的、高精度的三维点云数据。每一个点都带有精确的(X, Y, Z)坐标。这意味着系统无需经过复杂的推理就能直接知道前方障碍物的准确距离和轮廓。对于车辆控制而言距离是计算刹车距离、规划轨迹的最直接输入。一个简单的例子在夜间一个黑色轮胎躺在路中间。摄像头可能因为低照度和低对比度而完全漏检毫米波雷达可能因其材质反射弱而信号微弱但激光雷达只要有一束光打在上面就能清晰地返回一个三维点告诉系统“这里有东西”。2.2 应对“Corner Case”的终极保险自动驾驶的难点不在于处理99%的常规路况而在于应对那1%的极端情况即“Corner Case”。比如横穿马路的塑料袋与突然窜出的小孩在摄像头图像上可能初期特征相似高架桥的阴影在特定角度下可能被误识别为障碍物暴雨中地面溅起的水花可能形成虚假目标。激光雷达的物理测距特性使其在这些场景下具有独特优势。它不依赖纹理和光照能稳定提供几何信息。结合摄像头提供语义那是什么和毫米波雷达提供运动信息它怎么动激光雷达提供几何信息它在哪多大多高构成了一个互为备份、信息互补的融合感知系统。这种多传感器冗余是当前追求高安全等级如ASIL-D自动驾驶系统的普遍架构。沃尔沃的品牌基因就是安全因此在技术路径上倾向于采用更保守、冗余度更高的方案也就不难理解了。2.3 从“有没有”到“用得好”的演进早期激光雷达如Velodyne的64线机械旋转式是自动驾驶原型车的标配但成本高达数万甚至数十万美元且体积大、可靠性尤其是应对车载振动、高低温存疑无法量产。行业近年的核心攻坚方向就是实现激光雷达的“车规化”和“低成本化”。这催生了不同的技术路线从机械旋转式到混合固态如MEMS微振镜再到纯固态如Flash闪光、OPA光学相控阵。Luminar走的是混合固态路线但其核心创新在于光源和接收器。他们采用1550纳米光纤激光器而非业界常用的905纳米半导体激光器。注意1550nm波长激光的一大优势是人眼安全阈值更高。人眼角膜和晶状体对1550nm激光吸收率很高使其难以到达视网膜因此允许发射更高的单脉冲能量从而实现更远的探测距离Luminar称可达250米以上和更强的抗环境光尤其是阳光干扰能力。但这带来了新的挑战1550nm的光电探测器成本更高需要采用铟镓砷InGaAs材料而非硅基材料。Luminar需要解决的就是如何将这套高性能系统做到车规可靠且成本可控。所以车企投资激光雷达公司不仅仅是财务行为更是深度的技术绑定和供应链保障。它们是在为未来2-3年即将量产的高阶自动驾驶车型锁定一个性能达标、供应稳定、成本可控的核心传感器。这背后的博弈是自动驾驶落地节奏与安全标准之间的平衡。3. 拆解激光雷达从原理到点云数据的生成链路要真正理解激光雷达的价值和挑战我们需要深入到它的工作原理和数据产出流程。这个过程可以类比为一种特殊的“三维扫描笔”。3.1 核心工作原理飞行时间ToF测距目前主流车载激光雷达都采用飞行时间法。原理非常简单发射一束极短的激光脉冲记录发射时间T1激光打到物体后反射回来被接收器接收记录时间T2。光速c是已知的那么距离d c * (T2 - T1) / 2。但实现起来极其精密激光发射需要产生纳秒甚至皮秒级的超短脉冲确保测距精度。同时激光器本身要能在-40°C到105°C的车规温度范围内稳定工作。光束扫描要让激光覆盖前方区域就需要扫描。机械旋转是早期方式现在主流是混合固态。以MEMS微振镜为例通过微小的镜片在两个维度上的高频振动反射激光束从而实现面阵扫描。这要求振镜材料、驱动和控制电路具有极高的可靠性和寿命。信号接收反射光通常极其微弱。接收器APD雪崩光电二极管或SPAD单光子雪崩二极管需要极高的灵敏度。环境光尤其是太阳光会产生巨大的噪声因此需要在光学前端加装窄带滤光片只允许激光器特定波长的光通过。时间测量测量T2-T1这个纳秒级的时间差需要高精度的时间数字转换器TDC其精度直接决定了测距的厘米级甚至毫米级精度。3.2 点云数据的诞生从单个点到三维世界单个激光脉冲只能测一个点的距离。通过扫描激光雷达在一帧时间内通常是0.1秒即10Hz会发射数十万甚至数百万个脉冲获得同等数量的测距点。每个点除了距离d还需要知道它的指向角度水平角α和垂直角β。结合雷达内部精确的扫描模型和标定参数就能计算出每个点在激光雷达自身坐标系下的三维坐标(X, Y, Z)。通常一个原始数据点会包含以下信息空间坐标(x, y, z)反射强度(Intensity)物体表面材质反射激光的能力金属、玻璃反射强沥青、布料反射弱。这是非常有用的语义线索。时间戳(Timestamp)精确到微秒级用于多传感器同步和运动补偿。激光线号(Ring ID)对于多线雷达标识这个点来自哪一条激光发射器。成千上万个这样的点就构成了一帧“点云”Point Cloud。点云是离散的、稀疏的相对于图像像素的密集但它忠实地记录了物体表面的几何形状。3.3 数据处理的挑战噪声、运动畸变与校准原始点云不能直接使用需要经过一系列预处理去噪滤除因空气中的尘埃、雨滴、传感器噪声产生的无效散点。运动畸变补偿在扫描一帧的100毫秒内车辆自身在运动。这会导致点云发生“拖影”。需要通过结合车载惯性测量单元IMU的高频位姿数据将这一帧内所有点统一校正到某个时刻如帧起始时间的坐标系下。传感器标定激光雷达的安装位置和角度外参必须精确已知才能将点云转换到车辆坐标系下与摄像头、雷达的数据进行融合。内参如每条激光线的偏斜角、零点偏移也需要校准否则点云会“重影”或扭曲。实操心得处理开源激光雷达数据集如KITTI, nuScenes时第一步永远是确认数据是否已经过运动补偿和传感器标定。很多初学者直接使用原始点云做目标检测效果不佳原因往往就是忽略了运动畸变。一个简单的检查方法是观察静止场景如停在路边的车辆的点云如果车辆轮廓清晰、没有“拉丝”现象说明数据质量较好。4. 开发者实战如何利用开源工具链处理激光雷达数据对于开发者、学生或研究者而言动辄数十万元的激光雷达硬件门槛太高。但幸运的是我们有丰富的开源数据集和软件工具可以在电脑上模拟一个完整的激光雷达数据处理流程。这里我以常用的KITTI数据集和Python生态工具为例带你走一遍从数据加载到可视化、再到简单目标检测的流程。4.1 环境准备与数据获取首先你需要一个Python环境建议3.8以上并安装核心库pip install numpy open3d pykitti matplotlib opencv-pythonnumpy: 数值计算基础。open3d: 强大的点云处理与可视化库英特尔出品易用性远超早期的PCLPoint Cloud LibraryPython绑定。pykitti: 专门用于便捷读取KITTI数据集的工具包。matplotlibopencv-python: 用于图像可视化与处理如果需要做多传感器融合。KITTI数据集官网提供部分样本数据下载。对于入门下载“Raw Data”中一个较小的场景如2011_09_26_drive_0001即可它包含了同步的激光雷达点云Velodyne HDL-64E、彩色图像、GPS/IMU数据等。4.2 点云数据读取与可视化使用pykitti.raw可以轻松加载数据。下面是一个读取单帧点云并用Open3D可视化的示例import pykitti import numpy as np import open3d as o3d # 指定数据路径和日期、驱动号 basedir /your/path/to/kitti/raw date 2011_09_26 drive 0001 # 加载数据 dataset pykitti.raw(basedir, date, drive) # 获取第一帧的点云Velodyne扫描 # 点云数据是一个Nx4的数组每行[x, y, z, reflectance] point_cloud dataset.get_velo(0) # 索引0表示第一帧 # 分离坐标和反射强度 points point_cloud[:, :3] # x, y, z intensity point_cloud[:, 3] # 反射强度 # 使用Open3D创建点云对象 pcd o3d.geometry.PointCloud() pcd.points o3d.utility.Vector3dVector(points) # 可选用反射强度值给点云上色归一化到0-1之间 colors np.zeros_like(points) # 将强度值映射到灰度或彩虹色图 intensity_normalized (intensity - intensity.min()) / (intensity.max() - intensity.min()) # 使用彩虹色图 import matplotlib.cm as cm cmap cm.get_cmap(rainbow) colors cmap(intensity_normalized)[:, :3] # 取RGB忽略Alpha pcd.colors o3d.utility.Vector3dVector(colors) # 可视化 o3d.visualization.draw_geometries([pcd], window_nameKITTI Point Cloud, width1024, height768, left50, top50)运行这段代码你会看到一个交互式的三维点云窗口。你可以用鼠标旋转、缩放观察街道、车辆、行人的三维结构。反射强度着色能帮你区分不同材质比如金属车身的点通常更亮。4.3 基础处理地面分割与聚类原始点云包含地面、障碍物等所有信息。一个基础且关键的操作是分割出地面点因为地面通常不是我们关心的障碍物。一个经典的方法是使用平面拟合如RANSAC随机采样一致性算法。from open3d.geometry import PointCloud from open3d.visualization import draw_geometries import open3d as o3d # 假设pcd是上一步加载的点云 # 使用RANSAC分割平面地面 plane_model, inliers pcd.segment_plane(distance_threshold0.3, ransac_n3, num_iterations1000) [a, b, c, d] plane_model # 平面方程 ax by cz d 0 print(fPlane equation: {a:.2f}x {b:.2f}y {c:.2f}z {d:.2f} 0) # 分割点云 inlier_cloud pcd.select_by_index(inliers) # 地面点云 inlier_cloud.paint_uniform_color([0, 1, 0]) # 地面标为绿色 outlier_cloud pcd.select_by_index(inliers, invertTrue) # 非地面点云障碍物 # 可视化分割结果 draw_geometries([inlier_cloud, outlier_cloud])分割出障碍物点云后下一步是将它们聚类成独立的物体如车辆、行人。DBSCAN是一种常用的基于密度的聚类算法适合处理点云。import numpy as np # 将非地面点云转换为numpy数组 obstacle_points np.asarray(outlier_cloud.points) # 使用Open3D的DBSCAN聚类需要将点云对象转换回来 obstacle_pcd o3d.geometry.PointCloud() obstacle_pcd.points o3d.utility.Vector3dVector(obstacle_points) with o3d.utility.VerbosityContextManager(o3d.utility.VerbosityLevel.Debug) as cm: labels np.array(obstacle_pcd.cluster_dbscan(eps0.5, min_points10, print_progressTrue)) max_label labels.max() print(fpoint cloud has {max_label 1} clusters) colors plt.get_cmap(tab20)(labels / (max_label if max_label 0 else 1)) colors[labels 0] 0 # 噪声点标为黑色 obstacle_pcd.colors o3d.utility.Vector3dVector(colors[:, :3]) # 可视化聚类结果 o3d.visualization.draw_geometries([obstacle_pcd])踩坑记录distance_threshold地面分割距离阈值和epsDBSCAN聚类半径这两个参数需要根据点云的尺度单位是米和场景动态调整。KITTI数据集的点云比较干净阈值可以小一些。如果是自己采集的、噪声较大的数据阈值需要放宽。聚类时min_points最小点数设置太小会产生大量碎片化聚类太大会漏检小物体如行人。这是一个需要根据实际数据反复调试的过程。5. 进阶点云深度学习与自动驾驶感知任务传统点云处理方法如上述聚类规则简单但泛化能力弱难以处理复杂场景。近年来基于深度学习的点云处理方法已成为主流。这涉及到如何将无序、稀疏的点云数据转换为神经网络能够处理的格式。5.1 点云深度学习的几种主流范式体素化Voxelization将三维空间划分为均匀的网格体素将点云统计特征如点的密度、平均反射强度填入网格形成三维体素网格。然后可以使用3D卷积神经网络3D CNN进行处理。代表性工作是VoxelNet。优点是规整利于CNN处理缺点是会丢失细节且计算量和内存消耗随分辨率立方增长。点云直接处理直接处理原始点云。最具里程碑意义的是PointNet系列。PointNet通过对称函数如最大池化来保证点云无序性的置换不变性直接学习每个点的特征然后聚合为全局特征。PointNet在此基础上引入了层次化特征学习能更好地捕捉局部结构。这类方法保留了点的精确坐标但计算相对复杂。投影法将三维点云投影到二维平面。最常见的是鸟瞰图BEV投影和范围图Range Image投影。将点云的高度、强度等信息编码为图像通道然后使用成熟的2D CNN进行处理。这种方法效率高易于与图像CNN架构融合是许多自动驾驶公司的落地选择。5.2 实战使用OpenPCDet进行点云目标检测对于想快速入门点云深度学习的开发者我强烈推荐上海AI实验室开源的OpenPCDet框架。它集成了多种经典的点云3D检测模型如PointPillars, SECOND, PV-RCNN代码清晰文档齐全并且支持KITTI、nuScenes等主流数据集。下面简述在KITTI数据集上训练一个PointPillars模型的基本步骤第一步环境配置按照OpenPCDet官方GitHub仓库的README安装PyTorch、spconv等依赖。这一步可能因系统环境而异需要仔细处理。第二步数据准备OpenPCDet有专门的数据预处理脚本。你需要将KITTI数据集的原始数据组织成其要求的格式通常包括将点云二进制文件.bin放在指定目录。准备标注文件.txt包含每个物体的类别、3D框尺寸、位置、朝向等。运行提供的脚本生成数据索引和信息文件。第三步配置与训练OpenPCDet使用yaml文件进行配置。你可以选择一个基准配置文件如pointpillar.yaml修改其中的数据路径、批次大小、训练轮数等参数。 然后运行一行训练命令即可开始python train.py --cfg_file cfgs/kitti_models/pointpillar.yaml第四步测试与可视化训练完成后使用测试脚本在验证集上评估模型性能计算3D检测的精度和召回率并可以可视化检测结果。# 一个简化的推理和可视化示例思路非完整代码 from pcdet.models import build_network from pcdet.datasets import build_dataloader from pcdet.utils import common_utils # 加载配置和模型 cfg, _ ... # 加载配置文件 model build_network(...).cuda() checkpoint torch.load(path/to/checkpoint.pth) model.load_state_dict(checkpoint[model_state_dict]) model.eval() # 加载单帧数据 dataloader build_dataloader(...) batch next(iter(dataloader)) # 前向推理 with torch.no_grad(): pred_dicts, _ model(batch) # 将预测结果3D框和点云一起可视化 # OpenPCDet内部通常使用Mayavi或Open3D进行可视化个人体会从传统方法切换到深度学习最大的感受是“数据驱动”和“工程化”的重要性。深度学习模型性能的上限很大程度上由数据质量和数量决定。数据标注3D框标注成本极高。此外整个训练流水线数据增强、模型架构、损失函数设计、训练技巧的每个环节都影响最终效果。OpenPCDet这样的框架为我们提供了很高的起点但要想在实际场景中获得好效果深入理解模型原理、并根据自己的数据特点进行调整是必不可少的。6. 激光雷达数据的“灵魂”标定、融合与SLAM激光雷达数据很少单独使用。在自动驾驶系统中它需要与摄像头、毫米波雷达、IMU/GNSS等传感器数据融合才能发挥最大价值。而融合的前提是精确的传感器标定。同时激光雷达也是实现高精度定位与建图SLAM的关键传感器。6.1 多传感器标定让所有“眼睛”看向同一处标定分为内参标定和外参标定。内参标定确定传感器自身内部的参数。对于激光雷达包括每个激光发射器的偏角、零点等。这通常由制造商在出厂前完成。外参标定确定不同传感器之间的相对位置和姿态关系。例如激光雷达坐标系到车身坐标系的变换矩阵旋转R和平移t激光雷达到摄像头的变换矩阵。外参标定不准融合就是灾难。比如激光雷达检测到一个障碍物在正前方10米但摄像头的外参有偏差导致这个障碍物在图像上的投影位置错了后续的融合算法就无法正确关联。常见的标定方法离线标定使用特定的标定物如带有特殊图案的标定板、立方体等同时被所有传感器观测到通过优化算法求解外参。工具如Autoware的标定工具包、百度Apollo的校准工具。在线标定在车辆行驶过程中利用自然场景中的特征如地面、建筑物边缘进行自动或半自动标定。这对传感器的长期稳定性至关重要因为车辆震动可能导致外参轻微变化。实操技巧对于初学者可以尝试用lidar_camera_calibration这类开源工具进行激光雷达和摄像头的联合标定。你需要一个棋盘格标定板。同时录制包含标定板的点云和图像数据然后运行标定程序。关键是要确保标定板在点云和图像中都能被清晰、完整地检测到。6.2 激光雷达与视觉融合优势互补融合的层次可以分为数据级早期、特征级中期和决策级晚期。目前主流是特征级和决策级融合。决策级融合最简单。摄像头和激光雷达各自独立完成目标检测然后对两个检测结果列表进行关联和融合。比如激光雷达提供一个3D框摄像头在对应图像区域也检测到了一个“汽车”且两者在空间投影上重合则确认为一个真目标并综合两者的属性如激光雷达提供精确位置和大小摄像头提供颜色、车型等。这种方法容错性高但可能丢失互补的中间信息。特征级融合更深入。例如将激光雷达生成的鸟瞰图BEV特征图与摄像头图像通过CNN提取的特征图进行融合通常需要将图像特征通过已知的外参“提升”到BEV空间或反之然后在融合后的特征图上进行目标检测。代表性工作如BEVDet, BEVFusion。这种方法能更好地利用两种数据的优势但算法复杂对标定精度要求极高。6.3 激光雷达SLAM构建高精地图与实时定位SLAM同步定位与建图是自动驾驶的核心技术之一。激光雷达凭借其精确的三维测距能力是实现激光SLAMLiDAR SLAM的理想传感器。其基本流程是帧间匹配将当前帧点云与上一帧点云或局部地图进行匹配估计出车辆在这两帧之间的运动里程计。常用算法有ICP迭代最近点及其变种、以及基于特征如平面、角点的匹配方法。回环检测识别出车辆回到了之前访问过的地方从而修正累积的里程计误差。激光SLAM中常使用基于点云全局描述子如Scan Context, M2DP的方法进行回环检测。后端优化将所有的帧间约束和回环约束构成一个图优化问题使用g2o、Ceres等优化库进行全局优化得到全局一致的地图和轨迹。经典开源方案LOAM、LeGO-LOAM、LIO-SAM融合IMU等都是非常优秀的激光惯性SLAM算法。对于想深入研究的开发者阅读这些算法的代码是极好的学习方式。经验之谈纯激光SLAM在开阔、特征丰富的场景如城市街道下效果很好。但在长走廊、隧道、动态物体多的场景下容易失效。因此工业级方案无一例外地采用多传感器融合SLAM结合IMU提供高频短时精度、轮速计、GNSS提供绝对位置等来保证在各种极端环境下的鲁棒性。这也是为什么自动驾驶车辆上传感器越来越多的原因之一——没有一颗传感器是完美的但通过巧妙的融合系统可以变得足够可靠。7. 展望与思考激光雷达产业的未来与开发者的机会回到开头的新闻沃尔沃投资Luminar只是激光雷达产业浪潮中的一朵浪花。这条赛道早已巨头林立有传统的Velodyne、Ouster有科技公司入局的华为、大疆Livox有初创明星禾赛、速腾聚创、图达通还有试图颠覆技术的纯固态雷达公司。竞争的核心围绕性能、可靠性和成本展开最终目标是让高性能激光雷达成为每辆智能汽车的“标配”。对于开发者而言这意味着什么数据与算法的需求将持续爆发更多搭载激光雷达的车辆上路意味着海量点云数据的产生。如何处理、分析、挖掘这些数据对感知算法检测、分割、跟踪、高精地图构建、仿真测试等都提出了更高要求。熟练掌握点云深度学习框架如OpenPCDet, MMDetection3D、SLAM算法和传感器融合技术的人才会越来越抢手。工具链与中间件日趋重要如何高效地管理、标注、训练、部署激光雷达相关模型是一个庞大的系统工程。ROS 2、Autoware.Auto、百度Apollo等开源自动驾驶框架以及NVIDIA DRIVE、华为MDC等计算平台都在构建完整的工具链。了解这些平台和中间件能让你站在巨人的肩膀上。仿真将成为关键能力实车数据采集成本高昂且难以覆盖所有极端场景。基于仿真的测试和模型训练变得至关重要。学习使用CARLA、LGSVL等自动驾驶仿真平台掌握在虚拟世界中生成、编辑和利用激光雷达点云数据的方法是进阶的必备技能。“软硬件协同”的理解至关重要不再将激光雷达视为一个简单的数据输出黑盒。了解其工作原理如扫描模式、光束发散角、点云密度分布、性能边界最大测距、视场角、角分辨率和典型噪声模式能帮助你设计出更鲁棒的算法。例如知道雷达在远处点云稀疏就可以在算法中针对性地增加远处目标的检测不确定性。激光雷达不是自动驾驶的“银弹”但它确实是当前实现高阶自动驾驶安全冗余不可或缺的关键拼图。它的故事是一场跨越物理学、光学、电子学、软件算法和汽车工程的漫长跋涉。作为开发者我们或许无法亲自设计一颗雷达但我们可以通过代码去理解和驾驭它产生的数据从而参与到塑造未来交通形态的宏大进程之中。从这个角度看打开一个点云文件那闪烁的三维世界不仅仅是一串坐标更是一扇通往未来技术深处的大门。
RELATED — 相关阅读

相关资讯

LATEST — 最新资讯

最新发布

TODAY — 本日精选

新闻

WEEKLY — 本周精选

新闻

MONTHLY — 本月精选

新闻