ICA人臉識別算法實例matlab源碼_第1頁
ICA人臉識別算法實例matlab源碼_第2頁
ICA人臉識別算法實例matlab源碼_第3頁
全文預覽已結束

下載本文檔

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

文檔簡介

1、ICA人臉識別算法實例matlab源碼.txt32因為愛心,流浪的人們才能重返家園;因為愛心,疲憊的靈魂才能活力如初??释麗坌?,如同星光渴望彼此輝映;渴望愛心,如同世紀之歌渴望永遠被唱下去。% 初始化 % clc;clear all;close all; % 讀入原始圖像,混合,并輸出混合圖像 % % 讀入混合前的原始圖片并顯示 t=0:1/100:9; I1=sin(t); I2=randn(1,901); I3=square(4*t); subplot(4,3,1),plot(I1),title(輸入信號1), subplot(4,3,2),plot(I2),title(輸入信號2), s

2、ubplot(4,3,3),plot(I3),title(輸入信號3), % 將其組成矩陣 S=I1;I2;I3; % 圖片個數(shù)即為變量數(shù),圖片的像素數(shù)即為采樣數(shù) % 因此S_all是一個變量個數(shù)采樣個數(shù)的矩陣 Sweight=randn(size(S,1); % 取一隨機矩陣,作為信號混合的權矩陣 MixedS=Sweight*S; % 得到三個混合信號矩陣 % 將混合矩陣重新排列并輸出 subplot(4,3,4),plot(MixedS(1,:),title(混合信號1), subplot(4,3,5),plot(MixedS(2,:),title(混合信號2), subplot(4,3

3、,6),plot(MixedS(3,:),title(混合信號3), MixedS_bak=MixedS; % 將混合后的數(shù)據(jù)備份,以便在恢復時直接調用 % 標準化 % MixedS_mean=zeros(3,1); for i=1:3 MixedS_mean(i)=mean(MixedS(i,:); end % 計算MixedS的均值 for i=1:3 for j=1:size(MixedS,2) MixedS(i,j)=MixedS(i,j)-MixedS_mean(i); end end % 白化 % MixedS_cov=cov(MixedS); % cov為求協(xié)方差的函數(shù) E,D=

4、eig(MixedS_cov); % 對圖片矩陣的協(xié)方差函數(shù)進行特征值分解 Q=inv(sqrt(D)*(E); % Q為白化矩陣 MixedS_white=Q*MixedS; % MixedS_white為白化后的圖片矩陣 IsI=cov(MixedS_white); % IsI應為單位陣 %FASTICA算法 % X=MixedS_white; % 以下算法將對X進行操作 VariableNum,SampleNum=size(X); numofIC=VariableNum; % 在此應用中,獨立元個數(shù)等于變量個數(shù) B=zeros(numofIC,VariableNum); % 初始化列向量

5、w的寄存矩陣,B=b1 b2 . bd for r=1:numofIC % 迭代求取每一個獨立元 i=1;maxIterationsNum=100; % 設置最大迭代次數(shù)(即對于每個獨立分量而言迭代均不超過此次數(shù)) IterationsNum=0; b=rand(numofIC,1)-.5; % 隨機設置b初值 b=b/norm(b); % 對b標準化 while i=maxIterationsNum+1 if i = maxIterationsNum % 循環(huán)結束處理 fprintf(n第%d分量在%d次迭代內并不收斂。, r,maxIterationsNum); break; end bO

6、ld=b; a2=1; u=1; t=X*b; g=(exp(2.*t)-1)./(exp(2.*t)+1); dg=4*exp(2.*t)./(exp(2.*t)+1).2; b=(1-u)*t*g*b+u*X*g)/SampleNum-mean(dg)*b; % 核心公式,參見理論部分公式2.52 b=b-B*B*b; % 對b正交化 b=b/norm(b); if abs(abs(b*bOld)-1)1e-9 % 如果收斂,則保存b B(:,r)=b; break; end i=i+1; end end % 數(shù)據(jù)復原并構圖 % ICAedS=B*Q*MixedS_bak; % 參見理論部分公式2.55 % 將混合矩陣重新排列并輸出 subplot(4,3,7),plot(ICAedS(1,:),title(ICA輸出信號1), subplot(4,3,8),plot(ICAedS(2,:),title(ICA輸出信號2), subplot(4,3,9),plot(ICAedS(3,:),tit

溫馨提示

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

評論

0/150

提交評論