I have a matix having binary numbers [001;011;111;111] . How can i convert it to a matrix like [0 0 1 0 1 1 1 1 1 1 1 1]? I want to modulate but could not understand how to modulate the first matrix so i need to convert it into a bitstream. So please help
1 回表示 (過去 30 日間)
古いコメントを表示
clear; clc;
data_size=100;
M=2;
freq_sep=500;
nsamp=6;
fs=10000;
n=2;
y=wavread('voice');
partition=[-.8,-.6,-.5,-.4,-.3,-.2,-.1,0,.1,.2,.3,.4,.5,.6,.8];
codebook=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15];
% Now optimize, using codebook as an initial guess.
[partition2,codebook2] = lloyds(y,codebook);
[index,quants,distor] = quantiz(y,partition,codebook);
[index2,quant2,distor2] = quantiz(y,partition2,codebook2);
%Compare mean square distortions from initial and optimized
[distor, distor2] % parameters.
quantization=dec2bin(quants,4);
*x=str2num(quantization);
fsk_mod=fskmod(x,M,freq_sep,nsamp,fs);
*noise=awgn(fsk_mod,0);
fsk_demod=fskdemod(noise,M,freq_sep,nsamp,fs);
[num,rate]=biterr(quants,fsk_demod)
sound(fsk_demod)
0 件のコメント
回答 (1 件)
Walter Roberson
2012 年 5 月 8 日
[001;011;111;111] is not binary numbers: it is a column array of decimal numbers. one. eleven. one hundred and eleven.
If instead your matrix is A = [0 0 1;0 1 1; 1 1 1; 1 1 1] then you want
t = A.';
B = t(:) .';
2 件のコメント
Walter Roberson
2012 年 5 月 8 日
dec2bin() does not produce binary: it produces strings of '0' and '1'
参考
カテゴリ
Help Center および File Exchange で Communications Toolbox についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!