代码之家  ›  专栏  ›  技术社区  ›  A.Torres

matlab和python中的尺寸函数

  •  0
  • A.Torres  · 技术社区  · 6 年前

    我正试图把这个matlab代码翻译成python。代码如下:

    function snr_est = estimate_snr(R,r_m,x)
    
             [L N]=size(R);           % L number of bands (channels)
                                      % N number of pixels (Lines x Columns) 
             [p N]=size(x);           % p number of endmembers (reduced dimension)
    
             P_y = sum(R(:).^2)/N;
             P_x = sum(x(:).^2)/N + r_m'*r_m;
             snr_est = 10*log10( (P_x - p/L*P_y)/(P_y- P_x) );
    
    return;
    

    我的问题与尺寸法有关。对于matlab代码中的大小用法,matlab说“当 A 是矩阵。我想用Python做同样的事情。我知道。 a.shape 同时返回数组的维度。然后,是否可以像matlab代码在这个函数中要求的那样访问它们?

    1 回复  |  直到 6 年前
        1
  •  1
  •   aad    6 年前

    size shape

    A size(A) [3, 4, 5]

    B B.shape (3, 4, 5)

    R L x N x p x N R.shape=(L,N) x.shape=(p,N)