专栏首页微卡智享C++ OpenCV视频操作之稠密光流对象跟踪

C++ OpenCV视频操作之稠密光流对象跟踪

前言

我们在学习完稀疏光流跟踪完后,我们再学习一下稠密光流对象跟踪,稠密光流算法(即图像上所有像素点的光流都计算出来),由于要计算图像上所有点的光流,故计算耗时,速度慢。一般来说我们在平时应用上可能会用到的比较少,在这里我们就简单讲解一下。

视频效果

https://v.qq.com/x/page/v1359hi8z71.html

<br />

看过稀疏光流的视频的人,再对比上面的视频可以看出来明显稠密光流跟踪的速度要慢不少,视频的播放都看出卡顿的感觉。

函数API

void cv::calcOpticalFlowFarneback( InputArray _prev0, InputArray _next0, OutputArray _flow0, double pyr_scale, int levels, int winsize, int iterations, int poly_n, double poly_sigma, int flags ) 参数说明如下:

InputArray :输入前一帧图像

InputArray :输入后一帧图像

OutputArray :输出的光流

double:金字塔上下两层之间的尺度关系

int :金字塔层数

int:均值窗口大小,越大越能denoise并且能够检测快速移动目标,但会引起模糊运动区域

int:迭代次数

int:像素领域大小,一般为5,7等

double:高斯标注差,一般为1-1.5

int:计算方法。主要包括OPTFLOW_USE_INITIAL_FLOW和OPTFLOW_FARNEBACK_GAUSSIAN

代码实现

我们再新建一个项目名为opencv--video4,按照配置属性(VS2017配置OpenCV通用属性),然后在源文件写入#include和main方法

先在外层读取第一帧图像

读取图像并时行稠密光流计算,下图红框内就是用到了我们的API,明显可以看出来这里比稀疏光流要简单些,因为不用再先获取特征点进行对比了,下面的蓝色框就是我们绘制结果的函数

代码结尾

绘制结果的函数

这样整个就完成了,文章开头的视频就是我们运行起来的效果,下面是视频中的截图

-END-

本文分享自微信公众号 - 微卡智享(VaccaeShare)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-03-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • API测试的基本指南

    API测试,或应用程序编程接口测试,是一种软件测试,涉及验证和验证API和Web服务。它也是集成测试的一部分,它决定开发的api是否满足测试人员预先建立的期望,...

    软测小生
  • restapi(0)- 平台数据维护,写在前面

    在云计算的推动下,软件系统发展趋于平台化。云平台系统一般都是分布式的集群系统,采用大数据技术。在这方面akka提供了比较完整的开发技术支持。我在上一个系列...

    用户1150956
  • Java常用的几个Json库,性能强势对比!

    https://xncoding.com/2018/01/09/java/jsons.html

    Java技术栈
  • 如何写最高端的代码?Facebook教你怎样用机器学习做最美的代码搜索工具

    当工程师能够轻松获取代码示例,指导其完成特定编程任务时,他们的工作效率会显著提高。例如,对于「如何以编程方式关闭或隐藏安卓软键盘?」这类问题,工程师可以从 St...

    机器之心
  • Java 11 正式发布,这 8 个逆天新特性教你写出更牛逼的代码

    美国时间 09 月 25 日,Oralce 正式发布了 Java 11,这是据 Java 8 以后支持的首个长期版本。

    Java技术栈
  • Java效率工具之Lombok

    还在编写无聊枯燥又难以维护的POJO吗?洁癖者的春天在哪里?请看Lombok!在过往的Java项目中,充斥着太多不友好的代码:POJO的getter/sette...

    乱敲代码
  • PaddleHub 1.0正式发布: 一键模型加载,十行代码完成迁移学习

    飞桨(PaddlePaddle)核心框架Paddle Fluid v1.5已经发布,而作为其关键工具,用来迁移学习的PaddleHub也进行了全面更新,正式发布...

    代码医生工作室
  • 开发 | PaddleHub 1.0正式发布: 一键模型加载,十行代码完成迁移学习

    全新的PaddleHub模型和任务更加丰富,为用户提供了覆盖文本、图像和视频三大领域八大任务的40+预训练模型,同时还在飞桨官网上开辟了PaddleHub的网页...

    AI科技评论
  • PaddleHub :十行代码完成迁移学习

    飞桨(PaddlePaddle)核心框架Paddle Fluid v1.5已经发布,而作为其关键工具,用来迁移学习的PaddleHub也进行了全面更新,正式发布...

    昱良
  • 微服务Consul系列之服务部署、搭建、使用

    以上只是列举的笔者曾经遇到的几点问题,当然问题还不止于这些,下面介绍的Consul可以有效解决这些问题,当然还有一些其它的优点,让我们一起期待下文的Consul...

    五月君

扫码关注云+社区

领取腾讯云代金券