1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phần mềm nhận diện khuôn mặt và điểm danh trên desktop

61 218 1

Đ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

Thông tin cơ bản

Tiêu đề Phần Mềm Nhận Diện Khuôn Mặt Và Điểm Danh Trên Desktop
Người hướng dẫn ThS. Lê Bá Cường
Trường học Học viện kỹ thuật mật mã
Chuyên ngành Công nghệ thông tin
Thể loại Đồ án môn học
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 61
Dung lượng 3,56 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ĐỀ TÀI: PHẦN MỀM NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH TRÊN DESKTOP Giảng viên hướng dẫn : ThS. LÊ BÁ CƯỜNG Hà nôi, tháng 09 năm 2021 1 LỜI CẢM ƠN Trước tiên em xin được bày tỏ sự trân trọng và lòng biết ơn đối với thầy giáo ThS. Lê Bá Cường – Giảng viên khoa An toàn Thông tin. Trong suốt thời gian học và làm đồ án tốt nghiệp, thầy đã dành rất nhiều thời gian quý báu để tận tình chỉ bảo, hướng dẫn, định hướng cho em thực hiện đồ án. Em xin được cảm ơn các thầy cô giáo Học viện kỹ thuật mật mã đã giảng dạy trong quá trình học tập, thực hành, làm bài tập, giúp em hiểu thấu đáo hơn các nội dung học tập và những hạn chế cần khắc phục trong việc học tập, nghiên cứu và thực hiện bản đồ án này. Em xin cảm ơn các bạn bè và nhất là các thành viên trong gia đình đã tạo mọi điều kiện tốt nhất, động viên, cổ vũ trong suốt quá trình học tập và đồ án tốt nghiệp. Nhận xét của cán bộ hướng dẫn………………………………... ………………………………………………………………….. ………………………………………………………………….. Điểm chuyên cần……………………………………………….. Điểm báo cáo………………………………………………….... Xác nhận của cán bộ hướng dẫn MỞ ĐẦU Công nghệ thông tin ngày càng phát triển và có vai trò hết sức quan trọng không thể thiếu trong cuộc sống hiện đại. Con người ngày càng tạo ra những cỗ máy thông minh có khả năng tự nhận biết và xử lí được các công việc một cách tự động, phục vụ cho lợi ích của con người. Trong những năm gần đây, một trong những bài toán nhận được nhiều sự quan tâm và tốn nhiều công sức nhất của lĩnh vực công nghệ thông tin, đó chính là bài toán nhận dạng. Tuy mới xuất hiện chưa lâu nhưng nó đã rất được quan tâm vì tính ứng dụng thực tế của bài toán cũng như sự phức tạp của nó.Bài toán nhận dạng có rất nhiều lĩnh vực như: nhận dạng vất chất(nước, lửa, đất, đá, gỗ..) nhận dạng chữ viết, nhận dạng giọng nói, nhận dang hình dáng, nhận dạng khuôn mặt.. trong đó phổ biến và được ứng dụng nhiều hơn cả là bài toán nhận diện khuôn mặt.Để nhận dạng được khuôn mặt, bước đầu tiên để nhận dạng là phát hiện ra khuôn mặt, điều này thực sự là quan trọng và hết sức khó khăn. Cho đến tận bây giờ, các nhà nghiên cứu vẫn chưa đạt được sự ưng ý trong việc giải quyết các khó khăn của bài toán và cho kết quả hoàn toàn đúng. Tuy nhiên, những gì đã đạt được cũng đủ để chúng ta áp dụng rộng rãi và đem lại những lợi ích to lớn trong cuộc sống.Với sự hấp dẫn của bài toán và những thách thức còn đang ở phía trước, với niềm đam mê công nghệ hiện đại và những ứng dụng thực tế tuyệt với của nó, với khát khao khám phá và chinh phục những chi thức mới mẻ. Hiện nay, với sự phát triển của xã hội, vấn đề an ninh bảo mật đang được yêu cầu khắt khe. Hệ thống nhận dạng con người được ra đời với độ tin cậy ngày càng cao. Một trong những bài toán nhận dạng con người rất được quan tâm hiện nay là nhận dạng khuôn mặt. Vì nhận dạng khuôn mặt là cách mà con người sử dụng để phân biệt nhau. Bên cạnh đó, việc thu thập, xử lí thông tin qua ảnh để nhận biết đang được quan tâm và ứng dụng rộng rãi. Với phương pháp này, chúng ta có thể thu thập được nhiều thông tin từ đối tượng mà không cần tác động nhiều đối tượng nghiên cứu. Sự phát triẻn của khoa học máy tính tạo môi trường thuận lợi cho bài toán nhận dạng mặt người từ ảnh số. Việc áp dụng nhận dạng khuôn mặt được sử dụng rộng rãi trong các trường học, cơ quan, văn phòng. Một trong những nhu cầu sử dụng nhận dạng khuôn mặt đó là điểm danh. Vì vậy, nên nhóm em chọn đề tài nghiên cứu: PHẦN MỀM NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH TRÊN DESKTOP. MỤC LỤC LỜI CẢM ƠN 2 MỞ ĐẦU 3 MỤC LỤC 5 DANH SÁCH HÌNH ẢNH: 6 DANH SÁCH BẢNG: 8 CHƯƠNG I: PHÂN TÍCH YÊU CẦU HỆ THỐNG ỨNG DỤNG DESKTOP NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH 10 1. Tổng quan hệ thống ứng dụng desktop nhận diện mặt và điểm danh 10 2. Yêu cầu hệ thống. 11 2.1. Yêu cầu chức năng 11 2.2. Yêu cầu phi chức năng. 11 3. Các công nghệ sử dụng. 11 3.1. Thiết giao diện ứng dụng ( PyQt5) 12 3.2. Thiết kế back end 14 3.3. Mổi trường lập trình Visual Studio Code 18 4. Nghiên cứu tổng quan 19 4.1. Bài toán nhận dạng mặt người. 19 4.2. Tổng quan kiến trúc của một hệ thống nhận dạng khuôn mặt. 20 4.3. Hạn chế, tồn tại của các phương pháp. 20 CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG ỨNG DỤNG DESKTOP NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH. 23 1. Thiết kế hệ thống tổng thể 23 2. Phân tích yêu cầu hệ thống. 23 3. Thiết kế cơ sở dữ liệu 24 4. Xây dựng hệ thống. 26 4.1. Danh sách các Actor 26 4.2. Danh sách Use Case 26 4.3. Sơ đồ Use Case chi tiết 28 4.4. Đặc tả Use Case 32 4.5. Biểu đồ hoạt động và biểu đồ tuần tự. 38 4.6. Phân tích kiến trúc 46 CHƯƠNG III: KẾT QUẢ THỰC NGHIÊM 47 1. Quá trình triển khai hê ̣thống: 47 1.1. Traning hình ảnh nhân viên và lưu trữ 50 1.2. Lớp detector nhận diện khuôn mặt đã traning 52 2. Giới thiệu một số giao diện của hệ thống 53 CHƯƠNG IV: KẾT LUÂN VÀ HƯỚNG PHÁT TRIỂN 59 1. Kết luận 59 2 Hướng phát triển 59 DANH MỤC TÀI LIỆU THAM KHẢO 60 DANH SÁCH HÌNH ẢNH: Hình 1: Ngôn ngữ lập trình Python Hình 2. Giới thiệu về thư viện OpenCV Hình 3: Giới thiệu SQLite Hình 4:Môi trường lập trình Visual Studio Code Hình 5: Hệ thống nhận dạng khuôn mặt Hình 6: Các bước chính trong hệ thống nhận dạng Hình 7: Luồng hoạt động tổng thể của hệ thống Hình 8: Database FaceData.db và data.sqlie Hình 9: Sơ đồ Use Case tổng quan. Hình 10: Use Case Đăng xuất Hình 11: Use Case Đăng xuất Hình 12: Use Case Thay đổi mật khẩu Hình 13: Use Case Thêm hoặc sửa Nhân viên Hình 14: Use Case xóa Nhân viên Hình 15: Đặc tả Use Case Tìm thông tin nhân viên Hình 16: Use Case Training Data Hình 17: Use Case Xem lịch Hình 18: Use Case Điểm danh Hình 19: Use Case Xem lịch Hình 20: Biểu đồ hoạt động đăng nhập Hình 21: Biểu đồ tuần tự Đăng nhập Hình 22: Biểu đồ hoạt động Thay đổi mật khẩu Hình 23: Biểu đồ tuần tự Thay đổi mật khẩu Hình 24: Biểu đồ hoạt động Thêm hoặc sửa thông tin Nhân viên Hình 25: Biểu đồ tuần tự Thêm hoặc sửa thông tin Nhân viên Hình 26: Biểu đồ hoạt động xóa thông tin Nhân viên Hình 27: Biểu đồ tuần tự xóa thông tin Nhân viên Hình 28: Biểu đồ hoạt động Xem lịch Hình 29: Biểu đồ tuần tự Xem lịch Hình 30: Biểu đồ hoạt động Tìm kiếm Hình 31: Biểu đồ tuần tự Tìm kiếm Hình 32: Biểu đồ hoạt động Điểm danh Hình 33 : Biểu đồ tuần tự Điểm danh Hình 34: Biểu đồ hoạt động Xem lịch Hình 35: Biểu đồ tuần tự Xem lịch Hình 36: Phân tích kiến trúc Hình 37: Hình ảnh màn hình chính của ứng dụng Hình 38: Hình ảnh nhận diện khuôn mặt điểm danh Hình 39: Hình ảnh giao diện đăng nhập Admin Hình 40: Hình ảnh chế độ Admin Hình 41: Hình ảnh xem kết quả điểm danh Hình 42: Hình ảnh cập nhật thông tin nhân viên Hình 43: Hình ảnh xóa nhân viên theo ID Hình 44: Hình ảnh cập nhập tài khoản Admin Hình 45: Hình ảnh thông tin trợ giúp Hình 46: Hình ảnh thông tin sản phẩm DANH SÁCH BẢNG: Bảng 1: Tạo database FaceData.db. Bảng 2: Tạo database data.sqlite. Bảng 3: Các Actor tham gia hệ thống điểm danh bằng nhận diện khuôn mặt. Bảng 4: Bảng danh sách Use Case Authentication Bảng 5: Bảng danh sách Use Case Admin Bảng 6: Bảng danh sách Use Case Nhân viên Bảng 7: Đặc tả Use Case Đăng nhập Bảng 8: Đặc tả Use Case Đăng xuất Bảng 9: Đặc tả Use Case Thay đổi mật khẩu Bảng 10: Đặc tả Use Case Thêm hoặc sửa thông tin Nhân viên Bảng 11: Đặc tả Use Case Xóa nhân viên Bảng 12: Đặc tả Use Case Tìm thông Nhân viên Bảng 13: Đặc tả Use Case Xem lịch Bảng 14: Đặc tả Use Case Training Data Bảng 15: Đặc tả Use Case Điểm danh Bảng 16: Đặc tả Use Case Xem lịch CHƯƠNG I: PHÂN TÍCH YÊU CẦU HỆ THỐNG ỨNG DỤNG DESKTOP NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH 1. Tổng quan hệ thống ứng dụng desktop nhận diện mặt và điểm danh. Phổ biến trong đời sống con người đã làm cho lượng thông tin thu được bằng hình ảnh ngày càng tăng. Theo đó, lĩnh vực xử lý ảnh cũng được chú trọng phát triển, ứng dụng rộ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ăng chấ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ết cá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ý ảnh hiện nay đó là nhận dạng khuôn mặt (Face Recognition). Như chúng ta đã biết, khuôn mặt đóng vai trò quan trọng trong quá trình giao tiếp giữa người với người, nó mang một lượng thô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 đối tượ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ệu suấ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ôi trường. Có hai phương pháp nhận dạng phổ biến hiện nay là nhận dạng dựa trên đặc trưng của các phần tử trên khuôn mặt như biến đổi Gabor Wavelet và mạng Neural, SVM,…và nhận dạng dựa trên xét tổng thể toàn khuôn mặt như phương pháp PCA, LDA, LFA .

