光流估计(对视频处理+python实现+原理+实验报告)

资源: 光流估计(对视频处理+python实现+原理+实验报告)

实现效果:

光流估计(对视频处理+python实现+原理+实验报告)_第1张图片

相关原理:

光流是空间运动物体在观测成像平面上的像素运动的“瞬时速度”,根据各个像素点的速度矢量特征,可以对图像进行动态分析,例如目标跟踪。
亮度恒定:同一点随苕时间的变化,其亮度不会发生改变。
小运动:随巷时间的变化不会引起位置的剧烈变化,只有小运动情况下才能用前后絞间单位位罝变化弓I起的灰度变化去近似灰度对位置的偏导数。
空间一致:一个场景上邻近的点投影到图像上也是邻近点,且邻近点速度一致。因为光流法基本方程约束只有一而要求x, y方向的速度,有两个未知变量。所以需要连立n多个方程求解。
光流估计(对视频处理+python实现+原理+实验报告)_第2张图片
光流估计(对视频处理+python实现+原理+实验报告)_第3张图片
光流估计(对视频处理+python实现+原理+实验报告)_第4张图片

代码实现步骤:

1. 导入库
import numpy as np
import cv2
2. 读取视频
cap = cv2.VideoCapture('test.avi')
3. 角点检测所需参数
feature_params = dict( maxCorners = 100,
                       qualityLevel = 0.3,
                       minDistance = 7)
4. lucas kanade参数
lk_params = dict( winSize  = (15,15),
                  maxLevel = 2)
5. 随机颜色条
color = np.random.randint(0,255,(100,3))
6. 拿到第一帧图像
7. 创建一个mask
8. 构建循环对视频处理
9. 需要传入前一帧和当前图像以及前一帧检测到的角点
10. 绘制轨迹
11. 更新

相关代码及实验报告:光流估计(对视频处理+python实现+原理+实验报告)

你可能感兴趣的:(计算机视觉,python,opencv,计算机视觉)