Tải bản đầy đủ (.docx) (21 trang)

Điểm danh bằng nhận diện khuôn mặt sử dụng ngôn ngữ javascript

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (871.72 KB, 21 trang )

BỘ THÔNG TIN VÀ TRUYỀN THÔNG

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THƠNG

BÁO CÁO BÀI TẬP LỚN TRUYỀN THƠNG ĐA PHƯƠNG TIỆN

ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT SỬ DỤNG
NGÔN NGỮ JAVASCRIPT

Giảng viên

: Vũ Hữu Tiến

MỤC LỤ
1|Page


C
LỜI MỞ ĐẦU......................................................................................................................3
LỜI CẢM ƠN......................................................................................................................4
Chương 1: Dẫn nhập............................................................................................................5
1.1 Giới thiệu chung....................................................................................................................5
1.2 Mục đích nghiên cứu.............................................................................................................5

CHƯƠNG 2: CÁC PHƯƠNG PHÁP..................................................................................6
NHẬN DẠNG KHN MẶT............................................................................................6
2.1 Định nghĩa bài tốn xác định khn mặt người.....................................................................6
2.2 Ứng dụng của phương pháp xác định khuôn mặt người.......................................................6
2.3 Phương pháp xác định khuôn mặt người...............................................................................8
2.4 Nhận diện ảnh sử dụng thư viện face-apj.js:.........................................................................8


CHƯƠNG 3: GIỚI THIỆU VỀ VISUAL STUDIO CODE..............................................10
1.

VISUAL STUDIO CODE..................................................................................................10

2.

Một số tính năng của Visual Studio....................................................................................11

CHƯƠNG 4: THỰC HIỆN ĐỀ TÀI TRÊN MÔI TRƯỜNG VISUAL STUDIO CODE 12
1.

Các ngôn ngữ được sử dụng ở trong đề tài:........................................................................12

2.

Khởi tạo file HTML, CSS, JS.............................................................................................13

3.

MÔ TẢ CHI TIẾT..............................................................................................................14

4.

DEMO KẾT QUẢ THU ĐƯỢC........................................................................................17

5.

NHẬN DIỆN CẢM XÚC...................................................................................................17


6.

DEMO NHẬN DIỆN CẢM XÚC......................................................................................19

CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN..................................................21
1.

KẾT LUẬN........................................................................................................................21

2.

HƯỚNG PHÁT TRIỂN.....................................................................................................21

2|Page


LỜI MỞ ĐẦU
Hơn một thập kỷ qua có rất nhiều cơng trình nghiên cứu về bài tốn nhận dạng
khn mặt người từ ảnh đen trắng, xám đến ảnh màu như ngày hơm nay. Các nghiên cứu
đi từ bài tốn đơn giản, mỗi ảnh chỉ có một khn mặt người nhìn thẳng vào thiết bị thu
hình và đầu ở tư thế thẳng đứng trong ảnh đen trắng. Cho đến ngày hôm nay bài tốn mở
rộng cho ảnh màu, có nhiều khn mặt trong cùng một ảnh, có nhiều tư thế thay đổi
trong ảnh. Khơng những vậy 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 rất phức tạp nhằm đáp ứng nhu cầu
của con người.
Mục tiêu của đề tài “ Nhận dạng mặt người sử dụng javascript” là thực hiện
chương trình tìm kiếm một bức ảnh có khn mặt một người trong tập ảnh cơ sở giống
với khuôn mặt của người trong bức ảnh cần kiểm tra bằng ngôn ngữ javascript
Do tài liệu tham khảo hạn chế, trình độ có hạn và kinh nghiệm trong thực tiễn còn
non kém, nên đề tài khơng tránh khỏi những thiếu sót. Rất mong được nhận những ý kiến

đóng góp, giúp đỡ chân tình, quý báu của quý thầy cô cùng các bạn sinh viên.

3|Page


