1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài hệ thống điểm danh bằng nhận diện khuôn mặt

17 1 0

Đ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 đề Hệ thống điểm danh bằng nhận diện khuôn mặt
Tác giả Nguyễn Hoàng Minh Tiến, Huỳnh Thanh Duy
Người hướng dẫn TS. Nguyễn Văn Thái
Trường học Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh
Chuyên ngành Xử lý ảnh
Thể loại Final Project
Năm xuất bản 2022
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 17
Dung lượng 4,4 MB

Nội dung

Trong hệ thống nh n dậ ạng người thì quá trình nh n d ng khuôn mậ ạ ặt được đánh giá là bướ khó khăn và quan trọc ng nhất so với các bước còn lại của hệ thống.. Nhận d ng khuôn mạ ặt ngư

Trang 1

1

BỘ GIÁO DỤC ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THU T TP H CHÍ MINHẬ Ồ

TP.HỒ CHÍ MINH, NGÀY 17 THÁNG 6 NĂM 2022

FINAL PROJECT

Môn h c: ọ XỬ LÍ ẢNH

Đề tài : HỆ THỐNG ĐIỂM DANH

BẰNG NH N DIỆN KHUÔN M T

SVTH: Nguyễn Hoàng Minh Ti n - 20151577 ế Huỳnh Thanh Duy - 20151180

GVHD: TS Nguyễn Văn Thái

Trang 2

2

LỜI CẢM ƠN Trước tiên chúng em xin được bày t s trân tr ng và lòng biỏ ự ọ ết ơn đối v i thớ ầy giáo Nguyễn Văn Thái Trong suốt quá th i gian hờ ọc và làm đồ án môn h c, thọ ầy đã dành r t nhi u thấ ề ời gian quý báu để t n tình ch bậ ỉ ảo, hướng dẫn, định hướng cho em thực hiện đồ án

Chúng em xin được cảm ơn các thây cô giáo Khoa Điện Điện Tử - Đại Học

Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh đã giảng dạy trong quá trình học tập, thực hành, làm bài t p, giúp em hi u thậ ể ấu đáo hơn các nội dung học t p và nh ng ậ ữ hạn ch c n kh c ph c trong vi c h c t p, nghiên c u và th c hiế ầ ắ ụ ệ ọ ậ ứ ự ện đồ án này

Trang 3

3

MỞ ĐẦU 4

PHẦN 1: GI I THI U TỚ Ệ ỔNG QUAN 5

1.1 T ng quan v ề nhậ n di n khuôn mặt 5

1.2 Phân tích bài toán 5

1.3 Các công cụ 5

1.3.1 Ngôn ng l p trình C#ữ ậ 5

1.3.2 Thư viện EmguCV 6

1.3.3 Visual Studio 6

1.3.4 Thu t toán Haar Like Featureậ 6

PHẦN 2: TRÌNH BÀY GIAO DI N Ệ 7

PHẦN 3: GI I THÍCH CODE 8 Ả PHẦN 4: HOẠT ĐỘNG CỦA CHƯƠNG TRÌNH 13

PHẦN 5: H N CH , K T LU N Ạ Ế Ế Ậ 16

5.1 H n chạ ế 16

5.2 K t luế ận 16

Tài li u tham kh o ệ ả 17

Trang 4

4

MỞ ĐẦU

Khuôn mặt đóng vai trò quan trọng trong quá trình giao ti p giế ữa ngườ ới người v i,

và cũng mang một lượng thông tin giàu có, ch ng h n có th xác ẳ ạ ế định gi i tính, tuớ ổi tác, tr ng thái c m xúc cạ ả ủa người đó, hơn nữa kh o sát chuyả ển động, của các đường nét trên khuôn m t có th ặ ể biết được người đó đang muốn nói gì

Trong hệ thống nh n dậ ạng người thì quá trình nh n d ng khuôn mậ ạ ặt được đánh giá

là bướ khó khăn và quan trọc ng nhất so với các bước còn lại của hệ thống Do đó, nhận dạng khuôn mặt là điều quan trọng và c n thiầ ết

