🚀 30+款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度
在道路养护和巡检领域,传统的人工巡检或专业检测车成本高、效率低,难以实现高频次、大范围的覆盖。而随着行车记录仪的普及和性能提升,利用其拍摄的视频流进行道路病害自动识别,已成为一种低成本、高效率的智能化巡检新思路。这种方案将普通车辆变为移动的感知单元,通过边缘计算或云端分析,实时检测路面裂缝、坑槽、标线磨损等常见病害,并自动记录位置信息,为养护决策提供数据支持。
本文面向有一定编程基础、对计算机视觉或智能交通系统感兴趣的开发者、工程技术人员或学生。我们将从零开始,搭建一个基于行车记录仪视频的道路病害巡检原型系统。内容包括:道路病害类型定义、视频数据采集与预处理、目标检测模型选型与训练、病害位置映射与结果输出,以及实际部署中的注意事项。通过本文,你将掌握如何利用常见深度学习框架和开源工具,将普通行车记录仪升级为智能道路巡检设备的核心技术路径。
1. 理解道路病害类型与检测技术路线
1.1 常见道路病害及其视觉特征
道路病害主要指沥青或水泥混凝土路面在车辆荷载、环境因素作用下产生的损坏现象。从计算机视觉检测的角度,我们主要关注以下几类具有明显视觉特征的病害:
- 裂缝类:包括横向裂缝、纵向裂缝、块状裂缝。表现为路面连续的深色线条或网状纹路,与正常路面形成对比。
- 坑槽类:路面局部材料剥落形成的凹坑。在视频中通常呈现为不规则深色区域,伴有阴影。
- 修补不良:修补材料与原路面颜色、纹理差异明显,边界清晰。
- 标线磨损:车道线、斑马线等交通标线模糊、断续或缺失。
- 车辙:沿行车方向的路面纵向凹陷,在特定光照下产生连续阴影。
这些病害在行车记录仪拍摄的视频中,通常表现为特定的纹理、颜色、形状变化。检测算法的任务就是从连续帧中定位这些异常区域。
1.2 基于深度学习的病害检测技术选型
对于动态视频中的道路病害检测,主流技术路线分为两类:
- 基于目标检测的方法:将病害视为待检测的“物体”,直接使用YOLO、SSD、Faster R-CNN等模型进行端到端的定位和分类。优点是速度快,适合实时处理;缺点是对小尺度病害(如细裂缝)检测效果有限。
- 基于语义分割的方法:对每一帧图像的每个像素进行分类,精确勾勒病害轮廓。适合需要计算病害面积(如裂缝长度、坑槽面积)的场景。但计算量较大,实时性挑战高。
在实际项目中,通常采用折中方案:用轻量级目标检测模型实现实时病害发现,再对疑似区域进行精细分割或二次分析。本文将重点介绍基于YOLOv5的检测方案,因其在速度与精度间平衡较好,且易于部署。
2. 环境准备与数据采集标注
2.1 硬件与软件环境要求
硬件建议:
- 行车记录仪:支持1080P及以上分辨率,帧率不低于30fps。优先选择广角镜头,覆盖更多路面区域。
- 处理设备:开发阶段可使用GPU工作站(NVIDIA GPU,8GB显存以上);部署阶段可根据需求选择边缘计算设备(如Jetson Nano、NVIDIA Jetson系列)或云端服务器。
- 存储:高速SD卡(记录原始视频),大容量硬盘(存储训练数据及结果)。
软件环境:
- 操作系统:Ubuntu 18.04/20.04 LTS 或 Windows 10/11(需配置WSL2用于Linux环境)。
- Python 3.8+,主要依赖库:
torch>=1.7.0 torchvision>=0.8.0 opencv-python>=4.5.0 numpy>=1.19.0 albumentations>=0.5.0 # 数据增强 seaborn>=0.11.0 # 结果可视化 pillow>=8.0.0- 深度学习框架:PyTorch(YOLOv5官方实现基于PyTorch)。
- 标注工具:LabelImg(矩形框标注)或LabelMe(多边形标注)。
2.2 数据采集与预处理要点
数据质量直接决定模型性能。采集时需注意:
- 光照条件:覆盖不同天气(晴、阴、雨)、不同时段(早、中、晚)的数据,确保模型泛化能力。
- 拍摄角度:尽量保持记录仪安装稳定,镜头与路面夹角一致。避免剧烈抖动导致图像模糊。
- 路面类型:包含沥青、水泥等不同材质路面,以及城市道路、高速公路等不同等级道路。
采集到的视频需转换为图像帧用于训练。转换时需平衡数据量与冗余度:
import cv2 import os def extract_frames(video_path, output_dir, interval=10): """ 从视频中按间隔抽取帧图像 :param video_path: 视频文件路径 :param output_dir: 输出目录 :param interval: 抽帧间隔(帧数) """ cap = cv2.VideoCapture(video_path) if not cap.isOpened(): print("Error: Could not open video.") return os.makedirs(output_dir, exist_ok=True) frame_count = 0 saved_count = 0 while True: ret, frame = cap.read() if not ret: break if frame_count % interval == 0: frame_filename = os.path.join(output_dir, f"frame_{saved_count:06d}.jpg") cv2.imwrite(frame_filename, frame) saved_count += 1 frame_count += 1 cap.release() print(f"Extracted {saved_count} frames from {frame_count} total frames.") # 使用示例:每10帧抽1帧 extract_frames("road_video.mp4", "extracted_frames", interval=10)2.3 数据标注规范与工具使用
使用LabelImg进行矩形框标注时,需统一病害类别与标注标准:
| 病害类型 | 标注规范 | 注意事项 |
|---|---|---|
| 裂缝 | 沿裂缝走向画最小外接矩形 | 避免框入过多正常路面 |
| 坑槽 | 框选整个坑槽区域 | 包含边缘阴影部分 |
| 修补不良 | 框选修补区域 | 重点标注与原路面边界 |
| 标线磨损 | 框选磨损部位 | 与完整标线对比标注 |
标注结果保存为PASCAL VOC格式(XML文件)或YOLO格式(每张图对应一个.txt文件,内容为类别id x_center y_center width height,坐标归一化至0-1)。YOLO格式更便于训练。
标注完成后,按通常比例(如8:1:1)划分训练集、验证集和测试集。
3. 基于YOLOv5的道路病害检测模型训练
3.1 YOLOv5模型选型与项目配置
YOLOv5提供多种规模的预训练模型,根据部署设备性能选择:
| 模型类型 | 参数量 | 推理速度 | 适用场景 |
|---|---|---|---|
| YOLOv5n | 1.9M | 最快 | 边缘设备实时检测 |
| YOLOv5s | 7.2M | 较快 | 平衡速度与精度 |
| YOLOv5m | 21.2M | 中等 | 精度要求较高 |
| YOLOv5l | 46.5M | 较慢 | 服务器端高精度检测 |
| YOLOv5x | 86.7M | 最慢 | 研究或极致精度需求 |
从官方仓库克隆项目并安装依赖:
git clone https://github.com/ultralytics/yolov5 cd yolov5 pip install -r requirements.txt3.2 数据准备与配置文件修改
将标注好的数据集按YOLOv5要求组织目录结构:
road_disease_dataset/ ├── images/ │ ├── train/ # 训练集图片 │ └── val/ # 验证集图片 └── labels/ ├── train/ # 训练集标注文件 └── val/ # 验证集标注文件创建数据集配置文件road_disease.yaml:
# 数据集路径 path: /path/to/road_disease_dataset train: images/train val: images/val # 类别数量及名称 nc: 4 names: ['crack', 'pothole', 'patch', 'marking_wear'] # 可选:下载地址/自动下载设置 download: None3.3 模型训练与参数调优
使用预训练权重进行迁移学习,加速收敛并提升性能:
python train.py --img 640 --batch 16 --epochs 100 --data road_disease.yaml --weights yolov5s.pt --device 0关键训练参数说明:
--img 640:输入图像尺寸,保持默认640x640即可。--batch 16:批大小,根据GPU内存调整。--epochs 100:训练轮数,观察损失曲线决定是否早停。--weights yolov5s.pt:使用预训练的YOLOv5s权重。--device 0:使用第0号GPU,多GPU可指定--device 0,1。
训练过程中重点关注以下指标:
- 损失曲线:train/val损失应平稳下降,若出现震荡需调整学习率。
- mAP@0.5:IoU阈值为0.5时的平均精度,主要评估指标。
- mAP@0.5:0.95:IoU阈值从0.5到0.95的平均精度,更严格指标。
如果验证集性能明显低于训练集,可能过拟合,可尝试:
- 增加数据增强(YOLOv5默认已包含丰富增强)。
- 减小模型规模或增加正则化(如dropout)。
- 早停(patience=10-20)。
3.4 模型验证与测试
训练完成后,在测试集上评估最终性能:
python val.py --weights runs/train/exp/weights/best.pt --data road_disease.yaml --img 640 --device 0使用训练好的模型对单张图像或视频进行推理:
import torch import cv2 # 加载模型 model = torch.hub.load('ultralytics/yolov5', 'custom', path='runs/train/exp/weights/best.pt') # 图像推理 img = 'test_image.jpg' results = model(img) # 结果显示与保存 results.show() results.save('output/') # 视频推理 cap = cv2.VideoCapture('test_video.mp4') while cap.isOpened(): ret, frame = cap.read() if not ret: break results = model(frame) annotated_frame = results.render()[0] # 获取标注后的图像 cv2.imshow('Road Disease Detection', annotated_frame) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows()4. 病害位置映射与巡检系统集成
4.1 GPS位置信息关联
单纯检测出病害不够,还需记录其地理位置。行车记录仪通常不直接输出GPS数据,需要额外方案:
方案一:外接GPS模块
- 使用USB GPS接收器,通过串口读取NMEA数据。
- 开发小程序同步记录视频时间戳和GPS坐标。
方案二:手机APP辅助
- 开发手机APP同时录制视频和记录GPS。
- 通过时间戳将视频帧与GPS坐标对齐。
方案三:事后轨迹匹配
- 使用视频里程计或地图匹配技术,根据视频内容反推位置。
- 精度较低,适合无GPS信号场景。
以方案一为例,同步记录的关键代码:
import serial import datetime import json def read_gps_data(serial_port='/dev/ttyUSB0', baudrate=9600): """读取GPS模块数据,提取经纬度""" ser = serial.Serial(serial_port, baudrate, timeout=1) while True: line = ser.readline().decode('ascii', errors='ignore') if line.startswith('$GPRMC'): data = line.split(',') if data[2] == 'A': # 数据有效 lat = float(data[3][:2]) + float(data[3][2:])/60 if data[4] == 'S': lat = -lat lon = float(data[5][:3]) + float(data[5][3:])/60 if data[6] == 'W': lon = -lon return { 'timestamp': datetime.datetime.utcnow().isoformat(), 'latitude': lat, 'longitude': lon } # 记录GPS轨迹 gps_log = [] start_time = datetime.datetime.now() while recording: frame_time = (datetime.datetime.now() - start_time).total_seconds() gps_data = read_gps_data() gps_data['frame_time'] = frame_time gps_log.append(gps_data) # 每秒记录一次,可根据需要调整频率 time.sleep(1) # 保存GPS日志 with open('gps_track.json', 'w') as f: json.dump(gps_log, f, indent=2)4.2 病害位置估算与结果输出
检测到病害后,根据其在图像中的位置估算实际路面位置:
import math def estimate_road_position(bbox, gps_data, camera_params): """ 根据边界框位置估算病害实际位置 :param bbox: 检测框[x_center, y_center, width, height](归一化坐标) :param gps_data: 当前帧GPS数据 :param camera_params: 相机参数(安装高度、俯仰角等) :return: 病害的经纬度坐标 """ # 相机安装参数(需实际测量) camera_height = 1.5 # 相机离地高度,单位米 pitch_angle = math.radians(10) # 相机俯仰角,弧度 # 图像坐标系转路面坐标系 img_center_y = bbox[1] # 边界框中心y坐标(归一化) # 简化模型:假设病害在车辆正前方路面 # 实际项目需考虑相机内外参、路面平面假设等 distance = camera_height / math.tan(pitch_angle + img_center_y * math.radians(30)) # 将距离转换为经纬度偏移(简化计算) # 实际应使用地理坐标转换库(如pyproj) lat_offset = distance / 111320 # 纬度偏移(米转度) lon_offset = distance / (111320 * math.cos(math.radians(gps_data['latitude']))) # 经度偏移 disease_lat = gps_data['latitude'] + lat_offset disease_lon = gps_data['longitude'] + lon_offset return disease_lat, disease_lon检测结果建议输出为结构化数据,便于后续处理:
{ "timestamp": "2023-10-01T10:30:15.123Z", "location": { "latitude": 39.9042, "longitude": 116.4074 }, "diseases": [ { "type": "crack", "confidence": 0.89, "bbox": [0.45, 0.62, 0.08, 0.05], # [x_center, y_center, width, height] "estimated_area": 0.15 # 估算面积,平方米 } ] }4.3 系统集成与实时处理流程
完整的路面病害巡检系统工作流程如下:
- 视频采集:行车记录仪持续录制路面视频。
- 帧提取:按一定间隔(如每秒1帧)抽取图像帧。
- 病害检测:YOLOv5模型对每帧图像进行实时推理。
- 位置关联:结合GPS数据,计算病害地理位置。
- 结果输出:生成带位置信息的病害报告。
- 数据上传:通过4G/5G网络将结果上传至云端管理平台。
边缘设备部署时,需优化推理速度:
# 模型优化选项 model.conf = 0.5 # 置信度阈值,平衡漏检与误报 model.iou = 0.45 # NMS IoU阈值 model.max_det = 100 # 每帧最大检测数量 # 使用TensorRT加速(如部署在Jetson设备) model = torch.hub.load('ultralytics/yolov5', 'custom', path='best.pt') model = model.half() # 半精度推理,提升速度5. 实际部署中的关键问题与解决方案
5.1 光照与天气影响应对策略
不同光照和天气条件下,路面外观变化巨大,直接影响检测效果:
| 场景 | 挑战 | 解决方案 |
|---|---|---|
| 强光照射 | 过曝、反光、阴影干扰 | 训练数据包含强光样本,检测前进行直方图均衡化 |
| 阴雨天气 | 路面反光、积水掩盖病害 | 使用去雨算法预处理,增加雨天训练数据 |
| 夜间检测 | 图像噪点多、细节丢失 | 配合红外夜视记录仪,或使用低光照图像增强 |
| 树影斑驳 | 阴影被误检为病害 | 数据增强包含阴影样本,后处理过滤阴影区域 |
预处理代码示例(直方图均衡化):
def enhance_contrast(image): """增强图像对比度,改善光照不均影响""" # 转换到YUV色彩空间 yuv = cv2.cvtColor(image, cv2.COLOR_BGR2YUV) # 对Y通道进行直方图均衡化 yuv[:,:,0] = cv2.equalizeHist(yuv[:,:,0]) # 转换回BGR enhanced = cv2.cvtColor(yuv, cv2.COLOR_YUV2BGR) return enhanced # 在推理前应用 frame = enhance_contrast(frame) results = model(frame)5.2 误检与漏检问题处理
实际部署中常见的检测问题及应对方法:
误检(False Positive):
- 现象:路面纹理、阴影、异物被误认为病害。
- 解决方案:
- 提高置信度阈值(如从0.5调整到0.7)。
- 增加困难负样本(看起来像病害的正常路面)到训练集。
- 后处理过滤:根据病害大小、长宽比等几何特征过滤不合理检测。
漏检(False Negative):
- 现象:实际存在的病害未被检测出。
- 解决方案:
- 降低置信度阈值(如从0.5调整到0.3)。
- 增加数据增强,特别是尺度、旋转、模糊变换。
- 使用多尺度检测,兼顾大小病害。
后处理过滤示例:
def filter_detections(results, min_area=0.001, max_aspect_ratio=10): """ 过滤不合理检测结果 :param results: YOLOv5检测结果 :param min_area: 最小相对面积阈值 :param max_aspect_ratio: 最大长宽比 :return: 过滤后的检测结果 """ filtered = [] for det in results.xywh[0]: # 获取检测框信息 x_center, y_center, width, height, conf, cls = det.tolist() # 计算相对面积 area = width * height aspect_ratio = max(width, height) / min(width, height) # 过滤条件 if area >= min_area and aspect_ratio <= max_aspect_ratio: filtered.append(det) results.xywh[0] = torch.stack(filtered) if filtered else torch.tensor([]) return results5.3 性能优化与资源约束
在边缘设备上部署时,需平衡精度与速度:
模型轻量化策略:
- 使用YOLOv5n或YOLOv5s等小模型。
- 模型剪枝:移除冗余权重通道。
- 知识蒸馏:用小模型学习大模型的知识。
- 量化:FP16甚至INT8量化,显著减少计算量和内存占用。
推理优化技巧:
- 跳帧检测:非每帧都检测,如每秒处理3-5帧。
- 区域聚焦:只检测路面区域,忽略天空、车辆等无关区域。
- 多线程处理:视频解码、推理、后处理流水线并行。
import threading from queue import Queue class PipelineProcessor: """多线程处理流水线""" def __init__(self, model, process_interval=10): self.model = model self.process_interval = process_interval self.frame_queue = Queue(maxsize=30) self.result_queue = Queue(maxsize=30) def capture_frames(self, video_source): """视频捕获线程""" cap = cv2.VideoCapture(video_source) frame_count = 0 while True: ret, frame = cap.read() if not ret: break if frame_count % self.process_interval == 0: if not self.frame_queue.full(): self.frame_queue.put((frame_count, frame)) frame_count += 1 cap.release() def process_frames(self): """推理线程""" while True: if not self.frame_queue.empty(): frame_count, frame = self.frame_queue.get() results = self.model(frame) self.result_queue.put((frame_count, results)) def start_pipeline(self, video_source): """启动处理流水线""" capture_thread = threading.Thread(target=self.capture_frames, args=(video_source,)) process_thread = threading.Thread(target=self.process_frames) capture_thread.start() process_thread.start() return capture_thread, process_thread6. 系统验证与效果评估方法
6.1 定量评估指标
建立测试集,使用标准目标检测指标评估系统性能:
| 指标 | 计算公式 | 达标要求 | 说明 |
|---|---|---|---|
| 精确率 | TP/(TP+FP) | >0.8 | 检测结果中真正是病害的比例 |
| 召回率 | TP/(TP+FN) | >0.7 | 实际病害被检测出的比例 |
| mAP@0.5 | - | >0.75 | 综合衡量检测精度 |
| F1分数 | 2×Precision×Recall/(Precision+Recall) | >0.75 | 精确率与召回率的调和平均 |
from sklearn.metrics import precision_score, recall_score, f1_score import numpy as np def evaluate_detection(gt_annotations, det_results, iou_threshold=0.5): """ 评估检测性能 :param gt_annotations: 真实标注列表 :param det_results: 检测结果列表 :param iou_threshold: IoU阈值 :return: 精确率、召回率、F1分数 """ # 将标注和检测结果转换为统一格式 # 这里需要实现匹配逻辑,计算TP/FP/FN # 简化示例 tp = 0 # 真正例 fp = 0 # 假正例 fn = 0 # 假反例 # 实际实现需要遍历所有样本,计算IoU进行匹配 # ... precision = tp / (tp + fp) if (tp + fp) > 0 else 0 recall = tp / (tp + fn) if (tp + fn) > 0 else 0 f1 = 2 * precision * recall / (precision + recall) if (precision + recall) > 0 else 0 return precision, recall, f16.2 实地测试验证方案
实验室评估后,需进行实地测试验证系统实用性:
测试路线设计:
- 包含不同等级道路:城市主干道、高速公路、县乡道路。
- 覆盖不同路面状况:新铺路面、老旧路面、已知道路病害路段。
- 不同时段测试:早中晚、晴雨天气。
验证方法:
- 人工标注对比:在测试路线上人工标记已知病害位置,与系统检测结果对比。
- 专业设备对照:与专业道路检测车结果对比(如有条件)。
- 重复性测试:同一路段多次巡检,检查结果一致性。
验收标准:
- 严重病害(坑槽、大面积裂缝)检出率 > 90%
- 误报率(每公里误报数量) < 5
- 位置误差(与真实位置距离) < 10米
6.3 长期运行稳定性监控
系统部署后需建立监控机制:
import logging import time from datetime import datetime class SystemMonitor: """系统运行监控""" def __init__(self): self.logger = logging.getLogger('road_inspection') self.start_time = time.time() def log_detection_stats(self, frame_count, detection_count, processing_time): """记录检测统计""" uptime = time.time() - self.start_time fps = frame_count / uptime if uptime > 0 else 0 self.logger.info( f"Uptime: {uptime:.1f}s, " f"FPS: {fps:.1f}, " f"Detections: {detection_count}, " f"Process Time: {processing_time:.3f}s" ) def check_system_health(self): """检查系统健康状态""" # 检查GPU内存使用 # 检查磁盘空间 # 检查网络连接 # 返回健康状态标识 return "HEALTHY" # 使用示例 monitor = SystemMonitor() # 在主要处理循环中定期调用 monitor.log_detection_stats(processed_frames, total_detections, avg_process_time)7. 生产环境部署与维护建议
7.1 硬件选型与配置清单
根据应用场景选择合适硬件配置:
| 场景 | 推荐配置 | 成本估算 | 备注 |
|---|---|---|---|
| 实验验证 | 普通PC+GPU | 1-2万元 | 适合算法开发调试 |
| 小规模试点 | Jetson Xavier NX | 0.5-1万元 | 边缘计算,功耗低 |
| 车队规模化 | 车载工控机+GPU | 2-5万元 | 处理能力强,支持多路视频 |
| 云端处理 | 云服务器GPU实例 | 按需计费 | 弹性扩展,免维护 |
最低配置要求:
- CPU:4核以上
- 内存:8GB以上
- 存储:256GB SSD(用于系统+模型)
- GPU:NVIDIA GTX 1060 6GB或同等算力以上
- 网络:4G/5G模块(移动场景)
7.2 软件架构与部署流程
生产环境推荐采用容器化部署:
# Dockerfile示例 FROM nvcr.io/nvidia/pytorch:21.08-py3 # 安装系统依赖 RUN apt-get update && apt-get install -y \ libgl1-mesa-glx \ libglib2.0-0 \ && rm -rf /var/lib/apt/lists/* # 复制项目代码 WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . # 启动脚本 CMD ["python", "main.py"]使用Docker Compose编排多服务:
# docker-compose.yml version: '3.8' services: road-inspection: build: . runtime: nvidia # 使用GPU volumes: - ./data:/app/data - ./logs:/app/logs environment: - MODEL_PATH=/app/models/best.pt - VIDEO_SOURCE=/dev/video0 restart: unless-stopped7.3 数据管理与备份策略
巡检产生的数据需妥善管理:
数据分类存储:
- 原始视频:保留7-30天(根据存储空间)
- 检测结果:永久存储,建立数据库索引
- 模型文件:版本化管理,保留历史版本
数据库设计要点:
-- 病害检测结果表 CREATE TABLE disease_detections ( id BIGINT AUTO_INCREMENT PRIMARY KEY, timestamp DATETIME NOT NULL, latitude DECIMAL(10, 8) NOT NULL, longitude DECIMAL(11, 8) NOT NULL, disease_type VARCHAR(50) NOT NULL, confidence FLOAT NOT NULL, image_path VARCHAR(500), road_id VARCHAR(100), severity TINYINT COMMENT '严重程度1-5' ); -- 创建空间索引便于地理查询 CREATE SPATIAL INDEX idx_location ON disease_detections(latitude, longitude);7.4 系统维护与更新流程
建立定期维护机制:
日常维护任务:
- 每日:检查系统运行状态、磁盘空间、日志异常
- 每周:备份检测结果数据库、清理临时文件
- 每月:更新模型(如有新训练数据)、系统安全更新
模型更新流程:
- 在测试环境验证新模型性能
- A/B测试对比新旧模型效果
- 分批滚动更新,监控关键指标
- 全量部署,保留回滚方案
故障处理预案:
- 检测服务异常:自动重启容器
- GPU内存溢出:降低批大小或分辨率
- 存储空间不足:自动清理旧视频文件
- 网络中断:本地缓存,网络恢复后上传
将行车记录仪改造为道路病害巡检系统,技术上已完全可行,关键在于数据质量、模型优化和工程化部署。从实验原型到生产系统,需要经历严格的测试验证和持续的迭代优化。这种低成本方案特别适合市政部门、公路养护单位进行常态化道路巡检,实现从被动维修到主动预防的养护模式转变。
实际项目中,建议先从重点路段试点开始,积累足够数据优化模型,再逐步扩大应用范围。同时关注行业最新进展,如Transformer架构、自监督学习等新技术在道路检测领域的应用,持续提升系统性能。
🚀 30+款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度