交通标志数据集 识别交通道路中的警告,禁止性,强制性交通标识
使用 Python 深度学习 YOLOv8训练 CCTSDB 交通标志数据集 识别交通道路中的警告禁止性强制性交通标识文章目录使用 Python 深度学习 YOLOv8训练 CCTSDB 交通标志数据集 识别交通道路中的警告禁止性强制性交通标识**1. 安装依赖****2. 准备数据集**数据集结构data.yaml 文件**3. 训练 YOLOv8 模型**训练脚本**4. 推理代码****5. 训练评估****6. 构建 GUI 应用程序****7. 运行应用程序**以下文字及代码仅供参考。CCTSDB 交通标志数据集3 个分类分别为 mandatory、prohibition、warning 。标签 txt 格式train12499 张val3571 张test1786 张 total:17856 张安装依赖、准备数据集、训练 YOLOv8 模型、推理代码、评估模型性能到构建 GUI 应用程序的详细步骤。使用 Python 和相关的深度学习工具如 Ultralytics 的 YOLOv8。1. 安装依赖首先确保你已经安装了必要的库和依赖项。# 创建虚拟环境可选python-mvenv yolov8_envsourceyolov8_env/bin/activate# Linux/MacOSyolov8_env\Scripts\activate# Windows# 升级 pippipinstall--upgradepip# 安装依赖pipinstallultralytics opencv-python matplotlib pyqt52. 准备数据集数据集结构假设你的数据集已经标注为 YOLO 格式并按照以下目录结构组织CCTSDB/ ├── images/ │ ├── train/ │ │ ├── img1.jpg │ │ ├── img2.jpg │ │ └── ... │ ├── val/ │ │ ├── img1.jpg │ │ ├── img2.jpg │ │ └── ... │ └── test/ │ ├── img1.jpg │ ├── img2.jpg │ └── ... ├── labels/ │ ├── train/ │ │ ├── img1.txt │ │ ├── img2.txt │ │ └── ... │ ├── val/ │ │ ├── img1.txt │ │ ├── img2.txt │ │ └── ... │ └── test/ │ ├── img1.txt │ ├── img2.txt │ └── ... └── data.yamldata.yaml文件创建一个data.yaml文件来描述数据集的配置train:CCTSDB/images/trainval:CCTSDB/images/valtest:CCTSDB/images/testnc:3# 类别数量names:[mandatory,prohibition,warning]# 类别名称3. 训练 YOLOv8 模型训练脚本使用 Ultralytics 提供的 YOLOv8 API 进行训练fromultralyticsimportYOLO# 加载预训练模型modelYOLO(yolov8n.pt)# 使用 YOLOv8 Nano 模型# 开始训练resultsmodel.train(dataCCTSDB/data.yaml,# 数据集配置文件路径epochs50,# 训练轮数imgsz640,# 输入图像大小batch16,# 批量大小device0# GPU 设备编号使用 CPU 设置为 cpu)# 导出最佳权重model.export(formatonnx)# 可导出为 ONNX 格式以用于部署4. 推理代码训练完成后可以使用保存的模型进行推理。fromultralyticsimportYOLOimportcv2# 加载训练好的模型modelYOLO(runs/detect/train/weights/best.pt)# 测试图像image_pathCCTSDB/images/test/img1.jpgresultsmodel(image_path)# 显示结果forresultinresults:boxesresult.boxes.xyxy.cpu().numpy()# 边界框classesresult.boxes.cls.cpu().numpy()# 类别索引confidencesresult.boxes.conf.cpu().numpy()# 置信度# 绘制边界框imagecv2.imread(image_path)forbox,cls,confinzip(boxes,classes,confidences):x1,y1,x2,y2map(int,box)labelf{model.names[int(cls)]}{conf:.2f}cv2.rectangle(image,(x1,y1),(x2,y2),(0,255,0),2)cv2.putText(image,label,(x1,y1-10),cv2.FONT_HERSHEY_SIMPLEX,0.9,(0,255,0),2)# 显示图像cv2.imshow(Result,image)cv2.waitKey(0)cv2.destroyAllWindows()5. 训练评估Ultralytics 的 YOLOv8 会在训练过程中自动生成评估指标如 mAP。你可以查看runs/detect/train/results.csv文件中的详细信息。此外可以使用以下代码手动评估模型fromultralyticsimportYOLO# 加载模型modelYOLO(runs/detect/train/weights/best.pt)# 验证模型metricsmodel.val(dataCCTSDB/data.yaml)print(metrics.box.map)# 输出 mAP 值6. 构建 GUI 应用程序使用 PyQt5 构建一个简单的 GUI 应用程序用于加载图像并显示检测结果。fromPyQt5.QtWidgetsimportQApplication,QMainWindow,QLabel,QPushButton,QFileDialogfromPyQt5.QtGuiimportQPixmap,QImagefromultralyticsimportYOLOimportcv2importsysclassMainWindow(QMainWindow):def__init__(self):super().__init__()self.setWindowTitle(交通标志检测)self.setGeometry(100,100,800,600)# 加载模型self.modelYOLO(runs/detect/train/weights/best.pt)# UI 元素self.labelQLabel(self)self.label.setGeometry(50,50,700,400)self.buttonQPushButton(选择图片,self)self.button.setGeometry(300,500,200,50)self.button.clicked.connect(self.load_image)defload_image(self):# 打开文件对话框file_path,_QFileDialog.getOpenFileName(self,选择图片,,Images (*.jpg *.png))iffile_path:# 检测图像imagecv2.imread(file_path)resultsself.model(image)forresultinresults:boxesresult.boxes.xyxy.cpu().numpy()classesresult.boxes.cls.cpu().numpy()forbox,clsinzip(boxes,classes):x1,y1,x2,y2map(int,box)cv2.rectangle(image,(x1,y1),(x2,y2),(0,255,0),2)cv2.putText(image,self.model.names[int(cls)],(x1,y1-10),cv2.FONT_HERSHEY_SIMPLEX,0.9,(0,255,0),2)# 转换为 Qt 图像格式height,width,channelimage.shape bytes_per_line3*width q_imgQImage(image.data,width,height,bytes_per_line,QImage.Format_RGB888).rgbSwapped()# 显示图像self.label.setPixmap(QPixmap.fromImage(q_img))if__name____main__:appQApplication(sys.argv)windowMainWindow()window.show()sys.exit(app.exec_())7. 运行应用程序运行上述代码启动 GUI 应用程序。用户可以通过界面加载图像并查看检测结果。

