matlab人臉簽到課程設計
『壹』 matlab做一個人臉識別頁面
逛逛論壇吧,估計有的專。屬http://www.ilovematlab.cn/forum.php
『貳』 用Matlab實現的人臉定位,急,期待高手解答
大概看了一下,這個程序編得一團糟,肯定有問題~~~~看完頭兩個IF我已經瘋了。編演算法人的思路我說一下你就明白了。
讀進一幅圖,二進制化,也就是說比如200X120的矩陣,只有黑白,要麼1,要麼0.
用網格把它打成10X10的格子圖,每格就有個20X12的小矩陣。然後
for i = 1:10
...
for j = 1:10
這兩個FOR就是對這100個格子逐個進行分析,從格子1,一直到格子100,但實際上後面就發現是對對這100個格子的邊緣格子進行分析 ,中間不動(就是假設 邊緣最沒用,臉不會出現在那兒,能扔就扔掉)
if (y2<=c | y2>=9*c) | (x1==1 | x2==r*10) % 保證是在邊緣的格子裡面
loc=find(BW(x1:x2, y1:y2)==0); % 這個格子(矩陣)里,有多少值為0的元素,即為背景元素,沒用的,不是人臉。(所以這段 程序開頭寫了「將背景部分弱化」。
[o p]=size(loc); % 噢,找到了這么多個0
pr=o*100/s;
% 用pr值 來判斷是否應該將這整個格子全部值 賦為0,比如一個格子裡面只有幾個1(比如幾根頭發),其它全是無用的信息0,那麼乾脆就把這個格子全部變成0,免得影響判斷。pr的定義是有問題的,因為o永遠小於s(你可以自己算算),所以所有的邊緣格都會強行被賦為0,就是「全黑了」。
if pr<=100
BW(x1:x2, y1:y2)=0;
r1=x1;r2=x2;s1=y1;s2=y2; % 這句話P用沒有,整個程序前後都沒出現r1,r2,s1,s2,在這兒定義有什麼用?
pr1=0; %同樣是句P話,其他地方都沒出現過pr1
end
end
y1=y1+c;
y2=y2+c;
end
x1=x1+r;
x2=x2+r;
然後這幾句就是格子賦值 結束,繼續前進,找下一個格子唄,又回到初始。。。
所以,上面這段程序,什麼人臉不人臉檢測的,就是把邊緣全部變黑而己……
所以下面我也看不進去了。。。
補充:
還是說完吧,後面一段程序,其實就是把所有變黑的邊緣的邊界給勾了出來。沒有任何新東西。。。
所以你這段程序,就是先把邊緣全部抹黑,然後勾出這個邊緣的邊界,畫出來,就行了。沒有任何「人臉定位」的東西,就是假設人臉在圖的中間,邊緣沒有任何信息。。。僅此而己~~~
『叄』 使用matlab,如何設計人臉的識別,一般的步驟是
1、設來計流程:清除環境變數 人臉特徵自向量提取 訓練集/測試集產生 創建神經網路 訓練網路
模擬測試 結果顯示
2、提取特徵向量?
一般提取左方' '左前方' '前方' '右前方' '右方的特徵
3、只有訓練過了 輸入一張圖片 才能提取特徵 進行比對啊 才知道人臉的朝向
『肆』 人臉識別中,如何用MATLAB編程將許多人臉圖像一次讀入,並且每一列代表一幅圖像,謝謝
假設圖像名為:Face001.tif, Face002.tif, Face003.tif ...
N 為總圖像數
你是指將二維圖像壓縮成一列來表示?版圖像是灰度權圖還是彩色圖?
大致如下:
Temp = [];
for i = 1:N
fileName = sprintf('Face00%d.tif', i);
I = imread(fileName);
Temp = [Temp; I(:)];
end
『伍』 matlab人臉朝向識別的設計流程是怎麼提取特徵向量為什麼需要神經網路訓練
1、設計流程:清除復環境變數 人臉制特徵向量提取 訓練集/測試集產生 創建神經網路 訓練網路
模擬測試 結果顯示
2、提取特徵向量??
一般提取左方' '左前方' '前方' '右前方' '右方的特徵
3、只有訓練過了 輸入一張圖片 才能提取特徵 進行比對啊 才知道人臉的朝向
『陸』 MATLAB人臉面部表情識別畢業設計,
先看中文論文,再看英文論文
『柒』 基於matlab簡單的特徵臉的人臉識別程序
這是我寫的程序,參照《模式識別》張學工第9章。
a1=imread('a1.jpg');
a2=imread('a2.jpg');
b1=imread('b1.jpg');
b2=imread('b2.jpg');
a1=rgb2gray(a1);
a2=rgb2gray(a2);
b1=rgb2gray(b1);
b2=rgb2gray(b2);
figure,imshow(a1)
figure,imshow(a2)
figure,imshow(b1)
figure,imshow(b2)
a1=double(a1);
a2=double(a2);
b1=double(b1);
b2=double(b2);
a1_lie=a1(:);
a2_lie=a2(:);
b1_lie=b1(:);
b2_lie=b2(:);
c=cat(1,a1_lie',a2_lie',b1_lie',b2_lie');
c_mean=mean(c);
X=[a1_lie-c_mean',a2_lie-c_mean',b1_lie-c_mean',b2_lie-c_mean'];
R=X'*X; % R是4×4的矩陣
[p,q]=eig(R);
u=diag(q); % u是4×1的列向量
u=flipud(u); % flipud(u)實現矩陣的上下翻轉, u是4×1的列向量
v=fliplr(p); % fliplr(p)實現矩陣的左右翻轉,v是4×4的矩陣
e=zeros(36000,4);
for m=1:3
e(:,m)=X*v(:,m)./(u(m)^(-0.5)); % 參見《模式識別》P226公式9-18
end
p1=zeros(200,180);
p2=zeros(200,180);
p3=zeros(200,180);
for m=1:36000
p1(m)=e(m);
p2(m)=e(m+36000);
p3(m)=e(m+72000);
end
p1=mat2gray(p1);
p2=mat2gray(p2);
p3=mat2gray(p3);
figure,imshow(p1) % 顯示第1特徵臉
figure,imshow(p2) % 顯示第2特徵臉
figure,imshow(p3) % 顯示第3特徵臉
new=c*e(:,1:3); %分別計算4個訓練樣本分別在第1、第2、第3、特徵臉上的投影
p1=imread('p_test1.jpg'); %讀入一個測試樣本
p1=rgb2gray(p1);
figure,imshow(p1);
p2=double(p1(:));
test=p2'*e(:,1:3);%計算測試樣本在3個特徵臉上的投影
error=zeros(4,1);
for m=1:4
error(m)=norm((new(m,:)-test));
end
[distence,index]=sort(error); %將列向量error中的數據按從小到大排列
if index(1)==1
result=1;
elseif index(1)==2
result=1;
elseif index(1)==3
result=2;
elseif index(1)==4
result=2;
end
result %result為1時表示測試樣本屬於第1個人,為2時表示測試樣本屬於第2個人
『捌』 基於人臉識別的MATLAB程序
汽車牌照自動識別系統 http://www.matlabsky.com/viewthread.php?tid=95&highlight=%CA%B6%B1%F0
基於MATLAB 圖像處理的汽車牌照識別系統http://www.matlabsky.com/viewthread.php?tid=79&highlight=%CA%B6%B1%F0
圖像預處理——字元識別實例(I&II)http://www.matlabsky.com/viewthread.php?tid=498&highlight=%CA%B6%B1%F0
Face Detection System(基於神經網路的臉部識別系統)http://www.matlabsky.com/viewthread.php?tid=499&highlight=%CA%B6%B1%F0
基於神經網路的模式識別Matlab實例http://www.matlabsky.com/viewthread.php?tid=500&highlight=%CA%B6%B1%F0
基於神經網路的字元識別 http://www.matlabsky.com/viewthread.php?tid=504&highlight=%CA%B6%B1%F0
Ian Nabney《Pattern analysis toolbox》(Netlab模式識別工具箱) http://www.matlabsky.com/viewthread.php?tid=506&highlight=%CA%B6%B1%F0
模式識別系統演算法 http://www.matlabsky.com/viewthread.php?tid=556&highlight=%CA%B6%B1%F0
趙輝《Visual+C++_MATLAB圖像處理與識別實用案例精選》 http://www.matlabsky.com/viewthread.php?tid=575&highlight=%CA%B6%B1%F0
『玖』 人臉識別得matlab程序
1邊緣值為零才能更襲好的識別人臉的輪廓
2識別原理很簡單,就是你事先照完相,你的相片已經儲存在裡面了,你的臉經過和相片對比,然後系統就做出識別,對比臉部特徵一樣就合格了!程序就批准,你的識別確認就成功了。就是這樣的原理
3因為只有這樣的解析度才是最佳的,只有在這種比值下,系統才能更好的運作起來,才能達到最好的效果
希望這個答案你滿意!