1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề tài nhận diện khuôn mặt bằng thuật toán pca (principal component analysis)

14 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Nhận Diện Khuôn Mặt Bằng Thuật Toán PCA (Principal Component Analysis)
Tác giả Võ Thành Được, Thái Nhật Thiên, Đỗ Minh Nhật, Ngô Văn Minh, Bùi Đăng Khoa
Người hướng dẫn Trần Nguyên Bảo
Trường học Học Viện Hàng Không Việt Nam
Chuyên ngành Xử Lý Ảnh Và Thị Giác Máy Tính
Thể loại Báo Cáo Tiến Độ Tiểu Luận
Năm xuất bản 2023 - 2024
Thành phố TP. HCM
Định dạng
Số trang 14
Dung lượng 1,06 MB

Nội dung

Giới thiệu về PCA PCA là thuật toán tìm một không gian mới với số chiều nhỏ hơn không gian cũ, các trục tọa độ trong không gian mới được xây dựng sao cho trên mỗi trục, độ biến thiên củ

Trang 1

HỌC VIỆN HÀNG KHÔNG VIỆT NAM

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO TIẾN ĐỘ TIỂU LUẬN

XỬ LÝ ẢNH VÀ THỊ GIÁC MÁY TÍNH

TÊN ĐỀ TÀI:

NHẬN DIỆN KHUÔN MẶT BẰNG THUẬT TOÁN PCA (Principal Component Analysis)

HỌC KỲ 2 – NĂM HỌC: 2023 – 2024

MÃ LỚP HỌC PHẦN: 010100086902 GIẢNG VIÊN: Trần Nguyên Bảo

Nhóm sinh viên thực hiện: Võ Thành Được

Thái Nhật Thiên

Đỗ Minh Nhật Ngô Văn Minh

Bùi Đăng Khoa

TP HCM, tháng 2 năm 2024

PHẦN 1 CƠ SỞ LÝ THUYẾT

Trang 2

I Giới thiệu đề tài

Trong thời đại số hóa ngày nay, cùng với sự phát triển của xã hội, vấn đề an ninh, bảo mật đang được yêu cầu khắt khe tại mọi quốc gia trên thế giới Các hệ thống nhận dạng người, đồ vật,… được ra đời và phát triển ngày càng mạnh với độ tin cậy cao Từ những ứng dụng phổ biến như mở khóa điện thoại di động cho đến việc giám sát an ninh tại các cơ sở công cộng, nhận diện khuôn mặt đang trở thành một phần không thể thiếu của cuộc sống ngày nay Với cách tiếp cận đối tượng nhận diện theo phương pháp này, chúng ta có thể thu nhận được nhiều thông tin từ đối tượng hơn,

mà không cần tác động nhiều đến đối tượng cũng vẫn đảm bảo tính chính xác, an toàn và thuận tiện

Hiện nay có rất nhiều phương pháp khác nhau để nhận diện khuôn mặt của một người như phương pháp học máy và học sâu Tuy nhiên hai phương pháp này có nhược điểm khá lớn khi yêu cầu xây dựng một tập cơ sở dữ liệu lớn và đồng thời đòi hỏi việc tính toán, xử lý dữ liệu phải nhanh và chính xác Do đó hai phương pháp này

sẽ tốn rất nhiều thời gian và không đáp ứng được nhu cầu của khách hàng Vậy nhiệm

vụ đặt ra là nghiên cứu và xây dựng một phương pháp nhận diện khuôn mặt vừa có

độ chính xác cao mà còn khối lượng và thời gian tính toán lại ít

Để giải quyết vấn đề trên nhóm chúng em thông qua quá trình tìm hiểu và nghiên cứu xin đề xuất ra phương pháp nhận diện diện khuôn mặt bằng thuật toán PCA (Principal Component Analysis) Phương pháp PCA có đặc điểm giảm bớt số thành phần không cần thiết tạo ra hiệu quả tính toán nhanh mà vẫn đảm bảo được độ chính xác cao

Trang 3

Do đó nhóm chúng em đã chọn đề tài “Nhận diện diện khuôn mặt bằng thuật toán PCA (Principal Component Analysis)” trên công cụ Matlab để nghiên cứu nhằm mục đích tìm hiểu bài toán nhận diện khuôn mặt, từ đó làm tiền đề có thể phát triển đề tài theo hướng xây dựng các hệ thống ứng dụng trong thực tiễn như: điểm danh, giám sát người ra vào, mở khóa điện thoại di động, an ninh tại các nơi công cộng,…

II Cơ sở lý thuyết

1 Thuật toán PCA (Principal Component Analysis)

1.1 Giới thiệu về PCA

PCA là thuật toán tìm một không gian mới (với số chiều nhỏ hơn không gian cũ), các trục tọa độ trong không gian mới được xây dựng sao cho trên mỗi trục, độ biến thiên của dữ liệu trên đó là lớn nhất có thể

Ví dụ minh họa:

Hình 1.1 Không gian mới trong PCA

1.2 Khái niệm

Phân tích thành phần chính là một phương pháp được sử dụng thường xuyên khi các nhà phân tích thống kê phải đối mặt với những bộ số liệu với số chiều lớn

(bigdata) để giảm thiểu chiều dữ liệu mà vẫn không mất đi thông tin và giữ lại được những thông tin cần thiết cho việc xây dựng các mô hình bằng một thuật toán thống

Trang 4

kê sử dụng phép biến đổi trực giao để biến đổi một tập hợp dữ liệu từ một không gian nhiều chiều sang một không gian mới ít chiều hơn (2 hoặc 3 chiều) nhằm tối ưu hóa việc thể hiện sự biến thiên của dữ liệu

1.3 Đặc tính

- Giúp giảm số chiều của dữ liệu

- Thay vì giữ lại các trục toa độ của không gian cũ, PCA xây dựng một không gian mới ít chiều hơn, nhưng lại có khả năng biểu diễn dữ liệu tốt tương đương không gian cũ, nghĩa là đảm báo độ biến thiên (variability) của dữ liệu trên mỗi chiều mới

- Các trục tọa độ trong không gian mới là tổ hợp tuyến tính của không gian cũ, do

đó về mặt ngữ nghĩa, PCA xây dụng đặc trưng mới dựa trên các đặc trưng đã quan sát được Điểm hay là những đặc trưng này vẫn biểu diễn tốt dữ liệu ban đầu

- Trong không gian mới, các liên kết tiềm ẩn của dữ liệu có thể được khám phá, mà nếu đặt trong không gian cũ thì khó phát hiện hơn, hoặc những liên kết như thế không thể hiện rõ

1.4 Cơ sở toán học

a) Kỳ vọng (mean): Là giá trị mong muốn, nó đơn giản là trung bình cộng của toàn

bộ các giá trị Cho N giá trị x1, x2,…, xn:

b) Phương sai (variance)

Là trung bình cộng của bình phương khoảng cách từ mỗi điểm tới kỳ vọng, phương sai càng nhỏ thì các điểm dữ liệu càng gần với kỳ vọng, tức các điểm dữ liệu càng giống nhau Phương sai càng lớn thì ta nói dữ liệu càng có tính phân tán

Trang 5

c) Hiệp phương sai (covariance)

Là độ đo sự biến thiên cùng nhau của hai biến ngẫu nhiên (phân biệt với phương sai – đo mức độ biến thiên của một biến) Nếu 2 biến có xu hướng thay đổi cùng nhau (nghĩa là, khi một biến có giá trị cao hơn giá trị kỳ vọng thì biến kia có xu hướng cũng cao hơn giá trị kỳ vọng), thì hiệp phương sai giữa hai biến này có giá trị dương Mặt khác, nếu một biến nằm trên giá trị kỳ vọng còn biến kia có xu hướng nằm dưới giá trị kỳ vọng, thì hiệp phương sai của hai biến này có giá trị âm Nếu hai biến này độc lập với nhau thì giá trị bằng 0

d) Ma trận hiệp phương sai

Cho N điểm dữ liệu được biểu diễn bởi các vector cột x1, x2,…, xn , khi đó, vector kỳ vọng và ma trận hiệp phương sai của toàn bộ dữ liệu được định nghĩa là:

Ma trận hiệp phương sai là một ma trận đối xứng, hơn nữa, nó là một ma trận nửa xác định dương

Mọi phần tử trên đường chéo của ma trận hiệp phương sai là các số không âm Chúng cũng chính là phương sai của từng chiều của dữ liệu

Trang 6

Các phần tử ngoài đường chéo thể hiện sự tương quan giữa thành phần thứ i và thứ j của dữ liệu, còn được gọi là hiệp phương sai Giá trị này có thể dương, âm hoặc bằng 0 Khi nó bằng 0, ta nói rằng hai thành phần i, j trong dữ liệu là không tương quan (uncorrelated)

Nếu ma trận hiệp phương sai là ma trận đường chéo, ta có dữ liệu hoàn toàn không tương quan giữa các chiều

Minh hoạ ma trận hiệp phương sai:

e) Trị riêng (eigenvalue), vector riêng (eigenvector) của ma trận hiệp phương sai: Cho một ma trận vuông, nếu số vô hướng và vector thoả mãn:

thì được gọi là một trị riêng của và được gọi là vector riêng tương ứng với trị riêng đó

- Trị riêng là nghiệm của phương trình đặc trưng

- Một trị riêng có thể có nhiều vector riêng

- Mỗi vector riêng chỉ ứng với một trị riêng duy nhất

- Nếu x là một vector riêng của ứng với thì cũng là vector riêng ứng với trị riêng đó

- Mọi ma trận vuông bậc n đều có n trị riêng (kể cả lặp) và có thể là các số phức

- Với ma trận đối xứng, tất cả các trị riêng đều là các số thực

- Với ma trận xác định dương, tất cả các trị riêng của nó đều là các số thực dương

Trang 7

- Với ma trận nửa xác định dương, tất cả các trị riêng của nó đều là các số thực không âm

f) Phương pháp giải tìm trị riêng, vector riêng

Bước 1: Giải phương trình đặc trưng để tìm trị riêng:

Bước 2: Giải hệ phương trình tìm vector riêng tương ứng với trị riêng :

1.5 Các bước phân tích thành phần chính

Bước 1: Tính giá trị trung bình cộng

Bước 2: + Tính vectơ

+ Tính ma trận hiệp phương sai

Bước 3: Tìm trị riêng của và sắp xếp theo giá trị giảm dần và tìm các vectơ riêng đơn

vị ứng với các trị riêng

Bước 4: Chọn trị riêng ban đầu và vectơ riêng đơn vị ứng với các trị riêng này Lập

ma trận có các cột là các vectơ riêng đã chọn Ma trận là phép biến đổi cần tìm

Bước 5: Tính ảnh của vectơ Dữ liệu ban đầu được xấp xỉ bởi Mỗi cột của chứa tọa

độ của các hàng của ma trận trong cơ sở từ các cột của ma trận

1.6 Ưu điểm, tại sao sử dụng PCA trong xử lý ảnh

a) Giảm kích thước ảnh

Trang 8

- PCA có thể giảm kích thước ảnh một cách hiệu quả, giúp tiết kiệm dung lượng lưu trữ và thời gian xử lý

- Việc giảm kích thước ảnh không ảnh hưởng nhiều đến chất lượng ảnh, đặc biệt là khi chỉ cần giữ lại các đặc trưng quan trọng

b) Nâng cao hiệu quả xử lý ảnh

- PCA giúp loại bỏ các nhiễu và thông tin không cần thiết trong ảnh, giúp nâng cao hiệu quả của các thuật toán xử lý ảnh khác như phân loại ảnh, nhận dạng khuôn mặt,…

- PCA giúp tập trung vào các đặc trưng quan trọng của ảnh, giúp các thuật toán xử

lý ảnh dễ dàng phân tích và xử lý ảnh hơn

c) Tăng tốc độ xử lý ảnh

- Do PCA giúp giảm kích thước ảnh và loại bỏ các thông tin không cần thiết, nên tốc độ xử lý ảnh cũng được tăng lên

- Việc tăng tốc độ xử lý ảnh đặc biệt hữu ích trong các ứng dụng thời gian thực như giám sát video,…

d) Tăng khả năng khái quát hóa

- PCA giúp tách rời các đặc trưng chung của ảnh khỏi các biến thể ngẫu nhiên, giúp tăng khả năng khái quát hóa của các thuật toán học máy

- Việc tăng khả năng khái quát hóa giúp các thuật toán học máy có thể hoạt động hiệu quả hơn với các ảnh mới mà chưa từng gặp trước đây

e) Đơn giản và dễ sử dụng:

- PCA là một thuật toán đơn giản và dễ sử dụng, có thể được triển khai dễ dàng trong các ứng dụng xử lý ảnh

Trang 9

- PCA có thể được kết hợp với các thuật toán xử lý ảnh khác để tạo ra các hệ thống

xử lý ảnh hiệu quả và mạnh mẽ

1.7 Database

PHẦN 2 DEMO CODE

Trang 10

1 Giao diện

Trang 11

2 Demo

Trang 14

Tài liệu tham khảo

[1] Principal Component Analysis

https://machinelearningcoban.com/2017/06/15/pca/

https://www.geeksforgeeks.org/principal-component-analysis-pca/

https://www.analyticsvidhya.com/blog/2022/07/principal-component-analysis-beginner-friendly/

Ngày đăng: 26/10/2024, 08:46

w