南京郵電大學圖像實驗_第1頁
南京郵電大學圖像實驗_第2頁
南京郵電大學圖像實驗_第3頁
南京郵電大學圖像實驗_第4頁
南京郵電大學圖像實驗_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、通信與信息工程學院2016/2017學年第一學期實 驗 報 告實驗課程名稱 數(shù)字圖像處理與圖像通信實驗 專 業(yè) 電子信息工程 學 生 學 號 學 生 姓 名 指 導 教 師 謝世鵬 指 導 單 位 廣播工程電視系 實驗一 圖像信號的數(shù)字化一、實驗目的通過本實驗了解圖像的數(shù)字化參數(shù)取樣頻率(像素個數(shù))、量化級數(shù)與圖像質(zhì)量的關系。二、實驗內(nèi)容1、編寫并調(diào)試圖像數(shù)字化程序。要求參數(shù)k,N可調(diào)。其中,k為亞抽樣比例,N為量化比特數(shù)。2、可選任意圖像進行處理,在顯示器上觀察各種數(shù)字化參數(shù)組合下的圖像效果。三、實驗方法及編程在數(shù)字系統(tǒng)中進行處理、傳輸和存儲圖像,必須把代表圖像的連續(xù)信號轉(zhuǎn)變?yōu)殡x散信號,這種

2、變換過程稱為圖像信號的數(shù)字化。它包括采樣和量化兩種處理。本實驗對數(shù)字圖像進行再采樣和再量化,以考察人眼對數(shù)字圖像的分辨率和灰度級的敏感程度。 程序的主體部分如下: function newbuf=Sample_Quant(oldbuf,k,n)% % 函數(shù)名稱:Sample_Quant() 圖像數(shù)字化算法函數(shù) % oldbuf 原圖像數(shù)組 % M N 原圖像尺寸 % k 取樣間隔 % n 量化比特值 % newbuf 存放處理后的圖像二維數(shù)組 M,N=size(oldbuf); oldbuf=double(oldbuf); x=1;y=1; while x<M while y<N

3、new=(round(oldbuf(x,y)/(2(8-n)*(2(8-n); for i=0:k-1 for j=0:k-1 if(x+i<M)&(y+j<N) newbuf(x+i,y+j)=uint8(new); end end end y=y+k; end if y>=N y=1; end x=x+k; end4、 實驗結(jié)果及分析實驗截圖如下: 由實驗結(jié)果可以看出,亞抽樣比例k和量化比特數(shù)N對都會使圖像變得模糊,但兩者的影響是不相同的。亞抽樣比例k的大小決定了數(shù)字化圖像的方塊效應是否明顯。當k較大時,數(shù)字化圖像會有較為明顯的塊狀出現(xiàn),對于圖像的視覺效果影響很大

4、。量化比特數(shù)N則決定了圖像的灰度級,量化比特數(shù)為N時,圖像有個2N灰度級。所以當N較小時,圖像會出現(xiàn)不規(guī)則的區(qū)域有著相同的灰度值的情況,但是這些區(qū)域在原圖像中卻有著差別較小的不同的灰度值。特別是在原圖的灰度漸變的區(qū)域,這種效應會變得尤為明顯。實驗二 圖像灰度級修正一、實驗目的掌握常用的圖像灰度級修正方法,即圖像的灰度變換法和直方圖均衡化法,加深對灰度直方圖的理解。二、實驗內(nèi)容1、編程實現(xiàn)圖像的灰度變換。改變圖像輸入、輸出映射的灰度參數(shù)范圍(拉伸和反比),觀看圖像處理結(jié)果。2、修改可選參數(shù)gamma值,使其大于1,等于1和小于1,觀看圖像處理結(jié)果。3、對圖像直方圖均衡化處理,顯示均衡前后的直方圖

5、和圖像。三、實驗方法及編程 灰度級修正是圖像空間域上的增強方法圖像增強,它以圖像的灰度映射變換為基礎,直接對圖像中的像素進行處理。常用到三種基本方式:線性,對數(shù),冪次。 程序的主體部分如下: Function newbuf=GrayGamma(oldbuf,r) newbuf=imadjust(oldbuf,stretchlim(oldbuf),r); newbuf=uint8(newbuf); function newbuf=GrayEqualize(oldbuf) % 函數(shù)名稱: % GrayEqualize() 直方圖均衡算法函數(shù) % 參數(shù): % oldbuf 原圖像數(shù)組 % newbu

6、f 存放處理后的圖像二維數(shù)組 M,N=size(oldbuf); NN=M*N;sk=0; COUNTS,X=imhist(oldbuf,256); for i=1:M for j=1:N kk=double(oldbuf(i,j); for k=1:kk sk=sk+COUNTS(k); end sk=sk/NN*256; newbuf(i,j)=sk; end end newbuf=uint8(newbuf);4、 實驗結(jié)果及分析實驗截圖如下: 由實驗結(jié)果可以看出,所選的測試圖像的灰度值主要分布于低值的部分。經(jīng)過無gamma值的灰度值變換后,直觀地看出:分布于低值部分的直方圖分散開來,分布

7、于幾乎所有的灰度值,但是對映于各個灰度值的像素個數(shù)分布仍是不均勻的。變換后的圖像比原圖顯得明亮、清晰。經(jīng)過第二第三幅圖像可以進一步看出:gamma值的灰度值變換則明顯受gamma值的影響:當gamma值大于1時,直方圖有向灰度為0的一端壓縮的趨勢,gamma越大,這種趨勢越明顯。此時的圖像比原圖清晰,但是原本偏暗的部分更加偏黑,原本較亮的部分則變得發(fā)白,總體而言,圖像偏暗的部分較多。當gamma值小于1時,其趨勢與gamma值大于1相反,故整個圖像顯得發(fā)白。直方圖均衡后的圖像也顯得較為清晰、均勻。它能盡量將直方圖變得均衡,分布也更為均勻,各個灰度值所對應的像素個數(shù)盡可能相同。實驗三 圖像的平滑

8、濾波一、實驗目的圖像平滑主要目的是減少噪聲對圖像的影響。噪聲有很多種類,不同的噪聲有不同的抑制措施。本實驗要求用平滑線性濾波和中值濾波兩種最典型、最常用的處理算法進行程序設計,學習如何對已被污染的圖像進行“凈化”。通過平滑處理,對結(jié)果圖像加以比較,得出自己的實驗結(jié)論。2、 實驗內(nèi)容 1、編寫并調(diào)試窗口尺寸為m×n的平滑濾波函數(shù)。2、編寫并調(diào)試窗口尺寸為m×n的中值濾波函數(shù)。三、實驗方法及編程 在M*N的圖像f上,用m*n大小的濾波器模板進行線性濾波由這個公式給出: 程序如下: function newbuf=AverageFilter(oldbuf,M,N,m) % 函數(shù)名

9、稱: % AverageFilter() 均值濾波算法函數(shù) % 參數(shù): % oldbuf 噪聲圖像數(shù)組 % M N 噪聲圖像尺寸 % m 矩形平滑窗口尺寸 % newbuf 存放處理后的圖像二維數(shù)組 oldbuf=double(oldbuf); newbuf=zeros(M,N); for i=(m+1)/2:M-(m+1)/2 for j=(m+1)/2:N-(m+1)/2 for x=-(m-1)/2:(m-1)/2; for y=-(m-1)/2:(m-1)/2; newbuf(i,j)=newbuf(i,j)+oldbuf(i+x,j+y)/(m*m); end end end end

10、 function newbuf=MedianFilter(oldbuf,M,N,m) % 函數(shù)名稱: % MedianFilter() 中值濾波算法函數(shù) % 參數(shù): % oldbuf 原圖像數(shù)組 % M N 原圖像尺度 % m 滑動窗口尺寸 % newbuf 存放處理后的圖像數(shù)組 for i=(m+1)/2:M-(m+1)/2 for j=(m+1)/2:N-(m+1)/2 k=1; for x=-(m-1)/2:(m-1)/2; for y=-(m-1)/2:(m-1)/2; winbuf(k)=oldbuf(i+x,j+y); k=k+1; end end newbuf(i,j)=See

11、kMid(winbuf,m); end end winsize=length(winbuf); %取窗口尺寸 for i=1:winsize %編寫排序函數(shù) for j=1:winsize-i if(winbuf(i)>winbuf(j+i) t=winbuf(i); winbuf(i)=winbuf(j+i); winbuf(j+i)=t; end end end mid=winbuf(ceil(m*m/2);4、 實驗結(jié)果及分析實驗截圖如下: 由實驗結(jié)果可以看出,對于處理椒鹽噪聲,中值濾波比均值濾波要好很多。當窗口大小為3×3時,均值濾波能一定程度上降低噪聲的污染,但是,仍

12、能看出在噪聲點,并沒有完全消除噪聲,只是將噪聲與周圍的圖像進行了平均,噪聲點只是顯得模糊了,并沒有完全消除。相比之下,中值濾波則效果明顯,同為3×3的窗口,幾乎能把所有的噪聲點消除,效果非常顯著。當窗口大小變大時,也能將大部分噪聲點消除,但是會帶來嚴重的模糊。同時我們可以看出,兩種方法都使得處理后的圖像比原圖要模糊,并且隨著窗口的變大,圖像變得越來越模糊。通過兩種方法之間的比較則可以看出,同等窗口下中值濾波帶來的模糊比均值濾波要輕一些。實驗四名稱:圖像的銳化處理一、實驗目的學習用銳化處理技術來加強圖像的目標邊界和圖像細節(jié)。對圖像進行梯度算子、Roberts算子、Sobel算子邊緣檢測

13、處理和Laplace算子邊緣增強處理,是圖像的某些特征(如邊緣、輪廓等)得以進一步的增強及突出。二、實驗內(nèi)容1、編寫梯度算子和Roberts算子濾波函數(shù)。2、編寫Sobel算子濾波函數(shù)。3、編寫拉普拉斯邊緣增強濾波函數(shù)。三、實驗方法及編程 在實驗中,我們對于這三種算子的算法,都有其各自對應的模板,根據(jù)這個模板我們可以方便地編寫出程序的主體結(jié)構(gòu)。指導書中也有對應的流程框圖可供參考。 程序的主體部分如下: function newbuf=RobFilter(oldbuf,M,N); % RobFilter() for i=1:M-1 for j=1:N-1 newbuf(i,j)=abs(oldb

14、uf(i,j)-oldbuf(i+1,j+1)+abs(oldbuf(i+1,j)-oldbuf(i,j+1); end end function newbuf=SobFilter(oldbuf,M,N); % SobFilter() for i=2:M-1 for j=2:N-1 sx=oldbuf(i+1,j-1)+2*oldbuf(i+1,j)+oldbuf(i+1,j+1)-oldbuf(i-1,j-1)- 2*oldbuf(i-1,j)-oldbuf(i-1,j+1; sy=oldbuf(i-1,j+1)+2*oldbuf(i,j+1)+oldbuf(i+1,j+1)-oldbuf(

15、i-1,j-1)- 2*oldbuf(i,j-1)-oldbuf(i+1,j-1; newbuf(i,j)=abs(sx)+abs(sy); end end function newbuf=LapFilter(oldbuf,M,N); % LapFilter() for i=2:M-1 for j=2:N-1 newbuf(i,j)=5*oldbuf(i,j)-oldbuf(i-1,j)-oldbuf(i+1,j)-oldbuf(i,j-1)-oldbuf(i,j+1); end end4、 實驗結(jié)果及分析實驗截圖如下:從上面的圖像可以看出:Robert梯度算子得出的圖像能夠得出原圖的大部分邊

16、緣細節(jié),灰度差別越大的地方結(jié)果越大,所以顯示時較為明亮。一些邊緣由于灰度差值較小,在得出的結(jié)果圖像中不容易分辨出來。Sobel算子得出的圖像則顯得明亮而粗壯。所有的邊緣細節(jié)均被顯示出來,特別是人物面部。由于其結(jié)果粗壯,面部細節(jié)顯得非常密集。Laplace算子則用以將圖像的邊緣、細節(jié)增強,通過結(jié)果結(jié)果可以看出,圖像的細節(jié)明顯比原來突出。但是這個方法存在的弊端是,在背景區(qū)域,結(jié)果圖像中有一些噪聲的圖樣也被加強了。實驗五 圖像方塊編碼(BTC)一、實驗目的通過編程實驗,掌握方塊編碼的基本方法及壓縮性能。二、實驗內(nèi)容編程實現(xiàn)子塊為n×n的方塊編碼基本方法,分別取n=2,4,8方塊尺寸進行方塊

17、編碼實驗,計算編碼后的均方誤差和壓縮比。3、 實驗方法及編程本實驗采用的方案為:(1)(2) (3) 程序的主體部分如下: function outbuf=BtcBlock(inbuf,n) % btcblock() 方塊編碼算法函數(shù) % inbuf 方塊數(shù)組 % n 方塊尺寸 % outbuf 存放處理后的方塊圖像 temp=0; temp0=0; temp1=0; q=0; m=n*n; inbuf=double(inbuf); for i=1:n for j=1:n temp=temp+inbuf(i,j); end end xt=temp/m; for i=1:n for j=1:n

18、if (inbuf(i,j)>=xt) q=q+1; temp1=temp1+inbuf(i,j); else temp0=temp0+inbuf(i,j); end end end if q=m a0=round(temp0/(m-q); end if q=0 a1=round(temp1/q); end for i=1:n for j=1:n if (inbuf(i,j)<xt) outbuf(i,j)=a0; else outbuf(i,j)=a1; end end end4、 實驗結(jié)果及分析實驗截圖如下:由實驗結(jié)果可以看出,窗口大小較小(如2×2)時,編碼圖像與原

19、圖像比幾乎相同,很難察覺出誤差。而當窗口較大(如8×8)時,在一些細節(jié)較多的部位就能看出有較明顯的方塊效應。同時,窗口越大,其對碼率的壓縮效果也越明顯。綜合考慮,當窗口大于8×8時,方塊效應會導致觀察上有一定的障礙,故選擇2×2或4×4較為合適。實驗六 圖像線性預測編碼(DPCM)一、實驗目的通過編程設計,掌握幀內(nèi)DPCM的編解碼方法(預測、量化)及其壓縮性能。二、實驗內(nèi)容:1、編制一維前值預測DPCM編解碼程序,預測系數(shù)取(1,0,0,0)。2、編制二維前值預測DPCM編解碼程序,預測系數(shù)取(1/2,1/4,0,1/4)。3、重建圖像f(i,j)與原圖

20、像f(i,j)的誤差圖像,用絕對值表示如下。式中的n為放大因子,以便觀察誤差的分布情況。本實驗采用15個量化分層的主觀量化器,其量化電平分別取(0,±5,±7,±10,±17,±28,±39,±52,±67)。三、實驗方法及編程圖像的線性預測編碼所運用的基本原理是基于二維圖像中相鄰圖像間存在著很強的相關性。假定當前待編碼的像素為,表示預測系數(shù),并用表示預測值,則的預測值為:預測誤差為:的恢復值為:(為的量化值)程序的主體部分如下:function newbuf=Dpcm_code(oldbuf,M,N,dim);%

21、 Dpcm_Code() “線性預測編解碼器”算法函數(shù)% oldbuf 原圖像數(shù)組% M,N 原圖像尺度% dim 選擇預測編碼維數(shù) % newbuf 存放處理后的圖像二維數(shù)組global newbuf; %定義全局變量for i=1:M for j=1:N pre_val=Predict_Value(i,j,N,dim); err=oldbuf(i,j)-pre_val; quan_err=Quant_Value(err); res_val=Restor_Value(quan_err,pre_val); newbuf(i,j)=Clip_Value(res_val); endendfunct

22、ion newbuf=Error_Code(M,N,dim);% Error_Code() “傳輸誤碼解碼器”算法函數(shù) % 參數(shù):% M,N 原圖像尺度% dim 選擇預測編碼維數(shù) % newbuf 存放處理后的圖像二維數(shù)組global newbuf;wrong=zeros(M,N);wrong(100,100)=120;for i=1:M for j=1:N pre_val=Predict_Value(i,j,N,dim); err=wrong(i,j); quan_err=Quant_Value(err); res_val=Restor_Value(quan_err,pre_val); n

23、ewbuf(i,j)=Clip_Value(res_val); endendfunction Pvalue=Predict_Value(row,col,N,dim)% This function is used to give predicted value as linear predictor.% The prediction formula is as follows:% 1_D DPCM: xi,j=128 if j=1% x'i,j-1 if j>1% 2_D DPCM: xi,j=128 if i=1,j=1% x' i,j-1 if i=1,j>1%

24、x'i-1,j if i>1,j=1 or N% 1/2x' i,j-1 if i>1,j>1% 1/8x'i-1,j-1 (Pirsch's predictor)% 1/4x'i-1,j % 1/8x'i-1,j+1global newbuf;switch dim case 1 if col=1 Pvalue=128; else Pvalue=newbuf(row,col-1); end case 2 if (row=1&&col=1) Pvalue=128; end if (row=1&&co

25、l>1) Pvalue=newbuf(row,col-1); end if (row>1&&col=1)|(row>1&&col=N) Pvalue=newbuf(row-1,col); end if (row>1&&col>1&&col<N) Pvalue=(1/2)*newbuf(row,col-1)+(1/4)*newbuf(row-1,col-1)+(1/4)*newbuf(row-1,col+1); endendfunction Qvalue=Quant_Value(err);% Th

26、is function is used as linear quantizer.The quantizer has totally% 15 quantization level :% 0,±5,±10,±17,±28,±39,±52,±67if (abs(err)<=2.5) lev=0; else if(abs(err)<=7.5) lev=5; else if(abs(err)<=13.5) lev=10; else if(abs(err)<=22.5) lev=17; else if(abs(e

27、rr)<=33.5) lev=28; else if(abs(err)<=45.5) lev=39; else if(abs(err)<=59.5) lev=52; else lev=67;Qvalue=lev;if (err=0) Qvalue=lev*(err/abs(err);endfunction Rvalue=Restor_Value(quan_err,pre_val)% This function is used to get restored value of DPCM% x=x+Quant_ErrorRvalue=quan_err+pre_val;functi

28、on Cvalue=Clip_Value(res_val)% This function is used to clip to restored value to 8_bit value% 0 if x<0% x'=255 if x>255% x otherwiseif (res_val<0) Cvalue=0;else if(res_val>255) Cvalue=255; else Cvalue=res_val; endend4、 實驗結(jié)果及分析 由實驗結(jié)果可以看出,一維和二維預測編碼圖像與原圖均十分接近,兩者的差別難以察覺。而從誤碼圖像中可以看出,當在某一

29、位置出現(xiàn)誤碼后,一維預測編碼會將誤差延續(xù)至整個行,顯得很明顯。二維預測編碼則與之不同,其將誤碼延續(xù)至其后的斜后方,并且隨著距離的增加迅速消失,總體而言,影響要小一些。兩相比較,可以體現(xiàn)出二維預測編碼的一些優(yōu)勢。實驗七名稱:JPEG壓縮編碼一、實驗目的(1) 掌握n×n子塊的DCT圖像變換及頻譜特點。(2) 熟悉JPEG基本系統(tǒng)的圖像編解碼方法。二、實驗內(nèi)容1、編程實現(xiàn)n×n子塊DCT變換的圖像頻譜顯示,8×8子塊DCT變換系數(shù)按“Z”(Zig-Zag)掃描圖像重建,計算圖像的均方根誤差RMSE,顯示誤差圖像和誤差直方圖。2、編程實現(xiàn)JPEG壓縮編碼,進行8

30、5;8子塊的DCT圖像變換,JPEG量化矩陣的量化與反量化,8×8子塊DCT的圖像重建,計算圖像的均方根誤差RMSE,顯示誤差圖像和誤差直方圖。三、實驗方法及編程: DCT頻譜系數(shù)在方塊中的分布有如下規(guī)律:直流系數(shù)位于左上角第一個的位置,且值較大。余下的為交流系數(shù),越向右下角系數(shù)的值一般越小,屬于高頻分量。在細節(jié)較多的區(qū)域,DCT頻譜系數(shù)整體顯得較亮,而在背景區(qū),除了直流系數(shù)和少數(shù)低頻系數(shù),其余都為0或很小的值,故而顯示為黑色。對DCT系數(shù)做反DCT變換則可復原出原圖。若反變換前對DCT系數(shù)進行取舍則可以降低碼率,但是,會對圖像質(zhì)量帶來一定的影響。 JPEG壓縮編碼的算法主要計算步驟

31、如下: (1)通過前向離散余弦變換減少圖像數(shù)據(jù)相關性。 (2)利用人眼的視覺特性對DCT系數(shù)進行量化。 (3)使用差分脈沖編碼調(diào)制對直流系數(shù)進行編碼。 (4)對交流系數(shù)進行“Z”形掃描,使用行程長度編碼對交流系數(shù)進行編碼。 (5)熵編碼器對上述描述符進行熵編碼,可以采用霍夫曼編碼,也可以采用算數(shù)編碼。程序的主體部分如下: function newbuf=DctBlock(oldbuf,Block) % DctBlock() DCT n*n塊頻譜函數(shù)% oldbuf 原圖像數(shù)組% Block DCT n*n當前塊選擇值% newbuf 存放處理后的圖像二維數(shù)組 oldbuf=double(old

32、buf);H=dctmtx(Block);newbuf=blkproc(oldbuf,Block Block,'P1*x*P2',H,H');newbuf=log(abs(newbuf);subplot(2,2,2);imshow(newbuf,); function newbuf=DctCode(oldbuf,DCTch) % DctCode() DCT 8*8 塊系數(shù)“Z”字掃描圖像壓縮函數(shù)% oldbuf 原圖像數(shù)組% DCTch DCT 8*8 塊“Z”掃描當前系數(shù)選擇值% newbuf 存放處理后的圖像二維數(shù)組zigzag=1 2 6 7 15 16 28 2

33、9 %設置Z掃描順序 3 5 8 14 17 27 30 43 4 9 13 18 26 31 42 44 10 12 19 25 32 41 45 54 11 20 24 33 40 46 53 55 21 23 34 39 47 52 56 61 22 35 38 48 51 57 60 62 36 37 49 50 58 59 63 64; tbuf=ones(8); %定義8*8全1數(shù)組maskbuf=tbuf .* zigzag<=DCTch; %根據(jù)當前DCTch值得到“Z”字掃描的二值掩模oldbuf=double(oldbuf);H=dctmtx(8);dctno=blk

34、proc(oldbuf,8 8,'P1*x*P2',H,H');newbuf=blkproc(dctno,8 8,'P1*(x.*P2)*P3',H',maskbuf,H);subplot(2,2,2);imshow(newbuf,);eimag(oldbuf,newbuf);function newbuf=JpegCode(oldbuf) % JpegCode() JPEG近似基準編碼% oldbuf 原圖像數(shù)組% newbuf 存放處理后的圖像二維數(shù)組 z = 16 11 10 16 24 40 51 61 12 12 14 19 26 58

35、 60 55 14 13 16 24 40 57 69 56 14 17 22 29 51 87 80 62 18 22 37 56 68 109 103 77 24 35 55 64 81 104 113 92 49 64 78 87 103 121 120 101 72 92 95 98 112 100 103 99 ; %標準亮度量化表 oldbuf=double(oldbuf); %原圖像數(shù)據(jù)轉(zhuǎn)換為雙精度H=dctmtx(8);dctno=blkproc(oldbuf,8 8,'P1*x*P2',H,H');jpegno=blkproc(dctno,8 8,'round(x

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論