Trang 1

HỌC

KHOA CÔNG NGHỆ THÔNG TIN

Trang 2

LỜI CẢM ƠN

Trước tiên em xin được bày tỏ sự trân trọng và lòng biết ơn đối với thầy giáo ThS

Lê Bá Cường – Giảng viên khoa An toàn Thông tin Trong suốt thời gian học và làm đồ án tốt nghiệp, thầy đã dành rất nhiều thời gian quý báu để tận tình chỉ bảo, hướng dẫn, định hướng cho em thực hiện đồ án

Em xin được cảm ơn các thầy cô giáo Học viện kỹ thuật mật mã đã giảng dạy trong quá trình học tập, thực hành, làm bài tập, giúp em hiểu thấu đáo hơn các nội dung học tập và những hạn chế cần khắc phục trong việc học tập, nghiên cứu và thực hiện bản đồ án này

Em xin cảm ơn các bạn bè và nhất là các thành viên trong gia đình đã tạo mọi điều kiện tốt nhất, động viên, cổ vũ trong suốt quá trình học tập và đồ án tốt nghiệp

Nhận xét của cán bộ hướng dẫn………

………

………

Điểm chuyên cần………

Điểm báo cáo………

Xác nhận của cán bộ hướng dẫn

2

Trang 3

MƠ ĐẦU

