1. Trang chủ
  2. » Công Nghệ Thông Tin

Khóa Luận Hệ thống nhận dạng cảm xúc gương mặt RealTime Cython, Python. emotionrecognition

101 113 0

Đ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

Phát hiện cảm xúc khuôn mặt là bước phát triển tiếp sau của việc phát hiện khuôn mặt, phân chia cảm xúc khuôn mặt thành 7 nhóm thể hiện chính: Vui vẻ, Ngạc nhiên, Hài lòng, Buồn bực, Cáu giận, Phẫn nộ và Sợ hãi

ĐẠI HỌC THĂNG LONG Khoa Tốn - Tin Khóa Luận Ứng dụng kỹ thuật nhận dạng cảm xúc qua khuôn mặt Sinh viên thực hiện: Khoa: Trần Văn Hùng Ngành học: Giáo viên hướng dẫn: Toán Ứng Dụng TS Nguyễn Cơng Điều HÀ NỘI - 2022 Tốn – Tin K29 51 89/176-05 GD-05 Mã số: 9110 Lời nói đầu Lời đầu tiên, em xin gửi lời cảm ơn chân thành tới tồn thể thầy giáo Khoa Tốn Tin thầy giảng dạy trường Đại học Thăng Long truyền đạt kiến thức quý báu bổ ích cho em năm học vừa qua Đặc biệt, em xin gửi lời cảm ơn chân thành sâu sắc tới thầy – Nguyễn Cơng Điều, giảng viên khoa Tốn Tin, Đại học Thăng Long Thời gian qua nhờ vào hướng dẫn tận tình động viên, giúp đỡ ân cần từ thầy mà em có thành xây dựng hồn thiện Khố luận tốt nghiệp ngày hôm Em xin gửi lời cảm ơn tới anh, chị bạn khoa Tốn - Tin Đại học Thăng Long ln giúp đỡ, chia sẻ kinh nghiệm dẫn cho em suốt trình học trình thực khóa luận Tuy nhiên, lực cịn hạn chế nên em phát huy hết ý tưởng, khả hỗ trợ ngôn ngữ với giúp đỡ nhiệt tình người vào đề tài Trong q trình xây dựng khóa luận, khơng thể tránh khỏi sai sót, mong nhận đóng góp cảm thơng q thầy bạn Mọi đóng góp xin gửi địa email : tranhungtm98@gmail.com Một lần xin chân thành cám ơn Sinh viên trình bày: Trần Văn Hùng Lớp : Toán Tin K29 Giới thiệu chung Trong vài năm gần đây, với phát triển khoa học công nghệ, tương tác người máy trở thành lĩnh vực bật nhằm cung cấp cho người khả phục vụ máy móc Điều bắt nguồn từ khả máy móc tương tác với người Máy móc cần kỹ để trao đổi thông tin với người kỹ khả hiểu cảm xúc Cách tốt để người biểu thị cảm xúc qua khn mặt Bài tồn nhận dạng cảm xúc khuôn mặt bắt đầu nghiên cứu từ năm 1970 kết đạt đến nhiều hạn chế Hiện nay, nhận dạng phân tích cảm xúc khn mặt tự động vấn đề thú vị đầy thách thức, có ảnh hưởng to lớn đến xã hội Cảm xúc khuôn mặt hành động phương tiện giao tiếp phi ngôn ngữ, bao gồm 93% cảm xúc giao tiếp người, 55% thể cử khuôn mặt hành động người Cảm xúc khn mặt phân tích dễ dàng thơng qua hình ảnh khn mặt máy tính tương tác với người, cách người tương tác với Các nhà nghiên cứu cảm xúc khuôn mặt phổ quát bẩm sinh tất chủng tộc, giới tính độ tuổi Thêm cảm xúc trung tính có bảy cảm xúc bản, gồm: trung tính, giận dữ, ghê tởm, sợ hãi, hạnh phúc, buồn bất ngờ Mục tiêu nhiệm vụ Xây dựng hệ thống nhận diện cảm xúc khuôn mặt cách sử dụng webcam, ngơn ngữ lập trình python để lấy liệu phân tích Mơ hình nhận diện cảm xúc khuôn mặt người, lưu trữ trạng thái cảm xúc ảnh, từ tạo dataset khiến mơ hình ngày tốt Bài tốn nhận diện cảm xúc chia nhỏ thành tốn là: • Facial Detection — Tìm vị trí gương mặt có ảnh frame video • Emotion Detection — Xác định nhãn gương mặt vừa tìm kiếm theo cảm xúc như: happy, angry, sad, neutral, surprise, disgust or fear Với mục đích trên, mục tiêu nhiệm vụ luận văn xác định sau: • Tìm hiểu, nghiên cứu nguyên lý sở lý thuyết đề tài • Tìm hiểu mơ hình tốn bước thực để xây dựng hệ thống nhận dạng khn mặt người • Tìm hiểu, nắm công nghệ áp dụng cho bước có hệ thống • Hiểu rõ lý thuyết tốn học tính chất đặc trưng kỹ thuật sử dụng để giải toán khn khổ khóa luận Tìm hiểu sử dụng cơng cụ hữu ích nhằm phục vụ cho tốn nhận dạng mặt người q trình xây dựng hệ thống: OpenCV, Tensorflow • Tiến hành thực nghiệm chương trình đánh giá kết đạt • Đúc kết kinh nghiệm qua trình nghiên cứu đề xuất phát triển tương lai Ngoài sở liệu chuẩn Fer2013 công bố địa trang web https://www.kaggle.com/c/challenges-in-representation-learning-facialexpression-recognition-challenge/data, em tiến hành xây dựng liệu thực tế khuôn mặt người Việt Nam nhằm phục vụ cho chương trình thực nghiệm Từ khóa: Facial Expression Recognition, Principal Component Analysis, Neural Network, Decision Tree, Weka Đối tượng phạm vi nghiên cứu Phạm vi nghiên cứu: Nhận dạng cảm xúc: buồn, hạnh phúc, giận dữ, ngạc nhiên, ghê tởm bình thường Tìm hiểu tài liệu, đồ án trước • Xử lý ảnh đầu vào từ camera từ thư mục có sẵn • Kết nối cài đặt nguồn thư viện cho khóa luận ngơn ngữ lập trình python • Xây dựng hệ thống nhận dạng cảm xúc khn mặt • Lắp ráp khối điều khiển vào mơ hình • Lập trình viết code cho ứng dụng máy tính cá nhân • Chạy thử điều chỉnh mơ hình • Đánh giá kết thực • Viết báo cáo Kết dự kiến Chương trình (ở mức thử nghiệm) nhận dạng mặt người liệu chuẩn Challenges in Representation Learning: Facial Expression Recognition Challenge (Fer2013) đạt 70%.Thử nghiệm chương trình liệu thực tế (Vietnamese database) khả nhận dạng đạt 70% - 80% Bố cục khóa luận Bố cục luận văn gồm có chương chính: • Lời mở đầu: Giới thiệu khái niệm mục tiêu tốn • Bố cục chính: Tập trung giải toán đặt – Chương Cơ sở lý thuyết: giới thiệu tổng quát khái niệm học máy bước cần thực toán nhận dạng Bên cạnh việc giới thiệu kỹ thuật liên quan phổ biến, đối tượng phạm vi nghiên cứu định nghĩa, trình bày chi tiết chương – Chương Lựa chọn phương pháp nhận diện cảm xúc Tập trung trình bày đặc trưng mơ hình CNN mơ hình cổ điển SVM Các lý thuyết toán, lập luận phân tích trình bày rõ bước thực Đặc điểm tính chất hai kỹ thuật phân tích chương – Chương Triển khai hệ thống dựa theo Haar CNN Xây dựng demo chương trình nhận dạng khn mặt, phạm vi luận văn liệu chuẩn Multiple Biometric Grand Challenge Database (MBGC) liệu sinh viên tự thu thập sử dụng Ngồi khả hiệu hệ thống so sánh, đánh giá với phương pháp khác • Kết luận định hướng phát triển: Đánh giá tổng quan kết thu hướng phát triển Một số khái niệm Thuật ngữ Convolutional Neural Network CNN Conditional Random Fields - CRF Support Vector Machine - SVM Back propagation algorithm Cross validation Input/hidden/output layer Mean squared error Validation set Unsupervised learning Artificial Intelligence - AI Autoregression - AR Auto Scaling - AS National Institute of Standards and Technology - NIST Processing Element - PE Physical Machine - PM Processor Sharing - PS Quality Of Service - QoS Random Access Menmory - RAM Random choice - RC Service Level Agreement - SLA Service Level Objective - SLO Space-shared - SS Time-shared - TS Upper Threshold - UT Virtual Machine - VM Giải nghĩa Mạng nơ ron tích chập Trường điều kiện ngẫu nhiên Máy vectơ hỗ trợ Thuật toán lan truyền ngược sai số Một cách chọn mẫu tập train tập test để tránh tượng overfitting Lớp đầu vào/ẩn/ đầu Sai số bình phương trung bình Tập mẫu xác nhận mạng Học khơng có giám sát Trí tuệ nhân tạo Tự hồi quy Tự động điều chỉnh Viện nghiên cứu tiêu chuẩn công nghệ quốc gia Hoa Kỳ Phần tử xử lý Máy chủ vật lý Chia sẻ xử lý Chất lượng dịch vụ Bộ nhớ truy xuất ngẫu nhiên Chọn ngẫu nhiên Thỏa thuận mức dịch vụ Mục tiêu mức dịch vụ Chính sách chia sẻ khơng gian Chính sách chia sẻ thời gian Ngưỡng Máy ảo MỤC LỤC Mục lục Chương Cơ sở lý thuyết 1.1 Cảm xúc biểu khuôn mặt 1.1.1 Hạnh phúc - Happy 1.1.2 Buồn bã - Sad 1.1.3 Ngạc nhiên 1.1.4 Nỗi sợ 1.1.5 Giận 1.1.6 Chán ghét 1.2 Học máy 1.2.1 Môt số khái niệm 1.2.2 Học sâu - Deep learning 1.2.3 Mối liên kết giữ CNN thị giác 1.2.4 Pooling Layer 1.2.5 Machine learning Workflow 1.2.6 Khái niệm dataset - tập liệu 1.2.7 Ensemble Methods 1.2.8 Hiện tượng underfitting, overfitting 1.2.9 Phương pháp đánh giá mơ hình 1.3 Phương pháp nhận diện khuôn mặt với Haar Cascades 1.3.1 Giới thiệu thuật toán Viola Jones 1.3.2 Haar like 1.3.3 Hình ảnh tích phân 1.3.4 AdaBoost 1.4 Toán học 1.4.1 Ma trận, cụ thể ma trận chuyển vị, ma trận nghịch đảo 1.4.2 Xác suất thống kê: khái niệm bản, xác suất độc lập, xác suất có điều kiện, định lý Bayes 1.4.3 Norms-chuẩn 1.4.4 Đạo hàm hàm nhiều biến 1.5 Ngơn ngữ lập trình 1.5.1 Python 1.5.2 Thư viện hỗ trợ 1.5.3 Công cụ hỗ trợ 1.6 Tổng kết 12 12 12 13 14 15 16 17 18 20 21 23 30 32 32 33 34 36 39 39 40 41 42 44 44 47 49 50 51 51 53 55 58 MỤC LỤC Chương Lựa chọn phương pháp nhận diện cảm xúc 2.1 Mô tả liệu đầu vào 2.2 Phương pháp truyền thống - SVM 2.2.1 Ví dụ với toán phân chia hai classes 2.3 Phương pháp đại - CNN 2.3.1 Depthwise Separable Convolution 2.3.2 Pointwise Convolution 2.3.3 Môi trường phát triển 2.4 Tiến hanh traning 2.4.1 Tiền xử lý liệu 2.4.2 Phân loại 2.5 Tiến hành thực nghiệm 2.6 Kết 2.7 Đề xuất cải tiến 2.7.1 Đa luồng xử lý 2.7.2 Gán nhãn liệu ảnh bán tự động 2.7.3 Xử lý ảnh bị mờ xử lý video 59 59 60 60 63 64 65 67 67 69 71 71 73 74 78 82 85 88 88 89 90 93 Chương Triển khai 3.1 Chuẩn bị mơi trường 3.2 Dự đốn cảm xúc với 3.3 Dự đoán cảm xúc với 3.4 Kết ảnh video DANH SÁCH HÌNH VẼ Danh sách hình vẽ 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 Biểu hiện/cảm xúc khuôn mặt: Hạnh phúc Biểu hiện/cảm xúc khuôn mặt: Buồn bã Biểu hiện/cảm xúc khuôn mặt: Ngạc nhiên Biểu hiện/cảm xúc khuôn mặt: Nỗi sợ Biểu hiện/cảm xúc khuôn mặt: Giận Biểu hiện/cảm xúc khuôn mặt: Chán ghét Sơ đồ quy trình Supervised Learning Sơ đồ quy trình Unsupervised Learning Khái niệm học tăng cường Mối liên kết CNN thị giác Nơ tả hình ảnh với ma trận RGB Cấu trúc CNN Cấu trúc Covolution layer Cấu trúc High level feature Cấu trúc High level feature ex Cấu trúc cnn filter size Mô tả cnn strides Mô tả cnn padding Minh họa cnn relu Mô tả cnn pooling layer Sơ đồ quy trình để làm việc với machine learning Hiện tượng Overfitting Hiện tượng Underfitting Hiện tượng GoodFittiing Minh họa ma trận nhầm lẫn Minh họa sliding window mô tả Haar Minh hoạ hình ảnh tích phân Kỹ thuật tính tổng vùng để tính tốn đối tượng địa lý khoảng thời gian không đổi Sơ đồ Adaboost Cải tiến AdaBoost Thuật toán Adaboost Giới thiệu Python 13 14 15 16 16 17 19 19 20 23 24 24 25 26 27 28 28 29 29 30 32 34 35 35 37 40 41 41 42 43 43 44 52

Ngày đăng: 26/11/2023, 09:50

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w