# detect_web **Repository Path**: sambios/detect_web ## Basic Information - **Project Name**: detect_web - **Description**: 存放检测demo, 方便使用web看检测 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-05 - **Last Updated**: 2025-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 该项目是一个基于Web的检测系统,结合了YOLOv5和YOLOX两种模型,适用于实时视频流的目标检测任务。该项目主要由C++和Python实现,包含Web服务器、目标检测、图像处理等多个模块。以下为该项目的README.md内容: --- # detect_web detect_web 是一个基于YOLOv5和YOLOX的目标检测项目,支持通过Web界面实时展示视频流的目标检测结果。该项目适用于实时视频流的处理,并提供统计信息展示和参数调整功能。 ## 项目特点 - 支持YOLOv5和YOLOX两种目标检测模型。 - 提供基于Web的实时视频流展示。 - 支持统计信息展示(如FPS、检测到的对象数量等)。 - 支持动态调整检测参数(如置信度阈值、NMS阈值等)。 - 支持RTSP视频流的接入。 ## 项目结构 - **cpp/**: C++实现的核心模块,包括Web服务器、图像编码、状态展示等。 - `web_server.cpp/h`: 提供Web服务器功能,支持MJPEG格式的视频流传输。 - `web_status_ui.cpp/h`: 提供状态页面的HTML生成。 - `web_utils.cpp/h`: 提供时间、JPEG编码等基础工具。 - `yolov5_web.cpp` 和 `yolox_web.cpp`: 分别实现YOLOv5和YOLOX的检测逻辑。 - **python/**: Python实现的Web服务和检测模块。 - `yolov5_web.py`: 基于YOLOv5的目标检测实现。 - `yolox_web.py`: 基于YOLOX的目标检测实现。 - `templates/index.html`: Web前端页面模板,展示视频流和统计信息。 - **RTSPStream**: 支持RTSP视频流的接入和帧读取。 ## 安装与运行 ### 依赖项 - **C++模块依赖**: - OpenCV - cv::Mat - RivsInference(用于模型推理) - **Python模块依赖**: - OpenCV (`cv2`) - Flask(用于Web服务) - ONNX Runtime(用于ONNX模型推理) ### 安装步骤 1. **安装依赖库**: ```bash pip install opencv-python flask onnxruntime ``` 2. **编译C++模块**(如需使用C++实现的Web服务器): ```bash cd cpp mkdir build && cd build cmake .. make ``` 3. **运行Python Web服务**: - 对于YOLOv5: ```bash python python/yolov5_web.py ``` - 对于YOLOX: ```bash python python/yolox_web.py ``` 4. **访问Web界面**: 打开浏览器,访问 `http://localhost:5000` 查看实时视频流和检测结果。 ## 使用说明 - **RTSP视频流支持**: 在启动脚本中指定RTSP地址,例如: ```bash python yolov5_web.py --rtsp rtsp://your_rtsp_stream_url ``` - **动态调整参数**: 通过Web界面或API调整检测参数,如置信度阈值、NMS阈值等。 - **切换模型**: 支持在运行时切换不同的检测模型(如YOLOv5s、YOLOv5m等)。 ## 贡献指南 欢迎贡献代码和改进文档。请遵循以下步骤: 1. Fork仓库。 2. 创建新分支。 3. 提交代码更改。 4. 创建Pull Request。 ## 许可证 该项目遵循MIT许可证。详情请查看项目根目录下的LICENSE文件。 ## 联系方式 如有问题或建议,请提交Issue或联系项目维护者。 --- 以上为该项目的简要说明和使用指南,适用于开发者和用户快速上手和部署。