当前位置:首页>自动驾驶>自动驾驶之定位高精地图篇

自动驾驶之定位高精地图篇

  • 2026-08-01 19:46:59
自动驾驶之定位高精地图篇
前言:定位篇讲了 GNSS、IMU、RTK 这些基础定位模块,单靠它们能做到米级、分米级精度。地图篇也讲过地图的分类和众包方案。但自动驾驶真正需要的是厘米级——这就得靠高精地图(HD Map)+ 多传感器融合。这一篇就来展开这条技术路线:先看看 HD Map 和导航地图有什么本质区别、地图是怎么造出来的、三种主流格式标准各有什么特点,然后重点讲车端怎么用 HD Map 做厘米级匹配定位、多传感器怎么融合、实际工程中有哪些绕不开的难题,最后看看 V2X 怎么给单车定位打补丁。欢迎大家一起探讨~

一、为什么再提定位

之前的定位篇讲到,GNSS + RTK 在开阔路段能到分米级,但有两个硬伤:

问题

原因

后果

城市峡谷

高楼遮挡 + 多径反射(卫星信号在建筑表面反射后才到达接收端)

RTK 修正失效,精度退化到米级甚至更差

隧道 / 地下

GNSS 信号完全丢失

只能靠 IMU 惯性推算,误差随时间累积

先解释一下多径效应。RTK 的工作原理是靠基准站发送修正信号,接收端根据修正信号消除大气延迟和卫星钟差等误差。但城市高楼之间,卫星信号会在建筑表面反射多次才到达车端接收器——接收器收到的不是直线信号,而是一堆"回音"。RTK 分不清哪个是直线信号、哪个是回音,修正就算错了。结果就是,明明在城市开阔路段 RTK 能到 10-20cm,一进高楼区就可能退化到 2-5 米。
再看 IMU。IMU(惯性测量单元)通过加速度计和陀螺仪测量加速度和角速度,然后积分得到位置和姿态。短期精度很高——零点几秒内能到毫米级。但积分操作会累积误差:加速度计有一个微小的恒定偏差(bias),积分一次变成速度误差,再积分一次变成位置误差——误差随时间二次方增长。跑 10 秒可能漂出 1-2 米,跑 60 秒就可能漂出十几米。

定位方式

理想精度

实际退化场景

退化后精度

GNSS 单点

5-10m

城市峡谷

10-50m

GNSS + RTK

10-20cm

城市峡谷/树木遮挡

1-5m

IMU 惯性推算

短期 mm-cm

累积漂移

10s 后 1-2m

而 L3+ 自动驾驶对横向定位精度的要求是≤10cm——因为车道宽度只有 3.5m 左右,车辆必须精确知道自己在车道内的横向位置,偏 20cm 就可能压线。
所以光靠 GNSS + IMU,在城市和隧道场景里是撑不住的。这就引出了 HD Map 定位的核心思路:把地图当"先验知识",让车端传感器实时数据和地图做匹配,反推自己的精确位置。
一句话:上篇讲的是"我大概在哪",这篇讲的是"我精确在哪"。

二、HD Map vs 导航地图——本质区别

地图篇里做过地图分类(SD → SDPro → ADAS → HDLite → HD → 众包),这里不重复六级递进,直接看 HD Map 和导航地图的本质差异:

维度

导航地图(SD Map)

高精地图(HD Map)

精度

米级(道路中心线,误差 5-15m)

厘米级(车道线、杆件,误差 <10cm)

内容

道路网络、POI、路名

车道线、交通标志、信号灯、杆件、路面标识、拓扑关系

更新频率

季度~年度

日级~周级(高速公路)/ 小时级(城市道路)

数据格式

矢量路网 + 属性

三维点云 + 矢量语义 + 拓扑图

用途

路径规划、导航

定位、规划、感知先验

数据量

GB 级

TB 级(一个城市的 HD Map 可能几十 GB)

