matlab 中 gradient函数计算图像梯度原理(转载)

本文介绍了在Matlab中如何使用gradient函数计算图像的梯度。通过一个3*3矩阵的例子详细展示了横向和纵向梯度的计算过程。横向梯度通过列间数值的差分计算得出,纵向梯度则通过行间数值的差分计算得出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文:http://blog.sina.com.cn/s/blog_53683dc20102v9f4.html

Matlab中图像梯度的计算方式

转载 2015-03-27 16:08:42

在matlab中可以使用gradient来计算一幅图像的梯度,它的计算方式是这样的:

例子:

A是这样一个3*3的矩阵:

7 5 3

1 2 3

8 5 3

​那么使用gradient(A)后会得到两个值是个对dF/dx,横向的求偏导,也就是横向的梯度,即左右的梯度;以及dF/dy,纵向偏导,纵向的梯度,也就是上下的梯度。

matlab的实现方式是:横向梯度,就是按列减,第1列的梯度是第​​2列梯度减去第一列,第2列梯度是第3列减第1列除以2。第3列,就是第3列减去第2列。

这样横向的梯度就是​:

-2     -2      -2

 1       1       1

-3​     -2.5   -2

​纵向同一个道理,只是改成按行减了。

得到的应该是这样的:

​-6     -3   0

0.5​     0   0

7       3    0

over.  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值