代码之家  ›  专栏  ›  技术社区  ›  Tibor Udvari

OpenCV模糊创建线团状区域

  •  0
  • Tibor Udvari  · 技术社区  · 7 年前

    我正在使用 OpenCV 使用非常高的内核(50或更高),以获得非常夸张的模糊效果。

    这是在非常高的内核大小下模糊所固有的吗? 有什么技巧可以消除这种影响?

    OpenFrameworks ofxCV 插件。我代码的相关部分只是

     blur(camScaled, 51);
    

    ofxCV 本质上是一座桥,并映射回这座桥 OpenCV 最后打电话。

    CV_EXPORTS_W void blur( InputArray src, OutputArray dst,
                        Size ksize, Point anchor=Point(-1,-1),
                        int borderType=BORDER_DEFAULT );
    

    blured image

    1 回复  |  直到 7 年前
        1
  •  0
  •   Moia    7 年前

    这种效果很正常,因为模糊意味着通过内核平均像素值。

    您应该尝试使用边缘保持滤波器,例如双边滤波器。 如果你仍然想使用“经典”模糊,你可以尝试中值模糊而不是平均模糊,这至少会给你一个更衰减的结果。