Các kết quả thực nghiệm thuật toán với phương pháp đề xuất trên trong thời gian thực với các máy ảnh với các cơ sở dữ liệu ảnh khác nhau lần lượt được thể hiện trong hình.
Mô tả các cơ sở dữ liệu dùng cho thực nghiệm
Hiện nay hầu hết tất cả các phương pháp xử lý nhận dạng mặt người đều được thực nghiệm trên các cơ sở dữ liệu mặt người như (ORL, BioID và FERET, AllFaces [36]). cơ sở dữ liệu này không hoàn toàn thỏa mãn các tiêu chuẩn của ảnh BIOMETRIC tuy nhiên nó lại cho phép kiểm tra được các yêu cầu cần thiết của các phương pháp như : đánh giá xem các phương pháp có làm việc được với các cơ sở dữ liệu có kích thước cũng như format không chuẩn hay không, có làm việc chính xác đối với các cơ sở dữ liệu ảnh có chất lượng không tốt hay không và dùng để thống kê độ chính xác…Chính vì thế trong luận văn này chúng tôi cũng sẽ sử dụng các cơ sở dữ liệu này để đánh giá phương pháp xác định vị trí mắt người.
Cơ sở dữ liệu FERET [36] được sử dụng rộng dãi trong thử nghiệm các bài toán
nhận dạng mặt người, trong luận văn này chúng tôi sử dụng để thử nghiệm thuật toán xác định vị trí mắt người, kích cỡ của ảnh 224 x 184 px dạng jpg, chế độ GRAY và MÀU. Ví dụ được biểu diễn dưới hình 3.11.
FERET
COLOR
FERET GRAY
Những hình ảnh trong cơ sở dữ liệu FERET có các đặc tính sau: - Thay đổi đáng kể trong độ sáng và hình ảnh nền;
- Kích thước khuôn mặt khác nhau (thay đổi gấp 4 lần);
- Thay đổi các kiểu tóc và khuôn mặt của người, cũng như hướng quay của đầu; - Thay đổi tuổi tác và thay đổi quần áo;
- Sự hiện diện của kính;.
Sử dụng CSDL này trong các thí nghiệm sẽ kiểm chứng được độ chính xác của hệ thống ví CSDL gần nhất với điều kiện thực tế.
FERET COLOR
Hình 3.12. Kết quả phát hiện mặt người trong cơ sở dữ liệu FERET COLOR
Trong số 797 hình ảnh của 50 hình ảnh chính xác phát hiện khuôn mặt với cơ sở dữ liệu FERET COLOR có tỷ lệ lỗi xấp xỉ 6,2%.
KẾT LUẬN
Những vấn đề đã được giải quyết trong luận văn
1- Luận văn đã nêu được tầm quan trọng của việc xác định vị trí khuôn mặt đối với hệ thống nhận dạng mặt người nói riêng cũng như trong các hệ thống sinh trắc học nói chung
2- Luận văn đánh giá các thuật toán phương pháp xác định vị trí mặt người đã và đang được sử dụng, cũng như đã đưa ra được các đánh giá ưu điểm nhược điểm của các phương pháp
3- Trong chương 3 đã đưa ra và xây dựng thuật toán xác định vị trí mặt người của mình, cũng như đưa ra được 1 bài toán có ý nghĩa thực tiễn về việc xác định và chuẩn hóa khuôn mặt theo chuẩn biometric.
4- Trong phần thực nghiệm đã thử nghiệm trên cơ sở dữ liệu FERET COLOR – là cơ sở dữ liệu được sử dụng rộng rãi đối với các hệ thống nhận dạng mặt người.
Công việc nghiên cứu trong tương lai
Trong tương lai chúng tôi sẽ tiếp tục nghiên cứu tối ưu thuật toán và xây dựng hệ thống chuẩn hóa ảnh để có thể đưa vào sử dụng trong các hệ thống xây dựng cơ sở dữ liệu phục vụ cho việc nhận dạng mặt người.
PHỤ LỤC CODE chƣơng trình
---MODULE FACE DETECTION--- % R-G, R-G-H, I2, components
function [OB_FACE,topy,botty,minxl,maxxr]=DETECT_FACE(obraz) obraz_org=obraz;
%%% Get skin color by component R-G-B
[RGB]=FACE_RGB1(obraz_org); obraz=double(obraz)/256; [mm,nn,g]=size(obraz); maska=hamming(mm)*hamming(nn)'; obraz3=(rgb2hsv(obraz)); %%% component H H=norma(obraz3(:,:,1))/256; H_ORG=1-im2bw(H); H1=H<=.1; H2=H>=.9; H=H1+H2; HM = medfilt2(H,[1,1]); %% component I OF1=obraz(:,:,1); % компонента R OF2=obraz(:,:,2); % компонента G OF3=obraz(:,:,3); % компонента B
I2=(OF1-OF2)+(OF1-OF3); % modify I2;
dd=find(I2>-.05); % or dd=find(I2>0);
maska1=zeros(mm,nn); maska1(dd)=I2(dd); % select only face area!
maska1=norma(double(maska1)); I2abs=abs(I2<0); I2new=maska;%I2>0; I2new=double(I2new); I2new = medfilt2(I2new,[1,1]);
%%% COMBINE component H,R-G-B and I
obraz_new=zeros(mm,nn); for i=1:mm
for j=1:nn
if((fix(HM(i,j))>0) && (H_ORG(i,j)>0)) if(((I2new(i,j)>0)) && (RGB(i,j)>0)) obraz_new(i,j)=1; end; end; end; end; obraz_new = medfilt2(obraz_new,[10,10]); HMM=obraz_new.*maska; zz=fncz2(obraz_new,2); maxZ=max(max(zz)); [yy,xx]=find(zz==maxZ); ob=im2bw(obraz_new);
%%% get top line
topyy=yy;
i=1; top=0;
while(i<=yy)
if((fix(ob(i,j))>0) && (top==0)) top=1; yt=i; i=yy+1; end; i=i+1; end;
if(topyy>yt) topyy=yt; end; end;
topy=fix(topyy-5); if(topy<0) topy=0; end; %%% get width cl=0; cr=0; xl=0; xr=0; minxl=xx-30; xl=minxl;
if(minxl<0) minxl=0; end; maxxr=xx+30;
if(maxxr>nn) maxxr=nn; end; xr=maxxr;
%%% Get Left line
for j=topyy:yy i=1; while(i<=xx) if((fix(ob(j,i))>0) && (cl==0)) cl=1; xl=i; i=xx+1; end; i=i+1; end;
if(xl<minxl) minxl=xl; end; cl=0;
end;
%%% Get right line
for j=topyy:yy i=nn; while(i>=xx) if((ob(j,i)>0) && (cr==0)) cr=1; xr=i; i=xx; end; i=i-1; end;
if(xr>maxxr) maxxr=xr; end; cr=0;
end;
%%% get bottom line
botty=fix(topyy+3*(maxxr-minxl)/2); if(botty>mm) botty=mm; end;
obraz_org(topy:botty,minxl:maxxr,:)=obraz_org(topy:botty,minxl:maxxr,:)*1; end ---MAIN--- %%% VU DUY LINH, 2011 clear all; clc;
Path='F:\HOC TAP\Face\DB\'; %% DUONG DAN TOI CSDL
N=20 ; e=cputime; L2='eye1.bmp'; ETA=imread(L2); pause(0.1); for kk=6:N try r=[Path num2str(kk) '.jpg']; obraz_org=imread(r); [H,W,g]=size(obraz_org); obraz_org=imresize(obraz_org,0.5)*1.1; figure(1);clf; subplot(2,2,[1 3]); imshow(obraz_org);
title(['Image input ', num2str(kk)]); pause(0.1);
%%%% Call module face detection
try [obraz,topy,botty,minxl,maxxr]=DETECT_FACE(obraz_org); hold on; plot(minxl:maxxr,topy:topy,'r'); hold on; plot(minxl:maxxr,botty:botty,'r'); hold on; plot(minxl:minxl,topy:botty,'r'); hold on; plot(maxxr:maxxr,topy:botty,'r');
subplot(2,2,2); imshow(obraz); title('FACE AREA'); catch end; pause;%(0.1); catch end; pause(0.5); end;
TÀI LIỆU THAM KHẢO
Tiếng Việt
[1]. Đỗ Năng Toàn, Phạm Việt Bình (2007), Giáo trình xử lý ảnh, Nxb Đại học Thái Nguyên.
[2]. Lương Mạnh Bá, Nguyễn Thanh Thủy (2007), Nhập môn xử lý ảnh số, Nxb Khoa học và Kỹ thuật.
Tiếng Anh
[3]. R.-J. Huang. Detection strategies for face recognition using learning and evolution - PhD thesis, George Mason University, Fairfax, Virginia, 1998.
[4]. M.-H. Yang, D. Kriegman, N. Ahuja. Detecting faces in images: a survey , IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI) 24 (1) (2002) 34–58.
[5]. J. Sobottka and I. Pitas, “Segmentation and Tracking of Faces in Color Images”, Proc. Second Int’l Conf. Automatic Face and Gesture Recognition, pp. 236-241, 1996.
[6]. T.K. Leung, M.C. Burl, and P. Perona, “Finding Faces in Cluttered Scenes Using Random Labeled Graph Matching”, Proc. Fifth IEEE Int’l Conf. Computer Vision, pp. 637-644, 1995.
[7]. K.V. Mardia and I.L. Dryden, Shape Distributions for Landmark Data, Advanced Applied Probability, vol. 21, pp. 742-755, 1989.
[8]. Kim, H., Kang, W., Shin, J., Park, S. Face detection using template matching and ellipse fitting, IEICE Trans. Inform. Syst., 2000, E38-D(11):2008-2011
[9]. J. Canny, “A Computational Approach to Edge Detection”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 8, no. 6, pp. 679-698, June 1986.
[10]. H.P. Graf, T. Chen, E. Petajan, and E. Cosatto, “Locating Faces and Facial Parts”, Proc. First Int’l Workshop Automatic Face and Gesture Recognition, pp. 41-46, 1995.
[11]. E. Osuna, R. Freund, and F. Girosi, “Training Support Vector Machines: An Application to Face Detection” Proc. IEEE Conf. Computer Vision and Pattern Recognition, pp. 130-136, 1997
[12]. Sakai et al, Locating and extracting the eye in human face images, Pattern Recognition 1996 29(5), pp. 771–779.
[13]. Craw et al. Robust face detection at video frame rate based on edge orientation features // in: Proceedings of the Fifth IEEE International Conference on Automatic Face and Gesture Recognition (AFGR),Washington, DC, USA, 2002, pp. 342–347.
[14]. P. Sinha, Object Recognition via Image Invariants: A Case Study, Investigative Ophthalmology and Visual Science, vol. 35, no. 4, pp. 1735-1740, 1994.
[15]. P. Sinha, Processing and Recognizing 3D Forms, PhD thesis, Massachusetts Inst. of Technology, 1995.
[16]. A. Yuille, P. Hallinan, and D. Cohen, “Feature Extraction from Faces Using eformable Templates”, Int’l J. Computer Vision, vol. 8, no. 2, pp. 99-111, 1992.
[17]. K. Lam and H. Yan, “Fast Algorithm for Locating Head Boundaries,” J.Electronic Imaging, vol. 3, no. 4, pp. 351-359, 1994.
[18]. Fuzhen Huang and Jianbo Su, “Multiple Face Contour Detection Using adaptive Flows”, Sinobiometrics 2004, LNCS 3338, pp. 137-143, Springer-Verlag Berlin eidelberg, 2004.
[19]. A. Lanitis, C.J. Taylor, and T.F. Cootes, “An Automatic Face Identification System Using lexible Appearance Models”, Image and Vision Computing, vol. 13, no. 5, pp. 393-401, 1995.
[20]. M. Kirby and L. Sirovich, “Application of the Karhunen-LoeveProcedure for the Characterization of Human Faces”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 12, no. 1, pp. 103-108, Jan. 1990
[21]. P. Viola and M. J. Jones, “Robust Real-Time Face Detection”, International Journal of Computer Vision 57(2), 137-154, Kluwer Academic Publishers, Netherlands, 2004.
[22]. H. Rowley, S. Baluja, T. Kanade. Neural network-based face detection // IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI) 20 (1) (1998) 23–38.
[23]. Viola, P. Rapid. Object Detection Using a Boosted Cascade of Simple Features // Proc. IEEE Conference on CVPR, 2001, pp. 511-518.
[24]. H. Rowley, S. Baluja, T. Kanade. Neural network-based face detection // IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI) 20 (1) (1998) 23–38.
[25]. B. Fro¨ba, C. Ku¨blbeck. Robust face detection at video frame rate based on edge orientation features // in: Proceedings of the Fifth IEEE International Conference on Automatic Face and Gesture Recognition (AFGR),Washington, DC, USA, 2002, pp. 342–347.
[26]. O. Jesorsky, K. Kirchberg, R. Frischholz. Robust face detection using the hausdorff distance // in: Proceedings of the Third International Conference on Audio- and Video-based Biometric Person Authentication (AVBPA), Halmstad, Sweden, 2001, pp. 90–95.
[27]. V. Popovici, Y. Rodriguez, J.-P. Thiran, S. Marcel. On performance evaluation of face detection and localization algorithms // in: Proceedings of the International Conference on Pattern Recognition (ICPR), Cambridge, UK, 2004, pp. 313–317.
[28]. Cai, J., Goshtasby, A. Detecting human faces in color images, Image and Vision Computing, 1999, 18(1), pp. 63-75.
[29]. Viola, P. Rapid. Object Detection Using a Boosted Cascade of Simple Features // Proc. IEEE Conference on CVPR, 2001, pp. 511-518.
[30]. Sobotka K., Pitas I. Looking for Faces and Facial Features in Color Images // In 4th Open Russian-German Workshop: Pattern Recognition and Image Analysis, Valday, The Russian Federation, March 3-9, 1996.
[31]. Z. Qian, D. Xu. Automatic eye detection using intensity filtering and K-means clustering // Pattern Recognition Letters 31 (2010) pp. 1633–1640.
[32]. Zhou, Z., Geng, X., Projection functions for eye detection // Pattern Recognition 2004 37 (5), pp. 1049–1056.
[33]. D’Orazio, T., Leo, M., Cicirelli, G., Distante, A., An algorithm for real time eye detection in face images // In: Proc. IEEE Conf. on Pattern Recognition, 2004, pp. 278–281.
[34]. Liu, Hong; Wu, Yuwen; Zha, Hongbin Eye state detection from color facial image sequence // Proc. SPIE Vol. 4875, 31 July 2002, p. 693-698.
[35]. Xiaoxing Li; Mori, G.; Hao Zhang. Expression-Invariant Face Recognition with Expression Classification // Canadian Conf. on Computer and Robot Vision, 07-09 June 2006, pp. 77–85.
[36]. К.М. Нюнькин, Определение углов наклонов головы человека на изображениях // Украина «Искусственный интеллект» 01-2004, стр. 243-250.