0

在此处输入图像描述我熟悉openCV,一个强大的开源库,并使用它来处理农场工业项目,老鼠将被注射药物,它被保持在所谓的舞台上,被圆柱体包围,并涂有连续的白色条带和黑色。所以我需要找出鼠标将旋转它的头部多少次来表示圆柱体的旋转。(这是因为它有药物的窍门)。我怎样才能做到这一点任何opencv专家都可以帮助我。

我在下面添加了一张图片

4

1 回答 1

1

看起来很有趣,这些是我的初步建议......

  1. 取决于相机的分辨率以及您的对象(鼠标)与相机的距离...因为鼠标是一个小对象,因此鼠标的图像需要覆盖图像中的大量像素以区分头部运动。 .

  2. 我不认为鼠标会粘在一个位置......它会在笼子里继续移动......所以你需要跟踪鼠标......

  3. 在鼠标的每个位置,您都需要找到头部相对于身体的位置......您可以使用模板匹配来做到这一点(创建鼠标头部的模板)

    因此,需要更多信息和一些示例图片才能清楚地了解场景

上传图片后编辑

  1. 由于相机是固定的,因此创建了一个感兴趣的圆形区域......所以只有这个圆圈内的运动与您有关,而不是圆圈外的移动圆柱体 像这样

  2. 从前一帧中减去当前帧(帧微分)并存储图像中差异的绝对值。

    absdiff(frameNow,framePrevs,diffofFrames);

    根据需要阈值 diffofFrames 以获得大鼠的当前位置...

  3. 现在,如果图像清楚地显示了它的鼻子,那么任务就更容易了……因为鼻子有尖的形状,它可以通过一些模板匹配来检测……但是从图像中你很难辨认出鼻子与黑色背景...但是我只能建议您以下过程...此处显示绿色圆圈表示鼻尖...我要做的就是使头部朝向身体方向...永远结果你需要有好的图像......

于 2013-01-10T05:24:31.317 回答