图像处理笔记(4)----OpenCV对象追踪
时间:2022-07-24
本文章向大家介绍图像处理笔记(4)----OpenCV对象追踪,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
尝试找到一种方法来提取多个彩色对象,例如,同时提取红色,蓝色,绿色对象。
import cv2 as cv
import numpy as np
cap = cv.VideoCapture(0)
while (1):
#读取帧
_,frame = cap.read()
#转换颜色空间BGR到HSV
hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV)
# #定义HSV中蓝色的范围
lower_blue = np.array([100, 50, 50])
upper_blue = np.array([124, 255, 255])
# #定义HSV中红色的范围
lower_red = np.array([156, 50, 50])
upper_red = np.array([180, 255, 255])
#定义HSV中绿色的范围
lower_green = np.array([35, 50, 50])
upper_green = np.array([77, 255, 255])
#设置HSV的阈值使得只取蓝色
mask_blue = cv.inRange(hsv, lower_blue, upper_blue)
mask_red = cv.inRange(hsv, lower_red, upper_red)
mask_green = cv.inRange(hsv, lower_green, upper_green)
#将掩膜和图像逐像素相加
res_blue = cv.bitwise_and(frame, frame, mask= mask_blue)
res_red = cv.bitwise_and(frame, frame, mask= mask_red)
res_green = cv.bitwise_and(frame, frame, mask= mask_green)
res_blue_red = cv.add(res_blue,res_red)
res = cv.add(res_blue_red,res_green)
cv.imshow('frame',frame)
cv.imshow('mask_blue',mask_blue)
cv.imshow('mask_red',mask_red)
cv.imshow('mask_green',mask_green)
cv.imshow('res_blue',res_blue)
cv.imshow('res_red',res_red)
cv.imshow('res_green',res_green)
cv.imshow('res',res)
k = cv.waitKey(5)&0xFF
if k == 27:
break
cv.destroyAllWindows()
- 按键扫描接口的Verilog HDL 实现
- 病毒分析 | 一只“蜗牛”偷梁换柱,靠锁主页进行牟利
- 移位寄存器的工作原理
- ROM 单元
- 超前进位加法器
- 算法和数据结构—— 查找和排序
- CVE 2017-0199漏洞利用的新姿势
- Java 正则表达式 StackOverflowError 问题及其优化
- 权限后门系列之一:手动打造WordPress权限后门
- 浅谈用户行为分析之用户身份识别:cookie 知多少?
- 串口通信控制器的Verilog HDL实现(四) 接收模块的Verilog HDL 实现
- 串口通信控制器的Verilog HDL实现(三) 发送模块的Verilog HDL 实现
- 串口通信控制器的Verilog HDL实现(二) 波特率发生器模块
- 串口通信控制器的Verilog HDL实现(一) 顶层模块
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python爬虫-唯品会商品信息实战步骤详解
- go框架中使用CGO,docker build image打包镜像注意事项
- python爬虫汽车之家全车型及基本参数入数据库(截止50524个数据)(详解)
- C语言最全入门笔记
- 如何实现oVirt与Tungsten Fabric的集成
- 一文让你学完C++,干货收藏!!!
- 缓冲区溢出
- 指针变量的传值和传址
- 又被限速,我决定用 Serverless 搭建一款私人网盘
- C语言与C++常见面试题
- delete 和 delete [] 的真正区别
- C语言最大难点揭秘:编程的祸根!
- 【漏洞修复】MongoDB未授权访问漏洞复现和修复
- 在 Istio 中实现 Redis 集群的数据分片、读写分离和流量镜像
- 实现Android 滑动退出Activity的功能