Tải bản đầy đủ (.pdf) (82 trang)

Thiết kế, chế tạo hệ thống quản lý chấm công bằng phương pháp nhận dạng khuôn mặt

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 (2.73 MB, 82 trang )

TRƯỜNG ĐẠI HỌC VINH

VIỆN KỸ THUẬT VÀ CÔNG NGHỆ
____________________________________________________

ĐỒ ÁN

TỐT NGHIỆP ĐẠI HỌC
Đề tài:

THIẾT KẾ, CHẾ TẠO HỆ THỐNG QUẢN LÝ CHẤM CÔNG
BẰNG PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT

Người hướng dẫn

: ThS. PHAN VĂN DƯ

Sinh viên thực hiện

: LÊ HỒNG HẢI

MSSV

: 135D5202160077

Lớp

: 54K2- KTĐK&TĐH

NGHỆ AN, 2018



TRƯỜNG ĐẠI HỌC VINH

VIỆN KỸ THUẬT VÀ CÔNG NGHỆ
____________________________________________________

ĐỒ ÁN

TỐT NGHIỆP ĐẠI HỌC
Đề tài:

THIẾT KẾ, CHẾ TẠO HỆ THỐNG QUẢN LÝ CHẤM CÔNG
BẰNG PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT

Người hướng dẫn

: ThS. PHAN VĂN DƯ

Sinh viên thực hiện

: LÊ HỒNG HẢI

Lớp

: 54K2- KTĐK&TĐH

Cán bộ phản biện

: TS. ĐẶNG THÁI SƠN


NGHỆ AN, 2018


LỜI CẢM ƠN
Lời đầu tiên, cho em xin gửi lời cảm ơn sâu sắc đến thầy giáo ThS.Phan Văn
Dư đã tận tình hướng dẫn, chỉ bảo, cung cấp các tài liệu cần thiết, giúp đỡ động viên
để em có thể hoàn thành đồ án này.
Em xin gửi lời cảm ơn chân thành tới các thầy cô trong Viện Kỹ Thuật Công
Nghệ cũng như nghành Kỹ Thuật Điều Khiển & Tự Động Hóa nói chung đã tận tình
giảng dạy, giúp đỡ và truyền đạt những kiến thức quý báu cho em trong suốt thời
gian em học tập và rèn luyện tại trường.
Và cuối cùng, em xin gửi lời cảm ơn chân thành đến gia đình, người thân và
tất cả các bạn bè, đặc biệt là các bạn trong lớp 54K2KTĐK&TĐH, những người đã
hỗ trợ, chia sẻ, động viên tinh thần cho em trong suốt quá trình học tập và thực hiện
đồ án này.
Một lần nữa em xin chân thành cảm ơn!
Nghệ An, ngày……tháng…..năm 2018
Sinh viên thực hiện

Lê Hồng Hải

1


TĨM TẮT
Với xu thế cơng nghiệp hóa đang diễn ra nhanh chóng, cùng với sự phát triển
của nền kinh tế Việt nam hiện nay, đồng thời các khu công nghiệp, nhà máy, văn
phịng với đủ loại quy mơ và ngành nghề khác nhau đang ngày một tăng lên cả về
số lượng và quy mô hoạt động. Để vận hành một đơn vị sản xuất kinh doanh, cần
đòi hỏi rất nhiều hạng mục như vật tư, máy móc, thiết bị cơng nghệ, con người và

kèm theo đó là rất nhiều những tài nguyên hay những quy trình nhằm đảm bảo quá
trình sản xuất kinh doanh diễn ra một cách bài bản và có hiệu quả cao. Một phần
khơng thể thiểu để quản lý con người và hiệu suất làm việc chính là hệ thống máy
chấm công.

ABSTRACT

With the trend of industrialization is happening rapidly, along with the
development of the current Vietnam economy, and industrial parks, factories,
offices of all types and sizes of different occupations are on. In order to operate a
business unit, it is necessary to require a lot of items such as materials, machinery,
technology equipment and human resources. A lot of resources or processes to
ensure the production and business process in a highly effective way. An integral
part of human management and productivity is the time attendance system.

2


MỤC LỤC

LỜI CẢM ƠN .............................................................................................................1
TÓM TẮT ...................................................................................................................2
MỤC LỤC ...................................................................................................................3
DANH MỤC HÌNH ẢNH ..........................................................................................5
DANH SÁCH BẢNG BIỂU .......................................................................................6
DANH MỤC CÁC TỪ VIẾT TẮT ............................................................................6
CHƯƠNG 1. TỔNG QUAN VỀ CÁC HỆ THỐNG QUẢN LÝ CHẤM CÔNG ....8
1.1 Sự phát triển của hệ thống chấm công ..................................................................8
1.2 Giới thiệu chung về máy chấm cơng ....................................................................9
1.2.1 Máy chấm cơng là gì? .................................................................................. 9

