【问题标题】:Implement dilation filter for SVG Morphology filter为 SVG Morphology 过滤器实现膨胀过滤器
【发布时间】:2017-11-16 13:12:29
【问题描述】:

我正在尝试为 SVG Morphology 过滤器实现膨胀过滤器。

文档说膨胀(或腐蚀)内核是一个矩形,宽度为 2*x 半径,高度为 2*y 半径。在膨胀中,输出像素是输入图像内核矩形中相应 R、G、B、A 值的单个分量最大值。

https://www.w3.org/TR/SVG/filters.html#feMorphologyElement

在这种情况下,我真的不知道应该是什么内核。可以指点一下吗?

真的等同于为输入图像中的每个像素找到下方区域的局部最大值吗?

  int startX = std::max( pixelCordX - radiusX,  0 );
  int endX = std::min( pixelCordX + radiusX,  width - 1 );
  int = std::max( pixelCordY - radiusY,  0 );
  int endY = std::min( pixelCordY + radiusY,  height - 1 );

  outputPixel( pixelCordX , pixelCordY  ) = ComputeMaxMin( image[][], startX, endX, startY, endY );

【问题讨论】:

    标签: image-processing svg svg-filters


    【解决方案1】:

    循环遍历矩形中的所有像素,跟踪 R、G、B 和 A 中每一个的最大值。将每个分量的最大值组合成一个颜色值,并使其中心像素颜色。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-10
      • 2014-11-22
      • 2015-09-17
      • 1970-01-01
      • 2014-05-06
      • 2017-08-02
      相关资源
      最近更新 更多