.8Vớ dụ sự tớnh toỏn LBP

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp nhận dạng mặt người dựa trên PCA LDA và mạng neural luận văn ths truyền dữ liệu và mạng máy tính (chuyên ngành đào tạo thí điểm) (Trang 33)

Giỏ trị thập phõn của của chuỗi LBP cú thể đ ( ,

Với gc là giỏ trị độ xỏm của pixel trung tõm thứ p trong lõn cận 8 của pixel trung tõm. H

(

Mẫu nhị phõn cục bộ mở rộng

Mở rộng toỏn tử LBP đến một lõn cận tr kớ hiệu sự xem xột đến P pixels lõn c

họa toỏn tử LBPP,R.

Hỡnh1.9 Minh h

Nếu tọa độ của pixel tõm l trũn tõm (xc, yc) bỏn kớnh R

=

= +

ị thập phõn của của chuỗi LBP cú thể được biểu diễn như sau:

( ) = 2 −

ị độ xỏm của pixel trung tõm (xc, yc), gplà giỏ trị độ xỏm của pixel ận 8 của pixel trung tõm. Hàm s được định nghĩa như sau:

( ) = 1 ≥ 0 0 < 0 ẫu nhị phõn cục bộ mở rộng

ở rộng toỏn tử LBP đến một lõn cận trũn với cỏc bỏn kớnh khỏc nhau. pixels lõn cận trờn một vũng trũn cú bỏn kớnh R.

Minh họa toỏn tử LBP mở rộng vớị P và R khỏc nhau.

ếu tọa độ của pixel tõm là (xc, yc) thỡ tọa độ của P pixel lõn cận tr R (tớnh theo đường trũn lượng giỏc) là:

= + (2 ) 2 , p = {0, 1, … , P − 1} Hỡnh1.10 Vớ dụ LBP8,1 ư sau: (1.6) ị độ xỏm của pixel ư sau: (1.7) ới cỏc bỏn kớnh khỏc nhau.LBPP, R ũng trũn cú bỏn kớnh R. Hỡnh1.minh P và R khỏc nhau.

ọa độ của P pixel lõn cận trờn đường

(1.8)

Trong trường hợp cỏc điểm đang xột khụng phải l sẽ được nội suy.Khoa học mỏy tớnh cú r

sử dụng phộp nội suy song tuyến tớnh (bilinear interpolation). ( , ) ≈ [1 −

LBP được định nghĩa bất biến đối với bất kỳ sự biến đổi độ sỏng, chỳng ta cú thể nhận thấy điều này qua Hỡnh

Hỡnh1.11 LBP gi

Mẫu đồng nhất (uniform patterns) Năm 2002 Ojala và cỏc đ

niệm mẫu đồng nhất.Một mẫu nhị phõn đ vũng thỡ cú nhiều nhất là 2 l

trị bit 1 sang 0.

Hỡnh1.12 Vớ d

ờng hợp cỏc điểm đang xột khụng phải là tõm của điểm ảnh, điểm đú mỏy tớnh cú rất nhiều thuật toỏn nội suy, trong luận văn n ử dụng phộp nội suy song tuyến tớnh (bilinear interpolation).

] (0,0) (0,1) (1,0) (1,1)

1 −

ợc định nghĩa bất biến đối với bất kỳ sự biến đổi độ sỏng, chỳng ta cú Hỡnh1.11.

LBP giống nhau với cỏc độ sỏng khỏc nhau

ẫu đồng nhất (uniform patterns)

Năm 2002 Ojala và cỏc đồng nghiệp trong nghiờn cứu của mỡnh

ệm mẫu đồng nhất.Một mẫu nhị phõn được gọi là đồng nhất khi xột chuỗi bit xoay

à 2 lần thay đổi (transitions) từ giỏ trị bit 0 sang 1 hoặc từ giỏ

Vớ dụ mẫu đồng nhất và mẫu khụng đồng nhất

ủa điểm ảnh, điểm đú ất nhiều thuật toỏn nội suy, trong luận văn này

(1.10) ợc định nghĩa bất biến đối với bất kỳ sự biến đổi độ sỏng, chỳng ta cú

ỡnh đó đưa ra khỏi ồng nhất khi xột chuỗi bit xoay ừ giỏ trị bit 0 sang 1 hoặc từ giỏ

Đồng nhất là một khỏi niệm quan trọng trong ph diện cho thụng tin cấu trỳc nguy

tử LBPP,R đồng nhất được kớ hiệu l

mẫu cú tối đa hai sự chuyển đổi (mẫu đồng nhất l đồng nhất. Cú hai mẫu khụng cú sự chuyển đổi n đồng nhất được gỏn một nh

vậy nếu dựng LBP8,1 thỡ sẽ cú 256 mẫu, trong đú cú 58 mẫu đồng nhất, n của ( , )là 59.

Hỡnh

ột khỏi niệm quan trọng trong phương phỏp LBP b ện cho thụng tin cấu trỳc nguyờn thủy như đường, cạnh hoặc gúc (xem

ợc kớ hiệu là ( , ). Với chuỗi LBP cú chiều d ẫu cú tối đa hai sự chuyển đổi (mẫu đồng nhất là) P(P-1) cú tối đa ồng nhất. Cú hai mẫu khụng cú sự chuyển đổi nào là mẫu toàn 0 ho

ợc gỏn một nhón, tất cả cỏc khụng đồng nhất được gỏnchung1 nh ẽ cú 256 mẫu, trong đú cú 58 mẫu đồng nhất, n

Hỡnh1.1358 Mẫu đồng nhất của ( , )

ương phỏp LBP bởi vỡ nú đại ờng, cạnh hoặc gúc (xem Hỡnh1). Toỏn ới chuỗi LBP cú chiều dài P thỡ số ối đa P(P-1)+2 mẫu àn 0 hoặc 1.Mỗi mẫu ợc gỏnchung1 nhón. Như ẽ cú 256 mẫu, trong đú cú 58 mẫu đồng nhất, nờn số chiều

Áp dụng LBP mụ tả khuụn mặt

Việc ỏp dụng mụ tả khuụn mặt bằng LBP được Ahonen [3] và cỏc cộng sự thực hiện năm 2006.í tưởng của phương phỏp là chia hỡnh hảnh khuụn mặt thành cỏc khối, sau đú tớnh toỏn cỏc histogram tương ứng với cỏc khối.Cuối cựng kết hợp cỏc histogram này lại với nhau để cú được vector đặc trưng cho khuụn mặt.

Hỡnh1.14 Trớch rỳt đặc trưng khuụn mặt bằng LBP

1.4.4 Phương phỏp phõn tớch thành phần chớnh

Trong phương phỏp phõn tớch thành phần chớnh(PCA  cũn gọi là biến đổi Karhunen-Loeve), tập dữ liệu được biểu diễn lại với số đặc trưngớt hơn đồng thời giữ được hầu hết cỏc thụng tin quan trọng nhất của dữ liệu.PCA 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ớicỏ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ớnhcủa cơ sở dữ liệu ảnh.

CHƯƠNG 2

NHẬN DẠNG KHUễN MẶT DỰA TRấN PCA-LDA VÀ MẠNG NƠRON Vấn đề phỏt hiện mặt được đưa ra đầu tiờn vào những năm 70 với việc sử dụng cỏc kỹ thuật nhõn trắc học và cỏc phộp heuristic giản đơn. Với những kỹ thuật này, ta chỉ cú thể đạt được kết quả trong những điều kiện khỏ chặt, vớ dụ như nền ảnh đồng nhất, khuụn mặt chụp thẳng,... Cho đến ngày nay, cựng với sự phỏt triển vượt bậc của khoa học kỹ thuật, việc yờu cầu những giới hạn như thế là khụng cũn. Tuy nhiờn, cựng với những yờu cầu ngày càng cao, thỡvấn đề phỏt hiện mặt người đang phải đối mặt với những khú khăn mới. Trong suốt quỏ trỡnh từ những năm đầu tới nay, đó cú rất nhiều cỏc hướng xử lý và tiếp cận khỏc nhau được đưa ra nhằm giải quyết cho những yờu cầu cụ thể khỏc nhau của từng giai đoạn, từng ứng dụng cụ thể và cũng cú nhiều cỏch phõn loại cỏc phương phỏp, hướng tiếp cận này. Trong luận văn này, chỳng ta sẽ nghiờn cứu phương phỏp nhận dạng mặt người dựa trờn phương phỏp trớch chọn đặc trưng PCA và biến đổi LDA, sau đú cỏc đặc trưng này sẽ được nhận dạng bằng mạng nơron nhõn tạo.

2.1 Phương phỏp phõn tớch thành phần chớnh (PCA)

Vào cuối những năm 1980, Sirovich và Kirby đó phỏt triển một kỹ thuật để cú thể biểu diễn hiệu quả cỏc mặt người, được gọi là phương phỏp phõn tớch cỏc thành phần chớnh (PCA –Principle Component Analysis).Với một bộ dữ liệu mặt người, đầu tiờn, ta tiến hành tớnh cỏc thành phần chớnh của sự phõn bố cỏc mặt, biểu diễn dưới dạng cỏc vector riờng (của ma trận hiệp phương sai của sự phõn bố).Mỗi mặt trong tập dữ liệu sau đú được xấp xỉ bằng cỏch kết hợp tuyến tớnh cỏc vector riờng lớn nhất (khụng gian vector) cựng với cỏc trọng số tương ứng của chỳng.

Mụcđớch của phương phỏp phõn tớch này cú thể diễnđạt ngắn gọn như sau:Ảnh gốc cú kớch thước 112ì92 (10304 điểmảnh).Nhữngảnh này cầnđượcrỳt gọn sao cho lượng thụng tin dựng để biểu diễnảnhđú giảmđi,đồng thờikhụng làm mất những đặcđiểm quan trọng nhất của khuụn mặt. Kết quảcủa việc phõn tớch này sẽđạt đượcnhư hỡnh 2.1.

Hỡnh 2.1. Vớ dụ minh họa PCA

Ảnh gốc cần 10304 giỏ trị để biểu diễn trong khi ảnh biến đổi chỉ cần49 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ẫutrờ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ệuX được dựng để trỏ tới một số cụ thể trong tập.Vớ dụ X3 trỏ tới số thứ ba trong

Xvới giỏ trị là 4. Lưu ý rằng X1 là số đầu tiờn trong X. Ngoài ra ký hiệu ncũ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)

Giỏ trị trung bỡnh khụng thể hiệnđượcnhiề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ànkhỏ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ẩncủa tập dữ liệu sẽ đỏnh giỏ được sự trải rộng của dữ liệu.Độ lệch chuẩnkớ 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 cỏc điểm. Cụng thức tớnhnhư sau:

= ∑ ( − )

( − 1) (2.2)

Cõu hỏi đặt ra: “Vỡ sao lại sử dụng giỏ trị (n1) mà khụng phải là n?” Nguyờn

nhõn là, nếu mẫu của tập dữ liệu được lấy là tập con của thế giới thực thỡ phải sử dụng

(n1) vỡ giỏ trị nhận được gần với độ lệch chuẩn hơn so với sử dụngn. Tuy nhiờn, nếu tớnh độ lệch chuẩncho toàn bộ dõn số, giỏ trị cần dựng làn chứ khụng phải (n1).

Với hai tập dữ liệu trờn, việc tớnh độ lệch chuẩnđược thực hiện như bảng 2.1.Tập thứ nhất cú độ lệch chuẩnlớn hơn do dữ liệu trải ra xa hơn so vớiđiểm trung bỡnh. Một vớ dụ khỏc, tập [10 10 10 10] cũng cú điểm trung bỡnh là 10nhưng độ lệch chuẩnlại bằng 0, bởi vỡ tất cả cỏc số là giống nhau.Khụng số nàochệch ra khỏi điểm trung bỡnh.Phương sailà một

hàm đo khỏc về sự trải rộng của dữ liệu trong một tập. Thực tế nú gầnnhư giống hoàn toànvới độ lệch chuẩn: =∑ ( − ) ( − 1) (2.3) Tập 1: Xi ( − ) ( − ) 0 8 12 20 10 2 2 10 100 4 4 100 Tổng 208 Chia cho (n-1) 69.333 Khai căn 8.3266 Tập 2: Xi ( − ) ( − ) 8 9 11 12 2 1 1 2 4 1 1 4 Tổng 10 Chia cho (n-1) 3.333 Khai căn 1.8257 Bảng 2.1 Vớ dụ về tớnh độ lệch chuẩn

Như vậy đõy chỉ là bỡnh phương của độ lệch chuẩn.s2 là ký hiệu thường dựng cho phương sai của một mẫu. Cả hai phương phỏp này đều đỏnh giỏ độ trải rộngcủa dữ liệu.Độ lệch chuẩnlà phương phỏp thụng dụng hơn, bờn cạnhđúphương sai cũng được sử dụng.

Hai phương phỏp trờn chỉ sử dụng được cho dữ liệu một chiều.Tuy nhiờn, nhiều tập dữ liệu lại cú nhiều hơn một chiều và mục đớch của việc phõn tớch thống kờ cỏc tập

chiều cao của cỏc sinh viờn trong một lớp và điểm số của họ về một mụn học nào đú. Ta cú thể tiến hành phõn tớch thống kờ xem ả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 đượccho 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 sailà 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ớimộ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ầngiố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ếtnhư sau:

( , ) =∑ ( − )( − )

( − 1) (2.5)

Cụng thức (2.5) tương tựcụng thức (2.4), ngoại trừ ở nhõn tử thứ hai, giỏ trị của

X được thay bằng giỏ trị của Y. Việc nàycú thể đượcdiễn đạt như sau: “Với mỗi điểm dữ liệu, tớnh tớch của độ sai khỏc giữa giỏ trị x và giỏ trị trung bỡnh của x, với độ sai khỏc giữa giỏ trịy và giỏ trị trung bỡnh của y. Cộng tất cả vào rồi chia cho (n1)”.

Vớ dụvới một nhúm sinh viờn, xột tổng số giờ họ dành cho mụn học A và điểm số họ đạt được ở mụn đú. Khi đú bài toỏn cú hai chiều, chiều thứ nhất là H, số giờ học, chiều thứ hai là M, điểm số. Bảng 2.2 là cỏc số liệu và việc tớnh toỏn cov(H,M), hiệp

Bảng 2.2. Tập dữ liệu hai chiều và tớnh toỏn hiệp phương sai Số giờ (H) Điểm (M) Số giờ (H) Điểm (M) Dữ liệu 9 15 25 14 10 18 0 16 5 39 56 93 61 50 75 32 85 42 Tổng 112 533 Trung bỡnh 12.44 59.22 H M ( − ) ( − ) ( − )( − ) 9 15 25 14 10 18 0 16 5 39 56 93 61 50 75 32 85 42 4.92 1.08 11.08 0.08 3.92 4.08 13.92 2.08 8.92 23.42 6.42 30.58 1.42 12.42 12.58 30.42 22.58 20.42 115.23 6.93 338.83 0.11 48.69 51.33 423.45 46.97 182.15 Tổng 1199.61 Trung bỡnh 133.29

Giỏ trị chớnh xỏc khụng quan trọng bằng dấu của nú (dương hay õm).Nếu giỏ trị là dương, núchỉ ra rằng cả hai chiều cựng nhau tăng, nghĩa là một cỏch tổngquỏt, khi

Nếu giỏ trị là õm, khi đú một chiều tăng lờn, một chiều giảm đi.Giỏ trị hiệp phương sai õm cho thấy rằng chỳng đối lập nhau, khi số giờ học tăng lờn thỡ điểm số giảm đi.

Trường hợp cuối cựng, nếu giỏ trị hiệp phương sai bằng 0, khi đú hai chiều độc lập với nhau.

Kết quả điểm số tăng lờn khi số giờ học tăng cú thể dễ dàng nhận thấy bằng đồ thị. Tuy nhiờn, việc minh họa trực quan như vậy chỉ cú thể thực hiện được khi dữ liệu cúhai hoặc ba chiều.Vỡ giỏ trị hiệp phương sai cú thể được 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ỏnrồ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.6)

Ở đõy Cnn là ma trận n hàng,n cột và Dimi là chiều thứi.Toàn bộ cụng thức trờn cú nghĩa là với một tập dữ liệu n chiều, ma trận hiệp phương sai của dữ liệu làma trận n hàng,n cột (ma trận vuụng) với phần tử tại hàngi, cột jlà giỏ trị hiệp phương sai giữa hai chiều thứi và thứj.

Vớ dụ: Ma trận hiệp phương sai của một tập dữ liệu ba chiều, với cỏc chiều là x, y và z là ma trậncú 3 hàng, 3 cột với cỏc giỏ trị như sau:

=

( , ) ( , ) ( , )

( , ) ( , ) ( , )

( , ) ( , ) ( , )

(2.7)

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àymột số kiến thức cơ bản về đại số ma trận đượcdựng trong PCA.Đặc biệt trong đú sẽ xột cỏc vector riờng vàgiỏ trị riờngcủ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ệnchỳng cú kớch thước phự hợp.Vector riờnglà 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 3 2 1 ì 1 3 = 11 5 ờ 2 3 2 1 ì 3 2 = 12 8 = 4 ì 3 2

Vớ dụ vector thường và vetor riờng

Trong trường hợp thứ nhất, vector kết quả khụng phải là một bội số của vector gốc, trong khi đú ở trường hợp thứ hai, vector kết quả bằng đỳng 4 lần vector gốc.Vector 3

2 (trường hợp thứ hai) biểu diễn một mũi tờn từ gốc (0,0) đến điểm (3,2). Ma trận bờnh cạnh là ma trận vuụng, cú thể coi như một ma trận biến đổi. Nếu nhõn ma trận này vào phớa trỏi của vector, kết quả sẽ là một vector khỏc đó được biến đổi từ vị trớ gốc của nú.Vector này (và tất cả cỏc bội số của nú, vỡ chiều dài của vector khụng ảnh hưởng đến kết quả) là một vector riờngcủa ma trận biến đổi đú.

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 nn cú vector riờng thỡ số lượng đúlà n.

Thứ hai, khi nhõn vectorriờ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ệucú bao nhiờu chiều. Điều này rất quan trọng bởi vỡ nú cú ý nghĩa lớnkhi biểu

2 ì 3 2 = 6 4 2 3 2 1 ì 6 4 = 24 16 = 4 ì 6 4

Vớ dụ về sự ổn định của vector riờng đối với việc lấy tỉ lệ

Giỏ trị riờngcú quan hệ chặt chẽvới vector riờng.Thực tế làở vớ dụ trờn đó xuất hiện một giỏ trị riờng.Trong cả hai vớ dụ trờn, số lần vector gốc được tăng lờn sau khi nhõn với ma trận vuụng luụn cốđịnh, số lần nàylà 4.Vậy 4 là giỏ trị riờng ứng với vector riờng đú.Khụng cần biết bội số nào của vector riờng đó đượclấy trước khi đem

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp nhận dạng mặt người dựa trên PCA LDA và mạng neural luận văn ths truyền dữ liệu và mạng máy tính (chuyên ngành đào tạo thí điểm) (Trang 33)