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

hệ thống điểm danh sinh viên nhân viên bằng phƣơng pháp nhận diện dấu vân tay trên thiết bị di động kết hợp gps

138 207 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

Định dạng
Số trang 138
Dung lượng 6,61 MB

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

Nội dung

Nhằm giải quyết những khó khăn trong việc điểm danh sinh viên – chấm công nhân viên hiện nay, nhóm nghiên cứu đã đề ra giải pháp là xây dựng một hệ thống phần mềm điểm danh sinh viên dựa

Trang 1

Thuộc nhóm ngành khoa học: Công nghệ thông tin

Thành phố Hồ Chí Minh, tháng 4 năm 2014

Trang 2

Thuộc nhóm ngành khoa học: Công nghệ thông tin

Sinh viên thực hiện: TRẦN THANH LONG Nam, Nữ: Nam

Dân tộc: Hoa

Lớp, khoa: lớp TH10A3, khoa Công Nghệ Thông Tin

Năm thứ: 4 /Số năm đào tạo: 4

Ngành học: Khoa học máy tính

Người hướng dẫn: TS LÊ XUÂN TRƯỜNG

Thành phố Hồ Chí Minh, tháng 4 năm 2014

Trang 3

TÓM TẮT

Để phát triển nền kinh tế bền vững thì nhân tố con người luôn đóng vai trò quyết định Vì vậy, không chỉ Việt Nam mà tất cả các nước trên thế giới đều xem giáo dục là quốc sách hàng đầu của quốc gia Giáo dục quan trọng là vậy, tuy nhiên, bỏ học, trốn tiết

từ lâu đã trở thành một thực trạng khá phổ biến ở sinh viên, do việc đến giảng đường của sinh viên là không bắt buộc như các cấp trung học cơ sở và phổ thông Do đó, để khắc phục tình trạng trên, hầu hết các trường Đại học đã và đang áp dụng việc điểm danh sinh viên như một hình thức thúc đẩy việc đến giảng đường của sinh viên Tuy nhiên, hầu hết các trường lại áp dụng những hình thức điểm danh truyền thống với hiệu quả mang lại không cao, từ đó dẫn đến một số bất cập khác như điểm danh hộ, học hộ…

Bên cạnh đó, với sự phát triển về kinh tế và sự chuyên nghiệp hoá trong quản lý nhân sự thì hệ thống chấm công là một phần không thể thiếu được trong mỗi doanh nghiệp Hiện nay, hệ thống chấm công bằng thẻ được sử dụng rất phổ biến tại các doanh nghiệp, công ty để đảm bảo công nhân viên đi làm đầy đủ, năng cao hiệu quả công việc Tuy nhiên, đối với những doanh nghiệp đòi hỏi sự quản lý một cách chặt chẽ việc đến công ty làm việc của nhân viên thì hệ thống chấm công bằng thẻ cũng chưa đáp ứng được hoàn toàn Vấn đề quẹt thẻ hộ vẫn có thể xảy ra nếu cơ chế quản lý của doanh nghiệp và ý thức lao động của nhân viên không tốt Mặt khác, hầu hết các hệ thống chấm công bằng thẻ chỉ sử dụng cho một địa điểm cố định, cơ sở dữ liệu được lưu trữ cục bộ, không thích hợp để chấm công cho những nhân viên có đặc tính công việc phải làm việc tại nhiều địa điểm, chi nhánh khác nhau, điều này đòi hỏi một phương pháp quản lý chấm công tối ưu hơn để có thể quản lý những nhân viên này, đồng thời cũng có thể áp dụng cho tất cả nhân viên khác

Ngày nay, các công nghệ sinh trắc học đã và đang phát triển một cách rộng rãi, chúng được sử dụng ngày càng nhiều trong các ứng dụng thực tế và phát huy hiệu quả cao Công nghệ sinh trắc học dựa vào các đặc điểm sinh học riêng của mỗi cá nhân như vân tay, mống mắt, khuôn mặt,… để nhận diện một người nào đó Trong đó, vân tay là đặc trưng sinh trắc được sử dụng phổ biến nhất trong các hệ thống bảo mật bởi tính ổn định và dễ sử dụng Nhận dạng vân tay được xem là một trong những kỹ thuật nhận dạng hoàn thiện và đáng tin cậy nhất

Nhằm giải quyết những khó khăn trong việc điểm danh sinh viên – chấm công nhân viên hiện nay, nhóm nghiên cứu đã đề ra giải pháp là xây dựng một hệ thống phần mềm điểm danh sinh viên dựa trên phương pháp nhận diện vân tay Hệ thống được xây dựng dựa trên chức năng cụ thể là điểm danh sinh viên, đối với việc chấm công nhân viên, ta cũng có thể triển khai hệ thống tương tự Hệ thống này bao gồm gói phần mềm trên máy chủ (Server) có chức năng truy xuất cơ sở dữ liệu và thực hiện xử lý điểm danh sinh viên dựa trên các lớp đã được xây dựng sẵn để xử lý đối sánh ảnh vân tay; gói phần mềm trên máy con (Client) gồm ứng dụng trên điện thoại di động của sinh viên, giúp sinh viên chủ động điểm danh khi đến lớp, và một website quản trị thông tin của cơ sở dữ liệu

Ứng dụng trên điện thoại di động cũng được tích hợp các lớp hỗ trợ xử lý ảnh vân tay, khi thực hiện điểm danh, ứng dụng xác định vị trí hiện tại của sinh viên bằng hệ thống định vị toàn cầu và gọi server cung cấp thông tin các lớp học tại cơ sở tương ứng

Trang 4

với vị trí đó Sau khi sinh viên chọn lớp học, server sẽ tiếp tục cung cấp danh sách những sinh viên có đăng kí học lớp học đó để sinh viên chọn mã sinh viên tương ứng của mình Sau khi đã xác định được sinh viên nào cần điểm danh tại lớp học nào, ứng dụng sẽ yêu cầu sinh viên cung cấp dấu vân tay để thực hiện điểm danh Khi dấu vân tay được cung cấp, ứng dụng sẽ tự động xử lý trích xuất các đặc trưng của vân tay và gửi danh sách đặc trưng cùng với mã sinh viên cũng như mã lớp học và ngày giờ thực hiện điểm danh về cho server Server sau khi nhận được những thông tin từ client sẽ thực hiện đối sánh vân tay dựa trên danh sách các đặc trưng nhận được với danh sách đặc trưng được lưu trữ trong cơ sở dữ liệu Nếu kết quả là trùng khớp, server sẽ ghi nhận thông tin điểm danh của sinh viên

Website quản trị thông tin dữ liệu cho phép người truy cập có thể tham khảo danh sách sinh viên, giảng viên, lớp học cũng như thông kê tình hình điểm danh của sinh viên, đồng thời cũng cung cấp chức năng thêm mới, chỉnh sửa hoặc xóa một sinh viên Tuy nhiên, website yêu cầu người truy cập phải được cấp những quyền nhất định mới có thể thực hiện những chức năng tương ứng với quyền được cấp

Ứng dụng trên điện thoại di động dành cho người dùng được viết trên hệ điều hành Windows Phone, một hệ điều hành với nhiều ưu điểm về hiệu năng xử lý Phần giao diện được thiết kế bằng Expression Blend dễ sử dụng, sinh động, thân thiện với người dùng

Nhóm tác giả nghiên cứu đề tài đã thành công trong việc ứng dụng các thuật toán

xử lý ảnh vân tay vào thực tế, đồng thời nhóm tác giả đã cải tiến thành công công thức tính trường định hướng làm tăng tốc độ thực thi của chương trình; phát triển kỹ thuật dò theo ảnh đã làm mảnh của vân tay để loại bỏ những đường vân thừa; phát triển kỹ thuật phát hiện biên của ảnh vân tay; cải tiến thuật toán đối sánh dựa trên việc xây dựng phương trình đường thẳng kết hợp cùng việc xác định góc được tạo thành bởi đường thẳng đi qua điểm đặc trưng Pointcare và Minutiae với trục hoành trong hệ tọa độ Oxy của ảnh

Trang 5

MỤC LỤC

DANH MỤC HÌNH ẢNH 1

DANH MỤC BẢNG 4

DANH MỤC CHỮ VIẾT TẮT 5

THÔNG TIN KẾT QUẢ NGHIÊN CỨU CỦA ĐỀ TÀI 6

THÔNG TIN VỀ SINH VIÊN 9

MỞ ĐẦU 11

1 TỔNGQUAN 11

2 LÝDOCHỌNĐỀTÀI: 13

3 MỤCTIÊUNGHIÊNCỨU 13

4 PHƯƠNGPHÁPNGHIÊNCỨU 14

5 PHẠMVINGHIÊNCỨU 14

6 ĐÓNGGÓPCỦAĐỀTÀI 15

a) Đóng góp về mặt kinh tế - xã hội 15

b) Đóng góp về mặt khoa học 15

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 17

1.1 GIỚITHIỆUVỀNỀNTẢNGLẬPTRÌNHWINDOWSPHONE 17

a Giới thiệu về hệ điều hành Windows Phone 17

b Những yếu tố cơ bản trên Windows Phone 17

1.2 XÂYDỰNGỨNGDỤNGTHEOMÔHÌNH3LỚP 18

1.2.1 Lớp giao tiếp 18

1.2.1 Lớp xử lý 19

1.2.2 Lớp dữ liệu 19

1.3 TỔNGQUANVỀXỬLÝẢNH 19

1.4 TỔNGQUANVỀVÂNTAY 20

1.4.1 Vân tay là gì? 20

1.4.2 Lịch sử nhận dạng vân tay 20

1.4.3 Các phương pháp phân loại vân tay 22

1.4.3.1 Các điểm đặc trưng trên ảnh vân tay 22

a Singularity 22

b Minutiae 23

1.4.3.2 Trích xuất các điểm đặc trưng 23

a Trích xuất các điểm Singularity 23

b Trích xuất các điểm Minutiae 25

1.5 MÔHÌNHCLIENT–SERVER 28

1.6 NGÔNNGỮTRUYVẤNDỮLIỆULINQ 31

Trang 6

CHƯƠNG 2: XÂY DỰNG HỆ THỐNG PHẦN MỀM 32

2.1 THIẾTKẾ HOẠTĐỘNG 32

2.2 PHÂNTÍCHTHIẾTKẾCƠSỞDỮLIỆUQUẢNLÝTHÔNGTIN 33

2.2.1 Mô hình ý niệm truyền thông 33

2.2.1.1 Quy trình tra cứu thông tin 33

2.2.1.2 Quy trình cập nhật thông tin 34

2.2.1.3 Quy trình thêm mới sinh viên 35

2.2.1.4 Quy trình thêm mới giảng viên 35

2.2.1.5 Quy trình điểm danh sinh viên 36

2.2.2 Mô hình vật lý dữ liệu 37

2.3 XÂYDỰNGCHỨCNĂNGQUẢNTRỊTRÊNWEBSITE 41

2.3.1 Chức năng đăng nhập 41

2.3.2 Chức năng đăng ký 41

