Tải bản đầy đủ (.doc) (29 trang)

ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ĐỒ ÁN CƠ SỞ ĐỀ TÀI: ỨNG DỤNG “MY VKS”

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.48 MB, 29 trang )

ĐẠI HỌC ĐÀ NẴNG
KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỒ ÁN CƠ SỞ 2
ĐỀ TÀI: ỨNG DỤNG “MY VKS”

Sinh viên thực hiện

: DƯƠNG QUỐC KHÁNH - 18IT1
HOÀNG NGỌC PHƯƠNG - 18IT1
Giảng viên hướng dẫn : TS. HUỲNH NGỌC THỌ

Đà Nẵng, tháng 8 năm 2020

1


ĐẠI HỌC ĐÀ NẴNG

KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỒ ÁN CƠ SỞ 3
ĐỀ TÀI: ỨNG DỤNG MY VKS

Đà Nẵng, tháng 8 năm 2020
2


MỞ ĐẦU
Trong thời đại bùng nổ thông tin và công nghệ như hiện nay, địi hỏi cơng
tác quản lý nói chung và công tác quản lý sinh viên, quản lý việc dạy và học trong


trường học nói riêng cũng phải thay đổi dần từ sổ sách bản giấy sang bản điện tử, để
cập nhật nhanh chóng và chính xác các thông tin.
Trên thực tế, việc quản lý, điểm danh sinh viên của khoa Cơng nghệ
Thơng tin và Truyền thơng cịn mang tính thủ cơng, chưa hiệu quả
trong cơng tác quản lý. Công tác quản lý hiện nay chủ yếu được thực hiện thủ công,
mất nhiều thời gian và công sức. Sự cần thiết của một hệ thống điểm danh trực tuyến
sẽ là một lựa chọn tốt để giải quyết tình trạng hiện nay.
Vì lý do này, đề tài “ My VKS ” là đề tài mà em lựa chọn làm đồ án. Hệ thống
chương trình khi được phát triển thành cơng có thể đưa vào sử dụng trong trường.
Với sự trợ giúp của chương trình này, nhà trường có thể quản lý sinh viên một cách
dễ dàng và nhanh chóng, giảm được thời gian và công sức lao động. Sinh viên cũng
có thể cập nhật nhanh số tiết, thơng báo, hạn đồ án, bài tập,… Từ đó hỗ trợ tốt cho
việc học.
Đề tài của chúng em bao gồm 4 chương:
− Chương 1: Giới thiệu
− Chương 2: Nghiên cứu tổng quan
− Chương 3: Phân tích thiết kế hệ thống
− Chương 4: Kết luận và hướng phát triển
Nhóm thực hiện đề tài
Dương Quốc Khánh
Hoàng Ngọc Phương

3


LỜI CẢM ƠN
Chúng em xin chân thành cảm ơn sự giúp đỡ nhiệt tình của thầy giáo
Huỳnh Ngọc Thọ, người đã định hướng, hướng dẫn cũng như hỗ trợ cho chúng
em trong quá trình chuẩn bị và tiến hành để chúng em có thể hồn thành tốt đồ
án này.

Chúng em cũng xin gửi lời cảm ơn tới các thầy cô giáo, giảng viên trong
Khoa Công Nghệ Thông Tin và Truyền Thông – ĐHĐN đã cung cấp cho
chúng em những kiến thức cần thiết để thực hiện đồ án này.
Chúng em cũng xin gửi lời cảm ơn đến gia đình, bạn bè luôn động viên
giúp đỡ chúng em trong suốt thời gian học tập và nghiên cứu, đóng góp những
kinh nghiệm quý báu trong thời gian thực hiện đồ án này.
Kính chúc thầy cô mạnh khỏe, công tác tốt, tiếp tục giảng dạy và đào tạo
thế hệ trẻ thành công.
Xin chân thành cảm ơn !

4


NHẬN XÉT
(Của giảng viên hướng dẫn)
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
…………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………

……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………

5


