Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >CV2光流函数不是确定性的

CV2光流函数不是确定性的
EN

Stack Overflow用户
提问于 2020-08-18 04:13:28
回答 1查看 152关注 0票数 2

我试图通过计算两个图像(在Python3.7和cv2 V4.0中)之间的光流大小来获得运动量。但是通过相同的图像,我看到最终的值不是确定性的。有时打印inf,有时打印7.372749678324908e-05

有什么问题吗?为什么它不是确定性的?!

代码语言:javascript
运行
AI代码解释
复制
def getOpticalMag(prev_image, curr_image):

    prev_image_gray = cv2.cvtColor(prev_image, cv2.COLOR_BGR2GRAY)
    curr_image_gray = cv2.cvtColor(curr_image, cv2.COLOR_BGR2GRAY)

    flow = cv2.calcOpticalFlowFarneback(prev_image_gray, curr_image_gray, flow=None,
                                        pyr_scale=0.5, levels=1, winsize=15,
                                        iterations=2,
                                        poly_n=5, poly_sigma=1.1, flags=0)

    mag, ang = cv2.cartToPolar(flow[...,0], flow[...,1])

    return np.mean(mag)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-12 12:54:49

我发现这是OpenCV的底层IPP (IPPICV)部分的一个错误,为了让它更快地工作,它是随Python版本一起提供的,所以把它发布出来,它已经是https://github.com/opencv/opencv/issues/19506的里程碑了。

您可以使用numpy编写您自己的从笛卡尔坐标到极坐标的转换器,如此特性请求https://github.com/numpy/numpy/issues/5228#issue-46746558中所示(如果您使用Python版的OpenCV,您已经有了NumPy )

代码语言:javascript
运行
AI代码解释
复制
def cartToPol(x, y):
    ang = numpy.arctan2(y, x)
    mag = numpy.hypot(x, y)
    return mag, ang

另一个解决方案是不使用IPP编译OpenCV,或者使用OpenCV的C++版本:在我的Ubuntu20.04中,C++版本不存在这个错误,因为我没有安装IPP。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63461786

复制
相关文章
LK光流法_剪辑光流法
Lucas–Kanade光流算法是一种两帧差分的光流估计算法。它由Bruce D. Lucas 和 Takeo Kanade提出 [1]。
全栈程序员站长
2022/09/19
4630
LK光流法_剪辑光流法
光流法详解之二(HS光流)
参考博文:https://blog.csdn.net/hhyh612/article/details/79216021
一棹烟波
2019/05/25
4.2K0
光流法详解之一(LK光流)
Lucas–Kanade光流算法是一种两帧差分的光流估计算法。它由Bruce D. Lucas 和 Takeo Kanade提出 [1]。
一棹烟波
2019/05/25
5.3K0
视频光流
import numpy as np import cv2 lk_params=dict( winSize=(15,15), maxLevel=3, criteria=(cv2.TERM_CRITERIA_EPS|cv2.TERM_CRITERIA_COUNT,10,0.03)) feature_params=dict( maxCorners=800, qualityLevel=0.3,
裴来凡
2022/05/29
7480
视频光流
cv2 imread()函数[通俗易懂]
这两天学习OpenCV-Python时,也就是cv2库,读取图像时不时出现和预料之外的结果。于是作者从源头来考究一下cv2.imread(filename, flags)
全栈程序员站长
2022/07/29
4.1K0
cv2 imread()函数[通俗易懂]
光流法的理解
大家好,又见面了,我是你们的朋友全栈君。光流法是比较经典的运动估计方法,本文不仅叙述简单明了,而且附代码,故收藏.
全栈程序员站长
2022/09/15
3930
OpenCV之cv2函数
1、 cv2.imread():读入图片,共两个参数,第一个参数为要读入的图片文件名,第二个参数为如何读取图片,包括
周小董
2019/03/25
7.4K0
OpenCV之cv2函数
光流法测距
(1)亮度恒定,就是同一点随着时间的变化,其亮度不会发生改变。这是基本光流法的假定(所有光流法变种都必须满足),用于得到光流法基本方程;
全栈程序员站长
2022/09/15
6180
opencv光流预测和remap重映射函数使用
optical flow (光流) 表示的是相邻两帧图像中每个像素的运动速度和运动方向。
languageX
2021/06/05
5.8K2
opencv光流预测和remap重映射函数使用
OpenCV深度光流跟踪
----
用户9831583
2022/06/16
2800
OpenCV深度光流跟踪
CNN光流计算2
FlowNet 2.0: Evolution of Optical Flow Estimation with Deep Networks CVPR2017 Code: https://github.com/lmb-freiburg/flownet2
用户1148525
2019/05/26
1.1K0
DeepFlow高效的光流匹配算法(下)
本周主要介绍一篇基于传统光流法而改进的实现快速的稠密光流算法。该算法已经集成到OpenCV中,算法介绍网址:http://lear.inrialpes.fr/src/deepmatching/
点云PCL博主
2019/09/24
5.9K0
DeepFlow高效的光流匹配算法(下)
光流法学习「建议收藏」
在相邻的两帧图像中,点(x,y)发生了位移(u,v),那么移动前后两点的亮度应该是相等的。如下:
全栈程序员站长
2022/09/06
5090
光流法学习「建议收藏」
DeepFlow高效的光流匹配算法(上)
本周主要介绍一篇基于传统光流法而改进的实现快速的稠密光流算法。该算法已经集成到OpenCV中,算法介绍网址:http://lear.inrialpes.fr/src/deepmatching/
点云PCL博主
2019/09/09
3.7K0
DeepFlow高效的光流匹配算法(上)
详解LK光流法(含金字塔多层光流),反向光流法(附代码)「建议收藏」
LK光流法可用来跟踪特征点的位置。 比如在img1中的特征点,由于相机或物体的运动,在img2中来到了不同的位置。后面会称img1为Template(T),img2为I。
全栈程序员站长
2022/09/15
2.3K0
CV学习笔记(九):光流法的实现
在这一篇文章中,我们使用OpenCV中的calcOpticalFlowPyrLK()函数来实现,是基于金字塔LK光流算法,计算某些点集的稀疏光流。
云时之间
2020/03/19
8920
CV学习笔记(九):光流法的实现
在这一篇文章中,我们使用OpenCV中的calcOpticalFlowPyrLK()函数来实现,是基于金字塔LK光流算法,计算某些点集的稀疏光流。
云时之间
2020/02/26
1K0
跟踪算法(一)光流法跟踪
COPY FROM:http://blog.csdn.net/crzy_sparrow/article/details/7407604
全栈程序员站长
2022/09/15
1.2K0
Opencv学习笔记(九)光流法
原创文章,转贴请注明:http://blog.csdn.net/crzy_sparrow/article/details/7407604
全栈程序员站长
2022/09/15
4130
光流法原理概述「建议收藏」
光流的概念是Gibson在1950年首先提出来的。它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。一般而言,光流是由于场景中前景目标本身的移动、相机的运动,或者两者的共同运动所产生的。
全栈程序员站长
2022/09/15
3K0

相似问题

在特定矩形上运行光流的cv2

11

用cv2.用cv2求光流为ndarray

13

即使cv2是导入的,它也找不到一个光流

18

蟒蛇的光流

13

光流评价

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档