2.3.3 Chức năng tra cứu thông tin sinh viên 42

2.3.4 Chức năng cập nhật thông tin sinh viên 42

2.3.5 Chức năng thêm mới sinh viên 43

2.3.6 Chức năng tra cứu thông tin giảng viên 44

2.3.7 Chức năng cập nhật thông tin giảng viên 44

2.3.8 Chức năng thêm mới giảng viên 45

2.3.9 Chức năng tra cứu lịch giảng dạy của giảng viên 45

2.3.10 Chức năng tra cứu thời khóa biểu của sinh viên 45

2.3.11 Chức năng tra cứu thông tin điểm danh của sinh viên 46

2.3.12 Chức năng xem thông tin tài khoản 46

2.3.13 Chức năng cập nhật quyền truy cập tài khoản 46

2.4 XÂYDỰNGVÀPHÁTTRIỂNCÁCTHUẬTTOÁNXỬLÝ,ĐỐISÁNHẢNH VÂNTAY 47

2.4.1 XỬ LÝ ẢNH ĐẦU VÀO 47

2.4.1.1 Chuyển ảnh màu sang ảnh mức xám 47

2.4.1.2 Cân bằng lược đồ xám 48

2.4.1.3 Phân ngưỡng Threshold 50

2.4.1.4 Chuẩn hóa kích thước ảnh 51

2.4.1.5 Phát hiện biên 51

a Phát hiện biên trực tiếp 51

b Phát hiện biên gián tiếp 52

c Phát hiện biên của ảnh vân tay 53

2.4.1.6 Nhị phân hóa ảnh 54

2.4.1.7 Xác định Trường định hướng 54

2.4.1.8 Tăng cường chất lượng ảnh 57

2.4.1.9 Tìm xương ảnh 59

2.4.1.10 Trích xuất các đặc trưng trên ảnh vân tay 65

a Trích xuất các đặc trưng Minutiae 65

b Trích xuất các đặc trưng Pointcare 67

Trang 7

2.4.2.1 Đối sánh các đặc trưng Minutiae có độ tương đồng về hướng 69

2.4.2.2 Vị trí tương đối của các đặc trưng Minutiae 70

2.4.2.3 Tìm các cặp đặc trưng Pointcare có độ tương đồng về hướng và khoảng cách 71

2.4.2.4 Khoảng cách từ các Pointcare đến các Minutiae 71

2.4.2.5 Góc hợp bởi đường thẳng đi qua Pointcare và Minutiae với trục Ox 72

2.4.2.6 Rút trích các cặp Minutiae trùng nhau giữa 2 ảnh 74

2.4.2.7 Tổng hợp kết quả 74

2.4.3 XÂY DỰNG CÁC LỚP XỬ LÝ ẢNH 76

2.4.3.1 Lớp xử lý trung tâm – MyImage 76

2.4.3.2 Lớp hỗ trợ xử lý kỹ thuật phát hiện biên 77

2.4.3.3 Lớp hỗ trợ xử lý tăng cường chất lượng ảnh 78

2.4.3.4 Lớp hỗ trợ trích xuất đặc trưng Minutiae và Pointcare 79

2.4.3.5 Lớp đối sánh vân tay 80

2.4.3.6 Lớp phương trình đường thẳng hỗ trợ đối sánh vân tay 82

2.4.3.7 Lớp các giá trị hằng số 83

2.5 XÂYDỰNGSERVER-WCFSERVICE 85

2.5.1 Ưu điểm của WCF 86

2.5.2 WCF Service Contract - Interface 86

2.5.3 Lớp Service 87

2.5.4 Kết nối cơ sở dữ liệu bằng LinQ 88

2.6 XÂYDỰNGỨNGDỤNGCLIENTCHẠYTRÊNSMARTPHONE 91

2.6.1 Xây dựng giao diện màn hình chính 91

2.6.2 Xây dựng chức năng điểm danh sinh viên 92

2.6.3 Xây dựng chức năng định vị vị trí và hiển thị bản đồ 94

2.6.4 Xây dựng chức năng Kiểm nghiệm thuật toán 96

CHƯƠNG 3 : KẾT QUẢ THỰC HIỆN 99

3.1 WEBSITEDÀNHCHONGƯỜIQUẢNTRỊ 99

3.2 ỨNGDỤNGDIĐỘNGDÀNHCHOSINHVIÊN 106

3.3 KẾTQUẢTHỰCNGHIỆMCỦAHỆTHỐNG 127

CHƯƠNG 4: KẾT LUẬN 129

TÀI LIỆU THAM KHẢO 131

Trang 8

DANH MỤC HÌNH ẢNH

Hình 1.1: Kiến trúc mô hình ba lớp 18

Hình 1.2: Giao dịch kinh doanh sử dụng dấu vân tay làm tín 20

Hình 1.3: Tiến sĩ Henry Faulds 21

Hình 1.4: Vân tay được sử dụng trên chứng minh thư 22

Hình 1.5: Core và Delta trên vân tay 22

Hình 1.6: Các loại Core vân tay 22

Hình 1.7: Cấu trúc của Minutiae 23

Hình 1.8: Ảnh vân tay và trường định hướng của nó 23

Hình 1.9: Cách tính chỉ số poincare tại điểm (i,j) với n = 8 25

Hình 1.10: Sơ đồ thuật toán trích các điểm Minutiae từ ảnh xám 25

Hình 1.11: Phân loại đặc trưng Minutiae 26

Hình 1.12: Thiết diện của đườngng vân (is , js) 26

Hình 1.13: Điểm cực đại (ic , jc) gần (is , js) nhất 27

Hình 1.14: Dịch chuyển theo đường vân từng đoạn μ 27

Hình 1.15: Mô hình Client – Server với một loại Client 28

Hình 1.16: Mô hình Client – Server với nhiều loại Client 28

Hình 1.17: Kiến trúc của WCF 30

Hình 1.18: Các kênh trao đổi bản tin trong WCF 30

Hình 1.19: Mô hình kiến trúc LINQ 31

Hình 2.1: Mô hình hoạt động hệ thống 33

Hình 2.2: Quy trình tra cứu thông tin 34

Hình 2.3: Quy trình cập nhật thông tin 34

Hình 2.4: Quy trình thêm mới sinh viên 35

Hình 2.5: Quy trình thêm mới giảng viên 35

Hình 2.6: Quy trình điểm danh sinh viên 36

Hình 2.7: Mô hình vật lý dữ liệu 37

Hình 2.8: Lưu đồ tổ chức website 41

Hình 2.9: Chức năng đăng nhập 41

Hình 2.10: Chức năng đăng kí 42

Hình 2.11: Điều kiện tra cứu thông tin sinh viên 42

Hình 2.12: Hiển thị thông tin sinh viên 42

Hình 2.13: Cập nhật thông tin sinh viên 43

Hình 2.14: Chức năng thêm sinh viên 44

Hình 2.15: Điều kiện tra cứu thông tin 44

Hình 2.16: Cập nhật thông tin giảng viên 45

Hình 2.17: Thêm mới giảng viên 45

Hình 2.18: Tra cứu lịch giảng dạy 45

Hình 2.19: Tra cứu thời khóa biểu sinh viên 46

Hình 2.20: Tra cứu thông tin điểm danh của sinh viên 46

Hình 2.21: Thông tin tài khoản đăng nhập 46

Hình 2.22: Cấp quyền truy cập cho tài khoản 47

Hình 2.23: Ảnh vân tay và ảnh mức xám 48

Trang 9

Hình 2.24: Lược đồ xám của một ảnh 48

Hình 2.25: Lược đồ xám trước và sau khi cân bằng 49

Hình 2.26: Ảnh vân tay trước và sau khi cân bằng lược đồ xám 49

Hình 2.27: Ảnh vân tay trước và sau khi chuẩn hóa kích thước 51

Hình 2.28: Ảnh vân tay và biên của nó 53

Hình 2.29: Xác định hướng của điểm ảnh (x, y) 55

Hình 2.30: Xác định Trường định hướng của 2 điểm ảnh kế cận 56

Hình 2.31: Hình vân tay trước và sau tăng cường 59

Hình 2.32: Xác định điểm biên 60

Hình 2.33: Một số trường hợp điểm đang xét cần xóa trắng 60

Hình 2.34: Lưu đồ quá trình tìm xương ảnh 61

Hình 2.35: Ảnh vân tay trước và sau khi tìm xương 61

Hình 2.36: Hình ảnh thể hiện một phần cấu trúc xương của vân tay 62

Hình 2.37: Lưu đồ giải thuật xóa chi tiết thừa của xương 63

Hình 2.38: Ảnh xương của vân tay (chưa hiệu chỉnh) 63

Hình 2.39: Ảnh xương của vân tay sau khi đã xóa các chi tiết thừa 63

Hình 2.40: Ảnh xương vân tay trước và sau khi xóa xương thừa bằng kỹ thuật dò theo đường vân 65

Hình 2.41: Phân loại đặc trưng Minutiae của vân tay 66

Hình 2.42: Loại bỏ Minutiae nằm ngoài biên 66

Hình 2.43: Loại bỏ Minutie nhầm lẫn là điểm kết thúc 67

Hình 2.44: Loại bỏ Minutie nhầm lẫn là điểm rẽ nhánh 67

Hình 2.45: Cách tính chỉ số poincare tại điểm (i , j) với n = 8 68

Hình 2.46: Hướng của các đặc trưng Minutiae 69

Hình 2.47a: Vị trí tương đối của đặc trưng Minutiae 70

Hình 2.47b: Vị trí tương đối của đặc trưng Pointcare 71

Hình 2.48: Khoảng cách từ Pointcare đến các Minutiae 72

Hình 2.49: Góc giữa đường thẳng đi qua Pointcare và Minutiae với trục Ox 73

Hình 2.50: Lưu đồ giải thuật đối sánh vân tay 75

Hình 2.51: Lớp xử lý ảnh trung tâm 76

Hình 2.52: Lớp hỗ trợ xử lý kỹ thuật phát hiện biên 77

Hình 2.53: Lớp hỗ trợ xử lý tăng cường chất lượng ảnh 78

Hình 2.54: Lớp hỗ trợ trích xuất đặc trưng Minutiae và PointCare 79

Hình 2.55: Lớp đối sánh vân tay 80

Hình 2.56: Lớp phương trình đường thẳng hỗ trợ đối sánh vân tay 82

Hình 2.57: Lớp các giá trị hằng số 83

Hình 2.58: Sơ đồ giao tiếp giữa Client và Server 85

Hình 2.59: WCF Service Contract 87

Hình 2.60: Lớp Service 88

Hình 2.61: Cơ sở dữ liệu trên Server được kết nối thông qua LinQ 89

Hình 2.62: Các lớp xử lý được hình thành từ LinQ 90

Hình 2.63: Lưu đồ tổ chức ứng dụng client trên smartphone 91

Hình 2.64: Giao diện chính của chương trình Client 92

Hình 2.65: ListBox chứa danh sách lớp học 93

Trang 10

Hình 2.66: ListBox chứa danh sách sinh viên 93

Hình 2.67: Lưu đồ quá trình điểm danh sinh viên 94

Hình 2.68: Bản đồ Google map 96

Hình 2.69: Hiển thị địa chỉ ở vị trí hiện tại 96

Hình 2.70: Quá trình xử lý ảnh vân tay 97

Hình 2.71: Lưu đồ kiểm nghiệm kết quả đối sánh 2 vân tay 98

Hình 3.1: Trang đăng nhập 99

Hình 3.2: Trang đăng kí 99

Hình 3.3: Trang thông tin sinh viên 100

Hình 3.4: Trang cập nhật thông tin sinh viên 100

Hình 3.5: Trang thêm mới sinh viên 101

Hình 3.6: Trang thông tin giảng viên 101

Hình 3.7: Trang cập nhật thông tin giảng viên 102

Hình 3.8: Trang thêm mới giảng viên 102

Hình 3.9: Trang tra cứu lịch giảng dạy 103

Hình 3.10: Trang tra cứu thời khóa biểu của giảng viên 103

Hình 3.11: Trang tra cứu thông tin điểm danh của sinh viên 104

Hình 3.12: Trang tạo mới tài khoản người dùng 104

Hình 3.13: Trang thông tin các tài khoản 105

Hình 3.14: Trang thay đổi quyền truy cập của tài khoản 105

Hình 3.15: Xuất các danh sách ra file Excel 106

Hình 3.16: Giao diện chính của chương trình 107

Hình 3.17: Vị trí sinh viên không ở cơ sở học, không hiển thị danh sách lớp 108

Hình 3.18: Vị trí sinh viên đang ở cơ sở học, hiển thị danh sách các lớp học 119

Hình 3.19: Danh sách sinh viên thuộc lớp học đã chọn 110

Hình 3.20: Bản đồ hiển thị vị trí hiện tại của sinh viên 111

Hình 3.21: Giao diện điểm danh 112

Hình 3.22: Chọn ảnh từ album 113

Hình 3.23: Chọn vân tay thành công 114

Hình 3.24: Thông báo điểm danh thất bại 115

Hình 3.25: Đối sánh vân tay trùng khớp Điểm danh sinh viên thành công 116

Hình 3.26: Giao diện trang kiểm nghiệm thuật toán 117

Hình 3.27: Kiểm nghiệm các thuật toán xử lý ảnh 118

Hình 3.28: Chuẩn hóa mức xám 119

Hình 3.29: Tăng cường ảnh bằng bộ lọc Gabor 120

Hình 3.30: Nhị phân hóa ảnh 121

Hình 3.31: Tìm xương ảnh 122

Hình 3.32: Xác định đặc trưng Pointcare và Minutiae 123

Hinh 3.33: Kiểm nghiệm thuật toán đối sánh vân tay 124

Hình 3.34: Kết quả đối sánh vân tay 124

Hình 3.35: Các điểm đặc trưng vân tay 125

Hình 3.36: Các điểm đặc trưng trùng nhau của 2 ảnh vân tay 125

Hình 3.37: Thông tin đề tài và tác giả 126

Trang 11

DANH MỤC BẢNG

Bảng 2.1: Bảng Khoa 37

Bảng 2.2: Bảng Lớp 37

Bảng 2.3: Bảng Sinh Viên 38

Bảng 2.4: Bảng Giảng Viên 38

Bảng 2.5: Bảng Phòng Học 39

Bảng 2.6: Bảng Môn Học 39

Bảng 2.7: Bảng Thời Khóa Biểu Sinh Viên 39

Bảng 2.8: Bảng Lịch Giảng Dạy của Giảng Viên 40

Bảng 2.9: Bảng Điểm Danh Sinh Viên 40

Bảng 2.10: Ý nghĩa các thuộc tính của lớp xử lý trung tâm 76

Bảng 2.11: Ý nghĩa các phương thức (public) của lớp xử lý trung tâm 77

Bảng 2.12: Ý nghĩa các thuộc tính lớp hỗ trợ xử lý kỹ thuật phát hiện biên 78

Bảng 2.13: Ý nghĩa các phương thức của lớp hỗ trợ xử lý kỹ thuật phát hiện biên 78

Bảng 2.14: Ý nghĩa các thuộc tính lớp hỗ trợ xử lý tăng cường chất lượng ảnh 78

Bảng 2.15: Ý nghĩa các phương thức lớp hỗ trợ xử lý tăng cường chất lượng ảnh 79

Bảng 2.16: Ý nghĩa các thuộc tính của lớp hỗ trợ trích xuất đặc trưng Minutiae và PointCare 79

Bảng 2.17: Ý nghĩa các phương thức của lớp hỗ trợ trích xuất đặc trưng Minutiae và PointCare 80 Bảng 2.18: Ý nghĩa các thuộc tính của lớp đối sánh vân tay 81

Bảng 2.19: Ý nghĩa các phương thức (public) của lớp đối sánh vân tay 81

Bảng 2.20: Ý nghĩa các thuộc tính của lớp phương trình đường thẳng 82

Bảng 2.21: Ý nghĩa các phương thức của lớp phương trình đường thẳng 83

Bảng 2.22: Ý nghĩa các thuộc tính của lớp các giá trị hằng số 84

Bảng 2.23: Ý nghĩa các thuộc tính của WCF Service Contract 87

Bảng 2.24: Ý nghĩa các thuộc tính của lớp Service 88

Bảng 3.1: Kết quả chạy thực tế 127

Trang 12

DANH MỤC CHỮ VIẾT TẮT

A-GPS Assisted - Global Positioning

System

Hệ thống trợ giúp định vị toàn cầu

CLR Common Language Runtime Thành phần kết nối giữa các phần khác

trong.NET Framework GPRS General Packet Radio Service Dịch vụ vô tuyến gói tổng hợp

GPS Global Positioning System Hệ thống định vị toàn cầu

IIS Internet Information service Dịch vụ dành cho máy chủ chạy trên

nền hệ điều hành Window LINQ Language Intergrated Query Ngôn ngữ tích hợp truy vấn

PDA Persional Digital Assistant Máy kỹ thuật số hỗ trợ cá nhân

SOAP Simple Object Access

XML Extensible Markup Language Ngôn ngữ đánh dấu mở rộng

Microsoft XSD XML Schema Definition Tài liệu XML được viết dưới dạng

thức thuần văn bản

Link: http://www.ddth.com/showthread.php/320733-xml-Schema-là-gì-để-làm-gì#ixzz2xnrvuyHN

lập trình có thể được cài thêm hoặc đã

có sẵn trong các hệ điều hành Windows

Trang 13

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC MỞ TP.HCM

THÔNG TIN KẾT QUẢ NGHIÊN CỨU CỦA ĐỀ TÀI

1 Thông tin chung:

- Tên đề tài:

HỆ THỐNG ĐIỂM DANH SINH VIÊN / NHÂN VIÊN BẰNG PHƯƠNG PHÁP NHẬN DIỆN DẤU VÂN TAY TRÊN THIẾT BỊ DI

ĐỘNG KẾT HỢP GPS 1) Sinh viên thực hiện: TRẦN THANH LONG

Lớp: TH10A3 Khoa: Công Nghệ Thông Tin Năm thứ: 4 Số năm đào tạo: 4

2) Sinh viên thực hiện: ĐOÀN NGUYỄN ĐĂNG KHOA

Lớp: TH10A3 Khoa: Công Nghệ Thông Tin Năm thứ: 4 Số năm đào tạo: 4

- Người hướng dẫn: TS LÊ XUÂN TRƯỜNG

2 Mục tiêu đề tài:

 Xây dựng hệ thống phần mềm điểm danh sinh viên dạng client – server giúp nhà trường quản lý hiệu quả việc điểm danh sinh viên Hệ thống có thể áp dụng vào việc chấm công nhân viên, người lao động tại các doanh nghiệp, công ty

 Ứng dụng công nghệ nhận diện vân tay vào việc xử lý ảnh và đối sánh vân tay sinh viên, nhân viên

 Xây dựng ứng dụng client trên smartphone để điểm danh sinh viên, nhân viên dựa trên công nghệ nhận diện vân tay, giúp cho việc điểm danh được chủ động thực hiện khi snh viên vào lớp học, cũng như khi nhân viên vào cơ quan, công ty

 Ứng dụng trên smartphone thực hiện điểm danh sinh viên, nhân viên dựa trên việc đối sánh giữa vị trí mà sinh viên, nhân viên đang đứng với địa chỉ của phòng học, công ty; giữa vân tay lấy được từ điện thoại với vân tay mẫu của đã được lưu trữ trong cơ sở dữ liệu

 Sử dụng công nghệ GPS để xác định vị trí của sinh viên, nhân viên đang đứng với độ chính xác cao

 Xây dựng hệ thống server có nhiệm vụ nhận những thông tin sinh viên, nhân viên được gửi từ client bao gồm danh sách các đặc trưng vân tay đã được xử lý Sau đó, thực hiện đối sánh với vân tay của sinh viên, nhân viên mà đã được lưu trữ trong cơ

sở dữ liệu, rồi thông báo kết quả và ghi nhận thao tác điểm danh

Trang 14

 Xây dựng trang web quản lý cơ sở dữ liệu lưu trữ thông tin sinh viên, giảng viên, lịch giảng dạy của giảng viên, thời khóa biểu và thông tin điểm danh của sinh viên

 Ứng dụng các thuật toán xử lý ảnh vân tay để lưu trữ các đặc trưng vân tay

 Ứng dụng thuật toán đối sánh vân tay dựa trên các điểm đặc trưng vân tay để điểm danh sinh viên, nhân viên

 Áp dụng và cải tiến công thức tính Trường định hướng cho ảnh làm giảm bớt thời gian tính toán cho máy tính

 Nghiên cứu các phương pháp phát hiện biên để phát triển kỹ thuật phát hiện biên dành riêng cho ảnh vân tay

 Cải tiến phương pháp đối sánh vân tay dựa trên việc tổng hợp những ưu điểm của các phương pháp trước đó

3 Tính mới và sáng tạo:

 Xây dựng hệ thống dạng client-server để điểm danh sinh viên, nhân viên bằng phương pháp nhận diện dấu vân tay

 Xây dựng ứng dụng điểm danh sinh viên, nhân viên tích hợp các thuật toán xử lý ảnh

và đối sánh vân tay chạy trên điện thoại di động

 Website quản lý thông tin tích hợp các thuật toán xử lý ảnh để lưu trữ các đặc trưng vân tay của sinh viên, nhân viên vào cơ sở dữ liệu

 Tối ưu hóa thuật toán tính Trường định hướng cho ảnh vân tay, giúp làm giảm bớt các thao tác dư thừa cho máy tính và làm tăng tốc độ thực thi

 Phát triển kỹ thuật dò theo đường vân trên ảnh vân tay đã làm mảnh để loại bỏ các đường vân dư thừa dựa trên ý tưởng của thuật toán dò theo đường vân trên ảnh xám

 Phát triển kỹ thuật đối sánh vân tay dựa trên việc xây dựng phương trình đường thẳng kết hợp cùng việc xác định góc được tạo thành bởi đường thẳng đi qua điểm đặc trưng Pointcare và Minutiae với trục hoành trong hệ tọa độ Oxy của ảnh

