边缘检测是基于轮廓的对象识别的至关重要的图像分析技术,对于图像信息恢复至关重要。 它提取关键功能,例如线条和曲线,通常由高级计算机视觉和图像处理算法使用。 强大的边缘检测算法准确地识别了主要边缘,同时抑制了噪声引起的虚假边缘。 边缘代表图像强度(像素值)的重大局部变化,通常发生在区域边界处。本教程解释了Canny Edge检测算法及其Python实现。
chany边缘检测器
> >以其发明者John F. Canny(1986)的名字命名,Canny探测器以灰度图像为输入,并输出图像突出显示强度不连续性(边缘)。 该过程涉及:
降低噪声:
高斯卷积使输入图像平滑,降低噪声。t1
>上方的点上方时t2
。
t1 > t2
t1
高斯内核宽度和t2
阈值是影响Canny检测器输出的参数。
t1
t1
Python实现t2
t1
。
t1
t2
使用
> install
(例如,在ubuntu上scikit-image
模块中)应用了Canny检测器。OpenCV
使用示例图像“ boat.png”(如下所示):
scikit-image
代码:
输出(边缘检测的图像):scikit-image
sudo apt-get install python-skimage
canny()
feature
使用
>安装OpenCV(请参阅操作系统的相关安装指南)。 OPENCV的Canny()
函数执行边缘检测。
代码:
from skimage import io, feature im = io.imread('boat.png') edges = feature.canny(im) io.imshow(edges) io.show()
参数:im
(图像),下阈值(25),上阈值(255),L2gradient=False
(使用L1-norm)。 matplotlib
显示结果。
输出(边缘检测的图像):
结论
该教程使用scikit-image
和OpenCV
涵盖了Canny边缘检测器及其直接实现,证明了其在边缘检测中的有效性。
以上是使用Python的Canny边缘检测器的详细内容。更多信息请关注PHP中文网其他相关文章!