1.2.2 phân loại máy chấm công ............................................................................ 9
1.3 Một số sản phẩm hệ thống quản lý chấm công ..................................................10
1.3.1 Máy chấm công vân tay gigata .................................................................. 10
1.3.2 Máy chấm công thẻ cảm ứng Ronald Jack S-300...................................... 11
1.3.3 Máy chấm công khuôn mặt VF300 ........................................................... 12
1.3.4 Máy chấm công thẻ giấy Timmy MD-80B................................................ 13
CHƯƠNG 2: TỔNG QUAN VỀ CÁC PHƯƠNG PHÁP NHẬN DẠNG ẢNH VÀ
DỊCH VỤ MICROSOFT COGNITIVE SERVICES................................................15
2.1 Tổng quan về các phương pháp nhận dạng ảnh ứng dụng trong kỹ thuật điều
khiển ........................................................................................................................15
2.1.1 Giới thiệu chung về các phương pháp nhận dạng mặt người: ................... 15
2.1.2 Xử lý ảnh.................................................................................................... 16
2.1.3 Phát hiện mặt người sử dụng đăc trưng PCA ............................................ 18
2.1.5 Phát hiện mặt người sử dụng đặc trưng Haar - like ................................... 21
2.1.6 Adaboost .................................................................................................... 26
2.2 Tổng quan về Microsof Cognitive Services .......................................................27
2.2.1 Vision API ................................................................................................. 27
2.2.2 Nhận diện khuôn mặt với Microsoft Cognitive Face Recognition API .... 28
CHƯƠNG 3: THIẾT KẾ, CHẾ TẠO HỆ THỐNG QUẢN LÝ CHẤM CÔNG
BẰNG NHẬN DẠNG KHUÔN MẶT ỨNG DỤNG MICROSOFT COGNITIVE
SERVICES TRÊN NỀN MÁY TÍNH RASPBERRY PI3 .......................................32

3


3.1 Phân tích yêu cầu thiết kế ...................................................................................32
3.2 Thiết kế sơ đồ khối .............................................................................................32
3.3 Thiết kế sơ đồ nguyên lý ....................................................................................34
3.3.1 Khối điều khiển trung tâm sử dụng máy tính nhúng Raspberry Pi3 ......... 34
3.3.2 Windows 10 IoT Core trên raspberry pi 3 ................................................. 40

3.3.3 Điện toán đám mây trên Microsoft Azure ................................................. 41
3.3.4 USB Camera .............................................................................................. 44
3.3.5 Relay switch ............................................................................................... 44
3.3.6 Chốt cửa điện từ ......................................................................................... 45
3.4 Thiết kế phần mềm .............................................................................................46
3.4.1 Các công cụ phần mềm cần thiết ............................................................... 46
3.4.2 Xây dựng phần mềm .................................................................................. 48
3.5 Chế tạo và thử nghiệm ........................................................................................49
3.5.1 Thiết kế và sử dụng phần mềm .................................................................. 49
3.5.2 Thiết kế phần cứng..................................................................................... 54
KẾT LUẬN ...............................................................................................................58
TÀI LIỆU THAM KHẢO .........................................................................................59
PHỤ LỤC ..................................................................................................................60
Phụ lục 1: Code chạy chương trình ...........................................................................60
Phụ lục 2. Mẫu nhận xét đồ án dùng cho giảng viên hướng dẫn ..............................77
Phụ lục 3. Mẫu nhận xét đồ án dùng cho cán bộ phản biện ......................................79

4


DANH MỤC HÌNH ẢNH

Hình 1.1. Máy chấm cơng vân tay gigata .................................................................10
Hình 1.2. Máy chấm cơng vân thẻ cảm ứng Ronald Jack S-300 .............................11
Hình 1.3. Máy chấm cơng khn mặt VF 300 ..........................................................12
Hình 1.4. Máy chấm cơng thẻ giấy Timmy MD-80B ...............................................13
Hình 2.1. Các bước cơ bản trong xử lý ảnh ..............................................................16
Hình 2.2. Các bước trong hệ thống nhận dạng khn mặt .......................................17
Hình 2.3. Sơ đồ khối trích chọn đặc trưng sử dụng Eigen Faces ..............................18
Hình 2.4. Chuyển hình ảnh sang dạng vector ...........................................................19

Hình 2.5. Giảm số chiều của một tập vector .............................................................20
Hình 2.6. Điều kiện ánh sang khác nhau ...................................................................21
Hình 2.8. 27 Dấu mốc trên khn mặt ......................................................................29
Hình 2.7. Mã sử dụng dịch vụ được cung cấp bởi Microsoft ...................................31
Hình 3.1. Sơ đồ khối của hệ thống ............................................................................33
Hính 3.2. Raspberry Pi3 ............................................................................................35
Hình 3.3. Mơ hình kiến trúc phần cứng Raspberry ..................................................35
Hình 3.4. Cấu trúc phần cứng Raspberry Pi 3...........................................................37
Hình 3.5. Chân pin out của Raspberry Pi 3 ...............................................................39
Hình 3.7. Giao diện hệ điều hành Windows 10 IoT Core .........................................40
Hình 3.8. Các thành phần trong Microsoft Azure .....................................................42
Hình 3.9. USB Camera Microsoft Lifecam HD - 3000 ............................................44
Hình 3.10. Module realy 5V - 2 kênh .......................................................................45
Hình 3.11. Chốt cửa điện từ ......................................................................................46
Hình 3.12. Microsoft Visual Studio 2017 .................................................................46
Hình 3.13. Microsoft Azure ......................................................................................47
Hình 3.14. Microsoft Windows 10 IoT Core ............................................................47
Hình 3.15. Lưu đồ thuật tốn của chương trình ........................................................48
Hình 3.16. Giao diện thiết kế MainPage.xaml ..........................................................49
Hình 3.17. Giao diện ứng dụng FacicalRecognitionDoor sau khi thiết kế ...............49
Hình 3.18. Tạo danh sách người dùng ......................................................................51
Hình 3.19. Kết nối Pi3 - Rơle - nút bấm ...................................................................54
Hình 3.20. Kết nối rơle - nguồn - khố từ .................................................................55
Hình 3.21.Giao diện phần mềm ................................................................................56
Hình 3.22. Sản phẩm đã làm được ............................................................................57

