TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

37 93 1
TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

Đ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

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG KHOA CÔNG NGHỆ ĐIỆN TỬ VÀ TRUYỀN THÔNG THỰC TẬP TỐT NGHIỆP Đề tài: TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB Họ tên sinh viên : VŨ TRÍ SÁNG Lớp : HTVT-K16B Họ tên giáo viên hướng dẫn : TH.S VŨ THÚY HẰNG Thái nguyên, năm 2021 MỤC LỤC DANH SÁCH HÌNH ẢNH LỜI MỞ ĐẦU CHƯƠNG I TÌM HIỂU VỀ MATLAB 1.1 Tổng quan Matlab 1.1.1 Tại chọn Matlab ? 1.1.2 Sơ lược lịch sử Matlab .3 1.1.3 Ngơn ngữ lập trình .5 1.1.4 Đă ̣c điểm của Matlab và các ứng dụng 1.1.5 Tổng quan cấu trúc liệu Matlab 1.1.6 Hệ thống MATLAB 1.1.7 Làm quen với MATLAB .7 1.2 Sử dụng MATLAB 1.3 Cơ ảnh số .10 1.3.1 Biểu diễn ảnh xuất nhập ảnh .10 1.3.2 Các loại hình ảnh MATLAB 10 CHƯƠNG II TÌM HIỂU VỀ NHẬN DIỆN KHN MẶT NGƯỜI 14 2.1 Tìm hiểu nhận diện khn mặt 14 2.1.1 Định nghĩa nhận dạng khuôn mặt người 14 2.1.2 Ứng dụng phương pháp nhận dạng khuôn mặt người 14 2.1.3 Phương pháp nhận dạng khuôn mặt người 15 2.2 Deep Learning Toolbox MATLAB 16 2.2.1 Deep Learning gì? 16 2.2.2 Ứng dụng Deep Learning 16 2.2.3 Điều làm cho Deep Learning trở thành đại nhất? 17 2.2.4 Bên mạng Deep Neural 17 2.2.5 Cách để học mạng Deep Neural? 18 2.2.6 Giới thiệu Mạng Neural phức hợp 19 2.2.7 Sự khác biệt Deep Learning Machine Learning 20 2.3 Nhận dạng khn mặt thuật tốn AlexNet 22 CHƯƠNG III MÔ PHỎNG PHƯƠNG PHÁP NHẬN DẠNG MẶT NGƯỜI BẰNG MATLAB .23 3.1 Các hàm chương trình Alexnet Network 23 3.2 Mô 27 3.2.1 Đưa hình ảnh để tạo liệu 27 3.2.2 Đào tạo .28 3.2.3 Thực nhận diện 29 3.2.4 Nhận xét 33 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 34 Kết luận 34 Hướng phát triển 34 TÀI LIỆU THAM KHẢO .35 DANH SÁCH HÌNH ẢNH Hình 1.0 Giao diện MATLAB Hình 1.1 Cửa sổ Command history .8 Hình 1.2 Cửa sổ Wordspace .9 Hình 1.3 Biểu diễn ảnh phương pháp số .10 Hình 1.4 Biểu diễn ảnh theo độ sáng 11 Hình 1.5 Ảnh nhị phân 11 Hình 1.6 Biểu diễn ảnh RGB 12 Hình 2.0 Ứng dụng Deep learning 15 Hình 2.1 Mạng Deep Neural .17 Hình 2.2 Sơ đồ học mạng Deep Neural .17 Hình 2.3 Đào tạo Deep Neural 18 Hình 2.4 Mạng Neural phức hợp .19 Hình 2.5 Machine Learning Deep Learning 20 Hình 2.6 Sơ đồ AlexNet 21 Hình 3.0 Đưa hình ảnh đối tương để tạo liệu .26 Hình 3.1 File lưu chữ liệu 26 Hình 3.2 Hình ảnh khn mặt đối tượng sau lưu vào sở liệu 27 HÌnh 3.3 Kết q trình Training 27 Hình 3.4 Kết nhận diện Nguyễn Anh T .28 Hình 3.5 Kết nhận diện Ngô Thị B 29 Hình 3.6 Kết nhận diện Vũ Trí Sáng 30 Hình 3.7 Thơng báo khơng có đối tượng nhận diện 31 LỜI MỞ ĐẦU Trong thời kì cơng nghê bùng nổ nay, khoa học kĩ thuật làm thay đổi sống người Máy tính thiết bị điện tử tác động sâu sắc tới giới chúng ta, khiến công việc người giải nhanh gọn hiệu cao Cùng với phát triển cơng nghệ khoa học máy tính , nhận dạng khuôn mặt mặt người dần xu giới công nghệ Khái niệm nhận dạng khuôn mặt người trở lên phổ biến với hầu hết cá nhân xã hội việc nhận dạng khuôn mặt người thiết bị cá nhân hay chuyên dụng áp dụng rộng rãi Tại thời điểm này, nhận dạng khuôn ,mặt người lĩnh vực quan tâm trở thành môn học chuyên ngành công nghệ nhiều trường Đại học Cao đẳng nước Với mong muốn tìn hiểu kiến thức lĩnh vực nhận dạng khn mặt người , em lấy đề tài tìm hiểu phương pháp nhận dạng khuôn mặt người MATLAB để thực đề tài thực tập tốt nghiệp Đối với sinh viên ngành Hệ Thống Viễn Thông em, nhận dạng khuôn mặt người dành quan tâm đặc biệt Nó tảng cung cấp chó chúng em kiến thức công nghê tiên tiến giới Vì vậy, việc thực đề tài thực tập chuyên ngàng “ tìm hiểu phương pháp nhận dạng khuôn mặt người mô MATLAB” hội tốt cho chúng em tìm hiểu vận dụng kiến thức vào thực tế, rèn luyện thân, tích lũy kiến thức Để thực đề tài thự tập tốt nghiệp này, em xin gửi lời cảm ơn chân thành tới Th.s Vũ Thúy Hằng dành thời gian hướng dẫn, giúp đỡ hỗ trợ tận tình tạo điều kiện tốt cho em để em hoàn thành đề tài cách tốt Em xin trân trọng cảm ơn ! CHƯƠNG I TÌM HIỂU VỀ MATLAB 1.1 Tổng quan Matlab Ngày nay, mà khoa học kĩ th ̣t và cơng nghệ ngày càng phát triển người ta càng nghĩ đến chuyện làm thế nào để đưa vấn đề ứng dụng vào thực tiễn Vì vâ ̣y, cần thiết phải xây dựng chương trình mơ phỏng cho vấn đề này Đồ án này xây dựng chương trình mơ phỏng bằng ngơn ngữ Matlab 1.1.1 Tại chọn Matlab ? Hiện nay, có nhiều ngơn ngữ lâ ̣p trình quan tâm và ứng dụng Các ngơn ngữ lâ ̣p trình Basic, Pascal, C, Java sử dụng rô ̣ng rãi nhiều lĩnh vực Trong số đó, Matlab là mô ̣t ngôn ngữ mạnh sử dụng rô ̣ng rãi nhiều lĩnh vực Matlab cho phép tính toán số với ma trâ ̣n, vẽ đồ thị hàm số hay biểu đồ thông tin, thực thuâ ̣t toán, tạo giao tiếp người dùng và liên kết với chương trình máy tính viết nhiều ngơn ngữ lâ ̣p trình khác Với thư viện Toolbox, Matlab cho phép mơ phỏng tính tốn, thực nghiệm nhiều mơ hình thực tế và kỹ th ̣t Chính ưu điểm đó mà báo cáo này, em qút định chọn ngơn ngữ lâ ̣p trình Matlab để mô phỏng phương pháp nâng cao chất lượng ảnh biến đổi mức xám 1.1.2 Sơ lược lịch sử Matlab Matlab viết tắt từ "MATrix LABoratory", được Cleve Moler phát minh vào cuối thập niên 1970, sau chủ nhiệm khoa máy tính tại Đại học New Mexico Ban đầu, MATLAB viết ngôn ngữ Fortran Cho đến 1980, nó là mô ̣t bô ̣ phâ ̣n dùng nô ̣i bô ̣ của Đại Học Standford Năm 1983, Jack Little đã viết lại MATLAB bằng ngôn ngữ C và nó xây dựng thêm thư viện phục vụ cho thiết kế hệ thông điều khiển, hệ thông Hô ̣p Công Cụ (Tool box), mô phỏng Jack xây dựng MATLAB trở thành mơ hình ngơn ngữ lâ ̣p trình sở ma trâ ̣n (matrix-based programming language) Steve Bangert là người đã thực trình thơng dịch cho MATLAB Cơng trình này tơn gần mơ ̣t năm rưỡi Sau này, Jack Little kết hợp với Moler và Steve Bangert quyết định đưa Matlab thành dự án thương mại - công ty The MathWorks đời thời gian này - năm 1984 Phiên đầu tiên MATLAB 1.0 đời năm 1984 viết bằng C cho MS-DOS PC phát hành đầu tiên IEEE Conference on Design and Control (hô ̣i nghị IEEE về thiết kế và Điều khiển) Las Vegas, bang Nevada Hoa Kì - Năm 1986, MATLAB đời đó hỗ trợ UNIX Năm 1987, MATLAB phát hành - - - Năm 1990 Simulink 1.0 phát hành chung với MATLAB Năm 1992 MATLAB thêm vào hỗ trợ 2-D và 3-D đồ họa màu và ma trâ ̣n truy tìm Năm này cung cho phát hành phiên MATLAB Student Edition (MATLAB ấn cho học sinh) Năm 1993 MATLAB cho MS Windows đời Đồng thời công ty này có WEB site là mathwork.com Năm 1995 MATLAB cho LINUX đời Trình dịch MATLAB có khả chuyển dịch từ ngôn ngữ MATLAB sang ngôn ngữ C cung phát hành dịp này Năm 1996 MATLAB bao gồm thêm kiểu liệu, phát triển hình ảnh hố, bơ ̣ truy sửa lỗi (debugger), và giao diện đồ họa GUI Năm 2002 MATLAB 6.5 phát hành, sử dụng phương pháp dịch JIT (Just in Time) và tái hỗ trợ MAC Năm 2004 MATLAB phát hành, có khả chính xác đơn và kiểu nguyên, hỗ trợ hàm lồng nhau, công cụ vẽ điểm, và phát triển thuâ ̣t toán tương tác Hiện nay, đã là phiên 14 với SP3 cải thiện Simulink với 75 sản phẩm khác Matlab dùng rô ̣ng rãi giáo dục, phổ biến lĩnh vực số tuyến tính và giải tích 1.1.3 Ngơn ngữ lập trình Ngơn ngữ lập trình dùng hệ tính tốn số có tên gọi là MATLAB Nó thuộc kiểu lập trình thủ tục (với số đặc điểm của lập trình hướng đối tượng mới bổ sung phiên gần 1.1.4 Đă ̣c điểm của Matlab và các ứng dụng Các ứng dụng tiêu biểu của MATLAB bao gồm: • Hỗ trợ tốn học và tính tốn • Phát triển th ̣t tốn • Mơ hình, mơ phỏng • Phân tích, khảo sát và hiển thị sơ liệu • Đồ họa khoa học và kỹ th ̣t • Phát triển ứng dụng với giao diện đồ họa Tên của phần mềm MATLAB bắt nguồn từ thuâ ̣t ngữ “Matrix Laboratory” Đầu tiên nó viết bằng FORTRAN để cung cấp truy nhâ ̣p dễ dàng tới phần mềm ma trâ ̣n phát triển dự án LINPACK và EISPACK Sau đó nó viết bằng ngôn ngữ C sở thư viện nêu và phát triển thêm nhiều lĩnh vực của tính toán khoa học và ứng dụng kỹ th ̣t Matlab là mơ ̣t mơi trường tính tốn số và lâ ̣p trình Matlab cho phép tính tốn số với ma trâ ̣n, vẽ đồ thị hàm số hay biểu đồ thơng tin, thực th ̣t tốn, tạo giao tiếp người dùng và liên kết với chương trình máy tính viết nhiều ngơn ngữ lâ ̣p trình khác Vì vâ ̣y, Matlab là mơ ̣t ngôn ngữ mạnh sử dụng rô ̣ng rãi nhiều lĩnh vực Nó dễ dàng sử dụng ngôn ngữ khác Basic, Pascal, C Phần mềm MATLAB trang bị thêm ToolBox – gói chương trình (thư viện) cho lĩnh vực ứng dụng đa dạng xử lí tín hiệu, nhâ ̣n dạng hệ thông, xử lí ảnh, mạng nơ ron, logic mờ, tài chính, ưu hóa, phương trình đạo hàm riêng, sinh tin học, Đây là tâ ̣p hợp mã nguồn viết bằng chính MATLAB dựa theo thuâ ̣t toán mới, hữu hiệu mà người dùng có thể chỉnh sửa hoă ̣c bổ sung thêm hàm Với thư viện Toolbox, Matlab cho phép mơ phỏng tính tốn, thực nghiệm nhiều mơ hình thực tế và kỹ thuâ ̣t MATLAB thiết kế để giải bài toán bằng số chứ khơng nhằm mục đích chính là tính tốn ký hiệu MATHEMATICA và MAPLE Tuy nhiên, MATLAB cung có thể tính toán ký hiệu nhờ hàm Symbolic Math ToolBox 1.1.5 Tổng quan cấu trúc liệu Matlab Matlab hệ thống tương giao, phần tử liệu mảng ( mảng khơng địi hỏi kích thước ) Chúng cho phép giải vấn đề liên quan đến lập trình máy tính, đặc biệt sử dụng phép tính ma trận hay vector sử dụng ngơn ngữ C học Fortran lập trình thực ứng dụng lập trình câu lệnh từ MATLAB MATLAB viết nhằm truy cập vào phần mềm ma trận cách dễ dàng, phần mềm phát triển cơng trình Linpack Eispack Ngày MATLAB phát triển lapack Artpack tạo nên nghệ thuật phần mềm cho ma trận • Dữ liệu Dữ liệu MATLAB thể dạng ma trận có kiểu liệu như: kiểu đơn single, kiểu double ( kiểu liệu thông dụng dùng MATLAB ), kiểu Sparse, kiểu int8, uint8, int16, kiểu char, kiểu cell • Ứng dụng MATLAB tạo thuận lợi cho việc giải toán phức tạp, MATLAB dùng để tính tốn nghiên cứu sản phẩm tốt sản xuất MATLAB cho phép bạn ứng dụng kĩ thuật để phân tích, thiết kế, mơ mơ hình 1.1.6 Hệ thống MATLAB Hệ thống MATLAB chia làm phần:  Mơi trường phát triển: Hình 2.3 Đào tạo Deep Neural Mỗi lớp mạng lấy liệu từ lớp trước, biến đổi chuyển sang Mạng làm tăng độ phức tạp chi tiết học từ lớp sang lớp khác Lưu ý mạng học trực tiếp từ liệu có, khơng ảnh hưởng đến tính học 2.2.6 Giới thiệu Mạng Neural phức hợp Mạng nơ-ron phức hợp (CNN ConvNet) thuật toán phổ biến để học sâu với hình ảnh video Giống mạng nơ-ron khác, CNN bao gồm lớp đầu vào, lớp đầu nhiều lớp ẩn  Lớp phát tính Các lớp thực ba loại hoạt động liệu: convolution, pooling, or rectified linear unit (ReLU) - Convolution đặt hình ảnh đầu vào thơng qua tập hợp chập lọc, lọc kích hoạt tính định từ hình ảnh Pooling đơn giản hóa đầu cách thực phi tuyến tính lấy mẫu xuống, giảm số lượng tham số mà mạng cần tìm hiểu Rectified linear unit (ReLU) cho phép nhanh hiệu đào tạo cách ánh xạ giá trị âm trì giá trị tích cực Hình 2.4 Mạng Neural phức hợp Ba hoạt động lặp lại hàng chục hàng trăm lớp, với lớp học để phát tính khác  Các lớp phân loại Sau phát tính năng, kiến trúc CNN chuyển sang phân loại 19 Lớp áp chóp lớp kết nối đầy đủ (FC) có kết đầu vectơ K thứ nguyên K số lớp mà mạng dự đốn Vectơ chứa xác suất cho lớp hình ảnh phân loại Lớp cuối kiến trúc CNN sử dụng hàm softmax để cung cấp phân loại đầu 2.2.7 Sự khác biệt Deep Learning Machine Learning  Deep Learning dạng phụ Machine learning Với máy học, bạn trích xuất thủ cơng tính có liên quan hình ảnh Với học sâu, bạn đưa trực tiếp hình ảnh thơ vào sâu mạng thần kinh tự động học tính năng.Học sâu thường địi hỏi hàng trăm nghìn hàng triệu hình ảnh để có kết tốt Nó chun sâu mặt tính tốn u cầu GPU hiệu suất cao  Machine learning (ML) hay máy học nhánh trí tuệ nhân tạo (AI), lĩnh vực nghiên cứu cho phép máy tính có khả cải thiện thân chúng dựa liệu mẫu (training data) dựa vào kinh nghiệm (những học) Machine learning tự dự đốn đưa định mà khơng cần lập trình cụ thể Bài tốn machine learning thường chia làm hai loại dự đoán (prediction) phân loại (classification) Các toán dự đoán dự đoán giá nhà, giá xe… Các toán phân loại nhận diện chữ viết tay, nhận diện đồ vật… Machine Learning Deep Learning + Hiệu với liệu nhỏ + Yêu cầu tập liệu lớn + Đào tạo nhanh chóng model + Tính tốn chun sâu + Cần thử tính phân loại khác để đạt kết tốt + Tìm hiểu tính phân loại tự động + Tính xác ổn định + Độ xác khơng giới hạn 20 Bảng 1.0 So sánh Machine Learning với Deep Learning Hình 2.5 Machine Learning Deep Learning 21 2.3 Nhận dạng khn mặt thuật tốn AlexNet Alexnet mạng nơ-ron cơng cụ Deep Learning Toolbox có MATLAB AlexNet mạng nơ-ron phức hợp có độ sâu lớp Mạng đào tạo trước phân loại hình ảnh thành 1000 loại đối tượng, chẳng hạn khn mặt người,bàn phím, chuột, bút chì nhiều động vật Kết là, mạng học cách biểu diễn tính phong phú cho nhiều loại hình ảnh Mạng có kích thước đầu vào hình ảnh 227 x 227 Mạng học biểu diễn tính phong phú cho nhiều loại hình ảnh. Mạng lấy hình ảnh làm đầu vào đầu nhãn cho đối tượng hình ảnh với xác suất cho loại đối tượng Học chuyển tiếp sử dụng phổ biến ứng dụng học sâu. Bạn lấy mạng đào tạo trước sử dụng điểm khởi đầu để học nhiệm vụ mới. Việc tinh chỉnh mạng cách học truyền thường nhanh dễ dàng nhiều so với việc đào tạo mạng với trọng số khởi tạo ngẫu nhiên từ đầu. Bạn nhanh chóng chuyển tính học sang nhiệm vụ cách sử dụng số lượng hình ảnh đào tạo nhỏ Hình 2.6 Sơ đồ AlexNet 22 CHƯƠNG III MÔ PHỎNG PHƯƠNG PHÁP NHẬN DẠNG MẶT NGƯỜI BẰNG MATLAB 3.1 Các hàm chương trình Alexnet Network  Tải liệu Giải nén tải hình ảnh dạng kho liệu hình ảnh. imageDatastoretự động gắn nhãn hình ảnh dựa tên thư mục lưu trữ liệu dạng một ImageDatastore đối tượng. Kho liệu hình ảnh cho phép bạn lưu trữ liệu hình ảnh lớn, bao gồm liệu không vừa nhớ đọc hiệu lơ hình ảnh q trình đào tạo mạng nơ-ron phức hợp Chia liệu thành tập liệu đào tạo xác nhận. Sử dụng 70% hình ảnh để đào tạo 30% để xác nhận. splitEachLabelchia imageskho liệu thành hai kho liệu Tập liệu nhỏ chứa 55 hình ảnh đào tạo 20 hình ảnh xác nhận. Hiển thị số hình ảnh mẫu  Tải mạng định sẵn Tải mạng nơ-ron AlexNet đào tạo trước. Nếu Mơ hình Deep Learning Toolbox cho Mạng AlexNet chưa cài đặt, phần mềm cung cấp liên kết tải xuống AlexNet đào tạo triệu hình ảnh phân loại hình ảnh thành 1000 loại đối tượng, chẳng hạn bàn phím, chuột, bút chì nhiều động 23 vật. Kết là, mơ hình học đại diện tính phong phú cho nhiều loại hình ảnh Sử dụng analyzeNetworkđể hiển thị trực quan tương tác kiến trúc mạng thông tin chi tiết lớp mạng Lớp đầu tiên, lớp đầu vào hình ảnh, u cầu hình ảnh đầu vào có kích thước 227-x 227-x 3, số kênh màu inputSize = × 227 227 Ba lớp cuối mạng netđược đào tạo trước cấu hình cho 1000 lớp. Ba lớp phải tinh chỉnh cho vấn đề phân loại mới. Trích xuất tất lớp, ngoại trừ ba lớp cuối cùng, từ mạng đào tạo trước Chuyển lớp sang nhiệm vụ phân loại cách thay ba lớp cuối lớp kết nối đầy đủ, lớp softmax lớp đầu phân loại. Chỉ định tùy chọn lớp kết nối đầy đủ theo liệu mới. Đặt lớp kết nối đầy đủ có kích thước với số lớp liệu mới. Để học nhanh lớp so với lớp chuyển, tăng các giá trị WeightLearnRateFactorvà BiasLearnRateFactorgiá trị lớp kết nối đầy đủ numClasses =  Mạng đào tạo Mạng u cầu hình ảnh đầu vào có kích thước 227-x-227-x-3, hình ảnh kho liệu hình ảnh có kích thước khác nhau. Sử dụng kho liệu hình ảnh tăng cường để tự động thay đổi kích thước hình ảnh đào tạo. Chỉ định hoạt động 24 tăng cường bổ sung để thực hình ảnh đào tạo: lật ngẫu nhiên hình ảnh đào tạo dọc theo trục tung dịch ngẫu nhiên chúng lên đến 30 pixel theo chiều ngang chiều dọc. Tăng cường liệu giúp ngăn mạng trang bị mức ghi nhớ chi tiết xác hình ảnh đào tạo Để tự động thay đổi kích thước hình ảnh xác thực mà khơng cần thực thêm liệu, sử dụng kho liệu hình ảnh tăng cường mà không định hoạt động tiền xử lý bổ sung Chỉ định tùy chọn đào tạo. Đối với việc học chuyển giao, giữ nguyên tính từ lớp mạng đào tạo trước (trọng số lớp chuyển). Để làm chậm việc học lớp chuyển, đặt tốc độ học ban đầu thành giá trị nhỏ. Trong bước trước, bạn tăng hệ số tốc độ học cho lớp kết nối đầy đủ để tăng tốc độ học lớp cuối mới. Sự kết hợp cài đặt tốc độ học tập dẫn đến việc học nhanh lớp học chậm lớp khác. Khi thực học chuyển tiếp, bạn không cần phải đào tạo nhiều kỷ nguyên. Kỷ nguyên chu kỳ đào tạo đầy đủ toàn tập liệu đào tạo. Chỉ định kích thước lơ nhỏ liệu xác thực. Phần mềm xác nhận mạng mỗi ValidationFrequencylần lặp lại trình đào tạo Huấn luyện mạng bao gồm lớp chuyển lớp mới. Theo mặc định , TrainNetwork sử dụng GPU có sẵn, khơng, sử dụng CPU. Đào tạo GPU u cầu Hộp cơng cụ tính tốn song song thiết bị GPU hỗ trợ. Bạn định mơi trường thực thi cách sử dụng 'ExecutionEnvironment' đối số cặp tên-giá trị của trainingOptions 25  Phân loại hình ảnh xác thực Phân loại hình ảnh xác nhận cách sử dụng mạng tinh chỉnh Hiển thị bốn hình ảnh xác thực mẫu với nhãn dự đốn chúng Tính tốn độ xác phân loại tập xác nhận. Độ xác phần nhãn mà mạng dự đốn xác 3.2 Mơ 3.2.1 Đưa hình ảnh để tạo liệu Đưa hình ảnh có khn mặt đối tượng cần nhận diện vào trước camera để thực phát hiện, chụp lưu lại thành ảnh liệu 26 Hình ảnh khuôn mặt đối tượng chụp lại Các file ảnh chụp hiển thị Hình 3.0 Đưa hình ảnh đối tương để tạo liệu Hình ảnh sau nhận diện khuôn mặt đối tượng lưu lại 150 ảnh khuôn mặt để làm liệu cho trình Training Hình 3.1 File lưu chữ liệu File chứa ảnh dự liệu chụp Dự liệu lưu vào thư mục có tên đối tượng tạo từ trước Hình 3.2 Hình ảnh khn mặt đối tượng sau lưu vào sở liệu Hình ảnh lưu lại theo thứ tự từ đến 149 định dạng “.bmp” 3.2.2 Đào tạo Quá trình đào tạo thực qua mạng Deep Learning AlexNet, với việc lấy liệu file database có sẵn bước trước 27 File myNet1.mat tạo sau Trainning HÌnh 3.3 Kết q trình Training Quá trình đào tạo kết thúc thu file MyNet1.mat (tên thay đối theo ý người dùng) MyNet1.mat file tạo sau trình học sâu mạng nơ-ron nhiều lớp để nhận biết đặc điểm khuôn mặt đối tượng 3.2.3 Thực nhận diện Khi ta đối tương hình ảnh đối tượng xuất trước camera tên đối tượng xuất phía khung hình Tên đối tượng Hình 3.4 Kết nhận diện Nguyễn Anh T 28 Tên đối tượng Hình 3.5 Kết nhận diện Ngơ Thị B 29 Tên đối tượng Hình 3.6 Kết nhận diện Vũ Trí Sáng Khi khơng có đối tượng xuất khung hình thơng báo “KHONGCO DOI TUONG DE NHAN DIEN” 30 Thông báo đối tượng Hình 3.7 Thơng báo khơng có đối tượng nhận diện 3.2.4 Nhận xét Theo kết phía thấy việc mơ thực thành cơng, đưa hình ảnh đối tượng thấy thuật tốn nhận dạng khuôn mặt đối tượng, phương pháp nhận dạng khuôn mặt người phát triển phổ cập rộng dãi tương lai Đây cơng nghệ hữu ích 31 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận Công nghệ thông tin thay đổi giới cách mạnh mẽ,sự chuyển đổi có vị lịch sử nhân loại, cách mạng kinh tế - xã hội có ảnh hưởng to lớn đến đời sống người Đối với xử lý ảnh số , việc sử dụng tiến khoa học kỹ thuật công nghệ chở thành hình thức phổ biến có tác dụng hỗ trợ cho công việc thiết kế chỉnh sửa khôi phục ảnh số Việc xử nhận dạng khuôn mặt phục vụ nhiều mục đích sống người Qua việc thực thành cơng đề tài “Tìm hiểu phương pháp nhận diện khuôn mặt người MATLAB” phương pháp xử lý ảnh số khác giúp em tiếp thu kiến thức kỹ thuật quan trọng, đại bổ ích kỹ thuật nhận dạng khuôn mặt người áp dụng Hướng phát triển Trong thời gian tới hướng phát triển em đề tài nâng cấp lên thành chương trình hoạt động máy tính cải thiện điểm như: o Nhận dạng nhiều người thời điểm o Dao diện ưa nhìn dễ sử dụng o Tăng độ xác o Tăng độ phân giải hình ảnh o Giảm dung lượng data base Ngồi kết hợp tính khác đo thân nhiệt, cảm xúc người hướng đem đến đa cho sản phẩm 32 TÀI LIỆU THAM KHẢO Rafael C Gonzalez Richard E Woods Digital Image Processing Using MATLAB, 2006 THS Đỗ Huy Khôi, “MATLAB Ứng dụng” Trường ĐH CNTT Truyền thông năm 2019 https://www.mathworks.com/help/deeplearning/ref/alexnet.html https://www.mathworks.com/help/deeplearning/ug/deep-learningin-matlab.html https://www.mathworks.com/content/dam/mathworks/ebook/gated/ 80879v00_Deep_Learning_ebook.pdf 33 ... Năm 1992 MATLAB thêm vào hỗ trợ 2-D và 3-D đồ họa màu và ma trâ ̣n truy tìm Năm này cung cho phát hành phiên MATLAB Student Edition (MATLAB ấn cho học sinh) Năm 1993 MATLAB cho MS Windows... ̣c điểm của Matlab và các ứng dụng 1.1.5 Tổng quan cấu trúc liệu Matlab 1.1.6 Hệ thống MATLAB 1.1.7 Làm quen với MATLAB .7 1.2 Sử dụng MATLAB 1.3... chương trình mơ phỏng cho vấn đề này Đồ án này xây dựng chương trình mơ phỏng bằng ngôn ngữ Matlab 1.1.1 Tại chọn Matlab ? Hiện nay, có nhiều ngôn ngữ lâ ̣p trình quan tâm và ứng dụng

Ngày đăng: 10/10/2021, 07:18

Hình ảnh liên quan

Bảng 1.0. So sánh Machine Learning với Deep Learning. - TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

Bảng 1.0..

So sánh Machine Learning với Deep Learning Xem tại trang 25 của tài liệu.
3.2.1. Đưa hình ảnh để tạo dữ liệu - TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

3.2.1..

Đưa hình ảnh để tạo dữ liệu Xem tại trang 30 của tài liệu.
 Phân loại hình ảnh xác thực - TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

h.

ân loại hình ảnh xác thực Xem tại trang 30 của tài liệu.
File chứa ảnh dự liệu được chụp - TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

ile.

chứa ảnh dự liệu được chụp Xem tại trang 31 của tài liệu.
Hình ảnh khuôn mặt đối tượng  được chụp lại Các file ảnh đã chụp  - TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

nh.

ảnh khuôn mặt đối tượng được chụp lại Các file ảnh đã chụp Xem tại trang 31 của tài liệu.
3.2.3. Thực hiện nhận diện - TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

3.2.3..

Thực hiện nhận diện Xem tại trang 32 của tài liệu.
HÌnh 3.3. Kết quả quá trình Training - TÌM HIỂU PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI VÀ MÔ PHỎNG TRÊN MATLAB

nh.

3.3. Kết quả quá trình Training Xem tại trang 32 của tài liệu.

Mục lục

  • DANH SÁCH HÌNH ẢNH

  • CHƯƠNG I. TÌM HIỂU VỀ MATLAB

    • 1.1. Tổng quan về Matlab

      • 1.1.1. Tại sao chọn Matlab ?

      • 1.1.2. Sơ lược lịch sử Matlab

      • 1.1.3. Ngôn ngữ lập trình

      • 1.1.4. Đặc điểm của Matlab và các ứng dụng

      • 1.1.5. Tổng quan về cấu trúc dữ liệu của Matlab

      • 1.1.7. Làm quen với MATLAB

      • 1.3. Cơ bản về ảnh số

        • 1.3.1. Biểu diễn ảnh và xuất nhập ảnh

        • 1.3.2. Các loại hình ảnh trong MATLAB

        • CHƯƠNG II. TÌM HIỂU VỀ NHẬN DIỆN KHUÔN MẶT NGƯỜI

          • 2.1. Tìm hiểu về nhận diện khuôn mặt

            • 2.1.1. Định nghĩa nhận dạng khuôn mặt người

            • 2.1.2. Ứng dụng của phương pháp nhận dạng khuôn mặt người

            • 2.1.3. Phương pháp nhận dạng khuôn mặt người

            • 2.2. Deep Learning Toolbox trong MATLAB

              • 2.2.1. Deep Learning là gì?

              • 2.2.2. Ứng dụng của Deep Learning

              • 2.2.3. Điều gì làm cho Deep Learning trở thành hiện đại nhất?

              • 2.2.4. Bên trong một mạng Deep Neural

              • 2.2.5. Cách để học của một mạng Deep Neural?

              • 2.2.6. Giới thiệu về Mạng Neural phức hợp

              • 2.2.7. Sự khác biệt Deep Learning và Machine Learning

              • 3.2. Mô phỏng.

                • 3.2.1. Đưa hình ảnh để tạo dữ liệu

Tài liệu cùng người dùng

Tài liệu liên quan