几个关键区别值得展开说:
1. 精度差两个数量级。导航地图画的路只是"这条路大概在哪",HD Map 画的路是"这条车道线在经纬度 (x, y, z) 处,精度 ±5cm"。差了两个数量级——一个是让你"知道走哪条路",另一个是让你"知道车在车道里偏了多少"。
2. HD Map 不只是"地图",而是"结构化数据库"。导航地图是一张可视化的路网图,而 HD Map 是一个结构化的三维数据库——里面每个元素(车道线、信号灯、杆件)都有精确的三维坐标、类型标签、关联关系(哪条车道能转向哪条车道,哪个信号灯管哪个方向)。
3. 更新逻辑完全不同。导航地图靠地图厂商定期发布新版本,用户下载更新包。HD Map 也需要更新,但更新频率高得多——城市道路天天施工,车道线重画、路面修整、新增护栏,地图一过时定位就可能出错。所以 HD Map 的更新机制更复杂,后面会专门讲。
一句话总结:导航地图告诉你"路在哪",HD Map 告诉车辆"每个车道线、每个杆件、每个信号灯在哪"——精度差两个数量级,用途完全不同。

三、HD Map 里哪些元素能用于定位

以 Apollo HD Map 为例,一张完整的高精地图包含六大元素。但不是每个元素对定位都有用——重点看特征越明显、越不容易变的元素

元素

含义

定位方式

道路元素

车道线、停止线、人行横道

Camera 视觉匹配(横向约束)

车道标记

直行/左转/右转箭头

辅助验证

交通标志

限速牌、禁止通行牌

Camera 视觉参照

交通信号灯

红绿灯位置、关联车道

Camera 视觉参照

静态物体

建筑物、路灯杆、电线杆

LiDAR 点云匹配(核心锚点)

数据元素

坐标系、地图版本、采集时间

基础框架

感知篇里把这些物体做过全量分类——行人、车辆归为动态,建筑物、杆件归为"非生命体"。到了定位这里,动态物体不能用(位置不固定,你今天停在这的路边车明天就不在了),静态物体才是宝——尤其是路灯杆、交通灯柱这类"又高又细又固定"的物体。
为什么杆件是最佳锚点?从 LiDAR 点云匹配的角度看:
建筑物:面积大但形状不规则,不同角度扫描到的点云差异大
路灯杆 / 电线杆:形状规则(近似圆柱),从任何角度扫描都能稳定识别,而且在点云中形成特征非常明显的"竖直线条"
车道线:在摄像头图像里清晰,但 LiDAR 点云中只是地面上的浅沟,特征弱
所以实际工程中,LiDAR 匹配主要靠杆件,Camera 匹配主要靠车道线——两种传感器各取所长。
一句话:HD Map 不是一张图片,而是一个结构化的数据库——里面每个元素都有精确坐标、类型、关联关系,定位时按需取用。

四、地图怎么"造"出来的

地图篇详细讲过建图流程(外业采集→中业预处理→内业校正→发布→更新)和众包方案(Mobileye REM),这里不重复定义,但从定位视角把流水线完整走一遍——因为地图造得好不好,直接决定后面定位准不准

4.1 四步流水线

第一步——数据采集。专业采集车搭载 LiDAR + 多目摄像头 + GNSS/IMU(高精度组合导航系统),在城市道路和高速上反复行驶。采集车不是普通的车,它的设备配置:

设备

作用

LiDAR

采集三维点云,精度 mm 级

多目摄像头

采集全景图像,用于语义提取

GNSS/IMU(RTK 级组合导航)

给每一帧数据打上精确时间戳和位姿标签

轮速计

辅助 IMU 推算,减少累积误差

采集车走一遍还不够——同一条路通常要跑2-3 趟,不同时间、不同方向,后面在处理环节把多趟数据拼到一起,消除遮挡和噪声。
第二步——数据处理。核心是点云拼接。每趟采集到的点云是零散的片段,需要拼成连续的三维场景。拼接原理:用 GNSS/IMU 提供的位姿做初始对齐,再用 ICP 或 NDT 算法做精细配准,把多趟点云融合到一个统一坐标系下。拼接完成后生成底图——一个完整的三维环境模型。

处理环节

做什么

关键技术

点云去噪

去除飞点(LiDAR 打到飞虫、雨滴等产生的噪点)

统计滤波

多趟拼接

把 2-3 趟点云融合到同一坐标系

ICP / NDT 配准

底图生成

