Nhận dạng mặt người sử dụng giải thuật lan truyền ngược

20 629 1
Nhận dạng mặt người sử dụng giải thuật lan truyền ngược

Đ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

[Type text] Báo cáo tập lớn môn học Nhập môn mạng Nơron Đề bài: Nhận dạng mặt người sử dụng giải thuật lan truyền ngược I Xuất xứ tốn Tài liệu 1- “Phát khn mặt người dựa vùng màu da mạng nơron” Tác giả: Nguyễn Thị Hoàng Lan, Nguyễn Thành Phương 2- “Detecting Faces in Images”: A Survey Ming-Hsuan Yang, Member, IEEE, David J Kriegman 3- “Neural Network- Based Face Detection ” – Henry A.Rowley, Shumeet Baluja and Takeo Kanade 2006 4- “Face Recognition Using Genetic Algorithm and Back Propagation Neural Network”- Sarawat Anam, Md Shohidul Islam, M.A Kashem, M.N Islam, M.R Islam, M.S Islam Bài tốn Đầu vào: ảnh màu có chứa khn mặt Đầu ra: Vị trí khn mặt người ảnh Ứng dụng: toán quan trọng lĩnh vực quan sát máy tính o Kỹ thuật phân vùng da người ảnh màu áp dụng hệ thống nhận biết mặt người với mục đích cuối giảm khơng gian tìm kiếm mặt người ảnh, giúp cho chất lượng hoạt động hệ thống nâng cao [Type text] o Còn ưu điểm bật giải thuật lan truyền ngược nói riêng phướng tiếp cận dựa học máy nói chung việc phát mặt nguời miêu tả phát khn mặt nhiều tình khác Chính vậy, em chọn giải thuật lan truyền ngược để giải toán phát mặt người Những khó khăn, thách thức tốn phát khn mặt: + Tư khuôn măt + Nội dung khuôn mặt + Trạng thái khuôn mặt Các vấn đề liên quan đến phát mặt người - Xác định vị trí khn mặt - Xác định đặc trưng khuôn mặt - Nhận biết trạng thái khuôn mặt - Bám sát khuôn mặt - Thẩm tra xác minh khuôn mặt Tóm lại: nhu cầu sử dụng hệ thống xử lý dùng trí tuệ nhân tạo ngày phát triển, mà nhận dạng khn mặt để mã hóa mật cá nhân nhu cầu thiết yếu tương lai Đặc biệt vụ khủng bố ngày 11-9-2001 Mỹ đánh dấu bước ngoặc xu hướng nghiên cứu giá trị thương mại hệ thống sinh trắc học để bảo vệ an toàn cho người Dữ liệu huấn luyện [Type text] Cơ sở liệu lấy từ trang web: http://cvc.yale.edu/projects/yalefaces/yalefaces.html (dữ liệu chủ yếu huấn luyện mặt người) Hoặc http://www.ai.mit.edu/projects/cbcl.old/software-datasets/FaceData2.html Tập huấn luyện: 2,429 mặt người, 4,548 không mặt người Tập kiểm tra: 472 mặt người, 23,573 không mặt người 27 MB nén : giải nén 110 MB Nhận xét tập liệu: Hầu hết khuôn mặt xuất ảnh khuôn mặt trực diện với mặt phẳng ảnh khn mặt có đầy đủ đặc trưng (mắt, mũi, miệng, cằm).Một số khn mặt quay góc khơng đáng kể Tất ảnh chuẩn hóa kích thước 25x25 để loại bỏ thơng tin có thơng tin chi tiết khn mặt • Q trình tiền xử lý ảnh: Gán nhãn canh biên đặc trưng khuôn mặt Bước việc giảm số biến đổi ảnh khuôn mặt canh biên khuôn mặt với khuôn mặt khác Việc canh biên làm giảm biến đổi vị trí, hướng, tỷ lệ khn mặt Việc canh biên tính trực tiếp từ ảnh Và tạo khơng gian ảnh khuôn mặt tối thiểu Cường độ ảnh khuôn mặt biến đổi nhiều, làm cho số khn mặt khó canh biên với Ta dùng giải pháp gán nhãn thủ công mẫu khuôn mặt Cụ thể vị trí hai mắt, đỉnh mũi, trung tâm miệng khuôn mặt Bước dùng thông tin để canh biên khuôn mặt với khuôn mặt khác Trước hết định nghĩa canh biên hai tập điểm đặc trưng Đó phép quay, biến đổi tỷ lệ, dịch chuyển để làm cực tiểu hố tổng bình phương khoảng cách cặp đặc trưng tương ứng Trong không gian hai chiều, phép biến đổi tọa độ viết dạng sau: [Type text]  x'   s cos ϑ  =  y '   s sin ϑ    x − s sin ϑ   x   t x   a − b t x      y  .  +   =  s cos ϑ   y   t y   b a t y            (3.1) Nếu có nhiều tập tọa độ tương ứng, viết sau:  x1 − y1 y x1   x2 − y  x2  y2    1  x1'  0 a   '      y1   b ' 0   =  x     t x  '     y2  t    y        ( (3.2) Khi có hai hay nhiều cặp điểm đặc trưng phân biệt, hệ phương trình tuyến tính giải phương pháp đảo ngược giả Gọi ma trận bên trái A, vector (a, b, t x, ty)T T, bên phải B, lời giải: T = (AT A)-1(AT B) (3.3) Lời giải đảo ngược giả đưa phép biến đổi T làm cực tiểu tổng bình phương khác biệt tập tọa độ x’ i, y’i phiên biến đổi x i, yi Canh biên tập điểm đặc trưng Khởi tạo F, vector vị trí trung bình đặc trưng gán nhãn khn mặt, với số vị trí đặc trưng ban đầu Trong trường hợp canh biên khuôn mặt thẳng, đặc trưng vị trí mong muốn hai mắt, đỉnh mũi, trung tâm miệng khuôn mặt cửa sổ đầu vào Với khuôn mặt i, dùng thủ tục canh biên để tính phép quay, dịch chuyển, biến đổi tỷ lệ tốt để canh biên đặc trưng khuôn mặt Fi với vị trí đặc trưng trung bình F Gọi vị trí đặc trưng canh biên F’i [Type text] Cập nhật F việc lấy trung bình vị trí đặc trưng canh biên F’i cho khuôn mặt i Tọa độ đặc trưng F quay, dịch chuyển biến đổi để phù hợp với số tọa độ chuẩn Ttọa độ chuẩn tọa độ dùng làm giá trị khởi tạo cho F - Sang bước Hình 1- Trái: Mẫu khn mặt chuẩn Phải: Các vị trí đặc trưng khn mặt chuẩn (trịn trắng), phân phối vị trí đặc trưng thực (sau canh biên) từ mẫu (các điểm đen) Hình 2- Ví dụ ảnh khn mặt thẳng canh biên Trong việc huấn luyện dị tìm, việc thu thập số mẫu đủ lớn vấn đề quan trọng Một kỹ thuật thường dùng khung nhìn ảo, [Type text] ảnh mẫu tạo từ ảnh thực (quay, dịch chuyển, biến đổi tỷ lệ ngẫu nhiên ảnh mẫu) Tiền xử lý độ sáng độ tương phản tập mẫu học Sau canh biên khn mặt, cịn nguồn biến đổi (khơng kể biến đổi chất khuôn mặt) Biến đổi gây độ sáng đặc tính máy ảnh, dẫn đến ảnh có độ sáng tươi hay kém, ảnh có độ tương phản Ta xử lý vấn đề tiếp cận xử lý ảnh đơn giản Kỹ thuật tiền xử lý trước hết cân giá trị mật độ toàn cửa sổ Lập hàm biến đổi tuyến tính giá trị mật độ vùng trịn cửa sổ Các điểm ảnh bên ngồi hình trịn Nếu mật độ pixel (x,y) I(x,y), cách biến đổi tuyến tính tham số hoá a, b, c với: (x y a    1)  b  = I ( x, y ) c    (3.4) Việc chọn cách biến đổi tuỳ ý Nó biểu diễn khác biệt độ sáng toàn ảnh Các biến đổi giới hạn tuyến tính để số tham số việc tạo lập hàm nhanh chóng Tập hợp với pixel tồn cửa sổ hình trịn ta phương trình ma trận ràng buộc, giải phương pháp đảo ngược giả Phương trình tuyến tính xấp xỉ toàn độ sáng phần cửa sổ, bị trừ với cửa sổ để cân biến đổi độ sáng Tiếp theo, cân lược đồ, ánh xạ khơng tuyến tính giá trị mật độ để mở rộng miền cường độ cửa sổ Lược đồ tính với pixel vùng tròn cửa sổ Việc bù cho khác biệt việc thu nhận đầu vào camera, cải thiện độ tương phản số trường hợp Các kết bước cho Hình 3-7 [Type text] Hình 3- Các bước việc tiền xử lý cửa sổ Đầu tiên, xây dựng hàm ánh xạ tuyến tính với giá trị mật độ cửa sổ, sau trừ nó, để hiệu chỉnh độ sáng Tiếp theo, áp dụng cân lược đồ, để hiệu chỉnh đầu vào camera khác cải thiện độ tương phản Trong bước, việc ánh xạ tính với pixel bên hình trịn, áp dụng với tồn cửa sổ Cấu trúc mạng Trong toán này, em sử dụng mạng noron tầng với giải thuật học lan truyền ngược [Type text] Hình 4- Mơ hình mạng noron nhiều tầng Thuật tốn học: - Là q trình thay đổi giá trị w để mạng biểu diễn liệu học - Là khác giá trị thật hàm mẫu kết dự đoán mạng gọi lỗi (học có giám sát) - Hàm lỗi hàm n+1 biến Nếu vẽ không gian n+1 chiều có mặt lỗi - Q trình huấn luyệnsẽ tìm wi* để lỗi nhỏ Thuật toán: Xét mạng nơ-ron lớp : input, hiden output Hàm kích hoạt nơ-ron : logistic (sigmoid) g ( x) = 1 + e−x (4.1) - Bước 1: Khởi tạo trọng số w ngẫu nhiên nhỏ - Bước : Chọn lớp đầu vào x đính vào lớp đầu vào - Bước : Truyền kích hoạt qua trọng số đến kich hoạt nơ-ron đầu - Bước 4: Tính đạo hàm riêng “δE” theo trọng số cho lớp xuất sử dụng GRADIENT hàm lỗi - Bước 5: Tính đạo hàm riêng “δE” theo trọng số cho lớp ẩn - Bước 6: Cập nhật tất trọng số theo Wi=W(i-1)-µ(δE/ δ Wi) - Bước 7: Quay lai “Bước 2” “Bước 6” cho tất mẫu Kết luận [Type text] - Sử dụng phương pháp phân lớp để thực nhận dạng mặt người không mặt người - Dữ liệu mặt người tải từ nguồn Internet - Dữ liệu chuẩn hóa phù hợp yêu cầu thuật toán Sử dụng thuật toán học “lan truyền ngược” để huấn luyện mặt người II Ý định thực Tập mẫu khuôn mặt Tập mẫu khn mặt Ảnh thử nghiệm có khn mặt Canh biên mẫu khn mặt Tiền xử lí tập mẫu học Huấn luyện dị tìm khn mặt thẳng Lấy tất cửa sổ với vị trí ảnh Tiền xử lí cửa sổ Xác minh cửa sổ có phải khn mặt hay khơng Giữ lại vị trí mẫu khuôn mặt Kết hợp khuôn mặt mà vị trí trùng lặp Loại bỏ cửa sổ khuôn mặt Các khuôn mặt vị trí khác Sai Đúng Mơ hình: [Type text] Huấn luyện ảnh khuôn mặt Hệ thống hoạt động theo hai giai đoạn: trước hết áp dụng tập dò tìm dựa mạng nơ-ron vào ảnh, sau dùng kiểm tra để kết hợp đầu Các dị tìm riêng lẻ khảo sát vị trí ảnh vài tỷ lệ, tìm vị trí chứa khn mặt Sau kiểm tra hợp dị tìm từ mạng riêng lẻ loại trừ dị tìm bị lặp Thành phần hệ thống mạng nơ-ron nhận đầu vào vùng 25x25 (pixels) ảnh tạo đầu khoảng đến -1, biểu thị có hay khơng có khn mặt Để dị tìm khn mặt ảnh, mạng áp dụng vị trí ảnh Để dị tìm khn mặt lớn kích thước cửa sổ, ảnh đầu vào giảm kích thước nhiều lần, áp dụng dị tìm kích thước Mạng có số bất biến với vị trí kích thước.Số bất biến xác định số tỷ lệ vị trí dùng Với này, ta áp dụng lọc vị trí điểm ảnh, giảm tỷ lệ xuống 1.2 bước phân tích ảnh tứ phân [Type text] Sau cửa sổ 25x25 pixel trích từ vị trí tỷ lệ ảnh nhập, tiền xử lý dùng bước hiệu chỉnh độ sáng cân lược đồ Cửa sổ sau tiền xử lý truyền qua mạng nơ-ron Cửa sổ đầu vào chia thành mảnh nhỏ, vùng 10x10 (pixels), 16 vùng 5x5 (pixels), vùng chồng lấp 25x25 (pixels) Mỗi vùng có liên kết đầy đủ với đơn vị ẩn Với thử nghiệm sau, ta dùng mạng với hai ba tập đơn vị ẩn Hình dáng vùng chọn phép đơn vị ẩn dị tìm đặc trưng cho việc dị tìm khn mặt Cụ thể, sọc ngang cho phép đơn vị ẩn dị tìm đặc trưng miệng, cặp mắt, đơn vị ẩn với vùng tiếp thu hình vng dị tìm đặc trưng mắt, mũi, miệng Các thử nghiệm cho thấy hình dạng xác vùng khơng quan trọng, quan trọng đầu vào chia thành vùng nhỏ thay dùng kết nối hồn tồn với toàn đầu vào Tương tự mẫu liên kết đầu vào thường dùng việc nhận dạng tiếng nói ký tự Mạng có đầu giá trị thực, định cửa sổ có chứa khn mặt hay không Huấn luyện ảnh không khuôn mặt Ta cần nhiều ảnh không khuôn mặt để huấn luyện dị tìm khn mặt, đa dạng ảnh không khuôn mặt lớn nhiều so với ảnh khuôn mặt Một lớp ảnh không chứa khuôn mặt ảnh phong cảnh chẳng hạn cây, núi, nhà Thu thập tập không khuôn mặt “đặc trưng” việc khó Hầu ảnh xem mẫu không khuôn mặt; không gian ảnh không khuôn mặt lớn không gian ảnh khuôn mặt Tiếp cận thống kê máy học cho ta nên huấn luyện mạng nơ-ron phân bố ảnh mà mạng thấy chạy Với dị tìm khuôn mặt, số mẫu khuôn mặt 15.000 số thích hợp Tuy nhiên, tập đại diện ảnh phong cảnh chứa gần 150,000,000 cửa sổ, việc huấn luyện sở liệu khn mặt có kích thước lớn khó Phần mô tả việc huấn luyện sở liệu khuôn mặt Phương pháp huấn luyện chủ động [Type text] - Tạo tập khởi tạo ảnh không khuôn mặt cách tạo 1000 ảnh ngẫu nhiên Áp dụng bước tiền xử lý cho ảnh - Huấn luyện mạng nơ-ron nhân tạo với mẫu khuôn mặt, -1 với mẫu không khuôn mặt Trong lần lặp vòng lặp, trọng số mạng khởi tạo ngẫu nhiên Sau lần lặp này, ta dùng trọng số tính qua việc huấn luyện lần lặp trước - Chạy hệ thống ảnh phong cảnh không chứa khuôn mặt Thu thập ảnh mạng nhận lầm khn mặt (hoạt hố đầu >0) - Chọn ngẫu nhiên 250 ảnh này, áp dụng bước tiền xử lý, sau thêm chúng vào tập mẫu âm Sang Bước Thuật toán huấn luyện dùng Bước thuật toán hồi quy lỗi chuẩn Các nơ-ron dùng hàm kích hoạt dạng tanh, cho đầu từ -1 đến 1, ngưỡng với dị tìm khn mặt Vì ta không huấn luyện với mẫu âm, đối số xác suất phần trước không áp dụng cho việc thiết lập ngưỡng dị tìm - Vì số mẫu âm lớn nhiều so với số mẫu dương, bó mẫu huấn luyện chứa mẫu âm, không thích hợp cho việc huấn luyện mạng nơ-ron Thay bó gồm 100 mẫu dương âm lấy ngẫu nhiên từ toàn tập huấn luyện, truyền qua thuật tốn hồi quy ngược Ta chọn bó huấn luyện có 50% mẫu âm 50% mẫu dương Điều đảm bảo ban đầu, tập mẫu dương nhiều tập mẫu âm, mạng học từ hai tập [Type text] Hình 5- Trong huấn luyện, hệ thống huấn luyện phần áp dụng với ảnh phong cảnh không chứa khuôn mặt (như bên trái) Bất kỳ vùng ảnh dò khuôn mặt lỗi, thêm vào tập mẫu huấn luyện âm Mơ tả quy trình giải tốn: - Bước 1: Tiếp nhận ảnh đầu vào có chứa khuôn mặt - Bước 2: Đánh dấu vị trí có khả khn mặt ảnh Đây bước để loại đa số vị trí khơng phải khn mặt, giữ lại số vị trí có khả khn mặt - Bước 3: Thực chuẩn hóa liệu nơi đánh dấu bước phương pháp: cân lược đồ để cải thiện độ sáng độ tương phản - Bước 4: Kiểm tra vị trí chuẩn hóa bước có thật khn mặt hay khơng? Cơng việc thực mạng nơ-ron huấn luyện với nhiều ảnh mẫu khuôn mặt không khuôn mặt - Bước 5: Đưa định đâu khuôn mặt Việc làm thực việc kết hợp nhiều mạng số heuristic đơn giản - Kết cuối toán đưa vị trí khn mặt tìm III ảnh đầu vào Thực 3.1 Phần mềm [Type text] Ngôn ngữ sử dụng: C# visual studio 2008 Tập ảnh huấn luyện: 100 ảnh mặt người 500 ảnh không mặt người Xây dựng phần mềm: a Thiết kế số form 1- Form  Tên form: frmFace  Các chức + Load Neural Network : lấy mạng noron huấn luyện vào phục vụ cho việc tìm kiếm khn mặt + Load Image: Lấy ảnh cần tìm kiếm khuôn mặt, ảnh lên panel [Type text] + Search Face: Thực tìm kiếm khn mặt ảnh vừa lấy ra, đưa vị trí khn mặt ảnh xác suất có khn mặt xuất ảnh + Save Image: Lưu lại ảnh kết thu sau tìm kiếm Chức thực thực chức tìm kiếm + Save Neuron Network: Lưu mạng huấn luyện lại + Edit Neuron Network: Chỉnh sửa thông số mạng + As Match: Đưa ảnh vào loại liệu huấn luyện khuôn mặt + As not Match: Đưa ảnh vào liệu huấn luyện không khuôn mặt Hiển thị ảnh load lên + ảnh kết Hiển thị khn mặt tìm xác suất xuất Hiển thị thời gian thực cơng việc tìm kiếm Số vị trí tìm xác định khn mặt [Type text] b Form chỉnh sửa mạng Ảnh khuôn mặt Ảnh không khuôn mặt Các thông số mạng Chức chọn hàm truyền Các thông số huấn luyện Chức kết xuất ảnh học mạng [Type text] 3.2 Đánh giá a Kết đạt [Type text] Hình1: Ảnh đơn nghiêng Hình2: Ảnh đơn trực diện [Type text] Hình 3- Ảnh đon nghiêng 30° Hình 4- Ảnh có lẫn hình vẽ [Type text] Hình 5- Ảnh tập thể b-Bảng thống kê kết đạt Em thực thử tập liệu 200 ảnh (100 ảnh có mặt người 100 ảnh khơng chứa mặt người) với tập ảnh huấn luyện 538 (trong có 100 ảnh mặt người 438 ảnh khơng mặt người) Tỉ lệ (%) Kết 90,2 Kết sai 6,63 Không phát 3,17 Do phần mềm thực thời gian ngắn phần phụ thuộc liệu đưa vào huấn luyện trình độ cịn hạn chế nên hiệu đạt chưa thực cao [Type text]  Nhận xét: - Thời gian dị tìm khn mặt ảnh phụ thuộc vào thông số huấn luyện tập liệu ảnh đưa vào huấn luyện - Phần mềm thực phát tương đối tốt với tư khác mặt người ảnh: Thẳng, nghiêng (quay) góc α biểu khác khn mặt (, nghiêm nghị,cười…).VD: hình1, hình 2, hình - Phần mềm khơng phân biệt ảnh người thật ảnh vẽ có đầy đủ đặc trưng khn mặt người (hình 4) 3.3 Hướng phát triển • Đối với liệu học: Cần phải tăng dần số mẫu học số người hệ thống nhận dạng, thỏa điều kiện nâng cao khả nhận dạng tổng qt cho hệ thống • Đối với việc dị tìm khn mặt:tiếp tục nghiên cứu giải pháp giải tốn phát khn mặt xuất nhiều góc độ khác so với mặt phẳng ảnh để đảm bảo khơng bỏ sót người cần nhận dạng • Đối với việc rút trích đặc trưng khn mặt: Cần phải tìm hiểu nghiên cứu nhiều phương pháp rút trích đặc trưng khn mặt hiệu để bóc thơng tin nỗi thuộc khn mặt có khả loại trừ tạp nhiễu nhiều Thông tin phải đảm bảo thông tin tổng quát thuộc người • Đối với việc nhận dạng: + Cần tìm hiểu kỹ chất không gian nhận thức khuôn mặt người cần trang bị kiến thức tâm lý học, sinh lý học, vật lý học khoa học nhận thức khn mặt để có định hướng tốt cho việc nhận dạng tăng hiệu suất cho nhận dạng mà dựa vào tri thức từ khuôn mặt + Nghiên cứu thuật toán cải tiến giải thuật lan truyền ngược để có kết tốt ... - Sử dụng phương pháp phân lớp để thực nhận dạng mặt người không mặt người - Dữ liệu mặt người tải từ nguồn Internet - Dữ liệu chuẩn hóa phù hợp u cầu thuật tốn Sử dụng thuật toán học ? ?lan truyền. .. 2,429 mặt người, 4,548 không mặt người Tập kiểm tra: 472 mặt người, 23,573 không mặt người 27 MB nén : giải nén 110 MB Nhận xét tập liệu: Hầu hết khuôn mặt xuất ảnh khuôn mặt trực diện với mặt. .. bật giải thuật lan truyền ngược nói riêng phướng tiếp cận dựa học máy nói chung việc phát mặt nguời miêu tả phát khn mặt nhiều tình khác Chính vậy, em chọn giải thuật lan truyền ngược để giải

Ngày đăng: 08/09/2015, 08:16

Từ khóa liên quan

Mục lục

  • Báo cáo bài tập lớn môn học

  • Nhập môn mạng Nơron

    • Gán nhãn và canh biên các đặc trưng khuôn mặt

    • Tiền xử lý về độ sáng và độ tương phản trên tập mẫu học

Tài liệu cùng người dùng

Tài liệu liên quan