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

Thiết kế và thi công mô hình cửa tự động sử dụng nhận diện khuôn mặt

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 (9.23 MB, 106 trang )

TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ

CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

----o0o---Tp. HCM, ngày 03 tháng 08 năm 2020

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên:

Trương Nguyễn Hoàng Long
Nguyễn Minh Khoa

MSSV: 15141200
MSSV: 15141183

Chuyên ngành:

Kỹ thuật Điện - Điện tử

Mã ngành:

141

Hệ đào tạo:

Đại học chính quy


Mã hệ:

15

Khóa:

2015

Lớp: 15141DT1

I. TÊN ĐỀ TÀI: THIẾT KẾ VÀ THI CƠNG MƠ HÌNH CỬA TỰ ĐỘNG SỬ
DỤNG NHẬN DIỆN KHUÔN MẶT
II. NHIỆM VỤ
1. Các số liệu ban đầu:
Để thực hiện đồ án lần này gồm:
Một Raspberry Pi model 3B, một Camera Pi V2.1, một máy tính với phần mềm
MATLAB hỗ trợ xử lý ảnh, cơ sở dữ liệu để nhận diện gồm 250 ảnh khuôn mặt của 5
người (mỗi người 50 ảnh) và hệ thống cửa khoá.
2. Nội dung thực hiện:
- Nghiên cứu tài liệu về Raspberry Pi, kết nối Raspberry Pi và máy tính
thơng qua MATLAB.
- Nghiên cứu tài liệu xử lý ảnh, phương pháp nhận diện khn mặt, các ứng
dụng, mơ hình sử dụng nhận diện khn mặt.
- Tính tốn, lập trình hệ thống
- Thiết kế, thi cơng mơ hình.


- Thử nghiệm, chỉnh sửa hệ thống và đánh giá mơ hình.
- Viết báo cáo và bảo vệ luận văn.
III. NGÀY GIAO NHIỆM VỤ:

16/03/2020
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 12/07/2020
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN:ThS. Nguyễn Duy Thảo
CÁN BỘ HƯỚNG DẪN

BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

ii


TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH

CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM

KHOA ĐIỆN-ĐIỆN TỬ

ĐỘC LẬP - TỰ DO - HẠNH PHÚC

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

----o0o----

Tp. HCM, ngày 3 tháng 8 năm 2020

LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên 1: TRƯƠNG NGUYỄN HOÀNG LONG
Lớp:15141DT1B

MSSV:15141200


Họ tên sinh viên 2: NGUYỄN MINH KHOA
Lớp:15141DT1A

MSSV:15141183

Tên đề tài: THIẾT KẾ VÀ THI CƠNG MƠ HÌNH CỬA TỰ DỘNG SỬ
DỤNG NHẬN DIỆN KHUÔN MẶT

Tuần/ngày

Nội dung

Tuần 1 (16/3 – 22/3)

- Trao đổi với GVHD về đề tài tốt nghiệp

Tuần 2 (23/3 – 29/3)

- Tìm hiểu các tài liệu nghiên cứu có liên
quan

Tuần 3 (30/3 – 5/4)

- Gặp GVHD để phổ biến quy định, chọn đề
tài thực hiện

Tuần 4 (6/4 – 12/4)

- Tìm hiểu về kit Raspberry Pi và cách kết
nối máy tính


Tuần 5(13/4 – 19/4)

- Tìm hiểu các phần mềm, ngơn ngữ lập trình
để kết nối

Tuần 6 (20/4 – 26/4)
Tuần 7 (4/5 – 10/5)

- Báo cáo tiến độ với GVHD
- Tìm hiểu nhận diện khn mặt, các phương
pháp nhận diện khuôn mặt

Tuần 8 (11/5 – 17/5)

- Lựa chọn phần mềm và ngơn ngữ lập trình

Tuần 9 (18/5 – 24/5)

- Báo cáo tiến độ với GVHD

Xác nhận
GVHD

iii


Tuần 10 (25/5 – 31/5) - Viết chương trình nhận diện khuôn mặt,
điều khiển các thiết bị đơn giản
Tuần 11 (1/6 – 7/6 )


- Viết chương trình chính cho mơ hình

Tuần 12 (8/6 – 14/6)

- Lựa chọn linh kiện cho hệ thống, chạy thử
nghiệm

Tuần 13 (15/6 – 21/6) - Thiết kế, xây dựng mơ hình
- Chỉnh sửa hệ thống
Tuần 14 (22/6 – 28/6) - Hồn thiện mơ hình
- Viết báo cáo
Tuần 15 (29/6 – 5/7)

- Chạy thử nghiệm, kiểm tra, đánh giá mơ
hình

Tuần 16 (6/7 – 12/7)

- Hồn thiện cuốn báo cáo

GV HƯỚNG DẪN
(Ký và ghi rõ họ và tên)

iv


LỜI CAM ĐOAN
Đề tài “Thiết kế và thi công mô hình cửa tự động sử dụng nhận diện khn
mặt” này là do nhóm sinh viên chúng em tự thực hiện, dựa vào một số tài liệu trước

đó và khơng sao chép từ tài liệu hay cơng trình đã có trước đó.
TP. Hồ Chí Minh, ngày 03 tháng 08 năm 2020
Người thực hiện đề tài
Nguyễn Minh Khoa Trương Nguyễn Hoàng Long

v