MỤC LỤC
Trang
MỞ ĐẦU...............................................................................................................3
LỜI CẢM ƠN........................................................................................................4
NHẬN XÉT...........................................................................................................5
DANH MỤC CÁC BẢNG.....................................................................................7
DANH MỤC CÁC HÌNH......................................................................................8
Chương 1 GIỚI THIỆU.......................................................................................9
1.1 Tổng quan...........................................................................................................9

1.2 Phương pháp, kết quả.........................................................................................9
Chương 2 NGHIÊN CỨU TỔNG QUAN.........................................................10
2.1 Các thành phần.................................................................................................10
2.1.1 Nhận diện khuôn mặt.................................................................................10
2.1.2 Công cụ hỗ trợ...........................................................................................10
2.1.3 Triển khai UI/UX và Back-end..................................................................10
2.2 Hạn chế, tồn tại.................................................................................................10
Chương 3 PHÂN TÍCH THIẾT KẾ HỆ THỐNG............................................11
3.1 Mơ hình tổng quan của đề tài............................................................................11
3.1.1 Điểm danh bằng nhận diện khuôn mặt.......................................................11
3.1.2 Các công cụ hỗ trợ cho sinh viên...............................................................11
3.2 Thiết kế chi tiết.................................................................................................11
3.2.1 Xác định tác nhân( Actor)..........................................................................11
3.2.2 Mơ hình hóa hành vi..................................................................................14
3.2.3 Mơ hình hoạt động.....................................................................................16
3.2.4 Biểu đồ lớp................................................................................................18
Chương 4 TRIỂN KHAI XÂY DỰNG..............................................................19
4.1 Phần công cụ hỗ trợ..........................................................................................19
4.1.1 Phần trang chủ...........................................................................................19
4.1.2 Phần thơng báo..........................................................................................20
4.1.3 Phần thời khóa biểu...................................................................................21
4.1.4 Phần cơng việc...........................................................................................22
4.2 Phần đăng nhập................................................................................................24
4.2.1 Trước khi đăng nhập..................................................................................24
4.2.2 Sau khi đăng nhập.....................................................................................25
4.3 Phần điểm danh................................................................................................26
Chương 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.......................................28
5.1 Kết luận............................................................................................................28
5.2 Hướng phát triển...............................................................................................28
Chương 6 TÀI LIỆU THAM KHẢO................................................................29


6


DANH MỤC CÁC BẢNG
Trang
Bảng 1: Đặc tả Usecase đăng nhập....................................................................12
Bảng 2: Đặc tả usecase đăng xuất.....................................................................12
Bảng 3: Đặc tả usecase xem thông báo.............................................................12
Bảng 4: Đặc tả usecase điểm danh....................................................................12
Bảng 5: Đặc tả usecase xem lịch học hôm nay..................................................13
Bảng 6: Đặc tả usecase xem công việc...............................................................13
Bảng 7: Đặc tả usecase thêm lời nhắc...............................................................13
Bảng 8: Đặc tả usecase xem thời khóa biểu......................................................14

7


DANH MỤC HÌNH
Trang
Hình 1: Sơ đồ Usecase cho sinh viên................................................................11
Hình 2: Sơ đồ tuần tự chức năng đăng nhập....................................................14
Hình 3: Sơ đồ tuần tự chức năng điểm danh....................................................15
Hình 4: Sơ đồ hoạt động đăng nhập..................................................................16
Hình 5: Sơ đồ hoạt động điểm danh..................................................................17
Hình 6: Biểu đồ lớp............................................................................................18
Hình 7: Giao diện trang chủ..............................................................................19
Hình 8: Giao diện thông báo..............................................................................20
Hình 9: Giao diện quét sản phẩm......................................................................21
Hình 10: Giao diện công việc.............................................................................22

Hình 11: Giao diện thêm công việc....................................................................23
Hình 12: Giao diện trước khi đăng nhập..........................................................24
Hình 13: Giao diện sau khi đăng nhập.............................................................25
Hình 14: Giao diện quét khuôn mặt..................................................................26
Hình 15: Giao diện sau khi điểm danh thanh công..........................................27

