代码之家  ›  专栏  ›  技术社区  ›  Phann

用于插值单个像素和小斑点的内置函数

  •  1
  • Phann  · 技术社区  · 8 年前

    问题

    是否有内建函数用于插值单个像素? Mat 和a Point 例如,传感器的异常或异常值,是它们修复此问题的某种功能 指向 ? 此外,如果我有多个 指向 已连接(假设一个面积小于10x10的blob)是否也有可能修复它们?

    尝试但不是真正的解决方案

    borderInterpolate ,但我还没有发现单个像素或小像素簇的可能性。

    解决方案 medianBlur here 看起来不太合适,因为它改变了整个形象。

    可供替代的

    如果没有内置函数,我的想法是查看不属于blob的所有8个相连的周围像素,然后计算平均值或加权平均值。如果重复执行此操作,则应填充所有缺失或错误的像素。但这种方法取决于校正每个像素的应用顺序。还有其他建议吗?

    使现代化

    这里有一张图片来说明这个问题。在原始图像上留下轮廓,标记要修复的像素。右侧显示固定像素。我希望找到一些复杂的算法来修复像素。

    Left: Original image with contour with pixels to fix. Right: pixels fixed

    1 回复  |  直到 7 年前
        1
  •  1
  •   Phann    8 年前

    内置函数 inpaint OpenCV对所选像素进行所需的插值。只需创建一个包含所有要修复像素的遮罩。

    请参阅此处的文档: OpenCV 3.2. Description: inpaint Function: inpaint