当前位置: 首页 > news >正文

ubuntu完全免费人流统计方案

1 用摄像头录像

2 在ubuntu上用开源软件来分析视频中出现人数。

------------------------------------------------------------------------

完全可以,而且选择非常多。

相比 Android 平台,在 Ubuntu 上做同样的事情要简单很多。因为 Ubuntu 是完整的桌面 Linux 系统,Python 生态、GPU 驱动、各种 AI 框架都能直接用,没有 Android 上那些兼容性、权限、性能限制等问题。

一、开源方案对比

方案名称技术栈难度准确度适合场景
OpenVINO People CounterYOLOv8 + OpenVINO + SupervisionIntel CPU/GPU/NPU 优化
OdinTensorFlow + Pose Estimation + Docker姿态估计 + 人群追踪
OpenCV HOG + SVMOpenCV 内置行人检测器很低快速原型、轻量需求
客流识别 SDKTensorFlow + 商业 SDK很高需要精准统计、商业应用

二、详细方案介绍

方案1:OpenVINO People Counter(推荐)

英特尔官方出品的开源 demo,Ubuntu 24.04 上一行命令就能跑起来,开源 Apache 2.0 许可证 。

技术栈:YOLOv8(人体检测)+ OpenVINO(推理加速)+ Supervision(区域统计)

安装与运行

bash

# 1. 安装依赖 sudo apt install git gcc python3-venv python3-dev # 2. 克隆仓库 git clone https://github.com/openvinotoolkit/openvino_build_deploy.git cd openvino_build_deploy/demos/people_counter_demo # 3. 创建虚拟环境并安装 python3 -m venv venv source venv/bin/activate pip install -r requirements.txt # 4. 运行(0 表示电脑自带摄像头,也可以用视频文件路径) python main.py --stream 0

核心代码(实际就几行):

python

# 加载 YOLOv8 模型并导出为 OpenVINO 格式 yolo_model = YOLO("yolov8n") yolo_model.export(format="openvino", int8=True) # 编译模型并推理 model = core.compile_model(model, device_name="CPU") results = model(input_image) # 统计区域内人数 people_count = len(detections_filtered)

优点

  • 英特尔官方维护,质量有保障

  • 支持 CPU/GPU/NPU 切换,按一个键就行

  • 可以在指定多边形区域内统计人数(不是整个画面)

  • 支持 INT8 量化,普通 CPU 也能流畅跑


方案2:Odin——姿态估计 + 人群追踪

这个项目基于人体姿态估计来追踪和计数,比纯目标检测更精确,尤其在人群密集、互相遮挡的场景下 。

技术栈:TensorFlow + DeeperCut/ArtTrack(姿态估计)+ Docker

特点

  • 通过 Docker 容器化部署,环境配置简单

  • 基于人体关键点(骨骼点)追踪,而非普通检测框

  • 适用于人群密集、互相遮挡的复杂场景

适用场景:需要高精度人群统计、学术研究、复杂环境


方案3:OpenCV 自带行人检测

最简单粗暴的方案,OpenCV 内置了 HOG + SVM 的行人检测器,几行代码就能跑

python

import cv2 hog = cv2.HOGDescriptor() hog.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector()) # 检测行人 (rects, weights) = hog.detectMultiScale(image, scale=1.05) # 统计人数 people_count = len(rects)

优点:不需要安装任何额外框架,OpenCV 装好就能用
缺点:准确度不如深度学习方法,侧脸、遮挡场景表现一般


方案4:客流识别 SDK(商业级准确度)

如果你需要商业级别的准确度,可以考虑一些商业 SDK。比如有专门针对 Ubuntu 的客流识别 SDK,支持 CPU/GPU,以人体头肩为主要识别目标,对俯拍、出入口场景优化很好 。

特点

  • 支持门前通过人数统计、入店人数统计

  • 支持 RTSP/RTMP 视频流

  • 可返回结果渲染图和累计人数

  • 需要 license 认证(付费)

适用场景:店铺客流统计、需要精准数据的商业场景


三、各方案优缺点对比

对比维度OpenVINOOdinOpenCV HOG商业 SDK
开源✅ Apache 2.0✅ BSD
准确度很高很高
部署难度低(几行命令)中(需要 Docker)很低低(但需要 license)
CPU 运行✅ 流畅(INT8量化)较慢✅ 快✅ 支持
GPU 支持需自己实现
区域统计✅ 支持多边形需配置需自己实现
适合场景通用密集人群快速原型商业应用

四、我的建议

  1. 想快速免费体验OpenVINO People Counter,Ubuntu 上一条命令就能跑起来,Intel 官方出品,质量有保障

  2. 需要高精度/处理密集人群Odin,基于姿态估计,对遮挡场景更好

  3. 只是想随便试试OpenCV HOG,几行代码就能检测行人

  4. 做商业产品→ 考虑商业 SDK或者基于 OpenVINO 自己封装(省钱但费时间)


回到你最初的问题:在 Ubuntu 上做人流统计,完全没问题,而且比 Android 简单得多。最大的区别是:Android 上要折腾摄像头权限、模型转换、性能优化;Ubuntu 上直接用 Python 跑就行了,想用 GPU 加速就装个 CUDA,想省电就用 CPU INT8 量化。

你想先试试哪个方案?我可以帮你把完整代码写出来。

就是用摄像头录像,然后用这个软件来计算人数?

Read 10 web pages

是的,你的理解完全正确。用摄像头录像,然后用软件计算人数,这确实是主流的工作流程。

整个流程可以这样概括:

