博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python opencv流光
阅读量:3900 次
发布时间:2019-05-23

本文共 1207 字,大约阅读时间需要 4 分钟。

import cv2import numpy as npcapture = cv2.VideoCapture('car.mp4')feature_params = dict( maxCorners = 100,     qualityLevel = 0.3,     minDistance = 7,    blockSize = 7 )# lucas kanade光流参数lk_params = dict( winSize = (15,15),    maxLevel = 2,    criteria = (cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10,    0.03))# 创建一些随机的颜色color = np.random.randint(0,255,(100,3))ret, old_frame = capture.read()old_gray = cv2.cvtColor(old_frame,cv2.COLOR_BGR2GRAY)p0 = cv2.goodFeaturesToTrack(old_gray,mask= None, **feature_params)mask = np.zeros_like(old_frame)while 1:    ret,frame = capture.read()    frame_gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)    p1, st, err = cv2.calcOpticalFlowPyrLK(old_gray, frame_gray, p0, None,**lk_params)    good_new = p1[st==1]    good_old = p0[st==1]    for i, (new, old) in enumerate(zip(good_new, good_old)):        a, b = new.ravel()        c, d = old.ravel()        mask = cv2.line(mask, (a, b), (c, d), color[i].tolist(), 2)        frame = cv2.circle(frame, (a, b), 5, color[i].tolist(), -1)    img = cv2.add(frame, mask)    cv2.imshow('frame', img)    k = cv2.waitKey(30) & 0xff    if k == 27:        break    old_gray = frame_gray.copy()    p0 = good_new.reshape(-1, 1, 2)

在这里插入图片描述

转载地址:http://thben.baihongyu.com/

你可能感兴趣的文章
Java基础面试题(一) (2020持续更新)
查看>>
JAVA人事管理系统
查看>>
Dubbo面试题(关注小R持续更新)
查看>>
JAVA仿微博系统(JAVA毕业设计含源码和运行教程)
查看>>
24BITBMP位图的文件结构及创建
查看>>
如何在自定义控件中获得width和height?
查看>>
Android UI开发专题之界面设计【基础API】
查看>>
ejarmaker: jar 、java类的加密工具
查看>>
配置NFS实现Linux服务器之间的文件共享
查看>>
PostgreSQL连接池pgbouncer的使用
查看>>
Kryo序列化进阶学习: 加密数据
查看>>
swift 3.0 数组赋值
查看>>
用C#通过888-TT打印中文标签
查看>>
sendmail 出现 My unqualified host name的解决办法
查看>>
彻底解决lazarus安装组件后烦人的编译时单元找不到的问题!
查看>>
Delphi的参数修饰const/var/output 与C++的对应关系
查看>>
C++ free与delete区别
查看>>
VC的字符串转换atlconv的使用
查看>>
递归算法的时间复杂度
查看>>
数据结构之图(存储结构、遍历)
查看>>