LỜI CẢM ƠN
Để thực hiện và hoàn thành đồ án lần này, nhóm xin gửi lời cảm ơn đến các
thầy cô Khoa Điện – Điện Tử đã tạo điều kiện rất nhiều cho nhóm. Các kiến thức
thầy cơ dạy đã giúp ích rất nhiều cho nhóm hồn thành được đồ án lần này. Một lần
nữa nhóm xin chân thành cảm ơn.
Đặc biệt ,nhóm xin gửi lời cảm ơn sâu sắc đến Thầy Nguyễn Duy Thảo. Người
đã trực tiếp hướng dẫn, đóng góp ý kiến, tạo điều kiện để nhóm em hồn thành được
đồ án tốt nghiệp lần này.
Tiếp đến, nhóm xin cảm ơn đến tất cả các bạn khoa Điện – Điện Tử. Đặc biệt là
những bạn lớp 15141DT đã giúp đỡ nhóm rất nhiều trong thời nhóm thực hiện đồ án.
Những khó khăn mà nhóm gặp phải khi bắt đầu thực hiện đồ án đã được các anh chị
đi trước giúp đỡ rất nhiều.
Nhóm đã cố gắng hồn thành tốt đề tài một cách hồn chỉnh nhất có thể nhưng sẽ
khơng tránh được những sai sót trong q trình nghiên cứu, thực hiện. Rất mong nhận
được sự góp ý từ thầy cơ và các bạn để nhóm có thể hoàn thiện đồ án tốt hơn nữa.

Xin chân thành cảm ơn!
Nhóm thực hiện đề tài
Nguyễn Minh Khoa

Trương Nguyễn Hồng Long


vi


MỤC LỤC
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP................................................................... i
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ........................................ iii
LỜI CAM ĐOAN ............................................................................................. v
LỜI CẢM ƠN.................................................................................................. vi
DANH MỤC HÌNH ......................................................................................... xi
DANH MỤC BẢNG...................................................................................... xiv
CÁC TỪ VIẾT TẮT ....................................................................................... xv
TÓM TẮT

..................................................................................................... xvi

CHƯƠNG I. TỔNG QUAN.............................................................................. 1
1.1. ĐẶT VẤN ĐỀ.................................................................................... 1
1.2. MỤC TIÊU ........................................................................................ 1
1.3. NỘI DUNG NGHIÊN CỨU ............................................................... 2
1.4. GIỚI HẠN ĐỀ TÀI ............................................................................ 2
1.5. BỐ CỤC............................................................................................. 3
CHƯƠNG II. CƠ SỞ LÝ THUYẾT ................................................................. 4
2.1LÝ THUYẾT XỬ LÝ ẢNH ............................................................... 4
2.1.1 Giới thiệu ....................................................................................... 4
2.1.2 Thu nhận ảnh (Image acquision) .................................................... 5
2.1.3 Tiền xử lý ảnh (Image processing) ................................................. 5
2.1.4 Phân đoạn (Segmentation) hay phân vùng ảnh ............................... 5
2.1.5 Biểu diễn ảnh (Image representation) ............................................. 6
2.1.6 Nhận diện và nội suy ảnh (Image recognition and Interpretation) ... 6
2.1.7 Cơ sở tri thức (Knowledge base) .................................................... 6

2.1.8 Mô tả .............................................................................................. 6
2.2. NHỮNG VẤN ĐỀ TRONG XỬ LÝ ẢNH ......................................... 7
2.2.1 Điểm ảnh (Picture Element - Pixel) ................................................ 7
2.2.2 Ảnh số ............................................................................................ 7
2.2.3 Phân loại ảnh .................................................................................. 7
2.2.4 Quan hệ giữa các điểm ảnh ............................................................. 7
vii


2.3. GIỚI THIỆU RASPBERRY PI 3 ....................................................... 9
2.3.1 Giới thiệu ....................................................................................... 9
2.3.2 Thơng tin cấu hình Raspberry Pi 3 ...............................................10
2.3.3

Các ngõ vào ra GPIO ...................................................................11

2.3.4

Ứng dụng .....................................................................................12

2.4

GIỚI THIỆU VỀ CAMERA PI ........................................................13
2.4.1

Giới thiệu .....................................................................................13

2.4.2

Thông số kỹ thuật .........................................................................14


2.4.3

Ứng dụng .....................................................................................14

2.5

2.6

GIỚI THIỆU VỀ MATLAB .............................................................15
2.5.1

Tổng quan ....................................................................................15

2.5.2

Phần mềm MATLAB ...................................................................15

THUẬT TOÁN HISTOGRAM OF ORIENTED GRADIENT .........16
2.6.1

Giới thiệu .....................................................................................16

2.6.2

Ứng dụng của HOG: ....................................................................17

2.6.3 Sơ lược cách hoạt động của thuật tốn ..........................................17
2.6.4
2.7


Tính tốn HOG ............................................................................18
THUẬT TỐN VIOLA – JONES....................................................22

2.7.1 Giới thiệu thuật toán Viola – Jones ...............................................22
2.7.2 Các đặc trưng Haar – Like ............................................................22
2.7.3 Khái niệm Integral Image .............................................................23
2.7.4
2.8

AdaBoost .....................................................................................25

PHƯƠNG PHÁP SUPPORT VECTOR MACHINE ........................27
2.8.1 Khái niệm bộ phân loại SVM .......................................................27
2.8.2

2.9

Multiclass SVM ...........................................................................29

PHƯƠNG PHÁP NHẬN DIỆN KHN MẶT ...............................30
2.9.1

Q trình training .........................................................................30

2.9.2

Q trình nhận diện khn mặt.....................................................30

CHƯƠNG III. TÍNH TỐN VÀ THIẾT KẾ ..................................................32

3.1

GIỚI THIỆU ....................................................................................32

viii


3.2
TÍNH TỐN VÀ THIẾT KỆ HỆ THỐNG....................................... 32
3.2.1 Thiết kế sơ đồ khối hệ thống ........................................................ 32
3.2.2 Tính tốn và thiết kế ..................................................................... 33
3.2.3