5


DANH SÁCH BẢNG BIỂU

Bảng 3.1. Các thông số kĩ thuật của Raspberry Pi 3 .................................................37

DANH MỤC CÁC TỪ VIẾT TẮT
PCA

- Principal Coponent Analysis

API

- Application Programming Interface

AI

- Artificial Intelligence

GPIO

- General Purpose Input Output

HDMI

- High-Definition Multimedia Interface

SVM

- Support Vector Machine

IoT

- Internet Of Thing


6


LỜI NÓI ĐẦU
Ngày nay, sự liên tục phát triển và không ngừng thay đổi của công nghệ đã
làm cho nhu cầu sử dụng các dịch vụ của con người trở nên dễ dàng và đơn giản
hơn bao giờ hết.
Trong xu thế phát triển của cuộc cách mạng công nghiệp 4.0 với xu hướng tự
động hóa và trao đổi dữ liệu hiện tại trong cơng nghệ sản xuất. Nó bao gồm các hệ
thống không gian mạng, mạng lưới vạn vật kết nối Internet và điện tốn đám mây.
Trong đó lĩnh vực trí tuệ nhân tạo AI dựa vào phương pháp phân tích dữ liệu
machine learning (học máy) là giải pháp vơ cùng hữu hiệu để áp dụng vào công
nghệ nhận dạng khn mặt. Máy móc có thể trả lời, hay tự động phản ứng sau khi
nhận thông tin từ bộ dữ liệu cụ thể. Thuật toán machine learning dự đoán kết quả
bằng cách sử dụng các giá trị được xác lập trước đó. Với việc phân tích dữ liệu từ
các giá trị ngẫu nhiên đòi hỏi một hệ thống lưu trữ dữ liệu khổng lồ. Dựa vào nền
tảng dịch vụ nhận thức thơng qua điện tốn đám mây là một phương pháp để đáp
ứng được kết quả nhanh chóng và thuận lợi nhất.
Từ đó em lựa chọn đề tài “Thiết kế, chế tạo hệ thống quản lý chấm công
bằng phương pháp nhận dạng khuôn mặt”
Nội dung đồ án gồm 3 chương:
Chương 1. Tổng quan về các hệ thống quản lý chấm công
Chương 2. Tổng quan về các phương pháp nhận dạng ảnh và dịch vụ
Microsoft Cognitive Services
Chương 3. Thiết kế, chế tạo hệ thống quản lý chấm công bằng nhận dạng
khuôn mặt ứng dụng Microsoft Cognitive Services trên nền máy tính Raspberry
Pi3

7



CHƯƠNG 1. TỔNG QUAN VỀ CÁC HỆ THỐNG QUẢN LÝ CHẤM CƠNG

1.1 Sự phát triển của hệ thống chấm cơng
Với xu thế cơng nghiệp hóa đang diễn ra nhanh chóng, cùng với sự phát triển
của nền kinh tế Việt nam hiện nay, đồng thời các khu công nghiệp, nhà máy, văn
phịng với đủ loại quy mơ và nghành nghề khác nhau đang ngày một tăng lên cả về
số lượng và quy mô hoạt động.
Để vận hành một đơn vị sản xuất kinh doanh, cần đòi hỏi rất nhiều hạng mục
như vật tư, máy móc, thiết bị cơng nghệ, con người và kèm theo đó là rất nhiều
những tài nguyên hay những quy trình nhằm đảm bảo quá trình sản xuất kinh doanh
diễn ra một cách bài bản và có hiệu quả cao. Một phần không thể thiểu để quản lý
con người và hiệu suất làm việc chính là hệ thống máy chấm công. Mục tiêu này về
cơ bản là nhằm đảm bảo cho quá trình điều hành sản xuất được hiệu quả, và cao
hơn nữa là tối ưu hóa nguồn tài nguyên về con người và chi phí lao động trên mỗi
đơn vị thời gian làm việc.
Tính năng mà máy chấm cơng đem lại:
• Hệ thống đáp ứng được việc làm giảm tối đa thời gian chấm công cho các
nhân viên chấm cơng.
• Bảo mật và chính xác tuyệt đối: Sai sót trong việc chấm cơng bằng phương
pháp thủ cơng thường xuất phát từ yếu tố con người. Giải pháp máy chấm công sẽ
giúp các doanh nghiệp hạn chế tối đa các sai sót khơng đáng có. Hàng trăm ngàn
doanh nghiệp sử dụng máy chấm công trên thế giới đều cho ta một kết quả chung
là: cho ta các biểu thống kê theo yêu cầu của hệ thống tính lương trong nhiều loại
hình doanh nghiệp.
• Bất kỳ thời điểm nào người quản lý cũng có thể biết được tình trạng đi làm
của của nhân viên của công ty, kịp thời có những biện pháp nhắc nhở đối với những
nhân viên kém tích cực trong khi làm việc.
• Tạo cho nhân viên ý thức làm việc chuyên nghiệp: Theo lý thuyết quản lý