4 Kết quả nghiên cứu:

 Xây dựng thành công hệ thống client-server cung cấp cho sinh viên, nhân viên chức năng điểm danh bằng phương pháp nhận diện dấu vân tay

 Xây dựng thành công Server thực hiện truy xuất dữ liệu và đối sánh vân tay để gửi kết quả cho ứng dụng phía client

 Xây dựng thành công Website quản trị thông tin dựa trên nền tảng ASP.NET cung cấp những chức năng tra cứu và cập nhật thông tin sinh viên, giảng viên, tra cứu lịch giảng dạy của giảng viên, thời khóa biểu và thông tin điểm danh của sinh viên

 Ứng dụng thành công các thuật toán xử lý ảnh và đối sánh vân tay trên nền tảng ASP.NET và Windows Phone

 Cải tiến thành công thuật toán tính Trường định hướng của ảnh

Trang 15

 Phát triển thành công kỹ thuật dò theo đường vân trên ảnh đã làm mảnh

 Phát triển thành công kỹ thuật đối sánh vân tay dựa trên việc xây dựng phương trình đường thẳng kết hợp với việc xác định góc giữa các đường thẳng trong hệ trục Oxy

 Nhóm nghiên cứu đã thực nghiệm trên 3000 trường hợp đối sánh giữa các cặp ảnh vân tay khác nhau để kiểm nghiệm tính đúng đắn của thuật toán, qua đó xác định ngưỡng Hamming distance – ngưỡng mức độ giống nhau giữa hai vân tay

5 Đóng góp về mặt kinh tế - xã hội, giáo dục và đào tạo, an ninh, quốc phòng

và khả năng áp dụng của đề tài:

 Góp phần làm giảm tình trạng bỏ học, trốn tiết thường xuyên của sinh viên

 Hạn chế tình trạng học hộ, điểm danh hộ của sinh viên ở giảng đường đại học, cũng như hạn chế tình trạng điểm danh hộ của nhân viên ở cơ quan, công ty

 Giảm bớt thời gian, công sức của giảng viên và sinh viên so với phương pháp điểm danh truyền thống

 Giúp nhà trường quản lý tình hình đi học của sinh viên dễ dàng hơn, cũng như giúp

cơ quan, doanh nghiệp quản lý tình hình đi làm của nhân viên hiệu quả hơn

 Góp phần nâng cao chất lượng dạy và học ở nhà trường cũng như nâng cao chất lượng sinh viên đầu ra Góp phần nâng cao ý thức, trách nhiệm của nhân viên để có thể hoàn thành tốt công việc được giao, đem lại lợi nhuận cho công ty, từ đó phát triển nền kinh tế đất nước

Ngày tháng năm

Sinh viên chịu trách nhiệm chính

thực hiện đề tài

(ký, họ và tên)

Nhận xét của người hướng dẫn về những đóng góp khoa học của sinh viên

thực hiện đề tài (phần này do người hướng dẫn ghi):

Trang 16

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC MỞ TP.HCM

THÔNG TIN VỀ SINH VIÊN CHỊU TRÁCH NHIỆM CHÍNH THỰC HIỆN ĐỀ TÀI

I SƠ LƯỢC VỀ SINH VIÊN:

Họ và tên: TRẦN THANH LONG

Sinh ngày: 21 tháng 8 năm 1992

Nơi sinh: Thành phố Hồ Chí Minh

Lớp: TH10A3 Khóa: 2010-2014

Khoa: Công nghệ thông tin

Địa chỉ liên hệ: 141 Nguyễn Duy Trinh, phường Bình Trưng Tây, Quận 2

Điện thoại: 01264027425 Email: longtran.218@gmail.com

II QUÁ TRÌNH HỌC TẬP (kê khai thành tích của sinh viên từ năm thứ 1 đến năm đang học):

Trang 18

MỞ ĐẦU

1 TỔNG QUAN

Để phát triển nền kinh tế bền vững thì nhân tố con người luôn đóng vai trò quyết định Vì vậy, không chỉ Việt Nam mà tất cả các nước trên thế giới đều xem giáo dục là quốc sách hàng đầu Cùng với xu hướng trên, Việt Nam luôn tạo mọi điều kiện để nâng cao dân trí, đào tạo nhân lực, bồi dưỡng nhân tài cho đất nước và nâng cao trình độ chuyên môn kỹ thuật cho người lao động, nhằm đáp ứng tốt hơn cho nhu cầu công nghiệp hóa – hiện đại hóa đất nước

Giáo dục quan trọng là vậy, tuy nhiên, bỏ học, trốn tiết từ lâu đã trở thành một thực trạng khá phổ biến ở sinh viên, do việc đến giảng đường của sinh viên là không bắt buộc như các cấp trung học cơ sở và phổ thông Một bộ phận sinh viên chưa xem trọng việc đến giảng đường để tiếp thu kiến thức bởi điều này tùy thuộc vào ý thức của mỗi người Thực tế cho thấy, việc không đến giảng đường gây ra rất nhiều lỗ hổng trong kiến thức của sinh viên, ảnh hưởng không nhỏ đến quá trình học tập và kết quả đạt được, quan trọng hơn là kiến thức nền tảng cần có cho công việc sau này

Nhận thức được tính nghiêm trọng của vấn đề trên, một số trường áp dụng hình thức điểm danh gọi tên sinh viên tại lớp học để phần nào nâng cao ý thức của sinh viên trong việc có mặt tại giảng đường Mặc dù vậy, hình thức điểm danh này không mang lại hiệu quả cao do nhiều nguyên nhân: giảng viên chưa thực hiện triệt để, nhất là ở hệ tại chức do giảng viên thường châm chước cho các cán bộ công chức đã đi làm; sinh viên điểm danh hộ cho nhiều người khác do số lượng sinh viên ở giảng đường thường khá đông, giảng viên khó có thể kiểm soát hết… Đa phần những sinh viên bỏ học, trốn tiết đều đưa ra lý luận vẫn đủ kiến thức vì vẫn qua được kỳ thi Tuy nhiên, với cách đánh giá bằng một bài thi, nghiên cứu và thực tiễn cho thấy những sinh viên ấy đều có khuynh hướng lạc mục tiêu – nghĩa là thay vì mục tiêu chính là tích lũy kiến thức liên tục thì lại chuyển qua mục tiêu vượt qua các kỳ thi Những bất cập trên đã được đề cập nhiều trên báo chí, nhưng đến hiện tại tình hình bỏ học, trốn tiết của sinh viên vẫn chưa suy giảm

Ở một khía cạnh khác trong lĩnh vực sản xuất-lao động, trước đây hầu hết các doanh nghiệp, công ty chủ yếu chấm công theo hình thức thủ công, toàn bộ giờ công của nhân viên đều được theo dõi và ghi chép bằng sổ sách với một đội ngũ nhân viên chấm công Chính vì vậy sẽ rất khó khăn nếu một công ty có một số lượng lớn nhân viên, khả năng lưu trữ bị hạn chế, khả năng truy vấn thông tin liên quan đến vấn đề chấm công là không hiệu quả, tốn nhiều công sức, tiền bạc và nhiều điều bất cập khác Để khắc phục những hạn chế đó, hiện nay, hệ thống chấm công bằng thẻ được sử dụng rất phổ biến tại các doanh nghiệp, công ty để đảm bảo công nhân viên đi làm đầy đủ, năng cao hiệu quả công việc Nhưng đối với một doanh nghiệp đòi hỏi sự quản lý chặt chẽ thì hệ thống chấm công bằng thẻ cũng chưa đáp ứng được hoàn toàn Vấn đề quẹt thẻ hộ vẫn có thể xảy ra nếu cơ chế quản lý của doanh nghiệp không chặt chẽ và ý thức lao động của nhân viên không tốt Mặt khác, hầu hết các hệ thống chấm công bằng thẻ chỉ sử dụng cho một địa điểm cố định, cơ sở dữ liệu được lưu cục bộ, không thích hợp chấm công cho những nhân viên có đặc tính công việc phải làm việc tại nhiều địa điểm, chi nhánh khác nhau, điều

Trang 19

này đòi hỏi một phương pháp quản lý chấm công tối ưu hơn để có thể quản lý những nhân viên này, đồng thời cũng có thể áp dụng cho tất cả nhân viên khác

Ngày nay, các công nghệ sinh trắc học đã và đang phát triển một cách rộng rãi Một số công nghệ sinh trắc học đang được sử dụng trong các ứng dụng thực tế và phát huy hiệu quả cao Công nghệ sinh trắc học dựa vào các đặc điểm sinh học riêng của mỗi

cá nhân như vân tay, mống mắt, khuôn mặt,… để nhận diện một người nào đó Các đặc trưng sinh trắc thường đáp ứng được nhu cầu bảo mật do tính độc nhất - mỗi người chỉ

có duy nhất một đặc điểm riêng, và tính bất biến – các đặc trưng sinh trắc không thay đổi theo thời gian

Vân tay là đặc trưng sinh trắc được sử dụng phổ biến nhất trong các hệ thống bảo mật bởi tính ổn định và sử dụng dễ dàng Nhận dạng vân tay được xem là một trong những kỹ thuật nhận dạng hoàn thiện và đáng tin cậy nhất

Dấu vân tay từ lâu đã được các nước trên thế giới xem là một phương tiện hữu hiệu

để quản lý công dân thông qua chứng minh thư để xác định một cách nhanh chóng các đặc điểm của cá nhân, hồ sơ của một công dân được lưu trong cơ sở dữ liệu Hiện nay, người ta đã lợi dụng các đặc điểm riêng biệt của vân tây để xây dựng các hệ thống bảo mật các thông tin riêng tư cho người sử dụng Phương pháp nhận dạng vân tay đang được

áp dụng trong lĩnh vực quản lý nhân sự, hỗ trợ đắc lực cho việc quản lý và chấm công tại các nhà máy, xí nghiệp, công ty bằng máy các máy chấm công vân tay Tuy nhiên, hầu hết các hệ thống chấm công vân tay ở doanh nghiệp, công ty vẫn gặp phải những hạn chế giống như hình thức chấm công bằng thẻ, do cơ sở dữ liệu được lưu trữ cục bộ, không thích hợp cho việc chấm công ở một công ty mà nhân viên phải thực hiện công việc ở nhiều nơi khác nhau

Theo tìm hiểu của nhóm nghiên cứu, hiện nay đã có ba trường đại học triển khai hệ thống nhận diện vân tay để điểm danh sinh viên gồm: Học viện Chính trị - Hành chính khu vực 3 (Đà Nẵng), Trường Đại học Tài chính - Ngân hàng Hà Nội và Trường ĐH Võ Trường Toản (Hậu Giang) Khi bước đến giảng đường, sinh viên chỉ việc quét dấu vân tay vào các thiết bị được bố trí sẵn, máy sẽ ghi nhận lại thông tin ngày giờ của sinh viên đến lớp Dù vậy, sinh viên ba trường đại học trên đều đi học tập trung tại một hoặc hai cơ