Sơ đồ nguyên lý toàn mạch .......................................................... 41

3.2.4 Tính tốn và thiết kế phần mềm.................................................... 41
CHƯƠNG IV: THI CƠNG MƠ HÌNH HỆ THỐNG ....................................... 49
4.1

GIỚI THIỆU .................................................................................... 49

4.2

THI CƠNG MƠ HÌNH HỆ THỐNG ................................................ 49

4.2.1

Chuẩn bị phần cứng...................................................................... 49

4.2.2


Lắp rắp và kiểm tra ...................................................................... 50

4.3

THI CÔNG MÔ HÌNH ..................................................................... 54

4.4

LẬP TRÌNH HỆ THỐNG ................................................................ 56

4.4.1

Lưu đồ giải thuật .......................................................................... 56

4.4.2 Phần mềm MATLAB trên máy tính và Raspberry Pi .................... 61
4.4.3 Thao tác trên phần mềm MATLAB .............................................. 65
4.5

VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC ............... 66

4.5.1

Hướng dẫn sử dụng ...................................................................... 66

4.5.2 Quy trình thao tác ......................................................................... 66
4.5.3

Bảng giá linh kiện ........................................................................ 68


CHƯƠNG V: KẾT QUẢ_ NHẬN XÉT_ĐÁNH GIÁ..................................... 69
5.1

KẾT QUẢ ........................................................................................ 69

5.1.1 Khảo sát phân loại ........................................................................ 69
5.1.2
5.2

Kết quả mơ hình ........................................................................... 74
NHẬN XÉT VÁ ĐÁNH GIÁ........................................................... 77

CHƯƠNG VI. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ............................... 78
6.1

KẾT LUẬN...................................................................................... 78

6.1.1

Kết quả đạt được .......................................................................... 78

6.1.2

Những hạn chế ............................................................................. 78

6.2

HƯỚNG PHÁT TRIỂN ................................................................... 78

TÀI LIỆU THAM KHẢO ............................................................................... 79


ix


PHỤ LỤC......................................................................................................... 81
CODE LẬP TRÌNH XÂY DỰNG CƠ SỞ DỮ LIỆU................................... 81
CODE LẬP TRÌNH CHẠY HỆ THỐNG..................................................... 86

x


DANH MỤC HÌNH
Hình 2. 1 Các bước cơ bản trong xử lý ảnh.................................................................5
Hình 2. 2 Điểm ảnh (x,y) và các điểm lân cận.............................................................8
Hình 2. 3 Lận cận 4 và lân cận 8 của 1 điểm ảnh (x,y)................................................8
Hình 2. 4 Rapberry Pi 3...............................................................................................9
Hình 2. 5 Sơ đồ khối Raspberry Pi 3......................................................................... 10
Hình 2. 6 Vị trí 40 chân GPIO trên Raspberry Pi....................................................... 11
Hình 2. 7 Chi tiết chức năng các chân GPIO............................................................. 11
Hình 2. 8 Raspberry Pi Camera V2.1......................................................................... 13
Hình 2. 9 Sơ đồ khối Camera Pi................................................................................ 14
Hình 2. 10 Logo MATLAB....................................................................................... 15
Hình 2. 11 Giao diện phần mềm................................................................................ 16
Hình 2. 12 Ảnh phân tích Histogram......................................................................... 19
Hình 2. 13 Map giá trị độ lớn gradient vào các bin tương ứng với phương...............20
Hình 2. 14 Biểu đồ Histogram tương ứng với 1 cell.................................................. 21
Hình 2. 15 Các đặc trưng Haar - Like........................................................................ 22
Hình 2. 16 Các đặc trưng Viola và Jones sử dụng trong việc phát hiện khn mặt. . .23
Hình 2. 17 Intergral Image......................................................................................... 24
Hình 2. 18 Mơ tả Intergral Image.............................................................................. 24

Hình 2. 19 Mơ tả bộ lọc Haar – Cascade................................................................... 25
Hình 2. 20 Kết hợp các bộ phân loại yếu thành bộ phân loại mạnh...........................26
Hình 2. 21 Hai đặc trưng cơ bản nhất để xác định khn mặt................................... 27
Hình 2. 22 SVM nhị phân.......................................................................................... 28
Hình 2. 23 SVM đa lớp.............................................................................................. 29
Hình 2. 24 Quá trình training..................................................................................... 30
Hình 2. 25 Quá trình nhận diện.................................................................................. 31
Hình 3. 1 Sơ đồ khối hệ thống................................................................................... 32
Hình 3. 2 Sơ đồ kết nối board Raspberry Pi với các khối khác.................................. 35
Hình 3. 3 Camera phổ thơng và webcam................................................................... 36
Hình 3. 4 Ảnh kết nối camera Pi với Raspberry Pi.................................................... 36
Hình 3. 5 Sơ đồ nguyên lí mạch kích Relay............................................................... 37
Hình 3. 6 Module 2 Relay Opto................................................................................. 38
Hình 3. 7 Sơ đồ nguyên lý nút nhấn.......................................................................... 39
Hình 3. 8 Nguồn adapter 5v 2a, jack cắm micro usb................................................. 40
Hình 3. 9 Nguồn Adapter 12V – 2A.......................................................................... 41
Hình 3. 10 Sơ đồ ngun lý tồn mạch...................................................................... 41
Hình 3. 11 Kết quả phát hiện khuôn mặt.................................................................... 42
xi


