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

了解一下Matlab梯度函数gradient吧

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    # k5 V0 y7 d+ h& _2 [  l; A4 ^1 t
    梯度:变化/参考量
    : v% V) o( p" t( C9 M- _2 f& M8 o/ [" i# g9 f, W# f

    ! X8 t; x& }! D: j
    ) d- D# ~6 R* x: ^1。如果F是一维矩阵,则FX=gradient(F,H)返回F的一维数值梯度。H是F中相邻两点间的间距。
    + P! J% M- y7 U( }9 W% d
    7 k7 m; o" V( `' v- p' Z  T9 ~
    + q- r  i% B7 G" a2 ~9 a" ]% B2 h7 Z2 g) {
    2。如果F是二维矩阵,返回F的二维数值梯度。2 P+ d+ y: J, C7 a0 K0 j8 G
    5 b' u! ]3 N8 u3 X. k. j
    [FX,FY]=gradient(F,HX,HY)。HX,HY参数表示各方向相邻两点的距离。
    + Y/ N, U% P, P- B. R7 o
    - M& W, j* ?' n/ T1 X2 J" ?
    / \) A. ]: E+ }* T
    4 W( _' s3 D$ }# Q+ a: P3。如果F是三维矩阵,返回F的三维数值梯度。
    ! d+ j$ ]- }! ]' S0 f) X* W9 b% Q2 S4 t1 j) O
    [FX,FY,FZ]=gradient(F,HX,HY,HZ)。/ g% T* b; s- j  y$ w  _

    ' o1 G  e6 m, V0 g+ S1 l% D+ J7 dHX,HY,HZ参数表示各方向相邻两点的距离。  q; }2 Q" N& H
    8 G4 h, Q' M) h' z7 t9 K, {  `( \
    / v6 e3 N; N! Y
    例:! u. O( S- d$ s2 O5 W
    >> x=[6,9,3,4,0;5,4,1,2,5;6,7,7,8,0;7,8,9,10,0]2 R! }* H$ y* v8 P+ \
    x =5 R( T; y6 l6 @" A
        6     9     3     4     01 W, E1 `/ s, T$ z: a6 O( r7 }
        5     4     1     2     5
    ( T2 u# W+ L8 K# w1 o- ]    6     7     7     8     0
    / E8 V$ g8 I. s  T4 i9 z    7     8     9 10     0: @( R/ i1 d$ U1 W
    >> [Fx,Fy]=gradient(x)1 J+ B  C( V& o% W! J5 f" A
    Fx =
    . D: c( o3 ^$ j) ~+ C+ l7 A- p3.0000 -1.5000 -2.5000 -1.5000 -4.0000! T* p/ ~; L! F, U) [' }& Y8 ?
    -1.0000 -2.0000 -1.0000 2.0000 3.0000
    6 A5 a% T+ p1 E4 H6 A1.0000 0.5000 0.5000 -3.5000 -8.0000" F: B! F  X2 C) m; T7 ~0 |
    1.0000 1.0000 1.0000 -4.5000   -10.00002 }: y! m; Q2 s3 `* ~) G* Q

    7 x% V1 T1 `2 h* t) N8 sFy =1 V: b, v2 C( N8 Y8 T( J; o8 |
    -1.0000 -5.0000 -2.0000 -2.0000 5.00003 b1 B5 h+ O/ ?/ p# \! o9 \) ~: T) g
          0 -1.0000 2.0000 2.0000       0) F# k4 a$ Q  N! V5 a3 g4 N3 {
    1.0000 2.0000 4.0000 4.0000 -2.5000
    / j9 c+ w8 o. B" |% [. u1.0000 1.0000 2.0000 2.0000       0! b) ^! C# d% U6 e2 h# B0 h

    + J8 w5 C& W4 k! _2 Ngradient()是求数值梯度函数的命令。[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-11-2 20:19 , Processed in 0.125000 second(s), 24 queries , Gzip On.

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

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

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