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

XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA

92 1,1K 16
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Xây dựng ứng dụng phát hiện mặt người dựa trên màu da
Tác giả Nguyễn Hoài Sơn
Người hướng dẫn ThS. Lương Mạnh Bá
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ án
Năm xuất bản 2008
Thành phố Hà Nội
Định dạng
Số trang 92
Dung lượng 4,63 MB

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

Nội dung

Lĩnh vực nhận dạng đang dành được nhiều sự quan tâm trong giai đoạn hiện nay. Nó được ứng dụng trong các hệ thống giám sát, an ninh, trong các máy tính thế hệ mới mà con người có thể tương tác với máy tính qua cử chỉ hoặc lời nói,…

Trang 1

KHOA CÔNG NGHỆ THÔNG TIN

NGƯỜI DỰA TRÊN MÀU DA

Sinh viên thực hiện : Nguyễn Hoài Sơn

Lớp CNPM - K48

Giáo viên hướng dẫn: ThS Lương Mạnh Bá

Hà nội 5-2008

Trang 2

1 Định hướng đề tài tốt nghiệp

Tìm hiểu các phương pháp phát hiện mặt người dựa trên đặc trưng và xây dựng ứng dụng phát hiện khuôn mặt dựa trên màu da.

2 Các nhiệm vụ cụ thể của đồ án tốt nghiệp

- Tìm hiểu các phương pháp phát hiện khuôn mặt dựa trên đặc trưng.

- Nghiên cứu phương pháp phát hiện mặt người dựa trên màu da.

- Xây dựng ứng dụng phát hiện mặt người.

3 Lời cam đoan của sinh viên:

Tôi – Nguyễn Hoài Sơn - cam kết đồ án tốt nghiệp là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của Ths Lương Mạnh Bá

Các kết quả nêu trong đồ án tốt nghiệp là trung thực, không phải là sao chép toàn văn của bất kỳ công trình nào khác.

Hà Nội, ngày tháng năm 2008

Tác giả đồ án tốt nghiệp

Nguyễn Hoài Sơn

4 Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của đồ án tốt nghiệp vàcho phép bảo vệ

Hà Nội, ngày tháng năm 2008

Giáo viên hướng dẫn

ThS Lương Mạnh Bá

Trang 3

LỜI NÓI ĐẦU

Gần đây, lĩnh vực nhận dạng đang dành được nhiều sự quan tâm nghiên cứu và thử nghiệm như nhận dạng khuôn mặt, nhận dạng vân tay, giọng nói, mắt, Trong đó nhận dạng khuôn mặt chiếm một vị trí khá quan trọng Nhận dạng khuôn mặt được ứng dụng trong nhiều lĩnh vực như: hình sự (nhận dạng tội phạm), các hệ thống an toàn, bảo mật (dùng xác nhận các nhân viên của tổ chức), và nhiều lĩnh vực khác nữa.

Trong nhận dạng khuôn mặt, đầu tiên ta phải lấy các khuôn mặt ra một cách thủ công, rồi sau đó đem đi nhận dạng xem đó là ai Để việc nhận dạng khuôn mặt được thực hiện một cách tự động, tức là đưa vào một bức ảnh phải xác định xem trong ảnh

có những ai, rõ ràng cần thực hiện một bước trước đó là phát hiện khuôn mặt.

Việc phát hiện khuôn mặt còn được ứng dụng trong đếm số người Bao nhiêu khuôn mặt được phát hiện là có bấy nhiêu người Việc đếm số người có ý nghĩa trong giao thông (xác định lưu lượng người qua lại trên đường), trong thương mại (xác định số lượng khách hàng ra vào siêu thị),

Chính vì thế mà việc nghiên cứu về phát hiện mặt người là hết sức cần thiết Với đề

tài “Xây dựng ứng dụng phát hiện mặt người dựa trên màu da” em cũng đã đạt

được một số kết quả nhất định Đó sẽ là hành trang giúp em rất nhiều trong thời gian học tập và làm việc sau này.

Để có thể hoàn thành được đồ án là nhờ công lao to lớn của các thầy cô giáo trong

trường Đại học Bách Khoa Hà Nội nói chung và các thầy cô trong khoa Công nghệ Thông tin, bộ môn Công nghệ phần mềm nói riêng Các thầy cô đã tận tình

giảng dạy, truyền đạt cho em những kiến thức, những kinh nghiệm quý báu trong suốt 5 năm học tập và rèn luyện tại trường Xin được gửi tới các thầy, các cô lời cảm

ơn chân thành nhất Em xin được bày tỏ long biết ơn của mình đến thầy Lương

Mạnh Bá - Giảng viên bộ môn Công nghệ phần mềm, khoa Công nghệ thông tin, trường Đại học Bách Khoa Hà Nội đã hết lòng giúp đỡ, hướng dẫn và chỉ bảo tận

tình trong quá trình em làm đồ án tốt nghiệp.

Em cũng xin được gửi lời cảm ơn của mình đến thầy Lê Tấn Hùng đã cho em mượn web cam để thực hành Cảm ơn anh Mai Anh Tuấn K47, nhờ tham khảo đồ án của

anh mà em có được những kiến thức ban đầu, tổng quan về lĩnh vực này, để từ đó có được sự thuận lợi, nhanh chóng và định hướng tốt hơn trong quá trình làm đồ án.

Cuối cùng, em xin được gửi lời cảm ơn chân thành tới gia đình, bạn bè đã động

viên, chăm sóc, đóng góp ý kiến và giúp đỡ em trong quá trình học tập, nghiên cứu

và hoàn thành đồ án tốt nghiệp.

Hà Nội, tháng 5 năm 2008 Sinh viên: Nguyễn Hoài Sơn

Trang 4

BỐ CỤC ĐỒ ÁN

Chương 1:

Tổng quan về lĩnh vực phát hiện mặt người.

Trình bày một số hệ màu được dùng trong phát hiện mặt người.

Trình bày một số phương pháp phát hiện mặt người dựa trên đặc trưng khuôn mặt.

Chương 2:

Tổng quan phương pháp phát hiện mặt người dựa trên màu da.

Phương pháp phát hiện màu da.

Thuật toán phân vùng trong ảnh nhị phân.

Thiết kế, xây dựng chương trình phát hiện mặt người.

Thử nghiệm chương trình và đánh giá phương pháp phát hiện mặt người được áp dụng.

Trang 5

MỤC LỤC

Trang 6

DANH MỤC HÌNH VẼ

Trang 7

CHƯƠNG 1: TỔNG QUAN PHÁT HIỆN MẶT NGƯỜI

Chương này trình bày một số lý thuyết cơ bản trong phát hiện mặt người cũng như một số phương pháp phát hiện mặt người Cụ thể, chương này trình bày các vấn đề sau:

Các hướng tiếp cận trong phát hiện mặt người.

Một số hệ màu sử dụng trong phát hiện mặt người; HSV, YCrCb.

Một số phương pháp phát hiện mặt người dựa trên đặc trưng khuôn mặt.

Có nhiều hướng tiếp cận và các phương pháp khác nhau trong phát hiện mặt người.Cũng có nhiều cách phân chia, gom nhóm khác nhau Sau đây la một số hướng tiếpcận:

• Giải pháp dựa trên mô hình (top-down model-based approach): trong hướngtiếp cận này, người ta sử dụng các mô hình mặt người khác nhau có tỉ lệ khácnhau từ thô nhất đến tốt nhất Đầu tiên, ảnh sẽ được quét bởi mô hình có tỉ lệthô nhất Sau đó ảnh được quét với mô hình có tỉ lệ tốt hơn Và cuối cùngđược quét với mô hình có tỉ lệ tốt nhất Ứng với mỗi tỉ lệ chỉ có 1 mô hìnhkhuôn mặt Mà 1 mô hình khuôn mặt ứng với 1 góc nhìn khuôn mặt cụ thể Do

đó, nhìn chung, phương pháp này khó khăn trong việc đưa vào nhiều góc nhìnkhuôn mặt khác nhau

• Giải pháp dựa trên đặc trưng (bottom-up feature-based approach): trong hướngtiếp cận này, người ta sẽ tiến hành tìm kiếm trong ảnh các đặc trưng củakhuôn mặt (như mắt, mũi, miệng,…), sau đó gom nhóm chúng lại với nhau(dựa trên mối quan hệ hình học giữa chúng) tạo thành các ứng cử viên chokhuôn mặt Giải pháp này có thể dễ dàng mở rộng cho nhiều góc nhìn khuônmặt khác nhau

• Giải pháp dựa trên bề mặt (texture-based approach): trong hướng tiếp cận này,các khuôn mặt được phát hiện dựa trên sự phân bố không gian các mức xámcủa các điểm trong ma trận ảnh con Phương pháp này khó mở rộng cho nhiềugóc nhìn

Trang 8

• Giải pháp dựa trên mạng nơron (neural network approach): trong giải phápnày, người ta tiến hành huấn luyện trên 1 tập ảnh khuôn mặt và không phảikhuôn mặt Sau khi huấn luyện xong, sẽ được dùng vào nhận ra khuôn mặt.Ảnh sẽ được quét bằng 1 cửa sổ Tại mỗi vị trí cửa sổ, nội dung ảnh được lấy

ra (có thể phải thay đổi tỉ lệ (co, giãn) vì các ảnh được huấn luyện có kíchthước như nhau và xác định) và được cho qua bộ lọc mạng nơron Nhìnchung, phương pháp này cho kết quả tốt Tuy nhiên tốn thời gian huấn luyện

và sưu tầm mẫu

• Giải pháp dựa trên màu sắc (color-based approach): trong giải pháp này, đầutiên người ta xác định các điểm trong ảnh có màu giống màu da mặt Sau đó,người ta khoanh vùng các điểm đó lại Các vùng này có thể là khuôn mặt hoặckhông Để xác định có phải là mặt không, có thể dựa vào tỉ lệ kích thước củavùng có tương tự tỉ lệ khuôn mặt không, hoặc dựa vào tỉ lệ số điểm màu datrong hình chữ nhật bao vùng đó,…

