Bao Cao Do An NhanDienKhuonMat

39 241 0
Bao Cao Do An NhanDienKhuonMat

Đ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

Nhận diện khuôn mặt sử dụng neural network . Một trong các bài toán nhận dạng con người rất được quan tâm hiện nay là nhận dạng khuôn mặt. Bước đầu tiên của bài toán nhận diện mặt người là phát hiện khuôn mặt, tức là xác định vị trí khuôn mặt trên ảnh, sau đó tách khuôn mặt ra khỏi ảnh để đưa vào nhận dạng. Đây là bước rất quan trọng, đóng vai trò chủ yếu quyết định sự chính xác của hệ thống nhận dạng con người. Đề ataif này sywr dụng MATLAB và Microsoft Visual Studio để tthuwcj hiện triển khai trân cơ sở mạng Neural Network.

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG BÁO CÁO ĐỒ ÁN I Đề tài: THIẾT KẾ PHẦN MỀM PHÁT HIỆN MẶT NGƯỜI SỬ DỤNG ARTIFICIAL NEURAL NETWORK Nhóm sinh viên thực hiện: Hà Nội, 12-2017 MỤC LỤC MỤC LỤC DANH MỤC HÌNH VẼ DANH MỤC BẢNG BIỂU .5 LỜI NÓI ĐẦU Chương I TÌM HIỂU VÀ PHÂN TÍCH U CẦU .2 1.1 Đặc tả chức 1.1.1 Yêu cầu chức 1.1.2 Yêu cầu phi chức 1.2 Cơ sở lý thuyết .3 1.2.1 Lý thuyết xử lý ảnh số 1.2.2 Phương pháp phát mặt ảnh Eigenface 1.2.3 Tổng quan Artificial Neural Neuwork 11 1.3 Lập kế hoạch 15 1.3.1 Khởi tạo dự án 15 1.3.2 Phân tích tính khả thi 15 1.3.3 Kế hoạch thực 15 Chương II PHÂN TÍCH VÀ THIẾT KẾ .17 2.1 Sơ đồ chức 17 2.2 Khối xử lý ảnh đầu vào 17 2.2.1 Xử lý ảnh xám .19 2.2.2 Tăng độ tương phản cho ảnh xám 21 2.3 Mạng neuron 23 2.3.1 Class Neuron 25 2.3.2 Class Network .26 2.4 Training mạng neuron 27 2.5 Tạo liệu tính tốn 28 2.6 Giao diện .29 Chương KẾT QUẢ THỰC HIỆN VÀ ĐÁNH GIÁ PHẦN MỀM .30 3.1 Kết thực 30 3.2 Đánh giá kết : 30 KẾT LUẬN 32 TÀI LIỆU THAM KHẢO .33 DANH MỤC HÌNH V Hình 1.1 Minh họa trực quan ý tưởng phương pháp PCA[2] Hình 1.2 Hình ảnh khn mặt huấn luyện tiêu chuẩn [2] Hình 1.3 Biểu diễn khn mặt dựa eigenfaces [2] .10 Hình 1.4 Quá trình xử lý thơng tin neuron[3] 12 Hình 1.5 Cấu trúc mạng ANN[4] 13Y Hình 2.1 Sơ đồ khối chức hệ thống phát mặt người 17 Hình 2.2 Sơ đồ khối xử lý ảnh đầu vào 18 Hình 2.3 Ảnh màu đưa vào xử lý 20 Hình 2.4 Ảnh xám thu 21 Hình 2.5 Sơ đồ minh họa cấu trúc mạng neuron trình Feed forward 24 Hình 2.6 Sơ đồ trình training cho mạng neuron 27 Hình 2.7 Sơ đồ mơ hình mạng neuron training 28 Hình 2.8 Giao diện phần mềm thiết kế 30 DANH MỤC BẢNG BIỂU Bảng 1 Kế hoạch thực công việc 15 LỜI NÓI ĐẦU Hiện nay, với phát triển xã hội, vấn đề an ninh bảo mật yêu cầu khắt khe quốc gia giới Các hệ thống nhận dạng người đời với độ tin cậy ngày cao Một toán nhận dạng người quan tâm nhận dạng khuôn mặt Bước toán nhận diện mặt người phát khn mặt, tức xác định vị trí khn mặt ảnh, sau tách khn mặt khỏi ảnh để đưa vào nhận dạng Đây bước quan trọng, đóng vai trò chủ yếu định xác hệ thống nhận dạng người Mặt khác, thời gian gần đây, học máy xu hướng cơng nghệ phát triển, có nhiều ứng dụng hiệu Xuất phát từ yêu cầu đó, đề tài ”Phát khuôn mặt dùng mạng Neuron nhân tạo” ESRC Lab đời Trong giới hạn môn Thiết kế Đồ án 1, nhóm tập trung hồn thiện vấn đề mặt phần mềm hệ thống, đảm bảo hệ thống hoạt động tốt dự kiến ban đầu Chúng em xin chân thành cảm ơn hướng dẫn tận tình PGS TS Phạm Ngọc Nam, giúp đỡ anh chị bạn nhóm “Phát khn mặt dùng mạng Neural nhân tạo” phòng nghiên cứu hệ thống nhúng tính tốn khả cấu hình giúp chúng em thực đề tài 1|Page Chương I TÌM HIỂU VÀ PHÂN TÍCH YÊU CẦU 1.1 Đặc tả chức 1.1.1 Yêu cầu chức Bài toán yêu cầu xây dựng phần mềm với giao diện cho phép người dùng thực chức sau:  Load file ảnh: Cho phép người sử dụng load vào ảnh có định dạng để thực phát vị trí khn mặt ảnh  Phát khn mặt: Khi người dùng ấn nút Detect, phần mềm đóng khung phần ảnh có khn mặt người  Sau ảnh phát xong, người dùng báo message  Có phần trợ giúp giúp người dùng hình dung bước cần làm phận mềm  Sau phát xong, người dùng có nút Exit để kết thúc 1.1.2 Yêu cầu phi chức Yêu cầu giao diện: Giao diện đơn giản, dễ sử dụng gồm cửa sổ ảnh nút bấm chọn: Load image, Detect face, Help, Exit  Độ xác: - Chương trình hoạt động tốt với ảnh đầu vào có kích thước nhỏ 960x1280 - Phát 90% số khn mặt có ảnh đầu vào - Khoanh vùng khn mặt hình chữ nhật nhỏ bao quanh khuôn mặt - Số vùng ảnh bị phát nhầm (không phải khuôn mặt phát khuôn mặt) nhỏ 10% tổng số khuôn mặt phát - Ảnh không bị suy giảm chất lượng sau phần mềm thực phát mặt 2|Page  Hiệu suất: - Thời gian xử lí ảnh phần mềm khơng lớn 10 giây  Thiết kế: - Ngôn ngữ: Phần mềm viết ngôn ngữ C++ - Chạy tảng Windows, có khả tương thích hoạt động ổn định nhiều phiên Windows khác  Hướng phát triển: - Từ chức phần mềm phát triển thêm chức khác lưu ảnh sau phát hiện, phát mặt từ video hay nhận diện khuôn mặt 1.2 Cơ sở lý thuyết Nội dung mục lý thuyết ảnh số phương pháp phát khuôn mặt phương pháp Eigenface, sở lý thuyết mạng neuron nhân tạo - Artifical Neural Network (ANN) 1.2.1 Lý thuyết xử lý ảnh số Ảnh số tập hợp hữu hạn điểm ảnh có mức xám phù hợp để mơ tả ảnh gần với ảnh thật tốt Số điểm ảnh xác định độ phân giải ảnh Ảnh có độ phân giải cao thể rõ đặc điểm chi tiết hình ảnh làm cho ảnh sắc nét có độ chân thực cao [1] Điểm ảnh (Pixel): phần tử ảnh số toạ độ (x, y) với độ xám màu định Kích thước khoảng cách điểm ảnh chọn thích hợp cho mắt người cảm nhận liên tục không gian mức xám (hoặc màu) ảnh số gần ảnh thật Mỗi phần tử ma trận gọi phần tử ảnh Kích thước pixel thùy thuộc vào định dạng ảnh Với định dạng ảnh bitmap, pixel có kích thước 24 bits, tức byte, byte tương ứng với giá trị R, G, B ảnh (ảnh RGB đề cập đến sau mục này) Với định dạng ảnh khác JPEG, PNG, ảnh nén lại, pixel có kích thước nhỏ hơn, kích thước toàn 3|Page ảnh giảm xuống nhiều, vài trăm KB so với kích thước vài MB ảnh bitmap Vì lý mà ảnh số phổ biến thường định dạng theo kiểu JPEG, PNG, … Tuy nhiên, này, ảnh số xử lý mặc định dạng ảnh bitmap Microsoft Visual 2012 hỗ trợ đọc xuất ảnh định dạng bitmap Mức xám ảnh: Là kết biến đổi tương ứng giá trị độ sáng điểm ảnh với giá trị nguyên dương Thông thường xác định [0, 255] tuỳ thuộc vào giá trị mà điểm ảnh biểu diễn Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256 (Mức 256 mức thông dụng) Lý do: từ kỹ thuật máy tính dùng byte (8 bit) để biểu diễn mức xám Mức xám dùng byte biểu diễn: 2^8 = 256 mức, tức từ đến 255) Độ phân giải ảnh (Resolution): mật độ điểm ảnh ấn định ảnh số hiển thị.Theo định nghĩa, khoảng cách điểm ảnh phải chọn cho mắt người thấy liên tục ảnh Việc lựa chọn khoảng cách thích hợp tạo nên mật độ phân bố phù hợp, độ phân giải phân bố theo trục x trục y không gian hai chiều Ví dụ: Độ phân giải ảnh hình CGA lưới điểm theo chiều ngang hình: 320 điểm chiều dọc x 200 điểm ảnh (320x200) Các loại ảnh số:  Ảnh nhị phân: Giá trị xám tất điểm ảnh nhận giá trị điểm ảnh ảnh nhị phân biểu diễn bit  Ảnh xám: Giá trị xám nằm [0, 255] điểm ảnh ảnh xám biểu diễn byte  Ảnh màu: 4|Page Có nhiều khơng gian màu khác RGB, HSV, YCbCr, … Tùy vào môi trường hiển thị mà người ta lựa chọn không gian màu phù hợp Trong đó, khơng gian màu mà quen thuộc khơng gian màu RGB – khơng gian màu sử dụng mơ hình bổ sung ánh sáng đỏ, xanh lục xanh lam tổ hợp với theo nhiều phương thức khác để tạo thành màu khác Từ viết tắt RGB tiếng Anh có nghĩa đỏ (red), xanh lục (green) xanh lam (blue), ba màu gốc mơ hình ánh sáng bổ sung Một pixel biểu diễn giá trị (R, G, B) R, G, B giá trị xám biểu biểu diễn byte Khi ta có ảnh 24 bits Trong thực tế xử lý ảnh số, người ta quan tâm đến xử lý chi tiết ảnh, màu sắc ảnh (màu sắc ảnh chuyển đổi dễ dàng từ màu sang màu sử dụng công thức chuyển đổi giá trị phù hợp) Do đó, tốn nhận dạng, ta cần chuyển ảnh dạng ảnh xám trước thực thao tác xử lý khác 1.2.2 Phương pháp phát mặt ảnh Eigenface Hiện có nhiều phương pháp phát khn mặt người tìm Trong Project này, phương pháp sử dụng PCA, phương pháp theo hướng tiếp cận dựa diện mạo PCA - Principle Component Analysis, nghĩa phân tích thành phần quan trọng nhất, phương pháp phân tích liệu nhiều biến đơn giản Nội dung mục lấy từ tài liệu [2] a Ý tưởng phương pháp PCA Trong toán thống kê xử lý ảnh, thông thường phải nghiên cứu trước liệu để lựa chọn cách xử lý tốt nhất, Tuy nhiên phần lớn trường hợp, liệu có số chiều lớn, khó mơ hình hóa được, cần phải đưa liệu khơng gian có số chiều nhỏ Mục tiêu PCA tìm không gian mới, với số chiều nhỏ số chiều không gian cũ, để thể liệu cho thông tin quan trọng liệu không bị 5|Page - Dùng hàm CBitmap.getWidth() , CBitmap.getHeight() để xác định độ rộng vào cao ảnh - Hàm CBitmap.getPitch() để xác định độ lệch địa từ đầu mảng đến hàng - Khi đó, địa thành phần R, G, B pixel (x, y) là: pData + pitch * y + x, pData + pitch * y + x + pData + pitch * y + x + 2, với pData giá trị trả hàm getBits - Để ảnh thu ảnh xám ta đặt giá trị R, G, B địa cho thành giá trị Gray công thức (2.1) Dưới kết chuyển đổi ảnh màu từ hình 2.3 sang ảnh xám hình 2.4: Hình Ảnh màu đưa vào xử lý 20 | P a g e Hình Ảnh xám thu 2.2.2 Tăng độ tương phản cho ảnh xám Để tăng tính sắc nét cho ảnh ta tính tốn đảm bảo giá trị mức xám tất pixel phân bố khoảng từ đến 255 không phân bố tập hợp nhỏ khoảng [6] Trước tiên, ta tìm hiểu khái niệm histogram ảnh Histogram ảnh đồ thị thể phân bố giá trị mức xám ảnh Để tăng độ tương phản ảnh, ta cần phân bố lại mức xám ảnh toàn miền [0, 255] Phương pháp dùng gọi phương pháp dãn đồ thị Phương pháp gồm bước sau 2.2.2.1 Tính tốn histogram Đầu tiên, để tính tốn đồ thị, ta tạo mảng histogram có với kiểu unsigned int unsigned char (phù hợp với khoảng giá trị mức xám) Mảng gồm 256 phần tử, số phần tử giá trị mức xám ảnh, phần tử có giá trị tổng số pixel có giá trị mức xám số ảnh khởi tạo với giá trị Giá trị histogram phần tử tính đơn giản cách quét toàn 21 | P a g e pixel tăng giá trị phần tử histogram có số giá trị mức xám pixel Việc thực nhờ dòng code sau: unsigned char histogram [ 256 ] ; // tạo mảng histogram memset(histogram, 0, 256 ); //đặt giá trị cho tất phần tử //mảng giá trị for ( int i = ; i < this->sx * this->sy; i++ ) //duyệt toàn //pixel ảnh histogram[this->pData[ i ]]++ ; // tăng giá tri phần tử có số mức xám pixel xét a Xác định ngưỡng CutOff Để xác dãn histogram, ta cần xác định khoảng [l, b] để từ ánh xạ vào khoảng [0, 255] Ta bỏ 5% giá trị histogram nhỏ lớn ảnh để loại bỏ ảnh hưởng nhiễu Do ta cần xác định hai số lowerPercentile upperPercentile, biểu diễn số pixel có mức xám cao thấp cần loại bỏ Các dòng code xác định ngưỡng CutOff: const float cutOffPercentage = (float) 0.005; // cut 5% unsigned int histAccu = ; // khai báo biến chứa giá trị tổng số pixel // toàn ảnh unsigned char lowerBound , upperBound; // giá trị mức xám l, b const unsigned int lowerPercentile = (int) cutOffPercentage * this->sx * this->sy ; // số pixel mức thấp bị loại bỏ const unsigned int upperPercentile = (int) ( - cutOffPercentage ) * this->sx * this->sy; // số pixel mức cao bị loại bỏ for (int h = ; h < 256 ; h++ ) // quét toàn mảng histogram { histAccu += histogram [ h ] ; // tính tốn tổng pixel if ( histAccu = upperPercentile ) { upperBound = h ; // ngưỡng cao b mức xám break ; } 22 | P a g e } Ở lowerBound upperBound giá trị ngưỡng l, b b Dãn đồ thị phân bố mức xám Giãn đồ thị phân bố mức xám việc ảnh xạ giá trị khoảng [l, b] vào khoảng [0, 255] const float histScale =(float) 255 / ( upperBound - lowerBound ) ; // tỉ lệ //dãn khoảng for ( int i = ; i < this->sx * this->sy ; i++ ) // quét toàn pixel { const int newVal = histScale * ( ( int ) pData [ i ] - lowerBound ) ; // giá trị điểm ảnh pData [ i ] = (unsigned char)(int) ((newVal > && newVal < 255) ? newVal : (newVal < ? 255 : 0)); // gán giá trị cho điểm ảnh } Trên đoạn code thực thao tác dãn đồ thị phân bố mức xám Để đảm bảo giá trị khoảng đầu ánh xạ đến giá trị khoảng [0, 255], giá trị l phải ánh xạ đến giá trị 0, giá trị b phải ánh xạ đến giá trị 255 Do đó, ta có tỉ lệ dãn khoảng histScale tính Sau đó, ta tính giá trị vào histScale Nhằm đảm bảo cho giá trị ảnh khơng nằm ngồi khoảng [0, 255] , ta cần xét giá trị tính gán cho điểm ảnh 2.3 Mạng neuron Sau tiền xử lý ảnh, vector đặc trưng cửa sổ đưa vào mạng neuron để phát khuôn mặt Mạng neuron thiết kế với cấu trúc giống mạng neuron dùng để training phần mềm Matlab với lớp: Input Layer, Hidden Layer Output Layer hình 2.5: 23 | P a g e Hình Sơ đồ minh họa cấu trúc mạng neuron trình Feed forward Trong hình 2.5 trên:  Input Layer: gồm 86 phần tử ứng với vector đặc trưng cửa sổ  Hidden Layer: gồm 100 neuron, neuron có đầu vào đầu Đầu vào neuron lớp Hidden tính từ tất phần tử trọng số tương ứng Các trọng số thiết lập từ trình Training mạng neuron phần mềm Matlab Đầu neuron phụ thuộc vào đầu vào transfer function  Output Layer: Layer gồm neuron Tương tự Neural Hidden Layer, neural có đầu vào phụ thuộc theo trọng số vào tất neural lớp trước (Hidden Layer) Đầu neural đầu mạng Neural 24 | P a g e Từ mơ hình này, ta thiết lập class theo mơ hình hướng đối tượng class Neuron class Network 2.3.1 Class Neuron Class Neuron thiết kế với thuộc tính phương thức sau: class Neuron { private: double a; Weight my_weight; double my_bias; public: Neuron(Weight weight, double bias); // Input va Output // Ham tao neuron double getOutputVal(void){ return a; } Weight getWeight(void){ return my_weight; } Bias getBias(void){ return my_bias; } double tansigFunction(double x); double normlizeOutput(double a); double caculateHidenLayer(Layer &previousLayer);// Caculate double caculateInputLayer(vector &inputVal); }; Trong đó: - a đầu neuron my_weight w neuron my_bias b neuron Các thông số hình 2.5 Cùng với hàm phương thức Neuron sau : - Hàm tạo neuron với thông số weight bias cho trước Hàm trả kết tính tốn neuron Hàm trả liệu weight neuron Hàm trả bias neuron double tansigFunction(double x) Là hàm transfer neuron Phương thức tính tốn đầu từ lớp input 25 | P a g e - Phương thức chuẩn hóa đầu neuron (chỉ áp dụng cho lớp output để đưa - kết có khoảng từ [-1 ; 1] khoảng [0 ; 1]) Phương thức tính tốn đầu cho neuron thuộc lớp ẩn 2.3.2 Class Network Class Network xây dựng gồm thuộc tính, phương thức hàm sau: class NeuralNet { public: // Ham tao mang neuron voi du lieu la weightData va biasData theo mo hinh cua topology // VD: topology = 86 100 thi tao mang: - 86 dau vao lop input // 100 neuron lop hiden // neuron lop output NeuralNet(vector &topology, vector &weightData, vector &biasData); // Ham lay ket qua cua mang double getResult(){ return my_output; }; void getInput(vector &inputVal); // FeedForwar process double feedForward(vector &inputVal, vector &DataNorm); Input normlizeInput(Input &inputval, vector &DataNorm); private: vector my_net; // my_net[numLayers][numNeron] double my_output; }; Trong đó: - Vector my_net thuộc tính mạng gồm Layer với Layer - định nghĩa tập đối tượng neuron My_output đầu mạng đầu Neuron lớp output Hàm tạo mạng với topoloy (mơ hình) cho trước Mơ hình thiết kế theo - mạng neuron thực Matlab Phương thức Feed Forward Quá trình thực phương thức trình bày hình 2.5 26 | P a g e 2.4 Training mạng neuron Do q trình training tính tốn phức tạp với thuật toán Backpropagation, phần training phần mềm phát mặt người không cần thiết (mang tính học thuật cao người sử dụng) Vì nhóm chúng em định thực training Matlab để tăng tính hiệu hiệu suất cho phần mềm Quá trình training thực theo sơ đồ hình 2.6 Hình 2.6 Sơ đồ trình training cho mạng neuron Đầu vào tập ảnh xám bao gồm 2429 ảnh mặt 4547 ảnh mặt Tất có kích thước 19x19 xử lý theo phương pháp eigenface nêu chương I Đầu vào mạng neuron học tọa độ xử lý thành dạng vector 361x1 27 | P a g e Tọa độ Ωi ảnh i đưa vào đầu vào mạng neuron để huấn luyện cho mạng phân biệt mặt hay mặt người Tập targets mạng vector 0, Với giá trị tọa độ khn mặt target khơng phải tọa độ khn mặt target Lớp ẩn mạng neuron chọn 100 Hình 2.7 Sơ đồ mơ hình mạng neuron training Sau training xong ta thơng số mạng weight, bias lớp Input Hidden Dữ liệu ghi file txt để làm thông số tương ứng cho mạng thiết kế Visual Studio 2.5 Tạo liệu tính tốn Dữ liệu tính toán bao gồm giá trị max tập tọa độ training Dữ liệu dùng cho mạng neuron để chuẩn hóa đầu vào khoảng [-1, 1] Vector mặt trung bình phục vụ cho việc tính tọa độ cho vector giá trị điểm ảnh để tạo tọa độ đưa vào mạng neuron Ngoài để đảm bảo mạng neuron Visual studio thiết kế xác tập liệu tọa độ dùng để training cho mạng neuron matlab ghi file text để thực kiểm tra độ xác mạng neuron tạo Visual 28 | P a g e 2.6 Giao diện Giao diện phần mềm thực Visual studio thể hình Và có chức sau: - Nhấn nút load ảnh dialog lên cho phép người dùng dẫn đường link ảnh lưu máy tính Sau nhấn xong ảnh hiển thị giao diện phần mềm - Nút Detect có chức thực phát mặt ảnh người sử dụng click vào - Nút Help có chức hiển thị dialog hướng dẫn người dùng cách thực bước phát mặt phần mềm - Nút Exit giúp thoát khỏi trương trình 29 | P a g e Hình Giao diện phần mềm thiết kế 30 | P a g e Chương KẾT QUẢ THỰC HIỆN VÀ ĐÁNH GIÁ PHẦN MỀM 3.1 Kết thực Qua q trình thực nhóm chúng em đạt kết sau: Thực thành công việc xây dựng lớp ảnh với phương thức chuyển đổi lớp mà không phụ thuộc vào thư viện có sẵn Xây dựng mạng neuron xác với kết kiểm tra 2242/2429 mặt Kết hoàn toàn theo Matlab Xây dựng thành công giao diện phần mềm khả phát mặt Tuy nhiên tự thiết kế lớp ảnh nên trình vẽ ảnh hiển thị ảnh gặp nhiều khó khăn đồng thời q trình ghép code thành viên chưa thuận lợi dẫn đến việc chưa thể vẽ khung hình ảnh mà dừng lại việc xác định tọa độ khn mặt ảnh Vì lý nên nhóm chưa thể đóng gói phần mềm để cài đặt máy tính 3.2 Đánh giá kết : Kết phần mềm phát khuôn mặt nhóm đánh giá dựa tiêu chí sau : - Tốc độ phát mặt - Số khuôn mặt phát tổng số khn mặt có ảnh - Số khung mà phần mềm phát mà mặt Từ tiêu chí kết phần mềm đánh sau ; 31 | P a g e - Phần mềm có tốc độ phát chậm khoảng phút cho ảnh 640x480 Nguyên nhân gây chậm nhóm tìm hiểu khắc phục Một số đề xuất nhóm đưa để cải thiện tốc độ tối ưu mã code, sử dụng mảng trỏ thay vector, giảm số neuron lớp ẩn mạng, giảm số eigenface… Những biện pháp nhóm thực - Độ xác mà phần mềm phát mặt ảnh nhóm tính tốn sử dụng tọa độ mà phần mềm phát so sánh với kết matlab đạt 84% Kết chấp nhận 32 | P a g e KẾT LUẬN 33 | P a g e TÀI LIỆU THAM KHẢO [1] www2.ph.ed.ac.uk/~wjh/teaching/dia/documents/introduction-ohp, truy nhập lần cuối ngày 02/10/2017 [2] M Turk and A.Pentland, “Eigenfaces for Recognition”, Journal of Congnitive Neuroscience, vol 3, no 1, pp 71 – 86, 1991 [3] David Kriesel, 2007, A Brief Introduction to Neural Networks, available at [4] http://bis.net.vn/forums/t/482.aspx, truy nhập lần cuối ngày 11/10/2017 [5] https://msdn.microsoft.com/en-us/library/6t1yfd35.aspx., truy nhập lần cuối ngày 20/12/2017 [6] Marc Schlipsing and Jan Salmen, Image Processing with C/C++, Institut făur Neuroinformatik, Ruhr-Universităat Bochum, August, 2010 34 | P a g e

