数字图像处理实验—数字图像的边缘检测

完整代码在 FchZero/Digita_Image_Processing_Experiment (github.com)

一、实验目的

1.掌握数字图像的空间域滤波原理;

2.掌握数字图像的边缘检测原理及常用的边缘检测算子;

3.掌握阈值分割及图像的二值化。

二、实验原理

1.图像空间滤波原理:空间滤波是一种采用滤波处理的影像增强方法。其理论基础是空间卷积和空间相关。目的是改善影像质量,包括去除高频噪声与干扰,及影像边缘增强、线性增强以及去模糊等。分为低通滤波(平滑化)、高通滤波(锐化)和带通滤波。

2.边缘检测原理:边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中亮度变化明显的点。图像属性中的显著变化通常反映了属性的重要事件和变化。这些包括(i)深度上的不连续、(ii)表面方向不连续、(iii)物质属性变化和(iv)场景照明变化。边缘检测是图像处理和计算机视觉中,尤其是特征提取中的一个研究领域。

三、实验内容、核心算法/代码及结果

1.使用opencv-python除实验二中剩余的三种边缘检测器进行图片边缘检测

    img = cv.imread('Experiment_content\\Experiment1-4\\4.jpg')

    img_GRAY = cv.cvtColor(img, cv.COLOR_BGR2GRAY)

    # LOG 检测器

    L_S_blur = cv.GaussianBlur(img_GRAY, (3, 3), 1, 1) #核尺寸通过对图像的调节自行定义

    ret,thresh = cv.threshold(L_S_blur, 127, 255, cv.THRESH_BINARY) #二进制阈值化

    # 调用Laplacian()算法的OpenCV库函数进行图像轮廓提取

    temp_LOG = cv.Laplacian(L_S_blur, cv.CV_16S, ksize=1)

    # Laplace = cv.Laplacian(thresh, cv.CV_16S, ksize=1)

    LOG = cv.convertScaleAbs(temp_LOG) # 得到 LOG 算法处理结果

    cv.imshow("LOG", LOG)

    cv.waitKey()

    # Scharr 算子

    Scharr_x = cv.Scharr(L_S_blur, cv.CV_16S, 1, 0)

    Scharr_y = cv.Scharr(L_S_blur, cv.CV_16S, 0, 1)

    # Scharr_x = cv.Scharr(thresh, cv.CV_16S, 1, 0)

    # Scharr_y = cv.Scharr(thresh, cv.CV_16S, 0, 1)

    Scharr_absx = cv.convertScaleAbs(Scharr_x)

    Scharr_absy = cv.convertScaleAbs(Scharr_y)

    Scharr = cv.addWeighted(Scharr_absx, 0.5, Scharr_absy, 0.5, 0)

    cv.imshow('Scharr', Scharr)

    cv.waitKey(0)

    # Canny 检测器

    C_blur = cv.GaussianBlur(img_GRAY,(7,7),1,1)

    # Canny 算子进行边缘提取

    temp_Canny = cv.Canny(C_blur, 50, 150)

    Canny = cv.convertScaleAbs(temp_Canny)

    cv.imshow('Canny', Canny)

    cv.waitKey(0)

    cv.destroyAllWindows()

 完整代码在FchZero/Digita_Image_Processing_Experiment (github.com) 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FchZero

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值