python+opencv实现动态物体追踪


Posted in Python onJanuary 09, 2018

简单几行就可以实现对动态物体的追踪,足见opencv在图像处理上的强大。

python代码:

import cv2 
import numpy as np 
camera=cv2.VideoCapture(0) 
firstframe=None 
while True: 
  ret,frame = camera.read() 
  if not ret: 
    break 
  gray=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY) 
  gray=cv2.GaussianBlur(gray,(21,21),0) 
  if firstframe is None: 
    firstframe=gray 
    continue 
   
  frameDelta = cv2.absdiff(firstframe,gray) 
  thresh = cv2.threshold(frameDelta, 25, 255, cv2.THRESH_BINARY)[1] 
  thresh = cv2.dilate(thresh, None, iterations=2) 
  # cnts= cv2.findContours(thresh.copy(),cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE) 
   
  x,y,w,h=cv2.boundingRect(thresh) 
  frame=cv2.rectangle(frame,(x,y),(x+w,y+h),(0,0,255),2) 
  cv2.imshow("frame", frame) 
  cv2.imshow("Thresh", thresh) 
  cv2.imshow("frame2", frameDelta) 
  key = cv2.waitKey(1)&0xFF 
   
  if key == ord("q"): 
    break 
 
camera.release() 
cv2.destroyAllWindows()

效果图

python+opencv实现动态物体追踪

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现数通设备tftp备份配置文件示例
Apr 02 Python
Django URL传递参数的方法总结
Aug 28 Python
python 系统调用的实例详解
Jul 11 Python
git进行版本控制心得详谈
Dec 10 Python
Python实现购物车程序
Apr 16 Python
Django model select的多种用法详解
Jul 16 Python
python安装本地whl的实例步骤
Oct 12 Python
用openCV和Python 实现图片对比,并标识出不同点的方式
Dec 19 Python
Jupyter Notebook 文件默认目录的查看以及更改步骤
Apr 14 Python
如何在Win10系统使用Python3连接Hive
Oct 15 Python
selenium判断元素是否存在的两种方法小结
Dec 07 Python
python实战之90行代码写个猜数字游戏
Apr 22 Python
全面了解Nginx, WSGI, Flask之间的关系
Jan 09 #Python
Python设计模式之代理模式简单示例
Jan 09 #Python
基于python内置函数与匿名函数详解
Jan 09 #Python
Python设计模式之工厂模式简单示例
Jan 09 #Python
浅谈numpy库的常用基本操作方法
Jan 09 #Python
基于Python中单例模式的几种实现方式及优化详解
Jan 09 #Python
浅谈Python2获取中文文件名的编码问题
Jan 09 #Python
You might like
《星际争霸2》终章已出 RTS时代宣告终结
2017/02/07 星际争霸
php获取mysql版本的几种方法小结
2008/03/25 PHP
用PHP实现浏览器点击下载TXT文档的方法详解
2013/06/02 PHP
php中\r \r\n \t的区别示例介绍
2014/02/08 PHP
利用PHP函数计算中英文字符串长度的方法
2014/11/11 PHP
关于PHP文件的自动运行方法分析
2016/05/13 PHP
php+ajax注册实时验证功能
2016/07/20 PHP
PHP实现基于面向对象的mysqli扩展库增删改查操作工具类
2017/07/18 PHP
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
关于JS中prototype的理解
2015/09/07 Javascript
谈一谈javascript闭包
2016/01/28 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
2016/09/19 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
2017/01/19 Javascript
如何使用Bootstrap创建表单
2017/03/29 Javascript
xmlplus组件设计系列之图标(ICON)(1)
2017/05/05 Javascript
node.js中TCP Socket多进程间的消息推送示例详解
2018/07/10 Javascript
[01:03:36]Ti4 循环赛第三日DK vs Titan
2014/07/12 DOTA
[45:34]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.18
2020/12/19 DOTA
selenium在执行phantomjs的API并获取执行结果的方法
2018/12/17 Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
2019/06/17 Python
python datetime中strptime用法详解
2019/08/29 Python
python字符串的拼接方法总结
2019/11/18 Python
python实现差分隐私Laplace机制详解
2019/11/25 Python
Python requests模块cookie实例解析
2020/04/14 Python
selenium+python实现基本自动化测试的示例代码
2021/01/27 Python
Argos官网:英国家喻户晓的百货零售连锁商
2017/04/03 全球购物
Shopty西班牙:缝纫机在线销售
2018/01/26 全球购物
微软台湾官方网站:Microsoft台湾
2018/08/15 全球购物
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
如何用SQL语句进行模糊查找
2015/09/25 面试题
什么是反射?如何实现反射?
2016/07/25 面试题
银行员工辞职信范文
2014/01/20 职场文书
关爱女孩行动实施方案
2014/03/13 职场文书
2015年校长新年寄语
2014/12/08 职场文书
小学班主任自我评价
2015/03/11 职场文书
vue实现拖拽交换位置
2022/04/07 Vue.js