基於MATLAB的人臉識別演算法的研究

2022-08-23 10:27:12 字數 1867 閱讀 6744

基於matlab的人臉識別演算法的研究

現如今機器視覺越來越盛行,從智慧型交通系統的車輛識別,車牌識別到交通標牌的識別;從智慧型手機的人臉識別的性別識別;如今無人駕駛汽車更是應用了大量的機器識別的是演算法在裡邊。

今天我們將從matlab的影象識別說起,後邊將陸續講解車牌識別,交通標牌識別等,並努力將它移植到fpga裡邊做到高速實時處理。

matlab人臉識別的處理過程:

% 讀入影象

%低通濾波,去除雜訊

%顏色空間的轉換

%畫素值概率的計算

%影象的腐蝕

%影象的膨脹

%根據填充率,去除手腳等非人臉部分

%根據面積比去除一些較小的非人臉部分

%根據膚色區域的長寬比出去一些非人臉部分

10.%圈出人臉

部分原始碼:

clear all

close all

clc%%%%%%%%%%%%%%%%%%%%%%%%%%%%%讀入影象

x= imread('boy1.bmp');

xx=x;

figure,

imshow(x);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 低通濾波,去除雜訊

fr=xx(:,:,1);

fg=xx(:,:,2);

fb=xx(:,:,3);

f=1/9*ones(3);%µíí¨â벨æ÷£¬âë³ý¸ßæµôëéù

filtered_fr=imfilter(fr,f);

filtered_fg=imfilter(fg,f);

filtered_fb=imfilter(fb,f);

x_filtered=cat(3,filtered_fr,filtered_fg,filtered_fb);

figure,

imshow(x_filtered);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 顏色空間的轉換

i=rgb2ycbcr(x);        %ñõé«¿õ¼äת»»

gray=rgb2gray(x);

figure,

imshow(gray);

實驗結果:

原圖

低通濾波

顏色空間轉換rgbtoycbcr

轉化為灰度影象

概率計算轉換為二值影象

腐蝕膨脹

經過7,8,9,10步驟人臉識別成功

此**經過大量實驗基本可以實現人臉識別。

還需進一步完善。

matlab 簡單的人臉識別

如下 clc clear all close all 載入影象 endbw im2bw i,graythresh i 二值化 figure subplot 2,3,1 imshow img title 原影象 fontweight bold subplot 2,3,2 imshow i title ...

基於opencv的人臉識別

1前言參考的是 這篇用的是dlib的對齊還加了mask。本文方法 人臉檢測 shiqiyu libfacedetection opencv提取ptr類 2 facedetect.h include include include include include facedetect dll.h us...

基於Opencv的人臉識別

要進行人臉的識別的訓練,首先我們要對openv中人臉識別類facerecognizer要有乙個了解,可以參考這個部落格對facerecognizer 有乙個了解 這個部落格對人臉的訓練解釋的很好,具體怎麼訓練可以閱讀這個部落格。關於人臉識別 我們有一下兩個步驟 1.利用pca變換的人臉識別,對人臉進...