从拼接后的点云提取路面、建筑、杆件

分类算法

图像正射校正

把摄像头图像和点云对齐

标定 + 投影

第三步——元素识别。用深度学习从图像和点云中自动提取地图元素:
图像中提取:车道线(语义分割)、交通标志(目标检测)、信号灯(目标检测 + 状态识别)
点云中提取:路面区域(分类)、建筑物轮廓、杆件位置
感知算法篇讲过这些算法——语义分割(FCN / U-Net / DeepLab 系列)和目标检测(YOLO / Faster R-CNN 系列)。建图就是这些算法的"大规模工程应用"。
第四步——人工验证。AI 提取的元素不能直接用,需要人工核对。重点核对的是拓扑关系——哪条车道能转向哪条车道、哪个信号灯管哪个方向、停止线在哪个位置。这种逻辑关系 AI 容易搞错(比如把左转道的信号灯关联到直行道上),必须人工确认。

用互联网黑话说,这四步就是"原料采集 → 半成品加工 → 智能质检 → 人工终检"。

4.2 更新机制——地图的"保鲜"问题

地图不是造好就完事了,道路环境一直在变——施工改道、车道线重画、新增护栏、信号灯移位。地图过时,定位就可能出错。

更新方式

原理

代表

特点

专业采集车定期更新

采集车定期重跑

TomTom、Here

精度高,但成本高、更新慢

众包更新

普通量产车采集数据上传

Mobileye REM、百度 Apollo

覆盖广、更新快,但精度依赖车型

V2X 在线更新

车端按需下载最新区域地图

C-V2X Map_download

实时性最好,依赖通信基础设施

地图篇讲过 Mobileye REM 的众包方案——通过量产车搭载的摄像头采集路标、车道线等"路书"数据,上传云端聚合。这里补充一点:众包更新虽然成本低,但有个绕不开的问题——不同车型的传感器配置不同,采集到的数据精度参差不齐,云端聚合时需要做大量标定和校验工作。专业采集车精度高但成本也高,众包精度低但胜在覆盖广,实际工程中通常是两条腿走路
一句话:地图里少了一个路灯杆,车开到那里就少一个锚点;地图里车道线位置偏了 20cm,车就以为自己在车道中间实际已经偏了 20cm。地图质量是定位精度的天花板。

五、格式标准的"定位影响"
地图篇介绍过 NDS、OpenDRIVE、ADASIS 等标准体系。这里不重复背景,直接看三种主流格式在描述方式和定位影响上的区别——因为格式不同,匹配定位的 pipeline 也不一样。

5.1 OpenDRIVE——参考线派

OpenDRIVE 是国际上最通用的道路描述标准(由 ASAM 组织维护),核心思路是参考线(Reference Line)。每条道路先画一条参考线,然后所有车道、标志、标线都相对于参考线定位。
参考线由五种基本几何元素组成:

几何元素

用途

直线(line)

直道

圆弧(arc)

等曲率弯道

螺旋线(spiral / clothoid)

曲率渐变段(高速匝道出入口)

三次多项式(cubic polynomial)

不规则曲线路段

参数三次曲线(param cubic)

复杂曲线拟合

OpenDRIVE 的优点是描述能力强——能用参考线 + 相对偏移精确表达任意道路几何。但对定位来说有个问题:参考线是连续数学曲线,实际匹配时需要把曲线离散化成点,多了一步转换。

5.2 Lanelet——点级存储派

Lanelet(由 Bender 等人 2014 年提出)走的是完全不同的路线:不用参考线,直接存储每个点的绝对坐标,用图网络表达道路之间的拓扑关系。

特征

说明

点级存储

每个 (x, y) 点直接存储,不做曲线拟合

图网络拓扑

车道之间的连接关系用图的边表示

天然适合匹配

不需要离散化,直接拿点和传感器数据做配准

对定位来说,Lanelet 的点级存储有个天然优势——LiDAR 点云本身就是一组离散点,和 Lanelet 的点直接做匹配,少了"曲线 → 离散点"的转换步骤。但 Lanelet 的缺点是数据量大(每个点都要存),且道路的曲线段需要存很多点才能表达平滑。