Công nghệ thông tin ngày càng phát triển và có vai trò hết sức quan trọng khôngthể thiếu trong cuộc sống hiện đại Con người ngày càng tạo ra những cỗ máythông minh có khả năng tự nhận biết và xử lí được các công việc một cách tự động,phục vụ cho lợi ích của con người Trong những năm gần đây, một trong những bàitoán nhận được nhiều sự quan tâm và tốn nhiều công sức nhất của lĩnh vực côngnghệ thông tin, đó chính là bài toán nhận dạng Tuy mới xuất hiện chưa lâu nhưng

nó đã rất được quan tâm vì tính ứng dụng thực tế của bài toán cũng như sự phứctạp của nó.Bài toán nhận dạng có rất nhiều lĩnh vực như: nhận dạng vất chất(nước,lửa, đất, đá, gỗ ) nhận dạng chữ viết, nhận dạng giọng nói, nhận dang hình dáng,nhận dạng khuôn mặt trong đó phổ biến và được ứng dụng nhiều hơn cả là bàitoán nhận diện khuôn mặt.Để nhận dạng được khuôn mặt, bước đầu tiên để nhậndạng là phát hiện ra khuôn mặt, điều này thực sự là quan trọng và hết sức khókhăn Cho đến tận bây giờ, các nhà nghiên cứu vẫn chưa đạt được sự ưng ý trongviệc giải quyết các khó khăn của bài toán và cho kết quả hoàn toàn đúng Tuynhiên, những gì đã đạt được cũng đủ để chúng ta áp dụng rộng rãi và đem lạinhững lợi ích to lớn trong cuộc sống.Với sự hấp dẫn của bài toán và những tháchthức còn đang ở phía trước, với niềm đam mê công nghệ hiện đại và những ứngdụng thực tế tuyệt với của nó, với khát khao khám phá và chinh phục những chithức mới mẻ

Hiện nay, với sự phát triển của xã hội, vấn đề an ninh bảo mật đang được yêu cầukhắt khe Hệ thống nhận dạng con người được ra đời với độ tin cậy ngày càng cao.Một trong những bài toán nhận dạng con người rất được quan tâm hiện nay là nhậndạng khuôn mặt Vì nhận dạng khuôn mặt là cách mà con người sử dụng để phânbiệt nhau Bên cạnh đó, việc thu thập, xử lí thông tin qua ảnh để nhận biết đangđược quan tâm và ứng dụng rộng rãi Với phương pháp này, chúng ta có thể thuthập được nhiều thông tin từ đối tượng mà không cần tác động nhiều đối tượng

Trang 4

nghiên cứu Sự phát triẻn của khoa học máy tính tạo môi trường thuận lợi cho bàitoán nhận dạng mặt người từ ảnh số Việc áp dụng nhận dạng khuôn mặt được sửdụng rộng rãi trong các trường học, cơ quan, văn phòng Một trong những nhu cầu

sử dụng nhận dạng khuôn mặt đó là điểm danh Vì vậy, nên nhóm em chọn đề tàinghiên cứu: PHẦN MỀM NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH TRÊNDESKTOP

Trang 5

MỤC LỤC

LỜI CẢM ƠN 2

MỞ ĐẦU 3

MỤC LỤC 5

DANH SÁCH HÌNH ẢNH: 6

DANH SÁCH BẢNG: 8

CHƯƠNG I: PHÂN TÍCH YÊU CẦU HỆ THỐNG ỨNG DỤNG DESKTOP NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH 10

1 Tổng quan hệ thống ứng dụng desktop nhận diện mặt và điểm danh 10

2 Yêu cầu hệ thống 11

2.1 Yêu cầu chức năng 11

2.2 Yêu cầu phi chức năng 11

3 Các công nghệ sử dụng 11

3.1 Thiết giao diện ứng dụng ( PyQt5) 12

3.2 Thiết kế back end 14

3.3 Mổi trường lập trình Visual Studio Code 18

4 Nghiên cứu tổng quan 19

4.1 Bài toán nhận dạng mặt người 19

4.2 Tổng quan kiến trúc của một hệ thống nhận dạng khuôn mặt 20

4.3 Hạn chế, tồn tại của các phương pháp 20

CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG ỨNG DỤNG DESKTOP NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM DANH 23

1 Thiết kế hệ thống tổng thể 23

2 Phân tích yêu cầu hệ thống 23

3 Thiết kế cơ sở dữ liệu 24

4 Xây dựng hệ thống 26

4.1 Danh sách các Actor 26

4.2. Danh sách Use Case 26

4.3 Sơ đồ Use Case chi tiết 28

4.4 Đặc tả Use Case 32

Trang 6

4.5 Biểu đồ hoạt động và biểu đồ tuần tự 38

4.6 Phân tích kiến trúc 46

C H Ư ƠN G III : K Ế T Q UẢ THƯ ̣C NGHI Ê M 47

