# YOLOV8 **Repository Path**: wxl212/yolov8 ## Basic Information - **Project Name**: YOLOV8 - **Description**: # YOLOv8检测系统 基于YOLOv8的目标检测系统,支持图像和视频检测,包括摄像头实时检测、视频文件处理、屏幕区域检测和屏幕覆盖层检测等功能。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 0 - **Created**: 2025-04-03 - **Last Updated**: 2025-08-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # YOLOv8检测系统 基于YOLOv8的目标检测系统,支持图像和视频检测,包括摄像头实时检测、视频文件处理、屏幕区域检测和屏幕覆盖层检测等功能。 ## 功能特点 - **图像检测**: - 选择本地图像进行检测 - 从URL下载图像进行检测 - 结果图像自动保存,文件名添加随机后缀防止覆盖 - **视频检测**: - 摄像头实时检测 - 视频文件处理 - 屏幕覆盖层检测(直接在屏幕上显示检测结果,不使用额外窗口) - **其他功能**: - 自动下载和管理模型 - 自动下载示例图像 - 临时文件管理 - 统一的交互界面 ## 安装说明 ### 环境要求 - Python 3.8+ - 操作系统:Windows/Linux/macOS ### 安装步骤 1. 克隆或下载本项目到本地 2. 安装依赖包 ```bash pip install -r requirements.txt ``` 3. 运行主程序 ```bash python yolo_detect.py ``` ## 项目结构 ``` YOLOv8检测系统/ │ ├── yolo_detect.py # 主入口文件 ├── __init__.py # 项目初始化文件 ├── requirements.txt # 依赖文件 │ ├── modules/ # 功能模块 │ ├── __init__.py │ ├── image_detection.py # 图像检测模块 │ └── video_detection.py # 视频检测模块 │ ├── utils/ # 工具函数 │ ├── __init__.py │ ├── file_utils.py # 文件工具 │ └── screen_overlay.py # 屏幕覆盖层实现 │ ├── data/ # 图像数据目录(会自动创建) ├── models/ # 模型文件目录(会自动创建) ├── outputs/ # 检测结果输出目录(会自动创建) └── temp/ # 临时文件目录(会自动创建) ``` ## 使用说明 ### 主界面 启动程序后,会显示主菜单,可选择以下功能: 1. 图像检测 2. 视频检测 3. 清理临时文件 4. 退出程序 ### 图像检测 选择图像检测功能后,可以: 1. 从本地文件中选择图像进行检测 2. 输入图像URL进行检测 检测结果会显示每个检测到的目标的类别、置信度和位置,并将标注后的图像保存到outputs目录。 ### 视频检测 选择视频检测功能后,可以: 1. 使用摄像头进行实时检测 2. 选择视频文件进行检测 3. 对屏幕区域进行检测(可以选择区域) 4. 使用屏幕覆盖层模式进行检测 #### 摄像头检测 启动摄像头,实时显示检测结果,按"q"键停止检测。检测结果会保存为视频文件到outputs目录。 #### 视频文件检测 选择视频文件后,程序会自动处理视频,显示处理进度和预计剩余时间。处理结果会保存为视频文件到outputs目录。 #### 屏幕区域检测 可以选择屏幕的特定区域进行检测。选择区域后,会实时显示该区域的检测结果。按"q"键停止检测,按"p"键暂停/继续检测。 #### 屏幕覆盖层检测 直接在屏幕上显示检测结果,不使用额外窗口。使用透明覆盖层在屏幕上绘制检测框和标签。按"ESC"或"q"键停止检测,按"+"或"-"键调整覆盖层透明度。 ### 清理临时文件 清理超过24小时的临时文件,释放磁盘空间。 ## 模型说明 程序默认使用YOLOv8n模型,如果本地没有模型文件,会自动从官方网站下载。 YOLOv8支持的预训练模型有: - YOLOv8n:最小模型,速度最快,准确度较低 - YOLOv8s:小型模型,速度快,准确度适中 - YOLOv8m:中型模型,速度和准确度平衡 - YOLOv8l:大型模型,速度较慢,准确度高 - YOLOv8x:超大型模型,速度最慢,准确度最高 ## 常见问题 1. **程序启动时提示依赖包缺失** 按照提示安装缺少的依赖包,或者运行 `pip install -r requirements.txt` 安装所有依赖。 2. **无法打开摄像头** 确保摄像头未被其他程序占用,并且已正确连接到计算机。 3. **屏幕覆盖层检测不显示** 确保已安装PIL和tkinter库,并且系统支持透明窗口。 4. **检测结果保存失败** 确保outputs目录存在并且有写入权限。 ## 许可证 本项目采用MIT许可证。详情请参见LICENSE文件。