如何用OpenCV -python3实现视频物体追踪


Posted in Python onDecember 04, 2019

opencv

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。该库也有大量的Python、Java and MATLAB/OCTAVE(版本2.5)的接口。这些语言的API接口函数可以通过在线文档获得。如今也提供对于C#、Ch、Ruby,GO的支持。

所有新的开发和算法都是用C++接口。一个使用CUDA的GPU接口也于2010年9月开始实现。

import numpy as np
import cv2
cap =cv2.VideoCapture(0)
while(1):
  #获取每一帧
  ret,frame = cap.read()
  #RGB转换到HSV
  hsv = cv2.cvtColor(frame,cv2.COLOR_BGR2HSV)
  #设定蓝色的阈值。确定要追踪的颜色为蓝色。
  lower_blue = np.array([100,50,50])
  upper_blue = np.array([120,255,255])
  #根据阈值构建掩模,构建黑白图
  #hsv:原图
  #lower_blue:图像中低于这个lower_blue的值,图像值变为0,即黑色
  #upper_blue:图像中高于这个upper_blue的值,图像值变为0
  #而在lower_blue~upper_blue之间的值变成255,即白色。
  mask = cv2.inRange(hsv,lower_blue,upper_blue)
  #对原图像和掩模进行位运算
  #蓝色覆盖白色区域,黑色不覆盖,实现了白色转化为要追踪的蓝色,也就是追踪效果。
  res = cv2.bitwise_and(frame,frame,mask=mask)
  #显示图像
  cv2.imshow('frame',frame)
  cv2.imshow('mask',mask)
  cv2.imshow('res',res)
  k = cv2.waitKey(5)& 0xFF
  if k==27:
    break
#关闭窗口
cv2.destroyAllWindows()

关于颜色阈值图(百度)。

如何用OpenCV -python3实现视频物体追踪

结果如下图所示。

如何用OpenCV -python3实现视频物体追踪

总结

以上所述是小编给大家介绍的如何用OpenCV -python3实现视频物体追踪,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
tensorflow实现对图片的读取的示例代码
Feb 12 Python
Python数据分析库pandas基本操作方法
Apr 08 Python
详解Python如何生成词云的方法
Jun 01 Python
Python面向对象程序设计中类的定义、实例化、封装及私有变量/方法详解
Feb 28 Python
django基于cors解决跨域请求问题详解
Aug 06 Python
Python+Redis实现布隆过滤器
Dec 08 Python
Python time库基本使用方法分析
Dec 13 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
Jan 06 Python
详解Python实现进度条的4种方式
Jan 15 Python
python实现处理mysql结果输出方式
Apr 09 Python
基于Python爬虫采集天气网实时信息
Jun 05 Python
解决pytorch下出现multi-target not supported at的一种可能原因
Feb 06 Python
Python绘制三角函数图(sin\cos\tan)并标注特定范围的例子
Dec 04 #Python
python 画函数曲线示例
Dec 04 #Python
python二元表达式用法
Dec 04 #Python
python numpy 反转 reverse示例
Dec 04 #Python
python将四元数变换为旋转矩阵的实例
Dec 04 #Python
python 和c++实现旋转矩阵到欧拉角的变换方式
Dec 04 #Python
python实现一个点绕另一个点旋转后的坐标
Dec 04 #Python
You might like
php 应用程序安全防范技术研究
2009/09/25 PHP
C#使用PHP服务端的Web Service通信实例
2014/04/08 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
php遍历CSV类实例
2015/04/14 PHP
Symfony核心类概述
2016/03/17 PHP
PHP获取表单数据与HTML嵌入PHP脚本的实现
2017/02/09 PHP
PHP+Mysql分布式事务与解决方案深入理解
2021/02/27 PHP
来自qq的javascript面试题
2010/07/24 Javascript
jQuery hover 延时器实现代码
2011/03/12 Javascript
Javascript根据指定下标或对象删除数组元素
2012/12/21 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
js获取页面传来参数的方法
2014/09/06 Javascript
NodeJs中的VM模块详解
2015/05/06 NodeJs
jQuery实现可关闭固定于底(顶)部的工具条菜单效果
2015/11/06 Javascript
jQuery选择器用法实例详解
2015/12/17 Javascript
Javascript的比较汇总
2016/07/25 Javascript
纯JS实现表单验证实例
2016/12/24 Javascript
Angular实现的简单查询天气预报功能示例
2017/12/27 Javascript
使用uni-app开发微信小程序的实现
2019/12/13 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
2020/03/07 Javascript
JavaScript面试中常考的字符串操作方法大全(包含ES6)
2020/05/10 Javascript
[01:24:09]Ti4 冒泡赛第二轮DK vs C9 1
2014/07/14 DOTA
Python环境搭建之OpenCV的步骤方法
2017/10/20 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
2019/04/27 Python
Python random模块的使用示例
2020/10/10 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
北美领先的智能产品购物网站:Wellbots
2018/06/11 全球购物
Sneaker Studio罗马尼亚网站:购买运动鞋
2018/11/04 全球购物
英国第一职业高尔夫商店:Clickgolf.co.uk
2020/11/18 全球购物
同步和异步有何异同,在什么情况下分别使用他们?举例说明
2014/02/27 面试题
最新销售员个人自荐信
2013/09/21 职场文书
会计专业毕业生自荐书
2014/06/25 职场文书
试用期工作表现自我评价
2015/03/06 职场文书
2015年小学财务工作总结
2015/07/20 职场文书
实体类或对象序列化时,忽略为空属性的操作
2021/06/30 Java/Android
大脑的记忆过程在做数据压缩,不同图形也有共同的记忆格式
2022/04/29 数码科技