của các nước tiên tiến, ý thức làm việc quan trọng hơn trình độ. Điều này ngày càng
đúng khi bản thân các doanh nghiệp hướng tới việc chuyên môn hóa cao độ. Các
nhân viên thay vì một lúc phải làm nhiều việc thì nay chỉ phải tập trung giải quyết
8


những công đoạn cụ thể trong guồng công việc và được đào tạo liên tục. Việc đi
làm đúng giờ theo đúng tác phong công nghiệp trở thành 1 yêu cầu hàng đầu và bắt
buộc đối với 1 nhân viên chuyên nghiệp. Qua việc sử dụng máy chấm công, tất cả
các lần đăng nhập của nhân viên thể hiện rõ anh/chị ta đang ở mức độ nào về ý thức
làm việc và lỡ trong tháng anh/chị ta có lỡ đi làm muộn thì cũng sẽ có những thống
kê để nhân viên đó có thể tự điều chỉnh bản thân.
Ngồi việc tạo cho nhân viên có tác phong cơng nghiệp và ý thức làm việc,
việc sử dụng máy chấm công cũng đồng thời làm tăng tính chuyên nghiệp của
doanh nghiệp trước các đối tác, bạn hàng.
• Bổ sung được nhiều thơng tin phục vụ cho công tác quản lý tra cứu về số liệu
chấm cơng của nhân viên
Lợi ích máy chấm cơng đem lại:
• Tiết kiệm chi phí quản lý cho doanh nghiệp
• Quản lý nhân sự nhanh, dễ dàng truy vấn thơng tin
• An tồn, hiệu quả, chính xác, khách quan, cơng bằng
• Nâng cao ý thức người nhân viên góp phần nâng cao năng suất công việc.

1.2 Giới thiệu chung về máy chấm cơng
1.2.1 Máy chấm cơng là gì?
Máy chấm công là một thiết bị dùng để ghi nhận thời gian ra vào của các nhân
viên trong một công ty. Máy chấm công là công cụ giải quyết triệt để tình trạng
chấm cơng hộ, hiện tượng phổ biến hiện nay trong các doanh nghiệp, đặc biệt là các
doanh nghiệp có số lượng nhân viên lón.


1.2.2 phân loại máy chấm cơng
Máy chấm cơng có 2 loại cơ bản nhất:
• Máy chấm công cơ học: Dữ liệu chấm công được lưu trên các thẻ chấm công
làm bằng giấy. Khi cần xử lý dữ liệu chấm cơng, người xử lí cần phải tự đọc bằng
máy và thêm vào hệ thống data như máy chấm công thẻ giấy. Máy chấm công điện
tử:

9


• Máy chấm cơng điện tử: có bộ nhớ để lưu các dữ liệu chấm cơng. Người sử
dụng có thể dùng phần mềm để kết nối với máy và lấy các dữ liệu chấm cơng mà
mình muốn biết. Máy chấm cơng điện tử có nhiều thể loại như sau:
- Máy chấm công vân tay
- Máy chấm công thẻ mã vạch
- Máy chấm cơng thẻ sóng tần số vơ tuyến RFID
- Máy chấm công thẻ từ ( magnetic card)
- Máy chấm công thẻ cảm ứng (proximity card )

1.3 Một số sản phẩm hệ thống quản lý chấm công
1.3.1 Máy chấm công vân tay gigata

Hình 3.1.1. Máy chấm cơng vân tay gigata
TÍNH NĂNG NỔI BẬT:
-

Mỗi nhân viên có thể được phép đăng ký tối đa là 10 dấu vân tay

-


Dễ dàng nắm bắt được các kết quả khi chấm cơng

-

Được tích hợp sẵn pin lưu điện do đó khơng bị mất dữ liệu khi xảy ra mất
điện

-

Có được sự ổn định cao

-

Thiết bị hồn tồn phù hợp trong mơi trường văn phịng, công ty nhỏ

10


THƠNG SỐ KỸ THUẬT:
-

Là một mẫu máy chấm cơng bằng vân tay

-

Sản phẩm chính hãng của Gigata

-

Xuất xứ sản phẩm từ Trung Quốc


-

Số lượng bộ nhớ là 500 thẻ từ và 500 vân tay

-

Có âm thanh, chng báo thời gian và kết quả khi chấm công

-

Kiểu kết nối USB, TCP/IP

-

Mỗi lần chấm công diễn ra khoảng 1s

1.3.2 Máy chấm công thẻ cảm ứng Ronald Jack S-300

Hình 3.1.2. Máy chấm cơng vân thẻ cảm ứng Ronald Jack S-300

Máy chấm công thẻ cảm ứng Ronald Jack S-300 được sản xuất, lắp ráp tại Malaixia
quản lý tới 30.000 thẻ cảm ứng. Phù hợp cho những cơng ty có số lượng nhân sự
lớn. Thẻ cảm ứng chấm cơng Promag bạn có thể làm thành thẻ nhân viên trong
công ty rất tiện lợi với nhiều hình thức dập tên nhân viên, logo cơng ty trên thẻ…
Ronald Jack S-300 sử dụng ngôn ngữ tiếng Anh và tiếng Việt giúp bạn dễ dàng lựa
chọn để phù hợp với mơi trường cơng ty mình.

