資源描述:
《信源編碼-PCM非均勻量化與編碼實(shí)驗(yàn)報(bào)告(完成版).docx》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、PCM非均勻量化與編碼實(shí)驗(yàn)報(bào)告一、實(shí)驗(yàn)?zāi)康?1).了解模擬信號數(shù)字化的三個(gè)基本步驟:抽樣、量化、編碼。(2).抽樣頻率、量化級數(shù)對信號數(shù)字化的影響.(3).加深對非均勻量化的理解。(4).理解信息速率與抽樣量化編碼的關(guān)系。(5).掌握MATLAB語言的函數(shù)調(diào)用,提高編程編程能力,,為之后的學(xué)習(xí)做準(zhǔn)備。二、實(shí)驗(yàn)內(nèi)容:對模擬信號進(jìn)行抽樣、量化并進(jìn)行13折線PCM編碼,運(yùn)用Matlab軟件實(shí)現(xiàn)PCM編碼全過程。三、實(shí)驗(yàn)步驟與結(jié)果1、抽樣:產(chǎn)生一個(gè)周期的正弦波x(t)=1024cos(2πt)mv,分別以4HZ和32Hz的頻率進(jìn)行采樣用plot函數(shù)在繪出原信
2、號和抽樣后的信號序列(可用stem函數(shù))。(4Hz保存為圖1,32Hz保存為圖2)functionsample(f)t=0:1/f:1;y=1024*cos(2*pi*t);stem(t,y,'b','filled');holdon;T=1:0.01:1;Y=1024*cos(2*pi*T);plot(T,Y,'r');2、均勻量化:對以32Hz的抽樣頻率進(jìn)行抽樣后的信號的絕對值分別進(jìn)行8級和2048級均勻量化。在同一張圖上繪出正弦波波形(用plot函數(shù))、量化圖(用stairs函數(shù))。(保存為圖3)functiony=Even(n,m)t=0:1/
3、m:1;x=1024*cos(2*pi*t);a=-1024:2048/n:1024;fori=1:m+1forj=1:nif(x(i)>=a(j)&x(i)<=a(j+1))y(i)=(a(j)+a(j+1))/2;endendendy=y/max(y);if(n==8)stairs(t,y,'b');endif(n==2048)stairs(t,y,'k')endaxis([01-1.51.5]);holdon;T=0:0.01:1;Y=1024*cos(2*pi*T);Y=Y/max(Y);plot(T,Y,'r');3、PCM編碼對所有的抽樣
4、值對應(yīng)的2048級均勻量化值進(jìn)行13折線編碼,輸出相應(yīng)的PCM編碼,并對總的編碼比特?cái)?shù)進(jìn)行計(jì)數(shù)。具體編碼程序流程如下:抽取第i個(gè)樣值判斷樣值符號歸一化和量化段落判斷段內(nèi)判斷輸出開始結(jié)束取1s原始信號YN是否達(dá)到給定的抽樣頻率次數(shù)32functioncode=pcm(S)z=sign(S);MaxS=max(abs(S));S=abs(S/MaxS);Q=2048*S;code=zeros(length(S),8);a=[0,16,32,64,128,256,512,1024,2048];b=[1,1,2,4,8,16,32,64];fori=1:le
5、ngth(S)forj=1:8if(Q(i)>=a(j))&&(Q(i)<=a(j+1))g=dec2bin(j-1,3);code(i,(2:4))=[str2num(g(1))str2num(g(2))str2num(g(3))];q=ceil((Q(i)-a(j))/b(j));ifq==0code(i,(5:8))=[0,0,0,0];elsek=num2str(dec2bin(q-1,4));code(i,(5:8))=[str2num(k(1))str2num(k(2))str2num(k(3))str2num(k(4))]endende
6、ndifz(i)>0code(i,1)=1;elseifz(i)<0code(i,1)=0;endend四.結(jié)果分析1.圖1,圖2的區(qū)別和特征圖1和圖2分別以4HZ和32Hz的頻率對函數(shù)進(jìn)行采樣,由于圖2的采樣頻率更高,采集的點(diǎn)更多,更能反映原函數(shù)的特征。2.圖3中不同量化等級的區(qū)別圖3是對以32Hz的抽樣頻率進(jìn)行抽樣后的信號的絕對值分別進(jìn)行8級和2048級均勻量化而產(chǎn)生的函數(shù)以及原函數(shù)的正弦波波形,可以明顯看出2048級的量化更精準(zhǔn),更能反映原函數(shù)的特征。五.實(shí)驗(yàn)遇到的問題及解決方法在該實(shí)驗(yàn)中我們主要學(xué)習(xí)了老師的編碼,體會(huì)用matlab編程的思想與
7、方法,初步掌握了matlab的應(yīng)用,之后我與閆黃一起對原來的pcm編碼進(jìn)行了自己的編程,通過自己的變成對matlab有了更深的了解,感受比較深的是遇到matlab編程的問題時(shí),不僅需要自己的思考,而且也需要去與別人討論,有時(shí)也需要向老師與同學(xué)咨詢,這樣才能更快掌握matlab六.相關(guān)源程序