Java - 计算图像两帧之间的位移

时间:2014-06-25 19:00:39

标签: java matlab opencv image-processing

我的车上安装了一个网络摄像头,捕捉外部环境。因此,当车辆继续向前移动时,框架中的物体从左向右移动。我想检查网络摄像头捕获的两个连续帧是否相同。如果它们不相同,我想知道第二帧从第一帧移位了多少?请建议我如何计算这个位移?我正在使用Java。建议我一个合适的解决方案。

谢谢!

1 个答案:

答案 0 :(得分:1)

简单的部分是测试整个图像是否相同;只需检查所有像素,如果匹配,则一切都很好。

问题是两帧不太可能匹配,因为网络摄像头往往会产生很多像素噪音。这意味着您需要更复杂的算法来匹配忽略噪声的帧。

如果背景不仅仅是一个简单易识别的模式,那么确定框架移动的程度就更难了。话虽如此,有办法做到这一点。

像素分析的一个常见策略是从第一张图像中采样一小组像素,比如几个4x4的正方形。然后,您可以在第二个图像中搜索与之前相似的4x4组。如果有足够的像素与组匹配,那么您可以合理地确定您已找到第二张图像的偏移量。

我希望这有帮助!