0
我有以下在Matlab(I没有Matlab的)码,即通过取样的二进制值的序列显然构建整数:我无法理解bitget()
功能Python的等效Matlab的矢量切片
velocity_LUT_10bit = zeros(2^10,1);
for n = 1:length(velocity_LUT_10bit),
imagAC = bin2dec(num2str(bitget(n-1,9:-1:6))) - bitget(n-1,10)*2^4; % Imaginary part of autocorrelation: signed 5-bit integer
realAC = bin2dec(num2str(bitget(n-1,4:-1:1))) - bitget(n-1, 5)*2^4; % Real part of autocorrelation: signed 5-bit integer
velocity_LUT_10bit(n) = velNyq_CF*angle((realAC+0.5)/16 + 1i*(imagAC+0.5)/16)/pi;
end;
。从docs开始,第一个arg是采样序列,第二个arg指定了采样的范围,但我对分割x:-y:z
意味着什么感到困惑。我从docs了解到,它是“从索引x到z的样本,从y的右边往左走”。那是对的吗?
bin2dec(num2str(bitget(n-1,9:-1:6)))
的numpy相当于什么?我知道我应该使用numpy.packbits()
,但我有点卡住了。
谢谢!我没有想过在Octave中尝试排除故障。 – Raoul
'np.binary_repr'可能会启动,给出一个类似的字符串版本。 – hpaulj