1 Quá trình triển khai hê ̣thống: 47

1.1 Traning hình ảnh nhân viên và lưu trữ 50

1.2 Lớp detector nhận diện khuôn mặt đã traning 52

2 Giới thiệu một số giao diện của hệ thống 53

CHƯƠNG IV: KẾT LUÂN VÀ HƯỚNG PHÁT TRIỂN 59

1 Kết luận 59

2 Hướng phát triển 59

DANH MỤC TÀI LIỆU THAM KHẢO 60

DANH SACH HÌNH ẢNH:

Hình 1: Ngôn ngữ lập trình Python

Hình 2 Giới thiệu về thư viện OpenCV

Hình 3: Giới thiệu SQLite

Hình 4:Môi trường lập trình Visual Studio Code

Hình 5: Hệ thống nhận dạng khuôn mặt

Hình 6: Các bước chính trong hệ thống nhận dạng

Hình 7: Luồng hoạt động tổng thể của hệ thống

Hình 8: Database FaceData.db và data.sqlie

Hình 9: Sơ đồ Use Case tổng quan

Hình 10: Use Case Đăng xuất

Hình 11: Use Case Đăng xuất

Hình 12: Use Case Thay đổi mật khẩu

Hình 13: Use Case Thêm hoặc sửa Nhân viên

Hình 14: Use Case xóa Nhân viên

Hình 15: Đặc tả Use Case Tìm thông tin nhân viên

Hình 16: Use Case Training Data

Trang 7

Hình 17: Use Case Xem lịch

Hình 18: Use Case Điểm danh

Hình 19: Use Case Xem lịch

Hình 20: Biểu đồ hoạt động đăng nhập

Hình 21: Biểu đồ tuần tự Đăng nhập

Hình 22: Biểu đồ hoạt động Thay đổi mật khẩu

Hình 23: Biểu đồ tuần tự Thay đổi mật khẩu

Hình 24: Biểu đồ hoạt động Thêm hoặc sửa thông tin Nhân viênHình 25: Biểu đồ tuần tự Thêm hoặc sửa thông tin Nhân viên Hình 26: Biểu đồ hoạt động xóa thông tin Nhân viên

Hình 27: Biểu đồ tuần tự xóa thông tin Nhân viên

Hình 28: Biểu đồ hoạt động Xem lịch

Hình 29: Biểu đồ tuần tự Xem lịch

Hình 30: Biểu đồ hoạt động Tìm kiếm

Hình 31: Biểu đồ tuần tự Tìm kiếm

Hình 32: Biểu đồ hoạt động Điểm danh

Hình 33 : Biểu đồ tuần tự Điểm danh

Hình 34: Biểu đồ hoạt động Xem lịch

Hình 35: Biểu đồ tuần tự Xem lịch

Hình 36: Phân tích kiến trúc

Hình 37: Hình ảnh màn hình chính của ứng dụng

Hình 38: Hình ảnh nhận diện khuôn mặt điểm danh

Hình 39: Hình ảnh giao diện đăng nhập Admin

Hình 40: Hình ảnh chế độ Admin

Hình 41: Hình ảnh xem kết quả điểm danh

Hình 42: Hình ảnh cập nhật thông tin nhân viên

Hình 43: Hình ảnh xóa nhân viên theo ID

Trang 8

Hình 44: Hình ảnh cập nhập tài khoản Admin

Hình 45: Hình ảnh thông tin trợ giúp

Hình 46: Hình ảnh thông tin sản phẩm

DANH SACH BẢNG:

Bảng 1: Tạo database FaceData.db

Bảng 2: Tạo database data.sqlite

Bảng 3: Các Actor tham gia hệ thống điểm danh bằng nhận diện khuôn mặt.Bảng 4: Bảng danh sách Use Case Authentication

Bảng 5: Bảng danh sách Use Case Admin

Bảng 6: Bảng danh sách Use Case Nhân viên

Bảng 7: Đặc tả Use Case Đăng nhập

Bảng 8: Đặc tả Use Case Đăng xuất

Bảng 9: Đặc tả Use Case Thay đổi mật khẩu

Bảng 10: Đặc tả Use Case Thêm hoặc sửa thông tin Nhân viên

Bảng 11: Đặc tả Use Case Xóa nhân viên

Bảng 12: Đặc tả Use Case Tìm thông Nhân viên

Bảng 13: Đặc tả Use Case Xem lịch

Bảng 14: Đặc tả Use Case Training Data

Bảng 15: Đặc tả Use Case Điểm danh

Bảng 16: Đặc tả Use Case Xem lịch

Trang 9

CHƯƠNG I: PHÂN TÍCH YÊU CẦU HỆ THỐNG ỨNG DỤNG DESKTOP NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM

DANH

1 Tổng quan hệ thống ứng dụng desktop nhận diện mặt và điểm danh.

Phổ biến trong đời sống con người đã làm cho lượng thông tin thu đượcbằng hình ảnh ngày càng tăng Theo đó, lĩnh vực xử lý ảnh cũng được chú trọngphát triển, ứng dụng rộ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ăng chất lượng hình ảnh mà với công nghệ xử lý ảnh hiện naychúng ta có thể giải quyết các bài toán nhận dạng chữ viết, nhận dạng dấu vântay, 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ý ảnh hiện nay đó là nhận dạng khuôn mặt (Face Recognition) Như chúng ta

đã biết, khuôn mặt đóng vai trò quan trọng trong quá trình giao tiếp giữa ngườivới người, nó mang một lượng thông tin giàu có, chẳng hạn như từ khuôn mặtchú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, đặcbiệt là xác định mối quan hệ với đối tượng (có quen biết hay không) Do đó, bàitoán nhận dạng khuôn mặt đóng vai trò quan trọng trong nhiều lĩnh vực đờisố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ìmkiế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ềuphương pháp nhận dạng khuôn mặt để nâng cao hiệu suất tuy nhiên dù ít haynhiề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ôi trường

Có hai phương pháp nhận dạng phổ biến hiện nay là nhận dạng dựa trên đặctrưng của các phần tử trên khuôn mặt như biến đổi Gabor Wavelet và mạngNeural, SVM,…và nhận dạng dựa trên xét tổng thể toàn khuôn mặt như phươngpháp PCA, LDA, LFA

