1

入力画像は、変調して送信し、最終的に BPSK を使用して検出する必要があります。

M = 2; %Modulation order 2 for BPSK 
randn('state',200); % initializing the randn() function
imdata = imread('lenna.pgm'); 
bdata = de2bi(imdata);         
sizec = size(bdata,1);         % height
sizer = size(bdata,2);         % width
nbits = sizec*sizer;            % number of bits in the image
msg = double(reshape(bdata,nbits,1));

次のコードは、入力画像を変調し、復調された出力を表示するためのものです。コードを実行すると、結果の出力に空白の画像が表示されます。何を見逃したのか、どこで間違ったのかを理解するのに助けが必要です。

%modulate
txpsk = pskmod(msg,M);

%noise
phasenoise = randn(nbits,1)*0.015;
rxpsk = txpsk.*exp(2i*pi*phasenoise);

%demodulate
recovpsk = pskdemod(rxpsk,M);
reshape1rxpsk = reshape(recovpsk,sizec,sizer);
reshape2rxpsk = bi2de(reshape1rxpsk);
finalout= reshape(reshape2rxpsk,size(imdata,1),size(imdata,2));
imshow(finalout)
4

1 に答える 1

0

PGM ファイルは、1 つまたは複数の PGM イメージのシーケンスで構成されます。各画像には、幅、高さなどの情報を含むヘッダー構造があります。変調後、信号にノイズを追加します。そのため、復調信号に誤りが含まれる場合があります。このエラーによって画像のヘッダー情報が破損すると、空白の画像が出力される可能性があります。行にコメントしてみてください

%phasenoise = randn(nbits,1)*0.015;
%rxpsk = txpsk.*exp(2i*pi*phasenoise);
于 2015-04-10T09:06:53.420 に答える