Nhận d ng khuôn mạ ặt người là m t công nghộ ệ được ứng dụng rông rãi trong đời sống h ng ngày cằ ủa con người như các hệ thống giám sát, qu n lí vào ra, tìm kiả ếm thông tin người n i ti ng, có r t nhiổ ế ấ ều phương pháp nhận d ng khuôn mạ ặt để nâng cao hi u su t tuy nhiên dù ít hay nhi u nhệ ấ ề ững phương pháp này đang vấp ph i nhả ững thử thách v ề độ sáng, hướng nghiên, kích thước ảnh, hay ảnh hưởng c a tham s môi ủ ố trường

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 con người, đồ vật được

ra đời và phát triển với độ tin cậy ngày càng cao Với cách tiếp cận đối tượng nhận dạng theo phương pháp này, chúng ta có thể thu nhập đượ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, thu n ti n Trong phậ ệ ạm vi bài báo cáo này chúng em xin được trình bài quá trình th c hiự ện điểm danh qua nh n di n khuôn mậ ệ ặt qua thư viện emgucv Cuối cùng, mặc dù đã cố g ng r t nhiắ ấ ều nhưng do thời gian có h n, kh ạ ả năng dịch và hiểu tài liệu chưa tốtnên nội dung đồ án này không th tránh kh i nh ng thi u sót, rể ỏ ữ ế ất mong được sự chỉ bảo, góp ý c a các th y cô và các bủ ầ ạn

Trang 5

5

PHẦN 1: GIỚI THIỆU TỔNG QUAN

1.1 T ng quan v ề nhậ n di n khuôn mặt

Hơn một thập kỉ qua có rất nhiều công trình nghiên c u v ứ ề bài toán xác định khuôn mặt ngườ ừ ảnh đen trắng, xám đến ảnh màu như ngày nay Các nhà i t nghiên cứu đi từ bài toán đơn giản, mỗi ảnh chỉ có m t mộ ặt người nhìn thẳng vào thiết b ịthu hình và đầu ở tư thế ẳng đứ th ng trong ảnh đen trắ Cho đếng n ngày nay bài toán m r ng cho nh màu, có nhi u khuôn m t trong cùng mở ộ ả ề ặ ột ảnh, có nhiều

tư thế thay đổi trong nh Không ch ả ỉ những th mà còn m r ng c ế ở ộ ả phạm vi t môi ừ trường xung quanh khá đơn giản cho đến môi trường xung quanh ph c t p nhứ ạ ầm đáp ứng nhu cầu của con người

Trong những năm gần đây các ứng d ng v trí tu nhân t o ngày càng phát ụ ề ệ ạ triển và được đánh giá cao Một lĩnh vực đang được quan tâm c a trí tu nhân tủ ệ ạo nhằm t o ra các ng dạ ứ ụng thông minh, có tính người đó là nhận dạng Trong đề tài này chúng em chọn đối tượng là khuôn mặt

1.2 Phân tích bài toán

Bài toán Nh n Di n Khuôn M t (Face Recognition) bao g m các bài toán ậ ệ ặ ồ khác nhau như Phát hiện khuôn mặt (Face detection), đánh dấu (Facial

landmarking), trích chọn (rút) đặc trưng (feature extration), gán nhãn, phân lớp (classification)…

1.3 Các công cụ

Để ả gi i quyết bài toán trong project này chúng em s dử ụng thư viện EmguCV và ngôn ng l p C# trên ph n m m Visual Studio, thu t toán mà chúng ữ ậ ầ ề ậ

em s d ng là thu t toán Haar Like Feature ử ụ ậ

1.3.1 Ngôn ng l p trình C# ữ ậ

C# (hay C sharp) là m t ngôn ng lộ ữ ập trình đơn giản, được phát tri n bể ởi đội ngũ kỹ sư của Microsoft vào năm 2000 C# là ngôn ngữ lập trình hiện đại, hướng đối tượng và được xây d ng trên n n t ng cự ề ả ủa hai ngôn ng m nh nh t là C++ và Java.ữ ạ ấ Trong các ứng dụng Windows truyền thống, mã nguồn chương trình được biên dịch trực tiếp thành mã thực thi của hệ điều hành Trong các ứng dụng sử dụng NET Framework, mã nguồn chương trình (C#, VB.NET) được biên dịch thành mã ngôn ngữ trung gian MSIL (Microsoft intermediate language) Sau đó mã này được biên dịch bởi Common Language Runtime (CLR) để trở thành mã thực thi của hệ điều hành

Trang 6

6