Ngày đăng: 31/05/2019, 13:04

Mục lục

  • DANH MỤC HÌNH V

  • DANH MỤC BẢNG BIỂU

  • Chương I. TÌM HIỂU VÀ PHÂN TÍCH YÊU CẦU

    • 1.1 Đặc tả chức năng

      • 1.1.1 Yêu cầu chức năng

      • 1.1.2 Yêu cầu phi chức năng

      • 1.2 Cơ sở lý thuyết

        • 1.2.1 Lý thuyết về xử lý ảnh số

        • 1.2.2 Phương pháp phát hiện mặt trong ảnh bằng Eigenface

          • a. Ý tưởng của phương pháp PCA

          • b. Thuật toán PCA trong phát hiện khuôn mặt người

          • c. Tính toán các Eigenfaces

          • 1.2.3 Tổng quan về Artificial Neural Neuwork

            • a. Cấu trúc cơ bản của một neuron

            • b. Cấu trúc của một mạng neuron điển hình

            • c. Các phương pháp huấn luyện mạng ANN

            • Học không có giám sát – Unsupervised learning

            • Học có giám sát – Supervised learning

            • 1.3 Lập kế hoạch

              • 1.3.1 Khởi tạo dự án

              • 1.3.2 Phân tích tính khả thi

              • 1.3.3 Kế hoạch thực hiện

              • Chương II. PHÂN TÍCH VÀ THIẾT KẾ

                • 2.1 Sơ đồ chức năng

                • 2.2 Khối xử lý ảnh đầu vào

                  • 2.2.1 Xử lý ảnh xám

                  • a. Xác định ngưỡng CutOff

                  • 2.5 Tạo dữ liệu tính toán

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

Tài liệu liên quan