jump to navigation

Nhận dạng mặt người – Các hướng tiếp cận 29/12/2010

Posted by hnb1988 in Tìm hiểu & chia sẽ.
Tags: , ,
trackback

Bài viết này mình viết lúc làm đề tài trong khóa học. Cũng khá nhiều thông tin về hướng tiếp cận trên mạng. Nhưng mình tổng hợp lại và dịch thêm từ một số tài liệu khác.

Về hướng tiếp cận thì có rất nhiều hướng tiếp cận trước đây đã thực hiện liên quan đến vấn đề phát hiện mặt người. Theo Ming-Hsuan Yang, có thể phân loại thành bốn hướng tiếp cận chính:

  • Dựa trên tri thức (knowledge-based)
  • Đặc trưng bất biến (feature invariant)
  • Đối sánh mẫu (template matching)
  • Dựa vào diện mạo (appearance-based) phương pháp này thường dùng một mô hình máy học nên còn được gọi là phương pháp dựa trên máy học (machine learning-based).

1. Dựa trên tri thức

Trong hướng tiếp cận này, các luật sẽ phụ thuộc rất lớn vào tri thức của những tác giả nghiên cứu về bài toán xác  định khuôn mặt người. Đây là hướng tiếp cận dạng top-down. Dễ dàng xây dựng các luật cơ bản để mô tả các đặc trưng của khuôn mặt và các quan hệ tương ứng. Ví dụ, một khuôn mặt thường có hai mắt đối xứng nhau qua trục thẳng đứng ở giữa khuôn mặt và có một mũi, một miệng. Các quan hệ của các đặc trưng có thể được mô tả như quan hệ về khoảng cách và vị trí. Thông thường các tác giả sẽ trích đặc trưng của khuôn mặt trước tiên để có được các ứng viên, sau đó các ứng viên này sẽ được xác định thông qua các luật  để biết  ứng viên nào là khuôn mặt và ứng viên nào không phải khuôn mặt. Thường áp dụng quá trình xác  định  để giảm số lượng xác định sai.

Một vấn  đề khá phức tạp khi dùng hướng tiếp cận này là làm sao chuyển từ tri thức con người sang các luật một các hiệu quả. Nếu các luật này quá chi tiết (chặt chẽ) thì khi xác định có thể xác định thiếu các khuôn mặt có trong  ảnh, vì những khuôn mặt này không thể thỏa mãn tất cả các luật  đưa ra. Nhưng các luật tổng quát quá thì có thể chúng ta sẽ xác định lầm một vùng nào đó không phải là khuôn mặt mà lại xác định là khuôn mặt. Và cũng khó khăn mở rộng yêu cầu từ bài toán để xác định các khuôn mặt có nhiều tư thế khác nhau.


Hệ thống đa độ phân giải

(a) Ảnh ban đầu có độ phân giải n = 1

(c) (d) Ảnh có độ phân giải n = 4, 8 và 16

 

Một lọai tri trức của người nghiên cứu phân tích trên khuôn mặt

Một lọai tri trức của người nghiên cứu phân tích trên khuôn mặt

Yang và Huang dùng một phương thức theo hướng tiếp cận này để xác các khuôn mặt. Hệ thống của hai tác giả này bao gồm ba mức luật. Ở mức cao nhất, dùng một khung cửa sổ quét trên ảnh và thông qua một tập luật để tìm các ứng viên có thể là khuôn mặt. Ở mức kế tiếp, hai ông dùng một tập luật để mô tả tổng quát hình dáng khuôn mặt. Còn ở mức cuối cùng lại dùng một tập luật khác để xem xét ở mức chi tiết các  đặc trưng khuôn mặt. Một hệ thống  đa  độ phân giải có thứ tự  được dùng  để xác định (Hình 2.1). Các luật  ở mức cao nhất  để tìm  ứng viên như: “vùng trung tâm khuôn mặt (phần tối hơn trong Hình 2) có bốn phần với một mức độ đều cơ bản”, “phần xung quanh bên trên của một khuôn mặt (phần sáng hơn trong Hình 2.2) có một mức độ đều cơ bản”, và “mức  độ khác nhau giữa các giá trị xám trung bình của phần trung tâm và phần bao bên trên là đáng kể”. Độ phân giải thấp nhất (mức mộ) của ảnh dùng để tìm ứng viên khuôn mặt mà còn tìm ở các mức phân giải tốt hơn. Ở mức hai, xem xét biểu đồ histogram của các ứng viên để loại bớt ứng viên nào không phải là khuôn mặt, đồng thời dò ra cạnh bao xung quanh ứng viên. Ở mức cuối cùng, những ứng viên nào còn lại sẽ được xem xét các đặc trưng của khuôn mặt về mắt và miệng. Hai ông  đã dùng một chiến lược “từ thô đến mịn” hay “làm rõ dần” để giảm số lượng tính toán trong xử lý. Mặc dù tỷ lệ chính xác chưa cao, nhưng đây là tiền đề cho nhiều nghiên cứu sau này