1.3.2 Thư viện EmguCV

EmguCV là thư viện xử lý ảnh dành riêng cho C#, được xây dựng từ OpenCV và có phát triển thêm Thực ra EmguCV là lớp bao của OpenCV do đó EmgCV chỉ khác cách sử dụng, cấu trúc hàm…Trong EmguCV vẫn có thể sử dụng lại các hàm của OpenCV bằng câu lệnh Cvlnvoke

1.3.3 Visual Studio

Visual studio là một trong những công cụ hỗ trợ lập trình website rất nổi tiếng nhất hiện nay của Mcrosoft và chưa có một phần mềm nào có thể thay thế được nó Visual Studio được viết bằng 2 ngôn ngữ đó chính là C# và VB+ Đây là

2 ngôn ngữ lập trình giúp người dùng có thể lập trình được hệ thống một các dễ dàng và nhanh chóng nhất thông qua Visual Studio

Visual Studio là một phần mềm lập trình hệ thống được sản xuất trực tiếp

từ Microsoft Từ khi ra đời đến nay, Visual Studio đã có rất nhiều các phiên bản sử dụng khác nhau Điều đó, giúp cho người dùng có thể lựa chọn được phiên bản tương thích với dòng máy của mình cũng như cấu hình sử dụng phù hợp nhất Bên cạnh đó, Visual Studio còn cho phép người dùng có thể tự chọn lựa giao diện chính cho máy của mình tùy thuộc vào nhu cầu sử dụng

1.3.4 Thu t toán Haar Like Feature

Phát hiện mặt người là bài toán cơ bản được xây dựng từ nhiều năm nay, có nhiều phương pháp được đưa ra như sử dụng template matching, neuron

network…Cho tới nay bài toán này hầu như được giải quyết dựa trên phương pháp

sử dụng các đặc trưng haar like Phương pháp này được cho là đơn giản và kết quả phát hiện là tương đối cao, lên tới 98%, các hãng sản xuất máy ảnh như Canon, Samsung… cũng đã tích hợp nó vào trong các sản phẩm của mình Và trong bài báo cáo này, em sẽ sử dụng phương pháp pháp phát hiện khuôn mặt của Violas và John được cài đặt trong Emgucv

Trang 7

7

PHẦN 2: TRÌNH BÀY GIAO DIỆN

Mặt” Kết thúc bu i hổ ọc ấn nút t ng kổ ết để xem s sinh viên v ng mố ắ ặt, số sinh viên vắt m t s ặ ẽ được hiển th ị ở “Danh Sách Sinh Viên Vắng Mặt”

Trang 8

8

PHẦN 3: GIẢI THÍCH CODE

Khai báo các thư viện cần thiết:

Khởi t o các biến và vector để thao tác:

Chương trình nút nhấn “Bắt đầu”:

Dùng để bật camera và bắt đầu chương trình

Trang 9

9

Chương trình nút nhấn “Thêm Sinh Viên”:

Dùng để thêm thông tin c a sinh viên vào Database ủ

- N u phát hiế ện được khuôn mặt: khi nhấn nút chương trình sẽ tiến hành chụp ảnh khuôn m t, chuyặ ển ảnh v nh mề ả ức xám và lưu ảnh vào thư mục TrainedFaces, tên cho ảnh được người dùng nhập vào textbox1 cũng sẽ được lưu lại vào file TrainedLabels.txt trong thư mục TrainedFaces

- N u không phát hi n khuôn mế ệ ặt: hiển th thông báo yêu cị ầu người dùng ki m tra ể lại camera ho c v trí khuôn m t so v i camera ặ ị ặ ớ

Trang 10

10

Chương trình nút nhấn “Điểm danh”:

- Nếu phát hi n khuôn mệ ặt, sinh viên s được điểm danh, tên sinh viên s ẽ ẽ được ghi vào listBox2

- N u không phát hi n khuôn mế ệ ặt, chương trình sẽ hiện thông báo không phát hiện được khuôn m t và yêu c u th lặ ầ ử ại

Chương trình nút nhấn “Tổng kết”:

Những sinh viên trong lớp chưa có tên trong listBox2 (điểm danh) sẽ được ghi tên vào listBox3 (v ng) ắ

Trang 11

11

Hàm nh n diện và đánh dấu khuôn m t

Trang 12

12

