Khái niệm Công nghệ Nhận dạng khuôn mặt là một ứng dụng máy tính tự động xác định hoặc nhận dạng một người nào đó từ một bức hình ảnh kỹ thuật số hoặc một khung hình video từ một nguồn
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH
BÀI BÁO CÁO
Môn: Xử lý ảnh
Đề tài
Lớp: D18CQCN01-N
Giảng viên: Lê Thái Hoàng
SV: Hoàng Văn Đức
Mã SV: N16DCCN043
THÀNH PHỐ HỒ CHÍ MINH NĂM 2021
NHẬN DIỆN KHUÔN
MẶT
Trang 2Mục lục
I Tổng quan về xử lý ảnh ………1
1.Khái niệm……… ……… ………1
II Phân tích định lượng PCA, ICA, LDA and SVM trong nhận diện khuôn mặt ……….………1
2.1Phân tích thành phần chính (PCA) ……….…… ……1
2.2Phân tích thành phần độc lập (ICA) ……….………….…………1
2.3Phân tích phân biệt tuyến tính (LDA) ……….……… ……2
2.4Máy vectơ hỗ trợ (SVM) ……….……….………2
III Kết quả thí nghiệm ……….……….……….……2
IV Các bước nhận diện khuôn mặt………5
IV Thực nghiêm và đánh giá ……… ……7
Trang 31
I Tổng quan về xử lý ảnh
1 Khái niệm
Công nghệ Nhận dạng khuôn mặt là một ứng dụng máy tính tự động xác định hoặc nhận dạng một người nào đó từ một bức hình ảnh kỹ thuật số hoặc một khung hình video từ một nguồn video Một trong những cách để thực hiện điều này là so sánh các đặc điểm khuôn mặt chọn trước từ hình ảnh và một cơ sở dữ liệu về khuôn mặt
Hệ thống này thường được sử dụng trong các hệ thống an ninh và có thể được so sánh với các dạng sinh trắc học khác như các hệ thống nhận dạng vân tay hay tròng mắt như nhiều người có thể biết
Nhận dạng khuôn mặt hiện giờ đăng là xu thế phát triển tất yếu của cuộc sống, nhận thấy tiềm năng lớn Futech cùng đội ngũ đã ứng dụng công nghệ này vào các giải pháp của mình để nâng cao hiệu quả và đáp ứng tốt hơn nhu cầu từ người sử dụng
Phân tích độ chính xác định lượng của bốn kỹ thuật được sử dụng rộng rãi nhất thuật toán nhận dạng:
+ Phân tích thành phần chính (PCA)
+ Phân tích thành phần độc lập (ICA)
+ Phân biệt tuyến tính (LDA)
+ Máy vectơ hỗ trợ (SVM)
II Phân tích định lượng PCA, ICA, LDA and SVM trong nhận diện khuôn mặt
2.1 Phân tích thành phần chính (PCA):
PCA là một trong những phương pháp nhận dạng khuôn mặt lâu đời nhất Nó
tìm không gian con t-chiều từ một vectơ n-chiều của mỗi mặt trong một tập M ảnh được huấn luyện, trong đó t <n Các giảm kích thước dựa trên các vectơ cơ bản tương ứng với hướng phương sai lớn nhất trong bản gốc không gian hình ảnh Tất cả hình ảnh của các khuôn mặt đã biết (đào tạo) là chiếu vào không gian mặt để tìm một tập hợp các trọng số mô tả sự đóng góp của mỗi vectơ Để xác định một khuôn mặt (thử nghiệm) không xác định, nó được chiếu lên không gian khuôn mặt để có được bộ trọng lượng của nó Bằng cách so sánh tập hợp các trọng số cho khuôn mặt không xác định với tập hợp các trọng lượng của khuôn mặt đã biết, khuôn mặt là xác định Các vectơ
cơ sở PCA được định nghĩa là các vector riêng của ma trận phân tán ST được định nghĩa là:
trong đó µ là giá trị trung bình của tất cả các mặt của tập huấn luyện và xi là
khuôn mặt
2.2 Phân tích thành phần độc lập (ICA)
Phân tích thành phần độc lập là một kỹ thuật để tìm ra một biến đổi tuyến tính cho dữ liệu đầu vào sử dụng cơ sở là thống kê độc lập nhất có thể Do đó, ICA có thể được coi là trường hợp đặc biệt của PCA
Trang 42.3 Phân tích phân biệt tuyến tính (LDA)
LDA là một phương pháp hoạt động dựa trên tiêu chí Fisher Nó tìm các vectơ phân biệt tốt nhất giữa các lớp Đối với tất cả các mẫu và lớp, gọi SB là ma trận phân tán giữa các lớp và Sw là ma trận phân tán bên trong lớp Mục đích là tối đa hóa SB trong khi tối thiểu hóa Sw, nói cách khác, tối đa hóa tỷ lệ det | SB | / det | Swl
2.4 Máy vectơ hỗ trợ (SVM)
SVM chủ yếu là một thuật ngữ máy tuyến tính như một bộ phân loại phân biệt bao gồm hai lớp riêng biệt Tuy nhiên, nó có thể được mở rộng sang phân tách đa thủy tinh Trong bài báo này, chúng tôi đang sử dụng SVM đa thủy tinh hoạt động trên cơ sở tổng mặt Đưa ra một nhóm dữ liệu huấn luyện được gắn nhãn, thuật toán xuất ra một siêu phẳng tối ưu, phân loại các ví dụ mới
III KẾT QUẢ THÍ NGHIỆM
Đối với thí nghiệm, sử dụng ba cơ sở dữ liệu; Cơ sở dữ liệu khuôn mặt Sheffield, Cơ
sở dữ liệu AT&T và cơ sở dữ liệu khuôn mặt bao gồm 20 người khác nhau dưới nhiều ánh sáng, tư thế và cách căn chỉnh khác nhau
Cơ sở dữ liệu khuôn mặt Sheffield (trước đây là UMIST) bao gồm 564 hình ảnh của 20
cá nhân (với nhiều hình ảnh của mỗi người thuộc các chủng tộc, diện mạo, độ sáng và
sự liên kết khác nhau) Hình ảnh có kích thước 220 x 220 pixel Cơ sở dữ liệu của AT&T bao gồm 400 hình ảnh của 40 cá nhân với 10 hình ảnh của mỗi người theo các chủ đề riêng biệt Đối với một số đối tượng, ảnh được chụp nhiều lần, thay đổi ánh sáng, nét mặt (mở / nhắm mắt, cười / không cười) và các chi tiết trên khuôn mặt (đeo kính / không đeo kính) Tất cả các hình ảnh được chụp trên nền tối đồng nhất với tư thế thẳng đứng
Trong cơ sở dữ liệu về khuôn mặt của người Bangladesh, có 200 hình ảnh khác nhau của 20 người riêng biệt với 10 hình ảnh của mỗi người dưới ánh sáng, căn chỉnh và tư thế khác nhau Những hình ảnh này được cắt và xử lý thủ công
Trang 53
Trang 6Kết Luận:
- Thực hiện phân tích định lượng PCA, ICA, LDA và SVM Từ kết quả thử nghiệm, chúng tôi nhận thấy rằng phân tích này có ý nghĩa đối với việc phát triển các thuật toán mạnh mẽ mới để nhận dạng khuôn mặt Kết quả thử nghiệm cho thấy SVM cho độ chính xác tốt hơn (mạnh nhất) so với các thuật toán nhận dạng khuôn mặt khác về các tình huống chiếu sáng, căn chỉnh, tiếng ồn và tư thế đa dạng
Trang 75
IV Các bước nhận diện khuôn mặt:
B1: Tìm Khuôn mặt
Tính năng nhận diện khuôn mặt trở nên phổ biến vào đầu những năm 2000 khi Paul Viola và Michael Jones phát minh ra một cách phát hiện khuôn mặtđủ nhanh để chạy trên các máy ảnh giá rẻ Tuy nhiên, hiện nay có nhiều giải pháp đáng tin cậy
hơn Chúng ta sẽ sử dụng được phát minh vào năm 2005 có tên là Biểu đồ phân định
hướng - hay gọi tắt là HOG
Bước 2: Định vị và dựng hình khuôn mặt:
- Có một vấn đề mà các mặt quay theo các hướng khác nhau
-> Để giải quyết vấn đề này chúng ta thực hiện điều đó với thuật toán face landmark estimation (ước lượng cột mốc trên mặt), được tạo ra bởi Vahid Kazemi và Josephine vào năm 2014
Ý tưởng cơ bản là chúng ta sẽ đưa ra 68 điểm cụ thể (được gọi là điểm mốc ) tồn tại
trên mọi khuôn mặt - đỉnh cằm, mép ngoài của mỗi mắt, mép trong của mỗi lông mày, v.v Sau đó, chúng ta sẽ đào tạo một chiếc máy học thuật toán để có thể tìm thấy 68 điểm cụ thể này trên bất kỳ mặt nào:
Đây là kết quả của việc xác định vị trí 68 điểm mốc trên hình ảnh thử nghiệm:
Trang 8Bây giờ chúng ta đã biết mắt và miệng là gì, chúng ta sẽ chỉ cần xoay, chia tỷ lệ và cắt hình ảnh sao cho mắt và miệng được căn giữa tốt nhất có thể Chúng tôi sẽ không thực hiện bất kỳ sự cong vênh 3d ưa thích nào vì điều đó sẽ làm cho hình ảnh bị biến
dạng Chúng tôi sẽ chỉ sử dụng các phép biến đổi hình ảnh cơ bản như phép quay và tỷ
lệ để bảo toàn các đường song song (gọi là chuyển đổi affine)
Dù quay mặt theo hướng nào, chúng ta cũng có thể chuyển mắt môi về trung tâm
Trang 97
Bước 3: Mã hóa khuôn mặt:
- Chúng ta sử dụng Deep Convolutional Neural Network - mạng nơron tích chập đa lớp Nhưng thay vì đào tạo mạng nơron để nhận diện ảnh, chúng ta đào tạo nó để tìm ra
128 đo lường cho mỗi khuôn mặt
- 128 đo lường này được gọi là embedding Ý tưởng giảm chiều dữ liệu thô sang đại
diện đo lường tạo ra từ máy tính xuất hiện rất nhiều trong học máy (đặc biệt là trong dịch thuật)
Bước 4: Tìm tên người từ đoạn mã hóa
- Có thể thực hiện điều này với một thuật toán phân loại đơn giản như phân loại tuyến tính SVM
IV Thực nghiêm và đánh giá
Ø Ưu điểm:
Đây là công nghệ được phát triển trên nàng tảng của trí tuệ nhận tạo
AI, vậy nên có thể nói công nghệ nhận diện khuôn mặt đang là xu hướng toàn cầu Công nghệ này đã đóng góp không nhỏ vào việc kích hoạt hệ thống vận hành thông minh cho nhiều lĩnh vực khác nhau
Khi sử dụng để đếm người trong bán lẻ, công nghệ nhận diện khuôn mặt còn có thể cung cấp thông tin cá nhân của từng khách hàng cho doanh nghiệp giúp doanh nghiệp có dữ liệu đưa ra các chiến lược tiếp thị
cá nhân hóa đến khách hàng
Ø Nhược điểm:
Công nghệ nhận diện khuôn mặt vẫn có nhược điểm đó là rất khó cam kết độ chính xác
Vấn đề tiếp cận khách hàng và thiết bị kĩ thuật