相关新闻

滚动轴承故障检测 基于双路神经网络滚动轴承故障诊断系统 系统融合原始振动信号和二维时频图像进行多输入(多通道)故障诊断。PyTorch框架实现模型,可单双路

滚动轴承故障检测 基于双路神经网络滚动轴承故障诊断系统 系统融合原始振动信号和二维时频图像进行多输入(多通道)故障诊断。PyTorch框架实现模型,可单双路

基于双路神经网络的滚动轴承故障诊断 文章目录基于双路神经网络的滚动轴承故障诊断文字及内容代码仅供参考!1. 数据准备2. 完整代码实现2.1 数据加载和预处理2.2 模型构建2.3 模型训练2.4 结果可视化运行步骤实际运行情况如图 融合了原始振动信号 和 二维信号时频图…

2026/8/13 9:04:59 阅读更多 →
结构方程模型参数解读:从基础到进阶实践

结构方程模型参数解读:从基础到进阶实践

1. 结构方程模型参数解读基础 结构方程模型(SEM)作为多元统计分析的重要工具,其参数解释能力直接决定了研究结论的可靠性。初次接触SEM的研究者常会陷入"跑出模型就万事大吉"的误区,实际上参数解读才是真正考验研究者功…

2026/8/13 9:03:58 阅读更多 →
银行客户明细数据分析与应用实战指南

银行客户明细数据分析与应用实战指南

1. 项目背景与核心价值银行客户明细表作为金融机构最基础的数据资产之一,记录了客户交易行为、账户变动和资金流向等核心信息。这类数据在风险管理、客户画像、业务分析等领域具有不可替代的价值。传统获取方式通常需要经过繁琐的审批流程,而CnOpenData提…

2026/8/13 9:03:58 阅读更多 →

最新新闻