• Giải pháp dựa trên chuyển động (motion-based approach): ngay cái tên của nócũng cho thấy giải pháp này chỉ áp dụng phát hiện mặt người trong phim,không áp dụng cho ảnh tĩnh Từ các đối tượng chuyển động trong ảnh, dựatrên một số tiêu chí, người ta sẽ xác định được vùng mặt Ví dụ như một cáilắc đầu, hay nháy mắt sẽ là cơ sở để phát hiện khuôn mặt

Trong thực tế, ngoài những phương pháp đơn thuần đi theo một hướng tiếp cận, thìcũng có những phương pháp kết hợp nhiều hướng tiếp cận để cho ra kết quả chínhxác hơn, tuy nhiên cũng phải trả giá về thời gian Trong đồ án này, em chỉ đi vào tìmhiểu các phương pháp phát hiện mặt người theo hướng dựa trên đặc trưng và dựa trênmàu sắc

Trong các phương pháp phát hiện mặt người, các tác giả thường sử dụng nhiều hệmàu khác nhau Do đó, đầu tiên em xin trình bày về một số hệ màu được sử dụngtrong các phương pháp phát hiện mặt người

1.2 Giới thiệu về một số hệ màu

Trong phát hiện mặt người, người ta thường không sử dụng hệ màu RGB, mà thường

sử dụng các hệ màu khác như: HSV, HSL, YCrCb Vì những hệ màu này biểu diễnmàu sắc giống với quan điểm nhìn màu sắc của con người Sau đây, ta sẽ đi vào diễnđạt chi tiết một số hệ màu cụ thể

1.2.1 Hệ màu HSV

HSV (còn có tên gọi khác là HSB) là viết tắt của Hue, Saturation, Value Hệ màugồm 3 thành phần H, S, V Trong hệ màu này, các màu đều được biểu diễn dựa trên 3thành phần H, S, V này

H là viết tắt của Hue, nghĩa là màu sắc Thành phần này biểu diễn màu sắc vốn cócủa màu như: đỏ, xanh da trời, da cam,… Nó có giá trị từ 0 đến 360o Hình sau minhhọa giá trị của H và màu tương ứng:

Trang 9

Hình 1.1: Mô hình biểu diễn 2 thành phần màu H,S trong HSV

Ở trong hình, các giá trị của H đã được quy về dải [0,6), tương ứng với chia các góccho 60 độ Việc biểu diễn H trong dải giá trị nào không thành vấn đề

S là viết tắt của Saturation, nghĩa là độ bão hòa Ta có thể hiểu nó giống như kháiniệm nồng độ trong hóa học, với dung môi là màu trắng và chất tan là màu S có giátrị nằm trong đoạn [0,1] Khi giá trị của S lớn, lượng màu hòa trong màu trắng nhiềulên, màu sẽ đậm hơn S=1, màu đậm nhất, chiếm hoàn toàn màu trắng Và ngược lại,khi giá trị S nhỏ, lượng màu hòa trong màu trắng ít đi, màu sẽ nhạt hơn S=0 tươngứng với không có một chút màu nào pha trong màu trắng, kết quả sẽ không có màu(cũng không khẳng định ngay kết quả là màu trắng, vì nó còn phụ thuộc vào thànhphần V nữa, nhưng có thể khẳng định nó là màu xám) Ví dụ: khi H=0, ta có màu đỏ.Nhưng không phải cứ H=0 là ta có được 1 màu đỏ đậm đà, nó còn phụ thuộc vào S(tức là phụ thuộc vào lượng màu đỏ hòa trong màu trắng) Khi S nhỏ, ta có màu đỏnhạt Khi S lớn ta có màu đỏ đậm hơn S=1 màu đỏ đậm nhất Khi S=0, giá trị của Hbằng bao nhiêu là vô nghĩa, kết quả cũng chỉ là 1 màu trắng (giả sử V=max)

Thành phần V là viết tắt của value, nó biểu thị thành phần độ sáng V có giá trị nằmtrong đoạn [0,1] Bạn mặc 1 chiếc áo hồng, nhưng nếu bạn đứng trong bóng tối, mọingười sẽ chỉ nhìn thấy chiếc áo màu đen Vai trò của V là như vậy Với 1 giá trị Hxác định, ta có 1 màu xác định Với giá trị S, ta có được độ đậm nhạt cho màu đó.Nhưng ta sẽ không thể cảm nhận đúng màu đó với độ đậm nhạt đó, nếu độ sángkhông chuẩn Khi V=1 ta mới cảm nhận được đúng bản chất vốn có của màu Khi Vtăng tương ứng với độ sáng tăng dần V=0: không có ánh sáng, tất cả chỉ là 1 màuđen với mọi H và S Như ở trên, ta đã nói, khi S=0 thì màu kết quả không phụ thuộcvào H, nhưng chưa thể nói ngay ta có màu trắng vì còn phụ thuộc vào V Nếu V=0 ta

có màu đen, V=1 ta có màu trắng, còn nếu 0<V<1 thì ta có màu xám

Hệ màu có thể được mô hình hóa quá hình sau:

Trang 10

Hình 1.2: Mô hình hóa hệ màu HSV

Trong xử lý ảnh, ta luôn có nhu cầu chuyển đổi từ hệ màu RGB sang HSV và ngượclại Công thức chuyển đổi như sau:

Công thức từ RGB sang HSV:

Trong đó:

• max=max(r,g,b)

• min=min(r,g,b)

• các thành phần màu r,g,b có giá trị nằm trong đoạn [0,1]

Công thức biến đổi từ HSV sang RGB:

Trang 11

1.2.2 Hệ màu HSL

HSL (còn có tên gọi khác là HSI) là viết tắt của Hue, Saturation, Lightness Nó tương

tự như hệ màu HSV (L tương ứng với V cùng chỉ cường độ sáng), với H thuộc[0,360), S thuộc [0,1], L thuộc [0,1] Tuy nhiên có một số điểm khác như sau (tấtnhiên là phải có khác, không thì đã chỉ là 1 hệ màu):

• trong hệ màu HSV, ta thấy được màu đúng của nó với giá trị V=1 Còn trongHSL, màu đúng của nó được thể hiện với L=0,5 Tức là với S=0, trong HSVvới V=1 ta có màu trắng, còn trong HSL với L=0,5 ta vẫn chỉ có màu xám.Màu trắng chỉ được thể hiện khi L=1 Nhưng khi đó, dù S ≠0 thì cũng vẫn làmàu trắng, cho dù H bằng bao nhiêu Còn ở HSV khi V=1 thì nếu S≠0 thì sẽthể hiện màu sắc với màu chân thực nhất

• Hai thành phần S ở 2 mô hình, mặc dù có tên giống nhau, nhưng công thứctính khác nhau

• Mô hình màu HSV ra đời trước mô hình HSL

Mô hình HSL có thể được biểu diễn bằng hình sau:

Trang 12

Hình 1.3: Mô hình hệ màu HSL

Công thức chuyển đổi giữa 2 hệ màu RGB và HSL như sau:

Chuyển từ RGB sang HSL:

H được tính giống như trong HSV

Trong đó, các tham số được diễn đạt như trong công thức của HSV.Chuyển từ HSL sang RGB:

Trang 13

1.2.3 Hệ màu YCrCb

Hệ màu này được sử dụng trong các hệ thống ảnh số và video Nó còn dùng trong cácchuẩn nén JPEG và MPEG Vì hệ màu RGB chỉ thuận tiện cho hiển thị lên màn hìnhnhưng lại không thuận tiện trong lưu trữ và chuyển đổi, nên người ta đã nghĩ ra hệmàu này thuận lợi cho nén và chuyển đổi

Hệ màu có 3 thành phần là: Y – biểu diễn thành phần độ sáng; Cr, Cb là các sắc tố đỏ(red) và xanh lục (blue) trong màu Hệ màu này không phải là hệ màu tuyệt đối, tức

là ứng với 1 giá trị của RGB, tùy theo chuẩn nào được dùng mà ta có các giá trịYCrCb khác nhau (sẽ nói rõ hơn trong phần chuyển đổi giữa 2 hệ màu này) YCrCb

là dạng biểu diễn số của hệ màu này (tức là các thành phần Y, Cr, Cb nhận các giá trị

số nguyên), nó còn có dạng analog nữa, kí hiệu là YPrPb

Công thức chuyển đổi giữa 2 hệ màu như sau: đầu tiên là công thức chuyển từ RGBsang dạng analog của hệ màu YPrPb:

Trong đó:

• R, G, B thuộc [0,1]

• Y thuộc [0,1]

• Pr, Pb thuộc [-0,5;0,5]

Trang 14

Trong công thức có 2 hằng số là Kb và Kr Giá trị của chúng tùy theo chuẩn nào được

sử dụng Ví dụ: chuẩn ITU-R BT.601: Kb=0,114; Kr=0,299 chuẩn ITU-R BT.709:Kb=0,0722; Kr=0,2126; và còn một số chuẩn khác nữa

Công thức tính ngược lại RGB được suy trực tiếp từ công thức trên Rõ ràng từ 2dòng dưới, ta tính lại được B và R, sau đó thay vào dòng đầu tính ra được G

Dạng số của hệ màu, tức là YCrCb được tính bằng cách lượng tử hóa dải giá trị củaYPrPb Ví dụ, với mã hóa 8 bít, giá trị Y được tính ra sẽ có giá trị nằm trong khoảng[16;235], còn Cr, Cb nằm trong khoảng [16;240] Bạn sẽ thắc mắc tại sao lại không là[0;255], thực ra tôi cũng thấy thắc mắc Với giải [16;235], giá trị Y trong YCrCbđược suy từ Y trong YPrPb (tạm kí hiệu là Y’ để phân biệt) như sau (chỉ là 1 phépthay đổi dải giá trị đơn giản):

Các bước thực hiện của phương pháp này như sau:

• Ảnh đầu vào, ảnh màu (A1)

• Lọc ảnh bằng bộ lọc Sobel, thu được ảnh biên (A2)

• Duyệt qua các điểm ảnh của ảnh ban đầu A1, xác định xem điểm nào làmàu da, điểm nào không Từ đó tạo ra ảnh trong đó chỉ hiện các điểm làmàu da (giống như ảnh nhị phân vậy), gọi là ảnh A3 Trong quá trình xácđịnh điểm màu da này có sử dụng ảnh biên A2

• Xác định vị trí các vùng trong ảnh A3 về vị trí, chiều rộng, chiều cao

• Xác định xem vùng ảnh có phải là mặt không dựa trên tỉ lệ chiềurộng/chiều cao và tỉ lệ số điểm màu da trong hình chữ nhật bao vùng ảnhđó

Chi tiết các bước như sau:

1.3.1.1 Xác định 1 điểm có là màu da hay không

Để xác định 1 điểm có phải là màu da hay không, nhóm tác giả dựa trên mộtHistogram được tạo nên Quá trình tạo Histogram này như sau: các tác giả đã thựchiện quá trình học màu da dựa trên các ảnh khuôn mặt kiểu như sau:

Trang 15

Hình 1.4: Một số mặt người trong tổng hợp Histogram của màu da mặt

Khi đó, với mỗi điểm trong ảnh, lấy về giá trị H (hue) và S (saturation) trong mô hìnhmàu HSV Tại sao lại chỉ lấy về H,S? Vì màu da của con người trong ảnh còn phụthuộc vào yếu tố ánh sáng, ảnh tối thì màu da sẽ hơi sẫm, ảnh sáng thì màu da sẽtrắng hơn Cùng 1 người nhưng trong điều kiện ánh sáng khác nhau, màu da cũng sẽ

bị thay đổi Điều đó gây ra sự đa dạng, phức tạp trong màu da Do đó, ta cần loại bỏtác động của yếu tố ánh sáng này, để lấy về màu da đúng của mỗi người và để hạnchế bớt sự đa dạng trong màu da Thành phần V trong mô hình màu HSV chính làthành phần biểu thị độ sáng trong ảnh Vì thế nó bị loại bỏ Trong Histogram dựa trên(H,S), cột ứng với giá tri H,S này sẽ được tăng lên 1 Sau quá trình học, Histogramthu được sẽ được chuẩn hóa, tức là chia tỉ lệ, để có được các giá trị trong khoảng(0,1), chứ không còn là số điểm ảnh nữa

Để xác định 1 điểm ảnh có phải là màu da hay không, ban đầu phải lấy về thành phầnH,S của điểm ảnh đó Sau đó, dựa vào histogram thu được xác định xem cột ứng vớigiá trị H,S này có giá trị bằng bao nhiêu, nếu nhỏ hơn 1 ngưỡng cho trứơc thì đókhông phải là màu da, ngược lại thì là màu da Các tác giả thấy rằng nếu chỉ dùngthông tin này thì kết quả không tốt bằng việc dựa thêm thông tin về biên nữa để xácđịnh 1 điểm có phải là màu da hay không Tóm lại, để xác định 1 điểm trong ảnh cóphải là màu da hay không, dựa trên 2 tiêu chí:

o Histogram(H,S) phải lớn hơn 1 giá trị ngưỡng - skinthreshold

o Điểm đó không nằm trên biên Để xác định nó có nằm trên biên không, cần

sử dụng ảnh biên Trong ảnh biên, 1 điểm được coi là nằm trên biên nếugiá trị của nó lớn hơn 1 giá trị ngưỡng – edgethreshold

Bằng thực nghiệm, các tác giả chọn ra các giá trị cụ thể cho các giá trị ngưỡng kianhư sau:

o Skinthreshold=0,1

o Edgethreshold=125

1.3.1.2 Xác định vị trí và kích thước các vùng trong ảnh màu da (A3)

Ảnh A3 lúc này là ảnh nhị phân, các điểm màu da có giá trị 1, các điểm không phải

có giá trị 0 Để xác định vùng trong ảnh dựa trên phương pháp 8 hàng xóm Hai điểmđược coi là thuộc cùng 1 vùng nếu điểm này là 1 trong 8 hàng xóm của điểm kia

Để xác định kích thứơc của vùng, thì các tác giả làm như sau: đầu tiên là xác địnhđiểm trung tâm của vùng Nó được xác định bằng cách tính trung bình cộng tọa độcủa các điểm trong vùng Sau khi có được tọa độ của điểm này rồi, ta xác định chiềucao của vùng như sau:

o Lấy y của các điểm trong vùng trừ đi y của điểm trung tâm

Trang 16

o Lấy trung bình cộng của các giá trị âm, và lấy trung bình cộng của các giátrị dương.

o Cộng trị tuyệt đối 2 giá trị trung bình đó lại, được bao nhiêu nhân 2 rachiều cao

Với chiều rộng của vùng làm tương tự

Đó là cách làm của tác giả, với cách làm này ta thấy ngay một điều, các giá trị đượctính trung bình, điều đó có nghĩa là khung hình chữ nhật đó sẽ không bao hết cácđiểm nằm trong vùng, và quá trình duyệt đòi hỏi phải lưu lại tất cả tọa độ các điểmtrong vùng để phục vụ cho tính chiều rộng, chiều cao sau này Tôi đề xuất 1 phươngpháp đơn giản hơn giải quyết được 2 vấn đề trên là: lấy x max, x min, y max, y mincủa tất cả các điểm trong vùng Tuy nhiên có thể làm vậy lại ảnh hưởng đến chuẩnđoán vùng mặt sau này

1.3.1.3 Quyết định có phải là vùng mặt hay không

Vì vùng da tìm thấy có thể là da tay, da chân, … nên để xác định vùng đó có phải làkhuôn mặt hay không, dựa trên 2 tiêu chí:

 Cao/rộng hoặc rộng/cao phải nằm trong khoảng: tỉ lệ vàng ±delta Rộng/cao là cho trường hợp mặt nằm ngang, còn delta được đưa vào vì tất nhiên

tỉ lệ không thể nào đúng bằng tỉ lệ vàng được, và cũng vì những khuôn mặtkhác nhau cũng lệch nhau đôi chút, và cuối cùng là vì những trường hợpmặt nghiêng Tỉ lệ vàng =

2

5

1 +

 Tỉ lệ số điểm màu da trong khung hình chữ nhật của vùng đó phải lớn hơn

1 giá trị ngưỡng – PercentageThreshold

Bằng thực nghiệm, nhóm tác giả đã đưa ra giá trị cho các tham số đó như sau:

Số điểm ảnh được thu thập trong quá trình học là: 4.500.000 điểm ảnh

Bên cạnh các khuôn mặt được phát hiện cũng có những sự phát hiện nhầm chủ yếu làvùng tay

Sau đây là một số kết quả:

Trang 17

(nhận ra được các khuôn mặt nhưng nhầm vùng tay)

Hình 1.5: Một số ảnh kết quả của phương pháp

 Sự dính nhau của các vùng màu da khi phân vùng, ví dụ vùng damặt và da cổ Nguyên nhân là vì thuật toán xác định vùng dựa trên 8láng giềng gần, chỉ cần 1 điểm chung cũng có thể sát nhập 2 vùng

Trang 18

thành 1 Điều này dẫn đến, khung hình chữ nhật bao vùng mặtthường to Và nhiều khi làm cho không phát hiện ra khuôn mặt Ví

dụ khi bạn chồng tay vào cằm hoặc tay đặt ngang cổ, khi đó vùngđược phát hiện sẽ không có tỉ lệ phù hợp và không được xem xét làmặt

 Không phát hiện được trong trường hợp đeo kính hoặc dùng khănche mặt (nói chung là không để lộ làn da)

1.3.2 Phương pháp dựa trên nhiều chứng cứ của Manoj Seshadrinathan và Jezekiel Ben – Arie

Trong phương pháp 1, các tác giả chỉ dựa trên màu da để xác định vùng mặt và dựavào tỉ lệ kích thước các chiều để xác định xem đó có phải là mặt hay không Còntrong phương pháp này, các tác giả sẽ đưa ra quyết định đó có phải là mặt hay khôngdựa trên nhiều chứng cứ, không chỉ là màu da Các chứng cứ đó là:

Để dựa vào Cr, Cb phát hiện 1 điểm có màu da mặt hay không, các tác giả thực hiệnquá trình học màu da mặt bằng phương pháp mạng Nơron có tên là: RPROP(Resillient Propagasion) Đây là 1 thuật toán học mạng nơron cải tiến của thuật toánBackpropagasion Thuật toán RPROP cho kết quả hội tụ nhanh hơn thuật toánBackpropagasion

Trang 19

Hình 1.6: Biểu đồ hội tụ của phương pháp học RPROP

Như hình trên ta thấy, sự phát hiện sai của RPROP trong quá trình học tiến về 0nhanh hơn phương pháp kia

1.3.2.2 Dựa trên hình dạng

Sau khi xác định được điểm nào là màu da, điểm nào không, ta đưa ảnh về ảnh nhịphân, với các điểm màu da là 1 và các điểm không phải màu da là 0 Từ đó, trong ảnhxuất hiện các vùng màu da Tuy nhiên, không phải vùng nào cũng là khuôn mặt Đểloại bỏ những vùng không phải là khuôn mặt, các tác giả dựa trên các tiêu chuẩn vềhình dạng

Tiêu chuẩn đầu tiên được áp dụng là tiêu chuẩn tỉ lệ mặt 1/3 Tức là chiều rộng trênchiều cao khuôn mặt phải >=1/3