11



Ronald Jack S-300 sử dụng chip xử lý Intel cực nhanh của Mỹ giúp tốc độ xử lý < 1
giây/1lần chấm công với khoảng cách đặt thẻ từ 2 - 10 cm. Giúp nhân viên chấm
công nhanh không bị ùn tắc ở vị trí đặt máy.
Kết nối máy tính qua 2 cổng RS 232/485 và TCP/IP nếu bạn không muốn sử dụng
việc kết nối bằng dây rườm rà bạn có thể dùng cổng USB để lấy dữ liệu hàng tháng.
Tính năng chi tiết:
Chấm công nhân viên bằng thẻ cảm ứng.
-

Công suất chứa thẻ 30.000 thẻ cảm ứng

-

Sử dụng CHIP xử lý Intel cực nhanh của Mỹ

-

Dung lượng lưu trữ trong máy 50.000 lần chấm thẻ

-

Phát ra giọng nói bằng ngơn ngữ: Tiếng Anh & Tiếng Việt

-

Có Password bảo vệ máy, chế độ hẹn giờ tắt máy, stand by

-


Kết nối với máy vi tính qua cổng USB, RS 232/485, TCP/IP

-

Chng báo giờ tự động

-

Pin bộ nhớ lưu trữ dữ liệu chấm công khi cúp điện.

-

Hiển thị tên người sử dụng trên máy khi chấm công.

-

Tốc độ xử lý nhanh < 1 giây/1lần chấm công.

-

Đọc thẻ trong khoảng cách từ 2 - 10 cm.

1.3.3 Máy chấm cơng khn mặt VF300

Hình 3.1.3. Máy chấm công khuôn mặt VF 300

12


Máy chấm công khuôn mặt VF 300

- Quản lý đến 400 khuôn mặt & 10.000 thẻ
- Tốc độ xử lý nhanh <1s/1lần chấm cơng.
- Một người có thể đăng ký 1 khuôn mặt & thẻ
- Dung lượng nhớ 100.000 IN/OUT.
- Tích hợp âm thanh. Chip xử lí Intel của Mỹ
- Kết nối RS - 232/485, TCP/IP, USB, Password bảo vệ máy
- Máy sẽ nhận diện khuôn mặt & thẻ của từng người khi chấm công
- Cài đặt mật khẩu để bảo vệ dữ liệu
- Thích hợp camera trong máy
- Ngơn ngữ hiển thị : Tiếng Anh
- Màu đen tuyền tuyệt đẹp

1.3.4 Máy chấm cơng thẻ giấy Timmy MD-80B

Hình 3.1.4. Máy chấm công thẻ giấy Timmy MD-80B

13


Máy chấm công là máy ghi nhận thời gian đến làm việc và thời gian về của cán bộ
công nhân viên trong công ty. Máy chấm công bằng thẻ giấy là máy chấm công sử
dụng thẻ giấy để dập in giờ đến và giờ về của nhân viên trong công ty. Tùy vào môi
trường làm việc và điều kiện của cơng ty, doanh nghiệp mà người ta lựa chọn cho
mình máy chấm công phù hợp nhất.
Timmy MD-80B sử dụng công nghệ in kim với đầu in rất bền, in được 2 mầu đỏ và
đen, với 6 cột tương ứng 3 ca làm việc
-

Khi cúp điện, máy vẫn hoạt động (Pin sạc )


-

Pin bộ nhớ lưu trữ dữ liệu 8 năm

-

Chuông nhạc trong máy và kết nối chng ngồi

-

Tự động cuốn thẻ in và đẩy thẻ lên.

-

Tự động dịch cột vào, ra.

-

In được 6 cột ( 3 ca làm việc

-

Phân biệt được ngày hiện tại khi in

-

Ruy băng chính hãng đi kèm theo máy

-


Cài được nhiều chương trình làm việc khác nhau

-

Kích thước: 190 (W) x 240 (H) x 125 (D). Nặng 3 kg

14


CHƯƠNG 2: TỔNG QUAN VỀ CÁC PHƯƠNG PHÁP NHẬN DẠNG ẢNH
VÀ DỊCH VỤ MICROSOFT COGNITIVE SERVICES
2.1 Tổng quan về các phương pháp nhận dạng ảnh ứng dụng trong kỹ thuật
điều khiển
2.1.1 Giới thiệu chung về các phương pháp nhận dạng mặt người:
2.1.1.1 Các phương pháp nhận dạng mặt người:
Phương pháp nhận dạng hiện nay có 2 loại:
- Nhận dạng dựa trên các đặc trưng của các phần tử trên khuôn mặt (Feature
based face recognition).
- Nhận dạng dựa trên xét tổng thể khn mặt (Appearance based face
recognition).
- Ngồi ra cịn có một số loại nhận dạng sử dụng mơ hình về khuôn mặt, một
số phương pháp được dùng cho loại này:
+) Nhận dạng 2D: Elastic Bunch Graph, Active Appearance Model.
+) Nhận dạng 3D: 3D Morphable Model.
2.1.1.2 Nhận dạng dựa trên các đặc trưng khuôn mặt
Đây là phương pháp nhận dạng khuôn mặt dựa trên việc xác định các đặc
trưng hình học của các chi tiết trên một khuôn mặt (như vị trí, diện tích, hình dạng
của mắt, mũi, miệng,…), và mối quan hệ giữa chúng (như khoảng cách của hai mắt,
khoảng cách của hai lông mày,…).
Ưu điểm của phương pháp này là nó gần với cách mà con người sử dụng để

