骑行者(Cyclist)**和**行人(Person)检测数据集 骑自行车检测数据集 骑行人检测数据集的训练及应用
骑行者和行人检测数据集YOLO格式 |数据集详情检测类别cyclistperson图片总量5129张(另有版本13403张)训练集4397张验证集572张测试集190张标注状态全部已标注即拿即用数据格式支持YOLO格式及其他常用格式1这是一个专为智能交通系统ITS、自动驾驶和城市安全监控设计的高质量目标检测数据集。该数据集重点区分了骑行者Cyclist和行人Person这两类目标在交通场景中具有极高的动态性和不确定性是自动驾驶感知系统中最关键的检测对象。 1. 骑行者与行人检测数据集概况项目属性详细说明数据集名称Cyclist-Pedestrian-Detection-Dataset图像总量5,129张 (标准版) / 13,403 张 (扩展版)数据划分训练集: 4,397 张 (85.7%)验证集: 572 张 (11.1%)测试集: 190 张 (3.7%)标注格式YOLO 格式(.txt)兼容 YOLOv5 ~ v11 全系列检测类别2 类cyclist(骑行者包含自行车/电动车及骑手)person(行人步行人群)标注状态100% 已标注无需额外清洗即拿即用核心应用场景自动驾驶紧急制动 (AEB)、盲区监测 (BSD)、路口碰撞预警、智慧城市交通流分析 类别特征与检测难点类别 ID英文名称中文含义典型特征检测难点与挑战0cyclist骑行者人车结合体运动速度快轨迹多变1.形态多变骑行姿态各异车辆类型多样自行车/电摩。2.遮挡严重常被汽车、树木遮挡只露出头部或车轮。3.小目标远距离下像素占比极小。1person行人直立行走速度较慢行为不可预测1.密集聚集公交站、路口人群密集易发生漏检。2.部分遮挡多人重叠时边界模糊。3.误检风险易与路灯杆、广告牌人像混淆。 数据洞察高比例训练集85% 的数据用于训练有利于模型充分学习特征适合从头训练Training from scratch或微调。独立测试集虽然测试集较小190 张但足以评估模型在未见数据上的泛化能力防止过拟合。动态平衡实际场景中行人数量通常远多于骑行者需注意检查两类样本的分布平衡必要时在 Loss 函数中调整权重。 2. YOLOv8/v11 详细训练代码针对骑行者快速移动和行人密集遮挡的特点本代码采用了高分辨率输入、强数据增强以及针对小目标的优化策略。 第一步数据集配置文件 (cyclist_person.yaml)请在项目根目录下创建此文件。path:./Cyclist_Pedestrian_Dataset# 数据集根目录train:images/train# 对应 4397 张val:images/val# 对应 572 张test:images/test# 对应 190 张# 类别数量nc:2# 类别名称 (顺序必须严格对应 ID)names:0:cyclist1:person 第二步Python 训练脚本 (train_traffic.py)此脚本针对交通场景进行了深度优化输入尺寸提升设为imgsz960以捕捉远处的骑行者和行人。针对性增强禁用上下翻转符合物理规律增强运动模糊模拟。损失函数优化使用 Focal Loss 变体解决难易样本不平衡问题。fromultralyticsimportYOLOimporttorchimportosimportyamldeftrain_traffic_detector():print( 开始训练骑行者与行人检测模型...)# 1. 加载模型# 推荐使用 yolov8m.pt 或 yolov8l.pt# 交通场景对实时性和精度要求都高Medium 型号是较好的平衡点modelYOLO(yolov8m.pt)# 2. 定义训练参数resultsmodel.train(datacyclist_person.yaml,epochs200,# 充足轮次以确保收敛imgsz960,# 【关键】高分辨率检测远处小目标 (骑行者/行人)batch12,# 根据显存调整 (24G显存可设 24-32)device0iftorch.cuda.is_available()elsecpu,workers4,# --- 优化器设置 ---optimizerSGD,lr00.01,lrf0.05,momentum0.937,weight_decay0.0005,warmup_epochs3.0,warmup_momentum0.8,# --- 交通场景专用数据增强 ---augmentTrue,hsv_h0.015,# 色调微调 (适应不同天气/光照)hsv_s0.7,hsv_v0.4,# 亮度增强 (模拟隧道/夜间/逆光)degrees0.0,# 【重要】禁止旋转交通场景地平线必须水平translate0.1,scale0.6,# 大范围缩放 (模拟不同距离的车辆视角)shear0.0,perspective0.0,flipud0.0,# 【重要】禁止上下翻转 (人不会倒立)fliplr0.5,# 允许左右翻转mosaic1.0,# Mosaic 增强 (对密集行人和遮挡场景极其有效)mixup0.1,copy_paste0.1,# 增加稀疏类别 (如远处的骑行者) 的样本密度# --- 难例挖掘与损失优化 ---fl_gamma1.5,# Focal Loss Gamma提升难分类样本(遮挡/小目标)权重label_smoothing0.0,# 关闭标签平滑让类别置信度更尖锐box7.5,# 提高 Box Loss 权重优化定位精度cls0.5,# 分类 Loss 权重dfl1.5,# Distribution Focal Loss# --- 训练策略 ---patience30,saveTrue,save_period-1,verboseTrue,projectruns/traffic_detect,namecyclist_person_yolov8m_v1,exist_okFalse,seed42,deterministicTrue,# --- 推理预设 ---conf0.001,# 极低置信度阈值确保不漏检远处目标iou0.65# NMS IoU适当调高以保留密集人群中的多个目标)print(f✅ 训练完成最佳模型路径{results.save_dir}/weights/best.pt)# 3. 验证与详细评估print( 正在测试集上进行最终评估...)# 使用 test split 进行最终性能报告metricsmodel.val(splittest)print(-*60)print(f 整体指标 (Test Set):)print(f mAP50:{metrics.box.map50:.4f})print(f mAP50-95:{metrics.box.map:.4f})print(-*60)# 打印各类别表现class_names[cyclist,person]print( 各类别 mAP50-95 详细分析:)fori,nameinenumerate(class_names):map_scoremetrics.box.maps[i]precisionmetrics.box.mp[i]ifhasattr(metrics.box,mp)else0recallmetrics.box.mr[i]ifhasattr(metrics.box,mr)else0status✅ 优秀ifmap_score0.6else⚠️ 需优化print(f [{i}]{name:12s}: mAP{map_score:.4f}, Precision{precision:.4f}, Recall{recall:.4f}{status})# 4. 导出模型 (可选用于部署)# model.export(formatonnx, dynamicTrue, simplifyTrue)# model.export(formattensorrt, device0, halfTrue)if__name____main__:ifnotos.path.exists(cyclist_person.yaml):print(❌ 错误未找到 cyclist_person.yaml请检查路径)else:train_traffic_detector() 3. 高级应用碰撞预警逻辑示例训练好模型后在自动驾驶或辅助驾驶系统中通常需要结合距离估算和相对速度来判断碰撞风险。以下是一个简化的逻辑框架fromultralyticsimportYOLOimportcv2importnumpyasnp modelYOLO(runs/traffic_detect/cyclist_person_yolov8m_v1/weights/best.pt)defanalyze_traffic_risk(frame,focal_length800): 简单的交通风险分析 frame: 摄像头帧 focal_length: 相机焦距估计值 (用于粗略测距) resultsmodel(frame,conf0.4,iou0.6)resultresults[0]boxesresult.boxes risk_alerts[]img_height,img_widthframe.shape[:2]forboxinboxes:cls_idint(box.cls[0])conffloat(box.conf[0])xyxybox.xyxy[0].cpu().numpy()# [xmin, ymin, xmax, ymax]categorycyclistifcls_id0elseperson# 计算目标中心点cx(xyxy[0]xyxy[2])/2cy(xyxy[1]xyxy[3])/2# 计算边界框高度 (高度越大通常距离越近)obj_heightxyxy[3]-xyxy[1]# 粗略距离估算 (假设行人/骑行者平均高度为 1.7m / 1.8m)avg_real_height1.75ifcls_id0else1.7distance(avg_real_height*focal_length)/obj_height# 风险判定逻辑risk_levelSAFEifdistance10:# 10米以内risk_levelHIGH RISKrisk_alerts.append(f⚠️{category.upper()}DETECTED AT{distance:.1f}m! BRAKE!)elifdistance25:risk_levelWARNING# 可视化color(0,255,0)ifrisk_levelSAFEelse(0,0,255)cv2.rectangle(frame,(int(xyxy[0]),int(xyxy[1])),(int(xyxy[2]),int(xyxy[3])),color,2)labelf{category}{conf:.2f}({risk_level})cv2.putText(frame,label,(int(xyxy[0]),int(xyxy[1])-10),cv2.FONT_HERSHEY_SIMPLEX,0.5,color,2)returnframe,risk_alerts# 示例调用# cap cv2.VideoCapture(traffic_video.mp4)# while cap.isOpened():# ret, frame cap.read()# if not ret: break# processed_frame, alerts analyze_traffic_risk(frame)# for alert in alerts: print(alert)# cv2.imshow(Traffic Monitor, processed_frame)# if cv2.waitKey(1) 0xFF ord(q): break 4. 针对该数据集的特别建议小目标与远距离检测骑行者在远距离下非常小。如果mAP50-95较低建议在推理时使用SAHI (Slicing Aided Hyper Inference)技术将大图切分成小块分别检测可显著提升远处目标的召回率。遮挡处理交通场景中遮挡非常普遍。训练时已开启mosaic1.0这非常关键。如果在实际应用中漏检严重可以尝试在训练配置中增加copy_paste的比例人为制造更多遮挡样本。实时性优化对于车载嵌入式设备如 Jetson Orin如果yolov8m推理速度不足可蒸馏到yolov8n或使用yolov8n.pt重新训练虽然精度略有下降但帧率可提升 2-3 倍。类别不平衡如果数据集中行人数量远多于骑行者可以在model.train()中添加class_weights参数给予cyclist更高的权重防止模型偏向于只检测行人。这套代码和策略能够充分利用 5000 张高质量标注数据训练出一个在复杂交通环境下依然稳健的感知模型。