Kotropoulos và Pitas  đưa một phương pháp tương tự dùng trên  độ phân giải thấp. Hai ông dùng phương pháp chiếu để xác định các đặc trưng khuôn mặt, Kanade đã thành công với phương pháp chiếu để xác định biên của khuôn mặt. Với I(x,y) là giá trị xám của một điểm trong ảnh có kích thước m x n ở tại vị trí (x,y), các hàm để chiếu  ảnh theo phương ngang và thẳng  đứng  được định nghĩa như sau:


Dựa trên biểu đồ hình chiếu ngang, có hai cực tiểu  địa phương khi hai ông xét quá trình thay đổi độ đốc của HI, đó chính là cạnh bên trái và phải của hai bên đầu. Tương tự với hình chiếu dọc VI, các cực tiểu địa phương cũng cho ta biết vị trí miệng, đỉnh mũi, và hai mắt. Các đặc trưng này đủ để xác định khuôn mặt.

2.Hướng tiếp cận dựa trên đặc trưng không thay đổi (đặc trưng bất biến)

Đây là hướng tiếp cận theo kiểu bottom-up. Các tác giả cố gắng tìm các đặc trưng không thay đổi của khuôn mặt người để xác định khuôn mặt người. Dựa trên nhận xét thực tế, con người dễ dàng nhận biết các khuôn mặt và các  đối tượng trong các tư thế khác nhau và điều kiện ánh sáng khác nhau, thì phải tồn tại các thuộc tính hay đặc trưng không thay đổi. Có nhiều nghiên cứu đầu tiên xác định các đặc trưng khuôn mặt rồi chỉ ra có khuôn mặt trong  ảnh hay không. Các  đặc trưng như: lông mày, mắt, mũi, miệng, và  đường viền của tóc  được trích bằng phương pháp xác  định cạnh. Trên cơ sở các  đặc trưng này, xây dựng một mô hình thống kê để mô tả quan hệ của các đặc trưng này và xác định sự tồn tại của khuôn mặt trong ảnh. Một vấn đề của các thuật tóan theo hướng tiếp cân  đặc trưng cần phải  điều chỉnh cho phù hợp điều kiện ánh sáng, nhiễu, và bị che khuất. Đôi khi bóng của khuôn mặt sẽ tạo thêm cạnh mới, mà cạnh này lại rõ hơn cạnh thật sự của khuôn mặt, vì thế nếu dùng cạnh để xác định sẽ gặp khó khăn

· Các đặc trưng khuôn mặt :