sở, nên việc thiết lập hệ thống máy quét dấu vân tay tương đối không quá khó Tuy nhiên,

do hầu hết các trường đại học hiện nay đều đã chuyển sang hình thức đào tạo tín chỉ, sinh viên có thể đi học tại nhiều cơ sở khác nhau, nếu một trường đại học có nhiều cơ sở học khác nhau, việc thiết lập hệ thống điểm danh sinh viên bằng máy quét vân tay như trên gặp nhiều khó khăn do dữ liệu vân tay sinh viên được lưu trữ cục bộ, đòi hỏi phải có một

hệ thống dạng client-server để đảm bảo dữ liệu có thể được truy xuất từ nhiều địa điểm khác nhau

Smartphone là một thiết bị công nghệ được sử dụng rất phổ biến trong vài năm qua Với sự tăng trưởng nhanh chóng, nó đang dần thay thế cho những chiếc điện thoại với tính năng thông thường (feature phone) bởi những tiện ích mà nó mang lại Cho đến gần đây, xu hướng tích hợp công nghệ nhận dạng và bảo mật vân tay vào smartphone bắt đầu được chú ý đến từ khi hãng Apple ra mắt Iphone 5S Dù vậy, công nghệ nhận dạng vân tay hiện vẫn còn hạn chế về mặt ứng dụng thực tế: bảo mật trên điện thoại, thanh toán

Trang 20

di động… Nhưng không thể phủ nhận rằng đây chính là xu hướng phát triển tiếp theo của smartphone, mà việc các hãng điện thoại như: Samsung, HTC, Sky… dần tích hợp công nghệ này vào điện thoại chính là minh chứng rõ rệt nhất

2 LÝ DO CHỌN ĐỀ TÀI

Tình trạng trên đặt ra một vấn đề mang tính cấp thiết là cần phải có một hệ thống phần mềm quản lý việc điểm danh sinh viên hoặc chấm công nhân viên có hiệu quả tốt hơn Công nghệ nhận diện vân tay được nhóm nghiên cứu lựa chọn để thực hiện điều này Bên cạnh đó, smartphone ngày càng phổ biến với người dùng là cơ sở để nhóm quyết định xây dựng ứng dụng trên smartphone Công nghệ định vị toàn cầu GPS cũng được sử dụng để xác định vị trí hiện tại của người dùng, nhằm đảm bảo người dùng phải có mặt tại nơi cần điểm danh

Dựa trên mục tiêu cụ thể là quản lý điểm danh sinh viên, hệ thống điểm danh sinh viên bằng phương pháp nhận diện vân tay với ứng dụng điểm danh được thực hiện ngay trên smartphone được ra đời với mong muốn ứng dụng công nghệ nhận diện vân tay vào thực tiễn của cuộc sống, góp phần làm tăng ý thức đi học của sinh viên, giảm bớt tình trạng trốn học, bỏ tiết; tăng hiệu quả, tiết kiệm thời gian trong việc quản lý điểm danh sinh viên; nâng cao chất lượng nguồn nhân lực của xã hội, từ đó góp phần phát triển đất nước

3 MỤC TIÊU NGHIÊN CỨU

 Xây dựng hệ thống phần mềm điểm danh sinh viên dạng client – server giúp nhà trường quản lý hiệu quả việc điểm danh sinh viên Hệ thống có thể áp dụng vào việc chấm công nhân viên, người lao động tại các doanh nghiệp, công ty

 Ứng dụng công nghệ nhận diện vân tay vào việc xử lý ảnh và đối sánh vân tay sinh viên

 Xây dựng ứng dụng client trên smartphone điểm danh sinh viên dựa trên công nghệ nhận diện vân tay, giúp sinh viên chủ động điểm danh khi vào lớp học

 Ứng dụng trên smartphone thực hiện điểm danh sinh viên dựa trên việc đối sánh giữa

vị trí của sinh viên đang đứng với địa chỉ của phòng học, giữa vân tay lấy được từ điện thoại với vân tay mẫu của sinh viên được lưu trữ trong cơ sở dữ liệu, giữa môn học sinh viên chọn với thời khóa biểu của sinh viên

 Sử dụng công nghệ định vị toàn cầu GPS để xác định vị trí của sinh viên đang đứng với độ chính xác cao

 Xây dựng hệ thống server có nhiệm vụ nhận những thông tin sinh viên được gửi từ client bao gồm danh sách các đặc trưng vân tay đã được xử lý Sau đó, thực hiện đối sánh với vân tay của sinh viên được lưu trữ trong cơ sở dữ liệu, thông báo kết quả và ghi nhận việc điểm danh của sinh viên

 Xây dựng trang web quản lý cơ sở dữ liệu lưu trữ thông tin sinh viên, giảng viên, lịch giảng dạy của giảng viên, thời khóa biểu và thông tin điểm danh của sinh viên

Trang 21

 Ứng dụng các thuật toán xử lý ảnh vân tay để lưu trữ các đặc trưng vân tay sinh viên

 Ứng dụng thuật toán đối sánh vân tay dựa trên các điểm đặc trưng vân tay để điểm danh sinh viên

 Áp dụng và cải tiến công thức tính Trường định hướng của ảnh làm giảm bớt thời gian tính toán cho máy tính

 Nghiên cứu các phương pháp phát hiện hiện biên để phát triển một kỹ thuật phát hiện biên dành riêng cho ảnh vân tay

 Cải tiến phương pháp đối sánh vân tay dựa trên việc tổng hợp những ưu điểm của các phương pháp trước đó

4 PHƯƠNG PHÁP NGHIÊN CỨU

 Tìm hiểu và nghiên cứu cách thực xây dựng ứng dụng trên hệ điều hành Windows Phone

 Tìm hiểu phương pháp lập trình sử dụng công nghệ GPS để xác định vị trí trên phạm

 Tìm hiểu công nghệ sinh trắc học trong nhận dạng dấu vân tay, tìm hiểu cấu trúc và đặc điểm của dấu vân tay, nhằm phục vụ cho việc xử lý ảnh và rút trích đặc trưng trên ảnh vân tay

 Tìm hiểu và nghiên cứu các thuật toán xử lý ảnh trên vân tay như: chuẩn hóa mức xám, tăng cường ảnh, nhị phân hóa, tìm xương ảnh, trích xuất các đặc trưng Minutiae

và Singularity của vân tay

 Nghiên cứu phương pháp đối sánh vân tay dựa trên các đặc trưng của vân tay

 Phát triển thuật toán xử lý ảnh vân tay dựa trên quá trình tìm xương ảnh, làm mượt đường vân, tăng độ chính xác của quá trình đối sánh

 Phân tích thiết kế cơ sở dữ liệu và lưu trữ trong hệ quản trị cơ sở dữ liệu SQL Server

 Tìm hiểu lập trình Web trên nền tảng ASP.NET Framework 4.5

5 PHẠM VI NGHIÊN CỨU

 Hệ thống phần mềm gồm ba mô-đun chính: server thực hiện xử lý đối sánh vân tay, client trên ứng dụng điện thoại di động và web quản lý thông tin điểm danh của sinh viên

 Hệ thống phần mềm có phạm vi sử dụng ở các trường đại học, cao đẳng

Trang 22

 Server có nhiệm vụ truy xuất dữ liệu và gửi thông tin môn học về cho client khi có yêu cầu Ứng dụng client thực hiện xử lý ảnh vân tay thu nhận được từ smartphone, xác định vị trí hiện tại của sinh viên và gửi thông tin về cho server Server xử lý việc điểm danh sinh viên có hợp lệ không, nếu có, server ghi nhận thông tin điểm danh của sinh viên vào cơ sở dữ liệu và trả về kết quả cho client

 Trang web cung cấp các chức năng tra cứu thông tin của sinh viên, giảng viên, lịch giảng dạy của giảng viên, thời khóa biểu và thông tin điểm danh của sinh viên danh cho người có thẩm quyền truy cập Bên cạnh đó, trang web cũng cung cấp các chức năng thêm, xóa, sửa các đối tượng

 Tìm hiểu và nghiên cứu cách thức sử dụng công nghệ GPS trên hệ điều hành Windows Phone

 Tìm hiểu các thuật toán xử lý ảnh trên vân tay và các phương pháp đối sánh vân tay

 Góp phần làm giảm thực trạng bỏ học, trốn tiết của sinh viên

 Hạn chế tình trạng học hộ, điểm danh hộ ở giảng đường, cũng như hạn chế tình trạng điểm danh hộ của nhân viên ở cơ quan, doanh nghiệp

 Giảm thời gian, công sức của giảng viên và sinh viên so với phương pháp điểm danh truyền thống

 Giúp cho nhà trường dễ dàng quản lý tình hình đi học của sinh viên, cũng như giúp

cơ quan, doanh nghiệp quản lý tình hình đi làm của nhân viên một cách hiệu quả hơn

 Góp phần làm nâng cao chất lượng dạy và học ở nhà trường cùng chất lượng sinh viên đầu ra Góp phần nâng cao nhận thức, trách nhiệm của nhân viên để có thể hoàn thành tốt công việc được giao, đem lại lợi nhuận cho công ty, từ đó phát triển nền kinh tế đất nước

Trang 23

 Nghiên cứu, tìm hiểu và ứng dụng các thuật toán xử lý ảnh vân tay vào việc điểm danh sinh viên, góp phần đưa công nghệ nhận diện dấu vân tay áp dụng vào thực tiễn của cuộc sống

 Cải tiến thành công công thức tính Trường định hướng của ảnh giúp giảm bớt các lệnh dư thừa cho máy tính và làm tăng tốc độ thực thi

 Phát triển thành công kỹ thuật phát hiện biên dành riêng cho ảnh vân tay

 Phát triển thành công kỹ thuật dò theo đường vân trên ảnh vân tay sau khi làm mảnh

để loại bỏ những đường vân dư thừa dựa trên ý tưởng của thuật toán “Dò theo đường vân” trên ảnh xám

 Cải tiến thành công phương pháp đối sánh vân tay dựa trên việc tổng hợp những ưu điểm của những phương pháp đi trước

 Phát triển thành công phương pháp đối sánh vân tay lấy các chỉ số PointCare làm gốc

 Cải tiến thành công phương pháp đối sánh vân tay thông qua độ lệch góc giữa đường thẳng nối các đặc trưng với trục hoành trong hệ tọa độ Oxy dựa trên phương trình đường thẳng của chúng

 Nhóm nghiên cứu cũng đã thực nghiệm trên 3000 trường hợp đối sánh giữa các cặp ảnh vân tay khác nhau để qua đó kiểm nghiệm tính đúng đắn của thuật toán, đồng thời xác định ngưỡng Hamming distance – ngưỡng mức độ giống nhau giữa hai vân tay

Trang 24

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 GIỚI THIỆU VỀ NỀN TẢNG LẬP TRÌNH WINDOWS PHONE

a Giới thiệu về hệ điều hành Windows Phone

Windows Phone là hệ điều hành dành cho Smartphone được sản xuất bởi một trong những công ty phần mềm hàng đầu thế giới – Microsoft Windows Phone được phát triển từ hệ điều hành Windows Mobile vốn đã đạt được một số thành công trước đó Tuy nhiên, nó không phải là một sự thay thế cho Windows Mobile, mà là một đứa con cưng được kế thừa tất cả những cái hay, cái đẹp của Windows Mobile nhưng với một nền tảng mạnh mẽ hơn cho một loạt các thiết bị và các kịch bản ứng dụng chạy trên nó Bên cạnh

đó, Windows Phone là một thương hiệu thiết bị di động mới, tích hợp một loạt các tính năng cần thiết để xây dựng các ứng dụng đáp ứng các nhu cầu của doanh nghiệp và người tiêu dùng, cho phép các nhà phát triển dễ dàng tạo ra các ứng dụng tương tác mạnh mẽ, hấp dẫn, và được sử dụng lại những kỹ năng cũng như kiến thức của họ môi trường phát triển hiện đại Chẳng hạn như Silverlight của Microsoft® và XNAMicrosoft®

Hệ điều hành Windows Phone 7 được giới chuyên môn đánh giá cao về khả năng thực thi ổn định và mượt Với Windows Phone, Microsoft có lý do để tin tưởng rằng hãng

sẽ giành được một khối lượng lớn thị phần trên thị trường smartphone bởi sự tăng trưởng mạnh mẽ về thị phần của Windows Phone trong thời gian gần đây Hệ điều hành mới của Microsoft được đánh giá hoàn hảo với nhiều tính năng hiện đại Những ứng dụng phát triển của Windows Phone sẽ thiên về giải trí, mang những tính năng kết nối mạng xã hội Những ứng dụng này do các nhà phát triển bên ngoài phát triển

b Những yếu tố cơ bản trên Windows Phone

Tất cả các ứng dụng Windows Phone được viết trên nền tảng NET, ngôn ngữ lập trình được sử dụng là C# Bộ công cụ lập trình Windows Phone là Microsoft Visual Studio từ 2010 trở lên, bao gồm XNA Game Studio và một trình giả lập điện thoại Microsoft cũng cung cấp khả năng chỉnh sửa giao diện và tạo các hiệu ứng động cho các ứng dụng Silverlight bằng cách sử dụng Microsoft Expression Blend.[8]

Các nền tảng Silverlight và XNA cho Windows Phone chia sẻ một số thư viện sử dụng chung, nhưng không thể lập trình một ứng dụng dựa trên cả hai

Silverlight cung cấp khả năng viết các chương trình có thể phân loại như các ứng dụng hoặc tiện ích Các chương trình này được xây dựng từ sự kết hợp của XAML và các đoạn mã XAML bao gồm các thẻ định nghĩa giao diện, bố trí các điều khiển trên giao diện của ứng dụng Các đoạn mã trong XAML cũng có thể thực hiện một số khởi tạo và

xử lý logic, nhưng thường được chuyển xuống xử lý các sự kiện từ các điều khiển Silverlight cho Windows Phone là một phiên bản phát triển từ Silverlight 3 bao gồm một

số tính năng và cái tiến sử dụng trên điện thoại

XNA được sử dụng để viết các trò chơi với hiệu suất cao Với các trò chơi 2D, ta

có thể định nghĩa các mảng đồ họa, hình nền dựa trên bitmap xuất hiện trong trò chơi 3D, XNA cung cấp khả năng định nghĩa các mô hình trong không gian 3D Các hành động

Trang 25

của trò chơi, trong đó bao gồm di chuyển các đối tượng đồ họa trên màn hình và thao tác bởi người sử dụng, được đồng bộ bởi các vòng lặp XNA tích hợp trong game

1.2 XÂY DỰNG ỨNG DỤNG THEO MÔ HÌNH 3 LỚP

Trong phát triển ứng dụng, để dễ quản lý các thành phần của hệ thống, cũng như không bị ảnh hưởng bởi các thay đổi, người ta hay nhóm các thành phần có cùng chức năng lại với nhau và phân chia trách nhiệm cho từng nhóm để công việc không bị chồng chéo và ảnh hưởng lẫn nhau Trong phát triển phần mềm, người ta cũng áp dụng cách phân chia chức năng này, trong đó mô hình 3 lớp phổ biến nhất Việc xây dựng ứng dụng theo mô hình 3 lớp mang đến lợi ích tái sử dụng lại các thành phần có sẵn và dễ dàng cập nhật Một ứng dụng được xây dựng theo mô hình trên sẽ bao gồm 3 lớp:

 Có nhiệm vụ xử lý, kiểm tra các dữ liệu nhập

 Tiếp nhận các sự kiện của người dùng, kiểm tra dữ liệu được nhập vào, gửi yêu cầu xử lý xuống tầng kế tiếp

Trang 26

1.2.1 Lớp xử lý

 Đây là lớp xử lý chính các dữ liệu trước khi được đưa lên hiển thị trên màn hình hoặc xử lý các dữ liệu trước khi lưu dữ liệu xuống cơ sở dữ liệu

 Đây là nơi để kiểm tra các yêu cầu nghiệp vụ, tính toán các yêu cầu nghiệp vụ

 Tại đây các tính năng tính toán trong chương trình sẽ được thực thi

Năm 1568, một người Ý tên Danielo Barbaro phát minh ra một chiếc máy thô sơ cho phép in ra giấy những hình ảnh ghi nhận được Những năm sau đó, chiếc máy trên được cải tiến với hình ảnh ngày càng sắc nét và ngày càng nhanh hơn ban đầu Mãi đến năm 1975, Steven Sasson cho ra đời một chiếc máy ảnh lưu được hình ảnh dạng trắng đen Qua nhiều thập kỉ, máy ảnh kỹ thuật số ra đời đáp ứng mọi nhu cầu lưu trữ hình ảnh màu với độ sắc nét cao, tốc độ xử lý nhanh và dung lượng ảnh thấp

Càng ngày con người càng đề cao việc lưu trữ hình ảnh ở những mức độ tối ưu hơn

và cũng chính vì vậy việc xử lý các hình ảnh được lưu trữ là một trong những vần đề đang được nhắc đến nhiều nhất

Xử lý ảnh là thực hiện một loạt các thao tác xử lý sao cho từ ảnh đầu vào sẽ cho ra được các kết quả đầu ra như mong muốn Kết quả đầu ra có thể là một ảnh tốt hơn ảnh đầu vào hay chỉ đơn giản là một kết luận về hình ảnh đó

Ảnh có thể được xem là một tập hợp các điểm ảnh, mỗi điểm ảnh được đặc trưng bởi một giá trị màu tương ứng Tùy vào các loại ảnh, các điểm ảnh sẽ có các khoảng giá trị màu khác nhau Có ba loại ảnh phổ biến hiện nay: ảnh màu, ảnh mức xám (hay còn gọi

là ảnh xám) và ảnh nhị phân (hay còn gọi là ảnh trắng đen)

Khoảng giá trị màu của ảnh trắng đen là 2, bao gồm 2 màu trắng và đen Khoảng giá trị màu của ảnh xám là một số 8 bit, bao gồm 28

= 256 giá trị màu từ tối đến sáng Khoảng giá trị màu của ảnh màu là sự kết hợp giữa 3 màu cơ bản – đỏ, lục và lam, mỗi màu là một số 8 bit Như vậy, khoảng giá trị màu của ảnh màu là 2563

= 16 777 216 giá trị.[1]

Thông thường, việc xử lý ảnh không được thực hiện trên ảnh màu vì khoảng giá trị của nó quá lớn, gây lãng phí thời gian, hao hụt tài nguyên và tổn hại bộ nhớ Tuy nhiên,

đa số các thiết bị lưu trữ ảnh hiện nay đều chỉ cho phép lưu hình ảnh dưới dạng ảnh màu

Do đó, để cho việc xử lý ảnh được thực hiện một cách nhanh chóng, dễ dàng và chính xác

Trang 27

đòi hỏi phải chuyển ảnh màu sang các loại ảnh có khoảng giá trị màu thấp hơn chẳng hạn như ảnh xám hoặc ảnh nhị phân

Việc chuyển ảnh màu sang ảnh xám hay ảnh nhị phân tùy thuộc vào mục đích của quá trình xử lý ảnh Nếu quá trình xử lý ảnh đòi hỏi mức độ chính xác nhất định thì ảnh xám là lựa chọn thích hợp, nhưng nếu mục đích chính của quá trình xử lý chỉ là thời gian thì ảnh nhị phân lại là lựa chọn tối ưu hơn Tuy nhiên, với tốc độ xử lý của máy tính, thì khoảng thời gian chênh lệch giữa việc xử lý trên ảnh xám và ảnh nhị phân là không đang

kể đối với con người Chính vì vậy, việc lựa chọn xử ý trên ảnh xám sẽ cho kết quả có độ chính xác tương đối cao trong khoảng thời gian có thể chấp nhận được là lựa chọn tối ưu nhất

1.4 TỔNG QUAN VỀ VÂN TAY

có chung một hệ thống gen di truyền nhưng vân tay ở mười đầu ngón tay của mỗi cá nhân khác nhau.[1]

Vân tay có tính phân biệt, vì thế mỗi người chỉ có một vân tay duy nhất Bên cạnh

đó, vân tay còn có tính bất biến, ngoại trừ chấn thương hoặc phẫu thuật gây ra sẹo sâu, hoặc các bệnh như bệnh phong làm tổn hại đến lớp da hình thành của đường vân tay, dấu vân tay sẽ không di chuyển hoặc thay kết cấu trong suốt cuộc đời của một người

1.4.2 Lịch sử nhận dạng vân tay

Tuy công nghệ nhận dạng vân tay được ứng dụng trong 1 thế kỷ gần đây, nhưng theo các nhà sử học, ngay từ thời tiền sử ở triều đại Babylon cổ đại, con người đã sử dụng vân tay in trên bảng đất sét cho các hoạt động giao dịch kinh doanh.[11]

Sách sử học của Trung Quốc cho thấy từ 221-206 trước Công nguyên đã viết chi tiết việc nhà Tần sử dụng dấu vân tay làm bằng chứng trong quá trình điều tra vụ trộm

Hình 1.2: Giao dịch kinh doanh sử dụng dấu vân tay làm tín

Trang 28

Đến thế kỷ 16, các kỹ thuật vân tay khoa học hiện đại mới xuất hiện và từ đó các lí thuyết và chương trình mô tả, nhận dạng vân tay mới phát triển mau chóng Năm 1684, Tiến sĩ Nehemiah, là người châu Âu đầu tiên công bố về việc nhận dạng cá nhân thông qua các đường vân da

Năm 1788, Mayer đã mô tả chi tiết thông tin giải phẫu của vân tay để đặc tính hóa, nhận dạng các đặc tính vân tay.1870, Tiến sĩ Henry Faulds, Bác sĩ phẫu thuật người Anh-Giám Đốc Bệnh viện Tsukiji ở Tokyo, Nhật Bản, đã lên nghiên cứu về "rãnh da" sau khi nhận thấy dấu tay trên mẫu vật gốm của "thời tiền sử” Tiến sĩ Faulds không chỉ được công nhận tầm quan trọng của dấu vân tay như một phương tiện nhận dạng, đồng thời còn

là một phương pháp phân loại là tốt Năm 1880, Tiến sĩ Henry Faulds xuất bản một bài báo trên tạp chí khoa học, "thiên nhiên" (Nature) Ông đã thảo luận dấu vân tay như một phương tiện nhận dạng cá nhân, và việc sử dụng máy in mực như một phương pháp cho việc thu thập dấu vân tay Ông cũng được ghi nhận với nhận dạng vân tay đầu tiên của một dấu vân tay nhờn để lại trên một chai rượu

Hình 1.3: Tiến sĩ Henry Faulds

Năm 1926 Tiến sĩ Harold Cummins được xem là cha đẻ của ngành nghiên cứu khoa học dấu vân tay đưa ra lí luận chỉ số cường độ vân tay PI (Pattern Intensity) Giá trị

RC, số lượng tam giác điểm, hình dạng vân tay, vị trí hình dạng vân tay ở những ngón tay khác nhau có liên quan đến tiềm năng và trí tuệ của con người.Ông nghiên cứu ra rằng dấu vân tay được hình thành đồng thời với sự hoàn thiện các cấu trúc của não bộ

Đầu thế kỉ 20, cấu trúc của vân tay mới được mô tả một cách khá đầy đủ, đã tạo nền tảng cho việc phát triển công nghệ nhận dạng vân tay và các lĩnh vực khoa học liên quan đến sinh trắc học, nghiên cứu về tính cách và sức khỏe con người Cũng từ đầu thế

kỉ 20, nhận dạng vân tay chính thức được chấp nhận như một phương pháp nhận dạng cá nhân có giá trị và trở thành chuẩn trong pháp luật

Trang 29

Hình 1.4: Vân tay được sử dụng trên chứng minh thư

1.4.3 Các phương pháp phân loại vân tay

Vân tay có 2 đặc trưng chính: tâm (core) và tam phân điểm (delta) Các phương pháp phân loại vân tay đều dựa trên 2 đặc điểm này Dựa vào số lượng tâm và tam phân điểm, ta có thể xác định được loại vân tay.[2]

1.4.3.1 Các điểm đặc trưng trên ảnh vân tay

Hình 1.5 : Core và Delta trên vân tay

Một vài loại core :

Hình 1.6 : Các loại Core vân tay

Trang 30

a Trích xuất các điểm Singularity

a.1 Trường định hướng (orientation field)

Ảnh vân tay là ảnh định hướng, các đường vân là các đường cong theo các hướng xác định Góc hợp bởi phương của một điểm trên đường vân với phương ngang được gọi

là hướng của điểm đó Tập hợp các hướng của các điểm trên ảnh vân tay gọi là trường định hướng của ảnh vân tay đó

Hình 1.8: ảnh vân tay (a) và trường định hướng của nó (b)

Trang 31

Phương pháp xác định trường định hướng như sau:

 Chia ảnh vân tay thành các khối nhỏ hơn kích thước WxW

 Tính Gradient theo hai hướng x, y là Gx, Gy tại mỗi điểm (pixel) trong khối Khi đó hướng của điểm chính giữa của khối được xác định theo công thức:

(

∑ ∑

∑ ∑

)

Trong đó:

 : là hướng của khối (radian)

 : là Gradient theo hướng x của điểm ảnh [i,j]

 : là Gradient theo hướng y của điểm ảnh [i,j]

 : là kích thước của khối

a.2 Xác định các điểm singularity bằng chỉ số Poincare

Giả sử (i,j) là một điểm bất kỳ trên ảnh vân tay, C là một đường cong khép kín xung quanh (i,j) thì chỉ số Poincare tại (i,j) là tổng đại số các độ sai lệch hướng của các điểm liền kề nhau trên đường cong C

; với

Trong đó:

 n : là tổng số điểm trên đường cong “số” C

 : là hướng tại điểm (x,y)

Dựa vào chỉ số Poincare ta có thể xác định các điểm singularity như sau:

{

Trang 32

Hình 1.9: Cách tính chỉ số Poincare tại điểm (i,j) với n = 8

b Trích xuất các điểm Minutiae

Có hai phương pháp chính để tìm các điểm minutiae: trích các điểm minutiae từ ảnh nhị phân và trích các điểm minutiae trực tiếp từ ảnh xám

b.1 Trích các điểm minutiae từ ảnh binary

Hình 1.10: Sơ đồ thuật toán trích các điểm Minutiae từ ảnh xám

Để trích xuất các điểm minutae từ ảnh vân tay đầu vào, việc đầu tiên cần làm là chuyển hóa thành ảnh mức xám, sau đó sử dụng bộ lọc thích hợp để nâng cao chất lượng ảnh, cải thiện các chi tiết bị mất và làm nổi đường vân, biến đổi ảnh xám ban đầu thành ảnh binary (có giá trị là 0 hoặc 1) tương ứng.[2]

Sau đó, các điểm minutiae sẽ được trích như sau: giả sử (x,y) là một điểm trên đường vân đã được làm mảnh và N0, N1, …, N7 là 8 điểm xung quanh nó thì:

 (x,y) là một điểm kết thúc nếu 

7

0

1

i i

N

 (x,y) là một điểm rẽ nhánh nếu

7

0

2

i i

N

Trang 33

Hình 1.11 :Phân loại đặc trưng Minutiae

a) một phần điểm của vân tay; b) điểm kết thúc; c) điểm rẽ nhánh

b.2 Trích các điểm minutiae từ ảnh xám

Giả sử I là một ảnh xám có kích thước m x n, coi chiều thứ ba z là mức xám tại điểm (i,j) Theo quan điểm toán học, đường vân là tập hợp các điểm cực đại dọc theo một hướng xác định Việc xác định các điểm Minutiae trực tiếp từ ảnh xám dựa vào thuật toán

dò theo đường vân Thuật toán này dựa vào việc xác định các điểm cực đại dọc theo đường vân Điểm cực đại có thể được xác định bằng cách so sánh mức xám giữa các điểm trong thiết diện Ω.[2]

Xác định điểm cực đại

Giả sử (i t, j t),  ,  là thiết diện của đường vân có điểm chính giữa là (i t ,j t ),

hướng của thiết diện    /2, t là hướng của đường vân tại (i t , j t ) và bề rộng

của thiết diện m = 2σ + 1 pixel Khi đó, Ω được xác định như sau:

))sin

*(

),cos

*(

()(

))sin

*(

),cos

