问题
是否有用于插入单个像素的内置函数?
给定正常图像为Mat
和Point
,例如传感器或异常值的异常,是它们修复这个Point
的一些功能吗?
此外,如果我连接了多个Point
(让我们说一个面积小于10x10的blob)是否有可能修复它们?
尝试但不是真正的解决方案
似乎插值是在几何变换中实现的,包括调整图像大小和用borderInterpolate
外推图像外的像素,但我没有发现单个像素或小像素簇的可能性。
建议here的medianBlur
解决方案似乎不合适,因为它会更改整个图像。
替代
如果没有内置函数,我的想法是查看所有8个连接的周围像素,这些像素不是blob的一部分,并计算平均值或加权平均值。如果迭代地执行此操作,则应填充所有丢失或错误的像素。但是这种方法将取决于应用的顺序来校正每个像素。还有其他建议吗?
更新
这是一张图片来说明问题。将原始图像留下标记要修复的像素的轮廓。右侧显示固定像素。我希望找到一些复杂的算法来修复像素。
答案 0 :(得分:0)
OpenCV的内置函数inpaint
执行所选像素的所需插值。只需创建一个包含要修复的所有像素的蒙版。