首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在特定矩形上运行光流的cv2

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

Stack Overflow用户
提问于 2017-11-14 11:49:07
回答 1查看 228关注 0票数 0

我使用的是OpenCV的光流模块。我理解文档中的示例,但这些示例需要整个图像,然后在图像上获得光流。

我只想把它传递到图像的某些部分。这样做有可能吗?如果是,我该怎么做?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2017-12-07 14:56:28

是的,这是可能的。cv2.calcOpticalFlowPyrLK()将是您需要的光流函数。在调用该函数之前,您必须创建一个图像蒙版。我做了一个类似的项目,但使用的是C++,不过我可以为您概述步骤:

  • 创建一个与你的图像具有相同宽度和高度的空矩阵
  • 使用你的投资回报中的点,创建一个形状(我是用cv2.fillPoly()做的),并用白色填充形状的内部(你的图像蒙版应该只由黑白颜色组成)
  • 如果你计划使用角点作为特征,那么调用cv2.goodFeaturesToTrack()并传入你作为其参数之一的蒙版。
  • 如果您使用Feature2D模块来检测特征,则可以使用相同的掩码来仅提取该掩码区域中的特征。
  • 通过这一步,你现在应该有了一个仅在形状边界内的特征/点的集合!调用光流函数,然后处理结果。

我希望这能有所帮助。

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

https://stackoverflow.com/questions/47277332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档