Hình 3. 12 Khơng phát hiện được khn mặt............................................................ 43
Hình 3. 13 Phát hiện khn mặt bằng haar-like......................................................... 44
Hình 3. 14 50 ảnh khn mặt khơng trực diện........................................................... 45
Hình 3. 15 50 ảnh khn mặt bị che khuất................................................................ 45
Hình 3. 16 Biểu thị các đặc trưng HOG trên ảnh mẫu............................................... 46
Hình 3. 17 Véctơ đặc trưng HOG.............................................................................. 46
Hình 3. 18 Biểu thị đặc trưng SURF trên ảnh mẫu.................................................... 47
Hình 3. 19 Ma trận đặc trưng SURF biểu diễn ảnh mẫu............................................ 47
Hình 3. 20 Véctơ đặc trưng LBPH biểu diễn ảnh mẫu............................................... 47

Hình 4. 1 Ảnh lắp Camera Pi và Raspberry Pi vào mơ hình...................................... 51
Hình 4. 2 Ảnh kết nối dây dẫn đến nút nhấn, đèn và Module 2 relay........................51
Hình 4. 3 Ảnh đi dây dẫn các Module Relay, nút nhấn và đèn led............................. 52
Hình 4. 4 Ảnh kết nối Module Relay với các thiết bị khác........................................ 52
Hình 4. 5 Vị trí nút nhấn đèn và cửa (bên ngồi)....................................................... 53
Hình 4. 6 Vị trí đặt chốt cửa và cửa (bên trong)......................................................... 53
Hình 4. 7 Tổng quan mơ hình.................................................................................... 54
Hình 4. 8 Vị trí đặt Raspberry Pi và Camera Pi......................................................... 54
Hình 4. 10 Vị trí đặt Relay, chốt cửa, nút nhấn và đèn............................................... 55
Hình 4. 9 Khơng gian nhận diện khn mặt.............................................................. 55
Hình 4. 11 Lưu đồ xây dựng cơ sở dữ liệu hệ thống.................................................. 57
Hình 4. 12 Thư mục mẹ được tạo trước đó................................................................ 58
Hình 4. 13 Các thư mục con được tạo trong chương trình......................................... 58
Hình 4. 14 50 ảnh được chụp và lưu lại trong thư mục con....................................... 59
Hình 4. 15 Bộ phân loại đã được huấn luyện............................................................. 59
Hình 4. 16 Lưu đồ chương trình chính....................................................................... 60
Hình 4. 17 Ảnh Add-Ons trên MATLAB................................................................... 62
Hình 4. 18 Ảnh gói MATLAB hỗ trợ cho Raspberry Pi............................................ 62
Hình 4. 19 Chọn loại model cài đặt........................................................................... 63
Hình 4. 20 Tiến hành cài hệ điều hành cho Raspberry Pi........................................... 63
Hình 4. 21 Chọn loại kết nối cho Raspberry Pi.......................................................... 64
Hình 4. 22 Kiểm tra kết nối sau khi chép hệ điều hành............................................. 64
Hình 4. 23 Các thông số của Raspberry Pi trên MATLAB........................................ 65
Hình 4. 24 Thanh cơng cụ trên Matlab...................................................................... 65
Hình 4. 25 Nơi viết chương trình Editor.................................................................... 66
Hình 4. 26 Workspace và Command Window........................................................... 66
Hình 4. 27 Hướng dẫn dùng phần cứng..................................................................... 67
Hình 4. 28 Lưu đồ hướng dẫn sử dụng...................................................................... 67
Hình 5. 1 Thơng số phân loại..................................................................................... 69
xii



Hình 5. 2 Ảnh bị nhoè khi chụp ............................................................................... 76
Hình 5. 3 Kết quả mơ hình khi nhận diện đúng ........................................................ 76
Hình 5. 4 Kết quả mơ hình khi nhận diện không đúng ............................................. 76

xiii


DANH MỤC BẢNG
Bảng 3. 1 So sánh các kit nhúng ..............................................................................
Bảng 3. 2 Thống kê dòng tiêu thụ của Raspberry Pi.................................................
Bảng 3. 3 Thống kê thông số tiêu thụ của các thiết bị trong mơ hình .......................
Bảng 3. 4 Tỷ lệ phát hiện khn mặt bằng thuật tốn haar-like ................................
Bảng 3. 5 Tỷ lệ phát hiện khuôn mặt ở từng khoảng cách ........................................
Bảng 3. 6 Ảnh chụp ở từng khoảng cách .................................................................
Bảng 3. 7 Kết quả thẩm định chéo của 3 thuật toán phân loại ..................................
Bảng 4. 1 Các linh kiện sử dụng trong mơ hình .......................................................
Bảng 4. 2 Giá thành các linh kiện trong mơ hình .....................................................
Bảng 5. 1 Kết quả nhận diện người A ......................................................................
Bảng 5. 2 Kết quả nhận diện người B ......................................................................
Bảng 5. 3 Kết quả nhận diện người C ......................................................................
Bảng 5. 4 Kết quả nhận diện người D ......................................................................
Bảng 5. 5 Kết quả nhận diện người E ......................................................................
Bảng 5. 6 Kết quả nhận diện người F .......................................................................
Bảng 5. 7 Kết quả nhận diện người G ......................................................................
Bảng 5. 8 Kết quả chạy thực tế của mô hình ............................................................

34
39

40
42
43
43
48
49
68
70
70
71
72
72
73
74
75

xiv


CÁC TỪ VIẾT TẮT
Từ viết tắt

SVM

Giải thích

Support Vector Machine

Máy véctơ hỗ trợ - Một
loại thuật toán phân loại


HOG

Histogram of Oriented

Một loại thuật tốn trích

Gradient

xuất đặc trưng ảnh

AI

Artificial Intelligent