8


Chương 1

GIỚI THIỆU

1.1 Tổng quan
Hiện nay, việc quản lý quá trình học tập của sinh viên tại các trường đại học
nói chung và tại khoa Cơng nghệ Thơng tin và Truyền thơng nói riêng đều được
thực hiện một cách thủ công, gây mất thời gian và công sức. Hàng ngày, mỗi khi
lên lớp, giảng viên sử dụng danh sách điểm danh trên máy để thực hiện việc điểm
danh sinh viên. Việc này gây mất thời gian của giảng viên. Bên cạnh đó sinh viên
cũng chưa có một cơng cụ hỗ trợ đáp ứng các yêu cầu như nhắc lịch học, xem
thông báo,..
Trên hết công nghệ nhận diện khuôn mặt cũng đang phát triển mạnh trong thời
đại hiện nay. Qua quá trình tìm hiểu và phân tích, việc cần xây dựng một ứng dụng
hỗ trợ sinh viên tích hợp điểm danh online bằng nhận diện khuôn mặt là cần thiết.
Hệ thống này sẽ khắc phục được những khó khắn đang gặp phải nhằm nâng cao
tính hiệu quả trong cơng tác quản lý. Và đây là lí do mà nhóm thực hiện lựa chọn
đề tài này

1.2 Phương pháp, kết quả
Ứng dụng điểm danh thông qua nhận diện khuôn mặt kết hợp hệ thống hỗ trợ

sinh viên sử dụng các phương pháp sau:
− Ứng dụng công nghệ nhận diện khuôn mặt trong điểm danh.
− Sử dụng các API thông báo để xây dựng hệ thống hỗ trợ.
− Thực hiện việc điểm danh thông qua giao diện nhận diện khuôn mặt.
− Quản lý và lưu trữ thông tin thông qua database.
Kết quả: Xây dựng được ứng dụng hỗ trợ sinh viên tích hợp điểm danh bằng nhận
diện khuôn mặt “My VKS”.

9


Chương 2

NGHIÊN CỨU TỔNG QUAN

2.1 Các thành phần
2.1.1 Nhận diện khn mặt
Nhận dạng khn mặt là một khái niệm cịn khá mới mẻ, nó mới chỉ được
phát triển vào những năm 60 của thế kỷ trước. Khi đó, người ta phải dùng tới
những phương pháp tính tốn thủ cơng để xác định vị trí, khoảng cách và các bộ
phận trên khuôn mặt. Về sau, vào cuối thập niên 80, kỹ thuật nhận diện khuôn
mặt dần được cải thiện khi M. Kirby và L. Sirovich phát triển phương pháp tìm
mặt riêng (eigenface) sử dụng phương pháp phân tích thành phần chính (PCA),
một cột mốc mới trong ngành công nghệ nhận diện khn mặt.
Q trình nhận diện khn mặt trải qua các bước:
− Tìm cách xác định vị trí khn mặt trong ảnh hoặc video.
− Trích xuất các đặc điểm khn mặt thành embedding vector.
− So sánh với dữ liệu đã lưu trong cơ sở dữ liệu dể tìm ra dữ liệu phù hợp.
Trong dự án này hệ thống nhận diện khuôn mặt sử dụng các thành phần sau:
− Sử dụng API facenet[1] của David Sandberg để thực hiện xác định vị trí

