利用opencv+python实现以下功能:

1)获取实时视频,分解帧频;

2)将视频做二值化处理;

3) 将视频做滤波处理(去除噪点,获取准确轮廓个数);

4)识别图像轮廓;

5)计算质心;

6)描绘质心动态变化曲线;

# -*- coding: utf-8 -*-

"""

Created on Thu Apr 24 12:10:23 2018

@author: irene

"""

import numpy as np

import matplotlib.pyplot as plt

from scipy.interpolate import spline

import math as mt

import cv2

cap = cv2.VideoCapture(‘1.avi‘) #读入视频

c=1

plt.figure(figsize=(8,8),dpi=80)

aa =[]

bb =[]

cc =[]

#uing = np.logspace(-3,2,121)

while(cap.isOpened()):

ret, frame = cap.read()

#分解为一帧一帧图像

if ret == True:

#cv2.imshow("frame",image)

img=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY) #彩色转灰度

# print(frame)

ret,thresh= cv2.threshold(img,127,255,0) #二值化

image,contours,hierarchy = cv2.findContours(thresh, 3, 1)

img = cv2.medianBlur(image,5) #进行中值滤波

cnt = contours[1] #选取其中的第一个轮廓,这幅图像只有两个轮廓

M = cv2.moments(cnt)

cX=int(M["m10"]/M["m00"]) #计算质心

cY=int(M["m01"]/M["m00"])

cv2.drawContours(img,contours,-1,(0,255,0),2)

cv2.circle(img,(cX,cY),7,(255,255,255),-1)

cv2.putText(img,"",(cX-20,cY-20),

cv2.FONT_HERSHEY_SIMPLEX,0.5,(255,255,255),2)

cv2.imshow("img",img)

cv2.imwrite(‘img/‘+str(c) + ‘.jpg‘,frame) #存储为图像

# for u in uing:

aa.append(cX)

bb.append(cY)

cc.append(c)

# plt.plot(c,cX,‘k-‘)

#plt.plot(c,cX,color=‘red‘,linewidth=2.5,linestyle=‘:‘)

# plt.plot(c,cX,‘k^‘)

#plt.plot(c,cY,‘yo:‘)

c = c+1

else:

break

# cv2.imshow(‘frame‘,gray) #显示标记后的图像q

if cv2.waitKey(1) & 0xFF == ord(‘q‘):

break

cap.release()

cv2.destroyAllWindows()

c1=np.var(aa)

c2=np.var(bb)

c1_1=c1/720*2.3*mt.pi/180

c1_2=c2/512*2.3*mt.pi/180

print(c1_1)

print(c1_2)

plt.plot(cc,aa)

plt.show()

plt.plot(cc,bb)

plt.show()

opencv python 识别视频水印_opencv+python实现视频实时质心读取相关推荐

  1. 手机怎么去掉视频水印,伪原创视频 怎么去视频logo批量处理去重消重去水印去logo软件...

    手机怎么去掉视频水印,伪原创视频 怎么去视频logo批量处理去重消重去水印去logo软件 头条号视频重复修改md5批量处理去重消重去水印去logo软件 视频去重方法批量处理去重消重去水印去logo软件 ...

  2. 怎么去视频水印?一键去除视频水印

    网址:怎么去视频水印https://www.shuiyinyun.com/inpaint-video.html 一键去除视频水印步骤如图:

  3. 怎样去除视频水印?快速去除视频水印的方法

    在看到网上有喜欢的视频时我们一般喜欢保存到手机或者电脑中,我们会把部分喜欢的视频发布到朋友圈中以便分享,但是大 多数视频都带有水印,当发布带有水印的视频到朋友圈中岂不是很尴尬,保存时发现带有水印的视频 ...

  4. opencv python 识别视频水印_[python opencv 计算机视觉零基础到实战]二十二、给视频制作浮动的带感水印...

    一.学习目标 了解浮游水印如何实现 了解鬼畜水印效果如何实现 二.了解使用OpenCV制作视频特效 2.1 读取视频 首先我们需要准备一个视频素材,我的路径是'D:\test\02.mp4',使用Vi ...

  5. python车牌字符分割_OpenCV+Python识别车牌和字符分割的实现

    本篇文章主要基于python语言和OpenCV库(cv2)进行车牌区域识别和字符分割,开篇之前针对在python中安装opencv的环境这里不做介绍,可以自行安装配置! 车牌号检测需要大致分为四个部分 ...

  6. python opencv显示图片 窗口调节_opencv python全屏显示、置窗口大小和位置

    opencv python全屏显示.设置窗口大小和位置 文章目录: 一.全屏显示图片或视频 二.设置窗口的大小和位置 1.设置窗口的大小 2.设置窗口的位置 一.全屏显示图片或视频 有时我们需要显示图 ...

  7. python读取视频分辨率_opencv设置采集视频分辨率方式

    如下所示: #include #include using namespace cv; using namespace std; int main( ) { //[1]从摄像头读入视频 VideoCa ...

  8. python腐蚀膨胀代码_OpenCV+python实现膨胀和腐蚀的示例

    1,概念及原理: 膨胀(Dilating) (或) (1)将图像 A 与任意形状的内核 (B),通常为正方形或圆形,进行卷积. (2)内核 B 有一个可定义的 锚点, 通常定义为内核中心点. (3)进 ...

  9. python实现运动模糊图像_OpenCV+Python实现图像运动模糊和高斯模糊

    原标题:OpenCV+Python实现图像运动模糊和高斯模糊 运动模糊:由于相机和物体之间的相对运动造成的模糊,又称为动态模糊 OpenCV+Python实现运动模糊,主要用到的函数是cv2.filt ...

最新文章

  1. 深度学习入门 基于Python的理论与实现
  2. 大数据及Linux安装
  3. 云南昆明:看猪展迎猪年
  4. 列出本机正在监控的端口
  5. DevExpress的XtraReport中的Report Bands介绍和使用心得(帮助文档)
  6. curl访问nagios中Host Status Details For All Host Groups页面的方法
  7. 笔记:git常用操作,git使用,git命令行
  8. 基于springboot的健身管理系统
  9. 相机内参_相机标定(一):机器人手眼标定
  10. java线程同步机制,实现同步锁
  11. matlab鼠标截取图像并显示_matlab图像剪裁命令imcrop()
  12. TCP 的拥塞控制方法 ----AIMD
  13. 【校招VIP】产品设计和思维考察之数值分析
  14. 名词性从句——专升本语法
  15. 学会这5个拍摄技巧,能让你的视频更好看
  16. C语言预处理相关讲解
  17. 简易的共享交通系统管理系统
  18. 解析grib格式数据库eccodes的安装
  19. 由Intel和Microsoft双双落马所想到的
  20. 数据库原理(八)- 关系代数

热门文章

  1. MySQL复合索引中七种常见的索引失效情形
  2. python实现淘宝自动回复_python实现人人自动回复、抢沙发功能
  3. Nature neuroscience:大脑连接在跨哺乳物种中的保留
  4. 树莓派MQTT服务远程测试MQTT.fx
  5. Git手动更新上游代码
  6. 米线店结账程序 装饰着模式_装饰者模式的运用
  7. 《跨界杂谈》华为印象之混搭儿(二)皮草
  8. C和C++的布尔类型
  9. 小米mix2s android,小米MIX 2S首发评测:这款安卓旗舰到底值不值得买?
  10. 无线路由器及Wi-Fi组网