Trí tuệ nhân tạo

CPU

Central Processing Unit

Bộ xử lý trung tâm

GPIO

General-Purpose

Cổng vào/ra vạn năng

Input/Output

CSI

Camera Serial Interface

Một loại chuẩn kết nối
camera

NC

Normally Closed

Tiếp điểm thường đóng

NO

Normally Open

Tiếp điểm thường hở

LAN

Local-Area Network

Mạng cục bộ

xv


TĨM TẮT
Đề tài “Thiết kế và thi cơng mơ hình cửa tự động sử dụng nhận diện khuôn

mặt” là hệ thống tự động mở cửa khi xác nhận khuôn mặt của một người có trong cơ
sở dữ liệu đã tạo trước đó. Mơ hình được lập trình trên phần mềm MATLAB, điều
khiển hệ thống bằng kit Raspberry Pi và dùng Camera Pi làm thiết bị thu nhận hình
ảnh. Sử dụng thuật tốn Viola – Jones để phát hiện khn mặt trong khung hình sau
đó trích xuất đặc trưng hình ảnh bằng thuật toán HOG và ứng dụng Support Vector
Machine để tạo bộ phân loại các đặc trưng HOG phân loại dữ liệu mới. Sau đó gửi tín
hiệu đến Raspberry điều khiển hệ thống sau khi nhận diện.

xvi


CHƯƠNG I: TỐNG QUAN

CHƯƠNG I. TỔNG QUAN
1.1. ĐẶT VẤN ĐỀ
Với sự phát triển không ngừng nghỉ của khoa học kỹ thuật, việc ứng dụng khoa
học kỹ thuật vào đời sống, xã hội đã trở nên phổ biến và cần thiết hơn bao giờ hết. Nó
góp phần thúc đẩy phát triển khi mọi thứ dần trở nên tự động và hiệu suất công việc
cũng được nâng cao hơn với sự giúp đỡ của máy móc, thiết bị. Trong đó, cơng nghệ tiên
tiến đang được áp dụng rộng rãi trong đời sống chính là xử lí ảnh. Khơng dừng lại ở
việc chỉnh sửa, tăng chất lượng hình ảnh mà cơng nghệ xử lí ảnh ngày nay cịn giải
quyết được các bài tốn như nhận diện chữ viết, dấu vân tay, vật thể, khn mặt, v.v.
Trong đó bài tốn được nhiều người quan tâm hiện nay là nhận diện khuôn mặt.
Như chúng ta đã biết, khn mặt đóng vai trị quan trọng trong việc giao tiếp giữa người
với người, nó mang lại một lượng lớn thơng tin hữu ích giúp ta xác định được giới tính,
tuổi tác, chủng tộc, trạng thái cảm xúc, đặt biệt là xác nhận quan hệ đối tượng. Do đó
ứng dụng của nó đóng vai trị quan trọng trong đời sống và cả y tế ngày nay.
Ngoài ra, nhận diện khn mặt cịn giúp tăng bảo mật trên những chiếc điện thoại
thông minh (smartphone), hệ thống điểm danh trong các trường đại học, chấm công
trong các khu công nghiệp và các hệ thống an ninh lớn nhỏ.

Do đó, dựa trên nền tảng kiến thức đã học, vốn hiểu biết về điện tử cũng như cơng
nghệ xử lí ảnh và sự đồng ý của giáo viên hướng dẫn - thầy Nguyễn Duy Thảo, nhóm
đã quyết định chọn đề tài “Thiết kế và thi cơng mơ hình cửa tự động sử dụng nhận
diện khuôn mặt”.

1.2. MỤC TIÊU
Đề tài “Thiết kế và thi cơng mơ hình cửa tự động sử dụng nhận diện khn
mặt” với mục tiêu là:
 Nhận diện chính xác được 5 người có trong cơ sở dữ liệu.
 Cho phép mơ hình mở cửa khi nhận diện thành cơng.
 Sử dụng phần mềm MATLAB để viết chương trình nhận diện khuôn mặt.
 Sử dụng kit Raspberry Pi Model 3B làm thiết bị nhúng.
 Hệ thống hoạt động ổn định, tốc độ xử lý nhanh.
1


CHƯƠNG I: TỐNG QUAN

1.3. NỘI DUNG NGHIÊN CỨU
Đề tài “Thiết kế và thi cơng mơ hình cửa tự động sử dụng nhận diện khn
mặt” có những nội dung sau:
 NỘI DUNG 1: Tìm hiểu về Raspberry Pi 3B và phần mềm MATLAB.
 NỘI DUNG 2: Tổng quan về xử lí ảnh và thuật tốn nhận diện khn mặt.
 NỘI DUNG 3: Viết chương trình nhận diện khn mặt và điều khiển kit nhúng.
 NỘI DUNG 4: Thiết kế và thi cơng mơ hình.
 NỘI DUNG 5: Chạy thử nghiệm và cân bằng mơ hình.
 NỘI DUNG 6: Viết báo cáo đồ án tốt nghiệp.
 NỘI DUNG 7: Báo cáo về đồ án tốt nghiệp.

1.4. GIỚI HẠN ĐỀ TÀI

Trong luận văn này, nhóm thực hiện xem xét thuật tốn nhận diện khn mặt và
làm mơ hình nhỏ nên cịn giới hạn bởi:
 Nhận diện được trong môi trường đủ ánh sáng và được che kín (cố định 1 mơi
trường).
 Đảm bảo góc nhìn trực diện, khn mặt khơng bị che khuất khi nhận diện.
 Thời gian tốc độ xử lí tương đối, không quá chậm.
 Hệ thống nhận diện được 5 người.
 Mơ hình thi cơng có kích thước: 50 x 50 x 30 (cm)
 Mơ hình nhỏ, sử dụng máy tính để xử lí hình ảnh thơng qua phần mềm hỗ trợ
MATLAB , kit Raspberry Pi 3B làm hệ thống nhúng điều khiển.

2


CHƯƠNG I: TỐNG QUAN

1.5. BỐ CỤC
Nội dung đề tài gồm những phần sau:
 Chương 1 - Tổng Quan: Trong chương này, nhóm thực hiện trình bày khái
qt về xu hướng phát triển, nguyên nhân chọn đề tài, xác định mục tiêu cần
thực hiện trong đề tài và giới hạn công việc.
 Chương 2 – Cơ Sở Lý Thuyết: Giới thiệu đầy đủ về các kiến thức nền tảng
cũng như công nghệ và phần mềm được sử dụng trong khóa luận bao gồm kiến
thức về xử lý ảnh, lý thuyết về các thuật tốn hỗ trợ nhận diện khn mặt, kết
nối giữa Raspberry Pi với máy tính thơng qua MATLAB và các thiết bị cần thiết
cho mơ hình.
 Chương 3 – Thiết Kế và Tính Tốn: Trong chương này, nhóm thực hiện lên kế
hoạch sử dụng tập mẫu, diễn giải các thơng số của mơ hình, q trình huấn
luyện, q trình kiểm tra và thiết kế một hệ thống nhận diện khn mặt.
 Chương 4 – Thi Cơng Mơ Hình Hệ Thống: Nhóm thực hiện lập trình hệ

thống, vẽ lưu đồ điều khiển, nạp code và chạy thử.
 Chương 5 – Kết Quả, Nhận Xét Và Đánh Giá: Chương này sẽ trình bày các
kết quả đạt được của quá trình huấn luyện, q trình kiểm tra mơ hình và ứng
dụng nhận diện khuôn mặt.
 Chương 6 – Kết Luận Và Hướng Phát Triển: Trong chương này sẽ trình bày
những kết quả của đồ án tốt nghiệp đã đạt được, nêu ra một số hướng nghiên
cứu và phát triển đề tài.

3


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

CHƯƠNG II. CƠ SỞ LÝ THUYẾT
2.1 LÝ THUYẾT XỬ LÝ ẢNH
2.1.1 Giới thiệu
Xử lý ảnh là một lĩnh vực mang tính khoa học và cơng nghệ. Nó là một ngành
khoa học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất
nhanh, kích thích các trung tâm nghiên cứu, ứng dụng.
Xử lý ảnh là kỹ thuật áp dụng trong việc tăng cường và xử lý các ảnh được thu
nhận từ các thiết bị ngoại vi như camera, webcam… Do đó, xử lý ảnh đã được ứng
dụng và phát triển trong rất nhiều các lĩnh vực quan trọng như:
 Trong lĩnh vực quân sự: xử lý và nhận diện các hình ảnh quân sự.
 Trong lĩnh vực giao tiếp người máy: nhận diện ảnh, đồ họa.
 Trong lĩnh vực an ninh, bảo mật: nhận diện khuôn mặt người, nhận diện dấu
vân tay, mống mắt…
 Trong lĩnh vực giải trí: trị chơi điện tử, ứng dụng thay đổi khuôn mặt trên điện
thoại thông minh.
 Trong lĩnh vực y tế: xử lý ảnh y sinh, chụp X-quang, MRI…
Các phương pháp xử lý ảnh bắt đầu từ việc ứng dụng nâng cao chất lượng và phân

tích ảnh. Ứng dụng đầu tiên được biết đến là nâng cao chất lượng ảnh báo được truyền từ
Anh đến Mỹ vào những năm 1920. Vấn đề nâng cao chất lượng ảnh có liên quan đến phân
bố mức sáng và độ phân giải của ảnh (pixel). Việc nâng cao chất lượng ảnh được phát
triển vào khoảng những năm 1955. Do sau Thế chiến thứ hai, máy tính phát triển nhanh
tạo điều kiện cho quá trình xử lý ảnh số được thuận lợi hơn. Năm 1964, máy tính đã có
khả năng xử lý và nâng cao chất lượng ảnh Mặt trăng từ vệ tinh Ranger 7 của Mỹ, bao
gồm làm nổi đường biên và lưu ảnh. Từ năm 1964 đến nay, các phương tiện xử lý, nâng
cao chất lượng, nhận diện ảnh phát triển không ngừng. Các phương pháp tri thức nhân tạo
(Artificial Intelligent - AI) như học máy (machine learning), mạng nơ-ron nhân tạo
(artificial neural network), các thuật tốn xử lý hiện đại và cải tiến, các cơng cụ nén ảnh
ngày càng được áp dụng rộng rãi và thu được nhiều kết quả tích cực.

[1]

Sau đây, ta sẽ xét các bước cần thiết trong quá trình xử lý ảnh. Đầu tiên, ảnh tự
nhiên từ thế giới bên ngoài sẽ được thu nhận qua các thiết bị thu nhận ảnh. Trước đây,
ảnh thu qua camera là dạng ảnh tương tự (loại camera cổ điển). Ngày nay, với sự phát
4


CHƯƠNG II: CƠ SỞ LÝ THUYẾT
triển của công nghệ, ảnh màu hoặc đen trắng lấy ra từ camera có thể được chuyển trực
tiếp thành ảnh số tạo điều kiện thuận lợi cho các công đoạn xử lý tiếp theo. Mặt khác,
ảnh có thể được quét tự vệ tinh chụp trực tiếp bằng máy qt ảnh. Hình 2.1 dưới đây
mơ tả các bước cơ bản trong xử lý ảnh.[1]

Hình 2. 1 Các bước cơ bản trong xử lý ảnh
2.1.2 Thu nhận ảnh (Image acquision)
Ảnh có thể được thu nhận qua camera màu hoặc trắng đen. Thường ảnh nhận qua
camera là ảnh tương tự (loại camera ống chuẩn CCIR với tần số 1/25, mỗi ảnh 25

dịng), cũng có loại camera đã số hóa (như loại CCD – Change Coupled Device) là loại
photodiode tạo cường độ sáng tại mỗi điểm ảnh.[11]
Camera thường dùng là loại qt dịng, ảnh tạo ra có dạng ảnh hai chiều. Chất
lượng ảnh thu được phụ thuộc vào thiết bị thu, môi trường thu nhận ảnh (ánh sáng,
phong cảnh …).
2.1.3 Tiền xử lý ảnh (Image processing)
Sau bộ thu nhận, ảnh có thể có độ nhiễu tương phản thấp nên ta cần đưa vào bộ
tiền xử lý ảnh để nâng cao chất lượng. Chức năng chính của bộ tiền xử lý ảnh là lọc
nhiễu, nâng cao độ tương phản để làm ảnh rõ hơn, nét hơn.[11]
2.1.4 Phân đoạn (Segmentation) hay phân vùng ảnh
Phân vùng ảnh là tách một ảnh đầu vào thành các vùng thành phần để biểu diễn phân
tích, nhận diện ảnh. Ví dụ, để nhận diện chữ hoặc mã vạch trên phong bì thư cho mục đích
phân loại bưu phẩm, cần chia các câu chữ về địa chỉ hoặc tên người thành các
5


CHƯƠNG II: CƠ SỞ LÝ THUYẾT
từ, các chữ, các số (hoặc các vạch) riêng biệt để nhận diện. Đây là cơng đoạn phức tạp,
khó khăn nhất trong xử lý ảnh và cũng dễ xảy ra lỗi, làm ảnh hưởng đến độ chính xác
của cả q trình xử lý ảnh. Kết quả của công đoạn nhận diện ảnh phụ thuộc rất nhiều
vào bước này.[11]
2.1.5 Biểu diễn ảnh (Image representation)
Đây là phần sau phân đoạn chứa các điểm ảnh của vùng ảnh (ảnh đã phân đoạn)
cộng với mã liên kết các vùng lân cận. Việc biến đổi các số liệu này thành dạng thích
hợp là cần thiết cho q trình xử lý tiếp theo bằng máy tính. Việc chọn các tính chất để
thể hiện ảnh gọi là trích xuất đặc trưng (feature extraction) gắn với việc tách các đặc
tính của ảnh dưới dạng các thông tin định lượng hoặc làm cơ sở để phân biệt lớp đối
tượng này với lớp đối tượng khác trong phạm vi ảnh nhận được. Ví dụ trong nhận diện
ký tự trên phong bì thư, chúng ta cần miêu tả đặc trưng của từng ký tự, giúp phân biệt
giữa ký tự này với ký tự khác.[11]

2.1.6 Nhận diện và nội suy ảnh (Image recognition and Interpretation)
Nhận diện ảnh là quá trình xác định ảnh. Quá trình này thường thu được bằng
cách so sánh với mẫu chuẩn đã được học (hoặc lưu) từ trước. Nội suy là phán đoán
theo ý nghĩa trên cơ sở nhận diện. Ví dụ: một loạt chữ số và nét gạch trên phong bì thư
có thể được nội suy thành mã điện thoại… Theo lý thuyết về nhận diện, các mơ hình
tốn học về ảnh có thể được nhận diện theo hai loại nhận diện ảnh cơ bản:
 Nhận diện theo tham số.
 Nhận diện theo cấu trúc.
Một số đối tượng nhận diện khá phổ biến hiện nay được áp dụng trong khoa học
và công nghệ là: nhận diện ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận diện văn
bản (text), nhận diện vân tay, nhận diện mã vạch, nhận diện khuôn mặt người …[11]
2.1.7 Cơ sở tri thức (Knowledge base)
Như đã nói trên, ảnh là một đối tượng khá phức tạp về đường nét, độ sáng tối, dung
lượng điểm ảnh, môi trường để thu ảnh phong phú kéo theo nhiễu. Trong nhiều khâu xử lý
và phân tích ảnh ngồi việc đơn giản hóa các phương pháp tốn học đảm bảo tiện lợi cho
xử lý, người ta mong muốn bắt chước quy trình tiếp nhận và xử lý ảnh theo cách của con
người. Hiện nay, nhiều khâu trong quy trình đã được xử lý theo các phương pháp mơ
phỏng trí tuệ con người. Vì vậy, ở đây các cơ sở tri thức được phát huy.

[11]

2.1.8 Mô tả
6


CHƯƠNG II: CƠ SỞ LÝ THUYẾT
Ảnh sau khi số hóa sẽ được lưu vào bộ nhớ, hoặc truyền sang các khâu tiếp theo
để phân tích. Nếu lưu trữ ảnh trực tiếp từ các ảnh thơ thì sẽ địi hỏi bộ nhớ cực lớn và
không hiệu quả theo quan điểm ứng dụng và công nghệ. Thông thường, các ảnh được
gọi là các đặc trưng ảnh như: biên ảnh, vùng ảnh.[11]


