Nghiên cứu phương pháp nhận dạng ảnh mặt người và ứng dụng - Pdf 40

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
----------------

ĐỖ DUY CỐP

NGHIÊN CỨU PHƯƠNG PHÁP
NHẬN DẠNG ẢNH MẶT NGƯỜI VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Thái Nguyên – 2014


ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
----------------

ĐỖ DUY CỐP

NGHIÊN CỨU PHƯƠNG PHÁP
NHẬN DẠNG ẢNH MẶT NGƯỜI VÀ ỨNG DỤNG
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. Vũ Việt Vũ

Thái Nguyên - 2014



3.1.4 Quy tắc delta ................................................................................. 45
3.2 Thuật toán học lan truyền ngược ......................................................... 46


ii

CHƯƠNG 4 THIẾT KẾ VÀ ĐÁNH GIÁ .................................................... 52
4.1 Thiết kế hệ thống ................................................................................ 52
4.1.1 Cơ sở dữ liệu ảnh .......................................................................... 52
4.1.2 Môi trường cài đặt ........................................................................ 53
4.1.3 Cài đặt .......................................................................................... 53
4.2 Kiểm thử và đánh giá .......................................................................... 56
KẾT LUẬN.................................................................................................. 58
HƯỚNG PHÁT TRIỂN ............................................................................... 59
TÀI LIỆU THAM KHẢO ............................................................................ 60
DANH MỤC CÁC TỪ VIẾT TẮT
LDA (Linear Discriminant Analysis): Phương pháp phân tách tuyến tính
LMS (Least Mean Square): Phương pháp bình phương trung bình tối
thiểu
ORL (Olivetti Research Laboratory, Surrey University): Cơ sở dữ liệu
ảnh dùng trong luận văn
PCA (Principal Components Analysis): Phương pháp phân tích thành
phần chính
DANH MỤC CÁC BẢNG
Bảng 2.1. Tính toán độ lệch chuẩn ............................................................... 10
Bảng 2.2. Tập dữ liệu hai chiều và tính toán hiệp phương sai ...................... 12
Bảng 4.1. Các module chính của chương trình ............................................. 53


iii

tác tại trường Đại học Kỹ thuật Công nghiệp - Đại học Thái Nguyên, người đã
tận tình hướng dẫn và giúp tôi hoàn thành luận văn tốt nghiệp này.
Tôi cũng xin gửi lời cảm ơn chân thành đến các thầy cô giáo của trường
Đại học Công nghệ thông tin và truyền thông - Đại học Thái Nguyên, cùng
các thầy cô giáo của Viện Công nghệ thông tin - Viện khoa học Việt Nam đã
nhiệt tình giảng dạy, truyền đạt kiến thức cho tôi trong suốt 2 năm học qua.
Tôi xin cảm ơn sự động viên và giúp đỡ của tất cả những người thân trong
gia đình, của các bạn bè, đồng nghiệp trong quá trình thực hiện luận văn này.
Thái Nguyên, ngày 20 tháng 05 năm 2014
Học viên

Đỗ Duy Cốp


2

LỜI CAM ĐOAN
Tôi là: Đỗ Duy Cốp
Lớp: CK11A
Khoá học: 2012 - 2014
Chuyên ngành: Khoa học máy tính
Mã số chuyên ngành: 60 48 01
Cơ sở đào tạo: Trường Đại học Công nghệ thông tin và Truyền thông Thái
Nguyên.
Giáo viên hướng dẫn: TS. Vũ Việt Vũ
Cơ quan công tác: Trường Đại học Kỹ thuật Công nghiệp - Đại học Thái
Nguyên
Tôi xin cam đoan luận văn “Nghiên cứu phương pháp nhận dạng ảnh
mặt người và ứng dụng” này là công trình nghiên cứu của riêng tôi. Các số
liệu sử dụng trong luận văn là trung thực. Các kết quả nghiên cứu được trình

Ảnh
mặt
người

Trích chọn
đặc trưng

Nhận dạng
mặt người

Hình 1.1. Mô hình hệ thống nhận dạng mặt người