5.3 Apollo OpenDrive——L4 优化派

Apollo OpenDrive 是百度在 OpenDRIVE 基础上的扩展版本,针对 L4 自动驾驶场景做了增强:

扩展内容

为什么需要

红绿灯精确三维坐标

定位需要知道信号灯的空间位置

检测区域(Detection Area)

感知模块需要知道该关注哪个区域

停止线位置

规划模块需要精确知道在哪停车

路口拓扑关系

规划模块需要知道路口怎么走

道路边界

感知模块需要区分可行驶区域

5.4 三种格式对比

OpenDRIVE

Lanelet

Apollo OpenDrive

描述方式

参考线 + 相对偏移

点级存储 + 图网络

参考线 + L4 扩展字段

几何精度

取决于参考线拟合质量

点级精度高

继承 OpenDRIVE + 补充

拓扑表达

弱(道路级)

强(车道级图网络)

强(补充了路口拓扑)

匹配适配

需离散化转换

直接点对点匹配

工程友好

定位影响

参考线拟合误差会影响匹配

精度高但数据量大

定位专用字段多

一句话对比:OpenDRIVE 是"普通话",Lanelet 是"学术方言",Apollo OpenDrive 是"百度方言"——语法不一样,但都在描述同一件事。对定位来说,Lanelet 的点级存储适合做点云匹配,Apollo OpenDrive 的额外字段对工程落地更友好。

六、HD Map 定位的核心——匹配与融合
前面五章都是"准备工作"——为什么需要 HD Map、HD Map 和导航地图的区别、地图里有什么、怎么造的、格式标准是什么。这一章才是本文的核心:车端传感器数据怎么和 HD Map 做匹配,反推出厘米级位置。

6.1 定位原理

核心就一句话:"我现在看到的"和"地图上应该看到的"对上号了,就知道自己在哪。
具体来说,定位要解的是位姿(Pose)——位置 (x, y, z) + 姿态(roll, pitch, yaw),共 6 个自由度。匹配算法做的事就是在地图坐标系里找一个 6 自由度的变换,让车端传感器数据和地图数据"最对齐"。

6.2 点云匹配——两种主流算法

LiDAR 采集的实时点云和地图里的点云做配准,是 HD Map 定位的主力手段。两种经典算法:

ICP

NDT

全称

Iterative Closest Point(迭代最近点)

Normal Distributions Transform(正态分布变换)

论文

Besl & McKay, 1992

Biber & Strasser, 2003

核心思路

逐点找最近邻,迭代优化变换

把点云分成网格,用正态分布建模,在概率空间优化

计算方式

每次迭代对所有点做最近邻搜索

把目标点云网格化,每个网格用一个高斯分布表示

精度

较高

速度

慢(暴力搜索 O(N²),实际用 kd-tree 优化为 O(N log N))

快(网格化后搜索空间大幅缩小)

初始位姿要求

高(初始偏差大容易陷入局部最优)

低(概率匹配更鲁棒)

Apollo 选择

✅ Apollo 定位模块使用 NDT

ICP 的步骤:
  1. 从源点云(车端实时数据)中每个点出发,在目标点云(地图数据)中找最近邻点
  2. 计算两组对应点之间的最优变换(旋转 + 平移)
  3. 施加变换后,重新计算最近邻
  4. 重复 2-3 直到收敛(变换量小于阈值)

类比:ICP 像"一个点一个点地拼图"——每次找一个最像的拼上去,慢慢逼近。问题是如果一开始放歪了,后面越拼越歪(局部最优)。

NDT 的步骤:
  1. 把目标点云(地图数据)空间划分成网格(通常 2m × 2m × 2m)
  2. 计算每个网格内点的均值和协方差,用一个三维正态分布表示
  3. 把源点云(车端实时数据)的每个点投影到目标网格中
  4. 计算每个点落在对应正态分布下的概率(似然),最大化总似然
  5. 用优化算法(如 Newton 法)求解最优变换

类比:NDT 像"先把拼图分成区域,拼好区域再拼细节"——每个区域不追求精确到点,而是看整体概率分布像不像。更粗放但也更快、更鲁棒。

