Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
1,78 MB
Nội dung
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
VŨ MẠNH HÙNG
NHẬN DẠNGMẶTNGƯỜISỬDỤNG
ĐẶC TRƯNGPCA
Chuyên ngành : Khoa học máy tính
Mã số: 60.48.01.01
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI-NĂM 2013
Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: PGS.TS. Đỗ Năng Toàn
Phản biện 1: ……….………………………………………………………………
Phản biện 2:………………….……………………………………………………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công
nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
-1-
MỞ ĐẦU
Nhậndạng khuôn mặt là một trong những lĩnh vực mới của xử
lý ảnh. Và ngày nay nhậndạng được ứng dụng rộng rãi trong nhiều
lĩnh vực của đời sống như nhậndạng trong lĩnh vực thương mại, hay
phát hiện tội phạm trong lĩnh vực an ninh, hay trong lĩnh vực xử lý
video, hình ảnh.
Hiện nay có rất nhiều các các phương pháp nhậndạng khác
nhau được xây dựng để nhậndạng một người cụ thể trong thế giới
thực. Tuy nhiên việc nhậndạng được một người trong thế giới thực là
vô cùng khó khăn, bởi vì để nhậndạng được ta phải xây dựng được
tập cơ sở dữ liệu đủ lớn và việc xử lý dữ liệu lớn này đòi hỏi phải
nhanh và chính xác. Nhiệm vụ đặt ra là nghiên cứu và xây dựng một
chương trình sửdụng phương pháp nhậndạng có độ chính xác cao mà
khối lượng và thời gian tính toán lại ít.
Để giải quết vấn đề trên có một phương pháp cho phép phân
tích các thành phần chính của khuôn mặt, giảm bớt số thành phần
không cần thiết tạo ra hiệu quả tính toán nhanh mà vẫn đảm bảo được
độ chính xác. Đó là phương pháp Principal Components Analysis
(PCA) hay còn gọi là: “phân tích các thành phần chính”. Và luận
văn tập trung nghiên cứu phương pháp PCA để nhậndạngmặt người.
Nội dung luận văn gồm 3 chương:
Chương 1: Khái quát về nhậndạngmặtngười và đặc
trưng PCA
Chương 2: Kĩ thuật PCA trong nhậndạng khuôn mặt
Chương 3: Chương trình thử nghiệm
-2-
Chƣơng 1: KHÁI QUÁT VỀ NHẬNDẠNGMẶT NGƢỜI
VÀ ĐẶC TRƢNG PCA
1.1. Khái quát về nhậndạngmặt ngƣời
1.1.1. Phân tích các đặc tính sinh trắc học của ngườiĐặc tính sinh trắc của người là đặc tính đo được các nét hành vi
riêng của con người. Nhận diện người được thực hiện trong quá trình
kiểm tra tính đồng nhất của đặc tính sinh trắc giữa người cần kiểm tra
với đặc tính tương tự của người đã được lưu sẵn trong CSDL. Có thể
nhận diện người dựa trên các đặc điểm sinh trắc tĩnh trên người như
khuôn mặt, mắt, vân tay, bàn tay, gen…hay các đặctrưng hành vi
như dáng đi, chữ viết, giọng nói…
Hình 1.1: Các nguồn gốc đặc tính sinh trắc của ngƣời
Dữ liệu sinh trắc lý tưởng của người cần phải có những đặc tính
cơ bản như:
- Tính tổng quát: Mỗi người đều được thể hiện bởi đặc
tính này.
- Tính duy nhất: Không thể tồn tại hai người có đặc tính
giống nhau.
- Tính thường xuyên: Là sự độc lập của đặc tính đối với
thời gian.
- Tính thu thập được: Là đặc tính được thu thập một cách
tương đối đơn giản và nhanh chóng từ mỗi cá nhân và có
thể được chi tiết hóa.
1.1.2. Hệ thống nhậndạng tổng quát
Nhiệm vụ của hệ thống nhậndạngmặtngười là xử lý tự động
thông tin từ các ảnh để tìm ra độ tương tự giữa các khuôn mặt và đưa
-3-
ra quyết định về tính đồng nhất giữa chúng. Câu trúc của hệ thống
nhận dạngmặtngười được thể hiện như hình sau:
Hình 1.3: Cấu trúc tổng quát của hệ thống nhậndạngmặt
- Tiền xử lý (Pre-Processing): Chức năng này để chuẩn hóa
ảnh cần tìm giúp cho việc tìm kiếm được hiệu quả hơn. Các công
việc trong bước tiền xử lý có thể là: Chuẩn hóa kích cỡ giữa ảnh
trong CSDL và ảnh cầm tìm, hiệu chỉnh độ sáng, tối của ảnh; lọc
nhiễu, chuẩn hóa về vị trí, tư thế ảnh mặt.
- Tách khuôn mặt (FD): Chức năng này làm nhiệm vụ xác
định vị trí, kích cỡ của một hoặc nhiều khuôn mặt trên ảnh chụp từ đó
tách ra phần mặt. Phần ảnh mặt đươc tách ra thường nhỏ hơn nhiều
so với ảnh chụp ban đầu, nó sẽ là các khuôn mặt cần tìm và chức
năng trích chọn đặctrưng sẽ sửdụng các ảnh được tách ra này.
- Trích chọn đặctrưng (FE): Tìm ra các đặctrưng chính
của ảnh mặt, từ các đặctrưng này hình thành các vector đặc trưng,
các vector này sẽ được sửdụng để đối sánh sự giống nhau giữa ảnh
mặt cần tìm và ảnh mặt trong CSDL.
- Đối sánh (Comparison): Thực hiện việc so sánh giữa các
vector đặctrưng để chọn ra độ tương tự giữa ảnh cần tìm và ảnh
trong CSDL.
Ảnh chân dungmặtngười cho giấy tờ xuất nhập cảnh và đi
đường thỏa mãn các yêu cầu của tiêu chuẩn quốc tế ISO/IEC JTC
1/SC 37 N 506- Part 5: Face Image Data
Hệ thống nhậndạngmặtngười cần đảm bảo các yêu cầu:
- Độ chính xác nhậndạng có thể chấp nhận được đối với
yêu cầu của bài toán nhận dạng;
-4-
- Tốc độ vận hành cao đối với các CSDL lớn và số lượng
các yêu cầu có thể giải quyết được;
- Đơn giản trong việc cài đặt, lựa chọn thiết bị và vận
hành. An toàn với ngườisử dụng.
1.1.3. Nhậndạng khuôn mặtngười và ứng dụng
1.2. Đặc trƣng PCA và bài toán nhậndạngmặt ngƣời
1.2.1. Giới thiệu
Phương pháp này được phát minh năm 1901 bởi Karl
Pearson[12] và hiện nay nó được sửdụng như công cụ để phân tích
dữ liệu nghiên cứu và thực hiện các mô hình dự đoán. PCA còn bao
gồm cả việc tính toán phân tích các giá trị đặctrưng của một ma trận
tuơng quan dữ liệu hay phân tính các giá trị đơn của ma trận dữ liệu
thường sau khi tính trung bình dữ liệu của mỗi thuộc tính.
PCA là phương pháp đơn giản nhất phân tích đa biến dựa
trên các vector đặc trưng. Thông thường hoạt động của nó có thể
được hiểu nhằm khám phá ra cấu trúc bên trong của dữ liệu. Nếu một
tập dữ liệu đa biến được xem xét như tập các tọa độ trong một không
gian dữ liệu nhiều chiều (mỗi trục biểu diễn một biến) thì phương
pháp PCA cung cấp cho chúng ta một bức ảnh ít chiều, một cái bóng
của vật thể khi quan sát từ chính những đặctrưng cơ bản nhất của vật
thể đó.
1.2.2. ĐặctrưngPCA
Mục tiêu của phương pháp PCA là “giảm số chiều” của 1 tập
vector sao cho vẫn đảm bảo được “tối đa thông tin quan trọng nhất”
. Phương pháp PCA sẽ giữ lại K thuộc tính “mới” từ M các thuộc tính
ban đầu (K<M)
1.2.3. Một số kỹ thuật cơ bản trong nhậndạng
1.2.3.1. Chuyển ảnh màu thành ảnh xám
1.2.3.2. Các bộ lọc không gian
1.2.3.3. Tách biên đối tượng
-5-
Chƣơng 2: KĨ THUẬT PCA TRONG NHẬNDẠNG
KHUÔN MẶT
2.1. Trích chọn đặc trƣng PCA và huấn luyện
2.1.1. Nhận các khuôn mặt từ cơ sở dữ liệu – tập luyện
Đầu tiên chúng ta sẽ đọc cơ sở dữ liệu và nhận vào các ảnh
luyện I
i
. Các ảnh luyện ở đây đều là ảnh mặt, điều kiện quan trọng là
chúng có mặt ở tâm ảnh và có cùng kích thước với nhau.
Giả sử có M ảnh, khi đó i=1 M.
Hình 2.1: Các ảnh luyện có cùng kích thƣớc và mặt ở tâm ảnh
Sau đó ta tương ứng mỗi ảnh I
i
với một vector Γ
i
I
i
(ảnh N×N) → Γ
i
(vector N
2
×1)
2.1.2. Tính toán giá trị trung bình
Giá trị vector trung bình:
=
1
i
=1
(2.2)
Với M là số ảnh trong tập luyện, Γ
i
là vector 1 chiều (N
2
×1) đại
diện cho mỗi ảnh.
Ψ là vector trung bình (kích thước N
2
×1)của tập tất cả các Γ
i
trên; Ψ còn được gọi là vector trung bình mặt của tập luyện.
2.1.3. Trừ đi giá trị trung bình
Sai số của các ảnh so với giá trị vector mặttrung bình được tính
toán theo công thức (2.3)
Φ
i
= Γ
i
– Ψ
(2.3)
Trong đó:
i
là vector sai số ứng với mỗi ảnh,
i
là vectot 1 chiều
của các ảnh, là vector trung bình mặt.
2.1.4. Tính ma trận hiệp biến
Ma trận hiệp biến được tính theo công thức sau:
=
1
=
=1
(2.4)
-6-
Trong đó C là ma trận hiệp biến (kích thước N
2
×N
2
)
=
1
[
1
2
. . .
] (2.5)
A là ma trận N
2
×M,
n
là giá trị sai số được tính ở công
thức (2.3).
2.1.5. Tính các trị riêng và vector đặctrưng của ma
trận hiệp biến
Để tính các trị riêng và vector đặctrưng của ma trận hiệp biến
ta phải tính với ma trận C hay chính là tính cho ma trận AA
T
. Tuy
nhiên điều này là không khả thi, do C là ma trận N
2
×N
2
nên số chiều
là quá lớn, khối lượng tính toán là vô cùng nhiều (đặc biệt khi kích
thước ảnh luyện lớn thì N lớn, N
2
và N
2
×N
2
là cực kì lớn)
Ta nhận thấy 2 ma trận AA
T
và A
T
A luôn có chung trị riêng và
vector đặctrưng thì có liên hệ với nhau bởi biểu thức u
i
= Av
i
mà ma
trận A
T
A lại có số chiều ít hơn hẳn (ma trận M×M) nên ta sẽ chuyển
đổi về ma trận A
T
A.
Sau khi tính toán ta được M vector đặctrưng của AA
T
(u
i
= Av
i
)
tương ứng với M giá trị riêng.
Chuẩn hóa các vector đặctrưng u
i
về vector đơn vị:
||u
i
|| =1 (2.12)
2.1.6. Lựa chọn các thành phần và xây dựng vector
đặc trưng
Để giảm thiểu tối đa số chiều cũng như giảm độ phức tạp tính
toán, ta chỉ giữ lại K vector đặctrưng (tương ứng K giá trị riêng lớn
nhất). Khi đó mỗi khuôn mặt sau khi trừ đi giá trị trung bình sẽ được
đại diện bởi K vector đặc trưng:
=
=1
, (
=
) (2.13)
Mỗi khuôn mặt training
i
sẽ được biểu diễn bởi một vector:
=
1
2
, = 1,2, , (2.14)
Trong đó
(j=1 K) là các trọng số tương ứng với K vector đặc
trưng,
là vector đại diện cho khuôn mặt thứ i trong tập luyện.
2.2. Nhậndạng dựa trên đặc trƣng PCA (Face Recoginition)
Đưa một bức ảnh có một khuôn mặt trong đó (khuôn mặt đã
được chuẩn hóa), nhậndạng đưa ra thông tin về người đó.
-7-
2.2.1. Trích rút đặctrưngPCA
Mỗi ảnh đưa vào nhậndạng (đã được chuẩn hóa về ánh sáng,
góc chụp) có kích thước N×N tương đương với N
2
vector đặctrưng
mặt, như vậy các đặctrưngmặt này là rất lớn, để giảm số đặctrưng
mặt ta đưa ảnh cần nhậndạng vào không gian mặtđặctrưng đã giảm
số chiều (chỉ còn K vector đặctrưng được giữ lại)
Như vậy ảnh lúc này chỉ còn K vector đặctrưng
Hình 2.2: Trích rút đặc trƣng
2.2.2. Chuẩn hóa, trừ đi vector trung bình
Cũng giống như bước xử lý đầu ở trên, trước tiên ta đọc ảnh I vào
từ tập thử nghiệm rồi chuyển ảnh về mức xám và vector 1 chiều .
Sau đó tiến hành chuẩn hóa cho bức ảnh, tức là trừ đi giá trị
vector trung bình mặt (đã tính ở trên công thức 2.2) hay nói cách khác
là tính sai số của ảnh so với vector mặttrung bình.
Chuẩn hóa :
Φ
=
Γ
Ψ (2.15)
2.2.3. Đưa vào không gian đặctrưng
Sau khi đã chuẩn hóa, chúng ta đưa ảnh thử nghiệm vào không
gian trị riêng bằng cách thực hiện phép nhân sau:
=
=1
, (
=
) (2.16)
Trong đó K là số vector đặctrưng của không gian ảnh
u
i
(i=1 K) là K vector đặctrưng lớn nhất
w
i
là các trọng số tương ứng với các vector đặctrưng
2.2.4. Tương ứng với
Ảnh sau khi được đưa vào không gian trị riêng thì nó sẽ được
tương đương với một vector mà mỗi phần tử của là hệ số tương
ứng của ảnh thử nghiệm so với các vector đặctrưng tương ứng trong
không gian trị riêng.
-8-
=
1
2
(2.17)
2.2.5. Tính khoảng cách e
r
Bước này chúng ta sẽ tính khoảng cách Euclide của ma trận so
với không gian mặt. Tức là ta sẽ đi tính khoảng cách tới từng bức ảnh
trong tập ảnh luyện và tìm ra khoảng cách tới bức ảnh luyện gần nhất
trong không gian mặt. Khoảng cách này được gọi là khoảng cách trong
không gian mặt (distance within the face space –difs).
(2.18)
2.2.6. So sánh khoảng cách ngưỡng và rút ra kết luận
Sau khi tính được khoảng cách Euclide, ta so sánh với khoảng cách
ngưỡng T
r
(khoảng cách ngưỡng này được xác định thực nghiệm tùy
thuộc vào từng tập ảnh luyện và tùy thuộc vào số vector đặctrưng
được giữ lại).
Nếu
e
r
< T
r
thì được nhận diện là khuôn mặt thứ l trong tập
training còn không thì không là khuôn mặt nào trong tập luyện đã
cho.
[...]... đƣa vào nhậndạng 3.3.2.3 Nhậndạng khuôn mặt Chọn nút Recognition để nhậndạng -19- Hình 3.19: Thực hiện chức năng nhậndạng khuôn mặt Chương trình đối sánh ảnh đưa vào với các ảnh trong cơ sở dữ liệu Nếu nhậndạng được sẽ đưa ra ảnh và thông tin về người đó Hình 3.20: Kết quả nhậndạng Nếu không nhậndạng được, chương trình sẽ đưa thông báo như Hình 3.21 -20- Hình 3.21: Kết quả không nhậndạng đƣợc... vector đặctrưng trong số các vector đặctrưng vừa tìm được Ta có thể biểu diễn như sau: Hình 3.8: Ảnh ban đầu đƣợc biểu diễn theo các trọng số wi và eigenface Hình 3.8 cho thấy, hình ảnh ban đầu sẽ bằng ảnh trung bình cộng với tổng tất cả các đặctrưngmặtnhân với trọng số tương ứng 3.2.3 Nhậndạng khuôn mặt Đưa ảnh có một khuôn mặt của người nào đó đã được chuẩn hóa Ta có lưu đồ thuật toán nhận dạng. .. cách khi số lượng vector đặctrưng thay đổi Tính toán khoảng cách đến ảnh và đến không gian ảnh, khi số lượng đặctrưngmặt K (eigenface) thay đổi Điều này sẽ dẫn tới sự thay đổi về mặt thời gian cũng như độ chính xác của chương trình Để đánh giá được điều này, chia ảnh thử nghiệm làm ba loại: + Ảnh mặt của người mà mặtngười đó có trong tập ảnh luyện + Ảnh mặt của người mới mà người đó không xuất hiện... the Test Image: Đưa ảnh cần nhậndạng (xác thực) vào từ tập thử nghiệm (testing) + Recognition: Nhậndạng ảnh đưa vào là ai trong tập cơ sở dữ liệu, đưa ra thông tin về người đó + Quality factor: Lựa chọn số vector đặctrưng trong k được giữ lại để tạo không gian mặt Thẻ Webcam: Hình 3.12: Giao diện của thẻ Webcam Thẻ tab này được xây dựng nhằm mục đích nhận dạngmặtngười từ một đoạn video có sẵn... trình đọc dữ liệu Chương trình đưa ra số K đặctrưngmặt được giữ lại Hình 3.15: Số đặc trƣng mặt đƣợc giữ lại trong tập luyện 3.3.2.2 Đưa ảnh vào nhậndạngNhấn nút Open the Test Image -18- Hình 3.16: Đƣa ảnh thử nghiệm vào chƣơng trình Cửa sổ Select the test image xuất hiện chọn ảnh cần nhậndạng từ tập thử nghiệm (file có định dạng “*.jpg”) Chọn OK Ảnh nhậndạng đưa vào phải có cùng kích thước với... Không gian đặctrưng cho ảnh mặt sẽ không biểu diễn đúng cho ảnh bất kì và vì thế khoảng cách là lớn hơn rất nhiều 3.4.2 Đánh giá độ chính xác của chương trình Ảnh thử nghiệm được chia làm bốn loại: ảnh trong chính tập luyện, ảnh mặt chưa luyện nhưng có trong tập luyện, gương mặt mới và cuối cùng là ảnh bất kỳ không phải là mặt Kết quả trả ra là số lượng các ảnh được nhận dạng, không nhậndạng ra mặt và... càng lớn thì khả năng nhậndạng của chương trình càng cao Qua đây ta có thể rút ra kết luận rằng để tăng độ chính xác của phương pháp nhận dạng, ta cần phải tiến hành tiền xử lý ảnh: chuẩn hóa ảnh mặt theo góc nghiêng, hướng nhìn, điều kiện ánh sáng cũng như ảnh nền -23- KẾT LUẬN Luận văn tốt nghiệp đã trình bày chi tiết, cụ thể về nhận dạng khuôn mặtngười dựa trên kỹ thuật PCA Và xây dựng chương... mặtngười dựa trên kỹ thuật PCA Và xây dựng chương trình thử nghiệm để đánh giá kết quả của việc sửdụng kỹ thuật PCA để nhận dạng, từ thực nghiệm ta cũng thu được một số kết quả cũng như đánh giá về thuật toán sửdụng Các kết quả đạt được cho thấy độ chính xác của chương trình tương đối cao khoảng 97% nhậndạngđúng Tuy nhiên, do thời gian có hạn cộng thêm khối lượng công việc lớn nên vẫn còn một số... đưa ảnh nhậndạng về kích thức phù hợp khi ta thực hiện thao tác quét ảnh đưa vào chương trình + Nhận dạngmặtngười qua đoạn video hoặc webcam Ý tưởng đưa ra là nhập vào một đoạn video hay hình ảnh trực tiếp từ webcam Đoạn video hay hình ảnh webcam này có thể mô tả một người với khung nền biến đổi hoặc là một người giữa đám đông Sau đó chương trình sẽ phát hiện và khoanh vùng vị trí của khuôn mặt trong... So sánh ảnh có khuôn mặt thuộc tập luyện và ảnh khuôn mặt mới Khoảng cách tới không gian mặt thì không có sự khác nhau nhiều Tuy nhiên khoảng cách tới ảnh gần nhất thì có sự chênh lệch nhất định giữa hai loại ảnh: khuôn mặt mới luôn có khoảng cách lớn hơn khuôn mặt nằm trong tập luyện + So sánh ảnh mặt và ảnh bất kì Chúng ta có thể thấy sự khác biệt khoảng cách đến không gian mặt của hai loại ảnh là . N
2
vector đặc trưng
mặt, như vậy các đặc trưng mặt này là rất lớn, để giảm số đặc trưng
mặt ta đưa ảnh cần nhận dạng vào không gian mặt đặc trưng đã giảm. và vận
hành. An toàn với người sử dụng.
1.1.3. Nhận dạng khuôn mặt người và ứng dụng
1.2. Đặc trƣng PCA và bài toán nhận dạng mặt ngƣời
1.2.1. Giới thiệu