Sirohey  đưa một phương pháp xác  định khuôn mặt từ một ảnh có hình nền phức tạp. Phương pháp dựa trên cạnh (dùng phương pháp Candy và heuristics để loại bỏ các cạnh để còn lại duy nhất một  đường bao xung quanh khuôn mặt. Một hình ellipse dùng  để bao khuôn mặt, tách biệt vùng đầu và hình nền. Tỷ lệ chính xác của thuật tóan là 80%. Cũng dùng phương pháp cạnh như Sirohey, Chetverikov và Lerch dùng một phưong pháp dựa trên blob và streak (hình dạng giọt nước và sọc xen kẽ), để xác định theo hướng các cạnh. Hai ông dùng hai blob tối và ba blob sáng để mô tả hai mắt, hai bên gò má, và mũi. Mô hình này dùng các treak để mô tả hình dáng ngoài của khuôn mặt, lông mày, và môi.  Dùng  ảnh có  độ phân giải thấp theo biến đổi Laplace để xác định khuôn mặt thông qua blob.

Leung trình bày một mô hình xác suất  để xác định khuôn mặt  ở trong  ảnh có hình nền phức tạp trên cơ sở một bộ xác định đặc trưng cục bộ và so khớp đồ thị ngẫu nhiên. Dùng năm  đặc trưng (hai mắt, hai lỗ mũi, phần nối giữa mũi và miệng)  để mô tả một khuôn mặt. Luôn tính quan hệ khoảng cách với các đặc trưng cặp (như mắt trái, mắt phải), dùng phân bố Gauss  để mô hình hóa. Một mẫu khuôn mặt  được đưa ra thông qua trung bình tương ứng cho một tập đa hướng,  đa tỷ lệ của bộ lọc  đạo hàm Gauss. Từ một ảnh, các đặc trưng ứng viên được xác định bằng cách so khớp từng điểm ảnh khi lọc tương ứng với vector mẫu (tương tự mối tương quan), chọn hai ứng viên  đặc trưng  đứng  đầu  để tìm kiếm cho các  đặc trưng khác của khuôn mặt. Giống như xây dựng mộ đồ thị quan hệ mỗi node của đồ thị tương ứng như các đặc trưng của một khuôn mặt, đưa xác suất vào để xác định. Tỷ lệ xác định chính xác là 86%.

Vâng vâng,… còn rất nhiều phương pháp xác định những đặc trưng khuôn mặt.

· Kết cấu khuôn mặt:

Khuôn mặt con người có những kết cấu riêng biệt mà có thể dùng  để phân loại so với các  đối tượng khác. Augusteijn và Skufca cho rằng hình dạng của khuôn mặt dùng làm kết cấu phân loại, gọi là kết cấu giống khuôn mặt (face-like texture). Tính kết cấu qua các đặc trưng thống kê thứ tự thứ hai (SGLD) trên vùng có kích thước 16×16 điểm ảnh. Có ba loại đặc trưng được xem xét: màu da, tóc, và những thứ khác. Hai ông dùng mạng neural về mối tương quan cascade cho phân loại có giám sát các kết cấu và một ánh xạ đặc trưng tự tổ chức Kohonen để gom nhóm các lớp kết cấu khác nhau. Hai tác giả  đề xuất dùng phương pháp bầu cử khi không quyết định được kết cấu đưa vào là kết cấu của da hay kết cấu của tóc.

Manian và Ross dùng biến  đổi wavelet  để xây dựng tập dữ liệu kết cấu của khuôn mặt trong ảnh xám thông qua nhiều độ phân giải khác nhau kết hợp xác suất thông kê để xác định khuôn mặt người. Mỗi mẫu sẽ có chín  đặc trưng. Tỷ lệ chính xác là 87%, tỷ lệ xác định sai là 18%.

· Sắc màu của da:

Thông thường các ảnh màu không xác định trực tiếp trên toàn bộ dữ liệu  ảnh mà các tác giả dùng tính chất sắc màu của da người (khuôn mặt người) để chọn ra  được các ứng viên có thể là khuôn mặt người (lúc này dữ liệu  đã thu hẹp  đáng kể) để xác định khuôn mặt người. Tôi sẽ trình bày chi tiết về mô hình hóa màu da người ở một bài sau.

· Đa đặc trưng

Gần  đây có nhiều nghiên cứu sử dụng các  đặc trưng toàn cục như: màu da người, kích thước, và hình dáng để tìm các ứng viên khuôn mặt, rồi sau đó sẽ xác  định  ứng viên nào là khuôn mặt thông qua dùng các đặc trưng cục bộ (chi tiết) như: mắt, lông mày, mũi, miệng, và tóc. Tùy mỗi tác giả sẽ sử dụng tập đặc trưng khác nhau.

3. Hướng tiếp cận dựa trên so khớp mẫu

Trong so khớp mẫu, các mẫu chuẩn của khuôn mặt (thường là khuôn mặt được chụp thẳng) sẽ được xác định trước hoặc xác định các tham số thông qua một hàm. Từ một ảnh đưa vào, tính các giá trị tương quan so với các mẫu chuẩn về  đường viền khuôn mặt, mắt, mũi và miệng. Thông qua các giá trị tương quan này mà các tác giả quyết định có hay không có tồn tại khuôn mặt trong ảnh. Hướng tiếp cận này có lợi thế là rất dễ cài đặt, nhưng không hiệu quả khi tỷ lệ, tư thế, và hình dáng thay  đổi (đã  được chứng minh). Nhiều độ phân giải, đa tỷ lệ, các mẫu con, và các mẫu biến dạng được xem xét thành bát biến về tỷ lệ và hình dáng.

Hướng tiếp cận này có thể đi theo phương pháp sau.

· Xác định mẫu trước

Sakai đã cố gắng thử xác định khuôn mặt người chụp thẳng trong ảnh. Ông dùng vài mẫu con về mắt, mũi, miệng, và đường viền khuôn mặt để mô hình hóa một khuôn mặt. Mỗi mẫu con  được  định nghĩa trong giới hạn của các đoạn thẳng. Các đường thẳng trong  ảnh được trích bằng phương pháp xem xét thay đổi gradient nhiều nhất và so khớp các mẫu con. Đầu tiên tìm các ứng viên thông qua mối tương quan giữa các  ảnh con và các mẫu về  đường viền. Sau đó, so khớp với các mẫu con khác. Hay nói một cách khác, giai  đoạn  đầu xem như là giai  đoạn sơ chế để tìm ứng viên, giai đọan thứ hai là giai đoạn tinh chế để xác định có tồn tại hay không một khuôn mặt người. Ý tưởng này  được duy trì cho  đến các nghiên cứu sau này.

Craw đưa ra một phương pháp xác định khuôn mặt người dựa vào các mẫu về hình dáng của các ảnh  được chụp thẳng (dùng vẻ bề ngoài của hình dáng khuôn mặt).  Đầu tiên dùng phép lọc Sobel để tìm các cạnh. Các cạnh này sẽ được nhóm lại theo một số ràng buộc. Sau đó, tìm đường viền của  đầu, quá trình tương tự  được lặp đi lặp lại với mỗi tỷ lệ khác nhau để xác định các đặc trưng khác như: mắt, lông mày, và môi. Sau đó Craw mô tả một phương thức xác  định dùng một tập có 40 mẫu  để tìm các  đặc trưng khuôn mặt và  điều khiển chiến lược dò tìm.

Vâng  vâng… có rất nhiều nghiên cứu dựa trên phương pháp xác định mẫu trước của hướng tiếp cận So khớp mẫu này.

· Các mẫu bị biến dạng

Yuille dùng các mẫu biến dạng để mô hình hóa 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ố hóa. 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.

Huang và Su 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.

4. Hướng tiếp cận dựa trên diện mạo

Trái ngược với các phưong pháp so khớp mẫu với các mẫu  đã  được  định nghĩa trước bởi những chuyên gia, các mẫu trong hướng tiếp cận này được học từ các ảnh mẫu. Một các tổng quát, các phương pháp theo hướng tiếp cận này áp dụng các kỹ thuật theo hướng xác suất thống kê và máy học  để tìm những  đặc tính liên quan của khuôn mặt và không phải là khuôn mặt. Các đặc tính đã được học ở trong hình thái các mô hình phân bố hay các hàm biệt số nên dùng có thể dùng các đặc tính này để xác định khuôn mặt người. Đồng thời, bài toán giảm số chiều thường  được quan tâm  để tăng hiệu quả tính toán cũng như hiệu quả xác định.

Có nhiều phương pháp áp dụng xác suất thống kê để giả quyết. Một ảnh hay một vector đặc trưng xuất phát từ một ảnh được xem như một biến ngẫu nhiên x, và biến ngẫu nhiên có đặc tính là khuôn mặt hay không phải khuôn mặt bởi công thức tính theo các hàm mật  độ phân lớp theo  điều kiện.

P(x | khuôn mặt) và P(x | ~ khuôn mặt)

Có thể dùng phân loại Bayes hoặc khả năng cực đại để phân loại một ứng viên là khuôn mặt hay không phải là khuôn mặt. Không thể cài đặt  trực tiếp phân loại Bayes bởi vì số chiều của x khá cao, bởi vì P(x | khuôn mặt) và P(x | ~ khuôn mặt) là đa phương thức, và chưa thể hiểu nếu xây dựng các dạng tham số hóa một cách tự nhiên cho P(x | khuôn mặt) và P(x | ~ khuôn mặt) Có khá nhiều nghiên cứu theo hướng tiếp cận này quan tâm xấp xỉ có tham số hay không có tham số cho P(x | khuôn mặt) và P(x | ~ khuôn mặt) .

Các tiếp cận khác trong hướng tiếp cận dựa trên diện mạo là tìm một hàm biệt số (như: mặt phẳng quyết định, siêu phẳng để tách dữ liệu, hàm ngưỡng) để phân biệt hai lớp dữ liệu: khuôn mặt và không phải khuôn mặt. Bình thường, các mẫu  ảnh  được chiếu vào không gian có số chiều thấp hơn, rồi sau đó dùng một hàm biệt số (dựa trên các độ đo khoảng cách) để phân loại, hoặc xây dựng mặt quyết định phi tuyến bằng mạng neural đa tầng. Hoặc dùng SVM (Support Vector Machine) và các phương thức kernel, chiếu hoàn toàn các mẫu vào không gian có số chiều cao hơn để dữ liệu bị rời rạc hoàn toàn và ta có thể dùng một mặt phẳng quyết định phân loại các mẫu khuôn mặt và không phải khuôn mặt.

  • · Dựa trên tri thức (knowledge-based)
  • · Đặc trưng bất biến (feature invariant)
  • · Đối sánh mẫu (template matching)

Dựa vào diện mạo (appearance-based) phương pháp này thường dùng một mô hình máy học nên còn được gọi là phương pháp dựa trên máy học (machine learning-based).

Dựa trên tri thức (knowledge-based)

  • · Đặc trưng bất biến (feature invariant)
  • · Đối sánh mẫu (template matching)

Dựa vào diện mạo (appearance-based) phương pháp này thường dùng một mô hình máy học nên còn được gọi là phương pháp dựa trên máy học (machine learning-based).

· Dựa trên tri thức (knowledge-based)

· Đặc trưng bất biến (feature invariant)

· Đối sánh mẫu (template matching)

Dựa vào diện mạo (appearance-based) phương pháp này thường dùng một mô hình máy học nên còn được gọi là phương pháp dựa trên máy học (machine learning-based).

Dựa trên tri thức (knowledge-based)

· Đặc trưng bất biến (feature invariant)

· Đối sánh mẫu (template matching)

Dựa vào diện mạo (appearance-based) phương pháp này thường dùng một mô hình máy học nên còn được gọi là phương pháp dựa trên máy học (machine learning-based).

Comments»

1. Hương - 02/06/2011

Mình có 1 bức mình muốn nhờ định dạng khuôn mặt thì có được không? Nếu được thì liên hệ mình nhé🙂 Thanks

hnb1988 - 02/06/2011

Là sao bạn, định dạng là sao mình chưa hiểu ý bạn

2. Code cài đặt giải thuật PCA – Code PCA | Blog IT & Life - 11/08/2013

[…] Và bài các hướng tiếp cận nhận dạng mặt người https://bloghnb.wordpress.com/2010/12/29/nh%E1%BA%ADn-d%E1%BA%A1ng-m%E1%BA%B7t-ng%C6%B0%E1%BB%9Di-cac… Rất vui khi có rất nhiều bạn quan tâm tới về đề tài này. Và có nhiều bạn […]


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: