Chương 1: Tổng quan 1.1 Giới thiệu Nhận dạng cảm xúc mặt người (Facial Expression Recognition – FER) giữ vai trò quan trọng trong tương tác giữa người và máy, trong các hệ thống an ninh với sự phổ biến của các camera an ninh ở các sân bay, văn phòng, trường đại học, máy ATM, ngân hàng… FER còn có thể được sử dụng trong nghiên cứu tâm lý học hành vi, chăm sóc khách hàng hay trong các hệ thống khuyến nghị dựa trên hình ảnh. Biểu hiện trên khuôn mặt thể hiện tâm trạng hoặc trạng thái cảm xúc của một cá nhân ở một thời điểm cụ thể như buồn, hạnh phúc, tức giận… Paul Ekman [1] cho thấy sáu cảm xúc phổ biến là buồn (sad), hạnh phúc (happy), tức giận (angry), sợ hãi (fear), ghê tởm (disgust) và ngạc nhiên (surprise). Phát hiện khuôn mặt là bước đầu tiên của nhận dạng cảm xúc khuôn mặt, trong đó khuôn mặt được xác định từ ảnh đầu vào và loại bỏ các đối tượng khác (nếu có). Sau khi đã xác định được khuôn mặt người, bước tiếp theo thực hiện trích xuất đặc trưng và biểu diễn các đặc trưng đó.
Với đặc trưng thu được, công việc cuối cùng là phân loại các đặc trưng vào một trong 6 loại cảm xúc phổ biến ở trên, sơ đồ 1. Nhiều công trình nghiên cứu đã được thực hiện nhằm nâng cao độ chính xác cho bài toán FER. Tiếp cận ở giai đoạn trích xuất và biểu diễn đặc trưng có các phương pháp như Gabor Wavelet, LBP (Local Binary Pattern), PCA (Principal Component Analysis), LDA (Linear Discriminant Analysis), LDP (Local Directional Pattern), HOG (Histogram of Oriented Gradients). Mỗi phương pháp đều có ưu khuyết điểm riêng, LBP với ưu điểm chính là ít chịu ảnh hưởng của những thay đổi về độ sáng, góc quay, độ co giãn, chi phí tính toán thấp, tốc độ xử lý nhanh nên được ứng dụng nhiều trong bài toán phát hiện và nhận diện khuôn mặt.
Ở giai đoạn phân loại, rất nhiều thuật toán cũng đã được nghiên cứu và công bố như Mô hình Markov ẩn (Hidden Markov Model), Naïve Bayesian, KNN (K-nearset Neighbours), SVM (Suport Vector Machine), Mạng nơ ron tích chập (Convolutaion Neural Networks – CNN)… [1][2][3]. Trong đó, CNN thể hiện ưu thế vượt trội với khả năng xử lý tập dữ liệu lớn cũng như rất nhiều kiến trúc mạng được nghiên cứu và công bố… Với những ưu điểm đó của LBP và CNN, luận văn tập trung tìm hiểu, nghiên cứu kiến trúc mà dữ liệu đầu vào của CNN là đặc trưng LBP hay còn gọi là mạng nơ ron tích chập mẫu nhị phân cục bộ (LBP-CNN – Local Trang 6/51 Nguyễn Sơn Hóa Nhận dạng cảm xúc mặt người với LBP-CNN Binary Pattern Convolutional Neural Networks) cho bài toán nhận dạng cảm xúc mặt người. Sơ đồ 1 - Các bước căn bản trong FER 1.2 Các hướng tiếp cận Nhận dạng cảm xúc mặt người (FER) là quá trình giúp nhận biết tâm trạng và cảm xúc của mỗi cá nhân. Rất nhiều công trình đã được thực hiện.
FER có hai hướng tiếp cận chính [2][3] đó là: • Dựa theo diện mạo (appearance); cách tiếp cận dựa theo diện mạo sẽ xem xét các thông tin có được từ giá trị cường độ của các điểm ảnh hay toàn bộ ảnh bằng cách áp dụng các phép biến đổi, bộ lọc hoặc phương pháp máy học, thống kê… • Dựa theo hình học (geometric); trong cách tiếp cận dựa theo hình học, hình dạng, khoảng cách, vị trí của sự thay đổi của các thành phần mặt như: cơ mặt, mắt, miệng, trán… sẽ được xem xét. Năm 1978, Ekman giới thiệu một hệ thống để đo biểu hiện khuôn mặt được gọi là FACS (Face Action Coding System - Hệ thống mã hoá hành động mặt) dựa trên tâm lý học [4]. FACS được phát triển bằng cách phân tích các mối quan hệ giữa sự co giãn cơ và sự thay đổi diện mạo khuôn mặt do chúng gây ra. Sự co giãn của các cơ chịu trách nhiệm cho cùng một hành động được đánh dấu như là một đơn vị hành động (Action Unit - AU).
Mặt có thể được chia thành các đơn vị hành động mặt trên (Upper Face AU) và các đơn Trang 7/51 Nguyễn Sơn Hóa Nhận dạng cảm xúc mặt người với LBP-CNN vị hành động mặt dưới (Lower Face AU). Có 46 AU đại diện cho sự thay đổi biểu hiện trên khuôn mặt và 12 AU liên quan đến hướng nhìn mắt và hướng đầu. AU có tính mô tả cao về cử động khuôn mặt, tuy nhiên chúng không cung cấp bất kỳ thông tin đại diện nào. Các AU được gán nhãn với sự mô tả của các hành động.
Nhiệm vụ phân tích cảm xúc bằng cách sử dụng FACS là dựa trên sự phân rã các biểu hiện quan sát được vào tập các AU, sau đó cảm xúc được xác định. Caifeng Shan, Shaogang Gong, Peter W. McOwan [5] đã thực hiện kiểm tra, so sánh đặc trưng LBP với đặc trưng Gabor Wavelet kết hợp với các thuật toán phân lớp như LDA, KNN, SVM trên một số cơ sở dữ liệu như JAFFE, CK+. Cụ thể, LBP kết hợp với SVM đạt 88.9% trong khi Gabor và SVM chỉ đạt 86.
LBP và SVM đạt 80.2% chiếm ưu thế hơn hẵn với 73.4% của LBP và LDA+NN (Table 8). Ưu điểm tốc độ của LBP cũng được nhóm tác giả kiểm chứng trên Matlab, 0.03s là thời gian xử lý của LBP trong khi Gabor cần 30s để hoàn thành công việc trích xuất đặc trưng. Điều này dễ hiểu bởi Gabor xử lý số chiều đặc trưng là 42,650 trong khi đó LBP chỉ phải xử lý 2478. Hầu hết các tiếp cận FER đều hoạt động tốt với các cơ sở dữ liệu được kiểm soát nhưng lại thất bại trong môi trường thực tế.
Lý do là vì các tập dữ liệu này có các ảnh nền khác nhau, đôi khi phức tạp với nhiều ngoại vật xen kẻ với ảnh người… vì thế không thể đưa ra được các cảm xúc chung. Shan và cộng sự thực nghiệm với các tập dữ liệu khác nhau. Nhóm thực thiện huấn luyện phân loại với thuật toán SVM bằng việc trích xuất đặc trưng LBP (Local Binary Pattern) trên tập dữ liệu Cohn-Kanade. Sau đó kiểm tra bộ phân lớp đã được huấn luyện trên tập dữ liệu MMI và JAFFE.
Họ quan sát thấy, hiệu suất tổng quát trên các tập dữ liệu là thấp hơn nhiều, chẳng hạn như khoảng 50% trên cơ sở dữ liệu MMI và khoảng 40% trên cơ sở dữ liệu JAFFE (Table 18). Nhóm của Littlewort và cộng sự huấn luyện các đặc trưng Gabor Wavelet theo SVM trên tập dữ liệu Cohn-Kanade và kiểm tra chúng trên cơ sở dữ liệu khác, tỷ lệ công nhận đạt được cũng chỉ là 56% -60%. [6] Gần đây, một số thuật toán học sâu đã được đề xuất trong học máy và áp dụng cho phát hiện và nhận dạng các đối tượng thị giác, phân loại hình ảnh, xác minh khuôn mặt và nhiều vấn đề nghiên cứu khác. Các nền tảng học sâu như CNN, Stacked AutoEncoders (SAE) và Deep Belief Network (DBN) đã được trình bày, nhiều phương Trang 8/51 Nguyễn Sơn Hóa Nhận dạng cảm xúc mặt người với LBP-CNN pháp tiếp cận theo hướng học sâu cũng được phát triển dựa trên các nền tảng này.
Những tiếp cận học sâu sử dụng một số lượng lớn các hình ảnh để học và đạt được hiệu suất cao. Shiam và Aza [7] đã ứng dụng CNN để thực hiện nhận diện cảm xúc mặt người. Họ thực hiện huấn luyện CNN với nhiều mức sâu khác nhau và sử dụng tập ảnh xám từ trang web Kaggle với kết quả đạt được là 65%. Nhóm tác giả cũng thực nghiệm kết hợp đặc trưng HOG với CNN và kết quả đạt được không thay đổi nhiều so với CNN thuần túy.
Mundher Al-Shabi, Wooi Ping Cheah, Tee Connie [8] đã nghiên cứu đặc trưng SIFT kết hợp với CNN và đạt 73.4% trên FER2013 và 99.3 Khó khăn và thách thức Tuy đạt được những kết quả tương đối khả quan do sự phát triển của nhiều phương pháp như trí tuệ nhân tạo, mạng nơ ron… nhưng bài toán nhận dạng cảm xúc mặt người vẫn còn tồn tại nhiều khó khăn và thách thức. Khó khăn trong việc phát hiện mặt người khi ảnh đầu vào có nhiều ngoại vật khác, hướng nghiêng của mặt hay mặt bị che khuất một phần cũng là một thách thức lớn. Ngoài ra khi xác định được khuôn mặt người, kích thước ảnh mặt được cắt ra thường nhỏ nên độ phân giải tương đối thấp, chưa kể một số ảnh đầu vào có độ phân giải thấp gây khó khăn cho bước tiếp theo là trích xuất và biểu diễn đặc trưng. Nhầm lẫn giữa các cảm xúc như ghê tởm (disgust), tức giận (angry) khi phân loại cũng là thách thức cho bài toán FER vì mức độ tương đồng.
Hay môi trường sẽ tác động đến việc nhận biết các cảm xúc, như ánh sáng quá chói làm hệ thống không phân biệt sự khác biệt này.4 Đề xuất hướng giải quyết Với những khó khăn và thách thức trên, luận văn giới hạn với tập ảnh đầu vào có mặt người nhìn thẳng, ít hoặc không có các vật cản che khuất như kính râm, nón… Chúng tôi tập trung vào bài toán nhận dạng cảm xúc nên áp dụng thuật toán phát hiện khuôn mặt người trong ảnh do Viola & John công bố để xác định vùng khuôn mặt trong ảnh, phương pháp này cho phép xác định khuôn mặt được chụp thẳng với độ chính xác rất cao và xử lý với thời gian nhanh [3][6]. Đặc trưng LBP có những ưu điểm giúp hệ thống ít bị tác động từ môi trường trường xung quanh như ánh sáng, kích thước, góc quay, và tốc độ Trang 9/51 Nguyễn Sơn Hóa Nhận dạng cảm xúc mặt người với LBP-CNN xử lý nhanh [5] nên chúng tôi sẽ trích đặc trưng trên khuôn mặt bằng phương pháp LBP. Với sức mạnh của phương pháp học sâu (Deep Learning) hiện nay mà cụ thể là mạng neural tích chập (Convolution Neural Network – CNN) cho nhận dạng xử lý ảnh cũng như nhận dạng cảm xúc mặt người [7], chúng tôi đề xuất dùng CNN để nhận dạng từ đặc trưng LBP đã được trích trước đó. Trang 10/51 Nguyễn Sơn Hóa Nhận dạng cảm xúc mặt người với LBP-CNN Chương 2: Cơ sở lý thuyết 2.1 Các phương pháp phát hiện khuôn mặt người Đã có nhiều nghiên cứu tìm phương pháp xác định khuôn mặt người, từ ảnh xám đến ngày nay là ảnh màu [11][12].
Dựa vào tính chất của các phương pháp xác định khuôn mặt người trên ảnh, chúng ta có thể chia các phương pháp này thành bốn hướng tiếp cận chính sau: - Hướng tiếp cận dựa trên tri thức: Mã hóa các hiểu biết của con người về các loại khuôn mặt người thành các luật. Thông thường các luật mô tả quan hệ của các đặc trưng.