Gradient(F)函数求的是数值上的梯度,假设F为矩阵.Gradient算法
>> x=[6,9,3,4,0;5,4,1,2,5;6,7,7,8,0;7,8,9,10,0]x = 6 9 3 4 0 5 4 1 2 5 6 7 7 8 0 7 8 9 10 0 >> [Fx,Fy]=gradient(x) Fx = 3.0000 -1.5000 -2.5000 -1.5000 -4.0000 -1.0000 -2.0000 -1.0000 2.0000 3.0000 1.0000 0.5000 0.5000 -3.5000 -8.0000 1.0000 1.0000 1.0000 -4.5000 -10.0000 Fy = -1.0000 -5.0000 -2.0000 -2.0000 5.0000 0 -1.0000 2.0000 2.0000 0 1.0000 2.0000 4.0000 4.0000 -2.5000 1.0000 1.0000 2.0000 2.0000 0
计算规则: [Fx,Fy]=gradient(F),其中Fx为其水平方向上的梯度,Fy为其垂直方向上的梯度,Fx的第一列元素为原矩阵第二列与第一列元素之差,Fx的第二列元素为原矩阵第三列与第一列元素之差除以2,以此类推:Fx(i,j)=(F(i,j+1)-F(i,j-1))/2。最后一列则为最后两列之差。同理,可以得到Fy。
标签:gradient,梯度,1.0000,Fx,Matlab,Fy,2.0000 From: https://www.cnblogs.com/bbhhh/p/17871663.html