dyn*_*mic 8 c++ opencv tracking object-detection
基本上我想检测一个对象,而不是在视频中逐帧跟踪它.
我可以在第一帧上检测到它,例如ORB或SIFT.但对于下一帧(或说下一个XX帧),我想避免再次计算所有关键点(ORB或SIFT)来再次检测它.
考虑到我想在视频中实时跟踪它,我该怎么办?
常见的选择是使用补丁程序.这意味着您只需搜索前一帧关键点周围8个像素区域中的关键点.您可以执行cv::matchTemplate()关键点周围的区域,而不是使用SIFT.
执行金字塔搜索有助于提高帧速率.如果找不到比例加倍的关键点,则首先以较低的比例搜索.
如果补丁程序失败,因为图像移动太快,您只需再次应用SIFT重新初始化系统.我会使用FAST而不是SIFT.您可以使用SIFT作为标记,然后使用FAST实时检测关键点,生成SIFT描述符.
检测和跟踪视频中的对象是一个非常大的主题,并且高度依赖于您的应用程序.没有灵丹妙药!如果您实现了检测部分,您可以尝试通过手段跟踪颜色(可能是HSV颜色空间)可能性,如果您需要跟踪的对象是彩色的..,或尝试模板匹配,或者..您需要更具体的需要.
| 归档时间: |
|
| 查看次数: |
1738 次 |
| 最近记录: |