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采用getopt解析命令行输入参数实例
Sep 30 Python
Python中使用第三方库xlrd来写入Excel文件示例
Apr 05 Python
python结合API实现即时天气信息
Jan 19 Python
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
Jun 18 Python
python 处理string到hex脚本的方法
Oct 26 Python
python global关键字的用法详解
Sep 05 Python
Python简单实现区域生长方式
Jan 16 Python
python tkinter之 复选、文本、下拉的实现
Mar 04 Python
如何查看Django ORM执行的SQL语句的实现
Apr 20 Python
解决matplotlib.pyplot在Jupyter notebook中不显示图像问题
Apr 22 Python
手把手教你用Django执行原生SQL的方法
Feb 18 Python
Python3 使用pip安装git并获取Yahoo金融数据的操作
Apr 08 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
在线短消息收发的程序,不用数据库
2006/10/09 PHP
php采集自中央气象台范围覆盖全国的天气预报代码实例
2015/01/04 PHP
YII动态模型(动态表名)支持分析
2016/03/29 PHP
yii2安装详细流程
2018/05/23 PHP
解放web程序员的输入验证
2006/10/06 Javascript
谷歌浏览器 insertCell与appendChild的区别
2009/02/12 Javascript
ext 代码生成器
2009/08/07 Javascript
在网页中使用document.write时遭遇的奇怪问题
2010/08/24 Javascript
jQuery选中select控件 无法设置selected的解决方法
2010/09/01 Javascript
angularjs表格分页功能详解
2016/01/21 Javascript
JavaScript实现复制内容到粘贴板代码
2016/03/31 Javascript
JavaScript sort数组排序方法和自我实现排序方法小结
2016/06/06 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
2016/12/07 Javascript
JS前端笔试题分析
2016/12/19 Javascript
bootstrap实现图片自动轮播
2016/12/21 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
JS switch判断 三目运算 while 及 属性操作代码
2017/09/03 Javascript
vue+elementUI实现表单和图片上传及验证功能示例
2019/05/14 Javascript
微信小程序设置滚动条过程详解
2019/07/25 Javascript
vue-router 中 meta的用法详解
2019/11/01 Javascript
详解在Vue.js编写更好的v-for循环的6种技巧
2020/04/14 Javascript
vue接口请求加密实例
2020/08/11 Javascript
javaScript代码飘红报错看不懂?读完这篇文章再试试
2020/08/19 Javascript
JavaScript枚举选择jquery插件代码实例
2020/11/17 jQuery
如何在JavaScript中使用localStorage详情
2021/02/04 Javascript
Python编程中装饰器的使用示例解析
2016/06/20 Python
django用户登录验证的完整示例代码
2019/07/21 Python
基于python图像处理API的使用示例
2020/04/03 Python
scrapy中如何设置应用cookies的方法(3种)
2020/09/22 Python
Html5中的桌面通知Notification的实现
2018/09/25 HTML / CSS
Silk’n激光脱毛器官网:silkn.com
2016/10/06 全球购物
初三政治教学反思
2014/01/30 职场文书
热门专业求职信
2014/05/24 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
图书借阅制度范本
2015/08/06 职场文书
MySQL 如何设计统计数据表
2021/06/15 MySQL