khn mặt trong ảnh hoặc video, để trích xuất các đặc điểm khuôn mặt
và so sánh với cơ sở dữ liệu.
− Sử dụng bộ dataset VGGFace2[2] để tham chiếu cho q trình nhận diện
và trích xuất dữ liệu khn mặt.
2.1.2 Công cụ hỗ trợ
Các công cụ hỗ trợ sinh viên bao gồm: nhắc lịch học, xem thời khóa biểu,
hơm nay học gì, lời nhắc khi có hạn bài tập, đồ án, tự lập công việc cần thực hiện.
Trong dự án này sử dụng các thành phần sau:
− Sử dụng API thơng báo của nhà trường.
− Sử dụng API thời khóa biểu, API lịch học trong ngày.
2.1.3 Triển khai UI/UX và Back-end
UI là viết tắt của từ User Interface có nghĩa là giao diện người dùng. UX là viết
tắt của từ User Experience có nghĩa là trải nghiệm người dùng.
Trong dự án này sử dụng các công cụ sau để tạo và thiết kế UI/UX:
− Android studio.
Back-end bao gồm quá trình xử lý các dữ liệu request ở phía server và quá trình
nhào nặn trên trình ứng dụng server (application) để tạo ra gói trả lời response gửi
trả về cho client.
Trong dự án này sử dụng các công cụ sau để tạo và thiết kế Back-end:
− Phần xử lý nhận diện khuôn mặt:
− Phần xử lý API:

2.2 Hạn chế, tồn tại
Về nhận diện khn mặt thì có những hạn chế sau:
− Sử dụng ngôn ngữ JavaScript nên tốc độ xử lý còn hạn chế.
10


Chương 3


PHÂN TÍCH THIẾT KẾ HỆ THỐNG

3.1 Mơ hình tổng quan của đề tài
3.1.1 Điểm danh bằng nhận diện khuôn mặt
Từ dữ liệu khuôn mặt, hệ thống sẽ truy xuất đến cơ sở dữ liệu, tìm và đối
chiếu sinh viên phù hợp sau đó trả về kết quả để tiến hành điểm danh.
3.1.2 Các công cụ hỗ trợ cho sinh viên
Ứng dụng bao gồm các cơng cụ giúp ích cho sinh viên trong q trình học tập
như: Xem thơng báo của trường, xem thời khóa biểu, xem lịch học trng ngày, các
công việc cần làm cũng như đặt nhắc nhở cho các công việc mới.

3.2 Thiết kế chi tiết
3.2.1 Xác định tác nhân( Actor)
Ứng dụng dánh cho sinh viên sử dụng:
Sơ đồ Usecase chi tiết dành cho sinh viên:

Hình 1: Sơ đồ Usecase cho sinh viên

11


Đặc tả uscase dành cho sinh viên:

Tên Use Case
Actor
Mô tả
Dữ liệu vào
Kết quả
Quy trình xử lý


Đăng nhập
Sinh viên
Đăng nhập bằng tài khoản gmail của khoa
Tài khoản gmail của khoa
Đăng nhập thành công
Sau khi nhập đuungs tài khoản gmail của khoa sinh viên
sẽ được đăng nhập vào ứng dụng
Bảng 1: Đặc tả Usecase đăng nhập

Tên Use Case
Actor
Mô tả
Dữ liệu vào
Kết quả
Quy trình xử lý

Đăng xuất
Sinh viên
Đăng xuất
Yêu cầu đăng xuất
Đăng xuất khỏi ứng dụng
Sau khi gửi yêu cầu đăng xuất hệ thống sẽ chấp nhận yêu
cầu, sinh viên sẽ được đăng xuất ra khỏi hệ thống.
Bảng 2: Đặc tả usecase đăng xuất

Tên Use Case
Actor
Mơ tả
Dữ liệu vào
Kết quả

Quy trình xử lý

Xem thông báo
Sinh viên
Xem thông báo của trường
Yêu cầu xem thông báo
Danh sách thông báo
Sau khi vào hệ thống ở mục thông báo sẽ hiển thị thông
báo của trường.
Bảng 3: Đặc tả usecase xem thông báo

Tên Use Case
Actor
Mô tả
Dữ liệu vào
Kết quả
Quy trình xử lý

Điểm danh
Sinh viên
Điểm danh thơng qua nhận diện khuôn mặt
Thông tin khuôn mặt sinh viên
Điểm danh thành cơng
Sau khi qt mặt thơng qua camera.
Thơng tin đó sẽ được so sánh vs dữ liệu đã train sẵn.
Sau đó trả về kết quả là điểm danh thành công
Bảng 4: Đặc tả usecase điểm danh

