图像边缘和渐变之间的关系是什么?

Gar*_*auh 4 image-processing edge-detection

是否有人可以帮我解释"边缘点可能位于梯度模块的最大值,边缘轮廓的方向与梯度的方向正交."

Ret*_*unk 16

保罗R给了你一个答案,所以我只是添加一些图片来帮助说明问题.

在图像处理中,当我们提到"渐变"时,我们通常指的是一系列像素的亮度变化.您可以使用GIMP或Photoshop等软件创建渐变图像.

这是从黑色(左)到白色(右)的线性渐变的示例:

线性梯度

梯度是"线性的",意味着强度的变化与像素之间的距离成正比.这个特殊的渐变是平滑的,我们不会说这个图像中有一个"边缘".

如果我们绘制渐变的亮度与X位置(从左到右),我们得到一个如下图:

线性梯度图

这是背景上的对象的示例.边缘有点模糊,但这在真实物体的图像中很常见.像素亮度从一个像素到下一个像素不会从黑色变为白色:存在包含灰色阴影的渐变.这一点并不明显,因为您通常需要放大照片才能看到模糊边缘.

在白色背景的黑匣子

在图像处理中,我们可以通过查看从一个亮度到另一个亮度的锐利过渡(锐利渐变)来找到这些边缘.如果我们放大那个框的左上角,我们可以看到只有几个像素就有从白色到黑色的过渡.这种转变也是一种渐变.不同之处在于渐变位于两个恒定颜色的区域之间:左边是白色,右边是黑色.

缩放框的角落

红色箭头显示从背景到前景的渐变方向:左边的像素是光,当我们沿+ x方向移动时,像素变得更暗.如果我们绘制沿箭头采样的亮度,我们将得到如下图,红色方块表示特定像素的亮度.变化不是线性的,而是看起来像钟形曲线的一侧:

边缘的情节

蓝线段是曲率最陡的斜率的粗略近似值."真实"边缘点是沿着与对象边缘对应的梯度最陡的斜点.

可以使用水平和垂直Sobel滤波器计算梯度幅度和方向.然后,您可以计算渐变的方向:

gradientAngle = arctan(gradientY/gradientX)

当垂直于物体的边缘时,梯度将是最陡的.

如果您查看真实场景的一些黑白图像,您可以放大,查看单个像素值,并深入了解这些原则的应用方式.