视频图像差异的边界框

时间:2018-11-01 14:54:30

标签: algorithm opencv image-processing bounding-box

我正在尝试在视频帧中找到对象的边界框。我假设当前的边界框检测在原始帧中找到对象,而我想在“帧差异”中提取边界框。在下图中,我从帧中减去了背景,结果是正确的图像。

enter image description here

由于帧差中的大多数像素将为零,因此我假设对此进行边界框检测应该在计算上便宜。

1 个答案:

答案 0 :(得分:1)

您没有使用特定语言进行标记,因此我将给出一个伪代码答案,其中包含指向要使用的OpenCV函数的指针:

  1. 如果要确保彼此靠近的不相交区域被填充到同一框,请使用MORPH_CLOSE操作并使用小内核来填充间隙。

  2. 连接的组件分析:morphologyEx。这样会生成一个整数图像,其中每个“对象”的所有像素都用相同的值(标签)绘制。

  3. 找到每个标签的x和y坐标的最小值和最大值。您可以使用connectedComponents将此步骤与OpenCV中的上一步合并,并获得{{1}的CC_STAT_LEFTCC_STAT_TOPCC_STAT_WIDTHCC_STAT_HEIGHT列}}输出。

是的,这很便宜。