2.2. NHỮNG VẤN ĐỀ TRONG XỬ LÝ ẢNH
2.2.1 Điểm ảnh (Picture Element - Pixel)
Là đơn vị cơ bản nhất để tạo nên một bức ảnh kỹ thuật số. Địa chỉ của điểm ảnh
được xem như là một tọa độ (x,y) nào đó. Một bức ảnh kỹ thuật số, có thể được tạo ra
bằng cách chụp hoặc bằng một phương pháp đồ họa nào khác, được tạo nên từ hàng
ngàn đến hàng triệu pixel riêng lẻ. Bức ảnh càng chứa nhiều pixel thì càng chi tiết.
Một megapixel tương đương một triệu pixel.[1]
2.2.2 Ảnh số
Ảnh số là tập hợp hữu hạn các điểm ảnh với mức xám phù hợp dùng để mô tả ảnh
gần với ảnh thật. Số điểm ảnh xác định độ phân giải của ảnh. Ảnh có độ phân giải càng
cao thì càng thể hiện rõ nét các đặc điểm của ảnh, càng làm cho ảnh trở nên chân thực và
sắc nét hơn. Một ảnh số là một tín hiệu hai chiều, nó được xác định bởi hàm tốn học
f(x,y) trong đó x và y là tung độ và hoành độ của điểm ảnh đang được xét. Giá trị của
f(x,y) tại một điểm ảnh ở vị trí (x,y) bất kỳ cung cấp giá trị điểm ảnh tại vị trí đó.

2.2.3 Phân loại ảnh
Mức xám của điểm ảnh là cường độ sáng, gán bằng một giá trị tại điểm đó. Các
mức ảnh xám thông thường: 16, 32, 64, 128, 256. Mức được sử dụng rộng rãi nhất là
mức 256, tức là dùng 1 byte để biểu diễn mức xám. Ảnh có thể được phân loại như
sau:[1]
 Ảnh nhị phân (ảnh trắng đen): Là ảnh chỉ có 2 màu đen và trắng, tương đương
2 giá trị mức xám 0 và 1 và chỉ sử dụng 1 bit dữ liệu trên 1 điểm ảnh.
 Ảnh xám: Là ảnh chỉ chứa 2 màu đen trắng (không chứa màu khác), tuy nhiên
giá trị mức xám tại mỗi điểm ảnh có thể khác nhau, dao động trong phạm vi
mức xám của ảnh.
 Ảnh màu: là ảnh kết hợp của 3 màu cơ bản RGB (đỏ, xanh lá và xanh dương)
với nhau để tạo ra một hình ảnh sinh động, giống đời thật. Người ta dùng 3
byte để mô tả mức màu, tức có khoảng 16,7 triệu mức màu.
2.2.4 Quan hệ giữa các điểm ảnh

7


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

Hình 2. 2 Điểm ảnh (x,y) và các điểm lân cận
Lân cận điểm ảnh (Neighbors of pixel), được ví như “hàng xóm” của điểm ảnh
đang xét. Có hai loại lân cận điểm ảnh cơ bản là lân cận 4 (4-neighbors) và lân cận 8
(8-neighbors).[1]

Hình 2. 3 Lận cận 4 và lân cận 8 của 1 điểm ảnh (x,y)
Bốn điểm ảnh lân cận 4 theo cột và hàng với tọa độ lần lượt là (x-1,y), (x+1,y),
(x,y-1), (x,y+1), ký hiệu là tập N4(p). Bốn điểm ảnh lân cận theo 4 đường chéo có các
tọa độ lần lượt là (x-1,y-1), (x-1,y+1), (x+1,y-1), (x+1,y+1), ký hiệu là tập ND(p). Tập
8 điểm ảnh lân cận 8 là hợp của 2 tập trên:
N8(p) = N4(p) + ND(p)

(2.1)

Liên kết ảnh: Các mối liên kết của ảnh được xem như là mối liên kết của hai điểm
ảnh gần nhau. Có 3 loại liên kết: liên kết 4, liên kết 8 và liên kết m (liên kết hỗn hợp).
8


CHƯƠNG II: CƠ SỞ LÝ THUYẾT
Trong ảnh đa mức xám, ta có thể đặt V chứa nhiều giá trị như V = {tập con}. Cho p có
tọa độ (x,y).
Liên kết 4: hai điểm ảnh p và q có giá trị thuộc về tập V được gọi là liên kết 4 của
nhau nếu q thuộc về tập N4(p).
Liên kết 8: hai điểm ảnh p và q có giá trị thuộc về tập V được gọi là liên kết 8 của

nhau nếu q thuộc về tập N8(p).
Liên kết m: hai điểm ảnh p và q có giá trị thuộc về tập V được gọi là liên kết m
của nhau nếu thỏa 1 trong 2 điều kiện sau: q thuộc về tập N4(p), q thuộc về tập ND(p)
và giao của hai tập N4(p), N4(q) khơng chứa điểm ảnh nào có giá trị thuộc V.

2.3. GIỚI THIỆU RASPBERRY PI 3
2.3.1 Giới thiệu
Raspberry Pi là một máy tính chỉ có một board mạch kích thước chỉ bằng một cái
thẻ ATM. Người ta đã tích hợp mọi thứ cần thiết để ta có thể sử dụng như một máy vi
tính chạy hệ điều hành Linux. Raspberry Pi được phát triển tại Anh bởi Raspberry Pi
Foundation với mục đích thúc đẩy việc giảng dạy về khoa học máy tính cơ bản trong
các trường học và các nước đang phát triển.[16]

Hình 2. 4 Rapberry Pi 3
Raspberry Pi xây dựng xung quanh bộ xử lý Broadcom bao gồm: CPU, GPU, bộ
xử lý âm thanh/video, các cổng kết nối và các bộ phận khác. Ở đề tài này nhóm sử
dụng kit Raspberry 3 model B vì đầy đủ chức năng và các cổng kết nối cũng nhiều hơn
so với các model trước đó.[16]

9


×