Trang 10

Chính nhờ những yếu tố trên, nhóm chúng em đã đưa ra ý tưởng tạo ra phần

mềm nhận diện khuôn mặt và điểm danh Được dựa trên thư viện OpenCV.

2 Yêu cầu hệ thống.

2.1. Yêu cầu chức năng.

- Xây dựng được các chức năng cơ bản của một ứng dụng desktop nhậndiện khuôn mặt và điểm danh: nhận diện, điểm danh, xem thông tin điểmdanh, thêm/sửa/xóa nhân viên, cập nhật tài khoản v.v

- Quản lý hệ thống nhận diện và điểm danh dễ dàng giúp nâng cao khảnăng quản lý thồn tin

- Cung câp chức năng nhận diện khuôn mặt để điểm danh 1 cách dễ dàng

- Hỗ trợ chức năng quản trị chung hệ thống ( admin) trong đó người quảntrị có thể thêm mới, sữa xóa thông tin nhân viên và cập nhật thông tin(admin)

- Cung cấp bảng lịch điểm danh giúp người dùng có thể dễ dàng tra cứulịch điểm danh của bình

2.2. Yêu cầu phi chức năng.

- Ứng dụng có giao diện đẹp, dễ dàng sử dụng

- Hỗ trợ người dùng khi có trục trặc

- Giúp việc điểm danh trở lên khách quan

- Dễ dàng quản lý danh sách nhân viên

- Năm bắt được các phương thức xác định khuôn mặt ( Face

Detection) cũng như thư viện Open CV

- Năm bắt được thư viện tạo ứng dụng tạo giao diện PyQt5

- Năm bắt được ngôn ngữ lập trình python3

3 Các công nghệ sử dụng.

Trang 11

Để 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à Python, được viết trên môi trường của Python là IDLE và Visual Studio Code.

3.1. Thiết giao diện ứng dụng ( PyQt5)

3.1.1. Giới thiệu chung

- Qt là một Application framework đa nền tảng viết trên ngôn ngữ C++ , đượcdùng để phát triển các ứng dụng trên desktop, hệ thống nhúng và mobile Hỗtrợ cho các platform bao gồm : Linux, OS X, Windows, VxWorks, QNX,Android, iOS, BlackBerry, Sailfish OS và một số platform khác PyQt làPython interface của Qt, kết hợp của ngôn ngữ lập trình Python và thư viện

Qt, là một thư viện bao gồm các thành phần giao diện điều khiển (widgets ,graphical control elements)

- PyQt API bao gồm các module bao gồm số lượng lớn với cácclasses và functions hỗ trợ cho việc thiết kế ra các giao diện giao tiếp vớingười dùng của các phần mềm chức năng Hỗ trợ với Python 2.x và 3.x

- PyQt được phát triển bởi Riverbank Computing Limited, version mới nhấtcủa PyQt có thể download tại đường link : PyQt Riverbank ComputingLimited

- Các class của PyQt5 được chia thành các module, bao gồm :

+ QtCore : là module bao gồm phần lõi không thuộc chức năng GUI,

ví dụ dùng để làm việc với thời gian, file và thư mục, các loại dữ liệu,streams, URLs, mime type, threads hoặc processes

Trang 12

+ QtGui : bao gồm các class dùng cho việc lập trình giao diện(windowing system integration), event handling, 2D graphics, basicimaging, fonts và text.

+ QtWidgets : bao gồm các class cho widget, ví dụ : button, hộp thoại,

… được sử dụng để tạo nên giao diện người dùng cơ bản nhất

+ QtMultimedia : thư viện cho việc sử dụng âm thanh, hình ảnh,camera,…

+ QtBluetooth : bao gồm các class giúp tìm kiếm và kết nối với cácthiết bị có giao tiếp với phần mềm

+ QtNetwork : bao gồm các class dùng cho việc lập trình mạng, hỗ trợlập trình TCP/IP và UDP client , server hỗ trợ việc lập trình mạng.+ QtPositioning : bao gồm các class giúp việc hỗ trợ xác định vị

+ Enginio : module giúp các client truy cập các Cloud Services củaQt

+ QtWebSockets : cung cấp các công cụ cho WebSocket protocol

+ QtWebKit : cung cấp các class dùng cho làm việc với các trìnhduyệt Web , dựa trên thư viện WebKit2

+ QtWebKitWidgets : các widget cho WebKit

+ QtXml : các class dùng cho làm việc với XML file

+ QtSvg : dùng cho hiển thị các thành phần của SVG file

Trang 13

+ QtSql : cung cấp các class dùng cho việc làm việc với dữ liệu.

+ QtTest : cung cấp các công cụ cho phép test các đơn vị của ứngdụng với PyQt5

3.1.2. Giới thiệu các tool công cụ phần mềm phục vụ thiết kế với PyQt5

- Qt Designer : Qt sử dụng IDE tên Qt Creator với một tool thiết kế giaodiện người dùng Qt Designer Qt Designer có thể làm việc một mình độc lậpvới Qt Creator

Qt Designer sử dụng XML ui file để lưu thiết kế và không sinh thêm bất kỳ

mã nguồn nào của nó User Interface Compiler (uic) đọc định dạng fileXML (.ui) và xuất ra header file mã nguồn C++ tươn ứng Qt có một classQUiLoader cho phép một ứng dụng tải một file ui và tạo một giao diệnđộng tương ứng

- uic Python module : PyQt5 không chứa class QUiLoader nhưng thay vào đó

là module Python uic Cũng giống như QUiLoader , module python uic nàycũng tải định dạng file ui và tạo giao diện động tương ứng Giống như UIC(User Interface Compiler) module python uic này cũng sinh ra mã nguồnpython tạo nên giao diện tương ứng

Command line : $ pyuic5 ui > py là dòng lệnh làm việc với module python uic này.

- Python3 : python là một ngôn ngữ lập trình bậc cao, linh hoạt, là ngôn ngữthông dịch và là một ngôn ngữ động Python do Guido van Rossum tạo ranăm 1990 Các phiên bản của Python trong quá trình phát triển : Python 1 –

