发布时间:2025-12-11 02:43:24 浏览次数:1
说明
1、Sobel算子的中文名称是索贝尔算子,是一种用于边缘检测的离散微分算子。
它结合了高斯平滑和微分求导。
2、Sobel算子在Prewitt算子的基础上增加了权重的概念,认为相邻点的距离对当前像素点的影响是不同的。
距离越近的像素点对当前像素的影响越大,从而锐化图像,突出边缘轮廓。
实例
importcv2ascvimportmatplotlib.pyplotasplt#读取图像img=cv.imread('data.jpg',cv.COLOR_BGR2GRAY)rgb_img=cv.cvtColor(img,cv.COLOR_BGR2RGB)#灰度化处理图像grayImage=cv.cvtColor(img,cv.COLOR_BGR2GRAY)#Sobel算子x=cv.Sobel(grayImage,cv.CV_16S,1,0)y=cv.Sobel(grayImage,cv.CV_16S,0,1)#转uint8,图像融合absX=cv.convertScaleAbs(x)absY=cv.convertScaleAbs(y)Sobel=cv.addWeighted(absX,0.5,absY,0.5,0)#用来正常显示中文标签plt.rcParams['font.sans-serif']=['SimHei']#显示图形titles=['原始图像','Sobel算子']images=[rgb_img,Sobel]foriinrange(2):plt.subplot(1,2,i+1),plt.imshow(images[i],'gray')plt.title(titles[i])plt.xticks([]),plt.yticks([])plt.show()读到这里,这篇“python中Sobel算子指的是什么”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注本站行业资讯频道。