Tiêu chuẩn thứ 2 được sử dụng là tiêu chuẩn vùng elip Mỗi khuôn mặt được coi làgần giống hình elip Coi các vùng phát hiện được đó như là các hình elip Ta xác địnhcác độ dài các trục của nó: trục chính và trục phụ Để xác định điều này, các tác giả

sử dụng biến đổi KL Sau khi, xác định được độ dài các trục, các tác giả đưa ra côngthức đánh giá cho vùng đó như sau:

l l

N i

π

trong đó: l1, l2 là chiều dài các trục, Ni là số điểm trong vùng i đang xem xét

Ngoài ra, tác giả còn xác định cả tỉ lệ tóc trong vùng elip này Việc xác định màu tóccũng được thực hiện bằng học mạng nơron RPROP

1.3.2.3 Dùng các bộ lọc Gabor

Trang 20

Các tác giả còn sử dụng bộ lọc Gabor để nhận ra các vùng mặt Các sóng 2 chiềuGabor (Gabor 2D wavelet) là 1 chứng cứ độc lập khác cho nhận ra khuôn mặt Nócung cấp các tính chất đáp ứng tần số của ảnh Biểu thức của hàm Gabor 2 chiều nhưsau:

Trong đó: (x,y) là các điểm trong ảnh, σx, σy là kí hiệu của các tỉ lệ Gaussian dọc theocác trục tương ứng, (xo,yo) là tọa độ tâm của hàm trong miền không gian, uo, vo là cáctần số góc

Phân tách các thành phần thực và ảo trong hàm trên theo công thức: ejφ=cosφ + jsinφ,

ta được các hàm dạng sin và cosin với 2 tham số độc lập là: tỉ lệ σ và góc quay θ:

Trong thử nghiệm, các tác giả đã sử dụng 64 hàm Gabor với 4 hướng và 8 tỉ lệ (32hàm cos và 32 hàm sin) Các tác giả đã sử dụng 5 mẫu học để nhận về các dấu hiệucủa hàm Gabor cho các tư thế đầu khác nhau:

Hình 1.7: Các hướng đầu khác nhau trong học dấu hiệu Gabor

Các hình chiếu Gabor trên mỗi ảnh được nhận về Kết quả, ta có 5 tập các dấu hiệu,mỗi tập cho 1 hình mặt trên Vì tập hàm Gabor là 64, nên với mỗi hình mặt trên, ta có

64 kết quả trả về

Áp dụng các bộ lọc Gabor lên ảnh vào, thu được 1 tập dấu hiệu Sau đó, các tác giả sẽtính toán sự gần gũi của tập dấu hiệu thu được đó với 5 mô hình dấu hiệu thu đượctrong quá trình học ở trên, lấy về giá trị lớn nhất và gán cho điểm ảnh đang tính đó.Như vậy, mỗi điểm trong ảnh vào sẽ có một điểm số Sg(x,y) thể hiện sự giống của nóvới khuôn mặt mô hình

1.3.2.4 Tổng hợp các kết quả

Qua phân tích ảnh dựa trên một loạt các tham số như trên, tác giả tiến hành tổng hợpcác kết quả lại bằng 1 công thức, sau đó đưa ra 1 giá trị ngưỡng để quyết định xem

đó có phải là mặt hay không

Quá trình thực hiện được cho trong sơ đồ sau:

Trang 21

Hình 1.8: Sơ đồ biểu diễn phương pháp

1.3.2.5 Kết quả thực hiện

Trong quá trình học màu da mặt, các tác giả đã dùng đến hàng nghìn điểm màu damặt, và cũng 1 số lượng như vậy các điểm không phải là màu da mặt Sau đây là 1 sốkết quả thử nghiệm:

Trang 22

Hình 1.9: Một số ảnh kết quả của phương pháp Từ trái sang phải: ảnh nhị phân,

ảnh kết quả với ngưỡng 0,7, ảnh kết quả với ngưỡng 0,8

Hình trên sử dụng giá trị cắt là 0,7, phát hiện được nhiều khuôn mặt hơn, nhưng lạiphát hiện nhầm 1 bàn tay góc phải dưới của ảnh Ảnh dưới sử dụng ngưỡng cắt caohơn là 0,8, không phát hiện nhầm bàn tay đó, nhưng lại bỏ xót vài khuôn mặt

Kết quả thực nghiệm cho tỉ lệ rất cao: 96%

1.3.2.6 Đánh giá

Phương pháp này có thể phát hiện được các khuôn mặt có kích thước và hướng dadạng (mà không giả định trước kích thước và hướng khuôn mặt) Phương pháp chokết quả phát hiện rất tốt (96%)

Tuy nhiên, có thể nó dùng nhiều tiêu chí để xác định khuôn mặt nên có thể thời gian

sẽ lâu hơn các phương pháp khác một chút Nhưng điều này có thể khắc phục bằngđầu tư phần cứng, sử dụng các thiết bị có cấu hình mạnh, tốc độ cao, nên nó vẫn cókhả năng sử dụng được trong hệ thống thời gian thực

1.3.3 Phương pháp sử dụng khoảng cách Hausdorff của Oliver Jesorsky, Klaus J Kirchberg và Robert W Frischholz

Phương pháp này áp dụng trên ảnh xám, không áp dụng trên ảnh màu Nhưng đókhông phải là hạn chế vì ta có thể chuyển từ ảnh màu sang ảnh xám dễ dàng Ngay

từ đầu ta thấy nói đến khoảng cách Hausdorff Có thể hiểu một cách nôm na, khoảngcách Hausdorff là 1 độ đo cho biết sự giống nhau của 2 mô hình Ta sử dụng nó đểxác định xem 1 vùng trong ảnh giống với 1 mô hình mặt đưa ra đến mức nào, để xácđịnh xem vùng ảnh đó có phải là mặt người hay không

1.3.3.1 Khoảng cách Hausdorff

Cho 2 tập điểm:

A={a1,a2, ,a m}

B={b1,b2, ,b n}

Trang 23

Khi đó, khoảng cách Hausdorff được định nghĩa như sau:

H(A,B)=Max(h(A,B),h(B,A))Trong đó:

h(A,B)=maxa A minb B ||ab||

h(A,B) được gọi khoảng cách Hausdorff trực tiếp từ A tới B

||a-b|| là chuẩn của vector a-b Có nhiều dạng chuẩn khác nhau, phổ biến là chuẩnƠclit, chính là căn bậc 2 của tổng bình phương các tọa độ

Trong xử lý ảnh, người ta không áp dụng nguyên định nghĩa khoảng cách Hausdorff này mà áp dụng 1 biến dạng của khoảng cách Hausdorff này (modified Hausdorff distance – mod), công thức như sau:

A| min(|| ||)

| 1

Trong đó: |A| là lực lượng của tập A, chính là số vector trong A

Công thức này khác công thức chuẩn ở chỗ: công thức chuẩn lấy max trong 1 tập gíatrị, còn ở đây lấy trung bình cộng

Thực nghiệm cho thấy rằng, trong xử lý ảnh, sử dụng công thức tính khoảng cáchHausdorff thứ 2 cho kết quả tốt hơn

1.3.3.2 Kĩ thuật phát hiện đối tượng dựa trên mô hình

Rucklidge đưa ra phương pháp phát hiện đối tượng trong ảnh số dựa vào khoảng cáchHausdorff như sau:

Cho 2 tập vector 2 chiều A, B; trong đó A đại diện cho ảnh, còn B là đối tượng cầnphát hiện Mục đích là tìm các tham số biến đổi p thuộc P sao cho khoảng cáchHausdorff giữa đối tượng được biến đổi Tp(B) và A là nhỏ nhất Các biến đổi đượcphép và không gian tham số P phụ thuộc vào từng ứng dụng cụ thể

Khoảng cách h(A, Tp(B)) được gọi là khoảng cách Hausdorff lùi, còn h(Tp(B),A) gọi

là khoảng cách Hausdorff tiến

Quá trình có thể được mô phỏng qua hình vẽ sau:

Hình 1.10: Ví dụ mô phỏng quá trình nhận ra đối tượng dựa trên mô hình

Trang 24

1.3.3.3 Quá trình thực hiện phát hiện mặt người

Quá trình thực hiện gồm 2 pha: pha thô và pha tinh chỉnh Mỗi pha đều gồm 2 bước:

Quá trình được mô phỏng qua hình sau:

Hình 1.11: Quá trình phát hiện mặt người của phương pháp

AOI là viết tắt của Area of interested – vùng ảnh quan tâm

1.3.4 Phương pháp dựa trên phân tích bó sóng (wavelet packet analysis) của

C Garcia, G Zikos, G Tziritas

Theo lời giới thiệu của các tác giả, phương pháp mà các tác giả đưa ra là phươngpháp phát hiện tự động và nhanh các mặt người trong ảnh màu Phương pháp khônggiả định trước về số lượng, vị trí, hướng và kích thước các khuôn mặt trong ảnh.Phương pháp có thể phát hiện tốt các khuôn mặt trên các nền ảnh phức tạp, cũng nhưtrong những điều kiện ánh sáng khác nhau

Sơ lược về các bước của phương pháp như sau: Với mỗi ảnh đưa vào, đầu tiên, cáctác giả sử dụng các giá trị sắc tố da mặt để đưa ra các vùng trong ảnh có khả năng là

Trang 25

vùng mặt, gọi là các ứng cử viên vùng mặt Sau đó, các công việc phân tích hìnhdạng và phân tách các bó sóng được thực hiện trên mỗi ứng cử viên vùng mặt Mỗivùng ứng cử viên này sẽ được biểu diễn như là 1 tập con của các ảnh được lọc chứacác hệ số sóng Các hệ số này mô tả bề mặt của mặt và một tập các dữ liệu thống kêđơn giản được đưa ra trong trình tự tới hình thức cô đọng và các vector đặc trưng có