Trang 14

giai đoạn 1990 tới 1995; Python 2 – phát hành vào năm 2000; Python 3 ,python 3000 hoặc py3k được phát hành 3/12/2008.

3.2. Thiết kế back end

3.2.1. Ngôn ngữ lập trình Python

Python là một ngôn ngữ lập trình bậc cao cho các mục đích lập trình đanăng, do Guido van Rossum tạo ra và lần đầu ra mắt vào năm 1991 Pythonđược thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ Python là ngônngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mớihọc lập trình Cấu trúc của Python còn cho phép người sử dụng viết mã lệnhvới số lần gõ phím tối thiểu

Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tựđộng; do vậy nó tương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl Pythonđược phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận PythonSoftware Foundation quản lý

Ban đầu, Python được phát triển để chạy trên nền Unix Nhưng rồi theothời gian, Python dần mở rộng sang mọi hệ điều hành từ MS-DOS đến Mac

OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix Mặc dù

sự phát triển của Python có sự đóng góp của rất nhiều cá nhân, nhưng Guidovan Rossum hiện nay vẫn là tác giả chủ yếu của Python Ông giữ vai trò chủchốt trong việc quyết định hướng phát triển của Python

Trang 15

Hình 1: Ngôn ngữ lập trình Python

3.2.2. Thư viện OpenCV

OpenCv (Open Source Computer Vision) là một thư viện mã nguồn mở

về thị giác máy với hơn 500 hàm và hơn 2500 các thuật toán đã được tối ưu

về XLA, và các vấn đề liên quan tới thị giác máy OpenCv được thiết kế mộtcách tối ưu, sử dụng tối đa mạnh của các dòng chip đa lõi… để thực hiện cácphép tính toán trong thời gian thực, nghĩa là tốc độ đáp ứng của nó thể đủnhanh cho các ứng dụng thông thường

OpenCv là thư viện được thiết kế để chạy trên nhiều nền tảng khác nhau (cross-platform),nghĩa là nó có thể chạy trên hệ điều hành Window, Linux, Mac, iOS… Việc sử dụng thư viện OpenCv tuân theo các quy định

về sử dụng phần mềm mã nguồn mở BSD do đó bạn có thể sử dụng thư việnnày một cách miễn phí cho các mục đích phi thương mại lẫn thương mại

Dự án về OpenCv được khởi động từ những năm 1999, đến năm 2000

nó được giới thiệu trong một hội nghị của IEEE về các vấn đề trong thị giácmáy và nhận dạng, tuy nhiên bản OpenCV 1.0 mãi tới tận năm 2006 mới

Trang 16

chính thức được công bố và năm 2008 bản 1.1 (prerelease) mới được ra đời.Tháng 10 năm 2009, bản OpenCV thế hệ thứ hai ra đời (thường gọi là phiên

bản 2.x), phiên bản này có giao diện của C++ (khác với phiên bản trước cógiao diện của C) và có nhiều điểm khác biệt so với phiên bản thứ nhất Thưviện OpenCV ban đầu được sự hỗ trợ từ Intel, sau đó được hỗ trợ bởiWillow Garage, một phòng thí nghiệm chuyên nghiên cứu về công nghệrobot Cho đến nay, OpenCV vẫn là thư viện mở, được phát triển bởi nguồnquỹ không lợi nhuận (none-profit foundation) và được sự hưởng ứng rất lớncủa cộng đồng

Hình 2 Giới thiệu về thư viện OpenCV

3.2.3. CSDL DB Browser SQLite

SQLite là hệ thống cơ sở dữ liệu quan hệ nhỏ gọn, hoàn chỉnh, có thểcài đặt bên trong các trình ứng dụng khác SQLite được Richard Hipp viếtdưới dạng thư viện bằng ngôn ngữ lập trình C

SQLite là một lựa chọn phổ biến vì phần mềm cơ sở dữ liệu nhúng để lưutrữ cục bộ / máy khách trong phần mềm ứng dụng như trình duyệt web Nóđược cho là công cụ cơ sở dữ liệu được triển khai rộng rãi nhất , vì ngày nay

Trang 17

nó được sử dụng bởi một số trình duyệt, hệ điều hành và hệ thống nhúngrộng rãi (như điện thoại di động) SQLite có các ràng buộc với nhiều ngônngữ lập trình.

SQLite lưu trữ toàn bộ cơ sở dữ liệu (định nghĩa, bảng, chỉ mục vàchính dữ liệu) dưới dạng một tệp đa nền tảng trên một máy chủ Nó thựchiện thiết kế đơn giản này bằng cách khóa toàn bộ tệp cơ sở dữ liệu trongkhi viết Các hoạt động đọc SQLite có thể được đa nhiệm, mặc dù việc ghichỉ có thể được thực hiện tuần tự

Mục tiêu thiết kế của SQLite là cho phép chương trình được vận hành

mà không cần cài đặt hệ thống quản lý cơ sở dữ liệu hoặc yêu cầu ngườiquản trị cơ sở dữ liệu Hipp dựa trên cú pháp và ngữ nghĩa trên PostgreSQL6.5 Vào tháng 8 năm 2000, phiên bản 1.0 của SQLite đã được phát hành,với lưu trữ dựa trên gdbm (Trình quản lý cơ sở dữ liệu GNU) SQLite 2.0 đãthay thế gdbm bằng cách triển khai cây B tùy chỉnh , thêm khả năng giaodịch SQLite 3.0, được tài trợ một phần bởi America Online , đã thêm quốc

tế hóa , gõ bảng kê khai và các cải tiến lớn khác

Hình 3: Giới thiệu SQLite

3.3. Mổi trường lập trình Visual Studio Code

Trang 18

Visual Studio Code là một trình biên tập mã được phát triển bởi Microsoftdành cho Windows, Linux và macOS Nó hỗ trợ chức năng debug, đi kèm vớiGit, có syntax highlighting, tự hoàn thành mã thông minh, snippets, và cải tiến

mã nguồn Nó cũng cho phép tùy chỉnh, do đó, người dùng có thể thay đổitheme, phím tắt, và cá tùy chọn khác Nó miễn phí và là phần mềm mã nguồn