Apollo 选择 NDT 而不是 ICP,主要考虑的是速度和鲁棒性——自动驾驶要求实时定位(10-20Hz 更新频率),ICP 的计算量在 128 线 LiDAR 场景下太大,而且 GNSS/IMU 给的初始位姿可能偏差较大时,ICP 容易匹配失败。

6.3 状态估计——融合的数学工具

点云匹配给出了"当前帧"的位姿,但单帧结果有噪声——路面颠簸、动态车辆遮挡都会引入误差。需要用状态估计算法把多帧结果和多传感器数据融合,输出平滑、稳定的位姿。
最常用的是EKF(Extended Kalman Filter,扩展卡尔曼滤波)

步骤

做什么

类比

预测

用上一时刻的位姿 + 运动模型(IMU 提供的加速度/角速度)推算当前位姿

"根据上次位置和速度,猜现在在哪"

更新

当传感器测量到达(LiDAR 匹配结果 / GNSS),用测量修正预测值

"传感器说我在 A,但我猜在 B,折中一下"

输出

融合后的最优估计位姿

当前位姿

EKF 的核心是卡尔曼增益——它决定了"更信预测还是更信测量"。如果传感器数据质量好(如开阔路段 RTK 精度高),增益偏向测量;如果传感器数据差(如隧道里 GNSS 丢失),增益偏向预测(IMU 推算)。这个权重是动态调整的,传感器质量好时多信传感器,传感器质量差时多信模型预测。

用互联网黑话说,EKF 就是"多方对齐"——预测说往左,测量说往右,根据各自的可信度折中一个最优解。

除了 EKF,现代 SLAM 系统中还常用因子图优化(Factor Graph Optimization)——把所有约束(传感器测量、运动模型、闭环检测)建图,在图上做全局优化。GTSAM 和 g2o 是常用的因子图优化库。因子图的优势是能处理多变量联合优化闭环约束(回到走过的地方时修正累积误差),适合离线建图场景。

6.4 多传感器融合策略

点云匹配不是唯一手段,实际工程中是多传感器分层融合

层级

传感器

贡献

精度级别

第一层

GNSS + IMU

给出初始位姿——"大概在哪"

分米、米级

第二层

LiDAR ↔ HD Map

NDT 匹配——"精确在哪"

厘米级

第三层

Camera ↔ HD Map

车道线/标志牌匹配——"横向微调"

厘米级(横向)

这三层不是简单的并行,而是有依赖关系
为什么需要初始位姿缩小搜索范围?因为 NDT 匹配是一个优化问题——在地图坐标系里搜索一个 6 自由度变换,让车端点云和地图点云最对齐。搜索空间越大,计算量越大,也越容易陷入局部最优。GNSS/IMU 给了一个初始估计,相当于告诉 NDT "别满世界找了,就在这个位置附近 2-3 米范围内搜",大幅降低计算量。

融合方案

传感器组合

各自贡献

LiDAR + HD Map

激光雷达 + 地图

点云匹配 → 厘米级位姿(主力)

Camera + HD Map

摄像头 + 地图

识别车道线/标志牌 → 横向约束(辅助)

GNSS/IMU + HD Map

定位模块+ 地图

GNSS/IMU 给初始位姿 → 缩小匹配搜索范围

iDAR

摄像头 + LiDAR 一体化

同一硬件同时输出 RGB + 点云(AEye 的专利技术;MobilEye 走的是另一条路线——摄像头优先 + 独立 LiDAR 外挂)

硬件篇详细讲过这些传感器的特性,传感器融合篇讲过数据流视角——这里的关键是:GNSS/IMU 提供"大概在哪",LiDAR 匹配提供"精确在哪",Camera 做横向微调。三层叠加,精度才能到厘米级。

6.5 SLAM——同时定位与建图

除了"先有地图再匹配"的思路,还有一种方法叫SLAM(Simultaneous Localization and Mapping,同时定位与地图构建)——边走边建图,同时根据自建地图做定位。
SLAM 分为前端后端两部分:

部分

做什么

常用方法

前端(里程计)

逐帧估计运动——当前帧相对上一帧走了多远、转了多少

LiDAR 里程计(ICP/NDT 帧间匹配)、视觉里程计(特征点追踪)