12



Tên Use Case
Actor
Mơ tả
Dữ liệu vào
Kết quả
Quy trình xử lý

Xem lịch học hơm nay
Sinh viên
Xem hơm nay có những mơn học nào
Yêu cầu xem lịch học
Danh sách lịch học hôm nay
Sau khi vào hệ thống ở mục hôm nay học gì sẽ hiển thị
lịch học hơm nay.

Bảng 5: Đặc tả usecase xem lịch học hôm nay

Tên Use Case
Actor
Mô tả
Dữ liệu vào
Kết quả
Quy trình xử lý

Xem cơng việc
Sinh viên
Xem hơm nay có những cơng việc nào
u cầu xem cơng việc
Danh sách công viêc hôm nay

Sau khi vào hệ thống ở mục công việc sẽ hiển thị các công
việc cần làm.

Bảng 6: Đặc tả usecase xem công việc

Tên Use Case
Actor
Mô tả
Dữ liệu vào
Kết quả
Quy trình xử lý

Thêm lời nhắc
Sinh viên
Thêm mới lời nhắc
Yêu cầu thêm mới lời nhắc
Thêm mới lời nhắc thành công
Yêu cầu thêm lời nhắc, hệ thống yêu cầu thông tin cần
thiết, sau khi có thơng tin sẽ thêm và cơ sỡ dữ liệu.

Bảng 7: Đặc tả usecase thêm lời nhắc

13


Tên Use Case
Actor
Mơ tả
Dữ liệu vào
Kết quả

Quy trình xử lý

Xem thời khóa biểu
Sinh viên
Xem thời kháo biểu
Yêu cầu xem thời kháo biểu
Hiển thị thời khóa biểu
Sau khi vào hệ thống ở phần thời khóa biể sẽ hiển thị thời
khóa biểu của sinh viên.

Bảng 8: Đặc tả usecase xem thời khóa biểu
3.2.2 Mơ hình hóa hành vi
Mơ hình tuần tự:

Hình 2: Sơ đồ tuần tự chức năng đăng nhập
Mô tả chi tiết:
− Đầu tiên sinh viên gửi yêu cầu đăng nhập
− Hệ thống yêu cầu thông tin gmail khoa.
− Nhân viên tiến hành nhập gmail và gửi về cho hệ thống.
− Hệ thống các thực gmail phải của khoa hay không
− Hệ thống đưa thông tin tới Database.
− Tại database thông tin sinh viên được lưu lại.
− Sau khi kiểm tra đúng tiến hành trả về cho sinh viên.

14


Hình 3: Sơ đồ tuần tự chức năng điểm danh
Mô tả chi tiết:
− Đầu tiên sinh viên gửi yêu cầu điểm danh đến hệ thống

− Hệ thống yêu cầu thông tin khuôn mặt.
− Khách hàng tiến hành quét khuôn mặt và gửi về cho hệ thống.
− Hệ thống sẽ phần tích dữ liệu khn mặt ra thành vector và gửi lên
server
− Ở server tiến hành so sánh với dữ liệu đã train sẵn và trả về model
− Sau khi có model sẽ tiến hành điểm danh.

15


3.2.3 Mô hình hoạt động

Hình 4: Sơ đồ hoạt động đăng nhập
Mơ tả q trình hoạt động chi tiết:
− Đầu tiên nhập gmail từ sinh viên đưa sang hệ thống.
− Hệ thống kiểm tra gmail có phải của khoa hay không.
− Nếu đúng trả về cho phép đăng nhập, kết thúc hoạt động.
− Nếu sai trả về không phải gmail của khoa và kết thúc hoạt động.

16


