Learning OpenCV —— Gradients and Sobel Derivatives 梯度和Sobel导数

Gradients and Sobel Derivatives  梯度和Sobel导数

    一个最重要并且最基本的卷积是导数的计算(或者是其近似值),有许多方法可以做到,但是只有少数适合于给定情况。

通常来说,用来表达微分的最常用的操作是sobel微分算子(见图6-36-4)Sobel算子包含任意阶的微分以及混合偏导(例如 )

6-3 逼近x-方向上一阶微分的sobel算子效果

cvSobel(
   
   
      const CvArr*  src,
   
   
      CvArr*        dst,
   
   
      int           xorder,
   
   
      int           yorder,
   
   
      int           aperture_size = 3
   
   
);
   
   

这里,srcdst分别是输入图像和输出图像,xorderyorder是求导的阶数。通常只可能用到01最多2。值为0表明在这个方向上没有求导[65]aperture_size参数是方形滤波器的宽(或高)并且应该是奇数。目前,aperture_size支持1,3,5,7。如果原图像src是8位的,为避免溢出,目标图像的深度必须是IPL_DEPTH_16S。无论是xorder还是yorder都必须非零。

6-3 逼近y-方向上一阶微分的sobel算子效果

Sobel导数有一个非常好的属性,即可以定义任意大小的核,并且这些核可以快速且迭代方式构造。因为小核对噪声更敏感,所以大核对导数有更好的逼近。

为了更好的理解以上内容,我们必须认识到,Sobel导数并不是真正的导数,这是因为Sobel算子是定义在一个离散空间。Sobel算子真正表示的是多项式拟合,也就是说,x方向上的二阶Sobel导数并不是真正的二阶导数。它是对抛物线函数的局部拟合。这说明人们为什么想用较大的内核,因为较大内核是在更多像素上计算这种拟合。

事实上,在离散网格的场合下有很多方法可以近似地计算出导数。这种使用于Sobel算子近似计算导数的缺点是使用小核的精度比较差。对于大核,由于使用了更多的点用于估计,这个问题并不严重。这种不精确性并不会直接在cvSobel()中使用的XY滤波器中表现出来,因为它们完全按xy轴排列。当试图计算图像的方向导数的估计量时,难度就出现了。(如,使用y/x滤波器响应的反正切得到的图像梯度的方向 。)

为了承上启下,这里有一个这类图像度量的具体例子。这个例子是在从一个物体收集形状信息的过程里,而这个过程是通过累积目标周围梯度角度的直方图来实现的。 这样的直方图是许多被训练和操作的形状分类器的基础。在这种情况下,对梯度角度不准确的度量将会将低分类器识别的性能。

对于一个3×3Sobel滤波器,进一步来说当梯度角度是水平或者垂直时,这样的不准确就更加明显。OPENCV通过在cvSobel()函数中一些特殊aperture_sizeCV_SCHARR的隐性使用,可以解决小(但是快)3×3 Sobel导数滤波器不准确的问题。Scharr滤波器同sobel滤波器一样快,但是准确率更高,所以当你利用3×3滤波器实现图像度量的时候应该使用Scharr滤波器。Scharr滤波器的滤波系数如图6-5所示[Scharr00]

 

基于STM32F407,使用DFS算法实现最短迷宫路径检索,分为三种模式:1.DEBUG模式,2. 训练模式,3. 主程序模式 ,DEBUG模式主要分析bug,测量必要数据,训练模式用于DFS算法训练最短路径,并将最短路径以链表形式存储Flash, 主程序模式从Flash中….zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值