详见:https://blog.csdn.net/qq_35624030/article/details/79833269

附上代码:

import cv2
import time
# 定义摄像头对象,其参数0表示第一个摄像头
camera = cv2.VideoCapture(0)
# 测试用,查看视频size
width  = int(camera.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(camera.get(cv2.CAP_PROP_FRAME_HEIGHT))
size = width,height
#打印一下分辨率
print(repr(size))
#设置一下帧数和前背景
fps = 5
pre_frame = Nonewhile (1):start = time.time()# 读取视频流ret, frame = camera.read()# 转灰度图gray_pic = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)if not ret:print("打开摄像头失败")breakend = time.time()cv2.imshow("capture", frame)# 运动检测部分,看看是不是5FPSseconds = end - startif seconds < 1.0 / fps:time.sleep(1.0 / fps - seconds)gray_pic = cv2.resize(gray_pic, (480, 480))# 用高斯滤波进行模糊处理gray_pic = cv2.GaussianBlur(gray_pic, (21, 21), 0)# 如果没有背景图像就将当前帧当作背景图片if pre_frame is None:pre_frame = gray_picelse:# absdiff把两幅图的差的绝对值输出到另一幅图上面来img_delta = cv2.absdiff(pre_frame, gray_pic)# threshold阈值函数(原图像应该是灰度图,对像素值进行分类的阈值,当像素值高于(有时是小于)阈值时应该被赋予的新的像素值,阈值方法)thresh = cv2.threshold(img_delta, 30, 255, cv2.THRESH_BINARY)[1]# 用一下腐蚀与膨胀thresh = cv2.dilate(thresh, None, iterations=2)# findContours检测物体轮廓(寻找轮廓的图像,轮廓的检索模式,轮廓的近似办法)contours, hierarchy = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)for c in contours:# 设置敏感度# contourArea计算轮廓面积if cv2.contourArea(c) < 1000:continueelse:print("有人员活动!!!")# 保存图像TI = time.strftime('%Y-%m-%d', time.localtime(time.time()))cv2.imwrite("D:\\PYthon\\first_j\\" + "JC"+TI+ '.jpg', frame)breakpre_frame = gray_picif cv2.waitKey(1) & 0xFF == ord('q'):break# release()释放摄像头
camera.release()
# destroyAllWindows()关闭所有图像窗口
cv2.destroyAllWindows()

利用摄像头实现人员活动检测(python+openCV)相关推荐

  1. 识别硬币和细胞数量+条形码检测(python+opencv)

    如愿 一.准备工作 二.硬币和细胞数量识别 三.条形码定位和识别 四.总结 五.参考资料 一.准备工作 所用图片 python版本以及opencv版本 python 3.8.12 opencv 3.4 ...

  2. 鱼眼摄像头的畸变矫正方法-python+opencv

    鱼眼摄像头畸变校正的方法: 1. 棋盘矫正法 2. 经纬度矫正法. 相机为什么会出现畸变? 当前相机的畸变主要分为径向畸变和切向畸变两种. 径向畸变产生的原因:相机的光学镜头厚度不均匀,离镜头越远场景 ...

  3. python 摄像头拍照是反的,Python/OpenCV网络摄像头向后移动

    我不知道是什么问题,但当我在网络摄像头上移动时,它捕捉到了我的脸,但它不是我动作的镜子,而是向后/反向的.在 有人知道怎么解决这个问题吗?在 def网络摄像头(网络摄像头.分类器.低比例):if we ...

  4. 毕业设计 深度学习 机器视觉 车位识别车道线检测 - python opencv

    0 前言

  5. 活体检测 使用OpenCV进行 运动检测

    原文链接 活体检测 使用OpenCV进行 运动检测 在 2019年7月19日 上张贴 由 hotdog发表回复 活体检测 使用OpenCV进行 运动检测 在本教程中,您将学习如何使用OpenCV执行 ...

  6. Python OpenCV高速公路道路汽车车辆摄像头视频侦测检测识别统计数量

    Python OpenCV高速公路道路汽车车辆侦测检测识别统计数量 如需安装运行环境或远程调试,可加QQ905733049由专业技术人员远程协助! 运行结果如下: 运行主要代码如下: import c ...

  7. Python+OpenCV利用KNN背景分割器进行静态场景行人检测与轨迹跟踪

    前言 视频图像中的目标检测与跟踪,是计算机视觉的基础课题,同时具有广泛的应用价值.视觉目标(单目标)跟踪任务就是在给定某视频序列初始帧的目标大小与位置的情况下,预测后续帧中该目标的大小与位置.本篇文章 ...

  8. Python OpenCV --Drowsiness Detector 睡意检测--项目记录

    睡意检测是一项安全技术,可以防止驾驶员在驾驶中入睡而导致的事故. 目的是建立一个睡意检测系统,该系统将检测人的眼睛闭合几秒钟. 当检测到困倦时,该系统将警告驾驶员. 睡意检测版本1.0 睡眠检测关键步 ...

  9. 使用 ESP32 + Python 实现在线人员入侵检测

       在工业园区中,为了园区安全,某些区域不允许人员随便进入,通过人为监控不能做到全天候监视,使用摄像头结合人体检测可以有效解决这个问题.本文则是利用HaaS Python通过摄像头采集环境图片并调用 ...

最新文章

  1. 2021年大数据常用语言Scala(二十):函数式编程 介绍
  2. numpy.transpose()用法
  3. 关于智慧城市建设的几点建议
  4. 清华大学计算机网络研究中心,清华大学信息网络工程研究中心简介
  5. 关于spring读取配置文件的两种方式
  6. 【Android Gradle 插件】Module 目录下 build.gradle 配置文件 ( plugins 闭包代码块中引入插件 | PluginAware#apply 方法引入插件 )
  7. QEMU-KVM中的多线程压缩迁移技术
  8. 引入Spring集成
  9. linux useradd 数字,详解linux useradd用户组合权限管理等
  10. M1芯片Mac也可以安装Windows系统啦 使用PD16虚拟机安装ARM版Windows10教程
  11. 大数据技术周报第 003 期
  12. golang 接口_「Golang系列」 深入理解Golang Empty Interface (空接口)
  13. 【LeetCode】剑指 Offer 55 - I. 二叉树的深度
  14. 16 bit float 存储_浅谈float和double
  15. 软件系统性能优化策略--SQL优化
  16. [DappReview]2020年第一季度Dapp市场报告
  17. android 免root 安装xposed,xposed框架免root安装|VAExposed(xposed框架免root版本)1.97最新版 - 维维软件园...
  18. 在小程序中实现海报制作
  19. 用python画哆啦a梦的头_用 Python 画个哆啦A梦
  20. Android SurfaceView实战 带你玩切水果1.0

热门文章

  1. Word2019如何取消保存文件位置默认为Onedrive-个人——文档
  2. 初学者囫囵吞枣急速编写简单Makefile
  3. 苹果笔记本这样处理不易被套路
  4. 【Elasticsearch】15 ES文档的基本操作 aggregations 【执行聚合操作】
  5. 4g上网宝显示无服务器,八天真实体验 华为EC5373 LTE上网宝
  6. 已有一个已排好序的数组,要求输入一个数,将它插入数组中,保持数组依然有序。
  7. 萤光云服务器,你值得拥有
  8. 上传声音 微信小程序_图文详解微信小程序中调用录音功能和音频播放的方法...
  9. css3搜索框呼出键盘,移动端 input 输入框实现自带键盘“搜索“功能并修改X
  10. PHP h5付款到支付宝账户