ITPub博客

首页 > IT职业 > IT生活 > 【OpenCV3经典编程100例】(10)边缘检测:用Sobel()函

【OpenCV3经典编程100例】(10)边缘检测:用Sobel()函

IT生活 作者:lcc 时间:2021-09-09 09:15:28 0 删除 编辑

前10话是opencv里面常用函数的介绍,完成了《数字图像处理》/第三章/灰度变换和空间滤波的c++代码实现!

第10示例,首先,用Sobel()函数求取灰度图的梯度算子。

然后用一阶微分算子——梯度算子来进行灰度图像的边缘检测,效果比拉普拉斯算子好很多。

	//Sobel函数,可计算一阶、二阶、三阶或混合图像差分
	void Sobel(InputArray src,//输入图像 
		OutputArray dst,//输出图像 
		int ddepth,//输出图像的深度
		int dx,//x方向上的差分阶数 
		int dy,//y方向上的差分阶数 
		int ksize = 3,//默认为3,Sobel核的大小,必须取1、3、5、7
		double scale = 1,//默认为1,计算导数值时可选的缩放因子 
		double delta = 0,//默认
		int borderType = BORDER_DEFAULT);//默认
	//常见的用法:
	//取dx=1, dy=0, ksize=3来计算图像X方向的导数
	//取dx=0, dy=1, ksize=3来计算图像Y方向的导数


原文出处

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2331/viewspace-2801369/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-09-06

  • 博文量
    119
  • 访问量
    12367