如何知道被检测到的物体是否在运动?

时间:2018-12-05 07:44:24

标签: python opencv yolo

如果我的算法检测到对象的类型,我如何知道该对象是否在移动?假设有人拿着雨伞。怎么知道伞在移动?

我正在一个项目中,我想知道该特定对象是否属于进入商店内部的人员。我在考虑边界框(bb)方法,如果人的bb与对象的bb重叠。但是,当一个人有多个对象时,就会出现问题。 这是我编写的代码

 iou_value = oneObject.intersection_over_union(image,humanRegion_bbs,belongings_bbs)
#iou --intersection over union value

                    if iou_value is not None and iou_value > th_iou: 
                        logger.info("IOU value %f"%iou_value)              
                        logger.info("CURRENT FRAME INDEX  %f "%currentFrameIndex)
                        logger.info("COUNT AT THE MOMENT %f"%count) 
                        if count >2:
                            logger.info("INSIDE THE COUNT LOOP") 
                            logger.info("COUNT inside the if loop %f"%count)
                            oneObject.setBelongings(belongingsList) 
                        count = 0 
                        logger.info("COUNT outside the loop %f"%count)                          
                    else :
                        logger.info("INSIDE THE ELSE LOOP:")
                        b1 = belongingsList.clear()
                        logger.info("value of b1 %s"%b1)
                        oneObject.setBelongings(b1)

1 个答案:

答案 0 :(得分:1)

我真的不明白你的想法。但是用于跟踪对象是否移动。上一次在我的项目中,我首先使用级联OpenCV检测对象,然后应用卡尔曼滤波器进行跟踪。因此,您可以跟踪检测到的对象。关于对象是否属于人。我认为重叠是个好主意。我认为您可以检查此重叠是否足够长,这应该属于该人,就像我了解您的问题一样。