找回密码
 注册
关于网站域名变更的通知
查看: 439|回复: 1
打印 上一主题 下一主题

了解一下Matlab梯度函数gradient吧

[复制链接]
  • TA的每日心情

    2019-11-20 15:22
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-3-21 13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    6 W3 @3 U9 w5 s- v+ h  h
    梯度:变化/参考量1 V! {5 A% c! g! M! Q/ }2 i( I7 @
    % Q+ X, w+ [; s# R9 y$ U
    ) e% H* s; |% J6 g# p1 W

    : f( F+ |" W! X) D1。如果F是一维矩阵,则FX=gradient(F,H)返回F的一维数值梯度。H是F中相邻两点间的间距。% L$ c7 B3 L* \* N

    - u( L0 i  z/ M
    . I) Q: X9 ^3 ^! m& b0 H9 O5 Y1 T8 U7 B1 R
    2。如果F是二维矩阵,返回F的二维数值梯度。
    - n& H2 j) M0 o) W* d8 X" X
    / j8 y! U1 s' L# H. l1 e[FX,FY]=gradient(F,HX,HY)。HX,HY参数表示各方向相邻两点的距离。
    $ \$ N1 q! b9 G! D% h+ h5 O3 M( ~8 S4 d: N7 E0 k1 \5 `8 K: B

    ' \" }; r  e4 r0 u7 f7 q# s
    2 ^& v$ L/ x) J: B: `( c  d, c9 l5 y3。如果F是三维矩阵,返回F的三维数值梯度。2 \+ G  E* h, _
    ' E( G/ C8 ^. z1 D
    [FX,FY,FZ]=gradient(F,HX,HY,HZ)。2 L# F3 R) ^) l4 N3 V$ F$ ?. U% l

    7 d! C+ G0 g1 ?& zHX,HY,HZ参数表示各方向相邻两点的距离。
    ( X* [8 e1 F5 u4 c# ^' C2 ~% [: d9 k$ f
    ( a* V8 M% }+ O0 E+ k4 f3 M
    例:1 J# j! Z( }' _9 s$ \% f
    >> x=[6,9,3,4,0;5,4,1,2,5;6,7,7,8,0;7,8,9,10,0]* \$ b. j" i7 f: N
    x =" \5 k* l2 X' g1 ~
        6     9     3     4     0
    / z1 n0 _: Q5 w    5     4     1     2     5
    7 Z+ x+ j- b3 X. d    6     7     7     8     0
    8 K* m/ f! _' Q* ~5 ]7 I) g- [    7     8     9 10     0
    / h9 ?0 D3 w# T; p7 \% S0 y; H>> [Fx,Fy]=gradient(x)
    . O* y1 g$ E* f5 F) iFx =+ Y9 G2 [& \- c- u/ z
    3.0000 -1.5000 -2.5000 -1.5000 -4.0000$ r6 U9 E: x6 H
    -1.0000 -2.0000 -1.0000 2.0000 3.0000/ ~! N1 N" a2 o
    1.0000 0.5000 0.5000 -3.5000 -8.0000
    $ D9 E' l5 W0 V. B: R1.0000 1.0000 1.0000 -4.5000   -10.0000
    % c4 Y' e) ^4 R2 l" f+ \6 K/ b* O; Z  ?  c
    Fy =
    - F$ U- a+ @0 f' B-1.0000 -5.0000 -2.0000 -2.0000 5.0000
    3 u5 v; W: w) D/ [& H& w! q5 S      0 -1.0000 2.0000 2.0000       0
    * x4 X9 W0 N) G  g5 J" F1.0000 2.0000 4.0000 4.0000 -2.5000
    $ D7 R, S; K8 X1.0000 1.0000 2.0000 2.0000       0* r1 c. H7 a! m" ~6 g5 I
    # o2 b5 h7 n2 B& @: w2 Q9 a
    gradient()是求数值梯度函数的命令。[Fx,Fy]=gradient(x),其中Fx为其水平方向上的梯度,Fy为其垂直方向上的梯度,Fx的第一列元素为原矩阵第二列与第一列元素之差,Fx的第二列元素为原矩阵第三列与第一列元素之差除以2,以此类推:Fx(i,j)=(F(i,j+1)-F(i,j-1))/2。最后一列则为最后两列之差。同理,可以得到Fy。

    该用户从未签到

    2#
    发表于 2020-3-21 15:22 | 只看该作者
    Matlab梯度函数gradient
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-13 00:22 , Processed in 0.109375 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表