Hệ thông gồm thiết bị có tích hợp camera cho phép phát hiện và tự động chụp ảnh, hệ thống web server quản trị tập trung và đặt biệt là hệ thống cho phép nhận diện hình ảnh dé tự động điể
Trang 1ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MAY TÍNH VÀ TRUYEN THONG
Lé Minh Khanh An
16520007
KHOA LUAN TOT NGHIEP
XAY DUNG HE THONG DIEM
DANH KHONG CHAM VỚI IOT
IOT BASED CONTACTLESS
ATTENDANCE SYSTEM
KY SU NGÀNH TRUYEN THONG VÀ MẠNG MAY TÍNH
Trang 2ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MAY TÍNH VÀ TRUYEN THONG
Lé Minh Khanh An
16520007
KHOA LUAN TOT NGHIEP
XAY DUNG HE THONG DIEM
DANH KHONG CHAM VỚI IOT
IOT BASED CONTACTLESS ATTENDANCE SYSTEM
KỸ SƯ NGÀNH TRUYEN THONG VÀ MẠNG MAY TÍNH
Trang 3THONG TIN HỘI DONG CHAM KHÓA LUẬN TOT NGHIỆP
Hội đồng chấm khóa luận tốt nghiệp, thành lap theo Quyết định số ngày
của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
Trang 4Lời cảm ơn
Lời đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến quý thầy, cô đang giảng
dạy và công tác tại khoa Mạng Máy Tính và Truyền Thông cũng như là toàn thể quý
thầy, cô của trường Đại học Công Nghệ Thông Tin đã trang bị kiến thức, kỹ năng, kinh
nghiệm quý báu cho chúng em trong suốt thời gian bốn năm học tập tại trường Với vốn kiến thức thu được trong quá trình học tập đó không chỉ là nền tảng cho chúng hoàn
thành khóa luận tốt nghiệp này mà còn 1a hành trang quý bau cho chúng em tự tin bước vào đời Bên cạnh đó, chúng em xin cảm ơn ban chủ nhiệm khoa đã sắp xếp chương
trình học hợp lý, tạo điều kiện thuận lợi cho chúng em thực hiện khóa luận này.
Đặt biệt, chúng em xin gửi lời cảm ơn chân thành đến thầy TS Thái Huy Tân đã
dành thời gian quan tâm, giúp đỡ, nhiệt tình hướng dẫn và cho chúng em những điều kiện tốt nhất để hoàn thành khóa luận này Trong suốt khoảng thời gian thực hiện khóa luận dưới sự hướng dẫn của thầy, chúng em không chỉ học tập được những kiến thức
chuyên môn mà còn được tiếp cập với những cách thức, tư duy nghiên cứu khoa học.
Nhờ những kinh nghiệm quý báu của thay, đặt biệt là những sự hỗ trợ trong những giai đoạn khó khăn là tiền đề để chúng em hoàn thành khóa luận này.
Cuối cùng, chúng em xin được cảm ơn gia đình đã tin tưởng, ủng hộ là động lực dé
chúng em hoàn thành chương trình học ở trường Chúng em xin gửi lời cảm ơn đến các
anh, chị, bạn bè sinh viên trường Đại học Công Nghệ Thông Tin đã luôn bên cạnh,
động viên, hỗ trợ, chia sẻ những khó khăn Những ý kiến, góp ý của các anh, chị và các
ban đã giúp chúng em rất nhiều trong quá trình hoàn thiện dé tài này.
Một lần nữa chúng em xin cảm ơn đến tat cả quý thay, cô, anh, chị, bạn bè Chúng em
Trang 5CHƯƠNG 1 GIỚI THIỆU
1.1 Tổng quan
1.1.1 _ Internet of Things là gi 6 St tt gi 1
1.1.2 Cấu trúc Internet of Things
1.1.3 Các đặc trưng co bản của IoT.
1.1.4 Ứng dụng của loTs tại Việt Nam và thế g
1.2 Phát biểu vấn đề và mục tiêu hướng đến của đề tài -scc+ 4 1.2.1 Phat biểu vấn đề
1.2.2 Mục tiêu hướng đến của đề tài
1.3 Đối tượng nghiên cứu và giới hạn của đề tài
1.3.1 Đối tượng nghiên cứu .-c¿22++c2222+++tEEEEvretEEEvrrerrkkrrrsrrkev 7
1.3.2 Giới hạn của dé tài
1.4 Cấu trúc của khóa luận
CHƯƠNG 2 CÁC NGHIÊN CUU VÀ CÔNG NGHỆ LIÊN QUAN 10
2.1 Tinh hình nghiên cứu của các công trình liên quan - - + 10
2.2 Cơ sở lý thuyết và hướng tiếp cận của dé tài
2.2.1 RESTful Web Service we
2.2.2 Bộ ML dành cho Firebase ¿c3 v22 EvESEevetetetrtrerrrerrrrrrsree 12
2.2.3 Hệ quản trị cơ sở dit liệu 6S St rờ 13
Trang 63.1 Tổng quan kiến trúc hệ thống -:¿-++22v++++22E+++tttrvvrrerrrvrrrrrrrs 21
3.2 _ Sơ đồ phân rã chức năng của ứng dụng
3.2.1 Nhóm chức năng “Quản lý tài khoản”
3.2.2 Nhóm chức năng “Giảng viên” “
3.2.3 Nhóm chức năng “Sinh ViÊn” - ¿+ ket HH re 47
3.2.4 Nhóm chức năng “Điểm danh” -2:+2222++v22ES+vttcrvvrrrrrrvrcree
3.3 Sơ đồ phân rã chức năng của web quản trị
3.3.1 Sơ đồ UseCase
3.3.2 Biểu đồ sequence diagram.
3.4 Mô hình thiết kế cơ sở đữ liệu -cc-¿-22222vcverittrEEkrtrrrrrrrrrrrrrrrrrrrre 72
CHUONG 4 HIỆN THỰC UNG DỤNG -2222ccc+cczvsecsrrrs 76
4.1 Giao diện quản trị hệ thống OO S Ô 76
4.1.1 Đăng nhập
4.1.2 Trang chủ
4.1.3 Quản lý sinh viên +
4.1.4 Thêm sinh viÊn - ¿5-6 St t3 TH ghê 80
AAS 0 ly Khoa on 81
4.1.6 Thêm khóa học
4.1.7 Quản lý giảng viên
4.1.8 Thêm giảng viên
4.1.9 Cập nhật thông tin quản trị viên
Trang 74.2.8 Tạo khóa học mớii + + + ng re
4.2.9 Thông tin khóa học
4.2.10 Tạo buổi điểm danh ccccccccrrrrrttrrrtrrrrtrrtrrterrrrrriirirrrrrrrr
4.2.11 Xem thông tin điểm danh
4.2.12 Kết nối thiết bị
4.2.13 Tham gia khóa hỌC -¿- ¿+ k+kESk Sàn TH TH gi
4.2.14 Trích xuất thông tin điểm danh
4.3 Giao diện của thiết bị điểm danh
.103
.106 04
4.4 Đánh giá kiêm định ứng dụng 107
CHƯƠNG 5: TONG KET VÀ HƯỚNG PHÁT TRIỂN - 111
5.1 Kết qua dat AU C cccecccssesssssseesssssseesessssssssssssssssssessesssiseesssseeesessieesesseeeeeeseees "1
Trang 82 Mỗi tương quan giữa AI, Machine Learning va Deep Learning 18
1 Sơ đồ mô tả hoạt động của hệ thống 21
2 Thiết bị điểm danh 25
3 Sơ đồ phân rã chức năng hệ thống 26
4 Sơ đồ Use case quản lý tài khoản 2 22¿c22222++t2EEESerrtrrkxrrrrrrrecer 27
5 Biểu đồ sequence diagram - Đăng ký tài khoản -.cc-:-5ccccvx 29
6 Biểu đồ chức năng đăng nhập - -:-+222+++222v+rrsrrvrrrrrrrrrcree 30
7 Biểu dé chức năng truy xuất thông tin tài khoản - 2©: 31
8 Biểu đồ thay đổi mật khâu c¿-¿c¿222vvveecrrrrrrrxreereerrrrrsreeec 2
9 Biểu đồ đăng xuất 2222 2222222 2222211111222 re 33
10 Biểu dd Quên mật khẩu 22-2z+22EE++zt2EEEEEetEEEEEErrErkrrrrrrkkrcrer 34
11 Sơ đồ Usecase Nhóm chức năng giảng viên - cc5ccccc5se + 36
12 Biểu đồ xe thông tin khóa học -:¿¿£2222vcvvvretttrErvrrerrrrrrrrrree 38
13 Biểu đồ Tạo khóa học mới -tttEEEkkktkkiiiiiirrrrrrrrrrrrririiie 39
14 Biểu đồ xem thông tin các buổi điểm danh cz+c2czz++ 40
15 Biểu đỗ trích xuất thông tin điểm danh -2 ©2z+2222+zzrevzzveceee 4I
16 Biểu đồ xem thông tin buổi điểm danh -::¿¿222cvvvcccesrrrrrree 43
17 Biểu đồ tao khda HOC 0117 a 44
Trang 922 Sơ đồ xem thông tin khóa học : ++222++++222++++etvvvvzrrrrrvrreee 50
23 Sơ đồ xem thông tin điểm danh - 2: ©++++222+++++t2vx+errtrrveceee 51
24 Sơ đồ tham gia khóa học mới -¿-2++2V++++222+++++t2vx+rrttrxrrceee 52
25 Sơ đồ xem thông tin điểm danh -:-©2+z+222v++++tcvvvrrrrrrvrceee 53
26 So đồ báo cáo thông tin điểm danh không đúng - +: 54
27 Sơ đồ điểm danh -::::ccvcvvvvoootrnthnnH 11210011 re 55
28 Sơ đồ Usecase Nhóm chức năng điểm danh +£©2scc+¿ 56
29 Sơ đồ phân rã chức năng web quản trị : -¿:©22z+222cvzzcvzzveceee 58
30 Sơ đồ Use case web quản trị -. -: ©2222cc22222222222112221111 2222112 cerrrvee 59
31 Biểu đồ chức năng đăng nhập web quản trị -c-:+-+cccccvccceesre 61
32 Biểu đồ đăng xuất web quản trị ::2cz222+++evvcvvvreerrrvrrrrrrrcee 62
33 Biểu dd quản lý sinh viên Web quản trị - 22: 2¿z+22+z++evzvxeesrrrrsee 63
34 Biểu đồ xóa sinh viên web quản trị -cc+£+22vvvvvcre+trrrrvvrrrrrrre 64
35 Thay đổi thông tin sinh viên ¿¿-2222cvc+c+2t2EEEvvverrrrtrrrrkrrrrrrrre 65
36 Sơ đồ thêm giảng viên của web quản trị :c©22scc+2ccvvecsccvscee 66
37 Sơ đồ xóa giảng viên web quản trị -. -2++z+22+++vtEExxererrrxerrrrrrvee 67
38 Sơ đồ thay đổi thông tin giảng viên web quản trị -c-c -e: 68
39 Sơ đồ thêm khóa học mới web quản trị ¿sc+z222sscz+cvvsse+ 69
40 Sơ đồ Xóa khóa học web quan tỊ - c-ccS+ vs ekekerereksrrkerrrrree 70
41 Sơ dé thay đổi thông tin khóa học web quản trị -:-c-sc-+: 71
42 Mô hình thiết kế cơ sở dữ liệu -¿©22+++222++++etcrxvrrrrrrvecrer 72
1 Giao diện đăng nhập trang quản tTỊ - ¿+ 5+5 +<+++++x+eveerreres 76
2 Giao diện trang Củ ¿+ St kề TH HH trệt 77
Trang 106 Giao diện xóa thông tin sinh viÊn - -¿- - 5+ St *x‡ekEEEkekerrrkrkekrke 80
7 Giao diện thêm thông tin sinh viên - 2 2+ <2 s+£z£ezxzx+xezerrxrve 80
8 Giao diện quan lý khóa hỌc 6 + tk ngư 81
9 Giao diện Thay đôi thông tin khóa học -2¿:©2++222vzzrevczveceee 82
10 Giao diện thay đổi thông tin khóa thành công -: -: 82
11 Giao diện xóa thông tin khóa học - 5 + +++c+cexsrzkekererrrrkree 83
12 Giao diện thêm thông tin khóa hoe - + +5++++c+Evxervrkersrerrrxrke 83
13 Giao diện Quản lý giảng viên -/- eesesseseeseseesesseseeseseeseeneseees 84
14 Giao diện Thay đổi thông tin giảng viên 2222ccc2ccvccrcccvveccee 85
15 Giao diện thay đổi thông tin giảng viên thành công - 85
16 Giao diện xóa thông tin giảng viÊn - - 5+5 St+x+cvrvrerrtersrerrerree 86
17 Giao diện thêm thông tin giảng viên ¿- ¿25c 5+cc>tcezkertersrreree 86
18 Giao diện chọn cập nhật thông tin quản trị viên - - + +5 «e+2 87
19 Giao diện cập nhật thông tin quản trị viÊn - - - 5+ 5sc++x+x+cexerexex+ 87
20 Giao diện chon đăng đt \ Đ /, 88
21 Giao diện đăng nhập ứng dụng ¿<5 +++E‡EkErkekerrrrrkrke 89
22 Giao diện đăng ký tài khoản ứng dung - - 55+5c+c+c+ccc+ecez 90
23 Chụp hình thẻ sinh viên ¿St EvEvEEvekekekrkrrrrrerekrkrree 91
24 Xem lại ảnh đã chụp - - - 5+ + tt x1 tr rey 91
25 Dang ký thẻ sinh viên thành công ¿+ + + 2 S+£*£zxexsxererrkrke 92
26 Chức năng quên mật khầu 2 2¿22++++22EE+++£E2E+++tttExxzrrrrrrsee 92
27 Giao diện prOfil€ - 5-5: + 2t 2t tre 93
28 Chức năng đổi mật khẩu -22¿©2©+2++222E+++ttEEEEvrrtrrkrrrrrrrkrree 94
Trang 1133 Màn hình Thông tin khóa học của sinh viên . - - ¿555555552 +ss<++ 98
34 Tạo buổi điểm danh - eerrrrtrirrrrrrrrrrrrrrrrrrrrrrrrrrrre 99
35 Màn hình Thông tin khóa học của giảng viên - -5-©5+ 5552 00
36 Màn hình Thông tin khóa học của sinh viÊn - - 5c 5s +5++++x+xc++ 00
37 Tìm kiếm sinh viên I01
38 Thay đổi thông tin sinh viên 02
39 Điểm danh thủ công 03
40 Kết nói với thiết b 103
41 Chức năng tham gia lớp học của sinh VIÊN ¿5+ +5 <+x+x+xsvcvs+x 04
42 Xuất file điểm danh cho buổi học 2-¿z22+2+£E+++£Exeezrxszsrrsee 05
43 Xuất file điểm danh cho môn học -:+2++z222++z+t:zsscez 06
44 Thiết bị điểm danh sinh viên -ccccccrrkkkttiirerrrrrrrrrrrrree 06
45 Kết quả kiểm tra lần đầu -©2222¿+2222+E+tEEEEEEtEEEEEErrrrkkrrrrrrkrvee 07
46 Kết quả kiểm tra lần hai ccccccccssseesssssesecssseesssssesessssseessssstecesssseeesesseesessssess 08
47 Kết quả kiểm tra lần ba 2222222222222 EEvrtrttrrrkrtrrrrrrrrrer 08
48 Biểu đồ kiểm định lần đầu ccccccccccerrrrrrrrrrrrrrrrrrrre 09
49 Biểu đồ Kiểm định lần hai icccccccccccceerrrrrrrrrrrrrrrrrrrrre 09
50 Biểu đỗ kiểm định lần ba 222:©22222+222EEEtEEEEEErrrrrkvrrrrrrkrvee 10
Trang 12Danh sách bảng
Bang 3 1 Bảng cơ sở dữ liệu người dùng ¿+ c5 sEvexekrksrkrkrrrrrrreree 73
Bảng 3 2 Bảng cơ sở dữ liệu khóa hỌc - 5+5 S*+x‡xexsEvrrkerrrerrrkrkersrrrrrkrrrke 74
Bang 3 3 Bảng cơ sở dit liệu học tập ¿5c set ườ 74
Bảng 3 4 Bảng cơ sở dữ liệu buổi học - ¿¿2222++z+222S+vtvvvvvreetrrvrrrrrrseee 75 Bảng 3 5 Bảng cơ sở dữ liệu điểm danh -2:22222+222+++tvvvvvvreetrvvrrrrrrrree 75
Trang 13Danh mục từ viết tắt
TỪ NOI DUNG DIEN GIAI
AI Artificial Intelligence Trí tuệ nhân tạo
ML Machine Learning Máy học
DL Deep Learning Học sâu
API Application Programming Interface | Giao diện lập trình ứng dụng
loT Internet of Things Vạn vật kết nối internet
ICT Information and Communication Công nghệ thông tin truyền thông
Technologies
HTTP | HyperText Transfer Protocol Giao thức truyền siêu văn ban
Trang 14TOM TAT KHÓA LUẬN
Hiện tại việc điểm danh sinh viên vào các buổi học thường tốn nhiều thời gian vì
người điểm danh cần gọi tên, điểm mặt từng bạn trong lớp học Đối với những lớp học có từ 50 sinh viên trở lên thì công việc này càng khó khăn hơn vì có thể xảy ra
trường hợp gian lận trong điểm danh (điểm danh hộ) Trong đề tài này, chúng tôi
nghiên cứu về nhận diện khuôn mặt bằng thuật toán học sâu Chúng tôi đã phân tích phương pháp đề xuất với các phương pháp khác Hệ thống điểm danh sinh viên bằng nhận dạng khuôn mặt giúp cho việc điểm danh trở nên nhanh chóng và dễ dàng hơn, khắc phục nhưng khuyết điểm, hạn chế của việc điểm danh truyền thống.
Trong đề tài này, chúng tôi đề xuất xây dựng hệ thống điểm danh sinh viên dựa các
trên thuật toán trí tuệ nhân tạo Hệ thông gồm thiết bị có tích hợp camera cho phép phát hiện và tự động chụp ảnh, hệ thống web server quản trị tập trung và đặt biệt là
hệ thống cho phép nhận diện hình ảnh dé tự động điểm danh, Ứng dụng trên thiết bị
di động android cung cấp giao diện cho người dùng và web quan trị cho phép quan lý
dữ liệu người dùng Điểm nổi bật của hệ thống là khả năng tự động điểm danh dựa trên khuôn mặt của sinh viên Cụ thể là sử dụng thuật toán AI để nhân điện khuôn
mặt của sinh viên từ hình ảnh được cung cấp từ thiết bị chụp ảnh so với dữ liệu hình
ảnh được đăng ký trước đó Bên cạnh đó hệ thống còn cung cấp các chức năng khác cho phép người dùng dễ dàng theo dõi thông tin điểm danh cũng như là tổng hợp và quản lý thông tin điểm danh theo buổi học và theo từng môn học một cách thuận
Trang 15CHƯƠNG 1 GIỚI THIỆU
1.1 Tổng quan
1.1.1 Internet of Things là gì
loT, viết tắt của Internet of Things, nghĩa là Internet vạn vật, một hệ thống các thiết bị tính toán, máy móc cơ khí và kỹ thuật số hoặc con người có liên quan với nhau và khả năng truyền dữ liệu qua mạng mà không yêu cầu sự tương tác giữa con người với máy tính.
1.1.2 Cấu trúc Internet of Things
Một hệ thống IoT sẽ bao gồm 4 thành phan chính bao gồm: Thiết bị (Things), trạm kết
Trang 16chung là “Things” phải có tên hay địa chi IP riêng biệt Hệ thống IoT cần hỗ
trợ các kết nối giữa các “Things” và kết nối được thiết lập dựa trên định danh
IP của Things.
Khả năng quan lý: Hệ thống IoT làm việc tự động mà không can sự tham gia
người, vì thế chúng cần phải hỗ trợ tính năng quản lý các “Things” để đảm
bảo mạng lưới hoạt động bình thường.
Khả năng báo mật: Vì trong IoT có rất nhiều “Things” sẽ được kết nối với
nhau, làm tăng mối nguy trong bảo mật như lộ thông tin, xác thực sai, sai lệch
dữ liệu, Bên cạnh đó, các “Things” trong hệ thống có thể thuộc nhiều chủ sở
hữu khác nhau và chứa thông tin cá nhân của họ Vì thế, các hệ thông IoT cần bảo vệ sự riêng tư trong quá trình truyền dữ liệu, tập hợp, lưu trữ, khai thác và
xử lý.
Dich vụ thỏa thuận: Dich vụ này dé có thé được cung cấp bằng cách thu thập, giao tiếp và xử ly tự động các dữ liệu giữa các “Things” dựa trên các quy
tắc được thiết lập bởi người vận hành hoặc tùy chỉnh bởi người dùng!.
Kha năng cộng tác: Kha năng này cho phép hệ thống IoT có khả năng tương
tác qua lại giữa các mạng lưới va Things một cách dễ dàng.
Khả năng tự quản của mạng lưới:Bao gồm tự quản lý, tự cấu hình, tự khắc phục lỗi, tự tối ưu hóa, tự có cơ chế bảo VỆ, để mạng lưới có thể thích ứng
với các tên miền ứng dụng, môi trường truyền thông và nhiều loại thiết bị
khác nhau
Các khả năng dựa vào vị tri (location — based capabilities): Hệ thống JoT
có thé biết và theo dõi vị trí một cách tự động Các dich vụ dựa trên vị trí này
Trang 171.1.3 Các đặc trưng cơ bản của IoT
Hệ thống IoT sẽ bao gồm các đặc trưng như sau:
e Khong đồng nhất: Các thiết bi trong IoT thường không đồng nhất vì sở hữu
phan cứng, cũng như hệ thong khác nhau và có thé tương tác vớinhau nhờ vào
sự liên kết của các hệ thống.
e Kếtnối liên thông (Interconnectivity): Đối với hệ thống IoT, các vật dụng, thiết
bị đa dạng đều có thể kết nối với nhau thông qua mạng lưới thông tin và cơ sở
hạ tầng liên lạc tổng thê
e Dịch vụ liên quan đến “Things”: Hệ thống IoT có kha năng cung cấp các dich
vụ liên quan đến “Things” chăng hạn như bảo vệ sự riêng tư và nhất quán giữathiết bị vật lý (Physical Thing) và phần mềm (Virtual Thing)
e Có quy mô lớn: Số lượng rat lớn các thiết bi, máy móc sẽ được quản lý và giao
tiếp với nhau với quy mô lớn hơn nhiều so với số lượng máy tính kết nối Internet
hiện nay Số lượng thông tin được truyền bởi các thiết bị sẽ lớn hơn nhiều so với
con người thực hiện.
e_ Có thé thay đổi linh hoạt: Các trạng thái của các thiết bị điện tử, máy móc có
thé tự động thay đổi như tắt và bật, kết nối hoặc ngắt, truy xuất vị trí,
1.1.4 Ứng dụng của IoTs tại Việt Nam và thế giới
IoT được ứng dụng trong nhiều khía cạnh cuộc sống và phục vụ cho đa dang đối
tượng:
Ung dung cho doanh nghiệp Lợi ích của IoT cho doanh nghiệp phụ thuộc vào việc
triên khai cụ thê dựa trên việc truy cập vào nguôn dữ liệu vê các sản phâm và hệ thông nội bộ của họ Các nhà sản xuât đang bô sung các cảm biên vào các thành phân
của sản phẩm dé giúp nó có thé kết nói và truyền tải đữ liệu, từ đó giúp phát hiện ra
Trang 18lỗi trước khi thiệt hại xảy ra.
Việc sử dụng IoT cho doanh nghiệp có thé được chia thành hai phân khúc:
e Các dịch vụ dành riêng cho ngành như cảm biến trong nhà máy phát điện hoặc
thiết bị định vị thời gian thực để chăm sóc sức khỏe
e_ Các thiết bị IoT được sử dụng trong tat cả các ngành công nghiệp như điều hòa
không khí thông minh hoặc hệ thống an ninh
Ứng dụng cho người dùng IoT sẽ làm cho nhà, văn phòng và phương tiện trở nên
thông minh hon, dé đo lường hon và tự động tốt hơn Các thiết bị thông minh như trợ
lý ảo như Google Assistant giúp tiết kiệm sức lực, hỗ trợ các công việc hằng ngàynhư phát nhạc, bật điều hoa
Dự tính trong tương lai, IoT tại Việt Nam sẽ diễn ra một cách mạnh mẽ khi ngày càng
có nhiều doanh nghiệp đã bắt đầu triển khai những dự án về IoT loT mang lại một cơhội doanh thu cho rất nhiều ngành và những giải pháp đó bắt đầu thương mại hóa vớitốc độ rất nhanh Ngành dịch vụ tiện ích, giao thông, tòa nhà thông minh và cácngành bán lẻ là những ngành đi đầu trong việc ứng dụng IoT Và để có thé triển khaiIoT thành công và bền vững cần phải cân nhắc đến bốn yếu tố đó là nền tảng phầnmềm, hệ sinh thái giữa các ngành, quy trình chuân hóa về công nghệ và giải quyết
được những lo lắng của khách hàng liên quan đến đảm bảo tính riêng tư và an toàn.
Trang 19thông (ICT) trong thập kỷ qua, đã tạo nên cuộc cách mạng thật sự đối với
Internet of things (IoT) [2] Sự bùng nổ của các ứng dụng IoT đã tác động tích cực
đến các mặt như đời sống, sinh hoạt, chăm sóc sức khỏe hay sản xuất công nghiệp
trong thời kỳ công nghệ 4.0 Cùng với đó là sự lan rộng mạnh mẽ của quá trình đô thị
hóa ở các thành phố hiện đại đòi hỏi phải xuất hiện các giải pháp dé làm giảm anhhưởng của áp lực dân số đến môi trường, đồng thời nâng cao chất lượng đời sống của
cư dân [3] Trong đó, ưu tiên hàng đầu là giải quyết các vấn đề quan trọng như dichuyền, chăm sóc sức khỏe, co sở hạ tang dân dụng và năng lượng Đó cũng là nhữngyếu tố và tiền dé dé tạo dựng các thành phố thông minh
Nhắc tới việc điểm danh thì chắc chắn ai cũng từng trai qua nếu là một sinh viên hayngười đi làm ở các công ty xí nghiệp Việc điểm danh là một phần không thể thiếutrong việc quản lý tại các công ty và trường học Thực tế như hiện nay chưa có nhiềutrường học áp dụng hình thức quản lý học sinh, sinh viên băng công nghệ nhưng đây
là cách vô cùng tiện lợi, nhanh chóng và chính xác giúp nhà trường quản lý học sinh,
sinh viên một cách chặt chẽ và khoa học nhất giúp cho nhà trường giảm được mộtlượng lớn thời gian thay cho việc điểm danh bằng miệng ở trên giảng đường haytránh không cho những kẻ xấu xâm nhập vào trong môi trường học đường
Theo sự phát triển của công nghệ dan dan thay thế các phương thức quản lý làm việctheo cách truyền thống, quản lý theo cách ghi chép giảm đi một số khối lượng côngviệc và thời gian không lồ cho các đơn vị Vậy các trường học hiện nay đang quản lýhọc sinh bang cach nao? Lam sao dé ngăn chặn tình trạng sinh viên di học hộ, điểm
danh hộ?
Dé giải quyét van dé đó trong những năm năm gân đây, các nghiên cứu về xây dựng
hệ thống điểm danh thông minh đang nhận được nhiều sự quan tâm, nghiên cứu cũng
Trang 20đạt được nhiều thành quả và đang trở thành một trong những xu hướng phát triển củathành phố thông minh.
Trí tuệ nhân tạo (AI) đang là xu hướng phát triển có nhiều tiềm năng trong lĩnh vực
công nghệ thông tin, nam giữ vai trò chủ đạo trong dòng chảy công nghệ hiện đại vớinhiều ứng dụng trong mọi lĩnh vực của đời sống xã hội như trợ lý ảo, nhà thôngminh, xe tự lái, các hệ thống nhận diện, Nhận diện khuôn mặt là một lĩnh vực
nghiên cứu của ngành thị giác máy tính, và cũng được xem là một lĩnh vực nghiên
cứu của nganh sinh trắc học tương tự như nhận diện vân tay, hay nhận dạng mong
mat.
Chúng tôi nhận thấy việc điểm danh sinh viên vào các buổi hoc thường tốn nhiềuthời gian vì người điểm danh cần gọi tên, điểm mặt từng bạn trong lớp học Đối với
những lớp học có từ 50 sinh viên trở lên thì công việc này cảng khó khăn hơn vi có
thé xảy ra trường hợp gian lận trong điểm danh (điểm danh hộ) Trong đề tài này,chúng tôi nghiên cứu về nhận điện khuôn mặt băng thuật toán học sâu Chúng tôi đãphân tích phương pháp đề xuất với các phương pháp khác Hệ thống điểm danh sinhviên băng nhận dạng khuôn mặt giúp cho việc diém danh trở nên nhanh chóng và dédàng hơn, khắc phục nhưng khuyết điểm, hạn chế của việc điểm danh truyền thống
1.2.2 Mục tiêu hướng đến của đề tài
Trong đề tài này, chúng tôi đề xuất xây dựng hệ thống điểm danh sinh viên dựa cáctrên thuật toán trí tuệ nhân tạo Hệ thống gồm thiết bị có tích hợp camera cho phépphát hiện và tự động chụp ảnh, hệ thống web server quản tri tập trung va đặt biệt làcác thuật toán Machine Learning và Deep Learning điều phối hoạt động, Ứng dụngtrên thiết bị di động android cung cấp giao điện cho người dùng và web quản trị chophép quản lý dit liệu người dùng Điểm nổi bật của hệ thống là khả năng tự động
Trang 21điểm danh dựa trên khuôn mặt của sinh viên Cụ thé là sử dụng thuật toán AI đểnhân diện khuôn mặt của sinh viên từ hình ảnh được cung cấp từ thiết bị chụp ảnh sovới dữ liệu hình ảnh được đăng ký trước đó Bên cạnh đó hệ thống còn cung cấp cácchức năng khác cho phép người dùng dễ dang theo dõi thông tin điểm danh cũng như
là tong hợp và quan lý thông tin điểm danh theo buổi học và theo từng môn học một
cách thuận tiện.
1.3 Đối tượng nghiên cứu và giới hạn của đề tài
1.3.1 Đối tượng nghiên cứu
Trong đề tài này, nhóm tác giả sẽ nghiên cứu:
e Mô hình triển khai ứng dụng IoT hoàn thiện
e Các thiết bi phan cứng bao gồm các bo mach và cảm biến dé xây dựng hệ thống
1.3.2 Giới hạn của đề tài
Trong dé tài này, nhóm đề xuất giải pháp xây dựng hệ thống điểm danh không chạmvới IoT hoàn thiện từ thiết bi phần cứng đến xây dựng phần mềm quản lý và các thuậttoán trí tuệ nhân tạo Với một phạm bị rộng như thế nên những hạn chế và giới hạn làđiều không thể tránh khỏi Với mức độ sinh viên cũng như là thời gian thực hiện khóa
Trang 22luận tôt nghiệp này có giới hạn, nên đê tài của nhóm chỉ giới hạn trong một sô phạm
VI sau:
e Vétong quan mô hình triển khai: Dé tài triển khai ứng dụng IoT hoàn thiện
Những mục tiêu chính của đề tài là đề xuất giải pháp nên nhóm chỉ triển khai môhình với chỉ gồm một thiết bị điểm danh
e Về thuật toán dự nhận diện khuôn mặt: Do những khó khăn về việc triển khai
và thu thập dữ liệu Đề tài sử dụng thuật toán có sẵn đề áp dụng cho hệ thống
điểm danh.
se Véthiét bị: Xây dựng bộ thiết bị gồm điện thoại android, thiết bị nhúng có tích
hợp camera Những mục tiêu chính của đề tài là đề xuất giải pháp nên thiết bịchỉ dừng lại ở mức demo, trực quan hóa cho các giải pháp đề xuất nên sẽ còn
tồn tại van dé về tính ôn định, tính chính xác của thiết bị
e Vé ứng dụng di động và web: Ung dụng trên thiết bị di động và web hoàn
thiện về mặt chức năng và giao điện đảm bảo cho người dùng dễ dàng sử dụng
1.4 Cấu trúc của khóa luận
Ngoài phần mục lục, danh mục các từ viết tắt, danh mục hình ảnh và tài liệu tham
khảo, khóa luận được bố cục thành 5 chương sau:
Chương I: Giới thiệu
Chương này trình bày tông quan và sự phát triên của IoT Phát biêu vân đê và mục
tiêu của nhóm mong muôn hướng đên dé giải quyết van dé đó Cách thức tiép cận và
đôi tượng nghiên cứu và giới hạn của đê tài cũng được làm rõ tại chương này.
Chương 2: Các nghiên cứu và công nghệ liên quan
Trang 23Chương này tập trung về việc trình bày tình hình nghiên cứu của các công trình liênquan đến đề tài này và đưa ra những cơ sở lý thuyết, những công nghệ được sử dụngtrong đề tài.
Chương 3: Phân tích và thiết kế hệ thống
Chương này trình bày các nội dung chỉ tiết về hướng tiếp cận, các phương pháp, cáchthức thực hiện các thành phan chính trong hệ thống Phân tích thiết kế, trình bày vềluồng xử lý của hệ thống, mô tả các thành phần chức năng và đưa ra hướng tiếp cận
của các thuật toán.
Chương 4: Hiện thực ứng dụng
Chương nay trình bay chi tiết về các phương pháp hiện thực, triển khai, hiện thực các
thành phần chính của hệ thống thống như cách xây dựng thiết bị phần cứng, xây
dựng các mô hình dự đoán, cuối cùng là kiểm tra kết quả thực thi và đánh giá
Chương 5: Tổng kết và hướng phát triển
Chương này tổng kết lại toàn bộ những kết quả đã đạt được và chưa đạt được trong
khóa luận này Từ đó làm cơ sở dé đề xuất các hướng phát triển của dé tài có thể tiếp
tục thực hiện trong tương lai.
Trang 24CHƯƠNG 2 CÁC NGHIÊN CỨU VÀ CÔNG NGHỆ LIÊN QUAN
2.1 Tình hình nghiên cứu của các công trình liên quan
Trong những năm gan đây, đã có rat nhiều nghiên cứu về việc xây dựng một hệ thong điểm danh thông minh ứng dụng trong thành phố thông minh từ đơn giản đến phức
tạp.
Một số hệ thống liên quan về việc áp dụng các phương pháp và nguyên tắc khác nhau để giám sát việc đi học của sinh viên một cách hiệu quả Trong [4], một hệ thống quản lý điểm danh dựa trên máy tính nhúng đã được đề xuất Hệ thống cung
cấp một thẻ điện tử và đầu đọc thẻ được kết nói đề giao tiếp với hệ thống máy tính
Các giải pháp điểm danh khác có thê kế đến là hệ thống điểm danh sinh viên dựa trên
RFID và hệ thống điểm danh dựa trên GSM-GPRS Hệ thống điểm danh dựa trên
Trang 25điểm danh có thê không được thực hiện Vấn đề với hệ thống dựa trên RFID [7] làsinh viên cần mang theo thẻ RFID và cũng cần lắp đặt thiết bị đọc thẻ RFID.
Từ kết quả của những nghiên cứu đã tìm hiểu được, trong đề xuất xây dựng hệ thống
của chúng tôi quyết định sử dụng nhận diện khuôn mặt để điểm danh tự động Khuôn
mặt là yếu tố đặc trưng và dé nhận biết của mỗi cá nhân Nó cho phép sinh viên tiếnhành điểm danh một cách dé dang và khắc phục được các lỗi liên quan đến hệ thốngđiểm danh sinh viên Hệ thống được đề xuất cung cấp giải pháp cho các vấn đề điểmdanh của sinh viên thông qua việc sử dụng phần mềm quản lý điểm danh thông qua
hình ảnh và nhận dạng ký tự quang học Dữ liệu của sinh viên (mã sinh viên,
email, ) được trích xuất từ thẻ sinh viên thông qua nhận dạng ký tự quang học và
được lưu vào cơ sở dữ liệu Sinh viên nhận thông tin tài khoản thông qua email được
trích xuất từ thẻ sinh viên Đề tiến hành điểm danh thiết bị chụp ảnh và ứng dụng diđộng kết nối thời gian thực thông qua mã QR trên thiết bị chụp ảnh, thiết bị sẽ phát
hiện khuôn mặt và chụp ảnh tự động sau đó hình ảnh sẽ được máy chủ xữ lý nhận
diện lưu vào cơ sở dữ liệu dựa trên thông tin mà thiết bị di động cung cấp (mã mônhọc ,ngay điểm danh ) Cuối cùng sinh viên xác nhận điểm danh bằng cách vàoứng dụng điểm danh và chọn xác nhận dựa trên hình ảnh đã được thiết bị điểm danh
chụp trước đó Giải thích chỉ tiết về hệ thống đề xuất của chúng tôi sẽ được trình bày
ở Chương 3.
2.2 Cơ sở lý thuyết và hướng tiếp cận của đề tài
2.2.1 RESTful Web Service
REST là viết tắt của Representational State Transfer Giải thích đơn giản, REST làmột loạt hướng dẫn và dạng cấu trúc dùng cho việc chuyển đổi dữ liệu Thôngthường, REST hay được dùng cho ứng dụng web, nhưng cũng có thê làm việc được
Trang 26với dữ liệu phần mềm.
API là viết tắt của Application Programming Interface, phương thức kết nối với các
thư viện và ứng dụng khác.
Nhìn chung, [8]RESTful Web Services là những web service đi theo cầu trúc REST.
RESTful Web Service tuân thủ 4 nguyên tắc thiết kế cơ bản sau:
e Sử dụng các phương thức HTTP một cách rõ rang
e Phi trạng thái
e_ Hiển thị cu trúc thư mục như các URIs
© Truyền tải JSON, XML hoặc cả hai.
2.2.2 Bộ ML dành cho Firebase
ML Kit là một SDK di động mang kiến thức chuyên môn về máy học của Google
cho các ứng dụng Android và iOS trong một gói mạnh mẽ nhưng dễ sử dụng Cho di ban là người mới hay đã có kinh nghiệm về học máy, bạn có thé triển khai chức năng mình cần chỉ trong một vài dòng mã Không cần phải có kiến thức sâu về mạng nơ-
ron hoặc tối ưu hóa mô hình dé bắt đầu Mặt khác, nếu ban là một nhà phát triển ML
có kinh nghiệm, ML Kit cung cấp các API tiện lợi giúp bạn sử dụng các mô hình TensorFlow Lite tùy chỉnh trong các ứng dụng dành cho thiết bị di động của mình.
ML Kit đi kèm với một bộ API sẵn sàng sử dụng cho các trường hợp sử dụng di
động phổ biến: nhận dạng văn bản, phát hiện khuôn mặt, nhận dạng mốc, quét mã
vạch, dán nhãn hình ảnh và xác định ngôn ngữ của văn bản.
Trang 27Vision , TensorFlow Lite, và API Android Neural Networks với nhau trong một
SQLite engine không phải là một quy trình độc lập (standalone process) như các cơ
sở dữ liệu khác, bạn có thể liên kết nó một cách tĩnh hoặc động tùy theo yêu cầu của
bạn với ứng dụng của bạn SQLite truy cập trực tiếp các file lưu trữ (storage files)
của nó.
Do sự phổ biến, quen thuộc và sử dụng mã nguồn mở của SQLite nên nhóm quyết
định chọn SQLite làm hệ quản trị CSDL cho hệ thống.
Trang 282.2.4 Android Studio
Một phần mềm bao gồm các bộ công cụ khác nhau ding dé phát triển ứng dụng chạy
trên thiết bị sử dụng hệ điều hành Android như các loại điện thoại smartphone, các
tablet Android Studio được đóng gói với một bộ code editor, debugger, các công
cụ performance tool và một hệ thống build/deploy (trong đó có trình giả lập
simulator để giả lập môi trường của thiết bị điện thoại hoặc trên máy tính) cho phép
các lập trình viên có thể nhanh chóng phát triển các ứng dụng từ đơn giản tới phức
tạp.
2.2.5 Pycharm
Pycharm là một nền tảng kết kết hợp được JetBrains phát triển như một IDE (Môi
trường phát triển tích hợp) để phát triển các ứng dụng cho lập trình trong Python Một số ứng dụng lớn như Tweeter, Facebook, Amazon và Pinterest sử dụng Pycharm
để làm IDE Python Pycharm có thé chạy trên Windows, Linux, hoặc Mac OS.
Ngoài ra, nó cũng chứa các Mô dun và các gói giúp các lập trình viên phat triển phần mềm bằng Python trong thời gian ngắn với ít công sức hơn Hơn nữa, nó cũng có khả
năng tùy chỉnh theo yêu cầu của nhà phát triển.
2.2.6 Git
Công cụ giúp quan ly source code tổ chức theo dang dữ liệu phân tán, giúp đồng bộ
source code của team lên một server, hỗ trợ các thao tác kiểm tra source code trong
quá trình làm việc Một số câu lệnh của Git thường dùng như: git add, git commit, git
push, git rebase
Trang 29Nó là 1 framework với đầy đủ các thư viện, module hỗ trợ các web-developer.Django sử dụng mô hình MVC và được phát triển bởi Django Software Foundation(DSF một tô chức phi lợi nhuận độc lập) Mục tiêu chính của Django là đơn giản hóa
việc tạo các website phức tạp có sử dụng cơ sở dữ liệu Django tập trung vao tính
năng “có thể tái sử dụng” và “có thê tự chạy” của các component, tính năng phát triểnnhanh, không làm lại những gi đã làm Một số website phổ biến được xây dựng từ
Django là Pinterest, Instagram, Mozilla, và Bitbucket.
2.2.8 Java
Java là ngôn ngữ lập trình hướng đối tượng (OOP), đa mục đích và độc lập nềntảng Thay vì biên dịch mã nguồn thành mã máy trên nền tang cụ thé, code Java
được biên dịch thành bytecode-một định dạng trung gian Bytecode sau đó sẽ
được chạy bởi môi trường thực thi (runtime environment).
Nói cách khác, code Java “viết một lần, chạy mọi nơi” Nó sẽ làm việc “lýtưởng” trên bất kỳ thiết bị chạy hệ điều hành nào, miễn là được cài đặt Java
Runtime Environment (JRE).
Ngôn ngữ Java được thiết kế boi James Gosling và đồng nghiệp tai SunMicrosystems năm 1991 Sau này, Oracle mua lại Sun Microsystems và tiếp quancông nghệ Java với cam kết “không ngừng thúc đây một cộng đồng năng động và
minh bạch.”
2.2.9 Python
Python là ngôn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, được tạo ra bởiGuido van Rossum Nó dé dàng dé tìm hiểu và đang nổi lên như một trong nhữngngôn ngữ lập trình nhập môn tốt nhất cho người lần đầu tiếp xúc với ngôn ngữ lập
Trang 30trình Python hoàn toàn tạo kiểu động và sử dụng cơ chế cấp phát bộ nhớ tự động.Python có cấu trúc đữ liệu cấp cao mạnh mẽ và cách tiếp cận đơn giản nhưng hiệuquả đối với lập trình hướng đối tượng Cú pháp lệnh của Python là điểm cộng vôcùng lớn vi sự rõ ràng, dé hiểu và cách gõ linh động làm cho nó nhanh chóng trởthành một ngôn ngữ lý tưởng dé viết script và phát triển ứng dụng trong nhiều lĩnhvực, ở hầu hết các nền tảng.
2.2.10 Docker — Công nghệ triển khai Server
Docker: Công nghệ mới hiện nay được rất nhiều người sử dụng do dé dàng triểnkhai, tính tiện lợi nhanh chóng, tiết kiệm resource, hệ thống có mức độ tự động mở
rộng cao hon,dé dang automate (tự động hóa) việc quản lý các docker container
Thấy được những điểm mạnh trên của Docker nhóm tác giả đã quyết định ding côngnghệ trên đề trién khai Server
Sử dụng một số công nghệ docker dé triển khai trên server :
- Docker: dùng dé build docker container với Dockerfile cấu hình tương ứng
với server ở may local, khi build xong sử dụng lệnh “push” container “Docker Hub” với image tương ứng Sau đó SSH va địa chi IP của Virtual Machine Ubutu 18.04 trên cloud dung lệnh “pull” docker image tương ứng.
- Docker Hub là một “github for docker images” Trên “Docker Hub” có hang
ngàn public images được tao bởi cộng đồng cho phép dé dàng tim thay những image
bạn cân hoặc có thé sử dung image cua ban.
- Docker-compose: file cau hinh dùng để định nghĩa, kết nối các services,đồng thời chạy nhiều container trên ứng dụng Nó cũng có thể giúp tự động tải cácimage chưa có trong file câu hình “docker-compose.yml”
Trang 312.2.11 Mô hình xử lý dữ liệu tại hệ thống máy chủ
>,
«+ Artificial Intelligence
Trí tuệ nhân tao hay trí thông minh nhân tao (Artificial Intelligence - viết tắt là AI) là
một ngành thuộc lĩnh vực khoa học máy tính (Computer science) Công nghệ công nghệ AI là công nghệ mô phỏng các quá trình suy nghĩ và học tập của con người cho
máy móc, đặc biệt là các hệ thống máy tính Các quá trình này bao gồm việc học tập
(thu thập thông tin và các quy tắc sử dụng thông tin), lập luận (sử dụng các quy tắc
dé đạt được kết luận gần đúng hoặc xác định) và tự sửa lỗi [16]
*,
s* Machine Learning
Học máy là một lĩnh vực của trí tuệ nhân tao liên quan đến việc phát triển các kỹthuật cho phép các máy tính có thể học Cu thé hơn, học máy là một phương pháp détạo ra các chương trình máy tính bằng việc phân tích các tập dữ liệu Học máy có liênquan lớn đến thống kê, vì cả hai lĩnh vực đều nghiên cứu việc phân tích dữ liệu,nhưng khác với thống kê, học máy tập trung vào sự phức tạp của các giải thuật trong
việc thực thi tính toán.
>,
«+ Deep learning
Deep learning duoc bat nguồn từ thuật toán Neural được lấy cảm hứng từ hiểu biết
về sinh học của bộ não loài người — sự liên kết giữa các noron network vốn xuất phát
chỉ là một ngành nhỏ của machine learning Deep Learning là một chi của ngành máy
học dựa trên một tập hợp các thuật toán dé cố găng mô hình dữ liệu trừu tượng hóa ởmức cao bằng cách sử dụng nhiều lớp xử lý với cấu trúc phức tạp, hoặc bằng cáchkhác bao gồm nhiều biến đổi phi tuyến
Trang 32Được xây dung dựa trên thư viện Dlib được xây dựng bằng Deep Learning Với
ngưỡng khoảng cách 0,6 mô hình dlib đạt độ chính xác 99,38% trên tiêu chuẩn nhận
dạng khuôn mặt LFW tiêu chuẩn, đặt nó trong số các thuật toán tốt nhất để nhận
dạng khuôn mặt.
Dlib là một bộ công cụ C ++ hiện đại chứa các thuật toán học máy vả các công cụ dé
tạo phan mềm phức tạp trong C ++ dé giải quyết các van đề trong thé giới thực Nó
được sử dụng trong cả ngành công nghiệp và học thuật trong nhiều lĩnh vực bao gồmrobot, thiết bị nhúng, điện thoại di động và môi trường máy tính hiệu suất cao lớn.Dlib mã nguồn mở cho phép bạn sử dụng nó trong bat kỳ ứng dung nào, miễn phí
Điều thú vị là mô hình Dlib không được thiết kế bởi một nhóm nghiên cứu Nó được
giới thiệu bởi Davis E King, nhà phát triển chính của thư viện xử lý ảnh Dlib
Công cụ nhận dạng khuôn mặt của Dlib ánh xạ hình ảnh khuôn mặt người vào không
gian vectơ 128 chiêu, nơi hình ảnh của những người giông hệt nhau ở gân nhau va
Trang 33hình ảnh của những người khác nhau ở xa nhau Do đó, dlib thực hiện nhận dạng
khuôn mặt bằng cách ánh xạ các khuôn mặt vào không gian 128d và sau đó kiểm tra
xem khoảng cách Euclid của chúng có đủ nhỏ hay không.
2.2.12 Thiết bị phần cứng
Sipeed Maixduino Kit K210 RISC-V Dual Core 64-Bit + Wifi BLE ESP32 AloT sử
dụng thiết kế vi xử lý mã nguồn mở RISC-V (tương tự như ARM, 8051, ) đầy mạnh
mẽ, tiết kiệm năng lượng và mới nhât hiện nay.
Sipeed Maixduino có vi điều khiển trung tâm (MCU) Kendryte K210 RISC-V DualCore 64-bit 400Mhz KPU/FPU với tốc độ xử lý đầy mạnh mẽ, mạch tích hợp màn
hình 2.4 inch TFT Display, Camera GC0328, Microphone, khe thẻ nhớ TF MicroSD,
công USB Type-C, , mach hỗ trợ các chuẩn nạp va giao tiép: High-speed UART
and JTAG interface for debugging vô cùng thích hợp với các ứng dung xử lý ảnh,
AI, IOT, mới nhất hiện nay
Sipeed Maixduino còn được tích hợp Module Wifi BLE ESP32 giúp mở rộng kết nối
Wifi + Bluetooth 4.0 cho các ứng dụng IoT.
Thông số kỹ thuật:
« CPU: Sipeed Kendryte K210 RISC-V Dual Core 64-bit 400Mhz with KPU/FPU, adjustable Powerful dual-core 64-bit open architecture-based processor
with rich community resources
¢ QVGA @60FPS/VGA @30FPS image identification
° Onboard ESP32 module support 2.4G 802.11 b/g/n and Bluetooth 4.2
° Arduino Uno form factor, Arduino compatible interface
° Onboard omnidirectional I2S digital output MEMS Microphone
Trang 3424P 0.5mm FPC connector for DVP Camera
8bit MCU LCD 24P 0.5mm FPC connector
Support self-elastic micro SD card holder
Reset and boot button, 3W DAC+PA Audio output
Just connect the USB Type-C cable to complete the download
Machine vision based on convolutional neural network
High performance microphone array processor for machine hearing
Support MaixPy IDE, Arduino IDE, OpenMV IDE, and PlatformIO IDE
Support Tiny-Yolo, Mobilenet and TensorFlow Lite for deep learning
Trang 35CHUONG 3 PHAN TÍCH VÀ THIET KE HỆ THONG
3.1 Tong quan kiến trúc hệ thống
Tổng quan về hoạt động của hệ thống được mô tả trong sơ đồ sau:
Me ML Kit
for Firebase
Hình 3 1 So đô mô tả hoạt động của hệ thống
Trong sơ đồ có 4 phần chính:
e Client: Bao gồm thiết bị chạy hệ điều hành android 5.0 trở lên, thiết bị IoT có
tên là Sipeed Maixduino Kit K210 và web quản trị Các người dùng sẽ tương tac với
nhau hoặc lấy đữ liệu thông qua web service Khi người dùng gửi yêu cầu lên thì
web service nhận thông điệp và gửi thông điệp lên co sở dữ liệu sau đó dap ứng yêu
cầu cho người dung.
e Server: Bao gồm web service Web service chứa các phương thức nhận và gửi
dữ liệu, dam bảo giao tiêp giữa các client va cơ sở đữ liệu.
Trang 36e Database: Sử dụng hệ quản tri cơ sở dữ liệu SQLite Cơ sở dir liệu được cập
nhật thay đổi liên tục
e ML kit for Firebase: Cho phép thiết bị nhận dạng chữ ký quang học và tríchxuất thông tin từ thẻ sinh viên
Mô tả hoạt động các module trong hệ thống
Hệ thống được đề xuất cung cấp giải pháp cho các vấn đề điểm danh của sinh viênthông qua việc sử dụng phần mềm quản lý điểm danh thông qua hình ảnh và nhận
dang ký tự quang học Dữ liệu của sinh viên (mã sinh viên, email, ) được trích xuất
từ thẻ sinh viên thông qua nhận dạng ký tự quang học và được lưu vào cơ sở đữ liệu.
Sinh viên nhận thông tin tài khoản thông qua email được trích xuất từ thẻ sinh viên
Đề tiến hành điểm danh thiết bị chụp ảnh và ứng dung di động kết nối thời gian thựcthông qua mã QR trên thiết bị chụp ảnh, thiết bị sẻ phát hiện khuôn mặt và chụp ảnh
tự động sau đó hình ảnh sẻ được máy chủ xử lý nhận diện lưu vào cơ sở dữ liệu dựa
trên thông tin mà thiết bị di động cung cấp (mã môn học ,ngày điểm danh, ) Cuối
cùng sinh viên xác nhận điểm danh bang cách vào ứng dụng điểm danh và chọn xácnhận dựa trên hình ảnh đã được thiết bị điểm danh chụp trước đó
SQLite
- SQLite là một hệ quản tri co sở dữ liệu hay còn gọi là hệ thống cơ sở dữ liệu
quan hệ nhỏ gọn, khác với các hệ quan trị khác như MySQL, SQL Server, Ocracle,
PostgreSQL SQLite là một thư viện phần mềm mà triển khai một SQL DatabaseEngine truyền thống, không cần mô hình client-server nên rất nhỏ gọn
Web service
- Web service được dùng làm admin page giúp kiểm tra va thay đổi danh sách
sinh viên đăng ký lớp và những thứ liên quan Được phát triển bằng ngôn ngữ lập
Trang 37trình Python sử dụng Django framework có chức năng cung cấp và lưu trữ thông tinphục vu cho các máy người dùng Ưu điểm của Django framework là sử dụng ngônngữ lập trình python, django đang là giải pháp cốt lõi trong lĩnh vực IoT, hỗ trợ đa
ngôn ngữ dễ dàng mở rộng
Các chức năng của web quản trị:
« Theo dõi các bảng thống kê
e Quan lý người dùng
« Quan lý các yêu cầu được tao
¢ Quản lí danh sách sinh viên
« Quan lí danh sách giảng viên
e Quan lý danh sách môn học
e = Chỉnh sửa thông tin môn hoc
‹« Xóa thông tin môn học
e = Chỉnh sửa tài khoản
ML Kit for Firebase
- MLKit for Firebase là bộ SDK di động có kiến thức về machine learning cao
- Ung dung trên Android được viết bằng Java có sử dụng SDK ML Kit for
Firebase trong giai đoạn chụp hình thẻ sinh viên sử dung OCR trích xuất thông tinsinh viên có trên thẻ sinh viên tiến hành đăng ký tài khoản cho sinh viên
Ứng dụng trên thiết bị di động android
- — Chương trình được phát triển bằng ngôn ngữ lập trình Java sử dụng android
studio, nó cung cấp giao diện và xử lý các thông tin đầu vào dựa vào nhận dang ký tự
quang học và quét mã QR để gửi lên máy chủ xử lý Ưu điểm của ngôn ngữ lập
Trang 38trình java là một ngôn ngữ lập trình mạnh mẽ, dé hiểu, được lập trình theo hướng đốitượng nên dé bảo trì va dé phát trién.
- _ Chức năng của ứng dụng trên thiết bị di động android:
e - Đăng ky tải khoản
e Đăng nhập
e Dang xuất
e = Quên mật khẩu
e - Thay đổi mật khâu
e Xem thông tin cá nhân
e - Xem thông tin khóa hoc
e - Xem thông tin buôi điểm danh
e _ Tìm kiếm sinh viên điểm danh
e - Xác nhận điểm danh
e Bao cáo thông tin điểm danh sai
e - Chức năng đối với giảng viên
e Tao khóa học
e - Tạo buổi điểm danh
e _ Trích xuất thông tin điểm danh theo ngày
e _ Trích xuất thông tin điểm danh theo khóa học
e _ Thay đổi thông tin điểm danh của sinh viên
e _ Chức năng đối với sinh viên
e Tham gia khóa học
e Xem thông tin điểm danh
Thiết bị nhúng:
Trang 39Kendryte K210 RISC-V Dual Core 64-bit 400Mhz KPU/FPU với tốc độ xử lý đầy
mạnh mẽ, mạch tích hop màn hình 2.4 inch TFT Display, Camera GC0328,
Microphone, khe thẻ nhớ TF MicroSD, công USB Type-C., , mạch hỗ trợ các chuẩnnạp và giao tiếp: High-speed UART and JTAG interface for debugging vô cùng thíchhợp với các ứng dụng xử lý ảnh, AI, IOT, mới nhất hiện nay, được tích hợp ModuleWifi BLE ESP32 giúp mở rộng kết nối Wifi + Bluetooth 4.0 cho các ứng dung IoT
===MEMS microphone
Reset and BOOT À4
button ~*~ ‘a Min Sage om Audio
DAC+PA(3W)
1.25mm pitch Speaker connector
DC connector
Input:6-12V
Output:5V 1.2A
LCD Connector - “> CH552
24P MCU LCD USB TypeC port 2 Channel USB-TTL
Hinh 3 2 Thiét bi diém danh
Chức năng của thiết bi nhúng:
- — Phát hiện khuôn mặt
- Tu động chụp ảnh
Yéu câu phi chức năng:
Những yêu cầu cần thiết điện thoại android phải có để có thể sử dụng được ứng
dụng:
¢ Điện thoại có kết nối internet
« _ Điện thoại android có version lớn hơn hoặc bằng 6.0.
¢ Điện thoại phải cài đặt ứng dụng điểm danh.
Trang 40« _ Điện thoại phải cho phép sử dụng camera.
3.2 So đồ phân rã chức năng của ứng dụng
Mô hình phân rã chức năng (BFD — Business Function Diagram) là công cụ biểu
diễn việc phân rã có thứ bậc đơn giản các công việc thực hiện Mô hình cho biếtchức năng nghiệp vụ được phân cấp nhỏ dần từ trên xuống dưới của hệ thống ứng
xin ý › xem thông tin ¬—
—>| Đăng ký tài khoản SP ae Tham gia khóa hoc |———] Phát hiện khuôn mặt &—————|
xin nhà 5 xem théng tin :
—>| Bang nhap Tao Khóa học mới |&———— CácKhóahoc_ |#£——| chụp ảnh K———]
R : ` Xem thông tin
Xem thông tin cá Xem thông tin các buổi did K—] ân diệ 3
—>| : Bape Nala |<—_ đi Nhận diện hình ảnh |j&————Ìnhấn bi xí ng: các buổi điểm danh
Thay đổi mật kha Tao buổi điểm danh }¢—— sa ;
[—>| Thay đổi mật khẩu xem thông tin điểm
danh
ân mat kh Trich xuat théng tin
E—>|_ Quên mật khau điểm danh S——] Điểm danh <—
ô ễ báo cáo thông tin
Xem thông tin điểm a a
danh Ä——] điểm danh không |£——Ì