EDA365电子论坛网

标题: 帮助一下理解Matlab梯度函数gradient??? [打印本页]

作者: smileqq    时间: 2021-4-12 14:57
标题: 帮助一下理解Matlab梯度函数gradient???
请问一下gradient之间的过程' p# U. G( {* q8 P1 s& w
例:: [) ]$ y! B9 }. ]2 g  u4 p
>> x=[6,9,3,4,0;5,4,1,2,5;6,7,7,8,0;7,8,9,10,0]
! N2 Z2 e9 H. j  e6 `  Z# f3 C; mx =
7 y" d: b2 M+ [# g" m/ D     6     9     3     4     0
! T1 Y+ B$ }' |3 e1 N     5     4     1     2     5
! O  S2 w- S  S     6     7     7     8     0
* ~3 f. U& s! ~9 I! w  ^7 ^     7     8     9    10     0
" I8 c4 x1 Y$ `+ U+ v0 T! n>> [Fx,Fy]=gradient(x)
, q2 A, r( C. I7 ^Fx =
! k4 L6 w3 y) [2 i; E: i2 O    3.0000   -1.5000   -2.5000   -1.5000   -4.0000/ A* W/ Z1 D' O
   -1.0000   -2.0000   -1.0000    2.0000    3.0000
8 Q; }) W( [1 n& y0 M3 X    1.0000    0.5000    0.5000   -3.5000   -8.0000
# x/ b9 J( x; F7 X    1.0000    1.0000    1.0000   -4.5000  -10.0000
8 t! W/ R/ `; H" L% ~3 m1 v- Q: X9 ]* z
Fy =8 @& U- n0 F+ d7 f8 D
   -1.0000   -5.0000   -2.0000   -2.0000    5.0000
. s+ }6 Q; w  K. H/ \& [6 j         0   -1.0000    2.0000    2.0000         0
3 C. K& P4 ]- U. D! g- b6 S    1.0000    2.0000    4.0000    4.0000   -2.5000
' T4 |9 K. q* T% H  L    1.0000    1.0000    2.0000    2.0000         01 x% D9 c, m4 ~

) E" b6 j9 O# @就是不理解Fx,Fy是怎么计算过来的,解释一下,谢谢" b5 O. `) N( J* D# Y8 ]4 l$ @

: @0 t' z) L, \3 s. m. s3 |0 H- j
作者: NNNei256    时间: 2021-4-12 16:11
这个是计算机算的,又不用你算,不知道在纠结啥
作者: CCxiaom    时间: 2021-4-12 16:11
你是想了解gradient函数是不,可以help一下,上面讲的非常详细的
作者: uperrua    时间: 2021-4-12 16:14
gradient()是求数值梯度函数的命令。[Fx,Fy]=gradient(x),其中Fx为其水平方向上的梯度,Fy为其垂直方向上的梯度,Fx的第一列元素为原矩阵第二列与第一列元素之差,Fx的第二列元素为原矩阵第三列与第一列元素之差除以2,以此类推:Fx(i,j)=(F(i,j+1)-F(i,j-1))/2。最后一列则为最后两列之差。同理,可以得到Fy。
6 q1 ~  r8 d3 P* t  _2 q* \




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2