当前位置: 首页 > news >正文

OpenCV实现视频的追踪(meanshift、Camshift)

目录

1,meanshift

1.1  算法流程

1.2  算法实现

1.3 代码实现

1.4  结果展示


1,meanshift

1.1  算法流程

1.2  算法实现

1.3 代码实现

import numpy as np
import cv2 as cv

# 读取视频
cap = cv.VideoCapture('video.mp4')

# 检查视频是否成功打开
if not cap.isOpened():
    print("Error: Cannot open video file.")
    exit()

# 获取第一帧图像,并指定目标位置
ret, frame = cap.read()

# 目标位置
x, y, w, h = 960,500, 100, 100
track_window = (x, y, w, h)

# 指定目标的感兴趣区域
roi = frame[y:y+h, x:x+w]

# 转换感兴趣区域的颜色空间(HSV)
hsv_roi = cv.cvtColor(roi, cv.COLOR_BGR2HSV)

# 计算感兴趣区域的直方图
roi_hist = cv.calcHist([hsv_roi], [0], None, [180], [0, 180])

# 归一化直方图
cv.normalize(roi_hist, roi_hist, 0, 255, cv.NORM_MINMAX)

# 设置目标追踪的停止条件
term_crit = (cv.TERM_CRITERIA_EPS | cv.TERM_CRITERIA_COUNT, 10, 1)

while True:
    # 获取每一帧图像
    ret, frame = cap.read()
    if not ret:
        break

    # 转换当前帧的颜色空间(HSV)
    hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV)

    # 计算直方图的反向投影
    dst = cv.calcBackProject([hsv], [0], roi_hist, [0, 180], 1)

    # 使用meanshift追踪
    ret, track_window = cv.meanShift(dst, track_window, term_crit)

    # 获取追踪后的位置并在图像上绘制矩形
    x, y, w, h = track_window
    img2 = cv.rectangle(frame, (x, y), (x+w, y+h), 255, 2)
    cv.imshow('frame', img2)

    if cv.waitKey(60) & 0xFF == ord('q'):
        break

cap.release()
cv.destroyAllWindows()

1.4  结果展示

追踪结果展示

相关文章:

  • Ubuntu Zookeeper开机自启动服务
  • 快速选择排序
  • Spring的注解开发-注解方式整合MyBatis代码实现
  • 辅助驾驶功能开发-测试篇(2)-真值系统介绍
  • 宝塔反代openai官方API接口详细教程,502 Bad Gateway问题解决
  • 【IPC 通信】信号处理接口 Signal API(6)
  • 点击router-link时候会发生什么?
  • 分类预测 | MATLAB实现WOA-FS-SVM鲸鱼算法同步优化特征选择结合支持向量机分类预测
  • 步力宝科技爆款产品定位,开创智能物联网新商业
  • 博客无限滚动加载(html、css、js)实现
  • 简化数据库操作:探索 Gorm 的约定优于配置原则
  • javaWeb学生信息管理
  • 读书笔记|《数据压缩入门》—— 柯尔特·麦克安利斯 亚历克斯·海奇
  • 网盘搜索引擎:点亮知识星空,畅享数字宝藏!
  • 【NLP的python库(03/4) 】: 全面概述
  • netty 拆包/粘包
  • 冥想第九百二十九天
  • 获取网卡上的IP、网关及DNS信息,获取最佳路由,遍历路由表中的条目(附源码)
  • 保姆级 -- Zookeeper超详解
  • watch()监听vue2项目角色权限变化更新挂载
  • 北京理工大学:教师宫某涉嫌师德失范,暂停其一切职务活动
  • 一图看懂|特朗普政府VS美国顶尖高校:这场风暴如何刮起?
  • 重庆发展投资董事长刘小军将任渝农商行董事长
  • 昆明一垃圾车致人身亡事故调查报告:驻车制动装置失效,司机欲阻停被撞
  • 海外需求增长推动价格飙升,正丹股份去年净利润暴增119倍
  • 蚌埠市委常委、宣传部部长郭鹏履新安徽省委宣传部副部长