相关新闻

【烘焙坊项目】后端搭建 (3)- 分类管理页面

【烘焙坊项目】后端搭建 (3)- 分类管理页面

一、分类分页查询1.1需求分析与设计业务规则:分类名称必须是唯一的分类按照类型可以分为菜品分类和套餐分类新添加的分类状态默认为“禁用”查看接口文档基本信息,请求参数 和 返回数据1.2代码开发controller层service层(省去接口部分仅展示实…

2026/5/17 9:31:20 阅读更多 →
PHP笔记

PHP笔记

显示错误ini_set(display_errors, On);获取新插入条目的id$conn->insert_id设置时区date_default_timezone_set("Asia/Shanghai");获取上一条记录$sql SELECT * FROM blog WHERE category . $category . AND id < . $id . ORDER BY id DESC LIMIT 1;

2026/7/5 0:49:38 阅读更多 →
基于vue基于nodejs的电影推荐和评分系统的设计与实现

基于vue基于nodejs的电影推荐和评分系统的设计与实现

文章目录技术栈选择系统模块划分核心功能实现开发流程数据库设计部署方案测试策略--nodejs技术栈--结论源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;技术栈选择 前端采用Vue.js框架&#xff0c;结合Element UI或Ant Design Vue组件库…

2026/5/17 9:31:19 阅读更多 →

最新新闻

终极解决方案:KMS智能激活脚本完整指南 - 彻底告别Windows和Office激活烦恼

终极解决方案:KMS智能激活脚本完整指南 - 彻底告别Windows和Office激活烦恼

终极解决方案&#xff1a;KMS智能激活脚本完整指南 - 彻底告别Windows和Office激活烦恼 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统频繁弹出激活提示而烦恼吗&#xff1f;…

2026/7/5 5:47:45 阅读更多 →
受够了记账 App 的广告和会员,我自己写了一个:完全免费、数据 100% 在本地、开源

受够了记账 App 的广告和会员,我自己写了一个:完全免费、数据 100% 在本地、开源

受够了记账 App 的广告和会员&#xff0c;我自己写了一个&#xff1a;完全免费、数据 100% 在本地、开源 先说结论&#xff1a;这是一个没有广告、没有会员、没有内购、不需要注册、不联网上传任何数据的记账 App。代码开源在 GitHub&#xff0c;Android 安装包直接从 Release…

2026/7/5 5:45:44 阅读更多 →
PyInstaller 打包 exe 图标不显示问题(AI生成)

PyInstaller 打包 exe 图标不显示问题(AI生成)

# PyInstaller 打包 exe 图标不显示&#xff1f;这篇文章帮你彻底解决&#xff01;## &#x1f50d; 问题背景最近在用 PyInstaller 打包一个 PySide6 项目时&#xff0c;遇到了一个非常头疼的问题&#xff1a;**设置了图标但 exe 文件始终不显示**。经过一番折腾&#xff0c;终…

2026/7/5 5:45:44 阅读更多 →
知网查重太贵?2026年免费论文查重渠道汇总+PaperRed隐藏功能曝光

知网查重太贵?2026年免费论文查重渠道汇总+PaperRed隐藏功能曝光

2026年毕业季&#xff0c;知网查重一次要多少钱&#xff1f;答案是&#xff1a;本科论文约100-200元&#xff0c;硕博论文200-400元。而且很多学校只给1-2次免费查重机会&#xff0c;用完之后就得自费。对于预算有限的学生来说&#xff0c;这笔开销不算小。更让人头疼的是&…

2026/7/5 5:43:44 阅读更多 →
电机控制进阶——PID速度环参数整定实战与调优

电机控制进阶——PID速度环参数整定实战与调优

1. PID速度环控制基础概念 第一次接触电机PID控制时&#xff0c;我盯着那三条看似简单的曲线发愣——比例、积分、微分&#xff0c;这三个数学概念怎么就能让电机转速乖乖听话呢&#xff1f;后来在实验室熬了三个通宵才明白&#xff0c;PID控制就像教小朋友骑自行车&#xff1a…

2026/7/5 5:41:44 阅读更多 →
Meshroom完整指南:免费开源3D重建软件从入门到精通

Meshroom完整指南:免费开源3D重建软件从入门到精通

Meshroom完整指南&#xff1a;免费开源3D重建软件从入门到精通 【免费下载链接】Meshroom Node-based Visual Programming Toolbox 项目地址: https://gitcode.com/gh_mirrors/me/Meshroom 你是否曾想过&#xff0c;能否将手机拍摄的普通照片变成逼真的3D模型&#xff1…

2026/7/5 5:41:44 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools&#xff1a;5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里&#xff0c;参与了关于混合后量子密码学的讨论&#xff0c;应付端点攻击找茬的人&#xff0c;还参与留言板讨论后&#xff0c;发现“威胁模型”对多数人仍是陌生概念&#xff0c;且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”&#xff1a;我理解的渗透测试到底是什么&#xff1f;每次看到新闻里说某个大公司的数据被“黑”了&#xff0c;或者某个网站被攻击导致服务瘫痪&#xff0c;你是不是和我一样&#xff0c;心里会冒出两个念头&#xff1a;一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools&#xff1a;5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里&#xff0c;参与了关于混合后量子密码学的讨论&#xff0c;应付端点攻击找茬的人&#xff0c;还参与留言板讨论后&#xff0c;发现“威胁模型”对多数人仍是陌生概念&#xff0c;且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”&#xff1a;我理解的渗透测试到底是什么&#xff1f;每次看到新闻里说某个大公司的数据被“黑”了&#xff0c;或者某个网站被攻击导致服务瘫痪&#xff0c;你是不是和我一样&#xff0c;心里会冒出两个念头&#xff1a;一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