nhận biết khuôn mặt. Hơn nữa với việc xác định đặc tính và các mối quan hệ,
phương pháp này có thể cho kết quả tốt trong các trường hợp ảnh có nhiều nhiễu
như bị nghiêng, bị xoay hoặc ánh sáng thay đổi.
Nhược điểm của phương pháp này là cài đặt thuật toán phức tạp do việc xác
định mối quan hệ giữa các đặc tính địi hỏi các thuật tốn phức tạp. Mặt khác, với
các ảnh kích thước bé thì các đặc tính sẽ khó phân biệt do đó khó tính tốn được các
đặc trưng trên khn mặt.
2.1.1.3 Nhận dạng dựa trên xét tồn diện khn mặt

15


Nhận dạng đựa trên tồn diện khn mặt, có nghĩa mình sẽ khơng đi xét đến
từng thành phần đặc trưng trên khuôn mặt nữa… Chúng ta sẽ xem khuôn mặt là một
khơng gian cụ thể và tìm những đặc trưng, những đặc điểm chính trên khơng gian
đó.
Nội dung chính của hướng tiếp cận này là xem mỗi ảnh có kích thước RxC là
một vector trong không gian RxC chiều. Ta sẽ xây dựng một khơng gian mới có
chiều nhỏ hơn sao cho khi biểu diễn trong khơng gian đó các đặc điểm chính của
một khn mặt khơng bị mất đi. Trong khơng gian đó, các ảnh của cùng một người
sẽ được tập trung lại thành một nhóm gần nhau và cách xa các nhóm khác.
2.1.2 Xử lý ảnh
- Các bước cơ bản trong xử lý ảnh:

Hình 2.1. Các bước cơ bản trong xử lý ảnh
Phần thu nhận ảnh: Ảnh có thể nhận qua camera. Có thể là màu hoặc đen
trắng với độ phân giải khác nhau.
Tiền xử lý: lọc nhiễu, nâng cao chất lượng ảnh.
Phân vùng ảnh hay phân đoạn: tách ảnh thành các vùng hoặc đối tượng quan
tâm.

Biểu diễn ảnh: Việc chọn các tính chất để thể hiện ảnh gọi là trích chọn đặc
trưng (feature extraction).
Nhận dạng và nội suy ảnh: Nhận dạng ảnh là quá trình xác định ảnh. Quá trình
này thường thu được bằng cách so sánh với mẫu chuẩn đã được học (hoặc lưu) từ
trước. Nội suy là phán đoán theo ý nghĩa trên cơ sở nhận dạng.
Cơ sở tri thức: Nhằm giúp quá trình xử lý và phân tích ảnh theo cách làm của
con người.
16


- Các bước trong một hệ thống nhận dạng khuôn mặt:

Hình 2.2. Các bước trong hệ thống nhận dạng khn mặt
Face detection: Xác định khuôn mặt
Preprocessing: Xử lý ảnh đưa về hình ảnh đặc trưng sáng tối làm nổi bật các
chi tiết điểm ảnh đặc trưng trên khuôn mặt.
Feature extraction: Trích chọn các đặc trưng trên khn mặt
Dimension reduction: Thu hẹp các đặc trưng
Classification: Phân loại, nhận dạng đối tượng
Trên thực tế, việc xây dựng một hệ thống nhận dạng khuôn mặt sẽ gồm nhiều
bước chi tiết hơn như được chỉ ra ở hình 2.2. Trước bước trích chọn đặc trưng
(Preprocessing) sẽ được sử dụng để thực hiện lọc nhiễu và chuẩn hoá các điều kiện
ánh sang của bức ảnh sao cho chúng có cùng điều kiện ánh sang tốt nhất có thể.
Tiếp sau bước này, mỗi ảnh mặt sẽ được biểu diễn dưới dạng một vector đặc trưng
có số chiều lớn (từ vài nghìn cho tới hàng trăm nghìn) và chứa nhiều thông tin dư
thừa, không cần thiết cho q trình nhận dạng. Do đó, một số thuật tốn học sẽ được sử
dụng để lại bỏ các đặc điểm dư thừa và đồng thời làm tang tính phân biệt (discriminative)
của các thuộc tính đợc giữ lại nhằm tang tính hiệu năng của hệ thống về cả tốc độ xử lý bởi
chỉ cần làm việc với các vector có số chiều nhỏ hơn rất nhiều và độ chính xác. Cuối cùng ở
bước nhận dạng (Classification stage), có nhiều thuật tốn có thể sử dụng, chẳng hạn như

bộ phân lớp k - láng giềng gần nhất (k Nearest Neighbors - k-NN), SVM (Support Vector
Machine) hoặc mạng nơron (neural network).
Do một hệ thống nhận dạng khuôn mặt gồm nhiều bước nên các nghiên cứu
về nhận dạng mặt cũng chia thành các lĩnh vực nhỏ hơn chỉ tập trung vào các
phương pháp để giải quyết từng bước trong cả hệ thống. Vì thế, mặc dù đã có nhiều
17


nghiên cứu về nhận dạng khuôn mặt,, song việc xây dựng hoàn chỉnh một hệ thống
hoàn toàn tự động từ bước đầu tiên tới cuối cùng vẫn chưa nhiều.
2.1.3 Phát hiện mặt người sử dụng đăc trưng PCA
Eigen Faces là phương pháp áp dụng trực tiếp phép phân tích các thành phần
chính PCA, nó đã được áp dụng rất nhiều vào biểu diễn, phát hiện và nhận dạng
mặt. Ưu điểm của phương pháp này là biểu diễn được toàn bộ ảnh và có độ nén rất
tốt (loại bỏ nhiễu và dư thừa)

Hình 2.3. Sơ đồ khối trích chọn đặc trưng sử dụng Eigen Faces
2.1.3.1 Giới thiệu chung về thuật toán
Phân tích thành phần chính (Principal Coponent Analysis) gọi tắt là PCA là
một thuật toán được sử dụng để tạo ra một ảnh mới từ ảnh ban đầu. Ảnh mới này có
kích thước nhỏ hơn nhiều so với ảnh ban đầu nhưng vẫn mang những đặc trưng cơ
bản nhất của ảnh cần nhận dạng. PCA không cần quan tâm đến việc tìm ra các đặc
điểm cụ thể của thực thể cần nhận dạng và mối quan hệ giữa các đặc điểm đó. Tất
cả các chi tiết đó đều được thể hiện ở ảnh mới được tạo ra từ PCA.
Ưu điểm của phương pháp PCA:
- Tìm được các đặc tính tiêu biểu của đối tượng cần nhận dạng mà không cần
phải xác định các thành phần và mối quan hệ giữa các thành phần đó.
- Thuật tốn có thể thực hiện tốt với các ảnh có độ phân giải cao, do PCA sẽ
thu gọc ảnh thành một ảnh có kích thước nhỏ hơn.
18



- PCA có thể kết hợp với các phương pháp khác như mạng Nổn, Support
Vector Machine… để mang lại hiệu quả nhận dạng
Nhược điểm của PCA:
- PCA phân loại theo chiều lớn nhất của tập vector. Tuy nhiên, chiều phân bố
lớn nhất không phải lúc nào cũng mang lại hiệu quả tốt nhất cho bài toán nhận dạng.
Đây là nhược điểm cơ bản của PCA.
- PCA rất nhạy với nhiễu
2.1.3.2 Ứng dụng trong bài toán nhận dạng mặt người.
Trong bài toán nhận dạng mặt người, PCA là thuật toán nhận dạng ảnh dựa
trên những nét tổng thể của khuôn mặt, ta sẽ áp dụng thuật tốn này để thực hiện
cơng việc tìm một khn mặt giống với khn mặt cho trước với kích thước nhỏ
hơn và chỉ mang những nét đặc trưng của khuôn mặt.
Đặc trưng PCA: Mục tiêu của phương pháp PCA là “giảm số chiều” của một
tập vector sao cho vẫn đảm bảo được “tối đa thông tin quan trọng nhất”. Phương
pháp PCA sẽ giữ lại K thuộc tính mới (Feature extraction) từ N các thuộc tính ban
đầu (feature selection) (K < N).
2.1.3.3 Dị tìm và nhận dạng khn mặt người bằng eigenfaces

Ảnh khn mặt (ảnh
thẻ) có kích thước

Chuyển thành

Vector
N2x1

NxN


Hình 2.4. Chuyển hình ảnh sang dạng vector

19


Mục tiêu của phương pháp PCA là “giảm số chiều” của 1 tập vector sao cho
vẫn đảm bảo được “tối đa thông tin quan trọng nhất” . Tức Feature extraction (giữ
k thuộc tính “mới”) chứ khơng phải Feature selection (giữ lại k thuộc tính ngun
gốc ban đầu).
Vector y chỉ cịn K

Vector x ban đầu
có N chiều

Khơng gian N chiều với
hệ cơ sở v1, v2,…,vn

Ánh xạ tuyến
tính T cần tìm
(phép chiếu)

Khơng gian K chiều
(K<u2,…,un

Hình 2.5. Giảm số chiều của một tập vector
Khi loại bỏ 1 số thành phần của x để thu được y thì sẽ gây ra sai số.
→ Phương pháp PCA sẽ cố gắng tìm phép biến đổi tuyến tính T thỏa: y = T.x
sao cho trung bình bình phương lỗi (MSE) là bé nhất.
-


Cách để tìm được T:

Gọi M là vector trung bình của tất cả các vector x trong tập mẫu.
Gọi ma trận hiệp phương sai của các phần tử x trong tập mẫu là C. C được tính
theo cơng thức sau:

(2.0)
Người ta chứng minh được rằng:
“Nếu T là ma trận m hàng, mỗi hàng là 1 vector riêng của C, đồng thời m
vector riêng này phải ứng với m trị riêng lớn nhất. Khi đó T chính là phép biến đổi
thỏa MSE nhỏ nhất”.
→ Nói tóm lại, phương pháp PCA quy về việc đi tìm trị riêng (eigenvalues) và
vector riêng (eigenvectors) của ma trận hiệp phương sai C của tập mẫu X. Sau đó, ta

20


chỉ giữ lại K vector riêng ứng với K trị riêng lớn nhất để làm cơ sở cho không gian
mới này.
2.1.4.4 Nhược điểm của Eigenfaces
Trong những trường hợp sau, PCA Eigenfaces sẽ nhận dạng sai:
1. Khác nhau về điều kiện ánh sáng

Hình 2.6. Điều kiện ánh sang khác nhau
2. Khác nhau về điệu bộ (nghiêng đầu chẳng hạn…)
3. Cảm xúc (cười to, há miệng…)
2.1.5 Phát hiện mặt người sử dụng đặc trưng Haar - like [1]
2.1.5.1 Đối tượng nhận dạng.
Trên ảnh, vùng khuôn mặt là tập hợp các điểm ảnh có nhưng mối quan hệ

khác biệt so với các vùng ảnh khác, những mối quan hệ này tạo lên các đặc trưng
riêng của khuôn mặt. Tất cả khuôn mặt người đều có chung những đặc điểm sau khi
đã chuyển qua ảnh xám, ví dụ như:
- Vùng hai mắt sẽ tối hơn vùng má và vùng chán, tức mức xám của vùng này
cao hơn vượt trội so với hai vùng còn lại.
- Vùng giữa sống mũi cũng tối hơn vùng hai bên mũi.
Và còn rất nhiều những đặc điểm khác của khuôn mặt và các đặc trưng Haar
like dựa vào các đặc điểm này để nhận dạng.
Về tổng quát, các đặc trưng Haar like không chỉ được sử dụng để nhận dạng
khn mặt mà có thể dùng để nhận dạng bất kì một đối tượng nào trên ảnh( thân
người, tay, chân, ô tô, đồ vật,….). Bởi vì cũng giống như khuôn mặt, mỗi đối tượng
có những đặc điểm riêng biệt đặc trưng bởi các vùng điểm ảnh, công việc của đặc
trưng Haar-like là tính tốn các giá trị tương quan giữa các vùng ảnh đó.

21


Đây chỉ là bước ban đầu về cách áp dụng đặc trưng để phân loại cửa sổ con,
chi tiết cách phân loại của bộ Adaboost và Cascade of Classifiers sẽ trình bày ở mục
sau.
2.1.5.2 Các đặc trưng Haar-like
Mỗi đặc trưng Haar-like là một miền hình chữ nhật được chia thành 2,3 hoặc 4
hình chữ nhật nhỏ phân biệt quy ước bằng màu trắng và đen.

Như hình vẽ trên là 3 loại đặc trưng Haar-like cơ bản gồm 2,3 và 4 hình chữ
nhật hợp thành. Từ những đặc trưng cơ bản mở rộng ra thành tập các đặc trưng:
a) Đặc trưng cạnh:

b) Đặc trưng đường:


c) Đặc trưng tâm - xung quanh:

Giá trị của một đặc trưng Haar-like là sự khác biệt giữa tổng các giá trị xám
của các pixel trong vùng “đen” với tổng các giá trị xám của các pixel trong vùng
“trắng”:
f(x) = Tổngvùng đen(pixel) - Tổngvùng trắng(pixel)

(2.1)

Vậy khi được đặt lên một vùng ảnh, đặc trưng Haar-like sẽ tính toán và đưa ra
giá trị đặc trưng h(x) của vùng ảnh đó.
1) Cách áp dụng đặc trưng Haar-like để phát hiện khuôn mặt trong ảnh
Để phát hiện khuôn mặt, hệ thống sẽ cho một cửa sổ con (sub-window) có

22


kích thước cố định qt lên tồn bộ ảnh đầu vào. Như vậy sẽ có rất nhiều ảnh con
ứng với từng cửa sổ con, các đặc trưng Haar-like sẽ được đặc lên các cửa sổ con
này để từ đó tính ra giá trị của đặc trưng. Sau đó các giá trị này được bộ phân loại
xác nhận xem khung hình đó có phải khn mặt hay khơng.
Hình dưới là một ví dụ: khung hình chữ nhật là cửa sổ con, một đặc trưng
Haar- like với kích thước và vị trí đặt như trong hình vẽ.

ℎ𝑘 (𝑥) = {

1 𝑛ế𝑢 𝑝𝑘 𝑓𝑘 (𝑥) < 𝑝𝑘 𝜃𝑘
0
𝑛ế𝑢 𝑛𝑔ượ𝑐 𝑙ạ𝑖


(2.2)

Trong đó:
X : cửa sổ con cần xét
𝜃𝑘 : ngưỡng
fk: giá trị của đặc trưng Haar-like
pk: hệ số quyết định chiều của bất phương trình
Ta hiểu cơng thức trên đơn giản như sau: khi giá trị của đặc trưng Haar-like
k:fk tại cửa sổ con x vượt qua một ngưỡng 𝜃𝑘 thì bộ phân lớp hk(x) sẽ kết luận cửa
sổ con x là khuôn mặt(hk(x)=1), cịn fk khơng vượt qua ngưỡng đó thì khơng là
khn mặt.
Ngưỡng 𝜃𝑘 là giá trị đã rút ra sau qua trình huấn luyện bộ phân lớp, sẽ trình
bày sau.
Như trong phần đối tượng nhận dạng, ta thấy đặc trưng Haar-like k có kích
thước và vị trí đặt trong cửa sổ con x trên hình sẽ có giá trị fk rất lớn(vì mức xám ở

23


×