mở, mặc dù gói tải xuống chính thì là có giấy phép

Visual Studio Code được dựa trên Electron, một nền tảng được sử dụng đểtriển khai các ứng dụng Node.js máy tính cá nhân chạy trên động cơ bố tríBlink Mặc dù nó sử dụng nền tảng Electron nhưng phần mềm này không phải

là một bản khác của Atom, nó thực ra được dựa trên trình biên tập của VisualStudio Online (tên mã là "Monaco")

Hình 4:Môi trường lập trình Visual Studio Code

4 Nghiên cứu tổng quan.

4.1. Bài toán nhận dạng 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,mộtđoạn video (một dòng các hình ảnh liên tục) hoặc bằng webcam 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ững người mà hệ thống đã được biết (qua quátrình học) hoặc là người lạ

Trang 19

Trước khi nhận dạng mặt người, chương trình phải chuẩn bị trước một

dữ liệu thô Bao gồm các khuôn mặt của người cụ thể là nhân viên Tiếptheo là training dữ liệu thô để trích xuất các embedding vector để phục vụcho việc so sánh sau này Do đó việc chuẩn bị dữ liệu ban đầu hết sức quantrọng

Hình 5: Hệ thống nhận dạng khuôn mặt

4.2. Tổng quan kiến trúc 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 (Face Detection)

2 Phân đoạn khuôn mặt (Face Alignment hay Segmentation)

3 Trích chọn đặc trưng (Feature Extraction)

4 Nhận dạng (Recognition) hay Phân lớp khuôn mặt (FaceClasaification)

19

Trang 20

Hình 6: Các bước chính trong hệ thống nhận dạng.

4.3. Hạn chế, tồn tại của các phương pháp

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êncứ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ều nhóm trên thế giới quan tâm nghiêncứu Khó khăn của bài toán nhận dạng mặt người có thể kể đến như sau:

a Tư thế chụp, góc chụp: Ảnh chụp khuôn mặt có thể thay đổi rất nhiềubởi vì góc chụp giữa camera và khuôn mặt Chẳng hạn như: chụp thẳng,chụp chéo bên trái 45o hay chụp chéo bên phải 45o , chụp từ trên xuống,chụp từ dưới lên, v.v… Với các tư thế khác nhau, các thành phần trênkhuôn mặt như mắt, mũi, miệng có thể bị khuất một phần hoặc thậm chíkhuất hết

b 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ưngnhư: râu mép, râu hàm, mắt kính, v.v… có thể xuất hiện hoặc không.Vấn đề này làm cho bài toán càng trở nên khó hơn rất nhiều

c Sự biểu cảm của khuôn mặt: Biểu cảm của khuôn mặt con 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ột người, nhưng có thể sẽ rất khác khi họ cườihoặc sợ hãi, v.v…

d Sự che khuất: Khuôn mặt có thể bị che khuất bởi các đối tượng kháchoặc các khuôn mặt khác

e Hướng của ảnh (pose variations): Các ảnh khuôn mặt có thể biến đổi rấtnhiều với các góc quay khác nhau của trục camera Chẳng hạn chụp

20

Trang 21

với trục máy ảnh nghiêng làm cho khuôn mặt bị nghiêng so với trục củaảnh.

f Điều kiện của ảnh: Ảnh được chụp trong các điều kiện khác nhau về:chiếu sáng, về tính chất camera (máy kỹ thuật số, máy hồng ngoại,v.v…), ảnh có chất lượng thấp ảnh hưởng rất nhiều đến chất lượng ảnhkhuôn mặt g Aging condition: Việc nhận dạng ảnh mặt thay đổi theothời gian còn là một vấn đề khó khăn, ngay cả đối với khả năng nhậndạng của con người

Trang 22

CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG ỨNG DỤNG DESKTOP NHẬN DIỆN KHUÔN MẶT VÀ ĐIỂM

DANH.

1 Thiết kế hệ thống tổng thể.

Luồng hoạt động tổng thể của hệ thống:

Trang 23

Hình 7: Luồng hoạt động tổng thể của hệ thống.

2 Phân tích yêu cầu hệ thống.

 Đối với nhân viên: Là người tham gia với vai trò nhận diện để điểm danhtrong hệ thống, nhân viên có thể xem lịch điểm danh của mình cũng như cóthể xem thông tin ứng dụng và xem trợ giúp từ hệ thống

 Đối với quản trị viên ( Admin): Là người có quyền cao nhất trong hệ thống,admin sẽ đăng nhập vào chế độ admin để có thể đến các chức năng cập nhậtthông tin nhân viên trong hệ thống ( Admin có thêm sửa xóa thông tin củanhân viên, cũng như cập nhật mật khẩu) và ngoài ra Admin cũng có thể sửdụng các chức năng của Nhân viên trong hệ thống

3 Thiết kế cơ sở dữ liệu.

 Tạo database FaceData.db:

Bảng 1: Tạo database FaceData.db

STT Tên Table Thiết kế CSDL

CREATE TABLE people (

ID CHAR (10, 20) NOT NULLPRIMARY KEY,

Trang 24

Name VARCHAR (30, 40) NOT NULL,Age INTEGER (10, 20),

Gender CHAR (20, 30),Phone NUMERIC (0, 11),Address VARCHAR (2, 150));

 Tạo database data.sqlite:

Bảng 2: Tạo database data.sqlite

STT Tên Table Thiết kế CSDL

CREATE TABLE userdata (username VARCHAR (100) NOT NULL,password VARCHAR (100) NOT NULL);

 Database FaceData.db và data.sqlie:

Hình 8: Database FaceData.db và data.sqlie

4 Xây dựng hệ thống.

Trang 25

1 Quản trị viên Người có quyền hạn cao nhất, có thể làm mọi thứ

trên hệ thống Họ là người chịu trách nhiệm cậpnhật thông tin nhân viên , vận hành và quản lýtoàn bộ hệ thống

2 Nhân viên Người tương tác trực tiếp với hệ thống, có quyền

tham gia nhận diện điểm danh và xem lịch điểmdanh trên hệ thống

4.2.Danh sách Use Case.

4.2.1 Sơ đồ Use Case tổng quan.

Hình 9: Sơ đồ Use Case tổng quan

Trang 26

Bảng 5: Bảng danh sách Use Case Admin

1 Thêm hoặc sửa

thông tin nhân

viên

Tab 1: Sửathông tin nhânviên

( không bao gồmnhận diện khuônmặt)

- Cập nhật thông tin

- Cập nhật khuôn mặt

Tab 2: Thêmnhân viên

- Xóa thông tin

4.2.3 Nhân viên.

Bảng 6: Bảng danh sách Use Case Nhân viên

Trang 27

- Điểm danh

- Xem lịch

4.3 Sơ đồ Use Case chi tiết.

4.3.1 Authentication

 Use Case Đăng xuất

Hình 10: Use Case Đăng xuất

 Use Case Đăng xuất

Hình 11: Use Case Đăng xuất

 Use Case Thay đổi mật khẩu

Trang 28

Hình 12: Use Case Thay đổi mật khẩu

4.3.2 Admin

 Use Case Thêm hoặc sửa thông tin Nhân viên

Hình 13: Use Case Thêm hoặc sửa Nhân viên

 Use Case xóa Nhân viên

Hình 14: Use Case xóa Nhân viên

 Use Case Tìm thông tin nhân viên

Trang 29

Hình 15: Đặc tả Use Case Tìm thông tin nhân viên

 Use Case Training Data

Hình 16: Use Case Training Data

 Use Case Xem lịch

Hình 17: Use Case Xem lịch

4.3.3 Nhân viên.

 Use Case Điểm danh

Trang 30

Hình 18: Use Case Điểm danh

 Use Case Xem lịch

Hình 19: Use Case Xem lịch

4.4 Đặc tả Use Case.

4.4.1 Authentication.

 Đăng nhập

Bảng 7: Đặc tả Use Case Đăng nhập

Objective Tính năng này cho phép NSD có thể đăng nhập vào chế

độ quản lý của hệ thống

Ngày đăng: 18/10/2021, 20:29

HÌNH ẢNH LIÊN QUAN

Hình 1: Ngôn ngữ lập trình Python - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 1 Ngôn ngữ lập trình Python (Trang 15)
Hình 2. Giới thiệu về thư viện OpenCV - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 2. Giới thiệu về thư viện OpenCV (Trang 16)
Hình 5: Hệ thống nhận dạng khuôn mặt. - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 5 Hệ thống nhận dạng khuôn mặt (Trang 19)
Hình 8: Database FaceData.db và data.sqlie - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 8 Database FaceData.db và data.sqlie (Trang 24)
Bảng 3: Các Actor tham gia hệ thống điểm danh bằng nhận diện khuôn mặt. ST - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Bảng 3 Các Actor tham gia hệ thống điểm danh bằng nhận diện khuôn mặt. ST (Trang 25)
Bảng 5: Bảng danh sách Use Case Admin - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Bảng 5 Bảng danh sách Use Case Admin (Trang 26)
Hình 11: Use Case Đăng xuất - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 11 Use Case Đăng xuất (Trang 27)
Hình 12: Use Case Thay đổi mật khẩu - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 12 Use Case Thay đổi mật khẩu (Trang 28)
Hình 13: Use Case Thêm hoặc sửa Nhân viên - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 13 Use Case Thêm hoặc sửa Nhân viên (Trang 28)
Hình 15: Đặc tả Use Case Tìm thông tin nhân viên - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 15 Đặc tả Use Case Tìm thông tin nhân viên (Trang 29)
Hình 19: Use Case Xem lịch - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 19 Use Case Xem lịch (Trang 30)
Hình 18: Use Case Điểm danh - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 18 Use Case Điểm danh (Trang 30)
Trigger NSD chọn [chế độ Admin ]từ màn hình chính - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
rigger NSD chọn [chế độ Admin ]từ màn hình chính (Trang 31)
Bảng 11: Đặc tả Use Case Xóa nhân viên - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Bảng 11 Đặc tả Use Case Xóa nhân viên (Trang 33)
Hình 21: Biểu đồ tuần tự Đăng nhập - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 21 Biểu đồ tuần tự Đăng nhập (Trang 37)
Hình 23: Biểu đồ tuần tự Thay đổi mật khẩu - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 23 Biểu đồ tuần tự Thay đổi mật khẩu (Trang 38)
Hình 27: Biểu đồ tuần tự xóa thông tin Nhân viên - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 27 Biểu đồ tuần tự xóa thông tin Nhân viên (Trang 40)
Hình 31: Biểu đồ tuần tự Tìm kiếm - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 31 Biểu đồ tuần tự Tìm kiếm (Trang 42)
Hình 32: Biểu đồ hoạt động Điểm danh - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 32 Biểu đồ hoạt động Điểm danh (Trang 43)
Hình 36: Phân tích kiến trúc - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 36 Phân tích kiến trúc (Trang 44)
• Hiện thị thông tin nhân viên lên màn hình - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
i ện thị thông tin nhân viên lên màn hình (Trang 51)
Hình 38: Hình ảnh nhận diện khuôn mặt điểm danh - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 38 Hình ảnh nhận diện khuôn mặt điểm danh (Trang 54)
Hình 41: Hình ảnh xem kết quả điểm danh - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 41 Hình ảnh xem kết quả điểm danh (Trang 55)
Hình 42: Hình ảnh cập nhật thông tin nhân viên - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 42 Hình ảnh cập nhật thông tin nhân viên (Trang 56)
Hình 43: Hình ảnh xóa nhân viên theo ID - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 43 Hình ảnh xóa nhân viên theo ID (Trang 56)
Hình 44: Hình ảnh cập nhập tài khoản Admin - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 44 Hình ảnh cập nhập tài khoản Admin (Trang 57)
Hình 45: Hình ảnh thông tin trợ giúp - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 45 Hình ảnh thông tin trợ giúp (Trang 57)
Hình 46: Hình ảnh thông tin sản phẩm - Phần mềm nhận diện khuôn mặt và điểm danh trên desktop
Hình 46 Hình ảnh thông tin sản phẩm (Trang 58)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w