*(

()(

))(

),((

),(,),(

|),(

, ,

, ,

end end

t t

start start

end end start start

i round i

round j

i

i round i

round j

i

j i j

i segment j

i I j i j i

{

Điểm cực đại có thể được xác định bằng cách so sánh mức xám giữa các điểm trong Ω

Hình 1.12: Thiết diện của đườngng vân (i s , j s )

Trang 34

Thuật toán tìm các điểm Minutiae bằng cách dò theo đường vân được thực hiện như sau:

 Lấy một điểm bất kỳ (is , js) trên ảnh I

 Tìm hướng φs tại điểm (is , js)

 Tìm điểm cực đại (ic , jc) gần (is , js) nhất

Hình 1.13: Điểm cực đại (i c , j c ) gần (i s , j s ) nhất

 Tìm hướng φc tại điểm (ic , jc)

 Dịch chuyển theo hướng φc một đoạn μ

 Tiếp tục quá trình này để dò theo theo đường vân cho đến khi không phát hiện được điểm cực đại (ic , jc) thì đó là điểm Ridge Ending hoặc chạm vào một đường vân khác thì đó là điểm Bifurcation (mỗi đường vân sau khi được dò theo được gán nhãn)

 Tiếp theo chọn một điểm (is , js) khác và thực hiện lại quá trình trên cho đến khi

dò hết tất cả các đường vân

Hình 1.14: Dịch chuyển theo đường vân từng đoạn μ

Trang 35

1.5 MÔ HÌNH CLIENT – SERVER

Mô hình Client-Server là một mô hình khá nổi tiếng và được áp dụng một cách rộng rãi trong mạng máy tính Mô hình bao gồm một hoặc nhiều máy con (Client - đóng vai trò là máy khách) và một máy chủ (Server đóng vai trò là máy cung cấp dịch vụ) Khi một máy con (Client) cần một thông tin nào đó, nó sẽ gửi một yêu cầu (request) đến máy chủ (Server), máy chủ sẽ tiếp nhận yêu cầu để xử lý à trả kêt quả về cho máy con.[12]

Hình 1.15: Mô hình Client – Server với một loại client

Server cũng có thể là những chương trình hoặc những ứng dụng mà có chức năng hoạt động như một nhà cung cấp dịch vụ trên mạng Các chương trình hoặc ứng dụng Server này chấp nhận tất cả các yêu cầu hợp lệ được gửi đến từ bất kì nơi nào trên mạng, sau đó chúng thi hành dịch vụ và trả kết quả về cho máy tính đã gửi yêu cầu

Client có thể là những chương trình, ứng dụng hay bất kì thiết bị điện tử nào có kết nối mạng internet chứ không chỉ riêng máy tính Một chiếc điện thoại thông minh hay một chiếc máy tính bảng đều có thể là một Client Một cách tổng quát, một chương trình hoặc một thiết bị được xem là Client khi nó thực hiện việc gửi một hoặc nhiều yêu cầu tới một máy tính hoặc một chương trình Server có chức năng tiếp nhận yêu cầu, và sau đó nó

sẽ chờ câu trả lời từ phía Server

Hình 1.16 Mô hình Client – Server với nhiều loại client

Trang 36

Server và Client giao tiếp với nhau bằng các thông điệp thông qua một cổng truyền thông tương tác Server và Client chỉ có thể tương tác nhau khi giữa chúng có một chuẩn

để giao tiếp, chuẩn này được gọi là giao thức Khi một Client muốn yêu cầu một Server cung cấp một thông tin nào đó, Client đó phải tuân theo giao thức mà Server đưa ra

Với sự phát triển một cách mạnh mẽ của mạng máy tính như hiện nay, rất nhiều giao thức chuẩn khác nhau ra đời nhằm đáp ứng mọi yêu cầu khắt khe nhất Các giao thức chuẩn được sử dụng rộng rãi nhất hiện nay như: giao thức TCP/IP, giao thức SNA của IBM, OSI, ISDN, X.25 hoặc giao thức LAN-to-LAN NetBIOS

Ưu điểm của mô hình client-server:

 Quản lý tập trung dữ liệu: dữ liệu được lưu trữ tập trung trên server thay vì nằm rải rác ở nhiều nơi khác nhau, điều này giúp đơn giản hóa việc truy xuất và cập nhật dữ liệu đồng thời quản lý dữ liệu một cách hiệu quả

 Dễ dàng bảo trì: nhờ khả năng quản lý tập trung mà công việc bảo trì, bảo dưỡng cũng trở nên nhẹ nhàng và dễ dàng hơn Phần lớn các thao tác bảo trì chỉ cần thực hiện trên Server

 Bảo mật: dữ liệu được lưu trữ tập trung trên Server đồng nghĩa với việc kiểm soát chúng dễ dàng hơn

Mô hình Client-Server phù hợp cho các chương trình, ứng dụng phải phục

vụ nhiều Client (chẳng hạn như các ứng dụng website) Mô hình cũng đặc biệt thích hợp khi cần tập trung hóa dữ liệu và công tác quản lý, hoặc khi ứng dụng cần phải hỗ trợ nhiều loại Client là nhiều thiết bị khác nhau

WINDOWS COMMUNICATION FOUNDATION (WCF)

Windows Communication Foundation (WCF) là một công nghệ mới của hãng Microsoft Nó cho phép phát triển các ứng dụng trong môi trường phân tán gồm nhiều client giao tiếp với service [3]

WCF là mô hình lập trình hợp nhất của Microsoft để xây dựng các ứng dụng hướng dịch vụ, cho phép các nhà phát triển xây dựng các ứng dụng với các giải pháp an toàn, đáng tin cậy và các giao dịch Nó tích hợp được trên nhiều nền tảng và tương thích với cả ứng dụng đã được xây dựng trước đó

WCF được xây dựng trên NET Framework của chính Microsoft và làm đơn giản hóa sự phát triển của các hệ thống kết nối Nó giúp thống nhất các hệ thống phân tán liên kết với nhau Kiến trúc mở rộng của nó là hỗ trợ nhiều transport, các mẫu tin nhắn (messagsing), các mã hóa (encodings), các phương thức tuyền tải trên mạng và các mô hình lưu trữ

Mục đích của WCF là cung cấp một mô hình lập trình duy nhất có thể được sử dụng để tạo ra các dịch vụ trên nền tảng NET cho các tổ chức

Trang 37

tự như vậy Contract định nghĩa các đặc tả trong hệ thống bản tin

RUNTIME SERVICE

Lớp Runtime service (dịch vụ thực thi) chứa các hành xử sẽ xảy ra trong quá trình thực thi của dịch vụ

MESSAGE

Hình 1.18: Các kênh trao đổi bản tin trong WCF

Lớp Message là tập hợp các kênh Mỗi kênh là một thành phần xử lý bản tin theo một cách nào đó Mỗi tập các kênh thường được gọi là ngăn xếp kênh Các kênh làm việc trên bản tin và trên đầu đề của bản tin Lớp này khác với lớp Runtime service chủ yếu bởi

sự khác sự khác nhau trong việc xử lý nội dung bản tin

Trang 38

HOST AND ACTIVATION

Nhìn một cách tổng thể thì một dịch vụ thực chất là một chương trình Cũng giống như các chương trình khác, một dịch vụ cần phải chạy trong một tệp thực thi Dịch vụ này thường được gọi là dịch vụ lưu trữ

Các dịch vụ còn có thể được lưu trữ, hoặc chạy trong một tệp thực thi được quản lý bởi một agent bên ngoài như IIS hay Windows Activation Services (WAS) WAS cho phép WCF được kích hoạt một cách động khi phân phối tới một máy tính có chạy WAS

1.6 NGÔN NGỮ TRUY VẤN DỮ LIỆU LINQ

1.6.1 Giới thiệu chung

LINQ (Language Intergrated Query) là một công nghệ trên nền tảng NET 3.5, cung cấp một giải pháp hợp nhất cho việc truy vấn dữ liệu, tích hợp cách truy vấn theo cú pháp SQL vào ngôn ngữ lập trình (cụ thể như C# hay VB.NET), áp dụng cho tất cả các dạng dữ liệu từ Object (đối tượng) cho đến CSDL quan hệ và cả XML [4]

LINQ có kiến trúc như sau :

Hình 1.19: Mô hình kiến trúc LINQ

LINQ cung cấp 3 phần chính gồm: LINQ to Objects, LINQ to XML và LINQ to ADO.NET (bao gồm: LINQ to SQL và LINQ to DataSets)

1.6.2 Vai trò

LINQ to Entities cho phép người lập trình mô hình hóa một cơ sở dữ liệu dùng các lớp NET Sau đó, người lập trình có thể truy vấn cơ sở dữ liệu dùng LINQ cũng như cập nhật/ thêm/ xóa dữ liệu từ đó

LINQ to Entities hỗ trợ đầy đủ transaction, view và các stored procedure, function

Nó cũng cung cấp một cách dễ dàng để thêm khả năng kiểm tra tính hợp lệ của dữ liệu và các quy tắc vào trong mô hình dữ liệu của người lập trình

Trang 39

CHƯƠNG 2: XÂY DỰNG HỆ THỐNG PHẦN MỀM

2.1 THIẾT KẾ HOẠT ĐỘNG

Hiện nay, hầu hết các trường học đều thực hiện điểm danh theo phương pháp truyền thống: giảng viên sử dụng danh sách sinh viên của lớp học, gọi tên điểm danh từng sinh viên Giả sử số lượng sinh viên của một lớp học một buổi trung bình là 100 người, mất khoảng 10 giây điểm danh một người thì một lần điểm danh lớp học phải mất tới 1000 giây, tức hơn 16 phút Có thể nhận thấy rõ ràng hình thức điểm danh này đang làm lãng phí lớn công sức và thời gian giảng dạy của giảng viên, cùng với những bất cập của nó mang lại, đã ảnh hưởng không nhỏ đến việc truyền dạy kiến thức cho sinh viên trong buổi học

Để giải quyết những thách thức của quy trình điểm danh trong thực tế bằng giải pháp tin học hóa, hệ thống phần mềm được xây dựng gồm ba thành phần chính: server xử

lý điểm danh, client bao gồm ứng dụng trên smartphone và ứng dụng website quản trị thông tin trên điện thoại di động của người dùng

Server làm nhiệm vụ chính là xử lý việc thực hiện điểm danh sinh viên giữa ứng dụng client trên điện thoại di động và cơ sở dữ liệu Khi có yêu cầu thực hiện điểm danh

từ client, server nhận được thông tin sinh viên cần điểm danh và danh sách những đặc trưng vân tay đã được xử lý từ client, server sẽ dựa vào những thông tin đã được cung cấp, truy xuất cơ sở dữ liệu để lấy được những thông tin tương ứng trong cơ sở dữ liệu của sinh viên đó và thực hiện đối sánh chúng Nếu kết quả trả về là phù hợp, server sẽ ghi nhận lần điểm danh của sinh viên, và thông báo kết quả về ứng dụng

Website được cung cấp cho các đối tượng là phòng quản lý đào tạo nhằm mục đích theo dõi thông tin sinh viên, giảng viên, quản lý lịch giảng dạy của giảng viên, thời khóa biểu môn học và quan trọng nhất là thông tin điểm danh của sinh viên Dựa vào website, các thầy, cô có thể dễ dàng theo dõi, quan tâm tình hình đi học của sinh viên, từ đó nhà trường có thể lên kế hoạch nâng cao chất lượng đào tạo

Ứng dụng Client trên điện thoại di động cung cấp chức năng chính cho sinh viên là thực hiện điểm danh Thông tin điểm danh về lớp học, môn học, danh sách sinh viên môn

đó được nhận bằng cách xác định vị trí hiện tại và gửi về cho server xử lý, nếu phù hợp với vị trí của phòng học thì server trả về kết quả Ứng dụng client được tích hợp các thuật toán xử lý ảnh vân tay, sau khi thu được danh sách các đặc trưng vân tay sẽ gửi đến server

để thực hiện điểm danh Bên cạnh đó, ứng dụng client còn tích hợp phần kiểm nghiệm thuật toán đối sánh vân tay, giúp cho người dùng hiểu rõ quá trình xử lý và kiểm tra tính chính xác của thuật toán

Cơ sở dữ liệu quản lý thông tin được xây dựng sau khi phân tích những thông tin cần thiết để quản lý việc điểm danh sinh viên và những chức năng phụ như quản lý thông tin sinh viên, giảng viên

Trang 40

Mô hình hoạt động chung:

Hình 2.1: Mô hình hoạt động hệ thống

2.2 PHÂN TÍCH THIẾT KẾ CƠ SỞ DỮ LIỆU QUẢN LÝ

THÔNG TIN

Các chức năng chính của cơ sở dữ liệu:

 Quản lý thông tin sinh viên

 Quản lý thông tin giảng viên

 Quản lý lịch giảng dạy của giảng viên

 Quản lý thời khóa biểu của sinh viên

 Quản lý thông tin điểm danh của sinh viên

 Quản lý đặc trƣng vân tay của từng sinh viên

2.2.1 Mô hình ý niệm truyền thông

2.2.1.1 Quy trình tra cứu thông tin:

Ngày đăng: 07/12/2020, 22:46

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] PGS.TS Nguyễn Quang Hoan, “Giáo trình xử lý ảnh”, Học viện công nghệ bưu chính viễn thông, 2006 Sách, tạp chí
Tiêu đề: Giáo trình xử lý ảnh
[2] Nguyễn Hoàng Huy, Luận Văn Thạc Sỹ “Nhận Dạng Vân Tay”, Đại học Bách Khoa TPHCM, 2010 Sách, tạp chí
Tiêu đề: Nhận Dạng Vân Tay
[3] DPE Team, “Giới thiệu tổng quan về WCF”, Microsoft Vietnam Sách, tạp chí
Tiêu đề: Giới thiệu tổng quan về WCF
[5] TS.Đỗ Năng Toàn - TS.Phạm Việt Bình, “Giáo Trình Xử Lý Ảnh”, Đại học Thái Nguyên, 2007 Sách, tạp chí
Tiêu đề: Giáo Trình Xử Lý Ảnh
[6] Dương Hiếu Đẩu - Nguyễn Trung Nhơn, Bài Báo Khoa Học “Áp Dụng Thuật Toán Cải Thiện Dấu Vân Tay Bằng Phép Lọc Gabor”, Đại học Cần Thơ, 2011 Sách, tạp chí
Tiêu đề: Áp Dụng Thuật Toán Cải Thiện Dấu Vân Tay Bằng Phép Lọc Gabor
[7] Nhóm Cảm biến Nhận dạng vân tay, Lớp ĐH Cơ điện tử, “Đồ án cảm biến nhận dạng vân tay”, ĐH Công nghiệp Hà Nội, 2010.Tài liệu tham khảo nước ngoài Sách, tạp chí
Tiêu đề: Đồ án cảm biến nhận dạng vân tay”, ĐH Công nghiệp Hà Nội, 2010
[8] Charles Petzold, “Programming Windows Phone 7”, Microsoft Sách, tạp chí
Tiêu đề: Programming Windows Phone 7
[9] Philippe Parra, “Fingerprint minutiae extraction and matching for identification procedure”, University of California, San Diego Sách, tạp chí
Tiêu đề: Fingerprint minutiae extraction and matching for identification procedure
[10] Lisa Thalheim, “A simple matching algorithm for fingerprint minutiae datasets in accordance with DIN V 66400”.Trang web tham khảo Sách, tạp chí
Tiêu đề: A simple matching algorithm for fingerprint minutiae datasets in accordance with DIN V 66400”

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