Hình 5: Sơ đồ hoạt động điểm danh
Mô tả quá trình hoạt động chi tiết:
− Đầu tiên yêu cầu điểm danh từ sinh viên đưa sang hệ thống.
− Hệ thống chấp nhận yêu cầu tiến hành quét.
− Sau khi có dữ liệu khuôn mặt sẽ chuyển sang hệ thống phân tích và
so sánh dữ liệu.
− Nếu đúng thơng báo điểm danh thành công, kết thúc hoạt động.
− Nếu sai trả về khơng tìm thấy, kết thúc hoạt động


17


3.2.4 Biểu đồ lớp

Hình 6: Biểu đồ lớp
Mô tả chung:
− ứng dụng có 3 class chính gồm:
+ Bảng user
+ Bảng notification
+ Bảng todo.
− Bảng user lưu thông tin sinh viên cùng với hành động như:
+ Đăng nhập
− Bảng notification lưu thông tin thông báo:
− Bảng todo lưu thông tin các công việc cần làm cùng với hành động
như:
+ Tạo mới công viêc

18


Chương 4
4.1

TRIỂN KHAI XÂY DỰNG
Phần công cụ hỗ trợ

4.1.1 Phần trang chủ
Giao diện trang chủ:


Hình 7: Giao diện trang chủ
Giao diện trên bao gồm phần actionbar phía trên, ở giữa là các trường để hiển thị các
mục như thông báo , hơm nay học gì , cơng việc hơm nay, phía dưới là thanh Bottom
Navigation Bar.
19


4.1.2 Phần thông báo
Giao diện thông báo:

Hình 8: Giao diện thơng báo
Giao diện thơng báo bao gồm: phía trên là thanh actionbar, chính giữa hiển thị các
thơng báo của trường phía dưới có thanh Bottom Navigation Bar.

20


4.1.3 Phần thời khóa biểu
Giao diện thời khóa biểu:

Hình 9: Giao diện quét sản phẩm
Giao diện thời khóa biểu bao gồm: phía trên là thanh actionbar, chính giữa hiển thị 2
mục, đầu tiên là các thứ trong tuần, phái dưới hiển thị các mơn học của thứ đó, phía
dưới có thanh Bottom Navigation Bar.

21


4.1.4 Phần công việc

Giao diện công việc:

Hình 10: Giao diện cơng việc
Giao diện cơng việc bao gồm: phía trên là thanh actionbar, chính giữa hiển thị các
cơng việc cần thực hiện, phía dưới có thanh Bottom Navigation Bar.

22


Giao diện thêm công việc:

Hình 11: Giao diện thêm công việc
Giao diện thêm công việc là một dialog gồ 3 mục dùng để nhập nội dung, ngày, thời
gian cần hoàn thành cơng việc đó phía dưới có 2 nút, nút thêm dùng để thêm mới, nút
hủy dùng để quay trở lại giao diện công việc.

23


4.2 Phần đăng nhập
4.2.1 Trước khi đăng nhập
Quá trình xây dựng:
− Xử lý đăng nhập:
private void signIn() {
Intent signInIntent = mGoogleSignInClient.getSignInIntent();
startActivityForResult(signInIntent, RC_SIGN_IN);
}

Kết quả:
• Giao diện trước khi đăng nhập:


Hình 12: Giao diện trước khi đăng nhập
Giao diện bao gồm: Phía trên là thanh actionbar, chính giữa là nút
đăng nhập, phía dưới là thanh bottom navigation bar
24


4.2.2 Sau khi đăng nhập
Quá trình xây dựng:
− Xử lý đăng xuất:
private void signOut() {
mGoogleSignInClient.signOut().addOnSuccessListener(aVoid -> {
prefs.edit().putBoolean("hasLogin", false).apply();
Navigation.findNavController(root).navigate(R.id.navigation_user);
});
}

Kết quả:
• Giao diện sau khi đăng nhập

Hình 13: Giao diện sau khi đăng nhập
Giao diện bao gồm: Phía trên là thanh actionbar, chính giữa là nút đăng
xuất, phía dưới là thanh bottom navigation bar
25


×