【问题标题】:2D Image Convolution - Central Difference on X-gradient2D 图像卷积 - X 梯度上的中心差异
【发布时间】:2014-11-02 00:19:07
【问题描述】:

我正在尝试应用内核过滤器来计算中心差 x 梯度。一种直接的方法似乎是应用以下内核过滤器:

一个 = [ 0 0 0 -1 0 1 0 0 0 ]

但是由于它的值总和为零,我该如何对其进行归一化呢?乘以系数0.5 是否合法?如果是这样,有人可以解释原因吗?

另外,我依稀记得可能需要应用类似的东西

乙 = [ 0 1 0 0 2 0 0 1 0 ]

在应用A 之前,即A * (B * f) 其中f 是源图像会比A * f 更好,有人可以帮助我了解B 的作用以及为什么它更好?

【问题讨论】:

    标签: image-processing graphics computer-vision


    【解决方案1】:

    要对图像内核进行归一化,请除以元素的绝对值之和。

    所以对于你的第一个内核,你有非零元素 [-1,1],所以 |-1|+|1| = 1+1=2。所以乘以 1/2=0.5 来归一化。对于边缘检测,您不一定要标准化。归一化图像内核通常不会避免扭曲像素的大小。当您尝试检测边缘时,您通常希望它强调边缘。

    内核 B 做了两件事,首先它会模糊图像(所有相同的有符号非零元素),其次它只在 y 方向上运行。在你的 A 内核之前应用它的想法是它会在 y 方向上进行(排序)非边缘检测。想法是抑制 y 方向上的边缘检测 x 方向上的边缘。

    不记得曾经使用过这个,但它在一定程度上是有意义的。

    【讨论】:

      【解决方案2】:

      我认为Sobel and Scharr operators 及其解释将向您阐明这个主题。如果此链接将被删除,只需在谷歌搜索“Sobel operator” - 它在互联网上随处可见和描述。简而言之:Sobel dx 算子是 oy 方向的模糊和简单的中心 ox 差的组合。执行模糊以减少与纯中心差异算子相关的伪影。 Scharr 算子针对旋转对称性进行了更好的优化,并且“通过优化最小化傅里叶域中的加权均方角误差得到的结果”它的理论有点复杂,所以你最好访问 wiki 或阅读 Scharr paper

      【讨论】:

      • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
      • 这是维基链接。有人知道 wiki 链接失效的例子吗?无论如何,如果 wiki 突然消失,链接名称“Sobel operator”是一个很好的 google 线索。
      • 评论是质量非常低的帖子审查队列中的一个固定选项,用于仅链接的答案(不是垃圾邮件)。关于 SO 的答案应该是独立的,而不仅仅是依赖于链接的材料。 meta.stackexchange.com/questions/8231/…
      猜你喜欢
      • 2020-08-12
      • 1970-01-01
      • 2020-01-21
      • 1970-01-01
      • 1970-01-01
      • 2018-09-23
      • 1970-01-01
      • 2020-05-26
      • 1970-01-01
      相关资源
      最近更新 更多