Nghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắt

61 1.1K 1
Nghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắt

Đ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

Nghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắtNghiên cứu công nghệ nhận diện khuôn mặt dựa trên kỹ thuật phân tích mống mắt

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG - TÔN LONG TRIỂN NGHIÊN CỨU CÔNG NGHỆ NHẬN DIỆN KHUÔN MẶT DỰA TRÊN KỸ THUẬT PHÂN TÍCH MỐNG MẮT LUẬN VĂN THẠC SĨ KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH – NĂM 2016 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG - TÔN LONG TRIỂN NGHIÊN CỨU CÔNG NGHỆ NHẬN DIỆN KHUÔN MẶT DỰA TRÊN KỸ THUẬT PHÂN TÍCH MỐNG MẮT Chuyên ngành: KỸ THUẬT VIỄN THÔNG Mã số: 60.52.02.08 LUẬN VĂN THẠC SỸ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC TS NGUYỄN THANH BÌNH THÀNH PHỐ HỒ CHÍ MINH – NĂM 2016 i LỜI CAM ĐOAN Tôi cam đoan công trình nghiên cứu riêng Các số liệu, kết nêu luận văn trung thực chưa công bố công trình khác TP.HCM, ngày 20 tháng năm 2016 Học viên thực luận văn Tôn Long Triển ii LỜI CẢM ƠN Lời em xin chân thành gửi lời cảm ơn sâu sắc đến Thầy T.S Nguyễn Thanh Bình định hướng cho em đề tài để tìm hiểu sâu lĩnh vực máy học Đồng thời thầy hướng dẫn tận tình, bảo em vấn đề khác liên quan mật thiết cho việc thực luận văn em Xin chân thành cảm ơn Thầy Cô tận tình hướng dẫn, giảng dạy suốt trình học tập, nghiên cứu rèn luyện Học Viện Công Nghệ Bưu Chính Viễn Thông sở thành phố Hô chí Minh Dù cố gắng để hoàn thành tốt luận văn tránh khỏi thiếu sót Rất mong nhận đánh giá đóng góp dẫn từ Thầy Cô, bạn bè để làm tốt cho luận văn cao học em Em xin chân thành cảm ơn TP.HCM, ngày 20 tháng năm 2016 Học viên thực luận văn Tôn Long Triển iii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT v DANH MỤC CÁC BẢNG vi DANH MỤC CÁC HÌNH vii MỞ ĐẦU .1 Chương - TỔNG QUAN 1.1 Giới thiệu chung đặc điểm sinh trắc học mắt 1.1.1 Hệ xác thực 1.1.2 Nhận dạng 1.1.3 Các thành phần chức chủ yếu 1.1.4 Đánh giá hiệu chất lượng hoạt động hệ sinh trắc học 1.2 Các phương pháp tiền xử lý trích đặc trưng mống mắt 1.2.1 Phân đoạn ảnh 1.2.2 Chuẩn hóa ảnh 1.3 Các nghiên cứu liên quan .12 1.4 Lý chọn đề tài .13 Chương - NGHIÊN CỨU GIẢI THUẬT PHÂN LOẠI VÀ NHẬN DẠNG MỐNG MẮT .16 2.1 Kỹ thuật phân loại dựa vào khoảng cách Hamming .16 2.2 Kỹ thuật phân loại dựa vào mạng nơron 16 iv 2.3 Đặc điểm phương pháp phân loại dựa vào kernel 18 2.3.1 Đặc điểm không gian ánh xạ 19 2.3.2 Kernel loại kernel khác 20 2.4 Kỹ thuật phân loại dựa vào kernel SVM 21 2.4.1 Optimal Hyperplane (tối ưu siêu phẳng) cho phân chia tuyến tính 21 2.4.2 Tối ưu hóa siêu phằng phương pháp toàn phương 24 2.4.2 Mô hình nhiều lớp SVM 27 Chương - KẾT QUẢ MÔ PHỎNG 28 3.1 Mô đánh giá kết 28 3.1.1 Mô phương pháp phân loại dựa vào khoảng cánh hamming 28 3.1.2 Mô phương pháp phân loại dựa vào SVM 39 3.2 Kết luận chung 46 3.3 Hướng phát triển đề tài .46 DANH MỤC TÀI LIỆU THAM KHẢO 47 PHỤ LỤC 49 v DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT Viết tắt Tiếng Anh Tiếng Việt CNN Convolutional neural network Mạng nơ-ron tích chập ERR Equal error rate Tỷ lệ kết sai FAR False accept ratio Tỷ số chấp nhận sai FMR False Match Rate Tỷ lệ so sánh sai FNMR False None Match Rate Tỷ lệ không so sánh FRR False rejection ratio Tỷ số từ chối sai HMM Hidden Markov model Mô hình markov ẩn OAA One-Against-All Một chống tất OAO One-Against-one Một chống RBF Radial basis function Hàm bán kính sở SVM Support vector machine Máy vectơ hỗ trợ vi DANH MỤC CÁC BẢNG Bảng 2.1 Các loại hàm kernel khác 20 Bảng 3.1 Đánh giá kết trình nhận dạng dựa vào khoảng cách hamming 37 Bảng 3.2 Thời gian thực nhận dạng dựa vào khoảng cách hamming 37 Bảng 3.3 Đánh giá thông số trình SVM 41 Bảng 3.4 Đánh giá kết trình nhận dạng dựa vào SVM 45 vii DANH MỤC CÁC HÌNH Hình 1.1 Biểu đồ minh họa FAR, FRR ERR Hình 1.2 Quá trình chuẩn hóa từ tọa độ đề cát sang tọa độ cực Hình 1.3 Quá trình chuẩn hóa mô hình Daugman’s Rubber Sheet Hình 1.4 Cặp lọc Gabor 2D trực giao 11 Hình 2.1 Mô hình Mạng nơ tron 17 Hình 2.2 Hình ảnh không gian ánh xạ 20 Hình 2.3 Hình ảnh siêu phẳng cho phân chia tuyến tính 22 Hình 2.4 Hình ảnh siêu phẳng có tập liệu .23 Hình 3.1 Mô hình nghiên cứu tổng quan 31 Hình 3.2 Xác định đường cong thuật toán daugman 32 Hình 3.3 Hình ảnh mắt sau xác định thành phần nhiễu 32 Hình 3.4 Hình ảnh mẫu mắt sau chuẩn hóa sang tọa độ cực .33 Hình 3.5 Hình ảnh sau loại bỏ thành phần nhiễu chuẩn hóa sang tọa đô cực 33 Hình 3.6 Hình ảnh sở liệu Casia iris sau trình tiền xử lý 34 Hình Quá trình xử lý với hình ảnh thực tế 35 Hình 3.8 Lưu đồ giải thuật trình nhận dạng dựa vào khoảng cách hamming 36 Hình 3.9 So sánh tỷ lệ FRR FAR 37 Hình 3.10 Mật độ phân khoảng cách Hamming 38 Hình 3.11 Sơ đồ khối trình phân loại dựa vào SVM 39 MỞ ĐẦU Công nghệ sinh trắc học công nghệ sử dụng thuộc tính vật lý, đặc điểm sinh học riêng cá thể vân tay, mống mắt, khuôn mặt để nhận diện Bởi đặc tính ổn định độc vân tay mống mắt nên nay, đặc điểm sử dụng phương pháp nhận dạng dựa vào sinh trắc tin cậy để đáp ứng nhu cầu bảo mật, độ xác, tốc độ độ lớn sở liệu để nhận dạng sinh trắc Hiện nhiều công nghệ với kết hợp nhiều thuật toán khác để đem lại hiệu cao ngày cải tiến phương pháp nhận dạng sinh trắc Trong đề tài sẻ tập trung nghiên cứu công nghệ sinh trắc hoc phương pháp nhận dạng cá thể dựa vào đặc điểm riêng biệt mống mắt, đề tài có xử nhiều thuật toán để xử lý ảnh trích đặc trưng từ mống mắt từ xây dựng mô hình cụ thể để thực trình huấn luyện mẫu mống mắ có sẳn lưu trữ vào sở liệu, qua để kiếm tra tính đắn xác trình ta thực trình kiểm thử mẫu mắt từ tập kiểm tra để qua nhận xét tốc độ, độ xác kết tính tối ưu thuật toán 38 Giai đoạn tiền xử lý 3120 giây Giai đoạn chuẩn hóa trích đặc trưng 3200 giây Giai đoạn tính khoảng cách 5400 giây Hamming Giai đoạn tính toán xác xuất lỗi 100 giây Hình 3.10: Mật độ phân khoảng cách Hamming Để minh hoạ rõ ảnh hưởng loại hình mống mắt tới độ xác nhận dạng, tác giả có chọn liệu từ trình tiền xử lý ảnh để vẽ đồ thị ảnh hưởng vùng nhận dạng mẫu dựa mống mắt Các khoảng cách Hamming đại diện cho hai cấp độ so sánh mẫu mắt thuộc đối tượng mẫu không thuộc đối tượng thể Hình 3.10 39 3.1.2 Mô phương pháp phân loại dựa vào SVM Trong đề tài sử dụng Matlab để mô đánh giá kết theo hình vẽ 3.11 bên Hình 3.11: Sơ đồ khối trình phân loại dựa vào SVM Đầu tiên, liệu đầu đưa tới phận chức gồm: huấn luyện, kiểm thử Sau sử dụng huấn luyện cho liệu đầu vào để thực phương pháp tiền xử lý xác định số chiều vector liệu đầu vào Với liệu kiểm thử thực giống huấn luyện Thực trình tiền xử lý ảnh để chuyển liệu huấn luyện liệu kiểm thử thành giá trị nhị phân 3.1.2.1 Quá trình tiền xử lý Mục đích trình tiền xử lý nâng cao chất lượng ảnh đầu vào, trình bao gồm bước sử dụng thuật toán daumang qúa trình chuẩn hóa mã hóa ảnh tương tự phương pháp dựa vào khoảng cách Hamming mục 3.1.1 40 3.1.2.2 Lựa chon mô hình Trong đề tài này, sau lựa chon mô hình để mô sử dụng RBF kernel Tổng quát, RBF kernel lựa chọn Kernel ánh xạ không tuyến tính mẫu liệu vào không gian nhiều chiều hơn, không giống kernel tuyến tính ứng dụng nhiều trường hợp mà mối quan hệ lớp nhãn liệu đặc trưng liệu không tuyến tính, thêm lý khác số thông số siêu thực ảnh hưởng tác động đến độ phức tạp model Polyminal kernel có nhiều thông số RBF kernel Đối với RBF kernel, cần xác định thông số C, γ đặc trưng lớn, không thích hợp cho sử dụng RBF, mô hình tuyến tính sử dụng trực tiếp 3.1.2.3 Thuật toán kiểm thử giá trị hợp lệ chéo Cho kernel có thông số chưa biết, theo thứ tự cần phải tìm thông số tốt đưa dự liệu đầu vào Mục đích nhận thông số tôt để phân loại xác dự đoán liệu test chưa biết Phương pháp sử dụng kiểm thử giá trị hợp lệ chéo Trọn v mẫu hợp lệ chéo, chia thành liệu huấn luyện thành v thành phần nhổ và phần sử dụng để kiểm thử dùng để phân loại v-1 dự liệu huấn luyện đầu vào, mẫu thử toàn tập huấn luyện dùng để dự đoán, độ xác phép kiểm thử hợp lệ chéo phần trăm toàn liệu mà mô hình nhận dạng 3.1.2.4 Đánh giá ảnh hưởng liệu huấn luyện Để tìm ảnh hưởng liệu huấn luyện, chương trình mô thưc nhiều lần trình kiểm thử để đánh giá độ xác với nhiều loại liệu khác thay đổi đầu vào Bảng 3.3 bên cho ta thấy xác tham số đầu vào qua trình đánh giá chọn tham số 41 Bảng 3.3: Đánh giá thông số trình SVM Dữ liệu đầu vào Thông tin Kernel Thời gian kết Kiểm thử lần 1: + 20 mẫu + C = 2e-10 +  rbf = +Kết SupportVectors: [140x19200 double] Alpha: [140x1 double] Bias: 419.6976 KernelFunction: @rbf_kernel xác : 95% + Thời gian thực 100.850024 s KernelFunctionArgs: {[1]} GroupNames: [140x1 logical] SupportVectorIndices: [140x1 double] ScaleData: [1x1 struct] FigureHandles: [] Kiểm thử lần 2: + 20 mẫu SupportVectors: [140x19200 double] + Kết Alpha: [140x1 double] + C = 2e-1 +  rbf = xác 100% + Thời gian Bias: 0.7925 KernelFunction: @rbf_kernel thực là: 106.877285 s KernelFunctionArgs: {[1]} GroupNames: [140x1 logical] SupportVectorIndices: [140x1 double] ScaleData: [1x1 struct] FigureHandles: [] Kiểm thử lần 3: + Kết 42 + 20 mẫu SupportVectors: [140x19200 double] + C = 2e-5 Alpha: [140x1 double] +  rbf = 2e-5 Bias: 0.0051 KernelFunction: @rbf_kernel xác 95% + Thời gian thực 100.400822 s KernelFunctionArgs: {[2.0000e-05]} GroupNames: [140x1 logical] SupportVectorIndices: [140x1 double] ScaleData: [1x1 struct] FigureHandles: [] Kiểm thử lần 4: + Kết + 20 mẫu SupportVectors: [140x19200 double] xác là: 95% + C = 2e-5 Alpha: [140x1 double] + Thời gian +  rbf = 2e5 Bias: 0.0028 thực KernelFunction: @rbf_kernel 100.872960 s KernelFunctionArgs: {[200000]} GroupNames: [140x1 logical] SupportVectorIndices: [140x1 double] ScaleData: [1x1 struct] FigureHandles: [] Kiểm thử lần 5: + 20 Mau + Kết SupportVectors: [140x19200 double] xác 95% + C = 2e-20 Alpha: [140x1 double] + Thời gian +  rbf = 2e-5 Bias: 4.2020e+12 thực KernelFunction: @rbf_kernel 93.078736 s KernelFunctionArgs: {[2.0000e-05]} GroupNames: [140x1 logical] SupportVectorIndices: [140x1 double] ScaleData: [1x1 struct] 43 FigureHandles: [] Kiểm thử lần 6: + kết + 20 Mau SupportVectors: [140x19200 double] xác : 95% + C = 2e-10 Alpha: [140x1 double] + Thời gian +  rbf = 2e5 Bias: 3.8563e+12 thực : KernelFunction: @rbf_kernel 102.325128 s KernelFunctionArgs: {[2.0000e+20]} GroupNames: [140x1 logical] SupportVectorIndices: [140x1 double] ScaleData: [1x1 struct] FigureHandles: [] Nhận xét: + Khi giữ nguyên giá trị sigma tăng giá trị alpha độ xác cao hơn, thời gian để phân loại nhận dạng tăng lên + Số mẫu thử nhỏ sử dụng để lựa chọn đánh giá thông số tốt cho phần sau phần thực kiểm thử với mẫu số lượng lớn thời gian lâu  SupportVectors : Ma trận điểm liệu với hàng tương ứng với vector hỗ trợ, ma trận tập ma trận huấn luyện đầu vào, sau chuẩn hóa áp dụng theo thông số tự động mở rộng  Alpha: trọng số vector hỗ trợ vector, dấu trọng số tích cực cho hỗ trợ vector bên cạnh nhóm không tích cực cho nhóm thứ hai 44  Bias: Giao điểm siêu phẳng mà chia liệu thành nhóm không gian liệu chuẩn hóa theo thông số mở rộng  Kernel funtion: Nắm giữ hàm để ánh xạ dự liệu từ liệu gốc để huấn luyện sang không gian kernel  Group Name : chủng loại, số, vector logic, tế bào vector chuỗi, ma trận đặc tính với hàng đại diện cho nhãn lớp Chỉ định định danh nhóm cho vector hỗ trợ Nó có số yếu tố dòng SupportVectors Mỗi phần tử xác định từ nhóm hàng tương ứng SupportVectors  SupportVectorIndices: Vector định loại rõ ràng hàng liệu huấn luyện, liệu lựa chọn hỗ trợ vector sau data chuẩn hóa, theo thông số mở rộng mô hình  ScaleData: Trường chứa yếu tố bình thường Khi yếu tố 'tự động mở rộng' thiết lập để sai Khi yếu tố 'tự động mở rộng' đặt đúng, cấu trúc có chứa hai trường : + Chuyển - Giá trị hàng vector Mỗi giá trị tiêu cực giá trị trung bình quan sát trình huấn luyện tập huấn luyện + scaleFactor - Giá trị hàng vector Mỗi giá trị chia cho độ lệch chuẩn quan sát đào tạo, tập huấn luyện  FigureHandles: Vector hình handle tạo svmtrain sử dụng tham số 'Showplot'  Boxconstraint: Giá trị hộp điều chỉnh C đại diện cho vùng ngăn cách C đại lượng vô hướng, vector có chiều dài tương tự liệu huấn luyện 45 + Nếu C vô hướng, tự động điều chỉnh N / (2 * N1) cho điểm liệu nhóm N / (2 * N2) cho điểm liệu hai nhóm, N1 số phần tử nhóm một, N2 số phần tử nhóm hai, N = N1 + N2 Điều chỉnh thực để đưa vào nhóm không cân đối tài khoản, trường hợp N1 N2 có giá trị khác + Nếu C mảng, sau phần tử mảng thực hạn chế hộp cho điểm liệu với số tương tự  Autoscale : Giá trị logic xác định xem svmtrain tự động tập trung điểm liệu trung bình chúng, chuyển đổi chúng có đơn vị độ lệch chuẩn, trước tập luyện 3.1.2.4 Đánh giá trình nhận dạng với số lượng lớn Dữ liệu đầu vào 756 mắt đối tượng khác đối tượng có mẫu mắt khác nhau, trình tiền xử lý ảnh để trích đặc trưng mống mắt thực giống trình trích đặc trưng phương pháp dựa vào khoảng cách hamming Bảng 3.4: Đánh giá kết trình nhận dạng dựa vào SVM Các Giai đoạn xử lý ảnh Thời gian thực thi Giai đoạn tiền xử lý 3120 giây Giai đoạn chuẩn hóa trích đặc trưng 3200 giây Giai đoạn tính toán xác xuất lỗi 11131.840527 giây SVM Kết nhận với độ xác sau đo lường là: 99,07 % Với thông tin kernel sau: SupportVectors: [756x19200 double] Alpha: [756x1 double] 46 Bias: 567.7731 KernelFunction: @rbf_kernel KernelFunctionArgs: {[1]} GroupNames: [756x1 logical] SupportVectorIndices: [756x1 double] ScaleData: [1x1 struct] FigureHandles: [] 3.2 Kết luận chung Đề tài đánh giá hỗ trợ cho nhận dạng tự động dựa tính phổ biến mẫu mống mắt Đề tài kiểm tra thí nghiệm sử dụng khoảng cách Hamming, mẫu nhị phân cục SVM Trong SVM sử dụng hạt nhân RBF tuyến tính 765 mẫu hình ảnh mắt từ sở liệu Casia áp dụng để nghiên cứu thực nghiệm tính hiệu hệ thống đề xuất đánh giá Các kết thu chứng minh phương pháp kết hạt nhân SVM có xác nhận dạng xác cao (99,07 %) Vì việc đề xuất phù hợp cho nhận dạng xác minh 3.3 Hướng phát triển đề tài Đề tài mở rộng với nhiều phương pháp khác nhiều giai đoạn khác trình thực xử lý nhận dạng ảnh nhằm đánh giá tìm phương pháp tối ưu phù hợp, chẳng hạn trình tiền xử lý ảnh để xác định mống mắt thực thuật toán Hough, trình phân loại dựa vào SVM cải tiến hàm kernel khác như: hàm kernel đa thức, hàm sigma… Ngoài trình nhận dạng kết hợp với mô hình markov ẩn HMM Một hướng phát triển trình máy học sau deep leanrning có kết hợp nhiều thuật toán khác nhau, nhiều mô hình khác convolutional neural network (CNN) 47 DANH MỤC TÀI LIỆU THAM KHẢO [1] Libor Masek (2003), Recognition of Human Iris Patterns for Biometric Identification, The University of Western, Australia [2] K Saminathan, T Chakravarthy and M Chithra Devi (2015, January), ”Iris recognition based on kernels of support vector machine”, Ictact journal on soft computing: special issue on soft – computing theory, application and implications in engineering and technology, Vol.05, pp 102-106 [3] V.V.S Tallapragada1 E.G Rajan (2012), “Improved kernel-based IRIS recognition system in the framework of support vector machine and hidden Markov model”, The Institution of Engineering and Technology [4] Shuai Shao, Mei Xie (2006), “Kernel-based Classifier for Iris Recognition”, ICSP2006 Proceedings [5] Musab A M Ali and Nooritawati Md Tahir (2014), “Half Iris Gabor Based Iris Recognition”, IEEE 10th International Colloquium on Signal Processing & its Applications [6] J Daugman (2001), “Statistical richness of visual phase information: update on recognizing persons by iris patterns”, International Journal of Computer Vision, Vol 45, No 1, pp 25-38 [7] Richard P Wildes (1997), “Iris recognition: An emerging biometric technology”, Proceedings of the IEEE [8] L Ma, T Tan, Y Wang and D Zhang (2003),”Personal Identification Based on Texture Analysis”, IEEE Transaction on Pattern Analysis and Machine Intelligence, Vol 25, No 12, pp 1519-1533 [9] L Ma, T Tan, Y Wang, and D Zhang (2004) , “Efficient iris recognition by characterizing key local variation”, IEEE Transactions on Image Processing, Vol 13, pp 739-750 48 [10] Wageeh Boles and Boualem Boashash (1998), ”A human identification technique using images of the iris and wavelet transform”, IEEE Transactions on Signal Processing, Vol 46, No 4, pp 1185-1188 [11] Fadi N Sibai.Hafsa I Hosani, raja M Naqbi, Salima Dhanhani, Shaikha Shehhi, (2011), “Iris Recognition Using Artificial Neural Networks”, Elsevier, Expert Systems with Applications, Vol 38, No 5, pp 5940-5946 [12] Kazuyuki Miyazawa, K Ito, Koji Kobayashi and H Nakajima (2005), “An Efficient Iris Recognition Algorithm Using Phase-Based Image Matching”, IEEE International Conference on Image Processing, Vol 2, pp II-49-52 [13] Kazuyuki Miyazawa, Koichi Ito, Takafumi oki, Koji Kobayashi, Hiroshi Nakajima (2005), “A Phase-Based Iris Recognition Algorithm”, Springer Lecture Notes on Computer Science, pp 356-365 [14] Rafael C Gonzalez and Richard E Woods (2002), Digital Image Processing, Prenice Hall [15] Cheong H.-Y., Tourapis A.M., Llach J., Boyce J., “Adaptive spatio-temporal filtering for video denoising” Image Processing, 2004 ICIP '04 2004 International Conference ,Volume: 2, Publication Year: 2004 , Page(s): 965 – 968 [16] Varghese G., Zhou Wang (2010), “Video Denoising Based on a Spatiotemporal Gaussian Scale Mixture Model”, Circuits and Systems for Video Technology, IEEE Transactions, Volume: 20 , Issue: 7, Page(s): 1032 – 1040 [17] Gu Hong-ying, Zhuang Yue-ting and Pan Yun-he (2005), “An iris recognition method based on multi-orientation features and Non-symmetrical SVM”, Journal of Zhejiang University SCIENCE, Vol 6A, No 5, pp 428-432 [18] Martin Hofmann (2006, June 26), Support Vector Machines — Kernels and the Kernel Trick, Weblogin der Universität Bamberg, Germany [19] A.Oppenhem, J.Lim (1991) “The importance of phase in signals” Procedings of the IEEE 69, pp.529-541 49 PHỤ LỤC Giai đoạn đầu xử lý ảnh liệu đầu vào tập liệu CASIA, đọc file ảnh *.bmp lưu chúng thư mục làm việc filesrcpath1 = strcat( path,subpath1,num2str(i),'\',num2str(j),'\',subpat h1,num2str(i),'_',num2str(j),'_',num2str(k),'.bmp' ); filedespath1 = strcat( path,num2str(i),'_',num2str(j),'_',num2str(k),'.jpg'); im = imread(filesrcpath1,'bmp'); data(:,7*(i-1)+k) = reshape(im,1,280*320); display(filedespath1); imwrite(im,filedespath1,'jpg'); Giai đoạn xử lý tất ảnh thực trình tiền xử lý ảnh thông qua hàm createiristemplate() filesrcpath1 = strcat( path,subpath,num2str(i),'_',num2str(j),'_',num2str(k),'.jpg'); im = filesrcpath1; [t,m] = createiristemplate(im); template(:,7*(i-1)+k) = reshape(t,1,480*20); mask(:,7*(i-1)+k) = reshape(m,1,480*20); save template.mat template; save mask.mat mask; Tính khoảng cách hamming mẫu người Đề tài sử dụng mẫu mắt thuộc người 108 người Do vậy, kết lưu vào ma trận có số chiều 7x108 template1 = reshape(template(:,7*(i-1)+j),20,480); mask1 = reshape(mask(:,7*(i-1)+j),20,480); template2 = reshape(template(:,7*(i-1)+k+j),20,480); mask2= reshape(mask(:,7*(i-1)+k+j),20,480); % tinh khoang cach hamming cac mau iris cua mot nguoi % mau / nguoi x 108 nguoi HD_same(1,same_index) = gethammingdistance(template1, mask1, template2, mask2, 1); 50 Tính khoảng cách hamming mẫu không thuộc người Đề tài sử dụng mẫu mắt thuộc người 108 người Do vậy, kết lưu vào ma trận có số chiều 101x108 template1 = reshape(template(:,7*(i-1)+j),20,480); mask1 = reshape(mask(:,7*(i-1)+j),20,480); template2 = reshape(template(:,7*(i-1)+k+7),20,480); mask2= reshape(mask(:,7*(i-1)+k+7),20,480); HD_diff(1,diff_index) = gethammingdistance(template1, mask1, template2, mask2, 1); save HD_diff.mat HD_diff; save HD_same.mat HD_same Tính sai số từ trình nhận dạng dựa vào khoảng hamming clc; clear all; load 'HD_same.mat'; load 'HD_diff.mat'; x = 0:0.01:1; fmr = zeros(size(x)); fnmr = zeros(size(x)); for k=1:length(x) fmr(k) = sum(HD_diff(1,:) x(k)) / size(HD_same,2); end %%% EER %%% EER = 1; for i = 1:length(x)-1 if fmr(i) == fnmr(i) EER = fmr(i); elseif sign(fmr(i)-fnmr(i))*sign(fmr(i+1)-fnmr(i+1)) == -1 EER = (fmr(i)+fmr(i+1)+fnmr(i)+fnmr(i+1))/4; break; else EER = 1; end end figure plot(fmr,fnmr,'*-b') Quá trình nhận dạng dựa vào SVM sử dụng phương thức RBF kernel, có trình thực tiền xử lý giống trình nhận dạng bang phương pháp 51 khoảng cách hamming, sau trích ma trận đặc trưng mống mắt, sau trình chuyển tiếp vào khối xử lý SVM thông qua hàm RBF kernel Bước đầu chia liệu thành bộ: Huấn luyện vào kiểm thử groupTrnId = 108; Xdata = []; for i=1:groupTrnId for j=1:7 temp = reshape(template(:,i), 1, []); msk = reshape(mask(:,i), 1, []); data =[temp, msk]; Xdata = [Xdata;data] ; end end group_name = cell(7*groupTrnId,1); k =0 ; for i=1:groupTrnId for j=1:7 k = k + 1; group_name{k} = ['' num2str(i)]; end end Ydata = reshape(group_name,{},1); % Experment result = multisvm_frr(Xdata,Ydata,XTest); Bước thực huấn luyện cho liệu đầu vào + Gồm 108 lớp liệu tương ứng 108 nhãn + Kernel sử dụng RBF với thông số chọn lọc từ mục chọn thông số + Sử dụng phương đa lớp SVM với phương thức OVA for k=1:numClasses disp('====class svm-training========') G1vAll=(AAGroupTrain==uucc(k)); G1vAll =reshape(G1vAll(:,1),1,[]) G1vAll %Su dung phuong thuc OVA, mot va tat ca de phan loai models(k) = svmtrain(TrainingSet, G1vAll, 'Autoscale',true, 'Showplot',false, 'Method','QP', 'BoxConstraint',2e-10, 'Kernel_Function','rbf', 'RBF_Sigma',1); models(k) end trình phân loại, nhận dạng đánh giá kết thực sau: 52 fprintf('###################SVMsvmclassify#################\n') for k=1:numClasses for j=1:(size(TestSet,1)) Gr2Regize=(AAGroupTrain==uucc(k)); Gr2Regize = reshape(Gr2Regize(:,1),1,[]); if j>= k && j

Ngày đăng: 17/12/2016, 23:35

Từ khóa liên quan

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

Tài liệu liên quan