5 Công nghệ nhận diện mống mắt [5] Công nghệ nhận diện mống mắt hay còn được gọi là công nghệ cảm biến mốngmắt là phương pháp áp dụng thuật toán hình ảnh để nhận dạng một người nào đódựa
Trang 1HỌC VIỆN NÔNG NGHIỆP VIỆT NAM
KHOA CƠ - ĐIỆN - -
Giáo viên hướng dẫn : TS….
Sinh viên thực hiện : …
Chuyên ngành : TỰ ĐỘNG HÓA
Hà Nội – 2021
Trang 2LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi, các kết quảnghiên cứu được trình bày trong đồ án là trung thực, khách quan và chưa từng dùng
để bảo vệ cho bất kỳ đồ án môn học nào
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện đồ án đã được cám
ơn, các thông tin trích dẫn trong đồ án này đều được chỉ rõ nguồn gốc
Hà Nội, ngày tháng năm 2021
Tác giả đồ án
….
Trang 3LỜI CẢM ƠN
Em xin cám ơn Ban giám đốc Học viện Nông nghiệp Việt Nam, Ban chủ nhiệmkhoa Cơ-Điện cùng toàn thể các thầy, cô giáo đã tận tình dạy dỗ, giúp đỡ em trongthời suốt quá trình học tập tại trường Học viện Nông nghiệp Việt Nam Xin cảm ơncác thầy cô đã trực tiếp giảng dạy em cũng như thầy cô đã gián tiếp giúp đỡ emtrong quá trình tìm kiếm tài liệu cho việc thực hiện đồ án tốt nghiệp này
Đặc biệt em xin trân trọng cảm ơn thầy TS … – Người đã tận tình hướng dẫn,cung cấp tài liệu và truyền đạt nhiều ý kiến thiết thực trong suốt quá trình thực hiện
đồ án Những kinh nghiệm quý báu mà thầy truyền đạt sẽ là hành trang vững chắcgiúp em tự tin hơn trong nghề nghiệp sau này
Xin cảm ơn gia đình và bạn bè đã ủng hộ, động viên, giúp đỡ em vượt qua khókhăn trong suốt thời gian vừa qua để em có thể hoàn thành nhiệm vụ học tập cũngnhư đồ án tốt nghiệp một cách tốt nhất
Mặc dù đã có nhiều cố gắng nhưng với kiến thức còn hạn hẹp và thời gian tiếpxúc với thực tế chưa nhiều, vì vậy bài báo cáo đồ án của em không thể tránh khỏinhiều thiếu sót Em rất mong có được những ý kiến đóng góp của các thầy cô và cácbạn để cho kiến thức trong cuốn báo cáo này được hoàn thiện hơn
Em xin trân thành cảm ơn!
Hà nội, ngày….tháng….năm 2021
Sinh viên
….
Trang 4MỤC LỤC LỜI CAM ĐOAN I LỜI CẢM ƠN II MỤC LỤC…… III DANH MỤC HÌNH ẢNH VI DANH MỤC BẢNG VIII
MỞ ĐẦU 1
1 Đặt vấn đề 1
2 Mục đích nghiên cứu của đề tài 2
3 Đối tượng nghiên cứu 2
4 Nội dung và phương pháp nghiên cứu 2
4.1 Nội dung 2
4.2 Phương pháp nghiên cứu 3
5 Giới hạn đề tài 3
6 Thời gian và địa điểm thực hiện 3
CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI 4
1.1 Tổng quan về xử lý ảnh trong giám sát an ninh 4
1.1.1 An ninh khu vực sân bay, hàng không 4
1.1.2 Đảm bảo an ninh tại các toàn nhà, khu dân cư, đô thị 5
1.1.3 Một số phương pháp đảm bảo an ninh 6
Trang 51.2 Tình hình thực tế ứng dụng xử lý ảnh vào giám sát an ninh ở trong và ngoài
nước……… 1
0 1.2.1 Trên thế giới 10
1.2.2 Tại Việt Nam 11
1.3 Tổng quan về nhận diện khuôn mặt 13
1.3.1 Bài toán nhận diện mặt người 13
1.3.2 Những khó khăn của nhận dạng khuôn mặt 13
1.3.3 Cấu trúc xử lý cơ bản của một hệ thống nhận dạng khuôn mặt 15
1.3.4 Các yếu tố để nhận diện khuôn mặt 16
1.4 Kết luận chương 1 18
CHƯƠNG 2 NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU 19
2.1 Yêu cầu thiết kế hệ thống nhận diện khuôn mặt đảm bảo an ninh trong tòa nhà… 19
2.2 Các phương pháp nhận diện khuôn mặt 19
2.2.1 Nhận diện khuôn mặt dựa trên tri thức 19
2.2.2 Đối sánh mẫu 20
2.2.3 Nhận diện khuôn mặt dựa trên ngoại hình 20
2.2.4 Nhận diện khuôn mặt dựa trên chuyển động 21
2.2.5 Nhận diện khuôn mặt dựa trên tính năng 22
2.3 Sơ đồ công nghệ của hệ thống nhận diện khuôn mặt 22
2.4 Các thiết bị phần cứng sử dụng 23
2.4.1 Webcam Logitech 23
2.4.2 Máy tính mini NUC 24
Trang 62.5 Phần mềm và các thuật toán sử dụng 26
2.6 Lưu đồ thuật toán 45
CHƯƠNG 3 KẾT QUẢ VÀ THẢO LUẬN 51
3.1 Xây dựng phần cứng của hệ thống 51
3.2 Xây dựng chương trình cho hệ thống nhận diện khuôn mặt phục vụ kiểm soát an ninh trong tòa nhà 51
3.2.1 Các bước xây dựng hệ thống trên C# 51
3.2.2 Giao diện và hoạt động của hệ thống 54
3.3 Một số kết quả thực nghiệm 57
3.4 Kết quả đạt được 60
3.5 Kết quả chưa đạt được 60
3.6 Đánh giá 60
3.7 Kết luận chương 3 60
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 61
TÀI LIỆU THAM KHẢO 62
PHỤ LỤC 64
Trang 7DANH MỤC HÌNH ẢNH
Hình 1 1 Kiểm soát an ninh khu vực bay [1] 5
Hình 1 2 Kiểm soát an ninh tại các tòa nhà [2] 6
Hình 1 3 Kiểm soát an ninh sử dụng con người kết hợp camera giám sát [3] 7
Hình 1 4 Nhận diện vân tay [4] 8
Hình 1 5 Công nghệ nhận diện mống mắt [5] 9
Hình 1 6 Nhận diện khuôn mặt [6] 10
Hình 1 7 Giám sát an ninh bằng nhận diện khuôn mặt tại Trung Quốc [7] 11
Hình 1 8 Hình ảnh cảnh báo gửi về tin nhắn ngay khi xảy ra tình huống [8] 12
Hình 1 9 Hệ thống giám sát an ninh giao thông [9] 13
Hình 1 10 Hệ thống nhận dạng mặt người [10] 14
Hình 1 11 Các bước chính trong một hệ thống nhận dạng khuôn mặt 16
Hình 2 1 Sơ đồ nguyên lý hoạt động của hệ thống 20
Hình 2 2 Webcam Logitech HD C270 [11] 21
Hình 2 3 Máy tính mini NUC [12] 22
Hình 2 5 Ngôn ngữ lập trình C# [13] 23
Hình 2 6 SSD trong bài toán phát hiện đối tượng [14] 24
Hình 2 7 Ví dụ về đánh giá khung hình trong SSD [14] 25
Hình 2 8 Kiến trúc SSD [14] 26
Hình 2 9 Cấu trúc các lớp kết nối trên Yolo [14] 26
Hình 2 10 Cách tính jaccard overlap [14] 27
Hình 2 11 Một số hình ảnh chạy thực nghiệm của SSD [14] 27
Hình 2 12 Bộ phân loại tuyến tính [15] 29
Hình 2 13 Phân tích tuyến tính [15] 29
Hình 2 14 SVM tuyến tính cứng [15] 30
Hình 2 15 Vector hỗ trợ [15] 31
Hình 2 16 Dữ liệu không thể phân tích tuyến tính [16] 31
Hình 2 18 Chuyển đổi dữ liệu phân tách tuyến tính [16] 32
Hình 2 20 Hàm phân biệt phi tuyến tính [16] 33
Trang 8Hình 2 21 Phân biệt trên SVM [16] 34
Hình 2 22 Một số lỗi đào tạo đơn giản [16] 34
Hình 2 23 SVM tuyến tính mềm [16] 35
Hình 2 24 Hình ảnh hiển thị cách các điểm dữ liệu tương tự thường tồn tại gần nhau [17] 38
Hình 2 25 Lưu đồ thuật toán của hệ thống nhận diện khuôn mặt 46
Hình 2 26 Sơ đồ thuật toán KNN (1) 47
Hình 2 27 Sơ đồ hệ thống cảnh báo 48
Hình 3 1 Sơ đồ khối phần cứng hệ thống 50
Hình 3 5 Tạo project mới 51
Hình 3 6 Chọn Windows Form App(.NET Framework) 51
Hình 3 7 Khởi tạo thông tin app 52
Hình 3 8 Giao diện với 1-ToolBox, 2-Giao diện chính, 3-Thông tin quản lý giao diện 52
Hình 3 9 Giao diện viết code cho ứng dụng 53
Hình 3 10 Hệ thống dạy thuật toán KNN 54
Hình 3 11 Giao diện của hệ thống nhận diện khuôn mặt 54
Hình 3 12 Chọn mô hình huấn luyện 55
Hình 3 13 Mục Setting của hệ thống 55
Hình 3 14 Các bước huấn luyện mô hình 56
Hình 3 15 Một số kết quả thu được sau quá trình huấn luyện 57
Trang 10MỞ ĐẦU
1 Đặt vấn đề
Với sự phát triển không ngừng của khoa học và công nghệ, đặc biệt là vớinhững chiếc điện thoại thông minh ngày càng hiện đại và được sử dụng phổ biếntrong đời sống con người đã làm cho lượng thông tin thu được bằng hình ảnh ngàycàng tăng Theo đó, lĩnh vực xử lý ảnh cũng được chú trọng phát triển, ứng dụngrộng rãi trong đời sống xã hội hiện đại Không chỉ dừng lại ở việc chỉnh sửa, tăngchất lượng hình ảnh mà với công nghệ xử lý ảnh hiện nay chúng ta có thể giải quyếtcác bài toán nhận dạng chữ viết, nhận dạng dấu vân tay, nhận dạng khuôn mặt…Một trong những bài toán được nhiều người quan tâm nhất của lĩnh vực xử lý ảnhhiện nay đó là nhận dạng khuôn mặt Hệ thống nhận dạng khuôn mặt là một ứngdụ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ữngcá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 Như chúng ta đã biết, khuôn mặt đóng vaitrò quan trọng trong quá trình giao tiếp giữa người với người, nó mang một lượngthông tin giàu có, chẳng hạn như từ khuôn mặt chúng ta có thể xác định giới tính,tuổi tác, chủng tộc, trạng thái cảm xúc, đặc biệt là xác định mối quan hệ với đốitượng (có quen biết hay không) Do đó, bài toán nhận dạng khuôn mặt đóng vai tròquan trọng trong nhiều lĩnh vực đời sống hằng ngày của con người như các hệthống giám sát, quản lý vào ra, tìm kiếm thông tin một người nổi tiếng,…đặc biệt là
an ninh, bảo mật Có rất nhiều phương pháp nhận dạng khuôn mặt để nâng cao hiệusuất tuy nhiên dù ít hay nhiều những phương pháp này đang vấp phải những thửthách về độ sáng, hướng nghiêng, kích thước ảnh, hay ảnh hưởng của tham số môitrường
Bài toán Nhận diện khuôn mặt bao gồm nhiều bài toán khác nhau như: pháthiện mặt người, đánh dấu, trích chọn (rút) đặc trưng, gán nhãn, phân lớp Trongthực tế, nhận dạng khuôn mặt người là một hướng nghiên cứu được nhiều nhà khoahọc quan tâm, nghiên cứu để ứng dụng trong thực tiễn
Trang 11Về ưu điểm cũng như một trong những lợi thế quan trọng của nhận diện khuônmặt là nó không đòi hỏi sự hợp tác của các đối tượng thử nghiệm Các hệ thốngthiết kế được lắp đặt tại các sân bay, khu chung cư, và những nơi công cộng khác cóthể xác định các cá nhân giữa đám đông, mà không bỏ sót một ai Các hệ thốngkiểm tra khác như dấu vân tay, quét mống mắt, và nhận dạng giọng nói không thểthực hiện được như vậy Tuy nhiên nhận diện khuôn mặt còn khá nhiều hạn chế dẫnđến tỷ lệ nhận diện sai tương đối lớn như góc mặt bị che khuất, sử dụng kính râm,khẩu trang, biểu cảm khuôn mặt khác nhau, tốc độ di chuyển của đối tượng hayhình ảnh chất lượng thấp.
Tất cả những vấn đề còn tồn tại trên chính là những thách thức lớn đối với côngnghệ nhận diện khuôn mặt Để đáp ứng việc tăng chất lượng nhận diện khuôn mặttrong một khoảng thời gian đủ ngắn thì em đã chọn thực hiện đề tài: “Nghiêncứu,phát triển hệ thống nhận diện khuôn mặt phục vụ kiểm soát an ninh trong tòanhà ” làm đề tài nghiên cứu bảo vệ đồ án tốt nghiệp đại học của mình Mong rằngkết quả của đề tài là hệ thống sẽ tự động nhận diện và phát hiện đối tượng lạ mặt kịpthời đưa ra cảnh báo trong thời gian ngắn nhất với chất lượng ảnh tốt nhất
2 Mục đích nghiên cứu của đề tài
Xây dựng một dự án phần mềm ứng dụng nhận dạng khuôn mặt
Tìm hiểu về thư viện OpenCv, phần mềm EmguCv
Nghiên cứu phương pháp chuyển khuôn mặt sang vector, các thuật toánKNN, SVM
3 Đối tượng nghiên cứu
Các phương pháp, thuật toán phục vụ cho việc phát hiện và nhận dạngkhuôn mặt người trên ảnh
Bộ thư viện xử lý ảnh OpenCv và công cụ hỗ trợ EmguCv
Bộ CSDL chuẩn Yalefaces, ngoài ra có thêm bộ CSDL sinh viên tự thu thập
4 Nội dung và phương pháp nghiên cứu
4.1 Nội dung
Chương 1: Tổng quan đề tài
Chương 2: Nội dung và phương pháp nghiên cứu
Chương 3: Kết quả và thảo luận
Trang 124.2 Phương pháp nghiên cứu
Phương pháp nghiên cứu kế thừa:
Dựa vào các thuật toán đã có để phân tính đối tượng
Kế thừa từ các công trình nghiên cứu khoa học và sử dụng các phần mềmOpencv, ngôn ngữ lập trình python
Phương pháp tham khảo tài liệu : bằng cách thu thập thông tin từ sách, tạpchí về điện tử và truy cập internet
5 Giới hạn đề tài
- Tập trung tìm hiểu phát hiện khuôn mặt và nhận dạng khuôn mặt
- Việc xử lý ảnh, nhận dạng khuôn mặt thỏa mãn các điều kiện:
+ Ánh sáng bình thường, ngược sáng, ánh sáng đèn điện (Với bộ CSDL tự thu thập)
+ Góc ảnh: Trực diện hoặc góc nghiêng không quá 30o
+ Không bị che khuất
Trang 13CHƯƠNG 1. TỔNG QUAN ĐỀ TÀI
1.1Tổng quan về xử lý ảnh trong giám sát an ninh
Trước tiên, hiểu một cách đơn giản thì an ninh chính là trật tự, an toàn xã hội
và giám sát an ninh chính là quá trình nhằm bảo vệ con người, bảo vệ đất nước khỏinhững rối ren, mối đe dọa nhằm đem lại sự bình yên và giải quyết những bất đồnghay mâu thuẫn Xử lý ảnh là một trong những mảng quan trọng nhất trong kỹ thuậtthị giác máy tính, là tiền đề cho nhiều nghiên cứu thuộc lĩnh vực này Hai nhiệm vụ
cơ bản của quá trình xử lý ảnh là nâng cao chất lượng thông tin hình ảnh và xử lý sốliệu cung cấp cho các quá trình khác trong đó có việc ứng dụng thị giác vào điềukhiển Xử lý ảnh trong giám sát an ninh chính là biện pháp kiểm soát an ninh dựatrên các công cụ, phần mềm truy quét, xử lý bằng hình ảnh Dưới đây là ví dụ vềnhiệm vụ kiểm soát an ninh tại một số khu vực bảo vệ an ninh chặt chẽ
1.1.1 An ninh khu vực sân bay, hàng không
Như chúng ta đã từng thấy hoặc trải nghiệm khi sử dụng các dịch vụ tại sân bay,đơn giản như trước khi lên máy bay thì toàn bộ người và hành lý đều được kiểm tra
kỹ càng và họ cũng có rất nhiều quy định khắt khe khi tham gia dịch vụ Chắc hẳn
có lần, ta đã tự đặt câu hỏi tại sao họ phải kiểm tra kỹ như vậy thì dưới đây là một
số yêu cầu và nhiệm vụ đảm bảo an ninh hàng không:
- Bảo vệ, duy trì trật tự,kỷ luật, an toàn theo quy định của nhà nước, chốngkhủng bố
- Bảo vệ trang thiết bị, công trình, tàu bay khu vực
- Giám sát người, hành lý, hàng hóa và phương tiện khi có dấu hiệu uy hiếp anninh
- Chống gây rối, vận chuyển vật phẩm bất hợp pháp, nguy hiểm
- Kiểm soát an ninh nội bộ
Trang 14Hình 1 1 Kiểm soát an ninh khu vực bay [1]
1.1.2 Đảm bảo an ninh tại các toàn nhà, khu dân cư, đô thị
Vấn đề an ninh chính là vấn đề quan trọng hàng đầu tại các khu dân cư Hoạtđộng quản lý an ninh ở những khu vực này luôn cần thật cẩn trọng để đảm bảotài sản cho cư dân sinh sống và làm việc trong tòa nhà có được môi trường sống
an toàn và chất lượng Một số nhiệm vụ cần kiểm soát an ninh tại đây như:
- Kiểm soát hàng hóa: Khai báo khi mang vào và mang ra gồm loại hàng hóa, sốlượng cụ thể, giấy tờ hợp pháp,
- Kiểm soát người, khách ra vào tòa nhà
- Tuần tra an ninh
- Quản lý phương tiện ra, vào
Trên đây chỉ là ví dụ đơn giản về việc kiểm soát an ninh ở hai nơi thường thấynhất Tuy nhiên khi nhìn sơ qua nhiệm vụ của việc đảm bảo an ninh là cần thiết vàquan trọng đến mức như thế nào, bất kì cơ quan hay tổ chức nào cũng cần cho mìnhmột hệ thống quản lý an ninh chặt chẽ để đảm bảo an toàn, trật tự, bảo vệ cả conngười và tài sản
Trang 15Hình 1 2 Kiểm soát an ninh tại các tòa nhà [2]
1.1.3 Một số phương pháp đảm bảo an ninh
Vấn đề đảm bảo an ninh luôn được chú trọng cho nên con người ta đã có rấtnhiều phương pháp khác nhau Phương pháp truyền thống, đơn giản nhất là sử dụngcon người kết hợp với camera giám sát, đã có rất nhiều công ty triển khai lĩnh vựcbảo an Tuy nhiên phương pháp này còn nhiều hạn chế trong việc ghi nhớ, lưu trữchính xác thông tin và phát hiện kịp thời Đôi khi chỉ cần một phút lơ là, không chú
ý của người bảo vệ thì kẻ gian có thể lợi dụng để thực hiện hành vi sai trái hoặcchúng có thể dễ dàng phá hủy, điều hướng góc quan sát của camera giám sát Đặcbiệt khi có vấn đề xảy ra thường được phát hiện chậm trễ, rồi phải truy xuất lạicamera để tìm và thường hệ thống này sẽ chỉ lưu trữ thông tin trong một khoảngthời gian nhất định
Ngày nay, thấy được phương pháp truyền thống còn nhiều hạn chế và rủi rocao, cùng với việc phát triển mạnh mẽ của khoa học và công nghệ, người ta đã đưa
ra rất nhiều biện pháp đảm bảo an ninh hiện đại, thông minh, chính xác, độ an toàncao và lưu trữ dữ liệu lớn, đảm bảo phát hiện nhanh chóng, kịp thời như nhận diện
Trang 16khuôn mặt, nhận diện dấu vân tay, bảo mật mống mắt, công nghệ nhận dạng quatĩnh mạch máu lòng bàn tay
Hình 1 3 Kiểm soát an ninh sử dụng con người kết hợp camera giám sát [3]
Hình 1 4 Nhận diện vân tay [4]
Mỗi dấu vân tay gần như là duy nhất (tỷ lệ trùng dấu vân tay là 1/64 tỷ dấuvân tay) Điều này cho thấy dấu vân tay có tính bảo mật đến nhường nào, cho nênngười ta đã dựa trên đặc tính này để xây dựng hệ thống nhận diện giúp đảm bảo anninh Tuy nhiên, với cơ chế hoặt động kiểm tra bằng cách người sử dụng chạm dấuvân tay vào để hệ thống tiến hành truy quét đã gây ra khó khăn, ức chế cho người
Trang 17dùng trong một số trường hợp hệ thống không nhận diện được như tay ướt, ra mồhôi, dính bẩn, bệnh về da làm nhiễu dấu vân tay hoặc khi phần có dấu vân tay gặptai nạn làm mất dấu vân tay…
Hình 1 5 Công nghệ nhận diện mống mắt [5]
Công nghệ nhận diện mống mắt hay còn được gọi là công nghệ cảm biến mốngmắt là phương pháp áp dụng thuật toán hình ảnh để nhận dạng một người nào đódựa vào cấu trúc các đường vân phức tạp và duy nhất của mống mắt, thậm chí ngay
cả khi họ đang đeo kính hoặc sử dụng áp tròng từ một khoảng cách nhất định.Nhiều quốc gia đã áp dụng công nghệ này để nhận diện công dân, xác thực hộchiếu, điền thông tin xác thực qua website Quá trình nhận diện mống mắt đượcthực hiện bằng cách sử dụng máy chiếu bước sóng nhìn thấy được hoặc tia cận hồngngoại vào mắt người để ghi lại các chi tiết và cấu trúc phức tạp của mống mắt (cóthể hoạt động ngay trong điều kiện thiếu sáng) Về cơ bản, công nghệ nhận diệnmống mắt được tích hợp một bộ cảm biến ở mặt trước máy, bao gồm 2 phần chính
là đèn chiếu tia hồng ngoại đến mắt và các ống kính camera Chùm tia phản xạ từmắt đến phần ống kính sẽ được phân tích và xác định các vị trí gồm đồng tử, mốngmắt, lông mi, mí mắt, qua đó tìm ra các tham số như tần số, biên độ, phi Sau quátrình phân tích và xác định, các thông số này sẽ được biên dịch thành các dòng lệnh
Trang 18thành mẫu kỹ thuật số lưu trữ bảo mật cực kì an toàn trong thiết bị Mẫu được mãhóa kỹ thuật số bởi thuật toán và các phép thống kê sẽ cho phép nhận dạng mộtngười hay là ai đó đang đóng giả người đó Sau khi biên dịch máy tính sẽ tiếp tục sửdụng thuật toán để so sánh mẫu đang quét với mẫu được lưu trữ trên cơ sở dữ liệuvới tốc độ khoảng một triệu mẫu mỗi giây, cùng sai số cực thấp Cũng tương tự nhưnhận diện bằng vân tay, nhận diện mống mắt cũng có tính bảo mật rất cao, nhưngkhi sử dụng người ta cần đưa mắt về vị trí để kiểm tra, quá trình xác nhận còn chậmhơn so với xác nhận vân tay.
Hình 1 6 Nhận diện khuôn mặt [6]
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ộtkhung 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
So với hai phương pháp được nêu trên thì phương pháp nhận diện khuôn mặtcho thấy sự đơn giản, dễ dàng, tiện lợi và nhanh gọn hơn mà vẫn đảm bảo độ chínhxác cao Bởi công nghệ nhận dạng khuôn mặt là dựa trên việc xác định các điểm vịtrí trên khuôn mặt, tỷ lệ này đối với các cặp song sinh cũng có giá trị khác nhau.Người sử dụng không cần phải chạm hay đưa rõ ràng một bộ phận như mắt vào khuvực kiểm tra Trong khung hình, hệ thống tự phát hiện khuôn mặt sau đó nhận dạng
Trang 19khuôn mặt Chính vì sự ưu việt của nó đã thúc đẩy em tìm tòi và mong muốn xâydựng, phát triển hệ thống nhận diện khuôn mặt này.
1.2Tình hình thực tế ứng dụng xử lý ảnh vào giám sát an ninh ở trong và ngoài nước
1.2.1 Trên thế giới
a) Tại Trung Quốc
Hình 1 7 Giám sát an ninh bằng nhận diện khuôn mặt tại Trung Quốc [7]
Trung quốc là một quốc gia rất phát triển về công nghệ Một số hệ thống xử lýảnh giám sát an ninh đã và đang hoạt động tại nước này:
Công ty Eyecool có hệ thống giám sát tại 20 sân bay và ga xe lửa, đã giúp bắtđược 1.000 tên tội phạm Eyecool cũng đang trao hơn hai triệu hình ảnh nhận diệnkhuôn mặt mỗi ngày cho một hệ thống dữ liệu lớn đang được phát triển của cảnh sát
là Skynet
Một công ty khác có tên Number 1 Community đang phát triển ứng dụng chophép phát hiện đám đông đang xung đột Bên cạnh đó là mộ ứng dụng cho phépcảnh sát sử dụng bản đồ ảo của các tòa nhà để tìm ra ai đang sống ở đâu
Còn tại một tòa nhà ở thành phố Tương Dương, một hệ thống nhận dạng khuônmặt được thiết lập tại cổng an ning, thu thập hình ảnh của cư dân để bổ sung cho hệthống dữ liệu của cảnh sát địa phương
Trang 20b) Tại Đan Mạch
Sân bay HC.Andersen (HCA) tại Odense, Đan Mạch là một sân bay hiện đại vậnchuyển du khách tới các địa điểm ở khắp Châu Âu với những lịch trình được thôngbáo chi tiết Một sân bay hiện đại sẽ sở hữu trang thiết bị an ninh hiện đại, và nhàlắp đặt SensorTek đã lựa chọn sản phẩm camera an ninh của HIKVISION, bao gồmcác mã DarkFighter và PanoVu để lắp đặt tại sân bay này Mỗi năm, sân bay HCAcung cấp các chuyến bay cho 20.000 hành khách Hầu hết hành khách thường đicùng trẻ nhỏ, có hành lý và nhiều hàng hóa bổ sung khác như xe đạp, xe đẩy…Sân bay HCA đã hợp tác với SensorTek để được cung cấp một số giải pháp anninh, bao gồm hệ thống giám sát hình ảnh, trong đó có thiết bị camera PTZDarkFighter Thiết bị camera này có khả năng cung cấp hình ảnh sắc nét ngay cảtrong bóng tối và trong điều kiện ánh sáng yếu Ngoài ra, thiết bị này còn có thể tựđộng quay quét và phóng to, chất lượng hình ảnh tuyệt vời, hỗ trợ khả năng phóng
to đến mức có thể nhìn thấy rõ khuôn mặt
Giải pháp giám sát HIKVISION còn hỗ trợ phần mềm thông minh giúp pháthiện sự thay đổi nếu có Nếu tại một khu vực mà trước đó không có gì, thiết bịcamera lại quan sát thấy có sự thay đổi, hệ thống sẽ tự động kích hoạt cảnh báo Ápdụng tương tự trong trường hợp nếu ai đó có những hành vi khả nghi Ví dụ, mộthành khách đi vào khu vực mà họ không được phép, hệ thống sẽ kích hoạt báo động
và từ sự hỗ trợ của hệ thống camera, nhân viên an ninh sẽ đánh giá mức độ tìnhhuống đang xảy ra
1.2.2 Tại Việt Nam
a) Giải pháp cảnh báo thông minh bằng công nghệ AI (AI Smart Warning)
"Giải pháp cảnh báo thông minh bằng công nghệ AI" dựa trên lõi công nghệ trítuệ nhân tạo (AI) của Nhật Bản đã được giới thiệu đến nhiều cơ quan như là giảipháp cho phép tự động nhận diện những hành động có tính nguy hiểm của conngười thông qua camera giám sát an ninh như: hành động gây gổ đánh nhau, sayxỉn, ngã, cầm dao, súng, búa, đột nhập vào khu vực cấm,… Việc này giúp nhậncảnh báo và xác minh một cách dễ dàng, mọi nơi, mọi lúc để đưa ra các biện pháp
xử lý ngăn chặn hoặc trợ giúp kịp thời nhằm tăng cường đảm bảo an ninh, an toàn
Trang 21và trật tự xã hội AI Smart Warning giúp cho việc cảnh báo được thực hiện tự động
và sớm nhất có thể, do đó trợ giúp cho các cơ quan chức năng kịp thời xác nhận và
xử lý tình huống Thông báo mà AI Smart Warning gửi về cho cơ quan chức năngbao gồm cả hình ảnh đi kèm Đây cũng chính là hình ảnh được trích xuất từ camera,
do đó hoàn toàn đủ căn cứ để xử lý Ngoài ra, dựa trên hình ảnh này, nếu cần cơquan chức năng cũng có thể dễ dàng truy xuất được cả đoạn video mà camera đã ghilại
Hình 1 8 Hình ảnh cảnh báo gửi về tin nhắn ngay khi xảy ra tình huống [8]
b) Giải pháp HORUS – Hệ thống AI giám sát an ninh và giao thông của VNPT
Hình 1 9 Hệ thống giám sát an ninh giao thông [9]
VNPT áp dụng và triển khai thành công giải pháp HORUS – Hệ thống AICamera giám sát an ninh và giao thông cho hơn 10 tỉnh thành tại Việt Nam, cụ thể
là Bình Phước, Cao Bằng, Hà Giang, Hà Nam, Tây Ninh, Bắc Giang, Ninh Bình…Giúp các lực lượng chức năng quản lý, phát hiện kịp thời, xử lý những hành viphạm luật, góp phần nâng cao chất lượng cuộc sống cho người dân Hệ thống vừaquản lý vi phạm vừa phát hiện tai nạn, gây gổ, đánh nhau, nhận diện đối tượng xâm
Trang 22nhập vùng cấm, nhận diện đám đông, nhận diện đối tượng sử dụng vũ khí nguyhiểm, phòng chống cướp giật, tệ nạn đảm bảo an ninh.
1.3Tổng quan về nhận diện khuôn mặt
1.3.1 Bài toán nhận diện mặt người
Hệ thống nhận dạng mặt người là một hệ thống nhận vào là một ảnh hoặc mộtđoạn video (một dòng các hình ảnh liên tục) Qua xử lý, tính toán hệ thống xác địnhđược vị trí mặt người (nếu có) trong ảnh và xác định là người nào trong số nhữngngười mà hệ thống đã được biết (qua quá trình học) hoặc là người lạ
Hình 1 10 Hệ thống nhận dạng mặt người [10]
1.3.2 Những khó khăn của nhận dạng khuôn mặt
Bài toán nhận dạng mặt người là bài toán đã được nghiên cứu từ những năm
70 Tuy nhiên, đây là một bài toán khó nên những nghiên cứu hiện tại vẫn chưa đạtđược những kết quả mong muốn Chính vì thế, vấn đề này vẫn đang được nhiềunhóm trên thế giới quan tâm nghiên cứu Khó khăn của bài toán nhận dạng mặtngười có thể kể đến như sau:
Trang 23- Tư thế góc chụp: Ảnh chụp khuôn mặt có thể thay đổi rất nhiều bởi vì góc chụpgiữa camera và khuôn mặt Chẳng hạn như : chụp thẳng, chụp xéo bên trái 450 hayxéo bên phải 450,chụp từ trên xuống, chụp từ dưới lên,v.v…) Với các tư thế khácnhau, các thành phần trên khuôn mặt như mắt, mũi, miệng có thể bị khuất một phầnhoặc thậm chí khuất hết Khuôn mặt đang nhìn thẳng nhưng góc chụp của máy ảnhlại lệch nhiều so với hướng nhìn thẳng của khuôn mặt hoặc là lúc chụp ảnh mặtngười quay nghiêng sang một bên nào đó nhiều đều là những khó khăn rất lớn trongbài toán nhận diện mặt người.
- Sự xuất hiện hoặc thiếu một số thành phần của khuôn mặt: Các đặc trưng như râumép, râu hàm, mắt kính… có thể xuất hiện hoặc không Vấn đề này làm cho bàitoán càng khó khăn hơn rất nhiều
- Sự biểu cảm của khuôn mặt: Biểu cảm của khuôn mặt người có thể làm ảnh hưởngđáng kể lên các thông số của khuôn mặt Chẳng hạn, cùng một khuôn mặt mộtngười, nhưng có thể sẽ rất khác khi họ cười hoặc sợ hãi…
- Sự che khuất: Khuôn mặt có thể bị che khuất bởi các đối tượng khác hoặc cáckhuôn mặt khác
- Hướng của ảnh: Các ảnh của khuôn mặt có thể biến đổi rất nhiều với các góc quaykhác nhau của trục camera Chẳng hạn chụp với trục máy ảnh nghiêng làm chokhuôn mặt bị nghiêng so với trục của ảnh
- Điều kiện của ảnh: Ảnh được chụp trong các điều kiện khác nhau về: chiếu sang,
về tính chất camera (máy kỹ thuật số, máy hồng ngoại…) ảnh hưởng rất nhiều đếnchất lượng ảnh khuôn mặt
- Màu sắc của da mặt: màu sắc của da mặt quá tối hoặc gần với màu sắc của khungcảnh môi trường xung quanh cũng là một khó khăn với bài toán nhận diện mặtngười Nếu màu sắc của da người quá tối thì thuật toán sẽ gặp khó khăn trong việcnhận diện các đặc trưng và có thể không tìm ra được khuôn mặt người
- Nền ảnh phức tạp: nền của ảnh phức tạp là một trong những khó khăn nhất trongbài toán nhận diện khuôn mặt người trong ảnh, khuôn mặt người sẽ dễ bị nhầm lẫnvới nhiều khung cảnh phức tạp xung quanh và ảnh hưởng rất nhiều đến quá trìnhphân tích và rút trích các đặc trưng của khuôn mặt trong ảnh, có thể dẫn đến không
Trang 24nhận ra khuôn mặt hoặc là nhận nhầm các khung cảnh xung quanh thành khuôn mặtngười.
1.3.3 Cấu trúc xử lý cơ bản của một hệ thống nhận dạng khuôn mặt
Một hệ thống nhận dạng mặt người thông thường bao gồm bốn bước xử lýsau:
1.Phát hiện khuôn mặt
2.Phân đoạn khuôn mặt
3.Trích chọn đặc trưng
4.Nhận dạng hay Phân lớp khuôn mặt
Hình 1 11 Các bước chính trong một hệ thống nhận dạng khuôn mặt
Phát hiện khuôn mặt dò tìm, định vị những vùng (vị trí) có thể là khuôn mặtxuất hiện trong ảnh hoặc các khung hình Các vùng này sẽ được tách riêng để xử lý.Phân đoạn khuôn mặt sẽ xác định vị trí mắt mũi, miệng và các thành phần khác củakhuôn mặt và chuyển kết quả này cho bước trích chọn đặc trưng Ở bước trích chọnđặc trưng, bằng một phương pháp trích chọn đặc điểm nào đó sẽ được sử dụng vớiảnh mặt để trích xuất các thông tin đặc trưng cho ảnh từ các thông tin về các thànhphần trên khuôn mặt, kết quả là mỗi ảnh sẽ được biểu diễn dưới dạng một vectorđặc trưng Những vector đặc trưng này sẽ là dữ liệu đầu vào cho một mô hình đãđược huấn luyện trước để nhận dạng khuôn mặt hay phân lớp khuôn mặt tức là xácđịnh danh tính hay nhãn của ảnh đó là ảnh của ai Ở bước nhận dạng khuôn mặtthường thì phương pháp K-láng giềng gần (K-nearest neighbor: KNN) sẽ được sửdụng
Bên cạnh những bước chính nêu trên, chúng ta còn có thể áp dụng thêm một
số bước khác như tiền xử lý, hậu xử lý nhằm làm tăng độ chính xác cho hệ thống
Trang 25Ví dụ, sau bước phát hiện khuôn mặt, ta có thể thực hiện bước tiền xử lý bao gồmcác bước căn chỉnh ảnh và chuẩn hóa ánh sáng.
Do một số thông số như: tư thế khuôn mặt, độ sáng, điều kiện ánh sáng,v.v… phát hiện khuôn mặt được đánh giá là bước khó khăn và quan trọng nhất sovới các bước còn lại của hệ thống
Dữ liệu cho một hệ thống nhận dạng mặt được chia làm 3 tập: tập huấnluyện, tập tham chiếu và tập để nhận dạng Trong nhiều hệ thống, tập huấn luyệntrùng với tập tham khảo Tập huấn luyện gồm các ảnh được dùng để huấn luyệnthông thường tập này được dùng để sinh ra một không gian con là một ma trận Tậptham khảo gồm các ảnh đã biết danh tính được chiếu vào không gian con ở bướchuấn luyện Bước huấn luyện nhằm 2 mục đích: giảm số chiều của các vector đặcđiểm vì các vector này thường có độ dài khá lớn (vài nghìn tới vài trăm nghìn) nênnếu để nguyên thì việc tính toán sẽ rất rất lâu, thứ hai là làm tăng tính phân biệt giữacác ảnh khác lớp (định danh khác nhau), ngoài ra có thể làm giảm tính phân biệtgiữa các ảnh thuộc về một lớp (tùy theo phương pháp, ví dụ như LinearDiscriminant Analysis LDA- còn gọi là Fisher Linear Discriminant Analysis-Fisherface là một phương pháp làm việc với tập huấn luyện mà mỗi đối tượng cónhiều ảnh mặt ở các điều kiện khác nhau) Sau khi thực hiện chiếu tập tham khảovào không gian con, hệ thống lưu lại kết quả là một ma trận với mỗi cột của ma trận
là một vector tương ứng với ảnh (định danh đã biết) để thực hiện nhận dạng (hayphân lớp) Nhận dạng (hay phân lớp) được thực hiện với tập các ảnh probe, sau khitiền xử lý xong, mỗi ảnh sẽ được áp dụng phương pháp trích chọn đặc điểm (nhưvới các ảnh thuộc tập huấn luyện và tham khảo) và được chiếu vào không gian con.Tiếp đến việc phân lớp sẽ dựa trên phương pháp KNN, định danh của một ảnh cầnxác định sẽ được gán là định danh của ảnh có khoảng cách gần với nó nhất Ở đâycần lưu ý là mỗi ảnh là một vector nên có thể dùng khái niệm hàm khoảng cáchgiữa hai vector để đo sự khác biệt giữa các ảnh.[2]
1.3.4 Các yếu tố để nhận diện khuôn mặt
- Truyền thống:
Trang 26Một số thuật toán nhận dạng khuôn mặt xác định các đặc điểm khuôn mặt bằngcách trích xuất các ranh giới, hoặc đặc điểm, từ một hình ảnh khuôn mặt của đốitượng Ví dụ, một thuật toán có thể phân tích các vị trí tương đối, kích thước,và/hoặc hình dạng của mắt, mũi, gò má, và cằm Những tính năng này sau đó được
sử dụng để tìm kiếm các hình ảnh khác với các tính năng phù hợp Các thuật toánbình thường hóa một bộ sưu tập các hình ảnh khuôn mặt và sau đó nén dữ liệukhuôn mặt, chỉ lưu dữ liệu hình ảnh nào là hữu ích cho việc nhận dạng khuôn mặt.Một hình ảnh mẫu sau đó được so sánh với các dữ liệu khuôn mặt Một trong những
hệ thống thành công sớm nhất dựa trên các kỹ thuật phù hợp với mẫu áp dụng chomột tập hợp các đặc điểm khuôn mặt nổi bật, cung cấp một dạng đại diện của khuônmặt được nén
Các thuật toán nhận dạng có thể được chia thành hai hướng chính, là hình học, đó lànhìn vào tính năng phân biệt, hoặc trắc quang (đo sáng), là sử dụng phương phápthống kê để 'chưng cất' một hình ảnh thành những giá trị và so sánh các giá trị vớicác mẫu để loại bỏ chênh lệch
- Nhận dạng 3-chiều:
Một xu hướng mới nổi lên, tuyên bố cải thiện được độ chính xác, là nhận dạngkhuôn mặt ba chiều Kỹ thuật này sử dụng các cảm biến 3D để nắm bắt thông tin vềhình dạng của khuôn mặt Thông tin này sau đó được sử dụng để xác định các tínhnăng đặc biệt trên bề mặt của một khuôn mặt, chẳng hạn như các đường viền củahốc mắt, mũi và cằm
Một lợi thế của nhận dạng khuôn mặt 3D là nó không bị ảnh hưởng bởi những thayđổi trong ánh sáng như các kỹ thuật khác Nó cũng có thể xác định một khuôn mặt
từ một loạt các góc nhìn, trong đó có góc nhìn nghiêng Các điểm dữ liệu ba chiều
từ một khuôn mặt cải thiện lớn độ chính xác cho nhận dạng khuôn mặt Nghiên cứu3D được tăng cường bởi sự phát triển của các bộ cảm biến tinh vi giúp nắm bắt hìnhảnh chụp khuôn mặt 3D được tốt hơn Các cảm biến hoạt động bằng cách chiếu ánhsáng có cấu trúc lên gương mặt Hàng chục hoặc nhiều hơn nữa các bộ cảm biếnhình ảnh này có thể được đặt lên trên cùng một con chip CMOS-mỗi cảm biến sẽthu một phần khác nhau của hình ảnh
Trang 27Ngay cả một kỹ thuật 3D hoàn hảo cũng có thể gặp khó khăn bởi các sắc thái biểucảm trên gương mặt Để đạt được mục tiêu đó một nhóm tại Technion (viện côngnghệ Israel tại Haifa) đã áp dụng các công cụ từ hình học metric để giải quyết cácbiểu lộ cảm xúc như phép đẳng cự Một công ty có tên Vision Access tạo ra một giảipháp vững chắc cho nhận dạng khuôn mặt 3D Công ty này sau đó đã được mua lạibởi công ty truy cập sinh trắc học Bioscrypt Inc Công ty đã phát triển một phiênbản được gọi là 3D FastPass.
- Phân tích kết cấu da:
Một xu hướng mới nổi sử dụng các chi tiết hình ảnh của da, được chụp trong cáchình ảnh kỹ thuật số hoặc máy scan tiêu chuẩn Kỹ thuật này được gọi là phân tíchkết cấu da, đưa các đường đặc trưng, hình dạng, và các điểm nốt trên làn da của mộtngười vào một không gian toán học
Các thử nghiệm đã chỉ ra rằng với việc bổ sung các phân tích cấu trúc của da, hiệuquả trong việc nhận ra khuôn mặt có thể tăng 20-25 phần trăm
1.4Kết luận chương 1
Như vậy qua chương 1, ta đã có cái nhìn tổng quan nhất về xử lý ảnh trong giámsát an ninh, mục đích, đối tượng, phạm vi và ý nghĩa thực tiễn của ứng dụng này.Ngoài ra, ta cũng đã tìm hiểu về tình hình thực tế xử lý ảnh trong giám sát an ninhtrong và ngoài nước, một số phương pháp nhận dạng đã và đang có trên thị trường.Nhận thấy vấn đề an ninh luôn là vấn đề được quan tâm cấp thiết hàng đầu và nó cónhiệm vụ bảo vệ cho con người, cho xã hội, đồng thời phương pháp nhận diệnkhuôn mặt có nhiều ưu điểm và tiềm năng phát triển cho việc giám sát an ninh nên
em đã thực hiện nghiên cứu đề tài “Nghiên cứu, phát triển hệ thống nhận dạngkhuôn mặt trong giám sát an ninh trong tòa nhà” Mục tiêu của đồ án hướng đến xâydựng hệ thống nhận diện khuôn mặt đảm bảo các thông số kỹ thuật như sau: thờigian nhận diện dưới 1 giây, khoảng cách nhận diện lên tới 5 mét, tỷ lệ che khuônmặt khoảng 2/3, có thể nhận diện nhiều người trong cùng một khung hình, tốc độ dichuyển khoảng 2m/s mà hệ thống vẫn nhận diện được Chi tiết nội dung cũng nhưphương pháp nghiên cứu của đề tài, ta sẽ cụ thể ở chương 2
Trang 28CHƯƠNG 2 NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
2.1Yêu cầu thiết kế hệ thống nhận diện khuôn mặt đảm bảo an ninh trong tòa nhà.
Với đề tài “Nghiên cứu, phát triển hệ thống nhận diện khuôn mặt phục vụgiám sát an ninh” này, phạm vi mô hình của em là thực hiện việc phát hiện nhậndiện khuôn mặt để đảm bảo an ninh trong tòa nhà Trong hệ thống dữ liệu có lưu trữảnh khuôn mặt và thông tin của những người có trong tòa nhà Khi hệ thống nhậndiện phát hiện sẽ đối chiếu với thông tin có trong dữ liệu, từ đó có thể phát hiệnngười lạ ra vào tòa nhà, kịp thời cảnh báo gửi đến email người quản lý
Thiết kế hệ thống nhận diện khuôn mặt với OpenCV và Deep Learning đảm bảocác yêu cầu sau đây:
Hệ thống có thể phát hiện, nhận diện được khuôn mặt đối tượng
Hệ thống gửi thông tin cảnh báo về email
Sử dụng OpenCV và Deep Learning
Giao diện thân thiện, dễ sử dụng
Độ chính xác đạt trên 90%
An toàn và tiết kiệm chi phí
Dựa trên toàn bộ những yêu cầu của bài toán như trên, ta bắt đầu xây dựng lưu đồthuật toán và hoàn thiện giao diện chương trình nhận dạng
2.2Các phương pháp nhận diện khuôn mặt
2.2.1 Nhận diện khuôn mặt dựa trên tri thức
Phương pháp này dựa trên tập hợp các quy tắc do con người phát triển theo hiểubiết của chúng ta Chúng ta biết rằng một khuôn mặt phải có mũi, mắt và miệngtrong khoảng cách và vị trí nhất định với nhau Vấn đề của phương pháp này là xâydựng một bộ quy tắc thích hợp Nếu các quy tắc quá chung chung hoặc quá chi tiết,
hệ thống sẽ dẫn đến nhiều kết quả xác thực sai Tuy nhiên, nó không hoạt động với
Trang 29tất cả các màu da và phụ thuộc vào điều kiện ánh sáng có thể thay đổi màu da chínhxác của một người trong ảnh.
2.2.2 Đối sánh mẫu
Phương pháp đối sánh mẫu sử dụng các mẫu khuôn mặt được xác định trướchoặc được tham số hóa để xác định vị trí hoặc phát hiện các khuôn mặt bằng mốitương quan giữa các mẫu được xác định trước hoặc có thể biến dạng và hình ảnhđầu vào Mô hình khuôn mặt có thể được xây dựng theo các cạnh bằng phươngpháp phát hiện cạnh
Một biến thể của cách tiếp cận này là kỹ thuật nền có kiểm soát Nếu bạn may mắn
có được hình ảnh chính diện và hình nền đơn giản, bạn có thể xóa phông nền, để lạiranh giới khuôn mặt
Đối với cách tiếp cận này, phần mềm có một số bộ phân loại để phát hiện các loạikhuôn mặt trực diện khác nhau và một số bộ phân loại cho khuôn mặt thôngthường, chẳng hạn như bộ phát hiện mắt, mũi, miệng và trong một số trường hợp,thậm chí là toàn bộ cơ thể Mặc dù cách tiếp cận này dễ thực hiện, nhưng nó thườngkhông đủ khả năng nhận diện khuôn mặt
2.2.3 Nhận diện khuôn mặt dựa trên ngoại hình
Phương pháp dựa trên ngoại hình tiên tiến hơn phụ thuộc vào một tập hợp cáchình ảnh khuôn mặt đào tạo đại biểu để tìm ra các mô hình khuôn mặt Nó dựa vàohọc máy và phân tích thống kê để tìm các đặc điểm liên quan của hình ảnh khuônmặt và trích xuất các đặc điểm từ chúng Phương pháp này hợp nhất một số thuậttoán:
Thuật toán dựa trên Eigenface thể hiện hiệu quả các khuôn mặt bằng cách sử dụngPhân tích thành phần chính (PCA) PCA được áp dụng cho một tập hợp hình ảnh để
hạ thấp kích thước của tập dữ liệu, mô tả tốt nhất phương sai của dữ liệu Trongphương pháp này, một khuôn mặt có thể được mô hình hóa như một tổ hợp tuyếntính của các eigenfaces (tập hợp các eigenvector) Nhận dạng khuôn mặt, trongtrường hợp này, dựa trên việc so sánh các hệ số của biểu diễn tuyến tính
Trang 30Các thuật toán dựa trên phân phối như PCA và Fisher's Discriminant xác định
không gian con đại diện cho các mẫu khuôn mặt Chúng thường có một bộ phânloại được đào tạo để xác định các trường hợp của lớp mẫu đích từ các mẫu ảnh nền
Mô hình Markov ẩn là một phương pháp tiêu chuẩn cho các nhiệm vụ phát hiện.Trạng thái của nó sẽ là các đặc điểm trên khuôn mặt, thường được mô tả dưới dạngcác dải pixel
Mạng lưới Winnows thưa thớt xác định hai đơn vị tuyến tính hoặc các nút đích: mộtcho các mẫu khuôn mặt và một cho các mẫu không phải khuôn mặt
Bộ phân loại Naive Bayes tính toán xác suất của một khuôn mặt xuất hiện tronghình ảnh dựa trên tần suất xuất hiện của một loạt mẫu trên các hình ảnh huấn luyện.Học quy nạp sử dụng các thuật toán như C4.5 của Quinlan hoặc FIND-S củaMitchell để phát hiện các khuôn mặt bắt đầu với giả thuyết cụ thể nhất và khái quáthóa
Mạng nơ-ron, chẳng hạn như GAN, là một trong những phương pháp mới nhất và
mạnh nhất để phát hiện các vấn đề, bao gồm nhận diện khuôn mặt, phát hiện cảm
xúc và nhận dạng khuôn mặt
2.2.4 Nhận diện khuôn mặt dựa trên chuyển động
Trong hình ảnh video, ta có thể sử dụng chuyển động làm hướng dẫn Mộtchuyển động cụ thể của khuôn mặt đang nhấp nháy, vì vậy nếu phần mềm có thểxác định kiểu nhấp nháy thông thường, nó sẽ xác định khuôn mặt
Nhiều chuyển động khác cho thấy rằng hình ảnh có thể chứa một khuôn mặt, chẳnghạn như lỗ mũi loe ra, lông mày nhướng lên, trán nhăn và miệng mở Khi mộtkhuôn mặt được phát hiện và một mô hình khuôn mặt cụ thể khớp với một chuyểnđộng cụ thể, mô hình sẽ được đặt trên khuôn mặt, cho phép theo dõi khuôn mặt đểnhận ra các chuyển động của khuôn mặt Các giải pháp hiện đại nhất thường kếthợp một số phương pháp, ví dụ, trích xuất các tính năng để được sử dụng trong cácthuật toán học máy hoặc học sâu
Trang 312.2.5 Nhận diện khuôn mặt dựa trên tính năng
Phương pháp dựa trên tính năng trích xuất các đặc điểm cấu trúc của khuôn mặt
Nó được đào tạo như một máy phân loại và sau đó được sử dụng để phân biệt cácvùng trên khuôn mặt và vùng không phải trên khuôn mặt Một ví dụ của phươngpháp này là tính năng phát hiện khuôn mặt dựa trên màu sắc để quét hình ảnh hoặcvideo có màu cho các khu vực có màu da điển hình và sau đó tìm kiếm các phânđoạn khuôn mặt
Lựa chọn tính năng Haar dựa trên các đặc tính tương tự của khuôn mặt người để tạo
ra các kết quả phù hợp từ các đặc điểm trên khuôn mặt: vị trí và kích thước của mắt,miệng, sống mũi và các chuyển độ định hướng của cường độ pixel Có 38 lớp phânloại theo tầng để có được tổng số 6061 đặc điểm từ mỗi mặt chính diện Histogram
of Oriented Gradients (HOG) là một công cụ trích xuất tính năng để phát hiện đốitượng Các tính năng được trích xuất là sự phân bố (biểu đồ) hướng của các chuyểnsắc (gradient định hướng) của hình ảnh
Histogram of Oriented Gradients (HOG) là một công cụ trích xuất tính năng để pháthiện đối tượng Các tính năng được trích xuất là sự phân bố (biểu đồ) các hướng củagradient (gradient định hướng) của hình ảnh
Gradients thường là các cạnh và góc tròn lớn và cho phép chúng ta phát hiện cácvùng đó Thay vì xem xét cường độ pixel, họ đếm số lần xuất hiện của các vectơgradient để đại diện cho hướng ánh sáng nhằm khoanh vùng các phân đoạn hìnhảnh Phương pháp sử dụng chuẩn hóa độ tương phản cục bộ chồng chéo để cải thiện
độ chính xác
Trong tất cả các phương pháp được nêu trên thì phương pháp nhận diện khuôn mặtdựa trên tính năng là phù hợp và cho hiệu quả tốt nhất cho đồ án này
2.3Sơ đồ công nghệ của hệ thống nhận diện khuôn mặt
Về cơ bản, nguyên lý hoạt động của hệ thống nhận diện khuôn mặt kiểm soát anninh trong tòa nhà hoạt động như sau: Khi đối tượng xuất hiện trong khu vực kiểmsoát của tòa nhà, camera sẽ phát hiện, chụp lại ảnh và gửi thông tin về hệ thống xử
lý Tại đây hình ảnh khuôn mặt vừa nhận được sẽ được phân tích và so sánh đối
Trang 32chiếu với dữ liệu lưu trữ các thành viên có trong tòa nhà, nếu khớp thông tin người
đó sẽ hiện lên, nếu không khớp thì hệ thống sẽ báo Unknown (không biết), đồngthời gửi email cảnh báo và thông tin ảnh chụp được tới người quản lý hệ thống
Hình 2 1 Sơ đồ nguyên lý hoạt động của hệ thống2.4Các thiết bị phần cứng sử dụng
2.4.1 Webcam Logitech
Logitech HD Webcam C270 thuộc dòng sản phẩm webcam Logitech được ứngdụng công nghệ tinh thể lỏng Logitech Fluid Crystal Do đó, chất lượng hình ảnhvideo của nó cũng sẽ cao cấp không kém các dòng sản phẩm webcam Logitechkhác, thậm chí là so với các sản phẩm webcam mang các thương hiệu khác ở trênthị trường quốc tế
Thiết bị này cũng có chức năng phục vụ cuộc gọi video Với sản phẩm này, hìnhảnh trong cuộc gọi video sẽ được hiển thị với chất lượng chuẩn HD (độ phân giải
1280 x 720p) Thêm vào đó, nó còn có khả năng điều chỉnh tự động hiệu ứng ánhsáng Dù cho người dùng đang tiến hành chức năng gọi video ở không gian địađiểm nào, điều kiện ánh sáng xung quanh ra sao, hình ảnh của người dùng hiển thịthông qua webcam này vẫn sáng rõ, nét căng, không mờ nhòe
Bên cạnh chức năng quay video và phục vụ cuộc gọi video, nó còn có chức năngchụp ảnh Tính năng chụp hình nhanh của nó có ý nghĩa rất thiết thực đối với cácgame thủ nói riêng và nhiều người dùng nói chung Thiết bị này cho phép độ phângiải tối đa của một tấm hình là 3MP Với độ phân giải 3MP, chất lượng hình chụpbằng webcam này vẫn được đảm bảo độ sắc nét và màu sắc chân thực
Ngoài những tính năng vừa kể ra ở trên, nó còn có những tính năng hữu ích khác.Đơn cử như là thiết bị micro của nó có khả năng hạn chế những tác động tiêu cực
Trang 33của các âm thanh pha tạp ồn ào từ môi trường bên ngoài đến chất lượng truyền âmkhi người dùng sử dụng webcam Logitech trong giao tiếp Tính năng này tuy khôngmới nhưng chưa bao giờ trở thành vô dụng Và cũng giống với các dòng sản phẩmwebcam Logitech anh chị em của mình, Logitech webcam HD C270 cũng có phầnmềm hỗ trợ của nhà sản xuất để giúp người chơi nâng cấp các tính năng mà nómang lại.
Độ phân giải tối đa: 720p/30fps
Loại tiêu cự: tiêu cự cố định
Loại thấu kính: nhựa
Micrô tích hợp: Đơn hướng
Tầm nhìn chéo (dFoV): 55°
Kẹp gắn phổ dụng phù hợp với máy tính xách tay, LCD hoặc các màn hình
2.4.2 Máy tính mini NUC
NUC (Next Unit of Computing) là máy tính thế hệ mới do Intel dẫn đầu pháttriển Thiết bị này vẫn sử dụng hệ điều hành Windows và Linux, tương thích với
Trang 34mọi ứng dụng, phần mềm nhưng về mặt kích thước đã được tinh giảm đáng kể, chỉgiống như một quyển sách dày mà thôi Đáng nói, dù hết sức nhỏ gọn nhưng sốlượng cổng kết nối trên thiết bị vẫn đầy đủ, có thêm cả kết nối bluetooth để ngườidùng có thể linh hoạt ứng dụng trong cuộc sống.
Hình 2 3 Máy tính mini NUC [12]
Về mặt cấu hình, NUC không gói gọn ở một tùy chọn nhất định mà có thể thay đổitùy theo nhu cầu người sử dụng, tối đa hoặc tối thiểu Nhưng do kích thước quá nhỏ
mà NUC thường không có card đồ họa rời mà thay vào đó là card đồ họa tíchhợp Tuy nhiên, gần đây Intel đã ra mắt model mới nhất NUC 9 Extreme được trang
bị card đồ họa rời RTX2070, cho nên trong tương lai tới hiệu năng của NUC hứahẹn sẽ được tăng lên đáng kể
Ưu điểm đầu tiên của Intel NUC chính là thiết kế nhỏ gọn, không những tiết kiệmkhông gian phòng mà thậm chí bạn có thể mang theo kè kè bên người Chỉ với mộthộp nhỏ kích cỡ 5 x 5inch là bạn đã có một thiết bị mạnh ngang ngửa máy tínhtruyền thống cách đây 1 – 2 năm Quan trọng là nó đáp ứng đầy đủ nhu cầu cho hầuhết người dùng
Ưu điểm thứ 2 là mức tiêu thụ điện Phần cứng của NUC hoạt động với mức tiêuthụ cực ít
Trang 35Thứ ba là khả năng tùy biến Do cấu hình của NUC là không cố định, ta có thể dễdàng tháo lắp và nâng cấp phần cứng tùy theo nhu cầu sử dụng Trong hầu hếttrường hợp, bo mạch và CPU/APU của NUC khá là khó nâng cấp, cần có sự hiểubiết về máy tính nhất định và một chút tay nghề nhưng RAM và ổ cứng thì có thểthay thế rất linh hoạt.
Nhược điểm: Do thiết kế quá nhỏ mà phần cứng của NUC cũng gặp nhiều hạn chế.Các model phổ biến, giá rẻ chỉ đủ dùng cho các nhu cầu phổ biến như lướt web, gõvăn bản, xem video, chơi một số game nhẹ trong khi đó các model có thể xử lý tác
vụ nặng lại có giá khá cao
2.5Phần mềm và các thuật toán sử dụng
a) Ngôn ngữ lập trình
Để giải quyết bài toán nhận dạng khuôn mặt sử dụng thư viện OpenCV, chúng ta cóthể sử dụng các ngôn ngữ lập trình như: NET C#, VB, IronPython, Java, C++…Trong đồ án này ngôn ngữ lập trình được sử dụng là NET C#, viết trên phần mềmVisual Studio
Hình 2 4 Ngôn ngữ lập trình C# [13]
b) Tìm hiểu về SSD (Single Shot Detector) trong bài toán phát hiện đối tượng (Object Detection)
- Giới thiệu về SSD
Trang 36Hình 2 5 SSD trong bài toán phát hiện đối tượng [14]
Trước khi bắt đầu vào việc tìm hiểu về cách mà SSD làm việc, ta cùng điểm quanhững đặc điểm chính của SSD Tại mỗi vị trí trên biểu đồ tính năng, SSD đặt cáckhung hình mặc định với kích thước, tí lệ khác nhau Trong quá trình xử lí, SSD sẽđánh giá và tìm đối tượng trên các khung hình này nhằm tìm ra khung hình phù hợpnhất với đối tượng cần tìm kiếm Thêm vào đó, bằng việc tìm kiếm trên các biểu đồtính năng khác nhau, SSD có thể tìm kiếm các đối tượng với kích thước khác nhau
mà không cần thay đổi kích thước của các khung hình Thực nghiệm cho thấy, SSDđạt 74.3% mAP trên tập kiểm tra của VOC2007, đạt 59 FPS khi sử dụng NvidiaTitan X với kích thước ảnh đầu vào 512 x 512, nhanh hơn Faster R-CNN
- Hướng tiếp cận
Hình 2 6 Ví dụ về đánh giá khung hình trong SSD [14]
Trang 37Ý tưởng chính của SSD đến từ việc sử dụng các khung hình, bằng việc khởi tạosẵn các khung hình tại mỗi vị trí trên ảnh, SSD sẽ tính toán và đánh giá thông tin tạimỗi vị trí xem vị trí đó có vật thể hay không, nếu có thì là vật thể nào, và dựa trênkết quả của các vị trí gần nhau, SSD sẽ tính toán được một khung hình phù hợp nhấtbao trọn vật thể.
Ngoài ra, bằng việc tính toán khung hình trên các biểu đồ tính năng khác nhau, tạimỗi tầng biểu đồ tính năng, một khung hình sẽ ôm trọn một phần hình ảnh với cáckích thước khác nhau Như trên ví dụ trên, con mèo và con chó có thể được pháthiện ở 2 tầng biểu đồ tính năng khác nhau, 2 kích thước và tỉ lệ khác nhau Thay vì
sử dụng một khung hình và thay đổi kích thước khung hình cho phù hợp với vật thể,thì SSD sử dụng nhiều khung hình trên nhiều tầng, từ đó tổng hợp ra vị trí và kíchthước khung hình kết quả Bằng việc loại trừ các region proposal, SDD có thể đạtđược tốc tộ xử lí cao hơn Faster R-CNN.[3]
Hình 2 8 Cấu trúc các lớp kết nối trên Yolo [14]