Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
6,59 MB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA ĐIỆN – ĐIỆN TỬ BÁO CÁO BÀI TẬP LỚN TRUYỀN THÔNG ĐA PHƯƠNG TIỆN Đề tài : Nhận dạng khuôn mặt matlab GVHD : Vũ Hữu Tiến Hà Nội - 5/2022 Mục lục LỜI MỞ ĐẦU I TỔNG QUAN VỀ NHẬN DIỆN KHUÔN MẶT VÀ THUẬT TOÁN MẠNG NƠ- RON Phương pháp nhận diện khuôn mặt .5 Thuật toán mạng nơ-ron InPut II 3.1 Kiến Trúc AlexNet 3.2 Overlapping Max Pooling .7 3.3 ReLu Nonlinearity 3.4 Reducing overfitting BÀI TOÁN NHẬN DẠNG BẰNG MẠNG NƠ-RON TÍCH CHẬP 11 Cách Thức Hoạt Động 11 Nhận Diện Khuôn mặt 13 Phát Hiện Các Điểm Quan Trọng Trên Khuôn Mặt 14 Liên Kết Khuôn Mặt 15 III ẢNH MÀU VÀ CÁC LỆNH XỬ LÝ ẢNH MÀU TRONG MATLAB .16 Ảnh số 16 Ảnh màu 16 Các định dạng ảnh xử lý ảnh 17 IV SƠ ĐỒ KHỐI VÀ CODE CHƯƠNG TRÌNH .19 Sơ đồ khối 19 Code chương trình .20 2.1 Collect data .20 2.2 Trainning 21 2.3 Test 22 Mục Lục Hình Ảnh Hình Điều chỉnh ảnh 256px Hình 2.AlexNet bao gồm convolution Layer Fully connected Layers Hình 3.So sánh tốc độ huấn luyện ReLu Tanh Hình 4.Giá trị bão hoà hàm Tanh Hình 5.Hiệu ứng hình qua gương .10 Hình Rút trích kích thước 227*227 từ ảnh 256*256 .11 Hình 7.Mơ hình huấn luyện 11 Hình 8.Tổng quan phương pháp nhận dạng khuôn mặt người mạng nơ ron tích chập 12 Hình 9.Thiết kế mạng nơ-ron để xử lý ảnh 12 Hình 10.Các giai đoạn dị tìm hiệu chỉnh 13 Hình 11.Kết phát mẫu ảnh IJB-A phương pháp tháp sâu 14 Hình 12 Kiến trúc DCNN sử dụng để trích xuất mơ tả cục cho nhiệm vụ phát điểm mốc khuôn mặt 14 Hình 13.Ví dụ điểm mốc khuôn mặt 15 Hình 14.Kết mẫu phương pháp liên kết khuôn mặt cho video JANUS CS2, liệu mở rộng IJB-A .16 LỜI MỞ ĐẦU Trong giới ngày với phát triển mạnh mẽ kỹ thuật số mạng toàn cầu, vấn đề đảm bảo an tồn thơng tin vật chất ngày trở nên quan trọng khó khăn Một phương pháp đơn giản toán phức tạp xác định người thơng qua khn mặt từ cập nhật thơng tin để đảm bảo an tồn thơng tin tìm kiếm tội phạm Trong nhiều năm qua có nhiều cơng trình nghiên cứu tốn nhận dạng khuôn mặt người từ ánh đen trắng,xám đến ảnh màu ngày hôm nay.Các nghiên cứu từ tốn đơn giản ,mỗi ảnh có khn mặt người nhìn vào thiết bị thu hình đầu tư thẳng đứng ảnh đen trắng.Cho đến ngày hơm tốn mở rộng cho ảnh màu ,có nhiều tư thay đổi ảnh.Không mà cịn mở rộng phạm vi từ mơi trường xung quanh đơn giản môi trường xung quanh phức tạp nhằm đáp ứng nhu cầu người Mục tiêu đề tài “Nhận dạng khuôn mặt matlab dùng thuật toán mạng nơron” thực chương trình tìm kiếm ảnh có khn mặt người tập ảnh sở giống với khuôn mặt người ảnh cần kiểm tra ngôn ngữ matlab I TỔNG QUAN VỀ NHẬN DIỆN KHN MẶT VÀ THUẬT TỐN MẠNG NƠ-RON Phương pháp nhận diện khuôn mặt Dựa vào đặc điểm phương pháp nhận diện khuôn mặt người ảnh.Các phương pháp chia làm bốn hướng tiếp cận : Hướng tiếp cận tri thức: Mã hoá hiểu biết người khuôn mặt thành luật Thông thường luật mô tả mối quan hệ đặc trưng Hướng tiếp cận dựa đặc trưng không thay đổi: Mục tiêu thuật tốn tìm đặc trưng mơ tả cấu trúc khuôn mặt người mà đặc trưng không thay đổi theo thời gian, không phụ thuộc vào biểu cảm khn mặt, vị trí đặt thiệt bị thu hình hay điều kiện ánh sáng Hướng tiếp cận dựa so mẫu khớp: Dùng mẫu chuẩn khuôn mặt người để mô tả cho khuôn mặt người hay đặc trưng khuôn mặt Các mối tương quan liệu ảnh đưa vào mẫu dùng để xác định khuôn mặt người Hướng tiếp cận dựa diện mạo: Trái ngược so với mẫu khớp, mơ hình (hay mẫu) học từ tập ảnh huấn luyện trước Sau hệ thống xác định khn mặt người hay gọi hướng tiếp cận hướng tiếp cận theo phương pháp học Thuật toán mạng nơ-ron Mạng nơ ron nhân tạo (Artificial Neural Network ANN) chuỗi giải thuật lập trình, mơ dựa cách hoạt động mạng lưới thần kinh não sinh vật sống Mạng nơ ron nhân tạo sử dụng để tìm mối quan hệ tập liệu thông qua thiết kế kiến trúc chứa nhiều tầng ẩn (hidden layer), tầng lại chứa nhiều nơ ron Các nơ ron kết nối với độ mạnh yếu liên kết biểu qua trọng số liên kết Lập trình thơng thường làm nhiều phần mềm lớn, tính tốn mơ vụ nổ hạt nhân siêu máy tính phịng thí nghiệm, tái tế bào cấp độ phân tử để phân tích thử nghiệm thuốc Một siêu máy tính tính tốn nhiều tỉ phép tính giây, nhiên lập trình thơng thường lại gặp khó khăn việc nhận mẫu đơn giản, ví dụ nhận diện mặt người, điều mà não sinh học xử lý nhanh xác nhiều Áp dụng với kỹ thuật học sâu, mạng nơ ron nhân tạo áp dụng để giải vấn đề mà lập trình theo logic thơng thường khó giải Do đó, mạng nơ ron nhân tạo nhanh chóng trở nên phổ biến, xu nhiều lĩnh vực Mạng nơ-ron tích chập (CNN) mơ hình học sâu thành cơng lĩnh vực nhận dạng khn mặt, vùng hình ảnh khác sử dụng đồng thời trích xuất đặc trưng hình ảnh, thực tế, phần khác khn mặt đóng vai trị khác nhận diện khn mặt Mỗi khn mặt người có độc đáo nét đặc trưng riêng biệt Một hệ thống nhận diện mặt người thông thường bao gồm bốn bước xử lý sau: Phát khuôn mặt (Face Detection) Phân đoạn khn mặt (Face Alignment hay Segmentation) Trích chọn đặc trưng (Feature Extraction) Nhận diện (Recognition) hay Phân lớp khuôn mặt (Face Classification) Mạng Neural Network AlexNet 3.1 InPut Mạng AlexNet mơ hình giải toán phân lớp ảnh vào lớp 1000 lớp khác (vd gà, chó, mèo… ) Đầu mơ hình vector có 1000 phần tử Phần tử thứ i vector đại diện cho xác suất ảnh thuộc lớp thứ i Do đó, tổng phần tử vector Đầu vào mạng AlexNet ảnh RGB có kích thước 256x256 pixel Tồn ảnh tập train tập test có kích thước 256x256 Nếu ảnh khơng có kích thước 256x256, ảnh chuyển kích thước 256x256 Những hình có kích thước nhỏ 256 phóng bự lên đến kích thước 256, hình có kích thước lớn 256 cắt loại phần thừa để nhận hình có kích thước 256x256 Hình ví dụ việc điều chỉnh ảnh kích thước 256x256 Hình Điều chỉnh ảnh 256px Nếu ảnh đầu vào ảnh xám (grayscale), ảnh chuyển đổi thành định dạng RGB cách tạo layer kênh màu giống từ ảnh xám Sau chuẩn hố hết tất ảnh dạng 256x256x3, nhóm tác giả sử dụng phần ảnh có kích thước 227x227x3 ảnh làm đầu vào cho mạng neural network 3.2 Kiến Trúc AlexNet Hình 2.AlexNet bao gồm convolution Layer Fully connected Layers Những convolution layer ( hay gọi với tên khác filter) rút trích thơng tin hữu ích ảnh Trong convolution layer thường bao gồm nhiều kernel có kích thước Ví dụ convolution layer AlexNet chứa 96 kernel có kích thước 11x11x3 Thơng thường width height kernel nhau, độ sâu (depth) thường số lượng kênh màu Convolutional convolution kết nối với qua Overlapping Max Pooling Tương tự convolution convolution Convolutional 3, convolution 4, convolution kết nối trực tiếp với nhau, không thông qua trung gian Convolutional kết nối fully connected layter thông qua Overlapping Max pooling, mà fully connected layter Và cuối phân lớp softmax với 1000 lớp nhãn (các bạn xem hình kiến trúc mạng AlexNet để có nhìn tổng quát hơn) ReLU nonlinerity sử dụng sau tất các convolution fully connected layer Trước đây, ReLU nonlinerity lớp convolution thường theo sau bước chuẩn hoá cục (local normalization) thực pooling 3.3 Overlapping Max Pooling Max Pooling layer thường sử dụng để giảm chiều rộng chiều dài tensor giữ nguyên chiều sâu Overlapping Max Pool layter tương tự Max Pool layter, ngoại trừ việc window bước có phần chồng lên window bước Ta sử dụng pooling có kích thước 3x3 bước nhảy pooling Nghĩa pooling pooling khác overlapping với pixel Các thí nghiệm thực tế chứng minh việc sử dụng overlapping pooling giúp giảm độ lỗi top-1 error 0.4% top-5 error 0.3% so với việc sử dụng pooling có kích thước 2x2 bước nhảy (vector output hai có số chiều nhau) 3.4 ReLu Nonlinearity Một cải tiến quan trọng khác AlexNet việc sử dụng hàm phi tuyến ReLU Trước đây, nhóm nghiên cứu thường sử dụng hàm kích hoạt hàm Tanh hàm Sigmoid để huấn lun mơ hình neural network AlexNet rằng, sử dụng ReLU, mơ hình deep CNN huấn luyện nhanh so với viêc sử dụng sigmoid Hình rút từ báo với việc sử dụng ReLU (đường nét liền hình), AlexNet đạt độ lỗi 25% tập huấn luyện nhanh gấp lần so với mơ hình tương tự sử dụng Tanh (đường nét đứt hình) Thí nghiệm sử dụng tập liệu CIFAR-10 để huấn luyện Hình 3.So sánh tốc độ huấn luyện ReLu Tanh Để hiểu rõ lý ReLU lại nhanh so với hàm khác, đối sánh hình dạng giá trị output hàm Công thức ReLU là: f(X) = max(0,x) Hình 4.Giá trị bão hồ hàm Tanh hình 4, ta có nhận xét rằng: hàm đạt giá trị bão hoà giá trị z >2.5 z < -2.5 (số 2.5 số cảm tính mình) Và vùng |z|>2.5, độ dốc hàm gần 0, |z| lớn độ dốc gần Vì lý nên gradient descent hội tụ chậm Còn hàm ReLU, với giá trị z dương độ dốc hàm không gần hàm Điều giúp cho việc hội tụ xảy nhanh Với giá trị z âm, độ dốc 0, nhiên, hầu hết giá trị neural mạng thường có giá trị dương, nên trường hợp âm (hiếm) xảy ReLU huấn luyện nhanh so với sigmoid lý tương tự 3.5 Reducing overfitting 3.5.1 Overfitting gì? Khi dạy đứa trẻ từ 2-5 tuổi việc cộng hai số, chúng học nhanh trả lời hầu hết câu hỏi mà dạy chúng Tuy nhiên, chúng trả lời sai câu hỏi lắc léo chút (câu hỏi tương tự câu dạy, thêm xíu thơng tin đòi hỏi trẻ phải suy nghĩ), câu hỏi chưa dạy Lý chúng trả lời sai câu hỏi trả lời câu hỏi dạy, chúng thường nhớ lại câu trả lời, không thực hiểu câu hỏi Cái Việt Nam ta gọi học vẹt Tương tự vậy, Neural network thân có khả học dạy, nhiên, trình huấn luyện bạn khơng tốt, mơ hình có khả giống đứa trẻ kia, hồi tưởng lại dạy cho chúng mà không hiểu chất Và kết Neural Network hoạt động tốt tập huấn luyện (nhưng chúng không rút chất vấn đề), kết tập test tệ Người ta gọi trường hợp là overfitting 3.5.2 Augmentation Việc sử dụng nhiều biến thể khác hình giúp ngăn mơ hình khơng bị overfitting Với việc sử dụng nhiều biến thể hình, bạn bắt ép mơ hình khơng học vẹt liệu Có nhiều cách khác để sinh liệu dựa vào liệu có sẵn 3.5.3 Data augmentation by mirroring Ý tưởng việc lấy ảnh gương hình (ảnh ảo) Nhìn vào ảnh bên dưới, bên trái hình gốc mèo tập huấn luyện, bên phải ảnh mèo thêm hiệu ứng hình qua gương (đơn giản xoay qua trục y ) Hình 5.Hiệu ứng hình qua gương 3.5.4 Data augmentation by random crops Việc lựa chọn vị trí ảnh gốc cách ngẫu nhiên giúp có thêm ảnh khác so với ảnh gốc ban đầu Nhóm tác giả AlexNet rút trích ngẫu nhiên ảnh có kích thước 227x227 từ ảnh 256x256 ban đầu làm input đầu vào cho mơ hình Bằng cách này, tăng số lượng liệu lên gấp 2048 lần việc sử dụng cách 10 Hình 7.Mơ hình huấn luyện II.BÀI TỐN NHẬN DẠNG BẰNG MẠNG NƠ-RON TÍCH CHẬP Cách Thức Hoạt Động Phương pháp bao gồm bước khác để thực nhận diện khuôn mặt tự động Đầu tiên thực phát khuôn mặt để khoanh vùng khuôn mặt khung hình ảnh video Sau đó, liệu bước đuợc liên kết với khuôn mặt phát với danh tính chung video chỉnh khuôn mặt thành tọa độ cách sử dụng mốc phát Cuối cùng, hệ thống thực xác minh khuôn mặt để tính tốn độ tương tự cặp hình ảnh / video Hình 8.Tổng quan phương pháp nhận dạng khn mặt người mạng nơ ron tích chập 12 Hình 9.Thiết kế mạng nơ-ron để xử lý ảnh Từ mạng nơ ron trên, ta thấy bước xử lý ảnh từ trái sang phải Lần lượt, ta thấy hình ảnh cửa sổ dị tìm (ô vuông màu xanh) giảm dần hiệu chỉnh dần theo giai đoạn dị tìm: Hình 10.Các giai đoạn dị tìm hiệu chỉnh Nhận Diện Khn mặt Tất khn mặt khung hình ảnh / video phát hệ thống dị khn mặt dựa mạng nơ ron tích chập sâu (Deep Convolutional Neural Network – DCNN), gọi Mơ hình tháp sâu để phát khuôn mặt (Deep Pyramid Deformable Parts Model for Face Detection - DP2MFD), bao gồm hai mơ-đun Mơđun tạo hình tháp sâu chuẩn hóa bảy cấp cho hình ảnh đầu vào có kích thước tùy ý Kiến trúc mạng nơ ron tích chập tương tự Alexnet, sử dụng để trích xuất tính sâu Mạng hình tháp tạo tháp gồm 256 đồ đặc trưng lớp tích chập thứ (conv5) Bộ lọc 3*3 áp dụng để có lớp 13 max5 Thơng thường, cường độ kích hoạt cho vùng khn mặt giảm theo kích thước cấp độ tháp Do đó, khn mặt lớn phát cửa sổ trượt có kích thước cố đinh cấp độ tháp thấp có điểm phát cao so với khuôn mặt nhỏ phát cấp độ tháp cao Để giảm độ lệch cho kích thước khn mặt, hệ thống áp dụng bước chuẩn hóa điểm z tính max5 cấp Đối với vectơ đặc trưng 256 chiều tính sau: Trong đó, cấp tháp i vị trí (j, k), tính chuẩn hóa vectơ đặc trưng trung bình độ lệch chuẩn cho cấp độ tháp i Các tính max5 chuẩn hóa Sau đó, tính có độ dài từ vị trí tháp trích xuất cách sử dụng phương pháp cửa sổ trượt Mơ-đun thứ hai SVM tuyến tính (linear SVM), lấy tính làm đầu vào để phân loại vị trí mặt, khơng phải mặt, dựa điểm tính tốn Mơ hình tháp sâu để phát khn mặt - DP2MFD có khả nhận diện tốt độ sáng ảnh khác nhau, kích cỡ khn mặt Chúng ta thấy thơng qua ví dụ sau: Hình 11.Kết phát mẫu ảnh IJB-A phương pháp tháp sâu Phát Hiện Các Điểm Quan Trọng Trên Khuôn Mặt Khi khuôn mặt phát hiện, thuật toán thực phát điểm quan trọng để chỉnh khn mặt Thuật tốn tìm cách khơi phục mặt hình dáng mặc định ban đầu: gọi khn mặt I, hình dạng ban đầu S , thuật tốn tính tốn mức tăng hình dạng ∆S từ mô tả sâu (deep descriptors) cập nhật cơng thức sau: 14 Các tính CNN (được biểu thị Φ công thức trên) thiết kế với bước nhảy cách gộp hợp lý, sử dụng làm tính để thực tính tốn Ở đây, kiến trúc CNN sử dụng tương tự Alexnet với trọng số xử lý trước cho liệu ImageNet hình sau: Hình 12 Kiến trúc DCNN sử dụng để trích xuất mơ tả cục cho nhiệm vụ phát điểm mốc khn mặt Vì mục tiêu mạng CNN phát khuôn mặt Do đó, mạng chỉnh để xử lý liệu khuôn mặt tốt Các liệu đầu tầng liệu đầu vào tầng Trong hình trên, thấy có tầng Sau hồn thành phát mốc, khuôn mặt chỉnh theo tọa độ cách sử dụng phép biến đổi điểm mốc Điều giúp mạng tìm hiểu đặc điểm cụ thể khuôn mặt Hơn nữa, mạng áp dụng hồi quy theo tầng, đầu tạo giai đoạn sử dụng làm đầu vào cho giai đoạn tiếp theo, tổng năm giai đoạn tích chập áp dụng hệ thống Các lọc chọn để trích xuất tính tinh chỉnh giai đoạn sau để cải thiện việc chuẩn hóa mốc khn mặt Sau hồn thành phát mốc khuôn mặt, khuôn mặt chỉnh theo tọa độ tắc cách sử dụng biến đổi tương tự điểm mốc 15 Hình 13.Ví dụ điểm mốc khuôn mặt Liên Kết Khn Mặt Vì có nhiều đối tượng xuất khung hình video, nên việc thực liên kết khuôn mặt để gán khuôn mặt cho đối tượng tương ứng bước quan trọng để chọn đối tượng xác minh khn mặt Do đó, khn mặt khung hình video phát hiện, hệ thống theo dõi khuôn mặt cách tích hợp kết từ trình phát khn mặt, trình theo dõi khn mặt bước liên kết khn mặt Hệ thống áp dụng thuật tốn nhận diện khn mặt khung hình phương pháp nhận diện khn mặt trình bày phần trước Vùng phát khuôn mặt coi khuôn mặt khơng có tỷ lệ trùng lặp với vùng phát khung hình trước Tỷ lệ trùng lặp vùng phát phát vùng phát khung hình trước xác định là: Qua thực nghiệm, ngưỡng 0,2 đủ để coi xuất khuôn mặt mới, khung hình video cách phần nhỏ giây Để theo dõi khuôn mặt, nhà khoa học sử dụng giải thuật Kanade-Lucas-Tomasi (KLT) để theo dõi khn mặt hai khung hình liên tiếp Hệ thống cập nhật vùng phát trình theo dõi dựa vào khung hình Vùng phát thay cho vùng phát nhỏ ngưỡng (0,2) Q trình theo dõi khn mặt bị chấm dứt khơng có phát khn mặt tương ứng chồng chéo với cho nhiều t khung hình Hệ thống thường đặt giới hạn t khung hình, dựa sở thực nghiệm Hình ảnh kết phương pháp liên kết khn mặt cho video JANUS CS2: 16 Hình 14.Kết mẫu phương pháp liên kết khuôn mặt cho video JANUS CS2, liệu mở rộng IJB-A III ẢNH MÀU VÀ CÁC LỆNH XỬ LÝ ẢNH MÀU TRONG MATLAB Ảnh số Ảnh số tập hợp điểm ảnh với mức xám phù hợp dùng để mô tả ảnh gần với ảnh thật.Khi ảnh số hố trở thành ảnh số ảnh số lại tập hợp nhiều phần tử ảnh gọi điểm ảnh “pixel”.Mỗi điểm ảnh lại biểu diễn dạng số hữu hạn bit Có thể chia làm loại khác : Ảnh đen trắng : điểm ảnh biểu diễn 1bit Ảnh Gray-scale : điểm ảnh biểu diễn mức chói khác nhau,thường ảnh biểu diễn 256 mức chói bit cho điểm ảnh Ảnh màu : điểm ảnh chia thành tín hiệu chói tín hiệu màu Ảnh màu Tất màu tạo từ màu bản:đỏ(Red),lam(Blue),lục(Green), màu trộn với theo tỉ lệ định để tạo màu thứ cấp Phương trình màu: Y=0.2989*R+0.58662*G+0.11448*B Các sở màu Ví dụ:Đỏ+Lục=Vàng Lục+Lam=Xanh Trong hệ màu RGB màu mơ tả điểm bên hình lập phương.Ở gốc toạ độ (0,0,0) màu đen.Trên trục toạ độ dương màu đỏ,lục,lam.Khi ánh sáng từ điểm riêng biệt cộng dồn với để tạo màu khác (0,0,0) :Màu đen (255,255,255) :Màu trắng (255,0,0) :Màu đỏ 17 (0,255,0) (0,0,255) (255,255,0) (0,255,255) (255,0,255) :Màu xanh :Màu xanh lam :Màu vàng :Màu xanh ngọc :Màu hồng sẫm Các định dạng ảnh xử lý ảnh Định dạng ảnh IMG:là ảnh đen trắng ,phần đầu IMG có 16byte chứa thơng tin Định dạng ảnh GIF:là định dạng tập tin hình ảnh bitmap cho hình ảnh dùng 256 màu sắc khác hoạt hình 256 màu cho khung hình Định dạng JPEG :là phương pháp nén ảnh hiệu có tỷ lệ nén ảnh tới vài chục lần 3.1 Các kiểu hình ảnh Matlab Image processing Toolbox Matlab hỗ trợ bốn kiểu biểu diễn hình ảnh gồm: Ảnh số,ảnh độ sáng,ảnh nhị phân,ảnh RGB Ảnh số :Với cách biểu diễn ảnh này,mỗi ảnh biểu diễn hai ma trận,một ma trận liệu X ma trận màu (còn gọi đồ màu) Ảnh độ sáng :Mỗi ảnh biểu diễn ma trận hai chiều,trong giá phần tử cho biết độ sáng (hay mức xám) điểm ảnh trị Ảnh RGB :Ảnh RGB gọi ảnh “true color” tính trung thực ảnh.Ảnh biểu diễn ma trận chiều có kích thước mxnx3 với mxn kích thước ảnh theo pixel 3.2 Chuyển đổi kiểu liệu Chúng ta chuyển đổi kiểu liệu uint8,uint16 double nhờ sử dụng hàm chuyển đổi Matlab im2double,im2uint8,im2uint16, cú pháp hàm đơn giản,chỉ cần nhập vào ma trận cần chuyển kiểu,riêng với ảnh indexed cần thêm vào chuỗi “indexed” Tuy nhiên cần lưu ý vấn đề sau chuyển đổi ảnh : Khi chuyển đổi từ ảnh nhiều bit sang ảnh bit số thông tin ảnh đầu,chất lượng ảnh giảm Khi chuyển đổi kiểu liệu indexed,cần lưu ý thông tin ma trận địa bảng đồ màu giá trị màu nên lúc chuyển dổi được.Muốn chuyển đổi ta phải dùng hàm imapprox để giảm số màu cần biểu diễn ảnh xuống chuyển 18 3.3 Các phép toán số học liệu ảnh Các phép toán bao gồm phép cộng,trừ,nhân,chia.Đây thao tác xử lý ảnh trước thực phép biến đổi phức tạp khác Cú pháp Z=imabsdiff(x,y) Mô tả Trừ tương ứng phần tử y cho phần tử x,trả trị tuyệt đối hiệu Z=imadd(x,y,out_class) Cộng hai ảnh,cộng ảnh với số,out_class kiểu liệu tổng Z=imdivide(x,y) Chia phần tử x cho phần tử y,kết làm tròn Z=imlincomb(i1,k1,k2,a2, ,out_class) Lấy tổ hợp tuyến tính z=k1*a1+k2*a2+ Z=immultiply(x,y) Nhân hai ảnh,ảnh với số Im2=imcoplement(im) Lấy bù ảnh im Z=imsubtrace(x,y) Trừ hai ảnh,ảnh với số Các phép toán học số ảnh IV SƠ ĐỒ KHỐI VÀ CODE CHƯƠNG TRÌNH Sơ đồ khối Để thực chương trình nhận diện khn mặt,sẽ có chương trình riêng kết hợp lại với nhau: Collect Data Phát khuôn mặt Training Huấn luyện hệ thống Test 19 Kiểm tra hệ thống Sơ đồ khối tổng quát chương trình Code chương trình 2.1 Collect data 2.1.1 Code chương trình clc clear all close all warning off; cao=webcam; faceDetector=vision.CascadeObjectDetector; c=100; temp=0; while true e=cao.snapshot; bboxes =step(faceDetector,e); if(sum(sum(bboxes))~=0) if(temp>=c) break; else es=imcrop(e,bboxes(1,:)); es=imresize(es,[227 227]); filename=strcat(num2str(temp),'.bmp'); imwrite(es,filename); temp=temp+1; imshow(es); drawnow; end 20 ... khn mặt, trình theo dõi khn mặt bước liên kết khuôn mặt Hệ thống áp dụng thuật tốn nhận diện khn mặt khung hình phương pháp nhận diện khn mặt trình bày phần trước Vùng phát khuôn mặt coi khn mặt. .. BÀI TOÁN NHẬN DẠNG BẰNG MẠNG NƠ-RON TÍCH CHẬP 11 Cách Thức Hoạt Động 11 Nhận Diện Khuôn mặt 13 Phát Hiện Các Điểm Quan Trọng Trên Khuôn Mặt 14 Liên Kết Khuôn Mặt ... II.BÀI TỐN NHẬN DẠNG BẰNG MẠNG NƠ-RON TÍCH CHẬP Cách Thức Hoạt Động Phương pháp bao gồm bước khác để thực nhận diện khuôn mặt tự động Đầu tiên thực phát khuôn mặt để khoanh vùng khn mặt khung