后端(优化)

全局优化——把所有帧的位姿和地图一起调整,消除累积误差

图优化(g2o/GTSAM)、滤波(EKF)

回环检测

发现"走过的地方"——回来时修正累积漂移

词袋模型、Scan Context

步骤

做什么

预处理

传感器数据去噪、标定

帧间匹配

当前帧 vs 上一帧(前端里程计)

全局优化

通过图优化等方法调整所有位姿(后端)

回环修正

检测到回环后,修正累积漂移

简单类比:SLAM 像一个人边走边画地图——每走一步修正地图,同时根据地图判断走到了哪。Apollo 在没有预先建图的区域会用 SLAM 做临时建图。
SLAM 和 HD Map 定位的区别:

HD Map 定位

SLAM

地图来源

云端预先建好的高精地图

车端实时自建

精度

厘米级(地图精度高)

分米级(自建地图精度有限)

适用场景

已覆盖 HD Map 的道路

临时区域、未覆盖道路

计算量

低(只做匹配)

高(同时建图 + 定位)

误差累积

无(地图是绝对参考)

有(需要回环检测修正)

实际工程中,HD Map 定位是主力,SLAM 是补充——在地图覆盖区域用 HD Map 定位,到了地图没覆盖的区域(如新建道路、临时改道)临时切到 SLAM 模式。

6.6 实际工程挑战

HD Map 定位不是实验室里的完美方案,实际落地有几个绕不开的难题:

挑战

原因

应对策略

地图鲜度

道路施工、车道线重画、新增建筑

HD Map 定期更新 + V2X 在线下载 + 众包回传

隧道场景

GNSS 完全丢失,IMU 漂移累积

LiDAR + HD Map 匹配 + IMU 短期推算 + 出隧道后快速重收敛

天气变化

雨雪改变 LiDAR 回波特性,积雪覆盖车道线

多传感器冗余 + EKF 置信度动态权重调整

特征缺失

空旷直路、无标志物

降低对单一传感器的依赖,靠多源融合兜底

动态干扰

旁边的大卡车遮挡了路灯杆的 LiDAR 回波

点云预处理时做动态物体滤除(基于聚类/检测)

隧道场景值得多说几句。隧道里 GNSS 完全丢失,IMU 漂移又快,这时候只能靠 LiDAR + HD Map 匹配。但隧道里的特征往往很少——两边是光秃秃的墙壁,没有杆件、没有标志牌。好在隧道壁本身是连续的平面,LiDAR 扫描到的点云虽然不够"有特色",但量大且稳定。Apollo 的做法是在隧道场景降低 NDT 的搜索范围(靠 IMU 短期推算给一个更紧的初始位姿),同时增加匹配频率(从 10Hz 提到 20Hz),用频率换精度。
最后一个"特征缺失"场景也值得多说一句:如果一段路又直又空,没有路灯杆、没有建筑、车道线还磨没了——LiDAR 匹配能用的锚点就很少。这就是为什么不能只靠一种定位方式,必须多源融合。极端情况下,车辆甚至可以靠航位推算(IMU + 轮速计 + 方向盘转角)撑过这段"信息荒漠",直到重新遇到可匹配的特征。

6.7 不同场景下的定位策略

不同驾驶场景,传感器可用性不同,定位策略也不同:
这张表能看出一个规律:没有一种场景是所有传感器都好用的。高速公路 GNSS 好但 LiDAR 和 Camera 其实也不错;隧道 GNSS 丢了但 LiDAR 还能凑合用;雨雪天 GNSS 好但 LiDAR 和 Camera 都退化。多传感器融合的价值就在这里——任何场景都至少有一两个传感器能撑住,EKF 根据各传感器的置信度动态分配权重,谁好用就多信谁。

七、V2X 的加持——单车智能之外
单车的传感器有视野盲区——前车挡住的车、十字路口被建筑遮挡的来车,都看不到。V2X(Vehicle-to-Everything,车联万物)正好解决。通信篇详细讲过汽车上的通信技术,这里聚焦 V2X 对定位的增量。

7.1 两大通信标准

标准

地区

通信方式

代表企业

C-V2X (LTE-V)

中国

基于蜂窝网络,可共享基站