摄像头录像 → 软件逐帧分析 → 识别+追踪 → 输出统计结果

一、软件处理视频的两种方式

1. 实时处理(摄像头直接连接电脑)

摄像头插在Ubuntu电脑上,软件实时读取画面并统计。

bash

# 以human_counter项目为例,指定摄像头设备 python count_people.py --source 0 # 0表示第一个USB摄像头

2. 离线处理(先录像,后分析)

先用手机、监控摄像头等录好视频,保存为MP4/AVI文件,再让软件分析这个文件。

bash

# 处理已经录好的视频文件 python count_people.py --source path/to/your_video.mp4

两种方式都可以,区别只在于--source参数是写/dev/video0(摄像头)还是写视频文件路径。

二、具体开源项目及其处理方式

项目名称处理方式输入源输出结果
Intel People Counter实时/离线摄像头或视频文件画面内人数、停留时长、总计数
human_counter实时/离线摄像头或视频文件实时人数统计
Odin实时/离线视频流或文件姿态估计+人群追踪+计数
Intel Social Distancing RI实时/离线USB摄像头、视频文件、RTSP流容量限制、排队监测、单向监测

三、完整的工作流程

human_counter项目为例,用起来非常简单:

bash

# 1. 克隆项目 git clone https://github.com/leviome/human_counter.git cd human_counter # 2. 安装依赖 pip install -r requirements.txt # 3. 运行分析(直接处理摄像头) python count_people.py --source 0 # 或者分析之前录好的视频 python count_people.py --source my_video.mp4

软件做的事:

  1. 逐帧读取视频/摄像头画面

  2. 检测每一帧中的人体(使用深度学习模型)

  3. 追踪每个人在画面中的移动轨迹(分配唯一ID)

  4. 计数:跨过虚拟线就+1,或者直接统计画面内人数

四、用自己录的视频分析的步骤

如果你已经有录像(比如用手机拍的),步骤是:

  1. 把视频文件传到 Ubuntu 电脑上

  2. 选择一个开源项目(如human_counter或 Intel 的 People Counter)

  3. 把视频路径作为--source参数传入

  4. 软件跑完后会输出统计结果,有些项目还会生成带标注框的输出视频

五、推荐的开源项目

根据你的需求(Ubuntu + 人数统计),推荐:

项目推荐理由
human_counter最简单,几行命令就能跑,支持视频文件
Intel People Counter官方维护,文档完善,准确度高
Intel Social Distancing RI功能最全,支持排队监测、容量限制,Docker一键部署

你可以先试试human_counter,把之前录好的视频放进去跑一下,几分钟就能看到效果。

http://www.jsqmd.com/news/631289/

相关文章:

  • LSF cgroups与Cadence daemon starter的兼容性实战:从告警到精准配置
  • 大一C语言课设别慌!手把手教你用结构体和文件操作搞定图书馆管理系统(附完整源码)
  • Phi-4-mini-reasoning效果展示:概率推理题(贝叶斯更新、条件期望)准确输出
  • C#怎么实现批量邮件发送 C#如何用MailKit批量发送个性化邮件和HTML格式邮件【网络】
  • 孤能子视角:AI“创新-幻觉“工程化框架
  • 基于i.MX6UL与IP175D的5端口交换机VLAN配置与驱动开发实战
  • Windows优化神器:3步告别卡顿,让你的电脑飞起来
  • 从数据偏差到部署歧视,全链路公平性评估闭环构建,深度解读ISO/IEC 23053:2023新标实施要点
  • Flux MCP 集成指南
  • Redis持久化:从AOF到RDB,如何实现数据不丢失?芈
  • PyMICAPS气象数据可视化终极指南:从Micaps格式到专业图表的完整实战教程
  • 避坑指南:用VS2022和UE5.2搞定AirSim环境,解决编译报错(含Car模式配置)
  • 避坑指南:Intel RealSense深度图保存常见问题解析(16位PNG格式处理技巧)
  • 因为目前全世界对于人流的统计准确率都很低----所以这个东西只是先看一看
  • 不只是部署:在 Windows 11 上用 Conda 玩转 KTransformers,深入对比 GGUF 与 Safetensors 模型加载的实战差异
  • 这个键盘就算了------当二手的卖掉
  • 打字不如说话,说话不如截图——AI 代码助手的多模态输入实践钩
  • MTGAT:多模态时序图注意力网络在情感分析中的创新应用
  • 2026显华真空脱泡搅拌机选型指南:型号参数价格及采购全解析 - 博客湾
  • FastAPI中间件开发:请求日志、耗时统计与CORS详解
  • 从Prompt工程师到MLOps架构师,大模型工程化人才跃迁路径全解析,一线大厂HR亲授筛选逻辑与成长陷阱
  • 洛雪音乐助手:免费开源的多平台音乐播放器完全指南
  • 【Java学习第一周】装JDK 1.8的过程
  • Qwen3-TTS-12Hz-1.7B-VoiceDesign提示词工程:精准控制语音输出
  • FastAPI文件交互:大文件上传、下载与静态文件托管的流式处理
  • 深度解析商务衬衫:一篇读懂选购搭配与核心工艺 - 博客湾
  • Vue.js组件通信Props在函数式组件中传递与性能表现分析
  • 扩散模型对抗样本经典baselines刈
  • 孤能子视角:deepSeek“创新–幻觉“两模式自诊,顺看“真幻觉“与“伪幻觉“
  • Nunchaku FLUX.1 CustomV3从入门到精通:IPAdapter风格迁移全流程解析