ý nghĩa Sau đó, một độ đo xác suất tin cậy và hiệu quả, được suy ra từ khoảng cáchBhattacharrya, được sử dụng để phân xác định xem các vùng ứng cử viên đó, vùngnào là khuôn mặt, vùng nào không, dựa trên các vector đặc trưng thu được từ trên.Sau đây ta sẽ đi vào cụ thể các khâu trong phương pháp

1.3.4.1 Xác định các vùng có màu da mặt

Để xác định các vùng này, các tác giả tiến hành nghiên cứu màu da mặt trong cáckhông gian màu YCrCb và HSV Khác với không gian màu RGB, biểu diễn màu sắcnhư là tổ hợp của 3 màu cơ bản đỏ (Red), xanh lá cây (Green), xanh da trời (Blue);các không gian màu YCrCb và HSV biểu diễn màu sắc theo quan điểm nhìn màu sắccủa con người

Qua thực nghiệm (lấy mẫu các màu da mặt của nhiều chủng tộc người khác nhau, vớinhững điều kiện ánh sáng khác nhau), các tác giả thấy rằng, các màu biểu diễn màu

da con người chỉ chiếm 1 không gian rất nhỏ trong không gian màu YCrCb hoặcHSV Minh họa qua hình sau:

Hình 1.12: Sự phân bố các điểm màu da mặt trong không gian HSV và YCrCb

Ta thấy, trong không gian màu HSV, không gian màu da mặt có vẻ kém cô đọng hơn

so với YCrCb Các tác giả từ kết quả thực nghiệm cũng đã tính ra công thức cho việcxác định một màu có phải là màu da mặt hay không, như sau:

Trong không gian màu YCrCb:

Trang 26

Trong không gian màu HSV:

Có được công thức rồi, bây giờ các tác giả tiến hành xác định các vùng da mặt Đầutiên phải duyệt qua ảnh để xác định những điểm nào là màu da, điểm nào không, dựavào 1 trong 2 công thức trên Chú ý, ở đây, các tác giả không thao tác trên từng điểmảnh (pixel) mà thao tác trên cả 1 khối điểm vuông kích thước 16x16 pixel, gọi làmacro-block Khi đó màu được so sánh là màu trung bình của cả khối

Sau khi xác định được các block nào là màu da, block nào không, các tác giả đưa ảnh

về ảnh nhị phân, với các block màu da=1 và block không phải màu da=0 Sau đó, đểxác định các vùng màu da (vùng 1), và để đảm bảo tốc độ thực hiện thuật toán, cáctác giả đã sử dụng 1 phép chiếu đơn giản lên 2 trục ngang dọc, và dựa vào các băng

0, 1 (những giá trị 0 (1) liên tiếp được gọi là băng 0 (băng 1)), để xác định các hìnhchữ nhật bao lấy các vùng màu da (tất nhiên với cách làm này, hình chữ nhật có thể

sẽ chứa 1 vùng lớn trong nó không phải là màu da) Hình minh họa sau:

Hình 1.13: Minh họa phát hiện màu da trong ảnh

Hình dòng trên là kết quả xác định vùng màu da thực hiện theo thuật toán đưa ra, cònbên dưới là kết quả cuối cùng của phương pháp này (tức là còn phải trải qua vài khâunữa mới đưa ra được kết quả này)

1.3.4.2 Xác định các ứng cử viên vùng mặt

Ở trên ta đã xác định được các vùng màu da được đóng khung trong các hình chữnhật, ở bước này, ta sẽ phải tìm trong các hình chữ nhật đó, những vùng có khả năng

là vùng mặt – gọi là ứng cử viên vùng mặt

Trang 27

Vì không biết trước kích thước của các khuôn mặt trong ảnh nên các tác giả bắt đầutìm những vùng ứng cử viên lớn nhất, sau đó giảm dần kích thước, tức là ta dùng 1cửa sổ quét Kích thước của cửa sổ đó được xác định thế nào? Các tác giả đưa ra 2tiêu chí là: giới hạn kích thước và tỉ lệ khuôn mặt Về giới hạn kích thước của cửa sổ,kích thước nhỏ nhất là: 5 x 3 macro-block, tương đương với 80 x 48 pixel Còn kíchthước lơn nhất, tất nhiên là cả khung hình chữ nhật đó Về tỉ lệ khuôn mặt, tức là tỉ lệgiữa chiều cao và chiều rộng, các tác giả đưa ra khoảng giá trị là: [1;1,8] Khoảng giátrị đưa ra rộng là để cho các hướng và các tư thế khác nhau của khuôn mặt.

Với mỗi vị trí cửa sổ quét, để xác định xem vùng đó có thể là ứng cử viên không, cáctác giả sử dụng tiêu chí là độ thuần nhất, tức là tỉ lệ các điểm 1 ở trong ô đó phải lớnhơn 1 ngưỡng nào đó Các tác giả chia ô đó ra thành 2 miền là: miền ngoài (outer) vàmiền trong (inner) Miền ngoài là đường bao của ô đó (có kích thước khoảng 15%mỗi chiều), còn miền trong là vùng tâm còn lại Hình minh họa như sau:

Hình 1.14: Sự phân chia vùng ứng cử viên khuôn mặt trong phương pháp

Khi đó, tiêu chuẩn về sự đồng nhất đặt ra cho mỗi vùng như sau: trong vùng outer, tỉ

lệ 1 phải lớn hơn 65%, còn trong vùng inner tỉ lệ 1 phải lớn hơn 1 giá trị ngưỡng pđược xác định như sau:

trong đó δ = 2, còn w, h tương ứng là chiều rộng, cao của vùng inner đó với đơn vịtính là macro-block chứ không phải pixel

1.3.4.3 Phân lớp các ứng cử viên dựa vào phân tích bó sóng

Đến bước này ta cần xác định xem vùng ứng cử viên tìm được ở trên có phải là mặthay không là mặt dựa vào phân tích bó sóng Đặc tính chính của sóng là có khả năngcung cấp một sự phân tích ảnh nhiều độ phân giải trong hình thức các ma trận hệ sốvới sự phân rã ảnh trong miền không gian và tần số cùng một lúc Trong trường hợp2D (ảnh số), biến đổi sóng thường được thực hiện bằng việc áp dụng các bộ lọc riêng

rẽ Cụ thể, một bộ lọc thông thấp và 1 bộ lọc dải thông được áp dụng Kết quả củaviệc áp dụng bộ lọc thông thấp cho ra 1 ảnh gọi là ảnh xấp xỉ Kết quả của việc ápdụng bộ lọc dải thông cho ra nhiều ảnh, gọi là các ảnh chi tiết Như vậy, kết quả củaviệc áp dụng các bộ lọc cho ra 1 ảnh xấp xỉ và nhiều ảnh chi tiết Sau đó, ảnh xấp xỉ

đó lại có thể phân rã tiếp thành ảnh xấp xỉ và các ảnh chi tiết mức 2,… Trong phươngpháp đưa ra của các tác giả, cả ảnh xấp xỉ và ảnh chi tiết đều có thể phân rã tiếp Kếtquả thu được 1 cây phân rã Qua nhiều thí nghiệm, các tác giả đã chọn ra các bộ lọcđược sử dụng là các bộ lọc cầu liên hợp

Trang 28

Có một câu hỏi đặt ra là: cây phân rã sẽ có độ sâu bao nhiêu Cây phân rã cần có 1 độsâu hợp lý để đảm bảo không mất quá nhiều chi phí cho việc phân rã và vẫn đảm bảogiữ được các thông tin có nghĩa Rõ ràng độ sâu này phụ thuộc vào kích thước vùngứng cử viên được xử lý.

Các tác giả đã xây dựng 1 csdl gồm 50 vùng mặt được lấy ra bằng tay (tức là dùngPain cắt vùng mặt trong ảnh ra), với các kích thước, hướng, ánh sáng và vị trí khácnhau Các mẫu vùng mặt này được phân làm 2 nhóm:

• Nhóm trung bình: gồm các mẫu có chiều cao <128 pixel

• Nhóm lớn: gồm các mẫu có chiều cao >128 pixel

Qua nhiều thử nghiệm, các tác giả quyết định độ sâu của cây phân rã với các ảnh cỡlớn là 3 và với các ảnh cỡ trung bình là 2 Như vậy, một ảnh sau khi được phân rã sẽđược biểu diễn bởi một tập gồm n ma trận hệ số sóng thuộc về mức sâu nhất của quátrình phân rã Tức là với ảnh trung bình sẽ có n=16, 1 ảnh xấp xỉ và 15 ảnh chi tiết;với ảnh lớn sẽ có n=64, 1 ảnh xấp xỉ và 63 ảnh chi tiết

Để lấy ra được các vector đặc trưng của vùng mặt, các tác giả chia vùng mặt ra thành

4 phần bằng nhau, và phân tích bó sóng trên mỗi phần đó để lấy về thông tin bề mặtkhuôn mặt liên quan đến các phần khác nhau của khuôn mặt như mắt, mũi, miệng.Trên mỗi phần đó, sau khi phân tích, các tác giả thu được các biến, kí hiệu là δi2, nhưvậy là có 4 biến Với ảnh xấp xỉ sẽ lấy về 4 biến (bằng cách phân chia ảnh đó thành 4phần), và với mỗi ảnh chi tiết sẽ chỉ lấy về 1 biến (không phân chia) Kết quả thuđược 1 vector đặc trưng có m+4 biến gồm 4 biến lấy từ ảnh xấp xỉ và m biến lấy từ mảnh chi tiết (m=15 với ảnh cỡ trung bình, và =63 với ảnh cỡ lớn) Tóm lại, với ảnh cỡlớn ta sẽ thu được 1 vector gồm 67 biến và với ảnh cỡ trung bình ta thu được 1 vectorgồm 19 biến

