PCA人臉識別理論基礎(chǔ)(附源碼)

上傳人:無*** 文檔編號:20558458 上傳時間:2021-03-29 格式:DOC 頁數(shù):12 大小:471KB
收藏 版權(quán)申訴 舉報 下載
PCA人臉識別理論基礎(chǔ)(附源碼)_第1頁
第1頁 / 共12頁
PCA人臉識別理論基礎(chǔ)(附源碼)_第2頁
第2頁 / 共12頁
PCA人臉識別理論基礎(chǔ)(附源碼)_第3頁
第3頁 / 共12頁

下載文檔到電腦,查找使用更方便

0 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《PCA人臉識別理論基礎(chǔ)(附源碼)》由會員分享,可在線閱讀,更多相關(guān)《PCA人臉識別理論基礎(chǔ)(附源碼)(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 1 PCA 與人臉識別及其理論基礎(chǔ) 1.1 問題描述[1] 對于一幅圖像可以看作一個由像素值組成的矩陣,也可以擴展開,看成一個矢量,如一 幅 N*N 象素的圖像可以視為長度為 N2 的矢量,這樣就認(rèn)為這幅圖像是位于 N2 維空間中的 一個點,這種圖像的矢量表示就是原始的圖像空間,但是這個空間僅是可以表示或者檢測圖 像的許多個空間中的一個。不管子空間的具體形式如何,這種方法用于圖像識別的基本思想 都是一樣的,首先選擇一個合適的子空間,圖像將被投影到這個子空間上,然后利用對圖像 的這種投影間的某種度量來確定圖像間的相似度,最常見的就是各種距離度量。 1.1.1 K-L

2、 變換[1] PCA 方法是由 Turk 和 Pentlad 提出來的,它的基礎(chǔ)就是 Karhunen-Loeve 變換(簡稱 KL 變換),是一種常用的正交變換。下面我們首先對 K-L 變換作一個簡單介紹: 假設(shè) X 為 n 維的隨機變量,X 可以用 n 個基向量的加權(quán)和來表示: n X = ∑αiφi i =1 式中: αi 是加權(quán)系數(shù), φi 是基向量,此式還可以用矩陣的形式表示: 1 2 n 1 2 n X = (φ ,φ ,",φ )(α ,α ,",α )T = Φα 取基向量為正交向量,即

3、 T ?1  i = j T 則系數(shù)向量為: Φ Φ j = ? 0 ?  i ≠ j ?Φ Φ j = I α = ΦT X 綜上所述,K-L 展開式的系數(shù)可用下列步驟求出: 步驟一 求隨即向量 X 的自相關(guān)矩陣 R = E ?? X T X ?? ,由于沒有類別信息的樣本集的 均值向 量,常常沒有意義,所以也可以把數(shù)據(jù)的協(xié)方差矩陣 ∑ K_L 坐標(biāo)系的產(chǎn)生矩陣,這里 是總體均值向量。 = E ??( x ? )( x ? )T ?? 作為 步驟二 求出自相關(guān)矩陣或協(xié)方差矩陣 R 的本征值

4、λi 和本征向量 φi , Φ = (φ1 ,φi ,",φn ) 步驟三 展開式系數(shù)即為 α = ΦT X K_L 變換的實質(zhì)是建立了一個新的坐標(biāo)系,將一個物體主軸沿特征矢量對齊的旋轉(zhuǎn) 變換,這個變換解除了原有數(shù)據(jù)向量的各個分量之間相關(guān)性,從而有可能去掉那些帶 有較少信息的坐標(biāo)系以達到降低特征空間維數(shù)的目的。 1.1.2 利用 PCA 進行人臉識別 完整的 PCA 人臉識別的應(yīng)用包括幾個步驟:人臉圖像預(yù)處理;讀入人臉庫,訓(xùn)練形成 特征子空間;把訓(xùn)練圖像和測試圖像投影到上一步驟中得到的子空間上;選擇一定 的距離函數(shù)進行識別。下面詳細描述整個過程(源碼見’fac

5、eRec.m’)。 1. 讀入人臉庫 歸一化人臉庫后,將庫中的每人選擇一定數(shù)量的圖像構(gòu)成訓(xùn)練集,其余構(gòu)成測試集。設(shè) 歸一化后的圖像是 n*m,按列相連就構(gòu)成 N=n*m 維矢量,可視為 N 維空間中的一個點,可 以通過 K-L 變換用一個低維子空間描述這個圖像。 2. 計算 K- L 變換的生成矩陣 所有訓(xùn)練樣本的協(xié)方差矩陣為(以下三個等價): ? ?1. T T ?  CA = ( M ∑ k =1 xk ixk ) / M ? mx imx ? A ?2. C = ( Ai AT ) / M (1) ? ? M

6、 ? ?3. C ?? A = ?∑ ? i =1 ( x ? m )( x ? m )T ? i x i x ? A = {φ1 ,φ2 , ...,φM } , φi = xi ? mx , mx 是平均人臉, M 訓(xùn)練人臉數(shù),協(xié)方差矩陣 CA 是 一個N*N的矩陣, N 是 xi 的維數(shù)。 A 為了方便計算特征值和特征向量,一般選用第2個公式。根據(jù)K - L 變換原理,我們所求 的新坐標(biāo)系即由矩陣 Ai AT 的非零特征值所對應(yīng)的特征向量組成。直接求N*N大小矩陣 C 的 特征值和正交歸一特征向量是很困難的,

7、 根據(jù)奇異值分解原理(見段落1.2.5和1.2.6),可以 通過求解 AT i A 的特征值和特征向量來獲得 AT i A 的特征值和特征向量,。 N *r 在計算得到 CA 的所有非零特征值 [λ0 , λ1 ,", λr ?1 ](從大到小排序,1 ≤ r < M )及其對應(yīng)的 單位正交特征向量 [u0 , u1 ,", ur ?1 ] 后,可以得到特征空間 U = [u0 , u1 ,", ur ?1 ] ∈? ,從而可以 計算一張圖片X在特征空間上的投影系數(shù)(也可以理解為X在空間U中的坐標(biāo)): 3. 識別 Y = U T * X ∈ ?r *1

8、(2) 利用公式(2),首先把所有訓(xùn)練圖片進行投影,然后對于測試圖片也進行同樣的投影, 采用判別函數(shù)對投影系數(shù)進行識別。 1.2 PCA 的理論基礎(chǔ) 1.2.1 投影[2] 設(shè) d 維樣本 x1 , x2 , " , xn ,以及一個 d 維基 w ,那么標(biāo)量: i i y = wT x 是相當(dāng)于 xi 在基上的坐標(biāo)值。如果 w = 1 , yi 就是把 xi 向方向為 w 的直線進行投影的結(jié)果, 可以從圖 1 看到。推廣之,如果有一組基(m 個)組成的空間 W = [w1 , w 2 ,", w m ] ,那么可

9、 T m*1 以得到 xi 在空間 W 上的坐標(biāo)為: Y = W x ∈ ? 。 i x 證明: wT x = w 又∵ θ y w ? x ? cosθ x ? cosθ = y , w =1 i ? wT x = y 圖 1 投影圖 進一步,表達式 w = m + ae 表示 w 是一條通過點 m ,方向為 e 的直線。 1.2.2 PCA 的作用及其統(tǒng)計特性[3] 采用 PCA 對原始數(shù)據(jù)的處理,通常有三個方面的作用—降維、相關(guān)性去除、概率估計。下 面分別進行介紹: ? 去除原始數(shù)據(jù)相關(guān)性 從統(tǒng)計

10、學(xué)上 講, E {[ X ? E( X )][Y ? E(Y )]} 稱為隨 機變量 X 與 Y 協(xié)方差,記 為 Cov( X , Y ) 。令 ρ XY = Cov( X , Y ) ,稱為隨機變量 X 與 Y 的相關(guān)系數(shù)。 ρ XY = 1 則 X 與 D( X ) D(Y ) Y 是相關(guān)的, ρ XY = 0 ,則 X 與 Y 是不相關(guān)的。 AAT 命題 1 對于矩陣 A 來說,如果 是一個對角陣,那么 A 中的向量是非相關(guān)的。 由 PCA 處理的人臉庫數(shù)據(jù)的非相關(guān)性可以從兩點進行說明。 (1) 基底的非相

11、關(guān)性 T 特征空間基 U = [u0 , u1 ,", ur ?1 ] 是非相關(guān)的,即 UU = I 。 (2) 投影系數(shù)的非相關(guān)性 T 由 SVD 可知 A = {φ1 ,φ2 ,...,φM } = U ΛV  , 其中 φi = xi ? mx , mx 是平均人臉。根 據(jù)公式(2)可以把 A 映射到特征空間上,得到: 關(guān)的,可由下面得到證明: B = U T * A ,其中 B 是非相 Y 的協(xié)方差矩陣為: C  = 1 BBT =  1 U T AAT U =  1 Λ2 

12、 (3) B M M M 由命題 1 可知,B 是非相關(guān)的。 ? 統(tǒng)計參數(shù)(均值及方差) 均值即 mx --平均人臉。 命題 2 隨機變量方差越大,包含的信息越多,當(dāng)一個變量方差為 0 時,該變量為常數(shù),不 含任何信息。 用 PCA 計算主分量,就是尋找一組向量,使得原始數(shù)據(jù) A = {φ1 ,φ2 ,...,φM } 在這組 向量上的投影值的方差盡可能大。最大方差對應(yīng)的向量就是第一主成份,以后遞推就是 第二主成份,第三主成份……。 用 PCA 計算主分量就是求原始數(shù)據(jù) A = {φ1 ,φ2 ,...,φM }(其中 φi = xi ? mx )協(xié)方差

13、 T 矩陣的特征向量 U = [u0 , u1 ,", ur ?1 ] ,由公式(3)可知,P = ui A = ( p1 , p2 ,", pm ) 是 A 在 ui 上的投影值,其中 P 的方差就是 ui 對應(yīng)的特征值 λi ,可以理解為: 命題 3 所有原始數(shù)據(jù)在主分量 ui 上的投影值方差為 λi 。 ? 降維 如果在原始空間表示一幅 n*m 大小的圖片 X,那么需要一個 N=n*m 維矢量,但是 當(dāng)用公式(2)把它映射到特征空間后,只需要一個 r*1 維的向量就可。 另外,由命題 2 可知,可以根據(jù)方差的大小來判斷特征向量的重要性。由 ORL

14、 圖片 庫的 200 個人臉計算得到的特征值呈圖 2 分布,可知特征向量重要性呈指數(shù)下降,據(jù)此 可以只選用前面幾個重要的特征向量來構(gòu)建特征空間。 通過計算,前 71 個特征值占了 90.17%,因此 r 可以取 71 而非 200,從而達到進一 步降維的作用。 圖 2 特征值的分布 1.2.3 特征臉 U = [u0 , u1 ,", ur ?1 ] 中的每一個單位向量都構(gòu)成一個特征臉,如圖 3 所示。由這些特征臉 所張成的空間稱為特征臉子空間,需要注意對于正交基的選擇的不同考慮,對應(yīng)較大特 征值的特征向量(正交基)也稱主分

15、量,用于表示人臉的大體形狀,而對應(yīng)于較小特征值 的特征向量則用于描述人臉的具體細節(jié),或者從頻域來看, 主分量表 示了人臉 的低頻部 分,而此 分量則描 述了人臉 的高頻部 分( 源 碼 見’EigenFace.m’)。 1 2 10 50 70 average 圖 3 特征臉,分別是第 1,2,10,50,70 分量,最后一張是平均臉。 1.2.4 圖片重建 X 要進行圖片 X 的重建,首先對 X 投影到特征空間上,得到系數(shù) Y = U T ( X ? m ) ,然后選用一 部分系數(shù)與特征向量進行原始圖片的重建: X = mX + U

16、 (1 : t ) *Y (1 : t ) ,其中 1: t 表示取前 t 個 元素。(見’reconstruct.m’) 在圖 4 中,其中前兩張圖片來自訓(xùn)練樣本,第 3 張來自測試樣本,可以看到對于訓(xùn)練樣本, PCA 系數(shù)可以對圖片實現(xiàn)很好重建,而對于訓(xùn)練樣本以外的圖片重建效果很差。 Original 15 50 100 150 199 圖 4 人臉圖像重建。第列張圖

17、片是輸入原始圖,其它列圖片是重建結(jié)果,數(shù)字表示 t 的數(shù)目。 1.2.5 奇異值分解(SVD)[1] 設(shè) A 是秩為 r 的 m*n(m>>n)維矩陣,則存在兩個正交矩陣和一個對角陣: T A = [a1 , a2 ,", ar ] = U ΛV T 其中 U = [u0 , u1 ,", ur ?1 ] , V = [v0 , v1 ,", vr ?1 ] , Λ = diag (λ0 , λ1 ,", λr ?1 ) ,且 UU = I , VV T = I , 2 T m*m T n*n T T λi 呈降序排列。其

18、中 λi 為 AA ∈? 和 A A ∈ ? 的非零特征值,ui 和 vi 分別是 AA 和 A A i 對應(yīng)于 λ 2 的特征向量??傻靡粋€推論: U = AV Λ?1 可以計算 AT A 的特征值 λ 2 及相應(yīng)的正交歸一特征向量 v 后,可由推論知 AAT 的正交歸一特 i i 征向量  λ i u = 1 i i  Avi 注意,協(xié)方差矩陣 CA = ( Ai AT ) / M 的特征值為: λ 2 / M 。 1.2.6 利用小矩陣計算大矩陣特征向量

19、 高階矩陣的特征向量可以轉(zhuǎn)化為求低階矩陣的特征向量: 設(shè):A 是秩為 r 的 m*n(m>>n)維矩陣, CX = AAT ∈?m*m ,是一個矩陣,現(xiàn)在要求 C 的 X 特征值及特 征向量,可 通過先求小 矩陣 AT A ∈ ?n*n 的特征 向量 [v , v ,", v ] 和特征 值 0 1 r ?1 [λ0 , λ1 ,", λr ?1 ] ,兩者之間有以下關(guān)系: i i i AT A ? v = λ ? v i i i ?左?乘?A → AAT ( A ? v ) = λ (

20、A ? v ) 顯然, C = AAT 的特征向量是 A ? v (注意沒有單位化), [λ , λ ,", λ ] 亦為其特征值。 X i 0 1 r ?1 結(jié)論:1.2.5 與 1.2.6 的方法計算協(xié)方差矩陣的特征向量,特征值的結(jié)果是一致的,只是要 注意 1.2.5 中的特征值要除以 M,1.2.6 中的特征向量要單位化。 1.2.7 圖片歸一化 圖片標(biāo)準(zhǔn)化通常是一個整體概念,要求把圖片歸一到均值為 0,方差為 1 下情況下。 這個概念類似于一般正態(tài)分布向標(biāo)準(zhǔn)正態(tài)分布的轉(zhuǎn)化: 命題 4 若 X ~ N

21、(,σ 2 ) ,則 Z = X ? ~ N (0,1) σ 所以要對一組圖片中的一張 X i 進行歸一化(標(biāo)準(zhǔn)化),只需要減去均值,除以方差就可以了。 M T 均值 mX = ∑ X i i M ,方差為 D = E ??( X ? m X )( X ? mX ) ?? 1.3 參考文獻 [1] 鄧楠, 基于主成份分析的人臉識別, 西北大學(xué)碩士學(xué)位論文,2006.06 [2] R.O. Duda, P.E. Hart, and D.G. Stork, Pattern Classification, seconded. John

22、Wiley & Sons, 2001. [3] Sami Romdhani .Face Image Analysis using a Multiple Feature Fitting Strategy. PhD Thesis, University of Basel, Switzerland, January 2005. [4] Sami Romdhani .FACE RECOGNITION USING PRINCIPAL COMPONENTS ANALYSIS. 1.4 附錄—matlab 源碼 1.4.1 人臉識別 % FaceRec.m % PC

23、A 人臉識別修訂版,識別率 88% % calc xmean,sigma and its eigen decomposition allsamples=[];%所有訓(xùn)練圖像 for i=1:40 for j=1:5 a=imread(strcat(e:\ORL\s,num2str(i),\,num2str(j),.jpg)); % imshow(a); b=a(1:112*92); % b 是行矢量 1N,其中 N=10304,提取順序是先列后行,即從上 到下,從左到右 b=double(b); allsamples=[allsamples; b]; % allsam

24、ples 是一個 M * N 矩陣,allsamples 中每一行數(shù) 據(jù)代表一張圖片,其中 M=200 end end samplemean=mean(allsamples); % 平均圖片,1 N for i=1:200 xmean(i,:)=allsamples(i,:)-samplemean; % xmean 是一個 M N 矩陣,xmean 每一行保存的數(shù)據(jù)是“每個圖片數(shù)據(jù)-平均圖片” end; % 獲取特征值及特征向量 sigma=xmean*xmean; % M * M 階矩陣 [v d]=eig(sigma); d1=diag(d);

25、 % 按特征值大小以降序排列 dsort = flipud(d1); vsort = fliplr(v); %以下選擇 90%的能量 dsum = sum(dsort); dsum_extract = 0; p = 0; while( dsum_extract/dsum < 0.9) p = p + 1; dsum_extract = sum(dsort(1:p)); i=1; end % (訓(xùn)練階段)計算特征臉形成的坐標(biāo)系 base = xmean * vsort(:,1:p) * diag(dsort(1:p).^(-1/2));

26、 % base 是 Np 階矩陣,除以 dsort(i)^(1/2)是對人臉圖像的標(biāo)準(zhǔn)化(使其方差為 1) % 詳見《基于 PCA 的人臉識別算法研究》p31 % xmean * vsort(:,i)是小矩陣的特征向量向大矩陣特征向量轉(zhuǎn)換的過程 %while (i<=p && dsort(i)>0) % base(:,i) = dsort(i)^(-1/2) * xmean * vsort(:,i); % base 是 Np 階矩陣,除以 dsort(i)^(1/2) 是對人臉圖像的標(biāo)準(zhǔn)化(使其方差為 1) % 詳見《基于 PCA 的人臉識別算法研究》p3

27、1 % i = i + 1; % xmean * vsort(:,i)是小矩陣的特征向量向大矩陣特 征向量轉(zhuǎn)換的過程 %end % 以下兩行 add by gongxun 將訓(xùn)練樣本對坐標(biāo)系上進行投影,得到一個 M*p 階矩陣 allcoor allcoor = allsamples * base; % allcoor 里面是每張訓(xùn)練人臉圖片在 M*p 子空間中的一個點, 即在子空間中的組合系數(shù), accu = 0; % 下面的人臉識別過程中就是利用這些組合系數(shù)來進行識別 % 測試過程 for i=1:40 for

28、 j=6:10 %讀入 40 x 5 副測試圖像 a=imread(strcat(e:\ORL\s,num2str(i),\,num2str(j),.jpg)); b=a(1:10304); b=double(b); tcoor= b * base; %計算坐標(biāo),是 1p 階矩陣 for k=1:200 mdist(k)=norm(tcoor-allcoor(k,:)); end; %三階近鄰 [dist,index2]=sort(mdist); class1=floor( (index2(1)-1)/5 )+1; class2=floor((index2(2)-1)/5)+

29、1; class3=floor((index2(3)-1)/5)+1; if class1~=class2 && class2~=class3 class=class1; elseif class1==class2 class=class1; elseif class2==class3 class=class2; end; if class==i accu=accu+1; end;  end; end; accuracy=accu/200 %輸出識別率 1.4.2 特征人臉 % eigface.m function []

30、= eigface() % calc xmean,sigma and its eigen decomposition allsamples=[];%所有訓(xùn)練圖像 for i=1:40 for j=1:5 a=imread(strcat(e:\ORL\s,num2str(i),\,num2str(j),.jpg)); % imshow(a); b=a(1:112*92); % b 是行矢量 1N,其中 N=10304,提取順序是先列后行,即從上 到下,從左到右 b=double(b); allsamples=[allsamples; b]; % allsamples

31、 是一個 M * N 矩陣,allsamples 中每一行數(shù) 據(jù)代表一張圖片,其中 M=200 end end samplemean=mean(allsamples); % 平均圖片,1 N for i=1:200 xmean(i,:)=allsamples(i,:)-samplemean; % xmean 是一個 M N 矩陣,xmean 每一行保存的數(shù)據(jù)是“每個圖片數(shù)據(jù)-平均圖片” end; % 獲取特征值及特征向量 sigma=xmean*xmean; % M * M 階矩陣 [v d]=eig(sigma); d1=diag(d); ds

32、ort = flipud(d1); vsort = fliplr(v); %以下選擇 90%的能量 dsum = sum(dsort); dsum_extract = 0; p = 0; while( dsum_extract/dsum < 0.9) p = p + 1; dsum_extract = sum(dsort(1:p)); end p = 199; % (訓(xùn)練階段)計算特征臉形成的坐標(biāo)系 %while (i<=p && dsort(i)>0) % base(:,i) = dsort(i)^(-1/2) * xmean * vsort(:,

33、i); % base 是 Np 階矩陣,除以 dsort(i)^(1/2)是對人臉圖像的標(biāo)準(zhǔn)化,詳見《基于 PCA 的人臉識別算法研究》p31 % i = i + 1; % xmean * vsort(:,i)是小矩陣的特征向量向大矩 陣特征向量轉(zhuǎn)換的過程 %end base = xmean * vsort(:,1:p) * diag(dsort(1:p).^(-1/2)); % 生成特征臉 for (k=1:p), temp = reshape(base(:,k), 112,92); newpath = [d:\test\ int2str(k) .jpg]; imw

34、rite(mat2gray(temp), newpath); end avg = reshape(samplemean, 112,92); imwrite(mat2gray(avg), d:\test\average.jpg); % 將模型保存 save(e:\ORL\model.mat, base, samplemean); 1.4.3 人臉重建 % Reconstruct.m function [] = reconstruct() % 計算新圖片在特征子空間中的系數(shù) img = D:\test2\10.jpg a=imread(img);

35、 b=a(1:112*92); % b 是行矢量 1N,其中 N=10304,提取順序是先列后行,即從上到下, 從左到右 b=double(b); b=b-samplemean; c = b * base; % c 是圖片 a 在子空間中的系數(shù), 是 1*p 行矢量 % 根據(jù)特征系數(shù)及特征臉重建圖 % 前 15 個 t = 15; temp = base(:,1:t) * c(1:t); temp = temp + samplemean; imwrite(mat2gray(reshape(temp, 112,92)),d:\test2\t1.jp

36、g); % 前 50 個 t = 50; temp = base(:,1:t) * c(1:t); temp = temp + samplemean; imwrite(mat2gray(reshape(temp, 112,92)),d:\test2\t2.jpg); % 前 100 個 t = 100; temp = base(:,1:t) * c(1:t); temp = temp + samplemean; imwrite(mat2gray(reshape(temp, 112,92)),d:\test2\t3.jpg); % 前 150 個 t = 150; temp = base(:,1:t) * c(1:t); temp = temp + samplemean; imwrite(mat2gray(reshape(temp, 112,92)),d:\test2\t4.jpg); % 前 199 個 t = 199; temp = base(:,1:t) * c(1:t); temp = temp + samplemean; imwrite(mat2gray(reshape(temp, 112,92)),d:\test2\t5.jpg);

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!