Chương trình chính

Lấy dữ liệu t file haarcascade_frontalface_default.xml ừ để nhận di n khuôn mệ ặt

Trang 13

13

PHẦN 4: HOẠT ĐỘNG CỦA CHƯƠNG TRÌNH

Chương trình sau khi chạy

Khi chưa ấn nút Bắt đầu nhưng ấn nút Thêm Sinh Viên

Trang 14

14

Chương trình sau khi ấn nút Bắt đầu

Thông báo thêm sinh viên thành công, tên sinh viên được lưu vào listBox2

Trang 15

15

Khi n nút ấ điểm danh mà không phát hi n khuôn m t ệ ặ

Khi n nút t ng k t ấ ổ ế

Trang 16

16

PHẦN 5: HẠN CHẾ, KẾT LUẬN

5.1 H n ch ạ ế

Trong quá trình th c hi n, có mự ệ ộ ốt s vấn đề phát sinh mà chúng em chưa giải quyết được như sau:

• Sinh viên chưa được thêm dữ liệu vào Database khi ấn điểm danh s l y thông ẽ ấ tin ng u nhiên cẫ ủa sinh viên đã được thêm thông tin vào Database

• Cách gi i quy t các vả ế ấn đề chưa tối ưu

• Trình bày b cố ục chưa đẹp mắt

5.2 K t lu n ế ậ

Về cơ bản, chúng em đã hoàn thành được dự án với độ chính xác và tính ổn định tương đối Về m t giao diặ ện, chương trình có đầy đủ các phím chức năng cần thiết Tuy nhiên, để ến xa hơn, nhóm sẽ đưa ra mộ ti t số phương án phát triển cũng như hướng áp dụng

Trướ ực s phát tri n c a thể ủ ời đại công ngh sệ ố, điểm danh b ng nh n diằ ậ ện khuôn mặt đã được ứng d ng trên r t nhiụ ấ ều lĩnh vực Giải pháp này được ứng dụng rộng rãi nh t trong mô hình qu n lý nhân viên và nh n diấ ả ậ ện điểm danh tại trường học

Ứng dụng điểm danh nh n di n khuôn mậ ệ ặt trong trường học: H ệ điểm danh nhận di n khuôn mệ ặt v i bớ ộ phận camera có th ể quét gương mặt của giáo viên, nhân viên và học sinh và lưu vào bộ nhớ.Thiết b này s x lý hình nh mị ẽ ử ả ột cách nhanh chóng, chính xác, ổn định ch ng gian l n ch m công hoố ậ ấ ặc điểm danh h ộ Ứng dụng cho doanh nghiệp, công s : H ở ệ thống ch m công vấ ới bộ phận camera có th ể quét gương mặ ủa các nhân viên trong công ty và lưu lạt c i trong bộ nhớ Thi t b này s x lý hình nh r t nhanh chóng, hoế ị ẽ ử ả ấ ạt động ổn định, có tính bảo mật cao, h n ch mạ ế ọi th t c gi y t ủ ụ ấ ờ rườm rà cũng như những trường h p gian lợ ận chấm công h ộ

Điểm danh b ng nh n diằ ậ ện khuôn mặt ngày nay được ứng d ng r ng rãi ụ ộ trong cu c s ng, trong doanh nghi p và ộ ố ệ ở môi trường học đường Cuộc sống ngày càng phát tri n, do v y nhu c u v ể ậ ầ ề việ ửc s d ng các thi t b công ngh ụ ế ị ệ phục v ụ đời sống ngày càng tr nên c n thi t ở ầ ế

Trang 17

17

Tài liệu tham khảo

1 ĐỀ TÀI : ĐIỂM DANH B NG NH N DI N KHUÔN M T NguyẰ Ậ Ệ Ặ – ễn Nguyên Ng c Phú (ọ https://www.slideshare.net/nataliej4/ti-im-danh-bng-nhn din-

2 Nhận d ng mạ ặt người với giải thuật haar Like feature Cascade of boosted – classifiers và đặc trưng sift ( https://tailieutuoi.com/tai-lieu/nhan-dang-mat-nguoi-voi-giai-thuat-haar-like-feature-cascade- -boosted-classifiers- -dac-trung-siftof va )

john-ByEZkNVyKQ0

Ngày đăng: 16/04/2024, 16:27

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w