Với mỗi ảnh trong csdl, các tác giả cũng tiến hành lấy ra các vector đặc trưng Tuynhiên, nếu lấy vector đặc trưng thu được từ vùng ảnh ứng cử viên lấy được ở phatrước mà đem so sánh với từng vector đặc trưng của các ảnh trong csdl thì rõ ràng làkhả năng khớp hoàn toàn là không thể Vì vậy, các tác giả tiến hành lấy trung bìnhcác vector đặc trưng của các ảnh trong csdl để cho ra các vector đặc trưng mẫu Sau

đó, tính khoảng cách của vector đặc trưng của vùng ảnh ứng cử viên so với vectorđặc trưng mẫu để quyết định xem vùng ứng cử viên đó có phải là mặt không Vì ảnh

có 2 loại, nên cũng có 2 vector đặc trưng mẫu, 1 cho loại trung bình, 1 cho loại lớn.Công thức xác định khoảng cách như sau:

Nếu khoảng cách trên lớn hơn 1 giá trị ngưỡng (được xác định trước) thì vùng ứng cửviên đó không phải là mặt, nếu nhỏ hơn thì đó là mặt Qua thực nghiệm, các tác giảtìm được giá trị ngưỡng phù hợp là 7,0

1.3.4.4 Kết quả thử nghiệm

Trang 29

Các tác giả đã tiến hành thử nghiệm trên 100 ảnh gồm 104 khuôn mặt Các ảnh phầnlớn được lấy từ các quảng cáo, báo chí, bộ phim hoặc tự chụp Kết quả là phát hiệnđược 97 khuôn mặt (chiếm tỉ lệ 93,27%), phát hiện nhầm 23 khuôn mặt, và 7 khuônmặt không phát hiện ra Các phát hiện nhầm là do nó có màu giống màu da, và hìnhdạng cũng có tỉ lệ tương tự khuôn mặt Việc không phát hiện hết được các khuôn mặt

là điều tất yếu, không có phương pháp nào có thể đạt tỉ lệ phát hiện 100% Trong 7khuôn mặt không phát hiện ra đó thì có 4 khuôn mặt quá sáng hoặc quá tối và 3khuôn mặt quá nhỏ

Thời gian thực hiện thuật toán trên máy trạm SUN ULTRA-2 là 5,4 s; trên máy trạmSGI O2 là 2,44 s; trên máy trạm SPARC 5 là 32,6 ms Trong thuật toán thì khâu phân

rã sóng là khâu tiêu tốn nhiều thời gian nhất, chiếm phần lớn thời gian thực hiện thuậttoán Sau đây là một số hình ảnh kết quả:

Hình 1.15: Một số ảnh kết quả

1.3.5 Phương pháp sử dụng các khung sóng (wavelet frames) của C Garcia,

G Simandiris và G Tziritas

Trang 30

1.3.5.1 Tổng quan

Đây là 1 phương pháp mới cho phát hiện mặt người trong ảnh màu, không phụ thuộcvào hướng, kích thước, vị trí, số lượng các khuôn mặt trong ảnh; cũng không phụthuộc vào nền và điều kiện ánh sáng trong ảnh, tức là cho phép phát hiện được cáckhuôn mặt trong ảnh có nền ảnh phức tạp hoặc điều kiện ánh sáng đa dạng, khôngbiết trước

Ý tưởng chung của phương pháp này như sau: đầu tiên các tác giả sử dụng các khungsóng để phát hiện ra các bộ phận trên khuôn mặt, gồm: 2 mắt, mũi, miệng Tất nhiên

là có thể có những phát hiện nhầm ở bước này, như phát hiện 1 con mắt, nhưng thực

tế đó không phải là mắt Như vậy, sau bước này thu được 1 tập các vùng được pháthiện là mắt, 1 tập các vùng mũi và 1 tập các vùng miệng Sau đó, các tác giả tiếnhành xây dựng lên các mô hình khuôn mặt như sau: với mỗi con mắt phát hiện được,các tác giả sẽ coi đó là con mắt trái của khuôn mặt (theo hướng nhìn vào ảnh), khi đó,yêu cầu phía bên phải cũng phải có 1 con mắt (mắt phải) với 1 khoảng cách và 1 góc

độ xác định (có góc vì có thể mặt người nghiêng) Nếu trong giới hạn đó mà không

có con mắt nào thì bỏ qua và chuyển sang xây dựng mô hình mặt ứng với con mắt tráikhác Nếu tồn tại con mắt phải trong giới hạn cho phép, thì tiếp đến là tìm các bộphận khác là miệng, mũi Các bộ phận này cũng phải nằm trong 1 giới hạn cho phép.Nếu không thấy bộ phận nào thì sẽ loại bỏ luôn Nếu thấy đầy đủ, thì tức là đã xácđịnh được 1 khuôn mặt

Trong thực hiện chi tiết, các tác giả còn xem xét thêm nhiều vùng nữa như vùng má,vùng quanh miệng, Sau đây, ta đi vào chi tiết các bước của phương pháp này

1.3.5.2 Xác định các thành phần trên khuôn mặt (2 mắt, mũi, miệng)

Để hạn chế vùng tìm kiếm trong ảnh, ảnh có thể được xử lý trước bằng cách cho lọcqua 1 bộ lọc phát hiện màu da Khi đó, ta chỉ cần tìm các bộ phận mắt, mũi, miệng,trong vùng màu da đó Nhưng đó không phải là bắt buộc, phương pháp vẫn có thể tìm

ra được những bộ phận đó mà không cần phải lọc màu da

Để phát hiện ra các bộ phận đó, các tác giả dựa trên các khung sóng được lấy ra từảnh Các khung sóng này được lấy ra bằng việc sử dụng 1 cặp bộ lọc thông thấp vàthông cao Áp dụng các bộ lọc đó lên ảnh gốc ta thu được 4 ảnh hệ số sóng là: A(approximation), H (horizontal details), V (vertical details), D (diagonal details) Sau

đó tiếp tục áp dụng các bộ lọc đó lên các ảnh A, H, V, D đó, ta thu được các ảnh sónglà: AA, AH, AV, AD,… Áp dụng tiếp các bộ lọc này một lần nữa trên các ảnh sóng

ta thu được các ảnh kết quả gọi là các băng (band): AAA, AAH,… Tóm lại, sau quátrình này, ta thu được 1 cây khung sóng 3 mức Giải pháp này đưa ra khả năng phântích tín hiệu mạnh Các độ đo thống kê sẽ được đưa ra từ các ảnh hệ số sóng theo 1trình tự, để xác định các tính chất của bề mặt của các thành phần khuôn mặt

Dựa trên nhiều thí nghiệm, các tác giả thấy rằng, băng AHH cung cấp các dấu hiệuchắc chắn cho phát hiện mắt và mồm Còn các đặc trưng của mũi thì được chứngminh là kém ổn định trong các băng sóng, bởi vì nó nghèo đặc trưng và bị thay đổimạnh khi điều kiện sáng thay đổi hoặc hướng khuôn mặt thay đổi Bởi vậy, trong giaiđoạn khoanh vùng các bộ phận khuôn mặt, các tác giả không thực hiện xác định vùngcủa mũi Các thông tin liên qua đến mũi sẽ được sử dụng trong giai đoạn sau của giảithuật

Trang 31

Để phát hiện ra các thành phần của khuôn mặt, các tác giả sử dụng 1 cửa sổ quét là40x40 pixel Lý do sử dụng cửa sổ quét có kích thước cố định này là: các tác giảhướng tới việc phát hiện ra tất cả các thành phần có kích thước khác nhau này chỉbằng 1 lần quét Hình dưới đây minh họa 1 tín hiệu AHH với 1 cửa sổ có tâm nằmtrên 1 con mắt:

Hình 1.16: Từ trái sang phải và từ trên xuống: ảnh gốc, băng AHH, tín hiệu AHH

của mắt và tín hiệu được lấy ra

Hình thức sóng dọc xác định các tính chất của mắt và cho phép phát hiện ra chúng,trong khi đó, tín hiệu này được giữ lại không đổi theo hướng ngang Do đó, 1 bộ lọcthông thấp theo hướng ngang được sử dụng để đưa ra tín hiệu 1 chiều, kết hợp vớicác tính chất theo hướng dọc, như thể hiện trong hình trên Chỉ các cực trị của tínhiệu mới được sử dụng trong phân lớp Sự quyết định xem trong ô cửa sổ có phải làmắt hay không dựa vào vector dữ liệu Thành phần của vector này gồm 3 cực đại và 2cực tiểu (hình trên) Sau đó vector này sẽ được so sánh với 1 vector mẫu được tạo sẵn(dựa trên 1 tập mẫu) dựa trên khoảng cách Mahalanobis Nếu khoảng cách tính ra nhỏhơn 1 giá trị ngưỡng thì nó sẽ được coi là mắt

Quá trình cũng được thực hiện tương tự với phát hiện mồm

1.3.5.3 Mô hình hóa khuôn mặt bằng một mẫu biến đổi

Mô hình khuôn mặt bao gồm 4 thành phần: 2 mắt, mũi, miệng với các kích thước và

vị trí tương đối giữa chúng Vì các khuôn mặt có các kích thước khác nhau nên cácthành phần này có kích thước lớn nhỏ tùy theo từng khuôn mặt, nhưng phải đảm bảo

tỉ lệ về kích thước giữa chúng là không đổi Sau đây là các tham số trong mô hìnhkhuôn mặt:

Trang 32

Hình 1.17: Các tham số của mô hình khuôn mặt

Các tham số bao gồm: de, dn, dm, αe, αn Trong đó:

• de là khoảng cách giữa 2 tâm mắt Khoảng cách này thay đổi từ 20 pixel đến

60 pixel, phổ biến là 40 pixel

• αe là góc giữa đường cơ bản (đường nối 2 tâm mắt) và đường nằm ngang Nóthể hiện hướng nghiêng của khuôn mặt Nó có giá trị biến đổi trong khoảng

±200

• dn là khoảng cách từ tâm mũi đến đường cơ bản Nó được giới hạn trongkhoảng: 0,6de ≤ dn ≤0,8de

• dm là khoảng cách từ miệng đến đường cơ bản Rằng buộc: dm=2dn

• αn là góc giữa đường trục mũi và pháp tuyến với đường cơ bản Nó thay đổitrong giới hạn ±2 αe

Ta sẽ đặt mô hình mặt vào mỗi con mắt tìm thấy trong ảnh (coi đó là mắt trái trong

mô hình), sau đó biến đổi (thay đổi giá trị các tham số trên) để cố gắng đưa vào trong

mô hình con mắt phải và miệng Nếu sau khi biến đổi mô hình rồi mà không thể đưavào con mắt phải hoặc miệng, thì sẽ chuyển sang con mắt trái khác

Cửa sổ của các vùng bộ phận khuôn mặt phụ thuộc vào khoảng cách giữa 2 mắt de:w=0,03w0*de, h=0,03h0*de Các tham số (wo,ho) tương ứng với mắt, mũi, miệng là:(25,20), (25,16), (35,16)

Ngoài 4 bộ phận trên của khuôn mặt, các tác giả còn đưa vào xem xét vùng giữa haimắt, xung quanh miệng, vùng má Các vùng này được xác định dựa trên góc nghiêngcủa khuôn mặt và khoảng cách giữa các cửa sổ của các vùng mắt mũi miệng Hìnhminh họa sau:

Trang 33

Hình 1.18: Vùng xung quanh các đặc trưng khuôn mặt

Sau khi có được mẫu rồi, các tác giả chuyển sang bước tiếp theo là phân lớp nội dungmẫu (tức là xác định xem mẫu đó có thực sự là khuôn mặt không)

1.3.5.4 Phân lớp nội dung mẫu

Quá trình thực hiện qua các bước sau:

• Phân tích biến đổi cục bộ: các vùng bên trong khuôn mặt được xác định tínhchất bởi các biến đổi nhỏ trong các băng con Để tăng cường độ chính xác thìcác kiểm tra sau được tiến hành:

o Dưới vùng mắt: vùng này được xác định tính chất bởi một biến đổi nhỏtrong băng AH

o Các vùng má: các vùng này được xác định tính chất bởi các biến đổinhỏ trong các băng AH và AHH

o Các vùng xung quanh miệng: việc kiểm tra vùng này sẽ giúp cải thiện

sự khoanh vùng miệng, tức là có thể loại bỏ các cửa sổ vùng miệng tồi

• So sánh năng lượng cục bộ: một độ đo bất biến với điều kiện sáng và tư thếkhuôn mặt là tỉ lệ về năng lượng giữa vùng mắt và vùng má (năng lượng vùng

má cao hơn) Một mối quan hệ tương tự được mong đợi khi so sánh vùng mắtvới vùng giữa 2 mắt Các kiểm tra sau được tiến hành:

o Các so sánh biến đổi băng trong: các vùng mắt và miệng phải có mộtbiến đổi lớn hơn trong băng AH so với trong băng AV

o Sự tương quan giữa mắt trái và mắt phải: sự tương quan được chuẩnhóa giữa 2 cửa sổ mắt trái và mắt phải, phải lớn hơn một giá trịngưỡng

o Sự đồng nhất của da mặt: đó là một vùng zich zac xung quanh các cửa

sổ mắt và miệng Yêu cầu đặt ra là: vùng này nên có sự đồng đều vềcường độ sáng Việc này được kiểm tra bởi một giá trị ngưỡng (giá trịnày được các tác giả lấy ra từ thực nghiệm trên 100 ảnh, và không đưa

ra trong bài báo này)

Sau khi trải qua các kiểm tra trên, ứng cử viên cho khuôn mặt sẽ được đưa vào kiểmtra lần cuối cùng một cách tổng thể Sau đây, khi nói từ “đặc trưng khuôn mặt” làmuốn chỉ đến 4 bộ phận: 2 mắt, mũi, miệng Với mỗi cửa sổ đặc trưng khuôn mặt,các tác giả lấy ra 1 vector thống kê Các vector thống kê này sẽ cung cấp diễn đạt về

Trang 34

bề mặt của các đặc trưng khuôn mặt Cho mỗi đặc trưng khuôn mặt, các tác giả xéttrên n băng sóng Và trong mỗi cửa sổ bao đặc trưng khuôn mặt trong mỗi băng sóngnày, các tác giả tính ra 1 biến δi2 Như vậy, vector đặc trưng được lấy ra sẽ bao gồm nbiến δi2, nó diễn đạt về bề mặt của đặc trưng khuôn mặt đó Cụ thể: với mắt, các tácgiả sử dụng 16 băng sóng là: AH, HA, HH, HV, AHA, AHH, AHV, HAA, HAH,HAV, HHA, HHH, HHV, HVA, HVH, HVV; với mũi, sử dụng 6 băng sóng là: AH,

HA, HH, AHA, AHH, HAH; với miệng, các tác giả sử dụng 8 băng sóng là: AH, HH,AAH, AHA, HHA, HHH, HHV

Sau đó, các vector đặc trưng này sẽ được so sánh với các vector mẫu tương ứng.Tương ứng tức là: vector đặc trưng của mắt sẽ được so sánh với vector mẫu của mắt,của mũi sẽ được so sánh với mũi,… Vector mẫu này được tính từ trước trên 1 tập ảnhmẫu Mỗi đặc trưng khuôn mặt sẽ có 1 vector mẫu tương ứng: vector mẫu cho mắt,vector mẫu cho mũi, vector mẫu cho miệng Việc so sánh dựa trên khoảng cáchBhattacharya Công thức như sau:

Trong công thức trên:

• n là số thành phần trong vector, ví dụ: với mắt, n=16

• δi2 là các thành phần trong vector đặc trưng được lấy ra

• si2 là các thành phần trong vector mẫu

Khi đó, khoảng cách DB phải nhỏ hơn 1 giá trị ngưỡng (giá trị này được lấy ra từ thựcnghiệm) thì mới được chấp nhận là đặc trưng của khuôn mặt (tức là đúng là mắt hayđúng là mũi,…) Một ứng cử viên khuôn mặt được chấp nhận nếu tất cả các đặctrưng của nó được chấp nhận

1.3.5.5 Kết quả thực nghiệm

Các tác giả đã tiến hành thử nghiệm trên 100 ảnh, chứa 104 khuôn mặt, và có 10 ảnhkhông có khuôn mặt nào Kết quả: tỉ lệ phát hiện đúng là 91,4%; với 9 phát hiện sai.Thời gian thực hiện trung bình trên 1 ảnh là 19 s, chương trình được chạy trên máytrạm 690-MP, hệ điều hành SunOS 2.4 Các khuôn mặt không phát hiện được thường

là do ánh sáng quá yếu (quá tối) hoặc quá mạnh (quá sáng) Sau đây là một vài ảnhkết quả khi áp dụng phương pháp này:

Trang 35

Hình 1.19: Một số ảnh kết quả của phương pháp

Trang 36

CHƯƠNG 2: PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN

MÀU DA

Trong chương này ta sẽ trình bày chi tiết về phương pháp được đưa ra, được cài đặt trong chương trình Đó là phương pháp phát hiện mặt người dựa trên màu da và tỉ lệ kích thước khuôn mặt, trong đó việc phát hiện màu da đóng vài trò quan trọng, chủ chốt quyết định sự thành công của phương pháp Cụ thể, chương này trình bày các vấn đề sau:

Tổng quan về phương pháp.

Phương pháp phát hiện màu da.

Thuật toán phân vùng.

Các tiêu chuẩn xác định vùng mặt

2.1 Nội dung phương pháp

Từ các phương pháp đã trình bày ở Chương 1, em chọn ra một phương pháp (có cảibiên và làm rõ thêm một số bước) để cài đặt trong chương trình Phương pháp thựchiện phát hiện mặt người trong ảnh màu Do thời gian ngắn, nên phương pháp đượcđưa ra tương đối đơn giản, do đó, độ chính xác cũng không cao Nhưng bù lại, nócũng có những ưu điểm là:

• Không phụ thuộc vào độ sáng của ảnh

• Không phụ thuộc vào số lượng các khuôn mặt trong ảnh

Các bước của phương pháp như sau:

Bước 1: Phát hiện màu da Đây là bước quan trọng then chốt là bước chính

trong thuật toán, vì nếu không phát hiện được màu da thì sẽ không phát hiệnđược các khuôn mặt Ngoài các điểm màu da trên cơ thể người như mặt, cổ,tay, chân, thì trong nền của ảnh cũng có nhiều điểm có màu tương tự màu da

Số lượng các điểm đó mà nhiều thì sẽ ảnh hưởng tới xác định các khuôn mặtsau này Đầu vào của bước này là ảnh màu, đầu ra là ảnh nhị phân Nhữngđiểm 1 (điểm trắng) là những điểm màu da

Trang 37

Bước 2: Lọc nhiễu Do trong quá trình xác định màu da có thể phát hiện

nhầm một số điểm gây ra những nhiễu điểm trong ảnh nhị phân Do đó, khâunày sẽ loại bỏ những nhiễu điểm đó, để việc xác định các vùng trắng đượcthuận lợi và nhanh chóng Đầu vào là ảnh nhị phân màu da ở trên, đầu ra làảnh nhị phân được lọc nhiễu

Bước 3: Xác định các vùng trắng Các điểm trắng trong ảnh nhị phân liên

kết với nhau tạo thành các vùng trắng (dựa trên quan hệ 8 hàng xóm) Trongbước này ta sẽ phải xác định các vùng đó Đầu vào của bước này là: ảnh nhịphân đã lọc nhiễu, và đầu ra là danh sách các vùng trắng tìm được Mỗi vùngtrắng được xác định bằng các tham số sau:

o Tọa độ: mỗi vùng trắng sẽ được bao bằng một hình chữ nhật Do đó,tọa độ của vùng trắng là tọa độ của hình chữ nhật bao nó, bao gồm: tọa

độ góc trái trên (x,y) và chiều rộng, chiều cao

o Số điểm trắng trong vùng

Bước 4: Phân loại các vùng trắng Ở bước 3 ta đã xác định được danh sách

các vùng trắng Trong bước cuối cùng này, ta sẽ phải phân loại các vùng trắng

đó dựa trên một số tiêu chí để xác định xem vùng trắng nào là mặt Đầu vàocủa bước này là danh sách các vùng trắng, đầu ra là danh sách các tọa độ vùngmặt (nếu 1 vùng trắng được xác định là vùng mặt, thì trong đầu ra, ta chỉ giữlại tọa độ của vùng trắng đó (hình chữ nhật bao vùng trắng), còn tham số “sốđiểm trắng” sẽ không cần phải giữ lại trong đầu ra)

Sơ đồ khối của phương pháp như sau:

Hình 2.1: Sơ đồ khối của phương pháp

Sau đây ta sẽ đi vào chi tiết các bước trong phương pháp

2.2 Chi tiết các bước

2.2.1 Phát hiện màu da

Trong bước này ta sẽ phải duyệt qua các điểm trong ảnh vào Tại mỗi điểm, ta sẽ phảixác định xem nó có phải là màu da hay không? Nếu là màu da, ta sẽ gán cho giá trị tạiđiểm đó bằng 1, nếu không ta sẽ gán giá trị 0 Kết quả ta có 1 ảnh nhị phân, với cácđiểm 1 (điểm trắng) là các điểm màu da Sơ đồ khối của bước này như sau:

Trang 38

Hình 2.2: Vị trí của khâu trong phương pháp

Để xác định điểm màu da, dựa trên 2 tiêu chí:

• Công thức màu da

• Histogram

Một điểm trên ảnh màu vào sẽ được coi là màu da nếu thỏa mãn cả 2 tiêu chí trên

2.2.1.1 Công thức màu da

Công thức này đã được giới thiệu ở chương 1 (mục 1.3.4.1) Công thức được các tác

giả C Garcia, G Zikos, G Tziritas đưa ra Công thức được xây dựng trên cả hệ màu

YCrCb và HSV Trong phương pháp của ta chỉ sử dụng công thức trên hệ màuYCrCb Công thức như sau:

Hình sau minh họa sự phân bố của các điểm màu da trong không gian màu YCrCb:

Trang 39

Hình 2.3: Sự phân bố các điểm màu da trong không gian YCrCb

Qua hình vẽ, ta thấy ngay, các điểm màu da phân bố rất gọn trong không gian màuYCrCb Đó là lý do vì sao ta chọn công thức trên hệ màu này So sánh với trên khônggian màu HSV:

Hình 2.4: Sự phân bố các điểm màu da trong hệ màu HSV

Rõ ràng trên không gian màu HSV, các điểm màu da rất phân tán

Trở lại với công thức, ta đã biết, khi chuyển sang hệ màu YCrCb từ RGB, trong côngthức chuyển đổi có các tham số là Kr và Kb Các giá trị của các tham số này phụthuộc vào chuẩn được chọn (như BT601, BT709) Vậy trong công thức các tác giả sửdụng chuẩn nào? Đó là chuẩn cũ BT601, với Kb=0,114; Kr=0,299 Công thức chuyểnđổi:

Ở đây, ta sẽ chuyển đổi giải giá trị cho các thành phần Y, Pr, Pb bằng cách nhân

Trang 40

chúng với 256 Như vậy, Y sẽ có giá trị trong đoạn [0; 256]; Cr, Cb sẽ có giá trị trongđoạn [-128; 128].

Tóm lại, các bước thực hiện như sau: với mỗi điểm trong ảnh màu, ta sẽ lấy về cácgiá trị R, G, B của nó Sau đó, tính các giá trị YPrPb theo chuẩn BT601 Tiếp theonhân các giá trị YPrPb vừa tính được với 256, được các giá trị YCrCb tương ứng.Cuối cùng áp dụng công thức ở trên

2.2.1.2 Histogram

Phương pháp xác định màu da dựa trên histogram được lấy theo ý tưởng của K.

Sandeep và A.N Rajagopalan trong mục 1.3.2 Histogram được tổng hợp trên một

tập ảnh màu da (tập ảnh mẫu được chuẩn bị trước), nhưng không phải trên hệ màuRGB mà là trên hệ màu HSV và trên 2 thành phần H và S (histogram 2 chiều)

Hệ màu HSV đã được trình bày trong chương 1 Công thức chuyển đổi từ RGB sangHSV:

Trong đó:

• max=max(r,g,b)

• min=min(r,g,b)

• các thành phần màu r,g,b có giá trị nằm trong đoạn [0,1]

Các giá trị H, S tính được trong công thức này là các số thực (analog), H nằm trongđoạn [0; 360), còn S nằm trong đoạn [0; 1] Nhưng trong tổng hợp histogram, yêu cầucác giá trị H, S phải là các số nguyên Do đó, ta cần chuyển đổi dải giá trị của chúng.Với H ta giữ nguyên giải giá trị, chỉ đưa về số nguyên bằng thao tác cắt (không làmtròn) Còn với S ta nhân với 100 để đưa về dải giá trị [0; 100]

Lý do tại sao không xây dựng trên hệ màu RGB, vì hệ màu này phụ thuộc vào độsáng Ví dụ, cùng 1 điểm trên 1 khuôn mặt, khi ánh sáng thay đổi thì giá trị RGB ứngvới điểm đó sẽ thay đổi Còn trong hệ màu HSV, khi ánh sáng thay đổi thì chỉ cóthành phần V (đặc trưng cho độ sáng) thay đổi, còn 2 thành phần HS không đổi Vídụ: với RGB = (10; 20; 30) và RGB = (40; 80; 120), cùng là 1 màu nhưng màu sausáng hơn, đều cho cùng 1 giá trị HS là: (210; 0.67) Điều đó có nghĩa là việc tổng hợp

Ngày đăng: 24/04/2013, 15:49

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Nhập môn xử lý ảnh số - Lương Mạnh Bá, Nguyễn Thanh Thủy Khác
[2]. Đồ án tốt nghiệp của Mai Anh Tuấn K47 Khác
[3]. Human Face Detection in Cluttered Color Images Using Skin Color and Edge Information by K. Sandeep and A.N. Rajagopalan Khác
[4]. Face Detection by Integration of Evidence by Manoj Seshadrinathan and Jezekiel Ben-Arie Khác
[5]. Robust Face Detection Using the Hausdor Distance by Oliver Jesorsky, Klaus J. ff Kirchberg, and Robert W. Frischholz Khác
[6]. Face Detection in Color Images using Wavelet Packet Analysis by C. Garcia, G. Zikos, G. Tziritas Khác
[7].A FEATURE-BASED FACE DETECTOR USING WAVELET FRAMES by C.Garcia, G. Simandiris and G. Tziritas Khác
[8]. Feature-based human face detection by Kin Choong Yow and Roberto Cipolla Khác
[9]. Một số file Wikipedia về các hệ màu Khác
[10]. Các file tài liệu của thư viện AForge Khác

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Mô hình biểu diễn 2 thành phần màu H,S trong HSV - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.1 Mô hình biểu diễn 2 thành phần màu H,S trong HSV (Trang 9)
Hình 1.6: Biểu đồ hội tụ của phương pháp học RPROP - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.6 Biểu đồ hội tụ của phương pháp học RPROP (Trang 19)
Hình 1.8: Sơ đồ biểu diễn phương pháp - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.8 Sơ đồ biểu diễn phương pháp (Trang 21)
Hình 1.10: Ví dụ mô phỏng quá trình nhận ra đối tượng dựa trên mô hình - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.10 Ví dụ mô phỏng quá trình nhận ra đối tượng dựa trên mô hình (Trang 23)
Hình 1.11: Quá trình phát hiện mặt người của phương pháp - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.11 Quá trình phát hiện mặt người của phương pháp (Trang 24)
Hình 1.12: Sự phân bố các điểm màu da mặt trong không gian HSV và YCrCb - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.12 Sự phân bố các điểm màu da mặt trong không gian HSV và YCrCb (Trang 25)
Hình 1.15: Một số ảnh kết quả - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.15 Một số ảnh kết quả (Trang 29)
Hình 1.19: Một số ảnh kết quả của phương pháp - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 1.19 Một số ảnh kết quả của phương pháp (Trang 35)
Sơ đồ khối của phương pháp như sau: - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Sơ đồ kh ối của phương pháp như sau: (Trang 37)
Hình 2.6: Một số kết quả minh họa trong phát hiện màu da - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 2.6 Một số kết quả minh họa trong phát hiện màu da (Trang 42)
Hình 2.8: Vị trí của khâu lọc nhiễu trong phương pháp - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 2.8 Vị trí của khâu lọc nhiễu trong phương pháp (Trang 43)
Hình 2.9: Minh họa kết quả lọc nhiễu - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 2.9 Minh họa kết quả lọc nhiễu (Trang 44)
Hình 2.11: Thuật toán phân vùng cơ bản - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 2.11 Thuật toán phân vùng cơ bản (Trang 47)
Hình 2.14: Kết quả minh họa thuật toán phân vùng cơ bản - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 2.14 Kết quả minh họa thuật toán phân vùng cơ bản (Trang 49)
Hình 2.15: Minh họa các liên kết yếu giữa các vùng trắng - XÂY DỰNG ỨNG DỤNG PHÁT HIỆN MẶT NGƯỜI DỰA TRÊN MÀU DA
Hình 2.15 Minh họa các liên kết yếu giữa các vùng trắng (Trang 49)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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