大唐、华为

DSRC(Dedicated Short Range Communication)

美国、日本

美国 5.9 GHz / 日本 5.8 GHz 专用短程通信

Qualcomm、NXP

C-V2X 和 DSRC 的技术路线之争持续了很多年。C-V2X 的优势是和 5G 蜂窝网络天然兼容,可以复用基站基础设施;DSRC 的优势是低延迟(专用频段不和其他业务竞争)。中国选择了 C-V2X 路线,美国早期推 DSRC 但近年也在向 C-V2X 靠拢。

7.2 V2X 给定位带来什么

通过 V2X,车辆可以实时获得远端信息,对定位也有增强:

消息类型

用途

对定位的价值

V2x_trafficlight

远端信号灯状态

信号灯位置 = 定位锚点

V2x_obstacles

远端障碍物

补充感知盲区

V2x_rerouting

实时路径调整

规划层联动

Map_download

在线地图更新

直接更新 HD Map,解决鲜度问题

这里面Map_download 是对定位价值最大的一条——车跑到哪就能实时下载对应区域的最新地图,不用等 OTA 批量更新。前面讲地图鲜度问题时提到,城市道路天天施工改道,如果地图更新跟不上,定位就可能出错。V2X 的 Map_download 机制让地图更新从"批量"变成"按需",从根本上缓解了鲜度问题。
云端还有V2X Cloud提供四项服务:

云端服务

作用

定位关联

Map Server

地图服务

HD Map 存储与分发

Road Info

路况信息

前方施工/事故预警

Traffic Predict

交通预测

规划层输入

OTA

在线升级

地图版本更新

规控篇里讲到 PNC 框架,V2X 提供的远端信息直接喂给预测和规划模块。所以 V2X 不仅是通信手段,更是 HD Map 的动态补丁——地图的静态部分(车道线、杆件)靠采集车建,动态部分(施工改道、临时管制)靠 V2X 实时补。
一句话:单车智能看的是"我能看到什么",V2X 补的是"别人看到了什么"。

八、总结
把整个链路串起来:

能力来源

精度

适用场景

限制

GNSS / RTK

米级、分米级

开阔道路

城市峡谷退化

IMU 惯性导航

短期精度高

隧道、信号丢失区

误差累积

HD Map + 多传感器融合

厘米级

自动驾驶核心场景

依赖地图覆盖与鲜度

V2X

信息丰富

盲区、超视距、地图更新

依赖通信基础设施

SLAM

分米级

地图未覆盖区域

精度有限,需回环修正

一句话总结:HD Map 是自动驾驶的"第二记忆"——车端传感器是"短期记忆",HD Map 是"长期记忆",两者结合 + V2X 补充,才能让车辆在任何场景下都知道自己"在哪、要往哪去"。

谢谢观看,码字不易。如果觉得文章对您有帮助,感谢您点个在看,转发分享!

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-15 04:59:12 HTTP/2.0 GET : https://e.mffb.com.cn/a/537850.html
  2. 运行时间 : 0.345837s [ 吞吐率:2.89req/s ] 内存消耗:4,455.82kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=334d4ecd2bd6f10000a86562e4afadf3
  1. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/runtime/temp/600e51726691ba7063b44bb89d9aaaff.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/e.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.001106s ] mysql:host=127.0.0.1;port=3306;dbname=e_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001630s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000710s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000630s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001395s ]
  6. SELECT * FROM `set` [ RunTime:0.000551s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001458s ]
  8. SELECT * FROM `article` WHERE `id` = 537850 LIMIT 1 [ RunTime:0.010427s ]
  9. UPDATE `article` SET `lasttime` = 1786741153 WHERE `id` = 537850 [ RunTime:0.009375s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000705s ]
  11. SELECT * FROM `article` WHERE `id` < 537850 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001114s ]
  12. SELECT * FROM `article` WHERE `id` > 537850 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.009595s ]
  13. SELECT * FROM `article` WHERE `id` < 537850 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.041319s ]
  14. SELECT * FROM `article` WHERE `id` < 537850 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.076346s ]
  15. SELECT * FROM `article` WHERE `id` < 537850 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.029352s ]
0.349437s