我正在从视频/摄像机检测车辆,它可以很好地从视频/摄像机检测车辆,但如果假设6秒视频包含2辆车,每辆车在视频中包含2秒,那么它提取一辆车的35+帧和其他车辆的相同情况,简单地说,它提取视频中包含车辆的所有帧,但我的要求是提取一辆车的唯一一帧,就像如果6秒视频包含2辆车,那么我应该提取包含整个车辆的2帧,而忽略所有其他帧。我已经在上面实现了熵技术,这使得它变得更好,但是仍然得到了太多的相同车辆的帧。我想知道我可以提取包含整个车辆的唯一帧而忽略包含该车辆(相同车辆)的所有其他帧的技术。
发布于 2013-12-24 00:13:33
假设您不仅得到了二进制检测结果(“有一辆车”),而且还得到了某种空间信息(“有一辆车,它的边界框是...")然后,您可以简单地保留显示最多的帧。
像这样的东西
best_frame = None
best_frame_score = 0.0
for frame in video:
has_car, score = detect_car(frame)
if has_car and score > best_frame_score:
best_frame = frame
best_frame_score = score
这假设函数detect_car
返回二进制检测结果和某个分数。例如,分数可以是边界框的大小。
https://stackoverflow.com/questions/20746997
复制相似问题