Nhận diện cảm xúc khuôn mặt | Báo cáo bài tập lớn học phần Thị giác máy tính

Thông qua việc phân tích phản ứng của họ đối với điều gì đó hoặc tình trạng cảm xúc hoặc phúc lợi của họ tại một thời điểm cụ thể, có thể khám phá ra cảm giác của họ. Khả năng nhận ra cảm xúc của một người qua nét mặt là một kỹ năng có giá trị vì nó có thể mang tính hướng dẫn hơn so với giao tiếp bằng lời nói trong một số ngữ cảnh, đặc biệt khi giao tiếp bằng lời nói không có hoặc không tiết lộ nhiều thông tin. Tài liệu giúp bạn tham khảo, ôn tập và đạt kết quả cao. Mời bạn đón xem.

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC PHENIKAA
BÁO CÁO BÀI TẬP LỚN
THỊ GIÁC MÁY TÍNH
Đề Tài
:
Facial emotion recognition
(
Nhận diện cảm xúc khuôn mặt
)
Giáo viên hướng dẫn :NGUYỄN VĂN TỚI
Sinh viên thực hiện:
TRẦN TRUNG KIÊN - 20010778
NGUYỄN DUY KHÁNH – 20010775
VĂN MINH - 20010
Hà Nội, tháng ....../2022
I. Giới thiệu mô hình đề tài .
Một trong những hình thức giao tiếp và tương tác xã hội phi ngôn ngữ quan trọng
nhất giữa các cá nhân là nét mặt. Bởi vì con người là một sinh vật xã hội, chúng ta
có thể tìm hiểu về suy nghĩ hoặc cảm xúc của ai đó bằng cách xem xét nét mặt của
họ. Trong trường hợp khi một cá nhân trình bày một vấn đề cụ thể
Thông qua việc phân tích phản ứng của họ đối với điều gì đó hoặc tình trạng cảm
xúc hoặc phúc lợi của họ tại một thời điểm cụ thể, có thể khám phá ra cảm giác của
họ. Khả năng nhận ra cảm xúc của một người qua nét mặt là một kỹ năng có giá trị
vì nó có thể mang tính hướng dẫn hơn so với giao tiếp bằng lời nói trong một số
ngữ cảnh, đặc biệt khi giao tiếp bằng lời nói không có hoặc không tiết lộ nhiều
thông tin.
Học máy để nhận dạng cảm xúc khuôn mặt là một lĩnh vực dễ bị nhầm lẫn do ánh
sáng, vị trí và các khía cạnh khác trong ảnh khuôn mặt luôn thay đổi. Hơn nữa,
ngay cả theo tiêu chuẩn của con người, nhiều người gặp khó khăn trong việc nhận
ra cảm xúc chỉ từ khuôn mặt. Kết quả là, các mô hình sẽ gặp khó khăn trong việc
đạt được độ chính xác cao.
Nếu một mô hình phân loại cụ thể và đáng tin cậy được xây dựng thành công, nó
có thể được sử dụng trong nhiều lĩnh vực khác nhau. Dưới đây là một vài ví dụ như
vậy:
Các ứng dụng lâm sàng và tâm lý - Những người mắc bệnh tâm thần hoặc
phát triển, chẳng hạn như rối loạn phổ tự kỷ và tâm thần phân liệt, những
người thường gặp khó khăn trong việc hiểu cảm xúc từ nét mặt, có thể
được hưởng lợi từ dịch vụ này. Một người mẫu đáng tin cậy có thể được sử
dụng để hướng dẫn những người như vậy nhằm giúp họ phát triển những
khả năng cần thiết để nhận ra những nét tinh tế trên nét mặt. Đổi lại, một
mô hình có thể dạy những cảm xúc phản ứng phù hợp, hỗ trợ các cá nhân
hiểu rõ hơn về các hoàn cảnh xã hội cụ thể.
Tội phạm học và tâm lý học pháp y - Hỗ trợ điều tra bằng cách nhận dạng
nét mặt của nghi phạm trong khi thẩm vấn, tương tự như kết quả của máy
phát hiện nói dối.
Tương tác giữa người và máy tính (HCI) - Hỗ trợ nghiên cứu thị trường và
người tiêu dùng bằng cách đánh giá hiệu quả quảng cáo và sự hài lòng của
khách hàng. Kết quả của họ có thể được nâng cao và dẫn đến các mục hoặc
đề xuất được cải thiện bằng cách sử dụng một mô hình đáng tin cậy.
Khoa học Chính trị - Phát hiện cảm xúc của các chính trị gia trong các lần
xuất hiện hoặc phát biểu trước công chúng.
II. Mục tiêu đề tài.
- Xây dựng chương trình cơ sở nhận diện cảm xúc khuôn mặt
- Giúp ích được trong một số lĩnh vực như bao mật thông tin,truy tìm tội
phạm,….
III. Phương pháp .
IV. Tổng quan về xử lí ảnh.
- Biến đối làm tăng chất lượng ảnh
- Tự động nhận dạng ảnh , đánh giá nội dung hình ảnh
- Kiểm tra và phân loại ảnh
- Nhận biết và đánh giá ảnh từ đó có thể phân tích những phần có í nghĩa có
thể phân biệt đối tượng này và đối tượng khác,từ đó áp dụng thực tiễn các
ứng dụng vào đời sống
V. Thiết kế và mô hình ứng dụng.
- Sử dụng mạng CNN để train mô hình nhận diện cảm xúc khuôn mặt.
- Mô hình được train hay quá trình nhận diện cảm xúc khuôn mặt diễn ra
trong 3 giai đoạn:
Nhận ảnh và tiền xử lí
Trích xuất đặc trưng
Phân lớp và nhận diện cảm xúc - Trong giai đoạn nhận ảnh và tiền xử
lý:
Đầu vào ở đây là có thể là ảnh chụp hoặc là các dataset
Trải qua một số bước tiền xử lí để tang chất lượng hình ảnh để giúp cho
việc nhận diện cảm xúc trở nên hiệu quả hơn
- Trích xuất đặc trưng là bước gần như quan trọng nhất :
Các bước đặc trưng khuôn mặt được tính toán trên các thuật toán có sẵn, kết
quả thường là vecter đặc trưng làm đầu vào cho các bước sau - Phân lớp và
nhận diện cảm xúc:
Đây là một bài toán điển hình có thể dung nhiều thuật toán để áp dụng cho
- Mô hình kiến trúc nhận dạng cảm xúc khuôn mặt :
-
Hình 4.1. mô hình CNN kết hợp đặc trưng truyền thống cho hệ thống nhận dạng cảm
xúc qua khuôn mặt
Hình 4.1 mô hình thiết kế của hệ thống nhận dạng cảm xúc qua khuôn mặt sử dụng
phương pháp CNN kết hợp với đặc trưng truyền thống. Đầu vào là hình ảnh có
kích thước 48x48 pixel và 1 chanels (ảnh xám) được lấy trong bộ dữ liệu dataset
FER2013, đầu ra của hệ thống là dự đoán cảm xúc của hình ảnh. Để thực hiện quá
trình có được đầu ra hệ thống cần thực hiện theo hai giai đoạn: tiền xử lý hình ảnh,
phân lớp sử dụng học sâu. Trong đó bước trích chọn đặc trưng được thực hiện một
cách không tường minh, ẩn bên trong giai đoạn phân lớp sử dụng học sâu, các giai
đoạn thực hiện một cách liền mạch không phân chia một cách quá cụ thể và rõ
ràng như phương pháp truyền thống. Hình 4.1 mô hình kiến trúc của phương pháp
CNN, đầu vào là hình ảnh có kích thước là 48x48, sau đó đồng thời thực hiện 2
việc song song:
Ảnh đầu vào thực hiện đi qua phương pháp deep learning hiện đại. Trong
giai đoạn này, thực hiện đi qua các bước các tầng tích chập, tầng gộp, tầng
kết nối. Tạo ra tầng kết nối có kích thước 1024.
Ảnh đầu vào kết hợp với các đặc trưng truyền thống (Face lanmarks + HoG
features). Đầu ra là tạo ra tầng kết nối có kích thước 1024. Cuối cùng, hai
công việc thực hiện song song gộp lại tạo thành tầng kết nối đầy đủ có kích
thước 256 và cho ra kết quả đầu ra là một trong 7 trạng thái cảm xúc. Mô
hình SVM thiết kế cho hệ thống nhận dạng cảm xúc qua khuôn mặt:
- Mô hình hóa bài toán :
Hình 4.2. Mô hình hóa bài toán
VI. Test và đưa ra kết quả .
- Thực hiến test trên mô hình ảnh đã chụp sẵn cho ra kết quả
VII. Kết luận và hướng phát triển .
- Mô hình nhận diện cảm xúc khuôn mặt đã được nghiên cứu khá lâu với độ
chính xác cũng tương đối chấp nhận . Dùng mô hình CNN để train theo
thống kê thì độ chính xác vẫn còn tương đối với khoảng 60% chính xác .
- Đây là một bài toán có thể áp dụng trên nhiều lĩnh vực và có thể áp dụng vào
thực tế
| 1/6

