我想知道如何拍摄两个不同的灰色图像并创建两者之间差异的掩模。任何帮助将不胜感激。
答案 0 :(得分:4)
假设相机静止且图像非常好,您可以使用逐元素减法找到两个图像之间的差异。使用OpenCV的C ++ API,它看起来像这样(注意:此代码未经测试):
void FindDifference(cv::Mat src1, cv::Mat src2, cv::Mat &dst, int threshold) {
dst = cv::abs(src2 - src1);
cv::threshold(dst, dst, threshold, 255, cv::THRESH_BINARY);
}
您可以调整threshold
的值以减少噪音引起的误报。如果您仍然得到太多误报,则应使用motion estimation和image registration来调整这两个图像。
我不熟悉EmuCV的API,但将上述代码转换为API调用应该相当简单。