Chương 1: Dẫn nhập
1.1 Giới thiệu chung
- Trí tuệ nhân tạo (AI) là từ thông dụng mới nhất trong thế giới hiện đại. Nó làm cho máy
móc thơng minh trên tồn thế giới có khả năng thực hiện các chức năng nhận thức được
mong đợi từ con người. Các chức năng này có thể là khả năng suy nghĩ logic hoặc tham
gia vào một cuộc trị chuyện thơng thường hoặc thậm chí nhận ra các kiểu khn mặt để
phát hiện và nhận dạng tâm trạng. Được hỗ trợ bởi các công cụ như Xử lý ngôn ngữ tự
nhiên, Học máy, Học sâu, v.v., Trí tuệ nhân tạo đang mở đường cho máy móc suy nghĩ,
nói chuyện và hành động như con người.
- Công nghệ nhận dạng khuôn mặt là một trong những công nghệ tiên phong đang được
hỗ trợ thông qua các ứng dụng AI. Nó có khả năng xác định và xác minh nhận dạng của
một người bằng cách sử dụng hình ảnh kỹ thuật số hoặc khung hình video. Nói chung,
các hệ thống nhận dạng khn mặt hoạt động bằng cách so sánh các đặc điểm khuôn mặt
được chọn từ một hình ảnh với các khn mặt có sẵn trong cơ sở dữ liệu. Công nghệ như
vậy đã được sử dụng trong các hệ thống an ninh, nơi nó cho phép máy ảnh lấy hình ảnh
khn mặt có thể so sánh và xác định sau đó. Nó cũng gần đây đã tìm thấy việc sử dụng
trong các cơng cụ thương mại và tiếp thị.
- Có một số kỹ thuật dựa trên AI được sử dụng để nhận dạng khn mặt. Một số thuật
tốn nhận dạng khn mặt trích xuất các mốc hoặc đặc điểm khuôn mặt từ khuôn mặt của
một đối tượng nhất định và so sánh chúng với các tính năng phù hợp với các hình ảnh
khác. Những người khác bình thường hóa một loạt các hình ảnh khn mặt và sau đó nén
dữ liệu khn mặt. Dữ liệu có ý nghĩa sau đó được lưu và hình ảnh thăm dị được so sánh
với dữ liệu khn mặt.
Ở đề tài lần này, ngơn ngữ nhóm em sử dụng là javascript bởi vì sự phổ biến cũng như
ứng dụng đa dạng của cộng đồng.

1.2 Mục đích nghiên cứu
Người thực hiện đề tài này nhằm mục đích:
 Tìm hiểu các thuật toán nhận dạng và xử lý ảnh màu, cấu trúc ảnh màu.
 Nâng cao kỹ năng thiết kế và lập trình bằng ngơn ngữ javascript.
 Rèn luyện kỹ năng nghiên cứu, tìm hiểu tài liệu.

4|Page


CHƯƠNG 2: CÁC PHƯƠNG PHÁP
NHẬN DẠNG KHUÔN MẶT
2.1 Định nghĩa bài tốn xác định khn mặt người
Xác định khn mặt người (Face Detection) là một kỹ thuật máy tính để xác định
các vị trí và các kích thước của các khuôn mặt người trong các ảnh bất kỳ (ảnh kỹ thuật
số). Kỹ thuật này nhận biết các đặc trưng của khn mặt và bỏ qua những thứ khác, như:
tịa nhà, cây cối, cơ thể..
2.2 Ứng dụng của phương pháp xác định khn mặt người
Có nhiều ứng dụng đã được và đang thiết kế, tôi chỉ xin đưa ra một số loại ứng
dụng sau:
 Hệ thống tương tác giữa người và máy: giúp những người bị tật hoặc khiếm
khuyết có thể trao đổi. Những người dùng ngơn ngữ tay có thể giao tiếp với những người
bình thường. Những người bị bại liệt thơng qua một số ký hiệu nháy mắt có thể biểu lộ
những gì họ muốn, .. Đó là các bài toán điệu bộ của bàn tay (hand gesture), điệu bộ
khn mặt.
 Nhận dạng người A có phải là tội phạm truy nã hay không? Giúp cơ quan an ninh
quản lý tốt con người. Cơng việc nhận dạng có thể ở trong mơi trường bình thường cũng
như trong bóng tối (sử dụng camera hồng ngoại).


