用于插值单个像素和小斑点的内置函数
Build-in function for interpolating single pixels and small blobs
问题
是否有用于对单个像素进行插值的内置函数?
给定一个正常图像 Mat
和一个 Point
,例如传感器异常或异常值,它们是否具有修复此 Point
的功能?
此外,如果我有多个 Point
连接(假设一个面积小于 10x10 的 blob)是否也有可能修复它们?
尝试但不是真正的解决方案
似乎在几何变换中实现了插值,包括调整图像大小和使用 borderInterpolate
外推图像外的像素,但我还没有发现单个像素或小像素簇的可能性。
建议 的 medianBlur
解决方案似乎不合适,因为它改变了整个图像。
备选
如果没有内置函数,我的想法是查看不属于斑点的所有 8 个相连的周围像素,并计算平均值或加权平均值。如果反复执行此操作,则应填充所有丢失或错误的像素。但是这种方法将依赖于校正每个像素的应用顺序。还有其他建议吗?
更新
这是一张图片来说明问题。在原始图像上留下标记要修复的像素的轮廓。右侧显示固定像素。我希望找到一些复杂的算法来修复像素。
OpenCV 的 build-in 函数 inpaint
对所选像素进行所需的插值。只需创建一个包含要修复的所有像素的蒙版即可。
在此处查看文档:OpenCV 3.2. Description: inpaint and Function: inpaint
问题
是否有用于对单个像素进行插值的内置函数?
给定一个正常图像 Mat
和一个 Point
,例如传感器异常或异常值,它们是否具有修复此 Point
的功能?
此外,如果我有多个 Point
连接(假设一个面积小于 10x10 的 blob)是否也有可能修复它们?
尝试但不是真正的解决方案
似乎在几何变换中实现了插值,包括调整图像大小和使用 borderInterpolate
外推图像外的像素,但我还没有发现单个像素或小像素簇的可能性。
建议 medianBlur
解决方案似乎不合适,因为它改变了整个图像。
备选
如果没有内置函数,我的想法是查看不属于斑点的所有 8 个相连的周围像素,并计算平均值或加权平均值。如果反复执行此操作,则应填充所有丢失或错误的像素。但是这种方法将依赖于校正每个像素的应用顺序。还有其他建议吗?
更新
这是一张图片来说明问题。在原始图像上留下标记要修复的像素的轮廓。右侧显示固定像素。我希望找到一些复杂的算法来修复像素。
OpenCV 的 build-in 函数 inpaint
对所选像素进行所需的插值。只需创建一个包含要修复的所有像素的蒙版即可。
在此处查看文档:OpenCV 3.2. Description: inpaint and Function: inpaint