# crowd-warning **Repository Path**: yjinit/crowd-warning ## Basic Information - **Project Name**: crowd-warning - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-20 - **Last Updated**: 2026-10-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 人群密度估计与拥挤预警 独立程序,调用 Ultralytics 的 `RegionCounter` 跟踪人并按区域计数。密度等于区域内人数除以该区域的实测面积(人/平方米)。连续多帧达到拥挤档才打印一次预警。 ## 运行 下载后的环境按 [环境搭建.md](环境搭建.md) 构建。本机已验证的组合是 Python 3.12 和 CPU 版 PyTorch。虚拟环境建好并激活后: ```powershell .\.venv\Scripts\Activate.ps1 python app.py ``` 按 `q` 退出。换配置文件:`python app.py config.yaml`。 桌面界面是 `python detect_ui.py`。它的架构和功能见 [架构与功能.md](架构与功能.md),控件布局见 [detect_ui页面布局.md](detect_ui页面布局.md)。开题报告可用的功能与优缺点简述见 [开题报告-功能与优缺点.md](开题报告-功能与优缺点.md)。 运行前改 `config.yaml`: - `source`:视频文件路径,摄像头编号 `0`,或 `screen`(抓主屏幕)。这台机器没有摄像头,配置里先指向 `samples/solutions_ci_demo.mp4`。 - `draw_zone`:`true` 时启动后在第一帧上用鼠标划定检测区域。左键加点,点回第一个顶点或按 Enter 完成,右键撤销,C 清空,Q 退出。划完后终端会打印顶点,可粘贴回 `points`。`false` 时使用 `zones` 里写死的顶点。 - `zones`:每个区域的名称、像素顶点和现场量过的 `area_m2`。划定模式下仍要用这里的名称和面积。 - `normal_below`、`attention_below`、`hold_frames`:密度分档和连续确认帧数。 摄像头尽量俯视。人互相挡住时检测框会漏,人数会偏低。 Ultralytics 使用 AGPL-3.0。本程序如果对外分发,连带使用的 Ultralytics 代码也要按 AGPL-3.0 提供源代码。