Hệ thống quan sát, theo dõi và bảo vệ. Các hệ thống camera sẽ xác định đâu là


con người và theo dõi con người đó xem họ có vi phạm gì khơng, ví dụ xâm phạm khu
vực không được vào, ..
 Lưu trữ (rút tiền ATM, để biết ai rút tiềnvào thời điểm đó), hiện nay có tình
trạng những người bị người khác lấy mất thẻ ATM hay mất mã số PIN và những người
ăn cắp này đi rút tiền, hoặc những người chủ thẻ đi rút tiền nhưng lại báo cho ngân hàng
là mất thẻ và mất tiền. Các ngân hàng có nhu cầu khi có giao dịch tiền sẽ kiểm tra hay lưu
trữ khn mặt người rút tiền để sau đó đối chứng và xử lý.
 Thẻ căn cước, chứng minh nhân dân (Face Identification)

5|Page


 Điều khiển vào ra: văn phịng, cơng ty, trụ sở, máy tính, Palm, .. Kết hợp thêm vân
tay và mống mắt. Cho phép nhân viên được ra vào nơi cần thiết, hay mỗi người sẽ đăng
nhập máy tính cá nhân của mình mà khơng cần nhớ tên đăng nhập cũng như mật khẩu mà
chỉ cần xác định thông qua khuôn mặt.
 An ninh sân bay, xuất nhập cảnh (hiện nay cơ quan xuất nhập cảnh Mỹ đã áp
dụng). Dùng để xác thực người xuất nhập cảnh và kiểm tra có phải là nhân vật khủng bố
khơng.
 Tương lai sẽ phát triển các loại thẻ thơng minh có tích hợp sẵn đặc trưng của
người dùng trên đó, khi bất cứ người dùng khác dùng để truy cập hay xử lý tại các hệ
thống sẽ được yêu cầu kiểm tra các đặc trưng khuôn mặt so với thẻ để biết nay có phải
là chủ thẻ hay khơng.
 Tìm kiếm và tổ chức dữ liệu liên quan đến con người thông qua khuôn mặt người
trên nhiều hệ cơ sở dữ liệu lưu trữ thật lớn, như internet, các hãng truyền hình, Ví dụ: tìm
các đoạn video có tổng thống Bush phát biểu, tìm các phim có diễn viên Lý Liên Kiệt
đóng, tìm các trận đá banh có Ronaldo đá, ..
 Hiện nay có nhiều hướng tiếp cận để xác định một ảnh có phải là ảnh khỏa thân
hay khơng? Khn mặt người được xem như một yếu tố để xác định cho một hướng tiếp

cận mà được dùng gần đây.
 Ứng dụng trong video phone.
 Phân loại trong lưu trữ hình ảnh trong điện thoại di động. Thơng qua bài tốn xác
định khn mặt người và trích đặc trưng, rồi dựa vào đặc trưng này để sắp xếp lưu trữ,
giúp người sử dụng dễ dàng truy tìm khi cần thiết.
 Kiểm tra trạng thái người lái xe có ngủ gật, mất tập trung hay không, và hỗ trợ
thông báo khi cần thiết.
 Phân tích cảm xúc trên khn mặt.
 Trong lãnh vực thiết kế điều khiển robot.
 Hãng máy chụp hình Canon đã ứng dụng bài tốn xác định khn mặt người vào
máy chụp hình thế hệ mới để cho kết quả hình ảnh đẹp hơn, nhất là khn mặt người.

6|Page


2.3 Phương pháp xác định khn mặt người
Có nhiều nghiên cứu tìm phương pháp xác định khn mặt người, từ ảnh xám
đến ngày nay là ảnh màu. Tơi sẽ trình bày một cách tổng quát nhất những hướng giải
quyết chính cho bài tốn, từ những hướng chính này nhiều tác giả thay đổi một số ý nhỏ
bên trong để có kết quả mới.
Dựa vào tính chất của các phương pháp xác định khuôn mặt người trên ảnh. Các
phương pháp này được chia làm bốn hướng tiếp cận chính. Ngồi bốn hướng này, nhiều
nghiên cứu có khi liên quan đến khơng những một hướng tiếp cận mà có liên
quan nhiều hơn một hướng chính:
 Hướng tiếp cận dựa trên tri thức: Mã hóa các hiểu biết của con người về các
loại khuôn mặt người thành các luật. Thông thường các luật mô tả quan hệ của các đặc
trưng.


Hướng tiếp cận dựa trên đặc trưng không thay đổi: Mục tiêu các thuật tốn


đi tìm các đặc trưng mơ tả cấu trúc khn mặt người mà các đặc trưng này sẽ không thay
đổi khi tư thế khn mặt, vị trí đặt thiết bị thu hình hoặc điều kiện ánh sáng thay đổi.
 Hướng tiếp cận dựa trên so khớp mẫu: Dùng các mẫu chuẩn của khuôn mặt
người (các mẫu này được chọn lựa và lưu trữ) để mô tả cho khuôn mặt người hay các
đặc trưng khuôn mặt (các mẫu này phải chọn làm sao cho tách biệt nhau theo tiêu chuẩn
mà các tác giả định ra để so sánh). Các mối tương quan giữa dữ liệu ảnh đưa vào và các
mẫu dùng để xác định khuôn mặt người.
 Hướng tiếp cận dựa trên diện mạo: Trái ngược hẳn với so khớp mẫu, các mơ
hình (hay các mẫu) được học từ một tập ảnh huấn luyện trước đó. Sau đó hệ thống (mơ
hình) sẽ xác định khuôn mặt người. Hay một số tác giả còn gọi hướng tiếp cận này là
hướng tiếp cận theo phương pháp học.
2.4 Nhận diện ảnh sử dụng thư viện face-apj.js:
Trước khi bắt đầu với việc làm demo thì mình muốn giới thiệu một chút về các
model của thư viện Face-api.js. Hiện tại thì chúng ta có thể sử dụng được 5
model mà face-api cung cấp đó là:

7|Page


1. Face Detection:
 SSD Mobilenet V1: Sử dụng để phát hiện khuôn mặt, bằng cách sử dụng
SSD (Single Shot Multibox Detector) dựa trên MobileNetV1. Nó sẽ trả về
một ơ vng giới hạn khuôn mặt và xác suất cho mỗi gương mặt mà nó
phát hiệnđược. Model này giúp cho việc phát hiện khn mặt được nhanh
hơn và có độ chính xác cao hơn.
 Tiny Face Detector: hỗ trợ realtime face detector với thời gian nhanh hơn,
kích thước nhỏ hơn, tốn ít tài nguyên hơn để so sánh với SSD Mobilenet
V1 face detector, đổi lại nó hoạt động kém hơn khi phát hiện các khuôn mặt
nhỏ. Model này cực kỳ thân thiện với model và web, phù hợp với các thiết

bị hạn chế tài nguyên.
2. Face Landmark Detection: nó giúp phát hiện 68 điểm trên khuôn mặt của
bạn một cách cực kỳ nhẹ và nhanh chóng mà lại cịn chính xác. (Cả 2
model được "trained" trong bộ dữ liệu ~35k hình ảnh khuôn mặt được gắn
nhãn với 68 mốc khuôn mặt.
3. Face Recognition: Xử dụng cho việc nhận diện khuôn mặt, một kiến trúc
gần giống như ResNet-34 được triển khai để tính tốn một bộ mơ tả khn
mặt (mộ vectơ đặc trưng có 128 giá trị) từ các hình ảnh khn mặt đã được
cung cấp, cái mà sử dụng để mô tả các nét đặc trưng của khuôn mặt. Model
này không giới hạn ở bộ khuôn mặt được sử dụng để "training", có nghĩa là
bạn có thể sử dụng nó để nhận dạng khuôn mặt của bất kỳ người nào, chẳng
hạn như khn mặt của bạn. Bạn có thể xác định sự giống nhau của hai
khuôn mặt tùy ý bằng cách so sánh các mơ tả khn mặt của chúng. Ví dụ
bằng cách tính khoảng cách euclide hoặc sử dụng bất kỳ bộ phân loại nào
khác mà bạn chọn.
4. Face Expression Recognition: Model này giúp chúng ta có thể nhận đạng
dược những biểu cảm trên khn mặt một cách nhanh chóng và cực kỳ nhẹ
cùng với độ chính xác cao. Nó được "training" bởi các nguồn được public
trên mạng. Lưu ý rằng độ chính xác có thể giảm xuống nếu bạn đeo kính.
8|Page


5. Age Estimation and Gender Recognition: Model này giúp chúng ta ước
lượng tuổi tác cũng như nhận diện giới tính.

9|Page


CHƯƠNG 3: GIỚI THIỆU VỀ VISUAL STUDIO CODE
1. VISUAL STUDIO CODE

Là một trình biên tập lập trình code miễn phí dành cho Windows, Linux và
macOS, Visual Studio Code được phát triển bởi Microsoft. Nó được xem là một
sự kết hợp hoàn hảo giữa IDE và Code Editor.
Visual Studio Code hỗ trợ chức năng debug, đi kèm với Git, có syntax
highlighting, tự hồn thành mã thơng minh, snippets, và cải tiến mã nguồn. Nhờ
tính năng tùy chỉnh, Visual Studio Code cũng cho phép người dùng thay đổi
theme, phím tắt, và các tùy chọn khác.
2. Một số tính năng của Visual Studio
1. Hỗ trợ nhiều ngơn ngữ lập trình
Visual Studio Code hỗ trợ nhiều ngơn ngữ lập trình như C/C++, C#, F#, Visual
Basic, HTML, CSS, JavaScript, … Vì vậy, nó dễ dàng phát hiện và đưa ra thơng
báo nếu chương chương trình có lỗi.
2. Hỗ trợ đa nền tảng
Các trình viết code thông thường chỉ được sử dụng hoặc cho Windows hoặc Linux
hoặc Mac Systems. Nhưng Visual Studio Code có thể hoạt động tốt trên cả ba nền
tảng trên.
3. Cung cấp kho tiện ích mở rộng
Trong trường hợp lập trình viên muốn sử dụng một ngơn ngữ lập trình khơng nằm
trong số các ngơn ngữ Visual Studio hỗ trợ, họ có thể tải xuống tiện ích mở rộng.
Điều này vẫn sẽ khơng làm giảm hiệu năng của phần mềm, bởi vì phần mở rộng
này hoạt động như một chương trình độc lập.
4. Kho lưu trữ an toàn
Đi kèm với sự phát triển của lập trình là nhu cầu về lưu trữ an tồn. Với Visual
Studio Code, người dùng có thể hồn tồn n tâm vì nó dễ dàng kết nối với Git
hoặc bất kỳ kho lưu trữ hiện có nào.
5. Hỗ trợ web
Visual Studio Code hỗ trợ nhiều ứng dụng web. Ngoài ra, nó cũng có một trình
soạn thảo và thiết kế website.
6. Lưu trữ dữ liệu dạng phân cấp
Phần lớn tệp lưu trữ đoạn mã đều được đặt trong các thư mục tương tự nhau.

Ngồi ra, Visual Studio Code cịn cung cấp các thư mục cho một số tệp đặc biệt
quan trọng.

10 | P a g e


7. Hỗ trợ viết Code
Một số đoạn code có thể thay đổi chút ít để thuận tiện cho người dùng. Visual
Studio Code sẽ đề xuất cho lập trình viên các tùy chọn thay thế nếu có.
8. Hỗ trợ thiết bị đầu cuối
Visual Studio Code có tích hợp thiết bị đầu cuối, giúp người dùng khỏi phải
chuyển đổi giữa hai màn hình hoặc trở về thư mục gốc khi thực hiện các thao tác.

11 | P a g e


CHƯƠNG 4: THỰC HIỆN ĐỀ TÀI TRÊN MÔI TRƯỜNG VISUAL
STUDIO CODE
1. Các ngôn ngữ được sử dụng ở trong đề tài:
- Ngơn ngữ lập trình Javascipt
-

Ngơn ngữ đánh dấu HTML

-

Ngơn ngữ CSS

2. Khởi tạo file HTML, CSS, JS


File HTML, CSS sau khi được thêm các nội dung

Giao diện web với các cấu trúc file HTML cơ bản, từ đó ta có thể thiết kế giao diện để
cho nó đẹp hơn.
Khởi chạy file HTML trên cổng live sever với local là : http://127.0.0.1:5500/
Khởi tạo file javascript liên kết với file HTML để từ đó có các thao tác trên web
3. MƠ TẢ CHI TIẾT
Đầu tiên chúng em lấy dữ liệu lưu vào file container và fileinput

12 | P a g e


Tiếp theo tạo một mảng labels chứa tên của các ký tự trong hình ảnh. Đặt tên cho hình
ảnh tham chiếu giống với nhãn. fetchImage có thể được sử dụng để tải hình ảnh từ các
thư mục.Phát hiện khn mặt đơn lẻ và tính tốn mơ tả khn mặt cho mọi hình ảnh
trong đó và lưu trữ nó cùng với nhãn tương ứng với FaceDescriptors.

Từ thư viện có sẵn, nhóm chúng em thực hiện lấy các modal (Load Modals) để lấy dữ
liệu từ thư viện để từ đó tương tác với website qua DOM

Với mỗi nhân vật nhóm chúng em cung cấp 5 bức ảnh để máy tính có thể nhận diện
khách quan về khuôn mặt

13 | P a g e


Ở đây hình ảnh mà máy tính được nhận và nghiên cứu đồng thời phân tích dữ liệu trong
đó mà nhóm chúng em đưa ra là các nhân vật trong Marvel. Bằng cách thêm những hình
ảnh của mỗi nhân vật để máy tính phân tích và hiểu được dữ liệu mà người dùng muốn đề
cập.

Sau khi cập nhật xong dữ liệu, nhóm tạo ra một hàm để nhận dữ liệu mới từ máy tính.
Nếu dữ liệu trả về này phù hợp với các thông tin của các nhân vật trong hàm
loadTrainingData() được khởi tạo thì nó sẽ trả về dữ liệu tương ứng. Nếu không, kết quả
trả về sẽ là unknown

14 | P a g e


Hàm trainingdata để tải dữ liệu cho máy , faceapi.FaceMatcher() sẽ so sánh kết quả thu
được với dữ liệu đã lấy được để cho ra kết quả chính xác nhất .

- Mỗi khi hình ảnh được lấy từ máy tín lên ta sẽ lấy kết quả của hính ảnh đó
thơng qua hàm bufferToImage()
- Tạo canvas để xử lý trên canvas thay vì trên ảnh gốc
- Nhận diện khn mặt bằng 2 hàm dectectAll , withFaceLandmanks lưu dữ
liệu vào bằng hàm withFaceDescriptor()
- dections lúc này là dữ liệu của nhiều khuôn mặt do đó cần dùng vịng for để
hiện thị hết tất cả dữ liệu đã lấy đc .
15 | P a g e


4. DEMO KẾT QUẢ THU ĐƯỢC

Sau khi upload ảnh lên. Máy tính sẽ phân tích dữ liệu của các khn mặt và tìm ra khn
mặt phù hợp với những dữ liệu mà máy có. Từ đó, trả về với tên tương ứng qua canvas.
Ở đây, hình ảnh trả về là hai diễn viên trong Marval: Captain America và Thor từ các dữ
liệu mà máy tính có được. Nếu muốn thêm các dữ liệu khác, chúng ta chỉ cần thêm cho
máy tính các dữ liệu để từ đó máy tính có thể biết và trả về kết quả hợp lý.
5. NHẬN DIỆN CẢM XÚC
- Khởi tạo thêm cấu trúc file HTML, CSS, JavaScript.

- Sử dụng thẻ video của html để hiển thị cho webcam
Tương tự như nhận diện khn mặt, nhóm chúng em vẫn thực hiện lấy các modal (đã
được khởi tạo trước ở phần 1)(Load Modals) để lấy dữ liệu từ thư viện để từ đó tương
tác với website qua DOM

Sử dụng hàm để kiểm tra và lấy dữ liệu người dùng từ webcam

16 | P a g e


Sau khi chạy thử, dữ liệu từ webcam để chuyển lên browser thành cơng. Tuy nhiên, nó
chỉ dừng lại ở tiến độ hiển thị hình ảnh.
Tiếp đến, sử dụng face api để hiện thị các dữ liệu lên màn hình browser bằng cách cho
video lắng nghe sự kiện “playing’ , sự kiện được xảy ra tương tự như ở trong nhận diện
khuôn mặt bằng cách sử dụng một method của face api để lấy ra hình ảnh canvas của
video qua việc khởi tạo một biến có tên là const canvas.

Vì ta lấy dữ liệu ở video nhiều lần lên ta sẽ đùng hàm setInterval .
Hàm setInterval ở đây được khởi chạy function nhiều lần sau một khoảng thời gian
mà chúng ta quy định. ( với tham số được truyền vào là 1 callback và thời gian
chạy lại quy định. Ở đây nhóm em chọn là 100ms)
Sau 100 ms hàm nhận diện cảm xúc sẽ được chạy
+) Phát hiện cảm xúc với hàm TinyFaceDetectorOptions() , và
withFaceExpressions()
+) Hiện thị kết quả / vẽ kết quả bằng hàm draw lên canvas

17 | P a g e


6. DEMO NHẬN DIỆN CẢM XÚC


Cảm xúc buồn

18 | P a g e


Cảm xúc mặc định
Tài liệu tham khảo :
- />- />
19 | P a g e


CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
1. KẾT LUẬN
Trên đây là bài báo cáo về nhận diện khuôn mặt sử dụng ngôn ngữ javascript và cách sử
dụng đơn giản của nó. Chúng ta có thể mở rộng nghiên cứu thêm một số chức năng chưa
giới thiệu trên đây như : xác định độ tuổi, giới tính.
 Ưu điểm:
- Hệ thống camera nhận diện sẽ tiến hành quét là lưu lại thông tin của đối tượng mà
không cần sự tương tác.
- Các q trình qt, phân tích dữ liệu và trả kết quả được xử lý nhanh chóng chưa
đến 3 giây kết quả đã được hiển thị.
- Có thể một lúc xác định được nhiều cá nhân trong đám đông hoặc ở những nơi
cơng cộng.
- Sản phẩm dễ dàng tích hợp với nhiều tính năng bảo mật, tránh việc rị rỉ thông tin
và sự xâm nhập từ các thiết bị bên ngồi.
- Trả kết quả nhanh chóng, cung cấp dữ liệu đầy đủ, chính xác và khoa học. Giúp
cơng việc điều hành, quản lý được thực hiện một cách hiệu quả, nhanh chóng, tiết
kiệm thời gian và nguồn nhân lực.
 Nhược điểm:

- Bất cứ một thiết bị nào dù khách quan hay chủ quan đền có những sai số nhất
định. Do vậy sản phẩm có thể khó cam kết được độ chính xác 100% cho tồn bộ
kết quả.
- Qua việc nhận diện khuôn mặt qua các điểm nút ảnh hưởng đến sự bảo mật thông
tin cá nhân của đối tượng sử dụng.
2. HƯỚNG PHÁT TRIỂN

- Hiện nay có rất nhiều các lĩnh vực sử dụng xử lý ảnh nói chung và nhận diện điểm danh

bằng khn mặt nói riêng
 Tới trên 70% các công ty bây giờ đề sử dụng điểm danh chấm công bằng khuôn
mặt
 Các thiết bị công nghệ bây giờ mở khóa với face id ….
Trong tương lai chúng em sẽ cố phát triển thành một hệ thống khơng chỉ đơn tuần là điểm
danh mà cịn tích hợp thêm như đeo khẩu trang vẫn có thể điểm danh được hay đơn giản
trong hệ thống điểm danh của 1 trường học khi 1 học sinh vắng học hệ thống sẽ lập tức
báo cáo tới giáo viên cũng như gửi tin nhắn tới phụ huynh học sinh đó với số điện thoại
được lưu trữ sẵn trong data…

20 | P a g e



×