(Luận văn thạc sĩ) Ứng dụng phương pháp học sâu để nhận diện khuôn mặt qua camera giám sát

86 2 0
(Luận văn thạc sĩ) Ứng dụng phương pháp học sâu để nhận diện khuôn mặt qua camera giám sát

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

UBND TỈNH BÌNH DƯƠNG TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT NGUYỄN THANH TÙNG ỨNG DỤNG PHƯƠNG PHÁP HỌC SÂU ĐỂ NHẬN DIỆN KHUÔN MẶT QUA CAMERA GIÁM SÁT LUẬN VĂN THẠC SĨ CHUYÊN NGÀNH: HỆ THỐNG THÔNG TIN MÃ SỐ: 48 01 04 BÌNH DƯƠNG – 2019 UBND TỈNH BÌNH DƯƠNG TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT NGUYỄN THANH TÙNG ỨNG DỤNG PHƯƠNG PHÁP HỌC SÂU ĐỂ NHẬN DIỆN KHUÔN MẶT QUA CAMERA GIÁM SÁT LUẬN VĂN THẠC SỸ CHUYÊN NGÀNH: HỆ THỐNG THÔNG TIN MÃ SỐ: 48 01 04 NGƯỜI HƯỚNG DẪN KHOA HỌC: TS BÙI THANH HÙNG BÌNH DƯƠNG – 2019 ii LỜI CAM ĐOAN Tên là: Nguyễn Thanh Tùng Sinh ngày: 15/01/1983 Học viên lớp cao học CH17HT - Trường Đại học Thủ Dầu Một Xin cam đoan: Đề tài “Ứng dụng phương pháp học sâu để nhận diện khuôn mặt qua camera giám sát.” Thầy TS Bùi Thanh Hùng hướng dẫn cơng trình nghiên cứu riêng tơi Tất tài liệu tham khảo có nguồn gốc, trích dẫn rõ ràng Tác giả xin cam đoan tất nội dung luận văn nội dung đề cương yêu cầu thầy giáo hướng dẫn Nếu sai tơi hồn tồn chịu trách nhiệm trước hội đồng khoa học Bình Dương, tháng 10 năm 2019 Tác giả luận văn Nguyễn Thanh Tùng iii LỜI CẢM ƠN Sau thời gian nghiên cứu làm việc nghiêm túc, động viên, giúp đỡ hướng dẫn tận tình Thầy hướng dẫn TS Bùi Thanh Hùng, luận văn Cao học “Ứng dụng phương pháp học sâu để nhận diện khn mặt qua camera giám sát” hồn thành Tơi xin bày tỏ lịng biết ơn sâu sắc đến: Thầy hướng dẫn TS Bùi Thanh Hùng tận tình dẫn, giúp đỡ tơi hồn thành luận văn Đồng thời gửi lời cảm ơn đến thầy, cô giảng dạy truyền đạt kiến thức quý báo cho suốt thời gian học tập nghiên cứu Tôi chân thành cảm ơn bạn bè, đồng nghiệp gia đình động viên, khích lệ, tạo điều kiện giúp đỡ tơi suốt q trình học tập, thực hoàn thành luận văn iv TĨM TẮT LUẬN VĂN Đã có nhiều cơng trình công bố, đưa hướng tiếp cận khác cho việc giải tốn nhận dạng khn mặt nhận dạng dựa đặc trưng phần tử khn mặt bao gồm biển đổi sóng Wavelet (Gabor Wavelet), phương pháp đồ thị đàn hồi (Elastic Bunch Graph Matching - EBGM), mạng Nơron (Neural Network - NN), học máy vector hỗ trợ (Support Vector Machine –SVM)… nhận dạng dựa xét tổng thể tồn khn mặt bao gồm phương pháp phân tích thành phần (Principal Component Analysis– PCA) phương pháp phân tích khác biệt tuyến tính (Linear Discriminant Analysis – LDA) Trong đó, nhận dạng khuôn mặt dùng mạng Nơron mang lại hiệu nhận dạng cao hoạt động ổn định có tính thích nghi cao liệu đầu vào thay đổi nhiều Luận văn trình bày khảo sát số thuật tốn nhận dạng khn mặt đề xuất mơ hình hiệu để giải tốn nhận dạng khn mặt áp dụng để nhận dạng trực tiếp từ camera Trong đó, luận văn tập trung vào hai cơng đoạn: phát nhận dạng khuôn mặt Trong việc phát canh chỉnh khuôn mặt đề xuất sử dụng phương pháp mô tả đặc trưng (Histogram of Oriented Gradients – HOG) việc phân lớp, nhận dạng khuôn mặt sử dụng mô hình CNN cụ thể thuật tốn FaceNet Hiệu mơ hình nhận dạng kiểm nghiệm tập sở liệu chuẩn ORL (Olivetti Research Laboratory) AT&T, liệu cá nhân thu thập hình ảnh 15 người Các kết thực nghiệm cho thấy mơ hình đề xuất đạt độ xác cao ổn định tập liệu v MỤC LỤC LỜI CAM ĐOAN iii LỜI CẢM ƠN iv TÓM TẮT LUẬN VĂN v MỤC LỤC vi DANH MỤC THUẬT NGỮ VÀ CÁC TỪ VIẾT TẮT ix DANH MỤC CÁC BẢNG x DANH MỤC HÌNH VẼ, ĐỒ THỊ xi CHƯƠNG 1: TỔNG QUAN VỀ LĨNH VỰC NGHIÊN CỨU 1.1 Lý chọn đề tài 1.2 Mục tiêu nghiên cứu 1.3 Đối tượng, phạm vi nghiên cứu 1.4 Phương pháp nghiên cứu 1.5 Ý nghĩa khoa học ý nghĩa thực tiễn 1.6 Bố cục luận văn CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN 2.1 Mạng Nơron tích chập 2.1.1 Mạng Nơron 2.1.2 Mạng nơron tích chập 15 2.2 Trích chọn đặc trưng 21 2.2.1 Tổng quan trích chọn đặc trưng 21 vi 2.2.2 Phương pháp mô tả đặc trưng (Histogram of Oriented Gradients – HOG) 22 2.2.3 Phương pháp phân tích thành phần (Principal Component Analysis - PCA) 23 2.2.4 Phương pháp mẫu nhị phân địa phương (Local Binary Pattern - LBP ) 26 2.3 Nhận dạng khuôn mặt 32 2.3.1 Tổng quan 32 2.3.2 Các hướng tiếp cận 35 2.3.3 Hướng đề xuất nghiên cứu 36 Tiểu kết chương 37 CHƯƠNG 3: MƠ HÌNH ĐỀ X́T 38 3.1 Tổng quan mơ hình đề xuất 38 3.2 Các đặc trưng mơ hình đề xuất 40 3.2.1 Phát khuôn mặt 40 3.2.2 Nhận dạng khuôn mặt 47 3.2.3 Mơ hình kết hợp HOG-CNN 56 3.2.4 Phương pháp đánh giá mơ hình 57 CHƯƠNG 4: THỰC NGHIỆM VÀ KẾT LUẬN 58 4.1 Dữ liệu 58 4.2 Huấn luyện mơ hình 62 4.3 Đánh giá 64 4.4 Xây dựng ứng dụng 65 vii 4.5 Kết luận hướng phát triển 69 CƠNG TRÌNH CƠNG BỐ 70 TÀI LIỆU THAM KHẢO 71 viii DANH MỤC THUẬT NGỮ VÀ CÁC TỪ VIẾT TẮT KÝ HIỆU TÊN TIẾNG ANH ANN Artificial Neural Network CNN Convolution Neural Network DNN Deep Neural Networks FC Fully Connected FCM Fuzzy Cognitive Map HAC Hierarchical Agglomerative Clustering HOG Histogram of Oriented Gradients LBP Local Binary Pattern LDA Linear Discriminant Analysis LFW Labeled Faces in the Wild LMNN Large margin nearest neighbor classification MDP Markov Decision Process PCA Principal Component Analysis RELU Rectified Linear Unit RGB Red Green Blue SGD Stochastic Gradient Descent SIFT Scale Invariant Feature Transform SOM Self – Organizing Map SURF Speeded up robust features SVM Support Vector Machines ix DANH MỤC CÁC BẢNG Bảng 4.1 Đánh giá độ xác liệu cá nhân 63 Bảng 4.2 Đánh giá độ xác liệu ORL 64 x Học sâu với CNN ln địi hỏi số lượng hình ảnh huấn luyện lớn để có kết phân loại tốt Vì vậy, luận văn chúng tơi sử dụng phương pháp tăng số lượng ảnh các phép biến đổi khác Trong luận văn áp dụng thư viện học sâu Keras [24] cung cấp khả sử dụng tăng liệu tự động huấn luyện mơ hình tập trung vào năm loại kỹ thuật tăng liệu cho liệu hình ảnh gồm: - Chuyển dịch ngang dọc (Horizontal and Vertical Shift Augmentation) - Lật ngang dọc lật (Horizontal and Vertical Flip Augmentation) - Xoay ngẫu nhiên (Random Rotation Augmentation) - Độ sáng ngẫu nhiên (Random Brightness Augmentation) - Phóng to thu nhỏ ngẫu nhiên (Random Zoom Augmentation) Mỗi loại cho ảnh khác từ ảnh mẩu ban đầu (hình 4.2), cách thực việc tăng cường này, hình ảnh gốc liệu tạo 45 mẫu (= 5x9), số lượng mẫu đào tạo 20,250 (= 450x45) Hình 4.2: Phương pháp Xoay ngẫu nhiên tăng liệu ảnh 59 Hình 4.3: Phương pháp độ sáng ngẫu nhiên tăng liệu ảnh Hình 4.4: Phương pháp phóng to thu nhỏ ngẫu nhiên tăng liệu ảnh 60 Hình 4.5: Phương pháp dịch chuyển dọc tăng liệu ảnh Hình 4.6: Phương dịch chuyển ngang tăng liệu ảnh 61 4.2 Huấn luyện mô hình Trong luận văn việc phát mặt người sử dụng liệu phân lớp học trước cung cấp thư viện dlip sử dụng cấu trúc CNN thuật toán FaceNet để thực việc nhận dạng khuôn mặt Môi trường thực nghiệm máy PC sử dụng hệ điều hành Windows 10 Pro 64 bit với RAM 8GB, Intel(R) Core(TM) i5-4200M CPU 2.50GHz Trong q trình huấn luyện, tơi sử dụng Python kết hợp với thư viện mã nguồn mở Keras Google phát triển Việc huấn luyện mơ hình gồm cơng đoạn phát khn mặt huấn luyện trích chọn đặc trưng phân lớp (mơ hình học sâu FaceNet) Quy trình huấn luyện tiến hành cụ thể sau: Từ tập mẫu huấn luyện đầu vào, trước tiên phát khn mặt tiến hành tìm kiếm, định vị crop vùng ảnh khuôn mặt khung hình Hình 4.7: Tiền xử lý ảnh khn mặt Tồn tập ảnh khn mặt crop sau làm liệu đầu vào để huấn luyện mô hình nơron học sâu trích chọn đặc trưng phân lớp Neural Network Deep Learning sử dụng thuật toán tối ưu Gradient Descent, thuật tốn địi hỏi phải đem toàn liệu qua mạng nhiều lần để tìm kết tối ưu cần sử dụng số epoch lớn 62 Khi sử dụng lần lặp, xác suất cao liệu bị underfitting, số lần lặp tăng dần, trạng thái mơ hình chuyển dần từ underfitting sang optimal sau overfitting (tùy theo mơ hình liệu có tượng xảy hay khơng) Trong luận văn tiến hành thực nghiệm với thơng số epoch việc huấn luyện mơ hình là: 30, 40, 50 Kết đạt sau: Với epoch 30 đạt độ tin cậy (Accuracy): 97,441% Với epoch 40 đạt độ tin cậy (Accuracy): 98,546% Với epoch 50 đạt độ tin cậy (Accuracy): 99,426% Hình 4.8: Kết huấn luyện mơ hình Với số epoch từ 50 trở lên việc huấn luyện mơ hình khơng có cải thiện độ tin cậy (acc did not improve from 0.99426) tiếp tục huấn luyện tượng overfitting xảy độ tin cậy đạt 100% kiểm tra khơng đạt hiệu tốt Hình 4.9 cho thấy thơng số val_acc bị nhiễu khơng cịn độ xác Lý 63 liệu sử dụng huấn luyện luận văn có sử dụng phương pháp tăng cường liệu cịn chưa đủ liệu Hình 4.9: Các thơng số huấn luyện mơ hình 4.3 Đánh giá Để đánh giá mơ hình chúng tơi sửa dụng cơng thức (3.25) nêu phần luận văn Đối với liệu cá nhân thu thập mơ hình đề xuất đạt kết trình bày Bảng 4.1 Độ xác Kết Độ xác (Accuracy) 99,426% Độ xác kiểm thử (validation Accuracy) 97,921% Độ xác kiểm tra (Test Accuracy) 97,111% Bảng 4.1 Đánh giá độ xác liệu cá nhân Để so sánh hiệu mơ hình đề xuất so sánh với mơ hình sử dụng đặc trưng phân tích thành phần PCA mạng nơron (Neuron Network-NN) để phân lớp [25] Với mơ hình LBP mạng nơron học sâu [26] Để khách quan so sánh dùng liệu từ tập ảnh ORL (Olivetti Research Laboratory) AT&T [27], giống với tác giả [25][26] Cơ sở 64 liệu gồm có 400 ảnh 40 người, người có 10 hình ảnh khác Kết trình bày Bảng 4.2 PP đề xuất HOG-CNN Độ xác % (Accuracy) 98,568% Tập liệu ORL PP sử dụng PCA-NN 95.833% ORL PP sử dụng LBP-DNN 97,878% ORL Bảng 4.2 Đánh giá độ xác liệu ORL Từ kết thực nghiệm cho thấy phương pháp đề xuất đạt độ xác cao mơ hình tương tự tập liệu thử nghiệm 4.4 Xây dựng ứng dụng Để trực quan kết đạt chúng tơi xây dựng chương trình dựa công cụ flask, html, css, boostrap, python 3.7 Chương trình có chức như: Thêm người mới, H́n lụn mơ hình, Nhận dạng khn mặt và Kết và phân tích dữ liệu Hình 4.10 thể giao diện chương trình Hình 4.10: Giao diện chương trình 65 Chương trình gồm chức chính: Chức Thêm người mới, thực thêm người vào hệ thống Khi chọn mở cửa sổ Add user (hình 4.11), ta nhập tên chọn Thêm để mở cửa sổ chụp ảnh người (hình 4.12) Hình 4.11: Cửa sổ thêm người Hình 4.12: Cửa sổ chụp ảnh người 66 Chức H́n lụn mơ hình, sau thêm người ta cần phải huấn luyện lại mơ hình nhận dạng Khi chọn mở cửa sổ xác nhận chọn ‘yes’ để thực ‘no’ để (hinh 4.13) Hình 4.13: Thực huấn luyện lại mơ hình Chức Nhận dạng khn mặt, sau huấn luyện mơ hình xong ta tiến hành nhận dạng khn mặt Khi chọn mở cửa sổ camera để nhận dạng (hình 4.14) Hình 4.14: Cửa sổ nhận dạng khn mặt 67 Chức Kết và phân tích dữ liệu, Cho xem tổng quan liệu số lượng ảnh, chia tập Train Validation Test, số ví dụ mẫu liệu, liệu ảnh tạo thêm kết huấn luyện mơ hình (hình 4.15) Hình 4.15: Mơ tả liệu kết 68 4.5 Kết luận và hướng phát triển Kết đạt được Luận văn đề xuất mơ hình tổng thể cho việc nhận dạng khuôn mặt người từ camera Trong tập trung vào cơng đoạn phát nhận dạng khuôn mặt Hiệu mô hình đánh giá tập liệu chuẩn ORL thực nghiệm liệu cá nhân tự thu thập Quá trình đánh giá thực nghiệm, hiệu mơ hình nhận dạng khn mặt đánh giá dựa độ xác nhận dạng (Accuracy) Các kết thực nghiệm cho thấy mơ hình đề xuất đạt độ xác cao ổn định mơi trường thực tế, áp dụng giải tốn ứng dụng điển hệ thống camera giám sát cho phép phát hiện, nhận dạng cảnh báo đối tượng lạ mặt đột nhập khu vực an ninh… Hướng phát triển Hướng phát triển tới, thu thập thêm liệu huấn luyện mô hình với nhiều ảnh để tăng độ xác mơ hình mạng nơron học sâu Ngồi ra, thành phần mặt có đặc điểm khác nên cần có kiến trúc học đặc thù với chi tiết nhỏ vùng trình huấn luyện dó hướng phát triển mơ hình nhận dạng theo phần khn mặt mắt trái, mắt phải, miệng tồn mặt, từ nhận dạng với ảnh có phần khn mặt cho độ xác cao 69 CƠNG TRÌNH CƠNG BỚ Nguyễn Thanh Tùng, Bùi Thanh Hùng (2019) “Ứng dụng phương pháp học sâu nhận dạng khuôn mặt”, Kỷ yếu Ngày hội Khoa học cán bộ, giảng viên trẻ học viên cao học lần III - năm 2019 Đại học Thủ Dầu Một 6.2019 70 TÀI LIỆU THAM KHẢO [1] Võ Phúc Nguyên,”Nhận dạng ảnh mặt người sử dụng mạng nơron”, Tạp chí Khoa học & Công nghệ 64(02): 53 – 57, 2014 [2] Samer, C H., Rishi, K., & Rowen, “Image Recognition Using Convolutional Neural Networks” Cadence Whitepaper, 1–12, 2015 [3] Dumoulin, V., & Visin, F., “A guide to convolution arithmetic for deep learning”, 2016 [4] Navneet Dalal and Bill Triggs, ”Histograms of Oriented Gradients for Human Detection”, IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), 2005 [5] Kyungnam Kim, “Face Recognition using Principle Component Analysis”, University of Maryland College park [6] W Zhao, R Chellappa, P J Phillips, A.Rosenfeld, "Face Recognition – A Literature Survey", ACM Computing Surveys, Vol 35 (No 4), 2003 [7] Bo Yang, Songcan Chen, “A comparative study on local binary pattern (LBP) based face recognition: LBP histogram versus LBP image” Neurocomputing 120: 365-379 (2013) [8] Dương Văn Cường, “Nghiên cứu số phương pháp trích chọn đặc trưng cho ảnh ứng dụng toán phân loại trạng thái cảm xúc khuôn mặt”, Luận văn thạc sĩ khoa học máy tính, Đại học Cơng nghệ Thông tin Truyền thông, 2018 [9] W K Pratt, “Digital Image Processing”, Printed in the United States of America, Inc., Publication 2007 [10] Hiyam Hatem, Zou Beiji and Raed Majeed, “A Survey of Feature Base Methods for Human Face Detection”, International Journal of Control and Automation Vol.8, No.5 (2015), pp.61-78 71 [11] Hwai-Jung Hsu and Kuan-Ta Chen, “Face recognition on drones issues and limitations in proceedings of the firs workshop on Micro Aerial Vehicle Networks, Systems, and Applications for Civilian Use, DroNet 15, pages 39-44, New York, NY, USA, 2015, ACM [12] Rabia Jafri and Hamid R Arabnia, “A Survey of Face Recognition Techniques”, JIPS, 2009.5.2.041 [13] Sirovich L and Kirby M,”Low-dimensional procedure for the characterization of human faces”, JOSA A, 4(3):519-24 [14] Matthew Turk and Alex Pentland, A 1991 “Eigenfaces for Recognition”, J.Cogn Neurosci 3,72-86 [15] Yi Sun, Xiaogang Wang, and Xiaoou Tang, “Deeply learned face representations are sparse, selective, and robust”, CoRR, 1412.1265, 2014 [16] Yaniv Taigman, Ming Yang, Marc’Aurelio Ranzato, and Lior Wolf, ”DeepFace: Closing the Gap to Human-Level Performance in Face Verification”, In IEEE Conf on CVPR, 2014 1,2,5,7,8,9 [17] Zhenyao Zhu, Ping Luo, Xiaogang Wang, and Xiaoou Tang, “Recover Canonical-View Faces in the Wild with Deep Neural Networks”, CoRR, abs/1404.3543, 2014.2 [18] Gary B Huang, Manu Ramesh, Tamara Berg, and Erik Learned-Miller, “Labeled Faces in the Wild: A Database forStudying Face Recognition in Unconstrained Environments”, Technical report 07-49, University of Massachusetts, Amherst, 2007 [19] Florian Schroff, Dmitry Kalenichenko, and James Philbin, “FaceNet: A Unified Embedding for Face Recognition and Clustering”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 815-823, 2015 72 [20] Shreyas N Raj, Prof.Vijayalakshmi Niar,“Comparison Study of Algorithms Used for Feature Extraction in Facial Recognition.”, International Journal of Computer Science and Information Technologies, Vol (2), 2017,163-166 [21] K Q Weinberger and L K Saul, "Distance metric learning for large margin nearest neighbor classification," Journal of Machine Learning Research, vol 10, pp 207-244, 2009 [22] M D Zeiler and R Fergus, "Visualizing and understanding convolutional networks," European Conference on Computer Vision, Springer International Publishing, pp 818-833, 2014 [23] C Szegedy and e al, "Going deeper with convolutions," 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp 1-9, 2015 [24] Antonio Gulli, Sujit Pal, “Deep Learning with Keras”, Published by Packt Publishing Ltd, ISBN 978-1-78712-842-2, 2017 [25] Từ Minh Hiển, Trần Thị Khánh Hịa, ”Nhận dạng khn mặt người mạng nơron phương pháp phân tích thành phần chính”, Báo cáo Hội nghị Sinh viên Nghiên cứu Khoa học lần thứ Đại học Đà Nẵng năm 2012 [26] Meng xi, Liang Chen, “Local binary pattern network: a deep learning approach for face recognition”, 10.1109/icip.2016.7532955, publisher: ieee, 2016 [27] Link ORL Database: https://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html 73

Ngày đăng: 27/04/2023, 11:22

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan