问题描述
我正在收集项目数据。通过录制主题和环境的视频来完成数据收集。但是,在训练网络时,我不想将其与视频序列中收集的所有图像一起训练。
主要目标是不使用冗余图像来训练网络。以30帧/秒的速度采集的视频序列可以在很短的间隔内包含冗余图像(非常相似的图像)。第(T)帧和第(T + 1)帧可以相似。
解决方法
更新#2:其他资源,
https://github.com/JohannesBuchner/imagehash
https://www.pyimagesearch.com/2017/11/27/image-hashing-opencv-python/
更新#1::您可以使用此存储库来计算给定图像之间的相似度。 https://github.com/quickgrid/image-similarity **
如果带有某些对象(例如,车辆,设备)的框架很重要,请使用pretrained object detectors
(如果有)来提取重要的框架。
接下来,使用similarity method
删除附近帧中的类似图像。直到超出选择的threshold
为止,继续移除附近的N
帧。
此链接应有助于为您的案例找到正确的方法,
下面的这个存储库应该可以用几行代码来帮助实现这个想法。它使用CNN提取特征,然后如此处所述计算那里的余弦距离。