简单题的逆袭【牛客tracker  每日一题】

简单题的逆袭【牛客tracker 每日一题】

简单题的逆袭 时间限制:1 秒 空间限制:256 MB 网页链接 牛客tracker 牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每…

2026/8/13 10:01:53 阅读更多 →
终极PDF对比神器diff-pdf:告别繁琐文档核对的完整指南

终极PDF对比神器diff-pdf:告别繁琐文档核对的完整指南

终极PDF对比神器diff-pdf:告别繁琐文档核对的完整指南 【免费下载链接】diff-pdf A simple tool for visually comparing two PDF files 项目地址: https://gitcode.com/gh_mirrors/di/diff-pdf 嘿,朋友!你是否曾经面对两个看似相同的…

2026/8/13 10:01:53 阅读更多 →
基于Spring Boot的“爱辽宁”文旅导航网站的设计与实现(源码+lw+部署文档+讲解等)

基于Spring Boot的“爱辽宁”文旅导航网站的设计与实现(源码+lw+部署文档+讲解等)

课题介绍针对辽宁文旅资源分散、景区资讯杂乱、文旅服务入口不统一、游客查询体验差、地方文旅宣传力度不足等问题,本文设计并实现了基于Spring Boot的“爱辽宁”文旅导航网站。当前辽宁旅游景点、非遗文化、特色美食、游玩攻略等资源多分散在各类平台,信…

2026/8/13 10:01:53 阅读更多 →
Steam创意工坊下载神器:跨平台模组下载器WorkshopDL完全指南

Steam创意工坊下载神器:跨平台模组下载器WorkshopDL完全指南

Steam创意工坊下载神器:跨平台模组下载器WorkshopDL完全指南 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 还在为GOG、Epic等非Steam平台无法下载Steam创意工坊模…

2026/8/13 10:01:53 阅读更多 →
3步解决长网页保存难题:Full Page Screen Capture的全自动截图指南

3步解决长网页保存难题:Full Page Screen Capture的全自动截图指南

3步解决长网页保存难题:Full Page Screen Capture的全自动截图指南 【免费下载链接】full-page-screen-capture-chrome-extension One-click full page screen captures in Google Chrome 项目地址: https://gitcode.com/gh_mirrors/fu/full-page-screen-capture-…

2026/8/13 10:01:53 阅读更多 →
3.2 阿里搜索引擎的使用(智能体工程)

3.2 阿里搜索引擎的使用(智能体工程)

智能体工程驱动AI Agent开发(人工智能技术丛书)【行情 报价 价格 评测】-京东 前面我们使用Qwen大模型完成了基础模型的构建构建,并在其基础上借助 Loop 循环,实现了流式交互与并发工具调用的落地实践。但在之前的演示中&#xf…

2026/8/13 10:00:52 阅读更多 →

日新闻

Visual Studio新建项目解决方案为空:系统性排查与修复指南

Visual Studio新建项目解决方案为空:系统性排查与修复指南

1. 问题现象与本质剖析如果你是一位.NET开发者,或者正准备踏入这个领域,那么Visual Studio(后面简称VS)绝对是你绕不开的伙伴。但有时候,这个伙伴会跟你开一个不大不小的玩笑:你满怀期待地点击“创建新项目…

2026/8/13 0:00:09 阅读更多 →
长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

说实话,每次提起“长春建设厅网站”这几个字,我心里都挺有感触的。不是因为它有多高大上,也不是因为那里藏着什么不可告人的秘密,恰恰相反,是因为它太“接地气”了,或者说,它是咱们普通人想要在这个城市好好生活、安稳买房时,必须得翻过的一座“数据山”。很多新朋友第…

2026/8/13 0:00:09 阅读更多 →
Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案 【免费下载链接】rdpwrap.ini RDPWrap.ini for RDP Wrapper Library by StasM 项目地址: https://gitcode.com/GitHub_Trending/rd/rdpwrap.ini 你是否曾为Windows家庭版无法支持多用户远程桌面…

2026/8/13 0:00:09 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/13 2:38:34 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/12 1:11:09 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/12 1:11:08 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/11 17:09:45 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/12 1:11:10 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/11 17:09:45 阅读更多 →