Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
1,94 MB
Nội dung
BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG Trường Ðại học Công nghiệp Hà Nội Khoa Công nghệ thông tin BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG ÐỀ TÀI: TÌM HIỂU PHÉP BIẾN ĐỔI (PHƯƠNG PHÁP PCA)NHẬN DẠNG KHUÔN MẶT. Giảng viên: Ts. Phạm Văn Hà Thực hiện: Nhóm 27 – Lớp ÐH KHMT2K5 1. Lê Thanh Nghị Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 1 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG Mục Lục 1. Phép biến đổi Karhunen-Loève: 3 2. Thuật toán PCA: 7 2.1. Giới thiệu chung về thuật toán : 7 2.2. Nội dung thuật toán PCA: 9 3. Áp dụng PCA trong bài toán nhận dạng khuôn mặt : 11 3.1. Giới thiệu chung về các phương pháp nhận dạng mặt người: 11 3.2. Nhận dạng khuôn mặt dựa trên PCA: 12 3.3 Các hàm hiển thị ảnh trong Matlab 14 3.4 Các hàm khác được sử dụng trong đề tài 15 4. Chương trình Demo: 17 Tài liệu tham khảo 22 Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 2 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG 1. Phép biến đổi Karhunen-Loève : Các phép biến đổi Karhunen-Loève (KL) có liên quan với các giải thích cấu trúc dữ liệu thông qua một số tuyến tính kết hợp của các biến. Giống như PCA, phép biến đổi KL cũng là cách tối ưu cho dự án d - chiều điểm để giảm điểm chiều sao cho sai số của dự án (tức là tổng của khoảng cách bình phương (SSD)) là tối thiểu (Fukunaga, 1990). Cho D {x 1 , x 2 , , x n } là một tập dữ liệu không gian d chiều, và X là đồng vị ma trận dxd, nghĩa là X= (x ij ) nxd với x ij là giá trị j thành phân của x i . x i ( i =1,2,,n) là vector d chiều. Chúng có thể hiển thị không lỗi bằng phép tính tổng vector tuyến tính độc lập như Các ma trận d × d cơ sở φ và chúng ta biết thêm có thể cho rằng những hàng φ hình thức một bộ trực giao, nghĩa là: Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 3 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG Vì vậy, Y chỉ đơn giản là một biến đổi trực giao của X. φ j được gọi là vectơ thứ j tính năng và y ij là thành phần thứ j của mẫu x i trong không gian tính năng này. Để giảm bớt chiều, chúng ta chỉ chọn m(m<d) tính năng vectơ có thể gần đúng X tốt. Xấp xỉ có thể được thu được bằng cách thay thế các thành phần của yj với hằng chọn trước Y(1,m) là ma trận nxm có được bằng cột m đầu tiên của Y, có nghĩa là Y(1,m) = (y ij ) nxm và một ma trận n×(m−d)với (i, j) nhập từ b i,m+j . Không mất tổng quát, chúng ta giả định rằng chỉ có các thành phần m đầu tiên của mỗi y j được tính toán. Sau đó, các lỗi của các kết quả là xấp xỉ Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 4 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 5 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 6 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG 2. Thuật toán PCA: 2.1. Giới thiệu chung về thuật toán : PCA (Principle Components Analysic) là một thuật toán được sử dụng để tạo ra một ảnh mới từ ảnh ban đầu. Ảnh mới này có kích thước nhỏ hơn nhiều so với ảnh ban đầu nhưng vẫn mang những đặc trưng cơ bản nhất của ảnh cần nhận dạng. PCA không cần quan tâm đến việc tìm ra các đặc điểm cụ thể của thực thể cần nhận dạng và mối quan hệ giữa các đặc điểm đó. Tất cả các chi tiết đó đều được thể hiện ở ảnh mới được tạo ra từ PCA. Về bản chất, PCA tìm ra một không gian mới theo hướng biến thiên mạnh nhất của một tập hợp các vector trong không gian cho trước. Trong không gian mới, người ta hi vọng rằng việc phân loại sẽ mang lại kết quả tốt hơn so với không gian ban đầu. Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 7 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG Không gian mới (p1,p2) theo hướng phân bố mạnh nhất của các vector trong không gian (x1, x2) tìm theo PCA Ưu điểm của phương pháp PCA : Tìm được các đặc tính tiêu biểu của đối tượng cần nhận dạng mà không cần phải xác định các thành phần và mối quan hệ giữa các thành phần đó. Thuật toán có thể thực hiện tốt với các cảnh có độ phân giải cao, do PCA sẽ thu gọn ảnh thành một ảnh có kích thước nhỏ hơn. PCA có thể kết hợp với các phương pháp khác như mạng Nơron, Support Vector Machinge… để mạng lại hiệu quả nhận dạng cao hơn. Nhược điểm của PCA : PCA phân loại theo chiều lớn nhất của tập vector. Tuy nhiên, chiều phân bố lớn nhất không phải lúc nào cũng mang lại hiệu quả tốt nhất cho bài toán nhận dạng. Đây là nhược điểm cơ bản của PCA. PCA rất nhạy với nhiễu. Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 8 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG 2.2. Nội dung thuật toán PCA: Không gian mới được tạo bởi PCA được cấu thành từ k vector đơn vị có chiều là N. Mỗi vector được gọi là một Eigenface. Phép biến đổi : A= W = với K<<N W=T.A Với T là ma trận chuyển đổi, T có kích thước K x N. Gọi M là số ảnh đầu vào, mỗi ảnh được chuyển thành vector N chiều. Ta có tập hợp đầu vào X={x 1 , x 2 ,…,x M } (x i € R N ) Trung bình của các vector đầu vào : X tb = Sai lệch so với tâm: Φ i = x i - x tb Gọi A=[ Φ 1, Φ 2,… ,Φ M ] ta có ma trận tương quan của A là : C= = A.A T Gọi các giá trị riêng của C là : λ 1, λ 2,…, λ n sắp xếp theo thứ tự giảm dần, tương ứng với N vector riêng u 1, u 2,…, u N. Các vector riêng này trực giao từng đôi một, Mỗi vector Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 9 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG riêng u i được gọi là một eigenface. Tập hợp các vector ban đầu được biểu diễn trong không gian tạo bởi n eigenface theo mô tả : x-x tb = w 1 u 1 + w 2 u 2 +…+ w N u N = Chọn lấy K vector riêng u tương ứng với K giá trị riêng λ lớn nhất, ta có : x-x tb = w 1 u 1 + w 2 u 2 +…+ w N u N = với K<<N Vector các hệ số khai triển [w1, w2,…, wk] chính là biểu diễn mới của ảnh được tạo ra trong không gian PCA. Ảnh mới vẫn giữ được các đặc điểm chính của ảnh đầu vào. Vector [w 1 , w 2 ,…, w K ] được tính theo công thức : = (x-x tb ) = U T .(x-x tb ) Vấn đề cần giải quyết ở đây là ma trận tương quan C=A.A T có kích thước N 2 . Với N=180x200=36000, khối lượng tính toán sẽ rất lớn. Do đó, để tính được các eigenface mà không cần tính cả ma trận C, người ta đưa ra phương pháp tính nhanh dựa vào vector riêng và giá trị riêng của ma trận L=A T .A có kích thước MxM với M là số ảnh đầu vào. Cách tính như sau : Gọi v i , μ i lần lượt là vector riêng và giá trị riêng của ma trận L : A T .A.v i = μ i . v i Nhân cả 2 vế với A, ta có : A.A T .A.v i = μ i . A . v i Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 10 [...]... LÝ THUYẾT NHẬN DẠNG Ta thấy A.vi chính là vector riêng của C=A.AT ứng với giá trị riêng μi 3 Áp dụng PCA trong bài toán nhận dạng khuôn mặt : 3.1 Giới thiệu chung về các phương pháp nhận dạng mặt người: a Các phương pháp nhận dạng khuôn mặt người : Các phương pháp nhận dạng hiện nay có 2 loại : Nhận dạng dựa trên các đặc trưng phần tử trên khuôn mặt (Feature based face recognition) Nhận dạng dựa... trên xét tổng thể khuôn mặt (Apppearance base face recognition ) b Nhận dạng dựa trên mối quan hệ giữa các phần tử : Đây là phương pháp nhận dạng khuôn mặt dựa trên việc xác định các đặc trưng hình học của các chi tiết trên khuôn mặt ( như vị trí, diện tích, hình dạng của mắt, mũi, miệng ), và mối quan hệ giữa chúng (như khoảng cách 2 mắt, khoảng cách 2 lông mày…) Ưu điểm của phương pháp này là nó gần... xuất thông tin ảnh Đọc ảnh từ file và xuất ra ma trận ảnh Lưu ma trận ảnh thành file ảnh Các hàm biến đổi hình học Định nghĩa phép biến đổi hình học từng cặp tương ứng Trích xuất một phần ảnh Thay đổi kích thước ảnh Thực hiện phép quay ảnh Thực hiện phép biến đổi hình học tổng quát Định nghĩa phép biến đổi hình học tổng quát Bảng 3.3 Các hàm xử lý hình ảnh cơ bản trong Matlab 3.4 Các hàm khác được... gian khuôn mặt) trong không gian ảnh Các ảnh khuôn mặt được chiếu vào không gian con này và được gom nhóm lại Tương tự các ảnh không có khuôn mặt dùng để huấn luyện cũng được chiếu vào cùng không gian con và gom nhóm lại Các ảnh khi chiếu vào không gian khuôn mặt thì không bị thay đổi tính chất cơ bản, trong khi chiếu các ảnh không có khuôn mặt thì xuất hiện sự khác nhau cũng không ít Xác định sự có mặt. .. địa phương của bản đồ này Có nhiều nghiên cứu về xác định khuôn mặt, nhận dạng, và trích đặc trưng từ ý tưởng vector riêng, phân rã, và gom nhóm Sau đó Kim phát triển cho ảnh màu, bằng cách phân đoạn ảnh để tìm ứng để không gian tìm kiếm bớt đi Bước đầu tiên trong nhận dạng khuôn mặt dựa trên PCA là trích chọn vector đặc tính Một bức ảnh về khuôn mặt được coi như một vector, nếu bức ảnh có kích thước... nhóm khác Thuật toán PCA ( Principle Components Analysis) thuộc nhóm này 3.2 Nhận dạng khuôn mặt dựa trên PCA: Kohonen đã đưa ra phương pháp dùng vector riêng để nhận dạng khuôn mặt, ông dùng một mạng neural đơn giản để chứng tỏ khả năng của phương pháp này trên các ảnh đã được chuẩn hóa Mạng neural tính một mô tả của khuôn mặt bằng cách xấp xỉ các vector riêng của ma trận tương quan của ảnh Các vector... các ảnh khuôn mặt đã vector hóa trong tập huấn luyện Nếu cho 100 ảnh, mà mỗi khuôn mặt có kích thước 91x50 thì có thể chỉ dùng 50 ảnh riêng, trong khi vẫn duy trì được một khả năng giống nhau hợp lý (giữ được 95% tính chất) Turk và Pentland áp dụng PCA để xác định và nhận dạng khuôn mặt Tương tự, dùng PCA trên tập huấn luyện ảnh các khuôn mặt để sinh các ảnh riêng (còn gọi là eigenface) để tìm một... THUYẾT NHẬN DẠNG Để kiểm tra xem khuôn mặt người trong ảnh cấn kiểm tra chúng ta nhấn nút Search chương trình sẽ chạy và tìm trong CSDL bức ảnh có khuôn mặt giống với khuôn mặt người trong ảnh cần kiểm tra Hiển thị ra giao diện chương trình chính Hình 4.5: Ảnh trung bình Hình 4.6: Hình chiếu ảnh lên không gian ảnh Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 20 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG... phân biệt c Nhận dạng khuôn mặt dựa trên xét toàn diện khuôn mặt : Nội dung chính của hướng tiếp cận này là xem mỗi ảnh có kích thước RxC là một vector trong không gian RxC chiều Ta sẽ xây dựng một không gian mới có chiều nhỏ hơn sao cho khi biểu diễn trong không gian đó các đặc điểm chính của một khuôn mặt Nhóm 27 – KHMT2K5 – Đại học Công nghiệp Hà Nội 11 BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG không... LỚN LÝ THUYẾT NHẬN DẠNG vi = uit Φi Ω=[v1, v2,… ,vM]T Trong đó, vi = uit Φi là vector đặc tính của ảnh thứ I trong không gian mới Ω ở đây là tập các eigenface, các thành phần cơ bản cho bức ảnh cần nhận dạng Sau khi trích chọn được các vector đặc tính, cần đối chiếu vector này với cơ sở dữ liệu, từ đó đưa ra kết quả nhận dạng Trong bài toán, kết quả nhận dạng sẽ là nhận biết được hoặc chưa nhận biết được . LÝ THUYẾT NHẬN DẠNG Trường Ðại học Công nghiệp Hà Nội Khoa Công nghệ thông tin BÁO CÁO BÀI TẬP LỚN LÝ THUYẾT NHẬN DẠNG ÐỀ TÀI: TÌM HIỂU PHÉP BIẾN ĐỔI (PHƯƠNG PHÁP PCA)NHẬN DẠNG KHUÔN MẶT. Giảng. phương pháp nhận dạng khuôn mặt người : Các phương pháp nhận dạng hiện nay có 2 loại : Nhận dạng dựa trên các đặc trưng phần tử trên khuôn mặt (Feature based face recognition). Nhận dạng dựa. NHẬN DẠNG Ta thấy A.v i chính là vector riêng của C=A.A T ứng với giá trị riêng μ i. 3. Áp dụng PCA trong bài toán nhận dạng khuôn mặt : 3.1. Giới thiệu chung về các phương pháp nhận dạng mặt