2.4 Dựa trên so khớp mẫu
2.4.2 Các mẫu bị biến dạng
Yuille dùng các mẫu biến dạng để mô hình hoá các đặc trƣng của khuôn mặt, mô hình này có khả năng linh hoạt cho các đặc trƣng khuôn mặt.
Trong hƣớng tiếp cận này, các đặc trƣng khuôn mặt đƣợc mô tả bằng các mẫu đƣợc tham số hoá. Một hàm năng lƣợng (giá trị) đƣợc định nghĩa để liên kết các cạnh, đỉnh, và thung lũng trong ảnh để tƣơng ứng với các tham số trong mẫu. Mô hình này tốt nhất khi tối thiểu hàm năng lƣợng qua các tham số,
Mặc dù kết quả tốt với mẫu biến dạng trong theo vết đối tƣợng trên đặc trƣng không mô hình theo lƣới, một hạn chế của hƣớng tiếp cận này là các mẫu biến dạng phải đƣợc khởi tạo trong phạm vi gần các đối tƣợng để xác định.
Một hƣớng tiếp cận dựa trên đƣờng gấp khúc (snake) và các mẫu để phát hiện mặt. Đầu tiên một ảnh sẽ đƣợc làm xoắn lại bởi một lọc làm mờ rồi dùng phép toán morphology để làm nổi bật cạnh lên. Dùng một đƣờng gấp khúc có n điểm ảnh (giá trị n nhỏ) để tìm và ƣớc lƣợng các đoạn cong nhỏ. Mỗi khuôn mặt đƣợc xấp xỉ bằng một ellipse và biến đổi Hough, rồi tìm một ellipse nổi trội nhất. Một tập có bốn tham số mô tả một ellipse đƣợc dùng nhƣ ứng viên để phát hiện mặt. Với mỗi ứng viên, một phƣơng thức tƣơng tự nhƣ phƣơng thức mẫu biến dạng dùng để xác định các đặc trƣng ở mức chi tiết. Nếu tìm thấy số lƣợng đáng kể các đặc trƣng khuôn mặt và thỏa tỷ lệ cân đối thì xem nhƣ đã xác định đƣợc một khuôn mặt. Lam và Yan cũng dùng đƣờng gấp khúc để xác định vị trí đầu với thuất toán greedy để cực tiểu hóa hàm năng lƣợng [18].
Thay vì dùng đƣờng gấp khúc thì Huang và Su [8] dùng lý thuyết dòng chảy để xác định đƣờng viền khuôn mặt dựa trên đặc tính hình học.
Hai ông dùng lý thuyết tập đồng mức (Level Set) để loang từ các khởi động ban đầu để có đƣợc các khuôn mặt ngƣời.
Lanitis mô tả một phƣơng pháp biểu diễn khuôn mặt ngƣời với cả hai thông tin: hình dáng và cƣờng độ. Bắt đầu với các tập ảnh đƣợc huấn luyện với các đƣờng viền mẫu nhƣ là đƣờng bao mắt, mũi, cằm/má đƣợc gán nhãn. Dùng một vector các điểm mẫu để mô tả hình dáng. Tác giả dùng một mô hình phân bố điểm (Point Distribution Model – PDM) để mô tả vector hình dáng qua toàn bộ các cá thể. Dùng tiếp cận nhƣ Kirby và Sirovich để mô tả cƣờng độ bề ngoài của hình dáng đã đƣợc chuẩn hoá. Một PDM có hình dáng nhƣ khuôn mặt dùng để phát hiện mặt bằng mô hình hình dáng tích cực (Active Shape Model - ASM) để tìm kiếm và ƣớc lƣợng vị trí khuôn mặt cũng nhƣ các tham số về hình dáng.
Các mảnh của khuôn mặt đƣợc làm biến dạng về hình dáng trung bình rồi trích các tham số cƣờng độ. Các tham số hình dáng và cƣờng độ đƣợc dùng để phân loại. Cootes và Taylor áp dụng cách tiếp cận này để phát hiện mặt. Đầu tiên, hai ông định nghĩa một vùng hình chữ nhật chứa các đặc trƣng quan tâm. Dùng phân tích nhân tố làm vừa các đặc trƣng huấn luyện để có một hàm phân bố. Có đƣợc các đặc trƣng là ứng viên nếu độ đo xác suất vƣợt qua một ngƣỡng khi dùng ASM. Sau khi huấn luyện xong có thể phát hiện mặt ngƣời.
Hƣớng tiếp cận theo ASM đƣợc mở rộng bằng hai lọc Kalman để ƣớc lƣợng các tham số về hình dáng và cƣờng độ dùng để theo vết khuôn mặt ngƣời.
CHƢƠNG 3
CHƢƠNG TRÌNH THỬ NGHIỆM
3.1 Bài toán
Phát hiện mặt ngƣời trong ảnh có nhiều ứng dụng trong cuộc sống, tuy nhiên, trong luận văn này, tôi chỉ xây dựng một chƣơng trình nhỏ để minh hoạ cho các lý thuyết ở trên. Cụ thể đấy là một chƣơng trình phát hiện mặt ngƣời trong ảnh đƣợc viết trên nền visual C++
của Microsoft, sử dụng thƣ viện mã nguồn mở OpenCV.
Bài toán đặt ra từ một bức ảnh đầu vào, có thể có hoặc không có ngƣời xuất hiện trong đó. Mục tiêu đề ra: Hãy phát hiện mặt ngƣời trong bức ảnh đó (nếu có) qua các thành phần trên khuôn mặt nhƣ: Hai mắt, mũi, miệng.
Mô hình hệ thống nhƣ sau:
Hình 3.1: Mô tả hệ thống phát hiện mặt ngƣời trong ảnh