如何使用OpenCV在视频上查找对象
How to find object on video using OpenCV
要跟踪视频帧上的对象,首先我从视频中提取图像帧并将这些图像保存到文件夹中。然后我应该处理这些图像以找到一个对象。实际上我不知道这是否是一件实际的事情,因为所有的算法都做了一个步骤。这是对的吗?
好吧,您的方法将占用磁盘上的大量空间,具体取决于视频的大小和帧的大小,而且您将花费大量时间从磁盘读取帧。
您是否尝试过执行实时视频处理?如果你的算法不是太慢,有一些帖子显示了你需要做的事情:
- 这篇文章演示了如何使用OpenCV的C接口执行一个函数,将网络摄像头捕获的帧(即时)转换为灰度并显示在屏幕上;
- 这篇文章展示了一种使用 C++ 界面检测图像中正方形的简单方法;
- 这篇文章与上面的帖子略有不同,并展示了如何检测纸张;
- 此线程显示了执行高级方形检测的几种不同方法。
我相信您有能力将代码从 C 接口转换为 C++ 接口。
如果您使用的是OpenCV,则存储视频帧是没有意义的,因为它具有非常方便的方法来实时捕获相机/存储的视频中的帧。
在这篇文章中,您有一个从视频中捕获帧的示例代码。
然后,如果要检测这些帧上的对象,则需要使用检测算法处理每个帧。OpenCV带来了一些与该主题相关的示例代码。例如,您可以尝试使用 SIFT 算法来检测图片。
相关文章:
- 如何在 c++98 中通过特定字段在 QList 中查找对象?
- 按类型与字符串查找对象
- 查找对象属性是否位于对象向量C++中
- 查找对象向量中属性具有相同值的对象
- 在对象向量中查找对象
- C++ 在向量中查找对象并在其上调用成员函数
- C++ 在 Vector 中查找对象成员值
- 在 std 列表中查找对象并将其添加到另一个列表
- 如何在std::vector中查找对象
- OpenCV 使用具有不对应点的求解查找对象的位置
- 在向量C++中查找对象的指针
- 在 std::set 上按名称查找对象
- 在 std::set 中查找对象时出错
- 如何使用OpenCV在视频上查找对象
- 如何根据对象成员值从列表中查找对象
- 在c++中查找对象的未初始化属性
- Qt:在列表中查找对象的属性
- 在c++中,如何通过给出对象的成员来查找对象向量中的某些项
- 如何在std::vector中查找对象
- 在矢量中查找对象,具有多个要求