Preview text:

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC PHENIKAA
BÁO CÁO BÀI TẬP LỚN THỊ GIÁC MÁY TÍNH
Đề Tài : Facial emotion recognition
( Nhận diện cảm xúc khuôn mặt )
Giáo viên hướng dẫn :NGUYỄN VĂN TỚI
Sinh viên thực hiện: TRẦN TRUNG KIÊN - 20010778
NGUYỄN DUY KHÁNH – 20010775 VŨ VĂN MINH - 20010
Hà Nội, tháng ....../2022 I.
Giới thiệu mô hình đề tài .
Một trong những hình thức giao tiếp và tương tác xã hội phi ngôn ngữ quan trọng
nhất giữa các cá nhân là nét mặt. Bởi vì con người là một sinh vật xã hội, chúng ta
có thể tìm hiểu về suy nghĩ hoặc cảm xúc của ai đó bằng cách xem xét nét mặt của
họ. Trong trường hợp khi một cá nhân trình bày một vấn đề cụ thể
Thông qua việc phân tích phản ứng của họ đối với điều gì đó hoặc tình trạng cảm
xúc hoặc phúc lợi của họ tại một thời điểm cụ thể, có thể khám phá ra cảm giác của
họ. Khả năng nhận ra cảm xúc của một người qua nét mặt là một kỹ năng có giá trị
vì nó có thể mang tính hướng dẫn hơn so với giao tiếp bằng lời nói trong một số
ngữ cảnh, đặc biệt khi giao tiếp bằng lời nói không có hoặc không tiết lộ nhiều thông tin.
Học máy để nhận dạng cảm xúc khuôn mặt là một lĩnh vực dễ bị nhầm lẫn do ánh
sáng, vị trí và các khía cạnh khác trong ảnh khuôn mặt luôn thay đổi. Hơn nữa,
ngay cả theo tiêu chuẩn của con người, nhiều người gặp khó khăn trong việc nhận
ra cảm xúc chỉ từ khuôn mặt. Kết quả là, các mô hình sẽ gặp khó khăn trong việc
đạt được độ chính xác cao.
Nếu một mô hình phân loại cụ thể và đáng tin cậy được xây dựng thành công, nó
có thể được sử dụng trong nhiều lĩnh vực khác nhau. Dưới đây là một vài ví dụ như vậy:
• Các ứng dụng lâm sàng và tâm lý - Những người mắc bệnh tâm thần hoặc
phát triển, chẳng hạn như rối loạn phổ tự kỷ và tâm thần phân liệt, những
người thường gặp khó khăn trong việc hiểu cảm xúc từ nét mặt, có thể
được hưởng lợi từ dịch vụ này. Một người mẫu đáng tin cậy có thể được sử
dụng để hướng dẫn những người như vậy nhằm giúp họ phát triển những
khả năng cần thiết để nhận ra những nét tinh tế trên nét mặt. Đổi lại, một
mô hình có thể dạy những cảm xúc phản ứng phù hợp, hỗ trợ các cá nhân
hiểu rõ hơn về các hoàn cảnh xã hội cụ thể.
• Tội phạm học và tâm lý học pháp y - Hỗ trợ điều tra bằng cách nhận dạng
nét mặt của nghi phạm trong khi thẩm vấn, tương tự như kết quả của máy phát hiện nói dối.
• Tương tác giữa người và máy tính (HCI) - Hỗ trợ nghiên cứu thị trường và
người tiêu dùng bằng cách đánh giá hiệu quả quảng cáo và sự hài lòng của
khách hàng. Kết quả của họ có thể được nâng cao và dẫn đến các mục hoặc
đề xuất được cải thiện bằng cách sử dụng một mô hình đáng tin cậy.
• Khoa học Chính trị - Phát hiện cảm xúc của các chính trị gia trong các lần
xuất hiện hoặc phát biểu trước công chúng. II.
Mục tiêu đề tài.
- Xây dựng chương trình cơ sở nhận diện cảm xúc khuôn mặt
- Giúp ích được trong một số lĩnh vực như bao mật thông tin,truy tìm tội phạm,…. III. Phương pháp .
IV. Tổng quan về xử lí ảnh.
- Biến đối làm tăng chất lượng ảnh
- Tự động nhận dạng ảnh , đánh giá nội dung hình ảnh
- Kiểm tra và phân loại ảnh
- Nhận biết và đánh giá ảnh từ đó có thể phân tích những phần có í nghĩa có
thể phân biệt đối tượng này và đối tượng khác,từ đó áp dụng thực tiễn các
ứng dụng vào đời sống V.
Thiết kế và mô hình ứng dụng.
- Sử dụng mạng CNN để train mô hình nhận diện cảm xúc khuôn mặt.
- Mô hình được train hay quá trình nhận diện cảm xúc khuôn mặt diễn ra trong 3 giai đoạn:
• Nhận ảnh và tiền xử lí
• Trích xuất đặc trưng
• Phân lớp và nhận diện cảm xúc - Trong giai đoạn nhận ảnh và tiền xử lý:
• Đầu vào ở đây là có thể là ảnh chụp hoặc là các dataset
• Trải qua một số bước tiền xử lí để tang chất lượng hình ảnh để giúp cho
việc nhận diện cảm xúc trở nên hiệu quả hơn
- Trích xuất đặc trưng là bước gần như quan trọng nhất :
• Các bước đặc trưng khuôn mặt được tính toán trên các thuật toán có sẵn, kết
quả thường là vecter đặc trưng làm đầu vào cho các bước sau - Phân lớp và nhận diện cảm xúc:
• Đây là một bài toán điển hình có thể dung nhiều thuật toán để áp dụng cho nó
- Mô hình kiến trúc nhận dạng cảm xúc khuôn mặt : -
Hình 4.1. mô hình CNN kết hợp đặc trưng truyền thống cho hệ thống nhận dạng cảm xúc qua khuôn mặt
Hình 4.1 mô hình thiết kế của hệ thống nhận dạng cảm xúc qua khuôn mặt sử dụng
phương pháp CNN kết hợp với đặc trưng truyền thống. Đầu vào là hình ảnh có
kích thước 48x48 pixel và 1 chanels (ảnh xám) được lấy trong bộ dữ liệu dataset
FER2013, đầu ra của hệ thống là dự đoán cảm xúc của hình ảnh. Để thực hiện quá
trình có được đầu ra hệ thống cần thực hiện theo hai giai đoạn: tiền xử lý hình ảnh,
phân lớp sử dụng học sâu. Trong đó bước trích chọn đặc trưng được thực hiện một
cách không tường minh, ẩn bên trong giai đoạn phân lớp sử dụng học sâu, các giai
đoạn thực hiện một cách liền mạch không phân chia một cách quá cụ thể và rõ
ràng như phương pháp truyền thống. Hình 4.1 mô hình kiến trúc của phương pháp
CNN, đầu vào là hình ảnh có kích thước là 48x48, sau đó đồng thời thực hiện 2 việc song song:
• Ảnh đầu vào thực hiện đi qua phương pháp deep learning hiện đại. Trong
giai đoạn này, thực hiện đi qua các bước các tầng tích chập, tầng gộp, tầng
kết nối. Tạo ra tầng kết nối có kích thước 1024.
• Ảnh đầu vào kết hợp với các đặc trưng truyền thống (Face lanmarks + HoG
features). Đầu ra là tạo ra tầng kết nối có kích thước 1024. Cuối cùng, hai
công việc thực hiện song song gộp lại tạo thành tầng kết nối đầy đủ có kích
thước 256 và cho ra kết quả đầu ra là một trong 7 trạng thái cảm xúc. Mô
hình SVM thiết kế cho hệ thống nhận dạng cảm xúc qua khuôn mặt:
- Mô hình hóa bài toán :
Hình 4.2. Mô hình hóa bài toán
VI. Test và đưa ra kết quả .
- Thực hiến test trên mô hình ảnh đã chụp sẵn cho ra kết quả
VII. Kết luận và hướng phát triển .
- Mô hình nhận diện cảm xúc khuôn mặt đã được nghiên cứu khá lâu với độ
chính xác cũng tương đối chấp nhận . Dùng mô hình CNN để train theo
thống kê thì độ chính xác vẫn còn tương đối với khoảng 60% chính xác .
- Đây là một bài toán có thể áp dụng trên nhiều lĩnh vực và có thể áp dụng vào thực tế