当前位置:首页>自动驾驶>自动驾驶之感知算法篇

自动驾驶之感知算法篇

  • 2026-07-28 09:45:32
自动驾驶之感知算法篇
前言:前几篇分别讲了传感器的硬件布局和数据流转,但传感器只是"眼睛",真正让自动驾驶"看懂"世界的是背后的感知算法。同样是处理一张图片,不同的算法目的完全不同——有的是给整张图打标签,有的是给每个像素做分类,有的是框出物体位置,还有的是在连续画面里追踪同一个目标。本篇就以处理目的为主线,把感知算法要解决的问题逐个拆开,看看每种任务用什么算法、解决什么场景、主流方向在哪。欢迎大家评论及纠正~

一、感知算法的四大任务

无人驾驶中的感知,本质上是让机器完成四件事:

任务

通俗说法

输入

输出

典型应用

分类

Classification

"这张图里是什么"

一张图片

一个类别标签

判断当前路况类型(高速/市区/隧道)

分割

Segmentation

"每个像素属于什么"

一张图片

每个像素的类别标签

识别路面区域、车道线像素

检测

Detection

"有什么东西,在哪"

一张图片

边界框 + 类别标签

检测前方车辆、行人、交通标识

跟踪

Tracking

"这个东西还是刚才那个吗"

连续多帧图片

物体的时序轨迹

追踪前车运动轨迹、预测行为

用一句话区分:分类是整体判断,分割是像素级判断,检测是区域级判断,跟踪是时间维判断。精度从粗到细,维度从空间到时间。
这四个任务不是孤立的,而是层层递进的关系。比如检测出前方有车(检测),再分割出车辆的精确轮廓(分割),然后在后续帧中持续追踪这辆车(跟踪),最终预测它会不会变道。

二、"每个像素是什么"——语义分割

2.1 要解决什么问题

语义分割的目的是给图像中每一个像素都打上一个类别标签。不是笼统地说"这是马路",而是精确到"这个像素是路面,那个像素是车道线,旁边那个像素是行人"。

应用场景

需要识别的类别

为什么要像素级

可行驶区域检测

路面、路沿、障碍物

需要精确知道哪些区域可以行驶

车道线提取

车道线像素 vs 非车道线像素

需要精确的车道边界做车道保持

交通场景理解

路面、建筑、天空、植被、车辆、行人

需要完整的场景拓扑辅助规划

2.2 通用框架

深度学习引入语义分割后,一个通用的技术框架基本定型:
前端负责从图片中提取特征并恢复到原始分辨率:先用卷积层下采样(压缩图片、提取高层语义信息),再用反卷积/上采样放大回原始尺寸,最后对每个像素做分类判断。
后端负责优化前端的输出:前端得到的分割边界往往比较粗糙,后端用 CRF(条件随机场)等方法细化边界,让分割更精确。
打个比方:前端像一个近视眼画草图——能画出大概轮廓但细节模糊;后端像戴上了眼镜——把模糊的边界修清晰。

2.3 主流算法演进

语义分割算法的演进,本质上是在解决一个问题:怎么既看到全局信息,又不丢失局部细节。

算法

核心创新

解决了什么痛点

通俗理解

FCN

全卷积网络 + 反卷积上采样 + Skip跳层融合

首次将深度学习引入分割,能输出像素级结果

第一个"像素级画师",但画得粗

U-Net

对称编码-解码结构 + 通道拼接融合

小数据集也能训练好(~30张图)

像字母U,先压缩再还原,每层都"留一手"

SegNet/

DeconvNet

上池化(Unpooling)记住位置还原

上采样更精确,不靠反卷积"猜"

压缩时记住每个值的位置,还原时原位填回

DeepLab

空洞卷积(Dilated/Atrous Convolution)

不缩小图片也能获得大感受野

卷积核中间"挖洞",视野更大但不丢分辨率

PSPNet

金字塔池化(Pyramid Pooling)

融合多尺度全局信息

同时看1倍、2倍、4倍、8倍缩小的图,全局+局部都兼顾

逐个展开说:
FCN——开创者。之前的分类网络(如 AlexNet)最后接的是全连接层,输出一个整体标签。FCN 把全连接层换成卷积层,使网络能接受任意大小的图片,并输出和原图一样大的特征图。但直接上采样的结果很粗糙,所以 FCN 引入了Skip 跳层——把浅层(细节多)和深层(语义强)的特征融合在一起再做分类。
U-Net——跟 FCN 思路类似,但融合方式不同。FCN 是将特征逐点相加,U-Net 是将特征在通道维度拼接在一起,形成更"厚"的特征。结构上像一个 U 字:左边下采样(编码),右边上采样(解码),每一层都有跳连。好处是即使训练数据很少(约30张图)也能达到不错的效果。
SegNet/DeconvNet——改进了上采样方式。普通的反卷积是"从小图卷出大图",相当于在空隙中填值;SegNet 的上池化是在池化时就记住每个最大值的位置,上采样时把值填回原位、其他位置填零。这样还原能力更强,边界更清晰。
DeepLab——引入了空洞卷积。传统方法为了保证输出尺寸不会太小,要么加 padding(引入噪声),要么减少池化层(改了网络结构没法用预训练参数)。空洞卷积的做法很优雅:在卷积核中间插入"洞",3×3 的卷积核加一个洞就变成 5×5 的视野,但参数量和计算量不变。这样既保持了分辨率,又有足够大的感受野。DeepLab v1/v2 后端用 CRF 优化边界,从 v3 开始改用改进的 ASPP(空洞空间金字塔池化)模块替代 CRF,不再依赖后处理。
PSPNet——引入了金字塔池化。把特征图缩放到几个不同尺寸(1×1、2×2、3×3、6×6),上采样后与原始特征融合。这使得特征同时具备全局和局部的多尺度信息,对区分外观相似但类别不同的区域特别有帮助。

2.4 小结

语义分割的演进方向可以归纳为三条线:
感受野怎么变大:FCN 靠 Skip → DeepLab 靠空洞卷积 → PSPNet 靠金字塔池化
上采样怎么更准:FCN 靠反卷积 → SegNet 靠上池化 → U-Net 靠转置卷积
特征融合怎么更好:FCN 逐点相加 → U-Net 通道拼接 → PSPNet 多尺度融合

三、"哪个是哪个"——实例分割

3.1 语义分割还不够吗

语义分割能告诉你"这块像素是车",但无法区分"这是车 A 还是车 B"。如果前方有三辆车并排,语义分割只能标出"这三块都是车",但不知道哪块是左车、哪块是右车。

场景

语义分割

实例分割

前方三辆车

✅ 标出三块"车"区域 

✅ 区分"车A""车B""车C"

追踪前车轨迹

❌ 不知道哪块是同一辆

✅ 可以锁定具体车辆

统计车辆数量

❌ 无法区分个体

✅ 能数出有几辆

这就是实例分割要解决的问题:在语义分割的基础上,进一步区分同类物体的不同个体。

3.2 Mask R-CNN

实例分割的代表作是Mask R-CNN,它的核心思路非常符合人眼直觉——先粗分再细化
一句话概括这个等式:

实例分割 = 检测(框分类)+ 框内的普通分割(二分类mask)

具体来说,Mask R-CNN 做了三件事:

步骤

做什么

通俗理解

1. 检测

用 Faster R-CNN 框出每个物体的位置和类别

先画框,知道"这里有辆车"

2. ROIAlign

精确提取每个框对应的特征区域

把框对准,不让特征"错位"

3. Mask 分支

在每个框内做像素级二分类,生成物体轮廓

在框内精细描边,画出车的精确形状

其中ROIAlign是一个关键改进。之前的 ROIPooling 用了取整操作来对齐特征区域,这在分类任务中误差可以容忍,但分割需要像素级精度,取整带来的偏移就不可忽视了。ROIAlign 改用线性插值代替取整,让特征对应更精准。
Mask 分支为每个类别单独生成一个 mask(用 sigmoid 做二分类),这样每个类别有自己专属的掩码,避免了类别间的竞争。

四、"分割算法的典型应用"——车道线检测

车道线检测是静态环境感知中最典型的应用场景,也是最能体现"从规则驱动到数据驱动"演进思路的例子。

4.1 传统方法:规则驱动

传统车道线检测的核心思路是用数学规则描述车道线的特征,然后逐步提取:

步骤

算法

做什么

通俗理解

1

Canny 边缘检测

找图像中亮度急剧变化的位置

找白色车道线和黑色路面的交界线

2

手动分割路面区域

指定一个三角形感兴趣区域

把天空、路边的干扰边缘去掉

3

霍夫变换

把图像空间的点转换到参数空间,找直线

把散乱的边缘点"连"成线

4

拟合车道线

综合所有检测到的线,求平均

画出最终的两条车道线

其中霍夫变换是最精妙的一步。原理是:图像空间中一条直线上的每个点,在霍夫空间中都对应一条曲线;如果很多点在同一条直线上,它们在霍夫空间的曲线就会相交于同一点。找到这个交点,就找到了直线的参数。
但传统方法有几个硬伤:

问题

原因

弯道检测不了

霍夫变换找的是直线,弯道不是直线

手动设区域太死板

不同场景的路面区域形状不同,三角形不适用所有情况

遮挡和磨损容易失效

车道线被前车挡住或磨损严重时,边缘检测找不到

参数需要人工调

Canny 的阈值、霍夫变换的阈值都需要根据场景调参

4.2 深度学习方法:数据驱动

LaneNet放弃了人工写规则,改用"先分割再聚类"的思路:

步骤

做什么

通俗理解

1. 语义分割

二分类:每个像素是/不是车道线

先把所有车道线像素找出来

2. 像素嵌入

为每个像素生成一个 n 维向量,同一车道的向量距离近、不同车道的距离远

给每个像素一个"身份证号",同车道的号相似

3. 聚类

用分割结果做掩码,对车道线像素的嵌入向量做聚类

把"身份证号"相似的像素归到一起,区分出左车道、右车道

这个思路其实就是实例分割在车道线上的应用——语义分割回答"哪些像素是车道线",聚类回答"这些像素属于哪条车道线"。
LaneNet 还有一个创新:用 CNN 学习透视变换参数。传统做法是使用固定的逆透视变换(IPM)矩阵将检测到的车道线点投影到鸟瞰图进行曲线拟合,但固定的变换矩阵遇到上下坡就会失效。LaneNet 的 H-Net 模块用网络学习变换参数,能自适应不同路况的拟合需求。

4.3 传统 vs 深度学习对比

维度

传统方法(Canny+Hough)

深度学习(LaneNet)

核心思路

人工设计规则提取特征

从数据中自动学习特征

弯道处理

❌ 只能找直线

✅ 能处理弯道

遮挡/磨损

❌ 容易失效

✅ 鲁棒性好

场景适应性

❌ 需要手动调参

✅ 泛化能力强

计算量

大(需要 GPU)

可解释性

强(每一步都可追溯)

弱(黑盒)

数据需求

不需要训练数据

需要大量标注数据

从规则驱动到数据驱动,核心变化是——把"人想出来的规则"换成了"机器从数据中学到的规则"。

五、主流方向与趋势

5.1 从 2D 到 3D

传统感知算法主要处理 2D 图像,但自动驾驶需要 3D 空间理解。当前主流方向:

方向

做法

代表方法

鸟瞰图(BEV)

将多摄像头图像统一变换到俯视图

BEVFormer、LSS

3D 目标检测

直接从点云或图像中检测 3D 边界框

PointPillars、SMOKE

点云分割

对激光雷达点云做语义/实例分割

Cylinder3D、SPVCNN

5.2 从单任务到多任务

早期一个网络干一件事(分割一个网络、检测一个网络),现在主流是多任务学习——一个网络同时输出分割、检测、深度估计等多个结果,共享特征提取层,减少计算量。

5.3 从感知到预测

感知只是第一步,知道"现在有什么"之后,还需要预测"接下来会怎样":
轨迹预测:基于历史轨迹预测其他车辆/行人未来运动
意图识别:判断旁边车辆是否要变道、行人是否要过马路
交互建模:建模自车与他车的交互关系

5.4 端到端的趋势

传统方案是模块化的(感知→规划→控制),每一步独立优化。当前最前沿的方向是端到端——直接从传感器输入到控制输出,让网络自己学会从"看到"到"怎么做"的完整链路。代表方案如 UniAD、Tesla FSD V12。但端到端的可解释性和安全性仍是挑战。

六、总结

用一张图把感知算法的处理目的和对应具体任务串起来:
一句话总结感知算法的演进逻辑:从人工设计规则到数据驱动学习,从单一任务到多任务融合,从 2D 平面到 3D 空间,从"看到" 到 “看懂”,再到 “预测”。

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

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-29 05:06:43 HTTP/2.0 GET : https://e.mffb.com.cn/a/535189.html
  2. 运行时间 : 0.197968s [ 吞吐率:5.05req/s ] 内存消耗:4,565.58kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=c08f7cda04d2e4b20e4384c5f3d6b39d
  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.001120s ] mysql:host=127.0.0.1;port=3306;dbname=e_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001345s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000666s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000714s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001475s ]
  6. SELECT * FROM `set` [ RunTime:0.000603s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001452s ]
  8. SELECT * FROM `article` WHERE `id` = 535189 LIMIT 1 [ RunTime:0.001069s ]
  9. UPDATE `article` SET `lasttime` = 1785272803 WHERE `id` = 535189 [ RunTime:0.002465s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000604s ]
  11. SELECT * FROM `article` WHERE `id` < 535189 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001257s ]
  12. SELECT * FROM `article` WHERE `id` > 535189 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001152s ]
  13. SELECT * FROM `article` WHERE `id` < 535189 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002010s ]
  14. SELECT * FROM `article` WHERE `id` < 535189 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002208s ]
  15. SELECT * FROM `article` WHERE `id` < 535189 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002049s ]
0.201687s