如何用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 相关文章推荐
Python开发实例分享bt种子爬虫程序和种子解析
May 21 Python
用Python编写分析Python程序性能的工具的教程
Apr 01 Python
Python实现股市信息下载的方法
Jun 15 Python
Python基于二分查找实现求整数平方根的方法
May 12 Python
python记录程序运行时间的三种方法
Jul 14 Python
详解python异步编程之asyncio(百万并发)
Jul 07 Python
Python使用pydub库对mp3与wav格式进行互转的方法
Jan 10 Python
Python Django基础二之URL路由系统
Jul 18 Python
Python 列表去重去除空字符的例子
Jul 20 Python
Python实现基于socket的udp传输与接收功能详解
Nov 15 Python
关于pytorch处理类别不平衡的问题
Dec 31 Python
使用Python操作MySQL的小技巧
Sep 10 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单例模式实例分析【防继承,防克隆操作】
2019/05/22 PHP
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
js特殊字符转义介绍
2013/11/05 Javascript
window.open打开页面居中显示的示例代码
2013/12/27 Javascript
javascript中加号(+)操作符的一些神奇作用
2014/06/06 Javascript
JavaScript 事件入门知识
2015/04/13 Javascript
原生JS实现仿淘宝网左侧商品分类菜单效果代码
2015/09/10 Javascript
如何利用Promises编写更优雅的JavaScript代码
2016/05/17 Javascript
Bootstrap 最常用的JS插件系列总结(图片轮播、标签切换等)
2016/07/14 Javascript
js简单正则验证汉字英文及下划线的方法
2016/11/28 Javascript
JavaScript结合HTML DOM实现联动菜单
2017/04/05 Javascript
Vue制作Todo List网页
2017/04/26 Javascript
Vue自定义指令封装节流函数的方法示例
2018/07/09 Javascript
深入解析ES6中的promise
2018/11/08 Javascript
基于vue-draggable 实现三级拖动排序效果
2020/01/10 Javascript
JS实现按比例缩小图片宽高
2020/08/24 Javascript
JavaScript 实现下雪特效的示例代码
2020/09/09 Javascript
编写Python脚本来获取Google搜索结果的示例
2015/05/04 Python
Python简单操作sqlite3的方法示例
2017/03/22 Python
python探索之BaseHTTPServer-实现Web服务器介绍
2017/10/28 Python
python  文件的基本操作 菜中菜功能的实例代码
2019/07/17 Python
使用python实现多维数据降维操作
2020/02/24 Python
Python flask框架如何显示图像到web页面
2020/06/03 Python
Python字符串函数strip()原理及用法详解
2020/07/23 Python
python使用scapy模块实现ping扫描的过程详解
2021/01/21 Python
CSS3 media queries + jQuery实现响应式导航
2016/09/30 HTML / CSS
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
马来西亚在线购物:POPLOOK.com
2019/12/09 全球购物
Hotels.com拉丁美洲:从豪华酒店到经济型酒店的预定优惠和折扣
2019/12/09 全球购物
介绍java中初始化块的使用
2012/09/11 面试题
学校消防安全制度
2014/01/30 职场文书
KTV的创业计划书范文
2014/02/02 职场文书
竞选班干部的演讲稿
2014/04/24 职场文书
python自动化测试之Selenium详解
2022/03/13 Python
SpringCloud Function SpEL注入漏洞分析及环境搭建
2022/04/08 Java/Android
关于MySQL中explain工具的使用
2023/05/08 MySQL