Thông tin
người được
nhận dạng


4

1.2 Các hướng tiếp cận trong nhận dạng mặt người
Có hai hướng tiếp cận chính làm hạt nhân của các kỹ thuật phân tích đặc
trưng mặt người: hướng tiếp cận hình học và hướng tiếp cận hình ảnh.
 Hướng tiếp cận hình học sử dụng việc ánh xạ không gian các đặc
trưng mặt người. Mặt người được phân loại theo khoảng cách hình
học, theo đường bao và theo các góc giữa các điểm.
 Hướng tiếp cận hình ảnh bao gồm việc xây dựng các mẫu từ những
đặc trưng mặt người. Mẫu của các đặc trưng nổi bật, hoặc thậm chí
là toàn khuôn mặt được thiết lập, việc nhận dạng được thực hiện
bằng cách duyệt các khuôn mặt rồi tìm mặt nào khớp nhất với mẫu.
Hiện nay các hệ thống nhận dạng mặt người vẫn đang tiếp tục được phát

thường được sử dụng cùng phương pháp mặt riêng. Tập con các vector riêng
được dùng làm các vector cơ sở của một không gian con, trong đó ta có thể so
sánh với các ảnh trong cơ sở dữ liệu để nhận dạng các ảnh mới. Các vector cơ
sở này còn được gọi là các thành phần chính của cơ sở dữ liệu ảnh.
Mạng nơron được sử dụng rộng rãi trong các hệ thống nhận dạng mặt
người. Kỹ thuật mạng nơron mô phỏng hoạt động của các nơron trong bộ não
người. Mạng nơron có khả năng điều chỉnh các trọng số dựa trên các mẫu học
trong quá trình huấn luyện. Kết quả là mạng đạt được hiệu quả cao trong việc
phân loại các lớp, dựa trên dữ liệu mẫu khả tách tuyến tính hoặc phi tuyến.


6

1.3 Bố cục luận văn
Mặc dù các hệ thống nhận dạng mặt người hiện tại đã đạt được hiệu quả
khá cao, tuy nhiên chúng vẫn còn hạn chế là chỉ tập trung vào một hay một
vài phương pháp trích chọn đặc trưng. Có hệ thống chỉ thực hiện nhận dạng
dựa trên các đặc điểm về hình học của mặt người hoặc có hệ thống chỉ dựa
trên các đặc điểm thống kê.
Trong luận văn này, việc trích chọn đặc trưng sẽ được thực hiện dựa trên
những đặc điểm thống kê của khuôn mặt (cụ thể là phương pháp phân tích
thành phần chính – PCA và phương pháp phân tách tuyến tính – LDA) và
những đặc điểm về hình thái của khuôn mặt. Chương 2 trình bày chi tiết về
các phương pháp trích chọn đặc trưng được lựa chọn để xây dựng chương
trình. Chương 3 trình bày về mạng noron với thuật toán học lan truyền ngược
lỗi, được dùng để phân loại ảnh. Chương 4 trình bày cụ thể việc thiết kế hệ
thống và đánh giá hiệu quả thực hiện. Cuối cùng là phần kết luận.


7

giá trị.
2.1.1 Cơ sở toán học
a. Lý thuyết thống kê
Các nhà thống kê thường quan tâm đến việc lấy mẫu trên một tập dữ liệu.
Ví dụ về cuộc bầu cử, tập dữ liệu là toàn bộ dân số trong một đất nước, trong
khi đó mẫu là một tập con của dân số nhà thống kê muốn đánh giá. Một vấn
đề lớn của thống kê học là thông qua phương pháp đánh giá một mẫu của dân
số, kết quả thống kê cho phép đánh giá được xu hướng chính của toàn bộ dân
số.
Xét một tập ví dụ X = [1 2 4 6 12 15 25 45 68 67 65 98]. Chỉ số dưới của
ký hiệu X được dùng để trỏ tới một số cụ thể trong tập. Ví dụ X3 trỏ tới số thứ
ba trong X với giá trị là 4. Lưu ý rằng X1 là số đầu tiên trong X. Ngoài ra ký
hiệu n còn được sử dụng để chỉ tổng số các phần tử trong tập X.
Giá trị trung bình của mẫu là:
=



(2.1)


9

Giá trị trung bình không thể hiện được nhiều về dữ liệu ngoại trừ điểm
trung bình. Ví dụ, hai tập sau có cùng một giá trị trung bình là 10, nhưng
chúng hoàn toàn khác nhau:
[0 8 12 20] và [8 9 11 12]
Sự khác nhau đó là sự trải rộng của dữ liệu. Độ lệch chuẩn của tập dữ
liệu sẽ đánh giá được sự trải rộng của dữ liệu. Độ lệch chuẩn kí hiệu là s trong
công thức (2.2) là khoảng cách trung bình từ điểm trung bình của dữ liệu đến

=



(
(

)

(2.3)

1)

Bảng 2.1. Ví dụ về tính độ lệch chuẩn
Tập 1:
(

Xi

)

(

)

0

10

100


Tập 2:
(

Xi

)

(

)

8

2

4

9

1

1

11

1

1


ảnh hưởng của chiều cao sinh viên đến điểm số như thế nào.
Độ lệch chuẩn và phương sai chỉ thực hiện trên một chiều, do đó chúng
cũng chỉ có thể tính toán được cho mỗi chiều của tập dữ liệu một cách độc lập
với các chiều khác. Tuy nhiên, nếu có một phương pháp đánh giá được sự
biến đổi của các chiều từ giá trị trung bình của mỗi chiều khác, khi đó sẽ rất
hữu ích đối với việc thống kê dữ liệu.
Hiệp phương sai là một phương pháp như vậy. Hiệp phương sai luôn
đánh giá giữa hai chiều. Để tính hiệp phương sai giữa một chiều với chính nó,
có thể sử dụng phương sai. Với một tập dữ liệu ba chiều (x, y, z), ta có thể
đánh giá hiệp phương sai giữa các chiều x và y, giữa y và z, giữa z và x.
Công thức tính hiệp phương sai gần giống với công thức tính phương sai.
Công thức tính phương sai có thể được viết lại như sau:
( )=



(
(

)(
1)

)

(2.4)

Tương tự, công thức tính hiệp phương sai được viết như sau:


12


39

15

56

25

93

14

61

10

50

18

75

0

32

16

85

(

)(

H

M

9

39

4.92

23.42

115.23

15

56

1.08

6.42

6.93

25


75

4.08

12.58

51.33

0

32

13.92

30.42

423.45

16

85

2.08

22.58

46.97

5



14

tính giữa hai chiều bất kỳ trong một tập dữ liệu, nên kỹ thuật này thường được
sử dụng để tìm mối liên hệ giữa các chiều trong các tập dữ liệu nhiều chiều
mà việc biểu diễn trực quan gặp khó khăn.
Từ công thức tính cov(X,Y) trên, bằng cách đổi chỗ hai nhân tử
(

)(

) ta suy ra cov(X,Y) = cov(Y,X).

Hiệp phương sai chỉ đánh giá được quan hệ giữa hai chiều. Nếu dữ liệu có
nhiều hơn hai chiều, có thể có nhiều hơn một giá trị hiệp phương sai được
tính. Ví dụ, từ một tập dữ liệu ba chiều (x, y, z) ta có thể tính cov(x,y), cov(y,z)
và cov(z,x). Với một tập dữ liệu n chiều, sẽ có (

!
)!

giá trị hiệp phương sai

khác nhau.
Các giá trị hiệp phương sai giữa tất cả các chiều khác nhau được tính toán
rồi đưa vào một ma trận. Ma trận hiệp phương sai của một tập dữ liệu n chiều
là:
×

=

(2.7)


15

Một số điểm chú ý: Trên đường chéo chính, các giá trị chính là hiệp
phương sai giữa một chiều và chính nó, đó là phương sai của chiều đó. Điểm
thứ hai là, vì cov(a,b) = cov(b,a) nên ma trận hiệp phương sai là ma trận đối
xứng qua đường chéo chính.
b. Đại số ma trận
Phần này trình bày một số kiến thức cơ bản về đại số ma trận được dùng
trong PCA. Đặc biệt trong đó sẽ xét các vector riêng và giá trị riêng của một
ma trận cho trước.
Hai ma trận có thể được nhân với nhau, với điều kiện chúng có kích thước
phù hợp. Vector riêng là một trường hợp đặc biệt của việc này. Xét hai phép
nhân giữa một ma trận và một vector như sau:
ườ
ê

2
2
2
2

1
11
3
×
=
3


Các vector riêng có một số tính chất. Thứ nhất, vector riêng chỉ có thể
được xác định được đối với các ma trận vuông. Không phải mọi ma trận
vuông đều có vector riêng. Nếu một ma trận nn có vector riêng thì số lượng
đó là n.
Thứ hai, khi nhân vector riêng với một số nào đó, vector kết quả vẫn sẽ
bằng đúng số lần như vậy của vector gốc. Lý do là khi lấy một tỉ lệ nào đó của
vector, chỉ đơn giản độ dài của nó bị thay đổi, không ảnh hưởng đến chiều của
vector. Cuối cùng, mọi vector riêng của một ma trận là trực giao, nghĩa là
chúng vuông góc với nhau, bất kể dữ liệu có bao nhiêu chiều. Điều này rất
quan trọng bởi vì nó có ý nghĩa lớn khi biểu diễn dữ liệu theo các vector trực
giao này thay vì biểu diễn theo các trục x và y.
3
6
=
2
4
2 3
6
24
6
×
=
=4×
2 1
4
16
4



(trung bình giá trị

y của tất cả các điểm). Tập dữ liệu nhận được có giá trị trung bình là 0.
Bước 3: Tính ma trận hiệp phương sai
Do dữ liệu có hai chiều nên kích thước của ma trận hiệp phương sai là
22. Ma trận thu được là:
=

0.616555556 0.615444444
0.615444444 0.716555556

Vì các phần tử nằm ngoài đường chéo chính của ma trận là dương, nên hai
giá trị x và y cùng nhau tăng.


18

Dữ liệu gốc

X

Y

X

Y

2.5

2.4


3.0

1.29

1.09

2.3

2.7

0.49

0.79

2

1.6

0.19

0.31

1

1.1

0.81

0.81

0.735178656

0.677873399

0.677873399
, với hai giá trị riêng
0.735178656

tương ứng là 0.0490833989 và 1.28402771.
Điều lưu ý quan trọng rằng các vector riêng ở đây đều là vector đơn vị,
nghĩa là độ dài của chúng bằng 1. Điều này rất quan trọng trong PCA. Hầu hết
các gói phần mềm toán học, khi tính vector riêng đều trả về kết quả là các
vector đơn vị.
Như trên đồ thị dữ liệu ở hình 2.3, dữ liệu có một mẫu chủ đạo (hướng
theo một đường chéo). Ở phía trên của dữ liệu là hai vector riêng, chúng là
những đường chéo hình chấm chấm. Như đã trình bày ở phần vector riêng,
chúng vuông góc với nhau. Nhưng quan trọng hơn, chúng cung cấp thông tin
về các mẫu trong dữ liệu. Một trong hai vector riêng nằm theo hướng phân bố
chính của dữ liệu. Vector riêng đó cho thấy mối quan hệ giữa dữ liệu với
đường thẳng đó. Vector riêng thứ hai cho thấy một mẫu khác, kém quan trọng
hơn, là tất cả các điểm phân bố dọc theo đường chính nhưng cách đường
chính một khoảng nào đó.
Như vậy, bằng việc tính các vector riêng của ma trận hiệp phương sai, ta
có thể trích ra các đặc trưng của dữ liệu. Các bước còn lại sẽ là việc biến đổi
dữ liệu sao cho nó được biểu diễn theo các đặc trưng đó.


20

Hình 2.3. Đồ thị biểu diễn dữ liệu đã chuẩn hóa với các vector riêng


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status